129
October 3, 2012 Jayant Apte. ASPITRG 1 Polyhedral Computation Jayant Apte ASPITRG

Jayant chm

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 1

Polyhedral Computation

Jayant Apte ASPITRG

Page 2: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 2

Part I

Page 3: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 3

The Three Problems ofPolyhedral Computation

● Representation Conversion● H-representation of polyhedron

● V-Representation of polyhedron

● Projection●

● Redundancy Removal● Compute the minimal representation of a polyhedron

Page 4: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 4

Outline● Preliminaries

● Representations of convex polyhedra, polyhedral cones● Homogenization - Converting a general polyhedron in to

a cone in

● Polar of a convex cone

● The three problems● Representation Conversion

– Review of LRS

– Double Description Method

● Projection of polyhedral sets

– Fourier-Motzkin Elimination

– Block Elimination

– Convex Hull Method (CHM)

● Redundancy removal

– Redundancy removal using linear programming

Page 5: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 5

Outline for Part 1● Preliminaries

● Representations of convex polyhedra, polyhedral cones

● Homogenization – Converting a general polyhedron in to a cone in

● Polar of a convex cone ● The first problem

● Representation Conversion– Review of LRS– Double Description Method

Page 6: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 6

Preliminaries

Page 7: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 7

Convex Polyhedron

Page 8: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 8

Examples of polyhedra

Bounded- Polytope Unbounded - polyhedron

Page 9: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 9

H-Representation of a Polyhedron

Page 10: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 10

V-Representation of a Polyhedron

Page 11: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 11

Example

(1,0,0)

(0,0,0)

(0,1,0)

(1,1,0)

(0,1,1)

(0.5,0.5,1.5)(1,1,1)

(0,0,1)

Page 12: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 12

Switching between the two representations : Representation Conversion Problem

● H-representation V-representation: The Vertex Enumeration problem

● Methods:

● Reverse Search, Lexicographic Reverse Search● Double-description method

● V-representation H-representation

The Facet Enumeration Problem

● Facet enumeration can be accomplished by using polarity and doing Vertex Enumeration

Page 13: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 13

Polyhedral Cone

Page 14: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 14

A cone in

Page 15: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 15

Homogenization

Page 16: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 16

H-polyhedra

Page 17: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 17

Example(d=2,d+1=3)

Page 18: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 18

Example

Page 19: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 19

V-polyhedra

Page 20: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 20

Polar of a convex cone

Page 21: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 21

Polar of a convex cone

Looks like an H-representation!!!

Our ticket back to the original cone!!!

Page 22: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 22

Polar: Intuition

Page 23: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 23

Polar: Intuition

Page 24: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 24

Polar: Intuition

Page 25: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 25

Polar: Intuition

Page 26: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 26

Use of Polar

● Representation Conversion● No need to have two different algorithms i.e. for

and .

● Redundancy removal● No need to have two different algorithms for

removing redundancies from H-representation

and V-representation

● Safely assume that input is always an H-representation for both these problems

Page 27: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 27

Polarity: Intuition

Page 28: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 28

Polar: Intuition

Perform Vertex Enumeration on this cone.

Then take polar again to get facets of this cone

Page 29: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 29

Problem #1Representation Conversion

Page 30: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 30

Review of Lexicographic Reverse Search

Page 31: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 31

Reverse Search: High Level Idea

● Start with dictionary corresponding to the optimal vertex

● Ask yourself 'What pivot would have landed me at this dictionary if i was running simplex?'

● Go to that dictionary by applying reverse pivot to current dictionary

● Ask the same question again

● Generate the so-called 'reverse search tree'

Page 32: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 32

Reverse Search on a Cube

Ref.David Avis, lrs: A Revised Implementation of the Reverse Search Vertex Enumeration Algorithm

Page 33: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 33

Double Description Method

● First introduced in:

“ Motzkin, T. S.; Raiffa, H.; Thompson, G. L.; Thrall, R. M. (1953). "The double description method". Contributions to the theory of games. Annals of Mathematics Studies. Princeton, N. J.: Princeton University Press. pp. 51–73”

● The primitive algorithm in this paper is very inefficient.

(How? We will see later)

● Several authors came up with their own efficient implementation(viz. Fukuda, Padberg)

● Fukuda's implementation is called cdd

Page 34: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 34

Some Terminology

Page 35: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 35

Double Description Method:The High Level Idea

● An Incremental Algorithm

● Starts with certain subset of rows of H-representation of a cone to form initial H-representation

● Adds rest of the inequalities one by one constructing the corresponding V-representation every iteration

● Thus, constructing the V-representation incrementally.

Page 36: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 36

How it works?

Page 37: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 37

How it works?

Page 38: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 38

Initialization

Page 39: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 39

Initialization

Very trivial and inefficient

Page 40: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 40

Example: Initialization

Page 41: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 41

Example: Initialization

Page 42: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 42

Example : Initialization

4.0000 14.0000 9.0000 4.0000 4.0000 9.0000 1.0000 1.0000 1.0000

-1 -1 18 1 -1 0 0 1 -4

A B C

Page 43: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 43

How it works?

Page 44: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 44

Iteration: Insert a new constraint

Page 45: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 45

Iteration 1 4.0000 14.0000 9.0000 4.0000 4.0000 9.0000 1.0000 1.0000 1.0000

A B C

Page 46: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 46

Iteration 1: Insert a new constraintConstraint 2

Page 47: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 47

Iteration 1: Insert a new constraint

Page 48: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 48

Iteration 1: Insert a new constraint

Page 49: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 49

Main Lemma for DD Method

Page 50: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 50

Iteration 1: Insert a new constraint

Page 51: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 51

Iteration 1: Get the new DD pair

10.0000 12.0000 4.0000 9.0000 4.0000 6.0000 4.0000 9.0000 1.0000 1.0000 1.0000 1.0000

-1 -1 18 1 -1 0 0 1 -4 -1 1 6

Page 52: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 52

Iteration 2

Page 53: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 53

Iteration 2: Insert new constraint

Page 54: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 54

Iteration 2: Insert new constraint

Page 55: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 55

Iteration 2: Insert new constraint

Page 56: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 56

Get the new DD pair

-1 -1 18 1 -1 0 0 1 -4 -1 1 6 0 -1 8

9.2000 10.0000 8.0000 10.0000 12.0000 4.0000 8.0000 8.0000 8.0000 4.0000 6.0000 4.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000

Page 57: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 57

Iteration 3

Page 58: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 58

Get the new DD pair

-1 -1 18 1 -1 0 0 1 -4 -1 1 6 0 -1 8 1 1 -12

6.2609 6.4000 6.0000 8.0000 7.2000 9.2000 10.0000 8.0000 10.0000 12.0000 5.7391 5.6000 6.0000 4.0000 4.8000 8.0000 8.0000 8.0000 4.0000 6.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000

A B C D E F G H I J

Page 59: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 59

Termination

Page 60: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 60

Efficiency Issues

● Is the implementation I just described good enough?

Page 61: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 61

Efficiency Issues

● Is the implementation I just described good enough?

● Hell no!– The implementation just described suffers from

profusion of redundancy

Page 62: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 62

Efficiency IssuesWe can totallydo without this one!!

Page 63: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 63

Efficiency IssuesAnd without all these!!!

Page 64: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 64

Efficiency Issues

Page 65: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 65

The Primitive DD method

Page 66: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 66

What to do?

● Add some more structure● Strengthen the Main Lemma

Page 67: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 67

Add some more structure

Page 68: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 68

Some definitions

Page 69: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 69

Page 70: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 70

Page 71: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 71

Algebraic Characterization of adjacency

Page 72: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 72

Combinatorial Characterization of adjacency (Combinatorial Oracle)

Page 73: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 73

Example: Combinatorial Adjacency Oracle

Page 74: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 74

Example: Combinatorial Adjacency Oracle

Only the pairs and will be used to generate new rays

Page 75: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 75

Strengthened Main Lemma for DD Method

Page 76: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 76

Procedural Description

Page 77: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 77

Part 2

Page 78: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 78

● Projection of polyhedral sets– Fourier-Motzkin Elimination– Block Elimination– Convex Hull Method (CHM)

● Redundancy removal– Redundancy removal using linear programming

Page 79: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 79

Projection of a Polyhedra

Page 80: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 80

Fourier-Motzkin Elimination

● Named after Joseph Fourier and Theodore Motzkin

Page 81: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 81

How it works?

Page 82: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 82

How it works? Contd...

Page 83: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 83

Efficiency of FM algorithm

Page 84: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 84

● First appears in “C. Lassez and J.-L. Lassez, Quantifier elimination for conjunctions of linear constraints via aconvex hull algorithm, IBM Research Report, T.J. Watson Research Center (1991)”

● Found to be better than most other existing algorithms when dimension of projection is small

● Cited by Weidong Xu, Jia Wang, Jun Sun in their ISIT 2008 paper “A Projection Method for Derivation of Non-Shannon-Type Information Inequalities”

Convex Hull Method(CHM)

Page 85: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 85

CHM intuition

Page 86: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 86

CHM intuition

Page 87: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 87

CHM intuition (12,6,6)

(12,6)

Page 88: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 88

CHM intuition

Page 89: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 89

Moral of the story

● We can make decisions about without actually having its H-representation.

● It suffices to have , the original polyhedron● We run linear programs on to make these

decisions

Page 90: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 90

Input:Faces A of P

Construct an initial Approximation of extreme points of

Perform Facet Enumeration on

to get

Are all inequalities In faces

Of ?

Stop

Take an inequality from that is not a face of

and move it outward To find a new extreme point r

Update by adding r to it

Yes

No

Convex Hull Method:Flowchart

Page 91: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 91

Example

Page 92: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 92

Example

Page 93: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 93

Example

Page 94: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 94

Convex Hull Method:Flowchart

Input:Faces A of P

Construct an initial Approximation of extreme points of

Perform Facet Enumeration on

to get

Are all inequalities In facets

Of ?

Stop

Take an inequality from that is not a face of

and move it outward To find a new extreme point r

Update by adding r to it

Page 95: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 95

How to get the extreme points of initial approximation?

Page 96: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 96

Example: Get the first two points

Page 97: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 97

Example: Get the first two points

Page 98: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 98

Example: Get the first two points

Page 99: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 99

Get rest of the points so you have a total of d+1 points

Page 100: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 100

Get the rest of the points so you have a total of d+1 points

Page 101: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 101

Get the rest of the points so you have a total d+1 points

Page 102: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 102

How to get the initial facets of the projection?

Page 103: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 103

How to get the initial facets of the projection?

Page 104: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 104

Input:Faces A of P

Construct an initial Approximation of extreme points of

Incrementally updateThe Convex Hull (Perform Facet

Enumeration on to get )

Are all inequalities In faces

Of ?

Stop

Take an inequality from that is not a face of

and move it outward To find a new extreme point r

Update by adding r to it

Yes

No

Convex Hull Method:Flowchart

Page 105: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 105

Input:Faces A of P

Construct an initial Approximation of extreme points of

Incrementally updateThe Convex Hull (Perform Facet

Enumeration on to get )

Are all inequalities In faces

Of ?

Stop

Take an inequality from that is not a face of

and move it outward To find a new extreme point r

Update by adding r to it

Yes

No

Convex Hull Method:Flowchart

Page 106: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 106

Input:Faces A of P

Construct an initial Approximation of extreme points of

Incrementally updateThe Convex Hull (Perform Facet

Enumeration on to get )

Are all inequalities In faces

Of ?

Stop

Take an inequality from that is not a facet of

and move it outward To find a new extreme point r

Update by adding r to it

Yes

No

Convex Hull Method:Flowchart

Page 107: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 107

Incremental refinement

● Find a facet in current approximation of that is not actually the facet of

● How to do that?

Page 108: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 108

Incremental refinement

This inequality isNot a facet of

Page 109: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 109

Incremental refinement

Page 110: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 110

Input:Faces A of P

Construct an initial Approximation of extreme points of

Incrementally updateThe Convex Hull (Perform Facet

Enumeration on to get )

Are all inequalities In faces

Of ?

Stop

Take an inequality from that is not a facet of

and move it outward To find a new extreme point r

Update by adding r to it

Yes

No

Convex Hull Method:Flowchart

Page 111: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 111

How to update the H-representationto accommodate new point ?

Page 112: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 112

Example

Page 113: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 113

Example

Page 114: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 114

Example: New candidate facets

Page 115: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 115

How to update the H-representationto accommodate new point ?

Determine validity of The candidate facet And also its sign

Page 116: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 116

Example

Page 117: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 117

Example

Page 118: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 118

How to update the H-representationto accommodate new point ?

Page 119: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 119

Example

Page 120: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 120

Example

Page 121: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 121

Example

Page 122: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 122

2nd iteration

Not a facet of

Page 123: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 123

3rd iteration

Not a facet of

Page 124: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 124

4th iteration: Done!!!

Page 125: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 125

Comparison of Projection Algorithms

● Fourier Motzkin Elimination and Block Elimination doesn't work well when used on big problems

● CHM works very well when the dimension of projection is relatively small as compared to the dimention of original polyhedron.

● Weidong Xu, Jia Wang, Jun Sun have already used CHM to get non-Shannon inequalities.

Page 126: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 126

Computation of minimal representation/Redundancy

Removal

Page 127: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 127

Definitions

Page 128: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 128

References

●K. Fukuda and A. Prodon. Double description method revisited. Technical report, Department of Mathematics, Swiss Federal Institute of Technology, Lausanne, Switzerland, 1995

●G. Ziegler, Lectures on Polytopes, Springer, 1994, revised 1998. Graduate Texts in Mathematics.

●Tien Huynh, Catherine Lassez, and Jean-Louis Lassez. Practical issues on the projection of polyhedral sets. Annals of mathematics and artificial intelligence, November 1992

●Catherine Lassez and Jean-Louis Lassez. Quantifier elimination for conjunctions of linear constraints via a convex hull algorithm. In Bruce Donald, Deepak Kapur, and Joseph Mundy, editors, Symbolic and Numerical Computation for Artificial Intelligence. Academic Press, 1992.

●R. T. Rockafellar. Convex Analysis (Princeton Mathematical Series). Princeton Univ Pr.

●W. Xu, J. Wang, J. Sun. A projection method for derivation of non-Shannon-type information inequalities. In IEEE International Symposiumon Information Theory (ISIT), pp. 2116 – 2120, 2008.

Page 129: Jayant chm

October 3, 2012 Jayant Apte. ASPITRG 129

Minkowski's Theorem for Polyhedral Cones

Weyl's Theorem for Polyhedral Cones