Rule-Based Activity Recognition in Ambient Intelligence
About the Speaker
Professor of Computer Science, University of Crete and Institute of Computer Science, FORTH-ICS, Crete, Greece
Activity recognition is an important, multi-faceted problem with a broad application scope. In this talk we will present a rule-based activity recognition system with the option of using confidence values in our rules and facts. Each activity definition rule has some primary and some optional events and the absence of any of the optional events, only decreases the confidence value of the recognized complex event. We recognize all possible complex events (activities) based on predefined rules, which express temporal and spatial combinations of atomic and complex events. Then we detect all conflicted events (recognized events that overlap but use common resources). The optimal solution is found with an optimization function that takes into account complex events confidence, temporal duration and number of used atomic events. Adjusting this function, results in higher or lower abstraction levels in our results (more generic events with bigger duration / more specific events with lower duration).
As application domain we use ambient assisted living (e.g. for elderly persons). The approach has been implemented, and tested in a real ambient intelligence environment hosted by the FORTH Institute of Computer Science.
An Overview of The Ciao System
About the Speaker
IMDEA Software Institute and Technical University of Madrid (UPM), Spain
Ciao is a logic-based, multi-paradigm programming system. One of its most distinguishing features is that it supports a large number of semantic and syntactic language features which can be selectively activated or deactivated for each program module. As a result, a module can be written in, for example, ISO-Prolog plus constraints and higher order, while another can be a pure logic module with a different control rule such as iterative deepening and/or tabling, and perhaps using constructive negation. A powerful and modular extension mechanism allows user-level design and implementation of such features and sub-languages.
Another distinguishing feature of Ciao is its powerful assertion language, which allows expressing many kinds of program properties (ranging from, e.g., moded types to resource consumption), as well as tests and documentation. The compiler is capable of statically finding violations of these properties or verifying that programs comply with them, and issuing certificates of this compliance. The compiler also performs many types of optimizations, including automatic parallelization. It offers very competitive performance, while retaining the flexibility and interactive development of a dynamic language.
We will present a hands-on overview of the system, through small examples which emphasize the novel aspects and the motivations which lie behind Ciao's design and implementation.