ΠΑΙΓΝΙΑ Παιχνίδια Γενική Θεώρηση μεγιστοποιήσει την πιθανότητά

Σχετικά έγγραφα
ΠΑΙΓΝΙΑ Παιχνίδια Γενική Θεώρηση μεγιστοποιήσει την πιθανότητά

Αλγόριθµοι Ευριστικής Αναζήτησης

Αναπαράσταση Γνώσης και Συλλογιστικές

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ Τελικές εξετάσεις 24 Ιουνίου 2004

4. Ο,τιδήποτε δεν ορίζεται με βάση τα (1) (3) δεν είναι προτασιακός τύπος.

HY118- ιακριτά Μαθηµατικά

Κατηγορηματικός Λογισμός (ΗR Κεφάλαιο )

HY118- ιακριτά Μαθηµατικά

HY118- ιακριτά Μαθηµατικά

HY118- ιακριτά Μαθηµατικά. Παράδειγµα. Από τα συµπεράσµατα στις υποθέσεις Αποδείξεις - Θεωρία συνόλων. Από τις υποθέσεις στα συµπεράσµατα...

Αλγόριθµοι και Πολυπλοκότητα

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Λογική. Δημήτρης Πλεξουσάκης

Αναπαράσταση Γνώσης και Συλλογιστικές

Ασκήσεις μελέτης της 8 ης διάλεξης

Θεώρηµα: Z ( Απόδειξη: Περ. #1: Περ. #2: *1, *2: αποδεικνύονται εύκολα, διερευνώντας τις περιπτώσεις ο k να είναι άρτιος ή περιττός

Λογική Πρώτης Τάξης. Γιώργος Κορφιάτης. Νοέµβριος Εθνικό Μετσόβιο Πολυτεχνείο

Σχόλιο. Παρατηρήσεις. Παρατηρήσεις. p q p. , p1 p2

Αναπαράσταση Γνώσης και Συλλογιστικές

Προτασιακή Λογική. Τμήμα Μηχανικών Πληροφορικής ΤΕ ΤΕΙ Ηπείρου Γκόγκος Χρήστος

HY118- ιακριτά Μαθηµατικά

Αποφασισιµότητα. HY118- ιακριτά Μαθηµατικά. Βασικές µέθοδοι απόδειξης. 07 -Αποδείξεις. ιακριτά Μαθηµατικά, Εαρινό εξάµηνο 2017

HY118- ιακριτά Μαθηµατικά. Νόµοι ισοδυναµίας. Κατηγορηµατικός Λογισµός. ιακριτά Μαθηµατικά, Εαρινό εξάµηνο Παρασκευή, 24/02/2017

ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΛΟΓΙΚΗΣ

HY118- ιακριτά Μαθηµατικά. Παράδειγµα άµεσης απόδειξης. Μέθοδοι αποδείξεως για προτάσεις της µορφής εάν-τότε Αποδείξεις

1 Συνοπτική ϑεωρία. 1.1 Νόµοι του Προτασιακού Λογισµού. p p p. p p. ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Τµήµα Επιστήµης Υπολογιστών

Μαθηματική Λογική και Λογικός Προγραμματισμός

Σειρά Προβλημάτων 1 Λύσεις

Τεχνητή Νοημοσύνη. 8η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

HY 180 Λογική Διδάσκων: Δ. Πλεξουσάκης Φροντιστήριο 5

Επίπεδα Γραφήματα : Προβλήματα και Υπολογιστική Πολυπλοκότητα

HY118-Διακριτά Μαθηματικά

Λύσεις Σειράς Ασκήσεων 1

9.1 Προτασιακή Λογική

HY118- ιακριτά Μαθηµατικά

a = 10; a = k; int a,b,c; a = b = c = 10;

Κατηγορηµατική Λογική Προτασιακή Λογική: πλαίσιο διατύπωσης και µελέτης επιχειρηµάτων για πεπερασµένο πλήθος «λογικών αντικειµένων». «Λογικό αντικείµε

Λογικοί πράκτορες. Πράκτορες βασισµένοι στη γνώση

HY118- ιακριτά Μαθηµατικά

ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ

HY118- ιακριτά Μαθηµατικά

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ

K15 Ψηφιακή Λογική Σχεδίαση 3: Προτασιακή Λογική / Θεωρία Συνόλων

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Κεφάλαιο 8 : H γλώσσα προγραµµατισµού Pascal 1 ο Μέρος σηµειώσεων (Ενότητες 8.1 & 8.2 σχολικού βιβλίου)

HY118-Διακριτά Μαθηματικά

HY118-Διακριτά Μαθηματικά. Προτασιακός Λογισμός. Προηγούμενη φορά. Βάσεις της Μαθηματικής Λογικής. 02 Προτασιακός Λογισμός

HY118- ιακριτά Μαθηµατικά

Στοιχεία Προτασιακής Λογικής

Πώς είναι δυνατόν να είναι ισοδύναµες οι εξισώσεις που αναφέρονται στο ερώτηµα ii, αφού δεν έχουν το ίδιο πεδίο ορισµού 2 ;

HY118-Διακριτά Μαθηματικά

o AND o IF o SUMPRODUCT

HY118- ιακριτά Μαθηµατικά

Δοµές Δεδοµένων και Αλγόριθµοι - Εισαγωγή

Συνεχείς συναρτήσεις πολλών µεταβλητών. ε > υπάρχει ( ) ( )

Μαθηματική Λογική και Λογικός Προγραμματισμός

Λογική. Προτασιακή Λογική. Λογική Πρώτης Τάξης

ΜΑΘΗΜΑΤΙΚΗ ΛΟΓΙΚΗ ΚΑΙ ΛΟΓΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

HY118-Διακριτά Μαθηματικά

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΜΟΣ Εντολές επιλογής και αποφάσεων 1 ο Φύλλο Εργασιών Εισαγωγικές ασκήσεις για την εντολή if ΑΠΑΝΤΗΣΕΙΣ

Υπολογιστικά & Διακριτά Μαθηματικά

Υπολογισμός στο Λογικό Προγραμματισμό. Πώς υπολογίζεται η έξοδος ενός Λογικού Προγράμματος;

Λογική Δημήτρης Πλεξουσάκης Φροντιστήριο 5: Προτασιακός Λογισμός: Κατασκευή Μοντέλων Τμήμα Επιστήμης Υπολογιστών

Επαναληπτικές δοµές. µτ α.τ. Όχι. ! απαγορεύεται µέσα σε µία ΓΙΑ να µεταβάλλουµε τον µετρητή! διότι δεν θα ξέρουµε µετά πόσες επαναλήψεις θα γίνουν

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

Στοιχεία προτασιακής λογικής

Στοιχεία Κατηγορηματικής Λογικής

1 Ορισµός ακολουθίας πραγµατικών αριθµών

Μορφολογική Παραγωγή. 3 ο φροντιστήριο ΗΥ180 Διδάσκων: Δ. Πλεξουσάκης Τετάρτη 15/03/2017 Ζωγραφιστού Δήμητρα

Στοιχεία Προτασιακής Λογικής

HY118- ιακριτά Μαθηµατικά

Στοιχεία Κατηγορηματικής Λογικής

Στοιχεία Κατηγορηματικής Λογικής

ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ. Ενότητα 9: Προτασιακή λογική. Ρεφανίδης Ιωάννης Τμήμα Εφαρμοσμένης Πληροφορικής

Στοιχεία Προτασιακής Λογικής

4.3 Ορθότητα και Πληρότητα

Συναρτησιακές Εξαρτήσεις. Βάσεις εδοµένων Ευαγγελία Πιτουρά 1

Μαθηματική Λογική και Λογικός Προγραμματισμός

Επιλογή και επανάληψη. Λογική έκφραση ή συνθήκη

ΠΛΗ 20, 3 η ΟΣΣ (Κατηγορηματική Λογική)

ΘΕΩΡΙΑ ΑΡΙΘΜΩΝ. Ασκησεις - Φυλλαδιο 4. ιδασκων: Α. Μπεληγιάννης Ιστοσελιδα Μαθηµατος :

ΗΥ180: Λογική Διδάσκων: Δημήτρης Πλεξουσάκης. Φροντιστήριο 8 Επίλυση για Horn Clauses Λογικός Προγραμματισμός Τετάρτη 9 Μαΐου 2012

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

Γενικές Παρατηρήσεις. Μη Κανονικές Γλώσσες - Χωρίς Συµφραζόµενα (1) Το Λήµµα της Αντλησης. Χρήση του Λήµµατος Αντλησης.

Πληρότητα της μεθόδου επίλυσης

Περιεχόμενα 1 Πρωτοβάθμια Λογική Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων ) / 60

2 Αποδείξεις. 2.1 Εξαντλητική µέθοδος. Εκδοση 2005/03/22. Υπάρχουν πολλών ειδών αποδείξεις. Εδώ ϑα δούµε τις πιο κοινές:

Κεφάλαιο 5 Αξιωματική Σημασιολογία και Απόδειξη Ορθότητας Προγραμμάτων

Υπολογιστική Λογική και Λογικός Προγραμματισμός

Μηχανισμός Εξαγωγής Συμπερασμάτων

Τεχνητή Νοημοσύνη. 9η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ

HY118- ιακριτά Μαθηµατικά

HY118- ιακριτά Μαθηµατικά

Σημειώσεις Λογικής I. Εαρινό Εξάμηνο Καθηγητής: Λ. Κυρούσης

\5. Κατηγορηματικός Λογισμός (Predicate Calculus)

HY118- ιακριτά Μαθηµατικά. Ένα παράδειγµα... Έχουµε δει. Κατηγορηµατικός Λογισµός. ιακριτά Μαθηµατικά, Εαρινό εξάµηνο Πέµπτη, 23/02/2017

HY Λογική Διδάσκων: Δ. Πλεξουσάκης Εαρινό Εξάμηνο. Φροντιστήριο 6

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

Transcript:

ΠΑΙΓΝΙΑ Παιχνίδια Γενική Θεώρηση: Έστω ότι έχουμε τους παίκτες Χ και Υ. Ο κάθε παίκτης, σε κάθε κίνηση που κάνει, προσπαθεί να μεγιστοποιήσει την πιθανότητά του να κερδίσει. Ο Χ σε κάθε κίνηση που κάνει προσπαθεί να μεγιστοποιήσει την πιθανότητα του να κερδίσει ενώ ο Υ σε κάθε κίνηση του προσπαθεί να ελαχιστοποιήσει την πιθανότητα αυτή (την πιθανότητα να κερδίσει ο Χ). Βολεύει να ονομάζουμε τους παίκτες με τα ονόματα MAX και ΜΙΝ. MAX είναι ο παίκτης που θέλουμε να νικήσει και ο αλγόριθμος προσπαθεί να διαλέξει τις καλύτερες κινήσεις για αυτόν ενώ MIN είναι ο αντίπαλος.

Παίξιμο παιχνιδιών Ανεπαρκής η αρχική πληροφορία για την επίλυση του προβλήματος. Απαιτείται ειδική διαδικασία αναζήτησης. Για μη τετριμμένα παιχνίδια ο χώρος αναζήτησης είναι εξαιρετικά μεγάλος - πρακτικά είναι αδύνατο η εξαντλητική αναζήτηση. Σε πολλά παιχνίδια το ζητούμενο δεν είναι μόνο να νικήσει ο παίκτης αλλά να πετύχει και το μεγαλύτερο δυνατό σκορ (βαθμολογία ) Στην περίπτωση που σημασία έχει μόνο η νίκη ή η ισοπαλία (όπως το σκάκι) μπορούμε να δώσουμε το σκορ 1 για αυτόν που κερδίζει, 0 για αυτόν που κάνει ισοπαλία και -1 για αυτόν που χάνει. Παράδειγμα - τα 7 δεκάρικα Έστω ότι παίζουμε το παιχνίδι με τα 7 δεκαράκια (Grundy s game). Σε αυτό το παιχνίδι έχουμε 7 δεκαράκια τοποθετημένα αρχικά σε μία στοίβα. Οι δύο παίκτες παίζουν ο ένας μετά τον άλλο. Ο κάθε παίκτης, στην σειρά του πρέπει να διασπάσει μία στοίβα σε δύο άλλες στοίβες με άνισο αριθμό από δεκάρικα. Ο παίκτης που δεν μπορεί να το κάνει χάνει.

Παράδειγμα - τα 7 δεκάρικα 7, MAX 6, 1, MIN 5, 2, MIN 4, 3, MIN 5, 1, 1, MAX 4, 2, 1, MAX 3, 2, 2, MAX 3, 3, 1, MAX 4, 1, 1, 1, MIN 3, 2, 1, 1, MIN 2, 2, 2, 1, MIN 3, 1, 1, 1, 1, MAX 2, 2, 1, 1, 1, MAX 2, 1, 1, 1, 1, 1, MIN Παράδειγμα - τα 7 δεκάρικα Δεν αρκεί να βρούμε ένα μονοπάτι στο γράφο από την αρχική κατάσταση σε κάποια νικηφόρα κατάσταση. Η ικανότητα του MIN να διαλέγει ποια θα είναι η κίνησή του κάνει την αναζήτηση πιο περίπλοκη. Ο πιο κατάλληλος τρόπος για να αναπαραστήσουμε την αναζήτηση είναι να χρησιμοποιήσουμε δέντρα AND-OR. Οι απόγονοι των OR κόμβων αντιπροσωπεύουν τις επιλογές κινήσεων που έχει ο παίκτης MAX ενώ οι απόγονοι των AND κόμβων αντιπροσωπεύουν τις επιλογές που έχει ο MIN παίκτης. Για να αξίζει κάποια κίνηση του MAX παίκτη (OR κόμβος) πρέπει κάθε επιτρεπτή επόμενη κίνηση του MIN (κάθε παιδί του OR κόμβου) να συμφέρει τον MAX.

Παράδειγμα - τα 7 δεκάρικα 7 ΜΑΧ 3, 1 5, 2 4, 3 ΜΙΝ 5, 1, 1 4, 2, 1 4, 2, 1 3, 2, 2 3, 3, 1 ΜΑΧ 4, 1, 1, 1 3, 2, 1, 1 3, 2, 1, 1 3, 2, 1, 1 3, 2, 1, 1 3, 2, 1, 1 ΜΙΝ 3, 1, 1, 1, 1 2, 2, 1, 1, 1 2, 2, 1, 1, 1 2, 2, 1, 1, 1 2, 2, 1, 1, 1 ΜΑΧ 2, 1, 1, 1, 1, 1 ΜΙΝ Η διαδικασία MIN-MAX Κατασκευάζουμε το πλήρες δέντρο του παιχνιδιού (το δέντρο AND-OR). Βαθμολογούμε τους κόμβους φύλα (τελικές καταστάσεις) σύμφωνα με την βαθμολογία που θα έπαιρνε ο παίκτης MAX αν το παιχνίδι κατέληγε σε εκείνη την κατάσταση. Εφαρμόζουμε τα παρακάτω δύο βήματα επαναληπτικά μέχρι όλοι οι κόμβοι του δέντρου να έχουν βαθμολογηθεί: Για κάθε κόμβο MAX (AND κόμβος) τα παιδιά του οποίου έχουν όλα βαθμολογηθεί υπολογίζουμε το μέγιστο αυτών των βαθμών και του αναθέτουμε αυτή την τιμή. Για κάθε κόμβο MIN (OR κόμβος) τα παιδιά του οποίου έχουν όλα βαθμολογηθεί υπολογίζουμε το ελάχιστο αυτών των βαθμών και του αναθέτουμε αυτή την τιμή.

Παράδειγμα ΜΙΝ-ΜΑΧ (7 δεκάρικα) -1 ΜΑΧ 7-1 -1-1 3, 1 5, 2 4, 3 ΜΙΝ 1-1 -1 1-1 5, 1, 1 4, 2, 1 4, 2, 1 3, 2, 2 3, 3, 1 ΜΑΧ 1-1 -1-1 -1 4, 1, 1, 1 3, 2, 1, 1 3, 2, 1, 1 3, 2, 1, 1 3, 2, 1, 1 3, 2, 1, 1-1 ΜΙΝ 3, 1, 1, 1, 1 1-1 -1 2, 2, 1, 1, 1 2, 2, 1, 1, 1 2, 2, 1, 1, 1-1 -1 2, 2, 1, 1, 1 ΜΑΧ 2, 1, 1, 1, 1, 1 1 ΜΙΝ Πρακτικά προβλήματα Πρόβλημα : συνήθως τα πλήρη δέντρα είναι εξαιρετικά μεγάλα - δεν χωράνε στη μνήμη. Λύση : αναπτύσσουμε μερικώς το δέντρο και εκτιμάμε την τιμή για τους κόμβους φύλα. Προβλήματα : πότε σταματάμε την ανάπτυξη του δέντρου; πώς υπολογίσουμε την τιμή στα φύλα; Λύσεις : ανάπτυξη μέχρι σταθερό βάθος ευριστική συνάρτηση εκτίμησης αξίας

Η τεχνική Alfa-Beta (α-β) Αποφυγή των περιττών πράξεων του ΜΙΝ-ΜΑΧ. Ο αλγόριθμος Alfa-Beta εκμεταλλεύεται ορισμένες ιδιότητες του αλγορίθμου ΜΙΝ-ΜΑΧ και επιτρέπει τον υπολογισμό της επόμενης κίνησης χωρίς να υπολογίσει την τιμή όλων των κόμβων του δέντρου. Δεν επηρεάζει την απόφαση του αλγορίθμου MIN-MAX αφού κάνει περικοπές μόνο σε κλαδιά τα οποία σίγουρα δεν θα επηρεάσουν την τελική απόφαση. Κάνει περικοπή μόνο ασήμαντων κλαδιών : ΜΙΝ (Χ 1, Χ 2,..., X k-1, X k ) = MIN (Χ 1, Χ 2,..., X k-1 ) αν υπάρχει i με 0<i<k και X k > X i. ΜAX (Χ 1, Χ 2,..., X k-1, X k ) = MAX (Χ 1, Χ 2,..., X k-1 ) αν υπάρχει i με 0<i<k και X k < X i. Η τεχνική Alfa-Beta (α-β) Έστω, για παράδειγμα ότι πρέπει να υπολογιστεί η τιμή ενός MIN κόμβου. Έχουμε υπολογίσει την τιμή του πρώτου παιδιού του και για το επόμενο παιδί του ξέρουμε (με κάποιον τρόπο) ότι η τιμή του θα είναι μεγαλύτερη από την τιμή του πρώτου παιδιού. Μπορούμε με σιγουριά να πούμε ότι η ακριβής τιμή του δεύτερου παιδιού δεν θα αλλάξει σε τίποτα την τελική τιμή του κόμβου. Δεν αλλοιώνει το αποτέλεσμα του ΜΙΝ-ΜΑΧ. Μπορεί να χρησιμοποιηθεί και κατα την διάρκεια ανάπτυξης του δέντρου. Έχει σημασία η σειρά εξέτασης των παιδιών ενός κόμβου. Σταματάμε την εξέταση ενός κόμβου όταν ισχύει Alfa>Beta.

Ο αλγόριθμος Alfa-Beta 1. Θέσε α = ένας πολύ μεγάλος αρνητικός αριθμός. 2. Θέσε β = ένας πολύ μεγάλος θετικός αριθμός. 3. Θέσε ρ = η θέση από την οποία πρέπει να παίξει ο παίκτης MAX. 4. H minmax τιμή του κόμβου ρ = TIMH_MAX(ρ, α, β) ΤΙΜΗ_ΜΑΧ(ρ, α, β) 1. Αν Είναι_Φύλλο(ρ) τότε επέστρεψε Αξία_Κόμβου(ρ). 2. Διαφορετικά εκτέλεσε τα παρακάτω βήματα για κάθε παιδί π του ρ. 2.1. Θέσε α = ΜΑΧ(α, ΤΙΜΗ_ΜΙΝ(π, α, β)) 2.2. Αν α β επέστρεψε β. 3. Επέστρεψε α. ΤΙΜΗ_ΜΙΝ(ρ, α, β) 1. Αν Είναι_Φύλλο(ρ) τότε επέστρεψε Αξία_Κόμβου(ρ). 2. Διαφορετικά εκτέλεσε τα παρακάτω βήματα για κάθε παιδί π του ρ. 2.1. Θέσε β = ΜΙΝ(β, ΤΙΜΗ_ΜΑΧ(π, α, β)) 2.2. Αν α β επέστρεψε α. 3. Επέστρεψε β. Παράδειγμα 8 A 3 0 8 B C D 7 8 3 0 6 8 9 E F G H I J K L M N O P Q R S T U V W X Y 7 6 8 5 2 3 0-2 6 2 5 8 9 2 Ο Alfa-Beta δεν θα εξετάσει τους κόμβους : O, I, T, U, Y. Επιπλέον, για τους κόμβους F, C, K δεν θα υπολογιστεί η ακριβής MINMAX τιμή τους.

ΑΝΑΠΑΡΑΣΤΑΣΗ ΓΝΩΣΗΣ Αναπαράσταση Χρειαζόµαστε µια µέθοδο να εισάγουµε γεγονότα στον υπολογιστή ένα τρόπο ώστε ο υπολογιστής να µπορεί να συνάγει συµπεράσµατα µε και για τα γεγονότα αυτά. Η φυσική γλώσσα δεν είναι επαρκής. Παράδειγµα: Πολύ σκληρό νόµισµα. Αµφιβολία Ποίος ο µηχανισµός εξαγωγής συµπερασµάτων στην φυσική γλώσσα; 2

Υπόθεση φυσικών συµβόλων Ευφυΐα µπορεί να επιτυγχάνεται µε: 1. σύµβολα που αναπαριστούν τις κρίσιµες πτυχές του δοσµένου προβλήµατος. 2. πράξεις πάνω σε σύµβολα που οδηγούν σε εν δυνάµει λύσεις. 3. αναζήτηση λύσεων ανάµεσα στις εν δυνάµει λύσεις. Έχουµε εξετάσει το 3 και τώρα θα εξετάσουµε τα 1,2. 3 Προδιαγραφές γλώσσας τεχν. νοηµ. Χειρισµός ποσοτικής πληροφορίας. υνατότητα εξαγωγής συµπερασµάτων. οι κανόνες εξαγωγής συµπερασµάτων µας επιτρέπουν να δηλώνουµε γεγονότα χωρίς να τα απαριθµούµε (επαγωγικές βάσεις δεδοµένων, deductive database) Αναπαράσταση πολύπλοκων καταστάσεων (χρόνος, αλλαγές, κτλ.) Υποστήριξη meta-συλλογιστικής ανάλυση γνώσης, µάθηση κτλ. εξωτερική αντίληψη του συστήµατος. 4

Τι θα εξετάσουµε; Τρόπους αναπαράστασης γνώσης Λογική Κανόνες Παραγωγής Σηµασιολογικά ίκτυα Πλαίσια Συστήµατα που χρησιµοποιούν τέτοιους µηχανισµούς Έµπειρα Συστήµατα 5 Κατηγορηµατικός λογισµός πρώτης τάξης (ΚΛΠΤ) Η βασική γλώσσα αναπαράστασης. Ως πρός την αναπαράσταση είναι καλά ορισµένος (µαθηµατική λογική) Ως πρός την εξαγωγή συµπερασµάτων είναι συνεπής: οι εξαγωγές συµπερασµάτων είναι σωστές. πλήρης: όλες οι δυνατές εξαγωγές συµπερασµάτων µπορούν να παραχθούν µηχανιστικά. Σηµ. Μπορούµε να χρησιµοποιήσουµε τον ΚΛΠΤ σαν γλώσσα αναπαράστασης σε ένα πιο αποδοτικό σύστηµα εξαγωγής συµπερασµάτων (αλλά λιγότερο συνεπές και πλήρες). 6

Γλώσσα Πρόβληµα: ποιές είναι οι ατοµικές οντότητες (atoms); Λύση: µια λογικά τέλεια (ιδανική) γλώσσα. ένα προς ένα αντιστοιχία µεταξύ γεγονότων και συµβόλων. σχέση µεταξύ γεγονότων [a R b]. υο κατηγορίες ατοµικές οντότητες, σχέσεις λογικοί τελεστές: and, or, if-then, not κτλ. Θα εξετάσουµε πρώτα τον προτασιακό λογισµό και µετά τον ΚΛΠΤ. εν έχει ποσοδείκτες εν έχει ισότητα 7 Τύποι εδοµένων Προτάσεις Αποτιµούνται λογικά (αληθείς, ψευδείς) P, Q, R, δηλώσεις για τα γεγονότα R: δεν-βρέχει-τώρα Σύµβολα αληθείας true, false µε την προφανή ερµηνεία 8

Λογικοί τελεστές και ( ) ή ( ) συνεπάγεται ( ) ισοδυναµεί ( ) όχι ( ) χρησιµοποιούνται για την κατασκευή συνθετών προτάσεων 9 Πίνακες Αληθείας KB = (((P Q) = R) (Q = P) Q) P Q R (P Q) = R Q=P Q KB R KB = R ------------------------------------------------- T T T T T T T T T T T F F T T F F T T F T T T F F T T T F F T T F F F T F T T T F T F T T F T F T F T F F T F F T T T F F T T F F F T T F F F T 10

Καλά ορισµένες φόρµουλες - (wffs) Προτάσεις: όπως και στις γλώσσες προγραµµατισµού, υπάρχουν κανόνες δηµιουργίας σύνθετων δηλώσεων. Οι προτάσεις (P, Q, R, ) είναι wffs Τα σύµβολα αληθείας (true, false) είναι wffs Αν A είναι wff, τότε και τα A and (A) είναι wffs Αν A και B είναι wffs, τότε και τα A B A B A B A B είναι wffs Όλες οι wff µπορούν να χαρακτηριστούν αληθείς ή ψευδείς. 11 Παράδειγµα Ερµηνείας [(P Q) R] (S V) Αρχικά χρειαζόµαστε µια ερµηνεία P : T; Q : F; R : T; S : F; V : T Τότε υπολογίζουµε P Q : T (P Q) R : T S V : F συνολικά: F 12

Λογικοί Τελεστές Μπορούµε να τους φανταστούµε σαν συναρτήσεις µε µεταβλητές λογικές τιµές και αποτέλεσµα µια λογική τιµή (true, false). Το αποτέλεσµα των συναρτήσεων εξαρτάται από τους πίνακες αληθείας Επειδή οι πιθανές τιµές των µεταβλητών είναι δύο µπορούµε να απαριθµήσουµε τα αντίστοιχα αποτελέσµατα 13 Είναι Wff; P Q R (P Q) (R S) P (Q R) 14

Παράδειγµα αναπαράστασης γνώσης στον προτασιακό λογισµό R : Βρέχει B : Πάρε το λεωφορείο να πάς στο ΕΜΠ W : Πήγαινε µε τα πόδια στο ΕΜΠ ηλώνουµε στο σύστηµα R B ( Αν Βρέχει, (τότε) Πάρε το λεωφορείο να πάς στο ΕΜΠ ) R W ( Αν δέν Βρέχει, (τότε) Πήγαινε µε τα πόδια στο ΕΜΠ ) Ιδανικά, θα θέλαµε ένα σύστηµα που από µόνο του να εξάγει ότι αν βρέχει τότε πάρε λεωφορείο. 15 Εγκυρότητα Μια wff είναι έγκυρη (valid) αν είναι αληθής µε κάθε δυνατή ερµηνεία P P είναι έγκυρη αν P τότε όλη η πρόταση είναι αληθής αν P είναι ψευδής τότε η P είναι αληθής και όλη η πρόταση είναι αληθής (P Q) ( P Q) δεν είναι έγκυρη όταν P είναι αληθής και Q είναι αληθής, η πρόταση δεν είναι αληθής Αρκεί ένα αντιπαράδειγµα για να αποδείξει ότι µια πρόταση δεν είναι έγκυρη. 16

Ικανοποιησιµότητα Μια wff είναι ικανοποιήσιµη (satisfiable) αν υπάρχει ερµηνεία που την επαληθεύει Παραδείγµατα P είναι ικανοποιήσιµη (απλά θεωρούµε P αληθή) P P δεν είναι ικανοποιήσιµη αν P είναι αληθής, P είναι ψευδής και όλη η πρόταση είναι ψευδής, ενώ αν P είναι ψευδής τότε η P είναι αληθής και όλη η πρόταση είναι ψευδής P Q είναι ικανοποιήσιµη π.χ. αν P είναι αληθής και Q είναι αληθής κ.λ.π. Μια wff που δεν µπορεί να ικανοποιηθεί κάτω απο οποιαδήποτε ερµηνεία λέγεται αντίφαση 17 Σύνοψη Ο προτασιακός λογίσµος είναι ένας ακριβής τρόπος για να δηλώσουµε γεγονότα στον υπολογιστή Το συντακτικό δηλώνει τι είναι γραµµατικώς ορθό. Η σηµειολογία καθορίζει αν ένα wff είναι αληθές, δεδοµένης µιας ερµηνείας. Η µέταφραση αναφέρεται στο πως οι χρήστες δηλώνουν αναθέσεις σε βασικές προτάσεις. 18

Εξαγωγή κανόνων στον προτασιακό λογισµό Με χρήση των κανόνων εξαγωγής παράγουµε νέα wffs Συµβολισµός <δοσµένα wff που ταιριάζουν σ αυτή τη µορφή> --------------------------------------------------- <παραγόµενα wff> 19 Απάλειψη του και Έστω: A 1 Α 2... Α ν Εξάγουµε: A i Αν µια σύζευξη είναι αληθής τότε και κάθε στοιχείο της είναι αληθές Εισαγωγή του και Έστω: A, A,, A 1 2 n Εξάγουµε: A Α... Α 1 2 ν Αν γνωρίζουµε ότι κάποια γεγονότα είναι αληθή τότε και η σύζευξη τους είναι αληθής 20

Απάλειψη ιπλής άρνησης Έστω: A, Εξάγουµε: A υο αρνήσεις αλληλοαναιρούνται Εισαγωγή ιπλής άρνησης Έστω: A Εξάγουµε: A Εισαγωγή του ή Έστω: A Εξάγουµε : A B Αν A είναι αληθής, τότε A B είναι αληθής, για κάθε B 21 Συνεπαγωγή (modus ponens) Έστω: A B και A Εξάγουµε: B Εναλλακτικά: Έστω: A B, και A τότε B Αν «ξέρουµε» ότι ένας κανόνας ισχύει και ότι η υπόθεση του είναι αληθής τότε και το συµπέρασµα του είναι αληθές 22

Επίλυση (resolution) Έστω: A B και B Εξάγουµε: A Εναλλακτικά: άν A B, B τότε A Μια παραλλαγή του modus ponens Αν τουλάχιστον µια από τις δύο wwf είναι αληθής και γνωρίζουµε ότι η µια είναι ψευδής τότε η άλλη είναι απαραίτητα αληθής 23 Resolution [πιο δύσκολο] Έστω: A B, και B C Εξάγουµε: A C Εναλλακτικά: έστω: A B και B C τότε A C 24

Αποδείξεις στον προτασιακό λογισµό σαν διαδικασία αναζήτησης Πίνακες Αληθείας Πολλές µεταβλητές παράγουν µεγάλους πίνακες Χρήση Κανόνων Αναπαράσταση Κατάστασης: µία λίστα των wff που είναι αληθείς Πράξεις: οι κανόνες εξαγωγής Αρχική κατάσταση: τα δεδοµένα µας (τι ισχύει αρχικά) Τελική κατάσταση: τα wff την αλήθεια των οποίων πρέπει να αποδείξουµε 25 Αλγόριθµος Γράφουµε και αριθµούµε όλα τα δεδοµένα Παράγουµε νέες προτάσεις χρησιµοποιώντας τους κανόνες εξαγωγής δικαιολογούµε την παραγωγή αποτελέσµατος µε βάση τους αριθµούς των wff και των κανόνων που χρησιµοποιούνται µπορούµε να χρησιµοποιήσουµε προτάσεις που έχουν παραχθεί προηγουµένως δώσε έναν νέο αριθµό σε κάθε νέα πρόταση Όταν το επιθυµητό wff παραχθεί έχουµε τελειώσει ποιά είναι η στρατηγική αναζήτησης; 26

Χρησιµοποιώντας προτασιακό λογισµό Κάθε άνθρωπος είναι θνητός. Ο Σωκράτης είναι άνθρωπος άρα ο Σωκράτης είναι θνητός. Προφανώς ο συλλογισµός είναι σωστός. υστυχώς δεν µπορούµε να το αποδείξουµε σε προτασιακό λογισµό P: Κάθε άνθρωπος είναι θνητός Q: Ο Σωκράτης είναι άνθρωπος R: Ο Σωκράτης είναι θνητός (P Q) R δεν ισχύει ΠΑΝΤΑ 27 Κατηγορικός Λογισµός Πρώτης Τάξης (ΚΛΠΤ)

Προτασιακή Λογική ή ΚΛΠΤ Ο προτασιακός λογισµός χειρίζεται µόνο γεγονότα P : Αγαπώ-όλα-τα-σκυλιά τα γεγονότα είναι είτε αληθή είτε ψευδή Ο ΚΛ είναι πιο κοντά στην πραγµατικότητα αντικείµενα (objects): στιγµιότυπα του πραγµατικού κόσµου (χωρίς λογική τιµή) ιδιότητες (properties) και σχέσεις (relations) των αντικείµενων και µεταξύ αυτών (µε λογική τιµή) Ο ΚΛΠΤ µετασχηµατίζει τα γεγονότα σε αντικείµενα και σχέσεις µπορεί να θεωρηθεί σαν επέκταση του προτασιακού λογισµού 29 Κατηγορικός Λογισµός Οι όροι (terms) αναφέρονται σε αντικείµενα John, Mary, κλπ. συναρτήσεις (ένα προς ένα αντιστοιχία) οι όροι δεν έχουν λογική τιµή Κατηγορήµατα (predicates) [προτάσεις µε ορίσµατα] Married(John, Mary) Ποσοδείκτες (quantifiers) x[valuable(x)] x[valuable(x)] Ισότητα: Αναφέρονται οι δυο όροι στο ίδιο αντικείµενο; 30

Όροι Λογικές εκφράσεις που αναφέρονται σε αντικείµενα Σταθερές π.χ., sue Μεταβλητές χρησιµοποιούνται µε ποσοδείκτες π.χ., x Συναρτήσεις MotherOf(Sue) οι συναρτήσεις αναπαριστούν αντικείµενα, συνεπώς µπορούν να φωλιαστούν. 31 Προτάσεις Όπως και στην προτασιακή λογική οι προτάσεις έχουν µια λογική τιµή Στον ΚΛΠΤ, µόνο τα κατηγορήµατα έχουν λογικές τιµές. Συνεπώς οι όροι από µόνοι τους δεν είναι wffs Πρέπει να είναι όρισµα ή τµήµα ορίσµατος ενός κατηγορήµατος 32

Κατασκευάζοντας προτάσεις Ατοµικές προτάσεις: ένα απλό κατηγόρηµα Married(Sue, FatherOf(Ann)) Σύνθετες προτάσεις όπως στην προτασιακή λογική, κατασκευάζουµε πιο σύνθετες προτάσεις συνδυάζοντας κατηγορήµατα µε λογικούς τελεστές or, and, implies, equivalence, not ποσοδείκτες ισότητα 33 Ποσοδείκτες Μας επιτρέπουν να εκφράσουµε ιδιότητες ενός συνόλου αντικειµένων χωρίς να απαριθµούµε τα αντικείµενα Καθολικός x[p(x)] : T αν P(x) είναι αληθής για κάθε αντικείµενο της µετάφρασης µας. π.χ., όλοι οι άνθρωποι είναι θνητοί Υπαρξιακός x[p(x)] : T αν P(x) είναι αληθής για κάποια αντικείµενα της µετάφρασης µας π.χ., αγαπώ κάποιο σκύλο 34

Ισότητα Ένα κατηγόρηµα Επιστέφει λογική τιµή π.χ., Father(john) = henry TermA = TermB είναι συντοµογραφία του Equal(TermA, TermB) Είναι αληθές αν οι όροι Α και Β αναφέρονται στο ίδιο αντικείµενο 35 Wffs? Tall(john) MotherOf(john) MotherOf(john, mary) john = BrotherOf(bill) equal(john, BrotherOf(bill)) F( p(1) q(2) ) 36

Ελληνικά ΚΛΠΤ Κάθε φυσικός αριθµός είναι και πραγµατικός x [natural(x) real(x)] Τί ισχύει µε: x [natural(x) real(x)]; x [natural(x) real(x)]; x [ natural(x) real(x)]; 37 Περισσότερα ελληνικά ΚΛΠΤ Υπάρχει πρώτος αριθµός µεγαλύτερος από 100 x [Prime(x) GreaterThan(x, 100)] x [Prime(x) x > 100] εν υπάρχει µεγαλύτερος πρώτος αριθµός no-largest-prime x[prime(x) y[prime(y) GreaterThan(Y, X)]] Κάθε αριθµός έχει αντίθετο x [number(x) y[ Equal(Plus(x, y), 0)] 38

Χρησιµοποιώντας και τους δύο ποσοδείκτες Σε όλους αρέσει κάποιο σκυλί x[human(x) y[dog(y) likes(x, y)]] Σε όλους αρέσει ένα σκυλί y[dog(y) x[human(x) likes(x, y)]] Σε κάθε ένα αρέσει και διαφορετικό σκυλί x[human(x) y[dog(y) likes(x, y) z[human(z) likes(z, y)] x = z]] 39 Θέση των ποσοδεικτών Σε όλους αρέσει κάποιο σκυλί x[human(x) y[dog(y) likes(x, y)]] Είναι το ακόλουθο σωστό; x[ y[(human(x) dog(y)) likes(x, y)]] Ερµηνεία human(a) : T; human(b) : F; dog(a) : F; dog(b) : T; likes(a, a) : T; likes(a, b) : F; likes(b, a) : F; likes(b, b) : T Γενικώς, ποτέ δεν χρησιµοποιούµε x µε και x µε 40

Ποια είναι η λογική τιµή των wffs του ΚΛΠΤ; ΚΛΠΤ ερµηνείες Ο χρήστης πρέπει να δηλώσει µια πεπερασµένη λίστα από αντικείµενα ο κόσµος µας Για κάθε συνάρτηση, µια απεικόνιση από τις παραµέτρους σε ένα αντικείµενο π.χ., Father(john) αντιστοιχεί στο bill Για κάθε κατηγόρηµα, µια απεικόνιση σε λογική τιµή 41 Αποφασίζοντας την λογική τιµή για wff του ΚΛΠΤ Ορίζουµε µια ερµηνεία (interpretation), I Υπολογίζουµε την λογική τιµή των κατηγορηµάτων: ελέγχουµε τις συναρτήσεις µέχρι να µείνουν µόνο σταθερές, τότε ελέγχουµε την λογική των κατηγορηµάτων terma = termb:ελέγχουµε τις συναρτήσεις µέχρι να µείνουν µόνο σταθερές, τότε επέστρεψε αληθές αν είναι η ίδια σταθερά αλλιώς επέστρεψε ψευδές. wffa (λογικός τελεστής) wffb υπολογίζουµε την λογική τιµή των wff χρησιµοποιούµε τους πίνακες αληθείας για να καθορίσουµε την λογική τιµή των σύνθετων wff 42

Λογική τιµή για ποσοδείκτες x wff(x) αντικαθιστούµε διαδοχικά το x µε κάθε σταθερά στην µετάφραση. αν wff(σταθερά) είναι αληθής για κάθε σταθερά, τότε x(wff) είναι επίσης αληθής. x wff(x) όπως και παραπάνω, µόνο που αρκεί το wff(σταθερά) να είναι µια φορά αληθής Υποθέτουµε ότι έχουµε πάντα ένα µη κενό σύνολο σταθερών 43 Αναπαράσταση αλλαγών On (blocka, blockb) είναι είτε T είτε F δεν υπάρχει τρόπος να αλλάξουµε το γεγονός σε προτασιακό λογισµό Λύση: χρονοσηµασµένα wffs προσθέτουµε µια παράµετρο που καθορίζει πότε έγινε µια αλλαγή On(blockA, blockb, S0) On(blockA, blockc, S1) όπου S0 & S1 είναι καταστάσεις 44

Αλλάζοντας τον κόσµο αναφοράς Οι ενέργειες αλλάζουν τις καταστάσεις Χρειαζόµαστε ένα όνοµα για την νέα κατάσταση χρησιµοποιούµε συναρτήσεις συγκεκριµένα την συνάρτηση Result αντιστοιχεί µια ενέργεια και µια κατάσταση σε νέα κατάσταση Result(<action>, <state>) ή <state> 45 Παράδειγµα: ο κόσµος των κύβων C C Έστω x,y,z,s[block(x) Block(y) Table(z1) State(s) On(x, z) Clear(x, s) clear(y, s)] State(Result(STACK(x, y), s)) On(x, y, Result(STACK(x, y), s)) clear(x, Result(STACK(x, y), s)) clear(y, Result(STACK(x, y), s) Μπορούµε να χρησιµοποιήσουµε κανόνες εξαγωγής για να παράγουµε πλάνα (ακολουθίες ενεργειών) B A B A 46

Τι λείπει; Τι γνωρίζουµε για το A στην νέα κατάσταση; Τι γίνεται µε το πρόβληµα της διαδοχής (frame problem): Τι µένει ίδιο αλλάζοντας καταστάσεις; Τα Blocks µένουν ελεύθερα, εκτός αν κάτι τοποθετηθεί πάνω τους u,x,y,s[clear(u, s) (u = y) clear(u, Result(STACK(x, y), s)) Παράδειγµα: Βάφοντας ένα σπίτι δεν αλλάζει ο ιδιοκτήτης s,h,p[state(s) House(h) Human(p) Owns(p, h, s) Owns(p, h, Result(paint(h), s))] 47 Μια εναλλακτική προσέγγιση Έστω ότι οι ιδιότητες µένουν ίδιες έκτος αν τελεστεί συγκεκριµένη ενέργεια u,x,s,a [Block(u) State(s) Action(a) Clear(u, s) (a = STACK(x, u)) (a = COVERWITHBLANKET(u)) (a = SMASH(u)) => clear(u, Result(a, s)] Αυτό συνήθως παράγει µικρότερους κανόνες αλλά είναι λιγότερο ξεκάθαρο σε δοµή (modular) όταν οριστούν νέες ενέργειες, πρέπει να ελέγξουµε κάθε ενέργεια για τυχόν διόρθωση 48

Προβλήµατα µε τον φορµαλισµό Πρόβληµα κατάταξης µπορούµε πάντα να απ αριθµήσουµε όλες τις προϋποθέσεις που επάγουν µια πραγµατική πράξη; π.χ. εκκίνηση αυτοκινήτου Πρόβληµα διακλάδωσης πρέπει να αναπαραστήσουµε σαφώς τις συνέπειες µια πράξης µετακινώντας ένα αυτοκίνητο από το A στο B, µετακινούµε και το σύστηµα διευθύνσεις, την ρεζέρβα κλπ µπορούµε να το χειριστούµε αλλά γίνεται βαρετό 49 Συνεπαγωγή στον ΚΛΠΤ

Ενοποίηση Θέλουµε να προσθέσουµε ένα νέο γεγονός στην βάση γνώσης, που έχει παραχθεί από ένα κανόνα αν ξέρουµε ότι WffA και WffA WffB, όπου WffA και WffA ενοποιούνται µε λίστα σύνδεσης (binding list) θ, µπορούµε να εξάγουµε WffB, όπου WffB είναι το αποτέλεσµα της εφαρµογής των µετασχηµατισµών του θ στο WffB 51 Παράδειγµα ενοποίησης Έστω Knows(john,x) Hates(john,x) Knows(john,jane) Knows(y,Mother(y)) Knows(x,liz) τότε UNIFY(Knows(john,x),Hates(john,x))={x/jane} UNIFY(Knows(john,x),Hates(y,Mother(y)))= {x/john,x/mother(john)} UNIFY(Knows(john,x),Hates(x,liz)=fail 52

Η διαδικασία της ενοποίησης οσµένων δυο wff, καθορίζουµε τους ελάχιστους περιορισµούς που πρέπει να προσθέσουµε ώστε τα δύο wff να γίνουν ίδια MGU = most general unifier (πιο γενικός ενοποιητής) UNIFY(Knows(john,x),Knows(y,z)) = {y/john,x/z} ή {y/john,x/z, w/freda} ή... MGU {y/john,x/z} 53 Επίλυση (Resolution) Σκοπός είναι να βρούµε λύσεις Ιδέα: κάνε δύο wff µε αντίθετα σύµβολα ίδια Χρησιµοποίησε ανάλυση περιπτώσεων για την απαλοιφή τους. Εφαρµογή των παραγόµενων ενοποιήσεων στα υπολειπόµενα wffs 54

Πληρότητα Αυτός ο κανόνας σύν την «πρό-επεξεργασία» είναι πλήρης για τον ΚΛΠΤ είναι το µόνο που χρειαζόµαστε για να συνάγουµε όλες της λογικές συνεπαγωγές της βάσης γνώσης. Αν KB = alpha, τότε KB - alpha (χρησιµοποιώντας resolution) δηλαδή Αν κάτι συνεπάγεται λογικά από µια βάση γνώσεων, τότε µε resolution (χρησιµοποιώντας έναν πλήρη αλγόριθµο αναζήτησης όπως ο BFS) θα βρούµε µια λύση 55 Αλγόριθµος ενοποίησης Πιο γενικός ενοποιητής Προϋπόθεση: µοναδικότητα ονοµάτων Παράδειγµα Resolution: Να αποδειχθεί ότι η άρνηση ένος θεωρήµατος δεν είναι αληθής Παράδειγµα P(x,y) P(y,z) R(x,z) P(John,Bill) P(Bill,Mary) απόδειξε οτι R(John,Mary) 56

Παράδειγµα Resolution R(John,Mary) P(x,y) P(y,z) R(x,z) x=john, z=mary P(John,y) P(y,Mary) P(John,Bill) y=bill P(Bill,Mary) P(Bill,Mary) Αντίθεση 57 Ένα πιο αναλυτικό παράδειγµα A C B B A C On(C,A) On(A,Table) είξε: Above(b,Table) x y [On(x,y) Above(x,y)] x y z [Above(x,y) Above(y,z) Above(x,z)] σε κανονική µορφή σύζευξης On(x,y) Above(x,y) Above(x,y) Above(y,z) Above(x,z) 58

Ένα πιο αναλυτικό παράδειγµα Για να αποδείξουµε Above(b,Table) µπορούµε να δείξουµε ότι Above(b,Table) είναι λάθος. Above(b,Table) Above(x,y) Above(y,z) Above(x,z) x=b, z=table Above(b,y) Above(y, Table) On(u,v) Above(u,v) u=b, v=y On(u,v) Above(u,v) u=y, v=table On(b,y) On(y,Table) 59 Ένα πιο αναλυτικό παράδειγµα (συνέχεια) On(b,y) On(y,Table) On(b,a) y=a On(a,Table) On(a,Table) Αντίθεση 60

ύο µορφές επίλυσης προβληµάτων Ευθεία ανάλυση εργαζόµαστε από τα δεδοµένα προς τα ζητούµενα συστήµατα παραγωγής Αντίστροφη ανάλυση εργαζόµαστε από τα ζητούµενα προς τα δεδοµένα Prolog 61 Συµπεράσµατα Theorem Proving Καλό για µερικά προβλήµατα Theorem provers αργοί ύσκολη η έκφραση ενός προβλήµατος στην λογική Αδύνατο να εκφράσεις heuristics 62