A Framework for Context-aware applications for Smart Spaces. ruSmart 2011 St Petersburg, 22.8.11
-
Upload
natalia-diaz-rodriguez -
Category
Technology
-
view
728 -
download
1
description
Transcript of A Framework for Context-aware applications for Smart Spaces. ruSmart 2011 St Petersburg, 22.8.11
A Framework for Context-Aware Applications
For Smart Spaces
Mohsin Saleemi, Natalia Díaz Rodríguez, Johan Lilius, Iván Porres [email protected], [email protected]
Åbo Akademi University, Turku (Finland)
ruSmart 2011
Contents
• Introduction
• What is a Smart Space?
• Smart-M3 Platform
• Context Ontology Model
• System Architecture
• Context Inference Rules
• Application Development Tool for Smart-M3
• PythonRule Structure
• Python Programming of Smart Spaces with PythonRules
• Conclusions
• Future Work
Introduction
• Ubiquitous computing involving heterogeneous devices.
• Need for tackling Device Interoperability.
• Context : Any information that can be used to characterize the state of an entity.
• Focus on the User: A context system that adapts to the user’s preference.
• Against traditional context aware systems (based on sensors and static rules, requiring significant amount of human interactions to become adaptative) we chose Ontology based Context Modelling:
• Expressive models.
• Provides flexibility, genericity and extendibility.
• Smart-M3 Ontology based solution.
- E.g. PVR and mobile phone example
What is a Smart Space?
SMART SPACE:
An abstraction of space encapsulating both information from a physical space and access to this information allowing devices to join and leave the space.
Publish-subscribe methods are used in these dynamically changing environments.
Smart-M3
NOKIA’S SMART-M3 (An implementation of Smart Space): • A Multi device, Multi part and Multi vendor (M3) open source
cross-domain platform for independent agents to communicate.
• Semantic Information Broker (SIB): The central repository of RDF triples responsible for information storage, sharing and management through the Smart Space Access Protocol (SSAP).
• KNOWLEDGE PROCESSORS (KPs) entities implement functionality and interact with the Smart Space by inserting/retrieving/querying common information.
• An APPLICATION is constructed by aggregating KPs which perform tasks.
• COMMUNICATION happens not device to device but through the SIB.
Smart-M3 concept
Context Ontology Model
Inferred information causes the context ontology to be extended
Enabling the system to initiate adaptative decisions appropriate for a particular application
Context Ontology Model
System Architecture Context Providers
• Observed • Specified
Context Datatype Interpreter • Type conversion • OWL-S can be used to specify
functionality Context Reasoner/Rule Interpreter
• Infer high level context info. • Based on inference rules.
Ontologies • OWL ontologies define context
information in the SIB. Inference Rules
• Specific format • Domain specific • Can be provided as separate
libraries
Context Inference Rules
Since the end-user should not deal with the RDF store directly, a PythonRules module is presented to translate Python logic expressions to the SIB API (Query, Subscribe, Insert, Remove, Update). AIM: An independent PythonRules Module to allow easy definition of Rules to model Smart Spaces: •No need for learning Query languages or treat RDF data.
•Including Rule Reasoning.
Application Development tool for Smart-M3
• Ontology-Based application development
• Tool for rapid
application development
Tools
1. Ontology Library Generator
OWL-DL -> Python and C.
2. Middleware framework: Abstracts the communication with the SIB providing to the generated API handling of RDF triples and queries.
PythonRule Structure:
With()//When()>>Then()
• With clause: Assumptions, Assertions or
Declarations about existence of individuals.
• When clause: Conditions or events that must hold before the rule is triggered.
• Then clause: Actions to trigger, Conclusions
representing the inferred information.
Python Programming of Smart Spaces with PythonRules
Python Programming of Smart Spaces with PythonRules
Python Programming of Smart Spaces with PythonRules
Conclusions
• Smart Spaces: well suited for ambient applications to adapt to the user’s preferences.
• Information Sharing and Reusability allowed for diverse Dynamic Applications.
• PythonRules: Allows End-User to configure the behaviour of the Smart Space with no knowledge of Semantic Web technologies (query languages or RDF data).
• PythonRules aims at being independent of the RDF Store (other than Smart-M3 will be used).
And finally: Easy UI for non programmers.
Future Work
• Ongoing PythonRules module: Further development. • SIB consistency related issues (and
efficient subscriptions implementation). • Privacy Control. • Integrationg with OWL-S services. • Different Domain Applications:
• BioInformatics. • Office Domain, Home Automation. • Elderly Monitoring Systems, etc.
References
Smart-M3 approach and our Development Tools:
- Smart-M3 Software, Release 0.9.4 beta. Available: http://sourceforge.net/projects/smart-m3/
- Smart-M3 Ontology Library Generator OWL->Python API: http://sourceforge.net/projects/smart-m3/files/smart-m3-ontology\_to\_Python-API\_generator\_v0.9.1beta.tar.gz/
- Framework for Smart Space Application Development. Kaustell, Andre and Saleemi, M. Mohsin and Rosqvist, Thomas and Jokiniemi, Juuso and Lilius, Johan and Porres, Ivan. In Proceedings of the International Workshop on Semantic Interoperability, IWSI 2011
- End-User’s Service composition in Ubiquitous Computing using Smart Space approach. Saleemi, M. Mohsin and Lilius, Johan. Sixth International Conference on Internet and Web Applications and Services, IEEE, 2011.
- Ontology-Driven Smart Space Application Development. River Publishers Book Chapter (in revision).
MORE INFORMATION: Natalia Díaz, [email protected]
Mohsin Saleemi, [email protected]