Skip to main content
Log in

Mixed-integer linear programming approach for global discrete sizing optimization of frame structures

  • RESEARCH PAPER
  • Published:
Structural and Multidisciplinary Optimization Aims and scope Submit manuscript

Abstract

This paper focuses on discrete sizing optimization of frame structures using commercial profile catalogs. The optimization problem is formulated as a mixed-integer linear programming (MILP) problem by including the equations of structural analysis as constraints. The internal forces of the members are taken as continuous state variables. Binary variables are used for choosing the member profiles from a catalog. Both the displacement and stress constraints are formulated such that for each member limit values can be imposed at predefined locations along the member. A valuable feature of the formulation, lacking in most contemporary approaches, is that global optimality of the solution is guaranteed by solving the MILP using branch-and-bound techniques. The method is applied to three design problems: a portal frame, a two-story frame with three load cases and a multiple-bay multiple-story frame. Performance profiles are determined to compare the MILP reformulation method with a genetic algorithm.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10

Similar content being viewed by others

References

  • Arora J (2002) Methods for discrete variable structural optimization. In: Burns SA (ed) Recent Advances in Optimal Structural Design, pages 1–40. ASCE

    Google Scholar 

  • Arora JS, Huang M-W (1996) Discrete structural optimization with commercially available sections. Structural Engineering/Earthquake Engineering 13:93–110

    Google Scholar 

  • Arora JS, Wang Q (2005) Review of formulations for structural and mechanical system optimization. Struct Multidiscip Optim 30(4):251–272

    Article  MathSciNet  MATH  Google Scholar 

  • Camp C, Pezeshk S, Guozhong C (1998) Optimized design of two-dimensional structures using a genetic algorithm. J Struct Eng 124(5):551–559

    Article  Google Scholar 

  • Camp CV, Bichon BJ, Stovall SP (2005) Design of steel frames using ant colony optimization. J Struct Eng 131(7):369–379

    Article  Google Scholar 

  • Carbas S (2016) Design optimization of steel frames using an enhanced firefly algorithm, Engineering Optimization, pp. 1–19

  • Chai S, Sun HC (1996) A relative difference quotient algorithm for discrete optimization. Struct Optim 12(1):46–56

    Article  Google Scholar 

  • Dolan ED, Moré JJ (2002) Benchmarking optimization software with performance profiles. Math Program 91(2):201–213

    Article  MathSciNet  MATH  Google Scholar 

  • Farkas J (2005) Structural optimization as a harmony of design, fabrication and economy. Struct Multidiscip Optim 30:66–75

    Article  Google Scholar 

  • Faustino AM, Júdice JJ, Ribeiro IM, Neves AS (2006) An integer programming model for truss topology optimization. Investigação Operacional 26:111–127

    Google Scholar 

  • Gandomi AH, Yang XS, Alavi AH (2011) Mixed variable structural optimization using firefly algorithm. Comput Struct 89(23):2325–2336

    Article  Google Scholar 

  • Gero MBP, Garcia AB, Diaz JJC (2006) Design optimization of 3d steel structures: genetic algorithms vs. classical techniques. J Constr Steel Res 62(12):1303–1309

    Article  Google Scholar 

  • Ghattas O, Grossmann IE (1991) MINLP and MILP strategies for discrete sizing structural optimization problems. In: Ural O, Wang TL (eds) Proceedings of the 10th Conference on Electronic Computation, pages 197–204. ASCE

    Google Scholar 

  • Grossmann IE, Voudouris VT, Ghattas O (1992) Mixed-integer linear programming reformulations for some nonlinear discrete design optimization problems. In: Floudas CA, Pardalos PM (eds) Recent Advances in Global Optimization, pages 478–512. Princeton University Press

    Google Scholar 

  • Gurobi Optimization Inc (2015) Gurobi optimizer reference manual

  • Hirota M, Kanno Y (2015) Optimal design of periodic frame structures with negative thermal expansion via mixed integer programming. Optim Eng 16(4):767–809

    Article  MathSciNet  MATH  Google Scholar 

  • Huang M-W, Arora JS (1997) Optimal design of steel structures using standard sections. Struct Optim 14:24–35

    Article  Google Scholar 

  • Jivotovski G (2000) A gradient based heuristic algorithm and its application to discrete optimization of bar structures. Struct Multidiscip Optim 19(3):237–248

    Article  Google Scholar 

  • Juang DS, Chang WT (2006) A revised discrete lagrangian-based search algorithm for the optimal design of skeletal structures using available sections. Struct Multidiscip Optim 31(3):201– 210

    Article  Google Scholar 

  • Kanno Y, Guo X (2010) A mixed integer programming for robust truss topology optimization with stress constraints. Int J Numer Methods Eng 83(13):1675–1699

    Article  MathSciNet  MATH  Google Scholar 

  • Kassimali A (1999) Matrix Analysis of Structures. Brooks/Cole Publishing Company, London

    Google Scholar 

  • Kaveh A, Talatahari S (2010) An improved ant colony optimization for the design of planar steel frames. Eng Struct 32(3):864–873

    Article  MATH  Google Scholar 

  • Kazemzadeh Azad S, Hasancebi O (2015) Computationally efficient discrete sizing of steel frames via guided stochastic search heuristic. Comput Struct 156:12–28

    Article  Google Scholar 

  • Kripakaran P, Brian H, Abhinav G (2010) A genetic algorithm for design of moment-resisting steel frames. Struct Multidiscip Optim 32(3):559–574

    Google Scholar 

  • Kureta R, Kanno Y (2014) A mixed integer programming approach to designing periodic frame structures with negative poissons ratio. Optim Eng 15(3):773–800

    Article  MathSciNet  MATH  Google Scholar 

  • Mela K (2014) Resolving issues with member buckling in truss topology optimization using a mixed variable approach. Struct Multidiscip Optim 50(6):1037–1049

    Article  MathSciNet  Google Scholar 

  • Nemhauser G, Wolsey L (1999) Integer and Combinatorial Optimization. Wiley

  • Rajeev S, Krishnamoorthy CS (1992) Discrete optimization of structures using genetic algorithms. J Struct Eng 118(5):1233– 1250

    Article  Google Scholar 

  • Rasmussen MH, Stolpe M (2008) Global optimization of discrete truss topology design problems using a parallel cut-and-branch method. Comput Struct 86(13):1527–1538

    Article  Google Scholar 

  • Rojas-Labanda S, Stolpe M (2015) Benchmarking optimization solvers for structural topology optimization. Struct Multidiscip Optim 52(3):527–547

    Article  MathSciNet  Google Scholar 

  • Saka MP (2009) Optimum design of steel sway frames to bs5950 using harmony search algorithm. J Constr Steel Res 65(1):36– 43

    Article  Google Scholar 

  • Schevenels M, McGinn S, Rolvink A, Coenders J (2014) An optimality criteria based method for discrete design optimization taking into account buildability constraints. Struct Multidiscip Optim 50(5):755–774

    Article  Google Scholar 

  • Stolpe M (2007) On the refomulation of topology optimization problems as linear or convex quadratic mixed 0-1 programs. Optim Eng 8:163–192

    Article  MathSciNet  MATH  Google Scholar 

  • Stolpe M, Svanberg K (2003) Modelling topology optimization problems as linear mixed 0-1 programs. Int J Numer Methods Eng 57:723–739

    Article  MathSciNet  MATH  Google Scholar 

  • Talatahari S, Gandomi A H, Yang X-S, Deb S (2015) Optimum design of frame structures using the eagle strategy with differential evolution. Eng Struct 91:16–25

    Article  Google Scholar 

  • Thanedar PB, Vanderplaats GN (1995) Survey of discrete variable optimization for structural design. J Struct Eng 121:301–306

    Article  Google Scholar 

  • Togan V (2012) Design of planar steel frames using teaching-learning based optimization. Eng Struct 225 (8):34

    Google Scholar 

  • Van Mellaert R, Schevenels M (2015) Global size optimization of statically determinate trusses considering displacement, member, and joint constraints. J Struct Eng 142(2):04015120

    Article  Google Scholar 

  • Venter G, Sobieszczanski-Sobieski J (2003) Particle swarm optimization. AIAA J 41(8):1583–1589

    Article  Google Scholar 

  • Wang Q, Arora JS (2006) Alternative formulations for structural optimization: An evaluation using frames. J Struct Eng 132(12):1880–1189

    Article  Google Scholar 

  • Wolsey L (1998) Integer Programming. Wiley

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to R. Van Mellaert.

Appendices

Appendix A: Mixed-integer linear programming problem

1.1 A.1 Equilibrium equations

The nodal equilibrium is imposed by the equality constraints of (5). In this equation, B i is a 6 × n dof binary location matrix that maps the system degrees of freedom to the element degrees of freedom, T i is a 6 × 6 transformation matrix that accounts for the orientation of the element (Kassimali 1999), and f is the n dof × 1 nodal load vector. Element loads are taken into account as equivalent nodal loads in the nodal load vector f. R i is a 6 × 3 matrix giving the relation between the six member end forces as shown in Fig. 1, and the three independent force variables q ij (see (1)) as follows:

$$ \left[\begin{array}{c} N_{1,ij}\\ V_{1,ij}\\ M_{1,ij}\\ N_{2,ij}\\ V_{2,ij}\\ M_{2,ij} \end{array}\right]=\left[\begin{array}{ccc} 1 & 0 & 0\\ 0 & \frac{1}{L_{i}} & \frac{1}{L_{i}}\\ 0 & 1 & 0\\ -1 & 0 & 0\\ 0 & -\frac{1}{L_{i}} & -\frac{1}{L_{i}}\\ 0 & 0 & 1 \end{array}\right]\left[\begin{array}{c} N_{1,ij}\\ M_{1,ij}\\ M_{2,ij} \end{array}\right] $$
(40)

1.2 A.2 Member stiffness relations

In addition to nodal equilibrium, the material law and compatibility conditions are needed in structural analysis. For trusses, Hooke’s law and compatibility conditions can be written as a single equation, because the normal force is the only stress resultant appearing in the members (Rasmussen and Stolpe 2008). As frame members have three (6 in 3D) stress resultants in each node, altogether six (12 in 3D) force-displacement relations are needed. Thus, the relation between the member end forces and the nodal displacements can be written as:

$$ {\mathbf{q}_{ij}=y_{ij}\mathbf{K}_{ij}\mathbf{T}_{i}\mathbf{B}_{i}\mathbf{u}} \qquad \forall\;i\in\mathcal{M},\:\forall\;j\in\mathcal{C}_{i} $$
(41)

where the matrix K ij assembles the first, third and sixth row of the element stiffness matrix:

$$\mathbf{K}_{ij}=\left[\begin{array}{cccccc} \frac{EA_{ij}}{L_{i}} & 0 & 0 & -\frac{EA_{ij}}{L_{i}} & 0 & 0\\ 0 & \frac{6EI_{ij}}{{L_{i}^{2}}} & \frac{4EI_{ij}}{L_{i}} & 0 & -\frac{6EI_{ij}}{{L_{i}^{2}}} & \frac{2EI_{ij}}{L_{i}}\\ 0 & \frac{6EI_{ij}}{{L_{i}^{2}}} & \frac{2EI_{ij}}{L_{i}} & 0 & -\frac{6EI_{ij}}{{L_{i}^{2}}} & \frac{4EI_{ij}}{L_{i}} \end{array}\right] $$

where E is the Young’s modulus of the material, L i is the length of member i, and A ij and I ij are the section area and second moment of area of profile j for member i, respectively.

Equation (41) ensures that the force variables q ij become zero when profile j is not selected for member i (y ij = 0) and q ij = K ij T i B i u when profile j is selected for member i (y ij = 1).

In a regular finite element analysis, the global stiffness matrix K is assembled by replacing q ij in (5) with the expression given by (41). The resulting equilibrium equation can not be reformulated as a linear system of equations in terms of the design variables since the global stiffness matrix depends on the binary decision variables. Therefore, the linear nodal equilibrium, (5), and the member stiffness relation, (41), are adopted as separate constraints.

The member stiffness relation in (41) is nonlinear in terms of the design variables but it can be equivalently reformulated as a set of linear inequality constraints by introducing artificial upper and lower bounds (Rasmussen and Stolpe 2008) of (6). In this equation, the force variables become equal to q ij = K ij T i B i u when profile j is selected for member i (y ij = 1). When profile j is not selected for member i (y ij = 0), the force variables do not become zero but are bounded by \(\mathbf {K}_{ij}\mathbf {T}_{i}\mathbf {B}_{i}\mathbf {u}-\bar {\mathbf {q}}^{\prime }_{ij}\leqslant \mathbf {q}_{ij}\leqslant \mathbf {K}_{ij}\mathbf {T}_{i}\mathbf {B}_{i}\mathbf {u}-{\mathbf {\underline {q}}^{\prime }_{ij}}\). In order to ensure that the force variables become zero when profile j is not selected for member i, additional constraints given by (7) are introduced.

The artificial upper and lower bounds \(\bar {\mathbf {q}}^{\prime }_{ij}\) and \({\mathbf {\underline {q}}^{\prime }_{ij}}\) ensure that, when profile j is not selected for member i, the nodal displacements are not bounded by (6). Each element k of the artificial bound vectors is calculated as follows (Stolpe and Svanberg 2003):

$$\begin{array}{@{}rcl@{}} &&{{\underline{q}}^{\prime}_{k,ij}}=\underset{\mathbf{u}}{\min}\qquad \mathbf{k}_{r,ij}\mathbf{T}_{i}\mathbf{B}_{i}\mathbf{u}\\ &&~~~~~~~~~~~~~~ \textrm{s.t.} \qquad \mathbf{\underline{\mathbf{u}}} \leqslant\mathbf{u}\leqslant\mathbf{\overline{\mathbf{u}}} \end{array} $$
(42)
$$\begin{array}{@{}rcl@{}} &&\bar{q}^{\prime}_{k,ij}=\underset{\mathbf{u}}{\max}\qquad \mathbf{k}_{r,ij}\mathbf{T}_{i}\mathbf{B}_{i}\mathbf{u}\\ &&~~~~~~~~~~~~~~\textrm{s.t.} \qquad \mathbf{\underline{\mathbf{u}}} \leqslant\mathbf{u}\leqslant\mathbf{\overline{\mathbf{u}}} \end{array} $$
(43)

where k r, ij represents row \(r\in \left \{1,3,6 \right \}\) of the element stiffness matrix K ij , and \(\mathbf {\underline {\mathbf {u}}}\) and \(\mathbf {\overline {\mathbf {u}}}\) are the prescribed minimum and maximum allowed nodal displacements, respectively. Equations. (42) and (43) are linear optimization problems with bound constraints, that can be solved without effort (Stolpe and Svanberg 2003).

1.3 A.3 Displacement vectors

$$\begin{array}{@{}rcl@{}} \mathbf{D}_{i}^{u}(x) & =& \left[\begin{array}{cccccc} 1-\frac{x}{L_{i}} & 0 & 0 & \frac{x}{L_{i}} & 0 &0\end{array}\right] \end{array} $$
(44)
$$\begin{array}{@{}rcl@{}} \mathbf{D}_{i}^{v}(x) & =& \left[\begin{array}{cccc} 0 & 1-\frac{3x^{2}}{{L_{i}^{2}}}+\frac{2x^{3}}{{L_{i}^{3}}} & x\left( 1-\frac{x}{L_{i}}\right)^{2} & \cdots\end{array}\right.\\ && \left.\begin{array}{ccc} 0 & \frac{3x^{2}}{{L_{i}^{2}}}-\frac{2x^{3}}{{L_{i}^{3}}} &x\left( -\frac{x}{L_{i}}+\frac{x^{2}}{{L_{i}^{2}}}\right) \end{array}\right] \end{array} $$
(45)
$$\begin{array}{@{}rcl@{}} \mathbf{D}_{i}^{\varphi}(x) & =& \left[\begin{array}{cccc} 0 & \frac{-6x}{{L_{i}^{2}}}+\frac{6x^{2}}{{L_{i}^{3}}} & 1-\frac{4x}{L_{i}}+\frac{3x^{2}}{{L_{i}^{2}}} & \cdots\end{array}\right.\\ && \left.\begin{array}{ccc} 0 & \frac{6x}{{L_{i}^{2}}}-\frac{6x^{2}}{{L_{i}^{3}}} &\frac{-2x}{L_{i}}+\frac{3x^{2}}{{L_{i}^{2}}} \end{array}\right] \end{array} $$
(46)

1.4 A.4 Stress vectors

$$\begin{array}{@{}rcl@{}} \mathbf{S}_{ij}^{\sigma_{\mathrm{t}}}(x) &=&\left[\begin{array}{cccc} -\frac{E}{L_{i}} & \frac{6EI_{ij}}{{L_{i}^{2}}W_{\mathrm{t},ij}}-\frac{12xEI_{ij}}{{L_{i}^{3}}W_{\mathrm{t},ij}} & \frac{4EI_{ij}}{L_{i}W_{\mathrm{t},ij}}-\frac{6xEI_{ij}}{{L_{i}^{2}}W_{\mathrm{t},ij}} & \cdots\end{array}\right.\\ && \left.\begin{array}{ccc} \frac{E}{L_{i}} & \frac{12xEI_{ij}}{{L_{i}^{3}}W_{\mathrm{t},ij}}-\frac{6EI_{ij}}{{L_{i}^{2}}W_{\mathrm{t},ij}} & \frac{2EI_{ij}}{L_{i}W_{\mathrm{t},ij}}-\frac{6xEI_{ij}}{{L_{i}^{2}}W_{\mathrm{t},ij}}\end{array}\right] \end{array} $$
(47)
$$\begin{array}{@{}rcl@{}} \mathbf{S}_{ij}^{\sigma_{\mathrm{b}}}(x) & =&\left[\begin{array}{cccc} -\frac{E}{L_{i}} & \frac{12xEI_{ij}}{{L_{i}^{3}}W_{\mathrm{b},ij}}-\frac{6EI_{ij}}{{L_{i}^{2}}W_{\mathrm{b},ij}} & \frac{6xEI_{ij}}{{L_{i}^{2}}W_{\mathrm{b},ij}}-\frac{4EI_{ij}}{L_{i}W_{\mathrm{b},ij}} & \cdots\end{array}\right.\\ && \left.\begin{array}{ccc} \frac{E}{L_{i}} & \frac{6EI_{ij}}{{L_{i}^{2}}W_{\mathrm{b},ij}}-\frac{12xEI_{ij}}{{L_{i}^{3}}W_{\mathrm{b},ij}} & \frac{6xEI_{ij}}{{L_{i}^{2}}W_{\mathrm{b},ij}}-\frac{2EI_{ij}}{L_{i}W_{\mathrm{b},ij}}\end{array}\right] \end{array} $$
(48)
$$\begin{array}{@{}rcl@{}} \mathbf{S}_{ij}^{\tau}(x) & =&\left[\begin{array}{cccccc} 0 & -\frac{12ES_{ij}}{{L_{i}^{3}}b_{ij}} &-\frac{6ES_{ij}}{{L_{i}^{2}}b_{ij}} & 0 & \frac{12ES_{ij}}{{L_{i}^{3}}b_{ij}} &-\frac{6ES_{ij}}{{L_{i}^{2}}b_{ij}}\end{array}\right] \end{array} $$
(49)

Appendix B: Detailed results for the portal frame

Table 3 Constrained displacements evaluated at the optimum design
Fig. 11
figure 11

Deformation and internal force diagrams at the optimum design

Table 4 Constrained stresses evaluated at the optimum design

Appendix C: Detailed results for the three-bay three-story frame

Fig. 12
figure 12

Deformation and internal force diagrams at the optimum design

Table 5 Constrained deflections evaluated at the optimum design
Table 6 Constrained interstory drifts evaluated at the optimum design
Table 7 Constrained stresses evaluated at the optimum design

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Van Mellaert, R., Mela, K., Tiainen, T. et al. Mixed-integer linear programming approach for global discrete sizing optimization of frame structures. Struct Multidisc Optim 57, 579–593 (2018). https://doi.org/10.1007/s00158-017-1770-9

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00158-017-1770-9

Keywords

Navigation