Architecture and design are ever-evolving disciplines that seek to
exceed their barriers with every new creation. The complexity of
contemporary designs, allied to the pressing requirements for energy-
and cost-efficiency, is rendering current design tools inapt. Architects
and designers intoerested in modelling complex shapes, mechanizing design
tasks, or evaluating the performance of their designs find considerable
limitations in the current Computer-Aided Drafting (CAD), Building
Information Modeling (BIM), and analysis tools.
Algorithmic Design (AD), an approach that entails the creation of designs through algorithmic descriptions, offers a solution to the problem. Programming allows a CAD, BIM, or analysis tool to be amplified with new capabilities, overcoming the limitations that hinder the design process. There have already been considerable developments in the area of AD, and several tools have been proposed. Famous examples include Processing, Grasshopper, and VisualLisp.
Given that the evident need for computation knowledge in all professions, we cnsider this to be a crucial topic for university students to learn.
Khepri is a new design tool based on the idea that a single algorithmic description can be used to generate equivalent models in CAD, BIM, and analysis applications. It is a direct descendant of Rosetta, an AD tool we have previously developed to support Racket, Processing, and Python programmers. Khepri is built on top of the Julia language, which was chosen because, in order to teach young architects to code, we needed a language that did not have a steep learning curve, did not penalize the execution of the computationally-intensive algorithms, and could be used for large-scale development.
Image: Parametric Pavilion by ADA
our modelling work
our visualization work
our analysis work