ingenieurkurse
online lernen

Besser lernen mit Online-Kursen

NEU! Jetzt online lernen:
Operations Research 2
Den Kurs kaufen für:
einmalig 39,00 €
Zur Kasse

Verfahren von Gomory

WebinarTerminankündigung:
 Am 20.12.2016 (ab 16:00 Uhr) findet unser nächstes Webinar statt.
Gratis-Webinar (Operations Research) Primaler Simplexalgorithmus
- Das 60-minütige Gratis-Webinar behandelt den primalen Simplexalgorithmus.
[weitere Informationen] [Terminübersicht]

In diesem Abschnitt soll der Primal-Ganzzahlige Algorithmus von Gomory aufgezeigt werden. Hierbei handelt es sich um ein Schnittebenenverfahren, bei welchem eine ganzzahlige Lösung des linearen Optimierungsproblems resultiert. In diesem Abschnitt soll aufgezeigt werden, wie ein lineares Maximierungsproblem mit Ganzzahligkeitsbedingung mittels primalen Simplexalgorithmus und dem Primal-Ganzzahligen Algorithmus von Gomory gelöst werden kann. Der primale Simplex-Algorithmus sollte bereits aus dem Kurs Operations-Research 1 bekannt sein. Im Kapitel Wiederhoung: Operations Research 1 wird der primale Simplexalgorithmus nochmals wiederholt und es wird ein Beispiel zur Anwendung des primalen Simplexalgorithmus aufgezeigt.

Voraussetzungen:

  1. Das lineare Opmtimierungsproblem muss in Standardform vorliegen (Maximierungsproblem, Kleiner/Gleich-Nebenbedingung, Nichtnegativitätsbedingung)

  2. Die Standardform muss dann in die Normalform überführt werden (Gleichheitsbedingung) mittels Einführung von Schlupfvariablen.

  3. Es müssen nicht-negative Koeffizienten auf der rechten Seite der Nebenbedingungen vorliegen ($b_i \ge 0$, für alle $i$).

  4. Alle Koeffizienten müssen ganzzahlig sein oder mittels Multiplikation von $10$, $100$ usw. ganzzahlig gemacht werden können, d.h. wenn Dezimalzahlen vorliegen, dann endliche und keine unendlichen (endlich = $2,5$ unendlich = $1/3$). Liegen unendliche Dezimalzahlen vor, so ist das Verfahren beendet.

Vorgehensweise

Nachdem das Maximierungsproblem in Normalform vorliegt (Gleichheitsbedingung) wird dieses als nächstes in das Ausgangstableau eingetragen.

Sind negative Werte auf der rechten Seite gegeben wird für das Problem zunächst mittels dualen Simplexalgorithmus eine zulässige Lösung ermittelt (bis rechte Seite nur positive Werte aufweist). Ist eine zulässige Lösung bestimt bzw. liegt bereits eine zulässige Lösung vor, erfolgt die Auswahl der Pivotspalte, der Pivotzeile und des Pivotelements nach dem primalen Simplexalgorithmus. Es wird aber noch kein Simplexschritt durchgeführt, sondern eine Zeile, die Gomory-Zeile, ausgewählt, um den Gomory-Schnitt durchführen zu können. 

Für die Gomory-Zeile sollte die Pivot-Zeile gewählt werden, um den Rechenaufwand zu minimieren. Es wird dann für diese Zeile der Gomory-Schnitt gebildet und in das Tableau eingefügt. 

Für den Gomory-Schnitt werden alle Elemente der Zeile durch das Pivotelement geteilt (außer die Basisvariable) und alle Quotienten abgerundet. Die Basisvariable wird zur Gomory-Variable. Danach wird die Gomory-Zeile als letzte Zeile ins Tableau eingefügt.

Es wird ein Simplexschritt durchgeführt (alle Gomory-Zeilen bleiben davon unberücksichtigt und werden sofort ins neue Tableau übernommen). Dabei wird die Gomory-Variable zur Nichtbasisvariablen und diejenige Nichtbasisvariable in dessen Spalte sich das Pivotelement befindet zur Basisvariablen.

Das Verfahren endet, wenn entweder keine unendliche Dezimalzahlen im Tableau vorliegen oder wenn alle Zielfunktionskoeffizienten positiv sind.

Anwendungsbeispiel: Primal-Ganzzahliger Algorithmus von Gomory

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

u.d.N.

(1) $6x_1 + 5x_2 \le 30$   

(2) $4x_1 + 9 x_2 \le 36$    


$x_1, x_2 \ge 0$    und ganzzahlig


Es werden als nächstes die Schlupfvariablen eingeführt um statt der Ungleichungen $\le$ Gleichungen $=$ zu erhalten:

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

u.d.N.

(1) $6x_1 + 5x_2  + y_1          = 30 $   

(2) $4x_1 + 9 x_2          + y_2 = 36$    


$x_1, x_2 \ge 0$    und ganzzahlig


Als nächstes wird das Simplex-Tableau aufgestellt:

Gomory-Verfahren Schnittebenenverfahren Gomory-Schnitt

Da die rechte Seite nur positive Werte aufweist, kann hier die Auswahl der Pivotspalte und -zeile nach dem primalen Simplexalgorithmus erfolgen. Zunächst wird die Pivotspalte bestimmt. Diese wird ausgewählt, indem der kleinste negative Wert der Zielfunktionszeile (unterste Zeile) gewählt wird (hier: $-2$). Danach folgt die Pivotzeile. Dazu werden die Werte der rechten Seite mit den Werte der Pivotspalte dividiert (diese müssen positiv sein). Es wird der kleinste Quotient ausgewählt, in dem obigen Beispiel $36:9 = 4$. Dort wo sich Pivotspalte und Pivotzeile treffen liegt das Pivotelement (hier: $9$). Es wird nun die Gomory-Zeile ausgewählt. Man verwendet hierfür am Besten die Pivotzeile:

$4x_1 + 9x_2 + y_2 = 36$

Es wird dann der Gomory-Schnitt gebildet, indem alle Koeffizienten der Gomory-Zeile durch das Pivotelement ($=8$) geteilt werden. Die Schlupvariable (Basisvariable) wird dabei nicht berücksichtigt und zu $y_2 = y_{g1}$:

$[4/9] x_1 + [9/9] x_2 + y_{g1} = [36/9] $

$[0,44] x_1 + [1] x_2 + y_{g1} = [4] $


Die Quotienten in den eckigen Klammern müssen auf ganze Zahlen abgerundet werden:

$[0] x_1 + [1] x_2 + y_{g1} = [4] $

Die Gomory-Zeile wird nun als letzte Zeile dem obigen Tableau hinzugefügt:

Gomory-Verfahren Schnittebenenverfahren Gomory-Schnitt

Es wird als nächstes der 1. Simplexschritt durchgeführt. Es resultiert das folgende Tableau:

Gomory-Verfahren Schnittebenenverfahren Gomory-Schnitt

Nach dem 1. Simplexschritt resultiert das obige Tableau. Die Gomory-Zeile wird beim Simplexschritt nicht berücksichtigt, sondern einfach in das neue Tableau übernommen. Die alte Nichtbasisvariable $x_2$ in dessen Spalte sich das Pivotelement befand wird dann mit der Gomory-Variable $y_{g1}$ getauscht.

Da in der Zielfunktionszeile noch negative Werte $-1/9$ vorhanden sind, liegt das Optimaltableau noch nicht vor, allerdings sind innerhalb des Tableaus nicht-ganzzahlige Werte, die auch nicht mittels Mulitiplikation ganzzahlig gemacht werden könnten (z.B. $34/9$). Das bedeutet, das Verfahren ist hier bereits beendet, da keine weitere Ganzzahlige Lösung für $x_1$ mehr ermittelt werden kann, ohne das die obere Schranke überschritten wird. Das ganzzahlige Ergebnis ist also:

$x_2 = 4$ und $x_1 = 0$ mit dem Zielfunktionswert:

$f(0,4) = 0 + 2 \cdot 4 = 8$

Multiple-Choice
Bitte die richtigen Aussagen auswählen.
0/0
Lösen

Hinweis:

Bitte kreuzen Sie die richtigen Aussagen an. Es können auch mehrere Aussagen richtig oder alle falsch sein. Nur wenn alle richtigen Aussagen angekreuzt und alle falschen Aussagen nicht angekreuzt wurden, ist die Aufgabe erfolgreich gelöst.

Vorstellung des Online-Kurses Operations Research 2Operations Research 2
Dieser Inhalt ist Bestandteil des Online-Kurses

Operations Research 2

Ingenieurkurse (ingenieurkurse.de)
Diese Themen werden im Kurs behandelt:

[Bitte auf Kapitelüberschriften klicken, um Unterthemen anzuzeigen]

  • Operations Research 2: Überblick
    • Einleitung zu Operations Research 2: Überblick
  • Grundlagen des Operations Research 1
    • Einleitung zu Grundlagen des Operations Research 1
    • Definition: Lineares Programm
    • Standardform: Maximierungsproblem
      • Einleitung zu Standardform: Maximierungsproblem
      • Grafische Lösung des Maximierungsproblems
    • Primaler Simplexalgorithmus
      • Einleitung zu Primaler Simplexalgorithmus
      • Lösung des Maximierungsproblems mittels primalen Simplexalgorithmus
    • Dualer Simplexalgorithmus
    • Umformung in die Standardform
    • Umformung in die Normalform
  • Ganzzahlige Optimierung
    • Einleitung zu Ganzzahlige Optimierung
    • Grafisches Verfahren
    • Verfahren von Gomory
      • Einleitung zu Verfahren von Gomory
      • Beispiel: Verfahren von Gomory
    • Branch-and-Bound-Verfahren
      • Einleitung zu Branch-and-Bound-Verfahren
      • Branch-and-Bound: Maximierungsprobleme
        • Einleitung zu Branch-and-Bound: Maximierungsprobleme
        • Branch-and-Bound am Maximierungsproblem
          • Einleitung zu Branch-and-Bound am Maximierungsproblem
          • Festlegung der oberen/unteren Schranke, Prioritätenfestlegung
          • Entscheidungsbaum für das Maximierungsproblem
          • Beispiel: Branch and Bound am Maximierungsproblem
        • Branch-and-Bound am Maximierungsproblem (optimale Lösung)
          • Einleitung zu Branch-and-Bound am Maximierungsproblem (optimale Lösung)
          • Beispiel: Branch and Bound am Maximierungsproblem (optimale Lösung)
      • Branch-and-Bound: Minimierungsprobleme
        • Einleitung zu Branch-and-Bound: Minimierungsprobleme
        • Branch-and-Bound am Minimierungsproblem
          • Einleitung zu Branch-and-Bound am Minimierungsproblem
          • Festlegung der unteren/oberen Schranke, Prioritätenfestlegung
          • Entscheidungsbaum für das Minimierungsproblem
          • Beispiel: Branch and Bound am Minimierungsproblem
        • Branch-and-Bound am Minimierungsproblem (optimale Lösung)
          • Einleitung zu Branch-and-Bound am Minimierungsproblem (optimale Lösung)
          • Beispiel: Branch and Bound am Minimierungsproblem (optimale Lösung) 1
          • Beispiel: Branch and Bound am Minimierungsproblem (optimale Lösung) 2
          • Beispiel: Branch and Bound am Minimierungsproblem (optimale Lösung) 3
      • Branch-and-Bound: Knapsack-Problem
      • Branch-and-Bound: Knapsack-Problem (Alternative)
    • Verfahren der vorsichtigen Annäherung
  • Kombinatorische Optimierung
    • Einleitung zu Kombinatorische Optimierung
    • Traveling-Salesman-Problem
      • Einleitung zu Traveling-Salesman-Problem
      • Vollständige Enumeration
        • Einleitung zu Vollständige Enumeration
        • Beispiel: Vollständige Enumeration (Reduktion der Matrix)
        • Beispiel: Vollständige Enumeration (Anwendung des Verfahrens)
      • Heuristische Verfahren
        • Einleitung zu Heuristische Verfahren
        • Verfahren des besten Nachfolgers
          • Einleitung zu Verfahren des besten Nachfolgers
          • Verfahren des besten Nachfolgers (Ausgangsmatrix)
          • Verfahren des besten Nachfolgers (reduzierte Matrix)
        • Verfahren der sukzessiven Einbeziehung von Stationen
          • Einleitung zu Verfahren der sukzessiven Einbeziehung von Stationen
          • Einbeziehung von Stationen (Ausgangsmatrix)
      • Entscheidungsbaumverfahren
        • Einleitung zu Entscheidungsbaumverfahren
        • Begrenzte Enumeration
        • Branch-and-Bound Verfahren am Traveling-Salesman-Problem
          • Einleitung zu Branch-and-Bound Verfahren am Traveling-Salesman-Problem
          • Branch-and-Bound (TSP): 1. Iteration
          • Branch-and-Bound (TSP): Weitere Iterationen
    • Fertigungsablaufplanung
      • Einleitung zu Fertigungsablaufplanung
      • Flow-Shop-Probleme
      • Johnson-Algorithmus
  • Nichtlineare Optimierung
    • Grundlagen der nichtlinearen Optimierung
      • Einleitung zu Grundlagen der nichtlinearen Optimierung
      • Konkave und konvexe Funktionen
        • Einleitung zu Konkave und konvexe Funktionen
        • Beispiel: Nachweis konvexer/konkaver Funktionen auf direktem Weg
        • Beispiel: Nachweis konvexer/konkaver Funktionen über Differenzierbarkeit
    • Nichtlineare Optimierung unter Nebenbedingungen
      • Einleitung zu Nichtlineare Optimierung unter Nebenbedingungen
      • Methode der zulässigen Richtung
        • Einleitung zu Methode der zulässigen Richtung
        • Beispiel: Methode der zulässigen Richtungen (1. Iteration)
        • Beispiel: Methode der zulässigen Richtungen (2. Iteration)
        • Beispiel: Methode der zulässigen Richtungen (3. Iteration)
  • 61
  • 7
  • 25
  • 64
einmalig 39,00
umsatzsteuerbefreit gem. § 4 Nr. 21 a bb) UStG
Online-Kurs Top AngebotTrusted Shop

Unsere Nutzer sagen:

  • Phillipp Grünewald

    Phillipp Grünewald

    "ingenieurkurse.de hat mir besonders bei den Mathe-Themen geholfen. Super Erklärungen!"
  • Martina Pfeiffer

    Martina Pfeiffer

    "Klasse für den Einstieg ins Ingenieurstudium."
  • Marcel Eberhardt

    Marcel Eberhardt

    "Ich mache mir dank euch keine Sorgen für die Prüfungen. Danke!"

NEU! Sichere dir jetzt die perfekte Prüfungsvorbereitung und spare 10% bei deiner Kursbuchung!

10% Coupon: lernen10

Zu den Online-Kursen