Skip to main content
main-content

Über dieses Buch

Das Buch führt anwendungsorientiert in die Optimization Programming Language (OPL) zur Modellierung linearer und ganzzahliger linearer Optimierungsprobleme im Rahmen des IBM ILOG CPLEX Optimization Studio ein. Es beinhaltet zehn aufeinander aufbauende Lektionen, ergänzt um zahlreiche Aufgaben und Anwendungsstudien.

Das Buch richtet sich an Lehrende und Studierende der Betriebswirtschaftslehre mit quantitativer Ausrichtung (Operations Research), (Wirtschafts-)Informatiker, (Wirtschafts-)Mathematiker und Wirtschaftsingenieure und kann an Universitäten und Hochschulen in entsprechenden Vorlesungs- und Kursangeboten eingesetzt werden. Zudem eignet es sich zum Selbststudium für Praktiker, die mit der Modellierung und Optimierung von Planungs- und Entscheidungsproblemen befasst sind und einen fundierten Einstieg in die Software benötigen.

Über die buchbegleitende Website sind unter anderem Aufgabenlösungen und sämtliche Programm-Codes abrufbar: www.opl-buch.de

Inhaltsverzeichnis

Frontmatter

Lektionen

Frontmatter

Kapitel 1. Einleitung

Zusammenfassung
Big Data, Künstliche Intelligenz, Business Analytics, Data Science, Industrie 4.0 – es gibt wohl kaum ein größeres Unternehmen, das sich heute nicht mit diesen oder verwandten Themen befasst, um in der „digitalen Welt“ wettbewerbsfähig zu bleiben oder gar gänzlich neuartige Geschäftsmodelle umzusetzen. Alle diese Themen sind eng damit verbunden, dass Unternehmen nach neuen Wegen suchen, die immensen Datenmengen, die heute zur Verfügung stehen, gewinnbringend im Hinblick auf unternehmerische Entscheidungen auszunutzen und dabei möglichst „intelligent“ und automatisiert vorzugehen. Und dabei sind alle Planungs- und Entscheidungsebenen – von strategisch bis operativ – wie auch sämtliche betriebliche Funktionsbereiche – seien es Unternehmensführung, Finanzen, Marketing oder Operations – betroffen.
Stefan Nickel, Claudius Steinhardt, Hans Schlenker, Wolfgang Burkart, Melanie Reuter-Oppermann

Kapitel 2. IBM ILOG CPLEX Optimization Studio

Zusammenfassung
Dieses Kapitel liefert eine Einführung in die grafische Entwicklungsumgebung (engl. Integrated Development Environment), welche die zentrale Komponente zur Modellentwicklung darstellt und im Folgenden auch als Studio (im engeren Sinne) bezeichnet wird. Es wird erläutert, wie CPLEX Optimization Studio auf einem Computer installiert und das Studio gestartet wird, welche grundlegenden Funktionalitäten und Teilkomponenten dort zur Verfügung stehen und wie man Projekte erstellt, Optimierungsmodelle hinzufügt und die eigentliche Optimierung durchführt. Nach dem Studium dieses Kapitels sollte die Software insoweit beherrschbar sein, dass alle Beispiele, die im vorliegenden Buch beschrieben sind, importiert bzw. nachimplementiert und ausgeführt werden können. Insofern ermöglicht dieses Kapitel kompakt einen schnellen und zielgerichteten Einstieg, deckt aber keineswegs alle Funktionalitäten des Studios ab.
Stefan Nickel, Claudius Steinhardt, Hans Schlenker, Wolfgang Burkart, Melanie Reuter-Oppermann

Kapitel 3. Der Aufbau einer Modell-Datei

Zusammenfassung
Wie bereits in Kapitel 2 beschrieben, erfolgt die Formulierung eines Optimierungsmodells in einer sogenannten Modell-Datei (Dateiendung .mod). In dieser wird das zu lösende Optimierungsproblem durch ein mathematisches Modell beschrieben. Zur Modellbeschreibung dient die ILOG-eigene Programmiersprache OPL.
Stefan Nickel, Claudius Steinhardt, Hans Schlenker, Wolfgang Burkart, Melanie Reuter-Oppermann

Kapitel 4. Zusammengesetzte Datentypen und zugehörige Sprachelemente

Zusammenfassung
Häufig liegen bei einer Problemstellung viele gleichartige Modellparameter vor. Durch deren Zusammenfassung mithilfe von zusammengesetzten Datentypen kann der Programmieraufwand deutlich reduziert und die Lesbarkeit des Programmcodes verbessert werden. Darüber hinaus lassen sich mit diesen fortgeschrittenen Datentypen leicht generische Formulierungen aufbauen.
Stefan Nickel, Claudius Steinhardt, Hans Schlenker, Wolfgang Burkart, Melanie Reuter-Oppermann

Kapitel 5. Einführung in ILOG Script

Zusammenfassung
OPL ist eine deklarative Modellierungssprache zur Definition von Optimierungsmodellen. Wie in den bisherigen Kapiteln dargestellt, werden hierfür etwa Datentypen, Einund Ausgabedaten und Entscheidungsvariablen definiert und beispielsweise durch Entscheidungsausdrücke, die Zielfunktion oder Nebenbedingungen zueinander in Beziehung gesetzt. Es werden jedoch keine Algorithmen, also Berechnungsvorschriften, definiert.
Stefan Nickel, Claudius Steinhardt, Hans Schlenker, Wolfgang Burkart, Melanie Reuter-Oppermann

Kapitel 6. Modellierung mit Tupeln

Zusammenfassung
Mit den in den bisherigen Kapiteln beschriebenen Sprachelementen können kleine bis mittelgroße OPL-Modelle aufgebaut werden, die auch eine generische Parametrisierung erlauben. Häufig müssen in praktischen Anwendungen jedoch sehr große Datenmengen verarbeitet werden, die durch zusammenhängende und komplexe Datentypen gekennzeichnet sind. Mit den Sprachelementen und Techniken, die im Folgenden vorgestellt werden, können grundsätzlich hunderttausende oder gar Millionen von Datensätzen verarbeitet werden.
Stefan Nickel, Claudius Steinhardt, Hans Schlenker, Wolfgang Burkart, Melanie Reuter-Oppermann

Kapitel 7. Trennung von Modell und Daten

Zusammenfassung
In den bisherigen Kapiteln wurden alle Datenelemente (bzw. Modellparameter) in der jeweiligen Modell-Datei zunächst deklariert und anschließend mit konkreten Werten initialisiert. Ein Modell kann dadurch generisch angelegt und mit unterschiedlichen Eingabedaten ausgeführt werden, ohne jede Zeile des Modells einzeln abändern zu müssen (siehe Modularisierung, Kapitel 3.1). Für größere Beispiele und vor allem für die Anwendung in der Praxis ist es oftmals notwendig, Modell und Daten voneinander zu trennen.
Stefan Nickel, Claudius Steinhardt, Hans Schlenker, Wolfgang Burkart, Melanie Reuter-Oppermann

Kapitel 8. Ausgewählte Funktionalitäten von OPL und CPLEX Optimization Studio

Zusammenfassung
Nachdem in den vorangegangenen Kapiteln die grundlegenden Sprachelemente von OPL eingeführt wurden, stehen nun drei weiterführende, spezifische Funktionalitäten von OPL bzw. dem CPLEX Optimization Studio im Fokus: das Arbeiten mit logischen Operatoren, die Umsetzung von abschnittsweise definierten Funktionen sowie die Ursachenforschung bei unlösbaren Modellen einschließlich deren möglicher Behebung.
Stefan Nickel, Claudius Steinhardt, Hans Schlenker, Wolfgang Burkart, Melanie Reuter-Oppermann

Kapitel 9. Ausgewählte Funktionalitäten von ILOG Script

Zusammenfassung
Aufbauend auf den Grundlagen der imperativen Programmierung mit ILOG Script aus Kapitel 5 wird in diesem Kapitel im Sinne von „Best Practices“ eine Auswahl weiterer fortgeschrittener Anwendungen von ILOG Script behandelt. Diese betreffen zum einen Möglichkeiten zur Ein- und Ausgabe von Daten – etwa zum Lesen und Schreiben von Dateien. Dabei wird insbesondere das Einlesen aus CSV-Dateien demonstriert.
Stefan Nickel, Claudius Steinhardt, Hans Schlenker, Wolfgang Burkart, Melanie Reuter-Oppermann

Kapitel 10. Ablaufsteuerung mit ILOG Script

Zusammenfassung
In den Kapiteln 5 und 9 wurde ausgeführt, wie ILOG Script innerhalb von Modell-Dateien eingesetzt werden kann, insbesondere um Aufgaben der Datenvor- und -nachbereitung durchzuführen. Doch die Einsatzmöglichkeiten von ILOG Script gehen erheblich darüber hinaus. So kann es verwendet werden, um komplexe Abläufe zu steuern und dabei ggf. mehrmals automatisiert die Lösung von Optimierungsmodellen anzustoßen sowie die erhaltenen Ergebnisse automatisiert weiterzuverarbeiten.
Stefan Nickel, Claudius Steinhardt, Hans Schlenker, Wolfgang Burkart, Melanie Reuter-Oppermann

Backmatter

Weitere Informationen

Premium Partner

    Bildnachweise