Linear optimization: Upper and lower bounds 2: Unterschied zwischen den Versionen

Aus Operations-Research-Wiki
Wechseln zu: Navigation, Suche
[unmarkierte Version][unmarkierte Version]
(Example)
 
(28 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 11: Zeile 11:
  
 
Of course you can implement these upper and lower bounds as specific constraints in a simplex tableau.
 
Of course you can implement these upper and lower bounds as specific constraints in a simplex tableau.
But this far too complicated.  
+
But this is far too complicated.  
 
The other possibility is to transform the simplextableau, i.e. modifying the simplex tableau.
 
The other possibility is to transform the simplextableau, i.e. modifying the simplex tableau.
 
  
 
== '''Example''' ==
 
== '''Example''' ==
  
First of all you have to transform the old variable <math>{x}'_{j}</math> into: <math>x_{j}</math>.  
+
Consider the sample model with upper bounds <math>0\leq x_{1}\leq 8</math>, and <math>0\leq x_{2}\leq 4</math>. The simplex table is
  
That means:
 
  
<math> {x}'_{j}= x_{j}-l_{j}</math>
+
| [[bild:01_123image123456.jpg]]
  
But you have to take care of, that the lower bound is not allowed to be negative.
 
  
<math>{x}'_{j}> 0</math>
+
The <math>x^{B}/y_{i}</math> –ratios would allow an increase of <math>x_{2}</math>. However, in this case the minimum <math>\Theta </math> = 4 corresponding to the entering variable itself.
  
  
 +
The upper bound substitution can be done very easily on the simplex table. A non-basic variable is substituted by subtracting <math>x_{j}^{max}</math> times the variable column from the solution vector and negating then the column. Substituting <math>x_{2}=4-x_{2}^{*}</math> in the previous table gives
  
  
 +
| [[bild:02_123image123456.jpg]]
  
  
 +
Comparing this solution with the previous example after the first iteration we observe that the basis is different, but the solution is essentially the same (same values for <math>z, x_{1}, x_{2}, s_{1}</math> and <math>s_{2}</math>). Next we enter <math>x_{1}</math> and remove <math>s_{2}</math> from row 2 with minimum  <math>\Theta = 4</math>
  
  
m Zusammenhang mit dem Simplex-Algorithmus können in einigen Fällen Untergrenzen der Form x<sub>j</sub> &ge; l<sub>j</sub> einzelner Variablen oder Obergrenzen der Form x<sub>j</sub> &le; u<sub>j</sub> einzelner Variablen auftreten. Diese kann man als zusätzliche Restriktionen, was relativ aufwändig ist, oder durch Koordinatentransformation/-verschiebung behandeln.
+
| [[bild:03_123image123456.jpg]]
  
===Untergrenzen===
 
  
Treten Untergrenzen der Form  x<sub>j</sub> &ge; l<sub>j</sub>  auf, so werden diese '''vor der Umrechnung des Tableaus''' durch Koordinatenverschiebung berücksichtigt. Dazu wird die Variable x<sub>j</sub> durch die Gegenvariable x<sub>j</sub>&#8217; = x<sub>j</sub>  &#8211; l<sub>j</sub> ersetzt und die Bedingung x<sub>j</sub> &ge; l<sub>j</sub> wird zur Nichtnegativitätsbedingung x<sub>j</sub>&#8217; &ge; 0.
+
This table is not optimal because the reduced cost of <math>x_{2}^{*}</math> is 1. Because <math>y_{2}</math> is negative and the corresponding basic variable 1 has a finite upper bound of 8, we must compute the ratio as (<math>4-8)/-2 = 2</math>. This time the ratio for the first row is smallest. Thus, we enter <math>x_{2}^{*}</math> and remove <math>s_{1}</math> from row 1 with minimum <math>\Theta = 1</math>.
 
+
Für die restlichen Gleichungen (Restriktionen und Zielfunktion) treten durch die Transformation ebenfalls Änderungen auf.
+
 
+
Vor Transformation
+
 
+
:y<sub>i</sub> + &sum;<sub>j</sub> a<sub>ij</sub> x<sub>j</sub>= b<sub>i</sub>
+
 
+
Nach Transformation
+
 
+
:y<sub>i</sub> + &sum;<sub>j</sub> a<sub>ij</sub> (x<sub>j</sub>&#8217; + l<sub>j</sub>) = b<sub>i</sub></br>
+
:y<sub>i</sub> + &sum;<sub>j</sub> a<sub>ij</sub> x<sub>j</sub>&#8217; = b<sub>i</sub> - &sum;<sub>j</sub> a<sub>ij</sub> l<sub>j</sub>
+
 
+
Wie aus obiger Gleichung ersichtlich, treten nur Änderungen für die rechte Seite des Tableaus auf. Die Variable b<sub>i</sub> wird duch b<sub>i</sub>&#8217; = b<sub>i</sub> - &sum;<sub>j</sub> a<sub>ij</sub> l<sub>j</sub> ersetzt.
+
 
+
Zur Bestimmung der Optimallösung verwendet man die bekannten [[Einführung in den Simplex-Algorithmus|Rechenreglen für Phase 2]] des Simplex-Algorithmus.
+
 
+
Nach der Bestimmung der Optimallösung muss die Koordinatentransformation Rückgängig gemacht werden, um die Werte der ursprünglichen Variablen zu ermitteln. Dies geschieht nach der Formel x<sub>j</sub> = x<sub>j</sub>&#8217; + l<sub>j</sub>.
+
 
+
===Obergrenzen===
+
 
+
Treten Obergrenzen der Form x<sub>j</sub> &le; u<sub>j</sub> auf, so werden diese durch Koordinatentransformation '''während der Umrechnung des Tableaus''' berücksichtigt. Eine Obergrenze bildet mit der Nichtnegativitätsbedingung einen Korridor im zulässigen Lösungsbereich, der dann durch zwei parallele Geraden begrenzt ist.
+
Sobald eine Variable x<sub>j</sub> bzw. y<sub>i</sub> die Obergrenze überschreitet, wird sie durch ihre Gegenvariable x<sub>j</sub>&oline; = u<sub>j</sub> - x<sub>j</sub> bzw.  y<sub>i</sub>&oline; = u<sub>j</sub> *- y<sub>i</sub> ersetzt. Für die Grenzen gilt dann nach der Transformation x<sub>j</sub>&oline; &le; u<sub>j</sub> und x<sub>j</sub>&oline; &ge; 0 bzw. y<sub>i</sub>&oline; &le; u<sub>i</sub>* und y<sub>i</sub>&oline; &ge; 0
+
 
+
Auch bei der Behandlung von Obergrenzen treten Änderungen der restlichen Gleichungen auf. Im Gegensatz zu den Untergrenzen muss aber unterschieden werden, ob eine Basisvariable oder eine Nichtbasisvariable ersetzt wird.
+
 
+
*Ersetzen einer Nichtbasisvariable in Spalte j:
+
 
+
:Die Variable b<sub>i</sub> der rechten Seite wird durch b<sub>i</sub>&oline; = b<sub>i</sub> - a<sub>ij</sub> u<sub>j</sub> ersetzt und das Vorzeichen der Elemente der Spalte j wird getauscht.
+
+
*Ersetzen einer Basisvariable in Zeile i
+
 
+
:Die Variable b<sub>i</sub> der rechten Seite wird durch b<sub>i</sub>&oline; = u<sub>i</sub>* - b<sub>i</sub> ersetzt und das Vorzeichen der Elemente der Zeile i wird getauscht.
+
 
+
Auch bei den Rechenregeln für Simplex-Tableaus treten Änderungen auf.
+
Die Pivot-Spalte wird wie gewohnt gewählt.</br>
+
Zur Auswahl der Pivot-Zeile müssen die folgenden 3 Kriterien geprüft werden:
+
 
+
:Q<sub>1</sub> =  min ( b<sub>i</sub>/a<sub>is</sub> )  &forall; a<sub>is</sub> &gt; 0    (wie bisher)
+
 
+
:Q<sub>2</sub> = min ( (b<sub>i</sub> - u<sub>i</sub>*)/ a<sub>is</sub>) &forall; a<sub>is</sub> &lt; 0
+
 
+
:Q<sub>3</sub> = u<sub>s</sub>
+
 
+
Je nachdem, welcher der drei Werte am kleinsten ist, werden unterschiedliche Operationen durchgeführt.
+
 
+
*Ist Q<sub>1</sub> am kleinsten, führt man eine normale Simplex-Iteration nach den bekannten Regeln durch.</br>  
+
 
+
*Ist Q<sub>2</sub> am kleinsten, muss die Basisvariable der Pivot-Zeile nach den oben beschriebenen Regeln ersetzt werden. Dann führt man eine normale Simplex-Iteration durch.</br>
+
 
+
*Ist Q<sub>3</sub> am kleinsten, muss die Nichtbasisvariable der Pivot-Spalte nach den oben beschriebenen Regeln ersetzt werden. Es wird keine Simplex-Iteration durchgeführt.
+
 
+
Nach der Bestimmung der Optimallösung muss die Koordinatentransformation Rückgängig gemacht werden, um die Werte der ursprünglichen Variablen zu ermitteln. Dies geschieht nach der Formel x<sub>j</sub> = u<sub>j</sub> - x<sub>j</sub>&oline;.
+
 
+
===Unter- und Obergrenzen===
+
 
+
Treten Unter- und Obergrenzen auf, so werden die Untergrenzen wie oben beschrieben vor der Optimierungsrechnung und die Obergrenzen wie oben beschrieben während der Optimierungsrechnung jeweils durch Koordinatentransformation berücksichtigt.
+
 
+
Nach der Bestimmung der Optimallösung muss die Koordinatentransformation Rückgängig gemacht werden, um die Werte der ursprünglichen Variablen zu ermitteln. Dies geschieht in zwei Schritten nach den Formeln x<sub>j</sub>&#8217; = u<sub>j</sub> - x<sub>j</sub>&#8217;&oline; und x<sub>j</sub> = x<sub>j</sub>&#8217; + l<sub>j</sub>.
+
 
+
Beispiel:
+
 
+
Folgendes Simplex-Problem soll unter der Berücksichtigung der unteren Grenzen
+
 
+
:x<sub>1</sub> &ge; 4, x<sub>2</sub> &ge; 5 und x<sub>3</sub> &ge; 7
+
 
+
sowie der oberen Grenzen
+
 
+
:x<sub>1</sub> &le; 8, x<sub>2</sub> &le; 7 und x<sub>3</sub> &le; 15
+
 
+
gelöst werden.
+
 
+
 
+
{| class="center"
+
| [[bild:GBild_1.jpg]]
+
|-
+
|''Abb. 1''
+
|}
+
 
+
 
+
Im ersten Schritt trägt man die Untergrenzen in die Zeile LB und die Obergrenzen abzüglich der Untergrenzen in die Zeile UB`. Dann beginnt man mit der Koordinatentransformation zur Berücksichtigung der Untergrenzen, indem man die Nichtbasisvariablen x<sub>j</sub> duch ihre entsprechenden Gegenvariablen x<sub>j</sub>&#8217; ersetzt und die Werte der rechten Seite nach der Formel  b<sub>i</sub>&#8217; = b<sub>i</sub> - &sum;<sub>j</sub> a<sub>ij</sub> l<sub>j</sub> umrechnet. Für die Zeile y<sub>0</sub> beträgt b<sub>0</sub>&#8217; zum Beispiel b<sub>0</sub>&#8217;= 0 - (-20*7) &#8211; (-26*5) &#8211; (-36*4) = 414. Für die Zeile y<sub>1</sub> gilt entsprechend b<sub>1</sub>&#8217; = 122- (3*7) - (6*5) &#8211; (5*4) = 51
+
Für die Zeilen y<sub>2</sub> und  y<sub>3</sub> folgt entsprechend b<sub>2</sub>&#8217; = 58 und b<sub>3</sub>&#8217;= 84.
+
 
+
Nach der Koordinatentransformation folgt für das Simplex-Tableau also
+
 
+
 
+
{| class="center"
+
| [[bild:GBild_2.jpg]]
+
|-
+
|''Abb. 2''
+
|}
+
 
+
 
+
Im nächsten Schritt bestimmt man die Pivot-Spalte nach den bekannten Kriterien, in diesem Fall also die Spalte x<sub>1</sub>´ = -36. Nun werden für diese Spalte die drei Kriterien zur Auswahl der Pivot-Zeile überprüft.
+
 
+
:Q<sub>1</sub> =  min ( b<sub>i</sub>/a<sub>is</sub> )= min (51/5; 58/7; 84/10) =min (10,2; 8,29; 8,4) = 8,29
+
 
+
:Q<sub>2</sub> = min ( (b<sub>i</sub> - u<sub>i</sub>*)/ a<sub>is</sub>) = min (&infin;;  &infin;; &infin;;) = &infin;
+
 
+
:Q<sub>3</sub> = u<sub>s</sub> = 4
+
 
+
Das Minimum von Q<sub>1</sub>, Q<sub>2</sub> und Q<sub>3</sub> liegt also bei Q<sub>3</sub>. Nach den oben beschriebenen Regeln wird in diesem Fall also eine Koordinatentransformation der Nichtbasisvariable der Pivot-Spalte durchgeführt, die rechte Seite nach der Formel b<sub>i</sub>&oline; = b<sub>i</sub> - a<sub>ij</sub> l<sub>j</sub> umgerechnet und das Vorzeichen der Elemente der Spalte 1 getauscht.
+
 
+
Aus x<sub>1</sub>&#8217; wird also x<sub>1</sub>&#8217;&oline;, aus b<sub>o</sub>&#8217; = 414 wird b<sub>o</sub>&#8217;&oline; = 414 &#8211; (-36*4) = 558, aus b<sub>1</sub>&#8217; =  51 wird b<sub>1</sub>&#8217;&oline; = 51 &#8211; (5*4) = 31. Für die restlichen Zeilen erfolgt die Umrechnung entsprechend.
+
 
+
Da eine Nichtbasisvariable transformiert wurde, erfolgt keine Simplex-Iteration.
+
 
+
Somit gilt für das Simplex-Tableau
+
 
+
 
+
{| class="center"
+
| [[bild:GBild_3.jpg]]
+
|-
+
|''Abb. 3''
+
|}
+
 
+
 
+
Da die Optimallösung noch nicht erreicht ist, wählt man als nächste Pivot-Spalte die Spalte x<sub>2</sub>&#8217; = -26 und überprüft wieder die Kriterien zur Auswahl der Pivot-Zeile.
+
 
+
:Q<sub>1</sub> = min (31/6; 30/5; 44/8) = min (5,17; 6; 5,5) = 5,5
+
 
+
:Q<sub>2</sub> = min (&infin;;  &infin;; &infin;;) = &infin;
+
 
+
:Q<sub>3</sub> = u<sub>s</sub> = 2
+
 
+
Das Minimum von Q<sub>1</sub>, Q<sub>2</sub> und Q<sub>3</sub> liegt also wieder bei Q<sub>3</sub>. Es wird wieder eine Koordinatentransformation der Nichtbasisvariable der Pivot-Spalte durchgeführt, die rechte Seite nach der Formel b<sub>i</sub>&oline; = b<sub>i</sub> - a<sub>ij</sub> l<sub>j</sub> umgerechnet und das Vorzeichen der Elemente der Spalte 2 getauscht.  
+
 
+
Aus x<sub>2</sub>&#8217; wird also x<sub>2</sub>&#8217;&oline;, aus b<sub>o</sub> = 558 wird b<sub>o</sub>&#8217;&oline; = 558 &#8211; (-26*2) = 610, aus b<sub>1</sub>&#8217; =  31 wird b<sub>1</sub>&#8217;&oline; = 31 &#8211; (6*2) = 19. Für die restlichen Zeilen erfolgt die Umrechnung entsprechend.
+
 
+
Da eine Nichtbasisvariable transformiert wurde, erfolgt keine Simplex-Iteration.
+
 
+
Somit gilt für das Simplex-Tableau
+
 
+
 
+
{| class="center"
+
| [[bild:GBild_4.jpg]]
+
|-
+
|''Abb. 4''
+
|}
+
 
+
 
+
Da die Optimallösung noch nicht erreicht ist, wählt man als nächste Pivot-Spalte die Spalte x<sub>3</sub>&#8217; = -20 und überprüft wieder die Kriterien zur Auswahl der Pivot-Zeile.
+
 
+
:Q<sub>1</sub> = min (19/3; 20/4; 28/5) = min (6,33; 5; 5,6) = 5
+
 
+
:Q<sub>2</sub> = min (&infin;;  &infin;; &infin;;) = &infin;
+
 
+
:Q<sub>3</sub> = u<sub>s</sub> = 8
+
 
+
Das Minimum von Q<sub>1</sub>, Q<sub>2</sub> und Q<sub>3</sub> liegt also bei Q<sub>1</sub>. In diesem Fall wird eine Simplex-Iteration mit Spalte x<sub>3</sub> als Pivot-Spalte und Zeile y<sub>2</sub> als Pivot-Zeile ( Minimum von Q<sub>1</sub> in Zeile y<sub>2</sub>)  nach den [[Einführung in den Simplex-Algorithmus|Rechenreglen für Phase 2]] durchgeführt.
+
 
+
Somit folgt für das Simplex-Tableau
+
 
+
 
+
{| class="center"
+
| [[bild:GBild_5.jpg]]
+
|-
+
|''Abb. 5''
+
|}
+
 
+
 
+
Dieses Tableau stellt die Optimallösung dar. Nun müssen noch die Koordinatentransformationen Rückgängig gemacht werden.
+
 
+
x<sub>1</sub>&#8217;&oline; = 0
+
&rArr; x<sub>1</sub> = l<sub>1</sub> + u<sub>1</sub>* = 4 + 4= 8
+
 
+
x<sub>2</sub>&#8217;&oline; = 0
+
&rArr; x<sub>2</sub> = l<sub>2</sub> + u<sub>2</sub>* = 5 + 2= 7
+
 
+
x<sub>3</sub>&#8217; = 5
+
&rArr; x<sub>3</sub> = l<sub>3</sub> + 5 = 7 + 5= 12
+
 
+
y<sub>0</sub> = 710
+
 
+
y<sub>1</sub> = 4
+
<br>y<sub>2</sub> = 0
+
<br>y<sub>3</sub> = 3
+
 
+
===Literatur===
+
 
+
Müller-Merbach (1973): Operations Research, Kapitel 4.5
+
 
+
===Vorlesung/Lecture===
+
Sie können Sich zu diesem Themengebiet eine Vorlesung ansehen.
+
 
+
[[media:Slides_05_LPBounds.wmv | Unter- und Obergrenzen (English)]]
+
 
+
== '''Example''' ==
+
  
  
Consider the linear program
+
| [[bild:04_123image123456.jpg]]
:Minimize
+
::<math>Z = -2 x - 3 y - 4 z\,</math>
+
:Subject to
+
::<math>\begin{align}
+
  3 x + 2 y + z &\le 10\\
+
  2 x + 5 y + 3 z &\le 15\\
+
  x,\,y,\,z &\ge 0
+
\end{align}</math>
+
  
With the addition of slack variables ''s'' and ''t'', this is represented by the canonical tableau
 
:<math>
 
  \begin{bmatrix}
 
    1 & 2 & 3 & 4 & 0 & 0 &  0 \\ 
 
    0 & 3 & 2 & 1 & 1 & 0 & 10 \\
 
    0 & 2 & 5 & 3 & 0 & 1 & 15
 
  \end{bmatrix}
 
</math>
 
  
where columns 5 and 6 represent the basic variables ''s'' and ''t'' and the corresponding basic feasible solution is
+
This table is optimal. To obtain the solution in terms of the original variables, we can substitute the <math>x_{2}^{*}</math> with <math>4-x_{2}</math>. Because <math>x_{2}^{*}</math> is basic, this substitution affects only the <math>x_{2}</math> row.
:<math>x=y=z=0,\,s=10,\,t=15.</math>
+
  
Columns 2, 3, and 4 can be selected as pivot columns, for this example column 4 is selected. The values of ''x'' resulting from the choice of rows 2 and 3 as pivot rows are 10/1&nbsp;=&nbsp;10 and 15/3&nbsp;=&nbsp;5 respectively. Of these the minimum is 5, so row 3 must be the pivot row. Performing the pivot produces
 
:<math>
 
  \begin{bmatrix}
 
    1 & -\tfrac{2}{3} & -\tfrac{11}{3} & 0 & 0 & -\tfrac{4}{3} & -20 \\ 
 
    0 &  \tfrac{7}{3} &  \tfrac{1}{3} & 0 & 1 & -\tfrac{1}{3} &  5  \\
 
    0 &  \tfrac{2}{3} &  \tfrac{5}{3} & 1 & 0 &  \tfrac{1}{3} &  5
 
  \end{bmatrix}
 
</math>
 
  
Now columns 4 and 5 represent the basic variables ''z'' and ''s'' and the corresponding basic feasible solution is
+
| [[bild:05_123image123456.jpg]]
:<math>x=y=t=0,\,z=5,\,s=5.</math>
+
  
For the next step, there are no positive entries in the objective row and in fact
 
:<math>Z = -20 + \tfrac{2}{3} x + \tfrac{11}{3} y + \tfrac{4}{3} t</math>
 
so the minimum value of ''Z'' is&nbsp;&minus;20.
 
  
== '''Presentation of the problem''' ==
+
However, negating the column of <math>x_{2}</math> has made the identity matrix element -1. To restore the identity matrix, the row must yet be multiplied by -1.
  
== '''Detailed solution process with explanation''' ==
 
  
== '''Sources''' ==
+
| [[bild:06_123image123456.jpg]]
  
Sources
+
So now we have the optimal solution for the tableau.

Aktuelle Version vom 27. Juni 2013, 09:44 Uhr

Theory

Linear optimization can be used for set of different problems, which have restrictions such as a given amount of resources or a certain budget. The lower bound is the smallest possible value, and the upper bound is the highest possible value.

Linear programming is the most commonly used optimisation technique in embedded industrial applications. There are many reasons for this. Linear programs are relatively easy to formulate, use and understand. The LP optimisation techniques are also relatively efficient and well developed. A surprisingly large set of real-life problems can be represented as linear programs, or approximated sufficiently well with linear programs. Finally, a number of more advanced modelling and solution techniques are based on linear programming, such as quadratic programming, fractional programming, integer programming, mixed integer programming, constraint logic programming, etc.


Lower bounds are classified like: Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): x_{j}\geq l_{j}


Upper bounds are classified like: Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): x_{j}\leq l_{j}


Of course you can implement these upper and lower bounds as specific constraints in a simplex tableau. But this is far too complicated. The other possibility is to transform the simplextableau, i.e. modifying the simplex tableau.

Example

Consider the sample model with upper bounds Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): 0\leq x_{1}\leq 8 , and Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): 0\leq x_{2}\leq 4 . The simplex table is


|
Fehler beim Erstellen des Vorschaubildes: Die Miniaturansicht konnte nicht am vorgesehenen Ort gespeichert werden


The –ratios would allow an increase of . However, in this case the minimum Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): \Theta

= 4 corresponding to the entering variable itself.


The upper bound substitution can be done very easily on the simplex table. A non-basic variable is substituted by subtracting times the variable column from the solution vector and negating then the column. Substituting Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): x_{2}=4-x_{2}^{*}

in the previous table gives


|
Fehler beim Erstellen des Vorschaubildes: Die Miniaturansicht konnte nicht am vorgesehenen Ort gespeichert werden


Comparing this solution with the previous example after the first iteration we observe that the basis is different, but the solution is essentially the same (same values for and ). Next we enter and remove from row 2 with minimum Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): \Theta = 4


|
Fehler beim Erstellen des Vorschaubildes: Die Miniaturansicht konnte nicht am vorgesehenen Ort gespeichert werden


This table is not optimal because the reduced cost of Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): x_{2}^{*}

is 1. Because  is negative and the corresponding basic variable 1 has a finite upper bound of 8, we must compute the ratio as (Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): 4-8)/-2 = 2

. This time the ratio for the first row is smallest. Thus, we enter Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): x_{2}^{*}

and remove  from row 1 with minimum Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): \Theta = 1

.


|
Fehler beim Erstellen des Vorschaubildes: Die Miniaturansicht konnte nicht am vorgesehenen Ort gespeichert werden


This table is optimal. To obtain the solution in terms of the original variables, we can substitute the Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): x_{2}^{*}

with Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): 4-x_{2}

. Because Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): x_{2}^{*}

is basic, this substitution affects only the  row.


|
Fehler beim Erstellen des Vorschaubildes: Die Miniaturansicht konnte nicht am vorgesehenen Ort gespeichert werden


However, negating the column of has made the identity matrix element -1. To restore the identity matrix, the row must yet be multiplied by -1.


|
Fehler beim Erstellen des Vorschaubildes: Die Miniaturansicht konnte nicht am vorgesehenen Ort gespeichert werden

So now we have the optimal solution for the tableau.