This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
scenario-lum [2025/06/08 04:28] 20.171.207.76 old revision restored (2025/04/20 07:42) |
scenario-lum [2025/06/17 04:26] (current) 216.73.216.118 old revision restored (2025/06/08 05:15) |
||
---|---|---|---|
Line 12: | Line 12: | ||
* Un système d' | * Un système d' | ||
* Une fenêtre équipée d'un store électrique, | * Une fenêtre équipée d'un store électrique, | ||
- | + | | |
- | ==== Les variables ==== | + | ==== La routine |
- | + | ||
- | Au départ | + | |
- | récurrents, | + | |
- | d' | + | |
- | capteurs et actionneurs des objets. | + | |
- | + | ||
- | * Pour le système d' | + | |
- | - l' | + | |
- | - l' | + | |
- | + | ||
- | * Pour la fenêtre équipée d'un store électrique : | + | |
- | - l' | + | |
- | - Pourcentage d' | + | |
- | + | ||
- | ===== Scénario ===== | + | |
- | + | ||
- | L' | + | |
- | et ce durant plusieurs semaines. | + | |
- | + | ||
- | ==== Point de vue de l' | + | |
Billy, notre utilisateur, | Billy, notre utilisateur, | ||
Line 50: | Line 30: | ||
(oui, Billy travaille beaucoup plus qu'il ne le devrait). | (oui, Billy travaille beaucoup plus qu'il ne le devrait). | ||
- | ==== Point de vue du système d'objets connectés ==== | + | L'action se déroule dans le bureau de notre utilisateur, |
+ | et ce durant plusieurs semaines. | ||
+ | ==== Les variables d' | ||
+ | |||
+ | Au départ de ce scénario, les avatars n'ont pas encore identifiés de pattern | ||
+ | récurrents, | ||
+ | d' | ||
+ | capteurs et actionneurs des objets. | ||
+ | |||
+ | * Pour le système d' | ||
+ | - l' | ||
+ | - l' | ||
+ | |||
+ | * Pour la fenêtre équipée d'un store électrique : | ||
+ | - l' | ||
+ | - Pourcentage d' | ||
+ | | ||
En se basant sur les actions de Billy, décrites précédemment, | En se basant sur les actions de Billy, décrites précédemment, | ||
nous pouvons supposer que les variables d' | nous pouvons supposer que les variables d' | ||
Line 66: | Line 62: | ||
{{wiki: | {{wiki: | ||
+ | ===== Système d' | ||
- | ==== Point de vue du système d' | + | Nous allons voir dans cette partie le fonctionnement |
+ | du système d' | ||
+ | vue de l' | ||
- | Si nous prenons le point de vue du système d'éclairage, | + | Le système d'apprentissage est basé sur un système multi agents |
- | celui-ci sera capable de découvrir, dans un premier temps, | + | qui arriveront, par leurs interactions, d' |
- | des motifs | + | pertinents |
- | aucun //flux// n'est disponible | + | |
- | Puis dans un second temps de faire le lien entre ses motifs et | + | De plus il utilise |
- | ceux découvert par les autres | + | d' |
+ | autres | ||
- | Nous allons voir plus en détail dans cette partie le fonctionnement | + | ==== Couples Producteur-Similarité ==== |
- | du système d' | + | |
- | === Découverte | + | Le système multi agents d' |
+ | des agents différencié en trois rôles : | ||
+ | * Les agents // | ||
+ | * Les agents **Découper**, | ||
+ | * Les agents **Association**, | ||
+ | * Les agents **Similarité**, | ||
+ | |||
+ | Ainsi les agents du système d' | ||
+ | toujours en **Couples Producteur-Similarité**. | ||
- | La découverte | + | === Couple Découper - Similarité (D-S) === |
- | que sont V< | + | |
- | formés | + | L' |
- | de diverses manières. | + | d' |
+ | interactions, | ||
+ | permet de connaître la " | ||
+ | d'une variable en particulier. Ils font varier leurs | ||
+ | paramètres en explorant l' | ||
== Découpe == | == Découpe == | ||
- | Comme dit précédemment, | + | L'agent Découper |
- | par essayer | + | a pour paramètre |
- | avant d' | + | |
- | (de plus, à cette étape du scénario aucun flux n'est disponible pour | + | |
- | l' | + | |
- | + | ||
- | Ce travail | + | |
- | d' | + | |
- | une fenêtre de découpe | + | |
- | variables sont décrit à l'aide d' | + | |
{{wiki: | {{wiki: | ||
- | Ces fragments | + | L' |
- | aidant ainsi à la sélection | + | " |
+ | peut être simplement glissante, ou bien glissante et suivant les | ||
+ | variations de la variable d' | ||
+ | |||
+ | La portion découpée par l' | ||
+ | la forme d'un histogramme. | ||
+ | |||
+ | == Similarité == | ||
+ | |||
+ | Les histogrammes produit par l' | ||
+ | par l' | ||
+ | |||
+ | Celui ci compare les nouvelles instances d' | ||
+ | a stocké précédemment, | ||
+ | de chaque groupe d' | ||
+ | comme un pré-concept d' | ||
+ | |||
+ | La fonction de comparaison utilisée pour différencier les instances découpées | ||
+ | en une fonction d' | ||
+ | instances. | ||
+ | |||
+ | {{wiki: | ||
+ | |||
+ | Ainsi l' | ||
+ | d' | ||
+ | même la moyenne de ce groupe d' | ||
+ | une instance, alors un nouveau lui correspondant sera créé. | ||
+ | |||
+ | Les paramètres des agents Similarité est leur seuil de similarité, | ||
+ | à dire le seuil qui leur fait dire si oui ou non deux instances sont similaires. | ||
+ | |||
+ | === Couple Association Similarité (A-S) === | ||
+ | |||
+ | Déterminer l' | ||
+ | la fonction des couples A-S. Les couples A-S de type | ||
+ | // | ||
+ | paramètres testés dans l' | ||
+ | |||
+ | == Association == | ||
+ | |||
+ | L' | ||
+ | le flux (interne ou externe) au quel il est affecté dans | ||
+ | l' | ||
+ | étant les autres flux auquel il tente d' | ||
+ | de référence. | ||
+ | |||
+ | Un agent Association créé donc des motifs basés sur une | ||
+ | association d'un évènement **e1** et d'un évènement **e2**, | ||
+ | puis créé des instances de ce motif à chaque fois que des | ||
+ | instances de e1 et e2 sont captées, toujours une de chaque, | ||
+ | une puis l' | ||
+ | négatif). | ||
+ | |||
+ | {{wiki: | ||
+ | |||
+ | == Similarité == | ||
+ | |||
+ | Tout comme pour le couple D-S précédemment présenté, l' | ||
+ | Similarité va comparer et trier les différentes instances de | ||
+ | l' | ||
+ | |||
+ | La similarité entre deux associations est calculé par rapport | ||
+ | à la différence entre les Δt de chaque associations. L' | ||
+ | Similarité d'un couple A-S " | ||
+ | par l' | ||
+ | |||
+ | < | ||
+ | TODO : image/ | ||
+ | </ | ||
+ | |||
+ | === L' | ||
+ | |||
+ | A partir des éléments de la section précédente, | ||
+ | agents et les couples d' | ||
+ | des paramètres de ces agents comme l' | ||
+ | en trois dimensions** par les couples d' | ||
+ | |||
+ | {{wiki: | ||
+ | |||
+ | Ces trois dimensions représentent : | ||
+ | - Les variables | ||
+ | - Les paramètres possibles de l' | ||
+ | - Les paramètres possibles de l' | ||
+ | |||
+ | Cet **espace en trois dimensions** sert de " | ||
+ | couples du même type qui le **marque** pour se " | ||
+ | paramètres potentiellement intéressants pour une variable | ||
+ | ou un flux, à la manière d'un dépôt de phéromones. Il existe | ||
+ | donc un **espace de marquage** par type de couple (voir plus | ||
+ | si certains agents implémente plusieurs fonctions différentes, | ||
+ | ex. deux espaces pour les couple D-S si les agents Découper | ||
+ | ont deux fonctions de découpe possibles). | ||
+ | |||
+ | Pour les **espaces de marquage**, les couples d' | ||
+ | différencient en deux types : les **Explorateurs** et les | ||
+ | **Exploiteurs**. | ||
+ | |||
+ | == Les explorateurs == | ||
+ | |||
+ | Comme leurs nom l' | ||
+ | le plus dans l' | ||
+ | rapidement quels sont les paramètres les plus pertinents | ||
+ | pour une variable donnée. | ||
+ | |||
+ | Les // | ||
+ | fortement marquée (ou aléatoire si aucun marquage), puis se | ||
+ | déplacent en " | ||
+ | |||
+ | Alors ils testent les paramètres | ||
+ | l' | ||
+ | |||
+ | == Les exploiteurs == | ||
+ | |||
+ | Ce type de couple se fixe sur les emplacements les plus | ||
+ | marqués, peuvent se déplacer légèrement autour et se | ||
+ | " | ||
+ | |||
+ | Les // | ||
+ | l' | ||
+ | de prédiction, | ||
+ | un emplacement. | ||
+ | |||
+ | === Feedback d' | ||
+ | |||
+ | Dans la section précédente nous avons parlé du marquage | ||
+ | d'un intérêt dans **l' | ||
+ | calculé à partir d'un **feedback | ||
+ | les agents Similarité pour classer les instances d' | ||
+ | en groupe, chaque groupe ayant un intérêt, c'est l' | ||
+ | maximum qui est marqué dans l' | ||
+ | correspondant à la variable et aux paramètres des agents. | ||
+ | |||
+ | < | ||
+ | L' | ||
+ | D-S et A-S. | ||
+ | </note> | ||
+ | |||
+ | == L' | ||
+ | |||
+ | Une découpe de variable, ou une association de flux, est évalué sur | ||
+ | sa capacité à découvrir des motifs pertinents pour soi, sans prendre | ||
+ | en compte autrui. Cet intérêt sert essentiellement au marquage de | ||
+ | n' | ||
+ | comme externes. | ||
+ | |||
+ | **L' | ||
+ | le **poids** et la **précision** des évènements évaluées. | ||
+ | |||
+ | La **spécificité** d'un évènement est calculé à partir de la différence | ||
+ | entre l' | ||
+ | spécificité permet ainsi d' | ||
+ | |||
+ | Le **poids** d'un évènement correspond à son nombre d' | ||
+ | par rapport au nombre d' | ||
+ | |||
+ | La **précision** d'un évènement, | ||
+ | à partir de l' | ||
+ | évènement. | ||
+ | |||
+ | == L' | ||
+ | |||
+ | Pour nuancer le poids de l' | ||
+ | global d'un évènement, | ||
+ | des motifs appris par les différents systèmes, un **intérêt | ||
+ | interpersonnel** est calculé. | ||
+ | |||
+ | Cet **intérêt interpersonnel** prend en essentiellement l' | ||
+ | social de l' | ||
+ | fort pour les motifs étant plus pertinents d' | ||
+ | c'est à dire du système (le //moi//) vers les autres systèmes (// | ||
+ | |||
+ | L' | ||
+ | flux/ | ||
+ | d'évènement évalué et du **nombre de flux/ | ||
+ | la création d'une instance en fonction du type de couple (1 pour les | ||
+ | couple D-S et 2 pour les couples A-S). | ||
+ | |||
+ | Ainsi cet intérêt | ||
+ | que de flux/variables internes, puis aux évènements associant un flux interne | ||
+ | et externe, et enfin les associations de deux flux externes. | ||
+ | |||
+ | <note tip> | ||
+ | Un autre facteur pouvant être pris en compte est la " | ||
+ | lors d'une association entre un flux interne et un flux externe. | ||
+ | |||
+ | Pour éviter qu'un même motif soit appris par plusieurs systèmes échangeant | ||
+ | entre eux. | ||
+ | |||
+ | En partant du prédicat qu'il y aura potentiellement de la latence entre | ||
+ | l' | ||
+ | cette instance par un autre système, nous pouvons dire qu'il serait | ||
+ | plus pertinent pour un système de rechercher des motifs qu'il " | ||
+ | dont il peut avertir les autres. | ||
+ | |||
+ | remarque : prendre en compte ce facteur permettrait certes de réduire | ||
+ | la redondance mais risque de renforcer l' | ||
+ | cependant ce types de motifs sont surement plus facilement indentifiable | ||
+ | que des redondances de motifs. | ||
+ | </note> | ||
+ | |||
+ | == Calcul du feedback == | ||
+ | |||
+ | Le feedback d' | ||
+ | de son intérêt intrapersonnel **Ί< | ||
+ | **Ί< | ||
+ | |||
+ | Pour le calcul de **Ί< | ||
+ | sa précision **p**, son poids **π**. | ||
+ | |||
+ | |||
+ | < | ||
+ | Ί(e) = Ία(e)^δ / Ίε(e)^β | ||
+ | |||
+ | avec : | ||
+ | |||
+ | Ία(e) = s(e) * p(e) * π(e) | ||
+ | |||
+ | et | ||
+ | |||
+ | Ίε(e) = (Nb_Var_Necessary(e) + 1) - Nb_Internal_Var_Used(e) | ||
+ | |||
+ | |||
+ | remarque: les coefficients δ et β ne sont présent que pour donner | ||
+ | plus de " | ||
+ | </ | ||
+ | |||
+ | == Feedback Prédictif == | ||
+ | |||
+ | Lorsqu' | ||
+ | passe un mode " | ||
+ | motif pour prédire l' | ||
+ | d'un évènement e1. | ||
+ | |||
+ | Ce feedback prédictif est un score **s** caculé à partir d'une précision | ||
+ | **acc**, qui est calculé à partir d'une tolérance **tol** (qui est l' | ||
+ | type de la durée entre e1 et e2 lors des prédictions réussies) et de la | ||
+ | fréquence d' | ||
+ | et d'une confiance **rel**, qui est le rapport de prédictions juste sur | ||
+ | le nombre de prédiction tentés. | ||
+ | |||
+ | < | ||
+ | s = acc * rel | ||
+ | |||
+ | avec : | ||
+ | |||
+ | rel = nb(prédictions) / nb(e1) | ||
+ | |||
+ | et | ||
+ | |||
+ | acc = 1 - ( tol * freq(e2) ) | ||
+ | |||
+ | </ | ||
+ | |||
+ | Le maximum des scores est ajouté à l' | ||
+ | couple A-S pour la variable et les paramètres | ||
+ | plus de poids. | ||
+ | |||
+ | |||
+ | <note tip> | ||
+ | Pour l' | ||
+ | n'est pas exclu d' | ||
+ | |||
+ | Une possibilité serait d' | ||
+ | pour évaluer un classifieur. | ||
+ | |||
+ | Le score serait calculé à partir : | ||
+ | |||
+ | * d'une **sensibilité** qui est le rapport des **vrais positifs** ou VP (les prédictions juste) sur toute les prédictions dite comme vrais (toutes les fois où l'on a supposé l' | ||
+ | |||
+ | * et d'une **spécificité** qui est le rapport des **vrais négatifs** ou VN (les prédictions dite fausses et vraiment fausses) sur toutes les fois où l'on a dit que e2 n' | ||
+ | |||
+ | |||
+ | Si nous voulons utiliser ces formules il faudra donner la possibilité | ||
+ | au couple A-S prédicteur de dire Oui ou Non à la question : un évènement | ||
+ | e2 arrivera-t-il après cet évènement e1 ? | ||
+ | |||
+ | Ceci pourrait être fait à partir d'un de l' | ||
+ | instances, | ||
+ | l'apparition d'un évènement e1, alors il n' | ||
+ | </ | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ====== A remettre en forme ====== | ||
+ | |||
== Création de Flux == | == Création de Flux == | ||
Line 193: | Line 484: | ||
=== Variables d' | === Variables d' | ||
- | Reprennons | + | Reprenons |
par exemple V< | par exemple V< | ||
Line 202: | Line 493: | ||
L' | L' | ||
d' | d' | ||
- | intéractions, dont nous allons voir le fonctionnement, | + | interactions, dont nous allons voir le fonctionnement, |
permet de connaître la " | permet de connaître la " | ||
d'une variable en particulier. Ils font varier leurs | d'une variable en particulier. Ils font varier leurs | ||
Line 215: | Line 506: | ||
L' | L' | ||
- | " | + | " |
peut être simplement glissante, ou bien glissante et suivant les | peut être simplement glissante, ou bien glissante et suivant les | ||
variations de la variable d' | variations de la variable d' | ||
Line 243: | Line 534: | ||
une instance, alors un nouveau lui correspondant sera créé. | une instance, alors un nouveau lui correspondant sera créé. | ||
- | n.b: le paramètre de l' | + | < |
+ | le paramètre de l' | ||
de similarité, | de similarité, | ||
+ | </ | ||
== Feedback et sélection de concept == | == Feedback et sélection de concept == | ||
Line 255: | Line 548: | ||
Le feedback d' | Le feedback d' | ||
spécificité de cet évènement, | spécificité de cet évènement, | ||
- | de la récurence | + | de la redondance |
" | " | ||
donc potentiellement le moins dû au hasard. | donc potentiellement le moins dû au hasard. | ||
Line 261: | Line 554: | ||
< | < | ||
- | | + | |
</ | </ | ||
Line 270: | Line 563: | ||
== Conception de flux d' | == Conception de flux d' | ||
+ | |||
+ | <note important> | ||
+ | Le fonctionnement de l'API de flux n'est, pour le moment, pas clairement | ||
+ | définie. | ||
+ | </ | ||
Comme dit précédemment, | Comme dit précédemment, | ||
Line 281: | Line 579: | ||
Supposons qu'à partir de V< | Supposons qu'à partir de V< | ||
créés. | créés. | ||
- | |||
- | {{wiki: | ||
Il y aura donc deux flux de créé par le couple D-S affecté à cette variable | Il y aura donc deux flux de créé par le couple D-S affecté à cette variable | ||
d' | d' | ||
du point de vue du système d' | du point de vue du système d' | ||
+ | |||
+ | {{wiki: | ||
< | < | ||
Line 319: | Line 617: | ||
} | } | ||
</ | </ | ||
- | |||
- | <note important> | ||
- | Le fonctionnement de l'API de notification et de partage de flux n'est pour | ||
- | l' | ||
- | </ | ||
=== Flux d' | === Flux d' | ||
- | Reprennons | + | Reprenons |
de tous les objets de la société soient créés et accessibles par le store. | de tous les objets de la société soient créés et accessibles par le store. | ||
Line 345: | Line 638: | ||
* V1:2 diminuant progressivement (sur plusieurs heures). | * V1:2 diminuant progressivement (sur plusieurs heures). | ||
- | ===== Problèmes ===== | + | == Couple Association Similarité (A-S) == |
- | * Supposons que dans cette pièce nous rajoutons | + | Déterminer l' |
+ | la fonction des couples A-S. Les couples A-S de type | ||
+ | // | ||
+ | paramètres testés dans l' | ||
- | Les évènements proposé par les flux d'instances du chauffage sont en effet peu utile pour le | + | == Association == |
- | système | + | |
- | le but ici serait | + | L' |
- | soit associé | + | le flux (interne ou externe) au quel il est affecté dans |
- | d'apprentissage cherche prioritairement | + | l' |
- | flux d'instances internes, nous pouvons | + | étant |
- | d'un flux d'instances externes lui ayant permis ou non de trouver des motifs | + | de référence. |
- | avec pour références | + | |
+ | == Feedback d' | ||
+ | |||
+ | Comme pour le couple D-S, l' | ||
+ | et classe les instances de l' | ||
+ | L' | ||
+ | par le délai entre la référence et le flux associé, délai | ||
+ | pouvant bien entendu | ||
+ | |||
+ | Un feedback d' | ||
+ | découvertes par le couple A-S. Ce feedback est composé | ||
+ | de deux intérêts : | ||
+ | |||
+ | * L' | ||
+ | |||
+ | L' | ||
+ | pertinent | ||
+ | la spécificité et la précision des instances évalués. | ||
+ | |||
+ | * L' | ||
+ | |||
+ | L' | ||
+ | pertinent pour autrui, c'est à dire qu'il plus pertinent que se soit | ||
+ | le store qui prévienne les autres avatars de l' | ||
+ | |||
+ | Ainsi cet intérêt est calculé à partir du nombre de flux interne utilisé | ||
+ | dans l' | ||
+ | cherche en priorité les motifs liés à ses capteurs, sans pour autant laisser | ||
+ | une probabilité nulle de trouver des motifs à partir de flux externe. | ||
+ | |||
+ | <note tip> | ||
+ | L' | ||
+ | qu'un objet possède des capteurs et des actionneurs potentiellement liés | ||
+ | (ex. capteur de luminosité + ampoule, chauffage + thermomètre...). | ||
+ | |||
+ | Le principe étant que les avatars créeront en priorité des associations | ||
+ | intrapersonnelles, | ||
+ | des concepts de plus en plus complexe, associer des motifs externes avec | ||
+ | des motifs internes sera plus pertinent que d' | ||
+ | entre eux. | ||
+ | |||
+ | </ | ||
+ | |||
+ | L' | ||
+ | |||
+ | < | ||
+ | intérêt = (intérêt égoïste) ^ alpha * (intérêt altruiste) ^ beta | ||
+ | |||
+ | <=> intérêt = ( ( spécificité + précision ) ^ alpha ) * ( ( nb_flux_interne + 1 ) ^ beta ) | ||
+ | |||
+ | |||
+ | Les coefficients alpha et beta sont ici pour donner plus de poids à l'une ou l' | ||
+ | par défaut nous pouvons les considérer comme égal à 1. | ||
+ | |||
+ | </ | ||
+ | |||
+ | <note tip> | ||
+ | Autre possibilité : | ||
+ | |||
+ | intérêt = ((spécificité + précision) ^ alpha) / ( ( 3 - nb_flux_interne ) ^ beta ) | ||
+ | |||
+ | Le but étant que le rapport intra/ | ||
+ | égoïste, plus important si plus de flux interne sont mis en jeux dans | ||
+ | l' | ||
+ | </ | ||
+ | |||
+ | == Prédiction et Partage == | ||
+ | |||
+ | A partir de ce feedback d'intérêt, marqué par les couples A-S de type // | ||
+ | les couples A-S vont pouvoir tenter | ||
+ | prédictive | ||
+ | |||
+ | De nouveaux flux sont alors créé pour les évènements association les plus pertinents, | ||
+ | donc en priorité ceux dont l' | ||
+ | évènement externe et un évènement interne, et enfin ceux avec deux évènements externes. | ||
+ | |||
+ | <note tip> | ||
+ | Donner un poids différents | ||
+ | flux interne -> flux externe, permettrais | ||
+ | avec un seul flux interne. | ||
+ | |||
+ | Cependant, la création de motif " | ||
+ | ces motifs " | ||
+ | dans un apprentissage décentralisé. | ||
+ | </ | ||
+ | |||
+ | ==== Spécialisation des avatars ==== | ||
+ | |||
+ | * Les objets possédant plus ou moins de capteurs et d'actionneurs, | ||
+ | |||
+ | * Une fois qu'un avatar aura " | ||
+ | |||
+ | ===== Problèmes ===== | ||
* Supposons maintenant que dans une autre pièce un système d' | * Supposons maintenant que dans une autre pièce un système d' | ||
Line 362: | Line 750: | ||
* En plus du feedback d' | * En plus du feedback d' | ||
- | * Comment les avatars pourrait arriver, de manière émergente, à un consensus concernant un motif, pour que celui soit " | + | * Comment les avatars pourrait arriver, de manière émergente, à un consensus concernant un motif, pour que celui-ci soit " |
+ | * Comment à un niveau plus haut de l' |