Find solution using integer simplex method (Gomory's cutting plane method)
MAX Z = -3x1 + x2 + 3x3
subject to
-x1 + 2x2 + x3 <= 4
2x2 - 3/2x3 <= 1
x1 - 3x2 + 2x3 <= 3
and x1,x2 >= 0; x3 non-negative integersSolution:Problem is | Max `Z` | `=` | ` - ` | `3` | `x_1` | ` + ` | `` | `x_2` | ` + ` | `3` | `x_3` |
|
| subject to |
| ` - ` | `` | `x_1` | ` + ` | `2` | `x_2` | ` + ` | `` | `x_3` | ≤ | `4` | | | | `` | `2` | `x_2` | ` - ` | `1.5` | `x_3` | ≤ | `1` | | `` | `` | `x_1` | ` - ` | `3` | `x_2` | ` + ` | `2` | `x_3` | ≤ | `3` |
|
| and `x_1,x_2,x_3 >= 0; ``x_3` non-negative integers |
The problem is converted to canonical form by adding slack, surplus and artificial variables as appropiate
1. As the constraint-1 is of type '`<=`' we should add slack variable `S_1`
2. As the constraint-2 is of type '`<=`' we should add slack variable `S_2`
3. As the constraint-3 is of type '`<=`' we should add slack variable `S_3`
After introducing slack variables| Max `Z` | `=` | ` - ` | `3` | `x_1` | ` + ` | `` | `x_2` | ` + ` | `3` | `x_3` | ` + ` | `0` | `S_1` | ` + ` | `0` | `S_2` | ` + ` | `0` | `S_3` |
|
| subject to |
| ` - ` | `` | `x_1` | ` + ` | `2` | `x_2` | ` + ` | `` | `x_3` | ` + ` | `` | `S_1` | | | | | | | = | `4` | | | | `` | `2` | `x_2` | ` - ` | `1.5` | `x_3` | | | | ` + ` | `` | `S_2` | | | | = | `1` | | `` | `` | `x_1` | ` - ` | `3` | `x_2` | ` + ` | `2` | `x_3` | | | | | | | ` + ` | `` | `S_3` | = | `3` |
|
| and `x_1,x_2,x_3,S_1,S_2,S_3 >= 0` |
| Tableau-1 | `C_j` | `-3` | `1` | `3` | `0` | `0` | `0` | | |
| `C_B` | `"Basis"` | `x_1` | `x_2` | `x_3` | `S_1` | `S_2` | `S_3` | `RHS` | `"Ratio"=(RHS)/(x_3)` |
| `R_1` `0` | `S_1` | `-1` | `2` | `1` | `1` | `0` | `0` | `4` | `(4)/(1)=4` |
| `R_2` `0` | `S_2` | `0` | `2` | `-1.5` | `0` | `1` | `0` | `1` | `(1)/(-1.5)` (ignore, denominator is -ve) |
| `R_3` `0` | `S_3` | `1` | `-3` | `(2)` | `0` | `0` | `1` | `3` | `(3)/(2)=1.5``->` |
| | `Z_j` | `0` | `0` | `0` | `0` | `0` | `0` | `Z=0` | |
| | `Z_j-C_j` | `3` | `-1` | `-3``uarr` | `0` | `0` | `0` | | |
Most Negative `Z_j-C_j` is `-3`. So,
the entering variable is `x_3`.
Minimum ratio is `1.5`. So,
the leaving basis variable is `S_3`.
`:.`
The pivot element is `2`.
Entering `=x_3`, Departing `=S_3`, Key Element `=2`
`R_3`(new)`= R_3`(old) `-: 2`
| `x_1` | `x_2` | `x_3` | `S_1` | `S_2` | `S_3` | `RHS` |
| `R_3`(old) = | `1` | `-3` | `2` | `0` | `0` | `1` | `3` |
| `R_3`(new)`= R_3`(old) `-: 2` | `0.5` | `-1.5` | `1` | `0` | `0` | `0.5` | `1.5` |
`R_1`(new)`= R_1`(old) - `R_3`(new)
| `x_1` | `x_2` | `x_3` | `S_1` | `S_2` | `S_3` | `RHS` |
| `R_1`(old) = | `-1` | `2` | `1` | `1` | `0` | `0` | `4` |
| `R_3`(new) = | `0.5` | `-1.5` | `1` | `0` | `0` | `0.5` | `1.5` |
| `R_1`(new)`= R_1`(old) - `R_3`(new) | `-1.5` | `3.5` | `0` | `1` | `0` | `-0.5` | `2.5` |
`R_2`(new)`= R_2`(old) + `1.5 R_3`(new)
| `x_1` | `x_2` | `x_3` | `S_1` | `S_2` | `S_3` | `RHS` |
| `R_2`(old) = | `0` | `2` | `-1.5` | `0` | `1` | `0` | `1` |
| `R_3`(new) = | `0.5` | `-1.5` | `1` | `0` | `0` | `0.5` | `1.5` |
| `1.5 xx R_3`(new) = | `0.75` | `-2.25` | `1.5` | `0` | `0` | `0.75` | `2.25` |
| `R_2`(new)`= R_2`(old) + `1.5 R_3`(new) | `0.75` | `-0.25` | `0` | `0` | `1` | `0.75` | `3.25` |
| Tableau-2 | `C_j` | `-3` | `1` | `3` | `0` | `0` | `0` | | |
| `C_B` | `"Basis"` | `x_1` | `x_2` | `x_3` | `S_1` | `S_2` | `S_3` | `RHS` | `"Ratio"=(RHS)/(x_2)` |
| `R_1` `0` | `S_1` | `-1.5` | `(3.5)` | `0` | `1` | `0` | `-0.5` | `2.5` | `(2.5)/(3.5)=0.7143``->` |
| `R_2` `0` | `S_2` | `0.75` | `-0.25` | `0` | `0` | `1` | `0.75` | `3.25` | `(3.25)/(-0.25)` (ignore, denominator is -ve) |
| `R_3` `3` | `x_3` | `0.5` | `-1.5` | `1` | `0` | `0` | `0.5` | `1.5` | `(1.5)/(-1.5)` (ignore, denominator is -ve) |
| | `Z_j` | `1.5` | `-4.5` | `3` | `0` | `0` | `1.5` | `Z=4.5` | |
| | `Z_j-C_j` | `4.5` | `-5.5``uarr` | `0` | `0` | `0` | `1.5` | | |
Most Negative `Z_j-C_j` is `-5.5`. So,
the entering variable is `x_2`.
Minimum ratio is `0.7143`. So,
the leaving basis variable is `S_1`.
`:.`
The pivot element is `3.5`.
Entering `=x_2`, Departing `=S_1`, Key Element `=3.5`
`R_1`(new)`= R_1`(old) `-: 3.5`
| `x_1` | `x_2` | `x_3` | `S_1` | `S_2` | `S_3` | `RHS` |
| `R_1`(old) = | `-1.5` | `3.5` | `0` | `1` | `0` | `-0.5` | `2.5` |
| `R_1`(new)`= R_1`(old) `-: 3.5` | `-0.4286` | `1` | `0` | `0.2857` | `0` | `-0.1429` | `0.7143` |
`R_2`(new)`= R_2`(old) + `0.25 R_1`(new)
| `x_1` | `x_2` | `x_3` | `S_1` | `S_2` | `S_3` | `RHS` |
| `R_2`(old) = | `0.75` | `-0.25` | `0` | `0` | `1` | `0.75` | `3.25` |
| `R_1`(new) = | `-0.4286` | `1` | `0` | `0.2857` | `0` | `-0.1429` | `0.7143` |
| `0.25 xx R_1`(new) = | `-0.1071` | `0.25` | `0` | `0.0714` | `0` | `-0.0357` | `0.1786` |
| `R_2`(new)`= R_2`(old) + `0.25 R_1`(new) | `0.6429` | `0` | `0` | `0.0714` | `1` | `0.7143` | `3.4286` |
`R_3`(new)`= R_3`(old) + `1.5 R_1`(new)
| `x_1` | `x_2` | `x_3` | `S_1` | `S_2` | `S_3` | `RHS` |
| `R_3`(old) = | `0.5` | `-1.5` | `1` | `0` | `0` | `0.5` | `1.5` |
| `R_1`(new) = | `-0.4286` | `1` | `0` | `0.2857` | `0` | `-0.1429` | `0.7143` |
| `1.5 xx R_1`(new) = | `-0.6429` | `1.5` | `0` | `0.4286` | `0` | `-0.2143` | `1.0714` |
| `R_3`(new)`= R_3`(old) + `1.5 R_1`(new) | `-0.1429` | `0` | `1` | `0.4286` | `0` | `0.2857` | `2.5714` |
| Tableau-3 | `C_j` | `-3` | `1` | `3` | `0` | `0` | `0` | | |
| `C_B` | `"Basis"` | `x_1` | `x_2` | `x_3` | `S_1` | `S_2` | `S_3` | `RHS` | `"Ratio"` |
| `R_1` `1` | `x_2` | `-0.4286` | `1` | `0` | `0.2857` | `0` | `-0.1429` | `0.7143` | |
| `R_2` `0` | `S_2` | `0.6429` | `0` | `0` | `0.0714` | `1` | `0.7143` | `3.4286` | |
| `R_3` `3` | `x_3` | `-0.1429` | `0` | `1` | `0.4286` | `0` | `0.2857` | `2.5714` | |
| | `Z_j` | `-0.8571` | `1` | `3` | `1.5714` | `0` | `0.7143` | `Z=8.4286` | |
| | `Z_j-C_j` | `2.1429` | `0` | `0` | `1.5714` | `0` | `0.7143` | | |
Since all `Z_j-C_j >= 0`
Hence, non-integer optimal solution is arrived with value of variables as :
`x_1=0,x_2=0.7143,x_3=2.5714`
Max `Z=8.4286`
To obtain the integer valued solution, we proceed to construct Gomory's fractional cut, with the help of `x_3`-row as follows:
`2.5714= -0.1429 x_1+1 x_3+0.4286 S_1+0.2857 S_3`
`(2+0.5714)=(-1+0.8571) x_1+(1+0) x_3+(0+0.4286) S_1+(0+0.2857) S_3`
The fractional cut will become
`-0.5714 = Sg1 -0.8571 x_1 -0.4286 S_1 -0.2857 S_3 ->` (Cut-1)
Adding this additional constraint at the bottom of optimal simplex table. The new table so obtained is
| Tableau-1 | `C_j` | `-3` | `1` | `3` | `0` | `0` | `0` | `0` | |
| `C_B` | `"Basis"` | `x_1` | `x_2` | `x_3` | `S_1` | `S_2` | `S_3` | `Sg1` | `RHS` |
| `R_1` `1` | `x_2` | `-0.4286` | `1` | `0` | `0.2857` | `0` | `-0.1429` | `0` | `0.7143` |
| `R_2` `0` | `S_2` | `0.6429` | `0` | `0` | `0.0714` | `1` | `0.7143` | `0` | `3.4286` |
| `R_3` `3` | `x_3` | `-0.1429` | `0` | `1` | `0.4286` | `0` | `0.2857` | `0` | `2.5714` |
| `R_4` `0` | `Sg1` | `-0.8571` | `0` | `0` | `-0.4286` | `0` | `(-0.2857)` | `1` | `-0.5714``->` |
| | `Z_j` | `-0.8571` | `1` | `3` | `1.5714` | `0` | `0.7143` | `0` | `Z=8.4286` |
| | `Z_j-C_j` | `2.1429` | `0` | `0` | `1.5714` | `0` | `0.7143` | `0` | |
| | `"Ratio"=(Z_j-C_j)/(Sg1,j)` and `Sg1,j<0` | `(2.1429)/(-0.8571)` `=-2.5` | `(0)/(0)` `=`--- | `(0)/(0)` `=`--- | `(1.5714)/(-0.4286)` `=-3.6667` | `(0)/(0)` `=`--- | `(0.7143)/(-0.2857)` `=-2.5``uarr` | `(0)/(1)` `=`--- | |
Most negative `RHS` is `-0.5714` and its row index is `4`. So,
the leaving basis variable is `Sg1`.
Least negative ratio is `-2.5` and its column index is `6`. So,
the entering variable is `S_3`.
`:.`
The pivot element is `-0.2857`.
Entering `=S_3`, Departing `=Sg1`, Key Element `=-0.2857`
`R_4`(new)`= R_4`(old) `-: -0.2857`
| `x_1` | `x_2` | `x_3` | `S_1` | `S_2` | `S_3` | `Sg1` | `RHS` |
| `R_4`(old) = | `-0.8571` | `0` | `0` | `-0.4286` | `0` | `-0.2857` | `1` | `-0.5714` |
| `R_4`(new)`= R_4`(old) `-: -0.2857` | `3` | `0` | `0` | `1.5` | `0` | `1` | `-3.5` | `2` |
`R_1`(new)`= R_1`(old) + `0.1429 R_4`(new)
| `x_1` | `x_2` | `x_3` | `S_1` | `S_2` | `S_3` | `Sg1` | `RHS` |
| `R_1`(old) = | `-0.4286` | `1` | `0` | `0.2857` | `0` | `-0.1429` | `0` | `0.7143` |
| `R_4`(new) = | `3` | `0` | `0` | `1.5` | `0` | `1` | `-3.5` | `2` |
| `0.1429 xx R_4`(new) = | `0.4286` | `0` | `0` | `0.2143` | `0` | `0.1429` | `-0.5` | `0.2857` |
| `R_1`(new)`= R_1`(old) + `0.1429 R_4`(new) | `0` | `1` | `0` | `0.5` | `0` | `0` | `-0.5` | `1` |
`R_2`(new)`= R_2`(old) - `0.7143 R_4`(new)
| `x_1` | `x_2` | `x_3` | `S_1` | `S_2` | `S_3` | `Sg1` | `RHS` |
| `R_2`(old) = | `0.6429` | `0` | `0` | `0.0714` | `1` | `0.7143` | `0` | `3.4286` |
| `R_4`(new) = | `3` | `0` | `0` | `1.5` | `0` | `1` | `-3.5` | `2` |
| `0.7143 xx R_4`(new) = | `2.1429` | `0` | `0` | `1.0714` | `0` | `0.7143` | `-2.5` | `1.4286` |
| `R_2`(new)`= R_2`(old) - `0.7143 R_4`(new) | `-1.5` | `0` | `0` | `-1` | `1` | `0` | `2.5` | `2` |
`R_3`(new)`= R_3`(old) - `0.2857 R_4`(new)
| `x_1` | `x_2` | `x_3` | `S_1` | `S_2` | `S_3` | `Sg1` | `RHS` |
| `R_3`(old) = | `-0.1429` | `0` | `1` | `0.4286` | `0` | `0.2857` | `0` | `2.5714` |
| `R_4`(new) = | `3` | `0` | `0` | `1.5` | `0` | `1` | `-3.5` | `2` |
| `0.2857 xx R_4`(new) = | `0.8571` | `0` | `0` | `0.4286` | `0` | `0.2857` | `-1` | `0.5714` |
| `R_3`(new)`= R_3`(old) - `0.2857 R_4`(new) | `-1` | `0` | `1` | `0` | `0` | `0` | `1` | `2` |
| Tableau-2 | `C_j` | `-3` | `1` | `3` | `0` | `0` | `0` | `0` | |
| `C_B` | `"Basis"` | `x_1` | `x_2` | `x_3` | `S_1` | `S_2` | `S_3` | `Sg1` | `RHS` |
| `R_1` `1` | `x_2` | `0` | `1` | `0` | `0.5` | `0` | `0` | `-0.5` | `1` |
| `R_2` `0` | `S_2` | `-1.5` | `0` | `0` | `-1` | `1` | `0` | `2.5` | `2` |
| `R_3` `3` | `x_3` | `-1` | `0` | `1` | `0` | `0` | `0` | `1` | `2` |
| `R_4` `0` | `S_3` | `3` | `0` | `0` | `1.5` | `0` | `1` | `-3.5` | `2` |
| | `Z_j` | `-3` | `1` | `3` | `0.5` | `0` | `0` | `2.5` | `Z=7` |
| | `Z_j-C_j` | `0` | `0` | `0` | `0.5` | `0` | `0` | `2.5` | |
| | Ratio | | | | | | | | |
Since all `Z_j-C_j >= 0`
Hence, integer optimal solution is arrived with value of variables as :
`x_1=0,x_2=1,x_3=2`
Max `Z=7`
The integer optimal solution found after 1-cuts.
This material is intended as a summary. Use your textbook for detail explanation.
Any bug, improvement, feedback then