Discrete optimization II - Cheatsheet.pdf

Discrete optimization II - Cheatsheet
Discrete optimization II - Cheatsheet Simplex-Algorithmus Definition: Simplex-Algorithmus: Verfahren zur Lösung linearer Optimierungsprobleme. Details: Startet in einer Ecke des zulässigen Bereichs, bewegt sich entlang der Kanten Ziel ist Minimierung oder Maximierung einer linearen Zielfunktion Benutzt Pivot-Operationen zur Verbesserung der Zielfunktion in jedem Schritt Erzeugt eine Folge von Basi...

© StudySmarter 2024, all rights reserved.

Discrete optimization II - Cheatsheet

Simplex-Algorithmus

Definition:

Simplex-Algorithmus: Verfahren zur Lösung linearer Optimierungsprobleme.

Details:

  • Startet in einer Ecke des zulässigen Bereichs, bewegt sich entlang der Kanten
  • Ziel ist Minimierung oder Maximierung einer linearen Zielfunktion
  • Benutzt Pivot-Operationen zur Verbesserung der Zielfunktion in jedem Schritt
  • Erzeugt eine Folge von Basislösungen: Jede Lösung entspricht einem Eckpunkt
  • Terminiert, wenn keine weitere Verbesserung möglich
  • Mathematische Formulierung: Maximiere \( c^T x \) unter den Nebenbedingungen \( Ax \leq b \) und \( x \geq 0 \)

Dualitätstheorie

Definition:

Beziehung zwischen einem Optimierungsproblem (Primärproblem) und einem daraus abgeleiteten Problem (Dualproblem). Dualitätstheorie hilft zur Analyse und Lösung des ursprünglichen Problems.

Details:

  • Jedes lineare Programm (LP) hat ein zugehöriges Dualproblem.
  • Primal LP: \[\min~c^T x \quad\text{s.t.}\quad Ax \geq b, x \geq 0\]
  • Dual LP: \[\max~b^T y \quad\text{s.t.}\quad A^T y \leq c, y \geq 0\]
  • Lösungen des Dualproblems liefern Schranken für das Primärproblem.
  • Schwache Dualität: \[c^T x \ge b^T y\]
  • Starke Dualität: Optimallösungen von Primal und Dual haben denselben Zielfunktionswert.

Branch-and-Bound Verfahren

Definition:

Ein Verfahren zur Lösung von kombinatorischen Optimierungsproblemen durch systematisches Durchsuchen des Lösungsraums. Es vermindert die Menge der zu durchsuchenden Lösungen durch Berechnung von Schranken.

Details:

  • Grundidee: Aufteilung des Problems in Teilprobleme (Branching) und Berechnung von Schranken (Bounding), um Teile des Lösungsraums auszuschließen.
  • Bounding: Berechnung einer oberen und/oder unteren Schranke für die Kosten der Lösungen in einem Teilraum.
  • Branching: Aufteilung des Problems in mehrere Teilprobleme durch Entscheidungsvariablen.
  • Verwendung von Heuristiken zur Verbesserung der Effizienz.
  • Kann angewendet werden auf Probleme wie das Rucksackproblem, das Traveling Salesman Problem und die Ganzzahlige Lineare Programmierung.

Cutting-Plane Verfahren

Definition:

Verfahren zur Lösung von Ganzzahloptimierungsproblemen durch Hinzufügen von Ungleichungen (Schnittebenen) zu einem LP-Relaxationsproblem.

Details:

  • Ausgangspunkt: LP-Relaxation des Ganzzahlproblems.
  • Schnitt: Eine Ungleichung, die lösungsausschließende Teile des LP-Polyeders wegschneidet, aber alle ganzzahligen Punkte behält.
  • Iterativer Prozess: wiederholtes Lösen des veränderten LP-Problems und Hinzufügen neuer Schnittebenen.
  • Beispiel für Schnitte: Gomory-Schnitte.
  • Ziel: Komplettes Ausschließen von nicht-ganzzahligen Lösungen durch Schnittebenen.
  • Algorithmus endet, wenn eine ganzzahlige Lösung gefunden ist oder keine weiteren brauchbaren Schnitte existieren.

Ford-Fulkerson Algorithmus

Definition:

Ford-Fulkerson Algorithmus zur Bestimmung des maximalen Flusses in einem Flussnetz.

Details:

  • Verwendet Tiefensuche (DFS) oder Breitensuche (BFS)
  • Startet mit einem Anfangsfluss von 0: \( f(u, v) = 0 \)
  • Solange es einen augmentierenden Pfad gibt, erhöhe den Fluss
  • Für jeden Knoten u und v: \( c_f(u, v) = c(u, v) - f(u, v) \) mit Restkapazität \( c_f \)
  • Korrigiere Flüsse entlang des augmentierenden Pfads
  • Maximaler Fluss erreicht, wenn kein augmentierender Pfad existiert
  • Kapazitätsbeschränkungen: \( f(u, v) \leq \ c(u, v) \)

Min-Cut Max-Flow Theorem

Definition:

Min-Cut Max-Flow Satz: Maximale Fluss in einem Netzwerk = minimale Kapazität eines Schnittes.

Details:

  • Flussnetzwerk: Graph G(V, E) mit Quelle s und Senke t
  • Flussfunktion (f): f(u,v) gibt Fluss von u nach v an
  • Kapazität (c): c(u,v) maximale Flussmenge von u nach v
  • Max-Fluss: Maximiere \sum_{(s,v) \in E} f(s,v)
  • Min-Cut: Trenne V in V_s und V_t, so dass s \in V_s und t \in V_t und minimiere \sum_{(u,v) \in E} c(u,v)
  • Satz: Maximaler Fluss = Kapazität des minimalen Schnitts

Genetische Algorithmen

Definition:

Evolutionäre Optimierungsverfahren, die natürliche Selektion und genetische Mechanismen simulieren.

Details:

  • Bevölkerung (Population) aus potenziellen Lösungen
  • Fitnessfunktion: Bewertet Lösungsqualität
  • Selektion: Auswahl der besten Individuen
  • Kreuzung (Crossover): Kombiniert Merkmale von Elternlösungen
  • Mutation: Zufällige Änderungen zur Diversifikation
  • Ablauf: Initialisierung, Iteration über Generationen mit Selektion, Kreuzung, Mutation, Bewertung, Eventuelles Abbrechen

NP-vollständige Probleme

Definition:

NP-vollständige Probleme sind eine Klasse von Problemen in der Komplexitätstheorie, die sowohl in NP liegen als auch NP-hart sind.

Details:

  • Problem ist in NP: Lösung kann in polynomieller Zeit verifiziert werden.
  • NP-hart: Jedes Problem in NP kann in polynomieller Zeit auf dieses Problem reduziert werden.
  • Beispiele: SAT, 3-SAT, CLIQUE, HAMILTON-KREIS
  • Keine bekannte Methode, um NP-vollständige Probleme in polynomieller Zeit zu lösen.
  • Falls ein NP-vollständiges Problem in polynomieller Zeit gelöst wird (P = NP), können alle Probleme in NP in polynomieller Zeit gelöst werden.
Sign Up

Melde dich kostenlos an, um Zugriff auf das vollständige Dokument zu erhalten

Mit unserer kostenlosen Lernplattform erhältst du Zugang zu Millionen von Dokumenten, Karteikarten und Unterlagen.

Kostenloses Konto erstellen

Du hast bereits ein Konto? Anmelden