ユーティリティ ネットワークのトレース

正しいネットワーク管理のためには、ネットワークをトレースして、資源が流れるパスを最適化する必要があります。 ユーティリティ ネットワークのトレース機能は、資源を顧客に配布し、ネットワークの健全性を追跡し、劣化している領域を特定するために使用できるフレームワークを提供します。

トレースの仕組み

トレースは、1 つ以上の始点、または指定されたサブネットワークのサブネットワーク コントローラーから始まり、放射状に外側に広がります。 次に、接続フィーチャおよびオブジェクトのパスに沿って、ネットワークを移動して、終点に到達します。 終点は、バリアであったり、パスの終端であったりします。 完了すると、トレースの結果が、選択セットの形で、またはマルチパート フィーチャクラス内の集約されたジオメトリを介して、または接続性グラフとして、または指定された .json ファイル内の情報として返されます。 トレース結果は、さまざまな用途に使用できます。 たとえば、返された選択セットをレポート機能への入力として使用して、他のマップまたはダイアグラム ビューに反映させることができます。 結果を比較するための複数のフィルターを使用して、トレース結果の集約ジオメトリを確認することもできます。 接続性グラフを使用して、別のアプリケーションでデータの独自のインデックスまたは表現を構築できます。 フィーチャベースの情報は、解析や外部システムとの統合のために、エクスポートできます。

これらのコンポーネントの詳細については、「始点」、「バリア」、「トレース結果」をご参照ください。

ドメイン ネットワークの層定義は、サブネットワーク ベースのトレースの処理方法に影響を与えます。 パーティション型の層定義を持つドメイン ネットワークの場合、サブネットワーク ベースのトレースは、サブネットワーク コントローラーで停止します。 階層型の層定義を持つドメイン ネットワークの場合、サブネットワーク ベースのトレースは、トレースで指定された層に一致する名前を持つサブネットワーク コントローラーで停止します。

ターミナルは、デバイスまたはジャンクション オブジェクトなどのネットワーク フィーチャ上のポートを表します。 サブネットワーク コントローラーとして定義されたネットワーク フィーチャのターミナルでは、1 つのポートを上流に指定する必要があります。 ターミナルをサブネットワーク コントローラー以外の重要なフィーチャ (バルブなど) に適用するかどうかを選択できます。 ターミナルを使用すると、ネットワーク フィーチャの内部パスをコントロールでき、トレース結果の精度が向上します。 たとえば、3 ステート スイッチ デバイスは、ワイヤー間を流れる電気を制御するために使用されます。 電気は、1 つのターミナルを通って入り、デバイスの有効なパスに応じて、他の 3 つのターミナルのいずれかを通って、出ていきます。

ターミナルの詳細については「ターミナル管理」をご参照ください。

接続性と通過可能性

ユーティリティ ネットワーク フィーチャが相互に関連し合っている状態を表す 2 つの用語があります。 接続性は、2 つのフィーチャにジオメトリの一致に基づく接続性がある状態または 2 つのフィーチャが接続性の関連付けによって接続されている状態を表します。 通過可能性は、2 つのフィーチャが接続または関連付けられており、2 つのフィーチャに適切な属性が設定されている状態を表します。 トレース中に考慮される属性と属性値は、ジオプロセシング ツールで設定された構成によって制御されます。

トレース操作は、接続性または通過可能性という 2 つの方法のいずれかを使用して、ネットワークを移動します。 トレースが使用する方法は、使用されるトレースのタイプで管理されます。 [サブネットワーク定義の設定 (Set Subnetwork Definition)] および [トレース (Trace)] ツールの詳細パラメーターで、通過可能性トレースの詳細をコントロールします。

詳細については「接続性と通過可能性」をご参照ください。

ユーティリティ ネットワークのフロー方向

ユーティリティ ネットワークで、サブネットワークに基づいたトレースを実行するには、ネットワーク エッジに沿って、どのようにリソースが流れるかを理解しておくことが重要です。 デフォルトでは、トレース操作は、ドメイン ネットワークがソースまたはシンク ベースのどちらであるかを検出した後、サブネットワーク コントローラーを特定することで、フローの方向をリアルタイムで決定します。 ほとんどの場合、サブネットワークベースのトレースでは、トレース中にフロー方向を決定するために、サブネットワークごとに少なくとも 1 つのサブネットワーク コントローラーが必要です。 方向トレースを実行して、上流方向または下流方向のフィーチャを検索する際、上流トレースは、シンク ベースのドメイン ネットワークのサブネットワーク コントローラーから、ソース ベースのドメイン ネットワークのサブネットワーク コントローラーに向かって移動する一方、下流トレースは、その逆の動作をします。

ラインのデジタイズ方向に依存するモデルを使用して、ネットワーク内のリソースのフロー方向を決定する場合、デジタイズ方向を使用パラメーターを使用すると、ラインのデジタイズ方向と Flow direction 属性に基づいて、上流および下流トレース内のフローを決定できます。

注意:

[デジタイズ方向を使用] パラメーターは、ユーティリティ ネットワーク バージョン 7 以降で利用可能です。 エンタープライズ配置で操作する場合、ArcGIS Enterprise 11.3 以降が必要です。

詳細については「ユーティリティ ネットワークのトレース タイプ」をご参照ください。

フロー方向の設定

ユーティリティ ネットワークを作成するか、バージョン 7 以降にアップグレードすると、ドメイン ネットワーク内のすべての Line および EdgeObject クラスと構造物ネットワーク内の StructureLine および StructureEdgeObject クラスの FLOWDIRECTION フィールドに Flow direction ネットワーク属性が割り当てられます。 これにより、[トレース (Trace)] および [トレース構成の追加 (Add Trace Configuration)] ツールの [デジタイズ方向を使用] パラメーターがサポートされます。

デフォルトでは、フロー方向は、ライン クラスのデジタイズ方向に沿って、関連付けに含まれるエッジ オブジェクトの From および To Global ID の方向に設定されます。 コード値ドメインは、次の 3 つの方法で、フロー方向を設定するために使用されます。

コード説明詳細

1

デジタイズ方向

フロー方向は、ラインのデジタイズ方向に沿って、関連付けに含まれるエッジ オブジェクトの From Global ID と To Global ID の方向に設定されます。 これがデフォルトです。

2

反デジタイズ方向

フロー方向は、ラインのデジタイズ方向とは反対の、関連付けに含まれるエッジ オブジェクトの From Global ID と To Global ID の方向と反対の方向に設定されます。

3

不定

フロー方向は、双方向であるか、または一定ではありません。

ユーティリティ ネットワークのライン フィーチャまたはエッジ オブジェクトのフロー方向を設定するには、次の手順を実行します。

  1. [編集] タブの [選択] グループで、[属性] 属性 をクリックします。
  2. [選択] 選択 をクリックして、フィーチャを選択し、ウィンドウで選択を展開します。
    • 複数のフィーチャを選択して、同じフィールドを同じ値で編集するには、次のキーボード ショートカットを使用します。
      • 複数のフィーチャを選択するには、Ctrl キーを押しながら、フィーチャをクリックします。
      • 隣接フィーチャを選択するには、Shift キーを押しながら、最初のフィーチャと最後のフィーチャをクリックします。
  3. Flow direction の右側にあるセルをクリックして、ドメイン内の使用できるオプションから値を選択し、Enter キーを押します。
  4. [自動的に適用] がオフの場合は、[適用] をクリックします。
    • また、Flow direction フィールドは、属性テーブルで手動により、または [フィールド演算 (Calculate Field)] ツールを使用して、編集できます。

    ネットワーク属性を編集すると、検証が必要なフィーチャをマークするために、ダーティ エリアが生成されます。 検証により、ネットワーク トポロジ内のフロー方向が更新されます。

  5. 編集を検証して、ネットワーク トポロジを更新するには、[ユーティリティ ネットワーク] タブをクリックします。
  6. [ネットワーク トポロジ] グループで、[検証] コマンドをクリックします。
    • 実施した編集の範囲により、[現在の範囲] または [範囲全体] の検証を実行できます。 詳細については「ネットワーク トポロジの検証」をご参照ください。

選択したフィーチャのフロー方向が更新されます。

注意:

多くのフィーチャのフロー方向を更新するときは、ダーティ エリアの作成および検証の必要がなくなるため、ネットワーク トポロジを無効にすることをお勧めします。

トレース ツール

[トレース (Trace)] ジオプロセシング ツールは、ネットワーク上でトレースを実行するために使用します。複雑なトレースを作成できるよう、構成可能な標準トレース セットが含まれています。

ツールの詳細については、トレースをご参照ください。 各トレース タイプの詳細については「ユーティリティ ネットワークのトレース タイプ」をご参照ください。

[トレース (Trace)] ツールに付属する構築ブロックを使用して、どのフィーチャとオブジェクトをトレースするか、どのフィーチャを結果で返すかを調整できます。 また「ネットワーク属性」を使用して、サブネットワークの詳細情報を収集することもできます。 サブネットワークに基づくトレースの場合、トレース構成は、サブネットワーク定義の設定ツールを使用して、層内のすべてのサブネットワークに対して、事前に定義できます。 これは、ユーティリティ ネットワークの所有者が実行するユーティリティ ネットワーク構成の一部です。 層のサブネットワーク定義が構成されると、[トレース (Trace)] ツールにより、その層でトレースされたサブネットワークの定義が読み込まれます。これにより、時間が短縮され、整合性のあるトレース結果が得られます。

管理者レベルで設定されるトレース構成の詳細については「トレースの構成」および「サブネットワーク定義の設定または変更」をご参照ください。

[トレース (Trace)] ツールは、ネットワーク トポロジを利用して、ネットワーク フィーチャに関して、キャッシュされた情報にアクセスします。 キャッシュされた情報をマップではなく、トポロジから読み取ることによって、大規模なネットワーク上で複雑なトレースを実行するときのパフォーマンスが向上します。 [トレース (Trace)] ツールは、ネットワーク トポロジに依存するため、トレース可能な領域内に「ダーティ エリア」またはサブネットワーク エラーが存在する場合、トレースの結果が正確であることは保証されません。 トレース可能な領域内のネットワーク トポロジでは、ユーティリティ ネットワークに加えられた最新の編集または更新を確実に反映するよう、検証を行い、サブネットワークを更新する必要があります。

指定トレース構成の操作

指定トレース構成では、ArcGIS Pro で再利用し、Web マップから組織全体で共有するために Web アプリケーションおよびフィールド アプリケーションで利用される複雑なトレースをユーティリティ ネットワークに格納できます。 「ユーティリティ ネットワークのバージョン 5」を導入することにより、組織内の指定トレース構成を使用することでトレースに関連付けられたユーザー エクスペリエンスが簡素化され、構成の詳細をすべて理解していなくてもトレースを使用してユーザーが情報を発見したり、質問に答えることができます。

[トレース (Trace)] ジオプロセシング ツールの [トレース構成の使用] パラメーターを使用するか、[トレース] ウィンドウの [指定構成] タブを使用して、指定トレース構成を ArcGIS Pro で利用することができます。

指定トレース構成を操作する方法の詳細

使用上の注意

ユーティリティ ネットワークをトレースする場合の配慮事項を示します。

注意:
非空間オブジェクトを操作する場合、トレース結果は、トレース実行時に編集ツールがアクティブかどうかによって異なります。 たとえば、トレース実行時に [移動] ツールがアクティブな場合、結果にはジャンクションおよびエッジ オブジェクトが含まれません。

スクリプト

Python から [トレース (Trace)] ツールを使用して、サブネットワークベースのトレースを実行する場合、入力した層のサブネットワーク トレース構成は、自動的に適用されないため、手動で指定する必要があります。

[トレース (Trace)] ツールの特定のパラメーターは、スクリプトまたはモデル環境からのみ使用できます。 これらのパラメーターでは、トレース位置に使用するクラスの位置を指定し、伝達と代替を変更または構成できます。

詳細については「属性の伝達」および「属性代替」をご参照ください。

スクリプトまたはモデルからトレースを実行する場合、[トレース位置の設定 (Set Trace Locations)] ジオプロセシング ツールを使用します。 このツールを使用すると、指定した位置に、プロジェクトで作成されたデフォルトのフィーチャクラスまたは新しいクラスのトレース位置を作成できます。 これは、アクティブなマップ ビュー内での作業時に、[トレース] ウィンドウを使用する場合と同様です。 新しいクラスおよび位置を定義する場合、スクリプトまたはモデルからのみ使用できる [トレース (Trace)] ツールの Starting Points および Barriers パラメーターを使用して、フィーチャクラスへの [トレース (Trace)] パスを指定する必要があります。

複数の条件式の操作

複数の条件式を持つバリア、フィルター、出力を構成する場合、ブール型演算子 AND が、ブール型演算子 OR よりも優先されます。

たとえば、X、Y、Z の 3 つの条件がある場合に、X AND Y OR Z という条件に適合するトレースを停止するバリアを設定するとします。これは、複数の方法で解釈できます。 複数の条件式を処理する場合、トレースは、論理和標準形 (DNF) を使用します。 そのため、トレース構成の入力が DNF に準拠しない場合、トレース結果が期待とは異なる場合があります。 DNF では、ブール型演算子 AND が優先されるため、この式では、(X AND Y) OR Z と解釈されます。別の解釈の X AND (Y OR Z) を求める場合は、式を (X AND Y) OR (X AND Z) と記述します。