ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • ヘルプ
  • Sign Out
ArcGIS Desktop

ArcGIS Online

組織のマッピング プラットフォーム

ArcGIS Desktop

完全なプロ仕様の GIS

ArcGIS Enterprise

エンタープライズ GIS

ArcGIS Developers

位置情報利用アプリの開発ツール

ArcGIS Solutions

各種業界向けの無料のテンプレート マップおよびテンプレート アプリケーション

ArcGIS Marketplace

組織で使えるアプリとデータを取得

  • ドキュメント
  • サポート
Esri
  • サイン イン
user
  • マイ プロフィール
  • サイン アウト

ArcMap

  • ホーム
  • はじめに
  • マップ
  • 解析
  • データ管理
  • ツール
  • エクステンション

ルートの検索 (Find Routes)

  • 概要
  • 図
  • 使用法
  • 構文
  • コードのサンプル
  • 環境
  • ライセンス情報

概要

ルートを検索する解析は、地点間を最短時間または最短距離で移動する方法を判断することを意味します。このツールを使用すると、複数のストップを訪問するルート案内を生成したり、地点間の距離や移動時間を計測したりできます。このツールは 1 回の実行で、1 台以上の車両のルートを検索できます。そのため、事前に割り当てられたストップを複数の運転者が訪問するための最適なルートを判断したり、多数の通勤者の自宅から職場までの移動距離を 1 回の解析で計測したりできます。

メモ:

[ルートの検索 (Find Routes)] ツールと [ルート レイヤーの作成 (Make Route Layer)] ツールは類似していますが、それぞれ異なる目的で設計されています。ジオプロセシング サービスをセットアップする場合、[ルートの検索 (Find Routes)] ツールを使用すると、セットアップ プロセスが簡単になります。それ以外の場合は、[ルート レイヤーの作成 (Make Route Layer)] ツールを使用します。

[ルートの検索 (Find Routes)] を使用してルート検索ジオプロセシング サービスを作成する場合、1 つのツールをセットアップするだけで済みます。このツールをサービスとして直接公開することができます。これに対して、[ルート レイヤーの作成 (Make Route Layer)] ツールを使用してジオプロセシング サービスを作成するには、モデルを作成し、それをさまざまな他のツールに正しく接続して公開する必要があります。チュートリアル データを使用して最寄り施設サービスを設定する方法については、「Network Analyst ジオプロセシング サービスの例の概要」をご参照ください。検討すべきもう 1 つのオプションは、ArcGIS Online のルートの検索サービスです。このサービスは、ArcMap 内のジオプロセシング ツールのように動作し、他のアプリケーションからアクセスでき、世界の大部分の高品質な道路データを含んでいます。

[ルートの検索 (Find Routes)] の出力の詳細

図

A と B 間の最短ルート

使用法

  • 複数の車両のルートを検索するには、[ストップ] パラメーターで説明されている RouteName 属性をご参照ください。多数の車両のルートを検索する場合は、解析前に、一連のストップをルートごとに小さなサブセットにグループ化しておく必要があります。ルートは、ストップのサブセットごとに生成されます (ストップのグループ化やストップ間のルート検索を最適化する場合は、代わりに配車ルート解析ツールを使用します)。
  • このツール ダイアログ ボックスの各種オプション パラメーターは、管理しやすいように次の 6 つのカテゴリに分類されています。

    • 高度な解析
    • バリア
    • カスタム移動モード
    • ネットワーク データセット
    • ネットワーク ロケーション
    • 出力
    • サービスのケーパビリティ

構文

arcpy.na.FindRoutes(Stops, Measurement_Units, Network_Dataset, Output_Geodatabase, Output_Routes_Name, Output_Route_Edges_Name, Output_Directions_Name, Output_Stops_Name, {Reorder_Stops_to_Find_Optimal_Routes}, {Preserve_Terminal_Stops}, {Return_to_Start}, {Use_Time_Windows}, {Time_of_Day}, {Time_Zone_for_Time_of_Day}, {UTurn_Policy}, {Point_Barriers}, {Line_Barriers}, {Polygon_Barriers}, {Time_Attribute}, {Time_Attribute_Units}, {Distance_Attribute}, {Distance_Attribute_Units}, {Use_Hierarchy_in_Analysis}, {Restrictions}, {Attribute_Parameter_Values}, {Accumulate_Attributes}, {Maximum_Snap_Tolerance}, {Feature_Locator_WHERE_Clause}, {Route_Shape}, {Route_Line_Simplification_Tolerance}, {Populate_Route_Edges}, {Populate_Directions}, {Directions_Language}, {Directions_Distance_Units}, {Directions_Style_Name}, {Maximum_Features_Affected_by_Point_Barriers}, {Maximum_Features_Affected_by_Line_Barriers}, {Maximum_Features_Affected_by_Polygon_Barriers}, {Maximum_Stops}, {Maximum_Stops_per_Route}, {Force_Hierarchy_Beyond_Distance}, {Save_Output_Network_Analysis_Layer}, {Travel_Mode}, {Time_Zone_for_Time_Windows}, {Overrides}, {Save_Route_Data})
パラメーター説明データ タイプ
Stops

このツールは、このパラメーターで指定されたストップ間のルートを検索します。解析を実行するには、少なくとも 2 つのストップが必要です。

ストップを指定する際は、属性を使用してストップごとにプロパティ (名前やサービス時間) を設定できます。ストップには、次の属性を指定できます。

OBJECTID - システムで管理される ID フィールド。

SHAPE - インシデントの地理的位置を示すジオメトリ フィールド。

Name - ストップの名前。この名前は、ルート案内に使用されます。名前を指定しない場合は、出力ストップ、ルート、およびルート案内において接頭辞 Location が付いた一意な名前が自動的に生成されます。

RouteName - ストップが割り当てられるルートの名前。同じルート名を異なるストップに割り当てると、それらのストップがグループ化され、同じルートで訪問されるようになります。一意のルート名をストップの異なるグループに割り当てることで、1 回の解析で多くのルートを生成できます。このツールでは、最大 150 のストップを 1 つのルートにグループ化できます。

Sequence - 出力ルートは、この属性で指定した順序でストップを訪問します。ルート名の値が同じストップのグループ内では、シーケンス値は 0 より大きく、ストップの合計数以下である必要があります。また、シーケンス値は重複してはなりません。

[ストップを並べ替えて最適ルートを検出] をオン (True) にすると、各ルート名の最初と最後の値を除くすべての値が無視されるため、ツールは、各ルートの全体の移動を最小化する順序を見つけることができます ([ストップの順番を維持] および [スタートに戻る] の設定は、各ルートの最初と最後の値を無視するかどうかを決定します)。

AdditionalTime - ストップで費やされる時間の長さ。これは、ルートの合計時間に追加されます。この属性値の単位は、[計測単位] パラメーターで指定されます。計測単位が時間ベースである場合に限り、この属性値が解析に含められます。デフォルト値は 0 です。

通常、ストップの場所 (家など) は厳密には道路に接していません。道路から多少離れて配置されています。ストップの実際の場所と道路に接した場所の間の距離を合計移動距離に含めることが重要である場合は、この属性値を使用してその距離をモデル化できます。

AdditionalDistance - ストップで移動する追加の距離。これは、ルートの合計距離に追加されます。この属性値の単位は、[計測単位] パラメーターで指定されます。計測単位が距離ベースである場合に限り、この属性値が解析に含められます。デフォルト値は 0 です。

通常、ストップの場所 (家など) は厳密には道路に接していません。道路から多少離れて配置されています。ストップの実際の場所と道路に接した場所の間の距離を合計移動距離に含めることが重要である場合は、この属性値を使用してその距離をモデル化できます。

TimeWindowStart - ストップに訪問できる最も早い時刻。この値は、2015/8/12 12:15 PM のように日時で指定してください。ストップのタイム ウィンドウの開始時間と終了時間を指定することで、ルートでストップを訪問する時刻を定義します。[タイム ウィンドウを使用] がオンで、[使用する単位] に時間ベースを選択している限り、ツールは全体の移動を最小化し、指定のタイム ウィンドウ内にストップに到着するソリューションを解析します。

解析が複数のタイム ゾーンにまたがる場合、タイム ウィンドウ値はそのストップが属しているタイム ゾーンの日時を表します。

このフィールドには NULL 値を含めることができます。NULL 値は、TimeWindowEnd 属性で指定された値より前の任意の時間に到着できることを示しています。TimeWindowEnd も NULL 値である場合は、ストップに任意の時間に訪問できます。

TimeWindowEnd - ストップに訪問できる最も遅い時刻。この値は、2015/8/12 12:15 PM のように日時で指定してください。ストップのタイム ウィンドウの開始時間と終了時間を指定することで、ルートでストップを訪問する時刻を定義します。[タイム ウィンドウを使用] がオンで、[使用する単位] に時間ベースを選択している限り、ツールは全体の移動を最小化し、指定のタイム ウィンドウ内にストップに到着するソリューションを解析します。

解析が複数のタイム ゾーンにまたがる場合、タイム ウィンドウ値はそのストップが属しているタイム ゾーンの日時を表します。

このフィールドには NULL 値を含めることができます。NULL 値は、TimeWindowStart 属性で指定された値より後の任意の時間に到着できることを示しています。TimeWindowStart も NULL 値である場合は、ストップに任意の時間に訪問できます。

CurbApproach - 車両がストップに到着する方向およびストップから出発する方向を指定します。このフィールド値は、次のいずれかの整数として指定されます (括弧で囲まれた名前ではなく、数値コードを使用します)。

  • 0 (車両の両側) - 車両は両方の方向でストップに到着する、およびストップから出発することができるため、ストップでの U ターンが許可されます。この設定は、車両がストップで方向転換することが可能かつ現実的である場合に選択できます。これは、道路の幅と交通量に基づいて決定されたり、ストップに車両が進入して方向転換できる駐車場があるかどうかに応じて決定されたりします。
  • 1 (車両の右側) - 車両がストップに到着するとき、およびストップから出発するときに、施設が車両の右側にある必要があります。U ターンは許可されません。これは、通常、バス停が右側にある状態で到着する必要があるバスなどの車両に使用されます。
  • 2 (車両の左側) - 車両がストップに到着するとき、およびストップから出発するときに、アプローチを車両の左側に制限します。U ターンは許可されません。これは、通常、バス停が左側にある状態で到着する必要があるバスなどの車両に使用されます。
  • 3 (U ターンを許可しない) - 車両がストップに到着するときはどちらの側でも到着できますが、方向転換せずに出発する必要があります。

CurbApproach プロパティは、米国の右側通行の標準と英国の左側通行の標準の両方に対応するように設計されています。まず、ストップが車両の左側にあるとします。これは、車両が移動するのが道路の左側であるか右側であるかに関係なく、常に左側にあります。右側通行か左側通行かに応じて異なるのは、2 つの方向のうちどちらからストップに到着するかです。つまり、結局のところ車両の右側または左側になります。たとえば、ストップに到着するときに、車両とストップの間に交通レーンがないほうがいい場合は、米国では [車両の右側] (1) を選択し、英国では [車両の左側] (2) を選択します。

Feature Set
Measurement_Units

出力ルートの合計移動時間または合計距離を計測およびレポートするときに使用される単位を指定します。

このパラメーターに選択する単位によって、最適なルートを検出するときに距離が計測されるか、時間が計測されるかが決まります。選択した移動モード (運転時間、歩行時間など) での移動時間を最小にするには、時間単位を選択します。指定した移動モードでの移動距離を最短にするには、距離単位を選択します。結果にレポートされる合計時間または合計距離の単位も、この選択によって決まります。これには次の選択肢があります。

  • Meters
  • Kilometers
  • Feet
  • Yards
  • Miles
  • NauticalMiles
  • Seconds
  • Minutes
  • Hours
  • Days

このツールでは、選択した計測単位が時間ベースか距離ベースかに応じて、[時間属性] パラメーターに指定したネットワーク コスト属性を使用するか、[距離属性] パラメーターに指定したネットワーク コスト属性を使用するかが選択されます。

対応する時間または距離のコスト属性の単位と [計測単位] の値が異なる場合は、ツールによって必要な単位変換が実行されます。

String
Network_Dataset

解析が実行されるネットワーク データセット。ほとんどの場合、ネットワーク データセットは道路ネットワークを表しますが、他の種類の交通ネットワークを表すこともあります。ネットワーク データセットには、少なくとも 1 つの時間ベースのコスト属性と 1 つの距離ベースのコスト属性が必要です。

Network Dataset Layer
Output_Geodatabase

出力ワークスペースです。このワークスペースはすでに存在している必要があります。デフォルトの出力ワークスペースは、in_memory です。

Workspace
Output_Routes_Name

ストップを接続するルートまたはラインを含む出力フィーチャクラスの名前。このフィーチャクラスには、属性、合計移動時間または距離も含まれています。

「ルートの検索 (Find Routes) における出力」では、この出力フィーチャクラスのスキーマが説明されています。

String
Output_Route_Edges_Name

ルート エッジ含む出力フィーチャクラスの名前。ルート エッジは、ルートが通過する個別の道路フィーチャを表します。

「ルートの検索 (Find Routes) における出力」では、この出力フィーチャクラスのスキーマが説明されています。

String
Output_Directions_Name

ルート案内を含む出力フィーチャクラスの名前。

「ルートの検索 (Find Routes) における出力」では、この出力フィーチャクラスのスキーマが説明されています。

String
Output_Stops_Name

出力ストップを含む出力フィーチャクラスの名前。

「ルートの検索 (Find Routes) における出力」では、この出力フィーチャクラスのスキーマが説明されています。

String
Reorder_Stops_to_Find_Optimal_Routes
(オプション)

定義した順序、またはツールが全体の移動を最小化すると判断した順序のどちらでストップに訪問するかを指定します。

  • USE_INPUT_ORDER —ユーザーが定義した順序でストップに訪問します。これがデフォルトのオプションです。入力ストップ フィーチャの Sequence 属性を使用してストップの順序を設定したり、ストップの Object ID によって決定される順序のままにすることができます。
  • FIND_BEST_ORDER —全体の移動距離または移動時間が最小になる順序をツールが決定します。ストップの順序を変更し、ストップのタイム ウィンドウを考慮できます。その他のパラメーターを使用すると、最初と最後のストップを維持して、中間のストップの順序を変更することができます。

最適なストップ順序と最適なルートの検索は、一般に、巡回セールスマン問題 (Traveling Salesman Problem: TSP) の解析と呼ばれています。

Boolean
Preserve_Terminal_Stops
(オプション)

[ストップを並べ替えて最適ルートを検出] がオン (または True) の場合、最初と最後のストップを維持して、残りの順序を変更できます。

最初と最後のストップは、Sequence 属性値によって決定されます。Sequence 値が NULL の場合、Object ID 値によって決定されます。

  • PRESERVE_BOTH —入力の順序に従って最初と最後のストップをルートの最初と最後のストップとして維持します。
  • PRESERVE_FIRST —入力の順序に従って最初のストップをルートの最初のストップとして維持します。ただし、最後のストップの並べ替えは自由です。
  • PRESERVE_LAST —入力の順序に従って最後のストップをルートの最後のストップとして維持します。ただし、最初のストップの並べ替えは自由です。
  • PRESERVE_NONE —最初のストップと最後のストップを両方とも自由に並べ替えられます。

[ストップを並べ替えて最適ルートを検出] がオフ (または False) の場合、[ターミナル ストップを維持] は無視されます。

String
Return_to_Start
(オプション)

ルートを同じ位置で開始および終了するかどうかを選択します。このオプションを使用すると、最初のストップ フィーチャを複製して、複製したストップを最後に配置する必要がなくなります。

ルートの開始位置は、Sequence 属性の値が最も低いストップ フィーチャです。Sequence 値が NULL の場合、Object ID 値が最低のストップ フィーチャになります。

  • RETURN —最初のストップ フィーチャで開始および終了します。これがデフォルトです。
  • NO_RETURN —最初のストップ フィーチャで開始および終了しません。
Boolean
Use_Time_Windows
(オプション)

ルートでストップに到着する時刻が入力ストップのタイム ウィンドウで指定されている場合、このオプションをオンにします (または、True に設定します)。TimeWindowStart および TimeWindowEnd 属性に時間を入力することで、入力ストップにタイム ウィンドウを追加できます。

  • USE_TIMEWINDOWS —入力ストップにタイム ウィンドウがあり、ツールでその値を使用します。
  • NO_TIMEWINDOWS —入力ストップにタイム ウィンドウがないか、ある場合は、ツールでその値を使用しません。これがデフォルト値です。

[タイム ウィンドウを使用] がオン (または True) の場合、入力ストップにタイム ウィンドウがなくても、ツールの実行に少し時間がかかります。そのため、可能な場合は、このオプションをオフに (False に設定) することをお勧めします。

Boolean
Time_of_Day
(オプション)

ルートの開始の日時を指定します。

ネットワーク データセットにライブまたは履歴交通量データが含まれている場合、時刻を指定すると、その日時の交通状況における移動時間が解析されるため、ストップ間の移動時間の評価が正確になります。

[時刻のタイム ゾーン] パラメーターは、この日時が UTC を参照するか、ストップの場所のタイム ゾーンを参照するかを指定します。

[使用する単位] が時間ベース単位に設定されていない場合、このパラメーターは無視されます。

Date
Time_Zone_for_Time_of_Day
(オプション)

[時刻] パラメーターのタイム ゾーンを指定します。

  • GEO_LOCAL —[時刻] パラメーターが、ルートの最初のストップがある場所のタイム ゾーンを表します。多くのルートを生成していて、それらが複数のタイム ゾーンで開始される場合、それぞれの開始時間は世界協定時 (UTC) でずれが発生します。たとえば、1 月 2 日の [時刻] の値が 10:00 a.m. の場合、 東部標準時ゾーンで開始されるルートは 開始時間が東部標準時の 10:00 a.m. (3:00 p.m. UTC)、 中央標準時ゾーンで開始されるルートは 開始時間が中央標準時の 10:00 a.m. (4:00 p.m. UTC) になります。開始時間が UTC では 1 時間異なります。出力ストップ フィーチャクラスに記録される到着日時と出発日時は、各ルートの最初のストップがある場所のタイム ゾーンです。
  • UTC —[時刻] パラメーターが、UTC (協定世界時) を参照します。特定の時刻 (たとえば今) におけるルートを生成する場合で、最初のストップがある場所のタイム ゾーンがわからない場合、このオプションを選択します。多くのルートを生成していて、それらが複数のタイム ゾーンにまたがっている場合、UTC での開始時間は同時です。たとえば、1 月 2 日の [時刻] の値が 10:00 a.m. の場合、 東部標準時ゾーンで開始されるルートは開始時間が東部標準時の 5:00 a.m. (UTC-5:00)、 中央標準時ゾーンで開始されるルートは開始時間が中央標準時の 4:00 a.m. (UTC-6:00) になります。どちらのルートも 10:00 a.m. UTC に 開始されます。出力ストップ フィーチャクラスに記録される到着日時と出発日時は UTC です。
String
UTurn_Policy
(オプション)

ジャンクションでの U ターン ポリシー。U ターンを許可するということは、解析においてジャンクションで方向転換し、同じ道路を引き返すことができるということを意味します。 ジャンクションが道路の交差と行き止まりを表すことを前提に、さまざまな車両が、一部のジャンクションでは方向転換でき、他のジャンクションでは方向転換できない、というように設定できます。これは、ジャンクションが交差と行き止まりのどちらを表すかによって変わります。これに対応するには、ジャンクションに接続するエッジや道路の数 (ジャンクションでのノードへの接続数) によって、暗黙的に U ターン ポリシーを指定します。以下では、このパラメーターで選択できる値と、ジャンクションので接続におけるそれぞれの意味について示します。

  • ALLOW_UTURNS —任意の数の接続されたエッジまたは道路を持つジャンクションで U ターンを許可します。これがデフォルト値です。
  • NO_UTURNS —ジャンクションの接続にかかわらず、すべてのジャンクションで U ターンを禁止します。
  • ALLOW_DEAD_ENDS_ONLY —1 つの隣接エッジを持つジャンクション (行き止まり) を除くすべてのジャンクションでの U ターンを禁止します。
  • ALLOW_DEAD_ENDS_AND_INTERSECTIONS_ONLY —2 つの隣接するエッジが接するジャンクションでの U ターンを禁止します。ただし、交差点 (3 つ以上の隣接エッジを持つジャンクション) および行き止まり (1 つの隣接エッジを持つジャンクション) では U ターンを許可します。道路をモデリングするネットワークには、道路セグメントの中間に無関係のジャンクションが存在する場合があります。このオプションは、これらの場所で車両が U ターンすることを防ぎます。

このパラメーターの値は、[移動モード](Python では Travel_Mode) をカスタム以外の値に設定した場合、オーバーライドされます。

String
Point_Barriers
(オプション)

ポイント バリアを指定します。ポイント バリアは、通行不可と追加コストの 2 種類に分かれています。これらは、一時的にネットワーク上のポイントの通行を規制したり、ポイントにインピーダンスを追加したりします。ポイント バリアはフィーチャ セットで定義されます。ポイント フィーチャに指定した属性値によって、ポイント バリアが通行不可バリアなのか、追加コスト バリアなのかが決まります。属性テーブルの各フィールドとその説明を以下に示します。

ObjectID:

システムで管理される ID フィールド。

Shape:

ネットワーク解析オブジェクトの地理的な位置を示すジオメトリ フィールド。

Name:

バリアの名前。

BarrierType:

バリアの通過を完全に規制するのか、バリアを通過する際のコストを追加するのかを指定します。次の 2 つのオプションがあります。

  • [通過不可] (0) - バリアを通過できません。これがデフォルトです。
  • [追加コスト](2) - バリアを通過するたびに、Additional_Time フィールドと Additional_Distance フィールドで指定した値だけネットワーク コストが加算されます。

[規制] の場合は 0 の値、[追加コスト] の場合は 2 の値を使用します。

Additional_Time:

バリアを通過するときに追加される移動時間の値を指定します。このフィールドは、追加コスト バリアにのみ適用され、計測単位が時間ベースである場合に限られます。このフィールドには 0 以上の値を指定する必要があります。単位は [計測単位] パラメーターで指定した単位と同じです。

Additional_Distance:

バリアを通過するときに追加される距離の値を指定します。このフィールドは、追加コスト バリアにのみ適用され、計測単位が距離ベースである場合に限られます。このフィールドには 0 以上の値を指定する必要があります。単位は [計測単位] パラメーターで指定した単位と同じです。

Feature Set
Line_Barriers
(オプション)

一時的にラインの横断を規制するライン バリアを指定します。ライン バリアは、フィーチャ セットで定義されます。属性テーブルの各フィールドとその説明を以下に示します。

ObjectID:

システムで管理される ID フィールド。

Shape:

ネットワーク解析オブジェクトの地理的な位置を示すジオメトリ フィールド。

Name:

バリアの名前。

Feature Set
Polygon_Barriers
(オプション)

ポリゴン バリアを指定します。ポリゴン バリアは、通行不可とコスト係数指定の 2 種類に分かれています。これらは、ポリゴン バリアに含まれるネットワークの一部に対して、一時的に通行を規制したり、インピーダンスを増減したりします。ポリゴン バリアはフィーチャ セットで定義されます。ポリゴン フィーチャに指定した属性値によって、ポリゴン バリアが通行不可バリアなのか、コスト係数指 バリアなのかが決まります。属性テーブルの各フィールドとその説明を以下に示します。

ObjectID:

システムで管理される ID フィールド。

Shape:

ネットワーク解析オブジェクトの地理的な位置を示すジオメトリ フィールド。

Name:

バリアの名前。

BarrierType:

バリアの通過を完全に禁止するか、バリアを通過する際のコストを係数に基づいて計算するかを指定します。次の 2 つのオプションがあります。

  • [規制] (0) - バリアのどの部分も通過できません。これがデフォルトです。
  • [コスト係数指定] (1) - ScaledCostFactor プロパティの値を乗算して、対象エッジのインピーダンスを増減します。エッジの一部だけがバリアの対象になっている場合は、インピーダンスが比率に応じて乗算されます。

[規制] の場合は 0 の値、[コスト係数指定] の場合は 1 の値を使用します。

ScaledTimeFactor:

これは、バリアが交差している道路の移動時間に乗算する係数です。このフィールドは、コスト係数指定バリアにのみ適用され、計測単位が時間ベースである場合に限られます。このフィールドには 0 より大きい値を指定する必要があります。

ScaledDistanceFactor:

これは、バリアが交差している道路の距離に乗算する係数です。この属性は、コスト係数指定バリアにのみ適用され、計測単位が距離ベースである場合に限られます。この属性には 0 より大きい値を指定する必要があります。

Feature Set
Time_Attribute
(オプション)

[使用する単位] の値が時間単位である場合に使用するネットワーク コスト属性を定義します。

[使用する単位] の値がここに定義されているコスト属性の単位と異なる場合は、ツールによって必要な時間単位の変換がなされます。つまり、デフォルトのカットオフの時間単位とネットワーク コスト属性が同じである必要はありません。

このパラメーターの値は、[移動モード](Python では Travel_Mode) を [カスタム] 以外の値に設定した場合、オーバーライドされます。

String
Time_Attribute_Units
(オプション)

時間属性の単位。時間属性の単位を明示的に設定できますが、何も指定しないか、"#" を指定して、解析によって単位が決定されるようにすることをお勧めします。

このパラメーターの値は、Travel_Mode を CUSTOM 以外の値に設定した場合、オーバーライドされます。

String
Distance_Attribute
(オプション)

[使用する単位] の値が距離単位である場合に使用するネットワーク コスト属性を定義します。

[使用する単位] の値がここに定義されているコスト属性の単位と異なる場合は、ツールによって必要な距離単位の変換がなされます。つまり、計測単位とネットワーク コスト属性の距離単位が同じである必要はありません。

このパラメーターの値は、[移動モード](Python では Travel_Mode) を [カスタム] 以外の値に設定した場合、オーバーライドされます。

String
Distance_Attribute_Units
(オプション)

距離属性の単位。距離属性の単位を明示的に設定できますが、何も指定しないか、"#" を指定して、解析によって単位が決定されるようにすることをお勧めします。

このパラメーターの値は、Travel_Mode が CUSTOM 以外の値に設定されているとオーバーライドされます。

String
Use_Hierarchy_in_Analysis
(オプション)

ポイント間の最短ルートを検索するときに階層を使用するかどうかを指定します。

  • USE_HIERARCHY — ルートの検索時に階層を使用します。階層を使用すると、ツールは順位の低い道路 (生活道路など) よりも順位の高い道路 (高速道路など) を優先します。これを使用して、移動距離が長くなっても、生活道路よりも高速道路を優先してシミュレーションできます。これは特に、遠くの施設へのルートを検出する場合に効果的です。なぜなら、長距離移動の運転者は、ストップ、交差点、およびターンを避けることができる高速道路での移動を好む傾向にあるためです。階層を使用すると、このツールは比較的小さい道路サブセットから最適ルートを選択する必要があるため、特に長距離ルートの場合に計算が速くなります。
  • NO_HIERARCHY — ルートの検索時に階層を使用しません。階層を使用しない場合は、ルート検索時にすべての道路が検討に入れられ、上位レベルの道路が優先されません。これは、多くの場合、市内の短距離ルートを検出する場合に使用されます。

解析を実行するネットワーク データセットに使用する階層属性が定義されていない場合、パラメーターは使用されません。この場合、「#」をパラメーター値として使用します。

Force_Hierarchy_Beyond_Distance パラメーターを使用すると、Use_Hierarchy_in_Analysis が False に設定されていても、解析での階層の使用を強制することができます。

このパラメーターは、Travel_Mode を CUSTOM に設定しなければ、無視されます。カスタム歩行モードをモデリングする場合、階層が動力付き車両用に設計されているため、階層をオフにすることをお勧めします。

Boolean
Restrictions
[restriction,...]
(オプション)

解析時にどのネットワーク規制属性を考慮するかを指定します。

このパラメーターの値は、[移動モード](Python では Travel_Mode) をカスタム以外の値に設定した場合、オーバーライドされます。

String
Attribute_Parameter_Values
(オプション)

パラメーターを持つネットワーク属性のパラメーター値を指定します。レコード セットには、パラメーターを一意に特定するために一緒に使用される 2 つの列と、パラメーター値を指定する別の列が含まれています。

このパラメーターの値は、[移動モード](Python では Travel_Mode) をカスタム以外の値に設定した場合、オーバーライドされます。

属性パラメーター値 レコード セットには、属性が関連付けられています。属性テーブルの各フィールドとその説明を以下に示します。

ObjectID:

システムで管理される ID フィールド。

AttributeName:

テーブル行で設定される属性パラメーターを持つネットワーク属性の名前。

ParameterName:

テーブル行で設定される値を持つ属性パラメーターの名前。(オブジェクト タイプ パラメーターは、このツールを使用して更新できません。)

ParameterValue:

属性パラメーターに設定する値。値が指定されない場合、属性パラメーターは NULL に設定されます。

Record Set
Accumulate_Attributes
[attribute,...]
(オプション)

解析中に累積されるコスト属性のリスト。これらの累積属性は、参考情報としてのみ使用されます。解析では、[時間属性](Python では Time_Attribute) パラメーターまたは [距離属性](Python では Distance_Attribute) パラメーターで指定されているコスト属性のみを使用して最短経路を計算します。

累積されるコスト属性ごとに、解析で出力されたルートに Total_[属性] フィールドが追加されます。

String
Maximum_Snap_Tolerance
(オプション)

最大スナップ許容値とは、Network Analyst がネットワーク上でポイントの配置や再配置を行う場合に検索できる最大距離のことです。検索によって適切なエッジまたはジャンクションを見つけ、そのうちで最も近い場所にポイントをスナップします。最大スナップ許容値内で適切な場所が見つからなかった場合、そのオブジェクトには未配置のマークが付けられます。

Linear Unit
Feature_Locator_WHERE_Clause
(オプション)

ストップを配置できるネットワーク エレメントを制限するソース フィーチャ サブセットの選択に使用する SQL 式。このパラメーターの構文は、ソース フィーチャクラス名 (後に半角スペースが入ります) と SQL 構文の 2 つの部分で構成されます。2 つ以上のソース フィーチャクラスを含む SQL 式を記述するには、それらをセミコロンで区切ります。

通行が規制されている高速道路に施設を配置しないようにするために、たとえば、次のように SQL 式を記述してそれらのソース フィーチャを除外します。"Streets" "FUNC_CLASS not in('1', '2')"。

読み込み時に、バリアはフィーチャのロケーター WHERE 句を無視します。

String
Route_Shape
(オプション)

ツールによって出力されるルート フィーチャのタイプを指定します。このパラメーターは、次のいずれかの値を使用して指定できます。

  • TRUE_LINES_WITHOUT_MEASURES — 対象の道路に基づいて、結果のルートの正確な形状を返します。
  • TRUE_LINES_WITH_MEASURES — 対象の道路に基づいて、結果のルートの正確な形状を返します。さらに、形状をリニア リファレンスで使用できるように、メジャー値を作成します。
  • STRAIGHT_LINES — ストップ間の直線を返します。
  • NO_LINES — ルートの形状を返しません。この値は、ストップ間の総移動時間または総移動距離だけを判定する場合に便利です。

[ルート形状] パラメーターが [正確な形状] に設定されている場合は、[ルートの単純化許容値] パラメーターの適切な値を使用して、ルートの形状の一般化をさらに制御できます。

[ルート形状] パラメーターにどのような値を選択しても、最適ルートは常に、ストップ間の直線距離を使用するのではなく、移動時間または移動距離を最小化することで決定されます。つまり、ルート形状が異なるだけで、ルート検索時に対象となる道路は同じであることを意味します。

String
Route_Line_Simplification_Tolerance
(オプション)

ルート ジオメトリをどの程度単純化するかを指定します。

Route_Shape パラメーターが TRUE_LINES_WITH_MEASURES または TRUE_LINES_WITHOUT_MEASURES に設定されていない場合、このパラメーターは無視されます。

単純化によって、ルートの基本的な形状を定義する重要ポイント (交差点でのターンなど) は維持され、その他のポイントは削除されます。ここで指定する単純化の距離は、単純化されたラインの元のラインからの逸脱として認められる、最大許容オフセットです。ラインの単純化では、ルート ジオメトリを構成する頂点の数が削減されます。これにより、ツールの実行時間が短縮されます。

このパラメーターの値は、[移動モード](Python では Travel_Mode) をカスタム以外の値に設定した場合、オーバーライドされます。

Linear Unit
Populate_Route_Edges
(オプション)

各ルートに対してエッジを生成するかどうかを指定します。ルート エッジは、ルートが通過する個別の道路フィーチャまたはその他の類似フィーチャを表します。出力ルート エッジ レイヤーは一般的に、結果のルートで最も多く/少なく利用される道路またはパスを確認するために使用されます。

  • ROUTE_EDGES —ルート エッジを生成します。出力ルート エッジ レイヤーには、ライン フィーチャが入力されます。
  • NO_ROUTE_EDGES —ルート エッジを生成しません。空の出力ルート エッジ レイヤーが返されます。
Boolean
Populate_Directions
(オプション)

各ルートに対してルート案内を生成するかどうかを指定します。

  • DIRECTIONS —[ルート案内の言語]、[ルート案内のスタイル名]、および [ルート案内の距離単位] パラメーターの値に基づいて、ルート案内が生成および構成されることを示します。
  • NO_DIRECTIONS —ルート案内は生成されず、空のルート案内レイヤーが返されます。
Boolean
Directions_Language
(オプション)

ルート案内を生成する際に使用する言語を指定します。

このパラメーターは、[ルート案内の設定] パラメーターがオンであるか、True に設定されている場合にのみ使用されます。

コンピューターにインストールされている ArcGIS 言語パックに応じて使用できるルート案内の言語。2 文字または 5 文字の言語コードで値を入力します (たとえば、英語の場合は en、簡体字中国語の場合は zh-CN)。

サポートされていない言語コードを指定すると、デフォルトの言語である英語を使用するルート案内が返されます。

String
Directions_Distance_Units
(オプション)

ルート案内で移動距離を表示する単位を指定します。このパラメーターは、[ルート案内の設定] パラメーターがオンであるか、True に設定されている場合にのみ使用されます。

  • Miles
  • Kilometers
  • Meters
  • Feet
  • Yards
  • NauticalMiles
String
Directions_Style_Name
(オプション)

ルート案内の書式スタイルの名前を指定します。このパラメーターは、[ルート案内の設定] パラメーターがオンであるか、True に設定されている場合にのみ使用されます。パラメーターには、次のいずれかの値を指定できます。

  • NA Desktop — 印刷に適した詳細なルート案内を生成します。
  • NA Navigation — 車載ナビゲーション デバイス用に設計された詳細なルート案内を生成します。
  • NA Campus —歩道や建物内部など、歩行ネットワークに適したルート案内を生成します。
String
Maximum_Features_Affected_by_Point_Barriers
(オプション)

ポイント バリアが影響を与えることのできるフィーチャの数を制限します。

このパラメーターは、解析時に発生する処理量の管理に役立ちます。たとえば、作成中の無料版のサービスに対してはこのパラメーターに小さい値を割り当て、有料サブスクリプション版のサービスには大きい値を割り当てるというようにできます。

NULL 値は、制限がないことを示します。

Long
Maximum_Features_Affected_by_Line_Barriers
(オプション)

ライン バリアが影響を与えることのできるフィーチャの数を制限します。

このパラメーターは、解析時に発生する処理量の管理に役立ちます。たとえば、作成中の無料版のサービスに対してはこのパラメーターに小さい値を割り当て、有料サブスクリプション版のサービスには大きい値を割り当てるというようにできます。

NULL 値は、制限がないことを示します。

Long
Maximum_Features_Affected_by_Polygon_Barriers
(オプション)

ポリゴン バリアが影響を与えることのできるフィーチャの数を制限します。

このパラメーターは、解析時に発生する処理量の管理に役立ちます。たとえば、作成中の無料版のサービスに対してはこのパラメーターに小さい値を割り当て、有料サブスクリプション版のサービスには大きい値を割り当てるというようにできます。

NULL 値は、制限がないことを示します。

Long
Maximum_Stops
(オプション)

ルート解析に追加できるストップの数を制限します。このパラメーターは、[ストップ] パラメーターと関連しています。

このパラメーターは、解析時に発生する処理量の管理に役立ちます。たとえば、作成中の無料版のサービスに対してはこのパラメーターに小さい値を割り当て、有料サブスクリプション版のサービスには大きい値を割り当てるというようにできます。

NULL 値は、制限がないことを示します。

Long
Maximum_Stops_per_Route
(オプション)

解析で各ルートに割り当てることのできるストップの最大数を制限します。

ストップは、[ストップ] パラメーターのポイントの RouteName フィールドを使用して、ルートに事前に割り当てられます。

このパラメーターは、解析時に発生する処理量の管理に役立ちます。たとえば、作成中の無料版のサービスに対してはこのパラメーターに小さい値を割り当て、有料サブスクリプション版のサービスには大きい値を割り当てるというようにできます。

NULL 値は、制限がないことを示します。

Long
Force_Hierarchy_Beyond_Distance
(オプション)

階層が有効化されていない場合であっても、ルートの検索時に階層の適用を開始する最低値となる距離を指定します。このパラメーターの単位は、[距離属性の単位] パラメーターに指定されている単位と同じです。

広範囲でストップ間のルートを検索する場合は、ネットワークの階層を使用して解析するほうが、階層を使用せずに解析する場合よりも処理を大幅に削減できる傾向があります。このパラメーターは、解析時に発生する処理量を管理することに役立ちます。

NULL 値を指定すると、階層は強制されません。[解析に階層を使用] パラメーターの値を指定すると、常に階層が使用されます。入力ネットワーク データセットが階層をサポートしていない場合にこのパラメーターの値を指定すると、エラーが発生します。その場合は、NULL 値を使用してください。

このパラメーターは、ネットワーク データセットに階層属性が含まれていない限り無効です。

Double
Save_Output_Network_Analysis_Layer
(オプション)
  • NO_SAVE_OUTPUT_LAYER —ネットワーク解析レイヤーを出力に含めません。
  • SAVE_OUTPUT_LAYER —出力に、ネットワーク解析レイヤーの結果を含めます。

いずれの場合も、結果が格納されたフィーチャクラスが返されます。ただし、サーバー管理者は、このツールのセットアップと結果を ArcGIS Desktop 環境の Network Analyst コントロールでデバッグできるように、ネットワーク解析レイヤーの出力を選択することもあります。これによって、デバッグ処理が非常に簡単になります。

ArcGIS Desktop では、ネットワーク解析レイヤーのデフォルトの出力場所は、scratch フォルダーになります。scratch フォルダーの場所は、arcpy.env.scratchFolder ジオプロセシング環境の値を評価することで確認できます。出力されたネットワーク解析レイヤーは、「_ags_gpna」に英数字の GUID を付け加えた名前の LYR ファイルとして保存されます。

Boolean
Travel_Mode
(オプション)

解析する交通モードを選択します。CUSTOM は、常に選択肢に含まれています。その他の移動モード名を表示するには、それらが、Network_Dataset パラメーターで指定したネットワーク データセットに存在している必要があります (arcpy.na.GetTravelModes 関数はネットワーク データセットで構成された移動モード オブジェクトの辞書を提供し、name プロパティは移動モード オブジェクトの名前を返します)。

移動モードは、ネットワーク データセットで定義され、車、トラック、歩行などの移動モードをモデリングする一連のパラメーターをオーバーライドする値を提供します。ここで移動モードを選択することによって、以下のパラメーターの値を指定する必要がなくなります。これらのパラメーターは、ネットワーク データセットで指定した値でオーバーライドされます。

  • UTurn_Policy

  • Time_Attribute

  • Time_Attribute_Units

  • Distance_Attribute

  • Distance_Attribute_Units

  • Use_Hierarchy_in_Analysis

  • Restrictions

  • Attribute_Parameter_Values

  • Route_Line_Simplification_Tolerance

  • CUSTOM —特定の要件に合わせて移動モードを定義します。CUSTOM を選択した場合、上に示された移動モードのパラメーターはオーバーライドされません。これがデフォルトです。
String
Time_Zone_for_Time_Windows
(オプション)

ストップでのタイム ウィンドウ値のタイム ゾーンを指定します。タイム ウィンドウは、ストップの TimeWindowStart フィールドと TimeWindowEnd フィールドの一部として指定されます。このパラメーターは、[タイム ウィンドウの使用] パラメーターがオン (または True に設定) の場合にのみ適用されます。

  • GEO_LOCAL — ストップに関連付けられているタイム ウィンドウ値は、ストップがある場所のタイム ゾーンです。たとえば、ストップが東部標準時の場所にあり、タイム ウィンドウ値が午前 8 時と午前 10 時の場合、タイム ウィンドウ値は、東部標準時の午前 8 時と午前 10 時として扱われます。
  • UTC — ストップに関連付けられているタイム ウィンドウ値は、UTC (協定世界時) です。たとえば、ストップが東部標準時の場所にあり、タイム ウィンドウ値が午前 8 時と午前 10 時の場合、タイム ウィンドウ値は、東部標準時の午後 12 時と午後 2 時として扱われます (東部標準時はサマータイムが適用されています)。ストップがある場所のタイム ゾーンがわからない場合や、複数のタイム ゾーンにストップがあり、すべてのタイム ウィンドウを同時に開始したい場合には、タイム ウィンドウ値を [UTC] で指定すると便利です。[UTC] オプションは、ネットワーク データセットがタイム ゾーン属性を定義している場合にのみ適用されます。ネットワーク データセットがタイム ゾーン属性を定義していない場合、すべてのタイム ウィンドウ値は常に GEO_LOCAL として扱われます。
String
Overrides
(オプション)

ネットワーク解析問題の解決法を見つける場合に、解析の動作に影響を与えることができる追加設定を指定します。

JSON (JavaScript Object Notation) で、このパラメーターの値を指定する必要があります。たとえば、有効な値は {"overrideSetting1" : "value1", "overrideSetting2" : "value2"} という形式です。オーバーライド設定名は、必ず二重引用符で囲みます。値には、数値、ブール型、または文字列を使用できます。

このパラメーターのデフォルト値は、値なしであり、解析の設定を上書きしません。

オーバーライドは、設定を適用する前後で得られた結果を慎重に分析した後にのみ使用する必要のある高度な設定です。解析ごとにサポートされているオーバーライド設定の一覧およびそれらの許容される値については、Esri テクニカル サポートにお問い合わせください。

String
Save_Route_Data
(オプション)

ルート レイヤーを ArcGIS Online または Portal for ArcGIS で共有するのに使用できる形式で、解析の入力と出力を保持するファイル ジオデータベースを含む ZIP ファイルを出力に含めるかどうかを選択します。

ArcGIS Desktop では、出力ファイルのデフォルトの出力場所は、scratch フォルダーになります。scratch フォルダーの場所は、arcpy.env.scratchFolder ジオプロセシング環境の値を評価することで確認できます。

  • SAVE_ROUTE_DATA — ツールは解析の入力と出力を含むファイル ジオデータベース ワークスペースを含む .zip アーカイブを書き込みます。
  • NO_SAVE_ROUTE_DATA —ルート データは保存されません。これがデフォルトです。
Boolean

派生した出力

名前説明データ タイプ
Solve_Succeeded

サービスがルートを正常に検出できたかどうかを特定します。

ブール型
Output_Routes

ストップ間に生成されたルート。

フィーチャ セット
Output_Route_Edges

ルートが移動する個別の道路セグメント。

フィーチャ セット
Output_Directions

ストップ間に生成された各ルートのターンごとのルート案内。このパラメーターは、ルート案内に加えて、テキストに対応するルート案内フィーチャのジオメトリも含んでいます。

フィーチャ セット
Output_Stops

ルートによって訪問されたストップや、ルートで到着できなかったストップの属性。

フィーチャ セット
Output_Network Analysis_Layer

ツールのパラメーターで構成されているとおりにプロパティが指定されたネットワーク解析レイヤー。これはマップ内でさらに詳細な解析やデバッグ用に使用できます。

ファイル
Output_Route_Data

特定のルートに関するすべての情報を含む zip ファイル。

ファイル

コードのサンプル

FindRoutes (ルートの検索) の例 1 (Python ウィンドウ)

必須パラメーターを使用してツールを実行します。

stops = arcpy.FeatureSet()
stops.load("Stops")
arcpy.na.FindRoutes(stops, "Miles", "Streets_ND", "in_memory", "Routes", 
                    "RouteEdges", "Directions", "OutStops", 
                    UTurn_Policy="NO_UTURNS")
FindRoutes (ルートの検索) の例 2 (スタンドアロン スクリプト)

次のスタンドアロン Python スクリプトは、FindRoutes (欠損値の補完) ツールの使用方法を示しています。

# Name: FindRoutes_Workflow.py
# Description: Find the fastest route visting all the stops. The output will 
#              show the route, driving directions, and how long it took to get
#              to each stop.
# Requirements: Network Analyst Extension

#Import system modules
import arcpy
from arcpy import env

try:
    #Check out the Network Analyst extension license
    arcpy.CheckOutExtension("Network")

    #Set environment settings
    env.workspace = r'C:\arcgis\ArcTutor\Network Analyst\Tutorial\SanDiego.gdb'
    env.overwriteOutput = True

    #Set local variables
    inNetworkDataset = r'Transportation\Streets_ND'
    inStops = r'Analysis\Stops'
    outGeodatabase = r'C:\arcgis\ArcTutor\Network Analyst\Tutorial\Output.gdb'
    outRoutes = "Routes"
    outRouteEdges = "RouteEdges"
    outDirections = "Directions"
    outStops = "Stops"
    measurement_units = "Minutes"

    # Run FindRoutes. Reorder the stops to find the fastest route, but maintain
    # the first stop as the starting point and the last stop as the end point.
    arcpy.na.FindRoutes(inStops, measurement_units, inNetworkDataset, 
                    outGeodatabase, outRoutes, outRouteEdges, outDirections, 
                    outStops, Reorder_Stops_to_Find_Optimal_Routes=True, 
                    Preserve_Terminal_Stops="PRESERVE_BOTH")

    print "Script completed successfully"

except Exception as e:
    # If an error occurred, print line number and error message
    import traceback, sys
    tb = sys.exc_info()[2]
    print "An error occured on line %i" % tb.tb_lineno
    print str(e)

環境

  • 現在のワークスペース
  • 出力座標系

ライセンス情報

  • Basic: 次のものが必要 Network Analyst
  • Standard: 次のものが必要 Network Analyst
  • Advanced: 次のものが必要 Network Analyst

関連トピック

  • ルート解析
  • ルートの検索 (Find Routes) における出力

ArcGIS Desktop

  • ホーム
  • ドキュメント
  • サポート

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

Esri について

  • 会社概要
  • 採用情報
  • Esri ブログ
  • ユーザ カンファレンス
  • デベロッパ サミット
Esri
ご意見・ご感想をお寄せください。
Copyright © 2021 Esri. | プライバシー | リーガル