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

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

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

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

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

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

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

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

Παράδειγµα: Οικονοµικός Σύµβουλος

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

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

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

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

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

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

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

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

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

Συστήματα Γνώσης. Θεωρητικό Κομμάτι Μαθήματος Ενότητα 2: Βασικές Αρχές Αναπαράστασης Γνώσης και Συλλογιστικής

Τεχνητή Νοημοσύνη (ΥΠ23) 6 ο εξάμηνο Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ουρανία Χατζή

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

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

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

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

Ε ανάληψη. Παιχνίδια τύχης. Παιχνίδια ατελούς ληροφόρησης. Λογικοί ράκτορες. ΠΛΗ 405 Τεχνητή Νοηµοσύνη αναζήτηση expectiminimax

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

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

ΠΛΗ 405 Τεχνητή Νοηµοσύνη

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

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

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

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

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

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

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

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

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

Κεφάλαιο 9. Λογική. Τεχνητή Νοηµοσύνη - Β' Έκδοση. Ι. Βλαχάβας, Π. Κεφαλάς, Ν. Βασιλειάδης, Φ. Κόκκορας, Η. Σακελλαρίου

ΚΕΦΑΛΑΙΟ 3: Κατηγορηματική Λογική Πρώτης Τάξεως και Λογικά Προγράμματα

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

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

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

Επανάληψη. ΗΥ-180 Spring 2019

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

. (iii) Μόνο οι εκφράσεις που σχηµατίζονται από τα i,ii είναι προτασιακοί τύποι.

o AND o IF o SUMPRODUCT

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

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

A. ΤΟ ΛΕΞΙΛΟΓΙΟ ΤΗΣ ΛΟΓΙΚΗΣ

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

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

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

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

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

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

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

Κανονικές μορφές - Ορισμοί

Σύνοψη Προηγούµενου. Γλώσσες χωρίς Συµφραζόµενα (2) Ισοδυναµία CFG και PDA. Σε αυτό το µάθηµα. Αυτόµατα Στοίβας Pushdown Automata

Κεφάλαιο 8. Βασικές Αρχές Αναπαράστασης Γνώσης και Συλλογιστικής. Τεχνητή Νοηµοσύνη - Β' Έκδοση

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

Κατηγορηµατική Λογική

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

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

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

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

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

Μαθηματική Λογική και Απόδειξη

3 Αναδροµή και Επαγωγή

Λογική πρώτης τάξης. Παραδοχές

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

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

Συνέπεια, Εγκυρότητα, Συνεπαγωγή, Ισοδυναμία, Κανονικές μορφές, Αλγόριθμοι μετατροπής σε CNF-DNF

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

ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ Ι (ΑΡΤΙΟΙ) Λυσεις Ασκησεων - Φυλλαδιο 2

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

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

p p p q p q p q p q

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

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

Μάθηµα 1. Κεφάλαιο 1o: Συστήµατα. γ R παριστάνει ευθεία και καλείται γραµµική εξίσωση µε δύο αγνώστους.

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

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

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

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

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

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

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

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

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

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

τη µέθοδο της µαθηµατικής επαγωγής για να αποδείξουµε τη Ϲητούµενη ισότητα.

Αναπαράσταση Γνώσης. Αναπαράσταση Γνώσης με Λογική. Προτασιακή Λογική Λογική Πρώτης Τάξης

Συνέπεια, Εγκυρότητα, Συνεπαγωγή, Ισοδυναμία, Κανονικές μορφές, Αλγόριθμοι μετατροπής σε CNF-DNF

Σχολικός Σύµβουλος ΠΕ03

Επίλυση προβληµάτων. Περιγραφή προβληµάτων Αλγόριθµοι αναζήτησης Αλγόριθµοι τυφλής αναζήτησης Αλγόριθµοι ευρετικής αναζήτησης

ΑΛΓΕΒΡΙΚΕΣ ΟΜΕΣ Ι. Ασκησεις - Φυλλαδιο 2

Υποδ: Χρησιμοποιήστε τον ορισμό της λογικής συνεπαγωγής (λογικής κάλυψης).

ΗΥ Λογική. Διδάσκων: Δημήτρης Πλεξουσάκης Καθηγητής

Πρόταση. Αληθείς Προτάσεις

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

Μαθηματικά. Α' Λυκείου. Μαρίνος Παπαδόπουλος

Transcript:

Αναπαράσταση Γνώσης και Συλλογιστικές Γενικά Προτασιακή λογική Λογική πρώτης τάξης Λογικός προγραµµατισµός Επεκτάσεις της Λογικής Πρώτης Τάξης Συστήµατα Κανόνων Επίλογος Αναπαράσταση γνώσης Αναπαράσταση γνώσης είναι ένα σύνολο συντακτικών και σηµασιολογικών παραδοχών, που καθιστούν δυνατή την περιγραφή ενός κόσµου. Μία µέθοδος αναπαράστασης γνώσης έχει: Συντακτικό (syntax): Τα σύµβολα που χρησιµοποιούνται και οι κανόνες µε τους οποίους συνδυάζονται. Σηµασιολογία (semantics): Η σηµασία που αποδίδουµε στα σύµβολα και στους διάφορους έγκυρους συνδυασµούς τους. Η φυσική γλώσσα είναι ακατάλληλη για αναπαράσταση γνώσης λόγω της πολυσηµαντότητας της (ambiguity) και της ερµηνείας µε βάση τα συµφραζόµενα (context). Γιάννης Ρεφανίδης 2 1

Εξαγωγή συµπερασµάτων Μηχανισµός εξαγωγής συµπερασµάτων είναι ένας αλγόριθµος (αναζήτησης) εξαγωγής συµπερασµάτων από υπάρχουσα γνώση. Κάθε µέθοδος αναπαράστασης γνώσης έχει έναν ή περισσότερους µηχανισµούς εξαγωγής συµπερασµάτων. Κριτήρια αξιολόγησης µεθόδων αναπαράστασης γνώσης: Επάρκεια αναπαράστασης (representational adequacy). Επάρκεια συνεπαγωγής (inferential adequacy). Αποδοτικότητα συνεπαγωγής (inferential efficiency). Αποδοτικότητα απόκτησης (acquisitional efficiency). Γιάννης Ρεφανίδης 3 Μέθοδοι Αναπαράστασης Γνώσης Προτασιακή λογική (Propositional logic) Λογική πρώτης τάξης (Firts-order logic) Λογικές ανώτερης τάξης Σηµασιολογικά ίκτυα Πλαίσια Σενάρια Κανόνες κλπ Γιάννης Ρεφανίδης 4 2

Αναπαράσταση Γνώσης και Συλλογιστικές Γενικά Προτασιακή λογική Λογική πρώτης τάξης Λογικός προγραµµατισµός Επεκτάσεις της Λογικής Πρώτης Τάξης Συστήµατα Κανόνων Επίλογος Προτασιακή λογική (propositional logic) Βασίζεται σε συγκεκριµένες προτάσεις που είναι αληθείς ή ψευδείς. Κάθε πρόταση έχει ένα όνοµα, συνήθως ένα κεφαλαίο γράµµα, π.χ. P, Q: P: Ο Νίκος είναι προγραµµατιστής. Q: Ο Νίκος έχει υπολογιστή. R1: Το τρίγωνο ΑΒΓ είναι οξυγώνιο. R2: Το τρίγωνο ΑΒΓ είναι ορθογώνιο. R3: Το τρίγωνο ΑΒΓ είναι αµβλυγώνιο. R4: Το τρίγωνο ΑΒΓ είναι ισόπλευρο. R5: Το τρίγωνο ΑΒΓ είναι ισογώνιο. Κάθε πρόταση µπορεί να είναι αληθής (true) ή ψευδής (false). Είναι πιθανό να µην γνωρίζουµε την τιµή αληθείας µιας πρότασης, µολονότι αυτή είναι προκαθορισµένη. εν επιτρέπεται η χρήση µεταβλητών. Γιάννης Ρεφανίδης 6 3

Σύνθετες προτάσεις Μπορούµε να συνδυάζουµε απλές προτάσεις για να φτιάχνουµε σύνθετες (complex sentences) χρησιµοποιώντας τους παρακάτω λογικούς συνδέσµους (logical connectives): Σύµβολο ή ή Ονοµασία / Επεξήγηση Σύζευξη (Λογικό ΚΑΙ) ιάζευξη (Λογικό 'Η) Άρνηση Συνεπαγωγή ιπλή συνεπαγωγή Γιάννης Ρεφανίδης 7 Πίνακας αληθείας σύνθετων προτάσεων Παρακάτω δίνεται ο πίνακας αληθείας των σύνθετων προτάσεων, µε βάση την τιµή αληθείας των απλών προτάσεων (Α=Αληθές, Ψ=Ψευδές). P Q P P Q P Q P Q P Q Ψ Ψ Α Ψ Ψ Α Α Ψ Α Α Ψ Α Α Ψ Α Ψ Ψ Ψ Α Ψ Ψ Α Α Ψ Α Α Α Α Σε περίπτωση απουσίας παρενθέσεων, η σειρά προτεραιότητας των λογικών πράξεων (από την υψηλότερη προς την χαµηλότερη) είναι η εξής:,,,, Γιάννης Ρεφανίδης 8 4

Παραδείγµατα P: Ο Νίκος είναι προγραµµατιστής. Q: Ο Νίκος έχει υπολογιστή. P Q R1: Το τρίγωνο ΑΒΓ είναι οξυγώνιο. R2: Το τρίγωνο ΑΒΓ είναι ορθογώνιο. R3: Το τρίγωνο ΑΒΓ είναι αµβλυγώνιο. R1 R2 R1 R2 R3 R1 R2 R4: Το τρίγωνο ΑΒΓ είναι ισόπλευρο. R5: Το τρίγωνο ΑΒΓ είναι ισογώνιο. R4 R5 Γιάννης Ρεφανίδης 9 Βάσεις γνώσης και µοντέλα Βάση γνώσης (Knowledge Base) είναι το σύνολο εκείνο των προτάσεων (απλές ή/και σύνθετες) που θεωρούµε ότι είναι αληθείς. Ένα µοντέλο (model) είναι µια ανάθεση τιµής (αληθής ή ψευδής) σε κάθε απλή πρόταση, έτσι ώστε όλες οι προτάσεις της βάσης γνώσης (ΒΓ) να είναι αληθείς. Παράδειγµα: Έστω οι προτάσεις: P: Ο Νίκος είναι προγραµµατιστής. Q: Ο Νίκος έχει υπολογιστή. και έστω ότι η βάση γνώσης περιέχει µόνο την πρόταση: P Q Τα µοντέλα αυτής της βάσης γνώσης είναι τα: P=Α, Q=A P=Ψ, Q=A P=Ψ, Q=Ψ Γιάννης Ρεφανίδης 10 5

Προτάσεις και µοντέλα ύο (σύνθετες) προτάσεις Α και Β είναι ισοδύναµες, εάν αληθεύουν στα ίδια µοντέλα. Α Β Μια πρόταση είναι έγκυρη (valid), εάν αληθεύει σε όλα τα µοντέλα. π.χ. P P Μια πρόταση είναι ικανοποιήσιµη (satisfiable), εάν υπάρχει κάποιο µοντέλο m που την ικανοποιεί. π.χ. η πρόταση P P δεν είναι ικανοποιήσιµη. Γιάννης Ρεφανίδης 11 Πίνακας Ισοδύναµων Προτάσεων Α Β Β Α (αντιµεταθετικότητα της σύζευξης) Α Β Β Α (αντιµεταθετικότητα της διάζευξης) ((Α Β) Γ) (Α (Β Γ)) (προσεταιριστική σύζευξης) ((Α Β) Γ) (Α (Β Γ)) (προσεταιριστική διάζευξης) ( Α) Α (απαλοιφή διπλής άρνησης) Α Β Β Α (αντιθετοαντιστροφή) Α Β Α Β (απαλοιφή συνεπαγωγής) Α Β Α Β Β Α (απαλοιφή ισοδυναµίας) (Α Β) ( Α Β) (de Morgan) (Α Β) ( Α Β) (de Morgan) (A (B Γ)) ((Α Β) (Α Γ)) (επιµερισµός σύζευξης) (A (B Γ)) ((Α Β) (Α Γ)) (επιµερισµός διάζευξης) Γιάννης Ρεφανίδης 12 6

Παράδειγµα: Ναρκαλιευτής (1/4) (Minesweeper) Έστω µια περιορισµένη έκδοση 3x3 του γνωστού παιχνιδιού των Windows. 3 2 1 1 2 3 Αρχικά δεν γνωρίζουµε πού βρίσκονται οι νάρκες. Συµβολίζουµε µε Mij τη γνώση ότι η θέση ij (i γραµµή και j στήλη) έχει µια νάρκη. Για κάθε θέση που δοκιµάζουµε, µαθαίνουµε εάν οι γειτονικές θέσεις δεν έχουν νάρκες. Συµβολίζουµε µε Aij τη γνώση ότι µία γειτονική θέση της θέσης ij έχει νάρκη. Γιάννης Ρεφανίδης 13 Παράδειγµα: Ναρκαλιευτής (2/4) Η βάση γνώσης µας µπορεί να περιέχει απλές ή/και σύνθετες προτάσεις που κατασκευάζονται από τις Mij και Aij και για τις οποίες έχει βεβαιότητα ότι είναι αληθείς. Έστω ότι αρχικά η βάση γνώσης µας περιέχει τις παρακάτω εννέα (9) σύνθετες προτάσεις : R1: A11 M12 M21 R2: A12 M11 M22 M13... R9: A33 M23 M32 Ισοδύναµα θα µπορούσαµε να χρησιµοποιήσουµε προτάσεις της µορφής: A11 M12 M21 Γιάννης Ρεφανίδης 14 7

Παράδειγµα: Ναρκαλιευτής (3/4) Έστω ότι εισάγουµε στη βάση γνώσης την πρόταση: R10: A11 δηλαδή µάθαµε ότι η θέση (1,1) δεν γειτονεύει µε καµία νάρκη. Τι συµπεράσµατα µπορούµε να βγάλουµε και ΠΏΣ; ιάφοροι µέθοδοι εξαγωγής συµπερασµάτων: Έλεγχος µοντέλων (model checking) Τεχνικές ικανοποίησης περιορισµών Αποδείξεις (proofs) Τεχνική της ανάλυσης (resolution) Πρόβληµα: Θέλουµε να ελέξουµε την τιµή αληθείας του Μ12, δηλαδή εάν υπάρχει νάρκη στο Μ12. Γιάννης Ρεφανίδης 15 Έλεγχος µοντέλων (Model checking) Το πρόβληµα έχει 2x9=18 προτάσεις (Aij, Mij), κάθε µία από τις οποίες µπορεί να έχει τιµή Α ή Ψ. Το πρόβληµα έχει 2 18 πιθανά µοντέλα! Απλοϊκή προσέγγιση: Βρίσκουµε όλα τα µοντέλα του προβλήµατος που είναι συµβατά µε τη βάση γνώση. Για όσες προτάσεις έχουν την ίδια τιµή σε όλα τα µοντέλα µπορούµε να συµπεράνουµε ότι αυτή είναι η πραγµατική τιµή τους (τεχνική παραγωγής και δοκιµής, 2ο κεφάλαιο). Εάν εφαρµόσουµε την παραπάνω τεχνική, τότε θα βλέπαµε ότι σε όλα τα συµβατά µοντέλα η πρόταση M12 είναι ψευδής (όπως επίσης και η Μ21). Σε µεγάλα προβλήµατα είναι πρακτικά αδύνατο να ελέξουµε όλα τα µοντέλα. Η τεχνική ελέγχου µοντέλων λειτουργεί όταν ο κόσµος του προβλήµατος Γιάννης Ρεφανίδης είναι πεπερασµένος. 16 8

Τεχνικές ικανοποίησης περιορισµών (1/2) Για να αποδείξουµε ότι ισχύει M12, αρκεί να αποδείξουµε ότι δεν υπάρχει κανένα µοντέλο (ανάθεση τιµών Α/Ψ στις προτάσεις Aij και Mij) που να ικανοποιεί τη βάση γνώσης και την πρόταση M12. Αυτό µπορεί να γίνει µε τεχνικές ικανοποίησης περιορισµών (αλγόριθµοι ελέγχου συνέπειας). Πράγµατι, το πρόβληµα εύρεσης ενός µοντέλου είναι ένα πρόβληµα ικανοποίησης περιορισµών, όπου: µεταβλητές είναι όλες οι απλές προτάσεις που εµφανίζονται στη βάση γνώσης είτε αυτόνοµα ή ως µέρος µεγαλύτερων προτάσεων, πεδία τιµών τους είναι οι τιµές Α και Ψ περιορισµοί είναι οι αυτόνοµες (είτε απλές ή σύνθετες) προτάσεις της βάσης γνώσης, οι οποίες πρέπει να αληθεύουν. Εάν ένας συστηµατικός αλγόριθµος αναζήτησης αποδείξει ότι δεν υπάρχει κανένα µοντέλο για την σύζευξη της βάσης γνώσης και της πρότασης M12, τότε η πρόταση Μ12 δεν είναι συµβατή σε καµία περίπτωση µε τη βάση γνώσης. Αλγόριθµος DPLL: Συστηµατικός αλγόριθµος επίλυσης προβληµάτων ικανοποίησης προτάσεων µε χρήση τεχνικών ικανοποίησης περιορισµών. Γιάννης Ρεφανίδης 17 Τεχνικές ικανοποίησης περιορισµών (2/2) Εναλλακτικά µπορούν να χρησιµοποιηθούν ευριστικές τεχνικές εύρεσης µοντέλων (τύπου αναρρίχησης λόφου): Προστίθεται και πάλι η πρόταση M12 στη βάση γνώσης. Αρχικά πραγµατοποιείται µια τυχαία ανάθεση τιµών Α/Ψ σε όλες τις απλές προτάσεις του προβλήµατος. Ελέγχεται πόσες από τις προτάσεις της βάσης γνώσης δεν ισχύουν. Εάν ισχύουν όλες, το µοντέλο βρέθηκε. Επιλέγεται µια εκ των απλών προτάσεων και αντιστρέφεται η τιµή αληθείας της, µε κριτήριο την ελάττωση του αριθµού των προτάσεων της βάσης γνώσης που δεν ικανοποιούνται. Η διαδικασία συνεχίζεται µέχρι είτε να βρεθεί ένα µοντέλο, είτε να ξεπεραστεί ένα προκαθορισµένο χρονικό όριο αναζήτησης. Η εξάντληση του χρονικού ορίου µπορεί να θεωρηθεί ότι ισοδυναµεί µε τη µη-ύπαρξη µοντέλου (ή την πολύ µικρή πιθανότητα εµφάνισής του). Γιάννης Ρεφανίδης 18 9

Αποδείξεις (1/2) Χρησιµοποιούµε τις συνεπαγωγές της βάσης γνώσης για να βγάλουµε νέα συµπεράσµατα. Για παράδειγµα: Από τις προτάσεις: Ακαι Α Β µπορούµε να βγάλουµε το συµπέρασµα (τεχνική modus ponens / τρόπος του θέτειν): Β Γενικά συµβολίζουµε: Α (Α Β) B όπου το σύµβολο έχει την έννοια της παραγωγής, δηλαδή το αριστερό µέρος ισχύει ενώ το δεξιό µέρος συµπεραίνεται και προστίθεται στη βάση γνώσης. Στο παράδειγµά µας γνωρίζουµε ότι: A11 και A11 M12 M21, άρα καταλήγουµε ότι ισχύουν οι προτάσεις M12 και M21. Γιάννης Ρεφανίδης 19 Αποδείξεις (2/2) Μπορούν να χρησιµοποιηθούν όλες οι λογικές ισοδυναµίες της διαφάνειας 10 καθώς και αρκετές άλλες. Η παραγωγή συµπερασµάτων µε χρήση των λογικών ισοδυναµιών ονοµάζεται απόδειξη (proof). Γιάννης Ρεφανίδης 20 10

Τεχνική της Ανάλυσης (1/2) Η τεχνική της ανάλυσης (resolution) είναι µια απλοποιηµένη περίπτωση διαδικασίας απόδειξης, η οποία χρησιµοποιεί έναν µόνο κανόνα. Απαιτεί όλες οι σύνθετες προτάσεις της βάσης γνώσης να είναι διαζεύξεις απλών προτάσεων ή αρνήσεών τους. Α Β Γ Ε Από δύο προτάσεις της µορφής: Α1 Α2... Αi-1 Ai Ai+1... Am και B1 B2... Bj-1 Bj Bj+1... Bn όπου Ai= Bj προκύπτει η πρόταση Α1 Α2... Αi-1 Ai+1... Am B1 B2... Bj-1 Bj+1... Bn Γιάννης Ρεφανίδης 21 Τεχνική της Ανάλυσης (2/2) Η εφαρµογή της τεχνικής της ανάλυσης προϋποθέτει ότι γνωρίζουµε τι προσπαθούµε να αποδείξουµε. Έστω Κ η πρόταση που θέλουµε να αποδείξουµε. Εκτελούµε τα εξής βήµατα: Προσθέτουµε στη βάση γνώσης την πρόταση Κ. Εφαρµόζουµε επανειληµµένα τον κανόνα της ανάλυσης. Εάν καταλήξουµε σε άτοπο, δηλαδή αν παραχθούν δύο προτάσεις της µορφής Χ και Χ, συµπεραίνουµε ότι η πρόταση Κ δεν ίσχυε, άρα αποδείχθηκε ή πρόταση Κ. Γιάννης Ρεφανίδης 22 11

Κανονική συζευκτική µορφή Οποιαδήποτε πρόταση µπορεί να µετατραπεί σε µία ή (συνήθως) περισσότερες προτάσεις που αποτελούνται µόνο από διαζεύξεις, χρησιµοποιώντας τις λογικές ισοδυναµίες της διαφάνειας 10. Βασικό ρόλο παίζει ο κανόνας: Α Β Α Β Οι διάφορες διαζευκτικές προτάσεις της βάσης γνώσης R1, R2, R3 κλπ θεωρείται ότι ισχύουν όλες µαζί, άρα η βάση γνώσης περιέχει την σύζευξή τους R1 R2 R3... Rk. Μια βάση γνώσης που αποτελείται µόνο από διαζευκτικές προτάσεις λέγεται ότι βρίσκεται σε κανονική συζευκτική µορφή (conjuctive normal form). Γιάννης Ρεφανίδης 23 Παράδειγµα µετατροπής σε κανονική συζευκτική µορφή (1/2) Για παράδειγµα, έστω η σύνθετη πρόταση: R1: A11 M12 M21 Αυτή καταρχήν αναλύεται σε δύο απλές συνεπαγωγές (Α Β Α Β Β Α ): R11: A11 M12 M21 R12: M12 M21 A11 Κάθε µία από τις συνεπαγωγές αυτές µπορεί να γραφεί ως εξής (Α Β Α Β): R13: A11 M12 M21) R14: ( M12 M21) A11 Γιάννης Ρεφανίδης 24 12

Παράδειγµα µετατροπής σε κανονική συζευκτική µορφή (2/2) Η R13 µε επιµερισµό ως προς την διάζευξη γίνεται: R15: (A11 M12) (A11 M21) Εφαρµόζοντας την ταυτότητα (Α Β) ( Α Β) στην R14 παίρνουµε: R16: M12 M21 A11 Τέλος "σπάµε" την R15 σε δύο απλούστερες προτάσεις, τις: R17: A11 M12 R18: A11 M21 Τελικά η βάση γνώσης περιλαµβάνει τις διαζευκτικές προτάσεις R16, R17 και R18, αντί της αρχικής R1: Βάση γνώσης = R16 R17 R18 Γιάννης Ρεφανίδης 25 Παράδειγµα: Ναρκαλιευτής (4/4) Έστω ότι θέλουµε να ελέξουµε εάν η θέση (1,2) δεν έχει νάρκη, αν δηλαδή ισχύει η πρόταση Μ12. Εισάγουµε στη βάση γνώσης την πρόταση: R19: ( Μ12)= Μ12. Εφαρµόζουµε την αρχή της ανάλυσης µεταξύ των R17 και R19 και παίρνουµε: R20: A11 Ήδη όµως ξέρουµε ότι ισχύει η πρόταση: R10: A11. Συνδυάζοντας την R10 µε την R20 καταλήγουµε σε κενή πρόταση, η οποία ισοδυναµεί µε άτοπο. Άρα η M12 είναι ψευδής, οπότε ισχύει η M12 και εισέρχεται στη βάση. R21: M12 Γιάννης Ρεφανίδης 26 13

Παρατηρήσεις στην Τεχνική της Ανάλυσης Σε κάθε βήµα εφαρµογής της τεχνικής της ανάλυσης συνήθως υπάρχουν περισσότερα από ένα ζεύγη προτάσεων που µπορούν να συνδυαστούν. Η επιλογή του ζεύγους κάθε φορά καθορίζεται από τον αλγόριθµο αναζήτησης (κατά βάθος, κατά πλάτος, ευριστικός κλπ). π.χ. προτίµηση στις µοναδιαίες προτάσεις (unit clauses) Η τεχνική της ανάλυσης εγγυάται ότι θα καταλήξει σε άτοπο όταν η πρόταση που θέλουµε να αποδείξουµε ισχύει. Γιάννης Ρεφανίδης 27 Προτάσεις Horn Μια απλοποιηµένη µορφή προτασιακής λογικής περιλαµβάνει σύνθετες προτάσεις µόνο της µορφής: Q1 Q2... Qn R οι οποίες ισοδύναµα γράφονται ως: Q1 Q2... Qn R Η εξαγωγή θετικών συµπερασµάτων (δηλαδή όχι αρνήσεων προτάσεων) µε τέτοιες προτάσεις και µε την αρχή της ανάλυσης είναι εύκολη και γίνεται σε γραµµικό χρόνο ως προς το πλήθος των κανόνων της βάσης γνώσης. εν µπορούν όλες οι βάσεις γνώσης να µετατραπούν σε βάσεις προτάσεων Horn. Γιάννης Ρεφανίδης 28 14

Αναπαράσταση Γνώσης και Συλλογιστικές Γενικά Προτασιακή λογική Λογική πρώτης τάξης Λογικός προγραµµατισµός Επεκτάσεις της Λογικής Πρώτης Τάξης Συστήµατα Κανόνων Επίλογος Μειονεκτήµατα προτασιακής λογικής εν επιτρέπει τη χρήση µεταβλητών, αντικειµένων µε ιδιότητες, γενικών εκφράσεων κλπ. Για παράδειγµα, στο πρόβληµα του ναρκαλιευτή, χρειάστηκε να γράψουµε εννέα προτάσεις της µορφής: R1: A11 M12 M21 Εάν το παιχνίδι είχε µεγαλύτερες διαστάσεις; Γενικά θα θέλαµε να γράφαµε µόνο µια πρόταση και να καλύπταµε όλες τις περιπτώσεις (θέσεις πάνω στο παιχνίδι). Γιάννης Ρεφανίδης 30 1

Λογική πρώτης τάξης (First order logic) Λέγεται και κατηγορηµατική λογική (predicate logic). Επεκτείνει την προτασιακή λογική επιτρέποντας την ύπαρξη: αντικειµένων (objects) συναρτησιακών όρων (terms) κατηγορηµάτων (predicates) ποσοδεικτών (quantifiers) Γιάννης Ρεφανίδης 31 Αντικείµενα Τα αντικείµενα είναι ονόµατα που αποδίδονται στα πραγµατικά αντικείµενα του προβλήµατος. Για παράδειγµα, στον κόσµο του ναρκαλιευτή, τα παρακάτω θα µπορούσαν να είναι κάποια αντικείµενα: Νάρκη1 Νάρκη2 Γιάννης Ρεφανίδης 32 2

Συναρτησιακοί όροι Οι συναρτησιακοί όροι ή απλά όροι είναι σύνθετες ονοµασίες (όχι απλές λέξεις) για αντικείµενα. Για παράδειγµα, στον κόσµο του ναρκαλιευτή, θα µπορούσαµε να ονοµάσουµε τις θέσεις πάνω στο πεδίο µε τα ακόλουθα ονόµατα: Θ(1,1) Θ(1,2)... Θ(3,3) Ονοµάζοντας κάποια αντικείµενα µε τον παραπάνω τρόπο πετυχαίνουµε να γράφουµε γενικές προτάσεις που να ισχύουν για οµάδες αντικειµένων. Γιάννης Ρεφανίδης 33 Κατηγορήµατα Ένα κατηγόρηµα είναι το όνοµα µιας σχέσης µεταξύ Ν-άδων αντικειµένων. Τα κατηγορήµατα ορίζουν είτε ιδιότητες αντικειµένων ή σχέσεις µεταξύ οµάδων αντικειµένων. Για παράδειγµα: Νάρκη(Νάρκη1) Θέση( Θ(1,2) ) Γειτονική( Θ(1,1), Θ(1,2) ) Βρίσκεται( Νάρκη1, Θ(1,3) ) Γειτονεύει_µε_νάρκη( Θ(1,2) ) Κάθε κατηγόρηµα έχει συγκεκριµένο αριθµό ορισµάτων, ο οποίος ονοµάζεται τάξη του κατηγορήµατος (arity). Κάθε όρισµα του κατηγορήµατος έχει συγκεκριµένη σηµασία, η οποία προσδιορίζεται από τη θέση του. Γιάννης Ρεφανίδης 34 3

Συναρτησιακοί Όροι και Κατηγορήµατα Συνήθως υπάρχουν πολλοί διαφορετικοί τρόποι να περιγράψουµε τον ίδιο κόσµο. Στις προηγούµενες διαφάνειες ορίσαµε: Νάρκη1 Νάρκη(Νάρκη1) Θ(3,1) Θέση( Θ(3,1) ) Βρίσκεται(Νάρκη1, Θ(3,1)) Εναλλακτικά, επειδή κάθε θέση έχει µία το πολύ νάρκη, µπορούµε να περιορίσουµε τον αριθµό των δηλώσεων ως εξής: Θ(3,1) Θέση( Θ(3,1) ) Νάρκη( Θ(3,1) ) Γιάννης Ρεφανίδης 35 Ποσοδείκτες Μπορούµε να γράφουµε σύνθετες προτάσεις που να περιέχουν µεταβλητές. Συνήθως τις µεταβλητές τις δηλώνουµε µε µικρά γράµµατα: x, y κλπ. Κάθε µεταβλητή συνοδεύεται και από έναν ποσοδείκτη, ο οποίος καθορίζει τη σηµασία της στην πρόταση. Καθολικός ποσοδείκτης (Universal quantifier) : Υπαρξιακός ποσοδείκτης (Existential quantifier) Γιάννης Ρεφανίδης 36 4

Παράδειγµα: Καθολικός ποσοδείκτης x y Θέση(x) Θέση(y) (x,y) Γειτονεύει_µε_νάρκη(x) Νάρκη(y) x1 x2 y1 y2 Θέση(Θ(x1,x2)) Θέση(Θ(y1,y2)) x1>0 y1>0 x1<4 y1<4 (x1=x2 (y1=y2-1 y1=y2+1)) (y1=y2 (x1=x2-1 [1=x2+1)) ) Γειτονική(Θ(x1,x2),Θ(y1,y2)) Όταν έχουµε συνεχόµενους καθολικούς ποδοσείκτες µπορούµε να τους αντικαθιστούµε µε έναν, π.χ.: x1 x2 y1 y2... Γιάννης Ρεφανίδης 37 Παράδειγµα: Υπαρξιακός ποσοδείκτης x Θέση(x) Γειτονεύει_µε_νάρκη(x) y Θέση(y) Γειτονική(x,y) Νάρκη(y) Γιάννης Ρεφανίδης 38 5

Σχέση καθολικού και υπαρξιακού ποσοδείκτη Για οποιαδήποτε πρόταση P ισχύουν οι παρακάτω λογικές ισοδυναµίες: x P x P x P x P x P x P x P x P Γιάννης Ρεφανίδης 39 Παράδειγµα: Συγγένειες (1/2) Θέλουµε να ορίσουµε τις σχέσεις ενός γενεολογικού δένδρου: Πατέρας, Μητέρα, Γονιός, Αδερφός, Αδερφή, Αδέρφι, Κόρη, Γιος, Παιδί, Άντρας, Γυναίκα, Σύζυγος, Παππούς, Γιαγιά, Εγγονός, Εγγονή, Ξάδερφος, Ξαδέρφη, Θείος, Θεία, Ανιψιός, Ανιψιά... Ορίζουµε καταρχήν δύο κατηγορήµατα για το φύλο τάξης 1: Αρεν(x) : Το πρόσωπο x είναι αρσενικό Θήλυ(y) : Το πρόσωπο y είναι θηλυκό. Επειδή κάθε άνθρωπος έχει έναν πατέρα και µια µητέρα, ορίζουµε τους συναρτησιακούς όρους: Πατέρας(x): Ο πατέρας του x Μητέρα(x): Η µητέρα του x Όλα τα υπόλοιπα (Γονιός, Αδερφός κλπ) είναι κατηγορήµατα τάξης 2. Γιάννης Ρεφανίδης 40 6

Παράδειγµα: Συγγένειες (2/2) Με βάση τους προηγούµενους ορισµούς, θα γράψουµε προτάσεις για τις υπόλοιπες έννοιες: m,c Μητέρα(c)=m Θήλυ(m) Γονιός(m,c) Z,h Άντρας(h,w) Άρεν(h) (h,w) x Άρεν(x) Θήλυ(x) g,c Παππούς(g,c) Άρεν(g) S (g,p) (p,c) x,y Αδέρφι (x,y) x y S (p,x) (p,y) Γιάννης Ρεφανίδης 41 Εξαγωγή συµπερασµάτων στη λογική πρώτης τάξης Στην λογική πρώτης τάξης χρησιµοποιούνται οι ίδιες τεχνικές εξαγωγής συµπερασµάτων, όπως και στην προτασιακή λογική, µε προσαρµογές όµως που να καλύπτουν τα επιπλέον στοιχεία της. Μετατροπή σε προτασιακή λογική (δεν θα το δούµε) Απόδειξη Ανάλυση Η εφαρµογή των τεχνικών της απόδειξης και της ανάλυσης στις προτάσεις της λογικής πρώτης τάξης απαιτεί τη χρήση τεχνικών ενοποίησης όρων που περιέχουν µεταβλητές. Γιάννης Ρεφανίδης 42 7

Ενοποίηση (Unification) (1/3) Έστω ότι έχουµε τις προτάσεις: Άνθρωπος(Σωκράτης) x Άνθρωπος(x) Θνητός(x) Θέλουµε να βγάλουµε το συµπέρασµα ότι Θνητός(Σωκράτης). Γνωρίζουµε από την προτασιακή λογική ότι από δύο προτάσεις της µορφής P και P 4, προκύπτει το Q. Τώρα όµως οι δύο προτάσεις έχουν τη µορφή P1 και P2 Q. Πρέπει λοιπόν να ελεγχθεί εάν τα P1 και P2 µπορούν να ταυτιστούν (ενοποιηθούν). Γιάννης Ρεφανίδης 43 Ενοποίηση (2/3) Έστω ένας όρος P που περιέχει µεταβλητές. Συµβολίζουµε µε x/a την αντικατάσταση µιας µεταβλητής x από έναν όρο Α. Έστω θ={x1/a1, x2/a2,..., xn/an} ένα πλήθος τέτοιων αντικαταστάσεων. Συµβολίζουµε µε P θ τον όρο που προκύπτει εάν αντικαταστήσουµε τις µεταβλητές του P µε τις αντικαταστάσεις που ορίζονται στο σύνολο θ. π.χ. Άνθρωπος(x) {x/σωκράτης} =Άνθρωπος(Σωκράτης) Γιάννης Ρεφανίδης 44 8

Ενοποίηση (3/3) ύο όροι P1 και P2 ενοποιούνται µε µια αντικατάσταση θ, εάν ισχύει P1 θ =P2 θ. ύο όροι είναι δυνατόν να µπορούν να ενοποιηθούν µε πολλούς τρόπους: P1=Αδερφός(x,y), P2=Αδερφός(z,w) θ1={x/z, y/w}: P1 θ1 =P2 θ1 =Αδερφός(z,w) θ2={x/z, y/z,w/z): P1 θ2 =P2 θ2 =Αδερφός(z,z) Από όλες τις δυνατές ενοποιήσεις πρέπει να επιλέγουµε τη λιγότερο δεσµευτική. Ο πιο γενικός ενοποιητής (most general unifier) Γιάννης Ρεφανίδης 45 Παραδείγµατα ενοποίησης P1 Γνωρίζει(Γιάννης, x) Γνωρίζει(Γιάννης, x) Γνωρίζει(Γιάννης, x) Γνωρίζει(Γιάννης, x) Γνωρίζει(Γιάννης, x) P2 Γνωρίζει(Γιάννης, Νίκος) Γνωρίζει(y, Νίκος) Γνωρίζει(y, Μητέρα(y)) Γνωρίζει(x, Γιώργος) Συνεργάζεται(Γιάννης,y) Πιο γενικός ενοποιητής {x/νίκος} {x/νίκος, y/γιάννης} {y/γιάννης, x/µητέρα(γιάννης)} αποτυχία αποτυχία Γιάννης Ρεφανίδης 46 9

Απόδειξη στη λογική πρώτης τάξης Έστω ότι έχουµε τις προτάσεις: P1 P2 Q Εάν οι P1 και P2 είναι ενοποιήσιµες σύµφωνα µε ένα σύνολο αντικαταστάσεων θ, P1 θ =P2 θ, τότε προκύπτει το συµπέρασµα Q θ. Π.χ. έστω: P1=Άνθρωπος(Σωκράτης) 3 Άνθρωπος(x) Q = Θνητός(x) Τότε το συµπέρασµα Θνητός(Σωκράτης) προκύπτει µε την ενοποίηση θ={x/σωκράτης}. Η παραπάνω τεχνική απόδειξης ονοµάζεται γενικευµένος τρόπος του θέτειν (generalized modus ponens). Γιάννης Ρεφανίδης 47 Τεχνική της Ανάλυσης στη Λογική Πρώτης Τάξης (1/2) Η τεχνική της ανάλυσης µπορεί να εφαρµοσθεί και στη λογική πρώτης τάξης. Όπως και στην προτασιακή λογική, απαιτείται όλες οι σύνθετες προτάσεις της βάσης γνώσης να είναι διαζεύξεις απλών προτάσεων ή αρνήσεών τους, όπως π.χ. Α Β Γ Ε Από δύο προτάσεις της µορφής: Α1 Α2... Αi-1 Ai Ai+1... Am και B1 B2... Bj-1 Bj Bj+1... Bn όπου Ai θ = Bj θ προκύπτει η πρόταση Α1 θ Α2 θ... Αi-1 θ Ai+1 θ... Am θ B1 θ B2 θ... Bj-1 θ Bj+1 θ... Bn θ Γιάννης Ρεφανίδης 48 10

Τεχνική της Ανάλυσης στη Λογική Πρώτης Τάξης (2/2) Η εφαρµογή της τεχνικής της ανάλυσης προϋποθέτει ότι γνωρίζουµε τι προσπαθούµε να αποδείξουµε. Έστω Κ η πρόταση που θέλουµε να αποδείξουµε. Εκτελούµε τα εξής βήµατα: Προσθέτουµε στη βάση γνώσης την πρόταση Κ. Εφαρµόζουµε επανειληµµένα τον κανόνα της ανάλυσης. Εάν καταλήξουµε σε άτοπο, δηλαδή αν παραχθούν δύο προτάσεις της µορφής Χ1 και Χ2 τέτοιες ώστε οι X1 και X2 δεν µπορούν να θεωρηθούν διαφορετικές (δηλαδή δεν υπάρχουν αντικαταστάσεις θ1 και θ2, τέτοιες ώστε X θ1 Χ2 θ2 ), συµπεραίνουµε ότι η πρόταση Κ δεν ίσχυε, άρα αποδείχθηκε ή πρόταση Κ. Γιάννης Ρεφανίδης 49 Κανονική συζευκτική µορφή στη λογική πρώτης τάξης Και εδώ χρειάζεται η µετατροπή των προτάσεων της βάσης γνώσης σε προτάσεις που αποτελούνται µόνο από διαζεύξεις. Το επιπλέον πρόβληµα που υπάρχει στη λογική πρώτης τάξης είναι η απαλοιφή των ποσοδεικτών (ιδιαίτερα των υπαρξιακών). Βήµατα: Απαλοιφή συνεπαγωγών Μετακίνηση αρνήσεων µέσα στις παρενθέσεις Απαλοιφή υπαρξιακών ποσοδεικτών και αντικατάσταση υπαρξιακών µεταβλητών µε σύνθετους όρους. Απόρριψη καθολικών ποσοδεικτών Κατανοµή συζεύξεων και διαζεύξεων Γιάννης Ρεφανίδης 50 11

Παράδειγµα µετατροπής σε κανονική συζευκτική µορφή Έστω η σύνθετη πρόταση: x Άνθρωπος(x) y Πατέρας(y,x) Βήµατα: Απαλοιφή συνεπαγωγών x y Άνθρωπος(x) Πατέρας(y,x) Απαλοιφή υπαρξιακών ποσοδεικτών: Επειδή το y προφανώς εξαρτάται από το x, αντικαθιστούµε το y µε έναν συναρτησιακό όρο P(x): x Άνθρωπος(x) Πατέρας(P(x),x) Απόρριψη καθολικών ποσοδεικτών Άνθρωπος(x) Πατέρας(P(x),x) Γιάννης Ρεφανίδης 51 Παράδειγµα τεχνικής ανάλυσης σε λογική πρώτης τάξης (1/2) : x y Θέση(x) Θέση(y) (x,y) Γειτονεύει_µε_νάρκη(x) Νάρκη(y) Η πρόταση αυτή µπορεί να γραφεί ως: (Θέση(x) Θέση(y) (x,y) Γειτονεύει_µε_νάρκη(x)) Νάρκη(y) Θέση(x) Θέση(y) (x,y) Γειτονεύει_µε_νάρκη(x) Νάρκη(y) Έστω ότι προσπαθούµε να αποδείξουµε το Νάρκη(Θ(2,1)). Εισάγουµε λοιπόν στη βάση την πρόταση Νάρκη(Θ(2,1)). Ήδη υπάρχει στη βάση το γεγονός: Γειτονεύει_µε_νάρκη(Θ(1,1)). Γιάννης Ρεφανίδης 52 12

Παράδειγµα τεχνικής ανάλυσης σε λογική πρώτης τάξης (2/2) : Θέση(x) Θέση(y) (x,y) Γειτονεύει_µε_νάρκη(x)) Νάρκη(y) Νάρκη(Θ(2,1)). µε ενοποίηση {y/θ(2,1)) παίρνουµε: Θέση(x) Θέση(Θ(2,1)) (x, (2,1)) Γειτονεύει_µε_νάρκη(x) : Γειτονεύει_µε_νάρκη(Θ(1,1)). µε ενοποίηση {x/θ(1,1)} παίρνουµε: Θέση( Θ(1,1) ) Θέση(Θ(2,1)) ( (1,1), (2,1)) Εάν εφαρµόσουµε τρεις ακόµη φορές την παραπάνω διαδικασία για τα γεγονότα Θέση(Θ(1,1)), Θέση(Θ(2,1)) και ( (1,1), (2,1)),,. Γιάννης Ρεφανίδης 53 Παρατηρήσεις στην τεχνική της ανάλυσης στη λογική πρώτης τάξης Η µέθοδος εγγυάται ότι πάντα θα καταλήγει σε άτοπο, εφόσον αυτό που προσπαθούµε να αποδείξουµε ισχύει. Στη βασική της µορφή είναι χρονοβόρα µέθοδος. Ευριστικές τεχνικές για γρηγορότερο αποτέλεσµα: Προτίµηση στις µικρές προτάσεις. Προτίµηση στους συνδυασµούς όπου τουλάχιστον µία από τις 2 προτάσεις είναι είτε από αυτές που υπήρχαν αρχικά στη βάση γνώσης, είτε η επιπλέον που προστέθηκε. Γιάννης Ρεφανίδης 54 13

Παράδειγµα: Οικονοµικός Σύµβουλος Περιγραφή του προβλήµατος (1/3) Στις επόµενες διαφάνειες θα παρουσιαστεί ένα απλό παράδειγµα κατασκευής ενός οικονοµικού συµβούλου χρησιµοποιώντας λογική πρώτης τάξης (Logic-Based Financial Advisor). Το παράδειγµα βασίζεται σε αντίστοιχο παράδειγµα από το βιβλίο "Artificial Intelligence" του George F. Luger, 2002 (4 th edition). Σκοπός του συµβούλου είναι να προτείνει στον πελάτη να τοποθετήσει τα χρήµατά του είτε σε αποταµιευτικό λογαριασµό ταµιευτηρίου, ή σε µετοχές ή τέλος σε συνδυασµό των δύο επιλογών. Γιάννης Ρεφανίδης 55 Παράδειγµα: Οικονοµικός Σύµβουλος Περιγραφή του προβλήµατος (2/3) Τα κριτήρια βάσει των οποίων παρέχονται οι συµβουλές είναι τα ακόλουθα: Εάν ο πελάτης δεν έχει επαρκείς καταθέσεις, τότε είναι απόλυτη προτεραιότητα η αύξηση των καταθέσεων, ανεξαρτήτως εισοδήµατος. Εάν ο πελάτης έχει επαρκείς καταθέσεις και επαρκές εισόδηµα, τότε πρέπει να προτιµήσει µια ριψοκίνδυνη αλλά ενδεχοµένως πιο αποδοτική τοποθέτηση σε µετοχές. Εάν ο πελάτης έχει επαρκείς καταθέσεις αλλά χαµηλό εισόδηµα τότε θα µπορούσε να σκεφτεί την τοποθέτηση του πλεονάσµατός του εν µέρει σε λογαριασµό ταµιευτηρίου και εν µέρει σε µετοχές. Γιάννης Ρεφανίδης 56 14

Παράδειγµα: Οικονοµικός Σύµβουλος Περιγραφή του προβλήµατος (3/3) Η επάρκεια τόσο για τις καταθέσεις όσο και για το εισόδηµα καθορίζεται από τον αριθµό των προστατευόµενων µελών. Για τις καταθέσεις θα πρέπει να έχει τουλάχιστον 5.000 για κάθε προστατευόµενο µέλος. Το εισόδηµα χαρακτηρίζεται επαρκές εάν είναι σταθερά 15.000 ετησίως συν 4.000 για κάθε προστατευόµενο µέλος. Θέλουµε να κωδικοποιήσουµε τη γνώση που περιγράφηκε στις 2 τελευταίες διαφάνειες χρησιµοποιώντας λογική πρώτης τάξης. Επειδή το πρόβληµα περιλαµβάνει αριθµούς, θα θεωρήσουµε ότι η γλώσσα έχει επεκταθεί µε δυνατότητα εκτέλεσης απλών µαθηµατικών πράξεων και συγκρίσεων. Γιάννης Ρεφανίδης 57 Παράδειγµα: Οικονοµικός Σύµβουλος Ανάπτυξη της Βάσης Γνώσης (1/9) Τα δεδοµένα στα οποία θα βασιστεί οποιαδήποτε πρόταση είναι η επάρκεια ή µη των τραπεζικών καταθέσεων και του εισοδήµατος. Για την αναπαράσταση της επάρκειας χρησιµοποιούµε δύο κατηγορήµατα µηδενικής τάξης: Επαρκείς_καταθέσεις Επαρκές_εισόδηµα Εάν κάποιος λογαριασµός ή εισόδηµα δεν είναι επαρκές, αυτό πρέπει να παρασταθεί µε την άρνηση των παραπάνω κατηγορηµάτων: _ _ Γιάννης Ρεφανίδης 58 15

Παράδειγµα: Οικονοµικός Σύµβουλος Ανάπτυξη της Βάσης Γνώσης (2/9) Υπάρχουν τρεις ενδεχόµενες προτάσεις: τραπεζικός λογαριασµός µετοχές συνδυασµός για την αναπαράσταση των οποίων χρησιµοποιούµε τρία επιπλέον κατηγορήµατα µηδενικής τάξης: Πρόταση_καταθέσεις Πρόταση_µετοχές Πρόταση_συνδυασµός Γιάννης Ρεφανίδης 59 Παράδειγµα: Οικονοµικός Σύµβουλος Ανάπτυξη της Βάσης Γνώσης (3/9) Με βάση τα κατηγορήµατα που ορίσαµε, πρέπει να περιγράψουµε τα κριτήρια επιλογής. 1ο κριτήριο: Εάν ο πελάτης δεν έχει επαρκείς καταθέσεις, τότε είναι απόλυτη προτεραιότητα η αύξηση των καταθέσεων, ανεξαρτήτως εισοδήµατος. 1: Επαρκείς_καταθέσεις Πρόταση_καταθέσεις Ο αριθµός στα αριστερά της πρότασης (1:) δηλώνει τον αύξοντα αριθµό της εκάστοτε πρότασης στη βάση γνώσης και θα χρησιµεύσει για µελλοντική αναφορά σε αυτήν. Γιάννης Ρεφανίδης 60 16

Παράδειγµα: Οικονοµικός Σύµβουλος Ανάπτυξη της Βάσης Γνώσης (4/9) 2ο κριτήριο: Εάν ο πελάτης έχει επαρκείς καταθέσεις και επαρκές εισόδηµα, τότε πρέπει να προτιµήσει µια ριψοκίνδυνη αλλά ενδεχοµένως πιο αποδοτική τοποθέτηση σε µετοχές. 2: Επαρκείς_καταθέσεις Επαρκές_εισόδηµα _ 3ο κριτήριο Εάν ο πελάτης έχει επαρκείς καταθέσεις αλλά χαµηλό εισόδηµα τότε θα µπορούσε να σκεφτεί την τοποθέτηση του πλεονάσµατός του εν µέρει σε λογαριασµό ταµιευτηρίου και εν µέρει σε µετοχές. 3: Επαρκείς_καταθέσεις _ _ Γιάννης Ρεφανίδης 61 Παράδειγµα: Οικονοµικός Σύµβουλος Ανάπτυξη της Βάσης Γνώσης (5/9) Στη συνέχεια πρέπει να περιγράψουµε τη γνώση που καθορίζει πότε οι καταθέσεις ή το εισόδηµα είναι επαρκείς. Ορίζουµε τα παρακάτω κατηγορήµατα µε τις αντίστοιχες ερµηνείες: Προστατευόµενα(x): Αληθεύει όταν x είναι ο αριθµός των προστατευόµενων µελών. Ύψος_καταθέσεων(x): Το x είναι το ποσό που είναι ήδη κατατεθηµένο σε τραπεζικό λογαριασµό. Εισοδήµατα (x,σταθερά/ασταθή): Τα εισοδήµατα ανέρχονται σε x /έτος και είναι Σταθερά ή Ασταθή. Μεγαλύτερο(x,y): Αληθεύει όταν x>y. Γιάννης Ρεφανίδης 62 17

Παράδειγµα: Οικονοµικός Σύµβουλος Ανάπτυξη της Βάσης Γνώσης (6/9) Ορίζουµε επίσης τις ακόλουθες συναρτήσεις: Ελάχιστες_καταθέσεις(x): Επιστρέφει το ελάχιστο ποσό για επαρκή τραπεζική κατάθεση, όταν ο αριθµός των προστατευόµενων µελών είναι x. Ελάχιστες_καταθέσεις (x) 5.000*x Ελάχιστο_εισόδηµα(x): Επιστρέφει το ελάχιστο ποσό για επαρκές εισόδηµα, όταν ο αριθµός των προστατευόµενων µελών είναι x. Ελάχιστο_εισόδηµα(x) 5.000 + 4.000*x Γιάννης Ρεφανίδης 63 Παράδειγµα: Οικονοµικός Σύµβουλος Ανάπτυξη της Βάσης Γνώσης (7/9) Μπορούµε πλέον να γράψουµε τις ακόλουθες προτάσεις: 4: x,y Ύψος_καταθέσεων(x) Προστατευόµενα(y) Μεγαλύτερο(x, Ελάχιστες_καταθέσεις(y)) Επαρκείς_καταθέσεις 5: x,y Ύψος_καταθέσεων(x) Προστατευόµενα(y) Μεγαλύτερο(x, Ελάχιστες_καταθέσεις(y)) Επαρκείς_καταθέσεις Γιάννης Ρεφανίδης 64 18

Παράδειγµα: Οικονοµικός Σύµβουλος Ανάπτυξη της Βάσης Γνώσης (8/9) 6: x,y Εισοδήµατα(x,Σταθερά) Προστατευόµενα(y) Μεγαλύτερο(x,Ελάχιστο_εισόδηµα(y)) Επαρκές_εισόδηµα 7: x Εισοδήµατα (x,σταθερά) Προστατευόµενα(y) Μεγαλύτερο(x,Ελάχιστο_εισόδηµα(y)) Επαρκές_εισόδηµα 8: x Εισοδήµατα (x,ασταθή) Επαρκές_εισόδηµα Γιάννης Ρεφανίδης 65 Παράδειγµα: Οικονοµικός Σύµβουλος Ανάπτυξη της Βάσης Γνώσης (9/9) Για να ξεκινήσει η διαδικασία εξαγωγής συµπερασµάτων πρέπει να εισαχθεί στη βάση γνώσης η περιγραφή ενός συγκεκριµένου επενδυτή. Έστω λοιπόν οι ακόλουθες προτάσεις: 9: Ύψος_καταθέσεων(22000) 10: Εισοδήµατα(25000, Σταθερά) 11: Προστατευόµενα(3) Με βάση τα παραπάνω δεδοµένα, και λόγω του µικρού µεγέθους του παραδείγµατος, είναι εύκολο να βρει κανείς ότι το σύστηµα θα προτείνει ένα συνδυασµό καταθέσεων και µετοχών. Στις επόµενες διαφάνειες θα προσπαθήσουµε να εξάγουµε αυτό το συµπέρασµα τόσο µε απόδειξη, όσο και µε την τεχνική της ανάλυσης. Γιάννης Ρεφανίδης 66 19

Παράδειγµα: Οικονοµικός Σύµβουλος Εξαγωγή συµπερασµάτων µε απόδειξη (1/3) Στην τεχνική της απόδειξης προσπαθούµε να συνδυάσουµε προτάσεις της µορφής: A A B για να βγάλουµε το συµπέρασµα Β. Ενδέχεται να υπάρχουν πολλοί δυνατοί συνδυασµοί, πολλοί από τους οποίους δεν οδηγούν στην εξαγωγή του επιθυµητού συµπεράσµατος (αλλά οδηγούν στην εξαγωγή άλλων συµπερασµάτων). Πρόκειται λοιπόν για πρόβληµα αναζήτησης, στο οποίο µπορούν να χρησιµοποιηθούν διάφοροι αλγόριθµοι αναζήτησης (κατά βάθος, κατά πλάτος, πρώτα-στο-καλύτερο κλπ). Γιάννης Ρεφανίδης 67 Παράδειγµα: Οικονοµικός Σύµβουλος Εξαγωγή συµπερασµάτων µε απόδειξη (2/3) Από τις προτάσεις 7, 10 και 11: 7: x Εισοδήµατα (x,σταθερά) Προστατευόµενα(y) Μεγαλύτερο(x,Ελάχιστο_εισόδηµα(y)) Επαρκές_εισόδηµα 10: Εισοδήµατα(25000, Σταθερά) 11: Προστατευόµενα(3) µε την ενοποίηση {x/25000, y/3} παίρνουµε: 12: Επαρκές_εισόδηµα Γιάννης Ρεφανίδης 68 20

Παράδειγµα: Οικονοµικός Σύµβουλος Εξαγωγή συµπερασµάτων µε απόδειξη (3/3) Παρόµοια από τις προτάσεις 4, 9 και 11: 4: x,y Ύψος_καταθέσεων(x) Προστατευόµενα(y) Μεγαλύτερο(x, Ελάχιστες_καταθέσεις(y)) Επαρκείς_καταθέσεις 9: Ύψος_καταθέσεων(22000) 11: Προστατευόµενα(3) µε την ενοποίηση {x/22000, y/3} παίρνουµε: 13: Επαρκείς καταθέσεις Τέλος από την πρόταση 3: 3: Επαρκείς_καταθέσεις _ _ και τις 12 και 13 προκύπτει η πρόταση: 14: Πρόταση_συνδυασµός Γιάννης Ρεφανίδης 69 Παράδειγµα: Οικονοµικός Σύµβουλος Εξαγωγή συµπερασµάτων µε ανάλυση (1/9) Για να χρησιµοποιήσουµε την τεχνική της ανάλυσης πρέπει να µετατρέψουµε όλες τις προτάσεις της βάσης γνώσης σε διαζεύξεις. Θα το κάνουµε µόνο για µερικές προτάσεις, οι οποίες θα χρειαστούν στη ανάλυση. Η τεχνική της ανάλυσης βασίζεται στο επανειληµµένο συνδυασµό ζευγών διαζευκτικών προτάσεων της µορφής: Α1 Α2... ΑΝ Γ Β1 Β2... ΒΜ Γ από τις οποίες προκύπτει η πρόταση: Α1 Α2... ΑΝ Β1 Β2... ΒΜ Και πάλι πρόκειται για πρόβληµα αναζήτησης, µιας και σε κάθε βήµα ενδέχεται να υπάρχουν πολλά ζεύγη προτάσεων που να µπορούν να "αναλυθούν", άρα µπορούν να χρησιµοποιηθούν οι γνωστοί αλγόριθµοι αναζήτησης. Γιάννης Ρεφανίδης 70 21

Παράδειγµα: Οικονοµικός Σύµβουλος Εξαγωγή συµπερασµάτων µε ανάλυση (2/9) Έστω ότι θέλουµε να αποδείξουµε την πρόταση: Πρόταση_συνδυασµός. Εισάγουµε στη βάση γνώσης την άρνηση της προς απόδειξη πρότασης: 12: Πρόταση_συνδυασµός Η πρόταση 3 της βάσης γνώσης: 3: Επαρκείς_καταθέσεις _ _ : (Επαρκείς_καταθέσεις _ ) _ Επαρκείς_καταθέσεις _ _ Γιάννης Ρεφανίδης 71 Παράδειγµα: Οικονοµικός Σύµβουλος Εξαγωγή συµπερασµάτων µε ανάλυση (3/9) Συνδυάζοντας λοιπόν την 3 µε την 12 παίρνουµε: 13: Επαρκείς_καταθέσεις _ Η πρόταση 7 µετασχηµατίζεται κατά σειρά ως εξής: x Εισοδήµατα (x,σταθερά) Προστατευόµενα(y) Μεγαλύτερο(x,Ελάχιστο_εισόδηµα(y)) Επαρκές_εισόδηµα (Εισοδήµατα (x,σταθερά) Προστατευόµενα(y) Μεγαλύτερο(x,Ελάχιστο_εισόδηµα(y))) Επαρκές_εισόδηµα Εισοδήµατα(x,Σταθερά) Προστατευόµενα(y) Μεγαλύτερο(x,Ελάχιστο_εισόδηµα(y)) Επαρκές_εισόδηµα η οποία συνδυάζεται µε την 13 για να δώσει: 14: Επαρκείς_καταθέσεις Εισοδήµατα(x,Σταθερά) Προστατευόµενα(y) Μεγαλύτερο(x,Ελάχιστο_εισόδηµα(y)) Γιάννης Ρεφανίδης 72 22

Παράδειγµα: Οικονοµικός Σύµβουλος Εξαγωγή συµπερασµάτων µε ανάλυση (4/9) Η πρόταση 14: 14: Επαρκείς_καταθέσεις Εισοδήµατα(x,Σταθερά) Προστατευόµενα(y) Μεγαλύτερο(x,Ελάχιστο_εισόδηµα(y)) συνδυάζεται µε την 10: 10: Εισοδήµατα(25000, Σταθερά) µε ενοποίηση {x/25000) και δίνει: 15: Επαρκείς_καταθέσεις Προστατευόµενα(y) Μεγαλύτερο(25000,Ελάχιστο_εισόδηµα(y)) Γιάννης Ρεφανίδης 73 Παράδειγµα: Οικονοµικός Σύµβουλος Εξαγωγή συµπερασµάτων µε ανάλυση (5/9) Η πρόταση 15: Επαρκείς_καταθέσεις Προστατευόµενα(y) Μεγαλύτερο(25000,Ελάχιστο_εισόδηµα(y)) συνδυάζεται µε την 11: 11: Προστατευόµενα(3) µε αντικατάσταση {y/3} και δίνει: 16: Επαρκείς_καταθέσεις Μεγαλύτερο(25000,Ελάχιστο_εισόδηµα(3)) Γιάννης Ρεφανίδης 74 23

Παράδειγµα: Οικονοµικός Σύµβουλος Εξαγωγή συµπερασµάτων µε ανάλυση (6/9) Η πρόταση 4 µετασχηµατίζεται κατά σειρά: 4: x,y Ύψος_καταθέσεων(x) Προστατευόµενα(y) Μεγαλύτερο(x, Ελάχιστες_καταθέσεις(y)) Επαρκείς_καταθέσεις (Ύψος_καταθέσεων(x) Προστατευόµενα(y) Μεγαλύτερο(x, Ελάχιστες_καταθέσεις(y))) Επαρκείς_καταθέσεις Ύψος_καταθέσεων(x) Προστατευόµενα(y) 0εγαλύτερο(x, Ελάχιστες_καταθέσεις(y)) Επαρκείς_καταθέσεις η οποία συνδυαζόµενη µε την 16: 16: Επαρκείς_καταθέσεις Μεγαλύτερο(25000,Ελάχιστο_εισόδηµα(3)) δίνει: 17: Ύψος_καταθέσεων(x) Προστατευόµενα(y) 0εγαλύτερο(x, Ελάχιστες_καταθέσεις(y)) Μεγαλύτερο(25000,Ελάχιστο_εισόδηµα(3)) Γιάννης Ρεφανίδης 75 Παράδειγµα: Οικονοµικός Σύµβουλος Εξαγωγή συµπερασµάτων µε ανάλυση (7/9) 17: 17: Ύψος_καταθέσεων(x) Προστατευόµενα(y) 0εγαλύτερο(x, Ελάχιστες_καταθέσεις(y)) Μεγαλύτερο(25000,Ελάχιστο_εισόδηµα(3)) συνδυαζόµενη κατά σειρά µε τις 9 και 11: 9: Ύψος_καταθέσεων(22000) 11: Προστατευόµενα(3) µε αντικαταστάσεις {x/22000) και {y/3} δίνει: 18: 0εγαλύτερο(22000, Ελάχιστες_καταθέσεις(3)) Μεγαλύτερο(25000,Ελάχιστο_εισόδηµα(3)) Γιάννης Ρεφανίδης 76 24

Παράδειγµα: Οικονοµικός Σύµβουλος Εξαγωγή συµπερασµάτων µε ανάλυση (8/9) Γνωρίζουµε ότι: Ελάχιστες_καταθέσεις(3) 5000*3 15000 Ελάχιστο_εισόδηµα(3) 15000+4000*3 27000 Άρα η πρόταση 18 γράφεται ισοδύναµα: 18: 0εγαλύτερο(22000, 15000) Μεγαλύτερο(25000,27000) Καταλήξαµε σε άτοπο. Άρα η πρόταση: 12: Πρόταση_συνδυασµός δεν ισχύει, οπότε αποδείχθηκε ότι ισχύει η πρόταση: Πρόταση_συνδυασµός Γιάννης Ρεφανίδης 77 Παράδειγµα: Οικονοµικός Σύµβουλος Εξαγωγή συµπερασµάτων µε ανάλυση (9/9) Στην τεχνική της ανάλυσης ακολουθήσαµε µια στρατηγική αναζήτησης πρώτα-κατά-βάθος. Επίσης δώσαµε προτεραιότητα στις προτάσεις ενός κατηγορήµατος, οι οποίες οδηγούσαν στην παραγωγή µικρών νέων προτάσεων. Φυσικά υπήρχε και άλλη σειρά πραγµατοποίησης συνδυασµών, η οποία θα µπορούσε να οδηγήσει στο ίδιο αποτέλεσµα (δηλαδή σε άτοπο). Εάν είχαµε δοκιµάσει να αποδείξουµε την άρνηση µιας πρότασης που δεν ισχύει, π.χ. την άρνηση της Πρόταση_µετοχές (δηλ.: Πρόταση_µετοχές), δεν θα καταλήγαµε σε άτοπο. Γιάννης Ρεφανίδης 78 25

Παράδειγµα: Οικονοµικός Σύµβουλος Απόδειξη και Ανάλυση (1/3) Συγκρίνοντας κανείς τον τρόπο εφαρµογής των δύο µεθόδων εξαγωγής συµπερασµάτων που είδαµε, µπορεί να προσέξει τα εξής: Η απόδειξη βασίστηκε στο συνδυασµό τωνυπαρχουσώνπροτάσεων της βάσης γνώσης, βάσει διάφορων ισοδυναµιών, για την παραγωγή νέας γνώσης. Ξεκινώντας από τη γνωστή γνώση, ένα σύστηµα µπορεί να παράγει πολλές νέες προτάσεις που ισχύουν, ελπίζοντας κάποια στιγµή να παράγει και κάποια από τις επιθυµητές προτάσεις (στο παράδειγµα που προηγήθηκε αυτές ήταν οι προτάσεις που αφορούσαν τις τρεις δυνατές πολιτικές τοποθέτησης των χρηµάτων). Μπορεί να πει κανείς ότι η απόδειξη ξεκίνησε από τα αρχικά δεδοµένα και προχώρησε αποµακρυνόµενη από αυτά. Μια τέτοιου είδους αναζήτηση λέγεται αναζήτηση καθοδηγούµενη από τα δεδοµένα (data driven) ή ορθή ακολουθία εκτέλεσης (forward chaining). Γιάννης Ρεφανίδης 79 Παράδειγµα: Οικονοµικός Σύµβουλος Απόδειξη και Ανάλυση (2/3) Από την άλλη πλευρά, η ανάλυση: Ξεκίνησε εισάγοντας στη βάση γνώση την άρνηση της προς απόδειξη πρότασης. Συνδύασε τη νέα πρόταση µε τις υπάρχουσες, προσπαθώντας να καταλήξει σε άτοπο. Εάν δεν ξέρουµε τι θέλουµε να συµπαιράνουµε, δεν µπορούµε να εφαρµόσουµε την ανάλυση ή πρέπει να την εφαρµόσουµε για όλα τα ενδεχόµενα συµπεράσµατα. Στο παράδειγµα του οικονοµικού συµβούλου, µε την ανάλυση θα έπρεπε να δοκιµάσουµε να αποδείξουµε και τις τρεις προτάσεις Πρόταση_καταθέσεις, Πρόταση_µετοχές και Πρόταση_συνδυασµός. Μπορεί να πει κανείς ότι η ανάλυση ξεκινά από τις προτάσεις που θέλουµε να αποδείξουµε και προχωρά προς τα αρχικά δεδοµένα. Μια τέτοιου είδους αναζήτηση λέγεται αναζήτηση καθοδηγούµενη από τους στόχους (goal driven) ή ανάστροφη ακολουθία εκτέλεσης (backward chaining). Γιάννης Ρεφανίδης 80 26

Παράδειγµα: Οικονοµικός Σύµβουλος Απόδειξη και Ανάλυση (3/3) Ωστόσο, θα µπορούσε κανείς να εφαρµόσει την ανάλυση µε µια data-driven προσέγγιση ή την απόδειξη µε µια goal-driven. Για παράδειγµα, έστω ότι έχουµε τις προτάσεις: A A B και θέλουµε να βγάλουµε το συµπέρασµα Β, χρησιµοποιώντας την τεχνική της ανάλυσης. Η δεύτερη πρόταση γράφεται: A B και συνδυαζόµενη µε την πρώτη δίνει το Β. Γιάννης Ρεφανίδης 81 Παράδειγµα: Οικονοµικός Σύµβουλος Επέκταση για πολλούς πελάτες (1/2) Όπως παρουσιάστηκε το παράδειγµα του οικονοµικού συµβούλου, αυτό αφορούσε έναν µόνο πελάτη. Για να εξαχθούν συµπεράσµατα για έναν νέο πελάτη, θα έπρεπε να διαγραφούν από τη βάση γνώσης οι προτάσεις που αφορούν τον προηγούµενο πελάτη (προτάσεις 9, 10 και 11) και όλα τα συµπεράσµατα που εξήχθησαν µε αυτές. Εάν θέλαµε να µπορούµε να εξάγουµε συµπεράσµατα ταυτόχρονα για διάφορους πελάτες, θα έπρεπε σε κάθε κατηγόρηµα να προστεθεί ένα όρισµα που να δηλώνει το όνοµα του πελάτη. Γιάννης Ρεφανίδης 82 27

Παράδειγµα: Οικονοµικός Σύµβουλος Επέκταση για πολλούς πελάτες (2/2) Παρακάτω φαίνονται ενδεικτικά πώς θα τροποποιούνταν µερικές από τις προτάσεις: Ύψος_καταθέσεων(Κώστας, 22000) Επαρκές_εισόδηµα(Μαρία) Πρόταση_καταθέσεις(Γιώργος) x,y,z Ύψος_καταθέσεων(z,x) Προστατευόµενα(z,y) Μεγαλύτερο(x, Ελάχιστες_καταθέσεις(y)) Επαρκείς_καταθέσεις(z) Γιάννης Ρεφανίδης 83 Υπολογισιµότητα Λογικής (1/4) Με τον όρο "Υπολογισιµότητα" εννοούµε τη δυνατότητα να µπορούµε να απαντάµε, βάσει κάποιου αλγορίθµου, σε διάφορα προβλήµατα που µας τίθενται σε κάποια γλώσσα. Προβλήµατα για τα οποία υπάρχει ένας αλγόριθµος που απαντά σε κάθε περίπτωση ονοµάζονται αποφασίσιµα (decidable). Το πρόβληµα εάν µια πρόταση προκύπτει από µια οποιαδήποτε βάση γνώσης στην προτασιακή λογική είναι αποφασίσιµο. Παρατήρηση: Ηυπολογισιµότητα είναι διαφορετική έννοια από την πολυπλοκότητα. Η πολυπλοκότητα αφορά τα αποφασίσιµα προβλήµατα και ειδικότερα το χρόνο (και τη µνήµη) που απαιτεί ο αλγόριθµος επίλυσής τους. Γιάννης Ρεφανίδης 84 28

Υπολογισιµότητα Λογικής (2/4) Το ίδιο πρόβληµα, δηλαδή της απόδειξης µιας πρότασης από µια βάση γνώσης στη λογική πρώτης τάξης δεν είναι γενικά αποφασίσιµο. Το πρόβληµα της µη-αποφασισιµότητας στη λογική πρώτης τάξης προέρχεται από τη δυνατότητα ύπαρξης άπειρου πλήθους αντικειµένων. Η δυνατότητα ύπαρξης άπειρου πλήθους αντικειµένων στη λογική πρώτης τάξης οφείλεται στη ύπαρξη συναρτησιακών συµβόλων. Για παράδειγµα, έστω το συναρτησιακό σύµβολο Πατέρας(x) που δηλώνει το αντικείµενο που είναι ο πατέρας του x. Μπορούµε να δηµιουργήσουµε ένα άπειρο πλήθος αντικειµένων της µορφής: Πατέρας(Πατέρας(...(Πατέρας(Κώστας))...)) Γιάννης Ρεφανίδης 85 Υπολογισιµότητα Λογικής (3/4) Στην ειδική περίπτωση µιας βάση γνώσης σε λογική πρώτης τάξης που δεν έχει συναρτησιακά σύµβολα, τότε όλες οι ερωτήσεις που µπορεί να τεθούν σε σχέση µε τη δυνατότητα παραγωγής νέων προτάσεων από µια τέτοια βάση γνώσης είναι αποφασίσιµες. Μια τέτοια βάση γνώσης µάλιστα θα µπορούσε να "µεταφραστεί" σε απλή προτασιακή λογική, καταγράφοντας όλες τις προτάσεις που προκύπτουν από όλες τις αντικαταστάσεις των µεταβλητών (π.χ. x) µε τα αντικείµενα του προβλήµατος. Γιάννης Ρεφανίδης 86 29

Υπολογισιµότητα Λογικής (4/4) Στη γενική περίπτωση, η ερώτηση εάν µια πρόταση µπορεί να προκύψει από µια βάση γνώσης (µε συναρτησιακά σύµβολα) σε λογική πρώτης τάξης µπορεί να απαντηθεί καταφατικά και σε πεπερασµένο χρόνο, εφόσον πράγµατι η πρόταση µπορεί να προκύψει. Προϋπόθεση για µια επιτυχή καταφατική απάντηση είναι να χρησιµοποιηθεί µια στρατηγική αναζήτησης πρώτα-κατά-πλάτος. Εάν η πρόταση που προσπαθούµε να αποδείξουµε δεν µπορεί να αποδειχθεί, ο αλγόριθµος αναζήτησης ενδέχεται να ψάχνει επ' άπειρο, µη-σταµατώντας ποτέ µε µια αρνητική απάντηση. Για τους παραπάνω λόγους, το πρόβληµα της απόδειξης προτάσεων στην λογική πρώτης τάξης είναι ηµι-αποφασίσιµο (semidecidable). Γιάννης Ρεφανίδης 87 Συστήµατα λογικής πρώτης τάξης (1/2) Υπάρχουν διάφορα συστήµατα που επιτρέπουν αναπαράσταση γνώσης και εξαγωγή συµπερασµάτων σε λογική πρώτης τάξης. Τα περισσότερα είναι ερευνητικού χαρακτήρα και χρησιµοποιούνται κυρίως για αποδείξεις µαθηµατικών θεωρηµάτων. Για το λόγο αυτό ονοµάζονται και theorem provers. Χρησιµοποιούνται επίσης σε προβλήµατα επαλήθευσης (verification) και σύνθεσης (synthesis): hardware design programming languages software engineering Γιάννης Ρεφανίδης 88 30

Συστήµατα λογικής πρώτης τάξης (2/2) Μερικά από τα πιο γνωστά είναι τα: Otter Argonne National Lab., US Το 1996, µετά από υπολογισµούς 6 ηµερών, απέδειξε την ισοδυναµία της Robbins άλγεβρας µε την Boolean άλγεβρα, ένα πρόβληµα που παρέµενε άλυτο από το 1933. http://www-unix.mcs.anl.gov/ar/otter/ Ελεύθερο download PTTP (Prolog Technology Theorem Prover) Stanford Research Institute http://www.ai.sri.com/~stickel/pttp.html Ελεύθερο download Άλλα: http://www.cl.cam.ac.uk/users/jrh/ar.html Γιάννης Ρεφανίδης 89 Λογικές ανώτερης τάξης (1/2) Η λογική πρώτης τάξης διαφέρει από τις λογικές ανώτερων τάξεων στις τιµές που µπορούν να πάρουν οι µεταβλητές. Στη λογική πρώτης τάξης, όπως είδαµε, οι µεταβλητές µπορούν να πάρουν ως τιµές µόνο αντικείµενα. Στη λογική δεύτερης τάξης, οι µεταβλητές µπορούν να πάρουν ως τιµές ονόµατα κατηγορηµάτων. x x(κώστας, y) x(γιώργος, z) Η παραπάνω πρόταση διαβάζεται: Γιά κάθε x, εάν το x είναι µια ιδιότητα (τάξης 2) του Κώστα, τότε το x είναι και µια ιδιότητα του Γιώργου. Για παράδειγµα, το x θα µπορούσε να είναι η ιδιότητα "Ύψος", µε το δεύτερο όρισµα να δηλώνει το ύψος κάθε ατόµου. Έτσι θα λέγαµε ότι "Εάν οκώστας έχει την ιδιότητα ύψος, τότε και ο Γιώργος έχει την ιδιότητα ύψος", χωρίς να µας ενδιαφέρει εάν έχουν το ίδιο ύψος ή όχι (µεταβλητές y και z). Γιάννης Ρεφανίδης 90 31

Λογικές ανώτερης τάξης (2/2) Ένα ακόµη παράδειγµα λογικής δεύτερης τάξης: x,a,b: (x(a,b) x(b,a)) permutational(x) που διαβάζεται ως εξής: "Κάθε ιδιότητα x για την οποία εάν ισχύει το x(a,b) ισχύει και το x(b,a) έχει την ιδιότητα της αντιµεταθετικότητας". Παρόµοια, οι λογικές ανώτερης τάξης (τρίτης και άνω) επιτρέπουν τον ορισµό κατηγορηµάτων µε ορίσµατα άλλα κατηγορήµατα των οποίων τα ορίσµατα είναι άλλα κατηγορήµατα κλπ. Οι λογικές ανώτερης τάξης επιτρέπουν την έκφραση προτάσεων που δεν είναι δυνατόν να εκφραστούν σε λογικές χαµηλότερων τάξεων. Φυσικά στις λογικές ανώτερων τάξεων αυξάνει ιδιαίτερα η πολυπλοκότητα εξαγωγής συµπερασµάτων. Γιάννης Ρεφανίδης 91 32