Course: Advanced Algorithms CSG713, Fall 2008 CCIS Department, Northeastern University Dimitrios Kanoulas.

Slides:



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

A Randomized Polynomial- Time Simplex Algorithm for Linear Programming CS3150 Course Presentation.
Incremental Linear Programming Linear programming involves finding a solution to the constraints, one that maximizes the given linear function of variables.
1 LP Duality Lecture 13: Feb Min-Max Theorems In bipartite graph, Maximum matching = Minimum Vertex Cover In every graph, Maximum Flow = Minimum.
Geometry and Theory of LP Standard (Inequality) Primal Problem: Dual Problem:
Lecture #3; Based on slides by Yinyu Ye
Linear Programming (LP) (Chap.29)
Approximation Algorithms Chapter 14: Rounding Applied to Set Cover.
Advanced Topics in Algorithms and Data Structures Lecture 7.2, page 1 Merging two upper hulls Suppose, UH ( S 2 ) has s points given in an array according.
Totally Unimodular Matrices
Introduction to Algorithms
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2002 Lecture 8 Tuesday, 11/19/02 Linear Programming.
Dragan Jovicic Harvinder Singh
Theory of Computing Lecture 14 MAS 714 Hartmut Klauck.
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.
Optimization of thermal processes2007/2008 Optimization of thermal processes Maciej Marek Czestochowa University of Technology Institute of Thermal Machinery.
Ch 2. 6 – Solving Systems of Linear Inequalities & Ch 2
Linear Programming?!?! Sec Linear Programming In management science, it is often required to maximize or minimize a linear function called an objective.
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.
How should we define corner points? Under any reasonable definition, point x should be considered a corner point x What is a corner point?
Basic Feasible Solutions: Recap MS&E 211. WILL FOLLOW A CELEBRATED INTELLECTUAL TEACHING TRADITION.
A Randomized Polynomial-Time Simplex Algorithm for Linear Programming Daniel A. Spielman, Yale Joint work with Jonathan Kelner, M.I.T.
CS38 Introduction to Algorithms Lecture 15 May 20, CS38 Lecture 15.
Computational problems, algorithms, runtime, hardness
CSCI 3160 Design and Analysis of Algorithms Tutorial 6 Fei Chen.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2006 Lecture 9 Wednesday, 11/15/06 Linear Programming.
An Algorithm for Polytope Decomposition and Exact Computation of Multiple Integrals.
Jie Gao Joint work with Amitabh Basu*, Joseph Mitchell, Girishkumar Stony Brook Distributed Localization using Noisy Distance and Angle Information.
Totally Unimodular Matrices Lecture 11: Feb 23 Simplex Algorithm Elliposid Algorithm.
Design and Analysis of Algorithms
1 Introduction to Linear and Integer Programming Lecture 9: Feb 14.
Introduction to Linear and Integer Programming Lecture 7: Feb 1.
Fall 2006, Sep. 5 and 7 ELEC / Lecture 4 1 ELEC / (Fall 2006) Low-Power Design of Electronic Circuits (Formerly ELEC / )
Approximation Algorithms
Lower Bounds for the Ropelength of Reduced Knot Diagrams by: Robert McGuigan.
 Linear Programming and Smoothed Complexity Richard Kelley.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2008 Lecture 9 Tuesday, 11/18/08 Linear Programming.
Approximation Algorithms: Bristol Summer School 2008 Seffi Naor Computer Science Dept. Technion Haifa, Israel TexPoint fonts used in EMF. Read the TexPoint.
Optimization of Linear Problems: Linear Programming (LP) © 2011 Daniel Kirschen and University of Washington 1.
Linear Programming David Kauchak cs161 Summer 2009.
C&O 355 Lecture 2 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 2 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A.
STUDY OF THE HIRSCH CONJECTURE BASED ON “A QUASI-POLYNOMIAL BOUND FOR THE DIAMETER OF GRAPHS OF POLYHEDRA” Instructor: Dr. Deza Presenter: Erik Wang Nov/2013.
CS774. Markov Random Field : Theory and Application Lecture 08 Kyomin Jung KAIST Sep
UNC Chapel Hill M. C. Lin Linear Programming Reading: Chapter 4 of the Textbook Driving Applications –Casting/Metal Molding –Collision Detection Randomized.
Introduction to Operations Research
Linear Programming Data Structures and Algorithms A.G. Malamos References: Algorithms, 2006, S. Dasgupta, C. H. Papadimitriou, and U. V. Vazirani Introduction.
TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A A A A A A Image:
Soham Uday Mehta. Linear Programming in 3 variables.
Optimization - Lecture 4, Part 1 M. Pawan Kumar Slides available online
OR Chapter 8. General LP Problems Converting other forms to general LP problem : min c’x  - max (-c)’x   = by adding a nonnegative slack variable.
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.
Linear Programming: Formulations, Geometry and Simplex Method Yi Zhang January 21 th, 2010.
TU/e Algorithms (2IL15) – Lecture 12 1 Linear Programming.
UNC Chapel Hill M. C. Lin Randomized Linear Programming For any set of H of half-planes, there is a good order to treat them. Thus, we can improve the.
Common Intersection of Half-Planes in R 2 2 PROBLEM (Common Intersection of half- planes in R 2 ) Given n half-planes H 1, H 2,..., H n in R 2 compute.
Linear Programming Chap 2. The Geometry of LP  In the text, polyhedron is defined as P = { x  R n : Ax  b }. So some of our earlier results should.
Linear Programming Piyush Kumar Welcome to CIS5930.
Approximation Algorithms based on linear programming.
Computational Geometry
TU/e Algorithms (2IL15) – Lecture 12 1 Linear Programming.
Submodularity Reading Group Matroid Polytopes, Polymatroid M. Pawan Kumar
Discrete Optimization
Lap Chi Lau we will only use slides 4 to 19
Topics in Algorithms Lap Chi Lau.
Uri Zwick – Tel Aviv Univ.
Linear Programming Duality, Reductions, and Bipartite Matching
CS5321 Numerical Optimization
Graphical solution A Graphical Solution Procedure (LPs with 2 decision variables can be solved/viewed this way.) 1. Plot each constraint as an equation.
Linear Constrained Optimization
Presentation transcript:

Course: Advanced Algorithms CSG713, Fall 2008 CCIS Department, Northeastern University Dimitrios Kanoulas

Maximizecx Subject to:Ax ≤ b Objective Function (c vector) Constraints where:x and c are two d-size vectors A is a nxd matrix b is a n-size right-hand vector Convex Polyhedron: Set of feasible points P:={x|Ax ≤ b} where: the vertices can be defined by the d constraints Polytope:A bounded Convex Polyhedron The form of the LP we will analyze:

Picture from: commons.wikimedia.org Starting from a vertex Try to find that vertex that optimizes the objective function TIME: (given random input constraints) Worst-Case: exponential Thus: An algorithm that uses the Simplex method in worst-case polynomial time is needed. (open problem for 50 years) Solution: Randomization Opt. Start

Given a Linear Program, we can randomly perturb it, in such a way that: We can use (Shadow) Simplex Method to solve this new nearby but different Linear Program and The solution of this new Linear Program to be the solution of the starting one. and It is polynomial in time w.h.p. A Randomized Polynomial-Time LP Simplex Method

1.Reduce the starting LP to a problem of certifying boundedness Boundedness does not depend on RHS vector b, of the constraints Loop: 2.Perturb randomly b vector of constraints and run shadow-vertex Simplex Method on perturbed polytope to generate certificate of boundedness 3.If it fails in constant number of steps, change the distribution on perturbations and run the algorithm again. TIME: The number of iterations of this loop is polynomial on the bit-length of the input, with high probability (w.h.p.)

1.Reduce the starting LP to a problem of certifying boundedness Boundedness does not depend on RHS vector b, of the constraints The problem of determining whether a set of linear constraints defines an unbounded polyhedron or not. A polyhedron is said to be bounded If the solution set is bounded Maximizecx Subject to:Ax ≤ b

1.Reduce the starting LP to a problem of certifying boundedness Boundedness does not depend on RHS vector b, of the constraints Loop: 2.Perturb randomly b vector of constraints and run shadow-vertex Simplex Method on perturbed polytope to generate certificate of boundedness 3.If it fails in constant number of steps, change the distribution on perturbations and run the algorithm again. TIME: The number of iterations of this loop is polynomial on the bit-length of the input, with high probability (w.h.p.)

The shadow of a polytope P onto a 2-dimensions plane S is just the projection of P onto S. The shadow is a polygon Create shadow: Every vertex/edge of the shadow’s polygon is the image of a vertex/edge of the polytope P

The shadow of a polytope P onto a 2-dimensions plane S is just the projection of P onto S. The shadow is a polygon Idea: Find S such that the set of vertices of P that projects onto the boundary of the shadow polygon, are exactly the vertices of P that optimize the objective function in S.

1.Input: a starting vertex u 0 of starting polytope P. 2.Choose some random objective function f optimized at u 0. 3.Set S = span(c,f). S is the 2-dimentional subspace which has c and f as bases. 4.Find the shadow of P onto S. Selection of 2-dimensions plane S S = span(f,c) f (opt. by u0) objective function c Image: BU`s prof. Teng presentation

5. Each vertex y on P that projects onto the boundary of the shadow has a unique neighbor on P that projects onto the next vertex of the shadow in clockwise order. 6.Looking all the vertices on P that map to the boundary of the shadow we can move from vertex that optimize f to the vertex that optimize c. u 0 opt. f u opt. c or -c

Problem: By using the starting LP and the plane S we proposed, we cannot guarantee that: the number of edges of the shadow will be polynomial in size. [There is the possibility to be exponentially large] Solution: Guarantee that the number of edges of the shadow’s boundary will be polynomially large by perturbing the b-vector

The real problem is to bound the number of shadow’s edges 2 cases: Polytope in k-near-isotropic position Polytope in non k-near-isotropic position

P is the polytope: Ax≤b k 1

Upper bound of total shadow length (Shadow Size). Lower bound expected length of each edge. Perturb polytope P: P := {x | for each i: a i x ≤ b i }Q := {x | for each i: a i x ≤ b i + r i } r i : independent exponentially distributed random variable with expectation λ ( Pr[ri≥t] = e -t/l, t≥0 ) Proof of Poly Size of the shadow Number of edges of the shadow is poly large w.h.p.

1.Starting LP: 2.Perturb b vector: guarantee that the number of edges of the shadow of the new polytope will be polynomially large w.h.p. 3.From the shadow find the vertex that optimizes the objective function c in polynomial number of steps, w.h.p. Maximizecx Subject to:Ax ≤ b

P is the polytope: Ax≤b Starting LP Maximizec x Subject to:Ax ≤ b Boundedness Certification Problem B w ≤ b’ B -> A, c, b Reduction Dual LP Minimizeb y Subject to:A T y = c y≥0 Combine Primal & Dual Need feasible x and y: Ax ≤ b A T y = c y≥0 c x = b y Dual

Boundedness independent of b-vector Boundedness Certification Problem B w ≤ b Find certificate of boundedness by minimizing and maximizing the objective function (c)

1.Reduce the starting LP to a problem of certifying boundedness Boundedness does not depend on RHS vector b, of the constraints 2.We choose the correct 2-dimensions plane S: care only about the boundary of the shadow 3.Perturb randomly b vector: guarantee that the number of edges of the boundary of the shadow is polynomially large, w.h.p. 4.We can move from a starting vertex of the shadow to this that optimizes c or -c objective function in polynomial number of steps, by doing fixed number of steps. 5.If it fails in constant number of steps, change the distribution on perturbations and run the algorithm again.

(From the movie: π) I have uploaded the presentation on my web site: 11:15, restate my assumptions: 1.Mathematics is the language of nature. 2.Everything around us can be represented and understood through numbers. 3.If you graph these numbers, patterns emerge. Therefore: There are patterns everywhere in nature.