Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Linear Programming Supplements (Optional). 2 Standard Form LP (a.k.a. First Primal Form) Strictly ≤ All x j 's are non-negative.

Similar presentations


Presentation on theme: "1 Linear Programming Supplements (Optional). 2 Standard Form LP (a.k.a. First Primal Form) Strictly ≤ All x j 's are non-negative."— Presentation transcript:

1 1 Linear Programming Supplements (Optional)

2 2 Standard Form LP (a.k.a. First Primal Form) Strictly ≤ All x j 's are non-negative

3 3 Transforming Problems into Standard Form Min c T x  Max - c T x Max ( c T x + constant)  Max c T x Replace a constraint like ∑a ij x j ≥ b i by -∑a ij x j ≤ -b i Replace a constraint like ∑a ij x j = b i by ∑a ij x j ≤ b i and -∑a ij x j ≤ -b i If x j is allowed to take on negative value, replace x i by the difference of two nonnegative variables, says x i = u i – v i, where u i ≥ 0 and v i ≥ 0.

4 4 Example of transforming a problem into Standard Form Replace x 1 by u 1 – v 1

5 5 Dual Problem Every primal LP problem in the form Maximize c T x subject to Ax ≤ b, x ≥ 0 has a corresponding dual problem in the form Minimize b T y subject to A T y ≥ c, y ≥ 0 Theorem on Primal and Dual Problems If x satisfies the constraints of the primal problem and y satisfies the constraints of its dual, then c T x ≤ b T y. Consequently, if c T x = b T y, then x and y are solutions of the primal problem and the dual problem respectively.

6 6 Dual Problem Duality Theorem If the original problem has a solution x *, then the dual problem has a solution y * ; furthermore, c T x * = b T y *. If the original primal problem contains much more constraints than variables (i.e., m >> n ), then solving the dual problem may be more efficient. (Less constraints implies less corner points to check) The dual problem also offers a different interpretation of the problem (Maximize profit == Minimize cost)

7 7 MATLAB LP solver – linprog() Partial help manual generated by MATLAB: X=LINPROG(f,A,b) attempts to solve the linear programming problem: min f'*x subject to: A*x <= b x X=LINPROG(f,A,b,Aeq,beq) solves the problem above while additionally satisfying the equality constraints Aeq*x = beq. X=LINPROG(f,A,b,Aeq,beq,LB,UB) defines a set of lower and upper bounds on the design variables, X, so that the solution is in the range LB <= X <= UB. Use empty matrices for LB and UB if no bounds exist. Set LB(i) = -Inf if X(i) is unbounded below; set UB(i) = Inf if X(i) is unbounded above. X=LINPROG(f,A,b,Aeq,beq,LB,UB,X0) sets the starting point to X0. This option is only available with the active-set algorithm. The default interior point algorithm will ignore any non-empty starting point. …

8 8 MATLAB example % Turn into minimization problem c = [ -150 -175 ]'; A = [ 7 11; 10 8; 1 0; 0 1 ]; b = [77 80 9 6]'; LB = [0 0]'; % There is no equality constraints xmin = linprog(c, A, b, [], [], LB) Optimization terminated. xmin = 4.8889 3.8889

9 9 Integer LP Problem If the variables can only take integer values, we cannot take the integers closest to the solution of the corresponding LP problem as the solution. Integer Programming (IP) or Integer Linear Programming (ILP) problems are NP-hard problems. –Some of the algorithm for solving IP problems include branch-and-bound, branch-and-cut.


Download ppt "1 Linear Programming Supplements (Optional). 2 Standard Form LP (a.k.a. First Primal Form) Strictly ≤ All x j 's are non-negative."

Similar presentations


Ads by Google