• Aucun résultat trouvé

2.3.1 Enjeux liés à notre travail

Afin de pouvoir partager des informations entre les différents acteurs de la ville

(données des capteurs, objets physiques, etc.), une nomenclature doit être adoptée

par tous pour que les acteurs se comprennent.

Prenons l’exemple de capteurs de température qui sont déployés par deux acteurs

différents dans la ville. Tout deux ont leurs propres applications qui utilisent leurs

mesures des capteurs. Pour décrire les mesures de ses capteurs, le premier acteur

utilise un attribut “temp = xx c” (xx = un nombre quelconque), au sein de l’API

utilisée par ses applications, alors que le second a défini un attribut “heat = xx

Celsius”.

Lorsque ces deux applications veulent partager les données de leurs capteurs et

ainsi permettre à leurs applications d’utiliser les données de l’autre, cette description

unilatérale des mesures de capteurs est handicapante. les applications devront être

ré-écrites afin qu’elles tiennent compte de la nomenclature adoptée par l’autre. Ces

acteurs doivent ainsi se mettre d’accord sur une nomenclature commune pour

dé-crire les mesures de leurs capteurs : c’est le rôle principal des modèles sémantiques,

promouvoir l’interopérabilité.

Dans le contexte d’une plateforme partagée, cette nomenclature permet ainsi aux

acteurs présents de pouvoir aisément utiliser les capteurs et actionneurs des autres.

De plus, cela permet à un nouvel acteur de la ville de pouvoir s’intégrer rapidement

à la plateforme puisqu’il n’a qu’à utiliser cette nomenclature pour pouvoir utiliser

les différents capteurs et actionneurs présents.

Les ontologies permettent de décrire cette nomenclature comme nous allons le

voir dans la section suivante.

2.3.2 Ontologies

2.3.2.1 Définition

Les ontologies permettent de définir des modèles sémantiques qui, dans le

contexte de l’informatique, représentent les connaissances d’un domaine. Une

on-tologie est définie [68] comme un ensemble de termes décrivant la signification

des concepts d’un domaine particulier ainsi que leurs relations. L’ensemble de ces

concepts décrits est appelé un vocabulaire.

Il existe des ontologies dans différents domaines, par exemple en biologie pour

décrire des génomes [17] ou dans le domaine de la géographie pour décrire des

espaces géographiques [55]. Les ontologies permettent de décrire à différents niveaux

de granularité les connaissances d’un domaine. Par exemple, il peut exister plusieurs

ontologies visant à décrire des espaces physiques où chacune d’entre elles définit à

un certain niveau de détails ce qu’est un espace physique (une pièce, une ville, une

maison, etc.).

Un domaine de recherche appelé l’alignement d’ontologies s’intéresse à cette

problématique liée à la multiplication des ontologies décrivant le même domaine.

L’alignement d’ontologies vise à lier des ontologies entre elles en fonction de leur

point commun [154].

Des ontologies existent également dans le domaine de l’internet des objets, par

exemple, pour décrire les devices, et à un niveau de granularité plus fin les capteurs

et actionneurs ainsi que les mesures qu’ils effectuent. Nous verrons que certaines

vincent@email.fr

jean-ni@email.com

Vincent

Jean-Nicolas

foaf :knows

foaf :knows

foaf :mbox

foaf :mbox

foaf :name

foaf :name

http ://www.example.fr/id/Jean-Nicolas

http ://www.example.fr/Vincent

Figure 2.12 – Exemple d’une ontologie appliquée à deux personnes qui se

connaissent décrivant également leur adresse mail et leur nom.

plateformes que nous avons étudiées (cf. section 3.2) s’appuient sur des

ontolo-gies existantes dans l’internet des objets pour ajouter des méta-données au modèle

qu’elles proposent.

2.3.2.2 Conception et utilisation des ontologies

Les ontologies sont exprimées sous la forme de triplets < sujet, prédicat, objet

>. Nous décrivons un exemple d’utilisation d’une ontologie en figure 2.12. Il s’agit

de l’application d’une ontologie pour représenter les caractéristiques (email et nom)

de deux personnes qui se connaissent. Les nœuds qui ont une flèche sortante sont

des sujets, les flèches sont des prédicats et les objets sont les nœuds qui possèdent

une flèche entrante (un nœud peut être sujet et objet).

L’ontologie utilisée est FOAF [54] qui comporte comme vocabulaire “knows”,

“mbox”, “name” et bien d’autres noms que nous n’utilisons pas ici. L’application de

cette ontologie permet de décrire des liens existants entre des personnes. Ici, les deux

personnes ont un URI qui permet de les identifier et qui sert de base pour décrire

leurs caractéristiques.

Tout comme il existe des URIs et URLs pour identifier et localiser des documents

sur le web, il existe également des URIs pour identifier des concepts présents au sein

des ontologies (ici, “example.com/...”). Il s’agit d’un des fondements de ce qui est

appelé le web sémantique [24] où les notions présentes dans le web sont transposées

au domaine des ontologies.

La conception et l’utilisation d’ontologies sont des domaines de recherche à part

entière. Il existe des langages plus ou moins expressifs (RDF [103], OWL [21], etc.)

pour décrire des ontologies. Divers organismes de standardisation (IEEE, W3C,

etc.) tendent à proposer des ontologies (SUMO [119], SSN [40], etc.). au travers de

groupes de travail qu’ils ont créés. De même, il existe une multitude de formats

de sérialisation pour utiliser des ontologies (XML [31], Turtle [36], N3 [23]) ainsi

que des outils permettant de les stocker (triple-store) et de les exploiter (moteur

d’inférence).

Nous verrons que les choix que nous avons effectués dans notre travail permettent

l’utilisation d’ontologies pour décrire la sémantique de nos modèles (cf. section5.5.3).

État de l’art

Comme nous l’avons décrit dans le premier chapitre, il existe de multiples

défi-nitions de la ville intelligente.

Selon nous, une ville n’est pas considérée intelligente lorsque les différents acteurs

de la ville ont le monopole exclusif de leurs capteurs et actionneurs, qui se traduit

par ce que nous appelons des solutions verticales dans la ville. Après avoir choisi

un échantillon des domaines d’applications existants dans la ville, nous décrivons en

section3.1 des solutions verticales proposées dans la ville.

De notre point de vue, une ville est intelligente lorsque les différents acteurs

de la ville partagent les données de leurs capteurs l’accès à leurs actionneurs. Ce

partage peut s’effectuer au travers d’une plateforme. Ainsi, nous décrivons ce qu’est

une plateforme ce qu’elle apporte (cf. section 3.2). Puis, en utilisant des points de

comparaison que nous définissons, nous décrivons un échantillon de plateformes qui

sont opérationnelles ainsi que celles qui, à un stade moins avancé, ont été proposées

mais ne sont pas encore déployées.

A l’aide ces divers points de comparaison, nous dressons en section3.3un résumé

de ce qui manque aux plateformes actuelles. Ainsi, cela nous permet d’introduire le

travail réalisé dans cette thèse.

Sommaire

3.1 Solutions verticales proposées dans la ville . . . . 24

3.1.1 Domaines d’application liés à ces solutions verticales . . . . . 24

3.1.2 Des solutions verticales à une plateforme horizontale . . . . . 25

3.2 Plateformes pour l’internet des objets et la ville intelligente 26