Limitations

iPad Models

Evolved Art was developed and tested on a iPad 3. This was the first iPad with and Retina display and adequate CPU and memory for the demands of Evolved Art. Users who own an iPad 3 should find the app runs well on this model and all newer models. However, Evolved Art is coded strictly to Apple's iOS guidelines and uses no special tricks for computation or display. Therefore, running on an iPad 2 or the iPad Mini is possible, but they will introduce limits on speed and memory.

Computation

Evolved Art is very demanding of the iPad's CPU and graphics. The computations involved in evolving populations are quite intense, as are the demands on the graphics processor to display each turtle's drawing. When a population is evolved, each turtle's program must be run to compute the turtle's fitness, requiring the app to perform ten thousand instructions for each turtle. Then turtles must be selected randomly based on this fitness, their genetic code must be crossed over, then a new population generated based on the new children. Your iPad's CPU will definitely be busy.

Graphics

Without question, the most demanding aspect of Evolved Art is displaying each turtle's drawing onto the screen. When a turtle draws itself, it will run it's program for a total of ten thousand steps. Many of these steps involve turning and moving, which requires geometry to be performed with floating point precision. Then the results of these steps must be scaled and offset to fit the area in which the drawing is being displayed. Needless to say, your iPad is being asked to deliver serious graphics performance. Fortunately, Apple designed the iPad to deliver!

Population Size

The bottom line is that the demands placed on your iPad are directly proportional to the size of the population being displayed and evolved. The larger the population size, the more memory is demanded, and the more time will be required to evolve and display the turtles. So there is a trade-off. The larger a population's size, the more genetic information is available with which the population can evolve, yet more memory is required and evolution and display times will be longer. A population size of 42 turtle's is very convenient, as it displays perfectly in portrait mode in the population view without needing to be scrolled. A size of 42 turtles provides a good amount of genetic information for evolution and performs with reasonable response times. Larger populations will obviously require longer evolution and display times. Therefore, initially you may wish to work with population sizes of 42 turtles, then experiment with larger sizes. If you discover that Evolved Art is running out of memory during evolution, try reducing your population size until the app is running comfortably on your iPad.