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

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

ネットワーク属性でのパラメーターの使用

Network Analyst のライセンスで利用可能。

  • パラメーター化されたネットワーク属性の機能
  • パラメーター化属性の設定

ネットワーク属性の値は変動する条件に依存する場合があります。たとえば、車両の車高を使用して、低い歩道橋が設置された道路部分を通過できるかを判定できます。現在の気象条件により移動速度が遅くなると、ネットワークの時間コストに影響をおよぼす場合があります。車両の車高に基づく規制やスケール ファクターに基づく移動コストなどのネットワーク解析における変動する要素を、下記の 2 つの方法の内のいずれかを使用してモデリングすることができます。1 つの方法は、高さまたは気象条件に変動があるたびにネットワーク属性を作成するというものです。しかし、この方法は、変更する属性の数が増えるにつれて扱いにくくなります。もう 1 つの方法は、ネットワーク属性を、この属性の変動的な要素を含むパラメーターと一緒に使用するというもので、汎用性があります。

パラメーターとは、特定の解析について変更できる値のプレースホルダーです。それぞれに意味のあるデフォルト値が設定されていますが、必要に応じてユーザーが無効にすることができます。ArcCatalog では、パラメーターは、ネットワーク属性に追加され、属性のエバリュエーターによって参照されます。ArcMap では、ネットワーク解析の設定をするときに、パラメーター値を変更できます。これにより、実行時には式と現在のパラメーター値を使用してネットワーク属性の値を求めることができます。

パラメーター化されたネットワーク属性の機能

パラメーター化されたネットワーク属性にはエバリュエーターが含まれています。エバリュエーターは、パラメーターをそのネットワーク属性だけでなく別のネットワーク属性にも適用して、値の判断に役立てます。

パラメーターの値は実行時に変動する場合があるため、ネットワーク属性の値はデータベースに書き込まれず、必要なときに算出されるだけです。したがって、パラメーター値が変化しても、ネットワーク データセットを再構築する必要はありません。

規制属性のパラメーター

規制の使用法のデフォルト パラメーター

規制属性を作成すると、[規制の使用法] というパラメーターが自動的に追加されます。このパラメーターは、制限を使用するエレメント上の移動が、規制属性によって禁止されるか、回避されるか、優先されるかを指定します。エレメントを回避または優先する場合は、回避または優先するレベルも指定します。具体的には、[規制の使用法] には以下の値のいずれかを割り当てることができます (括弧内の数値については、リストの下で説明しています)。

  • [禁止] - (-1) 関連付けられたネットワーク エレメント上の移動は完全に禁止されます。これは、最も一般的な規制の使用法です。
  • [回避: 高] - (5) 規制に関連付けられたネットワーク エレメントが解析で使用される可能性は非常に低くなります。
  • [回避: 中] - (2) 規制に関連付けられたネットワーク エレメントが解析で使用される可能性は低くなります。
  • [回避: 低] - (1.3) 規制に関連付けられたネットワーク エレメントが解析で使用される可能性はやや低くなります。
  • [優先: 低] - (0.8) 規制に関連付けられたネットワーク エレメントが解析で使用される可能性はやや高くなります。
  • [優先: 中] - (0.5) 規制に関連付けられたネットワーク エレメントが解析で使用される可能性は高くなります。
  • [優先: 高] - (0.2) 規制に関連付けられたネットワーク エレメントが解析で使用される可能性は非常に高くなります。
詳細:

上記 7 つのテキストの値は、それぞれが内部的には固定数値で表現されます。各数値はリストに括弧で示しています。指定されているテキストの選択肢と、それが基づく数値は、ほぼすべてのユーザーにとって十分です。それでもなおエレメントを回避または優先するレベルを微調整する必要がある場合は、独自に数値を指定することができます。カスタム値を指定するかどうかを判断するには、この値が解析に与える影響を知っておく必要があります。

コストがゼロより大きいエレメント (通常はエッジ エレメントが含まれます) の場合、制限のあるエレメントのコストは、これらの数値で乗算されて増減します。この結果により、解析中に、エレメントがより適していると見なされるか、適していないと見なされるかが決まります。たとえば、優先されるエレメントは、0 よりも大きく 1 よりも小さいパラメーター値で乗算されるため、コストが小さくなり、解析の結果にエレメントが含まれる可能性が高くなります。[優先: 高] の値は 0 に近く、[優先: 低] の値は 1 に近くなります (0 の値は入力できないことに注意してください。解析時にエラーが発生します)。回避するエレメントの場合は、[規制の使用法] の数値が 1 よりも大きく設定されます。この値で乗算するとコストが大きくなるからです。

コストがゼロのエレメント (たとえば、ジャンクション エレメントは通常、ほとんどのネットワーク データセットでコストがゼロです) の場合、[規制の使用法] の数値が 1 より大きい場合は (回避するエレメント)、制限のあるエレメントのコストが各エレメントのこの [規制の使用法] の数値に増加し、解析中にそのエレメントが適していないと見なされます。[規制の使用法] の数値が 1 未満の場合 (優先されるエレメント)、制限のあるエレメントのコストはゼロのままです。エレメントのコストはすでにゼロであるため、制限のあるエレメントの優先度が上がるわけではないので注意してください。

エレメントを禁止する場合は、[制限の使用法] の値が内部的に -1 に設定されます。わかりやすく言えば、Network Analyst では負のコスト値は通過不可能と解釈されると考えることができます。ただし、内部プロセスはこれよりも複雑です。

解析では、これらの変更されたコストが一時的に使用されるだけであることに注意してください。解析の出力やターンごとの案内に含まれることはありません。

カスタム値を入力するには、指定されているテキストの選択肢 (規制、優先: 高など) を数字で置き換えるだけです。テキスト値で使われている数値と同じ数値を入力した場合は、そのテキスト値が表示されます。

レガシー:

ArcGIS 10.1 よりも前のバージョンのネットワーク データセットを使用している場合、[規制の使用法] パラメーターはどの規制属性にもありません。この場合、規制ではネットワーク エレメントが常に禁止されます。エレメントを回避または優先するために規制を変更するオプションを有効にするには、ネットワーク データセットをアップグレードしてください。

車両特性をモデリングするパラメーター

Network Analyst では、デフォルトのパラメーターである [規制の使用法] が常にすべての規制属性に追加されます。車両特性を設定して、特定の車両が通過できるネットワーク エレメントをより正確に指定するためのパラメーターを追加することもできます。

たとえば、規制属性を車高パラメーターとともに追加して、車両の車高を、高架の下またはトンネルの中の高さ制限を保持する記述子属性と比較することができます。車高が高さ制限を超えている場合は、エッジが禁止されます。これにより、車両に応じて異なるルートが生成されます。下図に示すように、車高が低い車両は、低い高架橋を通るルートをそのままたどることになります。一方、車高が高い車両は高さ制限が低い高架橋を避けて別のルートをとることになります。

メモ:

規制属性が車両特性パラメーターに依存するときは、ほとんどの場合、[規制の使用法] が [禁止] に設定されます。したがって、このサブセクションでは、規制属性でエレメントが禁止されていることを想定しています。

高さ制限のある橋を迂回するトラックの例

このシナリオでは、記述子属性と規制属性の 2 つの属性を、それぞれ MaxHeight と HeightRestriction という名前で作成します。MaxHeight はソース データから高さ制限値を取り込み、HeightRestriction は MaxHeight から値を読み取り、読み取った値を現在の車高を保持するパラメーターと比較することになります。下図は、このプロセスの概要を示したものです。

パラメーター化された規制属性の値の検索

コスト属性のパラメーター

別のコスト属性を参照してスケーリングすることができる、パラメーター化されたコスト属性を必要とする場合もあります。これは、凍結、霧、豪雨などの荒れ模様の天候が調査エリアを襲い、通常の車の流れが妨げられている場合に有用です。コスト属性にあらかじめパラメーターを用意しておくことにより、移動時間の予想を、走行速度の変化に応じて調整することができます。

2 つのネットワーク属性を作成することが可能です。1 つは DriveTime です。これには、通常の運転時間インピーダンスが格納され、値はソース データ内のフィールドから得られます。もう 1 つは DriveTime_scaled です。これは DriveTime の属性値をとり、その値は、現在のスケール ファクターを保持する DriveTime_scaled 属性のパラメーターによってスケーリングされます。

パラメーター化属性の設定

必要なネットワーク属性を作成したら、パラメーター化属性を設定することができます。このための次の主要な 2 つの手順は次のとおりです。

  1. パラメーターをネットワーク属性に追加
  2. パラメーターを使用するように属性のエバリュエーターを設定します。

この 2 つの手順は、[ネットワーク データセット プロパティ] ダイアログ ボックスの [属性] タブを使用して ArcCatalog で実行します。

ネットワーク データセットの編集の詳細

パラメーターの追加

パラメーターを作成するには、次の手順に従います。以下に示す例は、規制属性 [HeightRestriction] に合わせてありますが、コスト属性に対しても同じ手順が有効です。

パラメーターを追加するネットワーク属性を選択
新しいパラメーターのプロパティを設定

[HeightRestriction] 属性に新しいパラメーター [Vehicle Height] を追加し、デフォルト値として 0 を割り当てます (車高が 0 の場合、車両はどんな高さ制限も受けないと見なされます)。ArcMap でネットワーク解析を実行する際は、パラメーターの値をデフォルトから別の値に変更することができます。

エバリュエーターの設定

パラメーターが追加されたら、エバリュエーターを設計する必要があります。エバリュエーターは、パラメーターを取り込み、さらに定数または別のネットワーク属性 (パラメーターに関係する情報を格納) のいずれかを取り込むものとします。下に示す例では、パラメーター化された規制属性 [HeightRestriction] にはエバリュエーターが割り当てられています。このエバリュエーターは、[Vehicle Height] パラメーターを、ネットワーク エレメントの高さ制限計測値を含む記述子ネットワーク属性 [MaxHeight] と比較します。

パラメーター化されたネットワーク属性用のエバリュエーターを設定する手順
ヒント:

スクリプト エバリュエーターは、解析時に VBScript または Python 環境を使用して値を計算するので、このエバリュエーターを指定すると解析のパフォーマンスに悪影響がおよぶ傾向があります。解析時に最適なパフォーマンスを得るために、可能な限りスクリプト エバリュエーターではなく関数エバリュエーターを使用することを強く推奨します。

ネットワークで使用されるエバリュエーターの種類の詳細

この例では関数エバリュエーターが選択されています。以下に示す [関数エバリュエーター] ダイアログ ボックスには、道路ごとに評価される式が表示されています。関数エバリュエーターが [True] を返すときは必ず、ネットワーク エレメントが規制されています。[False] を返すとき、ネットワーク エレメントは規制されないため、解析で使用できます。

高さ規制属性用の関数エバリュエーター

比較するために、パラメーター化されたコスト属性 [DriveTime_scaled] は、[DriveTime Factor] パラメーターを使用する関数エバリュエーター (下図参照) で設定されています。エバリュエーターは [DriveTime] コスト属性から運転時間を読み取り、読み取った値を実行時に指定される [DriveTime Factor] の値と掛け算します。

スケーリングされる運転時間属性用の関数エバリュエーター

パラメーターの値は実行時にデフォルトの 1 から変更することができます。値を 1.5 に設定すると、運転時間が通常の運転時間より 50 パーセント遅くなります。[DriveTime] の値が 5 分であるネットワーク エレメントの場合、[DriveTime_scaled] の値は 7.5 分になります。

ネットワーク データセットの再構築

関数エバリュエーターは、値をデータベースに格納するのでなく実行時に計算するので、関数エバリュエーターまたは ArcCatalog 内の対応する属性パラメーターを追加または変更した後でネットワーク データセットを再構築する必要はありません。しかし、フィールド エバリュエーターに基づいて関連する属性に変更を加える場合、ネットワーク データセットを再構築して新しい値を使用する必要があります。

ArcCatalog でパラメーター化属性が提供されている場合、ArcMap では属性を使用してネットワーク問題の解析を開始することができます。パラメーターの値をデフォルトから別の値に変更しても、ネットワークを再構築する必要はありません。

関連トピック

  • パラメーター化属性を使用したネットワーク解析
  • ネットワーク属性について
  • ネットワークで使用するエバリュエーターの種類
  • 移動モード

ArcGIS Desktop

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

ArcGIS

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

Esri について

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