# Penalty regulation of overhang in topology optimization for additive manufacturing

- 72 Downloads

## Abstract

Several filter approaches that introduce additive manufacturing-related overhang constraints in topology optimization exist. However, a drawback of these is that exact satisfaction of overhang constraints produces sharp inward corners resulting in stress singularities. The present paper therefore modifies such filter approaches by a penalty formulation, where the choice of penalty factor regulates how closely the overhang constraint is satisfied. By appropriately choosing certain weight factors in the penalty function, the cost of support structures is also reflected in the formulation in a simple and computationally inexpensive way. The method is demonstrated by parameter studies using the classical MBB beam, using both structured and unstructured meshes.

## Keywords

Topology optimization Additive manufacturing Support structure Overhang penalty## 1 Introduction

Topology optimization (TO) and additive manufacturing (AM) constitute an unusually striking match of design and manufacturing method, sharing the possibility of very general shapes and forms (see Liu et al. (2018) for a recent overview). However, certain constraints related to the manufacturing method will still be present and need to be explicitly taken into account by the TO formulation. In particular, the overhang constraint, implying that the angle a surface tangent makes to the AM build direction should be below a certain value, is of prime importance. Several methods and formulations that in various ways take such a constraint into account have been suggested. A direct strategy is to modify topology-optimized structures simply from geometrical considerations (Leary et al. 2014; Hu et al. 2015) without considering optimality of the modified structure. A more complete approach is to include the geometric overhang constraints in the TO problem. This has been done in two somewhat different, but related, ways: Qian (2017), and also Garaigordobil et al. (2018), used an average of the constrained angle in an explicit constraint, whiley Langelaar (2016, 2017, 2018) and Gaynor and Guest (2016) introduced filters that control the presence of support material at each point of the optimal structure. Another filter approach based on calculating arrival times of a front propagating the design domain and whose speed depends on the overhang was presented by van de Ven et al. (2018). Moreover, Allaire et al. (2017) introduced an implicit overhang constraint in the form of additional elasticity problems that need to be solved for partly manufactured designs, while they also presented numerical test on the average geometric constraint in Qian (2017). Mass and Amir (2017) imposed the overhang constraint implicitly by making the optimized continuum model adhere to a previously optimized truss structure satisfying the constraint. The method described by Guo et al. (2017) consists essentially of converting the TO problem into a shape optimization problem with explicit control over parameters describing the boundary, thus offering a way to control the overhang directly via constraints on the parameters.

However, all of these approaches have certain drawbacks: The direct inclusion of the geometric constraints into the TO formulation, as in Qian (2017) and Mezzadri et al. (2018), gives unwanted shapes that show a “dripping effect” (as named in Allaire 2017) and also seems to produce formulations with many local optima. The physical constraints of Allaire et al. (2017) do not show the “dripping effect,” but on the other hand, is very computationally demanding (calculation times of weeks are reported), and the method does not seem to eliminate all overhang. The methods described by Mass and Amir (2017) and Guo et al. (2017) put additional restrictions on the design space besides the overhang. The two slightly different filter approaches of Langelaar (2016, 2017) and Gaynor and Guest (2016) also do not show the “dripping effect,” but still produce designs that have a tendency to have a rugged appearance with inward corners that in linear elasticity will be associated with singular stress states. Such inward corners are in Hoffarth et al. (2017) removed by a post processing step where a smooth iso-surface defines the structure. In Wang et al. (2018), inward corners are smoothed algorithmically by accepting solutions as convergent when slight violation of the overhang constraint is present. The present contribution on the other hand builds the smoothing into the actual formulation of the optimization problem. Note that small rounded corners are accepted in AM structures, even though a strict overhang constraint is violated: AM design rules include expressions for allowable short overhang regions (see, e.g., Adam and Zimmer (2014), Kranz et al. (2015), and Mirzendehdel and Suresh (2016)).

The present formulation uses a modification to unstructured meshes, indicated by Hoffarth et al. (2017), of the filter approach of Langelaar (2016, 2017) to produce an overhang free design, but this design is not the final physical design. Rather, the overhang free design is compared to the physical design and a penalty term is added to the objective function of the TO problem, which implies a cost for deviation between the physical design and the overhang free design. This takes away the sharp corners present in original method of Langelaar, a feature that should be necessary when, e.g., stress constraints are included in TO. Depending on the value of the penalty parameter, different length of overhang will typically remain in the optimal design. Thus, at least for small values of this parameter, the aim of the method is to limit the amount of support structure, not removal of all such additional structure. Methods that somehow include the cost of support structure have been presented in Langelaar (2018) and Mirzendehdel and Suresh (2016). The present method implicitly includes such cost. In particular, a certain choice of weight factors in the penalty term makes overhang far from the base plates more costly, thus less preferable in an optimal solution, than overhang close to the base plate. It should be noted, however, that the method does not include a precise specification of, e.g., what length of overhang is allowed or what rounding is obtained at corners. Parameters of the formulation are not directly connected to such precise features of an optimal design. Therefore, as it is usual in TO, the suggested optimized designs should be seen as conceptual designs that need refinement and further analysis.

## 2 General setting and sensitivity

*= (*

**ρ***ρ*

_{i},…,

*ρ*

_{n})

^{T}. As it is now standard in density-based TO, the physical design is a function of the optimization variable

*= (*

**x***x*

_{i},…,

*x*

_{n})

^{T}through the use of a density filter, i.e.,

*=*

**ρ***(*

**ρ***), and a linear such filter is used in this paper (Bourdin 2001). The usual setting of one variable per finite element is used, so*

**x***n*represents the number of such elements. For comparison to Langelaar (2016, 2017), the physical variables are somewhat related to what Langelaar calls blue-print variables, but a difference in our approach is that these variables are used for calculating stiffness and are taken as the actual physical design. Moreover, Langelaar considers structured meshes only and the calculation is done layer by layer. Here, we extend this method to unstructured meshes, following Hoffarth et al. (2017). The details are given in Section 3, while in this section, we only need to realize that it means considering implicit functions of the form

*L*

_{i}will eventually be formed from smoothed max and min operators. These functions can in principle be solved for

**ρ**^{of}, resulting in

*= (*

**B***B*

_{i},…,

*B*

_{n})

^{T}is a vector-valued function.

*f*(

*). A penalty term*

**ρ***P*representing the cost of deviating from an AM-preferred overhang free design is added to form an augmented objective

*= (*

**λ***λ*

_{1},…,

*λ*

_{n})

^{T}is a vector of Lagrangian multipliers. Since the bracket in the second term is zero for any Lagrangian multiplier, both the value and the sensitivity with respect to

*are the same for \(\mathcal {L}\) and*

**ρ***f*

^{a}. Proceeding with a direct differentiation, omitting arguments, we get

*δ*

_{ij}is Kronecker’s delta. Thus, by letting

*is now obtained by the use of the chain rule.*

**x**Comparing the above formulation and sensitivity calculation with that of Langelaar (2016, 2017), we note that the latter is retrieved from the above by letting * ρ* approach

**ρ**^{of}. The penalty term is then removed and the objective function becomes

*f*(

*(*

**B***(*

**ρ***))). The above sensitivity formulas (3) and (4) coincide with that of Langelaar (2016, 2017) if the term*

**x***∂*

*f*

^{a}/

*∂*

*ρ*

_{j}is removed. Thus, the present method involves no extra computational effort compared to the original AM filter in Langelaar (2016, 2017).

## 3 Overhang filter

**ρ**^{of}, we use a slightly extended version of the filter developed in Langelaar (2016, 2017). One of the limitations of the original formulation is that it is only defined for a structured mesh with equal sized elements, but this limitation can be lifted by introducing a mesh independent control volume in the form of a cone (denoted Θ

_{i}below) as shown in Hoffarth et al. (2017). In the following, we give details of such an extension to unstructured meshes. To avoid the original method’s use of layers of elements, each element is given a height,

*h*

_{i}, by projecting the centroid of the element onto the build direction, i.e.,

**x**_{i}is the centroid of element

*i*and

*is a unit vector in the build direction. A filtering application sequence is then determined by ordering the elements, and thereby the design variables, from lowest to highest in terms of*

**n***h*

_{i}.

*i*is

**v**_{ij}=

**x**_{j}−

**x**_{i},

*ϕ*

_{max}is the largest allowed overhang angle and

*H*is the maximum distance to a supporting element. An illustration is given in Fig. 1, where the filter radius

*R*of the linear density filter is also shown. With an appropriately chosen radius (

*H*slightly larger than

*R*), the linear density filter prevents the appearance of pathological situations where an element is not supported immediately below but only further down in the filter cone. Note that the discrete nature of the setting means that

*ϕ*

_{max}is an upper bound for the overhang angle, and as

*ϕ*

_{max}changes this actual overhang angle will change stepwise at certain values that depends on

*H*. For the setting shown in Fig. 1 such steps will occur at tan− 10.5, tan− 11 and tan− 13. For unstructured coarse meshes, the actual angle will vary over the structure, depending on the local discretization. However, keeping

*R*and

*H*fixed, refining the mesh will improve the accuracy of the approximation of

*ϕ*

_{max}. Moreover, for a given mesh, one way to improve the approximation is to include additional points besides the centroids in the definition of Θ

_{i}; cf. Johnson and Gaynor (2018).

_{i}; i.e., we calculate a tentative overhang free design as

*j*∈Θ

_{i}is always less than

*i*, which means that the right hand side is known if the calculation is done in the order of the numbering. Next, the possibility of filling an element with material, if indicated as a possibility by \(\hat {\rho }_{i}^{\text {of}}= 1\), is utilized only if the physical design allows this; i.e., the overhang free design for element

*i*is taken as

*L*

_{i}in (1) are defined as

*P*

_{ρ},

*Q*, and

*𝜖*determine the accuracy of the approximations and therefore the performance of the overhang filter. Based on the recommendations in Langelaar (2016), we use

*ρ*

_{0}= 0.5 and

*n*

_{ρ}= max{|Θ

_{1}|,…,|Θ

_{n}|}. Other values were not tested in the present work but finding the best performance in this respect is likely coupled to finite element refinement and parameters of the penalty function.

*L*

_{i}in (6) it holds that

## 4 Specification of optimization problem \((\mathbb {P})\)

*(*

**K***) depends on the physical design*

**ρ***. Here,*

**ρ***is the vector of nodal displacements and*

**u***is the corresponding force vector. Using the SIMP-method (Bendsøe and Sigmund 2002; Christensen and Klarbring 2009) to enforce black-and-white solutions, the explicit form of the stiffness matrix is*

**F**

**K**_{i}is an element stiffness matrix for a unit value of the design variable

*ρ*

_{i}and

*r*≥ 1 is the SIMP exponent, here set to 3. The feasible set of the general problem \((\mathbb {P})\) is

*ε*> 0 is a small value that, by being non-zero, has the effect of making

*(*

**K***) non-singular assuming appropriate supports,*

**ρ***a*

_{i}are positive constants, representing volumes of elements, and

*V*is a specified volume bound. As an objective function, we take the standard compliance objective

*(*

**u***) is the solution of (7). The penalty function*

**ρ***P*is given by the following general form:

*w*

_{i}> 0 are weight factors,

*γ*> 0 is a penalty factor,

*p*and

*q*are positive constants that need to be chosen appropriately, and

*is a vector with components \(\xi _{i}=\rho _{i}-\rho _{i}^{\text {of}}\). The case*

**ξ***p*=

*q*gives a

*p*-norm that approaches the max-function as

*p*approaches infinity. In the numerical calculations, we use a weak such approximation by taking

*p*= 2. We also use the values

*p*= 1 and

*q*= 0.5, which gives a less localized penalty. These values give a proper penalty term since, by (5), \(\rho _{i}^{\text {of}}\leq \rho _{i}\), implying

*ξ*

_{i}≥ 0 in (9), i.e.,

*P*(

*) = 0 implies*

**ξ***=*

**ξ***. The weights*

**0***w*

_{i}can be chosen to further achieve special features of the design. For instance, the heights

*h*

_{i}can be used to the define the weights as

*h*

_{min}and

*h*

_{max}are the smallest and largest height values. With this choice of weight functions, elements far from the base plate, where

*h*

_{i}is near to

*h*

_{max}, are penalized to comply more closely to the overhang free design than elements closer to the base plate. This reflects the cost of support structure in a simple and computationally inexpensive way. In (10), the weights vary linearly with distance from the base plate, but obviously other variations could be considered.

## 5 Examples

The method is implemented in the program TRINITAS (Torstenfelt 2019) and tested for the classical MBB beam problem shown in Fig. 2.

*L*is 0.2.

^{1}An isotropic material with Poisson’s ratio 0.3 and Young’s modulus 205 ⋅ 10

^{9}is used. The applied force

*F*is 10

^{4}. Note that magnitudes for Young’s modulus and the force does not effect the optimal topology in standard stiffness optimization, but since a penalty term is added in our method the value of the penalty coefficient

*γ*needs to be compared to these values. The density filter radius is

*R*=

*L*/30, and the AM filter height is

*H*= 1.2

*R*. The volume bound

*V*is 40% of the volume of the design domain. The problems are solved using MMA (Svanberg 1987) with default parameters and starting from a uniform density

*ρ*

_{i}= 0.25.

### 5.1 Structured mesh

In this section, we use a structured mesh consisting of 10,800 (60 × 180) equally sized 4-node quadrilateral elements, implying that *R* = 2*l*, where *l* is the side length of an element. Calculations are run for for 650 iterations with no other stopping criteria. Run times are around 2 min on a standard PC.

Figure 3 shows a reference case where no AM filter or penalty is used. In the following, we will compare optimal compliances to this reference case and relative optimal compliance *C* will be specified. By definition, *C* = 1 for the design in Fig. 3.

In Fig. 4, the same beam is optimized using Langelaar’s AM filter. The build direction is in the positive *y*-direction and the maximum overhang angle is set to 46^{∘} (which in practice means 45^{∘} due to the structured grid). The relative optimal compliance of the beam in Fig. 4 is *C* = 1.11.

*p*=

*q*= 2,

*w*

_{i}= 1 and four values of

*γ*. In principle, when

*γ*changes from zero to infinity, we interpolate between, on the one hand, a standard stiffness optimization problem where we do not take overhang constraints into account and, on the other hand, a strict satisfaction of overhang constraints. However, the actual visual change of topology and geometry seems to take place for a rather small range of values. Presently, we find this range simply by manual interval halving. In practical applications, an engineer would likely want to generate a range of different designs with different

*γ*to find an acceptable compromise between AM printability and performance.

The beam in the top picture in Fig. 5 has extensive overhang, that need support structure if manufactured by AM, but the penalization has produced more structural members in the print direction than the reference beam in Fig. 3. More specifically, the horizontal upper member has large unsupported spans, while the inclined members, with some exceptions, satisfy the 45^{∘} constraint. Portions of the design where the constraint is not satisfied are indicated in red. As we move downwards in Fig. 5, the penalty term increases printability of design at the cost of stiffness performance. In the lower three figures, some rounding of sharp corners can be seen but no extensive overhang exists and inclined members closely satisfy the 45^{∘} constraint, as can be verified by use of an angle hook. Clearly, the rounding varies not only as we move downwards, increasing the penalty, in Fig. 5, but also with position within each plot. This is because the penalty term only measures the average deviation between an overhang free design and the physical design. The fact that the relative optimal compliance is slightly higher in the designs at the bottom of Fig. 5 than in Fig. 4 is likely a result of local optimality. However, starting the calculation from a different initial design may induce small changes in topologies and compliance values.

^{∘}. We have also tested the angle 60

^{∘}, but in accordance with the discussion in Section 3, the actual angle and solution then becomes the same as in Fig. 5.

*p*= 1 and

*q*= 0.5 is shown in Fig. 7. As indicated in Section 4, this choice of parameters gives a penalty which is less local than the

*p*-norm and corners are somewhat more rounded, even though a rather sharp corner to the right in the lower picture is observed.

*p*= 1,

*q*= 0.5, and

*γ*= 10

^{− 5}. The effect seen here is that some structural members close to the base are allowed a large angle, reflecting that the cost of support structure is smaller than for overhang with larger distance to the base plate.

**ρ**^{of}in the upper picture and the corresponding physical design

*in the lower picture. The penalty parameter*

**ρ***γ*is chosen as 0.004 to give a low penalization, resulting in a clearly distinguishable difference between the two designs. Note that since the physical design

*is the one used for calculating the stiffness matrix, there is no incentive for*

**ρ**

**ρ**^{of}to define a stiff structure. This is clearly seen in the plot of

**ρ**^{of}, where the overhang constraint is satisfied at the expense of removing material at critical positions.

### 5.2 Unstructured mesh

We have also tested the method with unstructured meshes. A rather more fine mesh than for structured meshes turned out to be necessary for good satisfaction of the overhang angle. We use 102,808 3-node linear triangular elements, while other values such as filter radii are the same. The number of iterations was also raised to 3000, again without any other convergence criteria.

Figure 10 shows a reference case without AM filter. The relative optimal compliance for the reference case is again *C* = 1.

^{∘}. The relative compliance is

*C*= 1.176. Note the overall relatively large difference in appearance from Fig. 4, which turns out to be less using the penalty modification.

A sequence of designs, gradually changing *γ*, similar to those in Fig. 5, is shown for the unstructured mesh in Fig. 12.

### 5.3 Stress calculation

*r*= 3, where the standard stress is calculated from the displacements without considering density scaling. From this local stress, we calculate the von Mises scalar stress. Secondly, a comparison between a solution using Langelaar’s filter and the present approach is not useful, since we expect the former to have sharp inward corners where theoretically the stress is infinity but in practice is a function of the mesh refinement. This being clarified, we show the von Mises stress distribution for a solution using a structured mesh that is denser than in Section 5.1. We use four times the number of elements used in Section 5.1, i.e., 43,200 elements. The penalty coefficient is

*γ*= 0.005 and the penalty function coefficients are

*p*=

*q*= 2. The optimal topology is shown in the upper picture of Fig. 13 and the stress levels are plotted in the lower picture. Note that since the stress levels are less than 10% of the maximum stress in some parts of the optimal structure these parts are not seen in the stress plot. Note also that the two largest stress peaks occur at the application of the force in the lower right hand corner and due to the boundary conditions at the upper left corner, both of which are not related to the overhang filter.

## 6 Conclusions and discussion

Strict satisfaction of overhang constraints that emanate from additive manufacturing results in topology optimized designs that have sharp inward corners. Linear elasticity dictates stress singularities at such corners, meaning unwanted bad strength and fatigue properties. In order to relieve this problem, we suggest an approach where a penalty function, representing cost for designs that deviate from an overhang free design, is added. By changing a penalty parameter, families of solutions gradually approaching satisfaction of the overhang constraint can be generated. It is also possible to choose certain weight factors to reflect the cost of support structure needed when the overhang constraint is not fully satisfied.

The method is demonstrated for standard stiffness-based optimization, but can be used together with any objective or constraint functions. In particular, the removal of inward corners should be essential when stress is introduced as such functions.

## Footnotes

- 1.
Standard SI units can be inserted for lengths, forces and material constants, but these are not relevant for the conclusions.

## Notes

### Acknowledgements

The work was performed within the AddMan project, funded by the Clean Sky 2 joint undertaking under the European Union’s Horizon 2020 research and innovation program under grant agreement No 738002, and within the Centre for Additive Manufacturing-Metal (CAM2) financed by Sweden’s innovation agency under grant agreement No 2016-05175.

## References

- Adam GAO, Zimmer D (2014) Design for additive manufacturing —- element transitions and aggregated structures. CIRP J Manuf Sci Technol 7:20–28CrossRefGoogle Scholar
- Allaire G, Dapogny C, Estevez R, Faure A, Michailidis G (2017) Structural optimization under overhang constraints imposed by additive manufacturing technologies. J Comput Phys 351:295–328MathSciNetCrossRefzbMATHGoogle Scholar
- Bendsøe M, Sigmund O (2002) Topology optimization, theory, methods and applications. SpringerGoogle Scholar
- Bourdin B (2001) Filters in topology optimization. Int J Numer Methods Eng 50:2143–2158MathSciNetCrossRefzbMATHGoogle Scholar
- Christensen PW, Klarbring A (2009) An introduction to structural optimization. SpringerGoogle Scholar
- Duysinx P, Bendsøe MP (1998) Topology optimization of continuum structures with local stress constraints. Int J Numer Methods Eng 43:1453–1478MathSciNetCrossRefzbMATHGoogle Scholar
- Garaigordobil A, Ansola R, Santamar J, Fernández de Bustos I (2018) A new overhang constraint for topology optimization of self-supporting structures in additive manufacturing. Struct Multidiscip Optim 58 (5):2003–2017MathSciNetCrossRefGoogle Scholar
- Gaynor AT, Guest JK (2016) Topology optimization considering overhang constraints: eliminating sacrificial support material in additive manufacturing through design. Struct Multidiscip Optim 54(5):1157–1172MathSciNetCrossRefGoogle Scholar
- Johnson TE, Gaynor AT (2018) Three-dimensional projection-based topology optimization for prescribed-angle self-supporting additively manufactured structures. Additive Manufacturing. https://doi.org/10.1016/j.addma.2018.06.011
- Guo X, Zhou J, Zhang W, Du Z, Liu C, Liu Y (2017) Self-supporting structure design in additive manufacturing through explicit topology optimization. Comput Methods Appl Mech Eng 323:27–63MathSciNetCrossRefGoogle Scholar
- Hoffarth M, Gerzen N, Pedersen C (2017) ALM overhang constraint in topology optimization for industrial applications. In: 12th World Congress on structural and multidisciplinary optimisation. BraunschweigGoogle Scholar
- Hu K, Jin S, Wang CCL (2015) Support slimming for single material based additive manufacturing. Comput Aided Des 65:1–10CrossRefGoogle Scholar
- Kranz J, Herzog D, Emmelmann C (2015) Design guidelines for laser additive manufacturing of lightweight structures in TiAl6V4. J Laser Appl 27:S14001, 1–16CrossRefGoogle Scholar
- Langelaar M (2016) Topology optimization of 3D self-supporting structures for additive manufacturing. Additive Manuf 12:60–70CrossRefGoogle Scholar
- Langelaar M (2017) An additive manufacturing filter for topology optimization of print-ready designs. Struct Multidiscip Optim 55:871–883MathSciNetCrossRefGoogle Scholar
- Langelaar M (2018) Combined optimization of part topology, support structure layout and build orientation for additive manufacturing. Struct Multidiscip Optim 57(5):1985–2004MathSciNetCrossRefGoogle Scholar
- Leary M, Merli L, Torti F, Mazur M, Brandt M (2014) Optimal topology for additive manufacture: a method for enabling additive manufacture of support-free optimal structures. Mater Des 63:678–690CrossRefGoogle Scholar
- Liu J, Gaynor AT, Chen S, Kang Z, Suresh K, Takezawa A, Li L, Kato J, Tang J, Wang CCL, Cheng L, Liang X, To AC (2018) Current and future trends in topology optimization for additive manufacturing. Struct Multidiscip Optim 57(6):2457–2483CrossRefGoogle Scholar
- Mass Y, Amir O (2017) Topology optimization for additive manufacturing: accounting for overhang limitations using a virtual skeleton. Additive Manuf 18:58–73CrossRefGoogle Scholar
- Mezzadri F, Bouriakov V, Qian X (2018) Topology optimization of self-supporting support structures for additive manufacturing. Additive Manuf 21:666–682CrossRefGoogle Scholar
- Mirzendehdel AM, Suresh K (2016) Support structure constrained topology optimization for additive manufacturing. Comput Aided Des 81:1–13CrossRefGoogle Scholar
- Qian X (2017) Undercut and overhang angle control in topology optimization: a density gradient based integral approach. Int J Numer Methods Eng 111:247–272MathSciNetCrossRefGoogle Scholar
- Svanberg K (1987) The method of moving asymptotes – a new method for structural optimization. Int J Numer Methods Eng 24(2):359–373MathSciNetCrossRefzbMATHGoogle Scholar
- Torstenfelt B (2019) The TRINITAS Project. http://www.solid.iei.liu.se/Offered_services/Trinitas/
- van de Ven E, Mass R, Ayas C, Langelaar M, van Keulen F (2018) Continuous front propagation-based overhang control for topology optimization with additive manufacturing. Struct Multidiscip Optim 57(5):2075–2091Google Scholar
- Wang Y, Gao J, Kang Z (2018) Level set-based topology optimization with overhang constraint: towards support-free additive manufacturing. Comput Methods Appl Mech Eng 339:591–614MathSciNetCrossRefGoogle Scholar

## Copyright information

**OpenAccess**This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.