(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024124349
(43)【公開日】2024-09-12
(54)【発明の名称】基本属性空間に基づいて行動を計画するための方法
(51)【国際特許分類】
G06Q 50/00 20240101AFI20240905BHJP
【FI】
G06Q50/00
【審査請求】有
【請求項の数】17
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2024018145
(22)【出願日】2024-02-08
(31)【優先権主張番号】63/449,056
(32)【優先日】2023-03-01
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】18/192,623
(32)【優先日】2023-03-29
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】503113186
【氏名又は名称】ホンダ リサーチ インスティテュート ヨーロッパ ゲーエムベーハー
【氏名又は名称原語表記】Honda Research Institute Europe GmbH
(74)【代理人】
【識別番号】110001081
【氏名又は名称】弁理士法人クシブチ国際特許事務所
(72)【発明者】
【氏名】ハスラー,シュテファン
(72)【発明者】
【氏名】タンネベルク,ダニエル
(72)【発明者】
【氏名】ギンガー,ミヒャエル
【テーマコード(参考)】
5L050
【Fターム(参考)】
5L050CC60
(57)【要約】
【課題】利用可能なロボット支援システムの、狭く、特殊化されたドメインの制限を克服すること。
【解決手段】属性空間に基づいて支援システムを動作させるための方法は、実現すべき少なくとも1つの目標状態を定義するタスク情報を取得することと、自律デバイスまたはユーザと、目標状態を達成することに関与する少なくとも1つのオブジェクトとの初期状態を定義する初期状態情報を取得することと、タスク情報、初期状態情報、およびオブジェクトに関係する属性情報に基づいて計画問題を定義することと、計画問題を解くための行動または一連の行動を選択することと、目標状態を実現するために人間-機械インターフェースHMIまたは自律デバイスに制御信号を出力することと、行動または一連の行動が目標状態を実現するかどうかを判定し、実現しない場合、属性情報に基づいて計画問題を分解して、分解された計画問題を生成することと、分解された計画問題を解くことと、HMIまたは自律デバイスに制御信号を出力することと、を含む。
【選択図】
図1
【特許請求の範囲】
【請求項1】
属性空間に基づいて支援システムを動作させるための方法であって、
前記支援システムによって実現すべき少なくとも1つの目標状態を定義するタスク情報を取得することと、
自律デバイスまたはユーザの少なくとも一方と、前記目標状態または前記目標状態の1つを達成することに関与する少なくとも1つのオブジェクトとの初期状態を定義する初期状態情報を取得することと、
前記取得したタスク情報、前記初期状態情報に基づいて、またさらに、データベースに記憶されている前記少なくとも1つのオブジェクトに関係する属性情報に基づいて、計画問題を定義することと、
計画モジュールにより、前記生成された計画問題を解くための行動または一連の行動を選択することと、
制御信号を生成し、前記制御信号を、前記目標状態または前記目標状態の1つを前記ユーザが実現するのを支援するために人間-機械インターフェース(HMI)に、またはそれぞれの前記目標状態を実現するために前記自律デバイスに、の少なくとも一方に出力することと、を含み、
前記方法が、
前記選択された行動または一連の行動が前記目標状態を実現するかどうかを判定し、前記選択された行動または一連の行動が前記目標状態を実現しないと判定した場合、
前記生成された計画問題を、前記データベースに記憶されている前記属性情報に基づいて分解して、分解された計画問題を生成し、前記分解された計画問題を前記計画モジュールに提供することと、
前記計画モジュールにより、前記分解された計画問題を解くことと、
前記解かれた、分解された計画問題に基づいて前記制御信号を生成し、前記制御信号を、前記目標状態を前記ユーザが実現するのを支援するために前記人間-機械インターフェースに、または前記目標状態を実現するために前記自律デバイスに、の少なくとも一方に出力することと、
をさらに含む、方法。
【請求項2】
前記記憶されている属性情報は、前記少なくとも1つのオブジェクトの少なくとも状態と、前記計画問題の初期状態と、あるデバイスが少なくとも1つの所定の条件下で前記少なくとも1つのオブジェクトに対して有する効果と、を定義する複合属性および基本属性を含む、請求項1に記載の支援システムを動作させるための方法。
【請求項3】
前記生成された計画問題を分解することが、前記生成された計画問題に含まれる少なくとも1つの複合属性を、前記記憶されている属性情報に基づいて基本属性のセットにマッピングすることを含む、請求項1に記載の支援システムを動作させるための方法。
【請求項4】
前記記憶されている属性情報が、前記マッピングを行うために基本属性のセットに関連付けられた複合属性を記憶する対応表を含む、請求項3に記載の支援システムを動作させるための方法。
【請求項5】
前記マッピングすることが、複合属性空間における少なくとも1つの目標状態g、初期状態s、および計画ドメインΣの少なくとも1つを、基本属性空間におけるそれぞれの少なくとも1つの基本目標状態g’、基本初期状態si’、および基本計画ドメインΣ’にマッピングすることを含む、請求項3に記載の支援システムを動作させるための方法。
【請求項6】
前記基本属性のセットへの前記複合属性の新しいマッピングを、前記少なくとも1つのオブジェクトと他のオブジェクトとの類似性から見た前記新しいマッピングと所定のマッピングとの類似性に基づいて、予測することを含む、請求項3に記載の支援システムを動作させるための方法。
【請求項7】
前記類似性に基づいて前記複合属性から前記基本属性のセットへの新しいマッピングを予測することは、前記少なくとも1つのオブジェクトと前記他のオブジェクトとがあるオブジェクトを同じ手段に曝した場合に、前記少なくとも1つのオブジェクトが前記他のオブジェクトと類似する効果を及ぼすと予測することを含む、請求項6に記載の支援システムを動作させるための方法。
【請求項8】
前記類似性に基づいて前記複合属性から前記基本属性のセットへの新しいマッピングを予測することは、所定のオブジェクトがあるオブジェクトカテゴリに対して効果を及ぼすという予測を一般化することと、同じオブジェクトカテゴリの別の所定のオブジェクトがオブジェクトを同じ手段に曝し、前記所定のオブジェクトと同じ効果をもたらすと予測することとを含む、請求項6に記載の支援システムを動作させるための方法。
【請求項9】
前記複合属性から前記基本属性のセットへの新しいマッピングを予測することが、前記支援システムの設計段階中に提供される所定の関係情報、専門家によって生成される関係情報、および、前記支援システムの前記ユーザとの対話プロセス中にオンラインで生成される関係情報、の少なくとも1つに基づく、請求項6に記載の支援システムを動作させるための方法。
【請求項10】
所定の基準が満たされるまで、前記生成された計画問題を前記記憶されている属性情報に基づいて反復的に分解して、前記分解された計画問題を生成することを含む、請求項1に記載の支援システムを動作させるための方法。
【請求項11】
前記分解された計画問題を解く、前記選択された行動または一連の行動が前記目標状態または前記目標状態の1つを実現する場合に、
前記所定の基準が満たされると判定すること
を含む、請求項10に記載の支援システムを動作させるための方法。
【請求項12】
前記記憶されている属性情報に基づいて、対応する基本属性のセットへの前記複合属性のそれ以上のマッピングが可能でない場合に、
前記所定の基準が満たされると判定すること
を含む、請求項11に記載の支援システムを動作させるための方法。
【請求項13】
前記方法が、前記目標状態または前記目標状態の1つを実現するために計画プロセス中にオンラインで実行される、請求項1に記載の支援システムを動作させるための方法。
【請求項14】
前記支援システムが、前記自律デバイスを含むロボット支援システムに含まれる、請求項1に記載の支援システムを動作させるための方法。
【請求項15】
前記支援システムが、前記自律デバイスのコントローラに組み込まれる、または、
前記支援システムが、ネットワークを介して前記自律デバイスに接続される遠隔サーバで実行されるソフトウェアとして実装される
請求項1に記載の支援システムを動作させるための方法。
【請求項16】
前記支援システムが、前記人間-機械インターフェースを介して前記ユーザが前記少なくとも1つの目標状態を実現するのを誘導し、
前記人間-機械インターフェースが、現実世界に存在するタスク環境または生成された仮想環境を前記ユーザに対して視覚化するように構成された仮想現実デバイスを含む、または
前記人間-機械インターフェースが、前記ユーザを誘導するための情報を、現実世界に存在しユーザによって知覚されている前記タスク環境へのオーバーレイとして提示するように構成された拡張現実デバイスを含む
請求項1に記載の支援システムを動作させるための方法。
【請求項17】
コンピュータ可読プログラムが組み込まれている非一時的なコンピュータ可読媒体であって、前記コンピュータ可読プログラムは、コンピューティングデバイス上で実行されたときに、前記コンピューティングデバイスに、属性空間に基づいて支援システムを動作させるための方法を行わせ、前記方法は、
前記支援システムによって実現すべき少なくとも1つの目標状態を定義するタスク情報を取得することと、
自律デバイスまたはユーザの少なくとも一方と、前記少なくとも1つの目標状態を達成することに関与する少なくとも1つのオブジェクトとの初期状態を定義する初期状態情報を取得することと、
前記取得したタスク情報、前記初期状態情報に基づいて、またさらに、データベースに記憶されている前記少なくとも1つのオブジェクトに関係する属性情報に基づいて、計画問題を定義することと、
計画モジュールにより、前記生成された計画問題を解くための行動または一連の行動を選択することと、
制御信号を生成し、前記制御信号を、前記目標状態または前記目標状態の1つを前記ユーザが実現するのを支援するために人間-機械インターフェース(HMI)に、またはそれぞれの前記目標状態を実現するために前記自律デバイスに、の少なくとも一方に出力することと、を含み、
前記方法が、
前記選択された行動または一連の行動が前記目標状態を実現するかどうかを判定し、前記選択された行動または一連の行動が前記目標状態を実現しないと判定した場合、
前記生成された計画問題を、前記データベースに記憶されている前記属性情報に基づいて分解して、分解された計画問題を生成し、前記分解された計画問題を前記計画モジュールに提供することと、
前記計画モジュールにより、前記分解された計画問題を解くことと、
前記解かれた、分解された計画問題に基づいて前記制御信号を生成し、前記制御信号を、前記目標状態を前記ユーザが実現するのを支援するために前記人間-機械インターフェースに、または前記目標状態を実現するために前記自律デバイスに、の少なくとも一方に出力することと、
をさらに含む、非一時的なコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本願は、2023年3月1日に出願された米国出願第63/449,056号の優先権の利益を主張する。上述の特許出願の全体は、参照により本明細書に組み込まれ、本明細書の一部とされる。
【0002】
本開示は、ロボット工学および支援システムの一般的分野に関する。詳細には、支援システムを動作させるための行動の計画プロセスを改良する方法および対応するコンピュータプログラムが提案される。
【背景技術】
【0003】
支援システムまたはロボットシステムの環境は、属性のセットによって表すことができる。属性という語は、異なる値を取ることができる変数を表す。各属性に実際の値を割り当てることで、環境の特定の状態を定義する。一般に、ロボットシステムのタスクは、初期状態から開始して、環境の目標状態に到達するためのある行動または一連の行動を行うことにより、所与のゴールに到達するように策定することができる。それに対応して、支援システムのタスクは、初期状態から開始して環境の所与の目標状態を実現するために、ロボットシステムを、または人間-機械インターフェースを介して人間のユーザを、誘導するように策定され得る。支援システムは、ある状態(初期状態)から1つまたはいくつかの次の状態(1つまたは複数の目標状態)に変化するために何が行われる必要があるかを定義する行動のセットを指令する。支援システムのドメイン知識は、支援システムのドメインが利用可能な属性および行動を含む。
【0004】
計画プロセスで、支援システムは、問題の記述に従って、所望の目標状態に到達するために行動を選択し、場合によってはそれらをある順序で組み合わせる。計画問題は、問題の記述を定義し、計画プロセスへの入力を提供する。
【0005】
支援システムは、環境の状態を表すために属性を使用する。自律デバイスの例である台所ロボットを操作する支援システムの例に関して、台所ロボットは、台所環境内を移動して特定の場所に到達するための行動またはスキルを有し得る。台所ロボットは、腕および腕の端部に配置されたエンドエフェクタ、例えば手を動かし、台所環境内で例えばパンなどのオブジェクトや、例えばナイフやトースタなどのデバイスと相互作用するスキルを有し得る。したがって、台所ロボットを操作する支援システムは、どのようなデバイスが台所にあり、それぞれのデバイスが現在どの場所にあり、各デバイスのどの部分、例えば各デバイスのどのスイッチ、ハンドル、およびレバーが操作可能であるか、ならびに、どの開口部またはドアが例えば食器棚などのデバイスの内部へのアクセスを提供するかを記述する詳細な属性を有する。これにより、モデル化された部分またはスキルを組み立てたものである、各デバイスにどのように到達し、それをどのように操作するかについての台所ロボットのための計画を見つけるために、支援システムが計画モジュールを使用することが可能になる。これは、ロボットが以前に行動中にデバイスのいくつかを経験したことがない場合でも当てはまる。
【0006】
それでも、属性を抽象化として使用することは、詳細な情報の度合いを失う結果になる。
【0007】
例えば、多くの態様が通常、属性空間では単純化および簡約化される。台所ロボットは、あるデバイスが特定のオブジェクトに適用されたことを表す属性、例えば「was_in_toaster bread_1」、「was_in_egg_cooker egg_1」、「was_in_pan meat_3」を与えられる可能性がある。属性は、ある行動の全体的な効果が何であったのか、例えば「toasted bread_1」、「cooked egg_2」、「cooked meat_3」を定義することがある。そのような属性は複合属性であり、これは、オブジェクトのより基本的な物理的性質のうちどれが変化したかを高レベルで抽象化する。台所環境の例では、複合属性「トーストしたパン」は、基本属性「[熱い、茶色、サクサクした]」の組み合わせに対応する抽象化を表す。複合属性を使用して、支援システムは、既知の種類のデバイスの学習済みの順序に従うだけで、レシピをどのように調製するかを効率的に計画することができる。
【0008】
しかし、特に複合属性を使用することは、結果として制約を生じさせることがある。
【0009】
最新技術の計画問題は、通常、例えば台所環境で食品および厨房器具を用いて動作する台所ロボットなど、狭く、問題に固有のドメインで定義される。専門家のユーザが、特定の問題のために明示的に設計された状態および行動空間を定義する。よって、計画問題は、狭い、固有のドメインに適用可能であり、そこでは、現在のプランナが優れた結果を達成する。それでも、現在追及されている狭いアプローチは、予め定められた問題ドメインを超える、より広い問題解決能力を考えるとき、その限界に達する。
【0010】
既存の支援システムおよび計画モジュールにおける着目は、小さく、閉じられた、明確に定義されたドメインにおける制約されたサービスを重要視する。しかし、台所環境全体を扱うように支援システムの能力を拡張すれば、単一のドメインとしての家全体、さらには世界が、拡大されたサービスおよび応用分野のセットを提供するようになる。さらに、計画問題、または、例えばトースタがないなど必要なデバイスを利用できないことから生じる計画実行中の問題も、現在の固有で限定されたドメイン定義では問題となる。
【発明の概要】
【発明が解決しようとする課題】
【0011】
利用可能なロボット支援システムの、狭く、特殊化されたドメインの制限を克服することが望ましい。
【課題を解決するための手段】
【0012】
第1の態様に係る属性空間に基づいて支援システムを動作させるための方法、および第2の態様に係るコンピュータプログラムがこの問題に対処する。
【0013】
従属請求項は、さらに有利な実施形態を定義する。
【0014】
第1の態様に係る属性空間に基づいて支援システムを動作させるための方法は、支援システムによって実現すべき少なくとも1つの目標状態を定義するタスク情報を取得することと、自律デバイスまたは被支援者の少なくとも一方と、目標状態、または複数の目標状態が定義される場合には目標状態の1つを達成することに関与する少なくとも1つのオブジェクトとの初期状態を定義する初期状態情報を取得することと、を含む。以降では、本開示の読みやすさを向上させるために、1つのみの目標状態が定義される場合には唯一の目標状態を、または複数の目標状態が定義される場合には複数の目標状態のうちの1つを、常に「目標状態」と称することが留意されるべきである。方法は続いて、取得したタスク情報、初期状態情報に基づいて、またさらに、データベースに記憶されている少なくとも1つのオブジェクトに関係する属性情報に基づいて、計画問題を定義する。次いで、計画モジュールが、生成された計画問題を解くための行動または一連の行動を選択する。方法はその後、制御信号を生成し、その制御信号を、目標状態をユーザが実現するのを支援するために人間-機械インターフェースに、または目標状態を実現するために自律デバイスに、の少なくとも一方に出力する。方法はさらに、選択された行動または一連の行動が目標状態を実現するかどうかを判定する。選択された行動または一連の行動が目標状態を実現しないと判定した場合、方法は続いて、生成された計画問題を、データベースに記憶されている属性情報に基づいて分解して、分解された計画問題を生成し、分解された計画問題を計画モジュールに提供する。計画モジュールは、分解された計画問題を解く。方法は次いで、解かれた、分解された計画問題に基づいて制御信号を生成し、制御信号を、少なくとも1つの目標状態をユーザが実現するのを支援するために人間-機械インターフェースに、または少なくとも1つの目標状態を実現するために自律デバイスに、の少なくとも一方に出力する。
【0015】
第2の態様に係るコンピュータプログラム製品は、コンピュータ可読プログラムが組み込まれている非一時的なコンピュータ可読媒体を備え、コンピュータ可読プログラムは、コンピューティングデバイス上で実行されたときに、コンピューティングデバイスに、属性空間に基づいて支援システムを動作させるための方法を行わせ、方法は、支援システムによって実現すべき少なくとも1つの目標状態を定義するタスク情報を取得することと、自律デバイスまたは被支援者の少なくとも一方と、目標状態(複数の目標状態が定義される場合は目標状態の1つ)を達成することに関与する少なくとも1つのオブジェクトとの初期状態を定義する初期状態情報を取得することと、を含む。方法は、取得したタスク情報、初期状態情報に基づいて、またさらに、データベースに記憶されている少なくとも1つのオブジェクトに関係する属性情報に基づいて、計画問題を定義し、計画モジュールにより、生成された計画問題を解くための行動または一連の行動を選択することを含む。方法は、制御信号を生成し、その制御信号を、目標状態をユーザが実現するのを支援するために人間-機械インターフェースHMIに、または目標状態を実現するために自律デバイスに、の少なくとも一方に出力することを含む。方法はさらに、選択された行動または一連の行動が目標状態(目標状態の1つ)を実現するかどうかを判定し、選択された行動または一連の行動がそれぞれの目標状態を実現しないと判定した場合、生成された計画問題を、データベースに記憶されている属性情報に基づいて分解して、分解された計画問題を生成し、分解された計画問題を計画モジュールに提供することを含む。方法は続いて、計画モジュールにより、分解された計画問題を解き、解かれた、分解された計画問題に基づいて制御信号を生成し、制御信号を、目標状態をユーザが実現するのを支援するために人間-機械インターフェースに、または目標状態を実現するために自律デバイスに、の少なくとも一方に出力する。
【0016】
実施形態の説明は以下の添付図面を参照する。
【図面の簡単な説明】
【0017】
【
図1】一実施形態による方法の一般的な計画ループの概略図である。
【
図2】一実施形態による、計画問題を分解する選択されたステップを説明するフローチャートである。
【
図3】複合属性空間の複合属性を基本属性空間の基本属性のセットにマッピングするための属性情報の例示的なデータ構造の図である。
【
図4】複合属性空間の複合属性を基本属性空間の基本属性のセットにマッピングするためのオブジェクトの状態を表す、属性情報の例示的なデータ構造の図である。
【
図5】オブジェクト、効果を実現するための手段、およびオブジェクトに対する効果の間の対応関係を示す、属性情報の例示的なデータ構造の図である。
【
図6】基本属性空間における、効果を実現するための手段、オブジェクト、および手段の表現の間の対応関係を示す属性情報の例示的なデータ構造の図である。
【
図7】台所環境で自律デバイスを含む支援システムを動作させるための方法の特定の応用シナリオである。
【発明を実施するための形態】
【0018】
図中、異なる図の対応する要素は、同じ参照符号を有する。図の説明では、可能と考えられる場合は、理解可能性に負の影響を与えることなく、異なる図における同じ参照符号の説明を省く。
【0019】
提案される反復的な計画システムは、最初に、通常は複合属性を含んでいる元の計画問題を解くことを試みる。提案される方法は、プランナが元の計画問題を解くことができない場合に、支援システムの環境内のオブジェクト、デバイス、および効果の潜在的な類似性を革新的な形で利用する。
【0020】
元の計画問題を解くことは、好ましいデバイスがないときに失敗し得る。この場合を仮定すると、計画モジュールは、計画問題を分解して、分解後属性空間または時に基本属性空間と呼ばれる、より一般的な物理的属性空間内の分解されたまたは基本的な計画問題にする。分解後属性空間では、各特定のドメインで予測されるタスクについてやや抽象的な複合属性空間内で行動および効果を表す代わりに、分解プロセスは、複合属性を、複合属性が可能であるよりも詳しく基礎となる物理的プロセスを捉えた、低水準の細分化された(grounded)属性のより普遍的な単一のセットに分解する。基本属性空間内の共有される基礎的表現は、世界を単一のドメインとして扱うことにより、異なるタスクおよび異なる環境間の移行を容易にする。分解ステップは、所与の問題の解空間を拡大し、そのことが問題を解く可能性を向上させる。
【0021】
一部の基本属性は、複合属性と異なり、支援システムが測定可能なものもあり得る。よって、支援システムは、タスク環境の観察に基づく新しい行動を推論し、タスク環境を独自に探索することさえしてよい。
【0022】
台所環境にある支援システムの例に関して、元々複合属性を使用している支援システムは、既知の種類のデバイスを適用する学習済みの順序に従うだけで、所与のレシピの調製を計画することが可能である。一般に、複合属性の使用は制限を生じさせるが、この制限を、属性分解ステップを含む支援システムを動作させるための提案される方法が克服する。
【0023】
知られている支援システムは、異なる複合属性が相互にどのように関係しているかについての情報を持たないため、一般に使用されるデバイスを置き換えることを計画することができない。これは、「was_in_toaster」および「was_in_egg_cooker」などの複合属性に関係し得るが、それは、知られている支援システムは、「トーストされる(toasted)」がどのように「料理される(cooked)」に関係するかについての理論的根拠を持たないためである。基本属性は、複合属性が基本属性と比べて高いレベルの抽象化に起因して記述しない、異なる行動および状態間の関係を取り入れる。
【0024】
複合属性は、異なる意味を持つことがあり、それらはそれぞれ異なる状況または条件下で該当し、そのことが、複合属性空間で定義された計画問題を解くための誤った計画につながり得る。これは例えば「料理される(being cooked)」に当てはまり、これは、例えば「卵」と「肉」、「卵調理器」と「鍋」など、異なるオブジェクトに対して異なる意味を持つことがある。
【0025】
支援システムは、複合属性を測定することができない。このことは、支援システムが環境の現在の状態にアクセスするのを妨げる。一般に初期状態と表される環境の現在の状態は、計画の前に、また場合によっては、行動の成功を検証するために見つかった計画の実行中にも、知られる必要がある。台所環境向けの支援システムの例では、卵がすでに調理されているかどうかを知ることが有用であるが、これには、卵が調理されるとはどのような意味であるかの測定可能な概念が必要となる。さらなる例では、支援システムは、トースタが適正に作動していないかどうかを判定することを必要とし、これには、トーストされるとはどのような意味であるかの測定可能な概念が必要となる。
【0026】
複合属性を基本属性に分解することにより、ユーザが希望やフィードバックを表現することが可能な詳細度の現在の制限が克服され、これは例えば、基本属性空間におけるトーストがよりサクサクしているがあまり熱くないという好みと比較した、複合属性空間におけるトーストがより焼けているまたはあまり焼けていないという好みなどである。
【0027】
一実施形態による支援システムを動作させるための方法では、記憶される属性情報は、少なくとも1つのオブジェクトの少なくとも状態と、計画問題の初期状態と、あるデバイスが少なくとも1つの所定の条件下でその少なくとも1つのオブジェクトに対して有する効果と、を定義する複合属性および基本属性を含む。
【0028】
支援システムを動作させるための方法の一実施形態によれば、生成された計画問題を分解することは、生成された計画問題に含まれる少なくとも1つの複合属性を、記憶されている属性情報に基づいて基本属性のセットにマッピングすることを含む。
【0029】
記憶されている属性情報は、方法の一実施形態では、このマッピングを行うために基本属性のセットに関連付けられた複合属性を記憶する対応表を含む。
【0030】
対応表は、事前に記憶された参照表であってよい。
【0031】
支援システムを動作させるための方法の一実施形態によれば、マッピングは、複合属性空間における少なくとも1つの目標状態g、初期状態si、および計画ドメインΣの少なくとも1つを、基本属性空間における少なくとも1つのそれぞれの基本目標状態g’、基本初期状態si’、および基本計画ドメインΣ’にマッピングすることを含む。
【0032】
一実施形態による支援システムを動作させるための方法は、基本属性のセットへの複合属性の新しいマッピングを、少なくとも1つのオブジェクトと別のオブジェクトとの類似性から見た新しいマッピングと所定のマッピングとの類似性に基づいて、予測することを含む。
【0033】
一実施形態によると、この予測は、少なくとも1つのオブジェクトと他のオブジェクトとが、あるオブジェクトを同じ手段に曝した場合に、その少なくとも1つのオブジェクトが当該他のオブジェクトと類似する効果を及ぼすと予測することを含む。
【0034】
「手段」という表現は、物理的プロセスを言う。デバイスは、オブジェクトを物理的プロセスに曝し、それが、最終的にオブジェクトに対して特定の効果を生じさせる。
【0035】
一実施形態による支援システムを動作させるための方法は、類似性に基づいて基本属性のセットへの複合属性の新しいマッピングを予測することを含み、ここで、新しいマッピングの予測は、所定のオブジェクトがあるオブジェクトカテゴリに対して効果を及ぼすという予測を一般化することを含む。新しいマッピングを予測することは、同じオブジェクトカテゴリの別の所定のオブジェクトがオブジェクトを同じ手段に曝し、所定のオブジェクトと同じ効果を提供すると予測することを含む。
【0036】
支援システムを動作させるための方法の一実施形態によれば、基本属性のセットへの複合属性の新しいマッピングを予測することが、支援システムの設計段階中に提供される所定の関係情報、専門家によって生成される関係情報、および、支援システムのユーザとの対話プロセス中にオンラインで生成される関係情報、の少なくとも1つに基づく。
【0037】
先行する請求項のいずれか一項に記載の支援システムを動作させるための方法は、所定の基準が満たされるまで、生成された計画問題を記憶されている属性情報に基づいて反復的に分解して、分解された計画問題を生成することを含んでよい。
【0038】
反復的に分解するとは、方法が、所定の基準が満たされるまで、生成された計画問題を分解するステップを繰り返し実行することを意味する。
【0039】
支援システムを動作させるための方法の一実施形態によれば、方法は、分解された計画問題を解く、選択された行動または一連の行動が、少なくとも1つの目標状態を実現する場合に、所定の基準が満たされると判定する。
【0040】
方法は、記憶されている属性情報に基づいて、対応する基本属性のセットへの複合属性のそれ以上のマッピングが可能でない場合に、所定の基準が満たされると判定してもよい。
【0041】
方法の一実施形態によれば、方法は、少なくとも1つの目標状態を実現するために計画プロセス中にオンラインで実行される。
【0042】
支援システムは、自律デバイスを含むロボット支援システムに含まれてよい。
【0043】
支援システムは、自律デバイスのコントローラ内に実装されてよい。
【0044】
支援システムは、ネットワークを介して自律デバイスに接続される遠隔サーバで実行されるソフトウェアとして実装されてよい。
【0045】
支援システムを動作させるための方法の一実施形態によれば、支援システムは、人間-機械インターフェースを介してユーザが目標状態を実現するのを誘導する。人間-機械インターフェースは、現実世界に存在するタスク環境をユーザに対して視覚化するように構成された仮想現実デバイスを含んでよい。追加または代替として、人間-機械インターフェースは、ユーザを誘導するための情報を、ユーザにとっての、またユーザによって知覚されている現実世界に存在するタスク環境へのオーバーレイとして提示するように構成された拡張現実デバイスを含んでよい。追加または代替として、人間-機械インターフェースは、生成された仮想環境をユーザに対して視覚化するように構成された仮想現実デバイスを含んでよい。
【0046】
第2の態様に係る、プログラムコード手段を備えたコンピュータプログラムは、プログラムがコンピュータまたは信号プロセッサ上で実行されたときに、コンピュータまたは信号プロセッサに、支援システムを動作させるための方法の実施形態のいずれかに係る方法を行わせるように構成される。
提案される方法およびシステムは、特に自律デバイスを動作させる分野、例えばロボット工学の分野で、動作を計画し、ユーザが所与のタスクに対処し、設定したゴールを実現するのを支援するための計画ツールに関する。以下の実施形態の説明で用いられる用語は、これらの応用分野に由来するものであり、詳細には以下を含む。
【0047】
属性という語は、異なる値を取ることができる、名前の付けられた変数を意味する。
【0048】
値は、例えばブール値など範疇的なものであっても、または連続値であってもよい。
【0049】
複合属性は、より具体的な属性のセットのプレースホルダまたは抽象化である、単一の属性である。複合属性は、例えばオブジェクトの性質を表してよい。
【0050】
基本属性は、複合属性と比べてより物理的な属性である。基本属性はそれ単独で、オブジェクトの具体的な、多くの場合は測定可能な性質を表す。基本属性を共有部分に分解することは不可能であるため、基本属性は通例、他の基本属性に対して強い独立性を示す。
【0051】
属性空間とは、システムがその環境をモデル化するために使用する属性のセットを言う。
【0052】
複合属性空間は、いくつかの複合属性または少なくとも1つの複合属性を含んでいる属性空間である。
【0053】
基本属性空間は、少なくとも理想的には、複合属性を全く含んでいない属性空間である。
【0054】
状態は、属性空間の各属性への値の実際の割り当てである。
【0055】
初期状態は、システムによって観察またはモデル化されている環境の現在の状態である。
【0056】
ゴールという語は、システムが実現すべき1つまたは複数の状態の定義を言う。ゴールは、通常は不完全であり、例えば一部の属性についてのみ、要求値が与えられる。ゴールは、ユーザによって与えられる記述から推論可能である。説明では、目標状態という語をゴールという語と交換可能に使用する。
【0057】
行動は、どのような条件下である状態が次の状態(変化後の状態)に変化または移行するかを記述する規則を意味する。
【0058】
効果とは、行動が引き起こす属性の値の変化である。
【0059】
計画とは、初期状態を、ゴールまたは少なくとも1つの目標状態を満たす状態に移行することのできる、順序付けられた一連の行動である。プランナまたは計画モジュールは、検索することにより、例えば行動を反復的に試行してみることにより、計画を見つけてよい。計画モジュールは、例えばソフトウェアと少なくとも1つのデータ処理ハードウェアデバイスとを組み合わせた構造的要素であり、計画アルゴリズムを適用することによって計画を行う。
【0060】
ドメインは、システムが特定の計画問題を表現し、解決するために使用する行動のセットおよび属性空間を含む。
【0061】
デバイスは、特定の目的のために設計された特定の構造的物体または道具である。デバイスは、オブジェクトに対して使用されてよく、そのオブジェクトの何らかの属性を変化させる。よって、デバイスをオブジェクトに適用することは、そのオブジェクトに対する効果を有する。
【0062】
手段という語は、デバイスがオブジェクトを曝す対象の物理的プロセスを言い、オブジェクトを手段に曝すことは、最終的にオブジェクトに対して効果を生じさせる。
【0063】
図1は、一実施形態による方法の一般的な計画ループの概略図である。この実施形態の説明では、台所環境にあり、食品を調製するなどの特定のタスクを行う支援システム1の具体例を使用する。ある具体例は、支援システム1が、台所環境で自律デバイス2である台所ロボットを制御してトーストしたパンを調製させることを含む。
【0064】
支援システム1を動作させるための方法の実施形態の説明は、可能な実装における特定の態様を解説するために、説明の目的で、台所環境にあるロボット支援システム1を参照する。解説される態様は、例えば製造環境、ロジスティック環境、または車両製作所などの異なるタスク環境にあるロボット支援システム1に転用されてよい。支援システム1は、解説される台所環境として現実世界環境で動作してよく、または、ユーザが仮想環境、例えばトレーニング環境またはさらには娯楽目的のゲーム環境でゴールを達成するのを支援してもよい。
【0065】
図1に示されるプロセスはステップS1で開始し、これは、ユーザからタスクを取得することを含む。取得されたタスクは、ユーザによって策定された初期要求またはゴールの形態を有してよく、それは、複合属性、例えばユーザによって口頭で提供され、複合属性「トーストしたパン」を含んでいるゴール「トーストしたパンが欲しい」、を含んでいることがある。
【0066】
取得されたゴールは、ユーザが支援システム1に環境内で達成することを要求する、少なくとも1つの目標状態を定義する。
【0067】
ステップS2で、支援システム1は、支援システム1が利用可能な知識ベースからの情報を使用して、取得したゴールを解釈する。ユーザが以前に支援システム1にそのように教示している可能性があるため、支援システム1は、取得したゴールを、「トーストした」は行動「トースタを使用する」の結果であると解釈する。
【0068】
ステップS2は、自律デバイス2または被支援者の少なくとも一方と、少なくとも1つの目標状態を達成することに関与する少なくとも1つのオブジェクトとの初期状態を定義する初期状態情報を取得することを含む。初期状態は、台所ロボットの現在の位置、オブジェクトの一例としての台所内のパンの場所、ならびにデバイスの一例としてのトースタの現在の場所および動作ステータスを含んでよい。
【0069】
知識ベースは、ローカルに、例えば自律デバイス2のメモリに、記憶されたデータベースの形態を有してよい。代替または追加として、データベースは、ローカルに台所に、または遠隔の場所に配置され、ネットワークNを介して支援システム1に接続された少なくとも1つのサーバに記憶されてよい。
【0070】
ステップS2で、支援システム1は、取得したタスク情報、初期状態情報に基づき、さらにデータベースに記憶されている少なくとも1つのオブジェクトに関係する属性情報に基づいて、計画問題を定義する。詳細には、データベースは、ステップS2で計画問題を初期計画問題として定義するために、行動および初期状態に関する情報を提供してよい。
【0071】
支援システム1は、ステップS3で、初期計画問題を解決するために、生成された初期計画問題を支援システム1の計画モジュールに提供する。支援システム1は、特定の、したがって狭い条件下でのみ、例えば、トーストしたパンを調製するのに好ましいデバイス、すなわちトースタが台所に存在し、使用できる状態である場合に、複合属性空間において解を表す計画を見つける。
【0072】
計画モジュールは、ステップS3で、複合属性空間で策定された生成された初期計画問題を解くための行動、またはより高い可能性としては一連の行動を選択する。計画モジュールは、初期状態から、可能性としては中間状態を介して目標状態/定義された目標状態の1つに遷移するために、選択した行動を特定の順番に並べてよい。計画モジュールは、ステップS3で、初期計画問題を解くための計画を出力する。
【0073】
ステップS3の後に続くステップS4で、支援システム1は、計画された行動または一連の行動が目標状態を実現するかどうかを判定する。
【0074】
支援システム1がステップS4で、初期計画問題に対処するための計画を見つけることができる、詳細には、その計画が実行可能であり、目標状態を実現すると判定されると判定した場合、支援システム1は続いて、ステップS7で、その計画、詳細にはその計画に含まれる行動または一連の行動を実行してよい。
【0075】
計画モジュールによって提供された計画に従う、選択された行動または一連の行動が、目標状態(の1つ)を実現しないと判定した場合、またはさらには、計画モジュールが取得された初期計画問題を解くための計画を見つけられなかった場合、方法はステップS4からステップS5に進む。
【0076】
ステップS5で、支援システム1は続いて、計画ループで、
図3を参照してより詳細に解説するように、知識ベースの記憶されている知識を使用して、初期問題の一部またはすべての複合属性を基本属性に分解する。
【0077】
詳細には、データベースは、支援システム1が少なくとも1つの複合属性を分解後属性のセットに、好ましくは基本属性のセットに、分解することを可能にするための属性情報(分解情報)を提供する。
【0078】
ステップS5は、生成された計画問題、ここでは初期計画問題を、データベースに記憶されている属性情報に基づいて分解して、分解された計画問題を生成し、分解された計画問題を計画モジュールに提供することを含む。分解された計画問題は、分解された計画問題が複合属性を全く含まない場合は、基本属性空間で策定されてよい。
【0079】
代替として、依然として少なくとも1つの複合属性を含む分解された計画問題は、基本属性空間で表されるが、分解ステップS4に入力された計画問題の少なくとも1つの複合属性は、基本属性のセットに置き換えられている。
【0080】
ステップS4は、より大きい解空間を有する修正された計画問題(新しい計画問題)を生成してよく、支援システム1はこれを、それぞれ分解後属性空間または基本属性空間で修正された計画問題の解を見つけるために計画モジュールに提供する。好ましくは、計画モジュールは、初期計画問題を複合属性空間で解くためにステップS3で使用されたものと同じ計画モジュールである。
【0081】
支援システム1は、計画システムの分野で一般に知られる標準的なプランナを使用して計画モジュールを実装してよい。
【0082】
支援システム1が、ステップS5に続くステップS6で、ステップS5における分解で、分解ステップS5に入力された計画問題を分解することができなかったと判定した場合、処理は終了する(NO)。この場合、支援システム1は、計画問題および取得したゴールの機能可能な解を考案することに失敗した。
【0083】
支援システム1がステップS6で、分解ステップS5が、分解ステップS5に入力された複合属性空間における計画問題を分解することに成功したと判定する場合、処理は、基本属性空間または分解後複合属性空間における分解された計画問題を計画モジュールに提供する。したがって、処理はステップS3から再開し、これは、計画モジュールが、初期計画問題を解く代わりに、分解された計画問題を解く計画を見つけることを試みることを伴う。
【0084】
支援システムは、所定の基準が満たされると判定するまで、ステップS3-S4-S5-S6の処理ループを反復的な計画プロセスで繰り返してよい。
【0085】
反復的な計画プロセスは、プランナが、ステップS4およびS7で、実行可能であることが証明される計画を見つけたとき、または分解ステップS5に入力された計画問題のそれ以上の分解が可能でないときに終了してよい。
【0086】
ステップS4で、初期計画問題または分解された計画問題が、ステップS3で計画モジュールによって考案された計画によって解決可能であると判定した場合、支援システム1は、ステップS7でその計画を実行する。ステップS7は、詳細には、計画に基づく、したがって、解決された分解された計画問題に基づく制御信号を生成し、ステップS1で支援システム1に提供された少なくとも1つの目標状態またはゴールをユーザが実現するのを支援するために、支援システム1の人間-機械インターフェースに出力することを含んでよい。支援システム1は、人間-機械インターフェースによって出力される知覚可能な信号を介して、ユーザ(被支援者)が少なくとも1つの目標状態を実現するのを誘導してよい。
【0087】
代替または追加として、ステップS7は、支援システム1によってステップS1で取得された目標状態またはゴールを実現するために、解決された分解された計画問題に基づく制御信号を生成し、それを自律デバイス2、例えば台所ロボット、に出力することを含んでよい。自律デバイス2は、目標状態を実現するために制御信号に基づいて自律的に行動を行ってよい。
【0088】
代替または追加として、ステップS7は、支援システム1の誘導下でユーザと協力して自律デバイス2によって目標状態を実現するために、解決された分解された計画問題に基づいて制御信号を生成し、自律デバイス2に出力することを含んでよい。
【0089】
図1を参照して解説した一般的な計画ループは、与えられたゴールから、そして、タスク環境の現在の状態、支援システム1がすでに経験を有する行動およびデバイスに関する利用可能な知識に基づいて、初期計画問題を生成することを含む。通常、初期計画問題は高レベルの抽象化を使用し、これは、効率的な計画プロセスおよび計画実行プロセスという利点をもたらす。よって、初期計画問題は、必然的に、より抽象的である複合属性空間に位置する。支援システム1が計画を見つけることに失敗した場合、支援システム1は、元の計画問題表現をより基本的な計画問題表現(分解された計画問題)に分解することを試み、続いて、分解された計画問題を新しい計画問題として解くことを試みる。
【0090】
ステップS7に要約される分解プロセスは、反復的な分解プロセスであってよく、例えば、計画問題を分解することは、初期計画問題から開始し、互いの上に順次構築されていく計画問題の数レベルの分解を含んでよい。
【0091】
図2は、一実施形態による計画問題を分解する選択されたステップを説明するフローチャートを提供する。
【0092】
支援システム1は、ゴールまたは目標状態のセットg、初期状態のセットsi、および複合計画ドメインΣを含む属性を含む複合属性空間P=(Σ,si,g)で、計画問題に対して処理ステップS4を行う。計画問題に含まれる属性のうち少なくとも1つまたは複数は複合属性である。よって、計画問題は、複合属性空間P=(Σ,si,g)で策定される。
【0093】
分解ステップS4は、入力された計画問題Pを分解することに成功して、分解された計画問題P’を生成・出力するために、
図2に示すステップS41、S42およびS43の少なくとも1つの実行に成功することを含み得る。
図2の特例の例では、分解された計画問題P’は、基本計画問題P’=(Σ’,s’
i,g’)であり、これは複合属性Σ,s
i,gは含まず、代わりに、基本ゴール(基本目標状態)のセットg’、基本初期状態のセットs’
i、および基本計画ドメインΣ’を含む基本属性だけを含んでいる。
【0094】
分解された計画問題P’を生成するために、データベースに記憶されている属性情報に基づいて計画問題を複合属性空間Pで分解するステップS4は、下位ステップS41、S42、およびS43の少なくとも1つを含んでよい。
【0095】
ステップS41、42、およびS43は各々、分解ステップS4の1回のサイクル中に行われてよい。代替として、ステップS41、42、およびS43、またはこれらのステップの組み合わせは、各々が一実施形態における計画ループを実装する反復的なアプローチ中に、分解ステップS4の1回のサイクル中に個別に行われてよい。
【0096】
ステップS41は、基本目標状態g’を決定し、複合目標状態gを、対応する基本目標状態g’で置き換えることを含む。
【0097】
ステップS42は、基本初期状態s’iを決定し、複合初期状態siを対応する基本初期状態s’iで置き換えることを含む。
【0098】
ステップS43は、基本計画ドメインΣ’を決定し、複合計画ドメインΣを対応する基本計画ドメインΣ’iで置き換えることを含む。
【0099】
図2は、複合属性空間Pの初期計画問題から開始して、基本属性空間P’で計画問題を推論し、解くための一般的な処理フローを示すものと解釈されてよい。支援システム1は、基本属性空間P’で計画問題を解くために、基本ゴールg’、基本初期状態s’
i、および基本計画ドメインΣ’を推論する。基本計画ドメインは、基本的に基本行動を含む。
【0100】
基本ゴールg’、基本初期状態s’i、および基本計画ドメインΣ’を推論することは、複合属性空間Pにおけるゴールg、初期状態si、および計画ドメインΣの定義から、基本属性空間P’における対応するゴールg’、初期状態si’、および計画ドメインΣ’へのマッピングを含んでよい。
【0101】
詳細には、支援システム1は、複合属性空間Pにおけるゴールg、初期状態s
i、および計画ドメインΣの定義から、基本属性空間P’における対応するゴールg’、初期状態s
i’、および計画ドメインΣ’へのマッピングを、データベースから得られる属性情報(分解情報)に基づいて行ってよい。分解情報は、1つの対応表(参照表)または複数の対応表を含んでよい。分解情報に関係し、分解ステップS5のマッピングに使用されるデータ構造は、
図3、
図4、
図5、および
図6を参照したより詳細な解説の主題である。
【0102】
基本属性空間P’=(Σ’、s’i、g’)における生成された分解された計画問題は、今度は分解された計画問題を基本属性空間P’で解決するために、詳細には、取得されたタスクの実行可能な解を提供する計画を見つけるために、計画モジュールへの新しい入力を形成する。
【0103】
図3は、複合属性空間Pの複合属性を基本属性空間P’の基本属性のセットにマッピングするための属性情報の例示的なデータ構造を提供する。
図3は、台所環境という特定の応用エリアについての複合属性空間Pおよび基本属性空間P’を示している。
【0104】
ステップS5の分解プロセスにおける基本属性のセットへの複合属性のマッピングは、少なくとも1つの複合属性を対応する基本属性のセットにマッピングすることを含んでよい。このマッピングは、分解ステップS5に入力される計画問題表現に含まれている各複合属性を基本属性のセットにマッピングすることを含んでよい。
【0105】
図3は、
図3の上部に、複合属性空間Pの複合属性のグループを示している。複合属性は、「生のパン」および「トーストしたパン」を含む。
【0106】
図3の下部は、基本属性空間P’の基本属性のグループを並べている。
図3に示される基本属性には、基本属性「温度」についてのインスタンス「冷たい」および「熱い」が含まれる。さらなる基本属性には、基本属性「硬さ」についてのインスタンス「硬い」および「柔らかい」が含まれる。さらなる基本属性には、基本属性「色」についてのインスタンス「白」および「茶色」が含まれる。さらなる基本属性には、基本属性「湿り気」についてのインスタンス「湿っている」および「乾いている」が含まれる。さらなる基本属性には、基本属性「色の明るさ」についてのインスタンス「色が薄い」および「色が濃い」が含まれる。
【0107】
図3は、矢印として示された対応関係の形態で属性情報を示している。複合属性「トーストしたパン」は、基本属性のセット[「熱い」、「硬い」、「茶色」、「色が濃い」]にマッピングされる。属性情報を使用して、ステップS5の分解プロセスは、
図3に含まれる属性情報に基づいて、複合特徴「トーストしたパン」を、基本属性「熱い」、「硬い」、「茶色」、および「色が濃い」を含む、オブジェクト「パン」についての基本属性のセットに置き換えてよい。
【0108】
図3に示す属性情報に基づいて行われるマッピングは、
図2のステップS41で基本属性空間P’における少なくとも1つの目標状態g’を推論し、
図2のステップS42で基本属性空間P’における少なくとも1つの初期状態s’
iを推論するために使用されてよい。
【0109】
ステップS5による分解は、支援システム1が、
図3の属性情報を記憶した対応表を内部参照し、記憶されている対応表に基づいて基本属性のセットへの複合属性のマッピングを行うことを含んでよい。ユーザがトーストしたパンを所望していることを定義する取得されたタスクに基づいて生成される初期計画問題は、目標状態の一部として、複合属性空間P内の複合属性「トーストしたパン」を含む。分解ステップS5で、支援システム1は、属性情報を参照して、「トーストしたパン」の複合属性に対応する基本属性のセットを決定してよい。
図3に示す属性情報によれば、対応する基本属性のセットは、[「熱い」、「硬い」、「茶色」、「色が濃い」]である。これで、支援システム1は、基本属性空間P’における分解された計画問題で基本属性のセット[「熱い」、「硬い」、「茶色」、「色が濃い」]を使用して、この新しい分解された計画問題を解くことを試みることができる。
【0110】
さらに、分解ステップS5で、支援システム1は、属性情報を参照して、「生のパン」の複合属性に対応する基本属性のセットを決定してよい。
図3に示す属性情報によれば、対応する基本属性のセットは、[「冷たい」、「柔らかい」、「白い」、「色が薄い」]である。支援システム1は、この基本属性のセット[「冷たい」、「柔らかい」、「白い」、「色が薄い」]を、分解された計画問題で、新しい分解された初期状態s
i’として使用することができる。
【0111】
図4は、複合属性空間Pの複合属性を基本属性空間P’の基本属性のセットにマッピングするためにオブジェクトの状態を表す、属性情報の第2の例示的データ構造を表示する。
【0112】
詳細には、
図4は、複合属性空間Pにおけるデバイスを使用する前とデバイスを使用した後のオブジェクトの状態を定義する属性、および基本属性空間P’での基本属性のセットによる対応する表現を表示している。
図4に示される属性は、デバイス「トースタ」、「ヘアドライヤ」、「ヌテラ」をオブジェクト「パン」に使用する前および使用した後の状態を定義している。
【0113】
複合属性空間Pの複合属性「トースタの前」についての第1の例として、基本属性空間P’内の対応する基本属性のセットは、基本属性[「冷たい」、「柔らかい」、「白い」、「色が薄い」]を含む。
【0114】
複合属性空間Pの複合属性「トースタの後」についての第2の例として、基本属性空間P’内の対応する基本属性のセットは、基本属性[「熱い」、「硬い」、「茶色」、「色が濃い」]を含む。
【0115】
複合属性空間Pの複合属性「ヘアドライヤの前」についての第3の例として、基本属性空間P’内の対応する基本属性のセットは、基本属性[「冷たい」]を含む。
【0116】
複合属性空間Pの複合属性「ヘアドライヤの前」についての第4の例として、基本属性空間P’内の対応する基本属性のセットは、基本属性[「熱い」]を含む。
【0117】
複合属性空間Pの複合属性「ヌテラの前」についての第5の例として、基本属性空間P’内の対応する基本属性のセットは、基本属性[「白い」、「色が薄い」]を含む。
【0118】
複合属性空間Pの複合属性「ヌテラの後」についての第6の例として、基本属性空間P’内の対応する基本属性のセットは、基本属性[「茶色」、「色が濃い」]を含む。
【0119】
これで、支援システム1は、各デバイス「トースタ」、「ヘアドライヤ」、および「ヌテラ」について、特定の条件下でそれがオブジェクト「パン」に対して有し得る効果を推論し、それを、基本属性空間P’の分解された計画ドメインΣ’で計画するための新しい行動のセットとして使用することができる。
【0120】
図3および
図4は、基本属性空間P’で新しい分解された計画問題を生成するための分解ステップS5における属性情報を示す。計画モジュールを実装する標準的なプランナは次いで、第2のアプローチで、解を見つけるために、完全に定義された基本属性空間P’における分解された計画問題を使用する。
【0121】
図5は、オブジェクト、効果を実現するための手段、およびオブジェクトに対する効果の間の対応関係を示す、属性情報のデータ構造のさらなる例を提供する。
【0122】
図5に示すデバイスは、台所環境および台所環境に固有のタスク環境に通常見られる例を含む。示されたデバイスは、「冷蔵庫」、「はんだ棒」、「トースタ」、「ヘアドライヤ」、「皿洗い機」、「洗濯機」、および「電子レンジ」を含む。
【0123】
図5に示す属性情報は手段を含む。属性情報は、特定の手段に曝されるオブジェクトに対して効果を有する可能性のある、特定の手段を定義してよい。デバイスは、オブジェクトに直接影響するのではなく、オブジェクトを、そのオブジェクトに対して効果を有する可能性のある特定の手段に曝す。例えば、デバイス「皿洗い機」は、オブジェクトを、「洗剤」、「温水」、および「熱い空気」を含む手段に曝す。
【0124】
図5の手段は、「ヒートシンク」、「熱源」、「物質」および「力」を含む。列挙された手段は、
図5に示すようにさらなる差異化を含んでよい。例えば、手段「熱源」は、「熱い金属」、「赤外線」、「熱い空気」、「温水」、および「マイクロ波」間の差異化を可能にする。手段「物質」は、「冷たい空気」、「熱い空気」、「温水」、および「洗剤」をまとめる。手段「力」は、「回転」および「重さ」を包含する。手段「物質」は、「冷たい空気」、「熱い空気」、「温水」、および「洗剤」を含む。手段「力」は、「回転」と「重さ」とを差異化する。手段「ヒートシンク」は、「熱い空気」の手段に対応してよい。
【0125】
複合属性空間で定義された元の計画問題の中のデバイス「トースタ」を含めることは、したがって、基本属性空間内の分解された計画問題が、手段「赤外線」および「熱源」を含む結果となり得る。分解された計画問題を計画モジュールに提供することは、計画問題の解を探すための空間を拡大し得る。これは、デバイス「トースタ」に加えて、オブジェクトを手段「熱源」および「赤外線」に曝すさらなるデバイスが検討され得るからである。
【0126】
支援システム1は、あるデバイスがオブジェクトを曝す効果を、タスク環境内でおよびそのデバイスとの組み合わせで一般的である、少ないオブジェクトだけについて、観察、決定、または測定するように構成されてよい。
図4に示される直接のマッピングは、依然として不完全な分解となり得る。
【0127】
基本属性空間P’で分解された計画問題に基づいて計画することにより、それでも革新的な計画結果を実現するために、精緻化されたマッピングが有利であるか、またはさらに必要とされる。
図5に示される分解情報に基づいて、支援システム1は、当該デバイスおよびオブジェクトに関してデータベースに記憶されている、すでに知られているまたはすでに観察されているマッピングとの類似性に関する知識を活用して、複合属性空間Pの複合属性から分解後属性空間P’の分解された属性へのまだ知られていないマッピングを予測してよい。
【0128】
図6は、効果を実現するための手段、オブジェクト、および手段の表現と、基本属性空間P’の基本属性との間の対応関係を示す属性情報の例示的なデータ構造を提供する。
【0129】
図6の上部は、「マイクロ波放射」「赤外線放射」、および「洗剤」を含む、異なる手段を示す。これら異なる手段は、基本属性空間P’の特定のオブジェクトに対してそれぞれ異なる効果を有する。
図6の例では、オブジェクト「ナイフ」を「赤外線放射」に曝すことは、オブジェクト「ナイフ」がその後、基本属性空間P’内で温度として基本属性「熱い」を有するという効果を有する。オブジェクト「パン」を手段「赤外線放射」に曝すことは、オブジェクト「パン」に対して、より複雑な効果を有する。手段「赤外線放射」に曝された後、オブジェクト「パン」はその後、基本属性空間P’において[「熱い」、「硬い」、「色が濃い」および「茶色」]を含む基本属性のセットを有する。
【0130】
それに対応して、支援システム1は、
図6に示すように、あるオブジェクトがある手段に曝されたときに基本属性空間P’のどの効果がそのオブジェクトに対して実現されるかをデータベースから取得してよい。取得した手段に基づいて、支援システム1は、2つのデバイスがオブジェクトを同じ手段に曝した場合に、タスク環境に含まれるまだ観察されたことのないデバイスが、観察されたデバイスが同オブジェクトに有するのと同様の効果をオブジェクトに対して有する可能性があると、予測することができる。例えば、ステップS5における分解は、オブジェクト「パン」をトースタに曝すことが、まだ観察されていないデバイス「ベーキングオーブン」と同じ手段「赤外線放射」を有することを活用してよい。
【0131】
図6に示される手段から効果への対応関係に関する、属性情報に反映される知識は、「パンに」対する「食品」のような一般化されたオブジェクトカテゴリと、「食品」のそれぞれのインスタンスを伴ってよく、それにより、効果は、それがカテゴリ「食品」内の他の具体的インスタンスの大半にこれまで一度も観察されたことがなくとも、特定のインスタンス、例えば「パン」から、そのカテゴリ、例えば「食品」の中のすべてのオブジェクトへと一般化することを属性情報内で実現してよい。よって、基本属性空間P’の分解された計画問題が、カテゴリ「食品」およびカテゴリ「食品」の他のインスタンスを含むことは、計画モジュールによって行われる計画プロセスで潜在的な解を探すための空間をさらに拡大し得る。よって、基本属性空間P’の分解された計画問題は、複合属性空間Pで定義された場合には解を有さない、基本属性空間P’で定義された計画問題に対する計画を見つけるのを助ける。
【0132】
方法の実施形態は、ロボット台所支援システムを参照して解説したように、ロボット支援システムに関する計画用途に特に有用である。
【0133】
一般に、ロボット支援システムは、タスク環境内のオブジェクトおよびデバイスの性質を、それらオブジェクトおよびデバイスが受けるプロセスと共に、より高精度に、整合性をもって表し得る。基本属性空間P’における分解された計画問題に基づく計画は、基本的には同じ計画モジュールを使用するにも関わらず、計画問題を複合属性空間Pで見たときに、従来利用可能であったよりも革新的で、したがって説得力のある計画解を生むことができる。
【0134】
計画に基づくロボット支援システムは、抽象的な計画問題を、タスク環境内のオブジェクトと、そのオブジェクトが受けるプロセスおよび行動とのより物理的な表現に移行させることが必要であるかどうかを判定する。方法は、具体的には、分解後属性空間P’または基本属性空間P’と呼ばれる、より物理的な属性空間を使用する。方法は、非基本属性、詳細には複合属性、を基本属性のセットに分解する。支援システム1は、分解ステップS5を行うために、データベース中の分解情報としての属性情報にアクセスすることができる。方法は、さらに欠落している基本属性を推論するプロセスを含んでもよく、それにより、さらなる基本属性を含むように基本属性空間P’をさらに拡張し、これは、まだ観察されていない効果および状態をデータベースに記憶されている属性情報に追加する。タスク環境の基本属性表現を構築・維持することにより、方法は、オブジェクト、デバイス、状態および行動を含む拡張された基本属性空間P’を用いて計画し、したがって、複合属性空間Pで定義された計画問題に対して現在は入手可能でない、計画問題の異なる、そして多くの場合はより説得力があり、効率的な解を見つけ得る。
【0135】
図7は、台所環境で自律デバイス2を含む支援システム1を動作させるための方法の特定の応用シナリオを示す。
【0136】
自律デバイス2またはエージェントは、そのセンサ、アクチュエータ、および内蔵制御システムの構成が相当なレベルの柔軟で独立した自律的スキルを提供する人工物である。自律的という語は、自律デバイス2が環境を感知し、感知した環境に基づいて挙動を計画し、外部制御なしにゴールに到達する意図をもって、感知した環境に基づく一連の行動またはスキルを行うことによって行動することが可能な程度を意味する。ユーザが、人間-機械インターフェースを介して自律デバイス2にゴールを提供してよい。
【0137】
代替として、自律デバイス2がゴールを自ら作成してもよい。
【0138】
図7のロボット支援システム1は、据え置き型の双腕ロボットとして示される自律デバイス2を備え、これは、2つのエフェクタ8、オブジェクト追跡デバイス6、例えばカメラを利用するまたはマーカを利用するオブジェクト追跡デバイス6、を有する。ロボット支援システム1は、データ処理機器、例えば少なくとも1つのコンピュータ4を備え、これは、自律デバイス2によって行うための行動および一連の行動を計画するために計画アルゴリズムおよび動き生成アルゴリズムを実行するように構成される。詳細には、エフェクタ8の少なくとも1つのエフェクタ軌跡を制御することによってタスクに対処する計画を考案するために計画モジュールを実装する計画プロセスを実装するプログラムが、コンピュータ4で実行されてよい。
【0139】
コンピュータ4は、少なくとも1つのプロセッサ、少なくとも1つのメモリを含んでよく、メモリは、例えば、プログラム命令および方法の実行中に生成されるプログラムデータを記憶するための不揮発性メモリおよび揮発性メモリを含む。
【0140】
ロボット支援システム1は、ユーザからロボット支援システム1への命令を取得するために、例えば人間-機械インターフェースを介して、予め定められたタスクのタスク記述を取得する。例えば、取得されたタスク記述(タスク)は、台所のシナリオを含む家庭用途では、トーストしたパンを調製するようにロボット支援システム1に命令してよい。
【0141】
オブジェクト追跡デバイス6は、タスク環境内のオブジェクト3の現在の場所を判定する。オブジェクト追跡デバイス6は、センサ信号11を生成し、そのセンサ信号11をコンピュータ4に提供する。センサ信号11は、ロボット支援システム1が、観察されたタスク環境内で自律デバイス2ならびにオブジェクトおよびデバイス3の状態を判定することを可能にしてよい。観察された状態およびセンサ信号は、ロボット支援システム1が、一連のスキルを行いながらタスクの進行を監視することも可能にしてよい。
【0142】
コンピュータ4は、計画モジュール内で、支援システム1が計画モジュールに提供された計画問題を解くための計画を検索できるようにする計画アルゴリズムを実行する。
【0143】
支援システム1は、支援システム1のコンピュータ4によって提供された制御信号12に基づいて生成されたアクチュエータ制御信号10を使用して自律デバイス2のエフェクタ8のアクチュエータを制御するために、ロボットシステム1のロボット制御ユニット5を含んでよい。
【0144】
自律デバイス2は、ステータス信号13を生成し、ステータス信号13をロボット制御ユニット5に出力してよい。ロボット制御ユニット5は、ステータス信号13に含まれている情報を、自律デバイス2に関するさらなるステータス情報と共に、ステータス信号14でコンピュータ4に提供してよい。
【0145】
コンピュータ4は、人間-機械インターフェースを備えてよく、これは、入力/出力手段、例えば、ユーザに対して画像情報を表示するモニタ7などの出力手段と、ユーザから入力を受け取るためのキーボードおよびマウス装置、またはマイクロフォンなどの入力手段とを含む。コンピュータ4は、特に、人間-機械ユーザインターフェースを実装するソフトウェアを実行してよい。人間-機械インターフェースは、例えば、ユーザと対話するためのグラフィックユーザインターフェースGUIを含んでよい。
【0146】
コンピュータ4は、ユーザが目標状態を実現するのを誘導する画像情報をユーザに対して表示するように構成された人間-機械インターフェースを含んでよい。人間-機械インターフェースは、現実世界に存在するタスク環境をユーザに対して視覚化するように構成された仮想現実デバイスを含んでもよい。
【0147】
追加または代替として、人間-機械インターフェースは、ユーザが目標状態を実現するのを誘導する情報を、現実世界に存在するタスク環境へのオーバーレイ画像としてユーザに提示するように構成された拡張現実デバイスを含んでよい。この実施形態では、人間機械インターフェースは、例えば、カメラを備えたタブレットコンピュータ上で実行されてよい。ディスプレイは、ユーザを誘導するための情報を、タブレットコンピュータのカメラによって取得されたタスク環境の画像への半透明のオーバーレイ画像として提示してよい。
【0148】
代替として、人間-機械インターフェースは、生成された仮想環境をユーザに対して視覚化するように構成された仮想現実デバイスを含んでよい。例えば人間-機械インターフェースは、ユーザがコンピュータゲーム環境でタスクを行うための誘導を得ることを可能にする。
【0149】
図7に示されるロボット支援システム1の構造は一例である。
【0150】
ロボット支援システムの一部またはすべての構造要素、例えばコンピュータ4、ロボット制御ユニット5、およびオブジェクト追跡デバイス6は、自律デバイス2に組み込まれてよいことが留意される。
【0151】
自律デバイス2は、据え置き型のデバイスに制限されず、タスク環境内を動き回る可動の自律デバイスとして実装されてもよい。自律デバイス2は、支援家庭ロボットを実装してよい。台所で援助するために、自律デバイス2は、例えば食品などのオブジェクト、および例えば台所道具などのデバイス、それらをどのように使用することができるか、それらの台所道具が特定のオブジェクトに適用されたときにどのような効果を有するかを知る必要がある。この目的のために、現在のタスク環境としての台所に存在するすべての存在物の階層を事前に教示するか、もしくは例えば、
図7には明示的に示されない、コンピュータネットワークを介してアクセスされる公衆利用可能なデータベース(知識ベース)のような他の知識ソースから抽出することができ、または、事前に教示されると共に他の知識ソースから抽出されてもよい。
【0152】
自律デバイス2は、いくつかのタスク、例えばサンドイッチの調製についての事前に記憶された知識を有してよく、それは、例えば、パンを切ること、パンをトーストすること、レタスを切ること、トマトの皮をむき、スライスすることを含むスキルを含む。基本属性空間P’内の分解されたプログラム表現を使用する支援システム1を動作させるための提案される方法は、タスク環境の新規な状況において支援システム1の可用性を向上させる。例えば、トーストしたパンを調製するタスクを課された場合、ロボット支援システム1は、唯一の利用可能なトースタに欠陥があるという問題を克服し、基本属性空間P’の分解された計画問題を解決するために代わりにオーブンを利用し得る。
【0153】
本開示に記載される様々なエンティティによって行われるすべてのステップならびに様々なエンティティによって行われるものと記載される機能は、それぞれのエンティティがそれぞれのステップおよび機能を行うように適合または構成されることを意味するものである。特許請求の範囲ならびに説明において、「~を備える/含む」という語は、他の要素やステップの存在を排除しない。
【0154】
明細書および特許請求の範囲において、同じ意味で使用されているため、「AおよびBの少なくとも1つ」という表現は、「Aおよび/またはB」という表現の代わりとなることができ、その逆も同様である。
【0155】
不定冠詞の「a」または「an」は複数を排除しない。単一の要素または他の単位が、請求項に述べられるいくつかのエンティティまたは項目の機能を遂行してよい。異なる従属請求項が、変換回路の特定の手段および特徴を述べているという単なる事実は、それら手段および特徴の組み合わせが有利な実装として組み合わせることができないことを排除しない。
【外国語明細書】