JP3645135B2 - Parallel multi-target tracking device - Google Patents

Parallel multi-target tracking device Download PDF

Info

Publication number
JP3645135B2
JP3645135B2 JP28018799A JP28018799A JP3645135B2 JP 3645135 B2 JP3645135 B2 JP 3645135B2 JP 28018799 A JP28018799 A JP 28018799A JP 28018799 A JP28018799 A JP 28018799A JP 3645135 B2 JP3645135 B2 JP 3645135B2
Authority
JP
Japan
Prior art keywords
unit
processing
task
target
load distribution
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP28018799A
Other languages
Japanese (ja)
Other versions
JP2001099925A (en
Inventor
裕幸 佐藤
勝己 高橋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP28018799A priority Critical patent/JP3645135B2/en
Publication of JP2001099925A publication Critical patent/JP2001099925A/en
Application granted granted Critical
Publication of JP3645135B2 publication Critical patent/JP3645135B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Radar Systems Or Details Thereof (AREA)
  • Multi Processors (AREA)

Description

【0001】
【発明の属する技術分野】
この発明は、レーダにおける複数目標物の追尾手法として、JPDA(Joint Probabilistic Data Association)のような複数の目標物の組み合わせを想定したものを採用し、処理を複数のタスク処理部に動的に割り当てて負荷分散をはかった並列多目標追尾装置に関するものである。
【0002】
【従来の技術】
多目標追尾を並列処理する従来の追尾方法としては、例えば、処理を機能分割によって負荷分散する“On Mapping a Tracking Algorithm Onto Parallel Processors”(IEEE TRANSACTION ON AEROSPACE AND ELECTRONIC SYSTEMS VOL.26,NO.5,1990)に示されたもの等がある。図5および図6は従来の並列多目標追尾装置による追尾方法を示す説明図であり、追尾処理とプロセッサをグラフとして示したものである。この追尾方法では、図5のように処理をタスクグラフとして表現し、各タスクの負荷を情報の流れに基づいて、プロセッサへの分割を行なう。
【0003】
図5は処理の関係を示すタスクグラフである。タスクグラフとは、処理の相関関係を示すグラフであり、丸印によって示される(1)〜(8)の処理と、それら各処理(1)〜(8)の繋がりを示す矢印110〜119とによって表現されている。なお、処理(1)〜(8)は計算機などで行なわれる処理自体を示しており、ここでは、タスク(1)101〜タスク(8)108としている。また、矢印110〜119はこのタスク(1)101〜タスク(8)108における計算結果が利用される先を示している。
【0004】
すなわち、例えば、
C=A+B …… (あ)
E=C+D …… (い)
という2つの処理(あ)および(い)があった場合、(あ)→(い)という矢印で表す。なお、ここで、“(あ)”および“(い)”は、“あ”および“い”を丸で囲んだ状態を示すものとする。
【0005】
タスクグラフで表した処理は、全て、バラバラに複数のプロセッサに分割して処理させることができる。先の例でいえば、処理(あ)の計算と処理(い)の計算とをそれぞれ別のプロセッサで行なうことができる。この場合、処理(い)の計算を行うプロセッサは、処理(あ)の計算結果を処理(あ)の計算を行うプロセッサから受け取ることになる。このように、図5に示したタスクグラフにおいて、矢印110〜119で繋がっているタスク(1)101〜タスク(8)108は計算結果のやりとりが必要となる。
【0006】
タスクグラフには当然、矢印110〜119で繋がったものと繋がっていないものとが存在するが、矢印110〜119で繋がっていないもの同士はお互いにデータをやりとりする必要はない。図5に示す例でいえば、タスク(1)101とタスク(2)102〜タスク(5)105は矢印110、113、115、117を介して直接繋がっており、タスク(2)102には矢印111を介してタスク(6)106が、タスク(5)105には矢印118を介してタスク(7)107がそれぞれ繋がっている。また、タスク(6)106、タスク(3)103、タスク(4)104、タスク(7)107とタスク(8)108は、それぞれ矢印112、114、116、119を介して直接繋がっている。従って、矢印で繋がっていないペアは、タスク(2)102とタスク(5)105のペア、およびタスク(6)106とタスク(7)107のペアである。
【0007】
一方、タスク(1)101とタスク(2)102のペアや、タスク(2)102とタスク(6)106のペア、およびタスク(5)105とタスク(7)107のペア等は矢印110,111あるいは118で繋がっており、例えば、タスク(1)101とタスク(2)102なら、タスク(1)101の計算が終わらない限りタスク(2)102の計算も終わらないという関係になっている。
【0008】
そのとき、以下に示した2通りの分け方があった場合、後者の分け方を選択するようにする。それは、前者の分け方ではプロセッサ間で計算結果を渡す必要が生じるが、後者ではその必要が生じないからである。
【0009】
・ タスク(2)102とタスク(5)105を1つのプロセッサに割り当て、タスク(6)106とタスク(7)107を他の1つのプロセッサに割り当て
る。
・ タスク(2)102とタスク(6)106を1つのプロセッサに割り当て、タスク(5)105とタスク(7)107を他の1つのプロセッサに割り当て
る。
【0010】
さらに、各タスク101〜108には通常、必要な計算量が示されている(図5では省略)。従って、タスクグラフに与えられている処理を複数のプロセッサに分ける場合、以下の2つの方針に基づいて行うことになる。
【0011】
各プロセッサに分けたタスクの必要計算量の合計がなるべく同じになるように割り当てる。
【0012】
矢印110〜119で繋がっているタスク101〜108同士は、同じプロセッサに割り当てる。
【0013】
図6はプロセッサグラフであり、4つのプロセッサ(P1)121〜(P2)124が環状に繋がっている例を示している。すなわち、プロセッサ(P1)121にプロセッサ(P2)122が繋がり、プロセッサ(P2)122にプロセッサ(P3)123が繋がり、プロセッサ(P3)123にプロセッサ(P4)124が繋がり、プロセッサ(P4)124にプロセッサ(P1)121が繋がっている。
【0014】
このように矢印110〜119で繋がっているタスク101〜108同士を同じプロセッサ121〜124に割り当てるというのが、従来の並列多目標追尾装置で用いられている追尾方法である。この図5に示されているタスクグラフで、丸で表現されているタスク101〜108は機能的に一塊となる処理である。JPDA等のように、目標物と観測点の組合せを考慮して追尾処理を行う場合、対象とする問題が大きくなると、目標物と観測点との組合せを求めるタスクは、他のタスクに比べて、処理の負荷が非常に大きくなる。
【0015】
【発明が解決しようとする課題】
従来の並列多目標追尾装置は以上のように構成されているので、JPDAのように複数の目標物と観測点の組合せを考慮して追尾処理を行なう方式では、目標物と観測点の組合せを求めるための特定の1つのタスク101〜108の処理の負荷が特別に非常に大きくなってしまうことがあり、その場合には、上述したように複数のプロセッサ121〜124を用いて各タスク101〜108の並列処理を行っても、負荷が特別大きくなってしまうタスク101〜108の処理を行ったプロセッサ121〜124だけは処理が終わらず、結果として、全体の処理が完全に終わるまでに長時間を要し、複数のプロセッサ121〜124を用いた負荷分散効果が得られず、並列処理を行っている意味がなくなってしまうという課題があった。
【0016】
目標物と観測点の組合せを求めるためのタスク101〜108を処理負荷ができるだけ均等になるように分割し、それぞれを別プロセッサ121〜124で処理することは可能である。しかしながら、各プロセッサ121〜124が汎用のワークステーションで動作する場合、目標物と観測点の組合せを求めるタスク101〜108以外の他の処理や他のユーザの処理も、同一のプロセッサ121〜124上で実行される可能性があり、それら他の処理が各プロセッサ121〜124で一定になるとは限らず、各プロセッサ121〜124で処理されるタスク101〜108の実行時間も均等にはならず、最適な負荷分散とはならなくなってしまうという課題があった。
【0017】
また、各プロセッサ(ワークステーション)121〜124では、目標物と観測点の組合せを求めるためのタスク101〜108以外の処理は行なわないことにしても、各プロセッサ121〜124が汎用のネットワークで接続されている場合は、タスク101〜108の処理を行うプロセッサ121〜124以外のプロセッサも、同じネットワークを共有して使用していることが考えられ、そのような場合には、プロセッサ121〜124間の通信時間が一定にはならないので、各プロセッサ121〜124でのタスク101〜108の処理の終了が一定とはならず、最適な負荷分散とはならなくなってしまうという課題があった。
【0018】
この発明は上記のような課題を解決するためになされたもので、目標物と観測点の組合せを求めるタスク等の特別高負荷となってしまうタスクに対して負荷分散を行い、タスクを実行するプロセッサ上で他の処理が動作していたり、ネットワーク上で他の通信がなされている状態であっても、並列多目標追尾処理において、最適な負荷分散を行なうことが可能な並列多目標追尾装置を得ることを目的とする。
【0019】
【課題を解決するための手段】
この発明に係る並列多目標追尾装置は、クラスタ生成部が観測点情報と予測領域より生成したクラスタについて、節分割/統合部にて探索木の節を生成し、それをタスクとして複数のタスク処理部に分配して処理する際に、負荷分散部によって、各タスク処理部への節の処理の分配を、各タスク処理部の負荷状況に応じて行うようにし、かつ、負荷分散部より各タスク処理部に対して、最初に複数単位ずつの節の処理を分配し、各タスク処理部では受け取った節の内の1単位の節の処理を開始して、残りを保持しておき、当該節の処理が終了すると、次の節の分配を負荷分散部に要求するとともに、その要求に対する応答が返される前に保持しておいた次の1単位の節の処理を開始し、分配要求を受けた負荷分散部は、節の分配を要求したタスク処理部に対して次の節の分配を行うようにしたものである。
【0023】
この発明に係る並列多目標追尾装置は、時間とともに負荷分散の単位を小さくしていくようにしたものである。
【0024】
この発明に係る並列多目標追尾装置は、1つの負荷分散単位の処理時間が一定時間以上になると、処理している節の下の一部の節群の処理を負荷分散部へ返すようにしたものである。
【0025】
この発明に係る並列多目標追尾装置は、一部の節群の処理を負荷分散部へ返すと判断する際の処理時間の上限値を、時間とともに小さくしていくようにしたものである。
【0026】
この発明に係る並列多目標追尾装置は、負荷分散部と同一のプロセッサ上でタスク処理部の1つを動作させるようにしたものである。
【0027】
【発明の実施の形態】
以下、この発明の実施の一形態を説明する。
実施の形態1.
図1はこの発明の実施の形態1による並列多目標追尾装置の構成を示すブロック図である。図において、1は外部からの観測点情報の入力が行われる入力線である。2は目標物の移動を予測し、その予測結果に応じて予測領域を生成する予測領域生成部である。3は入力線1から入力された観測点情報と、予測領域生成部2の生成した予測領域からクラスタを生成するクラスタ生成部である。4はこのクラスタ生成部3で生成されたクラスタについて探索木の節を生成し、これをタスクとして分割/統合を行う節分割/統合部である。5a〜5dは節分割/統合部4で分割された個々のタスク(節)についての処理を行うタスク処理部である。6は節分割/統合部4で統合されたタスク処理部5a〜5dの処理結果に基づいて、目標物の持つ情報(航跡)の更新を行う目標物航跡更新部である。7は目標物航跡更新部6で更新された情報を追尾結果として外部に出力する出力線である。8a〜8dはこれら各部の処理結果の転送に用いる転送線である。
【0028】
また、9は節分割/統合部4によって分割された節に対する処理を、各タスク処理部5a〜5dに対して、それぞれの負荷状況に基づいて分散して割り当てる負荷分散部である。8fはこの負荷分散部9と節分割/統合部4との間を結ぶ転送線であり、8gは負荷分散部9と各タスク処理部5a〜5dとの間を結ぶ転送線である。
【0029】
次に動作について説明する。
クラスタ生成部3には、外部からの観測点情報が入力線1を介して、また予測領域生成部2の作成した予測領域が転送路8aを介してそれぞれ入力される。これら観測点情報および予測領域を受けたクラスタ生成部3は、複数の目標物の予測領域が重なり、かつその重なった領域に観測点が存在する時には、その予測領域を結合して1つのクラスタを生成する。このクラスタ生成部3で生成された1つのクラスタの情報(観測点と目標物の予測領域)は、転送路8bを介して節分割/統合部4に送られ、節分割/統合部4は受け取ったクラスタの情報から探索木の節を生成する。
【0030】
負荷分散部9はこの節分割/統合部4によって生成された節を転送路8fを介して取り込み、各タスク処理部5a〜5dの負荷状況に応じて、その節の処理を転送路8gを介して各タスク処理部5a〜5dに分配する。各タスク処理部5a〜5dは受け取った節から、探索木の葉(追尾の組合せの1つに相当する)を求め、その処理結果を転送路8gおよび8fを介して節分割/統合部4へ送る。節分割/統合部4は送られてきた各タスク処理部5a〜5dの処理結果を統合し、それを転送路8cを介して目標物航跡更新部6に送る。目標物航跡更新部6は目標物の情報を持ち、送られてきた個々の組合せの可能性をもとに、目標物の情報を更新する。この目標物航跡更新部6にて更新された目標物の情報は、出力線7を介して外部に出力されるとともに、転送線8dを介して予測領域生成部2へも送られる。予測領域生成部2はこの目標物航跡更新部6で更新された目標物の情報に基づいて各目標物について移動予測を行い、その予測領域を生成して転送線8aよりクラスタ生成部3に送る。
この装置は、以上の動作を繰り返すことによって、動的負荷分散を用いた並列多目標追尾装置として動作する。
【0031】
以下、JPDAを用いる場合を例に、各部の動作を説明する。
ここで、図2はJPDAにおける目標物と観測点の関係を示す説明図、図3はこの目標物と観測点の関係を表した行列Ωを示す説明図、図4は目標物と観測点の組合せを表した探索木を示す説明図である。図2において、t(1)およびt(2)は目標物であり、黒丸で示したこの目標物t(1),t(2)の予測座標を中心とする楕円は予測範囲である。また、y(1)〜y(4)はそれぞれ観測点である。
【0032】
なお、図3に示す行列Ωはそれぞれ、縦が目標物t(0)〜t(2)、横が観測点y(1)〜y(4)で分かれており、目標物t(0)は対応する目標なしを示している。また、行列Ω内の“1”は可能性ありを、“0”は可能性なしをそれぞれ示しており、この行列Ωは次の内容を表したものである。
・ 観測点y(1)は、目標物t(2)、もしくは対応する目標なし
・ 観測点y(2)は、目標物t(1)、もしくは目標物t(2)、もしくは対応する目標なし
・ 観測点y(3)は、目標物t(1)、もしくは対応する目標なし
・ 観測点y(4)は、目標物t(1)、もしくは対応する目標なし
【0033】
これを満たす目標物と観測点の組合せとしては、次のケースがある。
・ 目標物t(1)が観測点y(2)で、目標物t(2)が観測点y(1)
・ 目標物t(1)が観測点y(2)で、目標物t(2)が対応なし
・ 目標物t(1)が観測点y(3)で、目標物t(2)が観測点y(1)
・ 目標物t(1)が観測点y(3)で、目標物t(2)が観測点y(2)
・ 目標物t(1)が観測点y(3)で、目標物t(2)が対応なし
・ 目標物t(1)が観測点y(4)で、目標物t(2)が観測点y(1)
・ 目標物t(1)が観測点y(4)で、目標物t(2)が観測点y(2)
・ 目標物t(1)が観測点y(4)で、目標物t(2)が対応なし
・ 目標物t(1)が対応なしで、目標物t(2)が観測点y(1)
・ 目標物t(1)が対応なしで、目標物t(2)が観測点y(2)
・ 目標物t(1)が対応なしで、目標物t(2)が対応なし
【0034】
図4はこの組合せを探索木として表したものである。この探索木における各呼称は、図4では次の部分に対応しており、組合せは、根から葉までの各ノードの持つ状態に対応する。
・ 根 → Root
・ 節 → 木構造の分岐の中段に位置する、図4に楕円で示した部分
・ 葉 → 木構造の分岐の先端に位置する、図4に四角で示した部分
・ 枝 → 図4の根と節、節と節、節と葉を結ぶ線
・ ノード → 節と葉の両方を含む概念
・ 兄弟 → 根からノードまでに経由する枝数が等しいノード同士
【0035】
以上を前提として、各部の動作を具体的に説明する。
まず予測領域生成部2が、その内部に保持している目標物の情報(座標や速度など)から、観測点が観測された時間に対応する目標物t(1)およびt(2)の予測座標を算出する。また、同様に一定の存在確率以上となる、当該目標物t(1),t(2)の予測座標を中心とする予測領域(図2の楕円)を算出する。次にクラスタ生成部3が、その予測領域と観測点y(1)〜y(4)との包含関係を調べる。複数の予測領域に含まれる観測点が存在する時、その観測点を包含する予測領域同士を結合してクラスタを形成する。図2に示す例では、観測点y(2)が2つの予測領域に含まれるため、この2つの予測領域を1つのクラスタとして結合する。
【0036】
生成されたクラスタは節分割/統合部4に送られ、節分割/統合部4はそれより図4に示す探索木の節を生成する。負荷分散部9はこの節分割/統合部4が生成した節を取り込み、各タスク処理部5a〜5dの負荷状況に応じて、その節の処理をタスク処理部5a〜5dに分配する。ここで、タスク処理部5a〜5dへ分配する節のレベルは、図4の観測点y(1)であっても、y(2)であっても、y(3)であっても構わない。なお、下位のレベルになるに従って、各節に対する処理量は通常小さくなる。各タスク処理部5a〜5dは、この負荷分散部9によって分配された節から葉を算出し、各葉が示す組合せごとに信頼度を計算して、目標物と各観測点の対応関係についての重み付けを行う。
【0037】
例えば、図4において、節10を受け取ったタスク処理部は、各組合せごとの信頼度として、以下の信頼度E(1)〜E(3)を計算する。
E(1)→ 観測点y(1)が対応なし、観測点y(2)が目標物t(2)、観測点y(3)、y(4)が対応なしのケースの信頼度
E(2)→ 観測点y(1)が対応なし、観測点y(2)が目標物t(2)、観測点y(3)が対応なし、観測点y(4)が目標物t(1)のケースの信頼度
E(3)→ 観測点y(1)が対応なし、観測点y(2)が目標物t(2)、観測点y(3)が目標物t(1)、観測点y(4)が対応なしのケースの信頼度
【0038】
次に当該タスク処理部5a〜5dは、計算した信頼度の値をもとに、図4に示した節10での目標物と各観測点の対応関係について、以下の重み付けを行う。
・ 目標物t(1)が観測点y(3)に対応する重みを、E(3) ・ 目標物t(1)が観測点y(4)に対応する重みを、E(2) ・ 目標物t(1)が対応なしとなる重みを、E(1)
・ 目標物t(2)が観測点y(2)に対応する重みを、E(1)+E(2)+E(3)
【0039】
次に節分割/統合部4は、各タスク処理部5a〜5dが算出した「目標物と各観測点の対応関係についての重み」を集計する。例えば、目標物t(2)であれば、観測点y(1)に対応する重み、観測点y(2)に対応する重み、および対応なしとなる重みが得られる。
【0040】
目標物航跡更新部6はこの節分割/統合部4が統合した後の情報を受け取り、目標物の位置を算出して、目標物の座標や速度等の内部情報の更新を行う。例えば、目標物t(2)であれば、上記3つの重み付けに基づいて目標物t(2)の座標を求める。なお、この重み付けに基づいた計算結果を、当該目標物の座標と見倣す。
以上で各部の動作が終了する。
【0041】
次に、タスク処理部5a〜5dにおける、それぞれの負荷状況に応じた節の分配について説明する。
まず、負荷分散部9は、節分割/統合部4が生成した探索木のあるレベルの全ての節の処理を均等に各タスク処理部5a〜5dに分配する。均等に節の処理を分配する方法には、節の数を均等にする、あるいは、節の下位の葉の数を均等にするなどが考えられる。
【0042】
次に、負荷分散部9が転送線8gを介して各タスク処理部5a〜5dに負荷の報告要求を出し、各タスク処理部5a〜5dはその要求に応えて負荷状況を負荷分散部9に報告する。ここで、負荷状況には、オペレーティングシステムで管理しているジョブ・キューの単位時間当たりの長さ、すなわち、ジョブ・キューに入っているジョブの数、あるいは、各タスク処理部5a〜5dがまだ処理していない節や葉の数などが考えられる。
【0043】
次に、負荷分散部9は各タスク処理部5a〜5dからの負荷状況の報告を受け取ると、その情報をもとに、各タスク処理部5a〜5dの負荷が均等となるように、各タスク処理部5a〜5dに節の移動を要求する。ここで、例えば負荷状況を各タスク処理部5a〜5dの未処理の節の数とした場合、各タスク処理部5a〜5dからの負荷状況の報告が、それぞれ3,5,4,4であったものとする。これより、全てのタスク処理部5a〜5dにおける未処理の節の数は3+5+4+4=16なので、4つのタスク処理部5a〜5dの負荷状態を均等化した場合、各タスク処理部5a〜5dの担当すべき節の数は4つずつとなる。従って、負荷分散部9は転送線8gを介して、タスク処理部5bに1つの節の処理をタスク処理部5aに移動するように指示する。これにより、各タスク処理部5a〜5dの未処理の節の数が4つずつと等しくなる。
この負荷状況の収集とそれによる各タスク処理部5a〜5d間の節の移動を定期的に行う。
【0044】
以上のように、この実施の形態1によれば、負荷分散部9が、各タスク処理部5a〜5dの負荷状況に応じて、節の処理をタスク処理部5a〜5dに分配しているので、各タスク処理部5a〜5dが汎用のワークステーションのように他の処理が行われているマシン上で動作する場合でも、各タスク処理部5a〜5dの処理時間が均等になり、最適な負荷分散を行うことが可能になるという効果が得られる。
【0045】
また、各タスク処理部5a〜5dの未処理の節の数が定期的に均等化されるので、節の処理以外の処理がタスク処理部5a〜5dと同一のプロセッサ上で行われていても、各タスク処理部5a〜5dの全ての節の処理がほぼ同じ時間で終了し、最適な負荷分散が行えるという効果も得られる。
【0046】
実施の形態2.
以上の実施の形態1では、負荷分散部9が負荷分散のタイミングの主導権を取って、定期的に各タスク処理部5a〜5dの負荷を均等化することにより、各タスク処理部5a〜5dにおける節の処理をほぼ同じ時間で終了させるものについて説明したが、タスク処理部5a〜5dが負荷分散のタイミングの主導権を取り、負荷分散部9に対して仕事の転送要求を行うようにしてもよい。この実施の形態2はそのような並列多目標追尾装置について述べたもので、その構成は図1に示した実施の形態1の場合と同様であるため、ここではその説明は省略する。
【0047】
次に動作について説明する。なお、ここでは実施の形態1とは異なる部分についての説明を行う。
まず、負荷分散部9は、節分割/統合部4が生成した探索木の、あるレベルの節の処理を1単位ずつ各タスク処理部5a〜5dに分配する。各タスク処理部5a〜5dではその探索木の節を受け取るとその処理を開始する。各タスク処理部5a〜5dは受け取った節の処理が終了して負荷がなくなると、負荷分散部9に対して次の仕事、すなわち処理する節の転送を要求する。負荷分散部9はその転送要求を受け取ると、当該要求を出したタスク処理部5a(〜5d)に対して1単位の節の処理(負荷)を与える。
以上の処理を全ての節がなくなるまで繰り返す。
【0048】
以上のように、この実施の形態2によれば、各タスク処理部5a〜5dは仕事がなくなると次の仕事の転送要求を負荷分散部9へ出すので、節の処理以外の処理が同一マシン上で行われていても、各タスク処理部5a〜5dの全ての節の処理がほぼ同じ時間で終了し、最適な負荷分散が行えるという効果が得られ、さらに、1つの節の処理に対応する処理量が小さい場合でも、定期的な負荷状況の収集処理が必要ないので、負荷分散のオーバヘッドが少なくなるという効果も得られる。
【0049】
実施の形態3.
上記各実施の形態では、各タスク処理部5a〜5dは1つの節の処理が完了してから次の節の処理の転送要求を負荷分散部9に出す場合について説明したが、タスク処理部5a〜5dに仕事をある程度確保しておき、それを順次処理してゆくようにしてもよい。この実施の形態3はそのような並列多目標追尾装置について述べたもので、その構成は図1に示した実施の形態1の場合と同様であるため、ここではその説明は省略する。
【0050】
次に動作について説明する。なお、この場合にも実施の形態1とは異なる部分についての説明を行う。
まず、負荷分散部9は最初に、節分割/統合部4が生成した探索木のあるレベルの節の処理を複数単位ずつ各タスク処理部5a〜5dに分配する。各タスク処理部5a〜5dは、この複数単位の節を受け取ると、その内の1単位を除く残りの節を保持し、保持していない残りの1単位の節の処理を実行する。各タスク処理部5a〜5dは当該節の処理が終了すると、負荷分散部9に対して次の仕事、すなわち次に処理すべき節の転送を要求する。そしてこの転送要求に対する応答が負荷分散部9より返される前に、保持しておいた節の内の1単位の節を取り出してその処理を開始する。負荷分散部9はタスク処理部5a(〜5d)から次に処理する節の転送要求を受け取ると、当該要求を送出したタスク処理部5a(〜5d)に対して、次の節の処理の分配を行う。また、要求を出したタスク処理部5a(〜5d)は、負荷分散部9から次に処理するの節の分配を受けると、それを保持する。
以上の処理を全ての節がなくなるまで繰り返す。
【0051】
以上のように、この実施の形態3によれば、各タスク処理部5a〜5dは仕事がなくなると、負荷分散部9に対して次の仕事の転送要求を出すとともに、保持しておいた節の処理をすぐに開始しているので、負荷分散部9へ次の仕事の転送要求を出してからその応答を受け取るまでの間も、他の節の処理が実行されていて、タスク処理部5a〜5dが節の処理を行っていない時間がほとんどなくなるため、最適な負荷分散が行えるという効果が得られる。
【0052】
実施の形態4.
上記各実施の形態では、負荷分散の単位を一定としているものについて説明したが、負荷分散の単位を時間とともに小さくするようにしてもよい。この実施の形態4はそのような並列多目標追尾装置について述べたもので、その構成は図1に示した実施の形態1の場合と同様であるため、ここではその説明は省略する。
【0053】
ここで、並列多目標追尾装置における負荷分散の単位は節であるが、その処理量に相当するサイズは、例えば節の下位の葉の数で測ることができる。図4に示した探索木からも分かるように、葉の数は節のレベルが上がるほど増加し、レベルが下がるほど減少する。従って、負荷分散に際して、節を分解してよりレベルの低い節を負荷分散の単位とすることにより、より小さなサイズの仕事を生成することは容易である。
【0054】
ここで、負荷分散の単位のサイズは、小さければ小さいほど負荷を分散する回数が増えるため負荷分散のためのオーバヘッドが大きくなるが、処理の終了を各タスク処理部5a〜5dで均一化するという面では小さいほどよい。従って、最初は高いレベルの節を負荷分散の単位とし、処理が進むにつれて節を分解し、より低いレベルの節を負荷分散の単位とすることで、負荷分散オーバヘッドを抑えた上で、各タスク処理部5a〜5dの節の処理の終了を均一化し、最適な負荷分散を行うことができる。
【0055】
なお、時間とともに負荷分散の単位を小さくする場合、実施の形態1のように各タスク処理部5a〜5dが仕事(すなわち節の処理)を保持しているときには、各タスク処理部5a〜5dで節を分解する。また実施の形態2のように負荷分散部9が節の処理を保持しているときには、負荷分散部9で節を分解し、実施の形態3のように負荷分散部9および各タスク処理部5a〜5dで節の処理を保持しているときには、負荷分散部9および各タスク処理部5a〜5dの両方で節を分解する。
【0056】
以上のように、この実施の形態4によれば、時間とともに負荷分散の単位を小さくしているので、負荷分散のオーバヘッドを抑えた上で、各タスク処理部5a〜5dの節の処理の終了を均一化し、最適な負荷分散を行うことができるという効果が得られる。
【0057】
実施の形態5.
上記実施の形態4では、時間とともに負荷分散の単位を小さくする場合について説明したが、時間によらずに、1つの負荷分散単位の処理時間が一定以上長くなった場合に負荷分散単位を小さくするようにしてもよい。この実施の形態5はそのような並列多目標追尾装置について述べたもので、その構成は図1に示した実施の形態1の場合と同様であるため、ここではその説明は省略する。
【0058】
探索木の同じレベルの節の処理を負荷分散の単位としている場合、節によってはその下位の葉の数は均等ではない。従って、ある節の下位の葉の数が非常に多い場合は、その節の処理に非常に長い時間がかかり、最悪の場合、他の節の処理は全て完了しているのに、その節の処理だけが残ってしまうということがあり得る。
【0059】
そこで、各タスク処理部5a〜5dでは節の処理時間を監視しており、ある節の処理を行っている最中に、その節の処理を開始してからの実行時間がある一定時間以上経過した場合、その節の下位のまだ処理していない節群の一部を負荷分散部9に返す。そして実施の形態1の場合のように、各タスク処理部5a〜5dが仕事(節の処理)を保持している場合には、次の負荷分散のタイミングまで返された節群を保持しておき、次回の負荷分散の際に負荷の低いタスク処理部5a〜5dに対してその節群の処理を分配する。また、実施の形態2の場合のように負荷分散部9が節の処理を保持している場合には、返された節群をそのまま保持して既に保持している節と同様に扱い、実施の形態3の場合のように負荷分散部9および各タスク処理部5a〜5dで節の処理を保持している場合も同様に、返された節群をそのまま保持して既に保持している節と同様に扱う。
【0060】
以上のように、この実施の形態5によれば、処理時間の非常にかかる節の処理の一部を負荷分散部9へ返すことにより、処理能力に余裕のある他のタスク処理部5a〜5dへそれらの節群の処理を分散しているので、負荷が分散され、全体として処理が早く終了するようになり、最適な負荷分散が行えるという効果が得られる。
【0061】
実施の形態6.
上記実施の形態5では、タスク処理部5a〜5dが未処理の節群の処理を負荷分散部9に返すと判断する1つの負荷分散単位の処理時間の上限値を、一定にしたものについて説明したが、当該上限値を時間とともに小さくするようにしてもよい。この実施の形態6はそのような並列多目標追尾装置について述べたもので、その構成は図1に示した実施の形態1の場合と同様であるため、ここではその説明は省略する。
【0062】
タスク処理部5a〜5dが未処理の節群の処理を負荷分散部9へ返す場合、返すと判断する1つの負荷分散単位の処理時間の上限値は、それが大きいと、負荷分散部9へ返すと判断した時には既に他のタスク処理部5a〜5dの処理が完了している危険性があり、小さいと他のタスク処理部5a〜5dの処理が当分完了しないのにも係わらず未処理の節群の処理が負荷分散部9へ返されることになるため、無駄な仕事の移動になるという危険性がある。
【0063】
そこで、最初のうちは、この未処理の節群の処理を負荷分散部9へ返すと判断する上限値を大きくしておき、時間とともにそれを小さくしていく。それにより、最初のうちは大きな上限値により、無駄となる負荷分散部9への節群の返却を抑えることができる。また、全体の処理の最後の方では、小さな上限値により他のタスク処理部5a〜5dが処理を完了する前に、処理に時間のかかっているタスク処理部5a〜5dの仕事の一部を他のタスク処理部5a〜5dへ分散させることができ、最適な負荷分散とすることができる。
【0064】
以上のように、この実施の形態6によれば、負荷分散部9に節群を返却する際の負荷量の上限値を時間とともに小さくしているので、最初のうちは無駄となる節群の返却を抑えることができ、処理の最後の方では、処理に時間がかかっているタスク処理部5a〜5dの仕事の一部を他のタスク処理部5a〜5dへ確実に分散させることができるようになり、最適な負荷分散を行うことが可能になるという効果が得られる。
【0065】
実施の形態7.
上記各実施の形態では、各タスク処理部5a〜5dと負荷分散部9とを異なるプロセッサ上で動作させたものについて説明したが、複数のタスク処理部5a〜5dの内の1つを負荷分散部9と同一のプロセッサ上で動作させるようにしてもよい。節の処理を行っている際の負荷は、タスク処理部5a〜5dで最も高く、負荷分散部9にはほとんど負荷がない。従って、負荷分散部9をタスク処理部5a〜5dの1つと同一プロセッサ上で動作させることにより、全てのプロセッサの負荷を高い状態とすることができる。
【0066】
以上のように、この実施の形態7によれば、タスク処理部5a〜5dの1つと同一プロセッサ上で負荷分散部9を動作させているので、全てのプロセッサでその負荷を高い状態とすることができ、無駄のない並列処理が可能となるという効果が得られる。
【0067】
【発明の効果】
以上のように、この発明によれば、負荷分散部を設け、クラスタについて生成された探索木の節を複数のタスク処理部に分配して処理する際に、各タスク処理部の負荷状況に応じて節の処理を分配するように構成したので、各タスク処理部が、他の処理を実行しているプロセッサ上で動作するような場合でも、各タスク処理部の処理時間を均等にすることができ、最適な負荷分散を行うことが可能な並列多目標追尾装置が得られるという効果がある。
また、この発明によれば、各タスク処理部に対して負荷分散部より、最初に複数単位ずつの節の処理を分配し、各タスク処理部ではその内の1単位の節の処理を開始して、残りを保持しておき、当該節の処理が終了すると、次の節の分配を負荷分散部に要求するとともに、その要求に対する応答が返される前に保持しておいた次の1単位の節の処理を開始するように構成したので、各タスク処理部は仕事がなくなると次の仕事の転送要求を負荷分散部に対して出すとともに、保持しておいた節の処理がすぐに開始されるため、負荷分散部への節の転送要求を出してから対応する節の転送を受けるまでの間も、保持されている他の節の処理が実行されて、タスク処理部が節の処理を行っていない時間がほとんどなくなり、最適な負荷分散が可能になるという効果がある。
【0071】
この発明によれば、負荷分散の単位を時間とともに小さくしていくように構成したので、負荷分散のオーバヘッドを抑えた上で、各タスク処理部における節の処理の終了を均一化することができ、最適な負荷分散が可能になるという効果がある。
【0072】
この発明によれば、1つの負荷分散単位の処理時間が一定以上になると、処理している節の下位の一部の節群の処理を負荷分散部へ返すように構成したので、負荷分散により、処理能力に余裕のある他のタスク処理部にそれらの節群の処理を分配することができ、全体として処理が早く終了するようになるため、最適な負荷分散が可能になるという効果がある。
【0073】
この発明によれば、一部の節群の処理を負荷分散部へ返すと判断する際の処理時間の上限値を、時間とともに小さくしていくように構成したので、最初のうちは大きな上限値により、無駄となる負荷分散部への節群の返却を抑えることができ、全体の処理の最後の方では小さな上限値により、他のタスク処理部の仕事が完了する前に処理に時間のかかっているタスク処理部の仕事の一部を他のタスク処理部へ分散させることができるため、最適な負荷分散が可能になるという効果がある。
【0074】
この発明によれば、同一のプロセッサ上でタスク処理部の1つと負荷分散部とを動作させるように構成したので、全てのプロセッサでその負荷を高い状態とすることができ、無駄のない並列処理が可能となるという効果がある。
【図面の簡単な説明】
【図1】 この発明による並列多目標追尾装置の構成を示すブロック図である。
【図2】 この発明の並列多目標追尾装置におけるJPDAによる目標物と観測点の関係を示す説明図である。
【図3】 この発明の並列多目標追尾装置における目標物と観測点の関係を表した行列Ωを示す説明図である。
【図4】 この発明の並列多目標追尾装置における目標物と観測点の組合せを表した探索木を示す説明図である。
【図5】 従来の並列多目標追尾装置における追尾処理のタスクグラフを示す説明図である。
【図6】 従来の並列多目標追尾装置における追尾処理のプロセッサグラフを示す説明図である。
【符号の説明】
1 入力線、2 予測領域生成部、3 クラスタ生成部、4 節分割/統合部、5a〜5d タスク処理部、6 目標物航跡更新部、7 出力線、8a〜8d,8f,8g 転送路、9 負荷分散部、10 節、t(1),t(2) 目標物、y(1)〜y(4) 観測点。
[0001]
BACKGROUND OF THE INVENTION
The present invention adopts a method that assumes a combination of a plurality of targets such as JPDA (Joint Probabilistic Data Association) as a tracking method for a plurality of targets in a radar, and dynamically assigns processing to a plurality of task processing units. The present invention relates to a parallel multi-target tracking device with load balancing.
[0002]
[Prior art]
As a conventional tracking method for performing parallel processing of multi-target tracking, for example, “On Mapping a Tracking Algorithm on Parallel Processors” (IEEE TRANSACTION ON AEROSPACES AND ELECTRONIC. 1990). FIG. 5 and FIG. 6 are explanatory diagrams showing a tracking method by a conventional parallel multi-target tracking device, and shows a tracking process and a processor as a graph. In this tracking method, processing is expressed as a task graph as shown in FIG. 5, and the load of each task is divided into processors based on the flow of information.
[0003]
FIG. 5 is a task graph showing the relationship of processing. The task graph is a graph showing the correlation between processes, and the processes (1) to (8) indicated by circles, and arrows 110 to 119 indicating the connection between these processes (1) to (8), It is expressed by. Note that the processes (1) to (8) indicate the processes themselves performed by a computer or the like, and are referred to as tasks (1) 101 to (8) 108 here. Arrows 110 to 119 indicate points where calculation results in the tasks (1) 101 to (8) 108 are used.
[0004]
That is, for example,
C = A + B (A)
E = C + D ...... (I)
When there are two processes (A) and (I), they are represented by arrows (A) → (I). Here, “(A)” and “(I)” indicate a state in which “A” and “I” are circled.
[0005]
All of the processes represented by the task graph can be divided and processed by a plurality of processors. In the previous example, the calculation of the process (A) and the calculation of the process (I) can be performed by different processors. In this case, the processor that performs the calculation of the process (A) receives the calculation result of the process (A) from the processor that performs the calculation of the process (A). As described above, in the task graph shown in FIG. 5, tasks (1) 101 to (8) 108 connected by arrows 110 to 119 need to exchange calculation results.
[0006]
Of course, there are task graphs that are connected by arrows 110 to 119 and those that are not connected by arrows 110 to 119, but those that are not connected by arrows 110 to 119 do not need to exchange data with each other. In the example shown in FIG. 5, task (1) 101 and task (2) 102 to task (5) 105 are directly connected via arrows 110, 113, 115, 117, and task (2) 102 has The task (6) 106 is connected to the task (6) 106 through the arrow 111, and the task (7) 107 is connected to the task (5) 105 through the arrow 118. Task (6) 106, task (3) 103, task (4) 104, task (7) 107 and task (8) 108 are directly connected via arrows 112, 114, 116 and 119, respectively. Accordingly, pairs not connected by arrows are a pair of task (2) 102 and task (5) 105, and a pair of task (6) 106 and task (7) 107.
[0007]
On the other hand, a pair of task (1) 101 and task (2) 102, a pair of task (2) 102 and task (6) 106, a pair of task (5) 105 and task (7) 107, etc. are indicated by arrows 110, For example, if the task (1) 101 and the task (2) 102 are connected, the calculation of the task (2) 102 does not end unless the calculation of the task (1) 101 ends. .
[0008]
At that time, when there are two ways of division as shown below, the latter division is selected. This is because, in the former method, it is necessary to pass calculation results between processors, but in the latter method, it is not necessary.
[0009]
-Task (2) 102 and task (5) 105 are assigned to one processor, and task (6) 106 and task (7) 107 are assigned to another processor
The
-Task (2) 102 and task (6) 106 are assigned to one processor, and task (5) 105 and task (7) 107 are assigned to another processor
The
[0010]
Furthermore, the required amount of calculation is normally shown for each task 101-108 (omitted in FIG. 5). Therefore, when the processing given to the task graph is divided into a plurality of processors, the processing is performed based on the following two policies.
[0011]
Allocation is made so that the total required calculation amount of tasks divided into each processor is as much as possible.
[0012]
Tasks 101 to 108 connected by arrows 110 to 119 are assigned to the same processor.
[0013]
FIG. 6 is a processor graph showing an example in which four processors (P1) 1211 to (P2) 124 are connected in a ring shape. That is, the processor (P2) 122 is connected to the processor (P1) 121, the processor (P3) 123 is connected to the processor (P2) 122, the processor (P4) 124 is connected to the processor (P3) 123, and the processor (P4) 124 is connected. The processor (P1) 121 is connected.
[0014]
Assigning tasks 101 to 108 connected by arrows 110 to 119 to the same processors 121 to 124 in this way is a tracking method used in the conventional parallel multi-target tracking device. In the task graph shown in FIG. 5, tasks 101 to 108 represented by circles are functions that collectively function. When the tracking process is performed in consideration of the combination of the target and the observation point, such as JPDA, when the target problem becomes large, the task for obtaining the combination of the target and the observation point is compared with other tasks. The processing load becomes very large.
[0015]
[Problems to be solved by the invention]
Since the conventional parallel multi-target tracking device is configured as described above, in the method of performing tracking processing in consideration of a combination of a plurality of targets and observation points such as JPDA, the combination of the target and the observation points is determined. The processing load of one specific task 101 to 108 to be obtained may become extremely large. In this case, each of the tasks 101 to 124 using a plurality of processors 121 to 124 as described above. Even if the parallel processing of 108 is performed, only the processors 121 to 124 that performed the processing of the tasks 101 to 108 that have a particularly large load are not finished. As a result, it takes a long time until the entire processing is completely finished. The load distribution effect using the plurality of processors 121 to 124 cannot be obtained, and there is a problem that the meaning of performing parallel processing is lost.
[0016]
It is possible to divide the tasks 101 to 108 for obtaining the combination of the target and the observation point so that the processing loads are as equal as possible, and to process each of them with the separate processors 121 to 124. However, when each of the processors 121 to 124 operates on a general-purpose workstation, other processes other than the tasks 101 to 108 for obtaining the combination of the target and the observation point and other user processes are also performed on the same processors 121 to 124. The other processes are not always constant in each of the processors 121 to 124, and the execution times of the tasks 101 to 108 processed by the processors 121 to 124 are not equalized. There was a problem that the load distribution was not optimal.
[0017]
In addition, each processor (workstation) 121 to 124 is connected to each processor 121 to 124 through a general-purpose network even if processing other than the tasks 101 to 108 for obtaining the combination of the target and the observation point is not performed. In such a case, it is conceivable that processors other than the processors 121 to 124 that perform the processing of the tasks 101 to 108 share the same network, and in such a case, between the processors 121 to 124 Therefore, there is a problem in that the end of processing of the tasks 101 to 108 in each of the processors 121 to 124 is not constant and the load distribution is not optimal.
[0018]
The present invention has been made to solve the above-described problems, and performs load distribution for a task that causes a particularly high load such as a task for obtaining a combination of a target and an observation point, and executes the task. A parallel multi-target tracking device capable of performing optimal load balancing in parallel multi-target tracking processing even when other processing is operating on the processor or other communication is performed on the network The purpose is to obtain.
[0019]
[Means for Solving the Problems]
  In the parallel multi-target tracking device according to the present invention, a node generated by a cluster generation unit from observation point information and a prediction area is generated by a node division / integration unit, and a plurality of task processes are performed using the search tree as a task. When distributing and processing to each task, the load distribution unit distributes the processing of the clauses to each task processing unit according to the load status of each task processing unit.In addition, the load distribution unit first distributes a plurality of units of processing to each task processing unit, and each task processing unit starts processing one unit of the received clauses, When the processing of the current section is completed, the distribution of the next section is requested to the load balancer, and the next unit of the section retained before the response to the request is returned. When the load distribution unit starts processing and receives the distribution request, it distributes the next section to the task processing unit that requested the distribution of the section.It is a thing.
[0023]
The parallel multi-target tracking device according to the present invention is such that the unit of load distribution is reduced with time.
[0024]
In the parallel multi-target tracking device according to the present invention, when the processing time of one load balancing unit exceeds a certain time, the processing of a part of the group of nodes under the node being processed is returned to the load balancing unit. Is.
[0025]
In the parallel multi-target tracking device according to the present invention, the upper limit value of the processing time when it is determined that the processing of a part of the group of nodes is to be returned to the load distribution unit is reduced with time.
[0026]
The parallel multi-target tracking device according to the present invention is configured to operate one of the task processing units on the same processor as the load distribution unit.
[0027]
DETAILED DESCRIPTION OF THE INVENTION
An embodiment of the present invention will be described below.
Embodiment 1 FIG.
FIG. 1 is a block diagram showing a configuration of a parallel multi-target tracking device according to Embodiment 1 of the present invention. In the figure, reference numeral 1 denotes an input line through which observation point information is input from the outside. Reference numeral 2 denotes a prediction region generation unit that predicts the movement of the target and generates a prediction region according to the prediction result. A cluster generation unit 3 generates a cluster from the observation point information input from the input line 1 and the prediction region generated by the prediction region generation unit 2. Reference numeral 4 denotes a node division / integration unit that generates a search tree node for the cluster generated by the cluster generation unit 3 and performs division / integration using the search tree as a task. Reference numerals 5 a to 5 d denote task processing units that perform processing for individual tasks (sections) divided by the node division / integration unit 4. Reference numeral 6 denotes a target track update unit that updates the information (track) of the target based on the processing results of the task processing units 5 a to 5 d integrated by the node division / integration unit 4. Reference numeral 7 denotes an output line for outputting the information updated by the target track update unit 6 to the outside as a tracking result. Reference numerals 8a to 8d denote transfer lines used for transferring the processing results of these units.
[0028]
Reference numeral 9 denotes a load distribution unit that distributes and assigns processing for the nodes divided by the node division / integration unit 4 to each of the task processing units 5a to 5d based on their load conditions. 8f is a transfer line connecting the load distribution unit 9 and the node division / integration unit 4, and 8g is a transfer line connecting the load distribution unit 9 and the task processing units 5a to 5d.
[0029]
Next, the operation will be described.
The observation point information from the outside is input to the cluster generation unit 3 via the input line 1, and the prediction region created by the prediction region generation unit 2 is input via the transfer path 8a. Upon receiving these observation point information and the prediction area, the cluster generation unit 3 combines the prediction areas when the prediction areas of a plurality of targets overlap and there are observation points in the overlapping areas. Generate. Information of one cluster generated by the cluster generation unit 3 (observation point and target region prediction area) is sent to the node division / integration unit 4 via the transfer path 8b, and the node division / integration unit 4 receives the information. Generate search tree clauses from cluster information.
[0030]
The load distribution unit 9 takes in the node generated by the node division / integration unit 4 via the transfer path 8f, and processes the node via the transfer path 8g according to the load status of each task processing unit 5a to 5d. It distributes to each task processing part 5a-5d. Each task processing unit 5a to 5d obtains a leaf of the search tree (corresponding to one of the tracking combinations) from the received node, and sends the processing result to the node division / integration unit 4 via the transfer paths 8g and 8f. The node division / integration unit 4 integrates the processing results of the received task processing units 5a to 5d, and sends them to the target track update unit 6 via the transfer path 8c. The target track update unit 6 has target information, and updates target information based on the possibility of individual combinations that have been sent. Information on the target updated by the target track update unit 6 is output to the outside via the output line 7 and is also sent to the prediction region generation unit 2 via the transfer line 8d. The prediction region generation unit 2 performs movement prediction on each target based on the target information updated by the target track update unit 6, generates the prediction region, and sends it to the cluster generation unit 3 from the transfer line 8a. .
This device operates as a parallel multi-target tracking device using dynamic load balancing by repeating the above operations.
[0031]
Hereinafter, the operation of each unit will be described by taking the case of using JPDA as an example.
2 is an explanatory diagram showing the relationship between the target and the observation point in JPDA, FIG. 3 is an explanatory diagram showing a matrix Ω representing the relationship between the target and the observation point, and FIG. 4 is a diagram showing the relationship between the target and the observation point. It is explanatory drawing which shows the search tree showing the combination. In FIG. 2, t (1) and t (2) are targets, and an ellipse centered on the predicted coordinates of the targets t (1) and t (2) indicated by black circles is a prediction range. Moreover, y (1) to y (4) are observation points.
[0032]
Note that the matrix Ω shown in FIG. 3 is divided into targets t (0) to t (2) in the vertical direction and observation points y (1) to y (4) in the horizontal direction, and the target t (0) is Indicates no corresponding goal. Further, “1” in the matrix Ω indicates possibility and “0” indicates no possibility, respectively. The matrix Ω represents the following contents.
• Observation point y (1) is target t (2) or no corresponding target
Observation point y (2) is target t (1), target t (2), or no corresponding target
• Observation point y (3) is target t (1) or no corresponding target
• Observation point y (4) is target t (1) or no corresponding target
[0033]
There are the following cases as a combination of the target and the observation point satisfying this.
-Target t (1) is observation point y (2), and target t (2) is observation point y (1).
・ Target t (1) is observation point y (2) and target t (2) is not supported
-Target t (1) is observation point y (3), and target t (2) is observation point y (1).
-Target t (1) is observation point y (3), and target t (2) is observation point y (2).
・ Target t (1) is observation point y (3) and target t (2) is not supported
-Target t (1) is observation point y (4), and target t (2) is observation point y (1).
The target t (1) is the observation point y (4), and the target t (2) is the observation point y (2).
-Target t (1) is observation point y (4) and target t (2) is not supported
-Target t (1) does not correspond and target t (2) is observation point y (1)
-Target t (1) does not correspond and target t (2) is observation point y (2)
・ Target t (1) does not correspond, target t (2) does not correspond
[0034]
FIG. 4 shows this combination as a search tree. Each name in the search tree corresponds to the following part in FIG. 4, and the combination corresponds to the state of each node from the root to the leaf.
・ Root → Root
-Section → The part shown in the ellipse in Fig. 4 is located in the middle of the tree structure branch
・ Leaf → The part shown by the square in Fig. 4 located at the tip of the branch of the tree structure
・ Branches → Lines connecting roots and nodes, nodes and nodes, nodes and leaves in Fig. 4
・ Node → Concept including both nodes and leaves
・ Sibling → Nodes with the same number of branches from the root to the node
[0035]
Based on the above, the operation of each unit will be specifically described.
First, the prediction region generation unit 2 predicts the targets t (1) and t (2) corresponding to the time at which the observation point was observed from the information (coordinates, speed, etc.) of the target held inside. Calculate the coordinates. Similarly, a prediction area (ellipse in FIG. 2) centering on the predicted coordinates of the target objects t (1) and t (2) that is equal to or higher than a certain existence probability is calculated. Next, the cluster generation unit 3 examines the inclusion relationship between the prediction region and the observation points y (1) to y (4). When there are observation points included in a plurality of prediction regions, the prediction regions including the observation points are combined to form a cluster. In the example shown in FIG. 2, since the observation point y (2) is included in two prediction regions, the two prediction regions are combined as one cluster.
[0036]
The generated cluster is sent to the node division / integration unit 4, and the node division / integration unit 4 generates the nodes of the search tree shown in FIG. The load distribution unit 9 takes in the node generated by the node division / integration unit 4 and distributes the processing of the node to the task processing units 5a to 5d according to the load status of each task processing unit 5a to 5d. Here, the node level distributed to the task processing units 5a to 5d may be the observation point y (1), y (2), or y (3) in FIG. . Note that the processing amount for each section usually decreases as the level becomes lower. Each task processing unit 5a to 5d calculates leaves from the nodes distributed by the load distribution unit 9, calculates reliability for each combination indicated by each leaf, and calculates the correspondence between the target and each observation point. Perform weighting.
[0037]
For example, in FIG. 4, the task processing unit that receives clause 10 calculates the following reliability E (1) to E (3) as the reliability for each combination.
E (1) → Reliability of observation point y (1) is not supported, observation point y (2) is target t (2), and observation points y (3) and y (4) are not supported
E (2) → Observation point y (1) does not correspond, observation point y (2) does not correspond to target t (2), observation point y (3) does not correspond, and observation point y (4) corresponds to target t ( 1) Case reliability
E (3) → Observation point y (1) does not correspond, observation point y (2) is target t (2), observation point y (3) is target t (1), and observation point y (4) is Unreliable case reliability
[0038]
Next, the task processing units 5a to 5d perform the following weighting on the correspondence relationship between the target and each observation point in Section 10 shown in FIG. 4 based on the calculated reliability value.
• Target t (1) is the weight corresponding to observation point y (3), E (3) • Target t (1) is the weight corresponding to observation point y (4), E (2) • Target The weight at which the object t (1) does not correspond is defined as E (1)
The weight corresponding to the observation point y (2) by the target t (2) is set to E (1) + E (2) + E (3)
[0039]
Next, the node division / integration unit 4 aggregates the “weights for the correspondence between the target and each observation point” calculated by the task processing units 5a to 5d. For example, in the case of the target object t (2), a weight corresponding to the observation point y (1), a weight corresponding to the observation point y (2), and a weight corresponding to no correspondence are obtained.
[0040]
The target track update unit 6 receives the information after the node division / integration unit 4 integrates, calculates the position of the target, and updates internal information such as the coordinates and speed of the target. For example, in the case of the target t (2), the coordinates of the target t (2) are obtained based on the above three weights. The calculation result based on this weighting is imitated with the coordinates of the target.
This completes the operation of each unit.
[0041]
Next, node distribution according to each load situation in the task processing units 5a to 5d will be described.
First, the load distribution unit 9 equally distributes the processing of all the nodes of a certain level of the search tree generated by the node division / integration unit 4 to the task processing units 5a to 5d. As a method for distributing the processing of the nodes equally, the number of nodes may be equalized, or the number of leaves below the nodes may be equalized.
[0042]
Next, the load distribution unit 9 issues a load report request to each of the task processing units 5a to 5d via the transfer line 8g, and each task processing unit 5a to 5d sends the load status to the load distribution unit 9 in response to the request. Report. Here, in the load status, the length per unit time of the job queue managed by the operating system, that is, the number of jobs in the job queue, or the task processing units 5a to 5d are still The number of unprocessed nodes and leaves may be considered.
[0043]
Next, when the load distribution unit 9 receives the report of the load status from each task processing unit 5a to 5d, each task processing unit 5a to 5d is equally loaded based on the information. The processing units 5a to 5d are requested to move the node. Here, for example, when the load status is the number of unprocessed nodes of the task processing units 5a to 5d, the load status reports from the task processing units 5a to 5d are 3, 5, 4, and 4, respectively. Shall be. Thus, since the number of unprocessed nodes in all the task processing units 5a to 5d is 3 + 5 + 4 + 4 = 16, when the load states of the four task processing units 5a to 5d are equalized, the task processing units 5a to 5d are in charge. The number of clauses to be made is four. Therefore, the load distribution unit 9 instructs the task processing unit 5b to move the processing of one node to the task processing unit 5a via the transfer line 8g. As a result, the number of unprocessed nodes in each of the task processing units 5a to 5d becomes equal to four.
The collection of the load status and the movement of the nodes between the task processing units 5a to 5d are periodically performed.
[0044]
As described above, according to the first embodiment, the load distribution unit 9 distributes the node processing to the task processing units 5a to 5d according to the load status of the task processing units 5a to 5d. Even when each of the task processing units 5a to 5d operates on a machine that performs other processing such as a general-purpose workstation, the processing time of each of the task processing units 5a to 5d becomes equal and the optimum load The effect that it becomes possible to perform dispersion | distribution is acquired.
[0045]
Further, since the number of unprocessed nodes in each task processing unit 5a to 5d is regularly equalized, processing other than the processing of the nodes is performed on the same processor as the task processing units 5a to 5d. In addition, the processing of all the nodes of the task processing units 5a to 5d is completed in substantially the same time, and the effect that optimum load distribution can be performed is also obtained.
[0046]
Embodiment 2. FIG.
In the first embodiment described above, the load distribution unit 9 takes the initiative of load distribution timing and periodically equalizes the loads of the task processing units 5a to 5d, so that the task processing units 5a to 5d In the above description, the processing of the section in FIG. 5 is completed at substantially the same time. However, the task processing units 5a to 5d take the initiative of load distribution timing and make a job transfer request to the load distribution unit 9. Also good. The second embodiment describes such a parallel multi-target tracking apparatus, and the configuration thereof is the same as that of the first embodiment shown in FIG.
[0047]
Next, the operation will be described. Here, a description will be given of parts different from the first embodiment.
First, the load distribution unit 9 distributes the processing of a certain level of nodes in the search tree generated by the node division / integration unit 4 to each task processing unit 5a to 5d one unit at a time. When each task processing unit 5a to 5d receives the node of the search tree, the processing is started. Each task processing unit 5a to 5d requests the load distribution unit 9 to transfer the next work, that is, the clause to be processed, when the received processing of the clause ends and the load disappears. When the load distribution unit 9 receives the transfer request, the load distribution unit 9 applies the processing (load) of one unit to the task processing unit 5a (˜5d) that issued the request.
Repeat the above process until all clauses are gone.
[0048]
As described above, according to the second embodiment, each task processing unit 5a to 5d issues a transfer request for the next job to the load distribution unit 9 when there is no more work. Even if it is done in the above, processing of all the nodes of each task processing unit 5a-5d is completed in almost the same time, it is possible to achieve an optimal load distribution, and further, it corresponds to the processing of one node Even when the amount of processing to be performed is small, there is no need for periodic load status collection processing, so that the effect of reducing load distribution overhead can be obtained.
[0049]
Embodiment 3 FIG.
In each of the above-described embodiments, each task processing unit 5a to 5d has been described with respect to a case in which a processing transfer request for the next section is issued to the load distribution unit 9 after processing of one section is completed. It is also possible to secure a certain amount of work in ˜5d and sequentially process it. The third embodiment describes such a parallel multi-target tracking device, and the configuration thereof is the same as that of the first embodiment shown in FIG.
[0050]
Next, the operation will be described. In this case as well, portions different from those in Embodiment 1 will be described.
First, the load distribution unit 9 first distributes the processing of a certain level of nodes in the search tree generated by the node dividing / integrating unit 4 to each of the task processing units 5a to 5d. When each of the task processing units 5a to 5d receives the plurality of units of clauses, the task processing units 5a to 5d hold the remaining clauses except for one unit, and execute the processing of the remaining one unit of clauses not held. When the processing of the relevant section is completed, each task processing section 5a to 5d requests the load distribution section 9 to transfer the next work, that is, the next section to be processed. Before a response to the transfer request is returned from the load distribution unit 9, one unit of the stored clauses is taken out and the processing is started. When the load distribution unit 9 receives a transfer request for the next node to be processed from the task processing unit 5a (˜5d), the load distribution unit 9 distributes the processing of the next clause to the task processing unit 5a (˜5d) that sent the request. I do. Further, when the task processing unit 5 a (˜5 d) that issued the request receives the distribution of the node to be processed next from the load distribution unit 9, it holds it.
Repeat the above process until all clauses are gone.
[0051]
As described above, according to the third embodiment, when each task processing unit 5a to 5d runs out of work, it issues a transfer request for the next job to the load balancing unit 9 and holds the stored section. Since the process of (2) is started immediately, the process of the other section is executed from when the request for transferring the next job is sent to the load distribution unit 9 until the response is received, and the task processing unit 5a. Since there is almost no time during which the processes of 5d are not processed, the effect of optimal load distribution can be obtained.
[0052]
Embodiment 4 FIG.
In each of the above embodiments, the case where the unit of load distribution is constant has been described. However, the unit of load distribution may be reduced with time. The fourth embodiment describes such a parallel multi-target tracking device, and the configuration thereof is the same as that of the first embodiment shown in FIG. 1, and therefore the description thereof is omitted here.
[0053]
Here, the unit of load distribution in the parallel multi-target tracking device is a node, but the size corresponding to the processing amount can be measured, for example, by the number of leaves below the node. As can be seen from the search tree shown in FIG. 4, the number of leaves increases as the level of the node increases, and decreases as the level decreases. Therefore, in load distribution, it is easy to generate work of a smaller size by disassembling nodes and using nodes having lower levels as units of load distribution.
[0054]
Here, the smaller the size of the load distribution unit is, the larger the number of times the load is distributed, so the overhead for load distribution increases. However, the end of processing is made uniform among the task processing units 5a to 5d. The smaller the better. Therefore, at the beginning, a high-level node is used as the unit of load distribution, the nodes are decomposed as processing progresses, and a lower-level node is used as the unit of load distribution. It is possible to make the end of the processing of the nodes of the processing units 5a to 5d uniform and perform optimum load distribution.
[0055]
When the unit of load distribution is reduced with time, when each task processing unit 5a-5d holds work (ie, node processing) as in the first embodiment, each task processing unit 5a-5d Disassemble the clause. Also, when the load distribution unit 9 holds the node processing as in the second embodiment, the load distribution unit 9 disassembles the node, and as in the third embodiment, the load distribution unit 9 and each task processing unit 5a. When the node processing is held at ˜5d, the node is disassembled by both the load distribution unit 9 and the task processing units 5a-5d.
[0056]
As described above, according to the fourth embodiment, since the unit of load distribution is reduced with time, the processing of the sections of the task processing units 5a to 5d is completed after suppressing the overhead of load distribution. Can be made uniform and the optimum load distribution can be achieved.
[0057]
Embodiment 5. FIG.
In the fourth embodiment, the case where the unit of load distribution is reduced with time has been described. However, the load distribution unit is reduced when the processing time of one load distribution unit becomes longer than a certain value regardless of the time. You may do it. The fifth embodiment describes such a parallel multi-target tracking device, and the configuration thereof is the same as that of the first embodiment shown in FIG. 1, and therefore the description thereof is omitted here.
[0058]
When the processing of a node at the same level of the search tree is used as a unit of load distribution, the number of leaves below it is not uniform depending on the node. Thus, if the number of leaves in a section is very large, it takes a very long time to process that section, and in the worst case, all the other sections have been processed, It is possible that only processing remains.
[0059]
Therefore, each task processing unit 5a to 5d monitors the processing time of a section, and during the processing of a section, the execution time from the start of the processing of the section has elapsed for a certain time or more. In this case, a part of the group of nodes not yet processed below the node is returned to the load distribution unit 9. Then, as in the case of the first embodiment, when each task processing unit 5a to 5d holds work (node processing), it holds the node group returned until the next load distribution timing. In the next load distribution, the processing of the node group is distributed to the task processing units 5a to 5d having a low load. Further, when the load distribution unit 9 holds the node processing as in the case of the second embodiment, the returned node group is held as it is and handled in the same way as the already held node. Similarly, when the node processing is held in the load distribution unit 9 and each of the task processing units 5a to 5d as in the case of Form 3, the returned node group is held as it is and the node already held. Treat as well.
[0060]
As described above, according to the fifth embodiment, by returning a part of the processing of the clause that takes a very long processing time to the load distribution unit 9, the other task processing units 5a to 5d having a sufficient processing capacity. Since the processing of these node groups is distributed, the load is distributed, and the processing is completed earlier as a whole, so that the effect of optimal load distribution can be obtained.
[0061]
Embodiment 6 FIG.
In the fifth embodiment described above, the task processing units 5a to 5d have a constant upper limit value for the processing time of one load distribution unit that is determined to return the unprocessed clause group processing to the load distribution unit 9. However, the upper limit value may be reduced with time. The sixth embodiment describes such a parallel multi-target tracking device, and the configuration thereof is the same as that of the first embodiment shown in FIG.
[0062]
When the task processing units 5a to 5d return the processing of the unprocessed clause group to the load distribution unit 9, the upper limit value of the processing time of one load distribution unit determined to be returned to the load distribution unit 9 is larger. When it is determined to return, there is a risk that the processing of the other task processing units 5a to 5d has already been completed. If it is small, the processing of the other task processing units 5a to 5d is not completed for the time being. Since the processing of the node group is returned to the load distribution unit 9, there is a risk that it will be a wasteful work movement.
[0063]
Therefore, at first, the upper limit value for determining that the processing of the unprocessed clause group is to be returned to the load distribution unit 9 is increased, and is decreased with time. Thereby, the return of the node group to the load balancing unit 9 which is wasted can be suppressed by a large upper limit at first. Further, at the end of the entire process, before the other task processing units 5a to 5d complete the processing due to a small upper limit value, a part of the work of the task processing units 5a to 5d that takes a long time is processed. It can be distributed to the other task processing units 5a to 5d, and optimal load distribution can be achieved.
[0064]
As described above, according to the sixth embodiment, since the upper limit value of the load amount when returning the node group to the load distribution unit 9 is reduced with time, the node group that is wasted at first is used. Return can be suppressed, and at the end of the process, it is possible to reliably distribute a part of the work of the task processing units 5a to 5d that takes a long time to the other task processing units 5a to 5d. Thus, it is possible to obtain an effect that the optimum load distribution can be performed.
[0065]
Embodiment 7 FIG.
In each of the above embodiments, the task processing units 5a to 5d and the load distribution unit 9 are operated on different processors. However, one of the plurality of task processing units 5a to 5d is load distributed. It may be operated on the same processor as the unit 9. The load when the node processing is performed is highest in the task processing units 5a to 5d, and the load distribution unit 9 has almost no load. Therefore, by operating the load distribution unit 9 on the same processor as one of the task processing units 5a to 5d, it is possible to increase the load on all the processors.
[0066]
As described above, according to the seventh embodiment, since the load distribution unit 9 is operated on the same processor as one of the task processing units 5a to 5d, the load is increased in all the processors. And the parallel processing without waste is possible.
[0067]
【The invention's effect】
  As described above, according to the present invention, when the load distribution unit is provided and the nodes of the search tree generated for the cluster are distributed to the plurality of task processing units for processing, the load distribution units correspond to the load status of each task processing unit. Therefore, even when each task processing unit operates on a processor executing other processing, the processing time of each task processing unit can be made equal. The parallel multi-target tracking device capable of performing optimal load distribution can be obtained.
  Further, according to the present invention, the load distribution unit first distributes the processing of a plurality of units to each task processing unit, and each task processing unit starts the processing of one unit of the units. When the processing of the section is completed, the distribution of the next section is requested to the load balancer, and the next unit of data stored before the response to the request is returned. Since the processing of a clause is configured to start, each task processing unit issues a transfer request for the next job to the load balancer when work is exhausted, and processing of the stored clause is started immediately. Therefore, the processing of the other stored clauses is executed and the task processing unit performs the processing of the clauses from when the node transfer request to the load balancer is issued until the corresponding node is transferred. Almost no time is spent, allowing optimal load balancing There is an effect that becomes.
[0071]
According to the present invention, since the unit of load distribution is made smaller with time, it is possible to equalize the end of the processing of clauses in each task processing unit while suppressing the overhead of load distribution. There is an effect that optimum load distribution becomes possible.
[0072]
According to the present invention, when the processing time of one load balancing unit exceeds a certain value, the processing of a partial group of subordinates of the clause being processed is returned to the load balancing unit. Since the processing of those node groups can be distributed to other task processing units with sufficient processing capacity, and the processing will be completed earlier as a whole, there is an effect that optimum load distribution becomes possible .
[0073]
According to the present invention, since the upper limit value of the processing time when determining that the processing of some clause groups is returned to the load balancing unit is configured to decrease with time, the upper limit value is initially large. Therefore, it is possible to suppress the return of the node group to the load balancing unit, which is wasted, and at the end of the entire processing, a small upper limit value causes the processing to take time before the work of other task processing units is completed. Since part of the work of the task processing unit being distributed can be distributed to other task processing units, there is an effect that optimum load distribution can be achieved.
[0074]
According to the present invention, since one of the task processing units and the load distribution unit are operated on the same processor, the load can be increased in all processors, and parallel processing without waste. There is an effect that becomes possible.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a parallel multi-target tracking device according to the present invention.
FIG. 2 is an explanatory diagram showing a relationship between a target and an observation point by JPDA in the parallel multi-target tracking device of the present invention.
FIG. 3 is an explanatory diagram showing a matrix Ω representing a relationship between a target and an observation point in the parallel multi-target tracking device of the present invention.
FIG. 4 is an explanatory diagram showing a search tree representing combinations of targets and observation points in the parallel multi-target tracking device of the present invention.
FIG. 5 is an explanatory diagram showing a task graph of tracking processing in a conventional parallel multi-target tracking device.
FIG. 6 is an explanatory diagram showing a processor graph of tracking processing in a conventional parallel multi-target tracking device.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 Input line, 2 Prediction area | region production | generation part, 3 Cluster production | generation part, 4 segmentation / integration part, 5a-5d task processing part, 6 target object track update part, 7 output line, 8a-8d, 8f, 8g Transfer path, 9 Load distribution unit, Section 10, t (1), t (2) Target, y (1) to y (4) Observation point.

Claims (5)

複数のタスク処理部に対する負荷を分散させて、複数の目標物の追尾を行う並列多目標追尾装置において、
前記目標物の移動を予測し、その予測結果に応じて予測領域を生成する予測領域生成部と、
入力された観測点情報と、前記予測領域生成部にて生成された予測領域からクラスタを生成するクラスタ生成部と、
前記クラスタ生成部にて生成されたクラスタについて探索木の節を生成し、それをタスクとして分割/統合する節分割/統合部と、
前記節分割/統合部によって分割された個々の節について、その処理を行うと共に、複数単位の節が分配された場合、当該複数単位の節を1単位を除いて保持して、残った1単位の節の処理を行い、当該節の処理が終了すると、次の節の分配を要求するとともに、その要求に対する応答が返される前に保持しておいた次の1単位の節の処理を開始する複数のタスク処理部と、
前記節分割/統合部によって分割された節に対する処理として、前記各タスク処理部に対して最初に複数単位ずつ節の処理を分配し、前記タスク処理部から次の節の分配要求を受けると、当該節の分配を要求したタスク処理部に対して次の節の分配を行う負荷分散部と、
前記節分割/統合部の処理結果に基づいて前記目標物の情報を更新し、それを追尾結果として出力するとともに、前記目標物の移動予測のために前記予測領域生成部に入力する目標物航跡更新部とを備えたことを特徴とする並列多目標追尾装置。
In a parallel multi-target tracking device that distributes loads on a plurality of task processing units and tracks a plurality of targets,
A prediction region generation unit that predicts the movement of the target and generates a prediction region according to the prediction result;
A cluster generation unit that generates a cluster from the input observation point information and the prediction region generated by the prediction region generation unit;
A node division / integration unit that generates a search tree node for the cluster generated by the cluster generation unit and divides / integrates the search tree as a task;
For each section divided by the section dividing / merging unit, processing is performed , and when a plurality of sections are distributed, the plurality of sections are retained except for one unit, and the remaining one unit When the processing of the section is completed and the processing of the section is completed, the distribution of the next section is requested, and the processing of the next one unit stored before the response to the request is returned is started. A plurality of task processing units;
As processing for the clauses divided by the clause division / integration unit , first, the processing of a plurality of units is distributed to each task processing unit , and when a distribution request for the next clause is received from the task processing unit, A load distribution unit that distributes the next section to the task processing unit that requested distribution of the section ;
The target track is updated based on the processing result of the node division / integration unit, and is output as a tracking result and input to the prediction region generation unit for the movement prediction of the target A parallel multi-target tracking device comprising an update unit.
負荷分散の単位を、時間とともに小さくしていくことを特徴とする請求項1記載の並列多目標追尾装置。  2. The parallel multi-target tracking device according to claim 1, wherein a unit of load distribution is reduced with time. タスク処理部において1つの負荷分散単位の処理時間が一定時間以上長くなった場合に、当該タスク処理部が処理している節の下位の一部の節群の処理を、負荷分散部へ返すことを特徴とする請求項1記載の並列多目標追尾装置。  When the processing time of one load balancing unit in the task processing unit becomes longer than a certain time, the processing of a part of the subordinate group of clauses processed by the task processing unit is returned to the load balancing unit. The parallel multi-target tracking device according to claim 1. タスク処理部が負荷分散部へ節群の処理を返すと判断する1つの負荷分散単位の処理時間の上限値を、時間とともに小さくしていくことを特徴とする請求項6記載の並列多目標追尾装置。  7. The parallel multi-target tracking according to claim 6, wherein the upper limit value of the processing time of one load balancing unit for determining that the task processing unit returns the node group processing to the load balancing unit is reduced with time. apparatus. 複数のタスク処理部の内の1つを、負荷分散部と同一のプロセッサ上で動作させることを特徴とする請求項1記載の並列多目標追尾装置。  The parallel multi-target tracking device according to claim 1, wherein one of the plurality of task processing units is operated on the same processor as the load distribution unit.
JP28018799A 1999-09-30 1999-09-30 Parallel multi-target tracking device Expired - Fee Related JP3645135B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP28018799A JP3645135B2 (en) 1999-09-30 1999-09-30 Parallel multi-target tracking device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP28018799A JP3645135B2 (en) 1999-09-30 1999-09-30 Parallel multi-target tracking device

Publications (2)

Publication Number Publication Date
JP2001099925A JP2001099925A (en) 2001-04-13
JP3645135B2 true JP3645135B2 (en) 2005-05-11

Family

ID=17621520

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28018799A Expired - Fee Related JP3645135B2 (en) 1999-09-30 1999-09-30 Parallel multi-target tracking device

Country Status (1)

Country Link
JP (1) JP3645135B2 (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0315349D0 (en) 2003-07-01 2003-08-06 Qinetiq Ltd Signal processing with reduced combinatorial complexity
JP4485370B2 (en) * 2005-01-06 2010-06-23 三菱電機株式会社 Parallel computing device
JP5084598B2 (en) * 2008-04-26 2012-11-28 三菱電機株式会社 Tracking processing apparatus and program
JP5914245B2 (en) * 2012-08-10 2016-05-11 株式会社日立製作所 Load balancing method considering each node of multiple layers
DE102016206550A1 (en) 2016-04-19 2017-10-19 Conti Temic Microelectronic Gmbh Device and method for determining an object kinematics of a moving object
CN107561528A (en) * 2017-08-11 2018-01-09 中国人民解放军63870部队 The Joint Probabilistic Data Association algorithm that a kind of anti-flight path merges
CN113703934B (en) * 2020-05-22 2024-09-06 腾讯科技(深圳)有限公司 Task processing method, device, computer equipment and storage medium
CN113484841B (en) * 2021-07-26 2024-08-23 中国船舶重工集团公司第七二三研究所 Method for processing track heads under search radar multitasking parallelism

Also Published As

Publication number Publication date
JP2001099925A (en) 2001-04-13

Similar Documents

Publication Publication Date Title
JP4621087B2 (en) System and method for operating load balancer for multiple instance applications
Sharma et al. Performance analysis of load balancing algorithms
Shah et al. On the design of adaptive and decentralized load balancing algorithms with load estimation for computational grid environments
Wu On runtime parallel scheduling for processor load balancing
US9703610B2 (en) Extensible centralized dynamic resource distribution in a clustered data grid
CN101873224A (en) Cloud computing load balancing method and equipment
CN110109756A (en) A kind of network target range construction method, system and storage medium
CN107291544A (en) Method and device, the distributed task scheduling execution system of task scheduling
JP3645135B2 (en) Parallel multi-target tracking device
Schneider et al. Dynamic load balancing for ordered data-parallel regions in distributed streaming systems
Shi et al. Coflow scheduling in data centers: routing and bandwidth allocation
Khodar et al. New scheduling approach for virtual machine resources in cloud computing based on genetic algorithm
Lv et al. An effective framework for asynchronous incremental graph processing
Suryadevera et al. Load balancing in computational grids using ant colony optimization algorithm
Banicescu et al. Addressing the stochastic nature of scientific computations via dynamic loop scheduling
Gąsior et al. A Sandpile cellular automata-based scheduler and load balancer
Shi et al. Smart shuffling in MapReduce: a solution to balance network traffic and workloads
Kokkinos et al. Data consolidation: A task scheduling and data migration technique for grid networks
JP3650296B2 (en) Tracking device
US7386616B1 (en) System and method for providing load balanced processing
JP4127056B2 (en) Parallel multi-target tracking device
JP3638235B2 (en) Parallel multi-target tracking device
Mithila et al. Latency-based vector scheduling of many-task applications for a hybrid cloud
CN110928683B (en) Edge computing resource allocation method based on two types of intensive virtual machines
JP2001099921A (en) Parallel multi-target tracking device

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040721

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040727

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040902

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20050104

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050202

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080210

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090210

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100210

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100210

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110210

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120210

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130210

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130210

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140210

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees