6.854 Advanced Algorithms

Size: px
Start display at page:

Download "6.854 Advanced Algorithms"

Transcription

1 6.854 Advanced Algorithms Homework 5 Solutions 1 10 pts Define the following sets: P = positions on the results page C = clicked old results U = unclicked old results N = new results and let π : (C U) P map old results to their positions in the old list. Also let v i (N, j) be the value of placing the j th new result in position i and let v i (O, j) be the value of placing the j th old result in position i Then define the network G = (V, E) with edge capacities and costs as follows: V = {s, t, x, y, z} C U N P E = {(s, x), (s, y), (s, z), (z, y)} {x} C {y} N {z} U (C N U) P P {t} C (i, j) = (s, x) k (i, j) = (s, y) u(i, j) = n C k (i, j) = (s, z) or (z, y) 1 otherwise v i (O, j) p π(i),j (i, j) (C U) P c(i, j) = v i (N, j) (i, j) N P 0 otherwise. An integer min-cost max-flow of this graph corresponds to a solution to our problem. Grading Note: Don t be picky if they weren t very precise on their notation for v i since the original question was worded a bit poorly. 1

2 2 10 pts Assume that we are given graph G = (V, E) with source s and sink t. We will solve both parts by modifying G slightly and solving a min cost maximum flow on the modified graph. Specifically, start by computing the max-flow of G. Let M be the value of the maxflow. Construct a graph G on which a min-cost max-flow algorithm produces the required minimum-cost flow. Graph G = (V, E ) is constructed from G such that V = V {s } and E = E {(s, s), (s, t)}. The source of G is s and the sink is still t. The edge (s, s) has capacity M and cost 0, and forces the min-cost, max-flow algorithm to send M units of flow through the remaining graph. (s, t) serves as a short cut from s to t that bi-passes G. (a) 5 pts The edge (s, t) has capacity M/10 and cost 0 and therefore allows at most 10% of the flow to bypass the original graph. Recall that s is the source of G and allows at most M units of flow to s. The max-flow value of G is therefore M, but the flow in its subgraph G can be in the range [9M/10, M]. We can thus establish a one-to-one mapping from a feasible 90% flow in G to a flow in G with same cost. So we compute the min-cost max-flow of G and look for the required minimum cost flow in its subgraph G. (b) 5 pts In this case, the edge (s, t) has capacity M and cost K. Again, we have a one-to-one mapping from a feasible flow in G to a flow in G with same cost. We compute the min-cost flow of G and extract the required flow from subgraph G. Our algorithms on require a single call to a max flow algorithm on G and a single call to min cost max flow algorithm on G, which will run asymptotically as fast as a min cost max flow algorithm on G. For (b) there s the minor caveat that we might incur a logarithmic cost on K if we apply the weakly polynomial time analysis of Goldberg-Tarjan to G. However, it s easy to check that, if K > nc, then we won t use the auxiliary edge at all in a min cost max flow. Accordingly, the number of iterations in Goldberg-Tarjan is at most O (mn log((nc) 2 )) = O (mn log(nc)). Grading Note: Don t take off points if they don t mention this issue. It s enough to just assert that min cost max flow runs quickly on G (especially considering that Goldberg-Tarjan can be shown to actually run in strongly polynomial time). 2

3 3 10 pts (a) 2 pts e C e C 1/u(e) = = H(C) e C H (C) e C 1/u(e) H (C) e C 1 + H (C) e C,e bottleneck edge 1/u(e) H (C) e C The last step follows from noting that H (C) e C is negative and that e C,e bottleneck edge 1/u(e) is positive. (b) 5 pts We can obtain f by adding negative cost cycles C 1, C 2,... C l to f with (positive) weights w 1, w 2,..., w l. Then we can write: Cost(f ) Cost(f) = w w l. e C 1 e C l Additionally, w 1 1/u(e) w l 1/u(e) u(e)/u(e) = m e C 1 e C l e since the total weight of the cycles that an edge is included in cannot exceed that edges capacity. We combine both equations to see that, Cost(f ) Cost(f) w 1 e C w l e C l m w 1 e C 1 1/u(e) w l e C l 1/u(e) Cost(f) Cost(f ) m w 1 e C w l e C l w 1 e C 1 1/u(e) w l e C l 1/u(e) w i e C i w i e C i 1/u(e) for some i in 1,..., l. This follows from the fact that for positive n 1,..., n l and positive d 1,..., d l, there is always some i such that n i d i n 1+n n l d 1 +d d l. Grading Note: They can also use directly that, when the n 1,..., n l s are negative, there is always some i such that n i d i n 1+n n l d 1 +d d l. Both of these facts were posted as hints on Piazza so don t need to be proven. We conclude that e C i e C i 1/u(e) Cost(f ) Cost(f) m for C i. The same must be true for our chosen cycle since it is optimal by definition. Combining with the inequality from part (a) gives the result. 3

4 (c) 3 pts We want to keep canceling cycles until Cost(f) Cost(f ) = 1. After that, we ll finish on the next cycle cancel. By part (b), each time we cancel a cycle, Cost(f) Cost(f ) reduces to ( 1 m) 1 (Cost(f) Cost(f )), so after q cycle cancels, Cost(f) Cost(f ) has reduced by a factor of ( q. 1 m) 1 Let U be the maximum capacity in in our graph and let Z be the maximum cost. Setting q = O(m log(uzm)) ensures that ( 1 m) 1 q 1. UZm Since Cost(f) Cost(f ) is at most UZm to begin with, it follows that after q iterations Cost(f) Cost(f ) < 1, as required. 4

5 4 10 pts (a) 5 pts Let us write R = P Q as a set of inequalities: ( A R = {x : D ) x ( ) b } e If R is empty, by Farkas s lemma we have that there exists a w 0 such that w ( T A D) = 0 but w ( ) ( T b e < 0. Write w = y ) z with y having as many entries as the number of columns in A. Then the statement follows because w ( ) T A D = y T A + z T D and w ( ) T b e = y T b + z T e. (b) 5 pts Let c T = y T A. Then, for any vector x in P : since Ax b and z is non-negative. For any vector w in Q: c T x = y T Ax y T b c T w = y T Aw = z T Dw z T e since Dw e and y is non-negative. From part (a) we know that y T b < z T e, so piecing everything together: c T x y T b < z T e c T w. 5

6 5 10 pts (a) 5 pts Let o be the minimum mean cost of a cycle in H. We first claim that o min(minmeancost). Suppose o is the cost of a cycle C. Set x(u, v) = 1 for every (u, v) C and 0 otherwise. C The constraints of the LP are clearly satisfied. Specifically, circles conserve flow (constraint one) and x(u, v) = C 1 = 1. Furthermore, the objective value of the solution based on C C is: c(u, v)x(u, v) = c(u, v) 1 C = o u,v (u,v) C So, for every cycle, there is a solution to the LP with objective value equal to the cycle s mean cost. Accordingly, the optimal solution to the LP can only be less than or equal to the mean cost of any cycle i.e. o. Next we claim that min(minmeancost) o. Specifically, given any solution to our LP with cost t we will show how to exhibit a cycle C with minimum cost t. For a given solution to the LP, consider the circulation Cir with flow x(u, v) on edge (u, v). We know that Cir is a valid circulation because the first constraint of the linear program enforces flow conservation at every node v. Decompose the circulation into cycles, C 1,..., C l with corresponding flows w 1,..., w l. x(u, v) = i:(u,v) C i w i. Each w i here is a positive number. Accordingly, x(u, v) = u,v l (u,v) C i w i = l C i w i By our constraints, u,v x(u, v) = 1 so it must be that l C i w i is equal 1. Additionally, we can write the objective value of our solution as: l c(u, v)w i = (u,v) C i = l w i c(u, v) (u,v) C i l C i w i c(u, v) 1 C i. (u,v) C i The final form is simply a weighted average of the mean costs for C 1,..., C l since l C i w i = 1. If this average has value t, it must be that one of the cycles has mean cost t, which gives the result. (b) 3 pts Grading note: There are a number of ways to find the dual of MinMeanCost. I ll give one approach, but try to be fairly loose on the grading here if they get the correct answer 6

7 but don t show much work. There are readily available rule books for converting to dual form and it s fine if something like that was used black-box. I m showing way more work here than necessary. Let s start by writing the LP in matrix form. Specifically, let c be a vector containing each c(u, v), x be a vector containing each x(u, v), and b be a vector with its first V positions set to 0 and its last position set to 1. A is a matrix with width E it has a column for every edge in H. For i V, the i th row of A encodes the flow conservation constraint for node v. Specifically, it contains a 1 in the position corresponding to each edge (u, v) into v and a 1 in the position for each edge (v, u) out of v. The last row of A encodes the u,v x(u, v) = 1 constraint and so is simply the all ones vector. So, our program can be written as: min c T x such that: Ax = b x 0 Grading note: Notice that this is a minimization problem so this isn t exactly the version of standard form we saw in class. However, solving this program is equivalent to solving max c T x such that: Ax = b x 0 although our final optimum value with be negated. So we can just apply the usual dual formulation (given in class): which is equivalent to solving Final Dual: This is in turn equivalent to: min y T b such that: y T A c T min y T b such that: y T A c T. max y T b such that: y T A c T which is the dual formulation I expect a lot of students to get, especially if they used rule books. Now, note that y T b is simply equal to the final value of y because only the last entry of b is nonzero. Lets call this value s. 7

8 Consider the column of A corresponding to edge (u, v). In this column, the u th entry is equal to 1, the v th entry is equal to 1 and the final entry is equal to 1. Everything else is 0. So, to ensure that y T A c T for this column specifically, it must be that: y u y v + s c(u, v) c(u, v) + y v y u s c(u, v) ( y v ) + ( y u ) s where y u and y v denote the u th and v th entries of y. If we let y v and y u correspond to p(v) and p(u) from our formulation of Goldberg- Tarjan, the dual linear program is asking us to find the maximum value of y T b = s such that, for every edge, c(u, v) p(v) + p(u) s. By definition ɛ is exactly the solution to this optimization problem. (c) 2 pts This just follows from strong duality. From part (a) we know that the primal is feasible whenever there s a remaining negative cost cycle in H. Primal feasibility is all that s needed for strong duality to hold. 8

Lecture #21. c T x Ax b. maximize subject to

Lecture #21. c T x Ax b. maximize subject to COMPSCI 330: Design and Analysis of Algorithms 11/11/2014 Lecture #21 Lecturer: Debmalya Panigrahi Scribe: Samuel Haney 1 Overview In this lecture, we discuss linear programming. We first show that the

More information

CS 6820 Fall 2014 Lectures, October 3-20, 2014

CS 6820 Fall 2014 Lectures, October 3-20, 2014 Analysis of Algorithms Linear Programming Notes CS 6820 Fall 2014 Lectures, October 3-20, 2014 1 Linear programming The linear programming (LP) problem is the following optimization problem. We are given

More information

BBM402-Lecture 20: LP Duality

BBM402-Lecture 20: LP Duality BBM402-Lecture 20: LP Duality Lecturer: Lale Özkahya Resources for the presentation: https://courses.engr.illinois.edu/cs473/fa2016/lectures.html An easy LP? which is compact form for max cx subject to

More information

The Simplex Algorithm

The Simplex Algorithm 8.433 Combinatorial Optimization The Simplex Algorithm October 6, 8 Lecturer: Santosh Vempala We proved the following: Lemma (Farkas). Let A R m n, b R m. Exactly one of the following conditions is true:.

More information

Topic: Primal-Dual Algorithms Date: We finished our discussion of randomized rounding and began talking about LP Duality.

Topic: Primal-Dual Algorithms Date: We finished our discussion of randomized rounding and began talking about LP Duality. CS787: Advanced Algorithms Scribe: Amanda Burton, Leah Kluegel Lecturer: Shuchi Chawla Topic: Primal-Dual Algorithms Date: 10-17-07 14.1 Last Time We finished our discussion of randomized rounding and

More information

CS261: Problem Set #3

CS261: Problem Set #3 CS261: Problem Set #3 Due by 11:59 PM on Tuesday, February 23, 2016 Instructions: (1) Form a group of 1-3 students. You should turn in only one write-up for your entire group. (2) Submission instructions:

More information

Discrete Optimization

Discrete Optimization Prof. Friedrich Eisenbrand Martin Niemeier Due Date: April 15, 2010 Discussions: March 25, April 01 Discrete Optimization Spring 2010 s 3 You can hand in written solutions for up to two of the exercises

More information

Review Solutions, Exam 2, Operations Research

Review Solutions, Exam 2, Operations Research Review Solutions, Exam 2, Operations Research 1. Prove the weak duality theorem: For any x feasible for the primal and y feasible for the dual, then... HINT: Consider the quantity y T Ax. SOLUTION: To

More information

- Well-characterized problems, min-max relations, approximate certificates. - LP problems in the standard form, primal and dual linear programs

- Well-characterized problems, min-max relations, approximate certificates. - LP problems in the standard form, primal and dual linear programs LP-Duality ( Approximation Algorithms by V. Vazirani, Chapter 12) - Well-characterized problems, min-max relations, approximate certificates - LP problems in the standard form, primal and dual linear programs

More information

Technische Universität München, Zentrum Mathematik Lehrstuhl für Angewandte Geometrie und Diskrete Mathematik. Combinatorial Optimization (MA 4502)

Technische Universität München, Zentrum Mathematik Lehrstuhl für Angewandte Geometrie und Diskrete Mathematik. Combinatorial Optimization (MA 4502) Technische Universität München, Zentrum Mathematik Lehrstuhl für Angewandte Geometrie und Diskrete Mathematik Combinatorial Optimization (MA 4502) Dr. Michael Ritter Problem Sheet 1 Homework Problems Exercise

More information

Today: Linear Programming (con t.)

Today: Linear Programming (con t.) Today: Linear Programming (con t.) COSC 581, Algorithms April 10, 2014 Many of these slides are adapted from several online sources Reading Assignments Today s class: Chapter 29.4 Reading assignment for

More information

Duality of LPs and Applications

Duality of LPs and Applications Lecture 6 Duality of LPs and Applications Last lecture we introduced duality of linear programs. We saw how to form duals, and proved both the weak and strong duality theorems. In this lecture we will

More information

C&O 355 Mathematical Programming Fall 2010 Lecture 18. N. Harvey

C&O 355 Mathematical Programming Fall 2010 Lecture 18. N. Harvey C&O 355 Mathematical Programming Fall 2010 Lecture 18 N. Harvey Network Flow Topics Max Flow / Min Cut Theorem Total Unimodularity Directed Graphs & Incidence Matrices Proof of Max Flow / Min Cut Theorem

More information

princeton univ. F 13 cos 521: Advanced Algorithm Design Lecture 17: Duality and MinMax Theorem Lecturer: Sanjeev Arora

princeton univ. F 13 cos 521: Advanced Algorithm Design Lecture 17: Duality and MinMax Theorem Lecturer: Sanjeev Arora princeton univ F 13 cos 521: Advanced Algorithm Design Lecture 17: Duality and MinMax Theorem Lecturer: Sanjeev Arora Scribe: Today we first see LP duality, which will then be explored a bit more in the

More information

Week 4. (1) 0 f ij u ij.

Week 4. (1) 0 f ij u ij. Week 4 1 Network Flow Chapter 7 of the book is about optimisation problems on networks. Section 7.1 gives a quick introduction to the definitions of graph theory. In fact I hope these are already known

More information

Lecture 3. 1 Polynomial-time algorithms for the maximum flow problem

Lecture 3. 1 Polynomial-time algorithms for the maximum flow problem ORIE 633 Network Flows August 30, 2007 Lecturer: David P. Williamson Lecture 3 Scribe: Gema Plaza-Martínez 1 Polynomial-time algorithms for the maximum flow problem 1.1 Introduction Let s turn now to considering

More information

x 1 + x 2 2 x 1 x 2 1 x 2 2 min 3x 1 + 2x 2

x 1 + x 2 2 x 1 x 2 1 x 2 2 min 3x 1 + 2x 2 Lecture 1 LPs: Algebraic View 1.1 Introduction to Linear Programming Linear programs began to get a lot of attention in 1940 s, when people were interested in minimizing costs of various systems while

More information

Understanding the Simplex algorithm. Standard Optimization Problems.

Understanding the Simplex algorithm. Standard Optimization Problems. Understanding the Simplex algorithm. Ma 162 Spring 2011 Ma 162 Spring 2011 February 28, 2011 Standard Optimization Problems. A standard maximization problem can be conveniently described in matrix form

More information

Lecture 13: Polynomial-Time Algorithms for Min Cost Flows. (Reading: AM&O Chapter 10)

Lecture 13: Polynomial-Time Algorithms for Min Cost Flows. (Reading: AM&O Chapter 10) Lecture 1: Polynomial-Time Algorithms for Min Cost Flows (Reading: AM&O Chapter 1) Polynomial Algorithms for Min Cost Flows Improvements on the two algorithms for min cost flow: Successive Shortest Path

More information

Problem set 1. (c) Is the Ford-Fulkerson algorithm guaranteed to produce an acyclic maximum flow?

Problem set 1. (c) Is the Ford-Fulkerson algorithm guaranteed to produce an acyclic maximum flow? CS261, Winter 2017. Instructor: Ashish Goel. Problem set 1 Electronic submission to Gradescope due 11:59pm Thursday 2/2. Form a group of 2-3 students that is, submit one homework with all of your names.

More information

Homework Assignment 4 Solutions

Homework Assignment 4 Solutions MTAT.03.86: Advanced Methods in Algorithms Homework Assignment 4 Solutions University of Tartu 1 Probabilistic algorithm Let S = {x 1, x,, x n } be a set of binary variables of size n 1, x i {0, 1}. Consider

More information

III. Linear Programming

III. Linear Programming III. Linear Programming Thomas Sauerwald Easter 2017 Outline Introduction Standard and Slack Forms Formulating Problems as Linear Programs Simplex Algorithm Finding an Initial Solution III. Linear Programming

More information

Minimum cost transportation problem

Minimum cost transportation problem Minimum cost transportation problem Complements of Operations Research Giovanni Righini Università degli Studi di Milano Definitions The minimum cost transportation problem is a special case of the minimum

More information

6.854J / J Advanced Algorithms Fall 2008

6.854J / J Advanced Algorithms Fall 2008 MIT OpenCourseWare http://ocw.mit.edu 6.854J / 18.415J Advanced Algorithms Fall 2008 For information about citing these materials or our Terms of Use, visit: http://ocw.mit.edu/terms. 18.415/6.854 Advanced

More information

Linear Programming Duality

Linear Programming Duality Summer 2011 Optimization I Lecture 8 1 Duality recap Linear Programming Duality We motivated the dual of a linear program by thinking about the best possible lower bound on the optimal value we can achieve

More information

Relation of Pure Minimum Cost Flow Model to Linear Programming

Relation of Pure Minimum Cost Flow Model to Linear Programming Appendix A Page 1 Relation of Pure Minimum Cost Flow Model to Linear Programming The Network Model The network pure minimum cost flow model has m nodes. The external flows given by the vector b with m

More information

Farkas Lemma, Dual Simplex and Sensitivity Analysis

Farkas Lemma, Dual Simplex and Sensitivity Analysis Summer 2011 Optimization I Lecture 10 Farkas Lemma, Dual Simplex and Sensitivity Analysis 1 Farkas Lemma Theorem 1. Let A R m n, b R m. Then exactly one of the following two alternatives is true: (i) x

More information

An example of LP problem: Political Elections

An example of LP problem: Political Elections Linear Programming An example of LP problem: Political Elections Suppose that you are a politician trying to win an election. Your district has three different types of areas: urban, suburban, and rural.

More information

Theory and Internet Protocols

Theory and Internet Protocols Game Lecture 2: Linear Programming and Zero Sum Nash Equilibrium Xiaotie Deng AIMS Lab Department of Computer Science Shanghai Jiaotong University September 26, 2016 1 2 3 4 Standard Form (P) Outline

More information

Lesson 27 Linear Programming; The Simplex Method

Lesson 27 Linear Programming; The Simplex Method Lesson Linear Programming; The Simplex Method Math 0 April 9, 006 Setup A standard linear programming problem is to maximize the quantity c x + c x +... c n x n = c T x subject to constraints a x + a x

More information

Advanced Linear Programming: The Exercises

Advanced Linear Programming: The Exercises Advanced Linear Programming: The Exercises The answers are sometimes not written out completely. 1.5 a) min c T x + d T y Ax + By b y = x (1) First reformulation, using z smallest number satisfying x z

More information

15-850: Advanced Algorithms CMU, Fall 2018 HW #4 (out October 17, 2018) Due: October 28, 2018

15-850: Advanced Algorithms CMU, Fall 2018 HW #4 (out October 17, 2018) Due: October 28, 2018 15-850: Advanced Algorithms CMU, Fall 2018 HW #4 (out October 17, 2018) Due: October 28, 2018 Usual rules. :) Exercises 1. Lots of Flows. Suppose you wanted to find an approximate solution to the following

More information

Chapter 1 Review of Equations and Inequalities

Chapter 1 Review of Equations and Inequalities Chapter 1 Review of Equations and Inequalities Part I Review of Basic Equations Recall that an equation is an expression with an equal sign in the middle. Also recall that, if a question asks you to solve

More information

Algorithmic Game Theory and Applications. Lecture 7: The LP Duality Theorem

Algorithmic Game Theory and Applications. Lecture 7: The LP Duality Theorem Algorithmic Game Theory and Applications Lecture 7: The LP Duality Theorem Kousha Etessami recall LP s in Primal Form 1 Maximize c 1 x 1 + c 2 x 2 +... + c n x n a 1,1 x 1 + a 1,2 x 2 +... + a 1,n x n

More information

Combinatorial Optimization

Combinatorial Optimization Combinatorial Optimization 2017-2018 1 Maximum matching on bipartite graphs Given a graph G = (V, E), find a maximum cardinal matching. 1.1 Direct algorithms Theorem 1.1 (Petersen, 1891) A matching M is

More information

Mathematical Programs Linear Program (LP)

Mathematical Programs Linear Program (LP) Mathematical Programs Linear Program (LP) Integer Program (IP) Can be efficiently solved e.g., by Ellipsoid Method Cannot be efficiently solved Cannot be efficiently solved assuming P NP Combinatorial

More information

Spring 2017 CO 250 Course Notes TABLE OF CONTENTS. richardwu.ca. CO 250 Course Notes. Introduction to Optimization

Spring 2017 CO 250 Course Notes TABLE OF CONTENTS. richardwu.ca. CO 250 Course Notes. Introduction to Optimization Spring 2017 CO 250 Course Notes TABLE OF CONTENTS richardwu.ca CO 250 Course Notes Introduction to Optimization Kanstantsin Pashkovich Spring 2017 University of Waterloo Last Revision: March 4, 2018 Table

More information

Example Problem. Linear Program (standard form) CSCI5654 (Linear Programming, Fall 2013) Lecture-7. Duality

Example Problem. Linear Program (standard form) CSCI5654 (Linear Programming, Fall 2013) Lecture-7. Duality CSCI5654 (Linear Programming, Fall 013) Lecture-7 Duality Lecture 7 Slide# 1 Lecture 7 Slide# Linear Program (standard form) Example Problem maximize c 1 x 1 + + c n x n s.t. a j1 x 1 + + a jn x n b j

More information

CS173 Lecture B, November 3, 2015

CS173 Lecture B, November 3, 2015 CS173 Lecture B, November 3, 2015 Tandy Warnow November 3, 2015 CS 173, Lecture B November 3, 2015 Tandy Warnow Announcements Examlet 7 is a take-home exam, and is due November 10, 11:05 AM, in class.

More information

Use the Rational Zero Theorem to list all the possible rational zeros of the following polynomials. (1-2) 4 3 2

Use the Rational Zero Theorem to list all the possible rational zeros of the following polynomials. (1-2) 4 3 2 Name: Math 114 Activity 1(Due by EOC Apr. 17) Dear Instructor or Tutor, These problems are designed to let my students show me what they have learned and what they are capable of doing on their own. Please

More information

Lecture Notes 3: Duality

Lecture Notes 3: Duality Algorithmic Methods 1/11/21 Professor: Yossi Azar Lecture Notes 3: Duality Scribe:Moran Bar-Gat 1 Introduction In this lecture we will present the dual concept, Farkas s Lema and their relation to the

More information

Linear Programming Redux

Linear Programming Redux Linear Programming Redux Jim Bremer May 12, 2008 The purpose of these notes is to review the basics of linear programming and the simplex method in a clear, concise, and comprehensive way. The book contains

More information

Math 16 - Practice Final

Math 16 - Practice Final Math 16 - Practice Final May 28th 2007 Name: Instructions 1. In Part A, attempt every question. In Part B, attempt two of the five questions. If you attempt more you will only receive credit for your best

More information

Lecture 6: Lies, Inner Product Spaces, and Symmetric Matrices

Lecture 6: Lies, Inner Product Spaces, and Symmetric Matrices Math 108B Professor: Padraic Bartlett Lecture 6: Lies, Inner Product Spaces, and Symmetric Matrices Week 6 UCSB 2014 1 Lies Fun fact: I have deceived 1 you somewhat with these last few lectures! Let me

More information

1 Primals and Duals: Zero Sum Games

1 Primals and Duals: Zero Sum Games CS 124 Section #11 Zero Sum Games; NP Completeness 4/15/17 1 Primals and Duals: Zero Sum Games We can represent various situations of conflict in life in terms of matrix games. For example, the game shown

More information

Lecture: Flow-based Methods for Partitioning Graphs (1 of 2)

Lecture: Flow-based Methods for Partitioning Graphs (1 of 2) Stat260/CS294: Spectral Graph Methods Lecture 10-02/24/2015 Lecture: Flow-based Methods for Partitioning Graphs (1 of 2) Lecturer: Michael Mahoney Scribe: Michael Mahoney Warning: these notes are still

More information

Algorithms and Theory of Computation. Lecture 11: Network Flow

Algorithms and Theory of Computation. Lecture 11: Network Flow Algorithms and Theory of Computation Lecture 11: Network Flow Xiaohui Bei MAS 714 September 18, 2018 Nanyang Technological University MAS 714 September 18, 2018 1 / 26 Flow Network A flow network is a

More information

CS261: A Second Course in Algorithms Lecture #8: Linear Programming Duality (Part 1)

CS261: A Second Course in Algorithms Lecture #8: Linear Programming Duality (Part 1) CS261: A Second Course in Algorithms Lecture #8: Linear Programming Duality (Part 1) Tim Roughgarden January 28, 2016 1 Warm-Up This lecture begins our discussion of linear programming duality, which is

More information

TRANSPORTATION PROBLEMS

TRANSPORTATION PROBLEMS Chapter 6 TRANSPORTATION PROBLEMS 61 Transportation Model Transportation models deal with the determination of a minimum-cost plan for transporting a commodity from a number of sources to a number of destinations

More information

CS261: A Second Course in Algorithms Lecture #12: Applications of Multiplicative Weights to Games and Linear Programs

CS261: A Second Course in Algorithms Lecture #12: Applications of Multiplicative Weights to Games and Linear Programs CS26: A Second Course in Algorithms Lecture #2: Applications of Multiplicative Weights to Games and Linear Programs Tim Roughgarden February, 206 Extensions of the Multiplicative Weights Guarantee Last

More information

CS264: Beyond Worst-Case Analysis Lecture #18: Smoothed Complexity and Pseudopolynomial-Time Algorithms

CS264: Beyond Worst-Case Analysis Lecture #18: Smoothed Complexity and Pseudopolynomial-Time Algorithms CS264: Beyond Worst-Case Analysis Lecture #18: Smoothed Complexity and Pseudopolynomial-Time Algorithms Tim Roughgarden March 9, 2017 1 Preamble Our first lecture on smoothed analysis sought a better theoretical

More information

Algebra Exam. Solutions and Grading Guide

Algebra Exam. Solutions and Grading Guide Algebra Exam Solutions and Grading Guide You should use this grading guide to carefully grade your own exam, trying to be as objective as possible about what score the TAs would give your responses. Full

More information

CSC373: Algorithm Design, Analysis and Complexity Fall 2017 DENIS PANKRATOV NOVEMBER 1, 2017

CSC373: Algorithm Design, Analysis and Complexity Fall 2017 DENIS PANKRATOV NOVEMBER 1, 2017 CSC373: Algorithm Design, Analysis and Complexity Fall 2017 DENIS PANKRATOV NOVEMBER 1, 2017 Linear Function f: R n R is linear if it can be written as f x = a T x for some a R n Example: f x 1, x 2 =

More information

Linear Programming. Jie Wang. University of Massachusetts Lowell Department of Computer Science. J. Wang (UMass Lowell) Linear Programming 1 / 47

Linear Programming. Jie Wang. University of Massachusetts Lowell Department of Computer Science. J. Wang (UMass Lowell) Linear Programming 1 / 47 Linear Programming Jie Wang University of Massachusetts Lowell Department of Computer Science J. Wang (UMass Lowell) Linear Programming 1 / 47 Linear function: f (x 1, x 2,..., x n ) = n a i x i, i=1 where

More information

Motivating examples Introduction to algorithms Simplex algorithm. On a particular example General algorithm. Duality An application to game theory

Motivating examples Introduction to algorithms Simplex algorithm. On a particular example General algorithm. Duality An application to game theory Instructor: Shengyu Zhang 1 LP Motivating examples Introduction to algorithms Simplex algorithm On a particular example General algorithm Duality An application to game theory 2 Example 1: profit maximization

More information

16.1 Min-Cut as an LP

16.1 Min-Cut as an LP 600.469 / 600.669 Approximation Algorithms Lecturer: Michael Dinitz Topic: LPs as Metrics: Min Cut and Multiway Cut Date: 4//5 Scribe: Gabriel Kaptchuk 6. Min-Cut as an LP We recall the basic definition

More information

CS264: Beyond Worst-Case Analysis Lecture #15: Smoothed Complexity and Pseudopolynomial-Time Algorithms

CS264: Beyond Worst-Case Analysis Lecture #15: Smoothed Complexity and Pseudopolynomial-Time Algorithms CS264: Beyond Worst-Case Analysis Lecture #15: Smoothed Complexity and Pseudopolynomial-Time Algorithms Tim Roughgarden November 5, 2014 1 Preamble Previous lectures on smoothed analysis sought a better

More information

(P ) Minimize 4x 1 + 6x 2 + 5x 3 s.t. 2x 1 3x 3 3 3x 2 2x 3 6

(P ) Minimize 4x 1 + 6x 2 + 5x 3 s.t. 2x 1 3x 3 3 3x 2 2x 3 6 The exam is three hours long and consists of 4 exercises. The exam is graded on a scale 0-25 points, and the points assigned to each question are indicated in parenthesis within the text. Problem 1 Consider

More information

1 Adjacency matrix and eigenvalues

1 Adjacency matrix and eigenvalues CSC 5170: Theory of Computational Complexity Lecture 7 The Chinese University of Hong Kong 1 March 2010 Our objective of study today is the random walk algorithm for deciding if two vertices in an undirected

More information

4. Duality Duality 4.1 Duality of LPs and the duality theorem. min c T x x R n, c R n. s.t. ai Tx = b i i M a i R n

4. Duality Duality 4.1 Duality of LPs and the duality theorem. min c T x x R n, c R n. s.t. ai Tx = b i i M a i R n 2 4. Duality of LPs and the duality theorem... 22 4.2 Complementary slackness... 23 4.3 The shortest path problem and its dual... 24 4.4 Farkas' Lemma... 25 4.5 Dual information in the tableau... 26 4.6

More information

ORF 363/COS 323 Final Exam, Fall 2018

ORF 363/COS 323 Final Exam, Fall 2018 Name: Princeton University ORF 363/COS 323 Final Exam, Fall 2018 January 16, 2018 Instructor: A.A. Ahmadi AIs: Dibek, Duan, Gong, Khadir, Mirabelli, Pumir, Tang, Yu, Zhang 1. Please write out and sign

More information

Solving recurrences. Frequently showing up when analysing divide&conquer algorithms or, more generally, recursive algorithms.

Solving recurrences. Frequently showing up when analysing divide&conquer algorithms or, more generally, recursive algorithms. Solving recurrences Frequently showing up when analysing divide&conquer algorithms or, more generally, recursive algorithms Example: Merge-Sort(A, p, r) 1: if p < r then 2: q (p + r)/2 3: Merge-Sort(A,

More information

Maximum flow problem CE 377K. February 26, 2015

Maximum flow problem CE 377K. February 26, 2015 Maximum flow problem CE 377K February 6, 05 REVIEW HW due in week Review Label setting vs. label correcting Bellman-Ford algorithm Review MAXIMUM FLOW PROBLEM Maximum Flow Problem What is the greatest

More information

10725/36725 Optimization Homework 2 Solutions

10725/36725 Optimization Homework 2 Solutions 10725/36725 Optimization Homework 2 Solutions 1 Convexity (Kevin) 1.1 Sets Let A R n be a closed set with non-empty interior that has a supporting hyperplane at every point on its boundary. (a) Show that

More information

5 Flows and cuts in digraphs

5 Flows and cuts in digraphs 5 Flows and cuts in digraphs Recall that a digraph or network is a pair G = (V, E) where V is a set and E is a multiset of ordered pairs of elements of V, which we refer to as arcs. Note that two vertices

More information

Critical Reading of Optimization Methods for Logical Inference [1]

Critical Reading of Optimization Methods for Logical Inference [1] Critical Reading of Optimization Methods for Logical Inference [1] Undergraduate Research Internship Department of Management Sciences Fall 2007 Supervisor: Dr. Miguel Anjos UNIVERSITY OF WATERLOO Rajesh

More information

CS264: Beyond Worst-Case Analysis Lecture #11: LP Decoding

CS264: Beyond Worst-Case Analysis Lecture #11: LP Decoding CS264: Beyond Worst-Case Analysis Lecture #11: LP Decoding Tim Roughgarden October 29, 2014 1 Preamble This lecture covers our final subtopic within the exact and approximate recovery part of the course.

More information

EE364a Review Session 5

EE364a Review Session 5 EE364a Review Session 5 EE364a Review announcements: homeworks 1 and 2 graded homework 4 solutions (check solution to additional problem 1) scpd phone-in office hours: tuesdays 6-7pm (650-723-1156) 1 Complementary

More information

1 Introduction. 2 Solving Linear Equations

1 Introduction. 2 Solving Linear Equations 1 Introduction This essay introduces some new sets of numbers. Up to now, the only sets of numbers (algebraic systems) we know is the set Z of integers with the two operations + and and the system R of

More information

Minimum Cost Flow Algorithms

Minimum Cost Flow Algorithms 4 Minimum Cost Flow Algorithms Assumption 4.1 In this chapter we will always use G =(V,R,,!) to denote a finite graph and l, c be real-valued functions which assign lower and upper capacities to the arcs

More information

CPSC 320 (Intermediate Algorithm Design and Analysis). Summer Instructor: Dr. Lior Malka Final Examination, July 24th, 2009

CPSC 320 (Intermediate Algorithm Design and Analysis). Summer Instructor: Dr. Lior Malka Final Examination, July 24th, 2009 CPSC 320 (Intermediate Algorithm Design and Analysis). Summer 2009. Instructor: Dr. Lior Malka Final Examination, July 24th, 2009 Student ID: INSTRUCTIONS: There are 6 questions printed on pages 1 7. Exam

More information

Fall 2017 Qualifier Exam: OPTIMIZATION. September 18, 2017

Fall 2017 Qualifier Exam: OPTIMIZATION. September 18, 2017 Fall 2017 Qualifier Exam: OPTIMIZATION September 18, 2017 GENERAL INSTRUCTIONS: 1 Answer each question in a separate book 2 Indicate on the cover of each book the area of the exam, your code number, and

More information

Lecture 9 Tuesday, 4/20/10. Linear Programming

Lecture 9 Tuesday, 4/20/10. Linear Programming UMass Lowell Computer Science 91.503 Analysis of Algorithms Prof. Karen Daniels Spring, 2010 Lecture 9 Tuesday, 4/20/10 Linear Programming 1 Overview Motivation & Basics Standard & Slack Forms Formulating

More information

3.2 Constructible Numbers

3.2 Constructible Numbers 102 CHAPTER 3. SYMMETRIES 3.2 Constructible Numbers Armed with a straightedge, a compass and two points 0 and 1 marked on an otherwise blank number-plane, the game is to see which complex numbers you can

More information

Lecture 15 (Oct 6): LP Duality

Lecture 15 (Oct 6): LP Duality CMPUT 675: Approximation Algorithms Fall 2014 Lecturer: Zachary Friggstad Lecture 15 (Oct 6): LP Duality Scribe: Zachary Friggstad 15.1 Introduction by Example Given a linear program and a feasible solution

More information

Flows. Chapter Circulations

Flows. Chapter Circulations Chapter 4 Flows For a directed graph D = (V,A), we define δ + (U) := {(u,v) A : u U,v / U} as the arcs leaving U and δ (U) := {(u,v) A u / U,v U} as the arcs entering U. 4. Circulations In a directed graph

More information

Network Flow Problems Luis Goddyn, Math 408

Network Flow Problems Luis Goddyn, Math 408 Network Flow Problems Luis Goddyn, Math 48 Let D = (V, A) be a directed graph, and let s, t V (D). For S V we write δ + (S) = {u A : u S, S} and δ (S) = {u A : u S, S} for the in-arcs and out-arcs of S

More information

min 4x 1 5x 2 + 3x 3 s.t. x 1 + 2x 2 + x 3 = 10 x 1 x 2 6 x 1 + 3x 2 + x 3 14

min 4x 1 5x 2 + 3x 3 s.t. x 1 + 2x 2 + x 3 = 10 x 1 x 2 6 x 1 + 3x 2 + x 3 14 The exam is three hours long and consists of 4 exercises. The exam is graded on a scale 0-25 points, and the points assigned to each question are indicated in parenthesis within the text. If necessary,

More information

1 T 1 = where 1 is the all-ones vector. For the upper bound, let v 1 be the eigenvector corresponding. u:(u,v) E v 1(u)

1 T 1 = where 1 is the all-ones vector. For the upper bound, let v 1 be the eigenvector corresponding. u:(u,v) E v 1(u) CME 305: Discrete Mathematics and Algorithms Instructor: Reza Zadeh (rezab@stanford.edu) Final Review Session 03/20/17 1. Let G = (V, E) be an unweighted, undirected graph. Let λ 1 be the maximum eigenvalue

More information

Flows and Cuts. 1 Concepts. CS 787: Advanced Algorithms. Instructor: Dieter van Melkebeek

Flows and Cuts. 1 Concepts. CS 787: Advanced Algorithms. Instructor: Dieter van Melkebeek CS 787: Advanced Algorithms Flows and Cuts Instructor: Dieter van Melkebeek This lecture covers the construction of optimal flows and cuts in networks, their relationship, and some applications. It paves

More information

Quadratic Equations Part I

Quadratic Equations Part I Quadratic Equations Part I Before proceeding with this section we should note that the topic of solving quadratic equations will be covered in two sections. This is done for the benefit of those viewing

More information

Calculus II. Calculus II tends to be a very difficult course for many students. There are many reasons for this.

Calculus II. Calculus II tends to be a very difficult course for many students. There are many reasons for this. Preface Here are my online notes for my Calculus II course that I teach here at Lamar University. Despite the fact that these are my class notes they should be accessible to anyone wanting to learn Calculus

More information

Math 8 Notes Units 1B: One-Step Equations and Inequalities

Math 8 Notes Units 1B: One-Step Equations and Inequalities Math 8 Notes Units 1B: One-Step Equations and Inequalities Solving Equations Syllabus Objective: (1.10) The student will use order of operations to solve equations in the real number system. Equation a

More information

Algorithms: Lecture 12. Chalmers University of Technology

Algorithms: Lecture 12. Chalmers University of Technology Algorithms: Lecture 1 Chalmers University of Technology Today s Topics Shortest Paths Network Flow Algorithms Shortest Path in a Graph Shortest Path Problem Shortest path network. Directed graph G = (V,

More information

arxiv: v2 [math.co] 24 May 2018

arxiv: v2 [math.co] 24 May 2018 An approximate version of a conjecture of Aharoni and Berger arxiv:1609.06346v2 [math.co] 24 May 2018 Alexey Pokrovskiy ETH Zürich. May 28, 2018 Abstract Aharoni and Berger conjectured that in every proper

More information

Integer Programming (IP)

Integer Programming (IP) Integer Programming (IP) An LP problem with an additional constraint that variables will only get an integral value, maybe from some range. BIP binary integer programming: variables should be assigned

More information

ACO Comprehensive Exam March 17 and 18, Computability, Complexity and Algorithms

ACO Comprehensive Exam March 17 and 18, Computability, Complexity and Algorithms 1. Computability, Complexity and Algorithms (a) Let G(V, E) be an undirected unweighted graph. Let C V be a vertex cover of G. Argue that V \ C is an independent set of G. (b) Minimum cardinality vertex

More information

Robust Network Codes for Unicast Connections: A Case Study

Robust Network Codes for Unicast Connections: A Case Study Robust Network Codes for Unicast Connections: A Case Study Salim Y. El Rouayheb, Alex Sprintson, and Costas Georghiades Department of Electrical and Computer Engineering Texas A&M University College Station,

More information

CS261: A Second Course in Algorithms Lecture #9: Linear Programming Duality (Part 2)

CS261: A Second Course in Algorithms Lecture #9: Linear Programming Duality (Part 2) CS261: A Second Course in Algorithms Lecture #9: Linear Programming Duality (Part 2) Tim Roughgarden February 2, 2016 1 Recap This is our third lecture on linear programming, and the second on linear programming

More information

"SYMMETRIC" PRIMAL-DUAL PAIR

SYMMETRIC PRIMAL-DUAL PAIR "SYMMETRIC" PRIMAL-DUAL PAIR PRIMAL Minimize cx DUAL Maximize y T b st Ax b st A T y c T x y Here c 1 n, x n 1, b m 1, A m n, y m 1, WITH THE PRIMAL IN STANDARD FORM... Minimize cx Maximize y T b st Ax

More information

conp = { L L NP } (1) This problem is essentially the same as SAT because a formula is not satisfiable if and only if its negation is a tautology.

conp = { L L NP } (1) This problem is essentially the same as SAT because a formula is not satisfiable if and only if its negation is a tautology. 1 conp and good characterizations In these lecture notes we discuss a complexity class called conp and its relationship to P and NP. This discussion will lead to an interesting notion of good characterizations

More information

Math 300: Final Exam Practice Solutions

Math 300: Final Exam Practice Solutions Math 300: Final Exam Practice Solutions 1 Let A be the set of all real numbers which are zeros of polynomials with integer coefficients: A := {α R there exists p(x) = a n x n + + a 1 x + a 0 with all a

More information

16.1 L.P. Duality Applied to the Minimax Theorem

16.1 L.P. Duality Applied to the Minimax Theorem CS787: Advanced Algorithms Scribe: David Malec and Xiaoyong Chai Lecturer: Shuchi Chawla Topic: Minimax Theorem and Semi-Definite Programming Date: October 22 2007 In this lecture, we first conclude our

More information

A Review of Linear Programming

A Review of Linear Programming A Review of Linear Programming Instructor: Farid Alizadeh IEOR 4600y Spring 2001 February 14, 2001 1 Overview In this note we review the basic properties of linear programming including the primal simplex

More information

Lectures 6, 7 and part of 8

Lectures 6, 7 and part of 8 Lectures 6, 7 and part of 8 Uriel Feige April 26, May 3, May 10, 2015 1 Linear programming duality 1.1 The diet problem revisited Recall the diet problem from Lecture 1. There are n foods, m nutrients,

More information

The min cost flow problem Course notes for Search and Optimization Spring 2004

The min cost flow problem Course notes for Search and Optimization Spring 2004 The min cost flow problem Course notes for Search and Optimization Spring 2004 Peter Bro Miltersen February 20, 2004 Version 1.3 1 Definition of the min cost flow problem We shall consider a generalization

More information

Linear Programming Duality P&S Chapter 3 Last Revised Nov 1, 2004

Linear Programming Duality P&S Chapter 3 Last Revised Nov 1, 2004 Linear Programming Duality P&S Chapter 3 Last Revised Nov 1, 2004 1 In this section we lean about duality, which is another way to approach linear programming. In particular, we will see: How to define

More information

Integer-Valued Polynomials

Integer-Valued Polynomials Integer-Valued Polynomials LA Math Circle High School II Dillon Zhi October 11, 2015 1 Introduction Some polynomials take integer values p(x) for all integers x. The obvious examples are the ones where

More information

Week 8. 1 LP is easy: the Ellipsoid Method

Week 8. 1 LP is easy: the Ellipsoid Method Week 8 1 LP is easy: the Ellipsoid Method In 1979 Khachyan proved that LP is solvable in polynomial time by a method of shrinking ellipsoids. The running time is polynomial in the number of variables n,

More information

directed weighted graphs as flow networks the Ford-Fulkerson algorithm termination and running time

directed weighted graphs as flow networks the Ford-Fulkerson algorithm termination and running time Network Flow 1 The Maximum-Flow Problem directed weighted graphs as flow networks the Ford-Fulkerson algorithm termination and running time 2 Maximum Flows and Minimum Cuts flows and cuts max flow equals

More information