密度の計算の仕組み

密度の計算ツールでは、対象フィーチャの近傍におけるフィーチャのカーネル密度が計算されます。 ポイント フィーチャとライン フィーチャの両方について計算できます。

用途としては、コミュニティ計画の目的での住宅密集度や犯罪発生密度の解析、道路やユーティリティ線が野生動物の生息地に与える影響の調査などがあります。 Population フィールドを使用すれば、一部のフィーチャを加重したり、1 つのポイントで複数の観測データを表したりできます。 たとえば、1 つの住所が 6 世帯を含む集合住宅を表したり、一部の犯罪に他の犯罪よりも大きい重みを付けて全体の犯罪レベルを決定したりすることがあります。 ライン フィーチャの場合、幅の狭い未舗装道路よりも中央分離帯のある高速道路の方がインパクトが大きくなることがあります。

カーネル密度の計算方法

カーネル密度は、異なるフィーチャに対して異なって計算されます。

ポイント フィーチャ

[密度の計算] は、各出力ラスター セルの周辺に存在するポイント フィーチャの密度を計算します。

理論的には、各ポイントを中心とし滑らかにカーブするサーフェスが形成されます。 このサーフェスの値はポイント位置で最大になり、ポイントから離れるにしたがって小さくなります。ポイントから [検索範囲] の距離だけ離れた位置で 0 になります。 円形の近傍のみ使用できます。 サーフェスにおけるポイント地点での量は、そのポイントの [Population フィールド] の値と等しくなります。NONE を指定した場合は 1 となります。 各出力ラスター セルの密度を求めるには、ラスター セルの中心を覆うすべてのカーネル サーフェスの値を合計します。 カーネル関数は、Silverman の文献に記載された四次カーネル関数 (1986、p. 76、式 4.5) に基づいています。

Population フィールドで NONE 以外の設定を使用する場合は、各アイテムの値によって、そのポイントがカウントされる回数が決定されます。 たとえば値 3 の場合、各ポイントは 3 つのポイントとしてカウントされます。 整数または浮動小数の値が使用できます。

デフォルトでは、入力ポイント フィーチャ データの投影法で定義された距離単位に基づいて単位が選択されます。それ以外の場合は、環境設定で指定された出力座標系の単位が使用されます。

出力の [面積単位] 係数を選択した場合、計算したセルの密度に適切な係数が乗算され、出力ラスターに書き込まれます。 たとえば、入力単位がメートルの場合、出力の面積単位は、デフォルトで [平方キロメートル] になります。 最終的には、メートルの単位の係数がキロメートルと比較され、1,000,000 (1,000 メートル x 1,000 メートル) 倍異なる値になります。

ライン フィーチャ

密度の計算では、各出力ラスター セルの近傍にあるライン フィーチャの密度も計算できます。

理論的には、各ラインを中心とし滑らかにカーブするサーフェスが形成されます。 サーフェスの値はライン上で最も大きくなり、ラインから離れるにしたがって小さくなります。また、ラインから [検索範囲] の距離だけ離れた位置でゼロになります。 サーフェスは、そのサーフェスにおけるボリュームがライン長と [Population フィールド] 値の積になるように定義されます。 各出力ラスター セルの密度を求めるには、ラスター セルの中心を覆うすべてのカーネル サーフェスの値を合計します。 ラインに対するカーネル関数の使用は、Silverman の文献 (1986 年、76 ページ、方程式 4.5) に記載された点密度用の四次カーネル関数を応用したものです。

ライン フィーチャのカーネル密度
ライン セグメントとその周囲に配置したカーネル サーフェスが示されています。

上の図は、ライン セグメントとその周囲に配置したカーネル サーフェスを示しています。 密度に対するライン セグメントの寄与は、ラスター セル中心におけるカーネル サーフェスの値に等しくなります。

デフォルトでは、入力ポリライン フィーチャ データの投影法で定義されている距離単位に基づいて単位が選択されます。それ以外の場合は、環境設定で指定された出力座標系の単位が使用されます。

出力の [面積単位] 係数を指定している場合、長さと面積両方の単位が変換されます。 たとえば、入力の単位がメートルの場合、出力の面積の単位はデフォルトで [平方キロメートル] になり、得られる線密度の単位はキロメートル/平方キロメートルになります。 最終的には、メートルの単位の係数がキロメートルと比較され、1,000 倍異なる密度の値になります。

ポイント フィーチャおよびライン フィーチャの両方で密度の単位を変更するには、適切な係数を手動で選択します。 密度を (デフォルトのキロメートル/平方キロメートルではなく) メートル/平方メートルに設定するには、面積の単位を [平方メートル] に設定します。 同様に、出力の密度の単位をマイル/平方マイルにするには、面積の単位を [平方マイル] に設定します。

[Population フィールド] で [NONE] 以外を設定すると、ラインの長さは、実際の長さにそのラインの [Population フィールド] 値を乗算したものになります。

カーネル密度の計算式

ポイントのカーネル密度を計算する方法と、カーネル密度式の中でデフォルトの検索範囲を決定する方法は、次の数式で決まります。

ポイントの密度の推定

新しい (x,y) 位置の推定密度は、次の式で得られます。

推定密度の式

ここで、

  • i = 1,…,n は、入力ポイントです。 ポイントが (x,y) 位置の半径距離内にある場合にだけ、ポイントを合計に含めます。
  • popi は、ポイント i (オプションのパラメーター) の人口フィールド値を表します。
  • disti は、ポイント i と (x,y) 位置の間の距離です。

このようにして算出された密度を、ポイント数、あるいは人口フィールドの合計 (ある場合) で乗算します。 この修正によって、空間積分が、常に 1 と等しいのではなく、ポイント数 (または Population フィールドの合計) と等しくなります。 この実装は、四次カーネル (Silverman、1986) を使用します。 密度を推定する位置ごとに式を計算する必要があります。 ラスターが作成されているため、計算は出力ラスターの各セルの中心に適用されます。

デフォルトの検索範囲 (バンド幅)

デフォルトの検索範囲 (バンド幅とも呼ぶ) の決定に使用されるアルゴリズムは、以下のとおりです。

  1. 入力ポイントの平均中心を計算します。 Population フィールドを指定した場合、この計算および以下のすべての計算は、このフィールドの値によって重み付けされます。
  2. すべてのポイントの (重み付けされた) 平均中心から距離を計算します。
  3. これらの距離の (重み付けされた) 中央値 (Dm) を計算します。
  4. (重み付けされた) 標準距離 (SD) を計算します。
  5. 以下の式を適用してバンド幅を計算します。

カーネル密度のデフォルトの検索範囲を計算する式

ここで、

  • Dm は、(重み付けされた) 平均中心からの (重み付けされた) 距離中央値です。
  • n は、Population フィールドを使用しない場合はポイント数、Population フィールドを指定した場合は Population フィールド値の合計です。
  • SD は標準距離です。

式の min の部分は、2 つのオプション (SD または検索範囲の式のオプション 2) のうちの、より小さい値になるオプションを使用することを意味しています。

標準距離を計算するには、重み付けなしと重み付けありの 2 通りの方法があります。

非加重距離

非加重距離の式

ここで、

  • x iy i、および z i は、フィーチャ i の座標です。
  • {x̄, ȳ, z̄} は、フィーチャの平均中心を表します。
  • n は、フィーチャの合計数に等しくなります。

加重距離

加重距離の式

ここで、

  • wi は、フィーチャ i の重みです。
  • {x w, y w, z w} は、重み付け平均中心を表します。

手法

この検索範囲選択手法は、Silverman's Rule-of-thumb のバンド幅推定式に基づいていますが、2 次元に適応されてきました。 デフォルトの範囲を計算するこのアプローチは、通常、低密度のデータセットで多く発生する「ポイントの周囲のリング」現象を避け、空間的な外れ値 (残りのポイントから遠く離れたいくつかのポイント) に対して強力です。

バリアが密度計算に与える影響

バリアは、出力ラスター内のセルに対するカーネル密度の計算中に、フィーチャの影響を変更します。 バリアには、ポリライン フィーチャ レイヤーまたはポリゴン フィーチャ レイヤーを使用できます。 バリアは、フィーチャと密度が計算されているセルの間の距離を増やすこと、またはフィーチャを計算から除外することという 2 つの方法のいずれかによって、密度の計算に影響を与えることができます。

バリアがなければ、フィーチャとセルの間の距離は、2 点間の直線距離である、可能な最短距離になります。 開いたバリアがある場合、通常はポリラインで表されますが、フィーチャとセルの間の距離はバリアの影響を受けます。 この場合、下の図に示されているように、バリアの周囲を迂回するため、フィーチャとセルの間の距離が長くなります。 この結果、セルの密度を推定するときのフィーチャの影響が減少します。 バリアの周囲の経路は、入力ポイント フィーチャからセルまで、バリアを迂回するように一連の直線を接続することによって作成されます。 この経路は、バリアの周囲では依然として最短距離ですが、バリアがない場合の距離よりは長くなります。 通常は数個のフィーチャを完全に包含するポリゴンによって表される閉じたバリアが存在する場合、バリアの片側のセルでの密度計算は、バリアの反対側のフィーチャを完全に除外します。

バリアが存在しない場合と存在する場合での、カーネル密度における距離計算の概念図。
セルと入力ポイント フィーチャの間の距離計算の概念図が示されています。 バリアが存在しない場合のカーネル密度が左、バリアが存在する場合のカーネル密度が右です。

バリアが存在する場合のカーネル密度の操作は、状況によっては、バリアが存在しない場合のカーネル密度の操作と比較して、より現実的で正確な結果をもたらすことができます。 たとえば、両生類の分布の密度を調査する場合、崖または道路の存在が、両生類の移動に影響を与えることがあります。 崖または道路をバリアとして使用して、より良い密度の推定を取得できます。 同様に、ある都市の犯罪率の密度解析の結果は、その都市を通る川がバリアと見なされる場合、変化することがあります。

下の図は、ロサンゼルスにおける深夜の交通事故のカーネル密度の出力を示しています (ロサンゼルス郡 GIS データ ポータルで提供されているデータ)。 バリアが存在しない場合の密度推定が左 (1)、道路の両側にバリアが存在する場合の密度推定が右 (2) です。 このツールは、バリアを使用して、事故の位置間の最短距離を使用するよりも非常に良好な密度の推定を提供し、その距離は道路網に沿って計測されます。

バリアが存在する場合と存在しない場合のカーネル密度
バリアが存在しない場合のカーネル密度の推定 (1) および道路の両側にバリアが存在する場合のカーネル密度の推定 (2) が示されています。

参考文献

Silverman, Bernard W. 1986. Density Estimation for Statistics and Data Analysis. New York: Chapman and Hall.