Introduction Global Optimization Application to H ∞ control synthesis under structural constraints Conclusion Global Optimization based on Contractor Programming: Application to H ∞ synthesis Jordan Ninin with Dominique Monnet and Benoit Clement LAB-STICC / ENSTA-Bretagne Brest, France Prague, June 2015 Jordan Ninin Global Optimization SWIM, June 2015 1 / 26
Introduction Global Optimization Application to H ∞ control synthesis under structural constraints Conclusion Introduction Observations: • In Automatic, Robotic, Electronic or Mechanic, engineers know very well their problems. = ⇒ Physical Sense • In Optimization, the specification of each solver need to classify a model: LP, NLP, MINLP, SDP, DFO,... If the model cannot be classify: Modification, Adaptation, Reformulation, ... = ⇒ Numerical Sense Jordan Ninin Global Optimization SWIM, June 2015 2 / 26
Introduction Global Optimization Application to H ∞ control synthesis under structural constraints Conclusion Introduction Observations: • In Automatic, Robotic, Electronic or Mechanic, engineers know very well their problems. = ⇒ Physical Sense • In Optimization, the specification of each solver need to classify a model: LP, NLP, MINLP, SDP, DFO,... If the model cannot be classify: Modification, Adaptation, Reformulation, ... = ⇒ Numerical Sense Physical Solutions ⇐ ⇒ Numerical Solutions Jordan Ninin Global Optimization SWIM, June 2015 2 / 26
Introduction Global Optimization Application to H ∞ control synthesis under structural constraints Conclusion Introduction Observations: • In Automatic, Robotic, Electronic or Mechanic, engineers know very well their problems. = ⇒ Physical Sense • In Optimization, the specification of each solver need to classify a model: LP, NLP, MINLP, SDP, DFO,... If the model cannot be classify: Modification, Adaptation, Reformulation, ... = ⇒ Numerical Sense Physical Solutions ⇐ ⇒ Numerical Solutions = ⇒ Goal: to Propose advanced optimization tools to construct the best solver for their own problems. Jordan Ninin Global Optimization SWIM, June 2015 2 / 26
Introduction Global Optimization Application to H ∞ control synthesis under structural constraints Conclusion Contents 1 Global Optimization Contractor General pattern for global optimization 2 Application to H ∞ control synthesis under structural constraints Mathematical Modelization Contractor Modelization Jordan Ninin Global Optimization SWIM, June 2015 3 / 26
Introduction Global Optimization Application to H ∞ control synthesis under structural constraints Conclusion Contractor Definition: Contractor Let K ⊆ R n be a ” feasible”region. The operator C K : IR n → IR n is a contractor for K if: � C K ( x ) ⊆ x , (contractance) ∀ x ∈ IR n , C K ( x ) ∩ K = x ∩ K . (completeness) Example: Forward-Backward Algorithm The operator C : IR n → IR n is a contractor for the equation f ( x ) = 0, if: � C ( x ) ⊆ x , ∀ x ∈ IR n , x ∈ x and f ( x ) = 0 ⇒ x ∈ C ( x ) . Jordan Ninin Global Optimization SWIM, June 2015 4 / 26
Introduction Global Optimization Application to H ∞ control synthesis under structural constraints Conclusion General pattern for global optimization General Design x , ˜ (˜ f ) = OptimCtc ([ x ], C out , C in , f cost ): ⋆ Merging of a Branch&Bound Algorithm based on Interval Analysis (spacialB&B) and a Set Inversion Via Interval Analysis (SIVIA). ⋆ C out , C in : contractors designed by the user based on K and K , ⋆ C f : a FwdBwd contractor based on { x : f cost ( x ) ≤ ˜ f } ⋆ B : Largest first, smear evaluation, homemade,... Jordan Ninin Global Optimization SWIM, June 2015 5 / 26
Introduction Global Optimization Application to H ∞ control synthesis under structural constraints Conclusion General pattern for global optimization General Design x , ˜ (˜ f ) = OptimCtc ([ x ], C out , C in , f cost ): ⋆ Merging of a Branch&Bound Algorithm based on Interval Analysis (spacialB&B) and a Set Inversion Via Interval Analysis (SIVIA). ⋆ C out , C in : contractors designed by the user based on K and K , ⋆ C f : a FwdBwd contractor based on { x : f cost ( x ) ≤ ˜ f } ⋆ B : Largest first, smear evaluation, homemade,... Jordan Ninin Global Optimization SWIM, June 2015 5 / 26
Introduction Global Optimization Application to H ∞ control synthesis under structural constraints Conclusion General pattern for global optimization General Design x , ˜ (˜ f ) = OptimCtc ([ x ], C out , C in , f cost ): ⋆ Merging of a Branch&Bound Algorithm based on Interval Analysis (spacialB&B) and a Set Inversion Via Interval Analysis (SIVIA). ⋆ C out , C in : contractors designed by the user based on K and K , ⋆ C f : a FwdBwd contractor based on { x : f cost ( x ) ≤ ˜ f } ⋆ B : Largest first, smear evaluation, homemade,... Jordan Ninin Global Optimization SWIM, June 2015 5 / 26
Introduction Global Optimization Application to H ∞ control synthesis under structural constraints Conclusion General pattern for global optimization Illustration: C in , C out infeasible Region Feasible Region Jordan Ninin Global Optimization SWIM, June 2015 6 / 26
Introduction Global Optimization Application to H ∞ control synthesis under structural constraints Conclusion General pattern for global optimization Illustration: C in , C out infeasible Region Feasible Region Region removed by C out Jordan Ninin Global Optimization SWIM, June 2015 6 / 26
Introduction Global Optimization Application to H ∞ control synthesis under structural constraints Conclusion General pattern for global optimization Illustration: C in , C out infeasible Region Feasible Region Region removed by C out Region removed by C in Jordan Ninin Global Optimization SWIM, June 2015 6 / 26
Introduction Global Optimization Application to H ∞ control synthesis under structural constraints Conclusion General pattern for global optimization The feasability test Without equation or system, How to prove that a point is a feasible point? Jordan Ninin Global Optimization SWIM, June 2015 7 / 26
Introduction Global Optimization Application to H ∞ control synthesis under structural constraints Conclusion General pattern for global optimization The feasability test Without equation or system, How to prove that a point is a feasible point? Prove that x ∈ K �⇔ Prove that x �∈ K Jordan Ninin Global Optimization SWIM, June 2015 7 / 26
Introduction Global Optimization Application to H ∞ control synthesis under structural constraints Conclusion General pattern for global optimization The feasability test Without equation or system, How to prove that a point is a feasible point? Prove that x ∈ K �⇔ Prove that x �∈ K x is contracted by C in ⇔ x ∈ K ⇔ C out proves that x is in K . C in will eliminate all the part of a box which are not in K . C out will eliminate all the part of a box which are not in K . Jordan Ninin Global Optimization SWIM, June 2015 7 / 26
Introduction Global Optimization Application to H ∞ control synthesis under structural constraints Conclusion General pattern for global optimization Global Optimization based on Contractor • L := { ( x , false ) } , The boolean indicate if x is entirely feasible • Do 1 Extract from L a element ( z , b ), 2 Bisect z following a bisector B : ( z 1 , z 2 ) 3 for j = 1 to 2 : • if b = false (i.e. x is not completly feasible) then Contract the infeasible region using C out and C f , Extract z feas a feasible part of z j using C in , Insert ( z feas , true ) in L . Insert the rest ( z j , false ) in L . • else (i.e. x is entirely feasible) Contract z j using C f , Try to find a local optimum without constraint in [ z j ], if succeed then Update ˜ f insert ( z j , true ) in L . • stopping criterion Jordan Ninin Global Optimization SWIM, June 2015 8 / 26
Introduction Global Optimization Application to H ∞ control synthesis under structural constraints Conclusion General pattern for global optimization Global Optimization based on Contractor • L := { ( x , false ) } , The boolean indicate if x is entirely feasible • Do 1 Extract from L a element ( z , b ), 2 Bisect z following a bisector B : ( z 1 , z 2 ) 3 for j = 1 to 2 : • if b = false (i.e. x is not completly feasible) then Contract the infeasible region using C out and C f , Extract z feas a feasible part of z j using C in , Insert ( z feas , true ) in L . Insert the rest ( z j , false ) in L . • else (i.e. x is entirely feasible) Contract z j using C f , Try to find a local optimum without constraint in [ z j ], if succeed then Update ˜ f insert ( z j , true ) in L . • stopping criterion Jordan Ninin Global Optimization SWIM, June 2015 8 / 26
Recommend
More recommend