Ανάπτυξη παιχνιδιού με χρήση τεχνητής νοημοσύνης σε κινητή πλατφόρμα

Game development using artificial intelligence on a mobile platform (Αγγλική)

  1. MSc thesis
  2. ΜΑΚΡΗΣ, ΒΑΣΙΛΕΙΟΣ
  3. Μεταπτυχιακή Εξειδίκευση στα Πληροφοριακά Συστήματα (ΠΛΣ)
  4. Οκτώβριος 2016 [2016-10]
  5. Ελληνικά
  6. 77
  7. Καλλές, Δημήτρης, Δρ.
  8. Othello | Othello Game | Τεχνητή Νοημοσύνη | Artificial Intelligence | Τεχνητά Νευρωνικά Δίκτυα | Artificial Neural Networks | Εξελικτικές Στρατηγικές | Evolution Strategies | Γενετικοί Αλγόριθμοι | Genetic Algorithms | Προγραμματισμός Android | Android Programming | Κινητές πλατφόρμες | Mobile Platforms
  9. 3
  10. 0
  11. Περιέχει: Πίνακες, διαγράμματα, εικόνες
    • Στην παρούσα διπλωματική εργασία, κατασκευάζονται τέσσερις σύνθετες αρχιτεκτονικές Τεχνητών Νευρωνικών Δικτύων (ΤΝΔ) και μελετούνται ως προς την ικανότητα τους να μάθουν το επιτραπέζιο παιχνίδι στρατηγικής Othello χωρίς προηγούμενη γνώση, εκτός από τους κανόνες του παιχνιδιού. Για το σκοπό αυτό επιλέγονται για την εκπαίδευση τους διάφορες Εξελικτικές Στρατηγικές οι οποίες επίσης εξετάζονται ως προς την αποτελεσματικότητα τους. Η πιο αποτελεσματική Εξελικτική Στρατηγική επιλέγεται για να εξελίξει περεταίρω τυχαίους αρχικούς πληθυσμούς των πιο υποσχόμενων ΤΝΔ για μερικές χιλιάδες γενιές. Τα μέλη της κάθε γενιάς αγωνίζονται για επικράτηση, παίζοντας παρτίδες μεταξύ τους σε τουρνουά round-robin, διπλών συναντήσεων. Η αξιολόγηση της ποιότητας του παιχνιδιού του καλύτερου μέλους της κάθε γενιάς, γίνεται με τη χρήση ενός ισχυρού και ολοκληρωμένου προγράμματος Othello (τον Εξωτερικό Αξιολογητή), το οποίο αποτελεί βελτιστοποίηση με τη χρήση Γενετικού Αλγορίθμου ενός ήδη ισχυρού προγράμματος Othello και δεν λαμβάνει μέρος στην εξελικτική διαδικασία. Η παραπάνω μέθοδος οδηγεί στη δημιουργία ισχυρών παικτών Othello που γνωρίζουν μερικές προχωρημένες στρατηγικές του παιχνιδιού και είναι στο ίδιο περίπου επίπεδο με τα πολύ ισχυρά προγράμματα WINTHELLO 1.0 και GRHINO 0.16.1 αλλά σαφώς υποδεέστεροι του κορυφαίου προγράμματος WZEBRA 4.2.4. Τέλος μερικοί από τους καλύτερους παίκτες που προέκυψαν μέσω της εξελικτικής διαδικασίας, επιλέγονται τόσο λόγω της ικανότητας τους, όσο και για το διαφορετικό στυλ παιχνιδιού τους, για την υλοποίηση μιας εφαρμογής Othello για κινητές πλατφόρμες, με λειτουργικό σύστημα Android. Κατά την εκπόνηση της εργασίας, χρησιμοποιήθηκε αποκλειστικά η γλώσσα προγραμματισμού Java κυρίως λόγω της απλότητας της, αλλά και επειδή ταιριάζει περισσότερο σε προγραμματισμό εφαρμογών για Android.
    • In this study, four complex architectures of Artificial Neural Networks (ANNs) are constructed and studied, for their ability to learn the strategic board game Othello from scratch, with only the rules of the game as their unique knowledge provided. For this purpose, different types of Evolution Strategies are chosen for their training, which they are also tested for their effectiveness. The most effective Evolution Strategy is consequently chosen, to further evolve initially random populations of the most promising ANNs, for a few thousand generations. The members of each generation compete for survival, by playing each other in a double round-robin tournament. The evaluation of the quality of play of the best member of its generation, is done with the use of a strong and complete expert-level Othello program, which is called The External Evaluator. Moreover this program is the improved version of an already strong Othello program, by the use of Genetic Algorithm. The External Evaluator did not take part in the evolutionary process. The aforementioned procedure leads to the creation of strong Othello players which they have learned some advanced strategies of the game and are at about the same level as the very strong programs WINTHELLO 1.0 and GRHINO 0.16.1 but they are clearly inferior to the state-of-art program WZEBRA 4.2.4. Finally, some of the best evolved players, were chosen not only because of their playing ability but also because of their playing style, as artificial intelligent entities in the final version of an Othello program running on mobile devices equipped with the Android operating system. The Java programming language was used exclusively throughout this work, partly because of its simplicity but also because it is the most suited language for Android application programming.
  12. Items in Apothesis are protected by copyright, with all rights reserved, unless otherwise indicated.