Prolog Επεξεργασία και Αναπαράσταση Γνώσης

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Κατηγορηματικός Λογισμός
Advertisements

Κεφάλαιο Τμηματικός προγραμματισμός
ΛΟΓΙΚΑ ΔΙΑΓΡΑΜΜΑΤΑ.
Τι είναι ο υπολογιστής; Τι είναι ο προγραμματισμός
PROLOG.
ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ ΤΜΗΜΑΤΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ
Εργαστήριο μαθήματος «Τεχνολογία Γνώσης» Σαντιπαντάκης Γιώργος
Κεφάλαιο 6 Υλοποίηση Γλωσσών Προγραμματισμού
Άρνηση στο Λ.Π.. Αρνητικά γεγονότα/γνώση δεν περιγράφονται στο πρόγραμμα. Απλώς δεν περιλαμβάνονται στο πρόγραμμα. Παράδειγμα –Γράφουμε: father (bob,
Κεφάλαιο 7 Λογικός Προγραμματισμός: Η Γλώσσα Prolog
Prolog Tutorial Επεξεργασία και Αναπαράσταση Γνώσης Άνοιξη 2010
ΕΠΛ 434 – Λογικός Προγραμματισμός και Τεχνητή Νοημοσύνη
Προγραμματισμός Ι Παράδειγμα: Παράδειγμα:Να γραφεί πρόγραμμα που να δέχεται ως είσοδο κείμενο, να απαριθμεί τις εμφανίσεις των ψηφίων 0-9, τα λευκά διαστήματα.
Εργαστήριο μαθήματος «Τεχνολογία Γνώσης» Σαντιπαντάκης Γιώργος
Εργαστήριο μαθήματος «Τεχνολογία Γνώσης» Σαντιπαντάκης Γιώργος
Μηχανική Μάθηση και Εξόρυξη Γνώσης
ΕΛΕΓΧΟΣ ΡΟΗΣ ΜΑΘΗΜΑ 4. ΑΚΟΛΟΥΘΙΑΚΗ ΕΚΤΕΛΕΣΗ ΠΡΟΤΑΣΕΩΝ ΠΡΟΤΑΣΗ Α ΠΡΟΤΑΣΗ Β ΠΡΟΤΑΣΗ Γ ………………. ΠΡΟΤΑΣΗ n ΠΡΟΤΑΣΗ Α ΠΡΟΤΑΣΗ Β ΠΡΟΤΑΣΗ Γ ………………. ΠΡΟΤΑΣΗ n.
Κεφ.1 Εισαγωγη στην εννοια του Αλγοριθμου και στον Προγραμματισμο
ΣΥΝΑΡΤΗΣΕΙΣ.
ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ (μΟΝΟΔΙΑΣΤΑΤΟΙ ΠΙΝΑΚΕΣ ΑΝΑΖΗΤΗΣΗ - ΤΑΞΙΝΟΜΗΣΗ) Καλλονιάτης Χρήστος Επίκουρος Καθηγητής Τμήμα.
Ενότητα Α.4. Δομημένος Προγραμματισμός
Ταυτοποίηση (Unification). Πίνακας Ταυτοποίησης Όρος 1 Όρος 2 C1 X1 F (τ 1,…,τ ν ) C2 Επιτυχές αν C1 == C2 Επιτυχές {Χ1 = C2} Αποτυγχάνει Χ2 Επιτυχές.
1.5 Γλώσσες Προγραμματισμού
Κατανόηση (δεδομένα – ζητούμενα) Ανάλυση σε απλούστερα προβλήματα Επίλυση με οργανωμένα, απολύτως καθορισμένα, πεπερασμένα βήματα ΑΛΓΟΡΙΘΜΟΣ.
Δομή επανάληψης Η δομή επανάληψης είναι μια ολοκληρωμένη πρόταση η οποία περικλείει μια συνθήκη και μια ομάδα εντολών, οι οποίες εκτελούνται, όσο ικανοποιείται.
Το Συντακτικό της PROLOG
Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών – Τμήμα Πληροφορικής και Τηλεπικοινωνιών 1 Κεφάλαιο 4 Σημασιολογία μιας Απλής Προστακτικής Γλώσσας Προπτυχιακό.
Διπλωματική Εργασία Πειραματική Αξιολόγηση της Μοναδιαίας Οκνηρής Συνέπειας Τόξου (Singleton Lazy Arc Consistency) Ιωαννίδης Γιώργος (ΑΕΜ: 491)
Μεταγλωττιστές (Compilers) (Θ) Ενότητα 10: Παραγωγή Ενδιάμεσου Κώδικα (Σημασιολογικές ρουτίνες μετάφρασης-Μέρος Α) Κατερίνα Γεωργούλη Τμήμα Μηχανικών Πληροφορικής.
Ερωτήσεις & Φύλλο εργασίας
Διαδικαστικά κατηγορήματα συστήματος PROLOG. 1.Αποκοπή, !. 2.Είσοδος / Έξοδος read (X) - X ταυτοποιείται με τον όρο που γράφεται στην οθόνη write (X)-
ΗΥ150 – ΠρογραμματισμόςΚώστας Παναγιωτάκης ΗΥ-150 Προγραμματισμός Συναρτήσεις.
ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ (ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ - ΔΙΕΡΓΑΣΙΕΣ)
ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ 5 ο Εξάμηνο - Ενότητα 7 - Επεξεργασία Λιστών Δημοσθένης Σταμάτης Τμήμα Πληροφορικής T.E.I. ΘΕΣΣΑΛΟΝΙΚΗΣ.
Μελέτη Δ.Ε. με χρήση του Mathematica
Βασικά στοιχεία της Java
ΗΥ150 – ΠρογραμματισμόςΚώστας Παναγιωτάκης ΗΥ-150 Προγραμματισμός Συναρτήσεις (μέρος δεύτερο) και Μεταβλητές.
Εισαγωγή στην Έννοια του Αλγορίθμου και στον Προγραμματισμό
ΤΕΙ ΙΟΝΙΩΝ ΝΗΣΩΝ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ ΠΑΡΆΡΤΗΜΑ ΛΕΥΚΑΔΑΣ ΥΠΕΥΘΥΝΗ ΚΑΘΗΓΉΤΡΙΑ Δρ. ΤΣΙΝΤΖΑ ΠΑΝΑΓΙΩΤΑ Οι παρουσιάσεις του μαθήματος βασίζονται στο.
 Στο προηγούμενο μάθημα έγινε μια εισαγωγή στην γενική μορφή ενός προγράμματος  Αυτή η μορφή ακολουθεί την λογική της απόδειξης θεωρημάτων μέσω προτάσεων.
Prolog Επεξεργασία και Αναπαράσταση Γνώσης ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολογίας Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο: Τεχνητή Νοημοσύνη.
Πληροφορική 2 Γλώσσες Προγραμματισμού 1. Γλώσσες προγραμματσιμού  Επιτρέπουν την κωδικοποίηση των αλγορίθμων  Η εκτέλεση ενός προγράμματος θα πρέπει.
Αξιολόγηση επενδύσεων Ενότητα 2: Απλός και σύνθετος τόκος και Εισαγωγή στο EXCEL Εργαστήριο 2 ης Εβδομάδας Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων.
Prolog Επεξεργασία και Αναπαράσταση Γνώσης ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολογίας Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο: Τεχνητή Νοημοσύνη.
Prolog Επεξεργασία και Αναπαράσταση Γνώσης ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολογίας Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο: Τεχνητή Νοημοσύνη.
Πληροφορική 2 Τεχνητή νοημοσύνη 1. Τι είναι τεχνητή νοημοσύνη;  Τεχνητή νοημοσύνη (AI=Artificial Intelligence) είναι η μελέτη προγραμματισμένων συστημάτων.
ΜΕΤΑΒΛΗΤΕΣ-ΣΤΑΘΕΡΕΣ -ΕΚΦΡΑΣΕΙΣ
Αρχεσ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ ΤΑξη Β΄
Προβλήματα Ικανοποίησης Περιορισμών
Prolog Επεξεργασία και Αναπαράσταση Γνώσης Εισαγωγή
Prolog Tutorial Μαθηματική Λογική.
Prolog Επεξεργασία και Αναπαράσταση Γνώσης
Ενότητα 3 : Γλώσσες προγραμματισμού Δρ. Γκόγκος Χρήστος
Prolog Επεξεργασία και Αναπαράσταση Γνώσης
Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων
Επιλέγοντας… Αν θέλουμε να γράψουμε έναν αλγόριθμο που να τον εκτελεί ένα μικρό παιδί, ώστε να διασχίσει με ασφάλεια το δρόμο, πρέπει να συμπεριλάβουμε.
Τεχνολογία και Προγραμματισμός Υπολογιστών
ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ «ΓΙΑ» Για μτ από ατ μέχρι ττ [με_βήμα β] εντολές Τέλος_επανάληψης : περιοχή εντολών μτ : η μεταβλητή της.
Prolog Επεξεργασία και Αναπαράσταση Γνώσης
Prolog Επεξεργασία και Αναπαράσταση Γνώσης
Προγραμματισμός κινητών συσκευών
Μανασσάκης Βασίλης Καθηγητής Πληροφορικής
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΑΕΠΠ
Επαγωγική Στατιστική Συσχέτιση – Συντελεστής συσχέτισης Χαράλαμπος Γναρδέλλης Τμήμα Τεχνολογίας Αλιείας και Υδατοκαλλιεργειών.
Προγράμματα και Δομές Δεδομένων
Β.ΕΠΑΛ-Γενικής Παιδείας  ΜΑΘΗΜΑ: Εισαγωγή στης αρχές Επιστήμης των Η/Υ  ΚΕΦΑΛΑΙΟ 4: Γλώσσες Αναπαράστασης Αλγορίθμων  ΕΝΟΤΗΤΑ 4.2: Δομή Ακολουθίας 
ΠΛΗΡΟΦΟΡΙΚΗ Γ΄ Γυμνασίου Α΄ Τρίμηνο
ΣΤΟΙΧΕΙΟΜΕΤΡΙΑ. Λύση ΣΤΟΙΧΕΙΟΜΕΤΡΙΑ Λύση.
Σκοπός Η συνοπτική παρουσίαση
Επαγωγική Στατιστική Συσχέτιση – Συντελεστές συσχέτισης Χαράλαμπος Γναρδέλλης Εφαρμογές Πληροφορικής στην Αλιεία και τις Υδατοκαλλιέργειες.
Μεταγράφημα παρουσίασης:

Prolog Επεξεργασία και Αναπαράσταση Γνώσης ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολογίας Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο: Τεχνητή Νοημοσύνη

Αναζήτηση προτάσεων (1/2) Για να ελέγξει η Prolog αν μία κλήση ικανοποιείται από μία πρόταση, χρησιμοποιεί ένα μηχανισμό ταυτοποίησης. Αυτός προσπαθεί να καταστήσει ταυτόσημες μία κλήση μιας ερώτησης και την κεφαλή μίας πρότασης, εκτελώντας τις ελάχιστες απαραίτητες αναθέσεις τιμών σε μεταβλητές (most general unifier). Όταν μία κλήση ταυτοποιείται με ένα από τα γεγονότα του προγράμματος τότε αυτή ικανοποιείται και απομακρύνεται από την ερώτηση. Αν η κλήση ταυτοποιείται με έναν κανόνα, τότε αυτή απομακρύνεται από την ερώτηση και τη θέση της παίρνει το σώμα του κανόνα αυτού.

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

Κανόνες Ταυτοποίησης (1/2) Μία μεταβλητή που δεν έχει πάρει τιμή μπορεί να ταυτοποιηθεί με σταθερή, μεταβλητή ή σύνθετο όρο. Μία σταθερά μπορεί να ταυτοποιηθεί μόνο με τον εαυτό της. Ένας σύνθετος όρος μπορεί να ταυτοποιηθεί με έναν άλλο σύνθετο μόνο εφόσον έχουν το ίδιο συναρτησιακό σύμβολο και την ίδια τάξη, και με την προϋπόθεση ότι τα αντίστοιχα ορίσματά τους μπορούν να ταυτοποιηθούν.

Κανόνες Ταυτοποίησης (2/2) <σταθερά> c1 <μεταβλητή> X1 <σύνθετος όρος> f(t1,…,tν) c2 επιτυχές αν η c1 είναι ίδια με τη c2 η μεταβλητή X1 παίρνει την τιμή c2 {Χ1=c2} αποτυγχάνει X2 η μεταβλητή X2 παίρνει την τιμή c1 {Χ2=c1} η μεταβλητή X1 ενοποιείται με τη X2 {Χ1=Χ2} επιτυχές αν {Χ2=f(u1,…,um)} f(u1,…,uμ) {Χ1=f(t1,…,tn)} επιτυχές αν ν==μ και u1==t1,…,uμ==tν

Παράδειγμα εκτέλεσης προγράμματος (1/2) Έστω το πρόγραμμα greek(socrates). human(turing). human(socrates). fallible(X):- human(X). και έστω ότι τίθεται το ερώτημα. ?- fallible(Y),greek(Y).

Παράδειγμα εκτέλεσης προγράμματος (2/2) greek(socrates). human(turing). human(socrates). fallible(X):- human(X). ?-fallible(Y),greek(Y). {Y=X} ?-human(Y),greek(Y). {Y=turing} {Y=socrates} ?-greek(turing). ?-greek(socrates). αποτυγχάνει yes