SOPRANO Ambient Middleware (AAL)


Published on

Overview of the SOPRANO Ambient Middleware including context management and service matchmaking ontop of OSGi. SOPRANO is an Integrating Project funded by the European Commission in the field of Ambient Assisted Living (ICT and Ageing).

Published in: Technology, Business
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

SOPRANO Ambient Middleware (AAL)

  1. 1. SOPRANO Ambient Middleware (SAM) Andreas Schmidt (FZI) Michael Klein (CAS) 2nd Review Meeting March 19-20, 2009, Cologne
  2. 2. SOPRANO Ambient Middleware <ul><li>SOPRANO Ambient Middleware (SAM) </li></ul><ul><ul><li>is the glue between sensors and actuators </li></ul></ul><ul><ul><li>is responsible for the ambient system behaviour </li></ul></ul>
  3. 3. Overview SAM
  4. 4. Requirements <ul><li>Flexible </li></ul><ul><ul><li>Support a wide range of use cases </li></ul></ul><ul><ul><li>Adaptability of pre-defined use cases to specific homes </li></ul></ul><ul><li>Extensible </li></ul><ul><ul><li>Allow for new uses cases without redesign </li></ul></ul><ul><ul><ul><li>New services </li></ul></ul></ul><ul><ul><ul><li>New hardware sensors and actuators </li></ul></ul></ul><ul><ul><li>Open </li></ul></ul><ul><ul><ul><li>Clear and easy to understand interfaces, tailored to different market stakeholders </li></ul></ul></ul><ul><li>Enable a market ecology </li></ul>
  5. 5. Market stakeholders contributing to SAM <ul><li>Hardware sensors/actuators manufacturers </li></ul><ul><li>Software service developers </li></ul><ul><ul><li>Processing and enriching sensor information </li></ul></ul><ul><li>Telecare solution providers </li></ul><ul><ul><li>Definition of use cases and respective system behaviour independent of individual homes </li></ul></ul><ul><li>Case Manager / Care Provider </li></ul><ul><ul><li>Customization for individual customers </li></ul></ul>
  6. 6. Ontology-based approach <ul><li>The ontology-centred design approach taken by SOPRANO is an enabler for a flexible and extensible middleware </li></ul><ul><ul><li>Ontology is an explicit representation of a shared understanding of the different stakeholders and forms the basis for semantic coherence of the system </li></ul></ul><ul><ul><li>Semantic technologies (reasoning, service matchmaking) can deal with different levels of abstraction and make use of background knowledge in an automated way </li></ul></ul><ul><li>… but we have also taken care of keeping everything modular and manageable </li></ul>
  7. 7. SAM in Action Composer OSGi Service Middleware Context Manager AP at door Kettle is on Window is open No bell Door Sensor Procedure : AP about to leave home  start warning workflow Loudsp. Display Loudspeaker/touch screen “ Kettle is still on.” “ Window is still open.” Actuators Sensors Procedural Manager State: Door open Event : AP about to leave home Workflow instantiation: (1) Inform AP about problems Services: (1a) audio warning (1b) warning on touch screen
  8. 8. SOPRANO Architecture
  9. 9. Context Manager Sensor Service Context Storage Conflict Resolution Sensor Service Sensor Service Context Uplifter provide state information according to low-level context ontology Translate low-level context into high-level context Store all context facts with timestamp and uncertainty Provide a consistent view on context at a specific point in time can be extended by software developers
  10. 10. Context Reasoning Mechanisms Mechanism Characteristics Examples of Usage Rule Based System - easy to realize Door sensor  Door open Decision Trees - decision chains “ Inside” vs. “Outside” “ Sleeping” Neural Networks - handle uncertainty - adaptive - for complex problems - need training data “ Leaving“ “ Preparing Meal” Bayesian Networks - handle uncertainty - chains of actions - need domain experts “ Leaving“ “ Preparing Meal” Hidden Markov Models - sequences of events - for lots of sensors - need training data “ Exercising“ “ Being Bored” “ Socially interacting&quot;
  11. 11. Collaboration of Uplifters - Example Sensor s Fires Door d Open s attached to Door d RFID chip c Detected by reader r AP a wears chip c Reader r is lo- cated near door d AP a near door d AP a leaving triggers workflow Doorbell db pressed AP outside Rule-based Rule-based Bayesian Written to context storage Written to context storage Written to context storage
  12. 12. Context Manager: Key Innovations <ul><li>Naive approach: RDF Triple-Store (+reasoning) </li></ul><ul><ul><li>but what about temporal data (histories!), uncertainty, ... ? </li></ul></ul><ul><li>SOPRANO Context Manager </li></ul><ul><ul><li>arbitrary methods for context uplifting </li></ul></ul><ul><ul><ul><li>not only rule or logic-based, but also statistical (mining approach) </li></ul></ul></ul><ul><ul><li>can provide snapshot views and histories (e.g., for mining) </li></ul></ul><ul><ul><li>inconsistencies in the context storage possible </li></ul></ul><ul><ul><li>conflict resolution according to configurable heuristics </li></ul></ul><ul><ul><li>can deal with uncertainty and provides controlled aging </li></ul></ul><ul><ul><li>can deal with negative facts </li></ul></ul><ul><ul><li>asynchronous notifications </li></ul></ul>
  13. 13. SOPRANO Architecture
  14. 14. Concretisation of Procedures Procedure Template Procedure Procedure Run Medication ?m is due  - Inform ?ap - wait (x) minutes for acceptance - on problem: inform (person) Medication ?m is due  - Inform ?ap - wait 10 minutes for acceptance - on problem: inform carer Richard Medication Sopranol is due  - Inform Peter - wait 10 minutes for acceptance - on problem: inform carer Richard Telecare Solution Provider Case Manager SAM – Procedural Mgr SAM – Composer Service invocation - inform Richard via SMS on +4912345
  15. 15. Procedure Manager <ul><li>Procedures are used to detect situations for which specific ambient system behaviour is modelled: </li></ul><ul><ul><li>event, context condition: state patterns </li></ul></ul><ul><ul><li>workflow: BPEL workflow with abstract goals </li></ul></ul>Situation Event Workflow Procedure conditions
  16. 16. SOPRANO Architecture
  17. 17. Inner Architecture of Composer Context-Aware Workflow Engine Service Matchmaker Service Invocator Composer Procedural Manager Abstract workflow Abstract service goal Concrete service OSGi Repository Query Service Service Parameterised invocation Context Manager Context query Context query
  18. 18. Context-Aware Workflow Engine <ul><li>Based on Standard: Business Process Execution Language (BPEL) </li></ul>Standard Constructs Context-Aware Extensions <ul><li>Sequence </li></ul><ul><li>If </li></ul><ul><li>Loop </li></ul><ul><li>Assign </li></ul><ul><li>… </li></ul><ul><li>Query context manager </li></ul><ul><li>Store statement </li></ul><ul><li>Wait for statement </li></ul><ul><li>Call semantic service </li></ul>
  19. 19. Example Procedure: Medication AP outside? Medication is-due [yes] [no] Inform AP about medication (visually & aurally, AP’s location) Wait for AP acknowledgement (service request) Inform carer of med problem [timeout] [ok] Wait for AP not outside Inform AP about medication (visually & aurally, near door) workflow event
  20. 20. Semantic Service Description Language Requirements <ul><li>Provide abstract and technical description of services </li></ul><ul><li>Compatible with OSGi </li></ul><ul><li>Fully automatically processable </li></ul><ul><li>Service offers and requests are created independently by different stakeholders </li></ul><ul><ul><li> Different levels of abstraction. </li></ul></ul><ul><li>Powerful matchmaker </li></ul><ul><ul><li>Take context information into account </li></ul></ul><ul><ul><li>Cope with missing information </li></ul></ul><ul><ul><li>Real-time </li></ul></ul><ul><ul><li>Derive invocation parameters </li></ul></ul>
  21. 21. Different Layers of Abstraction Inform AP about medication Play-speech On loudspeaker-1 Show message Via GUI on tv-1 Send SMS To Number {healthcare consultants} {case manager} {device service providers} Show message Via GUI on touchscreen-1 Speak via Avatar On tv-1 ?
  22. 22. Solution: Virtual Services Inform AP about medication Play sound message on loudspeaker-1 Show text message via GUI on tv-1 Send SMS to Number Show text message via GUI on touchscreen-1 Play avatar message on tv-1 Inform AP If not hearing-impaired Play sound message on loudspeaker in this or connected room of AP Inform AP If not vision-impaired Show message on GUI on switched-on device in room of AP
  23. 23. Proposal for SSD in OSGi <ul><li>… </li></ul>
  24. 24. Key innovation - Procedure execution Rule-Based Workflow-Based Based on semantical Service requests <ul><li>Event-driven </li></ul><ul><li> ambient system </li></ul><ul><li>Procedural </li></ul><ul><li> deterministic system </li></ul><ul><li>Declarative </li></ul><ul><li> context-aware, intelligent system </li></ul>
  25. 25. Key innovation: Semantic contracts <ul><li>Hardware sensors/actuators manufacturers </li></ul><ul><ul><li>contract: low-level context ontology, context storage </li></ul></ul><ul><li>Software developers can provide context uplifters </li></ul><ul><ul><li>contract: context ontology and context fact model </li></ul></ul><ul><ul><li>can be packaged with sensors </li></ul></ul><ul><li>Telecare solution providers can develop procedure templates for certain use cases </li></ul><ul><ul><li>contract: procedure formalism, high-level context ontology </li></ul></ul><ul><ul><li>can be packaged with sensors, actuators, and uplifters </li></ul></ul><ul><li>Care providers can customize procedures </li></ul><ul><ul><li>contract: procedure template, high-level context ontology </li></ul></ul>
  26. 26. Summary Will be exploited as part of an open source initiative
  27. 27. WP2.2/2.3/2.4 SOPRANO Ambient Middleware (SAM) Andreas Schmidt (FZI) Michael Klein (CAS) 2nd Review Meeting March 19-20, 2009, Cologne Thank you!