11月のささみ: pgRoutingって何?
Click here to load reader
-
Upload
taro-matsuzawa -
Category
Technology
-
view
1.135 -
download
1
description
Transcript of 11月のささみ: pgRoutingって何?
pgRoutingって何?
Taro Matsuzawa aka. btm (@smellman)Georepublic
13年11月27日水曜日
今日の内容
地理空間対応の概要をざっくり
pgRoutingについてざっくり
デモ
13年11月27日水曜日
自己紹介Georepubic Japan勤務
地理空間情報系見習い
OSSコミュニティ歴1x年?
某組とか
日本UNIXユーザ会理事
13年11月27日水曜日
最近の活動
OSM関係にちらほら
伊豆大島
フィリピン
暗渠
13年11月27日水曜日
最近の仕事
Objective-C / Python / PHP
IE向けサイトをWindows + PHPで作ってます
NTEmacs+SKK+eshell最高
13年11月27日水曜日
DB x 地理空間情報
最近(でもないけど)のDBでは地理空間情報を扱える
座標&座標系、距離、WKT、etc...
13年11月27日水曜日
よくある例ある地点から半径nメートル内のデータを取得
ある地点xとある地点yとの距離を計算
ポリゴンデータをそのまま格納
こういうのがクエリ一発でできたり
13年11月27日水曜日
DBの地理空間情報サポート
PostgreSQL + PostGIS
MySQL
SpatiaLite(SQLite+地理空間情報関数)
mongodb
Oracleのやつ(よく知らない)
13年11月27日水曜日
ライブラリGEOS によるOpenGIS関数サポート
PROJ4による測地系データベースのサポート
お客さんからのデータが日本測地系だったら世界測地系にして入れたりとか
13年11月27日水曜日
OSGeo財団オープンソース地理空間ソフトウェアの支援と構築のために設立された団体
多くのソフトウェアを提供
OSGeo財団日本支部もあります
弊社も企業会員です!
13年11月27日水曜日
pgRoutingとは
PostgreSQL+PostGIS上でルート計算をするライブラリ
いわゆる最短経路問題のアレ
13年11月27日水曜日
サポートアルゴリズム全点対間最短経路探索 - ジョンソンのアルゴリズム [1]
全点対間最短経路探索 - ワーシャル-フロイド法 [1]
A* アルゴリズムによる最短経路探索
双方向ダイクストラ法による最短経路探索 [1]
双方向 A* アルゴリズムによる最短経路探索 [1]
ダイクストラ法による最短経路探索
到達圏探索
K-最短経路探索 - 複数の代替経路探索 [1]
K-ダイクストラ法 - 1対多の最短経路探索 [1]
巡回セールスマン問題
交差点での進入制限付き最短経路探索 (TRSP) [1]
13年11月27日水曜日
必要なデータネットワークデータ
ネットワークトポロジーデータ
グラフを作る必要があるってこと
ネットワークトポロジーデータを作成するための関数あり
13年11月27日水曜日
ダイクストラ法
pgr_dijkstra(sql, source, target, directed, has_rcost);
最初のsqlに計算対象となるSQLを渡し、sourceからtargetまでで最適な距離を計算する(わかりづらい)
13年11月27日水曜日
実際の式SELECT seq, id1 AS node, id2 AS edge, cost FROM pgr_dijkstra(' SELECT gid AS id, source::integer, target::integer, length::double precision AS cost FROM ways', 30, 60, false, false);
13年11月27日水曜日
以下面倒なのでデモ
13年11月27日水曜日
デモの内容
QGISで簡単なクエリ実行
GeoServer+OpenLayers3で簡単なWeb
アプリ
ぶっちゃけworkshopの内容ですw
13年11月27日水曜日
参考文献などpgRouting ワークショップ
http://workshop.pgrouting.org/ja/index.html
アルゴリズムとかはwikipediaを見ましょうw
13年11月27日水曜日