Network Analyst のライセンスで利用可能。
ルート解析とは、解析のために選択したインピーダンスに基づいて、最速ルート、最短ルート、最も景色のよいルートなどを検索することです。インピーダンスが時間であれば、最適なルートは最速ルートになります。インピーダンスがライブ交通量または履歴交通量を持つ時間属性の場合、最適ルートは「特定の日時における最短時間ルート」です。最適なルートは、インピーダンスが最も低いルート、またはコストが最も低いルートとして定義され、インピーダンスはユーザーによって選択されます。どのコスト属性も、最適なルートを検索するためのインピーダンスとして使用できます。
ルート解析では任意の数のインピーダンス属性を累積できますが、累積される属性はネットワークに沿ったパスの計算には使用されません。たとえば、インピーダンス属性として時間のコスト属性を選択し、距離のコスト属性を累積する場合、ソリューションの最適化には時間のコスト属性のみが使用されます。合計距離が累積およびレポートされますが、この例では距離からパスは計算されません。
一連のストップを通過する最適なルートの検索方法は、その他のネットワーク解析のワークフローと同様です。
ルート解析レイヤー
ルート解析レイヤーには、ルート解析のすべての入力、パラメーター、結果が格納されます。
ルート解析レイヤーの作成
ルート解析レイヤーを作成するには、[Network Analyst] ツールバーで [Network Analyst] > [新規ルート] の順にクリックします。
新しいルート解析レイヤーを作成すると、それはその 5 つのネットワーク解析クラス (ストップ、ルート、ポイント バリア、ライン バリア、およびポリゴン バリア) とともに [Network Analyst] ウィンドウに表示されます。
ルート解析レイヤーは、[コンテンツ] ウィンドウにもコンポジット レイヤーとして表示されます。これには [ルート] という名前が付けられます (マップ ドキュメントに同じ名前のルートがすでに存在する場合は [ルート 1]、そのルートもすでに存在する場合は [ルート 2] のように連番で名前が付けられます)。フィーチャ レイヤーには、ストップ、ルート、ポイント バリア、ライン バリア、およびポリゴン バリアの 5 種類があります。この 5 種類のフィーチャ レイヤーは、それぞれがデフォルトのシンボルを持ちます。このシンボルは、[レイヤー プロパティ] ダイアログ ボックスで変更できます。
ルート解析のクラス
ルート解析レイヤーは、5 つのネットワーク解析クラスで構成されます。
ここでは、各クラスの概要とそのプロパティについて説明します。
ストップ クラス
このネットワーク解析クラスには、ルート解析でストップとして使用されるネットワーク ロケーションが格納されます。ストップ レイヤーには、配置されているストップ、配置されていないストップ、エラーのあるストップ、および時間超過のあるストップの 4 つのデフォルト シンボルがあります。ストップ レイヤーのシンボルは、[レイヤー プロパティ] ダイアログ ボックスで変更できます。このダイアログ ボックスには、ストップのカスタム シンボル カテゴリがあります ([Network Analyst] > [順序付きポイント])。
新しいルート解析レイヤーが作成されるとき、ストップ クラスは空です。これは、ネットワーク ロケーションの追加時に挿入されます。ルートを作成するには、少なくとも 2 つのストップが必要です。
ストップのプロパティ
ストップのプロパティの一部は、開始時刻が定義されているとき、またはタイム ウィンドウが有効になっているときにのみ使用可能です。どちらのパラメーターも、ルート解析レイヤーの [レイヤー プロパティ] ダイアログ ボックスの [解析の設定] タブで設定します。
ストップの入力フィールド
入力フィールド | 説明 |
---|---|
ObjectID | システムで管理される ID フィールド。 |
Shape | ネットワーク解析オブジェクトの地理的な位置を示すジオメトリ フィールド。 |
Name | ネットワーク解析オブジェクトの名前。 ストップがマップに追加されるときに自動的に割り当てられる編集可能な名前。 |
RouteName | ストップが属するルートの名前を示します。このプロパティを使用することで、1 つのルート解析レイヤー内のストップを複数のルートに割り当てることができます。
|
TimeWindowStart | このプロパティには、ネットワーク ロケーションを訪れることができる最も早い時刻が格納されます。 [TimeWindowStart] を午前 10:00 に設定しているときに、ルートがそのストップに到着する時刻が午前 9:50 である場合、合計時間に 10 分の待ち時間が追加されます。 ネットワーク データセットにタイムゾーン属性がある場合、時刻フィールドは、ストップが配置されているエッジと同じタイム ゾーンを参照します。 このプロパティは、ネットワーク解析レイヤーでタイム ウィンドウが有効になっている場合にだけ利用できます。 |
TimeWindowEnd | このプロパティは、ネットワーク ロケーションを訪れることができる最も遅い時刻が格納されます。 [TimeWindowStart] プロパティと [TimeWindowEnd] プロパティを組み合わせて、ルートがネットワーク ロケーションを訪問できるタイム ウィンドウを設定します。 ロケーションの [TimeWindowEnd] の値が午前 11:00 に設定されているときに、ルートがそのストップに到達できる最も早い時刻が午前 11:25 である場合は、25 分の超過時間が報告されます。また、ストップのシンボル表示により、タイム ウィンドウの違反があることが示されます。 ネットワーク データセットにタイムゾーン属性がある場合、時刻フィールドは、ストップが配置されているエッジと同じタイム ゾーンを参照します。 このプロパティは、ネットワーク解析レイヤーでタイム ウィンドウが有効になっている場合にだけ利用できます。 |
Attr_[Impedance] (たとえば、Minutes 属性がネットワークのインピーダンスである場合は「Attr_Minutes」となります) | このプロパティは、ルートがネットワーク ロケーションを訪れたときの滞在時間を指定します。つまり、ネットワーク ロケーションのインピーダンス値を格納します。0 または NULL 値は、ネットワーク ロケーションでサービス時間が必要ないことを表します。 たとえば、Drivetime 属性をインピーダンスとして使用して 3 つのストップのルートを検索する場合、各ストップでの予想消費時間を Attr_Drivetime プロパティに格納します。ストップ 1 を出発して 10 分間でストップ 2 に到着し、ストップ 2 で 10 分間過ごし、10 分間でストップ 3 に到着する場合、ストップ 3 までの走行時間は 20 分のみですが、ストップ 3 に到着するまでの合計時間は 30 分 (10 + 10 + 10) として表示されます。 |
ネットワーク ロケーション フィールド
| これらの 4 つのプロパティを組み合わせて、オブジェクトが配置されているネットワーク上のポイントを表します。 |
CurbApproach | [CurbApproach] プロパティは、車両がネットワーク ロケーションに到着する方向およびネットワーク ロケーションから出発する方向を指定します。ここには 4 つの値を設定できます (それぞれのコード値は括弧内に示されています)。
|
ストップの入力/出力フィールド
入力/出力フィールド | 説明 |
---|---|
シーケンス | 入力フィールドとして、この番号は、ストップを巡回する順序を表します。ルート内で、シーケンス値は、0 より大きくストップの最大数以下となる必要があります。また、シーケンス値は重複してはなりません。[ストップを並べ替えて最適ルートを検出] 解析レイヤー パラメーターがオフになっている場合、結果として得られたルートは、指定された順序でストップを巡回します。 解析によるストップの順序の変更が許可されている場合は、最適な順序が検出され、このフィールドは解析プロセス中に更新されます。 シーケンス値を変更するには、[Network Analyst] ウィンドウでストップを上下にドラッグしてください。 |
Status | このフィールドは、次に示す値のドメインによって制約されます (それぞれのコード値は括弧内に示されています)。
解析後、次のいずれかの状態値を使用して状態を変更できます。
タイム ウィンドウが使用され、ルートが早く、または遅く到着する場合、値は [タイム ウィンドウ違反](6) に変わります。 |
ストップの出力フィールド
出力フィールド | 説明 |
---|---|
ArriveCurbApproach | 車両がネットワーク ロケーションに到着するときに、アプローチを車両のどちら側に制限するかを表します。ネットワーク ロケーションの [CurbApproach] の値が [車両の右側] に設定されている場合、解析後の [ArriveCurbApproach] は [車両の右側] になります。一方、[CurbApproach] の値が [車両の両側] または [U ターンを許可しない] に設定されている場合、[ArriveCurbApproach] はパス全体が最短となるように右側または左側のどちらかに決定されます。 |
DepartCurbApproach | 車両がネットワーク ロケーションに出発するときに、アプローチを車両のどちら側に制限するかを表します。ネットワーク ロケーションの [CurbApproach] の値が [車両の右側] に設定されている場合、解析後の [DepartCurbApproach] は [車両の右側] になります。一方、[CurbApproach] の値が [車両の両側] または [U ターンを許可しない] に設定されている場合、[DepartCurbApproach] はパス全体が最短となるように右側または左側のどちらかに決定されます。 |
Cumul_[Impedance] (たとえば、Minutes 属性がネットワークのインピーダンスである場合は「Cumul_Minutes」となります) | このプロパティは、ストップに到達するのにかかる総インピーダンスです。これには、ストップに到達するまでのインピーダンス、ストップのインピーダンス、およびそれ以前のすべてのストップのインピーダンスが含まれます。 入力属性 Attr_[Impedance] の例では、ストップ 2 の Cumul_Drivetime は 20 分間 (10 分間の運転時間と、ストップ 2 で過ごす 10 分間) となり、ストップ 3 の Cumul_Drivetime は 30 分間 (ストップ 2 の Cumul_Drivetime の 20 分間 + ストップ 2 から 3 までの運転時間である 10 分間) となります。 |
Wait_[Impedance] (たとえば、Minutes 属性がネットワークのインピーダンスである場合は「Wait_Minutes」となります) | このプロパティには、ルートが早く到着した場合にタイム ウィンドウが開始する (TimeWindowStart) のを待つのに費やされる時間が格納されます。 このプロパティは、ネットワーク解析レイヤーでタイム ウィンドウが有効になっている場合にだけ利用できます。 |
CumulWait_[Impedance] (たとえば、Minutes 属性がネットワークのインピーダンスである場合は「CumulWait_Minutes」となります) | このプロパティには、タイム ウィンドウが開始する (TimeWindowStart) のを待つのに費やされた時間の合計が格納されます。これには、ルートが訪れた現在のストップとそれ以前のすべてのストップでの時間が含まれます。 このプロパティは、ネットワーク解析レイヤーでタイム ウィンドウが有効になっている場合にだけ利用できます。 |
Violation_[Impedance] | このプロパティは、タイム ウィンドウが終了した (TimeWindowEnd) 後にルートがどれほど遅く到着したかを示すメジャーです。具体的には、これには、タイム ウィンドウの終了時刻からルートの到着時刻までの時間が格納されます。 このプロパティは、ネットワーク解析レイヤーでタイム ウィンドウが有効になっている場合にだけ利用できます。 |
CumulViolation_[Impedance] | このプロパティには、ルートが訪れた現在のストップとそれ以前のすべてのストップの累積超過時間 (Violation_[Impedance]) が格納されます。 このプロパティは、ネットワーク解析レイヤーでタイム ウィンドウが有効になっている場合にだけ利用できます。 |
ArriveTime | ストップに到着した時刻を示す日時の値。 複数のタイム ゾーンにまたがる交通量データを使用するとき、この時間値のタイム ゾーンは訪問先が配置されているネットワーク エレメントから取得されます。 |
DepartTime | ストップからの開始時刻を示す日時の値。 複数のタイム ゾーンにまたがる交通量データを使用するとき、この時間値のタイム ゾーンは訪問先が配置されているネットワーク エレメントから取得されます。 |
ルート クラス
ルート クラスには、解析の結果として得られたルート (1 つまたは複数) が格納されます。その他のフィーチャ レイヤーと同様に、そのシンボルはその [レイヤー プロパティ] ダイアログ ボックスからアクセスして変更できます。
ルート クラスは、出力のみのクラスであり、解析が完了するまで空です。最適なルートが見つかると、[Network Analyst] ウィンドウに表示されます。
ルート プロパティ
ルートの出力フィールド
出力フィールド | 説明 |
---|---|
ObjectID | システムで管理される ID フィールド。 |
Name | ルートの名前は、ルート レイヤーを解析する際に、ストップ クラスの RouteName プロパティから値を読み取るか、その値が NULL の場合はルート内の最初のストップの名前と最後のストップの名前を統合して (例: グラフィックス指定 1 - グラフィックス指定 8)、自動的に割り当てられます。ルートの名前は、[Network Analyst] ウィンドウで変更できます。 |
FirstStopID | ルートの最初のストップの ObjectID。 |
LastStopID | ルートの最後のストップの ObjectID。 |
StopCount | ルートによって訪問されたストップ数。 |
Total_[Impedance] (たとえば、Minutes 属性がネットワークのインピーダンスである場合は「Total_Minutes」となります) | 最初のストップの開始から最後のストップの終了までの合計インピーダンス。この値には、訪問したストップの合計移動インピーダンスおよび Attr_[Impedance] が取り込まれます。 |
TotalWait_[Impedance] (たとえば、Minutes 属性がネットワークのインピーダンスである場合は「TotalWait_Minutes」となります) | このプロパティには、ルートの全体の待機時間が格納されます。ルートの全体の待機時間とは、タイム ウィンドウの開始までストップで待機した時間のことです。 このプロパティは、ネットワーク解析レイヤーでタイム ウィンドウが有効になっている場合にだけ利用できます。 |
TotalViolation_[Impedance] (たとえば、Minutes 属性がネットワークのインピーダンスである場合は「TotalViolation_Minutes」となります) | このプロパティには、ストップにおけるルートの全体の時間超過が格納されます。タイム ウィンドウが終了した後でルートがストップに到着すると、時間超過が追加されます。これは、ArriveTime と TimeWindowEnd との差です。 このプロパティは、ネットワーク解析レイヤーでタイム ウィンドウが有効になっている場合にだけ利用できます。 |
StartTime | ルートの開始時間です。 このプロパティは、ネットワーク解析レイヤーでタイム ウィンドウが有効になっている場合にだけ利用できます。 |
EndTime | ルートの終了時間です。 このプロパティは、ネットワーク解析レイヤーでタイム ウィンドウが有効になっている場合にだけ利用できます。 |
ポイント バリア、ライン バリア、ポリゴン バリア
バリアは一時的な制限として機能し、ネットワークの一部にインピーダンスを追加したり、インピーダンスの値を増減したりします。新しいネットワーク解析レイヤーが作成されるとき、バリア クラスは空です。バリア クラスはオブジェクトを追加するときにだけ設定されます。ただし、バリアの追加は必須ではありません。
バリアはすべてのネットワーク解析レイヤーで使用できます。したがって、これらについては別のトピックで説明します。
ルート解析パラメーター
解析パラメーターは、解析レイヤーの [レイヤー プロパティ] ダイアログ ボックスで設定します。ダイアログ ボックスには複数の方法でアクセスできます。
ネットワーク解析レイヤーの [レイヤー プロパティ] ダイアログ ボックスを開く方法の詳細
[解析の設定] タブ
解析レイヤーで設定できるパラメーターを以下に示します。これらのパラメーターは、解析レイヤーの [レイヤー プロパティ] ダイアログ ボックスの [解析の設定] タブで設定できます。
インピーダンス
最適なルートを決定するときに最小化されるインピーダンスとして、任意のコスト属性を選択できます。たとえば、Minutes 属性を選択した場合は、最短のルートが検索されます。
規制
解析の実行中に適用する規制属性を選択できます。ほとんどの場合、規制により道路は通行禁止になりますが、回避または優先する道路に指定することもできます。一方通行 (Oneway) などの規制属性は、一方通行に従う必要のある車両 (たとえば、緊急車両以外) を対象とするソリューションの検索で使用します。その他の一般的な規制属性には、一部の車両に道路や橋の通行を禁止する高さ規制や重量規制、危険物運搬車両が迂回または少なくとも回避を試みる必要がある危険物規制、トラック運転手が従うべきトラックの指定ルートなどがあります。解析の実行中に、適用する規制を選択できます (さらに、[属性パラメーター] タブで、規制を使用するエレメントを通行禁止、回避、または優先のいずれにするかを指定できます)。
開始時間を使用
[開始時間を使用] を [時刻] および [特定の日付] または [曜日] プロパティと組み合わせて使用することで、ルートがいつ最初のストップから開始するかを指定できます。さらに、ルート解析のために、タイム ウィンドウ プロパティなどの日付/時間プロパティに時間のみの値を指定した場合、その日付は [特定の日付] または [曜日] に設定した日付と想定されます。
開始時間を指定するときに交通量データは必要ありませんが、ネットワーク データセットに交通量データが含まれていると、解析の結果はより正確になります。つまり、その結果は設定している開始日時に基づいて計算されます。たとえば、ラッシュアワーでは、ルートはオフピーク時よりも長く時間がかかります。また、最適なパスは、そのときの交通状況によって異なります。
開始時間とともに時間ベースのインピーダンスを使用しているときに、解析によって出力されるルート フィーチャには、StartTime プロパティと EndTime プロパティがあります。StartTime 値は、ルート解析レイヤーの [開始時間を使用] 設定に入力した値と一致します。EndTime は、ルートの開始時刻と所要時間から計算されます。ルート案内を生成すると、[ルート案内] ウィンドウに開始時間と終了時間が表示されます。
開始時間とともに時間ベースのインピーダンスを使用しているときには、ルート解析のストップに ArriveTime プロパティと DepartTime プロパティがあります。[ルート案内オプション] ダイアログ ボックスに時刻列も表示するように選択している場合は、[ルート案内] ウィンドウにストップの到着時間と出発時間が表示されます。実際には、[ルート案内] ウィンドウのすべてのルート案内に時刻が表示されます。
時刻
ここに入力する値は、ルートを開始させたい時刻を表します。[時刻] のデフォルト値は午前 8:00 です。
時刻は日付と関連付けられている必要があります。変動日 ([曜日]) または暦日 ([特定の日付]) のどちらかを入力できます。
特定の日付
暦日の場合は、[時刻] 値と関連付けられる日、月、および年を指定します。
曜日
変動日の場合は、[今日] または、現在の日付を基準にしたいずれかの曜日 ([日] から [土]) を選択できます。変動日を指定できることにより、日付を変更することなく再利用できる解析レイヤーを設定できます。
交通量は分ごとおよび日ごとに変化するため、変動日は交通量データとともに使用する場合に特に便利です。たとえば、毎日同じルートを計算し、交通状況を考慮に入れた正確な時間や最適なルートを求める必要がある場合は、[曜日] 設定と [今日] 設定を選択することができます。解析はコンピューターのオペレーティング システムによって決定される現在の日付の交通量データに基づいて結果を生成します。その日のルートを更新するために次の日 (たとえば、5 月 5 日) を戻した場合には、同じ解析レイヤーを再解析できます。[曜日] を [今日] に設定しているため、この解析は自動的に 5 月 5 日の交通量データに基づくものになります。
同様に、[曜日] プロパティを [月] に設定した場合、ソリューションは次の月曜日の予測交通量データに基づいて生成されます。ただし、今日が月曜日である場合、ソリューションは今日の交通量データを使用します。現在の日付から 6 日先まで解析できます。
交通量データおよびタイム ゾーンとともに開始時間を使用
交通量データを使用する場合、開始時刻は最初のストップが配置されているエッジまたはジャンクションのタイム ゾーンを参照します。タイム ゾーンは事前に決定できないため、これによって解析が失敗する場合があります。この状況は、ストップが複数のタイム ゾーンにわたって配置されており、最初のストップを維持することなく [ストップを並べ替えて最適ルートを検出] をオンにした場合に発生します。この状況は、最初のストップを事前に割り当てることで回避できます。
タイム ウィンドウを使用
ストップを訪れる時間帯が限られる場合は、ネットワーク ロケーション (ストップ) の TimeWindowStart プロパティと TimeWindowEnd プロパティでそのタイム ウィンドウを設定できます。このチェックボックスをオンまたはオフにして、タイム ウィンドウを使用するかどうかを指定します。タイム ウィンドウを有効にした場合、そのタイム ウィンドウに応じてルートが変更されます。ルートがタイム ウィンドウの条件を満たすことができない場合、そのストップはタイム ウィンドウ超過としてシンボル化されます。
ストップを並べ替えて適切なルートを検出
デフォルトでは、ルートは定義されている順序でストップに到着します。ただし、Network Analyst で最適な順序を検出することで、ルートをさらに短縮することができます。これは、タイム ウィンドウなどのさまざまな変数を考慮に入れます。もう 1 つのオプションは、起点と終点を維持し、Network Analyst でその間のストップの順序を変更する方法です。
このプロパティをオンにすると、ルート解析は最短パス問題から巡回セールスマン問題に変わります。
ジャンクションでの U ターン
Network Analyst では、U ターンをすべての場所で許可、どの場所でも許可しない、行き止まり (袋小路) のみで許可、または交差点と行き止まりのみで許可するように設定できます。U ターンを許可するということは、車両がジャンクションで方向転換し、同じ道路を引き返すことができるということを意味します。
出力形状タイプ
解析によって出力されるルート フィーチャは、次の 4 つの方法のいずれかで表すことができます。
- [正確な形状] は、結果のルートを正確な形状で表示します。
- [正確な形状 (メジャー付き)] は、結果のルートを正確な形状で表示します。リニア リファレンスのためのルートのメジャー値が出力に含まれます。メジャー値は、最初のストップから積算され、累積インピーダンスを記録します。
- [直線] は、ストップの間を 1 本の直線で表します。
- 出力形状タイプが [なし] に設定されている場合、形状は返されません。
階層を使用
ネットワーク データセットが階層属性を持つ場合は、解析のときに階層を使用できます。階層を使用すると、解析は下位ランクのエッジよりも上位ランクのエッジを優先します。階層解析は高速で、運転者が遠回りであっても一般道路の代わりに高速道路を利用する状況をシミュレートするのに使用できます。ただし、階層を使用しない場合は、ネットワーク データセットの正確なルートが検索されます。
無効なロケーションを除外
このプロパティを使用すると、無効なネットワーク ロケーションを無視して、有効なネットワーク ロケーションだけを使用して解析レイヤーを解決できます。このオプションがオフの場合は、未配置のネットワーク ロケーションがあると解析が失敗する可能性があります。いずれの場合でも、解析では無効なロケーションは無視されます。
ルート案内
[ルート案内] プロパティでは、距離の表示単位と、オプションとして (時間属性を指定している場合は) 時間を設定できます。さらに、ルートの生成後にルート案内を自動的に表示するように設定できます (ルート案内を自動で表示しないよう選択している場合は、[Network Analyst] ツールバーの [ルート案内] ボタン をクリックすると、ルート案内が表示されます)。
累積タブ
[累積] タブでは、ルート オブジェクトに累積されるコスト属性をネットワーク データセットから選択できます。これらの累積属性は、参考情報としてのみ使用されます。解析では、解析レイヤーの [インピーダンス] パラメーターで指定されているコスト属性のみを使用して、ルートが計算されます。
累積するコスト属性ごとに、解析によって出力されるルートに Total_[Impedance] プロパティが追加されます。[Impedance] には、累積されたインピーダンス属性の名前が入ります。
移動時間を最小化するルートを検索するために、インピーダンス属性を「分」に設定したとします。移動時間を使用して解析を行っていても、最短ルートの長さを確認したいという場合もあります。[累積] タブで、もう 1 つのコスト属性である [Miles] をオンにします。解析の後、出力ルート フィーチャに Total_Minutes と Total_Miles というプロパティが作成されます。
逆に、最短ルートを検索し、移動時間の累積値を計算して、ルートが各ストップに到着する時間やすべての移動が完了するまでの時間を確認することもできます。交通量対応のネットワーク データセットがある場合、特定の時刻におけるこの情報を検索して、さまざまな交通速度を説明することもできます。これには、解析レイヤーのインピーダンスに距離ベースのコスト属性を選択し、開始時間を使用して、時間に依存したコスト属性を累積します。
[ネットワーク ロケーション] タブ
[ネットワーク ロケーション] タブのパラメーターは、ネットワーク ロケーションを検索して、それらのプロパティに値を設定するために使用されます。
ルート案内
ルート解析の検出によるルートの生成が完了すると、ArcMap でルート案内を表示できるようになります。
ルート案内を表示するには、[Network Analyst] ツールバーの [ルート案内ウィンドウ] ボタン をクリックします。
- [ルート案内] ウィンドウには、ターンごとの道案内と、インピーダンスが設定されたマップが表示されます。
- インピーダンスとして時間が設定されている場合、[ルート案内] ウィンドウにはルートの各部までの所要時間が表示されます。さらに、[ルート案内] ウィンドウには各部までの距離も表示されます。
- ルートにタイム ウィンドウが適用されている場合、[ルート案内] ウィンドウには Attr_[time] 属性と Wait_[time] 属性も表示されます。ただし、Violation_[time] 属性と Attr_[length] 属性の表示はサポートされません。