Developing a chess engine

The aim of this thesis is to develop a chess engine (that is, a program that can estimate the best move in a given chess position). Along the development of the engine, the theory behind various data structures, algorithms, problems and techniques related to computer chess is explained. The engine i...

Πλήρης περιγραφή

Λεπτομέρειες βιβλιογραφικής εγγραφής
Κύριος συγγραφέας: Βλάσσης, Γεώργιος
Άλλοι συγγραφείς: Vlassis, Georgios
Γλώσσα:English
Έκδοση: 2021
Θέματα:
Διαθέσιμο Online:http://hdl.handle.net/10889/14980
id nemertes-10889-14980
record_format dspace
spelling nemertes-10889-149802022-09-05T06:57:03Z Developing a chess engine Ανάπτυξη σκακιστικής μηχανής Βλάσσης, Γεώργιος Vlassis, Georgios Chess Artificial Intelligence C99 Σκάκι Τεχνητή νοημοσύνη The aim of this thesis is to develop a chess engine (that is, a program that can estimate the best move in a given chess position). Along the development of the engine, the theory behind various data structures, algorithms, problems and techniques related to computer chess is explained. The engine is developed in C99, using the GCC and GDB tools, under the MSYS2 environment and can theoretically run in any desktop operating system (Windows, macOS or Linux). It is named Barrett, after a chess-loving character in the Marvel Cinematic Universe. Barrett can systematically win against the Elo-limited Stockfish 13 (capped to 1500 Elo) and has been verified to produce only and all legal chess moves. Ο σκοπός της συγκεκριμένης διπλωματικής είναι η ανάπτυξη μιας σκακιστικής μηχανής (δηλαδή, ενός προγράμματος που μπορεί να εκτιμήσει την καλύτερη κίνηση για μια δεδομένη θέση σκακιού). Παράλληλα με την ανάπτυξη της σκακιστικής μηχανής, εξηγείται η θεωρία πίσω απο τις διάφορες δομές δεδομένων, αλγορίθμους, προβλήματα και τεχνικές σχετικές με το υπολογιστικό σκάκι. Η μηχανή αναπτύσσεται με C99, με τη χρήση των εργαλείων GCC και GDB, στο περιβάλλον MSYS2 και είναι θεωρητικά συμβατή με όλα τα λογισμικά συστήματα σταθερών υπολογιστών (Windows, macOS ή Linux). Ονομάζεται Barrett, όπως και ένας χαρακτήρας λάτρης του σκακιού στο Κινηματογραφικό Σύμπαν της Marvel. O Barrett μπορεί να κερδίσει συστηματικά ενάντια στο Stockfish 13 με περιορισμένο Elo (περιορισμός στο 1500 Elo) και έχει επαληθευτεί πως παράγει όλες και μόνο τις νόμιμες κινήσεις σκακιού. 2021-07-12T09:15:12Z 2021-07-12T09:15:12Z 2021-07-01 http://hdl.handle.net/10889/14980 en application/pdf
institution UPatras
collection Nemertes
language English
topic Chess
Artificial Intelligence
C99
Σκάκι
Τεχνητή νοημοσύνη
spellingShingle Chess
Artificial Intelligence
C99
Σκάκι
Τεχνητή νοημοσύνη
Βλάσσης, Γεώργιος
Developing a chess engine
description The aim of this thesis is to develop a chess engine (that is, a program that can estimate the best move in a given chess position). Along the development of the engine, the theory behind various data structures, algorithms, problems and techniques related to computer chess is explained. The engine is developed in C99, using the GCC and GDB tools, under the MSYS2 environment and can theoretically run in any desktop operating system (Windows, macOS or Linux). It is named Barrett, after a chess-loving character in the Marvel Cinematic Universe. Barrett can systematically win against the Elo-limited Stockfish 13 (capped to 1500 Elo) and has been verified to produce only and all legal chess moves.
author2 Vlassis, Georgios
author_facet Vlassis, Georgios
Βλάσσης, Γεώργιος
author Βλάσσης, Γεώργιος
author_sort Βλάσσης, Γεώργιος
title Developing a chess engine
title_short Developing a chess engine
title_full Developing a chess engine
title_fullStr Developing a chess engine
title_full_unstemmed Developing a chess engine
title_sort developing a chess engine
publishDate 2021
url http://hdl.handle.net/10889/14980
work_keys_str_mv AT blassēsgeōrgios developingachessengine
AT blassēsgeōrgios anaptyxēskakistikēsmēchanēs
_version_ 1771297181002629120