Open-source parametric design tools for breakwaters



Aerial view of a breakwater construction
The current breakwater design process is very time consuming. Therefore, engineers cannot explore all design possibilities. Due to this, they often have to make conservative assumptions that lead to an overdimensioned design which is more expensive than it actually has to be. By using parametric design to automate the exploration of concepts in the desing process, engineers are enabled to take all possibilities into account. This does not only benefit them by saving time, but also contributes to cost reduction and winning tenders.
Download the white paper and get INSPIRED

Collaborative parametric design models allow you to work together for better solutions

For my graduation I researched the applicability of design automation for the breakwater design process. Design automation is defined as automating (part of the) design process to make it less time demanding. Because time is of the essence, more concepts need to be explored within the same timeframe. One way to do this is by using a (parametric) design automation tool. However, this tool has to be available first. This was the main problem I encountered during my research. There are several (parametric) design automation tools in existence, but unfortunately none of those were available as open-source tools. Ironically, this is precisely the challenge the construction industry faces as well. This meant that instead of using and further developing an existing tool, I needed to develop my own tool from scratch. This is not only unfortunately time consuming, but also prevents the continuous improvement of such tools.

The main challenge: open-source design tools

Where to start open-sourcing tools?

I understand that for companies it is difficult to share their parametric design tools, especially when the tool helped them to win a tender. Sharing your tool can by many be perceived as giving your competitors the same advantage as you have. Because of that, I will not be focusing on companies from now on. Instead, I will focus on students and universities for this project. Their main goal is not to win tenders, but on the contrary, their main goals is to progress and develop knowledge. Keeping this in mind, the best place to start open-sourcing tools seemed to be the universities and applied universities. These institutions are based on democratising knowledge. By having the students and researchers from these institutions share their code and tools under an open-source license, their impact can be compounded and a process of continuous improvement that has not been made possible before can be started.

Open-source tools for continuous development

If this is a success, existing tools can become digital building blocks for the development of new tools later. It is of great importance that universities encourage their students to open-source their code and tools for this purpose. This can for example be done by sharing tools on a platform like GitHub, or alternatively on a dedicated GitHub to engineers. This way the entire engineering community is enabled to use their tools. And when engineers use these tools in their design processes, they can later provide students and universities again with feedback that can be implemented in the design tool, starting the process of continuous development.

Design automation in open-source tools

Integrating the tool

So my breakwater tool is not the first tool, but it is the first tool available under an open-source license . The main design philosophy behind the tool was based on Lawson and Dorst (2005) who explained the importance of experience in a design process, as experienced engineers intuitively and immediately performs the necessary design steps. This statement was also confirmed during the interviews I conducted with breakwater designers, as the interviewees frequently explained their design process by using examples from other projects. This is an important part of my tool, as the goal of the design automation tool is not to replace the engineer. On the contrary, the design automation tool must mitigate the weaker point of the engineers, which is quickly and repeatedly performing the same computations without making any mistakes. However, the engineers have something the tool does not have; their experience and engineering judgement. By integrating a design automation tool in the design process we get an integrated design process where the main strengths of both the tool and engineer are used together.

Creating a user-friendly interface

However, my tool is a purely Python based tool and this limits the user base. Not all engineers are skilled, or comfortable, enough to use a Python tool. This raises the threshold for using the tool, which is undesirable as we want to improve the breakwater design process by lowering the threshold as much as possible. Therefore, an easier to use interface is needed. This can for instance be a graphical user interface. The next that has to be taken, is the creation of a web application out of the design tool. This tool can then be accessed through a web browser. Besides the benefit of not requiring a software installation, it will also make the tool available from every location. As long as you have an internet connection of course. But, creating a web application is a tedious job and requires a lot of time. Time you might not be prepared to invest yet, as the design tool was actually the end goal. To bridge this gap, VIKTOR offers a Python SDK that can be used to create a web application. With this web application engineers who are not familiar, or comfortable, with Python can design breakwater concepts in a matter of seconds. This greatly expands the user base, as everybody can use a website to enter the required values. Thus, knowledge of Python is no longer a requirement! Opportunities of sharing tools

Creating the optimal design

The design automation tool, together with the VIKTOR application, can be used to quickly design breakwater concepts. This allows engineers to investigate the influence of parameters on the design and costs, and thus explore more diverse concepts in the same amount of time. Because more concepts are explored by engineers it is credible to assume that the chances of finding the optimal design increase. As a result, the chances of winning the tender increase as well.

The challenge of open-sourcing

So back to the main challenge: To open-source the tools. My research showed that an open-source tool can help engineers in their design process, and thus increase the chances of winning a tender. Unfortunately, partaking students forgot or did not want to share their tool after they graduated. However, students are still in possession of the missing link: The design automation tools.

We need your help!

So, this is a call to remove all the dust from the tool you created during your graduation or research, and to upload it to GitHub under an open-source license. Democratise your knowledge so that the construction industry can improve due to your contribution! And remember, don’t be afraid to share your tools, or that someone will find a bug in your code. The biggest compliment you can get is someone else, maybe even an entire company, using your tool!

See how you can automate design processes by building your own user-friendly parametric design tool that can easily be distributed.


Cederfeldt, M. (2007). Planning Design Automation: A Structured Method and Supporting Tools. PhD thesis, Chalmers University of Technology, Göteborg, Sweden.

Lawson, B. and Dorst, K. (2005). Computational and Cognitive Models of Creative Design VI, chapter

Rustell, M. (2016). Knowledge extraction and the development of a decision support system for the conceptual design of liquefied natural gas terminals under risk and uncertainty. PhD thesis, University of Surrey.

Winkel, S. (2020). Improving the breakwater design process by using a design automation tool. MSc. Thesis, Delft University of Technology.


Related Blog Posts

plotly pandas numpy matplotlib python

Visualize your data with Python and VIKTOR

Read more

Save time by automating PLAXIS in the Cloud

Read more

Hackathon stimulates knowledge development

Read more