ΠΤΥΧΙΑΚΗ/ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ
|
|
- ἐλπίς Ζάππας
- 7 χρόνια πριν
- Προβολές:
Transcript
1 ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΤΥΧΙΑΚΗ/ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ «ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΤΟΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ» (Development of an Artificial Intelligence Agent for Card Games) ΑΕΜ: 2199 «ΑΘΑΝΑΣΙΟΣ ΡΟΪΔΗΣ» Κατεύθυνση: Πληροφοριακά Συστήματα ΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣ: ΒΡΑΚΑΣ ΔΗΜΗΤΡΗΣ, ΕΠΊΚΟΥΡΟΣ ΚΑΘΗΓΗΤΉΣ ΘΕΣΣΑΛΟΝΙΚΗ 2015
2
3 ΠΕΡΙΛΗΨΗ Περίληψη Αντικείμενο της παρούσας πτυχιακής εργασίας είναι η υλοποίηση ενός πράκτορα τεχνητής νοημοσύνης για παίγνια καρτών. Το παιχνίδι πάνω στο οποίο επιλέχθηκε να υλοποιηθεί ο πράκτορας είναι το Cold War: CIA vs KGB, ένα παιχνίδι στρατηγικής με κάρτες, το οποίο παίζεται σε γύρους και συνδυάζει την στρατηγική με την τυχαιότητα, υιοθετώντας κάποια στοιχεία μπλόφας. Η υλοποίηση του πράκτορα βασίζεται στην έννοια των δένδρων παιχνιδιών. Πιο συγκεκριμένα, γίνεται η χρήση μιας τροποποιημένης μορφής του αλγορίθμου expectiminimax, ο οποίος χρησιμοποιείται σε παίγνια που εμπεριέχουν το στοιχείο της τύχης. Πάνω στον βασικό αλγόριθμο εφαρμόστηκαν διάφορες τεχνικές για την βελτίωση της απόδοσης του και την μείωση του χρόνου εύρεσης της βέλτιστης κίνησης, όπως για παράδειγμα το κλάδεμα άλφα-βήτα και το κλάδεμα κόμβων τύχης, το πρώιμο κλάδεμα, οι μοναδικές επεκτάσεις, καθώς επίσης και τεχνικές πολυνηματισμού. Το πρόγραμμα αναπτύχθηκε για ηλεκτρονικούς υπολογιστές με την χρήση της μηχανής παιχνιδιών του Unity 5. ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΤΟΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ III
4
5 ABSTRACT A b s t r a c t The purpose of this thesis is to develop an artificial intelligence agent for card games. The game that was chosen is Cold War: CIA vs KGB, a turn-based strategy card game, which combines strategy with luck, along with the bluff element. This agent's implementation is based on the notion of game trees. More specifically, an altered version of the expectiminimax algorithm is used, which is an algorithm suitable for games containing the element of luck. The basic algorithm was modified in order to improve it's efficiency and decrease it's search time, using a wide array of techniques, such as alpha-beta pruning, pruning of chance nodes, forward pruning, singular extensions and multithreading. The program was developed with the use of the Unity 5 game engine for the PC platform. ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΤΟΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ V
6
7 ΕΥΧΑΡΙΣΤΙΕΣ Ευχαριστίες Πριν την παρουσίαση των αποτελεσμάτων της παρούσας εργασίας, αισθάνομαι την υποχρέωση να ευχαριστήσω ορισμένους από τους ανθρώπους που γνώρισα, συνεργάστηκα μαζί τους και έπαιξαν πολύ σημαντικό ρόλο στην πραγματοποίησή της. Πρώτα θα ήθελα να ευχαριστήσω τον κ. Δημήτριο Βράκα, Επίκουρο Καθηγητή του τμήματος Πληροφορικής του Αριστοτελείου Πανεπιστημίου για την άριστη συνεργασία και την καθοδήγηση του κατά την διάρκεια της εκπόνησης αυτής της πτυχιακής εργασία. Επίσης θα ήθελα να ευχαριστήσω την οικογένεια μου για την ηθική υποστήριξη που μου παρείχε. 12/10/2015 Ροΐδης Αθανάσιος ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΤΟΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ VII
8
9 ΠΕΡΙΕΧΟΜΕΝΑ Περιεχόμενα ΠΕΡΙΛΗΨΗ... III ABSTRACT... V ΕΥΧΑΡΙΣΤΙΕΣ... VII ΠΕΡΙΕΧΟΜΕΝΑ... IX ΛΙΣΤΑ ΣΧΗΜΑΤΩΝ... XI ΛΙΣΤΑ ΠΙΝΑΚΩΝ... XIII ΚΕΦΑΛΑΙΟ 1: ΕΙΣΑΓΩΓΗ ΚΕΦΑΛΑΙΟ 2: Η ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΣΤΑ ΠΑΙΓΝΙΑ ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ-ΕΙΣΑΓΩΓΗ ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΣΤΑ ΠΑΙΧΝΙΔΙΑ ΔΕΝΔΡΟ ΠΑΙΧΝΙΔΟΥ ΑΛΓΟΡΙΘΜΟΣ MINIMAX ΚΛΑΔΕΜΑ ΑΛΦΑ-ΒΗΤΑ ΑΛΓΟΡΙΘΜΟΣ EXPECTIMINIMAX ΚΕΦΑΛΑΙΟ 3: ΤΟ ΠΑΙΓΝΙΟ COLD WAR ΚΕΦΑΛΑΙΟ 4: ΑΛΓΟΡΙΘΜΙΚΗ ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΤΟΡΑ ΠΑΙΓΝΙΟΥ ΑΓΩΝΑΣ ΕΠΙΡΡΟΗΣ ΜΟΝΑΔΙΚΕΣ ΕΠΕΚΤΑΣΕΙΣ ΚΛΑΔΕΜΑ ΆΛΦΑ-ΒΗΤΑ ΚΑΙ ΚΟΜΒΩΝ ΤΥΧΗΣ ΠΡΩΙΜΟ ΚΛΑΔΕΜΑ ΑΡΧΙΚΑΤΑΣΚΟΠΟΣ ΕΠΙΛΟΓΗ ΠΡΑΚΤΟΡΑ Χ ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΤΟΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ IX
10 ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ 5: ΤΟ ΠΕΡΙΒΑΛΛΟΝ ΑΝΑΠΤΥΞΗΣ UNITY ΚΕΦΑΛΑΙΟ 6: ΑΝΑΛΥΣΗ ΤΟΥ ΚΩΔΙΚΑ Ο ΚΩΔΙΚΑΣ ΤΟΥ ΠΑΙΧΝΙΔΙΟΥ ΜOVABLEΟBJECT CARD PLAYER GAME ΣΤΗΣΙΜΟ ΤΟΥ ΠΑΙΧΝΙΔΙΟΥ Ο ΚΩΔΙΚΑΣ ΤΟΥ ΠΡΑΚΤΟΡΑ Η ΚΛΑΣΗ GROUP Η ΚΛΑΣΗ AGENT Η ΚΛΑΣΗ GAMESTATE Η ΚΛΑΣΗ INFLUENCESTRUGGLEMOVE ΤΟ SCRIPT AIPLAYER ΚΕΦΑΛΑΙΟ 7: ΣΥΜΠΕΡΑΣΜΑΤΑ ΚΑΙ ΜΕΛΛΟΝΤΙΚΗ ΕΡΓΑΣΙΑ ΠΑΡΑΡΤΗΜΑ I: ΔΙΕΠΑΦΗ ΧΡΗΣΤΗ ΠΑΡΑΡΤΗΜΑ II: ΑΝΑΦΟΡΕΣ ΠΑΡΑΡΤΗΜΑ III: ΑΚΡΩΝΥΜΑ ΠΑΡΑΡΤΗΜΑ IV: ΓΛΩΣΣΑΡΙΟ X ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΟΤΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ
11 ΛΙΣΤΑ ΣΧΗΜΑΤΩΝ Λίστα Σχημάτων ΕΙΚΟΝΑ 1: ΈΝΑ ΔΕΝΔΡΟ ΠΑΙΧΝΙΔΙΟΥ ΓΙΑ ΤΗΝ ΤΡΙΛΙΖΑ ΕΙΚΟΝΑ 2: ΈΝΑ ΔΕΝΔΡΟ ΠΑΙΧΝΙΔΙΟΥ ΜΕ ΣΥΜΠΛΗΡΩΜΕΝΕΣ ΤΙΣ ΤΙΜΕΣ MINIMAX ΤΟΥ ΚΑΘΕ ΚΟΜΒΟΥ ΕΙΚΟΝΑ 3: ΤΟ ΤΕΛΙΚΟ ΔΕΝΔΡΟ ΠΑΙΧΝΙΔΙΟΥ ΑΦΟΥ ΕΦΑΡΜΟΣΟΥΜΕ ΤΟΝ ΑΛΓΟΡΙΘΜΟ ΑΛΦΑ-ΒΗΤΑ ΕΙΚΟΝΑ 4: ΤΟ ΤΕΛΙΚΟ ΔΕΝΔΡΟ ΠΑΙΧΝΙΔΙΟΥ ΑΦΟΥ ΕΦΑΡΜΟΣΟΥΜΕ ΤΟΝ ΑΛΓΟΡΙΘΜΟ ΑΛΦΑ-ΒΗΤΑ ΕΙΚΟΝΑ 5: ΈΝΑ EXPECTIMINIMAX ΔΕΝΔΡΟ ΓΙΑ ΤΟ ΤΑΒΛΙ ΕΙΚΟΝΑ 6: ΈΝΑ ΣΥΜΠΛΗΡΩΜΕΝΟ EXPECTIMINIMAX ΔΕΝΔΡΟ ΕΙΚΟΝΑ 7: ΤΑ ΣΥΜΒΟΛΑ ΚΥΡΙΑΡΧΙΑ ΚΑΙ ΤΟ ΣΥΜΒΟΛΟ ΙΣΟΡΡΟΠΙΑΣ ΕΙΚΟΝΑ 8: ΜΙΑ ΚΑΡΤΑ ΣΤΟΧΟΣ ΕΙΚΟΝΑ 9: ΜΙΑ ΚΑΡΤΑ ΠΡΑΚΤΟΡΑ ΕΙΚΟΝΑ 10: ΜΙΑ ΚΑΡΤΑ ΟΜΑΔΑΣ ΕΙΚΟΝΑ 11: Η ΣΥΝΑΡΤΗΣΗ ΑΞΙΟΛΟΓΗΣΗΣ ΜΙΑΣ ΚΑΤΑΣΤΑΣΗΣ ΤΟΥ ΠΑΙΧΝΙΔΟΥ ΕΙΚΟΝΑ 12: Η ΣΥΝΑΡΤΗΣΗ ΠΟΥ ΕΠΙΣΤΡΕΦΕΙ ΤΗΝ ΚΑΛΥΤΕΡΗ ΚΙΝΗΣΗ ΠΟΥ ΜΠΟΡΕΙ ΝΑ ΓΙΝΕΙ ΣΕ ΜΙΑ ΚΑΤΑΣΤΑΣΗ ΕΙΚΟΝΑ 13: Η ΣΥΝΑΡΤΗΣΗ ΠΟΥ ΕΠΙΣΤΡΕΦΕΙ ΟΛΕΣ ΤΙΣ ΚΙΝΗΣΕΙΣ ΠΟΥ ΜΠΟΡΟΥΝ ΝΑ ΓΙΝΟΥΝ ΣΕ ΜΙΑ ΚΑΤΑΣΤΑΣΗ ΕΙΚΟΝΑ 14: Η ΣΥΝΑΡΤΗΣΗ ΑΞΙΟΛΟΓΗΣΗΣ ΜΙΑΣ ΚΙΝΗΣΗΣ ΕΙΚΟΝΑ 15: ΜΙΑ ΜΗ ΤΕΡΜΑΤΙΚΗ ΚΑΤΑΣΤΑΣΗ ΠΡΟΣ ΑΞΙΟΛΟΓΗΣΗ ΕΙΚΟΝΑ 16: ΜΙΑ ΜΗ ΤΕΡΜΑΤΙΚΗ ΚΑΤΑΣΤΑΣΗ ΣΤΗΝ ΟΠΟΙΑ ΣΕΙΡΑ ΕΧΕΙ Ο ΠΑΙΚΤΗΣ ΤΗΣ KGB ΕΙΚΟΝΑ 17: Η ΑΝΑΝΕΩΜΕΝΗ ΣΥΝΑΡΤΗΣΗ ΠΟΥ ΕΠΙΣΤΡΕΦΕΙ ΤΗΣ ΒΕΛΤΙΣΤΗΣ ΚΙΝΗΣΗΣ ΜΕ ΤΗΝ ΧΡΗΣΗ ΚΛΑΔΕΜΑΤΟΣ ΑΛΦΑ-ΒΗΤΑ ΕΙΚΟΝΑ 18: Η ΣΥΝΑΡΤΗΣΗ ΥΠΟΛΟΓΙΣΜΟΥ ΤΗΣ ΑΞΙΑΣ ΜΙΑΣ ΚΙΝΗΣΗΣ ΜΕ ΤΗΝ ΧΡΗΣΗ ΚΛΑΔΕΜΑΤΟΣ ΕΙΚΟΝΑ 19: ΜΙΑ ΚΑΤΑΣΤΑΣΗ ΣΤΗΝ ΟΠΟΙΑ ΕΛΕΓΧΕΤΑΙ Ο ΠΑΙΚΤΗΣ ΤΗΣ CIA ΤΟ ΑΝΕΧΕΙ ΤΟΝ ΑΡΧΙΚΑΤΑΣΚΟΠΟ ΕΙΚΟΝΑ 20: ΟΙ ΠΛΑΤΦΟΡΜΕΣ ΠΟΥ ΥΠΟΣΤΗΡΙΖΕΙ ΤΟ UNITY ΕΙΚΟΝΑ 21: Ο UNITY EDITOR ΕΙΚΟΝΑ 22: ΤΟ ΔΙΑΓΡΑΜΜΑ ΚΛΑΣΕΩΝ ΓΙΑ ΟΛΕΣ ΤΙΣ ΥΠΟΚΛΑΣΕΙΣ ΤΗΣ MOVABLEOBJECT ΕΙΚΟΝΑ 23: Η ΑΡΧΙΚΟΠΟΙΗΣΗ ΤΩΝ THREADS ΠΟΥ ΧΡΗΣΙΜΟΠΟΙΟΥΝΤΑΙ ΓΙΑ ΤΟΝ ΥΠΟΛΟΓΙΣΜΟ ΤΗΣ ΑΞΙΑΣ ΜΙΑΣ ΚΑΤΑΣΤΑΣΗΣ ΕΙΚΟΝΑ 24: Ο ΚΩΔΙΚΑΣ ΤΗΣ EVALUATEPRODUCEDSTATES ΠΟΥ ΕΚΤΕΛΕΙΤΑΙ ΑΠΟ ΤΟ ΚΑΘΕ THREAD.102 ΕΙΚΟΝΑ 25: Ο ΚΩΔΙΚΑΣ ΤΗΣ GETNEXTSTATE ΠΟΥ ΕΠΙΣΤΡΕΦΕΙ ΤΗΝ ΕΠΟΜΕΝΗ ΚΑΤΑΣΤΑΣΗ ΠΡΟΣ ΑΞΙΟΛΟΓΗΣΗ ΓΙΑ ΤΑ THREADS ΕΙΚΟΝΑ 26: ΤΟ ΚΕΝΤΡΙΚΟ ΜΕΝΟΥ ΤΟΥ ΠΑΙΧΝΙΔΙΟΥ ΕΙΚΟΝΑ 27: ΤΟ ΜΕΝΟΥ ΤΩΝ ΕΠΙΛΟΓΩΝ ΕΙΚΟΝΑ 28: ΣΤΙΓΜΙΟΤΥΠΟ ΤΟΥ ΠΑΙΧΝΙΔΙΟΥ ΚΑΤΑ ΤΗΝ ΔΙΑΡΚΕΙΑ ΤΗΣ ΦΑΣΗΣ ΤΟΥ ΑΓΩΝΑ ΕΠΙΡΡΟΗΣ ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΤΟΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ XI
12
13 ΛΙΣΤΑ ΠΙΝΑΚΩΝ Λίστα Πινάκων ΠΙΝΑΚΑΣ 1: ΟΙ ΒΑΘΜΟΛΟΓΗΜΕΝΕΣ ΕΠΙΤΡΕΠΟΜΕΝΕΣ ΚΙΝΗΣΕΙΣ ΓΙΑ ΤΟΝ ΠΑΙΚΤΗ ΤΗΣ KGB ΤΟΥ ΠΑΡΑΔΕΙΓΜΑΤΟΣ ΤΗΣ ΕΙΚΟΝΑΣ ΠΙΝΑΚΑΣ 2: ΟΙ ΣΥΝΟΛΙΚΕΣ ΚΑΤΑΣΤΑΣΕΙΣ ΠΟΥ ΑΞΙΟΛΟΓΟΥΝΤΑΙ ΑΠΟ ΤΙΣ ΣΥΝΑΡΤΗΣΕΙΣ ΑΞΙΟΛΟΓΗΣΗΣ ΓΙΑ ΔΙΑΦΟΡΑ ΒΑΘΗ ΑΝΑΖΗΤΗΣΗΣ ΚΑΙ ΕΙΔΗ ΚΛΑΔΕΜΑΤΟΣ ΠΙΝΑΚΑΣ 3: ΟΙ ΑΞΙΟΛΟΓΗΜΕΝΕΣ ΚΙΝΗΣΕΙΣ ΤΟΥ ΑΝΤΙΠΑΛΟΥ ΠΑΙΚΤΗ (CIA), ΤΟΥ ΠΑΡΑΔΕΙΓΜΑΤΟΣ ΤΗΣ ΕΙΚΟΝΑΣ 19 ΜΕ ΚΑΙ ΧΩΡΙΣ ΤΟΝ ΑΝΤΙΚΑΤΑΣΚΟΠΟ ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΤΟΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ XIII
14
15 ΚΕΦΑΛΑΙΟ 1: Εισαγωγή
16
17 ΚΕΦΑΛΑΙΟ 1: ΕΙΣΑΓΩΓΗ ΕΙΣΑΓΩΓΗ Αντικείμενο της παρούσας πτυχιακής εργασίας είναι η υλοποίηση ενός πράκτορα τεχνητής νοημοσύνης για παίγνια καρτών. Αρχικά αναλύονται οι αλγόριθμοι της κλασικής θεωρίας παιγνίων που χρησιμοποιούνται στα παίγνια δύο αντιπάλων. Μετά την παρουσίαση των κανόνων του παιχνιδιού Cold War: CIA vs KGB, το οποίο θα πρέπει να παίζει τελικά ο πράκτορας, γίνεται μία αλγοριθμική ανάλυση της υλοποίησης του πράκτορα, εφαρμόζοντας πάνω στο συγκεκριμένο παιχνίδι όλες τις τεχνικές που παρουσιάστηκαν, πριν γίνει η ανάλυση του ίδιου του κώδικα του παιχνιδιού και του πράκτορα. Τέλος, παρατίθενται τα συμπεράσματα της πτυχιακής εργασίας, μαζί με διάφορες πιθανές μελλοντικές προεκτάσεις του προγράμματος. Πιο συγκεκριμένα, η εργασία δομείται σε κεφάλαια ως εξής: Στο Κεφάλαιο 2 αρχικά γίνεται μία σύντομη εισαγωγή στον ευρύτερο επιστημονικό κλάδο της τεχνητής νοημοσύνης. Στην συνέχεια γίνεται μία εισαγωγή και μία ιστορική αναδρομή στον κλάδο της τεχνητής νοημοσύνης πάνω στα παιχνίδια. Εξηγείται η έννοια του δένδρου παιχνιδιού και αναλύονται ο αλγόριθμός minimax, ο αλγόριθμος alpha-beta, καθώς επίσης και ο αλγόριθμος expectiminimax. Παράλληλα παρουσιάζονται και διάφορες τεχνικές οι οποίες μπορούν να αυξήσουν την επίδοση του αλγορίθμου, όπως το πρώιμο κλάδεμα, ο έλεγχος ηρεμίας και οι μοναδικές επεκτάσεις. Στο Κεφάλαιο 3 γίνεται μία αναφορά στο πρόβλημα που θα πρέπει να αντιμετωπίσει ο πράκτορας, δηλαδή παρουσιάζονται οι κανόνες του παιχνιδιού Cold War: CIA vs KGB. Στην συνέχεια αναλύονται οι δυσκολίες που μπορεί να συναντήσει η τεχνητή νοημοσύνη παίζοντας ένα τέτοιο παιχνίδι. Στο Κεφάλαιο 4 αρχικά γίνεται μία στρατηγική ανάλυση του παιχνιδιού και του τρόπου με τον οποίο θα πρέπει σε γενικά πλαίσια να συμπεριφέρεται η τεχνητή νοημοσύνη. Στην συνέχεια αναλύεται η αλγοριθμική υλοποίηση του πράκτορα, εφαρμόζοντας όλες τις τεχνικές και τους αλγορίθμους που παρουσιάστηκαν στο Κεφάλαιο 2. Πρώτα αναλύεται το κομμάτι που αφορά την φάση του Αγώνα Επιρροής, όπου παρουσιάζεται ο βασικός αλγόριθμος, που ουσιαστικά πρόκειται για τον ο αλγόριθμο expectiminimax προσαρμοσμένο για το Cold War, και στην συνέχεια εφαρμόζονται διάφορες βελτιώσεις πάνω του, όπως το κλάδεμα άλφαβήτα, το κλάδεμα κόμβων τύχης, το πρώιμο κλάδεμα και οι μοναδικές επεκτάσεις για την βελτίωση της επίδοσης του και την μείωση του χρόνου αναζήτησης.κλείνοντας το κομμάτι που σχετίζεται με τον Αγώνα επιρροής, γίνεται μία αναφορά στο πως θα χειρίζεται από την τεχνητή νοημοσύνη η περίπτωση που ένας από τους δύο παίκτες έχει επιλέξει τον Αρχικατάσκοπο. Τέλος παρουσιάζονται οι κανόνες με τους οποίους επιλέγεται ο Πράκτορας Χ, καθώς επίσης και με ποιο τρόπο εφαρμόζεται η Ατζέντα του Διπλού Πράκτορα. Στο Κεφάλαιο 5 γίνεται μία παρουσίαση της μηχανή παιχνιδιών του Unity, το εργαλείο πάνω στο οποίο χτίστηκε το παίχνιδι,. Το κεφάλαιο αρχίζει με μία εισαγωγή στις μηχανές παιχνιδιών και στην χρήση τους, πριν γίνει μία αναφορά στις δυνατότητες που προσφέρει το ίδιο το Unity. Στην συνέχεια παρουσιάζονται κάποιες βασικές έννοιες του Unity, όπως για παράδειγμα τα GameObjects, οι σκηνές, τα Components και τα Scripts, τα οποία θα χρειαστούν για την ανάλυση ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΤΟΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ 17
18 ΚΕΦΑΛΑΙΟ 1: ΕΙΣΑΓΩΓΗ του κώδικα του παιχνιδιού στο επόμενο κεφάλαιο. Τέλος γίνεται μία περιήγηση στον Unity Editor. Στο Κεφάλαιο 6 αναλύεται ο κώδικας τόσο του ίδιου του παιχνιδιού, όσο και του πράκτορα τεχνητής νοημοσύνης. Αρχικά παρουσιάζονται τα βασικά Scripts του παιχνιδιού, καθώς επίσης και η δομή του προγράμματος και τον αντικειμένων που απαρτίζουν την βασική σκηνή. Στην συνέχεια γίνεται μία αναφορά στον κώδικα που αφορά την υλοποίηση του πράκτορα. Στο Κεφάλαιο 7 παρουσιάζονται τα συμπεράσματα της πτυχιακής εργασίας, καθώς επίσης και πιθανές μελλοντικές προσθήκες, όπως για παράδειγμα η ενσωματόση των Κάρτων Γεγονότων (Event Cards) και το παιχνίδι μέσω διαδικτύου. Στο Παράρτημα Ι παρουσιάζεται η γραφική διεπαφή του παιχνιδιού. Στο Παράρτημα IΙ παρουσιάζονται αλφαβητικά η βιβλιογραφία και οι δικτυακοί τόποι που αναφέρονται στην εργασία. Στο Παράρτημα IΙΙ παρουσιάζονται τα ακρωνύμια τα οποία χρησιμοποιούνται σε αυτή την εργασία για την διευκόλυνση του αναγνώστη. Στο Παράρτημα IV παρουσιάζεται το γλωσσάριο ξενικών όρων οι οποίοι χρησιμοποιούνται σε αυτή την εργασία για την διευκόλυνση του αναγνώστη. 18 ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΟΤΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ
19 ΚΕΦΑΛΑΙΟ 2: Η Τεχνητή Νοημοσύνη στα Παίγνια
20
21 ΕΦΑΛΑΙΟ 2: ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΣΤΑ ΠΑΙΓΝΙΑ Η ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΣΤΑ ΠΑΙΓΝΙΑ 2.1 ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ-ΕΙΣΑΓΩΓΗ Η Τεχνητή νοημοσύνη θεωρείται από πολλούς ως μία από τις σημαντικότερες τεχνολογικές καινοτομίες των τελευταίων ετών, με την ικανότητα να αλλάξει ριζικά την κοινωνία και την καθημερινότητα των ανθρώπων, και γιαυτό το λόγο βρίσκεται πλέον στο επίκεντρο της προσοχής. Τεχνητή νοημοσύνη είναι ο επιστημονικός κλάδος που ασχολείται με την ευφυή συμπεριφορά. Σε αντίθεση όμως με την ψυχολογία και τη φιλοσοφία που ασχολούνται μόνο με την κατανόηση του τρόπου με τον οποίο σκέφτονται οι νοήμονες οντότητες, η Τεχνητή Νοημοσύνη ασχολείται επιπλέον και με την δημιουργία τέτοιων νοημόνων οντοτήτων. Γενικότερα σχετίζεται με την επιστήμη των υπολογιστών, αλλά πέρα από την ψυχολογία και την φιλοσοφία που προαναφέρθηκαν, συνδέεται και με άλλες επιστήμες, όπως τα μαθηματικά και τη βιολογία. Ο όρος της τεχνητής νοημοσύνης επινοήθηκε από τον John McCarthy το 1956, οπότε μπορεί να θεωρηθεί ως μία σχετικά νέα επιστήμη. Πιο συγκεκριμένα, ο ορισμός που της δόθηκε ήταν η επιστήμη και η μηχανική της κατασκευής ευφυών μηχανών, όπου οι ευφυείς μηχανές είναι συστήματα που αντιλαμβάνονται το περιβάλλον τους και δρουν αναλόγως με σκοπό να επιτελέσουν ένα συγκεκριμένο έργο ή αλλιώς να πετύχουν έναν στόχο. Από τότε έχουν δοθεί αρκετοί ορισμοί για την τεχνητή νοημοσύνη που ακολουθούν κυρίως δύο προσεγγίσεις, την ανθρωποκεντρική και την ορθολογική. Η ανθρωποκεντρική προσέγγιση μετρά την επιτυχία με βάση το πόσο καλά ένας υπολογιστής προσεγγίζει την ανθρώπινη συμπεριφορά. Σε αυτό το σημείο πρέπει να γίνει μία αναφορά και στην λεγόμενη δοκιμασία Turing (Turing Test), που προτάθηκε το 1950 από τον ίδιο τον Alan Turing, τον πατέρα της πληροφορικής, με σκοπό να εξετάσει το πόσο ικανή είναι μία μηχανή να παρουσιάσει ευφυή συμπεριφορά. Για να περάσει ένας υπολογιστής την δοκιμασία Turing θα πρέπει κατά τη διάρκεια μίας γραπτής επικοινωνίας σε πραγματικό χρόνο με έναν εξεταστή να τον πείσει πως επικοινωνεί με έναν άλλον άνθρωπο και όχι με ένα μηχάνημα. Στην πλήρη δοκιμασία Turing o υπολογιστής θα πρέπει επιπλέον να επεξεργάζεται και οπτικό σήμα, καθώς επίσης να αναγνωρίζει και να χρησιμοποιεί φυσικά αντικείμενα που θα δέχεται από ένα παραθυράκι. Για να τα επιτύχει όλα αυτά ο υπολογιστής χρειάζεται επεξεργασία φυσικής γλώσσας αναπαράσταση γνώσης αυτοματοποιημένη συλλογιστική μηχανική μάθηση μηχανική όραση ρομποτική Όλοι αυτοί οι υποκλάδοι μαζί καλύπτουν το μεγαλύτερο εύρος της Τεχνητής Νοημοσύνης. ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΤΟΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ 21
22 ΚΕΦΑΛΑΙΟ 2: Η ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΣΤΑ ΠΑΙΓΝΙΑ Η ορθολογική προσέγγιση της Τεχνητής Νοημοσύνης από την άλλη, δεν ενδιαφέρεται για το αν ο υπολογιστής πλησιάζει την ανθρώπινη συμπεριφορά, αλλά στοχεύει στο να μπορέσει η μηχανή να επιτύχει το καλύτερο δυνατό αποτέλεσμα για το συγκεκριμένο πρόβλημα που έχει να αντιμετωπίσει, μία βέλτιστη λύση, ακόμα και αν δεν το κάνει με τον ίδιο τρόπο που θα το έκανε ένας άνθρωπος. Όχι πως οι άνθρωποι είναι παράλογοι και δεν λειτουργούν ορθολογικά, άλλα όλοι γνωρίζουν ότι κανένας δεν είναι τέλειος. Η Τεχνητή Νοημοσύνη διαθέτει ένα μεγάλο εύρος εφαρμογών, από στρατιωτικές εφαρμογές, όπως για παράδειγμα τα αυτόνομα οχήματα ξηράς και οι συνεργατικοί πιλότοι, μέχρι και εφαρμογές στην βιομηχανία της ψυχαγωγίας όπως τα ηλεκτρονικά παιχνίδια και τα ρομποτικά κατοικίδια. Οι τράπεζες και πολλοί μεγάλοι οργανισμοί χρησιμοποιούν συστήματα τεχνητής νοημοσύνης για την καλύτερη διαχείριση μεγάλου όγκου δεδομένων όπως και για την πρόβλεψη της συμπεριφοράς των πελατών. Στην καθημερινότητα την τεχνητή νοημοσύνη συναντάται σε συστήματα αναγνώρισης προσώπου και φωνής, καθώς και στους προσωπικούς ευφυείς βοηθούς, όπως είναι η Siri της Apple, η Cortana της Microsoft και το Google Now. Η Google μάλιστα σκοπεύει μέχρι το 2020 να βγάλει στην αγορά την τεχνολογία Google Driveless Car για αυτόνομα αυτοκίνητα. 2.2 ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΣΤΑ ΠΑΙΧΝΙΔΙΑ Τα ηλεκτρονικά παιχνίδια είναι μια από τις πιο δημοφιλείς μορφές διασκέδασης της εποχής μας και έχουν τις ρίζες τους στις αρχές του 1950, όταν τα παιχνίδια προέκυψαν σαν αποτέλεσμα της έρευνας διάφορων επιστημόνων πάνω στην τεχνητή νοημοσύνη. Η πιο κλασική χρήση της τεχνητής νοημοσύνης στα ηλεκτρονικά παιχνίδια είναι η παραγωγή ευφυών συμπεριφορών σε δευτερεύοντες χαρακτήρες ή αντιπάλους, όπως είναι η λήψη αποφάσεων και η εύρεση μονοπατιών (pathfinding). Ωστόσο η τεχνητή νοημοσύνη βρίσκει πλέον και άλλες εφαρμογές στα παιχνίδια, όπως για παράδειγμα η διαδικαστική δημιουργία περιεχομένου (Procedular Generated Content), η εύρεση αντιπάλων στο διαδίκτυο (matchmaking), η παροχή συμβουλών στον παίκτη και άλλα. Τα παιχνίδια μάλιστα ήταν μία από τις πρώτες εφαρμογές της τεχνητής νοημοσύνης και κέντρισε το ενδιαφέρον μεγάλων επιστημόνων της εποχής. Πιο συγκεκριμένα, ο Alan Turing το 1948 έγραψε έναν αλγόριθμο για να παίζει σκάκι (Turochamp) πριν ακόμα να υπάρχει κάποια μηχανή που να μπορούσε να εκτελέσει τις εντολές. Τον αλγόριθμο τον έτρεχε ο ίδιος ο Turing με αποτέλεσμα να χρειάζεται πάνω από μισή ώρα για την κάθε κίνηση. Δύο χρόνια αργότερα, το 1950, ο Claude Shannon στην δημοσίευση του Programming a Computer for Playing Chess έδωσε μία περιγραφή για το πως θα έπρεπε μία μηχανή ή ένας υπολογιστής να παίζει μία παρτίδα σκάκι. Ήταν η πρώτη δημοσίευση πάνω στην περιοχή και είχε τόσο μεγάλη επιρροή που δημιούργησε έναν νέο υποκλάδο της τεχνητής νοημοσύνης, το σκάκι υπολογιστών (computer chess). Μέχρι σήμερα έχει συμβεί σημαντική πρόοδος στον τομέα της Τεχνητής Νοημοσύνης στα παιχνίδια, καθώς οι μηχανές είναι πλέον σε θέση όχι μόνο να συναγωνιστούν τον άνθρωπο σε πολλά από αυτά, αλλά τον έχουν ξεπεράσει σε παιχνίδια όπως την ντάμα και το reversi, ενώ έχει νικήσει εδώ και πολλά χρόνια τον παγκόσμιο πρωταθλητή στο σκάκι. Πιο συγκεκριμένα, τον Φεβρουάριο του 1996 το Deep Blue, ένας υπολογιστής της ΙΒΜ που φτιάχτηκε συγκεκριμένα για να παίζει σκάκι, ήταν η πρώτη μηχανή που κατάφερε να νικήσει σε μία παρτίδα σκάκι έναν παγκόσμιο πρωταθλητή, τον Garry 22 ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΟΤΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ
23 ΕΦΑΛΑΙΟ 2: ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΣΤΑ ΠΑΙΓΝΙΑ Kasparov. Στο πρώτο ματς που έπαιξαν ο Kasparov νίκησε στις 3 από τις 6 παρτίδες και έφερε ισοπαλία στις άλλες 2, νικώντας το συνολικό match με σκορ 4-2. Έναν χρόνο αργότερα, τον Μάιο του 1997, ένα αρκετά βελτιωμένο Deep Blue με διπλάσια υπολογιστική ισχύ κατάφερε να νικήσει τον Kasparov σε ένα ιστορικό ματς με σκορ 3½ 2½ (2 νίκες, 3 ισοπαλίες και 1 ήττα). Το Deep Blue αναπτύχθηκε από τους Fenghsiung Hsu, Murray Campbell και Joseph Hoanne στην ΙΒΜ, βασιζόμενο στο Deep Thought που είχε αναπτυχθεί νωρίτερα, μεταξύ άλλων, από τους Hsu και Campbell στο πανεπιστήμιο Carnegie Mellon. Ήταν ένας μαζικά παράλληλος υπολογιστής με 30 επεξεργαστές και 480 επιπλέον ειδικά σχεδιασμένους VLSI σκακιστικούς επεξεργαστές, ενώ αξιολογήθηκε ως ο 259ος πιο ισχυρός υπερυπολογιστής σύμφωνα με την λίστα του TOP500. Ο Deep Blue ήταν σε θέση να αξιολογεί 200 εκατομμύρια θέσεις το δευτερόλεπτο, ενώ επιπλέον χρησιμοποιήθηκε ένα βιβλίο ανοιγμάτων από 4000 θέσεις και παιχνίδια, το οποίο αναπτύχθηκε με την βοήθεια ενός άλλου μεγάλου μετρ, του Joel Benjamin, και μία βάση δεδομένων που περιείχε όλα τα δυνατά φινάλε με λιγότερα από πέντε πιόνια και αρκετά φινάλε με έξι πιόνια. Πλέον στο Internet υπάρχουν αρκετά δωρεάν σκακιστικά προγράμματα, όπως το Stockfish, το Crafty, το Fruit και το GNU Chess, τα οποία μπορούν ακόμα και όταν τρέχουν σε προσωπικούς υπολογιστές να νικήσουν τους περισσότερους μετρ σε συνθήκες τουρνουά. Ένα εξίσου δημοφιλές παιχνίδι στην περιοχή της Τεχνητής Νοημοσύνης είναι και η ντάμα, το πρώτο παιχνίδι που μπόρεσαν να παίξουν οι υπολογιστές από την αρχή μέχρι το τέλος, παρόλο που εκείνη την εποχή το σκάκι ήταν πιο διαδεδομένο. Το πρώτο πρόγραμμα που μπορούσε να παίξει ένα ολοκληρωμένο παιχνίδι ντάμας γράφτηκε από τον Christopher Strachey το 1952 για το Ferranti Mark 1, τον πρώτο εμπορικά διαθέσιμο ηλεκτρονικό υπολογιστή, μετά από τις πρώτες προσπάθειες που έγιναν πάνω στον Pilot ACE και οδηγούσαν σε εξάντληση μνήμης. Το δεύτερο πρόγραμμα ντάμας το έγραψε ο Arthur Samuel στον ελεύθερο του χρόνο όταν ήταν υπάλληλος της IBM. Ξεκινώντας στις αρχές της δεκαετίας του 1950 ο Samuel έγραψε το πρώτο αυτοδίδακτο πρόγραμμα, το οποίο εκπαιδεύτηκε παίζοντας χιλιάδες παιχνίδια με τον εαυτό του. Το πρόγραμμα, ξεκινώντας από επίπεδο αρχάριου, μέσα σε λίγες μέρες ξεπέρασε τον ίδιο τον Samuel και το 1962 νίκησε τον Robert Nealy, έναν τυφλό πρωταθλητή της ντάμας, εξαιτίας ενός λάθους που έκανε, παρόλο που εκτελούνταν από έναν υπολογιστή με κύρια μνήμη λέξεις και επεξεργαστή μόλις 1KHz. Το αποτέλεσμα αυτού του αγώνα έδωσε την ψευδή εντύπωση ότι η ντάμα ήταν ένα λυμένο παιχνίδι. Ένα χρόνο αργότερα η μηχανή του Samuel έχασε από τον Nealy και το 1966 έχασε από άλλους 2 πρωταθλητές της ντάμας (Walter Hellman, Derek Oldbury), αλλά οι περισσότεροι ερευνητές είχαν ήδη προχωρήσει στο σκάκι αγνοώντας την ντάμα για παραπάνω από 25 χρόνια. Η πιο σημαντική προσπάθεια μετά το πρόγραμμα του Samuel ήταν το Chinook, το πρώτο πρόγραμμα υπολογιστή που κέρδισε τον τίτλο του παγκόσμιου πρωταθλητή στην ντάμα ενάντια σε ανθρώπινους αντιπάλους. Αναπτύχθηκε από το 1989 μέχρι το 2007 στο Πανεπιστήμιο της Αλμπέρτα, από τον Jonathan Schaeffer και τους Rob Lake, Paul Lu, Martin Bryant και Norman Treloar. Εκτελείται σε κοινούς προσωπικούς υπολογιστές και χρησιμοποιεί αναζήτηση άλφα-βήτα, η οποία θα αναλυθεί στην συνέχεια του κεφαλαίου, ενώ επίσης έγινε η χρήση μίας βάση δεδομένων από 444 δισεκατομμύρια θέσεις με οκτώ ή λιγότερα πιόνια. Ο Marion Tinsley θεωρείται ως ο κορυφαίος παίκτη ντάμας όλων τον εποχών, καθώς είχε χάσει μόνο 3 παρτίδες στην 40ετή καριέρα του. Όταν το Chinook ήρθε αντιμέτωπο με τον Tinsley κατάφερε να νικήσει σε 2 παρτίδες αλλά έχασε το συνολικό ματς με σκορ 2 ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΤΟΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ 23
24 ΚΕΦΑΛΑΙΟ 2: Η ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΣΤΑ ΠΑΙΓΝΙΑ νίκες - 33 ισοπαλίες - 4 ήττες. Το 1994 όμως το Chinook στέφθηκε παγκόσμιος πρωταθλητής μετά από ένα ισόπαλο ματς με τον Tinsley ο οποίος αναγκάστηκε να αποχωρήσει για λόγους υγείας. Το 2007 στο άρθρο Checkers is Solved η ομάδα του Schaeffer απέδειξε ότι η ισοπαλία είναι το καλύτερο αποτέλεσμα που μπορεί να φέρει κάποιος ενάντια στο Chinook. Ένα παιχνίδι στο οποίο η Τεχνητή Νοημοσύνη είχε μεγάλη επιτυχία έναντι του ανθρώπου είναι το Οθέλλο, γνωστό και ως Reversi. Το 1997 το πρόγραμμα Logistello, το οποίο γράφτηκε από τον Michael Buro ως μέρος της διδακτορικής του διατριβής, μπόρεσε και νίκησε τον παγκόσμιο πρωταθλητή Takeshi Murakami σε ένα ματς με 6 παρτίδες, νικώντας και τις 6 από αυτές. Πλέον τα καλύτερα Οθέλλο προγράμματα είναι πολύ πιο δυνατά σε αυτό το παιχνίδι από οποιονδήποτε άνθρωπο, και για αυτό το λόγο σήμερα οι άνθρωποι αρνούνται να έρθουν αντιμέτωποι με υπολογιστές σε τουρνουά. Το 1998 το Logistello αποσύρθηκε, αλλά τα υπόλοιπα προγράμματα συνέχισαν να αναπτύσσονται σε μία προσπάθεια εύρεσης του πιο ισχυρού προγράμματος Οθέλλο. Προγράμματα όπως το Edax, Caio και Cyrano είναι πολύ πιο ισχυρά και πιο γρήγορα από το Logistelllo. Σε αντίθεση με το Οθέλλο, το Γκο είναι ένα παιχνίδι στο οποίο οι υπολογιστές ακόμα αντιμετωπίζουν δυσκολίες ενάντια στους ανθρώπους και θεωρείται μεγάλη πρόκληση στην περιοχή της Τεχνητής Νοημοσύνης. To Γκο είναι ένα επιτραπέζιο παιχνίδι που έχει τις ρίζες του στην αρχαία Κίνα με ιστορία μεγαλύτερη από 2500 χρόνια. Στην αρχαιότητα θεωρούταν ως μία από τις τέσσερις τέχνες που θα έπρεπε να κατέχει ένας καλλιεργημένος Κινέζος λόγιος. Το κλασικό Γκo παίζεται σε ταμπλό με διαστάσεις 19x19, που σημαίνει ότι ξεκινάει με παράγοντα διακλάδωσης (πιθανές κινήσεις) 361, πολύ μεγαλύτερο από το 35 που είναι ο μέσος παράγοντας διακλάδωσης για το σκάκι. Για αυτό το λόγο προτιμούνται μικρότερες διαστάσεις για τα προγράμματα που παίζουν Γκο, συνήθως 9x9, καθώς επίσης συνηθίζεται τα παιχνίδια να ξεκινάν από καταστάσεις στις οποίες οι υπολογιστές έχουν κάποιο πλεονέκτημα έναντι των ανθρώπινων αντιπάλων. Οι πρώτες προσπάθειες για προγράμματα που παίζουν Γκο έγιναν αρκετά αργά σε σχέση με τα άλλα παιχνίδια, και εξελίχθηκαν με πιο αργούς ρυθμούς. Το πρώτο πρόγραμμα για Γκο το έγραψε ο Albert Zobrist το 1968 για την διδακτορική του διατριβή πάνω στην αναγνώριση προτύπων. Παρ όλες τις προσπάθειες που έγιναν μέχρι και την δεκαετία του 1990 οι υπολογιστές έβρισκαν δυσκολίες ακόμα και όταν έρχονταν αντιμέτωποι με νεαρούς παίκτες και ξεκινούσαν με μεγάλο πλεονέκτημα. Πιο πρόσφατα όμως, το 2013 κατά την διάρκεια του 27ου ετήσιου συνεδρίου της Ιαπωνικής Κοινότητας για την Τεχνητή Νοημοσύνη, ένα πρόγραμμα με το όνομα Zen κατάφερε να νικήσει τον Takuto Ooomote, κάτοχο 9 dan, δηλαδή επαγγελματικό επίπεδο, σε ένα παιχνίδι με διαστάσεις 19x19, ξεκινώντας με ένα μικρό πλεονέκτημα. Οι πιο σύγχρονες υλοποιήσεις προγραμμάτων Γκο βασίζονται στα δένδρα αναζήτησης Monte-Carlo και σε τεχνικές της μηχανικής μάθησης. Το τάβλι είναι ένα παιχνίδι που διαφέρει από όλα τα παραπάνω καθώς προσθέτει και την έννοια της αβεβαιότητας μέσω της ρίψης των ζαριών. Αυτό κάνει πιο πολύπλοκη την αναζήτηση από τον υπολογιστή για την καλύτερη δυνατή κίνηση, καθώς πρέπει να λαμβάνει υπόψη του όλες τις δυνατές ζαριές που μπορεί να έρθουν. Το πρόγραμμα BKG του Berliner το 1980 έγινε το πρώτο πρόγραμμα που μπόρεσε να νικήσει έναν παγκόσμιο πρωταθλητή σε οποιοδήποτε επιτραπέζιο παιχνίδι ή παιχνίδι με χαρτιά. Ωστόσο το TD-Gammon, που βγήκε αργότερα, μπόρεσε να πετύχει πολύ καλύτερα αποτελέσματα. Το TD-Gammon αναπτύχθηκε από τον Gerry Tesauro το 24 ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΟΤΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ
25 ΕΦΑΛΑΙΟ 2: ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΣΤΑ ΠΑΙΓΝΙΑ 1992 στην IBM και ουσιαστικά ήταν ένα τεχνητό νευρωνικό δίκτυο που χρησιμοποιούσε τεχνικές ενισχυτικής μάθησης του Samuel για εκπαίδευση, βασιζόμενο στην προηγούμενη προσπάθεια του Tesauro, το Neurogammon. Το πρόγραμμα μετά από παιχνίδια με τον εαυτό του σταμάτησε να βελτιώνεται, καθώς πλέον είχε ξεπεράσει σε ικανότητα οποιοδήποτε άλλο πρόγραμμα υπήρχε εκείνη την εποχή. Όλα τα παιχνίδια που προαναφέρθηκαν είναι παιχνίδια τέλειας πληροφόρησης. Αυτό ουσιαστικά σημαίνει ότι σε μία δεδομένη κατάσταση όλοι οι παίκτες έχουν εύκολη πρόσβαση σε όλες τις απαραίτητες σχετικές πληροφορίες που μπορεί να χρειαστούν για να πάρουν μία απόφαση. Για παράδειγμα, τα περισσότερα παιχνίδια με τραπουλόχαρτα είναι παιχνίδια ατελούς πληροφόρησης, καθώς ο ένας παίκτης δεν γνωρίζει τις κάρτες που έχουν οι υπόλοιποι στα χέρια τους, όπως για παράδειγμα το Μπριτζ, το οποίο απασχόλησε την επιστημονική κοινότητα. Το μπριτζ βέβαια διαφέρει και σε άλλα σημεία από τα προηγούμενα παιχνίδια καθώς παίζεται από τέσσερις παίκτες σε ομάδες των δύο, οπότε εισάγεται και το στοιχείο της επικοινωνίας, καθώς επίσης και της μπλόφας. Στο πρώτο παγκόσμιο πρωτάθλημα μπριτζ για υπολογιστές, που διοργανώθηκε το 1997, νικητής ήταν το πρόγραμμα Bridge Barron. Ωστόσο o αδιαμφισβήτητος πρωταθλητής με τις περισσότερες νίκες στο ιστορικό του είναι το πρόγραμμα Jack, έχοντας κερδίσει 9 φορές το πρωτάθλημα, παρόλο που έχασε το τελευταίο πρωτάθλημα το 2014 από το Shark Bridge. Το 2005 και το 2006 το Jack ήρθε αντιμέτωπο με 7 ζευγάρια από κορυφαίους Oλλανδούς παίκτες, μεταξύ των οποίων το ένα νίκησε στο Bermuda Bowl, ένα παγκόσμιο πρωτάθλημα μπριτζ που διεξάγεται κάθε 2 χρόνια, ενώ τα άλλα 2 ζευγάρια ήταν Ευρωπαίοι πρωταθλητές. Τελικά κατάφερε να νικήσει τα 3 από τα 7 ζευγάρια, συμπεριλαμβανόμενων των 2 Ευρωπαίων πρωταθλητών, αλλά συνολικά έχασε με μία πολύ μικρή διαφορά. Κάποιος μπορεί να σκεφτεί ότι ο σχεδιασμός τεχνητής νοημοσύνης για παιχνίδια δεν έχει καμία πρακτική σημασία. Ένα πρόγραμμα το οποίο μπορεί να να νικήσει τον παγκόσμιο πρωταθλητή σε ένα παιχνίδι δεν είναι ιδιαίτερα χρήσιμο και δεν έχει να προσφέρει κάτι το σημαντικό. Ωστόσο διάφορες τεχνικές που χρησιμοποιούνται από αυτά τα προγράμματα θα μπορούσαν να υιοθετηθούν από την ευρύτερη κοινότητα της τεχνητής νοημοσύνης και να χρησιμοποιηθούν στην αντιμετώπιση προβλημάτων παρόμοιας φύσης αλλά μεγαλύτερης σημασίας. Μάλιστα ο Peter W Frey, ένας καθηγητής τις επιστήμης υπολογιστών και ψυχολόγος στο τμήμα ψυχολογίας του Northwest Univerity, ανέφερε ότι η κοινότητα της τεχνητής νοημοσύνης θα έπρεπε να ακολουθεί τις μεθόδους του σκακιού υπολογιστή, και όχι το αντίστροφο. Όλα τα προγράμματα που παίζουν ένα παιχνίδι προσπαθούν πάντα να διαλέξουν την βέλτιστη κίνηση για την κατάσταση στην οποία βρίσκονται, η οποία μακροπρόθεσμα θα τους οδηγήσει στην καλύτερη δυνατή θέση, λαμβάνοντας πάντα υπόψη και τις κινήσεις που θα κάνει ο αντίπαλος. Στη συνέχεια του κεφαλαίου θα αναλυθεί ένας βασικό αλγόριθμο για την εύρεση αυτής της βέλτιστης κίνησης. Ωστόσο ο χρόνος αναζήτησης για την εύρεση της θα αποδειχθεί απαγορευτικός και γιαυτό το λόγο θα παρουσιαστούν διάφορες τεχνικές μείωσης αυτού του χρόνου αναζήτησης. Επίσης θα παρουσιαστούν και κάποιες αλλαγές που μπορούν να γίνουν πάνω σε αυτόν τον αλγόριθμο προκειμένου να μπορεί να λαμβάνει αποφάσεις σε παιχνίδια που εμπεριέχουν το στοιχείο της τύχης, όπως για παράδειγμα το τάβλι, και παιχνίδια ατελούς πληροφόρησης, όπως είναι το μπριτζ. Πριν από όλα αυτά όμως ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΤΟΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ 25
26 ΚΕΦΑΛΑΙΟ 2: Η ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΣΤΑ ΠΑΙΓΝΙΑ πρέπει να δοθούν κάποιοι πιο τυπικοί ορισμοί που θα βοηθήσουν στην καλύτερη κατανόηση του προβλήματος και της επίλυσης του. 2.3 ΔΕΝΔΡΟ ΠΑΙΧΝΙΔΟΥ Στην συνέχεια του κεφαλαίου θα ασχοληθούμε με παιχνίδια μηδενικού αθροίσματος ανάμεσα σε 2 αντίπαλους παίκτες, οι οποίοι θα πάρουν το όνομα MAX και MIN, για λόγους που θα γίνουν κατανοητοί στην συνέχεια. Παιχνίδια μηδενικού αθροίσματος είναι τα παιχνίδια στα οποία οι τιμές χρησιμότητας των 2 παικτών στο τέλος του παιχνιδιού είναι πάντα ετερόσημοι αριθμοί με την ίδια απόλυτη τιμή. Αν για παράδειγμα σε ένα παιχνίδι νικήσει ο παίκτης MAX η χρησιμότητα για αυτόν θα είναι +1, ενώ για τον παίκτη MIN που θα χάσει θα είναι -1. Οι παίκτες παίζουν εναλλάξ μέχρι το τέλος του παιχνιδιού, ξεκινώντας από τον MAX. Ένα παιχνίδι μπορεί να οριστεί τυπικά από τα εξής τέσσερα στοιχεία: Την Αρχική Κατάσταση (initial state) που είναι η κατάσταση στην οποία βρίσκεται το παιχνίδι πριν γίνει ακόμα η πρώτη κίνηση. Για παράδειγμα στο σκάκι η αρχική κατάσταση είναι το γνωστό στήσιμο των πιονιών στην σκακίερα πριν ακόμα ξεκινήσει το παιχνίδι (οι στρατιώτες στην 2η και στην 7η σειρά, οι πύργοι στις γωνίες κ.ο.κ) με το παίκτη που ελέγχει τα λευκά κομμάτια να ξεκινάει πρώτος. Τη Συνάρτηση Διαδόχων (successor function) η οποία όταν δέχεται σαν είσοδο μία κατάσταση επιστρέφει ένα σύνολο από ζευγάρια κίνησης και κατάστασης, όπου προφανώς η κίνηση είναι μία νόμιμη κίνηση σύμφωνα με τους κανόνες του παιχνιδιού, και η κατάσταση είναι η καινούργια κατάσταση στην οποία θα έρθει το παιχνίδι μετά την εφαρμογή της κίνησης στην κατάσταση εισόδου. Στο σκάκι, για μία δεδομένη διάταξη των πιονιών στην σκακιέρα, η συνάρτηση διαδόχων θα επιστρέψει όλες τις διατάξεις που μπορούν να προκύψουν, για την κάθε δυνατή κίνηση που μπορούν να κάνουν όλα τα πιόνια του παίκτη που έχει σειρά. Τον Έλεγχο Τερματισμού (terminal test), ο οποίος ελέγχει το πότε έχει τελειώσει ένα παιχνίδι, δηλαδή αν η τρέχουσα κατάσταση στην οποία βρίσκεται το παιχνίδι είναι τερματική κατάσταση (terminal state). Ένα παράδειγμα τερματικής κατάσταση στο σκάκι είναι όταν κάποιος παίκτης έχει επιτύχει ματ στον αντίπαλο βασιλιά. Τη Συνάρτηση Χρησιμότητας (utility function) ή αλλιώς αντικειμενική συνάρτηση (objective function) ή και συνάρτηση απολαβής (payoff function), η οποία αντιστοιχεί μία τιμή σε κάθε τερματική κατάσταση. Στο σκάκι θα μπορούσαν να δοθούν οι τιμές +1 για την νίκη, -1 για την ήττα και 0 για την ισοπαλία. Στην θεωρία παιγνίων, το δένδρο παιχνιδιού είναι ένας κατευθυνόμενος γράφος στον οποίο οι κόμβοι είναι καταστάσεις του παιχνιδιού και οι ακμές είναι κινήσεις. Για να χτιστεί ένα πλήρης δένδρο παιχνιδιού, δηλαδή ένα δένδρο που περιέχει όλες τις πιθανές καταστάσεις ενός παιγνίου από την αρχή μέχρι το τέλος, το πρώτο βήμα είναι η εφαρμογή της συνάρτησης διαδόχων στην αρχική κατάσταση. Στην συνέχεια εφαρμόζεται αναδρομικά η συνάρτηση διαδόχων σε κάθε νέα κατάσταση που παράγεται. Αφού βρεθεί μία νέα κατάσταση, γίνεται η χρήση του ελέγχου τερματισμού. Σε περίπτωση που η νέα κατάσταση είναι τερματική κατάσταση, 26 ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΟΤΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ
27 ΕΦΑΛΑΙΟ 2: ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΣΤΑ ΠΑΙΓΝΙΑ εφαρμόζεται συνάρτηση χρησιμότητας για να απόδοση μίας τιμή και το πρόγραμμα προχωράει σε μία επόμενη κατάσταση. Αν δεν είναι τερματική κατάσταση, ξαναχρησιμοποήται η συνάρτηση διαδόχων για την εύρεση των επόμενων καταστάσεων. Στην παρακάτω εικόνα (Εικόνα 1) δίνεται ένα παράδειγμα ενός δένδρου παιχνιδιού για το παιχνίδι τρίλιζα. Πρώτος παίζει ο παίκτης MAX που έχει 3 επιλογές για να συμπληρώσει X. Μετά ο MIN βάζει ένα O σε μία από τις 2 θέσεις που έχουν μείνει και τελικά, αν δεν έχει τελειώσει ήδη το παιχνίδι. μπαίνει και το τελευταίο X στην θέση που απέμεινε. Παρατηρείται ότι ο παίκτης MAX τελικά νικάει στις 2 από τις συνολικά 6 τελικές καταστάσεις, με τιμή απολαβής +1, ενώ φέρνει 2 ισοπαλίες και χάνει στις άλλες 2 περιπτώσεις. Ο σκοπός του MAX είναι, γνωρίζοντας το δένδρο παιχνιδιού, να πάρει μία απόφαση για το ποια θα είναι η επόμενη κίνηση του. Είναι λογικό να σκεφτεί κανείς ότι μία καλή στρατηγική θα ήταν να διαλέγει κάθε φορά την κίνηση που έχει σαν απόγονο την τελική κατάσταση με την μέγιστη απολαβή, στο συγκεκριμένο παράδειγμα +1. Ωστόσο αυτή η στρατηγική δεν θα τον οδηγήσει στο καλύτερο αποτελέσματα, όπως μπορούμε να διαπιστώσουμε και από το απλό παράδειγμα της τρίλιζας. Αν ο παίκτης MAX αρχικά διαλέξει την τρίτη κίνηση από αριστερά, λόγω της τέρμα δεξιάς τελικής κατάστασης, λογικό είναι στην συνέχεια ο MIN να κάνει την αριστερή κίνηση και τελικά ο MAX να χάσει το παιχνίδι, καθώς και ο MIN από την πλευρά του θέλει να νικήσει το παιχνίδι. Οπότε θα πρέπει να βρεθεί μία στρατηγική η οποία θα λαμβάνει υπόψη τις κινήσεις που θα κάνει και ο αντίπαλος παίκτης, δεδομένου ότι και αυτός προσπαθεί να παίξει βέλτιστα. Ένας τέτοιος αλγόριθμος είναι και ο αλγόριθμος minimax, ο οποίος θα αναλυθεί στην συνέχεια. Εικόνα 1: Ένα δένδρο παιχνιδιού για την τρίλιζα ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΤΟΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ 27
28 ΚΕΦΑΛΑΙΟ 2: Η ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΣΤΑ ΠΑΙΓΝΙΑ 2.4 ΑΛΓΟΡΙΘΜΟΣ MINIMAX Ο minimax είναι ένας αλγόριθμος που χρησιμοποιείται στα παιχνίδια μηδενικού αθροίσματος, και γενικότερα στην θεωρία παιγνίων, για την ελαχιστοποίηση της απώλειας στην χειρότερη δυνατή περίπτωση. Αυτό γιατί γίνεται η υπόθεση ότι ο αντίπαλος θα κάνει πάντα την καλύτερη κίνηση που μπορεί να κάνει από την πλευρά του. Ο αλγόριθμος βασίζεται στην τιμή minimax της κάθε κατάστασης/κόμβου του δένδρου παιχνιδιού, η οποία υπολογίζεται ως εξής : Αν η κατάσταση είναι τελική κατάσταση, τότε η τιμή minimax του κόμβου ισούται με την τιμή απολαβής της κατάστασης. Αν η κατάσταση είναι κόμβος MAX, δηλαδή κατάσταση που την επόμενη κίνηση την κάνει ο παίκτης MAX, τότε η τιμή minimax του κόμβου είναι η μέγιστη τιμή minimax των παιδιών του. Αν η κατάσταση είναι κόμβος MIN, δηλαδή κατάσταση που την επόμενη κίνηση την κάνει ο παίκτης MIN, τότε η τιμή minimax του κόμβου είναι η ελάχιστη τιμή minimax των παιδιών του. Είναι εύκολο να καταλάβει κανείς την λογική πίσω από τον τρόπο υπολογισμού της τιμής minimax. Ο παίκτης MAX επιλέγει πάντα την κατάσταση με την μεγαλύτερη απολαβή, ενώ ο παίκτης MIN την κατάσταση με την μικρότερη. Στην συνέχεια θα υπολογιστούν στην πράξη οι τιμές minimax για το δένδρο παιχνιδιού τεσσάρων στρώσεων, όπου οι παίκτες παίζουν εναλλάξ, στο παράδειγμα της Εικόνας 2. Εικόνα 2: Ένα δένδρο παιχνιδιού με συμπληρωμένες τις τιμές minimax του κάθε κόμβου Έχουν υπολογιστεί εκ των προτέρων οι καταστάσεις του παιχνιδιού καθώς επίσης έχουν υπολογιστεί με την συνάρτηση χρησιμότητας όλες οι τιμές minimax των τερματικών καταστάσεων του παιχνιδιού ( E1, E2, E3, E4, E5, E6, D3, D5 και C5). Σκοπός είναι να βρεθεί η τιμή minimax του κόμβου Α, ξεκινώντας από τις τελικές καταστάσεις ανεβαίνοντας προς τα πάνω, έτσι ώστε να μπορέσει τελικά ο παίκτης MAX να αποφασίσει για την επόμενη του κίνηση. Πρώτα υπολογίζονται οι τιμές των 28 ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΟΤΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ
29 ΕΦΑΛΑΙΟ 2: ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΣΤΑ ΠΑΙΓΝΙΑ κόμβων που βρίσκονται στο τέταρτο επίπεδο ( D ) όπου όλοι οι κόμβοι είναι κόμβοι MIN, και άρα η τιμή minimax τους είναι η ελάχιστη τιμή των παιδιών τους. Άρα οι κόμβοι D2 και D4 παίρνουν την τιμή 3, ο D2 από τον E3 και ο D4 από τον E5. Προφανώς όλοι οι κόμβοι που έχουν μόνο ένα παιδί παίρνουν αυτομάτως την τιμή του παιδιού τους. Σειρά έχει ο υπολογισμούς του τρίτου επίπεδου ( C ). Σε αυτό το επίπεδο όμως οι κόμβοι είναι κόμβοι MAX. Γιαυτό τώρα διαλέγεται πάντα η μέγιστη τιμή των παιδιών τους. Ο C1 παίρνει την τιμή 7 από τον D1 και ο C3 παίρνει 8 από τον D5. Στο δεύτερο επίπεδο ( B ) ο B1 παίρνει την τιμή -4 από τον C2 και ο B2 παίρνει -25 από τον C5, καθώς και οι 2 είναι κόμβοι MIN. Τελικά ο κόμβος A παίρνει την τιμή -4 του κόμβου B1, που είναι μεγαλύτερη από το -25 του B2. Αυτό πρακτικά σημαίνει ότι η αριστερή κίνηση που θα οδηγήσει το παιχνίδι στην κατάσταση Β1 είναι η πιο ασφαλής επιλογή για τον MAX. Συνολικά ο αλγόριθμος minimax δέχεται μία κατάσταση του παιχνιδιού και με βάση την τιμή τιμή minimax που έχει υπολογίσει για τον κόμβο που αντιστοιχεί στη κατάσταση, επιστρέφει την ανάλογη κίνηση. Η πραγματική σειρά όμως με την οποία υπολογίζονται οι τιμές των κόμβων στο δένδρο δεν είναι η ίδια με αυτή που περιγράφηκε στο παραπάνω παράδειγμα. Ο minimax υπολογίζει αναδρομικά τις τιμές minimax των κόμβων, είτε κατά την διάρκεια του χτισίματος του δένδρου είτε αφού έχει ολοκληρωθεί το χτίσιμο, χρησιμοποιώντας αναζήτηση πρώτα σε βάθος (Depth First Search). Ο αλγόριθμος πρώτα φτάνει στα φύλλα του δένδρου/τερματικές καταστάσεις και ο υπολογισμός των τιμών minimax των κόμβων γίνεται καθώς ανεβαίνει προς τα πάνω, δηλαδή κατά της διάρκειας της οπισθοδρόμησης. Στο συγκεκριμένο παράδειγμα για να βρει την τιμή του κόμβου A πρέπει πιο πριν να έχει υπολογίσει την τιμή του κόμβου B1 και του κόμβου Β2. Πρώτα θα υπολογίσει του Β1. Για τον Β1 χρειάζεται τους C1 και C2. Για τον C1 τους D1 και D2. O D1 έχει παιδί μόνο τον Ε1 που είναι και φύλλο του δένδρου, οπότε παίρνει σαν τιμή minimax κατευθείαν την τιμή χρησιμότητας του E1. O D2 υπολογίζει την τιμή του από τους E2 και E3. Πλέον μπορεί να υπολογιστεί η τιμή του C1. O C2 παίρνει τιμή από τον E3. Υπολογίζεται και η τιμή του Β1, όπως ακριβώς θα υπολογιστεί και στην συνέχεια και ο Β2. Πλέον μπορεί να βρεθεί και η τιμή minimax του A. Η σειρά με την οποία υπολογίζονται οι τιμές σύμφωνα με τον αλγόριθμο minimax είναι η εξής: E1, D1, E2, E3, D2, C1, D3, C2, B1, E4, E5, D4, D5, C3, E6, D6, C4, C5, B2, A Ωστόσο είναι αδύνατον κάθε φορά που πρέπει να επιλέξει ο υπολογιστής την επόμενη κίνηση του να πρέπει να χτιστεί το πλήρες δένδρο παιχνιδιού μέχρι και τις τερματικές καταστάσεις. Σε ένα παιχνίδι όπως το σκάκι για παράδειγμα, η μέση διάρκεια μια παρτίδας είναι 40 κινήσεις, ενώ για κάθε κίνηση υπάρχουν κατά μέσο όρο 10 επιλογές. Αυτό σημαίνει ότι υπάρχουν περίπου πιθανές τελικές καταστάσεις. Κάνοντας την γενναιόδωρη υπόθεση ότι ένας υπολογιστής μπορεί να εξετάσει 20 δισεκατομμύριο καταστάσεις το δευτερόλεπτο, θα χρειαστεί / = δευτερόλεπτα, που ισούται περίπου με χρόνια, μόνο και μόνο για να διαλέξει ο υπολογιστής την επόμενη του κίνηση. Γιαυτό το λόγο χρησιμοποιούνται οι ευρετικές συναρτήσεις αξιολόγησης. Οι συναρτήσεις αξιολόγησης αποδίδουν σε μη τερματικές καταστάσεις του παιχνιδιού μία τιμή που προσεγγίζει την πραγματική τους χρησιμότητα. Ουσιαστικά μπορούν να μετατρέψουν μη τερματικές καταστάσεις σε φύλλα του δένδρου παιχνιδιού. Έτσι πλέον δεν χρειάζεται να χτίζεται κάθε φορά ολόκληρο το δένδρο αναζήτησης, αλλά μπορεί να σταματάει μετά από ένα συγκεκριμένο αριθμό στρώσεων/επιπέδων. Με αυτόν τον τρόπο μάλιστα προσεγγίζεται καλύτερα ο τρόπος ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΤΟΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ 29
30 ΚΕΦΑΛΑΙΟ 2: Η ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΣΤΑ ΠΑΙΓΝΙΑ με τον οποίο σκέφτεται ο άνθρωπος όταν πρέπει να πάρει μία απόφαση σε ένα παιχνίδι. Έτσι όπως οι άνθρωποι μπορούν να σκέφτονται μπροστά μέχρι έναν συγκεκριμένο αριθμό κινήσεων, έτσι και οι υπολογιστές μπορούν να αποκόπτουν την αναζήτηση όταν φτάσει το δένδρο σε ένα συγκεκριμένο ύψος, με την χρήση της συνάρτηση αξιολόγησης στους κόμβους εκείνου του επιπέδου. Ο υπολογισμός της τιμής που επιστρέφει η συνάρτηση αξιολόγησης γίνεται με βάση τα διάφορα χαρακτηριστικά της κατάστασης. Σε κάθε χαρακτηριστικό αντιστοιχείται μία τιμή και από τον συνδυασμό τους προκύπτει η τελική τιμή. Στο σκάκι για παράδειγμα το κάθε κομμάτι έχει μία αξία οπότε μία απλή συνάρτηση αξιολόγησης θα μπορούσε να αθροίζει την αξία όλων των κομματιών του παίκτη και να αφαιρεί την αξία όλων των κομματιών του αντιπάλου, καθώς επίσης μπορούσε με με κάποιο τρόπο να λαμβάνει υπόψη την διάταξη των κομματιών των δύο παικτών πάνω στην σκακιέρα. Επίσης δεν πρέπει να ξεχνάει κανείς και τον χρόνο εκτέλεσης της συνάρτησης αξιολόγησης. Αν σε ένα παιχνίδι ο μέσος αριθμός κινήσεων σε κάθε γύρο είναι b, τότε για ένα δένδρο βάθους d η συνάρτηση αξιολόγησης θα εκτελεστεί O(b d ) φορές, μία για κάθε φύλλο του δένδρου παιχνιδιού. Αυτό σημαίνει ότι στο σκάκι ακόμα και για να μπορέσει να δει ο υπολογιστής 10 κινήσεις μπροστά, η συνάρτηση αξιολόγησης θα πρέπει εκτελεστεί περίπου 10 δισεκατομμύρια φορές. Γιαυτό πρέπει η συνάρτηση αξιολόγησης να είναι αρκετά απλή, ώστε να μπορεί το βάθος αναζήτησης να είναι αρκετά μεγάλο στο δένδρο παιχνιδιού, αλλά και αρκετά σύνθετη ώστε να μπορεί να αποδώσει μία καλή εκτίμηση της πραγματικής χρησιμότητας της κατάστασης. Ένα πρόβλημα το οποίο εμφανίζεται συχνά όταν γίνεται η χρήση των συναρτήσεων αξιολόγησης για την αναζήτηση μέχρι ένα συγκεκριμένο βάθος, είναι η επίδραση του ορίζοντα (horizon effect). Η επίδραση του ορίζοντα αναφέρεται στο γεγονός ότι σε ένα παιχνίδι υπάρχει η πιθανότητα ο υπολογιστής να πάρει μία απόφαση που μελλοντικά θα τον οδηγήσει αναπόφευκτα σε μια επιβλαβή κατάσταση, όχι επειδή είχε παγιδευθεί την στιγμή που έπρεπε να πάρει την απόφαση και δεν είχε άλλες επιλογές, αλλά γιατί το βάθος της αναζήτησης δεν ήταν αρκετά μεγάλο ώστε να προβλεφθεί αυτή η εξέλιξη του παιχνιδιού. Δηλαδή αυτές οι ανεπιθύμητες καταστάσεις ήταν πέρα από τον ορίζοντα της αναζήτησης, σε βάθος λίγο μεγαλύτερο από το βάθος αναζήτησης του αλγορίθμου. Θα μπορούσε φυσικά να αυξηθεί το βάθος της αναζήτησης, άλλα όπως έχει γίνει κατανοητό μέχρι τώρα, χρειάζεται αρκετά περισσότερη υπολογιστική ισχύ για να παραχθούν για κάθε φύλλο του δένδρου όλα τα παιδιά του, καθώς αυξάνεται δραματικά το κόστος αναζήτησης ακόμα και για μόνο ένα επιπλέον επίπεδο. Για την αντιμετώπιση αυτού του προβλήματος χρησιμοποιούνται οι μοναδικές επεκτάσεις (singular extensions) σε συνδυασμό με έναν έλεγχο ηρεμίας(quiescence check). Ο έλεγχος ηρεμίας ελέγχει αν σε μία κατάσταση είναι πιθανό να παρουσιαστεί κάποια μελλοντική απότομη μεταβολή της αξίας της. Σε περίπτωση που κάποια κατάσταση κριθεί ως μη ήρεμη, μπορεί να επεκταθεί μόνο αυτή η κατάσταση και το δένδρο να πάει πέρα από το κανονικό βάθος του αλγορίθμου, χωρίς να αυξηθεί έτσι υπερβολικά το κόστος αναζήτησης. Μάλιστα με τις μοναδικές επεκτάσεις δεν είναι ανάγκη να επεκταθούν όλες οι επιτρεπόμενες κινήσεις, αλλά μπορούν να εξεταστούν μόνο οι πιο υποσχόμενες, δηλαδή αυτές οι οποίες φαίνονται να είναι πολύ καλύτερες από τις υπόλοιπες. 30 ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΟΤΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ
31 ΕΦΑΛΑΙΟ 2: ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΣΤΑ ΠΑΙΓΝΙΑ 2.5 ΚΛΑΔΕΜΑ ΑΛΦΑ-ΒΗΤΑ Ένας από τους τρόπους με τον οποίο μπορεί να μειωθεί σημαντικά ο χρόνος αναζήτησης είναι το κλάδεμα (pruning). Το κλάδεμα είναι μια τεχνική που χρησιμοποιείται γενικά στην μηχανική μάθηση και επιτρέπει την αφαίρεση κομματιών από το δένδρο αναζήτησης που δεν επηρεάζουν σημαντικά την τελική απόφαση. Ένα τέτοιο είδος κλαδέματος είναι και το κλάδεμα άλφα-βήτα, το οποίο όταν εφαρμόζεται σε ένα δένδρο minimax κλαδεύει ολόκληρα κλαδιά του δένδρου παιχνιδιού, αλλά τελικά επιστρέφει την ίδια κίνηση με τον αλγόριθμο minimax. Η ιδέα του κλαδέματος άλφα-βήτα δεν είναι καινούργια. Ο John McCarthy ήταν αυτός που εισήγαγε πρώτος την ιδέα το 1956, ενώ το πρώτο σκακιστικό πρόγραμμα που χρησιμοποίησε μια απλουστευμένη μορφή του αλγόριθμου άλφαβήτα ήταν το πρόγραμμα NSS το Το πρόγραμμα ντάμας του Samuel, στο οποίο αναφερθήκαμε στην αρχή του κεφαλαίου, χρησιμοποιούσε και αυτό αναζήτηση άλφα-βήτα. Από όλους αυτούς όμως κανένας δεν το ανέφερε δημοσίως. Οι πρώτες δημοσιεύσεις πάνω στο κλάδεμα άλφα-βήτα έγιναν αργότερα, την δεκαετία του Στην συνέχεια παρουσιάζεται ένα απλό παράδειγμα για την καλύτερη κατανόηση της λογικής του αλγορίθμου. Εικόνα 3: Το τελικό δένδρο παιχνιδιού αφού εφαρμόσουμε τον αλγόριθμο άλφαβήτα Στο σχήμα της Εικόνας 3 φαίνεται το τελικό δένδρο, αλλά ας υπολογίσουμε όλες τις τιμές του από την αρχή. Ξεκινώντας κανονικά εφαρμόζοντας αναζήτηση πρώτα σε βάθος όπως και στον αλγόριθμο minimax, υπολογίζεται ότι η τιμή του φύλλου E είναι ίση με 5. Οπότε είναι σίγουρο ότι η τιμή του κόμβου Β θα είναι μικρότερη ή ίση από το 5. Αυτό γιατί ο κόμβος B είναι κόμβος MIN, άρα ο παίκτης MIN θα προτιμήσει τον κόμβο E από οποιαδήποτε άλλη επιλογή που μπορεί να συναντήσει στην συνέχεια με μεγαλύτερη τιμή. Με την ίδια λογική, αφού υπολογιστεί ότι η τελική τιμή του B είναι 5, είναι σίγουρο ότι η τιμή του κόμβου A θα είναι μεγαλύτερη ή ίση από το 5, καθώς ο κόμβος A είναι κόμβος MAX. Στην συνέχεια υπολογίζεται η τιμή του κόμβου C. Ο G έχει τιμή 6, άρα η τιμή του C θα είναι το πολύ 6. Ο H θα έχει τιμή το λιγότερο 3, λόγω του L. Μετά τον υπολογισμό του κόμβου Μ, ο H παίρνει την τιμή 4. Μέχρι εδώ ο αλγόριθμός άλφα-βήτα δεν είχε ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΤΟΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ 31
32 ΚΕΦΑΛΑΙΟ 2: Η ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΣΤΑ ΠΑΙΓΝΙΑ καμία διαφορά με τον minimax. Ας δούμε όμως τι γνωρίζουμε μέχρι τώρα για τον κόμβο A και για τον κόμβο C. Ο κόμβος A, λόγω του B θα έχει τιμή μεγαλύτερη ή ίση του 5. Ο κόμβος C είναι απόγονος του A και θα έχει τιμή μικρότερη ή ίση του 4 λόγω του H. Αυτό σημαίνει ότι όποια και να είναι η τελική τιμή του C, ο παίκτης MAX δεν πρόκειται ποτέ να την διαλέξει γιατί έχει βρει ήδη μία καλύτερη επιλογή, τον B. Άρα ο κόμβος C δεν έχει καμία σημασία και μπορεί να σταματήσει ο υπολογισμός της τιμής του χωρίς καν να βρεθούν οι τιμές των υπόλοιπων παιδιών του, και συγκεκριμένα του κόμβου I. Αυτό το είδος κλαδέματος είναι γνωστό σαν κλάδεμα άλφα-βήτα. Μάλιστα όχι μόνο δεν χρειάζεται να γίνουν οι πράξεις για τον υπολογισμό της τιμής του I, αλλά μπορεί να μην παραχθεί καν ο κόμβος από την συνάρτηση διαδόχων, γλιτώνοντας και από εκεί υπολογιστικό χρόνο. Ο αλγόριθμος συνεχίζει με τον υπολογισμό των υπόλοιπων παιδιών του Α αφού τελείωσε με το C. Ο D θα έχει τιμή <=3, εξαιτίας του J, οπότε για τον ίδιο λόγο με πριν θα κλαδεφθεί ο κόμβος K. Τελικά ο A θα πάρει την τιμή 5 από τον B, χωρίς καν να έχει υπολογιστείη πραγματική τιμή των υπόλοιπων παιδιών του. Ο αλγόριθμος άλφα-βήτα έχει πάρει το όνομα του από τις παραμέτρους α και β που έχουν την εξής σημασία: α είναι η τιμή της καλύτερης επιλογή που έχει βρεθεί για τον παίκτη MAX, δηλαδή η μεγαλύτερη, στο μονοπάτι προς την ρίζα. β είναι η τιμή της καλύτερης επιλογή που έχει βρεθεί για τον παίκτη MIN, δηλαδή η μικρότερη, στο μονοπάτι προς την ρίζα. Στην γενική του μορφή ο αλγόριθμος άλφα-βήτα χρησιμοποιεί τις παραμέτρους α και β με τον εξής τρόπο. Κάθε φορά που υπολογίζεται η τιμή ενός κόμβου, ανανεώνεται η καλύτερη τιμή v που μπορεί να πάρει ο κόμβος γονέας του, ανάλογα φυσικά αν αυτός είναι κόμβος MAX ή MIN. Στην συνέχεια αν ο κόμβος γονέας είναι MAX και το v είναι μεγαλύτερο από το β σημαίνει πως ο MIN έχει βρει ήδη πιο πριν μία καλύτερη επιλογή, άρα μπορούν να κλαδευτούν τα υπόλοιπα παιδιά του καθώς αυτός ο κόμβος πλέον δεν έχει καμία σημασία. Αλλιώς συνεχίζει ο αλγόριθμος κανονικά με τα υπόλοιπα παιδιά του, χρησιμοποιώντας τις ανανεωμένες, αν πρέπει, τιμές α και β. Αντίστοιχα, αν ο κόμβος είναι MIN, γίνεται ο έλεγχος για το αν το v είναι μικρότερο από το α. Στην Εικόνα 4 της επόμενης σελίδας παρουσιάζεται σε μορφή ψευδοκώδικας ο τρόπος με τον οποίο υπολογίζεται η τη τιμής ενός κόμβου στον αλγόριθμο άλφα-βήτα. Στο συγκεκριμένο παράδειγμα παρατηρείται ότι κλαδεύονται οι 6 από τους συνολικά 17 κόμβους του δένδρου. Ωστόσο δεν θα υπήρχε το ίδιο κέρδος αν εξετάζονταν οι κόμβοι με διαφορετική σειρά. Αν για παράδειγμα ελέγχονταν τα παιδιά του C με την σειρά I, H, G δεν θα υπήρχε κανένα κλάδεμα στον C και τελικά το πρόγραμμα θα γλίτωνε μόνο τον έλεγχο του κόμβου K. Δηλαδή ο άλφα-βήτα θα είχε περίπου την ίδια επίδοση με τον minimax. Αν από την άλλη εξετάζονταν πρώτα ο H, θα μπορούσε κατευθείαν να κλαδευτεί και ο G μαζί με τον I. Όπως γίνεται κατανοητό, η σειρά με την οποία εξετάζονται οι κόμβοι έχει μεγάλη σημασία στην αποτελεσματικότητα του αλγορίθμου άλφα-βήτα, οπότε για την βέλτιστη απόδοση θα μπορούσε με κάποιο τρόπο να γίνεται εξέταση των καταστάσεων από τις καλύτερες προς τις χειρότερες. 32 ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΟΤΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ
33 ΕΦΑΛΑΙΟ 2: ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΣΤΑ ΠΑΙΓΝΙΑ Εικόνα 4: Το τελικό δένδρο παιχνιδιού αφού εφαρμόσουμε τον αλγόριθμο άλφαβήτα Αλλά ακόμα και αν ελεγχθούν οι κόμβοι με τυχαία σειρά, το πλήθος των κόμβων που θα εξεταστούν συνολικά θα είναι περίπου Ο(b3d /4 ), ανάμεσα στην d χειρότερη περίπτωση του O ( b b b... ) =Ο( b ), που είναι ουσιαστικά ο minimax χωρίς κανένα κλάδεμα, και στην βέλτιστη περίπτωση που θα είναι d / 2 O( b 1 b 1... ) = O( b ) όταν οι κινήσεις εξετάζονται από την καλύτερη προς την χειρότερη. Το b 1 b 1... προκύπτει από το ότι κάθε φορά πρέπει να ελέγχονται όλες οι κινήσεις του πρώτου παίκτη, του παίκτη MAX εδώ, αλλά για κάθε μία από αυτές θα ελέγχεται μόνο η πρώτη κίνηση του αντιπάλου του, αφού θα είναι η βέλτιστη και θα κλαδέψει όλες τις υπόλοιπες. Μία ακόμα μέθοδος με την οποία μπορεί να μειωθεί ο συνολικός χρόνος αναζήτησης της βέλτιστης κίνησης, μειώνοντας το πλήθος των κόμβων του δένδρου παιχνιδιού. είναι η χρήση του πρώιμου κλαδέματος (forward pruning). Σε αντίθεση με το κλάδεμα άλφα-βήτα ωστόσο, το πρώιμο κλάδεμα μπορεί να επηρεάζει το τελικό αποτέλεσμα. Στο πρώιμο κλάδεμα κλαδεύονται ορισμένες κινήσεις, οι οποίες θεωρούνται ότι έχουν μικρή πιθανότητα να επηρεάσουν την τελική τιμή minimax του δένδρου παιχνιδιού, χωρίς καν να εξεταστούν. Συνήθως οι κινήσεις που επιλέγονται να κλαδευτούν είναι είτε κινήσεις οι οποίες είναι εμφανώς χειρότερες από τις υπόλοιπες, είτε κινήσεις οι οποίες είναι παρόμοιες με άλλες κινήσεις που έχουν ήδη εξεταστεί. Έτσι, μόνο μία από αυτές χρειάζεται να εξεταστεί. Βέβαια αυτό είναι ριψοκίνδυνο, καθώς υπάρχει περίπτωση μέσα στην κινήσεις που θα κλαδευτούν να ανήκει και η βέλτιστη κίνηση. Επίσης, το πρώιμο κλάδεμα θεωρείται πιο ασφαλές όταν γίνεται μακριά από την ρίζα του δένδρου αναζήτησης, σε μεγάλο βάθος. Μάλιστα, με έναν παρόμοιο τρόπο σκέφτονται και οι άνθρωποι. Όταν είναι να πάρουν απόφαση για μία κίνηση, δεν εξετάζουν όλες τις πιθανές κινήσεις, αλλά μόνο αυτές οι οποίες φαίνονται πιο υποσχόμενες, αγνοώντας τις υπόλοιπες. ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΤΟΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ 33
34 ΚΕΦΑΛΑΙΟ 2: Η ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΣΤΑ ΠΑΙΓΝΙΑ 2.6 ΑΛΓΟΡΙΘΜΟΣ EXPECTIMINIMAX Όπως αναφέρθηκε και στην αρχή του κεφαλαίου, υπάρχουν ορισμένα παιχνίδια στα οποία το αποτέλεσμα δεν εξαρτάται εξολοκλήρου από τις ικανότητες των παικτών, αλλά το στοιχείο της τύχης παίζει σημαντικό ρόλο και πρέπει να ληφθεί υπόψη στην διαδικασία της λήψης αποφάσεων. Τέτοια μη ντετερμινιστικά παιχνίδια είναι όλα τα παιχνίδια που πρέπει να ριχθούν ζάρια, καθώς επίσης και τα περισσότερα παιχνίδια με χαρτιά. Για αυτά τα παιχνίδια που συνδυάζουν την ικανότητα και την τύχη έχει προταθεί ο αλγόριθμος expectiminimax, μία παραλλαγή του κλασικού αλγορίθμου minimax. Έστω για παράδειγμα το τάβλι. Ο παίκτης, αφού ρίξει τα ζάρια, πρέπει να αξιολογήσει την κάθε δυνατή κίνηση που μπορεί να κάνει με βάση αυτή τη ζαριά για να βρει την καλύτερη ανάμεσα τους. Για να το κάνει αυτό όμως, θα πρέπει, σύμφωνα με τον αλγόριθμο minimax, για κάθε μία του κίνηση να ξέρει ποιες θα είναι οι δυνατές κινήσεις του αντιπάλου,. Εφόσον αυτές εξαρτώνται από την ζαριά που θα φέρει ο αντίπαλος στον γύρο του, γίνεται κατανοητό ότι ο παίκτης δεν μπορεί να χτίσει ένα κανονικό δένδρο παιχνιδιού έτσι όπως έχει περιγραφτεί μέχρι τώρα στο κεφάλαιο αυτό. Περιληπτικά, αυτό που κάνει ο αλγόριθμος expectiminimax, εφόσον δεν είναι γνωστό εκ των υστέρων ποια θα είναι η ζαριά, είναι ότι για κάθε κίνηση του παίκτη υπολογίζει όλες τις δυνατές ζαριές που μπορεί να φέρει ο αντίπαλος. Η τιμή που θα δοθεί τελικά στην κίνηση του παίκτη θα είναι ο ζυγισμένος μέσος όρος των τιμών των καταστάσεων που παράγονται από όλες τις δυνατές ζαριές, των οποίων οι τιμές θα υπολογιστούν ομοίως αναδρομικά, ενώ τα βάρη του μέσου όρου είναι οι πιθανότητες να έρθει η αντίστοιχη ζαριά. Στον αλγόριθμο minimax το δένδρο αποτελείται από εναλλασσόμενα επίπεδα MAX και MIN, μέχρι το ύψος του δένδρου να φτάσει το απαιτούμενο βάθος. Στον αλγόριθμο expectiminimax προστίθενται επιπλέον ενδιάμεσοι κόμβοι τύχης μετά από κάθε επίπεδο MAX και MIN. Ουσιαστικά είναι σαν να σπάει ο γύρο του παίκτη σε 2 φάσεις. Η πρώτη φάση είναι από την αρχή του γύρου μέχρι και το τυχαίο συμβάν, στο τάβλι για παράδειγμα μέχρι και το αποτέλεσμα των ζαριών, και η δεύτερη φάση είναι μέχρι το τέλος του γύρου του παίκτη, αφού έχει κάνει την κίνηση του. Οι κόμβοι τύχης αναπαριστούν την κατάσταση του παιχνιδιού αφού γίνει η κίνηση από τον παίκτη και ο επόμενος παίκτης είναι έτοιμος να ρίξει το ζάρι, ενώ οι λήψη των αποφάσεων εξακολουθεί να γίνεται στους κόμβους MAX/MIN. Τα κλαδιά των κόμβων τύχης αντιπροσωπεύουν όλα τα δυνατά τυχαία συμβάντα, όλες τις δυνατές ζαριές ή τα δυνατά φύλα, τα οποία συνοδεύονται και από μία πιθανότητα. Ένα παράδειγμα για το τάβλι φαίνεται στην παρακάτω εικόνα (Εικόνα 4). Αρχικά ο παίκτης MAX πρέπει για κάθε δυνατή του κίνηση να εξετάσει όλες τις δυνατές ζαριές που μπορεί να φέρει ο παίκτης MIN στον επόμενο γύρο. Προφανώς ο παίκτης MAX δεν χρειάζεται να εξετάσει και τις δικές του ζαριές στην αρχή, γιατί η διαδικασία της λήψης απόφασης αρχίζει αφού ρίξει τα δικά του ζάρια. Επειδή το τάβλι παίζεται με δύο ζάρια, η πιθανότητα για την κάθε ζαριά είναι 1/36. Εφόσον όμως το 1-2 είναι το ίδιο με το 2-1, η πιθανότητα για τις μη διπλές ζαριές είναι 1/18, ενώ για τις διπλές είναι 1/36. Άρα το πλήθος των παιδιών του κάθε κόμβου τύχης πέφτει από το 36 στο ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΟΤΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ
35 ΕΦΑΛΑΙΟ 2: ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΣΤΑ ΠΑΙΓΝΙΑ Εικόνα 5: Ένα expectiminimax δένδρο για το τάβλι Μετά την κατανόηση της δομή ενός δένδρου expectiminimax, το μόνο που μένει είναι να εξηγηθεί ο τρόπος με τον οποίο παίρνουν τις τιμές τους οι κόμβοι του. Οι κόμβοι MAX και MIN, καθώς και τερματικοί κόμβοι/φύλλα του δένδρου, υπολογίζονται ακριβώς όπως έτσι όπως υπολογίζονται και στον κλασικό αλγόριθμο minimax. Για τους κόμβους τύχης όμως δεν μπορεί να γίνει η υπόθεση ότι θα συμβεί το ενδεχόμενο (ζαριά στο τάβλι) που θα συμφέρει περισσότερο ή λιγότερο τον παίκτη, ούτε να γίνει η υπόθεση ότι θα συμβεί ένα τυχαίο ενδεχόμενο. Το μόνο που μπορεί να γίνει, όπως έχει αναφερθεί και παραπάνω, είναι να υπολογιστεί η αναμενόμενη τιμή του κάθε κόμβου τύχης, και να τεθεί ως αξία της κατάστασης. Στην ουσία η αναμενόμενη τιμή είναι ο ζυγισμένος μέσος όρος των τιμών των παιδιών του κόμβου τύχης, με το βάρος του κάθε όρου να είναι η πιθανότητα να συμβεί το ενδεχόμενο που θα οδηγήσει στο αντίστοιχο παιδί. Στο παρακάτω παράδειγμα τις Εικόνας 5 παρουσιάζεται το δένδρο expectiminimax ενός πολύ απλού παιχνιδιού με συμπληρωμένες τις τιμές του κάθε κόμβου. Ο παίκτης MIN διαλέγει κανονικά τα παιδιά με την μικρότερη τιμή,ακριβώς όπως και στον αλγόριθμο minimax, οπότε το μόνο το οποίο αξίζει να αναλυθεί είναι ο υπολογισμός των τιμών των κόμβων τύχης. Ο κόμβος B θα πάρει την τιμή = 2.2, ο κόμβος C = 2.4 και ο κόμβος D θα πάρει τον κανονικό μέσο όρο του -1 και -2, δηλαδή -1.5, εφόσον και τα δύο παιδιά του έχουν την ίδια πιθανότητα να συμβούν. Τελικά ο παίκτης MAX θα διαλέξει να κάνει την κίνηση που θα τον οδηγήσει στην κατάσταση C, καθώς έχει την μεγαλύτερη αναμενόμενη τιμή. ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΤΟΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ 35
36 ΚΕΦΑΛΑΙΟ 2: Η ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΣΤΑ ΠΑΙΓΝΙΑ Εικόνα 6: Ένα συμπληρωμένο expectiminimax δένδρο Είναι εύκολο να υπολογιστεί η χρονική πολυπλοκότητα του αλγορίθμου expectiminimax. Έστω ότι το n είναι το μέσο πλήθος των διαφορετικών τυχαίων ενδεχόμενων που μπορούν να συμβούν σε κάθε γύρο. Πιο απλά, n είναι το πόσες διαφορετικές ζαριές μπορούν να έρθουν, ή το πόσα φύλλα έχουν μείνει στην τράπουλα. Αυτό σημαίνει ότι στο δένδρο παιχνιδιού ο κάθε κόμβος τύχης θα έχει περίπου n παιδιά. Άρα στην ουσία ο παράγοντας διακλάδωσης δεν θα είναι απλά b, όπως στον minimax, αλλά θα είναι n*b, καθώς ο κάθε κόμβος MIN/MAX θα έχει στην μέση περίπτωση b κόμβους τύχης για παιδιά. Τελικά η συνολική χρονική d O nb, αρκετά ( ) πολυπλοκότητα του αλγορίθμου expectiminimax θα είναι ( ) d μεγαλύτερη από το O( b ) του κλασικού minimax. Λόγω του μεγάλου παράγοντα διακλάδωσης στα παιχνίδια που εμπεριέχουν το στοιχείο της τύχης, δεν μπορεί πάντα να χτιστεί δένδρο μεγάλου βάθους, και γιαυτό αυτά τα παιχνίδια συνήθως βασίζονται σε μεγάλο βαθμό στις συναρτήσεις αξιολόγησης. Για παράδειγμα, το TDGammon κατάφερε με την βοήθεια της ενισχυτικής μάθησης να γίνει παγκόσμιος πρωταθλητής στο σκάκι με την χρήση αναζήτηση μόνο 2 επιπέδων, σε συνδυασμό βέβαια με μία πολύ καλή συνάρτηση αξιολόγησης. Το πεδίο τιμών και η σχέση μεταξύ των τιμών που επιστρέφουν οι συναρτήσεις αξιολόγησής παίζει ιδιαίτερα σημαντικό ρόλο στον αλγόριθμο expectiminimax. Ενώ στον αλγόριθμο minimax αρκεί οι καλύτερες καταστάσεις να έχουν απλά μεγαλύτερη τιμή, στον αλγόριθμο expectiminimax θα πρέπει να οριστούν οι συναρτήσεις αξιολόγησης με μεγαλύτερη προσοχή, έτσι ώστε και η διαφορά μεταξύ των τιμών των 2 καταστάσεων να είναι ανάλογη του πόσο καλύτερη είναι η μία κατάσταση από την άλλη. Στο παραπάνω παράδειγμα τα φύλλα έχουν τις τιμές {-2,-1,1,2,3,4,5}. Αν κρατώντας την ίδια διάταξη, αυτές οι τιμές ήταν {-200, -10, 10, 200, 300, 4000, 5000}, οι κόμβοι B, C και D θα έπαιρναν τις τιμές 580, 270, και αντίστοιχα. Δηλαδή ο παίκτης MAX θα προτιμούσε την κατάσταση B αντί της κατάστασης C, την οποία όμως με τις κανονικές τιμές την θεωρούσε καλύτερη. Σε ένα αντίστοιχο παράδειγμα ενός κανονικού δένδρου minimax η τελική επιλογή δεν θα άλλαζε για τον παίκτη MAX, καθώς η διάταξη των τιμών αξιολόγησης παραμένει το ίδιο. Όπως έχει αναφερθεί και παραπάνω, ο αλγόριθμος expectiminimax έχει αρκετά μεγάλη πολυπλοκότητα. Δυστυχώς οι κόμβοι τύχης δεν επιτρέπουν την αυτούσια εφαρμογή του κλασικό κλάδεμα άλφα-βήτα όπως στον αλγόριθμο minimax. 36 ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΟΤΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ
37 ΕΦΑΛΑΙΟ 2: ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΣΤΑ ΠΑΙΓΝΙΑ Μπορεί ωστόσο να εφαρμοστεί ένα παρόμοιο είδος κλαδέματος αν η συνάρτηση αξιολόγησης που χρησιμοποιείται είναι μία φραγμένη συνάρτηση, δηλαδή αν υπάρχει κάποια μέγιστη και ελάχιστη τιμή που επιστρέφει. Έτσι, μετά από τον κάθε υπολογισμό της τιμής ενός κόμβου MIN/MAX, υπολογίζεται η καλύτερη τιμή που μπορεί να πάρει ο κόμβος τύχης πατέρας του, υποθέτοντας ότι όλα τα υπόλοιπα παιδιά του, για τα οποία δεν έχει υπολογιστεί η τιμή τους ακόμα, θα έχουν την μέγιστη/ελάχιστη τιμή της συνάρτησης αξιολόγησης όταν ο πατέρας του κόμβου τύχης είναι κόμβος MAX/MIN αντίστοιχα. Αν η καλύτερη τιμή που θα μπορούσε να πάρει ο κόμβος τύχης είναι χειρότερη από την καλύτερη τιμή που έχει βρεθεί ήδη μέχρι στιγμής, δεν αξίζει να συνεχιστεί ο υπολογισμό της αναμενόμενης τιμής αυτού του κόμβου τύχης και κλαδεύονται όλα τα υπόλοιπα παιδιά του. Όπως και στον αλγόριθμο άλφα-βήτα, έχει σημασία η σειρά με την οποία εξετάζονται τα παιδιά του κάθε κόμβου. Όπως είναι κατανοητό, καλό θα ήταν να υπολογίζονται πρώτα οι τιμές των καταστάσεων με την μεγαλύτερη πιθανότητα να συμβούν, ώστε να υπάρχει καλύτερη προσέγγιση της πραγματικής αναμενόμενης τιμής του κόμβου τύχης. ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΤΟΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ 37
38 ΚΕΦΑΛΑΙΟ 2: Η ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΣΤΑ ΠΑΙΓΝΙΑ 38 ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΟΤΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ
39 ΚΕΦΑΛΑΙΟ 3: Το Παίγνιο Cold Wa r
40
41 ΚΕΦΑΛΑΙΟ 3: ΤΟ ΠΑΙΓΝΙΟ COLD WAR ΤΟ ΠΑΙΓΝΙΟ COLD WAR Σκοπός αυτής της πτυχιακής εργασίας είναι η υλοποίηση ενός πράκτορα τεχνητής νοημοσύνης για παίγνια με κάρτες. Πιο συγκεκριμένα, το παιχνίδι το οποίο θα πρέπει να μπορεί να παίζει ο πράκτορας είναι το Cold War: CIA vs. KGB, το οποίο θα πρέπει και αυτό να αναπτυχθεί από την αρχή για ηλεκτρονικούς υπολογιστές. Πριν αρχίσει όμως η ανάλυση ενός τέτοιου συστήματος, πρέπει πρώτα να εξηγηθούν οι κανόνες του παιχνιδιού και ποιες είναι οι προκλήσεις από την πλευρά της τεχνητής νοημοσύνης να παίξει ένα τέτοιο παιχνίδι. Το Cold War: CIA vs. KGB σχεδιάστηκε από τους David Rakoto και Sebastien Gigaudaut και η πρώτη έκδοση του κυκλοφόρησε από τη Fantasy Flight Games το Είναι ένα παιχνίδι δύο παικτών με κάρτες που συνδυάζει την στρατηγική με την τυχαιότητα και τον τζόγο, με την διάρκεια της κάθε παρτίδας να κυμαίνεται ανάμεσα στα 30 με 60 λεπτά. Παρακάτω παρατίθενται οι κανόνες του παιχνιδιού, σύμφωνα με το επίσημο εγχειρίδιο. COLD WAR: CIA VS. KGB ΕΙΣΑΓΩΓΗ Το τέλος του δεύτερου Παγκοσμίου πολέμου έχει φέρει χάος και σύγχυση στα κράτη του κόσμου, καθώς δύο νέες υπερδυνάμεις - οι ΗΠΑ και η ΕΣΣΔ επιδιώκουν να αποκτήσουν το πάνω χέρι. Στο Cold War: CIA vs. KGB, δύο παίκτες, με τον κάθε ένα να ελέγχει την μία από τις δύο πλευρές αυτής της παγκόσμιας σύγκρουσης, στέλνουν πράκτορες οι οποίοι προσπαθούν να πείσουν τις ξένες κυβερνήσεις να υποστηρίξουν τις σωστές ιδεολογίες. Θα καταφύγουν σε οποιαδήποτε μέσα είναι απαραίτητο ύπουλα κόλπα, δόλια τεχνάσματα και μηχανορραφίες, μέχρι και προδοσία για να εξασφαλίσουν ότι η πλευρά τους θα βγει νικητήρια. Ο ΣΚΟΠΟΣ ΤΟΥ ΑΓΩΝΑ Σε κάθε γύρο του παιχνιδιού, που αντιστοιχεί σε ένα έτος διαμάχης, μία χώρα (που αντιστοιχεί σε μία κάρτα Στόχου (Objective)) γίνεται το επίκεντρο μιας συγκαλυμμένης ιδεολογικής σύγκρουσης μεταξύ των ΗΠΑ και της ΕΣΣΔ. Κάθε παίκτης στέλνει έναν μυστικό πράκτορα (κάρτα Πράκτορα (Πράκτορα)) ως την αιχμή του δόρατος των ενεργειών του, διεισδύοντας και χειραγωγώντας τους ντόπιους (κάρτες Ομάδων (Ομάδας)) για να κερδίσει το πάνω χέρι σε αυτόν τον αγώνα. Με την επικράτηση του, ο παίκτης διεκδικεί την κάρτα Στόχο, η οποία του δίνει κάποιους Πόντους Νίκης (Victory Points). Ο παίκτης που θα μαζέψει πρώτος 100 πόντους νίκης νικάει το παιχνίδι. ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΤΟΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ 41
42 ΚΕΦΑΛΑΙΟ 3: ΤΟ ΠΑΙΓΝΙΟ COLD WAR ΣΤΗΣΙΜΟ Για το στήσιμο του παιχνιδιού ακολουθούνται τα παρακάτω βήματα: 1. Δημιουργία της τράπουλα με τις κάρτες Στόχου: Ανακατεύονται οι κάρτες Στόχου και να τοποθετηθούν ανάποδα στο κέντρο του τραπεζιού για να σχηματιστεί η τράπουλα των καρτών Στόχου. 2. Δημιουργία της τράπουλα με τις κάρτες Ομάδας: Ανακατεύονται οι κάρτες Ομάδας και να τοποθετηθούν ανάποδα στο κέντρο του τραπεζιού για να σχηματιστεί η τράπουλα των καρτών Ομάδας. 3. Επιλογή πλευράς: Κάθε παίκτης διαλέγει είτε τις έξι κάρτες Πράκτορα της CIA είτε τις έξι κάρτες Πράκτορα της KGB και τις τοποθετεί σε μία στοίβα, ανάποδα, μπροστά του για να σχηματίσει το Αρχηγείο (Headquarters). Και οι δύο πλευρές είναι ισάξιες, αλλά αν και οι δύο παίκτες θέλουν την ίδια πλευρά, τότε η ανάθεση γίνεται στην τύχη. 4. Πάρτε τα υπόλοιπα σύνεργα: Ο κάθε παίκτης παίρνει το αντίστοιχο Σύμβολο Κυριαρχίας (Domination Token) (μπλε για την CIA, κόκκινο για την KGB). Το Σύμβολο Ισορροπίας (Balance Token) τοποθετείται δίπλα από την τράπουλα με τις κάρτες Στόχου. 5. Εκκίνηση του παιχνιδιού. Εικόνα 7: Τα Σύμβολα Κυριαρχία και το Σύμβολο Ισορροπίας ΓΥΡΟΙ ΤΟΥ ΠΑΙΧΝΙΔΙΟΥ Κάθε γύρος του παιχνιδιού χωρίζεται σε έξι φάσεις: 1. Ενημέρωση (Briefing) 2. Σχεδιασμός (Planning) 3. Αγώνας Επιρροής (Influence Struggle) 4. Κατάπαυση Πυρός (Cease-fire) 5. Απολογισμός (Debriefing) 6. Ύφεση (Detente) 42 ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΟΤΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ
43 ΚΕΦΑΛΑΙΟ 3: ΤΟ ΠΑΙΓΝΙΟ COLD WAR Κάθε φάση πρέπει να ολοκληρωθεί και από τους δύο παίκτες πριν ξεκινήσει η επόμενη φάση. Η κάθε φάση εξηγείται λεπτομερώς στις παραγράφους που ακολουθούν. Μετά την φάση της Ύφεσης, ο γύρος του παιχνιδιού τελειώνει και ένας νέος γύρος αρχίζει, ξεκινώντας από την φάση της Ενημέρωσης. Οι παίκτες συνεχίζουν να παίζουν το παιχνίδι μέχρι ένας από τους δύο παίκτες να φτάσει τους 100 ή παραπάνω πόντους νίκης. ΦΑΣΗ 1: ΕΝΗΜΕΡΩΣΗ (BRIEFING) Στην φάση της Ενημέρωσης του κάθε γύρου του παιχνιδιού ετοιμάζεται το τραπέζι για τον αγώνα εκείνης της χρονιάς. Τρία είναι τα βήματα που πρέπει να ακολουθηθούν στην φάση της Ενημέρωσης, τα οποία είναι τα εξής: 1. Καθορισμός Στόχου 2. Ανάθεση του Σύμβολου Ισορροπίας. 3. Ανακάτεμα της τράπουλας των Ομάδων. ΒΗΜΑ 1: ΚΑΘΟΡΙΣΜΟΣ ΣΤΟΧΟΥ Αναποδογυρίζεται η κάρτα που βρίσκεται στην κορυφή της τράπουλας με τις κάρτες Στόχου (αφήνεται πάνω στην τράπουλα). Αυτή η κάρτα είναι το αντικείμενο της διαμάχης για αυτόν τον γύρο του παιχνιδιού και ονομάζεται απλά στόχος. Κάθε Στόχος αξίζει από 10 έως 20 πόντους νίκης, ανάλογα με την κάρτα. ΒΗΜΑ 2: ΑΝΑΘΕΣΗ ΤΟΥ ΣΥΜΒΟΛΟΥ ΙΣΟΡΡΟΠΙΑΣ Ο παίκτης με τους λιγότερους πόντους νίκης παίρνει το Σύμβολο Ισορροπίας. Αν υπάρχει ισοπαλία, τότε το Σύμβολο Ισορροπίας πηγαίνει στην πλευρά του παίκτη που έχασε στην φάση της Κατάπαυσης Πυρός του προηγούμενου γύρου. Εάν και οι δύο παίκτες ωστόσο προκάλεσαν Κοινωνική Αναταραχή (civil disorder) στον προηγούμενο γύρο, το Σύμβολο Ισορροπίας μένει με τον τωρινό του ιδιοκτήτη. Στον πρώτο γύρο του παιχνιδιού, το Σύμβολο Ισορροπίας πηγαίνει τυχαία σε έναν από τους δύο παίκτες. Ο παίκτης που έχει το Σύμβολο Ισορροπίας διαλέγει ποιος παίκτης θα παίξει πρώτος στην επόμενη φάση του Αγώνα Επιρροής. ΒΗΜΑ 3: ΑΝΑΚΑΤΕΜΑ ΤΗΣ ΤΡΑΠΟΥΛΑΣ ΤΩΝ ΟΜΑΔΩΝ Ένας από τους δύο παίκτες τοποθετεί πίσω στην τράπουλα όλες τις κάρτες Ομάδας που βρίσκονται στην σωρό με τις πεταμένες κάρτες. Αυτό το βήμα προφανώς παραλείπεται στο πρώτο γύρο του παιχνιδιού, καθώς δεν έχει πεταχτεί καμία κάρτα Ομάδας ακόμα. Σημείωση: Αν οποιοσδήποτε από τους δύο παίκτες έχει χρησιμοποιήσει επιτυχώς τον πράκτορα Αναλυτή του στον προηγούμενο γύρο του παιχνιδιού, τότε πρέπει να κοιτάξει τις 3 κάρτες που βρίσκονται στην κορυφή της τράπουλας με τις Ομάδες και να τις επανατοποθετεί με όποια σειρά θέλει. Παράδειγμα: ο Boris και ο George αποκαλύπτουν το πρώτο τους Στόχο, αναποδογυρίζουν την Cuba και την τοποθετούν πάνω στην τράπουλα με τους ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΤΟΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ 43
44 ΚΕΦΑΛΑΙΟ 3: ΤΟ ΠΑΙΓΝΙΟ COLD WAR Στόχους. Στην συνέχεια αποφασίζουν τυχαία ότι ο George θα πάρει το Σύμβολο Ισορροπίας. Δεν χρειάζεται να ανακατέψουν την τράπουλα με τις Ομάδες, καθώς είναι ο πρώτος τους γύρος. Εικόνα 8: Μία κάρτα Στόχος ΦΑΣΗ 2: ΣΧΕΔΙΑΣΜΟΣ (PLANNING) Στην φάση του Σχεδιασμού, κάθε παίκτης διαλέγει να στείλει κρυφά έναν από τους πράκτορες του στο πεδίο της μάχης να πολεμήσει για τον Σκοπό αυτού του γύρου του παιχνιδιού. Η κάρτα Πράκτορα που ο κάθε παίκτης έχει διαλέξει γίνεται o Πράκτορας Χ για τον υπόλοιπο γύρο του παιχνιδιού. Οι παίκτες τοποθετούν τον Πράκτορας Χ μπροστά τους, γυρισμένο ανάποδα, χωριστά από τις υπόλοιπες κάρτες Πράκτορα που βρίσκονται στο αρχηγείο. Οι παίκτες μπορούν να διαλέξουν για Πράκτορας Χ οποιονδήποτε από τους πράκτορες τους που βρίσκονται στο Αρχηγείο. Ωστόσο, οι πράκτορες που στάλθηκαν σε άδεια στον προηγούμενο γύρο του παιχνιδιού (γιατί βρίσκονταν στο πεδίο της μάχης τον προηγούμενο γύρο, για παράδειγμα) δεν βρίσκονται στο Αρχηγείο και δεν μπορούν να επιλεχθούν σαν Πράκτορας Χ. Ομοίως, οι πράκτορες που έχουν αφανιστεί (λόγω της ατζέντας του Δολοφόνου ή επειδή προκάλεσαν Κοινωνική Αναταραχή) δεν βρίσκονται πλέον μέσα στο παιχνίδι και δεν μπορούν να επιλεχθούν. Σημείωση: Εάν ένας παίκτης χρησιμοποίησε επιτυχώς την ατζέντα του Διπλού Πράκτορα του στον προηγούμενο γύρο, έχει την επιλογή να δει την ταυτότητα του Πράκτορα Χ του αντιπάλου του πριν αποφασίσει τον δικό του Πράκτορα Χ. Μόλις και οι δύο παίκτες έχουν επιλέξει τον Πράκτορα Χ τους για αυτόν τον γύρο, οι πράκτορες που βρίσκονταν σε άδεια επιστρέφουν στο Αρχηγείο, έτοιμοι για ανάθεση στους μελλοντικούς γύρους. Παράδειγμα: o George αποφασίζει να παίξει επιθετικά, επιλέγοντας τον Δολοφόνο σαν τον Πράκτορα Χ του. Τοποθετεί την κάρτα γυρισμένη προς τα κάτω μπροστά του. Ο Boris επιλέγει να ακολουθήσει ένα πιο δόλιο σχέδιο και διαλέγει τον Αρχικατάσκοπο, τοποθετώντας τον και αυτός μπροστά του ανάποδα. 44 ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΟΤΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ
45 ΚΕΦΑΛΑΙΟ 3: ΤΟ ΠΑΙΓΝΙΟ COLD WAR Εικόνα 9: Μία κάρτα Πράκτορα ΦΑΣΗ 3: ΑΓΩΝΑΣ ΕΠΙΡΡΟΗΣ (INFLUENCE STRUGGLE) Κατά την διάρκεια της φάσης του Αγώνα Επιρροής, ο κάθε παίκτης τραβάει κάρτες Ομάδας, μία κάθε φορά, που συνεισφέρουν στους συνολικούς του πόντους επιρροής. Ο κάθε παίκτης προσπαθεί η συνολικό Επιρροή που θα συγκεντρώσει να είναι όσο πιο κοντά γίνεται στην Σταθερότητα του Στόχου, χωρίς ωστόσο να την ξεπερνάει. Ο παίκτης επίσης πρέπει να καταλάβει μέσα από τις πράξεις του αντιπάλου του το σχέδιο του, καθώς η ταυτότητα του Πράκτορα Χ του κάθε παίκτη μπορεί αργότερα να ανατρέψει το αποτέλεσμα του αγώνα. Μήπως ο αντίπαλος προσπαθεί να χάσει επίτηδες γιατί έχει διαλέξει τον Αρχικατάσκοπο; ή μήπως προσπαθεί να ξεγελάσει τον αντίπαλο του να το πιστέψει; Ο παίκτης που έχει στην διάθεση του το Σύμβολο Ισορροπίας αποφασίζει ποιος από τους δύο παίκτες θα ξεκινήσει πρώτος. Σε κάθε γύρο του, ο παίκτης που έχει σειρά πρέπει να διαλέξει μια από τις εξής τρεις ενέργειες: Να στρατολογήσει μια Ομάδα, τραβώντας την κάρτα που βρίσκεται στην κορυφή της τράπουλας με τις κάρτες Ομάδας, και τοποθετώντας την μπροστά του γυρισμένη προς τα πάνω. Να ενεργοποιήσει μια Ομάδα, χρησιμοποιώντας την δύναμη που περιγράφεται πάνω σε μία από τις κάρτες που έχει ήδη μπροστά του. Να πει πάσο, χωρίς να κάνει τίποτα προς το παρόν. Εάν ένας παίκτης δεν έχει καμία Ομάδα μπροστά του, πρέπει αναγκαστικά να στρατολογήσει μία. Δεν μπορεί να ενεργοποιήσει κάποια Ομάδα (προφανώς) ή να πει πάσο. ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΤΟΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ 45
46 ΚΕΦΑΛΑΙΟ 3: ΤΟ ΠΑΙΓΝΙΟ COLD WAR ΣΤΡΑΤΟΛΟΓΗΣΗ ΜΙΑΣ ΟΜΑΔΑΣ Εικόνα 10: Μια κάρτα Ομάδας Για να γίνει στρατολόγηση μιας Ομάδας, ο παίκτης πρέπει να πάρει την κάρτα που βρίσκεται πάνω-πάνω στην τράπουλα με τις Ομάδες και να τη τοποθετήσει μπροστά του γυρισμένη προς τα πάνω. Μία Ομάδα που βρίσκεται πάνω στο τραπέζι μπροστά από κάποιον παίκτη μπορεί να βρίσκεται σε μία από τις δύο καταστάσεις: Έτοιμη ή Κινητοποιημένη. Μία έτοιμη κάρτα Ομάδας είναι τοποθετημένη κάθετα, ενώ μία κινητοποιημένη είναι γυρισμένη στα πλάγια. Όταν μία έτοιμη κάρτα Ομάδας κινητοποιείται, γυρνάει πλάγια και τοποθετείται οριζόντια. Όταν οι κινητοποιημένες κάρτες Ομάδας γίνονται έτοιμες, ξαναγυρνάνε κάθετα. Οι κάρτες πάντα βρίσκονται στην Έτοιμη κατάσταση Και οι έτοιμες και οι κινητοποιημένες κάρτες συνεισφέρουν στους συνολικούς πόντους επιρροής που καθορίζουν ποιος παίκτης κερδίζει τον Στόχο. Ένας παίκτης δεν μπορεί να στρατολογήσει κάποια Ομάδα εάν αυτό θα τον έκανε το πλήθος των καρτών του να ξεπεράσει τον πληθυσμό που αναγράφεται πάνω στον τρέχων Στόχο. Με άλλα λόγια, το πλήθος των Ομάδων του κάθε παίκτη πρέπει πάντα να είναι μικρότερο ή ίσο με το πλήθος των Εικονιδίων Πληθυσμού του Στόχου. Αυτό πρέπει να ισχύει κάτω από όλες τις συνθήκες. ΕΝΕΡΓΟΠΟΙΗΣΗ ΜΙΑΣ ΟΜΑΔΑΣ Αυτή η ενέργεια επιτρέπει σε έναν παίκτη να χρησιμοποιήσει τη δύναμη κάποιας κάρτας Ομάδας που έχει στρατολογήσει προηγουμένως. Πρώτα ο παίκτης κινητοποιεί την κάρτα τις επιλογής του, γυρίζοντας την στα πλάγια. Εάν μία κάρτα είναι ήδη κινητοποιημένη, δεν μπορεί να χρησιμοποιηθεί ξανά, εκτός και αν γυρίσει στην κατάσταση Έτοιμη. 46 ΥΛΟΠΟΙΗΣΗ ΠΡΑΚΟΤΡΑ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ ΓΙΑ ΠΑΙΓΝΙΑ ΚΑΡΤΩΝ
Τεχνητή Νοημοσύνη. 6η διάλεξη ( ) Ίων Ανδρουτσόπουλος.
Τεχνητή Νοημοσύνη 6η διάλεξη (2016-17) Ίων Ανδρουτσόπουλος http://www.aueb.gr/users/ion/ 1 Οι διαφάνειες αυτής της διάλεξης βασίζονται στα βιβλία Τεχνητή Νοημοσύνη των Βλαχάβα κ.ά., 3η έκδοση, Β. Γκιούρδας
Θεωρία Λήψης Αποφάσεων
Θεωρία Λήψης Αποφάσεων Ενότητα 8: Αναζήτηση με Αντιπαλότητα Μπεληγιάννης Γρηγόριος Σχολή Οργάνωσης και Διοίκησης Επιχειρήσεων Τμήμα Διοίκησης Επιχειρήσεων Αγροτικών Προϊόντων & Τροφίμων (Δ.Ε.Α.Π.Τ.) Αναζήτηση
ΑΥΤΟΝΟΜΟΙ ΠΡΑΚΤΟΡΕΣ. ΑΝΑΦΟΡΑ ΕΡΓΑΣΙΑΣ Othello-TD Learning. Βόλτσης Βαγγέλης Α.Μ
ΑΥΤΟΝΟΜΟΙ ΠΡΑΚΤΟΡΕΣ ΑΝΑΦΟΡΑ ΕΡΓΑΣΙΑΣ Othello-TD Learning Βόλτσης Βαγγέλης Α.Μ. 2011030017 Η παρούσα εργασία πραγματοποιήθηκε στα πλαίσια του μαθήματος Αυτόνομοι Πράκτορες και σχετίζεται με λήψη αποφάσεων
Επίλυση Προβλημάτων 1
Επίλυση Προβλημάτων 1 Επίλυση Προβλημάτων Περιγραφή Προβλημάτων Αλγόριθμοι αναζήτησης Αλγόριθμοι τυφλής αναζήτησης Αναζήτηση πρώτα σε βάθος Αναζήτηση πρώτα σε πλάτος (ΒFS) Αλγόριθμοι ευρετικής αναζήτησης
Ασκήσεις μελέτης της 6 ης διάλεξης
Οικονομικό Πανεπιστήμιο Αθηνών, Τμήμα Πληροφορικής Μάθημα: Τεχνητή Νοημοσύνη, 2016 17 Διδάσκων: Ι. Ανδρουτσόπουλος Ασκήσεις μελέτης της 6 ης διάλεξης 6.1. (α) Το mini-score-3 παίζεται όπως το score-4,
Αναζήτηση με Αντιπαλότητα
Αναζήτηση με Αντιπαλότητα Μανόλης Κουμπαράκης Τεχνητή Νοημοσύνη 1 Αναζήτηση με Αντιπαλότητα Όταν σε ένα περιβάλλον έχουμε περισσότερους από ένα πράκτορες, τότε κάθε πράκτορας πρέπει να λαμβάνει υπόψη του
Θεωρία Παιγνίων Δρ. Τασσόπουλος Ιωάννης
Θεωρία Παιγνίων Δρ. Τασσόπουλος Ιωάννης 1 η Διάλεξη Ορισμός Θεωρίας Παιγνίων και Παιγνίου Κατηγοριοποίηση παιγνίων Επίλυση παιγνίου Αξία (τιμή) παιγνίου Δίκαιο παίγνιο Αναπαράσταση Παιγνίου Με πίνακα Με
Επίλυση προβληµάτων. Περιγραφή προβληµάτων Αλγόριθµοι αναζήτησης Αλγόριθµοι τυφλής αναζήτησης Αλγόριθµοι ευρετικής αναζήτησης
Επίλυση προβληµάτων Περιγραφή προβληµάτων Αλγόριθµοι αναζήτησης Αλγόριθµοι τυφλής αναζήτησης Αλγόριθµοι ευρετικής αναζήτησης! Παιχνίδια δύο αντιπάλων Προβλήµατα ικανοποίησης περιορισµών Γενικά " Ντετερµινιστικά
Ε ανάληψη. Προβλήµατα ικανο οίησης εριορισµών. ορισµός και χαρακτηριστικά Ε ίλυση ροβληµάτων ικανο οίησης εριορισµών
ΠΛΗ 405 Τεχνητή Νοηµοσύνη Αναζήτηση µε Αντι αλότητα Adversarial Search Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υ ολογιστών Πολυτεχνείο Κρήτης Ε ανάληψη Προβλήµατα ικανο οίησης εριορισµών ορισµός και
Τεχνητή Νοημοσύνη (ΥΠ23) 6 ο εξάμηνο Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ουρανία Χατζή
Τεχνητή Νοημοσύνη (ΥΠ23) 6 ο εξάμηνο Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ουρανία Χατζή raniah@hua.gr 1 Παίγνια Δύο Αντιπάλων Τα προβλήματα όπου η εξέλιξη των καταστάσεων εξαρτάται
Αλγόριθμοι Αναζήτησης σε Παίγνια Δύο Αντιπάλων
Τεχνητή Νοημοσύνη 06 Αλγόριθμοι Αναζήτησης σε Παίγνια Δύο Αντιπάλων Εισαγωγικά (1/3) Τα προβλήματα όπου η εξέλιξη των καταστάσεων εξαρτάται από δύο διαφορετικά σύνολα τελεστών μετάβασης που εφαρμόζονται
Κεφάλαιο 5. Αλγόριθµοι Αναζήτησης σε Παίγνια ύο Αντιπάλων. Τεχνητή Νοηµοσύνη - Β' Έκδοση
Κεφάλαιο 5 Αλγόριθµοι Αναζήτησης σε Παίγνια ύο Αντιπάλων Τεχνητή Νοηµοσύνη - Β' Έκδοση Ι. Βλαχάβας, Π. Κεφαλάς, Ν. Βασιλειάδης, Φ. Κόκκορας, Η. Σακελλαρίου Αλγόριθµοι Αναζήτησης σε Παίγνια ύο Αντιπάλων
Ε ανάληψη. Παιχνίδια παιχνίδια ως αναζήτηση. Βέλτιστες στρατηγικές στρατηγική minimax. Βελτιώσεις κλάδεµα α-β
ΠΛΗ 405 Τεχνητή Νοηµοσύνη Παιχνίδια Τύχης Παιχνίδια Ατελούς Πληροφόρησης Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υ ολογιστών Πολυτεχνείο Κρήτης Παιχνίδια παιχνίδια ως αναζήτηση Βέλτιστες στρατηγικές
ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ Τελικές εξετάσεις Πέμπτη 27 Ιουνίου 2013 10:003:00 Έστω το πάζλ των οκτώ πλακιδίων (8-puzzle)
Πληροφοριακά Συστήματα Διοίκησης (ΜΒΑ) Ενότητα 8: Παίγνια πλήρους και ελλιπούς πληροφόρησης
Πληροφοριακά Συστήματα Διοίκησης (ΜΒΑ) Ενότητα 8: Παίγνια πλήρους και ελλιπούς πληροφόρησης Μπεληγιάννης Γρηγόριος Σχολή Οργάνωσης και Διοίκησης Επιχειρήσεων Τμήμα Διοίκησης Επιχειρήσεων Αγροτικών Προϊόντων
ΠΛΗ 405 Τεχνητή Νοηµοσύνη 2007. Ε ανάληψη. Προβλήµατα ικανο οίησης εριορισµών ορισµός και χαρακτηριστικά
ΠΛΗ 405 Τεχνητή Νοηµοσύνη Αναζήτηση µε Αντι αλότητα Adversarial Search Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υ ολογιστών Πολυτεχνείο Κρήτης Ε ανάληψη Προβλήµατα ικανο οίησης εριορισµών ορισµός και
Τσάπελη Φανή ΑΜ: 2004030113. Ενισχυτική Μάθηση για το παιχνίδι dots. Τελική Αναφορά
Τσάπελη Φανή ΑΜ: 243113 Ενισχυτική Μάθηση για το παιχνίδι dots Τελική Αναφορά Περιγραφή του παιχνιδιού Το παιχνίδι dots παίζεται με δύο παίχτες. Έχουμε έναν πίνακα 4x4 με τελείες, και σκοπός του κάθε παίχτη
Πληροφορική 2. Τεχνητή νοημοσύνη
Πληροφορική 2 Τεχνητή νοημοσύνη 1 2 Τι είναι τεχνητή νοημοσύνη; Τεχνητή νοημοσύνη (AI=Artificial Intelligence) είναι η μελέτη προγραμματισμένων συστημάτων τα οποία μπορούν να προσομοιώνουν μέχρι κάποιο
Συστηματική Αναζήτηση και Ενισχυτική Μάθηση για το Επιτραπέζιο Παιχνίδι Backgammon
Συστηματική Αναζήτηση και Ενισχυτική Μάθηση για το Επιτραπέζιο Παιχνίδι Backgammon Στέλιος Τσιγδινός Σχολή Ηλεκτρονικών Μηχανικών & Μηχανικών Υπολογιστών Πολυτεχνείο Κρήτης Εξεταστική Επιτροπή: Αν. Καθ.
ΑΣΚΗΣΕΙΣ ΓΙΑ ΤΟ ΕΡΓΑΣΤΗΡΙΟ 3
Version 1.0 (16/03/2017) Σχολή Τεχνολογικών Εφαρμογών (ΣΤΕΦ) Τμήμα Μηχανικών Πληροφορικής Τ.Ε. Διδάσκων: Γκόγκος Χρήστος Μάθημα: Τεχνητή Νοημοσύνη (εργαστήριο Δ εξαμήνου) Ακαδημαϊκό έτος 2016-2017 εαρινό
ΠΛΗ 405 Τεχνητή Νοηµοσύνη 2006. Ε ανάληψη. πεπερασµένα χρονικά περιθώρια ανά κίνηση. απευθείας αξιολόγηση σε ενδιάµεσους κόµβους
ΠΛΗ 405 Τεχνητή Νοηµοσύνη Παιχνίδια Τύχης Λογικοί Πράκτορες Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υ ολογιστών Πολυτεχνείο Κρήτης Ε ανάληψη Περιορισµοί χρόνου πεπερασµένα χρονικά περιθώρια ανά κίνηση
Αυτόνομοι Πράκτορες. Εργασία εξαμήνου. Μάθηση του παιχνιδιού British square με χρήση Temporal Difference(TD) Κωνσταντάκης Γιώργος
Αυτόνομοι Πράκτορες Εργασία εξαμήνου Μάθηση του παιχνιδιού British square με χρήση Temporal Difference(TD) Κωνσταντάκης Γιώργος 2010030090 Περιγραφή του παιχνιδιού Το British square είναι ένα επιτραπέζιο
Τεχνητή Νοημοσύνη. 3η διάλεξη ( ) Ίων Ανδρουτσόπουλος.
Τεχνητή Νοημοσύνη 3η διάλεξη (2016-17) Ίων Ανδρουτσόπουλος http://www.aueb.gr/users/ion/ 1 Οι διαφάνειες αυτής της διάλεξης βασίζονται στα βιβλία Τεχνητή Νοημοσύνη των Βλαχάβα κ.ά., 3η έκδοση, Β. Γκιούρδας
ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ - ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ Θεωρία Παιγνίων και Αποφάσεων Διδάσκων: Ε. Μαρκάκης, Εαρινό εξάμηνο 2015
ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ - ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ Θεωρία Παιγνίων και Αποφάσεων Διδάσκων: Ε. Μαρκάκης, Εαρινό εξάμηνο 2015 Λύσεις 2η σειράς ασκήσεων Προθεσμία παράδοσης: 18 Μαίου 2015 Πρόβλημα 1. (14
Το Κ2 είναι ένα παιχνίδι για 1 έως 5 παίκτες, ηλικίας 8 ετών και άνω, με διάρκεια περίπου 60 λεπτά.
ΟΔΗΓΙΕΣ Το Κ2 είναι το δεύτερο ψηλότερο βουνό στον κόσμο (μετά το Έβερεστ) με ύψος 8.611 μέτρα από τη στάθμη της θάλασσας. Θεωρείται, επίσης, ένα από τα δυσκολότερα βουνά άνω των 8.000 μέτρων. Το Κ2 ποτέ
Τεχνητή Νοημοσύνη. 2η διάλεξη (2015-16) Ίων Ανδρουτσόπουλος. http://www.aueb.gr/users/ion/
Τεχνητή Νοημοσύνη 2η διάλεξη (2015-16) Ίων Ανδρουτσόπουλος http://www.aueb.gr/users/ion/ 1 Οι διαφάνειες αυτής της διάλεξης βασίζονται στα βιβλία: Τεχνητή Νοημοσύνη των Βλαχάβα κ.ά., 3η έκδοση, Β. Γκιούρδας
Τεχνητή Νοημοσύνη (ΤΝ)
Τεχνητή Νοημοσύνη (ΤΝ) (Artificial Intelligence (AI)) Η ΤΝ είναι ένα από τα πιο νέα ερευνητικά πεδία. Τυπικά ξεκίνησε το 1956 στη συνάντηση μερικών επιφανών επιστημόνων, όπως ο John McCarthy, ο Marvin
Ασκήσεις μελέτης της 4 ης διάλεξης. ), για οποιοδήποτε μονοπάτι n 1
Οικονομικό Πανεπιστήμιο Αθηνών, Τμήμα Πληροφορικής Μάθημα: Τεχνητή Νοημοσύνη, 2016 17 Διδάσκων: Ι. Ανδρουτσόπουλος Ασκήσεις μελέτης της 4 ης διάλεξης 4.1. (α) Αποδείξτε ότι αν η h είναι συνεπής, τότε h(n
Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική II. Ενότητα 9 : Τεχνητή νοημοσύνη. Δρ. Γκόγκος Χρήστος
1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Πληροφορική II Ενότητα 9 : Τεχνητή νοημοσύνη Δρ. Γκόγκος Χρήστος 2 Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ηπείρου Τμήμα Χρηματοοικονομικής & Ελεγκτικής
[ΠΛΗ 417] Τεχνητή Νοημοσύνη. Project Εξαμήνου ΠΟΛΥΤΕΧΝΕΙΟ ΚΡΗΤΗΣ
[ΠΛΗ 417] Τεχνητή Νοημοσύνη Project Εξαμήνου Γεωργαρά Αθηνά (A.M. 2011030065) ΠΟΛΥΤΕΧΝΕΙΟ ΚΡΗΤΗΣ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ & ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΕΑΡΙΝΟ ΕΞΑΜΗΝΟ 2015-2016 Στη εργασία εξαμήνου αυτή
ΙΑ ΟΧΙΚΕΣ ΒΕΛΤΙΩΣΕΙΣ
Tel.: +30 2310998051, Αριστοτέλειο Πανεπιστήμιο Θεσσαλονίκης Σχολή Θετικών Επιστημών Τμήμα Φυσικής 541 24 Θεσσαλονίκη Καθηγητής Γεώργιος Θεοδώρου Ιστοσελίδα: http://users.auth.gr/theodoru ΙΑ ΟΧΙΚΕΣ ΒΕΛΤΙΩΣΕΙΣ
Θεωρία παιγνίων Δημήτρης Χριστοφίδης Εκδοση 1η: Παρασκευή 3 Απριλίου 2015. Παραδείγματα Παράδειγμα 1. Δυο άτομα παίζουν μια παραλλαγή του σκακιού όπου σε κάθε βήμα ο κάθε παίκτης κάνει δύο κανονικές κινήσεις.
Οδηγίες. Θα το παίξεις... και θα πεις κι ένα τραγούδι!
Οδηγίες To Sing It! είναι ένα νέο παιχνίδι παρέας που δοκιμάζει τις γνώσεις σας στο ελληνικό τραγούδι! Μέσα από λέξεις που σας δίνονται, καλείστε να βρείτε τραγούδια που τις περιέχουν. Θα πείτε εσείς τα
5 ο Φύλλο ασκήσεων για την Δομή επανάληψης Εισαγωγή στις Αρχές της Επιστήμης Η/Υ.
5 ο Φύλλο ασκήσεων για την Δομή επανάληψης Εισαγωγή στις Αρχές της Επιστήμης Η/Υ. 1η Σε έναν διεθνή διαγωνισμό Ρομποτικής μετέχουν 40 ομάδες από διάφορες χώρες (με πολλές ομάδες από κάθε χώρα). Να αναπτύξετε
Κεφάλαιο 29 Θεωρία παιγνίων
HA. VAIAN Μικροοικονομική Μια σύγχρονη προσέγγιση 3 η έκδοση Εκδόσεις Κριτική Κεφάλαιο 29 Θεωρία παιγνίων Ύλη για τη Μίκρο ΙΙ: κεφάλαιο 29.1, 29.2, 29.4, 29.7, 29.8 Κεφάλαιο 29 Θεωρία παιγνίων Ταυτόχρονα
Αλγόριθμοι Τυφλής Αναζήτησης
Τεχνητή Νοημοσύνη 04 Αλγόριθμοι Τυφλής Αναζήτησης Αλγόριθμοι Τυφλής Αναζήτησης (Blind Search Algorithms) Εφαρμόζονται σε προβλήματα στα οποία δεν υπάρχει πληροφορία που να επιτρέπει αξιολόγηση των καταστάσεων.
Κεφ. 9 Ανάλυση αποφάσεων
Κεφ. 9 Ανάλυση αποφάσεων Η θεωρία αποφάσεων έχει ως αντικείμενο την επιλογή της καλύτερης στρατηγικής. Τα αποτελέσματα κάθε στρατηγικής εξαρτώνται από παράγοντες, οι οποίοι μπορεί να είναι καταστάσεις
Αυτόνομοι Πράκτορες Μαριάνος Νίκος Αυτόνομοι Πράκτορες. Χειμερινό Εξάμηνο 2016 Κωδικός Μαθήματος ΠΛΗ513 Πρότζεκτ Μαθήματος
Αυτόνομοι Πράκτορες Χειμερινό Εξάμηνο 2016 Κωδικός Μαθήματος ΠΛΗ513 Πρότζεκτ Μαθήματος Thit O C Gm with ifocmt ig (Ενισχυτική Μάθηση στο παιχνίδι τριάντα μια) Μία εργασία του Νίκου Μαριάνου Α.Μ. 2011030091
Θεωρία Παιγνίων και Αποφάσεων. Ενότητα 5: Εύρεση σημείων ισορροπίας σε παίγνια μηδενικού αθροίσματος. Ε. Μαρκάκης. Επικ. Καθηγητής
Θεωρία Παιγνίων και Αποφάσεων Ενότητα 5: Εύρεση σημείων ισορροπίας σε παίγνια μηδενικού αθροίσματος Ε. Μαρκάκης Επικ. Καθηγητής Περίληψη Παίγνια μηδενικού αθροίσματος PessimisIc play Αμιγείς max-min και
Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων
Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων Άσκηση 1 α) Η δομή σταθμισμένης ένωσης με συμπίεση διαδρομής μπορεί να τροποποιηθεί πολύ εύκολα ώστε να υποστηρίζει τις
Τεχνητή Νοημοσύνη (ΥΠ23) 6 ο εξάμηνο Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ουρανία Χατζή
Τεχνητή Νοημοσύνη (ΥΠ23) 6 ο εξάμηνο Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ουρανία Χατζή raniah@hua.gr 1 Αναζήτηση Δοθέντος ενός προβλήματος με περιγραφή είτε στον χώρο καταστάσεων
Ασκήσεις. Ιωάννα Καντζάβελου. Τµήµα Μηχανικών Πληροφορικής και Υπολογιστών 1
Ασκήσεις Ιωάννα Καντζάβελου Τµήµα Μηχανικών Πληροφορικής και Υπολογιστών 1 1. Επιλογή Διαδρομής 2. Παραλλαγή του Matching Pennies 3. Επίλυση Matching Pennies με Βέλτιστες Αποκρίσεις 4. Επίλυση BoS με Βέλτιστες
Β. Βασιλειάδης Αν. Καθηγητής. Επιχειρησιακή Ερευνα Διάλεξη 6 η - Θεωρεία Παιγνίων
Β. Βασιλειάδης Αν. Καθηγητής Επιχειρησιακή Ερευνα Διάλεξη 6 η - Θεωρεία Παιγνίων Περιεχόμενα Θεωρία Αποφάσεων o Αποφάσεις χωρίς πιθανότητα o Αποφάσεις με πιθανότητα Θεωρία Παιγνίων o Παίγνια Μηδενικού
Πατώντας την επιλογή αυτή, ανοίγει ένα παράθυρο που έχει την ίδια μορφή με αυτό που εμφανίζεται όταν δημιουργούμε μία μεταβλητή.
Λίστες Τι είναι οι λίστες; Πολλές φορές στην καθημερινή μας ζωή, χωρίς να το συνειδητοποιούμε, χρησιμοποιούμε λίστες. Τέτοια παραδείγματα είναι η λίστα του super market η οποία είναι ένας κατάλογος αντικειμένων
Slalom Race Computer Game on Scratch
Slalom Race Computer Game on Scratch Μπογιατζή Ελισάβετ ¹, Μεταξά Παυλίνα², Νεστοροπούλου Ευσεβεία³, Μαρόγλου Ευαγγελία 4 1 boelisabet@gmail.com 2 pavlinamet2@gmail.com 3 makis.nestoro@hotmail.com 4 euaggeliam2000@gmail.com
Ασκήσεις ανακεφαλαίωσης στο μάθημα Τεχνητή Νοημοσύνη
Ασκήσεις ανακεφαλαίωσης στο μάθημα Τεχνητή Νοημοσύνη Τμήμα Μηχανικών Πληροφορικής ΤΕ (ΤΕΙ Ηπείρου) Τυφλή αναζήτηση Δίνεται το ακόλουθο κατευθυνόμενο γράφημα 1. Ο κόμβος αφετηρία είναι ο Α και ο κόμβος
ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ
ΘΕΜΑ 1 ο (2.5 µονάδες) ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ Τελικές εξετάσεις Παρασκευή 28 Σεπτεµβρίου 2007 ιάρκεια: 13:00-16:00
Δυναμικές Δομές Δεδομένων Λίστες Δένδρα - Γράφοι
Δυναμικές Δομές Δεδομένων Λίστες Δένδρα - Γράφοι Κ Ο Τ Ι Ν Η Ι Σ Α Β Ε Λ Λ Α Ε Κ Π Α Ι Δ Ε Υ Τ Ι Κ Ο Σ Π Λ Η Ρ Ο Φ Ο Ρ Ι Κ Η Σ Π Ε 8 6 Ν Ε Ι Ρ Ο Σ Α Ν Τ Ω ΝΙ Ο Σ Ε Κ Π Α Ι Δ Ε Υ Τ Ι Κ Ο Σ Π Λ Η Ρ Ο Φ Ο
EMOJITO! 7 Δίσκοι Ψηφοφορίας. 100 Κάρτες Συναισθημάτων. 1 Ταμπλό. 7 Πιόνια παικτών. 2-7 Παίκτες
o Emojito! είναι ένα παιχνίδι παρέας, για 2 έως 14 άτομα, όπου οι παίκτες προσπαθούν να εκφράσουν συναισθήματα που απεικονίζονται σε κάρτες, είτε χρησιμοποιώντας το πρόσωπό τους, είτε ήχους ή και τα 2.
Θεωρία Παιγνίων Δρ. Τασσόπουλος Ιωάννης
Θεωρία Παιγνίων Δρ. Τασσόπουλος Ιωάννης 2 η Διάλεξη Παίγνια ελλιπούς πληροφόρησης Πληροφοριακά σύνολα Κανονική μορφή παιγνίου Ισοδύναμες στρατηγικές Παίγνια συνεργασίας και μη συνεργασίας Πεπερασμένα και
Δραστηριότητα: Εγκλεισμός
Δραστηριότητα: Εγκλεισμός Ηλικίες στις οποίες έχει χρησιμοποιηθεί με επιτυχία: Προαπαιτούμενες Ικανότητες: Χρόνος: Εστίαση Μέγεθος Ομάδας 11 - ενήλικες Καμία Τι είναι αλγόριθμος Αλγόριθμοι αναζήτησης:
Επίλυση προβληµάτων. Αλγόριθµοι Αναζήτησης
Επίλυση προβληµάτων! Περιγραφή προβληµάτων Αλγόριθµοι αναζήτησης Αλγόριθµοι τυφλής αναζήτησης Αλγόριθµοι ευρετικής αναζήτησης Παιχνίδια δύο αντιπάλων Προβλήµατα ικανοποίησης περιορισµών Γενικά " Τεχνητή
Η Μηχανική Μάθηση στο Σχολείο: Μια Προσέγγιση για την Εισαγωγή της Ενισχυτικής Μάθησης στην Τάξη
6 ο Πανελλήνιο Συνέδριο «Διδακτική της Πληροφορικής» Φλώρινα, 20-22 Απριλίου 2012 Η Μηχανική Μάθηση στο Σχολείο: Μια Προσέγγιση για την Εισαγωγή της Ενισχυτικής Μάθησης στην Τάξη Σάββας Νικολαΐδης 1 ο
Chess Academy Free Lessons Ακαδημία Σκάκι Δωρεάν Μαθήματα. Οι κινήσεις των κομματιών Σκοπός της παρτίδας, το Ματ Πατ Επιμέλεια: Γιάννης Κατσίρης
Οι κινήσεις των κομματιών Σκοπός της παρτίδας, το Ματ Πατ Επιμέλεια: Γιάννης Κατσίρης Παρατήρηση: Μόνο σε αυτό το μάθημα όταν λέμε κομμάτι εννοούμε κομμάτι ή πιόνι και όταν λέμε κομμάτια εννοούμε κομμάτια
Σχεδιασμός Ψηφιακών Εκπαιδευτικών Εφαρμογών ΙI
Σχεδιασμός Ψηφιακών Εκπαιδευτικών Εφαρμογών ΙI Εργασία 1 ΣΤΟΙΧΕΙΑ ΦΟΙΤΗΤΡΙΑΣ: Τσελίγκα Αρετή, 1312009161, Στ εξάμηνο, κατεύθυνση: Εκπαιδευτική Τεχνολογία και Διαπολιτισμική Επικοινωνία Το γνωστικό αντικείμενο
ΠΕΡΙΕΧΟΜΕΝΑ ΠΡΟΕΤΟΙΜΑΣΙΑ. 15 Δείκτες Δημάρχου. 30 Δείκτες Επιρροής. 15 Δείκτες Δωροδοκίας. 1 Πιόνι Εκτελεστή. 21 Κύβοι Αξίας.
Εποχή της ποταπαγόρευσης στη Νέα Υόρκη. Αντίπαλες συμμορίες χρησιμοποιούν την επιρροή τους δωροδοκώντας πολιτικούς, λειτουργώντας καζίνο, πουλώντας λαθραία ποτά και κερδίζοντας την εύνοια διεφθαρμένων
Τεχνητή Νοημοσύνη. 4η διάλεξη ( ) Ίων Ανδρουτσόπουλος.
Τεχνητή Νοημοσύνη 4η διάλεξη (2016-17) Ίων Ανδρουτσόπουλος http://www.aueb.gr/users/ion/ 1 Οι διαφάνειες αυτής της διάλεξης βασίζονται κυρίως στα βιβλία Τεχνητή Νοημοσύνη των Βλαχάβα κ.ά., 3η έκδοση, Β.
1. Μία συνάρτηση δεν μπορεί να έχει παραπάνω από μία παραμέτρους.
1ΗΣ ΣΕΛΙΔΑΣ Κυριακή 12 Μαΐου 2019 Προσομοιωμένο διαγώνισμα στο μάθημα Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Προσανατολισμού Περιφερειακή Διεύθυνση Α/θμιας & Β/θμιας Εκπαίδευσης Νοτίου Αιγαίου
Παράδειγμα 2. Λύση & Επεξηγήσεις. Τέλος_επανάληψης Εμφάνισε "Ναι" Τέλος Α2
Διδακτική πρόταση ΕΝΟΤΗΤΑ 2η, Θέματα Θεωρητικής Επιστήμης των Υπολογιστών Κεφάλαιο 2.2. Παράγραφος 2.2.7.4 Εντολές Όσο επανάλαβε και Μέχρις_ότου Η διαπραγμάτευση των εντολών επανάληψης είναι σημαντικό
Αλγόριθμοι και πολυπλοκότητα: 4 η σειρά ασκήσεων ΣΗΜΜΥ - Ε.Μ.Π.
Αλγόριθμοι και πολυπλοκότητα: 4 η σειρά ασκήσεων CO.RE.LAB. ΣΗΜΜΥ - Ε.Μ.Π. Άσκηση 1 η : Παιχνίδι επιλογής ακμών Έχουμε ένα ακυκλικό κατευθυνόμενο γράφο, μια αρχική κορυφή και δυο παίκτες. Οι παίκτες διαδοχικά
Γιώργος Γκούμας. Τα πρώτα σκακιστικά βήματα του παιδιού
Γιώργος Γκούμας Τα πρώτα σκακιστικά βήματα του παιδιού Περιεχόμενα Παρουσίαση της Σκακιέρας... 7 Κινήσεις Κομματιών... 10 Πύργος, Αξιωματικός & Βασίλισσα...10 Άλογο και Βασιλιάς...14 Πιόνι...18 Αξία των
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ 2015-2016 Θέμα Α Α1. Να γράψετε στο τετράδιό σας τον αριθμό καθεμιάς από τις προτάσεις 1-4 και δίπλα τη λέξη ΣΩΣΤΟ,
Αναζήτηση με αντιπαλότητα (Adversarial Search)
Σχολή Τεχνολογικών Εφαρμογών (ΣΤΕΦ) Τμήμα Μηχανικών Πληροφορικής Τ.Ε. Διδάσκων: Γκόγκος Χρήστος Μάθημα: Τεχνητή Νοημοσύνη (εργαστήριο Δ εξαμήνου) Ακαδημαϊκό έτος 2016-2017 εαρινό εξάμηνο Αναζήτηση με αντιπαλότητα
ΕΘΝΙΚΟ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ
ΕΘΝΙΚΟ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ Καθηγητής : Κουμπαράκης Μανόλης Ημ/νία παράδοσης: 11/01/2011 Ονομ/μο φοιτητή : Μπεγέτης Νικόλαος Α.Μ.:
Κυριαρχία και μεικτές στρατηγικές Μεικτές στρατηγικές και κυριαρχία Είδαμε ότι μια στρατηγική του παίκτη i είναι κυριαρχούμενη, αν υπάρχει κάποια άλλη
Θεωρία παιγνίων: Μεικτές στρατηγικές και Ισορροπία Nash Κώστας Ρουμανιάς Ο.Π.Α. Τμήμα Δ. Ε. Ο. Σ. 18 Μαρτίου 2012 Κώστας Ρουμανιάς (Δ.Ε.Ο.Σ.) Μεικτές στρατηγικές 18 Μαρτίου 2012 1 / 9 Κυριαρχία και μεικτές
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ 12 η εβδομάδα Κεφάλαιο 11 Τεχνητή νοημοσύνη Τεχνητή νοημοσύνη 11.1 Νοημοσύνη και μηχανές 11.2 Αντίληψη 11.3 Συλλογισμός 11.4 Άλλοι τομείς της έρευνας 11.5 Τεχνητά νευρωνικά δίκτυα
1 κεντρικό ταμπλό. 1 εγχειρίδιο οδηγιών. Κύβοι μεταναστών. 25 Ιρλανδοί 25 Άγγλοι 25 Γερμανοί 25 Ιταλοί. Δείκτες πολιτικής εύνοιας
Tammany Hall ήταν η πολιτική οργάνωση που κυριαρχούσε στην πολιτική της Νέας Υόρκης, οργανώνοντας τους μεταναστευτικούς πληθυσμούς. Καθώς η επιρροή της οργάνωσης εκτείνονταν από την ίδρυσή της το 1790
ΠΑΙΓΝΙΑ Παιχνίδια Γενική Θεώρηση μεγιστοποιήσει την πιθανότητά
ΠΑΙΓΝΙΑ Παιχνίδια Γενική Θεώρηση: Έστω ότι έχουμε τους παίκτες Χ και Υ. Ο κάθε παίκτης, σε κάθε κίνηση που κάνει, προσπαθεί να μεγιστοποιήσει την πιθανότητά του να κερδίσει. Ο Χ σε κάθε κίνηση που κάνει
Περιεχόμενα του Παιχνιδιού
Ε υρώπη, 1347. Μεγάλη καταστροφή πρόκειται να χτυπήσει. Ο Μαύρος Θάνατος πλησιάζει την Ευρώπη και μέσα στα επόμενα 4-5 χρόνια ο πληθυσμός της θα μείνει μισός. Οι παίκτες αποικούν στις διάφορες περιοχές
Εργαστήριο Επεξεργασίας Πληροφορίας και Υπολογισμών Τομέας Ηλεκτρονικής και Υπολογιστών. ΤΗΜΜΥ Α.Π.Θ Πέμπτη 11 / 12 / 2014 ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ
Εργαστήριο Επεξεργασίας Πληροφορίας και Υπολογισμών Τομέας Ηλεκτρονικής και Υπολογιστών 5 o Εξάμηνο ΤΗΜΜΥ Α.Π.Θ 2014-2015 Πέμπτη 11 / 12 / 2014 ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ DS Gomoku Part 3 MinMax Algorithm (0,5 βαθμοί)
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ 2013-2014
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ 2013-2014 Επιμέλεια: Ομάδα Διαγωνισμάτων από το Στέκι των Πληροφορικών Θέμα Α A1. Να γράψετε στο τετράδιό σας τους
32 κάρτες-πόλης 9 κάρτες-χαρακτήρων 5 κάρτες-αστυνομίας
Ένα παιχνίδι του Alain Ollier Εικονογράφηση του Tony Rochon 2-6 παίκτες, ηλικία 10+, διάρκεια 20-60 ΠΕΡΙΕΧΟΜΕΝΑ 32 κάρτες-πόλης 9 κάρτες-χαρακτήρων 5 κάρτες-αστυνομίας 1 διπλή, 2 ασημένιες, 2 χρυσές 4
ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ Γλώσσες & Τεχνικές 4 ο Εξάμηνο. - Ενότητα 1 - Δημοσθένης Σταμάτης http://www.it.teithe.gr/~demos
Γλώσσες & Τεχνικές 4 ο Εξάμηνο - Ενότητα 1 - Εισαγωγή στην Τεχνητή Νοημοσύνη Δημοσθένης Σταμάτης http://www.it.teithe.gr/~demos Τμήμα Πληροφορικής A.T.E.I. ΘΕΣΣΑΛΟΝΙΚΗΣ Rethinking University Teaching!!!
Δεύτερο πακέτο ασκήσεων
ΕΚΠΑ Τμήμα Οικονομικών Επιστημών Μικροοικονομική Θεωρία ΙΙ Εαρινό εξάμηνο Ακαδ. έτους 08-09 Αν. Παπανδρέου, Φ. Κουραντή, Ηρ. Κόλλιας Δεύτερο πακέτο ασκήσεων Προθεσμία παράδοσης Παρασκευή 0 Μαϊου. Θα υπάρξει
Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος
Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος Χιωτίδης Γεώργιος Τμήμα Λογιστικής και Χρηματοοικονομικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης
Blackjack: Στρατηγική, συμβουλές και τρόπος παιχνιδιού - ΚΑΛΑΜΠΑΚΑ CITY KALAMPAKA METEOR
Blackjack: Στρατηγική, συμβουλές και τρόπος παιχνιδιού - ΚΑΛΑΜΠΑΚΑ CITY KALAMPAKA METEOR Τελευταία μέρα του έτους σήμερα, το κουπόνι του πάμε στοίχημα είναι ιδιαιτέρως φτωχό, έτσι δεν θα ασχοληθούμε με
ΥΣ02 Τεχνητή Νοημοσύνη Χειμερινό Εξάμηνο
ΥΣ02 Τεχνητή Νοημοσύνη Χειμερινό Εξάμηνο 2010-2011 Πρώτη Σειρά Ασκήσεων (20% του συνολικού βαθμού στο μάθημα, Άριστα = 390 μονάδες) Ημερομηνία Ανακοίνωσης: 6/10/2010 Ημερομηνία Παράδοσης: 15/11/2010 σύμφωνα
Αυτόνομοι Πράκτορες. Εργασία εξαμήνου. Value Iteration και Q- Learning για Peg Solitaire
Αυτόνομοι Πράκτορες Εργασία εξαμήνου Value Iteration και Q- Learning για Peg Solitaire Μαρίνα Μαυρίκου 2007030102 1.Εισαγωγικά για το παιχνίδι Το Peg Solitaire είναι ένα παιχνίδι το οποίο παίζεται με ένα
Οι παίκτες παίρνουν το ρόλο των χειρότερων πειρατών στο πλήρωμα ενός πλοίου. Ο καπετάνιος σας έχει στη μπούκα, επειδή είστε πολύ τεμπέληδες και
Οι παίκτες παίρνουν το ρόλο των χειρότερων πειρατών στο πλήρωμα ενός πλοίου. Ο καπετάνιος σας έχει στη μπούκα, επειδή είστε πολύ τεμπέληδες και βλάκες για να αξίζετε μερίδιο στο ρούμι και τα λάφυρα. Επειδή
Πώς το λένε Computer game στο Scratch
Πώς το λένε Computer game στο Scratch Μιχαηλία Γκαλλέ¹, Χριστόδουλος Σατραζέμης², 1 Μαθήτρια Γ Τάξης, 2 ο Γυμνάσιο Ευόσμου mixaelagalle@gmail.com 2 Μαθητής Γ Τάξης, 2 ο Γυμνάσιο Ευόσμου linosatra@gmail.com
x ν+1 =ax ν (1-x ν ) ή αλλιώς η απλούστερη περίπτωση ακολουθίας αριθμών με χαοτική συμπεριφορά.
1 x ν+1 =ax ν (1-x ν ) ή αλλιώς η απλούστερη περίπτωση ακολουθίας αριθμών με χαοτική συμπεριφορά. Πριν λίγα χρόνια, όταν είχε έρθει στην Ελλάδα ο νομπελίστας χημικός Ilya Prigogine (πέθανε πρόσφατα), είχε
Notes. Notes. Notes. Notes Ε 10,10 0,3 Λ 3,0 2,2
Θεωρία παιγνίων: Κώστας Ρουμανιάς Ο.Π.Α. Τμήμα Δ. Ε. Ο. Σ. 3 Δεκεμβρίου 2012 Κώστας Ρουμανιάς (Δ.Ε.Ο.Σ.) Θεωρία παιγνίων: 3 Δεκεμβρίου 2012 1 / 21 -best responses Κυνήγι ελαφιού: Δυο κυνηγοί ταυτόχρονα
δημιουργία: http://macedonia.uom.gr/~acg επεξεργασία: Ν.Τσάντας
Θεωρία Παιγνίων Μελέτη στοιχείων που χαρακτηρίζουν καταστάσεις ανταγωνιστικής άλληλεξάρτησης με έμφαση στη διαδικασία λήψης αποφάσεων περισσοτέρων από ένα ληπτών απόφασης (αντιπάλων). Παίγνια δύο παικτών
ΠΛΗ 513-Αυτόνομοι Πράκτορες Χειμερινό εξάμηνο 2012 Εφαρμογή αλγορίθμων ενισχυτικής μάθησης στο παιχνίδι Βlackjack. Χλης Νικόλαος-Κοσμάς
ΠΛΗ 513-Αυτόνομοι Πράκτορες Χειμερινό εξάμηνο 2012 Εφαρμογή αλγορίθμων ενισχυτικής μάθησης στο παιχνίδι Βlackjack Χλης Νικόλαος-Κοσμάς Περιγραφή παιχνιδιού Βlackjack: Σκοπός του παιχνιδιού είναι ο παίκτης
Υπολογιστικά & Διακριτά Μαθηματικά
Υπολογιστικά & Διακριτά Μαθηματικά Ενότητα 1: Εισαγωγή- Χαρακτηριστικά Παραδείγματα Αλγορίθμων Στεφανίδης Γεώργιος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.
ΑΣΚΗΣΗ 1 ΑΣΚΗΣΗ 2 ΑΣΚΗΣΗ 3
ΑΣΚΗΣΗ 1 Δύο επιχειρήσεις Α και Β, μοιράζονται το μεγαλύτερο μερίδιο της αγοράς για ένα συγκεκριμένο προϊόν. Καθεμία σχεδιάζει τη νέα της στρατηγική για τον επόμενο χρόνο, προκειμένου να αποσπάσει πωλήσεις
Notes. Notes. Notes. Notes
Θεωρία Καταναλωτή: Αβεβαιότητα Κώστας Ρουμανιάς Ο.Π.Α. Τμήμα Δ. Ε. Ο. Σ. 9 Οκτωβρίου 0 Κώστας Ρουμανιάς (Δ.Ε.Ο.Σ.) Θεωρία Καταναλωτή: Αβεβαιότητα 9 Οκτωβρίου 0 / 5 Ανάγκη θεωρίας επιλογής υπό αβεβαιότητα
10/3/17. Μικροοικονομική. Κεφάλαιο 29 Θεωρία παιγνίων. Μια σύγχρονη προσέγγιση. Εφαρµογές της θεωρίας παιγνίων. Τι είναι τα παίγνια;
HA. VAIAN Μικροοικονομική Μια σύγχρονη προσέγγιση 3 η έκδοση Κεφάλαιο 29 Θεωρία παιγνίων Θεωρία παιγνίων Η θεωρία παιγνίων βοηθά στην ανάλυση της στρατηγικής συμπεριφοράς από φορείς που κατανοούν ότι οι
ΕΠΙΣΗΜΟΙ ΚΑΝΟΝΕΣ ΤΟΥ ΟΙ ΚΑΡΤΕΣ
ΕΠΙΣΗΜΟΙ ΚΑΝΟΝΕΣ ΤΟΥ Το SLEUTH είναι ένα φανταστικό παιχνίδι έρευνας για 3 έως 7 παίκτες. Μέσα από έξυπνες ερωτήσεις προς τους αντιπάλους του, κάθε παίκτης συλλέγει στοιχεία και έπειτα, χρησιμοποιώντας
Ε Π Ι Χ Ε Ι Ρ Η Σ Ι Α Κ Η Ε Ρ Ε Υ Ν Α
ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΣΕΠΤΕΜΒΡΙΟΣ 2011 ΤΟΜΕΑΣ ΣΤΑΤΙΣΤΙΚΗΣ, ΠΙΘΑΝΟΤΗΤΩΝ & ΕΠΙΧΕΙΡΗΣΙΑΚΗΣ ΕΡΕΥΝΑΣ Ε Π Ι Χ Ε Ι Ρ Η Σ Ι Α Κ Η Ε Ρ Ε Υ Ν Α ΘΕΜΑ 1 ο Σε ένα διαγωνισμό για την κατασκευή μίας καινούργιας γραμμής του
ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΑΡΧΕΣ ΤΗΣ ΕΠΙΣΤΗΜΗΣ ΤΩΝ Η/Υ
ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΑΡΧΕΣ ΤΗΣ ΕΠΙΣΤΗΜΗΣ ΤΩΝ Η/Υ ΜΕΡΛΙΑΟΥΝΤΑΣ ΣΤΕΦΑΝΟΣ, ΠΕ19 ΚΕΦΑΛΑΙΟ 3 Αλγόριθμοι 3. Αλγόριθμοι 2 3. Αλγόριθμοι 3.1 Η έννοια του αλγορίθμου 3.2 Χαρακτηριστικά αλγορίθμου 3.3 Ανάλυση αλγορίθμων
Αλγόριθμοι και Δομές Δεδομένων (IΙ) (γράφοι και δένδρα)
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2016-17 Αλγόριθμοι και Δομές Δεδομένων (IΙ) (γράφοι και δένδρα) http://mixstef.github.io/courses/csintro/ Μ.Στεφανιδάκης Αφηρημένες
Εφαρμόζονται σε προβλήματα στα οποία δεν υπάρχει πληροφορία που να επιτρέπει την αξιολόγηση των καταστάσεων του χώρου αναζήτησης.
Ανάλογα με το αν ένας αλγόριθμος αναζήτησης χρησιμοποιεί πληροφορία σχετική με το πρόβλημα για να επιλέξει την επόμενη κατάσταση στην οποία θα μεταβεί, οι αλγόριθμοι αναζήτησης χωρίζονται σε μεγάλες κατηγορίες,
Αριστείδης Παλιούρας Ανακαλύψτε το Scratch 2
Παιχνίδι Κρεμάλα Στη δραστηριότητα αυτή θα δημιουργήσεις το γνωστό παιχνίδι της κρεμάλας στο οποίο ο παίκτης προσπαθεί να μαντέψει τα γράμματα από τα οποία αποτελείται μια άγνωστη λέξη. Το πρόγραμμα που
Σκοπός του παιχνιδιού Σκοπός του παιχνιδιού είναι να τοποθετήσει πρώτος ο παίκτης όλα τα πλακίδιά του στο τραπέζι.
Σκοπός του παιχνιδιού Σκοπός του παιχνιδιού είναι να τοποθετήσει πρώτος ο παίκτης όλα τα πλακίδιά του στο τραπέζι. Βασικοί Κανόνες Τα πλακίδια ανακατεύονται και τοποθετούνται με την όψη προς τα κάτω στο
21. ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ 4 - ΔΗΜΙΟΥΡΓΩΝΤΑΣ ΜΕ ΤΟ BYOB BYOB. Αλγόριθμος Διαδικασία Παράμετροι
21. ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ 4 - ΔΗΜΙΟΥΡΓΩΝΤΑΣ ΜΕ ΤΟ BYOB BYOB Αλγόριθμος Διαδικασία Παράμετροι Τι είναι Αλγόριθμος; Οι οδηγίες που δίνουμε με λογική σειρά, ώστε να εκτελέσουμε μια διαδικασία ή να επιλύσουμε ένα
Περιεχόμενα ΕΝΟΤΗΤΑ I. ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ. Πρόλογος 15
Περιεχόμενα Πρόλογος 15 ΕΝΟΤΗΤΑ I. ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ 1 Τεχνητή νοημοσύνη 21 1.1 Εισαγωγή 21 1.2 Ιστορική εξέλιξη 22 1.3 Εφαρμογές Τεχνητής Νοημοσύνης 25 2 Επίλυση Προβλημάτων 29 2.1 Διαμόρφωση
Περιεχόμενα 1 Scriptorium (Ταμπλό Αξίας Κατηγορίας) 5 εξάπλευρα ζάρια 87 κάρτες
Εισαγωγή Στο Biblios, αναλαμβάνετε το ρόλο ενός ηγούμενου, επικεφαλής ενός μοναστηριού την εποχή του Μεσαίωνα. Προσπαθώντας να δημιουργήσετε την εντυπωσιακότερη βιβλιοθήκη, συναγωνίζεστε με άλλους ηγούμενους
Προγραμματιστικές Ασκήσεις, Φυλλάδιο 1
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΕ C Προγραμματιστικές Ασκήσεις, Φυλλάδιο Εκφώνηση: 9/3/0 Παράδοση: 5/4/0,.59 Άσκηση 0 η : Το πρόβλημα της βελόνας του Buffon Θέμα της εργασίας
Τεχνητή Νοημοσύνη Ι. Ενότητα 6: Αναζήτηση με Αντιπαλότητα
Τεχνητή Νοημοσύνη Ι Ενότητα 6: Αναζήτηση με Αντιπαλότητα Μουστάκας Κωνσταντίνος Πολυτεχνική Σχολή Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Σκοποί ενότητας Αναζήτηση με Αντιπαλότητα 2 Περιεχόμενα