玄天黄地

学生時代、箸にも棒にも掛からなかったアホの子が、やっと普通のアホになれるか?

線型位置参照

Facebook にも書いた記事ですが、Facebook は少数の知人向けに限定公開なので、こちらにもコピーを掲載しておきます)

聞き慣れない言葉です。私も、今の職場に移ってから初めて聞きました。ISO/TC204 WG3 などの界隈では使われ始めているようです。ここでは、ISO/TC204 の定義にとらわれずに、数学的に考察してみます(どこまでうまくいくやら)。

我々が手書きで案内図を書くとき、紙の上に何本か線を引きます。鉄道路線図は、地図の上に鉄道路線が引かれています。当たり前すぎる話ですが、これをもう少し数学的に角と、二次元の図形(本当は二次元の多様体と書きたい)に一次元の図形(同左)が「埋め込まれている」ことになります。

 

「埋め込み」という言葉は、多様体論の入り口すぐに登場する概念ですが、数学的な厳密さにこだわらずに、できるだけわかりやすく言ってみると、次のような言い方になるかと思います:

 

「一次元の図形が、図形としての性質を失わないようにしながら、二次元の図形の一部を形成している」

 

二次元の図形(上の例では、紙とか地図とか)を気にせずに、一次元の図形(道路とか鉄道とか)だけをかんがえることとする場合、位置の指定は数字1つで足ります。一次元図形なのですから当たり前ですね。道路の場合は道程とか距離程というのかも知れませんが、あまり用語が定着していないようです。鉄道の場合は、運賃計算などでキロ程という言葉がある程度定着しているように思えます。道程とかキロ程といった言葉は、直線距離とは異なります。精度のよい計測手段がなかった江戸期以前において、江戸ー大坂間の距離は、直線距離ではなく道程として把握されていました。だからこそ、一里塚みたいなものが重要だったわけです。

道路案内で、「道なりに1km進め」とあれば、直線距離で何百m進むかは分からないけど、道路(という一次元図形)上を道程1km分だけ移動せよ、という意味になります。これは、数学的に考えるまでもなく、運転免許を持っている人なら誰でもわかることです。道路や鉄道では、その上の位置を言うのに、距離程とかキロ程といった数字が1つあれば、正しく位置の特定ができます。

 

一方、道路や鉄道は、現実の地表や地図上で位置を表現するためには、少なくとも2次元の座標が必要です(立体交差、特にループを考えると、本当は3次元でなければなりませんが、簡単にするために、自己交差はないものとして2次元で話を進めます)。
鉄道や道路を地表や地図に埋め込んだところで、実態は変わりませんから、キロ程や距離程と、経度緯度とは、表現が異なるだけで、本質的には同じ位置指定のはずです。

本来、経度緯度のように2つ1組の座標が必要な地図上において、キロ程や距離程のように単一の座標で位置を特定することを、線型位置参照と言います(geo80k流の定義です)。

両者は本質的には同じものですから、(経度、緯度)←→(キロ程 または 距離程)という相互変換が可能です。数学的には何一つ目新しい話はありませんが、現実にはこのような機能は余り定式化されておらず、だからこそ最近になって「線型位置参照」として定式化されたりしているのだと思います。

 

ここまでは、工学的な定式化であっても、数学的には新規性ゼロの話です。

ここで注意しておくべきことは、(経度、緯度)は絶対値としての表現ですが、キロ程や距離程は相対位置だということです(0キロポストからの相対位置)。道路や鉄道を一次元図形としてみた場合はキロ程や距離程も絶対位置になるのですが(だから位置が一意的に特定できる)、二次元図形に埋め込む場合は相対位置扱いになる、という点が重要だと思います。


さて、今度は電車に乗っているつもりで、車窓から見えた特徴的な景色の位置を特定してみましょう。キロ程が Pkmの場所で、電車の進行方向直角に Qkm離れたあたりに目標物が見えているわけです。キロ程 P は、電車が定刻で走っていれば、時刻表と時計があれば求めることができます。目標物までの距離 Q は、仕方ないので目分量で求めます(測距儀があれば楽ですが)。この ( P, Q )は、(経度、緯度)とはもちろん異なりますが、目標物の位置を指定する上では有効な座標です。(車窓から目標物が複数回見えることがあったり、逆に一度も見えなかったりすることがあったりするので、二次元座標のグローバルな表現にはなりえませんが、見えている目標物に対しては有効だということです)

ここで、(乗車位置→目標物)というベクトルを考えた場合、このベクトルの向きは電車の進行方向と直角、ベクトルの長さは Q km であるものと考えることができます。
これは、移動する電車の各点(指定した時刻における乗車位置)に、それぞれ1次元のベクトル空間(法線方向)が紐付いていて、そのベクトル空間を用いて、1次元ベクトル(乗車位置→目標物)が定義できているということになります。
数学的には、線路(という一次元多様体)には法ベクトルが(常に)定義可能であって、景色として見えている目標物の位置は、「線路+法ベクトル」で定めることも可能だ、ということになります。

 

現場の道路管理者は、上記のような数学的な考え方をしているわけではないと思いますが、道路沿いの地物の位置を指定する場合には、結局「一次元多様体上の法ベクトル」の考え方を使っているものと言えます。

 

車窓からの景色は、法線に限定する必要はありません。乗車位置を原点とする二次元座標(この場合、X軸を電車の進行方向、Y軸を電車の進行方向と直角な方向、右手系)と定義すれば、目標物の位置を柔軟に指定できます。この場合は、一次元多様体上に二次元のベクトルバンドルがある、ということになります。二次元ベクトルバンドルの原点は一次元多様体(線路とか道路とか)の上ならばどこに設定しても良いのですが、これをもしも駅に設定すると、「駅周辺の地図」として二次元ベクトルバンドルが表現できるわけですね。さらに次元を拡張して、三次元ベクトルバンドルとして表現する場合は、地球上であれば、Z軸を重力方向と逆方向(つまり、上)に取るのが自然でしょう。現実の地図は、この意味でのZ軸が地球の中心(幾何学的中心でも、重心でも)を通るとは限らないところに測量学的な難しさがあったわけです。

 

船舶が「2時の方向、8kmの地点に敵艦」とか言うのは、二次元多様体(海面)の上の二次元ベクトルバンドルとして表現している、とも言えます。SFでも、「4時半の方向、60光秒の地点に敵艦隊」みたいなことを言うことがありますが(銀英伝アスターテ会戦における第6艦隊のごとく)、あれは宇宙空間なのに3次元ベクトルバンドルを用いていない点でダメですね(笑

 

測量とか測位とかは、絶対位置を求めることに注目が集まってきました。特に、測位はデフォルトが絶対位置の取得ですね。相対位置で良ければ、測位なんて新しい言葉を持ち出さなくても、計測という言葉で間に合ったはずです。
しかし、現実には相対位置の計測の方が遙かに容易です。(経度、緯度)とか(経度、緯度、標高)とか( x, y, z )←地球重心3次元直交座標系とかの、地球固定絶対座標で表現することは GIS を使う上でも重要ですが、現実は自分を中心にした2次元(または3次元)ベクトル空間上で議論したくなる場合が多いわけです。設計図とか工事図面とかの殆どは、相対位置(寸法線)だけあれば良い訳ですね。

なので、線型位置参照という概念を持ちだして、道路や鉄道のような線型図形に紐付く形で2次元(または3次元)の位置を指定できることは、本質的に重要だと考えています。背景には、こういう多様体論の言葉を持ち出す必要があったとしても、それをブラックボックスに格納して、現場の位置指定方法と整合的なインターフェースを構築すること、こういうことを目指して、今、道路プラットフォームを作ろうと考えています。