DE19946607C2 - Optimierung mit Zerstörung & Wiederaufbau - Google Patents
Optimierung mit Zerstörung & WiederaufbauInfo
- Publication number
- DE19946607C2 DE19946607C2 DE19946607A DE19946607A DE19946607C2 DE 19946607 C2 DE19946607 C2 DE 19946607C2 DE 19946607 A DE19946607 A DE 19946607A DE 19946607 A DE19946607 A DE 19946607A DE 19946607 C2 DE19946607 C2 DE 19946607C2
- Authority
- DE
- Germany
- Prior art keywords
- state
- destruction
- nodes
- reconstruction
- state variables
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/3407—Route searching; Route guidance specially adapted for specific applications
- G01C21/343—Calculating itineraries, i.e. routes leading from a starting point to a series of categorical destinations using a global route restraint, round trips, touristic trips
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/0205—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric not using a model or a simulator of the controlled system
- G05B13/024—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric not using a model or a simulator of the controlled system in which a parameter or coefficient is automatically adjusted to optimise the performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/18—Network design, e.g. design based on topological or interconnect aspects of utility systems, piping, heating ventilation air conditioning [HVAC] or cabling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0639—Performance analysis of employees; Performance analysis of enterprise or organisation operations
- G06Q10/06395—Quality analysis or management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/14—Routing performance; Theoretical aspects
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- Human Resources & Organizations (AREA)
- General Physics & Mathematics (AREA)
- Economics (AREA)
- Theoretical Computer Science (AREA)
- Strategic Management (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Entrepreneurship & Innovation (AREA)
- Development Economics (AREA)
- Operations Research (AREA)
- Geometry (AREA)
- General Business, Economics & Management (AREA)
- Educational Administration (AREA)
- Tourism & Hospitality (AREA)
- Computer Networks & Wireless Communication (AREA)
- Quality & Reliability (AREA)
- Marketing (AREA)
- Game Theory and Decision Science (AREA)
- Automation & Control Theory (AREA)
- Evolutionary Computation (AREA)
- Signal Processing (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computational Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
Die vorliegende Erfindung bezieht sich auf ein automatisches
Verfahren zur rechnergestützten Optimierung eines technischen
Systems, wie beispielsweise Leitwegsystemen (Routing Systems),
wie ein Transportleitwegsystem (transportation routing
systems) oder ein Kommunikationsnetzwerk (communication
network) oder ein Lieferkettensystem (supply chain network).
Der Stand der Technik umfasst eine große Gruppe von
klassischer Verbesserungsheuristik von
Optimimierungsverfahrensweisen technischer Systeme. Aus
Vergleichsgründen werden die unterschiedlichen
Verfahrensweisen oftmals auf der Öffentlichkeit zugängliche
Problemfälle angewandt, die in der Literatur schon ausführlich
studiert worden sind, wie etwa das bekannte Handelsreisenden-
Problem, das in der Literatur oft betrachtet worden ist.
Beispielsweise veröffentlichten G. Reinelt, TSPLIB95,
Universität Heidelberg, Deutschland, 1995, und M. Grötschel,
O. Holland, Math. Prog. 1991, 51, 141 eine derartige
ausführlich untersuchte Gruppe von Handelsreisendenproblemen.
Auch die Problemgruppe von M. Solomon, Operations Research
1987, 35, 254 könnte an dieser Stelle erwähnt werden.
Optimierung vieler technischer Systeme kann als Optimierung
eines Leitwegsystems (routing system) betrachtet werden.
Aufgrund ihrer Bedeutung sind Leitwegsysteme Gegenstand
ausgedehnter Studien gewesen. Im Hinblick auf das technische
Problem des Transportleitweges könnte der folgende Stand der
Technik erwähnt werden:
S. R. Thangiah, I. H. Osman, T. Sun, Hybrid Genetic Algorithm, Simulated Annealing and Tabu Search Methods for Vehicle Routing Problems with Time Windows, Arbeitspapier (1994), UKC/OR94/4; J.-Y. Potvin, S. Begio, 1994, A Genetic Approach to the Vehicle Routing Problem with Time Windows, Publication CRT-953, Centre de recherche sur les transports, Université de Montréal; P. M. Thompson, H. Psaraftis, 1989, Cyclic Transfer Algorithms for Multi-Vehicle Routing and Scheduling Problems, Operations Research 41, S. 935 bis 946; J.-Y. Potvin, T. Kervahut, B.-L. Garcia, J.-M. Rousseau, 1993, A Tabu Search Heuristic for the Vehicle Routing Problem with Time Windows, Publication CRT-855, Centre de recherche sur les transports, Université de Montréal; Y. Rochat, E. Taillard, Probabilistic diversification and intensification in local search for vehicle routing, Journal of Heuristics, Bd. 1, Nr. 1, 1995, S. 147 bis 167.
S. R. Thangiah, I. H. Osman, T. Sun, Hybrid Genetic Algorithm, Simulated Annealing and Tabu Search Methods for Vehicle Routing Problems with Time Windows, Arbeitspapier (1994), UKC/OR94/4; J.-Y. Potvin, S. Begio, 1994, A Genetic Approach to the Vehicle Routing Problem with Time Windows, Publication CRT-953, Centre de recherche sur les transports, Université de Montréal; P. M. Thompson, H. Psaraftis, 1989, Cyclic Transfer Algorithms for Multi-Vehicle Routing and Scheduling Problems, Operations Research 41, S. 935 bis 946; J.-Y. Potvin, T. Kervahut, B.-L. Garcia, J.-M. Rousseau, 1993, A Tabu Search Heuristic for the Vehicle Routing Problem with Time Windows, Publication CRT-855, Centre de recherche sur les transports, Université de Montréal; Y. Rochat, E. Taillard, Probabilistic diversification and intensification in local search for vehicle routing, Journal of Heuristics, Bd. 1, Nr. 1, 1995, S. 147 bis 167.
Im Hinblick auf die angewandten Verfahren können innerhalb des
Standes der Technik die folgenden wesentlichen
Verfahrensweisen unterschieden werden:
Simuliertes Ausheilen (Simulated Annealing), wie sie
beispielsweise in N. Metropolis, A. W. Rosenbluth, M. N.
Rosenbluth, A. H. Teller, E. Teller, J. Chem. Phys. 1953, 21,
1087., S. Kirkpatrick, C. D. Gelatt Jr., M. P. Vecchi, Science,
1983, 220, 671; S. Kirkpatrick, G. Toulouse, J. Physique,
1985, 46, 1277 umrissen wird, Schwellen-Annahme (Threshold
Accepting), wie sie beispielsweise in G. Dueck, T. Scheuer, J.
Comp. Phys., 1990, 90, 161 umrissen wird, Sintflutalgorithmus
(Great Deluge Algorithm), wie er beispielsweise in G. Dueck,
J. Comp. Phys., 1993, 104, 86, G. Dueck, T. Scheuer, H.-M.
Wallmeier, Spektrum der Wissenschaft, März 1993, umrissen
wird; Technik des Fortschreitens von Aufzeichnung zu
Aufzeichnung (Record to Record Travel Technique), wie sie
beispielsweise in G. Dueck, J. Comp. Phys., 1993, 104, 86
umrissen wird, und zugehörige Monte-Carlo-Optimierungs-
Algorithmen, wie sie beispielsweise in K. Binder, D. W.
Heermann, Monte Carlo Simulation in Statistical Physics,
Springer, NY, 1992, T. J. P. Penna, Phys. Rev. E, 1995, 51, R1-
R3, wenden Ideen der Statistischen Physik und der Angewandten
Mathematik zur Findung von nahezu optimalen Lösungen für
kombinatorische Optimierungsprobleme an. Dies sind alles
iterative Austauschalgorithmen. Sie beginnen mit einer
anfänglichen Konfiguration und schreiten durch wenig Austausch
in der tatsächlichen oder aktuellen Lösung voran, um eine
probeweise neue Lösung zu bekommen. Die probeweise neue Lösung
wird bewertet, d. h. ihre objektive Funktion, z. B. ihre
Gesamtkosten, wird berechnet. Die algorithmische
Entscheidungsregel wird angewandt. Es wird entschieden, ob die
probeweise neue Lösung als die aktuelle Lösung angenommen
wird, im Falle der Annahme wird die neue Lösung als neue
aktuelle Lösung genommen.
In einer konkreten Anwendung lehren K. Nishiguchi, A. Sasaki,
I. Mikami, K. Asari, H. Amagasaki, Verfahren zur Herstellung
eines reflektierenden Spiegels, Offenlegungsschrift
DE 42 26 294 A1 des Deutschen Patentamts, wie das Metropolis
Verfahren zur Herstellung eines optimierten reflektierenden
Spiegels genutzt werden kann. Eine Vielzahl von
Spiegelsegmenten weisen hinsichtlich ihrer thermischen
Ausdehnungskoeffizienten immer leichte Unterschiede auf. Ein
aus diesen Spiegel-Segmenten zusammengesetzter Spiegel wird
daher je nach Anordnung der Einzel-Segmente unterschiedlich
gute Qualität haben. K. Nishiguchi et al. stellen sich nun die
Aufgabe, eine Anordnung der Einzel-Segmente so zu bestimmen,
dass die Summe der quadratischen Versetzungen, gemessen an
einer Vielzahl von Prüfpunkten und bewirkt durch die
Unterschiede der thermischen Ausdehnungskoeffizienten,
optimiert wird. Als Zustand des zu optimierenden Systems wird
die Sequenz der Segment-Nummern gewählt und die Summe der
quadratischen Versetzungen E an der Vielzahl von Prüfpunkten
wird als Funktion des Zustandes ausgedrückt. Ausgehend von
einem augenblicklichen Systemzustand w1 wird ein veränderter
Zustand w2 dadurch erzeugt, dass lediglich 2 Segmente
(Segmente k und j) in ihrer Position ausgetauscht werden; d. h.
w2 entsteht aus w1 durch eine streng begrenzte, minimale
Veränderung. Tatsächlich representiert der Austausch zweier
Segmente sogar die geringste denkbare Änderung des
Systemszustands. Anschließend wird der Unterschied der Summe
der quadratischen Versetzungen ΔE zwischen den beiden
Systemzuständen w1 und w2 ermittelt. Anhand des Metropolis
Verfahrens wird schließlich entschieden, ob der veränderte
Systemzustand w2 als aktueller Zustand w1 ausgewählt und das
Verfahren iteriert wird.
Die unterschiedlichen Algorithmen arbeiten mit dieser gleichen
Struktur, sie benutzen aber unterschiedliche
Entscheidungsregeln zur Annahme/zum Zurückweisen. Die
Zufallstour (Random Walk) (RW) akzeptiert jede neue Lösung.
Der Greedy-Algorithmus (GRE) akzeptiert jede Lösung, die nicht
schlechter als die aktuelle Lösung ist. Simulierte Ausheil-
Verfahren akzeptieren jede bessere Lösung und mit einer
gewissen Wahrscheinlichkeit auch Lösungen, die schlechter als
die aktuelle Lösung sind. Schwellen-Annahme-Algorithmen (TA)
akzeptieren jede Lösung, die nicht viel schlechter als die
aktuelle Lösung ist, wobei "nicht viel" durch eine Schwelle
definiert wird. Der Sintflut-Algorithmus weist jede Lösung
unterhalb eines geforderten Qualitätsniveaus (der
"Wasserlinie") zurück. Dies ist dem Grunde nach eine
Darwinsche Verfahrensweise. Anstelle von "nur die Stärksten
werden überleben" arbeitet das Sintflut-Prinzip mit "nur die
Schwächsten werden sterben".
Natürlich hängt die Definition eines Austausches in einer
aktuellen Lösung vom Optimierungsproblem ab. Lassen Sie uns
beispielsweise auf das Handlungsreisenden-Problem (Traveling
Salesman Problem - TSP) schauen. Um die aktuelle Lösung zu
modifizieren, um eine neue probeweise gewählte Lösung zu
erhalten, werden allgemein verschiedene Arten von Mutationen
der Lokalen Suche angewandt. Ein Exchange tauscht zwei Knoten
in der Tour aus. Die Verfahrensweise Lin-2-Opt schneidet zwei
Verbindungen in der Tour auf und baut durch Einfügen von zwei
neuen Verbindungen wieder eine neue Tour auf. Ein Node
Insertion Move (NIM oder Lin-2.5-opt, wie es beispielsweise in
E. Aarts, J. K. Lenstra, Lokal Search in Combinatorial
Optimization, John Wiley & Sons, Chichester, 1997 umrissen
wird) entfernt einen Knoten aus der Tour und fügt ihn an der
besten Position wieder ein. Darüber hinaus werden manchmal
Lin-3-Opt, Lin-4-Opt und Lin-5-Opt usw. (wie sie
beispielsweise in S. Lin, Beil System Techn. J., 1965, 44,
2245, S. Lin, B. W. Kernighan, Oper. Res., 1973, 21, 498
umrissen werden) angewandt, die drei, vier oder fünf
Verbindungen auftrennen und eine von 4, 25 beziehungsweise 208
usw. Möglichkeiten wählen, um die neue Tour
wiederherzustellen.
Simuliertes Ausheilen und verwandte Techniken haben gemeinsam,
dass eine neue Konfiguration auf der Grundlage der
tatsächlichen erzeugt wird. Es wird keine Information über
frühere Konfigurationen benutzt. Genetische Algorithmen und
Evolutionsstrategien benutzen beide eine große Menge von
Konfigurationen als Individuen einer Population. Tabu-Suche
(Tabu Search) sichert Information über frühere Konfigurationen
in ihrer Tabu-Liste und hängt daher ebenfalls von einer Menge
von Konfigurationen ab.
Genetische Algorithmen benutzen meistens unterschiedliche
Arten von Überkreuz-Operatoren (crossover operators), die aus
Elternkonfigurationen Nachkömmlinge erzeugen, während sich
Evolutionsstrategien auf Mutationen (mutation) konzentrieren,
die ein Mitglied der Population verändern. Mit beiden
Techniken werden neue Konfigurationen erzeugt; verschiedene
Ausführungsformen dieser Algorithmen unterscheiden sich nur in
der Art der verwendeten Mutationen und in der Auswahl, welche
Konfigurationen zugelassen werden, um sich fortzupflanzen oder
sich miteinander zu mischen oder gezwungen werden, Selbstmord
zu begehen.
Tabu-Suche, wie sie beispielsweise in G. Reinelt, The
Travelling Salesman, Springer, Heidelberg 1994 umrissen wird,
ist eine auf einem Speicher beruhende Suchstrategie, um das zu
optimierende System von Teilen des Lösungsraumes wegzuleiten,
die schon durchsucht worden sind. Dies kann dadurch erfolgen,
dass entweder Lösungen, die schon durchgesehen worden sind,
oder Strukturen verboten werden, die einigen früheren Lösungen
gemeinsam waren, die in einer Tabu-Liste gespeichert werden.
Diese Liste wird nach jeder Mutation gemäß einiger
vorgeschlagener Regeln aktualisiert, die garantieren müssen,
dass der Optimierungslauf niemals wieder eine Lösung erreicht,
die schon vorher besucht worden ist, dass die Tabu-Listen-
Größe nicht divergiert und dass eine gute Lösung erreicht
werden kann.
Für die grundlegenden allgemein bekannten Probleme bei
kombinatorischer Optimierung haben diese Algorithmen
nachgewiesen, dass sie für das Erreichen von nahezu optimalen
Lösungen erfolgreich sind. Wenn Sie sich jedoch mit komplexen
Problemen befassen, treffen wir beim Benutzen dieser
klassischen Algorithmen auf ernsthafte Schwierigkeiten. Wenn
wir Pläne von Stahlwerken, Pläne von Fluglinien,
Weitbereichsnetze oder Aufgaben zur sehr komplexen
Tourenplanung betrachteten, standen wir Schwierigkeiten
gegenüber.
Komplexe Probleme können oftmals als "unstetig" angesehen
werden: wenn wir von einer Lösung einen Schritt zu einer
benachbarten Lösung gehen, können die Höhen oder Qualitäten
dieser Lösungen dramatisch unterschiedlich sein, d. h. die
Landschaft in diesen Problembereichen kann sehr "uneben" sein.
Lösungen komplexer Probleme müssen oftmals viele
Randbedingungen erfüllen, und es ist oft sogar schwierig,
gerade noch zulässige Lösungen zu erhalten. Benachbarte
Lösungen von komplexen Plänen sind beispielsweise gewöhnlich
unzulässige Lösungen, und es kann sehr schwierig sein, in
einer derartig komplexen Landschaft von einer zulässigen
Lösung zu einer anderen benachbarten zulässigen Lösung zu
gehen. Viele Formen der klassischen Algorithmen versuchen, das
"Zulässigkeitsproblem" zu vermeiden, indem sie künstliche
Straffunktionen (penalty functions) modellieren, aber
üblicherweise bleiben sie bei "etwas unzulässigen" Lösungen
stecken, die überhaupt nicht zulässig sind.
Die Erfindung beruht auf der Aufgabe, ein verbessertes
Verfahren zur Optimierung technischer Systeme bereitzustellen.
Es ist eine weitere Aufgabe der vorliegenden Erfindung, zu
verhindern, dass der automatische Optimierungsvorgang in
"etwas unzulässigen" Lösungen steckenbleibt, die zusätzliche
Randbedingungen "leicht" verletzen.
Die Aufgabe der Erfindung wird durch Anspruch 1 gelöst. Das
Verfahren zur automatischen, rechnergestützten Optimierung
eines technischen Systems nach der vorliegenden Erfindung
beginnt mit einer Beschreibung des technischen Systems durch
einen Zustand mit den Zustandsvariablen xν, ν = 1, . . ., N.
Das technische System wird in einem Zustand nach einem Maß
(einer "Kostenfunktion", "Energie", . . .) f() bemessen. Das
technische System kann beispielsweise ein Leitwegsystem sein,
wie etwa ein Transportleitwegsystem, ein Kommunikationsnetzwerk
oder eine Lieferkettensystem (beispielsweise in der
Automobilindustrie) und ähnliches. Das Verfahren bestimmt mit
einem verbesserten Maß f(opt) einen verbesserten Zustand opt und
dieser verbesserte Zustand genügt dann einer oder mehreren
Randbedingungen. Das Verfahren umfasst einen Schritt 1 als
Initialisierungsschritt, in dem ein erster Zustand als
aktueller Zustand des technischen Systems gewählt wird, wobei
der erste Zustand schon die zusätzlichen Randbedingungen
erfüllt. Das Verfahren umfasst als Schritt 2 einen
Zerstörungsschritt, in dem der aktuelle Zustand dadurch
zerstört wird, dass eine Untermenge B der Zustandsvariablen
yν µ, µ = 1, . . ., M, des aktuellen Zustands ausgewählt wird und
diese vom aktuellen Zustand ausgeschlossen wird, so dass aus
den verbleibenden Zustandsvariablen ein reduzierter Zustand
gebildet wird. Das Verfahren umfasst als Schritt 3 einen
Wiederaufbauschritt, der einen wiederaufgebauten Zustand
ermittelt. Dieser wiederaufgebaute Zustand, der dadurch
ermittelt wird, dass der reduzierte Zustand durch Ersatz-
Zustandsvariable Zν µ erweitert wird, dass die Ausschluss-
Zustandsvariablen der Untermenge B ersetzt werden und dass der
wiederaufgebaute Zustand die zusätzlichen Randbedingungen
erfüllt, und die Ermittlung der Ersatzzustandsvariablen wird
nicht durch die Werte der Ausschluss-Zustandsvariablen
bestimmt. Das Verfahren umfasst als Schritt 4 einen
Annahmeschritt, in dem entschieden wird, ob der
wiederaufgebaute Zustand als neuer aktueller Zustand
angenommen werden soll. Das Verfahren umfasst als Schritt 5
einen Iterationsschritt, in dem entschieden wird, ob und wie
das Verfahren, beginnend mit Schritt 2, zu wiederholen ist.
Da die von der vorliegenden Erfindung vorgeschlagenen Technik
direkt von Anfang (dem ersten Zustand) des
Optimierungsvorganges an nur Zustände untersucht, die den
zusätzlichen Randbedingungen (zulässige Zustände) genügen,
indem er sie gemäß den Randbedingungen erzeugt, sind damit
solche künstlichen Konstruktionen wie Strafbedingungen im Maß
(auch als "objektive Funktion", "Energie" oder ähnliches
bezeichnet) für diese Randbedingungen nicht erforderlich. Man
kann nicht genug betonen, dass diese Eigenschaft des
vorgeschlagenen Verfahrens ungeheure Folgerungen nach sich
zieht. Es steht zu jedem Zeitpunkt während des Ablaufes einer
Optimierung eine vollständig zulässige Lösung bereit. Dies
steht im Gegensatz zu vielen anderen Verfahrensweisen, bei
denen man oftmals mit kleinen Übertretungen der gegebenen
Randbedingungen leben muss, die man dann in der Praxis durch
Vernachlässigen, Tolerieren, ihr Ausmerzen von Hand, mit
brutaler Gewalt oder andere Nachverarbeitungstechniken lösen
muss. Dass am Ende immer eine zulässige Lösung steht,
verbessert die Durchführbarkeit wesentlich. In der Praxis sind
saubere zulässige Lösungen wichtiger als "annehmbare" Lösungen
mit gewissen Übertretungen der Randbedingungen. Darüber hinaus
schlägt die vorliegende Erfindung vor, dass eine Untermenge
der Zustandsvariablen des aktuellen Zustand zerstört wird, und
damit zerstört das Verfahren diesen Zustand nicht nur auf
geringe oder lokale Weise (beispielsweise durch Ändern eines
bestimmten Wertes nur um einen kleinen Betrag). Statt dessen
legt sie dar, einen größeren Teil des aktuellen Zustand zu
zerstören. Das Zerstören eines ziemlich großen Teiles des
Zustand ergibt andererseits zusätzlichen Freiheitsgrad beim
Wiederaufbauschritt. Der wesentliche Vorteil besteht darin:
Wenn jemand einen großen Teil des vorhergehenden Zustands zerstört hat, dann hat er einen erhöhten Freiheitsgrad, einen neuen zu erzeugen. Man kann vernünftigerweise hoffen, dass in diesem großen Bereich von Möglichkeiten beides erreichbar ist: Ermitteln einer zulässigen und einer verbesserten Lösung. Abstrakter ausgedrückt, besteht der grundlegende Vorteil der vorliegenden Verfahrensweise darin, ein großes Problem (im schlimmsten und kompliziertesten Falle ein NP-festes Problem) in eine Folge von Teilproblemen zu unterteilen, die in ihrer Summe leichter zu lösen sind als das große Problem. Insbesondere die Tatsache, dass die Teilprobleme (die zerstörten Teile des Zustands) kleiner als das große Problem sind, aber immerhin noch groß genug sind, dass dem Verfahren ermöglicht wird, größere Bereiche des Zustandsraumes zu erkunden, lässt die Darlegungen sehr leistungsfähig beim Auffinden von verbesserten Lösungen im globalen Sinne werden.
Wenn jemand einen großen Teil des vorhergehenden Zustands zerstört hat, dann hat er einen erhöhten Freiheitsgrad, einen neuen zu erzeugen. Man kann vernünftigerweise hoffen, dass in diesem großen Bereich von Möglichkeiten beides erreichbar ist: Ermitteln einer zulässigen und einer verbesserten Lösung. Abstrakter ausgedrückt, besteht der grundlegende Vorteil der vorliegenden Verfahrensweise darin, ein großes Problem (im schlimmsten und kompliziertesten Falle ein NP-festes Problem) in eine Folge von Teilproblemen zu unterteilen, die in ihrer Summe leichter zu lösen sind als das große Problem. Insbesondere die Tatsache, dass die Teilprobleme (die zerstörten Teile des Zustands) kleiner als das große Problem sind, aber immerhin noch groß genug sind, dass dem Verfahren ermöglicht wird, größere Bereiche des Zustandsraumes zu erkunden, lässt die Darlegungen sehr leistungsfähig beim Auffinden von verbesserten Lösungen im globalen Sinne werden.
Auf der Grundlage dieser Eigenschaften ist die vorliegende
Verfahrensweise damit für "unstetige" Probleme, "Probleme mit
sehr komplexen Maßen/objektiven Funktionen" oder "Probleme,
bei denen die Lösungen viele Nebenbedingungen einhalten
müssen", besser geeignet. Die Verbesserungen der
Leistungsfähigkeit des vorgeschlagenen Verfahrens gestatten es,
in kürzerer Rechenzeit Zustände zu finden, die näher am
optimalen Zustand liegen. Darüber hinaus ist ein verbesserter
Zustand, da der Zerstörungsschritt größere Teile des aktuellen
Zustand zerstört, viel unabhängiger von dem im
Initialisierungsschritt als ersten Zustand gewählten Zustand.
Damit wird auch vermieden, dass das Verfahren sich in
bestimmten Teilen des Zustandsraumes "verfängt".
Nach einer weiteren Ausführungsform der vorliegenden Erfindung
ermittelt der Wiederaufbauschritt die Ersatzzustandsvariablen
durch Konstruktionsheuristik und/oder Wiederaufbau mit exakten
Algorithmen. Der Wiederaufbauschritt umfasst einen Unterschritt
3A des Auswählens mindestens einer der
Ausschlusszustandsvariablen. Weiterhin umfasst der
Wiederaufbauschritt einen Unterschritt 3B des Berechnens und
Zuordnens eines Wertes zu der Auswahlzustandsvariablen. Darüber
hinaus wiederholt der Wiederaufbauschritt die Unterschritte 3A
und 3B, bis alle Erstatzzustandsvariablen ermittelt worden
sind. In einer weiteren Variante umfasst der
Wiederaufbauschritt einen bestmöglichen Einfügeschritt, der
einen Unterschritt 3B des Berechnens und Zuordnens eines Wertes
zu der Auswahlzustandsvariablen umfasst, der das Maß f() des
reduzierten Zustand, erweitert durch die
Ersatzzustandsvariable, im Hinblick auf die
Auswahlzustandsvariable optimiert.
Die vorgeschlagene Verfahrensweise des Ermittelns eines
wiederaufgebauten Zustands bietet einen verbesserten Kompromiss
der zum Berechnen eines wiederaufgebauten Zustands zu
behandelnden Komplexität, der Qualität der neuen Lösungen und
der Verarbeitungsgeschwindigkeit zum Durchführen der
erforderlichen Berechnungen. Durch Auswahl nur einiger weniger
der Ausschlusszustandsvariablen zur erneuten Berechnung wird
die gesamte Aufgabe des "Wiederaufbaus" weiterhin in eine Folge
von anteiligen und einfacheren Aufgaben unterteilt.
Andererseits werden im Hinblick auf eine derartige Teilaufgabe
die optimalen Ersatzzustandsvariablen berechnet. Dies stellt
sicher, dass in jedem Falle ein sehr guter Wiederaufbauzustand
ermittelt wird.
Nach einer weiteren Ausführungsform der vorliegenden Erfindung
umfassen die Zustandsvariablen Beschreibungen einer Vielzahl
von NNodes Knoten, in denen eine Nachbarschaftsbeziehung
Entfernungen zwischen Knotenpaaren definiert. Innerhalb eines
derartigen Systems umfasst der Zerstörungsschritt einen
strahlenförmigen Zerstörungsschritt, bei dem ein erster Knoten
und seine zugehörigen Zustandsvariablen ausgewählt und von dem
aktuellen Zustand ausgeschlossen werden. Dann wird eine
beliebige Anzahl A ≦ NNodes festgelegt, und die A - 1 nächsten
Knoten des ersten Knotens entsprechend der
Nachbarschaftsbeziehung werden ausgewählt und die zugehörigen
Zustandsvariablen der A - 1 nächsten Knoten werden aus dem
aktuellen Zustand ausgeschlossen. Als eine weitere
Möglichkeit umfasst der Zerstörungsschritt einen beliebigen
Zerstörungsschritt, in dem eine beliebige Anzahl A ≦ NNodes
festgelegt wird und A Knoten zufällig ausgewählt werden und
ihre Zustandsvariablen von dem aktuellen Zustand
ausgeschlossen werden.
Wenn der Zerstörungsvorgang innerhalb einer bestimmten
Nachbarschaft eines Knotens stattfindet, geht er so aus, dass
die Optimierungsverfahrensweise wesentlich verbessert wird.
Dies kann so verstanden werden, dass eine
Nachbarschaftsbeziehung eine gewisse Art von
"Austauschbarkeit" der Knoten anzeigt. Andererseits ist die
Nachbarschaftsbeziehung nicht auf eine eher geografische
Beziehung der Knoten beschränkt. Sie kann auch auf
Eigenschaften beruhen, die den Knoten zugeordnet sind oder von
ihnen dargeboten werden.
Nach einer weiteren Ausführungsform der vorliegenden
Erfindung, in der die Zustandsvariablen Beschreibungen einer
Vielzahl von NNodes Knoten umfassen, und in der die
Zustandsvariablen Beschreibungen von Folgen der Knoten
umfassen. Innerhalb dieser Ausführungsform umfasst der
Zerstörungsschritt einen sequentiellen Zerstörungsschritt, in
dem ein erster Knoten und seine zugehörigen Zustandsvariablen
ausgewählt und von dem aktuellen Zustand ausgeschlossen
werden, und bei dem eine zufällige Anzahl A ≦ NNodes ermittelt
wird und die A - 1 vorhergehenden oder nachfolgenden Knoten des
ersten Knotens ausgewählt und ihre zugehörigen
Zustandsvariablen von aktuellen Zustand ausgeschlossen werden.
Als weitere Möglichkeit enthält der Zerstörungsschritt einen
zufälligen Zerstörungsschritt, bei dem eine zufällige Anzahl A
≦ NNodes gewählt wird und A Knoten zufällig ausgewählt werden
und ihre Zustandsvariablen von dem aktuellen Zustand
ausgeschlossen werden.
Wenn innerhalb des technischen Systems Abfolgen der Knoten
definiert werden, geht ein Zerstörungsvorgang, der sich auf
ein bestimmtes Segment einer derartigen Abfolge bezieht, so
aus, dass er den Optimierungsvorgang wesentlich verbessert.
Nach einer weiteren Ausführungsform der vorliegenden Erfindung
beschreiben das technische System und die zugehörigen
Zustandsvariablen ein Leitwegsystem mit einer Vielzahl von
Übertragungseinrichtungen, die eine Vielzahl von Standorten
bedienen, und bei dem die Standorte zwischen Paaren der
Standorte Übertragungsbedarf anfordern. Das Maß sind die
Übertragungskosten. Die Erfindung legt einen
Zerstörungsschritt dar, der einen Bedarfszerstörungsschritt
umfasst, bei dem mindestens ein Übertragungsbedarf ausgewählt
wird und bei dem alle Zustandsvariablen, die sich auf den
ausgewählten Übertragungsbedarf beziehen, ausgewählt und von
dem aktuellen Zustand ausgeschlossen werden. Innerhalb des
Wiederaufbauschrittes werden in Unterschritt 3A und 3B die
sich auf den ausgewählten Übertragungsbedarf beziehenden
Zustandsvariablen berechnet.
Das Zerstören und Wiederaufbauen solcher Zustandsvariablen,
die sich auf einen Bedarf beziehen, der durch die
Leitwegsysteme befriedigt werden soll, hat den Vorteil, das
der reduzierte Zustand zu einem gültigen Systemzustand
(natürlich mit der Ausnahme, dass er den zerstörten
Leitwegbedarf nicht erfüllt) führt und dass keine komplexe
zusätzliche Ermittlung für den reduzierten Systemzustand
notwendig ist, um den zusätzlichen Randbedingungen zu genügen.
Darüber hinaus sind Zerstörungs- und Wiederaufbauvorgänge, die
sich auf Bedürfnisse beziehen, in einem ausgedehnten Maße für
parallele Ausführung geeignet. Beispielsweise müssen in
Fahrzeugleitwegsystemen die Wiederaufbauvorgänge alle
Transportmittel zur Wiederberechnung der Zustandsvariablen
abfragen; als "unabhängige Objekte" können die Transportmittel
parallel abgefragt werden. Insbesondere für sehr komplexe
technische Systeme, wie im vorliegenden Fall (die
beispielsweise NP-fest sind), ist ein für parallele
Aktivierung geeignetes Verfahren von höchster Bedeutung für
Zuwächse im Leistungsvermögen.
Nach einer weiteren Ausführungsform der vorliegenden Erfindung
ist das Leitwegsystem ein Transportleitwegsystem, bei dem die
Übertragungseinrichtungen Transportmittel sind und bei dem die
Übertragungsbedürfnisse Transportbedürfnisse an
Transportgrößen sind. Nach der vorliegenden Erfindung umfasst
der Zerstörungsschritt einen Schritt der Zerstörung des
Transportbedarfs, bei dem ein Bereich von Transportgrößen
festgelegt wird und bei dem Zustandsvariable, die sich auf die
Transportbedürfnisse innerhalb des Bereiches von
Transportgrößen beziehen, ausgewählt und von dem aktuellen
Zustand ausgeschlossen werden. Darüber hinaus behandelt die
Erfindung auch Transportleitwegsysteme, bei denen nach einer
Zeitfenster-Randbedingung ein Transportbedarf innerhalb eines
Zeitfenster-Intervalls bedient werden soll. Für derartige
Systeme wird ein Zerstörungsschritt vorgeschlagen, der einen
Zerstörungsschritt des Zeitfensters umfasst, bei dem ein
Bereich von Zeitfenster-Intervallen festgelegt wird und bei
dem alle Zustandsvariablen, die sich auf Bedürfnisse an
Zeitfenster-Intervallen innerhalb des Bereiches von
Zeitfenster-Intervallen beziehen, ausgewählt und von dem
aktuellen Zustand ausgeschlossen werden.
Übertragungsbedürfnisse nach "gleichen" Transportgrößen oder
"gleichen" Zeitfenster-Intervallen zu zerstören und
wiederherzustellen, verbessert den Wiederaufbauvorgang. Da
Bedürfnisse, die in diesem Sinne "gleich" sind, in der
Leitweglösung mit einer größeren Wahrscheinlichkeit
ausgetauscht werden können, ohne dass die Randbedingungen
übertreten werden, wird der Wiederaufbauvorgang beschleunigt
werden.
Nach einer weiteren Ausführungsform der vorliegenden Erfindung
beschreibt das Leitwegsystem ein Kommunikationsnetzwerk, in
dem die Standorte Kommunikationsknoten sind und in dem die
Vielzahl der Übertragungsbedürfnisse Kommunikationsbedürfnisse
zwischen Paaren von Kommunikationsknoten mit bestimmter
Bandbreite sind, die durch eine Abfolge von Fernleitungen
erfüllt werden sollen, wobei die Fernleitungen die
Übertragungseinrichtungen darstellen, die jedes der Paare von
Kommunikationsknoten verbinden. Das Maß sind die
Kommunikationskosten. Die Erfindung legt einen
Zerstörungsschritt dar, der einen Zerstörungsschritt des
Kommunikationsbedarfs umfasst, wobei mindestens ein
Kommunikationsbedarf festgelegt wird und zu der Abfolge von
Fernleitungen, die das Paar von Kommunikationsknoten des
festgelegten Kommunikationsbedarfs verbinden, gehörige
Zustandsvariable ausgewählt und von dem aktuellen Zustand
ausgeschlossen werden.
Die Vorzüge dieser Darlegung gleichen den Vorteilen, die mit
den Zerstörungs- und Wiederaufbauvorgängen umrissen werden,
die auf Bedürfnissen im allgemeinen beruhen, wie sie
vorstehend gegeben sind.
Nach einer weiteren Ausführungsform der vorliegenden Erfindung
ermittelt der Initialisierungsschritt einen ersten Zustand,
indem er den Schritt des bestmöglichen Einfügens unter
Verwendung eines reduzierten Zustand ausführt, für den alle
Zustandsvariablen ausgeschlossen worden sind.
Verglichen mit einem beliebigen Anfangszustand beginnt der
vorstehende erste Zustand den Optimierungsvorgang schon mit
einer "guten" Lösung, die viel näher am Optimum liegt, was zu
einem Gewinn bei der Leistungsfähigkeit führt.
Nach einer weiteren Ausführungsform der vorliegenden Erfindung
akzeptiert der Annahme-Schritt, der entscheidet, ob der
Wiederaufbauzustand als neuer aktueller Zustand akzeptiert
werden soll, diesen Wiederaufbauzustand: nach der Technik der
Zufallstour; und/oder nach der Greedy-Annahmetechnik; und/oder
nach der Simulierten Ausheiltechnik; und/oder nach der
Schwellen-Annahmetechnik; und/oder nach der Sintfluttechnik;
und/oder nach der Fortschrittstechnik von Aufzeichnung zu
Aufzeichnung.
Daher kann die Zerstörungs- und Wiederaufbauverfahrensweise
mit den meisten bekannten Annahmetechniken kombiniert werden,
was ihre Flexibilität und breite Anwendungsfähigkeit anzeigt.
Fig. 1 ist ein Diagramm, das die grundlegende
Verfahrensweise des Zerstörens und Wiederaufbauens
für das Handelsreisenden-Problem (TSP) PCB442 von
Grötschel widerspiegelt.
Fig. 2 ist ein Diagramm, das den grundlegenden Ablauf des
Optimierungsschemas nach der vorliegenden Erfindung
widerspiegelt.
Fig. 3 gibt einen Vergleich der R mit
Literaturdaten für Problemgruppen R1, C1 und RC1.
Links: Vergleich zu Arbeiten vor Rochat et al.;
rechts: Vergleich zu Rochat et al. Ergebnisse, bei
denen R bessere Ergebnisse als bekannt ergibt,
sind fettgedruckt. Längen werden durch Euklidische
Abstände berechnet, Ausnahmen mit Abschneiden auf
eine Dezimalstelle sind durch einen Stern markiert.
Fig. 4 gibt einen Vergleich der R mit
Literaturdaten für die Problemgruppen R2, C2 und
RC2. Links: Vergleich mit Arbeiten vor Rochat et
al.; rechts: Vergleich mit Rochat et al. Ergebnisse,
bei denen R bessere Ergebnisse als bekannt ergibt,
sind fettgedruckt. Länge wird durch Euklidische
Abstände berechnet.
Fig. 5 stellt die größten Verbesserungen dar, die für
Tourfolgen für Beispiele von R107, R202, RC105 und
RC206 gefunden wurden. Für die Einzelfahrzeugtouren
wird die Anzahl der Kunden nC, ihre Länge l und die
Gesamtladung aufgrund der zu bedienenden Kunden ltot
gegeben.
Fig. 6 zeigt die Statistik von 50 Durchgängen der
Verteilung der abschließenden Längen, berechnet aus
R, für die Probleme R107, R202, RC105 und RC206. ρ
ist die Wahrscheinlichkeit einer R, aus nT
Touren zu bestehen, l ist die beste bekannte Länge
des Problembeispiels und lmin, <l<, lmax und o1 sind
die minimale, mittlere, maximale abschließende Länge
und die Standardabweichung unserer Durchläufe, die
aus nT Touren bestanden.
Fig. 7 ist ein Diagramm, das ein Beispiel des RND-Problems
(redundanter Netzwerk-Entwurf) von 6 Standorten mit
5 Bedürfnissen zu 10 Mbps widerspiegelt. Links:
Eingabebedürfnisse und 1-Sprung-NRND-Optimum (nicht
redundanter Netzwerk-Entwurf) mit Gesamtlänge von
885; rechts: 2-Sprung-NRND-Optimum mit Gesamtlänge
von 562.
Fig. 8 spiegelt die beste Lösung wieder, die sich für das
Beispielproblem von Fig. 7 ergeben hat. Links: 2-
stufiges 2/3-Sprung-RND-Optimum mit Gesamtlänge
1048; rechts: 2/3-Sprung-RND-Optimum mit Gesamtlänge
861.
Fig. 9 gibt Einzelheiten der Konfiguration des
Beispielsystems N15 und die Optimierungsergebnisse.
Aufgelistet werden die Koordinaten x und y der
einzelnen Knoten, die Umschalteinrichtung S, ihr
Bandbreitenbedarf D (in Kbps) zum Rechenzentrum C
und die optimierten Leitwege rord und ralt für den
Normalfall beziehungsweise für den Fall des
Ausfalles.
Fig. 10 spiegelt die 24 Verbindungen wider, die im
optimierten System N15 benutzt werden. Für jede
Verbindung ist die angesammelte Bandbreite bord
aufgrund der normale Leitwege, die angesammelte
Bandbreite balt aufgrund von Leitwegen bei Ausfall
ralt, die Bandbreite bt der erforderlichen
Fernverbindung und ihre Kosten aufgelistet. Alle
Bandbreiten sind in Kbps gegeben.
Fig. 11 gibt Einzelheiten der Konfiguration des
Beispielsystems N45 und die Optimierungsergebnisse.
Es werden die Koordinaten x und y der einzelnen
Knoten, die Umschalteinrichtung S, ihr
Bandbreitenbedarf D (in Kbps) zum Rechenzentrum C
und die optimierten Leitwege rord und ralt für den
Normalfall beziehungsweise den Fall eines Ausfalls
aufgelistet.
Fig. 12 spiegelt die 79 Verbindungen wider, die in dem
optimierten System N45 benutzt werden. Für jede
Verbindung ist die angesammelte Bandbreite bord
aufgrund der normalen Leitwege rord, die angesammelte
Bandbreite balt aufgrund der Leitwege im Fehlerfall
ralt, die Bandbreite bt der benötigten Fernleitung und
ihre Kosten aufgelistet. Alle Bandbreiten sind in
Kbps gegeben.
Fig. 13 zeigt die Verteilung der mit der R
unter Verwendung der Heuristik des bestmöglichen
Einfügens erreichten Längen (links) und die mit
zufälliger Erzeugung (rechts) erreichten für das
TSP-Problem PCB442 als Prüfbeispiel.
Fig. 14 zeigt die Verteilungen nach dem Aufbau einer Lösung
mit der Heuristik des bestmöglichen Einfügens und
der nachfolgenden Durchführung von 100 Mutationen
auf einer Zufallstour, sowohl mit strahlenförmiger,
zufälliger oder sequentieller Zerstörung für
unterschiedliche Verhältnisse von F für das TSP-
Problem PCB 442 als Prüfbeispiel.
Fig. 15 zeigt die Verteilungen nach dem Aufbau einer Lösung
mit der Heuristik des bestmöglichen Einfügens und
der nachfolgenden Durchführung von 100 Mutationen
unter Verwendung der Greedy-Annahme, sowohl mit
strahlenförmiger, zufälliger oder sequentieller
Zerstörung für verschiedene Verhältnisse von F.
Fig. 16 zeigt die gemittelte Länge als Funktion der Anzahl
der R, beginnend bei einer RGesamtkonfiguration zur Auswahl von
strahlenförmiger, zufälliger und sequentieller
Zerstörung mit unterschiedlichen Anteilen F für das
TSP-Problem PCB 422 als Prüfbeispiel; links: für
Zufallstour; rechts: für Greedy-Annahme.
Fig. 17 zeigt die zeitliche Entwicklung der Qualität q
(links) und der Optimierungsergebnisse, gemittelt
über 50 Durchläufe, unter Verwendung von R und
Lin-2-opt mit unterschiedlichen Abkühlplänen, die
auf Schwellen-Annahme beruhen.
Wenn die vorliegende Beschreibung sich auf Leitwegsysteme
bezieht (insbesondere auf Transportleitwegsysteme und
Kommunikationsnetzwerke), so grenzt dies die Anwendbarkeit der
vorgeschlagenen Darlegung auf andere technische Systeme nicht
ein.
Bevor wir eine eher systematische Einführung geben, möchten
wir dem Leser einen schnellen Eindruck von dieser neuen Klasse
von Algorithmen vermitteln, die wir hier einführen. Das
grundlegende Element unserer Idee besteht darin, neue
Optimierungslösungen durch eine beträchtliche Zerstörung einer
vorhandenen Lösung und einen nachfolgenden Wiederaufbauvorgang
zu erreichen. Lassen Sie uns einen Blick auf ein berühmtes
Handelsreisenden-Problem (Traveling Salesman Problem - TSP)
werfen, das in der Literatur oft betrachtet worden ist (das
Problem PCB442 von Grötschel). Angenommen, wir haben
irgendeine Rundreise durch alle der 442 Städte gefunden, wie
in Fig. 1.
Der linke obere Teil 110 ist unsere anfängliche oder aktuelle
Lösung des Problems, das eine Tour (die Verbindungen) durch
die verschiedenen "Städte" (die Knoten) zeigt. Wir zerstören
nun einen wesentlichen Teil, den Bereich 111, der Lösung. Das
ist der leichteste Teil des Ganzen. Wenn wir die Lösung
zerstören, man denke an Meteoriten oder, falls Sie mögen, an
Bomben. Die Lösung kann durch einen derartigen Meteoriten
getroffen werden, oder es fällt eine Bombe auf Sie.
Mathematisch gesprochen: wir nehmen einige Städte in dem
Bereich 111 aus der aktuellen Tour heraus und verbinden die
übrigen (oder überlebenden) Städte zu einer kürzeren
Rundreise, d. h. einen reduzierten Zustand des Problems, der in
dem oberen rechten Teil 120 der Fig. 1 widergespiegelt wird.
Wir sagen, "die Städte, die von dem Meteoriten getroffen
worden sind, werden von dem Handelreisenden nicht mehr
bedient". Im abschließenden Schritt, der im unteren Teil 130
widergespiegelt wird, stellen wir (siehe 131) diese Teillösung
nach Ihrer Bombardierung zu einer vollständigen TSP-Lösung
wieder her. Das ist der schwerere Teil des Algorithmus. Es
gibt viele Wege, den zerstörten Teil der Lösung
wiederherzustellen, so dass dies offensichtlich ein
wesentlicher Punkt ist, der in dieser Beschreibung erörtert
werden soll.
Dies ergibt eine erste Vorstellung davon, wie das Prinzip des
Zerstörens und Wiederaufbauens (R) arbeitet. Im Sinne einer
auf R beruhenden Optimierungsroutine muss man über die Größe
und die Art der Meteoriten nachdenken und wie die zerstörten
Teile der Lösung wiederhergestellt werden sollen. Im Gegensatz
zur derzeitigen Verfahrensweise arbeiten die
Optimierungsalgorithmen mit sehr kleinen oder örtlich sehr
begrenzten Veränderungen an einer aktuellen Lösung. In dieser
Verfahrensweise befassen wir uns jedoch mit beträchtlichen
Änderungen, "die von Meteoriten hervorgerufen werden". Wir
können eine Entscheidungsregel überlagern, ob wir die neu
aufgebaute Struktur akzeptieren sollten oder lieber bei der
ursprünglichen bleiben. Wir könnten nur bessere Lösungen
akzeptieren (Greedy-Annahme) oder könnten nach dem Simulierten
Ausheilen oder dem Schwellen-Annahmeverfahren fortschreiten.
Mit anderen Worten, die vorliegende Verfahrensweise kann mit
jeglicher Art von Annahmestrategie verbunden werden.
Optimierung wird oftmals als das "Musterbeispiel des
Bergsteigens" angesehen. Wenn wir für das Handelsreisenden-
Problem, für Planungsprobleme oder für Aufgaben bei der
Unterbringung von Chips iterative Optimierungsheuristik
programmieren, stellen wir uns vor, dass wir in einem riesigen
Gebirgsbereich die höchsten Stellen finden müssen. Diese
"Berge" sind Teile der Landschaft aus riesigen Regionen der
Rundreisen des Handelsreisenden, Räume in Planungen, Räume von
Standorten. Wir stellen uns vor, dass wir uns frei auf der
Oberfläche dieser Landschaften bewegen und dass wir nach den
"besten" Plätzen suchen, nach sehr hochgelegenen Orten in
dieser Welt. Ein Optimierungsalgorithmus wird als Regel
angesehen, wie herum gewandert und entschieden werden soll,
wohin gegangen und wann angehalten wird. Ein Schritt in dieser
Welt, von Ort zu Ort, ist ein Analogon für die
Rechnerauswertung, sagen wir, einer Rundreise und Ihrer
benachbarten Rundreise, die "einen Schritt entfernt ist".
Algorithmen versuchen, von schlechten oder ziemlich guten zu
sehr guten, ausgezeichneten Lösungen, oder sogar zu optimalen
Lösungen voranzuschreiten. Der Greedy-Algorithmus versucht
eben, Höhe zu gewinnen, indem er so lange wie möglich nach
oben wandert. Fortgeschrittene Verfahren, wie die bekannte
Technik des Simulierten Ausheilens oder die Schwellen-Annahme-
Verfahrensweise lassen auch Schritte nach unten zu, aber Sie
gewinnen in dem langen Lauf während einer langen Tour in der
Problemlandschaft an Höhe.
Bei den grundlegenden allgemein bekannten Problemen in der
kombinatorischen Optimierung haben sich diese Algorithmen als
außerordentlich erfolgreich beim Aufbau von nahezu optimalen
Lösungen erwiesen. Wenn man sich jedoch mit komplexen
Problemen befasst, wurden wir beim Gebrauch dieser klassischen
Algorithmen mit ernsten Schwierigkeiten konfrontiert. Wenn wir
Fertigungspläne eines Stahlwerkes, Flugpläne einer
Luftfahrtgesellschaft, Weitbereichsnetze oder Aufgaben einer
sehr komplexen Tourplanung betrachteten, kamen wir in
Schwierigkeiten.
Komplexe Probleme können oftmals als "unstetig" angesehen
werden: wenn wir von einer Lösung einen Schritt zu einer
benachbarten Lösung machen, können die Höhen oder Qualitäten
dieser Lösungen außerordentlich unterschiedlich sein, d. h. die
Landschaft in diesen Problembereichen kann sehr "uneben" sein.
Lösungen komplexer Probleme müssen oftmals viele
Randbedingungen einhalten, und es ist oft sogar schwierig,
überhaupt zulässige Lösungen zu erhalten. Benachbarte Lösungen
von komplexen Plänen sind beispielsweise gewöhnlich nicht
zulässige Lösungen, und es kann sehr schwierig sein, in einer
derartig komplexen Landschaft von einer zulässigen Lösung zu
einer weiteren benachbarten zulässigen Lösung zu kommen. Viele
Formen der klassischen Algorithmen versuchen, das
"Zulässigkeitsproblem" dadurch zu vermeiden, dass sie
künstliche Straffunktionen modellieren, aber sie bleiben dann
üblicherweise in "bißchen unzulässigen" Lösungen stecken, die
überhaupt nicht gestattet sind.
In dieser Beschreibung beantragen wir ein eher komplexes
Musterbeispiel als die Sicht des Optimierens als gewöhnliches
Bergsteigen. Wir führen hier das Musterbeispiel des Zerstörens
& Wiederaufbauens ein, das uns als eher natürliche Sichtweise
für komplexe Optimierungsaufgaben erscheint. Um unsere Ideen
richtig zu erklären, erlauben Sie uns, am Anfang eine
Einführung in unsere Denkweise in unserer alltäglichen
Umgebung. Beim Musterbeispiel des Bergsteigens denken wir in
Begriffen von Höhe. Wir suchen nach Höhepunkten. In unserem
Leben sind hohe Preise unser Maß, wir schätzen hochrangige
Beamte, Positionen oder akademische Grade. Wir sprechen von
hohen Temperaturen, hohen Wahrscheinlichkeiten, hohen Wetten,
hohen Profiten und sehr hohen Alkoholpegeln. Dies ist die
Redeweise aus dem Bereich des Bergsteigens.
Komplexe Dinge können jedoch nicht einfach der Höhe nach
gemessen werden. Wir sagen, wenn diese Dinge gut sind: "Das
ist großartig". Wir wissen genau, was wir meinen, wenn wir von
einem großartigen Beispiel, einer großartigen Geschichte,
großartigen Gestalten oder Verhaltensweisen, großartigen
Kleidern, Mahlzeiten, Ferien oder großartiger Auswahl an
Weinen sprechen. Lassen Sie uns versuchen, in Begriffen der
Großartigkeit zu denken. Wenn wir die besten Flugverkehrspläne
aufstellen müssten, dann wissen wir grundsätzlich, was
großartig bedeutet. Es ist jedoch nicht leicht, dies als
objektive Funktion für eine Optimierungsroutine
niederzuschreiben. In diesen komplexen Situationen sind wir
gezwungen, objektive Funktionen zu definieren, die aus vielen
Bestandteilen und Gewichtungsfaktoren und Strafen aufgebaut
sind, die einen komplexen Ausdruck harmonisierter Elemente
bilden, um ein Maß für großartig zu haben. Wenn wir ein Modell
für unseren neuen großartigen Schlosskomplex aufbauen müssten,
wie würden wir da vorgehen? Würden wir versuchen, ein immer
mehr verbessertes Modell zu bekommen, indem wir kleine
Veränderungs- oder Austauschschritte durchführen, wenn wir an
unserem Schloss arbeiten? Nein, wir würden an das Problem auf
"eher natürliche" Weise herangehen: wir würden es mit "noch
einem zweiten Turm" versuchen oder würden es mit "einer
Zugbrücke mit unterschiedlicher Länge" versuchen. Wir würden
vergleichsweise große Teile unseres Modells zerstören, und wir
würden versuchen, die fehlenden Teile des Modells auf
bestmögliche Weise wiederherzustellen. Was ist, wenn wir ein
besseres Organisationsmodell eines in der Welt führenden
Unternehmens aufbauen müssten? Wir würden die
Verwaltungsstruktur durch wirklich starke Veränderungen neu
organisieren - wie es jeder echte Aufsichtsratsvorsitzende am
Beginn jedes Jahres macht.
Dies ist die Art und Weise, auf der wir in dem neuen
Musterbeispiel denken: Zerstörung & Wiederaufbau. Wir schauen
auf eine bestimmte Lösung unseres Problems. Wir zerstören
einen ziemlich großen Bruchteil der Lösung und versuchen, die
Lösung wiederherzustellen, so gut wir können. Hoffentlich ist
die neue Lösung für uns großartiger als die vorhergehende. Die
R wird in dieser Darlegung einen
wesentlichen Vorzug zeigen: wenn wir einen großen Teil der
vorhergehenden Lösung zerstört haben, haben wir eine Menge
Freiheiten, eine neue zu erzeugen. Wir können
vernünftigerweise hoffen, dass es in diesem großen Bereich an
Möglichkeiten für uns machbar ist, wieder eine zulässige und
eine großartige Lösung zu finden. Das Musterbeispiel von
Zerstörung & Wiederaufbau ist ein Wechsel von der Denkweise
des Bergsteigens (in Höhen) zu einer Denkweise großartiger
komplexer Strukturen. Es ist besser geeignet für
- - unstetige Probleme,
- - Probleme mit sehr komplexen objektiven Funktionen (großartig anstelle von hoch),
- - Probleme, bei denen die Lösungen viele Nebenbedingungen einhalten müssen.
Wir zeigen die Leistungsfähigkeit des neuen Musterbeispiels
durch zahlenmäßige Ergebnisse unseres Tourenplanungsproblems
mit Zeitfenster-Randbedingungen. Wir wählen diesen
Problembereich, weil wir glaubten, dass dies das "leichteste
der komplexen" Probleme ist. Es ist "schwierig genug", um zu
erkennen, dass die klassischen Algorithmen hier nicht mehr
wirklich geeignet sind. Es ist "leicht genug", um einige
veröffentlichte Problembeispiele zu finden, die zu
Vergleichszwecken in der Literatur schon ausführlich
untersucht worden sind. Wir nahmen über 50 Problembeispiele
aus der Solomon-Bibliothek und überprüften an ihnen unsere
R In den meisten Fällen ergab unsere RVorgehensweise Lösungen, die mindestens so gut wie die derzeit
veröffentlichten Aufzeichnungen sind. In vielen Fällen konnten
wir bessere und viel bessere Ergebnisse erzielen.
Im Verlaufe dieser Beschreibung werden wir R
untersuchen, die eine zulässige Lösung nach der anderen
aufbauen. Wir benutzen in der objektiven Funktion überhaupt
keine künstlichen Konstruktionen wie Strafbedingungen. Wir
können nicht genug betonen, dass diese Eigenschaft des neuen
R für, sagen wir, kommerzielle
Tourenplanungssysteme ungeheure Folgerungen hat. Zu jedem
Zeitpunkt während des Durchlaufes einer R wird
eine vollständig zulässige Lösung betrachtet. Dies steht im
Gegensatz zu anderen Verfahrensweisen der Tourenplanung, bei
denen man oftmals bei kleinen Übertretungen der gegebenen
Einschränkungen stehen bleibt, die dann in der Praxis durch
Vernachlässigen, Toleranz, durch ihre manuelle Beseitigung,
durch brutale Gewalt - für ein kleines Paket muss ein
zusätzlicher Lastzug genommen werden, oder durch Bitten des
Kunden um ein besser geeignetes Zeitfenster gelöst werden
müssen. Wenn irgendeiner jemals praktisch mit einem Werkzeug
gearbeitet hat, das nicht dauerhaft mit sauberen Lösungen
endet, dann wird derjenige diese praktische Eigenschaft von
R sicher schätzen. Er würde diese Art von Lösung sogar dann
benutzen, wenn sie zu schlechteren Ergebnissen führen würde.
In der tatsächlichen Praxis weist die vorliegende Erfindung
darauf hin, dass saubere Lösungen wichtiger sind als "ein paar
Meilen weniger", bei denen bestimmte Übertretungen der
Randbedingungen enthalten sind.
Wir wenden uns der Optimierung von Fahrzeugleitwegen zu. Aus
Gründen der Vereinfachung (obwohl die Erfindung nicht darauf
beschränkt ist) betrachten wir nur Probleme, bei denen eine
Fahrzeugflotte an einem zentralen Depot startet. Alle
Fahrzeuge haben ein gegebenes maximales Fassungsvermögen. Sie
bedienen eine Gruppe von Kunden mit bekannten Bedürfnissen.
Die Lösung des VRP (Fahrzeugleitwegproblems) besteht aus einer
Gruppe von Leitwegen mit minimalen Fahrzeugkosten, welche die
folgenden Bedingungen erfüllt: jedes Fahrzeug startet und
beendet seine Tour am zentralen Depot. Jeder Kunde wird genau
einmal bedient. Die Summe der Bedürfnisse aller Kunden, die
von einem Fahrzeug bedient werden, überschreitet dessen
Fassungsvermögen nicht. Die Kosten für alle Gruppen von Touren
für das VRP sind die Summe der Länge aller Touren. Jeder Kunde
kann dem Problem eine Einschränkung hinsichtlich Zeitfenster
oder einen Zeitraum hinzufügen, d. h. bei jedem Kunden gibt es
einen frühesten und einen spätesten Zeitpunkt, zu dem es dem
Fahrzeug gestattet ist, den Kunden zu bedienen. Wenn derartige
Beschränkungen auferlegt werden, sprechen wir vom VRPTW
(Fahrzeugleitwegproblem mit Zeitfenster).
In der Literatur gibt es eine allgemein bekannte Sammlung von
56 VRPTW-Beispielen von Solomon, die von vielen Forschern zur
Bewertung ihrer Lösungssysteme von VRPTW benutzt wird. Diese
Probleme können in 3 Gruppen mit unterschiedlichen
Verteilungsmerkmalen der Kundenstandorte klassifiziert werden:
zufällig (R), gehäuft (C) und eine Mischung von beiden (RC).
Darüber hinaus kann jede dieser Gruppen in Probleme mit
niedrigem Fassungsvermögen der Fahrzeuge (Typ 1) oder hohem
Fassungsvermögen der Fahrzeuge (Typ 2) unterteilt werden. Man
spricht daher allgemein von sechs Problemgruppen, nämlich R1,
C1, RC1, R2, C2 und RC2. Glieder einer einzelnen Gruppe
unterscheiden sich sowohl bei der Verteilung der Zeitfenster
wie in den Bedürfnissen der einzelnen Kunden. Alle Probleme
bestehen aus 100 Kundenstandorten. Sowohl die Abstände wie die
Fahrzeiten zwischen den Kunden sind durch die entsprechenden
Euklidischen Abstände gegeben. Daher enthält diese Bibliothek
viele unterschiedliche Merkmale des Fahrzeugleitweges mit
Zeitfenstern: Flottengröße, Fassungsvermögen der Fahrzeuge,
räumliche und zeitliche Kundenverteilung, Dichte der
Zeitfenster, Breite der Zeitfenster und Zeiten für die
Kundenbedienung. Die Aufgabe des Problems besteht darin, alle
Kunden zu bedienen, indem zuerst die Anzahl der Fahrzeuge
minimiert und zweitens die Tourenlänge minimiert werden.
Ergebnisse in der Literatur sind nicht vollständig
vergleichbar. Während einige Autoren Euklidische Abstände
benutzten, schnitten andere die Abstände auf eine Stelle nach
dem Komma ab. Der Grund für das Abschneiden besteht darin,
dass einige exakte Algorithmen zum Lösen von VRPTW auf ganzen
Zahlen beruhen, wie etwa das dynamische Programmieren. Indem
wir den Darlegungen von Thangiah et al. und Rochat et al.
folgten, benutzten wir reale, doppelt genaue Abstände.
Desrochers et al. in M. Desrochers, J. Desrosiers, M. Solomon,
Operations Research, 1992, 40, 342, benutzten ein LP-
Relaxationsverfahren der Gruppenunterteilungsformulierung des
Problems und lösten es durch Spaltenerzeugung. Die erreichten
LP-Lösungen sind hervorragende untere Grenzen. Mit einem
Verzweigungsalgorithmus lösten sie 7 der 56 Probleme genau.
Potvin et al. benutzten zur Lösung des VRPTW Genetische Suche.
Das Grundprinzip, das sie benutzten, besteht in der Erzeugung
einer Verfahrensweise zum Mischen zweier Fahrzeugleitweg-
Lösungen zu einer einzigen Lösung, die im Hinblick auf die
Randbedingung der Zeitfenster wahrscheinlich machbar ist.
Thangiah et al. wandten eine Technik an, bei denen Kunden
zwischen Touren hin und her bewegt werden, die benachbarte
Lösungen definieren. Diese Nachbarschaft wird durch
Simuliertes Ausheilen und Tabu-Suche gesucht. Die anfängliche
Lösung ergibt sich unter Verwendung einer Vorwärtseinfüge-
Heuristik und eines Genetischen Algorithmus, der auf
Unterteilungsheuristik beruht. Sie lösten 56 + 4 Probleme aus
der Literatur, für 40 davon erhielten sie neue optimale
Lösungen. Für 11 von den restlichen 20 Problemen erhielten sie
Lösungen, die den besten bekannten gleich sind. Späterhin
machten sich Rochat et al. ihre Wahrscheinlichkeitstheorien zu
eigen, lokale Suche am VRP und VRPTW zu unterteilen, zu
intensivieren und parallel zu betreiben. Sie benutzten eine
einfache Tabu-Suche der ersten Stufe als grundlegende
Optimierungstechnik und waren in der Lage, ihre Ergebnisse
durch ihr Verfahren wesentlich zu verbessern. Bei der
Verwendung einer Nachoptimierungstechnik verbesserten sie fast
40 der 56 Beispiele. Dies zeigt, dass ihr Verfahren in den
meisten Fällen gegenüber den früheren Verfahren wesentliche
Vorteile hat.
Zusammen mit Fig. 1 umrissen wir ein TSP-Beispiel für
"Zerstörung": Wir strichen alle diese Städte aus einer
Rundreise, die in dem strahlenförmigen "bombardierten" Bereich
lagen. Lassen sie uns einen anderen Begriff für "eine
zerstörte Stadt" benutzen. Wir möchten sagen: "eine Stadt, die
nicht mehr von dem Handelsreisenden bedient wird". Nach der
Zerstörung bedient der Handelsreisende nur alle die Städte,
die nach dem Bombardement übrig geblieben sind. Wenn wir uns
mit Fahrzeugleitwegen befassen, werden wir eine Lösung
zerstören, indem wir Ziele oder Kunden oder Pakete entfernen,
die ausgeliefert werden sollen. Wir sagen, dass diese
Kundenziele nicht mehr bedient werden sollen, nachdem Sie von
einer Bombe getroffen worden sind. Wenn wir den Wiederaufbau-
Schritt erörtern, sagen wir: diese Kunden versuchen, wieder
bedient zu werden, diesmal durch das am besten geeignete
Fahrzeug. Es gibt viele Wege, eine Lösung zu zerstören.
Nachstehend geben wir einige exakte Definitionen von
bestimmten Bomben vor, die wir in unserer Ausführungsform
benutzten. Natürlich können Sie sich die Freiheit nehmen, neue
Waffen zu erfinden. Lassen Sie uns kurz einige Ideen
durchgehen.
Beim TSP könnten Sie entsprechend des ersten Abschnittes
bombardieren. Wir nennen diese Verfahrensweise strahlenförmige
Zerstörung. Wir können Städte aus der Bedienung herausnehmen,
indem wir eine Münze werfen: es wird jede Stadt mit einer
bestimmten Wahrscheinlichkeit entfernt. Wir können eine
kürzere oder längere Kette von Städten innerhalb einer
Rundreise entfernen. Bei den Fahrzeugleitwegproblemen gibt es
zu Zerstörungslösungen vielversprechendere Lösungen. Da jedes
Fahrzeug entlang einer Rundreise fährt, können jeweils alle
TSP-Zerstörungsverfahren benutzt werden. Aber wir haben ein
breiteres Spektrum von Möglichkeiten. Natürlich können wir
alle Kunden innerhalb einer Scheibe in einer Ebene entfernen.
Dies ist eine Art "Raum-Bombe". Wir könnten auch jeden Kunden
entfernen, der in der aktuellen Lösung innerhalb eines
bestimmten Zeitraumes bedient wird: dies ist eine "Zeit-
Bombe". Weiterhin könnten wir "Umfangs-Bomben" oder "Gewichts-
Bomben" anwenden, die Kunden entfernen, die Pakete empfangen,
deren Umfänge oder Gewichte sich innerhalb eines bestimmten
Bereiches befindet. Alle diese Bomben haben Kunden entfernt,
die in gewissem Sinne benachbart sind. Aus unseren
Untersuchungen an den Tornister-Problemen haben wir
herausgefunden, dass Austauschvorgänge an Paketen am
nützlichsten sind, wenn Sie auf Pakete gleicher Größe
beschränkt werden. Innerhalb des neuen Rahmens, den wir hier
vorlegen, möchten wir sagen, dass wir Umfangs-Bomben geringer
Größe benutzt hatten.
Darüber hinaus können die verschiedenen Arten von Bomben
kombiniert werden, indem sie eine Art "Hybrid-Bombe" bilden.
Zwei Bombenarten könnten so kombiniert werden, dass die
Gesamtheit oder nur die Schnittmenge der Kunden entfernt
werden, die von den Bombenarten getroffen werden. Eine "Raum-
Zeit-Bombe" würde ein derartiges Beispiel sein.
Lassen Sie uns hier damit beginnen, einige Arten von
Zerstörung zu definieren: es werden einige Pakete, die
ausgeliefert werden sollen, oder Kunden, die bedient werden
sollen, oder Städte, die besucht werden sollen, aus dem System
T entfernt. Sie werden nicht länger bedient, oder, wie wir
sagen, Sie werden in einen Sack B von nicht bedienten
Individuen gesteckt. Strahlenförmige Zerstörung: das ist die
klassische Zerstörung, von der die bildliche Vorstellung
herrührt. Wählen Sie zufällig einen Knoten c aus der Menge T
aller N Knoten (Pakete, Kunden, Städte). Wählen Sie eine
zufällige Zahl A mit A ≦ [F.N], wobei F ein Bruch ist, eine
Zahl zwischen 0 und 1. Entfernen Sie c und seine A - 1 nächsten
Nachbarn aus T und stecken Sie sie in den Sack B. Die
"nächsten Nachbarn" werden nach einer bestimmten Metrik
definiert. Bei unseren Tourenplanungsbeispielen benutzen wird
den Euklidischen Abstand. Zufällige Zerstörung: wählen Sie
eine zufällige Zahl A mit A ≦ [F.N], 0 ≦ F ≦ 1 aus. Entfernen
Sie A zufällige ausgewählte Knoten aus T und stecken Sie sie
in B. Denken Sie daran, dass zufällige Zerstörung eine globale
Strategie ist, während strahlenförmige Zerstörung eher örtlich
stattfindet. Sequentielle Zerstörung: Entfernen Sie A ≦ [F.N]
aufeinanderfolgende Knoten aus einer einzigen, zufällig
ausgewählten Rundreise.
Angenommen, wir haben eine Bombe fallenlassen und eine Lösung
zerstört. Dies bedeutet, dass wir eine Gruppe von Kunden
haben, die nicht länger bedient werden (durch einen Verkäufer
oder durch ein Fahrzeug). Der Wiederaufbau der Lösung bedeutet
das Wiedereinfügen dieser Kunden in das System. Idealerweise
könnten wir versuchen, einen Algorithmus zu erfinden, der so
ist, dass die Lösung genau optimal wieder aufgebaut wird.
Andererseits könnten wir versuchen, jeden Kunden zu nehmen,
einen nach dem anderen, und ihn auf mehr oder weniger kluge
Weise in das System einfügen. Wir sehen, dass es ein ganzes
Universum von Verfahren gibt, um das System wieder aufzubauen.
In dieser Arbeit möchten wir das Prinzip von R vorstellen,
die reine Idee. Wir haben uns auf die Untersuchung des
überhaupt augenscheinlichsten Wiederaufbaus zu beschränken:
das bestmögliche Einfügen. Bestmögliches Einfügen bedeutet:
alle außerhalb der Bedienung befindlichen Kunden werden
nacheinander auf bestmögliche Weise in das System eingefügt.
Übertreten Sie keinerlei Beschränkung (z. B. Randbedingungen
für Zeitfenster), so dass jeder Wiederaufbau mit einer
vollständig zulässigen Lösung endet. Es muss betont werden,
dass andere Einfügungsstrategien mit den vorliegenden
Darlegungen kombiniert werden könnten, so dass das
bestmögliche Einfügen eben eine mögliche Lösung ist. Lassen
Sie uns einen anderen Punkt betonen: wir benutzten nur diese
Regel des bestmöglichen Einfügens, und wir könnten
Rekordergebnisse erzielen, wenn wir ausschließlich dieses rohe
Prinzip benutzten. Natürlich ist es möglich, besser
ausgearbeitete, kompliziertere, eher hybride Algorithmen zu
benutzen, um bessere Ergebnisse zu erzielen. Dies ist jedoch
nicht grundlegende Absicht der vorliegenden Arbeit. Wir
möchten gerade die Leistungsfähigkeit der einfachsten Form von
R feststellen, die aus dem Folgenden besteht: in einer
teilweise zerstörten Leitweglösung haben wir eine bestimmte
Anzahl von Kunden (oder Städten) in einen Sack gesteckt. Nun
nehmen wir diese Kunden in zufälliger Reihenfolge aus dem Sack
heraus und nehmen das bestmögliche Einfügen vor: der Kunde
fragt jedes Fahrzeug, ob und an welcher Position es möglich
ist, ihn auf dessen Tour zu bedienen und welche zusätzlichen
Kosten sich dabei ergäben. Das Einfügen mit minimalen Kosten
wird gewählt. Es könnte überhaupt nicht möglich sein, einen
Kunden aufgrund der Randbedingungen von Fassungsvermögen oder
Zeitfenster in eine Lösung einzufügen. In diesem Falle wird in
das System ein zusätzliches Fahrzeug eingefügt.
In dieser gesamten Beschreibung benutzen wir ausschließlich
strahlenförmige R, beliebige R und sequentielle ROptimierung, die den gewählten Zerstörungsmodus mit der
bestmöglichen Einfügetechnik verbinden. Natürlich können
andere Zerstörungsverfahren und andere Einfügetechniken
kombiniert werden, ohne dass von den Darlegungen der
vorliegenden Erfindung abgewichen würde. Das grundlegende
Optimierschema nach der vorliegenden Erfindung sollte jedoch
nun klar sein; es umfasst die folgenden Schritte, die auch in
Fig. 2 sichtbar gemacht werden:
- 1. Beginn mit einer anfänglichen Konfiguration.
- 2. Auswahl eines Zerstörungsmodus.
- 3. Auswahl einer Anzahl A ≦ [F.N] von Knoten, die entfernt werden sollen.
- 4. Zerstörung
- 5. Wiederaufbau
- 6. Entscheidung, ob Sie die neue Lösung nach einer Entscheidungsregel annehmen (Simuliertes Ausheilen, Schwellen-Annahme, usw.). Wenn Sie annehmen, geht es weiter mit 2., indem die neue Lösung benutzt wird, sonst unter Verwendung der aktuellen (alten) Lösung erneuter Beginn mit 2.
Eine Route eines Fahrzeuges wird durch eine Abfolge von Kunden
C1, C2, . . ., Ck dargestellt. Bei einer gegebenen Route sind C1
und Ck Pseudokunden, die den Anfang und das Ende an einem
zentralen Depot darstellen. Der einzige Punkt, der bei den
Zerstörungs- und Wiederaufbauvorgängen ohne Festlegung bleibt,
ist die Darstellung der Zeit. Wir wählen die Darstellung als
Zeitintervalle bei jedem Kunden (einschließlich der
Pseudokunden). Dies hat den Vorteil, dass alle möglichen
zeitlichen Ausführungen einer gegebenen Kundenreihenfolge in
einer Tour gleichzeitig dargestellt werden können. Es sollen
Ci first und Ci last die früheste und die späteste Zeit sein, zu
welcher der Kunde den Beginn der Bedienung zulässt, und Ci job
soll seine Bedienungszeit sein (für die Pseudokunden ist die
Bedienungszeit 0). Nun werden Ci early und Ci late immer
aktualisiert, um die früheste und die späteste Zeit
darzustellen, zu der die Bedienung bei Ci innerhalb der
tatsächlichen Tour beginnen kann. Bei Kunde Ci ist ein
Zeitfensterkonflikt vorhanden, wenn und nur wenn Ci early < Ci late.
Die Reisezeit zwischen zwei Kunden Ci und Cj wird mit
travel (Ci, Cj) bezeichnet. Wenn Kunde Ci neu in die Tour
eingefügt wird, wird er mit Ci early = ci first und Ci late = Ci last
initialisiert. Dann werden die early- und late-Einträge
gleichermaßen aktualisiert, hier für die early-Einträge
gezeigt:
für i: = 2 to k do Ci early = max{Ci early, Ci-1 early + Ci-1 job + travel(Ci-1, Ci)}
Nach dem Entfernen eines Kunden (aufgrund einer RZerstörung), das zu der Route C1, C2, . . ., Ck führt, wird der
early-Teil der Aktualisierung erledigt mit:
für i: = 2 to k do Ci early = max{Ci first, Ci-1 early + Ci-1 job + travel(Ci-1, Ci)}
für i: = 2 to k do Ci early = max{Ci first, Ci-1 early + Ci-1 job + travel(Ci-1, Ci)}
Der Late-Teil der Aktualisierung erfolgt gleichermaßen.
Bei Problemen, bei denen es nicht leicht ist, die gewünschte
Anzahl nT von Touren in einer Lösung zu erreichen, die aus der
Literatur als die beste/das Optimum bekannt ist, benutzten
wir die folgende Modifikation der normalen Vorgehensweise: für
jedes Fahrzeug, das in einer Konfiguration benutzt wird, die nT
überschreitet, skalierten wir seine Kosten um einen Faktor 5.
Für die Konfigurationen mit höchstens nT benutzten Fahrzeugen
verändert dies überhaupt nichts, und für die anderen wird es
die Suche in die richtige Richtung lenken. Alle Durchgänge
wurden unter Verwendung der Schwellen-Annahme als
Entscheidungsregel durchgeführt. Die Anfangsschwelle T0 wurde
so gelegt, dass sie die Hälfte der Standardabweichung der
objektiven Funktion während einer Zufallstour betrug. Wir
benutzten für die Schwelle T einen exponentiellen Abkühlplan
der Form
T = T0.exp(-ln2.x/α)
Wobei die halbe Lebensdauer α auf 0,1 festgesetzt wurde. Die
Planvariable x wird während des Optimierungslaufes von 0 auf 1
erhöht. Wir wandten eine 1 : 1-Mischung von strahlenförmigem R
und zufälligem R unter Verwendung von F = 0,3
beziehungsweise F = 0,5 an. Die einzelnen Berechnungen wurden
mit 40.000 Mutationen durchgeführt, was auf einer
Arbeitsstation RS 6000, Modell 43P, 233 MHz, etwa 30 Minuten
CPU-Zeit in Anspruch nahm. Die Vernachlässigung der
Zeitfenster erhöht die Rechengeschwindigkeit um etwa einen
Faktor von drei.
Ein wichtiger Punkt, der zu erwähnen ist, besteht in der
Anwendbarkeit der R auf sehr große
Fahrzeugleitwegprobleme. Dies ist auf die Tatsache
zurückzuführen, dass sie von sich aus für parallele Ausführung
geeignet ist. Am meisten zeitaufwendig ist die Berechnung der
durch ein Fahrzeug verursachten Annahmekosten für einen
Kunden, insbesondere bei den Wiederaufbauschritten. Der
Wiederaufbauschritt nimmt etwa 90% der gesamten Rechenzeit in
Anspruch. Diese Berechnungen können auf der Grundlage der
Fahrzeuge leicht parallelisiert werden, da die einzelnen
Fahrzeugberechnungen nicht voneinander abhängen. Dies gilt
sogar für die einzelnen Prüfungen an unterschiedlichen
möglichen Positionen innerhalb einer Fahrzeugtour.
Beispielsweise müssen in Fahrzeugleitwegsystemen die
Wiederaufbauvorgänge für Neuberechnung von Zustandsvariablen
alle Transportmittel abfragen; als "unabhängige Objekte"
können die Transportmittel parallel abgefragt werden.
Die Arbeit an VRPTW kann in zwei Gruppen aufgeteilt werden:
Arbeit an exakten Algorithmen oder Heuristik und Arbeit an
Meta-Heuristik. Die Ergebnisse vor Rochat et al. fallen in die
erste Kategorie, die Arbeiten von Rochat et al. selbst in die
zweite. R ist eine Strategie, komplexe kombinatorische
Probleme zu lösen. Die Anwendung von R auf VRPTW ist eine
heuristische und fällt daher in die erste Kategorie.
Wir vergleichen unsere Ergebnisse in Fig. 3 (links), Fig. 4
(links) mit der Arbeit vor Rochat et al. und mit der Arbeit
von Rochat et al. in Fig. 3 (rechts) und Fig. 4 (rechts). In
Fig. 3 (links), Fig. 4 (links) gibt es 8 Fälle, bei denen
unsere Ergebnisse schlechter sind, 12 Fälle, bei denen unsere
Ergebnisse gleich sind und 36 Fälle, bei denen wir bessere
Lösungen gefunden haben. Es gibt nur 3 Fälle, bei denen wir
die Minimalzahl von Touren verfehlten, aber 5, bei denen wir
eine Tour besser als das beste bekannte Ergebnis sind.
Vergleich der Ergebnisse mit der Arbeit von Rochat et al.
zeigt, dass wir in 24 Fällen die gleichen Ergebnisse erhielten
und in 31 Fällen bessere Ergebnisse haben. Nur ein Problem
wurde von Rochat et al. besser gelöst. Abgesehen von zwei
Ausnahmen, bei denen unsere Lösungen eine Tour besser sind,
erhielten wir immer Lösungen mit der gleichen Anzahl von
Touren. Die große Zahl von gleichen Lösungen war möglich, weil
wir beide doppelt genaue reale Arithmetik benutzten und zeigt
an, dass vielleicht viele dieser 24 Probleme überhaupt nicht
mehr verbessert werden können. Die Probleme aus den Gruppen C1
und C2 werden von den meisten Autoren und uns mit nahezu der
gleichen Qualität gelöst, und bei 5 von den 9 Problemen aus C1
optimal. Damit betrachten wir diese Problemgruppen als
"einfach". Für jede der anderen Gruppen stellen wird die
größte Verbesserung für ein von uns gefundenes Problem in Fig.
5 vor.
Der Sinn und Zweck eines Optimierungsalgorithmus kann es sein,
eine neue beste Lösung (Sport) zu erreichen oder praktisch
angewandt zu werden. Im zweiten Falle ist eine kleine Varianz
der (guten) Ergebnisse sogar wichtiger als die
durchschnittliche Qualität oder die beste Lösung, die mit
einem Algorithmus gefunden werden kann. Fig. 6 zeigt die
Statistik von 50 Durchgängen für jedes der vorstehend
erwähnten 4 Probleme. Der Wert ρ ist die Wahrscheinlichkeit
des Ereignisses, dass eine Lösung aus der besten bekannten
Anzahl von Touren besteht. Sie ist für diese Probleme
ausgesprochen unterschiedlich. Für die ersten 3 Probleme wären
sogar die schlechtesten gefundenen Lösungen besser als die
vorhergehende optimale Lösung. Für Problem RC206 führten alle
Durchläufe zu Lösungen, bei denen die beste bekannte Anzahl
von Touren benutzt wurde. Hier ist die schlechteste Lösung
schlechter als die beste bekannte, aber sogar der Mittelwert
dieser Lösungen ist besser als die derzeit beste bekannte.
In diesem Abschnitt führen wir das wirklich schwierige Problem
der Netzwerkoptimierung ein. Beim Versuch, für Kunden von IBM
vernünftigerweise gute Lösungen zu bekommen, stellten wir
fest, dass die einfachen Ausheil- und Schwellen-
Annahmeverfahren nicht zufriedenstellend waren oder versagten,
wenn Sie diese härtere Formulierung vorziehen. Die Landschaft
dieses schwierigeren Problems scheint außerordentlich
"unstetig" zu sein. An diesem Punkt, und in Anbetracht der
Enttäuschung über die Ergebnisse der klassischen Algorithmen,
entwickelten wir die abschließende Idee von Zerstörung &
Wiederaufbau. Wir legen das Problem dar. In einem
Weitbereichsnetzwerk (WAN) haben Sie die Aufgabe, bestimmte
Mengen von Information über ein nicht gerichtetes Diagramm zu
übertragen, das Netzwerk. Verschiedene Knoten sind durch
sogenannte Verbindungen verbunden. Jede Verbindung besteht aus
null oder mehr Kommunikationsleitungen, sogenannten
Fernleitungen, von denen jede eine Bandbreite hat, die in Bit
pro Sekunde (bps), Kilobit pro Sekunde (Kbps) oder Megabit pro
Sekunde (Mbps) gemessen wird. Wenn Sie von Punkt a mit Punkt b
in einem Netzwerk kommunizieren möchten, können Sie eine
Fernverbindung mit einer ausreichenden Bandbreite abonnieren.
Ihr ISDN-Kanal ist beispielsweise eine derartige
Fernverbindung und hat 64 Kbps. Ihr Versorger kann
Fernverbindungen mit unterschiedlichen Bandbreiten anbieten.
In Deutschland können Sie beispielsweise Verbindungen mit 9,6,
19,2, 64, 128 Kbps oder sogar mit 2 und 34 Mbps bekommen. In
Abhängigkeit von der Länge der Fernverbindung und von ihrer
Bandbreite müssen Sie eine Gebühr pro Zeiteinheit zahlen,
üblicherweise pro Monat. Die Preise sind nicht linear zur
Länge und zur Bandbreite. Gewöhnlich gibt es eine Grundgebühr,
damit Sie überhaupt kommunizieren können, kürzere
Fernleitungen sind pro Meile viel kostenaufwendiger als
längere, bei denen Sie einen Längenrabatt usw. erhalten
können. Da es viele in jüngster Zeit gegründete neue
Telekommunikationsversorger gibt, besteht für einfache
Preisstrukturen keine Hoffnung mehr.
Angenommen, Sie haben ein Unternehmen mit sechs Büros in einem
Land, wie es in Fig. 7 gezeigt wird. Von c nach b, von d nach
c, von f nach d von f nach a, von e nach a brauchen Sie eine
Kommunikationsbandbreite von 10 Mbps, um Ihre
Kommunikationsbedürfnisse zu befriedigen. Das linke Bild von
Fig. 7 wird dann als Ihr Bedarfsdiagramm bezeichnet; die
verschiedenen Bedürfnisse in diesem Netzwerk sind grafisch
durch Wege mit unterschiedlichen Linienstrukturen dargestellt
worden. Sie könnten nun die Fernleitungen genau nach diesem
Bedarfsdiagramm bestellen, um Ihr Kommunikationsnetzwerk
aufzubauen. Das löst Ihre Aufgabe sofort. Es ist jedoch leicht
zu vermuten, dass es preiswertere Wege geben könnte, um Ihre
Büros zu verbinden. Betrachten Sie das rechte Bild in Fig. 7;
die Leitweglösung der Bedürfnisse in diesem Netzwerk ist
grafisch durch Wege mit unterschiedlicher Linienstruktur
dargestellt, bei denen die Art der Linienstruktur dem
Bedarfsdiagramm entspricht. Wenn wir diese Fernleitungen bei
der TELEKOM bestellen, wird die Gesamtlänge der
Fernverbindungen von 885 Einheiten in der einfachen Lösung auf
562 Einheiten vermindert. Wenn wir in diesem neuen Netzwerk
von c zu b kommunizieren, wird unsere Nachricht über f
geleitet, wie wir sagen werden. Wir sagen, von c nach b über f
wird unsere Nachricht mit zwei Sprungzählungen geleitet.
Standort f muss mit Umschalttechnik ausgestattet werden.
Netzwerkoptimierung besteht aus dem mathematischen Problem,
für Ihr Bedarfsdiagramm das preiswerteste mögliche
Kommunikationsnetzwerk zu finden. Im Folgenden legen wird das
Problem etwas genauer dar und geben einige notwendige
Bedingungen für Lösungen an. Es ist bequemer, die Bedürfnisse
als Matrix anzugeben, statt sie in einem Diagramm sichtbar zu
machen. Beispielsweise hat das Beispielproblem in Fig. 7 die
Bedarfsmatrix
Die maximalen Sprungzählungen können für jeden einzelnen
Bedarf eingeschränkt werden, weil beispielsweise
Telefonleitungen aufgrund möglicher Echoeffekte besser über
weniger als oder gleich zwei Sprungzählungen geleitet werden.
Dies ist auf die Verzögerung zurückzuführen, die durch
Zwischenknoten verursacht wird. In einem derartigen Fall kann
die Sprungzählmatrix H aussehen wie
Wir wissen für jede Stelle des Netzwerkes, ob sie
Umschaltfähigkeit besitzt oder nicht. Der Vektor S =
(1,1,1,1,1,1) zeigt für unser kleines Beispiel, dass jeder Ort
eine Umschaltfähigkeit hat (fehlende Umschaltfähigkeit wird
mit 0 bezeichnet).
Bei einem Netzwerkoptimierungsproblem müssen wir weiterhin den
Vektor P der Koordinaten der geografischen Positionen der
Standorte und die Menge der möglichen
Fernverbindungsbandbreiten kennen. In unserem Beispiel sind
die Positionen gegeben mit P = ((160,60), (0,50), (220,210),
(70,0), (10,180), (80,80)), und es können nur Fernverbindungen
mit einer Bandbreite von 34 Mbps benutzt werden. Der Preis
oder die Kosten einer einzelnen Fernleitung mit 34 Mbps ist
gleich ihrer Länge, d. h. dem Euklidischen Abstand zwischen
einem Paar von Orten. In der Praxis hängt der Preis für eine
Fernleitung mit einer vorgegebenen Bandbreite in eher
komplexer Form von dem Abstand ab. Fig. 7 (rechts) zeigt das
optimale Netzwerk für dieses Problem. Es besteht topologisch
aus einem sogenannten Stern mit fünf Verbindungen, wobei jede
Verbindung eine einzelne Fernleitung mit 34 Mbps enthält. Die
Zahlen an den Verbindungen in Fig. 7 bezeichnen die
tatsächliche erforderliche Bandbreite. Die Leitweglösung der
Bedürfnisse in diesem Netzwerk wird grafisch durch Wege mit
unterschiedlicher Linienstruktur dargestellt, bei denen die
Art der Linienstruktur dem Bedarfsdiagramm entspricht. Die
Leitwegmatrix ist gegeben durch
Wobei ∈ einen leeren Weg bezeichnet. Durch Ansehen eines
einfachen Beispiels haben wir das Problem der
Netzwerkoptimierung definiert. Zusammengefasst sind die
Parameter des Netzwerkoptimierungsproblems die Folgenden:
- - eine Anzahl von Orten und ihre geografischen Koordinaten
- - Umschalteinrichtungen an den Orten
- - Bedarfsmatrix mit Bedarfseinträgen von Ort zu Ort
- - Sprungzählmatrix mit Einschränkungen der Sprungzählung für jedem Bedarf
- - eine Menge von Fernleitungstypen (Bandbreiten), die bestellt werden kann
- - Preistabelle, die von Bandbreite und Entfernung abhängt
- - Diagramme von Verbindungen, die aus bestimmten Fernleitungen bestehen, die alle Bedürfnisse und Einschränkungen erfüllen
- - Leitwegmatrix mit Leitwegeinträgen für jeden Bedarf
Das ist das mathematische Problem. In der Praxis lieben unsere
Kunden die sehr "abstrakt aussehenden" oder "mathematisch
aussehenden" Lösungen nicht sehr, die nicht "durchschaubar"
aussehen. Daher haben wird die Lösungen etwas anders
aufgebaut. Zusätzlich werden viele Alternativen mit
unterschiedlichen Umschalteinrichtungen verglichen, um
Netzwerkausrüstung zu sparen.
Eine weitere ernstzunehmende Eigenschaft, die in der Praxis
häufig gefordert wird, ist Redundanz. Das Behandeln der
Redundanz in der Netzwerkoptimierung besteht in der
Betrachtung möglicher Ausfälle von Netzwerkbaugruppen
(Fernleitungen und Geräte). Man möchte Netzwerke auch im Falle
derartiger Ausfälle betreiben. Daher werden viele Netzwerke
mit einer der folgenden zwei Eigenschaften errichtet:
- - für jeden Bedarf gibt es zwei alternative Leitwege, die keinerlei Verbindungen gemeinsam haben
- - für jeden Bedarf werden zwei alternative Leitwege definiert, die keinerlei Zwischenknoten gemeinsam haben.
Netzwerke mit diesen Merkmalen werden als verbindungsredundant
beziehungsweise knotenredundant bezeichnet, wenn die folgenden
Bedingungen erfüllt werden: wenn eine Verbindung oder ein
Knoten ausfällt, und wenn in diesem Falle alle betroffenen
Leitwege von Bedürfnissen auf ihren alternativen Leitweg
geändert werden, dann ist dieser neue Leitweg für das
ursprüngliche Netzwerkproblem eine zulässige Lösung. Es ist
anzumerken, dass Knotenredundanz Verbindungsredundanz enthält,
so dass Knotenredundanz die härtere Einschränkung ist. In
normalen Netzwerken haben wir eine Verfügbarkeit von
Fernleitungen von über 99%. Ausfall ist daher hinsichtlich
der Zeit (natürlich nicht hinsichtlich des subjektiven Ärgers)
ein seltener Fall. In diesen wenigen dazwischen liegenden
Ausfallzeiten ist es gewissermaßen tolerierbar, alternative
Leitwege mit höheren Sprungzählungen zu benutzen. Bei
redundanzoptimierten Netzwerken hat das Problem aus diesem
Grunde eine Sprungzählmatrix Hord und Halt für den Normalfall
beziehungsweise für den Fall eines einzelnen Ausfalls. In
unserem Mini-Beispiel benutzen wir
Heutzutage behandeln Werkzeuge zur Netzwerkoptimierung das
Problem in zwei Schritten. Zuerst wird ein gutes grundlegendes
Netzwerk entworfen. Dann werden auf vernünftige Weise alle
Verbindungen zugefügt, mit denen Redundanz erreicht wird. Fig.
8 (links) zeigt die beste Lösung, die wir mit dieser Art
Vorgehensweise erhielten. Der obere linke Teil von Fig. 8
macht die sich ergebende Topologie der Verbindungen mit ihren
erforderlichen Bandbreiten sichtbar. Der linke Teil in der
Mitte von Fig. 8 spiegelt die gewöhnliche Lösung für die
verschiedenen Bedürfnisse wider. Der untere Teil von Fig. 8
macht die Redundanzlösung der verschiedenen Bedürfnisse
sichtbar. Wiederum werden die Lösungen der verschiedenen
Bedürfnisse innerhalb von Fig. 8 (links) durch Wege mit
unterschiedlichen Linienstrukturen grafisch dargestellt. Zu
der "sternförmigen" Lösung für das grundlegende Netzwerk
fügten wir Redundanz hinzu, die mit einem Gesamtlängenentwurf
von 1048 endete. Wenn wir das Netzwerk eben insgesamt einmal
optimierten, in einer einstufigen Verfahrensweise, können wir
eine viel bessere Lösung für die Länge 861 für dieses kleine
Beispiel erreichen, was eine 21,7%ige Verbesserung bedeutet.
Der Leitweg von Fig. 8 (rechts) ist durch die Matrizen gegeben
wobei ∈ einen leeren Weg bezeichnet. Der obere rechte Teil von
Fig. 8 macht die sich ergebende Topologie der Verbindungen mit
ihren erforderlichen Bandbreiten sichtbar. Der rechte Teil in
der Mitte von Fig. 8 spiegelt die normale Lösung für die
verschiedenen Bedürfnisse wider. Der untere rechte Teil von
Fig. 8 macht die Redundanzlösung (redundante Leitwege der
Bedürfnisse) der verschiedenen Bedürfnisse sichtbar. Wiederum
werden die Lösungen der verschiedenen Bedürfnisse innerhalb
von Fig. 8 (rechts) durch Wege mit unterschiedlichen
Linienstrukturen sichtbar gemacht. Die Zahlen an den
Verbindungen geben die tatsächliche benutzte Bandbreite an. Es
ist anzumerken, dass jeder Bedarf in unserem Beispiel 10 Mbps
beträgt, und schauen Sie auf Fig. 8 (rechts). Von d nach a
gibt es nun über eine einzelne Leitung mit 34 Mbps fünf
unterschiedliche Leitwege, jeder mit einem Bedarf von 10 Mbps.
Dies sieht auf den ersten Blick wie nicht zulässig aus. Lassen
Sie uns ein klärendes Argument vorbringen. Beispielsweise
haben der Leitweg, der den Bedarf zwischen (b, c) befriedigt
und der Leitweg, der den Bedarf zwischen (d, f) befriedigt,
keine Verbindung oder keinen Zwischenknoten gemeinsam. Damit
werden, wenn es einen einzelnen Netzwerkausfall gibt, der
Leitweg, der den Bedarf zwischen (b, c) über (b, d, a, c) und
der Leitweg, der den Bedarf zwischen (d, f) über (d, a, f)
befriedigt, niemals gleichzeitig benutzt werden. Wenn Sie
diese Argumente sorgfältig überprüfen, dann sehen Sie, dass
die Lösung in der Tat machbar ist. Zusätzlich sehen Sie, dass
das einfache Mini-Netzwerk, das wir hier zur Einführung
vorstellen, schon ein intrigierendes und verwickeltes Problem
der Netzwerkoptimierung ist, wenn Redundanz betrachtet wird.
Damit sind insgesamt die zusätzlichen Parameter des
Netzwerkoptimierungsproblems mit Redundanz die Folgenden:
zusätzliche Eingabe:
zusätzliche Eingabe:
- - Art der Redundanz (Knoten oder Verbindung)
- - Sprungzähleinschränkungen für alternative Leitwege
zusätzliche Ausgabe:
- - Leitwegmatrix mit alternativen Leitwegen für jeden Bedarf im Falle eines Ausfalles
Der Aufbau einer machbaren Lösung ist leicht, weil Sie
augenscheinlich immer eine sehr kostenaufwendige Lösung
aufbauen können, die allen vorher erwähnten Randbedingungen
genügt.
Zerstörung bedeutet, dass bestimmte Bedürfnisse aus dem System
entfernt werden. Dies umfasst das Vermindern derjenigen
Verbindungen in ihrer Bandbreite, die durch den aktiven und
redundanten Weg jedes Bedarfes benutzt wurden, der entfernt
worden ist.
Normales "bestmögliches Einfügen" sollte klar sein. Es wird
ein Bedarf ausgewählt, der eingefügt werden soll. Sein aktiver
Weg wird auf die preiswerteste mögliche Weise eingefügt, dann
wird sein redundanter Weg auf kostenoptimierte Weise
eingefügt.
Wie der aktive und der redundante Weg eines Bedarfes in den
Entwurf wieder eingefügt werden sollen, wird durch in der
Länge eingegrenzten Algorithmus des preiswertesten Weges
entschieden. Wir erhalten die Längenbegrenzung durch die
aktive und redundante Sprungszählbeschränkung eines Bedarfes.
Die Eckkosten für den Algorithmus des Diagramms des
preiswertesten Weges werden als zusätzliche Transportkosten
der Bandbreite des Bedarfes definiert. Daher enthält die
Bestimmung der Eckkosten die folgenden zwei Probleme.
Für das NRND-Problem (nicht redundanter Netzwerkentwurf) ist
die Ermittlung der Bandbreite für eine gegebene Verbindung,
die für das Agieren mit ihrer tatsächlichen Entwurfsbandbreite
und der Bandbreite des Bedarfes ausreicht, der wieder
eingefügt werden soll, eine einfache Aufgabe: beide Werte sind
einfach zu addieren. Das Problem wird im Falle des RND-
Problems (Redundanter Netzwerkentwurf) schwieriger, wie schon
in der Erörterung der Bandbreite der Verbindung a-d im
vorhergehenden Beispiel zu erkennen war. Hier wird ein
Konflikt-Diagramm mit Scheitelpunkten für den redundanten Weg
jedes Bedarfes und Kanten zwischen zwei Scheitelpunkten
ermittelt, wenn die entsprechenden redundanten Wege aufgrund
von Netzwerkausfall gleichzeitig gebraucht werden, d. h. die
entsprechenden aktiven Wege nutzen eine Verbindung (oder im
Falle von Knotenredundanz einen internen Standort) gemeinsam.
Die Aufgabe besteht nun darin, Gruppen von isolierten
Scheitelpunkten zu ermitteln, so dass die Summe des maximalen
Bedarfes jeder Gruppe ein Minimum ist. Die maximale Bandbreite
einer derartigen Gruppe ist für die ganze Gruppe ausreichend,
da durch die Gruppendefinition meistens eine ihrer Bandbreiten
aufgrund von Netzwerkausfall gleichzeitig erforderlich ist. Da
im Falle keines Netzwerkausfalls alle aktiven Bedürfnisse
garantiert werden müssen, muss die Summe der aktiven
Bedürfnisse einer Verbindung zugeordnet werden, damit der
aktive Weg über eine Verbindung abgedeckt wird. Da es keine
Wechselwirkung der aktiven Wege und der redundanten Wege über
die gleiche Verbindung gibt, ist die Bandbreite für eine
Verbindung L mit einer Menge von aktiven Bedürfnissen Lact und
redundanten Bedürfnissen Lred gegeben durch:
Das Problem des Ermittelns des Anteiles der vorstehenden
Bedürfnisse ist an sich ein vollständiges NP-Problem: wenn
alle redundanten Bedürfnisse die gleichen sind, ist es das
Problem der Mindestcliquenabdeckung auf dem
Komplementärdiagramm des Konfliktdiagramms. Wir benutzen
deshalb eine erste Ausgleichsverminderung als heuristische, um
mit der Bandbreitenberechnung effizient fertig zu werden.
Exakte Algorithmen sind außer Betracht, da es Fälle mit
oftmals mehr als 30 redundanten Wegen über eine bestimmte
Netzwerkverbindung gibt und die Berechnung sehr schnell
erfolgen muss.
Übliche Telekommunikationsversorger haben Tarife, die von
einer Mischung von Verbindungsabständen, Tarifzonen und
Brandbreiten abhängen, die transportiert werden sollen. Wir
benutzen eine (auf einem Speicher beruhende!) Tarifdatenbank,
um mit der effizienten Beantwortung auf Fragen der folgenden
Art fertig zu werden: welches ist, für eine gegebene
Bandbreite B einen Abstand zwischen zwei Orten dist und eine
Tarifzone Z, die billigste Anordnung von Fernleitungen, welche
die Bedürfnisse befriedigt, und wieviel kostet sie? Da diese
Berechnungen nur einen sehr geringen Teil der Rechenzeit in
Anspruch nehmen sollten (wir möchten optimieren), benutzen wir
eine Hash-Verfahrensweise, um zu garantieren, dass jeder
Aufruf an die Datenbank nur das erste Mal berechnet wird. Die
tatsächliche Berechnung ist die Antwort auf das folgende
(vollständige NP) Problem:
Problem: minimale gewichtete Abdeckung
Beispiel: eine Gruppe von Fernleitungen
T = {(ν1, c1), . . ., (νk, ck)}, νi, cj∈N0 +,. l ≦ i, j ≦ k, wobei jedes ein Umfangs-/Kostenpaar und ein Umfang V∈N0 + ist.
Frage: finden Sie eine Menge I ⊆ T mit Σ( ν ,c) ∈ Iν ≧ V und Σ( ν ,c) ∈ Ic als Minimum.
Problem: minimale gewichtete Abdeckung
Beispiel: eine Gruppe von Fernleitungen
T = {(ν1, c1), . . ., (νk, ck)}, νi, cj∈N0 +,. l ≦ i, j ≦ k, wobei jedes ein Umfangs-/Kostenpaar und ein Umfang V∈N0 + ist.
Frage: finden Sie eine Menge I ⊆ T mit Σ( ν ,c) ∈ Iν ≧ V und Σ( ν ,c) ∈ Ic als Minimum.
Normalerweise ist die Anzahl der unterschiedlichen
Fernleitungen nicht klein, da jede unterschiedliche CIR
(vereinbarte Informationsrate) einer Fernverbindung mit einer
bestimmten Bandbreite (für Verbindungen mit Diensten
eingeschlossen) nach dem obigen Problem unterschiedliche Paare
ergibt. Die tatsächliche Berechnung erfolgt mit einem
leistungsfähigen Verzweigungsalgorithmus, der es ermöglicht,
genau alle 650.000.000 Anrufe bei der Datenbank während eines
12stündigen Optimierungslaufes mit einer Gesamtsumme an CPU-
Zeit von 1 Minute zu beantworten.
In diesem Abschnitt geben wir ein Beispiel eines Netzwerkes
aus dem wirklichen Leben, das mit dem vorgeschlagenen
Verfahren geprüft worden ist. Das Beispiel N15, das wir
vorschlagen, besteht aus 15 Knoten, einer von ihnen wirkt als
"Mittelpunkt". Es gibt in diesem Netzwerk keine Kommunikation
"von jedem zu jedem", sondern nur eine Kommunikation "von
jedem an den Mittelpunkt". Dies ist in der Realität ein sehr
üblicher Fall. Zweigstellen von Versicherungen oder Banken
kommunizieren mit dem Mittelpunkt und gewöhnlich nicht
untereinander. N15 beschreibt einen derartigen Fall aus dem
wirklichen Leben. In unserem Optimierungsdienst für unsere
Kunden werden wir häufig gefragt, worin die Synergie-Effekte
bestünden, wenn Netzwerke gemeinsam verwaltet werden. Sagen
wir, drei Banken mit nahe beieinander liegenden Mittelpunkten
(in einer großen Stadt) werden mit ihren Zweigstellen in der
umgebenden Region verbunden. Wenn Sie Ihre drei Netzwerke
getrennt verwalten, wird es Sie einen Betrag x für die Summe
der K 19481 00070 552 001000280000000200012000285911937000040 0002019946607 00004 19362osten für Ihre Netzwerke kosten. Angenommen, Sie
entscheiden sich dafür, ein vereintes Netzwerk zu betreiben.
Dann kann das sich ergebende Netzwerk natürlich preiswerter
entworfen werden als die Summe ihrer ursprünglichen Kosten.
Wenn das vereinte Netzwerk y% billiger als die ursprüngliche
Summe ist, sagen wir, dass die Synergie y% beträgt. Wir
stellen hier ein derartiges Synergieproblem vor. Aus N15 haben
wir zwei gleichwertige Netzwerke aufgebaut, indem wir das
ursprüngliche Netzwerk mit einem Vektor übersetzt haben. Auf
diese Weise haben wir zwei gleichwertige Kopien des
ursprünglichen N15. Wir betrachten nun das neue Netzwerk von
45 Knoten, das durch drei Kopien von N15 erzeugt worden ist.
Dieses neue "Synergieproblem" nennen wir N45. Die Aufgabe
besteht darin: N15 allein optimieren und versuchen, das beste
Synergie-Netzwerk N45 zu berechnen. Worin besteht die
resultierende Synergie?
In der Folge stellen wir die Problembeschreibung bereit.
- - 15 Orte, 11 Orte mit Umschalteinrichtungen
- - ein Bedarf (32 bis 96 Kbps) von jedem Standort an das "Rechenzentrum" (ein einzelner Bestimmungsort)
- - Knotenredundanz für alle Bedürfnisse
- - maximale Sprungzahl von 3 für aktive und redundante Wege
- - Fernverbindungsbandbreiten von 64 Kbps, 128 Kbps und 2 Mbps können bestellt werden
- - Kosten sind 1, 2 beziehungsweise 3 Einheiten pro Längeneinheit
- - Abstand zwischen zwei Knoten ist euklidisch (gerundet)
- - Einzelheiten der Konfiguration von System N15 und die Optimierungsergebnisse sind in Fig. 9 gegeben. Aufgelistet werden die Koordinaten x und y der einzelnen Knoten, die Umschalteinrichtung S, ihr Bandbreitenbedarf D (in Kbps) zum Rechenzentrum C und die optimierten Leitwege rord und ralt für den Normalfall beziehungsweise für den Fall des Ausfalles.
- - Diagramme von Verbindungen, die aus bestimmten Fernleitungen bestehen. Fig. 10 spiegelt die 24 Verbindungen wider, die im optimierten System N15 benutzt werden. Für jede Verbindung wird die angesammelte Bandbreite bord aufgrund des normalen Leitweges rord, die angesammelte Bandbreite balt aufgrund der Leitwege im Falle eines Ausfalles ralt, die Bandbreite bt der erforderlichen Fernverbindung und ihre Kosten aufgelistet. Alle Bandbreiten sind in Kbps gegeben.
- - Ausgabematrix mit Leitwegeinträgen für jeden Bedarf (siehe Fig. 9).
objektive Funktion: gefundenes Minimum der Summe von
Fernverbindungskosten ist 11437 Einheiten.
- - 45 Orte, 33 Orte mit Umschalteinrichtungen
- - aus drei Untersystemen N15 mit Übertragungsvektoren von (0,0), (0,200) und (- 200,0) bestehend
- - Einzelheiten der Konfiguration von System N45 und die Optimierungsergebnisse sind in Fig. 11 gegeben. Es werden die Koordinaten x und y der einzelnen Knoten, die Umschalteinrichtung S, ihr Bandbreitenbedarf D (in Kbps) zum Rechenzentrum C und die optimierten Leitwege rord und ralt für den Normalfall beziehungsweise für den Fehlerfall aufgelistet.
- - Diagramme von Verbindungen, die aus bestimmten Fernleitungen bestehen. Fig. 12 spiegelt die 79 Verbindungen wider, die im optimierten System N45 benutzt werden. Für jede Verbindung wird die angesammelte Bandbreite bord aufgrund der normalen Leitwege rord, die angesammelte Bandbreite balt aufgrund der Leitwege im Fehlerfall ralt, die Bandbreite bt der erforderlichen Fernverbindung und ihre Kosten aufgelistet. Alle Bandbreiten sind in Kbps gegeben.
- - Leitwegmatrix mit Leitwegeinträgen für jeden Bedarf (siehe Fig. 11).
- - gefundenes Minimum der Fernleitungskosten bei 25304 Einheiten.
- - Synergie, verglichen mit drei isolierten Systemen N15, ist 26,3%.
In diesem Abschnitt stellen wir R für das Handelsreisenden-
Problem PCB442 vor, auf einzelnen Konfigurationen beruhend, so
dass Entscheidungsregeln wie SA, TA, Greedy-Annahme oder sogar
Zufallstour anwendbar sind, um die Suche im Konfigurationsraum
zu lenken. Wir werden unter Verwendung des R
Ergebnisse für alle wichtigen Teile eines Optimierungslaufes
bereitstellen. Wir werden diese Ergebnisse kurz mit allgemein
bekannten Ergebnissen für Optimierung der lokalen Suche unter
Verwendung der Lin-2-opt als Mutation vergleichen.
Gewöhnlich dient eine zufällige Lösung als Ausgangspunkt für
einen Optimierungslauf mit lokaler Suche unter Verwendung
"nicht intelligenter" Mutationen kleiner Größenordnung. Diese
Wahl ist am vernünftigsten, weil sie einer typischen Lösung
entspricht, die durch nicht intelligente Mutationen in einer
Zufallstour erzeugt werden. Es kann für die R
jedoch keine geeignete Wahl sein, da sie aufgrund des
Wiederaufbauteiles eine Art künstliche Intelligenz besitzen,
die nach den Regeln das bestmöglichen Einfügens arbeitet
(obwohl statt dessen andere Einfügetechniken verwendet werden
könnten). Daher möchten wir vorschlagen, keine zufällig
entstandene Lösung zu benutzen, sondern eine, die vollständig
mit der bestmöglichen Einfügeheuristik aufgebaut worden ist.
Daher zerstören wir am Anfang das gesamte System und bauen es
wieder auf.
Ab jetzt bezeichnen wir die mittleren Kosten mit <C<, den
Fehlerbalken mit ΔC = σ(C)/√M - 1 mit σ(C) als
Standardabweichung von C und M, der Anzahl der Messungen, Cmin
die geringsten gefundenen Kosten und Cmax die höchsten
gefundenen Kosten.
Wir stellen die Verteilung und die Qualität der beiden
unterschiedlichen Ausgangspunkte für das Problem PCB442
gegenüber, das eine optimale Länge von 50.783,5 hat. Fig. 13
zeigt die Verteilung der erhaltenen Längen sowohl für 100.000
zufällig erzeugte Lösungen wie für 100.000 Lösungen, die mit
der bestmöglichen Einfügeheuristik für das Problem PCB442
erzeugt worden sind. Linke Begrenzung: Minimum bei 50.783,5;
rechte Begrenzung: maximale Tourlänge beträgt annähernd
1.130.000. Wir erkennen, dass die Verteilungen für zufällig
erzeugte Lösungen und Konfigurationen, die mit dem
bestmöglichen Einfügen aufgebaut worden sind, beide nahezu
logarithmische Gaußverteilungen sind, sich aber in der Breite
der Gauß-Glocke und in der Höhe und der Position der Spitze
unterscheiden. Die mit der bestmöglichen Einfügeheuristik
erzeugte Verteilung ist viel kleiner und hat daher eine höhere
Spitze, darüber hinaus ist ihre Spitze nicht weit vom Optimum
entfernt. Die mittlere Länge von zufällig erzeugten Lösungen
liegt erwartungsgemäß nahe beim exakten Wert von
Aber die Ergebnisse für die bestmögliche Einfügeheuristik sind
nur etwa 15% schlechter als das Optimum:
Daher kann man hier den ersten Vorteil unseres neuen
Verfahrens erkennen: man beginnt mit diesem "Nur-R" immer
viel näher beim Optimum als mit einer zufälligen Lösung, geht
mit R weiter, die aufgrund der Regel des
bestmöglichen Einfügens eine Konfiguration nicht viel
verschlechtern, so dass das System direkt von Beginn an bis
zum Ende des Optimierungslaufes in der Nähe des Optimums
bleibt. Wir sparen automatisch Rechenzeit, ein
Optimierungslauf mit kleinen Mutationen würde sich aus dem
Bereich der zufälligen Lösungen, die etwa einige 100%
oberhalb des Optimums liegen, auf den Bereich von "x + 15%"
herunterarbeiten müssen, und wir können uns auf die .
Verminderung dieser "15%" konzentrieren.
Gewöhnlich beginnt ein Monte-Carlo-Optimierungslauf unter
Verwendung der Meta-Heuristiken SA, TA oder GDA mit einer
Zufallstour und endet mit dem Greedy-Annahme-Modus. Hier
möchten wir das Verhalten der R insbesondere für
diese marginalen Entscheidungsregeln erörtern. Abschließend
stellen wir Lösungen insbesondere für die TA vor.
Aus Mutationen kleiner Größenordnung ohne jede Intelligenz,
wie z. B. den lin-n-opts, die neue Kanten zufällig auswählen,
ist leicht zu erkennen, dass eine Zufallstour mit derartigen
Mutationen Lösungen erzeugt, die ebenso gut durch eine
zufällige Erzeugung erreicht werden können. Daher erzeugen
kleine Mutationen die Verteilung zufälliger Lösungen in einer
Zufallstour, die gleiche Verteilung, wie sie in Fig. 13
gezeigt wird. Wir haben uns jedoch zu fragen, ob die RMutationen mit A < N die Verteilung der Längen der Lösungen
verändern, die mit "Nur-R"-Mutationen mit A = N erzeugt
worden sind.
Wir zeigen in Fig. 14 für unterschiedliche Verhältnisse von F
(das den Anteil gemäß A ≦ [F.N] darstellt) die Verteilungen
nach dem Aufbau einer Lösung mit der bestmöglichen Einfüge-
Heuristik und dem nachfolgenden Durchführen von 100 Mutationen
in einer Zufallstour, sowohl mit strahlenförmiger, zufälliger
oder sequentieller Zerstörung. Wir finden heraus, dass sich
die Verteilungen geändert haben, für kleine F werden die
Lösungen verbessert, was ganz klar ist, da aufgrund unserer
Strategie des bestmöglichen Einfügens das System ein der
Greedy-Annahme gleichendes Verhalten aufweist. Für große F
erhalten wir für die 3 Mutationen unterschiedliche Ergebnisse:
zufälliges R stellt für größere F die besten Ergebnisse
bereit, strahlenförmiges R verändert die Verteilung nicht
viel, und sequentielles R verschlechtert die Lösungen. Diese
Ergebnisse können einfach erklärt werden: zufälliges R kann
am besten Gebrauch von der restlichen Tour machen, weil die
Knoten, die entfernt worden sind, über das gesamte System
gleichförmig verteilt sind, so dass für das Wiedereinfügen der
Knoten ein guter Rahmen des gesamten Systems übriggeblieben
ist. Strahlenförmiges R erzeugt einen Teil des Systems in
einer bestimmten Scheibe vollständig neu, die nur einige
wenige Schlüsselstellen zur Umgebung des Begrenzungskreises
hat. Der Zerstörungsteil des sequentiellen R erzeugt jedoch
im System eine lange Kante, die Knoten werden oftmals in
andere Kanten eingefügt, so dass nach der Mutation meistens
eine lange Kante im System verbleibt. Daher bietet diese
Mutation ein anschauliches Beispiel für eine schlechte
Kombination einer Zerstörung und eines Wiederaufbaus. (Es ist
anzumerken, dass wir nicht allgemein von einer schlechten
sequentiellen Zerstörung sprechen, nur die Kombination liefert
keine guten Ergebnisse, z. B. kann die Kombination einer
sequentiellen Zerstörung und eines Wiederaufbaus, der die
entfernten Knoten nur zwischen den beiden begrenzenden Knoten
der langen Kante einfügt, bessere Ergebnisse liefern.)
Zum Vergleich stellen wir nun analoge Ergebnisse für diese
Mutationen vor, kombiniert mit der Greedy-Annahme. In Fig. 15
finden wir Unterschiede zur den vorstehenden Ergebnissen.
Als allererstes finden wir, dass nahezu alle Ergebnisse unter
Verwendung der Greedy-Annahme eine bessere Qualität haben als
die unter Verwendung der Zufallstour (RW). Die größten
Unterschiede ergeben sich, wenn strahlenförmige oder
sequentielle Zerstörung benutzt worden ist, wohingegen der
Gewinn sehr gering ist, wenn zufällige Zerstörung benutzt
worden ist. Die Ergebnisse unterscheiden sich für kleine F
nicht viel, weil es für derartige kleine Bruchteile nahezu
gleich ist, ob die Greedy-Annahme oder die Zufallstour benutzt
werden: wenn wir nur einen Knoten entfernen und ein
bestmögliches Einfügen ausführen, dann erhalten wir entweder
die gleiche oder eine bessere Konfiguration, Greedy-Annahme
und Zufallstour decken sich. Wenn wir einige wenige Knoten
entfernen, können nur sehr kleine Zerstörungen auftreten.
Zweitens bekommen die Verteilungen der Ergebnisse, die mit
Greedy-Annahme gewonnen worden sind, für größere F eine
schärfere Spitze; die Spitze geht zu geringeren Längen über.
Die Benutzung von F = 0,5 erzeugt jedoch schlechtere
Ergebnisse als F = 0,2, wenn man mit sequentieller oder
strahlenförmiger Zerstörung arbeitet. Der optimale Bruchteil F
hängt von der Art der Zerstörung ab und liegt bei
strahlenförmigen Zerstörungen nahe bei 0,2.
Bis jetzt haben wir jedoch nur einen Trend für die
verschiedenen Mutationen erkannt, die Reise zu anderen Werten
der objektiven Funktion ist nach 100 Mutationen sowohl für RW
wie für GRE überhaupt noch nicht zu Ende, wie wir in Fig. 16
sehen. Fig. 16 zeigt die gemittelte Länge als Funktion der
Anzahl der R, beginnend bei durchgängiger R Konfigurationen zur Wahl von strahlenförmiger, zufälliger und
sequentieller Zerstörung mit unterschiedlichen Bruchteilen F;
links: für Zufallstour; rechts: für Greedy-Annahme.
Unter Verwendung der Zufallstour finden wir, dass bei größeren
F das gemeinsame Mittel von 10 unabhängigen Läufen nach rund
1000 Mutationen nicht weiter verbessert werden kann, wenn mit
strahlenförmiger oder sequentieller Zerstörung gearbeitet
wird; die Läufe mit einem kleinen F zeigen nahezu das gleiche
Verhalten wie ihre Gegenstücke, die mit Greedy-Annahme
arbeiten. Unter Verwendung der zufälligen Zerstörung ergibt
sich ein vollständig unterschiedliches Verhalten, das zu Fig.
14 analog ist: der Mittelwert fällt für alle Werte von F noch
bis zum Ende ab. Bei der Arbeit mit der Greedy-Annahme finden
wir auf den ersten Blick heraus, dass alle Kurven S-förmig
abfallen. Die besten Ergebnisse werden unter Verwendung eines
großen F-Maximums gewonnen, weil diese Mutationen in der Lage
sind, das System in großem Maße neu zu ordnen und daher
bessere Lösungen zu finden. Wiederum sind strahlenförmige und
sequentielle Zerstörung einander ähnlicher als der zufälligen
Zerstörung.
Obgleich wir erkannt haben, dass wir keine komplizierten
Entscheidungsregeln benutzen müssen, da die R in
der Lage ist, gute Ergebnisse schon unter Benutzung der
Greedy-Annahme zu erreichen, möchten wir nun Ergebnisse des
Kombinierens von R mit TA bereitstellen. Fig. 17 (links)
zeigt die Entwicklung der Qualität der Lösungen
als Funktion der CPU-Zeit für 6 unterschiedliche Abkühlpläne
auf, sowohl für die Mutationen Lin-2-opt wie für die RMutationen, und zwar mit dem über 20 Läufe genommenen Mittel.
Eine Sekunde CPU-Zeit entspricht 100 R mit (F =
0,2) und 300.000 Mutationen Lin-2-opt. Die folgenden
Abkühlpläne für die Schwellen T wurden verwendet (mit einer
stetigen Planvariablen x bezeichnet, die von 0 bis 1 ansteigt,
was gleich dem Verhältnis der Nummer des aktuellen Schrittes
zur Gesamtzahl der Abkühlschritte ist):
lineares Abklingen:
lineares Abklingen:
T = T0.(1 - x)
Exponentielles Abklingen:
T = T0.exp(-ln2.x/α)
mit halben Lebensdauern von α = 0,2, 0,4, 0,6 und 0,8.
Greedy:
Greedy:
T = 0
Am Ende wurde jeder Optimierungslauf durch einen x-Bereich
[1,0 : 1,1] mit Greedy-Annahme abgeschlossen, um
sicherzustellen, dass ein lokales Optimum erreicht worden ist.
Die Anfangsschwelle T0 für die Abkühlpläne wird durch die
Standardabweichung einer anfänglichen Zufallstour von 1.000
Schritten ermittelt. Unter Verwendung der R mit
einer Mischung 1 : 1 von zufälligen Zerstörungen und
strahlenförmigen Zerstörungen mit dem besten gefundenen
Bruchteil F = 0,2 erhielten wir T0 = 230, wenn wir statt dessen
nur mit dem Lin-2-opt gearbeitet hätten, erhalten wir T0 = 980.
Wir nahmen jedoch T0 = 130, die im Falle Lin-2-opt viel bessere
Ergebnisse erbrachte.
Fig. 17 (links) zeigt die zeitliche Entwicklung der Qualität
q, gemittelt über 50 Läufe, wobei R und Lin-2-opt mit
unterschiedlichen Abkühlplänen benutzt wurden. Die Gesamt-CPU-
Zeit für jeden Lauf beträgt 16 Sekunden. Fig. 17 (rechts)
zeigt die Optimierungsergebnisse, gemittelt über 50 Läufe, als
Funktion der gesamten Simulationszeit. Die Fehlerbalken
bezeichnen die Standardabweichungen; untere Kurve: für R mit
linearer Abkühlung; obere Kurve: für Lin-2-opt mit
exponentieller Abkühlung (α = 0,4). Zusätzlich sind die
Durchschnittsergebnisse für R mit Greedy-Annahme mit "+"
markiert. Der optimale Wert von 50.783,5 wurde unter
Verwendung von R mit TA mehrere Male erreicht.
Fig. 17 (links) zeigt, dass die Ergebnisse für R in hohem
Maße unabhängig vom dem angewandten Plan sind. TA kann jedoch
das Optimierungergebnis verbessern. Andererseits ist die
Qualität der Ergebnisse beim Arbeiten mit Lin-2-opt
empfindlicher auf den Plan, insbesondere beim Verwenden der
Greedy-Annahme; hier liefern lineare Abkühlung und
exponentielle Abkühlung mit einem Abklingen von α = 0,4
ziemlich gute Ergebnisse.
Im rechten Bild von Fig. 17 stellen wir Ergebnisse unter
Verwendung des "optimalen" Wertes von α = 0,4 bereit und
vergleichen sie mit den Ergebnissen für die Greedy-Annahme.
Wir stellen fest, dass in allen Fällen die R den
gewöhnlichen Lin-2-Opt überlegen sind, unter Verwendung von TA
erhalten wir weitere Verbesserungen der Ergebnisse, auch wenn
mit R gearbeitet wird.
Ein wichtiger Punkt, der erwähnt werden muss, besteht in der
Anwendbarkeit der R auf sehr große
Fahrzeugleitwegsysteme. Dies ist der Tatsache zuzurechnen,
dass es von sich aus für parallele Ausführung geeignet ist. Am
meisten zeitaufwendig ist die Berechnung der durch das
Fahrzeug entstehenden Annahmekosten für einen Kunden,
insbesondere bei Wiederaufbauschritten. Der
Wiederaufbauschritt nimmt etwa 90% der gesamten Rechenzeit in
Anspruch. Diese Berechnungen können auf der Grundlage der
Fahrzeuge leicht parallelisiert werden, da die einzelnen
Fahrzeugberechnungen nicht voneinander abhängen. Dies gilt
sogar für die einzelnen Prüfungen an unterschiedlichen
möglichen Positionen innerhalb einer Fahrzeugtour.
Beispielsweise müssen in Fahrzeugleitwegsystemen die
Wiederaufbauvorgänge alle Transportmittel zur Neuberechnung
der Zustandsvariablen abfragen; als "unabhängige Objekte"
können die Transportmittel parallel abgefragt werden.
Claims (12)
1. Verfahren zum automatischen rechnergestützten Optimieren
eines technischen Systems,
wobei das technische System verschiedene Zustände einnehmen kann, wobei jeder Zustand mit Zustandsvariablen xν, ν = 1, . . ., N beschrieben wird,
wobei das technische System im jeweiligen Zustand durch ein Maß f() bewertet wird, und
das Verfahren einen verbesserten Zustand opt mit einem verbesserten Maß f(opt) ermittelt und der verbesserte Zustand einer oder mehreren Nebenbedingungen genügt und
das Verfahren die folgenden Schritte umfasst:
einen Initialisierungsschritt als Schritt 1, bei dem ein erster Zustand als aktueller Zustand des technischen Systems ausgewählt wird, wobei der erste Zustand den Nebenbedingungen genügt,
als Schritt 2 einen Zerstörungsschritt, der den aktuellen Zustand durch Auswahl einer größeren Untermenge B von mindestens 5% der Zustandsvariablen yν µ, µ = 1, . . ., M des aktuellen Zustandes zerstört und sie beim Aufbau eines reduzierten Zustandes ausschließt,
als Schritt 3 einen Wiederaufbauschritt, der einen Wiederaufbauzustand festlegt,
wobei der Wiederaufbauzustand durch Erweitern des reduzierten Zustandes um Ersatzzustandsvariablen Zν µ ermittelt wird, indem die Ausschluss- Zustandsvariablen der Untermenge B ersetzt werden,
der Wiederaufbauzustand den Nebenbedingungen genügt, und wobei
die Ermittlung der Ersatzzustandsvariablen nicht durch die Werte der Ausschluss-Zustandsvariablen gelenkt wird, und
als Schritt 4 einen Annahmeschritt, der anhand eines Vergleiches des Maßes f() des aktuellen Zustands mit dem Maß f() des Wiederaufbauzustands entscheidet, ob der Wiederaufbauzustand als neuer aktueller Zustand angenommen werden soll, und
als Schritt 5 einen Iterationsschritt, der darüber entscheidet, das Verfahren, beginnend mit Schritt 2, zu wiederholen oder abzubrechen.
wobei das technische System verschiedene Zustände einnehmen kann, wobei jeder Zustand mit Zustandsvariablen xν, ν = 1, . . ., N beschrieben wird,
wobei das technische System im jeweiligen Zustand durch ein Maß f() bewertet wird, und
das Verfahren einen verbesserten Zustand opt mit einem verbesserten Maß f(opt) ermittelt und der verbesserte Zustand einer oder mehreren Nebenbedingungen genügt und
das Verfahren die folgenden Schritte umfasst:
einen Initialisierungsschritt als Schritt 1, bei dem ein erster Zustand als aktueller Zustand des technischen Systems ausgewählt wird, wobei der erste Zustand den Nebenbedingungen genügt,
als Schritt 2 einen Zerstörungsschritt, der den aktuellen Zustand durch Auswahl einer größeren Untermenge B von mindestens 5% der Zustandsvariablen yν µ, µ = 1, . . ., M des aktuellen Zustandes zerstört und sie beim Aufbau eines reduzierten Zustandes ausschließt,
als Schritt 3 einen Wiederaufbauschritt, der einen Wiederaufbauzustand festlegt,
wobei der Wiederaufbauzustand durch Erweitern des reduzierten Zustandes um Ersatzzustandsvariablen Zν µ ermittelt wird, indem die Ausschluss- Zustandsvariablen der Untermenge B ersetzt werden,
der Wiederaufbauzustand den Nebenbedingungen genügt, und wobei
die Ermittlung der Ersatzzustandsvariablen nicht durch die Werte der Ausschluss-Zustandsvariablen gelenkt wird, und
als Schritt 4 einen Annahmeschritt, der anhand eines Vergleiches des Maßes f() des aktuellen Zustands mit dem Maß f() des Wiederaufbauzustands entscheidet, ob der Wiederaufbauzustand als neuer aktueller Zustand angenommen werden soll, und
als Schritt 5 einen Iterationsschritt, der darüber entscheidet, das Verfahren, beginnend mit Schritt 2, zu wiederholen oder abzubrechen.
2. Verfahren nach Anspruch 1,
bei dem der Wiederaufbauschritt die
Ersatzzustandsvariablen durch heuristische und/oder
exakte Algorithmen ermittelt.
3. Verfahren nach Anspruch 2,
bei dem der Wiederaufbauschritt zur Ermittlung der Ersatzzustandsvariablen
einen Unterschritt 3A des Auswählens mindestens einer der Ausschluss-Zustandsvariablen umfasst, und
einen Unterschritt 3B des Berechnens und Zuordnens eines Wertes für die Ersatzzustandvariable zu der Auswahlzustandsvariablen umfasst, und
Wiederholen der Unterschritte 3A und 3B, bis die Werte aller Ersatzzustandsvariablen ermittelt worden sind.
bei dem der Wiederaufbauschritt zur Ermittlung der Ersatzzustandsvariablen
einen Unterschritt 3A des Auswählens mindestens einer der Ausschluss-Zustandsvariablen umfasst, und
einen Unterschritt 3B des Berechnens und Zuordnens eines Wertes für die Ersatzzustandvariable zu der Auswahlzustandsvariablen umfasst, und
Wiederholen der Unterschritte 3A und 3B, bis die Werte aller Ersatzzustandsvariablen ermittelt worden sind.
4. Verfahren nach Anspruch 3,
wobei der Wiederaufbauschritt einen Einfügeschritt
umfasst, der einen Unterschritt 3B des Berechnens und
Zuordnens eines bestmöglichen Wertes zu der
Auswahlzustandsvariablen umfasst, der das Maß f() des
reduzierten Zustands, erweitert um die
Ersatzzustandsvariable, im Hinblick auf die
Auswahlzustandsvariable optimiert.
5. Verfahren nach einem der Ansprüche 1 bis 4,
wobei die Zustandsvariablen Beschreibungen einer Vielzahl von Knoten NNodes eines Graphen umfassen, und
wobei eine Nachbarschaftsbeziehung Abstände zwischen Knotenpaaren definiert, und
wobei der Zerstörungsschritt einen strahlenförmigen Zerstörungsschritt umfasst,
bei dem ein erster Knoten und seine zugehörigen Zustandsvariablen ausgewählt und von dem aktuellen Zustand ausgeschlossen werden, und
bei dem eine zufällige Anzahl von A ≦ NNodes Knoten festgelegt wird und die A am nächsten liegenden Knoten dieses ersten Knotens entsprechend der Nachbarschaftbeziehung ausgewählt werden und die zugehörigen Zustandsvariablen der A am nächsten liegenden Knoten von dem aktuellen Zustand ausgeschlossen werden, und/oder
wobei der Zerstörungsschritt einen zufälligen Zerstörungsschritt umfasst,
bei dem eine zufällige Anzahl A ≦ NNodes Knoten ermittelt wird und A Knoten zufällig ausgewählt werden und ihre Zustandsvariablen von dem aktuellen Zustand ausgeschlossen werden.
wobei die Zustandsvariablen Beschreibungen einer Vielzahl von Knoten NNodes eines Graphen umfassen, und
wobei eine Nachbarschaftsbeziehung Abstände zwischen Knotenpaaren definiert, und
wobei der Zerstörungsschritt einen strahlenförmigen Zerstörungsschritt umfasst,
bei dem ein erster Knoten und seine zugehörigen Zustandsvariablen ausgewählt und von dem aktuellen Zustand ausgeschlossen werden, und
bei dem eine zufällige Anzahl von A ≦ NNodes Knoten festgelegt wird und die A am nächsten liegenden Knoten dieses ersten Knotens entsprechend der Nachbarschaftbeziehung ausgewählt werden und die zugehörigen Zustandsvariablen der A am nächsten liegenden Knoten von dem aktuellen Zustand ausgeschlossen werden, und/oder
wobei der Zerstörungsschritt einen zufälligen Zerstörungsschritt umfasst,
bei dem eine zufällige Anzahl A ≦ NNodes Knoten ermittelt wird und A Knoten zufällig ausgewählt werden und ihre Zustandsvariablen von dem aktuellen Zustand ausgeschlossen werden.
6. Verfahren nach einem der Ansprüche 1 bis 4,
wobei die Zustandsvariablen Beschreibungen einer Vielzahl von NNodes Knoten eines Graphen umfassen, und
wobei die Zustandsvariablen Beschreibungen von Knotenketten umfassen, und
wobei der Zerstörungsschritt einen sequentiellen Zerstörungsschritt umfasst,
bei dem ein erster Knoten und seine zugehörigen Zustandsvariablen ausgewählt und von dem aktuellen Zustand ausgeschlossen werden, und
wobei eine zufällige Anzahl A ≦ NNodes Knoten ermittelt wird und die A - 1 vorhergehenden oder folgenden Knoten des ersten Knotens ausgewählt werden und ihre zugehörigen Zustandsvariablen von dem aktuellen Zustand ausgeschlossen werden, und/oder
wobei der Zerstörungsschritt einen zufälligen Zerstörungsschritt umfasst,
bei dem eine zufällige Anzahl A ≦ NNodes Knoten ermittelt wird und A Knoten zufällig ausgewählt werden und ihre Zustandsvariablen aus dem aktuellen Zustand ausgeschlossen werden.
wobei die Zustandsvariablen Beschreibungen einer Vielzahl von NNodes Knoten eines Graphen umfassen, und
wobei die Zustandsvariablen Beschreibungen von Knotenketten umfassen, und
wobei der Zerstörungsschritt einen sequentiellen Zerstörungsschritt umfasst,
bei dem ein erster Knoten und seine zugehörigen Zustandsvariablen ausgewählt und von dem aktuellen Zustand ausgeschlossen werden, und
wobei eine zufällige Anzahl A ≦ NNodes Knoten ermittelt wird und die A - 1 vorhergehenden oder folgenden Knoten des ersten Knotens ausgewählt werden und ihre zugehörigen Zustandsvariablen von dem aktuellen Zustand ausgeschlossen werden, und/oder
wobei der Zerstörungsschritt einen zufälligen Zerstörungsschritt umfasst,
bei dem eine zufällige Anzahl A ≦ NNodes Knoten ermittelt wird und A Knoten zufällig ausgewählt werden und ihre Zustandsvariablen aus dem aktuellen Zustand ausgeschlossen werden.
7. Verfahren nach einem der Ansprüche 3 bis 6,
wobei das technische System und die zugehörigen Zustandsvariablen ein Leitwegsystem mit einer Vielzahl von Übertragungsmöglichkeiten beschreiben, die eine Vielzahl von Standorten bedienen und die Standorte Übertragungsbedürfnisse zwischen Paaren von diesen Standorten anfordern und das Maß die Übertragungskosten sind, und
wobei der Zerstörungsschritt einen Bedarfszerstörungsschritt umfasst,
bei dem mindestens ein Übertragungsbedarf ausgewählt wird, und
bei dem alle Zustandsvariablen, die sich auf den ausgewählten Übertragungsbedarf beziehen, ausgewählt und von dem aktuellen Zustand ausgeschlossen werden, und
wobei in dem Wiederaufbauschritt in Unterschritt 3A und 3B die sich auf den ausgewählten Übertragungsbedarf beziehenden Zustandsvariablen berechnet werden.
wobei das technische System und die zugehörigen Zustandsvariablen ein Leitwegsystem mit einer Vielzahl von Übertragungsmöglichkeiten beschreiben, die eine Vielzahl von Standorten bedienen und die Standorte Übertragungsbedürfnisse zwischen Paaren von diesen Standorten anfordern und das Maß die Übertragungskosten sind, und
wobei der Zerstörungsschritt einen Bedarfszerstörungsschritt umfasst,
bei dem mindestens ein Übertragungsbedarf ausgewählt wird, und
bei dem alle Zustandsvariablen, die sich auf den ausgewählten Übertragungsbedarf beziehen, ausgewählt und von dem aktuellen Zustand ausgeschlossen werden, und
wobei in dem Wiederaufbauschritt in Unterschritt 3A und 3B die sich auf den ausgewählten Übertragungsbedarf beziehenden Zustandsvariablen berechnet werden.
8. Verfahren nach Anspruch 7,
wobei das Leitwegsystem ein Transportleitwegsystem ist, und
wobei die Übertragungseinrichtungen Transportmittel sind, und
wobei die Übertragungsbedürfnisse Transportbedürfnisse von Transportgrößen sind, und
wobei der Zerstörungsschritt einen Zerstörungsschritt des Transportbedarfes umfasst,
bei dem ein Bereich von Transportgrößen festgelegt wird, und
bei dem Zustandsvariable, die sich auf Transportbedürfnisse innerhalb des Bereiches von Transportgrößen beziehen, ausgewählt und von dem aktuellen Zustand ausgeschlossen werden, und/oder
wobei in dem Verfahren ein Transportbedarf nach einer Zeitfenster-Nebenbedingung innerhalb eines Zeitfenster- Intervalls bedient werden soll, und/oder
wobei der Zerstörungsschritt einen Zeitfenster- Zerstörungsschritt umfasst,
bei dem ein Bereich von Zeitfenster-Intervallen festgelegt wird, und
bei dem alle sich auf Bedürfnisse an Zeitfenster- Intervallen beziehenden Zustandsvariablen innerhalb des Bereiches von Zeitfenster-Intervallen ausgewählt werden und von dem aktuellen Zustand ausgeschlossen werden.
wobei das Leitwegsystem ein Transportleitwegsystem ist, und
wobei die Übertragungseinrichtungen Transportmittel sind, und
wobei die Übertragungsbedürfnisse Transportbedürfnisse von Transportgrößen sind, und
wobei der Zerstörungsschritt einen Zerstörungsschritt des Transportbedarfes umfasst,
bei dem ein Bereich von Transportgrößen festgelegt wird, und
bei dem Zustandsvariable, die sich auf Transportbedürfnisse innerhalb des Bereiches von Transportgrößen beziehen, ausgewählt und von dem aktuellen Zustand ausgeschlossen werden, und/oder
wobei in dem Verfahren ein Transportbedarf nach einer Zeitfenster-Nebenbedingung innerhalb eines Zeitfenster- Intervalls bedient werden soll, und/oder
wobei der Zerstörungsschritt einen Zeitfenster- Zerstörungsschritt umfasst,
bei dem ein Bereich von Zeitfenster-Intervallen festgelegt wird, und
bei dem alle sich auf Bedürfnisse an Zeitfenster- Intervallen beziehenden Zustandsvariablen innerhalb des Bereiches von Zeitfenster-Intervallen ausgewählt werden und von dem aktuellen Zustand ausgeschlossen werden.
9. Verfahren nach Anspruch 7,
wobei das Leitwegsystem ein Übertragungsnetzwerk beschreibt, und
wobei die Standorte Kommunikationsknoten sind, und
wobei die Vielzahl von Übertragungsbedürfnissen Kommunikationsbedürfnisse zwischen Paaren von Kommunikationsknoten mit bestimmter Bandbreite sind, die durch eine Folge von Fernleitungen befriedigt werden sollen, wobei die Fernleitungen die Übertragungseinrichtungen darstellen, die jedes der Paare von Kommunikationsknoten verbinden, und
wobei das Maß die Kommunikationskosten sein sollen, und
wobei der Zerstörungsschritt einen Zerstörungsschritt des Kommunikationsbedarfes umfasst,
bei dem mindestens ein Kommunikationsbedarf ermittelt und die Zustandsvariablen, die sich auf die Abfolge von Fernleitungen beziehen, die das Paar der Kommunikationsknoten des ermittelten Kommunikationsbedarfes verbinden, ausgewählt und von dem aktuellen Zustand ausgeschlossen werden.
wobei das Leitwegsystem ein Übertragungsnetzwerk beschreibt, und
wobei die Standorte Kommunikationsknoten sind, und
wobei die Vielzahl von Übertragungsbedürfnissen Kommunikationsbedürfnisse zwischen Paaren von Kommunikationsknoten mit bestimmter Bandbreite sind, die durch eine Folge von Fernleitungen befriedigt werden sollen, wobei die Fernleitungen die Übertragungseinrichtungen darstellen, die jedes der Paare von Kommunikationsknoten verbinden, und
wobei das Maß die Kommunikationskosten sein sollen, und
wobei der Zerstörungsschritt einen Zerstörungsschritt des Kommunikationsbedarfes umfasst,
bei dem mindestens ein Kommunikationsbedarf ermittelt und die Zustandsvariablen, die sich auf die Abfolge von Fernleitungen beziehen, die das Paar der Kommunikationsknoten des ermittelten Kommunikationsbedarfes verbinden, ausgewählt und von dem aktuellen Zustand ausgeschlossen werden.
10. Verfahren nach Anspruch 7,
wobei das Leitwegsystem ein Produktionsplanungssystem
beschreibt.
11. Verfahren nach einem beliebigen der Ansprüche 2 bis 10,
wobei der Initialisierungsschritt den ersten Zustand
dadurch ermittelt, dass von einem vollständig zerstörten
System ausgegangen wird und dass die bestmöglichen Werte
der Zustandsvariablen heuristisch ermittelt werden.
12. Verfahren nach einem beliebigen der vorhergehenden
Ansprüche,
wobei der Annahme-Schritt, mit dem entschieden wird, ob der Wiederaufbauzustand als neuer aktueller Zustand angenommen werden soll,
für den Wiederaufbauzustand sein entsprechendes Maß f() berechnet und
diesen Wiederaufbauzustand annimmt nach
der Zufallstourtechnik; und/oder
nach der Greedy-Annahme-Technik; und/oder
nach der Simulierten Ausheil-Technik; und/oder
nach der Schwellenannahme-Technik; und/oder
nach der Sintflut-Technik; und/oder
nach der Technik des Fortschreitens von Aufzeichnung zu Aufzeichnung.
wobei der Annahme-Schritt, mit dem entschieden wird, ob der Wiederaufbauzustand als neuer aktueller Zustand angenommen werden soll,
für den Wiederaufbauzustand sein entsprechendes Maß f() berechnet und
diesen Wiederaufbauzustand annimmt nach
der Zufallstourtechnik; und/oder
nach der Greedy-Annahme-Technik; und/oder
nach der Simulierten Ausheil-Technik; und/oder
nach der Schwellenannahme-Technik; und/oder
nach der Sintflut-Technik; und/oder
nach der Technik des Fortschreitens von Aufzeichnung zu Aufzeichnung.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP98118593 | 1998-10-01 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE19946607A1 DE19946607A1 (de) | 2001-05-10 |
DE19946607C2 true DE19946607C2 (de) | 2002-11-07 |
Family
ID=8232735
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19946607A Expired - Fee Related DE19946607C2 (de) | 1998-10-01 | 1999-09-29 | Optimierung mit Zerstörung & Wiederaufbau |
Country Status (2)
Country | Link |
---|---|
US (1) | US6418398B1 (de) |
DE (1) | DE19946607C2 (de) |
Families Citing this family (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6988076B2 (en) * | 1997-05-21 | 2006-01-17 | Khimetrics, Inc. | Strategic planning and optimization system |
JP2001307977A (ja) * | 2000-02-18 | 2001-11-02 | Nikon Corp | 荷電粒子線露光装置の設計方法、荷電粒子線露光装置、及び半導体デバイスの製造方法 |
GB2362481B (en) * | 2000-05-09 | 2004-12-01 | Rolls Royce Plc | Fault diagnosis |
US7246075B1 (en) * | 2000-06-23 | 2007-07-17 | North Carolina A&T State University | System for scheduling multiple time dependent events |
US6904421B2 (en) * | 2001-04-26 | 2005-06-07 | Honeywell International Inc. | Methods for solving the traveling salesman problem |
US20030074298A1 (en) * | 2001-07-09 | 2003-04-17 | Wolfgang Daum | Information product market system and method |
US7054934B2 (en) * | 2001-10-26 | 2006-05-30 | Hewlett-Packard Development Company, L.P. | Tailorable optimization using model descriptions of services and servers in a computing environment |
DE10219363B4 (de) * | 2002-04-30 | 2007-04-12 | Advanced Micro Devices, Inc., Sunnyvale | Verfahren für eine fortschrittliche Prozesssteuerung für einen Herstellungsvorgang für mehrere Produkte mit minimierter Steuerungsbeeinträchtigung nach erneuter Initialisierung bei Auftreten von Resetereignissen |
US7363126B1 (en) * | 2002-08-22 | 2008-04-22 | United Parcel Service Of America | Core area territory planning for optimizing driver familiarity and route flexibility |
US20040052239A1 (en) | 2002-08-29 | 2004-03-18 | Nesbitt David W. | Automated route determination |
US7010108B2 (en) * | 2003-02-21 | 2006-03-07 | Magicsoft Corporation | Method for scheduling videoconferences |
KR20060064711A (ko) * | 2004-12-09 | 2006-06-14 | 엘지전자 주식회사 | 복수 경유지를 탐색하는 네비게이션 시스템 |
US20080291204A1 (en) * | 2007-05-22 | 2008-11-27 | International Business Machines Corporation | Coupled placement of items using stable marriage techniques |
US8046316B2 (en) * | 2007-07-20 | 2011-10-25 | King Fahd University Of Petroleum And Minerals | Cyclic combinatorial method and system |
US8185298B2 (en) * | 2007-10-17 | 2012-05-22 | Lockheed Martin Corporation | Hybrid heuristic national airspace flight path optimization |
US20090112645A1 (en) * | 2007-10-25 | 2009-04-30 | Lockheed Martin Corporation | Multi objective national airspace collaborative optimization |
US8509099B2 (en) | 2008-01-15 | 2013-08-13 | Microsoft Corporation | Load aware resource allocation in wireless networks |
US20090288091A1 (en) * | 2008-05-15 | 2009-11-19 | Nikolaos Papadakos | Method and System Integrating Task Assignment and Resources Scheduling |
US8103532B2 (en) * | 2008-10-23 | 2012-01-24 | Raytheon Company | Method and system for fast local search and insertion heuristics for vehicle routing |
US8386397B1 (en) | 2009-12-21 | 2013-02-26 | Amazon Technologies, Inc. | System and method for constraint-based reduction of a solution space for vehicle routing |
WO2012092518A1 (en) | 2010-12-30 | 2012-07-05 | Telenav, Inc. | Navigation system with constrained resource route planning mechanism and method of operation thereof |
CN103429989B (zh) | 2010-12-30 | 2017-10-20 | 泰为信息科技公司 | 具有受限资源路线规划最佳化器的导航系统及其操作方法 |
CN104143030A (zh) * | 2013-05-06 | 2014-11-12 | 沈阳中科博微自动化技术有限公司 | 一种应用于封装生产线的生产率计算方法 |
EP2879082A1 (de) * | 2013-11-29 | 2015-06-03 | Siemens VAI Metals Technologies GmbH | Verfahren und System zum Betrieb eines Schrottplatzes |
US9965788B2 (en) | 2014-09-26 | 2018-05-08 | Wal-Mart Stores, Inc. | System and method for prioritized product index searching |
US20160092519A1 (en) | 2014-09-26 | 2016-03-31 | Wal-Mart Stores, Inc. | System and method for capturing seasonality and newness in database searches |
US9934294B2 (en) | 2014-09-26 | 2018-04-03 | Wal-Mart Stores, Inc. | System and method for using past or external information for future search results |
US10002172B2 (en) * | 2014-09-26 | 2018-06-19 | Walmart Apollo, Llc | System and method for integrating business logic into a hot/cold prediction |
US9710755B2 (en) | 2014-09-26 | 2017-07-18 | Wal-Mart Stores, Inc. | System and method for calculating search term probability |
US11775937B2 (en) * | 2015-10-08 | 2023-10-03 | Arris Enterprises Llc | Dynamic capacity ranges for workforce routing |
US10984321B1 (en) * | 2017-07-17 | 2021-04-20 | United States Of America As Represented By The Secretary Of The Navy | Solving NP-hard problems through heuristic acquisition and reuse |
SG10201905938QA (en) * | 2019-06-26 | 2021-01-28 | Swat Mobility Pte Ltd | Transportation System and Method for passenger and route scheduling |
US10809080B2 (en) | 2020-03-23 | 2020-10-20 | Alipay Labs (singapore) Pte. Ltd. | System and method for determining routing by learned selective optimization |
US11546216B2 (en) * | 2020-12-22 | 2023-01-03 | Mellanox Technologies, Ltd. | Real time performance tuning of network devices |
US11526336B2 (en) * | 2021-03-15 | 2022-12-13 | Fujitsu Limited | Community-oriented, cloud-based digital annealing platform |
JP2022185898A (ja) * | 2021-06-03 | 2022-12-15 | 富士通株式会社 | 情報処理装置、情報処理方法、及び情報処理プログラム |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4114203A1 (de) * | 1991-04-30 | 1992-11-05 | Siemens Ag | Verfahren zur festlegung eines verbindungsweges zwischen einer startkomponente und einer zielkomponente einer komponenten aufweisenden baueinheit |
DE4226294A1 (de) * | 1991-11-01 | 1993-05-06 | Mitsubishi Denki K.K., Tokio/Tokyo, Jp | Verfahren zur herstellung eines reflektierenden spiegels |
DE4424037C2 (de) * | 1994-07-11 | 1997-11-20 | Ibm | Verfahren und System zur automatischen, rechnersystemgestützten Optimierung |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA1253965A (en) * | 1985-04-01 | 1989-05-09 | Declan G. Murray | Tactical routing system and method |
US5107452A (en) * | 1987-09-04 | 1992-04-21 | At&T Bell Laboratories | Computation optimizer |
US6052678A (en) * | 1993-12-16 | 2000-04-18 | Fujitsu Limited | Problem solving operation apparatus using a state transition |
US5586219A (en) * | 1994-09-30 | 1996-12-17 | Yufik; Yan M. | Probabilistic resource allocation system with self-adaptive capability |
US5897629A (en) * | 1996-05-29 | 1999-04-27 | Fujitsu Limited | Apparatus for solving optimization problems and delivery planning system |
US5850617A (en) * | 1996-12-30 | 1998-12-15 | Lockheed Martin Corporation | System and method for route planning under multiple constraints |
JP3234552B2 (ja) * | 1997-09-30 | 2001-12-04 | 松下電器産業株式会社 | 最適化装置及びコンピュータ読取可能な記録媒体 |
-
1999
- 1999-09-29 DE DE19946607A patent/DE19946607C2/de not_active Expired - Fee Related
- 1999-10-01 US US09/410,450 patent/US6418398B1/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4114203A1 (de) * | 1991-04-30 | 1992-11-05 | Siemens Ag | Verfahren zur festlegung eines verbindungsweges zwischen einer startkomponente und einer zielkomponente einer komponenten aufweisenden baueinheit |
DE4226294A1 (de) * | 1991-11-01 | 1993-05-06 | Mitsubishi Denki K.K., Tokio/Tokyo, Jp | Verfahren zur herstellung eines reflektierenden spiegels |
DE4424037C2 (de) * | 1994-07-11 | 1997-11-20 | Ibm | Verfahren und System zur automatischen, rechnersystemgestützten Optimierung |
Non-Patent Citations (2)
Title |
---|
Kirkpatrick,S., Gelatt,C.D.,JR., Vecchi,M.P.: Op- timization by Simulated Annealing. In: Science. 1983, Vol.220, No.4598, S.671-679 * |
Kursawe,F., Schwefel,H.-P.: Optimierung mit Evo- lutionären Algorithmen. In: Automatisieungstech- nische Praxis. 1997, 9, S.10-17 * |
Also Published As
Publication number | Publication date |
---|---|
DE19946607A1 (de) | 2001-05-10 |
US6418398B1 (en) | 2002-07-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE19946607C2 (de) | Optimierung mit Zerstörung & Wiederaufbau | |
DE3785524T2 (de) | Adaptive gebührabhängige Verkehrsleitweglenkung und automatisches Netzwerkhandhabungssystem für Fernmeldenetzwerke mit mehreren Diensten. | |
DE69025846T2 (de) | Verfahren zur Verwendung gespeicherter partieller Bäume zur Berechnung eines Weges in einem Datenkommunikationsnetz | |
DE69024099T2 (de) | Anonymes Geschäftsbeziehungssystem | |
DE19528563A1 (de) | Kommunikationsanordnung und Verfahren zur Bewertung von mindestens zwei mehrteiligen Kommunikationsverbindungen zwischen zwei Kommunikationspartnern in einem Mehrknotennetzwerk | |
Nitzan | Regimes of differential accumulation: mergers, stagflation and the logic of globalization | |
DE69801418T2 (de) | Datenaufteilung und -dupliziering in einem verteilten datenverarbeitungssystem | |
DE3855212T2 (de) | Verfahren zur Berechnung eines transitiven Abschlusses | |
DE10244233A1 (de) | Routing-Lieferungen entrpechend ihrer Evidenz | |
Chou et al. | Approximating shortest paths in large-scale networks with an application to intelligent transportation systems | |
DE69815819T2 (de) | Adaptives verteiltes informationsnetzwerk | |
DE10035043A1 (de) | Mehrdimensionale Indexierungsstruktur zur Verwendung mit linearen Optimierungsanfragen | |
WO1999067729A9 (de) | Verfahren und system zur maximierung des bereichs von abdeckungsprofilen bei der bestandsverwaltung | |
EP1729247A1 (de) | Mitarbeitereinsatzplanung | |
Quirion‐Blais et al. | Solving the large‐scale min–max K‐rural postman problem for snow plowing | |
DE10349263A1 (de) | Verfahren zur Zerlegung eines Straßennetzes aus Kanten und Knoten | |
Lohmander | Optimization of forestry, infrastructure and fire management | |
DE4308512A1 (de) | Verfahren zum Routing von Verbindungen in einem Kommunikationsnetz | |
Ghemawat et al. | Choice structures and business strategy | |
Vargas et al. | Potential district metered area identification in water distribution networks using hydraulic criteria and the box covering algorithm | |
DE19911957A1 (de) | Fernkonfigurierbares optisches Kommunikationsnetz | |
EP0868104A2 (de) | Hierarchisch gegliedertes Kommunikationsnetz und Verfahren zum Mitteilen georgrafischer Koordinaten von Netzknoten | |
Frost et al. | Cape to Cairo—Can the dream be realised? | |
Lederer | Location-price games | |
Riegel | Western Railroad Pools |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8180 | Miscellaneous part 1 |
Free format text: DIE PRIORITAET "01.10.98 01 EP 98118593.7" IST NACHZUTRAGEN |
|
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |