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

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

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

Αυτόνομοι Πράκτορες. Εργασία εξαμήνου. Value Iteration και Q- Learning για Peg Solitaire

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

ΠΛΗ 513-Αυτόνομοι Πράκτορες Χειμερινό εξάμηνο 2012 Εφαρμογή αλγορίθμων ενισχυτικής μάθησης στο παιχνίδι Βlackjack. Χλης Νικόλαος-Κοσμάς

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

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

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

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

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

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

Αυτόνομοι Πράκτορες Μαριάνος Νίκος Αυτόνομοι Πράκτορες. Χειμερινό Εξάμηνο 2016 Κωδικός Μαθήματος ΠΛΗ513 Πρότζεκτ Μαθήματος

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

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

Jan Meyberg Εισαγωγή

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

Πίστας Αγώνα Αρχικών Στοιχημάτων Βοηθήματος Παικτών Πρώτου Παίκτη Τούρμπο Πρώτο στοίχημα: Κατασκευή της πίστας:

ΕΦΑΡΜΟΓΗ Q-LEARNING ΣΕ GRID WORLD ΚΑΙ ΕΞΥΠΝΟΣ ΧΕΙΡΙΣΜΟΣ ΤΟΥ LEARNING RATE ΛΑΘΙΩΤΑΚΗΣ ΑΡΗΣ ΑΥΤΟΝΟΜΟΙ ΠΡΑΚΤΟΡΕΣ

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

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

ΣΚΟΠΟΣ ΤΟΥ ΠΑΙΧΝΙΔΙΟΥ ΠΕΡΙΕΧΟΜΕΝΑ

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

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

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

Περισσότερες λεπτομέρειες και τρελά βίντεο σας περιμένουν στο: skull-and-roses.com

Coop-in Εγχειρίδιο χρήστη

ΣΚΟΠΟΣ. Ένα παιχνίδι ισχύος για 2 παίκτες, ηλικίας 13 και άνω.

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

ΠΕΡΙΛΗΨΗ ΤΟΥ ΠΑΙΧΝΙΔΙΟΥ ΠΕΡΙΕΧΟΜΕΝΑ ΤΟΥ ΠΑΙΧΝΙΔΙΟΥ ΛΙΒΑΔΙΑ, ΑΓΑΘΑ ΚΑΙ ΖΑΡΙΑ ΕΝΑ ΜΟΝΑΔΙΚΟ ΠΑΙΧΝΙΔΙ ΓΙΑ

Εισαγωγή. Περιεχόμενα. Μέσα στο Κουτί. Εισαγωγή Στόχος Μέσα στο Κουτί Οι Κάρτες Περιγραφή των Καρτών Επιβίβαση!...

Γραφικά υπολογιστών Εργαστήριο 10 Εισαγωγή στα Sprites

Εργασία για το Facility Game Μάθημα: Δομές Δεδομένων Σωτήρης Γυφτόπουλος

Περιεχόμενα. 1 ταμπλό. 1 σπίνερ. 1 κλεψύδρα μολύβια. 2 πιόνια ομάδων (Abla & Ubla) 2 πλαστικές βάσεις. 10 μάρκες Παρέμβασης.

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

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

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

ΠΕΡΙΕΧΟΜΕΝΑ ΤΟΥ ΠΑΙΧΝΙΔΙΟΥ

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

Το Jungle Speed είναι ένα παιχνίδι για 2 έως 10 παίκτες (ή και ακόμη περισσότερους!) ηλικίας 7 και άνω.

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

Προγραμματιστικές Ασκήσεις, Φυλλάδιο 1

ΕΙΣΑΓΩΓΗ ΠΕΡΙΕΧΟΜΕΝΑ. 96 Κάρτες αντικειμένων 4 Κάρτες επεξήγησης ενεργειών Οδηγίες. Απεικόνιση Αντικειμένου. Αρνητικος Αριθμός.

Το Κ2 είναι ένα παιχνίδι για 1 έως 5 παίκτες, ηλικίας 8 ετών και άνω, με διάρκεια περίπου 60 λεπτά.

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Τελικό επαναληπτικό διαγώνισμα Επιμέλεια: Δρεμούσης Παντελής

Πρόβλεψη αποτελεσμάτων ποδοσφαιρικών αγώνων βάσει του ιστορικού των αναμετρήσεων

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

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

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

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

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

Οδηγίες. Θα το παίξεις... και θα πεις κι ένα τραγούδι!

ΘΕΜΑ 1ο. Μονάδες 10. Β. ίνεται το παρακάτω τμήμα αλγορίθμου: Όσο Ι < 10 επανάλαβε Εμφάνισε Ι Ι Ι + 3 Τέλος_επανάληψης ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ

Περιεχόμενα 1 Scriptorium (Ταμπλό Αξίας Κατηγορίας) 5 εξάπλευρα ζάρια 87 κάρτες

ΠΑΙΧΝΙΔΙ PACMAN 3D ΜΕ ΜΕΘΟΔΟΥΣ ΕΝΙΣΧΗΤΙΚΗΣ ΜΑΘΗΣΗΣ

Λήψη αποφάσεων υπό αβεβαιότητα. Παίγνια Αποφάσεων 9 ο Εξάμηνο

ΕΞΕΡΕΥΝΗΣΤΕ ΤΗ ΜΥΣΤΗΡΙΩΔΗ ΝΗΣΟ

ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ. Ενότητα 5: Παραδείγματα. Ρεφανίδης Ιωάννης Τμήμα Εφαρμοσμένης Πληροφορικής

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

Μηχανισμοί Μάθησης και η Χρήση τους στην Επικύρωση της Ποιότητας Νέων Παιγνίων

ΕΙΣΑΓΩΓΗ ΚΑΙ ΣΚΟΠΟΣ ΤΟΥ ΠΑΙΧΝΙΔΙΟΥ

Σκοπός του παιχνιδιού. Περίληψη

Και όπως και στη ζωή, έτσι κι εδώ δεν υπάρχει δεύτερος...

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

Μηχανισμοί Μάθησης και η Χρήση τους στην Επικύρωση της Ποιότητας Νέων Παιγνίων

Το υλικό που περιέχεται στη συσκευασία είναι χρήσιμο για την εξοικείωση με τους αριθμούς, αναπτύσσοντας τόσο την αναγνώριση των αριθμών και των

O «νέος» Θρύλος είναι ευρωπαίος! Σύνταξη-επιμέλεια: Χάρης Περτέσης Παρασκευή, :34

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ. Πρώτη Σειρά ασκήσεων Ημερομηνία Παράδοσης: 24 Απριλίου 2018, 12 μ.μ.

Ένα παιχνίδι του Stefan Feld ΣΧΕΤΙΚΑ ΜΕ ΤΟ ΠΑΙΧΝΙΔΙ ΠΕΡΙΕΧΟΜΕΝΑ

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

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

Στοχαστικές Στρατηγικές

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

66 Κάρτες. 1 εξάπλευρο ζάρι 1 εγχειρίδιο κανόνων. φύλλα κίνησης μαθητευόμενων. το ταμπλό. 16 δείκτες θορύβου / εξαφάνισης. δείκτες σύλληψης & γύρου

32 κάρτες-πόλης 9 κάρτες-χαρακτήρων 5 κάρτες-αστυνομίας

Ένα έξυπνο παιχνίδι τοποθέτησης πλακιδίων για 2-5 παίκτες, 8 ετών και άνω από τον Klaus-Jurgen Wrede

Γρηγόρης Θ. Παπανίκος Αντιπρόεδρος του ΠΣΑΟΣ & Επίτιμος Καθηγητής Οικονομικών Επιστημών Πανεπιστήμιο Στέρλιγκ (University of Stirling), Η.Β.

Κατανόηση προφορικού λόγου

Περιεχόμενα. 1. Ανάλυση ευαισθησίας. (1) Ανάλυση ευαισθησίας (2) Δυϊκό πρόβλημα (κανονική μορφή) (3) Δυαδικός προγραμματισμός (4) Ανάλυση αποφάσεων

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

1 κεντρικό ταμπλό. 1 εγχειρίδιο οδηγιών. Κύβοι μεταναστών. 25 Ιρλανδοί 25 Άγγλοι 25 Γερμανοί 25 Ιταλοί. Δείκτες πολιτικής εύνοιας

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

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

Systematic Search and Reinforcement Learning for the Board Game Turning Points. Diploma Thesis

Οι παίκτες παίρνουν το ρόλο των χειρότερων πειρατών στο πλήρωμα ενός πλοίου. Ο καπετάνιος σας έχει στη μπούκα, επειδή είστε πολύ τεμπέληδες και

Και τα τέσσερα κτίρια της Εποχής 1 της επέκτασης μπορούν να ανακαινιστούν. Η ιδιότητα

Διαδρομών Μέρμηγκα Μερμηγκιών Τζίτζικα Τζίτζικα Επιλογής Επιλογής Φθινόπωρο Φθινόπωρο Προμηθειών Χειμώνα Δύναμης Χειμώνα Φθινόπωρο Χειμώ- νας

Κάρτες Κτιρίων και τα αντίστοιχα Ξύλινα Κομμάτια


ΠΕΡΙΕΧΟΜΕΝΑ ΠΡΟΕΤΟΙΜΑΣΙΑ ΕΠΙΣΤΗΜΟΝΕΣ ΕΝ ΔΡΑΣΕΙ

Παίζοντας Τόμπολα. Ημερομηνία Ανάρτησης: 16/03/2017 Ημερομηνία Παράδοσης: 30/03/2017, 23:59

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

Λήψη αποφάσεων υπό αβεβαιότητα

ΠΕΡΙΕΧΟΜΕΝΑ ΤΟΥ ΠΑΙΧΝΙΔΙΟΥ 10 ζάρια με 6 σύμβολα το κάθε ένα. 1 διπλής όψεως κεντρικό ταμπλό με 3 ή 4 φορτηγά. 1 μολύβι

ΠΕΡΙΕΧΟΜΕΝΑ ΕΓΧΕΙΡΙΔΙΟΥ

2-5 Παίκτες - Ηλικία λεπτά

Σύνοψη Θεωρίας ΟΡΙΣΜΟΣ ΚΑΙ ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΑΛΓΟΡΙΘΜΩΝ

ΠΕΡΙΕΧΟΜΕΝΑ ΤΟΥ ΠΑΙΧΝΙΔΙΟΥ ΣΚΟΠΟΣ ΤΟΥ ΠΑΙΧΝΙΔΙΟΥ ΠΡΟΕΤΟΙΜΑΣΙΑ. Ένα παιχνίδι του Corey Young

Περιεχόμενα. Πέτρα. Χρυσός. Βιβλίο. Τροφή. Πόντοι Νίκης. Ρίξιμο ξανά. Ανάλυση ενός πλακιδίου. Ονομασία Κόστος ( ή

Ένα παιχνίδι για 2-4 εξερευνητές, ηλικίας 8 και άνω. Διάρκεια παιχνιδιού περίπου 60 λεπτά

x = r cos φ y = r sin φ

Transcript:

ΑΥΤΟΝΟΜΟΙ ΠΡΑΚΤΟΡΕΣ ΑΝΑΦΟΡΑ ΕΡΓΑΣΙΑΣ Othello-TD Learning Βόλτσης Βαγγέλης Α.Μ. 2011030017 Η παρούσα εργασία πραγματοποιήθηκε στα πλαίσια του μαθήματος Αυτόνομοι Πράκτορες και σχετίζεται με λήψη αποφάσεων και ενισχυτική μάθηση. Σκοπός της εργασίας ήταν η δημιουργία ενός πράκτορα ο οποίος θα χρησιμοποιεί μάθηση χρονικών διαφορών (Temporal Difference Learning ή TD Learning) προσαρμόζοντας σε κάθε κίνηση το παιχνίδι του. Περιγραφή παιχνιδιού Πιο συγκεκριμένα δημιούργησα ένα παιχνίδι Othello το οποίο είναι παιχνίδι δύο παιχτών και αποτελείται από μία σκακιέρα 8 * 8 κελιών. Σκοπός του κάθε παίχτη είναι να έχει τα περισσότερα πούλια στην σκακιέρα όταν τελειώσει το παιχνίδι. Η τοποθέτηση πουλιών γίνεται σε άδειες θέσεις η οποίες συνορεύουν με τουλάχιστον ένα αντίπαλο πούλι. Επιπλέον θα πρέπει το νέο πούλι που θα τοποθετήσουμε να είναι σε τέτοια θέση ώστε μαζί με άλλο ένα δικό μας πούλι - το οποίο είναι ήδη τοποθετημένο από πριν στο ταμπλό - να περιέχουν ανάμεσά τους πούλια του αντίπαλου χρώματος. Στη συνέχεια αντικαθίστανται όλα τα ενδιάμεσα πούλια σε όλες τις κατευθύνσεις του αντιπάλου με δικά μας. Οι παίχτες τοποθετούν πούλια εναλλάξ εκτός και αν για κάποιο γύρο ο ένας από τους δύο παίχτες δεν έχει κίνηση, μέχρι να γεμίσει η σκακιέρα ή φυσικά να μην έχει κανένας παίχτης κίνηση. Την παρτίδα ξεκινά ο μαύρος παίκτης. Στη συγκεκριμένη εργασία εκτός του πράκτορα που χρησιμοποιεί μάθηση χρονικών διαφορών, δημιουργήθηκαν και ένας σχετικά έξυπνος πράκτορας αλλά και ένας τυχαίος ο οποίος διαλέγει μία κίνηση ανάμεσα σε όλες τις επιτρεπόμενες. Για κάθε παίκτη έχει φτιαχτεί μία ξεχωριστή κλάση στη γλώσσα java με τα σχετικά ονόματα. Επιπλέον ο χρήστης έχει την δυνατότητα να αλληλοεπιδράσει με τον TDL πράκτορα είτε πριν την εκμάθηση του είτε μετά, αλλά και με τον έξυπνο πράκτορα. Η εκμάθηση του TD παίκτη γίνεται μέσω κάποιου αριθμού παιχνιδιών με τον έξυπνο είτε με τον τυχαίο. Ο αριθμός αυτός είναι 500 παιχνίδια διότι παρατηρήθηκε ότι σε τόσα περίπου καταφέρνει ο TD να ξεπεράσει τις νίκες των άλλων πρακτόρων. Φυσικά και ο χρήστης έχει την δυνατότητα να τρέξει τις 500 επαναλήψεις όσες φορές θέλει ώστε να τον κάνει ακόμα πιο έξυπνο.

Στο παιχνίδι Othello υπάρχουν δύο μέθοδοι για την εφαρμογή της μάθησης χρονικών διαφορών οι οποίες μπορούν να χρησιμοποιηθούν. Η διαφορά τους έγκειται στον τρόπο με τον οποίο ο πράκτορας αντιλαμβάνεται τις επόμενες καταστάσεις από αυτή που βρίσκεται. Οι μέθοδοι είναι οι εξής: A μέθοδος Σύμφωνα με την πρώτη μέθοδο, η οποία χρησιμοποιήθηκε και στην εργασία, όταν ο πράκτορας βρίσκεται σε μια κατάσταση s, σχεδιάζει το δέντρο του παιχνιδιού το οποίο προκύπτει από όλες της διαθέσιμες κινήσεις σε κάθε επίπεδο και υπολογίζει την βέλτιστη κίνησή του. Στην συνέχεια, μέσω του αλγορίθμου minimax, υπολογίζει την βέλτιστη κίνηση (για αυτόν) που θα έπαιζε ο αντίπαλος. Με s συμβολίζεται η κατάσταση που προβλέπει ο πράκτορας πως θα επικρατεί στο ταμπλό μετά από δύο κινήσεις (μία για κάθε παίχτη).έτσι κατά μία έννοια ο πράκτορας μαθαίνει από τον εαυτό του. Η πρώτη μέθοδος είναι πιο συντηρητική αφού υποθέτει πάντα πως ο αντίπαλος παίζει βέλτιστα. B μέθοδος Σύμφωνα με την δεύτερη μέθοδο, ο πράκτορας στην κατάσταση s παίζει την βέλτιστη κίνηση που υπολογίζει ο minimax και στην συνέχεια περιμένει να παίξει ο αντίπαλος. Έτσι μετά από δύο κινήσεις (μία για κάθε παίχτη) φτάνουμε στην κατάσταση s η οποία μπορεί να είναι διαφορετική από αυτή που θα προέβλεπε ο πράκτοράς μας στην πρώτη μέθοδο. Εδώ ο πράκτορας μαθαίνει από τον αντίπαλο. Το βασικό μειονέκτημα της δεύτερης μεθόδου είναι πως κάποιος θα μπορούσε να ξεγελάσει τον πράκτορα. Για παράδειγμα θα μπορούσε αρχικά να παίζει επίτηδες άσχημα και μετά να αρχίσει να παίζει βέλτιστα. Όπως προαναφέρθηκε και στις δύο περιπτώσεις χρησιμοποιείται ένα δέντρο το οποίο περιέχει κάθε κατάσταση του παιχνιδιού. Κάθε επίπεδο του αναπαριστά το σύνολο των διαθέσιμων κινήσεων του κάθε παίχτη κάθε φορά που πρέπει να παίξει, και κάθε κόμβος, την κατάσταση που προκύπτει μετά από κάποια πιθανή κίνηση. Στη συνέχεια ο πράκτορας επιλέγει από το δέντρο την κατάσταση εκείνη που θεωρεί ως καλύτερη βασισμένος σε μία από τις παραπάνω μεθόδους. Στην εργασία χρησιμοποιήθηκε δέντρο δύο επιπέδων και ένα παράδειγμα φαίνεται παρακάτω:

Αλγόριθμος Minimax Θεωρούμε πως έχουμε δύο παίκτες, τον min και τον max. Ο max προσπαθεί να μεγιστοποιήσει το κέρδος που θα έχει από μία κίνηση ενώ ο min προσπαθεί να μειώσει το κέρδος του max.o αλγόριθμος αυτός προσπαθεί να ελαχιστοποιήσει την πιθανή απώλεια ενώ παράλληλα να μεγιστοποιήσει το ενδεχόμενο κέρδος. Η αξιολόγηση ενός στιγμιότυπου της σκακιέρας γίνεται με τη χρήση μιας συνάρτησης αξιολόγησης. Συνάρτηση αξιολόγησης O τύπος της συνάρτησης αξιολόγησης είναι ο εξής: Όπου Wi είναι τα βάρη τα οποία αντιστοιχούν στις φi (ή fi) συναρτήσεις δηλαδή στις συναρτήσεις βάσης. Στη συγκεκριμένη εργασία χρησιμοποιήθηκαν 16 συναρτήσεις βάσης οι οποίες μετράνε τα πούλια είτε του TD παίκτη είτε του αντιπάλου. Κάθε συνάρτηση μετράει τα πούλια σε διαφορετικές θέσεις του board οι οποίες είναι συμμετρικές. Το ποια πούλια μετράει κάθε συνάρτηση παρουσιάζεται παρακάτω:

Κάθε μία από τις f μετράει και τα πούλια του αντιπάλου αλλά και τα δικά του αναλόγως το όρισμα που θα τις δώσουμε. Πριν υπολογιστεί η V οι συναρτήσεις f κανονικοποιούνται. Στα βάρη αρχικά δίνεται η τιμή της μονάδας ώστε να μην υποδειχθεί στον πράκτορα ποια από τα πούλια είναι πιο σημαντικά αλλά να το καταλάβει μόνος του μέσα από την εκμάθηση του. Σε κάθε παιχνίδι ο πράκτορας ανανεώνει τα βάρη των συναρτήσεων με τον παρακάτω τρόπο: W[i] = W[i] + a * f[i] * (V(s') - V(s)) Όπου: W[i]: Το βάρος της κάθε παραμέτρου της συνάρτησης αξιολόγησης a: Ο ρυθμός μάθησης του πράκτορα f[i]: Η τιμή της κάθε παραμέτρου της συνάρτησης αξιολόγησης V(s'): Η αξία της νέας κατάστασης V(s): Η αξία της παλιάς κατάστασης Η διαδικασία του Temporal Difference Learning χρησιμοποιείται για να καταλήξουμε σε κάποια χρήσιμα βάρη για τη συγκεκριμένη συνάρτηση αξιολόγησης τα οποία στο τέλος της μάθησης αποθηκεύονται και μπορεί να χρησιμοποιηθούν όταν ο πράκτορας θα αντιμετωπίσει κάποιον αντίπαλο στη συνέχεια.

0 14 28 42 56 70 84 98 112 126 140 154 168 182 196 210 224 238 252 266 280 294 308 322 336 350 364 378 392 406 420 434 448 462 476 490 Φάση εκπαίδευσης Η φάση της εκπαίδευσης διήρκεσε 500 παιχνίδια διότι παρατηρήθηκε ότι σε αυτό τον αριθμό ο TD πράκτορας ξεπέρασε τις νίκες και των δύο αντιπάλων. Με τον έξυπνο παίκτη ο οποίος όμως δεν χρησιμοποιεί τυχαιότητα η πορεία του από εκεί και πέρα είναι καθαρά ανοδική δηλαδή έχει φτάσει σε ένα επίπεδο που νικάει σε εξαιρετικά μεγάλο ποσοστό. Παρακάτω φαίνεται το διάγραμμα το οποίο παρουσιάζει τις νίκες του πράκτορα σε σχέση με τον αριθμό των παιχνιδιών: 250 TDLearning vs Smart Player 200 150 100 50 0 Να σημειωθεί ότι στα 500 παιχνίδια σημειώθηκαν πάνω από 100 ισοπαλίες μεταξύ των παιχνιδιών 30-250 όπως φαίνεται και στο διάγραμμα. Η παράλληλη γραμμή σημαίνει ότι είτε το παιχνίδι τελειώνει σε ήττα είτε σε ισοπαλία. Μετά από αρκετές ισοπαλίες και ήττες ο πράκτορας αρχίζει να νικάει και να αυξάνει συνεχώς τις νίκες του.

0 15 30 45 60 75 90 105 120 135 150 165 180 195 210 225 240 255 270 285 300 315 330 345 360 375 390 405 420 435 450 465 480 495 Στη συνέχεια φαίνεται το διάγραμμα το οποίο παρουσιάζει τις νίκες του πράκτορα σε σχέση με τον αριθμό των παιχνιδιών με τον τυχαίο παίκτη: TDLearning vs Random Player 350 300 250 200 150 100 50 0 Εδώ παρατηρούμε ότι με αντίπαλο τον τυχαίο ο πράκτορας προσαρμόζεται σχετικά γρήγορα και αρχίζει να νικάει από την αρχή. Αυτό είναι και λογικό από την στιγμή που ο άλλος παίζει τυχαία και δεν προσπαθεί να καταλάβει τα πιο σημαντικά κελιά. Γενικά δεν υπήρξαν πολλές τεχνικές δυσκολίες. Ήθελα αρχικά να είναι δυνατό μέσα από τον κώδικα να δημιουργηθεί και ένα εκτελέσιμο αρχείο ώστε ο καθένας να μπορεί να τρέξει το πρόγραμμα χωρίς να χρειάζεται να έχει την συγκεκριμένη πλατφόρμα. Αρχικά δεν μου εμφάνιζε τα γραφικά χωρίς να καταλαβαίνω τον λόγο. Τελικά μετά από μερικές αλλαγές του κώδικα και αρκετό ψάξιμο τα κατάφερα. Επιπλέον σε κάποιο σημείο ενώ όλα ήταν υλοποιημένα σχεδόν σωστά ο πράκτορας δεν μάθαινε όπως θα έπρεπε. Αυτό συνέβη διότι δεν είχα κανονικοποιήσει τις συναρτήσεις f κάτι που μόλις το έκανα ο πράκτορας άρχισε να έχει την επιθυμητή

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