La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

BIAD Bases de l’Intelligence Artificielle Distribuée

Présentations similaires


Présentation au sujet: "BIAD Bases de l’Intelligence Artificielle Distribuée"— Transcription de la présentation:

1 BIAD Bases de l’Intelligence Artificielle Distribuée
Principes de base : des objets aux agents

2 Introduction Les 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.

3 Introduction Exemples : -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

4 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.

5 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.

6 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

7 Définition d’Agents 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 Deux dimensions J. Erceau & J. Ferber, 91 Sociale Individuelle

8 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.

9 Définition d’Agents Systèmes multi-agents
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

10 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

11 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.

12 Définition d’Agents :Autonomie
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

13 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 input Les percepts représentent l’information sensible obtenue par perception de l’environnement. Cette information est généralement le résultat d’un travail d’élaboration effectué par des capteurs et des systèmes de prétraitements que nous n’étudierons pas

14 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.

15 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.

16 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.

17 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.

18 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.

19 Les Agents Intelligents
Un 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

20 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).

21 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 :

22 Réactivité et Pro-activité
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. 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.

23 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.

24 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.

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

26 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.

27 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.

28 Agents et Objets Est-ce que les agents sont juste des objets avec un nom différent ? Objet : entités informatiques qui : Encapsule un certain état( propriété ) Communiquent par envoi de message capables d’exécuter des actions ou méthodes sur cet état

29 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 état l’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.

30 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

31 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.

32 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

33 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.

34 L’agent le fait pour de l’argent, l’objet le fait gratuitement
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

35 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.

36 -flexibilité (réactive, pro-active, social).-
Différences : 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.

37 Différences : 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.

38 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

39 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.

40 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)

41 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.

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

43 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.

44

45 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.

46 MASSIVE

47 MASSIVE creation d’effets spéciaux de films

48 MASSIVE creation d’effets spéciaux de films

49 MASSIVE creation d’effets spéciaux de films

50 MASSIVE creation d’effets spéciaux de films

51 MASSIVE La simulation de systémes complexe

52 MASSIVE La simulation de systémes complexe

53 MASSIVE La simulation de systémes complexe

54 MASSIVE

55 MASSIVE Les jeux video intelligence des caractères)

56 Mouvements de foules simulation rituals of hajj and umrah

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

58 Nasa deep space Les 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)

59 Nasa deep space 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.

60 Les jeux video intelligence des caractères)

61 Contrôle du trafic aérien
 “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 agent Agents internet  Recherchent, planifient, arrangent, achètent, négocient..


Télécharger ppt "BIAD Bases de l’Intelligence Artificielle Distribuée"

Présentations similaires


Annonces Google