optimization based on mixed integer
play

Optimization based on Mixed Integer Dealing with nonconvexities - PowerPoint PPT Presentation

Claudia DAmbrosio What is MP? What is a MINLP? Subclasses of MINLP Optimization based on Mixed Integer Dealing with nonconvexities Global Nonlinear Programming methods Optimization methods Spatial Branch-and-Bound Expression trees


  1. MINLP branch-and-bound Claudia D’Ambrosio Branch-and-bound algorithm: solve continuous (NLP) What is MP? relaxation at each node of the search tree and branch on What is a MINLP? Subclasses of MINLP variables. Dealing with nonconvexities NLP solver used: Global Optimization Local NLP solvers → local optimum methods Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  2. MINLP branch-and-bound Claudia D’Ambrosio Branch-and-bound algorithm: solve continuous (NLP) What is MP? relaxation at each node of the search tree and branch on What is a MINLP? Subclasses of MINLP variables. Dealing with nonconvexities NLP solver used: Global Optimization Local NLP solvers → local optimum methods No valid bound for nonconvex MINLPs. Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  3. MINLP branch-and-bound Claudia D’Ambrosio Branch-and-bound algorithm: solve continuous (NLP) What is MP? relaxation at each node of the search tree and branch on What is a MINLP? Subclasses of MINLP variables. Dealing with nonconvexities NLP solver used: Global Optimization Local NLP solvers → local optimum methods No valid bound for nonconvex MINLPs. Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening LB = 30 ✎☞ References 0 ✍✌ How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  4. MINLP branch-and-bound Claudia D’Ambrosio Branch-and-bound algorithm: solve continuous (NLP) What is MP? relaxation at each node of the search tree and branch on What is a MINLP? Subclasses of MINLP variables. Dealing with nonconvexities NLP solver used: Global Optimization Local NLP solvers → local optimum methods No valid bound for nonconvex MINLPs. Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening LB = 30 ✎☞ References 0 ✍✌ ✟ ❍❍ How far can we y 1 = 1 ✟ y 1 = 0 ✟ ✙ ❥ ❍ get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  5. MINLP branch-and-bound Claudia D’Ambrosio Branch-and-bound algorithm: solve continuous (NLP) What is MP? relaxation at each node of the search tree and branch on What is a MINLP? Subclasses of MINLP variables. Dealing with nonconvexities NLP solver used: Global Optimization Local NLP solvers → local optimum methods No valid bound for nonconvex MINLPs. Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening LB = 30 ✎☞ References 0 ✍✌ ✟ ❍❍ How far can we y 1 = 1 ✟ y 1 = 0 ✟ ✙ ❍ ❥ get? ✎☞ 1 Practical Tools LB = 35 ✍✌ MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  6. MINLP branch-and-bound Claudia D’Ambrosio Branch-and-bound algorithm: solve continuous (NLP) What is MP? relaxation at each node of the search tree and branch on What is a MINLP? Subclasses of MINLP variables. Dealing with nonconvexities NLP solver used: Global Optimization Local NLP solvers → local optimum methods No valid bound for nonconvex MINLPs. Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening LB = 30 ✎☞ References 0 ✍✌ ✟ ❍❍ How far can we y 1 = 1 ✟ y 1 = 0 ✙ ✟ ❍ ❥ get? ✎☞ 1 Practical Tools LB = 35 ✍✌ ✟ ❍❍ MINLP Solvers y 2 = 1 ✟ y 2 = 0 ✟ ✙ ❍ ❥ Modeling Languages Neos MINLP Libraries Smart Grids

  7. MINLP branch-and-bound Claudia D’Ambrosio Branch-and-bound algorithm: solve continuous (NLP) What is MP? relaxation at each node of the search tree and branch on What is a MINLP? Subclasses of MINLP variables. Dealing with nonconvexities NLP solver used: Global Optimization Local NLP solvers → local optimum methods No valid bound for nonconvex MINLPs. Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening LB = 30 ✎☞ References 0 ✍✌ ✟ ❍❍ How far can we y 1 = 1 ✟ y 1 = 0 ✟ ✙ ❍ ❥ get? ✎☞ 1 Practical Tools LB = 35 ✍✌ ✟ ❍❍ MINLP Solvers y 2 = 1 ✟ y 2 = 0 ✟ ✙ ❍ ❥ Modeling Languages ✎☞ Neos 2 MINLP Libraries ✍✌ Smart Grids z = 26!!!!!!

  8. MINLP branch-and-bound Claudia D’Ambrosio Branch-and-bound algorithm: solve continuous (NLP) What is MP? relaxation at each node of the search tree and branch on What is a MINLP? Subclasses of MINLP variables. Dealing with nonconvexities NLP solver used: Global Optimization Local NLP solvers → local optimum methods No valid bound for nonconvex MINLPs. Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening LB = 30 ✎☞ References 0 ✍✌ ✟ ❍❍ How far can we y 1 = 1 ✟ y 1 = 0 ✟ ✙ ❍ ❥ get? ✎☞ 1 Practical Tools LB = 35 ✍✌ ✟ ❍❍ MINLP Solvers y 2 = 1 ✟ y 2 = 0 ✟ ✙ ❍ ❥ Modeling Languages ✎☞ ✎☞ Neos 2 3 MINLP Libraries ✍✌ ✍✌ Smart Grids z = 26!!!!!! ∅

  9. MINLP branch-and-bound Claudia D’Ambrosio Branch-and-bound algorithm: solve continuous (NLP) What is MP? relaxation at each node of the search tree and branch on What is a MINLP? Subclasses of MINLP variables. Dealing with nonconvexities NLP solver used: Global Optimization Local NLP solvers → local optimum methods No valid bound for nonconvex MINLPs. Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening LB = 30 ✎☞ References 0 ✍✌ ✟ ❍❍ How far can we y 1 = 1 ✟ y 1 = 0 ✟ ✙ ❥ ❍ get? ✎☞ ✎☞ � ❅ 1 4 Practical Tools LB = 35 � ❅ ✍✌ ✍✌ ✟ ❍❍ MINLP Solvers y 2 = 1 ✟ y 2 = 0 ✙ ✟ ❥ ❍ Modeling Languages ✎☞ ✎☞ Neos 2 3 MINLP Libraries ✍✌ ✍✌ Smart Grids z = 26!!!!!! ∅

  10. MINLP branch-and-bound Claudia D’Ambrosio Branch-and-bound algorithm: solve continuous (NLP) What is MP? relaxation at each node of the search tree and branch on What is a MINLP? Subclasses of MINLP variables. Dealing with nonconvexities NLP solver used: Global Optimization Local NLP solvers → local optimum methods No valid bound for nonconvex MINLPs. Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges LB = 30 Bounds tightening LB = 30 ✎☞ ✎☞ References 0 0 ✍✌ ✍✌ ✟ ❍❍ How far can we y 1 = 1 ✟ y 1 = 0 ✙ ✟ ❥ ❍ get? ✎☞ ✎☞ � ❅ 1 4 Practical Tools LB = 35 � ❅ ✍✌ ✍✌ ✟ ❍❍ MINLP Solvers y 2 = 1 ✟ y 2 = 0 ✟ ✙ ❥ ❍ Modeling Languages ✎☞ ✎☞ Neos 2 3 MINLP Libraries ✍✌ ✍✌ Smart Grids z = 26!!!!!! ∅

  11. MINLP branch-and-bound Claudia D’Ambrosio Branch-and-bound algorithm: solve continuous (NLP) What is MP? relaxation at each node of the search tree and branch on What is a MINLP? Subclasses of MINLP variables. Dealing with nonconvexities NLP solver used: Global Optimization Local NLP solvers → local optimum methods No valid bound for nonconvex MINLPs. Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges LB = 30 Bounds tightening LB = 30 ✎☞ ✎☞ References 0 0 ✍✌ ✍✌ ✟ ❍❍ ✟ ❍❍ How far can we y 1 = 0 ✟ y 1 = 1 y 1 = 1 ✟ y 1 = 0 ✙ ✟ ❥ ❍ ✟ ✙ ❍ ❥ get? ✎☞ ✎☞ � ❅ 1 4 Practical Tools LB = 35 � ❅ ✍✌ ✍✌ ✟ ❍❍ MINLP Solvers y 2 = 1 ✟ y 2 = 0 ✟ ✙ ❥ ❍ Modeling Languages ✎☞ ✎☞ Neos 2 3 MINLP Libraries ✍✌ ✍✌ Smart Grids z = 26!!!!!! ∅

  12. MINLP branch-and-bound Claudia D’Ambrosio Branch-and-bound algorithm: solve continuous (NLP) What is MP? relaxation at each node of the search tree and branch on What is a MINLP? Subclasses of MINLP variables. Dealing with nonconvexities NLP solver used: Global Optimization Local NLP solvers → local optimum methods No valid bound for nonconvex MINLPs. Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges LB = 30 Bounds tightening LB = 30 ✎☞ ✎☞ References 0 0 ✍✌ ✍✌ ✟ ❍❍ ✟ ❍❍ How far can we y 1 = 0 ✟ y 1 = 1 y 1 = 1 ✟ y 1 = 0 ✙ ✟ ❥ ❍ ✟ ✙ ❥ ❍ ✎☞ get? ✎☞ ✎☞ � ❅ 1 1 4 Practical Tools LB = 35 � ❅ ✍✌ ✍✌ ✍✌ ✟ ❍❍ MINLP Solvers y 2 = 1 ✟ y 2 = 0 z = 31 ✙ ✟ ❥ ❍ Modeling Languages ✎☞ ✎☞ Neos 2 3 MINLP Libraries ✍✌ ✍✌ Smart Grids z = 26!!!!!! ∅

  13. MINLP branch-and-bound Claudia D’Ambrosio Branch-and-bound algorithm: solve continuous (NLP) What is MP? relaxation at each node of the search tree and branch on What is a MINLP? Subclasses of MINLP variables. Dealing with nonconvexities NLP solver used: Global Optimization Local NLP solvers → local optimum methods No valid bound for nonconvex MINLPs. Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges LB = 30 Bounds tightening LB = 30 ✎☞ ✎☞ References 0 0 ✍✌ ✍✌ ✟ ❍❍ ✟ ❍❍ How far can we y 1 = 0 ✟ y 1 = 1 y 1 = 1 ✟ y 1 = 0 ✙ ✟ ❍ ❥ ✙ ✟ ❍ ❥ ✎☞ ✎☞ get? ✎☞ ✎☞ � ❅ 1 2 1 4 LB = 35 Practical Tools LB = 35 � ❅ ✍✌ ✍✌ ✍✌ ✍✌ ✟ ❍❍ MINLP Solvers y 2 = 1 ✟ y 2 = 0 z = 31 ✙ ✟ ❥ ❍ Modeling Languages ✎☞ ✎☞ Neos 2 3 MINLP Libraries ✍✌ ✍✌ Smart Grids z = 26!!!!!! ∅

  14. MINLP branch-and-bound Claudia D’Ambrosio Branch-and-bound algorithm: solve continuous (NLP) What is MP? relaxation at each node of the search tree and branch on What is a MINLP? Subclasses of MINLP variables. Dealing with nonconvexities NLP solver used: Global Optimization Local NLP solvers → local optimum methods No valid bound for nonconvex MINLPs. Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges LB = 30 Bounds tightening LB = 30 ✎☞ ✎☞ References 0 0 ✍✌ ✍✌ ✟ ❍❍ ✟ ❍❍ How far can we y 1 = 0 ✟ y 1 = 1 y 1 = 1 ✟ y 1 = 0 ✟ ✙ ❍ ❥ ✙ ✟ ❥ ❍ ✎☞ ✎☞ get? ✎☞ ✎☞ � � ❅ ❅ 1 2 1 4 LB = 35 Practical Tools LB = 35 � � ❅ ❅ ✍✌ ✍✌ ✍✌ ✍✌ ✟ ❍❍ MINLP Solvers y 2 = 1 ✟ y 2 = 0 z = 31 ✙ ✟ ❍ ❥ Modeling Languages ✎☞ ✎☞ Neos 2 3 MINLP Libraries ✍✌ ✍✌ Smart Grids z = 26!!!!!! ∅

  15. Specific options for nonconvex MINLPs Claudia D’Ambrosio What is MP? What is a MINLP? Different starting points for root/each node. Subclasses of MINLP Dealing with nonconvexities Global Optimization methods Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  16. Specific options for nonconvex MINLPs Claudia D’Ambrosio What is MP? What is a MINLP? Different starting points for root/each node. Subclasses of MINLP Dealing with nonconvexities Global Optimization LB = min ( 30 , methods ✎☞ 0 Spatial ✍✌ Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  17. Specific options for nonconvex MINLPs Claudia D’Ambrosio What is MP? What is a MINLP? Different starting points for root/each node. Subclasses of MINLP Dealing with nonconvexities Global Optimization LB = min ( 30 , 28 , methods ✎☞ 0 Spatial ✍✌ Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  18. Specific options for nonconvex MINLPs Claudia D’Ambrosio What is MP? What is a MINLP? Different starting points for root/each node. Subclasses of MINLP Dealing with nonconvexities Global Optimization LB = min ( 30 , 28 , 32 , methods ✎☞ 0 Spatial ✍✌ Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  19. Specific options for nonconvex MINLPs Claudia D’Ambrosio What is MP? What is a MINLP? Different starting points for root/each node. Subclasses of MINLP Dealing with nonconvexities Global Optimization LB = min ( 30 , 28 , 32 , 30 , methods ✎☞ 0 Spatial ✍✌ Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  20. Specific options for nonconvex MINLPs Claudia D’Ambrosio What is MP? What is a MINLP? Different starting points for root/each node. Subclasses of MINLP Dealing with nonconvexities Global Optimization LB = min ( 30 , 28 , 32 , 30 , 23 ) = 23 methods ✎☞ 0 Spatial ✍✌ Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  21. Specific options for nonconvex MINLPs Claudia D’Ambrosio What is MP? What is a MINLP? Different starting points for root/each node. Subclasses of MINLP Dealing with nonconvexities Global Optimization LB = min ( 30 , 28 , 32 , 30 , 23 ) = 23 methods ✎☞ 0 Spatial ✍✌ Branch-and-Bound ✟ ❍❍ y 1 = 1 ✟ y 1 = 0 ✙ ✟ ❍ ❥ Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  22. Specific options for nonconvex MINLPs Claudia D’Ambrosio What is MP? What is a MINLP? Different starting points for root/each node. Subclasses of MINLP Dealing with nonconvexities Global Optimization LB = min ( 30 , 28 , 32 , 30 , 23 ) = 23 methods ✎☞ 0 Spatial ✍✌ Branch-and-Bound ✟ ❍❍ y 1 = 1 ✟ y 1 = 0 ✟ ✙ ❥ ❍ Expression trees ✎☞ Convex relaxation 1 LB = min ( 35 , Variable ranges ✍✌ Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  23. Specific options for nonconvex MINLPs Claudia D’Ambrosio What is MP? What is a MINLP? Different starting points for root/each node. Subclasses of MINLP Dealing with nonconvexities Global Optimization LB = min ( 30 , 28 , 32 , 30 , 23 ) = 23 methods ✎☞ 0 Spatial ✍✌ Branch-and-Bound ✟ ❍❍ y 1 = 1 ✟ y 1 = 0 ✟ ✙ ❥ ❍ Expression trees ✎☞ Convex relaxation 1 LB = min ( 35 , 24 , Variable ranges ✍✌ Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  24. Specific options for nonconvex MINLPs Claudia D’Ambrosio What is MP? What is a MINLP? Different starting points for root/each node. Subclasses of MINLP Dealing with nonconvexities Global Optimization LB = min ( 30 , 28 , 32 , 30 , 23 ) = 23 methods ✎☞ 0 Spatial ✍✌ Branch-and-Bound ✟ ❍❍ y 1 = 1 ✟ y 1 = 0 ✟ ✙ ❥ ❍ Expression trees ✎☞ Convex relaxation 1 LB = min ( 35 , 24 , 28 , Variable ranges ✍✌ Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  25. Specific options for nonconvex MINLPs Claudia D’Ambrosio What is MP? What is a MINLP? Different starting points for root/each node. Subclasses of MINLP Dealing with nonconvexities Global Optimization LB = min ( 30 , 28 , 32 , 30 , 23 ) = 23 methods ✎☞ 0 Spatial ✍✌ Branch-and-Bound ✟ ❍❍ y 1 = 1 ✟ y 1 = 0 ✟ ✙ ❥ ❍ Expression trees ✎☞ Convex relaxation 1 LB = min ( 35 , 24 , 28 , 24 , Variable ranges ✍✌ Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  26. Specific options for nonconvex MINLPs Claudia D’Ambrosio What is MP? What is a MINLP? Different starting points for root/each node. Subclasses of MINLP Dealing with nonconvexities Global Optimization LB = min ( 30 , 28 , 32 , 30 , 23 ) = 23 methods ✎☞ 0 Spatial ✍✌ Branch-and-Bound ✟ ❍❍ y 1 = 1 ✟ y 1 = 0 ✟ ✙ ❥ ❍ Expression trees ✎☞ Convex relaxation 1 LB = min ( 35 , 24 , 28 , 24 , 30 ) = 24 Variable ranges ✍✌ Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  27. Specific options for nonconvex MINLPs Claudia D’Ambrosio What is MP? What is a MINLP? Different starting points for root/each node. Subclasses of MINLP Dealing with nonconvexities Global Optimization LB = min ( 30 , 28 , 32 , 30 , 23 ) = 23 methods ✎☞ 0 Spatial ✍✌ Branch-and-Bound ✟ ❍❍ y 1 = 1 ✟ y 1 = 0 ✙ ✟ ❥ ❍ Expression trees ✎☞ Convex relaxation 1 LB = min ( 35 , 24 , 28 , 24 , 30 ) = 24 Variable ranges ✍✌ Bounds tightening ✟ ❍❍ ✟ y 2 = 1 y 2 = 0 ✟ ✙ ❍ ❥ References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  28. Specific options for nonconvex MINLPs Claudia D’Ambrosio What is MP? What is a MINLP? Different starting points for root/each node. Subclasses of MINLP Dealing with nonconvexities Global Optimization LB = min ( 30 , 28 , 32 , 30 , 23 ) = 23 methods ✎☞ 0 Spatial ✍✌ Branch-and-Bound ✟ ❍❍ y 1 = 1 ✟ y 1 = 0 ✟ ✙ ❍ ❥ Expression trees ✎☞ Convex relaxation 1 LB = min ( 35 , 24 , 28 , 24 , 30 ) = 24 Variable ranges ✍✌ Bounds tightening ✟ ❍❍ ✟ y 2 = 1 y 2 = 0 ✟ ✙ ❥ ❍ ✎☞ References 2 How far can we ✍✌ get? z = 26!!!!!! Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  29. Specific options for nonconvex MINLPs Claudia D’Ambrosio What is MP? What is a MINLP? Different starting points for root/each node. Subclasses of MINLP Dealing with nonconvexities Global Optimization LB = min ( 30 , 28 , 32 , 30 , 23 ) = 23 methods ✎☞ 0 Spatial ✍✌ Branch-and-Bound ✟ ❍❍ y 1 = 1 ✟ y 1 = 0 ✙ ✟ ❥ ❍ Expression trees ✎☞ Convex relaxation 1 LB = min ( 35 , 24 , 28 , 24 , 30 ) = 24 Variable ranges ✍✌ Bounds tightening ✟ ❍❍ ✟ y 2 = 1 y 2 = 0 ✟ ✙ ❍ ❥ ✎☞ ✎☞ References 2 3 How far can we ✍✌ ✍✌ get? z = 26!!!!!! ∅ Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  30. Specific options for nonconvex MINLPs Claudia D’Ambrosio What is MP? What is a MINLP? Different starting points for root/each node. Subclasses of MINLP Dealing with nonconvexities Global Optimization LB = min ( 30 , 28 , 32 , 30 , 23 ) = 23 methods ✎☞ 0 Spatial ✍✌ Branch-and-Bound ✟ ❍❍ y 1 = 1 ✟ y 1 = 0 ✙ ✟ ❍ ❥ Expression trees ✎☞ ✎☞ Convex relaxation 1 4 LB = min ( 35 , 24 , 28 , 24 , 30 ) = 24 Variable ranges ✍✌ ✍✌ Bounds tightening ✟ ❍❍ ✟ y 2 = 1 y 2 = 0 z = 27 ✙ ✟ ❍ ❥ ✎☞ ✎☞ References 2 3 How far can we ✍✌ ✍✌ get? z = 26!!!!!! ∅ Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  31. Specific options for nonconvex MINLPs Claudia D’Ambrosio What is MP? What is a MINLP? Different starting points for root/each node. Subclasses of MINLP Dealing with nonconvexities Global Optimization LB = min ( 30 , 28 , 32 , 30 , 23 ) = 23 methods ✎☞ 0 Spatial ✍✌ Branch-and-Bound ✟ ❍❍ y 1 = 1 ✟ y 1 = 0 ✙ ✟ ❍ ❥ Expression trees ✎☞ ✎☞ Convex relaxation 1 4 LB = min ( 35 , 24 , 28 , 24 , 30 ) = 24 Variable ranges ✍✌ ✍✌ Bounds tightening ✟ ❍❍ ✟ y 2 = 1 y 2 = 0 z = 27 ✙ ✟ ❥ ❍ ✎☞ ✎☞ References 2 3 How far can we ✍✌ ✍✌ get? z = 26!!!!!! ∅ Practical Tools MINLP Solvers Modeling Languages Neos Still not a valid LB! MINLP Libraries Smart Grids

  32. MILP relaxation Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities min γ Global � x − x k Optimization � methods f ( x k , y k ) + ∇ f ( x k , y k ) T ≤ ∀ k γ y − y k Spatial � x − x k Branch-and-Bound � Expression trees g i ( x k , y k ) + ∇ g i ( x k , y k ) T ∀ k ∀ i ∈ I k 0 ≤ Convex relaxation y − y k Variable ranges Bounds tightening x ∈ X References How far can we y ∈ Y . get? Practical Tools where I k ⊆ { 1 , 2 , . . . , m } . MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  33. MILP relaxation Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities min γ Global � x − x k Optimization � methods f ( x k , y k ) + ∇ f ( x k , y k ) T ≤ ∀ k γ y − y k Spatial � x − x k Branch-and-Bound � Expression trees g i ( x k , y k ) + ∇ g i ( x k , y k ) T ∀ k ∀ i ∈ I k 0 ≤ Convex relaxation y − y k Variable ranges Bounds tightening x ∈ X References How far can we y ∈ Y . get? Practical Tools where I k ⊆ { 1 , 2 , . . . , m } . Two “classical” choices: MINLP Solvers Modeling Languages ◮ I k = { 1 , 2 , . . . , m } Neos MINLP Libraries Smart Grids

  34. MILP relaxation Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities min γ Global � x − x k Optimization � methods f ( x k , y k ) + ∇ f ( x k , y k ) T ≤ ∀ k γ y − y k Spatial � x − x k Branch-and-Bound � Expression trees g i ( x k , y k ) + ∇ g i ( x k , y k ) T ∀ k ∀ i ∈ I k 0 ≤ Convex relaxation y − y k Variable ranges Bounds tightening x ∈ X References How far can we y ∈ Y . get? Practical Tools where I k ⊆ { 1 , 2 , . . . , m } . Two “classical” choices: MINLP Solvers Modeling Languages ◮ I k = { 1 , 2 , . . . , m } Neos MINLP Libraries ◮ I k = { i | g ( x k , y k ) > 0 , 1 ≤ i ≤ m } Smart Grids

  35. Outer Approximation and nonconvex MINLPs Claudia D’Ambrosio Several methods for convex MINLPs use Outer What is MP? Approximation cuts (Duran and Grossman, 1986) which What is a MINLP? are not exact for nonconvex MINLPs. Subclasses of MINLP Dealing with nonconvexities Global Optimization methods Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  36. Outer Approximation and nonconvex MINLPs Claudia D’Ambrosio Several methods for convex MINLPs use Outer What is MP? Approximation cuts (Duran and Grossman, 1986) which What is a MINLP? are not exact for nonconvex MINLPs. Subclasses of MINLP Dealing with nonconvexities � x − x k Global � Optimization g ( x , y ) ≤ 0 g i ( x k , y k )+ ∇ g i ( x k , y k ) T ≤ 0 → methods y − y k Spatial Branch-and-Bound where ∇ g ( x k , y k ) is the Jacobian of g ( x , y ) evaluated at Expression trees Convex relaxation the point ( x k , y k ) . Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  37. Outer Approximation and nonconvex MINLPs Claudia D’Ambrosio Several methods for convex MINLPs use Outer What is MP? Approximation cuts (Duran and Grossman, 1986) which What is a MINLP? are not exact for nonconvex MINLPs. Subclasses of MINLP Dealing with nonconvexities � x − x k Global � Optimization g ( x , y ) ≤ 0 g i ( x k , y k )+ ∇ g i ( x k , y k ) T ≤ 0 → methods y − y k Spatial Branch-and-Bound where ∇ g ( x k , y k ) is the Jacobian of g ( x , y ) evaluated at Expression trees Convex relaxation the point ( x k , y k ) . Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  38. Outline Claudia D’Ambrosio What is MP? What is a MINLP? What is MP? Subclasses of MINLP What is a MINLP? Subclasses of MINLP Dealing with nonconvexities Dealing with nonconvexities Global Optimization methods Global Optimization Spatial Branch-and-Bound methods Expression trees Spatial Branch-and-Bound Convex relaxation Expression trees Convex relaxation Variable ranges Variable ranges Bounds tightening Bounds tightening References References How far can we get? How far can we get? Practical Tools Practical Tools MINLP Solvers Modeling Languages MINLP Solvers Neos MINLP Libraries Modeling Languages Smart Grids Neos MINLP Libraries Smart Grids

  39. Global Optimization methods Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities Global Optimization methods Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Exact Bounds tightening Heuristic References ◮ “Exact” in continuous ◮ Find solution with How far can we space: ε -approximate get? probability 1 in ( find solution within Practical Tools infinite time pre-determined ε MINLP Solvers Modeling Languages distance from optimum in Neos obj. fun. value ) MINLP Libraries Smart Grids ◮ For some problems, finite convergence to optimum ( ε = 0)

  40. Outline Claudia D’Ambrosio What is MP? What is a MINLP? What is MP? Subclasses of MINLP What is a MINLP? Subclasses of MINLP Dealing with nonconvexities Dealing with nonconvexities Global Optimization methods Global Optimization Spatial Branch-and-Bound methods Expression trees Spatial Branch-and-Bound Convex relaxation Expression trees Convex relaxation Variable ranges Variable ranges Bounds tightening Bounds tightening References References How far can we get? How far can we get? Practical Tools Practical Tools MINLP Solvers Modeling Languages MINLP Solvers Neos MINLP Libraries Modeling Languages Smart Grids Neos MINLP Libraries Smart Grids

  41. Spatial Branch-and-Bound Claudia D’Ambrosio What is MP? What is a MINLP? Falk and Soland (1969) “An algorithm for separable Subclasses of MINLP nonconvex programming problems”. Dealing with nonconvexities Global Optimization methods Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  42. Spatial Branch-and-Bound Claudia D’Ambrosio What is MP? What is a MINLP? Falk and Soland (1969) “An algorithm for separable Subclasses of MINLP nonconvex programming problems”. Dealing with nonconvexities Global Optimization 20 years ago: first general-purpose “exact” algorithms for methods nonconvex MINLP . Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  43. Spatial Branch-and-Bound Claudia D’Ambrosio What is MP? What is a MINLP? Falk and Soland (1969) “An algorithm for separable Subclasses of MINLP nonconvex programming problems”. Dealing with nonconvexities Global Optimization 20 years ago: first general-purpose “exact” algorithms for methods nonconvex MINLP . Spatial Branch-and-Bound ◮ Tree-like search Expression trees Convex relaxation Variable ranges ◮ Explores search space exhaustively but implicitly Bounds tightening References ◮ Builds a sequence of decreasing upper bounds and How far can we increasing lower bounds to the global optimum get? Practical Tools ◮ Exponential worst-case MINLP Solvers Modeling Languages ◮ Like BB for MILP , but may branch on continuous vars Neos MINLP Libraries Done whenever one is involved in a nonconvex term Smart Grids

  44. Spatial B&B: Example Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities Global Optimization methods Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Original problem P Smart Grids

  45. Spatial B&B: Example Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities Global Optimization methods Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Starting point x ′ Smart Grids

  46. Spatial B&B: Example Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities Global Optimization methods Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Local (upper bounding) solution x ∗ Smart Grids

  47. Spatial B&B: Example Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities Global Optimization methods Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries f with | f ∗ − ¯ Convex relaxation (lower) bound ¯ f | > ε Smart Grids

  48. Spatial B&B: Example Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities Global Optimization methods Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Branch at x = ¯ Smart Grids x into C 1 , C 2

  49. Spatial B&B: Example Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities Global Optimization methods Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Convex relaxation on C 1 : lower bounding solution ¯ x Smart Grids

  50. Spatial B&B: Example Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities Global Optimization methods Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries localSolve . from ¯ x: new upper bounding solution x ∗ Smart Grids

  51. Spatial B&B: Example Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities Global Optimization methods Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries | f ∗ − ¯ f | > ε : branch at x = ¯ x Smart Grids

  52. Spatial B&B: Example Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities Global Optimization methods Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos x = x ∗ and | f ∗ − ¯ Repeat on C 3 : get ¯ MINLP Libraries f | < ε , no more Smart Grids branching

  53. Spatial B&B: Example Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities Global Optimization methods Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries f > f ∗ (can’t improve x ∗ in C 2 ) Repeat on C 2 : ¯ Smart Grids

  54. Spatial B&B: Example Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities Global Optimization methods Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries f > f ∗ (can’t improve x ∗ in C 4 ) Repeat on C 4 : ¯ Smart Grids

  55. Spatial B&B: Example Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities Global Optimization methods Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries No more subproblems left, return x ∗ and terminate Smart Grids

  56. Spatial B&B: Pruning Claudia D’Ambrosio 1. P was branched into C 1 , C 2 What is MP? What is a MINLP? 2. C 1 was branched into C 3 , C 4 Subclasses of MINLP Dealing with nonconvexities 3. C 3 was pruned by optimality Global (x ∗ ∈ G ( C 3 ) was found) Optimization methods 4. C 2 , C 4 were pruned by bound Spatial Branch-and-Bound (lower bound for C 2 worse than f ∗ ) Expression trees Convex relaxation 5. No more nodes: whole space explored, x ∗ ∈ G ( P ) Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  57. Spatial B&B: Pruning Claudia D’Ambrosio 1. P was branched into C 1 , C 2 What is MP? What is a MINLP? 2. C 1 was branched into C 3 , C 4 Subclasses of MINLP Dealing with nonconvexities 3. C 3 was pruned by optimality Global (x ∗ ∈ G ( C 3 ) was found) Optimization methods 4. C 2 , C 4 were pruned by bound Spatial Branch-and-Bound (lower bound for C 2 worse than f ∗ ) Expression trees Convex relaxation 5. No more nodes: whole space explored, x ∗ ∈ G ( P ) Variable ranges Bounds tightening References ◮ Search generates a tree How far can we get? ◮ Suproblems are nodes Practical Tools ◮ Nodes can be pruned by optimality, bound or MINLP Solvers Modeling Languages infeasibility (when subproblem is infeasible) Neos MINLP Libraries ◮ Otherwise, they are branched Smart Grids

  58. Spatial B&B: What is missing? Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities Global Optimization methods 1. For arbitrary C , checking if it is feasible is Spatial Branch-and-Bound undecidable Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  59. Spatial B&B: What is missing? Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities Global Optimization methods 1. For arbitrary C , checking if it is feasible is Spatial Branch-and-Bound undecidable Expression trees Convex relaxation 2. How do we compute a lower bound of C ? Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  60. Spatial B&B: What is missing? Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities Global Optimization methods 1. For arbitrary C , checking if it is feasible is Spatial Branch-and-Bound undecidable Expression trees Convex relaxation 2. How do we compute a lower bound of C ? Variable ranges Bounds tightening 3. How do we compute an upper bound of C ? References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  61. Spatial B&B: Upper bounds Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities Upper bounds : x ∗ can only decrease Global Optimization methods Spatial ◮ Computing the global optima for each subproblem Branch-and-Bound Expression trees yields candidates for updating x ∗ Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  62. Spatial B&B: Upper bounds Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities Upper bounds : x ∗ can only decrease Global Optimization methods Spatial ◮ Computing the global optima for each subproblem Branch-and-Bound Expression trees yields candidates for updating x ∗ Convex relaxation Variable ranges ◮ As long as we only update x ∗ when x ′ improves it, Bounds tightening we don’t need x ′ to be a global optimum References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  63. Spatial B&B: Upper bounds Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities Upper bounds : x ∗ can only decrease Global Optimization methods Spatial ◮ Computing the global optima for each subproblem Branch-and-Bound Expression trees yields candidates for updating x ∗ Convex relaxation Variable ranges ◮ As long as we only update x ∗ when x ′ improves it, Bounds tightening we don’t need x ′ to be a global optimum References How far can we ◮ Any “good feasible point” will do get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  64. Spatial B&B: Upper bounds Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities Upper bounds : x ∗ can only decrease Global Optimization methods Spatial ◮ Computing the global optima for each subproblem Branch-and-Bound Expression trees yields candidates for updating x ∗ Convex relaxation Variable ranges ◮ As long as we only update x ∗ when x ′ improves it, Bounds tightening we don’t need x ′ to be a global optimum References How far can we ◮ Any “good feasible point” will do get? Practical Tools ◮ Specifically, use feasible local optima MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  65. Spatial B&B: Lower bounds Claudia D’Ambrosio What is MP? What is a MINLP? Lower bounds : increase over ⊃ -chains Subclasses of MINLP Dealing with nonconvexities Global Optimization methods Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  66. Spatial B&B: Lower bounds Claudia D’Ambrosio What is MP? What is a MINLP? Lower bounds : increase over ⊃ -chains Subclasses of MINLP Dealing with nonconvexities Global Optimization ◮ Let R P be a relaxation of P such that: methods 1. R P also involves the decision variables of P Spatial Branch-and-Bound ( and perhaps some others ) Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  67. Spatial B&B: Lower bounds Claudia D’Ambrosio What is MP? What is a MINLP? Lower bounds : increase over ⊃ -chains Subclasses of MINLP Dealing with nonconvexities Global Optimization ◮ Let R P be a relaxation of P such that: methods 1. R P also involves the decision variables of P Spatial Branch-and-Bound ( and perhaps some others ) Expression trees 2. for any range I = [ x L , x U ] , Convex relaxation Variable ranges R P [ I ] is a relaxation of P [ I ] Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  68. Spatial B&B: Lower bounds Claudia D’Ambrosio What is MP? What is a MINLP? Lower bounds : increase over ⊃ -chains Subclasses of MINLP Dealing with nonconvexities Global Optimization ◮ Let R P be a relaxation of P such that: methods 1. R P also involves the decision variables of P Spatial Branch-and-Bound ( and perhaps some others ) Expression trees 2. for any range I = [ x L , x U ] , Convex relaxation Variable ranges R P [ I ] is a relaxation of P [ I ] Bounds tightening 3. if I , I ′ are two ranges References How far can we I ⊇ I ′ → min R P [ I ] ≤ min R P [ I ′ ] get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  69. Spatial B&B: Lower bounds Claudia D’Ambrosio What is MP? What is a MINLP? Lower bounds : increase over ⊃ -chains Subclasses of MINLP Dealing with nonconvexities Global Optimization ◮ Let R P be a relaxation of P such that: methods 1. R P also involves the decision variables of P Spatial Branch-and-Bound ( and perhaps some others ) Expression trees 2. for any range I = [ x L , x U ] , Convex relaxation Variable ranges R P [ I ] is a relaxation of P [ I ] Bounds tightening 3. if I , I ′ are two ranges References How far can we I ⊇ I ′ → min R P [ I ] ≤ min R P [ I ′ ] get? 4. For any subproblem C of P , Practical Tools MINLP Solvers finding x ∈ G ( R C ) or showing F ( R C ) = ∅ is efficient Modeling Languages Neos Specifically, ¯ x = localSolve ( R C ) ∈ G ( R C ) MINLP Libraries Smart Grids

  70. Spatial B&B: A decidable feasibility test Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities ◮ Processing C when it’s infeasible will make sBB slower but not incorrect Global Optimization methods Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  71. Spatial B&B: A decidable feasibility test Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities ◮ Processing C when it’s infeasible will make sBB slower but not incorrect Global ◮ ⇒ sBB still works if we simply never discard a potentially feasible C Optimization methods Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  72. Spatial B&B: A decidable feasibility test Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities ◮ Processing C when it’s infeasible will make sBB slower but not incorrect Global ◮ ⇒ sBB still works if we simply never discard a potentially feasible C Optimization methods ◮ Use a “partial feasibility test” isEvidentlyInfeasible ( P ) Spatial Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  73. Spatial B&B: A decidable feasibility test Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities ◮ Processing C when it’s infeasible will make sBB slower but not incorrect Global ◮ ⇒ sBB still works if we simply never discard a potentially feasible C Optimization methods ◮ Use a “partial feasibility test” isEvidentlyInfeasible ( P ) Spatial ◮ If isEvidentlyInfeasible ( C ) is true , then C is Branch-and-Bound Expression trees guaranteed to be infeasible, and we can discard it Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  74. Spatial B&B: A decidable feasibility test Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities ◮ Processing C when it’s infeasible will make sBB slower but not incorrect Global ◮ ⇒ sBB still works if we simply never discard a potentially feasible C Optimization methods ◮ Use a “partial feasibility test” isEvidentlyInfeasible ( P ) Spatial ◮ If isEvidentlyInfeasible ( C ) is true , then C is Branch-and-Bound Expression trees guaranteed to be infeasible, and we can discard it Convex relaxation Variable ranges ◮ Otherwise, we simply don’t know, and we shall Bounds tightening process it References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  75. Spatial B&B: A decidable feasibility test Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities ◮ Processing C when it’s infeasible will make sBB slower but not incorrect Global ◮ ⇒ sBB still works if we simply never discard a potentially feasible C Optimization methods ◮ Use a “partial feasibility test” isEvidentlyInfeasible ( P ) Spatial ◮ If isEvidentlyInfeasible ( C ) is true , then C is Branch-and-Bound Expression trees guaranteed to be infeasible, and we can discard it Convex relaxation Variable ranges ◮ Otherwise, we simply don’t know, and we shall Bounds tightening process it References How far can we ◮ Thm : If R C is infeasible then C is infeasible get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  76. Spatial B&B: A decidable feasibility test Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities ◮ Processing C when it’s infeasible will make sBB slower but not incorrect Global ◮ ⇒ sBB still works if we simply never discard a potentially feasible C Optimization methods ◮ Use a “partial feasibility test” isEvidentlyInfeasible ( P ) Spatial ◮ If isEvidentlyInfeasible ( C ) is true , then C is Branch-and-Bound Expression trees guaranteed to be infeasible, and we can discard it Convex relaxation Variable ranges ◮ Otherwise, we simply don’t know, and we shall Bounds tightening process it References How far can we ◮ Thm : If R C is infeasible then C is infeasible get? Practical Tools ◮ Proof : ∅ = F ( R C ) ⊇ F ( C ) = ∅ MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  77. Tricks Claudia D’Ambrosio What is MP? What is a MINLP? Subclasses of MINLP Dealing with nonconvexities Global Optimization methods Spatial Branch-and-Bound To make an sBB work efficiently, you need further tricks Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  78. Expression trees Claudia D’Ambrosio What is MP? Representation of objective f and constraints g What is a MINLP? Subclasses of MINLP Encode mathematical expressions in trees or DAGs Dealing with nonconvexities Global Optimization methods E.g. x 2 Spatial 1 + x 1 x 2 : Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  79. Expression trees Claudia D’Ambrosio What is MP? Representation of objective f and constraints g What is a MINLP? Subclasses of MINLP Encode mathematical expressions in trees or DAGs Dealing with nonconvexities Global Optimization methods E.g. x 2 Spatial 1 + x 1 x 2 : Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening + References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  80. Expression trees Claudia D’Ambrosio What is MP? Representation of objective f and constraints g What is a MINLP? Subclasses of MINLP Encode mathematical expressions in trees or DAGs Dealing with nonconvexities Global Optimization methods E.g. x 2 Spatial 1 + x 1 x 2 : Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening + References ✟ ❍❍ ✟ How far can we ✟ ❍ get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  81. Expression trees Claudia D’Ambrosio What is MP? Representation of objective f and constraints g What is a MINLP? Subclasses of MINLP Encode mathematical expressions in trees or DAGs Dealing with nonconvexities Global Optimization methods E.g. x 2 Spatial 1 + x 1 x 2 : Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening + References ✟ ❍❍ ✟ How far can we ✟ ❍ get? ˆ Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  82. Expression trees Claudia D’Ambrosio What is MP? Representation of objective f and constraints g What is a MINLP? Subclasses of MINLP Encode mathematical expressions in trees or DAGs Dealing with nonconvexities Global Optimization methods E.g. x 2 Spatial 1 + x 1 x 2 : Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening + References ✟ ❍❍ ✟ How far can we ✟ ❍ get? ∗ ˆ Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

  83. Expression trees Claudia D’Ambrosio What is MP? Representation of objective f and constraints g What is a MINLP? Subclasses of MINLP Encode mathematical expressions in trees or DAGs Dealing with nonconvexities Global Optimization methods E.g. x 2 Spatial 1 + x 1 x 2 : Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening + References ✟ ❍❍ ✟ How far can we ✟ ❍ get? ∗ ˆ Practical Tools ✟ ❍❍ ✟ ❍❍ ✟ ✟ MINLP Solvers Modeling Languages x 1 2 x 1 x 2 Neos MINLP Libraries Smart Grids

  84. Expression trees Claudia D’Ambrosio What is MP? Representation of objective f and constraints g What is a MINLP? Subclasses of MINLP Encode mathematical expressions in trees or DAGs Dealing with nonconvexities Global Optimization methods E.g. x 2 Spatial 1 + x 1 x 2 : Branch-and-Bound Expression trees Convex relaxation Variable ranges Bounds tightening + References How far can we get? Practical Tools MINLP Solvers Modeling Languages Neos MINLP Libraries Smart Grids

Recommend


More recommend