In this blog entry, I would like to explore how computer-generated randomness actually works and whether true randomness exists.
Randomness has a long history, as evidenced by practices such as the drawing of lots from a helmet described already in the ancient Greek epic poem Iliad. In 17th-century discussions that predate Newton, the distinction between events perceived as unpredictable and those that are truly random was recognized in the exploration of the relationship between chance, cause, and necessity. This philosophical inquiry led to metaphysical questions about human agency. Although contemporary scientific consensus defines randomness as a sequence without repetition, bias, or pattern, our beliefs about chance, cause, and effect often clash with empirical realities (Lostritto, 2015).
Randomness, a concept deeply embedded in both the natural and digital worlds, takes on unique dimensions when encountered in the controlled environment of a computer. In this exploration, we delve into the intricacies of true randomness and pseudorandomness, examining their implications, applications, and the underlying mechanisms that drive their generation.
True random numbers
In the field of computing, achieving true randomness is an elusive goal. True random numbers, unlike their deterministic counterparts, result from unpredictable physical processes such as radioactive decay, atmospheric fluctuations, or electrical noise. These numbers, which have no discernible pattern, provide a level of unpredictability that is critical in fields such as cryptography and simulation. Unlike pseudorandom numbers, which follow a repeatable sequence based on a seed value, true random numbers offer an inherent unpredictability that adds a layer of security and authenticity to various computational processes (Owais, 2023).
Pseudo-random numbers
While the deterministic nature of computers creates a challenge in generating true randomness, pseudorandomness steps in to fill the need for unpredictability. Pseudorandom numbers are generated by a series of mathematical operations initiated by a seed value. Despite being called „random“, these numbers are actually predictable – a property rooted in the repeatability of the mathematical operations (Lostritto, 2015). Commonly used in everyday computing, pseudorandom numbers play a role in simulations, randomized algorithms, and various applications where a semblance of randomness is required (Owais, 2023). Understanding the balance between predictability and randomness in the pseudorandom domain is critical to optimizing algorithms and ensuring the reliability of computational results.
In 1946, John von Neumann and Stanislaw Ulam used ENIAC to create the first pseudorandom number using an algorithm called the middle square method. This method involves selecting a „seed“, a truly random number, and performing calculations by multiplying it by itself, taking the middle of the result, and repeating the process. However, the randomness of these pseudo-random numbers is tied to the initial seed, resulting in a predictable sequence if the same seed is chosen. The length of the repeating pattern, called the period, depends on the length of the seed. Despite their predictability, pseudorandom numbers serve the practical purpose of providing the randomness necessary to generate unpredictable sequences. The complexity of the seed affects the unpredictability of the sequence, with a more complex seed leading to a more unpredictable result, though still within practical limits (Owais, 2023).
Generative art and randomness
Generative art is a creative approach that uses randomness in code to varying degrees. Whether prominently featured or subtly integrated, randomness plays a crucial role in shaping these works of art. In essence, generative art is created through programming, incorporating random elements that result in unique visual outputs each time the program is runned. By giving up control and allowing random forces to influence the creative process, generative art brings a dynamic and ever-changing quality to visual expression (Ferraro, 2021).
Generative artist Jared Tarbell highlights the importance of randomness in programming, emphasizing that the execution of a program is typically predictable. By introducing randomness into the creative process, artists can experience unexpected results, fostering a sense of surprise even for the creator. Tarbell suggests that embracing randomness allows for unpredictable outcomes that may not be achievable through controlled efforts, similar to the spontaneity found in contact improvisation, a dance form in which performers respond to the environment presented to them, resulting in sequences unattainable through deliberate planning (Ferraro, 2021).
Examples for artworks using computer generated randomness
Vera Molnár: Interruptions
In this collection, the artist, Vera Molnár, begins with a grid filled with straight lines of equal length. The lines are randomly rotated, creating an intricate pattern that suggests various forces disrupting a regular structure. In addition, the artist introduces „interruptions“ by randomly erasing sections of certain lines, creating voids that are shaped by both the missing parts and the surrounding elements. (src: https://dam.org/museum/artists_ui/artists/molnar-vera/interruptions/ )
Jared S Tarbell: Truchet Tile Multiscale
In this series, the artist begins with Truchet tiles, square design elements arranged in a grid with random rotations. The sketch adds a layer of complexity by incorporating tiles at different scales. The entire composition is made up of black and white ellipses, with arcs formed by multiple ellipses rotated around a radius. Notably, this tile set scales seamlessly with no visible seams, creating a unique and visually appealing pattern. (src: https://www.infinite.center/2021/01/25/truchet-tile-multiscale/ )
On this website you can see more generative artworks where randomness plays a key role: https://www.lerandom.art/
Sources:
Lostritto, Carl (2015): The Value of Randomness in Art and Design. In: https://www.fastcompany.com/3052333/the-value-of-randomness-in-art-and-design
Owais, Mohd (2023): Random Numbers Generators: How computers think randomly? In: https://medium.com/@mohammdowais/how-computers-think-randomly-80fa37183949
Ferraro, Marc (2021): Random Rules — Why you should check out generative art. In: https://marc-ferraro.medium.com/random-rules-why-you-should-check-out-generative-art-61948b54da87
DAM: Interruptions (1968-1969) In: https://dam.org/museum/artists_ui/artists/molnar-vera/interruptions/
Tarbell, Jared S. (2021): Truchet Tile Multiscale. In: https://www.infinite.center/2021/01/25/truchet-tile-multiscale/