11
Microcompirters in Civil Engineering 8 ( 1993) 27 1-28 1 A Knowledge-Based System for Concrete Building Structural Design Wanxie Zhong, Chunhang Qiu, Xiaojian Liu, Xiaolin Qin & Junxian Liu Research Institute of Engineering Mechanics, Dalian University of Technology, Dalian I 16024, People's Republic of China Abstract: Knowledge representation approaches and knowledge base management strategies in the concrete building structural detail design system KJICAD are described. A load combination algebra system is devel- oped for environmental loads formalization and a code- based problem-solving control structure is established to describe design knowledge sources and their relations. By using compiler techniques, the physical knowledge base is made uniform and simplified for quick access. Finally, a practical design example is included to illu- strate the efectiveness of KJICAD. INTRODUCTION Integrated CAD and knowledge-based intelligent design systems are emerging as a means for automating the solution of problems that exist in civil engineering. Some excellent expert systems which have already been applied to civil engineering are, for instance, the seismic hazard evaluation system SPERIL by Yao and Fu;~ the preliminary structural design system for high rise buildings, HI-RISE (see Maher, Ref. 7); the RECON14 system for reinforced concrete beam verifi- cation, and so on. Most of the systems developed over the past 10 years are only concerned with preliminary design problems or detail design of individual parts. However, they are not always effective in practical engineering. As we know, the knowledge for detail design of a building structure concerns not only design knowledge from codes and specifications but also background experience of the domain engineer, shown in Fig. 1. Some knowledge in codes is prescribed in natural and/ or diagram form, and is ill-structured; therefore, it must be formalized in order to satisfy the requirements of a computer system which is suitable for symbolic treat- ment. Obviously, the difficulties in developing such a knowledge-based system are still the representation of all necessary knowledge, the management of the knowledge base, and the communication between the knowledge and analysis modules, even though relevant research work has been done theoretically. The goal of KJICAD is performing the function of structural design, from structural analysis to reinforcement draft- ing. It takes knowledge from codes and presents it as a knowledge base which can then be processed to solve problems encountered in the design procedure in the same way that experts would. This paper presents the approaches for knowledge representation and knowledge base management based on the authors' experience in developing the system. The major features of this paper are given as follows: - The load combination algebra is established. In this way, the load combination problems can be expressed by the algebra formulae. Different rules of load combination can be executed auto- matically once their algebra formulae are given. Its advantage is that only the load combinatorial algebra formulae need to be modified when the load code is revised. - An improved decision table is employed for the representation of reinforcement rules in the design codes. The formal processing for wind load acting on building structure is presented. The design knowledge about wind shape coef- ficient ps prescribed in diagram form and/or 27 1 Microcornpilfersin Civil Engineering 0885-9507/93/$06.00 0 1993 Elsevier Science Publishers Ltd

A Knowledge-Based System for Concrete Building Structural Design

Embed Size (px)

Citation preview

Page 1: A Knowledge-Based System for Concrete Building Structural Design

Microcompirters in Civil Engineering 8 ( 1993) 27 1-28 1

A Knowledge-Based System for Concrete Building Structural Design

Wanxie Zhong, Chunhang Qiu, Xiaojian Liu, Xiaolin Qin & Junxian Liu

Research Institute of Engineering Mechanics, Dalian University of Technology, Dalian I 16024, People's Republic of China

Abstract: Knowledge representation approaches and knowledge base management strategies in the concrete building structural detail design system KJICAD are described. A load combination algebra system is devel- oped for environmental loads formalization and a code- based problem-solving control structure is established to describe design knowledge sources and their relations. By using compiler techniques, the physical knowledge base is made uniform and simplified for quick access. Finally, a practical design example is included to illu- strate the efectiveness of KJICAD.

INTRODUCTION

Integrated CAD and knowledge-based intelligent design systems are emerging as a means for automating the solution of problems that exist in civil engineering. Some excellent expert systems which have already been applied to civil engineering are, for instance, the seismic hazard evaluation system SPERIL by Yao and F u ; ~ the preliminary structural design system for high rise buildings, HI-RISE (see Maher, Ref. 7); the RECON14 system for reinforced concrete beam verifi- cation, and so on. Most of the systems developed over the past 10 years are only concerned with preliminary design problems or detail design of individual parts. However, they are not always effective in practical engineering.

As we know, the knowledge for detail design of a building structure concerns not only design knowledge from codes and specifications but also background experience of the domain engineer, shown in Fig. 1. Some knowledge in codes is prescribed in natural and/

or diagram form, and is ill-structured; therefore, it must be formalized in order to satisfy the requirements of a computer system which is suitable for symbolic treat- ment. Obviously, the difficulties in developing such a knowledge-based system are still the representation of all necessary knowledge, the management of the knowledge base, and the communication between the knowledge and analysis modules, even though relevant research work has been done theoretically. The goal of KJICAD is performing the function of structural design, from structural analysis to reinforcement draft- ing. It takes knowledge from codes and presents it as a knowledge base which can then be processed to solve problems encountered in the design procedure in the same way that experts would.

This paper presents the approaches for knowledge representation and knowledge base management based on the authors' experience in developing the system. The major features of this paper are given as follows:

- The load combination algebra is established. In this way, the load combination problems can be expressed by the algebra formulae. Different rules of load combination can be executed auto- matically once their algebra formulae are given. Its advantage is that only the load combinatorial algebra formulae need to be modified when the load code is revised.

- An improved decision table is employed for the representation of reinforcement rules in the design codes. The formal processing for wind load acting on building structure is presented. The design knowledge about wind shape coef- ficient ps prescribed in diagram form and/or

27 1 Microcornpilfers in Civil Engineering 0885-9507/93/$06.00 0 1993 Elsevier Science Publishers Ltd

Page 2: A Knowledge-Based System for Concrete Building Structural Design

272 Wanxie Zhong, Chunhang Qiu, Xiaojian Liu, Xiaolin Qin & Jiinxian Liu 7 3 , /

COMB I NATION RULES

STEEL SORTING

DRAFTING STYLE

Fig. 1. Knowlege sources for building structural design.

natural language is transformed into a symbolic system which has been utilized conveniently by KJICAD.

- For design knowledge about calculation and inference sequence implied between provisions in design codes, a code-based problem-solving control structure is developed to explicitly describe this kind of knowledge. The approach is expected to greatly reduce the possibility of com- binatorial explosion.

- Based on compiler techniques, a uniform format is obtained for knowledge base organization. This strategy is proved powerful by its simple semantic codes and syntax.

In addition, the methodology for a successful know- ledge-based system development is discussed. Finally, a practical example is included to illustrate the effec- tiveness of KJICAD.

LOAD COMBINATORIAL ALGEBRA SYSTEM AND ITS IMPLEMENTATION

The goal of load combination is to find the worst state of structural responses which the designer is concerned about. Load combination can also be considered as structural response combination for linear problems, and according to the code (see Ref. 6)’ there are four basic operations in the load combination rules, i.e. exclusive maximization, compatible maximization, linear superposition and linear amplification. Now let ‘&’ ‘+’, ‘+ / - ’ and ‘*’ denote the four operations, respectively, and stipulate that the priority order opera- tion is first ‘*’, second ‘ + ’/’ - ’, third ‘ + ’ and fourth ‘&’; thus, a load combination algebra system is defined. It is easy to prove that the algebra system will satisfy the commutative, associative and distributive law.

The grammar of the algebra formulae are repre sented by the following production rules:

(A):: = a(B) c ( 1

where (A) is syntax entity, ( B ) is basic element. This formula is the so-called Backus-Normal Form (BNF ) and means that (A) is composed of a(B)c . Based on BNF, the formalization of the load combination algebra is given as below:

(LCAS):: = ai: =(state expression)

(state expression): : = (item)(sub-state expression) .

(sub-state expression):: = & (item)(sub-state expres- sion)

: : = null

(item) : : = (element)(sub-item)

(sub-item):: = # (element)(sub-item)

: : = null

(element) : : = (sub-sum) (sub-item)

(sub-element): : = + / - (sub-sum)(sub-element)

:: =null

(sub-sum): : =(reference)

:: = constant * (reference)

(reference): : = @,

. . - hl,

::=si ..- . . - ((state expression))

..-

in which i is a non-sign integer, ai is the ith state vari- able, M, is the structural response corresponding to the ith static load case, Si is the structural response due to the ith seismic load case.

It is convenient to represent a practical load com- bination problem by using the algebra system. For example, assume the loads considered are (1) dead load; (2) wind loads from left and right, respectively; ( 3 ) five compatible live loads; (4) seismic load, and they are combined in the following three forms:

(1) dead load + 0.9* (wind load + live load); (2) dead load + live load; (3) dead load + 0*7* (wind load + seismic load).

Let the dead load be the first static load case, the five live loads the second to sixth static load cases, and the wind loads seventh and eighth. Because the dead load

Page 3: A Knowledge-Based System for Concrete Building Structural Design

KJICAD - A knowledge-based system 273

is always resisting structure, we can write out the fol- lowing load combinatorial algebra formulae to describe the above load combination problem:

@1=M7&M8

@2=M2 =+ M3 =# M4 =# M5 + M6

@3=M1+0.9*(@1 =I+ @2);

@4=M1+@2

@5=M1+0.7*(@2 =I+ S l )

a 1 = Q 3 & @ 4 & @5

Here the first formula is the exclusive maximization of the two wind loads M7 and M8, the second one is the compatible maximization of the five loads from M2 to M6, and the last one is the final result of the above load combination problem. After execution of these for- mulae, the combinatorial internal forces of the struc- ture are stored in the load reaction state variable @ 1.

By means of the load combinatorial algebra system, it is obvious that the corresponding algebra formulae only need to be modified to fit in different loads and load combination rules.

After completing the computation of structural analysis, the internal forces of structure under static loads and seismic loads are obtained. Then using the load combinatorial algebra formulae which describe the load combination problem, the computer is expected to execute these formulae and find out the combinatorial internal forces within each structure component automatically.

LCAS, the load combinatorial algebra system, designed and implemented on E M PC in PASCAL has two major parts: the semantic code generator and the semantic code executor. The semantic code gener- ator is a grammar guided translator (compiler). It scans the given load combinatorial algebra formulae, checks their syntax correctness, and generates the correspond- ing semantic codes. The semantic code executor reads these semantic codes and executes them one by one. When all these codes have been executed, the final combinatorial internal forces of the structure will be obtained.

The design of a grammar guided translator for the load combinatorial algebra system is based on its formal definition given in Backus Normal form. Because the formal definition of the load combinatorial algebra system is a LL( 1) grammar, it has a very good property. While being used to check the syntax correct- ness, it scans the given input symbol string in only one pass and matches the corresponding production rules according to the current symbol scanned without any need for retracing. In addition, the semantic codes can

be generated simultaneously while checking syntax correctness.

The semantic code is expressed as a four-element item

(OPl,OP2, OPR, OP3) (2) where OPl ,OP2 and OP3 are operands, and OPR is operator. In the case of exclusive combination, the semantic code is

(OPl,OP2, &, OP3) ( 3 ) which means to compute the exclusive combination of load reaction states OP1 and OP2, and assign the result into state OP3. Similarly, the semantic code of compatible combination is

(OPl,OP2, + , OP3) ( 4 )

which means to calculate the compatible cornbination of OP1 and OP2, and to store the result into OP3.

The code executor concludes a set of semantic procedures or subroutines, each of which performs a particular operation corresponding to a class of seman- tic codes. These procedures can be easily designed and programmed if the semantic codes are assigned with certain meaning. Then the purpose of semantic code executor is to read semantic codes and call semantic procedures according to the operators of the semantic codes.

REPRESENTATION OF STEEL SELECTION RULES

Some steel selection rules come from design code or specification and the remaining ones from the back- ground experience of the engineer. In fact, most of these rules can be naturally expressed as premise- conclusion relations and may be conveniently illu- strated by a decision table. However, this paper will present an improved decision table for simple com- puter treatment. The scheme of the improved decision table is depicted in Fig. 2.

Compared with the traditional decision table, this revised one has a considerable improvement both in its condition portion and in its action portion.

First of all, Cj not only is the jth condition but also has practical meaning. If there exists a variable in the column of C,, then the condition is a named condition; otherwise, the condition is an unnamed condition. If C, is a named condition, then the corresponding items Cii( i = 1,2,. . . , m) will take one of the following forms:

relation relational table null

Page 4: A Knowledge-Based System for Concrete Building Structural Design

274 Warucie Zhong, Chiinhang Qiu, Xiaojian Liu, Xiaoliti Qin & Jurucian Liu

. R l

R2

RM

(RULES) (CONDITION) (ACT I ON) -~ ~ ~

1

C, C, ” ’ C, A, A, ’.’ A,

C,, C,, - . . C,, AZ1 A,, ... AZL

cll c 1 2 ‘ ” ‘1, A l l ‘ * ‘

‘Ml ‘M2 ’ . ‘MN ‘ . ’

If item C, is assigned with relation or relational expression, then it is appointed that the condition is just the range of values of the condition name; other- wise, if C, is null, then the corresponding rule Ri will be independent of condition Cj.

If Cj is an unnamed condition, then the correspond- ing items C,( i= 1,2,. .., rn) may take one of following forms:

relation expression Boolean expression null

If C, is a relational expression or a Boolean expres- sion, then the condition will be a relational expression or a Boolean expression, too; otherwise, if Cij is null, then the corresponding rule Ri will be independent of condition C,.

Secondly, A , is not only the kth action, but also has a deterministic meaning. The items A,,( i = 1,2,. . . , rn) may take one of following forms:

arithmetic expression; self-definingfunction max(x,x, ... x,,); self-defining function min( x , x2 . . . , xJ\ in which xi( i = 1,2,. . . , n) are arithmetic expressions; null

If A , is null, then we can infer that there is not any causal relation between action A, and the correspond- ing condition; otherwise, A , will be the value of an action variable which corresponds to A ik’s preludial condition.

By using the improved decision table illustrated above, we can describe the construction requirements for hooped bars at beam ends, as shown in Table 1.

WIND LOAD COEFFICIENT OF STRUCTURAL SHAPE

According to the Code (see Ref. 6), the wind load act- ing on the surface of a structure, W, is determined by

w= PSPA wo ( 5 )

Table 1 Requirements for hooped bars in Code3

CD SC, SC,MX D,. ~~

1 max(500,2*H) min( 100,6*dc, H/4) 10 2 max(500,3*H/2) min( 100,8*dc, H/4) 8 3 max(500,3*H/2) min( 150,8*dc, H/4) 6

CD - aseismic construction grade. S,, - length of the hooped region. SCmm - the maximum space length of hooped bar. D,, - the maximum diameter of the hooped bar. H - the height of the beam rectangular section. dc - the diameter of the longitudinal steels of the beam.

where p, = wind load coefficient of structural shape; pz =wind load coefficient of height; /3, =wind load coefficient of vibration; and W, =basic wind load.

The value of p, varies with the shape and dimension of a structure, and is prescribed in diagram form in the design code. So it must be formalized for computer processing.

Mathematical model

We define the plane geometrical contour of a building structure as a digraph represented by

G =( V, E , E’) (6) where V and E are the sets of vertices and edges of the contour, respectively; and E’ is the set of virtual edges which are introduced in order to configure a polygon from the plane geometrical contour of the structure.

Figure 3 is an example of the digraphs. As shown in the figure, the two end-points of a virtual edge (dotted line) are called virtual vertices. Regions with virtual edges are called virtual regions (exclude the outside region or exterior region). The digraph G is oriented in such a way that the area bounded by the contour is always on the right side of a person as he moves along the contour in the arrow direction. The virtual edges are oriented in such a way that the two directed paths between the two u-vertices of a virtual edge cannot form a circuit, where a v-vertex means that it is a end of a virtual edge.

According to the definition, we have

v= { u( i) I i € [ 1, 121);

E={e(i , j ) l i€[ l , 12], j=imod 12+1);

Ef=(e’(2,4),e’(5,8),e’(10, 12)j.

Page 5: A Knowledge-Based System for Concrete Building Structural Design

KJICAD - A knowledge-based system 275

Furthermore, we can describe G with the attributions { ES, DS, ES', X, Y } , which can be described as follows:

- The indicator of edge direction, denoted as ES, is defined as the value of directional sine of the edge in the rectangular Cartesian coordinate system in whch the building structure is located.

- The region indicator of edge, denoted as DS, is defined as:

- 1 if the edge is a virtual edge DS = 0 if the edge is a public edge (7) 1 1 otherwise

For instance in Fig. 3, DS(e'(2,4))= - 1, DS(e(2,3))=0, DS(e(4,5))= 1.

- The direction indicator of the public edges of a virtual region, denoted as ES', is defined as the directional sine of the virtual edge of the virtual region.

- The coordinates of the vertices in structural co- ordinate system, are (X, Y ).

Representation of ,us

So far, the value of p, at any point on the surface of a structure can be uniquely determined by means of the corresponding digraph G =( V, E, El), for there exists a mapping between { ES, DS, ES', X, Y } and p,. Using the digraph model established above, the diagram forms of p\ in the code can be described in the revised form of a decision table. Part of the formal description result of p, is demonstrated in Table 2.

KJICAD, because the knowledge about ,us is already transformed from diagram form into the form of the decision table. This part of design knowledge is applic- able if and only if wind is in the direction of the positive X axis of the structural coordinate system OXY. If the direction of wind is different from the positive X axis, a coordinate transformation for ES and ES' must be car- ried out in order to use the conclusions about ps in Table 2. Suppose that the angle rotating counterclock- wise from the + X direction to the wind direction is p; then we have a new coordinate system OX'Y ' , shown in Fig. 4. For edge e, whose angles are a and a' in OXY

Table 2 Dependence of coefficient p, on structural shape

DS ES Other conditions P\

1 I 0.8

0 Only one virtual region in - 0.7 the digraph G and ES'= 1

~ ~ ~

DS ES' Other cotiditiom P\

Otherwise 0.7

- 0.7 - 1

- 0.6 0.3

- 0.6 - 0.5

0 1

Formalization of ,us

Before the knowledge about ,q determined in the form of Table 2 is applied to a practical design, the given design conditions must be transformed into suitable forms to match the content in the knowledge base of

y ' \

12 R 5

1

Fig. 3. Contour of building structure as a digraph.

0.7 Only one virtual rcgion in the

Otherwise

digraph G

- 0.7

0.9

0.8

0.6 - 0.5

Y

\ I

0 P X

Fig. 4. The coordinate transformation.

Page 6: A Knowledge-Based System for Concrete Building Structural Design

276 Wanrie Zhong, Chunhang Qiu, Xiaojian Liu, Xiaolin Qin & Junxian Liu

and OX’ Y‘ respectively, we have

a = a ’ + p or a ’ = a - p (8) Thus, for an edge e with ES = sin( a ) in OXY, its ES is changed to ES’ =sin( a - p) in OX‘ Y’. It means that the ,us of edge e should be determined according to ES‘ in the new wind direction.

For a building’s structural design, another proposi- tion to use Table 2 is to determine the plane geo- metrical contour of the structure. Let the vertex of x = 0 and y = 0 be the starting point for searching the contour, and let i, j, k be the unit vectors in rectangular Cartesian coordinate system OXYZ; then an arbitrary directed edge e, in digraph G in the OXY plane can be expressed in vectorial form

e, = a,i + b,j (9) where a, and b, are constants.

Thus, based on the relations between each edge and the real region in digraph G =( V, E, E’), the search direction for determining the geometrical contour of a building structure can be determined as below: sup- pose that e,, is a directed edge towards vertex v,, and e,(r= 1,2,3, for orthogonal frame structures, shown in Fig. 5 ) are edges out of v,, then the edge with maxi- mum (a,, x b, - II, x b,)) is selected as the search direc- tion for determining the geometrical contour of the structure at vertex uo.

FORMAL UNIFORM FOR KNOWLEDGE BASE CONSTRUCTING

The macro structure of the design knowledge base is in the form of stratification and classification, as shown in Fig. 1. The key point is for different knowledge to use different knowledge representation approaches. The knowledge representation is the outside view of the knowledge base and, of course, is domain engineer oriented. Therefore, it is necessary to find out a simple

Fig. 5. The search direction at vertex v,.

way to implement the physical knowledge base. In this paper, the compiler technique is used to treat the representation approaches in a uniform four-element item format inside the knowledge base.

A four-element item is a semantic code with a certain function. Obviously, the management of the knowledge base then will be the management of all the four-element items. Furthermore, the manipulation of the knowledge in the knowledge base will become the explanation and execution of the corresponding semantic codes in four-element item format.

Two steps are needed to form semantic codes of the design knowledge. The first step is to present the formalization of the design knowledge and to match and check if the formation satisfies the given produc- tion rules. The second step is to establish the compiler syntax for the formalized knowledge and to program a grammar guide translator to scan through the string of knowledge expressions. If the grammar of the know- ledge formal expressions is correct, then the translator generates semantic codes and puts them into the knowledge base.

The advantage of utilization of semantic codes is that it can regulate load combination algebra and deci- sion table approaches, and simplify the management of the knowledge base. But the design of the translator is even more complex than the process of knowledge for- malization. Because the efficiency of KJICAD mostly depends on the effectiveness of the compiler syntax, we must choose a suitable syntax system and program the translator carefully.

In the compiler syntax, the right term of a produc- tion rule includes not only the non-terminal symbols (syntactic entity) and terminal symbols (basic syntax unit) but also the action routes. The action routes give out all the necessary actions for syntax checking and matching, e.g. pushing an operand to stack, pushing out an operand from stack, generating semantic codes, and so on. In addition, in order to avoid retracing, the set of first-selection symbols corresponding to a production rule is given explicitly. The so-called set of first-selec- tion symbols is, in fact, the set of all possible scanned terminal symbols of the production rule currently matched. In other words, if the scanned symbol does not belong to the set of first-selection symbols of the currently matched production rule, then the input symbol string must have a syntax error.

Because the sets of first-selection symbols of the production rules in a syntax entity do not intersect each other, we can match each of the production rules directly and can generate semantic codes at one time through symbol scanning. Taking the load combination algebra system as an example, the compiler syntax are as follows

Page 7: A Knowledge-Based System for Concrete Building Structural Design

KJICAD - A knowledge-based system 277

(LCAS)::=O [ S ] { SCAN('@*);SCAN(i);PUSH-OPERAND(i) ]

:= { SCAN(':=');PUSH-OPERATOR(':=') } (STATE EXPRESSION) I CODE(P0P-OPD, POP-OPD,

POP-OPR, OP3) 1 ; 1 SCAN(';')

(STATE EXPRESSION):: = [@(MSd-XITEMXSUB-STATE EXPRESSION) (SUB-STATE EXPRESSION)::= & [&] (SCAN('&');PUSH-OPERATOR('&')\

(ITEM) (CODE(P0P-OPD, POP-OPD, POP-OPR, OP3); PUSH-OPERAND(OP3)J

(SUB-STATE EXPRESSION) :: = [ ); ] NULL

(ITEM)::=[ Q(MSd- ](ELEMENT ) (SUB-ITEM ) (SUB-ITEM)::= X [ X ](SCAN('X');PUSH-OPERATOR('#')t

(ELEMENT ) {CODE( POP-OPD,POP-OPD,POP-OPR,OP3); PUSH-OPERAND(OP3)) (SUB-ITEM )

::=[);&]NULL (ELEMEN%::=[ @(MSd- ] (SUB-SUM)(SUB-ELEMENT) (SUB-ELEMENT ):: = + / - [ + or - 1 [SCAN('+'or ' - ');

PUSH-OPERAND('+ bore- ')I (SUB-SUM )(CODE(POP-OPD,POP-OPD,

POP-OPR, OP3);PUSH-OPERAND(OP3)J (SUM-ELEMENT ) :: =[ );& Y ] NULL

(SUM-SUM)::=[ @(MS ](REFERENCE) : :=[d - 1 CONSTANT (SCAN(a);PUT-CANST(OP1, a);

* (SCAN('*');PUSH-OPERATOR('*') 1 (REFERENCE) {CODE( POP-OPD,POP-OPD, POP-OPR,OP3); PUSH-OPERAND(OP3) J

CODE( OP 1 ,O,'C,OP3);PUSH-OPERAND(OP3)J

(REFERENCE)::= @ [ ]{SCAN('@'); SCAN(i);PUSH-OPERAND(i)J :: = M [ M ilSCAN('M');SCAN(i);PUSH-OPERAND(i)J :: = S [ S ](SCAN(bs); SCAN(i);PUSH-OPERAND(i)/ ::=( [ ( ](SCAN('(') )

(STATE-EXPRESSION) (SCAN(')') J

In the syntax, d is an integer in the range 0-9, i is a non-sign integer, a is a real number, sentences in { } are action paths and the symbols in [ ] are the elements of the set of first-selection symbols corresponding to the production rules.

The action procedures mentioned in previous com- piler syntax are:

SCAN( CH) : scan matching characters; PUSH-OPERATOR(CH) : push on operator CH; PUSH-OPERAND( i) : push on operand i; POP-OPD : push out a operator and return in

PUT-CANST(OPD,A) : put real number a into

CODE(OPl,OP2,0PR,OP3) : generate a

function form;

constant area;

four-element group (OP 1,OP2,0PR, OP3) and put it into semantic code area.

solution, so that the possibility of combinatorial explo- sion may be greatly reduced. For this purpose, we re- sort design items in design codes into a series of subsets of design rules, and represent them in Rule Network diagrams (RN hereafter). Each subset of design rules is corresponded with an RN which controls the lower level sub-process.

Definition of RN

Figure 6 is a simple example of RN for a concrete con- tinuous beam. In the figure, the integer in denotes the rule's number in the rule set; the directed edge represents the interrelation of rules where the arrow- heads stand for the dependent relations between each pair of rules; and p;,, is the correlative coefficient, i.e. the evaluation function of relative intensity, between the ith rule and the j th rule in the rule set.

The values of pj , j can be determined by user or by self study through practical engineering design. For an arbitrary detailed sub-process, it is easy to determine an initial rule ro as the root of a searching tree in the solving process. While driving the sub-process, KJICAD retrieves rules related to ro in RN, and executes the rules in the order of their importance in- dicated by the correlative coefficient p,j values.

Take a concrete continuous beam reinforcement design as an example of application of RN as shown in Fig. 6. The continuous beam with given area of re- inforcement is shown in Fig. 7. The goal is to deter- mine the diameters, numbers and Iengths of the longitudinal steels in the beam. The design problem can be decomposed into several sub-processes, shown in Fig. 8. Each final detailed sub-process in the figure must satisfy the following requirements or rules according to the codes (see Refs 3,6):

Rulel. D,,,= q$(B), Nm,,= #?(B) . Rule2. Dmin = # J B ) , Nmin = #,( B, CD) . Rule3. The number of bars should be as few as pos- sible. Rule4. N T 2 #j( CD), NT is the number of continuing bars across all spans of the beam.

CONTROL STRUCTURE OF PROBLEM- SOLVING FOR REINFORCEMENT DESIGN

A design process can be subdivided into a number of weakly interrelative sub-processes. A sub-process is only concerned with a limited feasible region of the

k . 3 p9.3

Fig. 6. An example of rule network diagram.

Page 8: A Knowledge-Based System for Concrete Building Structural Design

278 Wanxie Zhong, Chunhang Qiu, Xiaojian Liu, Xiaolin Qin & Jiinxian Liu

Fig. 7. A continuous beam.

Rule5. N 1 E[Nmi,, N,,,,,] and D 1 Omax] for bot- tom bars. Rule6. N 2 € [ 2 , N l ] and the determination of N2 is influenced by N 1 for bottom bars. Rule7. All top bars and all bottom bars should be as uniform as possible, respectively. Rule8. NlE[N,, , , Nmax] and D 1 EfD,,,, D,,,] for top bars. Rule9. N2€[2, N l ] and the determination of N 2 is influenced by N1 for top bars. RulelO. For top bars cut off at the middle of a span, if they come up to certain lengths, they should be con- tinuously across the span (or the two adjoining sup- ports of the span).

In the above rules, B, CD are the width of the beam section and aseismatic grade, respectively; D, N are the diameter and the number of bars in a row, respectively; N1, N 2 denote the numbers of bars spaced in one and two rows, respectively. #, ( i = 1,2,3, . . . ) are constraint functions.

Representation and management of RN

From the viewpoint of graph theory, an RN is actually a weighted digraph G =( V , E ) (without self-loops and parallel edges), where V is the set of vertices and E is the set of edges in the RN. Now let's construct a matrix

where N is the total number of vertices in the RN. The element aii of AG is defined as

pii if (q, vj)€ E I 0 Otherwise aii =

where ptj is the correlative coefficient between the ith rule and the jth rule in the RN. Since A, is a highly sparse matrix, it can be represented by N one-dimen- sional linkers. The ith linker contains all the adjacent vertices of the ith vertex in the RN, and the adjacent vertices are arranged in the order of pii values. The structure of the one-dimensional linker is shown in Fig. 9.

Thus, the operation of RN, such as deletion, inser- tion and retrieval, is completely equivalent to the

UL>,UR r u n UL> I UN I UK ULDIbN tun SECTION AB SECTION OE

. . .

Fig. 8. The decomposition of longitudinal bars design problem.

VERTEX N

POINTER PTN TO THE RULE

I POINTFR PTR TO NFXT VFRTFX , . - . . . . -. . . . . . . - . .-. . . . -. . . -. .

Fig. 9. The nodal construction of the one-dimensional linker.

manipulation of the corresponding one-dimensional linked data structure.

Since recurrence calls of rules in an RN will make KJICAD fall into 'dead lock', every RN should be checked in advance to erase the possibility of recur- sions. Suppose that the digraph G = ( V E ) is con- structed from an RN, and its adjacency matrix is defined as

A = b i j l N x N ( 12 ) where element ajj is defined by

construct another matrix B from matrix A: k

B=\b , ]=A+A'+ ...+ A h = 1 A'" (14) n t = l

and calculate its elements 6, by

then the value of element 6, indicates the number of the directed paths from the vertex v, to vertex 2). For a digraph G =( V, E ) with N vertices if there exists no path of length less than or equal to N from vertex v, to vertex vl, it is impossible to reach vertex vl from vertex V!.

Based on the above discussion, we can construct a corresponding reachability matrix for an RN:

Page 9: A Knowledge-Based System for Concrete Building Structural Design

KJICAD - A knowledge-based system 27 9

p = [ P , , I N X N (16)

with its elements given by

1 if b,#O I 0 ifb,=O Pi, =

where b,, are computed from eqn (1 5 ) and let K = N. It can be detected whether there exist recurrence

calls of rules in an RN according the values of elements i = 1 ,2 ,..., N) . If pi;# 0 ( i = 1 ,2 ,..., N ) , then the RN

should be revised and further refined. The calculation of the matrix P is performed by

introduced logical operators V, A or adopting War- shall algorithm (Refs 2,8).

JINEGS

Management system of EDB. The following systematic design rules whch are

adopted in KJICAD should be addressed because they are useful even in other sophisticated systems develop- ment.

Structured programming

Arisen from the limitations for GOT0 sentence, the basic concept was first used to program fine structured programs. A fine structured program has only one entrance and one exit, and its static and dynamic struc- tures are identical when it is executed on computer. The advantage of utilization of structured programm- ing is its readability.

KJICAD AND ITS APPLICATIONS Modufar programming

Modern programming methodology was considered when the authors proceeded to design KJICAD. The current version of WICAD has become an integrated knowledge-based system which is being widely applied to solving practical engineering problems. Figure 10 depicts the flow chart of KJICAD.

Model scanner

Scan space frame and recognize its geometric topology and load environment.

FEM solver

Perform static and seismic analysis of building struc- ture by FEM.

Steel selection

Select steel shape and determine steel dimensions.

1 MODEL SCANNER

I

STEEL SELECTION J I NEGS

FEASIBLE ?

DRAFTING -

This approach separates a large-scale program into several relatively independent functional modules and can reduce the complexity of the prototype problem as much as desired. The program designed by this tech- nique will be easily revised.

Protecting programming

Protecting programming means to embed some pro- tecting sentences in the program to check illegal input data and output results at all times, and sound alarms whenever errors occur.

Comprehensive utilization of existent facility

Existing software, such as EDBMS JINEGS, free- format scanner SKAlN (see Zhong & Li, Ref. lo), graphic package DITCAD with Chinese character menus and SHELL subsystem are used in KJICAD.

I I V I / I ' v I '

Fig. 11. Warehouse frame. Fig. 10. Flow chart of KJICAD.

Page 10: A Knowledge-Based System for Concrete Building Structural Design

280 Wanxie Zhong, Chunhang Qiu, Xiaojian Liu, Xiaolin Qin & Junxian Liu

P-I 1 -i

Lml 2 -2

-P4 3 -3

m- 10 -10

w- 11 -11 12 -12

0 0 b KJL -1 1 :50

Fig. 12. Drafting of a beam reinforcement.

The system KJICAD has been used in many con- crete building structural design activities. The follow- ing example is a warehouse ( 5 storeys, 7 bays in X-direction and 2 bays in Y-direction) structural design. The structural model is shown in Fig. 11. The control design conditions include:

( 1) concrete grade = C20; (2) steel elastic modulus E = 2.1 X loR KN/m*; (3) basic wind pressure w0 = 0-25 KN/m*; (4) earthquake intensity = 7.

One of the concrete beam reinforcement drafts plot- ted automatically by KJICAD are shown in Fig. 12.

CONCLUSIONS AND ACKNOWLEDGEMENTS

Some major topics for WICAD implementation have been outlined. Using the load combinatorial algebra system, it becomes very simple and clean to describe and solve various load combinations. The formal pro- cessing method of design knowledge in natural

language has been proved effective in the practical sys- tem KJICAD and the utilization of compiler technique in K€3 management is suitable for a high efficiency CAD system development.

The authors gratefully acknowledge the support provided by the National Natural Science Foundation of China.

REFERENCES

1. Arthur, B. P., Compiler design and Construction. Van Nostrand Reinhold, 1986.

2. Chen, W. W., Applied Graph Theory-Graphs arid Elec- trical Networks. North-Holland, 1976.

3. Concrete Strucniral Design Code (GBJ 10-89). Chinese Building Industry Press, Beijing, China, 1989.

4. Connor, J. J. & Finn, G. F., Applied artificial intelligence for structural engineering analysis and design. In Proc. of 4th Int. Offshore Mechanics and Arctic Etigrg. Symp., Vol. 11, 1985.

5. Fenves, S. J., Fleming, U., Hendrickson, C., Maher, M. L. & Schmitt, G., Integrated software environment

Page 11: A Knowledge-Based System for Concrete Building Structural Design

KJICAD - A knowledge-based system 28 1

for building design and construction. Compiiter-Aided Design, 22 (1990) 27-36.

6. Loading Code of Chinese Building (GBJ 9-87). Chinese Plan Press, Beijing, China, 1989.

7. Maher, M. L., HI-RISE and beyond: directions for expert system in design. Computer-Aided Design, 17 (1985) 420-7.

8. Skvarcius, R. & Robinson, W. B., Discrete Mathematics with Computer Science Applications. Benjamin/Cumm- ings Publishing Company, Inc.

9. Yao, J. T. P. & Fu, K. S., Civil engineering applications of expert systems. In Proc. of 4th Int. Offshore Mechanics and Arctic Engrg. Symp., Vol. 11, 1985.

10. Zhong, W. X. & Li, X. K., The core management system JINEGS. Journal of Dalian Institzrfe of Technology, 19 (1980) 37-47.

11. Zhong, W. X. & Liu, J. X., A simple and feasible gram- mar guided translator for load combination algebra system. Compiitational Structural Mechanics and Appli- cations, 4 (1987) 93-102.