Machine Dreams

Machine Dreams 2020 is a generative video and still image work generated by code and adapted from an earlier work titled Machine Learning with Visual Overlay 2019. Here, two algorithms run in parallel, one informing the other through its actions.

The first algorithm is based on reinforcement learning, an area of machine learning. In reinforcement learning, software agents perform actions within an environment. Agents here learn over time based on the rewards they receive - learning by trial and error. This technique has proven to be successful when used in games, controlling robots, or performing autonomous tasks.

The second algorithm is based on a technique called ray marching. Here, the algorithm follows a virtual light path step by step, checking for intersections with objects in the environment. Ray Marching is useful for finding surfaces and for rendering volumes in 3D space. It is commonly used in computer graphics to render (hyper)realistic looking 3D scenarios in real time and has its place in games, demo scenes, virtual reality, special effects in movies or high-end graphics engines.

The first algorithm runs continuously, after it has learned a tasked perfectly, it start over again. At that moment, an image rendered by the second algorithm is captured and stored as a digital reference.


Code is best written when in the flow, in a state of mind comparable to that of solitude and pure focus. Writing code is often associated with logic, rationality and efficiency – Machine Dreams eludes this approach. It is a generative system that creates a constantly changing sequence of images. Random numbers represent the sensory experience captured in this imaginary world, and computational processes translate into fleeting moments of abstract patterns.

Format 1
Video with sound, first iteration
Format 2
Digital image, from the Machine Dreams Series
Format 3
Real-time, physical exhibition space.