Drawing Machine

Page 1

DrawingMachine

Team;

public int OluwapelumiJohnson; public int ShivaniBakhru; public int ValentinaMarticorenaAngela;

AADRL | Workshop 2 Pattern Machine

Tutors

Hanjun Kim

Octavian Gheorghiu

DRAWING MACHINE

Team

Oluwapelumi Johnson

Shivani Bakhru

Valentina Marticorena Angela

December 2023

Architectural Association Design Research Lab London, UK

Brief Research Approach Initial Exploration 1 / Drawing 2D Patterns 2 / Introducing 3D Patterns 3 / Further Exploration 4 / Mesh Pattern 5 / Weaving Patterns About Process _04 _06 _08 _14 _20 _32 _40 _46 _60 Contents /

//WorkshopBrief

The research statement of the pattern machine workshop is centered around the understanding and exploration of emergent behavior inherent in agent-based systems. The behaviors exhibited by a multitude of these agents is characterized as flocking. An agent-based model was developed and iterated to create various simulations of these autonomous agents to understand their behavior and understand the governing rules of their outcomes. The stochasticity of the agent-based model allowed for a wide range of parameters allowing for dispersed range of outcomes.

//Drawing Machine

DrawingMachine studies agent based behaviour in a unique way. The emphasis is shifted from “where do the agents go”, to “what do these agents leave behind?”. Constrained to a line, the project explores a wide range of parameters from extreme to minimal control. The emergent forms are a middle ground, between the borders of constraints and chaos. The emphasis on process opens up a procedeure that articulates an endless possibility

4 | DrawingMachine

//BoidsAlgorithm

Seperation

Steer to avoid crowding local flock mates.

Cohesion

Steer to move towards the average position of local flock mates.

Alignment

Steer to move towards the average position of local flock mates.

Boids Algorithm | 5

Approach

The research approach involves a process of broad experimentation and selection after an assesment.based on a set of criteria. This is then followed by another process of broad experimentation within the constraints of the selected strategy while utiliing feedback from the previous procedeures. The result is an endless loop of iteration and selection.

6 | DrawingMachine //Research
Research Approach | 7

//InitialExploration

The initial explorations involved a systematic exploration a wide range of local rules – separation, alignment, and cohesion - to gain an understanding of their influence on the flock, followed by an implementation of global parameters –boundary size, start positions - to understand their influence on individual behavior and finally an addition of external influences – attractors, repellers, mesh start, airflow - to create dynamic and behavior. The sequential procedure was followed with the intention to find behaviors that would typify flocking behavior with an intuition of control to create repeatability in the agent-based model.

8 | DrawingMachine

Seed

Seed Image

The start position of agents is modified here to emerge from the pixels of the start image. The agents are constrained to one image per pixel to allow for speedy experimentation and as many iterations as possible. Different range of local values from 1 to 100 are tested for the same start image to understand these relationships.

Is it an insect?

A symmetrical form emerges from an extreme value of alignment and is maintained throughout the simulation

Initial Exploration | 9
Neighbour Boundary Separation Distance Separation Strength Cohesion Strength Agent Speed 3 3 1 1 3
Image Common BOIDS Values
Agent Count per pixel pixel = 1
Aligment Strength = 1 Aligment Strength = 2 Aligment Strength = 5 Aligment Strength = 20 Aligment Strength = 50 Aligment Strength = 100
01:47 00:28 02:03

//InitialExploration Attractors and Repellers

Attractors and Repellers

Attractors and Repellers are introduced into the system and trails are attached to the agents to study the path of travel of the agents as well as the randomness of their motion due to the external influence of the attractors and repellers.

10 | DrawingMachine
Common BOIDS Values Neighbour Boundary Separation Distance Separation Strength Alignment Strength Cohesion Strength 3 3 1 1 1
Seed Image Agent Count per pixel pixel = 40
Attractor Strength = 5 Repeller Strength = 15 Attractor Strength = 2 Repeller Strength = 5 Attractor Strength = 3 Repeller Strength = 5 Attractor Strength = 8 Repeller Strength = 5 Attractor Strength = 5 Repeller Strength = 10 Attractor Strength = 5 Repeller Strength = 5 Attractors
Repellers

Starting from Vector

The starting position is constrained to a line in this iteration and the paths are recorded using the trails. Different local values are iterated to observe the various behaviors.

Common BOIDS Values

Line + removing z axis Initial Exploration | 11
Neighbour Boundary Separation Distance Separation Strength 3 3 1 Attractor Strength = 5 Repeller Strength = 5 Attractor Strength = 20 Repeller Strength = 20 Attractor Strength = 2 Repeller Strength = 2 Attractor Strength = 10 Repeller Strength = 10 Attractor Strength = 0.5 Repeller Strength = 0.5
Strength = 100 Repeller Strength = 1
|Attractor
00:01 00:03 00:07

Introducing Flow

Airflow is introduced into the system to further observe the behavior of agents in response to external conditions. Airflow can be considered as a natural phenomenon such as wind and its impact can imply an emergence of predictable behaviors as seen in the diagrams.

12 | DrawingMachine //InitialExploration Flow
Common BOIDS Values Neighbour Boundary Separation Distance Separation Strength Alignment Strength Cohesion Strength 3 3 1 1 1 Agent Count = 100 Flow Strength = 10 Flow Direction = 2, 1, 2 Agent Count = 100 Flow Strength = 50 Flow Direction = 5, 1, 5 Agent Count = 500 Flow Strength = 50 Flow Direction = 5, 1, 5 00:01 00:01 00:01 00:02 00:02 00:02 00:03 00:03 00:03

Starting with Mesh

Starting with Mesh

The final exploration involves the use of mesh vertices as starting points for the agents. The mesh is placed at the center of the boundary and the agent trails create unique combinations and patterns while reaching for the boundary

Initial Exploration | 13

What we can achieve from a line?

Assesment and Criterion

At this first stage of assesment, the agents starting from line is chosen as the experiment to move forward with becuse this constraint implies a focused research on creating emergent forms from simple vectors.

1 / Drawing2DPatterns

//Drawing2DPatterns

The boids behaiour was modified to produce different iterations of drawings, all emerging from a line. Within a constrained boundary, the boids created some rythymic movements to leave trails that would then be adressed as the drawings.

16 | DrawingMachine

Time Condition

The introduction of a tim condition into the script helped to realise more predictable behaviours and continuance in the rythimic patterns. The BOIDS values are changed with time and the agents continue to have dynamic, yet organidsed behaviour.

2D Patterns | 17 Neighbour Boundary + Separation Distance Common
Neighbour Boundary Separation Distance Neighbour Boundary Separation Distance 30 10 2 -1
BOIDS Values
00:01 00:07 00:03 00:05 00:07

Regular Patterns

The regularity of the patterns were observed until a certain point in the time condition which is highlighted below. Beyond this point, the agents are drawn together by very high cohesion and explode away from each other as a result. Similar to spilled ink on a canvas.

18 | DrawingMachine //drawing2DPatterns + Alignment Strength Common BOIDS Values Neighbour Boundary Separation Distance Alignment Strength Neighbour Boundary Separation Distance Alignment Strength 30 20 10 2 -0.5 -1
00:01 00:02 00:03 00:04 00:05 00:06 00:07 00:03

Unpredictable Behaviours

Even more unpredictable values were found with the intoduction of more unpredictable behaviours. Negative values of cohesion led to a somewhat interesting representation of seperations on the canvas

2D Patterns | 19 + Cohesion Strength Common BOIDS Values Neighbour Boundary Separation Distance Alignment Strength Cohesion Strength Neighbour Boundary Separation Distance Alignment Strength Cohesion Strength 30 50 -30 10 -3 -5 -3 -2
00:01 00:03 00:05 00:07

2 / Introducing3DPatterns

//3DPatterns_Flow

The 3D experiments were carried out simultaneously with the 2D in line with the proposeed research approach. Feedback was obtained from the initial set of iterations as air flow was re-introduced into the system - this time, starting from a line. This was carried out with an aim to identify what regularity or dynamic behaviour can be identified in a juxstaposition of these two characteristics.

22 | DrawingMachine

Flow Strength

3D Patterns: Flow | 23
Flow Direction
Flow Strength = 5 Flow Direction = 0,1,0 Flow Strength = 5 Flow Direction = 2,1,0 Flow Strength = 5 Flow Direction = 1,1,0 Flow Strength = 5 Flow Direction = 5,1,0 Flow Strength = 5 Flow Direction = 1,2,0 Flow Strength = 5 Flow Direction = 10,1,0 Common BOIDS Values Agent Count Neighbour Boundary Separation Distance Separation Strength Alignment Strength Cohesion Strength 30 3 3 1 1 1 Flow Strength = 0 Flow Direction = 5,1,5 Flow Strength = 50 Flow Direction = 5,1,5 Flow Strength = 5 Flow Direction = 5,1,5 Flow Strength = 100 Flow Direction = 5,1,5 Flow Strength = 10 Flow Direction = 5,1.5 Flow Strength = 200 Flow Direction = 5,1,5

Neighbour

Neighbour

Neighbour

Neighbour

Cohesion Strength = 9

Flow

Cohesion Strength = 1

Flow Direction = 10,1,10

24 | DrawingMachine //3DPatterns_Flow Starting from Horizontal Line Common BOIDS Values Agent Count Flow Strength Neighbour Boundary Separation Distance Separation Strength Alignment Strength Cohesion Strength 200 50 3 3 1 1 1
Boundary
Flow Direction = 5,1,5
= 9
Boundary
Flow Direction = 5,1,5
= 18
Boundary
Flow Direction = 5,1,5
= 36
Boundary
Flow Direction = 5,1,5
= 21
Direction = 10,1,10
00:01 00:04 00:07

Neighbour

Neighbour

Starting from Vertical Line

Regularities soon began to appear with longer lines and more consistent local conditions as the agents moved in the direction of the air flow in a sinusoidal motion. However, the verticality of the line does not influence the system since there are no pull factors such as gravity

3D Patterns: Flow | 25
Common BOIDS Values Flow Strength Flow Direction Separation Distance Separation Strength Alignment Strength Cohesion Strength 50 5,1,5 3 1 1 1
Boundary = 21 Agent Count = 30
Boundary = 9 Agent Count = 200 Boundary = 30x500x30
Boundary = 3 Agent Count = 30
Boundary = 9 Agent Count = 200 Boundary = 30x200x30 00:01 00:01 00:01 00:01 00:04 00:04 00:04 00:04 00:07 00:07 00:07 00:07
Neighbour
Neighbour

//3DPatterns_BOIDSValues

The last exploration of the second phase involved the modification of the local and global rules to identify consistent behaviour and this was done in the third dimension. Emerging from a line, the agents were first studied individually and then with interaction. The key things to note here are ‘intraction creates possibility’. This is due to one agent not being sufficient of itself to produce verticaliity. And the second ‘possibility creates irregularityy’. The regularity of the boids behaviour changes with increased interactions.

26 | DrawingMachine
Common BOIDS Values Neighbour Boundary Separation Distance Separation Strength Alignment Strength Cohesion Strength 3 3 0.5 1 0.5 Neighbour Boundary = 100 Separation Strength = 100 Alignment Strength = 100 Cohesion Strength = 100

Modifying Boids Values

Agent Count = 50 Neighbour

Agent Count = 50

Boundary = 3

Agent Count = 100 Neighbour Boundary = 20 Separation Distance = 3 Alignment Strength = 10 Cohesion Strength = -1

Agent Count = 100

Neighbour Boundary = 30

Separation Distance = 10

Alignment Strength = 0.1

Cohesion Strength = 0

Starting from the middle

Agent Count = 100

Neighbour Boundary = 20 Alignment Strength = 10

3D Patterns: Boids Values | 27
Values Separation Distance Separation Distance Cohesion Strength 3 3 1
Common BOIDS
Alignment Strength
Boundary = 3
= 3
Neighbour
Alignment Strength = 1

//3DPatterns_BOIDSValues

Emerging Forms

The subseuent form emerging from a series of iterations is an elegant form,. Possibility created from these interactions. However, they very soon begin to spill the ink as observed in the 2D patterns

28 | DrawingMachine
Neighbour Boundary = 100 Separation Strength = 100 Separation Distance = 100 Alignment Strength = 100 Cohesion Strength = 100 Agent Count = 100

Agent Count

The resultant form before the agents disperse into random behaviour was identified with an agent count value of 1000. The resulting form here is of interest becaue of how agents switch from he firstdimension to the third dimension creating an elegant form as a result

30 | DrawingMachine
//3DPatterns_BOIDSValues 00:01 00:03
00:05
3D Patterns: Boids Values | 31 Agent Count = 1000 Common BOIDS Values Neighbour Boundary Separation Distance Separation Strength Alignment Strength Cohesion Strength 20 20 1 1 0.2 00:07 00:08 00:10

3 / FurtherExploration

Assesment and Criterion

At this second stage of assesment, while the 3D airflow experiment has Possibilities of changing the directional input to normal of induced plane, the BOIDS values experimen was chosen because of the possibility of control from a wider range of local behaviours. Simply put, complexity is built up from the simple.

34 | DrawingMachine Attractors and Repellers //FurtherExploration Repellers Attractors Common BOIDS Values Attractor Strength Max Att Distance Min Att Distance Repeller Strength Max Rep Distance Min Rep Distanec 2 15 2 2 15 2 At entry At the middle At the end At entry Repeller Height = 0 At the middle Repeller Height = 70 At entry Repeller Height = 100
36 | DrawingMachine //FurtherExploration
Further Exploration | 37 3D Trail

Attractor and Repeller Strengths

More attractors and repellers iterations were studied with consistent change in strength at entry, at a specified vertical distance and at the top of the boundary. The results were documented all after 40 seconds of the silmulation.

38 | DrawingMachine //3DPatterns
_BOIDSValues

An interesting point to note here is there is no distinct graduation of form based on the strengths of the attractors and repellers. Rather, these agents produce continued dynamism.

Further Exploration | 39
Repellers

Is there something else the line can create?

Performative questions begin to arise like. What else can these lines do? what can trhey create, and what will be a criteeria for evaluating the success or faliure of these agents in a line. This led to an exploration of different forms of output that emerge from a line

4 / MeshPattern

//MeshPattern

Drawing Machine could be further explored by applying its patterns on other objects.

Raycast

One possible method to achieve this was through the introduction of Raycast, where the agents position is projected on a target mesh. In this exploration, we were not seeking to study neither the pattern nor the mesh, but rather the intersection between both of them.

42 | DrawingMachine
Mesh Pattern | 43 Raycast Common BOIDS Values Neighbour Boundary Separation Distance Separation Strength Alignment Strength Cohesion Strength 20 20 1 1 0.2

//MeshPattern

//Mesh vertices as starting points and attractors

44 | DrawingMachine
Attractor Strength = 10 Max. Attractor Distance = 2 Min. Attractor Distance = -1 Attractor Strength = 5 Max. Attractor Distance = 2 Min. Attractor Distance = 1 Attractor Strength = 1 Max. Attractor Distance = 2 Min. Attractor Distance = -1 Attractor Strength = 0.1 Max. Attractor Distance = 2 Min. Attractor Distance = -1 Attractor Strength = 0.1 Max. Attractor Distance = 10 Min. Attractor Distance = 1 Attractor Strength = 0.7 Max. Attractor Distance = 2 Min. Attractor Distance = 1 Attractor Strength = 1 Max. Attractor Distance = 2 Min. Attractor Distance = 1

Is there something else the line can create?

3 / WeavingPatterns

//WeavingPatterns

A second performaive function of the line was to exaine the possibility of these boids to weave. This implies a lot of control however, but with performance criteria.An indication for us that performance is in relation to a given standardof behaviour or appearance. The agents were initially made to move in a wasp-weft arraggement in conversation with the physical style of textle weavng and subsequently with the use of knots to create more desirable weaving effects formed by these boids

48 | DrawingMachine
Weaving Patterns | 49 Weaving
Weaving Patterns | 51 Rotation
Vetical
Rotation in Opposite Direction with 2 Agent List
Rotation
54 | DrawingMachine //Weaving
Patterns
Weave Strength = 10 Weave Strength = 20
Using Sin Function
Weave Strength + Rotation Weave Strength
60 | DrawingMachine
Process | 61

Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.