LP Optimierung < Mathe-Software < Mathe < Vorhilfe
|
Guten Tag!
Ich habe mal eine Frage betreffend der Optimierungssoftware Excel Solver und GLPK.
Ich habe ein LP Modell, welches ich in GLPK löse und mir Schattenpreise ausgeben lasse. Diese benötige ich um in einer Simulationsumgebung weiter mit diesen Schattenpreisen rechnen zu können.
Jetzt will ich meine LP Formulierung die Ausgabe der Schattenpreise in Excel Solver überprüfen.
Ich habe bei beiden denselben Profit raus und auch sonst ist die Strukur der Lösung gleich, bloß bei einem Schattenpreis gibt Excel Solver einen um eine Einheit höheren Wert aus als GLPK.
Meine Frage bezieht sich darauf, ob Excel Solver vielleicht anders die Schattenpreise rundet oder wie so etwas zustande kommen kann, da sonst die Struktur der Lösung exakt dieselbe ist und somit ein Modellierungsfehler nicht da sein kann.
Über eine Antwort wäre ich dankbar.
Mit freundlichen Grüßen
"Optimierer"
Ich habe diese Frage auch in folgenden Foren auf anderen Internetseiten gestellt:
http://www.delphi-forum.de/topic_Optimierung+Excel+Solver+vs+GLPK_100653.html
http://matheplanet.com/default3.html?topic=142850=110
(dort kam bisher noch keine zufriedenstellende Antwort)
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 10:15 Fr 30.07.2010 | Autor: | Optimierer |
Hallo,
vielen Dank für die schnelle Antwort.
Die Schattenpreise sind 79 und 80 bei GLPK und 79 und 81 bei Excel Solver. Allerdings lass ich mir bei GLPK erst die Schattenpreise in der Simulationsumgebung ausgeben und nicht direkt von GLPK.
Der Zielfunktionswert, hier geht es um den Profit, ist derselbe und die Zielfunktionswerte stimmen auch überein, das habe ich mit Struktur der Lösung gemeint.
Könnte es entweder sein, dass es mehrere optimale Lösungen gibt und die beiden Verfahren zwei davon wählen?
Oder könnten Rundungsfehler dafür verantwortlich sein? Könnten die Herangehensweisen unterschiedlich sein?
Ich würde mal sagen, dass die beiden Modelle korrekt abgebildet wurden, da ZF-Wert und die Entscheidungsvariablen identisch sein oder?
Was meinst du jetzt dazu?
Viele Grüße
Optimierer
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 15:52 Fr 30.07.2010 | Autor: | piet.t |
Hallo,
> Der Zielfunktionswert, hier geht es um den Profit, ist
> derselbe und die Zielfunktionswerte stimmen auch überein,
> das habe ich mit Struktur der Lösung gemeint.
Ok, das heisst also erst einmal, dass beide solver die gleiche "ecke" des Simplex finden.
> Könnte es entweder sein, dass es mehrere optimale
> Lösungen gibt und die beiden Verfahren zwei davon wählen?
Ja, das ist gerade das, was ich mit "degenerierter Lösung" gemeint habe. Beim Simplex-Algorithmus wird ja jede mögliche Lösung durch eine Basis beschrieben. Wenn jetzt bei der optimalen Lösung eine Basisvariable einen Wert besitzt, der genau auf der Grenze des zulässigen Bereichs liegt, dann gibt es noch eine weitere Basis, so dass sowohl der Zielfunktionswert als auch die Werte aller Variablen gleich sind - nur die Schattenpreise und reduzierten Kosten können anders sein.
Um festzustellen, ob das hier der Fall ist müsste man sich von den solvern ausgeben lassen, welche Varliablen in der Basis liegen und welche nicht - dann könnte man die Basen vergleichen.
> Oder könnten Rundungsfehler dafür verantwortlich sein?
Wenn die Ausgabe der Programme ohne Nachkommastellen erfolgt: gut möglich.
> Könnten die Herangehensweisen unterschiedlich sein?
Kleinere unterschiede in den verwendeten Algorithmen sind sehr wahrscheinlich, aber bis auf den Fall der degenerierten Lösung sollten beide im wesentlichen zum selben Ergebnis kommen.
> Ich würde mal sagen, dass die beiden Modelle korrekt
> abgebildet wurden, da ZF-Wert und die
> Entscheidungsvariablen identisch sein oder?
Würde ich auch sagen.
Gruß
piet
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 13:24 Sa 31.07.2010 | Autor: | Optimierer |
Ok, vielen Dank für die Antwort.
Ich werde die Schattenpreise jetzt so verwenden, wie sie GLPK ausgibt.
Viele Grüße
Optimierer
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 14:20 Fr 13.08.2010 | Autor: | matux |
$MATUXTEXT(ueberfaellige_frage)
|
|
|
|