html5-img
1 / 63

Context Awareness

Context Awareness. Hoon Oh University of Ulsan. Structure. Why Context? Context Definition Context Sources Context Properties Context Service Why? Architecture (centralized/P2P) Basic abstractions and layers ContextModels Why? What to model? How? (Approaches)

Download Presentation

Context Awareness

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Context Awareness Hoon OhUniversity of Ulsan

  2. Structure • Why Context? • Context Definition • Context Sources • Context Properties • Context Service • Why? • Architecture (centralized/P2P) • Basic abstractions and layers • ContextModels • Why? • What to model? • How? (Approaches) • Generating higher-level context • System examples

  3. Adaptation of application behavior

  4. Simplified user interactions

  5. Motivation • “Perception [...] of the current situation and acting with the current context in mind are essential components of the interaction with humans.” • By enabling applications to be aware of their current situation,they are able to adapt their behavior to changing resource availability and user requirements (e.g. to simplify interactions and to improve functionality in heterogeneous and dynamic environments). • Context can be used for improving system behavior to operate more adaptive, personalized, autonomous and flexible

  6. Motivation

  7. What is Context? • “…all but the explicit input and output of an application” • “…that which surrounds, and gives meaning to, something else” • “... The word context embodies just about everything that constitutes the user’s environment and the users themselves”

  8. Early definition [Schilit and Theimer, Xerox Parc] • Context-aware computing is the ability of a mobile user's applications to discover and react to changes in the environment they are situated in. • Three important aspects: • Where you are? • Who you are with? and • What resources are nearby? • Examples of context: 1. Computing context, such as network connectivity, communication costs, communication bandwidth and nearby resources such as printers, displays and workstations 2. User context, such as the user's profile, location, people nearby, even the current social situation 3. Physical context, such as lighting, noise levels, trafic conditions and temperature

  9. Hierarchical and Extensible Context Categories • The categories of human factorsand physical environmentat the top level are further classified into user, social environment, taskand conditions, infrastructure, locationat the second level [Schmidt, Beigel, Gellersen, TeCo-Karlsruhe].

  10. Conceptual Definitions • “Context is a subjective concept that is defined by the entity that perceives it" and “contextual states [...] are inherently associated with specific objects” [Pascoe] • “Context could be generally described as the subset of physical and conceptual states of interest to a particular entity.” [Pascoe] • “Context is any information that can be used to characterise the situation of an entity. An entity is a person, place, or object that is considered relevant to the interaction between a user and an application, including the user and applications themselves” [AnindK. Dey, Georgia Institute of Technology] • Contextual information is related to a certain entity

  11. Context as a role that data plays • Context is an operational term: Something is context because of the way it is used in interpretation, not due to its inherent properties. [...] Features of the world become context through their use. [Winograd] • Context information is information that influences the flow of a service at run-time; content information, in contrast, is merely being processed. [...] The property of being context information is therefore not an inherent property that data has. It is a role that only depends on the considered service.

  12. Types of Contextual Information

  13. Two Categories of Information • State Information • Application actively requests required context (pull) • Access to actual and historical data • E.g. current location, device, etc. • Change Events • Application registers for particular change events • Waits passively for the events • Context service notifies registered applications about changes of state (push) • E.g. location changes, access network changes

  14. Usage of Context • Presentation of Information • Context-Dependent-Actions • Triggering of Actions

  15. Example System TEA

  16. Technology for Enabled Awareness (TEA), TEA II • Sensor placement • Mobile device equipped with sensors • Application Scenario • Sensing the situation of a mobile device and its user • Location and usage of mobile phone • Automatic selection of phone profile • Used Sensors • TEA I: photo diode, two accelerometers, passive IR sensor, temperature, pressure, CO gas, omni-directional microphone • TEA II: two photo diodes, two microphones (miniature electrolet capsules usually used in mobile phones), a dual axis accelerometer (ADXL202 from Analog Devices), a digital temperature sensor (Dallas Semiconductor DS1820), touch sensor • Board extensible with further sensors(slots available on the board)

  17. TEA – Computed higher-level Contexts • 4-layered model: • 1. Sensor (physical, logical) • 2. Cue (processing of one sensor output)􀁺 • Contains Array of Values, Operations on these values, e.g. average, standard deviation • 3. Context (describes disjunct situations together with probability)􀁺 • Description of the current situation on an abstract level • Based on logic rules operating on cues • 4. Application level (Situation and application specific)􀁺 • Definition of actions based on scripts, triggered if a certain situation is entered or left with a given probability

  18. TEA – Computed higher-level Contexts • Cues • Average value (for values of single sensor over about 1 min., applied for light, acceleration, temperature, and pressure) • Standard derivation (for values over about 1 min., applied for light, passive IR, acceleration) • Base frequency (applied for light and acceleration, types of light (flickering), acceleration pattern for moving) • First derivative (applied for passive IR (Infra Red) and acceleration) • Cue to exclusive contexts • Location of mobile phone • hand, table, suitcase • Device usage • while user is not moving or walking • inside or outside • car, bus, train • Stationary car, moving car

  19. TEA - Example • Computing method • Cues: statistical functions • Definition of exclusive contexts: real-time recognition based on set of logical rules • Example • Rule set for recognizing the situations that device is situated in Hand, Table and Suitcase based on the sensors light, and acceleration in two directions (X and Y) • Constants Dx, Dy, L, Xnormal, Ynormal, D, and Q defined based on observations

  20. Comprehensive View on Context

  21. Terminology • ContextAttribute • Smallest piece of information • Context Source • Provides set of context attributes for one or more entities • Context Service • Service which gathers, processes and stores context and offers it to context users • Mediates contextual information between context sources and context users • It especially hides the complexitity of these operations from the context user • Context Aware System/Application • Able to perceive environment -> consumes context attributes • Relationship between context and results of processing (according to changes of context the processing results change too in a specified form)

  22. Context Attributes

  23. Properties of Context Attributes • Time dependent • Context represents dynamic information • Values change over time • Static information like date-of-birth can be interpreted as information with change frequency of zero • History • Represents values at different points in time • Incorrectness • Due to unexact sensor information, measurement failures • Wrong assumtions for derivation and interpretation • Quality • Uncertainty in measurements, application of heuristics, assumptions for derivation and interpretation • Multiple sources • Same information can be gathered in different ways • E.g. locationof a person (GPS, Position of device, WLAN)

  24. Properties of Context Attributes • Relevance • Capturing time • Highest relevance at capturing time • Decreases constantly • e.g. location of a mobile user • Location • Measured temperature • Highest relevance at capturing place • Decreases with distances

  25. Properties of Contextual Information • Multidimensional/Heterogeneous • Physical/ technical context • Private/ social/ business • Distributed • Contextual information occurs everywhere/all the time • Insecure • Personal information: privacy issues • Imperfect • Incomplete • Inconsistent • Unforeseeable • Any information can be relevant as context • Permanent adaption of model necessary

  26. Context Sources

  27. Context Sources

  28. MICA – Wireless Sensor Network

  29. Context Sources • ContextSources are: • Sensor devices (e.g. GPS, temperature, light intensity, noise) • Databases (e.g. user DB of service/access provider) • Applications (e.g. scheduling app) • User monitoring and input (service or platform GUI)

  30. Properties of Context Sources • Heterogeneous • Technology –Sensors, Databases, application data • Access – SQL, sensor driver, extraction code • Context Type –User information, GPS location • Data representation–application dependent data structures, GPS coordinates • Semantics–equally named data with different meaning, differently named data with equal meaning • Ganularity–user DBcontains comprehensive user information, GPS device provides GPS coordinates only • Level of abstraction – Sensor provides raw data, scheduling application provides high level date information • Owner – user, network provider, building owner

  31. Properties of Context Sources • Distributed • mobile device • infrastructure • multiple alternative sources • Source architecture • Centralized – user database • Partitioned – user database (A-E, F-J, K-P, …) • Distributed – temperature for certain rooms • Relevance • User specific – schedule, user preferences • Application specific–buddy list • Domain specific – patient data • Generic – temperature, light intensity • Users have their own configuration of context sources

  32. Context Service

  33. Comprehensive View on Context

  34. Why a Context Service? • Decoupling of applications and context sources • Development support • Reusability of basic functionality:􀂋 • Management and access of context sources • Management of context history • Generation of higher-level context, fusion of context • Distribution of context information (state and event information) • Privacy Management

  35. Architecture – Central Context Server • Server can provide high performance and storage capacity to process context • High availability of information • Central storage for user profiles, information available independent of terminal devices • Central access control • Limited scalability due to centralized resource for high amount of clients • Network connection and infrastructure required between mobile device and server for context access

  36. Architecture: Peer-to-Peer • Independent from network connection to certain server • Support of ad-hoc scenarios • High scalability due to distribution of context access • Availability of information depends on device availability, limited availability of user profiles • Limited performance and storage capacity on mobile devices for context processing • No central control to contextaccess

  37. Basic Abstractions – Context Toolkit • Widgets: • Sensor abstraction • Represent single context value • Encapsulate details of sensors and other sources • Current value, history, subscriptions • Interpreter • Processing of sensor data • Generation of higher-level context • Can be used by Widgets, Aggregators, Interpreters and Applications • Aggregator • Assign several context data (widgets, interpreters) to entities • Easier management • 3 Layers • Sensor, higher level, situation

  38. Basic Abstration - TEA • 4-layered model: • 1. Sensor (physical, logical) • 2. Cue (processing of one sensor output)􀁺 • Contains Array of Values, Operations on these values, e.g. average, standard deviation • 3. Context (describes disjunct situations together with probability)􀁺 • Description of the current situation on an abstract level • Based on logic rules operating on cues • 4. Application level (Situation and application specific)􀁺 • Definition of actions based on scripts, triggered if a certain situation is entered or left with a given probability

  39. Architecture of Context-Aware Systems • Layer 4: application components • Layer 3: decision support to select appropriate actions and control adaptation processes • Layer 2: persistent storage for context information and advanced query facilities • Layer 1: processing of sensor outputs • Layer 0: sensors and actuators

  40. Sentient Computing • Object-oriented Approach of Sentient Objects (SO) • Each SO represents context-aware funtionality of gathering, processing or applying of contextual information • different types of SO’s • sensors • transformer • actuator • Sentient objects contains internal represenation of contexts as well as transformation code (e.g. inference mechanisms) • Combination of sentient objects to context-aware applications

  41. Context Models

  42. Why Context Models? • Common understanding between system components • Sharing of context information between applications / systems • Model for application development • Approaches • Context Profiles • Object Oriented Models • Ontology-based Models

  43. Context Profiles • Name/Value Pairs • username = Thomas Springer • temperature = 21 C • Profiles • triples – subject, predicate, object • <http://www.examplepage.de/person/Peter> - author – “Peter Müller” • RDF (Resource Description Framework) • CC/PP (Composite Capabilities/Preference Profiles) • CSCP (Comprehensive Structured Context Profiles)

  44. Object Oriented Model - (Henricksen, Indulska) • Real-world objects modelled based on entities with attributes • Relations between attributes described by associations

  45. Object Oriented Model - (Henricksen, Indulska)

  46. Object Oriented Model – Quality

  47. Ontology-based Context Models • “An ontology is an explicit specification of a conceptualisation” [Gru93] • Describes real-world as formalized concepts • Consists of concepts and roles • Individuals as instances of concepts • OWL is Web Ontology Language defined by W3C • Based on RDF • 3 variants: OWL lite, OWL DL, OWL Full

  48. CONON – CONtext ONtology

  49. CONON – CONtext ONtology

  50. CONON- Quality Model

More Related