It could be argued that the best players of games are those who have the best strategies. This is not true for games of pure chance, such as snakes and ladders, but it is for games of skill, such as chess and poker, which is why my children beat me at the former and almost never at the latter (although I often cheat so usually win regardless of required skill level). In this project, we will explore the codification of strategies that can be used in games and how optimal strategies can be learned.

For simplicity, we will start on one-player games such as classic solitaire or Yahtzee) moving to more complex variants and games. We might be able to attempt simple computer games if we can find ways of controlling the game environment. We will also look at games with two players, such as chess and poker, and how strategies can be learned in these games.

There are many examples of gaming strategies that have been developed using statistical and machine learning techniques. For example, the game of chess has been studied extensively, and there are many algorithms that have been developed to play the game at a high level. Similarly, poker has been studied using game theory and machine learning techniques to develop strategies for playing the game. Here are some links to some relevant examples:

Research angles

Prerequisites

The following would be useful:

Some references