• CodedShapes
  • Posts
  • A Beginner's Understanding of Computational Design

A Beginner's Understanding of Computational Design

Let me start out by saying that I am no expert. With only 3 years (At the time of writing) in the field, I don't know enough to clearly define the entire field, which is why I am not going to give you a fixed definition that might be wrong and might go out of date in a couple of years.

But, I am going to give you some insights into what the Computational Design space is like. Which I will do in two parts. First, I am going to run through some specific examples of what Computational Design is all about. Then, I will go through the mindset surrounding Computational Design which is the part that I find more interesting.

So, Let's start.

Examples

If I could sum up Computational Design in a single sentence, it would be this:

It is using the power of computers to help us better find solutions

But, I don't mean just automation or building better software. I mean to actually make use of computational power to better solve problems. There are of course many specific ways of doing this but here are two methods that I use every day as a computational design engineer.

1. Parametric Design

A design technique that allows drives a design based on a few key variables. This is very useful and sometimes even vital for projects that you anticipate will receive a lot of change.

In my experience, this technique is used a lot in the early stages of a project where quick iterations of design are needed. Parametric design offers a path to run through many different iterations in a short amount of time.

2. Algorithmic Modelling

A modelling technique that involves building a step-by-step process (algorithm) that generates a 3D model, instead of creating the model by hand. Any type of modelling when done by hand is unique and highly personalized.

This is good when a model is fairly unique, finalized and does not need to be repeated. However, failing to meet any of these criteria may result in errors and repeated modelling time. The one criterion that I find never met, is the finalization of the model.

Rarely are models ever finalized in a project. There is always some change that needs to be done.

When modelling by hand, the final model obscures a lot of the modelling process. It is never clear how the model was created in the first place.

For example, take a look at this simple 3D model of two cubes.

Because it isn’t clear, there are many paths that one can take to create this model.

If someone (other than the original modeller) were to re-create or make changes to this model. They would have to restart the entire modelling process all over again by choosing one of the modelling paths. It isn't a problem if the model is simple but that is rarely the case.

What algorithmic modelling stands to offer, is the ability to solidify the creation process. To label every step of the modelling path.

Knowing the process is important because if a change does occur, anyone can intervene at any step in the modelling process without needing to restart the entire path again.

This track record also helps identify any flaws in the modelling process and helps us be more pragmatic about each step we take. It exposes a somewhat hidden process and brings clarity to modelling.

3. Others

There is so much more to the field of Computational design. Topics that I hopefully will get to cover in this Newsletter. Just to list some on the top of my head, there is still generative design, form finding, environmental analysis, and many more.

While I enjoy the specifics of Computational Design, I think the mindset surrounding this space is more interesting. It's the mindset about how a person can use computers to solve problems in the first place.

Mindset

Every time we come across a problem, my first instinct is to always try and tackle it immediately using what I know but the mindset of Computational Design implores us to take a step back and first evaluate all our tools and possible options.

It's a very subtle shift in the mindset when it comes to Computational Design but I think it is one that encourages us to explore more instead of staying in our comfort zone.

Even now, I still do get caught up in my old ways. I tend to stick with what I know and what is comfortable. Whereas, this mindset shift encourages us to explore other potential solutions out there.

But this new perspective isn't just about automation or using more software. It is about leveraging computers to find better and more efficient solutions. It is trying to attack the problem from a completely different angle. And it is about exploration instead of sticking with what you already know.

I like to think of it like this. Before the age of computers, engineers used to do all calculations by hand. But now, we use computers to run simulations instead. The fundamental knowledge of engineering doesn't change but the way we apply those calculations does.

This change, therefore, warrants a different way of thinking. It no longer becomes "which calculations give me the best results" but rather "what simulations do I need to run" or “How can I efficiently use simulations to design this building”.

I believe that is what Computational Design is all about. It is about finding the best solution by leveraging the power of computers.

Final Thoughts

So I hope that was somewhat interesting and at least a little bit helpful when it comes to understanding what Computational Design is all about.

I know the mindset part of this post can be vague and hard to understand. But, my point is that Computational Design encourages us to explore and find more solutions. Ones that we would never even think of using. Like how engineers would have never thought of running simulations to design buildings because computers were not powerful enough. But now, they use them every day on every project.

I think the mindset is a shift akin to this. It is about finding computational solutions to problems.

If you are interested in Computational Design, consider subscribing to this Newsletter.

Thanks for reading!

Braden.

P.S. I have a Youtube video explaining this entire post in an awkward fashion.