Systèmes Multi-agentsdbenmerzoug.e-monsite.com/medias/files/dos-chap5.pdf · L’intelligence...
Transcript of Systèmes Multi-agentsdbenmerzoug.e-monsite.com/medias/files/dos-chap5.pdf · L’intelligence...
189
Systèmes Multi-agents
Dr. Djamel Benmerzoug Email : [email protected]
Maitre de Conférences A, Laboratoire LIRE
Département TLSI Faculté des NTIC
Université Constantine 2 – Abdelhamid Mehri
Master 2 SITW
DoS - Master 2 - SITW
Systèmes Multi-agents
Plan:
Intelligence Artificielle (IA)
Intelligence Artificielle Distribuée (IAD)
Technologie Agent
Systèmes Multi-agents (SMA)
SMA et intégration d’applications
DoS - Master 2 - SITW 190
L’intelligence artificielle (IA)
L’IA Désigne la simulation des mécanismes de la pensée par un ordinateur
Reproduire un raisonnement par des moyens informatiques
Un ensemble de réalisations et de recherches qui essaient de simuler artificiellement les performances humaines
L'émergence des systèmes ''adaptatifs''
DoS - Master 2 - SITW 191
L’intelligence artificielle (IA)
Les systèmes experts
Un système expert est un logiciel capable de répondre à des questions, en effectuant un raisonnement à partir de faits et de règles connus. Il peut servir notamment comme outil d’aide à la décision.
DoS - Master 2 - SITW 192
L’intelligence artificielle (IA)
Un système expert se compose de 3 parties :
Une base de faits ;
Une base de règles ;
Un moteur d’inférence.
DoS - Master 2 - SITW 193
L’intelligence artificielle (IA)
Faits et règles
Faits
Ensemble de vérités connues
Règles
Partie condition : prémisses
Partie action : conclusion, calcul, affichage ...
Éventuellement : coefficient de confiance
SI condition ALORS action [coefficient]
DoS - Master 2 - SITW 194
L’intelligence artificielle (IA)
Le moteur d’inférence
Le moteur d’inférence est capable d’utiliser faits et règles pour produire de nouveaux faits, jusqu’à parvenir à la réponse à la question posée.
La plupart des systèmes experts existants reposent sur des mécanismes de logique formelle et utilisent le raisonnement déductif.
DoS - Master 2 - SITW 195
L’intelligence artificielle (IA)
DoS - Master 2 - SITW 196
L’intelligence artificielle (IA)
Mode de raisonnements
Il existe de nombreux types de moteurs, capables de traiter différentes formes de règles logiques pour déduire de nouveaux faits à partir de la base de connaissance.
On distingue souvent trois catégories:
Les moteurs - dit à « chaînage avant » - qui partent des faits et règles de la base de connaissance, et tentent de s’approcher des faits recherchés par le problème.
DoS - Master 2 - SITW 197
L’intelligence artificielle (IA)
Les moteurs - dits à « chaînage arrière » - qui partent des faits recherchés par le problème, et tentent par l’intermédiaire des règles, de « remonter » à des faits connus,
Les moteurs - dits à « chaînage mixte » - qui utilisent une combinaison de ces deux approches chaînage avant et chaînage arrière.
DoS - Master 2 - SITW 198
L’intelligence artificielle (IA)
L’apprentissage automatique L'apprentissage automatique fait référence au
développement, à l’analyse et à l’implémentation de méthodes qui permettent à une machine d’évoluer grâce à un processus d’apprentissage, et ainsi de remplir des tâches qu’il est difficile ou impossible de remplir par des moyens algorithmiques plus classiques.
Objectif : extraire et exploiter automatiquement
l'information présente dans un jeu de données.
DoS - Master 2 - SITW 199
L’intelligence artificielle (IA)
Types d’apprentissage
Les algorithmes d’apprentissage peuvent se catégoriser selon le type d’apprentissage qu’ils emploient :
L'apprentissage supervisé
L'apprentissage non-supervisé
L'apprentissage par renforcement
DoS - Master 2 - SITW 200
L’intelligence artificielle (IA)
Quelques algorithmes d’apprentissage
La méthode des k plus proches voisins
Les réseaux de neurones
Les arbres de décision
Les algorithmes génétiques
DoS - Master 2 - SITW 201
L’intelligence artificielle (IA)
Méthode des k plus proches voisins
Principe: On dispose d'une base de données d'apprentissage constituée de m couples «entrée-sortie ».
Pour estimer la sortie associée à une nouvelle entrée x, la méthode consiste à prendre en compte les k échantillons d'apprentissage dont l'entrée est la plus proche de la nouvelle entrée x, selon une distance à définir
DoS - Master 2 - SITW 202
L’intelligence artificielle (IA)
DoS - Master 2 - SITW 203
L’intelligence artificielle (IA)
204 DoS - Master 2 - SITW
L’intelligence artificielle (IA)
Exemple
DoS - Master 2 - SITW 205
L’intelligence artificielle (IA)
DoS - Master 2 - SITW 206
L’intelligence artificielle (IA)
Distance
Euclidienne:
Euclidienne pondérée:
DoS - Master 2 - SITW 207
Systèmes Multi-agents
Plan:
Intelligence Artificielle (IA)
Intelligence Artificielle Distribuée (IAD)
Technologie Agent
Systèmes Multi-agents (SMA)
SMA et intégration d’applications
DoS - Master 2 - SITW 208
L’intelligence artificielle Distribuée (IAD)
L’intelligence artificielle distribuée (IAD)
La branche de l’IA qui s’intéresse à la modélisation du comportement «intelligent» par la coopération entre un ensemble d’agents
L’intelligence artificielle classique, modélise le comportement intelligent d’un seul agent.
Passage du comportement individuel aux comportements collectifs pour combler les limites de l’IA classique à résoudre des problèmes complexes.
DoS - Master 2 - SITW 209
L’intelligence artificielle Distribuée (IAD)
I.A.D. – Pourquoi distribuer ?
La plupart des applications ou problèmes réels font intervenir des systèmes physiquement et fonctionnellement distribués.
Distribution fonctionnelle dans les activités humaines (décomposition du problème en fonction des spécialités)
DoS - Master 2 - SITW 210
L’intelligence artificielle Distribuée (IAD)
I.A.D. – Pourquoi distribuer ?
Évolution de l’informatique vers le Pervasive Computing (informatique ubiquitaire ou diffusé)
DoS - Master 2 - SITW 211
La technologie Agent
Définition d’un agent
Un agent est une entité physique ou virtuelle qui agit dans un environnement, communique directement avec d’autres agents, possède des ressources propres, est capable de percevoir partiellement son environnement et possède des compétences.
En fonction des ressources, des compétences et des communications, un agent tend à satisfaire ses objectifs.
DoS - Master 2 - SITW 212
La technologie Agent
Un agent effectue continuellement trois fonctions :
Perception de l’environnement ;
Interprétation de ces perceptions ;
Détermination des actions possibles.
DoS - Master 2 - SITW 213
La technologie Agent
Propriétés de l’agent
Réactivité : Percevoir l’environnement et répondre, en temps réel
Proactivité : Capacité de prendre l’initiative / comportement orienté but
Sociabilité : Capacité d’interagir avec d’autres agents ou utilisateurs
Autonomie: un agent est indépendant de l’utilisateur et des autres agents.
DoS - Master 2 - SITW 214
La technologie Agent
Types d’agents
Agent réactif: les décisions prises par les agents sont basées sur une correspondance entre les situations et les actions (Architecture simple).
Agent cognitif: les décisions prises par les agents sont basées sur des déductions logiques (Architecture complexe)
Agent hybride
DoS - Master 2 - SITW 215
La technologie Agent
Agent cognitif vs réactif
DoS - Master 2 - SITW 216
Systèmes Multi-agents
Plan:
Intelligence Artificielle (IA)
Intelligence Artificielle Distribuée (IAD)
Technologie Agent
Systèmes Multi-agents (SMA)
SMA et intégration d’applications
DoS - Master 2 - SITW 217
Systèmes Multi-agents (SMA)
Définition d’un SMA
Un système multi-agents est un ensemble organisé d’agents.
Il est constitué d’une ou plusieurs organisations qui structurent les règles de cohabitation et de travail collectif entre agents.
Dans un même système, un agent peut appartenir à plusieurs organisations.
DoS - Master 2 - SITW 218
Systèmes Multi-agents (SMA)
Propriétés des SMA:
Chaque agent a des informations et des capacités limitées pour résoudre un problème
Pas de système central de contrôle
Données décentralisées
Calcul asynchrone
DoS - Master 2 - SITW 219
Systèmes Multi-agents (SMA)
Interaction
Mise en relation dynamique de 2 ou plusieurs agents par le biais d’un ensemble d’actions réciproques
Echange des séries de messages en respectant des protocoles biens précis: protocoles de coordination, de coopération et de négociation.
DoS - Master 2 - SITW 220
Systèmes Multi-agents (SMA)
Communication entre agents
Un agent doit être capable de communiquer avec les autres agents.
Les agents doivent avoir des capacités à manipuler un langage commun.
2 types de communication :
Communication indirecte : Partage d’informations via l’environnement,
Communication directe : envoi de messages,
DoS - Master 2 - SITW 221
Systèmes Multi-agents (SMA)
Pour échanger les informations et les connaissances, les agents utilisent des ACL (Agent Communication Language).
Tout langage multi agent est représenté par une structure de donnée comprenant les champs : Emetteur
Récepteur
Langage utilisé : langage dans lequel le contenu de message est rédigé
Contenu du message
L’ontologie : le vocabulaire dans un domaine donné pour que les agents puissent se comprendre
DoS - Master 2 - SITW 222
Systèmes Multi-agents (SMA)
De nombreux langages de communications entre agents (ACL) se sont développés.
KQML (93, 97)
FIPA-ACL (97, 99, 2000)
DoS - Master 2 - SITW 223
Systèmes Multi-agents (SMA)
KQML (Knowledge Query and Manipulation Language)
KQML a été conçu comme étant à la fois un format de message et un protocole de transfert de messages venant aider les agents intelligent au partage et échange de données de haut niveau tout en étant indépendant des machines.
DoS - Master 2 - SITW 224
Systèmes Multi-agents (SMA)
KQML : la syntaxe
DoS - Master 2 - SITW 225
Systèmes Multi-agents (SMA)
KQML : les performatives
36 performatives répartis en 3 catégories :
Les 18 performatives de discours : servent à échanger des connaissances et des informations (ask-if, ask-one, tell, describe, stream-all … )
Les 11 performatives d’interconnexion : aide à la mise en relation des agents entre eux (register, unregister, broadcast …)
Les 7 performatives d’exception : servent à changer le déroulement normal des échanges (error, sorry, standby …)
DoS - Master 2 - SITW 226
Systèmes Multi-agents (SMA)
Exemples KQML: Soient E : l'agent émetteur, R : l'agent récepteur et C : le contenu du
message
ask-one : E veut que seulement R réponde à sa question C
ask-if : E veut savoir si la réponse à la question précisée en C se trouve dans la base de connaissances (BC) de R
tell : E affirme au R que C est dans la BC de E
broadcast : E veut que R transmette à son tour la performative à toutes ses connexions
error : E considère le message précédent de R comme mal formé
sorry : R ne peut pas fournir plus d’information 227 DoS - Master 2 - SITW
Systèmes Multi-agents (SMA)
Exemples KQML: l’ agent A veut connaître
toutes les personnes définies comme étant des hommes.
228
l’ agent B répond que
Socrate est un homme.
DoS - Master 2 - SITW
Systèmes Multi-agents (SMA) L’agent A veut informer l’agent B que le prix
de bouquin "Web Service" est fixé à 1000 DA.
229
L’agent A demande à l’agent B de
transférer le message précédent à
l’agent C.
(tell
:sender A
:receiver B
:language java
:ontology e-commerce
:content prix("Web Service", 1000)
)
(forward
:from A
:to C
:sender A
:receiver B
:language KQML
:ontology kqml-ontology
:content (tell
:sender A
:receiver B
:language java
:ontology e-commerce
:content prix("Web Service", 1000)
)
) DoS - Master 2 - SITW
Systèmes Multi-agents (SMA)
Plates-formes SMA & KQML
AgentBuilder
http://www.agentbuilder.com
JAT : Java Agent Template http://www-cdr.stanford.edu/ABE/JavaAgent.html
Java Intelligent Agent Library http://www.bitpix.com/business/main/bitpix.htm
DoS - Master 2 - SITW 230
Systèmes Multi-agents (SMA)
La norme FIPA
La FIPA (Foundation for Intelligent Physical Agents) est une organisation en 1996 dont l'objectif est de produire des standards pour l'interopérabilité d’agents logiciels hétérogènes.
FIPA ACL : Syntaxe similaire à celle de KQML.
DoS - Master 2 - SITW 231
Systèmes Multi-agents (SMA)
La norme FIPA
DoS - Master 2 - SITW 232
Systèmes Multi-agents (SMA)
Plates-formes SMA & FIPA
JADE : http://jade.tilab.com/
Langage utilisé : Java.
FIPA ACL pour la communication.
DoS - Master 2 - SITW 233
Systèmes Multi-agents
Plan:
Intelligence Artificielle (IA)
Intelligence Artificielle Distribuée (IAD)
Technologie Agent
Systèmes Multi-agents (SMA)
SMA et intégration d’applications
DoS - Master 2 - SITW 234
DoS - Master 2 - SITW 235
SMA et Intégration d’applications
Les défis de l’EAI:
Communication des agréments sémantiques
Environnements ouverts, Interactions complexes
Flexibilité
…………
DoS - Master 2 - SITW 236
Standards des services Web WSDL, SOAP, BPEL
Limitations Inexistence de sémantique des messages échangés (message
sequencing and correlation)
Composition manuelle des services
Inefficacité en cas d'interactions complexes
Systèmes multi-agents (SMA)
Entités autonomes, interagissent dans un
environnement pour la résolution collective de problèmes
SMA et Intégration d’applications
SMA et Intégration d’applications
Problématique Comment modéliser le scénario d’intégration à l’aide
de mécanismes de coordination multi-agent ?
Comment intégrer les processus métiers au moment d’exécution ?
Apports de la technologie Agent Une approche orientée agent pour la modélisation du
scénario d’intégration
Une architecture basée agent pour l’intégration d’applications
DoS - Master 2 - SITW 237
SMA et Intégration d’applications
Legacy System
Data Base
ERP, CRM
Web
Application
Java
Application
.NET
Application
HTTP
RMI
.NET REMOTING
CORBA
ODBC
JCA
MAS
DoS - Master 2 - SITW 238
DoS - Master 2 - SITW
Références
Djamel Benmerzoug: A Specification and Validation Approach for Business Process Integration based on Web Services and Agents. 2007
Djamel Benmerzoug: A Petri-Net Based Formalisation of Interaction Protocols Applied to Business Process Integration. 2008
Djamel Benmerzoug: Formalisation and verification of interaction protocols for business process integration: a Petri net approach. 2008
Djamel Benmerzoug: Agent Approach in Support of Enterprise Application Integration. 2013
Djamel Benmerzoug: Modèles et outils formels pour l’intégration d’applications d’entreprises. Thèse de doctorat (Université Paris 6), 2009
239