Creating a new computer game using constraint programming to automatically generate and grade the difficulty of levels

Constraint programming is a programming
paradigm that can be used to solve constraint satisfaction
problems. During this project a new puzzle game called XO
was developed for iOS devices. The game successfully uses
constraint programming to grade the difficulty of each
puzzle. This paper describes the software development
process through its different stages. It also explains how
constraint programming was used to grade the difficulty of
the puzzles and was confirmed to be accurate using
empirical methods.

Martin Peal