Στη παρούσα διπλωματική εργασία παρουσιάζεται η ανάπτυξη κώδικα σε γλώσσα προγραμματισμού Python με σκοπό να παίζει το παιχνίδι Bluff. Αναλυτικότερα το Bluff ανήκει στη κατηγορία των παιχνιδιών μερικούς πληροφόρησης και εκδοχές του περιλαμβάνουν το στοιχείο της τύχης άρα είναι και στοχαστικό. Στην ίδια κατηγορία παιχνιδιών εντάσεται και το πόκερ στο οποίο διεξάγεται εντονη ερευνητική δραστηριότητα αυτή τη περίοδο. Οι δυσκολίες που παρουσιάζει το εγχείρημα της κατασκευης ενός τέτοιου αλγόριθμου εγκειται στο μεγάλο χώρο καταστασης του παιχνιδιού και στην αδυναμια εφαρμογης της τεχνικής min max λόγω της δομής του παιχνιδιού. Επίσης ενας επιτυχημένος παίχτης bluff θα πρέπει να αναγνωρίζει ποτε ο αντίπαλος μπλοφάρει καθώς και να μπλοφάρει ο ίδιος. Τέλος όπως και στο ποκερ για να γίνεις μετρ στο παιχνίδι θα πρέπει να μεταβάλεις τη στρατηγική σου ανάλογα με τον αντίπαλο, θα πρέπει να εκμεταλεύεσαι τα λάθη του και ταυτόχρονα να μη γίνεσαι προβλέψιμος. Ο κώδικας μας εχει 3 versions. Στη πρώτη version ενας απλος μηχανισμός που στηρίζεται στους κανονες του παιχνιδίου υλοποιείται και εξετάζεται η επιτυχια του. Στη δευτερη εκδοση εισαγουμε το στοιχειο της μπλόφας ενώ στη τρίτη αφου μοντελοποιήσουμε τον αντίπαλο, λαμβάνουμε αποφάσεις με βάση αυτη τη μοντελοποίηση. / This diploma thesis deals with the problem of developing an algorithm that can play the game of Bluff. The programming language that is used is Python. Concretely the game of bluff belongs into the category of partial information games and some variations involve luck which makes it also stochastic. Intense research is conducted in poker which belongs to the same family of games. The main difficulty is the huge state space of these games due to uncertainty and the deficit of the min-max method. In addition a succesfull bluff player must recognize when the opponent is bluffing and must make bluffs on his own. One last thing that this game requires is to have dynamic strategies which means being able to change your strategy according to the opponent in order to maximize your wining by exploiting his errors. The algorithm builded has 3 versions. The first one simulated a beginner that sticks to the rules, makes no bluffs and raises according to probabilities. The second version introduces bluffing. The final version includes opponent modeling and making decision based on that.
Identifer | oai:union.ndltd.org:upatras.gr/oai:nemertes:10889/5624 |
Date | 24 October 2012 |
Creators | Σώρρος, Νικόλαος |
Contributors | Σγάρμπας, Κυριάκος, Sorros, Nick, Φακωτάκης, Νικος |
Source Sets | University of Patras |
Language | gr |
Detected Language | Greek |
Type | Thesis |
Rights | 0 |
Page generated in 0.0026 seconds