2016-04-07 8 views
-1

Ich möchte cplex .mod und .dat Datei zu glpk .mod und .dat (separate Modell-und Datendateien) mit einem beliebigen Open-Source-Solver konvertieren und dann das Modell mit verschiedenen Datendateien mit vorzugsweise glpsol kompilieren. Soweit ich weiß, bietet glpsol keinen Lesebefehl für opl cplex .mod-Dateien. Ich möchte nicht mps oder lp Dateien über oplrun exportieren und dann in glpk .mod Dateien konvertieren, da cplex nicht open source ist und lp/mps Formate Modell und Datendateien nicht separat konvertiert.Wie konvertiert man die Datei cplex * .mod in die Datei glpk * .mod auf der Kommandozeile?

+0

Haben Sie etwas versucht? konsultieren Sie zum Beispiel das [glpsol Handbuch] (https://en.wikibooks.org/wiki/GLPK/Using_GLPSOL). –

+0

ja, sicher. Da mein Modell sehr komplex ist, habe ich mich gefragt, ob ich es einfach über einen Solver in eine große .mod-Datei konvertieren kann. Cplex kann .mod- und .dat-Dateien in verschiedene Formate exportieren, aber leider gehören die Dateien .mpl .mod und .dat nicht dazu. Wie ich eine der großen Anforderungen erwähnte, die ich habe, ist es, mod und .dat Datei getrennt zu kompilieren, o.w. Ich würde einfach .lp- oder .mps-Dateien verwenden, die von glpsol oder einer ganzen Reihe anderer Löser lesbar sind. –

Antwort

1

Während die meisten Löser (zum Beispiel CPLEX und GLPK) verstehen (free-) mps oder ähnliche Dateien (enthält nur das reine Optimierungsproblem). Alle anderen Funktionen wie Datenbankverbindung, Ausgabefunktion oder getrennte Datendateien sind nur in der dedizierten Programmiersprache für Mathematik/Optimierung (wie OPL und GMPL) verfügbar.

Es ist zwar üblich, Einwegkonverter von einer mathematischen Programmiersprache zu mps oder verwandten zu haben - ich habe keine Import-/Exportfunktion oder Parser da draußen gesehen, die eine mathematische Programmiersprache in eine andere übersetzen können.

Ich denke, Sie müssen die Übersetzung von opl-Syntax zu gmpl-Syntax auf eigene Faust tun, um die Struktur und Funktionen zu enthalten. Da Cplex- und GLPK-Solver sich bei komplexen Problemen in der Leistung unterscheiden, überprüfen Sie bitte zuerst, ob Sie eine exportierte .mps-Datei in GLPK (in einer angemessenen Zeitspanne) lösen können, bevor Sie mit der Migration Ihres Modellcodes in eine andere Programmiersprache beginnen.

+0

Vielen Dank für Ihre Antwort, CPLEX beim Exportieren von MPS-Dateien aus dem Modell benötigt die zugehörige .dat-Datei und kombiniert sie zum Erstellen der .mps-Datei. Gibt es eine Möglichkeit, nur das Modell ohne Daten zu mps zu verdecken? –