(57)【要約】【課題】空間内で複数の移動体が移動する状況を簡便にシミュレートする。【解決手段】移動体が移動するべき経路に沿った複数の経路点の各々の位置座標を含む経路点データを格納する経路点データ格納部と、移動体の移動速度または移動方向に影響を及ぼす標識オブジェクトの位置座標、及び移動体から見て一定の範囲内に当該標識オブジェクトを捉えた移動体に対して当該標識オブジェクトが与える移動速度または移動方向に関する指令の内容を含む標識データを格納する標識データ格納部と、複数の移動体の各々の現在の位置座標、移動速度及び移動方向を含む移動体データを格納する移動体データ格納部と、前記経路点データ、前記標識データ及び前記移動体データを参照して、空間内を移動する複数の移動体の各々の単位時間毎の位置座標、移動速度及び移動方向を反復的に演算し、演算した各移動体の新たな位置座標、移動速度及び移動方向を移動体データ格納部に書き込むシミュレート部とを具備する移動体制御システムを構成した。【選択図】図２
2018200526.tif 000002
【特許請求の範囲】
【請求項１】
移動体が空間内で移動するべき経路に沿った複数の経路点の各々の位置座標を含む経路点データを格納する経路点データ格納部と、
空間内を移動する移動体の移動速度または移動方向に影響を及ぼす標識オブジェクトの位置座標、及び移動体から見て一定の範囲内に当該標識オブジェクトを捉えた移動体に対して当該標識オブジェクトが与える移動速度または移動方向に関する指令の内容を含む標識データを格納する標識データ格納部と、
空間内を移動する複数の移動体の各々の現在の位置座標、移動速度及び移動方向を含む移動体データを格納する移動体データ格納部と、
前記経路点データ格納部に格納している経路点データ、前記標識データ格納部に格納している標識データ及び前記移動体データ格納部に格納している移動体データを参照して、空間内を移動する複数の移動体の各々の単位時間毎の位置座標、移動速度及び移動方向を反復的に演算し、演算した各移動体の新たな位置座標、移動速度及び移動方向を移動体データ格納部に書き込むシミュレート部と
を具備する移動体制御システム。
【請求項２】
前記移動体データ格納部に格納している移動体データを参照して、空間内における少なくとも一の移動体の現在位置を示す画像を生成する出力部を具備する請求項１記載の移動体制御システム。
【請求項３】
空間内に存在する移動体以外の物体を模擬する複数のキューブの各々の位置座標及び平面寸法及び高さ寸法を含むキューブデータを格納するキューブデータ格納部を具備し、
前記出力部は、空間内における少なくとも一の移動体の現在位置とともに同空間内に存在する物体を模擬する複数のキューブをも示す画像を生成し、生成した画像をディスプレイの画面に表示させる請求項２記載の移動体制御システム。
【請求項４】
前記標識データ格納部は、時間経過とともに遷移する、移動体から見て一定の範囲内に前記標識オブジェクトを捉えた移動体に対して当該標識オブジェクトが与える移動速度または移動方向に関する現在の指令の内容を前記標識データとして格納し、
前記シミュレート部は、前記標識データ格納部に格納している、前記標識オブジェクトが前記移動体に対して与える移動速度または移動方向に関する現在の指令の内容を基に、空間内を移動する複数の移動体の各々の単位時間毎の位置座標、移動速度及び移動方向を反復的に演算し、演算した各移動体の新たな位置座標、移動速度及び移動方向を移動体データ格納部に書き込む請求項１、２または３記載の移動体制御システム。
【請求項５】
前記シミュレート部は、前記移動体データ格納部に格納している、複数の移動体の各々の現在の位置座標及び移動方向を基に、ある移動体が当該移動体の移動方向に沿って前方に存在する他の移動体から所定距離の範囲内に接近した場合、そうでない場合と比較して当該移動体に対して与える移動速度を低下させた上で、当該移動体の新たな位置座標、移動速度及び移動方向を移動体データ格納部に書き込む請求項１、２、３または４記載の移動体制御システム。
【請求項６】
請求項１、２、３、４または５記載の移動体制御システムを構成するために用いられるものであって、コンピュータを、
移動体が空間内で移動するべき経路に沿った複数の経路点の各々の位置座標を含む経路点データを格納する経路点データ格納部、
空間内を移動する移動体の移動速度または移動方向に影響を及ぼす標識オブジェクトの位置座標、及び移動体から見て一定の範囲内に当該標識オブジェクトを捉えた移動体に対して当該標識オブジェクトが与える移動速度または移動方向に関する指令の内容を含む標識データを格納する標識データ格納部、
空間内を移動する複数の移動体の各々の現在の位置座標、移動速度及び移動方向を含む移動体データを格納する移動体データ格納部、並びに、
前記経路点データ格納部に格納している経路点データ、前記標識データ格納部に格納している標識データ及び前記移動体データ格納部に格納している移動体データを参照して、空間内を移動する複数の移動体の各々の単位時間毎の位置座標、移動速度及び移動方向を反復的に演算し、演算した各移動体の新たな位置座標、移動速度及び移動方向を移動体データ格納部に書き込むシミュレート部
として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、空間内で複数の移動体が移動する状況をシミュレートする移動体制御システムに関する。
【背景技術】
【０００２】
現実空間に存在する建築物や構造物、地形、空間内を移動する移動体（車両、歩行者、ロボット、航空機を含む飛翔体、船舶等）、または移動体が移動可能な通路（道路や橋梁等）の位置及び形状を精密にデータ化して蓄積しようとすると、データ量が膨大となる上、そのデータを利用して移動体からの距離や方向を把握するための処理が徒に複雑化し、計算量が増大して処理の遅延を招く懸念がある。
【０００３】
この問題を解決する手立てとして、本願発明者は既に、建築物、構造物、地形、移動体または通路に関する情報を軽量かつ利用容易なデータの形で表現する手法を特許出願している（下記特許文献１ないし４を参照）。具体的には、空間を一定の緯度及び一定の経度の大きさのグリッドに分割し、当該空間内に存在する物体と重なる一または複数のグリッドの位置の座標をデータベース化するというものである。さらに、各グリッドの位置の座標の情報に、当該グリッドと重なる物体の高さ寸法の情報を付加することで、空間内に存在する物体を一または複数の直方体状のキューブ（ｃｕｂｏｉｄ）の集合として表現することができる。
【０００４】
また、移動体の自律制御、自動運転または半自動運転を実施する際には、移動体が移動可能な移動経路の位置を予めデータベース化しておき、移動体による適正な経路に沿った移動を実現することが求められる。
【０００５】
本願発明者は既に、移動体が移動しようとする移動経路を軽量かつ利用容易なデータの形で表現し、移動体の周囲に存在する経路の検出ひいては移動体の制御に寄与する手法を特許出願している（例えば、下記特許文献５を参照）。具体的には、移動体が移動しようとする経路を複数の部分に区分し、その各部分について移動経路の延伸方向と交差する幅方向の所定位置の緯度及び経度を求めたデータである経路点データを格納、蓄積しておく。そして、移動体がこれから進入する複数の経路の部分についての経路点データから判明する移動経路の延伸方向と、移動体の現在位置の緯度及び経度の時系列から判明する当該移動体の移動方向とが略平行になるように、移動体が備える操舵装置を操作するか、またはそのために必要な操舵量若しくは操舵方向を移動体の搭乗者の視覚または聴覚に訴えかける態様で出力する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１７−０４９７３９号公報
【特許文献２】特願２０１５−２３８７５４号明細書
【特許文献３】特願２０１６−０１８３３３号明細書
【特許文献４】特願２０１７−００２１５０号明細書
【特許文献５】特願２０１６−０１８３３３号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明は、空間内で複数の移動体が移動する状況を簡便にシミュレートすることを所期の目的としている。
【課題を解決するための手段】
【０００８】
本発明では、移動体が空間内で移動するべき経路に沿った複数の経路点の各々の位置座標を含む経路点データを格納する経路点データ格納部と、空間内を移動する移動体の移動速度または移動方向に影響を及ぼす標識オブジェクトの位置座標、及び移動体から見て一定の範囲内に当該標識オブジェクトを捉えた移動体に対して当該標識オブジェクトが与える移動速度または移動方向に関する指令の内容を含む標識データを格納する標識データ格納部と、空間内を移動する複数の移動体の各々の現在の位置座標、移動速度及び移動方向を含む移動体データを格納する移動体データ格納部と、前記経路点データ格納部に格納している経路点データ、前記標識データ格納部に格納している標識データ及び前記移動体データ格納部に格納している移動体データを参照して、空間内を移動する複数の移動体の各々の単位時間毎の位置座標、移動速度及び移動方向を反復的に演算し、演算した各移動体の新たな位置座標、移動速度及び移動方向を移動体データ格納部に書き込むシミュレート部とを具備する移動体制御システムを構成した。
【０００９】
本移動体制御システムは、前記移動体データ格納部に格納している移動体データを参照して、空間内における少なくとも一の移動体の現在位置を示す画像を生成する出力部を具備することがある。この出力部は、生成した画像をディスプレイの画面に表示させたり、生成した画像のデータをメインメモリまたは補助記憶デバイスの所要の記憶領域に格納したり、電気通信回線を介して通信可能に接続している外部のコンピュータ等に向けて送信したりする。
【００１０】
加えて、本移動体制御システムは、空間内に存在する移動体以外の物体を模擬する複数のキューブの各々の位置座標及び平面寸法及び高さ寸法を含むキューブデータを格納するキューブデータ格納部をさらに具備することがある。その上で、前記出力部は、空間内における少なくとも一の移動体の現在位置とともに同空間内に存在する物体を模擬する複数のキューブをも示す画像を生成し、生成した画像をディスプレイの画面に表示させることができる。
【００１１】
前記標識データ格納部が、時間経過とともに遷移する、移動体から見て一定の範囲内に前記標識オブジェクトを捉えた移動体に対して当該標識オブジェクトが与える移動速度または移動方向に関する現在の指令の内容を前記標識データとして格納し、前記シミュレート部が、前記標識データ格納部に格納している、前記標識オブジェクトが前記移動体に対して与える移動速度または移動方向に関する現在の指令の内容を基に、空間内を移動する複数の移動体の各々の単位時間毎の位置座標、移動速度及び移動方向を反復的に演算し、演算した各移動体の新たな位置座標、移動速度及び移動方向を移動体データ格納部に書き込むシステムとすれば、信号機のような状態が刻々と遷移する標識オブジェクトを空間内に配置し、その標識オブジェクトによって個々の移動体の移動を制御するシミュレーションが可能となる。
【００１２】
また、前記シミュレート部が、前記移動体データ格納部に格納している、複数の移動体の各々の現在の位置座標及び移動方向を基に、ある移動体が当該移動体の移動方向に沿って前方に存在する他の移動体から所定距離の範囲内に接近した場合、そうでない場合と比較して当該移動体に対して与える移動速度を低下させた上で、当該移動体の新たな位置座標、移動速度及び移動方向を移動体データ格納部に書き込むシステムとすれば、交通渋滞その他の事由により移動体の移動が制限される状況をシミュレーションすることが可能となる。
【００１３】
本発明に係る移動体制御システムを構成するために用いられるプログラムは、コンピュータを、移動体が空間内で移動するべき経路に沿った複数の経路点の各々の位置座標を含む経路点データを格納する経路点データ格納部、空間内を移動する移動体の移動速度または移動方向に影響を及ぼす標識オブジェクトの位置座標、及び移動体から見て一定の範囲内に当該標識オブジェクトを捉えた移動体に対して当該標識オブジェクトが与える移動速度または移動方向に関する指令の内容を含む標識データを格納する標識データ格納部、空間内を移動する複数の移動体の各々の現在の位置座標、移動速度及び移動方向を含む移動体データを格納する移動体データ格納部、並びに、前記経路点データ格納部に格納している経路点データ、前記標識データ格納部に格納している標識データ及び前記移動体データ格納部に格納している移動体データを参照して、空間内を移動する複数の移動体の各々の単位時間毎の位置座標、移動速度及び移動方向を反復的に演算し、演算した各移動体の新たな位置座標、移動速度及び移動方向を移動体データ格納部に書き込むシミュレート部として機能させる。
【発明の効果】
【００１４】
本発明によれば、空間内で複数の移動体が移動する状況を簡便にシミュレートすることができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の一実施形態の移動体制御システムが有するハードウェア資源を示す図。
【図２】同実施形態の移動体制御システムの機能ブロック図。
【図３】同実施形態の移動体制御システムが出力する、空間内に存在する物体をキューブにより模擬して表示した画像を例示する図。
【図４】同実施形態におけるキューブデータ格納部が格納しているキューブデータを示す図。
【図５】同実施形態における物体を模擬するキューブの頂点及び稜線、並びに当該キューブの向く方向を示す図。
【図６】同実施形態における移動体、移動経路及びその部分、並びに経路点を示す図。
【図７】同実施形態における経路点データ格納部が格納している経路点データを示す図。
【図８】同実施形態における移動体、移動経路及びその部分、並びに区画線を示す図。
【図９】同実施形態における移動体、移動経路及び標識オブジェクトを示す図。
【図１０】同実施形態における標識データ格納部が格納している標識データを示す図。
【図１１】同実施形態における交差標識の状態の定義を示す図。
【図１２】同実施形態における移動体、移動経路及び標識オブジェクトを示す図。
【図１３】同実施形態における移動体による標識オブジェクトの検出可能範囲を模式的に示す平面図。
【図１４】同実施形態における移動体による標識オブジェクトの検出可能範囲を模式的に示す側面図。
【図１５】同実施形態における移動体データ格納部が格納している移動体データを示す図。
【図１６】同実施形態の移動体制御システムがプログラムに従い実行する処理の手順例を示す図。
【図１７】同実施形態における視点位置、視線方向、スクリーン及び視野角の関係を模式的に示す斜視図。
【図１８】同実施形態における視点位置、視線方向、スクリーン及び視野角の関係を模式的に示す平面図。
【図１９】同実施形態における視点位置、視線方向、スクリーン及び視野角の関係を模式的に示す側面図。
【図２０】同実施形態における描画情報出力部が出力する情報の内容を例示する図。
【発明を実施するための形態】
【００１６】
本発明の一実施形態を、図面を参照して説明する。本実施形態の移動体制御システムは、コンピュータ１を主体として構成される。コンピュータ１は、汎用的なパーソナルコンピュータ１やワークステーション、携行可能なノートブック型コンピュータ１、タブレット型コンピュータ１、携帯電話端末その他の携帯情報端末であることがある。図１に示すように、コンピュータ１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１ａ、メインメモリ１ｂ、補助記憶デバイス１ｃ、ビデオコーデック１ｄ、オーディオコーデック１ｅ、通信インタフェース１ｆ、入力デバイス１ｇ等のハードウェア資源を備え、これらがコントローラ（システムコントローラ、Ｉ／Ｏコントローラ等）１ｈにより制御されて連携動作するものである。
【００１７】
補助記憶デバイス１ｃは、フラッシュメモリ、ハードディスクドライブ、光学ディスクドライブ、その他である。ビデオコーデック１ｄは、ＣＰＵ１ａより受けた描画指示をもとに表示させるべき画面を生成しその画面信号をディスプレイ１ｉに向けて送出するＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、画面や画像のデータを一時的に格納しておくビデオメモリ等を要素とする。オーディオコーデック１ｅは、符号化されている音声データを復号化して音声出力デバイス１ｊから音声出力する。ビデオコーデック１ｄ及びオーディオコーデック１ｅはそれぞれ、ハードウェアでなくソフトウェアとして実装することも可能である。通信インタフェース１ｆは、当該コンピュータ１が外部の装置またはコンピュータと情報の授受を行うためのデバイスである。なお、通信インタフェース１ｆは、インターネット、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＭＡＮ（Ｍｅｒｔｏｐｏｌｉｔａｎ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、携帯電話網、ＷｉＭＡＸ網等といった電気通信回線を介した情報通信を実施するための有線接続インタフェースまたは無線トランシーバを含む。入力デバイス１ｇは、ユーザが手指で操作するタッチパネル（ディスプレイ１ｉに重ね合わされたものであることがある）、押下ボタン、マウス、キーボード等、またはユーザが肉声により指令を入力する音声入力デバイスである。
【００１８】
本移動体制御システムが、車両、ロボット、飛翔体（特に、遠隔操縦されまたは自律制御により飛行する無人航空機であるドローン。多くのドローンは、複数のプロペラを備えたマルチコプタ（マルチロータヘリコプタ、マルチロータ）である）その他の移動体Ｍに搭載されて運用されることもあり得る。その場合、本移動体制御システムを構成するコンピュータ１が、移動体Ｍの運転制御を司る可能性がある。例えば、自動車やロボット等の走行する移動体Ｍは、走行用の車輪の向きを変化させることのできる既知の操舵装置１ｋ、車輪を回転駆動させる駆動源１ｌとなる既知のエンジン若しくはモータの他、移動体Ｍの移動経路ＲＯの路面上に敷設されている区画線や移動体Ｍの周囲の物体を検出するためのセンサ１ｍとしてのカメラセンサ（パノラマカメラであることがある）、レーダセンサ若しくは対物距離（測距）センサ（レーザレーダ、超音波レーダ、赤外線レーダ等）、パッシブ赤外線センサ（人感センサ）等、並びに、ＧＰＳやＱＺＳＳ（Ｑｕａｓｉ−Ｚｅｎｉｔｈ  Ｓａｔｅｌｌｉｔｅ  Ｓｙｓｔｅｍ）といった航法衛星システム（衛星測位システム）の航法信号受信装置１ｎ等を備える。その上で、コンピュータ１は、それらセンサ１ｍや航法信号受信装置１ｎを介して周囲の物体の存在や移動体Ｍ自身の現在位置の緯度及び経度を知得した上、操舵装置１ｋ及び駆動源１ｌを制御して移動体Ｍを適切な移動経路ＲＯに沿って移動させることとなる。
【００１９】
当該コンピュータ１にあって、ＣＰＵ１ａにより実行されるべきプログラムは補助記憶デバイス１ｃに格納されており、プログラムの実行の際には補助記憶デバイス１ｃからメインメモリ１ｂに読み込まれ、ＣＰＵ１ａによって解読される。コンピュータ１は、プログラムに従って上記ハードウェア資源を作動させ、図２に示すキューブデータ格納部１０１、経路点データ格納部１０２、移動体データ格納部１０４、標識データ格納部１０３、シミュレート部１０５及び出力部１０６としての機能を発揮する。
【００２０】
キューブデータ格納部１０１は、メインメモリ１ｂ若しくは補助記憶デバイス１ｃの所要の記憶領域を利用し、現実空間に存在する（移動体Ｍ以外の）物体を模擬する複数のキューブＣの各々について、その存在位置を示す緯度及び経度、並びにその平面寸法及び高さ寸法を含むキューブデータを格納する。
【００２１】
図３に例示するように、本実施形態では、空間内に存在する種々の（移動体Ｍを含む）物体を、各物体毎に、一つのキューブＣまたは複数のキューブＣの集合であると仮想する。キューブＣは、物体の位置、形状及び寸法の抽象化表現である。前提として、本実施形態では、移動体Ｍ１を運用する現実の空間を、一定の緯度及び一定の経度間隔の格子によって区画される、一定の緯度及び一定の経度の大きさの仮想的なグリッドに分割する。一つのグリッドは、緯度方向及び経度方向にそれぞれ所定の寸法を有した方形（四辺形。略長方形状をなすが、厳密には長方形ではない）である。そして、一つのグリッドを表すために、一つのグリッドに対して少なくとも一つの位置座標を付与する。この位置座標は、対象のグリッド内の何れかの地点、例えば当該グリッドの角（北東角、南東角、南西角または北西角）や中央等の地点の緯度及び経度である。それら緯度及び経度はそれぞれ、所要の桁数の値とする。例えば、緯度及び経度の有効桁数を小数点以下６桁までとする場合、即ちあるグリッドを表すデータとして当該グリッド（の北東角）の位置座標［緯度，経度］を
［３５．６７５１２６°Ｎ，１３９．７５２４７２°Ｅ］
のように与える場合において、当該グリッドの北に隣接するグリッドに与えるべき（そのグリッドの北東角の）位置座標は、北緯に０．０００００１°を加算した
［３５．６７５１２７°Ｎ，１３９．７５２４７２°Ｅ］
となり、当該グリッドの西に隣接するグリッドに与えるべき（そのグリッドの北東角の）位置座標は、東経から０．０００００１°を減算した
［３５．６７５１２６°Ｎ，１３９．７５２４７１°Ｅ］
となる。
【００２２】
位置座標の緯度及び経度の有効桁数を小数点以下６桁までとする場合、一つのグリッドは緯度方向及び経度方向にそれぞれ０．０００００１°分の寸法を有した方形となる。その具体的な大きさは、緯度及び経度の影響を受けるため、あらゆるグリッドが均一な平面寸法を有するわけではない。即ち、北極または南極に近づくほど、単位経度あたりの経度（東西）方向の距離は顕著に小さくなり、また単位緯度あたりの緯度（南北）方向の寸法は若干ではあるが大きくなる。緯度及び経度の有効桁数を小数点以下６桁までとする場合、日本国内では、一つのグリッドの緯度方向の寸法は南北に約０．１１ｍ、経度方向の寸法は東西に約０．０９ｍとなる。尤も、日本列島は南北に伸びているので、所在地の緯度による寸法の伸縮を完全に無視することは必ずしも妥当ではない。
【００２３】
位置座標の緯度及び経度の有効桁数を小数点以下５桁までとする場合には、一つのグリッドの緯度方向の寸法は約１．１ｍ、経度方向の寸法は約０．９ｍとなる。有効桁数を小数点以下４桁までとすれば、一つのグリッドの緯度方向の寸法は約１１ｍ、経度方向の寸法は約９ｍとなる。要するに、緯度及び経度の有効桁数は、そのグリッドの平面寸法即ち緯度方向の寸法及び経度方向の寸法を規定する。緯度及び経度の有効桁数は、用途に応じて、また各物体の寸法に応じて、任意に設定することができる。大型のビル等の広い面積を有している物体にできるだけ少ない数のグリッドを当てはめようとするならば、そのグリッドに係る緯度及び経度の有効桁数を少なく設定することが有効である。
【００２４】
その上で、本実施形態では、図３に示しているように、グリッドから直立する直方体状のキューブＣを観念し、現実空間に存在する種々の物体をそれぞれ一または複数のキューブＣによって模擬することとしている。そして、キューブデータ格納部１０１は、図４に示すように、個々のキューブＣ毎に、当該キューブＣが占めるグリッドの位置座標［緯度，経度］及びその有効桁数とともに、当該グリッドに所在するキューブＣの高さの情報を、当該キューブＣを識別する識別子に関連づけてキューブデータとして格納する。キューブＣの高さは、現実空間において当該グリッドに存在している物体または物体の部分、即ちキューブＣが模擬している物体または物体の部分の上面の高さ位置（標高または海抜であることがある）を表す。
【００２５】
加えて、図４に示しているように、個々のキューブＣに対して、その地上高の情報や、当該キューブＣが所在しているグリッドの地表高の情報を付与することもあり得る。キューブＣの地上高は、現実空間において当該グリッドに存在している物体または物体の下面の高さ位置（標高または海抜であることがある）を表す。並びに、グリッドの地表高は、当該グリッド自体の高さ位置（標高または海抜であることがある）を表す。橋桁や梁、門等のように、移動体Ｍの存在する地面または床面から浮いている物を表現する際には、キューブＣの地上高に、グリッドの地表高よりも大きな正の数値を与える。地面または床面に接地している多くの物体については、地上高の値と地表高の値とが等しくなる。地面または床面よりも低い位置に存在する物体、例えば溝や穴、トンネル、河川や湖、海等を表現する際には、キューブＣの高さ及び地上高の値に、グリッドの地表高よりも小さな数値を与える。その数値は、負値となることもあり得る。
【００２６】
一または複数のキューブＣにより模擬する対象となる物体は、例えば、移動体Ｍが移動する空間内に存在する建築物、構造物、中央分離帯、街灯、樹木等の障害物や、移動体Ｍが移動可能な道路や橋梁等、あるいは地形である。これら物体はそれぞれ、当該物体が空間内で占有している領域に略等しい一または複数のキューブＣの形で表現することができる。つまり、当該物体を象るキューブＣの位置座標及び高さ（さらには、地上高や色等）の値の集合として、当該物体をデータ化することができる。全長１００ｍ、幅３ｍの通路は、キューブＣの位置座標の緯度及び経度の有効桁数を小数点以下６桁とすれば、（当該通路の向きにもよるが）約３万個のキューブＣの集合体として捉えることができ、同数の位置座標及び高さの値の集合としてデータ化できる。また、建物面積４００ｍ2の建物は、キューブＣの位置座標の緯度及び経度の有効桁数を小数点以下５桁とすれば、４００個程度のキューブＣの集合体として捉えることができ、同数の位置座標及び高さの値の集合としてデータ化できる。
【００２７】
尤も、キューブデータ格納部１０１に格納するキューブデータにおいて、物体を模擬する個々のキューブＣに対して、当該キューブＣの平面寸法、即ち水平なｘ軸方向にそった寸法、及びｘ軸と直交する水平なｙ軸方向に沿った寸法の各々を直接指定する数値を付与することもできる。この場合において、平面寸法が直接指定されたキューブＣは、当該キューブＣ（が所在するグリッド）の位置座標の緯度及び経度の有効桁数によらない平面寸法を有することとなる。換言すれば、当該キューブＣの平面寸法と当該グリッドの平面寸法とが乖離し、一つのキューブＣが一つのグリッドよりも拡張してはみ出し複数のグリッドを占有する、または一つのキューブＣが一つのグリッドよりも縮小してそのグリッド全体を占有しないことが起こり得る。なお、平面寸法の数値が与えられていないキューブＣは、上述の通り、当該キューブＣが所在するグリッドの位置座標の緯度及び経度の有効桁数に応じて定まるｘ軸方向寸法（経度方向寸法）及びｙ軸方向寸法（緯度方向寸法）を有する。つまり、キューブＣの位置座標の緯度及び経度の有効桁数は、当該グリッドを占有するキューブＣの平面寸法を間接的に指示する。
【００２８】
また、図４に示しているように、個々のキューブＣに対して、その向きを定義する方位角の情報を付与することもできる。図５に示すように、キューブＣの方位角ＣＶは、キューブＣの特定の一つの頂点Ｐ２［ｘ，ｙ］＝［０，０］から当該キューブＣのｙ軸に沿ってｙの値が負となる方向に伸びる方位角ベクトルＣＶが空間内でどちらの方位を向いているかを規定する。方位角０°（及び、３６０°）を真北とする左手系の場合、方位角９０°が真東、方位角１８０°が真南、方位角２７０°が真西である。そして、キューブＣの方位角が９０°であるとき、当該キューブＣはその方位角ベクトルＣＶが真東に向かって伸びているような方向を向く。なお、方位角の数値が与えられていないキューブＣは、その方位角ベクトルＣＶが真北に向かって伸びる方向を向くものとする。つまり、キューブＣの方位角を無指定とすることは、キューブＣの方位角を０°に設定することに等しい。
【００２９】
方位角は、左手系から右手系に切り替えることもできる。方位角０°（及び、３６０°）を真東とする左手系の場合、方位角９０°が真北、方位角１８０°が真西、方位角２７０°が真南である。
【００３０】
図４に示しているように、個々のキューブＣに対して、当該キューブＣが模擬する物体またはその部分の色等の情報を追加的に付与しても構わない。
【００３１】
経路点データ格納部１０２は、メインメモリ１ｂ若しくは補助記憶デバイス１ｃの所要の記憶領域を利用し、移動体Ｍが空間内で移動するべき経路ＲＯに沿った複数の経路点の各々の位置座標を含む経路点データを格納する。
【００３２】
図６に示すように、経路点とは、移動体Ｍが移動しようとする経路ＲＯを複数の部分ＲＡに区分したときの、移動経路ＲＯ上に位置する各部分ＲＡ毎の地点ＲＰ、または移動経路ＲＯと平行に延伸する仮想的な線上に位置する各部分ＲＡ毎の地点をいう。移動体Ｍは、移動経路ＲＯに従って移動する過程で、移動経路ＲＯに沿って並ぶ経路点ＲＰまたはその近傍を順次通過する。
【００３３】
本実施形態では、移動体Ｍが移動するときの標準的な移動速度、即ち一秒あたり若しくは数分の一秒（例えば、二分の一秒、四分の一秒等）あたりの移動距離単位で、移動体Ｍの移動経路ＲＯを区分し、その距離の長さを持つ各部分ＲＡの起点（または、終点、中間点等。各部分ＲＡの、移動経路ＲＯの延伸方向に沿った所定位置）の位置を経路点ＲＰとする。その上で、図７に示すように、移動経路ＲＯに沿って並ぶ各経路点ＲＰの位置を示す緯度及び経度の値を経路点データとして、当該移動経路ＲＯを識別する識別子に関連づけて経路点データ格納部１０２に格納する。移動体Ｍが自動車やロボット等であり、移動経路ＲＯである道路上を走行する当該移動体Ｍの標準的な移動速度が時速５０ｋｍであるとすると、当該移動体Ｍの標準的な秒速即ち一秒あたりの移動距離は１３．８９ｍ、二分の一秒あたりの移動距離は６．９４４ｍ、四分の一秒あたりの移動距離は３．４７２ｍとなる。これに従い、移動経路ＲＯを１３．８９ｍ、６．９４４ｍまたは３．４７２の長さ（道程）を持つ複数の部分ＲＡに区分し、それら各部分ＲＡを単位として経路点データを求め、経路点データ格納部１０２に格納するのである。
【００３４】
経路点データの要素となる各経路点ＲＰの緯度及び経度はそれぞれ、所定桁数の値とする。緯度及び経度の有効桁数を小数点以下６桁までとする場合、日本国内におけるそれら緯度及び経度の解像度は緯度方向に約０．１１ｍ、経度方向に約０．０９ｍとなる。
【００３５】
図７に示しているように、経路点データは、移動経路ＲＯに沿った各経路点ＲＰの高度（標高または海抜であることがある）の値を含むことがある。経路点ＲＰ毎に高度の値を設定することで、複数の移動経路ＲＯの立体交差や、高架道路、地下トンネル道路、あるいは飛翔体である移動体Ｍの飛行ないし浮遊の経路ＲＯを表現することができる。
【００３６】
なお、移動体Ｍが道路ＲＯを走行する自動車やロボット等である場合、経路点ＲＰは、当該移動体Ｍの移動経路ＲＯである道路の各部分ＲＡについて、当該道路ＲＯの延伸方向と交差（特に、直交）する幅方向の所定点、例えば区画線の位置であることがある。区画線とは、道路の路面にペイントされた線や、路面に設置された道路鋲（チャッタバー）、石等によって描かれる線のことであり、下記を含む：
「道路外側線」車道の最も外側の境界を示す、路端寄りに引かれている区画線。道路外側線よりも外側は、原則として自動車の走行が禁止される路側帯となる。そして、道路外側線よりも内側が、自動車の走行が許される車両通行帯となる。
「車道中央線」自動車の通行を方向別に区分するために引かれている区画線。実際には、ペイントされた線だけでなく、道路上に設置されたランブルストリップス、道路鋲、車線分離標（センターポール、ポストコーン）、中央分離帯等の構造物によって表されることも多い。
「車線境界線」同一方向に走行するための車両通行帯が二車線以上存在している場合の、隣り合う車線の間を仕切る境界線。
【００３７】
例えば、図８に示すように、移動体Ｍの移動経路ＲＯである道路の各部分ＲＡの起点における、左側の車道外側線ＬＭ、右側の車道外側線（車道中央線に等しいことがある）ＲＭ、車線境界線（車両通行帯境界線）ＭＭ、左側の道路側壁ＬＬ、及び／または、右側の道路側壁ＲＲの位置を経路点ＲＰとし、当該経路点ＲＰの位置を示す緯度及び経度の値、並びに当該経路点ＲＰの高度の値を、移動経路ＲＯを識別する識別子に関連づけて経路点データ格納部１０２に格納することが考えられる。道路側壁ＬＬ、ＲＲとは、道路外側線や車道中央線の外側に存在して移動体Ｍの移動、通行または通過の障害となる、ランブルストリップス、道路鋲、車線分離標、中央分離帯、防音壁、ガードレール、縁石、ポール、側溝、建築構造物等をいう。
【００３８】
因みに、本移動体制御システムを構成するコンピュータ１が移動体Ｍに搭載されている場合、このコンピュータ１が、経路点データ格納部１０２に格納されている経路点データを援用して、移動体Ｍの操舵や移動速度の制御を行うことができる。
【００３９】
具体的には、まず、今現在の移動体Ｍの位置を示す緯度及び経度から最も距離が近い緯度及び経度の値を有する経路点データを、経路点データ格納部１０２の中から検索する。なお、コンピュータ１は予め、移動体Ｍが備えている航法信号受信装置１ｎの機能を利用して、移動体Ｍの現在位置の緯度及び経度を所定時間毎に反復的に取得している。次に、その検索した経路点データと同一の移動経路ＲＯに属しており、移動体Ｍがこれから進入することになる、連続した複数の移動経路ＲＯの部分ＲＡについての経路点データを経路点データ格納部１０２から読み出す。例えば、移動体Ｍが今後一定の時間内に（例えば、今から十秒間のうちに）進入するであろう複数の経路ＲＯの部分ＲＡの（経路点データの生成に際して移動経路ＲＯを一秒あたりの移動距離の長さで切り分けているならば、十個の）経路点ＲＰの緯度及び経度並びに高度のデータを読み出す。
【００４０】
そして、それら経路点データを基に、将来的な移動体Ｍのあるべき移動の軌跡、即ち移動体Ｍが道路を走行するときの適正な走行ラインを得る。例えば、移動体Ｍがこれから進入する複数の移動経路ＲＯの部分ＲＡについての経路点ＲＰの位置の緯度及び経度を読み出し、それら複数の経路点ＲＰの位置を結ぶような直線または曲線の延伸方向、つまりは移動経路ＲＯの延伸方向を求める。
【００４１】
同時に、コンピュータ１は、反復的に取得している移動体Ｍの現在位置の緯度及び経度を基に、現在の移動体Ｍの移動方向ＭＶを求める。移動体Ｍがどの方角に向かって移動しているのかは、たった今取得した最新の移動体Ｍの位置の緯度及び経度と、直近の過去に知得した移動体Ｍの位置の緯度及び経度との差分から明らかとなる。
【００４２】
その上で、コンピュータ１は、移動体Ｍの移動方向ＭＶのベクトルと、移動体Ｍが走行しようとする移動経路ＲＯの延伸方向のベクトルとの偏差を縮小させるように操舵方向及び／または操舵量を決定し、操舵装置１ｋを制御する。
【００４３】
また、コンピュータ１が、当該偏差を縮小させるために必要な操舵方向及び／または操舵量の情報を、移動体Ｍの搭乗者の視覚または聴覚に訴えかける態様で出力、即ちディスプレイ１ｉの画面に表示させたり音声出力デバイス１ｊを介して音声出力させたりすることも可能である。これにより、移動体Ｍの自律制御、自動運転または半自動運転中に搭乗者が操舵の内容の予告を受けることができ、あるいは、搭乗者自身が移動体Ｍを操舵する場合に適切な操舵量を搭乗者に通知することができる。
【００４４】
加えて、コンピュータ１は、経路点データ格納部１０２から読み出した複数の経路ＲＯの部分ＲＡの経路点データに含まれる、各経路点ＲＰの高度の値に基づき、移動体Ｍの駆動源１ｌであるエンジン若しくはモータの出力を制御する。移動体Ｍがこれから進入することになる複数の移動経路ＲＯの部分ＲＡの高度を参照すれば、移動体Ｍがこれから上り坂に差し掛かるのか、または下り坂に差し掛かるのかが判明する。また、連続する複数の部分ＲＡの高低差が、路面の傾斜を表すこととなる。そこで、コンピュータ１は、移動体Ｍがこれから進入する移動経路ＲＯの部分ＲＡが上り坂であるか下り坂であるか、またその路面の傾斜を求め、それに応じて移動体Ｍに搭載された駆動源１ｌの出力を増減させることにより、移動経路ＲＯの上り下りに起因する移動体Ｍの移動速度の変動を抑制する。
【００４５】
また、コンピュータ１が、移動速度の変動を抑制するために駆動源１ｌの出力を増量するのか減量するのか、及び／または、移動速度の変動を抑制するために必要な出力の増減量の情報を、移動体Ｍの搭乗者の視覚または聴覚に訴えかける態様で出力、即ちディスプレイ１ｉの画面に表示させたり音声出力デバイス１ｊを介して音声出力させたりすることも可能である。これにより、移動体Ｍの自律制御、自動運転または半自動運転中に搭乗者が駆動源１ｌの出力制御の内容の予告を受けることができ、あるいは、搭乗者自身がアクセルペダルを操作する場合に適切な操作量を搭乗者に通知することができる。
【００４６】
このようにして、コンピュータ１は、移動体Ｍの移動経路ＲＯ上の複数の部分ＲＡに関する経路点データと、移動体Ｍの現在位置の推移とに基づき、移動体Ｍの操舵や移動速度の制御を遂行することができる。
【００４７】
経路点データは、移動体Ｍに搭乗している搭乗者が移動体Ｍの移動先の目的地を指定したときにはじめて生成されることがある。例えば、搭乗者が移動体Ｍに実装されているカーナビゲーションシステムを操作して目的地を入力し、カーナビゲーションシステムが移動体Ｍの現在位置から目的地に至るための移動経路ＲＯを検索して決定した後、本操舵支援システムのコンピュータ１が、当該移動経路ＲＯを複数の部分ＲＡに区分して各部分ＲＡについての経路点データを生成、経路点データ格納部１０２に格納する処理を実行する。
【００４８】
経路点データ格納部１０２に格納する経路点データに関して補記すると、図７に示すように、移動経路ＲＯに属する個々の経路点ＲＰについて、当該経路点ＲＰまたはその近傍に到達した移動体Ｍが次の経路点ＲＰに向かうにあたりとるべき動作を指令するコマンドの情報を付与することもできる。コマンドの具体例としては、対象の経路点ＲＰまたはその近傍に到達した移動体Ｍの以後の移動速度を指定するものや、対象の経路点ＲＰまたはその近傍に到達した移動体Ｍをその後無操作とするかまたは停止させるウェイト時間の長さを指定するもの、あるいは、対象の経路点ＲＰまたはその近傍に到達した移動体Ｍを移動経路上または空間内から除去するもの等を挙げることができる。これらのコマンドは、後述するシミュレート部１０５による各移動体Ｍの移動のシミュレーションにおいて参照される。
【００４９】
また、コマンドとして、移動体Ｍが対象の経路点ＲＰまたはその近傍に到達して以後の、当該移動体Ｍに搭乗している仮想的な搭乗者の視点の位置及び／または視線の方向を指定するコマンドも存在する。このコマンドは、移動体Ｍを模擬する仮想的なキューブＣの内における搭乗者の視点の位置座標、並びにその視点から見る方向である視線の方位角及び仰俯角（仰角及び／または俯角。例えば、水平よりも上を向く仰角を正値、水平よりも下を向く俯角を負値とする）を定義する。移動体Ｍ以外の物体を模擬するキューブＣと同様、移動体Ｍを模擬するキューブＣもまた直方体状をなす。そして、キューブＣは、平面寸法、即ち水平なｘ軸方向にそった寸法、及びｘ軸と直交する水平なｙ軸方向に沿った寸法と、ｘ軸及びｙ軸の双方に直交するｚ軸方向に沿った高さ寸法とを有している。搭乗者の視点の位置座標は、移動体Ｍを模擬するキューブＣ内でのｘ軸方向に沿った位置、同キューブＣ内でのｙ軸方向に沿った位置、並びに、同キューブ内でのｚ軸方向に沿った位置の総体である三次元座標［ｘ，ｙ，ｚ］の形で表される。このコマンドは、後述する出力部１０６によるシミュレーション結果の画像の出力において参照されることがある。
【００５０】
さらに、経路点データ格納部１０２は、各移動経路ＲＯ毎の経路点データの要素として、当該移動経路ＲＯに沿って移動する移動体Ｍを模擬する仮想的なキューブＣの平面寸法及び高さ寸法、並びに、シミュレーションにおける移動体Ｍ（を模擬するキューブＣ）の生成間隔等を定義する情報をも格納する。例えば、［１．４８，３．４，２，９０，１０，５］という数値は、移動体Ｍを模擬するキューブＣのｘ軸方向寸法が１．４８ｍ、ｙ軸方向寸法が３．４ｍ、高さ寸法が２ｍ、当該移動体Ｍの生成時点で当該移動体Ｍが向いている方向の方位角が９０°であり、当該移動体Ｍの生成間隔が１０秒間隔、かつ当該移動体Ｍの生成の上限（空間内で同時に存在している移動体Ｍの個数の上限）が５個であることを意味する。移動体Ｍを模擬するキューブＣの向く方向は、当該移動体Ｍの前進する方向または当該移動体Ｍの後進する方向と逆の方向に等しい。図５に示しているように、移動体Ｍを模擬するキューブＣの向く方向の方位角は、キューブＣの特定の一つの頂点Ｐ２［ｘ，ｙ］＝［０，０］から当該キューブＣのｙ軸に沿ってｙの値が負となる方向に伸びる方位角ベクトルＭＶ、換言すれば移動方向ベクトルＭＶが空間内でどちらの方位を向いているかを規定する。なお、方位角の数値が与えられていないキューブＣは、その方位角ベクトルＭＶが真北に向かって伸びる方向を向くものとする。つまり、キューブＣの方位角を無指定とすることは、キューブＣの方位角を０°に設定することに等しい。経路点データ格納部１０２は、ある移動経路ＲＯに沿って移動する移動体Ｍ（を模擬するキューブＣ）に関する上記の情報を、当該移動経路ＲＯを識別する識別子に関連づけて格納する。
【００５１】
経路点データとして、各移動経路ＲＯに沿って移動する移動体Ｍの色等の情報を追加的に付与しても構わない。
【００５２】
標識データ格納部１０３は、メインメモリ１ｂ若しくは補助記憶デバイス１ｃの所要の記憶領域を利用し、空間内を移動する移動体Ｍの移動速度または移動方向ＭＶに影響を及ぼす標識オブジェクトＳＯの位置座標、及び当該標識オブジェクトＳＯから所定距離の範囲内に接近した移動体Ｍに対して与える移動速度または移動方向ＭＶに関する指令の内容を含む標識データを格納する。
【００５３】
標識オブジェクトＳＯに関して詳述する。図９や図１２に示すように、標識オブジェクトＳＯは、移動体Ｍの移動経路ＲＯまたはその付近に設けられ、移動経路ＲＯに沿って移動する移動体Ｍまたはその搭乗者によって当該標識オブジェクトＳＯの存在が検知若しくは認識されたときに、移動体Ｍの移動速度及び／または移動方向ＭＶを変化させるものである。標識オブジェクトＳＯはいわば、現実世界における信号機や道路標識のような作用を営む。標識オブジェクトＳＯの種類には、時間が経過してもその状態が遷移しない（常に一定の状態をとり続ける）「一時停止標識」、「速度標識」及び「方位標識」と、時間の経過に伴いその状態が刻々と遷移する「交差標識」とが存在する。
【００５４】
一時停止標識は、移動体Ｍを指定した時間一時停止させ、その指定時間が経過した後に再発進させるための標識オブジェクトＳＯである。一時停止標識に接近してこれを検知若しくは認識した移動体Ｍは、同一時停止標識により指令された時間一時停止し、しかる後に一時停止前の移動方向ＭＶに向けて再発進、一時停止前の移動速度まで再加速する。
【００５５】
速度標識は、移動体Ｍの移動速度を指定した速度まで減速または加速させる。速度標識に接近してこれを検知若しくは認識した移動体Ｍは、移動方向ＭＶを保ちながら、同速度標識により指令された速度まで減速し、または加速する。
【００５６】
方位標識は、移動体Ｍの移動方向ＭＶを指定した方向に変位させる。速度標識に接近してこれを検知若しくは認識した移動体Ｍは、移動速度を保ちながら、同方位標識により指令された方向まで移動方向ＭＶを変位させる。
【００５７】
交差標識は、少なくとも二つの状態をとり得る。図９に示す例では、一つの交差標識が、（ｉ）の状態と、（ii）の状態とを交互にとる。この交差標識は、ある移動経路ＲＯと他の移動経路ＲＯとが交わる交差点の部位に設けられ、前者の移動経路ＲＯに沿って移動する移動体Ｍと後者の移動経路ＲＯに沿って移動する移動体Ｍとが衝突しないように両者の交通を整理する役割を担う。（ｉ）の状態では、南北（図中、上下）方向に伸びる移動経路ＲＯに沿って移動する移動体Ｍの移動を許容する一方、東西（図中、左右）方向に延びる移動経路ＲＯに沿って移動する移動体Ｍの移動を制止する。移動が制止される移動体Ｍの移動速度は、０となる。翻って、（ii）の状態では、南北方向に伸びる移動経路ＲＯに沿って移動する移動体Ｍの移動を制止する一方、東西方向に延びる移動経路ＲＯに沿って移動する移動体Ｍの移動を許容する。（iii）の状態は、（ｉ）の状態から（ii）の状態に切り替わる際、または（ii）の状態から（ｉ）の状態に切り替わる際のインターバルの状態であって、南北方向に伸びる移動経路ＲＯに沿って移動する移動体Ｍの移動と、東西方向に延びる移動経路ＲＯに沿って移動する移動体Ｍの移動とをともに制止する。
【００５８】
図９に示した例においては、標識オブジェクトＳＯにおける着色された部分が青信号を模擬し、着色されていない部分が赤信号を模擬している。移動体Ｍの移動方向ＭＶに沿った前方において、移動体Ｍから見て着色されていない部分よりも着色されている部分の方が手前側に位置しているとき、当該移動体Ｍの移動は当該交差標識によっては制止されない。逆に、移動体Ｍの移動方向ＭＶに沿った前方において、移動体Ｍから見て着色されている部分よりも着色されていない部分の方が手前側に位置しており、移動体Ｍからその着色されていない部分までの距離が一定の範囲内にあるとき、当該移動体Ｍによって当該交差標識が検知若しくは認識され、その帰結として当該移動体Ｍの移動は当該交差標識によって制止されることとなる。
【００５９】
図１０に示すように、本実施形態では、標識データ格納部１０３が、空間内に設定される個々の標識オブジェクトＳＯ毎に、当該標識オブジェクトＳＯの種類、当該標識オブジェクトＳＯの位置座標［緯度，経度］、その有効桁数、当該標識オブジェクトＳＯが移動体Ｍに対して与える指令の内容を規定する情報、及び移動体Ｍ（または、その搭乗者）が当該標識オブジェクトＳＯを検知（または、認識）する距離ＳＲを、当該標識オブジェクトＳＯを識別する識別子に関連づけて格納する。
【００６０】
標識オブジェクトＳＯが一時停止標識である場合、当該標識オブジェクトＳＯが移動体Ｍに対して与える指令の内容には、移動体Ｍの一時停止の時間の長さの値が含まれる。標識オブジェクトＳＯが速度標識である場合、当該標識オブジェクトＳＯが移動体Ｍに対して与える指令の内容には、移動体Ｍの移動速度の値が含まれる。この移動速度の値は、絶対的な速度値（向後移動体Ｍがとるべき移動速度自体）であることもあれば、相対的な速度値（向後移動体Ｍがどれだけ移動速度を増加または減少させるべきか、その速度の変化量。例えば、相対値での時速−１０ｋｍは、移動体Ｍを現在の移動速度を基準として時速１０ｋｍ分減速させることを意味し、その結果として移動体Ｍの移動速度が時速何ｋｍになるのかは減速前の移動速度に依存する）であることもある。
【００６１】
標識オブジェクトＳＯが方位標識である場合、当該標識オブジェクトＳＯが移動体Ｍに対して与える指令の内容には、移動体Ｍが向かうべき方向を指し示すベクトルの方位角及び／または仰俯角の値が含まれる。この方位角及び／または仰俯角の値は、絶対的な値（向後移動体Ｍがとるべき方向自体の方位角及び／または仰俯角）であることもあれば、相対的な値（向後移動体Ｍがどれだけ移動方向ＭＶを変化させるべきか、その方向の変化量。例えば、相対値での方位角９０°は、移動体Ｍを現在の移動方向ＭＶを基準として９０°右方に旋回させることを意味し、その結果として移動体Ｍが東西南北どの方向に向かうことになるのかは変位前の移動方向ＭＶに依存する）であることもある。
【００６２】
特殊な方位標識として、当該方位標識よりも上方に位置する移動体Ｍに対してのみ影響を及ぼす方位標識や、当該方位標識よりも下方に位置する移動体Ｍに対してのみ影響を及ぼす方位標識を設定することも可能である。例えば、当該方位標識よりも高位置を飛行ないし浮遊している移動体Ｍの移動方向ＭＶを下向きに変位させ（移動方向ＭＶの仰俯角を減少させ）て当該移動体Ｍを降下させる、あるいは、当該方位標識よりも低位置を飛行ないし浮遊している移動体Ｍの移動方向ＭＶを上向きに変位させ（移動方向ＭＶの仰俯角を増加させ）て当該移動体Ｍを上昇させるようなことが考えられる。
【００６３】
標識オブジェクトＳＯが交差標識である場合には、とり得る状態とその状態が継続する時間の長さ、そしてその状態と次に遷移する状態との間のインターバル状態をとる時間の長さを、とり得る状態順に記述する。例えば、ある交差標識に係る標識データに含まれる、［Ｓ１，２０，３，Ｓ２，３０，３］という数値群は、当該交差標識が（ｉ）の状態を２０秒間とった後、３秒間のインターバルの間（iii）の状態をとり、次に当該交差標識が（ii）の状態を３０秒間とった後、３秒間のインターバルの間（iii）の状態をとり、以後これらの状態遷移を反復することを意味する。
【００６４】
交差標識がとる状態を、より複雑に定義することも可能である。例えば、図１１に示すように、一つの交差標識について八つの状態を観念し、各状態をそれぞれ８ビットの数値で表現することとすると、図１１の（ａ）の状態は００００００００という値によって表され、（ｅ）の状態は０００１００００という値によって表される。そして、図１１に示している八つの状態にそれぞれ割り当てられた８ビットの値の和をとることで、八つの状態のうちの二つ以上を組み合わせた状態を表現することができる。例えば、図９の（ｉ）の状態は、図１１の（ａ）、（ｄ）、（ｅ）及び（ｈ）の組み合わせであるから、１００１１００１という数値で表される。交差標識に係る標識データ［Ｓ１，２０，３，Ｓ２，３０，３］は、［１００１１００１，２０，３，０１１００１１０，３０，３］と書き換えることができる。
【００６５】
また、上記の八つの状態表現を利用すれば、時差式信号機のようなものを具現することも可能となる。図１２に示すように、（iv）、（ｖ）、（vi）の三つの状態を順次とり（（vi）の状態をとった後は（iv）の状態に復帰する）、状態（ｖ）と状態（vi）との間、及び状態（vi）と状態（iv）との間にインターバルの状態（vii）をとる交差標識は、［０１１００１１０，３０，０，０１１０００００，２０，３，０００１１０００，３０，３］というような形で表現することができる。（iv）の状態から（ｖ）の状態に遷移する際には、インターバルの状態（vii）をとらないので、状態（iv）についてのインターバルの時間の値は０となる。
【００６６】
図１０に示しているように、個々の標識オブジェクトＳＯに対して、当該標識オブジェクトＳＯの平面寸法、即ち水平なｘ軸方向にそった寸法、及びｘ軸と直交する水平なｙ軸方向に沿った寸法の各々を直接指定する数値を付与することもできる。なお、平面寸法の数値が与えられていない標識オブジェクトＳＯは、当該標識オブジェクトＳＯが所在するグリッドの位置座標の緯度及び経度の有効桁数に応じて定まるｘ軸方向寸法（経度方向寸法）及びｙ軸方向寸法（緯度方向寸法）を有する。つまり、標識オブジェクトＳＯの位置座標の緯度及び経度の有効桁数は、当該グリッドを占有する標識オブジェクトＳＯの平面寸法を間接的に指示する。
【００６７】
また、図１０に示しているように、個々の標識オブジェクトＳＯに対して、その向きを定義する方位角の情報を付与することもできる。キューブＣの方位角ＣＶ、ＭＶと同様、標識オブジェクトＳＯの方位角は、標識オブジェクトＳＯの特定の一つの頂点［ｘ，ｙ］＝［０，０］から当該標識オブジェクトＳＯのｙ軸に沿ってｙの値が負となる方向に伸びる方位角ベクトルが空間内でどちらの方位を向いているかを規定する。なお、方位角の数値が与えられていない標識オブジェクトＳＯは、その標識オブジェクトＳＯが真北に向かって伸びる方向を向くものとする。つまり、標識オブジェクトＳＯの方位角を無指定とすることは、標識オブジェクトＳＯの方位角を０°に設定することに等しい。
【００６８】
標識オブジェクトＳＯの検出距離ＳＲは、移動体Ｍが当該標識オブジェクトＳＯを検出する距離を規定する。移動体Ｍの移動速度または移動方向ＭＶに影響を及ぼす標識オブジェクトＳＯは、移動体Ｍが検出している（その程度には移動体Ｍに近い）ものに限られる。移動体Ｍが検出しない（ほど離れている）標識オブジェクトＳＯは、当該移動体Ｍの移動速度及び移動方向ＭＶに影響を及ぼさない。移動体Ｍが標識オブジェクトＳＯを検出する条件は、次の通りである。即ち、図１３に示すように、移動体Ｍを模擬するキューブＣ内の特定の位置、例えば特定の一つの頂点Ｐ２［ｘ，ｙ］＝［０，０］から当該移動体Ｍの移動方向ＭＶに沿って前方をみたときの所要の視野角Ｍαの範囲内、なおかつ当該特定位置からの距離が検出距離ＳＲ以内の領域を検出可能領域として設定し、この検出可能領域内に少なくとも一部が入り込んでいる標識オブジェクトＳＯを、移動体Ｍが検出する標識オブジェクトＳＯとする。検出可能領域を規定する視野角Ｍαの大きさは、例えば、移動体Ｍの移動方向ＭＶと直交する左右方向にそれぞれ±１０°まで（即ち、２Ｍα＝２０°）とする。
【００６９】
検出可能領域を規定する検出距離ＳＲは、標識オブジェクトＳＯに係る標識データに含まれる値であり、検出可能領域は標識オブジェクトＳＯ毎に拡縮し得る。検出距離が長い標識オブジェクトＳＯは、移動体Ｍにとって遠方からでも検出することが容易な標識オブジェクトＳＯであり、検出距離が短い標識オブジェクトＳＯは、移動体Ｍにとって接近しないと検出することができない標識オブジェクトＳＯであると言える。
【００７０】
標識オブジェクトＳＯが交差標識である場合、移動体Ｍを模擬するキューブＣから見て、交差標識の着色されていない部分よりも着色されている部分の方が手前側に位置しており、その着色されている部分が同キューブＣの特定位置を起点とする検出可能領域内に少しでも入り込んでいれば、当該交差標識によって移動体Ｍの移動が許可される。これに対し、移動体Ｍを模擬するキューブＣから見て、交差標識の着色されている部分よりも着色されていない部分の方が手前側に位置しており、その着色されていない部分が同キューブＣの特定位置を起点とする検出可能領域内に少しでも入り込んでいれば、当該交差標識によって移動体Ｍの移動が制止される。
【００７１】
標識オブジェクトＳＯを、物体や移動体Ｍを模擬するキューブＣと同様の直方体状の三次元立体と見なすこともできる。この場合における標識オブジェクトＳＯは、平面寸法、即ち水平なｘ軸方向にそった寸法、及びｘ軸と直交する水平なｙ軸方向に沿った寸法とともに、ｘ軸及びｙ軸の双方に直交するｚ軸方向に沿った高さ寸法をも有する。図１０に示すように、直方体状の標識オブジェクトＳＯについては、標識データとして、平面寸法とともに高さ寸法や地上高の情報を付与する。標識オブジェクトＳＯの地上高は、当該標識オブジェクトＳＯの下面の高さ位置（標高または海抜であることがある）を表す。地下トンネル内を移動する移動体Ｍの移動速度や移動方向ＭＶを制御するための標識オブジェクトＳＯは地下に所在し、その標識オブジェクトＳＯの地上高の値は負値をとることがある。空中を飛行ないし浮遊する移動体Ｍの移動速度や移動方向ＭＶを制御するための標識オブジェクトＳＯは空中に所在し、その標識オブジェクトＳＯの比較的大きな正の値となり得る。
【００７２】
その上で、図１４に示すように、移動体Ｍを模擬するキューブＣの特定位置を起点とする検出可能範囲を上下にも拡張して三次元化することが考えられる。具体的には、移動体Ｍを模擬するキューブＣ内の特定の位置、例えば特定の一つの頂点Ｐ２［ｘ，ｙ，ｚ］＝［０，０，０］から当該移動体Ｍの移動方向ＭＶに沿って前方をみたときの所要の水平方向に沿った視野角Ｍα及び鉛直方向に沿った視野角Ｍβの範囲内、なおかつ当該特定位置からの水平距離（高度差を無視した距離）が検出距離ＳＲ以内の領域を検出可能領域として設定し、この検出可能領域内に少なくとも一部が入り込んでいる標識オブジェクトＳＯを、移動体Ｍが検出する標識オブジェクトＳＯとする。検出可能領域を規定する視野角Ｍβの大きさは、例えば、移動体Ｍの移動方向ＭＶと直交する上下方向にそれぞれ±１０°まで（即ち、２Ｍβ＝２０°）とする。このようなものであれば、地上を走行する移動体Ｍに影響を及ぼすが空中を飛行ないし浮遊する移動体Ｍには影響を及ぼさない標識オブジェクトＳＯや、空中を飛行ないし浮遊する移動体Ｍに影響を及ぼすが地上を走行する移動体Ｍには影響を及ぼさない標識オブジェクトＳＯを具現することができる。
【００７３】
空間内に設置される標識オブジェクトＳＯには、空間内に存在するあらゆる移動体Ｍに対して影響を及ぼすものと、特定の移動経路ＲＯに沿って移動する移動体Ｍに対してのみ影響を及ぼす（それ以外の移動経路ＲＯに沿って移動する移動体Ｍに対しては影響を及ぼさない）ものとがある。後者の標識オブジェクトＳＯが特定の移動経路ＲＯに沿って移動する移動体Ｍの検出可能範囲に入った場合、当該標識オブジェクトＳＯにより当該移動体Ｍの移動速度または移動方向ＭＶが変化する。だが、後者の標識オブジェクトＳＯが特定の移動経路ＲＯ以外の移動経路ＲＯに沿って移動する移動体Ｍの検出可能範囲に入ったとしても、当該標識オブジェクトＳＯにより当該移動体Ｍの移動速度及び移動方向ＭＶは変化しない。
【００７４】
標識データ格納部１０３に格納する標識データにおいて、特定の移動経路ＲＯに沿って移動する移動体Ｍに対してのみ影響を及ぼす標識オブジェクトＳＯについては、当該標識オブジェクトＳＯが影響を及ぼす対象となる移動経路ＲＯを識別する識別子が追加される。標識データに移動経路ＲＯを識別する識別子が追加されていない標識オブジェクトＳＯは、移動経路ＲＯを問わず移動体Ｍ一般に対して影響を及ぼす標識オブジェクトＳＯとなる。
【００７５】
移動体データ格納部１０４は、メインメモリ１ｂ若しくは補助記憶デバイス１ｃの所要の記憶領域を利用し、少なくとも、空間内を移動経路ＲＯに沿って移動する複数の移動体Ｍの各々について、その現在の位置座標、移動速度及び移動方向ＭＶを含む移動体データを格納する。
【００７６】
図１５に示すように、本実施形態では、移動体データ格納部１０４が、個々の移動体Ｍを模擬するキューブＣ毎に、当該キューブＣ（または、これが模擬する移動体Ｍ）が移動するべき経路ＲＯを識別する識別子、当該キューブＣの現在の位置座標［緯度，経度］とその有効桁数、当該キューブＣの目標移動速度及び目標移動方向の方位角、並びに現在の移動速度及び現在の移動方向ＭＶの方位角の情報を、当該キューブＣを識別する識別子に関連づけて格納する。
【００７７】
移動体Ｍを模擬するキューブＣの現在位置は、当該キューブ内の特定の一つの頂点Ｐ２［ｘ，ｙ，ｚ］＝［０，０，０］の位置に等しい。
【００７８】
目標移動速度は、移動体Ｍが通過する経路点ＲＰに設定されたコマンドや、移動体Ｍが接近した標識オブジェクトＳＯ（特に、速度標識）によって与えられる。目標移動方向は、原則として、移動体Ｍが移動経路ＲＯに沿ったある経路点ＲＰから次の経路点ＲＰに向かって移動する際の、それら経路点の位置座標に基づいて決定される。具体的には、既に到達したある経路点とこれから向かう次の経路点とを結ぶ線分に平行なベクトル、または移動体Ｍの現在位置と次の経路点とを結ぶ線分に平行なベクトルが、目標移動方向となる。但し、目標移動方向は、移動体Ｍが通過する経路点に設定されたコマンドや、移動体Ｍが接近した標識オブジェクトＳＯ（特に、方位標識）によって与えられることもある。
【００７９】
目標移動速度及び目標移動方向は、移動体Ｍを模擬するキューブＣが達成するべき移動速度及び移動方向である。これに対し、同キューブＣの現在の移動速度及び移動方向ＭＶは、常に目標移動速度及び目標移動方向と合致するとは限られない。例えば、ある経路点に到達した移動体Ｍが、その経路点に設定されたコマンドによって９０°右方に旋回するケースでは、目標移動方向の方位角が瞬時に９０°分変化する一方、現在の移動方向ＭＶの方位角は目標移動方向の変化に追従して徐々に変化し、ある程度の時間を経てはじめて目標移動方向の方位角と一致する。同様に、現在の移動速度も、目標移動速度の変化に追従して徐々に加速または減速することとなる。また、現在の移動速度は、移動体Ｍが接近した標識オブジェクトＳＯ（特に、一時停止標識や交差標識）により影響を受けて減速することがあり、さらに、自身の前方に存在する他の移動体Ｍを模擬するキューブＣとの間の距離が一定以下に縮まったときに減速することもある。
【００８０】
加えて、図１５に示しているように、各移動体Ｍを模擬する各キューブＣに対して、その現在の地上高の情報を付与することもあり得る。キューブＣの地上高は、当該キューブＣが模擬している移動体Ｍの下面の高さ位置（標高または海抜であることがある）を表す。移動体Ｍが地下トンネル内を移動するような場合には、これを模擬するキューブＣの地上高の値が負値をとることがある。また、空中を飛行ないし浮遊する飛翔体を模擬するキューブＣの地上高の値は、比較的大きな正の値となり得る。
【００８１】
並びに、各移動体Ｍを模擬する各キューブＣに対して、目標移動方向及び現在の移動方向ＭＶの方位角とともに、目標移動方向及び現在の移動方向ＭＶの仰俯角の情報を付与することもあり得る。移動方向を方位角及び仰俯角の両方で表現することで、登坂路上または降坂路上を走行する移動体Ｍの上り下りを表現することが可能となり、飛翔体である移動体Ｍの上昇または下降を表現することも可能となる。
【００８２】
シミュレート部１０５は、経路点データ格納部１０２に格納している経路点データ、標識データ格納部１０３に格納している標識データ、及び移動体データ格納部１０４に格納している移動体データを参照して、空間内を移動する複数の移動体Ｍの各々の単位時間毎の位置座標、移動速度及び移動方向ＭＶを反復的に演算し、演算した各移動体Ｍの新たな位置座標、移動速度及び移動方向ＭＶを移動体データ格納部１０４に書き込む。
【００８３】
経路点データにより規定される経路点の位置座標、標識データにより規定される標識オブジェクトＳＯの位置座標、移動帯データにより規定される移動体Ｍの位置座標はそれぞれ、緯度及び経度を含んでいる。ここで、それぞれの位置座標が緯度及び経度で表される二つの地点の間の距離である測地線長、及びその一方の地点から他方の地点を見たときの方位角の計算方法の具体例を示す。以下に述べる計算方法は、国土地理院ウェブサイト（http://vldb.gsi.go.jp/sokuchi/surveycalc/surveycalc/bl2stf.html）で紹介されているものである。
【００８４】
一方の地点の緯度をφ1、経度をＬ1とおき、他方の地点の緯度をφ2、経度をＬ2とおく。但し、北緯を正、南緯を負、東経を正、西経を（３６０°−経度）とする。また、Ｌ＝Ｌ2−Ｌ1が負値となる場合には、一方の地点の緯度をφ2、経度をＬ2とし、他方の地点の緯度をφ1、経度をＬ1として、Ｌを正値化する。並びに、地球楕円体（準拠楕円体）の長半径をａ、扁平率をｆとおく。
Ｌ＝Ｌ2−Ｌ1；  Ｌ’＝１８０°−Ｌ  （但し、０°≦Ｌ≦１８０°）
Δ＝φ2−φ1；  Σ＝φ1＋φ2
ｕ1＝ｔａｎ-1［（１−ｆ）ｔａｎφ1］；  ｕ2＝ｔａｎ-1［（１−ｆ）ｔａｎφ2］
Σ’＝ｕ1＋ｕ2；  Δ’＝ｕ2−ｕ1  （但し、−１８０°≦Σ’≦１８０°、−１８０°≦Δ’≦１８０°）
ξ＝ｃｏｓ（Σ’／２）；  ξ’＝ｓｉｎ（Σ’／２）
η＝ｓｉｎ（Δ’／２）；  η’＝ｃｏｓ（Δ’／２）
ｘ＝ｓｉｎｕ1ｓｉｎｕ2；  ｙ＝ｃｏｓｕ1ｃｏｓｕ2
ｃ＝ｙｃｏｓＬ＋ｘ
ε＝［ｆ（２−ｆ）］／［（１−ｆ）2］
以降、ｃの値に応じて一部計算式が異なり、ｃ≧０が成立する場合をゾーン１、０＞ｃ≧−ｃｏｓ（３°ｃｏｓｕ1）が成立する場合をゾーン２、ｃ＜−ｃｏｓ（３°ｃｏｓｕ1）が成立する場合をゾーン３とする。
θの初期値θ(0)について、ゾーン１ではθ(0)＝Ｌ（１＋ｆｙ）とし、ゾーン２ではθ(0)＝Ｌ’とする。
ゾーン３では、Σ＝０であるゾーン３（ａ）と、Σ≠０であるゾーン３（ｂ）とで計算方法が分かれる。
Ｒ＝ｆπｃｏｓ2ｕ1［１−（１／４）ｆ（１＋ｆ）ｓｉｎ2ｕ1＋（３／１６）ｆ2ｓｉｎ4ｕ1］
ｄ1＝Ｌ’ｃｏｓｕ1−Ｒ；  ｄ2＝｜Σ’｜＋Ｒ
ｑ＝Ｌ’／（ｆπ）；  ｆ1＝（１／４）ｆ［１＋（１／２）ｆ］；  γ0＝ｑ＋ｆ1ｑ−ｆ1ｑ3
ゾーン３（ａ）でのθ(0)の計算は、
Ａ0＝ｔａｎ-1（ｄ1／ｄ2）  （但し、−９０°≦Ａ0≦９０°）
Ｂ0＝ｓｉｎ-1［Ｒ／√（ｄ12＋ｄ22）］  （但し、０°≦Ｂ0≦９０°）
ψ＝Ａ0＋Ｂ0；  ｊ＝γ0／ｃｏｓｕ1
ｋ＝（１＋ｆ1）｜Σ’｜（１−ｆｙ）／（ｆπｙ）；  ｊ1＝ｊ／（１＋ｋｓｅｃψ）
ψ’＝ｓｉｎ-1ｊ1  （但し、０°≦ψ’≦９０°）
ψ’’＝ｓｉｎ-1（ｊ1ｃｏｓｕ1／ｃｏｓｕ2）  （但し、０°≦ψ’’≦９０°）
θ(0)＝２ｔａｎ-1｛ｔａｎ［（ψ’＋ψ’’）／２］ｓｉｎ（｜Σ’｜／２）／ｃｏｓ（Δ’／２）｝
他方、ゾーン３（ｂ）では、ｄ1＞０の場合にθ(0)＝Ｌ’とする。ゾーン３（ｂ）でｄ1≦０である場合の測地線長及び方位角の計算に関しては、別途述べる。
（ゾーン３（ｂ）でｄ1≦０である場合を除く）下記θの算出において、一回目の演算ではθ(n)≡θ(0)とし、二回目以降の演算ではθ(n+1)≡θ(n)とする。
ゾーン１では、ｇ＝√［η2ｃｏｓ2（θ(n)／２）＋ξ2ｓｉｎ2（θ(n)／２）］
ゾーン１以外では、ｇ＝√［η2ｓｉｎ2（θ(n)／２）＋ξ2ｃｏｓ2（θ(n)／２）］
ゾーン１では、ｈ＝√［η’2ｃｏｓ2（θ(n)／２）＋ξ’2ｓｉｎ2（θ(n)／２）］
ゾーン１以外では、ｈ＝√［η’2ｓｉｎ2（θ(n)／２）＋ξ’2ｃｏｓ2（θ(n)／２）］
σ＝２ｔａｎ-1（ｇ／ｈ）；  Ｊ＝２ｇｈ；  Ｋ＝ｈ2−ｇ2
γ＝（ｙ／Ｊ）ｓｉｎθ(n)；  Γ＝１−γ2；  ζ＝ΓＫ−２ｘ；  ζ’＝ζ＋ｘ
Ｄ＝（１／４）ｆ（１＋ｆ）−（３／１６）ｆ2Γ
Ｅ＝（１−ＤΓ）ｆγ｛σ＋ＤＪ［ζ＋ＤＫ（２ζ2−Γ2）］｝
ゾーン１では、Ｆ＝θ(n)−Ｌ−Ｅ
ゾーン１以外では、Ｆ＝θ(n)−Ｌ’＋Ｅ
Ｇ＝ｆγ2（１−２ＤΓ）＋ｆζ’（σ／Ｊ）［１−ＤΓ＋（１／２）ｆγ2］＋（１／４）ｆ2ζζ’
θ(n+1)＝θ(n)−Ｆ／（１−Ｇ）
上記を所要回数反復することで、θを求める。その反復的な演算は、｜Ｆ｜＜１０-15となるまで続行することが好ましい。
（ゾーン３（ｂ）でｄ1≦０である場合を除く）測地線長ｓは、
ｎ0＝εΓ／［√（１＋εΓ）＋１］2；  Ａ＝（１＋ｎ0）［１＋（５／４）ｎ02］
Ｂ＝ε［１−（３／８）ｎ02］／［√（１＋εΓ）＋１］2
ｓ＝（１−ｆ）ａＡ（σ−ＢＪ｛ζ−（１／４）Ｂ［Ｋ（Γ2−２ζ2）−（１／６）Ｂζ（１−４Ｋ2）（３Γ2−４ζ2）］｝）
（ゾーン３（ｂ）でｄ1≦０である場合を除く）移動体Ｍの位置から見た対象の位置の方位角αは、
ゾーン１では、α＝ｔａｎ-1［ξｔａｎ（θ／２）／η］−ｔａｎ-1［ξ’ｔａｎ（θ／２）／η’］
ゾーン１以外では、α＝ｔａｎ-1［η’ｔａｎ（θ／２）／ξ’］−ｔａｎ-1［ηｔａｎ（θ／２）／ξ］
但し、一方の地点の緯度及び経度を（φ2，Ｌ2）とし、他方の地点の緯度及び経度を（φ1，Ｌ1）としているのであれば、
ゾーン１では、α＝１８０°＋ｔａｎ-1［ξｔａｎ（θ／２）／η］＋ｔａｎ-1［ξ’ｔａｎ（θ／２）／η’］
ゾーン１以外では、α＝３６０°−ｔａｎ-1［η’ｔａｎ（θ／２）／ξ’］−ｔａｎ-1［ηｔａｎ（θ／２）／ξ］
【００８５】
なお、ゾーン３（ｂ）でｄ1＝０である場合の測地線長ｓ及び方位角αは、
Γ＝ｓｉｎ2ｕ1
ｎ0＝εΓ／［√（１＋εΓ）＋１］2；  Ａ＝（１＋ｎ0）［１＋（５／４）ｎ02］
ｓ＝（１−ｆ）ａＡπ
α＝９０°
但し、一方の地点の緯度及び経度を（φ2，Ｌ2）とし、他方の地点の緯度及び経度を（φ1，Ｌ1）としているのであれば、α＝２７０°
【００８６】
また、ゾーン３（ｂ）でｄ1＜０である場合の測地線長ｓ及び方位角αは、下記に則って算出する。一回目の演算ではγ(n)≡γ(0)とし、二回目以降の演算ではγ(n+1)≡γ(n)として、
Γ＝１−γ(n)2；  Ｄ＝（１／４）ｆ（１＋ｆ）−（３／１６）ｆ2Γ
γ(n+1)＝ｑ／（１−ＤΓ）
上記を所要回数反復することで、Γ及びＤを求める。その反復的な演算は、｜γ(n)−γ(n-1)｜＜１０-15となるまで続行することが好ましい。そして、
ｎ0＝εΓ／［√（１＋εΓ）＋１］2；  Ａ＝（１＋ｎ0）［１＋（５／４）ｎ02］
ｓ＝（１−ｆ）ａＡπ
ｍ＝１−ｑｓｅｃｕ1；  ｎ＝ＤΓ／（１−ＤΓ）；  ｗ＝ｍ−ｎ＋ｍｎ
ｗ≦０のとき、α＝９０°
ｗ＞０のとき、α＝９０°−２ｓｉｎ-1√（ｗ／２）
但し、一方の地点の緯度及び経度を（φ2，Ｌ2）とし、他方の地点の緯度及び経度を（φ1，Ｌ1）としているのであれば、
ｗ≦０のとき、α＝２７０°
ｗ＞０のとき、α＝２７０°＋２ｓｉｎ-1√（ｗ／２）
測地線長及び方位角の計算方法は、上掲のものに限定されないことは言うまでもない。より簡易な（計算量の少ない、だが誤差が生じ得る）計算方法として、Ｖｉｎｃｅｎｔｙの式やＨｕｂｅｎｙの式等が知られており、それらを採用しても構わない。あるいは、与えられた地域［緯度，経度］における単位緯度あたりの緯度方向寸法及び単位経度あたりの経度方向寸法を求め、一つのグリッドの平面寸法を一意に決定してしまってもよい。例えば、日本国内では、緯度０．０００００１°が０．１１ｍ、経度０．０００００１°が０．０９ｍであると定めた上で、測地線長及び方位角を簡易に計算することが考えられる。
【００８７】
図１６に、本移動体制御システムのシミュレート部１０５の機能を具現するコンピュータ１がプロラムに従い実行するシミュレーション処理の手順の概要を示している。シミュレート部１０５は、まず、経路点データに基づき、当該経路点データが定義する各移動経路ＲＯ毎に、その移動経路ＲＯに沿って移動する新たな移動体Ｍを適時に生成して、その新たな移動体Ｍを識別する識別子、当該移動体Ｍの位置座標、目標移動速度及び目標移動方向を移動体データとして移動体データ格納部１０４に書き込む（ステップＳ１）。
【００８８】
次に、シミュレート部１０５は、移動体データに基づき、空間内に存在している各移動体Ｍの現在の位置座標を知得するとともに、経路点データ及び標識データに基づき、空間内に存在している経路点ＲＰの位置座標、各標識オブジェクトＳＯの位置座標、寸法及びをそれぞれ知得する。そして、各移動体Ｍが何れかの経路点ＲＰまたはその近傍に到達した場合、当該経路点ＲＰに係る経路点データに定義されている、当該経路点ＲＰまたはその近傍に到達した移動体Ｍに対して与えるべきコマンドを参照し、そのコマンドに従って当該移動体Ｍの目標移動速度及び／または目標移動方向を変更、変更後の目標移動速度及び／または目標移動方向を当該移動体Ｍに係る移動体データとして移動体データ格納部１０４に書き込む。並びに、各移動体Ｍの検出可能範囲内に何れかの標識オブジェクトＳＯ、特に速度標識または方位標識が入り込んだ場合、当該速度標識または方位標識に係る標識データに定義されている、当該速度標識または方位標識を検出した移動体Ｍに対して与えるべき指令の内容を参照し、その指示に従って当該移動体Ｍの目標移動速度及び／または目標移動方向を変更、変更後の目標移動速度及び／または目標移動方向を当該移動体Ｍに係る移動体データとして移動体データ格納部１０４に書き込む（ステップＳ２）。
【００８９】
なお、ステップＳ２において、移動体Ｍが到達した経路点ＲＰに設定されているコマンドが、当該移動体Ｍを移動経路上または空間内から除去する旨のものである場合には、当該移動体Ｍに係る移動帯データ、即ち当該移動体Ｍを識別する識別子、当該移動体Ｍの位置座標、目標移動速度及び目標移動方向、並びに現在の移動速度及び現在の移動方向ＭＶを、移動体データ格納部１０４から消去する。
【００９０】
続いて、シミュレート部１０５は、移動体データに基づき、各移動体Ｍの目標移動速度と現在の移動速度との偏差を縮小するように現在の移動速度を所定量増減させ、その結果の現在の移動速度を当該移動体Ｍに係る移動体データとして移動体データ格納部１０４に書き込む。並びに、各移動体Ｍの目標移動方向と現在の移動方向ＭＶとの偏差を縮小するように現在の移動方向ＭＶを所定量変位させ、その結果の現在の移動方向ＭＶを当該移動体Ｍに係る移動体データとして移動体データ格納部１０４に書き込む（ステップＳ３）。
【００９１】
また、シミュレート部１０５は、移動体データに基づき、空間内に存在している各移動体Ｍの現在の位置座標を知得するとともに、標識データに基づき、空間内に存在している各標識オブジェクトＳＯの位置座標及び寸法をそれぞれ知得する。そして、各移動体Ｍの検出可能範囲内に何れかの標識オブジェクトＳＯ、特に一時停止標識または交差標識が入り込んだ場合、当該一時停止標識または交差標識に係る標識データに定義されている、当該一時停止標識または交差標識を検出した移動体Ｍに対して与えるべき指令の内容を参照し、その指示に従って当該移動体Ｍの現在の移動速度を変更、変更後の現在の移動速度を当該移動体Ｍに係る移動体データとして移動体データ格納部１０４に書き込む（ステップＳ４）。既に述べた通り、交差標識は、時間の経過に伴いその状態が刻々と遷移する。従って、シミュレート部１０５は、移動体Ｍが交差標識を検出した場合、その交差標識の現在の状態に応じて当該移動体Ｍの現在の移動速度を変更する必要が否かを判定し、変更する必要があると判定したときに限り、変更後の現在の移動速度を当該移動体Ｍに係る移動体データとして移動体データ格納部１０４に書き込む。
【００９２】
さらに、シミュレート部１０５は、移動体データ及び経路点データに基づき、空間内に存在している各移動体Ｍの現在の位置座標及び各移動体Ｍを模擬するキューブＣの寸法を知得する。そして、ある移動体Ｍが当該移動体Ｍの移動方向ＭＶに沿って前方に存在する他の移動体Ｍから所定距離ＭＲの範囲内に接近している場合には、そうでない場合と比較して当該移動体Ｍの現在の移動速度を減少させ、その結果の現在の移動速度を当該移動体Ｍに係る移動体データとして移動体データ格納部１０４に書き込む（ステップＳ５）。移動体Ｍの移動速度の減少は、移動体Ｍの移動速度を０として当該移動体Ｍを一時的に停止させることを含む。これは、ある移動体Ｍが他の移動体Ｍに追突してしまうことを回避することを意味している。ステップＳ５では、移動体Ｍを模擬するキューブＣ内の特定の位置、例えば特定の一つの頂点Ｐ２［ｘ，ｙ］＝［０，０］から当該移動体Ｍの移動方向ＭＶに沿って前方をみたときの所要の視野角Ｍαの範囲内、なおかつ当該特定位置からの距離が所定距離以内の領域を衝突危険領域として設定する。あるいは、移動体Ｍを模擬するキューブＣ内の特定の位置、例えば特定の一つの頂点Ｐ２［ｘ，ｙ，ｚ］＝［０，０，０］から当該移動体Ｍの移動方向ＭＶに沿って前方をみたときの所要の水平方向に沿った視野角Ｍα及び鉛直方向に沿った視野角Ｍβの範囲内、なおかつ当該特定位置からの水平距離が所定距離以内の領域を衝突危険領域として設定する。この衝突危険領域は、移動体Ｍが標識オブジェクトを検出する検出可能範囲に類似している。その上で、この衝突危険領域内に他の移動体Ｍを模擬するキューブＣの少なくとも一部が入り込んでいることを条件として、当該移動体Ｍがその前方に存在する他の移動体Ｍから所定距離ＭＲの範囲内に接近していると判断する。
【００９３】
最後に、シミュレート部１０５は、移動体データに基づき、空間内に存在している各移動体Ｍの現在の位置座標、並びに現在の移動速度及び現在の移動方向ＭＶを知得する。そして、各移動体Ｍ毎に、単位時間あたりの移動量、即ち単位時間あたりの移動体Ｍの位置座標の変化量を求め、これに基づいて移動体Ｍの現在の位置座標を変更、その変更後の位置座標を当該移動体Ｍに係る移動体データとして移動体データ格納部１０４に書き込む（ステップＳ６）。
【００９４】
しかして、シミュレート部１０５は、上述のステップＳ１ないしＳ６を反復的に実行することで、空間内での複数の移動体Ｍの各々の移動をシミュレーションする。
【００９５】
出力部１０６は、経路点データ格納部１０２に格納している経路点データ、標識データ格納部１０３に格納している標識データ、及び移動体データ格納部１０４に格納している移動体データを参照して、空間内に存在する移動体Ｍを模擬するキューブＣや移動体Ｍ以外の物体を模擬するキューブＣによって移動体Ｍ及び移動体Ｍ以外の物体を表現した静止画像または動画像を生成する。そして、生成した静止画像または動画像を、ディスプレイ１ｉの画面に表示させ、その静止画像または動画像のデータをメインメモリ１ｂまたは補助記憶デバイス１ｃの所要の記憶領域に格納し、または、本移動体制御システムの主体となるコンピュータ１と電気通信回線を介して通信可能に接続している外部の装置またはコンピュータに向けて送信する。
【００９６】
出力部１０６が生成し出力する静止画像または動画像は、現実の移動体Ｍを含む物体をそれぞれ一または複数のキューブＣにより模擬した場景を描画したものである。図５に示すように、空間内に存在する個々のキューブＣについては、その八つの頂点Ｐ０、Ｐ１、Ｐ２、Ｐ３、Ｐ４、Ｐ５、Ｐ６、Ｐ７の三次元位置座標が既に確定している。キューブＣにおける隣り合う二つの頂点は、キューブＣの稜線により結ばれる。一つのキューブＣは、八つの頂点Ｐ０、Ｐ１、Ｐ２、Ｐ３、Ｐ４、Ｐ５、Ｐ６、Ｐ７とともに十二本の稜線Ｌ０、Ｌ１、Ｌ２、Ｌ３、Ｌ４、Ｌ５、Ｌ６、Ｌ７、Ｌ８、Ｌ９、Ｌ１０、Ｌ１１を有する。
【００９７】
出力部１０６は、まず、現実の物体を模擬する多数のキューブＣが配置される仮想空間をある視点位置Ｖからある視線方向Ｓに沿って見たときに、所要の視野角α、βの範囲内に存在している一または複数のキューブＣを検索する。これは、現実の物体をキューブＣによって模擬した場景を描画する処理を実行するにあたり、描画するべき対象となるキューブＣを選出することに等しい。
【００９８】
視点の位置Ｖを規定する値としては、その緯度及び経度、並びに高さ位置（標高または海抜であることがある）がある。そして、視線の方向Ｓを規定する値としては、視点の位置Ｖから見る方向Ｓのベクトルの方位角及び仰俯角がある。視点の位置Ｖ［緯度，経度，高さ］及び視線の方向Ｓ［方位角，仰俯角］は、予め与えられてメインメモリ１ｂ若しくは補助記憶デバイス１ｃに記憶保持していることもあれば、入力デバイス１ｇを介してその入力を受け付けることもある。あるいは、電気通信回線を介して通信可能に接続している外部の装置またはコンピュータから受信するということもあり得る。さらには、空間内を移動するある移動体Ｍに搭乗している仮想的な搭乗者の視点の位置及び視線の方向を、視点の位置Ｖ及び視線の方向Ｓとすることもある。この仮想的な搭乗者の視点の位置及び視線の方向は、移動体Ｍが経由する経路点ＲＰに設定したコマンドによって指定することが可能である。
【００９９】
図１７ないし図１９に示すように、出力部１０６は、与えられる視点の位置Ｖから、与えられる視線の方向Ｓを見るときに、その視線の方向Ｓと直交する有限の大きさのスクリーンＦに投影され得る一または複数のキューブＣに係る情報を抽出する。スクリーンＦの寸法、換言すれば視野角α、βの大きさは、例えば、視線の方向と直交する上下方向及び左右方向にそれぞれ±２０°まで（即ち、２α＝２β＝４０°）とする。但し、この視野角α、βの大きさは任意であり、視点位置Ｖ及び視線方向Ｓと同様に与えられる不定のものであってもよい。
【０１００】
出力部１０６がキューブＣを検索するにあたり、視点の位置Ｖから無限遠方に位置するキューブＣまでをも検索の対象としても勿論よいが、より好ましくは視点の位置Ｖから検索する距離の範囲Ｒを有限に設定する。一例としては、視点の位置Ｖから１０ｋｍまでの範囲内、または１００ｋｍまでの範囲内に存在するキューブＣのみを検索対象とし、それよりも遠方に位置するキューブＣは検索の対象外とする。視点Ｖから遙かに遠く離れたキューブＣ（が模擬している物体）は実際には視認できない、または視認する必要がなく、そのようなキューブＣは描画の対象としなくともよいからである。視点の位置Ｖからの検索距離の範囲Ｒは常に一定であってもよいし、視点位置Ｖ及び視線方向Ｓと同様に与えられる不定のものであってもよい。
【０１０１】
出力部は、空間内に存在する各キューブＣの位置座標及び寸法を規定する情報を読み出し、これを基に、空間内に存在するキューブＣのうち、
（Ｉ）与えられた視点位置Ｖ［緯度，経度］から与えられた視線方向Ｓ［方位角］を見るときに、キューブＣの南西角、南東角、北東角または北西角の頂点（あるいは、中央等）のうちの何れか少なくとも一つの位置［緯度，経度］が所要の視野角αの範囲内にあるようなキューブＣ
（II）なおかつ、与えられた視点位置Ｖ［緯度，経度］と、キューブの南西角、南東角、北東角または北西角の頂点（あるいは、中央等）のうちの何れか少なくとも一つの位置［緯度，経度］との水平距離が所要の検索距離Ｒの範囲内にあるようなキューブＣ
を抽出する。図１８に示す例に則して述べると、あるキューブＣの頂点ＰＡはスクリーンＦの左右方向に沿った視野角αの範囲外に位置しているので、この頂点ＰＡを有するキューブＣは検索条件（Ｉ）に合致しない。一方で、他のキューブＣの頂点ＰＢ、ＰＣは何れもスクリーンＦの左右方向に沿った視野角αの範囲内に位置しているが、頂点ＰＣは視点位置Ｖからの距離が検索距離Ｒの範囲外にある、つまりは視点Ｖから遠すぎるので、その頂点ＰＣを有するキューブＣは検索条件（II）に合致しない。結果として、頂点ＰＢを有するキューブＣが検索条件（Ｉ）及び（II）に合致することとなる。
【０１０２】
さらに、出力部１０６は、上記の検索条件（Ｉ）及び（II）に合致するキューブＣのうち、
（III）与えられた視点位置Ｖ［緯度，経度，高さ］から与えられた視線方向Ｓ［仰俯角］を見るときに、キューブＣの頂面側の何れかの頂点（あるいは、中央等）の位置［緯度，経度，高さ］が所要の視野角の下限よりも上方に位置し、並びに、同キューブＣの底面側の何れかの頂点（あるいは、中央等）の位置［緯度，経度，高さ］が同視野角の上限よりも下方に位置しているようなキューブＣ
を抽出する。図１９に示す例に則して述べると、あるキューブＣの頂面側の頂点ＰＤはスクリーンＦの上下方向に沿った視野角βの下限よりも下方に位置しているので、この頂点ＰＤを有するキューブＣは検索条件（III）に合致しない。また、他のキューブＣの底面側の頂点ＰＥはスクリーンＦの上下方向に沿った視野角βの上限よりも上方に位置しているので、この頂点ＰＥを有するキューブＣも検索条件（III）に合致しない。一方で、別のキューブＣの頂点ＰＢはスクリーンＦの上下方向に沿った視野角βの範囲内に位置しているので、この頂点ＰＢを有するキューブＣが検索条件（III）に合致することとなる。
【０１０３】
上記の条件（Ｉ）、（II）及び（III）をおしなべて充足するキューブＣが、描画するべき対象のキューブＣである。出力部１０６は、そのような一または複数のキューブＣを選出し、当該キューブＣの描画のために必要となる情報、即ち当該キューブＣの位置座標、寸法、色等の情報を読み出して取得する。
【０１０４】
続いて、出力部１０６は、描画するべき対象として選出した一または複数のキューブＣの各々について、当該キューブＣの各頂点Ｐ０、Ｐ１、Ｐ２、Ｐ３、Ｐ４、Ｐ５、Ｐ６、Ｐ７をスクリーンＦに投影した場合における各頂点Ｐ０、Ｐ１、Ｐ２、Ｐ３、Ｐ４、Ｐ５、Ｐ６、Ｐ７の同スクリーンＦ上での位置座標［左右方向位置Ｘ，上下方向位置Ｙ］を演算する。
【０１０５】
図１８に示す例に則して述べると、描画対象であるキューブＣの頂点ＰＢをスクリーンＦに投影する場合の、同スクリーンＦ上での左右方向に沿った位置座標は、鉛直面に平行かつ視線方向Ｓと直交する方向から見た（平面視の）状態で、視点Ｖから視線の方向Ｓに沿って伸びる線分と、視点Ｖから当該頂点ＰＢに向かって伸びる線分とがなす角度Ｘとして求められる。この角度Ｘは、視点の位置Ｖから見た視線の方向Ｓの方位角と、同じ視点Ｖの位置から見た頂点ＰＢの方向の方位角との差分である。
【０１０６】
並びに、図１９に示す例に則して述べると、描画対象であるキューブＣの頂点ＰＢをスクリーンＦに投影する場合の、同スクリーンＦ上での上下方向に沿った位置座標は、水平面に平行かつ視線方向Ｓと直交する方向から見た（側面視の）状態で、視点Ｖから視線の方向Ｓに沿って伸びる線分と、視点Ｖから当該頂点ＰＢに向かって伸びる線分とがなす角度Ｙとして求められる。この角度Ｙは、視点の位置Ｖから見た視線の方向Ｓの仰俯角と、同じ視点の位置Ｖから見た頂点ＰＢの方向の仰俯角との差分である。出力部１０６は、描画対象のキューブＣの各頂点の同スクリーンＦ上での位置座標［Ｘ，Ｙ］を算出する。
【０１０７】
のみならず、出力部１０６は、描画対象となるキューブＣの各々について、当該キューブＣが有する八つの頂点Ｐ０、Ｐ１、Ｐ２、Ｐ３、Ｐ４、Ｐ５、Ｐ６、Ｐ７のうち、当該キューブＣ自体の陰に隠れるために視点Ｖからでは見えない、つまりは描画する必要のない頂点を判断する。具体的には、視点の位置Ｖ［緯度，経度，高さ］から、キューブＣの八つの頂点Ｐ０、Ｐ１、Ｐ２、Ｐ３、Ｐ４、Ｐ５、Ｐ６、Ｐ７のそれぞれの位置［緯度，経度，高さ］までの間の斜距離（高度差をも加味した文字通りの距離）を算出する。そして、視点Ｖからの斜距離が最も遠い頂点を、キューブＣ自体の陰に隠れて見えない頂点であると判定する。
【０１０８】
さらに、視点Ｖからの斜距離が最も遠い頂点のスクリーンＦ上での位置座標［Ｘ，Ｙ］と、視点Ｖからの斜距離が二番目に遠い頂点のスクリーンＦ上での位置座標［Ｘ，Ｙ］との間の距離を求め、スクリーンＦ上で両者の距離が閾値以下に接近しているならば、視点Ｖからの斜距離が二番目に遠い頂点もまたキューブＣ自体の陰に隠れて見えない頂点であると判定する。この閾値は、視点Ｖと前者の最も遠い頂点とを結ぶ線分と、視点Ｖと後者の二番目に遠い頂点とを結ぶ線分とがなす角度が０．５°程度となるような値に設定する。
【０１０９】
加えて、視点Ｖからの斜距離が最も遠い頂点のスクリーンＦ上での位置座標［Ｘ，Ｙ］と、視点Ｖからの斜距離が三番目に遠い頂点のスクリーンＦ上での位置座標［Ｘ，Ｙ］との間の距離を求め、スクリーンＦ上で両者の距離が閾値以下に接近しているならば、視点Ｖからの斜距離が三番目に遠い頂点、及び視点Ｖからの斜距離が四番目に遠い頂点もまたキューブＣ自体の陰に隠れて見えない頂点であると判定する。この閾値は、視点Ｖと前者の最も遠い頂点とを結ぶ線分と、視点Ｖと後者の三番目に遠い頂点とを結ぶ線分とがなす角度が０．５°程度となるような値に設定する。
【０１１０】
なお、描画対象のキューブＣが有する十二本の稜線Ｌ０、Ｌ１、Ｌ２、Ｌ３、Ｌ４、Ｌ５、Ｌ６、Ｌ７、Ｌ８、Ｌ９、Ｌ１０、Ｌ１１のうち、キューブＣ自体の陰に隠れて見えない頂点に接続する稜線は、やはりキューブＣの陰に隠れて見えない。そのような稜線は、描画する必要のない稜線である。
【０１１１】
また、出力部１０６は、描画対象のキューブＣの各々について、当該キューブＣが有する十二本の稜線Ｌ０、Ｌ１、Ｌ２、Ｌ３、Ｌ４、Ｌ５、Ｌ６、Ｌ７、Ｌ８、Ｌ９、Ｌ１０、Ｌ１１のうち、視点Ｖから遠く離れており視点Ｖから見て極めて短小となるために描画する必要のない稜線を判断する。具体的には、稜線により結ばれる二つの頂点のうちの一方のスクリーンＦ上での位置座標［Ｘ，Ｙ］と、他方のスクリーンＦ上での位置座標［Ｘ，Ｙ］との間の距離を求め、スクリーンＦ上でその両者の距離が閾値以下に接近しているならば、それら二つの頂点を結ぶ稜線を描画する必要のない稜線であると判定する。この閾値は、視点Ｖと一方の頂点とを結ぶ線分と、視点Ｖと他方の頂点とを結ぶ線分とがなす角度が０．５°程度となるような値に設定する。
【０１１２】
なおかつ、出力部１０６は、描画対象のキューブＣの各々について、当該キューブＣが有する八つの頂点Ｐ０、Ｐ１、Ｐ２、Ｐ３、Ｐ４、Ｐ５、Ｐ６、Ｐ７のうち、視点Ｖから遠く離れており視点Ｖから見て各々の頂点を区別することが困難であるために描画する必要のない頂点を判断する。具体的には、隣り合う二つの頂点のうちの一方のスクリーンＦ上での位置座標［Ｘ，Ｙ］と、他方のスクリーンＦ上での位置座標［Ｘ，Ｙ］との間の距離を求め、スクリーンＦ上でその両者の距離が閾値以下に接近しているならば、それら二つの頂点のうちの何れかを描画する必要のない頂点であると判定する。この閾値は、視点Ｖと一方の頂点とを結ぶ線分と、視点Ｖと他方の頂点とを結ぶ線分とがなす角度が０．０５°程度となるような値に設定する。この閾値は、上記の他の閾値と比較して小さい。
【０１１３】
描画対象となるキューブＣが有する八つの頂点Ｐ０、Ｐ１、Ｐ２、Ｐ３、Ｐ４、Ｐ５、Ｐ６、Ｐ７及び十二本の稜線Ｌ０、Ｌ１、Ｌ２、Ｌ３、Ｌ４、Ｌ５、Ｌ６、Ｌ７、Ｌ８、Ｌ９、Ｌ１０、Ｌ１１が全てスクリーンＦの寸法の範囲内、即ち視野角α、βの範囲内に収まっているとは限らない。出力部１０６は、スクリーンＦ上における位置座標［Ｘ，Ｙ］がスクリーンＦの寸法よりも外側に逸脱する頂点を、描画する必要のない頂点であると判断する。そして、一本の稜線により結ばれる二つの頂点の双方がスクリーンＦの寸法の外側に位置している場合には、その稜線を描画する必要のない稜線であると判断する。
【０１１４】
このように演算して求められた、描画対象のキューブＣが有する各頂点Ｐ０、Ｐ１、Ｐ２、Ｐ３、Ｐ４、Ｐ５、Ｐ６、Ｐ７のスクリーンＦ上での位置座標［Ｘ，Ｙ］その他の情報は、与えられた視点の位置Ｖから与えられた視線の方向Ｓに沿って一または複数のキューブＣを見た場景を三次元グラフィクスとして描画する処理に用いられる。図２０に示すように、この情報には、描画対象として選出された一または複数のキューブＣのそれぞれ毎に、当該キューブＣが有する八つの頂点Ｐ０、Ｐ１、Ｐ２、Ｐ３、Ｐ４、Ｐ５、Ｐ６、Ｐ７の各々のスクリーンＦ上での位置座標［Ｘ，Ｙ］、各頂点Ｐ０、Ｐ１、Ｐ２、Ｐ３、Ｐ４、Ｐ５、Ｐ６、Ｐ７を描画する必要があるかないか、隣り合う二つの頂点を結ぶ十二本の稜線Ｌ０、Ｌ１、Ｌ２、Ｌ３、Ｌ４、Ｌ５、Ｌ６、Ｌ７、Ｌ８、Ｌ９、Ｌ１０、Ｌ１１の各々を描画する必要があるかないか、当該キューブＣの色、等が含まれる。出力部１０６は、これらの情報を、メインメモリ１ｂ若しくは補助記憶デバイス１ｃに書き出す。なお、この情報を、電気通信回線を介して通信可能に接続している外部の装置またはコンピュータに向けて送信することもあり得る。
【０１１５】
出力部１０６は、当該情報を基に、三次元グラフィクス描画を行う。即ち、視点の位置Ｖから見た一または複数のキューブＣを描画し、ディスプレイ１ｉの画面に表示する。当該情報には、単独のキューブＣについて、当該キューブＣが有する頂点Ｐ０、Ｐ１、Ｐ２、Ｐ３、Ｐ４、Ｐ５、Ｐ６、Ｐ７及び稜線Ｌ０、Ｌ１、Ｌ２、Ｌ３、Ｌ４、Ｌ５、Ｌ６、Ｌ７、Ｌ８、Ｌ９、Ｌ１０、Ｌ１１のうち描画不要のものを指し示す情報が含まれ、これを参照すれば、三次元グラフィクス描画プログラムにおいて、一つのキューブＣの隠線処理を実行することが可能となる。他方、複数のキューブＣ同士の重なり合い、即ち視点Ｖから見て遠方のキューブＣの一部または全部が視点Ｖにより近い手前方のキューブＣの陰に隠れて見えなくなることについては、描画プログラム自体においてその隠れる部分を判断して処理する必要がある。
【０１１６】
シミュレート部１０５が実行するシミュレーションにより、移動体データ格納部１０４に格納している各移動体Ｍの現在の位置座標及び現在の移動方向ＭＶは、刻々と変化する。つまり、各移動体Ｍを模擬するキューブＣの空間内での位置や向いている方向が、単位時間毎に変化してゆく。出力部１０６において、単位時間毎のキューブＣの位置を描画した画像を生成し、それら単位時間毎の画像を集めれば、空間内で移動体Ｍが移動経路ＲＯに沿って移動する場景を表現した動画像を得ることができる。
【０１１７】
視点位置Ｖ及び視線方向Ｓの具体的な態様は、複数考えられる。具体例を列挙すると：
「マップ」俯瞰カメラであり、地図のように移動体Ｍや移動体Ｍ以外の物体を模擬するキューブＣを上方から見た場景を描画する。視線方向Ｓの方位角は、ある程度の範囲でユーザが入力デバイス１を介して操作することが可能。視点位置Ｖは、視線方向Ｓのベクトルの先にユーザが入力デバイス１ｇを介して選択した地点または移動体Ｍがあるように設定する。
「オーバービュー」鳥瞰図のように、移動体Ｍや移動体Ｍ以外の物体を模擬するキューブＣを斜め上方から見た場景を描画する。例えば、２０ｍ上空に視点位置Ｖを設定し、視線方向Ｓの仰俯角を−３０°の俯角とし、４０ｍ先の移動体Ｍを追跡するようにトラッキングする。トラッキングには、視線方向Ｓを固定とし、その視線方向Ｓのベクトルの先にユーザが入力デバイス１ｇを介して選択した移動体Ｍがあるように視点位置Ｖを水平移動させる態様と、視点位置Ｖを固定とし、視線方向Ｓのベクトルの先にユーザが入力デバイス１ｇを介して選択した移動体Ｍがあるように視線方向Ｓを揺動させる態様とがある。後者の態様のトラッキングでは、視線方向Ｓと鉛直方向とのなす角度の大きさが所定値、例えば±１０°を超えたら、視線方向Ｓと鉛直方向とのなす角度が縮小ないし０°となるように視点位置Ｖを変位させる。
「フォロー」空間内を移動する何れかの移動体Ｍを、その移動方向ＭＶに沿った後方から一定の距離を空けて追尾したときに目に入る、移動体Ｍや移動体Ｍ以外の物体を模擬するキューブＣを描画する。例えば、ユーザが入力デバイス１ｇを介して選択した移動体Ｍの５ｍ後方、同移動体Ｍよりも２ｍ高い位置に視点位置Ｖを設定し、視線方向Ｓの仰俯角を−１０°の俯角として、対象の移動体Ｍを視野角αの範囲内に捉える。
「モバイルアイ」空間内を移動する何れかの移動体Ｍに搭乗している仮想的な搭乗者の視点から、その搭乗者の視線の方向に見える、移動体Ｍや移動体Ｍ以外の物体を模擬するキューブＣを描画する。即ち、ユーザが入力デバイス１ｇを介して選択した移動体Ｍについて設定された、仮想的な搭乗者の視点の位置及び視線の方向を、視線位置Ｖ及び視線方向Ｓとする。
【０１１８】
出力部１０６は、物体を模擬するキューブＣと同様にして、標識オブジェクトＳＯを描画する（標識オブジェクトＳＯの表現を含む画像を生成する）こともできるし、標識オブジェクトＳＯは描画しないようにする（標識オブジェクトＳＯの表現を含まない画像を生成する）こともできる。
【０１１９】
本実施形態では、移動体Ｍが空間内で移動するべき経路ＲＯに沿った複数の経路点ＲＰの各々の位置座標を含む経路点データを格納する経路点データ格納部１０２と、空間内を移動する移動体Ｍの移動速度または移動方向ＭＶに影響を及ぼす標識オブジェクトＳＯの位置座標、及び移動体Ｍから見て一定の範囲（検出可能領域）内に当該標識オブジェクトＳＯを捉えた移動体Ｍに対して当該標識オブジェクトＳＯが与える移動速度または移動方向ＭＶに関する指令の内容を含む標識データを格納する標識データ格納部１０３と、空間内を移動する複数の移動体Ｍの各々の現在の位置座標、移動速度及び移動方向ＭＶを含む移動体データを格納する移動体データ格納部１０４と、前記経路点データ格納部１０２に格納している経路点データ、前記標識データ格納部１０３に格納している標識データ及び前記移動体データ格納部１０４に格納している移動体データを参照して、空間内を移動する複数の移動体Ｍの各々の単位時間毎の位置座標、移動速度及び移動方向ＭＶを反復的に演算し、演算した各移動体Ｍの新たな位置座標、移動速度及び移動方向ＭＶを移動体データ格納部１０４に書き込むシミュレート部１０５とを具備する移動体制御システムを構成した。
【０１２０】
本実施形態によれば、複数の移動体Ｍが移動経路ＲＯに沿って移動する交通計画、特に移動体Ｍ同士の衝突の回避や渋滞の緩和等を目的とした計画の立案を支援することができる。シミュレーションにおける計算量が比較的少なく済み、計算時間を短縮でき、またメインメモリ１ｂや補助記憶デバイス１ｃの記憶領域の消費量の増大を抑制することができる。
【０１２１】
本実施形態の移動体制御システムは、前記移動体データ格納部１０４に格納している移動体データを参照して、空間内における少なくとも一の移動体Ｍの現在位置を示す画像を生成する出力部１０６を具備する。これにより、シミュレーションの結果を可視化して提示することが可能となっている。
【０１２２】
本実施形態の移動体制御システムは、空間内に存在する移動体Ｍ以外の物体を模擬する複数のキューブＣの各々の位置座標及び平面寸法及び高さ寸法を含むキューブデータを格納するキューブデータ格納部１０１を具備し、前記出力部１０６は、空間内における少なくとも一の移動体Ｍの現在位置とともに同空間内に存在する物体を模擬する複数のキューブＣをも示す画像を生成し、生成した画像をディスプレイ１ｉの画面に表示させる。
【０１２３】
前記標識データ格納部１０３は、時間経過とともに遷移する、移動体Ｍから見て一定の範囲内に前記標識オブジェクトＳＯ（交差標識）を捉えた移動体Ｍに対して当該標識オブジェクトＳＯが与える移動速度または移動方向ＭＶに関する現在の指令の内容を前記標識データとして格納しており、前記シミュレート部１０５は、前記標識データ格納部１０３に格納している、前記標識オブジェクトＳＯが前記移動体Ｍに対して与える移動速度または移動方向ＭＶに関する現在の指令の内容を基に、空間内を移動する複数の移動体Ｍの各々の単位時間毎の位置座標、移動速度及び移動方向ＭＶを反復的に演算し、演算した各移動体Ｍの新たな位置座標、移動速度及び移動方向ＭＶを移動体データ格納部１０４に書き込む。このようなものであれば、信号機のような標識オブジェクトＳＯによる移動体Ｍの移動の制御のシミュレーションを実現できる。
【０１２４】
前記シミュレート部１０５は、前記移動体データ格納部１０４に格納している、複数の移動体Ｍの各々の現在の位置座標及び移動方向ＭＶを基に、ある移動体Ｍが当該移動体Ｍの移動方向に沿って前方に存在する他の移動体Ｍから所定距離の範囲（衝突危険領域）内に接近した場合、そうでない場合と比較して当該移動体Ｍに対して与える移動速度を低下させた上で、当該移動体Ｍの新たな位置座標、移動速度及び移動方向ＭＶを移動体データ格納部１０４に書き込む。これにより、渋滞時の移動体Ｍの動きをシミュレーションできる。
【０１２５】
なお、本発明は以上に詳述した実施形態に限られるものではない。上記実施形態における標識オブジェクトＳＯの一である交差標識は、時間経過とともにその状態が刻々と遷移し、その状態に応じてどの移動体Ｍの（どの移動経路ＲＯを移動する移動体Ｍの）移動を制止するかが変化するものであった。このような交差標識は、移動体Ｍに対して与えるべき移動速度に関する指示が時間経過とともに遷移する標識オブジェクトＳＯである。これ以外に、例えば、時間経過とともにその状態が刻々と変化する方位標識、即ち移動体Ｍから見て一定の範囲（移動体Ｍの検出可能領域）内に当該方位標識を捉えた移動体Ｍに対して当該方位標識が与えるべき移動方向ＭＶに関する指示が時間経過とともに変化する標識オブジェクトＳＯを設定することも考えられる。この場合において、当該方位標識に係る標識データが含む、移動体に与えるべき指令の内容は、
［９０，３０，０，０，３０，０］
のように記述される。この例では、移動方向ＭＶを方位角９０°に向けるべき旨の指示を移動体Ｍに対して与える状態が３０秒継続し、次いで移動方向ＭＶを方位角０°に向けるべき旨の指示を移動体Ｍに対して与える状態が３０秒継続し、これら二つの状態が交互に繰り返され、かつ一方の状態から他方の状態に遷移する際のインターバルの時間は何れも０秒であると定義している。また、移動体Ｍから見て一定の範囲内に標識オブジェクトＳＯを捉えた移動体Ｍに対して当該標識オブジェクトＳＯが与えるべき移動速度及び移動方向ＭＶの各々に関する指示が時間経過とともに変化するような（移動体Ｍの移動速度と移動方向ＭＶとの双方に影響を及ぼす）標識オブジェクトＳＯを設定することも可能である。
【０１２６】
その他、各部の具体的な構成や処理の手順等は、本発明の趣旨を逸脱しない範囲で種々変形が可能である。
【符号の説明】
【０１２７】
１…コンピュータ
１０１…キューブデータ格納部
１０２…経路点データ格納部
１０３…標識データ格納部
１０４…移動体データ格納部
１０５…シミュレート部
１０６…出力部
【図１】
2018200526.tif 000003
【図２】
2018200526.tif 000004
【図３】
2018200526.tif 000005
【図４】
2018200526.tif 000006
【図５】
2018200526.tif 000007
【図６】
2018200526.tif 000008
【図７】
2018200526.tif 000009
【図８】
2018200526.tif 000010
【図９】
2018200526.tif 000011
【図１０】
2018200526.tif 000012
【図１１】
2018200526.tif 000013
【図１２】
2018200526.tif 000014
【図１３】
2018200526.tif 000015
【図１４】
2018200526.tif 000016
【図１５】
2018200526.tif 000017
【図１６】
2018200526.tif 000018
【図１７】
2018200526.tif 000019
【図１８】
2018200526.tif 000020
【図１９】
2018200526.tif 000021
【図２０】
2018200526.tif 000022