Computation as a tool for Architectural design development

dfgrgdfgdf

Computational Tools for Design Development – A Case study of Building the ITHRA project

By Mohamed Naeim A. Ibrahim

Contents

  1. Introduction
  2. Computation for Design Realization 
  3. Realization role of an Architect 
  4. Step-back capabilities
  5. Computation for Construction  
    • Intelligence Embodiment
    • Orientation & Referencing
    • Data Management
    • Fabrication
    • Machine Control
  6. Conclusion
  7. Appendix

Images and Illustrations

Figure 1: Building near completion…………………………………………………………..

Figure 3: Shading Devices above the Cladding system…………………………..

Figure 4: First Digital Model Rendered…………………………………………………….

Figure 5: Step-back capabilities 01…………………………………………………………..

Figure 6: Step-back capabilities 02…………………………………………………………..

Figure 7: Wall Unit after Data Embodiment………………………………………….

Figure 8: Difference between Site and workshop Coordination………….

Figure 9: Wall unit contents……………………………………………………………………

Figure 10: Referencing Points of interest……………………………………………..

Figure 11: Precision, between Mockup and Reality………………………………

Figure 12: machines, similar to our used machines……………………………..

Computational Tools for Design Development –
A Case study of Building the ITHRA project

  1. Introduction

A paper describing the process of using computational tools in the realization process of King Abdul-Aziz tower for world culture, a project I worked on as an Architect.

erreerwferw

In this paper, I will share  my experience in constructing King Abdul-Aziz Tower for world culture (ITHRA). In this project, I was working on the process of fabricating and installing the facade and roofing system. ITHRA project is one of the most prestigious architecture built recently in the Middle East; a great building designed by the international office of Snohetta of Norway. ITHRA is a giant center designed to host cultural activities and events, it consists of a tower, and a couple of other buildings containing auditoriums, halls, and many other spaces. The building is designed in a creative way, where all its surfaces and volumes take a free form theme. The whole building has the shape of a cluster of rocks merged together in a homogenous way. This project is expected to be one of the most famous architectural masterpieces worldwide, not only for its beautiful appearance but also for its avant-garde technology used to design, build and operate.

In this project, my work was engaged directly with the production process of the building envelope, that include the facade and roofing units, as the building was mainly made out of two things, structure and envelope. The structure was made out of typical concrete floors and columns, plus mass-customized steel structures, which were created to support roofs and walls. Our part was the most challenging part, where we were facing a lot of issues related to the realization of such a great building. The challenges started with the design itself, the complexity of its form, and the way the intelligence of design was miss-embedded into the digital data, and how we needed to deal with that, then the difficulty of fabricating a unique structure and its tectonics in a less advanced construction environment, and finally, the challenge of working with the other team, where they used a very primitive way of working. 

  1. Computation for Design Realization 

egerfes

I had a number of responsibilities on this project, but before I describe my role in the process, I will address the issue of computation for the design realization. When realizing a complex structure, especially if that includes freeform surfaces, it’s very important to use the computation power to automate the digital model creation. The first reason is because that is the main challenge; it’s almost impossible to use the manual way in following and understanding the non-linearity of the architectural form. The second reason is that the designing and building process of a project requires a lot of details and drawings, and the time/budget are very short to be able to produce thousands or millions of these data, especially because it requires an army of designers and drafters, who are not reliable or even possible, especially with the high skills required to work with such problems.

In that project, the part which I was not involved in, but was very important, is the process of generating the full set of the three-dimensional detailed model of the building, which was rationalized into over three thousand units, each unit is provided with every single detailed part, with the exact shape and size, that includes hundreds of parts, such as structural steel frames and their supporting mullions, C & T section holders, folded panels, curved runners, lifting hooks, shading device supporters, and finally all bolts and fixtures. All that parts are placed on its exact location using a custom computer program, built especially for this project, to automate the modeling process, in addition to many other processes such as programs of rationalization of elements counts and distributions, and also programs of evaluation for structure reliability and wind resistibility.

  1. Realization role of an Architect 

dfsdfdsd

My role started on the project soon after that sophisticated 3D model comes to life, after it was tested, accredited and finally approved. Then it was my role to use it. As an architect, my role is to communicate design ideas, concepts and information to all team members participating in the construction project, otherwise, it is impossible to them to use the data, unless if it was translated to each participant in a language he, she or it (machines) can understand. In our case, the model, even it was created in a generative and intelligent way, however, it was inform-less, it was CAD model, however, construction need BIM model, a model with all information and data embedded into each part of the tectonics, to be callable, reachable and categorize-able. The interesting part is that the model had a little bit of invisible embodiment, actually, it was filled with some kind of classifications using some deep digital formats, but still was not recognizable for many people, like other architects brought to do the job, and then that what I was able to reveal using the computational tools I developed especially for this project. That was my initial part of the job, which I will explain in details later on within this paper.

 

  1. Step-back capabilities

While Exploring the intelligence and deepness of these project parts, I learned a lot about construction advancements in the era of digital age, When an architect designs a freeform building, with all curved and nonlinear shapes within its parts, he should put into consideration many issues related to its construct-ability, but what is more important, is to give the constructors a step back possibility to be able to keep the precision of the work, even when fabricators and constructors make mistakes, all that is achievable within very small tolerance chances. In construction sometimes, especially when they use primitive approaches, the worst which could happen, is that they miss-coordinate items, such like our project, where they placed a column 300 millimeters away from its supposed location. Sometimes, fabricated units are welded in a neglected way, a small item would be tilted or twisted in the wrong direction, not much, but that means for sure that neither of the hundreds of supports and holders or their fixing bolts would fit to their location, a holistic chaos, nobody want to spend the day trying to find what went wrong for such mistakes.

sdfsdfcds

So the tolerance allowing techniques, as I like to call it, is permitting items to become adjustable and adaptable, that means each item has a number of axes for transformations, moving and rotating around a specific plane. So if the guys there on the site did not do their job properly, then the installer would have the capacity to install the part integrally without the need to prefabricate the item or demolishing part of the construction, but all that was only possible if it was within the set tolerance.

dfvfdsfds

  1. Computation for Construction  

To conclude my activities in this project, in 5 main tasks, embodiment of 3D Model, BIM Data Management, Fabrication Coordination, Precision proofing, Machines Automation. Each one of these tasks was a trip of it own, all of them were happening at the same time simultaneously. A long work day starts with computation, followed by running the programs, applying them to the elements, but then a process of data management starts, in order to make the fabrication possible, but then sometimes things get messy, and we then need to make sure everything is within the tolerance, every time we do this, and finally, machines need to be programmed, not the electronic programming, but the data-interpretation programming. That’s all my work in few words.

dfvdsfsdds

5.1 Intelligence Embodiment

The first task was concerned with creating a computer program, which can understand geometry created, by recognizing its elements, and then be able to locate specific points of interests within the piece. That was not an easy process. The model was designed using an algorithm, which uses modules of standardized construction elements of different types; each element is selected according to its suitability. Each element was coded in terms of color, and function. And that’s it – a dead geometry without single usable information, and even if we had the names embedded, still that was not what we needed at all.

sdfsdf

So I started writing a program with the well-known tool of Grasshopper, a generative design tool work on top of Rhinoceros of Mcneel as a plugin, it allows the designer to create design programs through a visual programming interface, without the need for any deep programming education. But it was not enough on its own, I needed to use Python, an oriented programming language which works within Rhino and Grasshopper, and it allows the designer to use the syntax of the software and it’s behind the stage modules. This allows functions to be automated, and activities to be permutated, through programming, solutions can be iterated and finally it allows recursion, that solutions can be reused as inputs in computation.

5.1. Orientation & Referencing

We needed a lot of information when we intended to utilize this model in our construction process, as we can’t use drawings in such projects anymore, that’s because, in freeform buildings, there is no system of referencing, such as Cartesian planes (XYZ Plane) where it is possible to measure distances, or even calculate rotations. In free-form buildings, everything, every element is unique, every single one is located and oriented differently, and I am talking about over three-thousands units, each element we worked with, we needed to assign a self-referencing plane for every single one, and then altering its orientation between the original site-based plane (World Plane) and the Workshop-based Plane (Temporary Plane). Because of that problem, we needed to separate each element and exported them in an isolated environment. We used some simple algorithms which allow units to be projected and altered between the two planes.

dfgdfds

In the Workshop, reality, orientation was a bit harder, that requires a unique adjustable stage, and each unit with its heavyweight, was lifted and placed in a specific setting, and we started the process of fabrication. Some other elements were prepared for the process such as a stage for monitoring.

 

5.3. Data Management

The second stage requires us to try to find the points of interest for us, points used to digitally locate frames and mullions, points used to placeholders, or their fixing bolts, and also the points of initial hooking and hanging, hooking the unit to the floor, or hanging the shading devices from outside. There are hundreds of these points, and we needed to automate not only the process of finding elements but also ordering process, data-structuring, layering, naming, annotation and displaying processes. We designed a system which builds a data structure for all elements we agreed to work with (F-frames, T-mullions, C-sections, I-sections, R-Runners, and H-hooks), then it finds a specific location within each part which can measure margins, and then precisely find points of interest.

dfsfsd

Another algorithm was used frequently in this process to produce a list of naming, numbering, and clearly visible annotations, for helping in the afterword process of fabrication. And that process was one of the most important in the whole project, other team members are not like us, they are basic computer users, even if they have training, they suffer a lot while trying to find an element or reading an attribute.

dfgff 

5.4 Fabrication

Now, the model became a fully integrated BIM model, full of useful data, transferable, reusable and interoperable. We hand data to surveyors, to measure initial steel frame, In this stage you work with a real part of the project, in the heat of the desert, supported by a revolutionary total station, heavy duty laptop machine, and very expensive work kits, we used the laser locator to assign the new work plane, and then we started to check and retrieve the status of each point we annotate in our 3D model. The machine record the data, and then the data get back to me. I used another algorithm to compare the current status of the unit with the 3D model. In this process, we duplicate data structure again, for the new set, the points on reality. Then we apply a calculation algorithm which compares deviation for each axis at each point, and that would make a table or tree of data, at that point, we used another algorithm which can export all that huge data sets into readable excel files. With some settings, everything became readable, and then fixable and adjustable, for example, if a point is shifted forward, it’s brought backward while the unit is still laying on the workshop plane settings. All these processes were repeated through all other stages of fabrication and manufacturing.

dds xddscds

5.5. Machines Automation

While fabricating the rest of the elements, some elements required to be produced with machines, such as the aluminum panels, and the aluminum runners, some need folding machines, and some need a bending machine, a bending machine is a tool which swallows a straight frame in, press and pushes it in a specific way long number of rollers, and spits it away curved. The curving process requires a special kind of data, which is organized in a table, each element has an adjustable level of accuracy and strength is required to change it, calculated mathematically using the coordinates of specific points within the element, and it was very easy to test its reliability, even without measuring sometimes, the new bent runners are placed perfectly on top of its holders, with no single gaps. And that was the goal – precision.

dfdsfs dferrfer

We heavily needed to use machines when we needed to build a mock-up, a one to one scale structure, representing a part of the building, in our case was the upper corner of the auditorium. We needed to produce a number of extremely curved units and install it to the structural portion placed on the factory. And the curved units were unique with interconnected curved runners.

  1. Conclusion

Designers should really start to develop new kind of skills and techniques that allow them to understand their designs better, and help them realize its realm out of the digital model. A designer should be able to produce structural systems out of the shell he creates, and he also should be able to produce 3D detailed models, including all kind of details required for the project to be built, either using customized elements or purpose/location related elements. Especially that we are now in the era of digital design, where the 2D drawings are not anymore required or even useful in an efficient way.

A successful building information modeling, is not only the use of commercial packages found on the market in designing and modeling a project, but it’s more precisely, the efforts a designer makes to communicate and exchange his important design data and information with all kind of participants in the design and construction team, each according to his needs, and that kind of information should really put into account from early stages of design, otherwise it would be a problem for constructors and contractors to extract it out for use.

It is very important to use supporting digital kits in the construction process, which goes beyond the manual ways, for example, total stations and 3D laser scanners to document the existing status of the building or its elements. Other tools are also useful and important, but more importantly to develop a workflow or methods to integrate these tools efficiently in the process, and gain the benefits from its feedbacks.

Computer numeric controlled machines are necessary for the fabrication and installation of freeform projects. These machines can reduce the time required for producing loads of elements. CNC machines can also produce complex shapes that man can’t produce, at least easily. These machines can safely manufacture hazardous materials, which require heat, electricity, and mechanical forces, without one single accident to the construction team.

  1. Appendix

3D Model of the Basic Element

https://sketchfab.com/models/660097f3b2fa46eca6044629e44f058f/embed

facade
by mohamednaeim
on Sketchfab

Advertisements

8 thoughts on “Computation as a tool for Architectural design development

  1. Hi Naiem, I enjoyed the article thoroughly and definitely a number of good takeaways the future generation of architects will have to pick up. Here are some questions however that I do hope you’d have the time to shed some light on.

    – What is the depth of scripting knowledge required (in this case Python)? (Simple if/else and loops or really long and complicated ones?
    – Other than Revit; Grasshopper and Python, are there any programs you’d recommend for a digitally inclined architect?
    – Should you encounter any problems you weren’t able to solve, how did you solve it? (Consult a computing expert or find alternatives with Python?)

    Looking forward to your next post!

  2. – What is the depth of scripting knowledge required (in this case Python)? (Simple if/else and loops or really long and complicated ones?

    Personally, I have been training myself for 3 years before start working on that project, I covered many tutorials, books and videos, i attended workshops in the UAE (RHScript) and London (Python) I tested an applied scripts in my MSc projects and thesis, all that would be a good boost for your computational thinking abilities.

    for me, this is a deep level of knowledge of Parametric design and computation, however, its still very basic level for a programmer. the good thing that we are not programmer and we dont have to be. Its enough for an Architect to be able to solve his design problems without THEM. So my answer is SIMPLE ALGORITHMS.

    To explain, IF/ELSE LOOPS is a way to use the power of computation such like iterations and recursions in speeding process and avoiding repetition of manual tasks. its simple, but what it iterate is complex, you build the workflow; the huge amount of grasshopper batteries or rhinoscript algorithms. Then, you set them within a python iteration or recursion to get the benefit of computing

    I am not sure how deep you need to go to solve such problems, but for sure, the skills required are not similar to the one you find on every day tutorials, which you find every where in the internet, its a unique set of problems. You need to build a variety of different skills in most of the design computation areas. you need to be able to fix the same problem with many different approaches, then you need to be able to rebuild the same algorithms after understanding the work-flow, so you can make it simpler and more efficient

    – Other than Revit; Grasshopper and Python, are there any programs you’d recommend for a digitally inclined architect?

    IF you are talking technical here, I dont recommend specific software, I recommend learning workflows. First you need to learn 2D CAD operations ( AutoCAD or any other software even if it was MAX or Revit). Then you learn 3D modeling and solid operations, in whatever software(MAX or Rhino). Then you learn about BIM ( Revit, ArchiCAD or any software) finally you can start learning Parametric Design (grasshopper or dynamo or GC) then you learn about programming ( Scripting and Programming).

    – Should you encounter any problems you weren’t able to solve, how did you solve it? (Consult a computing expert or find alternatives with Python?)

    There is no problem you cant solve, its only the demanding of completion against time and effort. You might find it difficult to build very complex algorithms in short time, so you borrow pre-built algorithms as shortcuts to solutions. We are lucky to have many addons online, especially for Rhino and Grasshopper, there are also many open-source websites offer a collection of solutions. Forums are also a good place to get help.

    I hope that answered your questions

  3. Hi Naeim,
    I am curious what your advice to Architects and designers would be when creating their 3D models in the design or design development stages, so that the workflows you are talking about are more streamlined. You mentioned that the model you began with was virtually worthless in terms of usable data. Keep in mind that often the designers don’t have access to the details of the machinery that will be used to fabricate the cladding elements, nor would they be able to predict the limitations of the fabrication or installation process. Designers may know the shape of the building elements, and function, but maybe not much else, without beginning to do the kind of work and investigation you were doing – and in the design phase of a project that is often not feasible.
    Very interesting article, and very nice work!

    • Dear Chris Hughes,

      Thank you for your valuable comment, I will try to answer it as I understand the question, I hope that I can give you the right answer. Some answers would be short, if you need more explanation don’t hesitate to ask me again.

      *I am curious what your advice to Architects and designers would be when creating their 3D models in the design or design development stages, so that the workflows you are talking about are more streamlined.

      Hi CH,
      In the Design Development stage, there are a number of tasks an Architects need to accomplish ( I advice you to read RIBA plan of work, or whatever similar), but to summarize, its a stage where he get involved and get familiar with other participants of the Design and construction team, at least at a preliminary level. His design started to take a more realistic form, when he started to learn about what other do, including structural engineers, mechanical and other members, and also how builders do the job. The Architect or architectural offices now a day are more automated and segregated, automated by huge number of drafters how reproduce works, and segregated by doing only Form, and keep the rest for other companies in what I call share of Quotas system.

      The role of an Architect start at very early stage but doesn’t end early, even if he is not responsible for other engineering designs as how it is in today practice, he still need to be monitoring over the whole process in a feedback loop. That because its not normal to have an Architect in a construction company. What does he doing there in the middle of a punch of labor and builders?; he is doing the job that the architect forget to do, or doesn’t want to do, or are not capable of doing.

      *You mentioned that the model you began with was virtually worthless in terms of usable data.

      Actually, as I stated clearly, some data were embedded in a very deep format, that a typical Architect or contractor cant use, they cant understand or even extract. and this is why they need to hire an Architect with Computational Design skills. otherwise they wont spend that much of money.

      There are many detailed information of data were missing, at least for the stage of fabrication, manufacturing, and installation. but also I can emphasize that much of the data were mis-embedded or missing such like on the small tectonics( such as C-sections), and that where I needed to re-embed some of these data again using Python Code.

      *Keep in mind that often the designers don’t have access to the details of the machinery that will be used to fabricate the cladding elements, nor would they be able to predict the limitations of the fabrication or installation process.

      Again, that is not an excuse, because Designer still need to approve what ever companies or builders (with their own or in-house detail makers) offer of building technology or mission statements. Designer also need to take what they receive from other companies and share it with other team members in a way that understood and applicable, otherwise they will be hoving around looking for someone to translate the slang(literally).

      *Designers may know the shape of the building elements, and function, but maybe not much else, without beginning to do the kind of work and investigation you were doing – and in the design phase of a project that is often not feasible.

      If a designer wish to create such buildings, with free forms and double curved facade surfaces, they need to be aware and skilled with Computational design techniques, otherwise it would be wise to maintain the shape cubic and typical. If not, then it would be impossible for them to build it, or worse, having it in totally different way than it was planned or imagined to be.

      I hope this answered your questions

  4. Hey Naeim – Very educative article. With regards to learning programming, I am sure this doesn’t mean getting a computer science degree, so what tutorials, books, other sources do you recommend as a starting point for a complete programming dummy? Also at what point do you transition into programming from grasshopper, while you are still learning grasshopper or when you have learnt grasshopper?
    Finally, as a project approaches construction document phase from design development, when does the architect differ from the fabricator, with regards to setting up what information is part of the BIM model prior to fabrication?

    • Hi Azu,

      —–With regards to learning programming, I am sure this doesn’t mean getting a computer science degree, so what tutorials, books, other sources do you recommend as a starting point for a complete programming dummy?

      The best place to start is Grasshopper forum where you can find link to every thing. http://www.grasshopper3d.com/
      Then you can Go to Rhino Python Forum http://wiki.mcneel.com/developer/python

      I would like to appreciate the help of all members of these forums, for their guidance, support and encouragements. people like David Rutten, steve Baer and many others who just sometimes stop-by and answer your inquiries while you try to learn.

      —–Also at what point do you transition into programming from grasshopper, while you are still learning grasshopper or when you have learnt grasshopper?

      First, I started learning Rhino and grasshopper, its easier, then I started learning scripting ( Rhino-script ) then finally I started learning programming through Python.
      and the learning process still ongoing. Each one need couple of months to learn ( 3 – 6), so be patient.

      ——Finally, as a project approaches construction document phase from design development, when does the architect differ from the fabricator, with regards to setting up what information is part of the BIM model prior to fabrication?

      As I stated in previous discussions, Generally, the architect role keep getting re-activated with every new changes and developments. its a circle or loop. Especially if you have a unique project, and you don’t want fabricators and constructors to ruin the imagined form. However, the process gradually starts to vanish, and it get converted from direct act into guidance and finally monitoring.

      but the architect role in the digital age is different. and that what the paper is about. The Architect role in the digital age went beyond forming the egg only, a designer with parametric design skills participate on the structural design process, environmental evaluation processes, details making, simulation of patterns and systems, and many other roles in early design stages. Then another role comes-in/araises on later stages as pointed out on the paper.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s