Ausgabe über "Vehicle Routing Problem-Analyse berechnen"

Das Geoverarbeitungswerkzeug Vehicle Routing Problem-Analyse berechnen erzeugt die folgende Tabelle und folgende Feature-Classes als Ausgabe: Stopps, nicht zugewiesene Stopps, Routen, Beschreibungen. Beschreibungen zu Ausgabe-Tabellen und Feature-Classes, und ihre entsprechenden Feldattribute, werden in den Unterabschnitten unten beschrieben.

Routes-Feature-Class

Die Routes line-Feature-Class repräsentiert die Fahrer, Fahrzeuge und Fahrzeugroutenpfade eines Vehicle Routing Problem. Der Standardname dieser Ausgabe-Feature-Class ist Routes. Sie können dies jedoch durch Ändern des Parameters Ausgaberoutenname vor der Berechnung ändern (output_routes_name für Python).

ArcGIS weist dasselbe Koordinatensystem zu, das das zugrunde liegende Netzwerk-Dataset für die Routes-Feature-Class verwendet. Dies kann durch die Angabe eines Wertes für die Ausgabe-Koordinatensystem-Geoverarbeitungsumgebung gesteuert werden.

Die Feldnamen der Routes-Feature-Class werden unten aufgelistet und beschrieben.

Feldname

Beschreibung

ObjectID

Das vom System verwaltete ID-Feld.

Name

Der Name der Route.

Form

Das Geometriefeld, das das Shape der Route angibt.

Wählen Sie über den Parameter Routenlinien füllen (populate_route_lines für Python), ob dieses Feld gefüllt werden soll.

Die Routes-Feature-Class wird während der Ausführung von Vehicle Routing Problem-Analyse berechnen immer erstellt und mit Daten gefüllt. Der Parameter Routenlinien füllen (populate_route_lines für Python) ermöglicht Ihnen jedoch zu wählen, ob für die Linien-Features Shape-Feldwerte erstellt und gespeichert werden sollen. Wenn Shape-Feldwerte nicht gefüllt werden, beschleunigt dies die Berechnung und reduziert die Größe des Server-Client-Datenaustauschs. Routen sollen jedoch oft auf einer Karte visualisiert werden, sodass ein Füllen des Shape-Feldes evtl. erforderlich ist.

ViolatedConstraints

Dieses Feld enthält eine Zusammenfassung von Beschränkungsverletzungen. Es wird nach einem Berechnungsvorgang festgelegt. Wenn eine Route zur Verletzung einer Einschränkung führt, kann dem Feld eine Kombination aus den unten aufgeführten Verletzungen zugewiesen werden:

Dive-inDive-in:

Der codierte Wert, der die Textbeschreibung darstellt, wird unten in der Liste in Klammern dargestellt. Beachten Sie, dass die codierten Werte Teil einer geometrischen Sequenz sind, die zunimmt, da der letzte Wert verdoppelt wird. Auf diese Weise können verschiedene Kombinationen von Regel-Verletzungen codiert werden. Zum Beispiel wird die Kombination von "Capacities überschritten" (2) und "Harte Routenzone" (128) als 130 (2 +128) codiert.

  • MaxOrderCount überschritten (1) – Der Route können die vorab zugewiesenen Aufträge nicht zugewiesen werden, weil durch das Zuweisen der Aufträge die maximale Anzahl der Aufträge überschritten wird, die gemäß dem Wert des Feldes "MaxOrderCount" für die Route zugewiesen werden dürfen.
  • Capacities überschritten (2) – Der Route können die vorab zugewiesenen Aufträge nicht zugewiesen werden, weil durch das Zuweisen der Aufträge die Gesamtroutenkapazität überschritten wird, die vom Wert des Feldes "Capacities" für die Route angegeben wird.
  • MaxTotalTime überschritten (4) – Die Fahrzeit vom Startdepot zum Enddepot, zuzüglich der Durchführungs- und Wartezeiten an beiden Depots sowie ggf. Pausenzeiten, überschreitet die vom Wert des Feldes "MaxTotalTime" für die Route angegebene Gesamtzeit.
  • MaxTotalTravelTime überschritten (8) – Die Fahrzeit vom Startdepot zum Enddepot, zuzüglich der Durchführungs- und Wartezeiten an beiden Depots sowie ggf. Pausenzeiten, überschreitet die vom Wert des Feldes "MaxTotalTravelTime" für die Route angegebene Gesamtfahrzeit.
  • MaxTotalDistance überschritten (16) – Die Reisestrecke vom Startdepot zum Enddepot, zuzüglich der Durchführungs- und Wartezeiten an beiden Depots sowie ggf. Pausenzeiten, überschreitet die vom Wert des Feldes "MaxTotalDistance" für die Route angegebene Gesamtreisestrecke.
  • Hartes Zeitfenster (32) – Beim Startdepot, Enddepot oder einer Pause für die Route liegt eine Verletzung eines harten Zeitfensters vor.
  • Nicht übereinstimmende Besonderheit (64) – Die für einen Auftrag erforderlichen Besonderheiten werden auf der Zielroute nicht gefunden.
  • Harte Routenzone (128) – Ein Auftrag, der der Route vorab zugewiesen wurde, fällt nicht in eine harte Routenzone.
  • MaxTransitTime für Auftragspaar überschritten (256) – Der Route ist ein Auftragspaar vorab zugewiesen, und durch Zuweisen der Aufträge des Auftragspaares wird die durch den Wert des Feldes "MaxTransitTime" für das Auftragspaar angegebene maximale Fahrzeit überschritten.
  • Auftragspaarverletzung (512) – Der Auftrag gehört zu einem Auftragspaar und kann keiner vorab zugewiesenen Route zugewiesen werden.
  • Nicht erreichbar (1024) – Ein vorab zugewiesener Auftrag befindet sich auf einem Netzwerkelement, das von der Route nicht erreicht werden kann.
  • Erforderliche Pausenzeiten können nicht eingefügt werden (2048) – Eine Pausenzeit für die Route weist bei Vorhandensein von vorab zugewiesenen Aufträgen den Sequenzwert NULL auf, und die Pausenzeit kann an keiner Stelle eingefügt werden, ohne dass andere Verletzungen verursacht werden.
  • Erforderliche Lager können nicht eingefügt werden (4096) – Eine Route überschreitet ihre Kapazität, und es muss ein Lager zum Be-/Entladen besucht werden. Das Lager zum Be-/Entladen weist jedoch bei Vorhandensein von vorab zugewiesenen Aufträgen den Sequenzwert NULL auf und kann an keiner Stelle eingefügt werden, ohne dass andere Verletzungen verursacht werden.
  • MaxTravelTimeBetweenBreaks überschritten (8192) – Der Solver konnte innerhalb des Zeitraums, der vom Feld "MaxTravelTimeBetweenBreaks" der Pausenzeit angegeben wird, keine Pausenzeit einfügen. Dies wird häufig dadurch verursacht, dass einer Pausenzeit vorab eine Sequenz zugewiesen wird, was dazu führt, dass sie innerhalb der maximalen Fahrzeit nicht erreicht werden kann.

  • Pausenzeit wegen MaxCumulWorkTime überschritten (16384) – Der Solver konnte innerhalb des Zeitraums, der vom Feld "MaxCumulWorkTime" der Pausenzeit angegeben wird, keine Pausenzeit einfügen. Dies wird häufig dadurch verursacht, dass einer Pausenzeit vorab eine Sequenz zugewiesen wird, was dazu führt, dass sie innerhalb der maximalen Arbeitszeit nicht erreicht werden kann.

OrderCount

Die Anzahl von Aufträgen, die der Route zugewiesen sind.

TotalCost

Die gesamten Betriebskosten der Route, wobei es sich um die Summe der folgenden Feldwerte handelt:

  • FixedCost
  • RegularTimeCost
  • OvertimeCost
  • DistanceCost

RegularTimeCost

Die Kosten der regulären Arbeitszeit ohne unbezahlte Pausen.

OvertimeCost

Die Kosten für Überstunden ohne unbezahlte Pausen.

DistanceCost

Die Entfernungskosten-Komponente, die durch Multiplizieren der Werte für die Felder "TotalDistance" und "CostPerUnitDistance" berechnet wird. Dieser Feldwert wird auf Null eingestellt, wenn vor der Berechnung kein Entfernungsattribut angegeben wird.

TotalTime

Die Gesamtroutendauer. Diese umfasst Fahrzeiten sowie Durchführungs- und Wartezeiten bei Aufträgen, Depots und Pausen. Der Wert unter "TotalTime" ist die Summe der folgenden Feldwerte:

  • StartDepotServiceTime
  • EndDepotServiceTime
  • TotalOrderServiceTime
  • TotalBreakServiceTime
  • TotalRenewalServiceTime
  • TotalWaitTime
  • TotalTravelTime

Die Einheit für diesen Feldwert wird durch den Parameter Uhrzeitfeldeinheiten angegeben (time_units für Python).

TotalOrderServiceTime

Die Gesamtdurchführungszeit für alle Aufträge der Route.

Die Einheit für diesen Feldwert wird durch den Parameter Uhrzeitfeldeinheiten angegeben (time_units für Python).

TotalBreakServiceTime

Die Gesamtdurchführungszeit für alle Pausenzeiten der Route.

Die Einheit für diesen Feldwert wird durch den Parameter Uhrzeitfeldeinheiten angegeben (time_units für Python).

TotalTravelTime

Die Gesamtfahrzeit für die Route.

Die Einheit für diesen Feldwert wird durch den Parameter Uhrzeitfeldeinheiten angegeben (time_units für Python).

TotalDistance

Die Gesamtreisestrecke für die Route.

Die Einheit für diesen Feldwert wird durch den Parameter "Uhrzeitfeldeinheiten" (distance_units für Python) angegeben.

Dieser Feldwert wird auf Null eingestellt, wenn vor der Berechnung kein Entfernungsattribut angegeben wird.

StartTime

Die Anfangszeit für die Route. Die Route kann vor Beginn des Zeitfensters für das Startdepot beginnen. In diesem Fall ist beim Startdepot eine Wartezeit vorhanden.

Wenn Verkehrsdaten verwendet werden, die mehrere Zeitzonen umfassen, wird die Zeitzone für diesen Tageszeitwert von dem Netzwerkelement übernommen, auf dem sich das Startdepot befindet.

EndTime

Die Endzeit für die Route. Die Route endet bei Abschluss des Einsatzes am Enddepot.

Wenn Verkehrsdaten verwendet werden, die mehrere Zeitzonen umfassen, wird die Zeitzone für diesen Tageszeitwert von dem Netzwerkelement übernommen, auf dem sich das Enddepot befindet.

TotalWaitTime

Die Gesamtwartezeit für alle Aufträge, Depots und Pausen der Route.

Die Einheit für diesen Feldwert wird durch den Parameter Uhrzeitfeldeinheiten angegeben (time_units für Python).

TotalViolationTime

Der Gesamtzeitverstoß für alle Aufträge und Pausen der Route.

Die Einheit für diesen Feldwert wird durch den Parameter Uhrzeitfeldeinheiten angegeben (time_units für Python).

RenewalCount

Für eine Route mit Lagern zum Be-/Entladen entspricht dies der Anzahl der Stopps bei Depots zum Be- und Entladen eines Fahrzeugs.

TotalRenewalServiceTime

Bei einer Route mit Lagern zum Be-/Entladen ist dies die Gesamtdurchführungszeit für alle Stopps zum Be- und Entladen auf der Route.

Die Einheit für diesen Feldwert wird durch den Parameter Uhrzeitfeldeinheiten angegeben (time_units für Python).

Directions-Feature-Class

Directions ist eine Line-Feature-Class, die Wegbeschreibungen repräsentiert, damit Fahrer ihre zugewiesenen Routen einhalten. Der Standardname dieser Ausgabe-Feature-Class ist Directions. Sie können dies jedoch durch Ändern des Parameters "Ausgabe-Beschreibungsname" vor der Berechnung ändern (output_directions_name für Python). Ferner wird mit dem Werkzeug "Vehicle Routing Problem-Analyse berechnen" immer die Directions-Feature-Class erstellt. Sie können jedoch mit dem Parameter "Beschreibungen füllen" (populate_directions für Python) wählen, ob die Feature-Class bei der Berechnung mit Features gefüllt wird. Standardmäßig wird sie nicht gefüllt. Wenn Sie keine Beschreibungen benötigen, können Sie die Berechnungszeiten und die Menge an Daten, die von Servern zu Clients übertragen werden, erheblich reduzieren.

ArcGIS weist der Directions-Feature-Class dasselbe Koordinatensystem zu, das das zugrunde liegende Netzwerk-Dataset verwendet. Dies kann durch die Angabe eines Wertes für die Ausgabe-Koordinatensystem-Geoverarbeitungsumgebung gesteuert werden.

Die Feldnamen der Directions-Feature-Class werden unten aufgelistet und beschrieben.

Feldname

Beschreibung

ObjectID

Das vom System verwaltete ID-Feld.

Form

Das Geometriefeld, das das Shape der Linien angibt.

RouteName

Der Name der Route, auf die die Fahraktion angewendet wird.

ArriveTime

Uhrzeit zur Initiierung der angegebenen Fahraktion. Wenn sich die Route über mehrere Tage erstreckt, werden Datum und Uhrzeit angezeigt.

Typ

Dieses Feld ist für fortgeschrittene Benutzer gedacht, die den Wegbeschreibungstext anpassen möchten. Die meisten Benutzer können ihre Anforderungen erfüllen, indem sie dieses Feld ignorieren und sich stattdessen auf das Feld "Text" beziehen.

"Type" bezieht sich auf eine Konstante in einer von zwei Aufzählungen: esriDirectionsManueverType oder esriDirectionsStringType. (In der SubItemType-Feldbeschreibung erfahren Sie, auf welche Aufzählung sich der Type-Wert bezieht.) Sie können eine Liste konstanter Werte anzeigen, indem Sie für den Aufzählungsnamen nach der SDK Ihrer Wahl suchen.

SubItemType

Dieses Feld ist für fortgeschrittene Benutzer gedacht, die den Wegbeschreibungstext anpassen möchten. Die meisten Benutzer können ihre Anforderungen erfüllen, indem sie dieses Feld ignorieren und sich stattdessen auf das Feld "Text" beziehen.

"SubItemType" funktioniert in Kombination mit "Type", um die Wegbeschreibung zu erstellen, die im Feld "Text" angezeigt wird. Das Feld "SubItemType" gibt an, ob sich das Feld "Type" auf einen konstanten Wert in der Aufzählung "esriDirectionsManueverType" oder "esriDirectionsStringType" bezieht.

  • Wenn der SubItemType-Wert 1 ist, bezieht sich der Type-Wert auf esriDirectionsManeuverType.
  • Wenn der SubItemType-Wert 2 ist, bezieht sich der Type-Wert auf esriDirectionsStringType.

Text

Eine Textbeschreibung der Wegbeschreibung.

ElapsedTime

Die zwischen dem Anfang der aktuellen Wegbeschreibung und dem Anfang der nächsten Wegbeschreibung oder dem Ende der Route für die letzte Wegbeschreibung verstrichene Zeit.

Einige Wegbeschreibungen umfassen zusätzliche Datensätze für Durchführungszeit, Zeitverstoß usw. In diesen Fällen wird die verstrichene Zeit für jeden Datensatz repliziert. Wenn Sie die verstrichene Zeit summieren möchten, wählen Sie diese Datensätze mit einem Type-Wert von 1 aus, und summieren Sie sie.

Die Einheit für diesen Feldwert wird durch den Parameter Uhrzeitfeldeinheiten angegeben (time_units für Python).

DriveDistance

Die Entfernung zwischen der aktuellen Wegbeschreibung und der nächsten Wegbeschreibung oder dem Ende der Route für die letzte Wegbeschreibung.

Dieser Wert ist für Wegbeschreibungen Null, die an derselben Position auftreten, an der die nächste beginnt.

Tabelle "Stopps"

Die Tabelle "Stopps" enthält Informationen zu Stopps bei Depots, Aufträgen und Unterbrechungen. Die Informationen umfassen Routen mit Stopps, Ankunfts- und Abfahrtszeiten sowie die Stoppsequenz.

Der Standardname dieser Ausgabe-Tabelle ist Stops. Sie können dies jedoch durch Ändern des Parameters "Ausgabestoppsname" vor der Berechnung ändern (output_stops_name für Python).

Die Feldnamen der Tabelle "Stops" werden unten aufgelistet und beschrieben.

Feldname

Beschreibung

ObjectID

Das vom System verwaltete ID-Feld.

Name

Der Name des Stopps. Dies ist ein Fremdschlüssel für den Namen des Depots, des Auftrags oder der Unterbrechung in den Eingabe-Feature-Sets und im Record Set. Das Eingabe-Feature oder Record Set wird durch das Feld "StopType" angegeben.

PickupQuantities

Die Frachtmenge oder Anzahl an Personen, die an einem Stopp abgeholt wird/werden. Wenn mehrere Bemaßungen an einem Stopp geliefert werden, wird jede Menge durch ein Leerzeichen getrennt.

Die Einheiten für dieses Feld werden nicht gespeichert. Sie sollten die Einheiten gemäß der Eingabe im Feld "Quantities" der Eingaberouten und in den Feldern "PickupQuantities" und "DeliveryQuantities" der Eingabeaufträge interpretieren. (Alle diese Felder sollten dieselben Einheiten und dieselbe Anzahl von Bemaßungen aufweisen.)

DeliveryQuantities

Die Frachtmenge oder Anzahl an Personen, die an einem Stopp abgeliefert wird/werden. Wenn mehrere Bemaßungen an einem Stopp geliefert werden, wird jede Menge durch ein Leerzeichen getrennt.

Die Einheiten für dieses Feld werden nicht gespeichert. Sie sollten die Einheiten gemäß der Eingabe im Feld "Quantities" der Eingaberouten und in den Feldern "PickupQuantities" und "DeliveryQuantities" der Eingabeaufträge interpretieren. (Alle diese Felder sollten dieselben Einheiten und dieselbe Anzahl von Bemaßungen aufweisen.)

StopType

Gibt an, ob der Stopp ein Depot, einen Auftrag oder eine Unterbrechung repräsentiert.

Das Feld speichert einen kodierten Wert, der wie folgt interpretiert werden kann:

  • Auftrag (0)
  • Depot (1)
  • Unterbrechung (2)

RouteName

Der Name der Route mit dem Stopp.

Sequence

Die relative Sequenz, in der die zugewiesene Route den Stopp durchführt.

Durch die Sortierung nach den Feldern "RouteName" und "Sequence" wird eine sortierte Liste mit Stopps für jede Route erstellt.

FromPreviousTravelTime

Die verstrichene Fahrzeit vom vorherigen Stopp der Route bis zum aktuellen Stopp.

Die Einheit für diesen Feldwert wird durch den Parameter Uhrzeitfeldeinheiten angegeben (time_units für Python).

FromPreviousDistance

Die Entfernung vom vorherigen Stopp der Route bis zum aktuellen Stopp.

Die Einheit für diesen Feldwert wird durch den Parameter "Uhrzeitfeldeinheiten" (distance_units für Python) angegeben.

ArriveCurbApproach

Gibt an, auf welcher Seite des Fahrzeugs sich die Bordsteinkante befindet, wenn das Fahrzeug beim Stopp ankommt.

DepartCurbApproach

Gibt an, auf welcher Seite des Fahrzeugs sich die Bordsteinkante befindet, wenn das Fahrzeug beim Stopp abfährt.

ArriveTime

Uhrzeit, zu der das Fahrzeug beim Routenstopp ankommt.

Wenn das Netzwerk-Dataset mit Zeitzonen konfiguriert ist, entspricht der Uhrzeitwert der Zeitzone, in der sich der Stopp befindet. Andernfalls entspricht er der Zeitzone, die auf dem für die Berechnung der Analyse verwendeten Computer konfiguriert ist.

DepartTime

Uhrzeit, zu der das Fahrzeug vom Routenstopp abfährt.

Wenn das Netzwerk-Dataset mit Zeitzonen konfiguriert ist, entspricht der Uhrzeitwert der Zeitzone, in der sich der Stopp befindet. Andernfalls entspricht er der Zeitzone, die auf dem für die Berechnung der Analyse verwendeten Computer konfiguriert ist.

ArriveTimeUTC

Uhrzeit, zu der das Fahrzeug beim Routenstopp ankommt. Dieser Wert wird in UTC (koordinierte Weltzeit) angegeben.

Dieses Feld ist Null, wenn keine Zeitzonen für das Netzwerk-Dataset konfiguriert sind.

DepartTimeUTC

Uhrzeit, zu der das Fahrzeug vom Routenstopp abfährt. Dieser Wert wird in UTC (koordinierte Weltzeit) angegeben.

Dieses Feld ist Null, wenn keine Zeitzonen für das Netzwerk-Dataset konfiguriert sind.

WaitTime

Die Wartezeit oder der Aufenthalt beim Stopp. Beispielsweise ist eine Wartezeit vorhanden, wenn auf einer Route bei dem Auftrag gewartet werden muss, bis sich ein Zeitfenster öffnet.

ViolationTime

Die zwischen dem Ende des Zeitfensters für den Stopp und der Ankunft des Fahrzeugs für die Route verstrichene Zeit.

Visualisieren von Stopps

Die Tabelle "Stops" ist keine Feature-Class. Das bedeutet, Sie können die Tabelle nicht einfach zu einer Karte hinzufügen, um die Stopps anzuzeigen. Stattdessen müssen Sie zusätzliche Schritte durchführen, um Stopps auf einer Karte zu visualisieren. (Eine Anleitung dazu finden Sie unten.) Dieses Design scheint evtl. unnötig kompliziert, wenn Sie die Stopps einer Route auf einer Karte anzeigen müssen. Denken Sie jedoch daran, dass dieses Werkzeug für die Erstellung von VRP-Web-Services konzipiert wurde. Somit ist die Ausgabe so schlank wie möglich, um die Serververarbeitung und Datenübertragung zu minimieren. Nichtsdestotrotz ist die Ausgabe nicht zu schlank. Sie bietet immer noch die grundlegenden Informationen zur Visualisierung von Stopps als Punkt-Features.

Beispiel: Um anzuzeigen, wo Stopps für Aufträge erfolgen, verknüpfen Sie die Tabelle "Stops" mit dem ursprünglichen Auftrags-Feature-Set, das als Eingabe verwendet wurde. Sie können diese Datasets über die Felder "StopType" und "Name" in der Tabelle "Stops" und das Feld "Name" im Auftrags-Feature-Set auswählen und verbinden. Sie können einen ähnlichen Ansatz verwenden, um Stopps bei Depots anzuzeigen.

TippTipp:

Vehicle Routing Problem-Analyse berechnen erstellt mehrere Eingabe-Feature-Sets, einschließlich den Auftrags- und Depot-Feature-Sets. Bei der Berechnung durch das Werkzeug werden diese In-Memory-Feature-Sets aus ArcMap entfernt. Sie können sie jedoch wieder hinzufügen. Führen Sie hierzu die folgenden Schritte aus:

  1. Öffnen Sie das Fenster Ergebnisse im Menü Geoverarbeitung.
  2. Navigieren Sie im Fenster Ergebnisse zu den Ergebnissen der Operation, von der Sie ein Feature-Set benötigen.
  3. Blenden Sie das entsprechende Ergebnis für Vehicle Routing Problem-Analyse berechnen ein.
  4. Blenden Sie Eingaben ein.
  5. Klicken Sie mit der rechten Maustaste auf das Feature-Set, das Sie anzeigen möchten, und wählen Sie Zur Anzeige hinzufügen. Das Feature-Set wird in der Karte und im Inhaltsverzeichnis angezeigt.
  6. Klicken Sie optional auf die Schaltfläche Nach Quelle auflisten im Fenster Inhaltsverzeichnis, um zu sehen, wo die Daten gespeichert sind.

Im Gegensatz zu Aufträgen und Depots sind Unterbrechungen nicht mit Eingabe-Feature-Sets verknüpft. Sie müssen daher eine andere Methode verwenden, um sie zu visualisieren. Sie können Beschreibungen in der Analyse erstellen, die Linien auswählen, die Features repräsentieren, und das Werkzeug Feature-Stützpunkte zu Punkten verwenden, um sie in Punkte zu konvertieren.

Tabelle "UnassignedStops"

Die Tabelle "UnassignedStops" listet die Aufträge auf, die von keiner Route abgearbeitet wurden. Sie gibt ferner an, warum der Stopp nicht aufgesucht wurde, sodass Sie die erforderlichen Änderungen vornehmen können, um das Problem zu beheben.

Der Standardname dieser Ausgabe-Tabelle ist Stops. Sie können dies jedoch durch Ändern des Parameters Ausgabename nicht zugewiesener Stopps vor der Berechnung ändern (output_unassigned_stops_name).

Die Feldnamen der Tabelle "Stops" werden unten aufgelistet und beschrieben.

Feldname

Beschreibung

ObjectID

Das vom System verwaltete ID-Feld.

StopType

Gibt an, ob der Stopp ein Depot, einen Auftrag oder eine Unterbrechung repräsentiert. Das Feld speichert einen kodierten Wert, der wie folgt interpretiert werden kann:

  • Auftrag (0)
  • Depot (1)
  • Unterbrechung (2)

Name

Der Name des Stopps.

Dies ist ein Fremdschlüssel für den Namen des Depots, des Auftrags oder der Unterbrechung in den Eingabe-Feature-Sets und im Record Set. Das Eingabe-Feature oder Record Set wird durch das Feld "StopType" angegeben.

ViolatedConstraints

Dieses Feld enthält eine Zusammenfassung von Beschränkungsverletzungen. Es wird nach einem Berechnungsvorgang festgelegt. Wenn eine Einschränkung verletzt wird, kann dem Feld eine Kombination aus den unten aufgeführten Verletzungen zugewiesen werden:

Dive-inDive-in:

Der codierte Wert, der die Textbeschreibung darstellt, wird unten in der Liste in Klammern dargestellt. Beachten Sie, dass die codierten Werte Teil einer geometrischen Sequenz sind, die zunimmt, da der letzte Wert verdoppelt wird. Auf diese Weise können verschiedene Kombinationen von Regel-Verletzungen codiert werden. Zum Beispiel wird die Kombination von "Capacities überschritten" (2) und "Harte Routenzone" (128) als 130 (2 +128) codiert.

  • MaxOrderCount überschritten (1) – Der Route können die vorab zugewiesenen Aufträge nicht zugewiesen werden, weil durch das Zuweisen der Aufträge die maximale Anzahl der Aufträge überschritten wird, die gemäß dem Wert des Feldes "MaxOrderCount" für die Route zugewiesen werden dürfen.
  • Capacities überschritten (2) – Der Route können die vorab zugewiesenen Aufträge nicht zugewiesen werden, weil durch das Zuweisen der Aufträge die Gesamtroutenkapazität überschritten wird, die vom Wert des Feldes "Capacities" für die Route angegeben wird.
  • MaxTotalTime überschritten (4) – Die Fahrzeit vom Startdepot zum Enddepot, zuzüglich der Durchführungs- und Wartezeiten an beiden Depots sowie ggf. Pausenzeiten, überschreitet die vom Wert des Feldes "MaxTotalTime" für die Route angegebene Gesamtzeit.
  • MaxTotalTravelTime überschritten (8) – Die Fahrzeit vom Startdepot zum Enddepot, zuzüglich der Durchführungs- und Wartezeiten an beiden Depots sowie ggf. Pausenzeiten, überschreitet die vom Wert des Feldes "MaxTotalTravelTime" für die Route angegebene Gesamtfahrzeit.
  • MaxTotalDistance überschritten (16) – Die Reisestrecke vom Startdepot zum Enddepot, zuzüglich der Durchführungs- und Wartezeiten an beiden Depots sowie ggf. Pausenzeiten, überschreitet die vom Wert des Feldes "MaxTotalDistance" für die Route angegebene Gesamtreisestrecke.
  • Hartes Zeitfenster (32) – Beim Startdepot, Enddepot oder einer Pause für die Route liegt eine Verletzung eines harten Zeitfensters vor.
  • Nicht übereinstimmende Besonderheit (64) – Die für einen Auftrag erforderlichen Besonderheiten werden auf der Zielroute nicht gefunden.
  • Harte Routenzone (128) – Ein Auftrag, der der Route vorab zugewiesen wurde, fällt nicht in eine harte Routenzone.
  • MaxTransitTime für Auftragspaar überschritten (256) – Der Route ist ein Auftragspaar vorab zugewiesen, und durch Zuweisen der Aufträge des Auftragspaares wird die durch den Wert des Feldes "MaxTransitTime" für das Auftragspaar angegebene maximale Fahrzeit überschritten.
  • Auftragspaarverletzung (512) – Der Auftrag gehört zu einem Auftragspaar und kann keiner vorab zugewiesenen Route zugewiesen werden.
  • Nicht erreichbar (1024) – Ein vorab zugewiesener Auftrag befindet sich auf einem Netzwerkelement, das von der Route nicht erreicht werden kann.
  • Erforderliche Pausenzeiten können nicht eingefügt werden (2048) – Eine Pausenzeit für die Route weist bei Vorhandensein von vorab zugewiesenen Aufträgen den Sequenzwert NULL auf, und die Pausenzeit kann an keiner Stelle eingefügt werden, ohne dass andere Verletzungen verursacht werden.
  • Erforderliche Lager können nicht eingefügt werden (4096) – Eine Route überschreitet ihre Kapazität, und es muss ein Lager zum Be-/Entladen besucht werden. Das Lager zum Be-/Entladen weist jedoch bei Vorhandensein von vorab zugewiesenen Aufträgen den Sequenzwert NULL auf und kann an keiner Stelle eingefügt werden, ohne dass andere Verletzungen verursacht werden.
  • MaxTravelTimeBetweenBreaks überschritten (8192) – Der Solver konnte innerhalb des Zeitraums, der vom Feld "MaxTravelTimeBetweenBreaks" der Pausenzeit angegeben wird, keine Pausenzeit einfügen. Dies wird häufig dadurch verursacht, dass einer Pausenzeit vorab eine Sequenz zugewiesen wird, was dazu führt, dass sie innerhalb der maximalen Fahrzeit nicht erreicht werden kann.

  • Pausenzeit wegen MaxCumulWorkTime überschritten (16384) – Der Solver konnte innerhalb des Zeitraums, der vom Feld "MaxCumulWorkTime" der Pausenzeit angegeben wird, keine Pausenzeit einfügen. Dies wird häufig dadurch verursacht, dass einer Pausenzeit vorab eine Sequenz zugewiesen wird, was dazu führt, dass sie innerhalb der maximalen Arbeitszeit nicht erreicht werden kann.

Status

Dieses Feld wird von einer Domäne von Werten eingeschränkt, die unten aufgeführt sind (ihre codierten Werte werden in Klammern angegeben.

  • OK (0) – Der Netzwerkstandort wurde erfolgreich ausgewertet.
  • Element nicht passierbar (3) – Das Netzwerkelement, auf dem sich der Netzwerkstandort befindet, ist nicht passierbar. Dies kann der Fall sein, wenn das Netzwerkelement durch ein Restriktionsattribut eingeschränkt wird.
  • Ungültige Feldwerte (4) – Die Feldwerte des Netzwerkstandorts liegen außerhalb der Domäne mit codierten Werten oder der Bereichsdomäne des Analyse-Layers. Beispiel: Es ist eine negative Zahl vorhanden, jedoch sind positive Zahlen erforderlich.
  • Nicht erreicht (5) – Der Netzwerkstandort kann nicht vom Solver erreicht werden.

Verwandte Themen

9/11/2013