General Purpose Building Description Systems
General Purpose Building Description Systems
General Purpose Building Description Systems
C. EASTMAN
(Institute of PhysicalPlanning, Carnegie-Mellon University, Pittsburgh, Pennsylvania 15213, USA)
A building description system is a database capable of describing buildings at a detail allowing design and construction.
One such system is described, BDS, that is able to represent custom-designed as well as system buildings. Attention is
given to the features distinguishing general from special-purpose building description systems, especially data-structures,
access schemes, and the method of interaction between the database and analysis programs.
tage of the common properties of the building system. In a FIGURE 2. (a-c) The vertex, edge and face retatzons defin-
general system, such a strategy is impossible. The analyses ing tbe topology of any closed polyhedral shape
and drawing programs must be completely general and all
information needed for them must reside in the database
itself. The database must incorporate information at a level
1. Concise representation of all information about an ele-
of detail necessary for any application program. Without a ment in enough detail for any form of analysis or
predefined building system, locations must be defined in a drafting
completely general way. No grid of possible locations exists
for elements. Without a grid, it is also impossible to pre- 2. Easy definition and entry of custom elements
assign storage for expected elements.
3. Easy modification of properties, including spatial proper
The level of a general purpose system is also somewhat
ties, as undertaken on-site during construction, for
different. Instead of incorporating analysis, special purpose
example, notching, drilling of holes, glueing or bonding.
arrangement and selection routines, it must instead provide
facilities for defining such programs. Thus, the system is not
necessarily the end product given to designers. Instead, a
Sbape description
firm or organiz-tion is likely to wish to add to the basic
facilities provided those extensions representing its particu-
Any shape may be considered as a polyhedron, made up of
lar methods of analysis, detailing, and design development.
vertices, edges, and faces. For our class of polyhedron,
These may require subroutines, written within the language
faces are planar but curved ones may be approximated by
of the building description system, to satisfy these needs.
multiple surfaces. The description of any polyhedron con-
The author is a member of a team currently implementing
sists of a topology of the adjacency relations between its
such a general building description system. The system is
constituent parts and a geometry specifying its dimensional
named BDS and is being developed in two versions, one on a
aspects. In most shape descriptions these two parts are not
Digital Equipment Corporation PDP-10 computer and
distinguished, but we have found a great advantage in doing
another on a PDP-1 1, at Carnegie-Mellon University. The
SO,
PDP-10 version is currently operational, whilst an extended
PDP-11 version is being implemented. Other descriptions A topology consists of the relations shown in Figure 2.
of BDS are available S,t~. This paper concentrates on database Specifically, any vertex is adjacent to an equal number (n)
design issues distinguishing general from special-purpose of edges and faces (n ~ 3); any edge is adjacent to two
buitding description systems. We have found that generality vertices and two faces; any face is adjacent to an equal
within a building description system dpeneds upon three number of edges and vertices. These relations are highly
broad considerations: redundant. If the relations in Figure 2(a) are stored
explicitly, then the relations in (b) and (c) may be derived
1. On the general but concise description of elements from them. Different operations require different subsets
2. On efficient methods for accessing elements or occasionally all of the relations shown. We have found
it expedient to store on secondary memory, a compact,
3. On a general method of interaction between the database non-redundant subset then expand it, when necessary, to
and analysis or other application programs. derive the other relations for particular operations. The
BDS compacted topology data-structure is shown in
Figure 3(a) and is sufficient for a n u m b e r of operations,
THE DESCRIPTION OF ELEMENTS particularly display (without hidden line removal). The
expanded topology is combined with the geometry, as
The elements comprising a building description may include shown in Figure 3(b).
not only hardware, but also activity areas, rooms and spaces, The geometry of a shape includes its vertex co-ordinates,
or other abstract entities having shape or other properties. edge coefficients, face coefficients and vertex angles. These
The mapping of properties between such abstract elements are also highly redundant, allowing a compacted and expand-
and building hardware is an important aspect of the design ed form. The compact form consists of a list of vertex co-
process. ordinates. The expanded version is combined with the
Considered most generally, the description of an element topology and incorporates the plane equations of each
can be defined completely in terms of its properties, where face (see Figure 3(b)).
a property is any form of measurement. Properties are A single topology may be used by a large class of build-
usually considered according to classes such as spatial, struc- ing elements. Most structural steel, for example, consists
tural, thermal and economic classes. In practice, the class of of only three different topologies: H, L, and pIate. This
spatial properties are of such concern in design to warrant commonality may be used to reduce greatly the storage
special attention and our database incorporates a special required for shape descriptions. Notice that the compacted
syntax for dealing with them. topology data-structure is related to a geometry only at the
If a building description system is to be general, the vertices where co-ordinates would normally be stored.
method of depicting elements must allow: Instead of storing the co-ordinates within this data-structure,
t
P o t t e r n size I
Number of faces Face list
ment attributes is described, which in the BDS implementa-
Numb. ofvertieesJ I I t l I I tion relies on common facilities with the geometry.
Adjacent face
,ve.,o.oo,o,.., 1 I I I Element attributes
II
Number of vertices
attribute description should be extensible, which is pre-
Number of faces ~__ Facerecord cluded by a fixed format. Attributes are treated in BDS as
if they are variable-value pairs in a high level language. As in
Body identifier Next foce
Length of record Edge ring m that case, an attribute consists of a name, a value, and a
Data type (in FORTRAN, types include INTEGER, BOOLEAN,
M i n i . - max COMPLEX, etc). Attributes are assumed to be vectors,
< envelope
dote
L
f ace
oefficients
Face identifier
each entry denoted by a subscript. If no range is specified,
the default value is one. A general structure for attributes
is to store the triplets in list form, as shown in Figure 5.
At least four attribute types are justified for describing
element properties: NUMBER (real), CHARACTER (string),
I Edgerecord SET and FUNCTION. All attribute names are coded and
I Next edge stored in a directory. If the type is CHARACTER, the
Vertexpointer directory stores, with a name, all the values that have been
Opposite face assigned for it in a variable length list format and their
Edge twin ordinal value is used as a code. NUMBER values are not
coded, but stored directly in the list. SETS also take
Vertex record characters as values, but have the additional feature of in-
Next vertex corporating an inverted file which points to all elements
having a particular attribute value. FUNCTIONS take as
Coordinates values expressions, allowing computation of their value
each time they are called. These four formats are coded in
V e r t e x identifier the attribute directory.
Data Two example uses of the SET attribute are to store the
b names of manufacturers from which elements are purchased
FIGURE 3. (a) The compacted topology data-structure; and the element specifications. In both cases, the inverted
(b) The expanded shape data-structure file is useful in collecting all elements for later listing or for
operation on a group of elements: in the first case for parts
ordering, in the second for control of the construction pro-
it is equally straightforward to store an index into an cess. An example of the use of FUNCTION is in the storing
ordered set of co-ordinate values. Different geometries may of an element's weight, when its length is expected to vary
be used by one topology simply by changing the base
address associated with the index. Thus a distinct geometry
may exist for doors, bricks, wood timber, and clay tiles,
each using a common (in this case rectangular) topology. 5
The topology and geometry together describe a shape in
local co-ordinates. As many instances of this shape may be
used as needed by storing for each instance a spatial trans-
form consisting of the three co-ordinates and three angles
defining any relative location. Together, the topology,
2
geometry and location define a three level hierarchy, as I I
--I
shown in Figure 4. At each level exists a one-many map-
ping. One topology may be used by many geometries, one xl = x 2 = z l =z4 = c o x I =x2=z 1 =z 4 : oo
x3--x4= 80
x 3 = x 4 = z 2 = z 3 = 50
Z2~Z3=60
geometry by many locations, thus allowing a large number x 5 z 5 = 25 x s = 40: z 5 = 30
Yl : Y2 = Y3 Y4 = 00
of shapes to be concisely described. In practice, we have Y5 : 50 Yl V2 = Y3
Y5 = 142
= Y4 = 0
from location to location. These four attribute types provide be specified during definition by the user or default values
the storage capabilities needed for most analyses and book assigned by the system. In the case of default values, the
keeping operations. subscripts are the integers next larger t h a n the largest
assigned thus far.
Template
entry 2 The form consists of the shape geometry and all attributes.
Template
Each attribute consists of a declaration and an assignment,
en~ry 3 the assignment being local to a particular form record.
Sel The geometry information, entered as vertex co-ordinates,
entrv A
is highly regular. If a shape is a rectangle, for example, then
FIGURE 6. The overall structure of element information half the x, y, and z co-ordinate values each have some value
within tbe BDS database and half the values are zero (if sides are parallel to the co-
Remove
two faces
and con-
struct a
hole -2 +2"1
v3
Location definition The binding sequence found optimal for pre-stored ele-
ments is shown in Figure 9. Predefined elements are stored
Locating any element requires the definition of six numbers, in a parts catalogue in terms of topologies, subroutines, and
placing the element relative to all others. A location may values. The values are stored in tabular form. When selec-
be specified in the common world co-ordinates or in the co- ted for a project file, the routine and values are combined to
ordinate scheme of other located element. An asterisk (*) derive the constant shape dimensions and attributes collected
prior to a location indicates !world' co-ordinates, an element in the form file. New attributes may be added, if desired,
name denotes the element whose co-ordinate system is at either the form or location levelsl In core, two alterna-
desired. For example, if D O O R ( l ) i s located at *, tive representations are available, the compacted topology
100, 100, 100, O, 0, 0, then the locations defined by * which accesses vertex co-ordinates or the expanded shape
200, 150, 100, 0, 0, Oand DOOR(l), 100, 50, 0, 0, 0, 0, definition of Figure 3(b).
are equivalent. Trailing zeros need not be entered. To facilitate definition of custom elements, a number of
The locations of elements in most buildings are highly topologies and subroutines are prestored and can be modi-
regular. Many beams, columns, panels, etc, vary in location fied by the user. A user may also interactively enter his own.
from one another by a simple transformation. After placing Subroutines are initially simply typed and stored, for later
a single element, copies are easily defined using the relevant parsing and evaluation within the BDS user language. For
transformation. Also, the transformation can be iterated user defined elements, the user must enter all attribute and
from the last placed element a specified number of times. geometry information, plus the location of instances.
Thus; In use, most of these processes within BDS are trans-
parent to the user. In simply naming an element, all infor-
ITERATE DOOR(2) BY 48, 0, 0 *4 mation depicting it is automatically combined.
occurs more often than earlier ones and binding done at the FIGURE 9. The sequence o f computations leading to the
later ones must be iterated more often. Conversely, binding definition o f a single element. This sequence resutts in fast
late minimizes the storage of intermediate values. instantiation and small storage requirements
in
. . . .
II
FIGURE I0. (a-l) Views of a small vacation cabin showing the facilities of perspective and ortbographic projections.
(a-c) show perspective views; (d-f) are framing plans and sections; (g-j) are inside perspectives; (k) and (l) are site perspectives
with identical properties are accessed through the set attri- A------~
butes. A typical requirement for c.a.d, systems, though, is B --'
to access collections of spatially related elements. This D - -
orderings of co-ordinates, the one planar partition of the INDEX ~ INDEX + t" I
rectangular volume can be identified, which produces two ..._1
approximately equal sets of elements and also overlaps with
the most elements. Those elements which do overlap are "-It
allocated to a third bucket. As this partitioning takes place IF (J ;~ 7"/2 + or) THEN EXIT;
the access tree is modified accordingly. Within this structure
a spatial search involves scanning the search tree to identify
½
all those buckets overlapping the volume of interest. It is IF COORD (INDEX, SIDE)
then necessary to test exhaustively the elements within =")°" THEN (/*-- I + 1;J*.-J+ 1)
these buckets for conflicts. We have also found that rather ELSE i + - / - 1;
large buckets are more efficient than small ones. We
achieve this by using multiple adjacent disc sectors for a
single bucket.
The maximum size of an element within a bucket cannot IF (J~> T/2 - or) THEN IF
be larger than the dimensions defining the bucket's spatial I < P THEN (I *- P; II *-
boundaries. Also, all segments in the tree below some node (COORD (INDEX, VALUE) +
must have elements smaller than the node size. This acces- (X)ORD (INDEX + 1, VALUE))/2
sing scheme thus also proves useful in selecting elements by
size for display. This organization and search scheme is fully
described elsewhere 4. b
We have found justification for considering application numerical computations involved in database manipulation
and analysis programs as being of two distinct types. Some and the emphasis on high-speed but inexpensive interaction,
applications involve only simple arithmetic to aggregate a minicomputer configuration was chosen (see Figure 12).
data, but must follow precise sequences. Applications of The project file resides on high speed disc memory. In our
this sort include the sizing of most distribution systems and implementation, numerically oriented analyses can be expe-
material and cost take-offs. The major task here is data dited by shipping data to a remote timesharing facility,
organization. Execution of an environment intimately linked which also stores the parts catalogue. BDS is implemented
to the database is likely to be most efficient. Other forms in the BLISS system building language, which produces
of application programs will rely on extensive external data highly optimized code incorporating direct address
and decisions will be based on a large number of variables manipulation 3.
evaluated simultaneously. For this class, computation in Using the storage scheme described, the memory required
an environment with very fast arithmetic capabilities of to store building projects of different sizes depends on the
high accuracy is justified, which may or may not be the project's regularity and the manner in which the user
hardware environment of the database. This second type of chooses to define it. In general, we estimate that about five
application is exampled by structural and thermal transfer million characters of disc space will allow project files
analyses. holding 50 000 elements; 500 000 elements can probably
For both types of applications, we are implementing be described in 40 million characters. Thus even the most
within BDS language facilities for computing new proper- complex custom designed project should adequately reside
ties which are functions of existing ones and routines for on a disc pack.
formatting new or existing data on files. For the type of A preliminary version of BDS is operational. It provides
application relying on large amounts of information in the initial operating speed benchmarks. The necessary computa-
database, the language incorporates mathematical opera- tions for instantiating an element requires three disc accesses.
tions allowing, for example, summation of volumes, the sum With our hardware, we are able to instantiate seven dif-
mation of lengths of a particular class of element or the ferent geometries per second, for example, those elements
number of elements. For the second type of application, based on different forms.
the functions that can be computed include; mass, contact
area between two elements, topological relations over a set
of elements (that is, the mechanical or structural elements), C ONCL USION
or the volume enclosed by a set of elements. The features
of this language are presented in a separate report'( BDS provides a model for general building description sys-
The philosophy of BDS is that all information initially tems capable of dealing with any industrialized building
entered can only concern discrete elements. Properties over system as well as the most custom designed of architecture.
a set of elements, derived by their adjacency, connection or It incorporates features for entering, manipulating, display-
other relationship must be computed. After computing, ing, drafting, and analyzing most building designs. While
these relationships between elements may be stored, either
in one of the record types already defined or on a new file
to be read by an application program. Our analysis has To PDP-IO
shown that the attribute storing facilities provided are ade-
quate for the non-spatial properties of elements or collec-
tions of elements. The problem areas are the computation
of information which are functions of shape, such as pivot
points of joints or contact areas of thermal transfer between
materials, and the derivation of topological structures.
The language features are only now being implemented.
It is too early to determine their strengths or limitations.
Most likely, they will allow the writing of subroutines
capable of interfacing many application programs with a
BDS-type database. In some cases, though, we expect that
the user will need to provide input that corresponds to the
engineering judgment required in the data preparation of
analyses programs.
IMPLEMENTATION
this paper focuses on database considerations, other facets 5 Eastman, C. 'The use of computers instead of drawmgs in
of a building description system must receive careful scrutiny building design' Amer. Inst. of Arcbitects J., (March 1975 )
pp 4 6 - 5 0
if such systems are ever to receive widespread application.
6 Eastman, C., Lividini, J., Stoker, D, "A database for designing
Current work on BDS focuses on the development of the large physical systems' Proceedings 1975 National Computer
database operations into a convenient and powerful high Conference, Anaheim, California, USA
level language. Hierarchical replacement and other opera- 7 Eastman. C. and Henrion, M. "Language features for a design
tions that directly facilitate the development of a design as information system' Institute of Physical Planning Research
Report, Carnegie-Mellon University, Pittsburgh, Pennsylvania,
it moves through the traditional sequence of schematic, USA (September 1975)
preliminary and detail development are also being explored. 8 Hoskins. E. M 'Computer aids in building', in Computer
BDS is being developed by a team of researchers at the Aided Design, J. J. Vlietstra and R. F. Wielinga (Eds.) Amer-
Institute of Physical Planning at Carnegie-Mellon University. ican Elsevier, New York (1973)
9 Lafue, Gilles, 'Computer recognition of three-dimensional
The team includes Adrian Baer, Marsha Berger, Henry Finch,
objects from orthographic views'. Institute of Physical Plan-
Max Henrion, Gilles Lafue, Joseph Lividini and Douglas ning, Carnegie-Mellon University, Research Report No 56,
Stoker, in addition to the author. This research is supported (September 1975 )
by the National Science Foundation and is part of the 10 Meager. M A. The application of computer aids to hospital
research program in Advanced Building Studies. building Computer Aided Design, J. Vlietstra and R. Wielinga
(Eds.) American Elsevier, New York (1973)
11 Rosen, B. 'The architecture of a high-performance graphic
BIBLIOGRAPHY display terminal' Int. Society for Information Display Digest.
1 Baumgart, B. 'Winged edge polyhedron representation' (May 1973), New York
Stanford A. 1, Project Report AIM-179, (October 1972) 12 Sampson, P. 'The implementation of CEDAR: a computer-
Stanford University aided building design system'. Unpublished report, Design
2 Braid, 1. 'The synthesis of solids bounded by many faces' Group, Royal College of Art, London. (August 1973)
Commun. of the ACM Vol 18, No 4, (April 1974) pp 2 0 9 - 13 Stoker, D., 'The CRIPL-EDGE data-sttucture', Institute of
216 Physical Planning, Carnegie-Mellon University, (May 1974)
3 Digital Equipment Corporation, BLISS-11 Programmers 14 Walter, P. E. 'Computer graphics used in architectural design
Manual Computer Science Department, Carnegie-Mellon and costing' in Computer Gmpbics, R. D. Parslow, Prowse,
University, Pittsburgh, Pennsylvania 15213. and Green (Eds.) Plenum Press, London
4 Eastman, C., and Lividini, J. 'Spatial search', Institute of 15 Paterson, J. W. 'An integrated c.a.d, system for an architects
Physical Planning Research Report, No 55 Carnegie-Mellon department' Comput. Aided. Des. Vol 6 No 1 (January 1974)
University, (September 1974) pp 25-31
SCIENCE & PUBLIC POLICY The information is gathered through a worldwide network of
national correspondents who are intimately involved in research-
provides information on national policies for science and
ing and applying science and public policy in their country.
technology and their effects
Subscription £25,00 (S65.00) per year ( t 2 issues} including post-
examines the roles of science and technology in the opera-
age by fastest route, A special annual rate of £10:00 ($26.00)
t ions of government (local, nat ional and inter national),
is available for the individual who certifies that the copies are
industry and business
for his/her personal use and who is the full-time employee of a
analyses the social and political environments within which current full-price establishment subscriber at the same address.
science and technology operate
assessesappropriate methodologies, information systems
and organisational forms IPCBusinessPressLtd, Oakfield House,Perrymount Road,
explores various types of public participation and their Haywards Heath,Sussex,England
influence on national and international policies
The journal contains short, pithy news items, concise reports, Published monthly by IPC Science and Technology PresSL i d :
comment, commissioned reviews, facts in figures, book reviews publL~her~ of FUTURES. ENERGY POL IC Y and RESOURCES
and extensive bibliographies. POLICY.