Site Tools


Hotfix release available: 2024-02-06b "Kaos". upgrade now! [55.2] (what's this?)
Hotfix release available: 2024-02-06a "Kaos". upgrade now! [55.1] (what's this?)
New release available: 2024-02-06 "Kaos". upgrade now! [55] (what's this?)
Hotfix release available: 2023-04-04b "Jack Jackrum". upgrade now! [54.2] (what's this?)
Hotfix release available: 2023-04-04a "Jack Jackrum". upgrade now! [54.1] (what's this?)
New release available: 2023-04-04 "Jack Jackrum". upgrade now! [54] (what's this?)
Hotfix release available: 2022-07-31b "Igor". upgrade now! [53.1] (what's this?)
Hotfix release available: 2022-07-31a "Igor". upgrade now! [53] (what's this?)
New release available: 2022-07-31 "Igor". upgrade now! [52.2] (what's this?)
New release candidate 2 available: rc2022-06-26 "Igor". upgrade now! [52.1] (what's this?)
New release candidate available: 2022-06-26 "Igor". upgrade now! [52] (what's this?)
Hotfix release available: 2020-07-29a "Hogfather". upgrade now! [51.4] (what's this?)
scenario-lum

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
scenario-lum [2025/04/19 21:52]
3.16.47.72 old revision restored (2025/02/28 18:57)
scenario-lum [2025/04/19 21:55] (current)
3.134.113.26 old revision restored (2025/02/27 18:42)
Line 1: Line 1:
 +====== Modification de luminosité dans une pièce: Découverte de pattern sensorimoteur par deux objets ======
  
-Dans le point de vue précédent, l'accent a été mis sur le fonctionnement +Ce scénario reprend le principe de //flux d'instances d'évènements// entre 
-globale du modèle. De ce point de vue, au contraire, nous allons nous +les différents avatars définit dans [[scenario-nocaptor | une réflexion 
-concentré, pas à pas, sur les suites logiques d'évènements pouvant arriver +sur la création de pattern pour un objet sans capteur]].
-à un système d'apprentissage.+
  
-=== Variables d'entrées et Découpe ===+===== Introduction =====
  
-Reprennons à partir de la découpe d'une variable d'entrée,  +==== Les objets ====
-par exemple V<sub>2:2</sub>.+
  
-{{wiki:V2_2.png}}+Dans une même pièce se trouve : 
 +  * Un système d'éclairage (lampe), avec interrupteur et capteur de luminosité. 
 +  * Une fenêtre équipée d'un store électrique, avec un interrupteur permettant de faire monter ou descendre plus ou moins le store (pas de capteur de luminosité).
  
-== Couple Découper - Similarité (D-S) ==+==== Les variables ====
  
-L'apprentissage de la découpe d'une variable +Au départ de ce scénario, les avatars n'ont pas encore identifiés de pattern  
-d'entrée est implémenté par un couple D-S. Leurs +récurrents, il n'existe donc pas encore de variables internes (ou de **flux  
-intéractionsdont nous allons voir le fonctionnement, +d'instances**)uniquement des variables d'entrées continues correspondant aux 
-permet de connaître la "pertinence" du découpage +capteurs et actionneurs des objets.
-d'une variable en particulier. Ils font varier leurs +
-paramètres en explorant l'espace de marquage vu précédemment.+
  
-== Découpe ==+  * Pour le système d'éclairage les variables d'entrées sont : 
 +    - l'état de l'interrupteur du système d'éclairage, que nous nommeront V<sub>1:1</sub>
 +    - l'intensité lumineuse de la pièce, nommée V<sub>1:2</sub>.
  
-L'agent Découper d'un couple D-S associé à la variable V<sub>2:2</sub> +  * Pour la fenêtre équipée d'un store électrique : 
-a pour paramètre un Δt qui est la taille de la fenêtre de découpe.+    l'état de l'actionneur de store, nommée V<sub>2:1</sub> (-1 : descendre le store, 1 : monter le store, 0 : sinon). 
 +    - Pourcentage d'ouverture du store, nommée V<sub>2:2</sub> (allant de 0, le store est fermé, et 1 le store est ouvert).
  
-{{wiki:decoupe.png}}+===== Scénario =====
  
-L'agent Découper va alors parcourir la variable d'entrée en faisant +L'action se déroule dans le bureau de notre utilisateur, Billy, 
-"glisser" sa fenêtre de découpe le long des variations. La fenètre +et ce durant plusieurs semaines
-peut être simplement glissante, ou bien glissante et suivant les  +
-variations de la variable d'entrée, comme sur l'image ci-dessus.+
  
-La portion découpée par l'agent Découper est alors représenté sous +==== Point de vue de l'utilisateur ====
-la forme d'un histogramme.+
  
-== Similarité et Différenciation ==+Billy, notre utilisateur, se lève et se rend dans son bureau. Faisant encore 
 +nuit, Billy allume la lumière, il est 6h.
  
-Les histogrammes produit par l'agent Découper sont alors récupéré +Vers 8h Billy sait qu'il fait jour dehors, il éteint donc la lumière et ouvre 
-par l'agent Similarité qui lui associé+en grand les stores électrique de sa fenêtre.
  
-Celui ci compare les nouvelles instances d'évènement avec ceux qu'il +Ceux-ci reste ouvert jusqu'à ce que, vers 19h, Billy se rende compte 
-a stocké précédemment, ou plutôt avec l'histogramme représentant la moyenne +que le soleil se couche. Billy allume donc la lumière de son bureau, 
-de chaque groupe d'instances similaires. Cette "moyenne" peut être considéré +puis ferme les stores.
-comme un pré-concept d'évènement.+
  
-La fonction de comparaison utilisée pour différencier les instances découpées +Billy reste ensuite dans son bureau jusqu'à 22h, il éteint alors la lumière 
-en une fonction d'intersection entre les deux histogrammes représentant les +avant de partir.
-instances.+
  
-{{wiki:similarite.png}}+(oui, Billy travaille beaucoup plus qu'il ne le devrait).
  
-Ainsi l'agent Similarité du couple D-S "rangera" les nouvelles instances +==== Point de vue du système d'objets connectés ====
-d'évènements avec celles qui lui sont le plus similaire, modifiant par la +
-même la moyenne de ce groupe d'instance. Si aucun groupe n'est trouvé pour +
-une instance, alors un nouveau lui correspondant sera créé.+
  
-n.b: le paramètre de l'agent Similarité serait sont seuil d'acceptation +En se basant sur les actions de Billy, décrites précédemment,  
-de similaritémais cela reste à confirmer+nous pouvons supposer que les variables d'entrée du système 
 +d'objets connectés varieraientplus ou moins, comme présenté  
 +sur les graphiques ci-dessous.
  
-== Feedback et sélection de concept ==+{{wiki:rplot_all_scenario_lum.png}}
  
-Avant que la moyenne d'un groupe d'instance soit considérée comme un réel +Le but étant de voir comment le système 
-concept d'évènement, l'agent Similarité d'un couple D-S va calculer l'intérêt +d'éclairage et le store pourraient arriver 
-de chaque pré-concept, et marquer le maximum de ces intérêts dans l'espace de +à faire la relation entre la levée du store 
-marquage des couple D-S.+et l'augmentation de luminosité, via leurs échanges.
  
-Le feedback d'intérêt d'un pré-concept d'évènement est calculé à partir de la  +{{wiki:rplot_v12_v22_relation.png}}
-spécificité de cet évènement, c'est à dire si l'évènement "sort du lot", et  +
-de la récurence de cet évènement. Pour faire simple, parmis tous les évènements +
-"rare", celui qui aura le plus fort intérêt sera celui qui arrive le plus souvent, +
-donc potentiellement le moins dû au hasard.+
  
-<code> 
  
-    TODO: equation with MathJax+==== Point de vue du système d'éclairage (Orienté description du modèle) ====
  
-</code>+Si nous prenons le point de vue du système d'éclairage, 
 +celui-ci sera capable de découvrir, dans un premier temps, 
 +des motifs liés à ses propres capteurs et actionneurs (puisque 
 +aucun //flux// n'est disponible pour le moment). 
  
-C'est lorsqu'un couple D-S de type //Exploiteur// se positionnera, dans l'espace +Puis dans un second temps de faire le lien entre ses motifs et 
-de marquage, sur les paramètres de découpe de V<sub>2:2</sub> que la création de +ceux découvert par les autres objets de la société.
-Flux d'instance se fera pour les concept ayant la plus haute spécificité.+
  
-== Conception de flux d'instances ==+Nous allons voir plus en détail dans cette partie le fonctionnement 
 +du système d'apprentissage de l'avatar du système d'éclairage.
  
-Comme dit précédemment, les couples D-S vont extraire +=== Découverte d'évènements ===
-des //concepts d'évènements// et créer des //flux d'instances d'évènements//+
-Ces flux pourraient correspondre à des flux RSS (ou tout autre outils permettant +
-le partage d'un "fil d'évènements"), ils seront ainsi mis à jour part l'agent +
-Similarité du couple associé, à chaque fois que l'agent Découper extrait une +
-nouvelle //instance d'évènement// correspondant au //concept d'évènement// +
-du flux.+
  
-Supposons qu'à partir de V<sub>2:2</sub> deux concepts d'évènements soient +La découverte de motifs récurrents à partir des entrées continues 
-créés.+que sont V<sub>1:1</sub> et V<sub>1:2</sub> est fait les couples 
 +formés par des agents Découper et des agents Similarité paramétrés 
 +de diverses manières.
  
-TODO : image+== Découpe ==
  
-Il y aura donc de flux de créé par le couple D-S affecté à cette variable +Comme dit précédemment, le système d'apprentissage doit commencer 
-d'entrée. Ces flux étant internes du point de vue du store et externe +par essayer d'extraire des informations liés à ses variables d'entrées 
-du point de vue du système d'éclairage.+avant d'essayer de les relier à un quelconque évènement "extérieur"  
 +(de plus, à cette étape du scénario aucun flux n'est disponible pour 
 +l'autre objet).
  
-<code> +Ce travail de découpe est effectué par les agents Découper du système 
-Exemple de description d'un flux en JSON-LD :+d'apprentissage. Ceux-ci, suivant divers paramètres, vont "déplacer" 
 +une fenêtre de découpe le long de la variable. Ces fragments de 
 +variables sont décrit à l'aide d'histogrammes par les agents Découper.
  
 +{{wiki:decoupe.png}}
  
-+Ces fragments de variables sont évaluer via un feedback //d'intérêt//, 
-  "@context": "http://www.w3.org/ns/activitystreams",+aidant ainsi à la sélection des paramètres de découpe par l'agent Découper.
  
-  "@type": "Activity",+== Création de Flux ==
  
-  "published": "2016-01-25T12:34:56Z"  +La découverte d'évènements récurrents se fait à l'aide d'un couple 
 +d'agent Découper et Similarité. L'agent Découper faisant varier 
 +ses paramètres de découpe et l'agent Similarité faisant varier 
 +ses paramètres de différenciation, les deux en fonction de la 
 +variable d'entrée à laquelle ils sont associés.
  
-  "author": { +La qualité des paramètres, évaluée à partir d'un feedback //d'intérêt//, 
-    "@type": "Object",+est sauvegardé dans un **espace de marquage** à trois dimensions 
 +(la variable sélectionnéles paramètres de l'agent Découper et 
 +les paramètres de l'agent Similarité).
  
-    "@id": "URI de l'objet / URI du flux" +Cet espace de marque sert à garder, dans un espace commun de recherche 
-  }+de paramètres à tous les couples d'agents, la trace de l'utilisation de 
 +certains paramètres et leurs qualités.
  
-  "orderedItems":+{{wiki:hemis_marquage.png}}
-    { +
-      "@type""Event"+
  
-        ... +Une fois qu'un couple, ou plutôt l'agent Similarité d'un couple d'agent, 
-    }+aura déterminé qu'un //concept d'évènement// est assez récurrent il créera 
-    { +un //flux d'instances d'évènements// dans lequel il fera passer les //instances// 
-      "@type": "Event"+correspondants au //concept d'évènement// du fluxet auxquels pourra se connecter 
 +les agents Association du système d'apprentissage, mais aussi les agents  
 +Association des autres systèmes d'apprentissage. 
  
-       ... +{{wiki:flux_creation.png}}
-    } +
-  ] +
-  +
-</code>+
  
-n.b: Le fonctionnement de l'API de notification et de partage de flux n'est pour 
-l'instant pas clairement définie. 
  
-=== Flux d'instances et Association ===+Pour connaitre la similarité, ou plutôt le pourcentage de similarité, entre deux  
 +instances d'évènement, l'agent Similarité utilise une fonction d'intersection des 
 +histogrammes représentants les instances. 
 + 
 +{{wiki:similarite.png}} 
 + 
 +=== Partage d'évènements === 
 + 
 +A peu près même moment que le système d'apprentissage de l'éclairage 
 +créé ses //flux d'instances//, des //flux d'instances externes// font 
 +leur apparitions. 
 + 
 +Une notation possible est présentée ci-dessous. Noté **F**, un flux est 
 +identifié par l'ip de l'objet fournissant le flux et l'id de ce flux. 
 +De la même manière sont notés **e** les //concepts d'évènements// associés 
 +à un flux, il sont donc identifiés de la même manière que les flux, avec 
 +id et ip. 
 + 
 +{{wiki:flux_notation.png}} 
 + 
 +Pour simplifier la notation pour le scénario, l'ip du système d'éclairage 
 +sera 1 et l'ip du store électrique sera 2. L'ip 0 est considéré comme un 
 +"localhost", se sont les flux identifiés comme personnels par l'objet, 
 +le fait de donner un ip 0 pour identifié le "moi" est totalement 
 +arbitraire, un flux pourrait garder l'ip de l'objet apprenant, cependant 
 +les agents du système d'apprentissage, en particulier les agents Découper, 
 +devraient être capables de différencier les flux personnels et les flux  
 +extérieurs. 
 + 
 +Ainsi le système d'apprentissage voit apparaître, à peu près au même moment, 
 +des flux d'instances //interne// (avec un ip 0) et des flux d'instances 
 +//externes// (avec un ip différent de 0). 
 + 
 +Les couples d'agents formés par des agents Association et Similarité vont 
 +alors rechercher différentes Association de concepts d'évènements possibles 
 +et pertinents. 
 + 
 +{{wiki:flux_association.png}} 
 + 
 +Les Associations vont être faites en prenant prioritairement en références 
 +les flux internes du système d'apprentissage. Cet aspect "égoïste" de 
 +l'apprentissage est nécessaire pour éviter une redondance de l'apprentissage 
 +dans tous les avatars de la société, et permet aussi une spécialisation 
 +de ces mêmes avatars. En effet, les avatars d'objets possédant peu de  
 +capteurs et d'actionneurs seront plus enclin a tenter d'associer des évènements 
 +provenant de flux externes; à l'inverse des avatars d'objets possédant beaucoup 
 +de capteurs et d'actionneurs seront plus enclin à se concentrer uniquement sur 
 +le découpage de leur variables d'entrées et sur la découverte de concepts d'évènements 
 +"intéressants"
 + 
 +==== Point de vue du store électrique (Orienté Scénario) ==== 
 + 
 +Dans le point de vue précédent, l'accent a été mis sur le fonctionnement 
 +globale du modèle. De ce point de vue, au contraire, nous allons nous 
 +concentré sur les suites logiques d'évènements pouvant arriver à un système 
 +d'apprentissage. 
 + 
 +=== Conception de flux d'instances === 
 + 
 +Comme dit précédemment, les couples Découper Similarité vont extraire 
 +des //concepts d'évènements// et créer des //flux d'instances d'évènements//
 +Ces flux pourraient correspondre à des flux RSS (ou tout autre outils permettant 
 +le partage d'un "fil d'évènements"), ils seront ainsi mis à jour part l'agent 
 +Similarité du couple associé, à chaque fois que l'agent Découper extrait une 
 +nouvelle //instance d'évènement// correspondant au //concept d'évènement// 
 +du flux.
  
-Reprennons à partir du moment où tous les flux (internes et externes)  +    <?xml version="1.0" encoding="UTF-8"?> 
-de tous les objets de la société soient créés et accessible par le store.+    <rss version="2.0"> 
 +        <channel> 
 +            <title>Mon site</title> 
 +            <description>Ceci est un exemple de flux RSS 2.0</description> 
 +            <lastBuildDate>Sat, 07 Sep 2002 00:00:01 GMT</lastBuildDate> 
 +            <link>http://www.example.org</link> 
 +            <item> 
 +                <title>Actualité N°1</title> 
 +                <description>Ceci est ma première actualité</description> 
 +                <pubDate>Sat, 07 Sep 2002 00:00:01 GMT</pubDate> 
 +                <link>http://www.example.org/actu1</link> 
 +            </item> 
 +            <item> 
 +                <title>Actualité N°2</title> 
 +                <description>Ceci est ma seconde actualité</description> 
 +                <pubDate>Sat, 07 Sep 2002 00:00:01 GMT</pubDate> 
 +                <link>http://www.example.org/actu2</link> 
 +            </item> 
 +        </channel> 
 +    </rss>
  
-===== Problèmes =====+===== Problèmes =====
  
-  * Supposons que dans cette pièce nous rajoutons un chauffage Ã©lectrique connecté, comment faire en sorte que les Ã©changes entre les objets se "spécialisent" ?+  * Supposons que dans cette pièce nous rajoutons un chauffage électrique connecté, comment faire en sorte que les échanges entre les objets se "spécialisent" ?
  
-Les Ã©vènements proposé par les flux d'instances du chauffage sont en effet peu utile pour le +Les évènements proposé par les flux d'instances du chauffage sont en effet peu utile pour le 
-système d'éclairage (peut Ãªtre un peu moins pour le store), +système d'éclairage (peut être un peu moins pour le store), 
-le but ici serait qu'au flux externes d'un système, voir Ã  tout l'objet proposant ces flux,  +le but ici serait qu'au flux externes d'un système, voir à tout l'objet proposant ces flux,  
-soit associé un feedback "d'utilité". Puisque les systèmes +soit associé un feedback "d'utilité". Puisque les systèmes 
-d'apprentissage cherche prioritairement des associations avec pour référence leurs +d'apprentissage cherche prioritairement des associations avec pour référence leurs 
-flux d'instances internes, nous pouvons facilement l'imaginer Ã©valuer l'utilité+flux d'instances internes, nous pouvons facilement l'imaginer évaluer l'utilité
 d'un flux d'instances externes lui ayant permis ou non de trouver des motifs d'un flux d'instances externes lui ayant permis ou non de trouver des motifs
-avec pour références ses concepts personnels.+avec pour références ses concepts personnels.
  
-  * Supposons maintenant que dans une autre pièce un système d'éclairage identique au notre soit installé, comment permettre que ce nouveau système d'éclairage apprenne plus vite avec l'aide de notre système d'éclairage ?+  * Supposons maintenant que dans une autre pièce un système d'éclairage identique au notre soit installé, comment permettre que ce nouveau système d'éclairage apprenne plus vite avec l'aide de notre système d'éclairage ?
  
-  * En plus du feedback d'intérêt, il est censé il y avoir un feedback prédictif, comment un motif pourrait passer un "mode prédictif" s'il prend en compte des flux externes ?+  * En plus du feedback d'intérêt, il est censé il y avoir un feedback prédictif, comment un motif pourrait passer un "mode prédictif" s'il prend en compte des flux externes ?
  
-  * Comment les avatars pourrait arriver, de manière émergenteà un consensus concernant un motif, pour que celui soit "commun" Ã  la société ou Ã  un groupe ?+  * Comment les avatars pourrait arriver, de manière émergenteà un consensus concernant un motif, pour que celui soit "commun" à la société ou à un groupe ?
  
  
scenario-lum.1745092331.txt.gz · Last modified: 2025/04/19 21:52 by 3.16.47.72