# Fractal Geometry and Programming in Java

- Chaos represents the property that certain mathematically deterministic systems behave unpredictably and generate randomness. Unpredictability is built into every aspect of the world and the chaos is all around us. Systems are typically coupled to the environment – they are receiving feedback from the environment, which enables the effects of chaos to become apparent. Simple rules of behavior produce a rich spectrum of outcomes that we study as geometric patterns. Most shapes in the nature are self-similar or *fractal*. Here we demonstrate several ways to produce fractals, to compute them using Java programming language, OpenCL technology, and in particular, we show details of the design of Perceptron program http://perceptron.sourceforge.net/. We briefly visit Processing and NetLogo environments. Finally, we review courses for further education.