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).
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
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. 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"
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
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
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.
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.
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. 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.
24.
25.
26. Summary Will be exploited as part of an open source initiative
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!