. . . .. . . . 地理情報システム特論 第 6 回:近接図形の検索 大沢 裕 埼玉大学 . Ohsawa (Saitama Univ.) GIS-6 1 / 23 GIS-6 2 / 23 . . .1 k-NN 検索 . . .2 深さ優先探索 . . .3 最適優先探索 . . .4 ANN 検索 . . .5 RNN . Ohsawa (Saitama Univ.) . k-NN 検索 k-NN 検索 ある点 p に最も距離が近いものからオ ブジェクトを k 個 (任意個) 検索する. k-NN 検索が用いられる分野 p コンピュータビジョン 空間データベース データマイニング 計算機科学,等々 . Ohsawa (Saitama Univ.) GIS-6 3 / 23 k-NN 検索 定義とアルゴリズム . 定義 1 (k-NN 検索) .. . . . NN(q, k, S) = {o1 , o2 , . . . , ok }, ここで d(q, oi ) ≤ d(q, o ′ ) ∀i, 1 ≤ i ≤ k, oi ∈ S かつ ′ ∀o . ∈ S − {o1 , o2 , . . . , ok }. .. k-NN 検索アルゴリズムの分類 (Rui et al.) 分割ベース (partition based) アルゴリズム k-d 木や R 木などを利用 (後述) グラフベースアルゴリズム ボロノイ分割などを利用 範囲ベース (range based) アルゴリズム ネットワーク経由での検索に適する.指定した範囲のデータをサー バーから得て,クライアントで k-NN 検索を実行する. . Ohsawa (Saitama Univ.) GIS-6 4 / 23 . k-NN 検索 分割ベースによる k-NN 検索 深さ優先探索 (depth first search): Rousspoulos et al. 深さ優先探索により,1つの最近接図形候補を求める その図形候補が最近接であることを確認する 最適探索 (best first search) R 木のノード展開の際に,MBR への距離に基づき PQ にノードを投 入する PQ から MBR への距離が近い順に取り出し,そのノードを展開する. 展開結果は再び PQ に投入する . Ohsawa (Saitama Univ.) GIS-6 5 / 23 k-NN 検索 インクリメンタル検索 道路網距離での kNN 検索では,ユークリッド距離で候補を絞り込 み,それを道路網距離で検証する枠組み (IER: incremental Euclidean restriction) が用いられる. インクリメンタル検索とは,最初に最適なもの(例えば NN 検索で は最近接)を求め,2 回目以降では次に最適なものを順次求める検 索である. この検索は深さ優先探索では実現が困難である. そのため,インクリメンタル検索には最適優先探索が用いられる. . Ohsawa (Saitama Univ.) GIS-6 6 / 23 . 深さ優先探索 深さ優先探索の基本 Step1: 最近接オブジェクトが存在する可能性があるノードを根から 葉に向かってたどり,最近接オブジェクトの候補 q を得る. Step2: 木を根に戻りつつ,q が最近接であることを検証する.その 途中で,より近いオブジェクトが求まったときには,q を更新する. 4 4 D C H 4 4 Step2 でどの程度の範囲を探索 したら,最近接図形を正しく検 索できるか Ohsawa (Saitama Univ.) 4 G 複数の子ノードの内,Step1 で どれを選択して下降するか . 4 4 問題 I 4 4 E M 4 4 K C D E F G H I J K L J F L 4 D4VTGGߩᧁ C4VTGGߩ㗔ၞಽഀ GIS-6 7 / 23 深さ優先探索 MINDIST . . 定義 2 .. 点 Q とある MBR R との最小距離 MINDIST(Q,R) は次式で与えられる. MINDIST (Q, R) = n ∑ |qi − ri |2 (1) i=1 ri = si t i qi . .. 近接するオブジェクトの下限距離 . Ohsawa (Saitama Univ.) if qi < si if qi > ti otherwise . GIS-6 . ここで, 8 / 23 . 深さ優先探索 MBR と図形の関係 . . . 性質 1 .. R 木における MBR の全ての辺は,必ずその MBR に含まれるオブジェク トに接している. . .. . . Proof. . .. もし,MBR のある辺が,その中に 含まれるオブジェクトのいずれにも 接していないとすれば,よりタイト な MBR が存在するはずであり, MBR の定義に反する.従って,R 木 中の全ての MBR の各辺は,必ずそ の MBR の内部の少なくとも1つの Figure: MBR とその内部オブジェクト オブジェクトに接している. の関係 . .. . ࡌ࡞ - ߩࡁ࠼ߦ߅ߌࠆ /$4 . ࡌ࡞ - ߩࡁ࠼ߦ߅ߌࠆ /$4 . Ohsawa (Saitama Univ.) GIS-6 9 / 23 深さ優先探索 MINMAXDIST . . 定義 3 .. 点 Q と,ある MBR R = (S, T ) との MINMAXDIST(Q,R) は次式で定義 される. ∑ MINMAXDIST (Q, R) = min (|qk − rmk |2 + |qi − rMi |2 ) (2) 1≤k≤n 1≤i≤n,i̸=k { rMi = . .. . si ti if qi ≥ (si + ti )/2 otherwise (3) (4) . Ohsawa (Saitama Univ.) GIS-6 . ここで,rmk 及び rMi は次の様に定義される. { sk if qk ≤ (sk + tk )/2 rmk = tk otherwise 10 / 23 . 深さ優先探索 MINMAXDIST (Cont.) m in m inm ax MINDIST: NN の可能性があるオブジェクトへの下限距離 MINMAXDIST: NN の可能性があるオブジェクトへの上限距離 . Ohsawa (Saitama Univ.) GIS-6 11 / 23 深さ優先探索 枝刈り ... ある MBR M に注目するとき,他の MBR M ′ の MINMAXDIST(Q,M’) より大きな MINDIST(Q,M) を持つ場合は,M の子ノードは枝刈できる.(下方向枝刈) ... 点 Q の近接オブジェクト候補 O が探索により得られているとき, MINMAXDIST(Q,M) が距離 QO より小さい場合,オブジェクト O は最近接オブジェクトの候補から除くことができる.何故なら MBRM 中には O より近い別のオブジェクトが含まれているためで ある. (下方向枝刈) ... あるオブジェクト O との距離 |QO| より大きな MINDIST(Q,M) を有 する MBR M は枝刈できる. (上方向枝刈) 1 2 3 . Ohsawa (Saitama Univ.) GIS-6 12 / 23 . 最適優先探索 最適優先探索 Rousspoulos(1995) のアルゴリズムは深さ優先探索 予め指定された数の NN を探せる インクリメンタル検索には不向き.(eg. 次の NN) Hjaltason & Samet(1995) は,MINDIST を PQ で管理し,最も MINDIST が小さいノードを選択してたどるアルゴリズムを提案 Berchtold ら (1997) は,同様に MINDIST を用いた最適優先探索法を 提案 最適優先探索では,インクリメンタル検索が可能 アルゴリズムも単純 . Ohsawa (Saitama Univ.) GIS-6 13 / 23 ANN 検索 ANN 検索 GNN(group nearest neighbor) という名で Papadias らが提案 (2004) ANN(aggregate nearest neighbour) という名に変更 (2005) MBM(minimum bounding method) が性能的に優れる . Ohsawa (Saitama Univ.) GIS-6 14 / 23 . ANN 検索 R 木を用いた ANN 検索 T S 5 S < 6, R1 > S < 11, R2 > < 10, p1 > T < 15, p2 > S 5 . Ohsawa (Saitama Univ.) GIS-6 15 / 23 RNN Reverse Nearest Neighbor 検索とは . 定義 1 .. ある POI の集合 P と検索点 q が与えられたとき,RkNN 検索とは q を kNN とする P 中のすべての要素を列挙する検索である.即ち, . .ここで,pk (p) は p の kNN である. .. . . RkNN(q) = {p ∈ P|(d(p, q) ≤ d(p, pk (p)) E q の R1NN は a と b である. F c の NN は d, d の NN は c であ るので,これらは a の R1NN で はない. T D . Ohsawa (Saitama Univ.) G GIS-6 16 / 23 . RNN Bichromatic RNN (1) 2 つのデータ集合 P と O がある.p ∈ P が与えられたとき,BRNN はあ る点 o ∈ O に対して P 中の NN が p であるすべての点を答える. R R R S S R R R R この図において,BRNN(p1, P)={o1, o2, o3}, BRNN(p2, P)={o4, o5, o6, o7, } . Ohsawa (Saitama Univ.) GIS-6 17 / 23 RNN Bichromatic RNN (2) P をコンビニとし,新しいコンビニの立地を計画する. 左図の場合,BRNN(p3, P)={01, 03} 右図の場合,BRNN(p3, P)={o2, o3, o4, o5} 多くの客に近いという観点からは,右図の p3 位置が好ましい R R S . R S S S R R R R R S R S R Ohsawa (Saitama Univ.) R R GIS-6 R R 18 / 23 . RNN KM アルゴリズム Korn and Muthukrishnan (2000): vicinity circle & T ' T % ) ( $ * vicinity circle: その円内には他のオブジェクトが存在しない q1 の RNN は A と B q2 の RNN は存在しない . Ohsawa (Saitama Univ.) GIS-6 19 / 23 RNN データ点の追加と削除 データ点の追加 データ点の削除 . Ohsawa (Saitama Univ.) GIS-6 20 / 23 . RNN RkNN RkNN(q) = {r ∈ S|∀p ∈ S : d(r , q) ≤ d(r , pk )} (5) kNN までの距離を半径とする Vicinity Circle を定義しておけば,RkNN 検索を行える.しかし,予め k 値を定める必要がある. . Ohsawa (Saitama Univ.) GIS-6 21 / 23 RNN SAA と SFT SFT アルゴリズム SAA アルゴリズム Satoni et al. (2000): RkNN 検索に 適用可能 . Ohsawa (Saitama Univ.) Singh et al. (2003): RkNN 検索に適 用可能 GIS-6 22 / 23 . RNN TPL Tao et al. (2004): 高次元データの RkNN に適用可能 . . Ohsawa (Saitama Univ.) GIS-6 23 / 23
© Copyright 2024 Paperzz