SlideShare a Scribd company logo
1 of 97
Download to read offline
Introduction to Lexicographic
     Reverse Search: lrs



         June 29, 2012

          Jayant Apte
           ASPITRG
Outline

               ●Introduction
               ●Lexicographic Simplex Algorithm

               ●Lex-positive and Lex min bases

               ●The pitfalls in reverse search

               ●Lexicographic Reverse search




June 29,2012                Jayant Apte. ASPITRG   2
Introduction


          ●    Representations of a Polyhedron
          ●    Reverse Search: Some Trivia
          ●    Reverse Search: The high level idea




June 29,2012                Jayant Apte. ASPITRG     3
H-Representation of a Polyhedron




June 29,2012   Jayant Apte. ASPITRG   4
V-Representation of a Polyhedron




June 29,2012    Jayant Apte. ASPITRG   5
Switching between the two
                    representations
●   H-representation         V-representation: The
    Vertex Enumeration problem
●   Methods:
    ●   Reverse Search, Lexicographic Reverse Search
    ●   Double-description method
●   Reverse search is the most robust method




June 29,2012              Jayant Apte. ASPITRG         6
Brief history of Reverse Search
 ●   Presented by David Avis and Komei Fukuda in
     a 1992 article
     “A Pivoting Algorithm for Convex Hulls and
     Vertex Enumeration of Arrangements and
     Polyhedra"
 ●   A C implementation: rs
 ●   Modified by Avis in 1998 to use lexicographic
     pivoting and implemented in rational arithmetic
 ●   A C implementation: lrs
June 29,2012           Jayant Apte. ASPITRG            7
Applications
 ●   Finding the vertices and extreme rays given the H-
     representation of polyhedron
 ●   Facet enumeration: V-representation to H-
     representation
 ●   Enumerating all veritces of Voronoi diagram
 ●   Computing volume of convex hull of set of points
 ●   Estimation of number of vertices of polyhedron
 ●   Nash equilibrium in non-cooperative bi-matrix games


June 29,2012             Jayant Apte. ASPITRG             8
Relationship between Simplex Algorithm
              and Reverse Search
 ●   Simplex Algorithm is used for solving linear
     programs
 ●   Simplex Algorithm starts at any vertex of
     polyhedron defined by the constraint set
 ●   Travels along the edges of polyhedron to find
     the optimum
 ●   Reverse search runs simplex in reverse
 ●   Traces all possible paths taken by Simplex
     algorithm in reverse
June 29,2012           Jayant Apte. ASPITRG          9
Relationship between Simplex Algorithm
              and Reverse Search




   Ref.David Avis, lrs: A Revised Implementation of the Reverse Search Vertex Enumeration
   Algorithm
June 29,2012                           Jayant Apte. ASPITRG                                 10
Background: Lexicographic Order




June 29,2012    Jayant Apte. ASPITRG   11
Vectors
 ●   Comparing two vectors in lexicographic sense
      ●   e.g. [5, 4, 1, 7, 4]      [5, 4, 0, 9, 8 ]
 ●    Lex-positive vector
      ●   First non-zero element is positive
      ●   e.g. [0, 4, -1, -7, -4], [5, -4, 1, -7, 4] are lexicographically
          positive vectors
      ●   e.g. [0 -4 -1 -7 -4], [-5 - 4 1 -7 4] are lexicographically
          negative vectors
 ●   Lex-min vector
      ●   Out of [1 2 3 -5 9],[1 2 0 9 9], [2 3 6 -7 1];
          [1 2 0 9 9] is lex-min vector
June 29,2012                      Jayant Apte. ASPITRG                       12
Lexicographic Simplex Method




June 29,2012        Jayant Apte. ASPITRG   13
The Linear Programming Problem
                                              Objective Function




                                                       Constraint Set



               ●d-decision variables
               ●m-constraints




June 29,2012           Jayant Apte. ASPITRG                         14
Example




June 29,2012   Jayant Apte. ASPITRG   15
Nature of Constrained Region

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


                   (0,1,1)




                                        (0,0,1)             (1,1,0)




                     (0,1,0)
                                                                       (1,0,0)

                                                  (0,0,0)
June 29,2012           Jayant Apte. ASPITRG                                 16
Relationship between inequalities and
   Vertex: Geometric intuition of Degeneracy
               Highlighted inequalities are tight at (0,0,1)




                                                 (0,0,1)




June 29,2012                    Jayant Apte. ASPITRG           17
Relationship between inequalities and
   Vertex: Geometric intuition of Degeneracy




                                    (0,0,1)




June 29,2012       Jayant Apte. ASPITRG        18
Relationship between Co-Basis and Vertex:
     Geometric intuition of Degeneracy
   ●   (0,0,1) is a degenerate vertex
   ●   There are       ways of specifying the vertex (0,0,1)
   ●   In general this number are                    ways of representing a
       degenerate vertex, where
       n=total number of inequalities that are tight at that vertex
       d=number of dimensions
   ●   This number can get very large very quickly.
   ●   One of the places where simplex and by implication
       reverse search runs into problems.


June 29,2012                  Jayant Apte. ASPITRG                            19
How to solve this LP?
 ●   Rearrange inequalities to decide a starting
     vertex
 ●   Introduce slack variables
 ●   Convert to matrix form
 ●   Convert to dictionary form




June 29,2012           Jayant Apte. ASPITRG        20
Starting Simplex at a vertex:
   Rearrangement of the inequalities
     ●Rearrange the inequalities so that last 'd' inequalities
     contain initial vertex
                                                      (0.5,0.5,1.5)




June 29,2012                  Jayant Apte. ASPITRG                    21
Define Slack Variables


●Convert inequalities to equalities by
 introducing slack variables
●Original variables are called decision

 variables




    June 29,2012                Jayant Apte. ASPITRG   22
Our Example




June 29,2012     Jayant Apte. ASPITRG   23
Our Example


       -1      0    0    1   0   0   0    0    0     0    0     0
       0       -1   0    0   1   0   0    0    0     0    0     0
       0       0    -1   0   0   1   0    0    0     0    0     0
       1       0    0    0   0   0   1    0    0     0    0     0
       0       1    0    0   0   0   0    1    0     0    0     0
       0       1    1    0   0   0   0    0    1     0    0     0
       0       -1   1    0   0   0   0    0    0     1    0     0
       1       0    1    0   0   0   0    0    0     0    1     0
       -1      0    1    0   0   0   0    0    0     0    0     1




June 29,2012                             Jayant Apte. ASPITRG       24
Terminology
 ➢   d decision variables
 ➢   m constraints
 ➢   Hence m slack variables
 ➢   Basis: B: Ordered m-tuple indexing set of m
     affinely independent columns of A
 ➢


 ➢   Co-basis: N: Ordered d-tuple indexing remaining
     d columns
 ➢             : Sub-matrix of A indexed by B
June 29,2012                Jayant Apte. ASPITRG       25
Our example


   We define initial basis as
   Hence initial co-basis is


          -1   0    0    1   0   0   0   0    0             0   0   0
           0   -1   0    0   1   0   0   0    0             0   0   0
           0   0    -1   0   0   1   0   0    0             0   0   0
           1   0    0    0   0   0   1   0    0             0   0   0
           0   1    0    0   0   0   0   1    0             0   0   0
           0   1    1    0   0   0   0   0    1             0   0   0
           0   -1   1    0   0   0   0   0    0             1   0   0
           1   0    1    0   0   0   0   0    0             0   1   0
          -1   0    1    0   0   0   0   0    0             0   0   1



June 29,2012                         Jayant Apte. ASPITRG               26
Our example
                         is invertible




                         Is a Basic Feasible Solution(BFS)


          -1   0    0    1   0   0   0    0    0             0   0   0
           0   -1   0    0   1   0   0    0    0             0   0   0
           0   0    -1   0   0   1   0    0    0             0   0   0
           1   0    0    0   0   0   1    0    0             0   0   0
           0   1    0    0   0   0   0    1    0             0   0   0
           0   1    1    0   0   0   0    0    1             0   0   0
           0   -1   1    0   0   0   0    0    0             1   0   0
           1   0    1    0   0   0   0    0    0             0   1   0
          -1   0    1    0   0   0   0    0    0             0   0   1

June 29,2012                          Jayant Apte. ASPITRG               27
Add a cost row
         ●     Add a cost row at the top




June 29,2012                       Jayant Apte. ASPITRG   28
Our example


       0       1    2    3    4   5   6   7     8    9     10 11 12
       1        1   1     1   0   0   0    0    0     0    0     0   0
       0       -1   0    0    1   0   0    0    0     0    0     0   0
       0        0   -1   0    0   1   0    0    0     0    0     0   0
       0        0   0    -1   0   0   1    0    0     0    0     0   0
       0        1   0    0    0   0   0    1    0     0    0     0   0
       0        0   1    0    0   0   0    0    1     0    0     0   0
       0        0   1    1    0   0   0    0    0     1    0     0   0
       0        0   -1   1    0   0   0    0    0     0    1     0   0
       0        1   0    1    0   0   0    0    0     0    0     1   0
       0       -1   0    1    0   0   0    0    0     0    0     0   1




June 29,2012                              Jayant Apte. ASPITRG           29
Converting Linear program to the
              dictionary format




June 29,2012      Jayant Apte. ASPITRG   30
Derive the dictionary from matrix
                    form




June 29,2012       Jayant Apte. ASPITRG   31
Our example
                                        Cost function value
                                        At current vertex



                                         The vertex




June 29,2012     Jayant Apte. ASPITRG                 32
Dictionary Format
                               Change in Cost
                               Corresponding to each     Cost Corresponding
                               Co-basic Variable         To Dictionary



               Basic Indices    Co-Basic Indices




                                                       Solution Corresponding
                                                       To Dictionary




June 29,2012                   Jayant Apte. ASPITRG                       33
Redefine a bit
Basis: B: Ordered m+1-tuple indexing set of m+1 affinely
independent columns of dictionary &
Dictionary is to serve as starting point




                            Call this the solution of the initial dictionary or the initial

    Call this the initial    implying that initial basis is identity matrix
June 29,2012                         Jayant Apte. ASPITRG                                     34
Our example

                0   1   2   3   4   5     6    7    8     9    10    11    12   13

         0      1   0   0   0   0   0    0     0    0     0    1    -1.5   -0.5 -2.5   Cost
         1      0   1   0   0   0   0    0     0    0     0    0     0.5   -0.5 0.5
         2      0   0   1   0   0   0    0     0    0     0    -1    0.5    0.5 0.5    The
         3      0   0   0   1   0   0    0     0    0     0    0     0.5    0.5 1.5    vertex
Basis    4      0   0   0   0   1   0    0     0    0     0    0     0.5   -0.5 0.5
         5      0   0   0   0   0   1    0     0    0     0    -1    0.5    0.5 0.5
         6      0   0   0   0   0   0    1     0    0     0    0     0.5    0.5 1.5
         7      0   0   0   0   0   0    0     1    0     0    0    -0.5    0.5 0.5
         8      0   0   0   0   0   0    0     0    1     0    1    -0.5   -0.5 0.5
         9      0   0   0   0   0   0    0     0    0     1    1    -1     -1    0




 June 29,2012                           Jayant Apte. ASPITRG                              35
Simplex Algorithm: The Ingredients
●   It travels from one vertex to another, or more specifically one BFS to
    another BFS
●   For that it uses pivoting operation to obtain the dictionary
    corresponding to new BFS.
●   A co-basic variable assumes a nonzero value and is said to 'enter'
    the basis
●   A basic variable 'leaves' the basis
●   We get a new dictionary which is 'equivalent' to current dictionary in
    algebraic terms, i.e. It carries the same solution
●   This new dictionary is obtained by means of 'pivot operation'.




June 29,2012                    Jayant Apte. ASPITRG                     36
Choosing the entering variable
●   Choose the entering variable that brings about an increase in cost



                  One of these is supposed to assume a nonzero value
●   Only a negative coefficient at                        will do as it will mean
    that                      is positive and results in an increase in cost

●   If there are many such co-basic variables, choose the one with least
    subscript

●   If there are no such co-basic variables, current dictionary is optimal and
    current BFS is the optimum



June 29,2012                       Jayant Apte. ASPITRG                             37
Choosing entering variable

                0   1   2   3   4   5     6    7    8     9    10    11    12   13

         0      1   0   0   0   0   0    0     0    0     0    1    -1.5   -0.5 -2.5
         1      0   1   0   0   0   0    0     0    0     0    0     0.5   -0.5 0.5
         2      0   0   1   0   0   0    0     0    0     0    -1    0.5    0.5 0.5
         3      0   0   0   1   0   0    0     0    0     0    0     0.5    0.5 1.5
Basis    4      0   0   0   0   1   0    0     0    0     0    0     0.5   -0.5 0.5
         5      0   0   0   0   0   1    0     0    0     0    -1    0.5    0.5 0.5
         6      0   0   0   0   0   0    1     0    0     0    0     0.5    0.5 1.5
         7      0   0   0   0   0   0    0     1    0     0    0    -0.5    0.5 0.5
         8      0   0   0   0   0   0    0     0    1     0    1    -0.5   -0.5 0.5
         9      0   0   0   0   0   0    0     0    0     1    1    -1     -1    0




 June 29,2012                           Jayant Apte. ASPITRG                           38
Choosing the leaving variable
 ●   Recall lexicographic order
 ●   Construct following matrix:




June 29,2012           Jayant Apte. ASPITRG   39
Choosing the leaving variable
 ●   Let       and consider the column                    . If
                         this column defines an extreme ray.
 ●   Otherwise, let    be the index such that                    is
     lexicographically minimum vector of:


 ●   Such a minimum is unique as                  has full row rank
 ●   This notation can be abbreviated as,


 ●   In case there is no such       we set

June 29,2012               Jayant Apte. ASPITRG                       40
Choosing the Leaving Variable

                0   1   2   3   4   5     6    7    8     9    10    11    12   13

         0      1   0   0   0   0   0    0     0    0     0    1    -1.5   -0.5 -2.5
         1      0   1   0   0   0   0    0     0    0     0    0     0.5   -0.5 0.5
         2      0   0   1   0   0   0    0     0    0     0    -1    0.5    0.5 0.5
         3      0   0   0   1   0   0    0     0    0     0    0     0.5    0.5 1.5
Basis    4      0   0   0   0   1   0    0     0    0     0    0     0.5   -0.5 0.5
         5      0   0   0   0   0   1    0     0    0     0    -1    0.5    0.5 0.5
         6      0   0   0   0   0   0    1     0    0     0    0     0.5    0.5 1.5
         7      0   0   0   0   0   0    0     1    0     0    0    -0.5    0.5 0.5
         8      0   0   0   0   0   0    0     0    1     0    1    -0.5   -0.5 0.5
         9      0   0   0   0   0   0    0     0    0     1    1    -1     -1    0




 June 29,2012                           Jayant Apte. ASPITRG                           41
Lexicographic choice of leaving
                   variable




June 29,2012        Jayant Apte. ASPITRG   42
Where to get     after each
                 successive iteration?
 ●   Let      be current basis inverse and        be
     the next basis inverse
 ●             and   differ only in 1 column
 ●   We can take advantage of this fact and write

 ●   Pre-multiplication by elementary matrix
     corresponds to row operations
 ●   Hence, we get new basis inverse by some row
     operations
June 29,2012               Jayant Apte. ASPITRG        43
The pivot Operation




June 29,2012         Jayant Apte. ASPITRG   44
This is how to get     after each
             successive iteration
 ●             is given as:




June 29,2012                  Jayant Apte. ASPITRG   45
This is how to get     after each
             successive iteration
                                           Row multiplication Operation
                                           ●Row corresponding to pivot

                                           element is divided by pivot
                                           element




          Hence pivot operation automatically yields new basis inverse

June 29,2012                       Jayant Apte. ASPITRG                   46
Result of pivot (5,11)
        Basis:0 1       2       3       4       11 6        7       8       9            Co-Basis:10 5   12




                0   1       2       3       4    5      6       7       8       9   10    11 12 13
        0
                1   0       0       0       0    3      0       0       0       0   -2    0   1    -1
        1
                0   1       0       0       0    -1     0       0       0       0   1     0   -1   0
        2
                0   0       1       0       0    -1     0       0       0       0   0     0   0    0
        3       0   0       0       1       0    -1     0       0       0       0   1     0   0    1
        4       0   0       0       0       1    -1     0       0       0       0   1     0   -1   0
Basis
        11      0   0       0       0       0    2      0       0       0       0   -2    1   1    1
        6       0   0       0       0       0    -1     1       0       0       0   1     0   0    1
        7       0   0       0       0       0    1      0       1       0       0   -1    0   1    1
        8
                0   0       0       0       0    1      0       0       1       0   0     0   0    1
        9
                0   0       0       0       0    2      0       0       0       1   -1    0   0    1

                                                                                    Identity column

 June 29,2012                                         Jayant Apte. ASPITRG                                    47
Solving Linear Programs:
                   Simplex Algorithm




June 29,2012           Jayant Apte. ASPITRG   48
Iteration 1
                                                               You Are Here.
                            (0.5,0.5,1.5)            (1,1,1)


               (0,1,1)




                                (0,0,1)             (1,1,0)




                 (0,1,0)
                                                                  (1,0,0)

                                          (0,0,0)
June 29,2012                 Jayant Apte. ASPITRG                              49
Iteration 1

                0   1   2   3   4   5     6    7    8     9    10    11    12   13

         0      1   0   0   0   0   0    0     0    0     0    1    -1.5   -0.5 -2.5   Cost
         1      0   1   0   0   0   0    0     0    0     0    0     0.5   -0.5 0.5
         2      0   0   1   0   0   0    0     0    0     0    -1    0.5    0.5 0.5    The
         3      0   0   0   1   0   0    0     0    0     0    0     0.5    0.5 1.5    vertex
Basis    4      0   0   0   0   1   0    0     0    0     0    0     0.5   -0.5 0.5
         5      0   0   0   0   0   1    0     0    0     0    -1    0.5    0.5 0.5
         6      0   0   0   0   0   0    1     0    0     0    0     0.5    0.5 1.5
         7      0   0   0   0   0   0    0     1    0     0    0    -0.5    0.5 0.5
         8      0   0   0   0   0   0    0     0    1     0    1    -0.5   -0.5 0.5
         9      0   0   0   0   0   0    0     0    0     1    1    -1     -1    0




 June 29,2012                           Jayant Apte. ASPITRG                              50
Pivot(5,11)




June 29,2012      Jayant Apte. ASPITRG   51
Iteration 2
                                                               You Are Here.
                            (0.5,0.5,1.5)            (1,1,1)


               (0,1,1)



                               (0,0,1)
                                                    (1,1,0)




                 (0,1,0)
                                                                  (1,0,0)

                                         (0,0,0)

June 29,2012                 Jayant Apte. ASPITRG                              52
Iteration 2
      Basis:0 1         2       3       4       11 6        7       8       9            Co-Basis:10 5   12




                0   1       2       3       4    5      6       7       8       9   10    11 12 13
      0         1   0       0       0       0    3      0       0       0       0   -2    0   1    -1
      1         0   1       0       0       0    -1     0       0       0       0   1     0   -1   0
      2         0   0       1       0       0    -1     0       0       0       0   0     0   0    0
      3         0   0       0       1       0    -1     0       0       0       0   1     0   0    1
      4         0   0       0       0       1    -1     0       0       0       0   1     0   -1   0
Basis
      11        0   0       0       0       0    2      0       0       0       0   -2    1   1    1
      6         0   0       0       0       0    -1     1       0       0       0   1     0   0    1
      7         0   0       0       0       0    1      0       1       0       0   -1    0   1    1
      8         0   0       0       0       0    1      0       0       1       0   0     0   0    1
      9         0   0       0       0       0    2      0       0       0       1   -1    0   0    1




 June 29,2012                                         Jayant Apte. ASPITRG                                    53
pivot(4,10)




June 29,2012     Jayant Apte. ASPITRG   54
Iteration 3
                                                              You Are Still Here.
                                                              Blame degeneracy!
                            (0.5,0.5,1.5)           (1,1,1)


               (0,1,1)



                               (0,0,1)
                                                   (1,1,0)




                 (0,1,0)
                                                                  (1,0,0)

                                         (0,0,0)


June 29,2012                Jayant Apte. ASPITRG                             55
Iteration 3
      Basis:0 1         2       3       10 11 6         7       8       9            Co-Basis:4    5   12




                0   1   2       3       4     5    6     7      8       9       10   11 12 13
      0         1   0       0       0    2    1     0       0       0       0   0    0   -1   -1
      1         0   1       0       0    -1   0     0       0       0       0   0    0   0    0
      2         0   0       1       0    0    -1    0       0       0       0   0    0   0    0
Basis 3         0   0       0       1    -1   0     0       0       0       0   0    0   1    1
      10        0   0       0       0    1    -1    0       0       0       0   1    0   -1   0
      11        0   0       0       0    2    0     0       0       0       0   0    1   -1   1
      6         0   0       0       0    -1   0     1       0       0       0   0    0   1    1
      7         0   0       0       0    1    0     0       1       0       0   0    0   0    1
      8         0   0       0       0    0    1     0       0       1       0   0    0   0    1
      9         0   0       0       0    1    1     0       0       0       1   0    0   -1   1


 June 29,2012                                      Jayant Apte. ASPITRG                                     56
pivot(6,12)




June 29,2012   Jayant Apte. ASPITRG   57
Iteration 4
                            (0.5,0.5,1.5)            (1,1,1)


               (0,1,1)




                                (0,0,1)             (1,1,0)
                                                                 You Are Here.


                 (0,1,0)
                                                               (1,0,0)

                                     (0,0,0)


June 29,2012                 Jayant Apte. ASPITRG                         58
Iteration 4
     Basis:0 1     2   3   10 11 12 7         8    9            Co-Basis:4   5   6

               0   1   2   3   4    5    6    7   8        9   10   11 12 13
      0        1   0   0   0   1    1    1    0     0      0   0    0   0    0
      1        0   1   0   0   -1   0    0    0     0      0   0    0   0    0
      2        0   0   1   0   0    -1   0    0     0      0   0    0   0    0
Basis 3        0   0   0   1   0    0    -1   0     0      0   0    0   0    0
      10       0   0   0   0   0    -1   1    0     0      0   1    0   0    1
      11       0   0   0   0   1    0    1    0     0      0   0    1   0    2
      12       0   0   0   0   -1   0    1    0     0      0   0    0   1    1
      7        0   0   0   0   1    0    0    1     0      0   0    0   0    1
      8        0   0   0   0   0    1    0    0     1      0   0    0   0    1
      9        0   0   0   0   0    1    1    0     0      1   0    0   0    2




June 29,2012                        Jayant Apte. ASPITRG                             59
Observations
 ●   Lexicographic simplex method doesn't travel
     through all the bases corresponding to a vertex
      ●   It only visits bases that are lex-positive
      ●   Recall
      ●   A basis is lex-positive if the rows indexed d+1,...,m of D
          are lex-positive
 ●




      ●   Lexicographic pivot rule is reversible!
 ●                     is reversible
June 29,2012                   Jayant Apte. ASPITRG                60
Reverse Search:
                   The Recipe
 ●   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'



June 29,2012              Jayant Apte. ASPITRG            61
What pivot would have landed me at this dictionary if i
                  was running simplex?




June 29,2012             Jayant Apte. ASPITRG                 62
Pitfalls
 ●   Initial basis not being the unique optimum basis
 ●   Degeneracy of other vertices: One vertex
     corresponding to many (actually too many)
     bases
      ●   Can result in program outputting a vertex more than
          once
 ●   Earlier version rs suffered from all these



June 29,2012               Jayant Apte. ASPITRG             63
Initial Basis not the unique optimum
                  basis
 ●   Reverse search must begin at the optimal vertex
     corresponding to any cost.
 ●   In rs, one would have to find all possible bases
     corresponding to initial vertex and perform reverse search on
     them.
 ●   In lrs, we define initial cost in such a way that initial vertex
     has a unique Basis
 ●   We define cost as:



 ●   This cost makes the top row of the dictionary
June 29,2012                  Jayant Apte. ASPITRG                      64
Degeneracy of vertices
 ●   Define lex-min bases
 ●




 ●   Clearly if (i)-(iii) was to be true, we could do
     and get                      that is lexicographically smaller
     than
 ●                   summarizes the operation

June 29,2012                 Jayant Apte. ASPITRG                 65
Evolution of lrs




    All possible Bases       A reduced set of bases        A reduced set of bases
    Very few vertices       Called lex-positive Bases       Called lex-min Bases
            rs            |lex-positive BFS>|Vertices||   |Lex-min BFS|=|Vertices|
    |BFS|>>|Vertices|




June 29,2012                      Jayant Apte. ASPITRG                               66
Recall these functions




June 29,2012          Jayant Apte. ASPITRG   67
Pseudo-code




June 29,2012     Jayant Apte. ASPITRG   68
Pseudo-code




      ●Examine each cobasic column of dictionary by reverse to see if there exists a
      lex positive pivot using this column
      ●Reverse will be executed d times for each dictionary


                                           X Cobasis={a,b,c}

                               Reverse(a)=p

               Cobasis={p,b,c} 1



June 29,2012                         Jayant Apte. ASPITRG                              69
Pseudo-code




                         X             Cobasis={a,b,c}

               Reverse(a)=0      Reverse(b)=?




June 29,2012                  Jayant Apte. ASPITRG       70
Pseudo-code


● When whie loop terminates, return to the parent of current node: backtrack
● Correct j is restored by selectpivot

● Subsequent j=j+1 means next cobasic element of the parent comes under

consideration

                             Backtrack

                             X            Cobasis={a,b,c}
                                     Reverse(c)=0
                   Reverse(a)=0
                              Reverse(b)=0




    June 29,2012                 Jayant Apte. ASPITRG                    71
Pseudo-code



               Execution continues until all the columns of the starting
               ●

               dictionary are examined




June 29,2012                       Jayant Apte. ASPITRG                    72
Lexicographic Reverse Search on
              our example
                           (0.5,0.5,1.5)           (1,1,1)


               (0,1,1)




                               (0,0,1)           (1,1,0)
                                                               You Are Here.


                 (0,1,0)
                                                             (1,0,0)

                                    (0,0,0)


June 29,2012                    Jayant Apte. ASPITRG                       73
V=(0 0 0)
                                                                          N=( 10 11 12)


                                                  reverse(10)=4                              reverse(12)=9
                                                                         reverse(11)=5       pivot(9,12)
                                                  pivot(4,10)                                                   V=(0 0 1)
                                                                         pivot(5,11)
                                V=(1 0 0)                                                                       N=(10 11 9)
                                N=(4 11 12)                                        V=0 1 0)
                                                                                   N=(10 5 12)                          reverse(11)=6
    reverse(4)=0                                                                                                        pivot(6,11)              V=(0 1 1)
                           reverse(12)=8               reverse(10)=4                                                                             N=(10 6 9)
                           pivot(8,12)                 pivot(4,10)
                                                                       reverse(12)=6reverse(5)=0             reverse(10)=7
                                                                       pivot(6,12)                           pivot(7,10)
    V=(1 0 1)
    N=(4 11 8)             reverse(11)=0                                                                               V=(0 0 1)                    reverse(9)=0
                                                                                                                       N=(7 11 9)
               reverse(11)=5              V=(1 1 0)         V=(0 1 1)
               pivot(5,11)                N=(4 5 12)                                         reverse(9)=0
                                                            N=(10 5 6)                                                       reverse(8)=0   reverse(12)=0

                                                                                                     reverse(11)=8
                                                                            V=(0.5 0.5 1.5)          pivot(8,11) reverse(9)=8
                                                                            N=(7 8 9)                            pivot(8,9)                       reverse(7)=0
               V=(1 1 1)
               N=(5 6 9)                                                                                                            V=(1 0 1)
                                                                                                                                    N=(8 12 9)
                                                         reverse(8)=0
                                                                          reverse(7)=6
                                                                          pivot(6,7)         reverse(9)=0
reverse(5)=0     reverse(6)=0    reverse(9)=0
                                                            V=(0.5 0.5 1.5)
                                                            N=(6 8 9)

                                                                          reverse(9)=5
                                                                          pivot(5,9)         reverse(8)=0        reverse(8)=0 reverse(12)=0      reverse(9)=0
                                                 reverse(6)=0                            V=(1 0 0)
                                                                                         N=(6 8 5)




                                                          reverse(6)=0        reverse(8)=0     reverse(5)=0
     June 29,2012                                                 Jayant Apte. ASPITRG                                                                        74
Conclusion
 ●   Lexicographic reverse search is an improved
     reverse search for vertex enumeration
 ●   It is robust- not affected by degeneracy
 ●   Yet, it travels more bases than there are
     vertices, hence requiring lot of computational
     power




June 29,2012           Jayant Apte. ASPITRG           75
Starting dictionary


               1   0   0   0   0    0    0     0      0   0   1    1    1    0
               0   1   0   0   0    0    0     0      0   0   -1   0    0    0
               0   0   1   0   0    0    0     0      0   0   0    -1   0    0
               0   0   0   1   0    0    0     0      0   0   0    0    -1   0
               0   0   0   0   1    0    0     0      0   0   1    0    0    1
               0   0   0   0   0    1    0     0      0   0   0    1    0    1
               0   0   0   0   0    0    1     0      0   0   0    1    1    2
               0   0   0   0   0    0    0     1      0   0   0    -1   1    1
               0   0   0   0   0    0    0     0      1   0   1    0    1    2
               0   0   0   0   0    0    0     0      0   1   -1   0    1    1




June 29,2012                   Jayant Apte. ASPITRG                              76
Result of pivot(4,10)
                     (real notation)

               1   0   0   0   -1    0    0     0    0     0   0   1    1    -1
               0   1   0   0   1     0    0     0    0     0   0   0    0    1
               0   0   1   0   0     0    0     0    0     0   0   -1   0    0
               0   0   0   1   0     0    0     0    0     0   0   0    -1   0
               0   0   0   0   1     0    0     0    0     0   1   0    0    1
               0   0   0   0   0     1    0     0    0     0   0   1    0    1
               0   0   0   0   0     0    1     0    0     0   0   1    1    2
               0   0   0   0   0     0    0     1    0     0   0   -1   1    1
               0   0   0   0   -1    0    0     0    1     0   0   0    1    1
               0   0   0   0   1     0    0     0    0     1   0   0    1    2




June 29,2012                        Jayant Apte. ASPITRG                          77
Result of pivot(8,12)

               1   0   0   0   0     0    0     0    -1    0   0   1    0   -2
               0   1   0   0   1     0    0     0    0     0   0   0    0   1
               0   0   1   0   0     0    0     0    0     0   0   -1   0   0
               0   0   0   1   -1    0    0     0    1     0   0   0    0   1
               0   0   0   0   1     0    0     0    0     0   1   0    0   1
               0   0   0   0   0     1    0     0    0     0   0   1    0   1
               0   0   0   0   1     0    1     0    -1    0   0   1    0   1
               0   0   0   0   1     0    0     1    -1    0   0   -1   0   0
               0   0   0   0   -1    0    0     0    1     0   0   0    1   1
               0   0   0   0   2     0    0     0    -1    1   0   0    0   1




June 29,2012                        Jayant Apte. ASPITRG                         78
Result of pivot(5,11)

               1   0   0   0   0     -1   0     0    -1    0   0   0   0   -3
               0   1   0   0   1     0    0     0    0     0   0   0   0   1
               0   0   1   0   0     1    0     0    0     0   0   0   0   1
               0   0   0   1   -1    0    0     0    1     0   0   0   0   1
               0   0   0   0   1     0    0     0    0     0   1   0   0   1
               0   0   0   0   0     1    0     0    0     0   0   1   0   1
               0   0   0   0   1     -1   1     0    -1    0   0   0   0   0
               0   0   0   0   1     1    0     1    -1    0   0   0   0   1
               0   0   0   0   -1    0    0     0    1     0   0   0   1   1
               0   0   0   0   2     0    0     0    -1    1   0   0   0   1




June 29,2012                        Jayant Apte. ASPITRG                        79
Now backtrack all the way to root




June 29,2012      Jayant Apte. ASPITRG    80
Result of pivot(5,11)


               1   0   0   0   0    -1   0     0    0     0   1    0   1    -1
               0   1   0   0   0    0    0     0    0     0   -1   0   0    0
               0   0   1   0   0    1    0     0    0     0   0    0   0    1
               0   0   0   1   0    0    0     0    0     0   0    0   -1   0
               0   0   0   0   1    0    0     0    0     0   1    0   0    1
               0   0   0   0   0    1    0     0    0     0   0    1   0    1
               0   0   0   0   0    -1   1     0    0     0   0    0   1    1
               0   0   0   0   0    1    0     1    0     0   0    0   1    2
               0   0   0   0   0    0    0     0    1     0   1    0   1    2
               0   0   0   0   0    0    0     0    0     1   -1   0   1    1




June 29,2012                       Jayant Apte. ASPITRG                          81
Result of pivot(4,10)

               1   0   0   0   -1    -1   0     0    0     0   0   0   1    -2
               0   1   0   0   1     0    0     0    0     0   0   0   0    1
               0   0   1   0   0     1    0     0    0     0   0   0   0    1
               0   0   0   1   0     0    0     0    0     0   0   0   -1   0
               0   0   0   0   1     0    0     0    0     0   1   0   0    1
               0   0   0   0   0     1    0     0    0     0   0   1   0    1
               0   0   0   0   0     -1   1     0    0     0   0   0   1    1
               0   0   0   0   0     1    0     1    0     0   0   0   1    2
               0   0   0   0   -1    0    0     0    1     0   0   0   1    1
               0   0   0   0   1     0    0     0    0     1   0   0   1    2




June 29,2012                        Jayant Apte. ASPITRG                         82
Backtrack 1 step: pivot(10,4)


                 1   0   0   0   0    -1   0     0    0     0   1    0   1    -1
                 0   1   0   0   0    0    0     0    0     0   -1   0   0    0
                 0   0   1   0   0    1    0     0    0     0   0    0   0    1
                 0   0   0   1   0    0    0     0    0     0   0    0   -1   0
                 0   0   0   0   1    0    0     0    0     0   1    0   0    1
                 0   0   0   0   0    1    0     0    0     0   0    1   0    1
                 0   0   0   0   0    -1   1     0    0     0   0    0   1    1
                 0   0   0   0   0    1    0     1    0     0   0    0   1    2
                 0   0   0   0   0    0    0     0    1     0   1    0   1    2
                 0   0   0   0   0    0    0     0    0     1   -1   0   1    1




June 29,2012                         Jayant Apte. ASPITRG                          83
Result of pivot(6,12)

               1   0    0   0   0   0    -1   0    0       0   1    0   0   -2
               0   1    0   0   0   0    0    0    0       0   -1   0   0   0
               0   0    1   0   0   1    0    0    0       0   0    0   0   1
               0   0    0   1   0   -1   1    0    0       0   0    0   0   1
               0   0    0   0   1   0    0    0    0       0   1    0   0   1
               0   0    0   0   0   1    0    0    0       0   0    1   0   1
               0   0    0   0   0   -1   1    0    0       0   0    0   1   1
               0   0    0   0   0   2    -1   1    0       0   0    0   0   1
               0   0    0   0   0   1    -1   0    1       0   1    0   0   1
               0   0    0   0   0   1    -1   0    0       1   -1   0   0   0




June 29,2012                        Jayant Apte. ASPITRG                         84
Backtrack all the way to root




June 29,2012              Jayant Apte. ASPITRG   85
Result of pivot(9,12)


               1   0   0   0   0   0    0     0       0   -1   2    1    0   -1
               0   1   0   0   0   0    0     0       0   0    -1   0    0   0
               0   0   1   0   0   0    0     0       0   0    0    -1   0   0
               0   0   0   1   0   0    0     0       0   1    -1   0    0   1
               0   0   0   0   1   0    0     0       0   0    1    0    0   1
               0   0   0   0   0   1    0     0       0   0    0    1    0   1
               0   0   0   0   0   0    1     0       0   -1   1    1    0   1
               0   0   0   0   0   0    0     1       0   -1   1    -1   0   0
               0   0   0   0   0   0    0     0       1   -1   2    0    0   1
               0   0   0   0   0   0    0     0       0   1    -1   0    1   1




June 29,2012                   Jayant Apte. ASPITRG                               86
Result of pivot (7,10)


               1   0   0   0   0     0     0    -2   0    1    0   3    0   -1
               0   1   0   0   0     0     0    1    0    -1   0   -1   0   0
               0   0   1   0   0     0     0    0    0    0    0   -1   0   0
               0   0   0   1   0     0     0    1    0    0    0   -1   0   1
               0   0   0   0   1     0     0    -1   0    1    0   1    0   1
               0   0   0   0   0     1     0    0    0    0    0   1    0   1
               0   0   0   0   0     0     1    -1   0    0    0   2    0   1
               0   0   0   0   0     0     0    1    0    -1   1   -1   0   0
               0   0   0   0   0     0     0    -2   1    1    0   2    0   1
               0   0   0   0   0     0     0    1    0    0    0   -1   1   1




June 29,2012                       Jayant Apte. ASPITRG                          87
Result of pivot(8,11)

          1    0   0   0   0   0   0      1     -1.5 -0.5 0   0   0   -2.5
          0    1   0   0   0   0   0      0     0.5 -0.5 0    0   0   0.5
          0    0   1   0   0   0   0      -1    0.5 0.5 0     0   0   0.5
          0    0   0   1   0   0   0      0     0.5 0.5 0     0   0   1.5
          0    0   0   0   1   0   0      0     -0.5 0.5 0    0   0   0.5
          0    0   0   0   0   1   0      1     -0.5 -0.5 0   0   0   0.5
          0    0   0   0   0   0   1      1     -1 -1 0       0   0   0
          0    0   0   0   0   0   0      0     0.5 -0.5 1    0   0   0.5
          0    0   0   0   0   0   0      -1    0.5 0.5 0     1   0   0.5
          0    0   0   0   0   0   0      0     0.5 0.5 0     0   1   1.5




June 29,2012                           Jayant Apte. ASPITRG                  88
Result of pivot(6,7)


               1   0   0   0   0   0   -1   0    -0.5 0.5 0    0   0   -2.5
               0   1   0   0   0   0   0    0    0.5 -0.5 0    0   0   0.5
               0   0   1   0   0   0   1    0    -0.5 -0.5 0   0   0   0.5
               0   0   0   1   0   0   0    0    0.5 0.5 0     0   0   1.5
               0   0   0   0   1   0   0    0    -0.5 0.5 0    0   0   0.5
               0   0   0   0   0   1   -1   0    0.5 0.5 0     0   0   0.5
               0   0   0   0   0   0   1    1    -1 -1 0       0   0   0
               0   0   0   0   0   0   0    0    0.5 -0.5 1    0   0   0.5
               0   0   0   0   0   0   1    0    -0.5 -0.5 0   1   0   0.5
               0   0   0   0   0   0   0    0    0.5 0.5 0     0   1   1.5




June 29,2012                       Jayant Apte. ASPITRG                       89
Result of pivot(6,10)

               1    0   0   0   0    -1   0     0      -1   0   0   0   0   -3
               0    1   0   0   0    1    -1    0      1    0   0   0   0   1
               0    0   1   0   0    1    0     0      0    0   0   0   0   1
               0    0   0   1   0    -1   1     0      0    0   0   0   0   1
               0    0   0   0   1    -1   1     0      -1   0   0   0   0   0
               0    0   0   0   0    2    -2    0      1    1   0   0   0   1
               0    0   0   0   0    2    -1    1      0    0   0   0   0   1
               0    0   0   0   0    1    -1    0      1    0   1   0   0   1
               0    0   0   0   0    1    0     0      0    0   0   1   0   1
               0    0   0   0   0    -1   1     0      0    0   0   0   1   1




June 29,2012                    Jayant Apte. ASPITRG                             90
Backtrack:
         pivot(9,5),pivot(7,6),pivot(11,8)

               1   0   0   0   0    0    0     -2     0   1    0   3    0   -1
               0   1   0   0   0    0    0     1      0   -1   0   -1   0   0
               0   0   1   0   0    0    0     0      0   0    0   -1   0   0
               0   0   0   1   0    0    0     1      0   0    0   -1   0   1
               0   0   0   0   1    0    0     -1     0   1    0   1    0   1
               0   0   0   0   0    1    0     0      0   0    0   1    0   1
               0   0   0   0   0    0    1     -1     0   0    0   2    0   1
               0   0   0   0   0    0    0     1      0   -1   1   -1   0   0
               0   0   0   0   0    0    0     -2     1   1    0   2    0   1
               0   0   0   0   0    0    0     1      0   0    0   -1   1   1




June 29,2012                   Jayant Apte. ASPITRG                              91
Result of pivot(8,9)


        1      0   0   0   0   0   0     0    -1    0    0    1    0   -2
        0      1   0   0   0   0   0     -1   1     0    0    1    0   1
        0      0   1   0   0   0   0     0    0     0    0    -1   0   0
        0      0   0   1   0   0   0     1    0     0    0    -1   0   1
        0      0   0   0   1   0   0     1    -1    0    0    -1   0   0
        0      0   0   0   0   1   0     0    0     0    0    1    0   1
        0      0   0   0   0   0   1     -1   0     0    0    2    0   1
        0      0   0   0   0   0   0     -1   1     0    1    1    0   1
        0      0   0   0   0   0   0     -2   1     1    0    2    0   1
        0      0   0   0   0   0   0     1    0     0    0    -1   1   1




June 29,2012                           Jayant Apte. ASPITRG                 92
Backtrack pivot(9,8),pivot(10,7)


        1      0   0   0   0   0   0     0    0     -1   2    1    0   -1
        0      1   0   0   0   0   0     0    0     0    -1   0    0   0
        0      0   1   0   0   0   0     0    0     0    0    -1   0   0
        0      0   0   1   0   0   0     0    0     1    -1   0    0   1
        0      0   0   0   1   0   0     0    0     0    1    0    0   1
        0      0   0   0   0   1   0     0    0     0    0    1    0   1
        0      0   0   0   0   0   1     0    0     -1   1    1    0   1
        0      0   0   0   0   0   0     1    0     -1   1    -1   0   0
        0      0   0   0   0   0   0     0    1     -1   2    0    0   1
        0      0   0   0   0   0   0     0    0     1    -1   0    1   1




June 29,2012                           Jayant Apte. ASPITRG                 93
Result of pivot(6,11)

               1   0   0   0   0    0    -1    0    0     0    1    0   0   -2
               0   1   0   0   0    0    0     0    0     0    -1   0   0   0
               0   0   1   0   0    0    1     0    0     -1   1    0   0   1
               0   0   0   1   0    0    0     0    0     1    -1   0   0   1
               0   0   0   0   1    0    0     0    0     0    1    0   0   1
               0   0   0   0   0    1    -1    0    0     1    -1   0   0   0
               0   0   0   0   0    0    1     0    0     -1   1    1   0   1
               0   0   0   0   0    0    1     1    0     -2   2    0   0   1
               0   0   0   0   0    0    0     0    1     -1   2    0   0   1
               0   0   0   0   0    0    0     0    0     1    -1   0   1   1




June 29,2012                       Jayant Apte. ASPITRG                          94
Backtrack to root




June 29,2012     Jayant Apte. ASPITRG   95
Proof of uniqueness of initial basis
 ● Suppose there exists another lex-positive
   optimum basis B
 ● Recall D matrix.




June 29,2012       Jayant Apte. ASPITRG     96
Proof of uniqueness of initial basis
                   B                                  B*={0,...m}
                             B-B*         B*-B        N*={m+1,...,m+d}




● Consider pivoting from B* to B. Indices B-B*=                   must be
  brought into basis
● Every pivot will involve subtracting a certain row vector from cost row


● Since B is also optimum


● It follows that                       is lexicographicallly negative




June 29,2012                   Jayant Apte. ASPITRG                         97

More Related Content

More from Jayant Apte, PhD

McKay's Algorithm for Isomorph-free Exhaustive Generation
McKay's Algorithm for Isomorph-free Exhaustive GenerationMcKay's Algorithm for Isomorph-free Exhaustive Generation
McKay's Algorithm for Isomorph-free Exhaustive GenerationJayant Apte, PhD
 
ISIT 2014, Hawaii presentation
ISIT 2014, Hawaii presentationISIT 2014, Hawaii presentation
ISIT 2014, Hawaii presentationJayant Apte, PhD
 
Adjacency Decomposition Method: Breaking up problems
Adjacency Decomposition Method: Breaking up problemsAdjacency Decomposition Method: Breaking up problems
Adjacency Decomposition Method: Breaking up problemsJayant Apte, PhD
 
Entropic Inequalities and marginal problems (Fritz and Chavez)
Entropic Inequalities and marginal problems (Fritz and Chavez) Entropic Inequalities and marginal problems (Fritz and Chavez)
Entropic Inequalities and marginal problems (Fritz and Chavez) Jayant Apte, PhD
 
Exact Repair problems with multiple sources: CISS 2014
Exact Repair problems with multiple sources: CISS 2014Exact Repair problems with multiple sources: CISS 2014
Exact Repair problems with multiple sources: CISS 2014Jayant Apte, PhD
 
Network Coding for Distributed Storage Systems(Group Meeting Talk)
Network Coding for Distributed Storage Systems(Group Meeting Talk)Network Coding for Distributed Storage Systems(Group Meeting Talk)
Network Coding for Distributed Storage Systems(Group Meeting Talk)Jayant Apte, PhD
 

More from Jayant Apte, PhD (9)

McKay's Algorithm for Isomorph-free Exhaustive Generation
McKay's Algorithm for Isomorph-free Exhaustive GenerationMcKay's Algorithm for Isomorph-free Exhaustive Generation
McKay's Algorithm for Isomorph-free Exhaustive Generation
 
ISIT 2014, Hawaii presentation
ISIT 2014, Hawaii presentationISIT 2014, Hawaii presentation
ISIT 2014, Hawaii presentation
 
Adjacency Decomposition Method: Breaking up problems
Adjacency Decomposition Method: Breaking up problemsAdjacency Decomposition Method: Breaking up problems
Adjacency Decomposition Method: Breaking up problems
 
Entropic Inequalities and marginal problems (Fritz and Chavez)
Entropic Inequalities and marginal problems (Fritz and Chavez) Entropic Inequalities and marginal problems (Fritz and Chavez)
Entropic Inequalities and marginal problems (Fritz and Chavez)
 
Exact Repair problems with multiple sources: CISS 2014
Exact Repair problems with multiple sources: CISS 2014Exact Repair problems with multiple sources: CISS 2014
Exact Repair problems with multiple sources: CISS 2014
 
Latex Workshop Tutorial
Latex Workshop TutorialLatex Workshop Tutorial
Latex Workshop Tutorial
 
Network Coding for Distributed Storage Systems(Group Meeting Talk)
Network Coding for Distributed Storage Systems(Group Meeting Talk)Network Coding for Distributed Storage Systems(Group Meeting Talk)
Network Coding for Distributed Storage Systems(Group Meeting Talk)
 
Candidacy Exam Talk
Candidacy Exam TalkCandidacy Exam Talk
Candidacy Exam Talk
 
Jayant chm
Jayant chmJayant chm
Jayant chm
 

Recently uploaded

9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 Delhi
9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 Delhi9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 Delhi
9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 DelhiCall Girls in Delhi
 
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRLMONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRLSeo
 
Call Girls in Gomti Nagar - 7388211116 - With room Service
Call Girls in Gomti Nagar - 7388211116  - With room ServiceCall Girls in Gomti Nagar - 7388211116  - With room Service
Call Girls in Gomti Nagar - 7388211116 - With room Servicediscovermytutordmt
 
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best Services
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best ServicesMysore Call Girls 8617370543 WhatsApp Number 24x7 Best Services
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best ServicesDipal Arora
 
Event mailer assignment progress report .pdf
Event mailer assignment progress report .pdfEvent mailer assignment progress report .pdf
Event mailer assignment progress report .pdftbatkhuu1
 
7.pdf This presentation captures many uses and the significance of the number...
7.pdf This presentation captures many uses and the significance of the number...7.pdf This presentation captures many uses and the significance of the number...
7.pdf This presentation captures many uses and the significance of the number...Paul Menig
 
A DAY IN THE LIFE OF A SALESMAN / WOMAN
A DAY IN THE LIFE OF A  SALESMAN / WOMANA DAY IN THE LIFE OF A  SALESMAN / WOMAN
A DAY IN THE LIFE OF A SALESMAN / WOMANIlamathiKannappan
 
Regression analysis: Simple Linear Regression Multiple Linear Regression
Regression analysis:  Simple Linear Regression Multiple Linear RegressionRegression analysis:  Simple Linear Regression Multiple Linear Regression
Regression analysis: Simple Linear Regression Multiple Linear RegressionRavindra Nath Shukla
 
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...Any kyc Account
 
Unlocking the Secrets of Affiliate Marketing.pdf
Unlocking the Secrets of Affiliate Marketing.pdfUnlocking the Secrets of Affiliate Marketing.pdf
Unlocking the Secrets of Affiliate Marketing.pdfOnline Income Engine
 
Call Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine ServiceCall Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine Serviceritikaroy0888
 
VIP Call Girls Gandi Maisamma ( Hyderabad ) Phone 8250192130 | ₹5k To 25k Wit...
VIP Call Girls Gandi Maisamma ( Hyderabad ) Phone 8250192130 | ₹5k To 25k Wit...VIP Call Girls Gandi Maisamma ( Hyderabad ) Phone 8250192130 | ₹5k To 25k Wit...
VIP Call Girls Gandi Maisamma ( Hyderabad ) Phone 8250192130 | ₹5k To 25k Wit...Suhani Kapoor
 
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...lizamodels9
 
Value Proposition canvas- Customer needs and pains
Value Proposition canvas- Customer needs and painsValue Proposition canvas- Customer needs and pains
Value Proposition canvas- Customer needs and painsP&CO
 
Boost the utilization of your HCL environment by reevaluating use cases and f...
Boost the utilization of your HCL environment by reevaluating use cases and f...Boost the utilization of your HCL environment by reevaluating use cases and f...
Boost the utilization of your HCL environment by reevaluating use cases and f...Roland Driesen
 
The Coffee Bean & Tea Leaf(CBTL), Business strategy case study
The Coffee Bean & Tea Leaf(CBTL), Business strategy case studyThe Coffee Bean & Tea Leaf(CBTL), Business strategy case study
The Coffee Bean & Tea Leaf(CBTL), Business strategy case studyEthan lee
 
M.C Lodges -- Guest House in Jhang.
M.C Lodges --  Guest House in Jhang.M.C Lodges --  Guest House in Jhang.
M.C Lodges -- Guest House in Jhang.Aaiza Hassan
 
Insurers' journeys to build a mastery in the IoT usage
Insurers' journeys to build a mastery in the IoT usageInsurers' journeys to build a mastery in the IoT usage
Insurers' journeys to build a mastery in the IoT usageMatteo Carbone
 

Recently uploaded (20)

9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 Delhi
9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 Delhi9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 Delhi
9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 Delhi
 
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRLMONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
 
Call Girls in Gomti Nagar - 7388211116 - With room Service
Call Girls in Gomti Nagar - 7388211116  - With room ServiceCall Girls in Gomti Nagar - 7388211116  - With room Service
Call Girls in Gomti Nagar - 7388211116 - With room Service
 
VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
 
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabiunwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
 
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best Services
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best ServicesMysore Call Girls 8617370543 WhatsApp Number 24x7 Best Services
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best Services
 
Event mailer assignment progress report .pdf
Event mailer assignment progress report .pdfEvent mailer assignment progress report .pdf
Event mailer assignment progress report .pdf
 
7.pdf This presentation captures many uses and the significance of the number...
7.pdf This presentation captures many uses and the significance of the number...7.pdf This presentation captures many uses and the significance of the number...
7.pdf This presentation captures many uses and the significance of the number...
 
A DAY IN THE LIFE OF A SALESMAN / WOMAN
A DAY IN THE LIFE OF A  SALESMAN / WOMANA DAY IN THE LIFE OF A  SALESMAN / WOMAN
A DAY IN THE LIFE OF A SALESMAN / WOMAN
 
Regression analysis: Simple Linear Regression Multiple Linear Regression
Regression analysis:  Simple Linear Regression Multiple Linear RegressionRegression analysis:  Simple Linear Regression Multiple Linear Regression
Regression analysis: Simple Linear Regression Multiple Linear Regression
 
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...
 
Unlocking the Secrets of Affiliate Marketing.pdf
Unlocking the Secrets of Affiliate Marketing.pdfUnlocking the Secrets of Affiliate Marketing.pdf
Unlocking the Secrets of Affiliate Marketing.pdf
 
Call Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine ServiceCall Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine Service
 
VIP Call Girls Gandi Maisamma ( Hyderabad ) Phone 8250192130 | ₹5k To 25k Wit...
VIP Call Girls Gandi Maisamma ( Hyderabad ) Phone 8250192130 | ₹5k To 25k Wit...VIP Call Girls Gandi Maisamma ( Hyderabad ) Phone 8250192130 | ₹5k To 25k Wit...
VIP Call Girls Gandi Maisamma ( Hyderabad ) Phone 8250192130 | ₹5k To 25k Wit...
 
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
 
Value Proposition canvas- Customer needs and pains
Value Proposition canvas- Customer needs and painsValue Proposition canvas- Customer needs and pains
Value Proposition canvas- Customer needs and pains
 
Boost the utilization of your HCL environment by reevaluating use cases and f...
Boost the utilization of your HCL environment by reevaluating use cases and f...Boost the utilization of your HCL environment by reevaluating use cases and f...
Boost the utilization of your HCL environment by reevaluating use cases and f...
 
The Coffee Bean & Tea Leaf(CBTL), Business strategy case study
The Coffee Bean & Tea Leaf(CBTL), Business strategy case studyThe Coffee Bean & Tea Leaf(CBTL), Business strategy case study
The Coffee Bean & Tea Leaf(CBTL), Business strategy case study
 
M.C Lodges -- Guest House in Jhang.
M.C Lodges --  Guest House in Jhang.M.C Lodges --  Guest House in Jhang.
M.C Lodges -- Guest House in Jhang.
 
Insurers' journeys to build a mastery in the IoT usage
Insurers' journeys to build a mastery in the IoT usageInsurers' journeys to build a mastery in the IoT usage
Insurers' journeys to build a mastery in the IoT usage
 

Introduction to Lexicographic Reverse Search (LRS

  • 1. Introduction to Lexicographic Reverse Search: lrs June 29, 2012 Jayant Apte ASPITRG
  • 2. Outline ●Introduction ●Lexicographic Simplex Algorithm ●Lex-positive and Lex min bases ●The pitfalls in reverse search ●Lexicographic Reverse search June 29,2012 Jayant Apte. ASPITRG 2
  • 3. Introduction ● Representations of a Polyhedron ● Reverse Search: Some Trivia ● Reverse Search: The high level idea June 29,2012 Jayant Apte. ASPITRG 3
  • 4. H-Representation of a Polyhedron June 29,2012 Jayant Apte. ASPITRG 4
  • 5. V-Representation of a Polyhedron June 29,2012 Jayant Apte. ASPITRG 5
  • 6. Switching between the two representations ● H-representation V-representation: The Vertex Enumeration problem ● Methods: ● Reverse Search, Lexicographic Reverse Search ● Double-description method ● Reverse search is the most robust method June 29,2012 Jayant Apte. ASPITRG 6
  • 7. Brief history of Reverse Search ● Presented by David Avis and Komei Fukuda in a 1992 article “A Pivoting Algorithm for Convex Hulls and Vertex Enumeration of Arrangements and Polyhedra" ● A C implementation: rs ● Modified by Avis in 1998 to use lexicographic pivoting and implemented in rational arithmetic ● A C implementation: lrs June 29,2012 Jayant Apte. ASPITRG 7
  • 8. Applications ● Finding the vertices and extreme rays given the H- representation of polyhedron ● Facet enumeration: V-representation to H- representation ● Enumerating all veritces of Voronoi diagram ● Computing volume of convex hull of set of points ● Estimation of number of vertices of polyhedron ● Nash equilibrium in non-cooperative bi-matrix games June 29,2012 Jayant Apte. ASPITRG 8
  • 9. Relationship between Simplex Algorithm and Reverse Search ● Simplex Algorithm is used for solving linear programs ● Simplex Algorithm starts at any vertex of polyhedron defined by the constraint set ● Travels along the edges of polyhedron to find the optimum ● Reverse search runs simplex in reverse ● Traces all possible paths taken by Simplex algorithm in reverse June 29,2012 Jayant Apte. ASPITRG 9
  • 10. Relationship between Simplex Algorithm and Reverse Search Ref.David Avis, lrs: A Revised Implementation of the Reverse Search Vertex Enumeration Algorithm June 29,2012 Jayant Apte. ASPITRG 10
  • 11. Background: Lexicographic Order June 29,2012 Jayant Apte. ASPITRG 11
  • 12. Vectors ● Comparing two vectors in lexicographic sense ● e.g. [5, 4, 1, 7, 4] [5, 4, 0, 9, 8 ] ● Lex-positive vector ● First non-zero element is positive ● e.g. [0, 4, -1, -7, -4], [5, -4, 1, -7, 4] are lexicographically positive vectors ● e.g. [0 -4 -1 -7 -4], [-5 - 4 1 -7 4] are lexicographically negative vectors ● Lex-min vector ● Out of [1 2 3 -5 9],[1 2 0 9 9], [2 3 6 -7 1]; [1 2 0 9 9] is lex-min vector June 29,2012 Jayant Apte. ASPITRG 12
  • 13. Lexicographic Simplex Method June 29,2012 Jayant Apte. ASPITRG 13
  • 14. The Linear Programming Problem Objective Function Constraint Set ●d-decision variables ●m-constraints June 29,2012 Jayant Apte. ASPITRG 14
  • 15. Example June 29,2012 Jayant Apte. ASPITRG 15
  • 16. Nature of Constrained Region (0.5,0.5,1.5) (1,1,1) (0,1,1) (0,0,1) (1,1,0) (0,1,0) (1,0,0) (0,0,0) June 29,2012 Jayant Apte. ASPITRG 16
  • 17. Relationship between inequalities and Vertex: Geometric intuition of Degeneracy Highlighted inequalities are tight at (0,0,1) (0,0,1) June 29,2012 Jayant Apte. ASPITRG 17
  • 18. Relationship between inequalities and Vertex: Geometric intuition of Degeneracy (0,0,1) June 29,2012 Jayant Apte. ASPITRG 18
  • 19. Relationship between Co-Basis and Vertex: Geometric intuition of Degeneracy ● (0,0,1) is a degenerate vertex ● There are ways of specifying the vertex (0,0,1) ● In general this number are ways of representing a degenerate vertex, where n=total number of inequalities that are tight at that vertex d=number of dimensions ● This number can get very large very quickly. ● One of the places where simplex and by implication reverse search runs into problems. June 29,2012 Jayant Apte. ASPITRG 19
  • 20. How to solve this LP? ● Rearrange inequalities to decide a starting vertex ● Introduce slack variables ● Convert to matrix form ● Convert to dictionary form June 29,2012 Jayant Apte. ASPITRG 20
  • 21. Starting Simplex at a vertex: Rearrangement of the inequalities ●Rearrange the inequalities so that last 'd' inequalities contain initial vertex (0.5,0.5,1.5) June 29,2012 Jayant Apte. ASPITRG 21
  • 22. Define Slack Variables ●Convert inequalities to equalities by introducing slack variables ●Original variables are called decision variables June 29,2012 Jayant Apte. ASPITRG 22
  • 23. Our Example June 29,2012 Jayant Apte. ASPITRG 23
  • 24. Our Example -1 0 0 1 0 0 0 0 0 0 0 0 0 -1 0 0 1 0 0 0 0 0 0 0 0 0 -1 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 0 -1 1 0 0 0 0 0 0 1 0 0 1 0 1 0 0 0 0 0 0 0 1 0 -1 0 1 0 0 0 0 0 0 0 0 1 June 29,2012 Jayant Apte. ASPITRG 24
  • 25. Terminology ➢ d decision variables ➢ m constraints ➢ Hence m slack variables ➢ Basis: B: Ordered m-tuple indexing set of m affinely independent columns of A ➢ ➢ Co-basis: N: Ordered d-tuple indexing remaining d columns ➢ : Sub-matrix of A indexed by B June 29,2012 Jayant Apte. ASPITRG 25
  • 26. Our example We define initial basis as Hence initial co-basis is -1 0 0 1 0 0 0 0 0 0 0 0 0 -1 0 0 1 0 0 0 0 0 0 0 0 0 -1 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 0 -1 1 0 0 0 0 0 0 1 0 0 1 0 1 0 0 0 0 0 0 0 1 0 -1 0 1 0 0 0 0 0 0 0 0 1 June 29,2012 Jayant Apte. ASPITRG 26
  • 27. Our example is invertible Is a Basic Feasible Solution(BFS) -1 0 0 1 0 0 0 0 0 0 0 0 0 -1 0 0 1 0 0 0 0 0 0 0 0 0 -1 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 0 -1 1 0 0 0 0 0 0 1 0 0 1 0 1 0 0 0 0 0 0 0 1 0 -1 0 1 0 0 0 0 0 0 0 0 1 June 29,2012 Jayant Apte. ASPITRG 27
  • 28. Add a cost row ● Add a cost row at the top June 29,2012 Jayant Apte. ASPITRG 28
  • 29. Our example 0 1 2 3 4 5 6 7 8 9 10 11 12 1 1 1 1 0 0 0 0 0 0 0 0 0 0 -1 0 0 1 0 0 0 0 0 0 0 0 0 0 -1 0 0 1 0 0 0 0 0 0 0 0 0 0 -1 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 0 0 -1 1 0 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 0 0 0 0 1 0 0 -1 0 1 0 0 0 0 0 0 0 0 1 June 29,2012 Jayant Apte. ASPITRG 29
  • 30. Converting Linear program to the dictionary format June 29,2012 Jayant Apte. ASPITRG 30
  • 31. Derive the dictionary from matrix form June 29,2012 Jayant Apte. ASPITRG 31
  • 32. Our example Cost function value At current vertex The vertex June 29,2012 Jayant Apte. ASPITRG 32
  • 33. Dictionary Format Change in Cost Corresponding to each Cost Corresponding Co-basic Variable To Dictionary Basic Indices Co-Basic Indices Solution Corresponding To Dictionary June 29,2012 Jayant Apte. ASPITRG 33
  • 34. Redefine a bit Basis: B: Ordered m+1-tuple indexing set of m+1 affinely independent columns of dictionary & Dictionary is to serve as starting point Call this the solution of the initial dictionary or the initial Call this the initial implying that initial basis is identity matrix June 29,2012 Jayant Apte. ASPITRG 34
  • 35. Our example 0 1 2 3 4 5 6 7 8 9 10 11 12 13 0 1 0 0 0 0 0 0 0 0 0 1 -1.5 -0.5 -2.5 Cost 1 0 1 0 0 0 0 0 0 0 0 0 0.5 -0.5 0.5 2 0 0 1 0 0 0 0 0 0 0 -1 0.5 0.5 0.5 The 3 0 0 0 1 0 0 0 0 0 0 0 0.5 0.5 1.5 vertex Basis 4 0 0 0 0 1 0 0 0 0 0 0 0.5 -0.5 0.5 5 0 0 0 0 0 1 0 0 0 0 -1 0.5 0.5 0.5 6 0 0 0 0 0 0 1 0 0 0 0 0.5 0.5 1.5 7 0 0 0 0 0 0 0 1 0 0 0 -0.5 0.5 0.5 8 0 0 0 0 0 0 0 0 1 0 1 -0.5 -0.5 0.5 9 0 0 0 0 0 0 0 0 0 1 1 -1 -1 0 June 29,2012 Jayant Apte. ASPITRG 35
  • 36. Simplex Algorithm: The Ingredients ● It travels from one vertex to another, or more specifically one BFS to another BFS ● For that it uses pivoting operation to obtain the dictionary corresponding to new BFS. ● A co-basic variable assumes a nonzero value and is said to 'enter' the basis ● A basic variable 'leaves' the basis ● We get a new dictionary which is 'equivalent' to current dictionary in algebraic terms, i.e. It carries the same solution ● This new dictionary is obtained by means of 'pivot operation'. June 29,2012 Jayant Apte. ASPITRG 36
  • 37. Choosing the entering variable ● Choose the entering variable that brings about an increase in cost One of these is supposed to assume a nonzero value ● Only a negative coefficient at will do as it will mean that is positive and results in an increase in cost ● If there are many such co-basic variables, choose the one with least subscript ● If there are no such co-basic variables, current dictionary is optimal and current BFS is the optimum June 29,2012 Jayant Apte. ASPITRG 37
  • 38. Choosing entering variable 0 1 2 3 4 5 6 7 8 9 10 11 12 13 0 1 0 0 0 0 0 0 0 0 0 1 -1.5 -0.5 -2.5 1 0 1 0 0 0 0 0 0 0 0 0 0.5 -0.5 0.5 2 0 0 1 0 0 0 0 0 0 0 -1 0.5 0.5 0.5 3 0 0 0 1 0 0 0 0 0 0 0 0.5 0.5 1.5 Basis 4 0 0 0 0 1 0 0 0 0 0 0 0.5 -0.5 0.5 5 0 0 0 0 0 1 0 0 0 0 -1 0.5 0.5 0.5 6 0 0 0 0 0 0 1 0 0 0 0 0.5 0.5 1.5 7 0 0 0 0 0 0 0 1 0 0 0 -0.5 0.5 0.5 8 0 0 0 0 0 0 0 0 1 0 1 -0.5 -0.5 0.5 9 0 0 0 0 0 0 0 0 0 1 1 -1 -1 0 June 29,2012 Jayant Apte. ASPITRG 38
  • 39. Choosing the leaving variable ● Recall lexicographic order ● Construct following matrix: June 29,2012 Jayant Apte. ASPITRG 39
  • 40. Choosing the leaving variable ● Let and consider the column . If this column defines an extreme ray. ● Otherwise, let be the index such that is lexicographically minimum vector of: ● Such a minimum is unique as has full row rank ● This notation can be abbreviated as, ● In case there is no such we set June 29,2012 Jayant Apte. ASPITRG 40
  • 41. Choosing the Leaving Variable 0 1 2 3 4 5 6 7 8 9 10 11 12 13 0 1 0 0 0 0 0 0 0 0 0 1 -1.5 -0.5 -2.5 1 0 1 0 0 0 0 0 0 0 0 0 0.5 -0.5 0.5 2 0 0 1 0 0 0 0 0 0 0 -1 0.5 0.5 0.5 3 0 0 0 1 0 0 0 0 0 0 0 0.5 0.5 1.5 Basis 4 0 0 0 0 1 0 0 0 0 0 0 0.5 -0.5 0.5 5 0 0 0 0 0 1 0 0 0 0 -1 0.5 0.5 0.5 6 0 0 0 0 0 0 1 0 0 0 0 0.5 0.5 1.5 7 0 0 0 0 0 0 0 1 0 0 0 -0.5 0.5 0.5 8 0 0 0 0 0 0 0 0 1 0 1 -0.5 -0.5 0.5 9 0 0 0 0 0 0 0 0 0 1 1 -1 -1 0 June 29,2012 Jayant Apte. ASPITRG 41
  • 42. Lexicographic choice of leaving variable June 29,2012 Jayant Apte. ASPITRG 42
  • 43. Where to get after each successive iteration? ● Let be current basis inverse and be the next basis inverse ● and differ only in 1 column ● We can take advantage of this fact and write ● Pre-multiplication by elementary matrix corresponds to row operations ● Hence, we get new basis inverse by some row operations June 29,2012 Jayant Apte. ASPITRG 43
  • 44. The pivot Operation June 29,2012 Jayant Apte. ASPITRG 44
  • 45. This is how to get after each successive iteration ● is given as: June 29,2012 Jayant Apte. ASPITRG 45
  • 46. This is how to get after each successive iteration Row multiplication Operation ●Row corresponding to pivot element is divided by pivot element Hence pivot operation automatically yields new basis inverse June 29,2012 Jayant Apte. ASPITRG 46
  • 47. Result of pivot (5,11) Basis:0 1 2 3 4 11 6 7 8 9 Co-Basis:10 5 12 0 1 2 3 4 5 6 7 8 9 10 11 12 13 0 1 0 0 0 0 3 0 0 0 0 -2 0 1 -1 1 0 1 0 0 0 -1 0 0 0 0 1 0 -1 0 2 0 0 1 0 0 -1 0 0 0 0 0 0 0 0 3 0 0 0 1 0 -1 0 0 0 0 1 0 0 1 4 0 0 0 0 1 -1 0 0 0 0 1 0 -1 0 Basis 11 0 0 0 0 0 2 0 0 0 0 -2 1 1 1 6 0 0 0 0 0 -1 1 0 0 0 1 0 0 1 7 0 0 0 0 0 1 0 1 0 0 -1 0 1 1 8 0 0 0 0 0 1 0 0 1 0 0 0 0 1 9 0 0 0 0 0 2 0 0 0 1 -1 0 0 1 Identity column June 29,2012 Jayant Apte. ASPITRG 47
  • 48. Solving Linear Programs: Simplex Algorithm June 29,2012 Jayant Apte. ASPITRG 48
  • 49. Iteration 1 You Are Here. (0.5,0.5,1.5) (1,1,1) (0,1,1) (0,0,1) (1,1,0) (0,1,0) (1,0,0) (0,0,0) June 29,2012 Jayant Apte. ASPITRG 49
  • 50. Iteration 1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 0 1 0 0 0 0 0 0 0 0 0 1 -1.5 -0.5 -2.5 Cost 1 0 1 0 0 0 0 0 0 0 0 0 0.5 -0.5 0.5 2 0 0 1 0 0 0 0 0 0 0 -1 0.5 0.5 0.5 The 3 0 0 0 1 0 0 0 0 0 0 0 0.5 0.5 1.5 vertex Basis 4 0 0 0 0 1 0 0 0 0 0 0 0.5 -0.5 0.5 5 0 0 0 0 0 1 0 0 0 0 -1 0.5 0.5 0.5 6 0 0 0 0 0 0 1 0 0 0 0 0.5 0.5 1.5 7 0 0 0 0 0 0 0 1 0 0 0 -0.5 0.5 0.5 8 0 0 0 0 0 0 0 0 1 0 1 -0.5 -0.5 0.5 9 0 0 0 0 0 0 0 0 0 1 1 -1 -1 0 June 29,2012 Jayant Apte. ASPITRG 50
  • 51. Pivot(5,11) June 29,2012 Jayant Apte. ASPITRG 51
  • 52. Iteration 2 You Are Here. (0.5,0.5,1.5) (1,1,1) (0,1,1) (0,0,1) (1,1,0) (0,1,0) (1,0,0) (0,0,0) June 29,2012 Jayant Apte. ASPITRG 52
  • 53. Iteration 2 Basis:0 1 2 3 4 11 6 7 8 9 Co-Basis:10 5 12 0 1 2 3 4 5 6 7 8 9 10 11 12 13 0 1 0 0 0 0 3 0 0 0 0 -2 0 1 -1 1 0 1 0 0 0 -1 0 0 0 0 1 0 -1 0 2 0 0 1 0 0 -1 0 0 0 0 0 0 0 0 3 0 0 0 1 0 -1 0 0 0 0 1 0 0 1 4 0 0 0 0 1 -1 0 0 0 0 1 0 -1 0 Basis 11 0 0 0 0 0 2 0 0 0 0 -2 1 1 1 6 0 0 0 0 0 -1 1 0 0 0 1 0 0 1 7 0 0 0 0 0 1 0 1 0 0 -1 0 1 1 8 0 0 0 0 0 1 0 0 1 0 0 0 0 1 9 0 0 0 0 0 2 0 0 0 1 -1 0 0 1 June 29,2012 Jayant Apte. ASPITRG 53
  • 54. pivot(4,10) June 29,2012 Jayant Apte. ASPITRG 54
  • 55. Iteration 3 You Are Still Here. Blame degeneracy! (0.5,0.5,1.5) (1,1,1) (0,1,1) (0,0,1) (1,1,0) (0,1,0) (1,0,0) (0,0,0) June 29,2012 Jayant Apte. ASPITRG 55
  • 56. Iteration 3 Basis:0 1 2 3 10 11 6 7 8 9 Co-Basis:4 5 12 0 1 2 3 4 5 6 7 8 9 10 11 12 13 0 1 0 0 0 2 1 0 0 0 0 0 0 -1 -1 1 0 1 0 0 -1 0 0 0 0 0 0 0 0 0 2 0 0 1 0 0 -1 0 0 0 0 0 0 0 0 Basis 3 0 0 0 1 -1 0 0 0 0 0 0 0 1 1 10 0 0 0 0 1 -1 0 0 0 0 1 0 -1 0 11 0 0 0 0 2 0 0 0 0 0 0 1 -1 1 6 0 0 0 0 -1 0 1 0 0 0 0 0 1 1 7 0 0 0 0 1 0 0 1 0 0 0 0 0 1 8 0 0 0 0 0 1 0 0 1 0 0 0 0 1 9 0 0 0 0 1 1 0 0 0 1 0 0 -1 1 June 29,2012 Jayant Apte. ASPITRG 56
  • 57. pivot(6,12) June 29,2012 Jayant Apte. ASPITRG 57
  • 58. Iteration 4 (0.5,0.5,1.5) (1,1,1) (0,1,1) (0,0,1) (1,1,0) You Are Here. (0,1,0) (1,0,0) (0,0,0) June 29,2012 Jayant Apte. ASPITRG 58
  • 59. Iteration 4 Basis:0 1 2 3 10 11 12 7 8 9 Co-Basis:4 5 6 0 1 2 3 4 5 6 7 8 9 10 11 12 13 0 1 0 0 0 1 1 1 0 0 0 0 0 0 0 1 0 1 0 0 -1 0 0 0 0 0 0 0 0 0 2 0 0 1 0 0 -1 0 0 0 0 0 0 0 0 Basis 3 0 0 0 1 0 0 -1 0 0 0 0 0 0 0 10 0 0 0 0 0 -1 1 0 0 0 1 0 0 1 11 0 0 0 0 1 0 1 0 0 0 0 1 0 2 12 0 0 0 0 -1 0 1 0 0 0 0 0 1 1 7 0 0 0 0 1 0 0 1 0 0 0 0 0 1 8 0 0 0 0 0 1 0 0 1 0 0 0 0 1 9 0 0 0 0 0 1 1 0 0 1 0 0 0 2 June 29,2012 Jayant Apte. ASPITRG 59
  • 60. Observations ● Lexicographic simplex method doesn't travel through all the bases corresponding to a vertex ● It only visits bases that are lex-positive ● Recall ● A basis is lex-positive if the rows indexed d+1,...,m of D are lex-positive ● ● Lexicographic pivot rule is reversible! ● is reversible June 29,2012 Jayant Apte. ASPITRG 60
  • 61. Reverse Search: The Recipe ● 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' June 29,2012 Jayant Apte. ASPITRG 61
  • 62. What pivot would have landed me at this dictionary if i was running simplex? June 29,2012 Jayant Apte. ASPITRG 62
  • 63. Pitfalls ● Initial basis not being the unique optimum basis ● Degeneracy of other vertices: One vertex corresponding to many (actually too many) bases ● Can result in program outputting a vertex more than once ● Earlier version rs suffered from all these June 29,2012 Jayant Apte. ASPITRG 63
  • 64. Initial Basis not the unique optimum basis ● Reverse search must begin at the optimal vertex corresponding to any cost. ● In rs, one would have to find all possible bases corresponding to initial vertex and perform reverse search on them. ● In lrs, we define initial cost in such a way that initial vertex has a unique Basis ● We define cost as: ● This cost makes the top row of the dictionary June 29,2012 Jayant Apte. ASPITRG 64
  • 65. Degeneracy of vertices ● Define lex-min bases ● ● Clearly if (i)-(iii) was to be true, we could do and get that is lexicographically smaller than ● summarizes the operation June 29,2012 Jayant Apte. ASPITRG 65
  • 66. Evolution of lrs All possible Bases A reduced set of bases A reduced set of bases Very few vertices Called lex-positive Bases Called lex-min Bases rs |lex-positive BFS>|Vertices|| |Lex-min BFS|=|Vertices| |BFS|>>|Vertices| June 29,2012 Jayant Apte. ASPITRG 66
  • 67. Recall these functions June 29,2012 Jayant Apte. ASPITRG 67
  • 68. Pseudo-code June 29,2012 Jayant Apte. ASPITRG 68
  • 69. Pseudo-code ●Examine each cobasic column of dictionary by reverse to see if there exists a lex positive pivot using this column ●Reverse will be executed d times for each dictionary X Cobasis={a,b,c} Reverse(a)=p Cobasis={p,b,c} 1 June 29,2012 Jayant Apte. ASPITRG 69
  • 70. Pseudo-code X Cobasis={a,b,c} Reverse(a)=0 Reverse(b)=? June 29,2012 Jayant Apte. ASPITRG 70
  • 71. Pseudo-code ● When whie loop terminates, return to the parent of current node: backtrack ● Correct j is restored by selectpivot ● Subsequent j=j+1 means next cobasic element of the parent comes under consideration Backtrack X Cobasis={a,b,c} Reverse(c)=0 Reverse(a)=0 Reverse(b)=0 June 29,2012 Jayant Apte. ASPITRG 71
  • 72. Pseudo-code Execution continues until all the columns of the starting ● dictionary are examined June 29,2012 Jayant Apte. ASPITRG 72
  • 73. Lexicographic Reverse Search on our example (0.5,0.5,1.5) (1,1,1) (0,1,1) (0,0,1) (1,1,0) You Are Here. (0,1,0) (1,0,0) (0,0,0) June 29,2012 Jayant Apte. ASPITRG 73
  • 74. V=(0 0 0) N=( 10 11 12) reverse(10)=4 reverse(12)=9 reverse(11)=5 pivot(9,12) pivot(4,10) V=(0 0 1) pivot(5,11) V=(1 0 0) N=(10 11 9) N=(4 11 12) V=0 1 0) N=(10 5 12) reverse(11)=6 reverse(4)=0 pivot(6,11) V=(0 1 1) reverse(12)=8 reverse(10)=4 N=(10 6 9) pivot(8,12) pivot(4,10) reverse(12)=6reverse(5)=0 reverse(10)=7 pivot(6,12) pivot(7,10) V=(1 0 1) N=(4 11 8) reverse(11)=0 V=(0 0 1) reverse(9)=0 N=(7 11 9) reverse(11)=5 V=(1 1 0) V=(0 1 1) pivot(5,11) N=(4 5 12) reverse(9)=0 N=(10 5 6) reverse(8)=0 reverse(12)=0 reverse(11)=8 V=(0.5 0.5 1.5) pivot(8,11) reverse(9)=8 N=(7 8 9) pivot(8,9) reverse(7)=0 V=(1 1 1) N=(5 6 9) V=(1 0 1) N=(8 12 9) reverse(8)=0 reverse(7)=6 pivot(6,7) reverse(9)=0 reverse(5)=0 reverse(6)=0 reverse(9)=0 V=(0.5 0.5 1.5) N=(6 8 9) reverse(9)=5 pivot(5,9) reverse(8)=0 reverse(8)=0 reverse(12)=0 reverse(9)=0 reverse(6)=0 V=(1 0 0) N=(6 8 5) reverse(6)=0 reverse(8)=0 reverse(5)=0 June 29,2012 Jayant Apte. ASPITRG 74
  • 75. Conclusion ● Lexicographic reverse search is an improved reverse search for vertex enumeration ● It is robust- not affected by degeneracy ● Yet, it travels more bases than there are vertices, hence requiring lot of computational power June 29,2012 Jayant Apte. ASPITRG 75
  • 76. Starting dictionary 1 0 0 0 0 0 0 0 0 0 1 1 1 0 0 1 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 0 1 0 0 0 0 1 1 2 0 0 0 0 0 0 0 1 0 0 0 -1 1 1 0 0 0 0 0 0 0 0 1 0 1 0 1 2 0 0 0 0 0 0 0 0 0 1 -1 0 1 1 June 29,2012 Jayant Apte. ASPITRG 76
  • 77. Result of pivot(4,10) (real notation) 1 0 0 0 -1 0 0 0 0 0 0 1 1 -1 0 1 0 0 1 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 0 1 0 0 0 0 1 1 2 0 0 0 0 0 0 0 1 0 0 0 -1 1 1 0 0 0 0 -1 0 0 0 1 0 0 0 1 1 0 0 0 0 1 0 0 0 0 1 0 0 1 2 June 29,2012 Jayant Apte. ASPITRG 77
  • 78. Result of pivot(8,12) 1 0 0 0 0 0 0 0 -1 0 0 1 0 -2 0 1 0 0 1 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 1 -1 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 1 0 1 0 -1 0 0 1 0 1 0 0 0 0 1 0 0 1 -1 0 0 -1 0 0 0 0 0 0 -1 0 0 0 1 0 0 0 1 1 0 0 0 0 2 0 0 0 -1 1 0 0 0 1 June 29,2012 Jayant Apte. ASPITRG 78
  • 79. Result of pivot(5,11) 1 0 0 0 0 -1 0 0 -1 0 0 0 0 -3 0 1 0 0 1 0 0 0 0 0 0 0 0 1 0 0 1 0 0 1 0 0 0 0 0 0 0 1 0 0 0 1 -1 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 1 -1 1 0 -1 0 0 0 0 0 0 0 0 0 1 1 0 1 -1 0 0 0 0 1 0 0 0 0 -1 0 0 0 1 0 0 0 1 1 0 0 0 0 2 0 0 0 -1 1 0 0 0 1 June 29,2012 Jayant Apte. ASPITRG 79
  • 80. Now backtrack all the way to root June 29,2012 Jayant Apte. ASPITRG 80
  • 81. Result of pivot(5,11) 1 0 0 0 0 -1 0 0 0 0 1 0 1 -1 0 1 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 -1 1 0 0 0 0 0 1 1 0 0 0 0 0 1 0 1 0 0 0 0 1 2 0 0 0 0 0 0 0 0 1 0 1 0 1 2 0 0 0 0 0 0 0 0 0 1 -1 0 1 1 June 29,2012 Jayant Apte. ASPITRG 81
  • 82. Result of pivot(4,10) 1 0 0 0 -1 -1 0 0 0 0 0 0 1 -2 0 1 0 0 1 0 0 0 0 0 0 0 0 1 0 0 1 0 0 1 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 -1 1 0 0 0 0 0 1 1 0 0 0 0 0 1 0 1 0 0 0 0 1 2 0 0 0 0 -1 0 0 0 1 0 0 0 1 1 0 0 0 0 1 0 0 0 0 1 0 0 1 2 June 29,2012 Jayant Apte. ASPITRG 82
  • 83. Backtrack 1 step: pivot(10,4) 1 0 0 0 0 -1 0 0 0 0 1 0 1 -1 0 1 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 -1 1 0 0 0 0 0 1 1 0 0 0 0 0 1 0 1 0 0 0 0 1 2 0 0 0 0 0 0 0 0 1 0 1 0 1 2 0 0 0 0 0 0 0 0 0 1 -1 0 1 1 June 29,2012 Jayant Apte. ASPITRG 83
  • 84. Result of pivot(6,12) 1 0 0 0 0 0 -1 0 0 0 1 0 0 -2 0 1 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 1 0 0 0 1 0 -1 1 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 -1 1 0 0 0 0 0 1 1 0 0 0 0 0 2 -1 1 0 0 0 0 0 1 0 0 0 0 0 1 -1 0 1 0 1 0 0 1 0 0 0 0 0 1 -1 0 0 1 -1 0 0 0 June 29,2012 Jayant Apte. ASPITRG 84
  • 85. Backtrack all the way to root June 29,2012 Jayant Apte. ASPITRG 85
  • 86. Result of pivot(9,12) 1 0 0 0 0 0 0 0 0 -1 2 1 0 -1 0 1 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 1 0 0 0 0 0 1 -1 0 0 1 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 0 1 0 0 -1 1 1 0 1 0 0 0 0 0 0 0 1 0 -1 1 -1 0 0 0 0 0 0 0 0 0 0 1 -1 2 0 0 1 0 0 0 0 0 0 0 0 0 1 -1 0 1 1 June 29,2012 Jayant Apte. ASPITRG 86
  • 87. Result of pivot (7,10) 1 0 0 0 0 0 0 -2 0 1 0 3 0 -1 0 1 0 0 0 0 0 1 0 -1 0 -1 0 0 0 0 1 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 1 0 0 0 1 0 0 0 -1 0 1 0 0 0 0 1 0 0 -1 0 1 0 1 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 0 1 -1 0 0 0 2 0 1 0 0 0 0 0 0 0 1 0 -1 1 -1 0 0 0 0 0 0 0 0 0 -2 1 1 0 2 0 1 0 0 0 0 0 0 0 1 0 0 0 -1 1 1 June 29,2012 Jayant Apte. ASPITRG 87
  • 88. Result of pivot(8,11) 1 0 0 0 0 0 0 1 -1.5 -0.5 0 0 0 -2.5 0 1 0 0 0 0 0 0 0.5 -0.5 0 0 0 0.5 0 0 1 0 0 0 0 -1 0.5 0.5 0 0 0 0.5 0 0 0 1 0 0 0 0 0.5 0.5 0 0 0 1.5 0 0 0 0 1 0 0 0 -0.5 0.5 0 0 0 0.5 0 0 0 0 0 1 0 1 -0.5 -0.5 0 0 0 0.5 0 0 0 0 0 0 1 1 -1 -1 0 0 0 0 0 0 0 0 0 0 0 0 0.5 -0.5 1 0 0 0.5 0 0 0 0 0 0 0 -1 0.5 0.5 0 1 0 0.5 0 0 0 0 0 0 0 0 0.5 0.5 0 0 1 1.5 June 29,2012 Jayant Apte. ASPITRG 88
  • 89. Result of pivot(6,7) 1 0 0 0 0 0 -1 0 -0.5 0.5 0 0 0 -2.5 0 1 0 0 0 0 0 0 0.5 -0.5 0 0 0 0.5 0 0 1 0 0 0 1 0 -0.5 -0.5 0 0 0 0.5 0 0 0 1 0 0 0 0 0.5 0.5 0 0 0 1.5 0 0 0 0 1 0 0 0 -0.5 0.5 0 0 0 0.5 0 0 0 0 0 1 -1 0 0.5 0.5 0 0 0 0.5 0 0 0 0 0 0 1 1 -1 -1 0 0 0 0 0 0 0 0 0 0 0 0 0.5 -0.5 1 0 0 0.5 0 0 0 0 0 0 1 0 -0.5 -0.5 0 1 0 0.5 0 0 0 0 0 0 0 0 0.5 0.5 0 0 1 1.5 June 29,2012 Jayant Apte. ASPITRG 89
  • 90. Result of pivot(6,10) 1 0 0 0 0 -1 0 0 -1 0 0 0 0 -3 0 1 0 0 0 1 -1 0 1 0 0 0 0 1 0 0 1 0 0 1 0 0 0 0 0 0 0 1 0 0 0 1 0 -1 1 0 0 0 0 0 0 1 0 0 0 0 1 -1 1 0 -1 0 0 0 0 0 0 0 0 0 0 2 -2 0 1 1 0 0 0 1 0 0 0 0 0 2 -1 1 0 0 0 0 0 1 0 0 0 0 0 1 -1 0 1 0 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 -1 1 0 0 0 0 0 1 1 June 29,2012 Jayant Apte. ASPITRG 90
  • 91. Backtrack: pivot(9,5),pivot(7,6),pivot(11,8) 1 0 0 0 0 0 0 -2 0 1 0 3 0 -1 0 1 0 0 0 0 0 1 0 -1 0 -1 0 0 0 0 1 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 1 0 0 0 1 0 0 0 -1 0 1 0 0 0 0 1 0 0 -1 0 1 0 1 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 0 1 -1 0 0 0 2 0 1 0 0 0 0 0 0 0 1 0 -1 1 -1 0 0 0 0 0 0 0 0 0 -2 1 1 0 2 0 1 0 0 0 0 0 0 0 1 0 0 0 -1 1 1 June 29,2012 Jayant Apte. ASPITRG 91
  • 92. Result of pivot(8,9) 1 0 0 0 0 0 0 0 -1 0 0 1 0 -2 0 1 0 0 0 0 0 -1 1 0 0 1 0 1 0 0 1 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 1 0 0 0 1 0 0 0 -1 0 1 0 0 0 0 1 0 0 1 -1 0 0 -1 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 0 1 -1 0 0 0 2 0 1 0 0 0 0 0 0 0 -1 1 0 1 1 0 1 0 0 0 0 0 0 0 -2 1 1 0 2 0 1 0 0 0 0 0 0 0 1 0 0 0 -1 1 1 June 29,2012 Jayant Apte. ASPITRG 92
  • 93. Backtrack pivot(9,8),pivot(10,7) 1 0 0 0 0 0 0 0 0 -1 2 1 0 -1 0 1 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 1 0 0 0 0 0 1 -1 0 0 1 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 0 1 0 0 -1 1 1 0 1 0 0 0 0 0 0 0 1 0 -1 1 -1 0 0 0 0 0 0 0 0 0 0 1 -1 2 0 0 1 0 0 0 0 0 0 0 0 0 1 -1 0 1 1 June 29,2012 Jayant Apte. ASPITRG 93
  • 94. Result of pivot(6,11) 1 0 0 0 0 0 -1 0 0 0 1 0 0 -2 0 1 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 1 0 0 0 1 0 0 -1 1 0 0 1 0 0 0 1 0 0 0 0 0 1 -1 0 0 1 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 1 -1 0 0 1 -1 0 0 0 0 0 0 0 0 0 1 0 0 -1 1 1 0 1 0 0 0 0 0 0 1 1 0 -2 2 0 0 1 0 0 0 0 0 0 0 0 1 -1 2 0 0 1 0 0 0 0 0 0 0 0 0 1 -1 0 1 1 June 29,2012 Jayant Apte. ASPITRG 94
  • 95. Backtrack to root June 29,2012 Jayant Apte. ASPITRG 95
  • 96. Proof of uniqueness of initial basis ● Suppose there exists another lex-positive optimum basis B ● Recall D matrix. June 29,2012 Jayant Apte. ASPITRG 96
  • 97. Proof of uniqueness of initial basis B B*={0,...m} B-B* B*-B N*={m+1,...,m+d} ● Consider pivoting from B* to B. Indices B-B*= must be brought into basis ● Every pivot will involve subtracting a certain row vector from cost row ● Since B is also optimum ● It follows that is lexicographicallly negative June 29,2012 Jayant Apte. ASPITRG 97