Orthogonal Branching System | Algorithm Development

Final Project for Coding for Design I Course

[DATE] Sept - Dec 2022

[INSTRUCTOR] Panagiotis Michalatos

[Project Type] Individual project

[Abstract] In this project, I focused on algorithm development, trying to combine together two classical algorithms – Random Walk and Branching System and then tried to use it to do some designs. I started with simple rules to mimic Random Walk behavior then played with the algorithm and also introduced more new features into it to gain more control, get more possibilities and increase its complexities. Then I added the Branching function, and this additional function converted the whole algorithm into a space-filling algorithm, which generates more interesting results. Next, the algorithm was extended from 2D to 3D, having more practical meaning in the design field. Thus, in the end, I successfully used this algorithm developed by myself to finish a concept design for a public installation.

Stage 1. Random Walk Algorithm


The basic rules to achieve Random Walk:

After implementing these basic rules, we can get a unique behavior similar to Brownian Movement:

We can play with these rules to have different variations

Variation 1 - One Main Direction

Variation 2 - Different Step Length

Variation 3 - Attractor

Variation 4 - No Self-intersection

Stage 2. Branching System Algorithm


The basic rules to achieve the branching behavior:

This algorithm can also be extended to 3 dimentional:

We can also add some growth obstacles to get more control 

Stage 3. Public Installation Design


Use the algorithm to generate the framework

Set different demands for different areas

Use growth obstacles to influence geometry generation

Give the framework volumes

According to different demands in different areas, I used different sunshade components to consist the panel system

Previous
Previous

Phantom

Next
Next

Robotic Arm Democratization