In this MSc thesis, I present the design of an agent capable of playing limitedly general boardgames. The primary goal is to achieve self-learning and to replace traditional, computationally expensive search algorithms. There are two approaches. In the first, using an incremental pattern extraction and recognition, I implemented an efficient shallow search, through which the agent learns the patterns while playing the game. The second approach relates to the topic of deep neural networks: I have tried to translate the results of recent research into a specific game of my choice.
To this end, I have created a framework for running various games. Object-oriented program management was desirable. In my dissertation, I focus on the structure and operation of the main agent and the presentation of neural network-based solutions; the framework and special agents will not be presented in detail. Both explicit pattern recognition and solutions based on the neural network were implemented in MATLAB.