Αλγόριθμοι Αναζήτησης σε Παίγνια Δύο Αντιπάλων



Σχετικά έγγραφα
Κεφάλαιο 5. Αλγόριθµοι Αναζήτησης σε Παίγνια ύο Αντιπάλων. Τεχνητή Νοηµοσύνη - Β' Έκδοση

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

Επίλυση Προβλημάτων 1

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

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

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

Αλγόριθµοι Ευριστικής Αναζήτησης

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

Αλγόριθμοι Τυφλής Αναζήτησης

Chess Academy Free Lessons Ακαδημία Σκάκι Δωρεάν Μαθήματα. Οι κινήσεις των κομματιών Σκοπός της παρτίδας, το Ματ Πατ Επιμέλεια: Γιάννης Κατσίρης

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

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

Περιγραφή Προβλημάτων

Θεωρία Παιγνίων Δρ. Τασσόπουλος Ιωάννης

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

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

Πληροφοριακά Συστήματα Διοίκησης (ΜΒΑ) Ενότητα 8: Παίγνια πλήρους και ελλιπούς πληροφόρησης

Chess Academy Free Lessons Ακαδημία Σκάκι Δωρεάν Μαθήματα. Ματ με δύο βαριά κομμάτια Ματ με Βασίλισσα Επιμέλεια: Γιάννης Κατσίρης

ΑΣΚΗΣΕΙΣ ΓΙΑ ΤΟ ΕΡΓΑΣΤΗΡΙΟ 3

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

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

ΔΙΑΝΥΣΜΑΤΑ. Ακολουθίες. Στην ενότητα αυτή θα μάθουμε: Να ορίζουμε το διάνυσμα.

Θεωρία Λήψης Αποφάσεων

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

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

Ασκήσεις μελέτης της 4 ης διάλεξης. ), για οποιοδήποτε μονοπάτι n 1

Γιώργος Γκούμας. Τα πρώτα σκακιστικά βήματα του παιδιού

Αυτόνομοι Πράκτορες. Εργασία εξαμήνου. Μάθηση του παιχνιδιού British square με χρήση Temporal Difference(TD) Κωνσταντάκης Γιώργος

PROJECT ΣΤΟ ΜΑΘΗΜΑ ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΕΥΡΕΤΙΚΕΣ ΜΕΘΟ ΟΥΣ

Κεφ. 9 Ανάλυση αποφάσεων

Ε ανάληψη. Προβλήµατα ικανο οίησης εριορισµών. ορισµός και χαρακτηριστικά Ε ίλυση ροβληµάτων ικανο οίησης εριορισµών

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

Μαθαίνοντας σκάκι. Εγχειρίδιο για προπονητές. εύτερο βήμα

Τσάπελη Φανή ΑΜ: Ενισχυτική Μάθηση για το παιχνίδι dots. Τελική Αναφορά

Κεφάλαιο 29 Θεωρία παιγνίων

PROJECT ΣΤΟ ΜΑΘΗΜΑ "ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΕΥΡΕΤΙΚΕΣ ΜΕΘΟΔΟΥΣ"

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ - ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ Θεωρία Παιγνίων και Αποφάσεων Διδάσκων: Ε. Μαρκάκης, Εαρινό εξάμηνο 2015

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ. Τελικές εξετάσεις Παρασκευή 4 Ιουλίου 2014, 18:00-21:00

Θεωρήστε ένα puzzle (παιχνίδι σπαζοκεφαλιάς) με την ακόλουθη αρχική διαμόρφωση : b b b w w w e

ΑΥΤΟΝΟΜΟΙ ΠΡΑΚΤΟΡΕΣ. ΑΝΑΦΟΡΑ ΕΡΓΑΣΙΑΣ Othello-TD Learning. Βόλτσης Βαγγέλης Α.Μ

Μαθηματικά των Υπολογιστών και των Αποφάσεων Τεχνητή Νοημοσύνη 1η Σειρά Ασκήσεων

EMOJITO! 7 Δίσκοι Ψηφοφορίας. 100 Κάρτες Συναισθημάτων. 1 Ταμπλό. 7 Πιόνια παικτών. 2-7 Παίκτες

Επίλυση προβλημάτων με αναζήτηση

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

Θέματα Υπολογισμού στον Πολιτισμό - Δένδρα. Δένδρα

Μαθαίνοντας σκάκι. Εγχειρίδιο για προπονητές. Τρίτο βήμα

Θέμα 1: Robbie και Αναζήτηση

ΘΕΩΡΙΑ ΤΩΝ ΠΑΙΓΝΙΩΝ I.

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

ΗΥ 252 Αντικειμενοστρεφής Προγραμματισμός Προγραμματιστική Εργασία Χειμερινού Εξαμήνου Σκάκι

Συστηματική Αναζήτηση και Ενισχυτική Μάθηση για το Επιτραπέζιο Παιχνίδι Backgammon

ΚΥΠΡΙΑΚΗ ΜΑΘΗΜΑΤΙΚΗ ΕΤΑΙΡΕΙΑ. Ημερομηνία: 29/04/2017 Ώρα εξέτασης: 10:00-14:30

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

ΕΠΙΧΕΙΡΗΣΙΑΚΑ ΠΑΙΓΝΙΑ ΕΡΓΑΣΤΗΡΙΟ ΜΑΘΗΜΑ ΕΥΤΕΡΟ- ΚΥΡΙΑΡΧΟΥΜΕΝΗ ΣΤΡΑΤΗΓΙΚΗ- PRISONER S DILLEMA ΑΚΑ ΗΜΑΙΚΟ ΕΤΟΣ


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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΙΑΤΜΗΜΑΤΙΚΟ ΠΜΣ «ΜΑΘΗΜΑΤΙΚΑ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ & ΤΩΝ ΑΠΟΦΑΣΕΩΝ ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ η Σειρά Ασκήσεων ΑΠΑΝΤΗΣΕΙΣ

Περιεχόμενα του Παιχνιδιού

ΘΕΩΡΙΑ ΠΑΙΓΝΙΩΝ. Βfi 1 2 Αfl 1 1, 2 0, 1 2 2, 1 1, 0

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

Εργαστήριο Επεξεργασίας Πληροφορίας και Υπολογισμών Τομέας Ηλεκτρονικής και Υπολογιστών. ΤΗΜΜΥ Α.Π.Θ Πέμπτη 11 / 12 / 2014 ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ

Προγραμματισμός Ι (ΗΥ120)

Κεφάλαιο 2. Περιγραφή Προβληµάτων και Αναζήτηση Λύσης. Τεχνητή Νοηµοσύνη - Β' Έκδοση

Επίλυση Προβλημάτων. Αποτελεί ένα από τα βασικά χαρακτηριστικά γνωρίσματα της νοημοσύνης.

Δένδρα Αναζήτησης Πολλαπλής Διακλάδωσης

1.2 Κομμάτια Μικρής Εμβέλειας Το άλογο

Επίλυση Προβλημάτων 1

ΕΠΙΧΕΙΡΗΣΙΑΚΑ ΠΑΙΓΝΙΑ ΕΡΓΑΣΤΗΡΙΟ ΜΑΘΗΜΑ ΠΕΜΠΤΟ ΥΝΑΜΙΚΑ ΠΑΙΓΝΙΑ ΠΛΗΡΟΥΣ ΠΛΗΡΟΦΟΡΗΣΗΣ ΑΚΑ ΗΜΑΙΚΟ ΕΤΟΣ

Χρήστος Ι. Σχοινάς Αν. Καθηγητής ΔΠΘ. Συμπληρωματικές σημειώσεις για το μάθημα: «Επιχειρησιακή Έρευνα ΙΙ»

ΟΔΗΓΙΕΣ. Λίγα λόγια παίκτες Διάρκεια 30 Για ηλικίες 10+

Ε Π Ι Χ Ε Ι Ρ Η Σ Ι Α Κ Η Ε Ρ Ε Υ Ν Α

Μικτές Στρατηγικές σε Παίγνια και σημεία Ισορροπίας Nash. Τµήµα Μηχανικών Πληροφορικής και Υπολογιστών 1

Θεωρία Παιγνίων και Αποφάσεων. Ενότητα 5: Εύρεση σημείων ισορροπίας σε παίγνια μηδενικού αθροίσματος. Ε. Μαρκάκης. Επικ. Καθηγητής

Σκοπός του παιχνιδιού Σκοπός του παιχνιδιού είναι να τοποθετήσει πρώτος ο παίκτης όλα τα πλακίδιά του στο τραπέζι.

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

Γνωριμία με τον Εξοπλισμό

Προγραμματισμός Ι (ΗΥ120)

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

Αλγόριθμοι και Δομές Δεδομένων (IΙ) (γράφοι και δένδρα)

Αναζήτηση με Αντιπαλότητα

20 Αρχιτέκτονες. 1 Πολεοδόμος. 65 Κάτοικοι (μπλε Πιόνια)

10/3/17. Μικροοικονομική. Κεφάλαιο 29 Θεωρία παιγνίων. Μια σύγχρονη προσέγγιση. Εφαρµογές της θεωρίας παιγνίων. Τι είναι τα παίγνια;

Δραστηριότητα: Εγκλεισμός

Αναζήτηση με αντιπαλότητα (Adversarial Search)

Διάλεξη 18: B-Δένδρα

Διδάσκων: Κωνσταντίνος Κώστα

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ

Άσκηση 2: Λαβύρινθοι και ρομπότ Α. (Σχεδιασμός χώρου καταστάσεων) Ενδεικτική επίλυση

ΠΡΟΔΙΑΓΡΑΦΕΣ. Η προπαίδεια είναι παιχνίδι! Εκπαιδευτικό Παιχνίδι Μαθητές Δημοτικού Έτος Κυκλοφορίας 2017 Τιμή πλήρους έκδοσης 0.99 Λογισμικό.

Ισορροπημένα Δένδρα. για κάθε λειτουργία; Ισορροπημένο δένδρο : Διατηρεί ύψος κάθε εισαγωγή ή διαγραφή

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

Δομές Δεδομένων. Ενότητα 13: B-Δέντρα/AVL-Δέντρα. Καθηγήτρια Μαρία Σατρατζέμη. Τμήμα Εφαρμοσμένης Πληροφορικής. Δομές Δεδομένων

Extensive Games with Imperfect Information

Περιεχόμενα του Παιχνιδιού

Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων

Θεωρία Παιγνίων και Αποφάσεων. Ενότητα 4: Μεικτές Στρατηγικές. Ε. Μαρκάκης. Επικ. Καθηγητής

40 πιόνια 10 x κόκκινο, πορτοκαλί, μαύρο, μπλε. 7 ελέφαντες 3 λιοντάρια 6 κανονικοί 1 σούπερ κροκόδειλοι κροκόδειλος

Ε ανάληψη. Παιχνίδια παιχνίδια ως αναζήτηση. Βέλτιστες στρατηγικές στρατηγική minimax. Βελτιώσεις κλάδεµα α-β

Κεφάλαιο 9 ο Κ 5, 4 4, 5 0, 0 0,0 5, 4 4, 5. Όπως βλέπουµε το παίγνιο δεν έχει καµιά ισορροπία κατά Nash σε αµιγείς στρατηγικές διότι: (ΙΙ) Α Κ

Αλγόριθμοι και πολυπλοκότητα: 4 η σειρά ασκήσεων ΣΗΜΜΥ - Ε.Μ.Π.

Transcript:

Τεχνητή Νοημοσύνη 06 Αλγόριθμοι Αναζήτησης σε Παίγνια Δύο Αντιπάλων Εισαγωγικά (1/3) Τα προβλήματα όπου η εξέλιξη των καταστάσεων εξαρτάται από δύο διαφορετικά σύνολα τελεστών μετάβασης που εφαρμόζονται εναλλάξ, αναφέρονται και ως ανταγωνιστικά παίγνια ή παίγνια δύο αντιπάλων (adversary ή two-person games) όρος "παίγνιο" αφορά την περιγραφή του τρόπου με τον οποίο παίζεται το παιχνίδι και περιλαμβάνει: τα αντικείμενα που υπάρχουν (για παράδειγμα, τα πούλια, το ταμπλό, κτλ.) καθώς και το σύνολο των κανόνων που το διέπουν. Αντίθετα, με τον όρο "παιχνίδι" χαρακτηρίζεται μία συγκεκριμένη παρτίδα του παιγνίου. Φώτης Κόκκορας Τμ.Τεχν/γίας Πληροφορικής & Τηλ/νιών - ΤΕΙ Λάρισας Φώτης Κόκκορας 2 Εισαγωγικά (2/3) Το πρόβλημα ορίζεται ως εξής: Μια κατάσταση παριστάνει τη διάταξη των πιονιών σε κάποια χρονική στιγμή. χώρος καταστάσεων αποτελείται από όλες αυτές τις πιθανές επιτρεπτές καταστάσεις. ι τελεστές μετάβασης είναι οι επιτρεπτές κινήσεις (κανόνες του παιχνιδιού). ι τελικές καταστάσεις έχουν γνωστά χαρακτηριστικά (π.χ. ματ στο σκάκι). Έστω ότι είναι η σειρά κάποιου να κάνει μία κίνηση. Αν θέλει να κερδίσει, θα επιδιώξει να κάνει την καλύτερη κίνηση για αυτόν, η οποία αντίστοιχα θα είναι και η χειρότερη για τον αντίπαλο. τρόπος που σκέφτεται είναι ο εξής: "Αν κάνω αυτή την κίνηση, τότε ο αντίπαλος θα κάνει εκείνη, αν όμως κάνω την άλλη κίνηση, τότε θα κάνει αυτήν,..." κ.ο.κ. συλλογισμός αυτός αντιστοιχεί στη δημιουργία ενός δένδρου (δένδρο του παιχνιδιού - game tree). Φώτης Κόκκορας 3 Εισαγωγικά (3/3) ι κινήσεις δύο διαδοχικών επιπέδων ανήκουν σε διαφορετικό παίκτη, γιατί οι παίκτες παίζουν εναλλάξ. Έστω ότι ένας από τους δύο αντιπάλους είναι ο υπολογιστής. Το πρόγραμμα αναζήτησης πρέπει να Δέντρο Αναζήτησης σε Παίγνιο 2 Αντιπάλων εξετάσει όλες τις πιθανές κινήσεις που παράγονται από μία (αρχική) κατάσταση. Ένα τέτοιο πρόγραμμα μπορεί να "δει" πλήρως μέχρι και 10 κινήσεις εμπρός, ο μέσος άνθρωπος 2 ή 3 ενώ ένας καλός σκακιστής λίγο παραπάνω. Παραδόξως, οι διαφορές αυτές επί πολλά χρόνια δεν αρκούσαν για να κάνουν ένα καλό πρόγραμμα καλύτερο σκακιστή από τον άνθρωπο. Συνέβη βέβαια το 07. Η ανωτερότητα των ανθρώπων-παικτών οφειλόταν στους εξής παράγοντες: ι άνθρωποι επιλέγουν με κάποιον ευριστικό τρόπο τις εναλλακτικές κινήσεις. ι άνθρωποι διαθέτουν κάποια διαίσθηση για την κατάληξη του παιχνιδιού. Με την εμπειρία που αποκτούν, μπορούν να σκέφτονται πολλές φορές εντελώς μηχανικά, ιδίως στα πρώτα και τελευταία στάδια του παιχνιδιού ("ανοίγματα", "τελειώματα"). το ίδιο βέβαια κάνουν πλέον και οι Η/Υ Φώτης Κόκκορας 4 παίχτης 1 παίχτης 2 παίχτης 1 παίχτης 2

Αλγόριθμος i (1/3) Δεδομένης μίας κατάστασης του παιχνιδιού, ο αλγόριθμος αναζήτησης ελαχίστου - μεγίστου (i-) καλείται να αποφασίσει ποια θα είναι η επόμενη κίνησή του, έναντι του αντιπάλου. ο αλγόριθμος ζητάει την καλύτερη από τις επιτρεπτές κινήσεις το πόσο καλή είναι προκύπτει κοιτώντας "μερικές" κινήσεις στο μέλλον Η εξαντλητική αναζήτηση των δένδρων αναζήτησης είναι ανέφικτη. Δεν είναι εφικτό να δει ο αλγόριθμος πολλές κινήσεις μπροστά το δένδρο αναζήτησης γίνεται ασύλληπτα μεγάλο! Το ζητούμενο είναι: να χτιστεί το δένδρο μέχρι κάποιο βάθος, να βρεθεί μια "καλή" κατάσταση (εξέλιξη της παρτίδας) σε αυτό το βάθος που εγγυημένα, (ακόμη κι αν ο αντίπαλος παίξει τέλεια) σε χειρότερή της δεν θα βρεθούμε. Το πόσο καλή είναι μια κατάσταση δίνεται από μία συνάρτηση αξιολόγησης (evaluation function) που εφαρμόζεται στα φύλλα του δένδρου του παιχνιδιού. ένας παίκτης (πρόγραμμα ή άνθρωπος) ονομάζεται και ο άλλος (άλλο πρόγραμμα ή άνθρωπος) ονομάζεται. Για απλότητα, αυτός που παίζει είναι πάντα ο (γιατί θέλει να κερδίσει)! Φώτης Κόκκορας Αλγόριθμος i Ψευδογλώσσα 0. Ανέπτυξε το δένδρο αναζήτησης σε βάθος ανάλογα με τη δυνατότητα που υπάρχει και ονόμασε εναλλάξ τα επίπεδα και, ξεκινώντας από τη ρίζα που είναι (γιατί αυτός που παίζει θέλει να μεγιστοποιήσει το όφελός του). 1. Εφάρμοσε τη συνάρτηση αξιολόγησης σε όλους τους κόμβους-φύλλα του δένδρου. 2. Έως ότου η ρίζα του δένδρου αποκτήσει τιμή, επανέλαβε: 3. Αρχίζοντας από τα φύλλα του δένδρου και προχωρώντας προς τη ρίζα, μετέφερε τις τιμές προς τους ενδιάμεσους κόμβους του δένδρου ως εξής: i. Η τιμή κάθε κόμβου σε επίπεδο είναι η μέγιστη (imum) των τιμών των κόμβων-παιδιών του. ii. Η τιμή κάθε κόμβου σε επίπεδο είναι η ελάχιστη (imum) των τιμών των κόμβων-παιδιών του. 4. Καλύτερη κίνηση είναι η κίνηση που οδηγεί στον κόμβο που έδωσε την πιο συμφέρουσα τιμή στη ρίζα ΠΡΣΗ: η υλοποίηση του αλγορίθμου είναι αρκετά διαφορετική καθώς το δένδρο αναπτύσσεται με DFS τρόπο και η ανάπτυξη μαζί με τις επιμέρους λειτουργίες (αξιολόγηση καταστάσεων-φύλλα) γίνονται ταυτόχρονα. Φώτης Κόκκορας 6 Αλγόριθμος i (2/3) Σχόλια Αξιολόγηση τερματικών καταστάσεων Αλγόριθμος i (3/3) αλγόριθμος εγγυάται την πιο συμφέρουσα εξέλιξη μετά από κάποιες κινήσεις, έστω και αν ο αντίπαλος διαλέγει τις καλύτερες για αυτόν κινήσεις. Κατά σύμβαση, ο παίκτης που έχει σειρά να παίξει βρίσκεται στη ρίζα και θεωρείται πως είναι ο (αφού θέλει να κερδίσει!). ι καταστάσεις-φύλλα ονομάζονται τερματικές καταστάσεις, όμως δεν είναι απαραίτητα τελικές καταστάσεις. Συνήθως έχουμε σταματήσει την ανάπτυξη του δένδρου για υπολογιστικούς λόγους (αδυναμία χειρισμού περισσοτέρων καταστάσεων λόγω μνήμης ή χρόνου). ι τιμές των τερματικών καταστάσεων υπολογίζονται από τη συνάρτηση αξιολόγησης ενώ οι άλλες προκύπτουν από τη διάδοση αυτών. Φώτης Κόκκορας 7 00-9 9 18-3 -7 για τον για τον για τον Απόφαση για την καλύτερη κίνηση 2 9 2 2 00-9 2 00-9 9 18 9 2 00-9 9 18 9 18 9-3 -7-3 -7-3 -7 (-7, ) (, ) (2,, ) Από τις 3 κινήσεις που μπορεί να γίνουν, ο αλγόριθμος προτείνει τη μεσαία γιατί σε βάθος 3 αυτό είναι το () που μπορεί εγγυημένα να μας εξασφαλίσει, θεωρώντας ότι ο αντίπαλος παίζει τέλεια. Αν παίξουμε την αριστερή ή την δεξιά κίνηση, στη χειρότερη θα βρεθούμε σε κατάσταση κόστους 00 ή -7 αντίστοιχα, τα οποία είναι χειρότερα από το. Φώτης Κόκκορας 8

Αλγόριθμος i στην Τρίλιζα (1/2) Η τρίλιζα έχει μικρό χώρο αναζήτησης (9! καταστάσεις). Αλγόριθμος i στην Τρίλιζα (2/2) Μία συνάρτηση αξιολόγησης στην τρίλιζα θα μπορούσε να είναι η: 3 2 + 1 (3 2 + 1 ) 2 ο αριθμός γραμμών, στηλών ή διαγωνίων με δύο και χωρίς κανένα. 1 ο αριθμός γραμμών, στηλών ή διαγωνίων με ένα και χωρίς κανένα. 2 ο αριθμός γραμμών, στηλών ή διαγωνίων με δύο και χωρίς κανένα. 1 ο αριθμός γραμμών, στηλών ή διαγωνίων με ένα και χωρίς κανένα. Ένα σε σειρά Δύο σε διαγώνιο Δύο σε στήλη Δύο σε στήλη 3 2 + 1 (3 2 + 1 ) = 3 2+1 (3 1+0) = 4 Φώτης Κόκκορας 9 Φώτης Κόκκορας 10 Εφαρμογή αλγορίθμου i στο σκάκι Το κύριο μέλημα των προγραμμάτων σκάκι είναι να αναπτύξουν το δένδρο του παιχνιδιού σε όσο το δυνατόν μεγαλύτερο βάθος. Μία συνάρτηση αξιολόγησης στο σκάκι Υπεροχή κομματιών: π.χ. Βασιλιάς=10, Άλογο=, Πιόνι=1 κλπ. Η αξία όλων των κομματιών κάθε χρώματος προστίθεται. Υπεροχή θέσης: π.χ. κάθε κομμάτι που βρίσκεται στα 4 κεντρικά τετράγωνα παίρνει επιπλέον 2 πόντους. Απειλές: π.χ. για κάθε απειλή που προβάλει ένας παίκτης παίρνει 3 επιπλέον πόντους, εκτός αν απειλεί το βασιλιά του άλλου παίκτη, οπότε παίρνει πόντους. Βασιλιάς Άλογο Αλγόριθμος i στο Σκάκι Τερματικές καταστάσεις 8 6 10 7 4 9 1 12-8 3 6-2 9 10 13 17 3 1 6 Αξιολόγηση Τερματικών Καταστάσεων Καλύτερη κίνηση 4 Πιόνι 4-8 -2 1 Εφαρμογή (σε βάθος μόνο 2) στο ακόλουθο slide: Φώτης Κόκκορας 11 8 6 10 7 4 9 1 12-8 3 6-2 9 10 13 17 3 1 6 Μετατόπιση τιμών προς τη ρίζα του δένδρου Φώτης Κόκκορας 12

Αλγόριθμος Alpha-Beta Άλφα-Βήτα (Alpha-Beta - ΑΒ) είναι βελτιστοποίηση του i. Αποφεύγει τη δημιουργία κάποιων υποδένδρων (και την αξιολόγηση κάποιων καταστάσεων). Πρακτικά δεν έχουμε κλάδεμα αλλά μη-δημιουργία κάποιων υποδένδρων που φτιάχνει ο i. Το κριτήριο είναι να προκύψει κάποιο από τα ακόλουθα υποδένδρα (λεπτομερής επεξήγηση στη συνέχεια): Παράδειγμα i vs. Alpha-Beta (1/2) Έστω το game-tree του σχήματος. Τι πρέπει να παίξει ο ; Καταρχήν, και οι δύο αλγόριθμοι δημιουργούν το δένδρο με τρόπο "DFS". Η ανάπτυξη κατά τρόπο " BFS" έχουμε δει ότι έχει μεγαλύτερες απαιτήσεις σε μνήμη και επιπλέον περιορίζει τα όποια οφέλη μπορεί να δώσει λόγο "κλαδέματος", ο alpha-beta. Όταν λέμε ότι ο alpha-beta "κλαδεύει", πρακτικά εννοούμε ότι δεν χρειάζεται να κατασκευάσει κάποιο τμήμα του δένδρου που ο i κατασκευάζει. ΠΡΣΗ: το δένδρο κατασκευάζεται σταδιακά (DFS-like δεν κατασκευάζεται όλο και μετά συντελείται πάνω του κάποιο κλάδεμα!). 4 a α-κλάδεμα b V 1α=4 V 1>V 2 2 c d V 1β=4 V 1<V 2 e f V 2α=2 g ΠΡΣΗ: Το κλάδεμα στον Alpha-Beta είναι αντικειμενικό (δηλαδή δε βασίζεται σε ευρετικό μηχανισμό). Δεν υπάρχει περίπτωση να κλαδέψει πιο συμφέρουσα κατάσταση! i 1 4 j k V 2β= l β-κλάδεμα m n 2 1 o p Φώτης Κόκκορας 13 Φώτης Κόκκορας 14 Παράδειγμα i vs. Alpha-Beta (2/2) Στο σχήμα απεικονίζεται όλο το δένδρο που κατασκευάζει σταδιακά ο i. Δεδομένου ότι ο i δεν κλαδεύει, θα χρειαστεί να φτιάξει ολόκληρο το δένδρο και να αξιολογήσει όλες (8) τις καταστάσεις-φύλλα του (i, j, k,..., p). alpha-beta, φτιάχνοντας σταδιακά το δένδρο με DFS τρόπο και αξιολογώντας όπου είναι εφικτό (πχ τα i, j, k μπορεί να αξιολογηθούν άμεσα, το d μέσω i): θα εντοπίσει το υποδένδρο του β-κλαδέματος (κόμβοι b, d, e, k - η εκτίμηση για τον d (4) είναι μικρότερης αυτής για τον k ()) και δεν θα δημιουργήσει (και αξιολογήσει) καθόλου τον κόμβο l θα εντοπίσει το υποδένδρο του α-κλαδέματος (κόμβοι a, b, c, f η εκτίμηση για τον b (4) είναι μεγαλύτερη αυτής για τον f (2)) και δεν θα δημιουργήσει καθόλου (και προφανώς ούτε θα αξιολογήσει) τους κόμβους g, o και p. Σημείωση: το παράδειγμα περιλαμβάνει χρήση και των δύο κριτηρίων κλαδέματος. Μέσα σε διακεκομμένες καμπύλες γραμμές επισημαίνονται οι δύο περιπτώσεις. Επομένως στο παράδειγμα: ο i παράγει 14 κόμβους και αξιολογεί 8 (όλα τα φύλλα του δένδρου), ο alpha-beta παράγει 10 κόμβους και αξιολογεί (τα φύλλα i, j, k, m, n) ΑΡΑ ο πρέπει να παίξει την κίνηση που από την κατάσταση a τον πάει στην b, καθώς από την b έρχεται το 4 που υπολογίζει ο alpha-beta για τον a. Φώτης Κόκκορας 1 Γιατί το "κλάδεμα" alpha-beta είναι αντικειμενικό; i d 1 4 V 1β=4 j b V 1<V 2 V 1α=4 k V 2β= e Το β-κλάδεμα είναι αντικειμενικό να γιατί δεν πρέπει να φτιαχτεί ο κόμβος l: Αν ο l είχε αξιολόγηση < που έχει ο k, τότε θα ανέβαινε πάνω η αξιολόγηση του k. Αν ο l είχε αξιολόγηση >, θα ανέβαινε μεν αυτός πάνω αλλά απέναντι στον d (που έχει αξιολόγηση μικρότερη του k) δεν θα έχει καμιά τύχη να ανέβει παραπάνω. Το α-κλάδεμα είναι αντικειμενικό να γιατί δεν πρέπει να φτιαχτούν οι g, o, p: Αν ο g είχε αξιολόγηση >2 που έχει ο f, τότε θα ανέβαινε πάνω η εκτίμηση του f. Αν ο g είχε αξιολόγηση <2, θα ανέβαινε μεν αυτός πάνω αλλά απέναντι στον b (που έχει αξιολόγηση μεγαλύτερη του f) δεν θα έχει καμιά τύχη να ανέβει παραπάνω. 4 l Φώτης Κόκκορας 16 a β-κλάδεμα V 1>V 2 m f 2 n 2 1 V 2α=2 c α-κλάδεμα o g p

Σύγκριση του AB με τον i ΑΒ εξετάζει περίπου N τερματικούς κόμβους......όπου Ν είναι οι τερματικοί κόμβοι που εξετάζει ο αλγόριθμος i. Το Πρόβλημα του ρίζοντα (Horizon Effect) Τι είναι: όταν επιλέγεται κίνηση που είναι μεν η πιο συμφέρουσα στο βάθος που εξετάζει/βλέπει ο αλγόριθμος (ορίζοντας), αλλά μετά μας οδηγούν σε δεινή θέση. Η απόδοσή του ΑΒ βελτιώνεται περεταίρω με διάφορες μεθόδους, όπως: επιπλέον κλάδεμα του δένδρου του παιχνιδιού με ευριστικούς μηχανισμούς χρήση δυναμικής, αντί στατικής, συνάρτησης αξιολόγησης αποθήκευση τιμών αξιολόγησης των τερματικών καταστάσεων (transposition tables) ώστε να μη χρειάζεται να υπολογιστούν χρήση προκαθορισμένων κινήσεων (χωρίς αναζήτηση) σε αρχικές και τελικές φάσεις του παιχνιδιού (ανοίγματα/openings, τελειώματα/end game moves). Φώτης Κόκκορας 17 Στο σχήμα, το βάθος εξέτασης επιτρέπει να ειδωθούν έγκαιρα οι απώλειες κομματιών (λευκοί κύκλοι) και να αποφευχθούν. Η πορεία όμως που επιλέγεται οδηγεί αργότερα (πέρα από τον ορίζοντα) σε δυσβάσταχτη απώλεια! Αντιμετώπιση: αντιμετωπίζεται μερικώς με ανιχνευτές (scouts), δηλαδή, τοπικά γίνεται έλεγχος πέραν του ορίζοντα, μήπως και εντοπιστεί ότι ακολουθούν τέτοιες (κακές) καταστάσεις, ώστε να επιλεγεί άλλο μονοπάτι. Φώτης Κόκκορας 18