Upload
fatima-zohra-benhacine
View
1.967
Download
0
Embed Size (px)
DESCRIPTION
les système multi-agent
Citation preview
LES SYSTÈMES MULTI-AGENTS
République Algérienne Démocratique et Populaire Ministère de l’Enseignement Supérieur et de la Recherche
Scientifique Université d’Oran – Es Sénia
Faculté des SciencesDépartement d’Informatique
Master ID-IHM
10/04/2023 2
PLAN
1. Introduction2. Les agents3. Les système multi-agents4. L’interaction dans les SMA5. JADE6. Conclusion
10/04/2023 3
• Les SMAs sont à la connexion de plusieurs domaines en particulier de l’intelligence artificielle, des systèmes informatique distribués et du génie logiciel.
• Ils se caractérisent par des comportements collectifs produits par les interactions de plusieurs entités autonomes et flexibles appelées agents, que ces interactions tournent autour de la coopération, de la concurrence ou de la coexistence entre ces agents.
INTRODUCTION
10/04/2023 4
PLAN
1. Introduction2. Les agents3. Les système multi-agents4. L’interaction dans les SMA5. JADE6. Conclusion
10/04/2023 5
QUE CE QU’UN AGENT?
Un agent est une entité physique ou
virtuelle qui possèdent les
fonctionnalités suivantes :
capable d’agir dans un
environnement
Dont le comportement tend à satisfaire
ses objectifs. possède des compétences et
offre des services
peut communiquer avec
d’autres agents
capable de percevoir son
environnement
possède des ressources
propres
10/04/2023 6
Propriétés d’un agent
Autonome
Proactif
Flexible
Social
Situé
Agir sans l’intervention directe d’un humain (ou d’un autre agent) en contrôlant ses actions et de son état interne.
Capable d’avoir un comportement opportuniste, dirigé par ses buts ou sa fonction d’utilité, et prendre des initiatives au moment approprié.
Capable de répondre à temps
Capable d’interagir avec les autres agents (artificiels ou humains)
Recevoir des entrées sensorielles provenant de son environnement et ainsi effectuer des actions qui sont susceptibles de changer cet environnement.
10/04/2023 7
Architectures des agents
Agent délibératif
Agent réactif
Agent hybride
10/04/2023 8
•Pas de représentation explicite• Pas de mémoire de son histoire•ces agents peuvent agir et réagir très rapidement.
Agent réactif
• Représentation explicite de l’environnement.• Peut tenir compte de son passé.• Agent complexes.
Agent délibératif
Architectures des agents (suite)
10/04/2023 9
Architectures des agents
agentréactif
agent à réflexes simples
agent conservant une trace du monde
10/04/2023 10
PLAN
1. Introduction2. Les agents3. Les système multi-agents4. L’interaction dans les SMA5. JADE6. Conclusion
10/04/2023 11
Complexité de l’application
Absence de solution global
Existence de différents
domaines de connaissances
Distribution des données , des
connaissance , des ressources
Modélisation des systèmes naturels,
sociaux
Quand utiliser un SMA?
10/04/2023 12
Ensemble d’agents qui agissent et interagissent dans un environnement commun.
Les systèmes multi-agents
Ensemble d’agent
Ensemble de
relations
Ensemble d’opérations
Environnement Ensemble d’objets
SMA
10/04/2023 13
Domaines d’application
SantéIndustrie
Simulation Énergie
Communication
10/04/2023 14
PLAN
1. Introduction2. Les agents3. Les système multi-agents4. L’interaction dans les SMA5. JADE6. Conclusion
10/04/2023 15
L’interaction dans (SMA)
10/04/2023 16
Situations possibles d'interaction
le conflit: l'ensemble de négociation est vide
le consensus : les 2 agents préfèrent tous les accords de l'ensemble de négociation plutôt que d'atteindre leurs buts individuellement
le compromis: les agents préfèrent être seul, mais acceptent un accord négocié
10/04/2023 17
Interactions entre agents Les SMA ont surtout l’avantage de faire intervenir des schémas d’interaction sophistiqués. Ils peuvent ainsi coexister, être en compétition ou coopérer.
S’ils ne font que coexister, alors chaque agent ne considère les autres agents que comme des composantes de l’environnement.
S’ils sont en compétition, alors le but de chaque agent est de maximiser sa propre satisfaction,
S’ils sont en coopération, alors le but des agents n’est plus seulement de maximiser sa propre satisfaction mais Les agents travaillent ensemble à la résolution d’un problème
10/04/2023 18
Favorisent les actions en les faisant bénéficier les unes des autres
Gênent ou empêchent plusieurs actions de se réaliser simultanément
Types de Relations Entre Les Actions et les Agents
Relation Négatives conflictuelles
Lorsque les agents réalisent leurs actions, certaines actions exécutées simultanément peuvent soit entraîner des conflits soit améliorer les performances de cela on distingue deux types de relations
Relation positives synergique
10/04/2023 22
L’agent coordinateur dans les SMA
Son rôle est d’éviter comportement chaotique et maintenir la cohérence de l'ensemble il détient des informations de haut niveau sur les agents et il peut créer des plans d'actions et assigner les tâches aux autres agents
il doit aussi connaître à tout moment les buts, les connaissances et les activités des autres agents => difficile à mettre en place dans la pratique
10/04/2023 23
La négociation
définition• la négociation est un processus de communication d'un groupe d'agents permettant d'atteindre un accord mutuellement accepté
Les Grands Types de Négociation
Négociation compétitive
les agents d'intérêts différents tentent un choix
de groupe sur des alternatives bien définies
Négociation coopérative
les agents ont un but commun aussi les agents
sont collaboratifs, ils coopèrent
10/04/2023 24
10/04/2023 25
Composantes du modèle de négociation
Un Langage de négociation
•composé d'un ensemble de primitives de communication précisant la manière dont les agents communiquent
Protocole de négociation
• ensemble des règles qui régit la négociation.
Les Objets de négociation
• c'est sur ces objets que porte la négociation
10/04/2023 26
Processus de décision
•C’est le cœur de fonctionnement et l'intelligence de la négociation.•Il oriente la stratégie de l'agent au cours de la négociation•La stratégie peut être entièrement définie et immuable, ou alors modifiable en fonction des stratégies des autres agents.
Cardinalité des participants de la négociation
• négociation un-à-un, un-à-plusieurs, plusieurs-à-plusieurs.
Composantes du modèle de négociation (Suite)
10/04/2023 27
Les différentes polyptiques autour de la négociation
Dans la problématiques de la négociation qui vise a trouver un compromis entres les agents on trouve plusieurs méthodes parmi elles :
Négociation basée sur la théorie des
jeux Négociation basée sur les euristiques
Négociation basée sur l’argumentation
10/04/2023 28
PLAN
1. Introduction2. Les agents3. Les système multi-agents4. L’interaction dans les SMA5. JADE6. Conclusion
10/04/2023 29
JADE
MadKit
jadex
SPADE
SMA
Plate-forme de développement des SMA
10/04/2023 30
JADE (Java Agent DEvelopment Framework)
• JADE est un logiciel environnemental qui permet de construire des systèmes d'agents pour la gestion des ressources d'information sur le réseau, adapté aux spécifications de FIPA
• Intergiciel pour le développement d’applications pair à pair d’agents intelligents utilisé sur des plateformes fixes, téléphones mobiles, …
• Projet Open Source, LGPL License
10/04/2023 31
Jade Principe général
Conteneur1
Plate forme JADE
Conteneur n
Conteneur Principal
Conteneur…
AMS DF
Comportements
10/04/2023 32
La plate forme JADE (2)
• Une application JADE est une plateforme déployée sur une ou plusieurs machines.
• Elle héberge un ensemble d’agents, identifiés de manière unique,
pouvant communiquer de manière bidirectionnelle avec les autres agents .
• Chaque agent s’exécute dans un conteneur (container) qui lui fournit son environnement d’exécution
• Toute plateforme doit avoir un conteneur principal qui enregistre les autres conteneurs
• Une plateforme est un ensemble de conteneurs actifs
10/04/2023 33
Agents prédéfinis de JADE
DUMMY AGENT
• Permet l’envoi de messages à des agents• Utile lors de la
conception afin de vérifier la réaction d’un agent à la réception d’un message.
SNIFFER AGENT • Permet de visualiser
l’enchaînement des messages entre les agents.• Représentation
graphique de l’échange des messages.
• Les agents à sniffer peuvent être sélectionnés.
INTROSPEC-TOR AGENT
• Permet de débugger le comportement d’un agent. • Permet de savoir
quels comportements d’un agent sont
• exécutés, dans quel ordre, quand…
10/04/2023 34
Communication entre les agents 1
Plate forme Conteneur Message Agent
10/04/2023 35
Communication entre les agents 2
• Interaction entre agents par envoi de messages dont le contenu est exprimé en ACL (Agent Communication Language)selon différents langages de contenu via différents mécanismes :
Interne: Au sein d’une plateforme les communications se font par RMI.
Externe: Entre plateformes les communications se font par HTTP, IIOP, JMS, … selon la configuration de la plateforme au lancement
10/04/2023 36
JADE Conception et implémentation
1. Installation de JADE (Lien ……)2. Démarrage de JADE
Lancer Jade avec la ligne de commandes : java jade.Boot
Lancer Jade et la GUI : java jade.Boot –gui
Lancer un agent au démarrage : java jade.Boot –gui <nom de l’agent>:<classe de l’agent>
Lancer un agent avec des paramètres : java jade.Boot –gui <nom de l’agent>:<classe agent> (<Param>).
10/04/2023 37
Conception et implémentation 2
3. Création d’un agent Etendre la classe jade.core.Agent
import jade.core.agent;public class monAgent extends Agent …;
Chaque agent est identifie par un AIDMethode getAID() //pour récupérer l’AID
Dans la méthode setup() (Obligatoire) Enregistrer les langages de contenu Enregistrer les Ontologies Enregistrer les Services auprès du DF Démarrer les Comportements (behaviors)
10/04/2023 38
Conception et implémentation 3
4. Identification des agents Le nom d’un agent :
<nom-agent>@<nom-plate-forme> Doit être globalement unique
Plate-forme par défaut : <main-host>:<main-port>/JADE Nom de la plate-forme défini avec –name
Méthodes de la classe Agent getArguments(): pour obtenir les arguments d’un agent doDelete() :pour tuer un agent takeDown()
10/04/2023 39
JADE Conception et implémentation
5. Création d’un comportement
Créer (étendre la classe « behaviour »)public class myBehaviour extends Behaviour
Créer le constructeur avec la super classepublic myBehaviour(Agent agent){super(agent);}
Créer la méthode « action » (Obligatoire) quicorrespond à l’exécution du behaviourpublic void action() {<code du behaviour>}
6. Communication entre agents
10/04/2023 40
Exemple illustratif
Jade
Agent A Agent BPréparation du message
Envoi du message à Agent B
Mise en file d’attente dans la ‘boîte de réception’ de Agent B
Lecture du msg
10/04/2023 41
Exemple code source
10/04/2023 42
Exemple code source
10/04/2023 43
Exemple code source
10/04/2023 44
AvantagesInconvénients
la fiabilité
La robustesse
la vitesse
la résolution distribuée
et concurrente de problèmes
comment gérer la répartition
des ressources
Modélisation des systèmes
complexes
10/04/2023 45
Conclusion
• De nos jours, les applications à base de systèmes multi-agents sont utilisées de plus en plus dans la vie réelle (surtout à l'Internet et dans les grandes communauté : entreprises, gouvernement, etc.).
• Permettre de modéliser des systèmes et des phénomènes du monde réelle.
• Offre plusieurs avantage (robustesse, …) mais leurs principales inconvénients résident dans la conception et la modélisation ainsi que la communication entre agents.
10/04/2023 46
Bibliographie
Aperçu sur les systèmes multiagents Imed Jarras et Brahim Chaib-draa 2002
L’intelligence Artificielle Distribuée et les Systèmes Multi-Agents LEMLOUMA et Tayeb BOUDINA Abdelmadjid
Principes et architecture des systèmes multi-agents Jean-Pierre Briot et Yves Demazeau 2001.
10/04/2023 47
Merci de votre attention