SlideShare a Scribd company logo
1 of 37
Download to read offline
Simplex algorithm
for
problems with bounded variables
Simplex method for
problems with bounded variables
• Consider the linear programming problem with bounded variables

min c T g
s.t. Ag = h
lj ≤ g j ≤ qj

j = 1, 2,..., n

where g , c, l , q ∈ R n , h ∈ R m , and A is a m × n matrix

• Complete the following change of variables to reduce the lower bound to 0
xj = gj – lj (i.e., gj = xj + lj )
Simplex method for
problems with bounded variables
min c T g
s.t. Ag = h
lj ≤ g j ≤ qj

the problem becomes

min c T ( x + l )
s.t. A( x + l ) = h
lj ≤ xj + lj ≤ qj

j = 1, 2,..., n

j = 1, 2,..., n

where c, x, l , q ∈ R n , h ∈ R m , and A is a m × n matrix

•

Complete the following change of variables to reduce the lower bound to 0
xj = gj – lj

(i.e., gj = xj + lj )
Simplex method for
problems with bounded variables
the problem becomes

min c T ( x + l )
s.t. A( x + l ) = h
lj ≤ xj + lj ≤ qj

j = 1, 2,..., n

where c, x, l , q ∈ R n , h ∈ R m , and A is a m × n matrix
min c T x + c T l
s.t. Ax = h − Al
lj − lj ≤ xj + lj − lj ≤ qj − lj
replacing : uj = qj – lj and

j = 1, 2,..., n

b = h – Al

min c T x + c T l
s.t. Ax = b
0 ≤ xj ≤ uj

j = 1, 2,..., n
Simplex method for
problems with bounded variables
• In this problem

c T l + min c T x + c T l
s.t. Ax = b
0 ≤ xj ≤ uj

j = 1, 2,..., n

since cTl is a constant, we can eliminate it from the minimisation without
modifying the optimal solution.
Then in the rest of the presentation we consider the problem without this
constant.
min c T x + c T l
s.t. Ax = b
0 ≤ xj ≤ uj

• Consider the explicit formulation of the problem
n n

min = ∑ c x
min z z = ∑jc jjx j
j
j =1 =1
n

s.t.
s.t.

n

x
a
∑ ∑xa = b
ij j ij
j =1 j =1

j i

im
== i1, 2,...,= 1, 2,..., m
i b

0 ≤ x x ≤+ y j = ujj = 1, 2,..., 1, 2,..., n
j =n
j j uj

xj , yj ≥ 0

j = 1, 2,..., n

• One way of solving the problem is to introduce slack variables yj,
and then use the simplex algorithm.

j = 1, 2,..., n
n

min z = ∑ c j x j

Tableau with m + n rows

j =1
n

s.t.

∑a x

= bi

i = 1, 2,..., m

xj + yj = uj

j = 1, 2,..., n

xj , yj ≥ 0

ij

j = 1, 2,..., n

j

j =1

n

min z = ∑ c j x j

Tableau with m rows

j =1
n

s.t.

∑a x

= bi

i = 1, 2,..., m

0 ≤ xj ≤ uj

j = 1, 2,..., n

ij

j

j =1

account implicitly
n

min z = ∑ c j x j
j =1
n

s.t.

∑a x
ij

j

= bi

j =1

xj + yj = uj
xj , yj ≥ 0

i = 1, 2,..., m
Non degeneracy:
j = 1, 2,..., n all the basic variables
are positive at
j = 1, 2,..., n each iteration

• Consider a basic feasible solution of this problem
• Because of the constraints xj + yj = uj, at least one of the variables xj or yj is
basic, j = 1,2,…,n.
• Then for all j = 1,2,…,n, one of the three situations holds:
a) xj = uj is basic and yj = 0 is non basic
b) xj = 0 is non basic and yj = uj is basic
c) 0 < xj < uj is basic and 0 < yj < uj is basic
a) x j basic; y j non basic
b) x j non basic; y j basic
c) x j basic; y j basic

n

min z =

∑c x
j

j

j =1
n

Sujet à

∑a

= bi

i = 1,2,..., m

xj + yj =uj

j = 1,2,..., n

xj , yj ≥0

j = 1,2,..., n

ij x j

j =1

m + n basic variables required
There are n variables yj

⇓
There are at least m variables xj
that are basic

Exactly m variables xj satisfying
0 < xj < uj.
For contradiction, if m0 ≠ m variables xj
satisfy the relation, then the
m0 corresponding variables yj would be
basic.
Furthermore, for the n – m0 other indices j,
either xj = uj (case a) or yj = uj (case b)
would be verified.
Then the number of basic variables
would be equal to
2m0 + (n – m0) = m0 + n ≠ m + n
a) x j basic; y j non basic
b) x j non basic; y j basic
c) x j basic; y j basic

n

min z =

∑c x
j

j

j =1
n

Sujet à

∑a

= bi

i = 1,2,..., m

xj + yj =uj

j = 1,2,..., n

xj , yj ≥0

j = 1,2,..., n

ij x j

j =1

m + n basic variables required
There are n variables yj

⇓
There are at least m variables xj
that are basic

Exactly m variables xj satisfying
0 < xj < uj.
For contradiction, if m0 ≠ m variables xj
satisfy the relation, then the
m0 corresponding variables yj would be
basic.
Furthermore, for the n – m0 other indices j,
either xj = uj (case a) or yj = uj (case b)
would be verified.
Then the number of basic variables
would be equal to
2m0 + (n – m0) = m0 + n ≠ m + n
n

min z =

La base a donc la forme suivante

∑c x
j

j

j =1
n

∑a x

s.t.

ij

= bi

j

i = 1, 2,..., m

j =1

xj + yj = uj
xj , yj ≥ 0

j = 1, 2,..., n
j = 1, 2,..., n

m
min z = c T x
s.t.
Ax + 0 y = b
Ix + Iy = u
x, y ≥ 0

m

 A 0
I I 



n
To simplify notation, assume
the following basic variables:
0 < xi < ui
0 < yi < ui

0 < xj < uj

0 < yj < uj

xj=uj

yj=uj

i = 1,… , m
i = 1,…, m

xi = ui

i = m + 1,… , m + l

yi = ui

i = m + l + 1,…, m + n
n

min z =

The basis has the following form

∑c x
j

j

j =1
n

∑a x

s.t.

ij

j

= bi

i = 1, 2,..., m

j =1

xj + yj = uj
xj , yj ≥ 0

j = 1, 2,..., n
j = 1, 2,..., n

m
min z = c T x
Ax + 0 y = b
s.t.
Ix + Iy = u
min z = c x
Sujet à Ax + 0 y = b
x, y ≥ 0
T

Ix + Iy = u
x, y ≥ 0

m

1

 A 0
I I 



1

n
2

To simplify notation, assume
the following basic variables:
3

m

0 < yj < uj

m

xj=uj

yj=uj

n−m

i = 1,…, m

0 < yi < ui

0 < xj < uj

0 < xi < ui

i = 1,…, m

xi = ui

i = m + 1,…, m + l

yi = ui

i = m + l + 1,… , m + n
B 0 D 0 
 I1 I 1 0 0 
Ξ= 
0 0 I2 0 


0 0 0 I3 

 B 0 D 0
I

= 1
0 I 


0



where the matrix I is n × n



 I1   


det ( Ξ ) = det ( I ) det ( B ) − det  [0 D 0] I −1  0   

0   



  


= det ( I ) det ( B ) − det 0

{

( )}

where the matrix 0 is m × m since
[0 D 0] is a m × n matrix and
 I1 
0  is a n × m matrix
0 
 
Then
det ( Ξ ) = det ( I ) det ( B ) .
Since Ξ is a basis, then det ( Ξ ) ≠ 0.
Consequently det ( B ) = det ( Ξ ) ≠ 0 and then B is non singular.
Then B is a basis of A.
B 0 D 0 
 I1 I 1 0 0 
Ξ= 
0 0 I2 0 


0 0 0 I3 

 B 0 D 0
I

= 1
0 I 


0



where the matrix I is n × n



 I1   


det ( Ξ ) = det ( I ) det ( B ) − det  [0 D 0] I −1  0   

0   



  


= det ( I ) det ( B ) − det 0

{

( )}

where the matrix 0 is m × m since
[0 D 0] is a m × n matrix and
 I1 
0  is a n × m matrix
0 
 
Then
det ( Ξ ) = det ( I ) det ( B ) .
Since Ξ is a basis, then det ( Ξ ) ≠ 0.
Consequently det ( B ) = det ( Ξ ) ≠ 0 and then B is non singular.
Then B is a basis of A.
B 0 D 0 
 I1 I 1 0 0 
Ξ= 
0 0 I2 0 


0 0 0 I3 

 B 0 D 0
I

= 1
0 I 


0



a b 
= ad − bc
det 
c d


= d ( a − bd −1c )
where the matrix I is n × n



 I1   


det ( Ξ ) = det ( I ) det ( B ) − det  [0 D 0] I −1  0   

0   



  


= det ( I ) det ( B ) − det 0

{

( )}

where the matrix 0 is m × m since
[0 D 0] is a m × n matrix and
 I1 
0  is a n × m matrix
0 
 
Then
det ( Ξ ) = det ( I ) det ( B ) .
Since Ξ is a basis, then det ( Ξ ) ≠ 0.
Consequently det ( B ) = det ( Ξ ) ≠ 0 and then B is non singular.
Then B is a basis of A.
B 0 D 0 
 I1 I 1 0 0 
Ξ= 
0 0 I2 0 


0 0 0 I3 

 B 0 D 0
I

= 1
0 I 


0



a b 
= ad − bc
det 
c d


= d ( a − bd −1c )
where the matrix I is n × n



 I1   


det ( Ξ ) = det ( I ) det ( B ) − det  [0 D 0] I −1  0   

0   



  


= det ( I ) det ( B ) − det 0

{

( )}

where the matrix 0 is m × m since
[0 D 0] is a m × n matrix and
 I1 
0  is a n × m matrix
0 
 
Then
det ( Ξ ) = det ( I ) det ( B ) .
Since Ξ is a basis, then det ( Ξ ) ≠ 0.
Consequently det ( B ) = det ( Ξ ) ≠ 0 and then B is non singular.
Then B is a basis of A.
B 0 D 0 
 I1 I 1 0 0 
Ξ= 
0 0 I2 0 


0 0 0 I3 

 B 0 D 0
I

= 1
0 I 


0



a b 
= ad − bc
det 
c d


= d ( a − bd −1c )
where the matrix I is n × n



 I1   


det ( Ξ ) = det ( I ) det ( B ) − det  [0 D 0] I −1  0   

0   



  


= det ( I ) det ( B ) − det 0

{

( )}

where the matrix 0 is m × m since
[0 D 0] is a m × n matrix and
 I1 
0  is a n × m matrix
0 
 
Then
det ( Ξ ) = det ( I ) det ( B ) .
Since Ξ is a basis, then det ( Ξ ) ≠ 0.
Consequently det ( B ) = det ( Ξ ) ≠ 0 and then B is non singular.
Then B is a basis of A.
B 0 D 0 
 I1 I 1 0 0 
Ξ= 
0 0 I2 0 


0 0 0 I3 

 B 0 D 0
I

= 1
0 I 


0



a b 
= ad − bc
det 
c d


= d ( a − bd −1c )
where the matrix I is n × n



 I1   


det ( Ξ ) = det ( I ) det ( B ) − det  [0 D 0] I −1  0   

0   



  


= det ( I ) det ( B ) − det 0

{

( )}

where the matrix 0 is m × m since
[0 D 0] is a m × n matrix and
 I1 
0  is a n × m matrix
0 
 
Then
det ( Ξ ) = det ( I ) det ( B ) .
Since Ξ is a basis, then det ( Ξ ) ≠ 0.
Consequently det ( B ) = det ( Ξ ) ≠ 0 and then B is non singular.
Then B is a basis of A.
B 0 D 0 
 I1 I 1 0 0 
Ξ= 
0 0 I2 0 


0 0 0 I3 

 B 0 D 0
I

= 1
0 I 


0



a b 
= ad − bc
det 
c d


= d ( a − bd −1c )
where the matrix I is n × n



 I1   


det ( Ξ ) = det ( I ) det ( B ) − det  [0 D 0] I −1  0   

0   



  


= det ( I ) det ( B ) − det 0

{

( )}

where the matrix 0 is m × m since
[0 D 0] is a m × n matrix and
 I1 
0  is a n × m matrix
0 
 
Then
det ( Ξ ) = det ( I ) det ( B ) .
Since Ξ is a basis, then det ( Ξ ) ≠ 0.
Consequently det ( B ) = det ( Ξ ) ≠ 0 and then B is non singular.
Then B is a basis of A.
The basis has the following form

m
Basis of A

1

The columns of
the basis B of A
are those of
the variables
0<xj<uj

1

n
2

3

0 < xj < uj

0 < yj < uj

xj=uj

yj=uj
• Then, we can specify a variant of the simplex method to solve this problem
specifically:
n
min z = ∑ c j x j
j =1
n

s.t.

∑a x

= bi

i = 1, 2,..., m

0 ≤ xj ≤ uj

j = 1, 2,..., n

ij

j

j =1

by dealing implictly with the upper bound uj. At each iteration, we consider
a solution (basic) associated with a basis B de A having
m basic variables
0 < xj < uj
j ∈ IB
n – m non basic variables x j = 0 ou u j
j ∈ JB
n

min z =

∑c x
j

j

j =1
n

s.t.

∑a x
ij

j

= bi

i = 1, 2,..., m

j =1

xj + yj = uj
xj , yj ≥ 0

j = 1, 2,..., n
j = 1, 2,..., n

• At each iteration, we consider a solution (basic) associated with a basis B
de A having
0 < xj < uj
j ∈ IB
m basic variables
n – m non basic variables x j = 0 or u j
j ∈ JB
• Denote the indices of the basic variables IB = {j1, j2, …, jm} where ji is the
index of the basic variable in the ith row, then
x j = 0 ou u j

j ∈ JB

∑∑

i = 1, m
x ji =xbii = b i − a ij x a ij x j i = 1,2,...,2,..., m
j −
j
j∈JB j∈JB
Dependent
variables

r.h.s.

We find similar
values as in problems
where there are no
upper bounds, except for
non basic variables
x j = 0 or u j

j ∈ JB
We find similar
values as in problems
where there are no
upper bounds, except for
non basic variables
x j = 0 or u j
j ∈ JB

We have to modify the entering criterion
and the leaving criterion accordingly to
generate a variant of the simplex algorithm
for this problem
Step 1: Selecting the entering variable
The criterion to select the entering variable must be modified to account
for the non basic variables xj being equal to their upper bounds uj since
these variables can be reduced.
Hence, for an index j ∈ JB
if x j = 0 and c j < 0 , it is interesting to increase xj
if x j = u j and c j > 0 , it is interesting to decrease xj

{c
= min { c , −c }

Determine c s1 = min
j∈JB

Let c s

s1

s2

j

}

{

: x j = 0 and c s2 = max c j : x j = u j

(max { c

j∈JB

s1

, c s2

}

})

If c s ≥ 0, then the solution is optimal, and the algoithm stops.
If c s < 0 and c s = c s1 , then the non basic variable xs increases, and go to Step 2.1.
If c s < 0 et c s < c s1 , then the non basic variable xs decreases, and go to Step 2.2.
Step 2.1: Selecting the leaving variable
• The increase θ of the entering
variable xs is stop by the first of
the following three situations
happening:
i) xs reach its upper bound us
ii) a basic variable x jr decreases
to 0 (in this case a rs > 0)
iii) a basic variable x jr
increases to reach its upper
bound u jr (in ths case
a rs < 0 )
0 ≤ x j1 = g − a1s ( 0 + θ ) ≤ u j1
1

0 ≤ x jr = g − ars ( 0 + θ ) ≤ u jr
r

0 ≤ x jm = g

m

− ams ( 0 + θ ) ≤ u jm

xs = 0 + θ ≤ u s

Let

gi = b i −

∑ a ij x j
j∈JB

θ


 gi
= min u s , min 
 1≤ i ≤ m  a is

: a is

Value of the
basic variables
x ji


 u ji − g i
> 0  , min 
 1≤ i ≤ m  − a is



: a is < 0 



For all i such that ais > 0, then x ji decreases
when xs increases of the value θ . It follows
x ji =gi − aisθ ≥ 0 ⇔ aisθ ≤ gi
g
⇔ θ≤ i.
ais
g

Then θ ≤ min  i : ais > 0 
1≤ i ≤ m a
 is

Step 2.1: Selecting the leaving variable
• The increase θ of the entering
variable xs is stop by the first of
the following three situations
happening:
i) xs reach its upper bound us
ii) a basic variable x jr decreases
to 0 (in this case a rs > 0)
iii) a basic variable x jr
increases to reach its upper
bound u jr (in ths case
a rs < 0 )
0 ≤ x j1 = g − a1s ( 0 + θ ) ≤ u j1
1

0 ≤ x jr = g − ars ( 0 + θ ) ≤ u jr
r

0 ≤ x jm = g

m

− ams ( 0 + θ ) ≤ u jm

xs = 0 + θ ≤ u s

Let

gi = b i −

∑ a ij x j
j∈JB

θ


 gi
= min u s , min 
 1≤ i ≤ m  a is

: a is

Value of the
basic variables
x ji


 u ji − g i
> 0  , min 
 1≤ i ≤ m  − a is



: a is < 0 

For all i such that ais < 0, then x ji increses
Si x increases le problème . It follows
when θs = ∞, alors of the value θn’est pas
borné inférieurement isθ ≤ u ji − gi
x ji =gi − aisθ ≤ u ji ⇔ − aet l’algorithme
s’arrête.
u j − gi
⇔ θ≤ i
.
−ais
 u j − gi

Then θ ≤ min  i
: ais < 0 
1≤ i ≤ m
 −ais



Step 2.1: Selecting the leaving variable
• The increase θ of the entering
variable xs is stop by the first of
the following three situations
happening:
i) xs reach its upper bound us
ii) a basic variable x jr decreases
to 0 (in this case a rs > 0)
iii) a basic variable x jr
increases to reach its upper
bound u jr (in ths case
a rs < 0 )
0 ≤ x j1 = g − a1s ( 0 + θ ) ≤ u j1
1

0 ≤ x jr = g − ars ( 0 + θ ) ≤ u jr
r

0 ≤ x jm = g

m

− ams ( 0 + θ ) ≤ u jm

xs = 0 + θ ≤ u s

Let

gi = b i −

∑ a ij x j
j∈JB

θ


 gi
= min u s , min 
 1≤ i ≤ m  a is

: a is

Value of the
basic variables
x ji


 u ji − g i
> 0  , min 
 1≤ i ≤ m  − a is

If θ = ∞, then the problem is not
bounded from below, and the
algorithm stops.



: a is < 0 


Step 2.1: Selecting the leaving variable
• The increase θ of the entering
variable xs is stop by the first of
the following three situations
happening:
i) xs reach its upper bound us
ii) a basic variable x jr decreases
to 0 (in this case a rs > 0)
iii) a basic variable x jr
increases to reach its upper
bound u jr (in ths case
a rs < 0 )

Let

gi = b i −

∑ a ij x j
j∈JB

θ


 gi
= min u s , min 
 1≤ i ≤ m  a is

: a is

Value of the
basic variables
x ji


 u ji − g i
> 0  , min 
 1≤ i ≤ m  − a is

If x s = u s , then the set of basic variables
is not modified, and the same basis is

0 ≤ x j1 = g − a1s ( 0 + θ ) ≤ u j1

used at the next iteration.

0 ≤ x jr = g − ars ( 0 + θ ) ≤ u jr

the variable x s remains non basic

1

r

0 ≤ x jm = g

m

− ams ( 0 + θ ) ≤ u jm

xs = 0 + θ ≤ u s

but its value is modified from 0 to u s .
Go to step 1.



: a is < 0 


Step 2.1: Selecting the leaving variable
• The increase θ of the entering
variable xs is stop by the first of
the following three situations
happening:
i) xs reach its upper bound us
ii) a basic variable x jr decreases
to 0 (in this case a rs > 0)
iii) a basic variable x jr
increases to reach its upper
bound u jr (in ths case
a rs < 0 )
0 ≤ x j1 = g − a1s ( 0 + θ ) ≤ u j1
1

0 ≤ x jr = g − ars ( 0 + θ ) ≤ u jr
r

0 ≤ x jm = g

m

− ams ( 0 + θ ) ≤ u jm

xs = 0 + θ ≤ u s

Let

gi = b i −

∑ a ij x j
j∈JB

θ


 gi
= min u s , min 
 1≤ i ≤ m  a is

: a is

Value of the
basic variables
x ji


 u ji − g i
> 0  , min 
 1≤ i ≤ m  − a is

g

= min  i : a is > 0  ,
a rs 1≤i ≤ m  a is

then the value on the entretring variable x s

If θ =

gr

increases to θ .
The entering variable x s becomes a basic
variable replacing the leaving variable x jr
becoming a non basic variable equal to 0
Pivot on a jr s , and go to step 1.



: a is < 0 


Step 2.1: Selecting the leaving variable
• The increase θ of the entering
variable xs is stop by the first of
the following three situations
happening:
i) xs reach its upper bound us
ii) a basic variable x jr decreases
to 0 (in this case a rs > 0)
iii) a basic variable x jr
increases to reach its upper
bound u jr (in ths case
a rs < 0 )
0 ≤ x j1 = g − a1s ( 0 + θ ) ≤ u j1
1

0 ≤ x jr = g − ars ( 0 + θ ) ≤ u jr
r

0 ≤ x jm = g

m

− ams ( 0 + θ ) ≤ u jm

xs = 0 + θ ≤ u s

Let

gi = b i −

∑ a ij x j
j∈JB

θ


 gi
= min u s , min 
 1≤ i ≤ m  a is

: a is

Value of the
basic variables
x ji


 u ji − g i
> 0  , min 
 1≤ i ≤ m  − a is

uj − gi

= min  i
: a is < 0  ,
1≤ i ≤ m
− a rs
 − a is

then the value on the entretring variable x s

If θ =

u jr − g r

increases to θ .
The entering variable x s becomes a basic
variable replacing the leaving variable x jr
becoming a non basic variable equal to u jr
Pivot on a jr s , and go to step 1.



: a is < 0 


Step 1: Selecting the entering variable
The criterion to select the entering variable must be modified to account
for the non basic variables xj being equal to their upper bounds uj since
these variables can be reduced.
Hence, for an index j ∈ JB
if x j = 0 and c j < 0 , it is interesting to increase xj
if x j = u j and c j > 0 , it is interesting to decrease xj

{c
= min { c , −c }

Determine c s1 = min
j∈JB

Let c s

s1

s2

j

}

{

: x j = 0 and c s2 = max c j : x j = u j

(max { c

j∈JB

s1

, c s2

}

})

If c s ≥ 0, then the solution is optimal, and the algoithm stops.
If c s < 0 and c s = c s1 , then the non basic variable xs increases, and go to Step 2.1.
If c s < 0 et c s < c s1 , then the non basic variable xs decreases, and go to Step 2.2.
Step 2.2: Selecting the leaving variable
• The decrease θ of the entering
variable xs is stop by the first of
the following three situations
happening:
i) xs reduces to 0
ii) a basic variable x jr decreases
to 0 (in this case a rs < 0 )
iii) a basic variable x jr
increases to reach its upper
bound u jr (in this case
a rs > 0 )
0 ≤ x j1 = g − a1s ( −θ ) ≤ u j1
1

0 ≤ x jr = g − a rs ( −θ ) ≤ u jr
r

0 ≤ x jm = g

m

− ams ( −θ ) ≤ u jm

xs = us − θ ≥ 0

Let

gi = b i −

∑ a ij x j
j∈JB

θ


 g
= min  u s , min  i
 1≤i ≤ m  − a is

: a is

Value of the
basic variables
x ji

 u ji − g i

< 0  , min 
 1≤i ≤ m  a is



: a is > 0 



For all i such that ais < 0, then x ji decreases
when xs decreases of the value θ . It follows
x ji =gi − ais ( −θ ) ≥ 0 ⇔ − aisθ ≤ gi
g
⇔ θ≤ i .
− ais
 g

Then θ ≤ min  i : ais < 0 
1≤ i ≤ m − a
 is

Step 2.2: Selecting the leaving variable
• The decrease θ of the entering
variable xs is stop by the first of
the following three situations
happening:
i) xs reduces to 0
ii) a basic variable x jr decreases
to 0 (in this case a rs < 0 )
iii) a basic variable x jr
increases to reach its upper
bound u jr (in ths case
a rs > 0 )
0 ≤ x j1 = g − a1s ( −θ ) ≤ u j1
1

0 ≤ x jr = g − a rs ( −θ ) ≤ u jr
r

0 ≤ x jm = g

m

− ams ( −θ ) ≤ u jm

xs = us − θ ≥ 0

Let

gi = b i −

∑ a ij x j
j∈JB

θ


 g
= min  u s , min  i
 1≤i ≤ m  − a is

: a is

Value of the
basic variables
x ji

 u ji − g i

< 0  , min 
 1≤i ≤ m  a is



: a is > 0 

For all i such that ais > 0, then x ji increases
when xs decreasess of the value θ . It follows
x ji =gi − ais ( −θ ) ≤ u ji ⇔ aisθ ≤ u ji − gi
u ji − gi
⇔ θ≤
.
ais
 u ji − gi

Then θ ≤ min 
: ais > 0 
1≤ i ≤ m
 ais



Step 2.2: Selecting the leaving variable
• The decrease θ of the entering
variable xs is stop by the first of
the following three situations
happening:
θ
i) xs reduces to 0
ii) a basic variable x jr decreases
to 0 (in this case a rs < 0 )
iii) a basic variable x jr
increases to reach its upper
bound u jr (in ths case
a rs > 0 )

Let

gi = b i −

∑ a ij x j
j∈JB


 g
= min  u s , min  i
 1≤i ≤ m  − a is

: a is

Value of the
basic variables
x ji

 u ji − g i

< 0  , min 
 1≤i ≤ m  a is

If θ = u s , then the set of basic variables
is not modified, and the same basis is

0 ≤ x j1 = g − a1s ( −θ ) ≤ u j1

used at the next iteration.

0 ≤ x jr = g − a rs ( −θ ) ≤ u jr

the variable x s remains non basic

1

r

0 ≤ x jm = g

m

− ams ( −θ ) ≤ u jm

xs = us − θ ≥ 0

but its value is modified from u s to 0.
Go to step 1.



: a is > 0 


Step 2.2: Selecting the leaving variable
• The decrease θ of the entering
variable xs is stop by the first of
the following three situations
happening:
θ
i) xs reduces to 0
ii) a basic variable x jr decreases
to 0 (in this case a rs < 0 )
iii) a basic variable x jr
increases to reach its upper
bound u jr (in ths case
a rs > 0 )
0 ≤ x j1 = g − a1s ( −θ ) ≤ u j1
1

0 ≤ x jr = g − a rs ( −θ ) ≤ u jr
r

0 ≤ x jm = g

m

− ams ( −θ ) ≤ u jm

xs = us − θ ≥ 0

Let

gi = b i −

∑ a ij x j
j∈JB


 g
= min  u s , min  i
 1≤i ≤ m  − a is

: a is

Value of the
basic variables
x ji

 u ji − g i

< 0  , min 
 1≤i ≤ m  a is

 g

= min  i : a is < 0  ,
− a rs 1≤i ≤ m  − a is

then the value on the entretring variable x s

If θ =

gr

is reduced by θ (i.e., x s ← u s − θ ).
The entering variable x s becomes a basic
variable replacing the leaving variable x jr
becoming a non basic variable equal to 0
Pivot on a jr s , and go to step 1.



: a is > 0 


Step 2.2: Selecting the leaving variable
• The decrease θ of the entering
variable xs is stop by the first of
the following three situations
happening:
θ
i) xs reduces to 0
ii) a basic variable x jr decreases
to 0 (in this case a rs < 0 )
iii) a basic variable x jr
increases to reach its upper
bound u jr (in ths case
a rs > 0 )
0 ≤ x j1 = g − a1s ( −θ ) ≤ u j1
1

0 ≤ x jr = g − a rs ( −θ ) ≤ u jr
r

0 ≤ x jm = g

m

− ams ( −θ ) ≤ u jm

xs = us − θ ≥ 0

Let

gi = b i −

∑ a ij x j
j∈JB


 g
= min  u s , min  i
 1≤i ≤ m  − a is

: a is

Value of the
basic variables
x ji

 u ji − g i

< 0  , min 
 1≤i ≤ m  a is

uj − gi

= min  i
: a is > 0  ,
1≤ i ≤ m
a rs
 a is

then the value on the entretring variable x s

If θ =

u jr − g r

is reduced by θ (i.e., x s ← u s − θ ).
The entering variable x s becomes a basic
variable replacing the leaving variable x jr
becoming a non basic variable equal to u jr
Pivot on a jr s , and go to step 1.



: a is > 0 


References
M.S. Bazaraa, J.J. Jarvis, H.D. Sherali, “ Linear Programming and Network
Flows”, 3rd edition, Wiley-Interscience (2005), p. 217
F.S. Hillier, G.J. Lieberman, “Introduction to Operations Research”, Mc Graw
Hill (2005), Section 7.3
D. G. Luenberger, “ Linear and Nonlinear Programming ”, 2nd edition,
Addison-Wesley (1984), Section 3.6

More Related Content

What's hot

SERIES SOLUTION OF ORDINARY DIFFERENTIALL EQUATION
SERIES SOLUTION OF ORDINARY DIFFERENTIALL EQUATIONSERIES SOLUTION OF ORDINARY DIFFERENTIALL EQUATION
SERIES SOLUTION OF ORDINARY DIFFERENTIALL EQUATIONKavin Raval
 
Differential Equations Lecture: Non-Homogeneous Linear Differential Equations
Differential Equations Lecture: Non-Homogeneous Linear Differential EquationsDifferential Equations Lecture: Non-Homogeneous Linear Differential Equations
Differential Equations Lecture: Non-Homogeneous Linear Differential Equationsbullardcr
 
Linear differential equation
Linear differential equationLinear differential equation
Linear differential equationPratik Sudra
 
Differential equations
Differential equationsDifferential equations
Differential equationsCharan Kumar
 
Persamaan Differensial Biasa 2014
Persamaan Differensial Biasa 2014 Persamaan Differensial Biasa 2014
Persamaan Differensial Biasa 2014 Rani Sulvianuri
 
Linear differential equation with constant coefficient
Linear differential equation with constant coefficientLinear differential equation with constant coefficient
Linear differential equation with constant coefficientSanjay Singh
 
First order linear differential equation
First order linear differential equationFirst order linear differential equation
First order linear differential equationNofal Umair
 
Partial Differential Equation - Notes
Partial Differential Equation - NotesPartial Differential Equation - Notes
Partial Differential Equation - NotesDr. Nirav Vyas
 
Simultaneous differential equations
Simultaneous differential equationsSimultaneous differential equations
Simultaneous differential equationsShubhi Jain
 
Higher Differential Equation
Higher Differential Equation Higher Differential Equation
Higher Differential Equation Abdul Hannan
 
Methods of solving ODE
Methods of solving ODEMethods of solving ODE
Methods of solving ODEkishor pokar
 
Exact & non differential equation
Exact & non differential equationExact & non differential equation
Exact & non differential equationSiddhi Shrivas
 
Differential equations of first order
Differential equations of first orderDifferential equations of first order
Differential equations of first orderUzair Saiyed
 
Differential equation and Laplace transform
Differential equation and Laplace transformDifferential equation and Laplace transform
Differential equation and Laplace transformsujathavvv
 
Odepowerpointpresentation1
Odepowerpointpresentation1 Odepowerpointpresentation1
Odepowerpointpresentation1 Pokarn Narkhede
 
First Order Differential Equations
First Order Differential EquationsFirst Order Differential Equations
First Order Differential EquationsItishree Dash
 

What's hot (20)

SERIES SOLUTION OF ORDINARY DIFFERENTIALL EQUATION
SERIES SOLUTION OF ORDINARY DIFFERENTIALL EQUATIONSERIES SOLUTION OF ORDINARY DIFFERENTIALL EQUATION
SERIES SOLUTION OF ORDINARY DIFFERENTIALL EQUATION
 
Differential Equations Lecture: Non-Homogeneous Linear Differential Equations
Differential Equations Lecture: Non-Homogeneous Linear Differential EquationsDifferential Equations Lecture: Non-Homogeneous Linear Differential Equations
Differential Equations Lecture: Non-Homogeneous Linear Differential Equations
 
Linear differential equation
Linear differential equationLinear differential equation
Linear differential equation
 
Ch03 5
Ch03 5Ch03 5
Ch03 5
 
Differential equations
Differential equationsDifferential equations
Differential equations
 
Persamaan Differensial Biasa 2014
Persamaan Differensial Biasa 2014 Persamaan Differensial Biasa 2014
Persamaan Differensial Biasa 2014
 
Ch04 2
Ch04 2Ch04 2
Ch04 2
 
Linear differential equation with constant coefficient
Linear differential equation with constant coefficientLinear differential equation with constant coefficient
Linear differential equation with constant coefficient
 
First order linear differential equation
First order linear differential equationFirst order linear differential equation
First order linear differential equation
 
Partial Differential Equation - Notes
Partial Differential Equation - NotesPartial Differential Equation - Notes
Partial Differential Equation - Notes
 
Simultaneous differential equations
Simultaneous differential equationsSimultaneous differential equations
Simultaneous differential equations
 
First order ordinary differential equations and applications
First order ordinary differential equations and applicationsFirst order ordinary differential equations and applications
First order ordinary differential equations and applications
 
Higher Differential Equation
Higher Differential Equation Higher Differential Equation
Higher Differential Equation
 
Methods of solving ODE
Methods of solving ODEMethods of solving ODE
Methods of solving ODE
 
Exact & non differential equation
Exact & non differential equationExact & non differential equation
Exact & non differential equation
 
Differential equations of first order
Differential equations of first orderDifferential equations of first order
Differential equations of first order
 
Unit1 vrs
Unit1 vrsUnit1 vrs
Unit1 vrs
 
Differential equation and Laplace transform
Differential equation and Laplace transformDifferential equation and Laplace transform
Differential equation and Laplace transform
 
Odepowerpointpresentation1
Odepowerpointpresentation1 Odepowerpointpresentation1
Odepowerpointpresentation1
 
First Order Differential Equations
First Order Differential EquationsFirst Order Differential Equations
First Order Differential Equations
 

Viewers also liked

Transportation+method
Transportation+methodTransportation+method
Transportation+methodvideoaakash15
 
Foreign Exhange Rate
Foreign Exhange RateForeign Exhange Rate
Foreign Exhange RateNikhil Dhiman
 
operation research
operation researchoperation research
operation researchujal70
 
Foreign exchange rate impact (1)
Foreign exchange rate impact (1)Foreign exchange rate impact (1)
Foreign exchange rate impact (1)Mohit Bathineni
 
Gross national product
Gross national productGross national product
Gross national productc43300
 
Introducing macroeconomics
Introducing macroeconomicsIntroducing macroeconomics
Introducing macroeconomicsboxonomics
 
Chapter 1 - basic concepts about macroeconomics for BBA
Chapter 1 - basic concepts about macroeconomics for BBAChapter 1 - basic concepts about macroeconomics for BBA
Chapter 1 - basic concepts about macroeconomics for BBAginish9841502661
 
Macroeconomic
MacroeconomicMacroeconomic
Macroeconomicshivpal
 
The Foreign Exchange Market
The Foreign Exchange MarketThe Foreign Exchange Market
The Foreign Exchange Marketmayank2012
 
Simplex Algorithm
Simplex AlgorithmSimplex Algorithm
Simplex AlgorithmAizaz Ahmad
 
Introduction To Macro Economics
Introduction To Macro EconomicsIntroduction To Macro Economics
Introduction To Macro EconomicsSaurabh Goel
 
Macroeconomics slide
Macroeconomics slideMacroeconomics slide
Macroeconomics slideThao Nguyen
 
Introduction to macroeconomics
Introduction to macroeconomicsIntroduction to macroeconomics
Introduction to macroeconomicsShivam Bindra
 

Viewers also liked (20)

Transportation+method
Transportation+methodTransportation+method
Transportation+method
 
T P
T PT P
T P
 
Foreign Exhange Rate
Foreign Exhange RateForeign Exhange Rate
Foreign Exhange Rate
 
operation research
operation researchoperation research
operation research
 
Foreign exchange rate impact (1)
Foreign exchange rate impact (1)Foreign exchange rate impact (1)
Foreign exchange rate impact (1)
 
Simplex Algorithm
Simplex AlgorithmSimplex Algorithm
Simplex Algorithm
 
Linear programming
Linear programmingLinear programming
Linear programming
 
Gross national product
Gross national productGross national product
Gross national product
 
Supply and Demand
Supply and DemandSupply and Demand
Supply and Demand
 
Introducing macroeconomics
Introducing macroeconomicsIntroducing macroeconomics
Introducing macroeconomics
 
Chapter 1 - basic concepts about macroeconomics for BBA
Chapter 1 - basic concepts about macroeconomics for BBAChapter 1 - basic concepts about macroeconomics for BBA
Chapter 1 - basic concepts about macroeconomics for BBA
 
Macroeconomic
MacroeconomicMacroeconomic
Macroeconomic
 
The Foreign Exchange Market
The Foreign Exchange MarketThe Foreign Exchange Market
The Foreign Exchange Market
 
Foreign Exchange Market
Foreign Exchange MarketForeign Exchange Market
Foreign Exchange Market
 
Simplex Algorithm
Simplex AlgorithmSimplex Algorithm
Simplex Algorithm
 
Introduction To Macro Economics
Introduction To Macro EconomicsIntroduction To Macro Economics
Introduction To Macro Economics
 
Macroeconomics slide
Macroeconomics slideMacroeconomics slide
Macroeconomics slide
 
Quantitative Techniques
Quantitative TechniquesQuantitative Techniques
Quantitative Techniques
 
Demand and supply
Demand and supplyDemand and supply
Demand and supply
 
Introduction to macroeconomics
Introduction to macroeconomicsIntroduction to macroeconomics
Introduction to macroeconomics
 

Similar to Simplex algorithm bounded variables

Heat problems
Heat problemsHeat problems
Heat problemsHo Linh
 
Affine Yield Curves: Flexibility versus Incompleteness
Affine Yield Curves: Flexibility versus IncompletenessAffine Yield Curves: Flexibility versus Incompleteness
Affine Yield Curves: Flexibility versus IncompletenessDhia Eddine Barbouche
 
ISI MSQE Entrance Question Paper (2013)
ISI MSQE Entrance Question Paper (2013)ISI MSQE Entrance Question Paper (2013)
ISI MSQE Entrance Question Paper (2013)CrackDSE
 
curve fitting lecture slides February 24
curve fitting lecture slides February 24curve fitting lecture slides February 24
curve fitting lecture slides February 24TaiwoD
 
ISI MSQE Entrance Question Paper (2008)
ISI MSQE Entrance Question Paper (2008)ISI MSQE Entrance Question Paper (2008)
ISI MSQE Entrance Question Paper (2008)CrackDSE
 
C2 st lecture 4 handout
C2 st lecture 4 handoutC2 st lecture 4 handout
C2 st lecture 4 handoutfatima d
 
Basic concepts of curve fittings
Basic concepts of curve fittingsBasic concepts of curve fittings
Basic concepts of curve fittingsTarun Gehlot
 
AlgoPerm2012 - 03 Olivier Hudry
AlgoPerm2012 - 03 Olivier HudryAlgoPerm2012 - 03 Olivier Hudry
AlgoPerm2012 - 03 Olivier HudryAlgoPerm 2012
 
Lecture 2: linear SVM in the dual
Lecture 2: linear SVM in the dualLecture 2: linear SVM in the dual
Lecture 2: linear SVM in the dualStéphane Canu
 
Lecture 2: linear SVM in the Dual
Lecture 2: linear SVM in the DualLecture 2: linear SVM in the Dual
Lecture 2: linear SVM in the DualStéphane Canu
 
Principal Component Analysis
Principal Component AnalysisPrincipal Component Analysis
Principal Component AnalysisSumit Singh
 
C2 st lecture 2 handout
C2 st lecture 2 handoutC2 st lecture 2 handout
C2 st lecture 2 handoutfatima d
 
conference_poster_5_UCSB
conference_poster_5_UCSBconference_poster_5_UCSB
conference_poster_5_UCSBXining Li
 

Similar to Simplex algorithm bounded variables (20)

Statistical Method In Economics
Statistical Method In EconomicsStatistical Method In Economics
Statistical Method In Economics
 
Heat problems
Heat problemsHeat problems
Heat problems
 
2º mat emática
2º mat emática2º mat emática
2º mat emática
 
Affine Yield Curves: Flexibility versus Incompleteness
Affine Yield Curves: Flexibility versus IncompletenessAffine Yield Curves: Flexibility versus Incompleteness
Affine Yield Curves: Flexibility versus Incompleteness
 
ISI MSQE Entrance Question Paper (2013)
ISI MSQE Entrance Question Paper (2013)ISI MSQE Entrance Question Paper (2013)
ISI MSQE Entrance Question Paper (2013)
 
curve fitting lecture slides February 24
curve fitting lecture slides February 24curve fitting lecture slides February 24
curve fitting lecture slides February 24
 
ISI MSQE Entrance Question Paper (2008)
ISI MSQE Entrance Question Paper (2008)ISI MSQE Entrance Question Paper (2008)
ISI MSQE Entrance Question Paper (2008)
 
C2 st lecture 4 handout
C2 st lecture 4 handoutC2 st lecture 4 handout
C2 st lecture 4 handout
 
Basic concepts of curve fittings
Basic concepts of curve fittingsBasic concepts of curve fittings
Basic concepts of curve fittings
 
PMED Undergraduate Workshop - Mathematical Modeling to Infer Precision Medici...
PMED Undergraduate Workshop - Mathematical Modeling to Infer Precision Medici...PMED Undergraduate Workshop - Mathematical Modeling to Infer Precision Medici...
PMED Undergraduate Workshop - Mathematical Modeling to Infer Precision Medici...
 
Ols
OlsOls
Ols
 
Estimation rs
Estimation rsEstimation rs
Estimation rs
 
AlgoPerm2012 - 03 Olivier Hudry
AlgoPerm2012 - 03 Olivier HudryAlgoPerm2012 - 03 Olivier Hudry
AlgoPerm2012 - 03 Olivier Hudry
 
Interpolation.pptx
Interpolation.pptxInterpolation.pptx
Interpolation.pptx
 
Lecture 2: linear SVM in the dual
Lecture 2: linear SVM in the dualLecture 2: linear SVM in the dual
Lecture 2: linear SVM in the dual
 
Lecture 2: linear SVM in the Dual
Lecture 2: linear SVM in the DualLecture 2: linear SVM in the Dual
Lecture 2: linear SVM in the Dual
 
Principal Component Analysis
Principal Component AnalysisPrincipal Component Analysis
Principal Component Analysis
 
Computer science-formulas
Computer science-formulasComputer science-formulas
Computer science-formulas
 
C2 st lecture 2 handout
C2 st lecture 2 handoutC2 st lecture 2 handout
C2 st lecture 2 handout
 
conference_poster_5_UCSB
conference_poster_5_UCSBconference_poster_5_UCSB
conference_poster_5_UCSB
 

Recently uploaded

My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfngoud9212
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 

Recently uploaded (20)

My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdf
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 

Simplex algorithm bounded variables

  • 2. Simplex method for problems with bounded variables • Consider the linear programming problem with bounded variables min c T g s.t. Ag = h lj ≤ g j ≤ qj j = 1, 2,..., n where g , c, l , q ∈ R n , h ∈ R m , and A is a m × n matrix • Complete the following change of variables to reduce the lower bound to 0 xj = gj – lj (i.e., gj = xj + lj )
  • 3. Simplex method for problems with bounded variables min c T g s.t. Ag = h lj ≤ g j ≤ qj the problem becomes min c T ( x + l ) s.t. A( x + l ) = h lj ≤ xj + lj ≤ qj j = 1, 2,..., n j = 1, 2,..., n where c, x, l , q ∈ R n , h ∈ R m , and A is a m × n matrix • Complete the following change of variables to reduce the lower bound to 0 xj = gj – lj (i.e., gj = xj + lj )
  • 4. Simplex method for problems with bounded variables the problem becomes min c T ( x + l ) s.t. A( x + l ) = h lj ≤ xj + lj ≤ qj j = 1, 2,..., n where c, x, l , q ∈ R n , h ∈ R m , and A is a m × n matrix min c T x + c T l s.t. Ax = h − Al lj − lj ≤ xj + lj − lj ≤ qj − lj replacing : uj = qj – lj and j = 1, 2,..., n b = h – Al min c T x + c T l s.t. Ax = b 0 ≤ xj ≤ uj j = 1, 2,..., n
  • 5. Simplex method for problems with bounded variables • In this problem c T l + min c T x + c T l s.t. Ax = b 0 ≤ xj ≤ uj j = 1, 2,..., n since cTl is a constant, we can eliminate it from the minimisation without modifying the optimal solution. Then in the rest of the presentation we consider the problem without this constant.
  • 6. min c T x + c T l s.t. Ax = b 0 ≤ xj ≤ uj • Consider the explicit formulation of the problem n n min = ∑ c x min z z = ∑jc jjx j j j =1 =1 n s.t. s.t. n x a ∑ ∑xa = b ij j ij j =1 j =1 j i im == i1, 2,...,= 1, 2,..., m i b 0 ≤ x x ≤+ y j = ujj = 1, 2,..., 1, 2,..., n j =n j j uj xj , yj ≥ 0 j = 1, 2,..., n • One way of solving the problem is to introduce slack variables yj, and then use the simplex algorithm. j = 1, 2,..., n
  • 7. n min z = ∑ c j x j Tableau with m + n rows j =1 n s.t. ∑a x = bi i = 1, 2,..., m xj + yj = uj j = 1, 2,..., n xj , yj ≥ 0 ij j = 1, 2,..., n j j =1 n min z = ∑ c j x j Tableau with m rows j =1 n s.t. ∑a x = bi i = 1, 2,..., m 0 ≤ xj ≤ uj j = 1, 2,..., n ij j j =1 account implicitly
  • 8. n min z = ∑ c j x j j =1 n s.t. ∑a x ij j = bi j =1 xj + yj = uj xj , yj ≥ 0 i = 1, 2,..., m Non degeneracy: j = 1, 2,..., n all the basic variables are positive at j = 1, 2,..., n each iteration • Consider a basic feasible solution of this problem • Because of the constraints xj + yj = uj, at least one of the variables xj or yj is basic, j = 1,2,…,n. • Then for all j = 1,2,…,n, one of the three situations holds: a) xj = uj is basic and yj = 0 is non basic b) xj = 0 is non basic and yj = uj is basic c) 0 < xj < uj is basic and 0 < yj < uj is basic
  • 9. a) x j basic; y j non basic b) x j non basic; y j basic c) x j basic; y j basic n min z = ∑c x j j j =1 n Sujet à ∑a = bi i = 1,2,..., m xj + yj =uj j = 1,2,..., n xj , yj ≥0 j = 1,2,..., n ij x j j =1 m + n basic variables required There are n variables yj ⇓ There are at least m variables xj that are basic Exactly m variables xj satisfying 0 < xj < uj. For contradiction, if m0 ≠ m variables xj satisfy the relation, then the m0 corresponding variables yj would be basic. Furthermore, for the n – m0 other indices j, either xj = uj (case a) or yj = uj (case b) would be verified. Then the number of basic variables would be equal to 2m0 + (n – m0) = m0 + n ≠ m + n
  • 10. a) x j basic; y j non basic b) x j non basic; y j basic c) x j basic; y j basic n min z = ∑c x j j j =1 n Sujet à ∑a = bi i = 1,2,..., m xj + yj =uj j = 1,2,..., n xj , yj ≥0 j = 1,2,..., n ij x j j =1 m + n basic variables required There are n variables yj ⇓ There are at least m variables xj that are basic Exactly m variables xj satisfying 0 < xj < uj. For contradiction, if m0 ≠ m variables xj satisfy the relation, then the m0 corresponding variables yj would be basic. Furthermore, for the n – m0 other indices j, either xj = uj (case a) or yj = uj (case b) would be verified. Then the number of basic variables would be equal to 2m0 + (n – m0) = m0 + n ≠ m + n
  • 11. n min z = La base a donc la forme suivante ∑c x j j j =1 n ∑a x s.t. ij = bi j i = 1, 2,..., m j =1 xj + yj = uj xj , yj ≥ 0 j = 1, 2,..., n j = 1, 2,..., n m min z = c T x s.t. Ax + 0 y = b Ix + Iy = u x, y ≥ 0 m  A 0 I I    n To simplify notation, assume the following basic variables: 0 < xi < ui 0 < yi < ui 0 < xj < uj 0 < yj < uj xj=uj yj=uj i = 1,… , m i = 1,…, m xi = ui i = m + 1,… , m + l yi = ui i = m + l + 1,…, m + n
  • 12. n min z = The basis has the following form ∑c x j j j =1 n ∑a x s.t. ij j = bi i = 1, 2,..., m j =1 xj + yj = uj xj , yj ≥ 0 j = 1, 2,..., n j = 1, 2,..., n m min z = c T x Ax + 0 y = b s.t. Ix + Iy = u min z = c x Sujet à Ax + 0 y = b x, y ≥ 0 T Ix + Iy = u x, y ≥ 0 m 1  A 0 I I    1 n 2 To simplify notation, assume the following basic variables: 3 m 0 < yj < uj m xj=uj yj=uj n−m i = 1,…, m 0 < yi < ui 0 < xj < uj 0 < xi < ui i = 1,…, m xi = ui i = m + 1,…, m + l yi = ui i = m + l + 1,… , m + n
  • 13. B 0 D 0   I1 I 1 0 0  Ξ=  0 0 I2 0    0 0 0 I3    B 0 D 0 I  = 1 0 I    0   where the matrix I is n × n    I1      det ( Ξ ) = det ( I ) det ( B ) − det  [0 D 0] I −1  0     0            = det ( I ) det ( B ) − det 0 { ( )} where the matrix 0 is m × m since [0 D 0] is a m × n matrix and  I1  0  is a n × m matrix 0    Then det ( Ξ ) = det ( I ) det ( B ) . Since Ξ is a basis, then det ( Ξ ) ≠ 0. Consequently det ( B ) = det ( Ξ ) ≠ 0 and then B is non singular. Then B is a basis of A.
  • 14. B 0 D 0   I1 I 1 0 0  Ξ=  0 0 I2 0    0 0 0 I3    B 0 D 0 I  = 1 0 I    0   where the matrix I is n × n    I1      det ( Ξ ) = det ( I ) det ( B ) − det  [0 D 0] I −1  0     0            = det ( I ) det ( B ) − det 0 { ( )} where the matrix 0 is m × m since [0 D 0] is a m × n matrix and  I1  0  is a n × m matrix 0    Then det ( Ξ ) = det ( I ) det ( B ) . Since Ξ is a basis, then det ( Ξ ) ≠ 0. Consequently det ( B ) = det ( Ξ ) ≠ 0 and then B is non singular. Then B is a basis of A.
  • 15. B 0 D 0   I1 I 1 0 0  Ξ=  0 0 I2 0    0 0 0 I3    B 0 D 0 I  = 1 0 I    0   a b  = ad − bc det  c d   = d ( a − bd −1c ) where the matrix I is n × n    I1      det ( Ξ ) = det ( I ) det ( B ) − det  [0 D 0] I −1  0     0            = det ( I ) det ( B ) − det 0 { ( )} where the matrix 0 is m × m since [0 D 0] is a m × n matrix and  I1  0  is a n × m matrix 0    Then det ( Ξ ) = det ( I ) det ( B ) . Since Ξ is a basis, then det ( Ξ ) ≠ 0. Consequently det ( B ) = det ( Ξ ) ≠ 0 and then B is non singular. Then B is a basis of A.
  • 16. B 0 D 0   I1 I 1 0 0  Ξ=  0 0 I2 0    0 0 0 I3    B 0 D 0 I  = 1 0 I    0   a b  = ad − bc det  c d   = d ( a − bd −1c ) where the matrix I is n × n    I1      det ( Ξ ) = det ( I ) det ( B ) − det  [0 D 0] I −1  0     0            = det ( I ) det ( B ) − det 0 { ( )} where the matrix 0 is m × m since [0 D 0] is a m × n matrix and  I1  0  is a n × m matrix 0    Then det ( Ξ ) = det ( I ) det ( B ) . Since Ξ is a basis, then det ( Ξ ) ≠ 0. Consequently det ( B ) = det ( Ξ ) ≠ 0 and then B is non singular. Then B is a basis of A.
  • 17. B 0 D 0   I1 I 1 0 0  Ξ=  0 0 I2 0    0 0 0 I3    B 0 D 0 I  = 1 0 I    0   a b  = ad − bc det  c d   = d ( a − bd −1c ) where the matrix I is n × n    I1      det ( Ξ ) = det ( I ) det ( B ) − det  [0 D 0] I −1  0     0            = det ( I ) det ( B ) − det 0 { ( )} where the matrix 0 is m × m since [0 D 0] is a m × n matrix and  I1  0  is a n × m matrix 0    Then det ( Ξ ) = det ( I ) det ( B ) . Since Ξ is a basis, then det ( Ξ ) ≠ 0. Consequently det ( B ) = det ( Ξ ) ≠ 0 and then B is non singular. Then B is a basis of A.
  • 18. B 0 D 0   I1 I 1 0 0  Ξ=  0 0 I2 0    0 0 0 I3    B 0 D 0 I  = 1 0 I    0   a b  = ad − bc det  c d   = d ( a − bd −1c ) where the matrix I is n × n    I1      det ( Ξ ) = det ( I ) det ( B ) − det  [0 D 0] I −1  0     0            = det ( I ) det ( B ) − det 0 { ( )} where the matrix 0 is m × m since [0 D 0] is a m × n matrix and  I1  0  is a n × m matrix 0    Then det ( Ξ ) = det ( I ) det ( B ) . Since Ξ is a basis, then det ( Ξ ) ≠ 0. Consequently det ( B ) = det ( Ξ ) ≠ 0 and then B is non singular. Then B is a basis of A.
  • 19. B 0 D 0   I1 I 1 0 0  Ξ=  0 0 I2 0    0 0 0 I3    B 0 D 0 I  = 1 0 I    0   a b  = ad − bc det  c d   = d ( a − bd −1c ) where the matrix I is n × n    I1      det ( Ξ ) = det ( I ) det ( B ) − det  [0 D 0] I −1  0     0            = det ( I ) det ( B ) − det 0 { ( )} where the matrix 0 is m × m since [0 D 0] is a m × n matrix and  I1  0  is a n × m matrix 0    Then det ( Ξ ) = det ( I ) det ( B ) . Since Ξ is a basis, then det ( Ξ ) ≠ 0. Consequently det ( B ) = det ( Ξ ) ≠ 0 and then B is non singular. Then B is a basis of A.
  • 20. The basis has the following form m Basis of A 1 The columns of the basis B of A are those of the variables 0<xj<uj 1 n 2 3 0 < xj < uj 0 < yj < uj xj=uj yj=uj
  • 21. • Then, we can specify a variant of the simplex method to solve this problem specifically: n min z = ∑ c j x j j =1 n s.t. ∑a x = bi i = 1, 2,..., m 0 ≤ xj ≤ uj j = 1, 2,..., n ij j j =1 by dealing implictly with the upper bound uj. At each iteration, we consider a solution (basic) associated with a basis B de A having m basic variables 0 < xj < uj j ∈ IB n – m non basic variables x j = 0 ou u j j ∈ JB
  • 22. n min z = ∑c x j j j =1 n s.t. ∑a x ij j = bi i = 1, 2,..., m j =1 xj + yj = uj xj , yj ≥ 0 j = 1, 2,..., n j = 1, 2,..., n • At each iteration, we consider a solution (basic) associated with a basis B de A having 0 < xj < uj j ∈ IB m basic variables n – m non basic variables x j = 0 or u j j ∈ JB • Denote the indices of the basic variables IB = {j1, j2, …, jm} where ji is the index of the basic variable in the ith row, then x j = 0 ou u j j ∈ JB ∑∑ i = 1, m x ji =xbii = b i − a ij x a ij x j i = 1,2,...,2,..., m j − j j∈JB j∈JB Dependent variables r.h.s. We find similar values as in problems where there are no upper bounds, except for non basic variables x j = 0 or u j j ∈ JB
  • 23. We find similar values as in problems where there are no upper bounds, except for non basic variables x j = 0 or u j j ∈ JB We have to modify the entering criterion and the leaving criterion accordingly to generate a variant of the simplex algorithm for this problem
  • 24. Step 1: Selecting the entering variable The criterion to select the entering variable must be modified to account for the non basic variables xj being equal to their upper bounds uj since these variables can be reduced. Hence, for an index j ∈ JB if x j = 0 and c j < 0 , it is interesting to increase xj if x j = u j and c j > 0 , it is interesting to decrease xj {c = min { c , −c } Determine c s1 = min j∈JB Let c s s1 s2 j } { : x j = 0 and c s2 = max c j : x j = u j (max { c j∈JB s1 , c s2 } }) If c s ≥ 0, then the solution is optimal, and the algoithm stops. If c s < 0 and c s = c s1 , then the non basic variable xs increases, and go to Step 2.1. If c s < 0 et c s < c s1 , then the non basic variable xs decreases, and go to Step 2.2.
  • 25. Step 2.1: Selecting the leaving variable • The increase θ of the entering variable xs is stop by the first of the following three situations happening: i) xs reach its upper bound us ii) a basic variable x jr decreases to 0 (in this case a rs > 0) iii) a basic variable x jr increases to reach its upper bound u jr (in ths case a rs < 0 ) 0 ≤ x j1 = g − a1s ( 0 + θ ) ≤ u j1 1 0 ≤ x jr = g − ars ( 0 + θ ) ≤ u jr r 0 ≤ x jm = g m − ams ( 0 + θ ) ≤ u jm xs = 0 + θ ≤ u s Let gi = b i − ∑ a ij x j j∈JB θ   gi = min u s , min   1≤ i ≤ m  a is : a is Value of the basic variables x ji   u ji − g i > 0  , min   1≤ i ≤ m  − a is  : a is < 0   For all i such that ais > 0, then x ji decreases when xs increases of the value θ . It follows x ji =gi − aisθ ≥ 0 ⇔ aisθ ≤ gi g ⇔ θ≤ i. ais g  Then θ ≤ min  i : ais > 0  1≤ i ≤ m a  is 
  • 26. Step 2.1: Selecting the leaving variable • The increase θ of the entering variable xs is stop by the first of the following three situations happening: i) xs reach its upper bound us ii) a basic variable x jr decreases to 0 (in this case a rs > 0) iii) a basic variable x jr increases to reach its upper bound u jr (in ths case a rs < 0 ) 0 ≤ x j1 = g − a1s ( 0 + θ ) ≤ u j1 1 0 ≤ x jr = g − ars ( 0 + θ ) ≤ u jr r 0 ≤ x jm = g m − ams ( 0 + θ ) ≤ u jm xs = 0 + θ ≤ u s Let gi = b i − ∑ a ij x j j∈JB θ   gi = min u s , min   1≤ i ≤ m  a is : a is Value of the basic variables x ji   u ji − g i > 0  , min   1≤ i ≤ m  − a is  : a is < 0  For all i such that ais < 0, then x ji increses Si x increases le problème . It follows when θs = ∞, alors of the value θn’est pas borné inférieurement isθ ≤ u ji − gi x ji =gi − aisθ ≤ u ji ⇔ − aet l’algorithme s’arrête. u j − gi ⇔ θ≤ i . −ais  u j − gi  Then θ ≤ min  i : ais < 0  1≤ i ≤ m  −ais  
  • 27. Step 2.1: Selecting the leaving variable • The increase θ of the entering variable xs is stop by the first of the following three situations happening: i) xs reach its upper bound us ii) a basic variable x jr decreases to 0 (in this case a rs > 0) iii) a basic variable x jr increases to reach its upper bound u jr (in ths case a rs < 0 ) 0 ≤ x j1 = g − a1s ( 0 + θ ) ≤ u j1 1 0 ≤ x jr = g − ars ( 0 + θ ) ≤ u jr r 0 ≤ x jm = g m − ams ( 0 + θ ) ≤ u jm xs = 0 + θ ≤ u s Let gi = b i − ∑ a ij x j j∈JB θ   gi = min u s , min   1≤ i ≤ m  a is : a is Value of the basic variables x ji   u ji − g i > 0  , min   1≤ i ≤ m  − a is If θ = ∞, then the problem is not bounded from below, and the algorithm stops.  : a is < 0  
  • 28. Step 2.1: Selecting the leaving variable • The increase θ of the entering variable xs is stop by the first of the following three situations happening: i) xs reach its upper bound us ii) a basic variable x jr decreases to 0 (in this case a rs > 0) iii) a basic variable x jr increases to reach its upper bound u jr (in ths case a rs < 0 ) Let gi = b i − ∑ a ij x j j∈JB θ   gi = min u s , min   1≤ i ≤ m  a is : a is Value of the basic variables x ji   u ji − g i > 0  , min   1≤ i ≤ m  − a is If x s = u s , then the set of basic variables is not modified, and the same basis is 0 ≤ x j1 = g − a1s ( 0 + θ ) ≤ u j1 used at the next iteration. 0 ≤ x jr = g − ars ( 0 + θ ) ≤ u jr the variable x s remains non basic 1 r 0 ≤ x jm = g m − ams ( 0 + θ ) ≤ u jm xs = 0 + θ ≤ u s but its value is modified from 0 to u s . Go to step 1.  : a is < 0  
  • 29. Step 2.1: Selecting the leaving variable • The increase θ of the entering variable xs is stop by the first of the following three situations happening: i) xs reach its upper bound us ii) a basic variable x jr decreases to 0 (in this case a rs > 0) iii) a basic variable x jr increases to reach its upper bound u jr (in ths case a rs < 0 ) 0 ≤ x j1 = g − a1s ( 0 + θ ) ≤ u j1 1 0 ≤ x jr = g − ars ( 0 + θ ) ≤ u jr r 0 ≤ x jm = g m − ams ( 0 + θ ) ≤ u jm xs = 0 + θ ≤ u s Let gi = b i − ∑ a ij x j j∈JB θ   gi = min u s , min   1≤ i ≤ m  a is : a is Value of the basic variables x ji   u ji − g i > 0  , min   1≤ i ≤ m  − a is g  = min  i : a is > 0  , a rs 1≤i ≤ m  a is  then the value on the entretring variable x s If θ = gr increases to θ . The entering variable x s becomes a basic variable replacing the leaving variable x jr becoming a non basic variable equal to 0 Pivot on a jr s , and go to step 1.  : a is < 0  
  • 30. Step 2.1: Selecting the leaving variable • The increase θ of the entering variable xs is stop by the first of the following three situations happening: i) xs reach its upper bound us ii) a basic variable x jr decreases to 0 (in this case a rs > 0) iii) a basic variable x jr increases to reach its upper bound u jr (in ths case a rs < 0 ) 0 ≤ x j1 = g − a1s ( 0 + θ ) ≤ u j1 1 0 ≤ x jr = g − ars ( 0 + θ ) ≤ u jr r 0 ≤ x jm = g m − ams ( 0 + θ ) ≤ u jm xs = 0 + θ ≤ u s Let gi = b i − ∑ a ij x j j∈JB θ   gi = min u s , min   1≤ i ≤ m  a is : a is Value of the basic variables x ji   u ji − g i > 0  , min   1≤ i ≤ m  − a is uj − gi  = min  i : a is < 0  , 1≤ i ≤ m − a rs  − a is  then the value on the entretring variable x s If θ = u jr − g r increases to θ . The entering variable x s becomes a basic variable replacing the leaving variable x jr becoming a non basic variable equal to u jr Pivot on a jr s , and go to step 1.  : a is < 0  
  • 31. Step 1: Selecting the entering variable The criterion to select the entering variable must be modified to account for the non basic variables xj being equal to their upper bounds uj since these variables can be reduced. Hence, for an index j ∈ JB if x j = 0 and c j < 0 , it is interesting to increase xj if x j = u j and c j > 0 , it is interesting to decrease xj {c = min { c , −c } Determine c s1 = min j∈JB Let c s s1 s2 j } { : x j = 0 and c s2 = max c j : x j = u j (max { c j∈JB s1 , c s2 } }) If c s ≥ 0, then the solution is optimal, and the algoithm stops. If c s < 0 and c s = c s1 , then the non basic variable xs increases, and go to Step 2.1. If c s < 0 et c s < c s1 , then the non basic variable xs decreases, and go to Step 2.2.
  • 32. Step 2.2: Selecting the leaving variable • The decrease θ of the entering variable xs is stop by the first of the following three situations happening: i) xs reduces to 0 ii) a basic variable x jr decreases to 0 (in this case a rs < 0 ) iii) a basic variable x jr increases to reach its upper bound u jr (in this case a rs > 0 ) 0 ≤ x j1 = g − a1s ( −θ ) ≤ u j1 1 0 ≤ x jr = g − a rs ( −θ ) ≤ u jr r 0 ≤ x jm = g m − ams ( −θ ) ≤ u jm xs = us − θ ≥ 0 Let gi = b i − ∑ a ij x j j∈JB θ   g = min  u s , min  i  1≤i ≤ m  − a is : a is Value of the basic variables x ji  u ji − g i  < 0  , min   1≤i ≤ m  a is  : a is > 0   For all i such that ais < 0, then x ji decreases when xs decreases of the value θ . It follows x ji =gi − ais ( −θ ) ≥ 0 ⇔ − aisθ ≤ gi g ⇔ θ≤ i . − ais  g  Then θ ≤ min  i : ais < 0  1≤ i ≤ m − a  is 
  • 33. Step 2.2: Selecting the leaving variable • The decrease θ of the entering variable xs is stop by the first of the following three situations happening: i) xs reduces to 0 ii) a basic variable x jr decreases to 0 (in this case a rs < 0 ) iii) a basic variable x jr increases to reach its upper bound u jr (in ths case a rs > 0 ) 0 ≤ x j1 = g − a1s ( −θ ) ≤ u j1 1 0 ≤ x jr = g − a rs ( −θ ) ≤ u jr r 0 ≤ x jm = g m − ams ( −θ ) ≤ u jm xs = us − θ ≥ 0 Let gi = b i − ∑ a ij x j j∈JB θ   g = min  u s , min  i  1≤i ≤ m  − a is : a is Value of the basic variables x ji  u ji − g i  < 0  , min   1≤i ≤ m  a is  : a is > 0  For all i such that ais > 0, then x ji increases when xs decreasess of the value θ . It follows x ji =gi − ais ( −θ ) ≤ u ji ⇔ aisθ ≤ u ji − gi u ji − gi ⇔ θ≤ . ais  u ji − gi  Then θ ≤ min  : ais > 0  1≤ i ≤ m  ais  
  • 34. Step 2.2: Selecting the leaving variable • The decrease θ of the entering variable xs is stop by the first of the following three situations happening: θ i) xs reduces to 0 ii) a basic variable x jr decreases to 0 (in this case a rs < 0 ) iii) a basic variable x jr increases to reach its upper bound u jr (in ths case a rs > 0 ) Let gi = b i − ∑ a ij x j j∈JB   g = min  u s , min  i  1≤i ≤ m  − a is : a is Value of the basic variables x ji  u ji − g i  < 0  , min   1≤i ≤ m  a is If θ = u s , then the set of basic variables is not modified, and the same basis is 0 ≤ x j1 = g − a1s ( −θ ) ≤ u j1 used at the next iteration. 0 ≤ x jr = g − a rs ( −θ ) ≤ u jr the variable x s remains non basic 1 r 0 ≤ x jm = g m − ams ( −θ ) ≤ u jm xs = us − θ ≥ 0 but its value is modified from u s to 0. Go to step 1.  : a is > 0  
  • 35. Step 2.2: Selecting the leaving variable • The decrease θ of the entering variable xs is stop by the first of the following three situations happening: θ i) xs reduces to 0 ii) a basic variable x jr decreases to 0 (in this case a rs < 0 ) iii) a basic variable x jr increases to reach its upper bound u jr (in ths case a rs > 0 ) 0 ≤ x j1 = g − a1s ( −θ ) ≤ u j1 1 0 ≤ x jr = g − a rs ( −θ ) ≤ u jr r 0 ≤ x jm = g m − ams ( −θ ) ≤ u jm xs = us − θ ≥ 0 Let gi = b i − ∑ a ij x j j∈JB   g = min  u s , min  i  1≤i ≤ m  − a is : a is Value of the basic variables x ji  u ji − g i  < 0  , min   1≤i ≤ m  a is  g  = min  i : a is < 0  , − a rs 1≤i ≤ m  − a is  then the value on the entretring variable x s If θ = gr is reduced by θ (i.e., x s ← u s − θ ). The entering variable x s becomes a basic variable replacing the leaving variable x jr becoming a non basic variable equal to 0 Pivot on a jr s , and go to step 1.  : a is > 0  
  • 36. Step 2.2: Selecting the leaving variable • The decrease θ of the entering variable xs is stop by the first of the following three situations happening: θ i) xs reduces to 0 ii) a basic variable x jr decreases to 0 (in this case a rs < 0 ) iii) a basic variable x jr increases to reach its upper bound u jr (in ths case a rs > 0 ) 0 ≤ x j1 = g − a1s ( −θ ) ≤ u j1 1 0 ≤ x jr = g − a rs ( −θ ) ≤ u jr r 0 ≤ x jm = g m − ams ( −θ ) ≤ u jm xs = us − θ ≥ 0 Let gi = b i − ∑ a ij x j j∈JB   g = min  u s , min  i  1≤i ≤ m  − a is : a is Value of the basic variables x ji  u ji − g i  < 0  , min   1≤i ≤ m  a is uj − gi  = min  i : a is > 0  , 1≤ i ≤ m a rs  a is  then the value on the entretring variable x s If θ = u jr − g r is reduced by θ (i.e., x s ← u s − θ ). The entering variable x s becomes a basic variable replacing the leaving variable x jr becoming a non basic variable equal to u jr Pivot on a jr s , and go to step 1.  : a is > 0  
  • 37. References M.S. Bazaraa, J.J. Jarvis, H.D. Sherali, “ Linear Programming and Network Flows”, 3rd edition, Wiley-Interscience (2005), p. 217 F.S. Hillier, G.J. Lieberman, “Introduction to Operations Research”, Mc Graw Hill (2005), Section 7.3 D. G. Luenberger, “ Linear and Nonlinear Programming ”, 2nd edition, Addison-Wesley (1984), Section 3.6