Κατέβασμα παρουσίασης
Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε
ΔημοσίευσεGanymede Petros Τροποποιήθηκε πριν 10 χρόνια
1
ΣΧΕΔΙΑΣΜΟΣ (PLANNING)..και εφαρμογές σε video games! Τεχνητή Νοημοσύνη ΙΙ Εαρινό Εξάμηνο 2012- 2013
2
Ευχαριστίες 2 Όλες οι διαφάνειες για την ενότητα « Σχεδιασμός Ενεργειών » έχουν γραφτεί από τον Σταύρο Βάσσο (http://stavros.lostre.org/) που δίδασκε αυτό το τμήμα του μαθήματος μέχρι πέρυσι.http://stavros.lostre.org/ Στη φετινή έκδοση, οι διαφάνειες έχουν ελάχιστα τροποποιηθεί από τον διδάσκοντα.
3
Σχεδιασμός (Planning) 3 Τυπική περιγραφή ενός προβλήματος σχεδιασμού : Αρχική κατάσταση Στόχος Διαθέσιμες ενέργειες Τυπική λύση ενός προβλήματος σχεδιασμού : Μια ακολουθία ενεργειών η οποία όταν εκτελεστεί στην αρχική κατάσταση καταλήγει σε μια κατάσταση που ικανοποιεί το στόχο. Σχεδιασμός : Η αυτοματοποιημένη εύρεση λύσης.
4
Τι είναι ένα πρόβλημα σχεδιασμού ; 4 Ας αρχίσουμε με ένα απλό παράδειγμα The Sokoban puzzle (http://en.wikipedia.org/wiki/Sokoban)http://en.wikipedia.org/wiki/Sokoban
5
Τι είναι ένα πρόβλημα σχεδιασμού ; 5 Δίνονται : Αρχική κατάσταση
6
Τι είναι ένα πρόβλημα σχεδιασμού ; 6 Δίνονται : Αρχική κατάσταση Στόχος
7
Τι είναι ένα πρόβλημα σχεδιασμού ; 7 Δίνονται : Αρχική κατάσταση Στόχος Διαθέσιμες ενέργειες
8
Τι είναι ένα πρόβλημα σχεδιασμού ; 8 Δίνονται : Αρχική κατάσταση Στόχος Διαθέσιμες ενέργειες Ζητείται : Μια ακολουθία ενεργειών που ικανοποιεί το στόχο Πχ : [ Αριστερά, Κάτω, Αριστερά, Πάνω,…]
9
Τι είναι ένα πρόβλημα σχεδιασμού ; 9 Δίνονται : Αρχική κατάσταση Στόχος Διαθέσιμες ενέργειες Ζητείται : Μια ακολουθία ενεργειών που ικανοποιεί το στόχο Μια μέθοδος που βρίσκει λύση για κάθε αρχική κατάσταση και στόχο
10
Τι είναι ένα πρόβλημα σχεδιασμού ; 10 Δίνονται : Αρχική κατάσταση Στόχος Διαθέσιμες ενέργειες Ζητείται : Μια ακολουθία ενεργειών που ικανοποιεί το στόχο Μια μέθοδος που βρίσκει λύση για κάθε πεδίο εφαρμογής
11
Σχεδιασμός : πραγματικές εφαρμογές 11 Σχεδιασμός μονοπατιών (Path planning) NASA’s Mars Exploration Rover
12
Σχεδιασμός : πραγματικές εφαρμογές 12 Σχεδιασμός μονοπατιών (Path planning) Video Games!
13
Σχεδιασμός : πραγματικές εφαρμογές 13 Σχεδιασμός μονοπατιών (Path planning) Video Games!
14
Σχεδιασμός : πραγματικές εφαρμογές 14 Πολλαπλοί στόχοι και χρονοδρομολόγηση (Scheduling) Hubble Space Telescope
15
Σχεδιασμός : πραγματικές εφαρμογές 15 KIVA Robots: αυτόματη ταξινόμηση παραγγελιών με τη χρήση μετακινούμενων διαδρόμων σε αποθήκες. youtube link
16
Σχεδιασμός : πραγματικές εφαρμογές 16 Πράκτορες με δυνατότητες σχεδιασμού για τον καθορισμό της γενικότερης συμπεριφοράς τους (Proactive Agents/ Cognitive Robots) UAVs, DARPA Grand/Urban Challenge, Honda ASIMO
17
Κλασικός σχεδιασμός ( Classical planning ) 17 Υποθέσεις : το περιβάλλον είναι πλήρως παρατηρήσιμο, αιτιοκρατικό, στατικό και διακριτό. Τυπική περιγραφή του προβλήματος : Αρχική κατάσταση Στόχος Διαθέσιμες ενέργειες
18
Τι θα δούμε στα επόμενα μαθήματα 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 19 Παράδειγμα από τον κόσμο των κύβων (Blocks world) Αρχική κατάσταση : s 0 Στόχος : g Διαθέσιμες ενέργειες : μετακίνηση ενός κύβου από το τραπέζι στην κορυφή μιας στοίβας κύβων από την κορυφή μιας στοίβας κύβων στο τραπέζι από την κορυφή μιας στοίβας κύβων σε μια άλλη στοίβα κύβων Α ΒΓ Α Β Γ s0s0 g
20
11.1 Σχεδιασμός με τη γλώσσα STRIPS 20 Αρχική κατάσταση Αναπαράσταση των ιδιοτήτων της κατάστασης με λεκτικά πρώτης τάξης ( first order logic literals ) Λεκτικά για τον κόσμο των κύβων Επί(b,x): το b βρίσκεται πάνω από το x, όπου x κάποιος άλλος κύβος ή το τραπέζι Καθαρό(x): το x είναι ελεύθερο για να τοποθετηθεί πάνω του ένας κύβος Α ΒΓ Ε π ί ( Α, Τρα π έζι ) Ε π ί ( Β, Τρα π έζι ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Γ ) s0s0
21
11.1 Σχεδιασμός με τη γλώσσα STRIPS 21 Αρχική κατάσταση Αναπαράσταση των ιδιοτήτων της αρχικής κατάστασης με λεκτικά πρώτης τάξης (first order logic literals) Βασικά (ground) και χωρίς συναρτήσεις (function-free) Πλήρως ορισμένη κατάσταση με βάση την υπόθεση κλειστού κόσμου (closed-world assumption) Α ΒΓ Ε π ί ( Α, Τρα π έζι ) Ε π ί ( Β, Τρα π έζι ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Γ ) s0s0
22
11.1 Σχεδιασμός με τη γλώσσα STRIPS 22 Α ΒΓ Ε π ί ( Α, Τρα π έζι ) Ε π ί ( Β, Τρα π έζι ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Γ ) Ε π ί ( Α, Α ) Ε π ί ( Α, Β ) Ε π ί ( Α, Γ ) Ε π ί ( Β, Α ) Ε π ί ( Β, Β ) Ε π ί ( Β, Γ ) Ε π ί ( Γ, Α ) Ε π ί ( Γ, Β ) Ε π ί ( Γ, Γ ) Ε π ί ( Α, Α ) Ε π ί ( Α, Β ) Ε π ί ( Α, Γ ) Ε π ί ( Τρα π έζι, Α ) Ε π ί ( Τρα π έζι, Β ) Ε π ί ( Τρα π έζι, Γ ) Ε π ί ( Τρα π έζι, Τρα π) Καθαρό ( Τρα π έζι ) Αρχική κατάσταση Υπόθεση κλειστού κόσμου (closed-world assumption) Οι συνθήκες που δεν αναφέρονται στην περιγραφή της κατάστασης θεωρούνται ότι είναι ψευδείς. s0s0
23
11.1 Σχεδιασμός με τη γλώσσα STRIPS 23 Στόχος Αναπαράσταση των ιδιοτήτων της τελικής κατάστασης με λεκτικά πρώτης τάξης (first order logic literals) Βασικά (ground) και χωρίς συναρτήσεις (function-free) Μερικώς καθορισμένη κατάσταση : Μια κατάσταση s ικανοποιεί τον στόχο g αν περιέχει όλα τα λεκτικά του g ( και πιθανώς και άλλα επιπλέον λεκτικά ) Α Β Γ Επί(Α,Β)Επί(Β,Γ)Επί(Α,Β)Επί(Β,Γ) g
24
11.1 Σχεδιασμός με τη γλώσσα STRIPS 24 Α ΒΓ Ε π ί ( Α, Τρα π έζι ) Ε π ί ( Β, Τρα π έζι ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Γ ) Επί(Α,Β)Επί(Β,Γ)Επί(Α,Β)Επί(Β,Γ) s0s0 g Α Β Γ
25
11.1 Σχεδιασμός με τη γλώσσα STRIPS 25 Διαθέσιμες ενέργειες από το τραπέζι στην κορυφή μιας στοίβας κύβων από την κορυφή μιας στοίβας κύβων στο τραπέζι από την κορυφή μιας στοίβας κύβων σε μια άλλη στοίβα κύβων Α ΒΓ s0s0 Ε π ί ( Α, Τρα π έζι ) Ε π ί ( Β, Τρα π έζι ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Γ )
26
11.1 Σχεδιασμός με τη γλώσσα STRIPS 26 Διαθέσιμες ενέργειες από το τραπέζι στην κορυφή μιας στοίβας κύβων από την κορυφή μιας στοίβας κύβων στο τραπέζι από την κορυφή μιας στοίβας κύβων σε μια άλλη στοίβα κύβων Α ΒΓ Α Β Γ Μετακίνηση ( Β, Τραπέζι, Γ ) s0s0 s1s1 Ε π ί ( Α, Τρα π έζι ) Ε π ί ( Β, Τρα π έζι ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Γ ) ???
27
11.1 Σχεδιασμός με τη γλώσσα STRIPS 27 Για να περιγράψουμε μια διαθέσιμη ενέργεια, χρησιμοποιούμε ένα σχήμα ενεργειών (action schema) το οποίο αποτελείται από τα εξής : Το όνομα της ενέργειας και τη λίστα παραμέτρων Προϋποθέσεις (preconditions): λεκτικά που δηλώνουν τι θα πρέπει να αληθεύει ώστε η ενέργεια να είναι εφαρμόσιμη. Επιδράσεις (effects): λεκτικά που περιγράφουν τον τρόπο με τον οποίο αλλάζει η κατάσταση
28
11.1 Σχεδιασμός με τη γλώσσα STRIPS 28
29
11.1 Σχεδιασμός με τη γλώσσα STRIPS 29 Πως εφαρμόζεται μια ενέργεια ; Παράδειγμα : Μετακίνηση (b,x,y) Μια ενέργεια είναι εφαρμόσιμη σε οποιαδήποτε κατάσταση ικανοποιεί τις προυποθέσεις της όπως αυτές προκύπτουν από μια αντικατάσταση των παραμέτρων της από σταθερές που εμφανίζονται στα λεκτικά της κατάστασης Α ΒΓ Ε π ί ( Α, Τρα π έζι ) Ε π ί ( Β, Τρα π έζι ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Γ )
30
11.1 Σχεδιασμός με τη γλώσσα STRIPS 30 Α ΒΓ Α Β Γ Μετακίνηση ( Β, Τραπέζι, Γ ) s0s0 s1s1 Ε π ί ( Α, Τρα π έζι ) Ε π ί ( Β, Τρα π έζι ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Γ ) ???
31
11.1 Σχεδιασμός με τη γλώσσα STRIPS 31 Το αποτέλεσμα της εκτέλεσης μιας εφαρμόσιμης ενέργειας a σε μια κατάσταση s 0 είναι μια νέα κατάσταση s 1 η οποία είναι ίδια με την s 0 με την διαφορά ότι : τα θετικά λεκτικα που υπάρχουν στις επιδράσεις της a έχουν προστεθεί στην s 0 και τα αρνητικά λεκτικά που υπάρχουν στις επιδράσεις της a έχουν αφαιρεθεί από την s 0 Α ΒΓ Α Β Γ Ε π ί ( Α, Τρα π έζι ) Ε π ί ( Β, Τρα π έζι ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Γ ) ???
32
11.1 Σχεδιασμός με τη γλώσσα STRIPS 32 Υπόθεση STRIPS: Τα θετικά λεκτικά που υπάρχουν στην κατάσταση s 0 δεν προστίθενται για δεύτερη φορά. Αν μια αρνητική επίδραση δεν υπάρχει στην κατάσταση s 0 αυτή παραβλέπεται. Αυτή είναι η λύση που δίνει η γλώσσα STRIPS στο πρόβλημα του πλαισίου αναπαράστασης (representational frame problem): Πως παριστάνουμε τυπικά όλα τα χαρακτηριστικά του κόσμου που δεν αλλάζουν όταν εκτελούμε μια ενέργεια ;
33
11.1 Σχεδιασμός με τη γλώσσα STRIPS 33 Όλα τα προηγούμενα μας δίνουν ουσιαστικά τη σημασιολογία της γλώσσας STRIPS.
34
11.1 Σχεδιασμός με τη γλώσσα STRIPS 34 Μετακίνηση ( Β, Τραπέζι, Γ ) Ε π ί ( Α, Τρα π έζι ) Ε π ί ( Β, Τρα π έζι ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Γ ) Ε π ί ( Α, Τρα π έζι ) Ε π ί ( Β, Γ ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Τρα π.) Α ΒΓ Α Β Γ s0s0 s1s1
35
11.1 Σχεδιασμός με τη γλώσσα STRIPS 35 Μετακίνηση ( Γ, Τραπέζι, Α ) s1s1 s2s2 ??? Α Β Γ Ε π ί ( Α, Τρα π έζι ) Ε π ί ( Β, Γ ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Τρα π.)
36
11.1 Σχεδιασμός με τη γλώσσα STRIPS 36 ??? Μετακίνηση ( Γ, Τραπέζι, Α ) s1s1 s2s2 Ε π ί ( Α, Τρα π έζι ) Ε π ί ( Β, Γ ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Τρα π.) Α Β Γ ???
37
11.1 Σχεδιασμός με τη γλώσσα STRIPS 37 Μετακίνηση ( Α, Τραπέζι, Β ) s1s1 s2s2 Ε π ί ( Α, Τρα π έζι ) Ε π ί ( Β, Γ ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Τρα π.) Α Β Γ ??? Α Β Γ
38
11.1 Σχεδιασμός με τη γλώσσα STRIPS 38 Μετακίνηση ( Α, Τραπέζι, Β ) s1s1 s2s2 Ε π ί ( Α, Τρα π έζι ) Ε π ί ( Β, Γ ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Τρα π.) Α Β Γ Ε π ί ( Α, Β ) Ε π ί ( Β, Γ ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Τρα π.) Α Β Γ
39
11.1 Σχεδιασμός με τη γλώσσα STRIPS 39 Πότε έχουμε φτάσει στον στόχο μας ; Θυμηθείτε : Μια κατάσταση s ικανοποιεί τον στόχο g αν περιέχει όλα τα λεκτικά του g ( και πιθανώς και άλλα επιπλέον λεκτικά ).
40
11.1 Σχεδιασμός με τη γλώσσα STRIPS 40 Μετακ.( Β, Τραπέζι, Γ ) Ε π ί ( Α, Τρα π έζι ) Ε π ί ( Β, Τρα π έζι ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Γ ) Ε π ί ( Α, Τρα π έζι ) Ε π ί ( Β, Γ ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Τρα π.) Α ΒΓ Α Β Γ s0s0 s1s1 Μετακ.( Α, Τραπέζι, Β ) s2s2 Ε π ί ( Α, Β ) Ε π ί ( Β, Γ ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Τρα π.) Α Β Γ
41
11.1 Σχεδιασμός με τη γλώσσα STRIPS 41 Μετακ.( Β, Τραπέζι, Γ ) Ε π ί ( Α, Τρα π έζι ) Ε π ί ( Β, Τρα π έζι ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Γ ) Ε π ί ( Α, Τρα π έζι ) Ε π ί ( Β, Γ ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Τρα π.) Α ΒΓ Α Β Γ s0s0 s1s1 Μετακ.( Α, Τραπέζι, Β ) s2s2 Ε π ί ( Α, Β ) Ε π ί ( Β, Γ ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Τρα π.) Α Β Γ Α Β Γ Επί(Α,Β)Επί(Β,Γ)Επί(Α,Β)Επί(Β,Γ) g
42
11.1 Σχεδιασμός με τη γλώσσα STRIPS 42 Το παράδειγμα του κόσμου των κύβων γραμμένο τυπικά σε STRIPS: Init( Επί ( Α, Τραπέζι ) Επί ( Β, Τραπέζι ) Επί ( Γ, Τραπέζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Γ ) ) Goal( Επί ( Α, Β ) Επί ( Β, Γ ) ) Action( Μετακίνηση (b,x,y), ΠΡΟΫΠΟΘΕΣΕΙΣ : Επί (b,x) Καθαρό (b) Καθαρό (y) ΕΠΙΔΡΑΣΕΙΣ : Επί (b,y) Καθαρό (x) Επί (b,x) Καθαρό (y) )
43
11.1 Σχεδιασμός με τη γλώσσα STRIPS 43 Το προηγούμενο σχήμα ενεργειών έχει τα εξής προβλήματα : Όταν x= Τραπέζι τότε η ενέργεια έχει επίδραση Καθαρό ( Τραπέζι ) αλλά το τραπέζι δεν πρέπει να είναι καθαρό. Όταν y= Τραπέζι τότε η ενέργεια έχει την προυπόθεση Καθαρό ( Τραπέζι ) αλλά το τραπέζι δεν χρειάζεται να είναι καθαρό για να βάλουμε πάνω του ένα κύβο. Τα προβλήματα αυτά λύνονται ως εξής : Εισάγοντας μια άλλη ενέργεια ΜετακίνησηΣτοΤραπέζι (b,x) για την μετακίνηση ενός κύβου b από το x στο τραπέζι. Αλλάζοντας την ερμηνεία του Καθαρό (b) σε « υπάρχει κενός χώρος στο b για την τοποθέτηση ενός κύβου ».
44
11.1 Σχεδιασμός με τη γλώσσα STRIPS 44 Νέα έκδοση : 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 45 Με την νέα έκδοση εξακολουθεί να υπάρχει η δυνατότητα χρήσης της ενέργειας Μετακίνηση (b,x, Τραπέζι ). Τα πρόβλημα αυτό λύνεται εισάγοντας ένα νέο κατηγόρημα Κύβος (.) και τις προυποθέσεις Κύβος (b) και Κύβος (y) στην ενέργεια Μετακίνηση.
46
11.1 Σχεδιασμός με τη γλώσσα STRIPS 46 Ένα άλλο πρόβλημα που υπάρχει είναι η χρήση « ψευδοενεργειών » π. χ. Μετακίνηση ( Β, Γ, Γ ). Το πρόβλημα αυτό λύνεται εισάγοντας περιορισμούς ανισότητας για κάθε ζευγάρι ορισμάτων στις προυποθέσεις των δύο ενεργειών.
47
11.1 Σχεδιασμός με τη γλώσσα STRIPS 47 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 48 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 49 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 50 Υπάρχουν και άλλες γνωστές γλώσσες για τον σχεδιασμό ενεργειών και την συλλογιστική ενεργειών (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, …
51
11.1 Σχεδιασμός με τη γλώσσα STRIPS 51 STRIPS! Γιατί μας αρέσει ;
52
11.1 Σχεδιασμός με τη γλώσσα STRIPS 52 STRIPS! Γιατί μας αρέσει ; Απλή γλώσσα περιγραφής προβλημάτων σχεδιασμού Εύκολος υπολογισμός των εφαρμόσιμων ενεργειών Αρκεί η λίστα των προϋποθέσεων να είναι υποσύνολο της κατάστασης : ΠΡΟΫΠΟΘΕΣΕΙΣ S Εύκολος υπολογισμός της διάδοχης κατάστασης Αρκεί να προστεθεί η λίστα των θετικών επιδράσεων στην κατάσταση και να αφαιρεθεί η λίστα των αρνητικών : S’ = (S / ΑΡΝΗΤΙΚΕΣ - ΕΠΙΔΡΑΣΕΙΣ ) ΘΕΤΙΚΕΣ - ΕΠΙΔΡΑΣΕΙΣ Εύκολος έλεγχος αν η κατάσταση ικανοποιεί το στόχο Αρκεί ο στόχος αν είναι υποσύνολο της κατάστασης : G S
53
11.1 Σχεδιασμός με τη γλώσσα STRIPS 53 STRIPS! Γιατί μας αρέσει ; Είναι ήδη ικανή να περιγράψει αρκετά δύσκολα προβλήματα. … ας δούμε μερικούς τρόπους επίλυσης τέτοιων προβλημάτων
54
11.2 Αναζήτηση στο χώρο καταστάσεων 54 Επίλυση προβλήματος σχεδιασμού STRIPS σαν πρόβλημα αναζήτησης στον χώρο καταστάσεων Init ( Επί ( Α, Τραπέζι ) Επί ( Β, Τραπέζι ) … ) Goal ( Επί ( Α, Β ) … ) Action ( Μετακίνηση (b,x,y), ΠΡΟΫΠΟΘΕΣΕΙΣ : Επί (b,x) … ΕΠΙΔΡΑΣΕΙΣ : Επί (b,y) … ) Action( ΜετακίνησηΣτοΤραπέζι (b,x), ΠΡΟΫΠΟΘΕΣΕΙΣ : Επί (b,x) … ΕΠΙΔΡΑΣΕΙΣ : Επί (b, Τραπέζι ) … )
55
11.2 Αναζήτηση στο χώρο καταστάσεων 55 Επίλυση προβλήματος σχεδιασμού σαν πρόβλημα αναζήτησης στον χώρο καταστάσεων Αρχική κατάσταση : όπως περιγράφεται στην Init() Ενέργειες : οι εφαρμόσιμες για κάθε κατάσταση όπως προκύπτει από τις προϋποθέσεις σε κάθε Action() Έλεγχος στόχου : αν ικανοποιείται ο στόχος Goal() από την κατάσταση Προς τα εμπρός αναζήτηση στο χώρο των καταστάσεων : προέλαση (progression planning) Προς τα πίσω αναζήτηση στο χώρο των καταστάσεων : οπισθοχώρηση (regression planning)
56
11.2 Προέλαση (progression planning) 56 Ξεκίνα από την αρχική κατάσταση ως τρέχουσα κατάσταση Έλεγξε αν ικανοποιεί τον στόχο Υπολόγισε τις εφαρμόσιμες ενέργειες στην τρέχουσα κατάσταση Υπολόγισε τις διάδοχες καταστάσεις Επέλεξε μια από τις διάδοχες καταστάσεις ως τρέχουσα Επανάλαβε μέχρι να βρεθεί λύση ή να καλυφθεί ο χώρος καταστάσεων
57
11.2 Προέλαση (progression planning) 57 Ξεκίνα από την αρχική κατάσταση Α ΒΓ Ε π ί ( Α, Τρα π έζι ) Ε π ί ( Β, Τρα π έζι ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Γ )
58
11.2 Προέλαση (progression planning) 58 Έλεγξε αν ικανοποιεί τον στόχο Όχι ! Α ΒΓ Επί(Α,Β)Επί(Β,Γ)Επί(Α,Β)Επί(Β,Γ) Ε π ί ( Α, Τρα π έζι ) Ε π ί ( Β, Τρα π έζι ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Γ )
59
11.2 Προέλαση (progression planning) 59 Υπολόγισε όλες τις εφαρμόσιμες ενέργειες Action( Μετακίνηση (b,x,y), ΠΡΟΫΠΟΘΕΣΕΙΣ : Επί (b,x) Καθαρό (b) Καθαρό (y) ) Action( ΜετακίνησηΣτοΤραπέζι (b,x), ΠΡΟΫΠΟΘΕΣΕΙΣ : Επί (b,x) Καθαρό (b) ) Α ΒΓ Ε π ί ( Α, Τρα π έζι ) Ε π ί ( Β, Τρα π έζι ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Γ )
60
11.2 Προέλαση (progression planning) 60 Υπολόγισε όλες τις εφαρμόσιμες ενέργειες Action( Μετακίνηση (b,x,y), ΠΡΟΫΠΟΘΕΣΕΙΣ : Επί (b,x) Καθαρό (b) Καθαρό (y) ) Action( ΜετακίνησηΣτοΤραπέζι (b,x), ΠΡΟΫΠΟΘΕΣΕΙΣ : Επί (b,x) Καθαρό (b) ) Μετ ( Β, Τρ, Γ ) Προϋποθέσεις : Επί ( Β, Τρ ) Καθαρό ( Β ) Καθαρό ( Γ ) Εφαρμόσιμη ενέργεια ! Α ΒΓ Ε π ί ( Α, Τρα π έζι ) Ε π ί ( Β, Τρα π έζι ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Γ )
61
11.2 Προέλαση (progression planning) 61 Υπολόγισε όλες τις εφαρμόσιμες ενέργειες Action( Μετακίνηση (b,x,y), ΠΡΟΫΠΟΘΕΣΕΙΣ : Επί (b,x) Καθαρό (b) Καθαρό (y) ) Action( ΜετακίνησηΣτοΤραπέζι (b,x), ΠΡΟΫΠΟΘΕΣΕΙΣ : Επί (b,x) Καθαρό (b) ) Μετ ( Α, Τρ, Β ) Μετ ( Α, Τρ, Γ ) Μετ ( Β, Τρ, Α ) Μετ ( Β, Τρ, Γ ) Μετ ( Γ, Τρ, Α ) Μετ ( Γ, Τρ, Β ) Όλες είναι εφαρμόσιμες ενέργειες ! Α ΒΓ Ε π ί ( Α, Τρα π έζι ) Ε π ί ( Β, Τρα π έζι ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Γ )
62
11.2 Προέλαση (progression planning) 62 Υπολόγισε όλες τις εφαρμόσιμες ενέργειες Action( Μετακίνηση (b,x,y), ΠΡΟΫΠΟΘΕΣΕΙΣ : Επί (b,x) Καθαρό (b) Καθαρό (y) ) Action( ΜετακίνησηΣτοΤραπέζι (b,x), ΠΡΟΫΠΟΘΕΣΕΙΣ : Επί (b,x) Καθαρό (b) ) Μετ ( Β, Τρ, Β ) Προϋποθέσεις : Επί ( Β, Τρ ) Καθαρό ( Β ) Και αυτή είναι εφαρμόσιμη ! Α ΒΓ Ε π ί ( Α, Τρα π έζι ) Ε π ί ( Β, Τρα π έζι ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Γ )
63
11.2 Προέλαση (progression planning) 63 Υπολόγισε όλες τις εφαρμόσιμες ενέργειες Action( Μετακίνηση (b,x,y), ΠΡΟΫΠΟΘΕΣΕΙΣ : Επί (b,x) Καθαρό (b) Καθαρό (y) ) Action( ΜετακίνησηΣτοΤραπέζι (b,x), ΠΡΟΫΠΟΘΕΣΕΙΣ : Επί (b,x) Καθαρό (b) ) ΜετΣΤ ( Β, Τρ ) Προϋποθέσεις : Επί ( Β, Τρ ) Καθαρό ( Β ) Και αυτή είναι εφαρμόσιμη ! Α ΒΓ Ε π ί ( Α, Τρα π έζι ) Ε π ί ( Β, Τρα π έζι ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Γ )
64
11.2 Προέλαση (progression planning) 64 Υπολόγισε όλες τις εφαρμόσιμες ενέργειες Action( Μετακίνηση (b,x,y), ΠΡΟΫΠΟΘΕΣΕΙΣ : Επί (b,x) Καθαρό (b) Καθαρό (y) ) Action( ΜετακίνησηΣτοΤραπέζι (b,x), ΠΡΟΫΠΟΘΕΣΕΙΣ : Επί (b,x) Καθαρό (b) ) Μετ ( Α, Τρ, Α ) Μετ ( Β, Τρ, Β ) Μετ ( Γ, Τρ, Γ ) ΜετΣΤ ( Α, Τρ ) ΜετΣΤ ( Β, Τρ ) ΜετΣΤ ( Γ, Τρ ) Όλες είναι εφαρμόσιμες ενέργειες ! Α ΒΓ Ε π ί ( Α, Τρα π έζι ) Ε π ί ( Β, Τρα π έζι ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Γ )
65
11.2 Προέλαση (progression planning) 65 Υπολόγισε όλες τις διάδοχες καταστάσεις Action( Μετακίνηση (b,x,y), ΕΠΙΔΡΑΣΕΙΣ : Επί (b,y) Καθαρό (x) Επί (b,x) Καθαρό (y) ) Μετ ( Β, Τρ, Γ ) Επιδράσεις : Επί ( Β, Γ ) Καθαρό ( Τραπέζι ) Επί ( Β, Τραπέζι ) Καθαρό ( Γ ) Α ΒΓ Α Β Γ Ε π ί ( Α, Τρα π έζι ) Ε π ί ( Β, Τρα π έζι ) Ε π ί ( Γ, Τρα π έζι ) Καθαρό ( Α ) Καθαρό ( Β ) Καθαρό ( Γ )
66
11.2 Προέλαση (progression planning) 66 Υπολόγισε όλες τις διάδοχες καταστάσεις Α ΒΓ Α Β Γ Α Γ Β Α Β Γ Α Β Γ Α Β Γ Α Γ Β Μετ ( Α, Τρ, Γ ) Μετ ( Α, Τρ, Β ) Μετ.( Γ, Τρ, Β ) Μετ ( Β, Τρ, Γ ) Μετ ( Β, Τρ, Α ) Μετ ( Γ, Τρ, Α )
67
11.2 Προέλαση (progression planning) 67 Επέλεξε μια διάδοχη κατάσταση και επανάλαβε... Α ΒΓ Α Β Γ Α Γ Β Α Β Γ Α Β Γ Α Β Γ Α Γ Β
68
11.2 Προέλαση (progression planning) 68 Επέλεξε μια διάδοχη κατάσταση και επανάλαβε... Α ΒΓ Α Β Γ Α Γ Β Α Β Γ Α Β Γ Α Β Γ Α Γ Β Α Β Γ
69
11.2 Προέλαση (progression planning) 69 Επέλεξε μια διάδοχη κατάσταση και επανάλαβε... Α ΒΓ Α Β Γ Α Γ Β Α Β Γ Α Β Γ Α Β Γ Α Γ Β Α Β Γ
70
11.2 Προέλαση (progression planning) 70 Είναι σίγουρο ότι η προέλαση θα βρει μια λύση αν υπάρχει ;
71
11.2 Προέλαση (progression planning) 71 Είναι σίγουρο ότι η προέλαση θα βρει μια λύση αν υπάρχει ; Δεδομένου ότι δεν έχουμε σύμβολα συναρτήσεων.. .. Ναι, εφόσον ελέγχουμε την κάθε δυνατή κατάσταση μόνο μια φορά.
72
11.2 Προέλαση (progression planning) 72 Επέλεξε μια νέα διάδοχη κατάσταση... Α ΒΓ Α Β Γ Α Γ Β Α Β Γ Α Β Γ Α Β Γ Α Γ Β Α Β Γ
73
11.2 Προέλαση (progression planning) 73 Είναι σίγουρο ότι η προέλαση θα βρει μια λύση αν υπάρχει ; Δεδομένου ότι δεν έχουμε σύμβολα συναρτήσεων.. .. Ναι, εφόσον ελέγχουμε την κάθε δυνατή κατάσταση μόνο μια φορά. Μπορεί όμως να χρειαστεί να εξερευνήσει όλο τον χώρο καταστάσεων.
74
11.2 Προέλαση (progression planning) 74 Α ΒΓ Α Β Γ Α Β Γ Α Γ Β Α Γ Β Α Β Γ Α Β Γ Α Β Γ Α Β Γ Α Β Γ Α Β Γ Α Γ Β Α Γ Β
75
11.2 Προέλαση (progression planning) 75 Αντίθετα με το παράδειγμα, σε πολλά προβλήματα ο χώρος καταστάσεων είναι πολύ μεγάλος. Τι θα γινόταν αν είχαμε 100 κύβους και 1000 διαφορετικές εφαρμόσιμες ενέργειες της μορφής Μετακίνηση (b,x,y) σε κάθε κατάσταση ; Όπως και στα κλασσικά προβλήματα αναζήτησης, μπορούμε να ορίσουμε ευρετικές συναρτήσεις που βοηθούν να επιλέξουμε τις πιο υποσχόμενες καταστάσεις.
76
11.2 Ευρετικές συναρτήσεις για προέλαση 76 Συνάρτηση αξιολόγισης f(s) = g(s) + h(s) g(s): το κόστος που χρειάστηκε για να φτάσουμε στην κατάσταση s ( ακριβές ) h(s): το κόστος που χρειάζεται για να φτάσουμε από την s σε ένα τελικό κόμβο ( προσέγγιση ) Χρησιμοποιούμε την f(s) για να ταξινομήσουμε τις διάδοχες καταστάσεις και να επιλέξουμε την πιο υποσχόμενη.
77
11.2 Προέλαση (progression planning) 77 Έστω μια ευρετική h(s) με τις ακόλουθες τιμές : Α ΒΓ Α Β Γ Α Γ Β Α Β Γ Α Β Γ Α Β Γ Α Γ Β Μετ ( Α, Τρ, Γ ) Μετ ( Α, Τρ, Β ) Μετ.( Γ, Τρ, Β ) Μετ ( Β, Τρ, Γ ) Μετ ( Β, Τρ, Α ) Μετ ( Γ, Τρ, Α ) g(s)=1 h(s)=2 h(s)=1 h(s)=2 h(s)=1 h(s)=2
78
11.2 Ευρετικές συναρτήσεις για προέλαση 78 Ποιά η διαφορά όμως με ένα κλασικό πρόβλημα αναζήτησης ; Και σε εκείνα τα προβλήματα μπορούσαμε να υπολογίσουμε μια h(s) με βάση μια πιο χαλαρή απόσταση της s από το στόχο, π. χ., Manhattan distance.
79
11.2 Ευρετικές συναρτήσεις για προέλαση 79
80
11.2 Ευρετικές συναρτήσεις για προέλαση 80 Κενή λίστα προϋποθέσεων h(s) = σε πόσα βήματα μπορεί να επιτευχθεί ο στόχος αν όλες οι ενέργειες ήταν εφαρμόσιμες πάντα. Κενή λίστα διαγραφών h(s) = σε πόσα βήματα μπορεί να επιτευχθεί ο στόχος αν όλες οι ενέργειες είχαν μόνο θετικές επιδράσεις. Γραφήματα σχεδιασμού Απλό παράδειγμα : h(s) = αριθμός των λεκτικών του στόχου που δεν εμφανίζονται στην s
81
11.2 Ευρετικές συναρτήσεις για προέλαση 81 Ξεκίνα από την αρχική κατάσταση ως τρέχουσα κατάσταση Έλεγξε αν ικανοποιεί τον στόχο Υπολόγισε τις εφαρμόσιμες ενέργειες στην τρέχουσα κατάσταση Υπολόγισε τις διάδοχες καταστάσεις Επέλεξε μια την πιο υποσχόμενη από τις διάδοχες καταστάσεις ως τρέχουσα Επανάλαβε μέχρι να βρεθεί λύση ή να καλυφθεί ο χώρος καταστάσεων
82
11.2 Ευρετικές συναρτήσεις για προέλαση 82 Υπολόγισε όλες τις διάδοχες καταστάσεις Α ΒΓ Α Β Γ Α Γ Β Α Β Γ Α Β Γ Α Β Γ Α Γ Β Μετ ( Α, Τρ, Γ ) Μετ ( Α, Τρ, Β ) Μετ.( Γ, Τρ, Β ) Μετ ( Β, Τρ, Γ ) Μετ ( Β, Τρ, Α ) Μετ ( Γ, Τρ, Α ) g(s)=1 h(s)=2 h(s)=1 h(s)=2 h(s)=1 h(s)=2
83
11.2 Ευρετικές συναρτήσεις για προέλαση 83 Υπολόγισε όλες τις διάδοχες καταστάσεις Α ΒΓ Α Β Γ Α Γ Β Α Β Γ Α Β Γ Α Γ Β Μετ ( Α, Τρ, Γ ) Μετ ( Α, Τρ, Β ) Μετ ( Β, Τρ, Γ ) Μετ ( Β, Τρ, Α ) Μετ ( Γ, Τρ, Α ) g(s)=1 h(s)=2 h(s)=1 h(s)=2 Α Β Γ Μετ.( Γ, Τρ, Β ) g(s)=1 h(s)=2
84
11.2 Ευρετικές συναρτήσεις για προέλαση 84 Επίλεξε την πιο υποσχόμενη κατάσταση Α ΒΓ Α Β Γ Α Γ Β Α Β Γ Α Β Γ Α Γ Β Μετ ( Α, Τρ, Γ ) Μετ ( Α, Τρ, Β ) Μετ ( Β, Τρ, Γ ) Μετ ( Β, Τρ, Α ) Μετ ( Γ, Τρ, Α ) g(s)=1 h(s)=2 h(s)=1 h(s)=2 Α Β Γ Μετ.( Γ, Τρ, Β ) g(s)=1 h(s)=2
85
11.2 Ευρετικές συναρτήσεις για προέλαση 85 Υπολόγισε όλες τις διάδοχες καταστάσεις Α ΒΓ Α Β Γ Α Γ Β Α Β Γ Α Β Γ Α Γ Β Μετ ( Α, Τρ, Γ ) Μετ ( Β, Τρ, Γ ) Μετ ( Β, Τρ, Α ) Μετ ( Γ, Τρ, Α ) g(s)=1 h(s)=2 h(s)=1 h(s)=2 Α Β Γ Μετ.( Γ, Τρ, Β ) g(s)=1 h(s)=2 Α Β Γ Μετ.( Γ, Τρ, Α ) g(s)=2 h(s)=1
86
11.2 Ευρετικές συναρτήσεις για προέλαση 86 Υπολόγισε όλες τις διάδοχες καταστάσεις Α ΒΓ Α Β Γ Α Γ Β Α Β Γ Α Β Γ Α Γ Β Μετ ( Α, Τρ, Γ ) Μετ ( Β, Τρ, Γ ) Μετ ( Β, Τρ, Α ) Μετ ( Γ, Τρ, Α ) g(s)=1 h(s)=2 h(s)=1 h(s)=2 Α Β Γ Μετ.( Γ, Τρ, Β ) g(s)=1 h(s)=2 Α Β Γ Μετ.( Γ, Τρ, Α ) g(s)=2 h(s)=1
87
11.2 Ευρετικές συναρτήσεις για προέλαση 87 Επίλεξε την πιο υποσχόμενη κατάσταση Α ΒΓ Α Β Γ Α Γ Β Α Β Γ Α Β Γ Α Γ Β Μετ ( Α, Τρ, Γ ) Μετ ( Β, Τρ, Γ ) Μετ ( Β, Τρ, Α ) Μετ ( Γ, Τρ, Α ) g(s)=1 h(s)=2 h(s)=1 h(s)=2 Α Β Γ Μετ.( Γ, Τρ, Β ) g(s)=1 h(s)=2 Α Β Γ Μετ.( Γ, Τρ, Α ) g(s)=2 h(s)=1
88
11.2 Ευρετικές συναρτήσεις για προέλαση 88 Υπολόγισε όλες τις διάδοχες καταστάσεις Α ΒΓ Α Β Γ Α Γ Β Α Β Γ Α Β Γ Α Γ Β Μετ ( Α, Τρ, Γ ) Μετ ( Β, Τρ, Α ) Μετ ( Γ, Τρ, Α ) g(s)=1 h(s)=2 Α Β Γ Μετ.( Γ, Τρ, Β ) g(s)=1 h(s)=2 Α Β Γ Μετ.( Γ, Τρ, Α ) g(s)=2 h(s)=1 Α Β Γ Μετ ( Α, Τρ, Β ) g(s)=2 h(s)=0
89
11.2 Ευρετικές συναρτήσεις για προέλαση 89 Υπολόγισε όλες τις διάδοχες καταστάσεις Α ΒΓ Α Β Γ Α Γ Β Α Β Γ Α Β Γ Α Γ Β Μετ ( Α, Τρ, Γ ) Μετ ( Β, Τρ, Α ) Μετ ( Γ, Τρ, Α ) g(s)=1 h(s)=2 Α Β Γ Μετ.( Γ, Τρ, Β ) g(s)=1 h(s)=2 Α Β Γ Μετ.( Γ, Τρ, Α ) g(s)=2 h(s)=1 Α Β Γ Μετ ( Α, Τρ, Β ) g(s)=2 h(s)=0
90
11.2 Ευρετικές συναρτήσεις για προέλαση 90 Επίλεξε την πιο υποσχόμενη κατάσταση Α ΒΓ Α Β Γ Α Γ Β Α Β Γ Α Β Γ Α Γ Β Μετ ( Α, Τρ, Γ ) Μετ ( Β, Τρ, Α ) Μετ ( Γ, Τρ, Α ) g(s)=1 h(s)=2 Α Β Γ Μετ.( Γ, Τρ, Β ) g(s)=1 h(s)=2 Α Β Γ Μετ.( Γ, Τρ, Α ) g(s)=2 h(s)=1 Α Β Γ
91
11.2 Οπισθοχώρηση (regression planning) 91 Ξεκίνα από τον στόχο ως τρέχουσα κατάσταση Έλεγξε αν η αρχική κατάσταση ικανοποιεί την τρέχουσα κατάσταση Υπολόγισε τις συνεπείς και συναφείς ενέργειες για την τρέχουσα κατάσταση Υπολόγισε τις προκάτοχες καταστάσεις Επέλεξε μια από τις προκάτοχες καταστάσεις ως τρέχουσα Επανάλαβε μέχρι να βρεθεί λύση ή να καλυφθεί ο χώρος καταστάσεων
92
Μελέτη 92 Βιβλίο ΑΙΜΑ, κεφάλαιο 11 ( ενότητες 11.1-11.2)
Παρόμοιες παρουσιάσεις
© 2024 SlidePlayer.gr Inc.
All rights reserved.