Artificial Intelligence for Go on Non-standard Topologies
Umělá inteligence pro hru Go na nestandardních topologiích
bachelor thesis (DEFENDED)
View/ Open
Permanent link
http://hdl.handle.net/20.500.11956/100990Identifiers
Study Information System: 186773
Collections
- Kvalifikační práce [11242]
Author
Advisor
Referee
Brunetto, Robert
Faculty / Institute
Faculty of Mathematics and Physics
Discipline
General Computer Science
Department
Department of Software and Computer Science Education
Date of defense
22. 6. 2018
Publisher
Univerzita Karlova, Matematicko-fyzikální fakultaLanguage
English
Grade
Very good
Keywords (Czech)
prohledávání herního stromu, Monte Carlo Tree Search, desková hra, Go, nestandardní topologieKeywords (English)
game tree search, Monte Carlo Tree Search, board game, Go, non-standard topologyGo je populární strategická hra pro dva hráče. Obvykle se hraje na čtvercové desce o rozměrech 19x19. Cílem této práce je vytvořit aplikaci umožňující uži- vateli hrát Go na jakékoli desce definované grafem, například na kouli nebo toruse. Vytvořili jsme webovou klient-server aplikaci napsanou v JavaScriptu a Node.js, která používá protokol Websockets pro rychlou komunikaci. Aplikace umožňuje uživateli hrát proti jiným hráčům na Internetu. Server může podporovat více souběžných her. Desky lze vytvářet modelovacím nástrojem Blender a poté je importovat do aplikace. Naše aplikace podporuje 3D vykreslování těchto desek ve webovém klientovi pomocí WebGL. Má responsivní ovládání umožňující změnu pohledu otočením, pohybem a zoomem. Uživatelé mohou také hrát proti umělé inteligenci. 1
Go is a popular strategic game for two players. It is usually played on a squared board of 19x19. The aim of this thesis is to create an application allowing a user to play Go on any board defined by a graph, such as sphere and torus. We created a web based client-server application, written in JavaScript and Node.js, that is using protocol Websockets for fast communication. Application allows user to play against other players on the Internet. Server can support multiple concurrent games at the same time. Boards can be created by modelling tool Blender and then imported into the application. Our application supports 3D rendering of these boards in web client using WebGL. It has responsive control, allowing changes of view by rotating, moving and zooming. Users can also play against artificial intelligence. 1