Συστήματα Γνώσης. Πρακτικό Κομμάτι Μαθήματος Πρόγραμμα Πέτρα Ψαλίδι - Χαρτί. Νίκος Βασιλειάδης, Αναπλ. Καθηγητής Τμήμα Πληροφορικής

Σχετικά έγγραφα
Συστήματα Γνώσης. Πρακτικό Κομμάτι Μαθήματος Πρόγραμμα Στοιβάσματος Κιβωτίων. Νίκος Βασιλειάδης, Αναπλ. Καθηγητής Τμήμα Πληροφορικής

Συστήματα Γνώσης. Πρακτικό Κομμάτι Μαθήματος Πρότυπα Γεγονότων. Νίκος Βασιλειάδης, Αναπλ. Καθηγητής Τμήμα Πληροφορικής

Συστήματα Γνώσης. Πρακτικό Κομμάτι Μαθήματος Προτεραιότητα Κανόνων και Στρατηγικές Επίλυσης Συγκρούσεων

Συστήματα Γνώσης. Πρακτικό Κομμάτι Μαθήματος Πρόγραμμα Διάγνωσης Βλάβης βασισμένης σε Μοντέλο. Νίκος Βασιλειάδης, Αναπλ. Καθηγητής Τμήμα Πληροφορικής

Συστήματα Γνώσης. Πρακτικό Κομμάτι Μαθήματος Εναλλακτικό Παράδειγμα Επιλογής Δώρου. Νίκος Βασιλειάδης, Αναπλ. Καθηγητής Τμήμα Πληροφορικής

Συστήματα Γνώσης. Πρακτικό Κομμάτι Μαθήματος Πρόγραμμα Κίνησης Robot. Νίκος Βασιλειάδης, Αναπλ. Καθηγητής Τμήμα Πληροφορικής

Συστήματα Γνώσης. Πρακτικό Κομμάτι Μαθήματος Πρόγραμμα Διαχείρισης καταστάσεων ανάγκης σε συγκρότημα κτηρίων

Συστήματα Γνώσης. Πρακτικό Κομμάτι Μαθήματος Περιορισμοί στις Συνθήκες Κανόνων. Νίκος Βασιλειάδης, Αναπλ. Καθηγητής Τμήμα Πληροφορικής

Συστήματα Γνώσης. Πρακτικό Κομμάτι Μαθήματος Το Σύστημα Κανόνων CLIPS. Νίκος Βασιλειάδης, Αναπλ. Καθηγητής Τμήμα Πληροφορικής

Συστήματα Γνώσης. Πρακτικό Κομμάτι Μαθήματος Συναρτήσεις στο CLIPS. Νίκος Βασιλειάδης, Αναπλ. Καθηγητής Τμήμα Πληροφορικής

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Συστήματα Αυτομάτου Ελέγχου. Ενότητα Α: Γραμμικά Συστήματα

ΒΟΗΘΗΤΙΚΕΣ ΣΗΜΕΙΩΣΕΙΣ

Ηλεκτρονικοί Υπολογιστές IV

Εισαγωγή στην Πληροφορική & τον Προγραμματισμό

Εκκλησιαστικό Δίκαιο. Ενότητα 10η: Ιερά Σύνοδος της Ιεραρχίας και Διαρκής Ιερά Σύνοδος Κυριάκος Κυριαζόπουλος Τμήμα Νομικής Α.Π.Θ.

Εφαρμογές Συστημάτων Γεωγραφικών Πληροφοριών

Εισαγωγή στην Πληροφορική & τον Προγραμματισμό

Λογιστικές Εφαρμογές Εργαστήριο

Ιστορία της μετάφρασης

Υπολογιστικά Συστήματα

Γενικά Μαθηματικά Ι. Ενότητα 15: Ολοκληρώματα Με Ρητές Και Τριγωνομετρικές Συναρτήσεις Λουκάς Βλάχος Τμήμα Φυσικής

Εισαγωγή στους Υπολογιστές

Θεωρία Πιθανοτήτων & Στατιστική

Αυτοματοποιημένη χαρτογραφία

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Προγραμματισμός Η/Υ

Εφαρμογές Συστημάτων Γεωγραφικών Πληροφοριών

Θεσμοί Ευρωπαϊκών Λαών Ι 19 ος -20 ος αιώνας

Εισαγωγή στον Προγραμματισμό Η/Υ (Fortran 90/95/2003)

Το πρόβλημα: Πρόβλεψη επιτυχίας σε εξετάσεις

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

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

Προγραμματισμός και Εφαρμογές Υπολογιστών

Εκκλησιαστικό Δίκαιο

Γενικά Μαθηματικά Ι. Ενότητα 12: Κριτήρια Σύγκλισης Σειρών. Λουκάς Βλάχος Τμήμα Φυσικής ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

ΘΕΩΡΙΑ ΠΑΙΓΝΙΩΝ. Ενότητα 9: Απείρως επαναλαμβανόμενα παίγνια. Ρεφανίδης Ιωάννης Τμήμα Εφαρμοσμένης Πληροφορικής

ΑΣΦΑΛΕΙΑ & ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ(Θ)

Θεσμοί Ευρωπαϊκών Λαών Ι 19 ος -20 ος αιώνας

Εργαστήριο Χημείας Ενώσεων Συναρμογής

Πληροφορική ΙΙ Θεματική Ενότητα 5

Προγραμματισμός Ηλεκτρονικών Υπολογιστών 1

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι. Ενότητα 7α: SQL (NULL, Διαίρεση) Ευαγγελίδης Γεώργιος. Τμήμα Εφαρμοσμένης Πληροφορικής ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι

Υπολογιστικά Συστήματα

Εκκλησιαστικό Δίκαιο

Πληροφοριακά Συστήματα & Περιβάλλον Ασκήσεις

Θεωρία Πιθανοτήτων & Στατιστική

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Μικροβιολογία & Υγιεινή Τροφίμων

Εισαγωγή στην πληροφορική

Λογισμός 3. Ενότητα 19: Θεώρημα Πεπλεγμένων (γενική μορφή) Μιχ. Γ. Μαριάς Τμήμα Μαθηματικών ΑΝΟΙΚΤΑ ΑΚΑ ΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

Ψηφιακή Οικονομία. Διάλεξη 11η: Markets and Strategic Interaction in Networks Mαρίνα Μπιτσάκη Τμήμα Επιστήμης Υπολογιστών

Προέλευση της Pazcal ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ. Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

Οικονομία των ΜΜΕ. Ενότητα 7: Μορφές αγοράς και συγκέντρωση των ΜΜΕ

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

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

ΜΑΘΗΜΑ: ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ(Visual Basic)

Ψηφιακή Τεχνολογία σε Ακαδημαϊκό Περιβάλλον

ΜΑΘΗΜΑ: Ηλεκτρονικά Ισχύος

ΔΙΔΑΚΤΙΚΗ ΤΗΣ ΚΑΛΑΘΟΣΦΑΙΡΙΣΗΣ ΙΙ

ΔΙΔΑΚΤΙΚΗ ΤΗΣ ΚΑΛΑΘΟΣΦΑΙΡΙΣΗΣ ΙΙ

ΜΑΘΗΜΑΤΙΚΑ ΓΙΑ ΟΙΚΟΝΟΜΟΛΟΓΟΥΣ

3 η ΕΝΟΤΗΤΑ Συναρτήσεις στο MATLAB

Περιεχόμενα ΜΤ Τυχαίας Προσπέλασης Θεωρία Υπολογισμού Ενότητα 23: Μηχανές Turing Τυχαίας Προσπέλασης Επ. Καθ. Π. Κατσαρός Τμήμα Πληροφορικής Επ. Καθ.

Γενικά Μαθηματικά Ι. Ενότητα 14: Ολοκλήρωση Κατά Παράγοντες, Ολοκλήρωση Ρητών Συναρτήσεων Λουκάς Βλάχος Τμήμα Φυσικής

Ηλεκτρονικοί Υπολογιστές I

Εργαστήριο Χημείας Ενώσεων Συναρμογής

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

Διπλωματική Ιστορία Ενότητα 2η:

Θεωρία Πιθανοτήτων & Στατιστική

Μάρκετινγκ Αγροτικών Προϊόντων

Προγραμματισμός H/Y Ενότητα 2: Εντολές ελέγχου ροής. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Εισαγωγή στο κέλυφος ανάπτυξης έµπειρων συστηµάτων του CLIPS

Ιστορία της μετάφρασης

Διδακτική Μεθοδολογία του μαθήματος της Ιστορίας στη δευτεροβάθμια εκπαίδευση (με εφαρμογές)

Διαφωτισμός και διαμόρφωση των πολιτικών ιδεολογιών στην Ελλάδα

Προγραμματισμός Η/Υ. Βασικές Προγραμματιστικές Δομές. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

Εισαγωγή στο Συγκριτικό Δίκαιο

ΜΑΘΗΜΑ: ΗΛΕΚΤΡΟΤΕΧΝΙΑ-ΗΛΕΚΤΡΟΝΙΚΗ ΕΡΓΑΣΤΗΡΙΟ

Εισαγωγή στους Αλγορίθμους

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

Υδραυλικά & Πνευματικά ΣΑΕ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα ΕΠΕΞΕΡΓΑΣΙΑ ΕΙΚΟΝΑΣ. Ενότητα 3: Αποκατάσταση Εικόνας.

ΘΕΩΡΙΑ ΥΠΟΛΟΓΙΣΜΩΝ ΚΑΙ ΑΥΤΟΜΑΤΩΝ

Θεσμοί Ευρωπαϊκών Λαών Ι 19 ος -20 ος αιώνας

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

ΔΙΔΑΚΤΙΚΗ ΤΗΣ ΚΑΛΑΘΟΣΦΑΙΡΙΣΗΣ Ι

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική

Αλγόριθμοι και Δομές Δεδομένων(Θ) Ευάγγελος Γ. Ούτσιος

Μηχανολογικό Σχέδιο Ι

Εκκλησιαστικό Δίκαιο

Γενικά Μαθηματικά Ι. Ενότητα 13: Ακτίνα Σύγκλισης, Αριθμητική Ολοκλήρωση, Ολοκλήρωση Κατά Παράγοντες. Λουκάς Βλάχος Τμήμα Φυσικής

Εισαγωγή στη διδακτική των γλωσσών Ασκήσεις

ΣΤΑΤΙΣΤΙΚΗ ΑΝΑΛΥΣΗ ΜΕ ΧΡΗΣΗ Η/Υ

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

ΔΙΔΑΚΤΙΚΗ ΤΗΣ ΚΑΛΑΘΟΣΦΑΙΡΙΣΗΣ ΙΙ

Εισαγωγή στους Αλγορίθμους

Σχεδίαση με Ηλεκτρονικούς Υπολογιστές

Γενικά Μαθηματικά Ι. Ενότητα 8: Εφαρμογές Σειρών Taylor. Λουκάς Βλάχος Τμήμα Φυσικής ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

Transcript:

ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Πρακτικό Κομμάτι Μαθήματος Πρόγραμμα Πέτρα Ψαλίδι - Χαρτί Νίκος Βασιλειάδης, Αναπλ. Καθηγητής

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου άδειας χρήσης, η άδεια χρήσης αναφέρεται ρητώς. 2

Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο» έχει χρηματοδοτήσει μόνο τη αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους. 3

ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Πρόγραμμα Πέτρα Ψαλίδι - Χαρτί

Πέτρα Ψαλίδι - Χαρτί Παιδικό παιχνίδι Παίζουν δύο παίκτες (άνθρωπος vs. CLIPS) οι οποίοι προτείνουν (εκφωνούν) μία από τις λέξεις «πέτρα ψαλίδι - χαρτί» Βαθμολογία: Κάθε φορά που ο ένας παίκτης εκφωνεί μία λέξη που «κερδίζει» την άλλη παίρνει ένα βαθμό Η Πέτρα στομώνει το Ψαλίδι. Το Χαρτί τυλίγει την Πέτρα. Το Ψαλίδι κόβει το Χαρτί. Όταν οι 2 παίκτες εκφωνούν την ίδια λέξη είναι ισοπαλία (δεν παίρνει βαθμό κανένας) 5

Πρότυπα Γεγονότων (deftemplate win-totals (slot human (type INTEGER)(default 0)) (slot computer (type INTEGER)(default 0)) (slot ties (type INTEGER) (default 0))) (deftemplate results (slot winner (type SYMBOL) (allowed-symbols rock paper scissors)) (slot loser (type SYMBOL) (allowed-symbols rock paper scissors)) (slot why (type STRING))) 6

Αρχικά Γεγονότα (deffacts information (results (winner rock) (loser scissors) (why "Rock smashes scissors")) (results (winner scissors) (loser paper) (why "Scissors cut paper")) (results (winner paper) (loser rock) (why "Paper covers rock")) (valid-answer rock r rock) (valid-answer paper p paper) (valid-answer scissors s scissors)) 7

Αρχικός Κανόνας (defrule startup (printout t "Lets play a game!" crlf crlf) (printout t "You choose rock, paper, or scissors," crlf) (printout t "and I'll do the same." crlf crlf) (printout t "Rock smashes scissors!" crlf) (printout t "Paper covers rock!" crlf) (printout t "Scissors cut paper!" crlf crlf) (set-strategy random) (assert (win-totals)) (assert (get-human-move))) 8

Κανόνες «Κίνησης» Ανθρώπου Εισαγωγή «κίνησης» (defrule get-human-move (get-human-move) (printout t "Rock (R), Paper (P), or Scissors (S)? ") (assert (human-choice (read)))) 9

Κανόνες «Κίνησης» Ανθρώπου Σωστή εισαγωγή «κίνησης» (defrule good-human-move?f1 <- (human-choice?choice) (valid-answer?answer $? =(lowcase?choice) $?)?f2 <- (get-human-move) (retract?f1?f2) (assert (human-choice?answer)) (assert (get-computer-move))) 10

Κανόνες «Κίνησης» Ανθρώπου Λανθασμένη εισαγωγή «κίνησης» (defrule bad-human-move?f1 <- (human-choice?choice) (not (valid-answer?answer $? =(lowcase?choice) $?))?f2 <- (get-human-move) (retract?f1?f2) (assert (get-human-move))) 11

Κανόνες «Κίνησης» Υπολογιστή Επιλογή «Πέτρας» (random strategy) (defrule computer-picks-rock?f1 <- (get-computer-move) (printout t "Computer chooses rock" crlf) (retract?f1) (assert (computer-choice rock)) (assert (determine-results))) 12

Κανόνες «Κίνησης» Υπολογιστή (defrule computer-picks-paper?f1 <- (get-computer-move) (printout t "Computer chooses paper" crlf) (retract?f1) (assert (computer-choice paper)) (assert (determine-results))) (defrule computer-picks-scissors?f1 <- (get-computer-move) (printout t "Computer chooses scissors" crlf) (retract?f1) (assert (computer-choice scissors)) (assert (determine-results))) 13

Κανόνες Ανάδειξης Νικητή (defrule computer-wins?f1 <- (determine-results)?f2 <- (computer-choice?cc)?f3 <- (human-choice?hc) (results (winner?cc) (loser?hc) (why?explanation))?w <- (win-totals (computer?cw)) (retract?f1?f2?f3) (modify?w (computer (+?cw 1))) (format t "%s%n"?explanation) (printout t "Computer wins!" t) (assert (determine-play-again))) 14

Κανόνες Ανάδειξης Νικητή (defrule human-wins?f1 <- (determine-results)?f2 <- (computer-choice?cc)?f3 <- (human-choice?hc) (results (winner?hc) (loser?cc) (why?explanation))?w <- (win-totals (human?hw)) (retract?f1?f2?f3) (modify?w (human (+?hw 1))) (format t "%s%n"?explanation) (printout t "You win!" t) (assert (determine-play-again))) 15

Κανόνες Ανάδειξης Νικητή (defrule tie?f1 <- (determine-results)?f2 <- (computer-choice?cc)?f3 <- (human-choice?cc)?w <- (win-totals (ties?nt)) (retract?f1?f2?f3) (modify?w (ties (+?nt 1))) (printout t "We tie." t) (assert (determine-play-again))) 16

Κανόνας Επανάληψης Παιχνιδιού (defrule play-again?f1 <- (determine-play-again) (win-totals (computer?ct) (human?ht) (ties?tt)) (retract?f1) (if (yes-or-no-p "Play again? ") then (assert (get-human-move)) else (printout t crlf "You won "?ht " game(s)." crlf) (printout t "Computer won "?ct " game(s)." crlf) (printout t "We tied "?tt " game(s)." crlf crlf) (halt))) 17

Συνάρτηση Ερώτησης (deffunction yes-or-no-p (?question) (bind?x bogus) (while (and (neq?x yes) (neq?x y) (neq?x no) (neq?x n)) (format t "%s(yes or No) "?question) (bind?x (lowcase (sym-cat (read))))) (if (or (eq?x yes) (eq?x y)) then TRUE else FALSE)) 18

ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Τέλος Ενότητας Επεξεργασία: Εμμανουήλ Ρήγας Θεσσαλονίκη, 17/3/2014