(57)【特許請求の範囲】
【請求項１】
複数のインストールされたソフトウェアアプリケーションを含むヒューマノイドロボット上のソフトウェアアプリケーションであって所定の意味論的記述に関連付けられたソフトウェアアプリケーションを取り扱う方法であって、
−人間ユーザとの音声対話から１つまたは複数のパターンを抽出する工程であって、前記音声対話は文章を含み、前記パターンは所定の文章を含む、工程と、
−前記１つまたは複数のパターンと前記ソフトウェアアプリケーションの意味論的記述とを比較する工程であって、意味論的記述は、ソフトウェアアプリケーションに関連付けられた、１つまたは複数の予め作成された対話を含み、前記予め作成された対話は、ソフトウェアアプリケーションを記述する変形を含む、工程と、
−前記行われた比較に基づきソフトウェアアプリケーションを選択する工程と、
−前記選択されたソフトウェアアプリケーションを実行する工程と、を含み、
少なくとも１つのインストールされたソフトウェアアプリケーションが１つまたは複数の実行規則に関連付けられ、前記ソフトウェアアプリケーションを選択する工程は前記１つまたは複数の規則を検証する工程を含み、
ヒューマノイドロボットは、グラフィックユーザインターフェースを含まず、
前記対話は、前記ロボットの前記ユーザによる、インストールされたソフトウェアアプリケーションのリストを朗読する要求を含み、
前記ロボットにより朗読される前記リストは前記ロボットの認識環境に関連付けられたパラメータに依存する、方法。
【請求項２】
前記１つまたは複数の規則は予め定義される、または動的に定義される、請求項１に記載の方法。
【請求項３】
前記１つまたは複数の規則は前記ロボット上でローカルに検索可能である、またはネットワーク接続を介し遠隔的にアクセス可能である、請求項１または２に記載の方法。
【請求項４】
前記音声対話は前記ロボットにより提起された質問への前記ユーザによる応答を含む、請求項１に記載の方法。
【請求項５】
前記質問は、前記対話の文章または前記対話から抽出されたパターンを明確にするために、前記ロボットにより提起される、請求項４に記載の方法。
【請求項６】
前記パラメータは、ユーザの年令、ユーザの性別、ユーザの身長、ロボットの近傍のユーザの数、ユーザの気分、ユーザの微笑の有無、周囲音声レベル、現在の日付、現在時期、現在位置およびそれらの組合せを含むグループから選択される、請求項１に記載の方法。
【請求項７】
前記ソフトウェアアプリケーションを選択する工程はさらに、前記比較に依存して、実行確率値と各インストールされたソフトウェアアプリケーションとを関連付ける工程を含む、請求項１に記載の方法。
【請求項８】
前記選択されたソフトウェアアプリケーションを実行する前に前記ユーザの確認を受信する工程をさらに含む請求項１乃至７のいずれか一項に記載の方法。
【請求項９】
前記ユーザとの対話中に、前記インストールされたソフトウェアアプリケーションの１つまたは複数に関連付けられた１つまたは複数の表現を表示する工程をさらに含む請求項１乃至８のいずれか一項に記載の方法。
【請求項１０】
前記ロボット内の欠落したアプリケーションを識別し、前記欠落したソフトウェアアプリケーションを取り出し、前記ユーザとの対話中に前記ロボットにインストールする工程をさらに含む請求項１乃至９のいずれか一項に記載の方法。
【請求項１１】
コンピュータプログラムが好適なコンピュータ装置上で実行されると請求項１乃至１０のいずれか一項に記載の方法の工程を実行するための命令を含むコンピュータプログラム。
【請求項１２】
請求項１乃至１０のいずれか一項に記載の方法の工程を実行するようにされた手段を含むシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本特許は、デジタルデータ処理の領域に関し、より具体的にはコンパニオンヒューマノイドロボット内のソフトウェアアプリケーションの取り扱いに関する。
【背景技術】
【０００２】
スマートフォン、パーソナルコンピュータまたはタブレット上では、グラフィックユーザインターフェース（ＧＵＩ）がソフトウェアアプリケーションへのアクセスの主要モードを表す。例えば、ユーザは、タッチスクリーン上のアイコンを選択することによりアプリケーション（「アプリ」）を立ち上げ、さらに例えばデータを選択または入力することにより前記アプリケーションと相互作用し得る。
【０００３】
音声命令は通常、特定状況に限定される。例えば、音声口述ソフトウェアは殆どの場合、スタンドアロンソフトウェアアプリケーション（例えばワープロソフト）の状況で使用される。最新オペレーティングシステムをますます備えるようになったいくつかのアクセス可能性特徴によると、ユーザは、いくつかの行為（例えば、アプリケーションを立ち上げる、コピーアンドペースト等）を行うために音声命令を使用し得る。これらの所定行為はかなり限定される。
【０００４】
このような視覚的または音声相互作用モードは一般的には受動的である（例えば、ユーザが命令を能動的に与え、機械は命令を実行する）。例えば応答システムに実装されたものなど最近のコンピュータ相互作用モデルによってさえ、限定された相互作用が機械からユーザへ発生する。「ウェブ検索」または「カレンダー」のような若干のコアおよび所定ソフトウェアアプリケーションを除き、応答システム（例えば会話エージェント）は特定ゲームソフトアプリケーションを立ち上げることができない。
【０００５】
コンパニオンヒューマノイドロボットの状況では、人間ユーザとの相互作用モデルは、パーソナルコンピュータとの相互作用モデル（およびそれらの様々な形態）と比較すると、著しく変わる。したがって、ロボットとの認識相互作用はタブレットＰＣまたはスマートフォンのものとは基本的に異なる。例えば、特に、ロボットはグラフィック出力手段を頻繁に欠く（例えば、コンパニオンロボットはスクリーンを埋め込まないかもしれない）。この基本的事実は、多くの帰結、特に１つまたは複数のソフトウェアアプリケーションを適切に発見し、選択し、実行することを意味する。
【０００６】
ロボットはソフトウェアアプリケーションへのアクセスのプラットホームをいつか表し得（いつか多くの家庭の主要ソフトウェアアプリケーションでないにしても）、および／またはコンピュータの使用は表示要求を零まで低下させるように非常に普及し得るので、特にロボットの特定情況において、制限されたグラフィックユーザインターフェース手段を有するまたはグラフィックユーザインターフェース手段を有しない装置上のソフトウェアアプリケーションを取り扱う方法およびシステムの需要がある。
【発明の概要】
【課題を解決するための手段】
【０００７】
複数のインストールされたソフトウェアアプリケーションを含むロボット上のソフトウェアアプリケーションであって所定の意味論的記述に関連付けられたソフトウェアアプリケーションを取り扱うコンピュータ実施方法を提供する。本方法は、人間ユーザとの音声対話から１つまたは複数のパターンを抽出する工程であって、音声対話は文章を含み、パターンは所定の文章を含む、工程と、前記１つまたは複数のパターンと前記ソフトウェアアプリケーションの意味論的記述とを比較する工程と、行われた比較に基づきソフトウェアアプリケーションを選択する工程と、選択されたソフトウェアアプリケーションを実行する工程とを含む。
【０００８】
一つの発展形態では、少なくとも１つのインストールされたソフトウェアアプリケーションが１つまたは複数の実行規則に関連付けられ、ソフトウェアアプリケーションを選択する工程は前記１つまたは複数の規則を検証する工程を含む。
【０００９】
一つの発展形態では、前記１つまたは複数の規則は予め定義されるまたは動的に定義される。
【００１０】
一つの発展形態では、前記１つまたは複数の規則はロボット上でローカルに検索可能であるまたはネットワーク接続を介し遠隔的にアクセス可能である。
【００１１】
一つの発展形態では、音声対話はロボットにより提起された質問へのユーザによる応答を含む。
【００１２】
一つの発展形態では、質問は、対話の文章または前記対話から抽出されたパターンを明確にするために、ロボットにより提起される。
【００１３】
一つの発展形態では、対話は、ロボットのユーザによる、インストールされたソフトウェアアプリケーションのリストを朗読する要求を含む。
【００１４】
一つの発展形態では、ロボットにより朗読されるリストはロボットの認識環境に関連付けられたパラメータに依存する。
【００１５】
一つの発展形態では、パラメータは、ユーザの年令、ユーザの性別、ユーザの身長、ロボットの近傍のユーザの数、ユーザの気分、ユーザの微笑の有無、周囲音声レベル、現在の日付、現在時期、現在位置およびそれらの組合せを含むグループから選択される。
【００１６】
一つの発展形態では、ソフトウェアアプリケーションを選択する工程はさらに、前記比較に依存して、実行確率値と各インストールされたソフトウェアアプリケーションとを関連付ける工程を含む。
【００１７】
一つの発展形態では、本方法はさらに、選択されたソフトウェアアプリケーションを実行する前にユーザの確認を受信する工程を含む。
【００１８】
一つの発展形態では、本方法はさらに、ユーザとの対話中に、インストールされたソフトウェアアプリケーションの１つまたは複数に関連付けられた１つまたは複数の表現を表示する工程を含む。
【００１９】
一つの発展形態では、本方法はさらに、ロボット内の欠落したアプリケーションを識別し、前記欠落したソフトウェアアプリケーションを取り出し、ユーザとの対話中にロボットにインストールする工程を含む。
【００２０】
前記コンピュータプログラムが好適なコンピュータ装置またはロボット装置上で行われると本方法の１つまたは複数の工程を実行するための命令を含むコンピュータプログラムが開示される。本方法の１つまたは複数の工程を行うようにされた手段を含むシステムが開示される。
【００２１】
有利には、マン−マシン相互作用は能動的でありもはや受動的ではない：すなわち、ロボットは、人間観点から、いくつかのイニシアチブを取る（例えば、ロボットは例えば曖昧性除去目的のために質問をする）。
【００２２】
有利には、相互作用の会話モードは、人間ユーザの「表現性」を増加させる。用語「表現性」は、「マン−マシン相互作用が（より）自然であるのでユーザはより多くのデータをロボットへ伝達し、ロボットはユーザについてより多く知りそれを格納することができ、相互作用を好循環でさらに豊かにすることができる」ことを指す。これはパーソナルコンピュータには当てはまらない。タブレットは例えばクイズまたは質問の形式でまたはスピーチ合成により「質問」を試み得る。しかし、タブレットは自力で（自律的に）動き，物体を移動し人間に追随する「コンパニオン」とはみなされないので、残留バイアスが残ることになる。捕捉され得るデータの量はコンパニオンロボットと比較して小さくなる。
【００２３】
ユーザに関し能動的または受動的に収集された情報（ユーザプロファイルまたはユーザ嗜好）が、立ち上げ条件の入力として使用され得る（例えば、活動は、ユーザが「野球」を愛する場合だけ立ち上げられるべきである）。機械学習の機構：システムにより立ち上げられた活動は、ユーザについて学習されるものに依存して進化し得る。
【００２４】
次に一例として本発明のいくつかの実施形態について、同様な参照子が同様な要素を表す添付図面を参照し説明する。
【図面の簡単な説明】
【００２５】
【図１】本発明のグローバル技術環境を示す。
【図２】本方法の実施形態のいくつかの態様を詳述する。
【発明を実施するための形態】
【００２６】
文字通りの意味（コンピュータープログラムコードは好適なコンピュータ装置上で実行されると１つまたは複数の工程を行い得る）を越えたソフトウェアアプリケーションは、対話（例えば、予想質問に対する応答を含む所定文章の集合）、行為（例えばダンスまたは物理的行為の実行）、アニメーション（例えば頭の運動、もしあれば照明の活性化等）およびそれらの組合せ（例えばダンス中の対話）であり得る、またはそれに関連付けられ得る。より一般的には、ソフトウェアアプリケーションは、他のアプリケーションとの相互作用または相互作用能力の有無にかかわらずスタンドアロンアプリケーションであり得る。スタンドアロンソフトウェアアプリケーションの例は天候アプリケーションである。このようなアプリケーションは天候データを取り出し戻すことができる。
【００２７】
アプリケーションの例は、ローカル天候状態、ゲームアプリケーション、ダンスアプリケーション、物語アプリケーションなどを提供するようにされた（例えば、音声出力を朗読、発声、または復元することによる）天候アプリケーションを含む。特に、ロボットのソフトウェアアプリケーションがロボットの一組の物理的行為（踊る、動く、物体を掴んで移動する）を生じ得ることは注目に値する。スマートフォンまたはタブレットのソフトウェアアプリケーションは通常、物理的世界の実際の具体的行為を含まない。
【００２８】
ソフトウェアアプリケーションは相互依存し得る。例えば、ソフトウェアアプリケーションは複雑なオブジェクトを表し得るので、先験的個別ソフトウェアアプリケーション間の「遷移」が観測され得る。タブレットコンピュータ上で、天候ソフトウェアアプリケーションは気象データを提供し、作図ソフトウェアアプリケーションは作図ツールを提供する。ロボット上で、ロボットは話された結果「外は−１０℃である」を伴うおよび／または１枚の紙の上に雪だるまを描く（および／またはジェスチャの組み合わせにより外の寒さを象徴化することにより）ということが考えられる。換言すれば、多モード出力の結果として、ソフトウェアアプリケーションはさらに組み合わせられ得る（出力レベルでまたは下位レベルで、例えば変数またはパラメータまたはスクリプトはソフトウェアアプリケーション間で共有または修正され得る）。
【００２９】
ソフトウェアアプリケーションは有利には、対話インターフェースを介し（すなわちユーザとの（「自然な」）対話の行為の過程中に）ユーザへ呈示され得る。換言すれば、対話システムは、ユーザが１つまたは複数のアプリケーションを立ち上げることができるための「ボトルネック」として働き得る。論述したように、グラフィックユーザインターフェース手段の利用可能性の場合、音声ユーザインターフェース手段はグラフィックユーザインターフェース手段により補完、補足、または補正され得る。
【００３０】
図１は、本発明のグローバルおよび技術的環境を示す。ロボット１３０はセンサとアクチュエータを含む。論理または「マインド」１００はロボット内に実装されるまたはそれに関連付けられ（例えば遠隔的に）、ソフトウェア１１０とハードウェア部品１２０の集合を含む。ロボット１３０は１人または複数のユーザ１５０と相互作用する（１つまたは複数の対話セッションを含む相互または双方向通信１４０により）。前記１人または複数のユーザは、接続装置（サーバのクラウドとおよび／または他のロボットまたは接続対象の一団などと通信する）であり得る他の計算装置１６０（例えばウエアラブルコンピュータまたはスマートフォンなどのパーソナルコンピュータまたはタブレット）にアクセスし得る。特に、接続装置はウエアラブルコンピュータ（例えば、時計、眼鏡、没入型ヘルメット等）であり得る。
【００３１】
同図の特定ロボット１３０は、本発明が実施され得るヒューマノイドロボットの一例と考えられる。同図のロボットの下肢は、歩行には機能的でないが、置かれた表面上で転回するそのベース上で任意の方向に移動し得る。本発明は、歩行に適したロボットにおいて容易に実施され得る。
【００３２】
本発明のいくつかの実施形態では、ロボットは様々な種類のセンサを含み得る。それらのいくつかは、ロボットの位置および運動を制御するために使用される。これは例えば、ロボットの胴内に配置された慣性ユニットのものであり、３軸ジャイロメータおよび３軸加速度計を含む。ロボットはまた、ロボットの額上（頂部と底部）に２つの２ＤカラーＲＧＢカメラを含み得る。３Ｄセンサはまた、ロボットの眼の背後に含まれ得る。ロボットはまた、その環境内の物体／生物に対するその相対位置を感知することができるようにレーザ光線発生器を任意選択的に（例えば頭内とベース内に）含み得る。ロボットはまた、その環境内の音を感知することができるマイクロホンを含み得る。本発明のロボットはまた、その環境内の物体／人間までの距離を測定するために、恐らくそのベースの前部および後部に位置するソナーセンサを含み得る。ロボットはまた、人間との相互作用を可能にするためにその頭およびその手上に触覚センサを含み得る。ロボットはまた、その経路上で遭遇する障害を感知するためにそのベース上にバンパを含み得る。その感情を翻訳しその環境内の人間とコミュニケーションするために、本発明のロボットはまた、例えばその眼、耳内におよびその肩上にＬＥＤをそして拡声器（例えばその耳内に配置される）を含み得る。ロボットは、様々なネットワーク（３Ｇ、４Ｇ／ＬＴＥ、Ｗｉｆｉ、ＢＬＥ、メッシュ等）を介し基地局と、他の接続装置と、または他のロボットと通信し得る。ロボットは電池またはエネルギー源を含む。ロボットは、ロボットが含む電池のタイプに適した充電ステーションにアクセスし得る。ロボットの位置／運動は、センサの測定という観点では、各肢により定義されたチェーンと各肢の端において定義されたエフェクタとを活性化するアルゴリズムを使用することによりそのモータにより制御される。
【００３３】
特定実施形態では、ロボットは、その環境へメッセージ（音声、映像、ウェブページ）を伝達し得るタブレットを埋め込み得る、またはタブレットの触覚インターフェースを介しユーザからエントリを受信し得る。別の実施形態では、ロボットはスクリーンを埋め込まないまたは提供しないが、データまたは情報がロボットの近傍の表面上に投射され得る映像プロジェクタを有する。前記表面は平ら（例えば床）であってもなくてもよい（例えば、投射面の変形はほぼ平らな投射を得るために補償され得る）。両方の実施形態（スクリーンを有するおよび／またはプロジェクタを有する）では、本発明の実施形態は有効なままである：すなわち、請求相互作用モデルは視覚的相互作用手段により補足または補完されるだけである。いずれにせよ、グラフィック手段が故障しているまたは意図的に非活性化されていたとしても、相互作用の会話モードは存続する。
【００３４】
一実施形態では、ロボットはこのようなグラフィックユーザインターフェース手段を含まない。既存ヒューマノイドロボットは通常、高度スピーチ能力を備えるがＧＵＩを備えない。増加するユーザのコミュニティは恐らく、選択および／または必要性（実際的状況のために若者、障害者等）により、ロボットと通信するために、グラフィック手段（例えばタブレット、スマートフォン）を補足物としてすら使用しないことになる。
【００３５】
ソフトウェアの集合１１０は（非網羅的に）、「抽出器」１１１、「活動示唆」１１２、「マインド優先順位付け」１１３、「パッケージ管理者」１１４、「ユーザ履歴データ」１１５、「集中自律的活動」１１６、「集中対話トピック」１１７、および「健康監視サービス」１１８を含む互いに相互作用するソフトウェアモジュールまたはオブジェクトまたはソフトウェアコード部品を含む。
【００３６】
「エクストラタサービス」１１１は通常、ロボットの内部または外部にある何かを感知または認識し、短期データをロボットのメモリ中に提供する。抽出器サービスはロボットセンサから入力測定結果を受信し、これらのセンサ測定結果は、ロボットの位置、その環境内の物体／人間の識別、前記物体／人間の距離、人間により発声された単語またはその感情に関連する関連データを抽出するように前処理される。抽出器サービスは特に、顔認識、人認知、係合ゾーン、ウエイビング検出、微笑検出、凝視検出、感情検出、音声分析、スピーチ認識、音声定位、運動検出、パノラマコンパス、ロボット姿勢、ロボット健康診断、電池、ＱＲコード（登録商標）取り扱い、ホームオートメーション、種族、時間およびスケジュールを含む。
【００３７】
「アクチュエータサービス」はロボット１３０に行為を物理的に行わせるまたは行為を行わせる。運動追跡器、ＬＥＤ、行動管理者は「アクチュエータサービス」の例である。
【００３８】
「データサービス」は長期的に格納されたデータを提供する。データサービスの例は、ユーザデータとロボットで行ったもののその履歴とを格納するユーザセッションサービス１１５と、ロボットにより行われる手順のスケーラブルストレージにそれらの高レベル定義、立ち上げ条件およびタグを与えるパッケージ管理者サービス１１４である。「パッケージ管理者」は特に、活動と対話のスケーラブルストレージとマニフェストとを提供する。「マニフェスト」は、立ち上げ条件、タグおよび高レベル記述などのメタデータを含む。
【００３９】
「マインドサービス」（例えばサービスマインド優先順位付け１１３）は、行為を開始しているときにロボットの中央「マインド」により制御されるものである。「マインドサービス」は、「アクチュエータサービス」１３０、「抽出器サービス」１１１および「データサービス」１１５を繋ぎ合わせる。ベーシックアウェアネス（Ｂａｓｉｃ  Ａｗａｒｅｎｅｓｓ）は「マインドサービス」である。ベーシックアウェアネスは、運動サービスに移動するように告げるための人認識、運動検出および音声定位などの「エクストラタサービス」を支持する。「マインド」１１３は、状況に基づくベーシックアウェアネスの行動を構成する。またある時には、ベーシックアウェアネスは、ひとりでに行動するまたはランニング活動（Ｒｕｎｎｉｎｇ  Ａｃｔｉｖｉｔｙ）により構成されるかのいずれである。
【００４０】
「自律的生命（ａｕｔｏｎｏｍｏｕｓ  ｌｉｆｅ）」はマインドサービスである。「自律的生命」は行動活動を行う。状況のコンテキストに基づき、マインドは、何の活動に焦点を合わすべきかを自律的生命に伝え得る（「集中自律的活動１１６」）。マニフェスト内のメタデータはこの情報をマインド内に結びつける。いかなる活動もオペレーティングシステムＡＰＩのうちの１つまたは複数へアクセスし得る。活動はまた、何の活動に焦点を合わすべきかを自律的生命に直接伝えてもよいし、何のトピックに焦点を合わすべきかを対話サービスに伝えてもよい。
【００４１】
「対話」サービスはマインドサービスとして構成され得る。「対話」サービスは、スピーチ認識抽出器を支持し、「アニメ化スピーチアクチュエータサービス」を使用して話すことができる。状況のコンテキストに基づき、マインドは、何のトピック（「対話トピック」）に焦点を合わすべきかを対話サービスに伝え得る。「対話」サービスはまた、会話を管理するためのアルゴリズムを有し、通常は、ひとりでに行動する。対話サービスの１つの部品は「集中対話トピック」サービス１１７であり得る。対話トピックは、いつでも、異なる活動または対話トピックへ焦点を切り替える（またはそれを実行するまたは立ち上げる）ようにマインドにプログラム的に告げ得る。対話トピックを判断する可能な方法の一例は以下のものである：対話トピックまたは活動の立ち上げ条件が真または偽になった瞬間に、全ての可能な活動または対話トピックのリストがさしあたりマインドへ送信される、リストは活動優先順位付けに従ってフィルタ処理される、リスト順番がランダム化される、「ユニーク」でありかつそれほど頻繁に開始されなかった活動または対話トピックへ優先順位を与えるためにリストがソート（または採点）される、このリスト内の最上位対話トピックまたは活動が、実行された以前の活動と同じ活動ではないということを確認するための特別の照査。リストは再び、ユーザの嗜好に従ってソートされフィルタ処理され得る。
【００４２】
ロボットは「健康監視」サービス１１８を実施し得る。このようなサービスは、ロボットの様々な優先度を精査または制御または調節するデーモンまたは「ウオッチドッグ」として働き得る。このようなサービスは、ロボットの内部部品の状態を（連続的、間欠的または定期的に）監視し得るともにハードウェア障害を測定または予期または予測または補正し得る。一つの発展形態では、ロボットの一団が監視される（例えばインストールベースで）。埋め込みサービスは故障状況を連続的に検知し、それを「クラウド」サービスと同期させ得る（例えば毎分毎に）。
【００４３】
ハードウェア部品１２０は、処理手段１２１、メモリ手段１２２、入出力Ｉ／Ｏ手段１２３、マスストレージ手段１２４およびネットワークアクセス手段１２５を含み、前記手段は互いに相互作用する（キャッシング、スワッピング、分散計算、負荷平衡等）。処理手段１２１はＣＰＵ（マルチコアまたはメニーコア（ｍａｎｙｃｏｒｅ））またはＦＰＧＡであり得る。メモリ手段１２２は、フラッシュメモリまたはランダムアクセスメモリの１つまたは複数を含む。Ｉ／Ｏ手段１２３は、スクリーン（例えばタッチスクリーン）、ライトまたはＬＥＤ、触覚フィードバック、バーチャルキーボード、マウス、トラックボール、ジョイスティックまたはプロジェクタ（レーザプロジェクタを含む）のうちの１つまたは複数を含み得る。ストレージ手段１２４は、ハードディスクドライブまたはＳＳＤの１つまたは複数を含み得る。ネットワークアクセス手段は、３Ｇ、４Ｇ／ＬＴＥ、Ｗｉｆｉ、ＢＬＥまたはメッシュネットワークなどの１つまたは複数のネットワークへのアクセスを提供し得る。ネットワークトラフィックは暗号化され得る（例えばトンネル、ＳＳＬ等）。
【００４４】
一実施形態では、計算資源（計算機、メモリ、Ｉ／Ｏ手段、ストレージおよび接続性）は例えばローカル資源（ロボット自身に利用可能な）に対する補足として遠隔的にアクセスされ得る。例えば、別のＣＰＵユニットが音声認識計算タスクのクラウドを介しアクセスされ得る。計算資源はまた、共有され得る。特に、複数のロボットが資源を共有し得る。ロボット近傍の接続装置はまた、例えばセキュアプロトコルを介し資源をある程度共有し得る。表示手段も共有され得る。例えば、テレビはロボットにより別のディスプレイとして使用され得る。
【００４５】
図２は、本方法の実施形態のいくつかの態様を詳述する。人間ユーザ１５０とロボット１３０間の文章を含む対話１４０中にアプリケーションの立ち上げまたは実行をトリガするいくつかのやり方がある。１つまたは複数の対話パターンが対話中に抽出され（２００）、さらに、１つまたは複数のソフトウェアアプリケーションおよび１つまたは複数の実行規則２０２に関連付けられた１つまたは複数の意味論的記述２０１と比較され（２１０）、試験される。検証されれば（２２０）（例えばそのセンサによりロボットにより認識された環境に照らして）、１つまたは複数のソフトウェアアプリケーションが選択される。健康監視ウオッチドッグ２３１から導出されるような別の任意選択的判定基準が実行優先度（または確率）を再配置し得る。その結果、１つまたは複数のソフトウェアアプリケーションが工程２４０において実行される。
【００４６】
１つまたは複数のソフトウェアアプリケーションの立ち上げまたは実行をトリガするこれらの様々なやり方（特に、以下説明される）は独立しており、さらに互いに組み合わせられ得る。概して、ソフトウェアアプリケーションは立ち上げ条件またはパラメータに依存して実行され得る。これらの条件またはパラメータは事実２０１または規則２０２またはその両方（事実に基づく規則）であり得る。これらの事実２０１は例えば、ユーザのタイプまたはカテゴリと、１つまたは複数の環境値（例えば現在のローカル天候、日時、検出された感情、ユーザの数等）により特徴付けられた現在のコンテキストまたは状況または環境とを含む。規則２０２は簡単な規則から複雑な規則まで及ぶ。規則は条件付きであり得る。例えば、一実施形態では、アプリケーションの実行を認証または許容するために複数の規則が同時に満足されなければならない。別の実施形態では、複数の規則が連続的に満足されなければならない（例えば一定の順番でおよび／または時限または閾値により）。いくつかの規則は予め定義され得る。いくつかの他の規則は動的に定義され得る（例えば、いくつかの規則はインターネットから取り出され得る）。
【００４７】
アプリケーションの実行の別の規則として、ロボットの健康監視サービス２３１が実行優先度を調整し得る（２３１）。特に、アプリケーションの実行はこのような「健康監視」サービスを考慮し得る。換言すれば、優先度方式がソフトウェアアプリケーションの実行をさらに規制し得る。一実施形態では、ロボットはユーザと相互作用しない（すなわち、誰とも相互作用しない）。このような場合、ロボットは自律的タスクを行う、または行い得る。別の実施形態では、ロボットは危険な状態（例えば「セーフガードモード」、低またはクリティカルバッテリレベル、転倒などの障害またはリスクの存在）にある。このような場合、ロボットの優先度は、それ自身の課題を処理し解決する（例えばそれ自身のタスクを行う）ことである。例えば、バッテリレベルがクリティカルであれば、ロボットはユーザとの対話を遮断し、エネルギー源ベースに到達しようとし得る。対話相互作用モジュールは、ユーザが近傍で検知されればおよび／またはロボットがクリティカル状況（ロボットはその基本機能を実行し得ない）にいなければ、活性化され得る。反対に、対話相互作用モジュールは、いかなるユーザも近傍に検知されなければおよび／またはロボットがクリティカル状況にいれば、非活性化され得る。
【００４８】
次に、アプリケーションの実行のいくつかの特定の情況について説明する。
【００４９】
一実施形態では、１つまたは複数のアプリケーションが対話中に実行され、１つまたは複数の実行条件の達成（または検証または満足）２２０によりトリガされる。人と機械間の対話が監視され、「パターン」が対話フロー１４０から連続的に抽出される２００（「協働対話（ｃｏｌｌａｂｏｒａｔｉｖｅ  ｄｉａｌｏｇ）」モード）。一実施形態では、スピーチフローが受信され連続的に解析される。抽出は、マーカの有無にかかわらずスピーチフロー内の音声命令（例えばキー表現）の単なる抽出を越える（「ＯＫ  Ｇｌａｓｓ、写真を撮って」）。特に、ユーザの言葉または表現が抽出され、ソフトウェアアプリケーションの１つまたは複数の意味論的記述２０１と比較または照合される２１０。
【００５０】
各ソフトウェアアプリケーションは、いくつかの実施形態では、意味論的記述２０１および文脈論的立ち上げまたは実行規則２０２としてソフトウェアプログラムを伴い得る。意味論的記述２０１は通常、ソフトウェアアプリケーション編集者または発行者により提供される。これらの意味論的記述は特に、当該ソフトウェアアプリケーショ周りの１つまたは複数の予め作成された対話を含み得る。これらの対話は特に、ソフトウェアアプリケーション周りの変更を含む。例えば、その単なる商業上の名称の代わりに、ゲームアプリケーションは、「鳥と緑色豚によるゲーム」または「ターゲットに鳥を投げなければならないゲーム」などとして知らされ得る。文章とこれらの文章周りの検証とで構成されるこれらのメタ記述が構造化対話２０１中に提供される。対話フォームへのパッケージング化は、組み合わせツリーを解析できるようにし、曖昧性を明確化できるようにする。例えば、ユーザが「鳥と遊びたい」と要求すれば、ロボットはさらに、「現実鳥と遊びたいかまたは仮想鳥と遊びたいか？」と尋ね得る。ユーザが「仮想鳥と」と応答すれば、ロボットは「つまりゲームをしたいのか？！」と確認のために尋ね得る。ユーザが「はい」と応答すれば、ロボットは依然としてさらに確認を求める（例えば「緑色豚に鳥を投げなければならないゲームがある）。
【００５１】
ロボットとの対話を利用することで、特定ソフトウェアモジュールへの特定の異なるかつ有利なアクセスを可能にする。アプリケーションが意味論的記述を備えなくかつ表示能力の存在下のタブレットまたはＰＣでは、アプリケーションは装置上で平等にアクセス可能である。ユーザは、正しい所望アプリケーションを識別するためにスクリーンをスワイプしなければならない。ユーザがアプリケーションのロゴおよび／またはいくつかの記述を思い出すことができなければ、恐らく多くのソフトウェアアプリケーションの中から１つのアプリケーションを取り出す特別のやり方は存在しない。逆に、開示された会話を介したおよび会話中のソフトウェアへのアクセスのモードは、「データマイニング（ｄａｔａ  ｍｉｎｅ）」利用可能アプリケーションを効果的に可能にする。上記モードはある程度はより自然であり、表示手段の欠如を補償し得る。モードの著しい１つの特性は相互作用の性質に関係する：すなわち、対話は、複雑なまたは不明瞭なまたは不十分な問い合わせを取り扱え得るようにする。不十分な情報の場合には、ソフトウェアアプリケーションに関連付けられた記述内に予め定義された会話は、ギャップを埋めることと、正確なソフトウェアアプリケーションの識別に急速に収斂することとを可能にする。このモードは「協働対話」と名付けられ得る。
【００５２】
別の実施形態では、１つまたは複数の立ち上げ条件または実行規則２０２が予め定義される。ソフトウェアアプリケーションには、編集者または発行者により、前記ソフトウェアアプリケーションの立ち上げを認証することができるまたは認証することを許可する条件および／または規則のリストを含むファイルが提供される。実行規則は試験される、すなわち、実行規則が満足または許容または検証されれば（２２０）、１つまたは複数のソフトウェアアプリケーションが選択され得る。いくつかの規則は満たすべき最小判定基準であり得る。いくつかの他の規則時間は好適な立ち上げ条件を定義し得る。例えば、最小実行規則は「ユーザが１２歳未満であり、午後２２時前であれば、立ち上げは認証される」であり得、好適な規則は「３人のユーザが５ｍ内におり、少なくとも２人のユーザが１２歳未満であり、少なくとも１人が微笑んでおり、他の誰も指示に反対しなければ、ダンスを提案する」であり得る。換言すれば、アプリケーション自体が、それらの好適な立ち上げ条件を定義し得る。
【００５３】
実行規則および／または意味論的記述はネットワークを介しアクセスされてもよいしローカルにアクセスされてもよい。いくつかの実施形態では、実行規則および／または意味論的記述はネットワークおよび知識ベースへのアクセスにより補完または補足される。
【００５４】
一実施形態では、１つまたは複数のソフトウェアアプリケーションの立ち上げまたは実行はユーザとの対話（ユーザとの相互作用）中にトリガされる。具体的には、ユーザにより朗読されロボットにより捕捉および認識される１つまたは複数の単語が、前記実行のトリガを引き起こす。所定の天候アプリケーションがロボットにインストールされ、前記アプリケーションは協働対話に関連付けられる。協働対話は、以下のような抽出された１つまたは複数のパターン（２００）を含む、例えば「天候情報をお願いします」、「天候情報を下さい」、「天候は何ですか」、「〜市の天候は何ですか」、「外は陽が差していますか」「暖かい服装が必要ですか」「明日は雨になりますか」。対話中、ユーザは「今日の天候はどうですか」とロボットに尋ねる。音声信号が捕捉され、任意選択的にフィルタ処理され、強化され、スピーチツーテキスト（ｓｐｅｅｃｈ−ｔｏ−ｔｅｘｔ）操作が行われ（ロボット上でローカルにおよび／またはクラウド上で遠隔的に）、得られたテキストが解析され、１つまたは複数の比較が前記パターンにより行われる。１つまたは複数が一致すると、任意選択的に閾値により、ソフトウェアアプリケーションが、ロボット上にインストールされたものの中から選択される。選択されたソフトウェアアプリケーションがさらに実行される。実際には、例えば、ロボットは天候アプリケーションを立ち上げて、要求情報を提供することができる。
【００５５】
一つの発展形態では、様々なインストールされたソフトウェアアプリケーションの音声「リスティング（ｌｉｓｔｉｎｇ）」操作は情況依存である、すなわち規則の集合に依存する（すなわち、現在の情況により少なくとも部分的に駆動される）。下記は例である。ユーザは「何ができるか」と尋ねる。ロボットは視覚認知を解釈し、子供を検知する。音声認識および／または顔認識は、子供がロボットとチェスを行ったことがないと判断する。ロボットは「チェスを一緒に行うことができる」と提案する。例えば、対応パターンは、｛提案：［〜ゲーム“＄人／年齢＞１０〜情報”］｝のようになる。ユーザが例えば「はい、すばらしい」と応答すれば、ロボットはこの応答を確認パターンと解釈し、次に対応ソフトウェアアプリケーションを立ち上げるまたは実行することができる。いくつかの所定規則（例えば、当日の時刻、ユーザが微笑しているかいないか等）により、ロボットは写真を撮ることを積極的に提案し得る：すなわち、ユーザによる確認次第、ロボットは実際にカメラを起動する。
【００５６】
これらの例は、ロボットの行動を規定するためにより多くの複雑な規則が予め定義され得るということを示す。通常、ゲームアプリケーションは誰へでも提案され得、「情報」カテゴリ内に分類されたアプリケーションは大人だけへ提案され得る。換言すれば、事実として、ユーザはグループに分類され得る。このような事実に基づき、規則は定義され得る：すなわち、ソフトウェアアプリケーションは対応実行規則に関連付けられ得る。例えば、一実施形態では、ロボットによるアプリケーションの提案は所定（例えば、予想）環境により駆動され得る。例えば、アプリケーションの開発者は、天候アプリケーションの「積極的協働対話」（｛提案：＄対話／天候／やがて雨＝＝真「今日は傘を持っていきたいかもしれない」の形式の）を追加し得る。この規則は、天候アプリケーションが雨になるということを示すかどうかを判断し、ロボットはそれに応じてユーザに警告し得る。｛提案：＄人／年齢＜１０「話をしてほしいですか？」；ｕ１：（〜確認）＾焦点切り替え（不思議の国のアリス）という話すための規則により、ユーザが正しい年齢グループに入ると判断されれば、トピック「物語」内の受信確認は所定物語タイプへ自動的に切り替えられる。
【００５７】
特定の実施形態では、ユーザは、様々なインストールされたソフトウェアアプリケーションを列挙（利用可能ソフトウェアアプリケーションの「音声リスティング」）してくれるようにロボットに能動的に要求し得る。実際には、アプリケーションの開発者は、天候アプリケーション、注釈付き「情報」（例えばメタデータ）または類別された「情報」、チェスゲームアプリケーション、注釈付き「ゲーム」（例えばメタデータ）または類別された「ゲーム」を追加またはインストールする。ユーザが「何ができるか？」などの質問をすると、ロボットは「情報とゲームとを持っている」と答え得る。ユーザが「情報が欲しい」と要求すれば、ロボットは対話文章をパターン（「アプリケーションが欲しい」）に対応すると解釈し得る。次に、ロボットは「天候情報を与えることができる」と答え得る。ユーザが「それでいい」と応答すれば、ロボットはこの文章を確認パターンと解釈する。ロボットは最終的に要求情報を提供する。
【００５８】
一実施形態では、ロボットはカテゴリ（生産性、ゲーム等）毎に利用可能な様々なアプリケーションを列挙し得る。ユーザはいつでも中断し得るおよび／またはより詳細（価格、レビューなどを含む）を要求し得る。一実施形態では、例えば、ユーザ問い合わせに応答して、ロボットはテーマまたはトピック毎に利用可能アプリケーションを列挙し得る。例えば、ユーザは「いくつかゲームを持っているか」と尋ね得、ロボットは「はい、２つのゲームとチェスと怒りの鳥（ａｎｇｒｙ  ｂｉｒｄｓ）とを持っている」と答え得る。必要に応じ、ツリーのサブパーツが解析され得る。例えば、ユーザが「ゲームは好きでない」と宣言すると、対応カテゴリはスキップされ得る。換言すれば、前記ユーザに関するデータの蓄積から生じるユーザプロファイルは有利には、相互作用に良好に向くまたはそれに焦点を合わせるために活用され得る。別の実施形態では、ロボットは、利用可能またはインストールされたソフトウェアアプリケーションのリストを見ることを積極的に提案または先導し得る。このような場合、ロボットは、例えばアルファベット順によりソフトウェアアプリケーションカテゴリ（生産性、ゲーム、健康ユーティリィティ等）により、ソフトウェアアプリケーションの様々な名前を、多かれ少なかれ迅速に、明確に述べる。一つの発展形態では、このような提案は前記ユーザとの対話中に発生し得る。
【００５９】
次に、本発明のいくつかの態様について論述する。
【００６０】
ソフトウェアアプリケーションの実行の規則に関し、競争法は通常、公平でありかつ差別的でない慣行を課す。例えば、パーソナルコンピュータ上で、新しいブラウザアプリケーションを設定する際、ユーザにはいくつかの選択肢間の選択が与えられなければならない。同様な要件がロボットプラットホームに対して観測されるということが予測され得る。スタンドアロンソフトウェアであろうとウェブサービスであろうと、ロボットの一般的ソフトウェアフレームワークは恐らくソフトウェア代替物に直面し得る。例えば、電子メールクライアントを必要とする場合、ロボットプラットホームは、オープンソース代替物とプロプライアタリ代替物間の選択肢を有するだろう。ウェブサービスに関し、このような選択（廃止予定ＡＰＩの選択等）は日中に定期的に発生し得る。一般的ガイドラインは、ロボットに付随するソフトウェアパネル上で定義され得る。一実施形態では、以下のような合理的な数のこのような選択がユーザへ提供され得る：「Ｇｏｏｇｌｅ  ＡＰＩまたはＢｉｎｇＡＰＩを利用したいですか？」、このＲＳＳフィードまたはこのＲＳＳフィード。同じ分野において、または活動間で少なくともいくつかのオーバーラップがある分野において競合するいくつかのソフトウェアアプリケーションの場合、いくつかの規則が発生し得る。第１に、ロボットプラットホームのオペレータはユーザの経験の品質が保存されることを保証し得る。例えば、独立したウオッチドッグまたは監視デーモンは、ユーザ毎に受信された全部の懇請の数を観察および制限し得る。ソフトウェアアプリケーション使用の統計（ダウンロードの回数、立ち上げの回数、ソフトウェアアプリケーションとの相互作用の回数）および／またはソフトウェアアプリケーション財務的側面（委託料、編集者の取り分等）および／またはソフトウェアアプリケーション品質メトリック（統計データおよび／またはローカル測定フィードバックを含む消費者レビュー、採点）に基づき、立ち上げ条件は緩和され得る。実際には、閾値とパラメータは、ソフトウェアアプリケーション供給者により先験的に宣言された立ち上げ条件を考慮する。
【００６１】
ソフトウェアアプリケーションの取り出しおよびインストールの「オンデマンド」モードに関し、上記実施形態による「ソフトウェアアプリケーション」は通常、インストールまたはプリインストールされる（すなわち、ソフトウェアコードはダウンロードされ、装置上のインストールの準備ができている）。別の実施形態では、ソフトウェアアプリケーションはまた、潜在的にインストールされ得る、または仮想的にインストールされ得る、またはインストールの候補として列挙され得る。換言すれば、ロボットの判断論理は、補足的ソフトウェアアプリケーションが必要とされ得るまたはさらには要求され得るということを一定の時期に判断し得る。一実施形態では、アプリケーション要件は定義され得（例えば、天候ソフトウェアアプリケーションは華氏度の値を提供する）、前記要件は、クラウドへ、またはソフトウェアアプリケーション（認証済みまたは未認証版、アルファ版、ベータ版等の）の在庫を含む中央サーバへ送信され、前記要件と利用可能ソフトウェアアプリケーション間の１つまたは複数の一致があれば、１つまたは複数の対応ソフトウェアアプリケーションがダウンロードされ、さらにロボットへインストールされ得る。後者の工程は速い可能性があるので、このような「オンデマンド」再構成はユーザにとってトランスペアレントであり得る。
【００６２】
視覚インターフェース対音声対話インターフェースに関し、ロボットとの相互作用においてユーザを誘導または支援するために利用可能な表示手段が存在しないシナリオは、相互作用の「無くてはならない」モードすなわち将来起こる最もありそうな状況（高齢者、障碍者、自然でかつ単純明快な相互作用等）である可能性がある。それにもかかわらず、至る所（壁上、テーブル上の安価なスクリーン、日常のオブジェクト上等）がスクリーンであふれた将来もまた実現可能性がある。この場合、開示実施形態との矛盾は無い：すなわち、相互作用モード（音声対話モードと便宜的（ｏｐｐｏｒｔｕｎｉｓｔｉｃ）ＧＵＩ）は少なくとも補足的である。例えば、ロボット近傍のアクセス可能な１つまたは複数の表示手段（例えば、そばを通ると情報を受信および表示するようにされた接続テレビ、またはロボットの手の届き得るタブレット、または時計または車のウインドガラス等）の場合には、選択を速めるためにユーザインターフェースの少なくともいくつかの関連部分がユーザへ便宜的に表示され得る。換言すれば、ロボットと相互作用することを視覚手段が完全に回避することができれば、反対に、いくつかの表示手段へのアクセス可能性はユーザ経験を補完または豊かにするために活用され得る。いくつかの実施形態では、ロボットは、表示手段（例えば胴上に配置されたタッチスクリーン）無しに提供され得る、または要求に応じてどこにでも（ＧＵＩの少なくとも適正な部分に）表示することができるようにプロジェクタまたはピコプロジェクタを埋め込み得る（例えば手および／または頭に）。したがって、グラフィックＵＩと非グラフィックユーザインターフェースは組み合わせられ得る。
【００６３】
閉ループ対開ループ実施形態について論述し得る。一実施形態では、アプリケーションの立ち上げは完全に自動である、すなわちユーザの同意または確認無しに行われる。一つの発展形態では、ユーザまたはスーパーユーザ（例えば親）が、アプリケーションの実行を中断または中止または終結または終了し得る。別の実施形態では、アプリケーションの立ち上げはユーザによる明示的確認を必要とする。ロボットは、あるアプリケーションを立ち上げる意図を宣言し得るが、継続する前に確認を待つことになる。例えば、ロボットは「天候状況を与えることを提案する」と宣言し得、ユーザは依然として「今はダメ」と応答し得る。一実施形態では、「天候情報を下さい」という音声命令の受信に応じて、ロボットのオペレーティングシステムは、現在のタスクの実行を一時停止し、特定ソフトウェアアプリケーションを立ち上げ／実行することができる；すなわち、終了後、現在のタスクは再開され得る。
【００６４】
開示された方法は、完全ハードウェア実施形態（例えばＦＰＧＡ）、完全ソフトウェア実施形態またはハードウェアとソフトウェア要素の両方を含む実施形態の形式を採り得る。ソフトウェア実施形態は、限定しないがファームウェア、常駐ソフトウェア、マイクロコードなどを含む。本発明は、コンピュータまたは任意の命令実行システムにより使用されるまたはそれに関連して使用されるプログラムコードを提供するコンピュータ使用可能またはコンピュータ読み取り可能記憶媒体からアクセス可能なコンピュータプログラム製品の形式を採り得る。コンピュータ使用可能またはコンピュータ読み取り可能記憶媒体は、命令実行システム、装置、またはデバイスにより使用されるまたはそれに関連して使用されるプログラムを含み、格納し、伝達し、広め、または搬送し得る任意の装置であり得る。コンピュータ読み取り可能記憶媒体は、電子的、磁気的、光学的、電磁気的、赤外線、半導体システム（または装置またはデバイス）、または伝播媒体であり得る。
【図１】
0006328793.tif 000002
【図２】
0006328793.tif 000003