A simple simulation of population centers. Small green cities can emerge at any time, so long as there is enough space. As new cities emerge, they will connect to neighbours. Once a city is connected to 3 others, it can "evolve" to a larger city. Larger cities can evolve again, but only when connected to 3 other cities of the same size or larger. If at any time a city has evolved, but is no longer connected to a smaller city, it dies out.

Source code on Github.