Le système HEMIS est basé sur un design pattern en couches, quatre couches ayant chacune son rôle bien défini, et trois d'entre elles sont reliées à une base de données permettant de récupérer et de mettre à jour les services proposé par le système.
La couche Matériel représente l'ensemble des objets connectés entre au système HEMIS.
La couche API permet à l'utilisateur d'accéder aux services offert par le système et les objets qui le composent, et ainsi de lui donner des directives telles que: “fait en sorte que la température de la pièce soit toujours à 20°C.”.
La couche SMA Cognitif est la représentation logiciel des objets connectés formant la couche Matèriel.
La couche SMA Cognitif charge la couche SMA Réactif d'agents liés aux actionneurs et capteurs des objets de la couche Matériel.
C'est cette couche SMA Réactif qui implémente le système d'apprentissage et de prédiction.
L'agent cognitif, représentant un objet de la couche matèriel, charge la couche SMA Réactif d'un certain nombre d'agents par capteur et actionneur de l'objet.
Dans le modèle proposé par [Mazac et al., 2015], les agents chargés dans la couche SMA Réactif se divisent en deux rôles principaux :
- Les agents “producteurs” qui, comme leurs noms l'indique, produisent des évènements. Ils se divisent en deux sous-rôles :
- Les agents “Similarité” qui comparent les évènements récoltés pour évaluer la viabilité d'un motif.
Les relations entre ces deux types d'agents sont décrits dans le diagramme Agent-Groupe-Rôle ci-dessous :
A partir de ces agents et de leurs intéractions, le système sera capable d'isoler des évènements récurents. Les agents “découper” récupérant les variations des états des actionneurs et capteurs à partir des données brutes fournies, ensuite les agents “similarité” vont évaluer la similarité entre plusieurs variations récurrentes et créer des évènements correspond.
Ces évènements fournis par les agents “similarité” sont ensuite récupéré en partie par les agents “associer” qui vont créer des motifs d'évènements récurrents qui semble lié entrer eux. Ces motifs seront alors traité par les agents “similarité” pour valider leur viabilité.
Ainsi des motifs d'évènements sont appris par le système et celui-ci est capable de prédire un évènement en fonction d'un autre le précédant.
L'un des objectifs de ce projet est d'adapter le modèle d'apprentissage et de prédiction du système HEMIS à l'architecture des avatars proposé par [Mrissa et al., 2015].
Un avatar est une représentation logiciel d'un objet connecté. C'est cet avatar qui gère la connection aux autres avatars et les services proposés à l'utilisateur.
L'architecture d'un avatar est divisé en divers modules:
- Application: Gère l'interface coté client.
- Services: Gère la liste de services currements proposés à l'utilisateur.
- Communication: Gère les protocoles de communications de l'objet.
- Interopérabilité: Gère les outils nécessaires à l'utilisation de l'objet.
- Collaboration: Gère les échanges avec les autres avatars.
- Core: Module central de l'avatar, il est lui-même divisé en divers composant.
[Mazac et al., 2015] Mazac, S., Armetta, F., and Hassas, S. (2015). Approche décentralisée pour un apprentissage constructiviste en environnement continu : application à l'intelligence ambiante. In Journées Francophones sur les Systèmes Multi-Agents (JFSMA), Rennes, France.
[Mrissa et al., 2015] Mrissa, M., Medini, L., Jamont, J.-P., Le Sommer, N., and Laplace, J. (2015). An avatar architecture for the web of things. Internet Computing, IEEE, 19(2):30-38.