Télécharger la présentation
Publié parLucrece Maury Modifié depuis plus de 11 années
1
Résolution de problèmes par émergence Étude d’un Environnement de Programmation Émergente
Jean-Pierre Georgé
2
Plan général Problématique Émergence et auto-organisation
Théorie & technologie AMAS (Adaptive Multi-Agent Systems) EPE : un Environnement de Programmation Émergente Implémentation Expérimentations 2ème stratégie : exemple élémentaire Enseignements et perspectives
3
Partie 1 Problématique
4
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
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
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
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
Émergence et auto‑organisation
Partie 2 Émergence et auto‑organisation
9
Exemple introductif Vidéo : Guy Theraulaz, Laboratoire d'Ethologie et Cognition Animale, Toulouse
10
Émergence : définitions
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 émerge Condition : l'implémentation n'est pas explicitement dictée par la connaissance de la fonction globale
11
É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
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
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
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
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
Théorie et technologie AMAS
Partie 3 Théorie et technologie AMAS
17
Principe SMA Auto-organisation
Mécanismes basés sur la notion de coopération
18
Théorie AMAS (1) Systèmes Fonctionnellement Adéquats
Systèmes Coopératifs Systèmes à Milieu Intérieur Coopératif
19
Théorie AMAS (2) Adaptation par réorganisation des parties
20
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
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
É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
Partie 4 EPE1 Note 1 : EPE : Emergent Programming Environment ou Environnement de Programmation Émergente
24
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
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
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
Description des agents
In : entrée , Out : sortie +, x : calcul 1 : valeur numérique 1 = : test d'égalité F : "FirstTime" (expression du choix)
28
Fonctionnement int factorielle (n) { int res; if (n = 0) res := 1;
else if (n = 1) else { int i = 2; res := i; while (i ≠ n) { i := i+1; res : = res*i; } return res;
29
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
Partie 5 Implémentation
31
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, lignes de codes
32
Architecture ProgrammingEnvironment AcquaintancesManager
MessageListener MessageSender ProgrammingEnvironment AcquaintancesManager MessageManager SynchronizationManager ReorganizationManager Agent GUI Specific Agents Architecture générale
33
Le logiciel EPE
34
Partie 6 Expérimentation
35
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
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
Topologie de l'espace de recherche
38
Résultats et conséquences
Moyenne pour chaque catégorie de proximité organisationnelle Valeurs produites par les 2800 organisations sélectionnées
39
Partie 7 Exemple élémentaire
40
Description et utilité
Difficultés précédentes : observation, compréhension, traçage "pas à pas" Exemple élémentaire : 5 agents : +, *, 3 constantes
41
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é
42
Résultats expérimentaux
Adéquation fonctionnelle atteinte efficacement (parcours de moins d'une centaine d'organisations sur les possibles) Capacité du système à produire "plus grand" / "plus petit" Un premier pas de "scaling up" (un agent addition supplémentaire, organisations possibles, parcours de moins de 200 organisations)
43
Enseignements et perspectives
Partie 8 Enseignements et perspectives
44
Les difficultés Le piège de la simplicité des agents
Une classe particulière de problèmes La difficulté d'implémentation
45
EPE et la théorie AMAS AMAS : EPE : 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
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
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; } return r;
48
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
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
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.