

Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Instructions for implementing the feasible direction method and interior point method for solving linear programming problems using matlab. Students are required to write matlab functions for both methods, using given parameters and initial feasible points. The document also includes testing instructions and grading criteria.
Typology: Assignments
1 / 2
This page cannot be seen from the preview
Don't miss anything!


AMSC 607 / CMSC 764 Fall 2006 HMWK 3: Due November 2
Show all work. All work must be your own (i.e., no group efforts are allowed). If you use a reference book, cite it, or you will lose credit!
In this homework you will program a feasible direction method and an interior point method for solving linear programming problems
minx cT^ x
Ax = b x ≥ 0
where x ∈ Rn^ and b ∈ Rm^ with m < n. Assume a constraint qualification.
The feasible direction method. For this method, see the feasible direction notes, pp.6-8. This is the simplex method except that we allow iterates that are not vertices of the feasible set. Write a Matlab function xopt = lpfeasdir(A,b,c,x). The parameters to your feasible direction algorithm are A, b, c, and an initial feasible point x.
The IPM. For this method, see the LP-IPM notes, pp. 9-10. Write a Matlab function xopt = lpipm(A,b,c,x,y,z,eta). The parameters to your IPM are A, b, c, a convergence tolerance η, and an initial feasible point x, y, z.
Stop the iteration when the duality gap is less than η. Use qr to solve the least squares problem (or linear system) at each iteration. Test your algorithms on the problem
min −x 1 − 2 x 2 − 2 x 1 + x 2 + x 3 = 2 −x 1 + 2x 2 + x 4 = 7 x 1 + 2x 2 + x 5 = 3 x 1 , x 2 , x 3 , x 4 , x 5 ≥ 0
Start the feasible direction algorithm at the point [0, 0 , 2 , 7 , 3]T^. For the IPM, start at the point x = [. 5 ,. 5 , 2. 5 , 6. 5 , 1 .5]T^ , y = [− 1 , − 1 , −5]T^ , z = [1, 11 , 1 , 1 , 5]T^. (Check that these starting points satisfy the required condi- tions.) For each algorithm, print your sequence of iterates and the value of cT^ x at each iteration.
Grading: 50 points total.
Note. Let A and B be matrices, and let c be a vector. Make sure you understand why the statements A(Bc) and A \ (Bc) take much less time than AB*c and A \ B * c, and then use this knowledge in your programming.