この記事では、トレースの設定と実行に役立つ一連のヒントを提供します。
一般的なヒント
このセクションでは、分析に役立つようにトレース構成のさまざまなパラメーターを使用する方法について一般的なヒントを提供します。
名前付きトレース構成
名前付きトレース構成を使用すると、トレースのパラメーターを保存して再利用できます。品質保証に特定のパラメーターセットを使用している場合は、これらを活用するために Add Trace Configuration ツールで名前付きトレース構成を作成することを検討してください。これにはいくつかの利点があります:
- Trace ペインを使用してトレースを実行できるため、ジオプロセシングツールを実行する際の大きな負荷がなくなります。
- トレースの設定にかかる時間が短縮されます。
- 品質保証プロセスで一貫したパラメーターセットを使用することが保証されます。
名前付きトレース構成は Trace ペインの Named Configurations タブに表示されます。
集約ジオメトリ
集約ジオメトリ結果タイプでは、ポイント、ライン、およびポリゴンの別々のレイヤーで、マルチパートジオメトリとしてトレース結果を保存できます。
品質保証時に集約ジオメトリを使用する主なユースケースは次のとおりです:
- 部分エッジ
- 非空間オブジェクト
- 結果の比較
部分エッジ
トレースのデフォルト結果タイプは選択セットです。選択結果タイプの場合、ラインフィーチャー上で途中で停止した場合でも、そのライン全体が選択されます。これは、ライン上に中間で描画されたバリアがあるデータセットや、関数バリアによって途中で停止する場合に結果確認時に混乱を招くことがあります。
集約ジオメトリ結果タイプを選択すると、トレース結果に含まれるライン部分のみを含む集約ラインが作成されます。以下は、500フィート後に停止したトレース(黄色)の例で、選択セット(上)と集約ジオメトリ(下)です。
距離によるフィルタ関数バリア付き上流トレースの例(選択セット:上、集約ジオメトリ:下)。
非空間オブジェクト
集約ジオメトリのもう一つの一般的なユースケースは、非空間オブジェクトとジャンクション-ジャンクション接続関連付けによる接続性を含むトレース結果を表現することです。Trace ツールで「Include containers」と「Include structures」オプションのチェックを外し、「Aggregated Geometry」結果タイプを選択し、「Synthesize Geometries」オプションを選ぶと、非空間オブジェクト経路と関連付けによる接続性を表すラインが含まれます。
非空間接続性の合成ジオメトリを含めるには synthesize geometry オプションを使用してください。
結果の比較
異なるトレース結果を比較する必要がある場合は、Aggregated Geometry 出力も検討してください。この結果タイプは名前付きトレース構成と組み合わせると特に有用です。出力設定時には、実施している品質保証の性質(例:切断されたフィーチャ)を識別できるように固有名でレイヤーを作成することを検討してください。
異なるトレース結果を比較する際には意味のある名前で集約ジオメトリレイヤーを命名してください。
複数のトレース結果を単一レイヤーに保存する場合は、それぞれのトレースに固有名(trace Name パラメーター)を付け、最初のトレース実行時には「Clear All Previous Trace Results」オプションにチェックして以前の結果をクリアしてください。
以前の結果を削除するには clear previous results オプションを使用してください。
バリアの含有について
トレース実行時に停止がバリアによるものか、それとも最後にたどったフィーチャが何にも接続されていないためか不明瞭になることがあります。その判別には「Include Barriers Features」オプションのチェックを外して再度実行すると簡単です。
その後、結果を比較して停止原因がバリアによるものか、それともすべて接続されたフィーチャーを通過し終えたためか識別できます。
伝播によって停止した場合、その停止フィーチャは決して結果に含まれません。この条件(伝播バリアとも呼ばれる)評価技術については後述します。
トレース位置の永続化について
同じ開始点コレクションで定期的に同じ分析を繰り返す予定がある場合は、 Add Trace Locations ツールでローカルジオデータベース内のフィーチャクラスとして永続化することをご検討ください。このフィーチャクラスは、その後 Trace ツール実行時の Starting Points パラメーターへの入力として使用できます。多数フィーチャ含むクラス作成手順は以下です。
1. Select by Attributes(または他ツール)で開始点として使いたいフィーチャ群を選択します。
Select By Attributes を使って分析開始点として使うフィーチャ群を特定します。
2. Add Trace Locations ツールを開きます。
3. Input Utility Network パラメーターにマップ内ユーティリティネットワークを設定します。
4. Output Feature Class にプロジェクトジオデータベースなどローカルジオデータベース内新規フィーチャクラス名を設定します。
5. Load Selected Features パラメーター横ボックスにチェックします。
6. 実行ボタン(Run)クリックします。
これで、Trace 実行時開始点として使えるフィーチャクラスができました。
Add Trace Locations ツール実行後、マップ上で開始点が確認できます。
サブネットワーク非依存型トレースについて
Trace ツールパラメーター活用法がわかったところで、特定タイプのトレースがどんな質問への回答になるか見てみましょう。品質保証時によくある質問は次です:
- 接続されていますか?
- どのようにつながっていますか?
- ループはありますか?
サブネットワークコントローラー非依存型トレースでは共通制約事項があり、それらへの対応策も考慮すべきです:
- サブネットワークコントローラー非依存の場合、端子方向性は無視されます。
- サブネットワーク認識しないためコントローラーでは停止しません。
- デフォルトでは条件バリアは含まれません。
条件バリア追加でこれら制限回避可能です。
接続済みトレース
'接続されていますか?' の質問への最も一般的な回答方法は接続済みトレース実行です。この方法で開始点から到達可能なすべてフィーチャ特定可能です。必要なら条件バリア追加しサブネットワーク定義や端子付き機器・コントローラー等で停止させることもできます。以下は全排水口起点ストームウォーターシステム接続済み例です。
'黄色で選択された開始位置に接続されたフィーチャ群' 。
'Connected trace' 実行前にデータ内容と利用目的よく考えてください。不連結フィーチャ特定目的なら選択セットより集約ジオメトリ結果作成検討すべきです。
'複数分断システムある場合、それぞれへ開始点追加し正確な結果取得してください' 。
'システム内数百万フィーチャある場合処理時間長くなり多く選択されます' 。サブネットワークあれば以下ツール検討ください: Update Is Connected tool discussed below.
Shortest path trace
Sometimes when troubleshooting strange behaviors with subnetwork-based traces (upstream/downstream traces or inconsistent subnetwork names) you need to understand how connectivity is made from one part of the network to another. Because the subnetworks themselves may be compromised you need to rely on a non-subnetwork based trace to answer the question. A Connected trace can show you what is traversable/connected, but the Shortest path trace can show you the specific path between two locations.
Shortest path traces are useful for identifying a path between controllers for subnetworks that are inconsistent, or when you’re trying to find the shortest path from a location to a subnetwork controller in a looped network. In these scenarios you cannot rely on a subnetwork trace to identify the path or directionality of flow in the network. However, remember that the shortest path trace, just like a connected trace, ignores the directionality of terminals because of their non-reliance on subnetworks.
An example of this is discussed in the inconsistent subnetwork names section later on in this article.
Loops Trace
One often overlooked component of quality assurance with tracing is the analysis of indeterminate flow in a network. This is often referred to as identifying loops. The Loops trace can be used to identify areas of indeterminate flow in a network. In the case of a radial network (electric, sewer, stormwater, or communication) there should be very few parts of the network that are looped. Mesh networks (gas and water) on the other hand will be predominantly looped.
Below is an example of a loop identified by running the Loops trace.
T
The loops trace helps identify loops in your network.
It is important to remember that when an upstream or downstream trace originates in, or passes through, an area of indeterminate flow in the network it can produce what appear to be incorrect results. Knowing how to run a Loops trace or exclude indeterminate flow from trace results can allow you to correctly identify an unexpected result from a test as a data quality issue instead of a configuration or software issue.
Subnetwork-based tracing
サブネットワークが定義されているデータセットを扱う場合、データの品質保証を行う際に追加の手順を踏む必要がありますが、この検証を支援するために使用できる追加のツールや技術もあります。
Is Connected の更新
サブネットワークが定義されている場合、フィーチャが接続されているかどうかの問題は新たな重要性を持ちます。サブネットワークに参加できる各フィーチャには、1つ以上のサブネットワークコントローラーへ到達可能かどうかを定義する IsConnected フィールドがあります。このフィールドは完全に品質保証のために使用され、その値はユーティリティネットワーク内のトレース、分析、その他の動作を制御しません。
Is Connected フィールドを使用して、切断されたネットワークフィーチャを迅速に特定できます。
新しいフィーチャが作成されると、その IsConnected フィールドは Unknown に設定されます。これは、初期データロードの一環として Update Is Connected ツールを実行するか、Update Subnetwork を実行して入力する必要があります。定期的に Update Subnetwork を実行するユーザーは、各サブネットワーク内のフィーチャに対して Update Subnetwork がこのフィールドを管理しているため、Update Is Connected の実行について心配する必要はありません。また、Update Is Connected ツールは実行に時間がかかることがあります。
IsConnected フィールドが十分に入力されたら、シンボルやチャートを使用してどのフィーチャがサブネットワークコントローラーに接続されているか(IsConnected=True)、どれが切断されているか(IsConnected=False)を追跡できます。
さらに検討すべきチェックとして、サブネットワークコントローラーに接続されているがサブネットワークコントローラーに属していないフィーチャ(IsConnected=True, SubnetworkName=Unknown)があります。これは、そのエリアのサブネットワークに問題があるか、またはネットワークの条件バリアによって本来接続されるべきフィーチャが切断されていることを示しています。この最も一般的な原因は非アクティブなネットワークフィーチャによってネットワークの一部が切断されることですが、他にも不適切な開閉状態のデバイス、端子接続の反転、伝播の問題(電気のみ)などがあります。
これは影響を受けたエリアでサブネットワークトレースを実行し、異なる条件バリアを除去したり、条件バリアありで接続トレースを実行したり(方向性端子の問題を無視するため)、伝播オフでトレースを実行することで検証できます。サブネットワーク定義で伝播動作を上書きするには追加手順が必要であり、以下で説明します。
Is Connected フィールドと Subnetwork Name フィールドの組み合わせを使用して、サブネットワークの問題を特定してください。
伝播
サブネットワークとトレースの文脈では、プロパゲーターは属性、関数、および比較演算子を使用してサブネットワークの各経路に沿った値を計算するために使用されます。プロパゲーターの条件が満たされなくなると(有効な位相なし、圧力不足など)、その条件に失敗したフィーチャとその位置から到達可能なすべての後続フィーチャはサブネットワークの一部とは見なされません。
つまり、伝播用に構成されたティアに属するサブネットワーク内でフィーチャが非通電状態になった場合、その非通電フィーチャの一部または全部が伝播によって引き起こされたかどうかをチェックできます。
さらに、一部の場合ではデータ品質上の懸念からティアがまだ伝播用に構成されていないことがありますが、その場合でも2つの異なるサブネットワーク定義を持つデータベースを維持せずに伝播有効化時の影響を見ることができます。
これら両方の問題への解決策は、トレース(またはトレース構成)でティアに関連付けられたトレース構成上のプロパゲーターを上書きするよう設定することです。この技術を使うことで、伝播が原因でフィーチャがサブネットワークから切断されているかどうか確認したり、それぞれのサブネットワークに接続されたフィーチャ数への伝播効果を見ることができます。
これを実装する際の課題は、Propagators パラメーターがユーザーインターフェイスからは公開されていないことです。この問題への解決策として Model Builder、Python または ArcGIS Pro SDK を使って望ましい伝播設定でトレース(またはトレース構成)を実行します。以下は Electric Utility Network Foundation で定義されたプロパゲーターの例です:
位相伝播用に構成された電気トレースでは Propagators パラメーターが入力されています。
Python を使って Propagators なしでトレースを実行するには、そのトレーススニペットから Propagators に関連するパラメーター部分を削除します:
Python 文を書き換えて実行し、トレースから伝播動作を除去できます。
もう一つの方法としてはトレース用モデルを作成し、Propagators をパラメーターとして公開し、その値を削除する方法があります。
Model Builder を使って特定トレース用トレース構成からプロパゲーターを削除することも可能です。
同様にトレース構成に Propagators が含まれていない場合でも同じ手法で Propagators を含むトレース実行が可能です。Python ではパラメーターとして「'E:Phases Propagated' 'E:Phases Substitution' PROPAGATED_BITWISE_AND INCLUDES_ANY 7」(自分自身のフィールドおよびネットワーク属性値に置き換え)と設定できます。
Model Builder を使って独自設定で Propagators パラメーターへ値入力も可能です:
現在あなたのサブネットワーク定義に Propagators が含まれていない場合でもテスト目的で Model Builder を使いトレースへ追加できます。
利便性向上のためこれらトレース構成はデータベース内へ保存し、Propagators 有無によるトレース結果比較が容易になるようしてください。本記事前半「Aggregated Geometry」の節も参照し効果的な比較技術をご確認ください。