Personalised platformer-game generation via PCGML algorithmsPersonalised platformer-game generation via PCGML algorithmsΕξατομικευμένη δημιουργία ενός platformer παιχνιδιού μέσω PCGML αλγορίθμων Διπλωματική Εργασία Diploma Work 2021-08-022021enIn recent years, the game development industry has shown an enormous interest in the field of Procedural Content Generation (PCG). Especially the autonomous generation of levels for video games has become a popular subject of study. Generative Adversarial Networks (GANs) are a machine learning method that has been used over the last decade and proved to be capable of generating media content and even game content. For this thesis, a new video game that combines the characteristics of a Platformer and a Dungeon Crawler has been developed in Unity from which a handcrafted dataset has been created. A GAN was successfully trained on this dataset and was therefore able to generate new level rooms. Since the core of this work was to generate rooms whose difficulty scale is adjusted based on the player’s performance, the input latent vector to the generative model was found by using an Evolutionary Strategy. Specifically, the Covariance Matrix Adaptation Evolutionary Strategy (CMA-ES) was applied which searched through the latent space of the GAN by utilizing the static characteristics of each room in form of a fitness function. The output room of this process was then given a difficulty score by evaluation and placed in the correct spot of the 3x3 grid which constitutes the whole level. The experiments of this thesis are resulted from having a variety of player models and actual players play the game and show how capable the trained GAN model is in generating novel example outputs that fit the player’s performance.Τα τελευταία χρόνια, η βιομηχανία ανάπτυξης παιχνιδιών έχει δείξει τεράστιο ενδιαφέρον στον τομέα της διαδικασίας αυτόματης δημιουργίας περιεχομένου (PCG). Ειδικά η αυτόνομη παραγωγή επιπέδων για βιντεοπαιχνίδια έχει γίνει ένα δημοφιλές αντικείμενο μελέτης. Τα Γενετικά Ανταγωνιστικά Δίκτυα (GANs) είναι μια μέθοδος μηχανικής μάθησης που έχει χρησιμοποιηθεί την τελευταία δεκαετία και αποδείχθηκε ικανή να δημιουργεί περιεχόμενο πολυμέσων και περιεχόμενα παιχνιδιών. Για αυτήν τη εργασία αυτήν, ένα νέο βιντεοπαιχνίδι που συνδυάζει τα χαρακτηριστικά ενός Platformer και ενός Dungeon Crawler αναπτύχθηκε στην Unity από το οποίο δημιουργήθηκε ένα σύνολο δεδομένων. Ένα GAN εκπαιδεύτηκε με επιτυχία στο συγκεκριμένο σύνολο δεδομένων και κατά συνέπεια μπόρεσε να δημιουργήσει νέα επίπεδα του παιχνιδιού. Δεδομένου ότι ο πυρήνας αυτής της εργασίας ήταν να δημιουργηθούν επίπεδα των οποίων η κλίμακα δυσκολίας προσαρμόζεται με βάση την απόδοση του παίκτη, το διάνυσμα εισόδου στο μοντέλο δημιουργίας βρέθηκε χρησιμοποιώντας μια Εξελικτική Στρατηγική. Συγκεκριμένα, εφαρμόστηκε το Covariance Matrix Adaptation Evolutionary Strategy (CMA-ES) που αναζητούσε τον λανθάνοντα χώρο του GAN χρησιμοποιώντας τα στατικά χαρακτηριστικά κάθε επιπέδου με τη μορφή μιας συνάρτησης καταλληλότητας. Στη συνέχεια, στην έξοδο αυτής της διαδικασίας δόθηκε βαθμολογία δυσκολίας με αξιολόγηση και τοποθετήθηκε στο σωστό σημείο του πλέγματος 3x3 που αποτελεί ολόκληρο το επίπεδο παιχνιδιού. Τα πειράματα αυτής της εργασίας προέρχονται από μια ποικιλία μοντέλων παικτών και πραγματικών παικτών οι οποίοι έπαιξαν το παιχνίδι και έδειξαν πόσο ικανό είναι το εκπαιδευμένο μοντέλο GAN στη δημιουργία νέων επιπέδων που ταιριάζουν στην απόδοση του παίκτη.http://creativecommons.org/licenses/by-nc-nd/4.0/Πολυτεχνείο Κρήτης::Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών ΥπολογιστώνChaitidis_Savvas_Dip_2021.pdfChania [Greece]Library of TUC2021-08-01application/pdf4.0 MBembargo Chaitidis Savvas Χαιτιδης Σαββας Lagoudakis Michail Λαγουδακης Μιχαηλ Mania Aikaterini Μανια Αικατερινη Yannakakis, Georgios N Πολυτεχνείο Κρήτης Technical University of Crete Generative adversarial networks Procedural content generation Machine learning algorithms Evolution strategies