On Multigrid-CG for efficient topology optimization. WCSMO 10

On Multigrid-CG for
Efficient Topology Optimization
Oded Amir
1 Faculty
1
Niels Aage
2
Boyan S. Lazarov
2
of Civil & Environmental Engineering, Technion - Israel Institute of Technology
2 Department
of Mechanical Engineering, DTU - Technical University of Denmark
WCSMO 10, Orlando, May 21 2013
On Multigrid-CG for Efficient Topology Optimization
1/16
Motivation
Increasing interest in topology optimization within the architectural
community → development of plug-ins and add-ons to CAD software.
On Multigrid-CG for Efficient Topology Optimization
2/16
Motivation
Increasing interest in topology optimization within the architectural
community → development of plug-ins and add-ons to CAD software.
TopOpt for Grasshopper-Rhino:
On Multigrid-CG for Efficient Topology Optimization
2/16
Motivation
Increasing interest in topology optimization within the architectural
community → development of plug-ins and add-ons to CAD software.
TopOpt for Grasshopper-Rhino:
On Multigrid-CG for Efficient Topology Optimization
3/16
Motivation
Increasing interest in topology optimization within the architectural
community → development of plug-ins and add-ons to CAD software.
TopOpt for Grasshopper-Rhino:
On Multigrid-CG for Efficient Topology Optimization
4/16
Motivation
For architects: interactivity is crucial!
→ A computational tool to “play” with.
Interactivity in 2-D already achieved in TopOpt mobile app.
On Multigrid-CG for Efficient Topology Optimization
5/16
Motivation
For architects: interactivity is crucial!
→ A computational tool to “play” with.
Interactivity in 2-D already achieved in TopOpt mobile app.
3-D still very challenging on standard computers - main aim
of current study.
Insight also relevant for high-performance parallel environments.
On Multigrid-CG for Efficient Topology Optimization
5/16
Nested formulation
min φ(ρ) = lT u
ρ
s.t.:
N
X
ve ρe ≤ V
e=1
0 ≤ ρe ≤ 1
with:
e = 1, ..., N
K(ρ)u = f
Modified SIMP E (ρ) = Emin + (Emax − Emin )ρp .
∂φ
∂K
Sensitivities are ∂ρ
= −uT ∂ρ
u, with K(ρ)u = l.
e
e
Solution obtained by optimality criteria or nonlinear programming.
Computational cost dominated by nested equations:
K(ρ)u = f, K(ρ)u = l.
On Multigrid-CG for Efficient Topology Optimization
6/16
Preferred solvers
How are the linear systems K(ρ)u = f, K(ρ)u = l solved?
2-D: Direct sparse solvers.
3-D: Iterative solvers, e.g. Krylov subspace solvers with
preconditioning.
Linear elasticity: Symmetric positive-definite stiffness matrix →
Preconditioned Conjugate Gradients (PCG).
Current study: Preconditioning achieved by applying multigrid
solver → “MGCG”.
On Multigrid-CG for Efficient Topology Optimization
7/16
Preferred solvers
How are the linear systems K(ρ)u = f, K(ρ)u = l solved?
2-D: Direct sparse solvers.
3-D: Iterative solvers, e.g. Krylov subspace solvers with
preconditioning.
Linear elasticity: Symmetric positive-definite stiffness matrix →
Preconditioned Conjugate Gradients (PCG).
Current study: Preconditioning achieved by applying multigrid
solver → “MGCG”.
Brief history of multigrid applied in topopt: For solving KKT systems
(Maar & Schultz 2000, Stainko 2006) ; multilevel approach (Stainko 2006) .
On Multigrid-CG for Efficient Topology Optimization
7/16
Multigrid principles 1
(from Trottenberg, Oosterlee and Schüller)
Classical iterative methods smooth
the error of an approximation.
Smooth errors are well approximated
on a coarser grid.
Two-grid cycle = smoothing +
coarse-grid correction.
Recursive coarse-grid corrections →
multigrid V-cycle.
Multigrid methods developed since
1970’s, considered optimal →
number of operations O (n).
On Multigrid-CG for Efficient Topology Optimization
8/16
Multigrid principles 2
The two-grid algorithm u = MG (u, f, K):
Pre-smooth u = u + S−1 (f − Ku)
Coarse grid correction - solve Kc uc = PT (f − Ku)
with Kc = PT KP (Galerkin projections)
Interpolate u = u + Puc
Post-smooth u = u + S−1 (f − Ku)
return u
Prolongation operator:
On Multigrid-CG for Efficient Topology Optimization
9/16
MGCG principle
Idea of preconditioning - use a matrix or an operator M:
κ M−1 K << κ (K)
MGCG - a multigrid V-cycle replaces the action of M.
On Multigrid-CG for Efficient Topology Optimization
10/16
MGCG principle
Idea of preconditioning - use a matrix or an operator M:
κ M−1 K << κ (K)
MGCG - a multigrid V-cycle replaces the action of M.
Exploits the similarity of designs on different grid levels
Challenge to capture small features on the fine grid
On Multigrid-CG for Efficient Topology Optimization
10/16
MGCG performance in topopt (1)
MGCG converges nicely even for high-contrast layouts:
Test case 480×160 MBB
beam (symm. half).
106 MGCG iterations for
contrast 106 and above.
contrast
1
103
106
iterations
774
1,707
1,896
100
MGCG iterations
With incomplete Cholesky
preconditioner:
120
80
60
40
20
0 0
10
3
6
10
E
10
/E
max
On Multigrid-CG for Efficient Topology Optimization
9
10
12
10
min
11/16
MGCG performance in topopt (2)
MGCG requires few iterations to reach accurate optimization outcome:
Test case 160×80 cantilever,
MGCG it.
objective
per cycle
value
3
77.45
4
77.45
5
77.47
31.5
77.46
r = 1.5, contrast 109 , sensitivity filter, OC.
relative
diff. (%)
-0.013
-0.013
+0.013
accurate
Test case 160×80 cantilever,
MGCG it.
objective
per cycle
value
1
83.83
2
83.85
3
83.93
19.0
83.93
r = 3.0, contrast 109 , density filter, MMA.
relative
diff. (%)
-0.12
-0.095
0.0
accurate
On Multigrid-CG for Efficient Topology Optimization
12/16
MGCG performance in topopt (3)
Monitoring the accuracy of the design sensitivities to avoid local
minima:
T ∂K
T ∂K
∂K
T
e
e
< −u
e
e
u
u
u
+
Λv
u
−
u
e
k
k−1
k
k−1
∂ρ
∂ρ
∂ρ
e
e
e
T
T
e ∂K
∂K
e
uk−1 ∂ρ
uk − e
uk−1 uk ∂ρe e
T
e
<η
e ∂K uk uk ∂ρe e
∀e |0 < ρe < 1
∀e
Test case 160×80 cantilever, r = 1.5, contrast 109 , density filter, MMA:
MGCG it.
per cycle
5 (fixed)
6 (fixed)
5.12 (monitored)
7.42 (monitored)
44.6
objective
value
79.92
78.67
78.67
78.65
78.66
relative
diff. (%)
+1.6
+0.013
+0.013
-0.013
accurate
On Multigrid-CG for Efficient Topology Optimization
13/16
3-D minimum compliance
√
80×40×40, r = 3, 4 MG levels, over 400,000
DOF, 50 design cycles in less than 15 minutes in
MATLAB.
√
48×24×24, r = 3, 4 MG levels, over 90,000 DOF,
50 design cycles in 3 minutes in MATLAB.
On Multigrid-CG for Efficient Topology Optimization
14/16
3-D force inverter
64×32×32 mesh, r = 3, 4 MG levels, over 200,000 DOF, 100
design cycles in less than 24 minutes in MATLAB.
MGCG applied as block-PCG - 2 r.h.s. simultaneously.
On Multigrid-CG for Efficient Topology Optimization
15/16
Conclusion
MGCG performs very well - even for high-contrast stiffness
distributions.
Only few MGCG iterations are required for achieving accurate
optimization.
Accuracy is ensured by monitoring the design sensitivities.
Paves the way for efficient implementations in standard
computational environments: plug-ins for modeling software;
applications on mobile devices.
On Multigrid-CG for Efficient Topology Optimization
16/16
Conclusion
MGCG performs very well - even for high-contrast stiffness
distributions.
Only few MGCG iterations are required for achieving accurate
optimization.
Accuracy is ensured by monitoring the design sensitivities.
Paves the way for efficient implementations in standard
computational environments: plug-ins for modeling software;
applications on mobile devices.
Funding:
N. Aage and B.S. Lazarov were supported by the NextTop project
sponsored by the Villum Foundation.
Further reading:
Amir O, Aage N and Lazarov BS. On multigrid-CG for efficient topology optimization,
submitted (2-D code attached to the article.)
On Multigrid-CG for Efficient Topology Optimization
16/16