Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parHélène Janin Modifié depuis plus de 10 années
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 = xy ((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 ’ = xy ((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 que e) 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 Résolution de problème
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: Kip 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 1 2 4 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
Un hyper-ensemble : A = {a, {a, b}, A}
A = {a, {a, b}, {{a}, b}, b} Un ensemble : sa représentation: A 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
poser c sur la table a c
44
poser c sur la table c a
45
poser c sur la table c a
46
poser c sur la table c a
47
poser c sur la table c 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
décrit par le séquent : V, H(c), S(c, a) VH(c)B(c)H(a)
51
Actions élémentaires prendre(x) : V, H(x), B(x) T(x)
poser(x) : T(x) VH(x)B(x) oter(x, y) : V, H(x), S(x, y) T(x) H(y) mettre(x, y) : T(x), H(y) V, H(x) S(x, y)
52
preuve T(c) VH(c)B(c) H(a) H(a)
- droite T(c), H(a) VH(c)B(c)H(a) - gauche V, H(c), S(c, a) T(c)H(a) T(c)H(a) VH(c)B(c)H(a) coupure V, H(c), S(c, a) VH(c)B(c)H(a)
53
preuve poser(c) H(a) H(a)
- droite T(c), H(a) VH(c)B(c)H(a) - gauche oter(c, a) T(c)H(a) VH(c)B(c)H(a) coupure V, H(c), S(c, a) VH(c)B(c)H(a)
54
preuve action? On peut extraire une composition d’actions d’une preuve comme on peut extraire un programme d’une preuve (informatique théorique)
55
Encore d’autres problèmes (3)
Les agents peuvent aussi être dans des situations de: Conflit ou rivalité Coopération Négociation En ce cas, la modélisation exige des éléments de Théorie des Jeux
56
Qu’est-ce qu’un jeu? Un ensemble fini de joueurs, N = {1, …, n}
Pour chaque joueur i : un ensemble Ai d’actions, Pour chaque joueur i : une relation <i qui est une relation de préférence sur A1xA2x…xAn, ou bien une fonction ui d’utilité
57
Exemple: les prisonniers
Deux criminels en prison dans des cellules séparées et qui sont interrogés: Si les deux avouent : tous les deux 3 ans de prison, Si l’un des deux avoue seulement : il est libéré mais utilisé comme témoin contre l’autre, qui recevra 4 ans de prison Si aucun n’avoue: déclarés coupables d’un délit mineur, recevront 1 an de prison chacun
58
formalisation N = {1, 2} A1 = A2 = {avouer, ne pas avouer}
u1 : (avouer, avouer) ---> 3 (avouer, ne pas avouer) ---> 0 (ne pas avouer, avouer) ---> 4 (ne pas avouer, ne pas avouer) ---> 1 u2 : (avouer, avouer) ---> 3 (avouer, ne pas avouer) ---> 4 (ne pas avouer, avouer) ---> 0
59
(3, 3) (4, 0) (1, 1) (0, 4) Matrice d’un jeu A avoue n’ avoue pas B
60
Équilibre de Nash Soit a un choix fait par les n joueurs
Soit a[i : x] le choix fait par les n joueurs identique à a sauf que i a finalement choisi l’action x a est un équilibre de Nash si et seulement si pour tout i, pour tout x de Ai, a i a[i : x] Autrement dit: pour chaque joueur i, le choix qu’il fait est préférable à tout autre choix qu’il pourrait faire
61
Retour aux deux prisonniers
Le problème des deux prisonniers a-t-il un équilibre de Nash? Si les deux choisissent d’avouer : chacun pourrait faire un meilleur choix en n’avouant pas! Si les deux choisissent de ne pas avouer : chacun pourrait faire un meilleur choix en avouant! Si l’un avoue et l’autre non, celui qui n’avoue pas ferait un meilleur choix en avouant…
62
Solution minimax Ils peuvent par exemple choisir une solution qui minimise le risque maximum (minimax), autrement dit une solution où l’un choisit une action telle que son risque maximal quand il envisage tous les choix de l’autre soit minimum Ex: du point de vue de A, S’il avoue, si B avoue, il fait 3 ans, si B n’avoue pas, il fait 0, risque maximum : 3 ans S’il n’avoue pas, si B avoue, il fait 4 ans, si B n’avoue pas, il fait 1 an, risque maximum : 4 ans Donc il vaut mieux avouer Ex: du point de vue de B : même raisonnement, D’où leur choix « rationnel » : (avouer, avouer), qui leur coûte seulement une année de prison chacun
63
Jeux de dialogue (1) On peut appliquer la notion de jeu au dialogue :
Un dialogue « réel » comprend plusieurs «sous-jeux » Chaque jeu comporte des règles et donne lieu à des « coups » On passe d’un jeu à un autre quand certaines conditions sont remplies
64
Jeux de dialogue (2) Exemple:
Jeu question-réponse (recherche d’information) Condition d’entrée dans le jeu: WxKifxQ x veut savoir si Q Condition de sortie KifxQ x sait si Q Règles d’inférence et de jeux
65
Jeux de dialogue (3) d’après C. Delord, 1998
WxKifxQ & Bx(PQ) WxKifxP Bx?yQ BxWyKifyQ KifxQ WxKifxQ ?x P : « l’agent x a posé la question P » !x P : « l’agent x asserte P » !yP Bx !yP si y asserte P alors x croit que y asserte P Bx?yQ BxWyKifyQ si x croit que y a posé la question Q, alors x croit que y veut savoir si Q (mise à jour d’état mental) BxByP & Bx P Bx P mise à jour d’état mental WxKifxQ & Bx KifyQ ?xQ engendrement d’un « coup » Bx P Bx P !xP maxime de sincérité
66
Exemple de dialogue Agent x – état mental coup Agent y – état mental
Bx(pq), Bx(qr) ?yr BxWyKifyr, WxKifxr ?xq !?yq WxKifxp ?xp !yp Bxp, Bxq !xq Bxr !xr Agent y – état mental Byp, WyKifyr ByWxKifxq ByWxKifxp Byq Byr
67
Plan du cours Introduction : les logiques non classiques et leurs applications Logique modale Approche syntaxique Approche sémantique Hyper-ensembles et problèmes de circularité Logiques sous-structurelles et planification de l’action Jeux et formalisation du dialogue Etudes d’applications
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.