航跡割当装置
【課題】多スタート局所探索においてMFA問題の最適解探索を精度良く効率的に行うことのできる航跡割当装置を得る。
【解決手段】観測値情報取得部1と、観測値情報格納部2と、航跡候補生成部3と、航跡候補格納部4と、初期解生成部5と、最良解格納部6と、新規解生成部7と、新規解格納部8と、最良解更新部9と、ビルディングブロック候補情報格納部10と、ビルディングブロック判定部11と、ビルディングブロック情報格納部12と、終了判定部13と、探索結果出力部14とを備えている。新規解生成部7は、ビルディングブロックと判定された構成要素が必ず含まれるように新規解を生成する。最良解更新部9は、多スタート局所探索時にK個の最良解のうちのL個以上の最良解に同じ構成要素が含まれる場合に、当該構成要素をビルディングブロック候補と判定して登録する。
【解決手段】観測値情報取得部1と、観測値情報格納部2と、航跡候補生成部3と、航跡候補格納部4と、初期解生成部5と、最良解格納部6と、新規解生成部7と、新規解格納部8と、最良解更新部9と、ビルディングブロック候補情報格納部10と、ビルディングブロック判定部11と、ビルディングブロック情報格納部12と、終了判定部13と、探索結果出力部14とを備えている。新規解生成部7は、ビルディングブロックと判定された構成要素が必ず含まれるように新規解を生成する。最良解更新部9は、多スタート局所探索時にK個の最良解のうちのL個以上の最良解に同じ構成要素が含まれる場合に、当該構成要素をビルディングブロック候補と判定して登録する。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、レーダなどの観測センサにより得られる時間的に連続した複数フレームの観測値を用いて、観測された複数の移動体の航跡を求める航跡割当装置に関するものである。
【背景技術】
【0002】
従来から、レーダなどの観測センサにより得られた観測値(位置座標や信号強度などの情報が含まれる)を用いて複数の移動体の航跡を推定する航跡追尾処理はよく知られており、航跡追尾処理を構成する処理の1つとして航跡割当処理がある。一般に、観測センサの観測単位をフレームと呼び、1フレーム内には複数の観測値が含まれる。
【0003】
航跡割当処理においては、航跡の尤度(航跡の尤もらしさを表す指標)が最も高くなるように、それまでに得られている航跡に対して、新たに観測されたフレーム内の観測値を割り当てる処理が行われる。
従来の航跡割当装置としては、最新の1個のフレーム内の観測値の割当処理を行うMHT(Multiple Hypothesis Tracking)法を適用した目標追尾装置が提案されている(たとえば、特許文献1参照)。
【0004】
また、MHT法のように1個のフレームの割当処理から求められる航跡では、十分な航跡追尾の精度が得られないことから、さらに高い精度を得るために、連続する複数フレームの航跡割当処理を行うMFA(Multiple Frame Assignment)問題を解くアルゴリズムも提案されている。
【0005】
MFA問題は、組合せ最適化問題の1つであり、フレーム数やフレーム内の観測値数が増加すると、組合せ数が爆発的に増加してしまうので、厳密解法による最適解の導出においては、長時間を要し実用面で問題が生じる。
そこで、運用に支障をきたさなければ、最適解でなくても差し支えないという観点に立ち、MFA問題を高速に解くアルゴリズムとして、ラグランジュ緩和法を適用した手法が提案されている(たとえば、非特許文献1参照)。
【0006】
MFA問題にラグランジュ緩和法を適用する場合には、N次元(次元数=フレーム数)の問題を2次元に変換することで探索範囲の絞込みが行われるが、次元数が増えるほど、処理が煩雑になるうえ実装も難しくなり、効果的な絞込みを実現することができない可能性がある。
【0007】
一方、ラグランジュ緩和法よりも処理が単純で実装が容易であり、且つ、MFA問題を高速に解くことが期待できるアルゴリズムとして、組合せ最適化メタヒューリスティックス手法が存在する。
組合せ最適化メタヒューリスティックス手法の代表的なアルゴリズムとしては、遺伝的アルゴリズム、タブーサーチ、シミュレーテッドアニーリング、多スタート局所探索などが挙げられる。
【0008】
多スタート局所探索は、異なる初期解を複数用意して、複数の近傍探索を同時に実行する探索処理であり、単純な処理ながら探索効率を上げることが可能である。
この種のメタヒューリスティックス手法の特徴は、それまでの探索で得られた最良解の一部を変更して新規解を生成し、新規解の元となった最良解よりも評価値の良い新規解が存在した場合には、その新規解を最良解と置き換えることを繰り返し実行し、最適解を探索することにある。
【0009】
しかしながら、最良解から新規解を生成する処理において、最良解中に、最適解を構成する要素(以下、「ビルディングブロック」という)が含まれていた場合に、そのビルディングブロックが変更されてしまうことから、新規解の中にビルディングブロックが残らず、最適解または準最適解が求まるまでの探索回数の増加を招く場合や、最適解または準最適解が求まらない場合が生じるという問題がある。
【0010】
なお、「最良解」とは、現時点までの探索で得られている最も良い解を意味し、「最適解」とは、全ての組合せの中で最も適した解を意味し、「準最適解」とは、最適解に近い運用に支障を及ぼさない解を意味している。
【0011】
以下、図14の説明図を参照しながら、従来の航跡割当処理における具体例を挙げて、上記問題点について説明する。
図14においては、第n世代の最良解と、最良解の組み合わせを変更した新規解と、更新後(第n+1世代)の最適解との関係が示されている。
【0012】
図14において、n回目の更新後に得られた「最良解(第n世代)」は、4個の航跡を表しており、横一行{1、1、1、2}、{2、2、2、3}、{3、4、4、4}、{4、3、3、1}は、それぞれ1個の航跡であり、各航跡内の「1」〜「4」の数字は、観測値に振られた番号である。
【0013】
また、「最良解(第n世代)」の縦一列{1、2、3、4}、{1、2、4、3}{1、2、4、3}{2、3、4、1}は、同一フレーム内の観測値である。
したがって、「最良解(第n世代)」は、各フレームの観測値{1、1、1、2}を結んだ航跡と、観測値{2、2、2、3}を結んだ航跡と、観測値{3、4、4、4}を結んだ航跡と、観測値{4、3、3、1}を結んだ航跡から構成されている。
【0014】
このとき、航跡{2、2、2、3}が「ビルディングブロック」であったと仮定し、新規解の生成処理において、航跡{2、2、2、3}と航跡{4、3、3、1}とが変更対処として選ばれ、それぞれの同じ位置の観測値(灰色ブロック参照)を入れ替えた4個の新規解を生成したと仮定する。
こうして得られた4個の新規解(図14の破線枠内の4個の解)においては、「ビルディングブロック」が壊されていることが分かる。
【0015】
これら4個の新規解のうち、たとえば左から2番目の解が「最良解(第n世代)」よりも良い評価値であった場合には、最良解更新時に、「最良解(第n+1世代)」の解として、左から2番目の新規解が選ばれ(破線矢印参照)、最良解(第n+1世代)からビルディングブロックである航跡{2、2、2、3}が消えてしまう。
ビルディングブロックは最適解の構成要素であり、探索途中の最良解の構成要素がビルディングブロックであるか否かは判定することができないことから、このような問題が発生する。
【0016】
【特許文献1】特許第3145893号公報
【非特許文献1】Aubrey B.Poore、「A New Multidimensional Data Association Algorithm for Multisensor−Multitarget Tracking」、Proc. of SPIE Vol.2561、1995
【発明の開示】
【発明が解決しようとする課題】
【0017】
従来の航跡割当装置では、MFA問題を高速に解くためのメタヒューリスティックス手法として多スタート局所探索を適用した場合に、最良解から新規解を生成する処理において、最適解を構成する「ビルディングブロック」が変更されてしまうので、新規解の中にビルディングブロックが残らず、最適解または準最適解が求まるまでの探索回数の増加を招く場合や、最適解または準最適解が求められない場合が生じるという課題があった。
【0018】
この発明は、上記のような課題を解決するためになされたものであり、多スタート局所探索において各探索を連携させ、各探索における最良解を構成する要素の中でビルディングブロックである可能性が高いと判定したものを次の世代の最良解に必ず残すことにより、MFA問題の最適解探索を精度良く効率的に行うことのできる航跡割当装置を得ることを目的とする。
【課題を解決するための手段】
【0019】
この発明による航跡割当装置は、観測センサにより観測される時間的に連続した観測値情報を用いて複数の移動体の航跡を追尾するために、観測値情報の各々を複数の移動体の各航跡に割り当てる航跡割当装置であって、観測センサを用いて観測値情報を取得する観測値情報取得部と、観測値情報取得部が取得した観測値情報を格納する観測値情報格納部と、観測値情報格納部に格納された各時刻の観測値情報を組合せて、複数の移動体の各々が取り得る航跡の候補を航跡候補として生成する航跡候補生成部と、航跡候補を格納する航跡候補格納部と、航跡候補格納部に格納された航跡候補の集合から最も評価値の良い航跡候補の組合せを最適解として探索する際に、最適解探索の開始時の航跡候補の組合せを初期解として生成する初期解生成部と、初期解を格納するとともに、最適解探索の途中で得られた解の中で最も良い解を最良解として格納する最良解格納部と、最良解格納部に格納された最良解の一部分を変更し、新たな解を新規解として生成する新規解生成部と、新規解を格納する新規解格納部と、新規解格納部に格納された新規解と最良解格納部に格納された最良解とを比較して、最良解よりも評価値が良い新規解が存在する場合に、当該新規解を新たな最良解として最良解格納部に格納する最良解更新部と、最良解の構成要素となる航跡候補が最適解の構成要素となり得るか否かを判定し、最適解の構成要素となり得ると判定された最良解の構成要素をビルディングブロックと判定するビルディングブロック判定部と、ビルディングブロックの候補となる構成要素に関するビルディングブロック候補情報を格納するビルディングブロック候補情報格納部と、ビルディングブロックと判定された構成要素に関するビルディングブロック情報を格納するビルディングブロック情報格納部と、最適解探索を終了するかまたは継続するかを判定する終了判定部と、最適解探索を終了すると判定された場合に、最終的に得られた最良解を出力する探索結果出力部とを備え、新規解生成部は、ビルディングブロック情報に基づいて、ビルディングブロックと判定された構成要素が必ず含まれるように新規解を生成し、最良解更新部は、スタート数がK個の初期解を用いた(すなわち、最適解探索の実行中にK個の最良解が存在する)多スタート局所探索時に、K個の最良解のうちのL個以上の最良解に同じ構成要素が含まれる場合に、当該構成要素をビルディングブロック候補と判定し、当該ビルディングブロック候補情報をビルディングブロック候補情報格納部に登録し、ビルディングブロック判定部は、最良解更新部による1回の最良解更新で世代が1つ進む条件下で、同一構成要素がN世代にわたって連続してビルディングブロック候補と判定された場合に、当該構成要素をビルディングブロックと判定し、当該ビルディングブロック情報をビルディングブロック情報格納部に登録するものである。
【発明の効果】
【0020】
この発明によれば、多スタート局所探索における最良解を構成する要素の中で、ビルディングブロックである可能性が高いと判定したものを次の世代の最良解に必ず残すことができるので、MFA問題の最適解探索を精度良く効率的に行うことができる。
【発明を実施するための最良の形態】
【0021】
実施の形態1.
以下、図面を参照しながら、この発明を実施するための最良の形態について説明する。
図1はこの発明の実施の形態1に係る航跡割当装置の機能構成を示すブロック図であり、各ブロックを結ぶ実線矢印は、処理の流れを示し、破線矢印は、データの流れを示している。
【0022】
図1において、航跡割当装置は、観測値情報取得部1と、観測値情報格納部2と、航跡候補生成部3と、航跡候補格納部4と、初期解生成部5と、最良解格納部6と、新規解生成部7と、新規解格納部8と、最良解更新部9と、ビルディングブロック候補情報格納部10と、ビルディングブロック判定部11と、ビルディングブロック情報格納部12と、終了判定部13と、探索結果出力部14とを備えている。
【0023】
観測値情報取得部1は、レーダなど(図示せず)の観測センサにより観測された移動体の観測値データ(観測値情報)を取得し、観測値情報格納部2は、観測値情報取得部1で取得された移動体の観測値情報を格納する。
【0024】
航跡候補生成部3は、観測値情報格納部2に格納されている観測値情報に基づいて、観測値を組合せた航跡候補を生成するとともに、各航跡候補の評価値を計算する。航跡候補格納部4は、航跡候補生成部3により生成された航跡候補およびその評価値を格納する。
【0025】
初期解生成部5は、航跡候補格納部4に格納されている航跡候補およびその評価値を用いて、MFA問題の最適解探索を行うための初期解を生成する。
最良解格納部6は、繰り返し実行される最適解探索において、最新の最も評価値の良い解を最良解として格納する。なお、初期解生成部5で生成された初期解は、最初に得られた最良解として最良解格納部6に格納される。
【0026】
新規解生成部7は、ビルディングブロック情報格納部12に格納されているビルディングブロック情報に基づき、ビルディングブロックが残るように、最良解格納部6に格納されている最良解の一部を変更して新規解を生成する。新規解格納部8は、新規解生成部7で生成された新規解を格納する。
【0027】
最良解更新部9は、最良解格納部6に格納されている最良解と、新規解格納部8に格納されている新規解とを比較して、最良解よりも評価値の良い新規解が存在する場合には、当該新規解を新たな最良解として最良解格納部6に格納する。また、最良解更新部9は、最良解の更新後に、新たな最良解を構成する要素がビルディングブロックの候補となるか否かを判定する。
【0028】
ビルディングブロック候補情報格納部10は、最良解更新部9がビルディングブロック候補と判定した最良解の構成要素に関するビルディングブロック候補情報を格納する。
ビルディングブロック判定部11は、ビルディングブロック候補情報格納部10に格納された情報に基づいて、最良解を構成する要素がビルディングブロックとなり得るか否か判定する。
【0029】
ビルディングブロック情報格納部12は、ビルディングブロック判定部11がビルディングブロックと判定した、最良解を構成する要素に関するビルディングブロック情報を格納する。
終了判定部13は、最適解探索の処理終了判定を行い、探索処理終了と判定された場合には探索結果出力部14に処理を移し、終了しないと判定された場合には新規解生成部7に処理を戻す。
探索結果出力部14は、最適解探索に応じて得られた最良解を探索結果として出力する。
【0030】
次に、図2〜図8の説明図を参照しながら、図1に示した航跡割当装置による一連の動作について説明する。
まず、観測値情報取得部1は、たとえばレーダにより観測された移動体の最新の1フレーム分の観測値情報を取得し、観測値情報格納部2は、取得した観測値を、時間的に連続した複数フレーム分にわたって格納する。
【0031】
図2は観測値情報取得部1により取得される観測値を図式的に示しており、時系列的な観測値をX−Y平面上に配置した例を示している。
ここでは、時刻t、時刻t+1、時刻t+2、時刻t+3(4個のフレームt〜フレームt+3に対応)における4個の観測値が示されている。
【0032】
図2において、同一フレーム内の観測値は、それぞれ破線枠で囲まれており、各フレーム内の丸で囲まれた数字は、それぞれ観測値を表している。なお、観測値の数値「1」〜「4」は、単にフレーム内で割り当てた連番であり、数値そのものに特に意味はない。
【0033】
たとえば、図2に示した状況において、観測値情報収集部1は、最新のフレームt+3の観測値を取得して観測値情報格納部2に格納し、このとき、観測値情報格納部2は、最新のFフレーム分(F=4)の観測値情報を格納することになる。
【0034】
図3は観測値情報格納部2における観測値情報の格納状態を図式的に示しており、Fフレーム分(F=4)の場合を示している。
図3において、観測値情報格納部2には、4フレーム分(フレームt〜フレームt+3)の観測値情報が格納されており、最新のフレームがt+3である。また、丸で囲まれた数字は、前述(図2)と同様の観測値を表している。
【0035】
観測値情報格納部2への観測値情報の格納処理に続いて、次に、航跡候補生成部3は、観測値情報格納部2に格納されている観測値情報に基づいて航跡候補を生成し、航跡候補格納部4は、生成された航跡候補を格納する。
【0036】
図4は航跡候補生成部3による処理動作を示している。
図4において、観測値情報格納部2には、4フレーム分の観測値情報(1点鎖線枠内)が格納されており、縦一列が1フレーム分の観測値である。
各観測値は、図3と同様に、左から観測時刻(t、t+1、t+2、t+3)順に並んでいる。
【0037】
航跡候補生成部3は、観測値情報格納部2内の観測値情報から航跡候補を生成する。
航跡候補とは、MFAの解を構成する航跡となり得るものであり、各フレームから1個ずつ観測値を選択して観測順に並べることにより、図4内の航跡候補集合(1点鎖線枠内)のように生成される。
【0038】
たとえば、航跡候補集合中の最上段の航跡候補{1、1、1、1}は、フレームtの観測値「1」、フレームt+1の観測値「1」、フレームt+2の観測値「1」、フレームt+3の観測値「1」を繋いだ航跡候補である。
【0039】
図4の例では、航跡候補{1、1、1、1}〜{4、4、4、4}は、44(=256通り)だけ生成される。また、航跡候補生成部3は、生成した各航跡候補に対する評価値として、航跡コスト(−15.4、−2.2、・・・、−10.7)も併せて求める。
以下、航跡候補格納部4は、航跡候補生成部3で生成された航跡候補およびその評価値(図4)のデータを格納する。
【0040】
続いて、初期解生成部5は、航跡候補格納部4に格納されている航跡候補の集合の中から、同一フレーム内での観測値の重複がないように、且つ、全ての観測値が含まれるように、最適解探索の初期解を生成する。このとき生成される初期解の数は、適用される最適解探索のアルゴリズムに依存し、たとえば、多スタート局所探索を適用する場合には、スタート数が「K」であれば、K個の異なる初期解を生成する。
【0041】
図5は初期解生成部5における初期解生成動作を示しており、3個の初期解を生成する例を示している。
図5において、初期解生成部5は、以下の手順(1)〜(3)を3回繰り返すことにより、3個の初期解を生成する。
【0042】
(1)まず、航跡候補格納部4に格納されている航跡候補の集合から1個の航跡候補を選択する。このときの選択の基準としては、ランダムに基づくもの、評価値が最も良いもの、評価値に比例した選択確率に基づくもの、などが挙げられる。
ここでは、たとえば、図5の最上段に示す航跡候補{1、2、3、4}を選択する。
【0043】
(2)次に、選択済みの航跡候補との間で、同一フレーム内で観測値が重複しないように、航跡候補の集合から新たに航跡候補を選択する。このときの選択の基準は上記(1)と同じである。
ここでは、(1)において、航跡候補{1、2、3、4}が選択されているので、図5の2段目に示すように、(1)の航跡候補との間で同一フレーム内の観測値が重複しない航跡候補{2、3、4、1}を選択する。
【0044】
(3)同様にして、選択済みの全ての航跡候補と観測値の重複が起きないように、且つ、全ての観測値が初期解に含まれるように、航跡候補の集合から順次に航跡候補{3、4、1、2}、{4、1、2、3}を選択する。
これにより、図5に示すように、上記4通りの航跡候補からなる1個の「初期解−1」が生成される。
【0045】
以下、上記(1)〜(3)と同様の処理により、「初期解−2」を生成する。ただし、「初期解−2」は、「初期解−1」とは異なっていなければならない。
同様にして、「初期解−1」および「初期解−2」とは異なる「初期解−3」を生成する。
初期解生成部5で生成された3個の初期解「初期解−1」〜「初期解−3」は、最初に得られた最良解と見なせるので、最良解格納部6に格納される。
【0046】
効率的な最適解探索を行うためには、初期解が重要であり、この発明では、GRASP(Greedy Randomized Adaptive Search Procedure)という手法の初期解生成法を利用することとする。
なお、GRASP法による初期解生成の手順は、公知なので、ここでは割愛する。
【0047】
次に、新規解生成部7は、最良解格納部6に格納されている最良解の一部を変更した新規解を生成し、新規解格納部8は、生成された新規解を格納する。
新規解生成部7は、新規解生成時において、ビルディングブロック情報格納部12に格納されている情報に基づいて、最良解中に含まれるビルディングブロックと判定された構成要素を新規解に残すように解を生成する。
【0048】
ビルディングブロックの判定処理に関しては、ビルディングブロック判定部11の動作説明(後述する)で具体例を述べる。
新規解格納部8に新規解が格納されると、最良解更新部9は、最良解格納部6に格納されている最良解と新規解格納部8に格納されている新規解とを比較し、最良解よりも評価値の良い新規解が存在する場合には、最も評価値の良い新規解を「新たな最良解」とし、最良解格納部6に新たな最良解を格納する。
【0049】
もし、第n世代の最良解よりも評価値が良い新規解が生成されなかった場合には、最良解更新部9は、新規解生成部7に処理を戻す。これにより、新規解生成部7は、新規解の生成処理を再度実行する。
この発明の実施の形態1に係る航跡割当装置においては、新規解生成部7による新規解生成処理と、最良解更新部9による最良解更新処理と、を繰り返し実行することにより、最適解探索が行われる。
【0050】
図6は新規解生成部7および最良解更新部9の動作を示しており、第n世代から第n+1世代への新規解生成および最良解更新の例を示している。
ここでは、新規解生成処理と最良解更新処理との1サイクル分を「世代」と呼ぶことにする。
【0051】
図6において、新規解生成部7は、最良解格納部6に格納されている第n世代の最良解を取得し、新規解を生成するために観測値の入れ替えを行うための2個の構成要素を選択する(以下、この選択を「ペア選択」という)。
【0052】
このとき、ビルディングブロック情報格納部12に格納されているビルディングブロック情報に第n世代の最良解の構成要素{2、2、2、3}が含まれていたとすると、新規解生成部7は、構成要素{2、2、2、3}をペア選択対象から除外し、図6に示すように、たとえば構成要素{1、1、1、2}および{4、3、3、1}をペア選択する。
【0053】
なお、ペア選択の基準は、ここでは特に定めないが、たとえば、各構成要素の評価値の悪い順に2個選択するか、または、各構成要素の評価値に比例した選択確率を与えて選択する方法が考えられる。
【0054】
新規解生成部7は、選択した構成要素{1、1、1、2}と{4、3、3、1}の同じ位置の観測値(すなわち、同一フレーム内の観測値)を入れ替えて新規解を生成する。
図6においては、4個の新規解(2点鎖線枠内)が生成される。すなわち、右端の観測値「2」、「1」を入れ替えた「新規解−1」と、右から2番目の観測値「1」、「3」を入れ替えた「新規解−2」と、左から2番目の観測値「1」、「3」を入れ替えた「新規解−3」と、左端の観測値「1」、「4」を入れ替えた「新規解−4」とが生成される。
【0055】
また、新規解生成部7は、各新規解の評価値を計算し、新規解格納部8は、生成された新規解およびその評価値を格納する。
新規解生成部7における新規解生成処理が完了すると、最良解更新部9は、最良解格納部6に格納されている第n世代の最良解の評価値と、新規解格納部8に格納されている「新規解−1」〜「新規解−4」の評価値とを比較し、最良解よりも評価値の良い新規解が存在する場合には、最も評価値の良い新規解を第n+1世代の最良解として決定する。
【0056】
図6においては、第n世代の最良解と4個の新規解とを合わせた中で、「新規解−2」が最も評価値が良かったことから、最良解更新部9は、「新規解−2」を第n+1世代の最良解として決定した場合を示している。
【0057】
次に、最良解更新部9は、スタート数がK個の多スタート局所探索において、各探索の第n+1世代のK個の最良解の中に、同じ構成要素がL(≦K)個以上含まれれば、その構成要素をビルディングブロック候補と判定する。
【0058】
図7は最良解更新部9によるビルディングブロック候補の判定処理例を示しており、K=3、L=2とした場合の例を示している。
この場合、スタート数が「3」の多スタート局所探索が行われているので、異なる3通りの探索処理が実行されており、最良解格納部6には、それぞれの探索における最良解が格納されている。
【0059】
図7において、第n+1世代の3個の最良解のそれぞれには、構成要素{2、2、2、3}が含まれており、構成要素{2、2、2、3}は、「K(=3)個のスタート数のうち、L(=2)個以上の最良解に含まれている」という条件を満たしているので、最良解更新部9は、構成要素{2、2、2、3}を「ビルディングブロック候補」と判定する。
ビルディングブロック候補と判定された構成要素{2、2、2、3}に関する情報は、ビルディングブロック候補情報格納部10に格納される。
【0060】
最良解更新部9による更新処理が完了すると、ビルディングブロック判定部11は、ビルディングブロック候補情報格納部10に格納された情報から、「連続N世代、Kスタート中のL個以上の最良解に含まれるビルディングブロック候補」を、「ビルディングブロック」と判定する。
【0061】
図8はビルディングブロック判定部11の判定処理を示しており、上記条件数N、K、Lが、N=4、K=3、L=2の場合を示している。
図8において、構成要素{2、2、2、3}は、第n−2世代から第n+1世代までのN(=4)世代にわたって連続して、「K(=3)スタート中L(=2)個以上の最良解に含まれている」という条件を満たしているので、ビルディングブロック判定部11は、構成要素{2、2、2、3}を「ビルディングブロック」と判定する。
ビルディングブロックと判定された構成要素に関する情報は、ビルディングブロック情報格納部12に格納される。
【0062】
最後に、終了判定部13は、最適解探索の処理を継続するか否(終了する)かを判定し、継続する場合には新規解生成部7に処理を戻し、終了する場合には探索結果出力部14に処理を進める。
【0063】
終了判定部13による終了判定基準は、以下の通りである。
すなわち、「探索終了」の判定条件は、世代数が上限値に達するか、新規解生成部7が生成する全ての新規解に対して最良解更新部9が最良解の更新処理を実行できなかった場合であり、「探索継続」の条件は、上記「探索終了」の条件を満たさない場合である。
【0064】
最適解探索を終了する場合には、探索結果出力部14は、探索終了時点において最良解格納部6に格納されている最良解の中で最も評価値の良いものを、探索結果として出力する。
【0065】
以上のように、この発明の実施の形態1に係る航跡割当装置(図1〜図8)は、観測センサにより観測される時間的に連続した観測値情報を用いて複数の移動体の航跡を追尾するために、観測値情報の各々を複数の移動体の各航跡に割り当てる航跡割当装置であって、観測センサを用いて観測値情報を取得する観測値情報取得部1と、観測値情報取得部1が取得した観測値情報を格納する観測値情報格納部2と、航跡候補を生成する航跡候補生成部3と、航跡候補を格納する航跡候補格納部4と、最適解探索の開始時の初期解を生成する初期解生成部5と、初期解および最適解探索の途中で得られた解の中で最も良い解を最良解として格納する最良解格納部6と、最良解格納部6に格納された最良解の一部分を変更して新規解を生成する新規解生成部7と、新規解を格納する新規解格納部8と、新たな最良解を最良解格納部6に格納する最良解更新部9とを備えている。
【0066】
また、航跡割当装置は、最良解の構成要素をビルディングブロックと判定するビルディングブロック判定部11と、ビルディングブロックの候補となる構成要素に関するビルディングブロック候補情報を格納するビルディングブロック候補情報格納部10と、ビルディングブロックと判定された構成要素に関するビルディングブロック情報を格納するビルディングブロック情報格納部12と、最適解探索を終了するかまたは継続するかを判定する終了判定部13と、最適解探索を終了すると判定された場合に最終的に得られた最良解を出力する探索結果出力部14とを備えている。
【0067】
航跡候補生成部3は、観測値情報格納部2に格納された各時刻の観測値情報を組合せて、複数の移動体の各々が取り得る航跡の候補を航跡候補として生成する。
初期解生成部5は、航跡候補格納部4に格納された航跡候補の集合から最も評価値の良い航跡候補の組合せを最適解として探索する際に、最適解探索の開始時の航跡候補の組合せを初期解として生成する。
【0068】
新規解生成部7は、ビルディングブロック情報に基づいて、ビルディングブロックと判定された構成要素が必ず含まれるように新規解を生成する。
最良解更新部9は、新規解格納部8に格納された新規解と最良解格納部6に格納された最良解とを比較して、最良解よりも評価値が良い新規解が存在する場合に、当該新規解を新たな最良解として最良解格納部6に格納する。
【0069】
また、最良解更新部9は、スタート数がK個の初期解を用いた(すなわち、最適解探索の実行中にK個の最良解が存在する)多スタート局所探索時に、K個の最良解のうちのL個以上の最良解に同じ構成要素が含まれる場合に、当該構成要素をビルディングブロック候補と判定し、当該ビルディングブロック候補情報をビルディングブロック候補情報格納部10に登録する。
【0070】
ビルディングブロック判定部11は、最良解の構成要素となる航跡候補が最適解の構成要素となり得るか否かを判定し、最適解の構成要素となり得ると判定された最良解の構成要素をビルディングブロックと判定する。
また、ビルディングブロック判定部11は、最良解更新部による1回の最良解更新で世代が1つ進む条件下で、同一構成要素がN世代にわたって連続してビルディングブロック候補と判定された場合に、当該構成要素をビルディングブロックと判定し、当該ビルディングブロック情報をビルディングブロック情報格納部10に登録する。
【0071】
この発明の実施の形態1に係る航跡割当装置においては、多スタート局所探索における個々の探索を連携させ、一定世代数にわたって連続して、それぞれの探索で得られる最良解に共通して含まれる構成要素が存在する場合には、その構成要素を、最良解に含まれる構成要素であるビルディングブロックと判定し、以降の新規解生成時にビルディングブロックを必ず解の中に残すようにしている。
すなわち、多スタート局所探索における最良解を構成する要素の中で、ビルディングブロックである可能性が高いと判定したものを次の世代の最良解に必ず残すことができる。
【0072】
これにより、最適解探索の途中において、新規解生成時にビルディングブロックが破壊されることを回避することができるので、最良解が最適解から遠ざかること、最適解を求めるまでの更新世代数の増加、局所解に陥ること、といった不具合の発生を抑制することができる。
【0073】
したがって、最終的に得られる解の評価値の良さを表す探索精度を向上させるとともに、探索終了までの更新世代数の少なさに対応する探索速度を向上させることができ、MFA問題の最適解探索を精度良く効率的に行うことができる。
【0074】
実施の形態2.
なお、上記実施の形態1(図1)では、ビルディングブロック判定部11が多スタート局所探索の各探索で得られた最良解を連携させ「連続N世代、Kスタート中L個以上の最良解に含まれるビルディングブロック候補」をビルディングブロックと判定したが、ビルディングブロック判定部が各探索の連携を行わずに、各探索に関して独立にビルディングブロック判定を行うように構成してもよい。
【0075】
図9は独立にビルディングブロックを判定するように構成したこの発明の実施の形態2に係る航跡割当装置の機能構成を示すブロック図であり、前述(図1参照)と同様のものについては、前述と同一符号を付して詳述を省略する。
ここでは、図1とは一部機能が異なる新規解生成部7A、最良解更新部9A、ビルディングブロック候補情報格納部10Aおよびビルディングブロック判定部11Aのみの動作について説明する。
【0076】
図9において、新規解生成部7Aは、最良解格納部6に格納されている最良解の構成要素から新規解生成のためのペア選択を行う。
このペア選択において、新規解生成部7Aは、まず、ビルディングブロック情報格納部12に格納されているビルディングブロック情報を参照し、ビルディングブロックである構成要素をペア選択対象外とする。
【0077】
次に、新規解生成部7Aは、1個の構成要素を主構成要素として選択し、続いて、別の1個の構成要素を副構成要素として選択する。
このとき、新規解生成部7Aは、ビルディングブロック候補情報格納部10Aに格納されているビルディングブロック候補に関する情報を参照し、最良解の構成要素の中にビルディングブロック候補が存在する場合には、ビルディングブロック候補である構成要素を優先的に主構成要素として選択する。
【0078】
ここで、ビルディングブロック候補情報には、ビルディングブロック候補に選ばれた回数を示すビルディングブロック候補カウンタ(以下、「BB候補カウンタ」と略称する)の値が含まれているものとする。
【0079】
したがって、主構成要素を選択する際に、ビルディングブロック候補が複数存在する場合には、新規解生成部7Aは、BB候補カウンタ値の大きな構成要素から順に選択する。
一方、最良解の構成要素にビルディングブロック候補が含まれていなければ、新規解生成部7Aは、たとえば、ランダムに(または、構成要素の評価値に比例した選択確率にしたがい)主構成要素および副構成要素を選択する。
【0080】
次に、新規解生成部7Aは、ペア選択した主構成要素と副構成要素との同じ位置の観測値を入れ替えて新規解を生成し、生成した新規解を新規解格納部8に格納する。この新規解生成処理および新規解格納処理は、前述と同様である。
【0081】
次に、最良解更新部9Aは、最良解格納部6に格納されている最良解と、新規解格納部8に格納されている新規解を比較し、以下の処理(a)、(b)を行う。
(a)まず、最良解よりも評価値が高い新規解が存在する場合には、最良解更新部9Aは、最も評価値が高い新規解を、次の世代の最良解として最良解格納部6に格納する。
このとき、新規解の生成に用いた主構成要素または副構成要素が、ビルディングブロック候補であれば、当該ビルディングブロック候補のBB候補カウンタの値をリセットし、ビルディングブロック候補情報格納部10Aに格納されたビルディングブロック候補情報から、当該ビルディングブロック候補の情報を削除する。
【0082】
(b)一方、最良解よりも評価値が高い新規解が存在しなかった場合には、最良解更新部9Aは、新規解生成部7Aに処理を戻す。
また、同一の主構成要素とペア選択が可能な全ての副構成要素とから生成された全ての新規解から、最良解よりも高い評価値が得られなかった場合には、当該主構成要素をビルディングブロック候補と判定し、当該種構成要素のBB候補カウンタの値を「1」だけ増加させ、当該構成要素およびそのBB候補カウンタ値を、ビルディングブロック候補情報格納部10Aに格納する。
【0083】
以下、図10および図11の説明図を参照しながら、図9内の新規解生成部7Aおよび最良解更新部9Aの動作について説明する。
図10は新規解生成部7Aおよび最良解更新部9Aの動作を示しており、最良解に含まれるビルディングブロック候補を主構成要素として生成した新規解が、最良解よりも高い評価値を有する場合の例を示している。
【0084】
新規解生成部7Aは、最良解格納部6に格納されている最良解を取得し、ビルディングブロック候補情報格納部10Aに格納されているビルディングブロック情報を参照して、主構成要素と副構成要素とのペア選択を行う。
【0085】
図10において、新規解生成部7Aは、まず、最良解の構成要素{2、2、2、3}がビルディングブロック候補であることから、{2、2、2、3}を主構成要素とする。
続いて、新規解生成部7Aは、他に最良解の構成要素がビルディングブロック候補に含まれないことから、残りの構成要素から何らかの選択確率にしたがって副構成要素を選択する。
【0086】
このとき、副構成要素の選択に用いられる選択確率は、たとえばランダムに決定されてもよく、構成要素の評価値に比例した選択確率として決定されてもよい。
図10においては、{1、1、1、2}が副構成要素として選択された場合を示している。
続いて、新規解生成部7Aは、{2、2、2、3}と{1、1、1、2}とのペアにより新規解を生成し、生成した新規解を新規解格納部8に格納する。
【0087】
次に、最良解更新部9Aは、最良解格納部6に格納されている最良解と、新規解格納部8に格納されている新規解とを比較して、最良解よりも評価値が高い新規解が存在した場合には、最も評価値の高い新規解を、新たな最良解として最良解格納部6に格納する。
【0088】
また、最良解更新部9Aは、最良解の構成要素であって、且つ、ビルディングブロック候補である構成要素{2、2、2、3}を変更して、最良解よりも評価値が高い新規解が得られたことから、構成要素{2、2、2、3}は、ビルディングブロックではないと判定する。さらに、構成要素{2、2、2、3}をビルディングブロック候補から除外するために、{2、2、2、3}のBB候補カウンタの値を「0」にリセットし、{2、2、2、3}に関するビルディングブロック候補情報を、ビルディングブロック候補情報格納部10Aから削除する。
【0089】
図11は新規解生成部7Aおよび最良解更新部9Aの他の動作を示しており、最良解に含まれるビルディングブロック候補を主構成要素として生成した新規解の全てが、最良解よりも悪い評価値となった場合の例を示している。
【0090】
図11において、新規解生成部7Aは、前述(図10)と同様に、まず、最良解の構成要素{2、2、2、3}がビルディングブロック候補であることから、{2、2、2、3}を主構成要素とする。
続いて、最良解の他の構成要素はビルディングブロック候補に含まれないことから、残りの構成要素から、何らかの選択確率にしたがって副構成要素が選択される。
【0091】
このときの選択確率は、たとえばランダムでもあってもよく、構成要素の評価値に比例した選択確率としてもよい。
図11においては、前述(図10)と同様に、まず、{1、1、1、2}が副構成要素として選択された場合を示している。
続いて、新規解生成部7Aは、{2、2、2、3}と{1、1、1、2}とのペアにより新規解を生成し、生成した新規解を新規解格納部8に格納する。
【0092】
次に、最良解更新部9Aは、最良解格納部6に格納されている最良解と、新規解格納部8に格納されている新規解とを比較する。
この場合、比較の結果、最良解よりも評価値の高い新規解が存在しなかったことから、最良解更新部9Aは、第1回目に生成した新規解(図11内の最上段×印)を破棄して、新規解生成部7Aに処理を戻す。
【0093】
これにより、新規解生成部7Aは、主構成要素を{2、2、2、3}のままとしつつ、副構成要素を{3、4、4、4}に変更して2回目の新規解を生成し、生成した新規解を新規解格納部8に格納する。
最良解更新部9Aは、前回と同様に2回目の新規解と最良解との比較を行い、最良解よりも評価値の高い新規解が存在しなかったことから、第2回目に生成した新規解(図11内の2段目×印)を破棄して、再び新規解生成部7Aに処理を戻す。
【0094】
これにより、新規解生成部7Aは、主構成要素は{2、2、2、3}のままとしつつ、副構成要素を{4、3、3、1}に変更して3回目の新規解を生成し、新規解格納部8に生成した新規解を格納する。
最良解更新部9Aは、第2回目と同様に新規解と最良解との比較を行い、比較の結果、最良解よりも評価値の高い新規解が存在しなかったことから、第3回目に生成した新規解(図11内の3段目×印)を破棄する。
【0095】
以上の処理により、主構成要素を{2、2、2、3}として生成される新規解は、全て最良解よりも評価値が悪い結果となったので、最良解更新部9Aは、{2、2、2、3}をビルディングブロック候補と判定し、{2、2、2、3}のBB候補カウンタの値を「1」だけ増やして「2」とする。
【0096】
また、最良解更新部9Aは、ビルディングブロック候補情報格納部10Aに格納されている構成要素{2、2、2、3}のBB候補カウンタの値を「2」に更新する。
この時点で、最良解よりも評価値が高い新規解はまだ得られていないので、最良解更新部9Aは、再び処理を新規解生成部7Aに戻す。
【0097】
このとき、新規解生成部7Aにおいては、{2、2、2、3}を主構成要素とした新規解は全て生成済みなので、主構成要素を他の構成要素から選択する。
以下、新規解生成部7Aおよび最良解更新部9Aは、前述と同様の処理を繰り返し実行する。
【0098】
なお、図10、図11の例では、ビルディングブロック候補に含まれる最良解の構成要素を主構成要素とした場合を示したが、ビルディングブロック候補に含まれる最良解の構成要素が存在しない場合には、上記例で示した副構成要素の選択と同様にして、主構成要素を選択すればよい。
【0099】
最後に、ビルディングブロック判定部11Aは、ビルディングブロック候補情報格納部10Aに格納されているビルディングブロック候補情報を参照して、BB候補カウンタの値が予め定めた閾値を超えたビルディングブロック候補を「ビルディングブロック」と判定し、判定したビルディングブロックに関する情報を、ビルディングブロック情報格納部12に格納する。
【0100】
このとき、前述の実施の形態1(図1、図8)によるビルディングブロック判定部11は、多スタート局所探索の各探索で得られた最良解を連携させ「連続N世代、Kスタート中のL個以上の最良解に含まれるビルディングブロック候補」をビルディングブロックと判定したが、この発明の実施の形態2(図9)によるビルディングブロック判定部11Aは、各探索の連携を行わずに、各探索において独立にビルディングブロック判定を行う。
【0101】
以上のように、この発明の実施の形態2に係る航跡割当装置(図9〜図11)の最良解更新部9Aは、新規解生成部7Aによる新規解生成処理において、最良解の構成要素の一部分を変更して生成された全ての新規解の評価値が最良解の評価値よりも悪ければ、新規解の生成の元となった構成要素をビルディングブロック候補としてビルディングブロック候補情報格納部10Aに登録する。
すなわち、最良解の1個の構成要素を用いて生成される全ての新規解が最良解よりも高い評価値を得られなかった場合には、元となった構成要素をビルディングブロック候補と判定する。
【0102】
また、ビルディングブロック判定部11Aは、R回にわたって連続してビルディングブロック候補となった構成要素が存在する場合に、当該構成要素をビルディングブロックと判定し、当該構成要素に関するビルディングブロック情報をビルディングブロック情報格納部12に登録する。
すなわち、同一構成要素が一定回数にわたって連続してビルディングブロック候補と判定された場合には、その構成要素をビルディングブロックと判定して、以降の新規解生成処理において、必ずビルディングブロックを新規解に残す。
【0103】
これにより、最適解探索の途中において、新規解生成時にビルディングブロックが破壊されて最良解が最適解から遠ざかる現象、最適解を求めるまでの更新世代数が増加する現象および局所解に陥る現象を全て回避して、探索精度および探索速度を向上させることができるという効果がある。
【0104】
実施の形態3.
なお、上記実施の形態2では、多スタート局所探索時における処理を具体的に言及しなかったが、多スタート局所探索時において同様の処理を適用してもよい。
以下、多スタート局所探索時に同様の処理を適用したこの発明の実施の形態3について説明する。
【0105】
なお、この発明の実施の形態3に係る航跡割当装置は、前述(図9)と同様の構成からなり、ビルディングブロック判定部11Aの一部動作のみが異なるのみである。
したがって、ここでは、図9を参照しながら、主にビルディングブロック判定部11Aの動作について説明する。
【0106】
この発明の実施の形態3において、ビルディングブロック判定部11Aは、スタート数Kの多スタート局所探索における各探索の第n世代の最良解において、「K個の最良解のうち、BB候補カウンタが閾値Rを超える共通した構成要素(共通構成要素)を有する最良解がL個以上存在する」場合に、当該共通構成要素を「ビルディングブロック」と判定する。
【0107】
すなわち、ビルディングブロック判定部11Aは、多スタート探索時に、同一構成要素がR回にわたって連続して、K個中のL個以上の探索においてビルディングブロック候補となった場合に、当該構成要素をビルディングブロックと判定し、当該構成要素に関するビルディングブロック情報をビルディングブロック情報格納部12に登録する。
【0108】
この場合、最良解更新部9Aは、多スタート局所探索時に、個々の最適解探索の処理に応じた新規解生成部による新規解生成処理において、同じ構成要素の一部分を変更して生成された全ての新規解の評価値が最良解の評価値よりも悪ければ、新規解の生成の元となった構成要素に関するビルディングブロック候補情報をビルディングブロック候補情報格納部10Aに登録する。
【0109】
以上のように、この発明の実施の形態に係る航跡割当装置(図9)は、最良解の1個の構成要素を用いて生成される全ての新規解が最良解よりも高い評価値を得られなかった場合には、元となった構成要素をビルディングブロック候補と判定する。
また、多スタート局所探索における個々の探索を連携させ、同一世代の一定個数以上の最良解に共通するビルディングブロック候補が存在し、且つ、そのビルディングブロック候補のBB候補カウンタが一定値を超えている場合には、そのビルディングブロック候補をビルディングブロックと判定し、以降の新規解生成時にビルディングブロックを必ず解の中に残す。
【0110】
これにより、最適解探索の途中において、新規解生成時にビルディングブロックが破壊されることによって最良解が最適解から遠ざかる現象、最適解を求めるまでの更新世代数が増加する現象および局所解に陥る現象を回避して、探索精度(得られる解の評価値の良さ)および探索速度(探索終了までの更新世代数の少なさ)を向上させることができるという効果がある。
【0111】
実施の形態4.
なお、上記実施の形態3では、特に言及しなかったが、図12のように、優先変更対象判定部15および優先変更対象格納部16を追加し、多スタート局所探索において、ビルディングブロックでない同一の構成要素が一定数以上の最良解に含まれる場合に、いくつかの探索で優先的に当該構成要素を変更対象としてペア選択するように構成してもよい。
図12はこの発明の実施の形態3に係る航跡割当装置の機能構成を示すブロック図であり、前述(図9参照)と同様のものについては、前述と同一符号を付して詳述を省略する。
【0112】
図12において、優先変更対象判定部15は、初期解生成部5と新規解生成部7Bとの間に挿入されており、終了判定部の判定結果に応答する。
優先変更対象格納部16は、優先変更対象判定部15で判定された優先変更対象情報を格納し、格納データを新規解生成部7Bに提供する。
【0113】
この場合、前述(図9)との相違点は、優先変更対象判定部15および優先変更対象格納部16を新たに追加したことに加えて、新規解生成部7Bの一部機能が異なることである。
したがって、以下、図12を参照しながら、主に優先変更対象判定部15、優先変更対象格納部16および新規解生成部7Bの動作について説明する。
【0114】
まず、優先変更対象判定部15は、スタート数がK個の多スタート局所探索の実行時において、最良解格納部6に格納されているK個の最良解に共通して含まれる構成要素(共通構成要素)を探索し、K個中にS個以上の最良解に共通構成要素が存在する場合であって、且つ、共通構成要素がビルディングブロックでない場合には、当該最良解の数をM個とすると、M個の当該最良解からM−(S−1)個を選択する。
【0115】
続いて、優先変更対象判定部15は、選択した最良解の共通構成要素を優先変更対象と判定し、優先変更対象を含む最良解のスタート番号(スタート数が「3」であれば、スタート番号は「1」、「2」、「3」となる)と、優先変更対象となった共通構成要素を優先変更対象情報として優先変更対象格納部16に格納する。
【0116】
次に、新規解生成部7Bは、優先変更対象格納部16に格納されている優先変更対象情報を参照し、自分のスタート番号が優先変更対象情報に含まれている場合には、ペア選択において、優先変更対象の構成要素を主構成要素として選択する。
以降の新規解生成部7Bの処理については、前述の実施の形態2で述べた内容と同じなので、ここでは省略する。
【0117】
なお、新規解生成部7Bは、優先変更対象が存在しない場合か、または、ペア選択処理の未実行の優先変更対象が残っていない場合であれば、前述の実施の形態2で述べたように、ビルディングブロック候補を優先的に主構成要素として選択する。
すなわち、ペア選択における主構成要素の選択優先順位は、(1)「優先変更対象の構成要素」、(2)「ビルディングブロック候補」、(3)「それ以外の構成要素」の順となる。ただし、「ビルディングブロック」は、選択対象から除外される。
【0118】
次に、図13の説明図を参照しながら、優先変更対象判定部15の動作について説明する。
図13はスタート数が「5」の場合を示しており、5個の最良解のうちの4個にビルディングブロックでない構成要素{1、1、1、2}が含まれている場合の動作例を示している。
【0119】
図13において、優先選択対象の判定条件を、「K(=5)個中のS(=2)個以上の最良解にビルディングブロックでない構成要素が含まれている場合」とすると、構成要素{1、1、1、2}は、S(=2)個を超えるM(=4)個の最良解に含まれている。
したがって、優先変更対象判定部15は、構成要素{1、1、1、2}を含む最良解の中から、M−(S−1)(=3)個の最良解を選択する。
図13においては、破線矢印で示すように、スタート1、スタート2およびスタート5の3個の最良解が選択されている。
【0120】
次に、優先変更対象判定部15は、{1、1、1、2}のパターンと、選択したスタート番号「1」、「2」、「5」をまとめて、優先変更対象情報として優先変更対象格納部16に格納する。
【0121】
以上のように、この発明の実施の形態4に係る航跡割当装置(図12、図13)は、最良解格納部6に格納された最良解の構成要素の中から、新規解を生成する際の優先変更対象を選択する優先変更対象判定部15と、優先変更対象判定部15が優先変更対象と判定した構成要素に関する情報を優先変更対象情報として格納する優先対象格納部16とを備えている。
【0122】
優先変更対象判定部15は、多スタート探索時に、K個の最良解のうちのM個以上の最良解に同一構成要素が存在する場合に、M個の当該最良解からS個を選択し、選択したS個の最良解に含まれる同一構成要素に関する情報を優先変更対象情報として優先変更対象格納部16に登録する。
【0123】
また、新規解生成部7Bは、優先変更対象格納部16に格納された優先変更対象情報を参照し、優先変更対象とした構成要素の一部を変更して新規解を生成する。
すなわち、新規解生成部7Bは、多スタート局所探索において、ビルディングブロックでない同一の構成要素が一定数以上の最良解に含まれる場合に、新規解生成の処理実行時において、いくつかの探索で優先的に当該構成要素を変更対象としてペア選択する。
【0124】
これにより、各探索が解空間中の同じ範囲を探索することを防ぐことができ、各探索が異なる範囲を探索することにより、広い範囲の解空間の探索を可能とすることができる。
また、ビルディングブロックの判定を行い、新規解生成時にビルディングブロックを必ず解の中に残すことにより、前述と同様に、最適解探索の途中において、新規解生成時にビルディングブロックが破壊されることによって最良解が最適解から遠ざかる現象、最適解を求めるまでの更新世代数が増加する現象および局所解に陥る現象を回避して、探索精度(得られる解の評価値の良さ)および探索速度(探索終了までの更新世代数の少なさ)を向上させることができる。
【0125】
なお、上記実施の形態4では、実施の形態3の構成に適用した場合を例にとって説明したが、前述の実施の形態1、2にも適用可能なことは言うまでもない。
【図面の簡単な説明】
【0126】
【図1】この発明の実施の形態1に係る航跡割当装置の機能構成を示すブロック図である。
【図2】図1内の観測値情報取得部により取得される観測値を図式的に示す説明図である。
【図3】図1内の観測値情報格納部による観測値情報の格納状態を図式的に示す説明図である。
【図4】図1内の航跡候補生成部による処理動作を図式的に示す説明図である。を示している。
【図5】図1内の初期解生成部による初期解生成動作を図式的に示す説明図である。
【図6】図1内の新規解生成部および最良解更新部による処理動作を図式的に示す説明図である。
【図7】図1内の最良解更新部によるビルディングブロック候補による判定処理動作を図式的に示す説明図である。
【図8】図1内のビルディングブロック判定部による判定処理を図式的に示す説明図である。
【図9】この発明の実施の形態2に係る航跡割当装置の機能構成を示すブロック図である。
【図10】図9内の新規解生成部および最良解更新部による処理動作を図式的に示す説明図である。
【図11】図9内の新規解生成部および最良解更新部による他の処理動作を図式的に示す説明図である。
【図12】この発明の実施の形態4に係る航跡割当装置の機能構成を示すブロック図である。
【図13】図12内の優先変更対象判定部による判定処理動作を図式的に示す説明図である。
【図14】従来の航跡割当装置による処理動作を図式的に示す説明図であり、第n世代の最良解と更新後(第n+1世代)の最適解との関係を示している。
【符号の説明】
【0127】
1 観測値情報取得部、2 観測値情報格納部、3 航跡候補生成部、4 航跡候補格納部、5 初期解生成部、6 最良解格納部、7、7A、7B 新規解生成部、8 新規解格納部、9、9A 最良解更新部、10、10A ビルディングブロック候補情報格納部、11、11A ビルディングブロック判定部、12 ビルディングブロック情報格納部、13 終了判定部、14 探索結果出力部。
【技術分野】
【0001】
この発明は、レーダなどの観測センサにより得られる時間的に連続した複数フレームの観測値を用いて、観測された複数の移動体の航跡を求める航跡割当装置に関するものである。
【背景技術】
【0002】
従来から、レーダなどの観測センサにより得られた観測値(位置座標や信号強度などの情報が含まれる)を用いて複数の移動体の航跡を推定する航跡追尾処理はよく知られており、航跡追尾処理を構成する処理の1つとして航跡割当処理がある。一般に、観測センサの観測単位をフレームと呼び、1フレーム内には複数の観測値が含まれる。
【0003】
航跡割当処理においては、航跡の尤度(航跡の尤もらしさを表す指標)が最も高くなるように、それまでに得られている航跡に対して、新たに観測されたフレーム内の観測値を割り当てる処理が行われる。
従来の航跡割当装置としては、最新の1個のフレーム内の観測値の割当処理を行うMHT(Multiple Hypothesis Tracking)法を適用した目標追尾装置が提案されている(たとえば、特許文献1参照)。
【0004】
また、MHT法のように1個のフレームの割当処理から求められる航跡では、十分な航跡追尾の精度が得られないことから、さらに高い精度を得るために、連続する複数フレームの航跡割当処理を行うMFA(Multiple Frame Assignment)問題を解くアルゴリズムも提案されている。
【0005】
MFA問題は、組合せ最適化問題の1つであり、フレーム数やフレーム内の観測値数が増加すると、組合せ数が爆発的に増加してしまうので、厳密解法による最適解の導出においては、長時間を要し実用面で問題が生じる。
そこで、運用に支障をきたさなければ、最適解でなくても差し支えないという観点に立ち、MFA問題を高速に解くアルゴリズムとして、ラグランジュ緩和法を適用した手法が提案されている(たとえば、非特許文献1参照)。
【0006】
MFA問題にラグランジュ緩和法を適用する場合には、N次元(次元数=フレーム数)の問題を2次元に変換することで探索範囲の絞込みが行われるが、次元数が増えるほど、処理が煩雑になるうえ実装も難しくなり、効果的な絞込みを実現することができない可能性がある。
【0007】
一方、ラグランジュ緩和法よりも処理が単純で実装が容易であり、且つ、MFA問題を高速に解くことが期待できるアルゴリズムとして、組合せ最適化メタヒューリスティックス手法が存在する。
組合せ最適化メタヒューリスティックス手法の代表的なアルゴリズムとしては、遺伝的アルゴリズム、タブーサーチ、シミュレーテッドアニーリング、多スタート局所探索などが挙げられる。
【0008】
多スタート局所探索は、異なる初期解を複数用意して、複数の近傍探索を同時に実行する探索処理であり、単純な処理ながら探索効率を上げることが可能である。
この種のメタヒューリスティックス手法の特徴は、それまでの探索で得られた最良解の一部を変更して新規解を生成し、新規解の元となった最良解よりも評価値の良い新規解が存在した場合には、その新規解を最良解と置き換えることを繰り返し実行し、最適解を探索することにある。
【0009】
しかしながら、最良解から新規解を生成する処理において、最良解中に、最適解を構成する要素(以下、「ビルディングブロック」という)が含まれていた場合に、そのビルディングブロックが変更されてしまうことから、新規解の中にビルディングブロックが残らず、最適解または準最適解が求まるまでの探索回数の増加を招く場合や、最適解または準最適解が求まらない場合が生じるという問題がある。
【0010】
なお、「最良解」とは、現時点までの探索で得られている最も良い解を意味し、「最適解」とは、全ての組合せの中で最も適した解を意味し、「準最適解」とは、最適解に近い運用に支障を及ぼさない解を意味している。
【0011】
以下、図14の説明図を参照しながら、従来の航跡割当処理における具体例を挙げて、上記問題点について説明する。
図14においては、第n世代の最良解と、最良解の組み合わせを変更した新規解と、更新後(第n+1世代)の最適解との関係が示されている。
【0012】
図14において、n回目の更新後に得られた「最良解(第n世代)」は、4個の航跡を表しており、横一行{1、1、1、2}、{2、2、2、3}、{3、4、4、4}、{4、3、3、1}は、それぞれ1個の航跡であり、各航跡内の「1」〜「4」の数字は、観測値に振られた番号である。
【0013】
また、「最良解(第n世代)」の縦一列{1、2、3、4}、{1、2、4、3}{1、2、4、3}{2、3、4、1}は、同一フレーム内の観測値である。
したがって、「最良解(第n世代)」は、各フレームの観測値{1、1、1、2}を結んだ航跡と、観測値{2、2、2、3}を結んだ航跡と、観測値{3、4、4、4}を結んだ航跡と、観測値{4、3、3、1}を結んだ航跡から構成されている。
【0014】
このとき、航跡{2、2、2、3}が「ビルディングブロック」であったと仮定し、新規解の生成処理において、航跡{2、2、2、3}と航跡{4、3、3、1}とが変更対処として選ばれ、それぞれの同じ位置の観測値(灰色ブロック参照)を入れ替えた4個の新規解を生成したと仮定する。
こうして得られた4個の新規解(図14の破線枠内の4個の解)においては、「ビルディングブロック」が壊されていることが分かる。
【0015】
これら4個の新規解のうち、たとえば左から2番目の解が「最良解(第n世代)」よりも良い評価値であった場合には、最良解更新時に、「最良解(第n+1世代)」の解として、左から2番目の新規解が選ばれ(破線矢印参照)、最良解(第n+1世代)からビルディングブロックである航跡{2、2、2、3}が消えてしまう。
ビルディングブロックは最適解の構成要素であり、探索途中の最良解の構成要素がビルディングブロックであるか否かは判定することができないことから、このような問題が発生する。
【0016】
【特許文献1】特許第3145893号公報
【非特許文献1】Aubrey B.Poore、「A New Multidimensional Data Association Algorithm for Multisensor−Multitarget Tracking」、Proc. of SPIE Vol.2561、1995
【発明の開示】
【発明が解決しようとする課題】
【0017】
従来の航跡割当装置では、MFA問題を高速に解くためのメタヒューリスティックス手法として多スタート局所探索を適用した場合に、最良解から新規解を生成する処理において、最適解を構成する「ビルディングブロック」が変更されてしまうので、新規解の中にビルディングブロックが残らず、最適解または準最適解が求まるまでの探索回数の増加を招く場合や、最適解または準最適解が求められない場合が生じるという課題があった。
【0018】
この発明は、上記のような課題を解決するためになされたものであり、多スタート局所探索において各探索を連携させ、各探索における最良解を構成する要素の中でビルディングブロックである可能性が高いと判定したものを次の世代の最良解に必ず残すことにより、MFA問題の最適解探索を精度良く効率的に行うことのできる航跡割当装置を得ることを目的とする。
【課題を解決するための手段】
【0019】
この発明による航跡割当装置は、観測センサにより観測される時間的に連続した観測値情報を用いて複数の移動体の航跡を追尾するために、観測値情報の各々を複数の移動体の各航跡に割り当てる航跡割当装置であって、観測センサを用いて観測値情報を取得する観測値情報取得部と、観測値情報取得部が取得した観測値情報を格納する観測値情報格納部と、観測値情報格納部に格納された各時刻の観測値情報を組合せて、複数の移動体の各々が取り得る航跡の候補を航跡候補として生成する航跡候補生成部と、航跡候補を格納する航跡候補格納部と、航跡候補格納部に格納された航跡候補の集合から最も評価値の良い航跡候補の組合せを最適解として探索する際に、最適解探索の開始時の航跡候補の組合せを初期解として生成する初期解生成部と、初期解を格納するとともに、最適解探索の途中で得られた解の中で最も良い解を最良解として格納する最良解格納部と、最良解格納部に格納された最良解の一部分を変更し、新たな解を新規解として生成する新規解生成部と、新規解を格納する新規解格納部と、新規解格納部に格納された新規解と最良解格納部に格納された最良解とを比較して、最良解よりも評価値が良い新規解が存在する場合に、当該新規解を新たな最良解として最良解格納部に格納する最良解更新部と、最良解の構成要素となる航跡候補が最適解の構成要素となり得るか否かを判定し、最適解の構成要素となり得ると判定された最良解の構成要素をビルディングブロックと判定するビルディングブロック判定部と、ビルディングブロックの候補となる構成要素に関するビルディングブロック候補情報を格納するビルディングブロック候補情報格納部と、ビルディングブロックと判定された構成要素に関するビルディングブロック情報を格納するビルディングブロック情報格納部と、最適解探索を終了するかまたは継続するかを判定する終了判定部と、最適解探索を終了すると判定された場合に、最終的に得られた最良解を出力する探索結果出力部とを備え、新規解生成部は、ビルディングブロック情報に基づいて、ビルディングブロックと判定された構成要素が必ず含まれるように新規解を生成し、最良解更新部は、スタート数がK個の初期解を用いた(すなわち、最適解探索の実行中にK個の最良解が存在する)多スタート局所探索時に、K個の最良解のうちのL個以上の最良解に同じ構成要素が含まれる場合に、当該構成要素をビルディングブロック候補と判定し、当該ビルディングブロック候補情報をビルディングブロック候補情報格納部に登録し、ビルディングブロック判定部は、最良解更新部による1回の最良解更新で世代が1つ進む条件下で、同一構成要素がN世代にわたって連続してビルディングブロック候補と判定された場合に、当該構成要素をビルディングブロックと判定し、当該ビルディングブロック情報をビルディングブロック情報格納部に登録するものである。
【発明の効果】
【0020】
この発明によれば、多スタート局所探索における最良解を構成する要素の中で、ビルディングブロックである可能性が高いと判定したものを次の世代の最良解に必ず残すことができるので、MFA問題の最適解探索を精度良く効率的に行うことができる。
【発明を実施するための最良の形態】
【0021】
実施の形態1.
以下、図面を参照しながら、この発明を実施するための最良の形態について説明する。
図1はこの発明の実施の形態1に係る航跡割当装置の機能構成を示すブロック図であり、各ブロックを結ぶ実線矢印は、処理の流れを示し、破線矢印は、データの流れを示している。
【0022】
図1において、航跡割当装置は、観測値情報取得部1と、観測値情報格納部2と、航跡候補生成部3と、航跡候補格納部4と、初期解生成部5と、最良解格納部6と、新規解生成部7と、新規解格納部8と、最良解更新部9と、ビルディングブロック候補情報格納部10と、ビルディングブロック判定部11と、ビルディングブロック情報格納部12と、終了判定部13と、探索結果出力部14とを備えている。
【0023】
観測値情報取得部1は、レーダなど(図示せず)の観測センサにより観測された移動体の観測値データ(観測値情報)を取得し、観測値情報格納部2は、観測値情報取得部1で取得された移動体の観測値情報を格納する。
【0024】
航跡候補生成部3は、観測値情報格納部2に格納されている観測値情報に基づいて、観測値を組合せた航跡候補を生成するとともに、各航跡候補の評価値を計算する。航跡候補格納部4は、航跡候補生成部3により生成された航跡候補およびその評価値を格納する。
【0025】
初期解生成部5は、航跡候補格納部4に格納されている航跡候補およびその評価値を用いて、MFA問題の最適解探索を行うための初期解を生成する。
最良解格納部6は、繰り返し実行される最適解探索において、最新の最も評価値の良い解を最良解として格納する。なお、初期解生成部5で生成された初期解は、最初に得られた最良解として最良解格納部6に格納される。
【0026】
新規解生成部7は、ビルディングブロック情報格納部12に格納されているビルディングブロック情報に基づき、ビルディングブロックが残るように、最良解格納部6に格納されている最良解の一部を変更して新規解を生成する。新規解格納部8は、新規解生成部7で生成された新規解を格納する。
【0027】
最良解更新部9は、最良解格納部6に格納されている最良解と、新規解格納部8に格納されている新規解とを比較して、最良解よりも評価値の良い新規解が存在する場合には、当該新規解を新たな最良解として最良解格納部6に格納する。また、最良解更新部9は、最良解の更新後に、新たな最良解を構成する要素がビルディングブロックの候補となるか否かを判定する。
【0028】
ビルディングブロック候補情報格納部10は、最良解更新部9がビルディングブロック候補と判定した最良解の構成要素に関するビルディングブロック候補情報を格納する。
ビルディングブロック判定部11は、ビルディングブロック候補情報格納部10に格納された情報に基づいて、最良解を構成する要素がビルディングブロックとなり得るか否か判定する。
【0029】
ビルディングブロック情報格納部12は、ビルディングブロック判定部11がビルディングブロックと判定した、最良解を構成する要素に関するビルディングブロック情報を格納する。
終了判定部13は、最適解探索の処理終了判定を行い、探索処理終了と判定された場合には探索結果出力部14に処理を移し、終了しないと判定された場合には新規解生成部7に処理を戻す。
探索結果出力部14は、最適解探索に応じて得られた最良解を探索結果として出力する。
【0030】
次に、図2〜図8の説明図を参照しながら、図1に示した航跡割当装置による一連の動作について説明する。
まず、観測値情報取得部1は、たとえばレーダにより観測された移動体の最新の1フレーム分の観測値情報を取得し、観測値情報格納部2は、取得した観測値を、時間的に連続した複数フレーム分にわたって格納する。
【0031】
図2は観測値情報取得部1により取得される観測値を図式的に示しており、時系列的な観測値をX−Y平面上に配置した例を示している。
ここでは、時刻t、時刻t+1、時刻t+2、時刻t+3(4個のフレームt〜フレームt+3に対応)における4個の観測値が示されている。
【0032】
図2において、同一フレーム内の観測値は、それぞれ破線枠で囲まれており、各フレーム内の丸で囲まれた数字は、それぞれ観測値を表している。なお、観測値の数値「1」〜「4」は、単にフレーム内で割り当てた連番であり、数値そのものに特に意味はない。
【0033】
たとえば、図2に示した状況において、観測値情報収集部1は、最新のフレームt+3の観測値を取得して観測値情報格納部2に格納し、このとき、観測値情報格納部2は、最新のFフレーム分(F=4)の観測値情報を格納することになる。
【0034】
図3は観測値情報格納部2における観測値情報の格納状態を図式的に示しており、Fフレーム分(F=4)の場合を示している。
図3において、観測値情報格納部2には、4フレーム分(フレームt〜フレームt+3)の観測値情報が格納されており、最新のフレームがt+3である。また、丸で囲まれた数字は、前述(図2)と同様の観測値を表している。
【0035】
観測値情報格納部2への観測値情報の格納処理に続いて、次に、航跡候補生成部3は、観測値情報格納部2に格納されている観測値情報に基づいて航跡候補を生成し、航跡候補格納部4は、生成された航跡候補を格納する。
【0036】
図4は航跡候補生成部3による処理動作を示している。
図4において、観測値情報格納部2には、4フレーム分の観測値情報(1点鎖線枠内)が格納されており、縦一列が1フレーム分の観測値である。
各観測値は、図3と同様に、左から観測時刻(t、t+1、t+2、t+3)順に並んでいる。
【0037】
航跡候補生成部3は、観測値情報格納部2内の観測値情報から航跡候補を生成する。
航跡候補とは、MFAの解を構成する航跡となり得るものであり、各フレームから1個ずつ観測値を選択して観測順に並べることにより、図4内の航跡候補集合(1点鎖線枠内)のように生成される。
【0038】
たとえば、航跡候補集合中の最上段の航跡候補{1、1、1、1}は、フレームtの観測値「1」、フレームt+1の観測値「1」、フレームt+2の観測値「1」、フレームt+3の観測値「1」を繋いだ航跡候補である。
【0039】
図4の例では、航跡候補{1、1、1、1}〜{4、4、4、4}は、44(=256通り)だけ生成される。また、航跡候補生成部3は、生成した各航跡候補に対する評価値として、航跡コスト(−15.4、−2.2、・・・、−10.7)も併せて求める。
以下、航跡候補格納部4は、航跡候補生成部3で生成された航跡候補およびその評価値(図4)のデータを格納する。
【0040】
続いて、初期解生成部5は、航跡候補格納部4に格納されている航跡候補の集合の中から、同一フレーム内での観測値の重複がないように、且つ、全ての観測値が含まれるように、最適解探索の初期解を生成する。このとき生成される初期解の数は、適用される最適解探索のアルゴリズムに依存し、たとえば、多スタート局所探索を適用する場合には、スタート数が「K」であれば、K個の異なる初期解を生成する。
【0041】
図5は初期解生成部5における初期解生成動作を示しており、3個の初期解を生成する例を示している。
図5において、初期解生成部5は、以下の手順(1)〜(3)を3回繰り返すことにより、3個の初期解を生成する。
【0042】
(1)まず、航跡候補格納部4に格納されている航跡候補の集合から1個の航跡候補を選択する。このときの選択の基準としては、ランダムに基づくもの、評価値が最も良いもの、評価値に比例した選択確率に基づくもの、などが挙げられる。
ここでは、たとえば、図5の最上段に示す航跡候補{1、2、3、4}を選択する。
【0043】
(2)次に、選択済みの航跡候補との間で、同一フレーム内で観測値が重複しないように、航跡候補の集合から新たに航跡候補を選択する。このときの選択の基準は上記(1)と同じである。
ここでは、(1)において、航跡候補{1、2、3、4}が選択されているので、図5の2段目に示すように、(1)の航跡候補との間で同一フレーム内の観測値が重複しない航跡候補{2、3、4、1}を選択する。
【0044】
(3)同様にして、選択済みの全ての航跡候補と観測値の重複が起きないように、且つ、全ての観測値が初期解に含まれるように、航跡候補の集合から順次に航跡候補{3、4、1、2}、{4、1、2、3}を選択する。
これにより、図5に示すように、上記4通りの航跡候補からなる1個の「初期解−1」が生成される。
【0045】
以下、上記(1)〜(3)と同様の処理により、「初期解−2」を生成する。ただし、「初期解−2」は、「初期解−1」とは異なっていなければならない。
同様にして、「初期解−1」および「初期解−2」とは異なる「初期解−3」を生成する。
初期解生成部5で生成された3個の初期解「初期解−1」〜「初期解−3」は、最初に得られた最良解と見なせるので、最良解格納部6に格納される。
【0046】
効率的な最適解探索を行うためには、初期解が重要であり、この発明では、GRASP(Greedy Randomized Adaptive Search Procedure)という手法の初期解生成法を利用することとする。
なお、GRASP法による初期解生成の手順は、公知なので、ここでは割愛する。
【0047】
次に、新規解生成部7は、最良解格納部6に格納されている最良解の一部を変更した新規解を生成し、新規解格納部8は、生成された新規解を格納する。
新規解生成部7は、新規解生成時において、ビルディングブロック情報格納部12に格納されている情報に基づいて、最良解中に含まれるビルディングブロックと判定された構成要素を新規解に残すように解を生成する。
【0048】
ビルディングブロックの判定処理に関しては、ビルディングブロック判定部11の動作説明(後述する)で具体例を述べる。
新規解格納部8に新規解が格納されると、最良解更新部9は、最良解格納部6に格納されている最良解と新規解格納部8に格納されている新規解とを比較し、最良解よりも評価値の良い新規解が存在する場合には、最も評価値の良い新規解を「新たな最良解」とし、最良解格納部6に新たな最良解を格納する。
【0049】
もし、第n世代の最良解よりも評価値が良い新規解が生成されなかった場合には、最良解更新部9は、新規解生成部7に処理を戻す。これにより、新規解生成部7は、新規解の生成処理を再度実行する。
この発明の実施の形態1に係る航跡割当装置においては、新規解生成部7による新規解生成処理と、最良解更新部9による最良解更新処理と、を繰り返し実行することにより、最適解探索が行われる。
【0050】
図6は新規解生成部7および最良解更新部9の動作を示しており、第n世代から第n+1世代への新規解生成および最良解更新の例を示している。
ここでは、新規解生成処理と最良解更新処理との1サイクル分を「世代」と呼ぶことにする。
【0051】
図6において、新規解生成部7は、最良解格納部6に格納されている第n世代の最良解を取得し、新規解を生成するために観測値の入れ替えを行うための2個の構成要素を選択する(以下、この選択を「ペア選択」という)。
【0052】
このとき、ビルディングブロック情報格納部12に格納されているビルディングブロック情報に第n世代の最良解の構成要素{2、2、2、3}が含まれていたとすると、新規解生成部7は、構成要素{2、2、2、3}をペア選択対象から除外し、図6に示すように、たとえば構成要素{1、1、1、2}および{4、3、3、1}をペア選択する。
【0053】
なお、ペア選択の基準は、ここでは特に定めないが、たとえば、各構成要素の評価値の悪い順に2個選択するか、または、各構成要素の評価値に比例した選択確率を与えて選択する方法が考えられる。
【0054】
新規解生成部7は、選択した構成要素{1、1、1、2}と{4、3、3、1}の同じ位置の観測値(すなわち、同一フレーム内の観測値)を入れ替えて新規解を生成する。
図6においては、4個の新規解(2点鎖線枠内)が生成される。すなわち、右端の観測値「2」、「1」を入れ替えた「新規解−1」と、右から2番目の観測値「1」、「3」を入れ替えた「新規解−2」と、左から2番目の観測値「1」、「3」を入れ替えた「新規解−3」と、左端の観測値「1」、「4」を入れ替えた「新規解−4」とが生成される。
【0055】
また、新規解生成部7は、各新規解の評価値を計算し、新規解格納部8は、生成された新規解およびその評価値を格納する。
新規解生成部7における新規解生成処理が完了すると、最良解更新部9は、最良解格納部6に格納されている第n世代の最良解の評価値と、新規解格納部8に格納されている「新規解−1」〜「新規解−4」の評価値とを比較し、最良解よりも評価値の良い新規解が存在する場合には、最も評価値の良い新規解を第n+1世代の最良解として決定する。
【0056】
図6においては、第n世代の最良解と4個の新規解とを合わせた中で、「新規解−2」が最も評価値が良かったことから、最良解更新部9は、「新規解−2」を第n+1世代の最良解として決定した場合を示している。
【0057】
次に、最良解更新部9は、スタート数がK個の多スタート局所探索において、各探索の第n+1世代のK個の最良解の中に、同じ構成要素がL(≦K)個以上含まれれば、その構成要素をビルディングブロック候補と判定する。
【0058】
図7は最良解更新部9によるビルディングブロック候補の判定処理例を示しており、K=3、L=2とした場合の例を示している。
この場合、スタート数が「3」の多スタート局所探索が行われているので、異なる3通りの探索処理が実行されており、最良解格納部6には、それぞれの探索における最良解が格納されている。
【0059】
図7において、第n+1世代の3個の最良解のそれぞれには、構成要素{2、2、2、3}が含まれており、構成要素{2、2、2、3}は、「K(=3)個のスタート数のうち、L(=2)個以上の最良解に含まれている」という条件を満たしているので、最良解更新部9は、構成要素{2、2、2、3}を「ビルディングブロック候補」と判定する。
ビルディングブロック候補と判定された構成要素{2、2、2、3}に関する情報は、ビルディングブロック候補情報格納部10に格納される。
【0060】
最良解更新部9による更新処理が完了すると、ビルディングブロック判定部11は、ビルディングブロック候補情報格納部10に格納された情報から、「連続N世代、Kスタート中のL個以上の最良解に含まれるビルディングブロック候補」を、「ビルディングブロック」と判定する。
【0061】
図8はビルディングブロック判定部11の判定処理を示しており、上記条件数N、K、Lが、N=4、K=3、L=2の場合を示している。
図8において、構成要素{2、2、2、3}は、第n−2世代から第n+1世代までのN(=4)世代にわたって連続して、「K(=3)スタート中L(=2)個以上の最良解に含まれている」という条件を満たしているので、ビルディングブロック判定部11は、構成要素{2、2、2、3}を「ビルディングブロック」と判定する。
ビルディングブロックと判定された構成要素に関する情報は、ビルディングブロック情報格納部12に格納される。
【0062】
最後に、終了判定部13は、最適解探索の処理を継続するか否(終了する)かを判定し、継続する場合には新規解生成部7に処理を戻し、終了する場合には探索結果出力部14に処理を進める。
【0063】
終了判定部13による終了判定基準は、以下の通りである。
すなわち、「探索終了」の判定条件は、世代数が上限値に達するか、新規解生成部7が生成する全ての新規解に対して最良解更新部9が最良解の更新処理を実行できなかった場合であり、「探索継続」の条件は、上記「探索終了」の条件を満たさない場合である。
【0064】
最適解探索を終了する場合には、探索結果出力部14は、探索終了時点において最良解格納部6に格納されている最良解の中で最も評価値の良いものを、探索結果として出力する。
【0065】
以上のように、この発明の実施の形態1に係る航跡割当装置(図1〜図8)は、観測センサにより観測される時間的に連続した観測値情報を用いて複数の移動体の航跡を追尾するために、観測値情報の各々を複数の移動体の各航跡に割り当てる航跡割当装置であって、観測センサを用いて観測値情報を取得する観測値情報取得部1と、観測値情報取得部1が取得した観測値情報を格納する観測値情報格納部2と、航跡候補を生成する航跡候補生成部3と、航跡候補を格納する航跡候補格納部4と、最適解探索の開始時の初期解を生成する初期解生成部5と、初期解および最適解探索の途中で得られた解の中で最も良い解を最良解として格納する最良解格納部6と、最良解格納部6に格納された最良解の一部分を変更して新規解を生成する新規解生成部7と、新規解を格納する新規解格納部8と、新たな最良解を最良解格納部6に格納する最良解更新部9とを備えている。
【0066】
また、航跡割当装置は、最良解の構成要素をビルディングブロックと判定するビルディングブロック判定部11と、ビルディングブロックの候補となる構成要素に関するビルディングブロック候補情報を格納するビルディングブロック候補情報格納部10と、ビルディングブロックと判定された構成要素に関するビルディングブロック情報を格納するビルディングブロック情報格納部12と、最適解探索を終了するかまたは継続するかを判定する終了判定部13と、最適解探索を終了すると判定された場合に最終的に得られた最良解を出力する探索結果出力部14とを備えている。
【0067】
航跡候補生成部3は、観測値情報格納部2に格納された各時刻の観測値情報を組合せて、複数の移動体の各々が取り得る航跡の候補を航跡候補として生成する。
初期解生成部5は、航跡候補格納部4に格納された航跡候補の集合から最も評価値の良い航跡候補の組合せを最適解として探索する際に、最適解探索の開始時の航跡候補の組合せを初期解として生成する。
【0068】
新規解生成部7は、ビルディングブロック情報に基づいて、ビルディングブロックと判定された構成要素が必ず含まれるように新規解を生成する。
最良解更新部9は、新規解格納部8に格納された新規解と最良解格納部6に格納された最良解とを比較して、最良解よりも評価値が良い新規解が存在する場合に、当該新規解を新たな最良解として最良解格納部6に格納する。
【0069】
また、最良解更新部9は、スタート数がK個の初期解を用いた(すなわち、最適解探索の実行中にK個の最良解が存在する)多スタート局所探索時に、K個の最良解のうちのL個以上の最良解に同じ構成要素が含まれる場合に、当該構成要素をビルディングブロック候補と判定し、当該ビルディングブロック候補情報をビルディングブロック候補情報格納部10に登録する。
【0070】
ビルディングブロック判定部11は、最良解の構成要素となる航跡候補が最適解の構成要素となり得るか否かを判定し、最適解の構成要素となり得ると判定された最良解の構成要素をビルディングブロックと判定する。
また、ビルディングブロック判定部11は、最良解更新部による1回の最良解更新で世代が1つ進む条件下で、同一構成要素がN世代にわたって連続してビルディングブロック候補と判定された場合に、当該構成要素をビルディングブロックと判定し、当該ビルディングブロック情報をビルディングブロック情報格納部10に登録する。
【0071】
この発明の実施の形態1に係る航跡割当装置においては、多スタート局所探索における個々の探索を連携させ、一定世代数にわたって連続して、それぞれの探索で得られる最良解に共通して含まれる構成要素が存在する場合には、その構成要素を、最良解に含まれる構成要素であるビルディングブロックと判定し、以降の新規解生成時にビルディングブロックを必ず解の中に残すようにしている。
すなわち、多スタート局所探索における最良解を構成する要素の中で、ビルディングブロックである可能性が高いと判定したものを次の世代の最良解に必ず残すことができる。
【0072】
これにより、最適解探索の途中において、新規解生成時にビルディングブロックが破壊されることを回避することができるので、最良解が最適解から遠ざかること、最適解を求めるまでの更新世代数の増加、局所解に陥ること、といった不具合の発生を抑制することができる。
【0073】
したがって、最終的に得られる解の評価値の良さを表す探索精度を向上させるとともに、探索終了までの更新世代数の少なさに対応する探索速度を向上させることができ、MFA問題の最適解探索を精度良く効率的に行うことができる。
【0074】
実施の形態2.
なお、上記実施の形態1(図1)では、ビルディングブロック判定部11が多スタート局所探索の各探索で得られた最良解を連携させ「連続N世代、Kスタート中L個以上の最良解に含まれるビルディングブロック候補」をビルディングブロックと判定したが、ビルディングブロック判定部が各探索の連携を行わずに、各探索に関して独立にビルディングブロック判定を行うように構成してもよい。
【0075】
図9は独立にビルディングブロックを判定するように構成したこの発明の実施の形態2に係る航跡割当装置の機能構成を示すブロック図であり、前述(図1参照)と同様のものについては、前述と同一符号を付して詳述を省略する。
ここでは、図1とは一部機能が異なる新規解生成部7A、最良解更新部9A、ビルディングブロック候補情報格納部10Aおよびビルディングブロック判定部11Aのみの動作について説明する。
【0076】
図9において、新規解生成部7Aは、最良解格納部6に格納されている最良解の構成要素から新規解生成のためのペア選択を行う。
このペア選択において、新規解生成部7Aは、まず、ビルディングブロック情報格納部12に格納されているビルディングブロック情報を参照し、ビルディングブロックである構成要素をペア選択対象外とする。
【0077】
次に、新規解生成部7Aは、1個の構成要素を主構成要素として選択し、続いて、別の1個の構成要素を副構成要素として選択する。
このとき、新規解生成部7Aは、ビルディングブロック候補情報格納部10Aに格納されているビルディングブロック候補に関する情報を参照し、最良解の構成要素の中にビルディングブロック候補が存在する場合には、ビルディングブロック候補である構成要素を優先的に主構成要素として選択する。
【0078】
ここで、ビルディングブロック候補情報には、ビルディングブロック候補に選ばれた回数を示すビルディングブロック候補カウンタ(以下、「BB候補カウンタ」と略称する)の値が含まれているものとする。
【0079】
したがって、主構成要素を選択する際に、ビルディングブロック候補が複数存在する場合には、新規解生成部7Aは、BB候補カウンタ値の大きな構成要素から順に選択する。
一方、最良解の構成要素にビルディングブロック候補が含まれていなければ、新規解生成部7Aは、たとえば、ランダムに(または、構成要素の評価値に比例した選択確率にしたがい)主構成要素および副構成要素を選択する。
【0080】
次に、新規解生成部7Aは、ペア選択した主構成要素と副構成要素との同じ位置の観測値を入れ替えて新規解を生成し、生成した新規解を新規解格納部8に格納する。この新規解生成処理および新規解格納処理は、前述と同様である。
【0081】
次に、最良解更新部9Aは、最良解格納部6に格納されている最良解と、新規解格納部8に格納されている新規解を比較し、以下の処理(a)、(b)を行う。
(a)まず、最良解よりも評価値が高い新規解が存在する場合には、最良解更新部9Aは、最も評価値が高い新規解を、次の世代の最良解として最良解格納部6に格納する。
このとき、新規解の生成に用いた主構成要素または副構成要素が、ビルディングブロック候補であれば、当該ビルディングブロック候補のBB候補カウンタの値をリセットし、ビルディングブロック候補情報格納部10Aに格納されたビルディングブロック候補情報から、当該ビルディングブロック候補の情報を削除する。
【0082】
(b)一方、最良解よりも評価値が高い新規解が存在しなかった場合には、最良解更新部9Aは、新規解生成部7Aに処理を戻す。
また、同一の主構成要素とペア選択が可能な全ての副構成要素とから生成された全ての新規解から、最良解よりも高い評価値が得られなかった場合には、当該主構成要素をビルディングブロック候補と判定し、当該種構成要素のBB候補カウンタの値を「1」だけ増加させ、当該構成要素およびそのBB候補カウンタ値を、ビルディングブロック候補情報格納部10Aに格納する。
【0083】
以下、図10および図11の説明図を参照しながら、図9内の新規解生成部7Aおよび最良解更新部9Aの動作について説明する。
図10は新規解生成部7Aおよび最良解更新部9Aの動作を示しており、最良解に含まれるビルディングブロック候補を主構成要素として生成した新規解が、最良解よりも高い評価値を有する場合の例を示している。
【0084】
新規解生成部7Aは、最良解格納部6に格納されている最良解を取得し、ビルディングブロック候補情報格納部10Aに格納されているビルディングブロック情報を参照して、主構成要素と副構成要素とのペア選択を行う。
【0085】
図10において、新規解生成部7Aは、まず、最良解の構成要素{2、2、2、3}がビルディングブロック候補であることから、{2、2、2、3}を主構成要素とする。
続いて、新規解生成部7Aは、他に最良解の構成要素がビルディングブロック候補に含まれないことから、残りの構成要素から何らかの選択確率にしたがって副構成要素を選択する。
【0086】
このとき、副構成要素の選択に用いられる選択確率は、たとえばランダムに決定されてもよく、構成要素の評価値に比例した選択確率として決定されてもよい。
図10においては、{1、1、1、2}が副構成要素として選択された場合を示している。
続いて、新規解生成部7Aは、{2、2、2、3}と{1、1、1、2}とのペアにより新規解を生成し、生成した新規解を新規解格納部8に格納する。
【0087】
次に、最良解更新部9Aは、最良解格納部6に格納されている最良解と、新規解格納部8に格納されている新規解とを比較して、最良解よりも評価値が高い新規解が存在した場合には、最も評価値の高い新規解を、新たな最良解として最良解格納部6に格納する。
【0088】
また、最良解更新部9Aは、最良解の構成要素であって、且つ、ビルディングブロック候補である構成要素{2、2、2、3}を変更して、最良解よりも評価値が高い新規解が得られたことから、構成要素{2、2、2、3}は、ビルディングブロックではないと判定する。さらに、構成要素{2、2、2、3}をビルディングブロック候補から除外するために、{2、2、2、3}のBB候補カウンタの値を「0」にリセットし、{2、2、2、3}に関するビルディングブロック候補情報を、ビルディングブロック候補情報格納部10Aから削除する。
【0089】
図11は新規解生成部7Aおよび最良解更新部9Aの他の動作を示しており、最良解に含まれるビルディングブロック候補を主構成要素として生成した新規解の全てが、最良解よりも悪い評価値となった場合の例を示している。
【0090】
図11において、新規解生成部7Aは、前述(図10)と同様に、まず、最良解の構成要素{2、2、2、3}がビルディングブロック候補であることから、{2、2、2、3}を主構成要素とする。
続いて、最良解の他の構成要素はビルディングブロック候補に含まれないことから、残りの構成要素から、何らかの選択確率にしたがって副構成要素が選択される。
【0091】
このときの選択確率は、たとえばランダムでもあってもよく、構成要素の評価値に比例した選択確率としてもよい。
図11においては、前述(図10)と同様に、まず、{1、1、1、2}が副構成要素として選択された場合を示している。
続いて、新規解生成部7Aは、{2、2、2、3}と{1、1、1、2}とのペアにより新規解を生成し、生成した新規解を新規解格納部8に格納する。
【0092】
次に、最良解更新部9Aは、最良解格納部6に格納されている最良解と、新規解格納部8に格納されている新規解とを比較する。
この場合、比較の結果、最良解よりも評価値の高い新規解が存在しなかったことから、最良解更新部9Aは、第1回目に生成した新規解(図11内の最上段×印)を破棄して、新規解生成部7Aに処理を戻す。
【0093】
これにより、新規解生成部7Aは、主構成要素を{2、2、2、3}のままとしつつ、副構成要素を{3、4、4、4}に変更して2回目の新規解を生成し、生成した新規解を新規解格納部8に格納する。
最良解更新部9Aは、前回と同様に2回目の新規解と最良解との比較を行い、最良解よりも評価値の高い新規解が存在しなかったことから、第2回目に生成した新規解(図11内の2段目×印)を破棄して、再び新規解生成部7Aに処理を戻す。
【0094】
これにより、新規解生成部7Aは、主構成要素は{2、2、2、3}のままとしつつ、副構成要素を{4、3、3、1}に変更して3回目の新規解を生成し、新規解格納部8に生成した新規解を格納する。
最良解更新部9Aは、第2回目と同様に新規解と最良解との比較を行い、比較の結果、最良解よりも評価値の高い新規解が存在しなかったことから、第3回目に生成した新規解(図11内の3段目×印)を破棄する。
【0095】
以上の処理により、主構成要素を{2、2、2、3}として生成される新規解は、全て最良解よりも評価値が悪い結果となったので、最良解更新部9Aは、{2、2、2、3}をビルディングブロック候補と判定し、{2、2、2、3}のBB候補カウンタの値を「1」だけ増やして「2」とする。
【0096】
また、最良解更新部9Aは、ビルディングブロック候補情報格納部10Aに格納されている構成要素{2、2、2、3}のBB候補カウンタの値を「2」に更新する。
この時点で、最良解よりも評価値が高い新規解はまだ得られていないので、最良解更新部9Aは、再び処理を新規解生成部7Aに戻す。
【0097】
このとき、新規解生成部7Aにおいては、{2、2、2、3}を主構成要素とした新規解は全て生成済みなので、主構成要素を他の構成要素から選択する。
以下、新規解生成部7Aおよび最良解更新部9Aは、前述と同様の処理を繰り返し実行する。
【0098】
なお、図10、図11の例では、ビルディングブロック候補に含まれる最良解の構成要素を主構成要素とした場合を示したが、ビルディングブロック候補に含まれる最良解の構成要素が存在しない場合には、上記例で示した副構成要素の選択と同様にして、主構成要素を選択すればよい。
【0099】
最後に、ビルディングブロック判定部11Aは、ビルディングブロック候補情報格納部10Aに格納されているビルディングブロック候補情報を参照して、BB候補カウンタの値が予め定めた閾値を超えたビルディングブロック候補を「ビルディングブロック」と判定し、判定したビルディングブロックに関する情報を、ビルディングブロック情報格納部12に格納する。
【0100】
このとき、前述の実施の形態1(図1、図8)によるビルディングブロック判定部11は、多スタート局所探索の各探索で得られた最良解を連携させ「連続N世代、Kスタート中のL個以上の最良解に含まれるビルディングブロック候補」をビルディングブロックと判定したが、この発明の実施の形態2(図9)によるビルディングブロック判定部11Aは、各探索の連携を行わずに、各探索において独立にビルディングブロック判定を行う。
【0101】
以上のように、この発明の実施の形態2に係る航跡割当装置(図9〜図11)の最良解更新部9Aは、新規解生成部7Aによる新規解生成処理において、最良解の構成要素の一部分を変更して生成された全ての新規解の評価値が最良解の評価値よりも悪ければ、新規解の生成の元となった構成要素をビルディングブロック候補としてビルディングブロック候補情報格納部10Aに登録する。
すなわち、最良解の1個の構成要素を用いて生成される全ての新規解が最良解よりも高い評価値を得られなかった場合には、元となった構成要素をビルディングブロック候補と判定する。
【0102】
また、ビルディングブロック判定部11Aは、R回にわたって連続してビルディングブロック候補となった構成要素が存在する場合に、当該構成要素をビルディングブロックと判定し、当該構成要素に関するビルディングブロック情報をビルディングブロック情報格納部12に登録する。
すなわち、同一構成要素が一定回数にわたって連続してビルディングブロック候補と判定された場合には、その構成要素をビルディングブロックと判定して、以降の新規解生成処理において、必ずビルディングブロックを新規解に残す。
【0103】
これにより、最適解探索の途中において、新規解生成時にビルディングブロックが破壊されて最良解が最適解から遠ざかる現象、最適解を求めるまでの更新世代数が増加する現象および局所解に陥る現象を全て回避して、探索精度および探索速度を向上させることができるという効果がある。
【0104】
実施の形態3.
なお、上記実施の形態2では、多スタート局所探索時における処理を具体的に言及しなかったが、多スタート局所探索時において同様の処理を適用してもよい。
以下、多スタート局所探索時に同様の処理を適用したこの発明の実施の形態3について説明する。
【0105】
なお、この発明の実施の形態3に係る航跡割当装置は、前述(図9)と同様の構成からなり、ビルディングブロック判定部11Aの一部動作のみが異なるのみである。
したがって、ここでは、図9を参照しながら、主にビルディングブロック判定部11Aの動作について説明する。
【0106】
この発明の実施の形態3において、ビルディングブロック判定部11Aは、スタート数Kの多スタート局所探索における各探索の第n世代の最良解において、「K個の最良解のうち、BB候補カウンタが閾値Rを超える共通した構成要素(共通構成要素)を有する最良解がL個以上存在する」場合に、当該共通構成要素を「ビルディングブロック」と判定する。
【0107】
すなわち、ビルディングブロック判定部11Aは、多スタート探索時に、同一構成要素がR回にわたって連続して、K個中のL個以上の探索においてビルディングブロック候補となった場合に、当該構成要素をビルディングブロックと判定し、当該構成要素に関するビルディングブロック情報をビルディングブロック情報格納部12に登録する。
【0108】
この場合、最良解更新部9Aは、多スタート局所探索時に、個々の最適解探索の処理に応じた新規解生成部による新規解生成処理において、同じ構成要素の一部分を変更して生成された全ての新規解の評価値が最良解の評価値よりも悪ければ、新規解の生成の元となった構成要素に関するビルディングブロック候補情報をビルディングブロック候補情報格納部10Aに登録する。
【0109】
以上のように、この発明の実施の形態に係る航跡割当装置(図9)は、最良解の1個の構成要素を用いて生成される全ての新規解が最良解よりも高い評価値を得られなかった場合には、元となった構成要素をビルディングブロック候補と判定する。
また、多スタート局所探索における個々の探索を連携させ、同一世代の一定個数以上の最良解に共通するビルディングブロック候補が存在し、且つ、そのビルディングブロック候補のBB候補カウンタが一定値を超えている場合には、そのビルディングブロック候補をビルディングブロックと判定し、以降の新規解生成時にビルディングブロックを必ず解の中に残す。
【0110】
これにより、最適解探索の途中において、新規解生成時にビルディングブロックが破壊されることによって最良解が最適解から遠ざかる現象、最適解を求めるまでの更新世代数が増加する現象および局所解に陥る現象を回避して、探索精度(得られる解の評価値の良さ)および探索速度(探索終了までの更新世代数の少なさ)を向上させることができるという効果がある。
【0111】
実施の形態4.
なお、上記実施の形態3では、特に言及しなかったが、図12のように、優先変更対象判定部15および優先変更対象格納部16を追加し、多スタート局所探索において、ビルディングブロックでない同一の構成要素が一定数以上の最良解に含まれる場合に、いくつかの探索で優先的に当該構成要素を変更対象としてペア選択するように構成してもよい。
図12はこの発明の実施の形態3に係る航跡割当装置の機能構成を示すブロック図であり、前述(図9参照)と同様のものについては、前述と同一符号を付して詳述を省略する。
【0112】
図12において、優先変更対象判定部15は、初期解生成部5と新規解生成部7Bとの間に挿入されており、終了判定部の判定結果に応答する。
優先変更対象格納部16は、優先変更対象判定部15で判定された優先変更対象情報を格納し、格納データを新規解生成部7Bに提供する。
【0113】
この場合、前述(図9)との相違点は、優先変更対象判定部15および優先変更対象格納部16を新たに追加したことに加えて、新規解生成部7Bの一部機能が異なることである。
したがって、以下、図12を参照しながら、主に優先変更対象判定部15、優先変更対象格納部16および新規解生成部7Bの動作について説明する。
【0114】
まず、優先変更対象判定部15は、スタート数がK個の多スタート局所探索の実行時において、最良解格納部6に格納されているK個の最良解に共通して含まれる構成要素(共通構成要素)を探索し、K個中にS個以上の最良解に共通構成要素が存在する場合であって、且つ、共通構成要素がビルディングブロックでない場合には、当該最良解の数をM個とすると、M個の当該最良解からM−(S−1)個を選択する。
【0115】
続いて、優先変更対象判定部15は、選択した最良解の共通構成要素を優先変更対象と判定し、優先変更対象を含む最良解のスタート番号(スタート数が「3」であれば、スタート番号は「1」、「2」、「3」となる)と、優先変更対象となった共通構成要素を優先変更対象情報として優先変更対象格納部16に格納する。
【0116】
次に、新規解生成部7Bは、優先変更対象格納部16に格納されている優先変更対象情報を参照し、自分のスタート番号が優先変更対象情報に含まれている場合には、ペア選択において、優先変更対象の構成要素を主構成要素として選択する。
以降の新規解生成部7Bの処理については、前述の実施の形態2で述べた内容と同じなので、ここでは省略する。
【0117】
なお、新規解生成部7Bは、優先変更対象が存在しない場合か、または、ペア選択処理の未実行の優先変更対象が残っていない場合であれば、前述の実施の形態2で述べたように、ビルディングブロック候補を優先的に主構成要素として選択する。
すなわち、ペア選択における主構成要素の選択優先順位は、(1)「優先変更対象の構成要素」、(2)「ビルディングブロック候補」、(3)「それ以外の構成要素」の順となる。ただし、「ビルディングブロック」は、選択対象から除外される。
【0118】
次に、図13の説明図を参照しながら、優先変更対象判定部15の動作について説明する。
図13はスタート数が「5」の場合を示しており、5個の最良解のうちの4個にビルディングブロックでない構成要素{1、1、1、2}が含まれている場合の動作例を示している。
【0119】
図13において、優先選択対象の判定条件を、「K(=5)個中のS(=2)個以上の最良解にビルディングブロックでない構成要素が含まれている場合」とすると、構成要素{1、1、1、2}は、S(=2)個を超えるM(=4)個の最良解に含まれている。
したがって、優先変更対象判定部15は、構成要素{1、1、1、2}を含む最良解の中から、M−(S−1)(=3)個の最良解を選択する。
図13においては、破線矢印で示すように、スタート1、スタート2およびスタート5の3個の最良解が選択されている。
【0120】
次に、優先変更対象判定部15は、{1、1、1、2}のパターンと、選択したスタート番号「1」、「2」、「5」をまとめて、優先変更対象情報として優先変更対象格納部16に格納する。
【0121】
以上のように、この発明の実施の形態4に係る航跡割当装置(図12、図13)は、最良解格納部6に格納された最良解の構成要素の中から、新規解を生成する際の優先変更対象を選択する優先変更対象判定部15と、優先変更対象判定部15が優先変更対象と判定した構成要素に関する情報を優先変更対象情報として格納する優先対象格納部16とを備えている。
【0122】
優先変更対象判定部15は、多スタート探索時に、K個の最良解のうちのM個以上の最良解に同一構成要素が存在する場合に、M個の当該最良解からS個を選択し、選択したS個の最良解に含まれる同一構成要素に関する情報を優先変更対象情報として優先変更対象格納部16に登録する。
【0123】
また、新規解生成部7Bは、優先変更対象格納部16に格納された優先変更対象情報を参照し、優先変更対象とした構成要素の一部を変更して新規解を生成する。
すなわち、新規解生成部7Bは、多スタート局所探索において、ビルディングブロックでない同一の構成要素が一定数以上の最良解に含まれる場合に、新規解生成の処理実行時において、いくつかの探索で優先的に当該構成要素を変更対象としてペア選択する。
【0124】
これにより、各探索が解空間中の同じ範囲を探索することを防ぐことができ、各探索が異なる範囲を探索することにより、広い範囲の解空間の探索を可能とすることができる。
また、ビルディングブロックの判定を行い、新規解生成時にビルディングブロックを必ず解の中に残すことにより、前述と同様に、最適解探索の途中において、新規解生成時にビルディングブロックが破壊されることによって最良解が最適解から遠ざかる現象、最適解を求めるまでの更新世代数が増加する現象および局所解に陥る現象を回避して、探索精度(得られる解の評価値の良さ)および探索速度(探索終了までの更新世代数の少なさ)を向上させることができる。
【0125】
なお、上記実施の形態4では、実施の形態3の構成に適用した場合を例にとって説明したが、前述の実施の形態1、2にも適用可能なことは言うまでもない。
【図面の簡単な説明】
【0126】
【図1】この発明の実施の形態1に係る航跡割当装置の機能構成を示すブロック図である。
【図2】図1内の観測値情報取得部により取得される観測値を図式的に示す説明図である。
【図3】図1内の観測値情報格納部による観測値情報の格納状態を図式的に示す説明図である。
【図4】図1内の航跡候補生成部による処理動作を図式的に示す説明図である。を示している。
【図5】図1内の初期解生成部による初期解生成動作を図式的に示す説明図である。
【図6】図1内の新規解生成部および最良解更新部による処理動作を図式的に示す説明図である。
【図7】図1内の最良解更新部によるビルディングブロック候補による判定処理動作を図式的に示す説明図である。
【図8】図1内のビルディングブロック判定部による判定処理を図式的に示す説明図である。
【図9】この発明の実施の形態2に係る航跡割当装置の機能構成を示すブロック図である。
【図10】図9内の新規解生成部および最良解更新部による処理動作を図式的に示す説明図である。
【図11】図9内の新規解生成部および最良解更新部による他の処理動作を図式的に示す説明図である。
【図12】この発明の実施の形態4に係る航跡割当装置の機能構成を示すブロック図である。
【図13】図12内の優先変更対象判定部による判定処理動作を図式的に示す説明図である。
【図14】従来の航跡割当装置による処理動作を図式的に示す説明図であり、第n世代の最良解と更新後(第n+1世代)の最適解との関係を示している。
【符号の説明】
【0127】
1 観測値情報取得部、2 観測値情報格納部、3 航跡候補生成部、4 航跡候補格納部、5 初期解生成部、6 最良解格納部、7、7A、7B 新規解生成部、8 新規解格納部、9、9A 最良解更新部、10、10A ビルディングブロック候補情報格納部、11、11A ビルディングブロック判定部、12 ビルディングブロック情報格納部、13 終了判定部、14 探索結果出力部。
【特許請求の範囲】
【請求項1】
観測センサにより観測される時間的に連続した観測値情報を用いて複数の移動体の航跡を追尾するために、前記観測値情報の各々を前記複数の移動体の各航跡に割り当てる航跡割当装置であって、
前記観測センサを用いて前記観測値情報を取得する観測値情報取得部と、
前記観測値情報取得部が取得した前記観測値情報を格納する観測値情報格納部と、
前記観測値情報格納部に格納された各時刻の観測値情報を組合せて、前記複数の移動体の各々が取り得る航跡の候補を航跡候補として生成する航跡候補生成部と、
前記航跡候補を格納する航跡候補格納部と、
前記航跡候補格納部に格納された航跡候補の集合から最も評価値の良い航跡候補の組合せを最適解として探索する際に、最適解探索の開始時の航跡候補の組合せを初期解として生成する初期解生成部と、
前記初期解を格納するとともに、前記最適解探索の途中で得られた解の中で最も良い解を最良解として格納する最良解格納部と、
前記最良解格納部に格納された最良解の一部分を変更し、新たな解を新規解として生成する新規解生成部と、
前記新規解を格納する新規解格納部と、
前記新規解格納部に格納された新規解と前記最良解格納部に格納された最良解とを比較して、最良解よりも評価値が良い新規解が存在する場合に、当該新規解を新たな最良解として前記最良解格納部に格納する最良解更新部と、
前記最良解の構成要素となる航跡候補が前記最適解の構成要素となり得るか否かを判定し、前記最適解の構成要素となり得ると判定された最良解の構成要素をビルディングブロックと判定するビルディングブロック判定部と、
前記ビルディングブロックの候補となる構成要素に関するビルディングブロック候補情報を格納するビルディングブロック候補情報格納部と、
前記ビルディングブロックと判定された構成要素に関するビルディングブロック情報を格納するビルディングブロック情報格納部と、
前記最適解探索を終了するかまたは継続するかを判定する終了判定部と、
前記最適解探索を終了すると判定された場合に、最終的に得られた最良解を出力する探索結果出力部と
を備え、
前記新規解生成部は、前記ビルディングブロック情報に基づいて、前記ビルディングブロックと判定された構成要素が必ず含まれるように前記新規解を生成し、
前記最良解更新部は、スタート数がK個の初期解を用いた(すなわち、最適解探索の実行中にK個の最良解が存在する)多スタート局所探索時に、K個の最良解のうちのL個以上の最良解に同じ構成要素が含まれる場合に、当該構成要素をビルディングブロック候補と判定し、当該ビルディングブロック候補情報をビルディングブロック候補情報格納部に登録し、
前記ビルディングブロック判定部は、前記最良解更新部による1回の最良解更新で世代が1つ進む条件下で、同一構成要素がN世代にわたって連続してビルディングブロック候補と判定された場合に、当該構成要素をビルディングブロックと判定し、当該ビルディングブロック情報を前記ビルディングブロック情報格納部に登録する
ことを特徴とする航跡割当装置。
【請求項2】
前記最良解更新部は、前記新規解生成部による新規解生成処理において、前記最良解の構成要素の一部分を変更して生成された全ての新規解の評価値が前記最良解の評価値よりも悪ければ、前記新規解の生成の元となった構成要素をビルディングブロック候補として前記ビルディングブロック候補情報格納部に登録し、
前記ビルディングブロック判定部は、R回にわたって連続してビルディングブロック候補となった構成要素が存在する場合に、当該構成要素をビルディングブロックと判定し、当該構成要素に関するビルディングブロック情報を前記ビルディングブロック情報格納部に登録する
ことを特徴とする請求項1に記載の航跡割当装置。
【請求項3】
前記最良解更新部は、前記多スタート局所探索時に、個々の最適解探索の処理に応じた前記新規解生成部による新規解生成処理において、同じ構成要素の一部分を変更して生成された全ての新規解の評価値が前記最良解の評価値よりも悪ければ、前記新規解の生成の元となった構成要素に関するビルディングブロック候補情報を前記ビルディングブロック候補情報格納部に登録し、
前記ビルディングブロック判定部は、前記多スタート探索時に、同一構成要素がR回にわたって連続して、K個中のL個以上の探索においてビルディングブロック候補となった場合に、当該構成要素をビルディングブロックと判定し、当該構成要素に関するビルディングブロック情報を前記ビルディングブロック情報格納部に登録する
ことを特徴とする請求項1に記載の航跡割当装置。
【請求項4】
前記最良解格納部に格納された最良解の構成要素の中から、前記新規解を生成する際の優先変更対象を選択する優先変更対象判定部と、
前記優先変更対象判定部が優先変更対象と判定した構成要素に関する情報を優先変更対象情報として格納する優先対象格納部と
を備え、
前記優先変更対象判定部は、前記多スタート探索時に、K個の最良解のうちのM個以上の最良解に同一構成要素が存在する場合に、M個の当該最良解からS個を選択し、選択したS個の最良解に含まれる同一構成要素に関する情報を前記優先変更対象情報として前記優先変更対象格納部に登録し、
前記新規解生成部は、前記優先変更対象格納部に格納された優先変更対象情報を参照し、前記優先変更対象とした構成要素の一部を変更して前記新規解を生成する
ことを特徴とする請求項1から請求項3までのいずれか1項に記載の航跡割当装置。
【請求項1】
観測センサにより観測される時間的に連続した観測値情報を用いて複数の移動体の航跡を追尾するために、前記観測値情報の各々を前記複数の移動体の各航跡に割り当てる航跡割当装置であって、
前記観測センサを用いて前記観測値情報を取得する観測値情報取得部と、
前記観測値情報取得部が取得した前記観測値情報を格納する観測値情報格納部と、
前記観測値情報格納部に格納された各時刻の観測値情報を組合せて、前記複数の移動体の各々が取り得る航跡の候補を航跡候補として生成する航跡候補生成部と、
前記航跡候補を格納する航跡候補格納部と、
前記航跡候補格納部に格納された航跡候補の集合から最も評価値の良い航跡候補の組合せを最適解として探索する際に、最適解探索の開始時の航跡候補の組合せを初期解として生成する初期解生成部と、
前記初期解を格納するとともに、前記最適解探索の途中で得られた解の中で最も良い解を最良解として格納する最良解格納部と、
前記最良解格納部に格納された最良解の一部分を変更し、新たな解を新規解として生成する新規解生成部と、
前記新規解を格納する新規解格納部と、
前記新規解格納部に格納された新規解と前記最良解格納部に格納された最良解とを比較して、最良解よりも評価値が良い新規解が存在する場合に、当該新規解を新たな最良解として前記最良解格納部に格納する最良解更新部と、
前記最良解の構成要素となる航跡候補が前記最適解の構成要素となり得るか否かを判定し、前記最適解の構成要素となり得ると判定された最良解の構成要素をビルディングブロックと判定するビルディングブロック判定部と、
前記ビルディングブロックの候補となる構成要素に関するビルディングブロック候補情報を格納するビルディングブロック候補情報格納部と、
前記ビルディングブロックと判定された構成要素に関するビルディングブロック情報を格納するビルディングブロック情報格納部と、
前記最適解探索を終了するかまたは継続するかを判定する終了判定部と、
前記最適解探索を終了すると判定された場合に、最終的に得られた最良解を出力する探索結果出力部と
を備え、
前記新規解生成部は、前記ビルディングブロック情報に基づいて、前記ビルディングブロックと判定された構成要素が必ず含まれるように前記新規解を生成し、
前記最良解更新部は、スタート数がK個の初期解を用いた(すなわち、最適解探索の実行中にK個の最良解が存在する)多スタート局所探索時に、K個の最良解のうちのL個以上の最良解に同じ構成要素が含まれる場合に、当該構成要素をビルディングブロック候補と判定し、当該ビルディングブロック候補情報をビルディングブロック候補情報格納部に登録し、
前記ビルディングブロック判定部は、前記最良解更新部による1回の最良解更新で世代が1つ進む条件下で、同一構成要素がN世代にわたって連続してビルディングブロック候補と判定された場合に、当該構成要素をビルディングブロックと判定し、当該ビルディングブロック情報を前記ビルディングブロック情報格納部に登録する
ことを特徴とする航跡割当装置。
【請求項2】
前記最良解更新部は、前記新規解生成部による新規解生成処理において、前記最良解の構成要素の一部分を変更して生成された全ての新規解の評価値が前記最良解の評価値よりも悪ければ、前記新規解の生成の元となった構成要素をビルディングブロック候補として前記ビルディングブロック候補情報格納部に登録し、
前記ビルディングブロック判定部は、R回にわたって連続してビルディングブロック候補となった構成要素が存在する場合に、当該構成要素をビルディングブロックと判定し、当該構成要素に関するビルディングブロック情報を前記ビルディングブロック情報格納部に登録する
ことを特徴とする請求項1に記載の航跡割当装置。
【請求項3】
前記最良解更新部は、前記多スタート局所探索時に、個々の最適解探索の処理に応じた前記新規解生成部による新規解生成処理において、同じ構成要素の一部分を変更して生成された全ての新規解の評価値が前記最良解の評価値よりも悪ければ、前記新規解の生成の元となった構成要素に関するビルディングブロック候補情報を前記ビルディングブロック候補情報格納部に登録し、
前記ビルディングブロック判定部は、前記多スタート探索時に、同一構成要素がR回にわたって連続して、K個中のL個以上の探索においてビルディングブロック候補となった場合に、当該構成要素をビルディングブロックと判定し、当該構成要素に関するビルディングブロック情報を前記ビルディングブロック情報格納部に登録する
ことを特徴とする請求項1に記載の航跡割当装置。
【請求項4】
前記最良解格納部に格納された最良解の構成要素の中から、前記新規解を生成する際の優先変更対象を選択する優先変更対象判定部と、
前記優先変更対象判定部が優先変更対象と判定した構成要素に関する情報を優先変更対象情報として格納する優先対象格納部と
を備え、
前記優先変更対象判定部は、前記多スタート探索時に、K個の最良解のうちのM個以上の最良解に同一構成要素が存在する場合に、M個の当該最良解からS個を選択し、選択したS個の最良解に含まれる同一構成要素に関する情報を前記優先変更対象情報として前記優先変更対象格納部に登録し、
前記新規解生成部は、前記優先変更対象格納部に格納された優先変更対象情報を参照し、前記優先変更対象とした構成要素の一部を変更して前記新規解を生成する
ことを特徴とする請求項1から請求項3までのいずれか1項に記載の航跡割当装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【公開番号】特開2010−66223(P2010−66223A)
【公開日】平成22年3月25日(2010.3.25)
【国際特許分類】
【出願番号】特願2008−235208(P2008−235208)
【出願日】平成20年9月12日(2008.9.12)
【出願人】(000006013)三菱電機株式会社 (33,312)
【Fターム(参考)】
【公開日】平成22年3月25日(2010.3.25)
【国際特許分類】
【出願日】平成20年9月12日(2008.9.12)
【出願人】(000006013)三菱電機株式会社 (33,312)
【Fターム(参考)】
[ Back to top ]