1 / 67

Logique et Résolution de Problèmes-2 ( Alain LECOMTE)

Logique et Résolution de Problèmes-2 ( Alain LECOMTE). Logiques non classiques et systèmes multi-agents. Logique classique et logiques non classiques. Nombreux sont les problèmes qu’on ne sait pas résoudre dans le cadre classique Le cadre classique est purement «extensionnel »

Download Presentation

Logique et Résolution de Problèmes-2 ( Alain LECOMTE)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Logique et Résolution de Problèmes-2(Alain LECOMTE) Logiques non classiques et systèmes multi-agents

  2. Logique classique et logiques non classiques Nombreux sont les problèmes qu’on ne sait pas résoudre dans le cadre classique • Le cadre classique est purement «extensionnel » • Le cadre classique est «bien ordonné»

  3. L’extensionnalité • Le cadre classique est extensionnel: • Théorème d’extensionnalité: • Soit  une formule complexe de logique des prédicats du premier ordre, soit  une sous-formule de  et soit  une formule. Si  et  sont tautologiquement équivalentes, alors, soit ’ la formule obtenue à partir de  en remplaçant  par ,  et ’ sont tautologiquement équivalentes. • De même: soient deux termes t et t’ ayant la même dénotation, alors si  contient t et si ’ est obtenue à partir de  par remplacement de t par t’, alors  et ’ sont tautologiquement équivalentes.

  4. exemples •  = xy ((z a(x, z)  b(z, y))  r(x, y)) • on a : a(x, z)  b(z, y)  a(x, z)  b(z, y) • donc: • si ’ = xy ((a(x, z)  b(z, y))  r(x, y))   ’ • « le nombre de planètes est égal à 9 » • le carré de 3 est égal à 9 • le carré de 3 est égal au nombre de planètes (substituabilité)

  5. Contextes épistémiques • soit K un opérateur « savoir que » tel que Kip = « l’agent i sait que p » • même si   ’, on peut avoir (Ki  Ki’) • exemple :  : « 2+2 = 4 » ’ : « par tout point extérieur à une droite passe une parallèle à cette droite »

  6. Contextes modaux • Soit «  » un opérateur de nécessité tel que p = « nécessairement p » • Soit  contenant un terme t et soit ’ obtenue en remplaçant dans  t par un terme t’ tel que t = t’ soit vraie, alors il se peut que  et ’ ne soient pas équivalents • par exemple: • «le nombre de planètes = 9 » •  : « le nombre de planètes du système solaire est égal à 9 » • (9 est égal à 9) est vrai (une « vérité analytique ») •  est faux (c’est un « fait contingent »)

  7. W. V. O. Quine • si substituabilité: l’occurrence remplacée est dite « purement référentielle » • sinon: contextes référentiellement opaques • les contextes modaux et les contextes épistémiques sont référentiellement opaques

  8. La circularité • Le cadre classique est « bien ordonné » • Stratification des types : • Cf. Russell, 1902, le paradoxe de l’ensemble des ensembles qui ne se contiennent pas eux-mêmes, ou bien aussi : du barbier • Un prédicat ne s’applique pas à lui-même • ()? • x  x ? • La logique classique est « prédicative » au sens où les arguments doivent toujours pouvoir être évalués avant que ne s’applique à eux un prédicat donné • saisons = {printemps, été, automne, hiver, saisons} n’a pas de sens • Pourtant… cela représente le flux des saisons jusqu’à la fin des temps…

  9. Circularité (suite) • Si on entend par « livre » le contenu informatif qu’un livre contient, le catalogue de la bibliothèque est un livre de la bibliothèque (donc il doit se répertorier lui-même) • Si un tableau existait qui représentât la totalité du monde, il devrait se représenter lui-même • On serait condamné à la partialité? (modèles partiels)

  10. paradoxe de Conway • 5 enfants jouent, à qui on a demandé de surtout ne pas se salir, mais 3 d’entre eux ont reçu sans s’en rendre compte de la boue sur le front. On suppose qu’ils sont très intelligents (!) et ne répondent que quand on leur pose une question. • Le père arrive et dit une première fois : « au moins l’un de vous a de la boue sur le front, est-ce que chacun de vous peut me dire s’il a de la boue sur le front? » • Ils répondent tous « non », évidemment… • Le père redit exactement la même chose… même réponse • Puis le père redit encore une fois la même chose… et là, chaque enfant sali est capable de donner la bonne réponse • Pourquoi?

  11. Paradoxe de Conway (solution) • Par récurrence sur le nombre k d’enfants ayant de la boue sur le front • k = 1 : l’enfant qui a de la boue voit bien que les autres n’en ont pas, il en déduit que c’est lui qui s’est sali • Hypothèse de récurrence : s’il y a k enfants salis, alors chaque enfant sali donne la bonne réponse à la kème formulation de la question • Induction: imaginons qu’il y ait k+1 enfants avec de la boue sur le front, si à la kème formulation de la question, tout le monde répond toujours « non », c’est, d’après l’hypothèse de récurrence que le nombre d’enfants ayant de la boue sur le front est supérieur à k. Comme chaque enfant sal voit bien qu’il y en a exactement k autres que lui qui ont également de la boue sur le front, il en déduit que lui aussi a de la boue sur le front.

  12. Pourquoi ce paradoxe a-t-il un lien avec la circularité? • Ce qui est bizarre : • Le fait que répéter plusieurs fois de suite la même information… change la situation! • Imaginons k>1 : en ce cas, chaque enfant sait qu’au moins un enfant a de la boue sur le front, on pourrait dire : « inutile donc de le leur dire », or le fait de dire cette information change les choses… • Quel est donc le statut de cette information qui est dite ?

  13. Information partagée • En la disant, l’information est rendue publique, elle devient partagée… • Autre exemple : jouer aux cartes avec jeu à découvert et jouer aux cartes avec jeu caché mais en trichant et en regardant le jeu de son voisin… • Premier cas: le joueur A connaît le jeu du joueur B mais le joueur B le sait et le joueur A sait que le joueur B sait qu’il le connaît, et ainsi de suite! • L’information est publique, ou partagée (le joueur A sait que le joueur B sait que le joueur A connaît son jeu etc.) • Deuxième cas: le joueur B ne sait pas que le joueur A connaît son jeu et le joueur A sait que le joueur B ne sait pas qu’il connaît son jeu • L’information est privée

  14. Information partagée (2) • Comment représenter l’information partagée? • Supposons que A, B et C acquièrent à partir d’un évènement e la connaissance partagée d’un fait , alors on a simultanément: • e |=  (l’évènement e est tel que  soit vrai) • e |= A sait e (l’évènement e est tel que A sait quee) • e |= B sait e id • e |= C sait e id

  15. Information partagée (3) • On peut donc caractériser un évènement minimal e comme le plus petit supportant tous ces faits, d’un point de vue ensembliste: • e = {, A sait e,B sait e,C sait e } • Ce qui donne une structure circulaire

  16. Information partagée (4) e = {, A sait e,B sait e,C sait e } e = {, A sait {, A sait e,B sait e,C sait e },B sait e,C sait e } e = {, A sait {, A sait e,B sait e,C sait e },B sait {, A sait e,B sait e,C sait e },C sait {, A sait e,B sait e,C sait e } } etc.

  17. e A sait  B sait C sait

  18. Un domaine d’applications privilégié :les systèmes multi-agents • Un système multi-agents = « un système dans lequel des agents artificiels opèrent collectivement et de façon décentralisée pour accomplir une tâche » • Un agent: • Agit de manière autonome • Interagit avec d’autres • Anticipe et réagit de manière flexible à son environnement • Apprend de ses expériences et s’adapte à son environnement

  19. SMA (suite) • Pas de système central de contrôle • Données et informations décentralisées • Fonctionnement asynchrone (attend qu’une tâche soit finie pour en commencer une autre)

  20. applications • Simulation de phénomènes complexes • Biologie cellulaire • Éthologie • Vie artificielle • Sociologie? • Sciences politiques (politique internationale) • Résolution de problème • Intelligence Artificielle Distribuée • Conception de programmes • Génie logiciel • Jeux vidéo

  21. Plus pratiques… • Robots (cf. robots nettoyeurs) • Contrôle aérien • Satellites artificiels (autonomie) • Processus industriels • Gestion économique • Systèmes et réseaux • Interfaces homme – machine • EIAHD • Internet, e-commerce

  22. IHM • The idea is to move away from the direct manipulation paradigm that has dominated for so long • Agents sit over applications, watching, learning, and eventually doing things without being told – taking the initiative • (MIT Media Lab)

  23. one view • The agent answers the phone, recognises the callers, disturbs you when appropriate, and may even tell a white lie on your behalf. The same agent is well trained in timing, versed in finding opportune moments, and respectful of idiosyncrasies • N. Negroponte, ‘Being Digital’, 1995

  24. Pourquoi la logique? • Modéliser un systèmes d’agents est difficile • On a besoin de le faire: un système doit « fonctionner », c’est-à-dire ne pas avoir de bugs… • Il y a bug si, par exemple, il y a deadlock: • Une action A nécessite une action B qui elle-même nécessite l’action A • Ou bien un but non-A ne peut être atteint que par le biais d’une action B qui entraîne souvent A •  des incohérences peuvent apparaître, qui paralysent le système. • Il faut des outils pour analyser ces incohérences, voire proposer des solutions qui les évitent

  25. Pourquoi la logique? (2) • on utilise des formules de logique des prédicats du premier ordre pour symboliser des actions ou des situations (cf. robots nettoyeurs) • Les agents sont nécessairement amenés à raisonner sur les données qui leur sont fournies • On est amené nécessairement à attribuer aux agents des « états », qui sont comme des états mentaux ou des états cognitifs

  26. pourquoi la logique (3) • Un agent peut croire en la vérité d’une certaine situation • Un agent peut savoir qu’il en est ainsi (parce qu’il l’a appris) • Un agent a des buts et des intentions • De multiples agents entre eux peuvent avoir une connaissance partagée, n’agir que lorsqu’ils ont acquis cette connaissance commune • Certaines situations qui se produisent peuvent être nécessaires ou contingentes, si elles sont nécessaires, elles sont le cas quoiqu’il arrive, si elles sont contingentes, ce n’est que dans certains cas • Des actions peuvent être, dans certaines situations, interdites, permises ou obligatoires • Et surtout le temps intervient: une action A ne peut commencer que lorsqu’une action B est terminée etc.

  27. Logique modale • Ces points font intervenir la logique modale, dite encore logique intensionnelle • Logique aléthique : • Le nécessaire et le possible • Logique déontique : • Le permis et l’interdit • Logique épistémique : • Le su et le cru • Autres variantes : • Logique volitive (le voulu et l’accidentel) • Logique des intentions

  28. Exemples de questions (1) • Est-ce que: • savoir que l’on sait péquivaut àsavoir p? (autrement dit, est-ce que tout savoir est conscient?) • Kp  KKp ? • savoir p et savoir q revient à savoir p & q? • K(p & q)  Kp& Kq ? • savoir p ou savoir q revient à savoir p  q? • K(p  q)  Kp Kq ?

  29. Exemples de questions (2) • Est-ce qu’on peut (doit) admettre que: • x F(x)  x F(x) ? • si tous les x ont nécessairement la propriété F, alors il est nécessaire que tous les x aient la propriété F • si tous les commerçants de ma rue sont nécessairement en faillite, est-ce qu’il est nécessaire que tous les habitants de ma rue soient en faillite? • si de chaque étudiant, je sais qu’il peut réussir, est-ce que je sais que tous les étudiants peuvent réussir? • (je peux ignorer que, au cours de la première phase, j’ai énuméré tous les étudiants)

  30. Exemples de questions (3) • Est-ce qu’on peut (doit) toujours admettre que: • de p et p  q, déduire : q • Si p est nécessaire et si p implique q, alors q est nécessaire • Mais si l’agent i a l’intention de rendre p vraie, même si p implique q, il n’a pas forcément l’intention de rendre q vraie

  31. La reconnaissance des intentions • C’est un problème très important • Exemple: modélisation du contrôle aérien • Deviner les intentions du pilote en interaction avec d’autres pilotes, dans une phase d’approche • Permet aussi d’anticiper sur la suite d’un dialogue homme – machine • Repose sur l’hypothèse que les agents ont un comportement rationnel • Les conséquences ne sont donc pas certaines, elles sont plausibles et révisables (non monotonie)

  32. Enchaînements de modalité • L’agent A sait qu’il est interdit que p • L’agent A sait que si l’agent B croit qu’il est possible que p, alors il lui est interdit de souhaiter que p soit impossible! • Est-il possible de démontrer: • Kip   Bi O p • Si un agent sait que quelque chose est nécéssaire, alors il est impossible qu’il la croit obligatoire

  33. Autres problèmes • Les difficultés de la modélisation font également intervenir : • Des problèmes de circularité • L’action A requiert l’action B mais l’action B requiert l’action A (que faire?) • L’action A est faite dans le but non-G mais elle entraîne souvent G • Ex: on sait que si on va chez le dentiste, on a de grandes chances qu’il nous fasse mal aux dents, mais justement on va chez le dentiste parce qu’on a mal aux dents!

  34. Autres problèmes (2) • Des problèmes de périodicité dans des flux asynchrones • Par exemple : un système est prêt à réagir tant qu’on n’a pas coupé son alimentation, il fonctionne selon une boucle infinie, par exemple: • lire, évaluer, imprimer, lire, évaluer, imprimer etc. quelque chose qu’on a envie d’écrire : interpréter = {lire, évaluer, imprimer, interpréter}

  35. interpréter 2 4 1 3 lire évaluer imprimer

  36. Autres problèmes (3) • Ici, on définit un ensemble (l’ensemble des actions effectuées par un interpréteur) en mettant comme élément de l’ensemble… l’ensemble lui-même (!), ce qui n’est pas permis en logique classique

  37. Autres problèmes (4) • Ceci est analogue au problème suivant : • Soit un système où existent un prédicat de vérité Vr et un prédicat de fausseté Faux • Considérons dans ce système, la proposition p = Vr(p) (« p est vraie ») : pour évaluer p, il faut évaluer p… • La proposition p dit d’elle-même qu’elle est vraie (« je suis vraie ») • p = Vr(Vr(Vr(Vr(p) …))) • Pire : considérons dans ce système, la proposition p = Faux(p), p ne peut être vraie que si p est fausse et réciproquement… • La proposition p dit d’elle-même qu’elle est fausse (je suis fausse) • p = Faux(Faux(Faux(p)…)) • NB : Faux(Faux(p)) a même valeur de vérité que p Faux(Faux(Faux(p))) a la valeur inverse et ainsi de suite • Paradoxe du menteur

  38. Théorie des hyper-ensembles • La théorie des ensembles (Cantor, Zermelo – Fraenkel, Bernays…) est « bien fondée » : • Toute chaîne a1 a2  a3  …  an s’arrête (ie. est finie) • Il y a la place pour une théorie des ensembles où de telles chaînes ne seraient pas nécessairement finies (cycliques ou infinies) : • Ce sont les « hyper-ensembles »

  39. A = {a, {a, b}, {{a}, b}, b} Un ensemble : A sa représentation:  a b Un hyper-ensemble : A = {a, {a, b}, A} A sa représentation:  a b

  40. Encore d’autres problèmes • Planifier un ensemble d’actions, qui: • consomment des ressources, • Ex: pour aller de A à B, un robot doit ouvrir une porte p. Il part de la situation <p fermée>, après son passage, <p fermée> n’existe plus • échangent des données (quand elles arrivent en un endroit L’, elles ne sont plus en, leur lieu d’origine L!), • produisent de nouvelles situations • Ex: le robot peut « produire » la situation nouvelle <p ouverte> • Remarque: ces situations sont toujours transitoires

  41. Encore d’autres problèmes (2) • Ceci pose donc le problème de la représentation de données transitoires • La logique classique travaille sur des formules « éternelles » • La logique linéaire travaille sur des formules qui représentent des ressources • Logiques sous-structurelles • Ex: planification des actions d’un robot

  42. Une action • Produit un changement dans le monde • Utilise des ressources • Se réalise par combinaison d’actions plus élémentaires

  43. c a poser c sur la table

  44. poser c sur la table c a

  45. poser c sur la table c a

  46. c poser c sur la table a

  47. c poser c sur la table a

  48. poser c sur la table a c

  49. Passer de l’état du monde: • main vide (V) • c en haut de pile (donc accessible) (H(c)) • c sur a (S(c, a)) à • main vide • c en haut de pile • c en bas de pile (B(c)) • a en haut de pile

  50. V, H(c), S(c, a)  VH(c)B(c)H(a) décrit par le séquent :

More Related