Lineare Programme Flashcards

1
Q

kanonische Form LP

A

max c^T*x
Ax ≤ b
x ≥ 0

x: Entscheidungsvariable
A: Koeffizientenmatrix
b: rechte Seite
c^T: Zielfunktionskoeffizient

-> jedes LP kann in diese Form gebracht werden

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Gurobi Programm Grundstruktur

A
from gurobipy import *
 def solve (...):
   model = Model ( "Modellname" )
   model.modelSense = GRB.MINIMIZE
  # Variablen erzeugen :
   xKaufen = {}
     for speise in speisen :
       xKaufen [ speise ] = model . addVar ( obj = kosten [ speise ] , name = ( ’ x_ ’ + speise ))
   model.update()
   model.addConstr(#nebenbedingungen)
   model.optimize()
   return model
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Gurobi Variable definieren

A

xKaufen [ speise ] = model.addVar ( obj = kosten [ speise ] , name = ( ’ x_ ’ + speise ))

lb: untere Schranke der Variable, Standard: 0.0
ub: obere Schranke der Variable, Standard: GRB.INFINITY
obj: Zielfunktionskoeffizient der Variable, Standard: 0.0
name: Name der Variable

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Standardform LP

A

max c^T*x
Ax = b
x ≥ 0

x: Entscheidungsvariable
A: Koeffizientenmatrix
b: rechte Seite
c^T: Zielfunktionskoeffizient

Kann aus kanonischer Form durch Schlupfvariablen gewonnen werden.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Schlupfvariable

A

Wandelt eine Ungleichung in eine Gleichung um:

a+b≤c <=> a+b+s=c mit s≥0

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Vorgehen Simpex Algorithmus

A
  1. LP in die Standardform bringen und in Tabelle schreiben
  2. Zulässige Basis: Einheitsvektoren
  3. Optimalität: Einträge der obersten Zeile nicht-positiv
  4. Pivotelement: Pivotspalte(Spalte mit größtem Wert in der Zielfunktion) und
    Pivotzeile(Zeile mit dem kleinsten Wert ganz rechts, nachdem dieser durch den Spaltenwert geteilt wurde,
    wenn dieser denn größer als 0 ist, Ratiotest)
  5. Wir bringen unser Pivotelement auf den Wert 1 und die ganze Zeile soll ein Basisvektor werden, also nur die 1
    als Eintrag haben, also müssen elementare Zeilenoperationen angewandt werden.
  6. Der Zielfunktionswert kann oben rechts abgelesen werden, muss aber negiert werden
  7. Solange die oberste Zeile positiv ist, müssen die Schritte wiederholt werden
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Was ist wenn im Simplexalgorithmus beim Ratiotest nur negative Ergebnisse rauskommen?

A

Unbeschränktes LP

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

entartete Ecke

A

die Basis wird durch zu viele Ecken überbestimmt

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Wann ist die Basis eines Simplextableus nicht zulässig?

A
  • Falls die b-Werte (untere rechte spalte) nicht alle positiv sind.
  • Falls nicht alle Basisvektoren gegeben sind
  • Falls die Kostenwerte nicht null sind

Big-M:
- alle Zielfunktionswerte negativ, aber w ist noch Teil der Basis

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Basen eines Polyeders

A
  • LP auf Standardform bringen
  • Den Geraden die jew. Schlupfvariablen zuordnen
  • Bei der Basis einer Ecke mindestens 2 von den Schlupfvariablen der beteiligten Geraden weglassen
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Wann drehen sich beim Dualisieren die Vorzeichen um und wann nicht ?

A

max->min: Umdrehen
min->max: nicht Umdrehen

nur für die 0-Bedingung!

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Wann ist die gegebene, zulässige Lösung eines LPs optimal?

A

Die Lösung erfüllt die Gleichungen des primalen und dualen LPs mit Gleichheitszeichen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Gegeben: x* Vektor Lösung für primales LP; gesucht y* Vektor Lösung für Duales LP

A

BSP: x=(1,0,1)-> erste und dritte gleichung des dualen lps müssen mit gleichheit erfüllt sein; Gleichungssystem aufstellen und y´s rausrechnen.
Prüfen ob y
die letzte Nebenbedingung auch erfüllt

How well did you know this?
1
Not at all
2
3
4
5
Perfectly