# «A Computer Application to Study Engineering Projects at the Early Stages of Development M. H. Gedig M.A.Sc Structural Engineer AGRA Coast Inc. 1515 ...»

eJSE Electronic Journal of Structural Engineering, 3 (2003) 43

International

A Computer Application to Study Engineering

Projects at the Early Stages of Development

M. H. Gedig

M.A.Sc Structural Engineer AGRA Coast Inc.

1515 KingswayPort Coquitlam, B.C., Canada V3C 1S2

and

Dr. S. F. Stiemer

Dr.-Ing, P.Eng. Professor, Department of Civil Engineering

University of British Columbia 2324 Main Mall Vancouver, B.C., Canada V6T 1Z4

## ABSTRACT

This paper describes a computer software application, the Qualitative Engineering System (QES), which the engineer can use to perform qualitative and semi-quantitative analysis of preliminary engineering designs.In engineering practice, many situations arise in which the engineer wishes to perform a logical, objective comparison between conceptual or preliminary design options. Although there exist many applications which can be used to perform detailed numerical analysis to justify detailed final designs, relatively few useful programs are available to validate designs at the preliminary stages. The early stages of design are characterized by higher levels of uncertainty than the latter stages. Established qualitative and semiquantitative reasoning techniques may be used to detail with uncertainty and incomplete information in a sound, logical manner. The QES application utilizes a unified framework, which is used to implement a number of qualitative and semi-quantitative reasoning techniques. This paper gives an explanation of qualitative and semi-quantitative analysis in the context of the QES application. In addition, the paper gives some practical examples of how the QES program can be used in the engineering environment.

## KEYWORDS

Computer application, design uncertainty, conceptual design, decision evaluation, qualitative reasoning, semi-quantitative reasoning, interval technique.1 Introduction An accurate evaluation of conceptual design alternatives holds many potential benefits for the engineering practice. Unworkable designs can be eliminated early, and more resources can be dedicated to the concepts, which are most practical and efficient. It is accepted that the earlier a decision is made in a project the greater the financial implications of the decision. Often a large amount of capital and time is expended at the latter stages of a project in order to make an unworkable design workable. A better understanding of the feasibility of a conceptual design allows the engineer to be more competitive, because the inherent risk of working in new territory can be decreased.

A fundamental problem in evaluating conceptual design alternatives is the relatively high level of uncertainty present in design concepts. Many of the currently available analytical tools are not effective in coping with the type of uncertainty, which exists in design concepts. Numerical analysis tools are indispensable in the practice of engineering today. The finite element method, for example, is a widely used systematic approach to predicting the behaviour of systems in a wide range of applications, including thermal analysis, structural analysis, mechanical analysis and electromagnetics. In most of the available numerical analysis packages, input must be specified in a rigid, structured format. If these tools are used in the conceptual stages, many of the required input fields must be estimated, and there is usually no systematic way of

determining how the accuracy of the program output relates to uncertainty in the input parameters.

Probability methods are useful in evaluating the level of risk in a completed design. At the conceptual design stages however, these methods are cumbersome and suspect because of the large amount of input required. Much of the input used for describing the probability distribution functions for various design parameters would have to be estimated at the early stages of a design. The time and effort required preparing the input, and the value of the results given the uncertainty in the output both detract from the worth of probability methods in such an application.

Expert systems have been successfully used in the past for reasoning with information that is characterized by a high level of uncertainty. The problem with expert systems is that they are notoriously “brittle” - they are domain specific and tend to be of limited use outside their narrow range of expertise. Expert systems do not generally reason with established physical principles, which apply over a number of domains. There is a great deal of incentive in engineering to develop new, innovative, and cost-effective solutions to problems. Innovation often involves interdisciplinary approaches to problem solving which are incompatible with the domainspecific nature of expert systems.

An alternative approach to evaluating conceptual designs is to use the techniques of qualitative and semi-quantitative analysis. The systematic study of qualitative techniques developed out of artificial intelligence research in the early eighties. Qualitative and semi-quantitative techniques may be used to perform sound reasoning about physical systems, which are characterized by a high degree of uncertainty.

2 The QES Program The goal of this research is to develop a tool to evaluate conceptual designs using proven, logical, and sound reasoning techniques. The tool must be able to cope with a high level of uncertainty, and flexible enough to accept more information and adapt to the changing level of uncertainty as a project progresses. In order to fulfil the goals of this research, the QES program was developed. The program uses a number of qualitative and semi-quantitative analysis techniques. These techniques were described in detail in a previous paper and will be only briefly covered here.

In developing a practical engineering tool for reasoning with partially-specified information, it would be desirable to incorporate both the power of abstraction inherent in qualitative methods, and the elegance of semi-quantitative methods such as interval analysis [10]. The Qualitative Engineering System (QES), developed as a part of this research, features a coherent framework, which integrates both qualitative and semi-quantitative reasoning techniques.

The level of uncertainty present in an engineering project is not static. In the early, conceptual stages, there is more uncertainty than in the final stages. A flexible reasoning framework is needed which is capable of using new information, as it becomes available, and updating previous conclusions. QES uses the powerful notion of constraints as a means of expressing engineering problems.

2.1 Constraints Much of an engineer’s knowledge is best expressed in terms of what is, or conversely, what is not allowed. Functional requirements, material limitations, labour considerations, environmental characteristics and the laws of physics can all be expressed in the language of constraints. Many of the computational tools currently used in engineering demand a rigid dichotomy between input and output. Furthermore, the input format is often inflexible, requiring that input data be completely specified before computation can proceed. In contrast, QES is able to accept as input

only the information that is known at a particular time. Information, both qualitative and quantitative, can be added any stage of a project.

2.2 Program Structure QES is effectively a quantity database [1], which is implemented as a constraint network. The database contains expressions and relations, where the expressions represent the nodes of the constraint network and the relations represent the constraints. The relations may be either arithmetic in nature, or may represent inequalities (ordinal relations). Expressions are capable of representing qualitative information, such as whether a parameter is less than, greater than, or equal to zero. Expressions also can store semi-quantitative information, which is expressed in the form of intervals. A number of techniques, both qualitative and quantitative, are used to reason with the quantity database. These techniques include label propagation using both intervals and signs, interval arithmetic, graph search, and constraint inference.

This section discusses the main components of the QES representation: intervals, expressions, variables, constants, equations, inequalities and systems of equations. In QES, constraints are represented as equations and inequalities. Both equations and inequalities are composed of expressions, which consist of variables and constants. Expressions evaluate to quantities. The interval representation is used to express quantities to varying degrees of precision. QES was implemented in the programming language C++, an object-oriented language. In the objectoriented approach, data and the procedures, which use this data, are encapsulated as entities called objects. In the following discussion, the components of QES are formulated as objects.

2.4 Bounds A bound is a structure which consists of three fields: the value, which is either a floating-point number or one of the symbolic constants -∞, +∞, or NaN (Not a Number); the inclusion field, which is TRUE if the bound includes the value, and FALSE otherwise; and the type member, which indicates whether the bound is at the lower or upper extent of the interval. Using

2.5 Expressions Just as algebraic expressions may take on a number of seemingly different forms, so may expressions in QES. Expressions represent a fundamental component of QES, as several other components of the system derive their behaviour from expressions. The expression data structure is shown schematically in Figure 3. The definition of the expression is recursive in nature, as the data structure contains a reference to itself. For illustration, consider the simple algebraic expression A + (B × C). This expression may be represented as a binary tree, as shown in Figure 4. The node labeled ‘×’ has two children, the variables B and C. The node labeled ‘+’ also has two children, the variable A and the expression B × C. Since variables may be considered simple expressions, variables and expressions are essentially the same in QES.

Representing expressions as trees proves to be a convenient construct for many of the techniques, which are used to reason with the quantity database.

Figure 4: Graphical representation of expressions Two of the main components of the expression data structure, shown in Figure 3, are the constraint, and the domain. The constraint is a single interval, while the domain is a set of intervals. By default, the constraint interval holds the value [-∞, +∞], which expresses a complete ignorance of the value of the expression. As more information about various quantities and relations is entered into the system, the constraint intervals become narrower. The domain set is interpreted slightly differently for variables than for expressions. In QES the domain of a variable is analogous to the quantity space representation in other qualitative reasoning frameworks, such as Kuipers’ QSIM [6]. Kuipers defined the quantity space as a finite, ordered

**set of landmark values:**

l1 l2... lk,

**which can be represented as the set of alternating closed and open intervals:**

{[-∞, -∞], (-∞, l1), [l1, l1], (l1, l2), [l2, l2],..., [lk, lk], (lk, +∞), [+∞, +∞]}.

In QES the landmarks are replaced by valid assignments to the value field of the bound structure. For example, the simple quantity space {-, 0, +} may be described by the domain set {[-∞, 0), [0, 0], (0, +∞]} in QES. Expressions are also used to represent numeric constants in the quantity database. The numeric constant zero is a default member of the database. The domain of the constant zero contains the single closed interval, which identified with the real number zero, {[0, 0]}.

An expression may have two, one or no children. A binary expression, such as A + B, has two children, while a unary expression such as -X has only one child. In the expression structure shown in Figure 3, the type field indicates whether the expression is unary or binary. The operator member indicates what type of operator is applied to the child expressions. The

available unary operators are negate and reciprocal, while the binary operators are add, subtract, multiply and divide. The leftChild and rightChild fields point to the child expressions. The rightChild field is unused for unary expressions, while both are unused when the expression represents a variable. The variables are the ‘leaves’ of the expression tree, while each expression, which has no parent, is a ‘root’. The child data members act as the hierarchical or arithmetic links between expressions. These links are bi-directional, as each child has a corresponding link with their ‘parent’. The parents data field holds a list of pointers to the parents of the expression. The network of expressions cannot properly be called a tree, since an expression may have multiple parents, for example, A + B × A. Having noted this, the tree analogy is still a convenient descriptive construct which reflects the hierarchical nature of the interconnections between expressions.

The expression tree representation is similar to what Forbus terms a ‘tree of functional dependencies’, which represents the relationship between qualitative proportionalities. In the tree of functional dependencies, quantities are linked by qualitative proportionalities, independent quantities are at the leaves, and the dependent quantity is at the root. When the expression tree is used for qualitative analysis, the relationships between expressions feature a similar dependence, however, for other operations such as interval propagation, the links are essentially bi-directional.

2.6 Relations Along with arithmetic links, relational links represent the means by which constraints may propagate through the quantity database. Relational links (called relationLinks in QES) serve two purposes: they constrain expressions to form equations and inequalities, and they enable search techniques to be used to infer additional information about ordinal relationships.