Παρουσίαση/Προβολή
Λογικός Προγραμματισμός
(7.021) - Μπατσάκης Σωτήριος
Περιγραφή Μαθήματος
Το μάθημα του Λογικού προγραμματισμού στοχεύει να δώσει στους φοιτητές τις απαραίτητες θεωρητικές και πρακτικές γνώσεις στην υπολογιστική λογική. Η υπολογιστική λογική είναι βασική γνώση της πληροφορικής και προαπαιτούμενη γνώση σε αντικείμενα όπως η τεχνητή νοημοσύνη, ο σημασιολογικός ιστός και οι βάσεις δεδομένων. Αυτό το μάθημα βάζει τις θεωρητικές και πρακτικές βάσεις για τη χρήση της λογικής ως προσέγγιση για αναπαράσταση γνώσης και για συλλογισμούς. Ο φοιτητής μαθαίνει πως από τη λογική πήγαμε στο λογικό προγραμματισμό. Εκπαιδεύεται στο συμβολικό και στο δηλωτικό προγραμματισμό. Μαθαίνει πώς να υλοποιεί σε λογική υπολογιστικά συστήματα σε διάφορα πεδία. Η λογική βρίσκεται στη βάση της Τεχνητής Νοημοσύνης και αυτό το μάθημα βάζει τα θεμέλια για τη διδασκαλία του μαθήματος της Τεχνητής Νοημοσύνης.
Ημερομηνία δημιουργίας
Δευτέρα 6 Οκτωβρίου 2014
-
Περιεχόμενο μαθήματος
Ενότητες Θεωρητικών Διαλέξεων
- Τύποι και η αλήθειά τους.
- Λογικές ισοδυναμίες και μετασχηματισμοί τύπων σε κανονικές μορφές στο προτασιακό λογισμό.
- Σημασιολογική συνέπεια και εξαγωγή συμπερασμάτων.
- Η επίλυση (Resolution) στο προτασιακό λογισμό.
- Συντακτικά συστατικά του κατηγορηματικού λογισμού.
- Ερμηνείες προτάσεων, σημασιολογική συνέπεια.
- Λογικές ισοδυναμίες, μετασχηματισμοί τύπων σε κανονικές μορφές.
- Εξαγωγή συμπερασμάτων στο κατηγορηματικό λογισμό.
- Αντικατάσταση.
- Ενοποίηση (Unification).
- Η επίλυση στον κατηγορηματικό λογισμό. SLD-Επίλυση και SLD δέντρα.
- Οριστικά (Definite) λογικά προγράμματα.
- Άρνηση στο λογικό προγραμματισμό.
- Κανονικά λογικά προγράμματα (Normal logic programs).
- Γενικά λογικά προγράμματα.
- Προγραμματισμός σε Prolog: Βασικά συστατικά ενός προγράμματος Prolog.
- Ενοποίηση, Ισότητα.
- Κατηγορήματα εισόδου και εξόδου.
- Αναδρομή.
- Λίστες.
- Αριθμητική σε Prolog.
- Τρόπος κλήσης (call mode) κατηγορήματος.
- Τεχνικές κατασκευής αναδρομικών προγραμμάτων: Κατασκευή δομής στη κεφαλή και στο σώμα προτάσεων.
- Δέντρο αναζήτησης, οπισθοδρόμηση και Αποκοπή ( ! ).
- Άρνηση σε Prolog.
- Έλεγχος ροής σε προγράμματα Prolog.
- Τελεστές οριζόμενοι από τον χρήστη.
- Ενσωματωμένα κατηγορήματα: (Είσοδος από αρχείο και έξοδος σε αρχείο. Μετα-λογικά κατηγορήματα. Κατηγορήματα που συλλέγουν όλες τις λύσεις ενός στόχου. Κατηγορήματα τροποποίησης του προγράμματος. Άλλα ενσωματωμένα κατηγορήματα.).
- Δομές Δεδομένων σε Prolog.
- Προγραμματιστικές τεχνικές.
- Εφαρμογές του Λογικού Προγραμματισμού.
Εργαστηριακές Ασκήσεις
Οι εργαστηριακές ασκήσεις θα αντιστοιχούν στις ενότητες των θεωρητικών διαλέξεων. Θα αφορούν ασκήσεις η υλοποίηση των οποίων θα γίνεται σε Prolog.
Μαθησιακοί στόχοι
Με την επιτυχή ολοκλήρωση του μαθήματος ο φοιτητής/τρια θα αποκτήσει τις παρακάτω επιστημονικές γνώσεις, δεξιότητες και ικανότητες κατάλληλου επιπέδου.
- Κατανόηση σε βάθος των βασικών αρχών της Υπολογιστικής Λογικής.
- Εκμάθηση του Λογικού προγραμματισμού και των εφαρμογών του.
- Να κατέχει τις εξειδικευμένες δεξιότητες που αφορούν τη χρήση της λογικής ως γλώσσας προγραμματισμού.
- Εκμάθηση της γλώσσας προγραμματισμού Prolog.
- Απόκτηση της ικανότητας αναπαράστασης προβλημάτων στη λογική και επίλυσης τους.
- Να κατέχει εξειδικευμένες δεξιότητες για ανάπτυξη εφαρμογών ακολουθώντας την προσέγγιση του Λογικού Προγραμματισμού.
- Απόκτηση ικανότητας προγραμματισμού σε Prolog για την επίλυση σύνθετων προβλημάτων.
Βιβλιογραφία
-Προτεινόμενη Βιβλιογραφία :
Ελληνική
- Μ. Μαρακάκης, Prolog: Προγραμματισμός σε Λογική για Τεχνητή Νοημοσύνη, Εκδόσεις Νέων Τεχνολογιών, 2η έκδοση 2019, ISBN: 978-960-578-055-5. Κωδικός Βιβλίου στον Εύδοξο: 86200975.
- Η. Σακελλαρίου, Ν. Βασιλειάδης, Π. Κεφαλάς, Δ. Σταμάτης, Τεχνικές Λογικού Προγραμματισμού – Η Γλώσσα Prolog, Ελληνικά Ακαδημαϊκά Συγγράμματα και Βοηθήματα, www.kallipos.gr, ISBN: 978-960-603-246-2, Σύνδεσμος Ελληνικών Ακαδημαϊκών Βιβλιοθηκών ( ΣΕΑΒ), 2015.
- Γ. Μητακίδης, Από τη Λογική στο Λογικό Προγραμματισμό και την Prolog, εκδόσεις Καρδαμίτσα, 1992, ISBN: 960-7262-59-X.
Αγγλική
- Nilsson and J. Maluszynski, Logic, Programming and Prolog, Second edition, John Wiley & Sons, 1995, ISBN: 0 471 95996 0.
- Ι. Bratko, Prolog Programming for Artificial Intelligence, Pearson Education Canada, 4th edition, 2011, ISBN 13: 9780321417466.
-Συναφή επιστημονικά περιοδικά:
- Theory and Practice of Logic Programming, Cambridge University Press.
- ACM Transactions on Computational Logic, ACM.
- New generation computing, Springer.
Μέθοδοι αξιολόγησης
Βαθμολογία μαθήματος
Βαθμός θεωρίας 70% τελικού βαθμού και βαθμός εργαστηρίου 30% τελικού βαθμού.
Βαθμολογία θεωρίας
-Πρόοδος (προαιρετική): 30%
-Τελικό διαγώνισμα 70% (με πρόοδο) ή 100% (χωρίς πρόοδο)
Βαθμολογία εργαστηρίου
-Εργασίες 50% του τελικού βαθμού.
-Τελικό διαγώνισμα εργαστηρίου 50% του τελικού βαθμού.
Σημείωση: Για να περάσει το εργαστήριο ο φοιτητής θα πρέπει να έχει περάσει τις
εργασίες και το τελικό διαγώνισμα.