Null Space Gradient Flows for Constrained Optimization with Applications to Shape Optimization Florian Feppon Gr´ egoire Allaire, Charles Dapogny Julien Cortial, Felipe Bordeu SMAI 2019 – Guidel Plages – May 14th, 2019
Shape optimization Multiphysics, non parametric, shape and topology optimization, in 2D. . .
Shape optimization And in 3D. . . Figure: 3D shape optimization in linear elasticity
Shape optimization And in 3D. . . Figure: 3D shape optimization in linear elasticity . . . Nonlinear, non convex, infinite dimensional optimization problems featuring multiple and arbitrary constraints!
Outline 1. Gradient flows for equality and inequality constrained optimizations 2. Demonstration on topology optimization test cases
1. Constrained optimization min J ( x ) x ∈X � ❣ ( x ) = 0 s.t. ❤ ( x ) ≤ 0 , with J : X → R , ❣ : X → R p and ❤ : X → R q Fr´ echet differentiable. The set X can be ◮ a finite dimensional vector space, X = R n
1. Constrained optimization min J ( x ) x ∈X � ❣ ( x ) = 0 s.t. ❤ ( x ) ≤ 0 , with J : X → R , ❣ : X → R p and ❤ : X → R q Fr´ echet differentiable. The set X can be ◮ a finite dimensional vector space, X = R n ◮ a Hilbert space equipped with a scalar product a ( · , · ), X = V
1. Constrained optimization min J ( x ) x ∈X � ❣ ( x ) = 0 s.t. ❤ ( x ) ≤ 0 , with J : X → R , ❣ : X → R p and ❤ : X → R q Fr´ echet differentiable. The set X can be ◮ a finite dimensional vector space, X = R n ◮ a Hilbert space equipped with a scalar product a ( · , · ), X = V ◮ a “manifold”, as in topology optimization: X = { Ω ⊂ D | Ω Lipschitz }
1. Gradient flows for inequality constraints From a current guess x n , how to select the descent direction ξ n given objective J and constraints ❣ , ❤ ?
1. Gradient flows for inequality constraints From a current guess x n , how to select the descent direction ξ n given objective J and constraints ❣ , ❤ ? ◮ Many “iteratives” methods in literature: ◮ Penalty methods (like Augmented Lagrangian Method) ◮ Linearization methods : SLP, SQP, MMA, MFD
1. Gradient flows for inequality constraints From a current guess x n , how to select the descent direction ξ n given objective J and constraints ❣ , ❤ ? ◮ Many “iteratives” methods in literature: ◮ Penalty methods (like Augmented Lagrangian Method) ◮ Linearization methods : SLP, SQP, MMA, MFD These methods suffer from: ◮ the need for tuning unintuitive parameters.
1. Gradient flows for inequality constraints From a current guess x n , how to select the descent direction ξ n given objective J and constraints ❣ , ❤ ? ◮ Many “iteratives” methods in literature: ◮ Penalty methods (like Augmented Lagrangian Method) ◮ Linearization methods : SLP, SQP, MMA, MFD These methods suffer from: ◮ the need for tuning unintuitive parameters. ◮ “inconsistencies” when ∆ t → 0: SLP, SQP, MFD subproblems may not have a solution if ∆ t too small. ALG does not guarantee reducing the objective function if constraints are satisfied.
❣ ❣ ❣ ❣ ❣ ❣ ❣ ❣ ❣ ❣ ❣ ❣ ❣ ❣ ❣ ❣ 1. Gradient flows for inequality constraints Dynamical systems approaches:
❣ ❣ ❣ ❣ ❣ ❣ ❣ ❣ ❣ ❣ ❣ ❣ ❣ ❣ ❣ ❣ 1. Gradient flows for inequality constraints Dynamical systems approaches: ◮ For unconstrained optimization, the celebrated gradient flow: x = −∇ J ( x ) ˙ J ( x ( t )) decreases necessarily!
❣ ❣ ❣ ❣ ❣ ❣ ❣ ❣ ❣ ❣ ❣ 1. Gradient flows for inequality constraints Dynamical systems approaches: ◮ For unconstrained optimization, the celebrated gradient flow: x = −∇ J ( x ) ˙ J ( x ( t )) decreases necessarily! ◮ For equality constrained optimization, projected gradient flow (Tanabe (1980)): x = − ( I − D ❣ T ( D ❣ D ❣ T ) − 1 D ❣ ) ∇ J ( x ) ˙ (gradient flow on X = { x ∈ V | ❣ ( x ) = 0 } )
❣ ❣ ❣ 1. Gradient flows for inequality constraints Dynamical systems approaches: ◮ For unconstrained optimization, the celebrated gradient flow: x = −∇ J ( x ) ˙ J ( x ( t )) decreases necessarily! ◮ For equality constrained optimization, projected gradient flow (Tanabe (1980)): x = − ( I − D ❣ T ( D ❣ D ❣ T ) − 1 D ❣ ) ∇ J ( x ) ˙ (gradient flow on X = { x ∈ V | ❣ ( x ) = 0 } ) Then Yamashita (1980) added a Gauss-Newton direction: x = − α J ( I − D ❣ T ( D ❣ D ❣ T ) − 1 D ❣ ) ∇ J ( x ) ˙ − α C D ❣ T ( D ❣ D ❣ T ) − 1 ❣ ( x )
1. Gradient flows for inequality constraints Dynamical systems approaches: ◮ For unconstrained optimization, the celebrated gradient flow: x = −∇ J ( x ) ˙ J ( x ( t )) decreases necessarily! ◮ For equality constrained optimization, projected gradient flow (Tanabe (1980)): x = − ( I − D ❣ T ( D ❣ D ❣ T ) − 1 D ❣ ) ∇ J ( x ) ˙ (gradient flow on X = { x ∈ V | ❣ ( x ) = 0 } ) Then Yamashita (1980) added a Gauss-Newton direction: x = − α J ( I − D ❣ T ( D ❣ D ❣ T ) − 1 D ❣ ) ∇ J ( x ) ˙ − α C D ❣ T ( D ❣ D ❣ T ) − 1 ❣ ( x ) ❣ ( x ( t )) = ❣ ( x (0)) e − α C t and J ( x ( t )) is guaranteed to decrease if ❣ ( x ( t )) = 0.
❈ ❈ ❈ ❈ 1. Gradient flows for inequality constraints For both equality constraints ❣ ( x ) = 0 and inequality constraints ❤ ( x ) ≤ 0, consider � I ( x ) the set of violated constraints: � I ( x ) = { i ∈ { 1 , . . . , q } | h i ( x ) � 0 } . � � T ❈ � I ( x ) = ❣ ( x ) | ( h i ( x )) i ∈ � I ( x )
1. Gradient flows for inequality constraints For both equality constraints ❣ ( x ) = 0 and inequality constraints ❤ ( x ) ≤ 0, consider � I ( x ) the set of violated constraints: � I ( x ) = { i ∈ { 1 , . . . , q } | h i ( x ) � 0 } . � � T ❈ � I ( x ) = ❣ ( x ) | ( h i ( x )) i ∈ � I ( x ) We propose x = − α J ξ J ( x ( t )) − α C ξ C ( x ( t )) ˙ with � the “best” descent direction − ξ J ( x ) := with respect to the constraints � I ( x ) � the Gauss-Newton direction − ξ C ( x ) := − D ❈ T I ( x ) D ❈ T I ( x ) ) − 1 ❈ � I ( x ) ( D ❈ � I ( x ) ( x ) � �
1. Gradient flows for inequality constraints J ( x 1 , x 2 ) = x 2 1 + ( x 2 + 3) 2 min ( x 1 , x 2 ) ∈ R 2 � h 1 ( x 1 , x 2 ) = − x 2 1 + x 2 ≤ 0 s.t. h 2 ( x 1 , x 2 ) = − x 1 − x 2 − 2 ≤ 0
1. Gradient flows for inequality constraints We propose: x = − α J ξ J ( x ( t )) − α C ξ C ( x ( t )) ˙ with I ( x ) ) − 1 D ❈ � ξ J ( x ) := ( I − D ❈ T I ( x ) D ❈ T I ( x ) ( D ❈ � I ( x ) )( ∇ J ( x )) � � I ( x ) ) − 1 ❈ � ξ C ( x ) := D ❈ T I ( x ) D ❈ T I ( x ) ( D ❈ � I ( x ) ( x ) . � �
1. Gradient flows for inequality constraints We propose: x = − α J ξ J ( x ( t )) − α C ξ C ( x ( t )) ˙ with I ( x ) ) − 1 D ❈ � ξ J ( x ) := ( I − D ❈ T I ( x ) D ❈ T I ( x ) ( D ❈ � I ( x ) )( ∇ J ( x )) � � I ( x ) ) − 1 ❈ � ξ C ( x ) := D ❈ T I ( x ) D ❈ T I ( x ) ( D ❈ � I ( x ) ( x ) . � � � I ( x ) ⊂ � I ( x ) is a subset of the active or violated constraints which can be computed by mean of a dual subproblem.
1. Gradient flows for inequality constraints The best descent direction − ξ J ( x ) must be proportional to ξ ∗ = arg min D J ( x ) ξ ξ ∈ V D ❣ ( x ) ξ = 0 I ( x ) ( x ) ξ ≤ 0 D ❤ � s.t. || ξ || V ≤ 1 . where ❤ � I ( x ) ( x ) = ( h i ( x )) i ∈ � I ( x )
1. Gradient flows for inequality constraints Proposition Let ( λ ∗ ( x ) , µ ∗ ( x )) ∈ R p × R Card � I ( x ) the solutions of the following dual minimization problem: ||∇ J ( x )+ D ❣ ( x ) T λ + D ❤ � I ( x ) ( x ) T µ || V . ( λ ∗ ( x ) , µ ∗ ( x )) := arg min λ ∈ R p µ ∈ R � q ( x ) , µ � 0 Then, unless x is a KKT point, the best descent direction ξ ∗ ( x ) is given by ∇ J ( x ) + D ❣ ( x ) T λ ∗ ( x ) + D ❤ � I ( x ) ( x ) T µ ∗ ( x ) ξ ∗ ( x ) = − . ||∇ J ( x ) + D ❣ ( x ) T λ ∗ ( x ) + D ❤ � I ( x ) ( x ) T µ ∗ ( x ) || V
❈ ❈ ❈ ❈ ❈ ❈ ❈ 1. Gradient flows for inequality constraints Proposition Let � I ( x ) the set obtained by collecting the non zero components of µ ∗ ( x ) : � I ( x ) := { i ∈ � I | µ ∗ i ( x ) > 0 } .
1. Gradient flows for inequality constraints Proposition Let � I ( x ) the set obtained by collecting the non zero components of µ ∗ ( x ) : � I ( x ) := { i ∈ � I | µ ∗ i ( x ) > 0 } . Then ξ ∗ ( x ) is explicitly given by: Π ❈ � I ( x ) ( ∇ J ( x )) ξ ∗ ( x ) = − , || Π ❈ � I ( x ) ( ∇ J ( x )) || V with I ( x ) ) − 1 D ❈ � I ( x ) ( ∇ J ( x )) = ( I − D ❈ T I ( x ) D ❈ T Π ❈ � I ( x ) ( D ❈ � I ( x ) )( ∇ J ( x )) � �
1. Gradient flows for inequality constraints We can prove: 1. Constraints are asymptotically satisfied: ❣ ( x ( t )) = e − α C t ❣ ( x (0)) and ❤ � I ( x ( t )) ≤ e − α C t ❤ ( x (0)) 2. J decreases as soon as the violation ❈ � I ( x ( t )) is sufficiently small 3. All stationary points x ∗ of the ODE are KKT points
Recommend
More recommend