the simplex algorithm

146
The Simplex Algorithm 虞虞虞 虞虞虞虞虞虞虞 虞虞虞虞虞 虞虞虞

Upload: aladdin-garcia

Post on 31-Dec-2015

48 views

Category:

Documents


1 download

DESCRIPTION

The Simplex Algorithm. 虞台文. 大同大學資工所 智慧型多媒體研究室. Content. Basic Feasible Solutions The Geometry of Linear Programs Moving From Bfs to Bfs Organization of a Tableau Choosing a Profitable Column Pivot Selection Anticycling Algorithm The Two-Phase Simplex Algorithm. Linear Programming. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: The Simplex Algorithm

The Simplex Algorithm

虞台文大同大學資工所智慧型多媒體研究室

Page 2: The Simplex Algorithm

Content Basic Feasible Solutions The Geometry of Linear Programs Moving From Bfs to Bfs Organization of a Tableau Choosing a Profitable Column Pivot Selection Anticycling Algorithm The Two-Phase Simplex Algorithm

Page 3: The Simplex Algorithm

Linear Programming

Basic Feasible Solutions

大同大學資工所智慧型多媒體研究室

Page 4: The Simplex Algorithm

The Goal of the Simplex Algorithm

min

0

c x

Ax b

x

1 2( , , , )nx x x x

1 2( , , , )nc c c c

1 2, , ,ij nm nA a A A A

1 2( , , , )mb b b b Any LP can be convertedinto the standard form

m n

Page 5: The Simplex Algorithm

Convex Polytope

min

0

c x

Ax b

x

defines a convex set F

1 2( , , , )nx x x x

1 2( , , , )nc c c c 1 2, , ,ij nm n

A a A A A

1 2( , , , )mb b b b m n

F may be1. Bounded2. Unbounded3. Empty

Page 6: The Simplex Algorithm

The Basic Idea of Simplex Algorithm

min

0

c x

Ax b

x

basic

feasiblesolution

at a corner

Finding optimum by moving around the corner of the convex polytope in cost descent sense

1 2( , , , )nx x x x

1 2( , , , )nc c c c 1 2, , ,ij nm n

A a A A A

1 2( , , , )mb b b b m n

Page 7: The Simplex Algorithm

The Basic Idea of Simplex Algorithm

min

0

c x

Ax b

x

basic

feasiblesolution

at a corner

Finding optimum by moving around the corner of the convex polytope in cost descent sense

How to find an initial feasible solution?

How to find an initial feasible solution?

How to move from corner to corner?How to move from corner to corner?

1 2( , , , )nx x x x

1 2( , , , )nc c c c 1 2, , ,ij nm n

A a A A A

1 2( , , , )mb b b b m n

Page 8: The Simplex Algorithm

Assumption 1

min

0

c x

Ax b

x

1 2( , , , )nx x x x

1 2( , , , )nc c c c 1 2, , ,ij nm n

A a A A A

1 2( , , , )mb b b b m n

Assume that A is of rank m.

There is a basis 1, ,

mj jA A B

Independent

ijB A has an inverse.

Page 9: The Simplex Algorithm

Basic Solution

min

0

c x

Ax b

x

1 2( , , , )nx x x x

1 2( , , , )nc c c c 1 2, , ,ij nm n

A a A A A

1 2( , , , )mb b b b m n

1,

,m

i

j j

j

A A

B A

B :basis

has inverse

1,

,m

i

j j

j

A A

B A

B :basis

has inverse

1

0

, 1, ,k

j j

thj

x A

x k B b k m

f or

the compone nt of

B1

0

, 1, ,k

j j

thj

x A

x k B b k m

f or

the compone nt of

B

The basis solution corresponding to B is:

The basis solution may be infeasible.The basis solution may be infeasible.

Page 10: The Simplex Algorithm

Example

min

0

c x

Ax b

x

1 2( , , , )nx x x x

1 2( , , , )nc c c c 1 2, , ,ij nm n

A a A A A

1 2( , , , )mb b b b m n

1,

,m

i

j j

j

A A

B A

B :basis

has inverse

1,

,m

i

j j

j

A A

B A

B :basis

has inverse

2 4 7

1 2 3 4

1 5

3 6

2 3 7

1 2 3 4 5 6 7

min 2 5

4

2

3

3 6

, , , , , , , 0

x x x

x x x x

x x

x x

x x x

x x x x x x x

1 1 1 1

1 1

1 1

3 1

0 0 0

0 0 0 0 0

0 0 0 0 0

0 0 0 10

A

x1 x2 x3 x4 x5 x6 x7

Page 11: The Simplex Algorithm

Example

min

0

c x

Ax b

x

1 2( , , , )nx x x x

1 2( , , , )nc c c c 1 2, , ,ij nm n

A a A A A

1 2( , , , )mb b b b m n

1,

,m

i

j j

j

A A

B A

B :basis

has inverse

1,

,m

i

j j

j

A A

B A

B :basis

has inverse

2 4 7

1 2 3 4

1 5

3 6

2 3 7

1 2 3 4 5 6 7

min 2 5

4

2

3

3 6

, , , , , , , 0

x x x

x x x x

x x

x x

x x x

x x x x x x x

1 1 1 1

1 1

1 1

3 1

0 0 0

0 0 0 0 0

0 0 0 0 0

0 0 0 10

A

x1 x2 x3 x4 x5 x6 x7

1

0

, 1, ,k

j j

thj

x A

x k B b k m

f or

the compone nt of

B1

0

, 1, ,k

j j

thj

x A

x k B b k m

f or

the compone nt of

B

4 5 6 7, , ,A A A AB

0 0 0

0 0 0

0 0 0

0 0

1

1

1

10

B

( 4,0 2,3,6),0,0,x

feasible

Page 12: The Simplex Algorithm

Example

min

0

c x

Ax b

x

1 2( , , , )nx x x x

1 2( , , , )nc c c c 1 2, , ,ij nm n

A a A A A

1 2( , , , )mb b b b m n

1,

,m

i

j j

j

A A

B A

B :basis

has inverse

1,

,m

i

j j

j

A A

B A

B :basis

has inverse

2 4 7

1 2 3 4

1 5

3 6

2 3 7

1 2 3 4 5 6 7

min 2 5

4

2

3

3 6

, , , , , , , 0

x x x

x x x x

x x

x x

x x x

x x x x x x x

1 1 1 1

1 1

1 1

3 1

0 0 0

0 0 0 0 0

0 0 0 0 0

0 0 0 10

A

x1 x2 x3 x4 x5 x6 x7

1

0

, 1, ,k

j j

thj

x A

x k B b k m

f or

the compone nt of

B1

0

, 1, ,k

j j

thj

x A

x k B b k m

f or

the compone nt of

B

2 5 6 7, , ,A A A AB

0 0 0

0 0 0

0 0 0

0

1

1

1

3 10

B

0, 0,0( 4, 2,3, 6),x

infeasible

Page 13: The Simplex Algorithm

Basic Feasible Solution

min

0

c x

Ax b

x

defines an nonempty convex set F

1 2( , , , )nx x x x

1 2( , , , )nc c c c 1 2, , ,ij nm n

A a A A A

1 2( , , , )mb b b b m n

If a basic solution is in F, it is called a basic feasible solution (bfs).

Page 14: The Simplex Algorithm

The Existence of BFS’s

1 2( , , , )nx x x x

1 2( , , , )nc c c c 1 2, , ,ij nm n

A a A A A

1 2( , , , )mb b b b m n

F may be1. Bounded2. Unbounded3. Empty

If F is nonempty, at least one bfs.

min

0

c x

Ax b

x

defines an nonempty convex set F

Page 15: The Simplex Algorithm

min

0

c x

Ax b

x

defines an nonempty convex set F

The Existence of BFS’s

1 2( , , , )nx x x x

1 2( , , , )nc c c c 1 2, , ,ij nm n

A a A A A

1 2( , , , )mb b b b m n

F may be1. Bounded2. Unbounded3. Empty

If F is nonempty, at least one bfs.How to find it?How to find it?

Page 16: The Simplex Algorithm

Assumptions

1 2( , , , )nx x x x

1 2( , , , )nc c c c 1 2, , ,ij nm n

A a A A A

1 2( , , , )mb b b b m n

1. A is of rank m.2. F is nonempty.3. c’x is bounded below for xF.

1. A is of rank m.2. F is nonempty.3. c’x is bounded below for xF.

min

0

c x

Ax b

x

defines an nonempty convex set F

Page 17: The Simplex Algorithm

Assumptions

1 2( , , , )nx x x x

1 2( , , , )nc c c c 1 2, , ,ij nm n

A a A A A

1 2( , , , )mb b b b m n

1. A is of rank m.2. F is nonempty.3. c’x is bounded below for xF.

1. A is of rank m.2. F is nonempty.3. c’x is bounded below for xF.

There exist bfs’s.

min

0

c x

Ax b

x

defines an nonempty convex set F

Ensure there is a bounded solution.

Ensure there is a bounded solution.

Are all bfs’s the vertices of the convex polytope defined by F?

Are all bfs’s the vertices of the convex polytope defined by F?

Page 18: The Simplex Algorithm

The Simplex Alogrithm

The Geometry of Linear Programs

大同大學資工所智慧型多媒體研究室

Page 19: The Simplex Algorithm

Linear Subspaces of Rd

S Rd is a subspace of Rd if it is closed under vector addition and scalar multiplication.

S defined below is a subspace of Rd.11 1 12 2 1

21 1 22 2 2

1 1 2 2

0

0

0

d d

d dd

m m md d

a x a x a x

a x a x a xS x R

a x a x a x

a set of homogenous linear equations

Page 20: The Simplex Algorithm

Dimensions

11 1 12 2 1

21 1 22 2 2

1 1 2 2

0

0

0

d d

d dd

m m md d

a x a x a x

a x a x a xS x R

a x a x a x

dim( ) ijS d rank a dim( ) ijS d rank a d m

Page 21: The Simplex Algorithm

Affine subspaces 1 1 , ,0 1 ,d

i id dS x R a x a x i m

A translated linear subspace.

E.g., :A x Su x an affine subspace

1

2

11 1 12 2 1

21 1 22 2 2

1 1 2 2

d d

d dd

m md d mm

a x a x a x

a x a x a xA x R

a x a x a x

b

b

b

a set of nonhomogenous linear equations

an affinesubspace

Page 22: The Simplex Algorithm

Dimensions

1 1 , ,0 1 ,di id dS x R a x a x i m

1

2

11 1 12 2 1

21 1 22 2 2

1 1 2 2

d d

d dd

m md d mm

a x a x a x

a x a x a xA x R

a x a x a x

b

b

b

dim( ) dim( )A Sdim( ) dim( )A S d m

an affinesubspace

Page 23: The Simplex Algorithm

Subsets of Rd The following subsets are not subspace

or affine subspace.

A line segmentThe first quadrant

A halfspace

Page 24: The Simplex Algorithm

Dimensions The following subsets are not subspace

or affine subspace.

A line segmentThe first quadrant

A halfspace

The dimension of any subset of Rd is the smallest dimension of any affine subspace which contains it.

Dim = 1Dim = 2 Dim = 2

Page 25: The Simplex Algorithm

The Feasible Spaces of LP

1. A is of rank m.2. F is nonempty.3. c’x is bounded below for xF.

1. A is of rank m.2. F is nonempty.3. c’x is bounded below for xF.

min

0

c x

Ax b

x

defines an nonempty convex set F

dim( )F d m dim( )F d m

Page 26: The Simplex Algorithm

Hyperplane/Halfspace

1 1 2 2 d da x a x ba x

An affine subspace of Rd of dimension d1 is called a hyperplane.

A hyperplane defines two closed halfspaces:

1 1 2 2 d da x a x ba x

1 1 2 2 d da x a x ba x

Fact: Halfspaces are convex.

Page 27: The Simplex Algorithm

Convex Polytopes

The intersection of a finite number of halfspaces, when it is bounded and nonempty is called a convex polytope, or simply a polytope.

Fact: Halfspaces are convex.

Page 28: The Simplex Algorithm

x1

x2

x3

Example

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

Page 29: The Simplex Algorithm

More on Polytopes

Geometric views of a polytope– The convex hull of a finite set of points.– The intersection of a finite number of halfspace

s, when it is bounded and nonempty, i.e., defined by

The algebraic view of a polytope1 1 0, 1, ,i in n ia x a x b i m

0

Ax b

x

The feasible space defined by LP (in standard form).

Any relation?

Page 30: The Simplex Algorithm

LP Polytopes

0

Ax b

x

Assume

11 12 1,

21 22 2,

1 2 ,

1 0 0

0 1 0

0 0 1

n m

n m

m m m n m

a a a

a a aA

a a a

m columnsn m columns

x1 x2 xnm xnm+1xn

A can always be in this form if rank(A)=m.

LP

Page 31: The Simplex Algorithm

LP Polytopes

Assume

11 12 1,

21 22 2,

1 2 ,

1 0 0

0 1 0

0 0 1

n m

n m

m m m n m

a a a

a a aA

a a a

m columnsn m columns

x1 x2 xnm xnm+1xn

Ax b1

, 1, ,n m

i ij jij

x b a x i n m n

0

Ax b

x

LP

Page 32: The Simplex Algorithm

LP Polytopes

Ax b1

, 1, ,n m

i ij jij

x b a x i n m n

0

1

0 1, ,

0 1, ,

n m

ij j ij

j

a x b i n m n

x j n m

0

Ax b

x

LP

Page 33: The Simplex Algorithm

Polytopes LP11 1 12 2 1, 1

21 1 22 2 2, 2

1 1 2 2 ,

1 2

0

0

0

, , 0

n m n m

n m n m

m m m n m n m m

n m

a x a x a x b

a x a x a x b

a x a x a x b

x x x

m inequalities

11 1 12 2 1, 1 1

21 1 22 2 2, 2 2

1 1 2 2 ,

1 2 1, 2,

, , , 0

n m n m n m

n m n m n m

m m m n m n m n m

n m n m n m

a x a x a x x b

a x a x a x x b

a x a x a x x b

x x x x x

m equalities

Page 34: The Simplex Algorithm

m equalities

Polytopes LP11 1 12 2 1, 1

21 1 22 2 2, 2

1 1 2 2 ,

1 2

0

0

0

, , 0

n m n m

n m n m

m m m n m n m m

n m

a x a x a x b

a x a x a x b

a x a x a x b

x x x

m inequalities

11 1 12 2 1, 1 1

21 1 22 2 2, 2 2

1 1 2 2 ,

1 2 1, 2,

, , , 0

n m n m n m

n m n m n m

m m m n m n m n m

n m n m n m

a x a x a x x b

a x a x a x x b

a x a x a x x b

x x x x x

x

x x x

Slack variablesx

Page 35: The Simplex Algorithm

Polytopes LP11 1 12 2 1, 1

21 1 22 2 2, 2

1 1 2 2 ,

1 2

0

0

0

, , 0

n m n m

n m n m

m m m n m n m m

n m

a x a x a x b

a x a x a x b

a x a x a x b

x x x

11 1 12 2 1, 1 1

21 1 22 2 2, 2 2

1 1 2 2 ,

1 2 1, 2,

, , , 0

n m n m n m

n m n m n m

m m m n m n m n m

n m n m n m

a x a x a x x b

a x a x a x x b

a x a x a x x b

x x x x x

x

xx x

0

x

x

A b

Slack variablesx

Page 36: The Simplex Algorithm

Polytopes and LP11 1 12 2 1, 1

21 1 22 2 2, 2

1 1 2 2 ,

1 2

0

0

0

, , 0

n m n m

n m n m

m m m n m n m m

n m

a x a x a x b

a x a x a x b

a x a x a x b

x x x

11 1 12 2 1, 1 1

21 1 22 2 2, 2 2

1 1 2 2 ,

1 2 1, 2,

, , , 0

n m n m n m

n m n m n m

m m m n m n m n m

n m n m n m

a x a x a x x b

a x a x a x x b

a x a x a x x b

x x x x x

x

xx x

|

0

xH I b

x

x

x

Slack variablesx

H I

H

[ | ]A H I

0

Hx b

x

xx

x

Page 37: The Simplex Algorithm

Polytopes and LP

|

0

xH I b

x

x

x

[ | ]A H I

0

Hx b

x

xx

x

x xGiven , =?

xx Given , =?

Hx x b

0x b Hx

0x

b Hxx

xx

x

The answer

Page 38: The Simplex Algorithm

Polytopes and LP

|

0

xH I b

x

x

x

[ | ]A H I

0

Hx b

x

xx

x

xx Given , =?

Hx x b

Hx b x b

xx

x

The answer

Page 39: The Simplex Algorithm

Polytopes & F of LP

0

Ax b

x

[ | ]A H I

0

Hx b

x

xx

x

defines a polytope

defines a feasible set , 0F x Ax b x

, 0P x Hx b x

Are there any relations?Are there any relations?

Page 40: The Simplex Algorithm

Polytopes & F of LP

0

Ax b

x

[ | ]A H I

0

Hx b

x

xx

x

defines a polytope

defines a feasible set , 0F x Ax b x

, 0P x Hx b x

x1

x2

x3

x1

x2

x3

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0) x1

x2

x3

x1

x2

x3

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

Some points in P are vertices.

Some points in F are bfs’s.Are there any relations?Are there any relations?

Page 41: The Simplex Algorithm

Theorem 1

, 0x xF A b x

, 0P x Hx b x a convex polytope

a feasible set ofthe corresponding LP

[ | ]A H Ix

xx

x P is a vertex of P

xF

xx

is a bfs.

Page 42: The Simplex Algorithm

Theorem 1 , 0x xF A b x

, 0P x Hx b x a convex polytopea convex polytope

a f easible set ofthe corresponding LPa f easible set ofthe corresponding LP

x P is a vertex of Px P is a vertex of P

xF

xx

is a bf s.x

Fx

x

is a bf s.

, 0x xF A b x

, 0P x Hx b x a convex polytopea convex polytope

a f easible set ofthe corresponding LPa f easible set ofthe corresponding LP

x P is a vertex of Px P is a vertex of P

xF

xx

is a bf s.x

Fx

x

is a bf s.

Pf)

“” See textbook.

Page 43: The Simplex Algorithm

Theorem 1 , 0x xF A b x

, 0P x Hx b x a convex polytopea convex polytope

a f easible set ofthe corresponding LPa f easible set ofthe corresponding LP

x P is a vertex of Px P is a vertex of P

xF

xx

is a bf s.x

Fx

x

is a bf s.

, 0x xF A b x

, 0P x Hx b x a convex polytopea convex polytope

a f easible set ofthe corresponding LPa f easible set ofthe corresponding LP

x P is a vertex of Px P is a vertex of P

xF

xx

is a bf s.x

Fx

x

is a bf s.

Pf) “”

Fact: x is a vertex, then it cannot be the strict combination of points of P, i.e.,

(1 ) , ,0 1x y z y z P withy z x

x1

x2

x3

x1

x2

x3

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0) x1

x2

x3

x1

x2

x3

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

Page 44: The Simplex Algorithm

x1

x2

x3

x1

x2

x3

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0) x1

x2

x3

x1

x2

x3

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

Theorem 1 , 0x xF A b x

, 0P x Hx b x a convex polytopea convex polytope

a f easible set ofthe corresponding LPa f easible set ofthe corresponding LP

x P is a vertex of Px P is a vertex of P

xF

xx

is a bf s.x

Fx

x

is a bf s.

, 0x xF A b x

, 0P x Hx b x a convex polytopea convex polytope

a f easible set ofthe corresponding LPa f easible set ofthe corresponding LP

x P is a vertex of Px P is a vertex of P

xF

xx

is a bf s.x

Fx

x

is a bf s.

Pf) “”

Fact: x is a vertex, then it cannot be the strict combination of points of P, i.e.,

xF

xx

is a bf s, To show

we must show that x has at most m nonzero elements and …

xF

xx

is a bf s, To show

we must show that x has at most m nonzero elements and …

(1 ) , ,0 1x y z y z P withy z x

Page 45: The Simplex Algorithm

Theorem 1 , 0x xF A b x

, 0P x Hx b x a convex polytopea convex polytope

a f easible set ofthe corresponding LPa f easible set ofthe corresponding LP

x P is a vertex of Px P is a vertex of P

xF

xx

is a bf s.x

Fx

x

is a bf s.

, 0x xF A b x

, 0P x Hx b x a convex polytopea convex polytope

a f easible set ofthe corresponding LPa f easible set ofthe corresponding LP

x P is a vertex of Px P is a vertex of P

xF

xx

is a bf s.x

Fx

x

is a bf s.

Pf) “”

Fact: (1 ) , ,0 1 .x y z y z P y z x with

Define B = {Aj: xj > 0, 1 j n}

1( , , ) .n

xx Fx x

x

Let We want to show at most m nonzero xi’s.

We want to show that vectors in B are linearly independent.

0j

j jA

d A

B

Suppose not. Then, some dj 0.

j

j jA

F x A bx

B

( )j

j j jA

x d A b

B

>0 if is sufficiently small.

Page 46: The Simplex Algorithm

Theorem 1 , 0x xF A b x

, 0P x Hx b x a convex polytopea convex polytope

a f easible set ofthe corresponding LPa f easible set ofthe corresponding LP

x P is a vertex of Px P is a vertex of P

xF

xx

is a bf s.x

Fx

x

is a bf s.

, 0x xF A b x

, 0P x Hx b x a convex polytopea convex polytope

a f easible set ofthe corresponding LPa f easible set ofthe corresponding LP

x P is a vertex of Px P is a vertex of P

xF

xx

is a bf s.x

Fx

x

is a bf s.

Pf) “”

Fact: (1 ) , ,0 1 .x y z y z P y z x with

Define B = {Aj: xj > 0, 1 j n}

1( , , ) .n

xx Fx x

x

Let We want to show at most m nonzero xi’s.

We want to show that vectors in B are linearly independent.

0j

j jA

d A

B

Suppose not. Then, some dj 0.

j

j jA

F x A bx

B

( )j

j j jA

x d A b

B

>0 if is sufficiently small.

j

j jA

y x d A

B

j

j jA

z x d A

B

Define

is sufficiently small.

, , .y z F y x z x and

1 12 2x y z

, , .y z P y x z x and1 12 2x y z

Page 47: The Simplex Algorithm

Theorem 1 , 0x xF A b x

, 0P x Hx b x a convex polytopea convex polytope

a f easible set ofthe corresponding LPa f easible set ofthe corresponding LP

x P is a vertex of Px P is a vertex of P

xF

xx

is a bf s.x

Fx

x

is a bf s.

, 0x xF A b x

, 0P x Hx b x a convex polytopea convex polytope

a f easible set ofthe corresponding LPa f easible set ofthe corresponding LP

x P is a vertex of Px P is a vertex of P

xF

xx

is a bf s.x

Fx

x

is a bf s.

Pf) “”

Fact: (1 ) , ,0 1 .x y z y z P y z x with

Define B = {Aj: xj > 0, 1 j n}

1( , , ) .n

xx Fx x

x

Let We want to show at most m nonzero xi’s.

Aj are linearly independent.

|B| m.

Since rank(A) = m, we can always augment B to include m linearly independent vectors.Using B to form basic columns renders x a bfs.

Page 48: The Simplex Algorithm

Discussion , 0x xF A b x

, 0P x Hx b x a convex polytopea convex polytope

a f easible set ofthe corresponding LPa f easible set ofthe corresponding LP

x P is a vertex of Px P is a vertex of P

xF

xx

is a bf s.x

Fx

x

is a bf s.

, 0x xF A b x

, 0P x Hx b x a convex polytopea convex polytope

a f easible set ofthe corresponding LPa f easible set ofthe corresponding LP

x P is a vertex of Px P is a vertex of P

xF

xx

is a bf s.x

Fx

x

is a bf s.

Pf) “”

Fact: (1 ) , ,0 1 .x y z y z P y z x with

Define B = {Aj: xj > 0, 1 j n}

1( , , ) .n

xx Fx x

x

Let We want to show at most m nonzero xi’s.

Aj are linearly independent.

|B| m.

Since rank(A) = m, we can always augment B to include m linearly independent vectors.Using B to form basic columns renders x a bfs.

If |B| < m, there may be many ways to augment to m linearly independent vectors.

Two different B and B’ may corresponds to the same bfs.

If |B| < m, there may be many ways to augment to m linearly independent vectors.

Two different B and B’ may corresponds to the same bfs.

Two different , their corresponding B and B’ must be different.

Two different , their corresponding B and B’ must be different.

,x y P

Page 49: The Simplex Algorithm

Example

x1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

Page 50: The Simplex Algorithm

Examplex1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

x1

x2

x3

x1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

x1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

x1

x2

x3

x1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

Corresponding F of LPCorresponding F of LP

0

Ax b

x

1

1

1

0 0 0

0 0 0

0 0 0

0 0 0

1 1 1

1 0 0

0 0 1

0 3 1 1

A

1x 2x 3x 4x 5x 6x 7x

1 2 3 6, , ,A A A AB 4 5 7( , , ) (0,0,0)x x x 1

1 2 3 6( , , , ) (2, 2,0,3);x x x x B b

4

2

3

6

b

Page 51: The Simplex Algorithm

Examplex1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

x1

x2

x3

x1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

x1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

x1

x2

x3

x1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

Corresponding F of LPCorresponding F of LP

0

Ax b

x

1

1

1

0 0 0

0 0 0

0 0 0

0 0 0

1 1 1

1 0 0

0 0 1

0 3 1 1

A

1x 2x 3x 4x 5x 6x 7x

1 2 3 6, , ,A A A AB 4 5 7( , , ) (0,0,0)x x x 1

1 2 3 6( , , , ) (2, 2,0,3);x x x x B b

4

2

3

6

b

3 5 7( , , ) (0,0,0)x x x 1

1 2 4 6( , , , ) (2,2,0,3);x x x x B b 1 2 4 6, , ,A A A AB

Page 52: The Simplex Algorithm

Examplex1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

x1

x2

x3

x1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

x1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

x1

x2

x3

x1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

Corresponding F of LPCorresponding F of LP

0

Ax b

x

1

1

1

0 0 0

0 0 0

0 0 0

0 0 0

1 1 1

1 0 0

0 0 1

0 3 1 1

A

1x 2x 3x 4x 5x 6x 7x

1 2 3 6, , ,A A A AB 4 5 7( , , ) (0,0,0)x x x 1

1 2 3 6( , , , ) (2, 2,0,3);x x x x B b

4

2

3

6

b

3 5 7( , , ) (0,0,0)x x x 1

1 2 4 6( , , , ) (2,2,0,3);x x x x B b 1 2 4 6, , ,A A A AB

B and B’ determine the same bfs, i.e,

x = (2, 2, 0, 0, 0, 3, 0)’.B and B’ determine the same bfs, i.e,

x = (2, 2, 0, 0, 0, 3, 0)’.

Page 53: The Simplex Algorithm

Degeneration

A bfs is called degenerate if it co

ntains more than n m zeros.

Page 54: The Simplex Algorithm

x

x

Theorem 2

A bfs is called degenerate if it contains more than n m zeros.

If two distinct bases corresponding to the same bfs x, then x is degenerate.

Pf) Let B and B’ be two distinct bases which determine the same bfs x.

B

B’

0 0

00

n

m

m

Page 55: The Simplex Algorithm

x

x

Theorem 2

A bfs is called degenerate if it contains more than n m zeros.

Pf) Let B and B’ be two distinct bases which determine the same bfs x.

B

B’

0 0

00

n

m

m0 0x has more than n m zeros and, hence, is degenerate.

If two distinct bases corresponding to the same bfs x, then x is degenerate.

Page 56: The Simplex Algorithm

Discussion

A bfs is called degenerate if it contains more than n m zeros.

If two distinct bases corresponding to the same bfs x, then x is degenerate.

Changing basis may keep bfs unchanged.Changing basis may keep bfs unchanged.

Page 57: The Simplex Algorithm

More on Theorem 1 and 2

Vertices of polytope Bfs’s of LP

Change vertex Change bfs?A bfs is determined by a chosen basis.

Change vertices Change basis?

Page 58: The Simplex Algorithm

Costs

0

x

x

A b

0

Hx b

x

min c x ? ? ? [ | ]A H I

xx

x

0

x

b Hx

:

:

x

x

bf s

vertex of polytope

Page 59: The Simplex Algorithm

? ? ?

Costs

0

x

x

A b

0

Hx b

x

min c x min xd

cc

c

c c x c xx

( )c x c b Hx

( )c c H x c b

[ | ]A H I

xx

x

0

x

b Hx

:

:

x

x

bf s

vertex of polytope

d constant

Page 60: The Simplex Algorithm

Theorem 3

There is an optimal bfs in any instance of LP.

Furthermore, if q bfs’s are optimal, their co

nvex combinations are also optimal.

Page 61: The Simplex Algorithm

Theorem 3There is an optimal bfs in any instance of LP.

Furthermore, if q bfs’s are optimal, their co

nvex combinations are also optimal.

There is an optimal bfs in any instance of LP.

Furthermore, if q bfs’s are optimal, their co

nvex combinations are also optimal.

Let x0 P be the optimal solution, and let x1, …, xN be the vertices of P.

10

N

i ii

xx

with1

1N

ii

Let j be the index corresponding to the vertex with lowest cost.

01

N

i ii

d x d x

1

N

j ii

xd

jxd

xj is the optimum.

Pf)

and 0i

Page 62: The Simplex Algorithm

Theorem 3There is an optimal bfs in any instance of LP.

Furthermore, if q bfs’s are optimal, their co

nvex combinations are also optimal.

There is an optimal bfs in any instance of LP.

Furthermore, if q bfs’s are optimal, their co

nvex combinations are also optimal.

Assume y1, …, yq be the optimal vertices.

1

q

i ii

yy

Pf)

Let with1

1N

ii

and 0i

1

q

i ii

d y d y

1

q

i ii

d y

11

q

ii

yd

1yd

Page 63: The Simplex Algorithm

Linear Programming

Moving fromBfs to Bfs

大同大學資工所智慧型多媒體研究室

Page 64: The Simplex Algorithm

Facts The optimal solution can be found from verti

ces of the corresponding polytope.

The bfs’s of LP and the vertices of polytope are close correlated.

The algorithm to solve LP:– Move from vertex to vertex; or– Move from bfs to bfs

min

0

c x

Ax b

x

Page 65: The Simplex Algorithm

The BFS’s

min

0

c x

Ax b

x

( ) : 1, ,B iA i m B

1 nA A A m

jA R

: , 1, ,j jA A j n B B

Basis columns

Nonbasis columns

The bfs is determined from the set of basis columns, i.e., B.

Move from bfs to bfs: ( ) : 1, ,B iA i m B

: , 1, ,j jA A j n B B

Page 66: The Simplex Algorithm

Move from Bfs to Bfs

Let x0 be the bfs determined by B.Denote the basic components of x0 as xi0, i = 1, …, m.

0 ( )1

,m

i B ii

x A b

0 0ix

( )1

.m

ij B i ji

x A A

( ) : 1, ,B iA i m B

: , 1, ,j jA A j n B B

For any , we havejA B

0 ( )1

( )m

i ij B i ji

x x A A b

Page 67: The Simplex Algorithm

Move from Bfs to Bfs

( ) : 1, ,B iA i m B

: , 1, ,j jA A j n B B

0 ( )1

( )m

i ij B i ji

x x A A b

m + 1 columns are involved.

Choose one Aj from to enter B.

BChoose one AB(i) to leave B.

Who enters?Who leaves?

Page 68: The Simplex Algorithm

Move from Bfs to Bfs

( ) : 1, ,B iA i m B

: , 1, ,j jA A j n B B

0 ( )1

( )m

i ij B i ji

x x A A b

m + 1 columns are involved.

Choose one Aj from to enter B.

BChoose one AB(i) to leave B.

Who enters?Who leaves?

must be positive. must be positive.

Make one of them zero, and keep others nonnegative.

The one that we want to make zero must have xij >

0.

The one that we want to make zero must have xij >

0.Why?

Why?

Page 69: The Simplex Algorithm

Move from Bfs to Bfs

( ) : 1, ,B iA i m B

: , 1, ,j jA A j n B B

0 ( )1

( )m

i ij B i ji

x x A A b

Suppose that Aj wants to enter B.

Then, we choose 00

0

minij

ix

i

ij

x

x

Make one of them zero, and keep others nonnegative.

Page 70: The Simplex Algorithm

Move from Bfs to Bfs

( ) : 1, ,B iA i m B

: , 1, ,j jA A j n B B

0 ( )1

( )m

i ij B i ji

x x A A b

Suppose that Aj wants to enter B.

Then, we choose

Make one of them zero, and keep others nonnegative.

1. How about if xi0 = 0 for some i?2. How about if all xij 0?

1. How about if xi0 = 0 for some i?2. How about if all xij 0?

00

0

minij

ix

i

ij

x

x

Page 71: The Simplex Algorithm

Example

x1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

Page 72: The Simplex Algorithm

Examplex1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

x1

x2

x3

x1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

x1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

x1

x2

x3

x1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

Corresponding F of LPCorresponding F of LP

0

Ax b

x

1

1

1

0 0 0

0 0 0

0 0 0

0 0 0

1 1 1

1 0 0

0 0 1

0 3 1 1

A

1x 2x 3x 4x 5x 6x 7x

1 3 6 7, , ,A A A AB 0 (2,0,2,0,0,1,4)x

4

2

3

6

b

Page 73: The Simplex Algorithm

Examplex1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

x1

x2

x3

x1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

x1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

x1

x2

x3

x1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

Corresponding F of LPCorresponding F of LP

0

Ax b

x

1

1

1

0 0 0

0 0 0

0 0 0

0 0 0

1 1 1

1 0 0

0 0 1

0 3 1 1

A

1 3 6 7, , ,A A A AB

4

2

3

6

b

2 2 1 4

1x 2x 3x 4x 5x 6x 7x

5A 1 3 6 71 1 1 1A A A A 1 3 6 72 2 1 4A A A A

1 3 6 7(2 ) (2 ) (1 ) (4 )A A A A

0 (2,0,2,0,0,1,4)x

Page 74: The Simplex Algorithm

Examplex1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

x1

x2

x3

x1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

x1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

x1

x2

x3

x1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

Corresponding F of LPCorresponding F of LP

0

Ax b

x

1

1

1

0 0 0

0 0 0

0 0 0

0 0 0

1 1 1

1 0 0

0 0 1

0 3 1 1

A

1 3 6 7, , ,A A A AB

4

2

3

6

b

2 2 1 4

1x 2x 3x 4x 5x 6x 7x

5A 1 3 6 71 1 1 1A A A A 1 3 6 72 2 1 4A A A A

1 3 6 7(2 ) (2 ) (1 ) (4 )A A A A

Choosing = 0= 1 makes A6 leaves B.Choosing = 0= 1 makes A6 leaves B.

0 (2,0,2,0,0,1,4)x

Page 75: The Simplex Algorithm

Examplex1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

x1

x2

x3

x1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

x1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

x1

x2

x3

x1

x2

x3

1 2 3

1

3

2 3

1

2

3

4

2

3

3 6

0

0

0

x x x

x

x

x x

x

x

x

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

(2, 0, 2)

(2, 0, 0)

(2, 2, 0)(0, 2, 0)

(0, 1, 3)

(0, 0, 0)

Corresponding F of LPCorresponding F of LP

0

Ax b

x

1

1

1

0 0 0

0 0 0

0 0 0

0 0 0

1 1 1

1 0 0

0 0 1

0 3 1 1

A

1 3 6 7, , ,A A A AB

4

2

3

6

b

2 2 4

1x 2x 3x 4x 5x 6x 7x

1 3 6 7(2 ) (2 ) (1 ) (4 )A A A A

1 3 5 7, , ,A AAAB 1 (1,0,3,0,1,0,3)x

0 11

3

1

0

3

= 0

= 1

Choosing = 0= 1 makes A6 leaves B.Choosing = 0= 1 makes A6 leaves B.

0 (2,0,2,0,0,1,4)x

Page 76: The Simplex Algorithm

Linear Programming

Organization ofa Tableau

大同大學資工所智慧型多媒體研究室

Page 77: The Simplex Algorithm

x1 x2 x3 x4 x5 Ans

Example

1 2 3

1 2 3 4

1 2 3 5

3 2 1

5 3

2 5 4

x x x

x x x x

x x x x

x1 x2 x3 x4 x5 Ans

1

3

4

3

5

2

2

1

5

1

1

1

0

1

0

0

0

1

1

2

3

3

2

1

2

1

3

1

0

0

0

1

0

0

0

1

R1

R2R1

R3R1

ElementaryRow operations

Page 78: The Simplex Algorithm

x1 x2 x3 x4 x5 Ans

Example

1

2

3

3

2

1

2

1

3

1

0

0

0

1

0

0

0

1

B

3 4 51 2 3A A A

Suppose that we want to choose A1 to enter the basis, i.e., choosing A1 as the pivot column.

1 3 4 53 2 1A A A A

3 4 5(1 3 ) (2 2 ) (3 )A A A

1/3

2/2

min

0 (0,0,1,2,3)bfs

1 2 3

1 2 3 4

1 2 3 5

3 2 1

5 3

2 5 4

x x x

x x x x

x x x x

Page 79: The Simplex Algorithm

x1 x2 x3 x4 x5 Ans

Example

1

2

3

3

2

1

2

1

3

1

0

0

0

1

0

0

0

1

B

3 4 51 2 3A A A

1 3 4 53 2 1A A A A

3 4 5(1 3 ) (2 2 ) (3 )A A A

1/3

2/2

min

0 (0,0,1,2,3)bfs

101 41 3 3 3( ,0,0, , )bfs

1 2 3

1 2 3 4

1 2 3 5

3 2 1

5 3

2 5 4

x x x

x x x x

x x x x

Page 80: The Simplex Algorithm

x1 x2 x3 x4 x5 Ans

Example

1

2

3

3

2

1

2

1

3

1

0

0

0

1

0

0

0

1

1/3

2/2

min

101 41 3 3 3( ,0,0, , )bfs

x1 x2 x3 x4 x5 Ans

1/3

4/3

10/3

1

0

0

2/3

7/3

11/3

1/3

2/3

1/3

0

1

0

0

0

1

113 R

22 13R R

13 13R R

1 2 3

1 2 3 4

1 2 3 5

3 2 1

5 3

2 5 4

x x x

x x x x

x x x x

Page 81: The Simplex Algorithm

Linear Programming

Choosing a Profitable Column

大同大學資工所智慧型多媒體研究室

Page 82: The Simplex Algorithm

Cost Change by Bfs0 Bfs1

( ) : 1, ,B iA i m B

bfs0 = x0

0

x

x

A b

min c xobtained using B

a basis

0 0 ( )1

m

i B ii

z x c

cost of bfs0

Aj B want to enter the basis

( )1

m

ij B ii

j x AA

cj unit cost corresponding to Aj (xj).

decomposition of Aj.

( )1

m

j ij B ii

j c x cc

cost difference by bringing one unit of Aj into bfs0.

Page 83: The Simplex Algorithm

Choose Profitable Columns

( ) : 1, ,B iA i m B

bfs0 = x0

0

x

x

A b

min c xobtained using B

a basis

0 0 ( )1

m

i B ii

x c

cost of bfs0

Aj B want to enter the basis

( )1

m

ij B ii

j x AA

cj unit cost corresponding to Aj (xj).

decomposition of Aj.

( )1

m

j ij B ii

j c x cc

cost difference by bringing one unit of Aj into bfs0.

( )1

m

j ij B ii

j c x cc

j jc z

z j

<0

relative cost (on B)

Do these for each Aj B.

Page 84: The Simplex Algorithm

Choose Profitable Columns

( ) : 1, ,B iA i m B

bfs0 = x0

0

x

x

A b

min c xobtained using B

a basis

0 0 ( )1

m

i B ii

x c

cost of bfs0

Aj B want to enter the basis

( )1

m

ij B ii

j x AA

cj unit cost corresponding to Aj (xj).

decomposition of Aj.

( )1

m

j ij B ii

j c x cc

cost difference by bringing one unit of Aj into bfs0.

( )1

m

j ij B ii

j c x cc

j jc z

z j

<0

relative cost (on B)

Do these for each Aj B.

0

00 min

ij

i

xi

ij

x

x

Bringing 0 units of Aj into changes bfs0 to bfs1 and changes the cost by the amount:

0 0 ( )j j jc zc

Page 85: The Simplex Algorithm

Choose Profitable Columns

( ) : 1, ,B iA i m B

bfs0 = x0

0

x

x

A b

min c xobtained using B

a basis

0 0 ( )1

m

i B ii

x c

cost of bfs0

Aj B want to enter the basis

( )1

m

ij B ii

j x AA

cj unit cost corresponding to Aj (xj).

decomposition of Aj.

( )1

m

j ij B ii

j c x cc

cost difference by bringing one unit of Aj into bfs0.

( )1

m

j ij B ii

j c x cc

j jc z

z j

<0

relative cost (on B)

Do these for each Aj B.

Which one is most

profitable if more

than one are

negative?

Which one is most

profitable if more

than one are

negative?

Page 86: The Simplex Algorithm

Relative Costs

( )1

m

j ij B ii

j c x cc

j jc z

z j

<0

relative cost (on B)

11 12 1,

21 22 2,1

1 2 ,

1 0 0

0 1 0

0 0 1

n m

n m

m m m n m

a a a

a a aX B A

a a a

x1 x2 xnm xnm+1 xn

c1 c2 cnm cnm+1 cn

c B=(c B(1), …, c B(m))’`

B

The tableau

The tableau

1 1( , , , , , )n m n m nz z z z z Bc X 1Bc B A

Bc

c c z 1( , , ,0, ,0)n mc c

. . .

. . .. . .. . .

Page 87: The Simplex Algorithm

Optimality Criterion

( )1

m

j ij B ii

j c x cc

j jc z

z j

<0

relative cost (on B)

1 1( , , , , , )n m n m nz z z z z Bc X 1Bc B A

c c z 1( , , ,0, ,0)n mc c

1Bz c B AB relative cost vector

( ) : 1, ,B iA i m B the basis for the bfs, say x0.

c c z B B 0

Page 88: The Simplex Algorithm

Optimality Criterion

( )1

m

j ij B ii

j c x cc

j jc z

z j

<0

relative cost (on B)

1Bz c B AB relative cost vector

( ) : 1, ,B iA i m B the basis for the bfs, say x0.

c c z B B 0

The bfs is optimal.

Page 89: The Simplex Algorithm

The Tableau

0

x

x

A b

min c x

: the cost of a given x. : the cost of a given x.

( )1

m

j ij B ii

j c x cc

j jc z <0

11 1 1, 1 1

21 1 2, 2 2

1 1 ,

1 1 1 1 2 2

0

n m n m n m

n m n m n m

m m n m n m n m

n m n m n m n m n m n m n n

a x a x x b

a x a x x b

a x a x x b

c x c x c x c x c x

Page 90: The Simplex Algorithm

The Tableau( )

1

m

j ij B ii

j c x cc

j jc z <0

x1 xnm xnm+1 xnm+2 xn Ans

a11 a1, nm 1 0 0 0 b1

a21 a2, nm 0 1 0 0 b2...

. . .

.

.

....

.

.

.. . .

.

.

....

.

.

.

am1 am, nm 0 0 1 0 bm

c1 cnm cnm+1 cnm+2 cn 1 0

11 1 1, 1 1

21 1 2, 2 2

1 1 ,

1 1 1 1 2 2

0

n m n m n m

n m n m n m

m m n m n m n m

n m n m n m n m n m n m n n

a x a x x b

a x a x x b

a x a x x b

c x c x c x c x c x

Page 91: The Simplex Algorithm

Assumption

( )1

m

j ij B ii

j c x cc

j jc z <0

x1 xnm xnm+1 xnm+2 xn Ans

a11 a1, nm 1 0 0 0 b1

a21 a2, nm 0 1 0 0 b2...

. . .

.

.

....

.

.

.. . .

.

.

....

.

.

.

am1 am, nm 0 0 1 0 bm

c1 cnm cnm+1 cnm+2 cn 1 0

0 0

0

Bfs x0 = 0 0 b1 b2 bm

… …

ActiveVariables

InactiveVariables

Page 92: The Simplex Algorithm

Initialization

( )1

m

j ij B ii

j c x cc

j jc z <0

x1 xnm xnm+1 xnm+2 xn Ans

a11 a1, nm 1 0 0 0 b1

a21 a2, nm 0 1 0 0 b2...

. . .

.

.

....

.

.

.. . .

.

.

....

.

.

.

am1 am, nm 0 0 1 0 bm

c1 cnm cnm+1 cnm+2 cn 1 0

Clear these columns

Pivots

Bfs x0 = 0 0 b1 b2 bm

Page 93: The Simplex Algorithm

Initialization

( )1

m

j ij B ii

j c x cc

j jc z <0

x1 xnm xnm+1 xnm+2 xn Ans

a11 a1, nm 1 0 0 0 b1

a21 a2, nm 0 1 0 0 b2...

. . .

.

.

....

.

.

.. . .

.

.

....

.

.

.

am1 am, nm 0 0 1 0 bm

c1 cnm cnm+1 cnm+2 cn 1 0cB(1) cB(2) cB(m)

1 1 1 (1) 2 (2) ( )m m B B m B mR R R c R c R c

R1

R2

Rm

Rm+1

( )1

m

i B ii

b c

10( )

1

m

j ij B ii

c a c

.

.

.

Bfs x0 = 0 0 b1 b2 bm

Page 94: The Simplex Algorithm

Initialization

( )1

m

j ij B ii

j c x cc

j jc z <0

x1 xnm xnm+1 xnm+2 xn Ans

a11 a1, nm 1 0 0 0 b1

a21 a2, nm 0 1 0 0 b2...

. . .

.

.

....

.

.

.. . .

.

.

....

.

.

.

am1 am, nm 0 0 1 0 bm

c1 cnm cnm+1 cnm+2 cn 1 0cB(1) cB(2) cB(m)

R1

R2

Rm

Rm+1

( )1

m

i B ii

b c

10( )

1

m

j ij B ii

c a c

Bfs x0 = 0 0 b1 b2 bm

… …

0( ) ( )

1

m

B i B ii

x c

0c x0The negative of the cost of the initial bfs

( )1

m

i B ii

b c

.

.

.

Page 95: The Simplex Algorithm

Initialization

( )1

m

j ij B ii

j c x cc

j jc z <0

x1 xnm xnm+1 xnm+2 xn Ans

a11 a1, nm 1 0 0 0 b1

a21 a2, nm 0 1 0 0 b2...

. . .

.

.

....

.

.

.. . .

.

.

....

.

.

.

am1 am, nm 0 0 1 0 bm

c1 cnm cnm+1 cnm+2 cn 1 0cB(1) cB(2) cB(m)

R1

R2

Rm

Rm+1

( )1

m

i B ii

b c

10( )

1

m

j ij B ii

c a c

Bfs x0 = 0 0 b1 b2 bm

… …

0( ) ( )

1

m

B i B ii

x c

0c x0

jc

.

.

.

The negative of the cost of the initial bfs

Page 96: The Simplex Algorithm

Choosing a Pivot Column

x1 xj xnm xnm+1 xnm+j xn Ans

a11 a1j a1,nm 1 0 0 0 b1...

. . .

.

.

.. . .

.

.

....

. . .

.

.

.. . .

.

.

....

.

.

.

ai1 aij ai,nm 0 1 0 0 bi...

. . .

.

.

.. . .

.

.

....

. . .

.

.

.. . .

.

.

....

.

.

.

am1 amj am,nm 0 0 1 0 bm

c1 cj cnm 0 0 0 1 0

( )1

m

j ij B ii

j c x cc

j jc z <0

Bfs x0 = 0 0 b1 bi bm

… ……0

• If all are positive, we are done.

• We usually choose the most negative column as the pivot column.

• But, this is not necessary the best.

jc

Page 97: The Simplex Algorithm

Choosing the Pivot

x1 xj xnm xnm+1 xnm+j xn Ans

a11 a1j a1,nm 1 0 0 0 b1...

. . .

.

.

.. . .

.

.

....

. . .

.

.

.. . .

.

.

....

.

.

.

ai1 aij ai,nm 0 1 0 0 bi...

. . .

.

.

.. . .

.

.

....

. . .

.

.

.. . .

.

.

....

.

.

.

am1 amj am,nm 0 0 1 0 bm

c1 cj cnm 0 0 0 1 0

Bfs x0 = 0 0 b1 bi bm

… ……0 …

• Suppose that Aj is the pivot column, and the pivot is in the ith row.

• For each row with aij > 0, compute bi/aij.

• Among them, choose the row with minimum bi/aij as the pivot.

0

00 min

ij

i

xi

ij

x

x

1 ijb a

i ijb a

m ijb a

0 unit of Aj will enter the basis.

i

ij

b

a

Page 98: The Simplex Algorithm

Clear the Pivot Column

x1 xj xnm xnm+1 xnm+j xn Ans

a11 a1j a1,nm 1 0 0 0 b1...

. . .

.

.

.. . .

.

.

....

. . .

.

.

.. . .

.

.

....

.

.

.

ai1 aij ai,nm 0 1 0 0 bi...

. . .

.

.

.. . .

.

.

....

. . .

.

.

.. . .

.

.

....

.

.

.

am1 amj am,nm 0 0 1 0 bm

c1 cj cnm 0 0 0 1 0

Bfs x0 = 0 0 b1 bi bm

… ……0 …

0 unit of Aj will enter the basis.

1/aij bi/aijai1/aijai,nm/aij1 /aij

0

00 min

ij

i

xi

ij

x

x

i

ij

b

a

Page 99: The Simplex Algorithm

Clear the Pivot Column

x1 xj xnm xnm+1 xnm+j xn Ans

a11 a1j a1,nm 1 0 0 0 b1...

. . .

.

.

.. . .

.

.

....

. . .

.

.

.. . .

.

.

....

.

.

.

ai1 aij ai,nm 0 1 0 0 bi...

. . .

.

.

.. . .

.

.

....

. . .

.

.

.. . .

.

.

....

.

.

.

am1 amj am,nm 0 0 1 0 bm

c1 cj cnm 0 0 0 1 0

Bfs x0 = 0 0 b1 bi bm

… ……0 …

0 unit of Aj will enter the basis.

1/aij bi/aijai1/aijai,nm/aij1 Ri

, 1, , ,k k kj iR R a R k m k i

11a

1ma

1,n ma

,m n ma

1c n mc

0

0

0

a1j/aij

amj/aij

/j ijc a

b1bia1j/aij

bmbiamj/aij

0 /i j ijb c a

1 1m m j iR R c R

0

00 min

ij

i

xi

ij

x

x

i

ij

b

a

Page 100: The Simplex Algorithm

Bfs0 Bfs1

x1 xj xnm xnm+1 xnm+j xn Ans

a11 a1j a1,nm 1 0 0 0 b1...

. . .

.

.

.. . .

.

.

....

. . .

.

.

.. . .

.

.

....

.

.

.

ai1 aij ai,nm 0 1 0 0 bi...

. . .

.

.

.. . .

.

.

....

. . .

.

.

.. . .

.

.

....

.

.

.

am1 amj am,nm 0 0 1 0 bm

c1 cj cnm 0 0 0 1 0

Bfs x1 = 0 0 0… ……

0 unit of Aj will enter the basis.

1/aij bi/aijai1/aijai,nm/aij1 Ri

11a

1ma

1,n ma

,m n ma

1c n mc

0

0

0

a1j/aij

amj/aij

/j ijc a

b1bia1j/aij

bmbiamj/aij

0 /i j ijb c a

bi/aij

...

...

.

.

....

.

.

....

.

.

....

.

.

....

.

.

....

.

.

.

...

cj

amj

.

.

.

aij

a1j

xj Ansxnxn m+jxn m+1xn mx1

0 100cn mc1

bm0100am,n mam1

.

.

....

.

.

....

.

.

....

.

.

....

.

.

.

bi0010ai,n mai1

b10001a1,n ma11

...

...

.

.

....

.

.

....

.

.

....

.

.

....

.

.

....

.

.

.

...

cj

amj

.

.

.

aij

a1j

xj Ansxnxn m+jxn m+1xn mx1

0 100cn mc1

bm0100am,n mam1

.

.

....

.

.

....

.

.

....

.

.

....

.

.

.

bi0010ai,n mai1

b10001a1,n ma11

1/aij1/aij bi/aijbi/aijai1/aijai1/aijai,n m/aijai,n m/aij11

11a11a

1ma1ma

1,n ma 1,n ma

,m n ma ,m n ma

1c1c n mc n mc

00

00

00

a1j/aij a1j/aij

amj/aij amj/aij

b1 bia1j/aijb1 bia1j/aij

bm biamj/aijbm biamj/aij

0 /i j ijb c a 0 /i j ijb c a /j ijc a /j ijc a

0

00 min

ij

i

xi

ij

x

x

i

ij

b

a

b1bia1j/aij bmbiamj/aij…

Page 101: The Simplex Algorithm

Cost Improvement

x1 xj xnm xnm+1 xnm+j xn Ans

a11 a1j a1,nm 1 0 0 0 b1...

. . .

.

.

.. . .

.

.

....

. . .

.

.

.. . .

.

.

....

.

.

.

ai1 aij ai,nm 0 1 0 0 bi...

. . .

.

.

.. . .

.

.

....

. . .

.

.

.. . .

.

.

....

.

.

.

am1 amj am,nm 0 0 1 0 bm

c1 cj cnm 0 0 1 0

Bfs x1 = 0 0 b1bia1j/aij 0 bmbiamj/aij

… ……

0

00 min

ij

i

xi

ij

x

x

0 unit of Aj will enter the basis.

1/aij bi/aijai1/aijai,nm/aij1 Ri

11a

1ma

1,n ma

,m n ma

1c n mc

0

0

0

a1j/aij

amj/aij

b1bia1j/aij

bmbiamj/aij

0 /i j ijb c a

bi/aij

/j ijc a

i

ij

b

a

1 0 0= jc 1 0 0= jc Negative

Page 102: The Simplex Algorithm

The Cost Column

x1 xj xnm xnm+1 xnm+j xn Ans

a11 a1j a1,nm 1 0 0 0 b1...

. . .

.

.

.. . .

.

.

....

. . .

.

.

.. . .

.

.

....

.

.

.

ai1 aij ai,nm 0 1 0 0 bi...

. . .

.

.

.. . .

.

.

....

. . .

.

.

.. . .

.

.

....

.

.

.

am1 amj am,nm 0 0 1 0 bm

c1 cj cnm 0 0 0 1 0

use

less

Page 103: The Simplex Algorithm

Example

1 2 3 4 5

1 2 3

1 2 3 4

1 2 3 5

min

3 2 1

5 3

2 5 4

x x x x x

x x x

x x x x

x x x x

x1 x2 x3 x4 x5 Ans

1

3

4

3

5

2

2

1

5

1

1

1

0

1

0

0

0

1

01 1 1 1 1

Page 104: The Simplex Algorithm

Initialization x1 x2 x3 x4 x5 Ans

1

3

4

3

5

2

2

1

5

1

1

1

0

1

0

0

0

1

01 1 1 1 1

x1 x2 x3 x4 x5 Ans

01 1 1 1 1

1

2

3

3

2

1

2

1

3

1

0

0

0

1

0

0

0

1

R1

R2R1

R3R1

Page 105: The Simplex Algorithm

Initializationx1 x2 x3 x4 x5 Ans

x1 x2 x3 x4 x5 Ans

01 1 1 1 1

1

2

3

3

2

1

2

1

3

1

0

0

0

1

0

0

0

1

4 1 2 3R R R R 63 3 0 0 0

1

2

3

3

2

1

2

1

3

1

0

0

0

1

0

0

0

1

B

4 1 2 3R R R R

Page 106: The Simplex Algorithm

x1 x2 x3 x4 x5 Ans

63 3 0 0 0

1

2

3

3

2

1

2

1

3

1

0

0

0

1

0

0

0

1

1/2

3/3

Choosing the Pivot

Page 107: The Simplex Algorithm

x1 x2 x3 x4 x5 Ans

63 3 0 0 0

1

2

3

3

2

1

2

1

3

1

0

0

0

1

0

0

0

1

Clear the Pivot Column

x1 x2 x3 x4 x5 Ans

4.51.5 0 1.5 0 0

0.5

2.5

1.5

1.5

3.5

5.5

1

0

0

0.5

0.5

1.5

0

1

0

0

0

1

112 R

12 12R R

33 12R R

34 12R R

x5 Ansx4x3x2x1 x5 Ansx4x3x2x1

4.51.5 0 1.5 0 0

0.5

2.5

1.5

1.5

3.5

5.5

1

0

0

0.5

0.5

1.5

0

1

0

0

0

1

Page 108: The Simplex Algorithm

The Solution

x1 x2 x3 x4 x5 Ans

4.51.5 0 1.5 0 0

0.5

2.5

1.5

1.5

3.5

5.5

1

0

0

0.5

0.5

1.5

0

1

0

0

0

1

1 2 3 4 5

1 2 3

1 2 3 4

1 2 3 5

min

3 2 1

5 3

2 5 4

x x x x x

x x x

x x x x

x x x x

x2= 0.5

x4= 2.5

x5= 1.5

= 4.5

0.5 2.5 1.50 0

Page 109: The Simplex Algorithm

Linear Programming

Pivot Selection

大同大學資工所智慧型多媒體研究室

Page 110: The Simplex Algorithm

The Pivot Selection

Steepest descent– the aforementioned method

Greatest decrement– compute for each and choose the most negative one.

All-variable gradient

x1 xj xnm xnm+1 xnm+j xn Ans

a11 a1j a1,nm 1 0 0 b1...

. . .

.

.

.. . .

.

.

....

. . .

.

.

.. . .

.

.

....

ai1 aij ai,nm 0 1 0 bi...

. . .

.

.

.. . .

.

.

....

. . .

.

.

.. . .

.

.

....

am1 amj am,nm 0 0 1 bm

c1 cj cnm 0 0 0 0

0 jc 0jc

Page 111: The Simplex Algorithm

All-Variable Gradient

x1 xj xnm xnm+1 xnm+j xn Ans

a11 a1j a1,nm 1 0 0 b1...

. . .

.

.

.. . .

.

.

....

. . .

.

.

.. . .

.

.

....

ai1 aij ai,nm 0 1 0 bi...

. . .

.

.

.. . .

.

.

....

. . .

.

.

.. . .

.

.

....

am1 amj am,nm 0 0 1 bm

c1 cj cnm 0 0 0 0

Bfs x0 = 0 0 b1 bi bm

… ……0 …

Bfs x’ = 0 0 0… ……bi/aij b1bia1j/aij bmbiamj/aij…

x’ x0 = 0 0 bi… ……bi/aij bia1j/aij biamj/aij

0 0 aij1 a1j amj

aij/bi

Cost change when bringing one unit of xj into th

e bfs.

Cost change when bringing one unit of xj into th

e bfs.

2

1

unit cost change

distance1

j

m

iji

c

a

• Compute this for each

• Choose the most negative one.

0jc

Page 112: The Simplex Algorithm

Linear Programming

Anticycling Algorithm

大同大學資工所智慧型多媒體研究室

Page 113: The Simplex Algorithm

Cycling

x1 x2 x3 x4 x5 x6 x7 Ans

34 20 1

2 6 0 0 0 3

0 0 1 0 0 0 1 1

12 12 1

2 3 0 1 0 0

14 8 1 9 1 0 0 0

Ansx7x6x5x4x3x2x1 Ansx7x6x5x4x3x2x1

34 20 1

2 6 0 0 0 3

0 0 1 0 0 0 1 1

12 12 1

2 3 0 1 0 0

14 8 1 9 1 0 0 0

x1 x2 x3 x4 x5 x6 x7 Ans

0 4 72 33 3 0 0 3

0 0 1 0 0 0 1 1

0 4 32 15 2 1 0 0

1 32 4 36 4 0 0 0

Page 114: The Simplex Algorithm

x1 x2 x3 x4 x5 x6 x7 Ans

CyclingAnsx7x6x5x4x3x2x1 Ansx7x6x5x4x3x2x1

34 20 1

2 6 0 0 0 3

0 0 1 0 0 0 1 1

12 12 1

2 3 0 1 0 0

14 8 1 9 1 0 0 0

0 0 2 18 1 1 0 3

0 0 1 0 0 0 1 1

0 1 38

154 1

2 14 0 0

1 0 8 84 12 8 0 0

x1 x2 x3 x4 x5 x6 x7 Ans

0 4 72 33 3 0 0 3

0 0 1 0 0 0 1 1

0 4 32 15 2 1 0 0

1 32 4 36 4 0 0 0

Page 115: The Simplex Algorithm

x1 x2 x3 x4 x5 x6 x7 Ans

14 0 0 3 2 3 0 3

18 0 0 11

232 1 1 1

364 1 0 3

161

1618 0 0

18 0 1 11

2 32 1 0 0

x1 x2 x3 x4 x5 x6 x7 Ans

CyclingAnsx7x6x5x4x3x2x1 Ansx7x6x5x4x3x2x1

34 20 1

2 6 0 0 0 3

0 0 1 0 0 0 1 1

12 12 1

2 3 0 1 0 0

14 8 1 9 1 0 0 0

0 0 2 18 1 1 0 3

0 0 1 0 0 0 1 1

0 1 38

154 1

2 14 0 0

1 0 8 84 12 8 0 0

Page 116: The Simplex Algorithm

x1 x2 x3 x4 x5 x6 x7 Ans

12 16 0 0 1 1 0 3

52 56 0 0 2 6 1 1

14 16

3 0 1 13

23 0 0

52 56 1 0 2 6 0 0

x1 x2 x3 x4 x5 x6 x7 Ans

14 0 0 3 2 3 0 3

18 0 0 11

232 1 1 1

364 1 0 3

161

1618 0 0

18 0 1 11

2 32 1 0 0

CyclingAnsx7x6x5x4x3x2x1 Ansx7x6x5x4x3x2x1

34 20 1

2 6 0 0 0 3

0 0 1 0 0 0 1 1

12 12 1

2 3 0 1 0 0

14 8 1 9 1 0 0 0

Page 117: The Simplex Algorithm

x1 x2 x3 x4 x5 x6 x7 Ans

74 44 1

2 0 0 2 0 3

0 0 1 0 0 0 1 1

16 4 1

6 1 0 13 0 0

54 28 1

2 0 1 3 0 0

x1 x2 x3 x4 x5 x6 x7 Ans

12 16 0 0 1 1 0 3

52 56 0 0 2 6 1 1

14 16

3 0 1 13

23 0 0

52 56 1 0 2 6 0 0

CyclingAnsx7x6x5x4x3x2x1 Ansx7x6x5x4x3x2x1

34 20 1

2 6 0 0 0 3

0 0 1 0 0 0 1 1

12 12 1

2 3 0 1 0 0

14 8 1 9 1 0 0 0

Page 118: The Simplex Algorithm

x1 x2 x3 x4 x5 x6 x7 Ans

34 20 1

2 6 0 0 0 3

0 0 1 0 0 0 1 1

12 12 1

2 3 0 1 0 0

14 8 1 9 1 0 0 0

x1 x2 x3 x4 x5 x6 x7 Ans

74 44 1

2 0 0 2 0 3

0 0 1 0 0 0 1 1

16 4 1

6 1 0 13 0 0

54 28 1

2 0 1 3 0 0

CyclingAnsx7x6x5x4x3x2x1 Ansx7x6x5x4x3x2x1

34 20 1

2 6 0 0 0 3

0 0 1 0 0 0 1 1

12 12 1

2 3 0 1 0 0

14 8 1 9 1 0 0 0

Page 119: The Simplex Algorithm

Bland’s Anticycling Algorithm

Suppose in the simplex algorithm we choose the column to enter basis by

min : 0jj j c

and row by

0 0min ( ) : 0 and with 0i kij kj

ij kj

x xi B i x x

x x

Then, the algorithm terminates after a finite number of steps.

choose the lowest numbered favorable column.

choose the lowest numberedfavorable column to leave the basis.

Page 120: The Simplex Algorithm

Linear Programming

The Two-Phase Simplex Algorithm

大同大學資工所智慧型多媒體研究室

Page 121: The Simplex Algorithm

Example

1 2 3 4 5

1 2 3

1 2 3 4

1 2 3 5

min

subject to 3 2 1

5 3

2 5 4

x x x x x

x x x

x x x x

x x x x

x1 x2 x3 x4 x5 Ans

1

3

4

3

5

2

2

1

5

1

1

1

0

1

0

0

0

1

01 1 1 1 1

x1 x2 x3 x4 x5 Ans

01 1 1 1 1

1

2

3

3

2

1

2

1

3

1

0

0

0

1

0

0

0

1

R1

R2R1

R3R1

BWhy?

Page 122: The Simplex Algorithm

LP in Canonical Form

11 1 12 2 1 1

21 1 22 2 2 2

1 1 2 2

n n

n n

m m mn n m

a x a x a x b

a x a x a x b

a x a x a x b

Minimize 1 1 2 2 n nc x c x c x

1 2, , , 0nx x x

Subject to

11 1 12 2 1 1

21 1 22 2

1

2 2

1 1 2 2

2

n n

n n

m m mn n m

n

n

n m

x

x

x

a x a x a x b

a x a x a x b

a x a x a x b

Minimize 1 1 2 2 n nc x c x c x

1 2, , , 0n mx x x

Subject to

Page 123: The Simplex Algorithm

LP in Canonical Form

11 1 12 2 1 1

21 1 22 2

1

2 2

1 1 2 2

2

n n

n n

m m mn n m

n

n

n m

x

x

x

a x a x a x b

a x a x a x b

a x a x a x b

Minimize 1 1 2 2 n nc x c x c x

1 2, , , 0n mx x x

Subject to

Bfs: 1 0nx x 11 , , mn n mx b x b

How about if bi < 0 for

some i?How about if bi < 0 for

some i?

Page 124: The Simplex Algorithm

Example

Subject to 1 2

1 2

2

1

2 2

1

x x

x x

x

1 22x x

1 2, 0x x

Minimize

Subject to 3

4

1

2 5

2

1 2

1

2 2

1

x x

x

x

x

x

x

x

1 22x x

31 4 52 , ,, , 0x x xx x

Minimize

Page 125: The Simplex Algorithm

Example

Subject to 3

4

1

2 5

2

1 2

1

2 2

1

x x

x

x

x

x

x

x

1 22x x

31 4 52 , ,, , 0x x xx x

Minimize

1

2

0

0

x

x

3

4

5

1

2

1

x

x

x

The initial basic solution is infeasible.

Page 126: The Simplex Algorithm

Phase I

Subject to 1 2

1 2

2

6

6

6

3

4

5

1

2 2

1

x x

x x

x

x

x

x

xx x

6x

3 41 62 5, , , ,, 0xxx x x x

Minimize

Subject to 3

4

1

2 5

2

1 2

1

2 2

1

x x

x

x

x

x

x

x

1 22x x

31 4 52 , ,, , 0x x xx x

Minimize

Subject to 3

4

1

2 5

2

1 2

1

2 2

1

x x

x

x

x

x

x

x

1 22x x

31 4 52 , ,, , 0x x xx x

Minimize

x1 x2 x3 x4 x5 x6 Ans

1

1

0

0

1

2

1

0

1

0

0

0

0

1

0

0

0

0

1

0

1

1

1

1

1

2

1

0

Page 127: The Simplex Algorithm

x1 x2 x3 x4 x5 x6 Ans

Phase ISubject to 3

4

1

2 5

2

1 2

1

2 2

1

x x

x

x

x

x

x

x

1 22x x

31 4 52 , ,, , 0x x xx x

Minimize

Subject to 3

4

1

2 5

2

1 2

1

2 2

1

x x

x

x

x

x

x

x

1 22x x

31 4 52 , ,, , 0x x xx x

Minimize

x1 x2 x3 x4 x5 x6 Ans

1

1

0

0

1

2

1

0

1

0

0

0

0

1

0

0

0

0

1

0

1

1

1

1

1

2

1

0

x1 x2 x3 x4 x5 x6 Ans

0

1

1

1

3

2

3

2

1

0

0

0

1

1

1

1

0

0

1

0

0

1

0

0

1

2

3

2

2R1 2R R

3 2R R

4 2R R

Subject to 1 2

1 2

2

6

6

6

3

4

5

1

2 2

1

x x

x x

x

x

x

x

xx x

6x

3 41 62 5, , , ,, 0xxx x x x

Minimize

Subject to 1 2

1 2

2

6

6

6

3

4

5

1

2 2

1

x x

x x

x

x

x

x

xx x

6x

3 41 62 5, , , ,, 0xxx x x x

Minimize

most negative

Page 128: The Simplex Algorithm

x1 x2 x3 x4 x5 x6 Ans

Phase ISubject to 3

4

1

2 5

2

1 2

1

2 2

1

x x

x

x

x

x

x

x

1 22x x

31 4 52 , ,, , 0x x xx x

Minimize

Subject to 3

4

1

2 5

2

1 2

1

2 2

1

x x

x

x

x

x

x

x

1 22x x

31 4 52 , ,, , 0x x xx x

Minimize

x1 x2 x3 x4 x5 x6 Ans

x1 x2 x3 x4 x5 x6 Ans

0

1

1

1

3

2

3

2

1

0

0

0

1

1

1

1

0

0

1

0

0

1

0

0

1

2

3

2

0

1

1

1

1

0

0

0

1/3

2/3

1

2/3

1/3

1/3

0

1/3

0

0

1

0

0

1

0

0

1/3

4/3

2

4/3

1/3

2/2

3/3

22 13R R

113 R

3 1R R2

4 13R R

Subject to 1 2

1 2

2

6

6

6

3

4

5

1

2 2

1

x x

x x

x

x

x

x

xx x

6x

3 41 62 5, , , ,, 0xxx x x x

Minimize

Subject to 1 2

1 2

2

6

6

6

3

4

5

1

2 2

1

x x

x x

x

x

x

x

xx x

6x

3 41 62 5, , , ,, 0xxx x x x

Minimize

Page 129: The Simplex Algorithm

x1 x2 x3 x4 x5 x6 Ansx1 x2 x3 x4 x5 x6 Ans

Phase ISubject to 3

4

1

2 5

2

1 2

1

2 2

1

x x

x

x

x

x

x

x

1 22x x

31 4 52 , ,, , 0x x xx x

Minimize

Subject to 3

4

1

2 5

2

1 2

1

2 2

1

x x

x

x

x

x

x

x

1 22x x

31 4 52 , ,, , 0x x xx x

Minimize

x1 x2 x3 x4 x5 x6 Ans

0

1

1

1

1

0

0

0

1/3

2/3

1

2/3

1/3

1/3

0

1/3

0

0

1

0

0

1

0

0

1/3

4/3

2

4/3

4/3

2

0

1

0

0

1

0

0

0

1/3

2/3

1/3

0

1/3

1/3

1/3

0

0

0

1

0

0

1

1

1

1/3

4/3

2/3

0

2R1R

3 2R R

4 2R R

Subject to 1 2

1 2

2

6

6

6

3

4

5

1

2 2

1

x x

x x

x

x

x

x

xx x

6x

3 41 62 5, , , ,, 0xxx x x x

Minimize

Subject to 1 2

1 2

2

6

6

6

3

4

5

1

2 2

1

x x

x x

x

x

x

x

xx x

6x

3 41 62 5, , , ,, 0xxx x x x

Minimize

Page 130: The Simplex Algorithm

x1 x2 x3 x4 x5 x6 Ans

Phase ISubject to 3

4

1

2 5

2

1 2

1

2 2

1

x x

x

x

x

x

x

x

1 22x x

31 4 52 , ,, , 0x x xx x

Minimize

Subject to 3

4

1

2 5

2

1 2

1

2 2

1

x x

x

x

x

x

x

x

1 22x x

31 4 52 , ,, , 0x x xx x

Minimize

0

1

0

0

1

0

0

0

1/3

2/3

1/3

0

1/3

1/3

1/3

0

0

0

1

0

0

1

1

1

1/3

4/3

2/3

0

Subject to 1 2

1 2

2

6

6

6

3

4

5

1

2 2

1

x x

x x

x

x

x

x

xx x

6x

3 41 62 5, , , ,, 0xxx x x x

Minimize

x1 = 4/3

x2 = 1/3

x5 = 2/3

12 1

Subject to 1 2

1 2

2

6

6

6

3

4

5

1

2 2

1

x x

x x

x

x

x

x

xx x

6x

3 41 62 5, , , ,, 0xxx x x x

Minimize

Subject to 1 2

1 2

2

6

6

6

3

4

5

1

2 2

1

x x

x x

x

x

x

x

xx x

6x

3 41 62 5, , , ,, 0xxx x x x

Minimize

Page 131: The Simplex Algorithm

x1 x2 x3 x4 x5 x6 Ans

Phase ISubject to 3

4

1

2 5

2

1 2

1

2 2

1

x x

x

x

x

x

x

x

1 22x x

31 4 52 , ,, , 0x x xx x

Minimize

Subject to 3

4

1

2 5

2

1 2

1

2 2

1

x x

x

x

x

x

x

x

1 22x x

31 4 52 , ,, , 0x x xx x

Minimize

0

1

0

0

1

0

0

0

1/3

2/3

1/3

0

1/3

1/3

1/3

0

0

0

1

0

0

1

1

1

1/3

4/3

2/3

0

x1 = 4/3

x2 = 1/3

x5 = 2/3

Subject to 1 2

1 2

2

6

6

6

3

4

5

1

2 2

1

x x

x x

x

x

x

x

xx x

6x

3 41 62 5, , , ,, 0xxx x x x

Minimize

Subject to 1 2

1 2

2

6

6

6

3

4

5

1

2 2

1

x x

x x

x

x

x

x

xx x

6x

3 41 62 5, , , ,, 0xxx x x x

Minimize

Discussion:

In what condition, we can conclude the problem is infeasible?

Page 132: The Simplex Algorithm

x1 x2 x3 x4 x5 x6 Ans

Phase IISubject to 3

4

1

2 5

2

1 2

1

2 2

1

x x

x

x

x

x

x

x

1 22x x

31 4 52 , ,, , 0x x xx x

Minimize

Subject to 3

4

1

2 5

2

1 2

1

2 2

1

x x

x

x

x

x

x

x

1 22x x

31 4 52 , ,, , 0x x xx x

Minimize

0

1

0

0

1

0

0

0

1/3

2/3

1/3

0

1/3

1/3

1/3

0

0

0

1

0

0

1

1

1

1/3

4/3

2/3

0

x1 = 4/3

x2 = 1/3

x5 = 2/3

x1 x2 x3 x4 x5 Ans

0

1

0

2

1

0

0

1

1/3

2/3

1/3

0

1/3

1/3

1/3

0

0

0

1

0

1/3

4/3

2/3

0

Page 133: The Simplex Algorithm

x1 x2 x3 x4 x5 Ansx1 x2 x3 x4 x5 Ans

Phase IISubject to 3

4

1

2 5

2

1 2

1

2 2

1

x x

x

x

x

x

x

x

1 22x x

31 4 52 , ,, , 0x x xx x

Minimize

Subject to 3

4

1

2 5

2

1 2

1

2 2

1

x x

x

x

x

x

x

x

1 22x x

31 4 52 , ,, , 0x x xx x

Minimize

x1 = 4/3

x2 = 1/3

x5 = 2/3

x1 x2 x3 x4 x5 Ans

0

1

0

2

1

0

0

1

1/3

2/3

1/3

0

1/3

1/3

1/3

0

0

0

1

0

1/3

4/3

2/3

0

0 0 1 1 0

0

1

0

1

0

0

1/3

2/3

1/3

1/3

1/3

1/3

0

0

1

1/3

4/3

2/3

3 4 2 12R R R

Page 134: The Simplex Algorithm

x1 x2 x3 x4 x5 Ans

Phase IISubject to 3

4

1

2 5

2

1 2

1

2 2

1

x x

x

x

x

x

x

x

1 22x x

31 4 52 , ,, , 0x x xx x

Minimize

Subject to 3

4

1

2 5

2

1 2

1

2 2

1

x x

x

x

x

x

x

x

1 22x x

31 4 52 , ,, , 0x x xx x

Minimize

x1 = 4/3

x2 = 1/3

x5 = 2/3

0 0 1 1 0

0

1

0

1

0

0

1/3

2/3

1/3

1/3

1/3

1/3

0

0

1

1/3

4/3

2/3

3 4 2 12R R R

You can start the original simplex algorithm from here.

In this example, it is now optimal.

Page 135: The Simplex Algorithm

Two-Phase Simplex Algorithm LP in Standard Form

11 1 12 2 1 1

21 1 22 2 2 2

1 1 2 2

n n

n n

m m mn n m

a x a x a x b

a x a x a x b

a x a x a x b

Minimize 1 1 2 2 n nc x c x c x

1 2, , , 0nx x x

Subject to

11 1 12 2 1 1

21 1 22 2

1

2 2

1 1 2 2

2

n n

n n

m m mn n m

n

n

n m

x

x

x

a x a x a x b

a x a x a x b

a x a x a x b

Minimize 1n n mx x

1 2, , , 0n mx x x

Subject to

Negate both sides if bi < 0. Therefore, we assume bi’s are nonnegative.

Phase I

must be zero if succeeded.

Page 136: The Simplex Algorithm

Two-Phase Simplex Algorithm LP in Standard Form

11 1 12 2 1 1

21 1 22 2 2 2

1 1 2 2

n n

n n

m m mn n m

a x a x a x b

a x a x a x b

a x a x a x b

Minimize 1 1 2 2 n nc x c x c x

1 2, , , 0nx x x

Subject to

11 1 12 2 1 1

21 1 22 2

1

2 2

1 1 2 2

2

n n

n n

m m mn n m

n

n

n m

x

x

x

a x a x a x b

a x a x a x b

a x a x a x b

Minimize 1n n mx x

1 2, , , 0n mx x x

Subject to

Phase II Start this phase if we find a bfs in Phsae I.

Phase I

must be zero if succeeded.

Page 137: The Simplex Algorithm

Example

1 2 3 4 5

1 2 3

1 2 3 4

1 2 3 5

min

subject to 3 2 1

5 3

2 5 4

x x x x x

x x x

x x x x

x x x x

1 2 3

1 2 3 4

1 2 3

6 7 8

6

5

7

8

min

subject to 3 2 1

5 3

2 5 4

x x x

x x x x

x x

x x

x

x

xx

x

x

Phase I

Page 138: The Simplex Algorithm

Phase I

1 2 3 4 5

1 2 3

1 2 3 4

1 2 3 5

min

subject to 3 2 1

5 3

2 5 4

x x x x x

x x x

x x x x

x x x x

1 2 3 4 5

1 2 3

1 2 3 4

1 2 3 5

min

subject to 3 2 1

5 3

2 5 4

x x x x x

x x x

x x x x

x x x x

1 2 3

1 2 3 4

1 2 3

6 7 8

6

5

7

8

min

subject to 3 2 1

5 3

2 5 4

x x x

x x x x

x x

x x

x

x

xx

x

x

x1 x2 x3 x4 x5 x6 x7 x8 Ans

3 2 1 0 0 1 0 0 1

5 1 1 1 0 0 1 0 3

2 5 1 0 1 0 0 1 4

0 0 0 0 0 1 1 1 0

Page 139: The Simplex Algorithm

Phase I

1 2 3 4 5

1 2 3

1 2 3 4

1 2 3 5

min

subject to 3 2 1

5 3

2 5 4

x x x x x

x x x

x x x x

x x x x

1 2 3 4 5

1 2 3

1 2 3 4

1 2 3 5

min

subject to 3 2 1

5 3

2 5 4

x x x x x

x x x

x x x x

x x x x

1 2 3

1 2 3 4

1 2 3

6 7 8

6

5

7

8

min

subject to 3 2 1

5 3

2 5 4

x x x

x x x x

x x

x x

x

x

xx

x

x

1 2 3

1 2 3 4

1 2 3

6 7 8

6

5

7

8

min

subject to 3 2 1

5 3

2 5 4

x x x

x x x x

x x

x x

x

x

xx

x

x

x1 x2 x3 x4 x5 x6 x7 x8 Ans

3 2 1 0 0 1 0 0 1

5 1 1 1 0 0 1 0 3

2 5 1 0 1 0 0 1 4

0 0 0 0 0 1 1 1 0

x1 x2 x3 x4 x5 x6 x7 x8 Ans

3 2 1 0 0 1 0 0 1

5 1 1 1 0 0 1 0 3

2 5 1 0 1 0 0 1 4

10 8 3 1 1 0 0 0 8

Page 140: The Simplex Algorithm

x1 x2 x3 x4 x5 x6 x7 x8 Ans

3 2 1 0 0 1 0 0 1

5 1 1 1 0 0 1 0 3

2 5 1 0 1 0 0 1 4

10 8 3 1 1 0 0 0 8

Phase I

1 2 3 4 5

1 2 3

1 2 3 4

1 2 3 5

min

subject to 3 2 1

5 3

2 5 4

x x x x x

x x x

x x x x

x x x x

1 2 3 4 5

1 2 3

1 2 3 4

1 2 3 5

min

subject to 3 2 1

5 3

2 5 4

x x x x x

x x x

x x x x

x x x x

1 2 3

1 2 3 4

1 2 3

6 7 8

6

5

7

8

min

subject to 3 2 1

5 3

2 5 4

x x x

x x x x

x x

x x

x

x

xx

x

x

1 2 3

1 2 3 4

1 2 3

6 7 8

6

5

7

8

min

subject to 3 2 1

5 3

2 5 4

x x x

x x x x

x x

x x

x

x

xx

x

x

x1 x2 x3 x4 x5 x6 x7 x8 Ans

1 2/3 1/3 0 0 1/3 0 0 1/3

0 7/3 2/3 1 0 5/3 1 0 4/3

0 11/3 1/3 0 1 2/3 0 1 10/3

0 4/3 1/3 1 1 10/3 0 0 14/3

Page 141: The Simplex Algorithm

Phase I

1 2 3 4 5

1 2 3

1 2 3 4

1 2 3 5

min

subject to 3 2 1

5 3

2 5 4

x x x x x

x x x

x x x x

x x x x

1 2 3 4 5

1 2 3

1 2 3 4

1 2 3 5

min

subject to 3 2 1

5 3

2 5 4

x x x x x

x x x

x x x x

x x x x

1 2 3

1 2 3 4

1 2 3

6 7 8

6

5

7

8

min

subject to 3 2 1

5 3

2 5 4

x x x

x x x x

x x

x x

x

x

xx

x

x

1 2 3

1 2 3 4

1 2 3

6 7 8

6

5

7

8

min

subject to 3 2 1

5 3

2 5 4

x x x

x x x x

x x

x x

x

x

xx

x

x

x1 x2 x3 x4 x5 x6 x7 x8 Ans

1 2/3 1/3 0 0 1/3 0 0 1/3

0 7/3 2/3 1 0 5/3 1 0 4/3

0 11/3 1/3 0 1 2/3 0 1 10/3

0 4/3 1/3 1 1 10/3 0 0 14/3

x1 x2 x3 x4 x5 x6 x7 x8 Ans

1.5 1 0.5 0 0 0.5 0 0 0.5

3.5 0 0.5 1 0 0.5 1 0 2.5

5.5 0 1.5 0 1 2.5 0 1 1.5

2 0 1 1 1 4 0 0 4

Page 142: The Simplex Algorithm

Phase I

1 2 3 4 5

1 2 3

1 2 3 4

1 2 3 5

min

subject to 3 2 1

5 3

2 5 4

x x x x x

x x x

x x x x

x x x x

1 2 3 4 5

1 2 3

1 2 3 4

1 2 3 5

min

subject to 3 2 1

5 3

2 5 4

x x x x x

x x x

x x x x

x x x x

1 2 3

1 2 3 4

1 2 3

6 7 8

6

5

7

8

min

subject to 3 2 1

5 3

2 5 4

x x x

x x x x

x x

x x

x

x

xx

x

x

1 2 3

1 2 3 4

1 2 3

6 7 8

6

5

7

8

min

subject to 3 2 1

5 3

2 5 4

x x x

x x x x

x x

x x

x

x

xx

x

x

x1 x2 x3 x4 x5 x6 x7 x8 Ans

1.5 1 0.5 0 0 0.5 0 0 0.5

3.5 0 0.5 1 0 0.5 1 0 2.5

5.5 0 1.5 0 1 2.5 0 1 1.5

2 0 1 1 1 4 0 0 4

x1 x2 x3 x4 x5 x6 x7 x8 Ans

1.5 1 0.5 0 0 0.5 0 0 0.5

3.5 0 0.5 1 0 0.5 1 0 2.5

5.5 0 1.5 0 1 2.5 0 1 1.5

5.5 0 1.5 0 1 3.5 1 0 1.5

Page 143: The Simplex Algorithm

Phase I

1 2 3 4 5

1 2 3

1 2 3 4

1 2 3 5

min

subject to 3 2 1

5 3

2 5 4

x x x x x

x x x

x x x x

x x x x

1 2 3 4 5

1 2 3

1 2 3 4

1 2 3 5

min

subject to 3 2 1

5 3

2 5 4

x x x x x

x x x

x x x x

x x x x

1 2 3

1 2 3 4

1 2 3

6 7 8

6

5

7

8

min

subject to 3 2 1

5 3

2 5 4

x x x

x x x x

x x

x x

x

x

xx

x

x

1 2 3

1 2 3 4

1 2 3

6 7 8

6

5

7

8

min

subject to 3 2 1

5 3

2 5 4

x x x

x x x x

x x

x x

x

x

xx

x

x

x1 x2 x3 x4 x5 x6 x7 x8 Ans

1.5 1 0.5 0 0 0.5 0 0 0.5

3.5 0 0.5 1 0 0.5 1 0 2.5

5.5 0 1.5 0 1 2.5 0 1 1.5

5.5 0 1.5 0 1 3.5 1 0 1.5

x1 x2 x3 x4 x5 x6 x7 x8 Ans

1.5 1 0.5 0 0 0.5 0 0 0.5

3.5 0 0.5 1 0 0.5 1 0 2.5

5.5 0 1.5 0 1 2.5 0 1 1.5

0 0 0 0 0 1 1 1 0

Page 144: The Simplex Algorithm

Phase II

1 2 3 4 5

1 2 3

1 2 3 4

1 2 3 5

min

subject to 3 2 1

5 3

2 5 4

x x x x x

x x x

x x x x

x x x x

1 2 3 4 5

1 2 3

1 2 3 4

1 2 3 5

min

subject to 3 2 1

5 3

2 5 4

x x x x x

x x x

x x x x

x x x x

x1 x2 x3 x4 x5 x6 x7 x8 Ans

1.5 1 0.5 0 0 0.5 0 0 0.5

3.5 0 0.5 1 0 0.5 1 0 2.5

5.5 0 1.5 0 1 2.5 0 1 1.5

0 0 0 0 0 1 1 1 0

x1 x2 x3 x4 x5 Ans

1.5 1 0.5 0 0 0.5

3.5 0 0.5 1 0 2.5

5.5 0 1.5 0 1 1.5

1 1 1 1 1 0

Page 145: The Simplex Algorithm

Phase II

1 2 3 4 5

1 2 3

1 2 3 4

1 2 3 5

min

subject to 3 2 1

5 3

2 5 4

x x x x x

x x x

x x x x

x x x x

1 2 3 4 5

1 2 3

1 2 3 4

1 2 3 5

min

subject to 3 2 1

5 3

2 5 4

x x x x x

x x x

x x x x

x x x x

x1 x2 x3 x4 x5 Ans

1.5 1 0.5 0 0 0.5

3.5 0 0.5 1 0 2.5

5.5 0 1.5 0 1 1.5

1 1 1 1 1 0

x1 x2 x3 x4 x5 Ans

1.5 1 0.5 0 0 0.5

3.5 0 0.5 1 0 2.5

5.5 0 1.5 0 1 1.5

1.5 0 1.5 0 0 4.5 4 1 2 3R R R R

Page 146: The Simplex Algorithm

Phase II

1 2 3 4 5

1 2 3

1 2 3 4

1 2 3 5

min

subject to 3 2 1

5 3

2 5 4

x x x x x

x x x

x x x x

x x x x

1 2 3 4 5

1 2 3

1 2 3 4

1 2 3 5

min

subject to 3 2 1

5 3

2 5 4

x x x x x

x x x

x x x x

x x x x

x1 x2 x3 x4 x5 Ans

1.5 1 0.5 0 0 0.5

3.5 0 0.5 1 0 2.5

5.5 0 1.5 0 1 1.5

1.5 0 1.5 0 0 4.5

x2 = 0.5

x4 = 2.5

x5 = 1.5

We now can enter the Phase II of the two-phase simplex algorithm.

However, we are now already in optimum.