1 / 92

Σχεδιασμοσ (Planning )

Σχεδιασμοσ (Planning ). ..και εφαρμογές σε video games!. Ευχαριστίες. Όλες οι διαφάνειες για την ενότητα «Σχεδιασμός Ενεργειών» έχουν γραφτεί από τον Σταύρο Βάσσο ( http://stavros.lostre.org/ ) που δίδασκε αυτό το τμήμα του μαθήματος μέχρι πέρυσι.

vivek
Download Presentation

Σχεδιασμοσ (Planning )

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. Σχεδιασμοσ (Planning) ..και εφαρμογές σε video games!

  2. Ευχαριστίες • Όλες οι διαφάνειες για την ενότητα «Σχεδιασμός Ενεργειών» έχουν γραφτεί από τον Σταύρο Βάσσο (http://stavros.lostre.org/) που δίδασκε αυτό το τμήμα του μαθήματος μέχρι πέρυσι. • Στη φετινή έκδοση, οι διαφάνειες έχουν ελάχιστα τροποποιηθεί από τον διδάσκοντα.

  3. Σχεδιασμός (Planning) • Τυπική περιγραφή ενός προβλήματος σχεδιασμού : • Αρχική κατάσταση • Στόχος • Διαθέσιμες ενέργειες • Τυπική λύση ενός προβλήματος σχεδιασμού: • Μια ακολουθία ενεργειών η οποία όταν εκτελεστεί στην αρχική κατάσταση καταλήγει σε μια κατάσταση που ικανοποιεί το στόχο. • Σχεδιασμός: Η αυτοματοποιημένη εύρεση λύσης.

  4. Τι είναι ένα πρόβλημα σχεδιασμού; • Ας αρχίσουμε με ένα απλό παράδειγμα • The Sokoban puzzle (http://en.wikipedia.org/wiki/Sokoban)

  5. Τι είναι ένα πρόβλημα σχεδιασμού; • Δίνονται: • Αρχική κατάσταση

  6. Τι είναι ένα πρόβλημα σχεδιασμού; • Δίνονται: • Αρχική κατάσταση • Στόχος

  7. Τι είναι ένα πρόβλημα σχεδιασμού; • Δίνονται: • Αρχική κατάσταση • Στόχος • Διαθέσιμες ενέργειες

  8. Τι είναι ένα πρόβλημα σχεδιασμού; • Δίνονται: • Αρχική κατάσταση • Στόχος • Διαθέσιμες ενέργειες • Ζητείται: • Μια ακολουθία ενεργειών που ικανοποιεί το στόχο • Πχ: [Αριστερά,Κάτω,Αριστερά,Πάνω,…]

  9. Τι είναι ένα πρόβλημα σχεδιασμού; • Δίνονται: • Αρχική κατάσταση • Στόχος • Διαθέσιμες ενέργειες • Ζητείται: • Μια ακολουθία ενεργειών που ικανοποιεί το στόχο • Μια μέθοδος που βρίσκει λύση για κάθεαρχική κατάσταση και στόχο

  10. Τι είναι ένα πρόβλημα σχεδιασμού; • Δίνονται: • Αρχική κατάσταση • Στόχος • Διαθέσιμες ενέργειες • Ζητείται: • Μια ακολουθία ενεργειών που ικανοποιεί το στόχο • Μια μέθοδος που βρίσκει λύση για κάθεπεδίο εφαρμογής

  11. Σχεδιασμός: πραγματικές εφαρμογές • Σχεδιασμός μονοπατιών (Path planning) • NASA’s Mars ExplorationRover

  12. Σχεδιασμός: πραγματικές εφαρμογές • Σχεδιασμός μονοπατιών (Path planning) • Video Games!

  13. Σχεδιασμός: πραγματικές εφαρμογές • Σχεδιασμός μονοπατιών (Path planning) • Video Games!

  14. Σχεδιασμός: πραγματικές εφαρμογές • Πολλαπλοί στόχοι και χρονοδρομολόγηση (Scheduling) • Hubble Space Telescope

  15. Σχεδιασμός: πραγματικές εφαρμογές • KIVA Robots: αυτόματη ταξινόμηση παραγγελιών με τη χρήση μετακινούμενωνδιαδρόμων σε αποθήκες. youtube link

  16. Σχεδιασμός: πραγματικές εφαρμογές • Πράκτορες με δυνατότητες σχεδιασμού για τον καθορισμό της γενικότερης συμπεριφοράς τους(Proactive Agents/Cognitive Robots) • UAVs, DARPA Grand/Urban Challenge, Honda ASIMO

  17. Κλασικός σχεδιασμός (Classical planning) • Υποθέσεις: το περιβάλλον είναι πλήρως παρατηρήσιμο, αιτιοκρατικό, στατικό και διακριτό. • Τυπική περιγραφή του προβλήματος: • Αρχική κατάσταση • Στόχος • Διαθέσιμες ενέργειες

  18. Τι θα δούμε στα επόμενα μαθήματα • Ενότητα 11.1: Απλές γλώσσες αναπαράστασης προβλημάτων σχεδιασμού με βάση τη STRIPS • Ενότητα 11.2: Προς τα εμπρός αναζήτηση, προς τα πίσω αναζήτηση, ευρετικοί μηχανισμοί • Ενότητα 11.4: Γραφήματα σχεδιασμού • Ανάπτυξη AI για χαρακτήρες (Non-Player Characters) και εφαρμογές σχεδιασμού σε video games • Άλλες τεχνικές σχεδιασμού επιγραμματικά • Σχεδιασμός με λογική, Ιεραρχικά δίκτυα εργασιών, Υπο συνθήκη σχεδιασμός, Εισαγωγή στη γλώσσα ανάπτυξης πρακτόρων Golog, ... • Planning Domain Description Language (PDDL) • Χρήση ενός award-winning planner

  19. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Παράδειγμα από τον κόσμο των κύβων (Blocks world) • Αρχική κατάσταση:s0 • Στόχος:g • Διαθέσιμες ενέργειες: μετακίνησηενός κύβου • από το τραπέζι στην κορυφή μιας στοίβας κύβων • από την κορυφή μιας στοίβας κύβων στο τραπέζι • από την κορυφή μιας στοίβας κύβων σε μια άλλη στοίβα κύβων Α Β Β Γ Γ Α s0 g

  20. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Αρχική κατάσταση • Αναπαράσταση των ιδιοτήτων της κατάστασης με λεκτικά πρώτης τάξης (first order logic literals) • Λεκτικά για τον κόσμο των κύβων • Επί(b,x): • το b βρίσκεται πάνω από το x, όπου x κάποιος άλλος κύβος ή το τραπέζι • Καθαρό(x): • το x είναι ελεύθερο για να τοποθετηθεί πάνω του ένας κύβος Β Γ Α Επί(Α,Τραπέζι) Επί(Β,Τραπέζι) Επί(Γ,Τραπέζι) Καθαρό(Α) Καθαρό(Β) Καθαρό(Γ) s0

  21. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Αρχική κατάσταση • Αναπαράσταση των ιδιοτήτων της αρχικής κατάστασης με λεκτικά πρώτης τάξης (first order logic literals) • Βασικά (ground) και χωρίς συναρτήσεις (function-free) • Πλήρως ορισμένη κατάσταση με βάσητην υπόθεση κλειστού κόσμου (closed-world assumption) Β Γ Α Επί(Α,Τραπέζι) Επί(Β,Τραπέζι) Επί(Γ,Τραπέζι) Καθαρό(Α) Καθαρό(Β) Καθαρό(Γ) s0

  22. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Αρχική κατάσταση • Υπόθεση κλειστού κόσμου (closed-world assumption) • Οι συνθήκες που δεν αναφέρονται στην περιγραφή της κατάστασης θεωρούνται ότι είναι ψευδείς. Επί(Α,Α) Επί(Α,Β) Επί(Α,Γ) Επί(Β,Α) Επί(Β,Β) Επί(Β,Γ) Επί(Γ,Α) Επί(Γ,Β) Επί(Γ,Γ) Επί(Α,Α) Επί(Α,Β) Επί(Α,Γ) Επί(Τραπέζι,Α) Επί(Τραπέζι,Β) Επί(Τραπέζι,Γ) Επί(Τραπέζι,Τραπ) Καθαρό(Τραπέζι) Β Γ Α Επί(Α,Τραπέζι) Επί(Β,Τραπέζι) Επί(Γ,Τραπέζι) Καθαρό(Α) Καθαρό(Β) Καθαρό(Γ) s0

  23. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Στόχος • Αναπαράσταση των ιδιοτήτων της τελικής κατάστασης με λεκτικά πρώτης τάξης (first order logic literals) • Βασικά (ground) και χωρίς συναρτήσεις (function-free) • Μερικώς καθορισμένη κατάσταση:Μια κατάστασηsικανοποιεί τον στόχο gαν περιέχει όλα τα λεκτικά του g (και πιθανώς και άλλα επιπλέον λεκτικά) Α Β Γ Επί(Α,Β) Επί(Β,Γ) g

  24. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Η αρχική κατάσταση και ο στόχος του σχεδιασμού περιγράφονται με λεκτικά τα οποία είναι: • βασικά • χωρίς συναρτήσεις • θετικά • *(εννοείται η σύζευξη των λεκτικών) Α Β Β Γ Γ Α Επί(Α,Τραπέζι) Επί(Β,Τραπέζι) Επί(Γ,Τραπέζι) Καθαρό(Α) Καθαρό(Β) Καθαρό(Γ) Επί(Α,Β) Επί(Β,Γ) s0 g

  25. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Διαθέσιμες ενέργειες • από το τραπέζι στην κορυφή μιας στοίβας κύβων • από την κορυφή μιας στοίβας κύβων στο τραπέζι • από την κορυφή μιας στοίβας κύβων σε μια άλλη στοίβα κύβων Β Γ Α Επί(Α,Τραπέζι) Επί(Β,Τραπέζι) Επί(Γ,Τραπέζι) Καθαρό(Α) Καθαρό(Β) Καθαρό(Γ) s0

  26. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Διαθέσιμες ενέργειες • από το τραπέζι στην κορυφή μιας στοίβας κύβων • από την κορυφή μιας στοίβας κύβων στο τραπέζι • από την κορυφή μιας στοίβας κύβων σε μια άλλη στοίβα κύβων Β Β Γ Γ Α Α Επί(Α,Τραπέζι) Επί(Β,Τραπέζι) Επί(Γ,Τραπέζι) Καθαρό(Α) Καθαρό(Β) Καθαρό(Γ) ??? Μετακίνηση(Β,Τραπέζι,Γ) s0 s1

  27. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Για να περιγράψουμε μια διαθέσιμη ενέργεια, χρησιμοποιούμε ένα σχήμα ενεργειών (action schema) το οποίο αποτελείται από τα εξής: • Το όνομα της ενέργειας και τη λίστα παραμέτρων • Προϋποθέσεις (preconditions): λεκτικά που δηλώνουν τι θα πρέπει να αληθεύει ώστε η ενέργεια να είναι εφαρμόσιμη. • Επιδράσεις (effects): λεκτικά που περιγράφουν τον τρόπο με τον οποίο αλλάζει η κατάσταση

  28. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Παράδειγμα από τον κόσμο των κύβων: • Όνομα ενέργειας και λίστα παραμέτρων • Μετακίνηση(b,x,y) • Προϋποθέσεις: • Επί(b,x) • Καθαρό(b) • Καθαρό(y) • Επιδράσεις: • Επί(b,y) • Καθαρό(x) •  Επί(b,x) • Καθαρό(y)

  29. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Πως εφαρμόζεται μια ενέργεια; • Παράδειγμα: Μετακίνηση(b,x,y) • Μια ενέργεια είναι εφαρμόσιμη σε οποιαδήποτε κατάσταση ικανοποιεί τις προυποθέσεις της όπως αυτές προκύπτουν από μια αντικατάσταση των παραμέτρων της από σταθερές που εμφανίζονται στα λεκτικά της κατάστασης Β Γ Α Επί(Α,Τραπέζι) Επί(Β,Τραπέζι) Επί(Γ,Τραπέζι) Καθαρό(Α) Καθαρό(Β) Καθαρό(Γ)

  30. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Παράδειγμα: Για την ενέργεια Μετακίνηση(b,x,y) και την αντικατάσταση { b/Β, x/Τραπέζι,y/Γ } έχουμε: Μετακίνηση(Β,Τραπέζι,Γ) • Προϋποθέσεις: • Επί(Β,Τραπέζι) • Καθαρό(Β) • Καθαρό(Γ) • Επιδράσεις: • Επί(Β,Γ) • Καθαρό(Τραπέζι) •  Επί(Β,Τραπέζι) • Καθαρό(Γ) Β Β Γ Γ Α Α Επί(Α,Τραπέζι) Επί(Β,Τραπέζι) Επί(Γ,Τραπέζι) Καθαρό(Α) Καθαρό(Β) Καθαρό(Γ) ??? οκ! οκ! οκ! Μετακίνηση(Β,Τραπέζι,Γ) s0 s1

  31. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Το αποτέλεσμα της εκτέλεσης μιας εφαρμόσιμης ενέργειας aσε μια κατάσταση s0είναι μια νέα κατάσταση s1η οποία είναι ίδια με την s0με την διαφορά ότι: • τα θετικά λεκτικα που υπάρχουν στις επιδράσεις της aέχουνπροστεθεί στην s0 και • τα αρνητικά λεκτικά που υπάρχουν στις επιδράσεις της aέχουν αφαιρεθεί από την s0 Β Β Γ Γ Α Α Επί(Α,Τραπέζι) Επί(Β,Τραπέζι) Επί(Γ,Τραπέζι) Καθαρό(Α) Καθαρό(Β) Καθαρό(Γ) ???

  32. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Υπόθεση STRIPS: • Τα θετικά λεκτικά που υπάρχουν στην κατάσταση s0 δεν προστίθενται για δεύτερη φορά. • Αν μια αρνητική επίδραση δεν υπάρχει στην κατάσταση s0 αυτή παραβλέπεται. • Αυτή είναι η λύση που δίνει η γλώσσα STRIPS στο πρόβλημα του πλαισίου αναπαράστασης (representational frame problem): • Πως παριστάνουμε τυπικά όλα τα χαρακτηριστικά του κόσμου που δεν αλλάζουν όταν εκτελούμε μια ενέργεια;

  33. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Όλα τα προηγούμενα μας δίνουν ουσιαστικά τη σημασιολογία της γλώσσας STRIPS.

  34. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Παράδειγμα: • Ενέργεια: • Μετακίνηση(Β,Τραπέζι,Γ) • Προϋποθέσεις: • Επί(Β,Τραπέζι) • Καθαρό(Β) • Καθαρό(Γ) • Επιδράσεις: • Επί(Β,Γ) • Καθαρό(Τραπέζι) •  Επί(Β,Τραπέζι) • Καθαρό(Γ) Β Β Γ Γ Α Α Επί(Α,Τραπέζι) Επί(Β,Τραπέζι) Επί(Γ,Τραπέζι) Καθαρό(Α) Καθαρό(Β) Καθαρό(Γ) Επί(Α,Τραπέζι) Επί(Β,Γ) Επί(Γ,Τραπέζι) Καθαρό(Α) Καθαρό(Β) Καθαρό(Τραπ.) - + - + + + Μετακίνηση(Β,Τραπέζι,Γ) - s0 s1 -

  35. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Συνεχίζοντας το παράδειγμα • Ενέργεια: • Μετακίνηση(Γ,Τραπέζι,Α) • Προϋποθέσεις: • Επί(b,x) • Καθαρό(b) • Καθαρό(y) • Επιδράσεις: • Επί(b,y) • Καθαρό(x) •  Επί(b,x) • Καθαρό(y) ??? Β Γ Α Επί(Α,Τραπέζι) Επί(Β,Γ) Επί(Γ,Τραπέζι) Καθαρό(Α) Καθαρό(Β) Καθαρό(Τραπ.) ??? Μετακίνηση(Γ,Τραπέζι,Α) s1 s2

  36. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Η ενέργεια Μετακίνηση(Γ,Τραπέζι,Α) είναι μη εφαρμόσιμη • Προϋποθέσεις: • Επί(Γ,Τραπέζι) • Καθαρό(Γ) • Καθαρό(Α) • Επιδράσεις: • Επί(Γ,Α) • Καθαρό(Τραπέζι) •  Επί(Γ,Τραπέζι) • Καθαρό(Α) ??? Β Γ Α Επί(Α,Τραπέζι) Επί(Β,Γ) Επί(Γ,Τραπέζι) Καθαρό(Α) Καθαρό(Β) Καθαρό(Τραπ.) ??? οκ! Χ οκ! Μετακίνηση(Γ,Τραπέζι,Α) s1 s2

  37. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Η ενέργεια Μετακίνηση(Α,Τραπέζι,Β)είναι εφαρμόσιμη • Προϋποθέσεις: • Επί(Α,Τραπέζι) • Καθαρό(Α) • Καθαρό(Β) • Επιδράσεις: • Επί(Α,Β) • Καθαρό(Τραπέζι) •  Επί(Α,Τραπέζι) • Καθαρό(Β) Α Β Β Γ Γ Α Επί(Α,Τραπέζι) Επί(Β,Γ) Επί(Γ,Τραπέζι) Καθαρό(Α) Καθαρό(Β) Καθαρό(Τραπ.) ??? οκ! οκ! οκ! Μετακίνηση(Α,Τραπέζι,Β) s1 s2

  38. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Αποτέλεσμα της Μετακίνηση(Α,Τραπέζι,Β) • Προϋποθέσεις: • Επί(Α,Τραπέζι) • Καθαρό(Α) • Καθαρό(Β) • Επιδράσεις: • Επί(Α,Β) • Καθαρό(Τραπέζι) •  Επί(Α,Τραπέζι) • Καθαρό(Β) Α Β Β Γ Γ Α + - Επί(Α,Τραπέζι) Επί(Β,Γ) Επί(Γ,Τραπέζι) Καθαρό(Α) Καθαρό(Β) Καθαρό(Τραπ.) Επί(Α,Β) Επί(Β,Γ) Επί(Γ,Τραπέζι) Καθαρό(Α) Καθαρό(Τραπ.) - + + + + Μετακίνηση(Α,Τραπέζι,Β) - - s1 s2 - -

  39. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Πότε έχουμε φτάσει στον στόχο μας; • Θυμηθείτε: • Μια κατάστασηsικανοποιεί τον στόχο g αν περιέχει όλα τα λεκτικά του g (και πιθανώς και άλλα επιπλέον λεκτικά).

  40. 11.1 Σχεδιασμός με τη γλώσσα STRIPS Α Β Β Β Γ Γ Γ Α Α Επί(Α,Τραπέζι) Επί(Β,Τραπέζι) Επί(Γ,Τραπέζι) Καθαρό(Α) Καθαρό(Β) Καθαρό(Γ) Επί(Α,Τραπέζι) Επί(Β,Γ) Επί(Γ,Τραπέζι) Καθαρό(Α) Καθαρό(Β) Καθαρό(Τραπ.) Επί(Α,Β) Επί(Β,Γ) Επί(Γ,Τραπέζι) Καθαρό(Α) Καθαρό(Τραπ.) Μετακ.(Β,Τραπέζι,Γ) Μετακ.(Α,Τραπέζι,Β) s0 s1 s2

  41. 11.1 Σχεδιασμός με τη γλώσσα STRIPS Α Α Β Β Β Β Γ Γ Γ Γ Α Α Επί(Α,Τραπέζι) Επί(Β,Τραπέζι) Επί(Γ,Τραπέζι) Καθαρό(Α) Καθαρό(Β) Καθαρό(Γ) Επί(Α,Τραπέζι) Επί(Β,Γ) Επί(Γ,Τραπέζι) Καθαρό(Α) Καθαρό(Β) Καθαρό(Τραπ.) Επί(Α,Β) Επί(Β,Γ) Επί(Γ,Τραπέζι) Καθαρό(Α) Καθαρό(Τραπ.) Επί(Α,Β) Επί(Β,Γ) Μετακ.(Β,Τραπέζι,Γ) Μετακ.(Α,Τραπέζι,Β)  s0 s1 s2 g οκ!

  42. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Το παράδειγμα του κόσμου των κύβων γραμμένο τυπικά σε STRIPS: • Init(Επί(Α,Τραπέζι)  Επί(Β,Τραπέζι)  Επί(Γ,Τραπέζι)  Καθαρό(Α)  Καθαρό(Β)  Καθαρό(Γ)) • Goal(Επί(Α,Β)  Επί(Β,Γ) ) • Action( Μετακίνηση(b,x,y), ΠΡΟΫΠΟΘΕΣΕΙΣ: Επί(b,x)Καθαρό(b)Καθαρό(y) ΕΠΙΔΡΑΣΕΙΣ: Επί(b,y)Καθαρό(x)Επί(b,x)Καθαρό(y) )

  43. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Το προηγούμενο σχήμα ενεργειών έχει τα εξής προβλήματα: • Όταν x=Τραπέζι τότε η ενέργεια έχει επίδραση Καθαρό(Τραπέζι) αλλά το τραπέζι δεν πρέπει να είναι καθαρό. • Όταν y=Τραπέζι τότε η ενέργεια έχει την προυπόθεση Καθαρό (Τραπέζι) αλλά το τραπέζι δεν χρειάζεται να είναι καθαρό για να βάλουμε πάνω του ένα κύβο. • Τα προβλήματα αυτά λύνονται ως εξής: • Εισάγοντας μια άλλη ενέργεια ΜετακίνησηΣτοΤραπέζι(b,x) για την μετακίνηση ενός κύβου b από το x στο τραπέζι. • Αλλάζοντας την ερμηνεία του Καθαρό(b) σε «υπάρχει κενός χώρος στο b για την τοποθέτηση ενός κύβου».

  44. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Νέα έκδοση: • Init(Επί(Α,Τραπέζι)  Επί(Β,Τραπέζι)  Επί(Γ,Τραπέζι)  Καθαρό(Α)  Καθαρό(Β)  Καθαρό(Γ)) • Goal(Επί(Α,Β)  Επί(Β,Γ) ) • Action( Μετακίνηση(b,x,y), ΠΡΟΫΠΟΘΕΣΕΙΣ: Επί(b,x)Καθαρό(b)Καθαρό(y) ΕΠΙΔΡΑΣΕΙΣ: Επί(b,y)Καθαρό(x)Επί(b,x)Καθαρό(y) ) • Action( ΜετακίνησηΣτοΤραπέζι(b,x), ΠΡΟΫΠΟΘΕΣΕΙΣ: Επί(b,x)Καθαρό(b) ΕΠΙΔΡΑΣΕΙΣ: Επί(b,Τραπέζι)Καθαρό(x)Επί(b,x) )

  45. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Με την νέα έκδοση εξακολουθεί να υπάρχει η δυνατότητα χρήσης της ενέργειας Μετακίνηση(b,x,Τραπέζι). • Τα πρόβλημα αυτό λύνεται εισάγοντας ένα νέο κατηγόρημα Κύβος(.) και τις προυποθέσεις Κύβος(b) και Κύβος(y) στην ενέργεια Μετακίνηση.

  46. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Ένα άλλο πρόβλημα που υπάρχει είναι η χρήση «ψευδοενεργειών» π.χ. Μετακίνηση(Β,Γ,Γ). • Το πρόβλημα αυτό λύνεται εισάγοντας περιορισμούς ανισότητας για κάθε ζευγάρι ορισμάτων στις προυποθέσεις των δύο ενεργειών.

  47. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Init(Επί(Α,Τραπέζι)  Επί(Β,Τραπέζι)  Επί(Γ,Τραπέζι)  Καθαρό(Α)  Καθαρό(Β)  Καθαρό(Γ)) • Goal(Επί(Α,Β)  Επί(Β,Γ) ) • Action( Μετακίνηση(b,x,y), ΠΡΟΫΠΟΘΕΣΕΙΣ: Επί(b,x)Καθαρό(b)Καθαρό(y) ΕΠΙΔΡΑΣΕΙΣ: Επί(b,y)Καθαρό(x)Επί(b,x)Καθαρό(y) ) • Action( ΜετακίνησηΣτοΤραπέζι(b,x), ΠΡΟΫΠΟΘΕΣΕΙΣ: Επί(b,x)Καθαρό(b) ΕΠΙΔΡΑΣΕΙΣ: Επί(b,Τραπέζι)Καθαρό(x)Επί(b,x) ) ! Οι μεταβλητές που εμφανίζονται στις προϋποθέσεις και επιδράσεις πρέπει να εμφανίζονται ως ορίσματα της ενέργειας

  48. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Init(Επί(Α,Τραπέζι)  Επί(Β,Τραπέζι)  Επί(Γ,Τραπέζι)  Καθαρό(Α)  Καθαρό(Β)  Καθαρό(Γ)) • Goal(Επί(Α,Β)  Επί(Β,Γ) ) • Action( Μετακίνηση(b,x,y), ΠΡΟΫΠΟΘΕΣΕΙΣ: Επί(b,x)Καθαρό(b)Καθαρό(y) ΕΠΙΔΡΑΣΕΙΣ: Επί(b,y)Καθαρό(x)Επί(b,x)Καθαρό(y) ) • Action( ΜετακίνησηΣτοΤραπέζι(b,x), ΠΡΟΫΠΟΘΕΣΕΙΣ: Επί(b,x)Καθαρό(b) ΕΠΙΔΡΑΣΕΙΣ: Επί(b,Τραπέζι)Καθαρό(x)Επί(b,x) ) ! Οι μεταβλητές που εμφανίζονται στις προϋποθέσεις και επιδράσεις πρέπει να εμφανίζονται ως ορίσματα της ενέργειας

  49. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Init(Επί(Α,Τραπέζι)  Επί(Β,Τραπέζι)  Επί(Γ,Τραπέζι)  Καθαρό(Α)  Καθαρό(Β)  Καθαρό(Γ)) • Goal(Επί(Α,Β)  Επί(Β,Γ) ) • Action( Μετακίνηση(b,x,y), ΠΡΟΫΠΟΘΕΣΕΙΣ: Επί(b,x)Καθαρό(b)Καθαρό(y) ΕΠΙΔΡΑΣΕΙΣ: Επί(b,y)Καθαρό(x)Επί(b,x)Καθαρό(y) ) • Action( ΜετακίνησηΣτοΤραπέζι(b,x), ΠΡΟΫΠΟΘΕΣΕΙΣ: Επί(b,x)Καθαρό(b) ΕΠΙΔΡΑΣΕΙΣ: Επί(b,Τραπέζι)Καθαρό(x)Επί(b,x) ) ! Οι μεταβλητές που εμφανίζονται στις προϋποθέσεις και επιδράσεις πρέπει να εμφανίζονται ως ορίσματα της ενέργειας

  50. 11.1 Σχεδιασμός με τη γλώσσα STRIPS • Υπάρχουν και άλλες γνωστές γλώσσες για τον σχεδιασμό ενεργειών και την συλλογιστική ενεργειών (reasoning about action) • Από το 1971 που προτάθηκε η STRIPS από τους  R. E. Fikesκαι N. J. Nilsson έχουν αναπτυχθεί άλλες πολύ πιο εκφραστικές γλώσσες. • H γλώσσα ADL που προτάθηκε το 1988 από τον Edwin P. D. Pednault βασίζεται στη STRIPS, επιτρέπει όμως καταστάσεις ανοικτού κόσμου, ενέργειες με επιδράσεις υπό περίπτωση, ποσοδείκτες, ισότητα και άλλα. • O λογισμός καταστάσεων (situation calculus)όπως παρουσιάστηκε τον 1991 από τον Ray Reiter (και από τους John McCarthy, Patrick J. Hayes πολύ νωρίτερα) υποστηρίζει πλήρη συμπερασμό στη λογική πρώτης τάξης. • Action languages A, fluent calculus, event calculus, …

More Related