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 :
[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.