résolution de problèmes par émergence Étude d’un environnement de programmation Émergente
Post on 21-Mar-2016
30 Views
Preview:
DESCRIPTION
TRANSCRIPT
Résolution de problèmespar émergence
Étude d’un Environnement de Programmation Émergente
Jean-Pierre Georgé
2 / 49
Plan général
1. Problématique2. Émergence et auto-organisation3. Théorie & technologie AMAS (Adaptive
Multi-Agent Systems)4. EPE : un Environnement de
Programmation Émergente5. Implémentation6. Expérimentations7. 2ème stratégie : exemple élémentaire8. Enseignements et perspectives
3 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Partie 1Problématique
4 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Les besoins futurs en informatique
• “[…] Without new approaches, things will only get worse. ” [Horn 01, IBM]
• Exemples : Autonomic Computing, Pervasive Computing / Ambient Intelligence
• Caractéristiques :– Grand nombre d’entités en interaction– Nombre variable d’entités en cours de fonctionnement (système
ouvert)– Contrôle centralisé impossible à mettre en œuvre– Environnement évolutif et dynamique– Tâche globale à réaliser – Systèmes non entièrement spécifiables
Néo-computation
5 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
L’idée de programmation émergente
• Programmer = assembler des instructions• But : réaliser un programme adéquat• Comment ? programmeur ou émergence• Définition : assemblage d'instructions
d'un langage de programmation via des mécanismes non explicitement informés du programme à créer
• Parcours de l'espace des programmes possibles
6 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Résolution de problèmes par émergence
• Problème quelconque• Entités quelconques• Plus haut niveau• Plus informé ?• Mêmes principes que pour la
programmation émergente• Enseignements de la programmation
émergente réapplicables
7 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Objectifs
• Programmation émergente : étude de faisabilité :– Prototype simplifié– Système multi-agent– Auto-organisation– Théorie AMAS
• Résolution de problèmes par émergence• Améliorer notre compréhension de l'émergence et
de l'utilisation de l'auto-organisation dans les systèmes artificiels, développer la théorie AMAS
8 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Partie 2Émergence et auto‑organisation
9 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Exemple introductif
Vidéo : Guy Theraulaz, Laboratoire d'Ethologie et Cognition Animale, Toulouse
10 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Émergence : définitions
• Émergence : – Niveau local / niveau global– Apparition de nouveauté– Irréductibilité– Cohérence et corrélation[Heylighen] [Lewes] [Langton] [Kim] [Goldstein]
• Systèmes artificiels : Objet : la fonction globale du système
émergeCondition : l'implémentation n'est pas
explicitement dictée par la connaissance de la fonction globale
11 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Émergence et auto-organisation
• Émergence = concept philosophique• Auto-organisation = explicitation des mécanismes
[Prigogine] [Turing] [Camazine] [Bonabeau] [Theraulaz] • Auto-organisation émergence ?• Définition : ensemble des processus au sein
d'un système, issus de mécanismes basés sur des règles locales, qui conduisent ce système à produire des structures ou des comportements spécifiques non explicitement dictés par l'extérieur du système
12 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Mécanismes d’auto-organisation : exemple
REINE
Gradient de phéromone produit par la reine
Dépôts de phéromone par les termites
Construction de termitières
13 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Auto-organisation et systèmes artificiels
• Cf. exemple des termites• Définir des mécanismes locaux• Mécanismes non informés du "comment"
réaliser la fonction globale• Feedback et adaptation
14 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Quelques techniques
• Calcul évolutionnaire• Réseaux neuronaux "dynamiques"• Algorithmes de colonies de fourmis• Optimisation par essaims particulaires• …• Notions communes : résolution de
problèmes et recherche dans des espaces d'états
15 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
SMA et auto-organisation
• Agent : – Propriétés individuelles (caractéristiques, état, compétences)– Propriétés sociales (accointances)– Connaissances (sur soi, sur autrui, sur l'environnement)– Moyens de perception, de communication, d'action, voire
d'apprentissage et de raisonnement– Notion d'autonomie
• SMA : – Composé d'agents en interaction– Confronté à un environnement– Réalisation d'une fonction– Activité collective cohérente
• Outil idéal pour l’auto-organisation[Chevrier] [Drogoul] [Hassas] [Mataric] [Mathieu] [Müller] [Odell] [Parunak]
16 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Partie 3Théorie et technologie AMAS
17 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Principe
• SMA• Auto-organisation• Mécanismes basés sur la notion de
coopération
18 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Théorie AMAS (1)
Systèmes Fonctionnellement Adéquats
Systèmes Coopératifs
Systèmes à Milieu Intérieur
Coopératif
19 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Théorie AMAS (2)
fs
fp7
fp6
fp5 fp4
fp3
fp2
fp1
Adaptation par réorganisation des parties
20 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Technologie AMAS
• Systèmes Multi-Agents capables d'auto-organisation basée sur la coopération
• Coopération : – Tout signal perçu peut être interprété sans ambiguïté– L'information reçue est utile au raisonnement de l'agent– Le raisonnement conduit à des actions utiles pour autrui ou
l'environnement• Situations Non Coopératives (SNC)• Moteur de l'auto-organisation = traitement des SNC• Traitement préventif possible : attitude coopérative
21 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
L’approche expérimentale
• Limites de l'approche théorique (démonstrations)
• Approche expérimentale (cf. sciences naturelles)
• Problèmes diversifiés traités par l'équipe• Un pas plus loin : la programmation
émergente
22 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Éléments de catégorisation de problèmes
• Nature de la réorganisation au sein du système• Nature de la fonction globale du système• Origine des SNC et nature de leur résorption• Existence ou non d'un feedback et distinction "but local /
but global"• "Distance" entre fonction des parties et fonction globale• Utilisation d'une mémoire• La question des systèmes ouverts• Nature de l'environnement de l'agent
23 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Partie 4EPE1
Note 1 : EPE : Emergent Programming Environment ou Environnement de Programmation Émergente
24 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Concept
• Instruction = agent• Programme = une organisation des agents• Exécution = interaction entre agents• Auto-organisation des agents• Application de la théorie AMAS aux agents (coopération)• Néo-programmeur : juge et influence au travers de
l'environnement• Les difficultés :
– Le feedback– Les mécanismes d'auto-organisation– La composition du système
25 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Utilité et exemple historique
• Réponse aux problèmes de néo-computation : – Problèmes incomplètement spécifiés– Système continuellement adaptatif
• Exemple historique : le problème du "deadlock" : /* Entry section for P1 */ /* Entry section for P2 */ Q1 := True; Q2 := True; TURN := 1; TURN := 2; wait while Q2 and TURN := 1; wait while Q1 and TURN := 2;
/* Exit section for P1 */ /* Exit section for P2 */ Q1 := False; Q2 := False;
26 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Simplification du problème
• Restriction à un sous-ensemble du calcul numérique
• Exemple de la factorielle• Intérêt :
– Composition simple– Simplification du feedback– Fonctionnement riche
27 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Description des agents
• Agents :– In : entrée , Out : sortie– +, x : calcul– 1 : valeur numérique 1– = : test d'égalité– F : "FirstTime" (expression du choix)
+ Entrée numérique 1
Entrée numérique 2
Sortie numérique
28 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Fonctionnement
int factorielle (n) { int res; if (n = 0) res := 1; else if (n = 1) res := 1; else { int i = 2; res := i; while (i ≠ n) { i := i+1; res : = res*i; } } return res;}
29 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Auto-organisation : 1ère stratégie
• Notion de "valeur de confiance"• Description des SNC :
– NCSNeedIn– NCSNeedOut– NCSUselessness– NCSBlockingSituation– NCSInadequateData
• Résorption des SNC et attitude coopérative
30 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Partie 5Implémentation
31 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Considérations générales
• Des threads pour rester proche des phénomènes réels
• Des agents simples mais des comportements complexes
• 200 classes, 16.000 lignes de codes
32 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Architecture
MessageListener MessageSender
ProgrammingEnvironment
AcquaintancesManager
MessageManager
SynchronizationManager
ReorganizationManager
Agent
GUI
Specific Agents
Architecture générale
Contract Messages
Data Messages
Information MessagesMessage
MessageBox
Acquaintances
NCS Messages
Agent
MessageManager
Module de communication
ReorganizationMessageProcessor
RequestManager
LinkMultiplicityManager
ReorganizationEngine
ThresholdAcquaintances
Contract Message Processors
ReorganizationManager
BestOfWorseManager
PotentialInOutAcquaintances
Agent
LastInOutAcquaintances
Specific Managers
Module de réorganisation
Information Message Processors
NCS Message Processors
33 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Le logiciel EPE
34 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Partie 6Expérimentation
35 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Résultats expérimentaux
• Capacité de calcul• Capacité de réorganisation• Vers un milieu intérieur coopératif (capacité à
produire une organisation complète fonctionnelle)• Prise en compte du feedback• Un problème fortement discontinu• Un parcours "aveugle"• Échec de la 1ère stratégie (valeurs de confiance)
36 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Vers une 2ème stratégie
• Feedback plus informé ? ("plus grand" / "plus petit")
• Stratégie par "accaparement de but"• Question : corrélation entre proximité
fonctionnelle et proximité organisationnelle ?
37 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Topologie de l'espace de recherche
Espace de Recherche Total 1012
Org. Complètes Théoriques 60.109
Org. Complètes Réelles 120.106
Org. Calculantes 9.106
Org. Fonctionnelles 3.106
38 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Résultats et conséquences
Proximité fonctionnelle pour la valeur 4 (normalisation à 10)trie par proximité organisationnelle croissante
0
2
4
6
8
10
12
1 129 257 385 513 641 769 897 1025 1153 1281 1409 1537 1665 1793 1921 2049 2177 2305 2433 2561 2689 2817
Organisations triées par proximité organisationnelle croissante
Vale
urs
prod
uite
s
Valeurs produites par les 2800 organisations sélectionnées
Moyenne des valeurs produites pour chaque proximité organisationnelle
0
20
40
60
80
100
120
1 2 3 4 5 6 7 8 9 10 11
Proximité organisationnelle
Moy
enne
des
val
eurs
pro
duite
s
Moyenne pour chaque catégorie de proximité organisationnelle
39 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Partie 7Exemple élémentaire
40 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Description et utilité
• Difficultés précédentes : observation, compréhension, traçage "pas à pas"
• Exemple élémentaire : 5 agents : +, *, 3 constantes
* A B
C + 2
10
100
20
120
* A C
B + 2
100
10
200
210
* B C
A + 10
100
2
1000
1002
+ B C
A * 10
100
2
110
220
+ A C
B * 2
100
10
102
1020
+ A B
C * 2
10
100
12
1200
OUT
OUT
OUT
OUT
OUT
OUT 2
3
1
5
6
4
41 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Auto-organisation : 2ème stratégie
• Feedback plus informé• Accaparement de but• Nouvelles NCS :
– NCSInformedInadequateData – NCSInformedNeedIn
• Objectif : satisfaire au mieux les buts individuels• Auto-organisation : la question du "comment"• Traitements :
– Valeur potentielle de sortie– Notion de préjudice– Multiplicité des liens– Algorithme du traitement coopératif du préjudice imposé
*
B
C
A
+ 10
100
2
1000
1010 OUT
42 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Résultats expérimentaux
• Adéquation fonctionnelle atteinte efficacement (parcours de moins d'une centaine d'organisations sur les 7.776 possibles)
• Capacité du système à produire "plus grand" / "plus petit"
• Un premier pas de "scaling up" (un agent addition supplémentaire, 800.000 organisations possibles, parcours de moins de 200 organisations)
43 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Partie 8Enseignements et perspectives
44 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Les difficultés
• Le piège de la simplicité des agents• Une classe particulière de problèmes• La difficulté d'implémentation
45 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
EPE et la théorie AMAS
• AMAS : – Détection – Résorption de SNC– Attitude coopérative
• EPE : – Manque d'information pour la résorption– Problème fortement discontinu– Distance but local / but global– Traitement du préjudice
46 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Perspectives
• Enrichissement de la théorie• Un langage de programmation complet• Traiter des problèmes de néo-computation
réels• Développement d'outils et de méthodes
47 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Vers un langage complet
• AgentProg (noté "Prog") • AgentSequence (noté ";") • AgentIfThenElse (noté "IfThenElse") • AgentWhile (noté "While") • AgentVariable (noté "x", où x est le nom de la
variable) • AgentAssignment (noté ":=") • AgentReturn (noté "return") • AgentMinus (noté "-")
factorielle (x) { if (x = 0) r := 1; else { r := x; x := x-1; while (x > 0) { r := r*x; x := x-1; } } return r;}
48 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Résolution de problèmes par émergence
• Programmation émergente difficile• EPE : enseignements pour aborder
d'autres problèmes à plus haut niveau, de façon plus informée
• Exploration de mécanismes d'auto‑organisation
• La question du "comment"• Parcours d'un espace de recherche par
auto-organisation
49 / 49
Problématique
Émergence et auto-organisation
Théorie AMAS
EPE
Implémentation
Expérimentations
Exemple élémentaire
Enseignements et perspectives
Conclusion
• Étude de faisabilité du concept positive• Très loin d'un langage complet• Exploration du concept :
– Connaissances sur la programmation émergente– Connaissances sur l'émergence et l'auto-organisation– Développement de la théorie AMAS
• La voie de l'émergence
top related