Gruppe 1
Cutting-plane method
Cutting plane method is an approach to the solution of integer linear programming problems.First of all we do not consider that variables is an integer. But by adding linear constraints (so called cutting plane) the original feasible region will be cut.That part which was cut off contains only non-integer solution.Any integer feasible solution is kept in the ”modified” feasible region. This method is to point out how to find the right kinds of cutting planes (not necessarily only one to find), so that after cutting the feasible region finally we actually the get integer optimal solution. This method is proposed by R. E. Gomory, and it is also known as Gomory's cutting plane method.
Example
Consider the integer optimization problem
- Maximize
- Subject to
- Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): 3x_1-x_2 \le 12
- Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): 3x_1+11x_2 \le 66
- Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): x_1,x_2 \geq 0
and integer
Introduce slack variables to produce the standard form
- Maximize Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): Z = 3x_1-x_2
- Subject to
- Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): y_A+3x_1-x_2 \le 12
- Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): y_B+3x_1+11x_2 \le 66
- Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): x_1,x_2 \geq 0
and integer
Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): -3 | Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): -4 | ||
Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): -1 | |||
We use simplex method to get the optimal solution.(See "First optimal solution")
Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): -\frac{21}{11} | |||
Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): -\frac{1}{12} |
From the tableau above we can get the following equations
- Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): x_2 - \tfrac{1}{12} y_A + \tfrac{1}{12} y_B = \tfrac{9}{2}
Each of these equations produces the same cutting plane.In this example we choose the first equation .
It can be written as following:
- Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): \tfrac{11}{36} y_A + \tfrac{1}{36} y_B = \tfrac{1}{2} + (5-x_1)
Here we introduce a new slack variable ,so the equation will be writen:
- Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): y_C-\tfrac{11}{36} y_A - \tfrac{1}{36} y_B = -\tfrac{1}{2}
Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): -\frac{1}{12} | |||
Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): -\frac{11}{36} | Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): -\frac{1}{36} | Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): -\frac{1}{2} |
Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): -\frac{3}{11} | |||
Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): -\frac{36}{11} |
So we have found the solution ,namely and . This solution is non-integral, so we seek a cut. For this purpose, we choose a row of the optimal tableau with a non-integral right-hand side. For instance, the second row of the optimal tableau says:
- Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): x_2-\tfrac{3}{11} y_C + \tfrac{1}{11} y_B = \tfrac{51}{11}
We can introduce a new slack variable y_D and rewrite the cut as
- Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): y_D-\tfrac{8}{11} y_C - \tfrac{1}{11} y_B = -\tfrac{7}{11}
With this new variable and this new constraint, the simplex tableau becomes
Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): -\frac{3}{11} | |||
Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): -\frac{36}{11} | |||
Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): -\frac{8}{11} | Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): -\frac{1}{11} | Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): -\frac{7}{11} |