Comment « contrôler - iro.umontreal.capift6802/2006/pdf/01_agents.pdf1 Agents et systèmes...

13
1 Agents et systèmes multiagents ©Laurent Magnin 1998-2006 ©Laurent Magnin 1998-2006, tous droits réservés / 2 Plan Introduction L’intelligence artificielle distribuée Une nouvelle forme de simulation Un nouveau paradigme de programmation Les agents sur Internet Définition d’un « agent » Technologies agents et SMA Conclusion ©Laurent Magnin 1998-2006, tous droits réservés / 3 Introduction Introduction L’intelligence artificielle distribuée Une nouvelle forme de simulation Un nouveau paradigme de programmation Les agents sur Internet Définition d’un « agent » Technologies agents et SMA Conclusion ©Laurent Magnin 1998-2006, tous droits réservés / 4 Comment « contrôler »... 300 km Comporte des millions d’entités Peut résister à une destruction très importante Peut explorer de nouveaux territoires Résiste à des agressions extérieures ©Laurent Magnin 1998-2006, tous droits réservés / 5 Et pourtant cette structure existe... Elle existe sur terre depuis des millions d’années La réponse ? Une fourmilière Le secret ? La décentralisation et la parallélisation…sous forme d’une multitude d’entités assez frustres Fourmis = agent Fourmilière = système multiagent ©Laurent Magnin 1998-2006, tous droits réservés / 6 L’intelligence artificielle distribuée Introduction L’intelligence artificielle distribuée Un nouvelle forme de simulation Un nouveau paradigme de programmation Les agents sur Internet Définition d’un « agent » Technologies agents et SMA Conclusion

Transcript of Comment « contrôler - iro.umontreal.capift6802/2006/pdf/01_agents.pdf1 Agents et systèmes...

1

Agents et systèmes multiagents

©Laurent Magnin 1998-2006

©Laurent Magnin 1998-2006, tous droits réservés / 2

Plan

• Introduction

• L’intelligence artificielle distribuée

• Une nouvelle forme de simulation

• Un nouveau paradigme de programmation

• Les agents sur Internet

• Définition d’un « agent »

• Technologies agents et SMA

• Conclusion

©Laurent Magnin 1998-2006, tous droits réservés / 3

Introduction

• Introduction

• L’intelligence artificielle distribuée

• Une nouvelle forme de simulation

• Un nouveau paradigme de programmation

• Les agents sur Internet

• Définition d’un « agent »

• Technologies agents et SMA

• Conclusion

©Laurent Magnin 1998-2006, tous droits réservés / 4

Comment « contrôler »...

300 km

Comporte des millions d’entités

Peut résister à une destruction très importante

Peut explorer de nouveaux territoires

Résiste à des agressions extérieures

©Laurent Magnin 1998-2006, tous droits réservés / 5

Et pourtant cette structure existe...

• Elle existe sur terre depuis des millions d’années

• La réponse ? Une fourmilière

• Le secret ? La décentralisation et laparallélisation…sous forme d’une multituded’entités assez frustres

• Fourmis = agent

• Fourmilière = système multiagent

©Laurent Magnin 1998-2006, tous droits réservés / 6

L’intelligence artificielle distribuée

• Introduction

• L’intelligence artificielle distribuée

• Un nouvelle forme de simulation

• Un nouveau paradigme de programmation

• Les agents sur Internet

• Définition d’un « agent »

• Technologies agents et SMA

• Conclusion

2

©Laurent Magnin 1998-2006, tous droits réservés / 7

Intelligence artificielle classique

• Machine unique

• Intelligence isolée (non située dans unenvironnement)

• Reproduction des fonctions cognitives « nobles »(jeu d’échec, psychologie, etc.)

• Test de Turing

• Programmation sous forme de « systèmes experts »

• La machine est vue comme un « penseur » dans satour d’ivoire

©Laurent Magnin 1998-2006, tous droits réservés / 8

Limites de l’IA classique / individu seul

• Les grandes réalisations sont l’œuvre de groupes, desociétés humaines• Monuments : pyramides, temples, cathédrales

• Automobiles, avions

• Ordinateurs, réseaux

• « On » a marché sur la Lune

• La connaissance scientifique

• Union des forces• Puissance de calcul

• Étendue des connaissances

©Laurent Magnin 1998-2006, tous droits réservés / 9

Limites de l’IA classique / individu isolé

• Les capacités cognitives d’un individu résultent deson environnement social• Éducation, apprentissage

• Interactions pour faire apparaître de nouvelles idées

• Règle de l’apprentissage « essais / erreurs »

• Un enfant isolé devient un enfant « sauvage »

©Laurent Magnin 1998-2006, tous droits réservés / 10

Intelligence artificielle distribuée (IAD)

• L’intelligence n’est pas liée à une entité unique etisolée

• Cette intelligence est produite par un ensembled’entités

• Elle « émerge » des interactions entre cet ensembled’« agents »

• Ces agents forment un « système multiagent »

• Métaphore des organisations (sociales et animales)

©Laurent Magnin 1998-2006, tous droits réservés / 11

Pourquoi IA « distribuée » ?

• Les entités physiques sont distinctes (contrôleaérien)

• Les problèmes sont spatialement distribués(supervision de réseau)

• Les problèmes sont fonctionnellement distribués(pilotage d’un bateau)

• Les experts sont multiples (construction d’un avion)

• On manque de méthodes globales de résolutionrapide (satisfaction de contraintes)

©Laurent Magnin 1998-2006, tous droits réservés / 12

À la confluence de plusieurs disciplines

• L’IAD et les SMA s’inspirent et nourissent denombreuses disciplines :• Économie• Philosophie• Théorie des jeux• Logique• Éthologie• Sciences sociales• Informatique

• C’est une force et une faiblesse (multiplicité desvisions du domaine)

3

©Laurent Magnin 1998-2006, tous droits réservés / 13

• Résolution de problèmes

• Taquin et éco-résolution

• Nouvelle forme d’intelligence

• Contrôle aérien

• Les robots « hockeyeurs »

IAD : exemples

©Laurent Magnin 1998-2006, tous droits réservés / 14

Taquin : le principe

1 4 2

8 7 6

5 3

1 2 3

4 5 6

7 8

©Laurent Magnin 1998-2006, tous droits réservés / 15

Taquin et algorithmique

Soit C le chemin (liste d'états) menant d'un état E à l'état initial. Une fonctionheuristique possible est : h(C) = longueur(C) + d(E).

Soit I l'état initial. F une file d'attente de chemins avec priorité h, et D un dictionnairedes états déjà visités. On suppose que I est différent de l'état final.

1.Rentrer le chemin réduit à I dans F (avec h(I)) et dans D 2.Fini := faux 3.Tant que (non Fini) et (F non vide) faire a.Sortir un chemin C de F de priorité minimale; soit E le premier élément de C b.Pour tous les successeurs S de E et tant que (non Fini) faire i.Si S est l'état final alors Fini := Vrai et Solution := inverse(S.C) ii.Sinon, si S n'est pas dans D alors rentrer S.C dans F (avec h(S)) et S dans D

• Algorithme « classique » (www-ensimag.imag.fr/eleves/Remi.Zara/taquin/algo.html)

©Laurent Magnin 1998-2006, tous droits réservés / 16

Éco-résolution : les principes

Chaque éco-agent est défini de la manière qui suit :

• Un but représenté par un autre éco-agent avec lequel il entretient une relation desatisfaction ;• Un état interne. Trois états sont possibles : satisfait, en recherche de satisfaction,en recherche de fuite ;• Des actions élémentaires, qui dépendent du domaine d'application. Ce sont desactions de satisfaction ou de fuite ;• Une fonction de perception des agents gêneurs (i.e. les agents qui empêchentl'agent courant d'être satisfait ou de fuir) ;• Une liste de dépendances (i.e. les agents dont l'agent courant est le but, et sesdépendances ne pourront être satisfaits que si l'agent courant se trouve lui-mêmesatisfait).

• www.iutc3.unicaen.fr/~stincs/mi6/td/iad-td2

©Laurent Magnin 1998-2006, tous droits réservés / 17

Éco-résolution : l’algorithme général #1

Le comportement élémentaire d'un éco-agent est indépendant du domained'application et répond aux principes suivants :

La volonté d'être satisfait. Un éco-agent cherche à atteindre un état où il estsatisfait. S'il ne peut pas y arriver, parce qu'empêché par des gêneurs, il les agressepour les faire fuir.

procédure essaiSatisfaction(x : ecoAgent) = si le but de x est non satisfait alors pour tous les agents y qui gênent x Fuire(y, x, but(x)) dès qu'il n'y a plus de gêneurs réaliserSatisfaction(x)

réaliserSatisfaction est dépendant du domaine d'application et se charge d'exécuterl'action dans laquelle l'agent vérifie sa condition de satisfaction. Cette action estpossible car les gêneurs sont partis.

©Laurent Magnin 1998-2006, tous droits réservés / 18

Éco-résolution : l’algorithme général #2

L'obligation de fuir. Lorsqu'un éco-agent est agressé, il doit obligatoirement fuir.Il doit chercher une situation où la situation c passée en paramètre de la procédurefuir soit satisfaite.

// x fuit y avec la contrainte c procédure Fuire(x : ecoAgent, y: ecoAgent, c: ecoAgent) si x était satisfait, il devient insatisfait soit p = trouverPlacePourFuir(x, y, c) si p est nil alors ``pas de fuite possible'', sinon pour tous les agents z qui gênent x dans sa fuite vers p Fuire(z, x, p) dès qu'il n'y a plus de gêneurs pour fuir, alors réaliserFuite(x, p)

4

©Laurent Magnin 1998-2006, tous droits réservés / 19

1 2 3

4 5 6

7 8

1 2 3

4 6

7 5 8

Taquin et éco-résolution

1 2 3

4 6 8

7 5

1 2 3

4 5 6

7 8

©Laurent Magnin 1998-2006, tous droits réservés / 20

Taquin et éco-résolution : avantages

• La forme du taquin peut être différente

• Le jeu peut être perturbé en cours d’exécution(déplacement forcé d’une pièce)

• Optimisation (?)

©Laurent Magnin 1998-2006, tous droits réservés / 21

Le contrôle aérien

• Classiquement : contrôle centralisé au sol

• Approche IAD : chaque avion est autonome

• Recherche effectuée à l’Onera & Eurocontrol(www.eurocontrol.fr/projects/freer/)

• Simple calcul vectoriel pour chaque avion

• Démo : 256 avions convergeant tous vers le même point !

©Laurent Magnin 1998-2006, tous droits réservés / 22

Les robots « hockeyeurs »

©Laurent Magnin 1998-2006, tous droits réservés / 23

Les robots « hockeyeurs »

• Robotique mobile collective• Jeux réels

• Patrouilles de drones

• ...

• Champ d’expérimentation en IAD• Coopération entre joueurs

• Détection des intentions des autres

• Fusion de données (visuelles)

• ...

©Laurent Magnin 1998-2006, tous droits réservés / 24

Une nouvelle forme de simulation

• Introduction

• L’intelligence artificielle distribuée

• Une nouvelle forme de simulation

• Un nouveau paradigme de programmation

• Les agents sur Internet

• Définition d’un « agent »

• Technologies agents et SMA

• Conclusion

5

©Laurent Magnin 1998-2006, tous droits réservés / 25

• Description sous forme d’équations différentielles

• Difficulté à formuler des phénomènes tropcomplexes et / ou faisant intervenir une distributionspatiale

• Certaines équations impossibles à résoudre

Simulation : description mathématique

©Laurent Magnin 1998-2006, tous droits réservés / 26

Simulation événementielle

• Plusieurs processus générant des événements :

Détermination des futurs événements

Déclenchement du (ou des) prochain(s) événement(s)

• Exemple : Simula

• Répartition spatiale ? Unicité des individus ?

©Laurent Magnin 1998-2006, tous droits réservés / 27

Simulation « multiagent »

• Le système à simuler est décomposé en entitésautonomes : les agents

• La simulation d’un agent consiste à le faire agir enfonction de ses perceptions

• La simulation globale du système « émerge » desinteractions produites par la simulation enparallèle des agents le composant

©Laurent Magnin 1998-2006, tous droits réservés / 28

Exemple : Simulation d’une fourmilière

©Laurent Magnin 1998-2006, tous droits réservés / 29

Exemple : Simulations géologiques

• GEOphysics & Multi-Agents Systems (GEOMAS)• Simulation multiagent de volcans (Piton de la Fournaise)

• http://www.univ-reunion.fr/~mas2/geomas/geomas.html

• Simulation de tremblements de terre• www.univ-reunion.fr/~mas2/earthquakes/earthquakes.html

• Écoulement de « lentilles » d’eau sur un terrainchaotique

©Laurent Magnin 1998-2006, tous droits réservés / 30

• Introduction

• L’intelligence artificielle distribuée

• Une nouvelle forme de simulation

• Un nouveau paradigme de programmation

• Les agents sur Internet

• Définition d’un « agent »

• Technologies agents et SMA

• Conclusion

Un nouveau paradigme de programmation

6

©Laurent Magnin 1998-2006, tous droits réservés / 31

Évolution de la programmation

• Interrupteurs binaires

• Langage machine

• Assembleur

• Co-routines

• Données structurées

• Procédures et fonctions

• Objets : données + procédures (+ héritage… )

• Agentswww.lis.uiuc.edu/~gasser/AgentsAndObjects-07.html

©Laurent Magnin 1998-2006, tous droits réservés / 32

Agents : objets + processus

• L’ajout d’un processus à un objet lui permetd’avoir un contrôle sur lui-même

• Il est alors possible d’imaginer des messages« asynchrones »• Boîte aux lettres + relève régulière de cette BAL

• Meilleures structuration et « encapsulation »• Un agent réunit toutes les compétences nécessaires

• Il est « transparent » vis-à-vis de l’extérieur

• Proactivité et actions persistantes

©Laurent Magnin 1998-2006, tous droits réservés / 33

Exemple : Interrogation d’une BD

• Objet• Messages « fixes »

• Si le serveur ne répond pas, gestion obligatoire de l’erreurretournée

• Agent• Si la sémantique n’est pas respectée, certes pas de réponse,

mais pas d’erreur d’exécution

• Possibilité pour l’agent d’interroger le serveur (par exemple,toutes les 30 s) jusqu’à l’obtention d’une réponse

©Laurent Magnin 1998-2006, tous droits réservés / 34

Modèle « classique » d’un agent

Délibération

Perception

ActionAgent

©Laurent Magnin 1998-2006, tous droits réservés / 35

Implémentation (sommaire) d’un agent

Classe Virtuelle AgentGeneriqueliste messagesEnAttente ;

receptionMessage(msg) ; { messagesEnAttente.ajoute(msg) } ;

envoiMessage(msg, destinataire) { destinataire.receptionMessage(msg) };

Virtuel declencheComportement() ;

init() { nouveauProcessus(

{ TantQue(vrai) messagesEnAttente.interpreteMessages() ;

declencheComportement() } ) } ;

©Laurent Magnin 1998-2006, tous droits réservés / 36

Le « comportement » de l’agent

• Le comportement (action dans sonenvironnement) d’un agent doit tendre à lasatisfaction de ses objectifs• en tenant compte de ses ressources et de ses

compétences

• en fonction de sa perception, de sa représentation dumonde et des autres agents, ainsi que de sescommunications

7

©Laurent Magnin 1998-2006, tous droits réservés / 37

Les « modèles » de comportement

• Subsomption (modules hiérarchiques)

• Système expert

• Réseaux de Petri

• Réseaux neuronaux

• Modules connectables entre eux

• ...

• Implémentations mixtes

• Systèmes multiagents récursifs

©Laurent Magnin 1998-2006, tous droits réservés / 38

Formes de communication

Types decommunication

Mode decommunication

Transmission Codage etinterprétation

Envoi demessage

Point à point oudiffusion (avecun intermédiaire)

Directe Intentionnel

Par messager Point à point oudiffusion (avecun intermédiaire)

Par messager Intentionnel maisdépend dumessager

Par stimuli etsignaux

Diffusion Propagation dansl’environnement

Implicite

©Laurent Magnin 1998-2006, tous droits réservés / 39

Théorie des actes de langage

• Provient de la psychologie sociale

• Les phrases ne sont pas seulement vraies ou fausses,mais sous-entendent des actes• « Je déclare la séance ouverte »

• « Peux-tu me passer le sel ? »

• KQML (Knowledge Query & Manipulation Language) etACL (Agent Communication Language) ont pour butd’être des langages de haut niveau basé sur les actesde langage permettant aux agents cognitifs depouvoir coopérer

©Laurent Magnin 1998-2006, tous droits réservés / 40

Comment passer du micro au macro ?

• Problème de la coopération• Comment se mettre ensemble pour pousser une voiture

• Problème de la satisfaction personnelle versus lasatisfaction globale• Il vaut mieux descendre et aider à pousser une voiture plutôt

que de rester bloqué par celle-ci. Pourtant, cela faitmomentanément perdre du temps...

• Cf. dilemme du prisonnier

©Laurent Magnin 1998-2006, tous droits réservés / 41

Exemple du dilemme du prisonnier

• Chaque prisonnier peut accuser l’autre

• Si aucun n’accuse l’autre, 2 ans par prisonnier

• Si les deux s’accusent, 4 ans par prisonnier

• Si un seul accuse l’autre : il est libre tandis quel’autre a 5 ans

©Laurent Magnin 1998-2006, tous droits réservés / 42

Coordination et négociation

• Coordination

• Les agents ont un but commun

• Déplacer un piano

• Négociation

• Les agents ont des but opposés

• Vendeurs / acheteurs

8

©Laurent Magnin 1998-2006, tous droits réservés / 43

Les agents sur Internet

• Introduction

• L’intelligence artificielle distribuée

• Une nouvelle forme de simulation

• Un nouveau paradigme de programmation

• Les agents sur Internet

• Définition d’un « agent »

• Technologies agents et SMA

• Conclusion

©Laurent Magnin 1998-2006, tous droits réservés / 44

Les agents sont faits pour Internet

• Génie logiciel• Hétérogénéité• Distribution• Permanence• Etc.

• Intelligence artificielle distribuée• Résolution décentralisée de problèmes

• Vie artificielle• Internet devient un environnement complexe dans lequel des

entités doivent coexister• Mondes virtuels (http://www.activeworlds.com/)

©Laurent Magnin 1998-2006, tous droits réservés / 45

The Hottest Upcoming Technologies

© GARTNER GROUP Research Note Technology 04 February 1999 A Survey on Advanced Technology Deployment / A. Linden

#1 Intelligent agents (more than 500 percent growth, from 13 percent currentdeployment to 84 percent planned deployment within the next five years).

Intelligent agents ranked highest in this list, which can be explained by theircapability of automating and supporting a wide array of tasks within the enterprise(e.g., from monitoring streams of data to proactively detect certain events, toassisting in an office environment for managing and retrieving information).Additionally, enterprises with a Web presence need to have a strategy in place tocope with a possible increase in shopping agents (i.e., "shop bots"). Despite itsgreat long-term potential, we have slightly lower expectations of the near-termutility of intelligent agents and believe that much of the widely sought automationcan also be achieved through traditional means of IT.

©Laurent Magnin 1998-2006, tous droits réservés / 46

Les limitations de l’Internet actuel

• Internet sert uniquement à transmettre desdocuments (html, courriel, etc.) entreordinateurs…

• ...Jusqu’à l’introduction de Java• Exécuter un code identique sur plusieurs types d’ordinateurs

différents

• Téléchargement de code du serveur vers le client

• Mais impossibilité d’envoyer du code du client vers leserveur...

©Laurent Magnin 1998-2006, tous droits réservés / 47

Solution : un agent mobile

• Un agent mobile est un agent capable de sedéplacer d’un ordinateur à un autre…

• Des serveurs multiagents ad hoc sont implantés surces ordinateurs

• Difficultés• Langage commun (entre agents et avec les serveurs - bases

de données par exemple -)

• Sécurité• du serveur

• de l’agent

©Laurent Magnin 1998-2006, tous droits réservés / 48

Avantages des agents mobiles

• Réduction de la bande passante• Interrogation de très grosses bases de données

• Confidentialité• Qui parle à qui ?

• Connexions non permanentes• Agent mobile entre un PC et un assistant personnel

• Maintenance• Lorsqu’un serveur doit être arrêté, « ses » agents migrent

• Déploiement à distance de code

9

©Laurent Magnin 1998-2006, tous droits réservés / 49

Billet d’avionMontréal Paris ?

Air China

Air Canada

Air France

« Agence de voyage »

Compagnies aériennes ?

Montréal Paris ?Désolé...

Montréal Paris ?400 $

Montréal Paris ?3000 FF

Montréal Paris ?Air Canada ! OK ?

Exemple : recherche d’un billet d’avion

©Laurent Magnin 1998-2006, tous droits réservés / 50

Plate-formes d’agents mobiles

• Grasshopper d’IKV++

• Voyager d’ObjectSpace

• Aglets d’IBM Japon

• Concordia de Mitsubishi

• Jade (compatible FIPA)

Problème d’incompatibilité entre ces plates-formes

• Guest du Crim• Interface permettant à des agents « génériques » de pouvoir

« s’exécuter » et se déplacer entre ces plates-formes

©Laurent Magnin 1998-2006, tous droits réservés / 51

Du fourragement des fourmis...

Nid Nourriture

©Laurent Magnin 1998-2006, tous droits réservés / 52

…à l’optimisation du trafic sur Internet

• Algorithme « Ant-Colony-Routing » servant àoptimiser les tables de routage des nœuds du réseau

• Des agents circulent sur le réseau et modifient lestables de routage visitées en fonction de leur vitessede transfert

• « Résultats rapportés impressionnants »

• Utilisé par British Telecom et MCI-Worldcom (?)

Ingénierie des systèmes multi-agents, JFIADSMA’99, Hermès

www.santafe.edu/sfi/publications/Abstracts/98-01-003abs.html

©Laurent Magnin 1998-2006, tous droits réservés / 53

Définition d’un « agent »

• Introduction

• L’intelligence artificielle distribuée

• Une nouvelle forme de simulation

• Un nouveau paradigme de programmation

• Les agents sur Internet

• Définition d’un « agent »

• Technologies agents et SMA

• Conclusion

©Laurent Magnin 1998-2006, tous droits réservés / 54

Agent = entité physique ou virtuelle

• Capable d’agir dans un environnement

• Peut communiquer directement avec d’autres agents

• Mu par un ensemble de tendances (objectifs individuels,fonction de satisfaction ou de survie à optimiser)

• Possède des ressources propres

• Capable de percevoir (mais de façon limitée) sonenvironnement

• Ne dispose que d’une représentation partielle(éventuellement aucune) de son environnement

• Possède des compétences et offre des services

• Peut éventuellement se reproduire

10

©Laurent Magnin 1998-2006, tous droits réservés / 55

Agent purement communicant (agent logiciel)

• Capable d’agir dans un environnement

• Peut communiquer directement avec d’autres agents

• Mu par un ensemble de tendances (objectifs individuels,fonction de satisfaction ou de survie à optimiser)

• Possède des ressources propres

• Capable de percevoir (mais de façon limitée) sonenvironnement

• Ne dispose que d’une représentation partielle de sonenvironnement (= ressources + autres agents)

• Possède des compétences et offre des services

• Peut éventuellement se reproduire

©Laurent Magnin 1998-2006, tous droits réservés / 56

Agent purement situé (entité physique ou simulée)

• Capable d’agir dans un environnement

• Peut communiquer directement avec d’autres agents

• Mu par un ensemble de tendances (objectifs individuels,fonction de satisfaction ou de survie à optimiser)

• Possède des ressources propres

• Capable de percevoir (mais de façon limitée) sonenvironnement

• Ne dispose que d’une représentation partielle(éventuellement aucune) de son environnement

• Possède des compétences et offre des services

• Peut éventuellement se reproduire

©Laurent Magnin 1998-2006, tous droits réservés / 57

Agent cognitif (Goal-Oriented Behavior)

• Représentation explicite, mémoire du passé

• Planification, engagement

• Mode d’organisation social

• Peu d’agents (10/20)

©Laurent Magnin 1998-2006, tous droits réservés / 58

Agent réactif

• Pas de représentation ni de mémoire du passé

• Stimulus-réponse

• Mode d’organisation biologique

• Beaucoup d’agents (> 100)

©Laurent Magnin 1998-2006, tous droits réservés / 59

Agent individualiste versus social

• Agent individualiste

• La fonctionnalité visée reste locale

• Peu ou pas d’interactions avec d’autres agents

• Pas de « collaborations »

• Agent social

• La fonctionnalité visée est globale

• Nombreuses interactions entre agents

• Paradigme de l’intelligence artificielle distribuée

©Laurent Magnin 1998-2006, tous droits réservés / 60

Agent dit « intelligent »

• Vocable plutôt « commercial »

• Agent isolé

• Assistant dans une tâche• Guide l’humain dans la réalisation d’une tâche (cf. Word, etc.)

• Détecte une tâche répétitive pour l’exécuter automatiquement

• Automatise une tâche (exemple, filtre de courriel)

• Représentant d’un humain• Gère votre portefeuille d’actions à votre place…

11

©Laurent Magnin 1998-2006, tous droits réservés / 61

Positionnement d’un agent

Réactif (stimulus/réponse)

Cognitif (buts, plans)

Situé (environnement)

Communicant (par messages)

Fourmis

Internet

Robots

©Laurent Magnin 1998-2006, tous droits réservés / 62

Un système multiagent peut être composé de :

• Un environnement (disposant de propriétésmesurables)

• Un ensemble d’objets (choses) situés. Ils sont passifset peuvent être perçus, créés, détruits et modifiéspar les agents

• Un ensemble d’agents

• Un ensemble de règles régissant ces entités (parexemple, la gravitation)

• Un ensemble de relations unissant les objets (choses)et les agents (par exemple, les entités se repoussent)

©Laurent Magnin 1998-2006, tous droits réservés / 63

Technologies agent & SMA

• Introduction

• L’intelligence artificielle distribuée

• Une nouvelle forme de simulation

• Un nouveau paradigme de programmation

• Les agents sur Internet

• Définition d’un « agent »

• Technologies agents & SMA

• Conclusion

©Laurent Magnin 1998-2006, tous droits réservés / 64

Contract Net (cf. http://www.csc.liv.ac.uk/~mjw/pubs/imas/distrib/)

• The collection of nodes is the “contract net”

• Each node on the network can, at different times orfor different tasks, be a manager or a contractor

• When a node gets a composite task (or for anyreason can’t solve its present task), it breaks it intosubtasks (if possible) and announces them (actingas a manager), receives bids from potentialcontractors, then awards the job (example domain:network resource management, printers, …)

©Laurent Magnin 1998-2006, tous droits réservés / 65

Manager

Task Announcement

Node Issues Task Announcement

©Laurent Magnin 1998-2006, tous droits réservés / 66

Manager

Manager

Manager

PotentialContractor

Idle Node Listening to Task Announcements

12

©Laurent Magnin 1998-2006, tous droits réservés / 67

Manager

PotentialContractor

Bid

Node Submitting a Bid

©Laurent Magnin 1998-2006, tous droits réservés / 68

Manager

PotentialContractor

PotentialContractor

Bids

Manager listening to bids

©Laurent Magnin 1998-2006, tous droits réservés / 69

Manager

Contractor

Award

Manager Making an Award

©Laurent Magnin 1998-2006, tous droits réservés / 70

Manager

Contractor

Contract

Contract Established

©Laurent Magnin 1998-2006, tous droits réservés / 71

Agents, rôles et groupes

• Nécessité d’utiliser une méthodologie dedéveloppement…

• Les fonctionnalités du systèmes sont décomposées enrôles

• Les rôles sont distribués entre agents

• Les agents constituent des groupes• http://citeseer.ist.psu.edu/ferber98metamodel.html

• http://www.auml.org/auml/supplements/Bresciani-Agents2001.pdf

©Laurent Magnin 1998-2006, tous droits réservés / 72

Agent AUML (AUML)

• Extension d’UML

• http://www.auml.org/

• http://www.jamesodell.com/NoDE-04-Keynote.pdf

Class(from UML)

AgentBaseClass GroupClass

AgentifiedClass

AgentRoleClassAgentClass

13

©Laurent Magnin 1998-2006, tous droits réservés / 73

Conclusion

• Introduction

• L’intelligence artificielle distribuée

• Une nouvelle forme de simulation

• Un nouveau paradigme de programmation

• Les agents sur Internet

• Définition d’un « agent »

• Technologies agents et SMA

• Conclusion

©Laurent Magnin 1998-2006, tous droits réservés / 74

Genèse des agents et SMA

IA Distribuée

Systèmes multiagents

Vie artificielle

Agent(s) isolé(s)

Métaphore sociologique Métaphore biologique

Génie logiciel

©Laurent Magnin 1998-2006, tous droits réservés / 75

Conclusion sous forme de définitions

• Agent• Entité autonome capable d’agir dans son environnement en

fonction de ses perceptions (et / ou messages)

• Objets (données + procédures) + processus

• Système multiagents• Est composé d’agents

• Sa dynamique (intelligence) est le fruit des interactions entreles agents le composant (coopération, planificationdistribuée… )

©Laurent Magnin 1998-2006, tous droits réservés / 76

Mises en pratique…

• JBoss JMX Metric Agent

• Jini (http://www.jini.org/)• Jini network technology is an open software architecture that

enables the creation of network-centric solutions which arehighly adaptive to change.

• P2P (peer to peer)

• Grid Computing (http://www.gridcomputing.com/)

• Web services

• …

©Laurent Magnin 1998-2006, tous droits réservés / 77

Bibliographie personnelle

• Les systèmes multi-agents. Vers une intelligence collective.J. Ferber, InterEditions, 1995

• Les agents. Applications bureautiques, Internet et intranet.A. Caglayan & C. Colin, InterEditions, 1998

• Multiagents Systems. A Modern Approach to DAI. Ed. byG. Weiss, The MIT Press, 1999

• La série des conférences JFIADSMA, Hermès

• Les conférences AAMAS (http://www.fun.ac.jp/aamas2006/)

• http://www.multiagent.com/

• http://damas.ift.ulaval.ca/~coursMAS/

• http://www.iro.umontreal.ca/~vaucher/Agents/

©Laurent Magnin 1998-2006, tous droits réservés / 78

Environnements de programmation

• Téléchargez et installez les environnementssuivants :• Jade (http://jade.cselt.it/)• Eclipse (http://www.eclipse.org/)