ZU DEN KURSEN!

Operations Research 2 - Festlegung der unteren/oberen Schranke, Prioritätenfestlegung

Kursangebot | Operations Research 2 | Festlegung der unteren/oberen Schranke, Prioritätenfestlegung

Operations Research 2

Festlegung der unteren/oberen Schranke, Prioritätenfestlegung

Es wird zunächst das Branch-and-Bound Verfahren für ein Minimierungsproblem betrachtet. Dabei wird von dem gegebenen ganzzahligen Minimierungsproblem ausgegangen. Das ganzzahlige Minimierungsproblem muss in der folgenden Form vorliegen oder in diese Form überführt werden:

Methode

Die Voraussetzungen für das Branch-and-Bound -Verfahren eines Minimierungsproblems seien im Folgenden aufgeführt:

- Das Problem muss in der folgenden Form vorliegen: Minimierungsproblem, Nichtnegativitätsbedingung

- Die Ganzzahligkeitsbedingung muss gegeben sein. 

Bevor mit dem Branch-and-Bound-Verfahren begonnen werden kann, müssen zunächst einige Vorüberlegungen getroffen werden. Diese werden im Folgenden aufgezeigt. Dazu wird das folgende ganzzahlige Minimierungsproblem herangezogen:

$f(x_1, x_2) = 2x_1 +  x_2$    $\rightarrow$   min!

u.d.N.

(1) $4x_1 +4 x_2 \ge 10 $   

(2) $2x_1 +11 x_2 \ge 11$    

(3) $-4x_1 + 2x_2  \le 1$


$x_1, x_2 \ge 0$    und ganzzahlig

Obere Schranke bestimmen

Es wird zunächst eine obere Schranke bestimmt. Dies geschieht, indem die rechte Seite der Nebenbedingungen durch die Koeffizienten der Nebenbedingungen geteilt werden. Liegen in einer Zeile Koeffizienten kleiner als Null vor, so wird der Wert der rechten Seite $b_j$ für beide Variablen für diese Zeile gewählt, statt des Quotienten. Es wird dann aus jeder Variable $x_j$ der maximal aufgerundeten Quotient gewählt:

Methode

$x_{j,max} = max [\frac{b_j}{a_{ij}}]$ aufgerundet


Es wird zunächst die obere Schranke der Variablen $x_1$ und $x_2$ bestimmt:

$x_1$ $x_2$
$10/4 = 2,5$ $10/4 = 2,5$
$11/2 = 5,5$ $11/11 = 1$
- -
$x_{1,max} = 5$ $x_{2,max} = 2$

Die rechte Seite ist durch die Koeffizienten der Nebenbedingungen geteilt worden. Dabei wird der maximale Wert (aufgerundet) als obere Schranke verwendet. Demnach besitzt $x_1$ die obere Schranke $x_{1,max} = 5$ und die Variable $x_2$ die obere Schranke $x_{2,max} = 2$. Die 3. Restriktion kann für die Wahl der oberen Schranke nicht verwendet werden, da diese einen negativen Wert auf der rechten Seite aufweist. Als nächstes wird festgelegt, mit welcher Variable begonnen wird. Dazu wird die Prioritätenreihenfolge herangezogen.

Prioritätenfestlegung

Nachdem die Schranken bestimmt worden sind, wird eine Variable $x_j$ ausgewählt. Dabei geht man nach der folgenden Reihenfolge vor:

Methode

1. $\min [a_{ij} < 0]$

Auswahl des minimalen negativen Koeffizienten der Nebenbedingungen. Befindet sich dieser z.B. bei $x_1$, so wird mit $x_1$ begonnen.

Methode

2. $\min [c_j < 0]$

Auswahl des minimalen Koeffizienten in der Zielfunktion. Befindet sich dieser z.B. bei $x_1$, so wird mit $x_1$ begonnen.

Methode

3. $\max [c_j > 0]$

Auswahl des maximalen Koeffizienten in der Zielfunktion. Befindet sich dieser z.B. bei $x_1$, so wird mit $x_1$ begonnen.

Methode

4. $\max [\frac{c_j}{\sum a_{ij}}]$

Auswahl des maximalen Quotienten von Zielfunktionskoeffizient und der Summe der Koeffizienten der Nebenbedingungen. Befindet sich dieser z.B. bei $x_1$, so wird mit $x_1$ begonnen.

Die 1. Priorität ist nicht anzuwenden, da keine negativen Koeffizienten in der Nebenbedingung gegeben sind.

Die 2. Priorität kann hier angewandt werden, weil negative Koeffizienten in der Zielfunktion gegeben sind.

$\min [-2] = -2$

Der negative Koeffizient befindet sich in der 3. Nebenbedingung und beträgt $-2$. Dieser liegt bei $x_2$. Demnach wird $x_2$ gewählt.

Obere Schranken für Restriktionen bestimmen

Es wird nun also mit $x_2$ begonnen. Zunächst müssen die oberen Schranken bestimmt werden (im Gegensatz zu den unteren Schranken beim Maximierungsproblem). Diese werden bestimmt, indem die obere Schranke $x_{2max} = 2$ in die Nebenbedingungen bzw. Restriktionen $R_i$ eingesetzt werden, wobei $x_1$ ebenfalls mit der oberen Schranke eingesetzt wird mit $x_{1,max} = 5$. Die oberen Schranken für die Restriktionen geben an, wie viel Kapazität mindestens verbraucht wird, wenn $x_2$ und $x_1$ produziert würden. Dies ist sinvoll um zu entscheiden, ob ein Ast überhaupt verzweigt wird. Für die Restriktionen im 1. Ast wird dafür zunächst $x_1$ mit der oberen Schranke eingesetzt, wobei $x_2 = 0$ gesetzt wird:

$R_1 = 4 \cdot 5 + 4 \cdot 2 = 28 > 10 $   

$R_2 = 2 \cdot 5 + 11 \cdot 2 = 32 > 11$    

$R_3 = 4 \cdot 5 - 2 \cdot 2 = 16 > -1$

Die Bedingung beim Minimierungsproblem ist, dass die Kapazitäten einen Mindestwert annehmen müssen, damit die Lösung überhaupt zulässig ist (im Gegensatz zum Maximierungsproblem mit Maximalwert). Da die Kapazitäten in den Nebenbedingungen nicht unterschritten werden, wenn beide Variablen mit ihren maximalen Werten eingehen, wird der Baum nun nach unten verzweigt und es wird im Weiteren $x_1$ nach und nach variiert, wobei $x_2 = 2$ konstant gehalten wird.

Die Zielfunktion für den ersten Ast wird dabei so bestimmt, dass $x_2 = 2$ eingeht und $x_1 = 0$.

$z = 2 \cdot 0 + 2 = 2$

Die Zielfunktion soll minimiert werden, weshalb hier $x_1$ mit dem kleinst möglichen Wert berücksichtigt wird. Dieser Ast sagt dann aus, dass die Verzweigungen ein Minimum von $z = 2$ erreichen können, nicht aber weniger. Es handelt sich hierbei also um eine untere Schranke. Ziel im Folgenden ist es die Zielfunktion so weit wie möglich zu minimieren. Dabei müssen aber immer die Nebenbedingungen geprüft werden. Die Werte der rechten Seite des Ausgangsproblems dürfen dabei nicht unterschritten werden.

Im folgenden Abschnitt wird nun gezeigt, wie der Entscheidungsbaum aufgestellt wird.