The Virtual Architect


Prof. J. P. Duarte, LicArch, SMArchS, PhD.

Department of Architecture, Massachusetts Institute of Technology, U.S.A. and

Department of Civil Engineering and Architecture, Instituto Superior Técnico, Lisbon Technical University, Portugal.





It is proposed a process of providing mass-customized housing based on computer-aided design and production systems.  Current work is focused on the design part, which consists of an interactive design system based on a mathematical model called discursive grammar.  A discursive grammar includes a shape grammar, a description grammar, and a set of heuristics.  The shape grammar provides the rules of formal composition, whereas the description grammar describes the design from other relevant viewpoints.  The set of heuristics is used to guide the generation of designs by comparing the description of the evolving design with the description of the desired house.  The generation of a design proceeds first by generating a design brief from the user-prompted requirements and then by finding a solution that satisfies the brief.  Search is largely deterministic, which decreases the time required to find a solution, thereby making it reasonable to develop Web-based implementations.

The model is illustrated with a case study that includes a shape grammar developed for the houses designed by the architect Álvaro Siza at Malagueira, a description grammar based on the Portuguese housing regulations, and a set of heuristics inferred after a set of experiments.  In these experiments, designers were asked to generate houses based on the Malagueira grammar for specific clients.  It is argued that this discursive grammar provides a rigorous method for understanding and teaching Siza's design process and that similar grammars could be developed for other styles.  A Web page for explaining the grammar and generating new designs on-line was developed as a prototype. This Web page works as a Siza amplifier becoming a virtual architect.

1. Problem and solution

The ultimate goal of the work referred to in this paper is a computational framework for the design of mass-customized houses that includes a design and a production system.  The current focus is on the development of the design system.  The purpose of mass-customization is to provide high-quality housing at an affordable cost.  The definition of quality is threefold.  First, it implies the satisfaction of functional requirements defined by building regulations.  Second, it requires the satisfaction of aesthetic requirements established within a particular design style.  This style can be historical or based on the work of an existing architect.  Third, it aims at satisfying requirements, which can be functional, aesthetic, or cost-based, and are specified by the client in addition to the other two.  In summary, quality is defined as the satisfaction of the user needs.  A high degree of customization leads to high user-satisfaction and prevents costs associated with post-construction changes.  Cost-control also is guaranteed with recourse to production techniques that rely not on exhaustive repetition, as in traditional mass-production, but rather on computer-aided manufacturing processes.

Traditionally, when a designer is faced with the design of a large development, the usual solution is to design a limited number of housetypes and then to repeat them based on market analysis.  The reason for such a procedure is twofold.  First, the designer is not capable of designing each house individually due the large amount of information that would be required to process.  Second, traditional manufacturing techniques require repetition to lower the costs using economies of scale.  The envisaged process aims at overcoming such limitations by using computer-aided design and manufacturing processes.  The idea is to give mass-produced houses some of the qualities associated with individually designed homes.  The use of such a process gives the average client access to the work of highly skilled architects, thereby making architecture more democratic.  The biggest market is not the traditional custom home client, but the majority of clients who do not use architects anyway.

The framework consists of computer-aided design and production systems (Fig. 1).  The design system includes an interactive program for generating housing solutions, and rapid prototyping and virtual reality techniques for visualizing these solutions.  The user accesses the program on the Web.  The program guides the user through questions that an architect would normally ask during an initial meeting, such as the family members' profile, their living habits, the rooms they want, the cost that they can afford, and so on.  When the interview is over, the program generates the design brief or housing program, taking into account existing housing regulations.  The user can then make changes to the initial requirements and the program will update the design brief.  Once the brief is approved, the program generates a housing solution that satisfies the requirements within a given design language.  The solution takes the form of a 3D digital model.  This model can be visualized on a flat computer screen using simple 3D viewers, or taken into a sophisticated, virtual reality environment in which the user can walk-through the house.  Alternatively, the model can be used to produce a scaled physical model using rapid prototyping techniques.  At this stage, the user might want to change the initial requirements and proceed through another iteration of the design process.  Once a solution is accepted, an order can be automatically issued to the housing factory.  This order will include a detailed list of parts, and digital information to manufacture the parts using computer-aided manufacturing techniques.  At the end of the manufacturing process, these parts are transported to the site and assembled.


Figure I - The framework envisioned for customizing mass housing. The design part corresponds to the virtual architect.

This work aims at the development of a mathematical model for the interactive program just described.  This program can be used by the designer or by the client, but in both cases, it enhances the designer's creativity by rapidly providing alternative design solutions.  Such model needs to overcome three problems.  These problems correspond to the three different types of computer-based methods identified by Radford and Gero [1].  First, it needs to provide a way of translating client data into design requirements, and to verify whether a design satisfies these requirements -- the simulation problem.  In simulation, the computer manipulates a mathematical model that describes the design to evaluate the performance of a given design configuration against the design requirements.  Second, it has to codify the rules of formal composition to design a house in a given style -- the generation problem.  In generation, the computer is used to produce design configurations according to a set of rules.  And third, it needs a mechanism to translate the design requirements into a housing solution -- the optimization problem.  In optimization, the computer is used to generate design configurations that meet a performance goal.  The use of the term optimization to refer to design is controversial, but it is possible to overcome the controversy, as it will be explained below.  The number of solutions that satisfy multiple requirements is potentially very large.  Thus, an important part of the model is a computational strategy capable of searching a potentially large design space, and providing insight into function-form relations for multi-criteria housing design.  In the next section, we will see different areas of study are merged to overcome the simulation, generation, and optimization problems and create a model with the desired features, called discursive grammar.

2. Areas of study

Once, we have a goal description and a process to generate solutions, the problem becomes one of finding the solution whose description most closely matches the goal.  This can be viewed as an optimization problem.  Viewing design as optimization is controversial [1], but part of the controversy is because optimization has two meanings.  In the general meaning, it means to improve a solution to a problem.  In the technical meaning, it refers to a set of techniques used in operations research.  Authors who think that optimization is not a good paradigm for design usually indicate four difficulties.  The first is the subjectivity of some criteria used in the generation and evaluation of designs.  An example of such criteria is the symbolic value of buildings.  The second is the difficulty to model aspects of design that are difficult to abstract, such as the society's pressure.  The third difficulty is that the design problem is often ill-defined, that is, the user might not be completely aware of what the needs are.  The fourth difficulty is that the problem might be over-constrained, as there might be conflicting requirements.  The first two difficulties are common to the modelling of complex problems in general.  In these cases, the model is an abstraction and it can be accepted as long as it proves useful.  Therefore, there is no reason why design problems should be treated differently.  Once the model is developed and implemented, it will be possible to test its usefulness.  The ill-definition difficulty is overcome in the proposed model by including rules to provide default values for data not supplied by the user.  Such values are based on typological studies [2,3].  The user can then change these values, to increase customization.  The over-constrained problem is solved by including rules to unconstrain the problem.  In practice, this corresponds to finding the feasible solution that is closest to the goal.  Similar procedures are already used by existing optimization techniques.  In conclusion, it is possible to represent the design of customized housing as an optimization problem.


The problem, however, is complex.  There are many tasks involved in the design of a house (e.g. layout, openings), and there is a multitude of criteria to satisfy (e.g. space, topology, comfort).  Task complexity is tackled by decomposing the problem into smaller problems, then concentrating on essential features of these sub-problems, and finally, selecting an appropriate technique to solve each of them.  For instance, there is a separation between the generation of the layout, and the design of the opening system.  These procedures, known in AI as sub-goaling, abstraction, and means-end analysis, mean that solution optimality cannot be guaranteed [4].  Even if the different steps are optimal locally, there is no guarantee that their combination will be globally optimal.  Criteria complexity is tackled by representing the problem as an optimization problem and then by turning the multi-criteria problem into a single criterion one.  There are two basic forms of optimization methods: single criterion and multi-criterion.  In single-criterion, there is only one viewpoint that is being optimized, whereas in multi-criteria there are several.  The solution to a multi-criteria problem is a set of solutions with performances such that no other solution exists that will yield an improvement in one criterion without degrading at least one other criterion.  These solutions are known as Pareto optimal.  In multi-criteria, choice implies trade-offs, that is the amount of quality in one criterion that the user can give up in order to gain more of another.  Such a choice requires the user to rank or to assign weights to the criteria.  Ranking is a special, less specific case of weighting.  There are three-basic types of approaches to solve multi-criteria problems: non-preference methods, preference methods, and interactive methods.


The preference approach requires the user to assign weights to each criterion a priori.  It solves the problem by turning it into a multi-criterion problem whose fitness function is the weighted sum of the fitness functions for the single criterion.  The result is a solution that represents the best compromise according to these weights.  The non-preference approach generates several of the Pareto solutions, enough to give an indication of the tradeoffs involved.  It works by varying the weights assigned to each criterion and generating the corresponding solutions.  Thus, in this approach the problem also is transformed into a single criterion problem.  Different non-preference methods differ in the strategy used to vary the weights so that the set of generated solutions is representative of the Pareto set.


The interactive approach combines the processing power of the computer with the assessing abilities of the user, through interaction between the two.  There are two kinds of interactive methods: interactive search, and interactive choice.  In interactive search, the user sets the weights a priori, as in the preference method, and the computer generates the corresponding solution.  Then the user changes the weights and the computer generates the new solution.  The process is repeated until the user is satisfied with a solution.  In interactive choice, the computer generates a set of Pareto solutions, as in the non-preference method, and then the user imposes restrictions on the performances.  Then computer generates a new set of Pareto solutions.  The process is repeated until choice is narrowed down to a single solution.  The method used in the proposed model is an interactive search method, mainly because the lesser burden on the computer implementation was considered more appropriate, for a Web-based implementation, in which response time is crucial.  The drawback is the greater burden on the user to articulate the preferences.


Once complexity is reduced, the problem becomes a simple search problem.  Search is an important topic in artificial intelligence (AI) that emerged with the first AI computer programs in 1950s.  There are two opposite approaches to AI, called weak and strong AI.  The first defends the possibility of developing general problem-solving programs, whereas the second advocates the development of programs with intensive domain knowledge. The first AI researchers believed in the weak approach, but a move towards intensive knowledge-domain has characterized the field since then.  Search is a very general problem-solving technique that tends to be close to the knowledge-poor end of the spectrum, but its exact position depends on the type of search method [5]. 


There are different kinds of search, blind, heuristic, optimal, and stochastic search.  Blind search proceeds without any assessment of the intermediate states relatively to the goal.  They are knowledge-poor algorithms and their major drawback is the time that they might take to find a solution, especially if the width and depth of the search tree are very large, as in the design of a house.  In heuristic search, a function is used to estimate the value or distance of intermediate states relatively to the goal.  The conversion of the problem from multi-criteria into single criterion yields a single heuristic function that might be used in heuristic search.  Thus, some domain knowledge is used to decrease search time.  The disadvantage of heuristic methods, however, is that search might get stuck in a local maximum, if the search space contains peaks, ridges, or plateaus.  Optimal search algorithms take into account not only the distance to the goal of a given intermediate state, but also the distance traversed so far.  They are, thus, able to find the best path to the goal.  Stochastic algorithms try to avoid getting stuck in local maxima by giving intermediate states with lower performances some probability of being chosen for further development.  The drawback is that such algorithms are non-deterministic and might yield different results in different runs with the same criteria.  Therefore, they do not guarantee that a global maximum is found, and it might take a long time before the algorithms converge to a solution. 


On the opposite side of search methods are pure grammars.  If there is enough knowledge of the domain, it is possible to know exactly which rule to choose at each step.  This process is deterministic and fast.  The problem, however, is that it might be difficult to acquire such domain knowledge, without generating all the possible solutions.  Generating all the possible solutions might take too long or be unfeasible if their number is very high, as in the Malagueira grammar, our case study.  For this reason, experiments with designers using the grammar were undertaken to find the heuristics used to choose rules leading to good solutions.  The experiments permitted to find some of such heuristics, but these were not enough to develop a pure grammar.  Therefore, it was necessary to couple the grammar with a search mechanism.


In summary, a choice between developing a pure grammar or using search depends on the number of solutions and it involves a trade-off between the time required to acquire enough domain knowledge to develop a pure grammar, and the time needed to find a solution running a grammar with search.

2.2 Discursive grammar: simulating, generating, and "optimizing"

In Section 1, it was outlined three problems -- simulation, generation, and optimization -- that needed to be solved in the development of a design system for customizing mass housing.  The simulation and generating problems can be solved with the use of a description grammar [6] and a shape grammar [7], respectively.  A grammar consists of a set of substitution rules that apply recursively to an initial assertion to produce a final statement.  In description grammars, the assertions are symbolic descriptions, whereas in shape grammars, they consist of shape descriptions.  In addition, description grammars deal with semantics, and shape grammars address form.  The third constraint is satisfied with a set of heuristics.  Heuristics are used to choose a rule for application at each step of the design generation or to constraint choice to a small number of rules.  Other heuristics assess the designs that would result from the application of each of the available rules, and then choose the one that takes the evolving design closer to the goal description in the design brief.  This process is deterministic.  At a micro-scale, a specific design context will lead to the application of a specific rule; at a macro-scale, a given context will lead to a given housing solution.  I call this mathematical model a discursive grammar because it allows the generation of formally and semantically correct designs.  Each house is like a piece of speech in the language that is appropriate for the context. 

The model is illustrated with a case study that includes a shape grammar developed for the houses designed by the architect Álvaro Siza at Malagueira, a description grammar based on the Portuguese housing guidelines, and a set of heuristics inferred after a set of experiments.  In these experiments, the designers were asked to generate houses based on the Malagueira grammar for specific clients.  One of the designs was placed among Siza’s designs and shown to Siza who did not distinguished it from his own designs thereby validating the grammar. (Figure 2)





1st floor









2nd floor













Figure II – The model of the design system for customizing mass housing is illustrated with a discursive grammar for Siza’s Malagueira houses.  A design by the author of the grammar following the rules was shown to Siza amidst several of his own designs.  Siza did not distinguish the new design from their own.  Do you?

3. Contributions

The work just described makes four major contributions:

1.         The outline of a system for the mass customization of housing.  The provision of housing still follows a process in which the prospective household has to choose a house among pre-defined types.  The opportunity for customization with such a process is very little.  The envisaged process attempts at taking advantage of new technologies to improve the degree of customization.  This system will include a design system, which will be elaborated in the dissertation, and a production system, which will be the subject of future research.  The design system encompasses a Web-based interactive system for the exploration of design solutions, and virtual reality and rapid prototyping techniques for visualization purposes.  The production system will include computer aided manufacturing and assembly processes.

2.         A mathematical model for the interactive design system.  Traditional shape grammars permit the random generation of design solutions within the languages they codify.  These designs are syntactically correct but there is no way to guarantee that they match given requirements, that is, that they are semantically correct too.  Existing approaches to this problem propose the use of stochastic processes, which use trial and error to guide the generation of designs towards the goal.  Such processes might take several hours before finding a solution and, therefore, they are not suitable for web-based implementations intended for use by prospective clients.  The proposed model takes a deterministic approach as a way of reducing the generation time.  Such model is an extension of the grammar formalism and it includes a shape grammar, a description grammar, and a set of heuristics that allows the generation of a design solution that matches requirements given a priori.  This model is called a discursive grammar.

3.         The prototype of a Web page for explaining the grammar in a visually understandable way.  Traditional documents on shape grammars tend to be very technical and mathematically oriented texts.  Such features make it difficult for non-technically oriented designers to use grammars in practice thereby preventing a greater interest in the development of further research.  An interactive Web page in which the process of developing and using the grammar is described using interactive gadgets is, therefore, proposed as a way to overcome such difficulties.  The Web page is a major part of the mass customization system mentioned above and it includes a catalog of existing designs to be browsed by prospective clients, a tool for teaching the designers how to design houses in the language defined by the grammar and, ultimately, a mechanism for generating new houses on line.

4.         A rigorous method for understanding and teaching Siza's style at Malagueira.  Traditional studies on the history of architecture tend to describe a particular style without saying how to actually generate new designs in the style.  The dissertation uses as a case study the Malagueira houses designed by Álvaro Siza and a grammar is proposed for this style. The study goes one step beyond previous grammars as it uses the designer as a source of information and proposes a model for the designer's decision-making process while designing.  By describing how to generate designs in this style with mathematical rigor, the study gives one step towards the explanation of architectural qualities in a rigorous way.  Similar methods might be applied to other styles.

Similar approaches could be developed for the work of other architects. Such approaches could depart from existing work of those architects as described for Siza, or be targeted at the development of new languages of designs from scratch. The interactive systems created as a result would function as amplifiers of architects to such an extent that it is reasonable to consider that they become virtual architects.

4. References

1 - Radford, A. and Gero, John - Design by Optimization in Architecture, Building, and Construction, Van Nostrand Reinhold, New York, 1988.


2 - PORTAS, Nuno, GOMES, Ruy – Estudo das funções e da exigência de áreas da habitação - Necessidades familiares e áreas da habitação. Análise de exigências por função da habitação. Volume II. Lisboa, Ed. LNEC, 1964b.


3 - PEDRO, J. Branco - Indicadores de Qualidade Arquitectónica Habitacional. Dissertação apresentada em cumprimento das exigências de provas de doutoramento na Faculdade de Arquitectura da Universidade do Porto. Porto, Ed. FAUP, 2000.


4 - Winston, Patrick - Artificial Intelligence, Addison-Wesley, New York, 1993.


5 - Korf, Richard E. - Space-Efficient Algorithms, in ACM Computing Surveys, Vol. 27, No. 3 September 1995.


6 - Stiny G, 1981, "A note on the description of designs" Environment and Planning B: Planning and Design 8 257-267.


7 - Stiny, G., Gips, J. - Shape Grammars and the Generative Specification of painting and Sculpture. In C V Freiman (ed) Information Processing 71, pages 1460-1465, Amsterdan, North-Holland, 1972.