This project revolved around utilising computational thinking and logical principles for crafting assembly and growth processes. This exploration involved using iterative algorithmic approaches, commencing with essential spatial building components.

We have designed a few essential components in the form of voxels that served as fundamental computational units, having the capability to both store and process data, owing to their topological and spatial-geometric attributes. Consequently, the assemblages were considered organised structures that could retain and manipulate information.

Component A

Component A

Component B

Component B

Component C

Component D

Beginning from an initial element and its placement, the growth process was influenced by internal and external factors. These factors served to either restrict or enhance the growth structure and the system’s inherent qualities. The final aggregation was examined from the perspectives of constructability and robotic automation assembly, offering insights into crucial information and data that subsequently informed further robotic explorations.

The first step for all components involved generating Join planes that will serve as a medium to join two iterations and reference planes that would serve as a reference to calculate both the position and the collision check for all iterations.

From the generated join and reference planes, we generated a series of permutations to visualise the combinations of successful joints. The same has been shown below for all the four components. All the components have 4 join planes in different positions.

Permutations – Component A

Permutations – Component B

Permutations – Component C

Permutations – Component D

From the above-generated permutations, we have generated an assemblage of the components using the Anemone Plugin in Grasshopper. For every iteration, the plugin checks for collisions and generates only the ones that do not collide with each other, hence generating a mass of components in an assemblage. Below are the assemblages generated for all the four components.

Assemblage – Component A

Assemblage – Component B

Assemblage – Component C

Assemblage – Component D

Custom Filtering Method

The Repella-tractor growth logic commences by establishing two random points in space and subsequently connecting them to create a curve. This curve is then divided into five segments. With each iteration, the permutations on each segment of the curve alternate between repelling from or attracting to the curve. The resultant outcomes are influenced by the positions and rotations of the joining planes, leading to variations in results between them.

Logic Diagram for the Custom Filtering Method


A graphical representation of the custom filtering method

In order to evaluate the efficacy of the logic, we applied it to a straight line within a 3D space, and the ensuing outcome is as follows.

Results on the Logic on a Straight line in 3D space.

Given the effective operation of the logic, we proceeded to assess its performance using four distinct components, yielding the subsequent results.

Assemblage of Component A in the Logic developed

Assemblage of Component B in the Logic developed

Assemblage of Component C in the Logic developed

Assemblage of Component D in the Logic developed

We tested the logic with additional conditions, explicitly altering the rules governing attraction and repulsion based on the iteration number. The subsequent section presents the outcomes obtained when employing this modified logic with the iteration number.