35
Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2 , David Menga 2 , Laurent Delahoche 1 , Bruno Marhic 1 , David Durand 3 , Christophe Logé 3 Le 6 Septembre 2006 Architecture de perception de contexte orientée service pour l'habitat communicant 1 LTI, Avenue des Facultés le Bailly - 80000 Amiens (France) 2 EDF R&D, 1 Avenue Charles de Gaule - 92141 Clamart (France) 3 LaRIA, 33 rue Saint Leu - 80000 Amiens (France)

Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Embed Size (px)

Citation preview

Page 1: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

1

Vincent Ricquebourg1,2, David Menga2, Laurent Delahoche1, Bruno Marhic1, David Durand3, Christophe Logé3

Le 6 Septembre 2006

Architecture de perception de contexte orientée service pour l'habitat communicant

1LTI, Avenue des Facultés le Bailly - 80000 Amiens (France)2EDF R&D, 1 Avenue Charles de Gaule - 92141 Clamart (France)

3LaRIA, 33 rue Saint Leu - 80000 Amiens (France)

Page 2: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

2

L’habitat communicant

C’est…

Une maison connectée vers l’extérieur

Une maison équipée d’objets communicants

Une maison confortable (chauffage, climatisation, éclairage)

Une maison économe

Une maison qui simplifie le quotidien (retour à la maison, départ, détente et loisirs)

Une maison sûre (sûreté des biens, sûreté des individus)

Une maison autonome (supervision, réactivité)

→ La maison doit rendre des services à l’habitant

Page 3: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

3

Services à l’habitant

Exemples :

Je pars de chez moi, la maison passe en mode minimal (extinction de l’éclairage, baisse du chauffage, baisse des volets,…)

Je rentre chez moi, l’éclairage s’allume, mes emails sont diffusés sur ma TV,…

L’éclairage intérieur s’adapte en fonction de la luminosité extérieure

La maison doit percevoir la situation en cours Sensibilité au contexte afin de fournir le service le plus adapté à la

situation en cours La maison fournit un service contextualisé

Page 4: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

4

Prendre en compte le contexte dans l’habitat

Ref : Coutaz J., Crowley J., Dobson S., Garlan D. - « Context is key » -Commun. ACM, Vol. 48, No. 3. (March 05)

Différentes couches :

Page 5: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

5

Plateforme logicielle

OSGi SOA Spécification définie par l’OSGi Alliance, qui

conceptualise une plateforme de déploiement de services administrable à distance.

Page 6: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

6

Architecture de perception de contexte

Modèle PCIA : 4 couches distinctes

P : Perception Comment percevoir ? Utilisation de capteurs qui

permettent de quantifier un phénomène physique → acquisition des données contextuelles

C : Contexte Comment représenter le contexte ? Utilisation d’un

modèle de contexte nourrit par les données contextuelles

I : Inférence Comment définir une situation ? Utilisation d’un moteur

d’inférence (raisonneur) A : Action

Comment agir face à une situation ? Utilisation d’actionneurs qui permettent de modifier un phénomène physique

P

C

I

A

En

viro

nnem

ent

Page 7: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

7

Architecture de perception de contexte

OS

Gi

Perception

Action

Contexte

Inférence

Environnement

Page 8: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

8

Architecture de perception de contexte

Notre architecture de perception de contexte orientée services :

OS

Gi

Page 9: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

9

Architecture de perception de contexte

Notre architecture de perception de contexte :

Couche matérielle permettant de

Percevoir un phénomène physique (capteurs)

Modifier un phénomène physique (actionneurs)

Page 10: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

10

Comment appréhender le contexte ?

Notre architecture de perception de contexte :

Couche événementielle permettant le transport des données capteurs/actionneurs

Permet d’obtenir une couche harmonisée pour les capteurs/actionneurs

Page 11: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

11

Le bus événementiel

Utilisation d’un bus événementiel (publication/souscription) Bus événementiel pour faire transiter des événements simples

Format des évènements émis : Valeur_Captée, Horodatage, Unitée_de_mesure,

Incertitude_Mesure, Identifiant_Capteur, Identifiant_message

Bus événementiel

Capteur 1

Capteur 2

Bundle 1

Bundle 2

Page 12: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

12

Exemple : EventAdmin sous OSGi

Source : Didier Donsez

Page 13: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

13

Comment appréhender le contexte ?

Notre architecture de perception de contexte :

L’ontologie permet de modéliser l’habitat à tout instant.

A partir des données capteurs, le modèle de l’habitat se construit.

Les règles permettent de raisonner à partir du contenu de l’ontologie (mécanisme d’inférence)

Page 14: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

14

Ontologie : Définition

En philosophie : C’est l'étude de l'être en tant qu'être, c'est-à-dire l'étude des propriétés générales

de ce qui existe.

En informatique : C’est un ensemble structuré de concepts. Les concepts sont organisés dans un

graphe dont les relations peuvent être : des relations sémantiques ; des relations de composition et d'héritage (au sens objet)

Une ontologie est la spécification d'une conceptualisation d'un domaine de connaissance

Cette définition s'appuie sur deux dimensions : une ontologie est la conceptualisation d'un domaine, c'est-à-dire un choix quant à la

manière de décrire un domaine. c'est par ailleurs la spécification de cette conceptualisation, c'est-à-dire sa description

formelle.

Page 15: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

15

Pourquoi une ontologie ?

Dans notre cas, on va se servir d’une ontologie pour modéliser notre connaissance envers la maison communicante (individu, objets communicants,…) et ce qui est perçu

Décrit de manière formelle les concepts Représentation sous forme de classes Les relations entre les classes

A partir de règles d’inférence, on va pouvoir raisonner sur les données contextuelles perçues dans l’environnement.

Fournir le service approprié

Page 16: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

16

Le mécanisme d’inférence

L’inférence est une opération logique par laquelle on admet une proposition en vertu de sa liaison avec d’autres propositions déjà tenues pour vraies.

Nous utilisons SWRL qui est un langage d’ontologie intégrant un langage de règles (OWL+RuleML). OWL est langage de modélisation pour les ontologies (standard du W3C)

Inférence

Je sais ceci

Je sais cela

Que cela me suggère-t-il ?

Page 17: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

17

Hiérarchie OWL des classes pour l’habitat communicant

Page 18: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

18

Relations entre les classes

Propriétés

Entre objets ou d’un objet vers une donnée Transitives, inverses, etc.

Page 19: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

19

Page 20: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

20

Les règles d’inférence

1 - A chaînage arrière

Ensemble de règles à chaînage arrière qui définit ce qu’est une maison occupée et une maison inoccupée.

La première partie précise les conditions nécessaires et suffisantes pour définir ce qu’est une maison occupée.

Une maison occupée doit contenir au moins une personne. La seconde partie définit ce qu’est une maison inoccupée.

Une maison inoccupée est le complément d’une maison occupée.

Page 21: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

21

Exemple de règles à chaînage arrière

21

Page 22: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

22

Les règles

2 - A chaînage avant

Page 23: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

23

Formation d’une ontologie

Outil pour faire abstraction de la complexité du langage : Protégé développé par Stanford

Unicode URI

XML + NS + xmlschema

RDF + rdfschema

Ontology vocabularySelf-

desc. doc.

Data

Data

Logic

Proof

Rules Trust

OWL

RuleML

Page 24: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

24

Pourquoi une ontologie ?

Les + Abstraction de haut niveau sémantique

Représentation du contexte

Possibilité de faire de l’intelligence artificielle La notion d’inférence à partir de règles.

L’ouverture des langages de description d’ontologies permet d’étendre les descriptions

Ajout de nouvelles connaissances

Représentation s’appuyant sur des standards XML, RDF, OWL, RuleML

Page 25: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

25

Pourquoi une ontologie ?

Les -

Nécessite une puissance de calcul assez importante Temps de calcul incompatibles avec du Temps Réel

Attention aux incohérences dans le modèle

Page 26: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

26

Les services rendus

Notre architecture de perception de contexte : Services C/C Services qui nécessitent

peu d’intelligence

Services composites Services qui agrégent un

ensemble de données

Service ontologie Chargé de faire le pont

entre le bus événementiel et l'ontologie

Service contextuel Services qui sont rendus à

l’habitant et qui sont adaptés au contexte (Appel des secours en cas de chute, ...)

Page 27: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

27

Intégration d’UPnPUniversal Plug and Play

Les actionneurs sont des objets UPnP. Lors de l’ajout d’un nouvel objet UPnP, un nouvel individu est

créé dans l’ontologie Lors du retrait d’un objet UPnP, l’individu correspondant est

supprimé de l’ontologie Lors de la modification de l’état d’un objet UPnP, son nouvel

état est transmis à l’ontologie

Utilisation d’un bus événementiel

Page 28: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

28

Expérimentation

Mise en place du scénario « je m’en vais, je reviens » Je suis dans ma maison, j’allume des lampes. Je m’en vais. La

maison se souvient de l’état des objets. Lorsque je reviens, la maison me fournit à nouveau l’état des objets.

Utilisation de capteurs de mouvements Utilisation de matériels X10 pour la commande de prises électriques Découpage d’une pièce en sous-zones (zone entrée, …)

Mise en place du second scénario « je me déplace dans l’habitat »

En fonction de ma position dans la maison, j’obtiens un service. Utilisation de capteurs de mouvements et de matériels X10 Découpage d’une pièce en sous-zones

Page 29: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

29

Déroulement logiciel

Page 30: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

30

Constat

Limites Temps de traitement lié au raisonneur (ressources

machines trop faibles) La technologie utilisée (X10) fournit des résultats

aléatoires.

Solutions envisagées Déport du raisonneur Solutions alternatives à l’ontologie ??? Technologie plus robuste (Konnex, BACnet, LonWorks ?)

Page 31: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

31

Perspectives

Etoffer l'ontologie Intégration Ontologie & Interaction multimodale

Dans telle situation, j’utilise telle modalité

Détection de contextes plus complexes Utilisation de signatures particulières

Détection d’un changement de contexte Extraction des caractéristiques de l’environnement à partir des

données sensorielles Utilisation de capteurs complémentaires : caméra

omnidirectionnelle et télémétre laser

Problème de dérives capteurs Prise en compte du conflit entre les sources de données pour

détecter les erreurs

Page 32: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

32

Perspectives

Prétraitement sémantique

PC

dép

ort

é

Service fusion

Page 33: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

33

Page 34: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

34

Conclusion

L'architecture semble robuste Résultats cohérents Nécessité de passer à l'échelle Passer sur du matériel embarqué plus performant

Utilisation de technologies hétérogènes Gros travail d'intégration (Ontologie, capteurs, OSGi,

Java, UPnP)

Vaste chantier !!

Page 35: Ubimob06 Journées Francophones sur la Mobilité et l'Ubiquité 1 Vincent Ricquebourg 1,2, David Menga 2, Laurent Delahoche 1, Bruno Marhic 1, David Durand

Ubimob’06 Journées Francophones sur la Mobilité et l'Ubiquité

35

Merci !

[email protected]