The Start 

Before I dive into my final project, I will be sharing why and how it came to be.

I started this course with a simple assignment of “reflecting an example of generative art that I found interesting” and one of the examples I chance upon was Patrick Huebner “Generative Physics System”. What amazed me was the autonomous particle interactions. Furthermore, the development of this project was coded and compiled using Processing.

Generative Physics Systems


This example shows me the interlink of programming and art, and what we can achieve if we are to combine these two elements. Therefore, I decided that Processing will be my choice of medium.

Exploratory Process


For my first project, exploratory sketch, I wanted to depict the movement of the non-linear and unpredictability element of fish movements. I explored and did research on the behaviours of fishes and used the particle system in Processing to simulate the flocking movement of fishes based on a simple set of algorithm rules.






Basic Mechanism


Exploratory Sketch: Movement with Neurons

Pushing the project further, I tweaked the behaviour of the particles to be less constrained and create room for the particles to make mistakes by detaching themselves from the flock. As a result, instead of one group of flocking particles, now there are multiple groups of particles. Moreover,  I improved the visual aesthetics and immersive experience of the art yet still retaining the generative element.

Final Project Process

After my first project, I felt that I have a better understanding of particle systems in Processing, and I wanted to take a step further by developing something new. One of the generative artworks introduced during the second week of class was William Anastasi, Subway Drawing.

Key takeaway: Simple generative system yet producing a surprising result. (Applying this methodology to the basic mechanism of the code)



The Aim

My aim was to translate his analogue generative artwork into a digital piece. Therefore, I observed his methodology and created my own autonomous line drawing particle in a 3D space. Additionally, in this artwork, the audience is able to control the perspective of the sketch and observe the illusion of different elements and nuances that were not seen in the previous viewpoint. In other words, every angle in the generative sketch will showcase a new form of abstract drawing.


First Iteration

Referencing from Casey Reas Path, the first iteration of the project focused on the basic mechanism, which is the fluid path movement of the lines.



The first blocking of the code aims to create a visually dynamic moving line using Processing’s particle system. As the particles move around the canvas, they leave a trail of lines. The behaviour of the particle was created with references to my exploratory sketch, with less complicated characteristics and solely focusing on the fluid movement of the line.


Next part of the code aims to create the abstract mechanism. The idea is to create an abstract drawing based on the movement of the particles. Therefore, I extended the length of the lines, and if the lines reach a certain length, it will fade away to prevent an overload of lines.


Abstract Perception

The final iteration of the project focused on the visuals of the lines. I implemented different colours that are applied to each of the line groups. Additionally, tweaking the alpha channel, a subtle mixing of colours appears when the lines of different colours are aligned with each other.


Live Demo

Further Development

To push the idea of “Abstract Perception” or “Movement with Neurons” further, both of these artworks can be translated to Virtual Reality technology using the software, Unity. In this context, it can provide a richer immersive experience and the audience can experience the artwork with all of their senses.

A Framework for Understanding Generative Art

In this article, Dorin, McCabe, McCormack, Monro & Whitelaw posits that a framework for the description, analysis and comparison of generative artworks is needed. The authors argued that in order to theorise about generative art effectively, there is a need to have a framework that is uniquely suited to the description and analysis of generative art’s core, which is the dynamic processes employed by the artist. This framework aims to address the gap in generative art theory by inviting critical and creative literacy in generative systems.

Why a need for the framework?

Before diving into the framework, it is essential first to understand why there is a need for a framework.

The authors contend that discussion around art involves frameworks, even if the artwork meanings are implicit. Common discussed elements of art involve “a language-based description of the work, the media, date of execution and the work’s possible meanings”. However, such approaches to art discussion do not capture the essence of process-based works, which prevents further and more affluent comparisons. Therefore, there is a need for an applicable framework for generative art to accommodate the wide variation of process-based works. For instance, both Cornelius Cardew’s The Great Learning, Paragraph 7 and Casey Reas Process 18 are a work that is classified as generative art. Yet both of the artwork’s medium and experience are different. Thus, it would be difficult to compare them without any framework.


Cornelius Cardew’s The Great Learning, Paragraph 7

Cardew’s Paragraph 7 is a self-organising choral work. It involves singing, humming and speaking a fixed sequence of words and phrases. According to the instructions, the singers are given control over their interpretation of the instruction. In each line of the instruction, it indicates a new word or phrase and is repeated a different number of times and at different amplitude levels, as indicated in the score. Members of the choir choose a new pitch for each new line, by matching neighbour pitches and only introduce unheard pitch when no new pitch can be found or sung from the existing group of pitches.


Casey Reas’ Process 18

Reas’ Process 18 is a software-based line drawing system that generates a digital image for printing. It specifies how a set of lines can be moved across a plane, and, when they touch, be joined to create quadrilaterals of varying opacity.


A closer look at both of these artworks reveals an underlying factor that made them both similar, the generative processes. Hence, a framework allows for a conversation to discuss a broad range of generative pieces more consistently. Furthermore, it may also reveal unnoticed similarities and associations between different generative pieces. Therefore to address the argument of theorising generative art effectively, the author introduced a framework that is divided into descriptions of four main properties that constitute a generative art system: entities, processes, environmental interaction and sensory outcomes.

Understanding the Framework’s Properties

Entities refer to the subject involved in a generative process. It could be physical, chemical, biological or mechanical. Entities play a vital role in the generative process in the perceived outcome of a generative artwork. For instance, a computational generative process often involves an agent-based system, which simulates the actions and interaction of autonomous agents, whereby entities are identical, but their individual behavioural patterns are different. An example of my last sketch, “Movement with Neurons”, each of the particles is an entity that demonstrates some characteristic, distinguished by their unique behaviours.


Processes refer to the “mechanisms of change that occur within a generative system”; which involves the operation that influences entities behaviour. It can be described as conditions or events that trigger a particular entity behaviour or cause a chain reaction (domino effect) to the entities. These include the initial conditions ( the state of the entities before the process begins) or initialisation procedures (the actions or conditions necessary to start the process). However, the processes of a generative work may or may not be explicit to the audience.


Environmental interaction refers to the broader environment from which the generative systems draw information or input upon which to act. The inputs could be from the physical world or through devices that detect human interaction. For generative works, the outputs of the generative system will influence subsequent inputs. It can also involve the artist and the work interactions, especially for generative art, the creator will often tweak the parameters of the system based on ongoing observation and evaluation of its outputs resulting in changes to the outcome.


Sensory Outcomes simply refers to the outcomes of the generative work, that arise directly from the interaction of the processes and entity. The interaction between the process and entity can be either perceptible or imperceptible. For instance, in Cardew’s Paragraph 7, the audience is able to directly witness the entities (singers) as they enact the singing process. This system is described as flat, whereby the entities and outcomes occupy a single perceptible layer.


However, for computational works, the processes and entity interactions are not immediately apparent and usually take place behind the scenes during the development of the generative systems. Such systems will be labelled as natural mapping, whereby the structure of entities, process and outcomes are closely aligned. Both of these examples share a similar process, yet their physical manifestations and aesthetic experiences are different. Therefore, to appreciate the outcome of the generative works is to understand the intangible and hidden elements that give rise to the perceived outcomes.


Demonstrating the Framework

Having illustrated the framework properties, the authors’ also made references to different generative examples from diverse mediums and demonstrates how the framework can make a meaningful comparison between a wide variety of generative systems from different periods. It should be noted that this framework is intended to supplement rather than supersede existing critical approaches.


Islamic Star Patterns (ca. ninth century CE onwards)

The Great Learning, Paragraph 7 – Cornelius Cardew (1971)

Process 18 – Casey Reas (2008)


Comparisons using the Framework

Applying the Framework to my own Generative Artwork

Likewise, I will also demonstrate the framework’s utility by analysing and describing my generative project.



Entities Initialisation,


Processes Environmental interaction Sensory


Final Generative Project Lines

(Size, velocity, trail length, colours, Separation between lines,)

Random initialisation; Lines are drawn randomly Entity behaviours: move in random while keeping a distance from other entities. At the same time, leave a trail of lines behind None. Creation of abstract drawings in 3D space.


Artist-defined mapping


Limitations & Future Creative Uses

While the proposed descriptive framework provides a summary of the essential components in a generative system, it does not discuss the aspect of the artistic motivations. Instead, the framework is focused on the implementation and mechanics of a generative system. Nevertheless, this framework can allow an alternative view to make reasonable and effective critics and comparison of various generative works in terms of the processes involved. Indeed, the framework has provided a methodology to make a clear connection of generative works that were previously difficult to articulate.


Hence, utilising this framework, I can compare and contrast similarities and differences to appreciate the process that the artist made in its creation. Likewise, the unpacking of the generative process, I am also able to make use of the different generative traits found in the framework to expand my creativity for future generative systems.

Second Iteration

For the second iteration, I was focused on improving the visuals of the lines and made two significant changes.

  1. Implement different colour for different groups of lines.
  2. Increased visual width of the lines, when the lines are viewed closer.

Implementation of Different Colours

Lesson from my exploratory sketch, the colours in this project will not be changing continuously to avoid confusion. However, colouration will be statically applied to be distinct to all members of each line group. I explored with different colours and chose colours that contrast well with a white background.

Colours: Red, Yellow-Orange & Grey-Blue


Colours Mixing 

Additionally, based on the audience’s viewpoint, there is also a subtle colour mixing when the lines of different colours are aligned with each other. Nonetheless, the colour mixing was not made explicit to the audience, because I prefer such nuances to be discovered through the audience’s perspectives and remind them that there is always more to learn in this art.

Example of colour mixing

There is a green line in the sketch (left side) created not by code, but through an overlay of two different lines.


Video Example


Width of The Lines

For the next implementation, I took Prof Dejan advice on increasing the width of the lines when it is viewed in close up (zoomed in). Initially, I had some problems implementing the code using Processing’s mouseWheel() function because the way the function works and the data produced from scrolling was not suitable for my project. Hence, I came up with a simple solution of modifying the strokeWeight() based on the camera distance calculation, which is controlled by scrolling. I will be showcasing this during the live demo.

Live Demo 

Further Progress

For my next iteration, I will be attempting to implement a function whereby when the audience moves around “something” happens. However, I have not yet think what that “something” could be because I do not want to complicate the essence of this sketch; therefore, this will be an idea on hold first.

The article, Amplifying The Uncanny, by Broad, Leymarie and Grierson offered an insightful knowledge of how machine learning algorithms can be optimised and used to produce uncanny results.


Machine Learning & Generative Adversarial Network

Machine learning is a system where pattern data are used to predict future data or other outcomes of interest. It is understood as an automated process of optimisation, where an algorithm processes data and finds a set of parameters that best ‘solve’ a pre-defined objective function. DeepFake, a software that produces images that can trick the human eye into believing that they are real; it utilises machine learning, in particular, the Generative Adversarial Networks (GAN) framework to produce a sample of realistic images.


Next Great Movement in Art or Zombie Art?

Generative Adversarial Networks have then been widely used in the production of art and is seen as the next great movement in art. However, it has also received several critiques. Firstly, the production of new artworks by the dataset of existing artworks is seen as dull and obvious as Hassine and Ziv called it the “Zombie art”. Another criticism is that generative artwork relies too heavily on deep neural networks to produce mesmerising samples, without any meaningful framing of the works being presented by the artist.



Perhaps, the reason why Hassine and Ziv label generative art as “zombie art” is the problem of how it is very difficult to value generativity. One can’t see at a glance whether it took time or skill to create, similar to photography, one may think is just a press of a button to produce art as compared to paintings or sculptures which are seen to require more work. Nonetheless, from the experience in making my first sketch, generative art is definitely not just a press of a button and it does require creativity in the process.

Next, even though machines are heavily relied upon to automate some aspect of the generativity, it does not mean that it is not significant or meaningful as compared to other fields of art. Rather, I argue that it is actually a new form of creative outlet that artist could utilise in producing art pieces.


“Being Foiled” & the Uncanny experience.

Expanding on GAN, one of the explored artworks in this paper was “Being foiled”, which reverses the outcome of DeepFake algorithms. Instead of producing images that look imperceptibly realistic, “Being foiled” invert this objective, by optimising the system to generate what it sees as being fake and turning the image into complete abstraction. As a result, it amplifies the uncanny nature of these machine hallucinations.


The ‘Uncanny‘ is referred to as a psychological or aesthetic experience that can be characterised as observing something familiar that is encountered in an unsettling way. The uncanny effect is usually seen in objects that have a likeness of human qualities, whereby it is close to human-like but not human; as a result, it becomes creepy. For instance, a robot that looks very similar to a human, which invokes familiarity yet an uncomfortable feeling.



The author illustrated his point of uncanniness by picking an iteration of the model whereby the uncanniness is potentially most amplified. Indeed, just by viewing the sample, it does provoke a feeling of uncanniness. It is familiar, yet it gives a sense of unease. Relating this to generative art criticism as dull or monotonous repetitions, “Being foiled” actually shows us how generativity can invoke human perceptions and feelings. In this context, it provokes a sense of uncanniness to the audience. 


Hence, the question is, how can we incorporate intangible emotions into our sketch that can be understood visually and consequently make generative art less banal?



Closed Systems: Generative Art and Software Abstraction

By Marius Watz, 2010


With the rise of computational technology, art is going through an evolving process with the combination of the principles of unpredictability and the purity of logic as Marius Watz describes it.


In his paper, Watz touches on the notion of exploiting the complexity produced by a computation that could not be made by human hands. He elucidates that generativity is a useful strategy that allows the author to harness the power of a computer to generate an infinite series of possible outcomes. However, to perform such a process, the author requires technical skills to be able to understand computer code and perform reverse engineering to achieve a desirable outcome. Therefore, as Watz contends, generative art requires both technical skills and aesthetic intuition for the artist to be able to express their art through the manipulation of computation. This resonates with me, as someone who sees through the lens of both art and programming, as both are vital ingredients to produce an interesting computational generative artwork. Moreover, to a certain extent, computational skill is an art because it requires critical thinking and ingenuity to create objects of beauty.


On the other hand, computational aesthetics also has its constraint. As pointed out by Watz, simulation is spontaneous and organic, which can only be replicated by computers with the explicit encoding of how the data is processed and even the most experienced programmer will encounter unexpected results or errors. Nonetheless, programming error can lead to discoveries and new learnings. Indeed, as a programmer that is still learning, more often than not, I gained valuable information from errors. For that reason, I see mistakes and errors as a beneficial process of discovery, learning and improvement.


Besides that, Watz also made a comparison with interactive art and generative art. He elaborates by drawing a distinct difference between generative art and interactive art. Generative art operates based on an autonomous system with infinite outcomes based on the algorithms, while interactive art utilises a feedback loop of interaction between a system and its users. Based on this definition, I do see the distinct differences and mutual exclusiveness in their respective art forms. The way I see it, both arts require controllability through a set of rules. In generative art, the algorithmic rules create art, and for interactive art, the rules of human interaction create art.


Beyond that, Watz has also postulated that generative art has reached a level apart from computation means. While Watz has embraced the complexity of computer systems, he does agree that generative art is not about the computer itself and would be a mistake to think that generativity is only capable of being expressed in pixels. Thus, generative art can come in many possible outputs, and I certainly do agree and believe we should expand and explore our creativity of generativity in many various possible outputs, and not just limit our observations of generativity to solely one medium.