C&O 355 Mathematical Programming Fall 2010 Lecture 22 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A.

Slides:



Advertisements
Similar presentations
Introduction to Algorithms 6.046J/18.401J/SMA5503
Advertisements

Iterative Rounding and Iterative Relaxation
The Primal-Dual Method: Steiner Forest TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A AA A A A AA A A.
1 LP, extended maxflow, TRW OR: How to understand Vladimirs most recent work Ramin Zabih Cornell University.
C&O 355 Lecture 22 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A A A A A A A A.
C&O 355 Lecture 15 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A A A A A A.
Min-Max Relations, Hall’s Theorem, and Matching-Algorithms Graphs & Algorithms Lecture 5 TexPoint fonts used in EMF. Read the TexPoint manual before you.
C&O 355 Lecture 8 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A.
C&O 355 Lecture 9 N. Harvey TexPoint fonts used in EMF.
C&O 355 Lecture 23 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A A A A A A A A.
1 LP Duality Lecture 13: Feb Min-Max Theorems In bipartite graph, Maximum matching = Minimum Vertex Cover In every graph, Maximum Flow = Minimum.
1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.
Totally Unimodular Matrices
Introduction to Algorithms
C&O 355 Lecture 4 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A.
C&O 355 Mathematical Programming Fall 2010 Lecture 20 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A.
C&O 355 Mathematical Programming Fall 2010 Lecture 21 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A.
C&O 355 Mathematical Programming Fall 2010 Lecture 15 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A.
C&O 355 Lecture 20 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A A A A A A A A.
C&O 355 Lecture 12 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A A A A A A A A.
CS38 Introduction to Algorithms Lecture 15 May 20, CS38 Lecture 15.
Totally Unimodular Matrices Lecture 11: Feb 23 Simplex Algorithm Elliposid Algorithm.
Semidefinite Programming
1 Introduction to Linear and Integer Programming Lecture 9: Feb 14.
Introduction to Linear and Integer Programming Lecture 7: Feb 1.
Primal Dual Method Lecture 20: March 28 primaldual restricted primal restricted dual y z found x, succeed! Construct a better dual.
Approximation Algorithm: Iterative Rounding Lecture 15: March 9.
A general approximation technique for constrained forest problems Michael X. Goemans & David P. Williamson Presented by: Yonatan Elhanani & Yuval Cohen.
Approximation Algorithms
Matching Polytope, Stable Matching Polytope Lecture 8: Feb 2 x1 x2 x3 x1 x2 x3.
Linear Programming – Max Flow – Min Cut Orgad Keller.
1 Spanning Tree Polytope x1 x2 x3 Lecture 11: Feb 21.
C&O 355 Mathematical Programming Fall 2010 Lecture 17 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A.
C&O 355 Mathematical Programming Fall 2010 Lecture 1 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A.
C&O 355 Lecture 2 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A.
V. V. Vazirani. Approximation Algorithms Chapters 3 & 22
C&O 355 Mathematical Programming Fall 2010 Lecture 2 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A.
C&O 355 Mathematical Programming Fall 2010 Lecture 19 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A.
Approximating Minimum Bounded Degree Spanning Tree (MBDST) Mohit Singh and Lap Chi Lau “Approximating Minimum Bounded DegreeApproximating Minimum Bounded.
C&O 355 Mathematical Programming Fall 2010 Lecture 4 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A.
Approximation Algorithms Department of Mathematics and Computer Science Drexel University.
Theory of Computing Lecture 13 MAS 714 Hartmut Klauck.
C&O 355 Mathematical Programming Fall 2010 Lecture 18 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A.
TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A A A A A A Image:
Hon Wai Leong, NUS (CS6234, Spring 2009) Page 1 Copyright © 2009 by Leong Hon Wai CS6234: Lecture 4  Linear Programming  LP and Simplex Algorithm [PS82]-Ch2.
Introduction to Graph Theory
C&O 355 Mathematical Programming Fall 2010 Lecture 16 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A.
C&O 355 Mathematical Programming Fall 2010 Lecture 5 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A.
Hon Wai Leong, NUS (CS6234, Spring 2009) Page 1 Copyright © 2009 by Leong Hon Wai CS6234: Lecture 4  Linear Programming  LP and Simplex Algorithm [PS82]-Ch2.
C&O 355 Lecture 7 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A.
CPSC 536N Sparse Approximations Winter 2013 Lecture 1 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAA.
Lecture.6. Table of Contents Lp –rounding Dual Fitting LP-Duality.
C&O 355 Lecture 24 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A A A A A A.
Number of primal and dual bases of network flow and unimodular integer programs Hiroki NAKAYAMA 1, Takayuki ISHIZEKI 2, Hiroshi IMAI 1 The University of.
C&O 355 Lecture 19 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A A A A A A A A.
TU/e Algorithms (2IL15) – Lecture 12 1 Linear Programming.
Approximation Algorithms Duality My T. UF.
Approximation Algorithms based on linear programming.
TU/e Algorithms (2IL15) – Lecture 12 1 Linear Programming.
Lap Chi Lau we will only use slides 4 to 19
Chap 10. Sensitivity Analysis
Topics in Algorithms Lap Chi Lau.
Chapter 5. Optimal Matchings
1.3 Modeling with exponentially many constr.
Analysis of Algorithms
Linear Programming and Approximation
Problem Solving 4.
1.3 Modeling with exponentially many constr.
Flow Feasibility Problems
Presentation transcript:

C&O 355 Mathematical Programming Fall 2010 Lecture 22 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A A A A A A A A

Topics Kruskal’s Algorithm for the Max Weight Spanning Tree Problem Vertices of the Spanning Tree Polytope

Review of Lecture 21 Defined spanning tree polytope where ∙ (C) = # connected components in (V,C). We showed, for any spanning tree T, its characteristic vector is in P ST. We showed how to optimize over P ST in polynomial time by the ellipsoid method, even though there are exponentially many constraints – This is a bit complicated: it uses the Min s-t Cut problem as a separation oracle. P ST =

How to solve combinatorial IPs? (From Lecture 17) Two common approaches 1.Design combinatorial algorithm that directly solves IP Often such algorithms have a nice LP interpretation 2.Relax IP to an LP; prove that they give same solution; solve LP by the ellipsoid method Need to show special structure of the LP’s extreme points Sometimes we can analyze the extreme points combinatorially Sometimes we can use algebraic structure of the constraints. For example, if constraint matrix is Totally Unimodular then IP and LP are equivalent Perfect Matching Max Flow, Max Matching TODAY

Kruskal’s Algorithm Let G = (V,E) be a connected graph, n=|V|, m=|E| Edges are weighted: w e 2 R for every e 2 E We will show: Claim: When this algorithm adds an edge to T, no cycle is created. Claim: At the end of the algorithm, T is connected. Theorem: This algorithm outputs a maximum-cost spanning tree. Order E as (e 1,..., e m ), where w e1 ¸ w e2 ¸... ¸ w em Initially T = ; For i=1,...,m If the ends of e i are in different components of (V,T) Add e i to T

Kruskal’s Algorithm Let G = (V,E) be a connected graph, n=|V|, m=|E| Edges are weighted: w e 2 R for every e 2 E Order E as (e 1,..., e m ), where w e1 ¸ w e2 ¸... ¸ w em Initially T = ; For i=1,...,m If the ends of e i are in different components of (V,T) Add e i to T

Claim: When this algorithm adds an edge to T, no cycle is created. Proof: Let e i = {u,v}. T [ {e i } contains a cycle iff there is a path from u to v in (V,T). Order E as (e 1,..., e m ), where w e1 ¸ w e2 ¸... ¸ w em Initially T = ; For i=1,...,m If the ends of e i are in different components of (V,T) Add e i to T eiei u v

Claim: When this algorithm adds an edge to T, no cycle is created. Proof: Let e i = {u,v}. T [ {e i } contains a cycle iff there is a path from u to v in (V,T). Since e i only added when u and v are in different components, no such path exists. Therefore (V,T) is acyclic throughout the algorithm. ¥ Order E as (e 1,..., e m ), where w e1 ¸ w e2 ¸... ¸ w em Initially T = ; For i=1,...,m If the ends of e i are in different components of (V,T) Add e i to T eiei u v

Claim: At the end of the algorithm, T is connected. Proof: Suppose not. Then there are vertices u and v in different components of (V,T). Order E as (e 1,..., e m ), where w e1 ¸ w e2 ¸... ¸ w em Initially T = ; For i=1,...,m If the ends of e i are in different components of (V,T) Add e i to T u v

Claim: At the end of the algorithm, T is connected. Proof: Suppose not. Then there are vertices u and v in different components of (V,T). Since G is connected, there is a u-v path P in G. Some edge e 2 P must connect different components of (V,T). When the algorithm considered e, it would have added it. ¥ Order E as (e 1,..., e m ), where w e1 ¸ w e2 ¸... ¸ w em Initially T = ; For i=1,...,m If the ends of e i are in different components of (V,T) Add e i to T u v e 3

We have shown: Claim: When this algorithm adds an edge to T, no cycle is created. Claim: At the end of the algorithm, T is connected. So T is an acyclic, connected subgraph, i.e., a spanning tree. We will show: Theorem: This algorithm outputs a maximum-cost spanning tree. Our Analysis So Far Order E as (e 1,..., e m ), where w e1 ¸ w e2 ¸... ¸ w em Initially T = ; For i=1,...,m If the ends of e i are in different components of (V,T) Add e i to T

Main Theorem In fact, we will show a stronger fact: Theorem: Let x be the characteristic vector of T at end of algorithm. Then x is an optimal solution of max { w T x : x 2 P ST }, where P ST is the spanning tree polytope: P ST = Order E as (e 1,..., e m ), where w e1 ¸ w e2 ¸... ¸ w em Initially T = ; For i=1,...,m If the ends of e i are in different components of (V,T) Add e i to T

Optimal LP Solutions We saw last time that the characteristic vector of any spanning tree is feasible for P ST. We will modify Kruskal’s Algorithm to output a feasible dual solution as well. These primal & dual solutions will satisfy the complementary slackness conditions, and hence both are optimal. The dual of max { w T x : x 2 P ST } is

Complementary Slackness Conditions (From Lecture 5) PrimalDual Objectivemax c T xmin b T y Variablesx 1, …, x n y 1,…, y m Constraint matrixAATAT Right-hand vectorbc Constraints versus Variables i th constraint: · i th constraint: ¸ i th constraint: = x j ¸ 0 x j · 0 x j unrestricted y i ¸ 0 y i · 0 y i unrestricted j th constraint: ¸ j th constraint: · j th constraint: = for all i, equality holds either for primal or dual for all j, equality holds either for primal or dual Let x be feasible for primal and y be feasible for dual. and, x and y are both optimal

Complementary Slackness Primal: Dual: Complementary Slackness Conditions: If x and y satisfy these conditions, both are optimal.

“Primal-Dual” Kruskal Algorithm Claim: y is feasible for dual LP. Proof: y C ¸ 0 for all C ( E, since w e i ¸ w e i+1. (Except when i=m) Consider any edge e i. The only non-zero y C with e i 2 C are y R k for k ¸ i. So. ¥ Order E as (e 1,..., e m ), where w e1 ¸ w e2 ¸... ¸ w em Initially T = ; and y = 0 For i=1,...,m Set y R i = w e i - w e i+1 If the ends of e i are in different components of (V,T) Add e i to T Notation: Let R i = {e 1,...,e i } and w e m+1 = 0

Lemma: Suppose B µ E and C µ E satisfy |B Å C| < n- ∙ (C). Let ∙ = ∙ (C). Let the components of (V,C) be (V 1,C 1 ),..., (V ∙,C ∙ ). Then for some j, (V j, B Å C j ) is not connected. Proof: We showed last time that So So, for some j, |B Å C j | < |V j |-1. So B Å C j doesn’t have enough edges to form a tree spanning V j. So (V j,B Å C j ) is not connected. ¥

Let x be the characteristic vector of T at end of algorithm. Claim: x and y satisfy the complementary slackness conditions. Proof: We showed for every edge e, so CS1 holds. Let’s check CS2. We only have y C >0 if C=R i for some i. So suppose x(R i ) < n - ∙ (R i ) for some i. Recall that x(R i )=|T Å R i |. (Since x is characteristic vector of T.) Let the components of (V,R i ) be (V 1,C 1 ),..., (V ∙,C ∙ ). By previous lemma, for some a, (V a,T Å C a ) is not connected. There are vertices u,v 2 V a such that u and v are not connected in (V a,T Å C a ) there is a path P µ C a connecting u and v in (V a,C a ) So, some edge e b 2 P connects two components of (V a,T Å C a ), which are also two components of (V,T Å R i ). Note that T Å R i is the partial tree at step i of the algorithm. So when the algorithm considered e b, it would have added it. ¥

Vertices of the Spanning Tree Polytope Corollary: Every vertex of P ST is the characteristic vector of a spanning tree. Proof: Consider any vertex x of spanning tree polytope. By definition, there is a weight vector w such that x is the unique optimal solution of max{ w T x : x 2 P ST }. If we ran Kruskal’s algorithm with the weights w, it would output an optimal solution to max{ w T x : x 2 P ST } that is the characteristic vector of a spanning tree T. Thus x is the characteristic vector of T. ¥ Corollary: The World’s Worst Spanning Tree Algorithm (in Lecture 21) outputs a max weight spanning tree.

What’s Next? Future C&O classes you could take If you’re unhappy that the ellipsoid method is too slow, you can learn about practical methods in: – C&O 466: Continuous Optimization If you liked…You might like… Max Flows, Min Cuts, Spanning TreesC&O 351 “Network Flows” C&O 450 “Combinatorial Optimization” C&O 453 “Network Design” Integer Programs, PolyhedraC&O 452 “Integer Programming” Konig’s TheoremC&O 342 “Intro to Graph Theory” C&O 442 “Graph Theory” C&O 444 “Algebraic Graph Theory” Convex Functions, Subgradient Inequality, KKT Theorem C&O 367 “Nonlinear Optimization” C&O 463 “Convex Optimization” C&O 466 “Continuous Optimization” Semidefinite ProgramsC&O 471 “Semidefinite Optimization”