Πράκτορες πρακτικού συλλογισμού

32
Πράκτορες πρακτικού συλλογισμού

description

Πράκτορες πρακτικού συλλογισμού. Πρακτικός συλλογισμός. Ο συλλογισμός των ανθρώπων βασίζεται ασφαλώς στη λογική αλλά υπάρχουν διάφορες διεργασίες που συμβαίνουν όταν λαμβάνουμε μία απόφαση, πέρα από την επαγωγή, δηλαδή την απόδειξη θεωρημάτων. - PowerPoint PPT Presentation

Transcript of Πράκτορες πρακτικού συλλογισμού

Page 1: Πράκτορες πρακτικού συλλογισμού

Πράκτορες πρακτικού συλλογισμού

Page 2: Πράκτορες πρακτικού συλλογισμού

2

Πρακτικός συλλογισμός

• Ο συλλογισμός των ανθρώπων βασίζεται ασφαλώς στη λογική αλλά υπάρχουν διάφορες διεργασίες που συμβαίνουν όταν λαμβάνουμε μία απόφαση, πέρα από την επαγωγή, δηλαδή την απόδειξη θεωρημάτων.

• Ο πρακτικός συλλογισμός είναι συλλογισμός που προσανατολίζεται στην πράξη, δηλαδή στο να αποφασίσουμε τι να κάνουμε.

– Ο πρακτικός συλλογισμός συνίσταται στο να ζυγίζουμε συγκρουόμενα επιχειρήματα υπέρ και κατά διαφόρων επιλογών δράσης. Τα συγκρουόμενα επιχειρήματα αφορούν τις επιθυμίες, τις αξίες, τις επιδιώξεις, τις πεποιθήσεις ενός πράκτορα (Bratman 1990).

• Πρακτικός συλλογισμός θεωρητικός συλλογισμός. Ο δεύτερος επηρεάζει τις πεποιθήσεις του πράκτορα. Ο πρώτος καθορίζει τις ενέργειες του πράκτορα.

– Σύμφωνα με τον θεωρητικό συλλογισμό, αν πιστεύω ότι όλοι οι άνθρωποι είναι θνητοί, και ότι ο Σωκράτης είναι άνθρωπος, τότε συμπεραίνω ότι και ο Σωκράτης είναι θνητός.

– Σύμφωνα με τον πρακτικό συλλογισμό συμπεραίνω ότι πρέπει να πάρω το τρένο και όχι το λεωφορείο όταν μαθαίνω ότι είναι κλειστή η εθνική οδός.

Page 3: Πράκτορες πρακτικού συλλογισμού

3

Σκέψη και στόχευση

• Ο ανθρώπινος πρακτικός συλλογισμός φαίνεται ότι συνίσταται σε δύο διεργασίες– Αποφασίζουμε τι στόχο θέλουμε να πετύχουμε (διεργασία σκέψης, deliberation).– Αποφασίζουμε πώς θα πετύχουμε το στόχο που επιλέξαμε (διεργασία στόχευσης ή

συλλογισμού μέσων-σκοπού, means-ends reasoning).

• Η διεργασία σκέψης έχει σκοπό να καταλήξει ο πράκτορας (άνθρωπος ή τεχνητός πράκτορας) στην επιλογή κάποιου σκοπού προς επίτευξη (π.χ. επιλογή σκοπού μετά την αποφοίτηση).

• Η διεργασία στόχευσης έχει σκοπό να καταστρώσει ο πράκτορας ένα σχέδιο δράσης για να πετύχει το στόχο που έθεσε σαν αποτέλεσμα της διεργασίας σκέψης (π.χ. αν έχω επιλέξει να βρω δουλειά μετά την αποφοίτηση, η διεργασία στόχευσης επιστρέφει ένα σχέδιο, π.χ. να δω τις αγγελίες, να κάνω αιτήσεις, να πάω σε συνεντεύξεις, κλπ).

Page 4: Πράκτορες πρακτικού συλλογισμού

4

Υπολογιστικοί περιορισμοί για τις διεργασίες σκέψης και στόχευσης

• Ένας πράκτορας (άνθρωπος ή τεχνητός πράκτορας) εκτελεί τις διεργασίες σκέψης και στόχευσης με πεπερασμένους πόρους μνήμης και (υπολογιστικού) χρόνου.

• Η ικανότητα του πράκτορα να πετύχει στο περιβάλλον του καθορίζεται εν μέρει από την ικανότητά του να χρησιμοποιήσει αποτελεσματικά τους διαθέσιμους πόρους. Ο πράκτορας πρέπει να ελέγχει αποτελεσματικά το μηχανισμό συλλογισμού του.

• Οι πράκτορες δεν μπορούν να σκέφτονται επ’άπειρο. Κάποια στιγμή θα πρέπει η διεργασία σκέψης να τελειώσει και ο πράκτορας να έχει επιλέξει κάποιο στόχο προς επίτευξη. Ο στόχος αυτός ίσως δεν είναι ο βέλτιστος, δηλαδή αν ο πράκτορας είχε περισσότερο χρόνο στη διάθεσή του για σκέψη, τότε μπορεί να επέλεγε καλύτερο στόχο.

• Οι στόχοι τους οποίους επιλέγει ένας πράκτορας με την ολοκλήρωση της διεργασίας σκέψης λέγονται προθέσεις (intentions).

Page 5: Πράκτορες πρακτικού συλλογισμού

5

Προθέσεις στον πρακτικό συλλογισμό

• Οι προθέσεις αφορούν καταστάσεις που θέλει ένας πράκτορας να πετύχει στο μέλλον. Αποτέλεσμά τους είναι κάποια δράση εκ μέρους του πράκτορα. Δεν πρέπει να συγχέονται με τις επιθυμίες, οι οποίες χαλαρά χαρακτηρίζουν πιθανή δράση ενός πράκτορα. (π.χ. επιθυμώ να πάω για ψώνια έχω πρόθεση να πάω για ψώνια).

• Οι προθέσεις έχουν διάρκεια, επιμένουν. Αν ειλικρινά ένας πράκτορας που σκέπτεται ορθολογικά έχει μία πρόθεση τότε προσπαθεί να κάνει κάτι προκειμένου να την πετύχει, δεν την εγκαταλείπει αμέσως. Φυσικά ο πράκτορας επιμένει στην πρόθεσή του όσο αυτή φαίνεται δυνατή και όσο υπάρχουν τρόποι δράσης για να την πετύχει.

• Η επιλογή μίας πρόθεσης σε μία χρονική στιγμή περιορίζει τον πρακτικό συλλογισμό του πράκτορα μετά από αυτή τη χρονική στιγμή, δηλαδή ο πράκτορας δεν κάνει επιλογές (προθέσεων ή δράσης) που να είναι ασυνεπείς με την πρόθεσή του.

• Η επιλογή μίας πρόθεσης συνεπάγεται ότι ο πράκτορας πιστεύει ότι η κατάσταση που θέλει να πετύχει είναι δυνατή, δηλαδή πως αν καταστρώσει κατάλληλο σχέδιο δράσης για την πρόθεσή του και το περιβάλλον του είναι συνεργάσιμο, τότε θα την πραγματοποιήσει.

Page 6: Πράκτορες πρακτικού συλλογισμού

6

Η θέση ασυμμετρίας (Bratman 1987)

• Οι πεποιθήσεις και οι προθέσεις ενός πράκτορα αλληλεπιδρούν.

• Ασυνέπεια πρόθεσης-πεποίθησης (intention-belief inconsistency): Ο πράκτορας έχει την πρόθεση να επιφέρει την κατάσταση περιβάλλοντος φ και ταυτόχρονα πιστεύει ότι δεν θα επιφέρει την κατάσταση περιβάλλοντος φ. Αυτό δεν είναι ορθολογικό.

• Μη-πληρότητα πρόθεσης-πεποίθησης (intention-belief incompleteness): Ο πράκτορας έχει την πρόθεση να επιφέρει την κατάσταση περιβάλλοντος φ χωρίς να πιστεύει ότι η φ θα γίνει αληθής. Αυτό είναι αποδεκτό για ορθολογικούς πράκτορες (δηλαδή πράκτορες που αναγνωρίζουν ότι η δράση τους δεν είναι πάντα εγγυημένα επιτυχής).

Page 7: Πράκτορες πρακτικού συλλογισμού

7

BDI μοντέλο πρακτόρων

• Υποθέτουμε ότι ένας πράκτορας έχει στη διάθεσή του μια αναπαράσταση των πεποιθήσεων, προθέσεων και επιθυμιών του. Αυτή η αναπαράσταση μπορεί να είναι συμβολική σε κάποια κατάλληλη λογική.

– Β μεταβλητή που συμβολίζει το σύνολο Bel των πεποιθήσεων του πράκτορα– D μεταβλητή που συμβολίζει το σύνολο Des των επιθυμιών του πράκτορα– Ι μεταβλητή που συμβολίζει το σύνολο Ιnt των προθέσεων του πράκτορα.

• Η διεργασία σκέψης αναπαρίσταται μέσω δύο συναρτήσεων:– Συνάρτηση δημιουργίας επιλογών που με βάση τις τρέχουσες προθέσεις και πεποιθήσεις του

πράκτορα δημιουργεί ένα σύνολο επιθυμιών

options:(Bel) x (Int) (Des)– Συνάρτηση φιλτραρίσματος επιλογών που με βάση τις τρέχουσες πεποιθήσεις, επιθυμίες και

προθέσεις του πράκτορα επιλέγει ως νέες προθέσεις τις καλύτερες από τις επιλογές του (δηλαδή τις καλύτερες από τις τρέχουσες επιθυμίες του)

filter: (Bel) x (Des) x (Int) (Int)• Η αναθεώρηση των πεποιθήσεων του πράκτορα αναπαρίσταται από τη συνάρτηση

brf: (Bel) x Per (Bel)

Page 8: Πράκτορες πρακτικού συλλογισμού

8

Συλλογισμός μέσων-σκοπού (ή διεργασία στόχευσης)

• Συλλογισμός μέσων-σκοπού είναι η διεργασία με την οποία αποφασίζουμε πώς να πετύχουμε ένα σκοπό χρησιμοποιώντας τα διαθέσιμα μέσα, δηλαδή τις ενέργειες που μπορούμε να κάνουμε. Στην ΤΝ είναι γνωστή και ως διεργασία κατάστρωσης σχεδίου δράσης ή σχεδιασμός (planning).

• Ο σχεδιασμός είναι ουσιαστικά αυτόματος προγραμματισμός.

• Ένας πράκτορας σχεδιασμού παίρνει σαν είσοδο – Ένα στόχο (ή μία πρόθεση ή μία εργασία). Αυτό αφορά μία εργασία εκπλήρωσης

ώστε να δημιουργηθεί μία κατάσταση περιβάλλοντος ή μία εργασία συντήρησης ώστε να διατηρηθεί μία κατάσταση περιβάλλοντος.

– Τις τρέχουσες πεποιθήσεις του πράκτορα, οι οποίες αναπαριστούν, σε κάποιο βαθμό, την τρέχουσα κατάσταση περιβάλλοντος.

– Το ρεπερτόριο των ενεργειών που είναι διαθέσιμες στον πράκτορα.

• Και παράγει σαν έξοδο ένα σχέδιο δράσης, δηλαδή μία ακολουθία ενεργειών που, αν εκτελεστούν, το περιβάλλον του πράκτορα θα μεταβεί από την τρέχουσα κατάσταση στην κατάσταση του στόχου.

Page 9: Πράκτορες πρακτικού συλλογισμού

9

Σχεδιασμός στην Τεχνητή Νοημοσύνη

Στόχος/ πεποίθηση/ εργασία

Τρέχουσα κατάσταση/πεποιθήσεις

Ρεπερτόριο πράξεων

Πράκτορας σχεδιασμού

(planner)

Σχέδιο για ικανοποίηση στόχου

Page 10: Πράκτορες πρακτικού συλλογισμού

10

Σχεδιασμός στην Τεχνητή Νοημοσύνη

• Το πρώτο ΥΣ σχεδιασμού ήταν το STRIPS (Fikes & Nilsson 1971). Είχε δύο συστατικά:– Ένα μοντέλο του κόσμου αναπαριστάμενο με προτάσεις κατηγορηματικής λογικής

πρώτης τάξης– Ένα σύνολο από σχήματα ενεργειών που περιγράφουν τις προϋποθέσεις και τα

αποτελέσματα όλων των ενεργειών που είναι διαθέσιμες στο ΥΣ.• Συνήθως οι αλγόριθμοι σχεδιασμού στην ΤΝ δοκιμάζονται στο παράδειγμα

του λεγόμενου κόσμου των κύβων (Blocks world)– Έχουμε 3 ισομεγέθεις κύβους A, B, C, την επιφάνεια ενός τραπεζιού, κι ένα

ρομπότ που μπορεί να σηκώνει και να μεταφέρει έναν κύβο τη φορά. Οι κύβοι μπορεί να είναι τοποθετημένοι στην επιφάνεια του τραπεζιού ή ο ένας πάνω στον άλλο σε διάφορους συνδυασμούς.

– Το ΥΣ σχεδιασμού (ρομπότ) ξεκινά με μια κατάσταση περιβάλλοντος στην οποία οι κύβοι βρίσκονται σε κάποιες θέσεις και προσπαθεί να επιφέρει μία νέα κατάσταση περιβάλλοντος.

Page 11: Πράκτορες πρακτικού συλλογισμού

11

STRIPS και ο κόσμος των κύβων (1)

Αναπαράσταση τρέχουσας κατάστασης περιβάλλοντος:

{Clear(A), On(A,B), OnTable(B), OnTable(C), Clear(C)}

Αναπαράσταση κατάστασης περιβάλλοντος στόχου:

{OnTable(A), OnTable(B), OnTable(C)}

B

A

C

τρέχουσα κατάσταση περιβάλλοντος

B A C

επιθυμητή κατάσταση περιβάλλοντος

Page 12: Πράκτορες πρακτικού συλλογισμού

12

STRIPS και ο κόσμος των κύβων (2)

• Οι ενέργειες αναπαρίστανται με βάση το ακόλουθο σχήμα:– Όνομα της ενέργειας και οι παράμετροί της (αν έχει παράμετρους)– Σύνολο προϋποθέσεων, δηλαδή σύνολο όλων των προτάσεων που πρέπει να είναι

αληθείς για να μπορεί να εκτελεστεί η ενέργεια.– Σύνολο αφαίρεσης, δηλαδή σύνολο όλων των προτάσεων που θα πάψουν να είναι

αληθείς μετά την εκτέλεση της ενέργειας.– Σύνολο πρόσθεσης, δηλαδή σύνολο όλων των προτάσεων που θα γίνουν αληθείς

μετά την εκτέλεση της ενέργειας.

• Η ενέργεια Stack(x, y) συμβαίνει όταν το ρομπότ τοποθετεί το αντικείμενο x πάνω στο αντικείμενο y:Stack(x, y)pre {Clear(y), Holding(x)}del {Clear(y), Holding(x)}add {ArmEmpty, On(x,y)}

Page 13: Πράκτορες πρακτικού συλλογισμού

13

STRIPS και ο κόσμος των κύβων(3)

• Η ενέργεια Unstack(x,y) συμβαίνει όταν το ρομπότ παίρνει το αντικείμενο x από το αντικείμενο y.

• H ενέργεια Pickup(x) συμβαίνει όταν το ρομπότ σηκώνει ένα αντικείμενο x από το τραπέζι.

• Η ενέργεια Putdown(x) συμβαίνει όταν το ρομπότ αφήνει ένα αντικείμενο x πάνω στο τραπέζι.

Page 14: Πράκτορες πρακτικού συλλογισμού

14

Τυπικός ορισμός σχεδιασμού (1)

Το σύνολο των ενεργειών που μπορεί να εκτελέσει ένας πράκτορας είναι σταθερό και πεπερασμένο }a,...,a{Ac n1 .

Κάθε ενέργεια Aca περιγράφεται από μια τριάδα aaa A,D,P όπου o aP είναι το σύνολο των λογικών προτάσεων που χαρακτηρίζουν τις προϋποθέσεις

για την ενέργεια o aD είναι το σύνολο των λογικών προτάσεων που χαρακτηρίζουν ιδιότητες που

γίνονται ψευδείς μετά την εκτέλεση της ενέργειας, και o aA είναι το σύνολο των λογικών προτάσεων που χαρακτηρίζουν ιδιότητες που

γίνονται αληθείς μετά την εκτέλεση της ενέργειας. Το πρόβλημα του σχεδιασμού με βάση το σύνολο ενεργειών Ac περιγράφεται από την

τριάδα ,, , όπου: o Δ είναι το σύνολο των πεποιθήσεων του πράκτορα για την αρχική κατάσταση του

κόσμου, δηλαδή το σύνολο των λογικών προτάσεων που είναι αληθείς αρχικά και χαρακτηρίζουν τον κόσμο.

o }Aca|A,D,P{O aaa είναι σύνολο περιγραφών ενεργειών που περιλαμβάνει όλες τις διαθέσιμες ενέργειες και

o γ είναι το σύνολο των λογικών προτάσεων που περιγράφουν την κατάσταση περιβάλλοντος που στοχεύει να πετύχει ο πράκτορας.

Page 15: Πράκτορες πρακτικού συλλογισμού

15

Τυπικός ορισμός σχεδιασμού (2)

Ένα σχέδιο π είναι μια ακολουθία ενεργειών )a,...,a( m1 όπου Acai . Σε σχέση με ένα πρόβλημα σχεδιασμού <Δ, Ο, γ> ένα σχέδιο π ορίζει μια σειρά από n+1

μοντέλα περιβάλλοντος n,...,, 10 , όπου 0 =Δ και iaiaii A)D\( 1 Ένα σχέδιο π είναι αποδεκτό σε σχέση με ένα πρόβλημα σχεδιασμού <Δ, Ο, γ> αν και μόνο

αν οι προϋποθέσεις για κάθε ενέργεια ικανοποιούνται στο προηγούμενο μοντέλο περιβάλλοντος δηλαδή αν iai P| 1 .

Ένα σχέδιο π είναι σωστό σε σχέση με ένα πρόβλημα σχεδιασμού <Δ, Ο, γ> αν και μόνο αν

o Είναι αποδεκτό και o |n (ο στόχος επιτυγχάνεται στην τελευταία κατάσταση περιβάλλοντος που

δημιουργεί το σχέδιο)

Page 16: Πράκτορες πρακτικού συλλογισμού

16

Συμβολισμός για σχέδια

Έστω ότι ,,, 21 κλπ. συμβολίζουν σχέδια και Plan είναι το σύνολο όλων των σχεδίων με βάση κάποιο σύνολο ενεργειών Ac: pre(π) : η προϋπόθεση του σχεδίου π body(π): το κύριο μέρος ορισμού του π. empty(π) : το σχέδιο π είναι η κενή ακολουθία ενεργειών execute(π) : ρουτίνα που παίρνει σαν είσοδο το σχέδιο π και το εκτελεί χωρίς διακοπή

(δηλαδή εκτελεί κάθε ενέργεια στο κύριο μέρος του με τη σειρά της). head(π) : το σχέδιο που αποτελείται από την πρώτη ενέργεια του π. tail(π): το σχέδιο που αποτελείται από όλες τις ενέργειες του π με τη σειρά τους, εκτός

από την πρώτη. Όπου IntI είναι σύνολο προθέσεων και BelB είναι σύνολο πεποιθήσεων

sound(π, Ι, Β) σημαίνει ότι το σχέδιο π είναι ορθό για τις προθέσεις Ι δεδομένων των πεποιθήσεων Β.

Η ικανότητα στόχευσης ενός πράκτορα αναπαρίσταται από την συνάρτηση

Plan)Ac()Int()Bel(:plan

Page 17: Πράκτορες πρακτικού συλλογισμού

17

Υλοποίηση/κύκλος ενός πρακτικά συλλογιζόμενου πράκτοραAlgorithm: Practical Reasoning Agent Control Loop B B0; I I0; while true do

get next percept p through see function; Bbrf(B,p); Doptions(B,I); Ifilter(B,D,I); πplan(B,I,Ac);

while not (empty(π) or succeeded(I,B) or impossible(I,B)) do αhead(π) execute(α); πtail(π); get next percept p through see function; B brf(B,p); if reconsider(I,B) then Doptions(B,I); Ifilter(B,D,I); end-if if not sound(π,I,B) then πplan(B,I,Ac) end-if end-while end-while

Page 18: Πράκτορες πρακτικού συλλογισμού

18

Δέσμευση του πράκτορα σε σκοπό (πρόθεση)

• Όταν μία επιθυμία/επιλογή του πράκτορα επιλέγεται από τη συνάρτηση filter και γίνεται πρόθεση του πράκτορα, τότε λέμε ότι ο πράκτορας έχει δεσμευτεί σ’αυτή την πρόθεση. Η δέσμευση συνεπάγεται χρονική διάρκεια: όταν μια πρόθεση έχει καθοριστεί δεν μπορεί να την εγκαταλείπουμε αμέσως. Αλλά πόσο πρέπει να επιμένει ένας πράκτορας σε μια πρόθεση; Υπό ποιες συνθήκες μπορεί ο πράκτορας να εγκαταλείψει μια πρόθεσή του;

• Ο μηχανισμός που χρησιμοποιεί ένας πράκτορας για να αποφασίσει πότε και πώς να εγκαταλείψει τις προθέσεις του λέγεται στρατηγική δέσμευσης. Υπάρχουν τρεις τέτοιες στρατηγικές ευρέως συζητημένες:– Τυφλή δέσμευση (ή φανατική δέσμευση): ο πράκτορας διατηρεί μια πρόθεση

μέχρι να πιστέψει ότι αυτή ικανοποιήθηκε. – Στενόμυαλη δέσμευση: ο πράκτορας διατηρεί μια πρόθεση μέχρι να πιστέψει είτε

ότι αυτή εκπληρώθηκε είτε ότι δεν είναι πλέον δυνατό να εκπληρωθεί.– Ανοιχτόμυαλη δέσμευση: ο πράκτορας διατηρεί μια πρόθεση για όσο διάστημα

πιστεύει ότι αυτή είναι δυνατό να εκπληρωθεί.

Page 19: Πράκτορες πρακτικού συλλογισμού

19

Δέσμευση του πράκτορα σε σκοπό (πρόθεση)

• Σύμφωνα με τον αλγόριθμο υλοποίησης, ο πράκτορας διατηρεί (στενόμυαλη) δέσμευση σε μια πρόθεση μέχρι– Να πιστέψει ότι αυτή εκπληρώθηκε ή– Να πιστέψει ότι αυτή δεν είναι δυνατό να εκπληρωθεί ή– Δεν υπάρχει καμία άλλη ενέργεια προς εκτέλεση στο σχέδιό του.

• succeeded(I,B) σημαίνει ότι δοθέντων των πεποιθήσεων Β οι προθέσεις Ι θεωρείται ότι εκπληρώνονται.

• impossible(I,B) σημαίνει ότι δοθέντων των πεποιθήσεων Β οι προθέσεις Ι είναι αδύνατο να εκπληρωθούν.

Page 20: Πράκτορες πρακτικού συλλογισμού

20

Πρέπει να γίνεται αναθεώρηση προθέσεων μετά την εκτέλεση μιας πράξης;

• Μία επιλογή είναι μετά την εκτέλεση κάθε ενέργειας να αναθεωρεί ο πράκτορας τις προθέσεις του. Αυτό συνεπάγεται ότι οι συναρτήσεις options και filter ξαναϋπολογίζονται, πράγμα απαγορευτικό: όσο ο πράκτορας σκέφτεται (που απαιτεί σημαντικό υπολογιστικό χρόνο) το περιβάλλον του αλλάζει κι έτσι οι όποιες επιλογές του πιθανό να είναι άχρηστες μόλις τις κάνει.

• Το δίλημμα:– Ο πράκτορας δεν αναθεωρεί τις προθέσεις του αρκετά συχνά, κι έτσι προσπαθεί να

τις εκπληρώσει ακόμα κι όταν είναι προφανές ότι αυτές δεν είναι δυνατό να εκπληρωθούν ή δεν υπάρχει πια λόγος να εκπληρωθούν

– Ο πράκτορας που συνεχώς αναθεωρεί τις προθέσεις του και ξοδεύει ελάχιστο χρόνο για να ενεργήσει ώστε να τις εκπληρώσει με κίνδυνο να μην τις εκπληρώσει ποτέ.

• Απαιτείται μία «χρυσή τομή» που αναπαρίσταται στον αλγόριθμο υλοποίησης με την Boolean συνάρτηση reconsider(I,B) που γίνεται αληθής όταν ο πράκτορας είναι κατάλληλο να αναθεωρήσει τις προθέσεις του Ι, δοθέντων των πεποιθήσεών του Β.

Page 21: Πράκτορες πρακτικού συλλογισμού

21

Βέλτιστη συμπεριφορά της συνάρτησης reconsider(…)

Περίπτωση Αποφάσισε να σκεφτεί;

Άλλαξε προθέσεις; Θα άλλαζε προθέσεις;

Είναι η reconsider(…) βέλτιστη;

1 Όχι — Όχι Ναι

2 Όχι — Ναι Όχι

3 Ναι Όχι — Όχι

4 Ναι Ναι — Ναι

• Αν υποθέσουμε ότι οι συναρτήσεις σκέψης και σχεδιασμού του πράκτορα συμπεριφέρονται «τέλεια» (πάντα επιλέγεται η «καλύτερη» πρόθεση και το «καλύτερο» σχέδιο) και ότι ο χρόνος που μένει αδρανής ο πράκτορας κοστίζει, τότε η συνάρτηση reconsider(…) συμπεριφέρεται τέλεια αν και μόνο αν όποτε ο πράκτορας επιλέγει να σκεφτεί, αλλάζει προθέσεις. Διαφορετικά, αν ο πράκτορας επιλέγει να σκεφτεί και δεν αλλάζει προθέσεις, τότε ο χρόνος της σκέψης πάει χαμένος. Παρόμοια, αν ο πράκτορας έπρεπε να αλλάξει προθέσεις και δεν το έπραξε, τότε ο χρόνος που προσπαθούσε να εκπληρώσει τις προθέσεις του πάει χαμένος.

Page 22: Πράκτορες πρακτικού συλλογισμού

22

Στρατηγικές αναθεώρησης πρόθεσης (Kinny & Georgeff 1991)

• Έγιναν πειράματα όπου χρησιμοποιήθηκαν δύο στρατηγικές αναθεώρησης:– Τολμηροί πράκτορες, που ποτέ δεν αναθεωρούν τις προθέσεις τους πριν

ολοκληρώσουν την εκτέλεση του τρέχοντος σχεδίου τους.– Επιφυλακτικοί πράκτορες, που αναθεωρούν τις προθέσεις τους μετά την εκτέλεση

κάθε μίας ενέργειας του σχεδίου τους.

• (Αναμενόμενα) αποτελέσματα των πειραμάτων:– Αν το περιβάλλον αλλάζει αργά τότε οι τολμηροί αποδίδουν καλύτερα από τους

επιφυλακτικούς γιατί ενεργούν γρήγορα για την εκπλήρωση των προθέσεών τους και δεν χάνουν χρόνο σε αναθεώρηση.

– Αν το περιβάλλον αλλάζει γρήγορα τότε οι επιφυλακτικοί αποδίδουν καλύτερα γιατί αντιλαμβάνονται πιο έγκαιρα πότε κάποια πρόθεση πρέπει να εγκαταλειφθεί.

Page 23: Πράκτορες πρακτικού συλλογισμού

23

Δέσμευση του πράκτορα σε μέσα (σχέδια)

• Ποια είναι η στρατηγική δέσμευσης στα μέσα (σχέδια);• Στην υλοποίηση του πράκτορα πρακτικού συλλογισμού ένα σχέδιο π

εγκαταλείπεται όταν η συνάρτηση sound(π, I, B) γίνεται ψευδής, δηλαδή όταν το σχέδιο π δεν είναι πλέον ορθό σύμφωνα με τις τρέχουσες πεποιθήσεις και προθέσεις του πράκτορα.

• Σε μία πιο ρεαλιστική υλοποίηση θα πραγματοποιούνταν επιπλέον έλεγχος: είναι το τρέχων σχέδιο το βέλτιστο (π.χ. αυτό με τις λιγότερες πράξεις);

• Κάθε πότε πρέπει να ελέγχουμε αν το τρέχων σχέδιο είναι το βέλτιστο, γνωρίζοντας ότι αυτός ο έλεγχος, καθώς και η πιθανή κατάστρωση νέου σχεδίου, έχουν υπολογιστικό κόστος;

Page 24: Πράκτορες πρακτικού συλλογισμού

24

Το σύστημα PRS (Georgeff & Lansky 1987)

• Η πρώτη αρχιτεκτονική πράκτορα που συμπεριέλαβε το μοντέλο BDI. Έχει εφαρμοστεί σε σύστημα εναέριας κυκλοφορίας (OASIS, αεροδρόμιο Σίδνεϊ), σε σύστημα προσομοίωσης για την Αυστραλιανή πολεμική αεροπορία και σε σύστημα επιχειρηματικών διεργασιών.

ENVIRONMENT

BELIEFS

DESIRES INTENTIONS

PLANS

INTERPRETER

action output

data input from senses

Page 25: Πράκτορες πρακτικού συλλογισμού

25

Σχέδια στο PRS

• Ο πράκτορας δεν κατασκευάζει σχέδια από την αρχή. Του δίδεται βιβλιοθήκη με κάποια έτοιμα σχέδια.

• Κάθε σχέδιο ορίζεται από– Το στόχο που επιτυγχάνει, δηλαδή την κατάσταση περιβάλλοντος που θα είναι

αληθής μετά την ολοκλήρωσή του.– Την προϋπόθεσή του, δηλαδή την κατάσταση περιβάλλοντος που πρέπει να είναι

αληθής για να μπορεί να εκτελεστεί– Το κύριο μέρος του, δηλαδή τις ενέργειες που περιλαμβάνει.

• Στα σχέδια του PRS, το κύριο μέρος δεν είναι μόνο μία ακολουθία από ενέργειες. Μπορεί να περιλαμβάνει: – στόχους, οι οποίοι πρέπει να εκπληρωθούν (με κάποια σειρά πράξεων: σχέδιο)

μόλις φτάσει ο πράκτορας σε εκείνο το σημείο του σχεδίου. Συνεπώς, έχουμε εμφωλευμένα (nested) σχέδια.

– Διάζευξη στόχων («πραγματοποίησε το στόχο φ ή πραγματοποίησε το στόχο ψ»).– Κύκλους («συνέχισε να πραγματοποιείς το στόχο φ μέχρι ο ψ να γίνει αληθής»).

Page 26: Πράκτορες πρακτικού συλλογισμού

26

Σχέδια στο PRS (Jam)

GOALS: ACHIEVE blocks_stacked;

FACTS: // Block1 on Block2 initially so need to clear Block2 before stacking.

FACT ON "Block1" "Block2"; FACT ON "Block2" "Table"; FACT ON "Block3" "Table"; FACT CLEAR "Block1"; FACT CLEAR "Block3"; FACT CLEAR "Table"; FACT initialized "False";

Page 27: Πράκτορες πρακτικού συλλογισμού

27

Σχέδια στο PRS (Jam)

Plan: { NAME: "Top-level plan" DOCUMENTATION:

"Establish Block1 on Block2 on Block3." GOAL:

ACHIEVE blocks_stacked; CONTEXT: BODY:

EXECUTE print "Goal is Block1 on Block2 on Block2 on Table.\n"; EXECUTE print "World Model at start is:\n"; EXECUTE printWorldModel; EXECUTE print "ACHIEVEing Block3 on Table.\n"; ACHIEVE ON "Block3" "Table"; EXECUTE print "ACHIEVEing Block2 on Block3.\n"; ACHIEVE ON "Block2" "Block3"; EXECUTE print "ACHIEVEing Block1 on Block2.\n"; ACHIEVE ON "Block1" "Block2"; EXECUTE print "World Model at end is:\n"; EXECUTE printWorldModel;

}

Page 28: Πράκτορες πρακτικού συλλογισμού

28

Σχέδια στο PRS (Jam)

Plan: { NAME: "Stack blocks that are already clear" GOAL:

ACHIEVE ON $OBJ1 $OBJ2; CONTEXT: BODY:

EXECUTE print "Making sure " $OBJ1 " is clear\n"; ACHIEVE CLEAR $OBJ1; EXECUTE print "Making sure " $OBJ2 " is clear.\n"; ACHIEVE CLEAR $OBJ2; EXECUTE print "Moving " $OBJ1 " on top of " $OBJ2 ".\n"; PERFORM move $OBJ1 $OBJ2;

UTILITY: 10; FAILURE:

EXECUTE print "\n\nStack blocks failed!\n\n"; }

Page 29: Πράκτορες πρακτικού συλλογισμού

29

Σχέδια στο PRS (Jam)

Plan: { NAME: "Clear a block" GOAL:

ACHIEVE CLEAR $OBJ; CONTEXT:

FACT ON $OBJ2 $OBJ; BODY:

EXECUTE print "Clearing " $OBJ2 " from on top of " $OBJ "\n"; EXECUTE print "Moving " $OBJ2 " to table.\n"; ACHIEVE ON $OBJ2 "Table";

EFFECTS: EXECUTE print "CLEAR: Retracting ON " $OBJ2 " " $OBJ "\n"; RETRACT ON $OBJ1 $OBJ;

FAILURE: EXECUTE print "\n\nClearing block " $OBJ " failed!\n\n";

}

Page 30: Πράκτορες πρακτικού συλλογισμού

30

Σχέδια στο PRS (Jam)

Plan: { NAME: "Move a block onto another object" GOAL:

PERFORM move $OBJ1 $OBJ2; CONTEXT:

FACT CLEAR $OBJ1; FACT CLEAR $OBJ2;

BODY: EXECUTE print "Performing low-level move action" EXECUTE print " of " $OBJ1 " to " $OBJ2 ".\n";

EFFECTS: WHEN : TEST (!= $OBJ2 "Table") { EXECUTE print " Retracting CLEAR " $OBJ2 "\n"; RETRACT CLEAR $OBJ2; }; FACT ON $OBJ1 $OBJ3; EXECUTE print " move: Retracting ON " $OBJ1 " " $OBJ3 "\n"; RETRACT ON $OBJ1 $OBJ3; EXECUTE print " move: Asserting CLEAR " $OBJ3 "\n"; ASSERT CLEAR $OBJ3; EXECUTE print " move: Asserting ON " $OBJ1 " " $OBJ2 "\n\n"; ASSERT ON $OBJ1 $OBJ2;

FAILURE: EXECUTE print "\n\nMove failed!\n\n";

}

Page 31: Πράκτορες πρακτικού συλλογισμού

31

Βιβλιογραφία

• Κεφάλαιο 4ο από το βιβλίο του Wooldridge. • Πρακτικός συλλογισμός

M. Bratman, What is intention? In Intentions in Communication, eds. Cohen, Morgan and Pollack, 15—32, MIT Press, 1990.

• Η θέση ασυμμετρίαςM. Bratman, Intention, Plans and Practical Reason, Harvard University Press, 1987.

• STRIPSR. Fikes and N. Nilsson, STRIPS: A new approach to the application of theorem-proving to problem-solving, Artificial Intelligence, 2, 189—208, 1971.

• ΥΣ σχεδιασμούE. Giunchiglia, J. Lee, V. Lifschitz, N. McCain, and H. Turner. Nonmonotonic causal theories. Artificial Intelligence, 153(1–2):49–104, 2004.M. Ghallab, D. Nau and P. Traverso. Automated Planning: Theory and Practice, Morgan Kaufmann, 2004.

• Αρχιτεκτονική BDIM. Georgeff et al, The belief-desire-intention model of agency, In Intelligent Agents V, eds. Muller, Singh and Rao, LNAI 1555, 1-10, Springer, 1999.M. Bratman, D. Israel and M. Pollack, Plans and resource-bounded practical reasoning, Computational Intelligence, 4, 349—355, 1988.

• Στρατηγικές αναθεώρησης προθέσεωνD. Kinny and M. Georgeff, Commitment and effectiveness of situated agents, In Proceedings of IJCAI, 82—88, 1991.

Page 32: Πράκτορες πρακτικού συλλογισμού

32

Βιβλιογραφία

• PRSM. Georgeff and F. Ingrand, Decision-making in an embedded reasoning system, In Proceedings of IJCAI, 972—978, 1989.

• dMARS (υλοποίηση αρχιτεκτονικής BDI)M. d’Inverno et al, A formal specification of dMARS, In Intelligent Agents IV, eds. Rao, Singh and Wooldridge, LNAI 1365, 155-176, Springer, 1997.

• Jam (υλοποίηση αρχιτεκτονικής BDI)M. Huber, Jam: a BDI-theoretic mobile agent architecture, In Proceedings of International Conference on Autonomous Agents, 236—243, 1999.

• AgentSpeak (υλοποίηση αρχιτεκτονικής BDI)R. Bordini, J. Hubner, and M. Wooldridge, Programming Multi-Agent Systems in AgentSpeak using Jason, Wiley, 2007.

• Είδη BDI λογικήςA. Rao, Decision Procedures for propositional linear-time Belief-Desire-Intention logics, In Intelligent Agents II, eds. Wooldridge, Muller and Tambe, LNAI 1037, 33—48, Springer, 1996.A. Haddadi, Communication and Cooperation in Agent Systems, LNAI 1056, Springer, 1996.

• Άλλες αρχιτεκτονικές πρακτόρων πρακτικού συλλογισμού C. Jung, Emergent mental attitudes in layered agents, In Intelligent Agents V, eds. Muller, Singh and Rao, LNAI 1555, Springer, 1999.M. Mora et al, BDI models and systems: reducing the gap, In Intelligent Agents V, eds. Muller, Singh and Rao, LNAI 1555, Springer, 1999.