61
BIAD Bases de l’Intelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Embed Size (px)

Citation preview

Page 1: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

BIADBases de l’Intelligence Artificielle

DistribuéePrincipes de base : des objets aux agents

31-10-2012

Page 2: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

IntroductionLes machines ne sont pas bonnes pour savoir ce qu’il faut faire : il faut tout anticiper par le programmeur.  Dans plusieurs applications, on a besoin de systèmes qui décident eux mêmes ce dont ils ont besoin pour atteindre leurs objectifs : les agents. Les agents qui doivent opérer dans des environnements rapides, dynamiques, imprévisibles ou ouverts et où il y ’a plusieurs possibilités d’échec des actions entreprises sont appelés agents intelligents ou autonomes.

Page 3: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

IntroductionExemples : -Véhicule spatial -Recherche sur Internet

On essaye de comprendre

• Pourquoi les agents constituent une nouvelle approche importante de conception et d’implémentation de certaines applications logicielles

• Ce que sont les agents (et ce qu’ils ne sont pas) et quels sont les liens avec les autres paradigmes logiciels, en particulier, les systèmes experts et la programmation orientée objets

Page 4: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Définition d'agent:définition d'agent:Entité automatique pour la prise de décision.Défintion d'un agent selon wooldwridge:Un agent est un système informatique capable d'agir de manière autonome et flexible dans son environnement.Définition d'un agent selon Feiber: C'est une sorte d'organisme vivant dont le comportement se résume à communiquer agir et éventuellement se reproduire. Il vise à la satisfaction de ses besoins et de ses objectifs à partir de tous les autres éléments: perception, représentation, action, communication et ressources.

Page 5: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Définition d'agent:NB: Dans un système multi-agent le nombre d'agent n'est pas forcement physique, il y'a certain systèmes où les agents meurent naissent et se reproduisent. La communication peut se faire de manière directe  entre les agents ou de manière indirecte par l'environnement.Définition d'un agent selon Demagon :C'est une entité réelle ou virtuelle dont le comportement est autonome évoluant dans un environnement capable de le percevoir, d'agir dessus et d'interagir avec les autres agents.

Page 6: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Définition d’Agents

Un Agent peut être défini comme une entité (physique ou abstraite) capable d’agir sur elle-même et son environnement, disposant d’une représentation partielle de cet environnement, pouvant communiquer avec d ’autre agents et dont le comportement est la conséquence de ses observations, de sa connaissance et des interactions avec les autres agents. J. Ferber et G. Ghallab, 88

Page 7: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Agent : une entité intelligente, agissant rationnellement et intentionnellement, en fonction de ses buts propres et de l’état actuel de sa connaissance.

Y. Demazeau & J.P. Müller, 90

Un agent est un système informatique situé dans un certain environnement et qui est capable d’accomplir des actions autonomes pour atteindre certains de ses objectifs de conception

Définition d’Agents

Deux dimensions J. Erceau & J. Ferber, 91

Deux dimensions J. Erceau & J. Ferber, 91

SocialeSocialeIndividuelleIndividuelle

Page 8: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Définition d'agent:définition d'un système multi-agent :a) C'est un groupe de personne ayant une tache bien définie, coopérant pour la résolution d'un problème global.

b) Un système multi-agent est un ensemble d'agents interagissant dans un environnement commun.

Page 9: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Un système multi-agents est un système qui consiste de plusieurs agents, qui interagissent entre eux En général, les agents vont agir de la part

des utilisateurs, avec différents buts et motivations

Pour interagir avec sont échec , ils devront avoir la capacité de.. coopérer, se coordonner, négocier entre eux,

a peu près comme les personnes

Définition d’Agents Systèmes multi-agents

Page 10: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Définition d’Agents Un agent est un système informatique situé dans un certain environnement et qui est capable d’accomplir des actions autonomes pour atteindre certains de ses objectifs de conception

• Agent, pas agent intelligent • Types d’environnements

Page 11: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Définition d’Agents Définition de l’autonomie : les agents sont capables d’intervenir sans interventions humaines ou intervention d’autres systèmes. Les agents ont le contrôle sur leurs propres états internes et sur leurs comportements. Les agents ont une capacité d’autonomie plus large que les objets.

Page 12: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Autonomie naturelle Autonomie d’un système comme une

organisation des processus permettant au système de se maintenir lui-même

Autonomie artificielle Autonomie comme la capacité d’exploiter les

circonstances actuelles pour servir son objectif

Définition d’Agents :Autonomie

Page 13: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Définition d’Agents Action Output -Action est générée pour modifier l’environnement  -Pas de contrôle total sur l’environnement : contrôle partiel

Senseur inputLes percepts représentent l’information sensible obtenue par perception de l’environnement. Cette information est généralement le résultat d’un travaild’élaboration effectué par des capteurs et des systèmes de prétraitements que nous n’étudierons pas

Page 14: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Définition d’Agents Agent Même si une action est exécutée deux fois, dans des circonstances différentes en apparence, elle peut avoir des effets différents ou bien peut échouer à avoir l’effet désiré.

L’agent doit être préparé pour la possibilité d’échec de son action : environnements non déterministes.

Normalement, un agent doit avoir un répertoire d’actions disponibles. Cet ensemble d’actions possibles représente les capacités de l’agent (effectoric capability).

N.B : les actions ne sont pas toutes applicables dans toutes les situations.

Page 15: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Définition d’Agents Exemples: Soulever une table ; Acheter une Mercedes Les actions ont des pré-conditions associées qui définissent les situations possibles pour appliquer ces actions.  Le problème clé que doit résoudre un agent est de décider quelles actions il doit exécuter pour mieux satisfaire ses objectifs.

Page 16: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Définition d’Agents Les architectures d’agents sont des architectures logicielles pour des systèmes de prises de décision qui sont embarqués dans un environnement.  La complexité du processus de prise de décision est liée à un certains nombre de propriétés de l’environnement.

Page 17: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Définition d’Agents Les agents sont des systèmes informatiques, capables d’effectuer des actions autonomes dans un certain environnement pour atteindre certains objectifs.

Page 18: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Définition d’Agents Un agent doit donc : observer son environnement (par des capteurs physiques dans le cas d’agents situés dans un monde réel ou des capteurs logiciels pour des agents logiciels), et  avoir un répertoire d’actions qui peuvent être exécutées pour modifier l’environnement qui répond d’une manière non déterministe à l’exécution de ses actions.

Page 19: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Les Agents IntelligentsUn agent intelligent est un agent qui possède une autonomie d’action flexible pour atteindre ses objectifs . Flexibilité ?•  Réactif : capacité de percevoir

l’environnement et de répondre à temps aux changements qui peuvent affecter l’environnement.

•  Pro-actif : comportement orienté objectifs en prenant des initiatives

•  Social : capacité d’interaction avec les autres agents

Page 20: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Réactivité et Pro-activité Procédure en Pascal, fonction en C, ou méthode en Java….Hypothèses (Pré-conditions) • Effets qu’elle a si les hypothèses sont valides

(post-conditions). Les effets sont les objectifs • Si les pré-conditions sont vraies lorsque la

procédure est invoquée, alors on s’attend à ce que la procédure s’exécute correctement : c’est-à-dire qu’elle se termine et après terminaison, la post-condition devient vraie (l’objectif est atteint).

Page 21: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Réactivité et Pro-activité • Ceci est un comportement orienté objectif :

la procédure est simplement un plan ou une recette pour atteindre l’objectif.

• Ce modèle est correct pour plusieurs environnements. Par exemple dans le cas des systèmes fonctionnels : prendre une entrée x et produire une sortie f(x) fonction de cette entrée.

 

• Mais pour les systèmes non fonctionnels, ce modèle simple de programmation orienté objectif n’est pas acceptable à cause de certaines hypothèses limitatives :

Page 22: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Réactivité et Pro-activité 1. l’environnement ne change pas durant

l’exécution de la procédure. Si l’environnement change et, en particulier, si les pré-conditions de la procédure en exécution deviennent fausses, alors le comportement de la procédure n’est pas défini et, souvent, la procédure s’implante.

 

2. L’objectif (la raison de l’exécution de la procédure) reste valide, au moins jusqu’à la fin de l’exécution de la procédure. Si l’objectif ne reste pas valide, alors il n’ y a aucune raison de continuer à exécuter la procédure.

Page 23: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Réactivité et Pro-activité Dans plusieurs environnements, aucune de ces hypothèses n’est valide. En particulier dans des domaines très complexes à complètement observer qui sont, soit des environnements multi-agents (plusieurs agents qui peuvent changer l’environnement) ou il y’a présence d’incertitude dans l’environnement.  Dans ce genre d’environnement, exécuter une procédure d’une manière aveugle, sans considérer si les hypothèses sont valides est une mauvaise stratégie.

Page 24: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Réactivité et Pro-activité Dans ce genre d’environnements dynamiques, un agent doit être réactif. C’est-à-dire qu’il doit réagir aux évènements qui arrivent dans l’environnement et qui altèrent soit les objectifs de l’agent ou les hypothèses relatives à l’exécution de la procédure par l’agent pour atteindre ses objectifs.  En effet, construire des systèmes purement orientés objectifs ou purement réactifs n’est pas difficile. Par contre, ce qui est difficile à construire ce sont les systèmes qui font un équilibre entre un comportement orienté objectif et un comportement réactif.

Page 25: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Réactivité et Pro-activité Problème d’intégration d’un comportement orienté objectif et d’un comportement réactif.

Page 26: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Capacité Sociale : (coopération et négociation) 

Non pas en termes d’échange d’informations.  Dans le vie courante, très peu d’objectifs peuvent être atteints sans la coopération d’autres personnes qui ne partagent pas nécessairement les mêmes objectifs : c’est-à-dire qu’ils sont eux même autonomes avec leurs propres agendas.

Page 27: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Capacité Sociale : (coopération et négociation)

Il faut donc négocier et coopérer avec les autres.  On peut être obligés à comprendre et raisonner sur les objectifs des autres et exécuter des actions (payer les autres acteurs par exemple) pour les amener à coopérer avec nous et atteindre nos objectifs.

Page 28: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Agents et Objets

Est-ce que les agents sont juste des objets avec un nom différent ?

Objet : entités informatiques qui :

o Encapsule un certain état( propriété )o Communiquent par envoi de message o capables d’exécuter des actions ou méthodes

sur cet état

Page 29: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Agents et Objets

Un agent comme un objet , encapsulent un certain état et un comportement Mais l’agent a le contrôle sur son comportement; un objet n’a le contrôle que sur son étatl’agent exerce ce contrôle de différentes manières• réactif dirige par les buts• social Un sma a plusieurs flux de contrôle

alors qu’un système a objets n’apriori qu’ un seul flux de contrôle

Les agents sont actifs : Un SMA est par nature multi-process (multi-thread): chaque agent est supposé avoir au moins un process de contrôle actif.

Page 30: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Différences : 1.Degré d’autonomie des objets et des agents

les agents ont une forte notion d'autonomie, et ils peuvent décider par eux-mêmes s'ils vont entreprendre ou pas une action requise par un autre agent

Les objets peuvent avoir contrôle sur leurs propres états internes

Page 31: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Différences : 1.Degré d’autonomie des objets et des agents

Exemple •En JAVA, on peut déclarer des variables (ou des méthodes) privées : accessibles uniquement de l’intérieur de l’objet. •On peut aussi les déclarer comme Publiques : accessibles de n’importe où. On doit recourir à cette forme pour que les autres objets puissent les utiliser.

Style de Programmation pauvre.

Page 32: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Différences : 1.Degré d’autonomie des objets et des agents

Un objet a une autonomie sur son propre état : il a un contrôle sur cet état.

Mais un objet n’a pas de contrôle sur son propre comportement.

Exemple Si une méthode m est rendue disponible pour d’autres objets, alors ils peuvent l'utiliser quand ils veulent.

L’objet n’aura donc pas de contrôle si une méthode est exécutée ou non. Les objets sont donc supposés partager le même objectif

Page 33: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Différences : Dans plusieurs systèmes multi-agents, on ne peut pas supposer qu’on a un objectif commun. On ne peut pas assurer qu’un agent I va exécuter une action (méthode) a uniquement parce que un autre agent J l’a demandée. L’exécution de la méthode a, peut ne pas être dans le meilleur intérêt

On peut donc considérer que les agents n’invoquent pas des méthodes de chacun d’entre eux, mais plutôt demander l’exécution d’actions.

Page 34: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Différences : L’aspect de contrôle par rapport à la décision qui devrait exécuter l’action est différent pour les systèmes orientés agents et les systèmes orientés objets.

• Dans le cas de l’orienté objet, la décision dépend de l’objet qui invoque la méthode.

• Par contre, dans le cas de l’orienté agent, la décision dépend de l’agent qui reçoit la requête.

L’agent le fait pour de l’argent, l’objet le fait gratuitement

Page 35: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Différences :

Mais ceci ne nous interdit pas de construire des agents en utilisant les techniques de l’orienté objet. Par exemple, on peut construire une prise de décision concernant l’exécution ou non d’une méthode, à l’intérieur de la méthode elle même. Par conséquent, on peut atteindre une plus grande autonomie pour les objets. Mais ceci n’est pas une composante du modèle orienté objet de base.

Page 36: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Différences : 2. La deuxième importante distinction

entre l’objet et l’agent est la notion de comportement autonome

-flexibilité (réactive, pro-active, social).-

Les agents sont intelligents : Capables de comportement flexible (réactifs, proactifs, sociaux).

Les systèmes orientés objets standards n’ont aucune notion sur comment intégrer ces trois types de comportement.

Page 37: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Différences : 3. La troisième différence est que dans le cas

de systèmes orientés agents,

• chaque agent est supposé avoir son propre chemin de contrôle.

• Par contre, dans les systèmes orientés objets, il y’ a un seule orientation.

Page 38: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Différences : • Beaucoup de travaux ont été menés relatifs

à la programmation orientée objet concurrente. Java possède des constructeurs pour la programmation multi-thread (à direction multiple). Il y’ a aussi des langages de programmation (prototypes) qui autorisent la programmation orientée objet concurrente. Mais ces langages ne supportent pas l’idée des entités agents autonomes.

• La notion la plus proche de la communauté orientée objet est celle des objets actifs

Page 39: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Différences : • Un objet est dit actif s’il possède son propre

chemin de contrôle. Les objets actifs sont généralement autonomes, c’est-à-dire qu’ils peuvent avoir un certain comportement sans qu’ils soient guidés par un autre objet.

• Les objets passifs, par contre, ne peuvent avoir un changement d’état sauf s’ils subissent explicitement une action.

• On peut dire que les objets actifs sont des agents qui n’ont pas nécessairement un comportement autonome flexible.

Page 40: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Agents et systèmes experts Différences avec les agents

1.Un SE n’interagit pas directement avec un environnement. Ils n’obtiennent pas des informations à travers des capteurs, mais à travers un utilisateur agissant comme intermédiaire.

2.Un SE expert n’agit sur aucun environnement, mais donne un feedback ou un conseil à une troisième partie

3.En général, un SE n’est pas supposé de coopérer avec d’autres agents (sauf certains SE temps réels comme ARCHON)

Page 41: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Application des SMA :a) Résolution distribuée de problème:Concerne toutes les situations dans lesquelles les agents logiciels(sans structure physique) accomplissent des taches utiles aux humains.L'expertise est distribuése mais le domaine ne l'est pas.Décomposition de taches complèxes en fonction des compétences.Diagnostic médical, conception de produit.

Page 42: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Application des SMA :b) Robotique mobile:Plusieurs robots qui coopèrent pour accomplir une mission.

Page 43: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

VII. Application des SMA :c)Robotique et productique distribuée:Intégration: Faire inter-opérer des logiciels avec des humains et des systèmes mécaniques.Contrôle d'un système automatisé de production.Commerce élèctronique: processus d'achat avec négociation complèxes, enchères, contrats...Recherche et filtrage d'information sur le web:organiser un voyage : billeterie, hôtel, circuit touristique.

Page 44: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012
Page 45: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Quelques systèmes multi-agents :1.Applications industrielles :

Supervision de processus : ARCHON, 95. Production industrielles: TAMS,87. Contrôle de trafic aerien: OASIS,96. Situation de foules: MASSIVE, 2004.

2.Application commerciales:Gestion de l'information sur le web: MAXIM, 94. Commerce élèctronique:KASBAH, 96. Processus administratif: ADEPT, 96.

3.Application médicale:Surveillance de malades:GUARDIAN, 89.

Page 46: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

MASSIVE

Page 47: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

MASSIVE creation d’effets spéciaux de films

Page 48: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

MASSIVE creation d’effets spéciaux de films

Page 49: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

MASSIVE creation d’effets spéciaux de films

Page 50: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

MASSIVE creation d’effets spéciaux de films

Page 51: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

MASSIVE La simulation de systémes complexe

Page 52: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

MASSIVE La simulation de systémes complexe

Page 53: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

MASSIVE La simulation de systémes complexe

Page 54: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

MASSIVE

Page 55: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

MASSIVE Les jeux video intelligence des caractères)

Page 56: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Mouvements de foules

simulation rituals of hajj and umrah

Page 57: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Modélisation du flux des pèlerin à la mecque pour le hajj

Page 58: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Nasa deep spaceLes agents (et leur instanciation physiques en robots) ont un rôle à jouer dans les situations à hauts-risques, non-adaptées ou impossible pour les humains Le degré d'autonomie va différer selon la situation (contrôle humain à distance peut être une alternative, mais pas toujours)

Page 59: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Contrôle de vaisseaux spatiaux Des sondes spatiales autonomes dotées de capacités de prise de décision pour réduire le nombre de Personnel de supervision

Par exemple “Deep Space 1” de la NASA, la première sonde spatiale avec un système de contrôle autonome à base d'agents.

Nasa deep space

http://nmp.nasa.gov/ds1/

Page 60: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

Les jeux video intelligence des caractères)

Page 61: Bases de lIntelligence Artificielle Distribuée Principes de base : des objets aux agents 31-10-2012

“les systèmes autonomes de contrôle du trafic aérien peuvent reconnaître la panne d'un autre système, et coopérer pour repérer et gérer tous les vols affectés.” Systèmes prenant l'initiative lorsque c'est nécessaire Agents coopérants pour résoudre des problèmes qui dépassent les capacités individuelles de tout agentAgents internet Recherchent, planifient, arrangent, achètent, négocient..

Contrôle du trafic aérien