Example application of the GCMMA-MMA-Python library in topology optimization. The original toplogy optimization code is written by Niels Aage and Villads Egede Johansen (Technical University of Denmark). The python code is the equivalent of the efficient 88 lines MATLAB code with a minor difference: instead of a volume equality constraint it implements a volume inequality constraint that enforces the volume fraction to be smaller or equal to a preset volume fraction. The original python code can be downloaded here. To use the modified Python code with the MMA optimizer the user needs to install the mmapy package with pip install mmapy. More information about the package can be found here.
This Python code is based on prior work developed by Niels Aage and Villads Egede Johansen, who made it accessible for use in engineering education. It is specifically tailored for students and newcomers to the field of structural optimization, offering a clear and accessible way to explore optimization concepts. The code may be freely used in academic courses and educational settings.
Aage, N., Johansen, V.E. (2013). A 165 LINE TOPOLOGY OPTIMIZATION CODE. Retrieved November 2, 2019 from http://www.topopt.mek.dtu.dk/Apps-and-software/Topology-optimization-codes-written-in-Python
Svanberg, K. (n.d.). MMA and GCMMA – two methods for nonlinear optimization. Retrieved August 3, 2017 from
https://people.kth.se/~krille/mmagcmma.pdf