行動制御システムおよびロボット
【課題】動いているオブジェクトに対してエージェントが確実に力を作用させるように、このエージェントの行動を制御することができるシステムを提供する。
【解決手段】本発明の行動制御システムによれば、オブジェクト(ボール)の予測位置軌道と、カウンターオブジェクト(ラケット)の位置軌道候補との時系列的な確率密度分布の重なり度合いCiが算出される。さらに、カウンターオブジェクトの複数の位置軌道候補のうち、オブジェクトの予測位置軌道との重なり度合いCiが最高の一の位置軌道候補の平均位置軌道または中心位置軌道である目標位置軌道にしたがってカウンターオブジェクトが動かされるようにロボット1(エージェント)の行動計画が生成される。
【解決手段】本発明の行動制御システムによれば、オブジェクト(ボール)の予測位置軌道と、カウンターオブジェクト(ラケット)の位置軌道候補との時系列的な確率密度分布の重なり度合いCiが算出される。さらに、カウンターオブジェクトの複数の位置軌道候補のうち、オブジェクトの予測位置軌道との重なり度合いCiが最高の一の位置軌道候補の平均位置軌道または中心位置軌道である目標位置軌道にしたがってカウンターオブジェクトが動かされるようにロボット1(エージェント)の行動計画が生成される。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、エージェントの行動態様を制御するためのシステム等に関する。
【背景技術】
【0002】
基準となる状態変数の軌道に基づいて実際の状況に適したエージェントの状態変数の軌道を生成するための手法として、多項式、ベジエまたはアトラクタ等が利用されている。
【0003】
たとえば、力学系の状態空間においてアトラクタを設計し、エージェントとしてのヒューマノイドロボットの軌道がこのアトラクタに引き込まれることでロボットの安定な自律的運動が実現されることが報告されている(非特許文献1参照)。
【0004】
また、ロボットの動作列に対応する「あげる」「近づける」などの異なる動作プリミティブのそれぞれを表わす複数の確率モデルを結合した上で、当該結合確率モデルにおいて「ペン」などのトラジェクタの最尤軌道を探索する手法が提案されている(特許文献1参照)。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2009−066692号公報
【非特許文献】
【0006】
【非特許文献1】岡田昌史 大里健太 中村仁彦「非線形力学系のアトラクタ設計によるヒューマノイドロボットの運動創発」計測自動学会論文集 vol.41,No.6,533/540(2005)
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかし、エージェントが動いているオブジェクト(トラジェクタ)に対する力の作用またはオブジェクトとの接触の回避等を目的とする場合、当該相互作用点の位置は不定であるため、当該行動目的の達成が困難である。
【0008】
そこで、本発明は、動いているオブジェクトに対してエージェントが目標とする相互作用形態を伴って行動するように、このエージェントの行動を制御することができるシステム等を提供することを解決課題とする。
【課題を解決するための手段】
【0009】
前記課題を解決するための本発明の行動制御システムは、行動計画にしたがってエージェントの行動を制御するシステムであって、オブジェクトの時系列的な計測位置または推定位置に基づき、将来における前記オブジェクトの時系列的な予測位置の確率密度分布により表現されている前記オブジェクトの予測位置軌道を決定するように構成されている第1演算処理要素と、前記エージェントの動作によってカウンターオブジェクトが到達可能な範囲において、前記オブジェクトの予測位置軌道に含まれる相互作用点候補と空間的かつ時系列的に一致する位置を含む、前記カウンターオブジェクトの時系列的な位置に対応する尤度を表現する確率密度分布により表現されている前記カウンターオブジェクトの位置軌道候補として生成するように構成されている第2演算処理要素と、前記カウンターオブジェクトの複数の位置軌道候補から、前記オブジェクトの予測位置軌道との時系列的な確率密度分布の重なり度合いに応じて選択される一の位置軌道候補の平均位置軌道または中心位置軌道である前記カウンターオブジェクトの目標位置軌道に、前記カウンターオブジェクトの位置軌道を一致させるように前記行動計画を生成するように構成されている第3演算処理要素とを備えていることを特徴とする(第1発明)。
【0010】
本発明の行動制御システムによれば、オブジェクトの時系列的な計測位置または推定位置に基づき、オブジェクトの将来における時系列的な予測位置の存在確率密度分布(または尤度)により表現されているオブジェクトの「予測位置軌道」が決定される。確率密度分布は標準偏差または分散(共分散行列)によりその空間的な広がりが定義される。
【0011】
また、エージェントの動作によってカウンターオブジェクトが到達可能な範囲において、オブジェクトの予測位置軌道に含まれる「相互作用点候補」と空間的かつ時系列的に一致する位置が含まれる、カウンターオブジェクトの時系列的な位置に対応する尤度を表現する確率密度分布により表現されているカウンターオブジェクトの「位置軌道候補」が生成される。
【0012】
ここで「尤度」とは、エージェントが模範とすべきインストラクタらしさ、ある位置でオブジェクトに相互作用させるためのカウンターオブジェクトの動かし方の適当度、および、カウンターオブジェクトとの相互作用後におけるオブジェクトの運動の適合度という概念を含む。
【0013】
「カウンターオブジェクト」とは、エージェントの動きに伴って動かされる、エージェントとは別個独立の道具または器具等の物体のほか、エージェントの身体の一部をも含む概念である。カウンターオブジェクトには、エージェントに定常的に接触している物体、エージェントに一時的に接触する物体、および、エージェントから定常的に離反している物体(たとえば遠隔制御される車両)も含まれる。なお、一の相互作用点候補に対して一の位置軌道候補が生成されるほか、一の相互作用点候補に対して異なる複数の位置軌道候補が生成されてもよい。
【0014】
さらに、カウンターオブジェクトの複数の位置軌道候補から、オブジェクトの予測位置軌道との時系列的な確率密度分布の「重なり度合い」に応じて選択される一の位置軌道候補である「目標位置軌道」にしたがってカウンターオブジェクトが動かされるようにエージェントの行動計画が生成される。
【0015】
軌道間の時系列的な確率密度分布の重なり度合いの高低は、カウンターオブジェクトとオブジェクトとが相互作用する確率の高低を表わしている。このため、前記のように生成された行動計画にしたがってエージェントの行動が制御されることにより、オブジェクトに対する相互作用形態が目標形態に一致するようにカウンターオブジェクトを動かすという「タスク」をエージェントに確実に実行させることができる。さらに、カウンターオブジェクトの位置には当該確率密度分布の広がりに応じた変動または揺らぎが許容されるため、エージェントにもタスクを実行するという目的が達成される範囲で動作態様の変動が許容されうる。
【0016】
第1発明の行動制御システムにおいて、前記第3演算処理要素が、前記カウンターオブジェクトの複数の位置軌道候補から、前記オブジェクトの予測位置軌道との時系列的な確率密度分布の重なり度合いが最高または最低となるような前記一の位置軌道候補を選択するように構成されていてもよい(第2発明)。
【0017】
当該構成の行動制御システムによれば、前記のように生成された行動計画にしたがってエージェントの行動が制御されることにより、カウンターオブジェクトを動かしてオブジェクトと相互作用させる、あるいは、オブジェクトとの相互作用または接触を回避しながらカウンターオブジェクトを動かすという「タスク」をエージェントに確実に実行させることができる。
【0018】
第1または第2発明の行動制御システムにおいて、前記第2演算処理要素が、前記オブジェクトの予測位置軌道と、前記カウンターオブジェクトの複数の位置軌道候補のそれぞれとにしたがって、前記カウンターオブジェクトと前記オブジェクトとが前記相互作用点候補において相互作用したと仮定した場合における、前記オブジェクトの時系列的な予測位置の確率密度分布により表現されている前記オブジェクトの相互作用後予測位置軌道をさらに決定するように構成され、前記第3演算処理要素が、前記カウンターオブジェクトの複数の位置軌道候補から、前記オブジェクトの予測位置軌道との時系列的な確率密度分布の重なり度合いに加えて、前記オブジェクトの相互作用後予測位置軌道と指定位置軌道との時系列的な確率密度分布の重なり度合いに応じて前記一の位置軌道候補を選択するように構成されていてもよい(第3発明)。
【0019】
当該構成の行動制御システムによれば、オブジェクトの予測位置軌道と、カウンターオブジェクトの複数の位置軌道候補のそれぞれとにしたがって、カウンターオブジェクトとオブジェクトとが相互作用点候補において相互作用したと仮定した場合における、オブジェクトの時系列的な予測位置の確率密度分布により表現されているオブジェクトの「相互作用後予測位置軌道」が決定される。
【0020】
また、カウンターオブジェクトの複数の位置軌道候補から、オブジェクトの予測位置軌道との時系列的な確率密度分布の「重なり度合い」と、オブジェクトの相互作用後予測位置軌道と指定位置軌道との時系列的な確率密度分布の「重なり度合い」とに応じた「総合重なり度合い」に応じて一の位置軌道候補が選択され、この選択位置軌道である「目標位置軌道」にしたがってカウンターオブジェクトが動かされるようにエージェントの行動計画が生成される。「指定位置軌道」も時系列的な指定位置に対応する尤度を表現する確率密度分布により表現されている。
【0021】
オブジェクトの予測位置軌道との時系列的な確率密度分布の重なり度合いの高低は、前記のようにカウンターオブジェクトとオブジェクトとが相互作用する確率の高低を表わしている。また、オブジェクトの相互作用後予測位置軌道と指定位置軌道との時系列的な確率密度分布の重なり度合いの高低は、オブジェクトがカウンターオブジェクトと相互作用した後で指定位置軌道にしたがって変位する確率の高低を表わしている。したがって、これら2つの重なり度合いに応じた総合重なり度合いの高低は、カウンターオブジェクトとオブジェクトとを相互作用させるとともに、オブジェクトがカウンターオブジェクトと相互作用した後で指定位置軌道にしたがって変位する確率の高低を表わしている。
【0022】
このため、前記のように生成された行動計画にしたがってエージェントの行動が制御されることにより、オブジェクトに対する相互作用形態が目標形態に一致するようにカウンターオブジェクトを動かし、その結果としてオブジェクトを指定位置軌道と所望の関係を有する位置軌道にしたがって変位させるという「タスク」をエージェントに確実に実行させることができる。さらに、カウンターオブジェクトの位置には当該確率密度分布の広がりに応じた変動または揺らぎが許容されるため、エージェントにもタスクを実行するという目的が達成される範囲で動作態様の変動が許容されうる。
【0023】
第3発明の行動制御システムにおいて、前記第3演算処理要素が、前記カウンターオブジェクトの複数の位置軌道候補から、前記オブジェクトの予測位置軌道との時系列的な確率密度分布の重なり度合いと、前記オブジェクトの相互作用後予測位置軌道と前記指定位置軌道との時系列的な確率密度分布の重なり度合いとに応じた総合重なり度合いが最高または最低となるような前記一の位置軌道候補を選択するように構成されていてもよい(第4発明)。
【0024】
当該構成の行動制御システムによれば、前記のように生成された行動計画にしたがってエージェントの行動が制御されることにより、カウンターオブジェクトを動かしてオブジェクトと相互作用させる、あるいは、オブジェクトとの相互作用または接触を回避しながらカウンターオブジェクトを動かし、その結果としてオブジェクトを指定位置軌道と同一の位置軌道または指定位置軌道と重なりがない位置軌道等にしたがって変位させるという「タスク」をエージェントに確実に実行させることができる。
【0025】
第1〜第4発明のうちいずれか1つの行動制御システムにおいて、前記第2演算処理要素が、前記相互作用点候補と空間的かつ時系列的に一致する前記カウンターオブジェクトの位置に対応する尤度を表現する確率密度分布の広がりが、他の位置に対応する尤度を表現する確率密度分布の広がりと比較して小さくなるように前記カウンターオブジェクトの位置軌道候補を生成するように構成されていてもよい(第5発明)。
【0026】
当該構成の行動制御システムによれば、前記のように各時点におけるカウンターオブジェクトの位置には、カウンターオブジェクトの目標位置軌道の確率密度分布の空間的な広がりに応じた変動が許容される。具体的には、エージェントにタスクを実行させる観点から必要性が高い時点においては、エージェントに動作態様の変動を禁止または制限することにより、エージェントによるタスクの実行の確実を図ることができる。たとえば、相互作用時点およびその直前直後の時点が、エージェントにタスクを実行させる観点から必要性が高い時点に該当する。その一方、エージェントにタスクを実行させる観点から必要性が低い時点においては、エージェントに比較的広い幅で動作態様の変動を許容することにより、エージェントにその構造上無理なまたは非効率的な動作を強いる事態が回避されうる。
【0027】
第1〜第5発明のうちいずれか1つの行動制御システムにおいて、前記第3演算処理要素が、前記相互作用点候補と時系列的に一致する時点を除いて前記重なり度合いを算出するように構成されていてもよい(第6発明)。
【0028】
第1〜第5発明のうちいずれか1つの行動制御システムにおいて、前記第3演算処理要素が、前記カウンターオブジェクトの位置軌道候補が有する確率密度分布の標準偏差または分散に応じた広がりを当該位置軌道候補が有する確率密度分布群のそれぞれに対して加え、または、当該位置軌道候補が有する確率密度分布群のそれぞれの広がりを当該標準偏差または分散に応じた広がりに補正し、その上で前記重なり度合いを算出するように構成されていてもよい(第7発明)。
【0029】
当該構成の行動制御システムによれば、相互作用点候補に対応する時点が特異点となって重なり度合いの算出結果の信頼性を損なう事態が回避されうる。したがって、重なり度合いが最高の一の位置軌道候補である目標位置軌道にしたがってカウンターオブジェクトが動かされるようにエージェントの行動が制御されることにより、カウンターオブジェクトを動かしてオブジェクトと相互作用させるというタスクのエージェントによる実行の確実が図られる。
【0030】
第1〜第7発明のうちいずれか1つの行動制御システムにおいて、前記第2演算処理要素が、前記カウンターオブジェクトの位置の模範位置軌道の形状特性を表わす因子にしたがい、前記カウンターオブジェクトの位置およびその1〜n階時間微分値(n=1,2,‥)が連続的に変化する確率遷移モデルにしたがって前記カウンターオブジェクトの位置軌道候補を生成するように構成されていてもよい(第8発明)。
【0031】
当該構成の行動制御システムによれば、カウンターオブジェクトの位置軌道候補の生成基礎である確率遷移モデルは、インストラクタがカウンターオブジェクトを動かしてオブジェクトと相互作用させる際の当該インストラクタの行動の特徴など、カウンターオブジェクトの模範位置軌道の形状特性を表わす因子にしたがっている。また、この確率遷移モデルは、カウンターオブジェクトの位置およびその1〜n階時間微分値(n=1,2,‥)が連続的に変化するようなエージェントの動作を表わしている。
【0032】
このため、当該確率遷移モデルにしたがって生成されたカウンターオブジェクトの位置軌道候補に、状態変数の模範位置軌道の形状特性、および、空間的かつ時間的な連続性を持たせることができる。したがって、位置軌道候補のうち1つにしたがってエージェントの行動が制御されることにより、エージェントに模範的な動作特性を模倣または再現させながら、円滑な動作によりカウンターオブジェクトをオブジェクトと相互作用させることができる。
【0033】
第8発明の行動制御システムにおいて、前記第2演算処理要素が、前記確率遷移モデルにしたがって、前記カウンターオブジェクトの時系列的に順方向の推定位置の確率密度分布により表現されている順方向推定位置軌道を生成する一方、前記カウンターオブジェクトの時系列的に逆方向の推定位置の確率密度分布により表現されている逆方向推定位置軌道を生成した上で、前記順方向推定位置軌道および前記逆方向推定位置軌道のそれぞれの確率密度分布を時系列的に合成することにより、時系列的な当該合成確率密度分布により表現されている前記カウンターオブジェクトの位置軌道候補を生成するように構成されていてもよい(第9発明)。
【0034】
当該構成の行動制御システムによれば、確率遷移モデルにしたがって、時系列的に順方向または未来に向かって逐次推定されたカウンターオブジェクトの位置の存在確率密度分布により表現されている「順方向推定位置軌道」が生成される。その一方、確率遷移モデルにしたがって、時系列的に逆方向にまたは過去に向かって逐次推定されたカウンターオブジェクトの位置の存在確率密度分布により表現されている「逆方向推定位置軌道」が生成される。
【0035】
そして、順方向推定位置軌道および逆方向推定位置軌道の確率密度分布が時系列的に合成されることにより、当該合成確率密度分布により表現されているカウンターオブジェクトの「位置軌道候補」が生成される。これにより、カウンターオブジェクトの位置軌道候補に、オブジェクトとカウンターオブジェクトとの相互作用点候補の前後における空間的かつ時間的な連続性を持たせることができる。
【0036】
第8または第9発明の行動制御システムにおいて、前記第2演算処理要素が、前記相互作用点候補よりも時系列的に前において、前記カウンターオブジェクトを前記オブジェクトと相互作用させる観点から定義されている第1因子が前記因子として採用される一方、前記相互作用点候補よりも時系列的に後において、前記第1因子とは異なる第2因子が前記因子として採用されている前記確率遷移モデルにしたがって前記カウンターオブジェクトの位置軌道候補を生成するように構成されていてもよい(第10発明)。
【0037】
当該構成の行動制御システムによれば、カウンターオブジェクトを動かしてオブジェクトと相互作用させるというタスクが実行される前後において、性質が異なる行動計画が生成されうる。具体的には、エージェントにタスクを実行させた後、タスク実行前の制限から解放された態様で行動させることができる。
【0038】
前記課題を解決するための本発明のロボットは、アクチュエータと、請求項1〜10のうちいずれか1つに記載の行動制御システムとを備え、前記行動制御システムにより前記アクチュエータの動作が制御されることにより、前記エージェントとしての行動が制御されるように構成されていることを特徴とする。
【0039】
本発明のロボットによれば、オブジェクトに対する相互作用形態が目標形態に一致するようにカウンターオブジェクトを動かすという「タスク」をエージェントとしてのロボットが確実に実行することができる。
【図面の簡単な説明】
【0040】
【図1】本発明の行動制御システムの構成説明図。
【図2】エージェントとしてのロボットの構成説明図。
【図3】ロボットの行動制御方法(第1実施形態)を示すフローチャート。
【図4】オブジェクトの予測位置軌道および相互作用点に関する説明図。
【図5】カウンターオブジェクトの位置軌道候補に関する説明図。
【図6】ロボットの動作に関する説明図。
【図7】ロボットの行動制御方法(第2実施形態)を示すフローチャート。
【図8】オブジェクトの予測位置軌道に関する説明図。
【図9】オブジェクトの位置推定方法を示すフローチャート。
【図10】パーティクルフィルタの生成方法に関する説明図。
【図11】パーティクルフィルタの生成方法に関する説明図。
【図12】モデル変数に関する説明図。
【図13】カウンターオブジェクトの位置軌道候補の生成方法に関する説明図。
【図14】確率遷移モデル(DBN)に関する説明図。
【図15】カウンターオブジェクトの模範位置軌道の学習方法に関する説明図。
【図16】異なるDBNにより生成された位置軌道候補の比較説明図。
【発明を実施するための形態】
【0041】
(行動制御システムの構成)
図1に示されている本発明の一実施形態としての行動制御システム100は、図2に示されているエージェントとしてのロボット1に搭載されているアクチュエータ10の動作を制御することによりロボット1の行動を制御する。
【0042】
ロボット1は脚式移動ロボットであり、人間と同様に基体10と、基体10の上部に設けられた頭部11と、基体10の上部左右両側から延設された左右の腕部12と、腕部12の先端部に設けられたハンド13と、基体10の下部から下方に延設された左右の脚部14と、脚部14の先端部に取り付けられている足部15とを備えている。
【0043】
ロボット1は、再表03/090978号公報や、再表03/090979号公報に開示されているように、アクチュエータ1000から伝達される力によって、人間の肩関節、肘関節、手根関節、股関節、膝関節、足関節等の複数の関節に相当する複数の関節機構において腕部12や脚部14を屈伸運動させることができる。
【0044】
腕部12は肩関節機構を介して基体10に連結された第1腕リンクと、一端が第1腕リンクの端部に肘関節機構を介して連結され、他端が手根関節を介してハンド13の付根部に連結されている第2腕リンクとを備えている。
【0045】
脚部14は股関節機構を介して基体10に連結された第1脚リンクと、一端が第1脚リンクの端部に膝関節機構を介して連結され、他端が足関節を介して足部15に連結されている第2脚リンクとを備えている。ロボット1は、左右の脚部14のそれぞれの離床および着床の繰り返しを伴う動きによって自律的に移動することができる。
【0046】
行動制御システム100はロボット1に搭載されている電子制御ユニット(CPU,ROM,RAM,I/O回路等により構成されている。)により構成されている。行動制御システム100のうち一部がロボット1の外部コンピュータにより構成され、残りの部分が当該外部コンピュータから演算結果を無線または有線方式で受信可能なコンピュータにより構成されていてもよい。
【0047】
行動制御システム100は、第1演算処理要素110と、第2演算処理要素120と、第3演算処理要素130とを備えている。
【0048】
第1演算処理要素110は内部状態センサ群111および外部状態センサ群112のそれぞれの出力信号に基づき、オブジェクトの予測位置軌道を決定する。
【0049】
内部状態センサ群111には、ロボット1の代表点(たとえば重心)の時系列的な位置および代表部分(たとえば基体10)の時系列的な姿勢を測定するための加速度センサおよびジャイロスコープ、ならびに、各関節機構の屈曲角度等を測定するロータリーエンコーダ等が含まれている。
【0050】
外部状態センサ群112には、頭部11に搭載されているステレオカメラのほか、基体10に搭載されている赤外光を用いたアクティブ型センサまたはモーションキャプチャーシステム(図示略)等、カウンターオブジェクトの時系列的な位置を測定しうるあらゆる撮像層値またはセンサが含まれている。
【0051】
第2演算処理要素120はオブジェクトの予測位置軌道に基づき、カウンターオブジェクトとオブジェクトとの相互作用を実現するようなカウンターオブジェクトの位置軌道候補を生成する。
【0052】
第3演算処理要素130はカウンターオブジェクトの複数の位置軌道候補のうち、オブジェクトの予測位置軌道との時系列的な確率密度分布の重なり度合いが最高の一の位置軌道候補である目標位置軌道にしたがってカウンターオブジェクトが動かされるようにロボット1の行動計画を生成する。
【0053】
なお、本発明を構成する「要素」は物理的にはメモリ(ROM,RAM)、および、このメモリからプログラムを読み出して担当する演算処理を実行する演算処理装置(CPU)により構成されている。このプログラムはCDやDVD等のソフトウェア記録媒体を通じてコンピュータにインストールされてもよいが、ロボット1からサーバに要求信号が送信されたことに応じて当該サーバによってネットワークや人工衛星を介して当該コンピュータにダウンロードされてもよい。
【0054】
(行動制御システムの機能(第1実施形態))
前記構成の行動制御システム100により実行される演算処理の第1実施形態について説明する。図6(a)〜(c)に示されているように、ロボット1(エージェント)が左右一方のハンド13で持っているラケットを動かすことにより、動いているボール(オブジェクト)をこのラケット、正確にはラケットのヘッド(カウンターオブジェクト)で打ち返すというタスクを実行する場合を例として考える。ボールおよびラケットのそれぞれの「位置」は共通の座標系であれば、世界座標系またはロボット座標系など、任意の座標系において定義されていてもよい。
【0055】
まず、第1演算処理要素110により、外部状態センサ群112の出力信号により表わされるボールの時系列的な位置に基づき、世界座標系またはロボット座標系におけるボールの時系列的な位置が推定される(図3/STEP112)。ボールの位置推定方法に関しては後述する。
【0056】
続いて、第1演算処理要素110により、ボールの時系列的な推定位置x1(k)に基づき、このボールの予測位置軌道が決定される(図3/STEP114)。
【0057】
これにより、図4(a)に示されているように、将来におけるボールの時系列的な予測位置x1(t)の確率密度分布P(x1(t))(実線環参照)により表現される広がりを有する予測位置軌道が生成される。図4(a)に示されている実線上の点は、ボールの時系列的な平均予測位置μx1(t)を表わしている。ここで「t」は離散的な時刻ではなく、連続的な時刻を表わしている。予測位置軌道は、ボールの平均予測位置μx1(t)を基準として、その存在確率密度分布P(x1(t))の標準偏差または分散に応じた広がりを有する。
【0058】
ボールの平均予測位置μx1(t)は式(001)により表現される。
【0059】
μx1(t)=Σn=1..Np[PN(t)x1N(t)]/Σn=1..Np[PN(t)] ..(001)。
【0060】
ここで「x1N(t)」はx1(t)のn番目のパーティクルを表わしている。「PN(t)」はn番目のパーティクルの尤度を表わしている。「Np」はパーティクルの個数を表わしている。
【0061】
ボールの予測位置x1(t)は、現在時刻kにおけるボールの計測位置x1(k)、速度v1(k)={x1(k)−x1(k-1)}/Δtおよび加速度α1(k)={v1(k)−v1(k-1)}/Δt(Δt:演算周期)に基づき、運動方程式にしたがって算出される。ボールの予測位置x1(t)の存在確率密度分布P(x1(t))は、式(002)で表現される共分散行列Q(t)=[Q_ij]を有するように定義されている。
【0062】
Q_ij(t)=Σn=1..Np[PN(t)(x1ni(t)−μx1i(t))(x1nj(t)−μx1j(t))] /(1−Σn=1..Np[PN(t)^2]) ..(002)。
【0063】
ここで「x1ni(t)」は、x1(t)のn番目のパーティクルの第i成分(x=1, y=2, z=3)の状態量を意味する。「μx1i(t)」は重み付き平均μx1(t)の第i状態量を意味する。
【0064】
さらに、第2演算処理要素120により、ロボット1の動作によってラケットが到達可能な範囲において複数の相互作用点候補xhit_cdt_m(m=1, 2, .., M)が生成される(図3/STEP122)。
【0065】
これにより、図4(b)に示されているように、ボールの予測位置軌道に含まれる複数の点のそれぞれが相互作用点候補xhit_cdt_mとして設定される。なお、相互作用点候補xhit_cdt_mは、ボールの平均予測位置μx1(t)(ボールの予測位置の存在確率密度P(x1(t))から導かれる平均点)と一致していても異なっていてもよい。
【0066】
ラケットの到達可能範囲は、内部状態センサ群111の出力信号により表わされる各関節機構の屈曲角度、ならびに、ハンド13に対するラケットの位置および姿勢等のキネマティクスパラメータに基づき、キネマティクス演算法にしたがって推定される。ラケットの到達可能範囲の推定に際して、ロボット1の基体10および腕部12など、異なる部分が相互に干渉または接触しないことが確認される。
【0067】
ハンド13のてのひらに対して位置および姿勢が固定されているハンド座標系におけるラケットの位置はあらかじめ定められていてもよいが、内部状態センサ群111撮像装置によって撮像されたハンド13に対するラケットのグリップの握り位置および姿勢に基づいて逐次算出されてもよい。
【0068】
また、第2演算処理要素120により、相互作用点候補xhit_cdt_mを通るラケット(カウンターオブジェクト)の位置軌道候補が生成される(図3/STEP124)。
【0069】
これにより、図5(a)〜(c)のそれぞれに示されているように、相互作用点候補xhit_cdt_mが一の位置として含まれている、ラケットの時系列的な位置x2(t)(破線参照)に対応する尤度を表わす確率密度分布P(x2(t)|xhit_cdt_m)(破線環参照)により表現されるラケットの位置軌道候補が生成される。ラケットの位置軌道候補は、ラケットの平均位置または中心位置μx2(t)を基準として、その存在確率密度分布P(x2(t)|xhit_cdt_m)の標準偏差または分散に応じた広がりを有する。
【0070】
さらに、第3演算処理要素130により、ボールの予測位置軌道と、ラケットの複数の位置軌道候補のそれぞれとの重なり度合いCiが算出される(図3/STEP131)。具体的には、ボールの予測位置軌道を表現する確率密度分布P(x1(t))と、ラケットの各位置軌道候補を表現する確率密度分布P(x2(t)|xhit=xhit_cdt_m)との積の時間積分値(式(003)参照)が当該重なり度合いCiとして算出される。
【0071】
Ci=Intdt・P(x1(t))P(x2(t)|xhit=xhit_cdt_m) ..(003)。
【0072】
「Intdt」は時間積分を表わす(以下同じ)。重なり度合いCiの算出に際して、たとえば次の戦略1〜3のうち1つが採用される。これは、相互作用時点候補が特異点となって重なり度合いの算出結果の信頼性が損なわれる事態を回避するためである。
【0073】
(戦略1)
相互作用点候補xhit_cdt_mと時系列的に一致する時点を除いて重なり度合いを算出する。すなわち、式(004)にしたがって重なり度合いを算出する。
【0074】
Ci=Intdt・P(x2(t)|xhit_cdt_m)P(x1(t)),(ただしt=h_cdt_mを除く。) ..(004)。
【0075】
(戦略2)
カウンターオブジェクトの位置軌道候補が有する確率密度分布P(x2(t)|xhit=xhit_cdt_m)の標準偏差または分散に応じた広がりを当該位置軌道候補が有する確率密度分布群のそれぞれに対して加えた上で重なり度合いCiを算出する。
【0076】
(戦略3)カウンターオブジェクトの位置軌道候補が有する確率密度分布群のそれぞれの広がりを当該標準偏差または分散に応じた広がりに補正し、その上で前記重なり度合いを算出する。
【0077】
また、第3演算処理要素130により、ラケットの複数の位置軌道候補のうち重なり度合いCiが最高となる一の位置軌道候補の平均位置軌道または中心位置軌道がラケットの目標位置軌道として決定される(図3/STEP136)。
【0078】
続いて、第3演算処理要素130により、ラケットの位置軌道を目標位置軌道に一致させるようなロボット1の行動計画を生成する(図3/STEP138)。具体的には、各時点におけるラケットの目標位置P2(t)に基づき、インバースキネマティクス演算法にしたがって、ロボット1の各関節機構の角度、重心位置および基体10の姿勢等の時系列的な目標値が算出される。
【0079】
そして、行動制御システム100により、行動計画にしたがってロボット1の行動が制御される(図3/STEP140)。
【0080】
具体的には、ハンド座標系におけるラケットの位置、および、内部状態センサ群111の出力信号により表わされる各関節機構の屈曲角度等のキネマティクスパラメータに基づき、キネマティクス演算法にしたがって、ラケットの時系列的な位置等が推定される。そして、各時点におけるロボット1の各関節機構の角度、重心位置および基体10の姿勢等の推定値が目標値に一致するように、フィードバック制御則にしたがってアクチュエータ1000の動作が制御される。
【0081】
これにより、図6(a)〜(c)に順に示されているようにロボット1がバウンドしながら近寄ってくるボールを、片方のハンド13で把持しているラケットを使ってフォアハンドで前方に打ち返すタスクを実行する。
【0082】
ロボット1がラケットを動かし始める前においても後においても、タスクが実行されるまでの間、前述のオブジェクト(ボール)の位置推定以降の一連の処理が制御サイクルごとに繰り返し実行される(図3/STEP112〜140参照)。
【0083】
(行動制御システムの機能(第2実施形態))
前記構成の行動制御システム100により実行される演算処理の第2実施形態について説明する。第2実施形態でも第1実施形態と同様、ロボット1が一方のハンド13で持っているラケットでボールを打ち返すというタスクを実行する場合を例として考える。第2実施形態では、打ち返されたボールが指定位置軌道にしたがって飛んでいくようにロボット1の動作が制御される点で第1実施形態と相違する。
【0084】
次に説明する第2実施形態におけるSTEP212,214,222,224,231,238および240のそれぞれの演算処理は、第2実施形態におけるSTEP112,114,122,124,131,138および140のそれぞれの演算処理とほぼ同じ内容なので、簡略に説明される。
【0085】
まず、第1演算処理要素110により、ボールの時系列的な位置が推定され(図7/STEP212)、ボールの時系列的な推定位置x1(k)に基づき、このボールの予測位置軌道(図4(a)参照)が決定される(図7/STEP214)。
【0086】
さらに、第2演算処理要素120により、ロボット1の動作によってラケットが到達可能な範囲において複数の相互作用点候補xhit_cdt_m(m=1, 2, .., M)(図4(b)参照)が生成される(図7/STEP222)。
【0087】
また、第2演算処理要素120により、相互作用点候補xhit_cdt_mを通るラケット(カウンターオブジェクト)の位置軌道候補(図5(a)〜(c)参照)が生成される(図7/STEP224)。
【0088】
さらに、第2演算処理要素120により、相互作用点候補xhit_cdt_m以降のボールの時系列的な予測位置x1’(t)の確率密度分布により表現される相互作用後予測位置軌道が決定される(図7/STEP226)。ボールの相互作用後予測位置軌道は、ボールが予測位置軌道にしたがって変位し、ラケットが複数の位置軌道候補のそれぞれにしたがって変位したという仮定下で決定される。
【0089】
相互作用点候補xhit_cdt_mにおけるラケットに対するボールの相対速度v1(h_cdt_m)−v2(h_cdt_m)=[{xhit_cdt_m−x1(h_cdt_m−1)}−(xhit_cdt_m−x2(h_cdt_m−1))]/Δt={x2(h_cdt_m−1)}−x1(h_cdt_m−1)}/Δtが算出される。また、仮想壁面を表わす式が算出される。仮想壁面は、相互作用点候補xhit_cdt_mを含み、かつ、相互作用点候補xhit_cdt_mおけるラケットの速度ベクトルに平行な垂線を有する平面である。
【0090】
さらに、仮想壁面に対してボールが当該相対速度で衝突した場合における、ボールの跳ね返り速度(方向を含む。)が算出される。ボールおよびラケット(ヘッド)のそれぞれの弾性を考慮して、ボールの速度エネルギーが所定量だけ低減すると仮定した上で、跳ね返り速度が算出されてもよい。そして、初期位置としての相互作用点候補xhit_cdt_mと、初期速度としての跳ね返り速度とに基づき、ボールの運動方程式にしたがって、ボールの時系列的な予測位置x1’(t)が算出される。相互作用後におけるボールの予測位置x1’(t)は、相互作用のないボールの予測位置x1(t)と同様に、その存在確率密度分布P(x1’(t))は、たとえば、尤度Pi(k)を重みとするパーティクルの重み付き分散(式(002)参照)を有するように定義される。
【0091】
これにより、図8(a)〜(c)のそれぞれに示されているように、相互作用点候補xhit_cdt_mにおいてラケットにより打ち返されたボールの時系列的な予測位置x1’(t)の確率密度分布P(x1’(t)|xhit_cdt_m,vhit_cdt_m)により表現されるラケットの相互作用後予測位置軌道が決定される。なお、ラケットのヘッドの面の法線と、ラケットの位置軌道候補の接線とは平行である。ボールの相互作用後予測位置軌道は、ボールの平均予測位置μx1’(t)を基準として、その存在確率密度分布P(x1’(t)|xhit_cdt_m,vhit_cdt_m)の標準偏差または分散に応じた広がりを有する。
【0092】
さらに、第3演算処理要素130により、ボールの予測位置軌道と、ラケットの複数の位置軌道候補のそれぞれとの重なり度合いが第1重なり度合いC1mとして算出される(図7/STEP231)。具体的には、ボールの予測位置軌道を表現する確率密度分布P(x1(t))と、ラケットの各位置軌道候補を表現する確率密度分布P(x2(t)|xhit=xhit_cdt_m)との積の時間積分値(式(003)参照)が第1重なり度合いC1mとして算出される。第1重なり度合いC1mの算出に際しても、前記戦略1〜3のうち1つが採用されうる。
【0093】
C1m=Intdt・P(x1(t))P(x2(t)|xhit=xhit_cdt_m) ..(003)。
【0094】
第3演算処理要素130により、ボールの相互作用後予測位置軌道と、指定位置軌道との重なり度合いが第2重なり度合いC2mとして算出される(図7/STEP232)。ボールの指定位置軌道は、図8(a)〜(c)に示されているように、時系列的な指定位置x0(t)に対応する尤度を表わす確率密度分布P(x0(t))により表現される。ボールの指定位置軌道候補は、ボールの平均指定位置または中心指定位置μx0(t)を基準として、その存在確率密度分布P(x0(t))の標準偏差または分散に応じた広がりを有する。なお、カウンターオブジェクトと相互作用した後のオブジェクトを、目的位置まで動かすことがタスクである場合、指定位置軌道は当該目的位置における広がりが0または極小になるように定義されてもよい。
【0095】
具体的には、ボールの相互作用後予測位置軌道を表現する確率密度分布P(x1’(t)|xhit_cdt_m, vhit_cdt_m)と、指定位置軌道を表現する確率密度分布P(x0(t))との積の時間積分値(式(005)参照)が第2重なり度合いC2mとして算出される。
【0096】
C2m=Intdt・P(x1’(t)|xhit_cdt_m, vhit_cdt_m)P(x0(t)) ..(005)。
【0097】
さらに、第3演算処理要素130により、第1重なり度合いC1mと第2重なり度合いC2mとに応じて、総合重なり度合いCmが算出される(図7/STEP234)。たとえば、両者の和C1m+C2m、重み付き和λ1C1m+λ2C2m(λ1>0,λ2>0,λ1+λ2=1)または積C1m・C2mなど、第1重なり度合いC1mおよび第2重なり度合いC2mのそれぞれの増加関数が総合重なり度合いCmとして算出される。
【0098】
第3演算処理要素130により、ラケットの複数の位置軌道候補のうち、総合重なり度合いCmが最高となる一の位置軌道候補の平均位置軌道または中心位置軌道がラケットの目標位置軌道として決定される(図7/STEP236)。
【0099】
続いて、第3演算処理要素130により、ラケットの位置軌道を目標位置軌道に一致させるようなロボット1の行動計画を生成する(図7/STEP238)。
【0100】
そして、行動制御システム100により、行動計画にしたがってロボット1の行動が制御される(図7/STEP240)。
【0101】
具体的には、ハンド座標系におけるラケットの位置、および、内部状態センサ群111の出力信号により表わされる各関節機構の屈曲角度等のキネマティクスパラメータに基づき、キネマティクス演算法にしたがって、ラケットの時系列的な位置等が推定される。そして、各時点におけるロボット1の各関節機構の角度、重心位置および基体10の姿勢等の推定値が目標値に一致するように、フィードバック制御則にしたがってアクチュエータ1000の動作が制御される。
【0102】
これにより、図6(a)〜(c)に順に示されているようにロボット1がバウンドしながら近寄ってくるボールを、片方のハンド13で把持しているラケットを使ってフォアハンドで前方に打ち返すことにより、ボールを指定位置軌道にしたがって変位させるというタスクを実行する。
【0103】
ロボット1がラケットを動かし始める前においても後においても、タスクが実行されるまでの間、前述のオブジェクト(ボール)の位置推定以降の一連の処理が制御サイクルごとに繰り返し実行される(図7/STEP212〜240参照)。
【0104】
(ボールの位置推定方法)
ボールの位置推定方法について詳細に説明する(図3/STEP112、図7/STEP212参照)。
【0105】
ボールの位置推定に際してパーティクルフィルタが用いられる。パーティクルには、ボールの異なる運動状態を表わすモデルのそれぞれが割り当てられた「第1種パーティクル」および「第2種パーティクル」が含まれている。第1種パーティクルには、ボールが床などの他の物体と接触せずに運動している状態を表わす「第1モデル」が割り当てられている。第2種パーティクルには、ボールが床または壁などの他の物体に接触しながら運動している状態を表わす「第2モデル」が割り当てられている。
【0106】
推定演算処理サイクルまたは時刻を表わす指数kが0にリセットされた上で(図9/STEP001)、外部状態センサ群112としてのCCDカメラ等の撮像装置により撮像された画像に基づき、時刻kにおけるボールの位置x1(k)が計測される(図9/STEP002)。
【0107】
また、複数のパーティクルyi(k)(i=1, 2, ..)が状態空間に分散配置される(図9/STEP004)。なお、初期状態(k=0)を除き、複数のパーティクルyi(k)のうち一部は状態空間における前回位置を基準として広がる確率密度分布(正規分布またはガウス分布)に応じた範囲内の任意の今回位置に分散される。
【0108】
これにより、図10に概念的に示されているように第1種パーティクル(黒丸)および第2種パーティクル(白丸)が状態空間に配置される。また、図11に示されているように状態変数の測定値(黒点)の周辺に第1種パーティクル(上向き矢印)および第2種パーティクル(下向き矢印)が分散配置される。
【0109】
各パーティクルyi(k)は図12に示されているように流動的に値が変化するモデル変数γi(k)を有している。モデル変数γi(k)の値が「第1定義域」に属する場合はパーティクルyi(k)に「第1モデル」が固有モデルとして割り当てられる一方、モデル変数γi(k)の値が「第2定義域」に属する場合はパーティクルyi(k)に「第2モデル」が固有モデルとして割り当てられる。
【0110】
なお、一部のパーティクルには第1モデルおよび第2モデルのうち1つのモデルが固有モデルとして選択されうる一方、その他のパーティクルには第1および第3モデル(第2モデルとは異なる。)のうち1つのモデルが固有モデルとして選択されうる等、選択可能なモデルの種類がパーティクルyi(k)ごとに異なっていてもよい。
【0111】
さらに、各パーティクルyi(k)がその固有モデルにしたがって状態空間において遷移させられる(図9/STEP006)。これにより、図10に示されているように第1種パーティクル(黒丸)および第2種パーティクル(白丸)が状態空間において前回位置から遷移させられた上で今回位置に配置される。
【0112】
また、ボールの計測位置x1(k)に対する各パーティクルyi(k)の尤度Pi(k)=P(yi(k)|x1(k))が評価される(図9/STEP008)。これにより、図8においてパーティクルの径の大小により高低が表現されている尤度Pi(k)が算出される。
【0113】
そして、尤度Pi(k)を重みとする各パーティクルyi(k)の重み付き平均値ΣiPi(k)・yi(k)/Σiyi(k)がボールの位置x(k)として推定される(図9/STEP010)。
【0114】
なお、尤度Pi(k)が最高となるパーティクルyi(k)、または、尤度Pi(k)が高い所定順位以内のパーティクルyi(k)の平均値もしくは尤度Pi(k)を重みとする重み付き平均値等がボールの位置x1(k)として推定されてもよい。
【0115】
また、時刻kにおけるボールの位置x1(k)に対する各パーティクルの離散的に表現された尤度(または確率密度分布)Pi(k)に基づき、パーティクルyi(k)を生存させるかもしくは消滅させるか、または、分裂させるか否かが決定される(図9/STEP012)。これにより、尤度Pi(k)が高いパーティクルほど優先的に生存または増加する一方、尤度Pi(k)が低いパーティクルほど優先的に消滅する。
【0116】
その後、生存しているパーティクルyi(k)に割り当てられている固有モデル(今回モデル)を基礎として、新たな固有モデル(次回モデル)が決定される(図9/STEP014)。
【0117】
具体的には、各パーティクルyi(k)に固有の今回のモデル変数値γi(k)が摂動量δi(k)だけ増やされまたは減らされることにより、次回のモデル変数値γi(k+1)が決定される。次回のモデル変数値γi(k+1)が第1定義域に属している場合には「第1モデル」が次回の固有モデルとして決定される。同様に、次回のモデル変数値γi(k+1)が第2定義域に属している場合には「第2モデル」が次回の固有モデルとして決定される。なお、摂動量δi(k)は所定の許容範囲に収まるように調節されている。
【0118】
以降、ボールの位置x1(k)の推定処理が終了しているか否かが判定され(図9/STEP016)、当該推定処理が終了していないと判定された場合(図9/STEP016‥NO)、指数kが1だけ増加された上で(図9/STEP017)、ボールの位置x1(k)の計測および尤度Pi(k)の評価等の前記一連の処理が繰り返される(図9/STEP002〜S016参照)。
【0119】
以上がボールの位置の推定処理方法の詳細である。
【0120】
なお、ボールの時系列的な位置(たとえば鉛直方向位置)に応じて、第1種パーティクルが全部を占める状態(自由落下している状態)および第1種パーティクルおよび第2種パーティクルが混在している状態(床などに接触している状態)、さらには第2種パーティクルが全部を占める状態が切り替えられてもよい。
【0121】
(確率遷移モデル)
ラケットの位置軌道候補の生成基礎である確率遷移モデルの詳細について説明する。
【0122】
確率遷移モデルは、ラケットの模範位置軌道の形状特性にしたがい、ラケットの位置およびその1〜n階時間微分値が連続的に変化する状態を表わすモデルである。
【0123】
ラケットの模範位置軌道Qiの形状特性は、式(100)により表わされるアトラクタ行列R(因子)によって定義される。アトラクタ行列Rの算定方法は、たとえば「Trajectory Representation Using Sequenced Linear Dynamical Systems, K.R.Dixon and P.K.Khosla, Proceeding of the IEEE International Conference on Robotics and Automation(2004)」に記載されている。
【0124】
R=(Q^(k+1)−Q^(k))(Q^(k)−Q^(N))+,
Q^(k)≡[Q1(1)..Q1(N_1-1)..Qi(1)..Qi(N_i-1)..Qx(1)..Qx(N_x-1)],
Q^(k+1)≡[Q1(2)..Q1(N_1)..Qi(2)..Qi(N_i)..Qx(2)..Qx(N_x)],
Q^(N)≡[Q1(N_1)..Q1(N_1)..Qi(N_i)..Qi(N_i)..Qx(N_x)..Qx(N_x)] ..(100)。
【0125】
ここで「+」は擬似逆行列を表わし、「N_i」はi個目の軌道の長さを表わしている。アトラクタ行列Rにより定義されるラケットの模範位置軌道Qiの形状特性は、式(111)および(112)により表現される。
【0126】
v2(k)=Rx2(k)−Ru(k)+N(μv, Σv) ..(111)。
【0127】
u(k+1)=u(k)+ε(k)+N(μu, Σu) ..(112)。
【0128】
式(111)はアトラクタの時刻kにおける引き込み点u(k)を基準とするラケットの位置x2(k)の偏差の大小と、アトラクタ行列Rとに応じて時刻kにおけるラケットの速度v2(k)の高低が定まることと、ラケットの速度v2(k)が確率密度分布(一般的にはガウス分布)N(μv2, Σv2)(μv2=0, Σv2:共分散行列)で表わされる揺らぎまたは不確定要素を有する連続確率変数であることとを表わしている。すなわち、アトラクタ行列Rにより、時刻kにおけるラケットの変位速度v2(k)の高低および揺らぎの程度が定義される。
【0129】
式(112)はアトラクタの引き込み点u(k)が変位量ε(k)だけ変位することが許容されていることと、引き込み点u(k)が確率密度分布N(μu, Σu)(μu=0, Σu:共分散行列)で表わされる不確定要素を有する連続確率変数であることとを表わしている。なお、式(112)において右辺第2項が省略されてもよい。
【0130】
確率遷移モデルは、式(121)〜(123)により定義される。
【0131】
x2(k+1)=x2(k)+v2(k+1)+N(μx2, Σx2) ..(121)。
【0132】
v2(k+1)=v2(k)+α2(k+1)+N(μv2, Σv2) ..(122)。
【0133】
α2(k+1)=α2(k)+β2(k+1)+N(μα2, Σα2) ..(123)。
【0134】
式(121)はラケットの位置x2(k)が滑らかに変化するという確率遷移モデルの性質を表わし、かつ、当該位置x2(k)が確率密度分布N(μx2, Σx2)(μx2=0, Σx2:共分散行列)で表わされる不確定要素を有する連続確率変数であることを表わしている。
【0135】
式(122)はラケットの変位速度(位置の1階時間微分値)v2(k)が滑らかに変化するという確率遷移モデルの性質を表わし、かつ、当該変位速度v2(k)が確率密度分布N(μv2, Σv2)(μv2=0, Σv2:共分散行列)で表わされる不確定要素を有する連続確率変数であることを表わしている。
【0136】
式(123)はラケットの変位加速度(位置の2階時間微分値)α2(k)が滑らかに変化するという確率遷移モデルの性質を表わし、かつ、当該変位加速度α2(k)が確率密度分布N(μα2, Σα2)(μα2=0, Σα2:共分散行列)で表わされる不確定要素を有する連続確率変数であることを表わしている。ここで、β2(k)はラケットの位置の加加速度(位置の3階時間微分値(=d3x2/dt3))である。式(123)において右辺第2項が省略されてもよい。
【0137】
なお、ラケットの位置x2ならびにその変位速度(1階時間微分値)v2および加速度(2階時間微分値)α2が連続的に変化するようなロボット1の動作を表わす確率遷移モデルに代えて、ラケットの位置x2およびその変位速度v2、または、変位加速度α2および変位加加速度β2が連続的に変化する等、ラケットの位置x2および一または複数のn階時間微分値が連続的に変化するようなロボット1の動作を表わす確率遷移モデルが採用されてもよい。
【0138】
確率遷移モデルは、図13に示されているダイナミクスベイジアンネットワーク(DBN)により表現される。DBNによれば関係式(111) (112) (121)〜(123)が、各時点tにおけるラケットの位置x2およびアトラクタの引き込み点u等の状態変数を表わすノード(円)および条件確率によりこれらをつなぐ矢印により表現されている。また、関係式(111) (112) (121)〜(123)のそれぞれに対応する条件付確率は関係式(211) (212) (221)〜(223)のそれぞれにより表現される。
【0139】
P(0|v2(k), x2(k), u(k))=N(v2(k)−Rx2(k)+Ru(k), 0)=N(0, 0) ..(211)。
【0140】
P(u(k+1)|u(k), ε(k))=N(u(k)+ε(k), Σu) ..(212)。
【0141】
P(x2(k+1)|x2(k), v2(k+1))=N(x2(k)+v2(k+1), Σx2) ..(221)。
【0142】
P(v2(k+1)|v2(k), α2(k))=N(v2(k)+α2(k+1), Σv2) ..(222)。
【0143】
P(α2(k+1)|α2(k), β2(k))=N(α2(k)+β2(k+1), Σa2) ..(223)。
【0144】
式(212)における状態変数ノードεは式(312)により表現される。式(123)における状態変数ノードβは式(323)により表現される。
【0145】
P(ε(k))=N(0, Σε) ..(312)。
【0146】
P(β(k))=N(0, Σβ) ..(323)。
【0147】
(カウンターオブジェクトの位置軌道候補の生成方法)
ラケット(カウンターオブジェクト)の位置軌道候補の生成処理の詳細について説明する(図3/STEP124、図7/STEP224参照)。
【0148】
ラケットの位置軌道候補は、前述の確率遷移モデルにしたがって、ラケットの順方向推定位置軌道および逆方向推定位置軌道が生成された上で、当該軌道の確率密度分布が合成されることにより生成される。
【0149】
まず、DBNにおいて、第1基準時点(ロボット1がラケットを動かし始める時点)t=t1および第2基準時点t=t2(=t1+NΔt)(ロボット1がラケットの振り抜き終わった時点)のそれぞれにおけるラケットの位置x2、速度v2、加速度α2および加加速度β2が設定される。
【0150】
たとえば、図6(a)に示されているようにロボット1がラケットを動かし始める第1基準時点t=t1におけるラケットの位置x2(0)が、各関節機構の角度等に基づき、キネマティクス演算法にしたがって設定される。第1基準時点t=t1におけるラケットの位置P(0)の変位速度v2(0)、加速度α2(0)および加加速度β2(0)はすべて「0」に設定される。
【0151】
さらに、図6(c)に示されているようにロボット1がラケットを振り抜き終わったときのラケットの目標位置が、第2基準時点t=t2におけるラケットの位置P(N)として設定される。第2基準時点t=t2におけるラケットの位置P(N)は第1基準時点t=t1におけるアトラクタの引き込み点u(0)の近傍範囲内に設定されてもよい。第2基準時点t=t2におけるラケットの速度v2(N)、加速度α2(N)および加加速度β2(N)はすべて「0」に設定される。
【0152】
また、第1基準時点t=t1から第2基準時点t=t2までのノードが、関係式(111) (112) (121)〜(123)により表現される確率遷移モデルにしたがって、時系列的に順方向(先時点から後時点に向かう方向)に順次推定される。
【0153】
たとえば、図14(a)に示されているように、(001)第1基準時点t=t1(ラケットの運動開始時点)から第nの相互作用時点候補t=thit_cdt_m=t1+h_cdt_mΔtの直前時点t=t1+(h_cdt_m-1)Δtまで、ラケットの位置x2+(0)(=x2(t1)), x2+(1), x2+(2), .., x2+(h_cdt_m-1)が時系列順方向(白矢印参照)に順次推定される。
【0154】
また、同じく図14(a)に示されているように、(002)相互作用時点候補t=thit_cdt_mから第2基準時点t=t2=t1+NΔt(ラケットの振り抜き終了時点)まで、ラケットの位置x+(h_cdt_m)(=x2(h_cdt_m)), x2+(h_cdt_m+1), x2+(h_cdt_m+2), .., x2+(N)が時系列順方向(白矢印参照)に順次推定される。
【0155】
これにより、ラケットの推定位置x2+(0), x2+(1), .., x2+(h_cdt_m-1), x2+(h_cdt_m), x2+(h_cdt_m+1), .., x2+(N)の確率密度分布P(x2(t)|x2(t1), xhit_cdt_m)により表現されている順方向推定位置軌道が生成される。
【0156】
同様に第2基準時点t=t2から第1基準時点t=t1までのノードが、確率遷移モデルにしたがって、時系列的に逆方向(後時点から先時点に向かう方向)に順次推定される。
【0157】
たとえば、図14(a)に示されているように、(003)第2基準時点t=t2から相互作用時点候補t=thit_cdt_mの直後時点t=thit_cdt_m+Δt=t1+(h_cdt_m+1)Δtまで、ラケットの位置x2-(N)(=x2(t2)), x2-(N-1), x2-(N-2), .., x2(h_cdt_mΔt+1)が時系列逆方向(黒矢印参照)に順次推定される。
【0158】
さらに、同じく図14(a)に示されているように、(004)相互作用時点候補t=thit_cdtから第1基準時点t=t1まで、ラケットの位置x2-(h_cdt_m)(=xhit_cdt_m), x2-(h_cdt_m-1), x2-(h_cdt_m-2), .., x2-(0)が時系列逆方向(黒矢印参照)に順次推定される。
【0159】
これにより、ラケットの推定位置x2-(N), x2-(N-1), .., x2-(h_cdt_m+1), x2-(h_cdt_m),x2-(h_cdt_m-1), .., x2-(0)の確率密度分布P(x2(t)|x2(t2), xhit_cdt_m)により表現されている逆方向推定位置軌道が生成される。
【0160】
なお、DBNにおけるノードの推定方法としては前記方法(Belief Propagationと呼ばれている手法)のほか、Loopy Belief Propagation, variable elimination, Junction Tree, Impartance sampling, Hugin Algorithm, Shafer-Shanoy Algorithm, variational message passing, gibbs sampling等の方法が採用されてもよい。
【0161】
そして、図14(b)に示されているように、(005)順方向推定位置軌道を表現する確率密度分布P(x2(t)|x2(t1), xhit_cdt_m)および逆方向推定位置軌道を表現する確率密度分布P(x2(t)|x2(t2), xhit_cdt_m)が合成されることにより、当該合成確率密度分布P(x2(t)|xhit_cdt_m)により表現されるラケットの位置軌道候補が生成される。
【0162】
相互作用点候補xhit_cdt_mにおいて、ラケットの位置軌道候補の確率密度分布は、他の時点における確率分布よりも標準偏差または分散が小さく(たとえば0に)設定されている。これは、ラケットの位置軌道候補が相互作用点候補xhit_cdt_mを通過するように設定される必要があるためである。たとえば、相互作用点候補xhit_cdt_mにおいて確率密度関数はδ関数のような特性を示す。
【0163】
このため、重なり度合いCi(または第1重なり度合いC1m)の算出に際して(図3/STEP131、図7/STEP231参照)、相互作用点候補xhit_cdt_mが特異点となって重なり度合いCiの信頼度が低下する可能性があるが、前述のように前記戦略が採用されることによりこのような事態が回避される。
【0164】
1つの相互作用点候補xhit_cdt_mについて、当該相互作用点候補xhit_cdt_mから時系列的に順方向に複数の異なる方向に向かうラケットの位置軌道候補が生成される。複数の異なる方向としては、たとえば、ロボット1から見てボールが飛んできた方向を方位角θ=0[rad]かつ仰角φ=0[rad]として表わすと、(θ, φ)=(0, 0), (0, −π/4), (0, π/4), (−π/4, 0), (π/4, 0), (−π/4, −π/4), (π/4, −π/4), (−π/4, π/4)および(π/4,−π/4)のそれぞれにより表わされる9つの方向が採用される。なお、複数の方向は任意に変更されてもよく、1つの相互作用点候補xhit_cdt_mについて、1つのラケットの位置軌道候補のみが生成されてもよい。
【0165】
なお、ラケットの順方向推定位置軌道および逆方向推定位置軌道がすべての時点において合成されるのではなく、たとえば、第1期間t=0〜kにおける順方向推定位置軌道の一部である第1位置軌道と、第1期間に続く第2期間t=k+1〜Nにおける逆方向推定位置軌道の一部である第2位置軌道とが空間的に円滑に連続するように接続されることにより、ラケットの位置軌道候補が生成されてもよい。
【0166】
また、第1期間t=0〜kにおける順方向推定位置軌道の一部である第1位置軌道と、第1期間よりも後の第2期間t=k+c(c>1)〜Nにおける逆方向推定位置軌道の一部である第2位置軌道とを円滑に接続するように中間期間t=k+1〜k+c-1においてラケットの中間位置軌道が生成され、第1位置軌道、中間位置軌道および第2位置軌道が順に接続されることにより、ラケットの位置軌道候補が生成されてもよい。
【0167】
(カウンターオブジェクトの模範位置軌道の学習方法)
カウンターオブジェクトの模範位置軌道Qiはあらかじめ定められていてもよいが、次に説明するようにインストラクタの動作観測によって定められてもよい。
【0168】
ここでは、図15(a)〜(c)に順に示されているようにインストラクタとしての人間が、動いているボールを、片手で持っているラケットを使ってフォアハンドで打ち返すというタスクを実行する際の動作が観測される。図15(a)は、インストラクタがラケットを動かし始める直前の状態を示している。図15(b)は、インストラクタがラケットをボールに当てた状態を示している。図15(c)は、インストラクタがラケットを振り抜き終わった状態を示している。
【0169】
まず、インストラクタがこのタスクを繰り返すたび、カウンターオブジェクトとしてのラケットの時系列的な位置が測定される。これにより、ラケット位置の模範位置軌道Qi=[Qi(0), .., Qi(k), .., Qi(N)](i=1, 2, .., I)が認識される。「Qi(k)」は、第iの模範位置軌道Qiにおける時点kにおけるラケットの位置を意味する。
【0170】
ラケットにボールを当てるというタスクの性質のため、インストラクタがラケットにボールを当てた時点(図15(b)参照)におけるラケットの位置およびボールの位置が測定されてもよい。この測定結果は、相互作用点候補xhit_cdt_mの設定に際して利用されうる(図3/STEP124、図7/STEP224、図4(b)参照)。モーションキャプチャーシステムを構成するカメラを通じて得られる画像解析によって測定されるボールの速度変化が閾値を超えた時点が、ラケットによりボールが打ち返された時点として認識される。ラケットにボールが当たったときに生じる音がマイクロホン(図示略)により検出された時点が、ラケットにボールが当たった時点として認識されてもよい。
【0171】
インストラクタにより動かされるラケットの位置は、光学式モーションキャプチャーシステムにより測定される。光学式モーションキャプチャーシステムによれば、インストラクタの周囲に配置された一または複数のカメラ(トラッカー)による、観測対象箇所に付されたマークの検出結果に基づいてラケットの位置が測定される。
【0172】
なお、機械式、磁気式または慣性式モーションキャプチャーシステムによりラケットの位置が測定されてもよい。
【0173】
機械式モーションキャプチャーシステムによれば、インストラクタに装着されたサポータまたはスーツに取り付けられた複数のポテンショメータからの当該インストラクタの各関節角度を表す出力信号に基づき、インストラクタのキネマティクス演算法にしたがってラケットの位置が測定される。
【0174】
磁気式モーションキャプチャーシステムによれば、インストラクタに装着されたサポータまたはスーツに取り付けられた複数の磁気センサからの出力信号に基づき、インストラクタのキネマティクス演算法にしたがってラケットの位置が測定される。
【0175】
慣性式モーションキャプチャーシステムによれば、インストラクタに装着されたサポータまたはスーツに取り付けられた複数の慣性モーメントセンサからの腕等の慣性モーメントを表す出力信号に基づき、インストラクタのキネマティクス演算法にしたがってラケットの位置が測定される。
【0176】
インストラクタにより動かされるラケットの動作スケールに対する、ロボット1により動かされるラケットの動作スケールの比率が、インストラクタにより動かされるラケットの模範位置軌道に乗じられることにより補正された結果が、ロボット1にとってのラケットの模範位置軌道として採用されてもよい。
【0177】
たとえば、また、インストラクタの腕の長さとインストラクタが用いるラケットの長さとの和に対する、ロボット1の腕部12の長さとロボット1が用いるラケットの長さとの和の比率がアトラクタ行列Rに乗じられることにより、インストラクタにより動かされるラケット位置を含む第1状態変数の模範位置軌道のスケールに対する、ロボット1(エージェント)により動かされるラケット位置を含むラケットのスケールの比率が調節されてもよい。
【0178】
(行動制御システムの作用効果)
第1実施形態の行動制御システム100によれば、オブジェクト(ボール)の予測位置軌道と、カウンターオブジェクト(ラケット)の位置軌道候補との時系列的な確率密度分布の重なり度合いCiが算出される(図3/STEP131,図5(a)〜(c)参照)。さらに、カウンターオブジェクトの複数の位置軌道候補のうち、オブジェクトの予測位置軌道との重なり度合いCiが最高となる一の位置軌道候補である目標位置軌道にしたがってカウンターオブジェクトが動かされるようにエージェント(ロボット1)の行動計画が生成される(図3/STEP136,138参照)。重なり度合いCiの高低は、カウンターオブジェクトとオブジェクトとが相互作用する確率の高低を表わしている。
【0179】
このため、前記のように決定された行動計画にしたがってエージェントの行動が制御されることにより、カウンターオブジェクトを動かしてオブジェクトと相互作用させるという「タスク」をエージェントに確実に実行させることができる(図6(a)〜(c)参照)。
【0180】
第2実施形態の行動制御システム100によれば、オブジェクト(ボール)の予測位置軌道と、カウンターオブジェクト(ラケット)の位置軌道候補との時系列的な確率密度分布の重なり度合いが第1重なり度合いC1mとして算出される(図7/STEP231,図5(a)〜(c)参照)。また、オブジェクトの相互作用後予測位置軌道と、指定位置軌道との時系列的な確率密度分布の重なり度合いが第2重なり度合いC2mとして算出される(図7/STEP232,図8(a)〜(c)参照)。さらに、第1重なり度合いC1mおよび第2重なり度合いC2mに応じた総合重なり度合いCmが算出される(図7/STEP234参照)。
【0181】
そして、複数の位置軌道候補のうち、総合重なり度合いCmが最高となる一の位置軌道候補がカウンターオブジェクトの目標位置軌道として決定され、カウンターオブジェクトがこの目標位置軌道に動かされるようにエージェント(ロボット1)の行動計画が生成される(図7/STEP236,238参照)。
【0182】
第1重なり度合いC1mの高低は、カウンターオブジェクトとオブジェクトとが相互作用点候補xhit_cdt_mにおいて相互作用する確率の高低を表わしている。第2重なり度合いC2mの高低は、オブジェクトがカウンターオブジェクトと相互作用点候補xhit_cdt_mにおいて相互作用した後で指定位置軌道にしたがって変位する確率の高低を表わしている。したがって、これら2つの重なり度合いに応じた総合重なり度合いの高低は、カウンターオブジェクトとオブジェクトとを相互作用させるとともに、オブジェクトがカウンターオブジェクトと相互作用した後で指定位置軌道にしたがって変位する確率の高低を表わしている。
【0183】
このため、前記のように生成された行動計画にしたがってエージェントの行動が制御されることにより、カウンターオブジェクトを動かしてオブジェクトと相互作用させることにより、オブジェクトを指定位置軌道にしたがって変位させるという「タスク」をエージェントに確実に実行させることができる(図6(a)〜(c)参照)。
【0184】
さらに、カウンターオブジェクトの位置には当該確率密度分布の広がりに応じた変動または揺らぎが許容されるため、エージェントにもタスクを実行するという目的が達成される範囲で動作態様の変動が許容されうる。具体的には、エージェントにタスクを実行させる観点から必要性が高い相互作用時点(相互作用点候補xhit_cdt_m)においては、エージェントに動作態様の変動を禁止または制限することにより、エージェントによるタスクの実行の確実を図ることができる。その一方、エージェントにタスクを実行させる観点から必要性が低い時点においては、エージェントに比較的広い幅で動作態様の変動を許容することにより、エージェントにその構造上無理なまたは非効率的な動作を強いる事態が回避されうる。
【0185】
また、カウンターオブジェクトの位置軌道候補の生成基礎であるDBN(図13参照)により表わされる確率遷移モデルは、インストラクタがカウンターオブジェクトを動かしてオブジェクトと相互作用させる際の当該インストラクタの行動の特徴など、カウンターオブジェクトの模範位置軌道の形状特性を表わす因子にしたがっている。また、この確率遷移モデルは、カウンターオブジェクトの位置およびその1〜n階時間微分値(n=1, 2, ..)が連続的に変化するようなエージェントの動作を表わしている。
【0186】
このため、当該確率遷移モデルにしたがって生成されたカウンターオブジェクトの位置軌道候補に、状態変数の模範位置軌道の形状特性、および、空間的かつ時間的な連続性を持たせることができる。したがって、位置軌道候補のうち1つにしたがってエージェントの行動が制御されることにより、エージェントに模範的な動作特性を模倣または再現させながら、円滑な動作によりカウンターオブジェクトをオブジェクトと相互作用させることができる。
【0187】
比較例としてDBN(図13参照)において加速度α2および加加速度β2のノードが省略された上で位置軌道候補が生成された場合を考える。当該比較例によれば、図16(a)および(b)左側に示されているようにラケットの位置x2の変位速度v2および加速度α2が一時的に不連続となるような位置軌道候補が生成される。このため、ロボット1がこの位置軌道候補にしたがって腕部12等を動かした場合、腕部12および脚部14の動きの速度が急に変化する等、円滑さに欠けた動作を示すことになる。
【0188】
これに対して、本発明の行動制御システムによれば、図16(a)および(b)右側に示されているようにラケット位置x2の変位速度v2および加速度α2が連続となるような位置軌道候補が生成される。したがって、ロボット1がこの位置軌道候補にしたがって腕部12および脚部14等を円滑に動かしてタスクを実行することができることがわかる。
【0189】
(本発明の他の実施形態)
カウンターオブジェクトの複数の位置軌道候補のうち、オブジェクトの予測位置軌道との重なり度合いCi(第1実施形態)または総合重なり度合いCm(第2実施形態)が「最低」となる一の位置軌道候補がカウンターオブジェクトの目標位置軌道として選択されてもよい(図3/STEP136、図7/STEP236参照)。この場合もカウンターオブジェクトがこの目標位置軌道にしたがって動かされるようにエージェント(ロボット1)の行動計画が生成される(図3/STEP138、図7/STEP238参照)。
【0190】
これにより、カウンターオブジェクトの動きを調節することにより、カウンターオブジェクトとオブジェクトとの接触を回避するようにロボット1の動作が制御される。また、オブジェクトが指定位置軌道にしたがって変位するように、あえてカウンターオブジェクトをオブジェクトに接触させないようにロボット1の動作が制御されうる。
【0191】
第1実施形態または第2実施形態と、当該実施変形例との組み合わせにより、一のカウンターオブジェクトを、複数のオブジェクトのうち一部のオブジェクトと相互作用させる一方、他のオブジェクトとの相互作用を回避させるようにロボット1の動作が制御されうる。たとえば、前から2つのボールが飛んできたとき、ラケットが一方のボールに接触することを回避しながら、このラケットで他方のボールを打ち返すというタスクをロボット1に実行させることができる。
【0192】
そのほか、カウンターオブジェクトの複数の位置軌道候補のうち、オブジェクトの予測位置軌道との重なり度合いCiまたは総合重なり度合いCmが上位または下位にある所定数の位置軌道候補から一の位置軌道候補がカウンターオブジェクトの目標位置軌道として選択されてもよい。また、カウンターオブジェクトの複数の位置軌道候補のうち、オブジェクトの予測位置軌道との重なり度合いCiまたは総合重なり度合いCmが第1基準値以上または当該第1基準値よりも低い第2基準値以下である位置軌道候補から一の位置軌道候補がカウンターオブジェクトの目標位置軌道として選択されてもよい。
【0193】
これにより、カウンターオブジェクトの動きを調節することにより、カウンターオブジェクトとオブジェクトとの相互作用または離間の程度が調節されるようにロボット1の動作が制御される。たとえば、カウンターオブジェクトおよびオブジェクトを「当てる」等、強く相互作用させるのみならず、「かする」等、弱く相互作用させることができる。また、カウンターオブジェクトおよびオブジェクトを大きく離間させるのみならず、(カウンターオブジェクトの風圧がオブジェクトに作用する程度に)小さく離間させることができる。
【0194】
ラケット(カウンターオブジェクト)で動いているボール(オブジェクト)を打ち返すというタスクのほか、ロボット1(エージェント)の動作に伴って動かされるカウンターオブジェクトを動いているオブジェクトと相互作用させるさまざまなタスクが実行されるように、ロボット1の行動が制御されてもよい。
【0195】
たとえば、ロボット1がカウンターオブジェクトとしてのハンド13で落下している物体をつかむ、ロボット1がハンド13でよろめいている人間の身体を支える、または、ロボット1がカウンターオブジェクトとしての脚部14で動いているボールを蹴るなどのタスクを実行するように構成されていてもよい。
【0196】
相互作用時点候補よりも時系列的に前および後のそれぞれにおいて性質が異なる第1アトラクタR1(第1因子)および第2アトラクタR2(第2因子)のそれぞれにより第1モデルさらには確率遷移モデルが定義されてもよい。
【0197】
第1アトラクタR1は「ラケットを強く振ってボールに当てる」という動作の性質を表わすように定義され、第2アトラクタR2は「ラケットを軽く振る」という動作の性質を表わすように定義されてもよい。これにより、ラケットを動かしてオブジェクトと相互作用させるというタスクが実行される前後において、性質が異なる行動計画が生成されうる。具体的には、エージェントにタスクを実行させた後、タスク実行前の制限から解放された態様で行動させることができる。
【0198】
運動状態変数の模範位置軌道には、カウンターオブジェクトの模範位置軌道のみならず、手の位置、ひじの位置もしくは曲げ具合、または、肩の位置など、その他の運動状態変数の模範位置軌道も含まれていてもよい。手の位置等の模範位置軌道は、インストラクタの手等の動きをモーションキャプチャーシステムにより観測されることにより認識されうる(図15(a)〜(c)参照)。
【0199】
この場合、カウンターオブジェクトの位置に加えて、カウンターオブジェクトの速度および加速度、ならびに、カウンターオブジェクトの動きに関係するエージェントの指定箇所の位置、その変位速度および変位加速度のうち一部または全部がエージェントの「運動状態変数」の位置軌道候補が生成され、当該位置軌道候補のうちオブジェクトの予測位置軌道との重なり度合いが最高の一の位置軌道候補の一部が、カウンターオブジェクトの目標位置軌道として決定される。
【0200】
これにより、カウンターオブジェクトの位置の変化態様のみならず、ロボット1(エージェント)のハンド13の位置、肘関節機構の位置および屈曲角度ならびに肩関節機構の位置などの運動状態変数を、インストラクタによる模範的な動き(図15(a)〜(c)参照)にしたがった態様で変化させながら、ロボット1にタスクを実行させることができる。
【符号の説明】
【0201】
1‥ロボット(エージェント)、100‥行動制御システム、110‥第1演算処理要素、120‥第2演算処理要素、130‥第3演算処理要素、1000‥アクチュエータ。
【技術分野】
【0001】
本発明は、エージェントの行動態様を制御するためのシステム等に関する。
【背景技術】
【0002】
基準となる状態変数の軌道に基づいて実際の状況に適したエージェントの状態変数の軌道を生成するための手法として、多項式、ベジエまたはアトラクタ等が利用されている。
【0003】
たとえば、力学系の状態空間においてアトラクタを設計し、エージェントとしてのヒューマノイドロボットの軌道がこのアトラクタに引き込まれることでロボットの安定な自律的運動が実現されることが報告されている(非特許文献1参照)。
【0004】
また、ロボットの動作列に対応する「あげる」「近づける」などの異なる動作プリミティブのそれぞれを表わす複数の確率モデルを結合した上で、当該結合確率モデルにおいて「ペン」などのトラジェクタの最尤軌道を探索する手法が提案されている(特許文献1参照)。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2009−066692号公報
【非特許文献】
【0006】
【非特許文献1】岡田昌史 大里健太 中村仁彦「非線形力学系のアトラクタ設計によるヒューマノイドロボットの運動創発」計測自動学会論文集 vol.41,No.6,533/540(2005)
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかし、エージェントが動いているオブジェクト(トラジェクタ)に対する力の作用またはオブジェクトとの接触の回避等を目的とする場合、当該相互作用点の位置は不定であるため、当該行動目的の達成が困難である。
【0008】
そこで、本発明は、動いているオブジェクトに対してエージェントが目標とする相互作用形態を伴って行動するように、このエージェントの行動を制御することができるシステム等を提供することを解決課題とする。
【課題を解決するための手段】
【0009】
前記課題を解決するための本発明の行動制御システムは、行動計画にしたがってエージェントの行動を制御するシステムであって、オブジェクトの時系列的な計測位置または推定位置に基づき、将来における前記オブジェクトの時系列的な予測位置の確率密度分布により表現されている前記オブジェクトの予測位置軌道を決定するように構成されている第1演算処理要素と、前記エージェントの動作によってカウンターオブジェクトが到達可能な範囲において、前記オブジェクトの予測位置軌道に含まれる相互作用点候補と空間的かつ時系列的に一致する位置を含む、前記カウンターオブジェクトの時系列的な位置に対応する尤度を表現する確率密度分布により表現されている前記カウンターオブジェクトの位置軌道候補として生成するように構成されている第2演算処理要素と、前記カウンターオブジェクトの複数の位置軌道候補から、前記オブジェクトの予測位置軌道との時系列的な確率密度分布の重なり度合いに応じて選択される一の位置軌道候補の平均位置軌道または中心位置軌道である前記カウンターオブジェクトの目標位置軌道に、前記カウンターオブジェクトの位置軌道を一致させるように前記行動計画を生成するように構成されている第3演算処理要素とを備えていることを特徴とする(第1発明)。
【0010】
本発明の行動制御システムによれば、オブジェクトの時系列的な計測位置または推定位置に基づき、オブジェクトの将来における時系列的な予測位置の存在確率密度分布(または尤度)により表現されているオブジェクトの「予測位置軌道」が決定される。確率密度分布は標準偏差または分散(共分散行列)によりその空間的な広がりが定義される。
【0011】
また、エージェントの動作によってカウンターオブジェクトが到達可能な範囲において、オブジェクトの予測位置軌道に含まれる「相互作用点候補」と空間的かつ時系列的に一致する位置が含まれる、カウンターオブジェクトの時系列的な位置に対応する尤度を表現する確率密度分布により表現されているカウンターオブジェクトの「位置軌道候補」が生成される。
【0012】
ここで「尤度」とは、エージェントが模範とすべきインストラクタらしさ、ある位置でオブジェクトに相互作用させるためのカウンターオブジェクトの動かし方の適当度、および、カウンターオブジェクトとの相互作用後におけるオブジェクトの運動の適合度という概念を含む。
【0013】
「カウンターオブジェクト」とは、エージェントの動きに伴って動かされる、エージェントとは別個独立の道具または器具等の物体のほか、エージェントの身体の一部をも含む概念である。カウンターオブジェクトには、エージェントに定常的に接触している物体、エージェントに一時的に接触する物体、および、エージェントから定常的に離反している物体(たとえば遠隔制御される車両)も含まれる。なお、一の相互作用点候補に対して一の位置軌道候補が生成されるほか、一の相互作用点候補に対して異なる複数の位置軌道候補が生成されてもよい。
【0014】
さらに、カウンターオブジェクトの複数の位置軌道候補から、オブジェクトの予測位置軌道との時系列的な確率密度分布の「重なり度合い」に応じて選択される一の位置軌道候補である「目標位置軌道」にしたがってカウンターオブジェクトが動かされるようにエージェントの行動計画が生成される。
【0015】
軌道間の時系列的な確率密度分布の重なり度合いの高低は、カウンターオブジェクトとオブジェクトとが相互作用する確率の高低を表わしている。このため、前記のように生成された行動計画にしたがってエージェントの行動が制御されることにより、オブジェクトに対する相互作用形態が目標形態に一致するようにカウンターオブジェクトを動かすという「タスク」をエージェントに確実に実行させることができる。さらに、カウンターオブジェクトの位置には当該確率密度分布の広がりに応じた変動または揺らぎが許容されるため、エージェントにもタスクを実行するという目的が達成される範囲で動作態様の変動が許容されうる。
【0016】
第1発明の行動制御システムにおいて、前記第3演算処理要素が、前記カウンターオブジェクトの複数の位置軌道候補から、前記オブジェクトの予測位置軌道との時系列的な確率密度分布の重なり度合いが最高または最低となるような前記一の位置軌道候補を選択するように構成されていてもよい(第2発明)。
【0017】
当該構成の行動制御システムによれば、前記のように生成された行動計画にしたがってエージェントの行動が制御されることにより、カウンターオブジェクトを動かしてオブジェクトと相互作用させる、あるいは、オブジェクトとの相互作用または接触を回避しながらカウンターオブジェクトを動かすという「タスク」をエージェントに確実に実行させることができる。
【0018】
第1または第2発明の行動制御システムにおいて、前記第2演算処理要素が、前記オブジェクトの予測位置軌道と、前記カウンターオブジェクトの複数の位置軌道候補のそれぞれとにしたがって、前記カウンターオブジェクトと前記オブジェクトとが前記相互作用点候補において相互作用したと仮定した場合における、前記オブジェクトの時系列的な予測位置の確率密度分布により表現されている前記オブジェクトの相互作用後予測位置軌道をさらに決定するように構成され、前記第3演算処理要素が、前記カウンターオブジェクトの複数の位置軌道候補から、前記オブジェクトの予測位置軌道との時系列的な確率密度分布の重なり度合いに加えて、前記オブジェクトの相互作用後予測位置軌道と指定位置軌道との時系列的な確率密度分布の重なり度合いに応じて前記一の位置軌道候補を選択するように構成されていてもよい(第3発明)。
【0019】
当該構成の行動制御システムによれば、オブジェクトの予測位置軌道と、カウンターオブジェクトの複数の位置軌道候補のそれぞれとにしたがって、カウンターオブジェクトとオブジェクトとが相互作用点候補において相互作用したと仮定した場合における、オブジェクトの時系列的な予測位置の確率密度分布により表現されているオブジェクトの「相互作用後予測位置軌道」が決定される。
【0020】
また、カウンターオブジェクトの複数の位置軌道候補から、オブジェクトの予測位置軌道との時系列的な確率密度分布の「重なり度合い」と、オブジェクトの相互作用後予測位置軌道と指定位置軌道との時系列的な確率密度分布の「重なり度合い」とに応じた「総合重なり度合い」に応じて一の位置軌道候補が選択され、この選択位置軌道である「目標位置軌道」にしたがってカウンターオブジェクトが動かされるようにエージェントの行動計画が生成される。「指定位置軌道」も時系列的な指定位置に対応する尤度を表現する確率密度分布により表現されている。
【0021】
オブジェクトの予測位置軌道との時系列的な確率密度分布の重なり度合いの高低は、前記のようにカウンターオブジェクトとオブジェクトとが相互作用する確率の高低を表わしている。また、オブジェクトの相互作用後予測位置軌道と指定位置軌道との時系列的な確率密度分布の重なり度合いの高低は、オブジェクトがカウンターオブジェクトと相互作用した後で指定位置軌道にしたがって変位する確率の高低を表わしている。したがって、これら2つの重なり度合いに応じた総合重なり度合いの高低は、カウンターオブジェクトとオブジェクトとを相互作用させるとともに、オブジェクトがカウンターオブジェクトと相互作用した後で指定位置軌道にしたがって変位する確率の高低を表わしている。
【0022】
このため、前記のように生成された行動計画にしたがってエージェントの行動が制御されることにより、オブジェクトに対する相互作用形態が目標形態に一致するようにカウンターオブジェクトを動かし、その結果としてオブジェクトを指定位置軌道と所望の関係を有する位置軌道にしたがって変位させるという「タスク」をエージェントに確実に実行させることができる。さらに、カウンターオブジェクトの位置には当該確率密度分布の広がりに応じた変動または揺らぎが許容されるため、エージェントにもタスクを実行するという目的が達成される範囲で動作態様の変動が許容されうる。
【0023】
第3発明の行動制御システムにおいて、前記第3演算処理要素が、前記カウンターオブジェクトの複数の位置軌道候補から、前記オブジェクトの予測位置軌道との時系列的な確率密度分布の重なり度合いと、前記オブジェクトの相互作用後予測位置軌道と前記指定位置軌道との時系列的な確率密度分布の重なり度合いとに応じた総合重なり度合いが最高または最低となるような前記一の位置軌道候補を選択するように構成されていてもよい(第4発明)。
【0024】
当該構成の行動制御システムによれば、前記のように生成された行動計画にしたがってエージェントの行動が制御されることにより、カウンターオブジェクトを動かしてオブジェクトと相互作用させる、あるいは、オブジェクトとの相互作用または接触を回避しながらカウンターオブジェクトを動かし、その結果としてオブジェクトを指定位置軌道と同一の位置軌道または指定位置軌道と重なりがない位置軌道等にしたがって変位させるという「タスク」をエージェントに確実に実行させることができる。
【0025】
第1〜第4発明のうちいずれか1つの行動制御システムにおいて、前記第2演算処理要素が、前記相互作用点候補と空間的かつ時系列的に一致する前記カウンターオブジェクトの位置に対応する尤度を表現する確率密度分布の広がりが、他の位置に対応する尤度を表現する確率密度分布の広がりと比較して小さくなるように前記カウンターオブジェクトの位置軌道候補を生成するように構成されていてもよい(第5発明)。
【0026】
当該構成の行動制御システムによれば、前記のように各時点におけるカウンターオブジェクトの位置には、カウンターオブジェクトの目標位置軌道の確率密度分布の空間的な広がりに応じた変動が許容される。具体的には、エージェントにタスクを実行させる観点から必要性が高い時点においては、エージェントに動作態様の変動を禁止または制限することにより、エージェントによるタスクの実行の確実を図ることができる。たとえば、相互作用時点およびその直前直後の時点が、エージェントにタスクを実行させる観点から必要性が高い時点に該当する。その一方、エージェントにタスクを実行させる観点から必要性が低い時点においては、エージェントに比較的広い幅で動作態様の変動を許容することにより、エージェントにその構造上無理なまたは非効率的な動作を強いる事態が回避されうる。
【0027】
第1〜第5発明のうちいずれか1つの行動制御システムにおいて、前記第3演算処理要素が、前記相互作用点候補と時系列的に一致する時点を除いて前記重なり度合いを算出するように構成されていてもよい(第6発明)。
【0028】
第1〜第5発明のうちいずれか1つの行動制御システムにおいて、前記第3演算処理要素が、前記カウンターオブジェクトの位置軌道候補が有する確率密度分布の標準偏差または分散に応じた広がりを当該位置軌道候補が有する確率密度分布群のそれぞれに対して加え、または、当該位置軌道候補が有する確率密度分布群のそれぞれの広がりを当該標準偏差または分散に応じた広がりに補正し、その上で前記重なり度合いを算出するように構成されていてもよい(第7発明)。
【0029】
当該構成の行動制御システムによれば、相互作用点候補に対応する時点が特異点となって重なり度合いの算出結果の信頼性を損なう事態が回避されうる。したがって、重なり度合いが最高の一の位置軌道候補である目標位置軌道にしたがってカウンターオブジェクトが動かされるようにエージェントの行動が制御されることにより、カウンターオブジェクトを動かしてオブジェクトと相互作用させるというタスクのエージェントによる実行の確実が図られる。
【0030】
第1〜第7発明のうちいずれか1つの行動制御システムにおいて、前記第2演算処理要素が、前記カウンターオブジェクトの位置の模範位置軌道の形状特性を表わす因子にしたがい、前記カウンターオブジェクトの位置およびその1〜n階時間微分値(n=1,2,‥)が連続的に変化する確率遷移モデルにしたがって前記カウンターオブジェクトの位置軌道候補を生成するように構成されていてもよい(第8発明)。
【0031】
当該構成の行動制御システムによれば、カウンターオブジェクトの位置軌道候補の生成基礎である確率遷移モデルは、インストラクタがカウンターオブジェクトを動かしてオブジェクトと相互作用させる際の当該インストラクタの行動の特徴など、カウンターオブジェクトの模範位置軌道の形状特性を表わす因子にしたがっている。また、この確率遷移モデルは、カウンターオブジェクトの位置およびその1〜n階時間微分値(n=1,2,‥)が連続的に変化するようなエージェントの動作を表わしている。
【0032】
このため、当該確率遷移モデルにしたがって生成されたカウンターオブジェクトの位置軌道候補に、状態変数の模範位置軌道の形状特性、および、空間的かつ時間的な連続性を持たせることができる。したがって、位置軌道候補のうち1つにしたがってエージェントの行動が制御されることにより、エージェントに模範的な動作特性を模倣または再現させながら、円滑な動作によりカウンターオブジェクトをオブジェクトと相互作用させることができる。
【0033】
第8発明の行動制御システムにおいて、前記第2演算処理要素が、前記確率遷移モデルにしたがって、前記カウンターオブジェクトの時系列的に順方向の推定位置の確率密度分布により表現されている順方向推定位置軌道を生成する一方、前記カウンターオブジェクトの時系列的に逆方向の推定位置の確率密度分布により表現されている逆方向推定位置軌道を生成した上で、前記順方向推定位置軌道および前記逆方向推定位置軌道のそれぞれの確率密度分布を時系列的に合成することにより、時系列的な当該合成確率密度分布により表現されている前記カウンターオブジェクトの位置軌道候補を生成するように構成されていてもよい(第9発明)。
【0034】
当該構成の行動制御システムによれば、確率遷移モデルにしたがって、時系列的に順方向または未来に向かって逐次推定されたカウンターオブジェクトの位置の存在確率密度分布により表現されている「順方向推定位置軌道」が生成される。その一方、確率遷移モデルにしたがって、時系列的に逆方向にまたは過去に向かって逐次推定されたカウンターオブジェクトの位置の存在確率密度分布により表現されている「逆方向推定位置軌道」が生成される。
【0035】
そして、順方向推定位置軌道および逆方向推定位置軌道の確率密度分布が時系列的に合成されることにより、当該合成確率密度分布により表現されているカウンターオブジェクトの「位置軌道候補」が生成される。これにより、カウンターオブジェクトの位置軌道候補に、オブジェクトとカウンターオブジェクトとの相互作用点候補の前後における空間的かつ時間的な連続性を持たせることができる。
【0036】
第8または第9発明の行動制御システムにおいて、前記第2演算処理要素が、前記相互作用点候補よりも時系列的に前において、前記カウンターオブジェクトを前記オブジェクトと相互作用させる観点から定義されている第1因子が前記因子として採用される一方、前記相互作用点候補よりも時系列的に後において、前記第1因子とは異なる第2因子が前記因子として採用されている前記確率遷移モデルにしたがって前記カウンターオブジェクトの位置軌道候補を生成するように構成されていてもよい(第10発明)。
【0037】
当該構成の行動制御システムによれば、カウンターオブジェクトを動かしてオブジェクトと相互作用させるというタスクが実行される前後において、性質が異なる行動計画が生成されうる。具体的には、エージェントにタスクを実行させた後、タスク実行前の制限から解放された態様で行動させることができる。
【0038】
前記課題を解決するための本発明のロボットは、アクチュエータと、請求項1〜10のうちいずれか1つに記載の行動制御システムとを備え、前記行動制御システムにより前記アクチュエータの動作が制御されることにより、前記エージェントとしての行動が制御されるように構成されていることを特徴とする。
【0039】
本発明のロボットによれば、オブジェクトに対する相互作用形態が目標形態に一致するようにカウンターオブジェクトを動かすという「タスク」をエージェントとしてのロボットが確実に実行することができる。
【図面の簡単な説明】
【0040】
【図1】本発明の行動制御システムの構成説明図。
【図2】エージェントとしてのロボットの構成説明図。
【図3】ロボットの行動制御方法(第1実施形態)を示すフローチャート。
【図4】オブジェクトの予測位置軌道および相互作用点に関する説明図。
【図5】カウンターオブジェクトの位置軌道候補に関する説明図。
【図6】ロボットの動作に関する説明図。
【図7】ロボットの行動制御方法(第2実施形態)を示すフローチャート。
【図8】オブジェクトの予測位置軌道に関する説明図。
【図9】オブジェクトの位置推定方法を示すフローチャート。
【図10】パーティクルフィルタの生成方法に関する説明図。
【図11】パーティクルフィルタの生成方法に関する説明図。
【図12】モデル変数に関する説明図。
【図13】カウンターオブジェクトの位置軌道候補の生成方法に関する説明図。
【図14】確率遷移モデル(DBN)に関する説明図。
【図15】カウンターオブジェクトの模範位置軌道の学習方法に関する説明図。
【図16】異なるDBNにより生成された位置軌道候補の比較説明図。
【発明を実施するための形態】
【0041】
(行動制御システムの構成)
図1に示されている本発明の一実施形態としての行動制御システム100は、図2に示されているエージェントとしてのロボット1に搭載されているアクチュエータ10の動作を制御することによりロボット1の行動を制御する。
【0042】
ロボット1は脚式移動ロボットであり、人間と同様に基体10と、基体10の上部に設けられた頭部11と、基体10の上部左右両側から延設された左右の腕部12と、腕部12の先端部に設けられたハンド13と、基体10の下部から下方に延設された左右の脚部14と、脚部14の先端部に取り付けられている足部15とを備えている。
【0043】
ロボット1は、再表03/090978号公報や、再表03/090979号公報に開示されているように、アクチュエータ1000から伝達される力によって、人間の肩関節、肘関節、手根関節、股関節、膝関節、足関節等の複数の関節に相当する複数の関節機構において腕部12や脚部14を屈伸運動させることができる。
【0044】
腕部12は肩関節機構を介して基体10に連結された第1腕リンクと、一端が第1腕リンクの端部に肘関節機構を介して連結され、他端が手根関節を介してハンド13の付根部に連結されている第2腕リンクとを備えている。
【0045】
脚部14は股関節機構を介して基体10に連結された第1脚リンクと、一端が第1脚リンクの端部に膝関節機構を介して連結され、他端が足関節を介して足部15に連結されている第2脚リンクとを備えている。ロボット1は、左右の脚部14のそれぞれの離床および着床の繰り返しを伴う動きによって自律的に移動することができる。
【0046】
行動制御システム100はロボット1に搭載されている電子制御ユニット(CPU,ROM,RAM,I/O回路等により構成されている。)により構成されている。行動制御システム100のうち一部がロボット1の外部コンピュータにより構成され、残りの部分が当該外部コンピュータから演算結果を無線または有線方式で受信可能なコンピュータにより構成されていてもよい。
【0047】
行動制御システム100は、第1演算処理要素110と、第2演算処理要素120と、第3演算処理要素130とを備えている。
【0048】
第1演算処理要素110は内部状態センサ群111および外部状態センサ群112のそれぞれの出力信号に基づき、オブジェクトの予測位置軌道を決定する。
【0049】
内部状態センサ群111には、ロボット1の代表点(たとえば重心)の時系列的な位置および代表部分(たとえば基体10)の時系列的な姿勢を測定するための加速度センサおよびジャイロスコープ、ならびに、各関節機構の屈曲角度等を測定するロータリーエンコーダ等が含まれている。
【0050】
外部状態センサ群112には、頭部11に搭載されているステレオカメラのほか、基体10に搭載されている赤外光を用いたアクティブ型センサまたはモーションキャプチャーシステム(図示略)等、カウンターオブジェクトの時系列的な位置を測定しうるあらゆる撮像層値またはセンサが含まれている。
【0051】
第2演算処理要素120はオブジェクトの予測位置軌道に基づき、カウンターオブジェクトとオブジェクトとの相互作用を実現するようなカウンターオブジェクトの位置軌道候補を生成する。
【0052】
第3演算処理要素130はカウンターオブジェクトの複数の位置軌道候補のうち、オブジェクトの予測位置軌道との時系列的な確率密度分布の重なり度合いが最高の一の位置軌道候補である目標位置軌道にしたがってカウンターオブジェクトが動かされるようにロボット1の行動計画を生成する。
【0053】
なお、本発明を構成する「要素」は物理的にはメモリ(ROM,RAM)、および、このメモリからプログラムを読み出して担当する演算処理を実行する演算処理装置(CPU)により構成されている。このプログラムはCDやDVD等のソフトウェア記録媒体を通じてコンピュータにインストールされてもよいが、ロボット1からサーバに要求信号が送信されたことに応じて当該サーバによってネットワークや人工衛星を介して当該コンピュータにダウンロードされてもよい。
【0054】
(行動制御システムの機能(第1実施形態))
前記構成の行動制御システム100により実行される演算処理の第1実施形態について説明する。図6(a)〜(c)に示されているように、ロボット1(エージェント)が左右一方のハンド13で持っているラケットを動かすことにより、動いているボール(オブジェクト)をこのラケット、正確にはラケットのヘッド(カウンターオブジェクト)で打ち返すというタスクを実行する場合を例として考える。ボールおよびラケットのそれぞれの「位置」は共通の座標系であれば、世界座標系またはロボット座標系など、任意の座標系において定義されていてもよい。
【0055】
まず、第1演算処理要素110により、外部状態センサ群112の出力信号により表わされるボールの時系列的な位置に基づき、世界座標系またはロボット座標系におけるボールの時系列的な位置が推定される(図3/STEP112)。ボールの位置推定方法に関しては後述する。
【0056】
続いて、第1演算処理要素110により、ボールの時系列的な推定位置x1(k)に基づき、このボールの予測位置軌道が決定される(図3/STEP114)。
【0057】
これにより、図4(a)に示されているように、将来におけるボールの時系列的な予測位置x1(t)の確率密度分布P(x1(t))(実線環参照)により表現される広がりを有する予測位置軌道が生成される。図4(a)に示されている実線上の点は、ボールの時系列的な平均予測位置μx1(t)を表わしている。ここで「t」は離散的な時刻ではなく、連続的な時刻を表わしている。予測位置軌道は、ボールの平均予測位置μx1(t)を基準として、その存在確率密度分布P(x1(t))の標準偏差または分散に応じた広がりを有する。
【0058】
ボールの平均予測位置μx1(t)は式(001)により表現される。
【0059】
μx1(t)=Σn=1..Np[PN(t)x1N(t)]/Σn=1..Np[PN(t)] ..(001)。
【0060】
ここで「x1N(t)」はx1(t)のn番目のパーティクルを表わしている。「PN(t)」はn番目のパーティクルの尤度を表わしている。「Np」はパーティクルの個数を表わしている。
【0061】
ボールの予測位置x1(t)は、現在時刻kにおけるボールの計測位置x1(k)、速度v1(k)={x1(k)−x1(k-1)}/Δtおよび加速度α1(k)={v1(k)−v1(k-1)}/Δt(Δt:演算周期)に基づき、運動方程式にしたがって算出される。ボールの予測位置x1(t)の存在確率密度分布P(x1(t))は、式(002)で表現される共分散行列Q(t)=[Q_ij]を有するように定義されている。
【0062】
Q_ij(t)=Σn=1..Np[PN(t)(x1ni(t)−μx1i(t))(x1nj(t)−μx1j(t))] /(1−Σn=1..Np[PN(t)^2]) ..(002)。
【0063】
ここで「x1ni(t)」は、x1(t)のn番目のパーティクルの第i成分(x=1, y=2, z=3)の状態量を意味する。「μx1i(t)」は重み付き平均μx1(t)の第i状態量を意味する。
【0064】
さらに、第2演算処理要素120により、ロボット1の動作によってラケットが到達可能な範囲において複数の相互作用点候補xhit_cdt_m(m=1, 2, .., M)が生成される(図3/STEP122)。
【0065】
これにより、図4(b)に示されているように、ボールの予測位置軌道に含まれる複数の点のそれぞれが相互作用点候補xhit_cdt_mとして設定される。なお、相互作用点候補xhit_cdt_mは、ボールの平均予測位置μx1(t)(ボールの予測位置の存在確率密度P(x1(t))から導かれる平均点)と一致していても異なっていてもよい。
【0066】
ラケットの到達可能範囲は、内部状態センサ群111の出力信号により表わされる各関節機構の屈曲角度、ならびに、ハンド13に対するラケットの位置および姿勢等のキネマティクスパラメータに基づき、キネマティクス演算法にしたがって推定される。ラケットの到達可能範囲の推定に際して、ロボット1の基体10および腕部12など、異なる部分が相互に干渉または接触しないことが確認される。
【0067】
ハンド13のてのひらに対して位置および姿勢が固定されているハンド座標系におけるラケットの位置はあらかじめ定められていてもよいが、内部状態センサ群111撮像装置によって撮像されたハンド13に対するラケットのグリップの握り位置および姿勢に基づいて逐次算出されてもよい。
【0068】
また、第2演算処理要素120により、相互作用点候補xhit_cdt_mを通るラケット(カウンターオブジェクト)の位置軌道候補が生成される(図3/STEP124)。
【0069】
これにより、図5(a)〜(c)のそれぞれに示されているように、相互作用点候補xhit_cdt_mが一の位置として含まれている、ラケットの時系列的な位置x2(t)(破線参照)に対応する尤度を表わす確率密度分布P(x2(t)|xhit_cdt_m)(破線環参照)により表現されるラケットの位置軌道候補が生成される。ラケットの位置軌道候補は、ラケットの平均位置または中心位置μx2(t)を基準として、その存在確率密度分布P(x2(t)|xhit_cdt_m)の標準偏差または分散に応じた広がりを有する。
【0070】
さらに、第3演算処理要素130により、ボールの予測位置軌道と、ラケットの複数の位置軌道候補のそれぞれとの重なり度合いCiが算出される(図3/STEP131)。具体的には、ボールの予測位置軌道を表現する確率密度分布P(x1(t))と、ラケットの各位置軌道候補を表現する確率密度分布P(x2(t)|xhit=xhit_cdt_m)との積の時間積分値(式(003)参照)が当該重なり度合いCiとして算出される。
【0071】
Ci=Intdt・P(x1(t))P(x2(t)|xhit=xhit_cdt_m) ..(003)。
【0072】
「Intdt」は時間積分を表わす(以下同じ)。重なり度合いCiの算出に際して、たとえば次の戦略1〜3のうち1つが採用される。これは、相互作用時点候補が特異点となって重なり度合いの算出結果の信頼性が損なわれる事態を回避するためである。
【0073】
(戦略1)
相互作用点候補xhit_cdt_mと時系列的に一致する時点を除いて重なり度合いを算出する。すなわち、式(004)にしたがって重なり度合いを算出する。
【0074】
Ci=Intdt・P(x2(t)|xhit_cdt_m)P(x1(t)),(ただしt=h_cdt_mを除く。) ..(004)。
【0075】
(戦略2)
カウンターオブジェクトの位置軌道候補が有する確率密度分布P(x2(t)|xhit=xhit_cdt_m)の標準偏差または分散に応じた広がりを当該位置軌道候補が有する確率密度分布群のそれぞれに対して加えた上で重なり度合いCiを算出する。
【0076】
(戦略3)カウンターオブジェクトの位置軌道候補が有する確率密度分布群のそれぞれの広がりを当該標準偏差または分散に応じた広がりに補正し、その上で前記重なり度合いを算出する。
【0077】
また、第3演算処理要素130により、ラケットの複数の位置軌道候補のうち重なり度合いCiが最高となる一の位置軌道候補の平均位置軌道または中心位置軌道がラケットの目標位置軌道として決定される(図3/STEP136)。
【0078】
続いて、第3演算処理要素130により、ラケットの位置軌道を目標位置軌道に一致させるようなロボット1の行動計画を生成する(図3/STEP138)。具体的には、各時点におけるラケットの目標位置P2(t)に基づき、インバースキネマティクス演算法にしたがって、ロボット1の各関節機構の角度、重心位置および基体10の姿勢等の時系列的な目標値が算出される。
【0079】
そして、行動制御システム100により、行動計画にしたがってロボット1の行動が制御される(図3/STEP140)。
【0080】
具体的には、ハンド座標系におけるラケットの位置、および、内部状態センサ群111の出力信号により表わされる各関節機構の屈曲角度等のキネマティクスパラメータに基づき、キネマティクス演算法にしたがって、ラケットの時系列的な位置等が推定される。そして、各時点におけるロボット1の各関節機構の角度、重心位置および基体10の姿勢等の推定値が目標値に一致するように、フィードバック制御則にしたがってアクチュエータ1000の動作が制御される。
【0081】
これにより、図6(a)〜(c)に順に示されているようにロボット1がバウンドしながら近寄ってくるボールを、片方のハンド13で把持しているラケットを使ってフォアハンドで前方に打ち返すタスクを実行する。
【0082】
ロボット1がラケットを動かし始める前においても後においても、タスクが実行されるまでの間、前述のオブジェクト(ボール)の位置推定以降の一連の処理が制御サイクルごとに繰り返し実行される(図3/STEP112〜140参照)。
【0083】
(行動制御システムの機能(第2実施形態))
前記構成の行動制御システム100により実行される演算処理の第2実施形態について説明する。第2実施形態でも第1実施形態と同様、ロボット1が一方のハンド13で持っているラケットでボールを打ち返すというタスクを実行する場合を例として考える。第2実施形態では、打ち返されたボールが指定位置軌道にしたがって飛んでいくようにロボット1の動作が制御される点で第1実施形態と相違する。
【0084】
次に説明する第2実施形態におけるSTEP212,214,222,224,231,238および240のそれぞれの演算処理は、第2実施形態におけるSTEP112,114,122,124,131,138および140のそれぞれの演算処理とほぼ同じ内容なので、簡略に説明される。
【0085】
まず、第1演算処理要素110により、ボールの時系列的な位置が推定され(図7/STEP212)、ボールの時系列的な推定位置x1(k)に基づき、このボールの予測位置軌道(図4(a)参照)が決定される(図7/STEP214)。
【0086】
さらに、第2演算処理要素120により、ロボット1の動作によってラケットが到達可能な範囲において複数の相互作用点候補xhit_cdt_m(m=1, 2, .., M)(図4(b)参照)が生成される(図7/STEP222)。
【0087】
また、第2演算処理要素120により、相互作用点候補xhit_cdt_mを通るラケット(カウンターオブジェクト)の位置軌道候補(図5(a)〜(c)参照)が生成される(図7/STEP224)。
【0088】
さらに、第2演算処理要素120により、相互作用点候補xhit_cdt_m以降のボールの時系列的な予測位置x1’(t)の確率密度分布により表現される相互作用後予測位置軌道が決定される(図7/STEP226)。ボールの相互作用後予測位置軌道は、ボールが予測位置軌道にしたがって変位し、ラケットが複数の位置軌道候補のそれぞれにしたがって変位したという仮定下で決定される。
【0089】
相互作用点候補xhit_cdt_mにおけるラケットに対するボールの相対速度v1(h_cdt_m)−v2(h_cdt_m)=[{xhit_cdt_m−x1(h_cdt_m−1)}−(xhit_cdt_m−x2(h_cdt_m−1))]/Δt={x2(h_cdt_m−1)}−x1(h_cdt_m−1)}/Δtが算出される。また、仮想壁面を表わす式が算出される。仮想壁面は、相互作用点候補xhit_cdt_mを含み、かつ、相互作用点候補xhit_cdt_mおけるラケットの速度ベクトルに平行な垂線を有する平面である。
【0090】
さらに、仮想壁面に対してボールが当該相対速度で衝突した場合における、ボールの跳ね返り速度(方向を含む。)が算出される。ボールおよびラケット(ヘッド)のそれぞれの弾性を考慮して、ボールの速度エネルギーが所定量だけ低減すると仮定した上で、跳ね返り速度が算出されてもよい。そして、初期位置としての相互作用点候補xhit_cdt_mと、初期速度としての跳ね返り速度とに基づき、ボールの運動方程式にしたがって、ボールの時系列的な予測位置x1’(t)が算出される。相互作用後におけるボールの予測位置x1’(t)は、相互作用のないボールの予測位置x1(t)と同様に、その存在確率密度分布P(x1’(t))は、たとえば、尤度Pi(k)を重みとするパーティクルの重み付き分散(式(002)参照)を有するように定義される。
【0091】
これにより、図8(a)〜(c)のそれぞれに示されているように、相互作用点候補xhit_cdt_mにおいてラケットにより打ち返されたボールの時系列的な予測位置x1’(t)の確率密度分布P(x1’(t)|xhit_cdt_m,vhit_cdt_m)により表現されるラケットの相互作用後予測位置軌道が決定される。なお、ラケットのヘッドの面の法線と、ラケットの位置軌道候補の接線とは平行である。ボールの相互作用後予測位置軌道は、ボールの平均予測位置μx1’(t)を基準として、その存在確率密度分布P(x1’(t)|xhit_cdt_m,vhit_cdt_m)の標準偏差または分散に応じた広がりを有する。
【0092】
さらに、第3演算処理要素130により、ボールの予測位置軌道と、ラケットの複数の位置軌道候補のそれぞれとの重なり度合いが第1重なり度合いC1mとして算出される(図7/STEP231)。具体的には、ボールの予測位置軌道を表現する確率密度分布P(x1(t))と、ラケットの各位置軌道候補を表現する確率密度分布P(x2(t)|xhit=xhit_cdt_m)との積の時間積分値(式(003)参照)が第1重なり度合いC1mとして算出される。第1重なり度合いC1mの算出に際しても、前記戦略1〜3のうち1つが採用されうる。
【0093】
C1m=Intdt・P(x1(t))P(x2(t)|xhit=xhit_cdt_m) ..(003)。
【0094】
第3演算処理要素130により、ボールの相互作用後予測位置軌道と、指定位置軌道との重なり度合いが第2重なり度合いC2mとして算出される(図7/STEP232)。ボールの指定位置軌道は、図8(a)〜(c)に示されているように、時系列的な指定位置x0(t)に対応する尤度を表わす確率密度分布P(x0(t))により表現される。ボールの指定位置軌道候補は、ボールの平均指定位置または中心指定位置μx0(t)を基準として、その存在確率密度分布P(x0(t))の標準偏差または分散に応じた広がりを有する。なお、カウンターオブジェクトと相互作用した後のオブジェクトを、目的位置まで動かすことがタスクである場合、指定位置軌道は当該目的位置における広がりが0または極小になるように定義されてもよい。
【0095】
具体的には、ボールの相互作用後予測位置軌道を表現する確率密度分布P(x1’(t)|xhit_cdt_m, vhit_cdt_m)と、指定位置軌道を表現する確率密度分布P(x0(t))との積の時間積分値(式(005)参照)が第2重なり度合いC2mとして算出される。
【0096】
C2m=Intdt・P(x1’(t)|xhit_cdt_m, vhit_cdt_m)P(x0(t)) ..(005)。
【0097】
さらに、第3演算処理要素130により、第1重なり度合いC1mと第2重なり度合いC2mとに応じて、総合重なり度合いCmが算出される(図7/STEP234)。たとえば、両者の和C1m+C2m、重み付き和λ1C1m+λ2C2m(λ1>0,λ2>0,λ1+λ2=1)または積C1m・C2mなど、第1重なり度合いC1mおよび第2重なり度合いC2mのそれぞれの増加関数が総合重なり度合いCmとして算出される。
【0098】
第3演算処理要素130により、ラケットの複数の位置軌道候補のうち、総合重なり度合いCmが最高となる一の位置軌道候補の平均位置軌道または中心位置軌道がラケットの目標位置軌道として決定される(図7/STEP236)。
【0099】
続いて、第3演算処理要素130により、ラケットの位置軌道を目標位置軌道に一致させるようなロボット1の行動計画を生成する(図7/STEP238)。
【0100】
そして、行動制御システム100により、行動計画にしたがってロボット1の行動が制御される(図7/STEP240)。
【0101】
具体的には、ハンド座標系におけるラケットの位置、および、内部状態センサ群111の出力信号により表わされる各関節機構の屈曲角度等のキネマティクスパラメータに基づき、キネマティクス演算法にしたがって、ラケットの時系列的な位置等が推定される。そして、各時点におけるロボット1の各関節機構の角度、重心位置および基体10の姿勢等の推定値が目標値に一致するように、フィードバック制御則にしたがってアクチュエータ1000の動作が制御される。
【0102】
これにより、図6(a)〜(c)に順に示されているようにロボット1がバウンドしながら近寄ってくるボールを、片方のハンド13で把持しているラケットを使ってフォアハンドで前方に打ち返すことにより、ボールを指定位置軌道にしたがって変位させるというタスクを実行する。
【0103】
ロボット1がラケットを動かし始める前においても後においても、タスクが実行されるまでの間、前述のオブジェクト(ボール)の位置推定以降の一連の処理が制御サイクルごとに繰り返し実行される(図7/STEP212〜240参照)。
【0104】
(ボールの位置推定方法)
ボールの位置推定方法について詳細に説明する(図3/STEP112、図7/STEP212参照)。
【0105】
ボールの位置推定に際してパーティクルフィルタが用いられる。パーティクルには、ボールの異なる運動状態を表わすモデルのそれぞれが割り当てられた「第1種パーティクル」および「第2種パーティクル」が含まれている。第1種パーティクルには、ボールが床などの他の物体と接触せずに運動している状態を表わす「第1モデル」が割り当てられている。第2種パーティクルには、ボールが床または壁などの他の物体に接触しながら運動している状態を表わす「第2モデル」が割り当てられている。
【0106】
推定演算処理サイクルまたは時刻を表わす指数kが0にリセットされた上で(図9/STEP001)、外部状態センサ群112としてのCCDカメラ等の撮像装置により撮像された画像に基づき、時刻kにおけるボールの位置x1(k)が計測される(図9/STEP002)。
【0107】
また、複数のパーティクルyi(k)(i=1, 2, ..)が状態空間に分散配置される(図9/STEP004)。なお、初期状態(k=0)を除き、複数のパーティクルyi(k)のうち一部は状態空間における前回位置を基準として広がる確率密度分布(正規分布またはガウス分布)に応じた範囲内の任意の今回位置に分散される。
【0108】
これにより、図10に概念的に示されているように第1種パーティクル(黒丸)および第2種パーティクル(白丸)が状態空間に配置される。また、図11に示されているように状態変数の測定値(黒点)の周辺に第1種パーティクル(上向き矢印)および第2種パーティクル(下向き矢印)が分散配置される。
【0109】
各パーティクルyi(k)は図12に示されているように流動的に値が変化するモデル変数γi(k)を有している。モデル変数γi(k)の値が「第1定義域」に属する場合はパーティクルyi(k)に「第1モデル」が固有モデルとして割り当てられる一方、モデル変数γi(k)の値が「第2定義域」に属する場合はパーティクルyi(k)に「第2モデル」が固有モデルとして割り当てられる。
【0110】
なお、一部のパーティクルには第1モデルおよび第2モデルのうち1つのモデルが固有モデルとして選択されうる一方、その他のパーティクルには第1および第3モデル(第2モデルとは異なる。)のうち1つのモデルが固有モデルとして選択されうる等、選択可能なモデルの種類がパーティクルyi(k)ごとに異なっていてもよい。
【0111】
さらに、各パーティクルyi(k)がその固有モデルにしたがって状態空間において遷移させられる(図9/STEP006)。これにより、図10に示されているように第1種パーティクル(黒丸)および第2種パーティクル(白丸)が状態空間において前回位置から遷移させられた上で今回位置に配置される。
【0112】
また、ボールの計測位置x1(k)に対する各パーティクルyi(k)の尤度Pi(k)=P(yi(k)|x1(k))が評価される(図9/STEP008)。これにより、図8においてパーティクルの径の大小により高低が表現されている尤度Pi(k)が算出される。
【0113】
そして、尤度Pi(k)を重みとする各パーティクルyi(k)の重み付き平均値ΣiPi(k)・yi(k)/Σiyi(k)がボールの位置x(k)として推定される(図9/STEP010)。
【0114】
なお、尤度Pi(k)が最高となるパーティクルyi(k)、または、尤度Pi(k)が高い所定順位以内のパーティクルyi(k)の平均値もしくは尤度Pi(k)を重みとする重み付き平均値等がボールの位置x1(k)として推定されてもよい。
【0115】
また、時刻kにおけるボールの位置x1(k)に対する各パーティクルの離散的に表現された尤度(または確率密度分布)Pi(k)に基づき、パーティクルyi(k)を生存させるかもしくは消滅させるか、または、分裂させるか否かが決定される(図9/STEP012)。これにより、尤度Pi(k)が高いパーティクルほど優先的に生存または増加する一方、尤度Pi(k)が低いパーティクルほど優先的に消滅する。
【0116】
その後、生存しているパーティクルyi(k)に割り当てられている固有モデル(今回モデル)を基礎として、新たな固有モデル(次回モデル)が決定される(図9/STEP014)。
【0117】
具体的には、各パーティクルyi(k)に固有の今回のモデル変数値γi(k)が摂動量δi(k)だけ増やされまたは減らされることにより、次回のモデル変数値γi(k+1)が決定される。次回のモデル変数値γi(k+1)が第1定義域に属している場合には「第1モデル」が次回の固有モデルとして決定される。同様に、次回のモデル変数値γi(k+1)が第2定義域に属している場合には「第2モデル」が次回の固有モデルとして決定される。なお、摂動量δi(k)は所定の許容範囲に収まるように調節されている。
【0118】
以降、ボールの位置x1(k)の推定処理が終了しているか否かが判定され(図9/STEP016)、当該推定処理が終了していないと判定された場合(図9/STEP016‥NO)、指数kが1だけ増加された上で(図9/STEP017)、ボールの位置x1(k)の計測および尤度Pi(k)の評価等の前記一連の処理が繰り返される(図9/STEP002〜S016参照)。
【0119】
以上がボールの位置の推定処理方法の詳細である。
【0120】
なお、ボールの時系列的な位置(たとえば鉛直方向位置)に応じて、第1種パーティクルが全部を占める状態(自由落下している状態)および第1種パーティクルおよび第2種パーティクルが混在している状態(床などに接触している状態)、さらには第2種パーティクルが全部を占める状態が切り替えられてもよい。
【0121】
(確率遷移モデル)
ラケットの位置軌道候補の生成基礎である確率遷移モデルの詳細について説明する。
【0122】
確率遷移モデルは、ラケットの模範位置軌道の形状特性にしたがい、ラケットの位置およびその1〜n階時間微分値が連続的に変化する状態を表わすモデルである。
【0123】
ラケットの模範位置軌道Qiの形状特性は、式(100)により表わされるアトラクタ行列R(因子)によって定義される。アトラクタ行列Rの算定方法は、たとえば「Trajectory Representation Using Sequenced Linear Dynamical Systems, K.R.Dixon and P.K.Khosla, Proceeding of the IEEE International Conference on Robotics and Automation(2004)」に記載されている。
【0124】
R=(Q^(k+1)−Q^(k))(Q^(k)−Q^(N))+,
Q^(k)≡[Q1(1)..Q1(N_1-1)..Qi(1)..Qi(N_i-1)..Qx(1)..Qx(N_x-1)],
Q^(k+1)≡[Q1(2)..Q1(N_1)..Qi(2)..Qi(N_i)..Qx(2)..Qx(N_x)],
Q^(N)≡[Q1(N_1)..Q1(N_1)..Qi(N_i)..Qi(N_i)..Qx(N_x)..Qx(N_x)] ..(100)。
【0125】
ここで「+」は擬似逆行列を表わし、「N_i」はi個目の軌道の長さを表わしている。アトラクタ行列Rにより定義されるラケットの模範位置軌道Qiの形状特性は、式(111)および(112)により表現される。
【0126】
v2(k)=Rx2(k)−Ru(k)+N(μv, Σv) ..(111)。
【0127】
u(k+1)=u(k)+ε(k)+N(μu, Σu) ..(112)。
【0128】
式(111)はアトラクタの時刻kにおける引き込み点u(k)を基準とするラケットの位置x2(k)の偏差の大小と、アトラクタ行列Rとに応じて時刻kにおけるラケットの速度v2(k)の高低が定まることと、ラケットの速度v2(k)が確率密度分布(一般的にはガウス分布)N(μv2, Σv2)(μv2=0, Σv2:共分散行列)で表わされる揺らぎまたは不確定要素を有する連続確率変数であることとを表わしている。すなわち、アトラクタ行列Rにより、時刻kにおけるラケットの変位速度v2(k)の高低および揺らぎの程度が定義される。
【0129】
式(112)はアトラクタの引き込み点u(k)が変位量ε(k)だけ変位することが許容されていることと、引き込み点u(k)が確率密度分布N(μu, Σu)(μu=0, Σu:共分散行列)で表わされる不確定要素を有する連続確率変数であることとを表わしている。なお、式(112)において右辺第2項が省略されてもよい。
【0130】
確率遷移モデルは、式(121)〜(123)により定義される。
【0131】
x2(k+1)=x2(k)+v2(k+1)+N(μx2, Σx2) ..(121)。
【0132】
v2(k+1)=v2(k)+α2(k+1)+N(μv2, Σv2) ..(122)。
【0133】
α2(k+1)=α2(k)+β2(k+1)+N(μα2, Σα2) ..(123)。
【0134】
式(121)はラケットの位置x2(k)が滑らかに変化するという確率遷移モデルの性質を表わし、かつ、当該位置x2(k)が確率密度分布N(μx2, Σx2)(μx2=0, Σx2:共分散行列)で表わされる不確定要素を有する連続確率変数であることを表わしている。
【0135】
式(122)はラケットの変位速度(位置の1階時間微分値)v2(k)が滑らかに変化するという確率遷移モデルの性質を表わし、かつ、当該変位速度v2(k)が確率密度分布N(μv2, Σv2)(μv2=0, Σv2:共分散行列)で表わされる不確定要素を有する連続確率変数であることを表わしている。
【0136】
式(123)はラケットの変位加速度(位置の2階時間微分値)α2(k)が滑らかに変化するという確率遷移モデルの性質を表わし、かつ、当該変位加速度α2(k)が確率密度分布N(μα2, Σα2)(μα2=0, Σα2:共分散行列)で表わされる不確定要素を有する連続確率変数であることを表わしている。ここで、β2(k)はラケットの位置の加加速度(位置の3階時間微分値(=d3x2/dt3))である。式(123)において右辺第2項が省略されてもよい。
【0137】
なお、ラケットの位置x2ならびにその変位速度(1階時間微分値)v2および加速度(2階時間微分値)α2が連続的に変化するようなロボット1の動作を表わす確率遷移モデルに代えて、ラケットの位置x2およびその変位速度v2、または、変位加速度α2および変位加加速度β2が連続的に変化する等、ラケットの位置x2および一または複数のn階時間微分値が連続的に変化するようなロボット1の動作を表わす確率遷移モデルが採用されてもよい。
【0138】
確率遷移モデルは、図13に示されているダイナミクスベイジアンネットワーク(DBN)により表現される。DBNによれば関係式(111) (112) (121)〜(123)が、各時点tにおけるラケットの位置x2およびアトラクタの引き込み点u等の状態変数を表わすノード(円)および条件確率によりこれらをつなぐ矢印により表現されている。また、関係式(111) (112) (121)〜(123)のそれぞれに対応する条件付確率は関係式(211) (212) (221)〜(223)のそれぞれにより表現される。
【0139】
P(0|v2(k), x2(k), u(k))=N(v2(k)−Rx2(k)+Ru(k), 0)=N(0, 0) ..(211)。
【0140】
P(u(k+1)|u(k), ε(k))=N(u(k)+ε(k), Σu) ..(212)。
【0141】
P(x2(k+1)|x2(k), v2(k+1))=N(x2(k)+v2(k+1), Σx2) ..(221)。
【0142】
P(v2(k+1)|v2(k), α2(k))=N(v2(k)+α2(k+1), Σv2) ..(222)。
【0143】
P(α2(k+1)|α2(k), β2(k))=N(α2(k)+β2(k+1), Σa2) ..(223)。
【0144】
式(212)における状態変数ノードεは式(312)により表現される。式(123)における状態変数ノードβは式(323)により表現される。
【0145】
P(ε(k))=N(0, Σε) ..(312)。
【0146】
P(β(k))=N(0, Σβ) ..(323)。
【0147】
(カウンターオブジェクトの位置軌道候補の生成方法)
ラケット(カウンターオブジェクト)の位置軌道候補の生成処理の詳細について説明する(図3/STEP124、図7/STEP224参照)。
【0148】
ラケットの位置軌道候補は、前述の確率遷移モデルにしたがって、ラケットの順方向推定位置軌道および逆方向推定位置軌道が生成された上で、当該軌道の確率密度分布が合成されることにより生成される。
【0149】
まず、DBNにおいて、第1基準時点(ロボット1がラケットを動かし始める時点)t=t1および第2基準時点t=t2(=t1+NΔt)(ロボット1がラケットの振り抜き終わった時点)のそれぞれにおけるラケットの位置x2、速度v2、加速度α2および加加速度β2が設定される。
【0150】
たとえば、図6(a)に示されているようにロボット1がラケットを動かし始める第1基準時点t=t1におけるラケットの位置x2(0)が、各関節機構の角度等に基づき、キネマティクス演算法にしたがって設定される。第1基準時点t=t1におけるラケットの位置P(0)の変位速度v2(0)、加速度α2(0)および加加速度β2(0)はすべて「0」に設定される。
【0151】
さらに、図6(c)に示されているようにロボット1がラケットを振り抜き終わったときのラケットの目標位置が、第2基準時点t=t2におけるラケットの位置P(N)として設定される。第2基準時点t=t2におけるラケットの位置P(N)は第1基準時点t=t1におけるアトラクタの引き込み点u(0)の近傍範囲内に設定されてもよい。第2基準時点t=t2におけるラケットの速度v2(N)、加速度α2(N)および加加速度β2(N)はすべて「0」に設定される。
【0152】
また、第1基準時点t=t1から第2基準時点t=t2までのノードが、関係式(111) (112) (121)〜(123)により表現される確率遷移モデルにしたがって、時系列的に順方向(先時点から後時点に向かう方向)に順次推定される。
【0153】
たとえば、図14(a)に示されているように、(001)第1基準時点t=t1(ラケットの運動開始時点)から第nの相互作用時点候補t=thit_cdt_m=t1+h_cdt_mΔtの直前時点t=t1+(h_cdt_m-1)Δtまで、ラケットの位置x2+(0)(=x2(t1)), x2+(1), x2+(2), .., x2+(h_cdt_m-1)が時系列順方向(白矢印参照)に順次推定される。
【0154】
また、同じく図14(a)に示されているように、(002)相互作用時点候補t=thit_cdt_mから第2基準時点t=t2=t1+NΔt(ラケットの振り抜き終了時点)まで、ラケットの位置x+(h_cdt_m)(=x2(h_cdt_m)), x2+(h_cdt_m+1), x2+(h_cdt_m+2), .., x2+(N)が時系列順方向(白矢印参照)に順次推定される。
【0155】
これにより、ラケットの推定位置x2+(0), x2+(1), .., x2+(h_cdt_m-1), x2+(h_cdt_m), x2+(h_cdt_m+1), .., x2+(N)の確率密度分布P(x2(t)|x2(t1), xhit_cdt_m)により表現されている順方向推定位置軌道が生成される。
【0156】
同様に第2基準時点t=t2から第1基準時点t=t1までのノードが、確率遷移モデルにしたがって、時系列的に逆方向(後時点から先時点に向かう方向)に順次推定される。
【0157】
たとえば、図14(a)に示されているように、(003)第2基準時点t=t2から相互作用時点候補t=thit_cdt_mの直後時点t=thit_cdt_m+Δt=t1+(h_cdt_m+1)Δtまで、ラケットの位置x2-(N)(=x2(t2)), x2-(N-1), x2-(N-2), .., x2(h_cdt_mΔt+1)が時系列逆方向(黒矢印参照)に順次推定される。
【0158】
さらに、同じく図14(a)に示されているように、(004)相互作用時点候補t=thit_cdtから第1基準時点t=t1まで、ラケットの位置x2-(h_cdt_m)(=xhit_cdt_m), x2-(h_cdt_m-1), x2-(h_cdt_m-2), .., x2-(0)が時系列逆方向(黒矢印参照)に順次推定される。
【0159】
これにより、ラケットの推定位置x2-(N), x2-(N-1), .., x2-(h_cdt_m+1), x2-(h_cdt_m),x2-(h_cdt_m-1), .., x2-(0)の確率密度分布P(x2(t)|x2(t2), xhit_cdt_m)により表現されている逆方向推定位置軌道が生成される。
【0160】
なお、DBNにおけるノードの推定方法としては前記方法(Belief Propagationと呼ばれている手法)のほか、Loopy Belief Propagation, variable elimination, Junction Tree, Impartance sampling, Hugin Algorithm, Shafer-Shanoy Algorithm, variational message passing, gibbs sampling等の方法が採用されてもよい。
【0161】
そして、図14(b)に示されているように、(005)順方向推定位置軌道を表現する確率密度分布P(x2(t)|x2(t1), xhit_cdt_m)および逆方向推定位置軌道を表現する確率密度分布P(x2(t)|x2(t2), xhit_cdt_m)が合成されることにより、当該合成確率密度分布P(x2(t)|xhit_cdt_m)により表現されるラケットの位置軌道候補が生成される。
【0162】
相互作用点候補xhit_cdt_mにおいて、ラケットの位置軌道候補の確率密度分布は、他の時点における確率分布よりも標準偏差または分散が小さく(たとえば0に)設定されている。これは、ラケットの位置軌道候補が相互作用点候補xhit_cdt_mを通過するように設定される必要があるためである。たとえば、相互作用点候補xhit_cdt_mにおいて確率密度関数はδ関数のような特性を示す。
【0163】
このため、重なり度合いCi(または第1重なり度合いC1m)の算出に際して(図3/STEP131、図7/STEP231参照)、相互作用点候補xhit_cdt_mが特異点となって重なり度合いCiの信頼度が低下する可能性があるが、前述のように前記戦略が採用されることによりこのような事態が回避される。
【0164】
1つの相互作用点候補xhit_cdt_mについて、当該相互作用点候補xhit_cdt_mから時系列的に順方向に複数の異なる方向に向かうラケットの位置軌道候補が生成される。複数の異なる方向としては、たとえば、ロボット1から見てボールが飛んできた方向を方位角θ=0[rad]かつ仰角φ=0[rad]として表わすと、(θ, φ)=(0, 0), (0, −π/4), (0, π/4), (−π/4, 0), (π/4, 0), (−π/4, −π/4), (π/4, −π/4), (−π/4, π/4)および(π/4,−π/4)のそれぞれにより表わされる9つの方向が採用される。なお、複数の方向は任意に変更されてもよく、1つの相互作用点候補xhit_cdt_mについて、1つのラケットの位置軌道候補のみが生成されてもよい。
【0165】
なお、ラケットの順方向推定位置軌道および逆方向推定位置軌道がすべての時点において合成されるのではなく、たとえば、第1期間t=0〜kにおける順方向推定位置軌道の一部である第1位置軌道と、第1期間に続く第2期間t=k+1〜Nにおける逆方向推定位置軌道の一部である第2位置軌道とが空間的に円滑に連続するように接続されることにより、ラケットの位置軌道候補が生成されてもよい。
【0166】
また、第1期間t=0〜kにおける順方向推定位置軌道の一部である第1位置軌道と、第1期間よりも後の第2期間t=k+c(c>1)〜Nにおける逆方向推定位置軌道の一部である第2位置軌道とを円滑に接続するように中間期間t=k+1〜k+c-1においてラケットの中間位置軌道が生成され、第1位置軌道、中間位置軌道および第2位置軌道が順に接続されることにより、ラケットの位置軌道候補が生成されてもよい。
【0167】
(カウンターオブジェクトの模範位置軌道の学習方法)
カウンターオブジェクトの模範位置軌道Qiはあらかじめ定められていてもよいが、次に説明するようにインストラクタの動作観測によって定められてもよい。
【0168】
ここでは、図15(a)〜(c)に順に示されているようにインストラクタとしての人間が、動いているボールを、片手で持っているラケットを使ってフォアハンドで打ち返すというタスクを実行する際の動作が観測される。図15(a)は、インストラクタがラケットを動かし始める直前の状態を示している。図15(b)は、インストラクタがラケットをボールに当てた状態を示している。図15(c)は、インストラクタがラケットを振り抜き終わった状態を示している。
【0169】
まず、インストラクタがこのタスクを繰り返すたび、カウンターオブジェクトとしてのラケットの時系列的な位置が測定される。これにより、ラケット位置の模範位置軌道Qi=[Qi(0), .., Qi(k), .., Qi(N)](i=1, 2, .., I)が認識される。「Qi(k)」は、第iの模範位置軌道Qiにおける時点kにおけるラケットの位置を意味する。
【0170】
ラケットにボールを当てるというタスクの性質のため、インストラクタがラケットにボールを当てた時点(図15(b)参照)におけるラケットの位置およびボールの位置が測定されてもよい。この測定結果は、相互作用点候補xhit_cdt_mの設定に際して利用されうる(図3/STEP124、図7/STEP224、図4(b)参照)。モーションキャプチャーシステムを構成するカメラを通じて得られる画像解析によって測定されるボールの速度変化が閾値を超えた時点が、ラケットによりボールが打ち返された時点として認識される。ラケットにボールが当たったときに生じる音がマイクロホン(図示略)により検出された時点が、ラケットにボールが当たった時点として認識されてもよい。
【0171】
インストラクタにより動かされるラケットの位置は、光学式モーションキャプチャーシステムにより測定される。光学式モーションキャプチャーシステムによれば、インストラクタの周囲に配置された一または複数のカメラ(トラッカー)による、観測対象箇所に付されたマークの検出結果に基づいてラケットの位置が測定される。
【0172】
なお、機械式、磁気式または慣性式モーションキャプチャーシステムによりラケットの位置が測定されてもよい。
【0173】
機械式モーションキャプチャーシステムによれば、インストラクタに装着されたサポータまたはスーツに取り付けられた複数のポテンショメータからの当該インストラクタの各関節角度を表す出力信号に基づき、インストラクタのキネマティクス演算法にしたがってラケットの位置が測定される。
【0174】
磁気式モーションキャプチャーシステムによれば、インストラクタに装着されたサポータまたはスーツに取り付けられた複数の磁気センサからの出力信号に基づき、インストラクタのキネマティクス演算法にしたがってラケットの位置が測定される。
【0175】
慣性式モーションキャプチャーシステムによれば、インストラクタに装着されたサポータまたはスーツに取り付けられた複数の慣性モーメントセンサからの腕等の慣性モーメントを表す出力信号に基づき、インストラクタのキネマティクス演算法にしたがってラケットの位置が測定される。
【0176】
インストラクタにより動かされるラケットの動作スケールに対する、ロボット1により動かされるラケットの動作スケールの比率が、インストラクタにより動かされるラケットの模範位置軌道に乗じられることにより補正された結果が、ロボット1にとってのラケットの模範位置軌道として採用されてもよい。
【0177】
たとえば、また、インストラクタの腕の長さとインストラクタが用いるラケットの長さとの和に対する、ロボット1の腕部12の長さとロボット1が用いるラケットの長さとの和の比率がアトラクタ行列Rに乗じられることにより、インストラクタにより動かされるラケット位置を含む第1状態変数の模範位置軌道のスケールに対する、ロボット1(エージェント)により動かされるラケット位置を含むラケットのスケールの比率が調節されてもよい。
【0178】
(行動制御システムの作用効果)
第1実施形態の行動制御システム100によれば、オブジェクト(ボール)の予測位置軌道と、カウンターオブジェクト(ラケット)の位置軌道候補との時系列的な確率密度分布の重なり度合いCiが算出される(図3/STEP131,図5(a)〜(c)参照)。さらに、カウンターオブジェクトの複数の位置軌道候補のうち、オブジェクトの予測位置軌道との重なり度合いCiが最高となる一の位置軌道候補である目標位置軌道にしたがってカウンターオブジェクトが動かされるようにエージェント(ロボット1)の行動計画が生成される(図3/STEP136,138参照)。重なり度合いCiの高低は、カウンターオブジェクトとオブジェクトとが相互作用する確率の高低を表わしている。
【0179】
このため、前記のように決定された行動計画にしたがってエージェントの行動が制御されることにより、カウンターオブジェクトを動かしてオブジェクトと相互作用させるという「タスク」をエージェントに確実に実行させることができる(図6(a)〜(c)参照)。
【0180】
第2実施形態の行動制御システム100によれば、オブジェクト(ボール)の予測位置軌道と、カウンターオブジェクト(ラケット)の位置軌道候補との時系列的な確率密度分布の重なり度合いが第1重なり度合いC1mとして算出される(図7/STEP231,図5(a)〜(c)参照)。また、オブジェクトの相互作用後予測位置軌道と、指定位置軌道との時系列的な確率密度分布の重なり度合いが第2重なり度合いC2mとして算出される(図7/STEP232,図8(a)〜(c)参照)。さらに、第1重なり度合いC1mおよび第2重なり度合いC2mに応じた総合重なり度合いCmが算出される(図7/STEP234参照)。
【0181】
そして、複数の位置軌道候補のうち、総合重なり度合いCmが最高となる一の位置軌道候補がカウンターオブジェクトの目標位置軌道として決定され、カウンターオブジェクトがこの目標位置軌道に動かされるようにエージェント(ロボット1)の行動計画が生成される(図7/STEP236,238参照)。
【0182】
第1重なり度合いC1mの高低は、カウンターオブジェクトとオブジェクトとが相互作用点候補xhit_cdt_mにおいて相互作用する確率の高低を表わしている。第2重なり度合いC2mの高低は、オブジェクトがカウンターオブジェクトと相互作用点候補xhit_cdt_mにおいて相互作用した後で指定位置軌道にしたがって変位する確率の高低を表わしている。したがって、これら2つの重なり度合いに応じた総合重なり度合いの高低は、カウンターオブジェクトとオブジェクトとを相互作用させるとともに、オブジェクトがカウンターオブジェクトと相互作用した後で指定位置軌道にしたがって変位する確率の高低を表わしている。
【0183】
このため、前記のように生成された行動計画にしたがってエージェントの行動が制御されることにより、カウンターオブジェクトを動かしてオブジェクトと相互作用させることにより、オブジェクトを指定位置軌道にしたがって変位させるという「タスク」をエージェントに確実に実行させることができる(図6(a)〜(c)参照)。
【0184】
さらに、カウンターオブジェクトの位置には当該確率密度分布の広がりに応じた変動または揺らぎが許容されるため、エージェントにもタスクを実行するという目的が達成される範囲で動作態様の変動が許容されうる。具体的には、エージェントにタスクを実行させる観点から必要性が高い相互作用時点(相互作用点候補xhit_cdt_m)においては、エージェントに動作態様の変動を禁止または制限することにより、エージェントによるタスクの実行の確実を図ることができる。その一方、エージェントにタスクを実行させる観点から必要性が低い時点においては、エージェントに比較的広い幅で動作態様の変動を許容することにより、エージェントにその構造上無理なまたは非効率的な動作を強いる事態が回避されうる。
【0185】
また、カウンターオブジェクトの位置軌道候補の生成基礎であるDBN(図13参照)により表わされる確率遷移モデルは、インストラクタがカウンターオブジェクトを動かしてオブジェクトと相互作用させる際の当該インストラクタの行動の特徴など、カウンターオブジェクトの模範位置軌道の形状特性を表わす因子にしたがっている。また、この確率遷移モデルは、カウンターオブジェクトの位置およびその1〜n階時間微分値(n=1, 2, ..)が連続的に変化するようなエージェントの動作を表わしている。
【0186】
このため、当該確率遷移モデルにしたがって生成されたカウンターオブジェクトの位置軌道候補に、状態変数の模範位置軌道の形状特性、および、空間的かつ時間的な連続性を持たせることができる。したがって、位置軌道候補のうち1つにしたがってエージェントの行動が制御されることにより、エージェントに模範的な動作特性を模倣または再現させながら、円滑な動作によりカウンターオブジェクトをオブジェクトと相互作用させることができる。
【0187】
比較例としてDBN(図13参照)において加速度α2および加加速度β2のノードが省略された上で位置軌道候補が生成された場合を考える。当該比較例によれば、図16(a)および(b)左側に示されているようにラケットの位置x2の変位速度v2および加速度α2が一時的に不連続となるような位置軌道候補が生成される。このため、ロボット1がこの位置軌道候補にしたがって腕部12等を動かした場合、腕部12および脚部14の動きの速度が急に変化する等、円滑さに欠けた動作を示すことになる。
【0188】
これに対して、本発明の行動制御システムによれば、図16(a)および(b)右側に示されているようにラケット位置x2の変位速度v2および加速度α2が連続となるような位置軌道候補が生成される。したがって、ロボット1がこの位置軌道候補にしたがって腕部12および脚部14等を円滑に動かしてタスクを実行することができることがわかる。
【0189】
(本発明の他の実施形態)
カウンターオブジェクトの複数の位置軌道候補のうち、オブジェクトの予測位置軌道との重なり度合いCi(第1実施形態)または総合重なり度合いCm(第2実施形態)が「最低」となる一の位置軌道候補がカウンターオブジェクトの目標位置軌道として選択されてもよい(図3/STEP136、図7/STEP236参照)。この場合もカウンターオブジェクトがこの目標位置軌道にしたがって動かされるようにエージェント(ロボット1)の行動計画が生成される(図3/STEP138、図7/STEP238参照)。
【0190】
これにより、カウンターオブジェクトの動きを調節することにより、カウンターオブジェクトとオブジェクトとの接触を回避するようにロボット1の動作が制御される。また、オブジェクトが指定位置軌道にしたがって変位するように、あえてカウンターオブジェクトをオブジェクトに接触させないようにロボット1の動作が制御されうる。
【0191】
第1実施形態または第2実施形態と、当該実施変形例との組み合わせにより、一のカウンターオブジェクトを、複数のオブジェクトのうち一部のオブジェクトと相互作用させる一方、他のオブジェクトとの相互作用を回避させるようにロボット1の動作が制御されうる。たとえば、前から2つのボールが飛んできたとき、ラケットが一方のボールに接触することを回避しながら、このラケットで他方のボールを打ち返すというタスクをロボット1に実行させることができる。
【0192】
そのほか、カウンターオブジェクトの複数の位置軌道候補のうち、オブジェクトの予測位置軌道との重なり度合いCiまたは総合重なり度合いCmが上位または下位にある所定数の位置軌道候補から一の位置軌道候補がカウンターオブジェクトの目標位置軌道として選択されてもよい。また、カウンターオブジェクトの複数の位置軌道候補のうち、オブジェクトの予測位置軌道との重なり度合いCiまたは総合重なり度合いCmが第1基準値以上または当該第1基準値よりも低い第2基準値以下である位置軌道候補から一の位置軌道候補がカウンターオブジェクトの目標位置軌道として選択されてもよい。
【0193】
これにより、カウンターオブジェクトの動きを調節することにより、カウンターオブジェクトとオブジェクトとの相互作用または離間の程度が調節されるようにロボット1の動作が制御される。たとえば、カウンターオブジェクトおよびオブジェクトを「当てる」等、強く相互作用させるのみならず、「かする」等、弱く相互作用させることができる。また、カウンターオブジェクトおよびオブジェクトを大きく離間させるのみならず、(カウンターオブジェクトの風圧がオブジェクトに作用する程度に)小さく離間させることができる。
【0194】
ラケット(カウンターオブジェクト)で動いているボール(オブジェクト)を打ち返すというタスクのほか、ロボット1(エージェント)の動作に伴って動かされるカウンターオブジェクトを動いているオブジェクトと相互作用させるさまざまなタスクが実行されるように、ロボット1の行動が制御されてもよい。
【0195】
たとえば、ロボット1がカウンターオブジェクトとしてのハンド13で落下している物体をつかむ、ロボット1がハンド13でよろめいている人間の身体を支える、または、ロボット1がカウンターオブジェクトとしての脚部14で動いているボールを蹴るなどのタスクを実行するように構成されていてもよい。
【0196】
相互作用時点候補よりも時系列的に前および後のそれぞれにおいて性質が異なる第1アトラクタR1(第1因子)および第2アトラクタR2(第2因子)のそれぞれにより第1モデルさらには確率遷移モデルが定義されてもよい。
【0197】
第1アトラクタR1は「ラケットを強く振ってボールに当てる」という動作の性質を表わすように定義され、第2アトラクタR2は「ラケットを軽く振る」という動作の性質を表わすように定義されてもよい。これにより、ラケットを動かしてオブジェクトと相互作用させるというタスクが実行される前後において、性質が異なる行動計画が生成されうる。具体的には、エージェントにタスクを実行させた後、タスク実行前の制限から解放された態様で行動させることができる。
【0198】
運動状態変数の模範位置軌道には、カウンターオブジェクトの模範位置軌道のみならず、手の位置、ひじの位置もしくは曲げ具合、または、肩の位置など、その他の運動状態変数の模範位置軌道も含まれていてもよい。手の位置等の模範位置軌道は、インストラクタの手等の動きをモーションキャプチャーシステムにより観測されることにより認識されうる(図15(a)〜(c)参照)。
【0199】
この場合、カウンターオブジェクトの位置に加えて、カウンターオブジェクトの速度および加速度、ならびに、カウンターオブジェクトの動きに関係するエージェントの指定箇所の位置、その変位速度および変位加速度のうち一部または全部がエージェントの「運動状態変数」の位置軌道候補が生成され、当該位置軌道候補のうちオブジェクトの予測位置軌道との重なり度合いが最高の一の位置軌道候補の一部が、カウンターオブジェクトの目標位置軌道として決定される。
【0200】
これにより、カウンターオブジェクトの位置の変化態様のみならず、ロボット1(エージェント)のハンド13の位置、肘関節機構の位置および屈曲角度ならびに肩関節機構の位置などの運動状態変数を、インストラクタによる模範的な動き(図15(a)〜(c)参照)にしたがった態様で変化させながら、ロボット1にタスクを実行させることができる。
【符号の説明】
【0201】
1‥ロボット(エージェント)、100‥行動制御システム、110‥第1演算処理要素、120‥第2演算処理要素、130‥第3演算処理要素、1000‥アクチュエータ。
【特許請求の範囲】
【請求項1】
行動計画にしたがってエージェントの行動を制御するシステムであって、
オブジェクトの時系列的な計測位置または推定位置に基づき、将来における前記オブジェクトの時系列的な予測位置の確率密度分布により表現されている前記オブジェクトの予測位置軌道を決定するように構成されている第1演算処理要素と、
前記エージェントの動作によってカウンターオブジェクトが到達可能な範囲において、前記オブジェクトの予測位置軌道に含まれる相互作用点候補と空間的かつ時系列的に一致する位置を含む、前記カウンターオブジェクトの時系列的な位置に対応する尤度を表現する確率密度分布により表現されている前記カウンターオブジェクトの位置軌道候補として生成するように構成されている第2演算処理要素と、
前記カウンターオブジェクトの複数の位置軌道候補から、前記オブジェクトの予測位置軌道との時系列的な確率密度分布の重なり度合いに応じて選択される一の位置軌道候補の平均位置軌道または中心位置軌道である前記カウンターオブジェクトの目標位置軌道に、前記カウンターオブジェクトの位置軌道を一致させるように前記行動計画を生成するように構成されている第3演算処理要素とを備えていることを特徴とする行動制御システム。
【請求項2】
請求項1記載の行動制御システムにおいて、
前記第3演算処理要素が、前記カウンターオブジェクトの複数の位置軌道候補から、前記オブジェクトの予測位置軌道との時系列的な確率密度分布の重なり度合いが最高または最低となるような前記一の位置軌道候補を選択するように構成されていることを特徴とする行動制御システム。
【請求項3】
請求項1または2記載の行動制御システムであって、
前記第2演算処理要素が、前記オブジェクトの予測位置軌道と、前記カウンターオブジェクトの複数の位置軌道候補のそれぞれとにしたがって、前記カウンターオブジェクトと前記オブジェクトとが前記相互作用点候補において相互作用したと仮定した場合における、前記オブジェクトの時系列的な予測位置の確率密度分布により表現されている前記オブジェクトの相互作用後予測位置軌道をさらに決定するように構成され、
前記第3演算処理要素が、前記カウンターオブジェクトの複数の位置軌道候補から、前記オブジェクトの予測位置軌道との時系列的な確率密度分布の重なり度合いに加えて、前記オブジェクトの相互作用後予測位置軌道と指定位置軌道との時系列的な確率密度分布の重なり度合いに応じて前記一の位置軌道候補を選択するように構成されていることを特徴とする行動制御システム。
【請求項4】
請求項3記載の行動制御システムにおいて、
前記第3演算処理要素が、前記カウンターオブジェクトの複数の位置軌道候補から、前記オブジェクトの予測位置軌道との時系列的な確率密度分布の重なり度合いと、前記オブジェクトの相互作用後予測位置軌道と前記指定位置軌道との時系列的な確率密度分布の重なり度合いとに応じた総合重なり度合いが最高または最低となるような前記一の位置軌道候補を選択するように構成されていることを特徴とする行動制御システム。
【請求項5】
請求項1〜4のうちいずれか1つ記載の行動制御システムにおいて、
前記第2演算処理要素が、前記相互作用点候補と空間的かつ時系列的に一致する前記カウンターオブジェクトの位置に対応する尤度を表現する確率密度分布の広がりが、他の位置に対応する尤度を表現する確率密度分布の広がりと比較して小さくなるように前記カウンターオブジェクトの位置軌道候補を生成するように構成されていることを特徴とする行動制御システム。
【請求項6】
請求項1〜5のうちいずれか1つに記載の行動制御システムにおいて、
前記第3演算処理要素が、前記相互作用点候補と時系列的に一致する時点を除いて前記重なり度合いを算出するように構成されていることを特徴とする行動制御システム。
【請求項7】
請求項1〜5のうちいずれか1つに記載の行動制御システムにおいて、
前記第3演算処理要素が、前記カウンターオブジェクトの位置軌道候補が有する確率密度分布の標準偏差または分散に応じた広がりを当該位置軌道候補が有する確率密度分布群のそれぞれに対して加え、または、当該位置軌道候補が有する確率密度分布群のそれぞれの広がりを当該標準偏差または分散に応じた広がりに補正し、その上で前記重なり度合いを算出するように構成されていることを特徴とする行動制御システム。
【請求項8】
請求項1〜7のうちいずれか1つに記載の行動制御システムにおいて、
前記第2演算処理要素が、前記カウンターオブジェクトの位置の模範位置軌道の形状特性を表わす因子にしたがい、前記カウンターオブジェクトの位置およびその1〜n階時間微分値(n=1,2,‥)が連続的に変化する確率遷移モデルにしたがって前記カウンターオブジェクトの位置軌道候補を生成するように構成されていることを特徴とする行動制御システム。
【請求項9】
請求項8記載の行動制御システムにおいて、
前記第2演算処理要素が、前記確率遷移モデルにしたがって、前記カウンターオブジェクトの時系列的に順方向の推定位置の確率密度分布により表現されている順方向推定位置軌道を生成する一方、前記カウンターオブジェクトの時系列的に逆方向の推定位置の確率密度分布により表現されている逆方向推定位置軌道を生成した上で、前記順方向推定位置軌道および前記逆方向推定位置軌道のそれぞれの確率密度分布を時系列的に合成することにより、時系列的な当該合成確率密度分布により表現されている前記カウンターオブジェクトの位置軌道候補を生成するように構成されていることを特徴とする行動制御システム。
【請求項10】
請求項8または9記載の行動制御システムにおいて、
前記第2演算処理要素が、前記相互作用点候補よりも時系列的に前において、前記カウンターオブジェクトを前記オブジェクトと相互作用させる観点から定義されている第1因子が前記因子として採用される一方、前記相互作用点候補よりも時系列的に後において、前記第1因子とは異なる第2因子が前記因子として採用されている前記確率遷移モデルにしたがって前記カウンターオブジェクトの位置軌道候補を生成するように構成されていることを特徴とする行動制御システム。
【請求項11】
アクチュエータと、請求項1〜10のうちいずれか1つに記載の行動制御システムとを備え、前記行動制御システムにより前記アクチュエータの動作が制御されることにより、前記エージェントとしての行動が制御されるように構成されていることを特徴とするロボット。
【請求項1】
行動計画にしたがってエージェントの行動を制御するシステムであって、
オブジェクトの時系列的な計測位置または推定位置に基づき、将来における前記オブジェクトの時系列的な予測位置の確率密度分布により表現されている前記オブジェクトの予測位置軌道を決定するように構成されている第1演算処理要素と、
前記エージェントの動作によってカウンターオブジェクトが到達可能な範囲において、前記オブジェクトの予測位置軌道に含まれる相互作用点候補と空間的かつ時系列的に一致する位置を含む、前記カウンターオブジェクトの時系列的な位置に対応する尤度を表現する確率密度分布により表現されている前記カウンターオブジェクトの位置軌道候補として生成するように構成されている第2演算処理要素と、
前記カウンターオブジェクトの複数の位置軌道候補から、前記オブジェクトの予測位置軌道との時系列的な確率密度分布の重なり度合いに応じて選択される一の位置軌道候補の平均位置軌道または中心位置軌道である前記カウンターオブジェクトの目標位置軌道に、前記カウンターオブジェクトの位置軌道を一致させるように前記行動計画を生成するように構成されている第3演算処理要素とを備えていることを特徴とする行動制御システム。
【請求項2】
請求項1記載の行動制御システムにおいて、
前記第3演算処理要素が、前記カウンターオブジェクトの複数の位置軌道候補から、前記オブジェクトの予測位置軌道との時系列的な確率密度分布の重なり度合いが最高または最低となるような前記一の位置軌道候補を選択するように構成されていることを特徴とする行動制御システム。
【請求項3】
請求項1または2記載の行動制御システムであって、
前記第2演算処理要素が、前記オブジェクトの予測位置軌道と、前記カウンターオブジェクトの複数の位置軌道候補のそれぞれとにしたがって、前記カウンターオブジェクトと前記オブジェクトとが前記相互作用点候補において相互作用したと仮定した場合における、前記オブジェクトの時系列的な予測位置の確率密度分布により表現されている前記オブジェクトの相互作用後予測位置軌道をさらに決定するように構成され、
前記第3演算処理要素が、前記カウンターオブジェクトの複数の位置軌道候補から、前記オブジェクトの予測位置軌道との時系列的な確率密度分布の重なり度合いに加えて、前記オブジェクトの相互作用後予測位置軌道と指定位置軌道との時系列的な確率密度分布の重なり度合いに応じて前記一の位置軌道候補を選択するように構成されていることを特徴とする行動制御システム。
【請求項4】
請求項3記載の行動制御システムにおいて、
前記第3演算処理要素が、前記カウンターオブジェクトの複数の位置軌道候補から、前記オブジェクトの予測位置軌道との時系列的な確率密度分布の重なり度合いと、前記オブジェクトの相互作用後予測位置軌道と前記指定位置軌道との時系列的な確率密度分布の重なり度合いとに応じた総合重なり度合いが最高または最低となるような前記一の位置軌道候補を選択するように構成されていることを特徴とする行動制御システム。
【請求項5】
請求項1〜4のうちいずれか1つ記載の行動制御システムにおいて、
前記第2演算処理要素が、前記相互作用点候補と空間的かつ時系列的に一致する前記カウンターオブジェクトの位置に対応する尤度を表現する確率密度分布の広がりが、他の位置に対応する尤度を表現する確率密度分布の広がりと比較して小さくなるように前記カウンターオブジェクトの位置軌道候補を生成するように構成されていることを特徴とする行動制御システム。
【請求項6】
請求項1〜5のうちいずれか1つに記載の行動制御システムにおいて、
前記第3演算処理要素が、前記相互作用点候補と時系列的に一致する時点を除いて前記重なり度合いを算出するように構成されていることを特徴とする行動制御システム。
【請求項7】
請求項1〜5のうちいずれか1つに記載の行動制御システムにおいて、
前記第3演算処理要素が、前記カウンターオブジェクトの位置軌道候補が有する確率密度分布の標準偏差または分散に応じた広がりを当該位置軌道候補が有する確率密度分布群のそれぞれに対して加え、または、当該位置軌道候補が有する確率密度分布群のそれぞれの広がりを当該標準偏差または分散に応じた広がりに補正し、その上で前記重なり度合いを算出するように構成されていることを特徴とする行動制御システム。
【請求項8】
請求項1〜7のうちいずれか1つに記載の行動制御システムにおいて、
前記第2演算処理要素が、前記カウンターオブジェクトの位置の模範位置軌道の形状特性を表わす因子にしたがい、前記カウンターオブジェクトの位置およびその1〜n階時間微分値(n=1,2,‥)が連続的に変化する確率遷移モデルにしたがって前記カウンターオブジェクトの位置軌道候補を生成するように構成されていることを特徴とする行動制御システム。
【請求項9】
請求項8記載の行動制御システムにおいて、
前記第2演算処理要素が、前記確率遷移モデルにしたがって、前記カウンターオブジェクトの時系列的に順方向の推定位置の確率密度分布により表現されている順方向推定位置軌道を生成する一方、前記カウンターオブジェクトの時系列的に逆方向の推定位置の確率密度分布により表現されている逆方向推定位置軌道を生成した上で、前記順方向推定位置軌道および前記逆方向推定位置軌道のそれぞれの確率密度分布を時系列的に合成することにより、時系列的な当該合成確率密度分布により表現されている前記カウンターオブジェクトの位置軌道候補を生成するように構成されていることを特徴とする行動制御システム。
【請求項10】
請求項8または9記載の行動制御システムにおいて、
前記第2演算処理要素が、前記相互作用点候補よりも時系列的に前において、前記カウンターオブジェクトを前記オブジェクトと相互作用させる観点から定義されている第1因子が前記因子として採用される一方、前記相互作用点候補よりも時系列的に後において、前記第1因子とは異なる第2因子が前記因子として採用されている前記確率遷移モデルにしたがって前記カウンターオブジェクトの位置軌道候補を生成するように構成されていることを特徴とする行動制御システム。
【請求項11】
アクチュエータと、請求項1〜10のうちいずれか1つに記載の行動制御システムとを備え、前記行動制御システムにより前記アクチュエータの動作が制御されることにより、前記エージェントとしての行動が制御されるように構成されていることを特徴とするロボット。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図15】
【図16】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図15】
【図16】
【図14】
【公開番号】特開2011−148081(P2011−148081A)
【公開日】平成23年8月4日(2011.8.4)
【国際特許分類】
【出願番号】特願2010−272413(P2010−272413)
【出願日】平成22年12月7日(2010.12.7)
【出願人】(000005326)本田技研工業株式会社 (23,863)
【Fターム(参考)】
【公開日】平成23年8月4日(2011.8.4)
【国際特許分類】
【出願日】平成22年12月7日(2010.12.7)
【出願人】(000005326)本田技研工業株式会社 (23,863)
【Fターム(参考)】
[ Back to top ]