(57)【要約】【課題】エージェントの行動の連続性を確保しながら、当該エージェントに複数の異なるサブタスクを連続的に実行させることができるシステムを提供する。【解決手段】オブジェクトの状態変数が確率変数として表現されている確率遷移モデルにしたがって、オブジェクトの状態変数の時系列を表わす複数の状態変数軌道が生成される。確率遷移モデルは、ディリクレ分布により確率分布が表現されている各サブタスクの実行確率に応じて当該状態変数の遷移態様が定まるように定義されている。複数の状態変数軌道のうち、前記確率遷移モデル全体の結合確率を最大化又は最適化する１つの状態変数軌道（目標状態変数軌道）にしたがってオブジェクト２の状態が遷移するように、エージェント１の動作が制御される。【選択図】  図２
2014004640.tif 000002
【特許請求の範囲】
【請求項１】
エージェントにオブジェクトを対象とする複数のサブタスクを選択的に実行させるように当該エージェントの行動を制御するシステムであって、
前記オブジェクトの状態変数が確率変数として表現され、かつ、ディリクレ分布により確率分布が表現されている前記複数のサブタスクのそれぞれの実行確率に応じて当該状態変数の遷移態様が定まるような確率遷移モデルにしたがって、前記オブジェクトの状態変数の時系列を表わす複数の状態変数軌道を生成するように構成されている第１演算処理要素と、
前記第１演算処理要素により生成された前記複数の状態変数軌道のうち、前記確率遷移モデル全体の結合確率を最大化又は最適化する１つの状態変数軌道である目標状態変数軌道にしたがって前記オブジェクトの状態が遷移するように、前記エージェントの動作を制御するように構成されている第２演算処理要素と、を備えていることを特徴とする行動制御システム。
【請求項２】
請求項１記載の行動制御システムにおいて、
前記第１演算処理要素が、前記複数のサブタスクのうち実行順位が第ｉ位（ｉ＝１，２，‥）のサブタスク及び第ｉ＋１位のサブタスクのそれぞれの実行確率に応じて前記状態変数の遷移態様が定まるような第ｉ確率遷移モデルにしたがって、前記オブジェクトの状態変数の時系列を表わす複数の第ｉ状態変数軌道を生成するように構成され、
前記第２演算処理要素が、前記第１演算処理要素により生成された前記複数の第ｉ状態変数軌道のうち、前記第ｉ確率遷移モデル全体の結合確率を最大化又は最適化する１つの第ｉ状態変数軌道を第ｉ目標状態変数軌道として生成するとともに、前記第ｉ目標状態変数軌道の接続軌道を前記目標状態変数軌道として生成するように構成されていることを特徴とする行動制御システム。
【請求項３】
請求項１又は２記載の行動制御システムにおいて、
前記第１演算処理要素が、前記複数のサブタスクのそれぞれの実行確率に加えて、前記オブジェクトの環境因子に応じて前記状態変数の遷移態様が定まるような確率遷移モデルであって、前記環境因子が異なる複数の確率遷移モデルのそれぞれにしたがって、前記複数の状態変数軌道を生成するように構成され、
前記第２演算処理要素が、前記第１演算処理要素により生成された前記複数の状態変数軌道のうち、前記確率遷移モデル全体の結合確率を最大化又は最適化する１つの状態変数軌道の生成基礎となった１つの確率遷移モデルにおける環境因子を実際の環境因子として推定するように構成されていることを特徴とする行動制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットに複数のサブタスクを実行させるように、当該ロボットの行動を制御するシステムに関する。
【背景技術】
【０００２】
エージェントの行動の連続性を確保するため、その行動を定義する状態変数が連続的な確率変数により定義され、当該状態変数の軌道にしたがって当該エージェントの行動が制御される技術的手法が提案されている（特許文献１及び２参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−００５７６１号公報
【特許文献２】特開２０１１−１４８０８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、エージェントに一連の異なるサブタスクよりなるタスクを連続的に実行させる場合、サブタスクの切り替え時点を適応的に設定しながら状態変数の軌道を生成することは困難である。このため、当該サブタスクの切り替え時にエージェントの動作が一時的に停止する等、その行動の連続性が損なわれる可能性がある。
【０００５】
そこで、本発明は、エージェントの行動の連続性を確保しながら、当該エージェントに複数の異なるサブタスクを連続的に実行させることができるシステムを提供することを解決課題とする。
【課題を解決するための手段】
【０００６】
本発明の行動制御システムは、エージェントにオブジェクトを対象とする複数のサブタスクを選択的に実行させるように当該エージェントの行動を制御するシステムであって、前記オブジェクトの状態変数が確率変数として表現され、かつ、ディリクレ分布により確率分布が表現されている前記複数のサブタスクのそれぞれの実行確率に応じて当該状態変数の遷移態様が定まるような確率遷移モデルにしたがって、前記オブジェクトの状態変数の時系列を表わす複数の状態変数軌道を生成するように構成されている第１演算処理要素と、前記第１演算処理要素により生成された前記複数の状態変数軌道のうち、前記確率遷移モデル全体の結合確率を最大化又は最適化する１つの状態変数軌道である目標状態変数軌道にしたがって前記オブジェクトの状態が遷移するように、前記エージェントの動作を制御するように構成されている第２演算処理要素と、を備えていることを特徴とする。
【０００７】
本発明の行動制御システムによれば、ディリクレ分布により確率分布が表現されている複数のサブタスクのそれぞれの実行確率に応じて、オブジェクトの状態変数の遷移態様が定まるように定義されている確率遷移モデルにしたがって、当該状態変数の時系列である複数の状態変数軌道が生成される。これにより、ディリクレ分布の時系列的な変化態様の相違に応じて、エージェントにより選択的に実行されるサブタスクのさまざまな変化態様が勘案された形で複数の状態変数軌道が生成される。
【０００８】
複数の状態変数軌道のうち、エージェントがしたがう１つの状態変数軌道は、確率遷移モデルの結合確率を最大化又は最適化するものが目標状態変数軌道として生成される。目標状態変数軌道は前記のように確率変数モデルを基礎として生成されている。このため、オブジェクトの状態を表わす状態変数の連続性が確保されるように、当該オブジェクトとの相互作用を伴うエージェントの行動が制御されうる。その結果、各サブタスクの実行可能性が時系列的にエージェントの行動の連続性を確保しながら、当該エージェントに複数の異なるサブタスクを連続的に実行させることができる。
【０００９】
前記第１演算処理要素が、前記複数のサブタスクのうち実行順位が第ｉ位（ｉ＝１，２，‥）のサブタスク及び第ｉ＋１位のサブタスクのそれぞれの実行確率に応じて前記状態変数の遷移態様が定まるような第ｉ確率遷移モデルにしたがって、前記オブジェクトの状態変数の時系列を表わす複数の第ｉ状態変数軌道を生成するように構成され、前記第２演算処理要素が、前記第１演算処理要素により生成された前記複数の第ｉ状態変数軌道のうち、前記第ｉ確率遷移モデル全体の結合確率を最大化又は最適化する１つの第ｉ状態変数軌道を第ｉ目標状態変数軌道として生成するとともに、前記第ｉ目標状態変数軌道の接続軌道を前記目標状態変数軌道として生成するように構成されていることが好ましい。
【００１０】
当該構成の行動制御システムによれば、複数のサブタスクのうち２つのサブタスクのみが各確率遷移モデルにおいて勘案される。このため、当該各確率遷移モデルにしたがった状態変数軌道の生成に要する演算処理負荷の軽減又は演算処理時間の短縮を図りつつ、エージェントの行動の連続性を確保しながら、当該エージェントに複数の異なるサブタスクを連続的に実行させることができる。
【００１１】
前記第１演算処理要素が、前記複数のサブタスクのそれぞれの実行確率に加えて、前記オブジェクトの環境因子に応じて前記状態変数の遷移態様が定まるような確率遷移モデルであって、前記環境因子が異なる複数の確率遷移モデルのそれぞれにしたがって、前記複数の状態変数軌道を生成するように構成され、前記第２演算処理要素が、前記第１演算処理要素により生成された前記複数の状態変数軌道のうち前記確率遷移モデル全体の結合確率を最大化又は最適化する１つの状態変数軌道の生成基礎となった１つの確率遷移モデルにおける環境因子を実際の環境因子として推定するように構成されていることが好ましい。
【００１２】
当該構成の行動制御システムによれば、不確定要素である環境因子が目標状態変数軌道の生成結果に基づいて高精度で推定されうる。当該推定結果に基づき、以後の確率遷移モデルが選定又は構築されることにより、実際の環境因子に応じたオブジェクトの状態が反映された形態の目標状態変数軌道が生成されうる。
【図面の簡単な説明】
【００１３】
【図１】本発明の行動制御システムの構成説明図。
【図２】サブタスクの概要説明図（第１実施形態）。
【図３】確率遷移モデル（ＤＢＮ）に関する説明図（第１実施形態）。
【図４】目標状態変数軌道の計算結果に関する説明図（第１実施形態）。
【図５】サブタスクの概要説明図（第２実施形態）。
【図６】確率遷移モデル（ＤＢＮ）に関する説明図（第２実施形態）。
【図７】目標状態変数軌道の計算結果に関する説明図（第２実施形態）。
【発明を実施するための形態】
【００１４】
（構成）
図１に示されている行動制御システム１０は、エージェント１に搭載されているアクチュエータの動作を制御することにより、当該エージェント１の行動を制御するように構成されている。行動制御システム１０は、例えば、エージェント１に搭載されている電子制御ユニット（ＣＰＵ，ＲＯＭ，ＲＡＭ，Ｉ／Ｏ回路等により構成されている。）又はコンピュータにより構成されている。
【００１５】
エージェント１は、例えば、アクチュエータから伝達される力により、関節機構を介して連結されている複数のリンクにより構成され、アクチュエータから伝達される力によって当該関節機構において屈伸することができるように構成されているアームロボットである。関節機構の数及び各関節機構の自由度（１〜３）は任意に設計されうる。アームロボットは、ヒューマノイドロボット（再表０３／０９０９７８号公報及び再表０３／０９０９７９号公報等参照）のアームであってもよい。
【００１６】
行動制御システム１０は、第１演算処理要素１１と、第２演算処理要素１２とを備え、オブジェクト２の状態を表わす状態変数が目標状態変数軌道にしたがって時系列的に変化するように、エージェント１に複数のサブタスクを選択的に実行させるように構成されている。
【００１７】
第１演算処理要素１１は、確率遷移モデルにしたがって、オブジェクト２の状態変数の時系列を表わす複数の状態変数軌道を生成するように構成されている。確率遷移モデルは、オブジェクトの状態変数が確率変数として表現され、かつ、ディリクレ分布により確率分布が表現されている複数のサブタスクのそれぞれの実行確率に応じて当該状態変数の遷移態様が定まるように定義されている。
【００１８】
第２演算処理要素１２は、目標状態変数軌道にしたがってオブジェクト２の状態が遷移するように、エージェント１の動作を制御するよう構成されている。目標状態変数は、第１演算処理要素１１により生成された複数の状態変数軌道のうち、確率遷移モデル全体の結合確率を最大化又は最適化する１つの状態変数軌道である。
【００１９】
「状態変数」とは、スカラー及びベクトルを包含する概念であり、確率分布変数を包含する概念である。状態変数の位置は、当該状態変数の次元により定義される次元を有するユークリッド空間又はヒルベルト空間における位置を意味する。
【００２０】
行動制御システム１０並びにその構成要素である第１演算処理要素１１及び第２演算処理要素１２は、メモリと、当該メモリから必要なデータ及びプログラムを読み出して担当する演算処理を実行する演算処理装置（ＣＰＵ）とにより構成されている。「構成されている」とは「プログラムされている」という概念を包含する。
【００２１】
（機能）
前記構成の行動制御システム１０により、エージェント１とオブジェクト２との相互作用を伴う複数の異なるサブタスクをエージェント１に選択的に実行させるように制御演算処理が実行される。
【００２２】
（第１実施形態）
複数のサブタスクとして、エージェント１としてのアームロボットの先端部に取り付けられているエンドエフェクタにより、ｘｙ座標系においてオブジェクト２を＋ｘ方向に所定量だけ動かす第１サブタスクと、オブジェクト２を＋ｙ方向に所定量だけ動かす第２サブタスクとが採用される（図２（ａ）（ｂ）参照）。オブジェクト２の初期状態はｘｙ座標系の原点座標値（０，０）により定義されている。
【００２３】
（確率遷移モデル）
確率遷移モデルは、表１に示されているオブジェクト２の状態変数及び表２に示されている実行サブタスクを表わす変数により定義されている。
【００２４】
【表１】
2014004640.tif 000003
【００２５】
【表２】
2014004640.tif 000004
【００２６】
具体的には、確率遷移モデルは、時刻ｔ＝ｋ（正確には、時刻ｔ＝０を基準とする演算処理の実行回数ｋと、当該演算処理周期Ｔとの積ｋ×Ｔを意味する。）における前記変数に基づいて関係式（１０１）〜（１０２）により定義されている。
【００２７】
x(k+1)=x(k)+S1δx(k+1) ..(101)。
【００２８】
y(k+1)=y(k)+S2δy(k+1) ..(102)。
【００２９】
関係式（１０１）及び（１０２）のそれぞれは、オブジェクト２のｘ座標値及びｙ座標値が連続的又は円滑に変化する連続確率変数であることを表わしている。
【００３０】
第１及び第２サブタスクは同時には実行されえない又は発生し得ない事象であるため、各サブタスクの実行確率ｑiはディリクレ分布（本実施形態では２変数なのでベータ分布）にしたがって評価又は算定される。各係数Ｓ1及びＳ2は、ディリクレ分布により確率分布が表現されている第１及び第２サブタスクのそれぞれの実行確率ｑiに応じて定まり、その値によって当該状態変数の遷移態様が定まる。
【００３１】
関係式（１０１）及び（１０２）における係数Ｓ1及びＳ2のそれぞれは、表２に示されているように、第１及び第２サブタスクのそれぞれが実行されている確率の高低に応じて「１」又は「０」となるように定義されている。
【００３２】
「Ｓ1」は、ディリクレ分布における第１サブタスクの実行確率ｑ1が最大になる場合には「１」となる一方、その他の場合は「０」となるように定義されている。「Ｓ2」は、ディリクレ分布における第２サブタスクの実行確率ｑ2が最大になる場合には「１」となる一方、その他の場合は「０」となるように定義されている。
【００３３】
確率遷移モデルは、図３に示されているダイナミクスベイジアンネットワーク（ＤＢＮ）により表現される。ＤＢＮによれば関係式（１０１）及び（１０２）が、各時刻ｋにおける状態変数を表わすノード（円）及び条件付き確率によりこれらをつなぐ矢印により表現されている。
【００３４】
関係式（１０１）及び（１０２）のそれぞれに対応する条件付き確率は、関係式（１１１）及び（１１２）のそれぞれにより表現される。
【００３５】
P(x(k+1)|x(k), S(k+1))=N(x(k)+S1δx(k+1), Σx) ..(111)。
【００３６】
P(y(k+1)|y(k), S(k+1))=N(y(k)+S2δy(k+1), Σy) ..(112)。
【００３７】
関係式（１１１）及び（１１２）のそれぞれにおける状態変数ノードδＰは、関係式（１２１）及び（１２２）により表現される。
【００３８】
P(δx(k))=N(0,e-6) ..(121)。
【００３９】
P(δy(k))=N(0,e-6) ..(122)。
【００４０】
第１演算処理要素１１により、ＤＢＮにより表現される確率遷移モデルにしたがって複数の状態変数軌道が生成される。ＤＢＮにおけるノードの推定方法としては、Loopy Belief Propagation, variable elimination, Junction Tree, Impartance sampling, Hugin Algorithm, Shafer-Shanoy Algorithm, variational message passing, gibbs sampling等の他の方法が採用されてもよい。
【００４１】
例えば、ディリクレ分布による各サブタスクの実行確率（ｑ1，ｑ2）がｔ＝ｔ1→ｔ2→ｔ3→ｔ4という時間遷移とともに図２（ａ）に棒グラフで示されているように変化する場合、係数（Ｓ1，Ｓ2）は（１，０）→（０，１）→（１，０）→（０，１）と遷移する（表２参照）。また、ディリクレ分布による各サブタスクの実行確率（ｑ1，ｑ2）がｔ＝ｔ1→ｔ2→ｔ3→ｔ4という時間遷移とともに図２（ｂ）に棒グラフ示されているように変化する場合、係数（Ｓ1，Ｓ2）は（１，０）→（１，０）→（０，１）→（１，０）と遷移する。これらのようなさまざまな遷移態様のそれぞれについてノードが推定されることにより、複数の状態変数軌道が生成される（図２（ａ）（ｂ）における矢印群参照）。
【００４２】
第２演算処理要素１２により、第１演算処理要素１１により生成された複数の状態変数軌道のうち、確率遷移モデルの結合確率を最大化又は最適化する１つの状態変数軌道である目標状態変数軌道にしたがってオブジェクト２の状態が遷移するようにエージェント１の動作が制御される。これにより、エージェント１が第１及び第２サブタスクを選択的に実行する。
【００４３】
オブジェクト２の状態変数の値はエージェント１が有するセンサ群により測定され、当該測定値が目標状態変数軌道により表わされる目標値（Goal）に一致するように、エージェント１を構成するアクチュエータの動作がフィードバック制御される。
【００４４】
（計算例）
行動制御システム１０の演算処理負荷軽減の観点から、第１サブタスクが実行された後、第２サブタスクが実行されるという規則にしたがって、オブジェクト２の状態変数（ｘ，ｙ）を図４（ａ）〜（ｃ）の右側に示されているゴール（サブゴール）Goalに到達させるための状態変数軌道が計算された。
【００４５】
図４（ａ）〜（ｃ）のそれぞれの左側には、第１及び第２サブタスクのそれぞれの実行確率分布の変化態様が示されている。横軸は時刻ｋを表わし、縦軸は各サブタスクが実行される確率ｑiを表わしている。第１サブタスクの実行確率分布が低明度で描画され、最大確率（以下「第１実行確率」という。）が「○」により表わされている。同様に、第２サブタスクの実行確率分布が上下方向に延びる高明度で表わされ、最大確率（以下「第２実行確率」という。）が「●」により表わされている。
【００４６】
初期状態（ｋ＝１）におけるオブジェクト２の位置は予め原点位置に設定されているので、各確率分布の広がりは０である一方、時間経過に伴って各確率分布の広がりが変化する。これは、第１サブタスクを実行することが結果的に選択されたとしても、その選択に至るまでに第２サブタスクの実行についても同時に勘案されていることを意味する。すなわち、図２（ａ）及び（ｂ）に示されている棒グラフにより表現されているように、第１サブタスクの実行確率ｑ1及び第２サブタスクの実行確率ｑ2の両方が定常的に勘案されていることを意味する。
【００４７】
図４（ａ）左側に示されているように、第１実行確率はｋ＝１〜１６では第２実行確率より高いが、ｋ＝１７〜３０では第２実行確率より低い。これに応じて、図４（ａ）右側に示されているように、エージェント１にオブジェクト２の状態変数（ｘ，ｙ）が（０．２，０）に変化するまで第１サブタスクを実行させ、ｋ＝１６〜１７の間にサブタスクを切り替えさせた後、オブジェクト２の状態変数（ｘ，ｙ）が（０．２，０．２）に変化するまで第２サブタスクを実行させるようなオブジェクト２の目標状態変数軌道が生成される。目標状態変数軌道は、図４（ａ）右側において実線により示されているように、分布幅を有する確率分布により表現される。
【００４８】
図４（ｂ）右側に示されているように、エージェント１にオブジェクト２の状態変数（ｘ，ｙ）が（０．１，０）に変化するまで第１サブタスクを実行させ、ｋ＝１０〜１１の間にサブタスクを切り替えさせた後、オブジェクト２の状態変数（ｘ，ｙ）が（０．１，０．４）に変化するまで第２サブタスクを実行させるようなオブジェクト２の目標状態変数軌道が生成される。
【００４９】
図４（ｃ）右側に示されているように、エージェント１にオブジェクト２の状態変数（ｘ，ｙ）が（０．４，０）に変化するまでエージェント１に第１サブタスクを実行させ、ｋ＝２３〜２４の間にサブタスクを切り替えさせた後、オブジェクト２の状態変数（ｘ，ｙ）が（０．４，０．１）に変化するまで第２サブタスクを実行させるようなオブジェクト２の目標状態変数軌道が生成される。
【００５０】
（第２実施形態）
第１サブタスク（roll）は、第１床面に置かれているオブジェクト２の下面（底面）の一辺を軸線として、当該下面を第１床面から持ち上げるように当該オブジェクト２を傾動させるタスクである（図５（ａ）参照）。「床面」とは、建造物等の床面に限定されず、机上面、路面又は地面等のあらゆる構造物の上面を意味する。
【００５１】
第２サブタスク（slide）は、第１サブタスクの実行により実現されたオブジェクト２の傾動姿勢を維持しながら、下面の一辺が第１床面に当接した状態の当該オブジェクト２を並進移動させるタスクである（図５（ｂ）参照）。
【００５２】
第３サブタスク（hump）は、オブジェクト２の下面において、第１床面と、これより一段高い第２床面との段差部分の縁に当接している線分を軸線として、当該下面の一部を第２床面に当接させるように当該オブジェクト２を傾動させるタスクである。第３サブタスクにおけるオブジェクト２の傾動方向は、第１サブタスクにおけるオブジェクト２の傾動方向と反対である（図５（ｃ）参照）。
【００５３】
第４サブタスク（push）は、下面の一部が第２床面に当接している状態のオブジェクト２を並進移動させるタスクである（図５（ｄ）参照）。
【００５４】
複数のサブタスクは、エージェント１としてのアームロボットの先端部に取り付けられているエンドエフェクタを、略直方体状のオブジェクト２の上面に当接させた状態で実行される。エージェント１の行動は、エンドエフェクタの位置及びオブジェクト２に対する作用力の軌道にしたがって制御される。
【００５５】
エンドエフェクタの位置（力の作用点位置）は、例えば、手の平部から延設されている複数の指機構を備えているロボットハンドの当該手の平部又は一の指機構の先端部（指先）の位置により定義されている。
【００５６】
（確率遷移モデル）
確率遷移モデルは、表３に示されているオブジェクト２の状態変数及び表４に示されている実行サブタスクを表わす変数により定義されている。
【００５７】
【表３】
2014004640.tif 000005
【００５８】
【表４】
2014004640.tif 000006
【００５９】
具体的には、確率遷移モデルは、時刻ｔ＝ｋ（正確には、時刻ｔ＝０を基準とする演算処理の実行回数ｋと、当該演算処理周期Ｔとの積ｋ×Ｔを意味する。）における前記変数に基づいて関係式（２０１）〜（２０７）により定義されている。
【００６０】
Pc(k+1)=R(k){Pc(k)-Pp(k)}+Pp(k)+S2δP(k+1),
R(k)={rij}, r11=cosδθ, r12=-sinδθ, r21=sinδθ, r22=cosδθ ..(201)。
【００６１】
Pg(k+1)=R(k){Pg(k)-Pp(k)}+Pp(k)+S2δP(k+1) ..(202)。
【００６２】
Pp(k+1)=(1-S3)Pp(k)+S3Pe(k)+S2δP(k+1) ..(203)。
【００６３】
θ(k+1)=θ(k)+S1δθ(k+1) ..(204)。
【００６４】
Pe(k+1)=Pe(k) ..(205)。
【００６５】
fx(k)=μfN(k), fz(k)=fN(k)-mg ..(206)。
【００６６】
mg(xg(k)-xp(k))+fx(k)(zc(k)-zp(k))+fz(k)(xc(k)-xp(k))=0 ..(207)。
【００６７】
関係式（２０１）〜（２０３）のそれぞれは、各位置Ｐc、Ｐp及びＰgが連続的又は円滑に変化する連続確率変数であることを表わしている。Ｒはオブジェクト２の傾動量δθを各位置Ｐc、Ｐp及びＰgの変動量に変換するための行列である。関係式（２０４）は、角度θが連続的又は円滑に変化する連続確率変数であることを表わしている。関係式（２０５）は、第１及び第２床面の段差部分の縁位置が不変であることを意味している。関係式（２０６）は、オブジェクト２に作用する力が釣り合っていることを表わしている。関係式（２０７）は、オブジェクト２に作用する位置Ｐp回りのモーメントが釣り合っていることを表わしている。
【００６８】
第１〜第４サブタスクは同時には実行されえない又は発生し得ない事象であるため、各サブタスクの実行確率ｑiはディリクレ分布関数にしたがって評価又は算定される。各係数Ｓ1〜Ｓ3は、ディリクレ分布により確率分布が表現されている複数のサブタスクのそれぞれの実行確率ｑiに応じて定まり、その値によって当該状態変数の遷移態様を定めるものである。
【００６９】
ディリクレ分布関数は、連続型の分布関数であり、ベータ分布が拡張かつ一般化された多変量ベータ分布を意味する。ディリクレ分布の確率密度関数Ｐ（^Ｑ，^Ｋ）により、同時に発生することのないＮ個の事象（本実施形態では４つのサブタスク）のそれぞれがｋi−１回（ｉ＝１，２，‥Ｎ）発生したときに、各事象が発生する確率がｑiである確率が与えられる。「ｋi」はハイパーパラメータ（パラメータのパラメータ）であり、整数であってもなくてもよい。
【００７０】
ベクトル^Ｋ＝（ｋ1，‥ｋi，‥ｋN）をパラメータとし、かつ、実数ベクトル^Ｑ＝（ｑ1，‥ｑi，‥ｑN）を確率変数とするディリクレ分布の確率密度関数Ｐ（^Ｑ，^Ｋ）は関係式（２１）により定義される。
【００７１】
P(^Q,^K)=(1/Z)πi=1~Nqiki-1 ..(21)。
【００７２】
ここで「Ｚ」は多変量に拡張されたベータ関数であり、ガンマ関数Γを用いて関係式（２２）により定義される。
【００７３】
Z=πi=1~NΓ(ki)/Γ(Σi=1~Nki) ..(22)。
【００７４】
ディリクレ分布により、試行回数が無限大である場合における各事象の発生の相対頻度ｑiの、試行回数が有限である場合のずれが表わされる。各事象が発生する確率ｑiの期待値Ｅ［ｑi］は関係式（２３）により表わされる。当該確率ｑiの分散Ｖ［ｑi］は関係式（２４）により表わされる。
【００７５】
E[qi]=ki/Σi=1~Nki ..(23)。
【００７６】
V[qi]=ki/Σj=1~N(exclude j)/{(Σi=1~Nki)2(1+Σi=1~Nki)} ..(24)。
【００７７】
関係式（２０１）〜（２０４）における係数Ｓ1〜Ｓ3のそれぞれは、表２に示されているように、第１〜第４サブタスクのそれぞれが実行されている確率の高低に応じて「１」又は「０」となるように定義されている。
【００７８】
「Ｓ1」は、ディリクレ分布における第１サブタスクの実行確率ｑ1又は第３サブタスクの実行確率ｑ3が最大になる場合には「１」となる一方、その他の場合は「０」となるように定義されている。「Ｓ2」は、ディリクレ分布における第２サブタスクの実行確率ｑ2又は第４サブタスクの実行確率ｑ4が最大になる場合には「１」となる一方、その他の場合は「０」となるように定義されている。「Ｓ3」は、ディリクレ分布における第３サブタスクの実行確率ｑ3が最大になる場合には「１」となる一方、その他の場合は「０」となるように定義されている。
【００７９】
確率遷移モデルは、図６に示されているダイナミクスベイジアンネットワーク（ＤＢＮ）により表現される。ＤＢＮによれば関係式（２０１）〜（２０７）が、各時刻ｋにおける状態変数を表わすノード（円）及び条件付き確率によりこれらをつなぐ矢印により表現されている。
【００８０】
関係式（２０１）〜（２０６）のそれぞれに対応する条件付き確率は、関係式（２１１）〜（２１６）のそれぞれにより表現される。
【００８１】
P(Pc(k+1)|Pc(k),δθ(k+1),δP(k+1),S(k+1))
=N(R(k){Pc(k)-Pp(k)}+Pp(k)+S2δP(k+1), ΣPc) ..(211)。
【００８２】
P(Pg(k+1)|Pg(k),δθ(k+1),δP(k+1),S(k+1))
=N(R(k){Pg(k)-Pp(k)}+Pp(k)+S2δP(k+1), ΣPg) ..(212)。
【００８３】
P(Pp(k+1)|Pp(k),δθ(k+1),δP(k+1),S(k+1))
=N((1-S3)Pp(k)+S3Pe(k)+S2δP(k+1),ΣPp) ..(213)。
【００８４】
P(θ(k+1)|θ(k),δθ(k+1))=N(θ(k)+S1δθ(k+1),Σθ) ..(214)。
【００８５】
P(Pe(k+1)|Pe(k))=N(Pe(k),ΣPe) ..(215)。
【００８６】
P(fx(k)|mg,μ,Pc(k),Pg(k),Pp(k),Pe(k))=N(μmg(xc-xg)/{xc-xp+μ(zc-zp)},Σfx),
P(fz(k)|mg,μ,Pc(k),Pg(k),Pp(k),Pe(k))=N(mg(xc-xg)/{xc-xp+μ(zc-zp)}-mg,Σfz) ..(216)。
【００８７】
関係式（２１１）〜（２１３）のそれぞれにおける状態変数ノードδＰは、関係式（２２１）により表現される。関係式（２１４）における状態変数ノードδθは、関係式（２２２）により表現される。
【００８８】
P(δP(k))=N(0,e-6) ..(221)。
【００８９】
P(δθ(k))=N(0,Σβ) ..(222)。
【００９０】
第１演算処理要素１１により、第１実施形態と同様にＤＢＮにより表現される確率遷移モデルにしたがって複数の状態変数軌道が生成される。
【００９１】
例えば、ディリクレ分布により各サブタスクの実行確率（ｑ1，ｑ2，ｑ3，ｑ4）がｔ＝ｔ1→ｔ2→ｔ3→ｔ4という時間遷移とともに（０．５，０．２，０．２，０．１）→（０．２，０．４，０．３，０．２）→（０．１，０．２，０．６，０．１）→（０．１，０．２，０．３，０．４）と変化する場合、係数（Ｓ1，Ｓ2，Ｓ3）は（１，０，０）→（０，１，０）→（１，０，１）→（０，１，０）と遷移する（表２参照）。また、各サブタスクの実行確率（ｑ1，ｑ2，ｑ3，ｑ4）が（０．５，０．２，０．２，０．１）→（０．２，０．４，０．３，０．２）→（０．１，０．２，０．３，０．４）→（０．１，０．２，０．６，０．１）と変化する場合、係数（Ｓ1，Ｓ2，Ｓ3）は（１，０，０）→（０，１，０）→（０，１，０）→（１，０，１）と遷移する。これらのようなさまざまな遷移態様のそれぞれについてノードが推定されることにより、複数の状態変数軌道が生成される。
【００９２】
第２演算処理要素１２により、第１演算処理要素１１により生成された複数の状態変数軌道のうち、確率遷移モデルの結合確率を最大化又は最適化する１つの状態変数軌道である目標状態変数軌道にしたがってオブジェクト２の状態が遷移するようにエージェント１の動作が制御される。これにより、エージェント１が図５（ａ）〜（ｄ）に示されている第１〜第４サブタスクを選択的に実行する。
【００９３】
オブジェクト２の状態変数の値はエージェント１が有するセンサ群により測定され、当該測定値が目標状態変数軌道により表わされる目標値に一致するように、エージェント１を構成するアクチュエータの動作がフィードバック制御される。例えば、エージェント１がオブジェクト２に対して作用させる力Ｆは、エンドエフェクタに取り付けられている力センサ（６軸力センサなど）により測定される。力の作用点位置Ｐcは、エージェント１を構成する各関節の角度がエンコーダ等により構成されている角度センサの出力信号に基づき、当該エージェント１のキネマティクスモデルにしたがって測定される。
【００９４】
第１及び第２床面の段差部分の縁位置Ｐｅは、エージェント１が有する距離画像センサ等の物体検知用のセンサの出力信号に基づいて測定されてもよいし、行動制御システム１０を構成するメモリにあらかじめ入力されていてもよい。
【００９５】
（計算例）
行動制御システム１０の演算処理負荷軽減の観点から、第１サブタスクが実行された後、第２サブタスクが実行され、第２サブタスクが実行された後、第３サブタスクが実行され、第３サブタスクが実行された後、第４サブタスクが実行されるという規則にしたがって、オブジェクト２の状態変数を図５（ｄ）に示されているゴール（サブゴール）Goalに到達させるための状態変数軌道が計算された。
【００９６】
演算処理負荷の軽減の観点から、Ｎ＝４のディリクレ分布ではなく、Ｎ＝２のディリクレ分布にしたがって、第１及び第２サブタスクが勘案された「第１確率遷移モデル」、第２及び第３サブタスクが勘案された「第２確率遷移モデル」並びに第３及び第４サブタスクが勘案された「第３確率遷移モデル」のそれぞれにしたがって第１〜第３目標状態変数軌道が計算された。
【００９７】
図７（ａ）には、第１目標状態変数軌道の生成過程で推定された第２サブタスクの実行確率ｑ2の変化態様が示されている。すなわち、図７（ａ）には、第１サブタスク（roll）から第２サブタスク（slide）への切り替えを伴う複数の第１状態変数軌道のうち、第１確率遷移モデルの結合確率が最大又は最適になる１つの第１状態変数軌道の生成過程で推定された第２サブタスクの実行確率ｑ2の変化態様が示されている。
【００９８】
最大確率（「○」参照）を基準として縦軸方向に存在する線分は、当該確率ｑ2の確率分布の広がりを表わしている。当該確率ｑ2が０．５未満の場合は第１サブタスクが実行される確率の方が高く、当該確率ｑ2が０．５を超えている場合は第２サブタスクが実行される確率の方が高いことを意味している。図７（ａ）から、時刻ｋ＝８〜９の間で実行対象が第１サブタスクから第２サブタスクに切り替えられるような第１目標状態変数軌道が生成されることがわかる。
【００９９】
図７（ｂ）には、第２目標状態変数軌道の生成過程で推定された第２サブタスクの実行確率ｑ2の変化態様が示されている。すなわち、図７（ｂ）には、第２サブタスク（slide）から第３サブタスク（hump）への切り替えを伴う複数の第２状態変数軌道のうち、第１確率遷移モデルの結合確率が最大又は最適になる１つの第２状態変数軌道の生成過程で推定された第２サブタスクの実行確率ｑ2の変化態様が示されている。
【０１００】
当該確率ｑ2が０．５を超えている場合は第２サブタスクが実行される確率の方が高く、当該確率ｑ2が０．５未満である場合は第３サブタスクが実行される確率の方が高いことを意味している。図７（ｂ）から、時刻ｋ＝８〜９の間で実行対象が第２サブタスクから第３サブタスクに切り替えられるような第２目標状態変数軌道が生成されることがわかる。
【０１０１】
図７（ｃ）には、第３目標状態変数軌道の生成過程で推定された第４サブタスクの実行確率ｑ4の変化態様が示されている。すなわち、図７（ｃ）には、第３サブタスク（hump）から第４サブタスク（push）への切り替えを伴う複数の第３状態変数軌道のうち、第１確率遷移モデルの結合確率が最大又は最適になる１つの第３状態変数軌道の生成過程で推定された第４サブタスクの実行確率ｑ4の変化態様が示されている。
【０１０２】
当該確率ｑ4が０．５を超えている場合は第４サブタスクが実行される確率の方が高く、当該確率ｑ4が０．５未満である場合は第３サブタスクが実行される確率の方が高いことを意味している。図７（ｃ）から、時刻ｋ＝２２〜２３の間で実行対象が第３サブタスクから第４サブタスクに切り替えられるような第３目標状態変数軌道が生成されることがわかる。
【０１０３】
そして、第２演算処理要素１２により、第１、第２及び第３目標状態変数軌道の連続軌道としての目標状態変数軌道にしたがってオブジェクト２の状態が遷移するように、エージェント１の行動が制御される。これにより、エージェント１によりオブジェクト２に対して第１〜第４サブタスクを順に実行させ、オブジェクト２の状態を所望のゴールへ到達させることができる。
【０１０４】
（作用効果）
前記構成の行動制御システム１０によれば、ディリクレ分布により確率分布が表現されている複数のサブタスクのそれぞれの実行確率ｑiに応じて、オブジェクト２の状態変数の遷移態様が定まるように定義されている確率遷移モデル（図３及び図６参照）にしたがって、当該状態変数の時系列である複数の状態変数軌道が生成される（図２（ａ）（ｂ）参照）。これにより、ディリクレ分布の時系列的な変化態様の相違に応じて、エージェント１により選択的に実行されるサブタスクのさまざまな変化態様が勘案された形で複数の状態変数軌道が生成される。
【０１０５】
複数の状態変数軌道のうち、エージェント１がしたがう１つの状態変数軌道は、確率遷移モデルの結合確率を最大化又は最適化するものが目標状態変数軌道として生成される（図４（ａ）〜（ｃ）及び図７（ａ）〜（ｃ）参照）。目標状態変数軌道は前記のように確率変数モデルを基礎として生成されている。このため、オブジェクト２の状態を表わす状態変数の連続性が確保されるように、当該オブジェクト２との相互作用を伴うエージェント１の行動が制御されうる。その結果、各サブタスクの実行可能性が時系列的にエージェント１の行動の連続性を確保しながら、当該エージェント１に複数の異なるサブタスクを連続的に実行させることができる（図５（ａ）〜（ｄ）参照）。
【０１０６】
（本発明の他の実施形態）
第１演算処理要素１１が、複数のサブタスクのそれぞれの実行確率に加えて、オブジェクト２の環境因子に応じて状態変数の遷移態様が定まるような確率遷移モデルであって、環境因子が異なる複数の確率遷移モデルのそれぞれにしたがって、複数の状態変数軌道を生成するように構成されている。第２演算処理要素１２が、第１演算処理要素１１により生成された複数の状態変数軌道のうち確率遷移モデル全体の結合確率を最大化又は最適化する１つの状態変数軌道の生成基礎となった１つの確率遷移モデルにおける環境因子を実際の環境因子として推定するように構成されている。
【０１０７】
例えば、オブジェクト２が床面から受ける摩擦力ｆμ又は摩擦係数μ並びに垂直抗力ｆN及び床面姿勢（傾斜角度）のうち少なくとも１つが環境因子として推定される（表３参照）。
【０１０８】
当該構成の行動制御システムによれば、不確定要素であるオブジェクト２と床面との摩擦係数μ等の環境因子が、目標状態変数軌道の生成結果に基づいて高精度で推定されうる。当該推定結果に基づき、以後の確率遷移モデルが選定又は構築されることにより、実際の環境因子に応じたオブジェクト２の状態が反映された形態の目標状態変数軌道が生成されうる。
【符号の説明】
【０１０９】
１‥エージェント、２‥オブジェクト、１０‥行動制御システム、１１‥第１演算処理要素、１２‥第２演算処理要素。
【図１】
2014004640.tif 000007
【図２】
2014004640.tif 000008
【図３】
2014004640.tif 000009
【図６】
2014004640.tif 000010
【図４】
2014004640.tif 000011
【図５】
2014004640.tif 000012
【図７】
2014004640.tif 000013