Εργαστήριο μαθήματος «Τεχνολογία Γνώσης» Σαντιπαντάκης Γιώργος

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Δένδρα van Emde Boas TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A Μελετάμε την περίπτωση όπου αποθηκεύουμε.
Advertisements

Project in XSB Prolog Επεξεργασία και Αναπαράσταση Γνώσης Άνοιξη 2008 Τμήμα Επιστήμης Υπολογιστών Πανεπιστημίου Κρήτης.
Εργαστήριο μαθήματος «Τεχνολογία Γνώσης» Σαντιπαντάκης Γιώργος
PROLOG.
Εργαστήριο μαθήματος «Τεχνολογία Γνώσης» Σαντιπαντάκης Γιώργος
Κεφάλαιο 7 Λογικός Προγραμματισμός: Η Γλώσσα Prolog
Prolog Tutorial Επεξεργασία και Αναπαράσταση Γνώσης Άνοιξη 2010
ΕΠΛ 434 – Λογικός Προγραμματισμός και Τεχνητή Νοημοσύνη
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
MATrix LABoratory Εισαγωγή στο MatLab
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Πίνακες Κλάσεις και Αντικείμενα.
Εργαστήριο μαθήματος «Τεχνολογία Γνώσης» Σαντιπαντάκης Γιώργος
Επιμέλεια: Κατσιμαγκλής Ηλίας Αβραμίδου Φωτεινή
1 Βάσεις Δεδομένων I ΥΠΕΥΘΥΝΟΙ: ΘΟΔΩΡΗΣ ΜΑΝΑΒΗΣ ΝΙΚΟΣ ΚΥΡΙΤΣΗΣ Εργαστήριο.
Διακριτά Μαθηματικά ΙI Αναδρομή
Προγραμματισμός Ι Προτάσεις επανάληψης - γενικά επαναλαμβάνουν ένα μπλοκ προτάσεωνΟι προτάσεις επανάληψης επαναλαμβάνουν ένα μπλοκ προτάσεων είτε για όσες.
Δομές Δεδομένων στο Λ.Π.. Λίστες Λίστα είναι ένας όρος –Οι όροι αυτοί ορίζονται με τη βοήθεια μιας συνάρτησης: [ ] σταθερά για κενή λίστα – nil [t1| l]
Γιάννης Σταματίου Μερικά προβλήματα μέτρησης
Προγραμματισμός ΙΙ Διάλεξη #6: Απλές Δομές Ελέγχου Δρ. Νικ. Λιόλιος.
Σχεδίαση αλγορίθμων (2ο μέρος)
Διδάσκων: Παύλος Παυλικκάς1 Ολυμπιάδα Πληροφορικής Recursion - Αναδρομή.
ΣΥΝΑΡΤΗΣΕΙΣ.
Eντολες Επαναληψης - Βροχοι (repetition and loops)
Διδάσκοντας με τη βοήθεια του επεξεργαστή κειμένου.
Οσμές στη Σχεδίαση του Λογισμικού (Code Smells) Πρόγραμμα Μεταπτυχιακών Σπουδών στην Εφαρμοσμένη Πληροφορική.
Γιάννης Σταματίου Αναδρομή και αναδρομικές σχέσεις
Ταυτοποίηση (Unification). Πίνακας Ταυτοποίησης Όρος 1 Όρος 2 C1 X1 F (τ 1,…,τ ν ) C2 Επιτυχές αν C1 == C2 Επιτυχές {Χ1 = C2} Αποτυγχάνει Χ2 Επιτυχές.
5.3 H MHΧΑΝΙΚΗ ΕΝΕΡΓΕΙΑ & Η ΔΙΑΤΗΡΗΣΗ ΤΗΣ. Στόχοι μαθήματος  Τι είναι η μηχανική ενέργεια;  Τι λέει η Αρχή διατήρησης της μηχανικής ενέργειας (Α.Δ.Μ.Ε.)
Eντολες Επαναληψης - Βροχοι (repetition and loops)
Project in XSB Prolog Επεξεργασία και Αναπαράσταση Γνώσης Άνοιξη 2007 Τμήμα Επιστήμης Υπολογιστών Πανεπιστημίου Κρήτης.
Το Συντακτικό της PROLOG
Η λέξη Wiki ερμηνεύεται μερικές φορές ως ακρώνυμο για το "What I know is" δηλαδή "Αυτό που εγώ ξέρω είναι"
Ενότητα 1.2 Αναδρομικές Σχέσεις Σχεδίαση & Ανάλυση Αλγορίθμων.
ΗΥ150 – ΠρογραμματισμόςΚώστας Παναγιωτάκης ΗΥ-150 Προγραμματισμός Αναδρομή (1/2)
Αλγόριθμοι - Τμήμα Πληροφορικής ΑΠΘ - 4ο εξάμηνο1 Ανάλυση Αλγορίθμων b Θέματα: Ορθότητα Χρονική αποδοτικότητα Χωρική αποδοτικότητα Βελτιστότητα b Προσεγγίσεις:
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Σχεσιακή Άλγεβρα.
Tomcat Θ. Βαρβαρίγου Καθηγήτρια ΕΜΠ Τηλ
Διαδικαστικά κατηγορήματα συστήματος PROLOG. 1.Αποκοπή, !. 2.Είσοδος / Έξοδος read (X) - X ταυτοποιείται με τον όρο που γράφεται στην οθόνη write (X)-
Project in XSB Prolog Επεξεργασία και Αναπαράσταση Γνώσης Άνοιξη 2009 Τμήμα Επιστήμης Υπολογιστών Πανεπιστημίου Κρήτης.
ΕΠΛ 231 – Δομές Δεδομένων και Αλγόριθμοι 4-1 Στην ενότητα αυτή θα μελετηθεί η χρήση στοιβών στις εξής εφαρμογές: Αναδρομικές συναρτήσεις Ισοζυγισμός Παρενθέσεων.
ΗΥ150 – ΠρογραμματισμόςΞενοφών Ζαμπούλης ΗΥ-150 Προγραμματισμός Αναδρομή (1/2)
ΤΕΙ Αθήνας: Σχολή ΤΕΦ: Τμήμα Ναυπηγικής Εφαρμογές Η/Υ στην Ναυπηγική ΙΙ ΚΩΔΙΚΟΣ ΜΑΘΗΜΑΤΟΣ NA0703C39 Εξάμηνο Ζ’ Διδάσκων Κωνσταντίνος Β. Κώστας Παρουσίαση.
Prolog Επεξεργασία και Αναπαράσταση Γνώσης ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολογίας Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο: Τεχνητή Νοημοσύνη.
Test.
Test.
Προβλήματα Ικανοποίησης Περιορισμών
Prolog Επεξεργασία και Αναπαράσταση Γνώσης
Prolog Επεξεργασία και Αναπαράσταση Γνώσης
Prolog Επεξεργασία και Αναπαράσταση Γνώσης
Επαλήθευση κάνω, όταν θέλω να σιγουρευτώ ότι έκανα σωστά μια πράξη.
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό
JSIS E 111: Elementary Modern Greek
ΙΣΧΥΡΩΣ ΤΡΟΠΟΠΟΙΗΜΕΝΑ ΥΔΑΤΙΚΑ ΣΥΣΤΗΜΑΤΑ
Εισαγωγή στον Προγ/μό Η/Υ
Άθροισμα ρητών αριθμών.
Prolog Επεξεργασία και Αναπαράσταση Γνώσης
Ισοδυναμία ΜΠΑ με ΠΑ Για κάθε ΜΠΑ Μ υπάρχει αλγόριθμος ο οποίος κατασκευάζει ΠΑ Μ’ αιτιοκρατικό ώστε να αναγνωρίζουν την ίδια ακριβώς γλώσσα. Καθώς το.
Η Γλώσσα Pascal Υποπρογράμματα
Επικαλύπτοντα Δέντρα και Σύνολα Τομής
ΦΟΒΙΕΣ ΕΡΕΥΝΗΤΙΚΗ ΕΡΓΑΣΙΑ Α΄ ΛΥΚΕΙΟΥ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΤΟ ΚΥΚΛΟΦΟΡΙΚΟ ΣΥΣΤΗΜΑ ΤΟΥ ΑΝΘΡΩΠΟΥ
ΑΝΑΝΕΩΣΙΜΕΣ ΠΗΓΕΣ ΕΝΕΡΓΕΙΑΣ
ΧΡΥΣΟΣΤΟΜΟΣ ΠΕΤΡΟΥ ΔΗΜΟΤΙΚΟ ΣΧΟΛΕΙΟ ΑΓΙΩΝ ΤΡΙΜΙΘΙΑΣ ΔΕΚΕΜΒΡΗΣ 2016
ΗΥ-150 Προγραμματισμός Αναδρομή (1/2).
Εκπαιδευτικός: Ειρήνη Περυσινάκη
ΦΥΛΕΤΙΚΟΣ ΔΙΜΟΡΦΙΣΜΟΣ ΕΓΚΕΦΑΛΟΥ
ΤΟ ΚΥΚΛΟΦΟΡΙΚΟ ΣΥΣΤΗΜΑ ΤΟΥ ΑΝΘΡΩΠΟΥ
Αναδρομή Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα:
Μεταγράφημα παρουσίασης:

Εργαστήριο μαθήματος «Τεχνολογία Γνώσης» Σαντιπαντάκης Γιώργος

assert/retract Μπορούμε να προσθέσουμε γεγονότα ή κανόνες (δυναμικά) στο πρόγραμμα (βάση γνώσης) της prolog – asserta/1 : προσθήκη στην αρχή του προγράμματος – assertz/1 : προσθήκη στο τέλος του προγράμματος ή να αφαιρέσουμε γεγονότα ή κανόνες (δυναμικά) στο πρόγραμμα της prolog – retract/1 : διαγράφει το πρώτο γεγονός/κανόνα που ταιριάζει με το όρισμα του – retractall/1 : διαγράφει όλα τα γεγονότα/κανόνες που ταιριάζουν με το όρισμα του

Παραδείγματα asserta(test(a)). – προσθέτει στην αρχή του προγράμματος το γεγονός test(a). assertz(test1(X):-test2(X)). – προσθέτει στο τέλος του προγράμματος τον κανόνα test1(X):-test2(X). retract(test(a)). – αφαιρεί το γεγονός test(a). retractall(test(X)). – αφαιρεί όλα τα γεγονότα που ταιριάζουν με το test(X) (π.χ. test(a), test(b), test(c), … κλπ)

Εισαγωγή στην αναδρομή Αναδρομή: η διαδικασία κλήσης ενός κανόνα από τον εαυτό του. Οι κανόνες που χρησιμοποιούν αναδρομή ονομάζονται αναδρομικοί, ενώ αυτοί που δεν χρησιμοποιούν μη αναδρομικοί. Συχνά χρειάζεται να επαναλάβουμε κάποια λειτουργία, είτε μέχρι να εξαντληθούν κάποια γεγονότα, είτε μέχρι να φτάσουμε σε συγκεκριμένη κατάσταση. Στη Prolog αυτό γίνεται με αναδρομικούς κανόνες (recursion). Ένας κανόνας καλεί τον εαυτό του μέχρι να ικανοποιηθεί κάποια συνθήκη (συνθήκη τερματισμού), η συνθήκη αυτή συνήθως βρίσκεται πριν τον αναδρομικό κανόνα.

Παράδειγμα edge(a,b).path(X,Y):- edge(X,Y).

Παράδειγμα edge(a,b). edge(b,c). path(X,Y):- edge(X,Y). path(X,Y):- edge(X,Z),edge(Z,Y).

Παράδειγμα edge(a,b) edge(b,c). edge(c,d). path(X,Y):- edge(X,Y). path(X,Y):- edge(X,Z),edge(Z,Y). path(X,Y):- edge(X,Z1),edge(Z1,Z2),edge(Z2,Y).

Παράδειγμα edge(a,b) edge(b,c). edge(c,d). … path(X,Y):- edge(X,Y). path(X,Y):- edge(X,Z),edge(Z,Y). path(X,Y):- edge(X,Z1),edge(Z1,Z2),edge(Z2,Y). …

Παράδειγμα edge(a,b) edge(b,c). edge(c,d). … path(X,Y):- edge(X,Y). path(X,Y):- edge(X,Z), edge(Z,Y). path(X,Y):- edge(X,Z1), edge(Z1,Z2), edge(Z2,Y). …

Εύρεση διαδρομής (απλή περίπτωση) hasDoor(a,c). hasDoor(a,b). hasDoor(c,d). hasDoor(b,d). hasDoor(c,g). hasDoor(d,f). hasDoor(f,i). hasDoor(d,h). hasDoor(b,e). hasDoor(e,h). canGoTo(X,Y):- hasDoor(X,Y). canGoTo(X,Y):- hasDoor(X,Z),canGoTo(Z,Y).

Παράδειγμα at(rome). at(Place):- move(Place,Method,NewPlace), write('from '), write(Place),write(' take '), write(Method), write(' to '), write(NewPlace), nl, at(NewPlace). move(airport,plane,rome). move(home,taxi,metro). move(home,taxi,bus_station). move(metro,train,airport). travel.pl

Παράδειγμα μετρητή με αναδρομή counter(0). counter(X):- X>0, write(X),nl,X1 is X-1, counter(X1). counter(X):- X<0, write(X),nl,X1 is X+1, counter(X1). counter.pl

Υπολογισμός παραγοντικού factorial(0,1). factorial(X,Y):- X>0, X1 is X-1, factorial(X1,N), Y = X*N. Ερώτηση: ?- factorial(3,N). N = 3 * (2 * (1 * 1)) factorial.pl