Haskell, Genetic Algorithm, Graph Theory, Programming.
The next thing we need is a way to score a set of tiles, so the best can be chosen. From the beginning, we know that the scoring will involve shuffling the tiles, which actually includes three kinds of randomization: Moving the tiles to different places on the board. Rotating the tiles to a random