IFT-17586 Intelligence artificielle I Planification Benoît Potvin Département d informatique et de génie logiciel Faculté des sciences et de génie, Université Laval Été 2003 Tourigny, Potvin et Capus (2003) 1 La planific at ion Référenc e G.F. Luger, Art ific ial Int elligenc e. St ruc t ures and St rat egies for Com plex Problem Solving, Addison Wesley, (Mass.), 4e éd., 2002, c h. 7, pp. 284-293. Tourigny, Potvin et Capus (2003) 2 1
La planific at ion Tourigny, Potvin et Capus (2003) 3 : STandford Researc h Inst it ut e Planning Syst em (1971) Représent er et im plém ent er effic ac em ent les opérat ions d un planific at eur Une solut ion au problèm e des sc hém as (IUDPHSUREOHP) Apprent issage Tourigny, Potvin et Capus (2003) 4 2
Opérat eurs Liste P : Élém ent s qui doivent êt re vrais pour que l opérat eur puisse s appliquer opérateur Liste A : élém ent s à Ajout er à l ét at suit e à l applic at ion de l opérat eur Liste S : élém ent s à Supprim er de l ét at suit e à l applic at ion de l opérat eur La liste S spécifie tout ce qui est nécessaire pour satisfaire les axiomes de schémas Tourigny, Potvin et Capus (2003) 5 Ex em ple : Le m onde des bloc s Logique des prédicats 7. ( X) ( Y) (depiler(x,y) ((libre(y) tenir(x)) (sur(x,y) libre(x)))) 8. ( X) ( Y) ( Z) (depiler(y,z) (surtable(x) surtable(x))) 11. ( X) ( Y) ( Z) ( W) (depiler(z,w) (sur (X,Y) (sur(x,y) X \= Z ))) 12. ( X) ( Y) ((tenir(y) ) ( libre(x) libre(x) ) ) sur(x,y) libre(x) depiler(x,y) Ajouter : libre(y) tenir(x) Supprimer : sur(x,y) Tourigny, Potvin et Capus (2003) 6 3
depiler(x,y) deposer(x) P : [, libre(x), sur(x,y)] A : [ tenir(x), libre(y) ] S : [, sur(x,y) ] P : [ tenir(x) ] A : [, surtable(x), libre(x) ] S : [ tenir(x) ]... Tourigny, Potvin et Capus (2003) 7 but : t enir(a), ét at init ial : 1er à gauc he b a surtable(a) sur(b,a) depiler(b,a) b a surtable(a) deposer(b) a ramasser(a) Tourigny, Potvin et Capus (2003) 8 b surtable(a) surtable(b) tenir( ) a b surtable(b) tenir(a) 4
Const ruire un plan Spéc ifier les opérat ions néc essaires pour at t eindre un but Diviser le but en sous-but s et c onst ruire un plan pour les at t eindre Résoudre les sous-but s indépendam m ent peut c auser des problèm es si un sous-but c ont ient une opérat ion qui annule l opérat ion d un aut re sous-but Tourigny, Potvin et Capus (2003) 9 Mac ro-opérat eurs Suit e d opérat eurs perm et t ant d at t eindre un but / un sous-but Sort e de plan / sous-plan List es P, A, S Com m ent représent er effic ac em ent les m ac ro-opérat eurs? Tables t riangle (WULDQJOHWDEOHV) Tourigny, Potvin et Capus (2003) 10 5
Table t riangulaire (7ULDQJOHWDEOH) St ruc t ure de données pour organiser une séquenc e d ac t ions Princ ipe : relier les préc ondit ions d une ac t ion aux post c ondit ions des ac t ions qui la préc èdent Si un plan fonc t ionne, le généraliser et le sauvegarder sous la form e d un m ac ro-opérat eur Tourigny, Potvin et Capus (2003) 11 Table t riangulaire (7ULDQJOHWDEOH) 2SpUDWLRQQ 5DQJpHQ Préconditions de l opération #n &RORQQHQ Postconditions de l opération #n Noyau #n : Si un problème survient, l opération #n ne peut être effectuée que si toutes les préconditions dans le noyau #n sont vérifiées Q Q Q Q QR\DXQ 2SQ 2SQ Q Q Q SODQ Tourigny, Potvin et Capus (2003) 12 2SQ Q 6
But: tenir(a) Plan: GHSLOHUED 2. deposer(b) 3. ramasser(a),, sur(b,a) Postconditions :, sur(b,a) GHSLOHUED Tourigny, Potvin et Capus (2003) 13 But: tenir(a) Plan: 1. depiler(b,a) GHSRVHUE 3. ramasser(a) Postconditions :, surtable(b), sur(b,a) GHSLOHUED GHSRVHUE surtable(b) Tourigny, Potvin et Capus (2003) 14 7
But: tenir(a) Plan: 1. depiler(b,a) 2. deposer(b) UDPDVVHUD, Postconditions : tenir(a) sur(b,a) GHSLOHUED GHSRVHUE surtable(b) tenir(a) Tourigny, Potvin et Capus (2003) 15 UDPDVVHUD Mac ro-opérat ion Généraliser : rem plac er les c onst ant es par des variables Préc ondit ions et post c ondit ions de la m ac ro-opérat ion Postconditions pour la macro-opération Préconditions pour la macro-opération Tourigny, Potvin et Capus (2003) 16 8
Mac ro But: tenir(a) sur(b,a) Postconditions: surtable(b) tenir(a) sur(a,b) GHSLOHU;< tenir(a) GHSRVHU; surtable(a) Tourigny, Potvin et Capus (2003) 17 UDPDVVHU< Apprent issage Généraliser et sauvegarder les plans ayant réussi Réut iliser c es plans dans des sit uat ions sim ilaires Tourigny, Potvin et Capus (2003) 18 9
Généraliser But: tenir(y) sur(x,y) libre(x) Postconditions: surtable(x) libre(x) tenir(y) libre(x) sur(x,y) GHSLOHU;< tenir(x) libre(y) GHSRVHU; surtable(x) libre(x) tenir(y) Tourigny, Potvin et Capus (2003) 19 UDPDVVHU< Avant ages des Mac ros Résoudre effic ac em ent des sous-but s possiblem ent c onflic t uels Apprent issage Lim it es des Mac ros Pert e d une part ie de la sém ant ique Les seules post c ondit ions d une opérat ions sont c elles qui peuvent servir de préc ondit ions à une aut re Croissanc e du nom bre d opérat eurs Tourigny, Potvin et Capus (2003) 20 10
Aut res t ec hniques de planific at ion Planific at ion t éléo-réac t ive ref : Luger, 2002, pp. 293-296 Indépendant du dom aine Mise à profit d agent s Planific at ion à base de m odèle ref : Luger, 2002, pp. 296-299 Ut ilisat ion d un m odèle du c om port em ent du syst èm e fac t eurs : c oût d une opérat ion norm ale, probabilit é qu un ét at soit anorm al Tourigny, Potvin et Capus (2003) 21 11