Προγραμματισμός αυτοματοποιημένου επιλυτή για το παιχνίδι του ναρκαλιευτή
Abstract
Με την έλευση των λύσεων που παρείχαν οι υπολογιστές στην επιστήμη, η αυτοματοποίηση θεμελίωσε τη θέση της ως βάση της αποδοτικότητας. Διαμέσου αυτοματοποιημένων επιλυτών, αντιμετωπίζονται δυναμικά προβλήματα αυξημένης πολυπλοκότητας και μεταβαλλόμενης φύσης. Παρόλο που οι επιλυτές παρέχουν λύσεις σε τέτοια προβλήματα, η μελέτη και βελτιστοποίηση τους φέρνει στην επιφάνεια νέα ερωτήματα. Μία κατηγορία των προκλήσεων είναι και η επίλυση παιχνιδιών καθώς η εκτενής μελέτη τους οδηγεί σε σύνθετα υπολογιστικά προβλήματα. Αξιοποιώντας ένα μέσο όπως τα παιχνίδια, διευκολύνεται η παρατήρηση των αποτελεσμάτων των επιλυτών. Ως αποτέλεσμα, έχουν σημειωθεί πολλά ορόσημα στην ιστορία της επίλυσης των παιχνιδιών. Κατά την παρούσα διπλωματική εξετάζεται το παιχνίδι του Ναρκαλιευτή και υλοποιείται μια μοναδική προσέγγιση με στόχο την επέκταση προϋπαρχόντων μεθόδων οπτικής αναγνώρισης και επίλυσης. Ο Αυτοματοποιημένος επιλυτής συνδυάζει τεχνικές μηχανικής όρασης για την εύρεση του ταμπλό και την αναγνώριση της κατάστασης των επιμέρους μπλοκ. Παράλληλα, αξιοποιεί ντετερμινιστικούς αλγορίθμους για τις απλές καταστάσεις του ταμπλό ενώ μοντελοποιεί τις πιο σύνθετες ως Προβλήματα Ικανοποίησης Περιορισμών (CSP). Το μοντέλο αυτό εισάγεται στον επιλυτή CP-SAT που βασίζεται στην υβριδική τεχνική LCG, ώστε να κωδικοποιηθεί και να επιλυθεί από τον εσωτερικό επιλυτή SAT με τα ανάλογα υπολογιστικά πλεονεκτήματα. Με βάση τις λύσεις που παρέχει ο CP-SAT για τις πιθανές αναθέσεις ναρκών, γίνεται πιθανοτική ανάλυση του ταμπλό προσδίδοντας ακρίβεια στις επόμενες κινήσεις. Η υλοποίηση της διπλωματικής παρουσιάζει τόσο τα πλεονεκτήματα της οπτικής αναγνώρισης και της επίλυσης ως CSP, όσο και τους περιορισμούς και τις προκλήσεις που ενέχουν. Ταυτόχρονα, δια μέσω πειραματικής διαδικασίας, αναλύονται οι συσχετίσεις μεταξύ μετρικών και η επιρροή της πυκνότητας ναρκών.
With the advent of solutions provided to science by computers, automation solidified its place as the basis of performance. Through automated solvers, dynamic problems of increased complexity and changing nature are solved. Although solvers provide solutions in such problems, studying and optimizing them brings new questions to the surface. One of the challenges is solving games as their extensive studies leads to complex computing problems. Utilizing a medium such as games facilitates the observation of solver results. As a result, there have been many milestones in the history of game solving.
In the present diploma thesis, the game of Minesweeper is examined and a unique approach is implemented with the aim of extending pre-existing methods of visual parsing and solving. The Automated Solver combines machine vision techniques to find the board and identify the state of individual blocks. At the same time, it utilized deterministic algorithms for simple board states while modeling the more complex ones as Constraint Satisfaction Problems (CSP). This model is input in a CP-SAT solver based on the hybrid LCG technique, to be encoded and solved by the internal SAT solver with the corresponding computational advantages. Based on the solutions provided by CP-SAT for possible mine assignments, a possibility analysis is performed on the board giving precision to the next moves.
The implementation of the diploma thesis presents both the advantages of visual parsing and solution as a CSP, as well as the limitations and challenges involved. At the same time, through an experimental process, the correlations between metrics and the influence of mine density are analyzed.