An algorithm is a process of addressing a problem in a finite number of steps. It is an articulation of either a strategic plan for solving a known problem or a stochastic search towards possible solutions to a partially known problem.
-Kostas Terzidis
The most compelling proposition of Kostas Terzidis’ Algorithmic Architecture is the thought process introduced through the grammatical exercise of generating an algorithm. The rational definition of rules, constraints, or problems implies a rigorous methodology – relevant beyond mere translation into computational terms. In fact, an algorithm may be divorced from computation entirely, thus becoming a means of codification for analysis.
Using algorithmic processes as a framework for conceptual design forces a logical definition of a given problem. Through this process, one separates what may be quantified or definitively established from the more arbitrary or qualitative dimensions of the design process. This disconnect is not meant to subvert the validity of intuition or interpretation; rather it necessitates certain honesty, establishing grounds for critique. Thus a design solution can be evaluated against pre-established rules in a coherent, intellectual fashion.
The process of formulating an algorithm separates the numerous dimensions of a problem into discrete tasks. In doing so, it presents these tasks as performance criteria. Views, structure, solar exposure, ventilation, access, etc. provide a point of departure and inform the design process – conventional or computational. Measurable variables initiate a search for optimization and allow designers to make rational decisions about form.
Computation, in opposition to what Terzidis refers to as computerization, has two primary applications: form generation and form analysis. Terzidis is predominantly concerned with the former, which as of yet remains widely unexplored within the field of architecture. A variety of reasons are given for this condition, but I would argue that the key problem is interface. Computer scientists have developed advanced programming environments such as Ruby on Rails and Apple Inc.’s Cocoa to streamline tasks and increase legibility. Mathematica offers scientists, mathematicians, and engineers a powerful GUI and kernel. Processing affords artists and designers a simplified and comprehensible Java-based environment for generative and interactive work. More recently Grasshopper for Rhino and Paracloud have offered architects similar expandable toolsets. All of these are essentially interfaces for computation that increase usability and consequently, usefulness.
The second computational operation, form analysis, has rapidly gained prevalence in the fields of industrial design and engineering. Solidworks, Fluent and Catia to name a few, offer designers different ways of seeing and evaluating design decisions. The implicit potential for architecture is the promise of performance. Ideas may be tested, optimized and fabricated using advanced technologies.
The Point: The thought processes involved in developing an algorithm may be applied to conventional design approaches to considerable benefit. This process is as much a way of thinking as it is a way of executing computational models.











