Papers
Topics
Authors
Recent
Search
2000 character limit reached

A new generation 99 line Matlab code for compliance Topology Optimization and its extension to 3D

Published 5 May 2020 in cs.CE and math.OC | (2005.05436v2)

Abstract: Compact and efficient Matlab implementations of compliance Topology Optimization (TO) for 2D and 3D continua are given, consisting of 99 and 125 lines respectively. On discretizations ranging from $3\cdot 10{4}$ to $4.8\cdot10{5}$ elements, the 2D version, named top99neo, shows speedups from 2.55 to 5.5 times compared to the well-known top88 code (Andreassen-etal 2011). The 3D version, named top3D125, is the most compact and efficient Matlab implementation for 3D TO to date, showing a speedup of 1.9 times compared to the code of Amir-etal 2014, on a discretization with $2.2\cdot10{5}$ elements. For both codes, improvements are due to much more efficient procedures for the assembly and implementation of filters and shortcuts in the design update step. The use of an acceleration strategy, yielding major cuts in the overall computational time, is also discussed, stressing its easy integration within the basic codes.

Authors (2)
Citations (173)

Summary

Overview of Topology Optimization in Matlab

The paper presents a compact and efficient Matlab code for executing compliance topology optimization (TO), primarily aimed at enhancing computational efficiency for both 2D and 3D structures. Authored by Ferrari and Sigmund, the code endeavors to be an improvement over earlier TO codes, notably the top88 and other implementations. The primary contribution of this paper lies in streamlining the assembly and updating processes within the TO algorithm, thereby significantly reducing computational time and resources.

Key Advances and Implementation Strategies

The paper introduces two distinct versions: a 99-line Matlab code for 2D compliance TO, named top99neo, and a 125-line implementation for 3D compliance TO, dubbed top3D125. The enhancements over prior versions pertain to more efficient matrix assembly procedures and updated strategies for density filtering and design variable updates:

  1. Matrix Assembly: The authors utilize efficient indexing procedures that significantly reduce memory requirements during matrix assembly. By focusing only on the symmetric part of matrices and leveraging specialized routines such as fsparse, the paper achieves substantial reductions in computational time—up to 15x speedup for 3D implementations compared to traditional approaches.
  2. Design Update Acceleration: An optimal criterion update mechanism is employed to expedite design variable changes, with fewer bisections required to approximate the Lagrange multiplier associated with volume constraints. This expedites convergence within the TO loop and realizes robust solutions in shorter timescales.
  3. Volume-Preserving Filters: A significant reduction in redesign cost is accomplished by employing volume-preserving filters and projections. The paper introduces a method for calculating a threshold value ensuring volume preservation during the Heaviside projection, thereby reducing unnecessary filter applications that could hinder computational efficiency.

Numerical Results and Performance

Numerical simulations demonstrate that both top99neo and top3D125 outperform top88 by factors ranging from 2.55 to 5.5 times in the 2D setups and by nearly 1.9 times in 3D contexts. The codes were verified on several examples, including the MBB beam benchmark problem and a 3D cantilever, different filtering strategies being explored to affirm the robustness and efficiency of the implementations.

Implications and Future Directions

The advances presented in this paper have profound implications for structural and multidisciplinary optimization, particularly in computational mechanics domains. The streamlined code permits efficient solutions on standard computational architectures without requiring significant computational power, thereby democratizing access to optimization tools.

Looking forward, the techniques elucidated, especially concerning matrix assembly and volume-preserving strategies, may inspire further research and development in complex optimization scenarios, such as material design and buckling optimization. The codes also lay a solid groundwork for integrating topology optimization into finite element frameworks more seamlessly, allowing for advanced simulations and design tasks in engineering and research applications.

In sum, the paper contributes meaningfully to computational optimization by refining existing methodologies and delivering accessible, user-friendly Matlab implementations for complex TO tasks.

Paper to Video (Beta)

No one has generated a video about this paper yet.

Whiteboard

No one has generated a whiteboard explanation for this paper yet.

Open Problems

We haven't generated a list of open problems mentioned in this paper yet.

Continue Learning

We haven't generated follow-up questions for this paper yet.

Collections

Sign up for free to add this paper to one or more collections.