Résolution de problèmes par émergence Étude d’un Environnement de Programmation Émergente Jean-Pierre Georgé.

Slides:



Advertisements
Présentations similaires
Le Nom L’adjectif Le verbe Objectif: Orthogram
Advertisements

ORTHOGRAM PM 3 ou 4 Ecrire: « a » ou « à » Référentiel page 6
LES NOMBRES PREMIERS ET COMPOSÉS
Ma surprise du Zoo.
Qualité du Premier Billot. 2 3 Défauts reliés à labattage.
1. Résumé 2 Présentation du créateur 3 Présentation du projet 4.
Vocabulaire 6.2 Français II Bon voyage ! 1.
Licence pro MPCQ : Cours
Distance inter-locuteur
Karima Boudaoud, Charles McCathieNevile
Un défi pour les SMA : explorer l'émergence Jean-Pierre Georgé (Davy Capera, Marie-Pierre Gleizes, Pierre Glize) Equipe SMAC - IRIT - UPS - Toulouse
Classe : …………… Nom : …………………………………… Date : ………………..
Les numéros
ACTIVITES Les fractions (10).
Les identités remarquables
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod 1 Architectures Orientées Services Composants de Service Exemple pratique de développement.
Cours n°2M2. IST-IE (S. Sidhom) UE 303 Promo. M2 IST-IE 2005/06 Conception dun système d'information multimédia Architecture trois-tiers : PHP/MySQL &
Etude de la dynamique des groupes et des objets intermédiaires de conception, en s’appuyant sur la dynamique de l’émergence des état problèmes Reza MOVAHEDKHAH,
Approche par composant : Un cadre pour l’ingénierie de la commande
Journées franciliennes 2006 Moussa ELKIHEL (LAAS-CNRS;UPS Toulouse )
Systèmes Experts implémentation en Prolog
1 7 Langues niveaux débutant à avancé. 2 Allemand.
Mr: Lamloum Med LES NOMBRES PREMIERS ET COMPOSÉS Mr: Lamloum Med.
SERABEC Simulation sauvetage aérien avec un Hercule C130. Départ de St-Honoré le 4 octobre Durée de vol 3 heures. Premier vol en Hercule pour les.
1 5 octobre 2011 / paw Présentation du 7 octobre 2011.
Interagir avec un objet mixte Propriétés physiques et numériques Céline Coutrix, Laurence Nigay Équipe Ingénierie de lInteraction Homme-Machine (IIHM)
1 Cours numéro 3 Graphes et informatique Définitions Exemple de modélisation Utilisation de ce document strictement réservée aux étudiants de l IFSIC.
44 Contrôle du déroulement du programme. 4-2 Objectifs A la fin de ce cours, vous serez capables de : Utiliser les constructions de prise de décision.
Application des algorithmes génétiques
le profil UML en temps réel MARTE
Vuibert Systèmes dinformation et management des organisations 6 e édition R. Reix – B. Fallery – M. Kalika – F. Rowe Chapitre 1 : La notion de système.
Cours de physique générale I Ph 11
Sémantique axiomatique
1 Guide de lenseignant-concepteur Vincent Riff 27 mai 2003.
GRAM 1 CE2 Je sais transformer une phrase affirmative en phrase négative.
PM18 MONTAGE DU BLINDAGE AUTOUR DE LA QRL F. DELSAUX - 25 JAN 2005
Le Concours de Conaissance Francais I novembre 2012.
Détection de co-évolution de gènes Master 2 : Informatique à Finalité Professionnelle et Recherche Unifiée (IFPRU) Parcours Ingénierie de lIntelligence.
Titre : Implémentation des éléments finis sous Matlab
1 Journée de regroupement des correspondants "Egalité et genre" - 21 novembre 2011 Rectorat de Rouen - SAIO - CD-HD Résultats scolaires, appréciations.
1 Conduite du changement LA CONDUITE DU CHANGEMENT.
Projet poker 1/56. Introduction Présentation de léquipe Cadre du projet Enjeux Choix du sujet 2.
LES NOMBRES PREMIERS ET COMPOSÉS
2 TP avec l ’aide d ’un modeleur 3D :
1 INETOP
1 Délégation FSA 2008: Cycle de formations prédépart __ Quest-ce que la mondialisation ?
Calculs et écritures fractionnaires
RACINES CARREES Définition Développer avec la distributivité Produit 1
Représentation des systèmes dynamiques dans l’espace d’état
Systèmes mécaniques et électriques
Représentation des systèmes dynamiques dans l’espace d’état
Représentation des systèmes dynamiques dans l’espace d’état
DUMP GAUCHE INTERFERENCES AVEC BOITIERS IFS D.G. – Le – 1/56.
Tournoi de Flyball Bouin-Plumoison 2008 Tournoi de Flyball
2. Théorie de la consommation (demande)
Titre : Implémentation des éléments finis en Matlab
1 INETOP
Équipe 2626 Octobre 2011 Jean Lavoie ing. M.Sc.A.
ASI 3 Méthodes numériques pour l’ingénieur
Mise en forme en Mathématiques
Vocabulaire 7.1 Français II Bon voyage ! 1.
Traitement de différentes préoccupations Le 28 octobre et 4 novembre 2010.
1/65 微距摄影 美丽的微距摄影 Encore une belle leçon de Macrophotographies venant du Soleil Levant Louis.
Nom:____________ Prénom: ___________
Biologie générale 5ème année
LES PILES ET FILES.
Discussion autour du référentiel
Les Chiffres Prêts?
Introduction à SolidWorks
Transcription de la présentation:

Résolution de problèmes par émergence Étude d’un Environnement de Programmation Émergente Jean-Pierre Georgé

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

Partie 1 Problématique

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

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

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

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

Émergence et auto‑organisation Partie 2 Émergence et auto‑organisation

Exemple introductif Vidéo : Guy Theraulaz, Laboratoire d'Ethologie et Cognition Animale, Toulouse

É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

É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

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

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

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

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]

Théorie et technologie AMAS Partie 3 Théorie et technologie AMAS

Principe SMA Auto-organisation Mécanismes basés sur la notion de coopération

Théorie AMAS (1) Systèmes Fonctionnellement Adéquats Systèmes Coopératifs Systèmes à Milieu Intérieur Coopératif

Théorie AMAS (2) Adaptation par réorganisation des parties

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

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

É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

Partie 4 EPE1 Note 1 : EPE : Emergent Programming Environment ou Environnement de Programmation Émergente

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

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;

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

Description des agents In : entrée , Out : sortie +, x : calcul 1 : valeur numérique 1 = : test d'égalité F : "FirstTime" (expression du choix)

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;

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

Partie 5 Implémentation

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

Architecture ProgrammingEnvironment AcquaintancesManager MessageListener MessageSender ProgrammingEnvironment AcquaintancesManager MessageManager SynchronizationManager ReorganizationManager Agent GUI Specific Agents Architecture générale

Le logiciel EPE

Partie 6 Expérimentation

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)

    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 ?

Topologie de l'espace de recherche

Résultats et conséquences Moyenne pour chaque catégorie de proximité organisationnelle Valeurs produites par les 2800 organisations sélectionnées

Partie 7 Exemple élémentaire

Description et utilité 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 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é

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)

Enseignements et perspectives Partie 8 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

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

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

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;

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

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