JP6943364B2 - 行動ツリーアーキテクチャを有するロボットの制御プロセス - Google Patents
行動ツリーアーキテクチャを有するロボットの制御プロセス Download PDFInfo
- Publication number
- JP6943364B2 JP6943364B2 JP2018541426A JP2018541426A JP6943364B2 JP 6943364 B2 JP6943364 B2 JP 6943364B2 JP 2018541426 A JP2018541426 A JP 2018541426A JP 2018541426 A JP2018541426 A JP 2018541426A JP 6943364 B2 JP6943364 B2 JP 6943364B2
- Authority
- JP
- Japan
- Prior art keywords
- node
- child
- control flow
- robot
- child node
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Program-control systems
- G05B19/02—Program-control systems electric
- G05B19/04—Program control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Program control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0426—Programming the control sequence
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Program-controlled manipulators
- B25J9/16—Program controls
- B25J9/1628—Program controls characterised by the control loop
- B25J9/163—Program controls characterised by the control loop learning, adaptive, model based, rule based expert control
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Program-control systems
- G05B19/02—Program-control systems electric
- G05B19/04—Program control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Program control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0218—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
- G05B23/0243—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults model based detection method, e.g. first-principles knowledge model
- G05B23/0245—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults model based detection method, e.g. first-principles knowledge model based on a qualitative model, e.g. rule based; if-then decisions
- G05B23/0248—Causal models, e.g. fault tree; digraphs; qualitative physics
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39107—Pick up article, object, measure, test it during motion path, place it
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39158—Configuration description language, to define behaviour of system
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40392—Programming, visual robot programming language
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Numerical Control (AREA)
Description
ルートノードは、一定の頻度でその子を「作動する」(tick)。すなわち、ルートノードは、子を実行し、結果に基づきそれ自身の状況を更新する。
2つのタイプの実行ノード、動作ノード及びコンディションノードが存在する。
制御フローノードは、ロボットの行動を動作ノード及びコンディションノードから効果的に構成する、ルートノードと実行ノードとの間の中間ノードである。1つより多い子を有し得る「複合タスク」と、1つの子だけを有する「デコレータタスク」とが、区別される場合がある。異なる制御フローノードの例が、下記に説明される。
シーケンスは、常に1番目の子から呼び出しを開始、その子が成功している限りその子を次々と呼び出す。通常の使用の場合において、子は、全てが複合タスクを達成すべく行われる必要があるサブアクションである可能性がある。1つの動作が失敗したなら、シーケンスはまた、その親にFAILUREを返し、任意のさらなる子を実行しない。全ての子が成功したなら、シーケンスは同様に成功する。作動された子がRUNNINGを返す場合、シーケンスはRUNNINGを返す。
・子が次々と呼び出され、常に1番目の子から開始する。
・子が成功した場合、次の子が続く。
・子が失敗した場合、シーケンスは同様に失敗する。
・全ての子が成功した場合、シーケンスは成功する。
セレクタノードは、1つがSUCCESSを返すまで、常に1番目の子から試行を開始し、その子の各々を順に試みる。通常の使用の場合において、子は、目標を達成する代替方法である可能性がある。作動された子がRUNNINGを返し、セレクタノードはまた、RUNNINGを返す。1つの子供がSUCCESSを返すなら、セレクタは同様に成功し、任意のさらなる子を実行しない。全ての子が失敗したなら、セレクタも、FAILUREを返す。セレクタ複合物は、1番目の子が最も高い優先順位を有する状態で、その優先順位によりタスクにランクを付けるために使用され得る。各タスクが最初にその適用可能性のコンディションをチェックするなら、より高い優先順位のタスクが、次の反復で自動的にアクティブになり、より低い優先順位のタスクにより開始されるアクションをオーバーライド又はキャンセルし得る。
・子が次々と呼び出され、常に1番目の子から開始する。
・1つの子が成功した場合、セレクタは同様に成功し、任意のさらなる子を実行しない。
・1つの子が失敗した場合、次の子が続く。
・全ての子が失敗した場合、セレクタは同様に失敗する。
以下の適応に対するシーケンスノードとしてのメモリシーケンスである。メモリシーケンスノードは、最後に実行していた子を記憶し、次の作動時にそこへ戻る。すなわち、メモリシーケンスノードは、その子の実行を1番目の子から開始しない。
・前の反復においてラン中の子から開始し、子が次々と呼び出される。
・子が成功した場合、次の子が続く。
・子が失敗した場合、シーケンスは同様に失敗する。
・全ての子が成功した場合、メモリシーケンスは成功する。
以下の適応に対するセレクタノードとして:
メモリセレクタノードは、最後のラン中の子を記憶し、次の作動にそこへ戻る。すなわち、メモリセレクタノードは、その子の実行を1番目の子から開始しない。
・前の反復においてラン中である子から開始し、子が次々と呼び出される。
・1つの子が成功した場合、セレクタは同様に成功し、任意のさらなる子を実行しない。
・1つの子が失敗した場合、次の子が続く。
・全ての子が失敗した場合、セレクタは同様に失敗する。
・全ての子が、並列に開始される。
・1つの子が失敗した場合、同様に失敗する。
・1つの子が成功した場合、同様に成功する。
パラレルオールノードは、全ての子を並列に実行する。パラレルオールノードは、1つの子が失敗したなら、失敗し、全ての子が成功した場合、成功する。通常のアプリケーションは、2つの動きを同時に行い、それらの全てが完了するのを待つことであり得る。
・全ての子が、並列に開始される。
・パラレルワンノードは、1つの子が失敗したなら、同様に失敗する。
・いくつかの子が成功し、いくつかがまだ実行中なら、実行を続ける。
・全ての子が成功した場合、同様に成功する。
パラレルセレクタノードは、並列に全ての子を実行する。パラレルセレクタノードは、全てが失敗したなら、失敗し、1つが成功したなら成功する。通常のアプリケーションは、代替的な選択肢のうち1つが成功するまで、問題を並列に解決するために代替的な選択肢を試みることである。
・全ての子が、並列に開始される。
・パラレルセレクタノードは、1つの子が成功したなら、同様に成功となる。
・いくつかの子が失敗し、いくつかがまだ実行中なら、実行を続ける。
・全ての子が失敗したなら、同様に失敗となる。
回復タスクは、1番目の子を主タスクとして実行し、主タスクの失敗から回復すべく他の子を順に試みることとなる。1番目の子が成功したなら、回復タスクが同様に成功し、その他の子を実行しない。1番目の子が失敗したなら、他の子の1つが成功するまで他の子を続ける。この場合には、1番目の子を続ける。全ての子が失敗したなら、回復タスクも同様に失敗する。この種の回復行動を簡潔に実施することが可能であることは、複雑かつ不確かな環境において操作する物理ロボットを制御するために行動ツリーを使用する場合、有利である。こうした場合において、動作は多くの場合、失敗し、失敗から回復するためのルーチンが、ロボットの制御プログラムの大部分の原因となり得る。
・1番目の子を実行する。1番目の子が成功したなら、同様に成功し、他の子に触れない。
・1番目の子が失敗したなら、他の子を続ける。
・他の子のいずれかが成功したなら、1番目の子を続ける。
・他の子のいずれかが失敗したなら、次の子を試みる。
・全ての子が失敗したなら、回復タスクは同様に失敗する。
この複合ノードは、任意の認められていないシステムエラーが記録されたかどうかをチェックする。システムエラーは、ロボットのサブシステムを、例えば、モーターの故障又は破損されたセンサー等の使用不可の状態にするエラーである。こうしたエラーのいくつかは、例えば、ドライバープログラムを再スタートすることにより、プログラムに従って解決され得る一方、他のエラーは人間の介入を必要とする。両方の場合において、ロボットは、エラーが認められるまで、影響されるコンポーネントのうちいずれかを使用しようと試みるのを停止すべきである。このノードにパラメータとして渡されたロボットのサブシステムの少なくとも1つに影響を与える任意の認められていないシステムエラーが存在したなら、チェックシステムエラー複合物がブロックする。エラーが存在しないなら、1番目の子が実行される。エラーが存在したなら、ノードは、他の子を次々と試みることによりエラーを解決しようとする。エラーが子の1つにより解決され得たなら(すなわち、SUCCESSに返ったなら)、子1の実行を続け、さもなければ失敗する。
・1番目の子を実行する。1番目の子が成功したなら成功し、1番目の子が失敗したなら失敗する。
・システムエラーが、1番目の子の実行中に記録されたなら、1番目の子の実行を停止し、以下の子のいずれかがエラーを解決するかどうかを調べるべく、以下の子を試みる。
・他の子のいずれかが成功したなら、1番目の子を続ける。
・全ての子が失敗したなら、チェックシステムエラータスクが同様に失敗する。
デコレータノードは、単一の子を有し、返り値を変更する。すなわち、デコレータノードは、単一の子の返り値を「包み隠す」。この返り値の変更は、様々な使用の場合において、例えば、一度より多くタスクを実行するために、実行を調整するために、又はタスクを統合するために適用され得る。
このノードは、その子の返り値の反対のものを返す。すなわち、子がFAILUREを返した場合SUCCESSを返し、子がSUCCESSを返した場合FAILUREを返し、子がRUNNINGを返した場合RUNNINGを返す。例えば、新たなコンディションノードを定義せずに、コンディションの反対のものをチェックすることが可能である。
このノードは、その子がSUCCESSを返した場合、又はFAILUREを返した場合、SUCCESSを返し、その子がRUNNINGを返した場合RUNNINGを返す。
・子が成功した、又は失敗した場合、SUCCESSを返す。
・子がまだ実行中である場合、RUNNINGを返す。
このノードは、それが成功する限り、(状況によっては、無制限の)複数回(num__iterations)までループにおいて、その子を実行する。子が毎回成功したなら、ノードは成功し、子が一度失敗したなら、ノードは、失敗する。
・子を実行する。
・子が失敗したなら、同様に失敗する。
・子が成功したなら、num__iterationsが到達され、成功するまで繰り返し、又はnum_iterations=−1なら、無限に繰り返す。
このノードは、それが成功する限り、所与の(状況によっては、無制限の)最大数の反復(max_num_iterations)までループにおいてその子を実行する。ループアンティルノードは、子が成功し、成功フラグ(task_done)が子により真(True)に設定されたなら、成功する。子が失敗した、又は最大数の反復が、真に設定された成功フラグなしで到達されたなら、ループアンティルノードは失敗する。
・子を実行する。
・子が失敗したなら、同様に失敗する。
・子が成功したなら、子がtask_done値を真に設定する(ひいては成功する)まで、又はmax_num_iterations閾値が到達される(ひいては失敗し、max_iterations_exceeded出力を真に設定する)まで繰り返す。
再試行デコレータは、それが成功を返すまでその子を実行する。子が成功したなら、再試行ノードは同様に成功する。子が失敗したなら、ノードは、所与の(状況によって、無制限の)回数(max_iterations)まで子を再スタートし、子がこの閾値より頻繁に失敗したなら、失敗する。
・子を実行する。
・子が成功したなら、同様に成功する。
・子が失敗したなら、max_iterations回まで再試行する。
・子がmax_iterations回より多く失敗したなら、FAILUREを返す。
結果反復器は、その子により返されるリストの全ての要素にわたって反復し、それらを1つずつ返す。例えば、子は、順序正しく訪問されるべきウェイポイントのリストを返し得る。子により返されるリストは、キャッシュ化され得、その場合に、キャッシュ値が利用可能でないなら、子が呼ばれるだけであろう。子が失敗したなら、ノードは同様に失敗する。子が成功し、値を返したなら、又は、キャッシュ値が使用され得たなら、ノードは成功する。
・子が実行され、このデコレータのリスト入力にマッピングされたその出力キーのうち1つを経由するリストを返す。
・デコレータは、キャッシュパラメータが真であるなら、リストをキャッシュする。
・デコレータは、出力された項目を経由してリストの1番目の要素を返す。
・キャッシングが真なら、その後の呼び出しは、キャッシュされたリストの残っている要素を返すこととなる。
・キャッシングが偽なら、又はリストが使い尽くされたなら、子は新たなリストを得るべく、再び呼び出される。
・子の実行値は、変更無く通され、又はキャッシュ値が使用されたなら、SUCCESSが返される。
サブツリールックアップ
このデコレータは、その子の返り値を変更しないが、ランタイム時の行動ツリーを拡張するために役立つ。アクセスされた場合、ストレージデバイスからサブツリーを読み込み、サブツリーをそれ自身の子として加える。これは、例えば、異なるツリー又は異なるツリーの異なる部分においてインスタンス化され得るモジュール式の再利用可能なツリーフラグメントを格納するために有益である。これは、ロボット工学における一般的な使用の場合であり、そこでは、ナビゲーション又はオブジェクト操作等の行動は、タスクの異なる部分において現れる。
失敗後のデコレータは、子がFAILUREを返した場合SUCCESSを返し、子がFAILUREを返さなかった場合失敗する。
・子がFAILUREを返したなら、成功する。
・子がSUCCESSを返した、又はまだRUNNINGなら、失敗する。
成功後(Succeeded)
成功後のデコレータは、子がSUCCESSを返した場合、SUCCESSを返し、子がFAILUREを返さなかった場合失敗する。
・子がSUCCESSを返したなら、成功となる。
・子がFAILUREを返した、又はまだRUNNINGなら、失敗となる。
ルートノードが制御フローノードを呼び出す段階と、
制御フローノードが1番目のノードを呼び出す段階と、
1番目のノードが制御フローノードに第1状態を返す段階と、
制御フローノードが、ルートノードに第2状態を返す段階と
を含み得る。
複雑なロボットの行動の実装において、異なる人々が、ロボットの行動の異なるセクションに取り組み得、例えば、ある人は、オブジェクトのつまみ上げに関連するサブツリーを実装し得、別の人は、ロボットの安全ルーチンに関連するサブツリーを実装し得る。異なるサブツリーを実装する人々の両方は、同じ名前(異なる態様に関連するが)を有する変数を定義することが可能であり得る。ローカル変数によって、各変数は、サブツリーごとに定義されるだけなので、これは、問題とならないかもしれない。あるいは、異なるサブツリー(異なる態様に関連するが)に対して定義される同じ変数を有することは、ロボットの操作のエラーにつながり得る。従って、ローカルノード変数の定義又はローカルサブツリー変数はさらに、ロボットの行動を改善し得、この行動をよりフェイルセーフにさせ得る。
一時停止の状態は、ノードが中断されたことを示し、
無効の状態は、ノードが作り出され、まだ実行の用意ができていないことを示し、
中止後の状態は、ノードそれ自体がこのノードの実行を停止したことを示し、
先取後の状態は、ユーザ又は行動ツリーエグゼクティブ(executive)がノードの実行を停止したことを示し、
方法はさらに、初期化後、一時停止、無効、中止後、及び先取後の状態のうち少なくとも1つを返す1つの制御フローノード又は実行ノードを含み得る。
子ノードは、スタータ子ノードと少なくとも2つの非スタータ子ノードとを備え、
異種制御フローノードは、スタータ子ノードから開始して連続してその子ノードを呼び出すように適応され、
異種制御フローノードは、規則に従ってその子を呼び出し、
非スタータ子ノードごとに、非スタータ子ノードを呼び出すための規則は、それぞれの非スタータ子ノードの直前に呼び出される子ノードの状態に依存し、
この依存性は、少なくとも2つの非スタータ子ノードに対して異なる。
回復ノードは、1番目の子ノードを呼び出し、
1番目の子ノードが成功を返したなら、回復ノードは成功を返し、少なくとも1つのさらなる子ノードを呼び出さない、
1番目の子ノードが失敗を返したなら、回復ノードは少なくとも1つのさらなる子ノードを呼び出し、
少なくとも1つのさらなる子ノードのうち1つが成功を返したなら、回復ノードは1番目の子ノードを呼び出し、
少なくとも1つのさらなる子ノードの全てが失敗を返したなら、回復ノードは失敗を返し、
本方法は、回復ノードを実行する段階を含み得る。
ノードとノードに接続する有向エッジとがツリー構造を定義し、
ツリー構造は、データファイルとして格納され、
方法は、実行可能な機能として実施される上記コマンドと、データファイルとして格納される上記ツリー構造と、ランタイム時の行動ツリーエグゼクティブへの実行コマンドとを送信する段階を備え得、
行動ツリーエグゼクティブは、実行可能な機能として実施される上記コマンドに基づく制御プログラムを生成し、上記ツリー構造は、データファイル及びランタイム時の実行コマンドとして格納される。
番犬ルーチンが上記ノードの少なくとも1つにより呼び出されたときはいつでも、番犬ルーチンはタイマーを設定し、
番犬ルーチンが事前に定義された時間の間、上記ノードの少なくとも1つにより呼び出されなかった場合、タイマーは経過し、
タイマーが経過した場合、上記ノードのうち少なくとも1つの操作は停止される。
・ロボットの制御のために一般に使用される有限ステートマシンなどのアプローチと比較して、行動ツリーとして特定される制御プログラムは、適応させるのがはるかに容易であり得る。新たな機能を有するブランチは、単一の親−子接続を加えることにより行動ツリーに組み込まれ得る一方、有限ステートマシンは、許可された全てのタスク移行に対する接続を必要とする。
・行動ツリーを大部分が独立したサブツリーへの組織化は、高度なモジュール式のタスク仕様を作り出し、異なる目的のための制御プログラムの部分の再利用性を増大する。変数は、「サブツリー」だけのためにローカルに定義され、そのことは、定義されたグローバル変数を有することより適応性がある。これは、他のシナリオにおける他の目的のために使用され得るタスクライブラリにおいて、個別のプログラムフラグメントの分配を可能にする。
・行動ツリーは、プログラミングなしでロボット行動を編集し、その結果生じた行動仕様を可視化し、実行時に制御プログラムの状態を視察し、行動故障をデバッグするために使用され得るナチュラルグラフィック表現を有する。単純化された可視化はまた、ロボットのより少ない誤りと、ロボットの誤った行動の可能性の減少とをもたらし得る。
・ロボットの制御のために一般的に使用される、例えば、有限ステートマシンと比較すると、行動ツリーとして記述される制御プログラムは、イベントに対してより反応性があり得る。これは、行動ツリーが間近の状況を考慮して次にどの動作を行うべきかを固定された頻度で評価するからであり、そのことは、有限ステートマシンに対する場合のように、次にどの動作を行うべきかの動作の終わりに決定することよりはるかに頻繁であり得る。
・例えば、有限ステートマシンと比較して、タスクの優先順位付けは、はるかに単純であり、非常に単純な方式で可視化され得る。改善及び単純化されたタスクの優先順位付けに起因して、ロボットの全体的なパフォーマンスが改善され得、すなわち、ロボットは、先ず確実に最も重要なサブルーチン(例えば、安全対策に関連したサブルーチン)を呼び出し得る。
・サブツリーのモジュール式構造及び容易な優先順位付けに起因して、行動ツリーは、名目上及び例外的な行動のためのコードを別々に編集、格納及び実行するのを可能にする。これは、例外の場合を処理するためのルーチンと交互に配置されることなく、タスクそれ自体の型を作ることに集中し得る名目上の行動のためのクリーナコードをもたらし得る。同時に、例外処理ルーチンは、1つより多いツリーのために使用され得る。これは、異なるシナリオにおいて名目上及び例外的な処理コードの両方を別々に再使用するのに役立ち得る。
行動ツリーアーキテクチャは、ルートノード、少なくとも1つの制御フローノード及び少なくとも1つの実行ノードと、有向エッジとを含むノードを備え、
ノードは、有向エッジに接続され、
ルートノードは、1つの発信エッジを有し、受信エッジを有さず、各制御フローノードは、1つの受信エッジ及び少なくとも1つの発信エッジを有し、各実行ノードは、1つの受信エッジを有し、発信エッジを有さず、発信エッジを有するノードは、このエッジに接続した別のノードとの関連で親ノードと定義され、受信エッジを有するノードは、このエッジに接続した別のノードとの関連で子ノードと定義され、
制御フローノード及び実行ノードは、それらの親ノードに異なる状態を返すように適応され、状態は、成功、実行中及び失敗を含み、
方法は、ルートノードが制御フローノードを呼び出す段階と、
制御フローノードが1番目のノードを呼び出す段階と、
1番目のノードが制御フローノードに第1状態を返す段階と、
制御フローノードが、ルートノードに第2状態を返す段階とを含む。
初期化後の状態は、ノードが初期化され、実行の用意ができたことを示し、
一時停止の状態は、ノードが中断されたことを示し、
無効の状態は、ノードが作り出され、まだ実行の用意ができていないことを示し、
中止後の状態は、ノードそれ自体がこのノードの実行を停止したことを示し、
先取後の状態は、ユーザ又は行動ツリーエグゼクティブがノードの実行を停止したことを示し、
方法はさらに、初期化後、一時停止、無効、中止後、及び先取後の状態のうち少なくとも1つを返す1つの制御フローノード又は実行ノードを含む。
可変制御フローノードは、規則に従ってその子ノードを呼び出し得、その規則はまた、可変制御フローノードの子ノードにより返される状態以外の態様に依存する。
異種制御フローノードは、スタータ子ノードから開始して連続してその子ノードを呼び出すように適応され、
異種制御フローノードは、規則に従ってその子を呼び出し、非スタータ子ノードごとに、非スタータ子ノードを呼び出すための規則は、それぞれの非スタータ子ノードの直前に呼び出される子ノードの状態に依存し、この依存性は、少なくとも2つの非スタータ子ノードに対して異なる。
1番目の子ノードが成功を返したなら、回復ノードは成功を返し、少なくとも1つのさらなる子ノードを呼び出さない、
1番目の子ノードが失敗を返したなら、回復ノードは少なくとも1つのさらなる子ノードを呼び出し、
少なくとも1つのさらなる子ノードのうち1つが成功を返したなら、回復ノードは1番目の子ノードを呼び出し、
少なくとも1つのさらなる子ノードの全てが失敗を返したなら、回復ノードは失敗を返し、本方法は回復ノードを実行する段階を含み得る。
実行可能な機能として実施される上記コマンドと、データファイルとして格納される上記ツリー構造と、ランタイム時の行動ツリーエグゼクティブへの実行コマンドとを送信する段階を備え、
行動ツリーエグゼクティブは、実行可能な機能として実施される上記コマンドに基づく制御プログラムを生成し、上記ツリー構造は、データファイル及びランタイム時の実行コマンドとして格納される。
番犬ルーチンを呼び出す上記ノードの少なくとも1つを備え、
番犬ルーチンは、
番犬ルーチンが上記ノードの少なくとも1つにより呼び出されたときはいつでも、タイマーを設定し、
番犬ルーチンが事前に定義された時間の間、上記ノードの少なくとも1つにより呼び出されなかった場合、タイマーは経過し、タイマーが経過した場合、上記ノードのうち少なくとも1つの操作は停止される。
(項目1)
ロボットを制御するための方法であって、上記方法は、上記ロボットにより行われるタスクのための行動ツリーアーキテクチャの利用を含み、
上記行動ツリーアーキテクチャは、ルートノード、少なくとも1つの制御フローノード及び少なくとも1つの実行ノードと、有向エッジとを含むノードを備え、
上記ノードは、上記有向エッジに接続され、
上記ルートノードは、1つの発信エッジを有し、受信エッジを有さず、各制御フローノードは、1つの受信エッジ及び少なくとも1つの発信エッジを有し、各実行ノードは、1つの受信エッジを有し、発信エッジを有さず、発信エッジを有するノードは、このエッジに接続した別のノードとの関連で親ノードと定義され、受信エッジを有するノードは、このエッジに接続した別のノードとの関連で子ノードと定義され、上記制御フローノード及び上記実行ノードは、それらの親ノードに異なる状態を返すように適応され、上記状態は、成功、実行中及び失敗を含み、上記方法は、
上記ルートノードが制御フローノードを呼び出す段階と、
上記制御フローノードが1番目のノードを呼び出す段階と、
上記1番目のノードが上記制御フローノードに第1状態を返す段階と、
上記制御フローノードが、上記ルートノードに第2状態を返す段階と
を備える方法。
(項目2)
上記行動ツリーアーキテクチャは、サブツリーを備え、各サブツリーは、少なくとも1つの制御フローノードと、少なくとも1つの実行ノードとを備え、上記方法はさらに、サブツリーのためのローカルサブツリー変数を定義する段階を備える、
項目1に記載の方法。
(項目3)
上記ローカルサブツリー変数は、あるサブツリーから別のサブツリーに渡される、
項目2に記載の方法。
(項目4)
上記状態はさらに、初期化後、一時停止、無効、中止後、及び先取後のうち少なくとも1つを含み、
初期化後の上記状態は、ノードが初期化され、実行の用意ができたことを示し、
一時停止の上記状態は、ノードが中断されたことを示し、
無効の上記状態は、ノードが作り出され、まだ実行の用意ができていないことを示し、
中止後の上記状態は、ノードそれ自体がこのノードの実行を停止したことを示し、
先取後の上記状態は、ユーザ又は行動ツリーエグゼクティブがノードの実行を停止したことを示し、
上記方法はさらに、初期化後、一時停止、無効、中止後、及び先取後の上記状態のうち少なくとも1つを返す1つの制御フローノード又は実行ノードを含む、
項目1から3のいずれか1つに記載の方法。
(項目5)
上記行動ツリーアーキテクチャは、各エッジに接続される1つの子ノードと共に、少なくとも2つの発信エッジにそれぞれ接続される可変制御フローノードを備え、上記可変制御フローノードは、規則に従ってその子ノードを呼び出し得、その規則はまた、上記可変制御フローノードの上記子ノードにより返される上記状態以外の態様に依存する、
項目1から4のいずれか1つに記載の方法。
(項目6)
上記可変制御フローノードの1つの子ノードは、主タスクに関連し得、その子ノードが上記主タスクの子ノードと定義され、上記可変制御フローノードの別の子ノードは、任意選択のタスクに関連し、その子が上記任意選択の子ノードと定義され、上記主タスクの子ノードの上記状態から独立したコンディションが満たされたなら、上記可変制御フローノードは上記任意選択の子ノードを呼び出す、
項目5に記載の方法。
(項目7)
上記行動ツリーアーキテクチャは、各エッジに接続される1つの子ノードと共に、少なくとも3つの発信エッジに接続される異種制御フローノードを備え得、上記子ノードは、スタータ子ノードと少なくとも2つの非スタータ子ノードとを備え、上記異種制御フローノードは、上記スタータ子ノードから開始して連続してその子ノードを呼び出すように適応され、上記異種制御フローノードは、規則に従ってその子を呼び出し、非スタータ子ノードごとに、上記非スタータ子ノードを呼び出すための上記規則は、それぞれの上記非スタータ子ノードの直前に呼び出される上記子ノードの上記状態に依存し、この依存性は、少なくとも2つの非スタータ子ノードに対して異なる、
項目1から6のいずれか1つに記載の方法。
(項目8)
少なくとも1つの制御フローノードは、回復ノードとして実現され、その回復ノードは、1番目の子ノードと、少なくとも1つのさらなる子ノードとを備える複数の子ノードを有し、上記回復ノードは、上記1番目の子ノードを呼び出し、
上記1番目の子ノードが成功を返したなら、上記回復ノードは成功を返し、上記少なくとも1つのさらなる子ノードを呼び出さない、
上記1番目の子ノードが失敗を返したなら、上記回復ノードは上記少なくとも1つのさらなる子ノードを呼び出し、
上記少なくとも1つのさらなる子ノードのうち1つが成功を返したなら、上記回復ノードは上記1番目の子ノードを呼び出し、
上記少なくとも1つのさらなる子ノードの全てが失敗を返したなら、上記回復ノードは失敗を返し、上記方法は上記回復ノードを実行する段階を備える、
項目1から7のいずれか1つに記載の方法。
(項目9)
上記行動ツリーアーキテクチャは、オブジェクトを選択すること、上記オブジェクトをつまみ上げること及び上記オブジェクトを所望の位置に持ってくることに関連するサブツリーを備え得、上記方法はこのサブツリーを実行する、
項目1から8のいずれか1つに記載の方法。
(項目10)
上記ロボットは、移動ベース及びマニピュレータのうち少なくとも1つを含む、
項目1から9のいずれか1つに記載の方法。
(項目11)
上記ロボットは、自律駆動ロボットである、
項目1から10のいずれか1つに記載の方法。
(項目12)
少なくとも1つの上記制御フローノードと、少なくとも1つの上記実行ノードとに関連するコマンドは、コンピュータソースコードにおいて実行可能な機能として実施され、
上記ノードと上記ノードに接続する上記有向エッジとがツリー構造を定義し、
上記ツリー構造は、データファイルとして格納され、
上記方法は、実行可能な機能として実施される上記コマンドと、データファイルとして格納される上記ツリー構造と、ランタイム時の行動ツリーエグゼクティブへの実行コマンドとを送信する段階を備え、
上記行動ツリーエグゼクティブは、実行可能な機能として実施される上記コマンドに基づく制御プログラムを生成し、上記ツリー構造は、データファイル及びランタイム時の上記実行コマンドとして格納される、
項目1から11のいずれか1つに記載の方法。
(項目13)
上記ロボットは、センサーを含み得、上記方法は、上記センサーによって情報を感知する段階と、上記ロボットに上記情報に応答させる段階とを含む、
項目1から12のいずれか1つに記載の方法。
(項目14)
前述の項目のいずれかに記載の方法を実行するように適応されるデータ処理手段を備えるシステムであって、上記システムは好ましくは、ロボットを備える、システム。
(項目15)
プログラミング、監視、内観、及び/又はデバッギングのための行動ツリーアーキテクチャの使用であって、上記行動ツリーアーキテクチャは、項目1から13のいずれか1つに説明の特徴のいずれかを備える、使用。
Claims (14)
- ロボットを制御するための方法であって、前記方法は、前記ロボットにより行われるタスクのための行動ツリーアーキテクチャの利用を含み、
前記行動ツリーアーキテクチャは、ルートノード、少なくとも1つの制御フローノード及び少なくとも1つの実行ノードを含むノードと、有向エッジとを備え、
前記ノードは、前記有向エッジに接続され、
前記ルートノードは、1つの発信エッジを有し、受信エッジを有さず、各制御フローノードは、1つの受信エッジ及び少なくとも1つの発信エッジを有し、各実行ノードは、1つの受信エッジを有し、発信エッジを有さず、発信エッジを有するノードは、このエッジに接続した別のノードとの関連で親ノードと定義され、受信エッジを有するノードは、このエッジに接続した別のノードとの関連で子ノードと定義され、前記制御フローノード及び前記実行ノードは、それらの親ノードに異なる状態を返すように適応され、前記状態は、成功、実行中及び失敗を含み、前記方法は、
前記ルートノードが制御フローノードを呼び出す段階と、
前記制御フローノードが1番目のノードを呼び出す段階と、
前記1番目のノードが前記制御フローノードに第1状態を返す段階と、
前記制御フローノードが、前記ルートノードに第2状態を返す段階と
を備え、
前記行動ツリーアーキテクチャは、サブツリーを備え、各サブツリーは、少なくとも1つの制御フローノードと、少なくとも1つの実行ノードとを備え、
サブツリーは、同じサブツリーのタスクによってのみ直接アクセス可能なデータ要素を少なくとも利用する、方法。 - 前記方法はさらに、あるサブツリーから別のサブツリーに渡すことができるサブツリーのためのローカルサブツリー変数を定義する段階を備える、
請求項1に記載の方法。 - 前記状態はさらに、初期化後、一時停止、無効、中止後、及び先取後のうち少なくとも1つを含み、
初期化後の前記状態は、ノードが初期化され、実行の用意ができたことを示し、
一時停止の前記状態は、ノードが中断されたことを示し、
無効の前記状態は、ノードが作り出され、まだ実行の用意ができていないことを示し、
中止後の前記状態は、ノードそれ自体がこのノードの実行を停止したことを示し、
先取後の前記状態は、ユーザ又は行動ツリーエグゼクティブがノードの実行を停止したことを示し、
前記方法はさらに、初期化後、一時停止、無効、中止後、及び先取後の前記状態のうち少なくとも1つを返す1つの制御フローノード又は実行ノードを含む、
請求項1または2に記載の方法。 - 前記行動ツリーアーキテクチャは、各エッジに接続される1つの子ノードと共に、少なくとも2つの発信エッジにそれぞれ接続される可変制御フローノードを備え、前記可変制御フローノードは、規則に従ってその子ノードを呼び出し得、その規則はまた、前記可変制御フローノードの前記子ノードにより返される前記状態以外の態様に依存する、
請求項1から3のいずれか一項に記載の方法。 - 前記可変制御フローノードの1つの子ノードは、主タスクに関連し得、その子ノードが前記主タスクの子ノードと定義され、前記可変制御フローノードの別の子ノードは、任意選択のタスクに関連し、その子が前記任意選択の子ノードと定義され、前記主タスクの子ノードの前記状態から独立したコンディションが満たされたなら、前記可変制御フローノードは前記任意選択の子ノードを呼び出す、
請求項4に記載の方法。 - 前記行動ツリーアーキテクチャは、各エッジに接続される1つの子ノードと共に、少なくとも3つの発信エッジに接続される異種制御フローノードを備え得、前記子ノードは、スタータ子ノードと少なくとも2つの非スタータ子ノードとを備え、前記異種制御フローノードは、前記スタータ子ノードから開始して連続してその子ノードを呼び出すように適応され、前記異種制御フローノードは、規則に従ってその子を呼び出し、非スタータ子ノードごとに、前記非スタータ子ノードを呼び出すための前記規則は、それぞれの前記非スタータ子ノードの直前に呼び出される前記子ノードの前記状態に依存し、この依存性は、少なくとも2つの非スタータ子ノードに対して異なる、
請求項1から5のいずれか一項に記載の方法。 - 少なくとも1つの制御フローノードは、回復ノードとして実現され、その回復ノードは、1番目の子ノードと、少なくとも1つのさらなる子ノードとを備える複数の子ノードを有し、前記回復ノードは、前記1番目の子ノードを呼び出し、
前記1番目の子ノードが成功を返したなら、前記回復ノードは成功を返し、前記少なくとも1つのさらなる子ノードを呼び出さない、
前記1番目の子ノードが失敗を返したなら、前記回復ノードは前記少なくとも1つのさらなる子ノードを呼び出し、
前記少なくとも1つのさらなる子ノードのうち1つが成功を返したなら、前記回復ノードは前記1番目の子ノードを呼び出し、
前記少なくとも1つのさらなる子ノードの全てが失敗を返したなら、前記回復ノードは失敗を返し、前記方法は前記回復ノードを実行する段階を備える、
請求項1から6のいずれか一項に記載の方法。 - 前記行動ツリーアーキテクチャは、オブジェクトを選択すること、前記オブジェクトをつまみ上げること及び前記オブジェクトを所望の位置に持ってくることに関連するサブツリーを備え得、前記方法はこのサブツリーを実行する、
請求項1から7のいずれか一項に記載の方法。 - 前記ロボットは、移動ベース及びマニピュレータのうち少なくとも1つを含む、
請求項1から8のいずれか一項に記載の方法。 - 前記ロボットは、自律駆動ロボットである、
請求項1から9のいずれか一項に記載の方法。 - 少なくとも1つの前記制御フローノードと、少なくとも1つの前記実行ノードとに関連するコマンドは、コンピュータソースコードにおいて実行可能な機能として実施され、
前記ノードと前記ノードに接続する前記有向エッジとがツリー構造を定義し、
前記ツリー構造は、データファイルとして格納され、
前記方法は、実行可能な機能として実施される前記コマンドと、データファイルとして格納される前記ツリー構造と、ランタイム時の行動ツリーエグゼクティブへの実行コマンドとを送信する段階を備え、
前記行動ツリーエグゼクティブは、実行可能な機能として実施される前記コマンドに基づく制御プログラムを生成し、前記ツリー構造は、データファイル及びランタイム時の前記実行コマンドとして格納される、
請求項1から10のいずれか一項に記載の方法。 - 前記ロボットは、センサーを含み得、前記方法は、前記センサーによって情報を感知する段階と、前記ロボットに前記情報に応答させる段階とを含む、
請求項1から11のいずれか一項に記載の方法。 - 請求項1から12のいずれか一項に記載の方法を実行するように適応されるデータ処理手段を備えるシステムであって、前記システムは好ましくは、ロボットを備える、
システム。 - プログラミング、監視、内観、及びデバッギングのうちの少なくとも1つのための方法であって、前記方法は、行動ツリーアーキテクチャの使用を含み、前記行動ツリーアーキテクチャは、請求項1から12のいずれか一項に記載のアーキテクチャのいずれかを備える、方法。
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| EP16158565.8A EP3214510B1 (en) | 2016-03-03 | 2016-03-03 | Controlling process of robots having a behavior tree architecture |
| EP16158565.8 | 2016-03-03 | ||
| PCT/EP2017/054389 WO2017148830A1 (en) | 2016-03-03 | 2017-02-24 | Controlling process of robots having a behavior tree architecture |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2019512402A JP2019512402A (ja) | 2019-05-16 |
| JP6943364B2 true JP6943364B2 (ja) | 2021-09-29 |
Family
ID=55527784
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2018541426A Active JP6943364B2 (ja) | 2016-03-03 | 2017-02-24 | 行動ツリーアーキテクチャを有するロボットの制御プロセス |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US11338434B2 (ja) |
| EP (1) | EP3214510B1 (ja) |
| JP (1) | JP6943364B2 (ja) |
| KR (1) | KR20180123513A (ja) |
| CN (1) | CN108780303A (ja) |
| WO (1) | WO2017148830A1 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2024180685A1 (ja) | 2023-02-28 | 2024-09-06 | 株式会社安川電機 | ロボット制御システム、ロボット制御方法、およびロボット制御プログラム |
Families Citing this family (59)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR102048365B1 (ko) * | 2017-12-11 | 2019-11-25 | 엘지전자 주식회사 | 인공지능을 이용한 이동 로봇 및 이동 로봇의 제어방법 |
| CN109684217B (zh) * | 2018-12-25 | 2022-06-14 | 网易(杭州)网络有限公司 | 一种游戏检测的方法及装置、电子设备、存储介质 |
| US12174611B2 (en) * | 2019-03-07 | 2024-12-24 | Abb Schweiz Ag | Method of controlling an industrial system, control system and industrial system |
| CN110377040A (zh) * | 2019-07-31 | 2019-10-25 | 北京智行者科技有限公司 | 基于行为树的自动驾驶决策方法及装置 |
| CN110688301B (zh) * | 2019-08-22 | 2021-03-02 | 浙江口碑网络技术有限公司 | 服务器测试方法、装置、存储介质及计算机设备 |
| US11745345B2 (en) * | 2019-08-30 | 2023-09-05 | Intrinsic Innovation Llc | Planning by work volumes to avoid conflicts |
| US11577392B2 (en) * | 2019-08-30 | 2023-02-14 | Intrinsic Innovation Llc | Splitting transformers for robotics planning |
| US11747787B2 (en) | 2019-08-30 | 2023-09-05 | Intrinsic Innovation Llc | Combining transformers for robotics planning |
| US11787048B2 (en) * | 2019-08-30 | 2023-10-17 | Intrinsic Innovation Llc | Robot planning from process definition graph |
| US11134152B2 (en) * | 2019-11-22 | 2021-09-28 | Genesys Telecommunications Laboratories, Inc. | System and method for managing a dialog between a contact center system and a user thereof |
| US10654166B1 (en) | 2020-02-18 | 2020-05-19 | UiPath, Inc. | Automation windows for robotic process automation |
| US11233861B2 (en) | 2020-02-18 | 2022-01-25 | UiPath, Inc. | Inter-session automation for robotic process automation (RPA) robots |
| CN113515272A (zh) * | 2020-04-09 | 2021-10-19 | 深圳轩科华智能科技有限公司 | 一种可视化编程的方法和系统 |
| US11797016B2 (en) | 2020-04-13 | 2023-10-24 | Boston Dynamics, Inc. | Online authoring of robot autonomy applications |
| EP3926422A1 (en) * | 2020-06-17 | 2021-12-22 | Siemens Aktiengesellschaft | Method for programming at least one machine in an industrial automation system |
| CN113837211B (zh) * | 2020-06-23 | 2024-06-14 | 华为技术有限公司 | 一种驾驶决策方法及装置 |
| US11157339B1 (en) | 2020-07-09 | 2021-10-26 | UiPath, Inc. | Automation of a process running in a first session via a robotic process automation robot running in a second session |
| US11392477B2 (en) | 2020-07-09 | 2022-07-19 | UiPath, Inc. | Automation of a process running in a first session via a robotic process automation robot running in a second session |
| US12372944B2 (en) * | 2020-07-31 | 2025-07-29 | Aurora Flight Sciences Corporation, a subsidiary of The Boeing Company | Causing a robot to execute a mission using a behavior tree and a leaf node library |
| WO2022028682A1 (de) * | 2020-08-04 | 2022-02-10 | Siemens Aktiengesellschaft | Verfahren zum automatisierten erstellen eines skill-interfaces, computerprogrammprodukt und vorrichtung |
| WO2022081577A1 (en) * | 2020-10-12 | 2022-04-21 | The Johns Hopkins University | Robot watchdog |
| CN112235419B (zh) * | 2020-12-09 | 2021-03-09 | 之江实验室 | 基于行为树的机器人云平台执行引擎和执行方法 |
| CN112965436B (zh) * | 2021-01-27 | 2022-01-21 | 深圳精智达技术股份有限公司 | 一种单线程多轴控制方法及相关装置 |
| EP4040293A1 (en) * | 2021-02-04 | 2022-08-10 | Magazino GmbH | Controlling an apparatus, e.g., a robot, with a behavior tree |
| CN112882930B (zh) * | 2021-02-04 | 2023-09-26 | 网易(杭州)网络有限公司 | 自动化测试方法、装置、存储介质及电子设备 |
| EP4083722B1 (en) * | 2021-04-30 | 2024-11-06 | Siemens Aktiengesellschaft | Method for automatically generating a behavior tree program for controlling a machine |
| CN113536528B (zh) * | 2021-05-14 | 2022-05-17 | 中国人民解放军军事科学院评估论证研究中心 | 一种无护航编队情况下预警机战术行为模拟方法及系统 |
| CN117769484A (zh) | 2021-06-04 | 2024-03-26 | 波士顿动力公司 | 指向移动机器人的自主和远程操作传感器 |
| CN113110270B (zh) * | 2021-06-15 | 2021-09-21 | 北京德风新征程科技有限公司 | 报警信号处理方法、装置、电子设备和计算机可读介质 |
| EP4140664A1 (en) * | 2021-08-31 | 2023-03-01 | Magazino GmbH | Capabilities for error categorization, reporting and introspection of a technical apparatus |
| CN113967913B (zh) * | 2021-10-22 | 2024-03-26 | 中冶赛迪上海工程技术有限公司 | 一种抓钢装置的运动规划方法及系统 |
| JP7168058B1 (ja) | 2021-11-01 | 2022-11-09 | 三菱電機株式会社 | 設備監視システム、設備監視方法、監視装置、及びプログラム |
| CN114326495B (zh) * | 2021-12-24 | 2024-02-09 | 中电海康集团有限公司 | 一种机器人控制系统架构及语音指令处理方法 |
| US12210889B2 (en) | 2022-01-21 | 2025-01-28 | UiPath, Inc. | Automation windows for robotic process automation using multiple desktops |
| WO2023142079A1 (zh) * | 2022-01-29 | 2023-08-03 | 西门子股份公司 | 工作流创建方法、系统、介质及程序产品 |
| EP4459398A4 (en) * | 2022-01-29 | 2025-11-05 | Siemens Ag | METHOD, DEVICE AND SYSTEM FOR GENERING WORKFLOWS, PROGRAM MEDIA AND PRODUCT |
| WO2023142077A1 (zh) * | 2022-01-29 | 2023-08-03 | 西门子股份公司 | 工作流生成方法、装置、系统、介质及程序产品 |
| WO2023142075A1 (zh) * | 2022-01-29 | 2023-08-03 | 西门子股份公司 | 工作流创建方法、装置、平台和计算机可读介质 |
| CN118556215A (zh) * | 2022-01-29 | 2024-08-27 | 西门子股份公司 | 工作流控制方法、装置、系统、介质及程序产品 |
| CN114536333B (zh) * | 2022-02-18 | 2023-10-31 | 南京邮电大学 | 一种基于行为树的机械臂任务规划系统及应用方法 |
| EP4465136A4 (en) * | 2022-02-28 | 2025-06-04 | Siemens Aktiengesellschaft | Method and apparatus for workflow creation, as well as platform and computer-readable medium |
| CN116787419A (zh) * | 2022-03-18 | 2023-09-22 | 深圳华芯信息技术股份有限公司 | 机器人决策系统、方法及终端 |
| CN114675593B (zh) * | 2022-03-30 | 2024-07-05 | 东北大学 | 基于行为树的热处理线板材跟踪控制方法、系统以及介质 |
| CN114779829B (zh) * | 2022-04-08 | 2024-10-25 | 沈阳工程学院 | 一种微型扑翼飞行机器人行为控制方法及控制系统 |
| KR102843905B1 (ko) * | 2022-07-07 | 2025-08-06 | 주식회사 케이티 | 자율주행 로봇, 자율주행 로봇의 동작 방법, 자율주행 로봇 플랫폼 서버, 그리고 사용자 단말을 이용하여 자율주행 로봇을 제어하는 방법 |
| CN115454587B (zh) * | 2022-07-25 | 2024-07-23 | 中国人民解放军军事科学院国防科技创新研究院 | 智能卫星自主任务管理系统及方法 |
| WO2024031695A1 (zh) * | 2022-08-12 | 2024-02-15 | 西门子股份公司 | 需求描述数据重用方法、装置和存储介质 |
| CN115366155B (zh) * | 2022-08-15 | 2025-07-08 | 上海擎朗智能科技有限公司 | 机器人故障诊断方法、装置、机器人和存储介质 |
| CN115179301B (zh) * | 2022-09-13 | 2022-12-09 | 中国人民解放军国防科技大学 | 基于行为树的地面目标物体自动抓取控制方法及系统 |
| CN115545213B (zh) * | 2022-10-13 | 2023-04-18 | 北京鼎成智造科技有限公司 | 一种基于图形化行为树和强化学习的建模方法及装置 |
| CN116346711B (zh) * | 2023-03-31 | 2024-04-05 | 西安电子科技大学 | 基于行为树的路由协议表征方法、介质及通信方法 |
| WO2024232947A1 (en) | 2023-05-08 | 2024-11-14 | Boston Dynamics, Inc. | Location based change detection within image data by a mobile robot |
| CN117556894A (zh) * | 2023-11-13 | 2024-02-13 | 之江实验室 | 基于语义网络和知识库控制机器人任务决策的系统 |
| CN118036750B (zh) * | 2024-03-05 | 2025-05-30 | 深圳若愚科技有限公司 | 基于多模态大模型的具身智能任务规划器训练方法及系统 |
| EP4647920A1 (en) | 2024-05-07 | 2025-11-12 | Jungheinrich Aktiengesellschaft | Testbench for robot behavior trees |
| EP4647217A1 (en) | 2024-05-07 | 2025-11-12 | Jungheinrich AG | Tasking robots using a job data structure |
| CN118322207B (zh) * | 2024-05-08 | 2024-12-03 | 北京小米机器人技术有限公司 | 运动控制方法及装置、行为树、电子设备及存储介质 |
| CN119973978B (zh) * | 2024-12-31 | 2025-10-17 | 上海智元新创技术有限公司 | 一种基于行为树的调度处理方法 |
| CN120354634B (zh) * | 2025-06-24 | 2025-09-19 | 重庆长安汽车股份有限公司 | 一种车辆的故障仿真测试方法、装置及电子设备 |
Family Cites Families (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP4449372B2 (ja) * | 2002-09-02 | 2010-04-14 | ソニー株式会社 | ロボット装置及びその行動制御方法 |
| US7103447B2 (en) * | 2002-09-02 | 2006-09-05 | Sony Corporation | Robot apparatus, and behavior controlling method for robot apparatus |
| US7386436B2 (en) | 2003-12-22 | 2008-06-10 | Inmedius, Inc. | Viewing system that supports multiple electronic document types |
| JP5125662B2 (ja) * | 2008-03-24 | 2013-01-23 | 富士通株式会社 | クエリ変換方法および検索装置 |
| CN103838563B (zh) | 2012-11-27 | 2017-07-28 | 台博机器人股份有限公司 | 自动装置的程序开发方法 |
| CN105117575B (zh) * | 2015-06-17 | 2017-12-29 | 深圳市腾讯计算机系统有限公司 | 一种行为处理方法及装置 |
| US9823913B2 (en) * | 2015-12-03 | 2017-11-21 | International Business Machines Corporation | Method of adding local variables in place of global in JavaScript |
-
2016
- 2016-03-03 EP EP16158565.8A patent/EP3214510B1/en active Active
-
2017
- 2017-02-24 KR KR1020187028713A patent/KR20180123513A/ko not_active Ceased
- 2017-02-24 US US16/081,763 patent/US11338434B2/en active Active
- 2017-02-24 CN CN201780014356.2A patent/CN108780303A/zh active Pending
- 2017-02-24 WO PCT/EP2017/054389 patent/WO2017148830A1/en not_active Ceased
- 2017-02-24 JP JP2018541426A patent/JP6943364B2/ja active Active
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2024180685A1 (ja) | 2023-02-28 | 2024-09-06 | 株式会社安川電機 | ロボット制御システム、ロボット制御方法、およびロボット制御プログラム |
| EP4635687A1 (en) | 2023-02-28 | 2025-10-22 | Kabushiki Kaisha Yaskawa Denki | Robot control system, robot control method, and robot control program |
Also Published As
| Publication number | Publication date |
|---|---|
| WO2017148830A1 (en) | 2017-09-08 |
| US20190086894A1 (en) | 2019-03-21 |
| CN108780303A (zh) | 2018-11-09 |
| KR20180123513A (ko) | 2018-11-16 |
| US11338434B2 (en) | 2022-05-24 |
| EP3214510A1 (en) | 2017-09-06 |
| JP2019512402A (ja) | 2019-05-16 |
| EP3214510B1 (en) | 2021-06-30 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6943364B2 (ja) | 行動ツリーアーキテクチャを有するロボットの制御プロセス | |
| US12379711B2 (en) | Controlling an apparatus with a behavior tree | |
| CN100408277C (zh) | 机器人的待机位置复位程序生成装置 | |
| CN108136577B (zh) | 通用操作系统联动式实时机器人控制系统及利用其的实时设备控制系统 | |
| Sanfilippo et al. | Controlling Kuka industrial robots: Flexible communication interface JOpenShowVar | |
| Thomas et al. | A new skill based robot programming language using uml/p statecharts | |
| CN114063634A (zh) | 用于使得一个或多个机器人执行使命的设备和方法 | |
| CN104812535A (zh) | 自动产生用于将机器人从停止位置返回预设重启位置的无碰撞返回程序的方法和设备 | |
| Clark et al. | Robotic agent programming in TeleoR | |
| Macaluso et al. | Toward automated programming for robotic assembly using chatgpt | |
| Kazhoyan et al. | Executing underspecified actions in real world based on online projection | |
| US11221852B2 (en) | Method for dynamic adaptation of a workflow of an automatic system | |
| US20230093024A1 (en) | Operating an application of a robot system | |
| US20250355945A1 (en) | Task execution based on behavior tree | |
| Bias et al. | A real-time rover executive based on model-based reactive planning | |
| EP3671584B1 (en) | Method and system for controlling a production process | |
| Genesereth | A comparative analysis of some simple architectures for autonomous agents | |
| JPH08106320A (ja) | 自動機械及び自動機械の制御方法 | |
| Beetz et al. | Local Planning of Ongoing Activities. | |
| JP2000099128A (ja) | ロボット教示・制御方法及びロボット教示装置並びにロボット制御装置 | |
| Clark et al. | Concurrent Task Programming of Robotic Agents in TeleoR. | |
| US20240217098A1 (en) | Error handling for real-time robotic control systems | |
| KR101956504B1 (ko) | 로봇 시뮬레이터를 제공하는 방법, 시스템 및 비일시성의 컴퓨터 판독 가능 기록 매체 | |
| WO2020167291A1 (en) | Computerized system and method configured with hierarchical constraints to ensure safe operation of an autonomous machine | |
| Son et al. | Reconstructible S/W Model for Evolutionary Robots in Multi-robot Cooperation Environments |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180926 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180926 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190828 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190903 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20191203 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20200107 |
|
| C60 | Trial request (containing other claim documents, opposition documents) |
Free format text: JAPANESE INTERMEDIATE CODE: C60 Effective date: 20200507 |
|
| C22 | Notice of designation (change) of administrative judge |
Free format text: JAPANESE INTERMEDIATE CODE: C22 Effective date: 20201013 |
|
| C13 | Notice of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: C13 Effective date: 20201104 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210201 |
|
| C22 | Notice of designation (change) of administrative judge |
Free format text: JAPANESE INTERMEDIATE CODE: C22 Effective date: 20210413 |
|
| C22 | Notice of designation (change) of administrative judge |
Free format text: JAPANESE INTERMEDIATE CODE: C22 Effective date: 20210629 |
|
| C23 | Notice of termination of proceedings |
Free format text: JAPANESE INTERMEDIATE CODE: C23 Effective date: 20210706 |
|
| C03 | Trial/appeal decision taken |
Free format text: JAPANESE INTERMEDIATE CODE: C03 Effective date: 20210810 |
|
| C30A | Notification sent |
Free format text: JAPANESE INTERMEDIATE CODE: C3012 Effective date: 20210810 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210827 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6943364 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |