Olympus: A HighLevel Programming Model for Pervasive Computing environments - PowerPoint PPT Presentation

1 / 21
About This Presentation
Title:

Olympus: A HighLevel Programming Model for Pervasive Computing environments

Description:

Anand Ranganathan, Shiva Chetan, Jalal Al-Muhtadi. University of Illonois At Urban-Champaign ... The resource and context can change rapidly ... – PowerPoint PPT presentation

Number of Views:101
Avg rating:3.0/5.0
Slides: 22
Provided by: supercom
Category:

less

Transcript and Presenter's Notes

Title: Olympus: A HighLevel Programming Model for Pervasive Computing environments


1
Olympus A High-Level Programming Model for
Pervasive Computing environments
  • Anand Ranganathan, Shiva Chetan, Jalal Al-Muhtadi
  • University of Illonois At Urban-Champaign
  • Supercomputing Lab.
  • Joo-kyoung Park (05. 7. 26)

2
Contents
  • Introduction
  • Active Spaces and Gaia
  • The Olympus Programming Model
  • Virtual Entities
  • High-level Operators
  • The Discovery Process
  • Ontology hierarchies of entities
  • Ontological description of entities
  • Developer-specified constraints
  • Semantic Matching of classes
  • Space-level policies
  • Utility function
  • High-level Operators
  • Example Programs
  • Related work
  • Conclusion and future works

3
Introduction
  • Characteristic of Active Space
  • Device-rich, Context-aware environment
  • Very highly dynamic
  • Problem of programming Active Space
  • The resource and context can change rapidly
  • Developer can not expect to know how various
    tasks are performed
  • Program must be able to adapt the changing
    context and resource
  • Can solve High-level abstraction
  • Propose Olympus Programming model
  • Abstract entity and operator

4
Active Space and Gaia
  • Active Space
  • A physically-bounded collection such as a room,
    devices, objects, users, services and application
  • Gaia
  • Meta-operation system
  • Manages resources of an active space
  • Contains a set of core service that manages the
    resource collection
  • Provide a programming interface to application
    developer

5
The Olympus Programming Model
  • Programming model
  • Defined as an abstract machine
  • Provide certain data type and operation to high
    level
  • Require implementation for each these operation
    to low level
  • Virtual Entity
  • Abstracted entity
  • Olympus allows a user to program and Active Space
    in terms of virtual entity
  • Virtual entity associated with class defined in
    an ontology
  • Eight basic type of entities
  • Application, ApplicationComponent, Device,
    Service, Person, PhysicalObject, Location,
    ActiveSpace
  • High-level Operator
  • Olympus can provide Active Space operator in
    their high-level program

6
The Discovery Process(1/2)
  • Choose appropriate instance for the virtual
    entity
  • There are various type of constraints
  • Constraints of the value of variable specified
    high-level program
  • Constraints listed in ontology
  • Policies specified by a Space Admin
  • User policies for the user using the program

7
The Discovery Process(2/2)
  • Discovering suitable classes of entities
  • Quries ontology server to find semantically
    similar to the virtual entity class
  • Checking class-level constraints on the similar
    classes
  • Filters the list of classes depending on whether
    they satisfy class-level constraints (Used Prolog
    reason engine)
  • Discovering entity instances in the current
    space
  • Quries Space Repository to get instances of the
    classes that are available in the space
  • Checking instance-level constraints on the
    similar classes
  • Check if it satisfies instance-level constraints
    specified in the program or policies (Used Prolog
    reason engine)
  • Choosing the best among the possible instances

8
Ontological hierarchies of entities(1/3)
Discovery process
  • ApplicationComponent hierarchy
  • Built using an extension of the
    Model-view-Controller framework
  • Model
  • Implements the logic of application and export to
    access it
  • Presentation
  • Provide output interface
  • Adapter
  • Map controller input to method call on model
  • Controller
  • Act as input interface to application
  • Coordinator
  • Manage the composite of the other components of
    the framework

9
Ontological hierarchies of entities(2/3)
Discovery process
  • ApplicationComponent hierarchy can allow a class
    to have multiple parents
  • Help in identifying how similar any two entity are

10
Ontological hierarchies of entities(3/3)
Discovery process
  • Device and other Entity type hierarchy
  • Similar to the ApplicationComponent hierarchy

11
Ontological Description of entity
Discovery process
  • Each class is associated with a description in
    OWL
  • OWL describe various semantic property such as
    the task it can perform, the class of device that
    can host it
  • All application Component classes have an OWL
    description
  • Define relations between different concept
  • Ontologies are initially created by an admin of
    space and can extend application developer

12
Developer-specified constraints
Discovery process
  • Developer can specify constraints that the class
    and instance of virtual entity
  • Take the form of triple (ltentitygtltpropertygtltvaluegt
    )

13
Semantic Matching of classes(1/2)
Discovery process
  • Semantic similarity of entity class
  • Based on the principle that entity can be
    substituted by another if they are semantically
    similar (EX. Powerpoint -gt acrobet)
  • Matching rule
  • C1 is equivalent to C2, with similarity-level 0
  • C1 is a sub-concept of C2, with similarity-level
    1
  • C1 is a sub-concept of C2 or C1 is a sub-concept
    of a super-concept of C2 whose intersection with
    C2 is satisfiable, with similarity-level i2,
    where I is the number of nodes in the path in toe
    ontology hiererchy graph from C2 the relevant
    super-concept of C2

14
Semantic Matching of classes(2/2)
Discovery process
  • Example
  • similarity-level 0 PowerPointViewer
  • similarity-level 1 None
  • similarity-level 2 AcrobetReder, GhostScript
  • similarity-level 3 WindowsMediaPlayer, Paint
  • similarity-level 4 WinAmp, GaiaSpeechEngine

15
Space-level Policies
Discovery process
  • Written by the administrator of the space
  • Policies are written in the form of rules in
    Prolog
  • Specify constraints on the classes and instances
    of entities
  • Class level constraints
  • Instance level constraints

16
Utility Function
Discovery process
  • Employ a multi-dimensional utility function in
    order to choose best entity instance
  • Location of the entity
  • Task supported by the entity
  • State of the entity
  • Context of the space

17
High-level Operators(1/2)
  • Operators can express many common Active Space
  • Operators act on a target entity and can have
    zero or more argument
  • Event operator generate event when the associated
    condition become true

18
High-level Operators(2/2)
19
Example Program
  • Consist of two parts
  • Virtual entities are declared
  • Developer specifies the type of the entity and
    its properties of constraints
  • Use high-level operators on the entity
  • Developer can iterate through the list and
    perform operations on instance

20
Related work
  • Task-computing model
  • Allows a user to specify a behavior as a set of
    task that need to be completed
  • System determine the way the task are to be
    composed
  • Operator graph model
  • Use programming model where service to be
    composed are specified as description and
    interaction
  • Other discovery mechanisms
  • Jini Lookup, CORBA, UDDI are used for discovering
    entity
  • But specify constraints based on name-value pair

21
Conclusion
  • Relieves developers from task of discovering
    proper entity for performing task
  • Provide abstraction for common Active Space
  • Provide a way of integrating policies and a
    utility model into the discovery process
Write a Comment
User Comments (0)
About PowerShow.com