Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
LogisticsLab 4.0 – Handbuch 1
LogisticsLab
Version 4.0
April 2016
Handbuch
Mike Steglich und Dieter Feige
LogisticsLab 4.0 – Handbuch 2
Inhaltsverzeichnis
1 Über LogisticsLab und Installation 3
2 Buch Logistik-Entscheidungen 4
3 Programmbedienung – allgemeingültige Funktionen 5 3.1 Programmoberfläche 5 3.2 Datei-Formate 5 3.3 Menufunktionen 7 3.4 Editierfunktionen 8
4 TPP – Transportprobleme 10 4.1 Programmoberfläche 10 4.2 Bereich Netzwerk 10 4.3 Eingabe der Problemdaten 12 4.4 Optimierung und Resultate 17
5 NWF – Netzwerkflussprobleme 19 5.1 Programmoberfläche 19 5.2 Bereich Netzwerk 19 5.3 Eingabe der Problemdaten 20 5.4 Optimierung und Resultate 23
6 TSP – Rundreiseprobleme 25 6.1 Programmoberfläche 25 6.2 Bereich Netzwerk 26 6.3 Eingabe der Problemdaten 27 6.4 Optimierung und Resultate 31
7 CPP – Briefträgerprobleme 33 7.1 Programmoberfläche 33 7.2 Bereich Netzwerk 34 7.3 Eingabe der Problemdaten 35 7.4 Optimierung und Resultate 37
8 VRP – Tourenplanungsprobleme 39 8.1 Programmoberfläche 39 8.2 Bereich Netzwerk 40 8.3 Eingabe der Problemdaten 41 8.4 Optimierung und Resultate 47
9 WLP – Warehouse-Location-Problem 51 9.1 Programmoberfläche 51 9.2 Bereich Netzwerk 52 9.3 Eingabe der Problemdaten 52 9.4 Optimierung und Resultate 57
10 STP – Kontinuierliche Median- und Zentren-Probleme 59 10.1 Programmoberfläche 59 10.2 Bereich Netzwerk 59 10.3 Eingabe der Problemdaten 61 10.4 Optimierung und Resultate 65
11 Autoren und Kontakt 68
LogisticsLab 4.0 – Handbuch 3
1 Über LogisticsLab und Installation LogisticsLab ist eine akademische Software für die Entscheidungsunterstützung in der Logistik. Diese
Software lässt sich als problemorientiertes Entscheidungsunterstützungssystem einordnen, mit dem
sich Transport-, Netzwerkfluss-, Rundfahrt-, Briefträger-, Tourenplanungs- und Standortprobleme in
unterschiedlichen Variationen modellieren und lösen lassen.
LogisticsLab wurde ursprünglich unter dem Namen EUS-Lehrsoftware von DIETER FEIGE für Lehrveran-
staltungen am Lehrstuhl für Betriebswirtschaftslehre, insbesondere Logistik an der Friedrich-Alexan-
der-Universität Erlangen-Nürnberg entwickelt und durch MIKE STEGLICH von der Technischen Hoch-
schule Wildau grundlegend überarbeitet und erweitert.
LogisticsLab wird unter der LogisticsLab Academic License bereitgestellt. Sie steht für eine akademi-
sche Nutzung (wie Forschung und Lehre bzw. für das Nachvollziehen von Fallstudien in akademischen
Lehrbüchern) kostenlos und ohne Gewährleistung zur Verfügung. Sie kann von der Website http://lo-
gisticslab.org heruntergeladen sowie auf einer unbegrenzten Anzahl von Computern installiert und
verwendet werden. Für andere Nutzungen ist eine kommerzielle, kostenpflichtige Lizenz notwendig,
die über die Projekt-Website angefragt werden kann.
Die Software ist unter Microsoft Windows lauffähig, wobei mindestens Windows 7 installiert sein
muss.
Zur Installation ist in einem ersten Schritt die Software von http://logisticslab.org als ZIP-Datei lo-
gisticsLab-v-X-Z.zip herunterzuladen. X-Z bezeichnet die Versionsnummer. Daraufhin ist
die ZIP-Datei zu entpacken. Eine spezielle Installation ist nicht notwendig, da die Software nach dem
Auspacken verwendet werden kann. Es bietet sich allerdings an, den Pfad LogisticsLab nach c:\Pro-
gramme\LogisticsLab (für Win32) oder nach c:\Programme (x86)\LogisticsLab (für
Win64) zu kopieren bzw. zu verschieben.
Nach der Installation befinden sich im Programmpfad hinsichtlich der unterstützten Gruppen logisti-
scher Entscheidungen eigenständige EXE-Dateien, die nachfolgend aufgeführt sind:
TPP.exe Transportation Problems,
NWF.exe Network Flow Problems,
TSP.exe Travelling Salesman Problems,
CPP.exe Chinese Postman Problems,
VRP.exe Vehicle Routing Problems,
WLP.exe Warehouse Location Problems,
CLP.exe Continuous Location Problems.
LogisticsLab 4.0 – Handbuch 4
2 Buch Logistik-Entscheidungen Zur Verwendung von LogisticsLab wird das Buch Logistik-Entscheidungen empfohlen:
Steglich, Mike, Dieter Feige und Peter Klaus: Logistik-Entscheidungen: Modellbasierte Entscheidungs-
unterstützung in der Logistik mit LogisticsLab, 2. vollständig überarbeitete und erweiterte Auflage,
De Gruyter Studium, Berlin et al. 2016.
Es enthält umfangreiche theoretische Beschreibungen der von LogisticsLab unterstützten logistischen
Entscheidungen und zugleich eine Vielzahl von Fallstudien, die mit LogisticsLab gelöst wurden.
Buchinhalt:
Logistische Entscheidungen sind durch eine hohe Komplexität geprägt, die aus einem globalisierten
und sich schnell verändernden Umfeld resultiert. Erfolgreiche Planung und Gestaltung von Transport-
und Logistiksystemen erfordert deshalb eine professionelle Entscheidungsunterstützung.
Dieses Buch hat die modellbasierte Entscheidungsunterstützung in der Logistik zum Gegenstand. Es
richtet sich an Dozenten und Studenten der Logistik bzw. des Operations Research sowie an erfahrene
Praktiker aus Unternehmen und öffentlichen Verwaltungen aus den Bereichen der Logistik und des
Supply Chain Managements. Neben den Grundlagen der modellbasierten Entscheidungsunterstützung
werden Probleme der Transport-, Routen- und Tourenplanung sowie der Standortbestimmung und
logistische Zuordnungsprobleme diskutiert.
Der Fokus liegt auf der starken Verknüpfung von theoretischen und praktischen Aspekten logistischer
Entscheidungen. Alle im Buch angeführten Fallbeispiele können mit der Logistik-Software LogisticsLab
und teilweise mit der in Excel integrierbaren Optimierungsumgebung SolverStudio/Cmpl nachvollzo-
gen werden. Mit LogisticsLab knüpfen die Autoren an die Idee interaktiver Entscheidungsunterstüt-
zungs¬systeme an, die Erfahrungen und Intuitionen menschlicher Entscheider mit den Möglichkeiten
computergestützter Modellierung und Optimierung systematisch zu verbinden.
Autoren:
PROF. DR. MIKE STEGLICH lehrt Allgemeine Betriebswirtschaftslehre, Quantitative Methoden und
Controlling an der Technischen Hochschule Wildau (FH). Zugleich beschäftigt er sich intensiv
mit der Entwicklung von Software zur mathematischen Modellierung und Optimierung in meh-
reren Open-Source-Projekten.
PROF. DR. DIETER FEIGE lehrte Computerbasierte Entscheidungsunterstützungssysteme in der Lo-
gistik und Entscheidungsunterstützungssysteme in der Logistik an der Friedrich-Alexander Uni-
versität Erlangen-Nürnberg.
PROF. PETER KLAUS, D.B.A./BOSTON UNIV. war Inhaber des Lehrstuhls für Betriebswirtschaftslehre,
insbesondere Logistik, an der Friedrich-Alexander-Universität Erlangen-Nürnberg. Er hält
heute Aufsichts- und Beiratsmandate in Unternehmen des Logistiksektors sowie mehrere
Gastprofessuren.
LogisticsLab 4.0 – Handbuch 5
3 Programmbedienung – allgemeingültige Funktionen 3.1 Programmoberfläche Der Aufbau der Oberfläche jedes Programmteils folgt einer einheitlichen Struktur, wie in Abb. 1 für
LogisticsLab/VRP exemplarisch dargestellt wird. Die Benutzeroberfläche besitzt neben den üblichen
Bedienelementen auf der linken Programmseite den Bereich Netzwerk mit der grafischen Darstellung
des Netzwerks bzw. der für dieses Netzwerk gefundenen Lösung und auf der rechten Seite einen Da-
tenbereich, in dem über Register einzelne Bereiche angewählt und mit den notwendigen Daten gefüllt
werden können. Generell erfolgt die interaktive Dateneingabe und -änderung im Datenbereich, wobei
es aber auch möglich ist, die Daten im Bereich Netzwerk interaktiv zu verändern. Der Netzwerk- und
der Datenbereich können über den ganzen Bildschirm aufgespannt werden. Dialogeingaben über die
Tastatur und grafische Aktionen mit der Maus sind gleichermaßen möglich und miteinander verknüpft.
Daten und Resultate werden als Textdateien gespeichert und können deshalb mit anderen Program-
men (z. B. Microsoft Excel) bearbeitet werden.
Abb. 1: Programmoberfläche
3.2 Datei-Formate Die Daten der Programme werden in Textdateien mit einem festgelegten Format gespeichert und ge-
laden. Zur Unterscheidung der Daten für die verschiedenen Programme erhalten die Dateien als Da-
teizusätze die Programmkurzbezeichnung, also: TPP, NWF, TSP, CPP, VRP, WLP und CLP.
Für die Datendateien im Textformat gelten folgende Grundsätze:
Die Datensätze bilden Textzeilen und werden mit dem üblichen Übergang zu einer neuen Zeile
abgeschlossen.
LogisticsLab 4.0 – Handbuch 6
Die einzelnen Datenfelder werden mit Tabulator getrennt.
Jede Datei beginnt mit dem Programmkürzel zur Datenidentifikation. Diesem Kennwort kön-
nen noch Angaben zu Datum und Uhrzeit auf der gleichen Zeile folgen.
An die Kennwortzeile schließt sich eine Kommentarzeile an, die frei beschrieben oder leer ge-
lassen werden kann.
Die Daten sind in Datenblöcke gegliedert. Jeder Datenblock beginnt mit einer Zeile, in der das
festgelegte Kennwort für die jeweiligen Daten stehen muss. Kennworte dürfen auf drei Zei-
chen abgekürzt werden. In den meisten Fällen folgen in einer anschließenden Zeile die Grö-
ßenangaben zu dem Datenblock (z. B. Anzahl der Zeilen und Spalten).
Das Dateiende wird mit dem Kennwort „EEE“ in einer letzten Datenzeile ausgedrückt.
Das Beispiel einer Datendatei für das Programm TPP ist in Abb. 2 zu sehen.
Die Datendateien können nach einer Dialogdateneingabe über die Menüfunktion Save Problem oder
Save Problem as ... erzeugt werden. Es ist aber auch möglich, die Daten mit einem Textprogramm oder
mit einer Tabellensoftware (z. B. Excel) zu erzeugen oder eine vorhandene Datei zu ändern. Abschlie-
ßend müssen die Daten als reine Textdatei mit Worttrennung durch Tabulatoren abgespeichert wer-
den. Die Resultate werden ebenfalls als Textdateien ausgegeben. Sie werden mit dem Dateinamen der
ursprünglichen Problemdaten bezeichnet und erhalten den Dateizusatz SOL. Eine Weiterverwendung
der Resultate in Texten, Tabellen und Präsentationen ist aufgrund des Textformates der Lösungsdatei
leicht möglich.
TPP 4.0 04.02.2016 15:16:06
TPP: Kapazitätsbeschränkungen
OPTIONS
ObjectiveSense MIN
KeyFigure VarCosts
Type Standard
SubjectTo Capacities
SOURCES
4
Nr Name x y Supply MinSupply
MaxSupply
1 A1 100,00 700,00 50 50
M
2 A2 100,00 500,00 70 70
M
3 A3 100,00 300,00 80 80
M
4 A4 100,00 100,00 100 100
M
DESTINATIONS
6
Nr Name x y Demand MinDemand
MaxDemand
1 B1 500,00 700,00 30 30
M
2 B2 500,00 580,00 20 20
M
3 B3 500,00 460,00 40 40
M
4 B4 500,00 340,00 24 24
M
5 B5 500,00 220,00 12 12
M
6 B6 500,00 100,00 18 18
M
COSTS
345 305 225 305 385 425
350 310 350 230 430 390
225 385 345 225 345 425
125 210 275 180 160 270
CAPACITIES
M M M M M M
M M M M M M
M M M M 4 6
15 10 20 12 0 0 EEE
Abb. 2: Beispiel für eine TPP-Datendatei
LogisticsLab 4.0 – Handbuch 7
3.3 Menufunktionen Die Menüs der einzelnen Programmpakete bestehen vereinheitlicht aus den Funktionsgruppen File,
Optimisation und Print. Jeder Menüpunkt lässt sich außerdem schnell über entsprechende Tastenkom-
binationen (Shortcuts) erreichen.
File – Dateifunktionen:
New Problem (Ctrl-N)
Anlegen eines neuen Problems. Es können neue Daten eingegeben werden. Bei einigen Pro-
grammen kann wahlweise ein Datengenerator gestartet werden, der nach eingegebenen Vor-
gaben zufallsbasierte Beispieldaten erzeugt.
Open Problem (Ctrl-O)
Laden der Daten eines Problems aus einer programmabhängigen Datendatei im Textformat.
Vorher werden automatisch evtl. vorhandene alte Daten gelöscht.
Save Problem (Ctrl-S)
Speichern der Problemdaten in eine Datei. Dabei wird entweder der Name benutzt, unter dem
die Daten zuvor geladen wurden, oder es wird nach einem neuen Dateinamen gefragt, falls die
Daten neu eingegeben wurden.
Save Problem as ... (Shift-Ctrl-S)
Vor dem Speichern der Daten wird immer nach einem neuen Dateinamen gefragt.
Save Solution as ... (Ctrl-L)
Speichern des Optimierungsresultats unter einem vorzugebenen Dateinamen in einer Textda-
tei mit der Endung .SOL.
Save Distance Matrix as ... (Ctrl-L)
Speichern der Distanzmatrix unter einem vorzugebenen Dateinamen in einer Textdatei mit der
Endung .MTX. Nicht in allen Programmpaketen vorhanden.
Exit (Ctrl-Q)
Beenden des Programms.
Optimisation – Optimierung:
Calculate Distance Matrix
Öffnen eines Startfensters für die Entfernungsberechnung. Nicht in allen Programmpaketen
vorhanden.
Start Optimisation
Öffnen eines Optimierungsstartfensters. Nach Eintrag von bestimmten Vorgaben wird der Op-
timierungslauf gestartet.
Print – Drucken
Die Resultate werden im Grafikfenster und in Textfenstern angezeigt und können ausgedruckt
werden. Dazu enthalten die einzelnen Fenster einen Druckbutton.
Die druckbaren Resultate werden auch im Menü Print angezeigt und können durch eine ent-
sprechende Wahl gestartet werden. In Abb. 3 wird beispielhaft das Druckmenü des Programms
TSP gezeigt.
LogisticsLab 4.0 – Handbuch 8
Abb. 3: Druckmenü LogistcsLab/TSP
Die wichtigsten Funktionen der Menüleiste lassen sich auch über die Symbolleiste erreichen (Abb. 4).
Abb. 4: Symbolleiste in LogisticsLab/TSP
3.4 Editierfunktionen Im Datenbereich eines Programms können Daten im Dialog eingegeben und geändert werden.
Für Eingaben in Tabellen kann zwischen spalten- und zeilenorientierter Eingabeunterstützung gewählt
werden.
Bei Wahl dieses Symbols springt der Cursor innerhalb einer Zeile von Spalte zu Spalte,
wenn die RETURN-Taste gedrückt wird.
Bei Anwahl dieses Symbols wechselt der Cursor innerhalb einer Spalte von Zeile zu
Zeile.
Unabhängig davon kann man mit Hilfe der Pfeiltasten oder der TABULATOR-Taste von Feld zu Feld
springen.
Im Bereich Netzwerk stehen eine Reihe von Interaktionsmöglichkeiten zur Verfügung, die sich in Ab-
hängigkeit vom gewählten Programm unterscheiden können. Abb. 5 zeigt die für die meisten Pro-
gramme typischen Grafikbuttons.
Abb. 5: Symbolleiste im Bereich Netzwerk in LogisticsLab/NWF
SaveDistanceMatrixas …
SaveSolutionas…
Optimise
CalculateDistanceMatrix
OpenProblem
SaveProblemas …
NewProblem
Deletearc
Addarc
Addnode
Deletenode
Selectnode
Selectarc
LogisticsLab 4.0 – Handbuch 9
Zur Nutzung einer dieser grafischen Interaktionsfunktionen muss zuerst der Button angewählt werden,
dann kann man die entsprechende Operation auf der Grafikfläche ausführen.
Select node – Knoten auswählen
Mit dieser Funktion lässt sich ein zu bearbeitender Knoten mit der Maus auswählen. Dabei
wird der Knoten und die erste von ihm ausgehende Kante rot markiert. Im Datenbereich Nodes
auf der rechten Fensterseite ist dieser Knoten ausgewählt und kann bearbeitet werden. Falls
zusätzlich noch eine Kante markiert ist, so wird diese im Datenbereich Arcs bzw. Arc editor
ebenfalls ausgewählt und kann bearbeitet werden.
Add node – Knoten anlegen
Ein beliebiger Knoten kann auf der Grafik frei (durch einen Mausklick) positioniert werden.
Gleichzeitig wird auf der rechten Seite im Datenbereich Nodes ein neuer Eintrag am Ende der
Liste erzeugt.
Delete node – Knoten löschen
Ein Knoten kann mit Hilfe der Maus gelöscht werden. Dabei werden auch alle Kanten entfernt,
die bei diesem Knoten beginnen oder enden. Der Knoten und die entsprechenden Kanten wer-
den auch in den Datenbereichen Nodes, Arcs und Arc editor entfernt.
Select arc – Kante auswählen
Diese Funktion vereinfacht die Bearbeitung einzelner Kanten. Während die Kante auf der Gra-
fikfläche markiert wird, erfolgen folgende Aktionen im Datenbereich:
o Im Datenbereich Nodes wird der markierte Anfangsknoten selektiert und kann bear-
beitet werden.
o Im Datenbereich Arc editor bzw. Arcs wird die Kante selektiert und kann geändert wer-
den.
Add arc – Kante erzeugen
Da eine Kante durch zwei Knoten bestimmt ist, muss mit der Maus auf der Grafikfläche zuerst
der Anfangsknoten und dann der Zielknoten selektiert werden. Die neue Kante und der An-
fangsknoten werden rot markiert. Die neue Kante kann im Datenbereich Arc editor bzw. Arcs
bearbeitet werden kann.
Delete arc – Kante löschen
Nach der Selektion des Pfeils wird die Kante sowohl auf der Grafikfläche als auch in den Da-
tenbereichen Nodes, Arcs und Arc editor entfernt.
Print – Grafik drucken
Druck des Graphen im Bereich Netzwerk.
LogisticsLab 4.0 – Handbuch 10
4 TPP – Transportprobleme LogisticsLab/TPP ist eine Software, mit der einstufige klassische Transportprobleme und Bottleneck-
Transportprobleme in unterschiedlichen Varianten (kapazitiert, nicht-kapazitiert, Single-Source, mit
Angebots- oder Bedarfsüberschuss etc.) gelöst werden können.1
4.1 Programmoberfläche Nach dem Starten des Programms erscheint das in Abb. 6 dargestellte Programmfenster, das in vier
Bereiche aufgeteilt ist:
1. Oben befindet sich die Menü- und Symbolleiste für allgemeine Funktionen.
2. Die linke Fensterhälfte dient der grafischen Darstellung des Problems.
3. Die rechte Fensterhälfte enthält den Datenbereich zur Bearbeitung der Problemdaten.
4. Am unteren Fensterrand befindet sich eine Statuszeile.
Abb. 6: Programmoberfläche – LogisticsLab/TPP
4.2 Bereich Netzwerk Der Bereich Netzwerk (Abb. 7) dient zur Visualisierung der eingegebenen Daten. Der Graph enthält
zwei verschiedene Arten von Knoten: source nodes – Versenderknoten (rot) und destination nodes –
Empfängerknoten (grün).
1 Zur Beschreibung dieser Probleme sei auf Steglich et al. (2016), S. 67 ff. verwiesen.
Menü
Bereich
Netzwerk
mit
graphischer
Darstellung
Grafik-
buttonsStatusleiste
Speedbuttons in logischer
BearbeitungsreihenfolgeDatenbereich mit
Registern
Tabellen
und
Texte
LogisticsLab 4.0 – Handbuch 11
Abb. 7: Bereich Netzwerk in LogisticsLab/TPP
Auf der Grafikfläche stehen folgende Operationen zur Verfügung, die über die Symbolleiste im unteren
Bereich gewählt werden können:
Abb. 8: Symbolleiste im Bereich Netzwerk in LogisticsLasb/TPP
Create source node – Versenderknoten anlegen
Ein Versenderknoten kann auf der Grafik frei (durch einen Mausklick) positioniert werden.
Gleichzeitig wird auf der rechten Seite im Datenbereich Sources ein neuer Eintrag am Ende der
Liste erzeugt. Hier können nun auch die Menge sowie die minimale und die maximale Kapazität
festgelegt werden.
Createsourcenode
Deletenode
SelectnodeSelectarc
Show/Hidenodedescription
Createdestination node
LogisticsLab 4.0 – Handbuch 12
Create destination node – Empfängerknoten anlegen
Ein Empfängerknoten kann auf der Grafik frei (durch einen Mausklick) positioniert werden.
Gleichzeitig wird auf der rechten Seite im Datenbereich Destinations ein neuer Eintrag am
Ende der Liste erzeugt. Hier können nun auch die Menge sowie die minimale und die maximale
Kapazität festgelegt werden.
Select arc – Zuordnung auswählen
Diese Funktion vereinfacht die Veranschaulichung der Parameter einzelner Zuordnungen.
Dazu wird der Pfeil mit seinem Anfangs- und Endknoten auf der Grafikfläche markiert. Auf der
rechten Seite werden:
o im Datenbereich Sources der Fluss des markierten Anfangsknoten farbig selektiert,
o im Datenbereich Destinations die Menge des markierten Endknoten farbig selektiert,
o im Datenbereich Variable costs das Feld, das dieser Zuordnung entspricht, farbig se-
lektiert,
o im Datenbereich Capacities das Feld, das dieser Zuordnung entspricht, farbig selektiert
und
o im Datenbereich Solution die Zeile dieser Zuordnung farbig markiert.
4.3 Eingabe der Problemdaten LogisticsLab/TPP dient zur Lösung von Transportproblemen, wobei in einem ersten Schritt ein neues
Problem zu generieren ist. Dazu kann der Menüeintrag File → New Problem oder die Schaltfläche New
Problem in der Symbolleiste verwendet werden.
Abb. 9: Anlegen eines Problems in LogisticsLab/TPP
Die Problemdaten werden nach Vorgabe vom Datengenerator erzeugt. Folgende Vorgaben sind erfor-
derlich:
Problemkommentar,
Anzahl der Versender und Empfänger,
durchschnittliche Angebotsmenge eines Versenders
durchschnittliche Bedarfsmenge eines Empfängers,
LogisticsLab 4.0 – Handbuch 13
durchschnittlicher Kostensatz für den Transport einer Mengeneinheit,
durchschnittliche sprungfixe Kosten auf einer Versender-Empfänger-Relation,
durchschnittliche Kapazität auf einer Versender-Empfänger-Relation.
Die Angaben zu den Mengen, Kosten und Kapazitäten können in einem Intervall von [-50 %,+50 %]
zufallsorientiert variiert oder als konstante Werte belassen werden. Wenn ein Feld nicht belegt wurde,
werden die entsprechenden Datenfelder nicht gefüllt.
Weiterhin kann angegeben werden, ob die Koordinaten der Knoten zufallsorientiert (randomly) oder
geordnet (regular) erzeugt werden. Bei einer geordneten Erzeugung erscheinen die Versender links
und die Empfänger rechts im Bereich Netzwerk.
Die erzeugten Daten können anschließend im Datenbereich manuell ergänzt oder abgeändert werden.
Der Datenbereich auf der rechte Seite des Programmfensters enthält fünf Register für die Eingabe und
Pflege der Problemdaten (Problem, Sources, Destinations, Variable costs, Fixed costs und Capacities)
und ein Register Solution für die Lösung.
Der Datenbereich Problem (Abb. 10) enthält nur ein Eingabefeld zur Aufnahme eines kurzen Kommen-
tars. Dieses Blatt enthält automatisch angezeigte Informationen zu den Problemdaten, den Bearbei-
tungszustand (grau hinterlegte Felder) und zur Lösung des Problems (gelb hinterlegte Felder).
Abb. 10: Datenbereich Problem in LogisticsLab/TPP
In den Datenbereichen Sources (Abb. 11) und Destinations (Abb. 12) werden sämtliche Angaben zu
den Knoten (Versender oder Empfänger) eingetragen. Man kann entweder zuerst die Anzahl der Kno-
ten eingeben oder jeden Knoten einzeln mit dem Button Add einfügen.
Beim Erzeugen eines neuen Knotens werden Standardwerte für die Menge (Voreinstellung: 0), untere
Kapazitätsgrenze (Voreinstellung: 0) und obere Kapazitätsgrenze (Voreinstellung: M) eingetragen.
Mit dem Button Delete wird der momentan selektierte Knoten gelöscht. Die gesamte Knotenliste kann
mit dem Button Print ausgedruckt werden.
Jeder Knoten (Versender oder Empfänger) wird durch einen eindeutigen Namen, eine X- und Y-Koor-
dinate, eine Angabe der Menge (Supply, Demand – Angebot,Nachfrage), eine minimale und maximale
Menge (Min. supply, Min. demand bzw. Max. supply, Max. demand ) und durch eine obere Kapazitäts-
grenze beschrieben. Die Spalte Flow stellt die durch die Optimierung gefundene Liefermengen und die
Spalte Gap die Differenz zwischen dem Angebot bzw. dem Bedarf und der Liefermenge dar.
LogisticsLab 4.0 – Handbuch 14
Ein Knoten lässt sich bearbeiten, wenn man mit der Maus die entsprechende Knotennummer selek-
tiert. Dabei wird der Eingabefokus auf das erste Feld des selektierten Knotens gelegt und außerdem
der Knoten auf der Grafik rot markiert.
Abb. 11: Datenbereich Sources in LogisticsLasb/TPP
Abb. 12: Datenbereich Destinations in LogisticsLasb/TPP
Im Datenbereich Variable costs (Abb. 13) kann für jede Zuordnung ein Kostensatz eingeben werden.
Dieser Kostensatz kann allerdings auch eine andere Bewertung, wie eine Distanz oder benötigte Zeit
zwischen einen Versender und einen Empfänger, darstellen.
Eine Sperrung von Zuordnungen kann man durch die Eingabe von M erreichen. Der Buchstabe M sym-
bolisiert einen sehr großen Kostenwert.
AnzahlVersender
Versender-bezeichnungen
Versender-koordinaten
AngebotsmengenMinimal- und
Maximalangebote
Lösung:ausgehendeMengen
Lösung:DifferenzzwischenAngebotund
Liefermenge
AnlegeneinesVersenders
LöscheneinesVersenders
Versenderlistedrucken
AnzahlEmpfänger
Empfänger-bezeichnungen
Empfänger-koordinaten
BedarfsmengenMinimal- und
Maximalbedarfe
Lösung:eingehendeMengen
Lösung:DifferenzzwischenBedarfund
Liefermenge
AnlegeneinesEmpfängers
LöscheneinesEmpfängers
Empfängerlistedrucken
LogisticsLab 4.0 – Handbuch 15
Abb. 13: Datenbereich Variable costs in LogisticsLasb/TPP
Verhalten sich die variablen Kosten zwischen den Versendern und den Empfängern proportional zu
den Distanzen, können sie anhand unterschiedlicher Distanzfunktionen berechnet werden. Das erfolgt,
indem im Datenbereich Variable costs die Schaltfläche Calculate oder in der Symbolleiste die Schalt-
fläche Calculate Variable Costs gedrückt wird und der in Abb. 14 dargestellte Dialog erscheint. Zur Ge-
nerierung der Transportkosten je Kilometer ist im Feld Costs per km ein Kostenfaktor einzugeben. Die-
ser wird mit den einfachen oder den quadrierten Luftlinienentfernungen (Cost per unit variation) mul-
tipliziert. Zur Berechnung der kürzesten Luftlinienentfernung kann die Euklidische Distanz (Euclidean
Distance), die Orthodrome (Great Circle Distance) oder die Manhattan-Distanz gewählt werden.2
Abb. 14: Berechnung der variablen Kosten in LogisticsLasb/TPP
Im Datenbereich Fixed costs (Abb. 15) können für jede Kante zwischen den Versendern und den Emp-
fängern die einmalig anfallenden sprungfixen Kosten eingeben werden.
2 Vgl. Steglich et al. (2016), S. 50 ff.
LogisticsLab 4.0 – Handbuch 16
Abb. 15: Datenbereich Fixed costs in LogisticsLasb/TPP
Im Datenbereich Capacities (Abb. 16) kann man jede Relation Versender-Empfänger mit einer Kapazi-
tät belegen. Soll die Kapazität nicht beschränkt werden, so wird ein M (für nicht beschränkt) eingetra-
gen.
Abb. 16: Datenbereich Capacities in LogisticsLasb/TPP
Nach Eingabe der Daten sollten sie mit dem Menüpunkt Save Problem bzw. Save Problem as ... ge-
speichert werden. Die Datendatei ist eine Textdatei, deren Felder mit Tabulatoren getrennt sind. Sie
besitzt folgende Struktur:
TPP <Version Datum/Uhrzeit werden automatisch eingefügt>
<Kommentar>
OPTIONS
ObjectiveSense <MIN|MAX|MINIMAX|MAXIMIN> KeyFigure <VarCosts|VarAndFixedCosts> Type <Standard|Bottleneck> SubjectTo <Capacities|SupplyRanges|DemandRanges|SingleSource> SOURCES <Anzahl Versender> Nr Name x y Supply MinSupply MaxSupply <zeilenweise Eingabe von Knotennummer, Knotenname, x- und y-Knotenkoordinaten, An-gebotsmenge, minimales Angebot, maximales Angebot> DESTINATIONS <Anzahl Empfänger> Nr Name x y Demand MinDemand MaxDemand <zeilenweise Eingabe von Knotennummer, Knotenname, x- und y-Knotenkoordinaten, Be-darfsmenge, minimaler Bedarf, maximaler Bedarf> COSTS <zeilenweise Eingabe der variablen Kostensätze als m x n Matrix > FIXEDCOSTS <zeilenweise Eingabe der sprungfixe Kosten als m x n Matrix > CAPACITIES <zeilenweise Eingabe der Kapazitäten als m x n Matrix > EEE
Abb. 17: Struktur einer TPP-Datendatei
LogisticsLab 4.0 – Handbuch 17
4.4 Optimierung und Resultate Wenn für ein Transportproblem alle Daten vorliegen, kann das Problem gelöst werden, indem entwe-
der das Menü Optimisation → Start Optimisation oder die Schaltfläche Optimise in der Symbolleiste
gewählt wird und der in Abb. 18 dargestellte Dialog erscheint.
Abb. 18: Optimierungsdialog in LogisticsLab/TPP
In diesem Dialog können verschiedene Einstellungen zur Optimierung gewählt werden:
Objective sense – Optimierungsziel:
o Min, Max – Minimum oder Maximum bei klassischem Transportproblem
o MiniMax, MaxiMin – bei Bottleneck-Problemen
Problem type – Problemtyp:
o Standard TPP – entspricht dem klassischen Transportproblem
o Bottleneck-TPP – Bottleneck-Transportproblem
Objective function issues – zusätzliche Bedingungen in der Zielfunktion:
o Including fixed costs – Die sprungfixen Kosten werden zusätzlich zu den variablen Kos-
ten in die Zielfunktion einbezogen.
o Block routes if... – Sperrungen: Bei Anwahl werden nur diejenigen Zuordnungen ver-
wendet, deren Kostensätze zwischen den hier angegebenen minimalen und maxima-
len Werten liegen.
Additional constraints – Zusatzbedingungen:
o Supply ranges – Angebotsbereiche einhalten (zweiseitige Beschränkung)
o Demand ranges – Bedarfsbereiche einhalten (zweiseitige Beschränkung)
o Capcities – Kapazitätsschranken einhalten
o Single source – Zusätzliche Bedingung, dass ein Empfänger nur durch einen Versender
beliefert werden darf.
Nach dem Lösen des Transportproblems erscheint im Bereich Netzwerk die optimale Lösung als Netz-
werkgrafik sowie im Datenbereich Solution die numerische Lösung (Abb. 19).
LogisticsLab 4.0 – Handbuch 18
Abb. 19: Darstellung der Lösung in LogisticsLab/TPP
Die Lösung kann als Textdatei mit der Erweiterung .SOL gespeichert und mit anderen Programmen
weiterverarbeitet werden. Abb. 20 zeigt die Lösungsmatrix eines Beispiels als Excel-Arbeitsblatt.
Abb. 20: Darstellung einer LogisticsLab/TPP-Lösung in Excel
LogisticsLab 4.0 – Handbuch 19
5 NWF – Netzwerkflussprobleme LogisticsLab/NWF ist auf die Lösung von Netzwerkfluss-Problemen, die als Min-Cost-Flow-Problem mo-
delliert werden können, ausgerichtet.3
5.1 Programmoberfläche Die Programmoberfläche von NWF ist wie die des Programms TPP in vier Bereiche aufgeteilt: Menü
und Symbolleiste, Bereich Netzwerk, Datenbereich und Statuszeile (Abb. 21).
Abb. 21: Programmoberfläche – LogisticsLab/NWF
5.2 Bereich Netzwerk Die linke Seite des NWF-Fensters dient zur Visualisierung der eingegebenen Daten als Netzgraph. Der
Netzgraph enthält maximal drei verschiedene Arten von Knoten: Versenderknoten (Magenta), Um-
schlagsknoten (Gelb) und Empfängerknoten (Cyan).
Interaktive Grafikoperationen können nach Einschalten eines Grafikbuttons mit der Maus ausgeführt
werden.
Das NWF-Grafikfenster für das Beispiel wird Abb. 22 gezeigt.
3 Vgl. Steglich et al. (2016), S. 68 ff.
Menü
Bereich
Netzwerk
mit
graphischer
Darstellung
Grafik-
buttonsStatusleiste
Speedbuttons in logischer
BearbeitungsreihenfolgeDatenbereich mit
Registern
Tabellen
und
Texte
LogisticsLab 4.0 – Handbuch 20
Abb. 22: Bereich Netzwerk in LogisticsLab/NWF
5.3 Eingabe der Problemdaten Der Datenbereich auf der rechten Seite der NWF-Programmoberfläche enthält vier Register für die
Eingabe von Daten und die Ausgabe der Optimierungsresultate (Problem, Nodes, Arc editor und All
arcs).
In einem ersten Schritt ist ein neues Problem zu generieren. Dazu kann der Menüeintrag File → New
Problem oder die Schaltfläche New Problem in der Symbolleiste gewählt werden. Es sind neben einem
Kommentar die Anzahl der Knoten (Nodes) und die maximale zwischen den Knoten liegende Distanz
(Max. distance) einzugeben (Abb. 23). Letztere wird bei der Generierung zufallsbasierter Koordinaten
(Coordinates → Randomly) verwendet. Die generierten Koordinaten können nachträglich bearbeitet
werden.
Abb. 23: Anlegen eines Problems in LogisticsLab/NWF
LogisticsLab 4.0 – Handbuch 21
Der Datenbereich Problem (Abb. 24) zeigt Informationen zum aktuellen Problem an und enthält ein
Eingabefeld zur Aufnahme eines kurzen Kommentars. Nach Abschluss einer Optimierung werden der
Zielfunktionswert (Costs) und die Gesamtflussmenge (Flow) angezeigt.
Abb. 24: Datenbereich Problem in LogisticsLab/NWF
Im Datenbereich Nodes (Abb. 25) werden sämtliche Angaben zu den Knoten eingetragen. Entweder
gibt man zuerst die Anzahl der Knoten ein oder fügt jeden Knoten einzeln mit dem Button Add ein.
Man kann auch die entsprechende Funktion auf der Grafikfläche benutzen. Mit dem Button Delete
wird der selektierte Knoten gelöscht. Die gesamte Knotenliste kann mit dem Button Print ausgedruckt
werden.
Jeder Knoten wird durch eine eindeutige Knotenbezeichnung (ID), einen Knotennamen (Name), eine
X- und Y-Koordinate, eine Angabe der Angebots- oder Bedarfsmenge (Volume, nur bei Versender- oder
Empfängerknoten) sowie eine untere und obere Kapazitätsgrenze (Min. Cap. und Max. Cap., nur bei
Umladeknoten) beschrieben. Dabei ist zu beachten, dass LogisticsLab/NWF der Notation der Flusser-
haltungsbedingung des allgemeinen Min-Cost-Flow-Modells4 folgt, so dass Angebotsknoten durch po-
sitive Werte in der Spalte Volume und Empfänger mit negativen Werten in dieser Spalte gekennzeich-
net sind.
Als Resultate werden nach der Optimierung der Fluss (Flow) durch den Knoten und die Kosten für die
ausgehenden Transporte (Costs) eingetragen.
4 Vgl. Steglich et al. (2016), S. 68 ff.
LogisticsLab 4.0 – Handbuch 22
Abb. 25: Datenbereich Nodes in LogisticsLasb/NWF
Im Kanten-Editor (Arc editor) (Abb. 26) können einem gewählten Startknoten gerichtete Kanten zu-
ordnet werden. Im Kanteneditor sind die aus einem Knoten (From node) ausgehenden gerichteten
Kanten mit den Kantengewichten (Costs) und den Kantenkapazitäten (Min. Cap. und Max. Cap.) zu
spezifizieren. Mit dem symbolischen Wert 𝑀 wird eine Kante als de facto kapazitiv nicht beschränkt
definiert.
Zusätzliche Kanten können mit dem Button Add eingefügt werden. Mit dem Button Delete wird die
markierte Kante gelöscht.
Abb. 26: Arc editor in LogisticsLasb/NWF
AnzahlKnoten
Knoten-bezeichnungen
KoordinatenKapazitätenderUmladeknoten
AngeboteundBedarfe
Lösung:FlusskostenLösung:FlussmengenAnlegeneines
KnotensLöscheneines
KnotensKnotenlistedrucken
Startknoten
IDdesZielknoten
GewichtdergerichtetenKante Untergrenzeder
Kapazitätder
gerichtetenKante
ObergrenzederKapazitätder
gerichtetenKante
AnlegeneinergerichtetenKante
LöscheneinergerichtetenKante
AnzahldergerichtetenKante
LogisticsLab 4.0 – Handbuch 23
Im Datenbereich All arcs (s. Abb. 27) sind alle gerichteten Kanten in einer Tabelle aufgelistet. In dieser
Liste können die Kostensätze und die Kapazitäten der einzelnen gerichteten Kanten editiert werden.
Nach Abschluss der Optimierung werden die Flüsse und die Kosten für die einzelnen gerichteten Kan-
ten sowie als Gesamtwerte eingetragen.
Abb. 27: Datenbereich All arcs in LogisticsLasb/NWF
Nach Eingabe der Daten sollten sie mit dem Menüpunkt Save Problem bzw. Save Problem as ... ge-
speichert werden. Die Datendatei ist eine Textdatei, deren Felder mit Tabulatoren getrennt sind. Sie
besitzt folgende Struktur:
NWF <Version Datum/Uhrzeit werden automatisch eingefügt>
<Kommentar>
NODES <Anzahl Knoten> Nr ID Name x y Volume MinCap MaxCap <zeilenweise Eingabe von Knotennummer, ID, Knotenname, x- und y-Knotenkoordinaten, Angebots- oder Nachfragemenge, Kapazitätsuntergrenze, Kapazitätsobergrenze> ARCS <Anzahl Kanten> Nr From To CostRate MinCap MaxCap <zeilenweise Eingabe: Kantennummer, Kantenname, x- und y-koordinaten, Bedarfsmenge, minimaler Bedarf, maximaler Bedarf> COSTS <zeilenweise Eingabe: Nummer, Bezeichner des Startknoten und des Endknotens der Kante, Kostensatz, untere Kapazitätsgrenze, obere Kapazitätsgrenze> EEE
Abb. 28: Struktur einer TPP-Datendatei
5.4 Optimierung und Resultate Die Optimierung kann nur dann gestartet werden, wenn die Summe der Angebote und die Summe der
Bedarfe ungleich Null ist. Sobald die Optimierung gestartet wird, erscheint ein Fenster, das den Benut-
zer über den Verlauf der Optimierung informiert und die Kennwerte der Optimallösung anzeigt (Abb.
29).
Lösung:GesamteFlusskosten
Lösung:GesamteFlussmengen
Gewichtdergerichteten
Kanten
UntergrenzederKapazitätder
gerichtetenKanten
ObergrenzederKapazitätder
gerichtetenKanten
LogisticsLab 4.0 – Handbuch 24
Abb. 29: Optimierungsdialog in LogisticsLab/NWF
Nach Anklicken des OK-Buttons wird die Lösung in die Arbeitsblätter Nodes und All arcs eingetragen
sowie im Bereich Netzwerk grafisch angezeigt (Abb. 30).
Abb. 30: Darstellung einer Lösung in LogisticsLab/NWF
Die Lösung kann in einer Textdatei mit der Endung .SOL gespeichert und in andere Programme (z. B.
Excel) importiert werden.
LogisticsLab 4.0 – Handbuch 25
6 TSP – Rundreiseprobleme Das Programm TSP dient zur Lösung von Rundfahrt- und Duchfahrtproblemen für symmetrische und
asymmetrische Entfernungen zwischen den anzufahrenden Orten.
Das TSP (Traveling Salesman Problem) oder Rundfahrtproblem5 wird dadurch charakterisiert, dass eine
bestimmte Anzahl von Orten nacheinander aufzusuchen ist. Von den vielen möglichen Reihenfolgen
muss diejenige gefunden werden, die ein bestimmtes Kriterium (Gesamtstrecke, -kosten oder -dauer)
minimiert. Es gelten folgende Bedingungen:
• Alle Orte müssen auf einer zusammenhängenden Route angefahren werden.
• Jeder Ort muss aufgesucht werden.
Es existieren zusätzlich Probleme, bei denen alle Knoten besucht werden müssen, aber die Rückkehr
zum Startknoten nicht erfolgen soll. Derartige Aufgaben werden Durchfahrtprobleme6 oder offene
Rundreiseprobleme genannt und können grundsätzlich in folgende vier Arten unterschieden werden:
1. Durchfahrtprobleme mit fixiertem Start- und Endknoten,
2. Durchfahrtprobleme mit fixiertem Start- und freiem Endknoten,
3. Durchfahrtprobleme mit fixiertem End- und freiem Startknoten,
4. Durchfahrtprobleme mit freiem Start- und Endknoten.
6.1 Programmoberfläche Nach dem Starten des Programms erscheint das in Abb. 31 dargestellte Programmfenster, das wie alle
anderen Bestandteile von LogisticsLab aus einem Bereich Netzwerk und einem Datenbereich besteht.
Abb. 31: Programmoberfläche – LogisticsLab/TSP
5 Vgl. Steglich et al. (2016), S. 278 ff. 6 Vgl. Steglich et al. (2016), S. 312 ff.
Menü
Bereich
Netzwerk
mit
graphischer
Darstellung
Grafik-
buttonsStatusleiste
Speedbuttons in logischer
BearbeitungsreihenfolgeDatenbereich mit
Registern
Tabellen
und
Texte
LogisticsLab 4.0 – Handbuch 26
6.2 Bereich Netzwerk Die linke Seite des TSP-Fensters dient zur Visualisierung der eingegebenen Daten und der Lösung (Abb.
32). Wenn der Netzgraph Verbindungen zwischen den Knoten enthält, so werden diese als Kanten
dargestellt. Gerichtete Kanten werden durch Pfeile abgebildet. Ungerichtete Kanten besitzen keine
Pfeilspitzen.
Knoten können als aktiv oder inaktiv markiert werden. Aktive (grün gefärbte) Knoten können in eine
Rundreise oder Durchfahrt aufgenommen werden. Inaktive Knoten werden in gelber Farbe dargestellt.
Abb. 32: Bereich Netzwerk in LogisticsLab/TSP
Auf der Grafikfläche stehen folgende Operationen zur Verfügung, die über die Symbolleiste im unteren
Bereich gewählt werden können:
LogisticsLab 4.0 – Handbuch 27
Abb. 33: Symbolleiste im Bereich Netzwerk in LogisticsLab/TSP
6.3 Eingabe der Problemdaten Der Datenbereich auf der rechten Seite der TSP-Programmoberfläche enthält fünf Arbeitsblätter für
die Eingabe von Daten und die Ausgabe von Optimierungsresultaten (Problem, Nodes, Arcs, Distances,
Solution).
In einem ersten Schritt ist ein neues Problem zu generieren. Dazu kann der Menüeintrag File → New
Problem oder die Schaltfläche New Problem in der Symbolleiste gewählt werden. Es sind neben einem
Kommentar die Anzahl der Knoten (Nodes) und die maximale zwischen den Knoten liegende Distanz
(Max. distance) einzugeben (Abb. 34). Letztere wird bei der Generierung zufallsbasierter Koordinaten
(Coordinates → Randomly) verwendet. Die generierten Koordinaten können nachträglich bearbeitet
werden.
Abb. 34: Anlegen eines Problems in LogisticsLab/TSP
Der Datenbereich Problem (Abb. 35) zeigt Informationen zum aktuellen Problem an und enthält ein
Eingabefeld für einen Kommentar. Nach Abschluss der Optimierung wird im Feld Trip length der Ziel-
funktionswert angezeigt.
Deletearc
Addarc
Addnode
Deletenode
Selectnode
Activate/Deactivatenode Selectarc
Deletesolution
Show/Hide trip
Show/Hidenodedescription
LogisticsLab 4.0 – Handbuch 28
Abb. 35: Datenbereich Problem in LogisticsLab/TSP
Im Datenbereich Nodes (Abb. 36) werden sämtliche Angaben zu den Knoten des Rundfahrtproblems
eingetragen.
Abb. 36: Datenbereich Nodes in LogisticsLasb/TSP
Man kann entweder die Anzahl der Knoten eingeben oder jeden Knoten einzeln mit dem Button Add
der Liste hinzufügen. Mit dem Button Delete wird der momentan selektierte Knoten gelöscht.
Die gesamte Knotenliste kann mit dem Button Print ausgedruckt werden.
AnzahlKnoten
Knoten-ID
Koordinaten
AnlegeneinesKnotens
LöscheneinesKnotens
Knotenlistedrucken
Knoten-bezeichnungen
Knotenaktivität
WählealleKnoten
Knotenauswahlzurücknehmen
LogisticsLab 4.0 – Handbuch 29
Jeder Knoten wird durch eine Selektion (Active – Auswahl für eine Berechnung), eine eindeutige Kno-
tenbezeichnung (ID), einen Knotennamen (Name) sowie eine X- und eine Y-Koordinate beschrieben.
Das Feld Active wird dazu benutzt, die die in die Bestimmung der Rundreise oder der Durchfahrt ein-
zubeziehenden Knoten festzulegen. Mit einem Doppelklick in das Feld des entsprechenden Knotens
wird ein Y in das Feld eingetragen und der Knoten auf der Grafik farbig markiert. Der Eintrag von N
oder eines Leerzeichens beseitigt die Selektion eines Knotens.
Mit dem Button Select all werden alle Knoten in das Problem einbezogen. Mit dem Button Deselect all
wird die Selektion aller Knoten aufgehoben.
Für nicht vollständige Graphen bzw. Graphen, für die vorgegebene Netze verwendet werden sollen, ist
die Kantenliste im Kanteneditor im Datenbereich Arcs zu definieren (Abb. 37). Dazu ist im Feld From
node der Knoten anzugeben, von dem die Kanten ausgehen. Die Kanten werden in der Liste To nodes
definiert, indem der Name, die Länge und der Typ der Kante eingegeben werden. Als Typ kann U (un-
directed) für eine ungerichtete Kante oder D (directed) für eine gerichtete Kante gewählt werden.
Abb. 37: Arc editor in LogisticsLasb/TSP
Im folgenden Schritt sind die Entfernungen zwischen allen Städten zu berechnen. Dieser Schritt kann
entweder über das Menü Optimisation → Calculate Distance Matrix oder über die Schaltfläche Calcu-
late Distance Matrix in der Symbolleiste erfolgen, worauf der in Abb. 38 dargestellte Dialog zur Berech-
nung der Distanzmatrix erscheint.
Startknoten
IDdesZielknoten
GewichtderKante TypderKante:U– ungerichteteKante
D– gerichteteKante
AnlegeneinerKante
LöscheneinerKante
AnzahlderKanten
LogisticsLab 4.0 – Handbuch 30
Abb. 38: Dialog zur Berechnung der Distanzmatrix in LogisticsLab/TSP
Wenn Luftliniendistanzen zu berechnen sind, ist entweder die euklidische Distanz (Generating distance
matrix by using … Euclidean Distance), die Orthodrome (… Great Circle Distance) oder die Manhattan-
Distanz (… Manhattan Distance) zu wählen. Sollen die im Kanten-Editor eingegebenen Kantengewichte
verwendet werden, ist Generating distance matrix by using … Distances defined for the arcs als
Methode zur Berechnung der Distanzen zu wählen. Grundsätzlich könnte man noch einen Umwegfak-
tor (Detour factor) eingeben.
Nach Abschluss der Berechnungen erscheint die Distanzmatrix im Datenbereich Distances (Abb. 39).
Für die Diagonalelemente liegen keine Distanzen vor, da Kurzzyklen innerhalb eines Knotens per Defi-
nition nicht zu gelassen sind. Die Distanzmatrix kann nachträglich verändert werden und als Textdatei
mit der Endung .MTX gespeichert werden.
Abb. 39: Datenbereich Distances in LogisticsLasb/TSP
Nach Eingabe der Daten sollten sie mit dem Menüpunkt Save Problem bzw. Save Problem as ... ge-
speichert werden. Die Datendatei ist eine Textdatei, deren Felder mit Tabulatoren getrennt sind. Sie
besitzt folgende Struktur:
LogisticsLab 4.0 – Handbuch 31
TSP <Version Datum/Uhrzeit werden automatisch eingefügt> <Kommentar>
NODES <Anzahl Knoten>
Nr ID Name x y Active
<zeilenweise Eingabe von Knotennummer, ID, Knotenname, x- und y-Knotenko-
ordinaten, Knotenart>
ARCS
<Anzahl Kanten> Nr From To Length Type <zeilenweise Eingabe: Kantennummer, Name, x- und y-Koordinaten, Kantenge-
wicht, Kantentyp
DISTANCES
<EuclidDist|GreatCircleDist|ManhattanDist|Network> <Umwegfaktor> <zeilenweise Eingabe der kürzesten Distanzen als m x n Matrix >
PRENODES
<zeilenweise Eingabe der Vorgänger im Sinne der Distanzmatrix m x n Matrix
>
EEE
Abb. 40: Struktur einer TPP-Datendatei
6.4 Optimierung und Resultate Nach Eingabe aller Daten kann das Problem gelöst werden, indem entweder das Menü Optimisa-
tion → Start Optimisation oder die Schaltfläche Optimise in der Symbolleiste gewählt wird. Im er-
scheinenden Optimierungsdialog (Abb. 41) ist die Art des Problems und das zu verwendende Verfah-
ren zu wählen.
Abb. 41: Optimierungsdialog in LogisticsLab/TSP
LogisticsLab 4.0 – Handbuch 32
Als Problemtyp (Problem type) stehen Rundfahrten (TSP) und Durchfahrtprobleme (Open TSP ... ) in
den folgenden unterschiedlichen Varianten zur Verfügung:
1. Durchfahrtprobleme mit fixiertem Start- und Endknoten (Open TSP with specified start and
destination node),
2. Durchfahrtprobleme mit fixiertem Start- und freiem Endknoten (Open TSP with specified start
node),
3. Durchfahrtprobleme mit fixiertem End- und freiem Startknoten (Open TSP with specified des-
tination node),
4. Durchfahrtprobleme mit freiem Start- und Endknoten (Open TSP without specified start and
destination node).
Grundsätzlich arbeitet LogisticsLab/TSP mit einer Eröffnungslösung, die dann mittels des 3-opt-Verfah-
rens verbessert wird. Dabei wird entweder von einer Ausgangslösung (One multistart + 3opt) oder von
einer Anzahl Eröffnungslösungen, die 25 % der Zahl der Knoten entspricht (Partially multistart + 3opt),
oder von einer Anzahl Eröffnungslösungen, die gleich der Anzahl aller einzubeziehenden Knoten ist
(Complete multistart + 3opt), ausgegangen.
Nach dem Lösen des Rundreise- oder Durchfahrtproblems erscheint im Bereich Network die grafische
Darstellung der Lösung sowie im Datenbereich Solution die nummerische Lösung (Abb. 42). Die Lösung
kann in einer Textdatei mit der Endung .SOL gespeichert und in andere Programme (z. B. Excel) impor-
tiert werden.
Abb. 42: Darstellung einer Lösung in LogisticsLab/TSP
LogisticsLab 4.0 – Handbuch 33
7 CPP – Briefträgerprobleme Das Programm CPP dient zur Lösung von Briefträgerproblemen in einfachen ungerichteten, gerichte-
ten und gemischten Netzwerken. Beim Briefträgerproblem geht man von einem Netzwerk aus, wobei
bei diesem Problem ausgehend von einem Startknoten jede (gerichtete oder ungerichtete) Kante min-
destens einmal zu durchlaufen und zum Startknoten zurückzukehren ist. Die zu findende kantenorien-
tierte Rundreise soll die gesamte Distanz (oder eine andere adäquate Bewertung) minimieren.7
Das Brieträgerproblem kann z. B. tatsächlich für die Bestimmung von Touren für Postboten, aber auch
für die Planung der Straßenreinigung bzw. des Winterdienstes durch ein Fahrzeug in einem bestimm-
ten Straßennetz oder für die effiziente Gestaltung der Müllabfuhr angewendet werden. So hat ein
Postbote jede Straße in einem Zustellbezirk zu bedienen. Dabei kann es unter Umständen notwendig
sein, bestimmte Straßen nach einer Zustellung nochmals zu durchlaufen, um aufgrund des Straßen-
netzes eine andere Zustellstraße zu erreichen. Das Durchlaufen einer Straße ohne Zustellung stellt eine
unproduktive Teilstrecke dar. Es liegt auf der Hand, dass es im Interesse des Postboten ist, diese un-
produktiven Strecken und letztlich die gesamte Distanz der Zustellungstour vom Ausgangspunkt über
alle Zustellungsstraßen zum Ausgangspunkt zurück zu minimieren.
7.1 Programmoberfläche Nach dem Starten des Programms erscheint das in Abb. 43 dargestellte Programmfenster, das wie alle
anderen Bestandteile von LogisticsLab aus einem Bereich Netzwerk und einem Datenbereich besteht.
Abb. 43: Programmoberfläche – LogisticsLab/CPP
7 Vgl. Steglich et al. (2016), S. 320 ff.
Menü
Bereich
Netzwerk
mit
graphischer
Darstellung
Grafik-
buttonsStatusleiste
Speedbuttons in logischer
BearbeitungsreihenfolgeDatenbereich mit
Registern
Tabellen
und
Texte
LogisticsLab 4.0 – Handbuch 34
7.2 Bereich Netzwerk Die linke Seite des CPP-Fensters dient zur Visualisierung der eingegebenen Daten und der Lösung (Abb.
32). Wenn der Netzgraph Verbindungen zwischen den Knoten enthält, so werden diese als Kanten
dargestellt. Gerichtete Kanten werden durch Pfeile abgebildet. Ungerichtete Kanten besitzen keine
Pfeilspitzen.
Knoten können als aktiv oder inaktiv markiert werden. Aktive (grün gefärbte) Knoten können in eine
Rundreise oder Durchfahrt aufgenommen werden. Inaktive Knoten werden in gelber Farbe dargestellt.
Abb. 44: Bereich Netzwerk in LogisticsLab/TSP
Auf der Grafikfläche stehen folgende Operationen zur Verfügung, die über die Symbolleiste im unteren
Bereich gewählt werden können:
LogisticsLab 4.0 – Handbuch 35
Abb. 45: Symbolleiste im Bereich Netzwerk in LogisticsLab/CPP
7.3 Eingabe der Problemdaten Der Datenbereich auf der rechten Seite der CPP-Programmoberfläche enthält vier Arbeitsblätter für
die Eingabe von Daten und die Ausgabe von Optimierungsresultaten (Problem, Nodes, Arcs, Solution).
In einem ersten Schritt ist ein neues Problem zu generieren. Dazu kann der Menüeintrag File → New
Problem oder die Schaltfläche New Problem in der Symbolleiste gewählt werden. Es sind neben einem
Kommentar die Anzahl der Knoten (Nodes) und die maximale zwischen den Knoten liegende Distanz
(Max. distance) einzugeben (Abb. 46). Letztere wird bei der Generierung zufallsbasierter Koordinaten
(Coordinates → Randomly) verwendet. Die generierten Koordinaten können nachträglich bearbeitet
werden.
Abb. 46: Anlegen eines Problems in LogisticsLab/CPP
Der Datenbereich Problem (Abb. 487) zeigt Informationen zum aktuellen Problem an und enthält ein
Eingabefeld für einen Kommentar. Weiterhin ist im Feld Starting node der Startknoten eines Briefträ-
gerproblems anzugeben. Ist kein Startknoten spezifiziert, wird automatisch der erste Knoten in der
Knotenliste als Startknoten gewählt. Nach Abschluss der Optimierung wird im Feld Trip length der Ziel-
funktionswert angezeigt.
Deletearc
Addarc
Addnode
Deletenode
Selectnode
Activate/Deactivatenode Selectarc
Deletesolution
Show/Hide trip
Show/Hidenodedescription
LogisticsLab 4.0 – Handbuch 36
Abb. 47: Datenbereich Problem in LogisticsLab/CPP
Im Datenbereich Nodes (Abb. 48) sind die Angaben zu den Knoten des Briefträgerproblems einzuge-
ben.
Abb. 48: Datenbereich Nodes in LogisticsLab/CPP
Man kann entweder die Anzahl der Knoten eingeben oder jeden Knoten einzeln mit dem Button Add
der Liste hinzufügen. Mit dem Button Delete wird der momentan selektierte Knoten gelöscht.
Die gesamte Knotenliste kann mit dem Button Print ausgedruckt werden.
Jeder Knoten wird durch eine Selektion (Active – Auswahl für eine Berechnung), eine eindeutige Kno-
tenbezeichnung (ID), einen Knotennamen (Name) sowie eine X- und eine Y-Koordinate beschrieben.
Das Feld Active wird dazu benutzt, die in die Berechnung der Briefträgerroute einzubeziehenden Kno-
ten festzulegen. Mit einem Doppelklick in das Feld des entsprechenden Knotens wird ein Y in das Feld
AnzahlKnoten
Knoten-ID
Koordinaten
AnlegeneinesKnotens
LöscheneinesKnotens
Knotenlistedrucken
Knoten-bezeichnungen
Knotenaktivität
WählealleKnoten
Knotenauswahlzurücknehmen
LogisticsLab 4.0 – Handbuch 37
eingetragen und der Knoten auf der Grafik farbig markiert. Der Eintrag von N oder eines Leerzeichens
beseitigt die Selektion eines Knotens.
Mit dem Button Select all werden alle Knoten in das Problem einbezogen. Mit dem Button Deselect all
wird die Selektion aller Knoten aufgehoben.
Die Vorgehensweise der Definition von Kanten entspricht der in LogisticsLab/TSP. Die Kantenliste ist
im Kanteneditor im Datenbereich Arcs zu definieren (Abb. 49). Dazu ist im Feld From node der Knoten
anzugeben, von dem die Kanten ausgehen. Die Kanten werden in der Liste To nodes definiert, indem
der Name, die Länge und der Typ der Kante eingegeben werden. Als Typ kann U (undirected) für eine
ungerichtete Kante oder D (directed) für eine gerichtete Kante gewählt werden.
Abb. 49: Arc editor in LogisticsLab/CPP
Nach Eingabe der Daten sollten sie mit dem Menüpunkt Save Problem bzw. Save Problem as ... ge-
speichert werden. Die Datendatei ist eine Textdatei, deren Felder mit Tabulatoren getrennt sind. Sie
besitzt folgende Struktur:
CPP <Version Datum/Uhrzeit werden automatisch eingefügt>
<Kommentar>
StartNode <ID des Startknoten> NODES <Anzahl Knoten>
Nr ID Name x y Active
<zeilenweise Eingabe von Knotennummer, ID, Knotenname, x- und y-Knotenko-
ordinaten, Knotenart>
ARCS
<Anzahl Kanten> Nr From To Length Type <zeilenweise Eingabe: Kantennummer, Name, x- und y-Koordinaten, Kantenge-
wicht, Kantentyp
EEE
Abb. 50: Struktur einer CPP-Datendatei
7.4 Optimierung und Resultate Nach Eingabe aller Daten kann das Problem gelöst werden, indem entweder das Menü Optimisa-
tion → Start Optimisation oder die Schaltfläche Optimise in der Symbolleiste gewählt wird.
Startknoten
IDdesZielknoten
GewichtderKante
TypderKante:U– ungerichteteKante
D– gerichteteKante
AnlegeneinerKante
LöscheneinerKante
AnzahlderKanten
LogisticsLab 4.0 – Handbuch 38
Zur Lösung eines Briefträgerproblems werden folgende zwei Arbeitsschritte durchlaufen:
1. kosten- oder distanzminimale Erweiterung des Netzwerkes zu einem Euler-Netzwerk,
2. Bestimmung der Euler-Tour.
Der Lösungsalgorithmus zur kosten- oder distanzminimalen Erweiterung des bestehenden Netzwerkes
basiert auf einem ganzzahligen linearen Optimierungsmodell, dessen Ergebnisse mittels eines einfa-
chen Algorithmus zur Bestimmung einer Euler-Tour und damit zur Lösung des Briefträgerproblems ver-
wendet werden.
Nach dem Lösen des Briefträgerproblems erscheint im Bereich Network die grafische Darstellung der
Lösung sowie im Datenbereich Solution die nummerische Lösung (Abb. 4251). Im Bereich Netzwerk
zeigt die Stärke der Kanten an, ob diese mehrfach durchlaufen werden müssen. Die eigentliche Route
des Briefträgers ist im Datenbereich Solution einzusehen. Die Lösung kann in einer Textdatei mit der
Endung .SOL gespeichert und in andere Programme (z. B. Excel) importiert werden.
Abb. 51: Darstellung einer Lösung in LogisticsLab/TSP
LogisticsLab 4.0 – Handbuch 39
8 VRP – Tourenplanungsprobleme Mit einem Rundreiseproblem ist eine Anzahl von Knoten auf einer möglichst kurzen Wegstrecke zu
bedienen, wobei keine Kapazitäten betrachtet werden. Würde man allerdings die Bedarfe der einzel-
nen Knoten einbeziehen, müsste unterstellt werden, dass die Kapazität des eingesetzten Fahrzeugs
größer oder gleich der Summe der Bedarfe aller Knoten ist. Übersteigt jedoch die gesamte an die Kno-
ten zu liefernde oder abzuholende Menge die Ladekapazität eines einzigen Fahrzeugs, dann müssen
die Knoten auf mehreren Routen beliefert werden. Probleme dieser Art gehören zur Gruppe der Tou-
renplanungsprobleme bzw. der Vehicle-Routing-Probleme.
Im Tourenplanungsproblem8 ist von einem Depot ausgehend eine Anzahl von Bedarfsknoten zu bedie-
nen. Der Bedarf jedes einzelnen Bedarfsknotens ist bekannt und ist kleiner oder gleich zur Kapazität
des verwendeten Typs von Fahrzeug. Weiterhin sind die Bewertungen (z. B. Distanzen oder Kosten)
zwischen den Knoten (Depot und Bedarfsknoten) bekannt. Die Bedarfe der Bedarfsknoten sind unter
Einhaltung der Ladekapazitäten der Fahrzeuge auf einzelne Touren zu verteilen. Für die einzelnen Tou-
ren sind die Routen vom Depot über die den Touren zugewiesenen Bedarfsknoten und zurück zum
Depot zu finden. Es sind die Gesamtkosten oder die gesamte Fahrstrecke aller Touren zu minimieren.
8.1 Programmoberfläche Die Programmoberfläche von VRP ist in vier Bereiche aufgeteilt: Menü und Symbolleiste, Bereich Netz-
werk, Datenbereich und Statuszeile (Abb. 52).
Abb. 52: Programmoberfläche – LogisticsLab/VRP
8 Vgl. zur Theorie von Tourenplanungsproblemen: Steglich et al. (2016), S. 331 ff.
Menü
Bereich
Netzwerk
mit
graphischer
Darstellung
Grafik-
buttonsStatusleiste
Speedbuttons in logischer
Bearbeitungsreihenfolge
Datenbereich mit
Registern
Tabellen
und
Texte
LogisticsLab 4.0 – Handbuch 40
8.2 Bereich Netzwerk Die linke Seite des VRP-Programmfensters dient zur Visualisierung der eingegebenen Daten und der
geplanten Touren. Wenn der Netzgraph Verbindungen zwischen den Knoten enthält, so werden diese
Kanten dargestellt (Abb. 53).
Knoten, auf denen sich keine Kunden (Stops) befinden, werden in gelber Farbe dargestellt. Befinden
sich Kunden auf einem Knoten, dann werden sie in grüner Farbe gezeichnet.
Abb. 53: Bereich Netzwerk in LogisticsLab/VRP
Interaktive Grafikoperationen können nach Einschalten eines Grafikbuttons mit der Maus ausgeführt
werden (Abb. 54).
LogisticsLab 4.0 – Handbuch 41
Abb. 54: Symbolleiste im Bereich Netzwerk in LogisticsLab/VRP
8.3 Eingabe der Problemdaten Der Datenbereich auf der rechten Seite der VRP-Programmoberfläche enthält sieben Arbeitsblätter für
die Eingabe von Daten (Problem, Settings, Nodes, Arcs, Distances, Stops, Solution) und zwei Bereiche
für die Ausgabe der Lösung (Routes, Route details).
In einem ersten Schritt ist ein neues Problem zu generieren. Dazu kann der Menüeintrag File → New
Problem oder die Schaltfläche New Problem in der Symbolleiste gewählt werden.
In dem erscheinenden Dialog (Abb. 55) sind neben einer kurzen Problembeschreibung (Problem) die
Anzahl der Knoten (Nodes) und die Anzahl der Kunden (Stops) einzugeben. Die Unterscheidung in Kun-
den und Knoten ist notwendig, da an einem Knoten mehrere Kunden existieren können und weiterhin
einer der Knoten das Depot darstellt. Hinsichtlich der Kunden kann zusätzlich ein durchschnittlicher
Bedarf (Volume per stop) angegeben werden. Dieser wird entweder allen Kunden als konstanter Wert
zugeordnet, wenn Volumes → Constant gewählt wird, oder stellt die Basis zufallsorientiert generierter
Bedarfe im Intervall von [-50 %,+50 %] dar, wenn Volumes → Variation (+/-50%) gewählt wird. Weiter-
hin kann auch eine durchschnittliche Distanz zwischen den Knoten eingegeben werden (Max. dis-
tance), die in einem Intervall von [-50 %,+50 %] zufallsorientiert variiert oder als konstanter Wert be-
lassen werden kann.
Abb. 55: Anlegen eines Problems in LogisticsLab/CPP
Createnode
Selectnode
Choosenode as depot
Deletenode
Addstop
Deletearc
Addarc
Selectarc
Deletesolution
Show/Hide trip
Show/Hidenodedescription
LogisticsLab 4.0 – Handbuch 42
Wird ein Feld nicht belegt, werden die entsprechenden Datenfelder nicht gefüllt. Die erzeugten Daten
können anschließend manuell ergänzt oder abgeändert werden.
Das Arbeitsblatt Problem (Abb. 56) enthält neben der Möglichkeit der Eingabe eines Kommentars
(Comment) weitere graue Felder mit allgemeinen Informationen zum bearbeiteten Problem und gelbe
Felder mit Informationen zur Lösung des Tourenproblems.
Abb. 56: Datenbereich Problem in LogisticsLab/VRP
Im Datenbereich Settings sind für das Problem diverse Vorgaben für die Optimierungsrechnung ein-
zugeben (Abb. 57):
Depot (at node): Angaben zum Standort und Namen des Depots,
Zone radius: Radius um das Depot zur Trennung der Nah- und Fernverkehrszone,
Capacity per vehicle: Kapazität des einheitlichen Fahrzeugs,
Max. route length: maximal mögliche Distanz einer Route,
Max. route duration: maximal mögliche Zeitdauer einer Route,
Avg. distance between stops at one node: durchschnittliche Distanz zwischen den an einem
Knoten existierenden Kunden,
Weight conversation: durchschnittliches Gewicht je Mengeneinheit des zu transportierenden
Gutes,
Avg. speed: die mittlere Geschwindigkeit berücksichtigt die Geschwindigkeit der Fahrzeuge in
Abhängigkeit der zurückgelegten Entfernung,
Avg. time per stop: benötigte Zeit für Be- und Entladungsvorgänge beim Kunden in Abhängig-
keit der Menge der Ladung.
LogisticsLab 4.0 – Handbuch 43
Abb. 57: Datenbereich Settings in LogisticsLab/VRP
Im Datenbereich Nodes (Abb. 58) werden sämtliche Angaben zu den Knoten eingetragen. Man kann
entweder zuerst die Anzahl der Knoten eingeben oder jeden Knoten einzeln mit dem Button Add zu
der Knotenliste hinzufügen.
Abb. 58: Datenbereich Nodes in LogisticsLab/VRP
AnzahlKnoten
Knoten-ID
AnlegeneinesKnotens
LöscheneinesKnotens
Knotenlistedrucken
Knoten-bezeichnungen
Koordinaten
LogisticsLab 4.0 – Handbuch 44
Mit dem Button Delete wird der selektierte Knoten gelöscht. Die gesamte Knotenliste kann mit dem
Button Print ausgedruckt werden. Jeder Knoten wird durch eine ID, einen Knotennamen (Name) sowie
eine X- und Y-Koordinate beschrieben.
Für nicht vollständige Graphen bzw. Graphen, für die vorgegebene Netze verwendet werden sollen, ist
die Kantenliste im Kanteneditor im Datenbereich Arcs zu definieren (Abb. 59). Dazu ist im Feld From
node der Knoten anzugeben, von dem die Kanten ausgehen. Die Kanten werden in der Liste To nodes
definiert, indem der Name und die Länge der Kante eingegeben werden. Es ist darauf hinzuweisen,
dass die Kanten in LogisticsLab/VRP generell ungerichtete Kanten darstellen.
Abb. 59: Arc editor in LogisticsLasb/VRP
Im folgenden Schritt sind die Entfernungen zwischen allen Städten zu berechnen. Dieser Schritt kann
entweder über das Menü Optimisation → Calculate Distance Matrix oder über die Schaltfläche Calcu-
late Distance Matrix in der Symbolleiste erfolgen, worauf der in Abb. 60 dargestellte Dialog zur Berech-
nung der Distanzmatrix erscheint.
Wenn Luftliniendistanzen zu berechnen sind, ist entweder die euklidische Distanz (Generating distance
matrix by using … Euclidean Distance), die Orthodrome (… Great Circle Distance) oder die Manhattan-
Distanz (… Manhattan Distance) zu wählen. Sollen die im Kanten-Editor eingegebenen Kantengewichte
verwendet werden, ist Generating distance matrix by using … Distances defined for the arcs als
Methode zur Berechnung der Distanzen zu wählen. Grundsätzlich könnte man noch einen Umwegfak-
tor (Detour factor) eingeben.
Startknoten
IDdesZielknoten
GewichtderKante
AnlegeneinerKante
LöscheneinerKante
AnzahlderKanten
LogisticsLab 4.0 – Handbuch 45
Abb. 60: Dialog zur Berechnung der Distanzmatrix in LogisticsLab/VRP
Nach Abschluss der Berechnungen erscheint die Distanzmatrix im Datenbereich Distances (Abb. 61).
Für die Diagonalelemente liegen keine Distanzen vor, da Kurzzyklen innerhalb eines Knotens per Defi-
nition nicht zu gelassen sind. Die Distanzmatrix kann nachträglich verändert werden und als Textdatei
mit der Endung .MTX gespeichert werden.
Abb. 61: Datenbereich Distances in LogisticsLab/VRP
Mit dem Arbeitsblatt Stops (Abb. 62) werden die Kunden und ihre Aufträge erfasst und angezeigt.
Im Feld Stops kann die Anzahl der Kunden eingegeben werden. Nach der Eingabe einer Zahl wird die
Größe des Eingabeblattes für diese Kundenzahl angepasst. Wird die Kundenzahl verringert, so werden
überzählige Kunden gelöscht.
LogisticsLab 4.0 – Handbuch 46
Für jeden einzelnen Kunden können folgende Angaben eingegeben werden:
ID: eindeutiger Kundenbezeichner,
Name: Name des Kunden,
Node: Zuordnung zu einem Knoten (Standort des Kunden),
Volume: Bedarf des Kunden,
Stop time: benötigte Zeit, um einen Kunden zu bedienen.
In die Spalte Route trägt LogisticsLab/VRP nach Abschluss der Optimierung die Zuordnung zu einer
Tour ein. Dieser Wert kann nicht manuell verändert werden.
Mit dem Button Set default stop times wird die im Blatt Settings eingestellte Servicezeit in die Spalte
Stop time bei allen Kunden eingetragen. Der Wert kann anschließend manuell in den Eingabefeldern
geändert werden.
Über den Button Add können neue Kunden manuell hinzugefügt werden. Mit dem Button Delete wird
der selektierte Kunde gelöscht.
Abb. 62: Datenbereich Stops in LogisticsLab/VRP
Nach Eingabe der Daten sollten sie mit dem Menüpunkt Save Problem bzw. Save Problem as ... gespei-
chert werden. Die Datendatei ist eine Textdatei, deren Felder mit Tabulatoren getrennt sind. Sie besitzt
folgende Struktur:
AnzahlKunden
Kunden-ID
AnlegeneinesKundens
LöscheneinesKundens
Kundenlistedrucken
Kunden-bezeichnung
ZuordnungzueinemKnoten
ZuordnungzueinerTour
BedarfdesKunden Servicezeit
FestlegeneinerServicezeitfüralleKunden
LogisticsLab 4.0 – Handbuch 47
VRP <Version Datum/Uhrzeit werden automatisch eingefügt> <Kommentar>
DEPOT <ID des Depots> OPTIONS Capacity <Kapazizät des eingesetzten Fahrzeugtyps> MaxLength <Maximale Distanz einer Route> MaxTime <Maximale Dauer einer Route in hh:mm>
AvgCustomerDist <durchschn. Distanz zwischen Kunden eines Knotens>
DistConversion <intern genutzter Parameter> QuantityConversion <Gewicht je Mengeneinheit des Gutes>
DistRanges <Angabe der fünf Distanzintervalle für die Durchschnittsge-
schwindigkeiten in km> Speed <Angabe der Durchschnittsgeschwindigkeiten für die fünf Distanzin-tervalle in km/h> WeightRanges <Angabe der sechs Gewichtsintervalle für die Servicezeiten in kg> StopTimes <Angabe der Servicezeiten für die sechs Gewichtsintervalle in
min> NODES
<Anzahl Knoten>
Nr ID Name x y
<zeilenweise Eingabe von Knotennummer, ID, Knotenname, x- und y-Knotenko-
ordinaten>
STOPS
<Anzahl der Kunden>
Nr ID Name Node Demand StopTime <zeilenweise Eingabe von Nummer, ID, Kundenname, Knotenzuordnung, Bedarf
und Servicezeit>
ARCS <Anzahl Kanten> Nr From To Length <zeilenweise Eingabe: Kantennummer, Name, x- und y-Koordinaten, Kantenge-
wicht
DISTANCES
<EuclidDist|GreatCircleDist|ManhattanDist|Network> <Umwegfaktor> <zeilenweise Eingabe der kürzesten Distanzen als m x n Matrix >
PRENODES <zeilenweise Eingabe der Vorgänger im Sinne der Distanzmatrix m x n Matrix
>
EEE
Abb. 63: Struktur einer VRP-Datendatei
8.4 Optimierung und Resultate Nach Eingabe aller Daten kann das Problem gelöst werden, indem entweder das Menü Optimisation →
Start Optimisation oder die Schaltfläche Optimise in der Symbolleiste gewählt wird. Im erscheinenden
Optimierungsdialog (Abb. 64) sind das Planungsverfahren, die Verfahrensparameter und ggf. zusätzli-
che Bedingungen einzugeben bzw. zu wählen.
LogisticsLab 4.0 – Handbuch 48
Abb. 64: Optimierungsdialog in LogisticsLab/VRP
Die Lösung des betrachteten Tourenproblems wird sowohl im Bereich Netzwerk als auch im Datenbe-
reich angezeigt (Abb. 65).
Abb. 65: Darstellung einer Lösung in LogisticsLab/VRP
LogisticsLab 4.0 – Handbuch 49
So werden ausgewählte Kennzahlen der gefundenen Routen im Arbeitsblatt Problem angezeigt. Für
die Anzeige der geplanten Routen besitzt LogisticsLab/VRP die Blätter Routes und Route details. Au-
ßerdem werden die Tour-Zuordnungen im Arbeitsblatt Stops eingetragen.
Im Resultatblatt Routes (Abb. 66) werden alle gefundenen Touren überblickend angezeigt.
Abb. 66: Darstellung einer Lösung im Datenbereich Routes in LogisticsLab/VRP
Wenn man die Tournummer in der grauen Spalte anklickt, wird die zugehörige Tour im Bereich Netz-
werk angezeigt. Klickt man das linke obere graue Feld (Route) an, werden wieder alle Touren im Gra-
fikblatt gezeigt. Die Tourenliste kann über das Menü oder den Druckbutton ausgedruckt werden.
Im Arbeitsblatt Route details (Abb. 67) können für jede Tour die anzufahrenden Kunden, die transpor-
tierte Menge, die einzelnen Entfernungen, Fahrzeiten, Standzeiten, Gesamtdauer und Zeitablauf der
Tour abgelesen werden. In der letzten Tabellenzeile werden die jeweiligen Summenwerte angezeigt.
Die gewünschte Tour kann entweder direkt im Feld Route eingegeben oder per Mausklick über die Auf-
bzw. Ab-Buttons ausgewählt werden. Die jeweils gewählte Tour wird im Bereich Netzwerk im Grafik-
blatt angezeigt. Klickt man in der Spalte Nr einen Kunden an, so wird im Bereich Netzwerk der Knoten,
auf dem der Kunde liegt, hervorgehoben dargestellt. Ein Mausklick auf das linke obere graue Feld Nr
stellt die normale Anzeige aller Knoten wieder her. Die aktuelle Route kann über das Menü oder den
Druckbutton ausgedruckt werden. Das Planungsresultat kann als Textdatei mit dem Dateizusatz .SOL
gespeichert gespeichert werden.
LogisticsLab 4.0 – Handbuch 50
Abb. 67: Darstellung einer Lösung im Datenbereich Routes details in LogisticsLab/VRP
LogisticsLab 4.0 – Handbuch 51
9 WLP – Warehouse-Location-Problem Mit dem Begriff Warehouse-Location-Problem werden diskrete Standortprobleme bezeichnet, bei de-
nen sowohl die fixen Standortkosten als auch die variablen Transportkosten in die Standortentschei-
dung einbezogen werden.9
Es existiert eine Menge potentieller Standorte, deren fixe Kosten bekannt sind. Für die Bedarfsorte
liegen die Nachfragen vor. Weiterhin gehen in diese Modellgruppe die variablen Transportkosten zwi-
schen den potentiellen Standorten und den Bedarfsorten ein. Es sind aus der Menge der potentiellen
Standorte die Standorte zu bestimmen, mit denen die Bedarfe der Bedarfsorte befriedigt und die
Summe der fixen Standortkosten und der variablen Transportkosten minimiert werden.
LogisticsLab/WLP ist als Lehrsoftware zur Lösung von einstufigen kapazitierten und unkapazitierten
Warehouse-Location-Problemen konzipiert, wobei immer angenommen wird, dass ein Bedarfsknoten
immer nur von einem Standort beliefert werden kann.
9.1 Programmoberfläche Nach dem Starten des Programms erscheint das in Abb. 68 dargestellte Programmfenster, das wie alle
anderen Bestandteile von LogisticsLab aus einem Bereich Netzwerk und einem Datenbereich besteht.
Abb. 68: Programmoberfläche – LogisticsLab/WLP
9 Vgl. zur Theorie von Warehouse-Location-Problemen: Steglich et al. (2016), S. 429 ff.
Menü
Bereich
Netzwerk
mit
graphischer
Darstellung
Statusleiste
Speedbuttons in logischer
BearbeitungsreihenfolgeDatenbereich mit
Registern
Tabellen
und
Texte
LogisticsLab 4.0 – Handbuch 52
9.2 Bereich Netzwerk Die linke Seite des WLP-Programmfensters dient zur Visualisierung der eingegebenen Daten und der
geplanten Touren (Abb. 69). Es sind keine graphischen Interaktionsmöglichkeiten vorgesehen.
Abb. 69: Bereich Netzwerk in LogisticsLab/WLP
9.3 Eingabe der Problemdaten Der Datenbereich auf der rechten Seite der WLP-Programmoberfläche enthält vier Arbeitsblätter für
die Eingabe von Daten (Problem, Sources, Destinations, Variable costs).
In einem ersten Schritt ist ein neues Problem zu generieren. Dazu kann der Menüeintrag File → New
Problem oder die Schaltfläche New Problem in der Symbolleiste gewählt werden.
In dem erscheinenden Dialog (Abb. 70) sind neben einer kurzen Problembeschreibung (Problem) die
Anzahl der potentiellen Standorte (Nr. of potential sources) und die Anzahl der Empfänger (Nr. of des-
tinations) einzugeben. Weiterhin können die durchschnittlichen Angebote (Supplies) und Bedarfe (De-
mands) eingegeben werden.
Diese Werte werden den potentiellen Standorten bzw. den Empfängern als konstante Wert zugeord-
net, wenn Supplies/Demands → Constant gewählt wird, oder es werden zufallsorientierte Angebote
und Bedarfe im Intervall von [-25 %,+25 %] generiert, wenn Supplies/Demands → Variation (+/-25%)
gewählt wird.
Eine analoge Vorgehensweise kann für die durchschnittlichen Fixkosten der potentiellen Standorte (Fi-
xed costs) und die durchschnittlichen variablen Transportkosten (Variable costs) zwischen den Stand-
orten und den Empfängern gewählt werden.
LogisticsLab 4.0 – Handbuch 53
Wird ein Feld nicht belegt, werden die entsprechenden Datenfelder nicht gefüllt. Die erzeugten Daten
können anschließend manuell ergänzt oder abgeändert werden.
Abb. 70: Anlegen eines Problems in LogisticsLab/WLP
Das Arbeitsblatt Problem (Abb. 71) enthält ein Eingabefeld für einen Kommentar, Auswahlmöglichkei-
ten für das anzuwendende Lösungsverfahren und gelb unterlegte Ausgabefelder für Informationen zur
Lösung.
Abb. 71: Datenbereich Problem in LogisticsLab/WLP
LogisticsLab 4.0 – Handbuch 54
Das Arbeitsblatt Sources (Fehler! Verweisquelle konnte nicht gefunden werden.) enthält die Angaben
u den potenziellen Standorten, die nach dem Laden der Problemdaten angezeigt werden oder manuell
eingegeben werden können. Die Standortdaten können interaktiv verändert werden.
Im Feld Nr. of potential sources kann die Anzahl der Standorte eingegeben werden. Dabei wird auto-
matisch die Größe des Eingabeblattes angepasst. Wird die Standortzahl verringert, werden überzählige
Einträge gelöscht.
Hinsichtlich der einzelnen potentiellen Standorte können folgende Angaben eingegeben werden:
Name: Name des Standorts,
X-Pos, Y-Pos: Standortkoordinaten des Standorts,
Fixed costs: Fixkosten des Standorts,
Supply: Angebot des Standorts.
In die Spalte Act. trägt LogisticsLab nach Abschluss der Optimierung bei ausgewählten Standorten ein
A (für active), in die Spalte Nr. of dest. die Anzahl der zugeordneten Kunden und in die Spalte Flow die
Liefermenge ein. Diese Werte können nicht manuell verändert werden.
Über den Button Add kann ein neuer Standort eingefügt werden. Mit dem Button Delete wird der se-
lektierte Standort gelöscht. Über den Button Print lässt sich die Standortliste ausdrucken.
Klickt man in der Spalte Nr einen Standort an, wird er auf dem Grafikblatt durch einen roten Kreis
markiert. Wurde vorher ein Kunde markiert, dann werden die beiden markierten Knoten auf dem Gra-
fikblatt mit einer roten Linie verbunden und im Blatt Variable costs wird der Cursor auf die betreffende
Relation gesetzt. Ein Mausklick auf das linke obere graue Feld stellt wieder die normale Anzeige aller
Standorte wiederein.
Abb. 72: Datenbereich Sources in LogisticsLab/WLP
Das Arbeitsblatt Destinations (Abb. 73) enthält die Angaben zu den Kunden. Sie werden nach dem
Laden der Problemdaten angezeigt oder können manuell eingegeben werden. Die Kundendaten lassen
sich interaktiv verändern.
AnzahlpotentiellerStandorte
Koordinaten
AnlegeneinesStandorts
LöscheneinesStandorts
Listedrucken
BezeichnungdesStandorts
FixkostendesStandorts
AngebotdesStandorts
LogisticsLab 4.0 – Handbuch 55
Im Feld Nr. of destinations kann die Anzahl der Empfänger (Kunden) eingegeben werden. Dabei wird
automatisch die Größe des Eingabeblattes angepasst. Wird die Anzahl verringert, werden überzählige
Einträge gelöscht.
Hinsichtlich der einzelnen Empfänger können folgende Angaben eingegeben werden:
Name: Name des Empfängers,
X-Pos, Y-Pos: Koordinaten des Empfängers,
Demand: Bedarf des Empfängers.
In die Spalte Source trägt LogisticsLab nach Abschluss der Optimierung den Namen des zugeordneten
Standorts und in die Spalte Costs die dafür erforderlichen variablen Kosten ein. Diese Werte können
nicht manuell verändert werden.
Über den Button Add kann ein neuer Empfänger eingefügt werden. Mit dem Button Delete wird der
selektierte Empfänger gelöscht. Über den Button Print lässt sich die Empfängerliste ausdrucken.
Klickt man in der Spalte Nr einen Empfänger an, wird er auf dem Grafikblatt mit einem grünen Kreis
markiert. Ein Mausklick auf das linke obere graue Feld Nr stellt die normale Anzeige wieder her.
Abb. 73: Datenbereich Destinations in LogisticsLab/WLP
Das Arbeitsblatt Variable costs (Abb. 74) enthält die variablen Kosten für die gesamte zu transportie-
rende Menge der Standort-Kunden-Relationen. Sie werden nach dem Laden der Problemdaten ange-
zeigt oder können manuell eingegeben werden. Außerdem lassen sich diese Kosteneinträge interaktiv
verändern.
Mit der Schaltfläche Print lässt sich die Kostentabelle ausdrucken.
Klickt man in der Spalte Nr einen Standort oder in der Zeile Nr einen Empfänger an, wird der betref-
fende Knoten auf dem Grafikblatt mit einem Kreis hervorgehoben. Eine auf diese Weise ausgewählte
Relation wird im Grafikblatt als rote Linie zwischen dem ausgewählten Standort und dem ausgewähl-
ten Empfänger dargestellt. Ein Mausklick auf das linke obere graue Feld Nr stellt die normale Anzeige
wieder her.
AnzahlEmpfänger
Koordinaten
AnlegeneinesEmpfängers
LöscheneinesEmpfängers
Listedrucken
BezeichnungdesEmpfängers
BedarfsdesEmpfängers
LogisticsLab 4.0 – Handbuch 56
Abb. 74: Datenbereich Variable costs in LogisticsLab/WLP
Verhalten sich die gesamten variablen Kosten zwischen den Versendern und den Empfängern propor-
tional zu den Distanzen, können sie anhand unterschiedlicher Distanzfunktionen berechnet werden.
Das erfolgt, indem im Datenbereich Variable costs die Schaltfläche Calculate oder in der Symbolleiste
die Schaltfläche Calculate Variable Costs gedrückt wird und der in Abb. 75 dargestellte Dialog er-
scheint. Zur Generierung der Transportkosten ist im Feld Costs per km ein Kostenfaktor einzugeben.
Dieser wird mit den einfachen oder den quadrierten Luftlinienentfernungen (Cost per unit variation)
und dem Bedarf des entsprechenden Kunden multipliziert. Zur Berechnung der kürzesten Luftlinien-
entfernung kann die Euklidische Distanz (Euclidean Distance), die Orthodrome (Great Circle Distance)
oder die Manhattan-Distanz gewählt werden.10
Abb. 75: Berechnung der variablen Kosten in LogisticsLasb/WLP
Nach Eingabe der Daten sollten sie mit dem Menüpunkt Save Problem bzw. Save Problem as ... gespei-
chert werden. Die Datendatei ist eine Textdatei, deren Felder mit Tabulatoren getrennt sind. Sie besitzt
folgende Struktur:
10 Vgl. Steglich et al. (2016), S. 50 ff.
LogisticsLab 4.0 – Handbuch 57
WLP <Version Datum/Uhrzeit werden automatisch eingefügt>
<Kommentar>
DEPOT <ID des Depots> SOURCES Name x y FixedCosts Supply <zeilenweise Eingabe von Standortname, x- und y-Knotenkoordinaten, Angebotsmenge, > DESTINATIONS <Anzahl Empfänger> Name x y Demand <zeilenweise Eingabe von Empfängername, x- und y-Knotenkoordinaten, Bedarfsmenge, > COSTS <zeilenweise Eingabe der gesamten variablen Kosten als m x n Matrix >
EEE
Abb. 76: Struktur einer WLP-Datendatei
9.4 Optimierung und Resultate Wenn für ein Problem alle Daten vorliegen, kann es gelöst werden. Dazu sind im Datenbereich Problem
als Algorithmus heuristic, uncapacitated oder MIP, uncapacitated zu wählen. Im ersten Fall wird das
Problem mit einer speziellen Heuristik für einstufige unkapazitierte Warehouse-Location-Probleme ge-
löst. Zur Verfügung stehen der Add- und der Drop-Algorithmus für die Ausgangslösung, die mit spezi-
ellen Verbesserungsverfahren kombiniert werden können. Für die meisten Problemfälle bietet es sich
an, ein spezielles in LogisticsLab/WLP implementiertes Verfahren zu wählen (Initialisation → Combina-
tion), dass diese Ansätze miteinander und zusätzlich mit einem Verbesserungsverfahren kombiniert.
Wählt man als Algorithmus MIP, uncapacitated, wird das Problem als gemischt-ganzzahliges lineares
Optimierungsmodell gelöst. Die Optimierung wird gestartet, indem entweder das Menü Optimisa-
tion → Start Optimisation oder die Schaltfläche Optimise in der Symbolleiste gewählt wird. Die Lösung
des betrachteten Tourenproblems wird sowohl im Bereich Netzwerk als auch im Datenbereich ange-
zeigt (Abb. 77).
Abb. 77: Darstellung einer Lösung in LogisticsLab/WLP
LogisticsLab 4.0 – Handbuch 58
Die ausgewählten Standorte werden im Arbeitsblatt Sources (Abb. 78) und die Kundenzuordnungen
im Arbeitsblatt Destinations (Abb. 79) angezeigt. Das Planungsresultat kann als Textdatei mit dem Da-
teizusatz .SOL gespeichert gespeichert werden.
Abb. 78: Darstellung einer Lösung im Datenbereich Sources in LogisticsLab/WLP
Abb. 79: Darstellung einer Lösung im Datenbereich Destinations in LogisticsLab/WLP
LogisticsLab 4.0 – Handbuch 59
10 STP – Kontinuierliche Median- und Zentren-Probleme Mit LogisticsLab/CLP liegt eine Software vor, die die Standortbestimmung in Netzwerken betrachtet.
Bei der Wahl eines Standortes konnte man sich auf eine bestimmte Menge von ausgewählten Knoten
des Netzes beschränken. Diese Annahmen können jedoch nicht in allen Fällen vorausgesetzt werden.
Oft wird gefordert, den bestmöglichen Standort auf der grünen Wiese zu bestimmen. Dabei handelt es
sich um die Aufgabe, innerhalb eines gewissen Gebietes den Punkt zu finden, auf dem ein geplanter
Logistikknoten optimal platziert werden kann. Man nennt diese Art der Standortwahl kontinuierliche
Standortplanung.11 Die einzelnen Punkte auf einer ebenen Fläche oder auf einer Kugeloberfläche stel-
len die Positionen eines potentiellen Standorts dar.
Auch bei der Standortplanung in der Ebene unterscheidet man nach der Zielstellung zwei wichtige Pla-
nungsmodelle:
Das Median-Problem hat die Minimierung der gewichteten Distanzen zum Ziel und besteht in
der Ermittlung eines oder mehrerer optimaler Standorte. In Abhängigkeit der Anzahl p der ge-
suchten Standorte werden diese Probleme auch p-Median-Probleme genannt.
Das Zentren-Problem verlangt die Minimierung der maximalen gewichteten Entfernung der
Bedarfsorte zu den jeweils für sie zuständigen Standorten und besteht in der Ermittlung eines
oder mehrerer Zentren. In Abhängigkeit der Anzahl p der gesuchten Standorte werden diese
Probleme auch p-Zentren-Probleme genannt.
Kontinuierliche Planungsverfahren liefern Punktkoordinaten für Standorte, die jedoch selten unverän-
dert zu nutzen sind. Gewöhnlich muss der Ermittlung eines theoretischen Standorts eine Analyse fol-
gen, in der die in einem gewissen Umkreis um den gefundenen Punkt gelegenen Orte hinsichtlich ihrer
Eignung für die Errichtung der vorgesehenen Anlage geprüft werden und eine geeignete Ortslage aus-
gewählt wird.
10.1 Programmoberfläche Nach dem Starten des Programms erscheint das in Abb. 68 dargestellte Programmfenster, das wie alle
anderen Bestandteile von LogisticsLab aus einem Bereich Netzwerk und einem Datenbereich besteht.
10.2 Bereich Netzwerk Die linke Seite des CLP-Programmfensters dient zur Visualisierung der eingegebenen Daten und der
geplanten Touren (Abb. 81).
Empfänger bzw. Kunden mit Bedarfen werden als grüne Kreise und Empfänger ohne vorliegende Be-
darfe als weiße Kreise dargestellt. Die ermittelten Standorte werden als rote Quadrate dargestellt und
die zugeordneten Kunden durch eine blaue Linie mit ihnen verbunden. Wenn ein Standort fixiert ist,
also in nachfolgenden Optimierungen nicht veränderbar, besitzt er als Symbol ein gelbes Quadrat.
Es sind keine graphischen Interaktionsmöglichkeiten vorgesehen.
11 Vgl. zu den theoretischen Grundlagen kontinuierlicher Standortprobleme: Steglich et al. (2016), S. 394 ff.
LogisticsLab 4.0 – Handbuch 60
Abb. 80: Programmoberfläche – LogisticsLab/CLP
Abb. 81: Bereich Netzwerk in LogisticsLab/CLP
Menü
Bereich
Netzwerk
mit
graphischer
Darstellung
Statusleiste
Speedbuttons in logischer
BearbeitungsreihenfolgeDatenbereich mit
Registern
Tabellen
und
Texte
LogisticsLab 4.0 – Handbuch 61
10.3 Eingabe der Problemdaten Der Datenbereich auf der rechten Seite der CLP-Programmoberfläche enthält drei Arbeitsblätter für
die Eingabe von Daten (Problem, Destinations, Sources). In einem ersten Schritt ist ein neues Problem
zu generieren. Dazu kann der Menüeintrag File → New Problem oder die Schaltfläche New Problem in
der Symbolleiste gewählt werden. In dem erscheinenden Dialog (Abb. 82) ist neben einer kurzen Prob-
lembeschreibung (Problem) die Anzahl der Empfänger (Destinations) einzugeben.
Hinsichtlich der Empfänger kann zusätzlich ein durchschnittlicher Bedarf (Volume per destination) an-
gegeben werden. Dieser wird entweder allen Empfängern als konstanter Wert zugeordnet, wenn Vo-
lume per destination → Constant gewählt wird, oder stellt die Basis zufallsorientiert generierter Be-
darfe mit einer exponentiellen Verteilung bzw. gleichverteilt im Intervall von [-50 %,+50 %] dar. Wei-
terhin kann auch eine durchschnittliche Distanz zwischen den Empfängern eingegeben werden (Max.
distance), die in einem Intervall von [-50 %,+50 %] zufallsorientiert variiert oder als konstanter Wert
belassen werden kann.
Wird ein Feld nicht belegt, werden die entsprechenden Datenfelder nicht gefüllt. Die erzeugten Daten
können anschließend manuell ergänzt oder abgeändert werden.
Abb. 82: Anlegen eines Problems in LogisticsLab/CLP
Das Arbeitsblatt Problem (Abb. 83) enthält Eingabefelder für einen Kommentar (Comment) und ein
Eingabefeld für die Anzahl der zu bestimmenden Standorte (Sources).
Weiterhin enthält das Arbeitsblatt Auswahlmöglichkeiten für die Vorgabe des Problemtyps der Opti-
mierungsrechnung (Mediane und Centre of gravity), eine Auswahlmöglichkeit für die zu nutzende Dis-
tanzfunktion (Distance → Euclidean, Great Circle, Manhattan) und gelb unterlegte Ausgabefelder für
Informationen zur Lösung. Zusätzlich können für den implementierten Algorithmus die Anzahl paralle-
ler Rechnungen (Multistarts) und ein sogenannter Abkühlungsfaktor (Annealing factor) angegeben
werden, wobei es sich für viele Probleme anbietet, die vorgegebenen Werte zu verwenden.
LogisticsLab 4.0 – Handbuch 62
Abb. 83: Datenbereich Problem in LogisticsLab/CLP
Wird im Eingabefeld Sources ein neuer Wert eingetragen, werden entweder neue Standorte mit Null-
positionen an die Standortliste angefügt oder überzählige Standorte gelöscht.
Der Datenbereich Destinations (Abb. 84) enthält die Angaben zu den Empfängern. Sie werden nach
dem Laden der Problemdaten angezeigt oder können manuell eingegeben werden. Mit Eingabe der
Anzahl der Empfänger (Destinations) wird die Größe des Eingabeblatts angepasst. Wird die Anzahl ver-
ringert, werden überzählige Einträge nach Bestätigung gelöscht.
Hinsichtlich der einzelnen Empfänger können folgende Angaben werden:
Fixed: Fixierung des Empfängers zu einem Standort,
Name: Name des Empfängers,
X-Pos., Y-Pos.: Koordinaten,
Demand: Bedarfsmenge,
Cost factor: Kostensatz je Kilometer und Mengeneinheit des zu transportierenden Gutes,
Weighted vol.: mit dem Kostenfaktor multiplizierter Bedarf.
Bei Eingabe eines Wertes für den Cost factor wird die mit dem Kostenfaktor gewichtete Bedarfsmenge
berechnet und ausgegeben. Wird ein Wert für Weighted vol. eingegeben, wird der Kostenfaktor neu
berechnet und auf zwei Nachkommastellen gerundet. Anschließend wird die modifizierte Bedarfs-
menge mit dem gerundeten Faktor neu berechnet und angezeigt.
LogisticsLab 4.0 – Handbuch 63
Abb. 84: Datenbereich Destinations in LogisticsLab/CLP
Nach einer Standortberechnung werden im Arbeitsblatt Destinations die empfängerrelevanten Lö-
sungsangaben angezeigt.
In die Spalte Source trägt LogisticsLab den Namen des zugeordneten Standorts ein.
In die Spalten Distance und Costs werden die entsprechenden Angaben bezüglich der Relation Emp-
fänger-Standort eingetragen. Diese Werte lassen sich nicht manuell verändern.
Es ist möglich, in die Spalte Source einen anderen Standortbezeichner einzutragen und damit eine neue
Kunden-Standort-Zuordnung willkürlich festzulegen. Nach der Eingabe des neuen Standorts berechnet
LogisticsLab/CLP die Kosten und zeigt die geänderten Werte für die davon abhängigen Distanzen und
Kosten in allen Arbeitsblättern an. Weiterhin wird die Netzwerkgrafik aktualisiert.
Über den Button Add kann ein neuer Empfänger hinzugefügt werden. Mit dem Button Delete wird der
selektierte Empfänger gelöscht. Über den Button Print lässt sich die Empfängerliste ausdrucken.
Klickt man in der Spalte Nr einen Empfänger an, wird er im Bereich Netzwerk mit einem roten Kreis
markiert. Ein Mausklick auf das linke obere graue Feld Nr stellt die normale Anzeige aller Kunden wie-
der her. Ein Mausklick auf die graue Spaltenüberschrift Fixed fixiert alle Empfängerzuordnungen zu
fixierten Standorten. Ein erneuter Klick auf die Fixed-Spalte löscht alle Fixierungen. Ein Doppelklick in
der Fixed-Spalte einer Kundenzeile ändert die Fixierung dieses Empfängers.
Das Arbeitsblatt Standorte (Abb. 85) enthält die Angaben zu den Standorten, deren Positionen durch
das Optimierungsverfahren bestimmt werden sollen. Es ist auch möglich, feste Positionen für be-
stimmte Standorte vorzugeben, diese zu fixieren und damit vom Optimierungsverfahren auszuschlie-
ßen. Nach dem Laden der Problemdaten werden die Standortdaten angezeigt. Sie können auch manu-
ell eingegeben und interaktiv verändert werden.
Mit Eingabe der Anzahl der Standorte (Sources) wird die Größe des Eingabeblatts für diese Standort-
zahl angepasst. Wird die Standortzahl verringert, werden überzählige Einträge nach Bestätigung ge-
löscht.
AnzahlEmpfänger
Koordinaten
AnlegeneinesEmpfängers
LöscheneinesEmpfängers
Listedrucken
BezeichnungdesEmpfängers
BedarfsdesEmpfängers
FixierungdesStandorts
LogisticsLab 4.0 – Handbuch 64
Folgende Angaben können für die einzelnen Standorte eingegeben werden:
Fixed: Fixierung des Standorts,
Name: Name des Standorts; wurde kein Name eingegeben, vergibt das Planungsverfahren
nach dem Start automatisch Standardbezeichner (S.001, S.002, ...),
X-Pos., Y-Pos.: Die Koordinaten des Standorts können vorgegeben werden und bleiben nach
der Fixierung des Standorts im Verlaufe der Planung unverändert. Standardmäßig werden die
Koordinaten mit Null vorbelegt und anschließend durch das Optimierungsverfahren bestimmt.
Abb. 85: Datenbereich Sources in LogisticsLab/CLP
Das Planungsverfahren trägt in die folgenden Spalten für jeden Standort die Planungsresultate ein:
Destinations: Anzahl der zugeordneten Kunden,
Volume: Liefermenge zu den zugeordneten Empfängern,
Weigthed vol.: mit den Kostensätzen bewertete Liefermenge zu den zugeordneten Empfän-
gern,
Costs: gesamte Kosten zur Belieferung der zugeordneten Empfänger.
Diese Spalten können nicht manuell verändert werden. Ändert man hingegen die Koordinaten eines
Standorts, dann werden die Resultatwerte neu berechnet und angezeigt.
Über den Button Add kann ein neuer Standort angelegt werden. Mit dem Button Delete wird der se-
lektierte Standort gelöscht. Über den Button Del. coord. werden die Standortkoordinaten aller nichtfi-
xierten Standorte gelöscht, die Standortkoordinaten also auf den Wert Null gesetzt. Mit dem Button
Move werden die nichtfixierten Standorte auf den nächstgelegenen Empfängerort verschoben. An-
schließend werden alle Kennwerte neu berechnet und die Anzeigen aktualisiert. Über den Button Print
lässt sich die Standortliste ausdrucken.
Klickt man in der Spalte Nr einen Standort an, wird er im Bereich Netzwerk durch einen roten Kreis
markiert. Wurde vorher ein Kunde markiert, dann werden die beiden markierten Knoten auf dem Gra-
fikblatt mit einer roten Linie verbunden. Ein Mausklick auf das linke obere graue Feld Nr stellt die nor-
male Anzeige aller Standorte wieder ein.
Ein Mausklick auf das graue Feld Fixed fixiert alle Standorte. Ein erneuter Klick auf das Fixed-Feld be-
seitigt alle Fixierungen. Ein Doppelklick in der Fixed-Spalte einer Standortzeile ändert die Fixierung die-
ses Standorts.
AnzahlpotentiellerStandorte
Koordinaten
LöschenderKoordinatender
unfixiertenStandorte
VerschiebenderKoordinatender
unfixiertenStandortezumnächstgelegenen
Kundenort
Listedrucken
BezeichnungdesStandorts
AngebotdesStandorts
FixierungdesStandorts
AnlegeneinesStandorts
LöscheneinesStandorts
Setzeneinheitlicher
Kapazitäten
LogisticsLab 4.0 – Handbuch 65
Nach einem Mausklick auf das graue Feld Name werden in allen Standorten, die noch keinen Namen
besitzen, die Standardbezeichnungen S.001, S.002 ... eingetragen.
Nach Eingabe der Daten sollten sie mit dem Menüpunkt Save Problem bzw. Save Problem as ... gespei-
chert werden. Die Datendatei ist eine Textdatei, deren Felder mit Tabulatoren getrennt sind. Sie besitzt
folgende Struktur:
STP <Version Datum/Uhrzeit werden automatisch eingefügt>
<Kommentar>
OPTIONS
Distance <EuclidDist|GreatCircleDist|ManhattanDist|Network> DESTINATIONS <Anzahl Empfänger> Name Fixed x y Demand CostFactor Source <Name| Fixiert: Y/N | Koordinaten x, y | Kostenfaktor | Name des zugeordneten Standorts oder Leer >
SOURCES <Anzahl Standorte> Name Fixed x y Capacity < Name| Fixiert: Y/N | Koordinaten x, y | Kapazität>
EEE
Abb. 86: Struktur einer CLP-Datendatei
10.4 Optimierung und Resultate Nach Abschluss der Eingabe aller Daten kann das Problem gelöst werden. Dazu sind im Datenbereich
Problem der Problemtyp (Mediane und Centre of gravity) und die zu nutzende Distanzfunktion (Dis-
tance → Euclidean, Great Circle, Manhattan) zu wählen. Zusätzlich können für den implementierten
Algorithmus die Anzahl paralleler Rechnungen (Multistarts) und ein sogenannter Abkühlungsfaktor
(Annealing factor) angegeben werden. Die Optimierung wird gestartet, indem entweder das Menü
Optimisation → Start Optimisation oder die Schaltfläche Optimise in der Symbolleiste gewählt wird.
Die Lösung des betrachteten Tourenproblems wird sowohl im Bereich Netzwerk als auch im Datenbe-
reich angezeigt (Abb. 87).
Abb. 87: Darstellung einer Lösung in LogisticsLab/CLP
LogisticsLab 4.0 – Handbuch 66
Die Kennzahlen der Lösung sind dem Arbeitsblatt Problem zu entnehmen (Abb. 88). Außerdem können
die Standortkoordinaten im Arbeitsblatt Sources (Abb. 89) und die Empfängerzuordnungen im Arbeits-
blatt Destinations (Abb. 90) eingesehen werden.
Das Planungsresultat kann als Textdatei mit dem Dateizusatz .SOL gespeichert gespeichert werden.
Abb. 88: Darstellung der Kennzahlen einer Lösung im Datenbereich Problem in LogisticsLab/CLP
LogisticsLab 4.0 – Handbuch 67
Abb. 89: Darstellung der Empfängerzuordnungen im Datenbereich Destinations in LogisticsLab/CLP
Abb. 90: Darstellung der Koordinaten der Standorte im Datenbereich Sources in LogisticsLab/CLP
LogisticsLab 4.0 – Handbuch 68
11 Autoren und Kontakt PROF. DR. DIETER FEIGE lehrte Computerbasierte Entscheidungsunterstützungssysteme in der Logistik
und Entscheidungsunterstützungssysteme in der Logistik an der Friedrich-Alexander Universität Erlan-
gen-Nürnberg.
PROF. DR. MIKE STEGLICH lehrt Allgemeine Betriebswirtschaftslehre, Quantitative Methoden und Control-
ling an der Technischen Hochschule Wildau (FH). Zugleich beschäftigt er sich intensiv mit der Entwick-
lung von Software zur mathematischen Modellierung und Optimierung in mehreren Open-Source-Pro-
jekten.
Kontakt
c/o Mike Steglich
Prof. Dr. Mike Steglich
Allgemeine Betriebswirtschaftslehre / Quantitative Methoden / Controlling
Technische Hochschule Wildau
Fachbereich Wirtschaft, Informatik, Recht
Hochschulring 1
15745 Wildau