You are on page 1of 9

Comprrrers & Structures, Vol 3, pp. 1099-1107. Fkrgamon Press 1973.

Printed in Great Britain

REPRESENTATION OF
THE COMPUTER-AIDED DESIGN PROCESS BY A
NETWORK OF DECISION TABLES-f

STEVEN J. FENVES

Professor and Head, Department of Civil Engineering, Carnegie-Mellon University,


Pittsburgh, Pennsylvania 15213, U.S.A.

Ah&act-Large-scale implementation of computer-aided design of structural systems, as opposed to the


analysis or mathematical optimization of such systems, had been largely unsuccessful to date, owing largely
to the difficulty of representing the myriad decisions and processing steps involved.
It is shown that decision tables are an ideal tool for representing the detailed decisions and processing
steps. The interaction between the data items and the transformations including decision tables is concisely
represented by networks of ingredience and dependence. Finally, the iterative, open-ended nature of the
design process is accommodated by assigning to each data item a status indicator, which spec%es whether the
item is valid or void. It is shown that only two basic recursive routines are needed to link the data together,
either to evaluate a given item by evaluating all of its ingredients or to make all dependents of a mod&xl
data item void.
Examples illustrating the application of the representation are included, using the 1969 AISC Specifica-
tions as a basis.

1. INTRODUCTION
THE DESIGN of a structural system, or any other engineered system, typically involves the
iterative application of two algorithms: an unuZysis procedure which, on the basis of a
mathematical model, predicts the behavior or performance of the system as a function of
assumed system parameters; and a design or proportioning procedure which selects para-
meter values such that the constraints imposed on the system are satisfied. This division
applies whether the iteration is controlled externally by the designer or internally by an
optimization program. The division is also implicit in cases where there is no formal
iteration performed, i.e. where the initial parameters are selected from a cruder model or
analysis with sufficient accuracy so that reanalysis is not necessary.
The phenomenal growth of the scope, generality and flexibility of computer-based
analysis capabilities has been well documented. By contrast, design capabilities have been
orders of magnitude slower in developing since the introduction of computers. This dis-
crepancy is due to several factors : (1) design procedures do not completely follow rigorous
mathematical principles, and contain a great deal of ‘art’, or individualism; (2) many
detailed design procedures are governed by, or at least strongly interact with, external
constraints provided by codes and specifications, which often acquire a legal character;
and (3) only limited attempts have been made to define a conceptual framework for the
computer-aided design process which accomodates the requirements of the above two
factors.

t Presented as an Invited Paper at the National Symposium on Computerized Structural Analysis and
Design at the School of Engineering and Applied Science, George Washington University, Washington, D.C.,
27-29 March 1972.
1099
1100 STEVENJ. FENWS

This paper is a first attempt at defining a conceptual framework which should permit
the development of highly flexible, generalized design procedures,

2. ACNE OF THE DESIGN LOGIC NETWORK


The fundamental aspect of the design or proportioning process is that a large number
of interrelated, hierarchially structured decisions or processing steps are involved. A
typical step may be characterized as a transformation Tj, of the form

where

where yi is an output quantity or derived datum and the Xi~ are input quantities. The
collection Ii of Xi&will be called the ingredience list of the output variable yI. Inasmuch
as the value assigned to yi by Ti depends on the values of the xik, yi is a ~~e~~~~ of every
Xik*
The transformations YZ’* may be of various forms. They may be functional trans-
formations (formulae or expressions), logical transformations containing conditional
clauses, or even subjective, nonquanti~able opinions. It has been demonstrate in previous
papers that decision tables provide a convenient and general mechanism for representing
the logical transformations embodied in specifications [4, 51. For example, the Table 1
shown below represents the provisions of Section 1.5.1.3 of the 1969 AISC Specification
[l]. It can be represented in the form of equation (1) as:

1.5.1.3: F,=f,.,.,., (member type, K, 1, r, C,, _ . . ). (2)

TABLE1. Allowable compressive stress

Main member ? YYNNNN

Kljr S Cc? YNYYNN

I/r< 120? I Z YNYN

F~=Fomwla 1.5-l Y Y

FG= Formula 1.5-2 Y Y

Formula 1.5-l Y
F”“(1.6~@Ior)

Formula 1.5-2
F”=(1.6--1/200r) Y

Equation (2) illustrates several aspects of the data involved. First, the data items may
be of several types, e.g. (1) numerical quantities, such as F. or K; (2) logical variables
having values of frue or false, such as ‘main member’; or (3) quantities which have as
values one of several alphabetic names, such as ‘channel’, ‘wideflange’, etc. Second, in
actual processing, the generic transformation must be applied to specific instances; in
Representation of the Computer-Aided Design Process by a Network of Decision Tables 1101

other words, all data items must be properly subscripted. The discussion of subscripted
variables is covered in Section 8. It suffices to say that several ranges of subscripts are
involved. For the above example, I and r must be related to the member being processed,
while FY may be subscripted by the grade of steel used.
The interconnection of transformations arises from the fact that the data items used
by one transformation may themselves be output variables of another transformation, or,
in general
Xik=Yj (3)

where yj is the output of some other transformation Tj.


For the example used
c, = Jm; (4)
or
I( C,) = E F,)

while K is the output of the decision Table 2 shown below.

TABLE 2. Determination of K

Main member YYYYNNNNE

Secondary member/bracing NNNNYYNN

Bearing stiffener NNNNNNYY

Side sway prevented YYNNI Z I Z

K1 (K provided) YNYNIYYN

l/r>120 IIIIYNII

K=l.O Y Y

K=Kl Y Y

K= Max(0.75, K1) Y

K= Max(l.0, K1) Y

Message: K should be provided by rational analysis Y Y

Else rule Y

Conversely, the output F,, of equation (2) becomes the input ofanother transformation.
In general, each output Yj may appear as the input or ingredient xik of several trans-
formations, and thus have several dependents (in the AISC Specification, F,, has 39 separate
dependents). All dependents of a data element xi can be collected in a dependence list:

The use of dependence lists is discussed in Section 6.


1102 STEVEN
J. FENVES

3. THE LOGIC NETWORK


Ingredience and dependence relations of the type of equation (2) could be represented
by a square, orthogonal boolean input-output matrix [2]. The same relations can, however,
be represented more meaningfully by a graph or network, with each transformation Ti
represented by a node and each oriented branch labelled as to the data item it represents.
A branch therefore represents an incidence relationship of the type given by equation (3).
Such a graph is in a sense a dual of a Mason-type flow graph [8], where nodes and branches
represent variables and transformation, respectively.
A further representational simplification is achieved if the transformations Ti are
restricted to yield a single output yj, as assumed in equation (1). With this restriction, the
transformation is implicit in the definition of the output, and the logic network can be
readily created by:
(a) assigning a node to each data item; and
(b) drawing an oriented branch from each node to all of its dependents.
The network corresponding to checking compression members according to the AISC
specification is shown in Fig. 1 (the mnemonics used for the variables correspond to those
in Ref. [3]). The network shown in the figure is based on a slightly different organization
than that implied by Table 1; FFA stands for F,, and the ingredients VMTYPE, UKP,
EL, AR and XCC listed in (2) are easily recognized.

FIG. 1.
Representation of the Computer-Aided Design Process by a Network of Decision Tables 1I03

Logical networks such as Fig. 1 permit one to trace out two sets of relations or
influences :
(a) the gZobaZde~en~nce of a data item, consisting of all data items depending on it,
is obtained by traversing the network from the given data item in the direction of the
arrows until all data items which may be reached in this fashion are enumerated; and
(b) the global ingredience of a data item, consisting of all data items influencing it,
is obtained by traversing the network from the data item in the direction opposite to that
of the arrows until all data items which may be reached are enumerated.
It is obvious that input items are identified in the global network as those which have
no ingredients (all arrows point out); similarly, terminal or output items are those which
have no dependents (all arrows point in). More generally, each data item in the network
can be assigned two numbers:
(a) the global Zevelfrom input, that is, the number of branches on the longest chain
from any input item to the datum in question; and
(b) the gZobaZZeveffrom output, that is, the number of branches on the longest chain
from the data item in question to any terminal or output item.
It is to be noted that a given data item may be the ingredient of several dependent
items, and that the path lengths for each ingredience relationship may be different. It is
for this reason that the de~nition of levels is based on the longest path?.

4. PROCESSING STRATEGJES
The logic network represents all possible processing paths. A specific problem solution
involves the traversing of a particular tree in this graph.
Given a series of transfo~ations Tj, hierarc~~lly interconn~ted by means of the
ingredience and dependence lists defined above, we seek a sequencing of the tables such
that any given problem can be efficiently executed. By execution we mean to proceed
from a given set of input data, containing both mandatory input data and optional data
overriding derivable values, and execute whatever actions are specified by the tables.
One possible sequencing can be obtained on the basis of partial ordering, i.e. using
relations (3) to set:
i’<i if +=y,, for any i. (6)

Thus, any transformation i’ which provides an ingredient for i must be executed before
executing i. This sequence corresponds to a traversal of the graph according to increased
levels from input, according to the longest chains. This sequence is essentially equivalent
to endorder processing of graphs [7].
There are four reasons why such a sequencing scheme is undesirable:
(a) the ‘bottom-to-top’ sequence is diametrically opposite to the logic of the problem
itself, where the most ‘natural’ mapping is from ‘top-to-bottom’, i.e. as given by the
ingredience lists;
t In network or graph theory terminology, if the logical network were a tree (a network without loops
or meshes), or more precisely a forest (a collection of disjoint trees), the level of a datum would be the length
from the ‘farthest’ input item or the ‘farthest’ output item. However, since the network is a general oriented
graph, with multiple dependents and therefore with loops or meshes, the level must be defined as the longest
of all paths.
1104 STEVEN J. FENVES

(b) this sequence does not accommodate readily the input of optional data, which
eliminate the need for executing certain lower-level transformations,
(c) because of the presence of immaterial condition entries in transformations repre-
sented by decision tables, certain conditions may not have to be tested at all in order to
locate the governing rule. The precomputation of such conditions is definitely wasteful;
(d) it is possible that a condition which turns out to be immaterial according to (c) is
undefined on the basis of the data supplied, even though the conditions actually used are
defined. (An example of such a case may be seen in Table 2, where the value of K must
be provided externally only in a limited number of rules). It is thus extremely wasteful to
require as input all possible data for all possible conditions. Under many circumstances,
that is not even possible.
It follows from the preceding argument that for efficient execution, the sequencing of
the tables must be determined at execution time on the basis of information at hand. Such
a sequencing can be implemented by means of a recursive procedure described in the next
section.
5. RECURSIVE EXECUTION
Recursive execution is made possible by associating with each data item, yi, a boolean
flag or status indicator, si, which has possible values of valid or void. Initially, all si are
set to void. The input of every data element, as well as every evaluation (execution of ri)
causes the corresponding status indicator to be set to valid.
At a typical point the design process, the value of a data item yi is needed. As discussed
earlier, this value may be boolean (e.g. ‘design satisfactory’) or numerical (e.g. F,), and
the data item may be the output of a transformation Ti or a basic input parameter. In
the former case, an ingredience list is associated with the data item.
The recursive process of evaluating or SEEKing the needed data item yi can be con-
veniently represented by the decision table shown below.
TABLE3. SEEK for data item yl

(I) (2) (3) (4)


yr present (SL= valid) ? Y N N N

Input parameter (Ii empty)? I Y N N

All ingredients present (all Stk = valid) ? I I YN

Evaluate TI, mark si = valid Y

SEEK missing ingredient .U Y

Error Y

Exit Y Y Y

Whenever rule (4) governs, processing of the current data item yi is suspended, and the
process reinitiated for its first missing ingredient, xik. Eventually (barring the case of
missing input parameters), all ingredients xik or y, are evaluated, so that rule (3) governs.
Then y, itself can be evaluated and its flag si set to valid.
Representation of the Computer-Aided Design Process by a Network of Decision Tables 1105

It should be noted that the above process permits the designer to input any computable
or derivable quantity directly; in such cases, rule (1) will govern and the evaluation of Ti
will simply be bypassed.
The SEEK process described can be visualized as a right-to-left traversal of the logic
graph, recursively descending to lower levels of hierarchy only when needed, and thus
tracing out the shortest-path subtree from the node in question through its global in-
gredience. The process is thus equivalent to preorder processing of graphs [7].

6. RECURSIVE UPDATING
In iterative, trial-and-error design, the case frequently arises where a data item is
modified after its value has been used in evaluating other, higher-level data items which
depend on it. Alternatively, one may wish to repeat chains of calculations with only a few
input parameters modified. In either case, derived quantities based on the previous values
are no longer applicable.
There are several strategies that may be invoked in such cases:
(a) erase all derived quantities (i.e. set their status to void); this would be in-
efficient, as some of these quantities may be unaffected by the change;
(b) recalculate automatically all derived quantities; this may be even more in-
efficient, as several cumulative changes may force repeated recalculations; or
(c) selectively erase only those quantities which are directly affected, leaving all
unaffected data unchanged.
The third strategy can be implemented by a second recursive process, called WARN,
which uses the dependence lists defined by equation (5). The process can be represented
by the decision table shown below.

TABLE4. WARN for data item xt

Terminal item (Dt empty)? Y N N

All dependents erased (all str=void)? I YN

Mark st = void Y Y

WARN dependent yik Y

Exit Y Y

WARN can thus be visualized as a left-to-right traversal of the logic graph, following
the longest path until either the terminal node is reached or all dependent nodes are already
set to void.
It is important to emphasize that the network represents only logical ingrediences and
dependences, and that it does not have information on the numerical sensitivity of any
dependent with respect to a change in an ingredient. It is for this reason that WARN
simply sets the dependents to void; if and when these need to be re-evaluated, SEEK can
be used to ‘backtrack’ to the changes and re-establish new values for the dependents.
1106 STEVENJ. FENVE~

7. EXTENSIONS TO ITERATIVE DESIGN


In the previous discussion, it was implicitly assumed that the logic network is acyclic,
i.e. contains no chain of dependencies closing on itself. In a typical iterative design problem,
this assumption is patently not valid. For example, in elastic structural design, one needs
to know the assumed properties of the elements before the structure can be analyzed and
the elements proportioned. Such dependence relation would manifest itself as a closed
path or cycle on the ingredience graph. Furthermore, a flexible design system should
allow the designer to ‘break in’ into the cycle at any point he desires (e.g. in the example
above, to start the design either with actual sections, assumed rigidities, or only assumed
proportions).
Although the complete ramifications of the problem of cyclic graphs have not yet been
worked out, it appears that the problem can be readily handled by inserting a marker at
the node where the initial data are entered. The purpose of the marker is to prevent both
SEEK and WARN from tracing ingrediences and dependences beyond that node. Thus,
the marker serves to designate the initial entry node as a parameter for SEEK or as a
terminal node for WARN.

8. INTERACTION WITH DATA BASES


As described in Section 2, the discussion so far has dealt with single occurrences of
data items, i.e. with unsubscripted or generic data items. In actual design, of course, one
deals with the real data, subscripted according to various indices (e.g. member number,
loading number, section designation, steel grade, etc.). Thus, during execution, two actions
must take place:
(a) the appropriate data items must be recovered according to their subscripts from
the data base; and
(b) the generic ingredience and dependence relationships expressed by l(yi) and D(xi)
must be mapped onto the data base so that the SEEK and WARN operations can
locate the appropriate ingredients and dependents.
The problem can be best visualized by replacing each node i of the general abstract
graph by a multi-dimensional array or data structure, each dimension corresponding to
the range of subscripts appropriate to the generic data item. The detailed algebra of in-
gredience and dependence calculations will be presented in a latter paper; some portions
of this effort have been presented elsewhere [9].
The complexity of ingredience and dependence calculations can be considerably reduced
if the data base is laid out in a hierarchial, self-descriptive fashion [6]. In such an arrange-
ment, two simplifications can be introduced:
(a) the generic dependence and ingredience lists need to be stored only once, as part
of the self-documentation of the data structure;
(b) the range of applicable subscripts of ingredients and dependents is related to the
hierarchy of the data structure itself.
Example
Assume that it is required to check a 16-ft column, braced against sidesway, made of
an A36 steel W12 x 161 section, and supporting a concentric load of 860 kips, against the
Representation of the Computer-Aided Design Process by a Network of Decision Tables 1107

compression criterion shown in network form in Fig. 1. The value of the criterion TCOMPR
is ‘satisfied’ if:

Section 1.9 is satisfied (B1904K=true);


H/r I 200; and

XRA =f,/r;. < 1.O.

For the column section given, B1904K is known to be true, so the subgraph leading
to it need not be executed. The ingredient K of ‘Kl/r I200’ is missing, so the transformation
UKP is next executed. This transformation is shown in Table 2; for the case at hand,
rule 2 governs, K= 1 and H/r = 60 I200 can be evaluated. Since neither ingredient f, = XFA
and F,, = FFAD of XRA are present, they both must be evaluated. The gross area AGRS
is given as 47.38 in2, so XFA=860/47.38= 18.20 k/in2 (Note that if AGRS had not been
specified directly, it could have been computed from its ingredients). To calculate F0
=FFAP, two decision tables must be executed. These are shown together in Table 1.
For the second condition, Kl/r=60 is already available, and C, is calculated as 126. Thus,
rule 1 governs and F,,= 17.43 k/in2. With the two ingredients now known, XRA is
evaluated as 18.20/17.43 = 1.05. Returning now to the topmost node, XRA> 1.0 and thus
the value of the criterion is ‘violated’.
As an example of recycling, if the axial load were reduced to 670 kips, only its global
dependents XFA, XRA and TCOMPR would be set to void by WARN. A new check
would therefore require only the reestablishment of

XFA=670/47.38 = 14.15
XRA= 14.15/17.43=0.81
TCOMPR = “satisfied” since 0.81 c 1.O

Acknowledgements-Portions of the work reported were developed under grants from the Office of Naval
Research, Structural Mechanics Branch and the American Institute of Steel Construction. The constructive
suggestions and contributions of Dr. Richard N. Wright are gratefully acknowledged.

REFERENCES
[l] American Institute of Steel Construction, Specification for the Design, Fabrication and Erection of
Structural Steel for Buildings (1969).
[2] S. E. ELMAGHRABY, Some Network Models in Management Science. Springer, Berlin (1970).
[3] S. K. GOEL and S. J. FENVES,Computer-Aided Processing of Structural Design Specifications, SRS No.
348, Dept. of Civil Engineering, University of Illinois, November (1968).
[4] S. K. GOEL and S. J. FENVES,Computer-aided processing of design specifications. J. Struct. Div. ASCE
97, No. STI, 439-461 January (1971).
[S] S. K. GOEL, S. J. FENVE~and E. H. GAYLORD,Adapting the AISC specification to computer-aided
design. Engng J. AZSC 8 (3), 8&89 July (1971).
[6] F. J. HATFIELDand S. J. FENVES, The information organizer: A System for symbolic data manipulation.
Computers & Structures, 1, 85-102 (1971).
[71 D. E. KNUTH, Tlte Art of Computer Programming, Vol. 1. Addison-Wesley (1968).
[8] L. P. A. ROBICHAUD,M. B~I~VERT and J. ROBERT, Signal Flow Graphs andApplications. Prentice-Hall,
New Jersey (1962).
[9] R. N. WRIGHT, L. T. BOYER and J. W. MELIN, Constraint processing in design. J. Struct. Div. ASCE
97 (STl), 481-494 January (1971).
(Received 10 April 1972)

You might also like