Presentation is loading. Please wait.

Presentation is loading. Please wait.

EE 458 Introduction to Optimization

Similar presentations


Presentation on theme: "EE 458 Introduction to Optimization"— Presentation transcript:

1 EE 458 Introduction to Optimization
J. McCalley

2 Electricity markets and tools
Day-ahead Real-time SCED SCUC and SCED BOTH LOOK LIKE THIS SCUC: x contains discrete & continuous variables. SCED: x contains only continuous variables. Minimize f(x) subject to h(x)=c g(x)< b

3 Optimization Terminology
An optimization problem or a mathematical program or a mathematical programming problem. Minimize f(x) subject to h(x)=c g(x)< b f(x): Objective function x: Decision variables h(x)=c: Equality constraint g(x)< b: Inequality constraint x*: solution

4 Classification of Optimization Problems
Continuous Optimization Unconstrained Optimization Bound Constrained Optimization Derivative-Free Optimization Global Optimization Linear Programming Network Flow Problems Nondifferentiable Optimization Nonlinear Programming Optimization of Dynamic Systems Quadratic Constrained Quadratic Programming Quadratic Programming Second Order Cone Programming Semidefinite Programming Semiinfinite Programming Discrete and Integer Optimization Combinatorial Optimization Traveling Salesman Problem Integer Programming Mixed Integer Linear Programming Mixed Integer Nonlinear Programming Optimization Under Uncertainty Robust Optimization Stochastic Programming Simulation/Noisy Optimization Stochastic Algorithms Complementarity Constraints and Variational Inequalities Complementarity Constraints Game Theory Linear Complementarity Problems Mathematical Programs with Complementarity Constraints Nonlinear Complementarity Problems Systems of Equations Data Fitting/Robust Estimation Nonlinear Equations Nonlinear Least Squares Systems of Inequalities Multiobjective Optimization

5 Convex functions Definition #1: A function f(x) is convex in an interval if its second derivative is positive on that interval. Example: f(x)=x2 is convex since f’(x)=2x, f’’(x)=2>0

6 Convex functions The second derivative test is sufficient but not necessary. Definition #2: A function f(x) is convex if a line drawn between any two points on the function remains on or above the function in the interval between the two points.

7 Convex functions Definition #2: A function f(x) is convex if a line drawn between any two points on the function remains on or above the function in the interval between the two points. Is a linear function convex? Answer is “yes” since a line drawn between any two points on the function remains on the function.

8 Convex Sets Definition #3: A set C is convex if a line segment between any two points in C lies in C. Ex: Which of the below are convex sets? The set on the left is convex. The set on the right is not.

9 Convex Sets Definition #3: A set C is convex if a line segment between any two points in C lies in C. S. Boyd and L. Vandenberghe, “Convex optimization,” Cambridge University Press, 2004.

10 Global vs. local optima Example: Solve the following: Minimize f(x)=x2
Solution: f’(x)=2x=0x*=0. This solution is a local optimum. It is also the global optimum. Example: Solve the following: Minimize f(x)=x3-17x2+80x-100 Solution: f’(x)=3x2-34x+80=0 Solving the above results in x=3.33 and x=8. Issue#1: Which is the best solution? Issue#2: Is the best solution the global solution?

11 Global vs. local optima Example: Solve the following: Minimize f(x)=x2
Solution: f’(x)=2x=0x*=0. This solution is a local optimum. It is also the global optimum. Example: Solve the following: Minimize f(x)=x3-17x2+80x-100 Solution: f’(x)=3x2-34x+80=0 Solving the above results in x=3.33 and x=8. Issue#1: Which is the best solution? Issue#2: Is the best solution the global solution?

12 Global vs. local optima Example: Solve the following:
Minimize f(x)=x3-17x2+80x-100 Solution: f’(x)=3x2-34x+80=0. Solving results in x=3.33, x=8. Issue#1: Which is the best solution? x=8 Issue#2: Is the best solution the global solution? No! It is unbounded.

13 Convexity & global vs. local optima
When minimizing a function, if we want to be sure that we can get a global solution via differentiation, we need to impose some requirements on our objective function. We will also need to impose some requirements on the set of possible values that the solution x* may take. Min f(x) subject to h(x)=c g(x)< b Definition: If f(x) is a convex function, and if S is a convex set, then the above problem is a convex programming problem. Definition: If f(x) is not a convex function, or if S is not a convex set, then the above problem is a non-convex programming problem.

14 Convex vs. nonconvex programming problems
MATHEMATICAL PROGRAMMING The desirable quality of a convex programming problem is that any locally optimal solution is also a globally optimal solution. If we have a method of finding a locally optimal solution, that method also finds for us the globally optimum solution. Convex We address convex programming problems for the remainder of these notes, and beyond. The undesirable quality of a non-convex programming problem is that any method which finds a locally optimal solution does not necessarily find the globally optimum solution. Non-convex We will later address a special form of non-convex programming problems.

15 A convex programming problem
We focus on this one, but conclusions we derive will also apply to the other two. The benefit of focusing on this one is that we can visualize it. Two variables with one equality-constraint Multi-variable with one equality-constraint. Multi-variable with multiple equality-constraints.

16 Contour maps Definition: A contour map is a 2-dimensional plane, i.e., a coordinate system in 2 variables, say, x1, x2, that illustrates curves (contours) of constant functional value f(x1, x2). . Example: Draw the contour map for [X,Y] = meshgrid(-2.0:.2:2.0,-2.0:.2:2.0); Z = X.^2+Y.^2; [c,h]=contour(X,Y,Z); clabel(c,h); grid; xlabel('x1'); ylabel('x2');

17 Contour maps and 3-D illustrations
. Example: Draw the 3-D surface for [X,Y] = meshgrid(-2.0:.2:2.0,-2.0:.2:2.0); Z = X.^2+Y.^2; surfc(X,Y,Z) xlabel('x1') ylabel('x2') zlabel('f(x1,x2)') Height is f(x) Contours Each contour of fixed value f is the projection onto the x1-x2 plane of a horizontal slice made of the 3-D figure at a value f above the x1-x2 plane.

18 Solving a convex program: graphical analysis
. Example: Solve this convex program: Superimpose this relation on top of the contour plot for f(x1,x2). 1. f(x1,x2) must be minimized, and so we would like the solution to be as close to the origin as possible; 2. The solution must be on the thick line in the right-hand corner of the plot, since this line represents the equality constraint.

19 Solving a convex program: graphical analysis
. Solution: Any contour f<3 does not intersect the equality constraint; Any contour f>3 intersects the equality constraint at two points. The contour f=3 and the equality constraint just touch each other at the point x*. “Just touch”: The two curves are tangent to one another at the solution point.

20 Solving a convex program: graphical analysis
The two curves are tangent to one another at the solution point. .  The normal (gradient) vectors of the two curves, at the solution (tangent) point, are parallel. This means the following two vectors are parallel: “Parallel” means that the two vectors have the same direction. We do not know that they have the same magnitude. To account for this, we equate with a “multiplier” λ:

21 Solving a convex program: graphical analysis
. Moving everything to the left: Alternately: Performing the gradient operation (taking derivatives with respect to x1 and x2) : In this problem, we already know the solution, but what if we did not? Then could we use the above equations to find the solution?

22 Solving a convex program: analytical analysis
In this problem, we already know the solution, but what if we did not? Then could we use the above equations to find the solution? NO! Because we only have 2 equations, yet 3 unknowns: x1, x2, λ. So we need another equation. Where do we get that equation? Recall our equality constraint: h(x1, x2)-c=0 . This must be satisfied! Therefore: Three equations, three unknowns, we can solve.

23 Solving a convex program: analytical analysis
Observation: The three equations are simply partial derivatives of the function This is obviously true for the first two equations , but it is not so obviously true for the last one. But to see it, observe

24 Formal approach to solving our problem
Define the Lagrangian function: In a convex programming problem, the “first-order conditions” for finding the solution is given by OR Or more compactly where we have used x=(x1, x2)

25 Formal approach to solving our problem
Define the Lagrangian function: In a convex programming problem, the “first-order conditions” for finding the solution is given by OR Or more compactly where we have used x=(x1, x2)


Download ppt "EE 458 Introduction to Optimization"

Similar presentations


Ads by Google