Graduate School of Industrial Administration ... Engineering Design Research Center at Carnegie Mellon University, an Engineering Research Center of the.
Optimal Design of Truss Structures by Logic-Based Branch and Cut S. Bollapragada
Information Technology Laboratory General Electric Corporate Research and Development Schenectady, NY 12301 USA O. Ghattas
Mechanical Engineering Department Carnegie Mellon University, Pittsburgh, PA 15213 USA J. N. Hooker
Graduate School of Industrial Administration Carnegie Mellon University, Pittsburgh, PA 15213 USA
December 1996
Abstract
The truss design problem is to nd the optimal placement and size of structural bars that can support a given load. The problem is nonlinear and, in the version addressed here, the bars must take certain discrete sizes. It is shown that a logic-based method that dispenses with integer variables and branches directly on logical disjunctions can solve substantially larger problems than mixed integer programming, even though the nonlinearities disappear in the mixed integer model. A primary purpose of the paper is to investigate whether advantages of logic-based branching that have been demonstrated elsewhere for linear problems extend to nonlinear programming.
1 Introduction Engineering design problems often involve both continuous variables and discrete alternatives that can be formulated with disjunctive constraints. If the discrete elements are represented with integer variables, the problems can in principle be solved with the branch-and-cut methods of mixed integer programming. Another option, however, is to dispense with integer variables and to branch directly on the alternatives in a logical disjunction. This approach has recently been shown to be superior for several engineering design problems [8, 9, 11, 12, 13, 14, 17]. When the constraints are linear, the logic-based approach might be referred to as Mixed Logical/Linear Programming (MLLP), in contrast to Mixed Integer/Linear Programming This research is partially supported by U.S. Oce of Naval Research Grant N00014-95-1-0517 and by the Engineering Design Research Center at Carnegie Mellon University, an Engineering Research Center of the National Science Foundation. 1
(MILP). A systematic development of MLLP and a survey of the relevant literature may be found in [10]. The aim here, however, is to explore the potential of logic-based branching for solving nonlinear problems. To this end it is applied to the truss structure design problem, which is one of the fundamental problems of engineering design. The object is to nd a minimum-cost placement and sizing of truss members (bars) to support a given load. The cross-sectional areas of bars may be continuous or may be restricted to a set of nite values. Even the continuous problem is hard, because the constraint functions are bilinear and therefore nonconvex. (In the continuous model, a bar is considered absent when its optimal size is > 0, where is a lower bound imposed to avoid singularities.) The logic-based approach is applied here to problems with discrete bar sizes. We nd that it can optimally solve problems that are substantially larger than problems that can be solved by a state-of-the-art MILP approach. Logic-based branching can also nd an approximate global optimum for the continuous problem, but this possiblity is only brie y discussed here. Other algorithms for the continuous problem may be found in [15, 18, 19]. The discrete problem can be formulated by imposing disjunctive constraints, each of which states that a given bar must assume size 1 or size 2 or size 3, etc. This raises the question as to how a solution method is to account for constraints of a logical nature. An approach introduced by Ghattas and Grossmann [6] formulates the problem with 0-1 variables in such a way that the nonlinearities disappear, resulting in an MILP problem. We will see that this formulation is in fact the tighest possible MILP formulation, namely a convex hull formulation [1]. This represents an advance relative to previous methods (e.g. [3, 4]) in the sense it does not require the solution of a nonlinear model. Nonetheless the resulting problem is hard to solve. A commercial solver (CPLEX) was unable to solve even a standard 10-bar problem when there are multiple loading conditions or bounds on node displacements. The logic-based approach pursued here is distinguished by the following three elements.
Logic-based branching. The branch-and-cut procedure dispenses with integer variables and
branches directly on the alternatives in the disjunctions. This is in contrast with MILP approaches, which branch on integer variables. Several potential advantages of this approach are discussed in [10]. Here it has two main advantages: a) it yields much smaller subproblems at the nodes of the search tree, due to the absence of integer variables; b) it permits application of a very eective branching rule that is not available in an MILP context. Logic cuts. Valid cuts in the form of logical propositions (rather than the usual linear inequalities) are added to restrict the size of the branching tree. Here the cuts are certain logical disjunctions. Nontraditional relaxations. A relaxation other than the traditional continuous relaxation of an MILP model is used. Although an MILP model has advantage that the continuous relaxation is always readily available, the quality of the relaxation may not justify the overhead of including integer variables. This is the case in the truss design problem. Several nontraditional schemes for relaxing disjunctive constraints are presented in [2, 10]. As it happens the disjunctions in our formulation do not have useful linear relaxations, but we show that the logic-based framework permits us to use a linear \quasi-relaxation" of the nonlinear problem at each node. Like a true relaxation, it provides a lower bound 2
on the optimum and so plays a role analogous to that of the continuous relaxation in MILP. Other potential elements of a logic-based approach are described in [10].
2 The Design Problem The truss structure design problem considered here is stated for a given network of nodes and arcs. The positions of the nodes are given. The structure must consist of bars placed along some or all of the arcs and joined at the nodes. The problem is to nd a choice of bars, and cross-sectional areas of these bars, so as to minimize the cost of all the bars used. Each node has freedom of movement in a speci ed number of directions, which can be limited by a support at that node. Thus if the problem is solved in three dimensions, there are at most three degrees of freedom at a node. Several possible loading conditions are anticipated, each of which may exert a force at any set of nodes, and along one or more degrees of freedom at each of these nodes. Constraints are placed on the displacement of each node along each degree of freedom for each loading condition. Similar constraints are placed on the elongation (or compression) of each bar as well as the stress in each bar, for each loading condition. First, the notation. Parameters: I = number of bars i. J = number of degrees of freedom j (summed over all nodes). L = number of loading conditions `. K = number of discrete cross sectional areas for bar i. h = length of bar i. A = cross sectional area of bar i. A = k-th discrete cross sectional area of bar i. E = modulus of elasticity of bar i. p = force imposed by load condition ` at degree of freedom j . b = cosine of the angle between bar i and degree of freedom j . c = cost per unit volume of bar i. ; = minimum and maximum tension (stress if negative) in bar i. v ; v = limits on elongation (compression if negative) of bar i. d ; d = limits of displacement for degree of freedom j . i
i
i
ik
i
j`
ij i
L i L i L j
U i U i U j
Variables: s = force in bar i for load condition `. = stress in bar i for load condition `. v = elongation (compression if negative) of bar i due to loading condition `. d = node displacement along degree of freedom j for loading condition `. i`
i`
i`
j`
The design problem can be formulated mathematically as follows. min
Xc h A I
=1
i
i
(1)
i
i
3
s.t.
Xb I
=1
ij
Xb
s = p ; all j; ` (equilibrium equations) i`
j`
i
J
j
=1
ij
d = v ; all i; ` (compatibility equations) j`
i`
= Eh v ; all i; ` (stress equations) E A v = s ; all i; ` (Hooke's law) h v v v all i; ` (elongation bounds) ; all i; ` (stress bounds) d d d ; all j; ` (displacement bounds) i
i`
i`
i
i
i
i`
i`
i
L i
i;`
U i
L i
i`
U i
L j
j`
U j
_ (A Ki
k
=1
i
= A ); all i (logical disjunction). ik
The equilibrium equations balance the external loads with the forcws induced in the bars. The compatibility equations relate the displacement of the nodes with the elongation of the bars. A detailed description of the physics of the truss structures can be found in [18] and [16]. Note that the disjunctive constraints at the end require each area A to take one of the discrete values A . Because each stress variable can be replaced with (E =h )v , the stress variables can be eliminated and the elongation bounds adjusted to re ect bounds on the stress variables. That is, v is set equal to (h =E ) whenever the latter is larger, and similarly for v . It is assumed from here out that this has been done. i
ik
i
i`
L i
i
i
i
i`
U i
L i
3 A Mixed Integer Representation _A x a
A disjunctive constraint
k
(2)
k
k
can be given a mixed integer representation by introducing 0-1 variables y that are equal to 1 when the k-th alternative is satis ed (possibly among others). The tighest mixed integer representation of (2) is the convex hull representation [1], which is obtained by disaggregating the variables x. PA xx =ax;y ; all k; (3) P y = 1: The projection of the feasible set of (3) onto the x space is the convex hull of the feasible set of (2). This representation is the tightest possible in the sense that the continuous relaxation of any mixed integer representation of (2) must project onto a set that contains the convex hull. The disjunctions in (1) can be given a convex hull representation by introducing 0-1 variables y that are equal to 1 when bar i has size A . The variables s and v are disaggregated. k
k
k
k
k
k
k
k
k
ik
ik
4
i`
i`
Fortuitously, this representation removes the nonlinearity from the problem. min
Xc h XA
y
s.t.
Xb X s
= p ; all j; ` (equilibrium equations)
Ki
I
=1
i
i
i
k
Ki
I
=1
ij
Xb i
k
J
j
ik
=1
=1
ij
=1
ik`
(4)
ik
j`
Xv Ki
d = j`
k
=1
ik`
; all i; ` (compatibility equations)
E A v = s ; all i; k; ` (Hooke's law) h i
ik
ik`
Xy
ik`
i
Ki
k
= 1; all i
ik
=1
v y v v y ; all i; k (elongation bounds) y 2 f0; 1g; all i; k (integrality). Actually it is not necessary to disaggregate the s 's, because the following model is equivL i
ik
U i
ik`
ik
ik
alent to the above:
i
min
Xc h XA
s.t.
Xb
Ki
I
i
=1
i
i
k
I
=1
ij
Xb
=1
j
ij
=1
y
(5)
ik
s = p ; all j; ` (equilibrium equations) i`
j`
i
J
ik
d = j
Xv Ki
k
=1
ik`
; all i; ` (compatibility equations)
E X A v = s ; all i; ` (Hooke's law) h =1 i
Ki
ik`
i
Xy Ki
k
=1
ik
i`
k
ik
= 1; all i
v y v v y ; all i; k (elongation bounds) d d d ; all j (displacement bounds) y 2 f0; 1g; all j (integrality). L i L j
ik
U i
ik`
j`
ik
U j
ik
This is precisely the mixed integer model proposed by Ghattas and Grossmann [6, 7]. Although it has the advantage of linearity (aside from the integrality constraint), it contains a large number of variables, a matter to be discussed in more detail later.
4 Logic-Based Branch-and-Bound A classical branch-and-bound algorithm for the mixed integer problem (5) solves a continuous relaxation of the problem at each node of a search tree. The continuous relaxation is formed 5
by replacing the integrality requirement y 2 f0; 1g with 0 y 1, which results in a linear programming problem. It then creates two successor nodes by branching on a variable y that has a fractional value in the solution of the relaxation. The variable is set to 0 at one node and to 1 at the other. The relaxation provides two devices for reducing the size of the search tree: a) The optimal value of the continuous relaxation is a lower bound on an optimal solution at the problem at that node. There is no point in branching further at the node if this bound is larger than the value of a feasible solution found earlier in the search. b) It may happen that all of the integer variables have integral values in the solution, even though only a few have been xed to integral values. This yields a feasible solution without going deep into the tree. A similar branch-and-bound scheme can be applied to the disjunctive formulation (1). Rather than branch on 0-1 variables y , one can split the range of the areas A . For instance, if A currently has the value 15 but must take one of the values 0, 5, 12, 18, 25, 40, one might impose the constraint 0 A 12 in one branch and 18 A 40 in the other. Thus at each node of a search tree, the problem has additional constraints of the form ik
ik
ik
i
ik
i
i
i
A A A L i
i
(6)
U i
for certain bars i. Both A and A are among the discrete values A allowed for A . If one goes deeply enough into the tree, this procedure xes all the A 's to a discrete value. Analogs of (a) and (b) above allow one to prune the tree as in classical branch-and-bound. L i
U i
i
ik
i
a0) Although there is no obvious way to de ne a linear relaxation, we will show that a linear
problem (a `quasi-relaxation') can nonetheless be formulated that provides a lower bound on the optimal solution at the current node. b0) It may happen that all the variables A have one of the discrete values A , A in the solution of this relaxation. We will see that, in this case, the solution is feasible in (1). L i
i
U i
A continuous relaxation of the problem (1) is obtained by replacing the disjunctive constraints with 0 A A . There are actually several ways to provide linear relaxations for disjunctive constraints, as noted earlier [2, 10]. In this case, however, 0 A A is already the convex hull of the feasible set of disjunctive constraint i and is therefore its best possible linear relaxation. i
iKi
i
iKi
5 A Linear Quasi-Relaxation Unfortunately the continuous relaxation of (1) is both nonlinear and nonconvex and therefore does not provide a practical way to obtain a lower bound. It is possible, however, to obtain a lower bound by solving a quasi-relaxation. Given a constrained minimization problem P , a problem Q is a quasi-relaxation of P if for every feasible solution of P with objective function value v, there is a feasible solution of Q having objective function value less than or equal to v. (An ordinary relaxation is a special case.) Obviously, the optimal value of Q is a lower bound on the optimal value of P . 6
We can obtain a quasi-relaxation of (1) as follows. Note rst that P in the mixed integer formulation (4), a bar's area A is expressed as a convex combination A y of discrete areas. We will use a similar device but with only two discrete areas, namely A and A in (6). So we rewrite (1) with the change of variables, A = A y + A (1 ? y ) v =v0 +v1 : This yields the following problem, which is equivalent to (1) plus area bounds (6). i
k
ik
ik L i
min
i
L i
i`
i `
U i
i
i
i `
X c h [A y + A (1 ? y )] =1 X b s = p ; all j; ` (equilibrium) I
i
L
i
U
i
i
i
i
U i
(7)
i
s.t.
I
=1
ij
i`
Xb
j`
i
J
j
=1
d = v 0 + v 1 ; all i; ` (compatibility)
ij
j`
i `
i `
E [A y + A (1 ? y )](v + v ) = s ; all i; ` (Hooke's law) 0 1 h v v 0 + v 1 v all i; ` (elongation) d d d ; all j; ` (displacement) i
L
U
i
i
i
i
i `
i `
i`
i
L i`
i `
L j
j`
_ [A Ki
k
=1
L i
U i`
i `
U j
y + A (1 ? y ) = A ]; 0 y 1; all i: (disjunction) U
i
i
i
i
ik
Now consider the following linear problem. It is obtained by rewriting Hooke's law and the elongation bounds and dropping the disjunctive constraint. min
X c h [A y + A (1 ? y )] =1 X b s = p ; all j; ` (equilibrium) I
i
L i
i
U i
i
i
(8)
i
s.t.
I
ij
=1
Xb
i`
j`
i
J
j
=1
ij
d = v 0 + v 1 ; all i; ` (compatibility) j`
i `
i `
E (A v + A v ) = s ; all i; ` (Hooke's law) 0 1 h v y v 0 v y ; all i; ` (elongation) v (1 ? y ) v 1 v (1 ? y ); all i; ` (elongation) d d d ; all j; ` (displacement) 0 y 1; all i: i
L i
U i
i `
i `
i`
i
L i`
i
U i`
i `
L i`
i
L j
j`
i `
i
U i`
i
U j
i
Lemma 1 Problem (8) is a quasi-relaxation of problem (7). Proof. Consider any feasible solution (s; d; v; y) of (7). It suces to construct a feasible solution (s; d; v0 ; y) of (8), since the latter solution has the same objective function value in (8)
7
as the former does in (7). To do this we let
v00 = y (v 0 + v 1 ) v01 = (1 ? y )(v 0 + v 1 ): i
i `
i `
i
i `
i `
i `
i `
This clearly satis es the elongation bounds in (8). Also substitution of these expressions into the approximation of Hooke's law in (8) yields an equation identical to Hooke's law in (7). The remaining constraints of (8) are already identical to their counterparts in (7). 2
Corollary 2 If (7) has a feasible solution, then (8) has a feasible solution in which, for all i and `, v 0 and v 1 do not have opposite signs. i `
i `
Proof. The solution of (8) exhibited in the previous proof has this property. 2 Note that (8) is considerably simpler than the linear relaxation of the mixed integer model P (4). The latter model, omitting the stress variables , contains K (L +1)+2JL variables. This is reduced to I (2L + 1) + 2JL in (8). For example, the smallest problem we solved (the 10-bar truss described in the next section) gives rise to a mixed integer formulation with 238 continuous and 110 discrete variables, all of which appear in the linear relaxation. The above quasi-relaxation contains only 38 variables. The contrast is even greater for larger problems. When y = 0 or 1 in the solution of (8), the area of bar i is at the lower bound A or upper bound A , respectively. The following is clear on inspection. jl
i
i
L i
i
U i
Lemma 3 If each y is 0 or 1 in a solution of (8), then that solution is feasible in (7). i
Lemmas 1 and 3 allow one to solve (7) with the logic-based branch-and-cut algorithm in Fig. 1. The algorithm bears a super cial resemblance to ordinary branch-and-cut due to the fact that branching terminates when the y 's are integral. But it is actually quite dierent, because the constraints and objective function change substantially at each node due to the readjustment of A ; A . The logic-based framework provides freedom to alter the model dynamically in this fashion. The algorithm exploits Corollary 2 by adding logic cuts that force v 0 and v 1 to have the same sign whenever they dier. We refer to this as a logic cut because it is implemented by branching on the disjunctive constraint i
L i
U i
i `
i `
v 0 ; v 1 0 or v 0 ; v 1 0 i `
i `
i `
i `
rather than on the value of an integer variable.
6 Computational Results We solved nine standard problems considered in several papers on truss structure design (see [19]). Seven are variations on a 10-bar cantelever truss problem. The other two concern a 25-bar structure that resembles a high-voltage transmission tower and a 72-bar structure that resembles the framework of a tall building. The topologies of the three structures considered are in Figs. 2, 3 and 4. The 10-bar problem is two-dimensional, whereas the 25-bar and 72-bar problems are three dimensional. The problem data are exactly as described in [19] and are summarized in Table 1. 8
A = (A1 ; : : : ; A ), A = (A1 ; : : : ; A ). A ; A ) = (0; A ) for i = 1; : : : ; I . U 1 (upper bound on optimal solution). B ; (logic cuts). Branch A ; A ; B ). If U = 1 then
Define Set ( L i Set = Set = (
Else
L
L I
L
U i
L
U
U
U I
iKi
U
Problem is infeasible.
(s ; d ; v ; y )
is optimal for (7).
Branch A ; A ; B
Procedure ( L U ). (8), augmented with the constraints in , has a feasible solution ( ) with cost i0` i1` have opposite signs for some ( L U 0 ). i0` i1` ( L U 0 ). i0` i1` U L some i 0 1 and i = i + Ui (1 i ). Let i = L i i Let ik be the largest area in i1 iKi that is smaller than i . L U L L ). ( L i;k +1 1 i+1 i?1 I U U U L U ). ( ik 1 i+1 i?1 I
If
If v ; v Branch Branch Else if A A
Else
End
Branch.
Branch Branch Let
B z < U then i then A ; A ; B [ fv ; v g A ; A ; B [ fv ; v g y 62 f ; g A 6 A then A y A ?y fA ; : : : ; A g A A ;:::;A ;A ;A ;:::;A ;A ;B A ;A ;:::;A ;A ;A ;:::;A ;B s; d; v; y
U =z
and
(s ; d ; v ; y ) = (s; d; v0 + v1 ; A y + A (1 ? y )). L i
i
U i
Figure 1: Logic-based branch-and-cut algorithm
9
i
Problem Description 1A 10 bar cantelever truss with the following parameters Ei = 107 psi; ci = 0:1lb=in3; (iL ; iU ) = (?25000; 25000) psi, (dLi ; dUi ) = (?1; 1); 8i L = 1 (two 100000 lb downward loads applied at nodes 2, 4) 1B Same as 1A, except that stress bounds in bar 9 are changed to 30000psi 1C Same as 1A, except that stress bounds in bar 9 are changed to 50000psi 1D Same as 1A, except that stress bounds in bar 9 are changed to 70000psi 2 Same as 1A but with an additinal loading condition (L=2) consisting of two 150000 lb downward loads applied at nodes 2,4 and two 50000 lb upward loads applied at nodes 1, 3 3 Same as 1A but with displacement bounds, (dLi ; dUi ) = (?2; 2) in 4 Same as 2 but with displacement bounds, (dLi ; dUi ) = (?2; 2) in 5 25-bar tower with 2 loading conditions, 8 linking groups. Ei = 107 psi; ci = 0:1lb=in3; (iL ; iU ) = (?40000; 40000) psi, (dLi ; dUi ) = (?:35; :35) in, 8i l = 1 : 4 loads of (1000, 10000, -5000), (0, 10000, -5000), (500, 0, 0), (500, 0, 0) lb at nodes 1,2,3,6 respectively l = 2 : 2 loads of (0, 20000, -5000), (0, -20000, -5000) at nodes 1,2 6 72-bar building with 2 loading conditions, 7 linking groups. Ei = 107 psi; ci = 0:1lb=in3; (iL ; iU ) = (?25000; 25000) psi, (dLi ; dUi ) = (?1; 1); 8i l = 1 : 1 load of (5000, 5000, -5000) lb at node 1 l = 2 : 4 loads of ?5000 lb in the -ve z direction at nodes 1,2,3,4
Table 1: Problem summary. Eleven dierent areas of cross section were allowed for each bar (K = 11 8i). The 25-bar and 75-bar problems link variables by requiring that certain symmetrically located bars have the same size. This is easily enforced in our model by assigning the same variables y to all the bars in a given linking group. Our algorithm was implemented in C, compiled with optimization and run on an HP-700 workstation. The linear programming problems were solved by subroutine calls to CPLEX version 2.1. For comparison, the mixed integer formulations (5) of the problems were solved by the MILP solver in CPLEX. We discovered right away that the algorithm is much more eective if it branches on the upper interval [A +1 ; A ] before the lower interval [A ; A ], as indicated in Fig. 1. This is presumably because the upper interval is much more likely to contain a feasible solution, since it enlarges bar i, than the lower interval, which shrinks bar i. Although likely, this outcome is not necessary, because enlarging a bar could reduce its elongation or compression in such a way as to violate displacement bounds. A similar branching scheme is not immediately available in an MILP context. Several of the variables y 1 ; : : : ; y may have positive values, so that there is no clear point at which to branch. A scheme analogous to branching to the upper interval rst might branch by setting y = 1, where k is the smallest k0 for which A 0 P =1 y A . We found in informal testing that this branching scheme does not seem to have a signi cant eect on the performance of a branch-and-cut algorithm. However we found that using special ordered sets (SOS) improves the CPLEX run time considerably. We therefore employed S0S (type 3) sets in solving the MILP. The results appear in Table 2. Note that when there are no displacement bounds, the logic cuts are actually a hindrance if multiple loading conditions are imposed. We therefore tried i
i
U i
i;k
i
ik
L i
ik
iki
ik
10
Ki k
ik
ik
Problem
Logic-based algorithm CPLEX Without With cuts cuts 1A (10 bars, 1 load) 1.67 2.10 3.87 1B 1.33 1.67 6.02 1C 6.78 6.45 16.63 1D 9.46 7.86 11.83 2 (10 bars, 2 loads) 30.66 54.64 148.60 3 (1A + displacement bounds) 6270.51 303.03 * 4 (2 + displacement bounds) 28507.00 8115.92 * 5 (25 bars, 2 loads) 22208.45 * * 6 (72 bars, 2 loads) 1816.58 * * Computation time exceeded 10 hours (36000 seconds).
Table 2: Computation times in seconds. to solve all the problems both with and without the cuts. (The cuts are very useful in the presence of displacement bounds, regardless of the number of loading conditions.) The logic-based method is several times faster than CPLEX on the 10-bar problems. CPLEX was unable to solve the larger problems, or even the smallest problems with multiple loading conditions or displacement bounds, within 10 hours. To obtain an upper bound on the size of tractable problems, we applied the logic-based method to a 200-bar problem with 96 linking groups, described in [5]. It failed to nd a solution within 10 hours of computation time. A solution was obtained in [5] using a genetic algorithm, but the quality of the solution relative to the optimum is unknown.
7 Conclusions The computational results suggest that the logic-based method proposed here signi cantly increases the size of problems that may be solved to optimality. The maximum size of tractable problems depends on the presence or absence of multiple loading conditions and tight displacement bounds, both of which make the problem harder, and variable linkage, which makes the problem easier. The logic-based approach can also be used to solve continuous problems by allowing the discrete areas to be very close together. In this case a globally optimal solution would be obtained despite the nonconvexities of the problem. It is unclear at this point whether continuous problems would prove to be easier or harder to solve than discrete problems. Despite its success the logic-based method described here would nd many realistic problems too large to solve to optimality. Several devices might be tried to improve its eciency. One obvious approach is to introduce as many constraints of a discrete nature as possible. In addition to requiring certain bars to have the same size, one may also limit the total number of bar sizes that are actually used in the entire truss, perhaps to simplify supply logistics. One might also enforce symmetries or other global constraints regarding the presence or absence of bars, even when the actual bar sizes do not display the same symmetries. Such constraints are readily imposed simply by excluding any branch that explicitly violates them. A second device is to generate logic cuts that are based on topological properties of the 11
structure. A structure represented by a disconnected network, for instance, may not make physical sense. Even when physical infeasibility would be detected by solving the equations at the current node of the search tree, it may be faster to run a network connectivity check before solution. More sophisticated topological conditions for stable structures may also be checked in this manner. It may also be possible to identify con gurations that are physically possible but that cannot be optimal. These could be excluded by \nonvalid" logic cuts analogous to those introduced in [9]. There are logic-based approaches to the truss design problem other than the one developed here. One strategy that deserves attention is to use the disjuunctive model (1) but to remove the nonlinearities by writing Hooke's law directly as a disjunction,
_ (E A Ki
v = s ); all i; `: (9) =1 h W The disjunctive constraint =1 (A = A ) would then be dropped. One could branch on the k
Ki k
i
ik
i`
i`
i
i
ik
alternatives in Hooke's law, each of which yields a linear programming problem, so that there is no need for quasi-relaxations. In this model, the schemes discussed in [2, 10] for generating linear relaxations of disjunctions could prove useful.
References [1] Balas, E., Disjunctive programming and a hierarchy of relaxations for discrete optimization problems, SIAM Journal on Discrete Mathematics 6 (1985) 466-486. [2] Beaumont, N., An algorithm for disjunctive programs, European Journal of Operational Research 48 (1990) 362-371. [3] Bremicker, M., P. Y. Papalambros and H. T. Loh, Solution of mixed-discrete structural optimization problems with a new sequential linearization algorithm, Computing and Structures 37 (1990) 451-461. [4] Cai, J., and G. Thierauf, Discrete optimization of structures using an improved penalty function method, Engineering Optimization 21 (1993) 293-306. [5] Cai, J., and G. Thierauf, Discrete structural optimization using parallel sub-evolutionstrategy, AIAA Symposium on Multidisciplinary Analysis and Optimization, Panama City, FL (1994) 1239-1246. [6] Ghattas, O., and I. Grossmann, MINLP and MILP strategies for discrete sizing structural optimization problems, Proceedings of ASCE 10th Conference on Electronic Computation, Indianapolis, 1991. [7] Grossmann, I., V. T. Voudouris and O. Ghattas, Mixed-integer linear programming reformulations for some nonlinear discrete design optimization problems, Engineering Design Research Center, Carnegie Mellon University, Pittsburgh, PA 15213 USA, 1991. [8] Hooker, J. N., Logic-based methods for optimization, in A. Borning, ed., Principles and Practice of Constraint Programming, Lecture Notes in Computer Science 874 (1994) 336349. 12
[9] Hooker, J., H. Yan, I. Grossmann, and R. Raman, Logic cuts for processing networks with xed charges, Computers and Operations Research 21 (1994) 265-279. [10] Hooker, J. N., and M. A. Osorio, Mixed logical/linear programming, manuscript, Graduate School of Industrial Administration, Carnegie Mellon University, Pittsburgh, PA 15213 USA. [11] Raman, R., and I. E. Grossmann, Relation between MILP modeling and logical inference for chemical process synthesis, Computer and Chemical Engineering 15 (1991) 73-84. [12] Raman, R., and I. E. Grossmann, Symbolic integration of logic in MILP branch and bound methods for the synthesis of process networks, Annals of Operations Research 42 (1993) 169-191. [13] Raman, R., and I. E. Grossmann, Symbolic integration of logic in mixed-integer linear programming techniques for process synthesis, Computers and Chemical Engineering 17 (1993) 909-927. [14] Raman, R., and I. E. Grossmann, Modeling and conputational techniques for logic based integer programming, Computer and Chemical Engineering 18 (1994) 563-578. [15] Sheu, C. Y., and L. A. Schmit, Minimum weight design of elastic redundant trusses under multiple static loading conditions, AIAA Journal 10 (1972) 155-162. [16] Strang, G., Introduction to Applied Mathematics, Wellesley-Cambridge Press 1986. [17] Turkay, M., and I. E. Grossmann, Logic-based MINLP algorithms for the optimal synthesis of process networks, Computer and Chemical Engineering 20 (1996) 959-978. [18] Utku, S., C.H. Norris, and J.B. Wilbur, McGraw Hill, Elementary Structural Analysis, McGraw Hill, 4th ed., 1991. [19] Venkayya, V.B., Design of Optimum Structures, Computers and Structures 1 (1971) 265309.
13
t
t t ? @@ @ ? @@ ??? @@@ ??? @?@? @@?? ? @@ ? @@ ? ? ? @@ ?? @@ ? ?t @t? @t
Figure 2: Planar ten-bar cantilever truss.
14
aa LeCCLLeaeaaaat CC LL ee LL C L L CC LLLt e ee LL ( taa(((((CC ( @a aaaaeeLLL %C\C \aaa C @ ((aa(eLt % aaC( (@ J t ((@ % C \ c % CC \ c @ J % cc @ JJ \\ % C % CC \ c c @@ J % % CC \\t cc @@JJ % cc @ J % CC t % cc@@JJ CC cc@J CC c@J@cJt CC Ct t
Figure 3: 25-bar space truss.
15
t t " " l HH
H
" " l ""
llHHH""""
" " lXt"XHXHX H
"HXHXX
tX X XHXHXt H HHX"XHtl
HH
l
"" "
" H " H
"
H HHlHl HH """
"
"
t " X HXHXHX X X HlX "t XHXHX HX HX XH t
H "
"HX" t lH
H"
H H l "
HHHl HH
"""
" "
" l H
" t X HXHXHX X X HHlX "t X"HXHX HX HX XH t
H "
"HX" t lH
H"
H "
HHlHlHHH
"""
" "
" l H tX
" X HHXHX X XXt HHlX "t X"HXHX HX HXHXt
H
H
H
HH
H
H Ht
t
Figure 4: 72-bar space truss.
16