see: Micromotives and Macrobehavior
In a 2D grid, each cell is either red, blue, or white (unoccupied). An agent is unsatisfied if the ratio of its neighbours with the same color is less than or equal to a threshold. An unsatisfied agent will move to a more desirable cell.