Optimierungsprobleme im Logistiksektor in Kooperation mit dem Unternehmen Ehrhardt und Partner

Größe: px
Ab Seite anzeigen:

Download "Optimierungsprobleme im Logistiksektor in Kooperation mit dem Unternehmen Ehrhardt und Partner"

Transkript

1 Optimierungsprobleme im Logistiksektor in Kooperation mit dem Unternehmen Ehrhardt und Partner Alexander Büchel 1 1 Hochschule Bonn-Rhein-Sieg, Sankt Augustin, Deutschland alexander.buechel@smail.inf.h-brs.de Abstract. Aus wissenschaftlicher Sicht lassen sich im logistischen Sektor viele Problemstellungen finden, die eine hohe Komplexität aufweisen. Es ist das Ziel - vor allem für Logistikunternehmen - für Probleme solche Lösungen zu finden, die letztendlich die Effizienz des Tagesablaufes steigern und somit zu einem höheren wirtschaftlichen Erfolg führen. Diese schriftliche Ausarbeitung beschreibt das Vorgehen und die daraus resultierenden Ergebnisse des Masterprojektes, welches in Kooperation mit dem Logistikunternehmen,,Ehrhardt + Partner durchgeführt wurde. Als exemplarisches Beispiel wird dabei der Schwerpunkt auf das Tor-Lkw-Zuordnungsproblem gelegt. Um eine für die Praxis nutzbare Lösung für diese Problem zu finden, werden hierbei zwei unterschiedliche Ansätze definiert, implementiert und anhand ihrer Laufzeiten ausgewertet. Dieses Vorgehen bezieht auch die allgemeine Darstellung von Ergebnissen solcher Planungsprobleme, in Form von Gantt-Diagrammen, als auch die eigentliche Problemerzeugung mit ein. Schlüsselwörter. Ablaufplanung, Aussagenlogik, Cplex-Format, Ehrhardt + Partner, Gantt-Diagramm, GLPK, Graphentheorie, Laufzeitanalyse, Logistik, Maximale Clique, Minimierungsfunktion, NP-Vollständigkeit, Problemerzeugung, Scheduling, Solver, Tor-Lkw-Zuordnung, Warehouse-Logistik

2 2 Inhaltsverzeichnis 1 Einführung Das Unternehmen Problemstellungen im logistischen Sektor Ziele des Masterprojektes Grundlagen Scheduling Mathematische Definition Glpk-Solver Cplex-Format Problemdarstellung Ganttchart-Viewer Schnittstellen Visualisierung Timebuffer-Viewer Problemerzeugung LP-Generator Problemparameter Einzelnes Problem - Testserien Logikbasiertes Modell - Graphbasiertes Modell Binary - Bounds Verwendung des LP-Generators Tor-Lkw-Zuordnungsproblem Logikbasiertes Modell Definition Beispiel eines logikbasierten Modells Laufzeiten Erweiterung des Modells Auswertung Graphbasiertes Modell Graphentheoretische Definition Transformation in die algebraische Ebene Beispiel des graphbasierenden Modells (Un)lösbarkeit des Problems Laufzeiten Auswertung des graphbasierten Modells Ausblick Zusammenfassung 28

3 7 Anhang Ganttchart-Viewer Timebuffer-Viewer LP-Generator Optimale Lösung eines logikbasierten Problems Approximative Lösung eines logikbasierten Problems Approximative Lösung eines logikbasierten Problems mit maximaler Clique Optimale Lösung eines graphbasierten Problems

4 4 Abbildungsverzeichnis 1 Firmenlogo E+P Generiertes Gantt-Diagramm Beispiel der Anwendung des Tools Timebuffer-Viewer Korrespondieres Gantt-Diagramm Benutzeroberfläche des LP-Generators Intuitive Anordnung der Lkws an drei Tore (logikbasiertes Modell) Optimale Anordnung der Lkws im logikbasierten Beispiel Messzeiten der optimalen Berechnungen Messzeiten der approximativen Berechnung Intuitive Anordnung der Lkws an drei Tore (graphbasiertes Modell) Vollständiger Graph des Beispiels Optimale Anordnung der Lkws im graphbasierten Beispiel Vergleich der Laufzeiten beider Modelle Klassendiagramm des Ganttchart-Viewer (Teil 1) Klassendiagramm des Ganttchart-Viewer (Teil 2) Klassendiagramm des TimeBuffer-Viewer (Teil 1) Klassendiagramm des TimeBuffer-Viewer (Teil 2) Klassendiagramm des LP-Generators

5 5 1 Einführung Dieser Bericht fasst die erbrachten Leistungen und Erkenntnisse des durchgeführten Masterprojektes im Masterstudiengang Informatik der Hochschule Bonn-Rhein-Sieg zusammen. Dabei soll in diesem ersten Kapitel ein Überblick über das Unternehmen,,Ehrhardt + Partner, die in einem solchen Umfeld auftretenden logistischen Fragestellungen und die konkreten Ziele für dieses Masterprojekt festgelegt werden. 1.1 Das Unternehmen Das Masterprojekt wurde in Kooperation mit dem aus Koblenz stammenden Unternehmen,,Ehrhardt + Partner durchgeführt. Dieses ist spezialisiert auf kundenorientierte Lösungen im Bereich der Warehouse-Logistik und ist international an 6 Standorten mit ca. 300 Mitarbeitern vertreten. Abb. 1: Firmenlogo E+P Die Entwicklung von Lösungskonzepten für eine optimale Lagerprozessführung stellt das primäre Aufgabengebiet von,,ehrhardt und Partner dar. Die integrierten Gesamtlösungen können individuell und zukunftsorientiert an die Anforderungen eines jeden Kunden angepasst werden, um so die vorhandenen Lagerprozesse zu verbessern. 1.2 Problemstellungen im logistischen Sektor Als innovatives Unternehmen strebt,,ehrhardt + Partner eine kontinuierliche Verbesserung seiner eigenen Lösungen an. Prozesse, innerhalb eines Lagers, hängen von vielen unterschiedlichen Faktoren ab. Die Komplexität, die durch das Zusammenspiel dieser Faktoren entsteht, ist in den letzten Jahren angewachsen, so dass das Finden einer Lösung aus wissenschaftlicher Sicht, für eine optimale Lagerprozessführung, nicht trivial ist. Ein Lager besteht aus unterschiedlichen Komponenten, die zusammen eine Lagerstruktur bilden und somit auch aktiv in die Prozessstrukturen eingreifen. Das Ziel des Kunden ist grundsätzlich eine Steigerung der Leistung sowie des wirtschaftlichen Umsatzes. Dies kann nur mit einer Optimierung von den verwendeten Prozessen realisiert werden. Aus der Intention heraus diese Prozesse zu optimieren, sollte eine Minimierung der verwendeten Ressourcen, wie bspw. Zeit, Transportwege oder Warenposition innerhalb des Lagers, resultieren. Folgende Beispiele dienen als Übersicht über potentielle Problemstellungen im logistischen Sektor. Die Hauptaufgabe von Mitarbeitern des Lagers ist das Kommissionieren. Anhand von Auftragslisten werden Waren aus Regalen zusammengestellt. Dabei werden lange Strecken durch das Lager zurückgelegt, auf denen die Waren aus den Regalen,,gepickt werden. Die bei jedem Pick erzeugte Zeit, wird als Kommissionierzeit bezeichnet. Nach eigenen Angaben werden bei,,ehrhardt und Partner täglich über 35 Millionen Picks mit dem dazugehörigen Lagerführungssystems (LFS) registriert (Ehrhardt und

6 6 Partner, o. J., S. 19). Ein potentielles Ziel kann somit eine Optimierung des Kommissionierprozesses sein, um ein reibungsloses,,picken zu ermöglichen. Selbst eine geringe Zeitersparnis bei jedem einzelnen Pick, würde sich am Ende des Tages zu einem deutlich spürbaren zeitlichen Vorteil summieren. Eine ähnliche Fragestellung ist das Minimieren von Transportwegen innerhalb eines Lagers. Kommissionierer, die entweder zu Fuß oder mit Transportmaschinen unterwegs sind, sind angehalten, die Auftragslisten so schnell wie möglich abzuarbeiten. Dies kann nur dann erfüllt werden, wenn diese Mitarbeiter Wege durch das Lager zurücklegen, die in der Summe möglichst minimal sind. Algorithmisch gibt es unterschiedliche Heuristiken, wie dies am Besten zu realisieren ist [vgl. (Möller, K. und Bunkert, S., 2012, S.17ff.)]. Neben den Wegen, die minimiert werden sollen, kann der Schwerpunkt einer Fragestellung auch auf die vorhandenen Waren und deren Positionen im Lager gelegt werden. Waren, die häufig frequentiert werden, sollten möglichst zeitnah erreichbar sein,,,gepickt werden können und auch an die jeweiligen Transporter gebracht werden. Das,,Picken weit oben in einem Hochregallager ist deutlich zeitintensiver, als eine Warenposition in den unteren Regalebenen. Daher spielt die Verteilung der Waren ebenfalls eine wichtige Rolle und sollte argumentativ gut fundiert sein. Ein Lager dient als Zwischenstation, um so die dort angelieferten Waren neu zu gruppieren und durch Lkws weitertransportieren zu können. Diese Lkws belegen daher über einen bestimmten Zeitraum die vorhandenen Tore. Aufgrund der Tatsache, dass Lkws auf ihren Touren Verspätungen erfahren können, kann es zu zeitlichen Überschneidungen von Torbelegungen kommen. Daher ist es empfehlenswert die Lkws so an Tore zuzuordnen, dass Verspätungen möglichst keine Auswirkungen auf die zeitlich folgenden Lkws des gleichen Tores haben. Diese Problemstellung ist auch als,,tor-lkw-zuordnungsproblem bekannt. Verspätungen können nicht nur bei den beteiligten Lkws auftreten, sondern auch bei den Mitarbeitern. Sei es durch technische Probleme mit Kommissioniergeräten, mit manuellen Fehlern oder falschen Picks. Ebenfalls können auch während eines Tages neue Auftragslisten erscheinen, die prioritär abgearbeitet werden müssen. Sinnvoll ist es daher für ein Unternehmen, grundsätzlich einen zeitlichen Puffer in Bezug auf die kumulierten Arbeitszeiten zu haben und Mitarbeiter flexibel umdisponieren zu können. Die Grundlage dafür ist aber eine Möglichkeit, in Form eines Softwaretools, die vorhandenen Puffergrößen berechnen und beobachten zu können. 1.3 Ziele des Masterprojektes Das genannte Beispiel des,,tor-lkw-zuordnungsproblems ist die wesentliche Fragestellung in diesem Masterprojekt. Um eine optimale Lösung für dieses Problem zu erarbeiten, werden zunächst mathematische Grundlagen, die für solche klassischen Scheduling-Problem nötig sind, vorgestellt (Kap. 2). Sowohl die Problemdarstellung (Kap. 3), als die auch Problemerzeugung (Kap. 4) bilden zwei wesentliche Bereiche, die unausweichlich sind für eine Evaluierung von geeigneten Modellen. Zwei verschiedene Modelle, nämlich ein logikbasierter Ansatz (Kap. 5.1) und ein graphbasierter Ansatz (Kap. 5.2) werden daraufhin definiert, implementiert und auf praktische Tauglichkeit geprüft. Als weitere Aufgabenstellung wurde das Softwarewerkzeug Timebuffer-Viewer entwickelt und implementiert, welches die kumulierten Arbeitszeiten berechnet und in einer graphischen Visualisierung den vorhanden Zeitpuffer innerhalb eines Tagesablaufes darstellt (Kap. 3.2).

7 7 2 Grundlagen Die theoretische Grundlage des,,tor-lkw-zuordnungsproblem ist der Bereich des Schedulings. Diese Grundlagen sollen in diesem Kapitel näher erläutert werden und somit die notwendige mathematische Basis für die beiden Modelle liefern. 2.1 Scheduling Eine Problemstellung, bei der eine Zuordnung von verschiedenen Aktivitäten (engl. jobs bzw. tasks) zu bestimmten Prozessen (engl. machines) gesucht wird, ist in der Literatur unter dem Begriff,,Scheduling-Problem zu finden. Dabei werden meist eine Reihe von Nebenbedingungen geformt, die durch diese Zuordnung eingehalten werden müssen [vgl. (Brucker, P., 2007, S. 1) und (Blazewicz, J. u. a., 2001, S.57)]. Diese allgemeine Beschreibung von Aktivitäten und Prozessen kann, je nach Problemstellung, konkretisiert werden. Die klassische Verwendung im Bereich der Informatik ist die Zuordnung von verschiedenen Berechnungen auf mehrere CPUs. In dem Kontext des,,tor- Lkw-Zuordnungsproblems werden beispielsweise die Prozesse als Tore und die Aktivitäten als Lkws bezeichnet. Gesucht wird dabei eine Zuordnung, die unter der Einhaltung bestimmter Nebenbedingungen eine Auswirkung von verspäteten Lkws zu minimieren versucht. 2.2 Mathematische Definition Um eine solche Zuordnung berechnen zu können, muss zunächst ein geeignetes mathematisches Fundament geschaffen werden. Laut (Brucker, P., 2007, S.11f.) können Scheduling- Probleme als sogenannte,,lineare Programme aufgefasst und gelöst werden. Diese sind als kombinatorische Optimierungsprobleme definiert und streben ein Optimum in Form einer Zielfunktion unter bestimmten Nebenbedingungen an. Häufig muss eine Kostenfunktion minimiert werden. Die allgemeine Form einer solchen Zielfunktion lautet: minimize i,j A c i,j x i,j (2.1) Die Funktion wird nun anhand der definierten Nebenbedingungen gelöst. Jeder Vektor (x 1, x 2,... x n ), der diese Nebenbedingungen erfüllt, wäre eine potentielle Lösung. Gesucht ist daher der Lösungsvektor, mit dem die Zielfunktion tatsächlich das Minimum erreicht. 2.3 Glpk-Solver Das,,GNU Linear Programming Kit [Makhorin (2012)] ist eine, auf der Sprache C basierende Bibliothek, die für das Lösen von linearen Programmen verwendet werden kann. Für die, in diesem Masterbericht verwendeten und erstellten linearen Programme, reicht der von der

8 8 Bibliothek angebotene Stand-Alone-Solver aus. Die in Kap. 2.2 vorgestellten linearen Programme können hierbei im Cplex-Format importiert und gelöst werden. Der Aufruf glpsol --lp data.lp -o data.sol wird nun verwendet, um den Solver zu starten, ein Problem im Cplex-Format aus der Datei data.lp einzulesen und letztendlich das Ergebnis in die Datei data.sol zu schreiben. 2.4 Cplex-Format Effektiv können Daten, die ein lineares Programm bilden, im Cplex-Format in den Stand- Alone-Solver übergeben werden. Dieses Format wird in (GNU Project, 2010, S. 204) ausführlich erläutert. Der folgende Abschnitt zeigt die Cplex-Struktur für Probleme, die im Laufe des Masterprojektes verwendet werden: minimize x x subject to x x //weitere Nebenbedingungen binary x 0 0 x 0 1 //weitere Variablen end Das Schlüsselwort,,minimize beschreibt eine Zielfunktion, die versucht den angegebenen mathematischen Term zu minimieren.,,subject to leitet den Abschnitt der Nebenbedingungen ein, die zeilenweise aufgelistet werden. Anschließend werden durch,,binary Variablen definiert, die nur die Werte 0 oder 1 annehmen dürfen. Alternativ kann hierfür auch das Schlüsselwort,,bounds verwendet werden, um Variablen innerhalb des [0-1]-Intervalls zu definieren. Das Cplex-Format wird nun mit,,end abgeschlossen.

9 9 3 Problemdarstellung Dieses Kapitel stellt die beiden entwickelten Softwarewerkzeuge Ganttchart-Viewer und Timebuffer-Viewer vor. Ganttchart-Viewer dient dabei zur Visualisierung von Gantt-Diagrammen und somit der Zuordnung, die bei einem Scheduling-Problem berechnet worden sind. Die Hauptfunktion des Werkzeugs Timebuffer-Viewer ist die Darstellung des vorhandenen Zeitpuffers innerhalb eines Arbeitstages. Für die Beschreibung der Werkzeuge soll das Augenmerk auf die Struktur anhand eines UML-Diagramms des jeweiligen Programms, den vorhandenen Schnittstellen und den graphischen Ergebnisse gelegt werden. 3.1 Ganttchart-Viewer Gantt-Diagramme sind eine Möglichkeit, um Aktivitäten und deren zeitliche Folge graphisch darzustellen. Diese Visualisierungsmöglichkeit wurde durch das java-basierende Tool Ganttchart- Viewer umgesetzt. Das Werkzeug unterstützt dabei unterschiedliche Schnittstellen, um den Import von Daten zu ermöglichen. Anhang 7.1 zeigt ein UML-Klassendiagramm mit den wichtigsten Variablen und Methoden, um die allgemeine Struktur des Programms zu verdeutlichen Schnittstellen Um Daten als Gantt-Diagramme darstellen zu können existieren sogenannte Importer-Klassen. Das erstellte Importer-Objekt kann nun in den Konstruktor des Ganttchart-Objekts übergeben werden, um so variabel unterschiedliche Schnittstellen für den Import von Daten verwenden zu können. Die folgende Vorstellungen der verschiedenen Importer-Klassen zeigen gleichzeitig die Anwendung dieses Tools. String-Importer: Die erste Möglichkeit ist der String-Importer. Dieser erwartet zwei Strings, um zum einen die Rohdaten und zum anderen die dazu passende Struktur zu definieren. Das folgende Beispiel zeigt die Verwendung eines solchen String-Importers und die anschließende Übergabe an das Ganttchart-Objekt: p u b l i c c l a s s S t r i n g T e s t { p u b l i c s t a t i c v oid main ( S t r i n g [ ] a r g s ) { S t r i n g s t r u c t u r e = r o w c a p t i o n ; a c t i v i t y d e s c r i p t i o n ; s t a r t p o i n t ; e n d p o i n t ; S t r i n g s t r i n g = Gate1 ; Car1 ; 0 ; ; Gate1 ; Car2 ; ; ; } } S t r i n g I m p o r t e r s i = new S t r i n g I m p o r t e r ( ) ; s i. s e t D a t a ( s t r i n g, s t r u c t u r e ) ; G a n t t C h a r t gc = new G a n t t C h a r t ( s i ) ; gc. show ( ) ;

10 10 Die Rohdaten bestehen dabei, wie in der Struktur festgelegt, aus einem 4er-Tupel. Dieses beinhaltet eine Zuordnung zu einem Tor, einer Beschreibung des Lkws, dem zeitlichen Startpunkt sowie dem Endpunkt eines Lkws. File-Importer: Ebenfalls können Rohdaten über eine Datei eingelesen werden. Ähnlich wie im String- Importer, wird erwartet, dass diese Daten einer bestimmten Struktur entsprechen die per String definiert wird. Sowohl diese Struktur als auch die Dateiangabe werden über den File- Importer an das Ganttchart-Objekt übergeben. p u b l i c c l a s s F i l e T e s t { p u b l i c s t a t i c v oid main ( S t r i n g [ ] a r g s ) { S t r i n g s t r u c t u r e = r o w c a p t i o n ; a c t i v i t y d e s c r i p t i o n ; s t a r t p o i n t ; e n d p o i n t ; F i l e f i l e = new F i l e ( f i l e 1. csv ) ; F i l e I m p o r t e r f i = new F i l e I m p o r t e r ( ) ; f i. s e t D a t a ( f i l e, s t r u c t u r e ) ; } } G a n t t C h a r t gc = new G a n t t C h a r t ( f i ) ; gc. show ( ) ; LP-Importer: Speziell für Probleme, die als lineares Programm [vgl. Kap. 2.2] definiert wurden, können mit diesem Importer zwei Dateien eingelesen werden. Dies ist einerseits die Datei, in der das lineare Programm im Cplex-Format festgehalten wurde (*.lp) und andererseits die Datei, die den berechneten Lösungsvektor enthält (*.sol). p u b l i c c l a s s L P I m p o r t e r T e s t { p u b l i c s t a t i c v oid main ( S t r i n g [ ] a r g s ) { LPImporter l p i = new LPImporter ( ) ; l p i. s e t F i l e s ( z. l p, z. s o l ) ; } } G a n t t C h a r t gc = new G a n t t C h a r t ( l p i ) ; gc. show ( ) ; Visualisierung Diese Rohdaten können nun durch den Aufruf der show()-methode auf dem Ganttchart- Objekt angezeigt werden. Ein erstelltes Gantt-Diagramm wird in Abbildung 2 dargestellt. Abb. 2: Generiertes Gantt-Diagramm

11 Timebuffer-Viewer Die primäre Aufgabe dieses Werkzeugs ist die Darstellung des Zeitpuffers. Die Hauptstruktur des Programms kann im Klassendiagramm (Anhang 7.2) nachvollzogen werden. Der Zeitpuffer berechnet sich nach der potentiell zur Verfügung stehenden Arbeitskraft und der bis zu einem bestimmten Zeitpunkt abzuleistenden Arbeit. In dem in Abbildung 3 gezeigten Beispiel stehen insgesamt bis zum Ende des Tages 36.0 Arbeitsstunden zur Verfügung, die kumulativ zu jedem Zeitpunkt berechnet worden sind. Die Steigung zu einem Zeitpunkt dieser gelb dargestellten Funktion, spiegelt somit die Anzahl der Mitarbeiter wieder, die zu diesem Zeitpunkt zur Verfügung stehen. Falls weniger Mitarbeiter in einem Zeitraum arbeiten (wie bspw. zwischen 16:00 und 18:00) so steigt diese Funktion weniger stark an. Des Weiteren existieren vier Abfahrtszeiten von unterschiedlichen Transportunternehmen. Zu diesen Zeitpunkten wird die Arbeit berechnet, die zu dem jeweiligen Lkw zu erledigen gilt. Diese Werte werden nun als Funktion, hier in roter Farbe, dargestellt. Die Differenz zwischen der gelben und roten Funktion, stellt nun den Zeitpuffer dar, der anzeigt, ob der aktuelle Arbeitsprozess potentiell einen Engpass erleiden wird. Abb. 3: Beispiel der Anwendung des Tools Timebuffer-Viewer Es ist deutlich erkennbar, dass gegen 14:00h der Zeitpuffer am größten ist. Dies gibt einem Unternehmen auch die Möglichkeit Mitarbeiter aus diesem Arbeitszeitraum abzuziehen, um eventuell an anderen Stellen aushelfen zu können, bei denen es Engpässe gibt. Die Zeitdifferenzen gegen 10:00h und 18:00 sind im Vergleich dazu sehr knapp bemessen. Die Daten, die die Grundlage für diese Zeitpufferkurve bilden, können ebenfalls als Gantt- Diagramm dargestellt werden (siehe Abb. 4). Einzelne Jobs, die zu bestimmten Lkws gehören und die dazugehörigen Abfahrtzeiten sind in derselben Farbe dargestellt. Dieses Diagramm zeigt ebenfalls, den zeitlichen Puffer zu einer bestimmten Abfahrtszeit eines Lkws an. Hierbei kommt ebenfalls noch ein Vorteil des Gantt-Diagramms zu Tage, nämlich die Zuordnung der Jobs zu den einzelnen Mitarbeitern. Abb. 4: Korrespondieres Gantt-Diagramm

12 12 4 Problemerzeugung Bevor ein Vergleich zwischen verschiedenen Modellen stattfinden kann, müssen Testdaten erzeugt werden, auf denen diese Modelle angewendet werden. Viele Probleme aus dem logistischen Sektor sind NP-vollständig und besitzen somit eine exponentielle Laufzeit, sodass ein praxisorientierter Vergleich erst bei unterschiedlichen Problemgrößen zustande kommt. Im Laufe des Masterprojektes wurde das java-basierende Softwarewerkzeug,,LP-Generator erschaffen, um eine einfache Möglichkeit zu besitzen diese Probleme erstellen zu können. Innerhalb der nächsten Abschnitte wird dieses Werkzeug und die Handhabung für das Erstellen von Testproblemen näher vorgestellt. 4.1 LP-Generator Die Grundfunktionalität des Softwaretools,,LP-Generator ist das Erzeugen von Scheduling- Problemen im Cplex-Format, sodass diese als direkte Eingaben für den Glpk-Solver verwendet werden können. Flexible Einstellungen dieses Werkzeugs erlauben eine Erzeugung unterschiedlichster Probleme. Die wichtigsten Methoden der LP-Generator-Klasse können in Anhang 7.3 betrachtet werden Problemparameter Zunächst wird die angegebene Anzahl an Lkws mit einem Startzeitpunkt des Halts und einer Haltedauer erzeugt. Basierend auf diesen Lkw-Daten können beide implementierten Modelle angewendet werden. Für jedes Modell wird ein Gleichungssystem, auf einer Reihe von Nebenbedingungen beruhend, erzeugt und in Form des Cplex-Formats in eine Datei geschrieben. Alle zu erstellenden Probleme basieren dabei auf einer Reihe von Parametern, die vom Benutzer angegeben werden können. Diese Basisparameter sind: λ : Parameter für Gewichtung von Gaps bzw. Kanten im graphbasierten Modell Zeitslots : Anzahl der maximalen Zeitslots Min. Haltedauer : Minimale Dauer einer Lkw-Belegung an einem Tor Max. Haltedauer : Maximale Dauer einer Lkw-Belegung an einem Tor Lkws : Anzahl der Lkws, die erzeugt werden soll Lkw-Schritte : Bei einer Testreihe wird nur jedes x-te Lkw-Problem erzeugt Tore : Anzahl der Tore, an die die Lkws angeordnet werden sollen Tore-Schritte : Bei einer Testreihe wird nur jedes x-te Torproblem erzeugt

13 Einzelnes Problem - Testserien Eine Problemerzeugung kann in zweierlei Varianten durchgeführt werden. Einerseits steht die Funktion zur Erstellung eines einzelnen Problems zu Verfügung; andererseits können ganze Testreihen erstellt werden. Für den zweiten Fall werden die Anzahl der benötigten Tore und der Lkws durch einen Wertebereich angegeben. Durch die Angabe der Parameter,,Lkw- Schritte und,,tor-schritte kann weiterhin eine Reduzierung der Gesamtzahl der Probleme und der anschließenden Berechnungszeit erzielt werden Logikbasiertes Modell - Graphbasiertes Modell Es existieren für den Benutzer zwei unterschiedliche Ansätze, um eine Tor-Lkw-Zuordnung zu berechnen: Ein logikbasiertes Modell und ein graphbasiertes Modell. Die Option,,Max. Clique hinzufügen erweitert das Gleichungssystem des logikbasierten Modells. Die genauen Definitionen dieser beiden Modelle befinden sich in Kapitel 5.1 und Binary - Bounds Innerhalb des Cplex-Formates muss angegeben werden, ob eine optimale und somit ganzzahlige Lösung (x i {0, 1}) für ein gegebenes Gleichungssystem gefunden werden soll oder ob die Bedingung der Ganzzahligkeit entfällt (0 x i 1). Der LP-Generator bietet die Möglichkeit diese Unterscheidung durch das Einfügen der Schlüsselwörter,,Binary oder,,bounds in die Ausgabedatei umzusetzen. 4.2 Verwendung des LP-Generators Abb. 5: Benutzeroberfläche des LP-Generators Eine beispielhafte Anwendung des LP-Generators wird in Abbildung 5 dargestellt. Die eingestellten Optionen erzeugen eine Testreihe aus graphbasierten Problemen, bei denen eine optimale ganzzahlige Lösung gesucht wird. Dabei wird die Anzahl der Lkws um je um fünf erhöht (von 25 bis 125); die Anzahl der Tore um je zwei (von 10 bis 50). Durch die kombinatorische Erstellung dieser Probleme werden insgesamt 441 Probleme bzw. Dateien in den Ausgabeorder geschrieben.

14 14 5 Tor-Lkw-Zuordnungsproblem Als Beispiel für ein Scheduling-Problem aus dem logistischen Sektor wird in diesem Kapitel das Tor-Lkw-Zuordnungsproblem untersucht. Dieses wird mit zwei verschiedenen Ansätzen umgesetzt: Ein logikbasiertes Modell und ein graphbasiertes Modell. 5.1 Logikbasiertes Modell Das erste Modell, um eine optimale Zuordnung von Lkws zu Toren finden zu können, ist ein auf logischen Aussagen basierendes Modell. Diese Zuordnung beruht dabei auf diversen Bedingungen, die in Form von logischen Aussagen geformt und anschließend in eine algebraische Struktur übertragen werden. Dazu wird zunächst das Modell definiert, dieses anhand eines Beispiels demonstriert und eine Auswertung auf Basis der gemessenen Laufzeiten vorgenommen Definition Für die Definition eines Tor-Lkw-Zuordnungsproblems wird vereinbart, dass es insgesamt T Lkws gibt, die an G Tore verteilt werden sollen. Ein Lkw i besitzt einen Startpunkt und einen Endpunkt seiner Haltezeit. Für dieses Modell wird folgende Syntax vereinbart: Für den Startzeitpunkt (engl. preparation) wird k p verwendet; für den Endzeitpunkt (engl. departure) k d. Eine potentielle Zuordnung wird mit der Variable x i,j beschrieben, die wie folgt definiert ist: x i,j = { w (wahr) f (falsch) falls Lkw i an Tor j zugeordnet wird sonst Gesucht ist daher eine Zuordnung der Lkws an diese Tore, die mögliche Auswirkungen von Verspätungen minimiert. Dabei müssen zwei Arten von Nebenbedingungen eingehalten werden: 1.,,Jeder Lkw muss genau einem Tor zugeordnet werden. 2.,,Für einen Zeitpunkt t darf es an einem Tor nur einen Lkw geben, der zugeordnet ist. Für die algebraische Struktur ist es daher notwendig, dass diese logischen Aussagen als Zielfunktion, Nebenbedingungen und Binärvariablen transformiert werden: Jede Variable x i,j {w, f}, die einen Wahrheitswert annimmt, wird daher in eine numerische Variable übertragen, die den Wert 1 oder 0 annimmt: x i,j {1, 0}. Die Semantik der Variable ist dieselbe wie oben bereits definiert.

15 15 Die logischen Nebenbedingungen werden ebenfalls unter Verwendung der Variablen in algebraische Ausdrücke gebracht: Die Aussage,,Jeder Lkw muss genau einem Tor zugeordnet werden wird transformiert in: x i1 + x i x ig = 1 mit i {1,..., T } (5.1) Diese Aussage ist dann erfüllt, wenn genau eine Variable den Wert 1 besitzt, d.h. der Lkw i genau einem Tor zugeordnet ist. Die Anzahl der Gleichungen ist gegeben durch die Anzahl der Lkws. Somit folgt, dass T Gleichungen aufgestellt werden müssen. Die Aussage,,Für einen Zeitpunkt t darf es an einem Tor nur einen Lkw geben, der zugeordnet ist wird nun in zwei Schritten transformiert in: 1. Zwei Lkws i und k dürfen nicht an einem gemeinsamen Tor j zugeordnet werden, wenn diese sich zeitlich überschneiden. x i,j + x k,j 1 Lkw i, k mit conflict(i,k) (5.2) Diese Aussage ist dann erfüllt, wenn keiner der beiden oder genau ein Lkw an einem Tor j zugeordnet ist. Für eine Zuordnung beider Lkws an dieses Tor, ist somit eine nicht erlaubte Belegung der Variablen gegeben, die zur Nichterfüllung der Gleichung führt. Die Anzahl an diesen Ungleichungen kann nach oben abgegrenzt werden durch T Für den zweiten Schritt wird, auch im Hinblick auf die Zielfunktion, eine Hilfsvariable y ik gebraucht: y i,k = { 1 falls Lkw i und Lkw k am selben Tor 0 sonst Eine Zuordnung für zwei Lkws am gleichen Tor sieht nun wie folgt aus: x ij + x kj y ik 1 Lkw i, k am gleichen Tor j (5.3) Durch die Subtraktion der Hilfsvariable und somit dem,,erlauben zweier Lkws an einem Tor, wird die Erfüllbarkeit der Gleichung erzwungen, da das Ergebnis der Gleichung wieder die Bedingung 1 erfüllt. Dabei kann die Anzahl an gebildeten Ungleichungen durch GT 2 2 abgegrenzt werden. Auf der Hilfsvariable y ik beruht auch die Zielfunktion. Diese versucht solche Lkws an ein gemeinsames Tor zu platzieren, dass die Auswirkung von verspäteten Lkws minimiert wird. Dabei wird eine Gewichtung c ik für die zeitliche Distanz zweier Lkws eingeführt: c ik = λ g mit 0 <λ <1

16 16 Dabei gilt weiterhin, dass die Variable g die Anzahl der Zeitintervalle zwischen der Abfahrt des Ersten und Ankunft des zweiten Lkw widerspiegelt: g = k p i d Der Variable λ wird standardmäßig der Wert 0.8 zugewiesen, sodass durch die Potenzierung eine Gewichtung von zwei Lkws i und k zwischen 0 und 1 entsteht. Je kleiner eine Gewichtung ist, desto größer ist die Differenz der Ankunftszeit des zweiten Lkws im Vergleich zum Ersten und desto geringer ist somit auch eine entstehende Auswirkung. Ein optimal arbeitender Algorithmus versucht dabei eine Lösung zu finden, welche die Summe über alle Gewichtungen minimiert und dabei alle aufgestellten Nebenbedingungen erfüllt. Die Zielfunktion lautet daher: min T T i=1 k=i+1 c ik y ik Beispiel eines logikbasierten Modells Das folgende Beispiel verdeutlicht die Anwendung dieses Modells. Hierbei werden 8 Lkws auf 3 Tore verteilt. Das Ziel ist es, eine optimale Aufteilung der Lkws auf die Tore zu erhalten. Abbildung 6 zeigt eine intuitive Verteilung der Testdaten, um so die Start- und Haltezeiten dieser Testreihe zu veranschaulichen, die für dieses Beispiel relevant sind. Abb. 6: Intuitive Anordnung der Lkws an drei Tore (logikbasiertes Modell) Jede Zuordnung eines Lkw i zu einem Tor j wird durch eine Variable x ij dargestellt. Durch die gegebene Anzahl an Lkws und Toren ergeben sich somit folgende Variablen x ij : x 00, x 01, x 02, x 10, x 11, x 12, x 20, x 21, x 22, x 30, x 31, x 32, x 40, x 41, x 42, x 50, x 51, x 52, x 60, x 61, x 62, x 70, x 71, x 72 Die Zuordnung von zwei Lkws i und k an ein gemeinsames Tor wird durch die Hilfsvariable y ik repräsentiert. Beispielsweise kann Lkw 0 mit Lkw 2, 3, 4, 5 und 7 an ein gemeinsames Tor; somit existieren fünf Hilfsvariablen für Lkw 0. Insgesamt ergeben sich folgende Hilfsvariablen: y 02, y 03, y 04, y 05, y 07, y 12, y 13, y 14, y 15, y 17, y 23, y 24, y 25, y 26, y 27, y 34, y 37, y 46, y 47, y 56, y 57, y 67 Aus diesen Hilfsvariablen und den berechneten Gewichtungen der Zeitabstände, kann direkt die Zielfunktion geformt werden:

17 17 min y y y y y y y y y y y y y y y y y y y y y 67 Diese Zielfunktion wird nun gelöst unter der Voraussetzung, dass alle Nebenbedingungen erfüllt werden. Die Nebenbedingungen werden anhand der Gleichungen aufgestellt: Dabei ergeben sich aus 5.1 folgende 8 Gleichungen: x 00 + x 01 + x 02 = 1 x 40 + x 41 + x 42 = 1 x 10 + x 11 + x 12 = 1 x 50 + x 51 + x 52 = 1 x 20 + x 21 + x 22 = 1 x 60 + x 61 + x 62 = 1 x 30 + x 31 + x 32 = 1 x 70 + x 71 + x 72 = 1 Lkws, die sich zeitlich überlappen, dürfen nicht an ein und dasselbe Tor. Aus Gleichung 5.2 folgen in diesem Beispiel 18 Ungleichungen: x 00 + x 10 1 x 10 + x 60 1 x 30 + x 60 1 x 01 + x 11 1 x 11 + x 61 1 x 31 + x 61 1 x 02 + x 12 1 x 12 + x 62 1 x 32 + x 62 1 x 00 + x 60 1 x 30 + x 50 1 x 40 + x 50 1 x 01 + x 61 1 x 31 + x 51 1 x 41 + x 51 1 x 02 + x 62 1 x 32 + x 52 1 x 42 + x 52 1 Lkws, die gemeinsam an ein Tor zugeordnet werden können, werden durch Ausdrücke, gegeben durch Gleichung 5.3, dargestellt. Konkret sind es 66 Ungleichungen. x 00 + x 20 y 02 1 x 11 + x 41 y 14 1 x 22 + x 72 y 27 1 x 01 + x 21 y 02 1 x 12 + x 42 y 14 1 x 30 + x 40 y 34 1 x 02 + x 22 y 02 1 x 10 + x 50 y 15 1 x 31 + x 41 y 34 1 x 00 + x 30 y 03 1 x 11 + x 51 y 15 1 x 32 + x 42 y 34 1 x 01 + x 31 y 03 1 x 12 + x 52 y 15 1 x 30 + x 70 y 37 1 x 02 + x 32 y 03 1 x 10 + x 70 y 17 1 x 31 + x 71 y 37 1 x 00 + x 40 y 04 1 x 11 + x 71 y 17 1 x 32 + x 72 y 37 1 x 01 + x 41 y 04 1 x 12 + x 72 y 17 1 x 40 + x 60 y 46 1 x 02 + x 42 y 04 1 x 20 + x 30 y 23 1 x 41 + x 61 y 46 1 x 00 + x 50 y 05 1 x 21 + x 31 y 23 1 x 42 + x 62 y 46 1 x 01 + x 51 y 05 1 x 22 + x 32 y 23 1 x 40 + x 70 y 47 1 x 02 + x 52 y 05 1 x 20 + x 40 y 24 1 x 41 + x 71 y 47 1 x 00 + x 70 y 07 1 x 21 + x 41 y 24 1 x 42 + x 72 y 47 1 x 01 + x 71 y 07 1 x 22 + x 42 y 24 1 x 50 + x 60 y 56 1 x 02 + x 72 y 07 1 x 20 + x 50 y 25 1 x 51 + x 61 y 56 1 x 10 + x 20 y 12 1 x 21 + x 51 y 25 1 x 52 + x 62 y 56 1 x 11 + x 21 y 12 1 x 22 + x 52 y 25 1 x 50 + x 70 y 57 1 x 12 + x 22 y 12 1 x 20 + x 60 y 26 1 x 51 + x 71 y 57 1 x 10 + x 30 y 13 1 x 21 + x 61 y 26 1 x 52 + x 72 y 57 1 x 11 + x 31 y 13 1 x 22 + x 62 y 26 1 x 60 + x 70 y 67 1 x 12 + x 32 y 13 1 x 20 + x 70 y 27 1 x 61 + x 71 y 67 1 x 10 + x 40 y 14 1 x 21 + x 71 y 27 1 x 62 + x 72 y 67 1

18 18 Der Glpk-Solver löst nun diese Gleichungen bzw. Ungleichungen, liefert als Ergebnis eine Belegung der x ij Variablen (siehe Anhang 7.4) und zeigt somit an, welcher Lkw an welches Tor zugeordnet worden ist. Eine erneute Visualisierung, diesmal der optimalen Lösungen, wird in Abbildung 7 dargestellt. Abb. 7: Optimale Anordnung der Lkws im logikbasierten Beispiel Laufzeiten Eine der wichtigsten Fragen ist, ob dieses Modell in der Praxis Anwendung finden kann. Für ein Unternehmen ist die Berechnungszeit einer der ausschlaggebenden Faktoren, der nun untersucht werden soll. Nur ein Modell, deren Lösung in einer annehmbaren Zeit berechnet werden kann, ist für die Praxis geeignet. Selbst für komplexeste Problemgrößen, die in der Praxis zu finden sind, muss die Berechnungszeit akzeptabel sein. Abb. 8: Messzeiten der optimalen Berechnungen Basierend auf diesem Modell wurden Testdaten generiert und berechnet. Die Problemgrößen lagen dabei in einem Bereich von 3-15 Lkws verteilt auf 3-15 Toren. Die gemessenen Zeiten in [s] sind in Abbildung 8 zusammengefasst worden. Es ist zu erkennen, dass für alle Probleme bei denen die Zahl der Tore größer ist als die Anzahl der zuzuordnenden Lkws, eine Messzeit von 0 Sekunden gemessen wurde. Wird die Anzahl der Lkws größer als die Zahl der Tore, so steigt mit komplexer werdenden Problemen die Messzeit rapide an. Auf Grund der Tatsache, dass bei diversen Problemen kein Ende der Berechnung abzusehen war, wurden diese Tests abgebrochen und die bis dahin erfassten Messzeiten abgelesen. Des Weiteren konnten sehr unterschiedliche Messzeiten von identischen Problemgrößen (bspw. 12 Lkws

19 19 auf 3 Toren) erfasst werden. Diese wurden dann mit der minimalen und maximalen Messzeit eingetragen. Alle Problemgrößen, die mit einem -Zeichen markiert sind, gelten als mathematisch unlösbar, da es mindestens einen Zeitpunkt gibt, an dem mehr Lkws zuzuordnen wären, als es Tore gibt. Problematisch ist, dass selbst die getesteten Problemgrößen in der Praxis schnell überschritten werden und so noch extremere Messzeiten zu erwarten sind. Eine Abhilfe kann dadurch erlangt werden, dass die generierten Testdaten für den Solver nicht mehr als optimal zu berechnen sind (x ij {0, 1}), sondern nur noch approximativ (0 x ij 1). Dadurch, dass die optimale Lösung nun aufgeweicht wird, lassen sich Messzeiten für komplexere Problemgrößen festhalten. Diese nun erlangten Ergebnisse sind in Abbildung 9 zu sehen. Abb. 9: Messzeiten der approximativen Berechnung Bei diesen Testdaten stieg die Anzahl der Tore im Bereich 10 bis 50 je in 2er-Schritten an; die Anzahl der Lkws von 25 bis 125 in 5er-Schritten. Die Darstellung dieser Testreihen ist in einem dreidimensionalen Koordinatensystem umgesetzt worden. Es ist deutlich zu erkennen, dass kleine Problemgrößen eine akzeptable Zeit von wenigen Sekunden liefern. Im Vergleich zu den Berechnungen der optimalen Lösungen ist dies ein deutlicher Vorteil. Auch bei komplexen Problemgrößen liegt die Messzeit immerhin noch innerhalb weniger Minuten. Eine approximative Lösung liefert nun nicht mehr für eine Variable x ij einen Wert von 0 bzw. 1, sondern einen Wert, der innerhalb des Intervalls liegt. Das bedeutet, dass diese Fließkommazahl als Prozentsatz interpretieren werden kann, zu dem ein Lkw an ein Tor zu geordnet wird. Somit gilt: G x ij = 1 j=1 i T, j G

20 20 Anhand der Ergebnisse muss festgestellt werden, dass für jedes Problem, welches mit diesem Modell erstellt worden ist, eine approximative Lösung grundsätzlich eine symmetrische Aufteilung der Lkws ergibt. Wie beispielsweise in Anhang 7.5 zu erkennen ist, wird Lkw i immer zu 0.5 zum Tor 0 und zu 0.5 zum Tor 9 zugeordnet. Aus diesem Grund kann aus diesen prozentualen Zuordnungen keine präferierte Torzuordnung ableiten Erweiterung des Modells Aus dem zuletzt genannten Grund wird versucht die,, Zuordnung aufzubrechen, indem das vorhandene Gleichungssystem erweitert wird. Dies wird versucht, indem für alle unterschiedlichen maximalen Lkwgruppen, die sich zeitlich überschneiden - maximale Clique genannt - folgende Gleichungen hinzugefügt werden: T x ij = 1 i=1 j G, i T Für das in Kap vorgestellte Beispiel gäbe es somit eine maximale Clique der Größe 3. Die Lkws 0, 1 und 6 würden sich zeitlich überschneiden, sodass aus dieser Überschneidung folgende Gleichungen in ein zu approximierendes Gleichungssystem hinzuzufügen wären: x 00 + x 10 + x 60 1 x 01 + x 11 + x 61 1 x 02 + x 12 + x 62 1 Für viele, mit diesen zusätzlichen Gleichungen gemessenen Testreihen, ergaben sich allerdings keine Änderungen bezüglich den,, Zuordnungen. Manche dieser Zuordnungen konnten aber tatsächlich gelöst werden. Der im Anhang 7.6 befindliche Ausschnitt zeigt, dass Lkw 5 und 6 wie folgt zu den verschiedenen Tore zugeordnet werden: Auswertung Lkw 5 Lkw 6 zu % zu Tor 1 zu % zu Tor 0 zu % zu Tor 3 zu % zu Tor 1 zu % zu Tor 6 zu % zu Tor 21 zu % zu Tor 8 zu % zu Tor 21 Das logikbasierte Modell ist zwar eine Möglichkeit, um das Tor-Lkw-Zuordnungsproblem zu berechnen, allerdings kommt dieses Modell schnell an seine Grenzen. Diese sind geprägt durch die Fähigkeit des Modells auch in der Praxis Anwendung finden zu können. Für eine optimale Berechnung werden schon bei sehr kleinen Problemgrößen Messzeiten erfasst, die praktisch gesehen unrentabel sind. Diese Messzeiten beruhen höchstwahrscheinlich auf der Anzahl von Gleichungen, die durch generierte Probleme erstellt wurden. Dabei muss festgestellt werden, dass diese Gleichungen insgesamt quadratisch abhängig sind von der Anzahl der Lkws. Abhilfe sollte eine approximative Berechnung schaffen, die zwar den Nachteil der Laufzeit egalisierte, aber kein auswertbares Ergebnis in Bezug auf die Zuordnungen der Lkws zu den Toren lieferte. Eine solche symmetrische Approximation kann nicht als Basis für das

21 21 Ableiten von Toren aus diesen,,prozentwerten dienen. Auch der Versuch des Aufweichens dieser Werte durch das Hinzufügen von weiteren Gleichungen (maximale Clique) konnte nur bei wenigen Problem weiterhelfen. 5.2 Graphbasiertes Modell Aufgrund der genannten Nachteilen des vorherigen Modells wird ein zweites, graphbasiertes Modell erschaffen. Zunächst wird die Definition des Modells festgelegt, anschließend wird dies anhand eines Beispiels verdeutlicht. Zuletzt werden die Laufzeiten auf Basis derselben Daten wie in Kap. 5.1 ermittelt Graphentheoretische Definition Es soll erneut davon ausgegangen werden, dass T Lkws auf G Tore zugeordnet werden. Ein Graph G(V, E) mit einer Knotenmenge V und einer Kantenmenge E wird daher definiert. Die Knoten dieses Graphen werden auf Basis der generierten Lkw-Menge T erschaffen, sodass jeder Lkw durch einen Knoten t repräsentiert wird. Diese Knotenmenge wird mit 2 Hilfsknoten A und Z erweitert. Für die Knotenmenge V gilt somit: V = {0, 1, 2,..., T 1} {A} {Z} mit V = T + 2 Anschließend werden gerichtete Kanten definiert: Zum einen wird vom Hilfsknoten A zu jedem Knoten {0, 1,..., T 1} und von jedem dieser Knoten eine Kante zum Hilfsknoten Z erstellt. Für zwei Lkws j und k existiert ebenfalls eine gerichtete Kante e = (j, k), genau dann wenn eine zeitliche Überschneidung dieser Lkws ausgeschlossen ist und die Abfahrtzeit von Lkw j vor dem Beginn der Haltezeit von Lkw k liegt. Es gilt für die Kantenmenge E: E = {(A, i)} {(i, Z)} {e = (j, k) conflict(j, k) j d k p } i, j, k T Für die nun erstellten Kanten wird folgende Gewichtung vereinbart: 0 falls i = A c(i, j) = 0 falls j = Z λ g sonst Bezüglich der definierten Gewichtungen gilt dabei: g = k p j d Standardmäßig wird für λ der Wert 0.8 angenommen. Dieses Vorgehen erzeugt, im übertragenen Sinne, eine,,bestrafung für die zeitliche Beziehung zweier Lkws. Je kleiner die zeitliche Differenz ist, desto höher ist diese Bestrafung und desto höher wären die Auswirkungen, falls der erste Lkw eine Verspätung erfährt. Das Ziel ist es nun,,,pfade durch diesen erstellten Graphen zu finden, die folgende Eigenschaften erfüllen müssen:

22 22 t : d G (t) = 1 (5.4) t : d + G (t) = 1 (5.5) d + G (A) G (5.6) d + G (A) = d G (Z) (5.7) Zunächst darf jeder Lkw nur einmal abgearbeitet werden, d.h. in jeden Knoten führt nur eine Kante hinein bzw. hinaus; dies ist gleichbedeutend mit dem Festsetzen des Eingangsund Ausgangsgrades auf 1 für alle Knoten t [Gl. (5.4) und (5.5)]. Darüber hinaus darf es maximal nur so viele Pfade von A nach Z geben, wie es Tore gibt, an denen diese Gruppen von Lkws später zugewiesen werden können [Gl. (5.6)]. Außerdem muss die Anzahl der Kanten aus A gleich der Anzahl der Kanten in Z sein [Gl. (5.7)], um so symmetrische Pfade bilden zu können, die in A anfangen und grundsätzlich in Z enden Transformation in die algebraische Ebene Aus der graphbasierten Definition muss das Gleichungssystem geformt werden, welches durch den Glpk-Solver gelöst werden soll. Ausgehend von jeder Kante (i, j) des Graphen wird eine Variable x ij {0, 1} abgeleitet, die mit ihrer Gewichtung multipliziert wird. Das Minimieren der Summe über alle gewichteten Variablen, lässt sich somit als Zielfunktion festhalten: min c ij x ij Die vier Bedingungen, gegebenen durch Gleichungen , welche die,,pfade des Graphen erfüllen müssen, werden in eine äquivalente algebraische Struktur gebracht: t T : t T : j {A} j {Z} x j t = 1 j T {A} (5.8) x t j = 1 j T {Z} (5.9) x A j G j T (5.10) j x A j i j x i Z = 0 i, j T (5.11) Ein Vorteil, der sich durch dieses Modell ergibt, ist, dass die Anzahl der Nebenbedingungen für das Gleichungssystem nur noch linear abhängig von der Anzahl der Lkws ist. Es werden für ein Zuordnungsproblem mit t Lkws 2 t + 2 Nebenbedingungen erstellt.

23 Beispiel des graphbasierenden Modells Um eine bessere Vorstellung über die Erstellung eines solchen Graphen zu erhalten, wird in diesem Abschnitt ein Beispiel mit der genannten Definition vorgestellt. Dazu wird festgelegt, dass 8 zeitlich zufällig generierte Lkws auf 3 Tore optimal verteilt werden sollen. Abbildung 10 gibt einen Überblick über die Stand- und Abfahrtszeiten der Lkws. Die Anordnung auf die drei Tore ist hierbei nicht als optimal anzusehen. Abb. 10: Intuitive Anordnung der Lkws an drei Tore (graphbasiertes Modell) Erstellt wird für jeden dieser acht Lkws ein Knoten. Diese Knotenmenge wird ergänzt um die beiden Hilfsknoten A und Z. Wie in Kapitel vorgestellt, werden die Knoten durch Kanten wie folgt verbunden: Von A gehen 8 Kanten aus, nämlich zu jedem der 8 Lkw-Knoten; von diesen wiederum je eine Kante zum Knoten Z. Zwei Lkw-Knoten werden genau dann durch eine Kante verbunden, wenn die dafür notwendigen Bedingungen erfüllt sind. Der erstellte Graph wird in Abbildung 11 dargestellt. Um eine bessere Gesamtübersicht zu erreichen sind die Kanten, die aus A herausgehen bzw. in Z münden nur durch wenige Exemplare angedeutet und somit nicht vollständig eingezeichnet. Abb. 11: Vollständiger Graph des Beispiels Der nächste Schritt ist das Ableiten der algebraischen Struktur aus diesem Graphen. Alle Kanten des Graphen werden in Variablen übertragen. Angewandt auf das Beispiel bedeutet dies, dass folgende Variablen erstellt werden:

24 24 Kanten aus A zu allen Knoten t ergeben folgende Variablen: x A0, x A1, x A2, x A3, x A4, x A5, x A6, x A7 Kanten von allen Knoten t zu Z ergeben folgende Variablen: x 0Z, x 1Z, x 2Z, x 3Z, x 4Z, x 5Z, x 6Z, x 7Z Kanten, gegeben durch Lkw-Knoten ergeben folgende Variablen: x 03, x 04, x 13, x 14, x 20, x 21, x 23, x 24, x 26, x 50, x 53, x 54, x 56, x 63, x 64, x 70, x 71, x 72, x 73, x 74, x 75, x 76 Gaps sind, wie im ersten Modell, gegeben durch die zeitlichen Halte- und Abfahrtzeiten der einzelnen Lkws, sodass diese Gewichtung der Kanten, multipliziert mit den dazugehörigen Kantenvariablen x ij die zu minimierende Zielfunktion ergibt. Diese lautet: min x x x x x x x x x x x x x x x x x x x x x x 76 Es gilt diese Zielfunktion unter bestimmten Nebenbedingungen zu lösen, die in Form von Gleichungen aufgestellt werden können. Durch die gegebenen 8 Lkws ergibt sich, dass es sich dabei um = 18 Gleichungen handeln müssen: Aus Gleichung 5.8 ergeben sich: x A0 + x 20 + x 50 + x 70 = 1 x A1 + x 21 + x 71 = 1 x A2 + x 72 = 1 x A3 + x 03 + x 13 + x 23 + x 53 + x 63 + x 73 = 1 x A4 + x 04 + x 14 + x 24 + x 54 + x 64 + x 74 = 1 x A5 + x 75 = 1 x A6 + x 26 + x 56 + x 76 = 1 x A7 = 1 Aus Gleichung 5.9 ergeben sich : x 03 + x 04 + x 0Z = 1 x 13 + x 14 + x 1Z = 1 x 20 + x 21 + x 23 + x 24 + x 26 + x 2Z = 1 x 3Z = 1 x 4Z = 1 x 50 + x 53 + x 54 + x 56 + x 5Z = 1 x 63 + x 64 + x 6Z = 1 x 70 + x 71 + x 72 + x 73 + x 74 + x 75 + x 76 + x 7Z = 1 Aus Gleichung 5.10 ergibt sich : x A0 + x A1 + x A2 + x A3 + x A4 + x A5 + x A6 + x A7 3 Aus Gleichung 5.11 ergibt sich : x A0 + x A1 + x A2 + x A3 + x A4 + x A5 + x A6 + x A7 x 0Z + x 1Z + x 2Z + x 3Z + x 4Z + x 5Z + x 6Z + x 7Z = 0

25 25 Die Definition der Zielfunktion, die Bestimmung der Nebenbedingungen sowie die erstellten Variablen dienen als Eingabe für den Glpk-Solver. Das Cplex-Format kann als Schnittstelle verwendet werden, um so möglichst benutzerfreundlich die Daten in den Solver zu übergeben. Nach dem Lösungsvorgang des Solvers werden die gefundenen Belegungen der Variablen dazu verwendet, um die,,pfade zu rekonstruieren. Anhang 7.7 beinhaltet den relevanten Ausschnitt mit der Variablenbelegung aus der Ausgabe des Solvers für dieses Beispiel. Durch das Finden einer optimalen Lösungen für die Bedingung T G ist davon auszugehen ist, dass der Solver genau so viele Pfade kreiert, wie Tore existieren und somit alle gegebenen Tore ausnutzt. Die Lösung des Glpk-Solvers beinhaltet drei Pfade: A Z A Z A 2 6 Z Diese Pfade bilden Gruppen von Lkws, die zusammen an einem Tor abgearbeitet werden. Die anschließende Zuordnung einer Gruppe zu einem Tor kann, ohne ein weiteres Festlegen von Bedingungen, willkürlich erfolgen. Abbildung 12 zeigt die berechnete optimale zeitliche Zuordnung. Abb. 12: Optimale Anordnung der Lkws im graphbasierten Beispiel (Un)lösbarkeit des Problems Bevor eine Problemstellung berechnet wird, sollte geprüft werden, ob ein Problem überhaupt lösbar ist. Beim Tor-Lkw-Zuordnungsproblem wird eine optimale Zuordnung der Lkws zu den Toren gesucht, sodass die Auswirkung von verspäteten Lkws minimiert wird. Unter bestimmten Umständen ist es möglich, dass zu einem bestimmten Zeitpunkt mehr Lkws vorhanden sind, als Tore überhaupt zu Verfügung stehen. Es ist somit logisch, dass eine solche Aufteilung der Lkws nicht stattfinden kann, da mindestens ein Lkw keinem Tor mehr zugeordnet werden kann. Dies soll im Folgenden formalisiert werden. Eine solche Konfliktsituation lässt sich durch einen Konfliktgraphen erkennen. Ein Graph G(V, E) mit V = {0, 1..., T 1} und E = {e(i, j) conflict(i, j)}, i, j T wird dazu erstellt. Dieser zeigt durch seine Kanten an, welche Lkws zueinander in Konflikt stehen. Jede Clique in diesem Graph, die größer ist als die gegebene Anzahl an Toren bildet somit eine Gruppe an Lkws, die zu einem bestimmten Zeitpunkt nicht auf die zur Verfügung stehenden Tore verteilt werden können. Obwohl das Finden einer Clique mit einer bestimmten Größe eines Graphen als NP-vollständiges Problem gilt (Garey, M. und Johnson, D., 1979, S. 47), kann es durch die zeitliche

26 26 Beziehung der Lkws untereinander doch in polynomieller Zeit gelöst werden. Dies geschieht durch die Iteration über alle Zeitslots und die Aufsummierung der jeweilige Anzahl an Lkws, die an einem Zeitpunkt an einem Tor halten. Der folgende Pseudocode liefert,,false als Rückgabewert, falls es mindestens einen Zeitpunkt gibt, an dem die Anzahl der Lkws größer ist, als die Anzahl der Tore. for all zeitslots do truckcounter 0 for all trucks do if zeitslot > truck.preparation and zeitslot < truck.departure then truckcounter + + end if end for if truckcount > gates then return false end if end for return true Laufzeiten Die wichtige Frage ist auch bei diesem Modell, wie sich die Laufzeiten in der praktischen Anwendung verhalten. Hierbei sind Daten generiert worden, die ein Verhältnis von 2.5 Lkws pro Tor umsetzen. Abbildung 13 zeigt nun den Vergleich der Laufzeiten des ersten Modells (grün) und des graphbasierten Modell (rot). Zu erkennen ist, dass die gemessenen Zeiten des zweiten Modells, über alle Problemfälle hinweg, deutlich geringer sind. So konnten auch weitaus komplexere Größenordnungen berechnet werden. Selbst die Anwendung des Modells auf die komplexeste Problemgröße (200 Tore mit 500 Lkws) ergibt,,nur eine gemessene Zeit von 11 Sekunden und liegt somit in einem zeitlichen Rahmen, der in der Praxis Anwendung finden kann. Im logistischen Sektor ist es allerdings unwahrscheinlich ein Lager zu finden, an dem tatsächlich 200 Tore zur Verfügung stehen. Abb. 13: Vergleich der Laufzeiten beider Modelle

Kapitel 9: Lineare Programmierung Gliederung

Kapitel 9: Lineare Programmierung Gliederung Gliederung 1. Grundlagen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. Ausgewählte Datenstrukturen 5. Dynamisches Programmieren 6. Graphalgorithmen 7. String-Matching 8. Kombinatorische Algorithmen

Mehr

Perlen der Informatik I Wintersemester 2012 Aufgabenblatt 7

Perlen der Informatik I Wintersemester 2012 Aufgabenblatt 7 Technische Universität München WS 2012 Institut für Informatik Prof. Dr. H.-J. Bungartz Prof. Dr. T. Huckle Prof. Dr. M. Bader Kristof Unterweger Perlen der Informatik I Wintersemester 2012 Aufgabenblatt

Mehr

Ausarbeitung zum Modulabschluss. Graphentheorie. spannende Bäume, bewertete Graphen, optimale Bäume, Verbindungsprobleme

Ausarbeitung zum Modulabschluss. Graphentheorie. spannende Bäume, bewertete Graphen, optimale Bäume, Verbindungsprobleme Universität Hamburg Fachbereich Mathematik Seminar: Proseminar Graphentheorie Dozentin: Haibo Ruan Sommersemester 2011 Ausarbeitung zum Modulabschluss Graphentheorie spannende Bäume, bewertete Graphen,

Mehr

Theoretische Informatik. Exkurs: Komplexität von Optimierungsproblemen. Optimierungsprobleme. Optimierungsprobleme. Exkurs Optimierungsprobleme

Theoretische Informatik. Exkurs: Komplexität von Optimierungsproblemen. Optimierungsprobleme. Optimierungsprobleme. Exkurs Optimierungsprobleme Theoretische Informatik Exkurs Rainer Schrader Exkurs: Komplexität von n Institut für Informatik 13. Mai 2009 1 / 34 2 / 34 Gliederung Entscheidungs- und Approximationen und Gütegarantien zwei Greedy-Strategien

Mehr

6. Softwarewerkzeuge für die Lineare Programmierung

6. Softwarewerkzeuge für die Lineare Programmierung 6. Softwarewerkzeuge für die Lineare Programmierung Inhalt 6. Softwarewerkzeuge für die Lineare Programmierung GNU Linear Programming Kit Operations Research I Hochschule Bonn-Rhein-Sieg, SS 2013 314 GNU

Mehr

Dualitätssätze der linearen Optimierung

Dualitätssätze der linearen Optimierung Kapitel 9 Dualitätssätze der linearen Optimierung Sei z = c T x min! Ax = b 9.1 x 0 mit c, x R n, b R m, A R m n ein lineares Programm. Definition 9.1 Duales lineares Programm. Das lineare Programm z =

Mehr

3.2 Lineare Optimierung (Entscheidungen unter Sicherheit)

3.2 Lineare Optimierung (Entscheidungen unter Sicherheit) 3. Lineare Optimierung (Entscheidungen unter Sicherheit) Betrachtet wird hier der Fall Θ = (bzw. die Situation u(a, ϑ) bzw. l(a,ϑ) konstant in ϑ Θ für alle a A). Da hier keine Unsicherheit über die Umweltzustände

Mehr

Betriebliche Optimierung

Betriebliche Optimierung Betriebliche Optimierung Joachim Schauer Institut für Statistik und OR Uni Graz Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 1 / 22 1 Das Travelling Salesperson Problem

Mehr

Algorithmen zur Visualisierung von Graphen Lagenlayouts

Algorithmen zur Visualisierung von Graphen Lagenlayouts Algorithmen zur Visualisierung von Graphen Lagenlayouts Marcus Krug Institut für Theoretische Informatik 25.06.2009 1/ 41 E-Mail-Graph der Fakultät für Informatik 2/ 41 E-Mail-Graph der Fakultät für Informatik

Mehr

Betriebswirtschaftliche Optimierung

Betriebswirtschaftliche Optimierung Institut für Statistik und OR Uni Graz 1 Das Travelling Salesperson Problem 2 Das Travelling Salesperson Problem Zentrales Problem der Routenplanung Unzählige wissenschaftliche Artikel theoretischer sowie

Mehr

Algorithmen und Datenstrukturen 2 VU 3.0 Nachtragstest SS Oktober 2016

Algorithmen und Datenstrukturen 2 VU 3.0 Nachtragstest SS Oktober 2016 Technische Universität Wien Institut für Computergraphik und Algorithmen Algorithms and Complexity Group 186.815 Algorithmen und Datenstrukturen 2 VU 3.0 Nachtragstest SS 2016 5. Oktober 2016 Machen Sie

Mehr

Optimieren unter Nebenbedingungen

Optimieren unter Nebenbedingungen Optimieren unter Nebenbedingungen Hier sucht man die lokalen Extrema einer Funktion f(x 1,, x n ) unter der Nebenbedingung dass g(x 1,, x n ) = 0 gilt Die Funktion f heißt Zielfunktion Beispiel: Gesucht

Mehr

Approximationsalgorithmen

Approximationsalgorithmen Effiziente Algorithmen Lösen NP-vollständiger Probleme 320 Approximationsalgorithmen In polynomieller Zeit lässen sich nicht exakte Lösungen von NP-harten Problemen berechnen. Approximationsalgorithmen

Mehr

Routing A lgorithmen Algorithmen Begriffe, Definitionen Wegewahl Verkehrslenkung

Routing A lgorithmen Algorithmen Begriffe, Definitionen Wegewahl Verkehrslenkung Begriffe, Definitionen Routing (aus der Informatik) Wegewahl oder Verkehrslenkung bezeichnet in der Telekommunikation das Festlegen von Wegen für Nachrichtenströme bei der Nachrichtenübermittlung über

Mehr

3.3 Optimale binäre Suchbäume

3.3 Optimale binäre Suchbäume 3.3 Optimale binäre Suchbäume Problem 3.3.1. Sei S eine Menge von Schlüsseln aus einem endlichen, linear geordneten Universum U, S = {a 1,,...,a n } U und S = n N. Wir wollen S in einem binären Suchbaum

Mehr

Optimierung. Vorlesung 08

Optimierung. Vorlesung 08 Optimierung Vorlesung 08 Heute Dualität Ganzzahligkeit Optimierung der Vorlesung durch Evaluierung 2 Das duale LP Das primale LP Maximiere c T x unter Ax b, x R d 0. wird zu dem dualen LP Minimiere b T

Mehr

Constraint-basierte Planung und Optimierung von Prüfungsterminen mithilfe einer graphischen Benutzeroberfläche

Constraint-basierte Planung und Optimierung von Prüfungsterminen mithilfe einer graphischen Benutzeroberfläche Douglas Cunningham,Petra Hofstedt, Klaus Meer, IngoSchmitt (Hrsg.): INFORMATIK 2015 LectureNotes in Informatics (LNI), Gesellschaft für Informatik, Bonn 2015 Constraint-basierte Planung und Optimierung

Mehr

Stochastische Approximation des Value at Risk

Stochastische Approximation des Value at Risk Stochastische Approximation des Value at Risk Annemarie Bitter Motivation Eines der wichtigsten Projekte der Versicherungswirtschaft ist derzeit die sogenannte Solvency-II-Richtlinie der Versicherungsaufsicht.

Mehr

Effiziente Algorithmen II

Effiziente Algorithmen II 10. Präsenzaufgabenblatt, WiSe 2014/15 Übungstunde am 19.01.2015 Aufgabe Q Betrachten Sie das Knapsackpolytop P = conv(v ) mit V = {x n i=1 a ix i α} {0, 1} n für gegebenes α und a i 0 (insbesondere ist

Mehr

Newton-Verfahren zur gleichungsbeschränkten Optimierung. 1 Gleichungsbeschränkte Optimierungsprobleme

Newton-Verfahren zur gleichungsbeschränkten Optimierung. 1 Gleichungsbeschränkte Optimierungsprobleme Newton-Verfahren zur gleichungsbeschränkten Optimierung Armin Farmani Anosheh (afarmani@mail.uni-mannheim.de) 3.Mai 2016 1 Gleichungsbeschränkte Optimierungsprobleme Einleitung In diesem Vortrag geht es

Mehr

Planare Graphen und Färbungen. Kapitel 7. Peter Becker (H-BRS) Graphentheorie Wintersemester 2018/ / 296

Planare Graphen und Färbungen. Kapitel 7. Peter Becker (H-BRS) Graphentheorie Wintersemester 2018/ / 296 Kapitel 7 Peter Becker (H-BRS) Graphentheorie Wintersemester 2018/19 256 / 296 Inhalt Inhalt 7 Färbungen Peter Becker (H-BRS) Graphentheorie Wintersemester 2018/19 257 / 296 Jordankurve Zentrale Frage

Mehr

Stochastische Approximation des Value at Risk

Stochastische Approximation des Value at Risk Stochastische Approximation des Value at Risk Zusammenfassung der Masterarbeit an der Universität Ulm Annemarie Bitter Motivation Eines der wichtigsten Projekte der Versicherungswirtschaft ist derzeit

Mehr

Der Alpha-Beta-Algorithmus

Der Alpha-Beta-Algorithmus Der Alpha-Beta-Algorithmus Maria Hartmann 19. Mai 2017 1 Einführung Wir wollen für bestimmte Spiele algorithmisch die optimale Spielstrategie finden, also die Strategie, die für den betrachteten Spieler

Mehr

Planung des Krankenhauspflegepersonals unter dem Einfluss der OP-Auslastung

Planung des Krankenhauspflegepersonals unter dem Einfluss der OP-Auslastung Planung des Krankenhauspflegepersonals unter dem Einfluss der OP-Auslastung Tobias Kreisel Universität Bayreuth Mathematisches Institut Seminar zur Ganzzahligen Optimierung Ausgangssituation Beweggründe

Mehr

11. Übung zu Algorithmen I 6. Juli 2016

11. Übung zu Algorithmen I 6. Juli 2016 11. Übung zu Algorithmen I 6. Juli 2016 Lisa Kohl lisa.kohl@kit.edu mit Folien von Lukas Barth Roadmap Ausblick: Was sind schwierige Probleme? Travelling Salesman Problem - Reprise ein ILP ein Algorithmus

Mehr

Graphenalgorithmen und lineare Algebra Hand in Hand Prof. Dr. Henning Meyerhenke

Graphenalgorithmen und lineare Algebra Hand in Hand Prof. Dr. Henning Meyerhenke Graphenalgorithmen und lineare Algebra Hand in Hand Prof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund für Theoretische

Mehr

Schnittebenenverfahren für das symmetrische

Schnittebenenverfahren für das symmetrische Schnittebenenverfahren für das symmetrische TSP Sebastian Peetz Mathematisches Institut Universität Bayreuth 19. Januar 2007 / Blockseminar Ganzzahlige Optimierung, Bayreuth Gliederung 1 Das symmetrische

Mehr

Entwurf und Umsetzung eines Werkzeugs für die Fluchtwegplanung

Entwurf und Umsetzung eines Werkzeugs für die Fluchtwegplanung Entwurf und Umsetzung eines Werkzeugs für die Fluchtwegplanung Diplomarbeit Christian Weiprecht Bauhaus-Universität Weimar Fakultät Bauingenieurwesen Professur CAD in der Bauinformatik Inhaltsübersicht

Mehr

Flächenaggregation LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK

Flächenaggregation LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Vorlesung Algorithmische Kartografie Flächenaggregation LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 09.07.2013 1 Flächenaggregation Flächennutzung

Mehr

Routing Algorithmen. Begriffe, Definitionen

Routing Algorithmen. Begriffe, Definitionen Begriffe, Definitionen Routing (aus der Informatik) Wegewahl oder Verkehrslenkung bezeichnet in der Telekommunikation das Festlegen von Wegen für Nachrichtenströme bei der Nachrichtenübermittlung über

Mehr

Dieses Kapitel vermittelt:

Dieses Kapitel vermittelt: 2 Funktionen Lernziele Dieses Kapitel vermittelt: wie die Abhängigkeit quantitativer Größen mit Funktionen beschrieben wird die erforderlichen Grundkenntnisse elementarer Funktionen grundlegende Eigenschaften

Mehr

Lernmodul 7 Algorithmus von Dijkstra

Lernmodul 7 Algorithmus von Dijkstra Folie 1 von 30 Lernmodul 7 Algorithmus von Dijkstra Quelle: http://www.map24.de Folie 2 von 30 Algorithmus von Dijkstra Übersicht Kürzester Weg von A nach B in einem Graphen Problemstellung: Suche einer

Mehr

7.1 Matrizen und Vektore

7.1 Matrizen und Vektore 7.1 Matrizen und Vektore Lineare Gleichungssysteme bestehen aus einer Gruppe von Gleichungen, in denen alle Variablen nur in der 1. Potenz vorkommen. Beispiel Seite 340 oben: 6 x 2 = -1 + 3x 2 = 4 mit

Mehr

Kapitel 4: Netzplantechnik Gliederung der Vorlesung

Kapitel 4: Netzplantechnik Gliederung der Vorlesung Gliederung der Vorlesung 1. Grundbegriffe 2. Elementare Graphalgorithmen und Anwendungen 3. Kürzeste Wege 4. Netzplantechnik 5. Minimal spannende Bäume 6. Traveling Salesman Problem 7. Flüsse in Netzwerken

Mehr

HM I Tutorium 1. Lucas Kunz. 27. Oktober 2016

HM I Tutorium 1. Lucas Kunz. 27. Oktober 2016 HM I Tutorium 1 Lucas Kunz 27. Oktober 2016 Inhaltsverzeichnis 1 Theorie 2 1.1 Logische Verknüpfungen............................ 2 1.2 Quantoren.................................... 3 1.3 Mengen und ihre

Mehr

Handbuch für die Erweiterbarkeit

Handbuch für die Erweiterbarkeit Handbuch für die Erweiterbarkeit Inhalt Pakete für die Erweiterbarkeit... 2 Actions... 2 Items... 2 Itemset... 2 Die UseCaseNewAction... 3 Eigene Shapes... 4 Der Shape Container... 5 User Objects... 6

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Wintersemester 2012/13 26. Vorlesung Greedy- und Approximationsalgorithmen Prof. Dr. Alexander Wolff Lehrstuhl für Informatik I Operations Research Optimierung für Wirtschaftsabläufe:

Mehr

10. Die Berücksichtigung nicht vorzeichenbeschränkter Variablen

10. Die Berücksichtigung nicht vorzeichenbeschränkter Variablen 10. Die Berücksichtigung nicht vorzeichenbeschränkter Variablen Bisher haben wir immer vorausgesetzt, dass alle Variablen eines LOP der Bedingung x i 0 liegen. Im Folgenden wollen wir auch sogenannte freie

Mehr

3. Die Datenstruktur Graph

3. Die Datenstruktur Graph 3. Die Datenstruktur Graph 3.1 Einleitung: Das Königsberger Brückenproblem Das Königsberger Brückenproblem ist eine mathematische Fragestellung des frühen 18. Jahrhunderts, die anhand von sieben Brücken

Mehr

Übung 2 Algorithmen II

Übung 2 Algorithmen II Yaroslav Akhremtsev, Demian Hespe yaroslav.akhremtsev@kit.edu, hespe@kit.edu Mit Folien von Michael Axtmann (teilweise) http://algo2.iti.kit.edu/algorithmenii_ws17.php - 0 Akhremtsev, Hespe: KIT Universität

Mehr

Algorithmen und Komplexität

Algorithmen und Komplexität Algorithmen und Komplexität Dynamische Programmierung Markus Ullrich Norbert Baum Fachbereich Informatik - IIb07 Hochschule Zittau/Görlitz 28. Mai 2009 1 / 29 Wie sieht es mit langen Ketten aus? A 1 A

Mehr

1. Transport- und Zuordnungsprobleme Optimierungsalgorithmus für Transportprobleme. Duales Problem. a i u i + i=1. j=1

1. Transport- und Zuordnungsprobleme Optimierungsalgorithmus für Transportprobleme. Duales Problem. a i u i + i=1. j=1 1. Transport- und Zuordnungsprobleme Optimierungsalgorithmus für Transportprobleme Duales Problem Lemma 1.4. Das zum Transportproblem duale Problem lautet: max unter den Nebenbedingungen m a i u i + i=1

Mehr

4. Segmentierung von Objekten Video - Inhaltsanalyse

4. Segmentierung von Objekten Video - Inhaltsanalyse 4. Segmentierung von Objekten Video - Inhaltsanalyse Stephan Kopf Inhalt Vorgehensweise Berechnung der Kamerabewegungen zwischen beliebigen Bildern Transformation eines Bildes Hintergrundbilder / Panoramabilder

Mehr

Flächenaggregation. Benjamin Niedermann Vorlesung Algorithmische Kartografie /

Flächenaggregation. Benjamin Niedermann Vorlesung Algorithmische Kartografie / Vorlesung Algorithmische Kartografie LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Benjamin Niedermann Martin Nöllenburg 30.04.205/05.05.205 Flächennutzung Maßstab

Mehr

TEIL 13: DIE EINFACHE LINEARE REGRESSION

TEIL 13: DIE EINFACHE LINEARE REGRESSION TEIL 13: DIE EINFACHE LINEARE REGRESSION Die einfache lineare Regression Grundlagen Die einfache lineare Regression ist ebenfalls den bivariaten Verfahren für metrische Daten zuzuordnen 1 Sie hat einen

Mehr

Scheduling-Theorie. Mathematische Modelle und Methoden für deterministische Scheduling-Probleme. LiSA - A Library of Scheduling Algorithms

Scheduling-Theorie. Mathematische Modelle und Methoden für deterministische Scheduling-Probleme. LiSA - A Library of Scheduling Algorithms Scheduling-Theorie Mathematische Modelle und Methoden für deterministische Scheduling-Probleme LiSA - A Library of Scheduling Algorithms Otto-von-Guericke Universität Magdeburg/FMA/Heidemarie Bräsel &

Mehr

Vorlesung 1: Graphentheorie. Markus Püschel David Steurer. Algorithmen und Datenstrukturen, Herbstsemester 2018, ETH Zürich

Vorlesung 1: Graphentheorie. Markus Püschel David Steurer. Algorithmen und Datenstrukturen, Herbstsemester 2018, ETH Zürich Vorlesung 1: Graphentheorie Markus Püschel David Steurer Algorithmen und Datenstrukturen, Herbstsemester 2018, ETH Zürich Plan für die ersten Vorlesungen Vorlesungen 1,2: wichtige mathematische Grundlagen;

Mehr

Approximationsalgorithmen. 19. Dezember / 28

Approximationsalgorithmen. 19. Dezember / 28 Approximationsalgorithmen 19. Dezember 2017 1 / 28 Optimierungsprobleme Das Ziel: Bearbeite schwierige Optimierungsprobleme der Form opt y f (x, y) so dass L(x, y). Die Zielfunktion f (x, y) ist zu minimieren

Mehr

Matchings in Graphen. Praktikum Diskrete Optimierung (Teil 5)

Matchings in Graphen. Praktikum Diskrete Optimierung (Teil 5) Praktikum Diskrete Optimierung (Teil 5) 6.05.009 Matchings in Graphen Es sei ein ungerichteter Graph G = (V, E) gegeben. Ein Matching in G ist eine Teilmenge M E, so dass keine zwei Kanten aus M einen

Mehr

Einführung in die linearen Funktionen. Autor: Benedikt Menne

Einführung in die linearen Funktionen. Autor: Benedikt Menne Einführung in die linearen Funktionen Autor: Benedikt Menne Inhaltsverzeichnis Vorwort... 3 Allgemeine Definition... 3 3 Bestimmung der Steigung einer linearen Funktion... 4 3. Bestimmung der Steigung

Mehr

Synthese Eingebetteter Systeme. 12 Synthese: Bereitstellung (Allocation)

Synthese Eingebetteter Systeme. 12 Synthese: Bereitstellung (Allocation) 12 Synthese Eingebetteter Systeme Wintersemester 2012/13 12 Synthese: Bereitstellung (Allocation) 2012/12/10 Michael Engel Informatik 12 TU Dortmund Synthese: Bereitstellung (Allocation) Bereitstellung

Mehr

3.2.5 Dualität der linearen Optimierung I

3.2.5 Dualität der linearen Optimierung I 3..5 Dualität der linearen Optimierung I Jedem linearen Programm in Standardform kann ein sogenanntes duales Programm zugeordnet werden. Es entsteht dadurch, daß man von einem Minimierungsproblem zu einem

Mehr

Zentralübung zur Vorlesung Diskrete Strukturen (Prof. Esparza)

Zentralübung zur Vorlesung Diskrete Strukturen (Prof. Esparza) WS 2013/14 Zentralübung zur Vorlesung Diskrete Strukturen (Prof. Esparza) Dr. Werner Meixner Fakultät für Informatik TU München http://www14.in.tum.de/lehre/2013ws/ds/uebung/ 30. Oktober 2013 ZÜ DS ZÜ

Mehr

Aufgaben zur Klausurvorbereitung

Aufgaben zur Klausurvorbereitung Vorlesung Graphen und Optimierung Sommersemester 2013/14 Prof. S. Lange Aufgaben zur Klausurvorbereitung Hier finden Sie eine Reihe von Übungsaufgaben, die wir an den beiden Vorlesungsterminen am 29.01.2014

Mehr

Einführung in Operations Research

Einführung in Operations Research Wolfgang Domschke Andreas Drexl Einführung in Operations Research Achte Auflage fyj Springer Inhaltsverzeichnis Vorwort Symbolverzeichnis V XIII Kapitel 1: Einführung 1 1.1 Begriff des Operations Research

Mehr

Algorithmen zur Visualisierung von Graphen Lagenlayouts Teil 2

Algorithmen zur Visualisierung von Graphen Lagenlayouts Teil 2 Algorithmen zur Visualisierung von Graphen Teil 2 INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Tamara Mchedlidze Martin Nöllenburg Ignaz Rutter 18.12.2012 Geg.: gerichteter Graph D = (V,

Mehr

Graphentheorie. Kürzeste Wege. Kürzeste Wege. Kürzeste Wege. Rainer Schrader. 25. Oktober 2007

Graphentheorie. Kürzeste Wege. Kürzeste Wege. Kürzeste Wege. Rainer Schrader. 25. Oktober 2007 Graphentheorie Rainer Schrader Zentrum für Angewandte Informatik Köln 25. Oktober 2007 1 / 20 2 / 20 Wir werden Optimierungsprobleme vom folgenden Typ betrachten: gegeben eine Menge X und eine Funktion

Mehr

Einführung in das Seminar Algorithmentechnik

Einführung in das Seminar Algorithmentechnik Einführung in das Seminar Algorithmentechnik 10. Mai 2012 Henning Meyerhenke, Roland Glantz 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Roland undglantz: nationales Einführung Forschungszentrum

Mehr

09. Übung zu Algorithmen I 12. Juli 2017

09. Übung zu Algorithmen I 12. Juli 2017 09. Übung zu Algorithmen I 12. Juli 2017 Björn Kaidel bjoern.kaidel@kit.edu mit Folien von Lukas Barth 1 / 67 Roadmap Ausblick: Was sind schwierige Probleme? Travelling Salesman Problem - Reprise ein ILP

Mehr

Theoretische Informatik 1

Theoretische Informatik 1 Theoretische Informatik 1 Approximierbarkeit David Kappel Institut für Grundlagen der Informationsverarbeitung Technische Universität Graz 02.07.2015 Übersicht Das Problem des Handelsreisenden TSP EUCLIDEAN-TSP

Mehr

9 Minimum Spanning Trees

9 Minimum Spanning Trees Im Folgenden wollen wir uns genauer mit dem Minimum Spanning Tree -Problem auseinandersetzen. 9.1 MST-Problem Gegeben ein ungerichteter Graph G = (V,E) und eine Gewichtsfunktion w w : E R Man berechne

Mehr

5 Grundlagen der Differentialrechnung

5 Grundlagen der Differentialrechnung VWA-Mathematik WS 2003/04 1 5 Grundlagen der Differentialrechnung 5.1 Abbildungen Unter einer Abbildung f, f:d W, y= f( ) von einer Menge D (Definitionsbereich) in eine Menge W (Wertemenge) versteht man

Mehr

Theoretische Informatik 1

Theoretische Informatik 1 Theoretische Informatik 1 Approximierbarkeit David Kappel Institut für Grundlagen der Informationsverarbeitung Technische Universität Graz 10.06.2016 Übersicht Das Problem des Handelsreisenden TSP EUCLIDEAN-TSP

Mehr

A2.3 Lineare Gleichungssysteme

A2.3 Lineare Gleichungssysteme A2.3 Lineare Gleichungssysteme Schnittpunkte von Graphen Bereits weiter oben wurden die Schnittpunkte von Funktionsgraphen mit den Koordinatenachsen besprochen. Wenn sich zwei Geraden schneiden, dann müssen

Mehr

Inhalt. 8.1 Motivation. 8.2 Optimierung ohne Nebenbedingungen. 8.3 Optimierung unter Nebenbedingungen. 8.4 Lineare Programmierung

Inhalt. 8.1 Motivation. 8.2 Optimierung ohne Nebenbedingungen. 8.3 Optimierung unter Nebenbedingungen. 8.4 Lineare Programmierung 8. Optimierung Inhalt 8.1 Motivation 8.2 Optimierung ohne Nebenbedingungen 8.3 Optimierung unter Nebenbedingungen 8.4 Lineare Programmierung 8.5 Kombinatorische Optimierung 2 8.1 Motivation Viele Anwendungen

Mehr

Probleme aus NP und die polynomielle Reduktion

Probleme aus NP und die polynomielle Reduktion Probleme aus NP und die polynomielle Reduktion Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 15. Dezember 2009 Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit

Mehr

Entscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen?

Entscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen? Entscheidungsbäume Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen? Definition Entscheidungsbaum Sei T ein Binärbaum und A = {a 1,..., a n } eine zu sortierenden Menge. T ist ein Entscheidungsbaum

Mehr

Einführung in Operations Research

Einführung in Operations Research Wolfgang Domschke Andreas Drexl Einführung in Operations Research Dritte, verbesserte und erweiterte Auflage Mit 79 Abbildungen und 58 Tabellen Springer Votwort Symbolverzeichnis V XIII Kapitel 1: Einführung

Mehr

Duplizieren von Report-Vorlagen für die Erstellung umfangreicher Reports (ab ArtemiS SUITE 7.2)

Duplizieren von Report-Vorlagen für die Erstellung umfangreicher Reports (ab ArtemiS SUITE 7.2) 02/16 für die Erstellung umfangreicher Reports (ab ArtemiS SUITE 7.2) In der ArtemiS SUITE steht eine sehr flexible Report-Funktion zur Verfügung, die Ihnen die übersichtliche Darstellung Ihrer Analyse-Ergebnisse

Mehr

Optimierung. Optimierung. Vorlesung 2 Optimierung ohne Nebenbedingungen Gradientenverfahren. 2013 Thomas Brox, Fabian Kuhn

Optimierung. Optimierung. Vorlesung 2 Optimierung ohne Nebenbedingungen Gradientenverfahren. 2013 Thomas Brox, Fabian Kuhn Optimierung Vorlesung 2 Optimierung ohne Nebenbedingungen Gradientenverfahren 1 Minimierung ohne Nebenbedingung Ein Optimierungsproblem besteht aus einer zulässigen Menge und einer Zielfunktion Minimum

Mehr

Teil II Optimierung. Modellgestützte Analyse und Optimierung Kap. 5 Einführung Optimierung. Peter Buchholz 2006

Teil II Optimierung. Modellgestützte Analyse und Optimierung Kap. 5 Einführung Optimierung. Peter Buchholz 2006 Teil II Optimierung Gliederung 5 Einführung, Klassifizierung und Grundlagen 6 Lineare Optimierung 7 Nichtlineare Optimierung 8 Dynamische Optimierung (dieses Jahr nur recht kurz) (9 Stochastische Optimierungsmethoden

Mehr

Resolutionskalkül. wird t als eine Menge K t von Klauseln geschrieben, welche die einzelnen Maxterme repräsentieren:

Resolutionskalkül. wird t als eine Menge K t von Klauseln geschrieben, welche die einzelnen Maxterme repräsentieren: Resolutionskalkül Ein Kalkül ist eine Kollektion von syntaktischen Umformungsregeln, die unter gegebenen Voraussetzungen aus bereits vorhandenen Formeln neue Formeln erzeugen. Der Resolutionskalkül besteht

Mehr

Optimierung. Optimierung. Vorlesung 9 Lineare Programmierung & Kombinatorische Optimierung Fabian Kuhn

Optimierung. Optimierung. Vorlesung 9 Lineare Programmierung & Kombinatorische Optimierung Fabian Kuhn Optimierung Vorlesung 9 Lineare Programmierung & Kombinatorische Optimierung 1 Assignment Problem (Zuordnungsproblem) Gewichtetes Perfektes Bipartites Matching agents Costs tasks Weise jedem Agenten genau

Mehr

Ecken des Zuordnungsproblems

Ecken des Zuordnungsproblems Total unimodulare Matrizen Ecken des Zuordnungsproblems Definition.6 Ein Zuordnungsproblem mit den Vorzeichenbedingungen 0 apple x ij apple für i, j =,...,n statt x ij 2{0, } heißt relaxiertes Zuordnungproblem.

Mehr

3.6 Branch-and-Bound-Verfahren

3.6 Branch-and-Bound-Verfahren 36 Branch-and-Bound-Verfahren Die Branch-and-Bound -Methode beruht darauf, auf eine intelligente Weise alle zulässigen Lösungen eines kombinatorischen Optimierungsproblems aufzulisten und mit Hilfe von

Mehr

Datenstrukturen & Algorithmen Lösungen zu Blatt 11 FS 14

Datenstrukturen & Algorithmen Lösungen zu Blatt 11 FS 14 Eidgenössische Technische Hochschule Zürich Ecole polytechnique fédérale de Zurich Politecnico federale di Zurigo Federal Institute of Technology at Zurich Institut für Theoretische Informatik 14. Mai

Mehr

Generierung von Simulationsmodellen zur Ermittlung des Systemverhaltens von Shuttle-Systemen

Generierung von Simulationsmodellen zur Ermittlung des Systemverhaltens von Shuttle-Systemen Generierung von Simulationsmodellen zur Ermittlung des Systemverhaltens von Shuttle-Systemen Vorgestellt von Thomas Kriehn, Hochschule Heilbronn 1 1 Einleitung Simulationsmodelle Shuttle-Systeme 2 Generierung

Mehr

Probeklausur Optimierung

Probeklausur Optimierung Universität Hamburg Fakultät für Mathematik, Informatik und Naturwissenschaften Dr. Nico Düvelmeyer Hamburg, 4. Juli 2011 Probeklausur Optimierung Bitte selber ausfüllen: Name: (darf anonymisiert werden)

Mehr

Kürzeste-Wege-Algorithmen und Datenstrukturen

Kürzeste-Wege-Algorithmen und Datenstrukturen Kürzeste-Wege-Algorithmen und Datenstrukturen Institut für Informatik Universität zu Köln SS 2009 Teil 1 Inhaltsverzeichnis 1 Kürzeste Wege 2 1.1 Voraussetzungen................................ 2 1.2

Mehr

Vorlesung 2 KÜRZESTE WEGE

Vorlesung 2 KÜRZESTE WEGE Vorlesung 2 KÜRZESTE WEGE 34 Kürzeste Wege im Graphen Motivation! Heute:! Kürzeste Wege von einem Knoten (SSSP)! Kürzeste Wege zwischen allen Knotenpaaren (APSP)! Viele Anwendungen:! Navigationssysteme!

Mehr

Theoretische Informatik II

Theoretische Informatik II Theoretische Informatik II Einheit 5.2 Das P N P Problem 1. Nichtdeterministische Lösbarkeit 2. Sind N P-Probleme handhabbar? 3. N P-Vollständigkeit Bei vielen schweren Problemen ist Erfolg leicht zu testen

Mehr

NICHTRESTRINGIERTE OPTIMIERUNG

NICHTRESTRINGIERTE OPTIMIERUNG 3 NICHTRESTRINGIERTE OPTIMIERUNG Die Aufgabe, mit der wir uns im Folgen beschäftigen werden, ist die Lösung von Minimierungsproblemen der Form minimiere f(x) in R n, (3.1) wobei f : R n R eine gegebene

Mehr

Diskrete Strukturen Kapitel 4: Graphentheorie (Grundlagen)

Diskrete Strukturen Kapitel 4: Graphentheorie (Grundlagen) WS 2015/16 Diskrete Strukturen Kapitel 4: Graphentheorie (Grundlagen) Hans-Joachim Bungartz Lehrstuhl für wissenschaftliches Rechnen Fakultät für Informatik Technische Universität München http://www5.in.tum.de/wiki/index.php/diskrete_strukturen_-_winter_15

Mehr

Das Problem des Handlungsreisenden

Das Problem des Handlungsreisenden Seite 1 Das Problem des Handlungsreisenden Abbildung 1: Alle möglichen Rundreisen für 4 Städte Das TSP-Problem tritt in der Praxis in vielen Anwendungen als Teilproblem auf. Hierzu gehören z.b. Optimierungsprobleme

Mehr

Optimierung. Vorlesung 9

Optimierung. Vorlesung 9 Optimierung Vorlesung 9 Heute Facility location problem 1. Komplemetärer Schlupf 2. Das Facility Location Problem 3. Problemstellung LP, Duales, Schlupf Eine Approximationsalgorithmus Analyse und Beweis

Mehr

unabhängigen Variablen Eine Funktion dient der Beschreibung von Zusammenhängen zwischen mehreren verschiedenen Faktoren.

unabhängigen Variablen Eine Funktion dient der Beschreibung von Zusammenhängen zwischen mehreren verschiedenen Faktoren. Funktionsbegriff 2.1 2 Funktionen mit einer unabhängigen Variablen 2.1 Funktionsbegriff Eine Funktion dient der Beschreibung von Zusammenhängen zwischen mehreren verschiedenen Faktoren. In den Wirtschaftswissenschaften

Mehr

Algorithmische Methoden zur Netzwerkanalyse

Algorithmische Methoden zur Netzwerkanalyse Algorithmische Methoden zur Netzwerkanalyse Juniorprof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund für Theoretische

Mehr

Algorithmische Methoden für schwere Optimierungsprobleme

Algorithmische Methoden für schwere Optimierungsprobleme Algorithmische Methoden für schwere Optimierungsprobleme Prof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund

Mehr

Anwendungsbeispiel: MTO

Anwendungsbeispiel: MTO Anwendungsbeispiel MAXIMUM TREE ORIENTATION Universität Ulm 16. November 211 Inhaltsverzeichnis 1 Problemvorstellungen 2 Motivation 3 Integer Linear Programming 4 Tiefenbeschränkter Suchbaum 5 Konfliktgraph

Mehr

ADS: Algorithmen und Datenstrukturen 2

ADS: Algorithmen und Datenstrukturen 2 ADS: Algorithmen und Datenstrukturen 2 Teil 4 Prof. Dr. Gerhard Heyer Institut für Informatik Abteilung Automatische Sprachverarbeitung Universität Leipzig 24. April 2019 [Letzte Aktualisierung: 24/04/2019,

Mehr

Algorithmen I - Tutorium 28 Nr. 12

Algorithmen I - Tutorium 28 Nr. 12 Algorithmen I - Tutorium 28 Nr. 12 20.07.2017: Spaß mit Dynamischer und Linearer Programmierung Marc Leinweber marc.leinweber@student.kit.edu INSTITUT FÜR THEORETISCHE INFORMATIK (ITI), PROF. DR. JÖRN

Mehr

Probeklausur: Programmierung WS04/05

Probeklausur: Programmierung WS04/05 Probeklausur: Programmierung WS04/05 Name: Hinweise zur Bearbeitung Nimm Dir für diese Klausur ausreichend Zeit, und sorge dafür, dass Du nicht gestört wirst. Die Klausur ist für 90 Minuten angesetzt,

Mehr

Algorithmische Methoden für schwere Optimierungsprobleme

Algorithmische Methoden für schwere Optimierungsprobleme Algorithmische Methoden für schwere Optimierungsprobleme Prof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund

Mehr

Languages and Tools for Object-Oriented Development Klausur Wintersemester 2007/2008

Languages and Tools for Object-Oriented Development Klausur Wintersemester 2007/2008 Languages and Tools for Object-Oriented Development Klausur Wintersemester 2007/2008 27. Februar 2008 Institut für Softwaresysteme, TUHH Regeln: 1. Zu dieser Klausur sind keinerlei Hilfsmittel zugelassen.

Mehr

André Krischke Helge Röpcke. Graphen und Netzwerktheorie Grundlagen Methoden Anwendungen

André Krischke Helge Röpcke. Graphen und Netzwerktheorie Grundlagen Methoden Anwendungen André Krischke Helge Röpcke Graphen und Netzwerktheorie Grundlagen Methoden Anwendungen 8 Grundbegriffe der Graphentheorie für die Kante, die die beiden Knoten und verbindet. Der linke Graph in Bild. kann

Mehr

Übung 04 Mehrkörper Keplerproblem

Übung 04 Mehrkörper Keplerproblem Übung 04 Mehrkörper Keplerproblem 1 1 Lösung 1.1 Skizzieren des Algorithmus Aufgabe 1 1. Erstellen Sie skizzenhaft eine Möglichkeit der Berechnung aller Kräfte einer beliebigen Anzahl von Himmelskörpern.

Mehr

188.154 Einführung in die Programmierung Vorlesungsprüfung

188.154 Einführung in die Programmierung Vorlesungsprüfung Matrikelnummer Studienkennzahl Name Vorname 188.154 Einführung in die Programmierung Vorlesungsprüfung Donnerstag, 27.1.2005, 18:15 Uhr EI 7 Arbeitszeit: 60 min - max. 50 Punkte erreichbar - Unterlagen

Mehr