A Framework for Context-aware applications for Smart Spaces. ruSmart 2011 St Petersburg, 22.8.11

18
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

description

 

Transcript of A Framework for Context-aware applications for Smart Spaces. ruSmart 2011 St Petersburg, 22.8.11

Page 1: 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

Page 2: A Framework for Context-aware applications for Smart Spaces. ruSmart 2011 St Petersburg, 22.8.11

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

Page 3: A Framework for Context-aware applications for Smart Spaces. ruSmart 2011 St Petersburg, 22.8.11

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

Page 4: A Framework for Context-aware applications for Smart Spaces. ruSmart 2011 St Petersburg, 22.8.11

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.

Page 5: A Framework for Context-aware applications for Smart Spaces. ruSmart 2011 St Petersburg, 22.8.11

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.

Page 6: A Framework for Context-aware applications for Smart Spaces. ruSmart 2011 St Petersburg, 22.8.11

Smart-M3 concept

Page 7: A Framework for Context-aware applications for Smart Spaces. ruSmart 2011 St Petersburg, 22.8.11

Context Ontology Model

Inferred information causes the context ontology to be extended

Enabling the system to initiate adaptative decisions appropriate for a particular application

Page 8: A Framework for Context-aware applications for Smart Spaces. ruSmart 2011 St Petersburg, 22.8.11

Context Ontology Model

Page 9: A Framework for Context-aware applications for Smart Spaces. ruSmart 2011 St Petersburg, 22.8.11

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

Page 10: A Framework for Context-aware applications for Smart Spaces. ruSmart 2011 St Petersburg, 22.8.11

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.

Page 11: A Framework for Context-aware applications for Smart Spaces. ruSmart 2011 St Petersburg, 22.8.11

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.

Page 12: A Framework for Context-aware applications for Smart Spaces. ruSmart 2011 St Petersburg, 22.8.11

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.

Page 13: A Framework for Context-aware applications for Smart Spaces. ruSmart 2011 St Petersburg, 22.8.11

Python Programming of Smart Spaces with PythonRules

Page 14: A Framework for Context-aware applications for Smart Spaces. ruSmart 2011 St Petersburg, 22.8.11

Python Programming of Smart Spaces with PythonRules

Page 15: A Framework for Context-aware applications for Smart Spaces. ruSmart 2011 St Petersburg, 22.8.11

Python Programming of Smart Spaces with PythonRules

Page 16: A Framework for Context-aware applications for Smart Spaces. ruSmart 2011 St Petersburg, 22.8.11

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.

Page 17: A Framework for Context-aware applications for Smart Spaces. ruSmart 2011 St Petersburg, 22.8.11

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.

Page 18: A Framework for Context-aware applications for Smart Spaces. ruSmart 2011 St Petersburg, 22.8.11

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]