You are on page 1of 10

1

Intelligence Articielle Distribue


Systmes Multi-Agents
Guillaume Hutzler / Tarek Melliti
IBISC (Informatique Biologie Intgrative et Systmes Complexes)
LIS (Langage Interaction et Simulation)
prenom.nom@ibisc.univ-evry.fr
http://www.ibisc.univ-evry.fr/~hutzler/Cours/SMA.html
Introduction
Intelligence Articielle Distribue
L'IAD sintresse des systmes dans lesquels des agents
articiels oprent collectivement et de faon dcentralise pour
accomplir une tche
Mtaphore de l'IA :
le penseur isol
Mtaphore de l'IAD :
la communaut de penseurs
Introduction
Systmes multi-agents : Problmatique
! Deux objectifs majeurs [Ferber 95]
lanalyse thorique et exprimentale des mcanismes dauto-
organisation qui ont lieu lorsque plusieurs entits autonomes
interagissent
la ralisation dartefacts distribus capables daccomplir des tches
complexes par coopration et interaction
! Deux approches complmentaires
modliser et simuler des phnomnes naturels; construire des modles
d(auto)-organisation
raliser des systmes informatiques complexes partir de concepts
dagent, dinteraction et dorganisation
Introduction - Agent
Quest-ce quun agent?
[Wooldridge et Jennings 1995]
! Weak agency
hardware or software-based computer system that enjoys the
following properties:
autonomy : agents operate without the direct intervention of humans or
others, and have some kind of control over their actions and internal state
social ability : agents interact with other agents (and possibly humans)
via some kind of agent-communication language
reactivity : agents perceive their environment, (which may be the physical
world, a user via a graphical user interface, a collection of other agents ,
the Internet, or perhaps all of these combined), and respond in a timely
fashion to changes that occur in it;
pro-activeness : agents do not simply act in response to their
environment, they are able to exhibit goal-directed behavior by taking the
initiative
Introduction
Avertissement - Agent inside
! Un terme dangereux
un terme la mode : utilis pour dsigner tout et nimporte quoi...
un terme connot : anthropomorphisation
! Multiplicit de typologies dagents
agents collaboratifs / apprenants / autonomes
agents dinterface / dinformation / ...
agents mobiles / statiques
agents ractifs / dlibratifs / hybrides
...
! Multiplicit dapplications
tlcommunication, contrle, robotique, simulation, Internet, langage
naturel, vision articielle, ...
Introduction
Quelques types d'agents
! Agents rationnels
IA, comportement dlibratif,
croyances, buts, dsirs,
intentions
! Agents mobiles
minimisation des
communications distantes
informatique nomade
! Agents assistants
secrtaire virtuel(le)
trie le mail
gre les rendez-vous
recherche des billets davion
<logiciel utilisateur +
assistant>
compagnon Microsoft
agents "motionnels"
! Agents logiciels
ex: dmons Unix, virus
informatique, robots Web
! Agents robotiques
robotique collective (ex:
RoboCup, dminage, etc.)
! Agents de loisir
virtuels (ex: jeux vidos)
virtuels physiques (ex:
Tamagotchi)
physiques (ex: Furby, robot-
chien Aibo Sony)
2
Introduction
Exemple : logistique oprationnelle
Introduction - exemple
Gestion centralise
ne sont pas partis des Etats-Unis
sont partis mais pas arrivs
ne sont pas arrivs destination
sont arrivs dans de mauvaises
conditions
sont arrivs et repartis
sont arrivs et repartis plusieurs fois
Pendant la guerre du Golfe (opration
Desert Storm), 45% des containers :
Introduction - exemple
Une vision "purement" agent
Container Id 5
Position: 14,12
But: 123,43
en attente
Contrainte: rfrigration
Camion 34
Position 16,16
libre
Contraintes: temps > 7
Position: 13,12
cherche
camion rfrigrant
But: 123,43
Puce intelligente + GPS + Radio
Camion 32
Position: 12,12
cherche grue
Contraintes: poids > 32
Container Id 8067
Position: 15,12
But: 123,43
en attente
Contrainte: temps < 5
Introduction - Distribuer
Distribuer
Intelligence
Articielle
Intelligence
Articielle
Distribue
Distribution
! de la connaissance
! des ressources
! du contrle
! de lautorit
Introduction - Distribuer
1. Les problmes peuvent tre...
! ... fonctionnellement distribus
la rsolution du problme ncessite lintervention dexperts aux
comptences varies
! ... spatialement distribus
la rsolution du problme ncessite lintgration de donnes en
provenance de sites gographiquement distincts
! ... complexes apprhender de manire globale
la rsolution doit oprer par composition de solutions labores de
manire locale
Deep Blue
Eco-rsolution
Introduction - Problmes fonctionnellement distribus
Du systme expert au tableau noir
! Approche IA classique : mtaphore du
penseur isol
test de Turing, systmes experts, ...
focalisation sur les capacits cognitives
individuelles
implantation sur une machine mono-
processeur
! Problmes :
intelligence coupe du monde
1 seule ligne de raisonnement
pas de discussion avec dautres
3
Introduction - Problmes fonctionnellement distribus
La mtaphore du tableau noir
Mtaphoriquement, on peut penser un
ensemble de collaborateurs qui
regardent tous le mme tableau noir :
chacun peut lire tout ce qui y est crit, et
juger quand il a quelque chose de
pertinent y ajouter.
[Newell 62]
! Modle de rsolution de pb pour
organiser les connaissances
organiser l'utilisation des
connaissances an de construire une
(des) solution(s)
Introduction - Problmes fonctionnellement distribus
Le modle du tableau noir
KS
KS
KS
Donnes
de contrle
Contrle
Tableau noir
! une KS e"ectue des changements sur le
blackboard; un enregistrement est conserv
dans la structure de donnes qui contient
linformation de contrle
! chaque KS indique ce quil peut faire pour
contribuer au nouvel tat de la rsolution
! un module de contrle utilise les points 1 et
2 pour slectionner le focus attentionnel
! en fonction de linformation contenue dans
le focus attentionnel, le module de contrle
appropri prpare son excution:
si le focus est une KS, on choisit un objet (ou
un ensemble dobjets du blackboard) pour
servir de contexte dinvocation
si le focus est un objet du blackboard, on
choisit une KS pour traiter cet objet
si le focus est une KS et un objet, la KS est
prte tre excute
Base de
Connaissances
Moteur
dinfrence
Mmoire
de travail
Systme expert
Introduction - Problmes fonctionnellement distribus
Hearsay-II
Pb = intgrer des connaissances pour rsoudre les pbs d'incertitude en
reconnaissance de la parole
interprter de l'anglais parl (vocabulaire limit) pour identier une requte
de base de donnes (rsums d'articles en IA)
exemples
"Which abstracts refer to theory of computation?"
"What has McCarthy written since nineteen seventy-four?"
smantique
syntaxe
phontique
lexique
rgles de
discours
articulation
Systme
comprhension
de la parole
bruit
micro
Introduction - Problmes fonctionnellement distribus
Niveaux et sources de connaissance
Niveaux Sources de Connaissance
Interface
Base de Donne
Phrase
Squence
de mots
Mot
Syllabe
Segment
Signal
[ar] [ti] [kel] [bai]
har ar ti cle keul
article by
(any) (article by) (Turing)
(any article by Turing)
(select Articles where authors contains "Turing")
Introduction - Problmes physiquement distribus
Rsolution rpartie de problmes distribus
capteur
vhicule
systme RdP
parcours d'un vehicule
communication inter-systmes RdP
communication capteur vers syst. RdP
DVMT (Distributed Vehicle Monitoring Testbed)
! Reprage des mouvements de vhicules partir dun rseau de
capteurs
! Accomplissement collectif d'une
tche d'interprtation o les
informations sont agrges de faon
incrmentale pour gnrer une
carte.
! Etude des interactions entre des
systmes de rsolution de
problmes (rseau de tableaux
noirs)
Introduction - Problmes complexes apprhender de manire globale
Eco-Rsolution (Eco Problem Solving)
! Chaque agent a
un but (un autre agent)
des accointances (dautres agents)
des dpendances (dautres agents)
des gneurs (dautres agents)
! Le modle de comportement
est un automate tats nis :
satisfait: l'agent ne fait rien
rechercheSatisfaction: l'agent cherche se
satisfaire
rechercheFuite: l'agent a t agress et
tente de fuir
fuite: l'agent fuit
4
Introduction - Distribuer
2. Le matriel a volu ...
Connection Machine
! ... vers la connexion d'ordinateurs en rseaux
les connaissances et les services sont rpartis sur le rseau
les utilisateurs du rseau doivent travailler ensemble
! ... vers des ordinateurs massivement parallles
les processeurs doivent coordonner leur excution pour produire un
rsultat
! ... vers des microprocesseurs
multiples units de calcul
les units de calcul doivent coordonner
leur excution
! ... vers la poussire intelligente,
et les rseaux de capteurs
multitude dunits de calcul trs simples
[Hewitt 77; Agha 79]
Introduction - Les ordinateurs parallles
Les langages d'acteurs
! Modle de programmation concurrente
! Les structures de contrle des langages traditionnels sont
traduits sous forme de schmas de communications entre
entits autonomes (acteurs).
! Les acteurs sont vus comme des spcialistes pouvant
rsoudre des problmes en communiquant par envois de
messages avec leurs accointances.
! Proche des Beings [Lenat 75], et des thories de lesprit
comme lcologie de lesprit [Bateson 79] ou la socit
de lesprit [Minsky 88].
Introduction Les ordinateurs en rseau
L'agence de voyage
! Trading Agent Competition (TAC)
Introduction Les ordinateurs en rseau
L'agenda
Introduction - Gnie logiciel
3. Systmes logiciels complexes
! Les systmes deviennent de plus en plus complexes
Dvelopper des techniques modulaires de ralisation de programmes
(composants "enchables")
Dvelopper l'autonomie des entits informatiques
Dvelopper des "frameworks" d'intgration de ces entits
! Les systmes sont de plus en plus distribus
Techniques permettant des entits informatiques de "collaborer"
distance de manire simple et transparente
Introduction - Gnie logiciel
La programmation a volu ...
! ... vers plus de modularit
1950 Langages machine et assembleur
1960 Programmation procdurale
1970 Programmation structure
1980 Programmation oriente-objet
1990 Composants, Agents
2000 Aspects
! ... vers plus d'autonomie
variables et fonctions
objets (encapsulation)
acteurs (objets + paralllisme)
agents (acteur + pro-activit)
m
o
d
u
l
a
r
i
t

+
+
a
u
t
o
n
o
m
i
e
+
+
5
Introduction - Gnie logiciel
La programmation a volu ...
! ... vers plus de distribution et dhtrognit
multi-threads
sockets
RPC
Java RMI
CORBA
agents
D
i
s
t
r
i
b
u
t
i
o
n

/
h

r
o
g

i
t

Sojourner
! ... en environnement incertain
les robots doivent devenir mobiles
les robots doivent dcider de leurs actions de manire
dynamique et autonome
! ... de manire collective
les robots doivent coordonner leurs actions
les robots doivent sorganiser collectivement an de"ectuer
la tche demande
Introduction - Distribuer
4. Les robots doivent intervenir ...
Robocup
Introduction La robotique
Coordination dactions
Introduction La robotique
RoboCup
QuickTime et un
dcompresseur
sont requis pour visionner cette image.
QuickTime et un
dcompresseur
sont requis pour visionner cette image.
Introduction La robotique
RoboCup
! Construire des groupes de robots capables de jouer un sport
collectif (ressemblant au football)
! Reprsentatif des contraintes qui psent sur la conception de
systmes multi-agents
action & perception locales
pas de coordination globale
ncessit de coopration
! Confronte des techniques essentiellement logicielles un
environnement dynamique rel
Imperfection de la perception et de la
communication
Incompltude de l'information
Hiatus entre intention (prvision) et action
Possibilits de pannes
Introduction La robotique
CRAASH: Navigation (1)
! Les forces s'appliquant sur un agent sont dnies comme le gradient
d'un champ de potentiel
F(p) = - grad (U(p))
! Les buts sont des champs attractifs
! Les obstacles des champs rpulsifs
! Le mouvement d'un
agent s'obtient par
combinaison de ces forces
6
Introduction La robotique
CRAASH: Navigation (2)
! Dans le cas de plusieurs agents
mobiles, chacun est considr
comme un obstacle pour les
autres
! Mais les deux forces ne
su#sent pas...
Attraction
Repulsion
But agent 2
But agent 1
Force rsultante
Trajectoire
Agent 1
Agent 2
Attraction
Repulsion
But agent 1
Agent 1
Agent 2 ?
Introduction La robotique
CRAASH: Navigation (3)
! Ajout d'une force glissante, perpendiculaire la force de
rpulsion, et dont la norme est fonction de la distance
conserver pour contourner l'obstacle.
Attraction
Repulsion
But agent 1
Agent 1
Agent 2 ?
Glissante (a) (b)
Introduction - Distribuer
5. La simulation s'intresse ...
! ... aux systmes complexes
besoin de tester les modles et thories manipules dans le domaine
besoin de reprsenter des niveaux di"rents
besoin de reprsenter les comportements des entits du systme et pas
seulement le rsultat de ces comportements
besoin d'expliquer l'mergence de structures spatio-temporelles
[Lotka et Volterra 1926]
Introduction - La simulation
Lotka et Volterra
Ralit
Dcomposition Modlisation Simulation
"Ralit
Articielle"
Observation
Introduction La simulation multi-agents
Simulation multi-agents (1)
! Crer un monde articiel
compos d'agents en
interaction
! Trois composantes
les agents
les rgles de comportement
l'environnement
! Les agents agissent et
modient l'environnement
! On observe le rsultats de
leurs interactions comme si
l'on tait dans un laboratoire
(notion de laboratoire virtuel)
Introduction La simulation multi-agents
Simulation multi-agent (2)
! Etude des socits humaines et naturelles
Possibilit de modliser de faon isomorphe les objets dtudes
des sciences humaines et naturelles
Possibilit de choisir le niveau danalyse du domaine, ainsi que
de combiner plusieurs types dexpertise
Possibilit de modliser les comportements, pas seulement leur
rsultante
! Apports pour la ralisation de socits dagents articiels
Possibilit dtudier des modes dorganisation, des mthodes de
rsolution collective de problme existant dans la ralit
Possibilit de dcouvrir de nouvelles analogies, de nouvelles
mtaphores, qui ne soient pas simplement des mtaphores de
surface
pas inpuisables
di#ciles de les enrichir car souvent intuitives
di#ciles oprationnaliser
7
Introduction La simulation multi-agents
Simulation multi-agent (3)
! Autres dnominations
Simulation individu-centre (Individual Based Modelling)
Agent-based Modelling
Simulation comportementale (behavioural simulation)
Simulation corpusculaire (physique)
Introduction La simulation multi-agent
Exemple - les comportements grgaires
chez les oiseaux
chez les poissons
chez les mammifres
Introduction La simulation multi-agent
Exemple - le modle de ocking [C. Reynolds]
! modle de dplacement animal de groupe (oiseaux, poissons,
mammifres sociaux, etc.)
reprsentation 3D
modle de comportement bas sur 3 comportements simples qui
dcrivent les manuvres faire en fonction des voisins
Sparation Alignement Cohsion
Introduction La simulation multi-agent
C. Reynolds - Boids
Introduction La simulation multi-agent
Application lanimation
! 1987: Stanley and Stella in: Breaking the Ice, (short) Director: Larry Malone, Producer: Symbolics, Inc.
! 1988: Behave, (short) Produced and directed by Rebecca Allen
! 1989: The Little Death, (short) Director: Matt Elson, Producer: Symbolics, Inc.
! 1992: Batman Returns, (feature) Director: Tim Burton, Producer: Warner Brothers.
! 1993: Cli!hanger, (feature) Director: Renny Harlin, Producer: Carolco Pictures.
! 1994: The Lion King, (feature) Director: Allers / Minko", Producer: Disney.
! 1996: From Dusk Till Dawn, (feature) Director: Robert Rodriguez, Producer: Miramax.
! 1996: The Hunchback of Notre Dame, (feature) Director: Trousdale / Wise, Producer: Disney.
! etc.
Introduction La simulation multi-agent
Application lanimation
Le roi lion ( Disney)
8
Introduction La simulation multi-agent
Application lanimation
MASSIVE (Multiple Agent Simulation System in Virtual Environment)
Introduction - De lIA lIAD
L'Intelligence Articielle a clat
IA
Vie Articielle
tudier la vie avant lintelligence
IA Distribue
distribuer
No-connexionnisme
copier le fonctionnement rel du cerveau
Dans les annes 80...
Connexion-
nisme
Vie
articielle
Introduction - De lIA lIAD
Dimensions danalyse
mono/multi
IA
mono
multi
Systmes
multi-agents
(cellule) (animal / vgtal) (homme)
IAD
numrique/
symbolique
symbolique sub-symbolique
Animat
SMAs
ractifs
numrique
Introduction
Le passage la mtaphore sociale
! Les entits intervenant dans la rsolution dun problme sont
charges de rsoudre le problme de leur organisation
il faut leur donner les moyens ncessaires pour le faire
on leur confre ainsi une autonomie
! On est pass de contrler des modules donner des agents
les moyens de sorganiser
! On va parler de systmes multi-agents dans lesquels les
agents devront interagir pour
cooprer (contrle)
collaborer (allocation de tches)
ngocier (rsolution de conits)
se coordonner (synchronisation)
Introduction - Agent
Quest-ce quun agent?
[Wooldridge et Jennings 1995]
! Weak agency
hardware or software-based computer system that enjoys the
following properties:
autonomy : agents operate without the direct intervention of humans or
others, and have some kind of control over their actions and internal state
social ability : agents interact with other agents (and possibly humans)
via some kind of agent-communication language
reactivity : agents perceive their environment, (which may be the physical
world, a user via a graphical user interface, a collection of other agents ,
the Internet, or perhaps all of these combined), and respond in a timely
fashion to changes that occur in it;
pro-activeness : agents do not simply act in response to their
environment, they are able to exhibit goal-directed behavior by taking the
initiative
Introduction - Agent
Architecture gnrique
Environnement
perception
action
Espace [E]
Objets [0]
Agents [A]
Agent ! [A]
Connaissances
Buts
Contrle
9
Systme multi-agents
Un SMA est dfini comme:
! Un ensemble B d'entits plonges dans un environnement E (E est
caractris par l'ensemble des tats de l'environnement S)
! Un ensemble A d'agents avec A B
! Un systme d'action (oprations) permettant ces agents d'agir dans
E (une opration est une fonction de S => S
! Un systme de communication entre Agents (envoi de messages,
di"usion de signaux,(I comme interaction)
! Une organisation O structurant l'ensemble des agents et dfinissant
les fonctions remplies par les agents (notion de rle et ventuellement
de groupes)
! Eventuellement: une relation des utilisateurs U qui agissent dans ce
SMA via des agents interfaces U A
(modle Voyelles dYves Demazeau)
Organisation
Agents
Systmes
dinteraction
Emergence de
fonctionnalits
Contraintes et
objectifs sociaux
Introduction - Systmes multi-agents
Lien micro/macro
Trois niveaux danalyse
lagent
linteraction
lorganisation
daprs [Ferber 95]
Introduction Concepts multi-agents
Problmes lis aux SMA
! Dcomposition
dcomposition du problme rsoudre en agents (rication)
allocation dynamique des tches
! Agent
choix dune architecture approprie
choix de comportements
! Interaction - coopration
communication
coopration
collaboration - allocation de tches
coordination dactions
rsolution de conits et ngociation
! Organisation
structure de la socit dagent
transformation dynamique des relations sociales entre agents
Introduction - Problmes lis aux SMAs
Le choix d'une dcomposition
Etant donn un pb rsoudre, comment choisir les agents qui vont
intervenir dans le systme et comment leur rpartir la comptence?
Grand nombre de dcompositions possibles
objet
spatiale
fonctionnelle
etc.
Di"rents grains possibles
socit
individu
organe
cellule
atome
...
Introduction - Problmes lis aux SMAs
Le choix d'un modle d'agent
! Agents cognitifs - Intelligence Articielle Distribue
agent = mtaphore psychologique
connaissance dcrite en termes dtats mentaux
comportement intentionnel (buts et plans explicites)
systme = mtaphore sociologique
! Agents ractifs - Vie Articielle
agent = mtaphore animale
connaissances rduites lassociation de stimuli et de rponses
comportement dirig par les perceptions
systme = mtaphore socio-biologique
Introduction - Problmes lis aux SMAs
Le choix d'un modle de communication
! Environnement
perception / action (ex: consommation de ressources)
traces (ex: phromones)
! Symbolique (messages)
mdium (rseau, voix, vision)
participants
individuel - point point
partag - multicast
global - broadcast
publish / subscribe (vnements)
! Actes de langage
"dire c'est faire" : des phrases ne sont pas vraies ou fausses, elles
constituent des actions de langage
La communication est pragmatique
elle explique gnralement ce qui est accompli plus que ce quoi cela se rfre
demander de faire quelque chose est une manire datteindre un but
10
Introduction - Problmes lis aux SMAs
Le choix de techniques de coordination
! Motivations
capacits individuelles insu#santes (ex: charges trop lourdes
transporter)
cohrence (rguler les conits smantiques: buts contradictoires, accs
aux ressources...)
e#cacit, traitement de l'incertain
recomposition des rsultats - solutions partielles
! Techniques
planication centralise, semi-centralise (synchronisation de plans
individuels), dcentralise
synchronisation d'accs aux ressources
algorithmique rpartie
rgles sociales
ngociation
numrique, symbolique (agrgation, argumentation), dmocratique (vote,
arbitrage), utilitarisme (thorie des jeux)
sans communication explicite
environnement, reconnaissance d'intentions
Introduction - Problmes lis aux SMAs
Le choix d'un modle d'organisation
! 3 points de vue
organisations rationnelles
collectivits nalits spciques
objectifs, rles, relations (dpendances...), rgles
organisations naturelles (vgtatives)
objectif en lui-mme : survie (perptuer l'organisation)
stabilit, adaptativit
systmes ouverts
inter-relations /dpendances avec d'autres organisations, environnement(s)
changes, coalitions
! Organisations abstraites
rles (client, producteur, mdiateur)
spcialisation des agents (simplicit vs exibilit)
redondance des agents (e#cacit vs robustesse)
relations (dpendances, hirarchie, subordination, dlgation)
protocoles d'interaction / coordination
gestion des ressources partages

You might also like