Σχεδιασµός και δράση στον πραγµατικό κόσµο Planning and Acting in the Real World Ενέργειες µε διάρκεια Init(Σασί(C 1 ) Σασί(C 2 ) Μηχανή(E 1, C 1, 30) Μηχανή(E 2, C 2, 60) Τροχοί(W 1, C 1, 30) Τροχοί(W 2, C2, 15)) Goal(Έτοιµο(C 1 ) Έτοιµο(C 2 )) Action(ΠροσθήκηΜηχανής(e, c), Προϋποθέσεις: Μηχανή(e, c, d ) Σασί(c) ΜηχανήΕντός(c), Επιδράσεις: ΜηχανήΕντός( c ) ιάρκεια( d )) Action(ΠροσθήκηΤροχών(w, c), Προϋποθέσεις: ΜηχανήΕντός(c) Τροχοί(w, c, d) Σασί(c), Επιδράσεις: ΤροχοίΕπί(c) ιάρκεια(d)) Action(Επιθεώρηση(c), Προϋποθέσεις: ΜηχανήΕντός(c) ΤροχοίΕπί(c) Σασί(c), Επιδράσεις: Έτοιµο(c) ιάρκεια(10)) 12-2
Χρονοδιάγραµµα 12-3 Μέθοδος κρίσιµου µονοπατιού Κρίσιµο µονοπάτι Νωρίτερος χρόνος έναρξης, ES Αργότερος χρόνος έναρξης, LS ES(Αρχή) = 0. ES(B) = max A B ES(A) + ιάρκεια(a). LS(Τέλος) = ES(Τέλος). LS(A) = min A B LS(B) - ιάρκεια(a) Εύρεση βέλτιστου χρονοδιαγράµµατος: Γραµµική πολυπλοκότητα 12-4
Ενέργειες µε διάρκεια και πόρους(1/2) Init(Σασί(C 1 ) Σασί(C 2 ) Μηχανή(E 1, C 1, 30) Μηχανή(E 2, C 2, 60) Τροχοί(W 1, C 1, 30) Τροχοί(W 2, C 2, 15) Βαρούλκα(1) ΣταθµοίΤροχών(1) Επιθεωρητές(2)) Goal(Έτοιµο(C 1 ) Έτοιµο(C 2 )) Action(ΠροσθήκηΜηχανής(e, c), Προϋποθέσεις: Μηχανή(e, c, d) Σασί(c) ΜηχανήΕντός(c), Επιδράσεις: ΜηχανήΕντός(c) ιάρκεια(d), Πόροι: Βαρούλκα(1)) Action(ΠροσθήκηΤροχών(w, c), Προϋποθέσεις: ΜηχανήΕντός(c) Τροχοί(w, c, d) Σασί(c), Επιδράσεις: ΤροχοίΕπί(c) ιάρκεια(d), Πόροι: ΣταθµοίΤροχών(1)) Action(Επιθεώρηση(c), Προϋποθέσεις: ΜηχανήΕντός(c) ΤροχοίΕπί(c), Επιδράσεις: Έτοιµο(c) ιάρκεια(10), Πόροι: Επιθεωρητές(1)) 12-5 Ενέργειες µε διάρκεια και πόρους(2/2) Εύρεση βέλτιστου χρονοδιαγράµµατος: NP-δύσκολο πρόβληµα. 12-6
Σχεδιασµός µε ιεραρχικά δίκτυα εργασιών Hierarchical Task Network Planning Αποσύνθεση ενεργειών (1/2) Πρωτογενείς ενέργειες Βιβλιοθήκη πλάνων 12-8
Αποσύνθεση ενεργειών (2/2) Action(ΑγοράΓης, Προϋποθέσεις: Χρήµατα, Επιδράσεις: Γη Χρήµατα) Action(Λήψη ανείου, Προϋποθέσεις: ΚαλήΠίστη, Επιδράσεις: Χρήµατα Υποθήκη) Action(ΧτίσιµοΣπιτιού, Προϋποθέσεις: Γη, Επιδράσεις: Σπίτι) Action(ΛήψηΆδειας, Προϋποθέσεις: Γη, Επιδράσεις: Άδεια) Action(ΠρόσληψηΕργολάβου, Επιδράσεις: Συµβόλαιο) Action(Κατασκευή, Προϋποθέσεις: Άδεια Συµβόλαιο, Επιδράσεις: ΣπίτιΧτισµένο Άδεια) Action(ΠληρωµήΕργολάβου, Προϋποθέσεις: Χρήµατα ΣπίτιΧτισµένο, Επιδράσεις: Χρήµατα Σπίτι Συµβόλαιο) Decompose(ΧτίσιµοΣπιτιού, Plan(Βήµατα: {S 1 : ΛήψηΆδειας, S 2 : ΠρόσληψηΕργολάβου, S 3 : Κατασκευή, S 4 : ΠληρωµήΕργολάβου} ιατάξεις: {Αρχή S 1 S 3 S 4 Τέλος, Αρχή S 2 S 3 }, Σύνδεσµοι: {Αρχή Γη S 1, Αρχή Χ S 4, S 1 S 3, S 2 Σ S 3, S 3 S 4, S 4 Σπί Τέλος, S 4 Τέλος})) 12-9 Αλγόριθµος σχεδιασµού Βασίζεται στο σχεδιασµό µερικής διάταξης Προσοχή στους περιορισµούς διάταξης και τους αιτιολογικούς συνδέσµους. 12-10
και ένα παράδοξο 12-11 Σχεδιασµός και δράση σε µη αιτιοκρατικά πεδία Planning and acting in non-deterministic domains
Περιπτώσεις σχεδιασµού Φραγµένη / Μη φραγµένη απροσδιοριστία Είδη σχεδιασµού: Σχεδιασµός χωρίς αισθητήρες ή σύµµορφος σχεδιασµός Εξαναγκασµός Σχεδιασµός υπό συνθήκη ή σχεδιασµός µε ενδεχόµενα Αισθητήριες ενέργειες Παρακολούθηση εκτέλεσης και επανασχεδιασµός Συνεχής σχεδιασµός Παράδειγµα: Βάψιµο τραπεζιού και καρέκλας 12-13 Σχεδιασµός υπό συνθήκη Conditional Planning
Πλήρως παρατηρήσιµα περιβάλλοντα µε µε αιτιοκρατικές όµως ενέργειες. ιαζευκτικές επιδράσεις Action(Αριστερά, Προϋποθέσεις: Σε, Επιδράσεις: ΣεΑ Σε ) Επιδράσεις υπό συνθήκη Action(Αναρρόφηση, Προϋποθέσεις:, Επιδράσεις: (when ΣεΑ: ΚαθαρόΑ) (when Σε : Καθαρό )) Συνδυασµός Action(Αριστερά, Προϋποθέσεις: Σε, Επιδράσεις: ΣεΑ (ΣεΑ when ΚαθαρόΑ: ΚαθαρόΑ)) 12-15 Υπό συνθήκη πλάνα σε πλήρως παρατηρήσιµα περιβάλλοντα Υπό συνθήκη βήµατα if <έλεγχος> then πλάνο_α else πλάνο_β π.χ. if ΣεΑ ΚαθαρόΑ then εξιά else Αναρρόφηση Πλάνο-λύση: [Αριστερά, if ΣεΑ ΚαθαρόΑ Καθαρό then [] else Αναρρόφηση] Αφήνει βρωµιές όταν µετακινείται σε καθαρή θέση Αφήνει βρωµιές όταν εκτελείται αναρρόφηση σε καθαρό τετράγωνο 12-16
Κυκλικές λύσεις Πλάνα µε βρόχους [L1: Αριστερά, if Σε then L1 else if ΚαθαρόΑ then [] else Αναρρόφηση] Επιπλέον: Η µετακίνηση αριστερά δεν πετυχαίνει πάντα. 12-17 Μερικώς παρατηρήσιµα περιβάλλοντα Καταστάσεις πεποίθησης Καθώςοπράκτοραςφεύγει από ένα τετράγωνο, µπορεί να αφήνει πίσω του σκουπίδια. 12-18
Περιγραφή καταστάσεων πεποίθησης Με απαρίθµηση συνόλων Εκθετικά µεγάλες περιγραφές Περιορισµένη λογική αναπαράσταση, π.χ. µόνο σύζευξη λεκτικών Σε Καθαρό Υπόθεση ανοικτού κόσµου Προτάσεις γνώσης K(Σε ) K(Καθαρό ) Υπόθεση κλειστού κόσµου για τις προτάσεις γνώσης 12-19 Αισθητήριες ενέργειες Αυτόµατη αίσθηση Action(Αριστερά, Προϋποθέσεις: Σε, Επιδράσεις: K(ΣεΑ) K(Σε ) when Καθαρό : K(Καθαρό ) when ΚαθαρόΑ: K(ΚαθαρόΑ) when ΚαθαρόΑ: K( ΚαθαρόΑ)) Ενεργητική αίσθηση Action(ΈλεγξεΒροµιά, Επιδράσεις: when ΣεΑ ΚαθαρόΑ: K(ΚαθαρόΑ) when ΣεΑ ΚαθαρόΑ: K( ΚαθαρόΑ) when Σε Καθαρό : K(Καθαρό ) when Σε Καθαρό : K( Καθαρό )) 12-20
Παρακολούθηση εκτέλεσης και επανασχεδιασµός Execution monitoring and replanning Παρακολούθηση και επανασχεδιασµός Παρακολούθηση ενεργειών Παρακολούθηση πλάνου 12-22
Συνεχής σχεδιασµός Continuous planning Παράδειγµα (1/6) Αρχική κατάσταση Στόχος Επί(C, D) Επί(D, B) Αρχικό πλάνο 12-24
Παράδειγµα (2/6) Πριν την έναρξη εκτέλεσης του πλάνου, κάποιος µετακίνησε τον D πάνω στον Β Νέο πλάνο 12-25 Παράδειγµα (3/6) Επέκταση αιτιολογικού συνδέσµου Το Επί(D,B) µπορεί να υποστηριχθεί από την αρχική κατάσταση. Η ενέργεια Μετακίνηση(D,B) δεν χρειάζεται πλέον. 12-26
Παράδειγµα (4/6) Εκτελείται η ενέργεια Μετακίνηση(C,D), όµως αποτυγχάνει και ο κύβος C τοποθετείται πάνω στον Α Το πλάνο του πράκτορα έχει ως εξής πλέον: 12-27 Παράδειγµα (5/6) Προστίθεται νέα ενέργεια στο πλάνο Οστόχοςαυτήτηφοράεπιτυγχάνεται 12-28
Παράδειγµα (6/6) Η ενέργεια Μετακίνηση(C,D) αφαιρείται από το πλάνο, το οποίο πλέον έχει ως εξής: 12-29 Σφάλµατα πλάνου Απουσία στόχου Ανοικτές προϋποθέσεις Αιτιολογικές συγκρούσεις Πλεονάζουσες ενέργειες Μη εκτελεσθείσα ενέργεια Περιττός ιστορικός στόχος 12-30
Πολυπρακτορικός σχεδιασµός MultiAgent Planning Συνεργατικοί πράκτορες Η µπάλα µπορείναεπιστραφείανακριβώςέναςπαίκτηςβρίσκεται στη σωστή θέση Πράκτορες(A, B) Init(Σε(A, [Αριστερά, ΓραµµήΒάσης]) Σε(B, [ εξιά, ίχτυ]) Πλησιάζει(Μπάλλα, [ εξιά, ΓραµµήΒάσης])) Συµπαίκτης(A, B) Συµπαίκτης(B, A) Goal(Επιστράφηκε(Μπάλλα) Σε(πράκτορας, [x, ίχτυ])) Action(Χτύπηµα(πράκτορας, Μπάλλα), Προϋποθέσεις: Πλησιάζει(Μπάλλα, [x, y]) Σε(πράκτορας, [x, y]) Συµπαίκτης(πράκτορας, συµπαίκτης) Σε(συµπαίκτης, [x, y]) Επιδράσεις: Επιστράφηκε(Μπάλλα)) Action(Μετάβαση(πράκτορας, [x, y]), Προϋποθέσεις: Σε(πράκτορας, [a, b]), Επιδράσεις: Σε(πράκτορας, [x, y]) Σε(πράκτορας, [a, b])) 12-32
Συνδυασµένα πλάνα ύο εναλλακτικές λύσεις: Πλάνο 1: A : [Μετάβαση(A, [ εξιά, ΓραµµήΒάσης]), Χτύπηµα(A, Μπάλλα)] B : [NoOp(B), NoOp(B)]. Πλάνο 2: A : [Μετάβαση(A, [Αριστερά, ίχτυ]), NoOp(A)] B : [Μετάβαση(B, [ εξιά, ΓραµµήΒάσης]), Χτύπηµα(B, Μπάλλα)]. Ανάγκη για συντονισµό 12-33 Πολυσωµατικός σχεδιασµός (1/2) Οσχεδιασµός γίνεται από κεντρικό πράκτορα. Παραδοχή: Όλες οι ενέργειες έχουν ίση διάρκεια Συνδυασµένες ενέργειες NoOp(A), Χτύπηµα(B, Μπάλλα) Πλάνο συνδυασµένων ενεργειών (Πλάνο 2): Μετάβαση(A, [Αριστερά, ίχτυ]), Μετάβαση(B, [ εξιά, ΓραµµήΒάσης]) NoOp(A), Χτύπηµα(B, Μπάλλα) Η χρήση συνδυασµένων ενεργειών είναι αναποδοτική. 12-34
Πολυσωµατικός σχεδιασµός (2/2) Λίστα ταυτόχρονων ενεργειών: Action(Χτύπηµα(A, Μπάλλα), Ταυτόχρονα: Χτύπηµα(B, Μπάλλα) Προϋποθέσεις: Πλησιάζει(Μπάλλα, [x, y]) Σε(A, [x, y]) Επιδράσεις: Επιστράφηκε(Μπάλλα)). Action(Μεταφορά(A, ψυγείο, εδώ, εκεί), Ταυτόχρονα: Μεταφορά(B, ψυγείο, εδώ, εκεί) Προϋποθέσεις: Σε(A, εδώ) Σε(ψυγείο, εδώ) Ψυγείο(ψυγείο) Επιδράσεις: Σε(A, εκεί) Σε(ψυγείο, εκεί) Σε(A, εδώ) Σε(ψυγείο, εδώ)). Σχεδιασµός µερικής διάταξης (POP) µε νέα είδη περιορισµών. 12-35 Μηχανισµοί συντονισµού Ο πολυσωµατικός σχεδιασµός εκτελείται από κάθε πράκτορα, και για όλους τους πράκτορες, ξεχωριστά. Σύµβαση, π.χ. το πρώτο πλάνο Κοινωνικοί νόµοι Επικοινωνία Αναγνώριση πλάνου 12-36
Ανταγωνισµός Αναγνώριση άλλων πρακτόρων Αναγνώριση αλληλεπιδράσεων Αλγόριθµοι: And-Or graph search (για δυαδικά προβλήµατα) Minimax (για προβλήµατα βελτιστοποίησης) Θεωρία Παιγνίων 12-37