Systèmes Multi-agentsdbenmerzoug.e-monsite.com/medias/files/dos-chap5.pdf · L’intelligence...

Preview:

Citation preview

189

Systèmes Multi-agents

Dr. Djamel Benmerzoug Email : djamel.benmerzoug@univ-constantine2.dz

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