Abstract
In topology optimization, the bisection method is typically used for computing the Lagrange multiplier associated with a constraint. While this method is simple to implement, it leads to oscillations in the objective and could possibly result in constraint failure if proper scaling is not applied. In this paper, we revisit an alternate and direct method to overcome these limitations.
The direct method of Lagrange multiplier computation was popular in the 1970s and 1980s but was later replaced by the simpler bisection method. In this paper, we show that the direct method can be generalized to a variety of linear and nonlinear constraints. Then, through a series of benchmark problems, we demonstrate several advantages of the direct method over the bisection method including (1) fewer and faster update iterations, (2) smoother and robust convergence, and (3) insensitivity to material and force parameters. Finally, to illustrate the implementation of the direct method, drop-in replacements to the bisection method are provided for popular Matlab-based topology optimization codes.
References
Amir O. (2015) Revisiting approximate reanalysis in topology optimization: on the advantages of recycled preconditioning in a minimum weight procedure. Struct Multidiscip Optim 51(1):41–57
Amir O., Aage N., Lazarov B.S. (2014) On multigrid-CG for efficient topology optimization. Struct Multidiscip Optim 49(5):815–829
Ananiev S. (2005) On equivalence between optimality criteria and projected gradient methods with application to topology optimization problem. Multibody System Dynamics 13:25–38
Andreassen E., Clausen A., Schevenels M., Lazarov B.S., Sigmund O. (2011) Efficient topology optimization in MATLAB using 88 lines of code. Struct Multidiscip Optim 43(1):1–16
Arora J.S., Chahande A.I., Paeng J.K. (1991) Multiplier methods for engineering optimization. Int J Numer Methods Eng 32(7):1485–1525
Bendsøe M.P. (1989) Optimal shape design as a material distribution problem. Structural Optimization 1(4):193–202
Bendsøe, M.P., Sigmund, O. (1999) Material interpolation schemes in topology optimization. Arch Appl Mech 69(9-10):635–654
Bendsøe M.P., Sigmund O. (2004) Topology optimization Springer Berlin Heidelberg
Berke L., Khot N.S. (1987) Structural optimization using optimality criteria. In: Computer aided optimal design: structural and mechanical systems, pp. 271–311
Chandrasekhar A., Kumar T., Suresh K. (2020) Build optimization of fiber-reinforced additively manufactured components. Struct Multidiscip Optim 61(1):77–90
Deng S., Suresh K. (2017) Topology optimization under thermo-elastic buckling. Struct Multidiscip Optim 55(5):1759–1772
Fadel G.M., Riley M.F., Barthelemy J.M. (1990) Two point exponential approximation method for structural optimization. Structural Optimization 2(2):117–124
Fleury C. (1979) Structural weight optimization by dual methods of convex programming. Int J Numer Methods Eng 14(12):1761–1783
Fleury C., Braibant V. (1986) Structural optimization: a new dual method using mixed variables. Int J Numer Methods Eng 23(3):409–428
Groenwold A.A., Etman L.F. (2008) On the equivalence of optimality criterion and sequential approximate optimization methods in the classical topology layout problem. Int J Numer Methods Eng 73(3):297–316
Haftka R.T., Gu̇rdal Z. (1992) Elements of structural optimization. Third revised and expanded edition, vol. 1, third rev. edn. SPRINGER-SCIENCE+BUSINESS MEDIA B.V
Kharmanda G., Olhoff N., Mohamed A., Lemaire M. (2004) Reliability-based topology optimization. Struct Multidiscip Optim 26(5):295–307
Khot N.S., Venkayya V.B., Berke L. (1976) Optimum structural design with stability constraints. Int J Numer Methods Eng 10(5):1097–1114
Kiyono C.Y., Vatanabe S.L., Silva E.C., Reddy J.N. (2016) A new multi-p-norm formulation approach for stress-based topology optimization design. Compos Struct 156:10–19
Kumar T., Suresh K. (2020) A density-and-strain-based K-clustering approach to microstructural topology optimization. Struct Multidiscip Optim 61(4):1399–1415
Liu K., Tovar A. (2014) An efficient 3D topology optimization code written in Matlab. Struct Multidiscip Optim 50(6):1175–1196
Nguyen T.H., Paulino G.H., Song J., Le C.H. (2010) A computational paradigm for multiresolution topology optimization (MTOP). Struct Multidiscip Optim 41(4):525–539
Qian X. (2013) Topology optimization in B-spline space. Comput Methods Appl Mech Eng 265:15–35
Sanders E.D., Aguilȯ M.A., Paulino G.H. (2018a) Multi-material continuum topology optimization with arbitrary volume and mass constraints. Comput Methods Appl Mech Eng 340:798–823
Sanders E.D., Pereira A., Aguilȯ M.A., Paulino G.H. (2018b) Polymat: an efficient Matlab code for multi-material topology optimization. Struct Multidiscip Optim 58(6):2727–2759
Schmit L.A., Fleury C. (1980) Structural synthesis by combining approximation concepts and dual methods. AIAA J 18(10):1252–1260
Sethian J.A., Wiegmann A. (2000) Structural boundary design via level set and immersed interface methods. J Comput Phys 163(2):489–528
Sigmund O. (2001) A 99 line topology optimization code written in matlab. Struct Multidiscip Optim 21(2):120–127
Stolpe M., Svanberg K. (2001) An alternative interpolation scheme for minimum compliance topology optimization. Struct Multidiscip Optim 22(2):116–124
Sui Y., Yi G. (2013) A discussion about choosing an objective function and constraint conditions in structural topology optimization. In: 10Th world congress on structural and multidisciplinary optimization
Suresh K. (2010) A 199-line Matlab code for Pareto-optimal tracing in topology optimization. Struct Multidiscip Optim 42(5):665–679
Svanberg K. (1987) The method of moving asymptotes-a new method for structural optimization. Int J Numer Methods Eng 24(2):359–373
Talischi C., Paulino G.H., Pereira A., M Menezes I.F., Menezes M (2012) I.f.: polytop: a Matlab implementation of a general topology optimization framework using unstructured polygonal finite element meshes. Struct Multidiscip Optim 45:329–357
Tavakoli R., Mohseni S.M. (2014) Alternating active-phase algorithm for multimaterial topology optimization problems: a 115-line MATLAB implementation. Struct Multidiscip Optim 49(4):621–642
Venkayya V.B. (1989) Optimality criteria: a basis for multidisciplinary design optimization. Comput Mech 5(1):1–21
Venkayya V.B., Khot N.S., Berke L. (1973) Application of optimality criteria approaches to automated design of large practical structures Second symposium on structural optimization, pp. 1–19
Wang M., Wang X., Guo D. (2003) A level set method for structural topology optimization. Comput Methods Appl Mech Eng 192(1-2):227–246
Watts S., Arrighi W., Kudo J., Tortorelli D.A., White D.A. (2019) Simple, accurate surrogate models of the elastic response of three-dimensional open truss micro-architectures with applications to multiscale topology design. Struct Multidiscip Optim 60:1887–1920
Xia L., Breitkopf P. (2015) Design of materials using topology optimization and energy-based homogenization approach in Matlab. Struct Multidiscip Optim 52(6):1229–1241
Xie Y.M., Steven G.P. (1993) A simple evolutionary procedure for structural optimization. Comput Struct 49(5):885–896
Yin L., Yang W. (2001) Optimality criteria method for topology optimization under multiple constraints. Comput Struct 79(20-21):1839–1850
Zuo W., Saitou K. (2017) Multi-material topology optimization using ordered SIMP interpolation. Struct Multidiscip Optim 55(2):477–491
Acknowledgments
The authors would like to thank the support of National Science Foundation through grant CMMI 1561899. Prof. Suresh is a consulting Chief Scientific Officer of SciArt, Corp
Author information
Authors and Affiliations
Corresponding author
Ethics declarations
Conflict of interests
The authors declare that they have no conflict of interest.
Additional information
Responsible Editor: Ole Sigmund
Publisher’s note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Replication of results
Modifications in various open-source Matlab codes have been provided in Appendix to help readers reproduce the results. The complete set of Matlab code is available at ersl.wisc.edu/software/DirectLagrangeMultiplier.zip.
Appendix:
Appendix:
Here, we summarize the required changes to popular topology optimization codes, in order to replace the bisection method with the direct method. These changes can be easily adapted to other codes such as fast topology optimization based on reanalysis and conjugate gradient solvers (Amir et al. 2014; Amir 2015).
1.1 Modifications to 99-line code
For the classic 99-line code (top.m) (Sigmund 2001), all that is needed is to replace the OC function with the following:
1.2 Modifications to 88-line code
In the 88-line code (top88.m) (Andreassen et al. 2011), one must replace lines 70-80 with the following:
To incorporate non-design regions, further modifications to the 88-line code is given below. A logical array named passive with true entry for every non-design element must be created. Then lines 79–81 in the modified 88-line code becomes,
In addition, line 91 changes to
Lines 93–94 must be modified identically to the modifications in lines 80–81. Finally, xnew(passive) = 1; should be appended to line 83 and 96 so that they read:
1.3 Modifications to 3D code
In the 3D code (top3d.m) (Liu and Tovar 2014), one must replace lines 82–88 with the following
Further, to update the display in every iteration, line 6 (i.e. the displayflag) must be removed, and line 94 in the original code must be replaced with volshow(xPhys).
1.4 Modifications for nonlinear constraint
The following code can replace the bisection method in any volume-minimization code (Amir et al. 2014; Amir 2015) available at github.com/odedamir/topopt-mgcg-matlab. For instance in the code minV.m, replace lines 83-96 with the lines below:
Then, depending on the approximation used, the following changes are sufficient:
Linear approximation
:
Reciprocal approximation
:
Exponential approximation
:
1.5 Modifications to PolyMat
Finally, for the PolyMat code (Sanders et al. 2018b), the function UpdateScheme must be replaced with the following.
Rights and permissions
About this article
Cite this article
Kumar, T., Suresh, K. Direct lagrange multiplier updates in topology optimization revisited. Struct Multidisc Optim 63, 1563–1578 (2021). https://doi.org/10.1007/s00158-020-02740-y
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00158-020-02740-y