Rsolution de problmes par mergence tude dun Environnement
Résolution de problèmes par émergence Étude d’un Environnement de Programmation Émergente Jean-Pierre Georgé / 49
Plan général 1. Problématique 2. Émergence et auto-organisation 3. Théorie & technologie AMAS (Adaptive Multi-Agent Systems) 4. EPE : un Environnement de Programmation Émergente 5. Implémentation 6. Expérimentations 7. 2ème stratégie : exemple élémentaire 8. Enseignements et perspectives 2
Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 3 Partie 1 Problématique
Les besoins futurs en informatique Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 4 • “[…] 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
L’idée de programmation émergente Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 5 • 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
Résolution de problèmes par émergence Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 6 • • • 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
Objectifs Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 7 • 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'autoorganisation dans les systèmes artificiels, développer la théorie AMAS
Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 8 Partie 2 Émergence et auto‑organisation
Exemple introductif Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 9 Vidéo : Guy Theraulaz, Laboratoire d'Ethologie et Cognition Animale, Toulouse
Émergence : définitions • Émergence : EPE – Niveau local / niveau global – Apparition de nouveauté – Irréductibilité – Cohérence et corrélation Implémentation [Heylighen] [Lewes] [Langton] [Kim] [Goldstein] Problématique Émergence et autoorganisation Théorie AMAS Expérimentatio ns Exemple élémentaire Enseignements et perspectives 10 • Systèmes artificiels : Objet : la fonction globale du système émerge Condition : l'implémentation n'est pas explicitement dictée par la
Émergence et auto-organisation Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 11 • É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
Mécanismes d’auto-organisation : exemple Gradient de phéromone produit par la reine Problématique Émergence et autoorganisation Théorie AMAS REINE EPE Implémentation Expérimentatio ns Dépôts de phéromone par les termites Exemple élémentaire Enseignements et perspectives 12 Construction de termitières
Auto-organisation et systèmes artificiels Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 13 • 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
Quelques techniques Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 14 • • 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
SMA et auto-organisation • Agent : Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 15 – 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]
Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 16 Partie 3 Théorie et technologie AMAS
Principe Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 17 • SMA • Auto-organisation • Mécanismes basés sur la notion de coopération
Théorie AMAS (1) Problématique Émergence et autoorganisation Systèmes Fonctionnellement Adéquats Théorie AMAS EPE Systèmes Coopératifs Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 18 Systèmes à Milieu Intérieur Coopératif
Théorie AMAS (2) Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 19 Adaptation par réorganisation des parties
Technologie AMAS Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 20 • Systèmes Multi-Agents capables d'autoorganisation 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
L’approche expérimentale Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 21 • 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
Éléments de catégorisation de problèmes Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 22 • • 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
Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Partie 4 EPE 1 Expérimentatio ns Exemple élémentaire Enseignements et perspectives 23 Note 1 : EPE : Emergent Programming Environment ou Environnement de Programmation Émergente
Concept Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 24 • • • 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
Utilité et exemple historique Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 25 • Réponse aux problèmes de néocomputation : – Problèmes incomplètement spécifiés – Système continuellement adaptatif • Exemple historique : le problème du "deadlock" : /* Entry section for P 1 */ Q 1 : = True; TURN : = 1; wait while Q 2 and TURN : = 1; /* Entry section for P 2 */ Q 2 : = True; TURN : = 2; wait while Q 1 and TURN : = 2; /* Exit section for P 1 */ Q 1 : = False; /* Exit section for P 2 */ Q 2 : = False;
Simplification du problème Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 26 • Restriction à un sous-ensemble du calcul numérique • Exemple de la factorielle • Intérêt : – Composition simple – Simplification du feedback – Fonctionnement riche
Description des agents • Agents : Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 27 – – – In : entrée , Out : sortie +, x : calcul 1 : valeur numérique 1 = : test d'égalité F : "First. Time" (expression du choix)
Fonctionnement Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 28 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; }
Auto-organisation : 1ère stratégie Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 29 • Notion de "valeur de confiance" • Description des SNC : – NCSNeed. In – NCSNeed. Out – NCSUselessness – NCSBlocking. Situation – NCSInadequate. Data • Résorption des SNC et attitude coopérative
Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 30 Partie 5 Implémentation
Considérations générales Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 31 • 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
Architecture Programming. Environment Problématique Message. Listener Émergence et autoorganisation Agent Message. Sender Acquaintances. Manager Théorie AMAS Message. Manager EPE Implémentation Specific Agents Synchronization. Manager Expérimentatio ns Exemple élémentaire Enseignements et perspectives 32 Reorganization. Manager Architecture générale GUI
Le logiciel EPE Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 33
Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 34 Partie 6 Expérimentation
Résultats expérimentaux Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 35 • 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)
Vers une 2ème stratégie Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 36 • Feedback plus informé ? ("plus grand" / "plus petit") • Stratégie par "accaparement de but" • Question : corrélation entre proximité fonctionnelle et proximité organisationnelle ?
Topologie de l'espace de recherche Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 37
Résultats et conséquences Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 38 Moyenne chaque proximité organisationnelle Valeurs pour produites parcatégorie les 2800 de organisations sélectionnées
Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 39 Partie 7 Exemple élémentaire
Description et utilité Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 40 • Difficultés précédentes : observation, compréhension, traçage "pas à pas" • Exemple élémentaire : 5 agents : +, *, 3 constantes
Auto-organisation : 2ème stratégie Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 41 • Feedback plus informé • Accaparement de but • Nouvelles NCS : – NCSInformed. Inadequate. Data – NCSInformed. Need. In • 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é
Résultats expérimentaux Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 42 • 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)
Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 43 Partie 8 Enseignements et perspectives
Les difficultés Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 44 • Le piège de la simplicité des agents • Une classe particulière de problèmes • La difficulté d'implémentation
EPE et la théorie AMAS • AMAS : Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 45 – 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
Perspectives Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 46 • Enrichissement de la théorie • Un langage de programmation complet • Traiter des problèmes de néocomputation réels • Développement d'outils et de méthodes
Vers un langage complet Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 47 • • • Agent. Prog factorielle (x) { (noté "Prog") if (x = 0) Agent. Sequence (noté "; ") r : = 1; else { Agent. If. Then. Else (noté "If. Then. Else") r : = x; Agent. While x : = x-1; (noté "While") while (x > 0) { Agent. Variable (noté "x", où x est le nom r : = r*x; de la variable) x : = x-1; } • Agent. Assignment (noté ": =") } return r; • Agent. Return (noté "return") } • Agent. Minus (noté "-")
Résolution de problèmes par émergence Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 48 • 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
Conclusion Problématique Émergence et autoorganisation Théorie AMAS EPE Implémentation Expérimentatio ns Exemple élémentaire Enseignements et perspectives 49 • É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'autoorganisation – Développement de la théorie AMAS • La voie de l'émergence
- Slides: 49