Laufzeit von CPLEX-Modellen verbessern

Wissensbeitrag

IBM ILOG CPLEX bietet einem die Möglichkeit, mit individuellen mathematischen Modellen viele Arten von Problemstellungen zu simulieren und zu optimieren. Der Marktführer in diesem Bereich zeichnet sich durch eine besonders hohe Performanz aus und ist in der Lage, auch Modelle mit Millionen von Variablen und Bedingungen zu lösen.

Grenzen der linearen Optimierung

Die Laufzeit wird allerdings durch die Anzahl von Variablen negativ beeinflusst, die ganzzahlig sein müssen. Für diese MIP-Modelle (Mixed Integer Programming) müssen spezielle Algorithmen wie z.B. Branch & Bound bzw. Branch & Cut verwendet werden. Dazu wird die Ganzzahligkeitsbedingung zunächst ignoriert, wodurch das Modell sehr schnell gelöst werden kann. Allerdings können dabei natürlich auch rationale Zahlen als Ergebnis herauskommen. Für diese Variablen werden schrittweise weitere Bedingungen hinzugefügt und das Modell wird erneut gelöst. Dies wiederholt sich so lange, bis alle Variablen schließlich ganzzahlig sind.

Zeitersparnis durch CPLEX-Standardfunktionen

Abhängig davon, wie viele Iterationen dafür nötig sind, dauert es natürlich entsprechend lange, das Optimum des Modells zu finden. Die Laufzeit lässt sich allerdings verkürzen, wenn man eine geringere Lösungsqualität akzeptiert. Ist Beispielweise der optimale Zielfunktionswert (ohne Berücksichtigung der Ganzzahligkeitsbedingung) 10, die beste bisher gefundene Lösung mit ganzen Zahlen 9, so ergibt sich eine Differenz von 10%.

CPLEX bietet für diesen Fall die Möglichkeit, diesen Parameter vorher einzustellen, dass die Suche bei einer bestimmten prozentualen Differenz beendet wird und die beste bisher gefundene Lösung angezeigt wird. Außerdem lässt sich einstellen, dass die Suche nach einer festgelegten Zeit beendet wird, unabhängig von der Lösungsqualität. Weitere Parameter ermöglichen es, den genutzten Arbeitsspeicher und die Anzahl der verwendeten CPU-Kerne festzulegen, um CPLEX perfekt an die Arbeitsumgebung anzupassen.

Zeitersparnis durch eigene Algorithmen

Eine andere Möglichkeit besteht darin, das Modell in kleinere Teilmodelle zu unterteilen und diese einzeln zu lösen. Die dadurch berechnete Lösung ist im Allgemeinen kein globales Optimum (es unterscheidet sich also von dem Wert, den man herausbekommen hätte, wenn man das komplette Modell gelöst hätte), kann aber die Berechnung erheblich beschleunigen. Wenn die dadurch erreichte Lösungsqualität ausreicht, ist dies also ein ernstzunehmender Ansatz.

Strategische Produktionsplanung

Im vorliegenden Fall wurden wir von einem Unternehmen beauftragt, diesen Ansatz mit ILOG CPLEX zu realisieren. Eine Produktionsplanung stützte sich auf zwölf aufeinanderfolgende Zeitabschnitte. Da es zu unperformant war, dieses Modell komplett zu optimieren, wurden die Zeitabschnitte aufgeteilt. Zunächst wurden die Zeitabschnitte 1-4 optimiert. Von dieser Lösung wurden dann die Abschnitte 1-2 als „optimal“ angesehen und als konstant gesetzt. Danach wurden die Abschnitte 3-6 optimiert. Wieder wurden die ersten beiden Abschnitte als „optimal“ angenommen, sodass nun die Zeitabschnitte 1-4 fix waren. Es folgte die Optimierung über die Abschnitte 5-8, und wurde entsprechend fortgesetzt, bis schließlich das komplette Modell optimiert war.

Die Realisierung mit ILOG OPL und ILOG Script

Umsetzen lässt sich dies über eine scriptbasierte Modellierung. Zunächst wird in gewohnter Weise ein Modell entwickelt, das die komplette Fragestellung optimieren könnte. Als nächstes wird ein main-Modell entwickelt, in dem dann das Scripting genutzt wird. Dieses ruft das Optimierungsmodell auf und befüllt es mit Daten. Außerdem lässt sich dort auch festlegen, wie obere und untere Schranken für Variablen lauten sollen.

Wenn also schon ein Modell gelöst wurde, lassen sich innerhalb des Scriptings diese Lösungen auslesen, und einige davon als gleichzeitige obere und untere Schranken für einige Variablen festlegen; somit wird die Variable festgesetzt und die Anzahl der weiteren zu berechnenden Variablen wird reduziert. Ein interner Counter kann dabei die Iterationen mitzählen und abhängig davon immer weitere Variablen festlegen, bis am Ende das komplette Zeitfenster optimiert wurde.

Fazit

Selbstverständlich kann dieser Ansatz auch mit den Parametern für Lösungsqualität und Rechenzeit kombiniert werden. Somit bietet CPLEX trotz der hohen Performanz die Möglichkeit, mit eigenen Algorithmen die Optimierung noch weiter zu beschleunigen, bis die gewünschte Laufzeit erreicht wird.

Wissen

Laufzeit von CPLEX-Modellen verbessern

IBM ILOG CPLEX bietet einem die Möglichkeit, mit individuellen mathematischen Modellen viele Arten von Problemstellungen zu simulieren und zu optimieren. Dieser Artikel erklärt, wie sich die Laufzeit dieser Modelle verlängern lässt.

Geschäftsoptimierung
Wissen

Geschäftsoptimierung mit mathematische Berechnungen

In mathematischen Optimierungsmodellen für Geschäftsprobleme hängt die Performance oft davon ab, ob das zugrunde gelegte Modell linear ist. Der heutige Blogartikel erklärt das Vorgehen.

Geschäftsoptimierung
Wissen

Geschäftsoptimierung mit mathematische Berechnungen

In mathematischen Optimierungsmodellen für Geschäftsprobleme hängt die Performance oft davon ab, ob das zugrunde gelegte Modell linear ist. Der heutige Blogartikel erklärt das Vorgehen.

Boston Consulting Group Logo
Referenz

IBM ILOG CPLEX als Ergänzung zu MATLAB

Die X-INTEGRATE besitzt tiefgehendes Wissen in der individuellen Modellerstellung für IBM ILOG CPLEX sowie in der Integration mit anderen Applikationen und Lösungen. Die BCG hat auf diese Expertise zurückgegriffen und in kurzer Zeit MATLAB durch IBM ILOG CPLEX erweitert.

Boston Consulting Group Logo
Referenz

IBM ILOG CPLEX als Ergänzung zu MATLAB

Die X-INTEGRATE besitzt tiefgehendes Wissen in der individuellen Modellerstellung für IBM ILOG CPLEX sowie in der Integration mit anderen Applikationen und Lösungen. Die BCG hat auf diese Expertise zurückgegriffen und in kurzer Zeit MATLAB durch IBM ILOG CPLEX erweitert.

Boston Consulting Group Logo
Referenz

IBM ILOG CPLEX als Ergänzung zu MATLAB

Die X-INTEGRATE besitzt tiefgehendes Wissen in der individuellen Modellerstellung für IBM ILOG CPLEX sowie in der Integration mit anderen Applikationen und Lösungen. Die BCG hat auf diese Expertise zurückgegriffen und in kurzer Zeit MATLAB durch IBM ILOG CPLEX erweitert.

Boston Consulting Group Logo
Referenz

IBM ILOG CPLEX als Ergänzung zu MATLAB

Die X-INTEGRATE besitzt tiefgehendes Wissen in der individuellen Modellerstellung für IBM ILOG CPLEX sowie in der Integration mit anderen Applikationen und Lösungen. Die BCG hat auf diese Expertise zurückgegriffen und in kurzer Zeit MATLAB durch IBM ILOG CPLEX erweitert.

Wissen

CPLEX 12.6 ist da

IBM hat soeben die neueste Version von ILOG CPLEX STUDIO herausgegeben, mittlerweile handelt es sich um die Version 12.6. Wie üblich wurden letztes Jahr, mit CPLEX 12.5, neue Funktionen eingeführt, während die Version 12.5.1 einige Monate später hauptsächlich Performanceoptimierungen lieferte.

Wissen

CPLEX 12.6 ist da

IBM hat soeben die neueste Version von ILOG CPLEX STUDIO herausgegeben, mittlerweile handelt es sich um die Version 12.6. Wie üblich wurden letztes Jahr, mit CPLEX 12.5, neue Funktionen eingeführt, während die Version 12.5.1 einige Monate später hauptsächlich Performanceoptimierungen lieferte.

Gleichgewicht zwischen Zeit, Kosten und Qualität
Wissen

Individuelle Fahrplanoptimierung mit IBM ILOG CPLEX

Bei Supply Chain-Fragestellungen kann es vorkommen, dass einem die ILOG Supply Chain-Produkte wie LogicNet Plus XE und Transportation Analyst für die eigenen Bedürfnisse unpassend erscheinen. Für diesen Fall bietet ILOG CPLEX eine Alternative.

Gleichgewicht zwischen Zeit, Kosten und Qualität
Wissen

Individuelle Fahrplanoptimierung mit IBM ILOG CPLEX

Bei Supply Chain-Fragestellungen kann es vorkommen, dass einem die ILOG Supply Chain-Produkte wie LogicNet Plus XE und Transportation Analyst für die eigenen Bedürfnisse unpassend erscheinen. Für diesen Fall bietet ILOG CPLEX eine Alternative.

ILOG Optimization
Technologie

ILOG Optimization

ILOG CPLEX und ILOG CP Optimizer bieten Ihnen die Möglichkeit, in kürzester Zeit verschiedene Simulationen für mögliche Entscheidungen durchzuführen. Dabei ist CPLEX vor allem für lineare Modelle geeignet, während CP Optimizer generelle Constraint-Programming-Modelle löst.

ILOG Optimization
Technologie

ILOG Optimization

ILOG CPLEX und ILOG CP Optimizer bieten Ihnen die Möglichkeit, in kürzester Zeit verschiedene Simulationen für mögliche Entscheidungen durchzuführen. Dabei ist CPLEX vor allem für lineare Modelle geeignet, während CP Optimizer generelle Constraint-Programming-Modelle löst.

ILOG Optimization
Technologie

ILOG Optimization

ILOG CPLEX und ILOG CP Optimizer bieten Ihnen die Möglichkeit, in kürzester Zeit verschiedene Simulationen für mögliche Entscheidungen durchzuführen. Dabei ist CPLEX vor allem für lineare Modelle geeignet, während CP Optimizer generelle Constraint-Programming-Modelle löst.

ILOG Optimization
Technologie

ILOG Optimization

ILOG CPLEX und ILOG CP Optimizer bieten Ihnen die Möglichkeit, in kürzester Zeit verschiedene Simulationen für mögliche Entscheidungen durchzuführen. Dabei ist CPLEX vor allem für lineare Modelle geeignet, während CP Optimizer generelle Constraint-Programming-Modelle löst.

Wissen

Optimierung der Auftragsbearbeitung

Durch eine Optimierung der Auftragsbearbeitung können Unternehmen ihre Ressourcen schonen und ihren Gewinn steigern. Dieser Artikel zeigt, wie man mit SAP APO und IBM ILOG CPLEX beispielsweise Produktionswege optimieren kann.

Wissen

Optimierung der Auftragsbearbeitung

Durch eine Optimierung der Auftragsbearbeitung können Unternehmen ihre Ressourcen schonen und ihren Gewinn steigern. Dieser Artikel zeigt, wie man mit SAP APO und IBM ILOG CPLEX beispielsweise Produktionswege optimieren kann.

Geschäftsoptimierung
Wissen

Dynamische Anpassung an Absatzmärkte - Teil 2

Mathematische Optimierung ist ein valider Lösungsansatz für Zuordnungsprobleme. Der zweite Teil der Blogserie beweist dies mit einem Praxisbeispiel.

Geschäftsoptimierung
Wissen

Dynamische Anpassung an Absatzmärkte - Teil 2

Mathematische Optimierung ist ein valider Lösungsansatz für Zuordnungsprobleme. Der zweite Teil der Blogserie beweist dies mit einem Praxisbeispiel.