Your SlideShare is downloading. ×
0
uAALtraining<br />Main conceptsof SOPRANO middleware / openAAL<br />Peter Wolf, FZI<br />16.03.2010<br />1<br />
IP, FP 6 http://www.soprano-ip.org<br />25 partners from 7 EU-countries<br />Start: 01/07 end 10/10<br />Project-lead: Exo...
Support AP in the house ambiently with the help of IT technology<br />Positive mindset: enhance quality of life<br />But a...
Problem: 	Stove/oven have been left on unintentionally 		while person was leaving the home<br />Solution:	Reminder service...
Problem: 	typical problem of AP<br />Solution:	ambient services that incorporate existing 		technologies and services and ...
6<br />Architecture<br />
7<br />SAM in Action: CM<br />State:<br />Window open<br />Procedural Manager<br />Kettle is on<br />Window is open<br />....
8<br />SAM in Action: CM<br />Event:<br />AP about to leave home<br />State:<br />Door open<br />Procedural Manager<br />A...
9<br />Context Manager<br />can be extended bysoftware developers<br />Provide a consistent view on context at a specific ...
State-based modeling<br />No reasoning semantic instead more db-like semantics (abstract-query and constraints)<br />Low-l...
Two conceptual models for easy sensor and service integration<br />Service-level ontology<br />11<br />High-level Ontology...
Two conceptual models for easy sensor and service integration<br />Sensor-level ontology<br />12<br />Sensor-level Ontolog...
RDF-based data model<br />Triples describing states of an entity<br />Entity, state-property, state<br />“lamp, has-power-...
<ul><li>Tuple representation: (s,p,o,t0,v,a0,src,i)</li></ul>s is subject URI			class<br />p is predicate(=property) URI	p...
Collaboration of Uplifters - Example<br />triggers workflow<br />Decision Tree<br />AP a leaving<br />AP outside<br />Writ...
Model andcontextreasoningseperatedtoallowformoreflexibility<br />Formalism neutral reasoning<br />Flexibilityconsideringlo...
Stores all information facts<br />Provides simple query interface<br />Manages AP-context and low-level ontology<br />Impl...
18<br />openAAL Architecture<br />
19<br />SAM in Action<br />Event:<br />AP about to leave home<br />State:<br />Door open<br />Procedure: <br />AP about to...
Wait for confirmation of AP
If no confirmation, send SMS to informal carer</li></ul>Procedural Manager<br />AP at door<br />Kettle is on<br />Window i...
16.03.2010<br />20<br />PM Architecture<br />Admin Tools<br />Store/retrieve/trigger workflow xml-document<br />Procedural...
Based on Standard: Business Process Execution Language (BPEL)<br />21<br />Context-Aware Workflows<br />Standard Construct...
If
Loop
Assign
…
Trigger event starting the wf
Query context manager
Store context statement
Wait for statement (or timeout)
Call semantic service</li></li></ul><li>16.03.2010<br />22<br />Workflow 1<br />Context Manager<br />Procedural Manager<br...
16.03.2010<br />23<br />Workflow 2<br />Context Manager<br />Procedural Manager<br />Composer<br />But workflows can also ...
Stores BPEL workflows that define (abstract) reactions to situations<br />Executes workflow upon situation detection<br />...
25<br />openAAL Architecture<br />
Upcoming SlideShare
Loading in...5
×

openAAL Training

3,520

Published on

Training session at the universAAL project meeting in Darmstadt, March 1-4, 2010

Published in: Technology, Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
3,520
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
32
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "openAAL Training"

  1. 1. uAALtraining<br />Main conceptsof SOPRANO middleware / openAAL<br />Peter Wolf, FZI<br />16.03.2010<br />1<br />
  2. 2. IP, FP 6 http://www.soprano-ip.org<br />25 partners from 7 EU-countries<br />Start: 01/07 end 10/10<br />Project-lead: Exodus (Greece)<br />uAAL-contacts: ProSyst, FZI (, CAS)<br />Strong interest in <br />Defining/applying methodology for evaluation<br />Market-analysis<br />Middleware platform<br />16.03.2010<br />2<br />SOPRANO<br />
  3. 3. Support AP in the house ambiently with the help of IT technology<br />Positive mindset: enhance quality of life<br />But also: help in critical situations<br />SOPRANO Ambient Middleware (SAM)<br />openAAL is open-source software based on the SAM architecture and implementation<br />3<br />(Technical) Goal of SOPRANO<br />
  4. 4. Problem: Stove/oven have been left on unintentionally while person was leaving the home<br />Solution: Reminder service that helps person to remember turned on devices, open windows etc.<br />High-level UC description:<br />Identify situation that AP is about to leave the home<br />Check for open windows, critical devices that are turned on (stove, oven, kettle etc.)<br />Warn AP and wait for confirmation that message has been read<br />If not warn informal carer (e.g. son)<br />4<br />Exampleand Motivation:thesopranoremembering UC<br />
  5. 5. Problem: typical problem of AP<br />Solution: ambient services that incorporate existing technologies and services and are based on predefined rules <br />High-level UC description:<br />Automatically derive situations from sensor information<br />Execute predefined workflow as reaction<br />Execute services, actuators as needed<br />5<br />Exampleand Motivation: Generalisation<br />
  6. 6. 6<br />Architecture<br />
  7. 7. 7<br />SAM in Action: CM<br />State:<br />Window open<br />Procedural Manager<br />Kettle is on<br />Window is open<br />...<br />Composer<br />Context Manager<br />OSGi Service Middleware <br />LittleWorld:<br />Sensors:<br />kett-sensor connected-to kettle<br />oven-sensor connected-to oven<br />door-sensor connected-to frontdoor<br />...<br />Actuators:<br />message-actuator connected-to touchscreen<br />...<br />Actuators<br />Kettlesensor switched status<br />Windowsensor switched status<br />...<br />Sensors<br />7<br />
  8. 8. 8<br />SAM in Action: CM<br />Event:<br />AP about to leave home<br />State:<br />Door open<br />Procedural Manager<br />AP at door<br />Kettle is on<br />Window is open<br />No bell <br />Composer<br />Context Manager<br />OSGi Service Middleware <br />Actuators<br />Frontdoor sensor switched status<br />RFID-sensor detects chip<br />...<br />Sensors<br />8<br />
  9. 9. 9<br />Context Manager<br />can be extended bysoftware developers<br />Provide a consistent view on context at a specific point in time<br />Conflict Resolution<br />Translate low-level<br />context into high-level<br />context<br /> Context Storage<br />Store all context facts with timestamp and uncertainty<br />ContextUplifter<br />provide state information according to low-level context ontology<br />Sensor Service<br />Sensor Service<br />Sensor Service<br />
  10. 10. State-based modeling<br />No reasoning semantic instead more db-like semantics (abstract-query and constraints)<br />Low-level ontology <br />describes sensors, actuators and their states<br />Simplifies integration of sensors, actuators<br />High-level ontology<br />Describes context of assisted person<br />Used in communication between platform components<br />Uplifter define reasoning and ensure semantic coherence<br />16.03.2010<br />10<br />Ontology<br />
  11. 11. Two conceptual models for easy sensor and service integration<br />Service-level ontology<br />11<br />High-level Ontology<br />
  12. 12. Two conceptual models for easy sensor and service integration<br />Sensor-level ontology<br />12<br />Sensor-level Ontology<br />
  13. 13. RDF-based data model<br />Triples describing states of an entity<br />Entity, state-property, state<br />“lamp, has-power-status, on”<br />Tuple representation to capture domain-specific meta-information<br />History, for complex reasoning considering past states<br />Confidence, for statistical reasoning approaches<br />Validity, Source, ...<br />13<br />Data-model<br />
  14. 14. <ul><li>Tuple representation: (s,p,o,t0,v,a0,src,i)</li></ul>s is subject URI class<br />p is predicate(=property) URI property<br />o is object URI class<br />t0 transaction time<br />v validity duration <br />a0 confidence of statement in t0 <br />Src source of the statement<br />i is statement URI statement class<br />Every URI must be instantiated<br />Classes and properties are disjoint<br />Corresponding tuple (class, property, class, statement class) must correspond to conceptual model<br />14<br />Data-model & Ontology<br />
  15. 15. Collaboration of Uplifters - Example<br />triggers workflow<br />Decision Tree<br />AP a leaving<br />AP outside<br />Written tocontext storage<br />AP inside<br />Doorbell db<br />pressed<br />Rule-based<br />Rule-based<br />Written tocontextstorage<br />AP a near <br />door d<br />Written tocontextstorage<br />Door d Open<br />RFID chip c<br />Detected by<br /> reader r<br />Doorsensors<br />Fires<br />AP a wears<br />chip c<br />s attached to Door d<br />Reader r is lo-cated near door d<br />15<br />
  16. 16. Model andcontextreasoningseperatedtoallowformoreflexibility<br />Formalism neutral reasoning<br />Flexibilityconsideringlow-levelchanges<br />Constraints on propertycardinality<br />neededforconflict-resolution<br />Conformityofinterfaces<br />Abstractionofclassesandpropertiesforabstractqueries<br />16.03.2010<br />16<br />openAALOntology<br />
  17. 17. Stores all information facts<br />Provides simple query interface<br />Manages AP-context and low-level ontology<br />Implements blackboard architecture<br />Derives AP-context information from sensor information via aggregation services (uplifter)<br />Decouples situations from sensors to detect them<br />Decouples definition of situations from detection algorithms<br />Provides for heuristic-based conflict resolution at query-time<br />16.03.2010<br />17<br />CM Overview<br />
  18. 18. 18<br />openAAL Architecture<br />
  19. 19. 19<br />SAM in Action<br />Event:<br />AP about to leave home<br />State:<br />Door open<br />Procedure: <br />AP about to leave home<br /><ul><li>Inform AP about critical Devices
  20. 20. Wait for confirmation of AP
  21. 21. If no confirmation, send SMS to informal carer</li></ul>Procedural Manager<br />AP at door<br />Kettle is on<br />Window is open<br />No bell <br />Composer<br />Context Manager<br />OSGi Service Middleware <br />Actuators<br />Kettlesensor switched status<br />Windowsensor switched status<br />...<br />Frontdoor sensor switched status<br />Sensors<br />19<br />
  22. 22. 16.03.2010<br />20<br />PM Architecture<br />Admin Tools<br />Store/retrieve/trigger workflow xml-document<br />Procedural Manager<br />BPEL Parser<br />Database<br />Store wf<br />object struct.<br />Get wf object struct.<br />Execute trigger element<br />BPEL Engine<br />Request service execution<br />Sync./async. communication<br />Context Manager<br />Composer<br />
  23. 23. Based on Standard: Business Process Execution Language (BPEL)<br />21<br />Context-Aware Workflows<br />Standard Constructs<br />Context-Aware Extensions<br /><ul><li>Sequence
  24. 24. If
  25. 25. Loop
  26. 26. Assign
  27. 27.
  28. 28. Trigger event starting the wf
  29. 29. Query context manager
  30. 30. Store context statement
  31. 31. Wait for statement (or timeout)
  32. 32. Call semantic service</li></li></ul><li>16.03.2010<br />22<br />Workflow 1<br />Context Manager<br />Procedural Manager<br />Composer<br />Abstract workflow description equals easy to specify + reusable<br />Context manager can abstract information<br />Composer can context-aware concretize service requests <br />
  33. 33. 16.03.2010<br />23<br />Workflow 2<br />Context Manager<br />Procedural Manager<br />Composer<br />But workflows can also <br />operate on sensor-information (bed-sensor)<br />Request services directly (actuator for concrete light) <br />
  34. 34. Stores BPEL workflows that define (abstract) reactions to situations<br />Executes workflow upon situation detection<br />Communicates with CM for context-awareness<br />Requests service execution from composer to change AP-context and/or low-level context <br />16.03.2010<br />24<br />PM Overview<br />
  35. 35. 25<br />openAAL Architecture<br />
  36. 36. 26<br />SAM in Action<br />Event:<br />AP about to leave home<br />Workflow instantiation:<br />(1) Inform AP about problems<br />State:<br />Door open<br />Not-hearing-impaired + near frontdoor = <br />(1a) audio warning<br />(1b) warning on touch screen<br />Procedure: <br />AP about to leave home<br /><ul><li>Inform AP about critical Devices
  37. 37. Wait for confirmation of AP
  38. 38. If no confirmation, send SMS to informal carer</li></ul>Procedural Manager<br />AP at door<br />Kettle is on<br />Window is open<br />No bell <br />Composer<br />Context Manager<br />OSGi Service Middleware <br />Actuators<br />Kettlesensor switched status<br />Windowsensor switched status<br />...<br />Frontdoor sensor switched status<br />Sensors<br />Loudspeaker/touch screen <br />“Kettle is still on.”<br />“Window is still open.”<br />26<br />
  39. 39. 27<br />Inner Architecture of Composer<br />Procedural Manager<br />Abstract service goal<br />Concrete service goal<br />Service Matchmaker + Invocator<br />Parameterised invocation<br />Virtual Services<br />Store context<br />Context Manager<br />Concrete service goals<br />Query context<br />Query<br />Invoke<br />Actuator Service<br />OSGi Repository<br />Service<br />
  40. 40. 28<br />Solution: Virtual Services<br />Inform AP about medication<br />Inform AP<br />If not hearing-impaired<br />Inform AP<br />If not vision-impaired<br />Play sound message<br />on loudspeaker in this <br />or connected room of AP<br />Show message on GUI<br />on switched-on device in room of AP<br />Play sound message<br />on loudspeaker-1<br />Send SMS<br />to Number<br />Play avatar message <br />on tv-1<br />Show text message<br />via GUI on tv-1<br />Show text message<br />via GUI on touchscreen-1<br />
  41. 41. Absicht: Zustandsorientierte Beschreibungen<br />Input<br />Input<br />Dienst<br />effect<br />precondition<br />Set of States<br />Set of States<br />Idea: <br /><ul><li>Describe Service effect by configurable sets of complex states
  42. 42. Configurable: set depends on input parameters
  43. 43. Complex: states are arbitrary complex graphs formable with the ontology
  44. 44. Inform Person<in,1> about Medication<in,2>, where Person<in,1> is watching tv-1
  45. 45. Turn off Lamp<in,1> , where Lamp<in,1> is in kitchen-1</li></li></ul><li>Absicht: Zustandsorientierte Beschreibungen<br />Input<br />Service-Request<br />effect<br />Set of States<br />Idea: <br /><ul><li>Describe Service requests by configurable fuzzy sets of complex states
  46. 46. Configurable: set depends on input parameters
  47. 47. Fuzzy: User can specify evaluation value for elements of set
  48. 48. Complex: states are arbitrary complex graphs formable with the ontology
  49. 49. Emit Message<in,1> on MessageActuator, where MessageActuator is in kitchen(0.5) or is in living-room(1)</li></li></ul><li>Finds end executes services upon request<br />Provides for predefined semantic concretization if necessary<br />Decouples service requests from services at runtime by semantic matchmaking<br />Decouples specification of requests and offers by powerful DSD descritpion language<br />Provides heuristic-independent, real-time service matching<br />16.03.2010<br />31<br />Composer Overview<br />
  50. 50. 32<br />openAAL Architecture<br />
  51. 51. Complex in terms of configuration<br />LittleWorlds, Uplifter, Procedures, Virtual Services, DSD-statements, service integration<br />No clearly defined best practices of how and where to configure/model certain things<br />Very limited tool support that is tailored to openAALrequ. or AAL-domain<br />Some performance issues <br />Partly due to research prototype nature and <br />Use of open-source software (database + OSGi)<br />Still ongoing work:<br />No output-variables in DSD-requests in workflows<br />Aging of context facts was taken out in SOPRANO<br />Not all BPEL-constructs are thoroughly tested (yet)<br />Query capability on CM-data needs to be extended<br />16.03.2010<br />33<br />Main Drawbacks<br />
  52. 52. Modularity<br />Components can be used stand-alone or with complementing dummy implementations<br />Highly configurable<br />(partly) based on (quasi-)standards (OWL/RDFS-Syntax, BPEL, DSD)<br />Still continuing development in different projects (FZI living-lab AAL, SOPRANO, MOPS, SpeedUp)<br />Open-source via LGPL-license <br />2 running demo installations are available<br />16.03.2010<br />34<br />General Features<br />
  53. 53. Thankyouforyourattention<br />Questions?<br />16.03.2010<br />35<br />
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×