Verwenden von Parametern mit Netzwerkattributen

Netzwerkattributwerte hängen manchmal von variablen Bedingungen ab. Beispielsweise kann es von der Höhe eines Fahrzeugs abhängen, ob ein Straßenabschnitt mit einer niedrigen Überführung passierbar ist. Die aktuellen Wetterbedingungen können eine geringere Fahrgeschwindigkeit verursachen und sich somit auf die Zeitkosten des Netzwerks auswirken. Sie können Beschränkungen auf der Grundlage der Fahrzeughöhe, Reisekosten auf der Grundlage von Maßstabsfaktoren und weitere variable Aspekte der Netzwerkanalyse mit einer von zwei Methoden modellieren. Eine Methode ist das Erstellen eines Netzwerkattributs für jede Änderung der Höhe oder Wetterbedingungen. Diese Methode wird jedoch mit zunehmender Anzahl von Kombinationen unpraktisch. Eine flexiblere Methode ist die Verwendung eines einzelnen Netzwerkattributs mit einem Parameter, der den variablen Aspekt des Attributs enthält.

Parameter sind Platzhalter für Werte, die Sie für eine bestimmte Analyse ändern können. Alle verfügen über einen sinnvollen Standardwert, der nach Bedarf vom Benutzer überschrieben wird. Parameter werden Netzwerkattributen hinzugefügt und von den Evaluatoren des Attributs referenziert. Die Parameterwerte können beim Einrichten von Netzwerkproblemen geändert werden, sodass die Werte des Netzwerkattributs zur Laufzeit mit dem Ausdruck und dem aktuellen Parameterwert bestimmt werden können.

Funktionsweise von parametrisierten Netzwerkattributen

Ein parametrisiertes Netzwerkattribut verfügt über einen oder mehrere zugewiesene Evaluatoren, die dessen Wert mit einem Parameter für das Netzwerkattribut sowie einem weiteren Netzwerkattribut bestimmen.

Einige Evaluator-Zuordnungswerte werden bei der Netzwerkerstellung gecacht (z. B. Feldskript) und verwenden keine Parameter. Evaluatoren, die während der Laufzeit abgerufen werden, um ihren Wert zu bestimmen (z. B. Funktion und Elementskript) können jedoch Parameter nutzen, die sich auf den Ergebniswert auswirken.

Parameter zum Modellieren von Fahrzeugeigenschaften

Im folgenden Beispiel können Sie Parameter zum Festlegen von Fahrzeugeigenschaften hinzufügen, um detaillierter bestimmen zu können, welche Netzwerkelemente ein bestimmtes Fahrzeug durchlaufen darf.

Sie können ein Restriktionsattribut zusammen mit einem Parameter für die Fahrzeughöhe hinzufügen, um die Höhe des Fahrzeugs mit einem Deskriptor-Attribut zu vergleichen, in dem der Abstand unter Überführungen oder Tunneldecken gespeichert wird. Wenn die Fahrzeughöhe größer als der Abstand ist, wird die Kante als unzulässig markiert. Dies kann zu unterschiedlichen Routen für verschiedene Fahrzeuge führen, wie unten dargestellt. Ein niedriges Fahrzeug kann auf der direkten Route unter einer niedrigen Brücke fahren, während ein hohes Fahrzeug eine andere Route verwendet, um die niedrige Durchfahrt zu vermeiden.

Beispiel für eine Lastwagenroute unter Vermeidung einer Brücke mit niedriger Durchfahrtshöhe

In einem solchen Szenario können Sie zwei Attribute erstellen: ein Deskriptorattribut und ein Restriktionsattribut, und sie beispielsweise mit "MaxHeight" und "HeightRestriction" benennen. "MaxHeight" ruft Abstandswerte aus den Quelldaten ab, und "HeightRestriction" liest die Werte aus "MaxHeight", um sie mit einem Parameter zu vergleichen, der die aktuelle Fahrzeughöhe enthält. Im folgenden Diagramm wird eine Verallgemeinerung dieses Vorgangs dargestellt:

Suchen von Werten für ein parametrisiertes Restriktionsattribut

Parameter für Kostenattribute

Möglicherweise wünschen Sie stattdessen ein parametrisiertes Kostenattribut, das ein anderes Kostenattribut referenzieren und skalieren kann. Dies ist von Nutzen, wenn im Untersuchungsgebiet raues Wetter, z. B. Eis, Nebel oder starker Regen, herrscht und den normalen Verkehrsfluss behindert. Wenn Sie bereits über einen Parameter für ein Kostenattribut verfügen, können Sie Reisezeiterwartungen an geänderte Verkehrsgeschwindigkeiten anpassen.

Sie können zwei Netzwerkattribute erstellen: "DriveTime" zum Speichern der normalen Fahrzeitimpedanzen mit Werten aus Feldern in den Quelldaten, und "DriveTime_scaled", dem der Wert des Attributs "DriveTime" zugewiesen wird und das mit einem Wert für das Attribut "DriveTime_scaled", das den aktuellen Maßstabsfaktor enthält, skaliert wird.