The Virtual
Architect
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.
email:
jduarte@civil.ist.utl.pt
Abstract
It is proposed a process of providing masscustomized housing based on
computeraided 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 userprompted 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 Webbased 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 online
was developed as a prototype. This Web page works as a Siza amplifier becoming
a virtual architect.
The ultimate goal of the work referred to in this paper is a
computational framework for the design of masscustomized houses that includes
a design and a production system. The
current focus is on the development of the design system. The purpose of masscustomization is to
provide highquality 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 costbased, 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 usersatisfaction and prevents costs associated with
postconstruction changes. Costcontrol
also is guaranteed with recourse to production techniques that rely not on
exhaustive repetition, as in traditional massproduction, but rather on
computeraided 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 computeraided design and manufacturing
processes. The idea is to give
massproduced 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 computeraided 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 walkthrough 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 computeraided 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 computerbased 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 functionform relations for multicriteria 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.
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 illdefined, that is, the user
might not be completely aware of what the needs are. The fourth difficulty is that the problem might be overconstrained,
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 illdefinition
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
overconstrained 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 subproblems, 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
subgoaling, abstraction, and meansend 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 multicriteria problem into a single criterion one. There are two basic forms of optimization
methods: single criterion and multicriterion.
In singlecriterion, there is only one viewpoint that is being
optimized, whereas in multicriteria there are several. The solution to a multicriteria 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 multicriteria, choice
implies tradeoffs, 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 threebasic types of approaches to solve multicriteria problems:
nonpreference 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 multicriterion 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 nonpreference 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 nonpreference 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
nonpreference 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 Webbased 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 problemsolving 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
knowledgedomain has characterized the field since then. Search is a very general problemsolving
technique that tends to be close to the knowledgepoor 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
knowledgepoor 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
multicriteria 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
nondeterministic 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
tradeoff 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 microscale, a
specific design context will lead to the application of a specific rule; at a
macroscale, 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)












1^{st}
floor 















2^{nd}
floor 















Terrace 



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?
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 predefined 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 Webbased
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 webbased 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
nontechnically 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 decisionmaking 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.
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, AddisonWesley, New York, 1993.
5  Korf, Richard E.  SpaceEfficient 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 257267.
7  Stiny, G., Gips, J.  Shape Grammars and the Generative Specification of painting and Sculpture. In C V Freiman (ed) Information Processing 71, pages 14601465, Amsterdan, NorthHolland, 1972.