Vehicle Routing Problem berechnen (Einsatzbereit)

Zusammenfassung

Findet die Lösung für ein Vehicle Routing Problem (VRP) zur Ermittlung der besten Route für eine Fahrzeugflotte.

Ein Dispatcher, der eine Fahrzeugflotte verwaltet, muss häufig Entscheidungen zur Streckenführung der Fahrzeuge treffen. Hierzu gehören die optimale Zuweisung einer Gruppe von Kunden zu einer Fahrzeugflotte sowie das Festlegen der Reihenfolge und der Zeiten von Besuchen bei Kunden. Durch das Lösen dieser VRPs soll ein hohes Maß an Kundenzufriedenheit erreicht werden. Dies erfolgt durch die Beachtung von Zeitfenstern, während gleichzeitig die Gesamtbetriebskosten und Investitionskosten für jede Route möglichst gering gehalten werden. Die Einschränkungen bestehen im Durchführen der Routen mit den verfügbaren Ressourcen und innerhalb der zeitlichen Grenzen, die durch Arbeitsschichten der Fahrer, Fahrgeschwindigkeit und Zusagen an Kunden bedingt sind.

Mit diesem Service können Lösungen für diese komplexen Tasks der Fahrzeugflottenverwaltung ermittelt werden.

Betrachten Sie folgendes Beispiel: Waren müssen von einem zentralen Lager an Lebensmittelgeschäfte geliefert werden. Am Lager ist eine Flotte von drei Lkw verfügbar. Das Lager ist nur innerhalb eines bestimmten Zeitfensters (von 8 bis 17 Uhr) geöffnet, und innerhalb dieser Zeit müssen alle LKW zum Lager zurückkehren. Die Kapazität jedes Lkw beträgt 7.500 kg, wodurch die Menge der vom Lkw zu transportierenden Waren begrenzt ist. Jedes Geschäft hat einen Bedarf an einer bestimmten Menge an Waren (in Kilogramm), die geliefert werden müssen, und für jedes Geschäft gelten Zeitfenster, die den Zeitraum für Lieferungen begrenzen. Außerdem darf ein Fahrer nur acht Stunden pro Tag arbeiten, er benötigt eine Mittagspause, und wird für die Zeit zum Fahren und Beliefern der Geschäfte bezahlt. Das Ziel ist das Ermitteln eines Routenplans für jeden Fahrer (oder für jede Route), so dass die Lieferungen so durchgeführt werden können, dass alle Anforderungen für die Durchführung der Lieferungen erfüllt werden und die von einem Fahrer für eine Route aufgebrachte Zeit minimiert wird. In der Abbildung unten werden drei Routen dargestellt, die durch das Lösen des oben beschriebenen Vehicle Routing Problem ermittelt wurden.

Weitere Informationen zu Vehicle Routing Problem-Analysen

Weitere Informationen zur Ausgabe des Werkzeugs "Vehicle Routing Problem berechnen"

Abbildung

Lösungsergebnisse eines Vehicle Routing Problem

Verwendung

  • Das Werkzeug Vehicle Routing Problem berechnen erstellt Routen für Flottenfahrzeuge, die viele Ausliefer-, Abhol- oder Serviceaufträge abwickeln müssen. Das Werkzeug wird im asynchronen Modus ausgeführt und eignet sich hervorragend für größere Analysen, deren Lösung länger dauert.

  • Die Werkzeuge in der Sammlung "Einsatzbereite Werkzeuge" sind ArcGIS Online-Geoverarbeitungsservices, die gehostete Daten und Analysefunktionen von ArcGIS Online verwenden.

  • Sie können bis zu 2.000 Aufträge und 100 Routen verarbeiten. Eine Route darf zudem bis zu 200 Aufträge enthalten.

  • Sie können bis zu 250 Punkt-Barrieren hinzufügen. Sie können beliebig viele Linien- oder Polygon-Barrieren hinzufügen, wobei die Linien-Barrieren nicht mehr als 500 Straßen-Features und die Polygon-Barrieren nicht mehr als 2.000 Features schneiden dürfen.

  • Unabhängig davon, welcher use_hierarchy_in_analysis-Parameter aktiviert ist (True), wird die Hierarchie immer verwendet, wenn die geradlinige Entfernung zwischen Aufträgen oder Depots bzw. zwischen Aufträgen und Depots 50 Meilen (80,46 km) überschreitet.

  • Die geradlinige Entfernung zwischen Aufträgen oder Depots darf nicht größer sein als 27 Meilen (43,45 Kilometer), wenn für travel_mode die Option Gehen oder wenn die Option Benutzerdefiniert ausgewählt wurde und die Einschränkung Gehen verwendet wird.

  • Ist ein Eingabepunkt von der nächsten passierbaren Straße weiter als 12,42 Meilen (20 Kilometer) entfernt, wird der Punkt aus der Analyse ausgeschlossen.

  • Durch das Verwenden dieses Services werden Credits verbraucht. Weitere Informationen finden Sie unter Übersicht zu Credits.

Parameter

BeschriftungErläuterungDatentyp
Aufträge

Gibt eine oder mehrere Positionen an, die bei der VRP-Analyse für die Routenerstellung berücksichtigt werden. Ein Auftrag kann eine Lieferung (z. B. eine Möbellieferung), eine Abholung (z. B. die Abholung eines Passagiers durch einen Airport Shuttle-Bus) oder eine Art von Service oder Prüfung (z. B. das Zurückschneiden eines Baumes oder die Prüfung eines Gebäudes) repräsentieren.

Bei der Angabe der Aufträge können Sie mithilfe der folgenden Attribute deren jeweilige Eigenschaften, darunter Name und Durchführungszeit, festlegen:

ObjectID

Das vom System verwaltete ID-Feld.

Name

Der Name des Auftrags. Der Name muss eindeutig sein. Wenn kein Name angegeben wird, wird zum Zeitpunkt der Berechnung automatisch ein Name erstellt.

Description

Dies ist die Beschreibung des Auftrags. Diese kann Textinformationen zum Auftrag umfassen und muss nicht eindeutig sein. Sie können im Feld Name die ID-Nummer eines Kunden und im Feld Description den eigentlichen Namen oder die Adresse des Kunden speichern.

ServiceTime

Diese Eigenschaft gibt an, wie viel Zeit am Netzwerkstandort verbracht wird, wenn die Route zu ihm führt. Das heißt, in ihr wird der Wert für die Impedanz des Netzwerkstandorts gespeichert. Ein 0- oder NULL-Wert weist darauf hin, dass der Netzwerkstandort keine Durchführungszeit erfordert.

Die Einheit für diesen Feldwert wird mithilfe des Parameters time_units angegeben.

TimeWindowStart1

Die Anfangszeit des ersten Zeitfensters für den Netzwerkstandort. Dieses Feld kann einen NULL-Wert enthalten. Ein Nullwert gibt an, dass keine Anfangszeit vorhanden ist.

Ein Zeitfenster gibt nur an, wann ein Fahrzeug bei einer Lieferung ankommen kann. Es gibt nicht an, wann die Durchführungszeit abgeschlossen sein muss. Wenn die Durchführungszeit und die Abfahrt des Fahrzeugs vor Ablauf des Zeitfensters berücksichtigt werden sollen, subtrahieren Sie ServiceTime vom Feld TimeWindowEnd1.

Die Zeitfensterfelder (TimeWindowStart1, TimeWindowEnd1, TimeWindowStart2 und TimeWindowEnd2) können einen reinen Uhrzeitwert oder einen Wert für Datum und Uhrzeit in einem Datumsfeld enthalten. Dabei darf es sich nicht um ganze Zahlen handeln, die Millisekunden seit Unixzeit darstellen. Die Zeitzone für Zeitfensterfelder wird mit dem Parameter time_zone_usage_for_time_fields angegeben. Wenn ein Zeitfeld, z. B. TimeWindowStart1, einen reinen Uhrzeitwert enthält (z. B. 8:00 Uhr), wird vorausgesetzt, dass als Datum das für die Analyse festgelegte Standarddatum verwendet wird. Wenn Sie Datums- und Zeitwerte verwenden (z. B. 7/11/2010 8:00 Uhr), können Sie Zeitfenster über mehrere Tage festlegen.

Werden bei der Lösung eines Problems mehrere Zeitzonen erfasst, so beziehen sich die in den Zeitfenstern jedes Auftrags angegebenen Werte auf die Zeitzone, in der sich der Auftrag befindet.

TimeWindowEnd1

Die Endzeit des ersten Zeitfensters für den Netzwerkstandort. Dieses Feld kann einen NULL-Wert enthalten. Ein NULL-Wert gibt an, dass keine Endzeit vorhanden ist.

TimeWindowStart2

Die Anfangszeit des zweiten Zeitfensters für den Netzwerkstandort. Dieses Feld kann einen NULL-Wert enthalten. Ein NULL-Wert gibt an, dass kein zweites Zeitfenster vorhanden ist.

Wenn das erste Zeitfenster gemäß den Feldern TimeWindowStart1 und TimeWindowEnd1 NULL ist, muss das zweite Zeitfenster ebenfalls NULL sein.

Wenn es sich bei beiden Fenstern um Nicht-NULL-Fenster handelt, können sie nicht überlappen. Außerdem muss das zweite Zeitfenster auf das erste folgen.

TimeWindowEnd2

Die Endzeit des zweiten Zeitfensters für den Netzwerkstandort. Dieses Feld kann einen NULL-Wert enthalten.

Wenn TimeWindowStart2 und TimeWindowEnd2 beide NULL sind, gibt es kein zweites Zeitfenster.

Wenn TimeWindowStart2 nicht NULL ist, aber TimeWindowEnd2 NULL ist, gibt es ein zweites Zeitfenster, das eine Startzeit, aber keine Endzeit hat. Dies ist zulässig.

MaxViolationTime1

Eine Zeitfensterverletzung liegt vor, wenn die Ankunftszeit nach dem Ende des Zeitfensters liegt. Dieses Feld gibt den maximal zulässigen Zeitverstoß für das erste Zeitfenster des Auftrags an. Es darf den Wert 0, jedoch keinen negativen Wert enthalten. Der Wert 0 gibt an, dass kein Verstoß gegen das erste Zeitfenster des Auftrags zulässig ist, d. h. das erste Zeitfenster ist ein sog. "hartes" Zeitfenster. Ein NULL-Wert bedeutet andererseits auch, dass der zulässige Zeitverstoß unbegrenzt ist. Ein Wert ungleich 0 gibt die maximale Verspätung an. Beispielsweise kann ein Fahrzeug bis zu 30 Minuten nach dem Ende des ersten Zeitfensters bei einem Auftrag ankommen.

Die Einheit für diesen Feldwert wird mithilfe des Parameters Uhrzeitfeldeinheiten angegeben.

Zeitfensterverletzungen können vom Solver verfolgt und gewichtet werden. Daher können Sie den VRP-Solver anweisen, eine der folgenden Aktionen durchzuführen:

  • Minimieren des Gesamtzeitverstoßes, unabhängig von der Erhöhung der Reisekosten für die Fahrzeugflotte
  • Suchen einer Lösung, die einen Kompromiss zwischen Gesamtzeitverstoß und Reisekosten ermöglicht
  • Ignorieren des Gesamtzeitverstoßes und Minimieren der Reisekosten für die Fahrzeugflotte

Wenn Sie für den Parameter Gewichtung der Zeitfensterverletzung eine Gewichtung zuweisen, entscheiden Sie sich letztendlich für eine dieser Optionen. Der Solver gibt jedoch in jedem Fall einen Fehler zurück, wenn der für MaxViolationTime1 festgelegte Wert überschritten wird.

MaxViolationTime2

Der maximal zulässige Zeitverstoß für das zweite Zeitfenster des Auftrags. Dieses Feld entspricht dem Feld MaxViolationTime1.

InboundArriveTime

Legt fest, wann der am Ort des Auftrags abzuliefernde Gegenstand am Startdepot bereit ist.

Der Auftrag kann einer Route nur dann zugewiesen werden, wenn die eingehende Ankunftszeit dem letzten Startzeitwert der Route vorausgeht. Auf diese Weise kann die Route das Depot nicht verlassen, bevor der Liefergegenstand bereit ist, in das Depot geladen zu werden.

Mit diesem Feld können Szenarien mit Umladungen eingehender Lieferungen modelliert werden. Beispiel: Für einen Auftrag sind spezielle Materialien erforderlich, die derzeit nicht im Depot verfügbar sind. Die Materialien werden von einem anderen Standort versendet und erreichen das Depot um 11:00 Uhr. Um sicherzustellen, dass ein Fahrzeug, das auf einer Route den Ort vor dem Eintreffen der Lieferung verlässt, dem Auftrag nicht zugewiesen wird, wird die eingehende Ankunftszeit des Auftrags auf 11:00 Uhr festgelegt. Die speziellen Materialien treffen um 11:00 Uhr ein, werden auf das Fahrzeug geladen und das Fahrzeug verlässt das Depot, um die ihm zugewiesenen Orte des Auftrags anzufahren.

Anmerkungen:

  • Die Startzeit der Route, die Durchführungszeiten umfasst, muss auf die eingehende Ankunftszeit folgen. Wenn eine Route vor der eingehenden Ankunftszeit eines Auftrags beginnt, kann der Auftrag der Route nicht zugewiesen werden. Die Zuweisung ist auch dann ungültig, wenn die Route eine Start-Depot-Durchführungszeit aufweist, die bis über die eingehende Ankunftszeit hinaus andauert.

  • Dieses Zeitfeld kann einen reinen Uhrzeitwert oder einen Wert für Datum und Uhrzeit enthalten. Wenn ein reiner Uhrzeitwert festgelegt wurde (z. B. 11:00 Uhr), wird vorausgesetzt, dass als Datum das für die Analyse festgelegte Standarddatum verwendet wird. Das Standarddatum wird jedoch ignoriert, wenn ein Zeitfeld in den Depots, Routen, Aufträgen oder Unterbrechungen ein Datum mit Uhrzeit enthält. Geben Sie in diesem Fall all diese Felder mit Datum und Uhrzeit ein (z. B. 11.07.2015 11:00 Uhr).

  • Der VRP-Solver berücksichtigt InboundArriveTime unabhängig vom DeliveryQuantities-Wert.

  • Wenn außerdem eine ausgehende Abfahrtzeit angegeben ist, muss deren Zeitwert nach der eingehenden Ankunftszeit liegen.

OutboundDepartTime

Legt fest, wann der am Ort des Auftrags abzuholende Liefergegenstand das End-Depot erreichen muss.

Der Auftrag kann einer Route nur dann zugewiesen werden, wenn die Route den Ort des Auftrags anfahren kann und dessen End-Depot vor der angegebenen ausgehenden Abfahrtzeit erreicht.

Mit diesem Feld können Szenarien mit Umladungen ausgehender Lieferungen modelliert werden. Beispiel: Eine Transportfirma schickt Lieferwagen los, um Pakete von Aufträgen abzuholen und sie zu einem Depot zu bringen. Von dort aus werden sie auf dem Weg zu ihrem Endziel zu anderen Einrichtungen weitertransportiert. Täglich um 15:00 Uhr stoppt ein Sattelschlepper am Depot, um die Pakete mit hoher Priorität abzuholen und sie direkt zu einer zentralen Verarbeitungsstation zu bringen. Um eine Verzögerung der Pakete mit hoher Priorität bis zur 15:00 Uhr-Fahrt des folgenden Tages zu vermeiden, lässt die Transportfirma die Pakete mit hoher Priorität an den Auftragsorten von Lieferwagen abholen und vor Ablauf der 15:00 Uhr-Frist zum Depot bringen. Dazu wird die Abfahrtszeit auf 15:00 Uhr festgelegt.

Anmerkungen:

  • Die Endzeit der Route, einschließlich der Durchführungszeiten, muss vor der ausgehenden Abfahrtzeit liegen Wenn eine Route ein Depot erreicht, die Durchführungszeit des End-Depots jedoch nicht vor der ausgehenden Abfahrtzeit des Auftrags abgeschlossen ist, kann der Auftrag der Route nicht zugewiesen werden.

  • Dieses Zeitfeld kann einen reinen Uhrzeitwert oder einen Wert für Datum und Uhrzeit enthalten. Wenn ein reiner Uhrzeitwert festgelegt wurde (z. B. 11:00 Uhr), wird vorausgesetzt, dass als Datum das für die Analyse festgelegte Standarddatum verwendet wird. Das Standarddatum wird jedoch ignoriert, wenn ein Zeitfeld in Depots, Routen, Aufträgen oder Unterbrechungen ein Datum mit Uhrzeit enthält. Geben Sie in diesem Fall all diese Felder mit Datum und Uhrzeit ein (z. B. 11.07.2015 11:00 Uhr).

  • Der VRP-Solver berücksichtigt OutboundDepartTime unabhängig vom PickupQuantities-Wert.

  • Wenn außerdem eine Ankunftszeit angegeben ist, muss deren Zeitwert vor der Abfahrtszeit liegen.

DeliveryQuantities

Die Größe der Lieferung. Sie können die Größe in einer beliebigen Dimension angeben, wie Gewicht, Volumen oder Menge. Sie können auch mehrere Dimensionen, wie beispielsweise Gewicht und Volumen, angeben.

Geben Sie Liefermengen ohne die Angabe von Einheiten ein. Beispiel: Wenn ein 135 Kilogramm schwerer Artikel geliefert werden muss, geben Sie 135 ein. Sie müssen daran denken, dass der Wert in Kilogramm angegeben ist.

Wenn Sie mehrere Maße angeben, trennen Sie die numerischen Werte mit Leerzeichen. Wenn Sie beispielsweise das Gewicht und Volumen einer Lieferung mit einem Gewicht von 900 Kilogramm und einem Volumen von 3 Kubikmetern erfassen, geben Sie "900 3" ein. Sie müssen sich erneut die Einheiten merken, in diesem Fall Kilogramm und Kubikmeter. Sie müssen sich ferner merken, in welcher Abfolge die Werte und ihre entsprechenden Einheiten eingegeben werden.

Stellen Sie sicher, dass Capacities für Routen und DeliveryQuantities und PickupQuantities für Aufträge auf dieselbe Art und Weise angegeben werden. Das heißt, die Werte müssen in denselben Einheiten vorliegen. Bei Verwendung mehrerer Dimensionen müssen die Dimensionen für alle Parameter in derselben Reihenfolge aufgeführt werden. Wenn Sie beispielsweise das Gewicht in Kilogramm gefolgt von einem Volumen in Kubikmeter für DeliveryQuantities angeben, müssen die Kapazität der Routen und die "PickupQuantities" der Aufträge auf die gleiche Weise angegeben werden: Gewicht in Kilogramm, gefolgt von Volumen in Kubikmeter. Wenn Einheiten kombiniert werden oder die Reihenfolge geändert wird, erhalten Sie unerwünschte Ergebnisse ohne Warnmeldungen.

Eine leere Zeichenfolge oder ein NULL-Wert gibt an, dass alle Dimensionen null sind. Wenn die Anzahl der Werte in der Zeichenfolge geringer als die Kapazitätszahl oder die Anzahl der verfolgten Dimensionen ist, werden die restlichen Werte als Nullen behandelt. Für "DeliveryQuantities" sind negative Werte nicht zulässig.

PickupQuantities

Die Größe der Abholung. Sie können die Größe in einer beliebigen Dimension angeben, wie Gewicht, Volumen oder Menge. Sie können auch mehrere Dimensionen, wie beispielsweise Gewicht und Volumen, angeben. Sie können jedoch keine negativen Werte verwenden. Dieses Feld entspricht dem Feld DeliveryQuantities für "Aufträge".

Bei einem Austauschbesuch kann ein Auftrag Werte für "DeliveryQuantities" und "PickupQuantities" aufweisen.

Revenue

Die generierten Einnahmen, wenn der Auftrag in einer Lösung enthalten ist. Dieses Feld darf einen NULL-Wert (ein NULL-Wert steht für Einnahmen in Höhe von 0), jedoch keinen negativen Wert enthalten.

"Revenue" wird beim Optimieren des Zielfunktionswertes einbezogen, ist jedoch nicht Bestandteil der Betriebskosten für die Lösung. Das bedeutet, dass das Feld TotalCost in "Routen" niemals "Revenue" enthält. Jedoch wird für "Revenue" die relative Gewichtung der Ausführung von Aufträgen berücksichtigt.

"Revenue" wird beim Optimieren des Zielfunktionswertes einbezogen, ist jedoch nicht Bestandteil der Betriebskosten für die Lösung. Das bedeutet, dass das Feld TotalCost in der Klasse "Routen" niemals "Revenue" enthält. Jedoch wird für "Revenue" die relative Gewichtung der Ausführung von Aufträgen berücksichtigt.

SpecialtyNames

Eine durch Leerzeichen getrennte Zeichenfolge mit den Namen der für den Auftrag erforderlichen Besonderheiten. Ein NULL-Wert gibt an, dass der Auftrag keine Besonderheiten erfordert.

Die Schreibweise der Besonderheiten in den Klassen "Orders" und "Routes" muss exakt übereinstimmen, sodass der VRP-Solver sie verknüpfen kann.

Um die Bedeutung und Funktionsweise von Besonderheiten zu veranschaulichen, nehmen Sie an, dass eine Firma, die Grünanlagen pflegt und Baumschnittarbeiten durchführt, für einige Aufträge ein Fahrzeug mit einem Hubsteiger benötigt, um große Bäume zu beschneiden. Das Unternehmen gibt für diese Aufträge Hubsteiger in das Feld "SpecialtyNames" ein, um auf diese besondere Anforderung hinzuweisen. SpecialtyNames bleibt NULL für die anderen Aufträge. Entsprechend gibt die Firma "Hubsteiger" auch in das Feld SpecialtyNames von Routen ein, die von Fahrzeugen mit hydraulischen Auslegern befahren werden. Für die anderen Routen bleibt der Wert des Feldes NULL. Zum Zeitpunkt der Berechnung weist der VRP-Solver jeder Route Aufträge ohne besondere Anforderungen zu, er weist jedoch Aufträge, die Fahrzeuge mit Hubsteiger erfordern, nur den Routen zu, die darüber verfügen.

AssignmentRule

Gibt die Regel zum Zuweisen des Auftrags zu einer Route an. Der Feldwert wird als eine der nachfolgenden Ganzzahlen angegeben (verwenden Sie nicht den Namen in Klammern, sondern den numerischen Code):

  • 0 (Ausschließen): Der Auftrag wird aus dem nachfolgenden Berechnungsvorgang ausgeschlossen.
  • 1 (Route und relative Sequenz beibehalten): Der Solver muss den Auftrag während des Berechnungsvorgangs immer der vorab zugewiesenen Route mit der vorab zugewiesenen relativen Sequenz zuweisen. Wenn diese Zuweisungsregel nicht befolgt werden kann, führt dies zu einem Verstoß gegen den Auftrag. Mit dieser Einstellung wird nur die relative Sequenz, nicht die absolute Sequenz, verwaltet. Um dies näher zu veranschaulichen, stellen Sie sich vor, es gibt zwei Aufträge: A und B. Sie weisen die Sequenzwerte 2 bzw. 3 auf. Wenn Sie die Werte des Feldes AssignmentRule auf "Route und relative Sequenz beibehalten" festlegen, können sich die Sequenzwerte für A und B nach der Berechnung ändern, da andere Aufträge, Pausenzeiten und Depotstopps vor, zwischen oder nach A und B angeordnet werden können. B kann jedoch nicht vor A angeordnet werden. B kann jedoch nicht vor A angeordnet werden.
  • 2 (Route beibehalten): Der Solver muss den Auftrag während des Berechnungsvorgangs immer der vorab zugewiesenen Route zuweisen. Außerdem muss eine gültige Sequenz festgelegt sein, auch wenn diese nicht unbedingt beibehalten werden muss. Wenn der Auftrag nicht der angegebenen Route zugewiesen werden kann, führt dies zu einem Verstoß gegen den Auftrag.
  • 3 (Override): Der Solver versucht, während des Berechnungsvorgangs die Vorabzuweisung von Route und Sequenz für den Auftrag beizubehalten. Jedoch kann eine neue Route oder Sequenz für den Auftrag zugewiesen werden, wenn sich hierdurch der Gesamtwert der Zielfunktion verringern lässt. Dies ist der Standardwert.
  • 4 (Erstes Element verankern): Der Solver ignoriert während des Berechnungsvorgangs die Vorabzuweisung (falls vorhanden) von Route und Sequenz für den Auftrag. Er weist dem Auftrag eine Route zu und legt ihn als ersten Auftrag auf dieser Route fest, um den Gesamtwert der Zielfunktion zu verringern.
  • 5 (Letztes Element verankern): Der Solver ignoriert während des Berechnungsvorgangs die Vorabzuweisung (falls vorhanden) von Route und Sequenz für den Auftrag. Er weist dem Auftrag eine Route zu und legt ihn als letzten Auftrag auf dieser Route fest, um den Gesamtwert der Zielfunktion zu verringern.

Dieses Feld darf keinen NULL-Wert enthalten.

CurbApproach

Gibt die Richtung an, in der ein Fahrzeug beim Auftrag ankommt bzw. von ihm wegfährt. Der Feldwert wird als eine der nachfolgenden Ganzzahlen angegeben (verwenden Sie nicht den Namen in Klammern, sondern den numerischen Code):

  • 0 (Beide Seiten des Fahrzeugs): Das Fahrzeug kann sich von beiden Richtungen dem Auftrag nähern, daher ist hier Wenden erlaubt. Diese Einstellung kann ausgewählt werden, wenn es möglich und sinnvoll ist, dass ein Fahrzeug am Auftragsort eine Wende durchführt. Die Entscheidung hängt von der Breite der Straße, dem Verkehrsaufkommen und dem Vorhandensein eines Parkplatzes am Auftragsort ab, auf dem das Fahrzeug wenden kann.
  • 1 (Rechte Seite des Fahrzeugs): Wenn sich das Fahrzeug dem Auftrag nähert oder von diesem wegfährt, muss sich der Auftrag auf der rechten Seite des Fahrzeugs befinden. Wenden ist verboten. Dies wird üblicherweise für Fahrzeuge wie Busse verwendet, die an einer Bushaltestelle auf der rechten Seite halten müssen.
  • 2 (Linke Seite des Fahrzeugs): Wenn sich das Fahrzeug dem Auftrag nähert oder von diesem wegfährt, muss sich die Bordsteinkante auf der linken Seite des Fahrzeugs befinden. Wenden ist verboten. Dies wird üblicherweise für Fahrzeuge wie Busse verwendet, die an einer Bushaltestelle auf der linken Seite halten müssen.
  • 3 (Wendeverbot): Wenn sich das Fahrzeug dem Auftrag nähert, kann sich die Bordkante auf jeder Seite des Fahrzeuges befinden; das Fahrzeug muss jedoch abfahren, ohne zu wenden.

Das Attribut CurbApproach ist für die Verwendung sowohl in Ländern mit Rechtsverkehr (Deutschland) als auch in Ländern mit Linksverkehr (Großbritannien) konzipiert. Stellen Sie sich zunächst einen Auftrag auf der linken Seite eines Fahrzeugs vor. Es befindet sich stets auf der linken Seite, egal ob das Fahrzeug auf der linken oder rechten Seite der Straße fährt. Was sich abhängig von den nationalen Verkehrsregeln ändern kann, ist Ihre Entscheidung, aus welcher Richtung Sie sich dem Auftrag nähern, sodass er sich entweder links oder rechts vom Fahrzeug befindet. Wenn sich beispielsweise am Auftragsort keine Fahrspur zwischen Fahrzeug und Auftrag befinden soll, wählen Sie in Deutschland die rechte Seite des Fahrzeugs (1), in Großbritannien hingegen die linke Seite des Fahrzeugs (2) aus.

RouteName

Der Name der Route, der der Auftrag zugewiesen wird.

Mit diesem Feld wird ein Auftrag vorab einer bestimmten Route zugewiesen. Es kann einen NULL-Wert enthalten, um anzugeben, dass der Auftrag keiner Route vorab zugewiesen ist. In diesem Fall erfolgt die Ermittlung der bestmöglichen Route für den Auftrag durch den Solver. Wenn das Feld auf NULL festgelegt ist, muss das Feld Sequence ebenfalls auf NULL festgelegt werden.

Wenn der Auftrag einer Route zugewiesen wurde, enthält das Feld RouteName nach einem Berechnungsvorgang den Namen der Route, der der Auftrag zugewiesen ist.

Sequence

Gibt die Sequenz des Auftrags auf der zugewiesenen Route an.

Dieses Feld dient zum Angeben der relativen Sequenz eines Auftrags auf der Route. Das Feld kann einen NULL-Wert enthalten, um anzugeben, dass der Auftrag an einer beliebigen Position auf der Route eingefügt werden kann. Ein NULL-Wert ist nur gemeinsam mit einem NULL-Wert für RouteName zulässig.

Die Eingabesequenzwerte sind positiv und für jede Route eindeutig (gültig für Depotstopps zum Be-/Entladen, Aufträge und Pausenzeiten), müssen jedoch nicht bei 1 beginnen und nicht zusammenhängend sein.

Nach einem Berechnungsvorgang enthält das Feld Sequence den Sequenzwert des Auftrags für die zugewiesene Route. Ausgabesequenzwerte für eine Route gelten für Depotstopps, Aufträge und Pausenzeiten, sie beginnen bei 1 (beim Startdepot) und sind aufeinander folgende Werte. Weil eine Route immer bei einem Depot beginnt, ist 2 der kleinstmögliche Ausgabesequenzwert für einen einer Route zugewiesenen Auftrag.

Bearing

Die Richtung, in die sich ein Punkt bewegt. Die Einheit ist Grad und wird im Uhrzeigersinn von geographisch Nord gemessen. Dieses Feld wird in Verbindung mit dem Feld BearingTol verwendet.

Peilungsdaten werden normalerweise automatisch von einem mobilen Gerät gesendet, das mit einem GPS-Empfänger ausgestattet ist. Sie sollten möglichst Peilungsdaten einbeziehen, wenn Sie eine sich bewegende Eingabeposition laden, beispielsweise einen Fußgänger oder ein Fahrzeug.

Durch die Verwendung dieses Feldes kann verhindert werden, dass Positionen falschen Kanten zugewiesen werden, was auftreten kann, wenn er sich zufällig in der Nähe einer Kreuzung oder einer Überführung befindet. Mithilfe der Peilung kann das Werkzeug einfacher ermitteln, auf welcher Straßenseite sich der Punkt befindet.

Weitere Informationen über Peilung und Peilungstoleranz

BearingTol

Anhand des Peilungstoleranzwertes wird ein Bereich mit zulässigen Peilungswerten erstellt, wenn Punkte über das Feld Bearing auf einer Kante bewegt werden. Wenn der Wert des Feldes Bearing innerhalb des Bereichs der zulässigen Werte liegt, die über die Peilungstoleranz auf einer Kante generiert werden, kann der Punkt dort als Netzwerkstandort hinzugefügt werden. Andernfalls wird der nächstgelegene Punkt an der übernächsten Kante ausgewertet.

Die Einheiten in Grad, und der Standardwert ist 30. Der Wert muss größer als 0 und kleiner als 180 sein. Der Wert 30 bedeutet, dass beim Hinzufügen eines Netzwerkstandortes auf einer Kante durch Network Analyst auf beiden Seiten der Kante (links und rechts) und in beiden Digitalisierrichtungen der Kante ein zulässiger Peilungswertebereich in einem Winkel von 15 Grad generiert wird.

Weitere Informationen über Peilung und Peilungstoleranz

NavLatency

Dieses Feld wird nur im Berechnungsprozess verwendet, wenn die Felder Bearing und BearingTol ebenfalls Werte enthalten. Die Eingabe eines NavLatency-Feldwertes ist jedoch optional, selbst wenn in Bearing und BearingTol Werte enthalten sind. NavLatency gibt an, welche Kosten voraussichtlich zwischen dem Senden von GPS-Informationen von einem sich bewegenden Fahrzeug zu einem Server und dem Empfang der verarbeiteten Route durch das Navigationsgerät des Fahrzeugs anfallen.

Die Einheiten von NavLatency entsprechen denen des Impedanzattributs.

Feature Set
Depots

Gibt für das betreffende Vehicle Routing Problem ein oder mehrere Depots an. Ein Depot ist ein Standort, den ein Fahrzeug am Anfang des Arbeitstages verlässt und zu dem es am Ende des Arbeitstages zurückkehrt. Fahrzeuge werden in Depots beladen (für Lieferungen) oder entladen (für Abholungen). In einigen Fällen kann ein Depot auch als Lager fungieren, an dem das Fahrzeug Artikel entladen oder laden kann, um weitere Lieferungen oder Abholungen durchzuführen. Ein Depot weist Öffnungs- und Schließzeiten auf, die durch ein hartes Zeitfenster angegeben werden. Fahrzeuge dürfen nicht außerhalb dieses Zeitfensters bei einem Depot eintreffen.

Bei der Angabe der Depots können Sie mithilfe der folgenden Attribute deren jeweilige Eigenschaften, darunter Name und Durchführungszeit, festlegen:

ObjectID

Das vom System verwaltete ID-Feld.

Name

Der Name des Depots. Die Felder StartDepotName und EndDepotName in Routen referenzieren die Namen, die Sie hier angeben. Er wird ebenfalls von "Lager (Be-/Entladen)" referenziert, sofern verwendet.

Bei Depotnamen wird nicht zwischen Groß- und Kleinschreibung unterschieden. Das Feld darf nicht leer sein und muss einen eindeutigen Namen enthalten.

Description

Dies ist die Beschreibung des Depotstandorts. Diese können Textinformationen umfassen und müssen nicht eindeutig sein.

Wenn Sie beispielsweise notieren möchten, in welcher Region sich ein Depot befindet, oder die Adresse und Telefonnummer des Depots angeben möchten, können Sie diese Informationen hier statt im Feld Name eingeben.

TimeWindowStart1

Die Anfangszeit des ersten Zeitfensters für den Netzwerkstandort. Dieses Feld kann einen NULL-Wert enthalten. Ein Nullwert gibt an, dass keine Anfangszeit vorhanden ist.

Die Zeitfensterfelder (TimeWindowStart1, TimeWindowEnd1, TimeWindowStart2 und TimeWindowEnd2) können einen reinen Uhrzeitwert oder einen Wert für Datum und Uhrzeit in einem Datumsfeld enthalten. Dabei darf es sich nicht um ganze Zahlen handeln, die Millisekunden seit Unixzeit darstellen. Die Zeitzone für Zeitfensterfelder wird mit dem Parameter time_zone_usage_for_time_fields angegeben. Wenn ein Zeitfeld, z. B. TimeWindowStart1, einen reinen Uhrzeitwert enthält (z. B. 8:00 Uhr), wird vorausgesetzt, dass als Datum das für die Analyse festgelegte Standarddatum verwendet wird. Wenn Sie Datums- und Zeitwerte verwenden (z. B. 7/11/2010 8:00 Uhr), können Sie Zeitfenster über mehrere Tage festlegen.

Werden bei der Lösung eines Problems mehrere Zeitzonen erfasst, so beziehen sich die in den Zeitfenstern jedes Depots angegebenen Werte auf die Zeitzone, in der sich das Depot befindet.

TimeWindowEnd1

Die Endzeit des ersten Zeitfensters für den Netzwerkstandort. Dieses Feld kann einen NULL-Wert enthalten. Ein NULL-Wert gibt an, dass keine Endzeit vorhanden ist.

TimeWindowStart2

Die Anfangszeit des zweiten Zeitfensters für den Netzwerkstandort. Dieses Feld kann einen NULL-Wert enthalten. Ein NULL-Wert gibt an, dass kein zweites Zeitfenster vorhanden ist.

Wenn das erste Zeitfenster gemäß den Feldern TimeWindowStart1 und TimeWindowEnd1 NULL ist, muss das zweite Zeitfenster ebenfalls NULL sein.

Wenn es sich bei beiden Zeitfenstern um Nicht-NULL-Fenster handelt, können sie nicht überlappen. Außerdem muss das zweite Zeitfenster auf das erste folgen.

TimeWindowEnd2

Die Endzeit des zweiten Zeitfensters für den Netzwerkstandort. Dieses Feld kann einen NULL-Wert enthalten.

Wenn TimeWindowStart2 und TimeWindowEnd2 beide NULL sind, gibt es kein zweites Zeitfenster.

Wenn TimeWindowStart2 nicht NULL ist, aber TimeWindowEnd2 NULL ist, gibt es ein zweites Zeitfenster, das eine Startzeit, aber keine Endzeit hat. Dies ist zulässig.

CurbApproach

  • 0 (Beide Seiten des Fahrzeugs): Das Fahrzeug kann sich von beiden Richtungen dem Depot nähern, daher ist hier Wenden erlaubt. Diese Einstellung kann ausgewählt werden, wenn es möglich und sinnvoll ist, dass ein Fahrzeug am Depot eine Wende durchführt. Die Entscheidung hängt von der Breite der Straße, dem Verkehrsaufkommen und dem Vorhandensein eines Parkplatzes am Depot ab, auf dem das Fahrzeug wenden kann.
  • 1 (Rechte Seite des Fahrzeugs): Wenn sich das Fahrzeug dem Depot nähert oder von diesem wegfährt, muss sich das Depot auf der rechten Seite des Fahrzeugs befinden. Wenden ist verboten. Dies wird üblicherweise für Fahrzeuge wie Busse verwendet, die an einer Bushaltestelle auf der rechten Seite halten müssen.
  • 2 (Linke Seite des Fahrzeugs): Wenn sich das Fahrzeug dem Depot nähert oder von diesem wegfährt, muss sich die Bordsteinkante auf der linken Seite des Fahrzeugs befinden. Wenden ist verboten. Dies wird üblicherweise für Fahrzeuge wie Busse verwendet, die an einer Bushaltestelle auf der linken Seite halten müssen.
  • 3 (Wendeverbot): Wenn sich das Fahrzeug dem Depot nähert, kann sich die Bordkante auf jeder Seite des Fahrzeuges befinden; das Fahrzeug muss jedoch abfahren, ohne zu wenden.

Das Attribut CurbApproach ist für die Verwendung sowohl in Ländern mit Rechtsverkehr (Deutschland) als auch in Ländern mit Linksverkehr (Großbritannien) konzipiert. Stellen Sie sich zunächst ein Depot auf der linken Seite eines Fahrzeugs vor. Es befindet sich stets auf der linken Seite, egal ob das Fahrzeug auf der linken oder rechten Seite der Straße fährt. Was sich abhängig von den nationalen Verkehrsregeln ändern kann, ist Ihre Entscheidung, aus welcher Richtung Sie sich dem Depot nähern, so dass es sich entweder links oder rechts vom Fahrzeug befindet. Wenn sich beispielsweise am Depot keine Fahrspur zwischen Fahrzeug und Depot befinden soll, wählen Sie in Deutschland die rechte Seite des Fahrzeugs (1), in Großbritannien hingegen die linke Seite des Fahrzeugs (2) aus.

Bearing

Die Richtung, in die sich ein Punkt bewegt. Die Einheit ist Grad und wird im Uhrzeigersinn von geographisch Nord gemessen. Dieses Feld wird in Verbindung mit dem Feld BearingTol verwendet.

Peilungsdaten werden normalerweise automatisch von einem mobilen Gerät gesendet, das mit einem GPS-Empfänger ausgestattet ist. Sie sollten möglichst Peilungsdaten einbeziehen, wenn Sie eine sich bewegende Eingabeposition laden, beispielsweise einen Fußgänger oder ein Fahrzeug.

Durch die Verwendung dieses Feldes kann verhindert werden, dass Positionen falschen Kanten zugewiesen werden, was auftreten kann, wenn er sich zufällig in der Nähe einer Kreuzung oder einer Überführung befindet. Mithilfe der Peilung kann das Werkzeug einfacher ermitteln, auf welcher Straßenseite sich der Punkt befindet.

Weitere Informationen über Peilung und Peilungstoleranz

BearingTol

Anhand des Peilungstoleranzwertes wird ein Bereich mit zulässigen Peilungswerten erstellt, wenn Punkte über das Feld Bearing auf einer Kante bewegt werden. Wenn der Wert des Feldes Bearing innerhalb des Bereichs der zulässigen Werte liegt, die über die Peilungstoleranz auf einer Kante generiert werden, kann der Punkt dort als Netzwerkstandort hinzugefügt werden. Andernfalls wird der nächstgelegene Punkt an der übernächsten Kante ausgewertet.

Die Einheiten in Grad, und der Standardwert ist 30. Der Wert muss größer als 0 und kleiner als 180 sein. Der Wert 30 bedeutet, dass beim Hinzufügen eines Netzwerkstandortes auf einer Kante durch Network Analyst auf beiden Seiten der Kante (links und rechts) und in beiden Digitalisierrichtungen der Kante ein zulässiger Peilungswertebereich in einem Winkel von 15 Grad generiert wird.

Weitere Informationen über Peilung und Peilungstoleranz

NavLatency

Dieses Feld wird nur im Berechnungsprozess verwendet, wenn die Felder Bearing und BearingTol ebenfalls Werte enthalten. Die Eingabe eines NavLatency-Feldwertes ist jedoch optional, selbst wenn in Bearing und BearingTol Werte enthalten sind. NavLatency gibt an, welche Kosten voraussichtlich zwischen dem Senden von GPS-Informationen von einem sich bewegenden Fahrzeug zu einem Server und dem Empfang der verarbeiteten Route durch das Navigationsgerät des Fahrzeugs anfallen.

Die Einheiten von NavLatency entsprechen denen des Impedanzattributs.

Feature Set
Routen

Gibt mindestens eine Route an, welche die Fahrzeug- und Fahrereigenschaften beschreibt. Eine Route kann Start- und Enddurchführungszeiten (Depot), eine feste oder flexible Anfangszeit, zeitbasierte Betriebskosten, entfernungsbasierte Betriebskosten, mehrere Kapazitäten, verschiedene Einschränkungen hinsichtlich des Arbeitstags eines Fahrers usw. aufweisen.

Für die Routen können folgende Attribute angegeben werden:

Name

Der Name der Route. Der Name muss eindeutig sein.

Wenn der Feldwert NULL ist, erstellt das Werkzeug zum Zeitpunkt der Berechnung einen eindeutigen Namen. Daher ist die Eingabe eines Wertes in den meisten Fällen optional. Sie müssen jedoch einen Namen eingeben, wenn Ihre Analyse Unterbrechungen, Lager (Be-/Entladen), Routenzonen oder Aufträge umfasst, die einer Route vorab zugewiesen sind, da der Routenname in diesen Fällen als Fremdschlüssel verwendet wird. Bei Routennamen wird die Groß-/Kleinschreibung nicht beachtet.

StartDepotName

Der Name des Startdepots für die Route. Dieses Feld dient als Fremdschlüssel für das Feld Name in "Depots".

Wenn der Wert für StartDepotName NULL ist, beginnt die Route mit dem ersten zugewiesenen Auftrag. Wenn die Startposition des Fahrzeuges unbekannt oder für das Problem irrelevant ist, empfiehlt es sich, das Startdepot nicht anzugeben. Wenn StartDepotName jedoch NULL ist, kann EndDepotName nicht ebenfalls NULL sein.

Virtuelle Startdepots sind nicht zulässig, wenn Aufträge oder Depots in mehreren Zeitzonen vorliegen.

Wenn über die Route Lieferungen erfolgen und StartDepotName NULL ist, wird davon ausgegangen, dass das Fahrzeug vor Routenbeginn in einem virtuellen Depot beladen wird. Für eine Route ohne Stopps zum Be-/Entladen werden die zugehörigen Lieferaufträge (mit Werten für DeliveryQuantities ungleich 0 in "Aufträge") am Startdepot oder virtuellen Depot geladen. Für eine Route mit Stopps zum Be-/Entladen werden nur die Lieferaufträge vor dem ersten Stopp zum Be-/Entladen am Startdepot oder virtuellen Depot geladen.

EndDepotName

Der Name des Enddepots für die Route. Dieses Feld dient als Fremdschlüssel für das Feld Name in "Depots".

StartDepotServiceTime

Die Durchführungszeit am Startdepot. Mit dieser kann die Zeit zum Beladen des Fahrzeugs modelliert werden. Dieses Feld kann einen NULL-Wert enthalten. Ein NULL-Wert gibt an, dass keine Durchführungszeit vorhanden ist.

Die Einheit für diesen Feldwert wird mithilfe des Parameters Uhrzeitfeldeinheiten angegeben.

Bei der Durchführungszeit am Start- und Enddepot handelt es sich um feste Werte (von den Werten der Felder StartDepotServiceTime und EndDepotServiceTime angegeben), bei der das tatsächliche Beladen für eine Route nicht berücksichtigt wird. Beispielsweise kann die Zeit zum Beladen eines Fahrzeugs am Startdepot von der Größe der Aufträge abhängen. Als Durchführungszeiten für Depots können Werte zugewiesen werden, die einer vollständigen Lkw-Ladung oder einer durchschnittlichen Lkw-Ladung entsprechen, oder Sie können einen eigenen Schätzwert festlegen.

EndDepotServiceTime

Die Durchführungszeit am Enddepot. Mit dieser kann die Zeit zum Entladen des Fahrzeugs modelliert werden. Dieses Feld kann einen NULL-Wert enthalten. Ein NULL-Wert gibt an, dass keine Durchführungszeit vorhanden ist.

Die Einheit für diesen Feldwert wird mithilfe des Parameters Uhrzeitfeldeinheiten angegeben.

Bei der Durchführungszeit am Start- und Enddepot handelt es sich um feste Werte (von den Werten der Felder StartDepotServiceTime und EndDepotServiceTime angegeben), bei der das tatsächliche Beladen für eine Route nicht berücksichtigt wird. Beispielsweise kann die Zeit zum Beladen eines Fahrzeugs am Startdepot von der Größe der Aufträge abhängen. Als Durchführungszeiten für Depots können Werte zugewiesen werden, die einer vollständigen Lkw-Ladung oder einer durchschnittlichen Lkw-Ladung entsprechen, oder Sie können einen eigenen Schätzwert festlegen.

EarliestStartTime

Die früheste zulässige Startzeit für die Route. Diese wird vom Solver in Verbindung mit dem Zeitfenster des Startdepots verwendet, um realistische Routenstartzeiten zu bestimmen.

Dieses Feld darf keine NULL-Werte enthalten, und der Standardwert für die reine Uhrzeit ist 08:00 Uhr. Der Standardwert wird als 08:00 Uhr an dem für die Analyse festgelegten Standarddatum interpretiert.

Werden bei der Lösung eines Problems mehrere Zeitzonen erfasst, so entspricht die in EarliestStartTime angegebene Zeitzone derjenigen Zone, in der sich das Startdepot befindet.

LatestStartTime

Die späteste zulässige Startzeit für die Route.

Dieses Feld darf keine NULL-Werte enthalten, und der Standardwert für die reine Uhrzeit ist 10:00 Uhr. Der Standardwert wird als 10:00 Uhr an dem für die Analyse festgelegten Standarddatum interpretiert.

Werden bei der Lösung eines Problems mehrere Zeitzonen erfasst, so entspricht die in LatestStartTime angegebene Zeitzone derjenigen Zone, in der sich das Startdepot befindet.

ArriveDepartDelay

In diesem Feld wird die Fahrzeitdauer gespeichert, die erforderlich ist, um das Fahrzeug auf normale Reisegeschwindigkeiten zu beschleunigen, bis zu einem Stopp zu verlangsamen und in das bzw. aus dem Netzwerk zu bewegen (z. B. in die Parkposition und aus der Parkposition). Indem ein Wert für ArriveDepartDelay verwendet wird, wird der VRP-Solver davon abgehalten, viele Routen zum Abarbeiten von Aufträgen mit physischer Lagegleichheit zu senden.

Die Kosten für diese Eigenschaft treten zwischen Besuchen bei nicht lagegleichen Aufträgen, Depots und Lagern zum Be-/Entladen auf. Wenn eine Route beispielsweise an einem Depot startet und zum Besuch des ersten Auftrags führt, wird die Gesamtverzögerung bei der Ankunft und Abfahrt der Fahrzeit hinzugefügt. Dasselbe gilt für die Fahrt vom ersten Auftrag zum zweiten Auftrag. Wenn der zweite und dritte Auftrag lagegleich sind, wird der Wert unter ArriveDepartDelay dazwischen nicht hinzugefügt, da sich das Fahrzeug nicht bewegen muss. Wenn die Route dann zu einem Lager zum Be-/Entladen führt, wird der Wert der Fahrzeit wieder hinzugefügt.

Obwohl ein Fahrzeug bei einer Pause die Fahrt verlangsamen und unterbrechen und danach wieder beschleunigen muss, kann der VRP-Solver den Wert unter ArriveDepartDelay für Pausen nicht hinzufügen. Dies bedeutet, dass die Verzögerung bei der Ankunft und Abfahrt nur einmal hinzugefügt wird (und nicht zweimal), wenn ein Fahrzeug auf einer Route den Ort eines Auftrags verlässt, für eine Pause anhält und dann weiter zum nächsten Auftrag fährt.

Nehmen Sie beispielsweise an, dass für ein Hochhaus fünf lagegleiche Aufträge vorliegen, die mit drei verschiedenen Routen abgearbeitet werden sollen. Dies bedeutet, dass drei Verzögerungen bei der Ankunft und Abfahrt anfallen. Drei Fahrer müssen separat einen Parkplatz finden und dasselbe Gebäude betreten. Wenn die Aufträge jedoch mit einer Route abgearbeitet werden können, muss nur ein Fahrer einen Parkplatz finden und das Gebäude betreten, und es fällt nur eine Verzögerung bei der Ankunft und Abfahrt an. Da das Ziel des VRP-Solvers die Kostenreduzierung ist, versucht er, die Verzögerungen bei der Ankunft und Abfahrt zu beschränken, identifiziert also die Option mit nur einer Route. (Beachten Sie, dass ggf. mehrere Routen verwendet werden müssen, wenn andere Einschränkungen – z. B. Besonderheiten, Zeitfenster oder Kapazitäten – dies erfordern.)

Die Einheit für diesen Feldwert wird mithilfe des Parameters time_units angegeben.

Capacities

Die maximale Kapazität des Fahrzeugs. Sie können die Kapazität in einer beliebigen Dimension angeben, wie Gewicht, Volumen oder Menge. Sie können auch mehrere Dimensionen, wie beispielsweise Gewicht und Volumen, angeben.

Geben Sie Kapazitäten ohne die Angabe von Einheiten ein. Beispiel: Wenn Ihr Fahrzeug maximal 18 Tonnen transportieren kann, geben Sie 18 ein. Sie müssen daran denken, dass der Wert in Tonnen angegeben ist.

Wenn Sie mehrere Maße angeben, trennen Sie die numerischen Werte mit Leerzeichen. Wenn Sie beispielsweise das Gewicht und Volumen einer Lieferung mit einem Gewicht von 900 Kilogramm und einem Volumen von 3 Kubikmetern erfassen, geben Sie "900 3" ein. Sie müssen sich erneut die Einheiten merken, in diesem Fall Kilogramm und Kubikmeter. Sie müssen sich ferner merken, in welcher Abfolge die Werte und ihre entsprechenden Einheiten eingegeben werden.

Die Einheiten und deren Reihenfolge sind aus mehreren Gründen wichtig: Erstens können Sie so die Informationen auch später richtig deuten, und zweitens können Sie angemessene Werte für die Felder DeliveryQuantities und PickupQuantities für die Aufträge eingeben. Beachten Sie, dass der VRP-Solver gleichzeitig Capacities, DeliveryQuantities undPickupQuantities referenziert, um sicherzustellen, dass eine Route nicht überlastet wird. In das Feld können keine Einheiten eingegeben werden, und das VRP-Werkzeug kann Einheiten nicht konvertieren. Sie müssen die Werte für die drei Felder mit denselben Einheiten und derselben Einheitenreihenfolge eingeben, um sicherzustellen, dass die Werte korrekt interpretiert werden. Wenn unterschiedliche Einheiten verwendet werden oder die Reihenfolge in einem der drei Felder geändert wird, erhalten Sie unerwünschte Ergebnisse ohne Warnmeldungen. Es wird empfohlen, vorher einen Einheiten- und Einheitensequenzstandard einzurichten und diesen bei der Eingabe von Werten für diese drei Felder einzuhalten.

Eine leere Zeichenfolge oder ein NULL-Wert gibt an, dass alle Werte Null sind. Kapazitätswerte dürfen nicht negativ sein.

Wenn die Anzahl der Werte in dem Feld Capacities im Verhältnis zum Feld DeliveryQuantities oder PickupQuantities unter "Aufträge" nicht ausreichend ist, werden die restlichen Werte als 0 behandelt.

Der VRP-Solver führt lediglich einen einfachen booleschen Test durch, um festzustellen, ob die Kapazitäten überschritten werden. Wenn der Kapazitätswert einer Route größer als oder gleich der gesamten transportierten Menge ist, geht der VRP-Solver davon aus, dass die Fracht in das Fahrzeug passt. Abhängig von der tatsächlichen Form der Fracht und des Fahrzeugs kann diese Annahme jedoch falsch sein. Der VRP-Solver lässt beispielsweise zu, dass eine Kugel mit 1.000 Kubikfuß in einen Lkw mit 1.000 Kubikfuß und einer Breite von 8 Fuß verladen wird. Tatsächlich hat die Kugel jedoch einen Durchmesser von 12,6 Fuß und passt nicht in den Lkw mit einer Breite von 8 Fuß.

FixedCost

Ein fester Geldbetrag, der nur anfällt, wenn die Route in einer Lösung verwendet wird (d. h. der Route sind Aufträge zugewiesen). Dieses Feld kann NULL-Werte enthalten. Ein NULL-Wert gibt an, dass keine festen Kosten vorhanden sind. Diese Kosten sind Bestandteil der Gesamtbetriebskosten für die Route.

CostPerUnitTime

Der Geldbetrag – pro Zeiteinheit an Arbeit – der für die Gesamtroutendauer, einschließlich Fahrzeiten, Durchführungszeiten und Wartezeiten bei Aufträgen, Depots und Pausen, anfällt. Dieses Feld darf keinen NULL-Wert enthalten und der Standardwert ist 1,0.

Die Einheit für diesen Feldwert wird mithilfe des Parameters time_units angegeben.

CostPerUnitDistance

Der – pro Einheit gefahrener Strecke – für die Routenlänge (gesamte Reisestrecke) anfallende Geldbetrag. Dieses Feld kann NULL-Werte enthalten. Ein NULL-Wert gibt an, dass keine Kosten vorhanden sind.

Die Einheit für diesen Feldwert wird mithilfe des Parameters distance_units angegeben.

OvertimeStartTime

Die Dauer der regulären Arbeitszeit, bevor die Berechnung der Überstunden beginnt. Dieses Feld kann NULL-Werte enthalten. Ein NULL-Wert gibt an, dass keine Überstunden angewendet werden.

Die Einheit für diesen Feldwert wird mithilfe des Parameters time_units angegeben.

Wenn dem Fahrer beispielsweise bei Überschreiten einer Gesamtroutendauer von 8 Stunden Überstunden bezahlt werden müssen und als Zeiteinheiten Minuten festgelegt sind, wird OvertimeStartTime als 480 (8 Stunden * 60 Minuten/Stunde) angegeben.

CostPerUnitOvertime

Der pro Zeiteinheit von Überstunden anfallende Geldbetrag. Dieses Feld kann NULL-Werte enthalten. Ein NULL-Wert gibt an, dass der Wert von CostPerUnitOvertime mit dem Wert von CostPerUnitTime identisch ist.

MaxOrderCount

Die maximal zulässige Anzahl von Aufträgen für die Route. Dieses Feld darf keine NULL-Werte enthalten, und der Standardwert beträgt 30.

MaxTotalTime

Die maximal zulässige Routendauer. Die Routendauer umfasst Fahrzeiten sowie Durchführungs- und Wartezeiten bei Aufträgen, Depots und Pausen. Dieses Feld kann NULL-Werte enthalten. Ein NULL-Wert gibt an, dass für die Routendauer keine Einschränkung gilt.

Die Einheit für diesen Feldwert wird mithilfe des Parameters time_units angegeben.

MaxTotalTravelTime

Die maximal zulässige Fahrzeit für die Route. Die Fahrzeit umfasst nur die Zeit für Fahrten im Netzwerk, ohne Durchführungs- oder Wartezeit.

Dieses Feld kann NULL-Werte enthalten. Ein NULL-Wert gibt an, dass für die maximal zulässige Fahrzeit keine Einschränkung gilt. Dieser Feldwert darf nicht größer als der Wert des Feldes MaxTotalTime sein.

Die Einheit für diesen Feldwert wird mithilfe des Parameters time_units angegeben.

MaxTotalDistance

Die maximal zulässige Reisestrecke für die Route.

Die Einheit für diesen Feldwert wird mithilfe des Parameters distance_units angegeben.

Dieses Feld kann NULL-Werte enthalten. Ein NULL-Wert gibt an, dass für die maximal zulässige Reisestrecke keine Einschränkung gilt.

SpecialtyNames

Eine durch Leerzeichen getrennte Zeichenfolge mit den Namen der für den Auftrag erforderlichen Besonderheiten. Ein NULL-Wert gibt an, dass der Auftrag keine Besonderheiten erfordert.

Die Schreibweise der Besonderheiten in den Klassen "Orders" und "Routes" muss exakt übereinstimmen, sodass der VRP-Solver sie verknüpfen kann.

Um die Bedeutung und Funktionsweise von Besonderheiten zu veranschaulichen, nehmen Sie an, dass eine Firma, die Grünanlagen pflegt und Baumschnittarbeiten durchführt, für einige Aufträge ein Fahrzeug mit einem Hubsteiger benötigt, um große Bäume zu beschneiden. Das Unternehmen gibt für diese Aufträge Hubsteiger in das Feld "SpecialtyNames" ein, um auf diese besondere Anforderung hinzuweisen. SpecialtyNames bleibt NULL für die anderen Aufträge. Entsprechend gibt die Firma "Hubsteiger" auch in das Feld SpecialtyNames von Routen ein, die von Fahrzeugen mit hydraulischen Auslegern befahren werden. Für die anderen Routen bleibt der Wert des Feldes NULL. Zum Zeitpunkt der Berechnung weist der VRP-Solver jeder Route Aufträge ohne besondere Anforderungen zu, er weist jedoch Aufträge, die Fahrzeuge mit Hubsteiger erfordern, nur den Routen zu, die darüber verfügen.

AssignmentRule

Gibt die Regel zum Zuweisen des Auftrags zu einer Route an. Der Feldwert wird als eine der nachfolgenden Ganzzahlen angegeben (verwenden Sie nicht den Namen in Klammern, sondern den numerischen Code):

Dieses Feld darf keinen NULL-Wert enthalten.

  • 1 (Einschließen): Die Route wird in den Berechnungsvorgang einbezogen. Dies ist der Standardwert.
  • 2 (Ausschließen): Die Route wird aus dem Berechnungsvorgang ausgeschlossen.

Record Set
Unterbrechungen

Das sind die Unterbrechungszeiten bzw. Pausenzeiten für Routen in einem Vehicle Routing Problem. Eine Pausenzeit ist mit genau einer Route verknüpft und kann nach Abschluss eines Auftrags, auf dem Weg zu einem Auftrag oder vor dem Abarbeiten eines Auftrags eingelegt werden. Sie verfügt über eine Startzeit und eine Dauer, für die der Fahrer entweder bezahlt oder nicht bezahlt wird. Sie können drei Optionen verwenden, um den Beginn einer Pausenzeit festzulegen: Sie können ein Zeitfenster, eine maximale Fahrzeit oder eine maximale Arbeitszeit eingeben.

Zeitfenster-Pausenzeiten sind nicht zulässig, wenn Aufträge oder Depots in mehreren Zeitzonen vorliegen, es sei denn, die Zeiten sind in UTC angegeben.

Bei der Angabe der Pausenzeiten können Sie mithilfe der folgenden Attribute deren jeweilige Eigenschaften, darunter Name und Durchführungszeit, festlegen:

ObjectID

Das vom System verwaltete ID-Feld.

RouteName

Der Name der Route, auf die die Pausenzeit angewendet wird. Eine Pausenzeit wird nur einer Route zugewiesen, aber einer Route können mehrere Pausenzeiten zugewiesen werden.

Dieses Feld ist ein Fremdschlüssel für das Feld Name in Routen und darf keinen NULL-Wert enthalten.

Precedence

Mithilfe von Vorrangswerten wird die Abfolge von Pausenzeiten einer Route festgelegt. Pausenzeiten mit einem Vorrangswert von 1 treten vor Pausenzeiten mit einem Vorrangswert von 2 ein usw.

Alle Pausenzeiten müssen unabhängig davon, ob es sich um Zeitfenster-Pausenzeiten, Pausenzeiten wegen maximaler Fahrzeit oder Pausenzeiten wegen maximaler Arbeitszeit handelt, einen Vorrangswert aufweisen.

ServiceTime

Die Dauer der Pause. Dieses Feld darf keinen NULL-Wert enthalten. Der Standardwert ist 60.

Die Einheit für diesen Feldwert wird mithilfe des Parameters time_units angegeben.

TimeWindowStart

Die Anfangszeit für das Zeitfenster der Pausenzeit. Es müssen sowohl eine Start- als auch eine Endzeit angegeben werden.

Wenn dieses Feld über einen Wert verfügt, müssen die Feldwerte für MaxTravelTimeBetweenBreaks undMaxCumulWorkTime NULL sein. Außerdem müssen alle anderen Pausenzeiten in der Analyse NULL-Werte für MaxTravelTimeBetweenBreaks und MaxCumulWorkTime aufweisen.

Zur Berechnungszeit tritt ein Fehler auf, falls eine Route über mehrere Pausenzeiten mit überlappenden Zeitfenstern verfügt.

Die Zeitfensterfelder in Pausen dürfen einen reinen Uhrzeitwert oder einen Wert für Datum und Uhrzeit enthalten. Dabei darf es sich nicht um ganze Zahlen handeln, die Millisekunden seit Unixzeit darstellen. Die Zeitzone für Zeitfensterfelder wird mit dem Parameter time_zone_usage_for_time_fields angegeben. Wenn ein Zeitfeld, z. B. TimeWindowStart, einen reinen Uhrzeitwert enthält (z. B. 12:00 Uhr), wird angenommen, dass das Datum dem vom Parameter Standarddatum (default_date in Python) angegebenen Datum entspricht. Wenn Sie Datums- und Uhrzeitwerte verwenden (z. B. 7/11/2012, 12:00 Uhr), können Sie Zeitfenster über mehrere Tage angeben. Dies empfiehlt sich, wenn eine Pause kurz vor oder nach Mitternacht eingelegt werden soll.

TimeWindowEnd

Die Endzeit für das Zeitfenster der Pausenzeit. Es müssen sowohl eine Start- als auch eine Endzeit angegeben werden.

Wenn dieses Feld über einen Wert verfügt, müssen die Feldwerte für MaxTravelTimeBetweenBreaks undMaxCumulWorkTime NULL sein. Alle anderen Pausenzeiten in der Analyse müssen NULL-Werte für MaxTravelTimeBetweenBreaks und MaxCumulWorkTime aufweisen.

MaxViolationTime

Dieses Feld gibt den maximal zulässigen Zeitverstoß für eine Zeitfenster-Pausenzeit an. Eine Zeitfensterverletzung liegt vor, wenn die Ankunftszeit außerhalb der Zeitspanne liegt.

Der Wert 0 gibt an, dass keine Zeitfensterverletzung zulässig ist. Das heißt, es handelt sich um ein hartes Zeitfenster. Ein Wert ungleich 0 gibt die maximale Verspätung an. Beispielsweise kann die Pause 30 Minuten nach dem Ende des zugehörigen Zeitfensters beginnen, jedoch wird die Verspätung entsprechend der Eigenschaft "Gewichtung der Zeitfensterverletzung" sanktioniert.

Diese Eigenschaft kann NULL sein. Ein NULL-Wert mit den Werten TimeWindowStart und TimeWindowEnd gibt an, dass der zulässige Zeitverstoß unbegrenzt ist. Wenn MaxTravelTimeBetweenBreaks oder MaxCumulWorkTime über einen Wert verfügt, muss MaxViolationTime NULL sein.

Die Einheit für diesen Feldwert wird mithilfe des Parameters time_units angegeben.

MaxTravelTimeBetweenBreaks

Die maximale Fahrzeit, die akkumuliert werden kann, bevor die Pausenzeit genommen wird. Die Fahrzeit wird entweder ab dem Ende der vorherigen Pause oder, falls noch keine Pause eingelegt wurde, ab dem Start der Route akkumuliert.

Wenn es sich um die letzte Pausenzeit der Route handelt, gibt MaxTravelTimeBetweenBreaks auch die maximale Fahrzeit an, die von der letzten Pause bis zum Enddepot akkumuliert werden kann.

Mithilfe dieses Feldes kann der Zeitraum beschränkt werden, wie lange eine Person fahren darf, bis eine Pausenzeit erforderlich ist. Wenn als Zeiteinheit für die Analyse Minuten angegeben werden und MaxTravelTimeBetweenBreaks den Wert 120 aufweist, kann der Fahrer nach zwei Stunden Fahrt eine Pause einlegen. Um eine Pause nach zwei weiteren Stunden Fahrt zuzuweisen, muss für die Eigenschaft MaxTravelTimeBetweenBreaks der zweiten Pause der Wert 120 festgelegt werden.

Wenn dieses Feld über einen Wert verfügt, müssen TimeWindowStart, TimeWindowEnd,MaxViolationTime und MaxCumulWorkTime NULL sein, damit eine Analyse erfolgreich berechnet werden kann.

Die Einheit für diesen Feldwert wird mithilfe des Parameters time_units angegeben.

MaxCumulWorkTime

Die maximale Arbeitszeit, die akkumuliert werden kann, bevor die Pausenzeit genommen wird. Arbeitszeit wird immer ab dem Anfang der Route akkumuliert.

Die Arbeitszeit ist die Summe der Fahrzeit und Durchführungszeiten für Aufträge, Depots und Pausenzeiten. Beachten Sie jedoch, dass die Wartezeit darin nicht enthalten ist. Dies ist die Zeit, die eine Route (bzw. ein Fahrer) am Ort eines Auftrags oder an einem Depot mit dem Warten auf das Beginn des Zeitfensters verbringt.

Dieses Feld beschränkt den Zeitraum, wie lange eine Person arbeiten darf, bis eine Pausenzeit erforderlich ist. Wenn als Zeiteinheit für die Analyse Minuten angegeben werden, MaxCumulWorkTime den Wert 120 enthält und ServiceTime den Wert 15 aufweist, kann der Fahrer nach zwei Stunden Arbeit eine Pause von 15 Minuten einlegen.

Angenommen, für das letzte Beispiel ist nach weiteren drei Stunden Arbeit eine zweite Pause erforderlich. Um diese Pause anzugeben, geben Sie 315 (fünf Stunden und fünfzehn Minuten) als MaxCumulWorkTime-Wert der zweiten Pause ein. In dieser Zahl sind die MaxCumulWorkTime- und ServiceTime-Werte der vorherigen Pausenzeit sowie die drei zusätzlichen Stunden Arbeitszeit vor dem Gewähren der zweiten Pause enthalten. Bedenken Sie dabei Folgendes: Um zu vermeiden, dass Pausen wegen maximaler Arbeitszeit vorzeitig eingelegt werden, wird die Arbeitszeit ab dem Anfang der Route akkumuliert. Außerdem enthält die Arbeitszeit die Durchführungszeiten von vorher besuchten Depots, Aufträgen und Pausenzeiten.

Wenn dieses Feld über einen Wert verfügt, müssen TimeWindowStart, TimeWindowEnd,MaxViolationTime und MaxTravelTimeBetweenBreaks NULL sein, damit eine Analyse erfolgreich berechnet werden kann.

Die Einheit für diesen Feldwert wird mithilfe des Parameters time_units angegeben.

IsPaid

Ein boolescher Wert, der angibt, ob die Pausenzeit bezahlt wird. Wird dieser Feldwert auf 1 gesetzt, bedeutet dies, dass die Pausenzeit in die Berechnung der Routenkosten sowie die Bestimmung der Überstunden einbezogen wird. Der Wert 0 bedeutet das Gegenteil. Der Standardwert ist 1.

Sequence

Gibt die Sequenz der Pause auf der zugehörigen Route an. Diese Feld kann NULL-Werte enthalten, die dazu führen, dass der Solver die Pausensequenz zuweist. Wenn Sequenzwerte angegeben werden, sollten sie für jede Route positiv und eindeutig sein (gültig für Depotstopps zum Be-/Entladen, Aufträge und Pausenzeiten), müssen jedoch nicht bei 1 beginnen und nicht zusammenhängend sein.

Record Set
Zeiteinheiten

Die Zeiteinheiten für alle zeitbasierten Feldwerte in der Analyse. Viele Features und Datensätze in einer VRP-Analyse weisen Felder zum Speichern von Zeitwerten auf, wie ServiceTime für Aufträge und CostPerUnitTime für Routen. Um Dateneingabeanforderungen zu minimieren, umfassen diese Feldwerte keine Einheiten. Stattdessen müssen alle entfernungsbasierten Feldwerte in den gleichen Einheiten eingegeben werden. Mit diesem Parameter werden die Einheiten dieser Werte angegeben.

Zeitbasierte Ausgabefelder verwenden dieselben durch diesen Parameter angegebenen Einheiten.

  • SekundenDie Zeiteinheit in Sekunden.
  • MinutenDie Zeiteinheit in Minuten.
  • StundenDie Zeiteinheit in Stunden.
  • TageDie Zeiteinheit in Tagen.
String
Entfernungseinheiten

Die Entfernungseinheiten für alle entfernungsbasierten Feldwerte in der Analyse. Viele Features und Datensätze in einer VRP-Analyse weisen Felder zum Speichern von Entfernungswerten auf, wie MaxTotalDistance undCostPerUnitDistance für Routen. Um Dateneingabeanforderungen zu minimieren, umfassen diese Feldwerte keine Einheiten. Stattdessen müssen alle entfernungsbasierten Feldwerte in den gleichen Einheiten eingegeben werden. Mit diesem Parameter werden die Einheiten dieser Werte angegeben.

Entfernungsbasierte Ausgabefelder verwenden dieselben durch diesen Parameter angegebenen Einheiten.

  • MeterDie lineare Einheit in Meter.
  • KilometerDie lineare Einheit in Kilometer.
  • FußDie lineare Einheit in Fuß.
  • YardDie lineare Einheit in Yard.
  • MeilenDie lineare Einheit in Meilen.
  • SeemeilenDie lineare Einheit in Seemeilen.
String
Analyseregion
(optional)

Die Region, in der die Analyse durchgeführt werden soll. Wird für diesen Parameter kein Wert angegeben, ermittelt das Werkzeug anhand der Position der Eingabepunkte den Namen der Region automatisch. Die Angabe des Regionsnamens ist nur erforderlich, wenn die automatische Erkennung des Regionsnamens für Ihre Eingaben nicht korrekt ist.

Geben Sie zur Angabe der Region einen der folgenden Werte an:

  • EuropaAnalyseregion: Europa.
  • JapanAnalyseregion: Japan.
  • KoreaAnalyseregion: Korea.
  • Naher Osten und AfrikaAnalyseregion: Naher Osten und Afrika.
  • NordamerikaAnalyseregion: Nordamerika.
  • SüdamerikaAnalyseregion: Südamerika.
  • SüdasienAnalyseregion: Südasien.
  • ThailandAnalyseregion: Thailand.
Vorversion:

Die folgenden Regionsnamen werden nicht mehr unterstützt und werden in zukünftigen Versionen entfernt. Wenn Sie einen der veralteten Regionsnamen angeben, weist das Werkzeug automatisch einen unterstützten Regionsnamen für Ihre Region zu.

  • Bei "Greece" werden Sie an "Europe" umgeleitet.
  • Bei "India" werden Sie an "SouthAsia" umgeleitet.
  • Bei "Oceania" werden Sie an "SouthAsia" umgeleitet.
  • Bei "SouthEastAsia" werden Sie an "SouthAsia" umgeleitet.
  • Bei "Taiwan" werden Sie an "SouthAsia" umgeleitet.

String
Standarddatum
(optional)

Das Standarddatum für Zeitfeldwerte, die einen Zeitpunkt, jedoch kein Datum angeben. Sie können diese Zeitfelder in verschiedenen Eingabeparametern antreffen, z. B. die Attribute ServiceTime in den Auftrags- und Pausenparametern.

Date
Wenden an Kreuzungen
(optional)

Gibt an, ob Wenden an Kreuzungen im Einzugsgebiet erlaubt oder verboten ist. Zum besseren Verständnis der Parameterwerte sollten Sie sich mit der folgenden Terminologie vertraut machen: ein Knoten ist ein Punkt, an dem ein Straßenabschnitt endet und potenziell mit einem oder mehreren anderen Segmenten verbunden ist; ein Pseudo-Knoten ist ein Punkt, an dem genau zwei Straßen miteinander verbunden sind; eine Kreuzung ist ein Punkt, an dem drei oder mehr Straßen zusammentreffen; und eine Sackgasse ist ein Punkt, an dem ein Straßenabschnitt endet, ohne mit einem weiteren verbunden zu sein.

Der von Ihnen für diesen Parameter eingegebene Wert wird ignoriert, es sei denn, Reisemodus ist auf Benutzerdefiniert festgelegt, was dem Standardwert entspricht.

  • Wenden zulassenWenden ist überall erlaubt. Wenden zuzulassen bedeutet, dass das Fahrzeug bei einem Knoten wenden und auf der gleichen Straße wieder zurückfahren kann. Dies ist der Standardwert.
  • Wenden nicht zulassenWenden ist an allen Knoten verboten: Pseudo-Knoten, Kreuzungen und Sackgassen. Beachten Sie jedoch, dass Wenden erlaubt sein kann, auch wenn diese Option gewählt wurde. Zum Vermeiden von Wendemanövern an Ereignissen und Einrichtungen legen Sie im Feldwert CurbApproach fest, dass Wenden verboten ist.
  • Nur bei Sackgassen zulassenWenden ist an allen Knoten verboten, es sei denn, es ist nur eine verbundene Straße vorhanden (Sackgasse).
  • Nur bei Sackgassen und Kreuzungen zulassenWenden ist an Pseudo-Knoten verboten, an denen genau zwei angrenzende Straßen aufeinander treffen, jedoch an Kreuzungen und in Sackgassen erlaubt. Damit wird verhindert, dass in der Straßenmitte gewendet wird, wo ein Straßenabschnitt in Form zweier Straßen-Features digitalisiert ist.
String
Faktor für Zeitfenster
(optional)

Gibt an, wie wichtig die Einhaltung von Zeitfenstern ist.

  • HochDer Schwerpunkt liegt auf einer rechtzeitigen Ankunft statt auf der Minimierung der Fahrzeiten. Beispielsweise wählen Unternehmen mit zeitkritischen Lieferungen oder einem Schwerpunkt auf Kundenservice "Hoch" aus.
  • MittelDer Schwerpunkt liegt auf einem ausgewogenen Verhältnis zwischen der Minimierung der Fahrzeiten und der Ankunft innerhalb der Zeitfenster. Dies ist der Standardwert.
  • NiedrigDer Schwerpunkt liegt auf der Minimierung der Fahrzeiten statt auf der rechtzeitigen Ankunft. Sie können ggf. diese Einstellung wählen, wenn Sie einen wachsenden Rückstand an Service-Anforderungen bewältigen müssen. Um an einem Tag mehr Aufträge durchführen zu können und den Rückstand abzuarbeiten, können Sie "Niedrig" auswählen, obwohl den Kunden durch die Verspätungen Unannehmlichkeiten entstehen können.
String
Raumcluster-Routen
(optional)

Gibt an, ob Routen räumlich gruppiert werden.

  • CLUSTER (True): Für alle Routen werden automatisch dynamische Routenschwerpunkte erstellt. Die einer individuellen Route zugewiesenen Aufträge werden räumlich gruppiert. Beim Bilden von Clustern für Aufträge befinden sich Routen häufig in kleineren Gebieten. Verschiedene Routenlinien schneiden sich weniger oft. Die Gesamtfahrzeiten werden jedoch erhöht.
  • NO_CLUSTER (False): Es werden keine dynamischen Routenschwerpunkte erstellt. Wählen Sie diese Option, wenn Routenzonen angegeben sind.

Boolean
Routenzonen
(optional)

Weist Arbeitsgebiete für bestimmte Routen aus. Eine Routenzone ist ein Polygon-Feature. Mit ihr werden Routen eingeschränkt, um nur die Aufträge durchzuführen, die im angegebenen Gebiet oder in dessen Nähe liegen. Nachfolgend finden Sie Beispiele für Fälle, in denen sich Routenzonen als sinnvoll erweisen:

  • Einige Ihrer Mitarbeiter verfügen nicht über die erforderlichen Genehmigungen für die Durchführung von Arbeit in bestimmten Bundesländern oder Gemeinden. Sie können eine harte Routenzone erstellen, damit diese Mitarbeiter nur Aufträge in Gebieten erreichen, in denen die Anforderungen erfüllt werden.
  • Bei einem Ihrer Fahrzeuge treten häufig Pannen auf und es soll nur Aufträge an Standorten durchführen, die sich in der Nähe Ihrer Reparaturwerkstatt befinden, um die Reaktionszeit zu minimieren. Sie können eine weiche oder harte Routenzone erstellen, um das Fahrzeug in der Nähe zu behalten.

Bei der Angabe der Routenzonen müssen Sie mithilfe der folgenden Attribute deren jeweilige Eigenschaften, z. B. die zugeordnete Route, festlegen:

ObjectID

Das vom System verwaltete ID-Feld.

RouteName

Der Name der Route, für die diese Zone gilt. Einer Routenzone kann maximal eine Route zugeordnet sein. Dieses Feld darf keine NULL-Werte enthalten, und es fungiert als Fremdschlüssel für das Feld Name in Routen.

IsHardZone

Ein boolescher Wert, der eine harte oder weiche Routenzone angibt. Der Wert "Wahr" gibt an, dass es sich um eine harte Routenzone handelt. Dies bedeutet, dass ein Auftrag, der sich außerhalb des Routenzonenpolygons befindet, der Route nicht zugewiesen werden kann. Der Standardwert ist 1 (Wahr). Der Wert "False"(0) gibt an, dass Aufträge außerhalb des Routenzonenpolygons dennoch zugewiesen werden können, die Kosten für die Durchführung des Auftrags jedoch mit einer Funktion gewichtet werden, die auf der euklidischen Entfernung von der Routenzone basiert. Im Grunde bedeutet dies, dass die Wahrscheinlichkeit einer Zuweisung des Auftrags zu der Route umso geringer ist, je größer die direkte Entfernung der weichen Zone vom Auftrag ist.

Feature Set
Lager (Be-/Entladen)
(optional)

Gibt die Zwischendepots an, über die die Routen führen können, um die Fracht für Auslieferungs- oder Abholungsaufträge zu laden oder zu entladen. Über "Lager (Be-/Entladen)" wird eine Route mit einem Depot verknüpft. Die Beziehung gibt an, dass für die Route das Be- oder Entladen am zugeordneten Depot möglich ist.

Lager zum Be-/Entladen können zum Modellieren von Szenarien verwendet werden, in denen ein Fahrzeug am Startdepot eine vollständige Ladung von Lieferungen abholt, die Aufträge durchführt, zum Depot zurückkehrt, um neue Lieferungen zu laden, und weitere Aufträge durchführt. Beispielsweise kann bei der Lieferung von Propangas das Fahrzeug mehrere Lieferungen durchführen, bis der Tank nahezu oder vollständig leer ist, einen Stützpunkt zum Nachfüllen aufsuchen und dann weitere Lieferungen durchführen.

Hier sind folgende Regeln und Optionen zu beachten:

  • Die Stelle zum Nachladen/Entladen bzw. der Standort zum Be-/Entladen muss nicht mit dem Start- oder Enddepot übereinstimmen.
  • Jede Route kann eine oder mehrere vorab festgelegte Standorte zum Be-/Entladen aufweisen.
  • Ein Standort zum Be-/Entladen kann mehrmals auf einer einzelnen Route verwendet werden.
  • In einigen Fällen sind möglicherweise für eine Route mehrere potenzielle Standorte zum Be-/Entladen vorhanden, und vom Solver wird der nächste verfügbare Standort zum Be-/Entladen bestimmt.

Bei der Angabe von Lagern zum Be-/Entladen müssen Sie mithilfe von Attributen deren jeweilige Eigenschaften, z. B. den Namen des Depots, in dem das Lagern zum Be-/Entladen erfolgen kann, festlegen:

ObjectID

Das vom System verwaltete ID-Feld.

DepotName

Der Name des Depots, bei dem das Be-/Entladen erfolgt. Dieses Feld darf keinen NULL-Wert enthalten, und es fungiert als Fremdschlüssel für das Feld Name in Depots.

RouteName

Der Name der Route, auf die dieses Lager zum Be-/Entladen angewendet wird. Dieses Feld darf keinen NULL-Wert enthalten, und es fungiert als Fremdschlüssel für das Feld Name in Routen.

ServiceTime

Die Durchführungszeit für das Be-/Entladen. Dieses Feld kann einen NULL-Wert enthalten. Ein NULL-Wert gibt an, dass keine Durchführungszeit vorhanden ist.

Die Einheit für diesen Feldwert wird mithilfe des Parameters time_units angegeben.

Die Zeit zum Beladen eines Fahrzeugs an einem Depot zum Be-/Entladen kann von der Größe des Fahrzeugs und seinem Beladungszustand abhängen. Die Durchführungszeit für das Be-/Entladen an einem Lager ist ein fester Wert, bei dem das tatsächliche Beladen nicht berücksichtigt wird. Für die Durchführungszeit zum Be-/Entladen sollte daher ein Wert festgelegt werden, der einer vollständigen Lkw-Ladung oder einer durchschnittlichen Lkw-Ladung entspricht, oder Sie können einen eigenen Schätzwert für die Zeit festlegen.

Record Set
Auftragspaare
(optional)

Kombiniert Abhol- und Lieferaufträge, sodass sie über dieselbe Route abgearbeitet werden. Die Angabe von Auftragspaaren verhindert, dass die Analyse einer Route nur einen der Aufträge zuweist – entweder werden beide Aufträge derselben Route zugewiesen, oder keiner der Aufträge wird zugewiesen.

Zuweilen müssen Abholung und Lieferung der Aufträge paarweise zusammengefasst werden. Beispiel: Eine Kurierfirma benötigt eine Route, auf der ein wichtiges Paket abgeholt und ohne Rückkehr zum Depot oder zur Sortierstation geliefert wird, um die Lieferzeit zu minimieren. Durch die Verwendung von Auftragspaaren können diese zusammengehörigen Aufträge in der entsprechenden Reihenfolge derselben Route zugewiesen werden. Es können Einschränkungen für die Dauer zugewiesen werden, für die ein Paket im Fahrzeug bleiben darf. Beispiel: Eine Blutprobe muss innerhalb von zwei Stunden von der Arztpraxis in das Labor gebracht werden.

Einige Situationen können zwei Auftragspaare erfordern. Angenommen, Sie möchten eine Seniorin von ihrer Wohnung zum Arzt und zurück in ihre Wohnung fahren. Bei der Fahrt von ihrer Wohnung zur Arztpraxis handelt es sich um ein Auftragspaar mit einer gewünschten Ankunftszeit bei der Arztpraxis, und bei der Fahrt von der Arztpraxis zu ihrer Wohnung handelt es sich um ein weiteres Auftragspaar mit einer gewünschten Abholzeit.

Bei der Angabe von Auftragspaaren müssen Sie mithilfe von Attributen deren jeweilige Eigenschaften, darunter die Namen der beiden Aufträge, festlegen:

ObjectID

Das vom System verwaltete ID-Feld.

FirstOrderName

Der Name des ersten Auftrags des Paares. Dieses Feld dient als Fremdschlüssel für das Feld Name in Aufträgen.

SecondOrderName

Der Name des zweiten Auftrags des Paares. Dieses Feld dient als Fremdschlüssel für das Feld Name in Aufträgen.

Der erste Auftrag des Paares muss ein Abholungsauftrag sein, d. h., der Wert für das zugehörige Feld DeliveryQuantities ist NULL. Der zweite Auftrag des Paares muss ein Lieferauftrag sein, d. h., der Wert für das zugehörige Feld PickupQuantities ist NULL. Die Menge, die mit dem ersten Auftrag abgeholt wird, muss mit der Menge übereinstimmen, die mit dem zweiten Auftrag geliefert wird. Als Sonderfall können in Szenarien, in denen keine Kapazitäten verwendet werden, beide Aufträge die Menge 0 aufweisen.

Die Auftragsmengen werden nicht an Depots geladen oder entladen.

MaxTransitTime

Die maximale Fahrzeit für das Auftragspaar. Die Fahrzeit ist die Dauer von der Abfahrtszeit des ersten Auftrags bis zur Ankunftszeit des zweiten Auftrags. Diese Einschränkung begrenzt die tatsächlich mit Fahren verbrachte Zeit zwischen den beiden Aufträgen. Wenn ein Fahrzeug Menschen oder verderbliche Waren transportiert, ist die Fahrzeit i. d. R. kürzer als bei einem Fahrzeug, das Pakete oder nicht verderbliche Waren transportiert. Dieses Feld kann NULL-Werte enthalten. Ein NULL-Wert gibt an, dass für die Fahrzeit keine Einschränkung gilt.

Die Einheit für diesen Feldwert wird durch die Eigenschaft timeUnits des Analyse-Objekts angegeben.

Vom Solver können Fahrzeitüberschreitungen (in Bezug auf die direkte Fahrzeit zwischen Auftragspaaren gemessen) verfolgt und gewichtet werden. Daher können Sie für den VRP-Solver eine von drei Strategien festlegen:

  • Minimieren der Gesamt-Fahrzeitüberschreitung, unabhängig von der Erhöhung der Reisekosten für die Fahrzeugflotte
  • Suchen einer Lösung, die einen Kompromiss zwischen Gesamtzeitverstoß und Reisekosten ermöglicht
  • Ignorieren der Gesamt-Fahrzeitüberschreitung und stattdessen Minimieren der Reisekosten für die Fahrzeugflotte

Wenn Sie für die Einstellung des Parameters excess_transit_factor eine Gewichtung zuweisen, wählen Sie letztendlich eine dieser drei Strategien aus. Unabhängig von der Gewichtung gibt der Solver jedoch in jedem Fall einen Fehler zurück, wenn der Wert für MaxTransitTime überschritten wird.

Record Set
Faktor für Fahrzeitüberschreitungen
(optional)

Gibt an, wie wichtig die Reduzierung von Fahrzeitüberschreitungen bei Auftragspaaren ist. Die Fahrzeitüberschreitung entspricht der Zeit, um die die direkte Fahrzeit zwischen den Auftragspaaren überschritten wird. Eine Überschreitung kann durch Fahrerpausen oder Fahrten zu Zwischenaufträgen und Depots verursacht werden.

  • HochDer Schwerpunkt liegt auf der Reduzierung der Fahrzeitüberschreitungen bei Auftragspaaren, wobei die Gesamtreisekosten steigen dürfen. Diese Einstellung wird für gewöhnlich verwendet, wenn bei Aufträgen Personen befördert werden und Sie die Fahrzeiten der Personen verkürzen möchten. Ein typisches Beispiel sind Taxiunternehmen.
  • MittelDer Schwerpunkt liegt auf einem ausgewogenen Verhältnis zwischen Reduzierung der Fahrzeitüberschreitung und Reduzierung der Gesamtreisekosten. Dies ist der Standardwert.
  • NiedrigDer Schwerpunkt liegt auf der Minimierung der Gesamtlösungskosten unabhängig von Fahrzeitüberschreitungen. Diese Einstellung wird normalerweise von Kurierdiensten verwendet. Da Kurierdienste Pakete und keine Personen befördern, muss die Fahrzeit nicht berücksichtigt werden. Mit der Einstellung "Niedrig" können Kuriere Auftragspaare in der ordnungsgemäßen Reihenfolge abwickeln und die Gesamtlösungskosten minimieren.
String
Punkt-Barrieren
(optional)

Verwenden Sie diesen Parameter, um einen oder mehrere Punkte anzugeben, die als vorübergehende Beschränkungen dienen bzw. die für das Passieren der betreffenden Straßen zusätzlich veranschlagte Zeit oder Entfernung anzeigen. Mit einer Punkt-Barriere kann beispielsweise ein umgestürzter Baum auf einer Straße oder eine Zeitverzögerung wegen des Halts an einem Bahnübergang angezeigt werden.

Mit dem Werkzeug können maximal 250 Punkte als Barrieren hinzugefügt werden.

Bei der Angabe von Punkt-Barrieren können Sie mithilfe der folgenden Attribute deren jeweilige Eigenschaften, darunter Name und Barrierentyp, festlegen:

Name

Der Name der Barriere.

BarrierType

Gibt an, ob die Punkt-Barriere den Verkehr vollständig beschränkt oder ob beim Überschreiten der Barriere ein Mehraufwand an Zeit oder Entfernung entsteht. Der Wert für dieses Attribut wird als eine der nachfolgenden Ganzzahlen angegeben (verwenden Sie nicht den Namen in Klammern, sondern den numerischen Code):

  • 0 (Einschränkung): Untersagt, dass die Barriere passiert wird. Die Barriere wird "Punkt-Barriere für Einschränkungen" genannt, da sie als Einschränkung fungiert.

  • 2 (Zusatzkosten): Ein Passieren der Barriere verursacht eine längere Fahrzeit oder -entfernung in Höhe des in den Feldern Additional_Time, Additional_Distance oder AdditionalCost genannten Wertes. Dieser Barrierentyp wird "Punktbarriere für Zusatzkosten" genannt.

Additional_Time

Die zusätzliche Fahrzeit, die durch das Passieren der Barriere anfällt. Dieses Feld gilt nur für Barrieren vom Typ "Zusatzkosten" und wenn der Parameterwert Maßeinheiten zeitbasiert ist.

Dieser Feldwert muss größer oder gleich Null sein, und seine Einheiten müssen mit den Einheiten des Parameters Maßeinheiten identisch sein.

Additional_Distance

Die zusätzliche Entfernung, die durch das Passieren der Barriere anfällt. Dieses Feld gilt nur für Barrieren vom Typ "Zusatzkosten" und wenn der Parameterwert Maßeinheiten entfernungsbasiert ist.

Der Feldwert muss größer oder gleich Null sein, und seine Einheiten müssen mit den Einheiten des Parameters Maßeinheiten identisch sein.

AdditionalCost

Die zusätzlichen Kosten, die durch das Passieren der Barriere anfallen. Dieses Feld gilt nur für Barrieren vom Typ "Zusatzkosten" und wenn der Parameterwert Maßeinheiten weder zeit- noch entfernungsbasiert ist.

FullEdge

Gibt an, wie Punkt-Barrieren für Beschränkungen bei der Analyse auf die Kantenelemente angewendet werden. Der Feldwert wird als eine der nachfolgenden Ganzzahlen angegeben (verwenden Sie nicht den Namen in Klammern, sondern den numerischen Code):

  • 0 (False): Lässt den Verkehr auf der Kante bis zur Barriere zu, die Barriere kann jedoch nicht passiert werden. Dies ist der Standardwert.
  • 1 (True): Beschränkt den Verkehr an allen Positionen der entsprechenden Kante.

CurbApproach

Gibt die Verkehrsrichtung an, die von der Barriere betroffen ist. Der Feldwert wird als eine der nachfolgenden Ganzzahlen angegeben (verwenden Sie nicht den Namen in Klammern, sondern den numerischen Code):

  • 0 (Beide Seiten des Fahrzeugs): Die Barriere wirkt sich auf den Verkehr über die Kante in beide Richtungen aus.
  • 1 (Rechte Seite des Fahrzeugs): Die Barriere wirkt sich nur auf Fahrzeuge aus, bei denen sich die Barriere aufgrund der Fahrtrichtung auf der rechten Seite des Fahrzeugs befindet. Auf Fahrzeuge, die die gleiche Kante überqueren, bei denen die Barriere jedoch auf der linken Seite des Fahrzeugs liegt, hat die Barriere keine Auswirkungen.
  • 2 (Linke Seite des Fahrzeugs): Die Barriere wirkt sich nur auf Fahrzeuge aus, bei denen sich die Barriere aufgrund der Fahrtrichtung auf der linken Seite des Fahrzeugs befindet. Auf Fahrzeuge, die die gleiche Kante überqueren, bei denen die Barriere jedoch auf der rechten Seite des Fahrzeugs liegt, hat die Barriere keine Auswirkungen.

Da Knoten Punkte sind und keine Seite haben, wirken sich Barrieren für Knoten auf alle Fahrzeuge aus, unabhängig vom Attribut "CurbApproach".

Das Attribut CurbApproach kann sowohl in Ländern mit Rechtsverkehr (Deutschland) als auch in Ländern mit Linksverkehr (Großbritannien) verwendet werden. Stellen Sie sich zunächst eine Einrichtung auf der linken Seite eines Fahrzeugs vor. Es befindet sich stets auf der linken Seite, egal ob das Fahrzeug auf der linken oder rechten Seite der Straße fährt. Was sich abhängig von den nationalen Verkehrsregeln ändern kann, ist Ihre Entscheidung, aus welcher Richtung Sie sich der Einrichtung nähern, sodass sie sich entweder links oder rechts vom Fahrzeug befindet. Um beispielsweise eine Einrichtung zu erreichen, ohne dass sich eine Fahrspur zwischen dem Fahrzeug und der Einrichtung befindet, wählen Sie in Deutschland 1 (Rechte Seite des Fahrzeugs), in Großbritannien hingegen 2 (Linke Seite des Fahrzeugs) aus.

Bearing

Die Richtung, in die sich ein Punkt bewegt. Die Einheit ist Grad und wird im Uhrzeigersinn von geographisch Nord gemessen. Dieses Feld wird in Verbindung mit dem Feld BearingTol verwendet.

Peilungsdaten werden normalerweise automatisch von einem mobilen Gerät gesendet, das mit einem GPS-Empfänger ausgestattet ist. Sie sollten möglichst Peilungsdaten einbeziehen, wenn Sie eine sich bewegende Eingabeposition laden, beispielsweise einen Fußgänger oder ein Fahrzeug.

Durch die Verwendung dieses Feldes kann verhindert werden, dass Positionen falschen Kanten zugewiesen werden, was auftreten kann, wenn er sich zufällig in der Nähe einer Kreuzung oder einer Überführung befindet. Mithilfe der Peilung kann das Werkzeug einfacher ermitteln, auf welcher Straßenseite sich der Punkt befindet.

Weitere Informationen über Peilung und Peilungstoleranz

BearingTol

Anhand des Peilungstoleranzwertes wird ein Bereich mit zulässigen Peilungswerten erstellt, wenn Punkte über das Feld Bearing auf einer Kante bewegt werden. Wenn der Wert des Feldes Bearing innerhalb des Bereichs der zulässigen Werte liegt, die über die Peilungstoleranz auf einer Kante generiert werden, kann der Punkt dort als Netzwerkstandort hinzugefügt werden. Andernfalls wird der nächstgelegene Punkt an der übernächsten Kante ausgewertet.

Die Einheiten in Grad, und der Standardwert ist 30. Der Wert muss größer als 0 und kleiner als 180 sein. Der Wert 30 bedeutet, dass beim Hinzufügen eines Netzwerkstandortes auf einer Kante durch Network Analyst auf beiden Seiten der Kante (links und rechts) und in beiden Digitalisierrichtungen der Kante ein zulässiger Peilungswertebereich in einem Winkel von 15 Grad generiert wird.

Weitere Informationen über Peilung und Peilungstoleranz

NavLatency

Dieses Feld wird nur im Berechnungsprozess verwendet, wenn die Felder Bearing und BearingTol ebenfalls Werte enthalten. Die Eingabe eines NavLatency-Feldwertes ist jedoch optional, selbst wenn in Bearing und BearingTol Werte enthalten sind. NavLatency gibt an, welche Kosten voraussichtlich zwischen dem Senden von GPS-Informationen von einem sich bewegenden Fahrzeug zu einem Server und dem Empfang der verarbeiteten Route durch das Navigationsgerät des Fahrzeugs anfallen.

Die Einheiten von NavLatency entsprechen denen des Impedanzattributs.

Feature Set
Linien-Barrieren
(optional)

Verwenden Sie diesen Parameter, um eine oder mehrere Linien anzugeben, die das Überfahren von Linien, die Straßen überschneiden, verbieten. Mit einer Linien-Barriere kann beispielsweise eine Parade oder Demonstration modelliert werden, die den Verkehr über mehrere Straßenzüge hinweg blockiert. Mit einer Linien-Barriere können außerdem schnell mehrere Straßen abgeriegelt werden, um unerwünschte Teile des Straßennetzes aus den möglichen Routen auszuschließen.

Die Anzahl der Straßen, die mithilfe des Werkzeugparameters Linien-Barrieren beschränkt werden können, ist begrenzt. Es gibt zwar keine Begrenzung für die Anzahl der Linien, die Sie als Linien-Barrieren angeben können, doch die Gesamtzahl der Straßen, die von allen Linien überschnitten werden, darf 500 nicht überschreiten.

Bei der Angabe von Linien-Barrieren können Sie mithilfe der folgenden Attribute die Eigenschaften "Name" und "Barrierentyp" festlegen:

Name

Der Name der Barriere.

Feature Set
Polygon-Barrieren
(optional)

Verwenden Sie diesen Parameter, um Polygone anzugeben, die den Verkehr entweder vollständig beschränken oder für die mehr Zeit oder eine längere Strecke für das Durchfahren der von den Polygonen überschnittenen Straßen veranschlagt wird.

Der Service begrenzt die Anzahl der Straßen, die Sie mithilfe des Parameters Polygon-Barrieren beschränken können. Es gibt zwar keine Begrenzung für die Anzahl der Polygone, die Sie als Polygon-Barrieren angeben können, doch die Gesamtzahl der Straßen, die von allen Polygonen überschnitten werden, darf 2.000 nicht überschreiten.

Bei der Angabe der Polygon-Barrieren können Sie mithilfe der folgenden Attribute deren jeweilige Eigenschaften, darunter Name und Barrierentyp, festlegen:

Name

Der Name der Barriere.

BarrierType

Gibt an, ob die Barriere den Verkehr vollständig beschränkt oder ob beim Passieren der Barriere Mehrkosten (in Form von Zeit oder Entfernung) entstehen. Der Feldwert wird als eine der nachfolgenden Ganzzahlen angegeben (verwenden Sie nicht den Namen in Klammern, sondern den numerischen Code):

  • 0 (Einschränkung): Untersagt, dass die Barriere an irgend einer Stelle passiert werden kann. Die Barriere wird "Polygon-Barriere für Einschränkungen" genannt, da sie den Verkehr an allen Punkten unterbindet, an denen das Polygon das Netzwerk schneidet. Dieser Barrierentyp wird beispielsweise verwendet, um überflutete Bereiche der Straße zu modellieren und den Straßenverkehr in diesen Bereichen zu sperren.

  • 1 (Kostenfaktor): Multipliziert die für das Passieren der betreffenden Straßen veranschlagten Kosten (z. B. Fahrzeit oder Entfernung) mit einem aus den Feldern ScaledTimeFactor oder ScaledDistanceFactor stammenden Faktor. Wenn die Straßen nur zum Teil von der Barriere abgedeckt werden, wird die Fahrzeit oder Entfernung aufgeteilt und danach multipliziert. Ein Faktor von 0,25 bedeutet beispielsweise, dass eine Fahrzeit veranschlagt wird, die um das Vierfache kürzer ist als üblich. Bei einem Faktor von 3,0 nimmt der Weg über diese Straßen hingegen dreimal so viel Zeit in Anspruch. Dieser Barrierentyp wird "Polygon-Barriere für Zusatzkosten" genannt. Er kann beispielsweise zum Modellieren von Stürmen verwendet werden, durch die die Reisegeschwindigkeit in bestimmten Regionen abnimmt.

ScaledTimeFactor

Um diesen Faktor erhöht sich die Fahrzeit durch die Straßen, die von der Barriere abgeschnitten werden. Der Feldwert muss größer 0 sein.

Dieses Feld gilt nur für Barrieren vom Typ "Skalierte Kosten" und wenn der Parameter Maßeinheiten zeitbasiert ist.

ScaledDistanceFactor

Um diesen Faktor erhöht sich die Strecke durch die Straßen, die von der Barriere abgeschnitten werden. Der Feldwert muss größer 0 sein.

Dieses Feld gilt nur für Barrieren vom Typ "Skalierte Kosten" und wenn der Parameter Maßeinheiten entfernungsbasiert ist.

ScaledCostFactor

Um diesen Faktor erhöhen sich die Kosten für die Straßen, die sich mit der Barriere schneiden. Der Feldwert muss größer 0 sein.

Dieses Feld gilt nur für Barrieren vom Typ "Skalierte Kosten" und wenn der Parameter Maßeinheiten weder zeit- noch entfernungsbasiert ist.

Feature Set
Hierarchie verwenden
(optional)

Gibt an, ob beim Suchen der besten Route die Hierarchie verwendet werden soll.

  • Aktiviert (True): Beim Suchen von Routen wird die Hierarchie verwendet. Wenn die Hierarchie berücksichtigt wird, sucht das Werkzeug erst nach übergeordneten Straßen, z. B. Autobahnen, und dann nach untergeordneten Straßen, z. B. Landstraßen. Damit kann simuliert werden, dass ein Fahrer lieber auf Autobahnen statt Landstraßen fährt, selbst wenn die Fahrstrecke dadurch länger ist. Dies trifft besonders auf die Ermittlung von Routen für weit entfernte Ziele zu, da Fahrer lange Wegstrecken lieber auf Autobahnen zurücklegen, um Stopps, Kreuzungen oder Kurven zu vermeiden. Insbesondere bei langen Wegstrecken beschleunigt die Anwendung von Hierarchien den Rechenvorgang, da das Werkzeug die beste Route aus einer relativ kleinen Anzahl an Straßen auswählt.
  • Deaktiviert (False): Beim Suchen von Routen wird die Hierarchie nicht verwendet. Spielt die Hierarchie keine Rolle, erhält bei der Ermittlung der Route kein Straßentyp den Vorzug und es fließen alle Straßen in die Berechnung ein. Das ist häufig der Fall, wenn nach einer kurzen Route innerhalb einer Stadt gesucht wird.

Das Werkzeug verwendet die Hierarchie automatisch, wenn die geradlinige Entfernung zwischen den Aufträgen oder Depots bzw. zwischen Aufträgen und Depots 80 km überschreitet, selbst wenn dieser Parameter deaktiviert ist (False).

Dieser Parameter wird ignoriert, es sei denn, Reisemodus ist auf Benutzerdefiniert festgelegt, was dem Standardwert entspricht.

Boolean
Einschränkungen

Die Beschränkungen, die bei der Ermittlung der besten Routen vom Werkzeug berücksichtigt werden.

Einschränkungen sind Präferenzen oder Anforderungen eines Fahrers. In den meisten Fällen führen Einschränkungen dazu, dass Straßen unzulässig werden. Wird beispielsweise die Beschränkung "Mautstraßen vermeiden" verwendet, enthält die berechnete Route nur dann Mautstraßen, wenn das Befahren solcher Straßen zum Erreichen eines Ereignisses oder einer Einrichtung notwendig ist. Mit Höheneinschränkung können sämtliche Abstände unterhalb der Fahrzeughöhe vermieden werden. Wenn Sie korrosive Materialien mit dem Fahrzeug transportieren, wird mit der Beschränkung "Gefahrgut verboten" vermieden, dass diese Materialien auf Straßen transportiert werden, die für Gefahrguttransporte als unzulässig markiert sind.

Hinweis:

Bei manchen Beschränkungen muss ein zusätzlicher Wert angegeben werden, damit sie verwendet werden können. Dieser Wert muss mit dem Namen der Beschränkung und einem beschränkungsspezifischen Parameter verknüpft werden. Sie erkennen diese Art von Beschränkungen daran, dass ihr Name in der Spalte "AttributeName" des Parameters Attributparameterwerte aufgeführt wird. Um die ordnungsgemäße Verwendung der Beschränkung bei der Ermittlung passierbarer Straßen sicherzustellen, muss im Parameter Attributparameterwerte das Feld ParameterValue angegeben werden.

Hinweis:

Manche Einschränkungen werden nicht in allen Ländern unterstützt; ihre Verfügbarkeit nach Regionen wird nachfolgend aufgelistet. Anhand der Länderliste auf der Webseite Gebietsabdeckung der Netzwerkanalyse [engl.] können Sie herausfinden, welche dieser Beschränkungen in einem bestimmten Land verfügbar sind. Steht in der Spalte "Logistics Attribute" der Wert Yes, so wird die Beschränkung mit begrenzter regionaler Verfügbarkeit in diesem Land unterstützt. Wenn Sie Namen von Einschränkungen angeben, die in dem Land, in dem sich Ihre Ereignisse und Aufträge befinden, nicht verfügbar sind, werden die ungültigen Einschränkungen vom Service ignoriert. Der Service ignoriert außerdem Beschränkungen, wenn der Wert für den Attributparameter Verwendung von Beschränkungen zwischen 0 und 1 liegt (siehe Parameter Attributparameterwert). Beschränkungen aller Art sind unzulässig, wenn der Wert des Parameters Verwendung von Beschränkungen größer als 0 ist.

Das Werkzeug unterstützt die folgenden Einschränkungen:

  • Gefahrgut verbotenDie Ergebnisse schließen Straßen aus, in denen der Transport von jeglichen gefährlichen Materialien verboten ist.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
  • Fahrgemeinschaftsstraßen vermeidenIn den Ergebnissen werden Straßen vermieden, die ausschließlich für Fahrgemeinschaften (Sonderfahrspuren) konzipiert sind.Verfügbarkeit: Alle Länder
  • Hochgeschwindigkeitsspuren vermeidenDie Ergebnisse vermeiden Straßen, die als Hochgeschwindigkeitsspuren ausgewiesen sind.Verfügbarkeit: Alle Länder
  • Fähren vermeidenDie Ergebnisse vermeiden Fähren.Verfügbarkeit: Alle Länder
  • Tore vermeidenIn den Ergebnissen werden Straßen vermieden, die aufgrund von Toren mit Schlüsselzugang oder beschrankter Einfahrten nicht frei zugänglich sind.Verfügbarkeit: Alle Länder
  • Fernverkehrsstraßen vermeidenIn den Ergebnissen werden Fernverkehrsstraßen vermieden.Verfügbarkeit: Alle Länder
  • Privatstraßen vermeidenDie Ergebnisse vermeiden Straßen, die sich in Privatbesitz befinden und verwaltet werden.Verfügbarkeit: Alle Länder
  • Für Fußgänger nicht geeignete Straßen vermeidenDie Ergebnisse vermeiden Straßen, die nicht für Fußgänger geeignet sind.Verfügbarkeit: Alle Länder
  • Treppen vermeidenIn den Ergebnissen werden alle Treppen auf einer für Fußgänger geeigneten Route vermieden.Verfügbarkeit: Alle Länder
  • Mautstraßen vermeidenDie Ergebnisse vermeiden alle Mautstraßen für Autos.Verfügbarkeit: Alle Länder
  • Mautstraßen für Lkw vermeidenDie Ergebnisse vermeiden alle Mautstraßen für Lkw.Verfügbarkeit: Alle Länder
  • Für Lkw eingeschränkte Straßen vermeidenDie Ergebnisse vermeiden Straßen, die von Lkw nur zu Lieferzwecken genutzt werden dürfen.Verfügbarkeit: Alle Länder
  • Nicht befestigte Straßen vermeidenDie Ergebnisse vermeiden Straßen, die nicht befestigt sind (z. B. Schmutz, Schotter usw.)Verfügbarkeit: Alle Länder
  • Beschränkte AchsenzahlDie Ergebnisse schließen Straßen aus, die von Lkw mit der angegebenen Achsenzahl nicht befahren werden dürfen. Die Anzahl der Achsen kann mithilfe des Restriktionsparameters "Achsenzahl" angegeben werden.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
  • BusseDie Ergebnisse schließen Straßen aus, die für Fußgänger verboten sind. Mit dieser Einschränkung wird auch sichergestellt, dass die Ergebnisse Einbahnstraßen berücksichtigen.Verfügbarkeit: Alle Länder
  • TaxisDie Ergebnisse schließen Straßen aus, die von Taxis nicht befahren werden dürfen. Mit dieser Einschränkung wird auch sichergestellt, dass die Ergebnisse Einbahnstraßen berücksichtigen.Verfügbarkeit: Alle Länder
  • LkwDie Ergebnisse schließen Straßen aus, die von Lkw nicht befahren werden dürfen. Mit dieser Einschränkung wird auch sichergestellt, dass die Ergebnisse Einbahnstraßen berücksichtigen.Verfügbarkeit: Alle Länder
  • KraftfahrzeugeDie Ergebnisse schließen Straßen aus, die von Kraftfahrzeugen nicht befahren werden dürfen. Mit dieser Einschränkung wird auch sichergestellt, dass die Ergebnisse Einbahnstraßen berücksichtigen.Verfügbarkeit: Alle Länder
  • NotfallfahrzeugeDie Ergebnisse schließen Straßen aus, die von Notfallfahrzeugen nicht befahren werden dürfen. Mit dieser Einschränkung wird auch sichergestellt, dass die Ergebnisse Einbahnstraßen berücksichtigen.Verfügbarkeit: Alle Länder
  • HöhenbeschränkungDie Ergebnisse schließen Straßen aus, in denen die Fahrzeughöhe die für die Straße maximal zulässige Höhe überschreitet. Die Fahrzeughöhe kann mithilfe des Restriktionsparameters "Fahrzeughöhe" angegeben werden.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
  • Sattelzapfen-Hinterachsen-LängeDie Ergebnisse schließen Straßen für Lkw aus, deren Fahrzeuglänge den für die Straße maximal zulässigen Abstand des Sattelzapfens zur Hinterachse überschreitet. Die Länge zwischen dem Sattelzapfen und der Hinterachse des Fahrzeugs kann mithilfe des Restriktionsparameters "Sattelzapfen-Hinterachsen-Länge" (in Metern) angegeben werden.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
  • LängenbeschränkungDie Ergebnisse schließen Straßen aus, in denen die Fahrzeuglänge die für die Straße maximal zulässige Länge überschreitet. Die Fahrzeuglänge kann mithilfe des Restriktionsparameters "Fahrzeuglänge" (in Metern) angegeben werden.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
  • Für Fußgänger bevorzugtDie Ergebnisse verwenden bevorzugte Routen, die für die Fußgängernavigation geeignet sind.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
  • MotorräderDie Ergebnisse schließen Straßen aus, die von Motorrädern nicht befahren werden dürfen. Mit dieser Einschränkung wird auch sichergestellt, dass die Ergebnisse Einbahnstraßen berücksichtigen.Verfügbarkeit: Alle Länder
  • Im Bau befindliche Straßen unzulässigDie Ergebnisse schließen Straßen aus, die sich im Bau befinden.Verfügbarkeit: Alle Länder
  • Zug oder Traktor mit einem oder mehreren Anhängern unzulässigDie Ergebnisse schließen Straßen aus, die von Zugmaschinen oder Traktoren mit einem oder mehr Anhängern nicht befahren werden dürfen.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
  • Einachs-Fahrzeuge unzulässigDie Ergebnisse schließen Straßen aus, die von Fahrzeugen mit nur einer Achse nicht befahren werden dürfen.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
  • Tandem-Achs-Fahrzeuge unzulässigDie Ergebnisse schließen Straßen aus, die von Fahrzeugen mit Tandemachsen nicht befahren werden dürfen.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
  • Durchgangsverkehr unzulässigDie Ergebnisse schließen Straßen aus, in denen (ortsfremder) Durchgangsverkehr verboten ist.Verfügbarkeit: Alle Länder
  • Beschränkung für Lkw mit AnhängerDie Ergebnisse schließen Straßen aus, die von Lkw mit der angegebenen Anhängerzahl nicht befahren werden dürfen. Die Anzahl der Lkw-Anhänger kann mithilfe des Restriktionsparameters "Lkw-Anhängerzahl" angegeben werden.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
  • Für Gefahrgut bevorzugte Routen nutzenDie Ergebnisse bevorzugen Straßen, die für den Transport von jeglichen gefährlichen Materialien ausgelegt sind.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
  • Bevorzugte Lkw-Routen nutzenIn den Ergebnissen werden Straßen bevorzugt, die als Lkw-Routen ausgewiesen sind, entweder von einem Bundesstaat bzw. einer Provinz oder gemäß dem in den USA geltenden National Surface Transportation Assistance Act im nationalen Straßennetz. Berücksichtigt werden auch Straßen, die von Lkw-Fahrern bevorzugt befahren werden.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
  • GehenDie Ergebnisse schließen Straßen aus, die von Fußgängern nicht verwendet werden dürfen.Verfügbarkeit: Alle Länder
  • GewichtsbeschränkungDie Ergebnisse schließen Straßen aus, in denen das Fahrzeuggewicht das für die Straße maximal zulässige Gewicht überschreitet. Das Fahrzeuggewicht kann mithilfe des Restriktionsparameters "Fahrzeuggewicht" (in Kilogramm) angegeben werden.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
  • AchsgewichtsbeschränkungDie Ergebnisse schließen Straßen aus, in denen das Achsgewicht des Fahrzeugs das für die Straße maximal zulässige Achsgewicht überschreitet. Das Achsgewicht des Fahrzeugs kann mithilfe des Restriktionsparameters "Fahrzeugachsgewicht" (in Kilogramm) angegeben werden.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
  • BreitenbeschränkungDie Ergebnisse schließen Straßen aus, in denen die Fahrzeugbreite die für die Straße maximal zulässige Breite überschreitet. Die Fahrzeugbreite kann mithilfe des Restriktionsparameters "Fahrzeugbreite" (in Metern) angegeben werden.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
Hinweis:

Die von Ihnen für diesen Parameter eingegebenen Werte werden ignoriert, es sei denn, Reisemodus ist auf Benutzerdefiniert festgelegt.

String
Netzwerkparameterwerte
(optional)

Verwenden Sie diesen Parameter, um zusätzliche erforderliche Werte für ein Attribut oder eine Beschränkung anzugeben, z. B. ob das Fahren auf beschränkten Straßen durch die Beschränkung untersagt, vermieden oder bevorzugt wird. Wenn aufgrund der Einschränkung Straßen vermieden oder bevorzugt werden sollen, können Sie den Grad der Vermeidung bzw. Bevorzugung mit diesem Parameter genauer angeben. Sie können beispielsweise auswählen, mautpflichtige Straßen grundsätzlich nicht zu verwenden, soweit als möglich zu meiden oder zu bevorzugen.

Hinweis:

Die von Ihnen für diesen Parameter eingegebenen Werte werden ignoriert, es sei denn, Reisemodus ist auf Benutzerdefiniert festgelegt.

Wenn Sie den Parameter Attributparameterwerte aus einer Feature-Class angeben, müssen die Feldnamen in der Feature-Class mit den folgenden Feldern übereinstimmen:

  • AttributeNameDer Name der Beschränkung.
  • ParameterName: Der Name des mit der Beschränkung verknüpften Parameters. Eine Einschränkung kann abhängig von der geplanten Verwendung einen oder mehrere ParameterName-Feldwerte enthalten.
  • ParameterValue: Der Wert für ParameterName, der vom Werkzeug bei der Auswertung der Beschränkung verwendet wird.

Der Parameter Attributparameterwerte hängt vom Parameter Beschränkungen ab. Das Feld ParameterValue ist nur zutreffend, wenn als Name der Einschränkung der Wert für den Parameter Einschränkungen angegeben wird.

In Attributparameterwerte verfügt jede Beschränkung (als AttributeName aufgelistet) über einen Wert für das Feld ParameterName und "Verwendung von Beschränkungen", womit angegeben wird, ob das Fahren auf Straßen, die mit der Beschränkung verknüpft sind, nicht zugelassen, vermieden oder bevorzugt wird. Auch der Grad, in dem diese Straßen vermieden oder bevorzugt werden sollen, wird angegeben. Dem ParameterName für "Verwendung von Beschränkungen" kann einer der folgenden Zeichenfolgenwerte oder der ihm entsprechende numerische Wert in Klammern zugewiesen werden:

  • PROHIBITED (-1): Fahren auf den Straßen, die in der Einschränkung genannt werden, ist vollkommen verboten.
  • AVOID_HIGH (5): Es ist äußerst unwahrscheinlich, dass die Straßen, die der Beschränkung zugeordnet sind, in die Route aufgenommen werden.
  • AVOID_MEDIUM (2): Es ist unwahrscheinlich, dass die Straßen, die der Beschränkung zugeordnet sind, in die Route aufgenommen werden.
  • AVOID_LOW (1.3): Es ist eher unwahrscheinlich, dass die Straßen, die der Beschränkung zugeordnet sind, in die Route aufgenommen werden.
  • PREFER_LOW (0.8): Es ist eher wahrscheinlich, dass die Straßen, die der Beschränkung zugeordnet sind, in die Route aufgenommen werden.
  • PREFER_MEDIUM (0.5): Es ist wahrscheinlich, dass die Straßen, die der Beschränkung zugeordnet sind, in die Route aufgenommen werden.
  • PREFER_HIGH (0.2): Es ist äußerst wahrscheinlich, dass die Straßen, die der Beschränkung zugeordnet sind, in die Route aufgenommen werden.

In den meisten Fällen können Sie für "Verwendung von Beschränkungen" den Standardwert "PROHIBITED" verwenden, wenn die Einschränkung von einer Fahrzeugeigenschaft, wie z. B. der Höhe, abhängig ist. In einigen Fällen hängt der Wert für "Verwendung von Beschränkungen" jedoch von den Routing-Voreinstellungen ab. Bei der Beschränkung "Mautstraßen vermeiden " etwa ist der Standardwert für das Attribut "Verwendung von Beschränkungen" die Einstellung "AVOID_MEDIUM". Dies bedeutet, dass das Werkzeug bei Verwendung dieser Einschränkung versucht, Mautstraßen nach Möglichkeit zu meiden. AVOID_MEDIUM weist außerdem darauf hin, wie wichtig es ist, Mautstraßen bei der Ermittlung der optimalen Route zu meiden. Dies hat eine mittlere Priorität. Durch Auswahl von "AVOID_LOW" wird der Vermeidung von Mautstraßen geringere Bedeutung beigemessen. Durch Auswahl von "AVOID_HIGH" hingegen wird der Vermeidung eine höhere Bedeutung zugeordnet, wodurch die Akzeptanz für die Erstellung von längeren Routen steigt, damit Mautstraßen vermieden werden können. Bei der Auswahl von "PROHIBITED" ist das Befahren von Mautstraßen grundsätzlich unzulässig, sodass eine Route auch nicht teilweise Mautstraßen enthalten kann. Bedenken Sie dabei, dass für einige Benutzer das Vermeiden bzw. Umgehen von Mautstraßen und damit der Mautgebühr das Ziel darstellt. Andere Fahrer bevorzugen dahingegen die Fahrt auf Mautstraßen, da sie der Vermeidung von Verkehrsverzögerungen mehr Bedeutung beimessen als der Bezahlung von Mautgebühren. Im letzteren Fall würden Sie "PREFER_LOW", "PREFER_MEDIUM" oder "PREFER_HIGH" als Wert für "Verwendung von Beschränkungen" auswählen. Je höher die Prioritätseinstellung, desto mehr versucht das Werkzeug, das Fahren auf Straßen, die dieser Einschränkung zugeordnet sind, zu meiden.

Record Set
Routenlinien füllen
(optional)

Gibt an, ob die Ausgabe-Routenlinie generiert wird.

  • Aktiviert (True): Die Ausgabe-Routen haben die exakte Form der zugrunde liegenden Straßen.
  • Deaktiviert (False): Es wird keine Form für die Ausgabe-Routen generiert, die Routen enthalten dennoch Tabelleninformationen über die Lösung. Wenn keine Routenlinien erstellt werden, können keine Wegbeschreibungen berechnet werden.

Wenn für den Parameter Routen-Shape die Einstellung Echtes Shape festgelegt wurde, kann die Generalisierung des Routen-Shapes mit den entsprechenden Werten für die Parameter Vereinfachungstoleranz für Routenlinien weiter gesteuert werden.

Unabhängig von dem für den Parameter Routen-Shape gewählten Wert wird die beste Route nie durch die geradlinige Strecke, sondern stets mittels Minimierung der Fahrstrecke durch die Straßen ermittelt. Dies bedeutet, dass sich nur die Routen-Shapes und nicht die zugrunde liegenden Straßen, die beim Ermitteln der Route berücksichtigt werden, unterscheiden.

Boolean
Vereinfachungstoleranz für Routenlinien
(optional)

Das Maß, in dem die Geometrie der Ausgabelinien für Routen und Wegbeschreibungen vereinfacht wird.

Der von Ihnen für diesen Parameter eingegebene Wert wird ignoriert, es sei denn, Reisemodus ist auf Benutzerdefiniert festgelegt, was dem Standardwert entspricht.

Dieser Parameter wird vom Werkzeug ignoriert, wenn der Parameter populate_route_lines deaktiviert (False) ist.

Bei der Vereinfachung werden kritische Punkte auf einer Route beibehalten, wie Übergänge an Kreuzungen, um das wesentliche Shape der Route zu definieren, und andere Punkte entfernt. Die angegebene Vereinfachungsentfernung stellt den maximal zulässigen Versatz dar, den die vereinfachte Linie von der ursprünglichen Linie abweichen kann. Durch die Vereinfachung einer Linie wird die Anzahl der Stützpunkte in der Routengeometrie reduziert. Dadurch wird die Ausführungszeit des Werkzeugs verbessert.

Linear Unit
Wegbeschreibungen erstellen
(optional)

Gibt an, ob vom Werkzeug Wegbeschreibungen für die einzelnen Routen generiert werden.

  • Aktiviert (True in Python): Die Wegbeschreibung wird abhängig von den Werten für die Parameter Sprache für Wegbeschreibung, Style-Name für Wegbeschreibung und Einheiten für Wegbeschreibungsentfernung generiert und konfiguriert.
  • Deaktiviert (False in Python): Es wird keine Wegbeschreibung generiert, wodurch ein leerer Wegbeschreibungs-Layer vom Werkzeug zurückgegeben wird.

Boolean
Sprache für Wegbeschreibung
(optional)

Die Sprache, die bei der Erstellung von Wegbeschreibungen verwendet wird.

Dieser Parameter wird nur verwendet, wenn der Parameter Wegbeschreibungen füllen (True in Python) aktiviert wurde.

Bei der Angabe des Parameterwertes ist einer der folgenden aus zwei oder fünf Zeichen bestehenden Sprachcodes zu verwenden:

  • ar: Arabisch
  • bs: Bosnisch
  • ca: Katalanisch
  • cs: Tschechisch
  • da: Dänisch
  • de: Deutsch
  • el: Griechisch
  • en: Englisch
  • es: Spanisch
  • et: Estnisch
  • fi: Finnisch
  • fr: Französisch
  • he: Hebräisch
  • hr: Kroatisch
  • hu: Ungarisch
  • id: Indonesisch
  • it: Italienisch
  • ja: Japanisch
  • ko: Koreanisch
  • lt: Litauisch
  • lv: Lettisch
  • nb: Norwegisch
  • nl: Niederländisch
  • pl: Polnisch
  • pt-BR: Portugiesisch (Brasilien)
  • pt-PT: Portugiesisch (Portugal)
  • ro: Rumänisch
  • ru: Russisch
  • sk: Slowakisch
  • sl: Slowenisch
  • sr: Serbisch
  • sv: Schwedisch
  • th: Thailändisch
  • tr: Türkisch
  • uk: Ukrainisch
  • vi: Vietnamesisch
  • zh-CN: Chinesisch (China)
  • zh-HK: Chinesisch (Hongkong)
  • zh-TW: Chinesisch (Taiwan)

Das Werkzeug sucht zuerst eine genaue Übereinstimmung für die angegebene Sprache, einschließlich aller Sprachlokalisierungen. Wird keine genaue Übereinstimmung gefunden, versucht es, die Sprachfamilie zuzuordnen. Wenn immer noch keine Übereinstimmung gefunden wird, gibt das Werkzeug die Wegbeschreibungen in der Standardsprache Englisch aus. Wenn die Sprache für die Wegbeschreibung als "es-MX" (mexikanisches Spanisch) angegeben ist, gibt das Werkzeug die Wegbeschreibung in Spanisch aus, da zwar der Sprachcode "es" unterstützt wird, der Sprachcode "es-MX" jedoch nicht.

Vorsicht:

Unterstützt eine Sprache die Lokalisierung, etwa brasilianisches Portugiesisch (pt-BR) und europäisches Portugiesisch (pt-PT), geben Sie die Sprachfamilie und die Lokalisierung an. Falls Sie nur die Sprachfamilie angeben, ordnet das Werkzeug nicht die Sprachfamilie zu und gibt stattdessen eine Wegbeschreibung in der Standardsprache Englisch aus. Ist beispielsweise "pt" als Sprache für die Wegbeschreibung angegeben, gibt das Werkzeug die Wegbeschreibung in Englisch aus, da es nicht bestimmen kann, ob die Wegbeschreibung in "pt-BR" oder "pt-PT" zurückgegeben werden soll.

String
Style-Name für Wegbeschreibung
(optional)

Gibt den Namen des Formatierungs-Styles für Wegbeschreibungen an. Dieser Parameter wird nur verwendet, wenn der Parameter Wegbeschreibungen füllen (True in Python) aktiviert wurde.

  • Network Analyst DesktopDetaillierte Wegbeschreibung, die gedruckt werden kann.
  • Navigation in Network AnalystDetaillierte Wegbeschreibung für ein Navigationsgerät im Fahrzeug.
String
Reisemodus
(optional)

Die Transportmethode für die Modellierung in der Analyse. Reisemodi werden in ArcGIS Online verwaltet und können vom Administrator Ihrer Organisation konfiguriert werden, um die Workflows Ihrer Organisation widerzuspiegeln. Sie müssen den Namen eines Reisemodus angeben, der von Ihrer Organisation unterstützt wird.

Um eine Liste der unterstützten Namen für Reisemodi abzurufen, führen Sie das Werkzeug Get Travel Modes der Toolbox "Dienstprogramme" aus, das unter der GIS-Serververbindung verfügbar ist, unter der auch der Zugriff auf das Werkzeug erfolgt. Das Werkzeug Get Travel Modes fügt der Anwendung die Tabelle "Unterstützte Reisemodi" hinzu. Jeder Wert im Feld Travel Mode Name aus der Tabelle "Unterstützte Reisemodi" kann als Eingabe angegeben werden. Sie können auch den Wert aus dem Feld Travel Mode Settings als Eingabe festlegen. Dadurch wird die Ausführung des Werkzeugs beschleunigt, da es die Einstellungen nicht basierend auf dem Namen des Reisemodus suchen muss.

Der Standardwert Benutzerdefiniert ermöglicht Ihnen das Konfigurieren eines eigenen Reisemodus mithilfe der benutzerdefinierten Reisemodusparameter (Wenden an Kreuzungen, Hierarchie verwenden, Beschränkungen, Attributparameterwerte und Impedanz). Die Standardwerte des benutzerdefinierten Reisemodusparameters modellieren die Fahrt mit dem Auto. Sie können auch Benutzerdefiniert auswählen und die oben aufgeführten benutzerdefinierten Reisemodusparameter festlegen, um einen Fußgänger mit schneller Gehgeschwindigkeit zu modellieren oder einen Lkw, der eine bestimmte Höhe, ein bestimmtes Gewicht oder eine bestimmte Gefahrgutfracht hat. Probieren Sie bei Bedarf verschiedene Einstellungen aus, um die gewünschten Analyseergebnisse zu erhalten. Wenn Sie Ihre Analyseeinstellungen festgelegt haben, sollten Sie mit dem Administrator Ihrer Organisation zusammenarbeiten, um diese Einstellungen als Teil eines neuen oder vorhandenen Reisemodus zu speichern. Auf diese Weise können alle Benutzer in Ihrer Organisation die Analyse erneut mit denselben Einstellungen ausführen.

Vorsicht:

Durch Auswahl von Benutzerdefiniert werden die von Ihnen festgelegten benutzerdefinierten Reisemodusparameter in die Analyse einbezogen. Wenn Sie einen anderen als den von Ihrer Organisation definierten Reisemodus angeben, kann dies dazu führen, dass alle Werte, die Sie für die Parameter des benutzerdefinierten Reisemodus festgelegt haben, ignoriert werden; das Werkzeug überschreibt sie mit den Werten aus dem angegebenen Reisemodus.

String
Impedanz
(optional)

Gibt die Impedanz an. Dieser Wert repräsentiert den Aufwand bzw. die Kosten für Fahrten entlang von Straßensegmenten oder anderen Teilen des Verkehrsnetzes.

Die Fahrzeit stellt eine Impedanz dar: ein Auto benötigt auf einer leeren Straße möglicherweise nur eine Minute für einen Kilometer. Die Fahrzeiten können sich je nach Reisemodus ändern: Ein Fußgänger benötigt für diesen Kilometer möglicherweise mehr als 20 Minuten. Daher ist es wichtig, die richtige Impedanz für den modellierten Reisemodus zu wählen.

Auch die Fahrstrecke kann eine Impedanz sein; die Länge einer Straße in Kilometern kann als Impedanz angesehen werden. Die Reiseentfernung ist in diesem Sinne für alle Modi dieselbe – ein Kilometer ist für einen Fußgänger dasselbe wie für ein Auto. (Was sich ändern kann, sind die Wege, auf denen die verschiedenen Reisemodi absolviert werden können, was sich auf die Entfernung zwischen Punkten auswirkt – und das wird durch die Reisemodus-Einstellungen modelliert.)

Wenn Sie eine zeitbasierte Impedanz auswählen, z. B. TravelTime, TruckTravelTime, Minutes, TruckMinutes oder WalkTime, muss der Parameter Unterbrechungseinheiten auf einen zeitbasierten Wert festgelegt werden. Bei Auswahl einer entfernungsbasierten Impedanz, z. B. Meilen oder Kilometer, müssen die Unterbrechungseinheiten entfernungsbasiert sein.

  • FahrzeitEs werden historische und Live-Verkehrsdaten verwendet. Diese Option eignet sich zur Modellierung der Fahrzeiten von Fahrzeugen zu bestimmten Tageszeiten unter Berücksichtigung der Geschwindigkeiten aus den Live-Verkehrsdaten (sofern verfügbar). Bei Verwendung von TravelTime können Sie optional mit dem Attributparameter "TravelTime::Vehicle Maximum Speed (km/h)" eine etwaige Maximalgeschwindigkeit für das Fahrzeug festlegen.
  • MinutenEs werden keine Live-Verkehrsdaten verwendet, jedoch historische Durchschnittsgeschwindigkeiten für Autos.
  • Fahrzeit LkwEs werden historische und Live-Verkehrsdaten verwendet, jedoch wird die geltende Geschwindigkeitsbegrenzung für Lkw berücksichtigt. Dies eignet sich zur Modellierung der Fahrzeiten von Lkw auf Straßen zu bestimmten Zeiten. Bei Verwendung von TruckTravelTime können Sie optional mit dem Attributparameter "TruckTravelTime::Vehicle Maximum Speed (km/h)" eine etwaige Maximalgeschwindigkeit für den Lkw festlegen.
  • Lkw-MinutenEs werden keine Live-Verkehrsdaten verwendet, sondern die langsameren Werte der historischen Durchschnittsgeschwindigkeiten für Kraftfahrzeuge sowie die geltenden Geschwindigkeitsbegrenzungen für Lkw.
  • GehzeitDie Standardeinstellung ist für alle Straßen und Wege eine Geschwindigkeit von 5 km/h. Dieser Wert kann jedoch über den Attributparameter "WalkTime::Walking Speed (km/h)" konfiguriert werden.
  • Zeit bei einem Kilometer pro StundeDie Standardeinstellung ist für alle Straßen und Wege eine Geschwindigkeit von 1 km/h. Die Geschwindigkeit kann nicht mithilfe von Attributparametern geändert werden.
  • FahrzeitModelliert die Fahrzeiten für ein Auto. Diese Fahrzeiten sind dynamisch und richten sich nach dem Verkehrsaufkommen in Gebieten, in denen Verkehrsdaten verfügbar sind. Dies ist der Standardwert.
  • Lkw-FahrzeitModelliert die Fahrzeiten für einen Lkw. Diese Fahrzeiten sind für jede Straße statisch und richten sich nicht nach dem Verkehrsaufkommen.
  • GehzeitModelliert die Laufzeiten für einen Fußgänger.
Vorsicht:

Der von Ihnen für diesen Parameter eingegebene Wert wird ignoriert, es sei denn, Reisemodus ist auf Benutzerdefiniert festgelegt, was dem Standardwert entspricht.

Vorversion:

Die Impedanzwerte Fahrzeit, LKW-Zeit, Gehzeit und Fahrstrecke werden nicht mehr unterstützt und werden in einer zukünftigen Version entfernt. Wenn Sie einen dieser Werte einsetzen, verwendet das Werkzeug den Parameter Zeitimpedanz für zeitbasierte Werte und den Parameter Entfernungsimpedanz für entfernungsbasierte Werte.

String
Zeitzonenverwendung für Zeitfelder
(optional)

Gibt die Zeitzone für die Datums-/Zeit-Eingabefelder an, die vom Werkzeug unterstützt werden. Dieser Parameter gibt die Zeitzone für die folgenden Felder an: TimeWindowStart1, TimeWindowEnd1, TimeWindowStart2, TimeWindowEnd2, InboundArriveTime und OutboundDepartTime in Aufträgen. TimeWindowStart1, TimeWindowEnd1, TimeWindowStart2 und TimeWindowEnd2 in Depots. EarliestStartTime und LatestStartTime in Routen. TimeWindowStart und TimeWindowEnd in Pausen.

  • GEO_LOCALDie mit den Aufträgen oder Depots verknüpften Werte für Datum/Uhrzeit befinden sich in der Zeitzone, in der sich die Aufträge und Depots befinden. Bei Routen basieren die Werte für Datum/Uhrzeit auf der Zeitzone, in der sich das Startdepot für die Route befindet. Hat eine Route kein Startdepot, müssen sich alle Aufträge und Depots über alle Routen hinweg in einer einzelnen Zeitzone befinden. Bei Pausen basieren die Werte für Datum/Uhrzeit auf der Zeitzone der Routen. Wenn sich Ihr Depot beispielsweise in einem Gebiet befindet, in dem die Eastern Standard Time gilt und die Werte des ersten Zeitfensters (angegeben als TimeWindowStart1 und TimeWindowEnd1) 8.00 Uhr und 17.00 Uhr lauten, werden die Zeitfensterwerte als 8.00 Uhr und 17.00 Uhr Eastern Standard Time behandelt.
  • UTCDie mit den Aufträgen oder Depots verknüpften Werte für Datum/Uhrzeit sind in der koordinierten Weltzeit (UTC) angegeben und basieren nicht auf der Zeitzone, in der sich die Aufträge oder Depots befinden. Wenn sich Ihr Depot beispielsweise in einem Gebiet befindet, in dem die Eastern Standard Time gilt und die Werte des ersten Zeitfensters (angegeben als TimeWindowStart1 und TimeWindowEnd1) 8.00 Uhr und 17.00 Uhr lauten, werden die Zeitfensterwerte als 12.00 Uhr und 21.00 Uhr Eastern Standard Time behandelt, wobei davon ausgegangen wird, dass die Sommerzeit berücksichtigt wird.
  • GEO_LOCALGEO_LOCAL
  • UTCUTC

Es ist hilfreich, die Werte für Datum/Uhrzeit in UTC anzugeben, wenn Sie die Zeitzone nicht kennen, in der sich die Aufträge oder Depots befinden, oder wenn Sie Aufträge und Depots in mehreren Zeitzonen haben und möchten, dass alle Werte für Datum/Uhrzeit gleichzeitig starten. Die UTC-Option kann nur angewendet werden, wenn Ihr Netzwerk-Dataset ein Zeitzonenattribut definiert. Anderenfalls werden alle Werte für Datum/Zeit immer als GEO_LOCAL behandelt.

String
Ausgabe-Netzwerkanalyse-Layer speichern
(optional)

Gibt an, ob die Analyseeinstellungen als Netzwerkanalyse-Layer-Datei gespeichert werden. Auch wenn Sie diese Datei in einer ArcGIS Desktop-Anwendung wie ArcMap öffnen, können Sie nicht direkt mit dieser Datei arbeiten. Sie wird vielmehr an den technischen Support von Esri gesandt, wo die Qualität der vom Werkzeug zurückgelieferten Ergebnisse beurteilt wird.

  • Aktiviert (True): Die Netzwerkanalyse-Layer-Datei wird gespeichert. Die Datei wird in ein temporäres Verzeichnis auf Ihrem Computer geladen. In ArcGIS Pro lässt sich der Speicherort der heruntergeladenen Datei aus dem Wert für den Parameter Ausgabe-Netzwerkanalyse-Layer ermitteln, der im entsprechenden Eintrag zur Ausführung des Werkzeugs im Geoverarbeitungsverlauf Ihres Projekts enthalten ist. In ArcMap lässt sich der Speicherort der Datei ermitteln, indem Sie die Option Speicherort kopieren im Kontextmenü des Parameters Ausgabe-Netzwerkanalyse-Layer im Eintrag anschauen, der der Werkzeugausführung im Fenster Geoverarbeitungsergebnisse entspricht.
  • Deaktiviert (False): Die Netzwerkanalyse-Layer-Datei wird nicht gespeichert. Dies ist die Standardeinstellung.

Boolean
Overrides
(optional)

Zusätzliche Einstellungen, die das Verhalten des Solvers beim Suchen von Lösungen für die Netzwerkanalyseprobleme beeinflussen können.

Der Wert dieses Parameters muss in JavaScript Object Notation (JSON) angegeben werden. Ein gültiger Wert hat beispielsweise das Format: {"overrideSetting1" : "value1", "overrideSetting2" : "value2"}. Der Name der Override-Einstellung wird immer in doppelten Anführungszeichen angegeben. Die Werte können eine Zahl, ein boolescher Wert oder eine Zeichenfolge sein.

Der Standardwert für diesen Parameter ist kein Wert, was darauf hinweist, dass keine Solver-Einstellungen überschrieben werden.

Overrides sind erweiterte Einstellungen, die nur nach sorgfältiger Analyse der abgerufenen Ergebnisse vor und nach Anwendung der Einstellungen verwendet werden sollten. Für eine Liste der unterstützten Override-Einstellungen und ihrer akzeptierten Werte wenden Sie sich an den technischen Support von Esri.

String
Routendaten speichern
(optional)

Gibt an, ob die Ausgabe eine .zip-Datei mit einer File-Geodatabase enthält, in der die Eingaben und Ausgaben der Analyse in einem Format vorliegen, das zum Freigeben von Routen-Layern mit ArcGIS Online oder Portal for ArcGIS verwendet werden kann.

  • Aktiviert (True): Die Routendaten werden als .zip-Datei gespeichert. Die Datei wird in ein temporäres Verzeichnis auf Ihrem Computer heruntergeladen. In ArcGIS Pro lässt sich der Speicherort der heruntergeladenen Datei aus dem Wert für den Parameter Ausgabe-Routendaten ermitteln, der im entsprechenden Eintrag zur Ausführung des Werkzeugs im Geoverarbeitungsverlauf Ihres Projekts enthalten ist. In ArcMap lässt sich der Speicherort der Datei ermitteln, indem Sie die Option Speicherort kopieren im Kontextmenü des Parameters Ausgabe-Routendaten im Eintrag anschauen, der der Werkzeugausführung im Fenster Geoverarbeitungsergebnisse entspricht.

  • Deaktiviert (False): Die Routendaten werden nicht gespeichert. Dies ist die Standardeinstellung.

Boolean
Zeitimpedanz
(optional)

Die zeitbasierte Impedanz ist ein Wert, der für die Fahrzeit entlang von Straßensegmenten oder anderen Teilen des Verkehrsnetzes steht.

  • MinutenZeitimpedanz in Minuten.
  • FahrzeitZeitimpedanz entspricht der Fahrzeit.
  • Zeit bei einem Kilometer pro StundeZeitimpedanz entspricht der Zeit bei einem Kilometer pro Stunde.
  • GehzeitZeitimpedanz entspricht der Gehzeit.
  • Lkw-MinutenZeitimpedanz in Lkw-Minuten.
  • Fahrzeit LkwZeitimpedanz entspricht der Lkw-Fahrzeit.
Hinweis:
Wenn die Impedanz für den Reisemodus, wie sie durch den Parameter Impedanz angegeben ist, zeitbasiert ist, müssen die Werte der Parameter Zeitimpedanz und Impedanz identisch sein. Andernfalls gibt der Service einen Fehler zurück.
String
Entfernungsimpedanz
(optional)

Die entfernungsbasierte Impedanz ist ein Wert, der für die Fahrstrecke entlang von Straßensegmenten oder anderen Teilen des Verkehrsnetzes steht.

  • MeilenEntfernungsimpedanz in Meilen.
  • KilometerEntfernungsimpedanz in Kilometer.
Hinweis:
Wenn die Impedanz für den Reisemodus, wie sie durch den Parameter Impedanz angegeben ist, entfernungsbasiert ist, müssen die Werte der Parameter Entfernungsimpedanz und Impedanz identisch sein. Andernfalls gibt der Service einen Fehler zurück.
String
Stopp-Shapes auffüllen
(optional)

Gibt an, ob das Werkzeug die Shapes für die zugeordneten und nicht zugeordneten Ausgabe-Stopps erstellt.

  • Aktiviert (True): Die zugeordneten und nicht zugeordneten Ausgabe-Stopps werden als Punkt-Features erstellt. Dies kann hilfreich sein, um zu visualisieren, welche Stopps Routen zugeordnet sind und welche Stopps keiner Route zugeordnet werden konnten.

  • Deaktiviert (False): Die zugeordneten und nicht zugeordneten Ausgabe-Stopps werden als Tabellen erstellt und haben keine Shapes. Dies ist die Standardeinstellung. Verwenden Sie diese Option nur, wenn die Anwendung die Ausgabe-Stopps nicht visualisieren muss und nur mit den Attributen der Stopps arbeiten kann.

Boolean
Ausgabeformat
(optional)

Gibt das Format an, in dem die Ausgabe-Features erstellt werden.

Wenn ein dateibasiertes Ausgabeformat wie JSON-Datei oder GeoJSON-Datei angegeben wird, werden der Anzeige keine Ausgaben hinzugefügt, da Anwendungen wie ArcMap oder ArcGIS Pro den Inhalt der Ergebnisdatei nicht darstellen können. Stattdessen wird die Ergebnisdatei in ein temporäres Verzeichnis auf Ihrem Computer heruntergeladen. In ArcGIS Pro lässt sich der Speicherort der heruntergeladenen Datei aus dem Wert für den Parameter Ausgabe-Ergebnisdatei ermitteln, der im entsprechenden Eintrag zur Ausführung des Werkzeugs im Geoverarbeitungsverlauf Ihres Projekts enthalten ist. In ArcMap lässt sich der Speicherort der Datei über die Option Speicherort kopieren im Kontextmenü des Parameters Ausgabe-Ergebnisdatei ermitteln, der im entsprechenden Eintrag zur Ausführung des Werkzeugs im Fenster Geoverarbeitungsergebnisse enthalten ist.

  • Feature SetDie Ausgabe-Features werden als Feature-Classes und Tabellen zurückgegeben. Dies ist die Standardeinstellung.
  • JSON-DateiDie Ausgabe-Features werden als komprimierte Datei zurückgegeben, welche die JSON-Repräsentation der Ausgaben enthält. Bei Angabe dieser Option ist die Ausgabe eine einzelne Datei (mit der Erweiterung .zip), die eine oder mehrere JSON-Dateien (mit der Erweiterung .json) für alle von dem Service erstellten Ausgaben enthält.
  • GeoJSON-DateiDie Ausgabe-Features werden als komprimierte Datei zurückgegeben, welche die GeoJSON-Repräsentation der Ausgaben enthält. Bei Angabe dieser Option ist die Ausgabe eine einzelne Datei (mit der Erweiterung .zip), die eine oder mehrere GeoJSON-Dateien (mit der Erweiterung .geojson) für alle von dem Service erstellten Ausgaben enthält.
String
Ungültige Auftragsstandorte ignorieren
(optional)

Gibt an, ob ungültige Aufträge beim Berechnen des Vehicle Routing Problem ignoriert werden.

  • Aktiviert (True): Beim Berechnungsvorgang werden ungültige Aufträge ignoriert, sodass eine Lösung zurückgegeben wird, sofern keine anderen Fehler aufgetreten sind. Wenn Sie Routen erstellen und sofort an die Fahrer weitergeben müssen, können Sie bei Bedarf ungültige Aufträge ignorieren, die Berechnung durchführen und die Routen an die Fahrer übermitteln. Lösen Sie dann alle ungültigen Aufträge aus dem letzten Berechnungsvorgang, und fügen Sie sie zur VRP-Analyse für den nächsten Arbeitstag oder die nächste Arbeitsschicht hinzu.

  • Deaktiviert (False): Der Berechnungsvorgang ist nicht erfolgreich, wenn ungültige Aufträge erkannt werden. Ein ungültiger Auftrag ist ein Auftrag, den der VRP-Solver nicht erreichen kann. Ein Auftrag kann aus verschiedenen Gründen nicht erreichbar sein, etwa weil er sich in einem unzulässigen Netzwerkelement, überhaupt nicht im Netzwerk oder in einem nicht angebundenen Teil des Netzwerkes befindet.

Boolean

Abgeleitete Ausgabe

BeschriftungErläuterungDatentyp
Berechnung erfolgreich

Gibt an, ob die Berechnung der Vehicle Routing Problem-Analyse erfolgreich war.

Boolean
Nicht zugeordnete Ausgabe-Stopps

Dieser Parameter bietet Zugriff auf die Aufträge, die auf keiner Route besucht werden konnten. Sie können auch ermitteln, warum die Aufträge nicht angefahren werden konnten, und die erforderlichen Änderungen zur Behebung des Problems vornehmen.

Feature Set
Ausgabe-Stopps

Es sind Informationen zu Stopps bei Depots, Aufträgen und Pausen enthalten. Die Information umfasst die Routen, auf denen die Stopps erfolgen, die Ankunfts- und Abfahrtszeiten sowie die Reihenfolge der Stopps.

Feature Set
Ausgabe-Routen

Dieser Parameter bietet Zugriff auf die Fahrer, Fahrzeuge und Routen einer Vehicle Routing Problem-Analyse.

Feature Set
Ausgabe-Wegbeschreibungen

Dieser Parameter stellt für jede resultierende Route Zugriff auf detaillierte Wegbeschreibungen bereit.

Feature Set
Ausgabe-Netzwerkanalyse-Layer

Der Netzwerkanalyse-Layer mit in den Werkzeugparametern konfigurierten Eigenschaften, der für weitere Analysen oder zum Debuggen in der Karte verwendet werden kann.

File
Ausgabe-Routendaten

Eine .zip-Datei mit allen Informationen für eine bestimmte Route.

File
Ausgabe-Ergebnisdatei

Eine .zip-Datei mit den Analyseergebnissen, die mindestens eine Datei für jede Ausgabe enthält. Das Format der einzelnen Dateien wird durch den Parameter Ausgabeformat angegeben.

File
Ausgabe-Netzwerkanalyse-Layer-Paket

Ein Layer-Paket, das einen Netzwerkanalyse-Layer mit den in der Analyse verwendeten Daten und Einstellungen enthält.

File

arcpy.agolservices.SolveVehicleRoutingProblem(orders, depots, routes, breaks, time_units, distance_units, {analysis_region}, {default_date}, {uturn_policy}, {time_window_factor}, {spatially_cluster_routes}, {route_zones}, {route_renewals}, {order_pairs}, {excess_transit_factor}, {point_barriers}, {line_barriers}, {polygon_barriers}, {use_hierarchy_in_analysis}, restrictions, {attribute_parameter_values}, {populate_route_lines}, {route_line_simplification_tolerance}, {populate_directions}, {directions_language}, {directions_style_name}, {travel_mode}, {impedance}, {time_zone_usage_for_time_fields}, {save_output_layer}, {overrides}, {save_route_data}, {time_impedance}, {distance_impedance}, {populate_stop_shapes}, {output_format}, {ignore_invalid_order_locations})
NameErläuterungDatentyp
orders

Gibt eine oder mehrere Positionen an, die bei der VRP-Analyse für die Routenerstellung berücksichtigt werden. Ein Auftrag kann eine Lieferung (z. B. eine Möbellieferung), eine Abholung (z. B. die Abholung eines Passagiers durch einen Airport Shuttle-Bus) oder eine Art von Service oder Prüfung (z. B. das Zurückschneiden eines Baumes oder die Prüfung eines Gebäudes) repräsentieren.

Bei der Angabe der Aufträge können Sie mithilfe der folgenden Attribute deren jeweilige Eigenschaften, darunter Name und Durchführungszeit, festlegen:

ObjectID

Das vom System verwaltete ID-Feld.

Name

Der Name des Auftrags. Der Name muss eindeutig sein. Wenn kein Name angegeben wird, wird zum Zeitpunkt der Berechnung automatisch ein Name erstellt.

Description

Dies ist die Beschreibung des Auftrags. Diese kann Textinformationen zum Auftrag umfassen und muss nicht eindeutig sein. Sie können im Feld Name die ID-Nummer eines Kunden und im Feld Description den eigentlichen Namen oder die Adresse des Kunden speichern.

ServiceTime

Diese Eigenschaft gibt an, wie viel Zeit am Netzwerkstandort verbracht wird, wenn die Route zu ihm führt. Das heißt, in ihr wird der Wert für die Impedanz des Netzwerkstandorts gespeichert. Ein 0- oder NULL-Wert weist darauf hin, dass der Netzwerkstandort keine Durchführungszeit erfordert.

Die Einheit für diesen Feldwert wird mithilfe des Parameters time_units angegeben.

TimeWindowStart1

Die Anfangszeit des ersten Zeitfensters für den Netzwerkstandort. Dieses Feld kann einen NULL-Wert enthalten. Ein Nullwert gibt an, dass keine Anfangszeit vorhanden ist.

Ein Zeitfenster gibt nur an, wann ein Fahrzeug bei einer Lieferung ankommen kann. Es gibt nicht an, wann die Durchführungszeit abgeschlossen sein muss. Wenn die Durchführungszeit und die Abfahrt des Fahrzeugs vor Ablauf des Zeitfensters berücksichtigt werden sollen, subtrahieren Sie ServiceTime vom Feld TimeWindowEnd1.

Die Zeitfensterfelder (TimeWindowStart1, TimeWindowEnd1, TimeWindowStart2 und TimeWindowEnd2) können einen reinen Uhrzeitwert oder einen Wert für Datum und Uhrzeit in einem Datumsfeld enthalten. Dabei darf es sich nicht um ganze Zahlen handeln, die Millisekunden seit Unixzeit darstellen. Die Zeitzone für Zeitfensterfelder wird mit dem Parameter time_zone_usage_for_time_fields angegeben. Wenn ein Zeitfeld, z. B. TimeWindowStart1, einen reinen Uhrzeitwert enthält (z. B. 8:00 Uhr), wird vorausgesetzt, dass als Datum das für die Analyse festgelegte Standarddatum verwendet wird. Wenn Sie Datums- und Zeitwerte verwenden (z. B. 7/11/2010 8:00 Uhr), können Sie Zeitfenster über mehrere Tage festlegen.

Werden bei der Lösung eines Problems mehrere Zeitzonen erfasst, so beziehen sich die in den Zeitfenstern jedes Auftrags angegebenen Werte auf die Zeitzone, in der sich der Auftrag befindet.

TimeWindowEnd1

Die Endzeit des ersten Zeitfensters für den Netzwerkstandort. Dieses Feld kann einen NULL-Wert enthalten. Ein NULL-Wert gibt an, dass keine Endzeit vorhanden ist.

TimeWindowStart2

Die Anfangszeit des zweiten Zeitfensters für den Netzwerkstandort. Dieses Feld kann einen NULL-Wert enthalten. Ein NULL-Wert gibt an, dass kein zweites Zeitfenster vorhanden ist.

Wenn das erste Zeitfenster gemäß den Feldern TimeWindowStart1 und TimeWindowEnd1 NULL ist, muss das zweite Zeitfenster ebenfalls NULL sein.

Wenn es sich bei beiden Fenstern um Nicht-NULL-Fenster handelt, können sie nicht überlappen. Außerdem muss das zweite Zeitfenster auf das erste folgen.

TimeWindowEnd2

Die Endzeit des zweiten Zeitfensters für den Netzwerkstandort. Dieses Feld kann einen NULL-Wert enthalten.

Wenn TimeWindowStart2 und TimeWindowEnd2 beide NULL sind, gibt es kein zweites Zeitfenster.

Wenn TimeWindowStart2 nicht NULL ist, aber TimeWindowEnd2 NULL ist, gibt es ein zweites Zeitfenster, das eine Startzeit, aber keine Endzeit hat. Dies ist zulässig.

MaxViolationTime1

Eine Zeitfensterverletzung liegt vor, wenn die Ankunftszeit nach dem Ende des Zeitfensters liegt. Dieses Feld gibt den maximal zulässigen Zeitverstoß für das erste Zeitfenster des Auftrags an. Es darf den Wert 0, jedoch keinen negativen Wert enthalten. Der Wert 0 gibt an, dass kein Verstoß gegen das erste Zeitfenster des Auftrags zulässig ist, d. h. das erste Zeitfenster ist ein sog. "hartes" Zeitfenster. Ein NULL-Wert bedeutet andererseits auch, dass der zulässige Zeitverstoß unbegrenzt ist. Ein Wert ungleich 0 gibt die maximale Verspätung an. Beispielsweise kann ein Fahrzeug bis zu 30 Minuten nach dem Ende des ersten Zeitfensters bei einem Auftrag ankommen.

Die Einheit für diesen Feldwert wird mithilfe des Parameters Uhrzeitfeldeinheiten angegeben.

Zeitfensterverletzungen können vom Solver verfolgt und gewichtet werden. Daher können Sie den VRP-Solver anweisen, eine der folgenden Aktionen durchzuführen:

  • Minimieren des Gesamtzeitverstoßes, unabhängig von der Erhöhung der Reisekosten für die Fahrzeugflotte
  • Suchen einer Lösung, die einen Kompromiss zwischen Gesamtzeitverstoß und Reisekosten ermöglicht
  • Ignorieren des Gesamtzeitverstoßes und Minimieren der Reisekosten für die Fahrzeugflotte

Wenn Sie für den Parameter Gewichtung der Zeitfensterverletzung eine Gewichtung zuweisen, entscheiden Sie sich letztendlich für eine dieser Optionen. Der Solver gibt jedoch in jedem Fall einen Fehler zurück, wenn der für MaxViolationTime1 festgelegte Wert überschritten wird.

MaxViolationTime2

Der maximal zulässige Zeitverstoß für das zweite Zeitfenster des Auftrags. Dieses Feld entspricht dem Feld MaxViolationTime1.

InboundArriveTime

Legt fest, wann der am Ort des Auftrags abzuliefernde Gegenstand am Startdepot bereit ist.

Der Auftrag kann einer Route nur dann zugewiesen werden, wenn die eingehende Ankunftszeit dem letzten Startzeitwert der Route vorausgeht. Auf diese Weise kann die Route das Depot nicht verlassen, bevor der Liefergegenstand bereit ist, in das Depot geladen zu werden.

Mit diesem Feld können Szenarien mit Umladungen eingehender Lieferungen modelliert werden. Beispiel: Für einen Auftrag sind spezielle Materialien erforderlich, die derzeit nicht im Depot verfügbar sind. Die Materialien werden von einem anderen Standort versendet und erreichen das Depot um 11:00 Uhr. Um sicherzustellen, dass ein Fahrzeug, das auf einer Route den Ort vor dem Eintreffen der Lieferung verlässt, dem Auftrag nicht zugewiesen wird, wird die eingehende Ankunftszeit des Auftrags auf 11:00 Uhr festgelegt. Die speziellen Materialien treffen um 11:00 Uhr ein, werden auf das Fahrzeug geladen und das Fahrzeug verlässt das Depot, um die ihm zugewiesenen Orte des Auftrags anzufahren.

Anmerkungen:

  • Die Startzeit der Route, die Durchführungszeiten umfasst, muss auf die eingehende Ankunftszeit folgen. Wenn eine Route vor der eingehenden Ankunftszeit eines Auftrags beginnt, kann der Auftrag der Route nicht zugewiesen werden. Die Zuweisung ist auch dann ungültig, wenn die Route eine Start-Depot-Durchführungszeit aufweist, die bis über die eingehende Ankunftszeit hinaus andauert.

  • Dieses Zeitfeld kann einen reinen Uhrzeitwert oder einen Wert für Datum und Uhrzeit enthalten. Wenn ein reiner Uhrzeitwert festgelegt wurde (z. B. 11:00 Uhr), wird vorausgesetzt, dass als Datum das für die Analyse festgelegte Standarddatum verwendet wird. Das Standarddatum wird jedoch ignoriert, wenn ein Zeitfeld in den Depots, Routen, Aufträgen oder Unterbrechungen ein Datum mit Uhrzeit enthält. Geben Sie in diesem Fall all diese Felder mit Datum und Uhrzeit ein (z. B. 11.07.2015 11:00 Uhr).

  • Der VRP-Solver berücksichtigt InboundArriveTime unabhängig vom DeliveryQuantities-Wert.

  • Wenn außerdem eine ausgehende Abfahrtzeit angegeben ist, muss deren Zeitwert nach der eingehenden Ankunftszeit liegen.

OutboundDepartTime

Legt fest, wann der am Ort des Auftrags abzuholende Liefergegenstand das End-Depot erreichen muss.

Der Auftrag kann einer Route nur dann zugewiesen werden, wenn die Route den Ort des Auftrags anfahren kann und dessen End-Depot vor der angegebenen ausgehenden Abfahrtzeit erreicht.

Mit diesem Feld können Szenarien mit Umladungen ausgehender Lieferungen modelliert werden. Beispiel: Eine Transportfirma schickt Lieferwagen los, um Pakete von Aufträgen abzuholen und sie zu einem Depot zu bringen. Von dort aus werden sie auf dem Weg zu ihrem Endziel zu anderen Einrichtungen weitertransportiert. Täglich um 15:00 Uhr stoppt ein Sattelschlepper am Depot, um die Pakete mit hoher Priorität abzuholen und sie direkt zu einer zentralen Verarbeitungsstation zu bringen. Um eine Verzögerung der Pakete mit hoher Priorität bis zur 15:00 Uhr-Fahrt des folgenden Tages zu vermeiden, lässt die Transportfirma die Pakete mit hoher Priorität an den Auftragsorten von Lieferwagen abholen und vor Ablauf der 15:00 Uhr-Frist zum Depot bringen. Dazu wird die Abfahrtszeit auf 15:00 Uhr festgelegt.

Anmerkungen:

  • Die Endzeit der Route, einschließlich der Durchführungszeiten, muss vor der ausgehenden Abfahrtzeit liegen Wenn eine Route ein Depot erreicht, die Durchführungszeit des End-Depots jedoch nicht vor der ausgehenden Abfahrtzeit des Auftrags abgeschlossen ist, kann der Auftrag der Route nicht zugewiesen werden.

  • Dieses Zeitfeld kann einen reinen Uhrzeitwert oder einen Wert für Datum und Uhrzeit enthalten. Wenn ein reiner Uhrzeitwert festgelegt wurde (z. B. 11:00 Uhr), wird vorausgesetzt, dass als Datum das für die Analyse festgelegte Standarddatum verwendet wird. Das Standarddatum wird jedoch ignoriert, wenn ein Zeitfeld in Depots, Routen, Aufträgen oder Unterbrechungen ein Datum mit Uhrzeit enthält. Geben Sie in diesem Fall all diese Felder mit Datum und Uhrzeit ein (z. B. 11.07.2015 11:00 Uhr).

  • Der VRP-Solver berücksichtigt OutboundDepartTime unabhängig vom PickupQuantities-Wert.

  • Wenn außerdem eine Ankunftszeit angegeben ist, muss deren Zeitwert vor der Abfahrtszeit liegen.

DeliveryQuantities

Die Größe der Lieferung. Sie können die Größe in einer beliebigen Dimension angeben, wie Gewicht, Volumen oder Menge. Sie können auch mehrere Dimensionen, wie beispielsweise Gewicht und Volumen, angeben.

Geben Sie Liefermengen ohne die Angabe von Einheiten ein. Beispiel: Wenn ein 135 Kilogramm schwerer Artikel geliefert werden muss, geben Sie 135 ein. Sie müssen daran denken, dass der Wert in Kilogramm angegeben ist.

Wenn Sie mehrere Maße angeben, trennen Sie die numerischen Werte mit Leerzeichen. Wenn Sie beispielsweise das Gewicht und Volumen einer Lieferung mit einem Gewicht von 900 Kilogramm und einem Volumen von 3 Kubikmetern erfassen, geben Sie "900 3" ein. Sie müssen sich erneut die Einheiten merken, in diesem Fall Kilogramm und Kubikmeter. Sie müssen sich ferner merken, in welcher Abfolge die Werte und ihre entsprechenden Einheiten eingegeben werden.

Stellen Sie sicher, dass Capacities für Routen und DeliveryQuantities und PickupQuantities für Aufträge auf dieselbe Art und Weise angegeben werden. Das heißt, die Werte müssen in denselben Einheiten vorliegen. Bei Verwendung mehrerer Dimensionen müssen die Dimensionen für alle Parameter in derselben Reihenfolge aufgeführt werden. Wenn Sie beispielsweise das Gewicht in Kilogramm gefolgt von einem Volumen in Kubikmeter für DeliveryQuantities angeben, müssen die Kapazität der Routen und die "PickupQuantities" der Aufträge auf die gleiche Weise angegeben werden: Gewicht in Kilogramm, gefolgt von Volumen in Kubikmeter. Wenn Einheiten kombiniert werden oder die Reihenfolge geändert wird, erhalten Sie unerwünschte Ergebnisse ohne Warnmeldungen.

Eine leere Zeichenfolge oder ein NULL-Wert gibt an, dass alle Dimensionen null sind. Wenn die Anzahl der Werte in der Zeichenfolge geringer als die Kapazitätszahl oder die Anzahl der verfolgten Dimensionen ist, werden die restlichen Werte als Nullen behandelt. Für "DeliveryQuantities" sind negative Werte nicht zulässig.

PickupQuantities

Die Größe der Abholung. Sie können die Größe in einer beliebigen Dimension angeben, wie Gewicht, Volumen oder Menge. Sie können auch mehrere Dimensionen, wie beispielsweise Gewicht und Volumen, angeben. Sie können jedoch keine negativen Werte verwenden. Dieses Feld entspricht dem Feld DeliveryQuantities für "Aufträge".

Bei einem Austauschbesuch kann ein Auftrag Werte für "DeliveryQuantities" und "PickupQuantities" aufweisen.

Revenue

Die generierten Einnahmen, wenn der Auftrag in einer Lösung enthalten ist. Dieses Feld darf einen NULL-Wert (ein NULL-Wert steht für Einnahmen in Höhe von 0), jedoch keinen negativen Wert enthalten.

"Revenue" wird beim Optimieren des Zielfunktionswertes einbezogen, ist jedoch nicht Bestandteil der Betriebskosten für die Lösung. Das bedeutet, dass das Feld TotalCost in "Routen" niemals "Revenue" enthält. Jedoch wird für "Revenue" die relative Gewichtung der Ausführung von Aufträgen berücksichtigt.

"Revenue" wird beim Optimieren des Zielfunktionswertes einbezogen, ist jedoch nicht Bestandteil der Betriebskosten für die Lösung. Das bedeutet, dass das Feld TotalCost in der Klasse "Routen" niemals "Revenue" enthält. Jedoch wird für "Revenue" die relative Gewichtung der Ausführung von Aufträgen berücksichtigt.

SpecialtyNames

Eine durch Leerzeichen getrennte Zeichenfolge mit den Namen der für den Auftrag erforderlichen Besonderheiten. Ein NULL-Wert gibt an, dass der Auftrag keine Besonderheiten erfordert.

Die Schreibweise der Besonderheiten in den Klassen "Orders" und "Routes" muss exakt übereinstimmen, sodass der VRP-Solver sie verknüpfen kann.

Um die Bedeutung und Funktionsweise von Besonderheiten zu veranschaulichen, nehmen Sie an, dass eine Firma, die Grünanlagen pflegt und Baumschnittarbeiten durchführt, für einige Aufträge ein Fahrzeug mit einem Hubsteiger benötigt, um große Bäume zu beschneiden. Das Unternehmen gibt für diese Aufträge Hubsteiger in das Feld "SpecialtyNames" ein, um auf diese besondere Anforderung hinzuweisen. SpecialtyNames bleibt NULL für die anderen Aufträge. Entsprechend gibt die Firma "Hubsteiger" auch in das Feld SpecialtyNames von Routen ein, die von Fahrzeugen mit hydraulischen Auslegern befahren werden. Für die anderen Routen bleibt der Wert des Feldes NULL. Zum Zeitpunkt der Berechnung weist der VRP-Solver jeder Route Aufträge ohne besondere Anforderungen zu, er weist jedoch Aufträge, die Fahrzeuge mit Hubsteiger erfordern, nur den Routen zu, die darüber verfügen.

AssignmentRule

Gibt die Regel zum Zuweisen des Auftrags zu einer Route an. Der Feldwert wird als eine der nachfolgenden Ganzzahlen angegeben (verwenden Sie nicht den Namen in Klammern, sondern den numerischen Code):

  • 0 (Ausschließen): Der Auftrag wird aus dem nachfolgenden Berechnungsvorgang ausgeschlossen.
  • 1 (Route und relative Sequenz beibehalten): Der Solver muss den Auftrag während des Berechnungsvorgangs immer der vorab zugewiesenen Route mit der vorab zugewiesenen relativen Sequenz zuweisen. Wenn diese Zuweisungsregel nicht befolgt werden kann, führt dies zu einem Verstoß gegen den Auftrag. Mit dieser Einstellung wird nur die relative Sequenz, nicht die absolute Sequenz, verwaltet. Um dies näher zu veranschaulichen, stellen Sie sich vor, es gibt zwei Aufträge: A und B. Sie weisen die Sequenzwerte 2 bzw. 3 auf. Wenn Sie die Werte des Feldes AssignmentRule auf "Route und relative Sequenz beibehalten" festlegen, können sich die Sequenzwerte für A und B nach der Berechnung ändern, da andere Aufträge, Pausenzeiten und Depotstopps vor, zwischen oder nach A und B angeordnet werden können. B kann jedoch nicht vor A angeordnet werden. B kann jedoch nicht vor A angeordnet werden.
  • 2 (Route beibehalten): Der Solver muss den Auftrag während des Berechnungsvorgangs immer der vorab zugewiesenen Route zuweisen. Außerdem muss eine gültige Sequenz festgelegt sein, auch wenn diese nicht unbedingt beibehalten werden muss. Wenn der Auftrag nicht der angegebenen Route zugewiesen werden kann, führt dies zu einem Verstoß gegen den Auftrag.
  • 3 (Override): Der Solver versucht, während des Berechnungsvorgangs die Vorabzuweisung von Route und Sequenz für den Auftrag beizubehalten. Jedoch kann eine neue Route oder Sequenz für den Auftrag zugewiesen werden, wenn sich hierdurch der Gesamtwert der Zielfunktion verringern lässt. Dies ist der Standardwert.
  • 4 (Erstes Element verankern): Der Solver ignoriert während des Berechnungsvorgangs die Vorabzuweisung (falls vorhanden) von Route und Sequenz für den Auftrag. Er weist dem Auftrag eine Route zu und legt ihn als ersten Auftrag auf dieser Route fest, um den Gesamtwert der Zielfunktion zu verringern.
  • 5 (Letztes Element verankern): Der Solver ignoriert während des Berechnungsvorgangs die Vorabzuweisung (falls vorhanden) von Route und Sequenz für den Auftrag. Er weist dem Auftrag eine Route zu und legt ihn als letzten Auftrag auf dieser Route fest, um den Gesamtwert der Zielfunktion zu verringern.

Dieses Feld darf keinen NULL-Wert enthalten.

CurbApproach

Gibt die Richtung an, in der ein Fahrzeug beim Auftrag ankommt bzw. von ihm wegfährt. Der Feldwert wird als eine der nachfolgenden Ganzzahlen angegeben (verwenden Sie nicht den Namen in Klammern, sondern den numerischen Code):

  • 0 (Beide Seiten des Fahrzeugs): Das Fahrzeug kann sich von beiden Richtungen dem Auftrag nähern, daher ist hier Wenden erlaubt. Diese Einstellung kann ausgewählt werden, wenn es möglich und sinnvoll ist, dass ein Fahrzeug am Auftragsort eine Wende durchführt. Die Entscheidung hängt von der Breite der Straße, dem Verkehrsaufkommen und dem Vorhandensein eines Parkplatzes am Auftragsort ab, auf dem das Fahrzeug wenden kann.
  • 1 (Rechte Seite des Fahrzeugs): Wenn sich das Fahrzeug dem Auftrag nähert oder von diesem wegfährt, muss sich der Auftrag auf der rechten Seite des Fahrzeugs befinden. Wenden ist verboten. Dies wird üblicherweise für Fahrzeuge wie Busse verwendet, die an einer Bushaltestelle auf der rechten Seite halten müssen.
  • 2 (Linke Seite des Fahrzeugs): Wenn sich das Fahrzeug dem Auftrag nähert oder von diesem wegfährt, muss sich die Bordsteinkante auf der linken Seite des Fahrzeugs befinden. Wenden ist verboten. Dies wird üblicherweise für Fahrzeuge wie Busse verwendet, die an einer Bushaltestelle auf der linken Seite halten müssen.
  • 3 (Wendeverbot): Wenn sich das Fahrzeug dem Auftrag nähert, kann sich die Bordkante auf jeder Seite des Fahrzeuges befinden; das Fahrzeug muss jedoch abfahren, ohne zu wenden.

Das Attribut CurbApproach ist für die Verwendung sowohl in Ländern mit Rechtsverkehr (Deutschland) als auch in Ländern mit Linksverkehr (Großbritannien) konzipiert. Stellen Sie sich zunächst einen Auftrag auf der linken Seite eines Fahrzeugs vor. Es befindet sich stets auf der linken Seite, egal ob das Fahrzeug auf der linken oder rechten Seite der Straße fährt. Was sich abhängig von den nationalen Verkehrsregeln ändern kann, ist Ihre Entscheidung, aus welcher Richtung Sie sich dem Auftrag nähern, sodass er sich entweder links oder rechts vom Fahrzeug befindet. Wenn sich beispielsweise am Auftragsort keine Fahrspur zwischen Fahrzeug und Auftrag befinden soll, wählen Sie in Deutschland die rechte Seite des Fahrzeugs (1), in Großbritannien hingegen die linke Seite des Fahrzeugs (2) aus.

RouteName

Der Name der Route, der der Auftrag zugewiesen wird.

Mit diesem Feld wird ein Auftrag vorab einer bestimmten Route zugewiesen. Es kann einen NULL-Wert enthalten, um anzugeben, dass der Auftrag keiner Route vorab zugewiesen ist. In diesem Fall erfolgt die Ermittlung der bestmöglichen Route für den Auftrag durch den Solver. Wenn das Feld auf NULL festgelegt ist, muss das Feld Sequence ebenfalls auf NULL festgelegt werden.

Wenn der Auftrag einer Route zugewiesen wurde, enthält das Feld RouteName nach einem Berechnungsvorgang den Namen der Route, der der Auftrag zugewiesen ist.

Sequence

Gibt die Sequenz des Auftrags auf der zugewiesenen Route an.

Dieses Feld dient zum Angeben der relativen Sequenz eines Auftrags auf der Route. Das Feld kann einen NULL-Wert enthalten, um anzugeben, dass der Auftrag an einer beliebigen Position auf der Route eingefügt werden kann. Ein NULL-Wert ist nur gemeinsam mit einem NULL-Wert für RouteName zulässig.

Die Eingabesequenzwerte sind positiv und für jede Route eindeutig (gültig für Depotstopps zum Be-/Entladen, Aufträge und Pausenzeiten), müssen jedoch nicht bei 1 beginnen und nicht zusammenhängend sein.

Nach einem Berechnungsvorgang enthält das Feld Sequence den Sequenzwert des Auftrags für die zugewiesene Route. Ausgabesequenzwerte für eine Route gelten für Depotstopps, Aufträge und Pausenzeiten, sie beginnen bei 1 (beim Startdepot) und sind aufeinander folgende Werte. Weil eine Route immer bei einem Depot beginnt, ist 2 der kleinstmögliche Ausgabesequenzwert für einen einer Route zugewiesenen Auftrag.

Bearing

Die Richtung, in die sich ein Punkt bewegt. Die Einheit ist Grad und wird im Uhrzeigersinn von geographisch Nord gemessen. Dieses Feld wird in Verbindung mit dem Feld BearingTol verwendet.

Peilungsdaten werden normalerweise automatisch von einem mobilen Gerät gesendet, das mit einem GPS-Empfänger ausgestattet ist. Sie sollten möglichst Peilungsdaten einbeziehen, wenn Sie eine sich bewegende Eingabeposition laden, beispielsweise einen Fußgänger oder ein Fahrzeug.

Durch die Verwendung dieses Feldes kann verhindert werden, dass Positionen falschen Kanten zugewiesen werden, was auftreten kann, wenn er sich zufällig in der Nähe einer Kreuzung oder einer Überführung befindet. Mithilfe der Peilung kann das Werkzeug einfacher ermitteln, auf welcher Straßenseite sich der Punkt befindet.

Weitere Informationen über Peilung und Peilungstoleranz

BearingTol

Anhand des Peilungstoleranzwertes wird ein Bereich mit zulässigen Peilungswerten erstellt, wenn Punkte über das Feld Bearing auf einer Kante bewegt werden. Wenn der Wert des Feldes Bearing innerhalb des Bereichs der zulässigen Werte liegt, die über die Peilungstoleranz auf einer Kante generiert werden, kann der Punkt dort als Netzwerkstandort hinzugefügt werden. Andernfalls wird der nächstgelegene Punkt an der übernächsten Kante ausgewertet.

Die Einheiten in Grad, und der Standardwert ist 30. Der Wert muss größer als 0 und kleiner als 180 sein. Der Wert 30 bedeutet, dass beim Hinzufügen eines Netzwerkstandortes auf einer Kante durch Network Analyst auf beiden Seiten der Kante (links und rechts) und in beiden Digitalisierrichtungen der Kante ein zulässiger Peilungswertebereich in einem Winkel von 15 Grad generiert wird.

Weitere Informationen über Peilung und Peilungstoleranz

NavLatency

Dieses Feld wird nur im Berechnungsprozess verwendet, wenn die Felder Bearing und BearingTol ebenfalls Werte enthalten. Die Eingabe eines NavLatency-Feldwertes ist jedoch optional, selbst wenn in Bearing und BearingTol Werte enthalten sind. NavLatency gibt an, welche Kosten voraussichtlich zwischen dem Senden von GPS-Informationen von einem sich bewegenden Fahrzeug zu einem Server und dem Empfang der verarbeiteten Route durch das Navigationsgerät des Fahrzeugs anfallen.

Die Einheiten von NavLatency entsprechen denen des Impedanzattributs.

Feature Set
depots

Gibt für das betreffende Vehicle Routing Problem ein oder mehrere Depots an. Ein Depot ist ein Standort, den ein Fahrzeug am Anfang des Arbeitstages verlässt und zu dem es am Ende des Arbeitstages zurückkehrt. Fahrzeuge werden in Depots beladen (für Lieferungen) oder entladen (für Abholungen). In einigen Fällen kann ein Depot auch als Lager fungieren, an dem das Fahrzeug Artikel entladen oder laden kann, um weitere Lieferungen oder Abholungen durchzuführen. Ein Depot weist Öffnungs- und Schließzeiten auf, die durch ein hartes Zeitfenster angegeben werden. Fahrzeuge dürfen nicht außerhalb dieses Zeitfensters bei einem Depot eintreffen.

Bei der Angabe der Depots können Sie mithilfe der folgenden Attribute deren jeweilige Eigenschaften, darunter Name und Durchführungszeit, festlegen:

ObjectID

Das vom System verwaltete ID-Feld.

Name

Der Name des Depots. Die Felder StartDepotName und EndDepotName in Routen referenzieren die Namen, die Sie hier angeben. Er wird ebenfalls von "Lager (Be-/Entladen)" referenziert, sofern verwendet.

Bei Depotnamen wird nicht zwischen Groß- und Kleinschreibung unterschieden. Das Feld darf nicht leer sein und muss einen eindeutigen Namen enthalten.

Description

Dies ist die Beschreibung des Depotstandorts. Diese können Textinformationen umfassen und müssen nicht eindeutig sein.

Wenn Sie beispielsweise notieren möchten, in welcher Region sich ein Depot befindet, oder die Adresse und Telefonnummer des Depots angeben möchten, können Sie diese Informationen hier statt im Feld Name eingeben.

TimeWindowStart1

Die Anfangszeit des ersten Zeitfensters für den Netzwerkstandort. Dieses Feld kann einen NULL-Wert enthalten. Ein Nullwert gibt an, dass keine Anfangszeit vorhanden ist.

Die Zeitfensterfelder (TimeWindowStart1, TimeWindowEnd1, TimeWindowStart2 und TimeWindowEnd2) können einen reinen Uhrzeitwert oder einen Wert für Datum und Uhrzeit in einem Datumsfeld enthalten. Dabei darf es sich nicht um ganze Zahlen handeln, die Millisekunden seit Unixzeit darstellen. Die Zeitzone für Zeitfensterfelder wird mit dem Parameter time_zone_usage_for_time_fields angegeben. Wenn ein Zeitfeld, z. B. TimeWindowStart1, einen reinen Uhrzeitwert enthält (z. B. 8:00 Uhr), wird vorausgesetzt, dass als Datum das für die Analyse festgelegte Standarddatum verwendet wird. Wenn Sie Datums- und Zeitwerte verwenden (z. B. 7/11/2010 8:00 Uhr), können Sie Zeitfenster über mehrere Tage festlegen.

Werden bei der Lösung eines Problems mehrere Zeitzonen erfasst, so beziehen sich die in den Zeitfenstern jedes Depots angegebenen Werte auf die Zeitzone, in der sich das Depot befindet.

TimeWindowEnd1

Die Endzeit des ersten Zeitfensters für den Netzwerkstandort. Dieses Feld kann einen NULL-Wert enthalten. Ein NULL-Wert gibt an, dass keine Endzeit vorhanden ist.

TimeWindowStart2

Die Anfangszeit des zweiten Zeitfensters für den Netzwerkstandort. Dieses Feld kann einen NULL-Wert enthalten. Ein NULL-Wert gibt an, dass kein zweites Zeitfenster vorhanden ist.

Wenn das erste Zeitfenster gemäß den Feldern TimeWindowStart1 und TimeWindowEnd1 NULL ist, muss das zweite Zeitfenster ebenfalls NULL sein.

Wenn es sich bei beiden Zeitfenstern um Nicht-NULL-Fenster handelt, können sie nicht überlappen. Außerdem muss das zweite Zeitfenster auf das erste folgen.

TimeWindowEnd2

Die Endzeit des zweiten Zeitfensters für den Netzwerkstandort. Dieses Feld kann einen NULL-Wert enthalten.

Wenn TimeWindowStart2 und TimeWindowEnd2 beide NULL sind, gibt es kein zweites Zeitfenster.

Wenn TimeWindowStart2 nicht NULL ist, aber TimeWindowEnd2 NULL ist, gibt es ein zweites Zeitfenster, das eine Startzeit, aber keine Endzeit hat. Dies ist zulässig.

CurbApproach

  • 0 (Beide Seiten des Fahrzeugs): Das Fahrzeug kann sich von beiden Richtungen dem Depot nähern, daher ist hier Wenden erlaubt. Diese Einstellung kann ausgewählt werden, wenn es möglich und sinnvoll ist, dass ein Fahrzeug am Depot eine Wende durchführt. Die Entscheidung hängt von der Breite der Straße, dem Verkehrsaufkommen und dem Vorhandensein eines Parkplatzes am Depot ab, auf dem das Fahrzeug wenden kann.
  • 1 (Rechte Seite des Fahrzeugs): Wenn sich das Fahrzeug dem Depot nähert oder von diesem wegfährt, muss sich das Depot auf der rechten Seite des Fahrzeugs befinden. Wenden ist verboten. Dies wird üblicherweise für Fahrzeuge wie Busse verwendet, die an einer Bushaltestelle auf der rechten Seite halten müssen.
  • 2 (Linke Seite des Fahrzeugs): Wenn sich das Fahrzeug dem Depot nähert oder von diesem wegfährt, muss sich die Bordsteinkante auf der linken Seite des Fahrzeugs befinden. Wenden ist verboten. Dies wird üblicherweise für Fahrzeuge wie Busse verwendet, die an einer Bushaltestelle auf der linken Seite halten müssen.
  • 3 (Wendeverbot): Wenn sich das Fahrzeug dem Depot nähert, kann sich die Bordkante auf jeder Seite des Fahrzeuges befinden; das Fahrzeug muss jedoch abfahren, ohne zu wenden.

Das Attribut CurbApproach ist für die Verwendung sowohl in Ländern mit Rechtsverkehr (Deutschland) als auch in Ländern mit Linksverkehr (Großbritannien) konzipiert. Stellen Sie sich zunächst ein Depot auf der linken Seite eines Fahrzeugs vor. Es befindet sich stets auf der linken Seite, egal ob das Fahrzeug auf der linken oder rechten Seite der Straße fährt. Was sich abhängig von den nationalen Verkehrsregeln ändern kann, ist Ihre Entscheidung, aus welcher Richtung Sie sich dem Depot nähern, so dass es sich entweder links oder rechts vom Fahrzeug befindet. Wenn sich beispielsweise am Depot keine Fahrspur zwischen Fahrzeug und Depot befinden soll, wählen Sie in Deutschland die rechte Seite des Fahrzeugs (1), in Großbritannien hingegen die linke Seite des Fahrzeugs (2) aus.

Bearing

Die Richtung, in die sich ein Punkt bewegt. Die Einheit ist Grad und wird im Uhrzeigersinn von geographisch Nord gemessen. Dieses Feld wird in Verbindung mit dem Feld BearingTol verwendet.

Peilungsdaten werden normalerweise automatisch von einem mobilen Gerät gesendet, das mit einem GPS-Empfänger ausgestattet ist. Sie sollten möglichst Peilungsdaten einbeziehen, wenn Sie eine sich bewegende Eingabeposition laden, beispielsweise einen Fußgänger oder ein Fahrzeug.

Durch die Verwendung dieses Feldes kann verhindert werden, dass Positionen falschen Kanten zugewiesen werden, was auftreten kann, wenn er sich zufällig in der Nähe einer Kreuzung oder einer Überführung befindet. Mithilfe der Peilung kann das Werkzeug einfacher ermitteln, auf welcher Straßenseite sich der Punkt befindet.

Weitere Informationen über Peilung und Peilungstoleranz

BearingTol

Anhand des Peilungstoleranzwertes wird ein Bereich mit zulässigen Peilungswerten erstellt, wenn Punkte über das Feld Bearing auf einer Kante bewegt werden. Wenn der Wert des Feldes Bearing innerhalb des Bereichs der zulässigen Werte liegt, die über die Peilungstoleranz auf einer Kante generiert werden, kann der Punkt dort als Netzwerkstandort hinzugefügt werden. Andernfalls wird der nächstgelegene Punkt an der übernächsten Kante ausgewertet.

Die Einheiten in Grad, und der Standardwert ist 30. Der Wert muss größer als 0 und kleiner als 180 sein. Der Wert 30 bedeutet, dass beim Hinzufügen eines Netzwerkstandortes auf einer Kante durch Network Analyst auf beiden Seiten der Kante (links und rechts) und in beiden Digitalisierrichtungen der Kante ein zulässiger Peilungswertebereich in einem Winkel von 15 Grad generiert wird.

Weitere Informationen über Peilung und Peilungstoleranz

NavLatency

Dieses Feld wird nur im Berechnungsprozess verwendet, wenn die Felder Bearing und BearingTol ebenfalls Werte enthalten. Die Eingabe eines NavLatency-Feldwertes ist jedoch optional, selbst wenn in Bearing und BearingTol Werte enthalten sind. NavLatency gibt an, welche Kosten voraussichtlich zwischen dem Senden von GPS-Informationen von einem sich bewegenden Fahrzeug zu einem Server und dem Empfang der verarbeiteten Route durch das Navigationsgerät des Fahrzeugs anfallen.

Die Einheiten von NavLatency entsprechen denen des Impedanzattributs.

Feature Set
routes

Gibt mindestens eine Route an, welche die Fahrzeug- und Fahrereigenschaften beschreibt. Eine Route kann Start- und Enddurchführungszeiten (Depot), eine feste oder flexible Anfangszeit, zeitbasierte Betriebskosten, entfernungsbasierte Betriebskosten, mehrere Kapazitäten, verschiedene Einschränkungen hinsichtlich des Arbeitstags eines Fahrers usw. aufweisen.

Für die Routen können folgende Attribute angegeben werden:

Name

Der Name der Route. Der Name muss eindeutig sein.

Wenn der Feldwert NULL ist, erstellt das Werkzeug zum Zeitpunkt der Berechnung einen eindeutigen Namen. Daher ist die Eingabe eines Wertes in den meisten Fällen optional. Sie müssen jedoch einen Namen eingeben, wenn Ihre Analyse Unterbrechungen, Lager (Be-/Entladen), Routenzonen oder Aufträge umfasst, die einer Route vorab zugewiesen sind, da der Routenname in diesen Fällen als Fremdschlüssel verwendet wird. Bei Routennamen wird die Groß-/Kleinschreibung nicht beachtet.

StartDepotName

Der Name des Startdepots für die Route. Dieses Feld dient als Fremdschlüssel für das Feld Name in "Depots".

Wenn der Wert für StartDepotName NULL ist, beginnt die Route mit dem ersten zugewiesenen Auftrag. Wenn die Startposition des Fahrzeuges unbekannt oder für das Problem irrelevant ist, empfiehlt es sich, das Startdepot nicht anzugeben. Wenn StartDepotName jedoch NULL ist, kann EndDepotName nicht ebenfalls NULL sein.

Virtuelle Startdepots sind nicht zulässig, wenn Aufträge oder Depots in mehreren Zeitzonen vorliegen.

Wenn über die Route Lieferungen erfolgen und StartDepotName NULL ist, wird davon ausgegangen, dass das Fahrzeug vor Routenbeginn in einem virtuellen Depot beladen wird. Für eine Route ohne Stopps zum Be-/Entladen werden die zugehörigen Lieferaufträge (mit Werten für DeliveryQuantities ungleich 0 in "Aufträge") am Startdepot oder virtuellen Depot geladen. Für eine Route mit Stopps zum Be-/Entladen werden nur die Lieferaufträge vor dem ersten Stopp zum Be-/Entladen am Startdepot oder virtuellen Depot geladen.

EndDepotName

Der Name des Enddepots für die Route. Dieses Feld dient als Fremdschlüssel für das Feld Name in "Depots".

StartDepotServiceTime

Die Durchführungszeit am Startdepot. Mit dieser kann die Zeit zum Beladen des Fahrzeugs modelliert werden. Dieses Feld kann einen NULL-Wert enthalten. Ein NULL-Wert gibt an, dass keine Durchführungszeit vorhanden ist.

Die Einheit für diesen Feldwert wird mithilfe des Parameters Uhrzeitfeldeinheiten angegeben.

Bei der Durchführungszeit am Start- und Enddepot handelt es sich um feste Werte (von den Werten der Felder StartDepotServiceTime und EndDepotServiceTime angegeben), bei der das tatsächliche Beladen für eine Route nicht berücksichtigt wird. Beispielsweise kann die Zeit zum Beladen eines Fahrzeugs am Startdepot von der Größe der Aufträge abhängen. Als Durchführungszeiten für Depots können Werte zugewiesen werden, die einer vollständigen Lkw-Ladung oder einer durchschnittlichen Lkw-Ladung entsprechen, oder Sie können einen eigenen Schätzwert festlegen.

EndDepotServiceTime

Die Durchführungszeit am Enddepot. Mit dieser kann die Zeit zum Entladen des Fahrzeugs modelliert werden. Dieses Feld kann einen NULL-Wert enthalten. Ein NULL-Wert gibt an, dass keine Durchführungszeit vorhanden ist.

Die Einheit für diesen Feldwert wird mithilfe des Parameters Uhrzeitfeldeinheiten angegeben.

Bei der Durchführungszeit am Start- und Enddepot handelt es sich um feste Werte (von den Werten der Felder StartDepotServiceTime und EndDepotServiceTime angegeben), bei der das tatsächliche Beladen für eine Route nicht berücksichtigt wird. Beispielsweise kann die Zeit zum Beladen eines Fahrzeugs am Startdepot von der Größe der Aufträge abhängen. Als Durchführungszeiten für Depots können Werte zugewiesen werden, die einer vollständigen Lkw-Ladung oder einer durchschnittlichen Lkw-Ladung entsprechen, oder Sie können einen eigenen Schätzwert festlegen.

EarliestStartTime

Die früheste zulässige Startzeit für die Route. Diese wird vom Solver in Verbindung mit dem Zeitfenster des Startdepots verwendet, um realistische Routenstartzeiten zu bestimmen.

Dieses Feld darf keine NULL-Werte enthalten, und der Standardwert für die reine Uhrzeit ist 08:00 Uhr. Der Standardwert wird als 08:00 Uhr an dem für die Analyse festgelegten Standarddatum interpretiert.

Werden bei der Lösung eines Problems mehrere Zeitzonen erfasst, so entspricht die in EarliestStartTime angegebene Zeitzone derjenigen Zone, in der sich das Startdepot befindet.

LatestStartTime

Die späteste zulässige Startzeit für die Route.

Dieses Feld darf keine NULL-Werte enthalten, und der Standardwert für die reine Uhrzeit ist 10:00 Uhr. Der Standardwert wird als 10:00 Uhr an dem für die Analyse festgelegten Standarddatum interpretiert.

Werden bei der Lösung eines Problems mehrere Zeitzonen erfasst, so entspricht die in LatestStartTime angegebene Zeitzone derjenigen Zone, in der sich das Startdepot befindet.

ArriveDepartDelay

In diesem Feld wird die Fahrzeitdauer gespeichert, die erforderlich ist, um das Fahrzeug auf normale Reisegeschwindigkeiten zu beschleunigen, bis zu einem Stopp zu verlangsamen und in das bzw. aus dem Netzwerk zu bewegen (z. B. in die Parkposition und aus der Parkposition). Indem ein Wert für ArriveDepartDelay verwendet wird, wird der VRP-Solver davon abgehalten, viele Routen zum Abarbeiten von Aufträgen mit physischer Lagegleichheit zu senden.

Die Kosten für diese Eigenschaft treten zwischen Besuchen bei nicht lagegleichen Aufträgen, Depots und Lagern zum Be-/Entladen auf. Wenn eine Route beispielsweise an einem Depot startet und zum Besuch des ersten Auftrags führt, wird die Gesamtverzögerung bei der Ankunft und Abfahrt der Fahrzeit hinzugefügt. Dasselbe gilt für die Fahrt vom ersten Auftrag zum zweiten Auftrag. Wenn der zweite und dritte Auftrag lagegleich sind, wird der Wert unter ArriveDepartDelay dazwischen nicht hinzugefügt, da sich das Fahrzeug nicht bewegen muss. Wenn die Route dann zu einem Lager zum Be-/Entladen führt, wird der Wert der Fahrzeit wieder hinzugefügt.

Obwohl ein Fahrzeug bei einer Pause die Fahrt verlangsamen und unterbrechen und danach wieder beschleunigen muss, kann der VRP-Solver den Wert unter ArriveDepartDelay für Pausen nicht hinzufügen. Dies bedeutet, dass die Verzögerung bei der Ankunft und Abfahrt nur einmal hinzugefügt wird (und nicht zweimal), wenn ein Fahrzeug auf einer Route den Ort eines Auftrags verlässt, für eine Pause anhält und dann weiter zum nächsten Auftrag fährt.

Nehmen Sie beispielsweise an, dass für ein Hochhaus fünf lagegleiche Aufträge vorliegen, die mit drei verschiedenen Routen abgearbeitet werden sollen. Dies bedeutet, dass drei Verzögerungen bei der Ankunft und Abfahrt anfallen. Drei Fahrer müssen separat einen Parkplatz finden und dasselbe Gebäude betreten. Wenn die Aufträge jedoch mit einer Route abgearbeitet werden können, muss nur ein Fahrer einen Parkplatz finden und das Gebäude betreten, und es fällt nur eine Verzögerung bei der Ankunft und Abfahrt an. Da das Ziel des VRP-Solvers die Kostenreduzierung ist, versucht er, die Verzögerungen bei der Ankunft und Abfahrt zu beschränken, identifiziert also die Option mit nur einer Route. (Beachten Sie, dass ggf. mehrere Routen verwendet werden müssen, wenn andere Einschränkungen – z. B. Besonderheiten, Zeitfenster oder Kapazitäten – dies erfordern.)

Die Einheit für diesen Feldwert wird mithilfe des Parameters time_units angegeben.

Capacities

Die maximale Kapazität des Fahrzeugs. Sie können die Kapazität in einer beliebigen Dimension angeben, wie Gewicht, Volumen oder Menge. Sie können auch mehrere Dimensionen, wie beispielsweise Gewicht und Volumen, angeben.

Geben Sie Kapazitäten ohne die Angabe von Einheiten ein. Beispiel: Wenn Ihr Fahrzeug maximal 18 Tonnen transportieren kann, geben Sie 18 ein. Sie müssen daran denken, dass der Wert in Tonnen angegeben ist.

Wenn Sie mehrere Maße angeben, trennen Sie die numerischen Werte mit Leerzeichen. Wenn Sie beispielsweise das Gewicht und Volumen einer Lieferung mit einem Gewicht von 900 Kilogramm und einem Volumen von 3 Kubikmetern erfassen, geben Sie "900 3" ein. Sie müssen sich erneut die Einheiten merken, in diesem Fall Kilogramm und Kubikmeter. Sie müssen sich ferner merken, in welcher Abfolge die Werte und ihre entsprechenden Einheiten eingegeben werden.

Die Einheiten und deren Reihenfolge sind aus mehreren Gründen wichtig: Erstens können Sie so die Informationen auch später richtig deuten, und zweitens können Sie angemessene Werte für die Felder DeliveryQuantities und PickupQuantities für die Aufträge eingeben. Beachten Sie, dass der VRP-Solver gleichzeitig Capacities, DeliveryQuantities undPickupQuantities referenziert, um sicherzustellen, dass eine Route nicht überlastet wird. In das Feld können keine Einheiten eingegeben werden, und das VRP-Werkzeug kann Einheiten nicht konvertieren. Sie müssen die Werte für die drei Felder mit denselben Einheiten und derselben Einheitenreihenfolge eingeben, um sicherzustellen, dass die Werte korrekt interpretiert werden. Wenn unterschiedliche Einheiten verwendet werden oder die Reihenfolge in einem der drei Felder geändert wird, erhalten Sie unerwünschte Ergebnisse ohne Warnmeldungen. Es wird empfohlen, vorher einen Einheiten- und Einheitensequenzstandard einzurichten und diesen bei der Eingabe von Werten für diese drei Felder einzuhalten.

Eine leere Zeichenfolge oder ein NULL-Wert gibt an, dass alle Werte Null sind. Kapazitätswerte dürfen nicht negativ sein.

Wenn die Anzahl der Werte in dem Feld Capacities im Verhältnis zum Feld DeliveryQuantities oder PickupQuantities unter "Aufträge" nicht ausreichend ist, werden die restlichen Werte als 0 behandelt.

Der VRP-Solver führt lediglich einen einfachen booleschen Test durch, um festzustellen, ob die Kapazitäten überschritten werden. Wenn der Kapazitätswert einer Route größer als oder gleich der gesamten transportierten Menge ist, geht der VRP-Solver davon aus, dass die Fracht in das Fahrzeug passt. Abhängig von der tatsächlichen Form der Fracht und des Fahrzeugs kann diese Annahme jedoch falsch sein. Der VRP-Solver lässt beispielsweise zu, dass eine Kugel mit 1.000 Kubikfuß in einen Lkw mit 1.000 Kubikfuß und einer Breite von 8 Fuß verladen wird. Tatsächlich hat die Kugel jedoch einen Durchmesser von 12,6 Fuß und passt nicht in den Lkw mit einer Breite von 8 Fuß.

FixedCost

Ein fester Geldbetrag, der nur anfällt, wenn die Route in einer Lösung verwendet wird (d. h. der Route sind Aufträge zugewiesen). Dieses Feld kann NULL-Werte enthalten. Ein NULL-Wert gibt an, dass keine festen Kosten vorhanden sind. Diese Kosten sind Bestandteil der Gesamtbetriebskosten für die Route.

CostPerUnitTime

Der Geldbetrag – pro Zeiteinheit an Arbeit – der für die Gesamtroutendauer, einschließlich Fahrzeiten, Durchführungszeiten und Wartezeiten bei Aufträgen, Depots und Pausen, anfällt. Dieses Feld darf keinen NULL-Wert enthalten und der Standardwert ist 1,0.

Die Einheit für diesen Feldwert wird mithilfe des Parameters time_units angegeben.

CostPerUnitDistance

Der – pro Einheit gefahrener Strecke – für die Routenlänge (gesamte Reisestrecke) anfallende Geldbetrag. Dieses Feld kann NULL-Werte enthalten. Ein NULL-Wert gibt an, dass keine Kosten vorhanden sind.

Die Einheit für diesen Feldwert wird mithilfe des Parameters distance_units angegeben.

OvertimeStartTime

Die Dauer der regulären Arbeitszeit, bevor die Berechnung der Überstunden beginnt. Dieses Feld kann NULL-Werte enthalten. Ein NULL-Wert gibt an, dass keine Überstunden angewendet werden.

Die Einheit für diesen Feldwert wird mithilfe des Parameters time_units angegeben.

Wenn dem Fahrer beispielsweise bei Überschreiten einer Gesamtroutendauer von 8 Stunden Überstunden bezahlt werden müssen und als Zeiteinheiten Minuten festgelegt sind, wird OvertimeStartTime als 480 (8 Stunden * 60 Minuten/Stunde) angegeben.

CostPerUnitOvertime

Der pro Zeiteinheit von Überstunden anfallende Geldbetrag. Dieses Feld kann NULL-Werte enthalten. Ein NULL-Wert gibt an, dass der Wert von CostPerUnitOvertime mit dem Wert von CostPerUnitTime identisch ist.

MaxOrderCount

Die maximal zulässige Anzahl von Aufträgen für die Route. Dieses Feld darf keine NULL-Werte enthalten, und der Standardwert beträgt 30.

MaxTotalTime

Die maximal zulässige Routendauer. Die Routendauer umfasst Fahrzeiten sowie Durchführungs- und Wartezeiten bei Aufträgen, Depots und Pausen. Dieses Feld kann NULL-Werte enthalten. Ein NULL-Wert gibt an, dass für die Routendauer keine Einschränkung gilt.

Die Einheit für diesen Feldwert wird mithilfe des Parameters time_units angegeben.

MaxTotalTravelTime

Die maximal zulässige Fahrzeit für die Route. Die Fahrzeit umfasst nur die Zeit für Fahrten im Netzwerk, ohne Durchführungs- oder Wartezeit.

Dieses Feld kann NULL-Werte enthalten. Ein NULL-Wert gibt an, dass für die maximal zulässige Fahrzeit keine Einschränkung gilt. Dieser Feldwert darf nicht größer als der Wert des Feldes MaxTotalTime sein.

Die Einheit für diesen Feldwert wird mithilfe des Parameters time_units angegeben.

MaxTotalDistance

Die maximal zulässige Reisestrecke für die Route.

Die Einheit für diesen Feldwert wird mithilfe des Parameters distance_units angegeben.

Dieses Feld kann NULL-Werte enthalten. Ein NULL-Wert gibt an, dass für die maximal zulässige Reisestrecke keine Einschränkung gilt.

SpecialtyNames

Eine durch Leerzeichen getrennte Zeichenfolge mit den Namen der für den Auftrag erforderlichen Besonderheiten. Ein NULL-Wert gibt an, dass der Auftrag keine Besonderheiten erfordert.

Die Schreibweise der Besonderheiten in den Klassen "Orders" und "Routes" muss exakt übereinstimmen, sodass der VRP-Solver sie verknüpfen kann.

Um die Bedeutung und Funktionsweise von Besonderheiten zu veranschaulichen, nehmen Sie an, dass eine Firma, die Grünanlagen pflegt und Baumschnittarbeiten durchführt, für einige Aufträge ein Fahrzeug mit einem Hubsteiger benötigt, um große Bäume zu beschneiden. Das Unternehmen gibt für diese Aufträge Hubsteiger in das Feld "SpecialtyNames" ein, um auf diese besondere Anforderung hinzuweisen. SpecialtyNames bleibt NULL für die anderen Aufträge. Entsprechend gibt die Firma "Hubsteiger" auch in das Feld SpecialtyNames von Routen ein, die von Fahrzeugen mit hydraulischen Auslegern befahren werden. Für die anderen Routen bleibt der Wert des Feldes NULL. Zum Zeitpunkt der Berechnung weist der VRP-Solver jeder Route Aufträge ohne besondere Anforderungen zu, er weist jedoch Aufträge, die Fahrzeuge mit Hubsteiger erfordern, nur den Routen zu, die darüber verfügen.

AssignmentRule

Gibt die Regel zum Zuweisen des Auftrags zu einer Route an. Der Feldwert wird als eine der nachfolgenden Ganzzahlen angegeben (verwenden Sie nicht den Namen in Klammern, sondern den numerischen Code):

Dieses Feld darf keinen NULL-Wert enthalten.

  • 1 (Einschließen): Die Route wird in den Berechnungsvorgang einbezogen. Dies ist der Standardwert.
  • 2 (Ausschließen): Die Route wird aus dem Berechnungsvorgang ausgeschlossen.

Record Set
breaks

Das sind die Unterbrechungszeiten bzw. Pausenzeiten für Routen in einem Vehicle Routing Problem. Eine Pausenzeit ist mit genau einer Route verknüpft und kann nach Abschluss eines Auftrags, auf dem Weg zu einem Auftrag oder vor dem Abarbeiten eines Auftrags eingelegt werden. Sie verfügt über eine Startzeit und eine Dauer, für die der Fahrer entweder bezahlt oder nicht bezahlt wird. Sie können drei Optionen verwenden, um den Beginn einer Pausenzeit festzulegen: Sie können ein Zeitfenster, eine maximale Fahrzeit oder eine maximale Arbeitszeit eingeben.

Zeitfenster-Pausenzeiten sind nicht zulässig, wenn Aufträge oder Depots in mehreren Zeitzonen vorliegen, es sei denn, die Zeiten sind in UTC angegeben.

Bei der Angabe der Pausenzeiten können Sie mithilfe der folgenden Attribute deren jeweilige Eigenschaften, darunter Name und Durchführungszeit, festlegen:

ObjectID

Das vom System verwaltete ID-Feld.

RouteName

Der Name der Route, auf die die Pausenzeit angewendet wird. Eine Pausenzeit wird nur einer Route zugewiesen, aber einer Route können mehrere Pausenzeiten zugewiesen werden.

Dieses Feld ist ein Fremdschlüssel für das Feld Name in Routen und darf keinen NULL-Wert enthalten.

Precedence

Mithilfe von Vorrangswerten wird die Abfolge von Pausenzeiten einer Route festgelegt. Pausenzeiten mit einem Vorrangswert von 1 treten vor Pausenzeiten mit einem Vorrangswert von 2 ein usw.

Alle Pausenzeiten müssen unabhängig davon, ob es sich um Zeitfenster-Pausenzeiten, Pausenzeiten wegen maximaler Fahrzeit oder Pausenzeiten wegen maximaler Arbeitszeit handelt, einen Vorrangswert aufweisen.

ServiceTime

Die Dauer der Pause. Dieses Feld darf keinen NULL-Wert enthalten. Der Standardwert ist 60.

Die Einheit für diesen Feldwert wird mithilfe des Parameters time_units angegeben.

TimeWindowStart

Die Anfangszeit für das Zeitfenster der Pausenzeit. Es müssen sowohl eine Start- als auch eine Endzeit angegeben werden.

Wenn dieses Feld über einen Wert verfügt, müssen die Feldwerte für MaxTravelTimeBetweenBreaks undMaxCumulWorkTime NULL sein. Außerdem müssen alle anderen Pausenzeiten in der Analyse NULL-Werte für MaxTravelTimeBetweenBreaks und MaxCumulWorkTime aufweisen.

Zur Berechnungszeit tritt ein Fehler auf, falls eine Route über mehrere Pausenzeiten mit überlappenden Zeitfenstern verfügt.

Die Zeitfensterfelder in Pausen dürfen einen reinen Uhrzeitwert oder einen Wert für Datum und Uhrzeit enthalten. Dabei darf es sich nicht um ganze Zahlen handeln, die Millisekunden seit Unixzeit darstellen. Die Zeitzone für Zeitfensterfelder wird mit dem Parameter time_zone_usage_for_time_fields angegeben. Wenn ein Zeitfeld, z. B. TimeWindowStart, einen reinen Uhrzeitwert enthält (z. B. 12:00 Uhr), wird angenommen, dass das Datum dem vom Parameter Standarddatum (default_date in Python) angegebenen Datum entspricht. Wenn Sie Datums- und Uhrzeitwerte verwenden (z. B. 7/11/2012, 12:00 Uhr), können Sie Zeitfenster über mehrere Tage angeben. Dies empfiehlt sich, wenn eine Pause kurz vor oder nach Mitternacht eingelegt werden soll.

TimeWindowEnd

Die Endzeit für das Zeitfenster der Pausenzeit. Es müssen sowohl eine Start- als auch eine Endzeit angegeben werden.

Wenn dieses Feld über einen Wert verfügt, müssen die Feldwerte für MaxTravelTimeBetweenBreaks undMaxCumulWorkTime NULL sein. Alle anderen Pausenzeiten in der Analyse müssen NULL-Werte für MaxTravelTimeBetweenBreaks und MaxCumulWorkTime aufweisen.

MaxViolationTime

Dieses Feld gibt den maximal zulässigen Zeitverstoß für eine Zeitfenster-Pausenzeit an. Eine Zeitfensterverletzung liegt vor, wenn die Ankunftszeit außerhalb der Zeitspanne liegt.

Der Wert 0 gibt an, dass keine Zeitfensterverletzung zulässig ist. Das heißt, es handelt sich um ein hartes Zeitfenster. Ein Wert ungleich 0 gibt die maximale Verspätung an. Beispielsweise kann die Pause 30 Minuten nach dem Ende des zugehörigen Zeitfensters beginnen, jedoch wird die Verspätung entsprechend der Eigenschaft "Gewichtung der Zeitfensterverletzung" sanktioniert.

Diese Eigenschaft kann NULL sein. Ein NULL-Wert mit den Werten TimeWindowStart und TimeWindowEnd gibt an, dass der zulässige Zeitverstoß unbegrenzt ist. Wenn MaxTravelTimeBetweenBreaks oder MaxCumulWorkTime über einen Wert verfügt, muss MaxViolationTime NULL sein.

Die Einheit für diesen Feldwert wird mithilfe des Parameters time_units angegeben.

MaxTravelTimeBetweenBreaks

Die maximale Fahrzeit, die akkumuliert werden kann, bevor die Pausenzeit genommen wird. Die Fahrzeit wird entweder ab dem Ende der vorherigen Pause oder, falls noch keine Pause eingelegt wurde, ab dem Start der Route akkumuliert.

Wenn es sich um die letzte Pausenzeit der Route handelt, gibt MaxTravelTimeBetweenBreaks auch die maximale Fahrzeit an, die von der letzten Pause bis zum Enddepot akkumuliert werden kann.

Mithilfe dieses Feldes kann der Zeitraum beschränkt werden, wie lange eine Person fahren darf, bis eine Pausenzeit erforderlich ist. Wenn als Zeiteinheit für die Analyse Minuten angegeben werden und MaxTravelTimeBetweenBreaks den Wert 120 aufweist, kann der Fahrer nach zwei Stunden Fahrt eine Pause einlegen. Um eine Pause nach zwei weiteren Stunden Fahrt zuzuweisen, muss für die Eigenschaft MaxTravelTimeBetweenBreaks der zweiten Pause der Wert 120 festgelegt werden.

Wenn dieses Feld über einen Wert verfügt, müssen TimeWindowStart, TimeWindowEnd,MaxViolationTime und MaxCumulWorkTime NULL sein, damit eine Analyse erfolgreich berechnet werden kann.

Die Einheit für diesen Feldwert wird mithilfe des Parameters time_units angegeben.

MaxCumulWorkTime

Die maximale Arbeitszeit, die akkumuliert werden kann, bevor die Pausenzeit genommen wird. Arbeitszeit wird immer ab dem Anfang der Route akkumuliert.

Die Arbeitszeit ist die Summe der Fahrzeit und Durchführungszeiten für Aufträge, Depots und Pausenzeiten. Beachten Sie jedoch, dass die Wartezeit darin nicht enthalten ist. Dies ist die Zeit, die eine Route (bzw. ein Fahrer) am Ort eines Auftrags oder an einem Depot mit dem Warten auf das Beginn des Zeitfensters verbringt.

Dieses Feld beschränkt den Zeitraum, wie lange eine Person arbeiten darf, bis eine Pausenzeit erforderlich ist. Wenn als Zeiteinheit für die Analyse Minuten angegeben werden, MaxCumulWorkTime den Wert 120 enthält und ServiceTime den Wert 15 aufweist, kann der Fahrer nach zwei Stunden Arbeit eine Pause von 15 Minuten einlegen.

Angenommen, für das letzte Beispiel ist nach weiteren drei Stunden Arbeit eine zweite Pause erforderlich. Um diese Pause anzugeben, geben Sie 315 (fünf Stunden und fünfzehn Minuten) als MaxCumulWorkTime-Wert der zweiten Pause ein. In dieser Zahl sind die MaxCumulWorkTime- und ServiceTime-Werte der vorherigen Pausenzeit sowie die drei zusätzlichen Stunden Arbeitszeit vor dem Gewähren der zweiten Pause enthalten. Bedenken Sie dabei Folgendes: Um zu vermeiden, dass Pausen wegen maximaler Arbeitszeit vorzeitig eingelegt werden, wird die Arbeitszeit ab dem Anfang der Route akkumuliert. Außerdem enthält die Arbeitszeit die Durchführungszeiten von vorher besuchten Depots, Aufträgen und Pausenzeiten.

Wenn dieses Feld über einen Wert verfügt, müssen TimeWindowStart, TimeWindowEnd,MaxViolationTime und MaxTravelTimeBetweenBreaks NULL sein, damit eine Analyse erfolgreich berechnet werden kann.

Die Einheit für diesen Feldwert wird mithilfe des Parameters time_units angegeben.

IsPaid

Ein boolescher Wert, der angibt, ob die Pausenzeit bezahlt wird. Wird dieser Feldwert auf 1 gesetzt, bedeutet dies, dass die Pausenzeit in die Berechnung der Routenkosten sowie die Bestimmung der Überstunden einbezogen wird. Der Wert 0 bedeutet das Gegenteil. Der Standardwert ist 1.

Sequence

Gibt die Sequenz der Pause auf der zugehörigen Route an. Diese Feld kann NULL-Werte enthalten, die dazu führen, dass der Solver die Pausensequenz zuweist. Wenn Sequenzwerte angegeben werden, sollten sie für jede Route positiv und eindeutig sein (gültig für Depotstopps zum Be-/Entladen, Aufträge und Pausenzeiten), müssen jedoch nicht bei 1 beginnen und nicht zusammenhängend sein.

Record Set
time_units

Die Zeiteinheiten für alle zeitbasierten Feldwerte in der Analyse. Viele Features und Datensätze in einer VRP-Analyse weisen Felder zum Speichern von Zeitwerten auf, wie ServiceTime für Aufträge und CostPerUnitTime für Routen. Um Dateneingabeanforderungen zu minimieren, umfassen diese Feldwerte keine Einheiten. Stattdessen müssen alle entfernungsbasierten Feldwerte in den gleichen Einheiten eingegeben werden. Mit diesem Parameter werden die Einheiten dieser Werte angegeben.

  • SecondsDie Zeiteinheit in Sekunden.
  • MinutesDie Zeiteinheit in Minuten.
  • HoursDie Zeiteinheit in Stunden.
  • DaysDie Zeiteinheit in Tagen.

Zeitbasierte Ausgabefelder verwenden dieselben durch diesen Parameter angegebenen Einheiten.

String
distance_units

Die Entfernungseinheiten für alle entfernungsbasierten Feldwerte in der Analyse. Viele Features und Datensätze in einer VRP-Analyse weisen Felder zum Speichern von Entfernungswerten auf, wie MaxTotalDistance undCostPerUnitDistance für Routen. Um Dateneingabeanforderungen zu minimieren, umfassen diese Feldwerte keine Einheiten. Stattdessen müssen alle entfernungsbasierten Feldwerte in den gleichen Einheiten eingegeben werden. Mit diesem Parameter werden die Einheiten dieser Werte angegeben.

  • MetersDie lineare Einheit in Meter.
  • KilometersDie lineare Einheit in Kilometer.
  • FeetDie lineare Einheit in Fuß.
  • YardsDie lineare Einheit in Yard.
  • MilesDie lineare Einheit in Meilen.
  • NauticalMilesDie lineare Einheit in Seemeilen.

Entfernungsbasierte Ausgabefelder verwenden dieselben durch diesen Parameter angegebenen Einheiten.

String
analysis_region
(optional)

Die Region, in der die Analyse durchgeführt werden soll. Wird für diesen Parameter kein Wert angegeben, ermittelt das Werkzeug anhand der Position der Eingabepunkte den Namen der Region automatisch. Die Angabe des Regionsnamens ist nur erforderlich, wenn die automatische Erkennung des Regionsnamens für Ihre Eingaben nicht korrekt ist.

Geben Sie zur Angabe der Region einen der folgenden Werte an:

  • EuropeAnalyseregion: Europa.
  • JapanAnalyseregion: Japan.
  • KoreaAnalyseregion: Korea.
  • MiddleEastAndAfricaAnalyseregion: Naher Osten und Afrika.
  • NorthAmericaAnalyseregion: Nordamerika.
  • SouthAmericaAnalyseregion: Südamerika.
  • SouthAsiaAnalyseregion: Südasien.
  • ThailandAnalyseregion: Thailand.
Vorversion:

Die folgenden Regionsnamen werden nicht mehr unterstützt und werden in zukünftigen Versionen entfernt. Wenn Sie einen der veralteten Regionsnamen angeben, weist das Werkzeug automatisch einen unterstützten Regionsnamen für Ihre Region zu.

  • Bei "Greece" werden Sie an "Europe" umgeleitet.
  • Bei "India" werden Sie an "SouthAsia" umgeleitet.
  • Bei "Oceania" werden Sie an "SouthAsia" umgeleitet.
  • Bei "SouthEastAsia" werden Sie an "SouthAsia" umgeleitet.
  • Bei "Taiwan" werden Sie an "SouthAsia" umgeleitet.

String
default_date
(optional)

Das Standarddatum für Zeitfeldwerte, die einen Zeitpunkt, jedoch kein Datum angeben. Sie können diese Zeitfelder in verschiedenen Eingabeparametern antreffen, z. B. die Attribute ServiceTime in den Auftrags- und Pausenparametern.

Date
uturn_policy
(optional)

Gibt an, ob Wenden an Kreuzungen im Einzugsgebiet erlaubt oder verboten ist. Zum besseren Verständnis der Parameterwerte sollten Sie sich mit der folgenden Terminologie vertraut machen: ein Knoten ist ein Punkt, an dem ein Straßenabschnitt endet und potenziell mit einem oder mehreren anderen Segmenten verbunden ist; ein Pseudo-Knoten ist ein Punkt, an dem genau zwei Straßen miteinander verbunden sind; eine Kreuzung ist ein Punkt, an dem drei oder mehr Straßen zusammentreffen; und eine Sackgasse ist ein Punkt, an dem ein Straßenabschnitt endet, ohne mit einem weiteren verbunden zu sein.

  • ALLOW_UTURNSWenden ist überall erlaubt. Wenden zuzulassen bedeutet, dass das Fahrzeug bei einem Knoten wenden und auf der gleichen Straße wieder zurückfahren kann. Dies ist der Standardwert.
  • NO_UTURNSWenden ist an allen Knoten verboten: Pseudo-Knoten, Kreuzungen und Sackgassen. Beachten Sie jedoch, dass Wenden erlaubt sein kann, auch wenn diese Option gewählt wurde. Zum Vermeiden von Wendemanövern an Ereignissen und Einrichtungen legen Sie im Feldwert CurbApproach fest, dass Wenden verboten ist.
  • ALLOW_DEAD_ENDS_ONLYWenden ist an allen Knoten verboten, es sei denn, es ist nur eine verbundene Straße vorhanden (Sackgasse).
  • ALLOW_DEAD_ENDS_AND_INTERSECTIONS_ONLYWenden ist an Pseudo-Knoten verboten, an denen genau zwei angrenzende Straßen aufeinander treffen, jedoch an Kreuzungen und in Sackgassen erlaubt. Damit wird verhindert, dass in der Straßenmitte gewendet wird, wo ein Straßenabschnitt in Form zweier Straßen-Features digitalisiert ist.

Der von Ihnen für diesen Parameter eingegebene Wert wird ignoriert, es sei denn, Reisemodus ist auf Benutzerdefiniert festgelegt, was dem Standardwert entspricht.

String
time_window_factor
(optional)

Gibt an, wie wichtig die Einhaltung von Zeitfenstern ist.

  • HighDer Schwerpunkt liegt auf einer rechtzeitigen Ankunft statt auf der Minimierung der Fahrzeiten. Beispielsweise wählen Unternehmen mit zeitkritischen Lieferungen oder einem Schwerpunkt auf Kundenservice "Hoch" aus.
  • MediumDer Schwerpunkt liegt auf einem ausgewogenen Verhältnis zwischen der Minimierung der Fahrzeiten und der Ankunft innerhalb der Zeitfenster. Dies ist der Standardwert.
  • LowDer Schwerpunkt liegt auf der Minimierung der Fahrzeiten statt auf der rechtzeitigen Ankunft. Sie können ggf. diese Einstellung wählen, wenn Sie einen wachsenden Rückstand an Service-Anforderungen bewältigen müssen. Um an einem Tag mehr Aufträge durchführen zu können und den Rückstand abzuarbeiten, können Sie "Niedrig" auswählen, obwohl den Kunden durch die Verspätungen Unannehmlichkeiten entstehen können.
String
spatially_cluster_routes
(optional)

Gibt an, ob Routen räumlich gruppiert werden.

  • CLUSTER (True): Für alle Routen werden automatisch dynamische Routenschwerpunkte erstellt. Die einer individuellen Route zugewiesenen Aufträge werden räumlich gruppiert. Beim Bilden von Clustern für Aufträge befinden sich Routen häufig in kleineren Gebieten. Verschiedene Routenlinien schneiden sich weniger oft. Die Gesamtfahrzeiten werden jedoch erhöht.
  • NO_CLUSTER (False): Es werden keine dynamischen Routenschwerpunkte erstellt. Wählen Sie diese Option, wenn Routenzonen angegeben sind.

Boolean
route_zones
(optional)

Weist Arbeitsgebiete für bestimmte Routen aus. Eine Routenzone ist ein Polygon-Feature. Mit ihr werden Routen eingeschränkt, um nur die Aufträge durchzuführen, die im angegebenen Gebiet oder in dessen Nähe liegen. Nachfolgend finden Sie Beispiele für Fälle, in denen sich Routenzonen als sinnvoll erweisen:

  • Einige Ihrer Mitarbeiter verfügen nicht über die erforderlichen Genehmigungen für die Durchführung von Arbeit in bestimmten Bundesländern oder Gemeinden. Sie können eine harte Routenzone erstellen, damit diese Mitarbeiter nur Aufträge in Gebieten erreichen, in denen die Anforderungen erfüllt werden.
  • Bei einem Ihrer Fahrzeuge treten häufig Pannen auf und es soll nur Aufträge an Standorten durchführen, die sich in der Nähe Ihrer Reparaturwerkstatt befinden, um die Reaktionszeit zu minimieren. Sie können eine weiche oder harte Routenzone erstellen, um das Fahrzeug in der Nähe zu behalten.

Bei der Angabe der Routenzonen müssen Sie mithilfe der folgenden Attribute deren jeweilige Eigenschaften, z. B. die zugeordnete Route, festlegen:

ObjectID

Das vom System verwaltete ID-Feld.

RouteName

Der Name der Route, für die diese Zone gilt. Einer Routenzone kann maximal eine Route zugeordnet sein. Dieses Feld darf keine NULL-Werte enthalten, und es fungiert als Fremdschlüssel für das Feld Name in Routen.

IsHardZone

Ein boolescher Wert, der eine harte oder weiche Routenzone angibt. Der Wert "Wahr" gibt an, dass es sich um eine harte Routenzone handelt. Dies bedeutet, dass ein Auftrag, der sich außerhalb des Routenzonenpolygons befindet, der Route nicht zugewiesen werden kann. Der Standardwert ist 1 (Wahr). Der Wert "False"(0) gibt an, dass Aufträge außerhalb des Routenzonenpolygons dennoch zugewiesen werden können, die Kosten für die Durchführung des Auftrags jedoch mit einer Funktion gewichtet werden, die auf der euklidischen Entfernung von der Routenzone basiert. Im Grunde bedeutet dies, dass die Wahrscheinlichkeit einer Zuweisung des Auftrags zu der Route umso geringer ist, je größer die direkte Entfernung der weichen Zone vom Auftrag ist.

Feature Set
route_renewals
(optional)

Gibt die Zwischendepots an, über die die Routen führen können, um die Fracht für Auslieferungs- oder Abholungsaufträge zu laden oder zu entladen. Über "Lager (Be-/Entladen)" wird eine Route mit einem Depot verknüpft. Die Beziehung gibt an, dass für die Route das Be- oder Entladen am zugeordneten Depot möglich ist.

Lager zum Be-/Entladen können zum Modellieren von Szenarien verwendet werden, in denen ein Fahrzeug am Startdepot eine vollständige Ladung von Lieferungen abholt, die Aufträge durchführt, zum Depot zurückkehrt, um neue Lieferungen zu laden, und weitere Aufträge durchführt. Beispielsweise kann bei der Lieferung von Propangas das Fahrzeug mehrere Lieferungen durchführen, bis der Tank nahezu oder vollständig leer ist, einen Stützpunkt zum Nachfüllen aufsuchen und dann weitere Lieferungen durchführen.

Hier sind folgende Regeln und Optionen zu beachten:

  • Die Stelle zum Nachladen/Entladen bzw. der Standort zum Be-/Entladen muss nicht mit dem Start- oder Enddepot übereinstimmen.
  • Jede Route kann eine oder mehrere vorab festgelegte Standorte zum Be-/Entladen aufweisen.
  • Ein Standort zum Be-/Entladen kann mehrmals auf einer einzelnen Route verwendet werden.
  • In einigen Fällen sind möglicherweise für eine Route mehrere potenzielle Standorte zum Be-/Entladen vorhanden, und vom Solver wird der nächste verfügbare Standort zum Be-/Entladen bestimmt.

Bei der Angabe von Lagern zum Be-/Entladen müssen Sie mithilfe von Attributen deren jeweilige Eigenschaften, z. B. den Namen des Depots, in dem das Lagern zum Be-/Entladen erfolgen kann, festlegen:

ObjectID

Das vom System verwaltete ID-Feld.

DepotName

Der Name des Depots, bei dem das Be-/Entladen erfolgt. Dieses Feld darf keinen NULL-Wert enthalten, und es fungiert als Fremdschlüssel für das Feld Name in Depots.

RouteName

Der Name der Route, auf die dieses Lager zum Be-/Entladen angewendet wird. Dieses Feld darf keinen NULL-Wert enthalten, und es fungiert als Fremdschlüssel für das Feld Name in Routen.

ServiceTime

Die Durchführungszeit für das Be-/Entladen. Dieses Feld kann einen NULL-Wert enthalten. Ein NULL-Wert gibt an, dass keine Durchführungszeit vorhanden ist.

Die Einheit für diesen Feldwert wird mithilfe des Parameters time_units angegeben.

Die Zeit zum Beladen eines Fahrzeugs an einem Depot zum Be-/Entladen kann von der Größe des Fahrzeugs und seinem Beladungszustand abhängen. Die Durchführungszeit für das Be-/Entladen an einem Lager ist ein fester Wert, bei dem das tatsächliche Beladen nicht berücksichtigt wird. Für die Durchführungszeit zum Be-/Entladen sollte daher ein Wert festgelegt werden, der einer vollständigen Lkw-Ladung oder einer durchschnittlichen Lkw-Ladung entspricht, oder Sie können einen eigenen Schätzwert für die Zeit festlegen.

Record Set
order_pairs
(optional)

Kombiniert Abhol- und Lieferaufträge, sodass sie über dieselbe Route abgearbeitet werden. Die Angabe von Auftragspaaren verhindert, dass die Analyse einer Route nur einen der Aufträge zuweist – entweder werden beide Aufträge derselben Route zugewiesen, oder keiner der Aufträge wird zugewiesen.

Zuweilen müssen Abholung und Lieferung der Aufträge paarweise zusammengefasst werden. Beispiel: Eine Kurierfirma benötigt eine Route, auf der ein wichtiges Paket abgeholt und ohne Rückkehr zum Depot oder zur Sortierstation geliefert wird, um die Lieferzeit zu minimieren. Durch die Verwendung von Auftragspaaren können diese zusammengehörigen Aufträge in der entsprechenden Reihenfolge derselben Route zugewiesen werden. Es können Einschränkungen für die Dauer zugewiesen werden, für die ein Paket im Fahrzeug bleiben darf. Beispiel: Eine Blutprobe muss innerhalb von zwei Stunden von der Arztpraxis in das Labor gebracht werden.

Einige Situationen können zwei Auftragspaare erfordern. Angenommen, Sie möchten eine Seniorin von ihrer Wohnung zum Arzt und zurück in ihre Wohnung fahren. Bei der Fahrt von ihrer Wohnung zur Arztpraxis handelt es sich um ein Auftragspaar mit einer gewünschten Ankunftszeit bei der Arztpraxis, und bei der Fahrt von der Arztpraxis zu ihrer Wohnung handelt es sich um ein weiteres Auftragspaar mit einer gewünschten Abholzeit.

Bei der Angabe von Auftragspaaren müssen Sie mithilfe von Attributen deren jeweilige Eigenschaften, darunter die Namen der beiden Aufträge, festlegen:

ObjectID

Das vom System verwaltete ID-Feld.

FirstOrderName

Der Name des ersten Auftrags des Paares. Dieses Feld dient als Fremdschlüssel für das Feld Name in Aufträgen.

SecondOrderName

Der Name des zweiten Auftrags des Paares. Dieses Feld dient als Fremdschlüssel für das Feld Name in Aufträgen.

Der erste Auftrag des Paares muss ein Abholungsauftrag sein, d. h., der Wert für das zugehörige Feld DeliveryQuantities ist NULL. Der zweite Auftrag des Paares muss ein Lieferauftrag sein, d. h., der Wert für das zugehörige Feld PickupQuantities ist NULL. Die Menge, die mit dem ersten Auftrag abgeholt wird, muss mit der Menge übereinstimmen, die mit dem zweiten Auftrag geliefert wird. Als Sonderfall können in Szenarien, in denen keine Kapazitäten verwendet werden, beide Aufträge die Menge 0 aufweisen.

Die Auftragsmengen werden nicht an Depots geladen oder entladen.

MaxTransitTime

Die maximale Fahrzeit für das Auftragspaar. Die Fahrzeit ist die Dauer von der Abfahrtszeit des ersten Auftrags bis zur Ankunftszeit des zweiten Auftrags. Diese Einschränkung begrenzt die tatsächlich mit Fahren verbrachte Zeit zwischen den beiden Aufträgen. Wenn ein Fahrzeug Menschen oder verderbliche Waren transportiert, ist die Fahrzeit i. d. R. kürzer als bei einem Fahrzeug, das Pakete oder nicht verderbliche Waren transportiert. Dieses Feld kann NULL-Werte enthalten. Ein NULL-Wert gibt an, dass für die Fahrzeit keine Einschränkung gilt.

Die Einheit für diesen Feldwert wird durch die Eigenschaft timeUnits des Analyse-Objekts angegeben.

Vom Solver können Fahrzeitüberschreitungen (in Bezug auf die direkte Fahrzeit zwischen Auftragspaaren gemessen) verfolgt und gewichtet werden. Daher können Sie für den VRP-Solver eine von drei Strategien festlegen:

  • Minimieren der Gesamt-Fahrzeitüberschreitung, unabhängig von der Erhöhung der Reisekosten für die Fahrzeugflotte
  • Suchen einer Lösung, die einen Kompromiss zwischen Gesamtzeitverstoß und Reisekosten ermöglicht
  • Ignorieren der Gesamt-Fahrzeitüberschreitung und stattdessen Minimieren der Reisekosten für die Fahrzeugflotte

Wenn Sie für die Einstellung des Parameters excess_transit_factor eine Gewichtung zuweisen, wählen Sie letztendlich eine dieser drei Strategien aus. Unabhängig von der Gewichtung gibt der Solver jedoch in jedem Fall einen Fehler zurück, wenn der Wert für MaxTransitTime überschritten wird.

Record Set
excess_transit_factor
(optional)

Gibt an, wie wichtig die Reduzierung von Fahrzeitüberschreitungen bei Auftragspaaren ist. Die Fahrzeitüberschreitung entspricht der Zeit, um die die direkte Fahrzeit zwischen den Auftragspaaren überschritten wird. Eine Überschreitung kann durch Fahrerpausen oder Fahrten zu Zwischenaufträgen und Depots verursacht werden.

  • HighDer Schwerpunkt liegt auf der Reduzierung der Fahrzeitüberschreitungen bei Auftragspaaren, wobei die Gesamtreisekosten steigen dürfen. Diese Einstellung wird für gewöhnlich verwendet, wenn bei Aufträgen Personen befördert werden und Sie die Fahrzeiten der Personen verkürzen möchten. Ein typisches Beispiel sind Taxiunternehmen.
  • MediumDer Schwerpunkt liegt auf einem ausgewogenen Verhältnis zwischen Reduzierung der Fahrzeitüberschreitung und Reduzierung der Gesamtreisekosten. Dies ist der Standardwert.
  • LowDer Schwerpunkt liegt auf der Minimierung der Gesamtlösungskosten unabhängig von Fahrzeitüberschreitungen. Diese Einstellung wird normalerweise von Kurierdiensten verwendet. Da Kurierdienste Pakete und keine Personen befördern, muss die Fahrzeit nicht berücksichtigt werden. Mit der Einstellung "Niedrig" können Kuriere Auftragspaare in der ordnungsgemäßen Reihenfolge abwickeln und die Gesamtlösungskosten minimieren.
String
point_barriers
(optional)

Verwenden Sie diesen Parameter, um einen oder mehrere Punkte anzugeben, die als vorübergehende Beschränkungen dienen bzw. die für das Passieren der betreffenden Straßen zusätzlich veranschlagte Zeit oder Entfernung anzeigen. Mit einer Punkt-Barriere kann beispielsweise ein umgestürzter Baum auf einer Straße oder eine Zeitverzögerung wegen des Halts an einem Bahnübergang angezeigt werden.

Mit dem Werkzeug können maximal 250 Punkte als Barrieren hinzugefügt werden.

Bei der Angabe von Punkt-Barrieren können Sie mithilfe der folgenden Attribute deren jeweilige Eigenschaften, darunter Name und Barrierentyp, festlegen:

Name

Der Name der Barriere.

BarrierType

Gibt an, ob die Punkt-Barriere den Verkehr vollständig beschränkt oder ob beim Überschreiten der Barriere ein Mehraufwand an Zeit oder Entfernung entsteht. Der Wert für dieses Attribut wird als eine der nachfolgenden Ganzzahlen angegeben (verwenden Sie nicht den Namen in Klammern, sondern den numerischen Code):

  • 0 (Einschränkung): Untersagt, dass die Barriere passiert wird. Die Barriere wird "Punkt-Barriere für Einschränkungen" genannt, da sie als Einschränkung fungiert.

  • 2 (Zusatzkosten): Ein Passieren der Barriere verursacht eine längere Fahrzeit oder -entfernung in Höhe des in den Feldern Additional_Time, Additional_Distance oder AdditionalCost genannten Wertes. Dieser Barrierentyp wird "Punktbarriere für Zusatzkosten" genannt.

Additional_Time

Die zusätzliche Fahrzeit, die durch das Passieren der Barriere anfällt. Dieses Feld gilt nur für Barrieren vom Typ "Zusatzkosten" und wenn der Parameterwert Maßeinheiten zeitbasiert ist.

Dieser Feldwert muss größer oder gleich Null sein, und seine Einheiten müssen mit den Einheiten des Parameters Maßeinheiten identisch sein.

Additional_Distance

Die zusätzliche Entfernung, die durch das Passieren der Barriere anfällt. Dieses Feld gilt nur für Barrieren vom Typ "Zusatzkosten" und wenn der Parameterwert Maßeinheiten entfernungsbasiert ist.

Der Feldwert muss größer oder gleich Null sein, und seine Einheiten müssen mit den Einheiten des Parameters Maßeinheiten identisch sein.

AdditionalCost

Die zusätzlichen Kosten, die durch das Passieren der Barriere anfallen. Dieses Feld gilt nur für Barrieren vom Typ "Zusatzkosten" und wenn der Parameterwert Maßeinheiten weder zeit- noch entfernungsbasiert ist.

FullEdge

Gibt an, wie Punkt-Barrieren für Beschränkungen bei der Analyse auf die Kantenelemente angewendet werden. Der Feldwert wird als eine der nachfolgenden Ganzzahlen angegeben (verwenden Sie nicht den Namen in Klammern, sondern den numerischen Code):

  • 0 (False): Lässt den Verkehr auf der Kante bis zur Barriere zu, die Barriere kann jedoch nicht passiert werden. Dies ist der Standardwert.
  • 1 (True): Beschränkt den Verkehr an allen Positionen der entsprechenden Kante.

CurbApproach

Gibt die Verkehrsrichtung an, die von der Barriere betroffen ist. Der Feldwert wird als eine der nachfolgenden Ganzzahlen angegeben (verwenden Sie nicht den Namen in Klammern, sondern den numerischen Code):

  • 0 (Beide Seiten des Fahrzeugs): Die Barriere wirkt sich auf den Verkehr über die Kante in beide Richtungen aus.
  • 1 (Rechte Seite des Fahrzeugs): Die Barriere wirkt sich nur auf Fahrzeuge aus, bei denen sich die Barriere aufgrund der Fahrtrichtung auf der rechten Seite des Fahrzeugs befindet. Auf Fahrzeuge, die die gleiche Kante überqueren, bei denen die Barriere jedoch auf der linken Seite des Fahrzeugs liegt, hat die Barriere keine Auswirkungen.
  • 2 (Linke Seite des Fahrzeugs): Die Barriere wirkt sich nur auf Fahrzeuge aus, bei denen sich die Barriere aufgrund der Fahrtrichtung auf der linken Seite des Fahrzeugs befindet. Auf Fahrzeuge, die die gleiche Kante überqueren, bei denen die Barriere jedoch auf der rechten Seite des Fahrzeugs liegt, hat die Barriere keine Auswirkungen.

Da Knoten Punkte sind und keine Seite haben, wirken sich Barrieren für Knoten auf alle Fahrzeuge aus, unabhängig vom Attribut "CurbApproach".

Das Attribut CurbApproach kann sowohl in Ländern mit Rechtsverkehr (Deutschland) als auch in Ländern mit Linksverkehr (Großbritannien) verwendet werden. Stellen Sie sich zunächst eine Einrichtung auf der linken Seite eines Fahrzeugs vor. Es befindet sich stets auf der linken Seite, egal ob das Fahrzeug auf der linken oder rechten Seite der Straße fährt. Was sich abhängig von den nationalen Verkehrsregeln ändern kann, ist Ihre Entscheidung, aus welcher Richtung Sie sich der Einrichtung nähern, sodass sie sich entweder links oder rechts vom Fahrzeug befindet. Um beispielsweise eine Einrichtung zu erreichen, ohne dass sich eine Fahrspur zwischen dem Fahrzeug und der Einrichtung befindet, wählen Sie in Deutschland 1 (Rechte Seite des Fahrzeugs), in Großbritannien hingegen 2 (Linke Seite des Fahrzeugs) aus.

Bearing

Die Richtung, in die sich ein Punkt bewegt. Die Einheit ist Grad und wird im Uhrzeigersinn von geographisch Nord gemessen. Dieses Feld wird in Verbindung mit dem Feld BearingTol verwendet.

Peilungsdaten werden normalerweise automatisch von einem mobilen Gerät gesendet, das mit einem GPS-Empfänger ausgestattet ist. Sie sollten möglichst Peilungsdaten einbeziehen, wenn Sie eine sich bewegende Eingabeposition laden, beispielsweise einen Fußgänger oder ein Fahrzeug.

Durch die Verwendung dieses Feldes kann verhindert werden, dass Positionen falschen Kanten zugewiesen werden, was auftreten kann, wenn er sich zufällig in der Nähe einer Kreuzung oder einer Überführung befindet. Mithilfe der Peilung kann das Werkzeug einfacher ermitteln, auf welcher Straßenseite sich der Punkt befindet.

Weitere Informationen über Peilung und Peilungstoleranz

BearingTol

Anhand des Peilungstoleranzwertes wird ein Bereich mit zulässigen Peilungswerten erstellt, wenn Punkte über das Feld Bearing auf einer Kante bewegt werden. Wenn der Wert des Feldes Bearing innerhalb des Bereichs der zulässigen Werte liegt, die über die Peilungstoleranz auf einer Kante generiert werden, kann der Punkt dort als Netzwerkstandort hinzugefügt werden. Andernfalls wird der nächstgelegene Punkt an der übernächsten Kante ausgewertet.

Die Einheiten in Grad, und der Standardwert ist 30. Der Wert muss größer als 0 und kleiner als 180 sein. Der Wert 30 bedeutet, dass beim Hinzufügen eines Netzwerkstandortes auf einer Kante durch Network Analyst auf beiden Seiten der Kante (links und rechts) und in beiden Digitalisierrichtungen der Kante ein zulässiger Peilungswertebereich in einem Winkel von 15 Grad generiert wird.

Weitere Informationen über Peilung und Peilungstoleranz

NavLatency

Dieses Feld wird nur im Berechnungsprozess verwendet, wenn die Felder Bearing und BearingTol ebenfalls Werte enthalten. Die Eingabe eines NavLatency-Feldwertes ist jedoch optional, selbst wenn in Bearing und BearingTol Werte enthalten sind. NavLatency gibt an, welche Kosten voraussichtlich zwischen dem Senden von GPS-Informationen von einem sich bewegenden Fahrzeug zu einem Server und dem Empfang der verarbeiteten Route durch das Navigationsgerät des Fahrzeugs anfallen.

Die Einheiten von NavLatency entsprechen denen des Impedanzattributs.

Feature Set
line_barriers
(optional)

Verwenden Sie diesen Parameter, um eine oder mehrere Linien anzugeben, die das Überfahren von Linien, die Straßen überschneiden, verbieten. Mit einer Linien-Barriere kann beispielsweise eine Parade oder Demonstration modelliert werden, die den Verkehr über mehrere Straßenzüge hinweg blockiert. Mit einer Linien-Barriere können außerdem schnell mehrere Straßen abgeriegelt werden, um unerwünschte Teile des Straßennetzes aus den möglichen Routen auszuschließen.

Die Anzahl der Straßen, die mithilfe des Werkzeugparameters Linien-Barrieren beschränkt werden können, ist begrenzt. Es gibt zwar keine Begrenzung für die Anzahl der Linien, die Sie als Linien-Barrieren angeben können, doch die Gesamtzahl der Straßen, die von allen Linien überschnitten werden, darf 500 nicht überschreiten.

Bei der Angabe von Linien-Barrieren können Sie mithilfe der folgenden Attribute die Eigenschaften "Name" und "Barrierentyp" festlegen:

Name

Der Name der Barriere.

Feature Set
polygon_barriers
(optional)

Verwenden Sie diesen Parameter, um Polygone anzugeben, die den Verkehr entweder vollständig beschränken oder für die mehr Zeit oder eine längere Strecke für das Durchfahren der von den Polygonen überschnittenen Straßen veranschlagt wird.

Der Service begrenzt die Anzahl der Straßen, die Sie mithilfe des Parameters Polygon-Barrieren beschränken können. Es gibt zwar keine Begrenzung für die Anzahl der Polygone, die Sie als Polygon-Barrieren angeben können, doch die Gesamtzahl der Straßen, die von allen Polygonen überschnitten werden, darf 2.000 nicht überschreiten.

Bei der Angabe der Polygon-Barrieren können Sie mithilfe der folgenden Attribute deren jeweilige Eigenschaften, darunter Name und Barrierentyp, festlegen:

Name

Der Name der Barriere.

BarrierType

Gibt an, ob die Barriere den Verkehr vollständig beschränkt oder ob beim Passieren der Barriere Mehrkosten (in Form von Zeit oder Entfernung) entstehen. Der Feldwert wird als eine der nachfolgenden Ganzzahlen angegeben (verwenden Sie nicht den Namen in Klammern, sondern den numerischen Code):

  • 0 (Einschränkung): Untersagt, dass die Barriere an irgend einer Stelle passiert werden kann. Die Barriere wird "Polygon-Barriere für Einschränkungen" genannt, da sie den Verkehr an allen Punkten unterbindet, an denen das Polygon das Netzwerk schneidet. Dieser Barrierentyp wird beispielsweise verwendet, um überflutete Bereiche der Straße zu modellieren und den Straßenverkehr in diesen Bereichen zu sperren.

  • 1 (Kostenfaktor): Multipliziert die für das Passieren der betreffenden Straßen veranschlagten Kosten (z. B. Fahrzeit oder Entfernung) mit einem aus den Feldern ScaledTimeFactor oder ScaledDistanceFactor stammenden Faktor. Wenn die Straßen nur zum Teil von der Barriere abgedeckt werden, wird die Fahrzeit oder Entfernung aufgeteilt und danach multipliziert. Ein Faktor von 0,25 bedeutet beispielsweise, dass eine Fahrzeit veranschlagt wird, die um das Vierfache kürzer ist als üblich. Bei einem Faktor von 3,0 nimmt der Weg über diese Straßen hingegen dreimal so viel Zeit in Anspruch. Dieser Barrierentyp wird "Polygon-Barriere für Zusatzkosten" genannt. Er kann beispielsweise zum Modellieren von Stürmen verwendet werden, durch die die Reisegeschwindigkeit in bestimmten Regionen abnimmt.

ScaledTimeFactor

Um diesen Faktor erhöht sich die Fahrzeit durch die Straßen, die von der Barriere abgeschnitten werden. Der Feldwert muss größer 0 sein.

Dieses Feld gilt nur für Barrieren vom Typ "Skalierte Kosten" und wenn der Parameter Maßeinheiten zeitbasiert ist.

ScaledDistanceFactor

Um diesen Faktor erhöht sich die Strecke durch die Straßen, die von der Barriere abgeschnitten werden. Der Feldwert muss größer 0 sein.

Dieses Feld gilt nur für Barrieren vom Typ "Skalierte Kosten" und wenn der Parameter Maßeinheiten entfernungsbasiert ist.

ScaledCostFactor

Um diesen Faktor erhöhen sich die Kosten für die Straßen, die sich mit der Barriere schneiden. Der Feldwert muss größer 0 sein.

Dieses Feld gilt nur für Barrieren vom Typ "Skalierte Kosten" und wenn der Parameter Maßeinheiten weder zeit- noch entfernungsbasiert ist.

Feature Set
use_hierarchy_in_analysis
(optional)

Gibt an, ob beim Suchen der besten Route die Hierarchie verwendet werden soll.

  • Aktiviert (True): Beim Suchen von Routen wird die Hierarchie verwendet. Wenn die Hierarchie berücksichtigt wird, sucht das Werkzeug erst nach übergeordneten Straßen, z. B. Autobahnen, und dann nach untergeordneten Straßen, z. B. Landstraßen. Damit kann simuliert werden, dass ein Fahrer lieber auf Autobahnen statt Landstraßen fährt, selbst wenn die Fahrstrecke dadurch länger ist. Dies trifft besonders auf die Ermittlung von Routen für weit entfernte Ziele zu, da Fahrer lange Wegstrecken lieber auf Autobahnen zurücklegen, um Stopps, Kreuzungen oder Kurven zu vermeiden. Insbesondere bei langen Wegstrecken beschleunigt die Anwendung von Hierarchien den Rechenvorgang, da das Werkzeug die beste Route aus einer relativ kleinen Anzahl an Straßen auswählt.
  • Deaktiviert (False): Beim Suchen von Routen wird die Hierarchie nicht verwendet. Spielt die Hierarchie keine Rolle, erhält bei der Ermittlung der Route kein Straßentyp den Vorzug und es fließen alle Straßen in die Berechnung ein. Das ist häufig der Fall, wenn nach einer kurzen Route innerhalb einer Stadt gesucht wird.

Das Werkzeug verwendet die Hierarchie automatisch, wenn die geradlinige Entfernung zwischen den Aufträgen oder Depots bzw. zwischen Aufträgen und Depots 80 km überschreitet, selbst wenn dieser Parameter deaktiviert ist (False).

Dieser Parameter wird ignoriert, es sei denn, Reisemodus ist auf Benutzerdefiniert festgelegt, was dem Standardwert entspricht.

Boolean
restrictions
[restrictions,...]

Die Beschränkungen, die bei der Ermittlung der besten Routen vom Werkzeug berücksichtigt werden.

Einschränkungen sind Präferenzen oder Anforderungen eines Fahrers. In den meisten Fällen führen Einschränkungen dazu, dass Straßen unzulässig werden. Wird beispielsweise die Beschränkung "Mautstraßen vermeiden" verwendet, enthält die berechnete Route nur dann Mautstraßen, wenn das Befahren solcher Straßen zum Erreichen eines Ereignisses oder einer Einrichtung notwendig ist. Mit Höheneinschränkung können sämtliche Abstände unterhalb der Fahrzeughöhe vermieden werden. Wenn Sie korrosive Materialien mit dem Fahrzeug transportieren, wird mit der Beschränkung "Gefahrgut verboten" vermieden, dass diese Materialien auf Straßen transportiert werden, die für Gefahrguttransporte als unzulässig markiert sind.

Hinweis:

Die von Ihnen für diesen Parameter eingegebenen Werte werden ignoriert, es sei denn, Reisemodus ist auf Benutzerdefiniert festgelegt.

Hinweis:

Bei manchen Beschränkungen muss ein zusätzlicher Wert angegeben werden, damit sie verwendet werden können. Dieser Wert muss mit dem Namen der Beschränkung und einem beschränkungsspezifischen Parameter verknüpft werden. Sie erkennen diese Art von Beschränkungen daran, dass ihr Name in der Spalte "AttributeName" des Parameters Attributparameterwerte aufgeführt wird. Um die ordnungsgemäße Verwendung der Beschränkung bei der Ermittlung passierbarer Straßen sicherzustellen, muss im Parameter Attributparameterwerte das Feld ParameterValue angegeben werden.

Hinweis:

Manche Einschränkungen werden nicht in allen Ländern unterstützt; ihre Verfügbarkeit nach Regionen wird nachfolgend aufgelistet. Anhand der Länderliste auf der Webseite Gebietsabdeckung der Netzwerkanalyse [engl.] können Sie herausfinden, welche dieser Beschränkungen in einem bestimmten Land verfügbar sind. Steht in der Spalte "Logistics Attribute" der Wert Yes, so wird die Beschränkung mit begrenzter regionaler Verfügbarkeit in diesem Land unterstützt. Wenn Sie Namen von Einschränkungen angeben, die in dem Land, in dem sich Ihre Ereignisse und Aufträge befinden, nicht verfügbar sind, werden die ungültigen Einschränkungen vom Service ignoriert. Der Service ignoriert außerdem Beschränkungen, wenn der Wert für den Attributparameter Verwendung von Beschränkungen zwischen 0 und 1 liegt (siehe Parameter Attributparameterwert). Beschränkungen aller Art sind unzulässig, wenn der Wert des Parameters Verwendung von Beschränkungen größer als 0 ist.

Das Werkzeug unterstützt die folgenden Einschränkungen:

  • Any Hazmat ProhibitedDie Ergebnisse schließen Straßen aus, in denen der Transport von jeglichen gefährlichen Materialien verboten ist.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
  • Avoid Carpool RoadsIn den Ergebnissen werden Straßen vermieden, die ausschließlich für Fahrgemeinschaften (Sonderfahrspuren) konzipiert sind.Verfügbarkeit: Alle Länder
  • Avoid Express LanesDie Ergebnisse vermeiden Straßen, die als Hochgeschwindigkeitsspuren ausgewiesen sind.Verfügbarkeit: Alle Länder
  • Avoid FerriesDie Ergebnisse vermeiden Fähren.Verfügbarkeit: Alle Länder
  • Avoid GatesIn den Ergebnissen werden Straßen vermieden, die aufgrund von Toren mit Schlüsselzugang oder beschrankter Einfahrten nicht frei zugänglich sind.Verfügbarkeit: Alle Länder
  • Avoid Limited Access RoadsIn den Ergebnissen werden Fernverkehrsstraßen vermieden.Verfügbarkeit: Alle Länder
  • Avoid Private RoadsDie Ergebnisse vermeiden Straßen, die sich in Privatbesitz befinden und verwaltet werden.Verfügbarkeit: Alle Länder
  • Avoid Roads Unsuitable for PedestriansDie Ergebnisse vermeiden Straßen, die nicht für Fußgänger geeignet sind.Verfügbarkeit: Alle Länder
  • Avoid StairwaysIn den Ergebnissen werden alle Treppen auf einer für Fußgänger geeigneten Route vermieden.Verfügbarkeit: Alle Länder
  • Avoid Toll RoadsDie Ergebnisse vermeiden alle Mautstraßen für Autos.Verfügbarkeit: Alle Länder
  • Avoid Toll Roads for TrucksDie Ergebnisse vermeiden alle Mautstraßen für Lkw.Verfügbarkeit: Alle Länder
  • Avoid Truck Restricted RoadsDie Ergebnisse vermeiden Straßen, die von Lkw nur zu Lieferzwecken genutzt werden dürfen.Verfügbarkeit: Alle Länder
  • Avoid Unpaved RoadsDie Ergebnisse vermeiden Straßen, die nicht befestigt sind (z. B. Schmutz, Schotter usw.)Verfügbarkeit: Alle Länder
  • Axle Count RestrictionDie Ergebnisse schließen Straßen aus, die von Lkw mit der angegebenen Achsenzahl nicht befahren werden dürfen. Die Anzahl der Achsen kann mithilfe des Restriktionsparameters "Achsenzahl" angegeben werden.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
  • Driving a BusDie Ergebnisse schließen Straßen aus, die für Fußgänger verboten sind. Mit dieser Einschränkung wird auch sichergestellt, dass die Ergebnisse Einbahnstraßen berücksichtigen.Verfügbarkeit: Alle Länder
  • Driving a TaxiDie Ergebnisse schließen Straßen aus, die von Taxis nicht befahren werden dürfen. Mit dieser Einschränkung wird auch sichergestellt, dass die Ergebnisse Einbahnstraßen berücksichtigen.Verfügbarkeit: Alle Länder
  • Driving a TruckDie Ergebnisse schließen Straßen aus, die von Lkw nicht befahren werden dürfen. Mit dieser Einschränkung wird auch sichergestellt, dass die Ergebnisse Einbahnstraßen berücksichtigen.Verfügbarkeit: Alle Länder
  • Driving an AutomobileDie Ergebnisse schließen Straßen aus, die von Kraftfahrzeugen nicht befahren werden dürfen. Mit dieser Einschränkung wird auch sichergestellt, dass die Ergebnisse Einbahnstraßen berücksichtigen.Verfügbarkeit: Alle Länder
  • Driving an Emergency VehicleDie Ergebnisse schließen Straßen aus, die von Notfallfahrzeugen nicht befahren werden dürfen. Mit dieser Einschränkung wird auch sichergestellt, dass die Ergebnisse Einbahnstraßen berücksichtigen.Verfügbarkeit: Alle Länder
  • Height RestrictionDie Ergebnisse schließen Straßen aus, in denen die Fahrzeughöhe die für die Straße maximal zulässige Höhe überschreitet. Die Fahrzeughöhe kann mithilfe des Restriktionsparameters "Fahrzeughöhe" angegeben werden.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
  • Kingpin to Rear Axle Length RestrictionDie Ergebnisse schließen Straßen für Lkw aus, deren Fahrzeuglänge den für die Straße maximal zulässigen Abstand des Sattelzapfens zur Hinterachse überschreitet. Die Länge zwischen dem Sattelzapfen und der Hinterachse des Fahrzeugs kann mithilfe des Restriktionsparameters "Sattelzapfen-Hinterachsen-Länge" (in Metern) angegeben werden.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
  • Length RestrictionDie Ergebnisse schließen Straßen aus, in denen die Fahrzeuglänge die für die Straße maximal zulässige Länge überschreitet. Die Fahrzeuglänge kann mithilfe des Restriktionsparameters "Fahrzeuglänge" (in Metern) angegeben werden.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
  • Preferred for PedestriansDie Ergebnisse verwenden bevorzugte Routen, die für die Fußgängernavigation geeignet sind.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
  • Riding a MotorcycleDie Ergebnisse schließen Straßen aus, die von Motorrädern nicht befahren werden dürfen. Mit dieser Einschränkung wird auch sichergestellt, dass die Ergebnisse Einbahnstraßen berücksichtigen.Verfügbarkeit: Alle Länder
  • Roads Under Construction ProhibitedDie Ergebnisse schließen Straßen aus, die sich im Bau befinden.Verfügbarkeit: Alle Länder
  • Semi or Tractor with One or More Trailers ProhibitedDie Ergebnisse schließen Straßen aus, die von Zugmaschinen oder Traktoren mit einem oder mehr Anhängern nicht befahren werden dürfen.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
  • Single Axle Vehicles ProhibitedDie Ergebnisse schließen Straßen aus, die von Fahrzeugen mit nur einer Achse nicht befahren werden dürfen.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
  • Tandem Axle Vehicles ProhibitedDie Ergebnisse schließen Straßen aus, die von Fahrzeugen mit Tandemachsen nicht befahren werden dürfen.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
  • Through Traffic ProhibitedDie Ergebnisse schließen Straßen aus, in denen (ortsfremder) Durchgangsverkehr verboten ist.Verfügbarkeit: Alle Länder
  • Truck with Trailers RestrictionDie Ergebnisse schließen Straßen aus, die von Lkw mit der angegebenen Anhängerzahl nicht befahren werden dürfen. Die Anzahl der Lkw-Anhänger kann mithilfe des Restriktionsparameters "Lkw-Anhängerzahl" angegeben werden.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
  • Use Preferred Hazmat RoutesDie Ergebnisse bevorzugen Straßen, die für den Transport von jeglichen gefährlichen Materialien ausgelegt sind.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
  • Use Preferred Truck RoutesIn den Ergebnissen werden Straßen bevorzugt, die als Lkw-Routen ausgewiesen sind, entweder von einem Bundesstaat bzw. einer Provinz oder gemäß dem in den USA geltenden National Surface Transportation Assistance Act im nationalen Straßennetz. Berücksichtigt werden auch Straßen, die von Lkw-Fahrern bevorzugt befahren werden.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
  • WalkingDie Ergebnisse schließen Straßen aus, die von Fußgängern nicht verwendet werden dürfen.Verfügbarkeit: Alle Länder
  • Weight RestrictionDie Ergebnisse schließen Straßen aus, in denen das Fahrzeuggewicht das für die Straße maximal zulässige Gewicht überschreitet. Das Fahrzeuggewicht kann mithilfe des Restriktionsparameters "Fahrzeuggewicht" (in Kilogramm) angegeben werden.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
  • Weight per Axle RestrictionDie Ergebnisse schließen Straßen aus, in denen das Achsgewicht des Fahrzeugs das für die Straße maximal zulässige Achsgewicht überschreitet. Das Achsgewicht des Fahrzeugs kann mithilfe des Restriktionsparameters "Fahrzeugachsgewicht" (in Kilogramm) angegeben werden.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
  • Width RestrictionDie Ergebnisse schließen Straßen aus, in denen die Fahrzeugbreite die für die Straße maximal zulässige Breite überschreitet. Die Fahrzeugbreite kann mithilfe des Restriktionsparameters "Fahrzeugbreite" (in Metern) angegeben werden.Verfügbarkeit: Länder in Nordamerika und Europa auswählen
String
attribute_parameter_values
(optional)

Verwenden Sie diesen Parameter, um zusätzliche erforderliche Werte für ein Attribut oder eine Beschränkung anzugeben, z. B. ob das Fahren auf beschränkten Straßen durch die Beschränkung untersagt, vermieden oder bevorzugt wird. Wenn aufgrund der Einschränkung Straßen vermieden oder bevorzugt werden sollen, können Sie den Grad der Vermeidung bzw. Bevorzugung mit diesem Parameter genauer angeben. Sie können beispielsweise auswählen, mautpflichtige Straßen grundsätzlich nicht zu verwenden, soweit als möglich zu meiden oder zu bevorzugen.

Hinweis:

Die von Ihnen für diesen Parameter eingegebenen Werte werden ignoriert, es sei denn, Reisemodus ist auf Benutzerdefiniert festgelegt.

Wenn Sie den Parameter Attributparameterwerte aus einer Feature-Class angeben, müssen die Feldnamen in der Feature-Class mit den folgenden Feldern übereinstimmen:

  • AttributeNameDer Name der Beschränkung.
  • ParameterName: Der Name des mit der Beschränkung verknüpften Parameters. Eine Einschränkung kann abhängig von der geplanten Verwendung einen oder mehrere ParameterName-Feldwerte enthalten.
  • ParameterValue: Der Wert für ParameterName, der vom Werkzeug bei der Auswertung der Beschränkung verwendet wird.

Der Parameter Attributparameterwerte hängt vom Parameter Beschränkungen ab. Das Feld ParameterValue ist nur zutreffend, wenn als Name der Einschränkung der Wert für den Parameter Einschränkungen angegeben wird.

In Attributparameterwerte verfügt jede Beschränkung (als AttributeName aufgelistet) über einen Wert für das Feld ParameterName und "Verwendung von Beschränkungen", womit angegeben wird, ob das Fahren auf Straßen, die mit der Beschränkung verknüpft sind, nicht zugelassen, vermieden oder bevorzugt wird. Auch der Grad, in dem diese Straßen vermieden oder bevorzugt werden sollen, wird angegeben. Dem ParameterName für "Verwendung von Beschränkungen" kann einer der folgenden Zeichenfolgenwerte oder der ihm entsprechende numerische Wert in Klammern zugewiesen werden:

  • PROHIBITED (-1): Fahren auf den Straßen, die in der Einschränkung genannt werden, ist vollkommen verboten.
  • AVOID_HIGH (5): Es ist äußerst unwahrscheinlich, dass die Straßen, die der Beschränkung zugeordnet sind, in die Route aufgenommen werden.
  • AVOID_MEDIUM (2): Es ist unwahrscheinlich, dass die Straßen, die der Beschränkung zugeordnet sind, in die Route aufgenommen werden.
  • AVOID_LOW (1.3): Es ist eher unwahrscheinlich, dass die Straßen, die der Beschränkung zugeordnet sind, in die Route aufgenommen werden.
  • PREFER_LOW (0.8): Es ist eher wahrscheinlich, dass die Straßen, die der Beschränkung zugeordnet sind, in die Route aufgenommen werden.
  • PREFER_MEDIUM (0.5): Es ist wahrscheinlich, dass die Straßen, die der Beschränkung zugeordnet sind, in die Route aufgenommen werden.
  • PREFER_HIGH (0.2): Es ist äußerst wahrscheinlich, dass die Straßen, die der Beschränkung zugeordnet sind, in die Route aufgenommen werden.

In den meisten Fällen können Sie für "Verwendung von Beschränkungen" den Standardwert "PROHIBITED" verwenden, wenn die Einschränkung von einer Fahrzeugeigenschaft, wie z. B. der Höhe, abhängig ist. In einigen Fällen hängt der Wert für "Verwendung von Beschränkungen" jedoch von den Routing-Voreinstellungen ab. Bei der Beschränkung "Mautstraßen vermeiden " etwa ist der Standardwert für das Attribut "Verwendung von Beschränkungen" die Einstellung "AVOID_MEDIUM". Dies bedeutet, dass das Werkzeug bei Verwendung dieser Einschränkung versucht, Mautstraßen nach Möglichkeit zu meiden. AVOID_MEDIUM weist außerdem darauf hin, wie wichtig es ist, Mautstraßen bei der Ermittlung der optimalen Route zu meiden. Dies hat eine mittlere Priorität. Durch Auswahl von "AVOID_LOW" wird der Vermeidung von Mautstraßen geringere Bedeutung beigemessen. Durch Auswahl von "AVOID_HIGH" hingegen wird der Vermeidung eine höhere Bedeutung zugeordnet, wodurch die Akzeptanz für die Erstellung von längeren Routen steigt, damit Mautstraßen vermieden werden können. Bei der Auswahl von "PROHIBITED" ist das Befahren von Mautstraßen grundsätzlich unzulässig, sodass eine Route auch nicht teilweise Mautstraßen enthalten kann. Bedenken Sie dabei, dass für einige Benutzer das Vermeiden bzw. Umgehen von Mautstraßen und damit der Mautgebühr das Ziel darstellt. Andere Fahrer bevorzugen dahingegen die Fahrt auf Mautstraßen, da sie der Vermeidung von Verkehrsverzögerungen mehr Bedeutung beimessen als der Bezahlung von Mautgebühren. Im letzteren Fall würden Sie "PREFER_LOW", "PREFER_MEDIUM" oder "PREFER_HIGH" als Wert für "Verwendung von Beschränkungen" auswählen. Je höher die Prioritätseinstellung, desto mehr versucht das Werkzeug, das Fahren auf Straßen, die dieser Einschränkung zugeordnet sind, zu meiden.

Record Set
populate_route_lines
(optional)

Gibt an, ob die Ausgabe-Routenlinie generiert wird.

  • Aktiviert (True): Die Ausgabe-Routen haben die exakte Form der zugrunde liegenden Straßen.
  • Deaktiviert (False): Es wird keine Form für die Ausgabe-Routen generiert, die Routen enthalten dennoch Tabelleninformationen über die Lösung. Wenn keine Routenlinien erstellt werden, können keine Wegbeschreibungen berechnet werden.

Wenn für den Parameter Routen-Shape die Einstellung Echtes Shape festgelegt wurde, kann die Generalisierung des Routen-Shapes mit den entsprechenden Werten für die Parameter Vereinfachungstoleranz für Routenlinien weiter gesteuert werden.

Unabhängig von dem für den Parameter Routen-Shape gewählten Wert wird die beste Route nie durch die geradlinige Strecke, sondern stets mittels Minimierung der Fahrstrecke durch die Straßen ermittelt. Dies bedeutet, dass sich nur die Routen-Shapes und nicht die zugrunde liegenden Straßen, die beim Ermitteln der Route berücksichtigt werden, unterscheiden.

Boolean
route_line_simplification_tolerance
(optional)

Das Maß, in dem die Geometrie der Ausgabelinien für Routen und Wegbeschreibungen vereinfacht wird.

Der von Ihnen für diesen Parameter eingegebene Wert wird ignoriert, es sei denn, Reisemodus ist auf Benutzerdefiniert festgelegt, was dem Standardwert entspricht.

Dieser Parameter wird vom Werkzeug ignoriert, wenn der Parameter populate_route_lines deaktiviert (False) ist.

Bei der Vereinfachung werden kritische Punkte auf einer Route beibehalten, wie Übergänge an Kreuzungen, um das wesentliche Shape der Route zu definieren, und andere Punkte entfernt. Die angegebene Vereinfachungsentfernung stellt den maximal zulässigen Versatz dar, den die vereinfachte Linie von der ursprünglichen Linie abweichen kann. Durch die Vereinfachung einer Linie wird die Anzahl der Stützpunkte in der Routengeometrie reduziert. Dadurch wird die Ausführungszeit des Werkzeugs verbessert.

Linear Unit
populate_directions
(optional)

Gibt an, ob vom Werkzeug Wegbeschreibungen für die einzelnen Routen generiert werden.

  • Aktiviert (True in Python): Die Wegbeschreibung wird abhängig von den Werten für die Parameter Sprache für Wegbeschreibung, Style-Name für Wegbeschreibung und Einheiten für Wegbeschreibungsentfernung generiert und konfiguriert.
  • Deaktiviert (False in Python): Es wird keine Wegbeschreibung generiert, wodurch ein leerer Wegbeschreibungs-Layer vom Werkzeug zurückgegeben wird.

Boolean
directions_language
(optional)

Die Sprache, die bei der Erstellung von Wegbeschreibungen verwendet wird.

Dieser Parameter wird nur verwendet, wenn der Parameter Wegbeschreibungen füllen (True in Python) aktiviert wurde.

Bei der Angabe des Parameterwertes ist einer der folgenden aus zwei oder fünf Zeichen bestehenden Sprachcodes zu verwenden:

  • ar: Arabisch
  • bs: Bosnisch
  • ca: Katalanisch
  • cs: Tschechisch
  • da: Dänisch
  • de: Deutsch
  • el: Griechisch
  • en: Englisch
  • es: Spanisch
  • et: Estnisch
  • fi: Finnisch
  • fr: Französisch
  • he: Hebräisch
  • hr: Kroatisch
  • hu: Ungarisch
  • id: Indonesisch
  • it: Italienisch
  • ja: Japanisch
  • ko: Koreanisch
  • lt: Litauisch
  • lv: Lettisch
  • nb: Norwegisch
  • nl: Niederländisch
  • pl: Polnisch
  • pt-BR: Portugiesisch (Brasilien)
  • pt-PT: Portugiesisch (Portugal)
  • ro: Rumänisch
  • ru: Russisch
  • sk: Slowakisch
  • sl: Slowenisch
  • sr: Serbisch
  • sv: Schwedisch
  • th: Thailändisch
  • tr: Türkisch
  • uk: Ukrainisch
  • vi: Vietnamesisch
  • zh-CN: Chinesisch (China)
  • zh-HK: Chinesisch (Hongkong)
  • zh-TW: Chinesisch (Taiwan)

Das Werkzeug sucht zuerst eine genaue Übereinstimmung für die angegebene Sprache, einschließlich aller Sprachlokalisierungen. Wird keine genaue Übereinstimmung gefunden, versucht es, die Sprachfamilie zuzuordnen. Wenn immer noch keine Übereinstimmung gefunden wird, gibt das Werkzeug die Wegbeschreibungen in der Standardsprache Englisch aus. Wenn die Sprache für die Wegbeschreibung als "es-MX" (mexikanisches Spanisch) angegeben ist, gibt das Werkzeug die Wegbeschreibung in Spanisch aus, da zwar der Sprachcode "es" unterstützt wird, der Sprachcode "es-MX" jedoch nicht.

Vorsicht:

Unterstützt eine Sprache die Lokalisierung, etwa brasilianisches Portugiesisch (pt-BR) und europäisches Portugiesisch (pt-PT), geben Sie die Sprachfamilie und die Lokalisierung an. Falls Sie nur die Sprachfamilie angeben, ordnet das Werkzeug nicht die Sprachfamilie zu und gibt stattdessen eine Wegbeschreibung in der Standardsprache Englisch aus. Ist beispielsweise "pt" als Sprache für die Wegbeschreibung angegeben, gibt das Werkzeug die Wegbeschreibung in Englisch aus, da es nicht bestimmen kann, ob die Wegbeschreibung in "pt-BR" oder "pt-PT" zurückgegeben werden soll.

String
directions_style_name
(optional)

Gibt den Namen des Formatierungs-Styles für Wegbeschreibungen an. Dieser Parameter wird nur verwendet, wenn der Parameter Wegbeschreibungen füllen (True in Python) aktiviert wurde.

  • NA DesktopDetaillierte Wegbeschreibung, die gedruckt werden kann.
  • NA NavigationDetaillierte Wegbeschreibung für ein Navigationsgerät im Fahrzeug.
String
travel_mode
(optional)

Die Transportmethode für die Modellierung in der Analyse. Reisemodi werden in ArcGIS Online verwaltet und können vom Administrator Ihrer Organisation konfiguriert werden, um die Workflows Ihrer Organisation widerzuspiegeln. Sie müssen den Namen eines Reisemodus angeben, der von Ihrer Organisation unterstützt wird.

Um eine Liste der unterstützten Namen für Reisemodi abzurufen, führen Sie das Werkzeug Get Travel Modes der Toolbox "Dienstprogramme" aus, das unter der GIS-Serververbindung verfügbar ist, unter der auch der Zugriff auf das Werkzeug erfolgt. Das Werkzeug Get Travel Modes fügt der Anwendung die Tabelle "Unterstützte Reisemodi" hinzu. Jeder Wert im Feld Travel Mode Name aus der Tabelle "Unterstützte Reisemodi" kann als Eingabe angegeben werden. Sie können auch den Wert aus dem Feld Travel Mode Settings als Eingabe festlegen. Dadurch wird die Ausführung des Werkzeugs beschleunigt, da es die Einstellungen nicht basierend auf dem Namen des Reisemodus suchen muss.

Der Standardwert Benutzerdefiniert ermöglicht Ihnen das Konfigurieren eines eigenen Reisemodus mithilfe der benutzerdefinierten Reisemodusparameter (Wenden an Kreuzungen, Hierarchie verwenden, Beschränkungen, Attributparameterwerte und Impedanz). Die Standardwerte des benutzerdefinierten Reisemodusparameters modellieren die Fahrt mit dem Auto. Sie können auch Benutzerdefiniert auswählen und die oben aufgeführten benutzerdefinierten Reisemodusparameter festlegen, um einen Fußgänger mit schneller Gehgeschwindigkeit zu modellieren oder einen Lkw, der eine bestimmte Höhe, ein bestimmtes Gewicht oder eine bestimmte Gefahrgutfracht hat. Probieren Sie bei Bedarf verschiedene Einstellungen aus, um die gewünschten Analyseergebnisse zu erhalten. Wenn Sie Ihre Analyseeinstellungen festgelegt haben, sollten Sie mit dem Administrator Ihrer Organisation zusammenarbeiten, um diese Einstellungen als Teil eines neuen oder vorhandenen Reisemodus zu speichern. Auf diese Weise können alle Benutzer in Ihrer Organisation die Analyse erneut mit denselben Einstellungen ausführen.

Vorsicht:

Durch Auswahl von Benutzerdefiniert werden die von Ihnen festgelegten benutzerdefinierten Reisemodusparameter in die Analyse einbezogen. Wenn Sie einen anderen als den von Ihrer Organisation definierten Reisemodus angeben, kann dies dazu führen, dass alle Werte, die Sie für die Parameter des benutzerdefinierten Reisemodus festgelegt haben, ignoriert werden; das Werkzeug überschreibt sie mit den Werten aus dem angegebenen Reisemodus.

String
impedance
(optional)

Gibt die Impedanz an. Dieser Wert repräsentiert den Aufwand bzw. die Kosten für Fahrten entlang von Straßensegmenten oder anderen Teilen des Verkehrsnetzes.

Die Fahrzeit stellt eine Impedanz dar: ein Auto benötigt auf einer leeren Straße möglicherweise nur eine Minute für einen Kilometer. Die Fahrzeiten können sich je nach Reisemodus ändern: Ein Fußgänger benötigt für diesen Kilometer möglicherweise mehr als 20 Minuten. Daher ist es wichtig, die richtige Impedanz für den modellierten Reisemodus zu wählen.

Auch die Fahrstrecke kann eine Impedanz sein; die Länge einer Straße in Kilometern kann als Impedanz angesehen werden. Die Reiseentfernung ist in diesem Sinne für alle Modi dieselbe – ein Kilometer ist für einen Fußgänger dasselbe wie für ein Auto. (Was sich ändern kann, sind die Wege, auf denen die verschiedenen Reisemodi absolviert werden können, was sich auf die Entfernung zwischen Punkten auswirkt – und das wird durch die Reisemodus-Einstellungen modelliert.)

Vorsicht:

Der von Ihnen für diesen Parameter eingegebene Wert wird ignoriert, es sei denn, Reisemodus ist auf Benutzerdefiniert festgelegt, was dem Standardwert entspricht.

  • TravelTimeEs werden historische und Live-Verkehrsdaten verwendet. Diese Option eignet sich zur Modellierung der Fahrzeiten von Fahrzeugen zu bestimmten Tageszeiten unter Berücksichtigung der Geschwindigkeiten aus den Live-Verkehrsdaten (sofern verfügbar). Bei Verwendung von TravelTime können Sie optional mit dem Attributparameter "TravelTime::Vehicle Maximum Speed (km/h)" eine etwaige Maximalgeschwindigkeit für das Fahrzeug festlegen.
  • MinutesEs werden keine Live-Verkehrsdaten verwendet, jedoch historische Durchschnittsgeschwindigkeiten für Autos.
  • TruckTravelTimeEs werden historische und Live-Verkehrsdaten verwendet, jedoch wird die geltende Geschwindigkeitsbegrenzung für Lkw berücksichtigt. Dies eignet sich zur Modellierung der Fahrzeiten von Lkw auf Straßen zu bestimmten Zeiten. Bei Verwendung von TruckTravelTime können Sie optional mit dem Attributparameter "TruckTravelTime::Vehicle Maximum Speed (km/h)" eine etwaige Maximalgeschwindigkeit für den Lkw festlegen.
  • TruckMinutesEs werden keine Live-Verkehrsdaten verwendet, sondern die langsameren Werte der historischen Durchschnittsgeschwindigkeiten für Kraftfahrzeuge sowie die geltenden Geschwindigkeitsbegrenzungen für Lkw.
  • WalkTimeDie Standardeinstellung ist für alle Straßen und Wege eine Geschwindigkeit von 5 km/h. Dieser Wert kann jedoch über den Attributparameter "WalkTime::Walking Speed (km/h)" konfiguriert werden.
  • TimeAt1KPHDie Standardeinstellung ist für alle Straßen und Wege eine Geschwindigkeit von 1 km/h. Die Geschwindigkeit kann nicht mithilfe von Attributparametern geändert werden.
  • Drive TimeModelliert die Fahrzeiten für ein Auto. Diese Fahrzeiten sind dynamisch und richten sich nach dem Verkehrsaufkommen in Gebieten, in denen Verkehrsdaten verfügbar sind. Dies ist der Standardwert.
  • Truck TimeModelliert die Fahrzeiten für einen Lkw. Diese Fahrzeiten sind für jede Straße statisch und richten sich nicht nach dem Verkehrsaufkommen.
  • Walk TimeModelliert die Laufzeiten für einen Fußgänger.

Wenn Sie eine zeitbasierte Impedanz auswählen, z. B. TravelTime, TruckTravelTime, Minutes, TruckMinutes oder WalkTime, muss der Parameter Unterbrechungseinheiten auf einen zeitbasierten Wert festgelegt werden. Bei Auswahl einer entfernungsbasierten Impedanz, z. B. Meilen oder Kilometer, müssen die Unterbrechungseinheiten entfernungsbasiert sein.

Vorversion:

Die Impedanzwerte Fahrzeit, LKW-Zeit, Gehzeit und Fahrstrecke werden nicht mehr unterstützt und werden in einer zukünftigen Version entfernt. Wenn Sie einen dieser Werte einsetzen, verwendet das Werkzeug den Parameter Zeitimpedanz für zeitbasierte Werte und den Parameter Entfernungsimpedanz für entfernungsbasierte Werte.

String
time_zone_usage_for_time_fields
(optional)

Gibt die Zeitzone für die Datums-/Zeit-Eingabefelder an, die vom Werkzeug unterstützt werden. Dieser Parameter gibt die Zeitzone für die folgenden Felder an: TimeWindowStart1, TimeWindowEnd1, TimeWindowStart2, TimeWindowEnd2, InboundArriveTime und OutboundDepartTime in Aufträgen. TimeWindowStart1, TimeWindowEnd1, TimeWindowStart2 und TimeWindowEnd2 in Depots. EarliestStartTime und LatestStartTime in Routen. TimeWindowStart und TimeWindowEnd in Pausen.

  • GEO_LOCALDie mit den Aufträgen oder Depots verknüpften Werte für Datum/Uhrzeit befinden sich in der Zeitzone, in der sich die Aufträge und Depots befinden. Bei Routen basieren die Werte für Datum/Uhrzeit auf der Zeitzone, in der sich das Startdepot für die Route befindet. Hat eine Route kein Startdepot, müssen sich alle Aufträge und Depots über alle Routen hinweg in einer einzelnen Zeitzone befinden. Bei Pausen basieren die Werte für Datum/Uhrzeit auf der Zeitzone der Routen. Wenn sich Ihr Depot beispielsweise in einem Gebiet befindet, in dem die Eastern Standard Time gilt und die Werte des ersten Zeitfensters (angegeben als TimeWindowStart1 und TimeWindowEnd1) 8.00 Uhr und 17.00 Uhr lauten, werden die Zeitfensterwerte als 8.00 Uhr und 17.00 Uhr Eastern Standard Time behandelt.
  • UTCDie mit den Aufträgen oder Depots verknüpften Werte für Datum/Uhrzeit sind in der koordinierten Weltzeit (UTC) angegeben und basieren nicht auf der Zeitzone, in der sich die Aufträge oder Depots befinden. Wenn sich Ihr Depot beispielsweise in einem Gebiet befindet, in dem die Eastern Standard Time gilt und die Werte des ersten Zeitfensters (angegeben als TimeWindowStart1 und TimeWindowEnd1) 8.00 Uhr und 17.00 Uhr lauten, werden die Zeitfensterwerte als 12.00 Uhr und 21.00 Uhr Eastern Standard Time behandelt, wobei davon ausgegangen wird, dass die Sommerzeit berücksichtigt wird.
  • GEO_LOCALGEO_LOCAL
  • UTCUTC

Es ist hilfreich, die Werte für Datum/Uhrzeit in UTC anzugeben, wenn Sie die Zeitzone nicht kennen, in der sich die Aufträge oder Depots befinden, oder wenn Sie Aufträge und Depots in mehreren Zeitzonen haben und möchten, dass alle Werte für Datum/Uhrzeit gleichzeitig starten. Die UTC-Option kann nur angewendet werden, wenn Ihr Netzwerk-Dataset ein Zeitzonenattribut definiert. Anderenfalls werden alle Werte für Datum/Zeit immer als GEO_LOCAL behandelt.

String
save_output_layer
(optional)

Gibt an, ob die Analyseeinstellungen als Netzwerkanalyse-Layer-Datei gespeichert werden. Auch wenn Sie diese Datei in einer ArcGIS Desktop-Anwendung wie ArcMap öffnen, können Sie nicht direkt mit dieser Datei arbeiten. Sie wird vielmehr an den technischen Support von Esri gesandt, wo die Qualität der vom Werkzeug zurückgelieferten Ergebnisse beurteilt wird.

  • Aktiviert (True): Die Netzwerkanalyse-Layer-Datei wird gespeichert. Die Datei wird in ein temporäres Verzeichnis auf Ihrem Computer geladen. In ArcGIS Pro lässt sich der Speicherort der heruntergeladenen Datei aus dem Wert für den Parameter Ausgabe-Netzwerkanalyse-Layer ermitteln, der im entsprechenden Eintrag zur Ausführung des Werkzeugs im Geoverarbeitungsverlauf Ihres Projekts enthalten ist. In ArcMap lässt sich der Speicherort der Datei ermitteln, indem Sie die Option Speicherort kopieren im Kontextmenü des Parameters Ausgabe-Netzwerkanalyse-Layer im Eintrag anschauen, der der Werkzeugausführung im Fenster Geoverarbeitungsergebnisse entspricht.
  • Deaktiviert (False): Die Netzwerkanalyse-Layer-Datei wird nicht gespeichert. Dies ist die Standardeinstellung.

Boolean
overrides
(optional)

Zusätzliche Einstellungen, die das Verhalten des Solvers beim Suchen von Lösungen für die Netzwerkanalyseprobleme beeinflussen können.

Der Wert dieses Parameters muss in JavaScript Object Notation (JSON) angegeben werden. Ein gültiger Wert hat beispielsweise das Format: {"overrideSetting1" : "value1", "overrideSetting2" : "value2"}. Der Name der Override-Einstellung wird immer in doppelten Anführungszeichen angegeben. Die Werte können eine Zahl, ein boolescher Wert oder eine Zeichenfolge sein.

Der Standardwert für diesen Parameter ist kein Wert, was darauf hinweist, dass keine Solver-Einstellungen überschrieben werden.

Overrides sind erweiterte Einstellungen, die nur nach sorgfältiger Analyse der abgerufenen Ergebnisse vor und nach Anwendung der Einstellungen verwendet werden sollten. Für eine Liste der unterstützten Override-Einstellungen und ihrer akzeptierten Werte wenden Sie sich an den technischen Support von Esri.

String
save_route_data
(optional)

Gibt an, ob die Ausgabe eine .zip-Datei mit einer File-Geodatabase enthält, in der die Eingaben und Ausgaben der Analyse in einem Format vorliegen, das zum Freigeben von Routen-Layern mit ArcGIS Online oder Portal for ArcGIS verwendet werden kann.

  • Aktiviert (True): Die Routendaten werden als .zip-Datei gespeichert. Die Datei wird in ein temporäres Verzeichnis auf Ihrem Computer heruntergeladen. In ArcGIS Pro lässt sich der Speicherort der heruntergeladenen Datei aus dem Wert für den Parameter Ausgabe-Routendaten ermitteln, der im entsprechenden Eintrag zur Ausführung des Werkzeugs im Geoverarbeitungsverlauf Ihres Projekts enthalten ist. In ArcMap lässt sich der Speicherort der Datei ermitteln, indem Sie die Option Speicherort kopieren im Kontextmenü des Parameters Ausgabe-Routendaten im Eintrag anschauen, der der Werkzeugausführung im Fenster Geoverarbeitungsergebnisse entspricht.

  • Deaktiviert (False): Die Routendaten werden nicht gespeichert. Dies ist die Standardeinstellung.

Boolean
time_impedance
(optional)

Die zeitbasierte Impedanz ist ein Wert, der für die Fahrzeit entlang von Straßensegmenten oder anderen Teilen des Verkehrsnetzes steht.

Hinweis:
Wenn die Impedanz für den Reisemodus, wie sie durch den Parameter Impedanz angegeben ist, zeitbasiert ist, müssen die Werte der Parameter Zeitimpedanz und Impedanz identisch sein. Andernfalls gibt der Service einen Fehler zurück.
  • MinutesZeitimpedanz in Minuten.
  • TravelTimeZeitimpedanz entspricht der Fahrzeit.
  • TimeAt1KPHZeitimpedanz entspricht der Zeit bei einem Kilometer pro Stunde.
  • WalkTimeZeitimpedanz entspricht der Gehzeit.
  • TruckMinutesZeitimpedanz in Lkw-Minuten.
  • TruckTravelTimeZeitimpedanz entspricht der Lkw-Fahrzeit.
String
distance_impedance
(optional)

Die entfernungsbasierte Impedanz ist ein Wert, der für die Fahrstrecke entlang von Straßensegmenten oder anderen Teilen des Verkehrsnetzes steht.

Hinweis:
Wenn die Impedanz für den Reisemodus, wie sie durch den Parameter Impedanz angegeben ist, entfernungsbasiert ist, müssen die Werte der Parameter Entfernungsimpedanz und Impedanz identisch sein. Andernfalls gibt der Service einen Fehler zurück.
  • MilesEntfernungsimpedanz in Meilen.
  • KilometersEntfernungsimpedanz in Kilometer.
String
populate_stop_shapes
(optional)

Gibt an, ob das Werkzeug die Shapes für die zugeordneten und nicht zugeordneten Ausgabe-Stopps erstellt.

  • Aktiviert (True): Die zugeordneten und nicht zugeordneten Ausgabe-Stopps werden als Punkt-Features erstellt. Dies kann hilfreich sein, um zu visualisieren, welche Stopps Routen zugeordnet sind und welche Stopps keiner Route zugeordnet werden konnten.

  • Deaktiviert (False): Die zugeordneten und nicht zugeordneten Ausgabe-Stopps werden als Tabellen erstellt und haben keine Shapes. Dies ist die Standardeinstellung. Verwenden Sie diese Option nur, wenn die Anwendung die Ausgabe-Stopps nicht visualisieren muss und nur mit den Attributen der Stopps arbeiten kann.

Boolean
output_format
(optional)

Gibt das Format an, in dem die Ausgabe-Features erstellt werden.

  • Feature SetDie Ausgabe-Features werden als Feature-Classes und Tabellen zurückgegeben. Dies ist die Standardeinstellung.
  • JSON FileDie Ausgabe-Features werden als komprimierte Datei zurückgegeben, welche die JSON-Repräsentation der Ausgaben enthält. Bei Angabe dieser Option ist die Ausgabe eine einzelne Datei (mit der Erweiterung .zip), die eine oder mehrere JSON-Dateien (mit der Erweiterung .json) für alle von dem Service erstellten Ausgaben enthält.
  • GeoJSON FileDie Ausgabe-Features werden als komprimierte Datei zurückgegeben, welche die GeoJSON-Repräsentation der Ausgaben enthält. Bei Angabe dieser Option ist die Ausgabe eine einzelne Datei (mit der Erweiterung .zip), die eine oder mehrere GeoJSON-Dateien (mit der Erweiterung .geojson) für alle von dem Service erstellten Ausgaben enthält.

Wenn ein dateibasiertes Ausgabeformat wie JSON-Datei oder GeoJSON-Datei angegeben wird, werden der Anzeige keine Ausgaben hinzugefügt, da Anwendungen wie ArcMap oder ArcGIS Pro den Inhalt der Ergebnisdatei nicht darstellen können. Stattdessen wird die Ergebnisdatei in ein temporäres Verzeichnis auf Ihrem Computer heruntergeladen. In ArcGIS Pro lässt sich der Speicherort der heruntergeladenen Datei aus dem Wert für den Parameter Ausgabe-Ergebnisdatei ermitteln, der im entsprechenden Eintrag zur Ausführung des Werkzeugs im Geoverarbeitungsverlauf Ihres Projekts enthalten ist. In ArcMap lässt sich der Speicherort der Datei über die Option Speicherort kopieren im Kontextmenü des Parameters Ausgabe-Ergebnisdatei ermitteln, der im entsprechenden Eintrag zur Ausführung des Werkzeugs im Fenster Geoverarbeitungsergebnisse enthalten ist.

String
ignore_invalid_order_locations
(optional)

Gibt an, ob ungültige Aufträge beim Berechnen des Vehicle Routing Problem ignoriert werden.

  • Aktiviert (True): Beim Berechnungsvorgang werden ungültige Aufträge ignoriert, sodass eine Lösung zurückgegeben wird, sofern keine anderen Fehler aufgetreten sind. Wenn Sie Routen erstellen und sofort an die Fahrer weitergeben müssen, können Sie bei Bedarf ungültige Aufträge ignorieren, die Berechnung durchführen und die Routen an die Fahrer übermitteln. Lösen Sie dann alle ungültigen Aufträge aus dem letzten Berechnungsvorgang, und fügen Sie sie zur VRP-Analyse für den nächsten Arbeitstag oder die nächste Arbeitsschicht hinzu.

  • Deaktiviert (False): Der Berechnungsvorgang ist nicht erfolgreich, wenn ungültige Aufträge erkannt werden. Ein ungültiger Auftrag ist ein Auftrag, den der VRP-Solver nicht erreichen kann. Ein Auftrag kann aus verschiedenen Gründen nicht erreichbar sein, etwa weil er sich in einem unzulässigen Netzwerkelement, überhaupt nicht im Netzwerk oder in einem nicht angebundenen Teil des Netzwerkes befindet.

Boolean

Abgeleitete Ausgabe

NameErläuterungDatentyp
solve_succeeded

Gibt an, ob die Berechnung der Vehicle Routing Problem-Analyse erfolgreich war.

Boolean
out_unassigned_stops

Dieser Parameter bietet Zugriff auf die Aufträge, die auf keiner Route besucht werden konnten. Sie können auch ermitteln, warum die Aufträge nicht angefahren werden konnten, und die erforderlichen Änderungen zur Behebung des Problems vornehmen.

Feature Set
out_stops

Es sind Informationen zu Stopps bei Depots, Aufträgen und Pausen enthalten. Die Information umfasst die Routen, auf denen die Stopps erfolgen, die Ankunfts- und Abfahrtszeiten sowie die Reihenfolge der Stopps.

Feature Set
out_routes

Dieser Parameter bietet Zugriff auf die Fahrer, Fahrzeuge und Routen einer Vehicle Routing Problem-Analyse.

Feature Set
out_directions

Dieser Parameter stellt für jede resultierende Route Zugriff auf detaillierte Wegbeschreibungen bereit.

Feature Set
out_network_analysis_layer

Der Netzwerkanalyse-Layer mit in den Werkzeugparametern konfigurierten Eigenschaften, der für weitere Analysen oder zum Debuggen in der Karte verwendet werden kann.

File
out_route_data

Eine .zip-Datei mit allen Informationen für eine bestimmte Route.

File
out_result_file

Eine .zip-Datei mit den Analyseergebnissen, die mindestens eine Datei für jede Ausgabe enthält. Das Format der einzelnen Dateien wird durch den Parameter Ausgabeformat angegeben.

File
output_network_analysis_layer_package

Ein Layer-Paket, das einen Netzwerkanalyse-Layer mit den in der Analyse verwendeten Daten und Einstellungen enthält.

File

Codebeispiel

SolveVehicleRoutingProblem – Beispiel 1 (eigenständiges Skript)

Das folgende Python-Skript veranschaulicht, wie das Werkzeug Solve Vehicle Routing Problem in einem Skript verwendet wird.

"""This example shows how to obtain the schema for the inputs, populate the inputs,
excute the tool and save the results.
"""

import sys
import time
import arcpy

# Change the username and password applicable to your own ArcGIS Online account
username = "<your user name>"
password = "<your password>"

vrp_service = "https://logistics.arcgis.com/arcgis/services;World/VehicleRoutingProblem;{0};{1}".format(username, password)

# Add the geoprocessing service as a toolbox.
# Check https://pro.arcgis.com/en/pro-app/arcpy/functions/importtoolbox.htm for
# other ways in which you can specify credentials to connect to a geoprocessing service.
arcpy.ImportToolbox(vrp_service)
vrp_tool_name = "SolveVehicleRoutingProblem_VehicleRoutingProblem"

# Set the variables to store results from the tool. Overwrite the results if they already exist.
arcpy.env.overwriteOutput = True
output_routes = "C:/data/Results.gdb/Routes"
assigned_orders = "C:/data/Results.gdb/AssignedOrders"
unassigned_orders = "C:/data/Results.gdb/UnassignedOrders"

# Get the schema for input orders, depots and routes
input_orders = arcpy.GetParameterValue(vrp_tool_name, 0)
input_depots = arcpy.GetParameterValue(vrp_tool_name, 1)
input_routes = arcpy.GetParameterValue(vrp_tool_name, 2)

# Create two orders as input. The coordinate values are in WGS84 spatial reference.
# AssignmentRule for orders is 3 which specifies that the tool should assign a new
# sequence and route for every order.
orders = [(-122.51, 37.7724), (-122.4889, 37.7538)]
sr = arcpy.SpatialReference(4326)
with arcpy.da.InsertCursor(input_orders, ("SHAPE@", "Name", "AssignmentRule")) as cursor:
    for i, order in enumerate(orders):
        order_shape = arcpy.PointGeometry(arcpy.Point(order[0], order[1]), sr)
        row = (order_shape, "O{}".format(i + 1), 3)
        cursor.insertRow(row)

# Create one depot as input. The coordinate values are in WGS84 spatial reference
depots = [(-122.3943, 37.7967)]
with arcpy.da.InsertCursor(input_depots, ("SHAPE@", "Name")) as cursor:
    for i, depot in enumerate(depots):
        depot_shape = arcpy.PointGeometry(arcpy.Point(depot[0], depot[1]), sr)
        row = (depot_shape, "D{}".format(i + 1))
        cursor.insertRow(row)

# Create one route as input. Ensure that the StartDepotName and EndDepotName fields on 
# routes has same value as the Name field on input depots. AssignmentRule for routes
# is 1 which specifies that the tool must include the route.
# CostPerUnitTime and MaxOrderCount are fields that cannot have null values if the route
# is to be considered as a valid route.  
with arcpy.da.InsertCursor(input_routes, ("Name", "StartDepotName",
                                          "EndDepotName", "AssignmentRule",
                                          "CostPerUnitTime", "MaxOrderCount")) as cursor:
    row = ("R1", "D1", "D1", 1, 1, 10)
    cursor.insertRow(row)

# Call the tool
result = arcpy.SolveVehicleRoutingProblem_VehicleRoutingProblem(input_orders, input_depots, input_routes)
arcpy.AddMessage("Running the analysis with result ID: {}".format(result.resultID))

# Check the status of the result object every 1 second until it has a
# value of 4 (succeeded) or greater
while result.status < 4:
    time.sleep(1)

# print any warning or error messages returned from the tool
result_severity = result.maxSeverity
if result_severity == 2:
    arcpy.AddError("An error occured when running the tool")
    arcpy.AddError(result.getMessages(2))
    sys.exit(2)
elif result_severity == 1:
    arcpy.AddWarning("Warnings were returned when running the tool")
    arcpy.AddWarning(result.getMessages(1))

# Save the output routes and orders to a local geodatabase
result.getOutput(0).save(unassigned_orders)
result.getOutput(1).save(assigned_orders)
result.getOutput(2).save(output_routes)
SolveVehicleRoutingProblem – Beispiel 2 (eigenständiges Skript)

Im folgenden Beispiel wird ein Vehicle Routing Problem mit einem benutzerdefinierten Reisemodus analysiert, der Lkw mit breiten Ladungen modelliert.

"""This example shows how to perform a vehicle routing problem analysis using a custom travel mode that
models trucks carrying wide load."""

import sys
import time
import json
import arcpy

# Change the username and password applicable to your own ArcGIS Online account
username = "<your user name>"
password = "<your password>"

vrp_service = "https://logistics.arcgis.com/arcgis/services;World/VehicleRoutingProblem;{0};{1}".format(username, password)

# Add the geoprocessing service as a toolbox.
arcpy.ImportToolbox(vrp_service)
vrp_tool_name = "SolveVehicleRoutingProblem_VehicleRoutingProblem"

# Set the variables to store results from the tool. Overwrite the results if they already exist.
arcpy.env.overwriteOutput = True
output_routes = "C:/data/Results.gdb/Routes"
assigned_orders = "C:/data/Results.gdb/AssignedOrders"
unassigned_orders = "C:/data/Results.gdb/UnassignedOrders"

# Get the schema for input orders, depots and routes
input_orders = arcpy.GetParameterValue(vrp_tool_name, 0)
input_depots = arcpy.GetParameterValue(vrp_tool_name, 1)
input_routes = arcpy.GetParameterValue(vrp_tool_name, 2)

# Create two orders as input. The coordinate values are in WGS84 spatial reference.
# AssignmentRule for orders is 3 which specifies that the tool should assign a new
# sequence and route for every order.
orders = [(-122.51, 37.7724), (-122.4889, 37.7538)]
sr = arcpy.SpatialReference(4326)
with arcpy.da.InsertCursor(input_orders, ("SHAPE@", "Name", "AssignmentRule")) as cursor:
    for i, order in enumerate(orders):
        order_shape = arcpy.PointGeometry(arcpy.Point(order[0], order[1]), sr)
        row = (order_shape, "O{}".format(i + 1), 3)
        cursor.insertRow(row)

# Create one depot as input. The coordinate values are in WGS84 spatial reference
depots = [(-122.3943, 37.7967)]
with arcpy.da.InsertCursor(input_depots, ("SHAPE@", "Name")) as cursor:
    for i, depot in enumerate(depots):
        depot_shape = arcpy.PointGeometry(arcpy.Point(depot[0], depot[1]), sr)
        row = (depot_shape, "D{}".format(i + 1))
        cursor.insertRow(row)

# Create one route as input. Ensure that the StartDepotName and EndDepotName fields on routes has same
# value as the Name field on input depots. AssignmentRule for routes is 1 which specifies that the tool
# must include the route. CostPerUnitTime and MaxOrderCount are fields that cannot have null values if
# the route is to be considered as a valid route.  
with arcpy.da.InsertCursor(input_routes, ("Name", "StartDepotName",
                                          "EndDepotName", "AssignmentRule",
                                          "CostPerUnitTime", "MaxOrderCount")) as cursor:
    row = ("R1", "D1", "D1", 1, 1, 10)
    cursor.insertRow(row)

# Change Vehicle Width attribute parameter value to 4.5 (about 15 feet) for the Trucking Time travel mode
# used for the analysis
portal_url = "https://www.arcgis.com"
arcpy.SignInToPortal(portal_url, username, password)
travel_mode_list = arcpy.na.GetTravelModes(portal_url)
tt = travel_mode_list["Trucking Time"]
tt_json = str(tt)
tt_dict = json.loads(tt_json)
tt_dict["restrictionAttributeNames"].append("Width Restriction")

for attr_param in tt_dict["attributeParameterValues"]:
    if attr_param['attributeName'] == 'Width Restriction' and attr_param['parameterName'] == 'Vehicle Width (meters)':
        attr_param['value'] = 4.5
travel_mode = json.dumps(tt_dict)

# Call the tool
result = arcpy.SolveVehicleRoutingProblem_VehicleRoutingProblem(input_orders, input_depots,
                                                                input_routes, travel_mode=travel_mode)
arcpy.AddMessage("Running the analysis with result ID: {}".format(result.resultID))

# Check the status of the result object every 1 second until it has a
# value of 4 (succeeded) or greater
while result.status < 4:
    time.sleep(1)

# print any warning or error messages returned from the tool
result_severity = result.maxSeverity
if result_severity == 2:
    arcpy.AddError("An error occured when running the tool")
    arcpy.AddError(result.getMessages(2))
    sys.exit(2)
elif result_severity == 1:
    arcpy.AddWarning("Warnings were returned when running the tool")
    arcpy.AddWarning(result.getMessages(1))

# Save the output routes and orders to a local geodatabase
result.getOutput(0).save(unassigned_orders)
result.getOutput(1).save(assigned_orders)
result.getOutput(2).save(output_routes)

Umgebungen

Dieses Werkzeug verwendet keine Geoverarbeitungsumgebungen.

Verwandte Themen