(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024016167
(43)【公開日】2024-02-06
(54)【発明の名称】マシン相互作用
(51)【国際特許分類】
G06F 3/01 20060101AFI20240130BHJP
G06F 3/04815 20220101ALI20240130BHJP
G06F 3/0346 20130101ALI20240130BHJP
【FI】
G06F3/01 510
G06F3/04815
G06F3/0346 423
【審査請求】有
【請求項の数】20
【出願形態】OL
(21)【出願番号】P 2023188535
(22)【出願日】2023-11-02
(62)【分割の表示】P 2021526189の分割
【原出願日】2019-07-19
(31)【優先権主張番号】744410
(32)【優先日】2018-07-19
(33)【優先権主張国・地域又は機関】NZ
(31)【優先権主張番号】755122
(32)【優先日】2019-07-03
(33)【優先権主張国・地域又は機関】NZ
(71)【出願人】
【識別番号】519327490
【氏名又は名称】ソウル マシーンズ リミティド
(74)【代理人】
【識別番号】110000338
【氏名又は名称】弁理士法人 HARAKENZO WORLD PATENT & TRADEMARK
(72)【発明者】
【氏名】マンロー,ロバート ジェイソン
(72)【発明者】
【氏名】ブラケット,シェーン アラン
(72)【発明者】
【氏名】セイガー,マーク アンドリュー
(57)【要約】 (修正有)
【課題】人・マシン相互作用を改善するか又は少なくとも公衆または産業界に有用な選択肢を提供するエンドユーザディスプレイデバイス上で人工エージェント及びデジタルコンテンツと対話する方法を提供する。
【解決手段】自律的仮想具現化エージェントを介して提供されるコンピュータとの相互作用であって、コンピュータは、デジタル・データの形で存在し、ユーザ3に表現可能な任意のコンテンツを含むデジタルコンテンツ5を出力する。デジタルコンテンツのサブセット又は全てが、ユーザ3及びエージェント1の両方に表現可能な共有デジタルコンテンツ5として構成される。
【選択図】
図1
【特許請求の範囲】
【請求項1】
エンドユーザディスプレイデバイス上で人工エージェントおよびデジタルコンテンツと対話するための方法であって、
エージェント仮想空間における人工エージェントをシミュレートすること、
エンドユーザディスプレイデバイス上のエンドユーザに、前記人工エージェントおよび前記人工エージェント仮想空間を表示すること;
カメラからの前記エンドユーザの画像を受信すること;
前記エンドユーザの注視を追跡すること;
注意モデルを前記エンドユーザの注視に適用し、前記人工エージェントに出力を提供すること;および
前記注意モデルの前記出力に基づいて、前記人工エージェントと前記エンドユーザとの間の具現化された相互作用をシミュレートすること、
を含む方法。
【請求項2】
前記注意モデルは、前記人工エージェントの注視にも適用される、請求項1に記載の方法。
【請求項3】
前記具現化されたエージェンシミュレータは、前記カメラから前記ユーザの空間の画像を受信するようにさらにプログラミングされる、請求項1または2に記載の方法。
【請求項4】
前記エージェント仮想空間内の前記デジタルコンテンツをシミュレートすることによって、前記人工エージェントによって知覚可能であるデジタルコンテンツを表すことをさらに含む方法であって、前記デジタルコンテンツは前記エンドユーザにとって可視である、請求項1~3のいずれか1項に記載の方法。
【請求項5】
前記エンドユーザの注視を追跡することは、前記エンドユーザの視線を追跡すること、前記エンドユーザの眼球運動を追跡すること、および前記ディスプレイ上で前記エンドユーザの眼球運動を追跡することのうちの1つまたは複数を含む、請求項1から4のいずれか1項に記載の方法。
【請求項6】
前記注意モデルは、顕著性因子と、前記人工エージェントと前記エンドユーザが共に注意を払い顕著性が増加するオブジェクトとを含む、請求項1~5に記載の方法。
【請求項7】
前記顕著性因子は、前記エンドユーザおよび前記人工エージェントの顕著性注視マップに基づく重み付け顕著性注視因子を含む、請求項6に記載の方法。
【請求項8】
前記注意モデルは、前記エンドユーザの眼球運動、前記エンドユーザのアクション、前記エンドユーザの環境内のオブジェクト、および前記エンドユーザの環境内のアクションにも適用される、請求項1~7のいずれか1項に記載の方法。
【請求項9】
前記注意モデルは、エンドユーザ入力にも適用される、請求項1から8のいずれか1項に記載の方法。
【請求項10】
前記エンドユーザ入力は、聴覚入力またはテキスト入力、言語入力、タッチスクリーンまたはエンドユーザのマウスの動き、視覚入力のうちの1つまたは複数を含み、前記視覚入力はジェスチャまたは顔の表情であり、前記ジェスチャは、腕、手、または指のうちの1つの動きを含む、請求項9に記載の方法。
【請求項11】
電子計算装置上に実装されたエンドユーザとの相互作用をシミュレートするための具現化されたエージェントシミュレータであって、
エージェント仮想空間内の前記具現化されたエージェントをシミュレートし、エンドユーザディスプレイ上のエンドユーザに、前記人工エージェントおよび具現化エージェント仮想空間を表示し;
カメラから前記エンドユーザの画像を受信し;
前記受信した画像に基づいてエンドユーザの注視を追跡し;
注意モデルを前記エンドユーザの注視に適用し、前記具現化されたエージェントに出力を提供し;
前記注意モデルの前記出力に基づいて、前記具現化されたエージェントと前記エンドユーザとの間の具現化された相互作用をシミュレートする、
ようにプログラムされる、具現化されたエージェントシミュレータ。
【請求項12】
前記注意モデルは、前記人工エージェントの注視にも適用される、請求項11に記載の具現化されたエージェントシミュレータ。
【請求項13】
前記具現化されたエージェントシミュレータは、前記カメラから前記エンドユーザの空間の画像を受信するようにさらにプログラムされる、請求項11または請求項12に記載の具現化されたエージェントシミュレータ。
【請求項14】
前記具現化されたエージェントシミュレータは、前記エージェント仮想空間内のデジタルコンテンツをシミュレートすることによって、前記人工エージェントによって知覚可能である前記デジタルコンテンツを表すようにさらにプログラムされ、前記デジタルコンテンツは前記エンドユーザにとって可視である、請求項11~13のいずれか1項に記載の具現化されたエージェントシミュレータ。
【請求項15】
前記エンドユーザの注視を追跡することは、前記エンドユーザの視線を追跡すること、前記エンドユーザの眼球運動を追跡すること、および前記ディスプレイ上で前記エンドユーザの眼球運動を追跡することのうちの1つまたは複数を含む、請求項11から14のいずれか一項に記載の具現化されたエージェントシミュレータ。
【請求項16】
前記注意モデルは、顕著性因子と、前記人工エージェントと前記エンドユーザとが共に注意を払い顕著性が増加するオブジェクトとを含む、請求項11~15のいずれか一項に記載の具現化されたエージェントシミュレータ。
【請求項17】
前記顕著性因子は、前記エンドユーザおよび前記人工エージェントの顕著性注視マップに基づく重み付け顕著性注視因子を含む、請求項16に記載の具現化されたエージェントシミュレータ。
【請求項18】
前記注意モデルは、前記エンドユーザの眼球運動、前記エンドユーザのアクション、前記エンドユーザの環境内のオブジェクト、および前記エンドユーザの環境内のアクションにも適用される、請求項11~17のいずれか1項に記載の具現化されたエージェントシミュレータ。
【請求項19】
前記注意モデルは、エンドユーザ入力にも適用される、請求項11~18のいずれか1項に記載の具現化されたエージェントシミュレータ。
【請求項20】
前記エンドユーザ入力は、聴覚入力またはテキスト入力、言語入力、タッチスクリーンまたはエンドユーザのマウスの動き、視覚入力のうちの1つまたは複数を含み、前記視覚入力はジェスチャまたは顔の表情であり、前記ジェスチャは、腕、手、または指のうちの1つの動きを含む、請求項19に記載の具現化されたエージェントシミュレータ。
【発明の詳細な説明】
【技術分野】
【0001】
コンピュータサイエンス技術は人とマシンとの間の相互作用を容易にするために使用され、排他的ではないが、より詳細には、人とコンピュータとの相互作用を容易にするために具現化されたエージェントを使用する。
【背景技術】
【0002】
HCI(Human-Computer Interaction)は、コンピュータグラフィックス、オペレーティングシステム、ソフトウェアプログラミング、および認知科学からの技術を使用して、人とコンピュータとの間の相互作用を改善することを目的とするコンピュータサイエンスの分野である。自律エージェントは、人間のユーザがコンピュータを操作するのを支援することによって、人とコンピュータの相互作用を改善することができる。自律エージェントは環境(仮想または現実であってもよい)において柔軟かつ/または自律動作が可能であるので、自律インターフェースエージェントはセンサおよびエフェクターがコンピュータインターフェースの入力および出力能力と相互作用するロボットと見なすことができる。自律インターフェースエージェントは、ユーザ指示やコラボレーションの有無にかかわらず、ユーザと並列にコンピュータインターフェースと相互作用することができる。
【0003】
「Method for managing mixed-initiative human-machine dialogues based on interactive speech”(相互対話に基づく混合主導人―マシン相互作用の管理方法)」と題するEP1444687B1は、音声相互作用型に基づく混合主導人―マシン対話の管理方法を開示しており、「System and method for online user assistance(オンラインユーザ支援のためのシステムと方法)」と題したEP2610724A1は、オンラインユーザ支援のための仮想アニメーションキャラクターの表示を開示している。
【0004】
自律インターフェースエージェントは、人工知能技術を用いて情報をインテリジェントに処理し、より人間的な方法で相互作用し、エージェント自体を提示することが望ましい場合がある。人間のユーザにとっては、ボディランゲージ及びボーカルトーンを含む人間らしいコミュニケーション方法を使用してコンピュータと相互作用することが、より容易であり、より迅速であり、及び/又はより関心があることを見出せる。第2に、エージェントの行動と対応の現実性を高めることは、不思議な谷間効果のような知覚される技術障壁を減らすかもしれない。
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明の目的は、人・マシン相互作用(人・コンピュータ相互作用)を改善すること、または少なくとも公衆または産業界に有用な選択肢を提供することである。
【課題を解決するための手段】
【0006】
本開示の一態様では、仮想環境座標を有するエージェント仮想環境を作成するステップと、エージェント仮想環境内のデジタルコンテンツをシミュレートするステップと、エージェント仮想環境内の具現化された人工エージェントをシミュレートするステップと、具現化された人工エージェントがシミュレートされたデジタルコンテンツと相互作用することを可能にするステップと、具現化された人工エージェントとデジタルコンテンツとの間の相互作用をエンドユーザディスプレイデバイス上に表示するステップとを含む、電子計算装置のエンドユーザディスプレイデバイス上に具現化された人工エージェントとデジタルコンテンツとの間の相互作用を表示する方法が提供される。
【0007】
別の態様では、具現化された人工エージェントを介して電子計算装置上のデジタルコンテンツと相互作用するための方法が提供される。前記方法は、電子計算装置上のユーザインターフェース上にデジタルコンテンツをユーザに表示するステップと、仮想環境座標を有するエージェント仮想環境を作成するステップと、エージェント仮想環境内のデジタルコンテンツをシミュレートするステップと、エージェント仮想環境内の具現化された人工エージェントをシミュレートするステップと、具現化された人工エージェントがシミュレートされたデジタルコンテンツと相互作用することを可能にするステップと、相互作用をユーザインターフェース上のデジタルコンテンツの作動または操作に変換するステップと、具現化された人工エージェントをデジタルコンテンツ上にオーバーレイし、デジタルコンテンツおよびオーバーレイされた具現化された人工エージェントをユーザインターフェース上に表示することによって相互作用を表示するステップとを含む。
【0008】
別の態様では、電子計算装置との相互作用を促進するためのシステムが提供され、このシステムは少なくとも1つのプロセッサ装置と、前記少なくとも1つのプロセッサと通信する少なくとも1つのメモリ装置と、前記プロセッサによって実行可能な、前記具現化されるエージェントをシミュレートするように構成されたエージェントシミュレータモジュールと、前記デジタルコンテンツを前記具現化されるエージェントによって知覚可能な概念オブジェクトに変換し、前記具現化されるエージェントが前記デジタルコンテンツと相互作用することを可能にするように配置された前記プロセッサによって実行可能な相互作用モジュールと、前記デジタルコンテンツ、前記具現化されるエージェント、および前記具現化されるエージェントと前記デジタルコンテンツとの相互作用をレンダリングするように構成された前記プロセッサによって実行可能なレンダリングモジュールと、を含む。
【0009】
別の態様では、電子計算装置上に作成された仮想環境内に位置する実施エージェントが提供され、実施エージェントは実世界環境から入力を受信し、仮想環境から入力を受信し、実世界環境および仮想環境からの入力に応じて動作するようにプログラムされ、実世界環境および仮想環境から受信された入力は実世界環境および仮想環境の両方から連続フィードバックループを介して受信される。
【図面の簡単な説明】
【0010】
【
図1】共有相互作用環境でのユーザ・エージェント間の相互作用を示す。
【
図2】エージェントの視点からのユーザ・エージェント間の相互作用を示す。
【
図4】エージェントの背後にあるデジタルコンテンツとのユーザー・エージェントの相互作用を示している
【
図5】人とコンピュータとの相互作用のためのシステム図を示す
【
図6】人とコンピュータとの相互作用のためのプロセス図を示す
【
図7】エージェントと環境との間のフィードバックループのフロー図を示す
【
図8】仮想現実文脈におけるユーザ相互作用を示す。
【
図9】仮想現実文脈における人とコンピュータとの相互作用のためのシステムの概略図を示す
【
図10】拡張現実文脈におけるユーザ相互作用を示す。
【
図11】モバイルアプリケーションを使った人とコンピュータとの相互作用のためのシステムの概略図を示す。
【
図12】エージェントを介した人とコンピュータとの相互作用のスクリーンショットを示す。
【
図13】エージェントを介した人とコンピュータとの相互作用のスクリーンショットを示す。
【
図14】エージェントを介した人とコンピュータとの相互作用のスクリーンショットを示す。
【
図15】エージェントを介した人とコンピュータとの相互作用のスクリーンショットを示す。
【
図16】エージェントを介した人とコンピュータとの相互作用のスクリーンショットを示す。
【
図17】エージェントのコンピュータビジョンシステムを使用するデジタルコンテンツとの相互作用の概略図を示す。
【
図18】埋め込まれたアクションおよび/またはエージェントが認識可能なロケータに関連するデジタルコンテンツを示している。
【
図19】カメラによってキャプチャされたユーザ表現がエンドユーザディスプレイ上にどのように表示されるかの例を示す。
【
図21】顕著性の値を設定するためのユーザインターフェースを示す。
【
図22】複数の視覚的供給のための注意システムを示す。
【
図23】ユーザ・エージェント相互作用の実施例のクラスダイアグラムを示す。
【発明を実施するための形態】
【0011】
〔実施形態1〕
コンピュータとの相互作用は、自律的仮想具現化エージェント(以下「エージェント」と呼ぶ)を介して提供される。コンピュータはデジタル・コンテンツを出力し、デジタル・データの形で存在し、ユーザに表現可能な任意のコンテンツを含む。デジタルコンテンツのサブセット、またはすべてが、ユーザおよびエージェントの両方に表現可能な共有デジタルコンテンツとして構成される。
図1は、共有デジタルコンテンツ5を認識するユーザ3およびエージェント1を示す。共有デジタルコンテンツ5は、ユーザ3およびエージェント1の両方によって操作および/または知覚(相互作用)することができる。共有環境6はすべての共有デジタルコンテンツ5を含み、エージェント1およびユーザ3の両方によって知覚可能である。エージェント1は、そのエージェント仮想環境8内の共有デジタルコンテンツ5と「物理的に」(その具現化を使用して)相互作用することができる。
【0012】
エージェント1はエージェント仮想環境8にあり、そのエージェント仮想環境8を知覚する共有デジタルコンテンツ5は、エージェント仮想環境(AVE)8内のエージェント1に表示される。エージェント仮想環境8のプレーン14は、コンピュータ画面上の領域(エンドユーザ表示装置10)にマップされる。エージェント仮想環境8は、エージェント1が相互作用することができるAVEオブジェクト11を任意に含むことができる。共有デジタルコンテンツ5とは異なり、ユーザ3はAVEオブジェクトを直接操作することはできないが、AVEオブジェクトは11RERで示されるようにユーザ3に表示される縮小されたビューで、エージェント1の環境の一部としてユーザ3に表現される。エージェント1はエージェント仮想環境8の物理法則の文脈内で、エージェント仮想環境8を移動し、デジタルオブジェクトとAVEオブジェクトを操作できる。例えば、エージェント1は、共有デジタルコンテンツ5を下方に引き下げ、AVEオブジェクト11(仮想スツール)まで歩いてその上に座ることができる。エージェント1はまた、あたかもエージェント1が画面の「内」にあり、現実世界を見ているかのように、共有デジタルコンテンツ5と重ね合わされ、かつ/または同時に、ユーザ3(3VER)および現実世界環境7の表現を見ることができる。
【0013】
ユーザ3は現実世界環境7における人間のユーザ3であり、コンピュータからエンドユーザ表示装置10(画面のような実世界表示装置)上に表されるものを見て制御する(相互作用する)。エンドユーザ表示装置10は共有デジタルコンテンツ5RER(例えば、ブラウザを介してウェブページから)のリアルワールド環境表現(RER)と、以下を含むエージェント1の環境(AVE)の圧縮、重ね合わせ、及び/又は混合ビューとを表示する。
・エージェント1の現実世界環境の表現(1RER)
・AVEオブジェクト11の現実世界環境の表現(11RER)
【0014】
ユーザ3がユーザインターフェースを介して共有デジタルコンテンツ5に変更を加えると、その変更はエージェント1のエージェント仮想環境8における共有デジタルコンテンツ5の表現に反映される。同様に、エージェント1がエージェント仮想環境8のオブジェクト(共有デジタルコンテンツ5のアイテム/構成要素)に変更を加えると、その変更はユーザ3の画面10の共有デジタルコンテンツ5の表現に反映される。
【0015】
エージェントとその環境は、エンドユーザ表示装置上で様々な方法で視覚化することができる。例えば、エージェントの仮想スペースを回転さ視点からのユーザエージェントの相互作用を示している。エージェント1は、3次元のエージェント仮想環境8内でシミュレートされる。共有デジタルコンテンツ5はエージェント仮想環境8内にあり、ユーザの視点からは、相対的にエージェント1の前にある。エージェント1はユーザ3VERの仮想環境表現を(例えば、カメラフィードを介して)知覚し、この仮想環境表現は、任意選択で、エージェント仮想環境8内で平面、または、それ以外としてシミュレートされてもよく、または共有デジタルコンテンツ5の平面と重ね合わされ/混合されてもよい。したがって、エージェント1はユーザに対するデジタルコンテンツの相対位置を知覚し、ユーザが共有デジタルコンテンツ5を見ているかどうかを確認することができる。エージェント1は、共有デジタルコンテンツ5に触れるようにその手を伸ばしタ状態で示されている。
【0016】
プレーン14は、エージェント仮想環境8内の任意の場所に位置することができる。
図4は、ユーザ3に面するエージェント1と、エージェント1の背後に共有デジタルコンテンツ5(オブジェクト)を含むプレーン14とを示す。エージェント1の表現は、共有デジタルコンテンツ5RERの実世界環境表現(RER)の前に示されてもよい。ユーザ3は、あたかもエージェント1が画面の前にあるかのように、共有デジタルコンテンツ5と相互作用するエージェント1の表現を見る。
【0017】
図3は、エージェント1がユーザ3とデジタルコンテンツ4との間の相互作用を容易にする、人とコンピュータとの相互作用の概略図を示す。ユーザ3は任意の適切な人間入力装置/主入力装置および/またはインターフェース装置を介してコンピュータ2に入力を提供し、ディスプレイまたはスピーカなどの任意の適切な人間出力デバイスからコンピュータ2から出力を受信することによって、コンピュータ2からデジタルコンテンツ4と直接相互作用することができる。エージェント1は同様に、コンピュータ2に入力を提供し、出力を受信することができる。
【0018】
エージェントにそのシミュレーション環境外のオブジェクトの知覚を提供することは、「拡張現実」をエージェントに提供することに類似しており、これはエージェントに、実世界要素およびコンピュータの現在の状態のリアルタイム表現を提供し、コンピュータ、実世界要素からのデジタルコンテンツアイテムの表現を、その世界の統一されたビューにおいて混合するためである。仮想世界は現実世界のオブジェクトで強化されるので、これは、人間の視覚とは対照的に、自律エージェントの視覚を強化する、強化された仮想性としてより正確に定義され得る。
【0019】
(デジタルおよび現実世界入力とのエージェント自律相互作用)
エージェントは、認知、位置、具現化、会話、および動的態様を含むことができる。エージェントは具現化され、エージェントが明確にすることができる仮想ボディを有することを意味する。エージェントの身体は、画面やその他のディスプレイにグラフィカルに表示される。エージェントは神経行動モデル(生物学的にモデル化された「脳」または神経系)を用いてシミュレートされてもよく、このモデルは結合された計算要素およびグラフィカル要素を有する複数のモジュールを含む。各モジュールは生物学的処理を表し、生物学的処理に関連し、シミュレートする計算要素と、生物学的処理を視覚化するグラフィカル要素とを含む。したがって、エージェントは外部制御を必要とせず、呼吸、瞬き、見回す、あくびをする、唇を動かすなどの自然に生じる自立行動を示すので、「自律化(self-animated)」している。生物学に基づく自律的運動は神経系の複数の態様をモデル化することによって達成され得るが、これには感覚系および運動系、反射、知覚、情動および調節系、注意、学習および記憶、報酬、意思決定、および目標が含まれるが、これらに限定されない。エージェントの顔はエージェントの脳と身体の両方を反映し、精神状態(眼の方向による精神的注意など)と生理状態(まぶたの位置や皮膚の色を通しての疲労など)を明らかにする。バーチャルオブジェクトまたはデジタルエンティティをアニメーション化するための神経行動モデルの使用は、SagarM、Seymour M、および Henderson A(2016)、「自律的な顔面のアニメーションとの連携を作る」と題された、ACM通信59(12)、82―91、および、本発明の譲受人に譲渡され、参照により本明細書に組み込まれるWO2015016723A1にさらに開示されている。WO2015016723A1に記載されているような時間ステッピング機構は、エージェントの内部プロセスを同期または調整することができる。
【0020】
エージェントの態様は動的であってもよく、エージェントの将来の挙動はその現在の内部状態に依存することを意味する。エージェントの神経系、身体、およびその環境は、結合された動的システムである。外部入力の有無にかかわらず、複雑な挙動を生成することができる。エージェントの外部環境の内部表現に頼ることなく、複雑な挙動を生成することができる。エージェントの周囲の要素(ユーザからの視覚刺激またはコンテンツアイテムなど)は、行動生成につながる因果ネットワークの一部を形成することができる。エージェントの挙動と動作は底部から出現する可能性がある。エージェントのダイナミクスはカオス的であり、所与の状況におけるエージェントの挙動を予測することを困難にする。エージェントの動作は
図7に示すように、現実世界環境7とエージェント仮想環境8の両方からの連続フィードバックループに依存し、したがって、エージェント1はユーザからのオーディオ入力、マイクロフォンを介するなどのユーザの環境(現実世界環境7)、およびカメラを介するユーザからの視覚入力など、現実世界環境7からの入力1102を受信するときに、両方の環境に位置する。エージェント1シミュレーションへの実世界入力1102はエージェント1の挙動に影響を及ぼし、その結果、エージェント1の挙動がエージェント1のアニメーション出力1106に示される。例えば、エージェント1はユーザを認識することが、エージェント1において笑顔を自然に誘発する可能性がある神経行動モデル内でドーパミンのような仮想神経伝達物質を放出するとそのような点で、間接的メカニズムを介して人間のユーザを見たときに笑顔を発する可能性がある。この出力1106は次に、例えば、エージェント1シミュレーションのために再び入力されるリアルワールド環境7のユーザに応答または感情を誘発することによって、リアルワールド環境7に影響を及ぼすことができる。エージェント1のエージェント仮想環境8もエージェント1に1102と入力される。例えば、エージェント仮想環境内の共有デジタルコンテンツアイテムはエージェント1によってストリームとしてリアルタイムで認識可能であり、エージェント1の挙動に影響を与え、これもまた特定のエージェント1アニメーション出力1106をもたらす。この出力1106は、エージェント仮想環境8に影響する場合がある。たとえば、エージェント1は、エージェント仮想環境8内の仮想オブジェクトの位置を変更できる。これで、連続フィードバックループを駆動するエージェント1シミュレーションの新しいオブジェクト位置は、入力1102になる。
【0021】
エージェントは、人間の形態、架空の人間の形態、人間の形態、ロボット、動物などの任意の適切な形態で、任意の適切な方法でシミュレートおよび/または表現されてもよい。エージェントが取るフォームを選択または変更できるユーザ、またはユーザや実際の環境または仮想環境に応じてエージェントのフォームが変更される可能性がある。
【0022】
(座標位置への移動)
エージェント仮想環境8にエージェントを配置すると、自然に見える「オン・ザ・フライ(on-the-fly)」アニメーションが可能になり、エージェントはエージェント1の環境に存在するかのように、周囲のデジタルコンテンツアイテム(共有デジタルコンテンツ5)と自由にやり取りできる。これは、予測不可能なコンテンツや動的なコンテンツとの相互作用で使用するのが難しい、事前に生成されたアニメーションスニペットや事前に記録されたアニメーションスニペットとは異なる。予め記録されたアニメーションの限定の一例は、位置(X,Y)において特定のコンテンツアイテムに到達するためにシミュレートされた腕を使用することである。アニメーションは、コンテンツアイテムが配置されている場所を正確に考慮して機能的に制限される。コンテンツアイテムが移動したりサイズが変更されたりすると、それに応じてアニメーションを変更できなくなる。
【0023】
エージェントは、「オン・ザ・フライ(on-the-fly)」アニメーションアルゴリズムを使用してアニメーション化できる。具現化されたエージェントでは、エンドエフェクタをゴール状態に到達させる関節自由度のベクトルを計算することによって、エンドゴール位置(デジタルオブジェクト座標)に到達するエフェクタ(例えば、手)が達成される。エージェント1をアニメーション化するために、逆運動学のような計算技術を使用することができる。逆運動学は、ヤコビアンまたは環状座標降下(CCD)のような既知の技術を用いて近似することができる。ニューラルネットワークは2次元または3次元座標空間におけるオブジェクトへの到達または指示を表すために、身体位置をマッピングするように学習され得る(すなわち、手と目の協調を学習する)。一例では、運動成功予測器がディープ畳み込みニューラルネットワーク(CNN)を使用して、指定された座標と、CNNを使用してエージェントのモータコマンドを連続的に更新する連続サーボ機構に、所与の動作がどれだけ到達する可能性があるかを判定する。
【0024】
(仮想環境)
エージェントはエージェント仮想環境にあり、オブジェクトと、エージェント仮想環境内のエージェントに対するオブジェクトの相対的な場所を認識できる。本明細書で説明するほとんどの実施形態では、エージェントが3次元エージェント仮想環境に位置する。一実施形態では、エージェント仮想環境が2Dピクセルアレイによって表される2D仮想空間である。2Dエージェントは2D仮想空間内に位置し、エージェントから水平方向(左または右)および/または垂直方向(上または下)に変位することができる2D空間上の共有デジタルコンテンツと相互作用することができる。
【0025】
図1において、エージェント1は、共有環境を反映するプレーン14(スクリーン)の背後の3D空間に位置する。エージェント1は、エージェント仮想環境8(方形プリズムである)の外サイド境界/面にあるプレーン14上の共有デジタルコンテンツを見る。
図2は、エージェント1がエージェント1の直前にあるコンテンツアイテムに触れている様子を示す。
図4は、画面上の共有環境デジタルコンテンツアイテムが配置されるプレーン14の前に位置するエージェント1を示す。共有デジタルコンテンツであるコンテンツアイテム/オブジェクトはエージェント1から、エージェント1に対して水平(左、右、前または後)および/または垂直(上または下)に、3次元で変位されてもよい。
【0026】
仮想3D空間のプレーン14の座標は、ブラウザ(または他の表示)座標にマッピングされてもよい。したがって、共有デジタルコンテンツに関するエージェント1の動きが画面上に重ね合わされると、その動きはデジタルコンテンツアイテムの位置と整列する。
【0027】
エージェントが表示されるディスプレイの実世界座標は変化し得る。例えば、ブラウザ上に表示されたエージェントは例えば、ユーザがブラウザをドラッグ/サイズ変更することによって、移動またはサイズ変更することができる。ディスプレイの現実世界の物理的寸法は動的に変更可能であり、現実世界環境におけるディスプレイの物理的寸法を変更すると、エージェント仮想環境の表現が比例して更新される。
【0028】
エージェント仮想環境は任意の適切なメカニズムによってシミュレートすることができ、特定の自然法則に従うことができる。エージェント仮想環境の物理的特性はオブジェクトおよび/またはエージェント間の衝突検出、物理的制約(例えば、オブジェクトの関節間で許容される移動)、大気抵抗のシミュレーション、運動量、重力、材料特性(例えば、弾性アイテムは、エージェントによって引き伸ばされた後に自然な形状に戻ることができる)などと定義することができる。
【0029】
(エージェントが受け取る入力)
エージェントは、現実世界からの任意の適切な視覚入力(カメラからのビデオストリームなど)、Microsoft Kinectカメラなどの範囲イメージング能力を有するカメラからの深度感知情報、マイクロフォン等からの音声入力、バイオセンサからの入力、熱センサまたは任意の他の適切な入力デバイスからの入力、タッチスクリーン入力(ユーザがスクリーンを押している場合)を受信する。単一の入力がエージェントに提供されてもよいし、入力の組み合わせが提供されてもよい。エージェントはそれ自体に関連して現実世界の態様を空間的に配置することができ、ユーザは、ユーザの現実世界空間内の物または人などのオブジェクトにエージェントの注意を向けることができる。
【0030】
エージェントは、計算装置を介してユーザからの入力/通信を受信することができる。エージェントは、ユーザのカーソル/マウスやタッチスクリーン入力(現実世界からの入力でもある)のようなコンテンツアイテムを知覚することがある。エージェントは、ユーザの眼及び/又は手でユーザのマウスの動きに追従することができる。ある実施形態ではエージェントはキーボード入力を知覚することができる。例えば、ユーザは、口頭ではなく、キーボードを介してエージェントと通信することができる。
【0031】
ビジュアル(例えば、ビデオストリーム)入力は、エージェントのビジュアルシステムに提供される。適切なインターフェースからのルーチンがハードウェアインターフェースに使用されるかもしれない。これは、エージェントのプログラム定義とカメラおよび/またはピクセルストリーマとの間のインターフェースを介して提供されてもよい。このインターフェースは視覚モジュールによって提供され、視覚モジュールはエージェントのすべての時間ステップでカメラから画像データを取り込むためのモジュールラッパーを提供する。視覚モジュールは、(人間の「網膜」と同様に)画像データの知覚処理を実行しなくてもよい。
【0032】
エージェントは、ディスプレイ上の視覚出力、スピーカを介した可聴出力、または任意の他の適切な手段など、コンピューティングシステムの出力デバイスを介して現実世界に出力を提供することができる。エージェントはまた、マウスの動き、キーボードのストローク、またはクリックや押下などの他のインターフェース相互作用を出力することもできる。
【0033】
エージェントは二つ以上の視覚システムを持つことができ、これによりエージェントは異なる視覚ソースを互いに重ねる必要なしに、異なるソースから同時に視覚入力を受信することを可能にする。例えば、エージェントは2つの視覚モジュールを有し、1つはカメラ入力用であり、1つはユーザインターフェース入力用であり、両方を同時に見ることができる。異なる顕著性マップを各入力ソースに適用することができる。例えば、顔に優先した顕著性マップはカメラ入力などの実世界入力を受信するように構成された視覚システム上で動作することができ、テキストの認識および/またはUI要素の認識に優先を優先した顕著性マップは、UI入力を受信するように構成された視覚システムに適用することができる。
【0034】
(デジタルコンテンツ)
ウェブサイトに関連する共有デジタルコンテンツは、ウェブフォーム、ボタン、テキスト、テキストボックス、テキストフィールド、ビデオ要素又は画像を含むことができる。拡張現実、仮想現実、ホログラムなどの混合現実適用では、デジタルコンテンツアイテムが3Dオブジェクトを参照することができる。(VR/携帯電話/コンピュータアプリケーションなどの)アプリケーションでは、デジタルコンテンツアイテムはオブジェクト指向言語によって定義されたオブジェクトである可能性がある。
【0035】
デジタルコンテンツは動的であってもよく(例えば、デジタルコンテンツのアイテムは画面の周りを移動してもよく)、エージェントはそのような動的コンテンツアイテムの移動に従うか、またはそのような動的コンテンツアイテムの移動をガイドしてもよい。デジタルコンテンツアイテムは、静的でもインタラクティブでもよい。静的コンテンツアイテムは、テキストまたは画像でもよい。例えば、ユーザの学術的チュートリアルに従事するエージェントはユーザに表示される特定の単語を指し示し、ユーザがその単語の意味を理解しているかどうかをユーザに尋ねることによって、テキストと相互作用することができる。インタラクティブなデジタルコンテンツアイテムは、何らかの方法でユーザおよび/またはエージェントの行動に応答することがある。例えば、ボタンは、クリックされたときに他のコンテンツを提示するデジタルコンテンツアイテムである。デジタルコンテンツアイテムは、2次元または3次元で表現されてもよい。例えば、
図15は、3Dでモデル化され、エージェント仮想環境内に位置する車オブジェクトを示す。
【0036】
エージェントはコンテンツアイテムと共に仮想空間内で具現化されるので、エージェントは、ジェスチャを使用し、アイテムを見、アイテムに接近し、アイテムを操作または取り扱い、またはアイテムに関連する方法を起動し、いくつかの異なる方法で、柔軟かつスケーラブルな方法で、共有デジタルコンテンツと相互作用することができる。エージェントは、以下のことを行ってもよい。
・その身体をアイテムに向かって傾け、および/またはその頭部をアイテムに向かって傾ける。
・目でアイテムを見る。
・アイテムを指し示すジェスチャを行い、アイテムの一般的な方向に頭を巻き、またはアイテムの方向に手を振る。
・アイテムに向かって歩く、またはアイテムに近い位置にテレポートする、または浮動することによってアイテムに近づく。
【0037】
(共有デジタルコンテンツとのエージェント相互作用の有効化)
具現化されたエージェントは、それらが相互作用するデジタルコンテンツから独立してプログラム的に定義される:デジタルコンテンツと具現化されたエージェントの両方を制御する中央コントローラは存在しない。これにより、具現化されたエージェントを、異なる第三者プロバイダによって作成されたデジタルコンテンツとともに柔軟に使用できるようになる。エージェントが新しいデジタルコンテンツを知覚し、ネイティブに相互作用することを可能にする2つのメカニズムは、コンピュータビジョンと相互作用モジュール(支持インターフェース)を備える。
【0038】
(コンピュータビジョン)
一実施形態では、エージェントはユーザへの表示を表すソースからの視覚データの形式で入力を受信する。例えば、エージェントは、視覚(仮想)画像及び/又はオブジェクト認識を介してスクリーン又は3D仮想空間のピクセルを見る。エージェントは標準的なコンピュータビジョン/画像処理/画像認識/マシン学習技術等による視覚オブジェクト認識を装備して、画像またはビデオまたはオブジェクト内のオブジェクト/被写体、画像またはビデオの被写体の輪郭/色を識別し、それに従ってそれと相互作用することができる。エージェントには、テキストを認識するための光学式文字認識と、テキストを理解するための自然言語処理が装備されている場合がある。言い換えれば、デジタルコンテンツは、人間のユーザ(ピクセルの視覚的表示)に表現されるのと同じ方法でエージェントに視覚的に表現される。エージェントシステムは内蔵画像認識および/または学習を含むことができ、あるいは、画像認識のためにサードパーティサービスを使用することができる。
【0039】
(デジタルコンテンツ入力)
共有環境の視覚的表現は、画面共有ソフトウェアが画面の視覚的表現を遠隔地に送る方法と類似した方法でエージェントに送ることができる。インターフェースは、任意の所与の時点で計算装置によって何が出力されているかを記述する情報のパケットを計算装置からエージェントに送信するように構成されてもよい。データは画像ファイル(例えば、JPEG及びGIF)として到着することができ、又はデータは、特定のX及びY座標(及び混合現実の場合にはZ)に割り当てられた個々のピクセルとして到着することができる。帯域幅の量を最小限に抑えるために、インターフェースは画面の変更されたセクションで情報更新のみを送信するように、および/または送信されるデータを圧縮するように構成されてもよい。
【0040】
図17は、エージェントのコンピュータビジョンシステムを使用するデジタルコンテンツとの相互作用の概略図を示す。言及されるモジュールは、必ずしもコードのモジュール構成要素ではなく、高度に相互接続された神経行動モデルによって駆動されるモジュールの機能ネットワークであってもよい。2901において、エンドユーザ・コンピューティング・デバイス・ユーザ・インターフェース(ブラウザなど)は、ディスプレイへの更新(Webページの再描画など)をレンダリングする。共有メモリバッファ2930を介して、エージェント1のコントローラ2951は、ディスプレイからのピクセルを入力2902としてエージェントの網膜2903に供給する。これは、エージェントのプログラム定義とピクセルストリーマとの間のインターフェースである。次いで、ピクセルは、視覚検査モジュール2904が画像処理を実行する認知モジュール2952に提供されてもよい。注目/処理されているピクセルストリームの部分は、エージェントが注意を払っているものを決定する注意モジュール2905によって案内されてもよい。ピクセルデータの処理から生じる情報は、リアクティブおよび/または意思決定モジュール2907に渡されてもよい。これにより、エージェントの動作が駆動される。例えば、画像の一部をボタンとして認識した後、反応および/または意思決定モジュール2907は、エージェントの手を伸ばし、ボタン2910に触れさせることができる。エージェントが取る動作または挙動は、シミュレートされた生理学モジュール2908に渡される。生理学モジュール2908は、アーム制御装置2910を含む、身体の様々な部分を制御するためのサブコンポーネントを備えることができる。2911において、エージェントコントローラ2951は、エージェントとデジタルコンテンツとの間の相互作用をユーザ3インターフェース相互作用にマッピングするように動作することができる。仮想環境では、AVEにおけるエージェントによる「物理的である」アクションがユーザ3インターフェース上のアクションとして変換される可能性がある。例えば、エージェントの身体の座標が知覚される共有環境平面と交差するとき、平面の交差の座標は、ユーザインターフェース上の対応するピクセル位置におけるマウスクリックまたはタッチパッドタッチイベントに変換され得る。次いで、イベントアクション/バックチャネル2932は人間の入力デバイスイベントとしてコンピューティングシステムに送られる(例えば、ブラウザ上の対応するピクセル位置でマウスクリックする)。1つの実施形態では、Chromium Embedded Framework(CEF)のオープンブラウザ実装が、エージェントがウェブデジタルコンテンツとインターフェイスできるように構成されている。オフスクリーンレンダリングにより、ブラウザウィンドウのコンテンツをビットマップに出力し、別の場所でレンダリングすることができる。
【0041】
(トリガとなるイベントに対応する具現化された相互作用)
デジタルコンテンツアイテムに触れることはデジタルコンテンツアイテムとの相互作用をもたらすことができる1つのタイプの具現化された相互作用であるが、本発明はこの点で限定されない。他の実施形態では、デジタルコンテンツアイテムに向けられるエージェントの特定のジェスチャがそのアイテム上のイベントをトリガすることができる。例えば、アイテムを見て瞬きをするエージェントは、そのアイテム上のイベントをトリガすることができる。別の例としては、ボタンなどのデジタルコンテンツアイテムでのジェスチャリングがある。
【0042】
(ブラウザまたはコンピューティングシステムの直接制御)
一実施形態では、エージェントはあたかも入力デバイスがエージェントのエフェクターであるかのように、マウス、タッチパッド、または他の一次入力デバイスを直接制御する。換言すれば、エージェントは、それ自体の身体/筋肉の動きを制御するのと同じ方法で入力装置を制御することができる。計算装置では、エージェントによる計算装置の直接制御が例えばグラフィカル端末エミュレータを介して人のデスクトップコンピュータ上で遠隔アクセス及び遠隔協調動作を可能にする技術のような、任意の適切な技術によって可能にすることができる。
【0043】
(顕著性マップ)
注意モジュール2905は、エージェントの注意を導くための「顕著性」マップを含むことができる。顕著性マップは、重要性に関するエージェントに対する画面の表示である。顕著性マップは、エージェントの注意および焦点がどこにあるかを定義することができる。顕著なものとして差別的に扱われてもよい特徴の例には、以下のものが含まれる。
・ユーザ:エージェントは、顔を検出するための顔検出モジュールを含んでもよい。顔検出は、エージェントの感情影響およびユーザ相互作用ループに関連し得る。顔検出モジュールはエージェントの視覚的入力ストリーム内で顔を見つけるための顔追跡および解明ライブラリを使用する。顔の存在は、エージェントによって、非常に顕著な視覚的特徴として解釈され得る。任意の検出された顔からの解決された顔の表情は、表情認識ネットワークに供給されてもよい。
・運動―視覚モジュールはビデオ入力の知覚処理を試みないので、運動検出モジュールが提供されてもよい。運動検出モジュールは、単純な動きを推論するために時間的に隣接するビデオフレームを比較する、エージェントの視覚知覚システムの構成要素であってもよい。得られた「運動マップ」は、視覚的顕著性の駆動要素として使用されてもよい。
・特定のオブジェクトまたは画像の認識
・テキストの認識;特定のキーワードまたはテキストパターンに起因する顕著性
・色
・輝度
・エッジ
【0044】
顕著性マップは、ユーザが定義することがある。一実施形態では、ユーザがエージェントが顕著(フォーカス・オン)として扱うことをユーザが望む機能をエージェントに相互作用式に通信することができる。複数の顕著性マップが使用される場合、各顕著性マップは、各活性顕著性マップの重み付けされた組み合わせによって駆動されるエージェントの最終的な注意の焦点で重み付けされてもよい。他の実施形態では、顕著性が外部的に定義されてもよく、エージェントが焦点を合わせるためにデジタルコンテンツアイテムをマークするための人工ポインタを提供してもよい。
【0045】
(ユーザとエージェント間のUIコントロールの切り替え)
ユーザとエージェントは、マウス、キーボード、またはその他の主要な入力メカニズムを制御することができる。一実施形態では協働のためのメカニズムが制御メカニズムの形態で提供され、これは、いずれかの当事者が一旦マウスを動かすと、開始されたアクションが完了するまで、他の当事者がマウスを動かすことを可能にする前に、マウスを動かすことを確実にする。制御メカニズムは、ユーザとエージェントとの間で順番を取ることを強制することができる。他の実施形態ではユーザおよびエージェントが、誰がUIの制御を有するかを決定するためにダイアログを使用することができる(例えば、ユーザは、エージェントが制御を引き継ぐことができるかどうか、またはその逆をエージェントに尋ねることができる)。
【0046】
(知覚制御)
エージェントは、その知覚入力を制御することができる。たとえば、コンテンツではなくユーザを見るか、その逆を選択できる。視覚的ピクセル認識を介してエージェントで知覚を可能にする利点は、エージェントが(より高い解像度でエージェントに表示されるピクセルストリームの「Fovea」サブセット/領域を使用して)見る/焦点を合わせ、したがって認識することができるもの自由度/柔軟性を提供することである。エージェントは、ユーザインターフェース上に表示される任意のピクセル、または任意の生成されたパターン、色、または表現されたオブジェクトなどのユーザインターフェース上に表示される超構造/アスペクトに焦点を当てることができる。
【0047】
(エージェントシミュレータとの統合)
図23は、CEFブラウザを使用した1つの実施形態のクラス図である。CEFウィンドウは、ユーザがUI上で見るものを定義する。変数は共有デジタルコンテンツ(例えば、ブラウザコンテンツ)との相互作用を記憶するために、エージェントの神経行動モデル内で定義されてもよい。変数の1つのセットがユーザのインタラクション用であり、別の変数のセットがエージェントのインタラクションを格納してもよい。エージェントの変数のセットは、神経行動モデリング言語を介してランタイムによって設定されてもよい。ランタイム・ホスト2304は、両方の変数のセットに対して変数監視をセットアップすることができる。これらの変数に対する更新を受信すると、ランタイム・ホスト2304はUIイベント(例えば、マウス/キーボード・イベント)を構築し、それらを共有環境VER(エージェントが共有デジタル・コンテンツを見るエージェントの環境内の平面に対応することができる)に送信し、共有環境VERはランタイム・ホストによって所有されるが、バッファに画面外レンダリングされ、ランタイム・ホストはコンテンツを3D空間にレンダリングする神経行動学モデリング・フレームワークのために、バッファを神経行動学モデリング・フレームワーク(シミュレータ)に送信する。
【0048】
ユーザがブラウザと相互作用すると、UIはset可変メッセージ(user_mousedown、user_mouse_x など) をSDK に送信する。UIから受信した座標は、Off-Screen rendered 共有環境2308(エージェントのウィンドウ)に関連している。座標は、ブラウザのx、yの位置に変換される。神経行動モデル方法は座標を変換し、ブラウザオブジェクトがマウスを含むかどうかを判定する。次に、ランタイム・ホストはマウスとキーイベントを構築し、共有環境(共有ブラウザ)に転送する。
【0049】
エージェントが共有環境2308と相互作用すると、ランタイム・ホスト2304は、監視対象変数のコールバックが変更されたことを受信する。同じコールバックにユーザイベントがない場合、エージェントの相互作用は共有ブラウザに転送される。それ以外の場合、ユーザの相互作用はエージェントの相互作用をオーバーライドする。共有相互作用のための神経行動学モデリング言語の変数は、以下のように定義することができる:
・mousedownおよびmouseupイベント変数を追跡するには、user_mousedown、user_mouseup、persona_mousedown、persona_mouseup
・キーダウンおよびキーアップのイベント変数を追跡するには、user_keydown、user_keyup、persona_keydown、persona_keyup
【0050】
イベント(マウスイベントやキーボードイベントなど)が発生していることを示すために、神経行動学モデリングフレームワーク変数(user_mousedown/user_mouseup/エージェント_mousedown/など)は、最後のtime-stepとは異なる。イベントが発生していることを示すために1/0スイッチングを使用する代わりに、カウンタはイベントをカウントし、毎回1を前の値に加算し、それが1000に達すると、カウンタは1にリセットされる。この理由はダウンおよびアップ(オン、オフ)がすべてのイベントを追跡するために、同じ時間ステップ上にあることができ、変数の現在の値と前の値とが一致する必要がないからである。これにより、イベントが失われないことが保証される。待ち行列は(エージェントの時間ステッピングよりも速い)迅速かつ/または同時入出力イベントを容易にするために実装されてもよい。エージェントインターナル2314は共有環境VERにおけるエージェントの時間ステッピングの速度を制御し、ユーザ相互作用を更新することができる。
【0051】
(相互作用モジュール)
相互作用モジュールは共有デジタルコンテンツのエージェント認識を容易にし、エージェントの仮想環境で表現されるコンテンツアイテムのインタラクションアフォーダンスを定義し、エージェントに伝達することができる。相互作用モジュールは、サポートライブラリまたはアプリケーションプログラミングインターフェース(API)であってもよい。エージェント1が特定のアクションを取ることを決定すると、相互作用モジュール16は、そのアクションを、第三者のデジタルコンテンツの著者によってネイティブに定義された指令に変換する。エージェントはインタラクションモジュールを使用することにより、デジタルコンテンツ(ウェブコンテンツ、アプリケーションコンテンツ、その他のプログラムで定義されたコンテンツなど)と直接かつ動的に相互作用することができる。相互作用モジュールは、コンピュータプログラム可読情報によって定義されたデジタルコンテンツと、エージェントが理解可能な情報とを変換する。
【0052】
共有デジタルコンテンツアイテムは、ネイティブ(またはネイティブにレンダリングされた)デジタルコンテンツアイテムの抽象概念である概念オブジェクトとしてエージェントに表現されてもよい。概念オブジェクトは、仮想世界環境座標、色、識別子、またはエージェントとそれぞれのデジタルコンテンツアイテムとの間の相互作用に関係する他の何か等のある特性によって定義されてもよい。概念オブジェクトは、AVEを横切って変換する抽象化された方法で、現実のデジタルコンテンツアイテムを表すオブジェクトであり、エージェント1は「概念」(すなわち、サイズ、色、位置/配置)および概念に関連する「概念」およびメタデータを理解するだけでよい。
【0053】
ネイティブのデジタルコンテンツアイテムは存在し、そのネイティブ形式でユーザに提示されるが、デジタルコンテンツアイテムにはエージェント1がデジタルコンテンツアイテムを参照するために使用できる追加のIDがある。一実施形態では、エージェントは、それらのオブジェクトに関するHTML情報を変換し、それらをエージェント1に渡す相互作用モジュール16を介して、共有デジタルコンテンツアイテム/オブジェクトを見る。相互作用モジュール16はHTML情報のようなネイティブのデジタルコンテンツアイテム情報を抽象化し、エージェント1がコンテンツアイテムが何であるか、その特性、およびどのような入力が必要かを理解できるように、これをエージェント1に対して変換する。
【0054】
図5は、ユーザ3とウェブページとの相互作用を容易にする人間のコンピュータ相互作用のための系統図を示す。システムは、クライアントサイド512、デジタルコンテンツ・プロバイダ・サーバサイド520、およびエージェントサイド(エージェントシステムまたはシミュレーション)510およびオプションとして、サードパーティサービス590との通信を備えてもよい。デジタルコンテンツプロバイダは、ウェブ・サーバ522および/またはサーバ・サイド・データベース524上でデジタル・コンテンツを定義してもよい。ウェブサーバ522は、ユーザが閲覧可能なウェブブラウザのようなウェブクライアント511にデジタルコンテンツを提供してもよい。人間とコンピュータの相互作用は、クライアントサイド512に相互作用モジュール16を含めることによって容易になる。エージェントは、クラウドサーバであってもよいエージェントシステム510上でシミュレートされる。相互作用モジュール16はデジタルコンテンツを処理し(これは例えば、HTMLコードによって定義されてもよい)、エージェントが知覚できるように、エージェントに関連するアイテムを変換する。これは、ウェブページ上のコンテンツアイテムのコンテキストマップをエージェントに提供することができる。エージェントとエージェントの仮想環境は、エージェントシステム510上に存在する。エージェントシステム510は、エージェントの仮想環境内のエージェントをシミュレートするエージェントモデリングシステム513、エージェントの表示をレンダリングするためのアニメーションレンダリングシステム514を含む。知識ベース515は、それが存在する環境およびそれが相互作用することができるコンテンツアイテムのタイプに関するドメイン知識のベースレベルを、エージェントに提供することができる。エージェントはサードパーティサービス590(例えば、サードパーティが提供する自然言語処理システム)によってサポートされてもよい。
【0055】
図6は、人とコンピュータとの相互作用のためのスイムレーンプロセス図を示す。デジタル・コンテンツ・プロバイダ620は、デジタルコンテンツアイテムを定義する(621)。デジタルコンテンツプロバイダ620プロバイダはデジタルコンテンツアイテムがエージェントインタラクションをサポートできるように、デジタルコンテンツアイテム621にリンクされた相互作用モジュール16を含む。エージェント1のインタラクションによりデジタルコンテンツを補強するために、デジタルコンテンツプロバイダは、ウェブサイトを定義する際に相互作用モジュール16にリンクするか、相互作用モジュール16を含むことによりこれを可能にしてもよい。別の実施形態では、相互作用モジュール16がリンクされていない場合、エージェント1を介した相互作用を可能にする相互作用モジュール16をリンクまたは含むデジタル・コンテンツを実行するために、プロキシ・サーバが提供されてもよい。
【0056】
ユーザ装置612はデジタル・コンテンツ・プロバイダ620によって定義されたウェブページ、アプリケーションまたは他のコンピュータ・プログラムと相互作用するユーザに、デジタル・コンテンツアイテムをネイティブに表示する。相互作用モジュール16は、特定のデジタルコンテンツアイテムを、そのネイティブの定義から概念オブジェクトに変換する。概念オブジェクトは、エージェント1クラウド610に送られ、エージェント1がデジタルコンテンツを概念化することを可能にする(616)。概念オブジェクトは、エージェント1のシミュレーション(617)のために入力される。したがって、概念オブジェクトはエージェント1の環境の一部を形成する。したがって、エージェント1は概念オブジェクトに基づいて、その動作と相互作用したり、その動作を変更したりすることができる。エージェント1は例えば、概念オブジェクトを押したり動かしたりするなど、デジタルコンテンツを直接操作することができる(618)。エージェント1が概念オブジェクトを直接操作するとき、相互作用モジュール16は、エージェントのアクションをデジタルコンテンツアイテムへの変更に変換する。言い換えると、相互作用モジュール16はエージェント1のコンテンツアイテムへの変更を反映するために、デジタルコンテンツを更新する(642)。エージェントが概念オブジェクトを見たり、概念オブジェクトの位置にジェスチャリングしたりすることによって、間接的に操作することも可能である。619では、概念オブジェクトと直接的または間接的に相互作用するエージェント1の表現がレンダリングされる。
【0057】
エージェントはユーザがするのと同じように(ピクセル認識等を介して)、コンテンツアイテムを直接認識しないことがある。相互作用モジュール16はコンテンツアイテムの抽象化された表現のような「概念的なオブジェクト」をエージェントに渡すことができる。概念的なオブジェクトが、コンテンツアイテムが何であるかを定義するタグや場所のような、エージェント1のアイテムに関連する基本的な特性を含むことができる。相互作用モジュール16はエージェント1に、エージェント1の仮想環境の文脈におけるコンテンツアイテムのアフォーダンスのリストを提供することができる。コンテンツアイテムに対応する概念的なオブジェクトはエージェント1が相互作用することができる「物理的品質」を有するオブジェクトを定義するさらなる情報を含むことができる。
【0058】
相互作用モジュール16は、ユーザ3がエージェントを介してデジタルコンテンツアイテムと相互作用することを可能にする「アクション」のサポートを提供することができる。この「インタラクション」機能は、エージェント1がオブジェクトに対して「アクション」を実行するための抽象化レイヤを提供する。アクションの例は、押す(press)、ドラッグする、押す(push)、見る、つかむなどである。これらのアクションは、相互作用モジュール16によって、その時点で、インタラクション空間のために機能する方法でデジタルコンテンツアイテム上で実行され得るオペレーションに変換される。変換されないアクションは無視できる。例えば、エージェント1はウェブボタン上のプレスを「アクション」することができ、これは、相互作用モジュール16によってボタンHTML要素上のクリックに変換される。ウェブ要素上の「プッシュ」アクションは無視されてもよいが、ボール上の3D相互作用空間でアクションされると、ボールが移動することになる。
【0059】
例えば、ウェブページを下にスクロールしたいエージェントは相互作用モジュールにスクロールダウン指令を送ることができ、それにより、エージェント1のアクションをJavaScript(登録商標)コードのようなウェブ可読指令に変換することができる。JavaScriptコードは、ウェブページのアクションを作動させる。したがって、エージェントはウェブ言語で直接通信できる必要はない。これにより、エージェント1はさまざまな文脈に適用できるため、システムが拡張可能になる。
【0060】
別の実施例では、コンテンツアイテムにテキストを入力したいエージェントが相互作用モジュール16に入力コマンドを送ることができる。相互作用モジュール16はカーソルをそのテキストフィールド内に置くために必要なJavaScript指令を実行し、エージェントが入力したいテキストを入力することができる。したがって、ウェブインタラクションコンテキストでは、デジタルコンテンツアイテムのユーザのビューが正しく定型化されたウェブ要素(例:HTML要素)を持つ完全な忠実度のウェブページである可能性がある。エージェントは、概念オブジェクトで構成されるHTMLページの抽象化された可視化を持つことがある。概念的には、これはエージェントがユーザとウェブページとの相互作用に関連するウェブページの態様のみを持つ、ウェブページの簡略化されたビューを見ることに類似している。
【0061】
情報をウェブ言語からエージェントが知覚可能な情報に変換することに加えて、相互作用モジュール16は、概念オブジェクト上の「物理的」エージェント動作を、対応するデジタルコンテンツアイテムの運動のための命令に変換することができる。エージェントは、ネイティブメソッドを介してコンテンツアイテムを直接操作する代わりに、仮想環境内で物理的アイテムであるかのようにコンテンツアイテムを操作する。このために、相互作用モジュール16は、物理をシミュレートするようにHTML要素を移動させるための物理変換をさらに含むことができる。例えば、コンテンツアイテムを押すそのような「物理」タイプのアクションは、相互作用モジュール16がオブジェクトをある量だけ毎秒あるフレーム数だけ移動させることによって、HTML要素に変換され、それによって物理的な押下を「シミュレート」することができる。したがって、相互作用モジュール16が含む様々な「アクション」は、その位置、コンテンツ、または他のメタデータのような要素の変更を直接実施するか、または(近似することによって)シミュレートすることができる。
【0062】
ある実施形態では、エージェント1が相互作用モジュール16にクエリを送信して、そのアイテムに関する付加的情報を取得してもよい。例えば、(HTMLがテキストフィールドである)アイテム内のテキストを「読む」ことを望むエージェント1は、テキストフィールド内のテキストを得るために相互作用モジュール16に問い合わせることができる。
【0063】
(動的制御)
デジタルコンテンツアイテムは、要素の初期構造と内容を定義するために文書設計者によって確立された一連のパラメータを有するウェブ要素を含むことができる。これらには、文書内の要素の絶対的または相対的な空間的位置など、要素の物理的特徴と、フォントタイプ、フォントサイズ、フォントの色、太字や斜体などのフォント属性など、要素に入力された任意のユーザテキストコンテンツに適用される属性の両方が含まれる。文書は、従来のクリックアンドドラッグ技術によって、ユーザが1つ以上の要素の位置を変更できるように設計することもできる。デジタルコンテンツがウェブページの文脈にある場合、JavaScript相互作用モジュール16のような相互作用モジュール16を設けて、エージェント1がウェブ要素の物理的特徴および/または属性を変更できるようにしてもよい。HTMLページの要素は、Dynamic HTML(DHTML)、HTML、CSS(Cascading Style Sheets)、DOM(Document Object Model)、スクリプトなど、いくつかのウェブ関連標準の組み合わせと相互作用を介してページがレンダリングされた後で、制御可能になる場合がある。ブラウザはウェブページがロードされたときに、ページ上のHTML要素を表すドキュメントオブジェクトモデル(DOM)を作成することができる。JavaScript は、DOM(プログラムが文書のコンテンツ、構造、スタイルにアクセスして変更できるようにするブラウザ内のインターフェース)と相互作用するために使用できる。JavaScript相互作用モジュール16は、DOMによってエージェント1とウェブページとの間の特定のタイプの相互作用を特に可能にする方法を含んでもよい。
【0064】
QuerySelectorはDOMのクエリに使用できる。相互作用モジュール16は、エージェント1がウェブページを変更することを可能にする:
・DOM内またはページ上のHTML要素の変更/削除
・要素へのCSSスタイルの変更および/または追加
・要素属性(アンカーテキストのhref属性、画像テキストのsrc属性、alt属性、または任意のカスタム属性)の読み取りおよび/または変更
・新しいHTML要素を作成し、DOM/ページに挿入する
・イベント・リスナーを要素に接続する。例えば、イベントリスナーはクリック、キー押下、および/またはサブミットを聴取し、JavaScriptでこれらに反応することができる。
【0065】
ウェブページの動的制御をJavaScript相互作用モジュール16を参照して説明したが、本発明はこの点に限定されない。例えば、別の実施形態では、JQueryがエージェント1とデジタルコンテンツとの間の相互作用を容易にすることができる。相互作用/支援モジュールは、任意の適切なウェブ関連オープン技術標準で実装されてもよい。
【0066】
(その他の相互作用文脈)
図8は、仮想現実環境などのバーチャルリアリティ文脈におけるユーザ3の相互作用を示す。上述のユーザインターフェース相互作用のための方法およびシステムは、仮想/混合/拡張現実相互作用にも同様に適用される。また、ユーザ3とエージェント1の両方がアクセスできるオブジェクトのセットを含む、概念的な共有環境が提供されてもよい。相互作用モジュール16は、エージェント1空間とユーザ3空間との間を変換するために使用されてもよい。相互作用モジュール16は、バーチャルリアリティ環境(VR環境)を有するバーチャルリアリティ適用(VR適用)に組み込むことができる。相互作用モジュール16は、エージェント1とデジタルコンテンツアイテムとの間の相互作用における視覚的な一致を容易にする。代替的に、および/または追加的に、エージェントはVR環境によって定義される共有デジタルコンテンツの完全忠実度コンピュータビジョンを提供されてもよい(および同様に、以下で説明される拡張現実の実施形態を備える)。
【0067】
現実世界環境7内のユーザ3は、3Dオブジェクトを含む共有デジタルコンテンツ5を含むことができる3DのVR環境13を見る。相互作用モジュールは、VR適用からのデジタルコンテンツを、エージェント1によって知覚可能な概念オブジェクト9に変換することがある。したがって、エージェント1は概念オブジェクト9と直接的または間接的に相互作用したり、概念オブジェクト9を参照したりすることができる。エージェント1が概念オブジェクト9と直接相互作用するとき、例えば、エージェント1の環境の仮想の床に沿ってシリンダを押すとき、相互作用モジュール16は、これを、VR適用においてネイティブに定義されたデジタルオブジェクトの変化に変換する。
図8は、VR環境13よりも小さいエージェント仮想環境8を示す。しかし、エージェント1のエージェント仮想環境8は、VR環境13と同時拡張、またはそれよりも大きい場合がある。エージェント1は、共有環境のアイテムをユーザ3に渡す場合がある。例えば、エージェント1は、共有デジタルコンテンツであるサッカーボールをユーザ3に渡すことができる。一実施形態では、レイトレーシングが3次元シーン内のエージェント1に対する視覚をシミュレートするために使用される。インターフェースはエージェント1の視点から3次元シーンに光線を投射することができ、オブジェクトがエージェント1の視野内にあるかどうかを判定するために光線を用いて光線追跡を実行することができる。したがって、エージェント1の挙動は、共有デジタルコンテンツ5がその視野内にあるか否かに基づくことができる。
【0068】
図9は、仮想現実文脈における人とコンピュータとの相互作用のための系統図を示す。VRデジタルコンテンツアイテム824は、VR適用822で定義され、VRディスプレイ811上のユーザ3に表示されてもよい。相互作用モジュール16はVRデジタルコンテンツアイテム(例えば、VRオブジェクト)をエージェント1知覚可能な概念オブジェクトに変換する。したがって、エージェント1は、知覚可能な概念オブジェクトと相互作用することができる。この相互作用はVRデジタルコンテンツアイテム上の対応する変化を反映するために、相互作用モジュール16によって変換される。VR適用は、エージェント1、エージェント1の環境の任意の態様、および相互作用モジュール16によって容易にされるデジタルコンテンツアイテムを含むユーザ3にシーンをレンダリングすることができる。エージェント1システム810はまた、エージェント1が相互作用している特定のドメインについての知識をエージェント1に与える知識ベース815を含むことができる。
【0069】
図10は、拡張現実文脈におけるユーザインターフェース相互作用を示す。インタラクションはバーチャル・リアリティを参照して説明したものと類似しているが、ユーザは例えば携帯電話スクリーンとして示されるビュー・ポートを通してバーチャル・デジタル・コンテンツを見るが、これは実世界のビュー上にオーバーレイされてもよい。
図11は、モバイルアプリケーションを使った人とコンピュータとの相互作用のためのシステム図を示す。コンテンツアイテム824は、モバイル1022で定義され、モバイル機器画面などのディスプレイ1011上でユーザ3に表示されてもよい。相互作用モジュール16は、モバイルアプリケーションのデジタルコンテンツアイテムをエージェントが知覚できる概念オブジェクトに変換する。したがって、エージェント1は、認識可能な概念オブジェクトと相互作用できる。次に、この相互作用はモバイルアプリケーション上の対応する変更を反映するために、相互作用モジュール16によって変換される。
【0070】
一実施形態ではエージェント1がWebGLに住んでおり、シーン内のすべてのものはペルソナが操作することができるオブジェクトとすることができる。WebGL(web Graphics API)はプラグインを使用せずに、互換性のあるウエブブラウザ内でインタラクティブな3Dおよび2DグラフィックをレンダリングするためのJavaScript APIである。WebGL互換ブラウザは、エージェント1が投影される仮想3D空間を提供する。これにより、エージェント1が動作する仮想スペースを、互換性のある任意のウエブブラウザまたはWebGL互換デバイスに表示でき、エージェント1は同じ仮想スペース内でウェブオブジェクトと3Dオブジェクトを操作することができる。
【0071】
(デジタルコンテンツに対するエージェントのレンダリング)
アニメーションレンダラはユーザに表示するために、エージェントのアニメーションとエージェントの環境をレンダリングすることがある。生成されたアニメーションは次に、ビデオストリームとして、UI装置(ブラウザなど)にストリーミングされてもよい。一実施形態ではエージェントはエンドユーザディスプレイの限定された領域にレンダリングされてもよい。ウェブ文脈では、エージェントはHTML DIV要素に制限される場合がある。別の実施形態では、エンドユーザディスプレイ上のエージェントの表示が無制限であってもよい。
【0072】
ピクセルはエージェントまたはデジタルコンテンツのいずれかが透明であり、エージェントまたはデジタルコンテンツの背後にあるものをそれぞれ見ることを可能にするように混合されてもよい。AVEが3D環境であり、ディスプレイが2Dスクリーンである場合、AVEは、ユーザの視点から2Dアニメーションとしてレンダリングされてもよい。AVEはインタラクティブなユーザエクスペリエンスのために、(例えば、ネイティブにレンダリングされたHTMLウェブ要素を含む)デジタルコンテンツに対する移動する背景または前景としてレンダリングされることがある。
【0073】
エージェントの仮想環境は、一つ以上の視点を介してユーザに提示されることがある。エージェントおよび/またはユーザは、ユーザのビューポートをエージェントの仮想環境に変更することができる。例えば、エージェントの環境のレンダリングのピンホールカメラモデルでは、エージェントはエージェントの環境のユーザビューの角度/方向および/またはズームを変更するためにピンホール位置を変更することができる。エージェント環境のアニメーション(計算集約的であり得る)をレンダリングする代わりに、いくつかの実施形態では、エージェントの視点(エージェントの視点から)に対応するある視点の2D表現をレンダリングし、ユーザに表すことができる。
【0074】
(カメラ画像のオーバーレイ)
ユーザはジェスチャを使用して、コンピュータ画面上の領域にエージェントの注意を引いたり、その点を示すことができる。
図19は、カメラ15によって捕捉されたユーザ表現(3VER及び/又は3RER)がスクリーン10上にどのように表示されるかの例を示す。表現は、スクリーン10上に表現されている他のものにオーバーレイされてもよく、半透明であってもよく、ユーザ3がユーザ3の身体とスクリーン10の他のコンテンツの両方を見ることを可能にする。あるいは、ユーザ3の背景が(標準的な画像処理技術を使用して)自動的に切り取られ、ユーザ3の画像または手のみがスクリーン上に表示され、その結果、表現は透明である必要はない。さらなる実施形態では、ユーザ3の表現がエージェント1にのみ見える。画面3120には2つのボタンA、Bが表示されており、ユーザ3の手3145はボタンBの上をホバリングしている。画面上にはユーザ3の手の表現が表示されている。エージェント1は、ユーザ3が見るものと同じ表現を見ることができ、したがって、ユーザ3の注意を引いているボタンを見ることもできる。顕著性マップは、人間の手、または動きを重要とすることができる(ユーザ3の手はそれに注意を引くためにボタンBの上を移動することができる)。したがって、ユーザ3はタッチスクリーンと同様の方法で非タッチスクリーンスクリーンと相互作用することができ、ユーザのジェスチャ(例えば、指でクリック)はインターフェースモジュールを使用して入力装置イベント(例えば、クリック)に変換することができる。他の実施形態ではユーザ3の表現が画面上に表示される代わりに、ユーザ3はエージェント1がその方向を見ることなどによって、ユーザ3がどこを示しているかについての何らかの他の視覚的インジケータを受け取ることができる。同様に、エージェント1はユーザの注視を追跡することによって、またはユーザ3からの言葉による指示/命令から、ユーザ3が画面上のどこを見ているかを知覚することができる。
【0075】
(バリエーション)
複数のエージェントは、独立してデジタルコンテンツと相互作用することができる。複数のエージェントは、ユーザとだけでなく、互いに対話することができる。複数のエージェントは同じ仮想環境内でシミュレートされてもよいし、互いに異なる仮想環境内でシミュレートされてもよい。複数のエージェントは同じ感覚能力を有してもよいしるし、互いに異なる能力を有してもよい。1つまたは複数のエージェントは、複数のユーザと相互作用することができる。ユーザのうちの任意の1人または複数人は、一つまたは複数のエージェントと会話し、1つまたは複数のエージェントに、ユーザが本明細書で説明するように相互作用しているユーザインターフェースを操作するように指示することができる。
【0076】
(コンピュータビジョンと相互作用モジュール16の組み合わせ)
コンピュータビジョンおよび相互作用モジュールの実施形態は、組み合わされてもよい。一実施形態ではエージェントは画像のピクセルを処理することによって、画像などのコンテンツアイテムの特徴を知覚的に認識することができる。これにより、エージェントは、アイテムの色などの特徴を議論することができる。
【0077】
(エージェントの知識)
エージェントはたとえば、提供されたオブジェクトデータベースからオブジェクトメタデータにアクセスすることもできる。一例は、購入品目のカタログである。エージェント1は、デジタルコンテンツアイテムをデータベースカタログ内の購入アイテムに関連付け、この情報を使用してユーザ3と相互作用することができる。エージェントは、ユーザ3インターフェースのナビゲーションまたは表示態様を制御することができる。たとえば、ウェブサイトの文脈では、エージェント1が上下左右にスクロールしたり、拡大/縮小したりすることによって、ウェブページのどの部分を表示するかを制御することができる。
【0078】
(持続エージェントブラウザ)
一実施形態では、エージェントはエージェントを異なるデジタルコンテンツソース(例えば、異なるウェブサイト)に統合することができるように、特定のデジタルコンテンツアイテムの性質を理解することができる。それゆえ、エージェントは、インターネット上で、スケーラブルな方法で、ユーザコンテンツの相互作用を容易にすることができる。このようなエージェントは、ビスポークブラウザを介して提供することができる。エージェントは、マシン学習技法を使用して、コンテンツアイテムと、そのようなコンテンツアイテムに関連してとることができる/とるべきアクションとの間のウェブ言語学習関連付けの性質を理解するように訓練することができる。例えば、エージェント1はテキスト領域の正確な設定に関係なくテキスト領域を識別し、テキスト領域のユーザ可視標識を読んで、ユーザの代わりにそれらの領域に記入するように訓練されてもよい。
【0079】
一実施形態では、ユーザがデジタルコンテンツアイテムについてエージェントに教えることができる。ユーザは例えば、デジタルコンテンツアイテムの上にマウスを置いて、そのアイテムに名前を付けることができる。エージェントはこれを観察し、アイテムの名前をデジタルコンテンツアイテムの表現(ピクセル表現または相互作用モジュールによって提供される概念表現のいずれか)に関連付けることができる。
【0080】
(埋め込みアクションとエージェントが認識可能なロケータ)
一実施形態では
図18に示されるように、デジタルコンテンツは埋め込まれたアクションおよび/またはエージェント知覚可能ロケータに関連付けられてもよい。エージェント知覚可能なロケータは、デジタルコンテンツアイテムを見つける(そして、エージェント仮想環境内のデジタルコンテンツアイテムに対応する空間座標と関連づけられることがある)。ロケータは、デジタルコンテンツアイテムを記述するメタデータに関連付けることができる。ロケータは、顕著性マップを置換および/またはサポートすることができる。顕微鏡マップを置き換えるロケータの一例では、ボタンに対応するロケータがエージェント1によってクリックされなければならないことを示すメタデータでタグ付けされる。顕著性マップをサポートするロケータの実施例では、ロケータはボタンに配置される(ウェブページのHTML コンテンツを読み込み、ロケータをHTML ボタンタグを使用してアイテムに割り当てることで、ロケータが自動的に生成される)。ボタンの顕著性マップは任意の他の顕著性マップ、例えば、カラー顕著性マップと共に提供されてもよく、例えば、顕著性マップは、エージェントが赤色ボタンをクリックすることを促すように構成されてもよい。埋め込みコンテンツはエージェントによってアクセス可能であるが、必ずしもユーザによってアクセス可能ではないウェブサイトで提供されてもよい。例えば、エージェントに可視である埋め込みコンテンツはエージェントがユーザに見えないリンクをクリックし、別のページにナビゲートしたり、ユーザに見えない情報を読むことを可能にする。
【0081】
(会話相互作用)
エージェント1は、人間が行うのと同じ言語及び非言語手段(ジェスチャ、表情等)を使用して、人間との相互作用に従事することができる。応答は、エンドユーザコンピューティングデバイスの1つまたは複数のスピーカを介して再生されるコンピュータ生成スピーチまたは他のオーディオコンテンツを含むことができる。エージェント1によって生成された応答は、テキスト、画像、またはその他のユーザ3に視覚可能なコンテンツの形式で、ユーザ3にとって視覚可能とすることができる。
エージェント1は、IBMワトソンまたはグーグルダイアログフローおよび/または会話コーパスのようなサードパーティサービスの助けを借りて会話することができる。
【0082】
図20はユーザ3を示す。エージェント1はユーザ3をみることができる。エージェント1はユーザ3に関する以下の情報を受信し、この情報を使用して、現実世界と仮想世界の両方で相互作用を通知することができる:
・具現化されたエージェントはカメラ入力を受信し、ユーザの注視がどこにあるかを計算することができる。これは、ユーザが見ているユーザ空間/現実世界の中のコンテンツアイテムまたはオブジェクトにマッピングされてもよい。ユーザの注視は、ユーザの目の角度および/またはユーザの頭の角度を使用して追跡されてもよい。
・具現化されたエージェントはさらに、ユーザの眼球運動、頭部運動を追跡し、ユーザの眼および頭部の角度を計算することができる。
・具現化されたエージェントはさらに、場合によっては具現化されたエージェントのアクションおよび/または具現化されたエージェントの注視を指示することができる、ユーザからの指示を含む言語入力を受信する。他の入力には、例えばキーボードを介したテキストが含まれてもよい。
・ユーザを識別した具現化されたエージェントは、目で追い(ユーザを見て)、ユーザに向かって傾くことによって、ユーザの位置を追うことができる。
・具現化されたエージェントは、デジタルコンテンツアイテムに対して、ユーザが制御するマウスが画面上のどこに位置するかを認識することができる。エージェント1はさらに、例えばタッチスクリーンモニタによってユーザのタッチを知ることができる。
・具現化されたエージェントはカメラを介して、ユーザの動き、特にユーザの腕、手、および指の動きを監視することができる。
・顔の表情を使ってユーザの感情を検出し、それに応じて適応させることができる。
・ユーザの音声トーンはエージェントがそれに応じて適応するように、ユーザ情報を検出するために使用されてもよい。
・エージェントは会話を進める前に、エージェントがユーザの注意を受けることを保証することができる。
・エージェントはユーザとの過去の相互作用の記憶を有し、この情報を会話に使用することができる。
【0083】
エージェントは曖昧さを解決するために、相互作用、デジタルコンテンツアイテム、およびユーザ情報の文脈を使用してもよい。エージェントによって実行されるアクションは、動的であるか、ユーザに合わせて調整されているか、または文脈に応じて、意図/目標指向であってもよい。エージェントは、ユーザに関する情報のソースにアクセスしてもよい。例えば、エージェントは(例えば、ジオロケーションサービスを介して)ユーザの位置および/または時間帯を認識して、これを使用して、それに応じて相互作用をガイドする。エージェントは、会話、感情、認知、および記憶を組み合わせて、相互作用型のユーザ体験を作成する。実施形態は、コンテンツ相互作用を用いてエージェントの感情的およびジェスチャ的挙動を合成するためのシステムを提供する。エージェントは注意、目の方向、ユーザの動き、およびユーザについて受信された他の入力を含む会話およびユーザのアクションを介してユーザと相互作用し、ユーザの目標、信念、および所望を確立し、それに応じてユーザを誘導する。エージェントは、ユーザに反応する感情反応モジュールを含むことができる。一実施形態では、エージェントの相互作用が学習された応答(強化学習など)によって誘導されるか、または規定される。規定された行動は、ルールの知識ベースによって導かれてもよい。一実施形態では、エージェントが相互作用する方法がユーザの精神測定プロファイルによって導かれる。
【0084】
一実施形態では、具現化されたエージェントとユーザとの間のシミュレートされた相互作用がユーザおよび具現化されたエージェントの注視に適用される具現化されたダイアディックターンテイキングモデルを使用して実施されてもよい。具現化されたエージェントは、ユーザとの直接注視を試みることによって、相互作用の間の会話の順番の終了を示してもよい。同様の方法で、具現化エージェントはユーザが具現化エージェントとの直接見ることを開始したことを具現化エージェントが検出したとき、ユーザが順番の終わりを示したことを知ることができる。
【0085】
図20を参照すると、順番を交代する例が示されている。3325で、ユーザ3は、エージェント1を見るか、エージェント1の名前を言うか、または例えばエージェント1を指すことによってエージェント1を促すことができる。ユーザ3がエージェント1の注意を受けると、エージェント1がユーザ3の注意を認識したことをユーザ3に知らせるユーザ3のアイコンタクトを返すことができる(3330)。ユーザ3は次に、笑顔で応答し、エージェント1に、例えば、情報を提供するか、さもなければユーザ3との対話に進み、自分の順番を取るように促すことができる。一旦エージェント1が終了すると、エージェント1は一旦動きを止め、ユーザ3を直接見ることによって、ユーザ3に知らせることができる(3345)。ユーザ3は、次に、エージェントに微笑み、エージェントを認識して(3350)、自分の順番をとることができる(3355)。ユーザ3が終了すると、ユーザ3は動きを止めて、エージェント1に注意を向け、エージェント1は次の順番をとることができる(3365)。上記の説明は単なる一例であり、ユーザ3による表示は、エージェント1がエージェント1の順番であることを認識することを可能にする他の形態をとってもよい。ユーザ3は例えば、会話キューまたは非会話キューによって、相互作用中に自分の順番の終わりを示すことができる。非言語キューには、例えば、笑顔、瞬き、頭部の動き、腕、手、及び指を含む身体の動きが含まれてもよい。同様に、エージェント1による表示は、ユーザ3がそれがユーザ3の順番であることを認識することを可能にする他の形態をとってもよい。エージェント1は例えば、口頭キューまたは非口頭キューによって、相互作用中にエージェント1の順番の終わりを示すことができる。非言語キューは、例えば、笑顔、瞬き、頭部の動き、腕、手、及び指を含む身体の動きを含んでもよい。
【0086】
(注意モデリング)
エージェント注意(アテンション)モデルは、視野内の領域の顕著性マップとして実施することができ、可視位置が注意を求めて競合する。より活動的な場所のほうが、より顕著である。顕著性マップはそれぞれの位置(ピクセルの)固有の品質を示し、より活発な場所がより顕著性を持つようにした画像である。人間の脳で活動しているいくつかのタイプの顕著性は、具現化されたエージェントにおいて実施され得る。これらは、ユーザ3または具現化されたエージェント1のすべての目または頭の動きを更新する視覚フレームを含む。他の顕著性マップは、頭部および眼球運動にかかわらず安定した基準フレームを使用する。マッピングされ得る顕著性特徴は、視野に存在する色または輝度または刺激の強さを含む。期待または所望に焦点を当て、これらの期待または所望から、顕著性マップ上の顕著な位置がどこにある可能性が高いかを予測する、さらに他の顕著性マップを作成することができる。具現化されたエージェント1で実施されるように、これらの顕著性マップは、顕著性の総計の測定を導出するために組み合わされる。
【0087】
一実施形態では、実施される注意モデルが異なる種類の顕著性目標を表す複数の顕著性マップを含む。その中の総計の顕著性マップは、使用されるマップの重みづけの和である。種々の顕著性マップがどのように重み付けされるかは、変更することができる。一例では、ユーザと具現化エージェントの両方がオブジェクトに焦点を合わせている場合に、オブジェクト(物または人)の顕著性が増すように、重み付けがが以下のように使用されてもよい。
顕著性の注視=重み付け1×埋め込みエージェントの注視マップ+重み付け2×ユーザの注視マップ+重み付け3×(埋め込みエージェントの注視マップ×ユーザの注視マップ)
顕著性のポイント=重み付け1×埋め込みエージェントの注視マップ+重み付け2×ユーザのポイントマップ+重み付け3×(埋め込みエージェントのポイントマップ×ユーザのポイントマップ)
【0088】
顕著性マップを作成するために使用される情報は、上記の会話型相互作用で論じられた入力を含む。聴覚入力およびテキスト入力などの非視覚入力は、入力を視覚マップ空間にマッピングすることによって顕著性マップに適用することもできる。例えば、あるオブジェクトを指しているユーザをマップするために、システムはユーザが指している位置を計算し、その位置を視覚的なマップ空間にマップすることができる。入力が聴覚的である場合、システムは音が由来する位置を計算し、その位置を視覚マップ空間にマッピングする。これらのポインティングマップおよび聴覚マップは、視覚マップと組み合わされる。一実施形態では、注意モデルが現在の注意にその後のシフトがあったとしても、具現化したエージェントが以前に注意を向けたオブジェクトを追跡し続けることを可能にするサブマップ(トラッカ)を含む。
【0089】
図21は、複数の顕著性マップを設定するためのユーザインターフェースのスクリーンショットを示す。マップの重み付けは、
図21に示すスライダ2110を使用して変更できる。スライダがデフォルトの重み付けを変更する。
【0090】
特定の実施形態では、異なるソースからの複数のビジュアル供給が両方とも、視覚的特徴マップをアクティブ化し、複数のビジュアル供給の表現を具現化されたエージェントに提供することができる。各フィールドは、視空間的注意を制御する顕著性マップを計算するために使用することができる。各視覚供給は、複数の特徴マップに関連付けられ、視覚供給の領域を、視覚供給の他の領域に対してより顕著なものとして強調することができる。例えば、カメラの視覚供給(具現化されたエージェント1と相互作用するユーザ3を撮影する)およびブラウザウィンドウ視覚供給(ユーザ3および/またはエージェント1が相互作用するコンピュータブラウザを捕捉する)は、両方とも視覚特徴マップを活性化する。別の視覚的供給は、エージェント自身の3D仮想環境によって提供されてもよい。例えば、エージェント1の周囲環境の視野に対応する2D平面は、エージェントの視点からレイキャスティングによってエージェント1に提供されてもよい。
【0091】
人間のような注意モデルは、エージェント1が任意の所与の時間に視覚的フィードのうちの1つの態様にのみ焦点を合わせることができるように実施されてもよい。したがって、2つ以上のマップにわたる単一の顕著な領域は一瞬に注意のために常に選択され、注意のスイッチになると、2つ以上の領域は2つの部分を有する単一の領域と考えることができる。特定の視覚的供給が他の視覚的供給よりも顕著であると判定されるように、重み付けが、視覚的供給全体に適用されてもよい。
【0092】
顕著性マップはユーザが参照しているアイテムを見つける際にエージェントを支援するために、言語キューに適用されてもよい。例えば、「左」、「右」、「上」、「下」のようなキーワードは顕著なものとして視覚的供給の対応する領域を強調する「言語キュー」顕著性マップにマッピングされてもよい。言語キュー顕著性マップが上記のような他の顕著性マップと組み合わせて、共同の注意および相互作用を容易にしてもよい。例えば、ユーザ3が「左のボタン」と言う場合、言語キュー顕著性マップは、画面の左半分を強調してもよい。次に、これを、ボタンを検出し、最も顕著なものとして左サイドにあるボタン、したがってエージェントが注意を払うボタンを強調するオブジェクト顕著性マップと組み合わせることができる。
【0093】
図22を参照すると、複数の視覚フィードを用いて実施されるシステムが示されている。システムは、2つの視覚ストリーム3770、3775から複数の低レベル特徴を抽出する(3780)。次に、中心円形フィルタ3740が各マップに適用され、特徴固有の顕著性マップが導出される。これらのマップから、特徴マップが作成され(3725)、マップの組合せが特定の特徴に対して作成される(3720)。たとえば、ユーザの顔やユーザの周囲などである。次に、結合された顕著性マップが、個々の顕著性または特徴マップから作成される(3710)。これらの特徴特有のマップは、重み付けされた合計で組み合わされ、特徴に依存しない顕著性マップ3710を生成する(3710)。次に、システムは、注目すべき領域として顕著性マップ内の最も活性化された位置を選択する「勝者総取り方式(winner take all)」(WTA)操作を適用する(3710)。カメラフィードに加えて、音声フィードまたは他のフィードをシステムに供給して、特徴マップを作成することができる(3625、3725)。一実施形態では、順番交代特徴マップは、順番交代特徴マップの焦点が、誰が順番を取っているかに依存するように、システムに組み込まれてもよい。この順番交代マップは、順番交代に関連する顕著性マップにバイアスを生成する。
【0094】
(相互作用の例)
図12は、ユーザがWebページと相互作用するのを容易にするエージェントのスクリーンショットを示している。ウェブページには、いくつかのメニューアイテム、検索バー、ナビゲーションボタンを備える共有デジタルコンテンツが含まれている。ユーザに対して、エージェント1は、共有デジタルコンテンツの前に配置される。エージェント1は、共有デジタルコンテンツ5の知覚的認識を有する。したがって、エージェント1はユーザとのやり取りの一部として、異なるコンテンツアイテムを参照したり、指し示したりすることができる。エージェント1はユーザが次にナビゲートしたいものを確認するために、ユーザ3との相互作用に関与することができる。エージェント1は周りを見回して、ユーザが関心を示したデジタル・コンテンツ・アイテムを見て、メニュー・コンテンツ・アイテムがリンクするURLへのナビゲーションをトリガしてもよい。エージェントはアイテムをクリックしているかのように、特定のコンテンツアイテムを示し、視覚的に押すことができる。
【0095】
図13は、共有デジタルコンテンツ5の背後に位置するエージェント1のスクリーンショットを示す。示された例は、ユーザが利用可能なクレジットカードから選択するためのいくつかのクレジットカードを示す銀行のウェブサイトである。エージェント1はユーザと会話しており、ユーザが、共有デジタルコンテンツ5で示されたクレジットカードのいずれかについてのさらなる情報を望むかどうかを尋ねることができる。ユーザは共有デジタルコンテンツアイテム(クレジットカード)の1つを直接クリックすることができる。これはクリック可能なHTMLオブジェクトであり、詳細情報へのリンクをトリガするためである。あるいは、ユーザがクレジットカードの1つに関するさらなる情報を提供するようにエージェント1に依頼することができる。エージェント1は共有デジタルコンテンツ5を表す概念オブジェクトの知覚を有し、したがって、相互作用モジュールを介してエージェント1に提供される情報から、ユーザがどのクレジットカードに関心があるかを確認することができる。ユーザがクレジットカードをクリックする代わりに、エージェント1はそのクレジットカードを表す概念オブジェクトに対してアクションをトリガすることができ、そのアクションは、次に相互作用モジュールを介して、ウェブサイト上のアイテムのクリックに変換される。クレジットカードはクリック可能な画像であるので、エージェント1は画像からのピクセル情報を使用して画像の色を確認することができ、したがって、ユーザ3が関心のあるアイテムを色で参照しているかどうかを理解することができる。
図13Bは、ユーザによってデジタルコンテンツアイテムが選択されたときのウェブページを示す。エージェント1はデジタル・コンテンツ・プロバイダ・データベースなどを介して、デジタル・コンテンツアイテムに関するメタデータにアクセスし、そのコンテンツアイテムに関する詳細情報をユーザに伝えることができる。さらに、このような情報は、AVE内のユーザ(図示せず)に表示されてよい。
【0096】
図14は、エージェント1が、ユーザが適切なクレジットカードを見つけるのを助けるために、相互作用型メニュー(共有デジタルコンテンツ5)を介してユーザを受け入れる様子を示している。ここでも、ユーザはメニューアイテムを直接クリックすることができる。または、ユーザはエージェント1と相互作用し、エージェント1はユーザの代わりにデジタルコンテンツアイテムをクリックすることができる。例えば、エージェント1は、ユーザに「あなたのカードをどれくらいの頻度で使用するか」と尋ねることができる。ユーザは3つの表示されたメニュー選択肢のうちの1つを読むことができる:「いつも」、「時々」、または「わからない」。エージェント1はコンテンツアイテムの対応する概念オブジェクトの属性としてエージェント1に提供されるデジタルコンテンツアイテム上のテキストとして、ユーザ3の発話をデジタルコンテンツアイテムのうちの1つにマッチさせる。ユーザは「分からない(I don’t know)」の代わりに、「よく分からない(I’m not sure)」などの所定のテキストとはわずかに異なる何かを発話することがあり、エージェント1はユーザが選択したい選択肢を推論することができる。
図14がすでに選択されている選択肢「わからない」を示す。エージェント1が「自分のステートメント上の全額」と読めるメニューアイテム上のタッチ(マウスクリックに対応する)のプロセス中である。エージェント1は、エージェントが接触しているデジタルコンテンツアイテムを直接見ている。エージェント1がコンテキストオブジェクトにタッチすると、相互作用モジュール16を介してデジタルコンテンツアイテムのクリックがトリガされる。ユーザはメニューを順番にたどらず、例えば、エージェント1に低い料金を望むことを伝えるために、最初のオプションのセットをスキップすることを選択することができる。エージェント1はその選択肢を選択してから、前のステップの情報についてユーザに問い合わせることができる。
【0097】
図15は、ユーザが車を購入するのを助けるためにウェブサイトとのユーザ相互作用を容易にするエージェント1の一連のスクリーンショットを示す。したがって、エージェント1は、車まで歩いて、車の特徴を指し示すことができる。車が回転するか、または位置を変える場合、エージェント1は、車の同じ側を指し続けることができる。
図15Aは、エージェント1が左から画面に向かって歩いてくる様子を示す。ウェブサイトは、デジタルコンテンツ4を含むトップメニューと、仮想車1760を表示する仮想ショールーム1780とを含む。仮想ショールームは、購入可能なアイテムの3Dモデルを表示するように構成される。ユーザ3は、エージェント1の仮想環境にあるため、仮想ショールーム内のオブジェクトを直接操作できない場合がある。それにもかかわらず、ユーザ3はエージェント1がエージェント1の仮想環境内のオブジェクトを操作するように、エージェント1と通信することによって、このようなオブジェクトと間接的に相互作用することができる。例えば、ユーザ3はエージェント1に、アイテムをピックアップし、アイテムを操作し、アイテムの色を変更し、またはアイテムを回転させて、ユーザ3が別の角度からアイテムを見ることができるように求めることができる。
図15Bは仮想ショールームに入り、ユーザ3と会話して、ユーザ3が関心を持っているものを見つけた後の、ユーザ3の方を向いているエージェント1を示す。
図15Cは、エージェント1が仮想車1750に向かってジェスチャする様子を示す。エージェント1は、車がエージェント1に対して、同様に画面に対して、どこにあるかを知覚的に認識しているので、エージェント1は、車の仮想空間座標に向かってジェスチャすることができる。エージェント1がD仮想車を含む仮想環境に位置しているので、エージェント1は車に向かって歩き、車の様々な特徴(特徴およびタグの座標などのオブジェクトメタデータによってエージェント1に定義される)を指し示すことができる。エージェント1と自動車の両方が同じ3D仮想環境にあるので、エージェント1が車に向かって動くと、エージェント1の画面上の「現実世界」サイズが小さくなり、相互作用に現実感を加える。
図15Eは、ユーザ3の関心についてユーザ3に尋ねるための選択肢のメニュー2150を提示しているエージェント1を示す。
図15Fは、エージェント1がユーザ3に代わってメニューアイテムを選択する様子を示している。エージェント1がアイテムに触れると、対応するデジタルコンテンツアイテムをクリックするトリガとなる。
図15Fは、車の内部を示す画像へのナビゲーションを示す。ここで、ユーザのビューはエージェント1の視点から見たものであり、エージェント1の手が見える。
【0098】
図16は、ユーザフィードバックに依存する非線形相互作用のシーケンスを示す。
図16Aは、エージェント1がユーザに対して2つの購入選択肢XとYを表示している様子を示している。一方、
図16Bはユーザからフィードバックを受信した後に、ユーザが他の選択肢Yに対する優先を有することを意味するが100%確信がないため、選択肢Yを穏やかに/仮に脇に置くエージェント1を示す。選択肢Yがユーザによってカテゴリ的に望まれないというフィードバックをユーザから受信した後、
図16Cは、エージェント1がその選択肢を完全に除けることによって選択肢を削除することができることを示す。
図16Dは、エージェント1が、ユーザがアイテムYを考慮に入れて戻したいかどうかについての決心するのを待っている間の、期待した表情のエージェント1を示す。
図16Eは、エージェント1がアイテムYを画面に戻すことを示す。
【0099】
エージェントはサードパーティのソフトウェアを使用して特定のタスクを実行する方法を学習する際に、ユーザを支援してもよい。例えば、PHOTOSHOP(登録商標)のようなアプリケーションでは、エージェントはユーザと会話し、インターフェース上の制御可能なデジタルコンテンツアイテムと物理的に相互作用することによって、アプリケーションのインターフェースをナビゲートする方法を示すことができる。一般的なアルゴリズムはどのようにユーザインターフェースを操作またはナビゲートするかのステップと共に、エージェントに提供されてもよい。エージェントはタスクの知識ライブラリを備えていてもよく、各タスクはアクションの時間的順番に関連付けられ、顕著なアイテム(例えば、シンボルまたはテキスト)を発見し、そのアイテムに対してアクション(例えば、クリック)を実行し、次のステップに進むことによって定義されてもよい。エージェントはUI相互作用タスクに関するエージェントの知識ライブラリに格納されているアクションを実行するようにユーザによって要求されたときに、これらのステップを実行するために、人間の入力デバイス(例えば、マウス/タッチ入力)の制御を行うことができる。
【0100】
エージェントは、オンラインショッピングのための購入選択を行う際にユーザを支援することができる。エージェントは、電子商取引プラットフォームに埋め込まれ、アイテムを介してユーザを案内するのを助けることができる。一実施形態ではエージェントは相互作用をガイドするためにユーザのプロファイルに関する情報を受信することができる。例えば、ユーザは電子商取引システムとの契約履歴(例えば、以前の購入)から作成されたプロファイルを有することができる。ユーザのプロファイルはより広範な推奨システムに保存され、エージェントは推奨システムを使用して、ユーザにアイテムを適切に推奨することができる。エージェントは、ユーザのための電子商取引UIをナビゲートすることによって、ユーザに代わって製品を購入することができる。エージェントが、購入に進むことを口頭で確認しながら、ユーザのボディランゲージを見ることによって、偶発的または意図的でない購入を最小限に抑えることができる。たとえば、エージェントはユーザが頷いているのを認識する場合、「はい、買ってください」と言い、該当する商品を見ると、エージェントはユーザの欲求を理解し、商品を購入することに確信を持つことができる。
【0101】
エージェントは、エンドユーザコンピューティングデバイス(パーソナルアシスタント)のユーザに対してタスクまたはサービスを実行するように構成されたコンピュータプログラムを含むことができる。ユーザに代わってエージェントによって実行されるタスクの実施例としては、ユーザ指定の人物への電話の発信、ユーザ指定のアプリケーションの起動、ユーザ指定の電子メールまたはテキストメッセージのユーザ指定の受信者への送信、ユーザ指定の音楽の再生、ユーザカレンダー上での会議またはその他のイベントのスケジューリング、ユーザ指定の場所への方向の取得、ユーザ指定のスポーツイベントに関連するスコアの取得、ユーザ指定のコンテンツのソーシャルメディアウェブサイトまたはマイクロブロギングサービスへの投稿、ユーザ指定のリマインダまたはメモの記録、気象予報の取得、現在時間の取得、ユーザ指定の時間でのアラームの設定、ユーザ指定の企業の株価の取得、近くの商業的施設の発見、インターネット検索の実行などがある。
【0102】
一実施形態では、エージェントはアクティビティでユーザと遊ぶか、ユーザと協働することができる。例えば、エージェントおよびユーザは、共同で絵を描くことができる。絵を描くこと自体、共有環境上で行ってもよい。もしユーザが共有空間上にリンゴのようなオブジェクトを描くなら、エージェントはそのオブジェクトをリンゴとして認識し、リンゴについて話すかもしれない。あるいは、描画線または赤色などの視覚的特徴をリンゴに追加してもよい。別の実施形態では、エージェントおよびユーザが共有環境上で相互作用して、音楽の演奏などの他の何らかの活動で協働することができる。共有環境には、仮想楽器、例えば、サクソフォンが含まれてもよい。ユーザはサクソフォンのキーを打つことができ、エージェントは、それに応じてこれに反応することができる。エージェントはその共有空間上を移動するアイテムに気づき、共有空間上のオブジェクトを認識し、反応することができる。
【0103】
インターネット、アプリケーション、オペレーティングシステム、または任意の他のコンピュータシステムをナビゲートすることは、エージェントおよびユーザによって共同して実行されてもよい。ウェブにアクセスするユーザは、検索またはブラウズ(新しいものや興味深いものを探す)を行うことができる。エージェント1はウェブブラウジングを容易にし、ウェブブラウジングをクエリベースの検索ではなく、リアルタイムのアクティビティに変換することができる。一実施形態ではエージェントは相互作用型ダイアログを使用してユーザをウェブ検索で支援する。エージェントは、従来の検索エンジン(Googleなど)の結果のようにユーザに表示されない別の検索ツール「In the back end」を使用することができる。従来の推薦システムではユーザがウェブページの空間をブラウズすることから検索アシスタントと明示的に相互作用することへの精神的な「コンテキストスイッチ」を実行しなければならない。本明細書に記載されるような具現化されたエージェントはユーザのブラウジング活動の思考の流れが、独立したクエリインターフェースに切り替える必要性によって中断されないことを可能にする。エージェントは常にブラウジングアクティビティを監視しているため、ユーザのブラウジングアクティビティで関連ページが発生すると、エージェントの推奨はリアルタイムで行われる。エージェントは、インターネットホームページでのナビゲート方法やアクションの実行方法をユーザに示すことができる。エージェントはユーザに表示されていないリンクまたはチェーンを「プレビュー」することができ、したがって、「デッドエンド」である(リンクテキストを読むことや、リンク画像を見ることから興味深いように見えるリが、そうではないことがわかったリンク)、またはガーデンパスがパスをたどるのに十分なインセンティブを提供するだけのリンクのシーケンスであるが、最終的には行き止まりになることについてユーザに警告することができる。一実施形態では、エージェント1が一般的なウェブ言語の構文的理解を提供されてもよく、ユーザのオンライン情報検索においてユーザを支援してもよい。ユーザはエージェントに上または下にスクロールするように要求したり、特定の検索リンクをクリックしたり、ブラウザにURLを入力したり、前のページに戻ったり、他の方法でナビゲートしたりすることができる。
【0104】
エージェントは、ユーザがフォームに入力するのを支援してもよい。エージェントがユーザのプロファイルを持っている場合、エージェントは、エージェントが知っているユーザに関する詳細を自動的に入力することができる。エージェントは、エージェントが不確かな分野についてユーザに問い合わせてもよい。フォームが正常に入力されなかった場合(たとえば、ユーザがパスワードの制約を失った場合)、エージェントはエラーメッセージから違反された制約を識別し、それを修正するようにユーザに依頼してもよい。エージェントは、再入力される必要があるフィールドに向かって自動的にナビゲートおよび/またはジェスチャを行うことができる。
【0105】
共有環境は、エージェント1によるUser3のチュートリアルのキャンバスとして使用できる。例えば、エージェント1はユーザ3に、共有環境における数式を解き、すべての作業を示すように求めることができる。エージェント1は、文字認識を用いて、ユーザが書く数字とステップを知覚することができる。エージェント1は、作業の異なる線を参照すること、間違いを消去すること、または間違いにアンダーラインを引くこと、あるいは共有キャンバスにさらなる作業を追加することなどによって、ユーザとの対話に従事し、共有キャンバス上の作業に関してユーザと相互作用することができる。実際の主題ではエージェントは仮想または拡張現実文脈におけるユーザの学習を支援することができる。例えば、医療訓練を容易にするために、エージェント1は誰かの前でツールを使用し、それを彼らに渡し、彼ら自身に試みさせることができる。
【0106】
(利点)
人とコンピュータとの相互作用における初期の研究は「モデル世界」と相互作用することの利点を強調した;オブジェクトおよびアクションが人間のユーザにとってより直感的である実世界におけるオブジェクトおよびアクションに似ている/ミラーリングする計算デバイスインターフェース。人間のインターフェースへの人工エージェントの伝統的なアプリケーションが隠れた手の働きによって世界が変化する「魔法の世界」をもたらした。本明細書に記載される実施形態が目に見え役に立つ手によって世界が変化するインターフェースを可能にすることによって、人とコンピュータとの相互作用および人工知能を拡張し、(エージェントの注視方向/目の方向/身体言語を介して)エージェントによって受信される入力およびエージェントの精神状態についての情報を効率的な方法で視覚的に表示する。ユーザはインターフェース要素が「自分で動く」ことを見る代わりに、ユーザは、今や、インターフェース操作につながるエージェントの思考プロセスおよびアクションを視覚化することができる。ユーザは直接エージェントの自律アクションを観察し、エージェントはインターフェースのユーザによって自律的に取られるアクションを観察することができる。
【0107】
「バックグラウンド」または「バックエンド」としてではなく、ユーザインターフェースにおいて直接動作する埋め込みエージェントはユーザがソフトウェアをアシスタントのように動作すると認識する程度を増加させる。ユーザがエージェントのアクションを「自分で行ったことができた」アクションとして認識する場合、ユーザはアシスタントの役割においてより意欲的にエージェントを概念化する。
【0108】
従来のコマンドラインまたはメニュー駆動型インターフェースでは、ユーザは入力を実行し、入力し、システムは入力を受け入れ、何らかのアクションを計算し、結果を表示し、次の入力を待機する。ユーザが入力を準備している間、システムは何も実行していない。システムの実行中、ユーザはインターフェースで何も実行していない。本明細書で説明される実施形態は、独立して同時に実行することができるエージェントを提供する。
【0109】
本明細書で説明される方法は、ユーザが継続的および/または誘導されたヒューマンマシン相互作用処理をによって、コンピュータ装置を動作させる作業を実行するのを支援する。自律エージェントの能力を、従来の入力装置または方法を介してエミュレートされる可能性のあるアクションに制限することは、エージェントがショートカットを取ることができないので、エージェントがユーザを誘導することを容易にする可能性がある。
【0110】
本発明の実施形態は従来のアプリケーション・プログラム(現在では一般に時代遅れの入出力装置およびユーザ・インターフェースと通信するように書かれている)と、本明細書に記載するように具現化された自律エージェントを含むユーザ・インターフェースとの間で有用に変換することができ、その結果、従来のプログラムに関連する論理およびデータは、新しい相互作用文脈で引き続き使用することができる。
【0111】
本明細書で説明される実施形態は、予め記録された、または予め定義されたアニメーションおよび/またはダイアログと、出力におけるランタイム生成された所望の挙動との間の同期の必要性を回避する。したがって、固定長の言語セグメントおよび/または非言語セグメントは、実行状況にマッピングされ、可変および/または動的デジタルコンテンツに適合するように空間的または時間的に同期される必要はない。神経行動モデルを含むエージェントシミュレーションが両方を駆動するので、言語行動と非言語行動を同期させる必要はない。
【0112】
コンピュータ・ビジョンを介したエージェント知覚を参照して説明した実施形態はDOM構文解析、コンピュータ・ビジョン、および/または自然言語処理における技術を活用して、デジタル・コンテンツを見て有用な情報を自動的に抽出し、デジタル・コンテンツと相互作用するときに発生する人間の処理をシミュレートすることができる。エージェントは、メッセージまたは要求を操作されるオブジェクトに関連し互換性のあるアクションを具現化する相互作用モジュールに送信することができる。これらのアクションにより、エージェントはすべてのタイプのブラウザでホストされているコンテンツを抽象化された方法で制御し、操作できる。したがって、ユーザ・マシン相互作用は、アプリケーション知識からの対話知識を別々に保つことができるようにモデル化される。この機会は、相互作用システムをアプリケーション・ドメインから新しいアプリケーション・ドメインに移動するコストを劇的に低減する。UI相互作用のリアルタイムパフォーマンスおよびタイミング制御は、エージェントおよびアーキテクチャの厳密な時間モデルによって可能になる。ユーザ入力に対するエージェントのリアルタイム応答は、アクションのon‐time実行中にシステムの各部の遅延を最小限に抑える。
【0113】
エージェントがシミュレートされた環境内のアイテムと相互作用することを可能にする利点は、これがより自然に見える相互作用を生成し、エージェント1をユーザの眼には現実のものとすることである。例えば、エージェントが相互作用するコンテンツアイテムは、質量および他の物理的特性を有するようにシミュレートされてもよい。デジタルコンテンツプロバイダによって提供される要素は、デジタルコンテンツプロバイダによって定義されたとおりにネイティブにレンダリングされる。
【0114】
アフォーダンスを有する概念オブジェクトを提供することにより、エージェントは有意な認知処理/画像認識/推論を行う必要なく、エージェントが利用可能なアクションを知覚することができ、したがって、計算処理能力および/または時間を低減する。相互作用モジュールを使用する利点は、異なるコンテキストまたは環境でのエージェント容易な相互作用のスケーラブルなカスタマイゼーションを可能にし、コンピュータインターフェイスが複雑さの増加するテクノロジに対応できることである。
【0115】
(解釈)
記載される方法およびシステムは、任意の適切な電子計算システム上で利用されてもよい。以下に説明する実施形態によれば、電子計算システムは、様々なモジュールおよびエンジンを使用して本発明の方法を利用する。
【0116】
電子計算システムは少なくとも1つのプロセッサ、1つ以上のメモリーデバイス、または1つ以上のメモリーデバイスに接続するためのインターフェース、システムが1つ以上のユーザまたは外部システムからの命令を受信し、それに基づいて動作することを可能にするために外部装置に接続するための入出力インターフェース、様々な構成要素間の内部および外部通信のためのデータバス、および適切な電源を含むことができる。さらに、電子計算システムは、外部および内部装置と通信するための1つ以上の通信装置(有線または無線)と、ディスプレイ、ポインティング・デバイス、キーボードまたは印刷装置などの1つ以上の入出力装置とを含んでもよい。
【0117】
プロセッサは、メモリーデバイス内にプログラム命令として記憶されたプログラムのステップを実行するように配置される。プログラム命令は、本明細書に記載されるような本発明を実行する様々な方法が実行されることを可能にする。プログラム命令は例えば、Cベースの言語とコンパイラのような任意の適切なソフトウェアプログラミング言語およびツールキットを使用して開発または実行することができる。さらに、プログラム命令は、例えば、コンピュータ読み取り可能な媒体に記憶されるように、メモリデバイスに転送されたり、プロセッサによって読み出されたりすることができるように、任意の適切な方法で記憶することができる。コンピュータ読み取り可能な媒体は、例えば、ソリッドステートメモリ、磁気テープ、コンパクトディスク(CD―ROMまたはCD―R/W)、メモリカード、フラッシュメモリ、光ディスク、磁気ディスク、または任意の他の適切なコンピュータ読み取り可能な媒体など、プログラム命令を有形に記憶するための任意の適切な媒体であってもよい。
【0118】
電子計算システムは関連データを検索するために、データ記憶システムまたはデバイス(例えば、外部データ記憶システムまたはデバイス)と通信するように配置される。
【0119】
本明細書で説明されるシステムは、本明細書で説明される様々な機能および方法を実行するように構成された1つまたは複数の要素を含むことが理解されるのであろう。本明細書で説明される実施形態は、システムの要素を構成する様々なモジュールおよび/またはエンジンが機能が実装されることを可能にするためにどのように相互接続され得るかの例を読者に提供することを目的とする。さらに、本明細書の実施形態は、システム関連の詳細において、本明細書に記載された方法のステップがどのように実行され得るかを説明する。概念図は、様々なデータ要素が様々なモジュールおよび/またはエンジンによって異なる段階でどのように処理されるかを読者に示すために提供される。
【0120】
モジュールまたはエンジンの配置および構成は、システムおよびユーザ要件に応じて適宜適合されてもよく、その結果、様々な機能が本明細書で説明されるものとは異なるモジュールまたはエンジンによって実行されてもよく、特定のモジュールまたはエンジンが単一のモジュールまたはエンジンに組み合わされてもよいことが理解されるのであろう。
【0121】
説明されたモジュールおよび/またはエンジンは、任意の適切な形態の技術を使用して実装され、命令を提供され得ることが理解されるのであろう。例えば、モジュールまたはエンジンは任意の適切な言語で書かれた任意の適切なソフトウェアコードを使用して実装または作成することができ、そこでコードは、任意の適切なコンピューティングシステム上で実行可能な実行可能プログラムを生成するようにコンパイルされる。代替として、または実行可能プログラムと併せて、モジュールまたはエンジンは、ハードウェア、ファームウェア、およびソフトウェアの任意の適切な混合を使用して実装され得る。例えば、モジュールの部分は、特定用途向け集積回路(ASIC)、システムオンチップ(SoC)、フィールドプログラマブルゲートアレイ(FPGA)、または任意の他の適切な適応可能またはプログラマブル処理装置を用いて実装することができる。
【0122】
本明細書で説明する方法は、説明するステップを実行するように特にプログラムされた汎用コンピューティングシステムを使用して実施することができる。代替的に、本明細書で説明される方法は、データソートなどの特定の電子コンピュータシステムおよび可視化コンピュータ、データベースクエリコンピュータ、グラフィカル分析コンピュータ、データ分析コンピュータ、製造データ分析コンピュータ、ビジネスインテリジェンスコンピュータ、人工知能コンピュータシステムなどを使用して実行されてもよい。ここで、コンピュータは、特定の分野に関連する環境から捕捉された特定のデータについて記載されたステップを実行するように特別に適合されている。
【0123】
アフォーダンスを有する概念オブジェクトを提供することにより、エージェントは、有意な認知処理/画像認識/推論を行う必要なく、エージェントが利用可能なアクションを知覚することができる。
【0124】
相互作用モジュール16を使用する利点は、異なるコンテキストまたは環境におけるエージェント容易な相互作用のスケーラブルなカスタマイゼーションを可能にし、コンピュータ・インターフェースが複雑さの増加する技術に対応できるようにすることである。
【0125】
(まとめ)
一態様では、仮想環境座標を有するエージェント仮想環境を作成するステップと、エージェント仮想環境内のデジタルコンテンツをシミュレートするステップと、エージェント仮想環境内の具現化された人工エージェントをシミュレートするステップと、具現化された人工エージェントがシミュレートされたデジタルコンテンツと相互作用することを可能にするステップと、具現化された人工エージェントとデジタルコンテンツとの間の相互作用をエンドユーザディスプレイデバイス上に表示するステップとを含む、電子計算装置のエンドユーザディスプレイデバイス上に具現化された人工エージェントとデジタルコンテンツとの間の相互作用を表示する方法が提供される。
【0126】
一実施形態では、仮想環境は3D仮想空間であり、仮想環境座標は3D座標である。任意選択で、相互作用は、デジタルコンテンツアイテムに向かって移動しているか、またはデジタルコンテンツアイテムを見ている。任意選択で、相互作用は、マルチジョイントエフェクターを移動させることによって、デジタルコンテンツアイテムに向かってジェスチャするか、またはデジタルコンテンツアイテムに触れることである。任意選択で、多関節エフェクターの移動は、逆運動学を使用してシミュレートされる。任意選択的に、多関節エフェクターの運動は、関節位置の目標位置へのニューラルネットワークベースのマッピングを使用してシミュレートされる。
【0127】
別の態様では、具現化された人工エージェントを介して電子計算装置上のデジタルコンテンツと相互作用するための方法が提供される。前記方法は、電子計算装置上のユーザインターフェース上にデジタルコンテンツをユーザに表示するステップと、仮想環境座標を有するエージェント仮想環境を作成するステップと、エージェント仮想環境内のデジタルコンテンツをシミュレートするステップと、エージェント仮想環境内の具現化された人工エージェントをシミュレートするステップと、具現化された人工エージェントがシミュレートされたデジタルコンテンツと相互作用することを可能にするステップと、相互作用をユーザインターフェース上のデジタルコンテンツの作動または操作に変換するステップと、具現化された人工エージェントをデジタルコンテンツ上にオーバーレイし、デジタルコンテンツおよびオーバーレイされた具現化された人工エージェントをユーザインターフェース上に表示することによって相互作用を表示するステップとを含む。
【0128】
任意選択で、仮想環境は3D仮想空間であり、仮想環境座標は3D座標である。任意選択で、デジタルコンテンツはエージェント仮想環境内のピクセルとしてエージェント仮想環境内でシミュレートされ、各ピクセルはエージェント仮想環境内の座標位置を有する。任意選択的に、シミュレートされた具現化された相互作用は、デジタルコンテンツに対応するピクセルの座標とエージェントの本体との間の交点である。任意選択で、シミュレートされた具現化された相互作用を変換することは、具現化された相互作用を入力装置イベントにマッピングすることを含む。任意選択で、人間入力装置イベントは、マウスイベント、キーボードイベント、またはタッチスクリーンイベントである。
【0129】
別の態様では、電子計算装置との相互作用を容易にするためのシステムが提供され、このシステムは少なくとも1つのプロセッサ装置と、前記少なくとも1つのプロセッサと通信する少なくとも1つのメモリ装置と、前記プロセッサによって実行可能な、前記具現化されるエージェントをシミュレートするように構成されたエージェントシミュレータモジュールと、前記デジタルコンテンツを前記具現化されるエージェントによって知覚可能な概念オブジェクトに変換し、前記具現化されるエージェントが前記デジタルコンテンツと相互作用することを可能にするように配置された前記プロセッサによって実行可能な相互作用モジュールと、前記デジタルコンテンツ、前記具現化されるエージェント、および前記具現化されるエージェントと前記デジタルコンテンツとの相互作用をレンダリングするように構成された前記プロセッサによって実行可能なレンダリングモジュールと、を含む。
【0130】
任意選択で、相互作用モジュールは、概念オブジェクト上の具現化されたエージェントアクションをデジタルコンテンツへの変更に変換するようにさらに構成される。任意選択で、相互作用モジュールは、概念オブジェクトを、具現化されたエージェントに対する概念オブジェクトの位置を表す座標に関連付ける。任意選択で、相互作用モジュールは、概念オブジェクトを、対応するデジタルコンテンツの1つまたは複数のアフォーダンスに関連付ける。オプションで、コンピューティングデバイスはウェブコンテンツであり、相互作用モジュールはウェブコンテンツに統合されたJavaScript コードである。別の態様では、電子計算装置上に作成された仮想環境内に位置する実施エージェントが提供され、実施エージェントは実世界環境から入力を受信し、仮想環境から入力を受信し、実世界環境および仮想環境からの入力に応じて動作するようにプログラムされ、実世界環境および仮想環境から受信された入力は実世界環境および仮想環境の両方から連続フィードバックループを介して受信される。
【0131】
別の態様では、ユーザ入力を受信し、ユーザに表示されたデジタルコンテンツに関する情報を含むデジタルコンテンツ入力を受信し、ユーザの自然言語宣言およびデジタルコンテンツ入力の両方に基づいてユーザへの応答を生成することによってユーザとの会話をシミュレートするようにプログラムされた、電子計算装置上で実装されたユーザとの相互作用をシミュレートするための具現化されたエージェントシミュレータが提供される。
【0132】
任意選択で、ユーザへの応答および/または入力は口頭である。任意選択で、言語応答および/または入力は、聴覚的またはテキスト的である。任意選択で、ユーザへの応答および/または入力は視覚的である。任意選択で、言語応答および/または入力は、ジェスチャまたは顔の表情である。
【0133】
別の態様ではディスプレイおよび入力手段と、命令を記憶するための少なくとも1つのプロセッサおよびメモリとを有する電子計算装置とのユーザ相互作用を容易にするための方法が提供され、プロセッサは仮想環境座標を有する仮想環境を定義し、ディスプレイの実世界物理次元に対する座標の大きさを決定し、仮想環境内の具現化されたエージェントをシミュレートし、仮想空間に対するエージェントの位置は仮想環境座標によって定義され、エージェントの仮想環境内の1つまたは複数のデジタルオブジェクトをシミュレートし、仮想環境に対する1つまたは複数のデジタルオブジェクトの位置は仮想環境座標によって定義され、具現化されたエージェントがエージェントの仮想環境座標および仮想オブジェクトの仮想環境座標に関する情報を使用して1つまたは複数のデジタルオブジェクトと相互作用することを可能にし、エージェントと1つまたは複数のデジタルオブジェクトとの相互作用をディスプレイ上でユーザに表示することを可能にするようにプログラムされる。
【0134】
別の態様では、シミュレーション環境の外部からの連続的な視覚入力の実質的にリアルタイムな知覚を有するシミュレーション環境を有する具現化されたエージェントを提供する方法が提供され、該方法は具現化されたエージェントのプログラム的定義及び/又はシミュレーション環境と連続的な視覚入力との間のインターフェースを提供するステップと、エージェントのシミュレーションの各時間ステップにおいて、及び、入力データを具現化されたエージェント及び/又はシミュレーション環境に転送する各時間ステップにおいて、シミュレーション環境の外部からの視覚入力を捕捉するステップと、エージェントの視覚システムに視覚入力を入力するステップ又はエージェントのシミュレーション環境内の視覚入力をシミュレートするステップと、を含む。
【0135】
別の態様では、エンドユーザディスプレイを介してユーザに表示可能なデジタルコンテンツを人工エージェントに表すステップと、人工エージェントの認知判断および/または物理的な動きを、ユーザインターフェースを制御する人間入力装置の作動または操作に変換するステップとを含む、人工エージェントがユーザインターフェースと相互作用することを可能にするための方法が提供される。
【0136】
任意選択で、シミュレートされた具現化された相互作用を変換することは、人工エージェントとデジタルコンテンツとの間の具現化された相互作用を入力装置イベントにマッピングすることを含む。任意選択で、人間入力装置イベントは、マウスイベント、キーボードイベント、またはタッチスクリーンイベントである。
【0137】
別の態様では人工エージェントと相互作用するための方法が提供され、この方法はエージェント仮想空間の人工エージェントをシミュレートするステップと、エージェント仮想空間のデジタルコンテンツをシミュレートすることによって、人工エージェントによって知覚可能であるデジタルコンテンツを表すステップと、人工エージェント、人工エージェント仮想空間およびデジタルコンテンツをディスプレイ上にユーザに対して表示するステップと、カメラからユーザの画像を受信するステップと、受信した画像に基づいてディスプレイ上のユーザの注視を追跡するステップと、少なくともユーザの注視を含むユーザ入力に基づいて、人工エージェント、ユーザ、およびデジタルコンテンツ間の具現化された相互作用をシミュレートするステップを含む。
【0138】
任意選択で、ユーザの注視は、ユーザの目の角度および/またはユーザの頭の角度を使用して追跡される。任意選択で、ユーザの眼球運動を追跡することをさらに含み、シミュレートされた具現化された相互作用は、ユーザの眼球運動にさらに基づく。
【0139】
任意選択で、ユーザの目の動きは、ユーザの目の角度および/またはユーザの頭の角度を使用して追跡される。任意選択で、ユーザ入力は言語入力を含む。任意選択で、ユーザ入力は、聴覚入力またはテキスト入力を含む。任意選択で、ユーザ入力は、タッチスクリーンまたはマウスの動きを含む。任意選択で、ユーザ入力は視覚入力を含む。任意選択で、視覚入力はジェスチャまたは顔の表情である。任意選択で、ジェスチャは、腕、手、または指のうちの1つまたは複数の動きを含む。任意選択で、人工エージェント、ユーザ、およびデジタルコンテンツベースの間のシミュレートされた具現化された相互作用は、ユーザがエージェント仮想空間のデジタルコンテンツ内のオブジェクトに注意を向けることを含む。
【0140】
任意選択で、この方法は人工エージェントの注視を追跡することを含み、シミュレートする具現化された相互作用はさらに、ユーザの注視および人工エージェントの注視に適用されるダイアディック・ターン・テーキング・モデルに基づく。任意選択的に、人工エージェントは、ユーザとの直接注視を試みることによって、相互作用中の自分の順番の終わりを示す。任意選択で、人工エージェントはユーザが人工エージェントとの直接注視を開始したときに、ユーザが自分の順番の終わりを示すことを知覚する。任意選択で、相互作用は、仮想現実環境で行われる。任意選択で、相互作用は、拡張現実環境で行われる。
【0141】
別の態様では電子計算装置上に実装されたユーザとの相互作用をシミュレートするための具現化されたエージェントシミュレータが提供され、具現化されたエージェントシミュレータは、エージェント仮想空間内の人工エージェントをシミュレートすることと、エージェント仮想空間内のデジタルコンテンツをシミュレートすることによって、人工エージェントによって知覚可能であるデジタルコンテンツを表すことと、人工エージェント、人工エージェント仮想空間、およびデジタルコンテンツをディスプレイ上でユーザに表示することと、カメラからユーザの画像を受信することと、受信された画像に基づいてディスプレイ上でユーザの注視を追跡することと、ユーザの少なくとも注視を含むユーザ入力に基づいて、人工エージェント、ユーザ、およびデジタルコンテンツ間の具現化された相互作用をシミュレートすることと、にプログラムされる。
【0142】
任意選択で、ユーザの注視は、ユーザの目の角度および/またはユーザの頭の角度を使用して追跡される。任意選択で、ユーザの眼球運動を追跡することをさらに含み、シミュレートされた具現化された相互作用は、ユーザの眼球運動にさらに基づく。任意選択で、ユーザの眼球運動がユーザの目の頭部角度の角度を使用して追跡される。任意選択で、ユーザ入力は言語入力を含む。任意選択で、ユーザ入力は、聴覚入力またはテキスト入力を含む。任意選択で、ユーザ入力は、タッチスクリーンまたはマウスの動きを含む。任意選択で、ユーザ入力は視覚入力を含む。任意選択で、視覚入力はジェスチャまたは顔の表情である。任意選択で、ジェスチャは、腕、手、または指のうちの1つまたは複数の動きを含む。任意選択で、人工エージェント、ユーザ、およびデジタルコンテンツベースの間のシミュレートされた具現化された相互作用は、ユーザがエージェント仮想空間のデジタルコンテンツ内のオブジェクトに注意を向けることを含む。任意選択で、この方法は人工エージェントの注視を追跡することを含み、シミュレートする具現化された相互作用はさらに、ユーザの注視および人工エージェントの注視に適用されるダイアディック・ターン・テーキング・モデルに基づく。任意選択的に、人工エージェントは、ユーザとの直接注視を試みることによって、相互作用中の自分の順番の終わりを示す。任意選択で、人工エージェントはユーザが人工エージェントとの直接注視を開始したときに、ユーザが自分の順番の終わりを示すことを知覚する。任意選択で、相互作用は、仮想現実環境で行われる。任意選択で、相互作用は、拡張現実環境で行われる。
【0143】
別の態様では、人工エージェントと相互作用するための方法であって、エージェント仮想空間の人工エージェントをシミュレートするステップと、エージェント仮想空間内のデジタルコンテンツをシミュレートすることによって人工エージェントによって知覚可能なデジタルコンテンツを表すステップと、人工エージェント、人工エージェント仮想空間、およびデジタルコンテンツをディスプレイ上でユーザに表示するステップと、カメラからユーザの画像およびユーザの環境を受信するステップと、受信した画像に基づいてユーザの注視を追跡するステップと、少なくともユーザの注視を含むユーザ入力に基づいて人工エージェント、ユーザ、ユーザの環境、およびデジタルコンテンツの間の具現化された相互作用をシミュレートするステップとを含む方法が提供される。
【0144】
任意選択で、ユーザの注視は、ユーザの目の角度および/またはユーザの頭の角度を使用して追跡される。任意選択で、ユーザの眼球運動を追跡することをさらに含み、シミュレートされた具現化された相互作用は、ユーザの眼球運動にさらに基づく。任意選択で、ユーザの目の動きは、ユーザの目の角度および/またはユーザの頭の角度を使用して追跡される。任意選択で、ユーザ入力は言語入力を含む。任意選択で、ユーザ入力は、聴覚入力またはテキスト入力を含む。任意選択で、ユーザ入力は、タッチスクリーンまたはマウスの動きを含む。任意選択で、ユーザ入力は視覚入力を含む。任意選択で、視覚入力はジェスチャまたは顔の表情である。任意選択で、ジェスチャは、腕、手、または指のうちの1つまたは複数の動きを含む。任意選択で、人工エージェント、ユーザ、ユーザの環境およびデジタルコンテンツ間のシミュレートされた具現化された相互作用は、エージェント仮想空間のデジタルコンテンツ内のオブジェクトまたはユーザの環境内のオブジェクトに注意を向けるユーザを含む。任意選択で、この方法は人工エージェントの注視を追跡することを含み、具現化された相互作用をシミュレートすることは、さらに、ユーザの注視および人工エージェントの注視に適用されるダイアディック・ターン・テーキング・モデルに基づく。任意選択的に、人工エージェントは、ユーザとの直接注視を試みることによって、相互作用中の自分の順番の終わりを示す。任意選択で、人工エージェントは、ユーザが人工エージェントを直接注視し始めると、ユーザの順番の終了を示すことを知覚する。任意選択で、相互作用は仮想現実環境で行われる。任意選択で、相互作用は拡張現実環境で行われる。
【0145】
人工エージェントと相互作用するための具現化されたエージェントシミュレータであって、エージェント仮想空間で人口エージェントをシミュレートするステップと、エージェント仮想空間内のデジタルコンテンツをシミュレートすることによって人工エージェントによって知覚可能なデジタルコンテンツを表すステップと、人工エージェント、人工エージェント仮想空間、およびデジタルコンテンツをディスプレイ上でユーザに表示するステップと、カメラからユーザおよびユーザの環境の画像を受信するステップと、受信した画像に基づいてユーザの注視を追跡するステップと、少なくともユーザの注視を含むユーザ入力に基づいて人工エージェント、ユーザ、ユーザの環境、およびデジタルコンテンツの間の具現化された相互作用をシミュレートするステップとを含む、方法。
【0146】
別の態様では、人工エージェントと相互作用するための方法実施システムであって、エージェント人工仮想空間の人工エージェントをシミュレートするステップと、人工エージェントおよび人工エージェント仮想空間をディスプレイ上でユーザに表示するステップと、ユーザの画像をカメラから受信するステップと、ユーザの注意を追跡するステップと、ユーザの注意に注意モデルを適用するステップと、人工エージェントに出力を提供するステップと、注意モデルの出力に基づいて人工エージェントとユーザとの間の具現化された相互作用をシミュレートするステップとを含む、方法実施システム。
【0147】
別の態様では、電子計算装置上で実施されるユーザとの相互作用をシミュレートするための実施エージェントシミュレータであって、エージェント仮想空間の具現化されたエージェントをシミュレートし、人工エージェントおよび具現化されたエージェント仮想空間をディスプレイ上でユーザに表示し、カメラからユーザの画像を受信し、受信した画像に基づいてユーザの注意を追跡し、ユーザの注意に注意モデルを適用し、具現化されたエージェントに出力を提供し、注意モデルの出力に基づいて具現化されたエージェントとユーザとの間の具現化された相互作用をシミュレートするようにプログラムされた、具現化されたエージェントシミュレータ。
【0148】
任意選択で、注意モデルは、人工エージェントの注意にも適用される。任意選択で、この方法は、カメラからユーザの空間の画像を受信することを含む。任意選択で、この方法はエージェント仮想空間内のデジタルコンテンツをシミュレートすることによって、人工エージェントによって知覚可能なデジタルコンテンツを表すことを含み、デジタルコンテンツはユーザに可視である。任意選択で、ユーザの注意を追跡することは、ユーザの注視を追跡することを含む。任意選択で、ユーザの注意を追跡することは、ユーザの眼球運動を追跡することを含む。任意選択で、ユーザの注意を追跡することは、ディスプレイ上でユーザの眼球運動を追跡することを含む。任意選択で、方法は人工エージェントの注視を追跡することを含み、注意モデルは、人工エージェントの注視にも適用される。任意選択的に、注意モデルは、人工エージェントとユーザの顕著性の増大とが共同で注意を払う顕著性因子およびオブジェクトを含む。任意選択で、オブジェクトは、人間および/または物である。任意選択で、顕著性因子は、ユーザおよび人工エージェントの顕著性注視マップに基づく重み付け顕著性注視因子を含む。任意選択的に、重み付けされた顕著性注視因子は、第1の重み付けに人工エージェントの注視マップを乗じたものと、第2の重み付けにユーザ注視マップを乗じたものと、第3の重み付けに人工エージェントの注視マップにユーザ注視マップを乗じたものとを加えたものとして計算される。任意選択的に、顕著性因子は、ユーザおよび人工エージェントの顕著性点マップに基づく重み付け顕著性点因子を含む。任意選択的に、重み付けされた顕著性ポイントマップ因子は、第1の重み付けに人工エージェントのポイントマップを掛けたものと、第2の重み付けにユーザポイントマップを掛けたものと、第3の重み付けに人工エージェントのポイントマップとユーザポイントマップを掛けたものと、を加えたものとして計算される。任意選択で、注意モデルはユーザの目の動き、ユーザのアクション、ユーザの環境内のオブジェクト、およびユーザの環境内のアクションにも適用される。任意選択で、オブジェクトは人間および/または物である。任意選択で、注意モデルは、ユーザ入力にも適用される。任意選択で、ユーザ入力は、聴覚入力またはテキスト入力を含む。任意選択的に、入力は言語入力を含む。任意選択で、ユーザ入力は、タッチスクリーンまたはユーザマウスの動きを含む。任意選択で、ユーザ入力は視覚入力を含む。任意選択で、視覚入力はジェスチャまたは顔の表情である。任意選択で、ジェスチャは、腕、手、または指のうちの1つの動きを含む。任意選択的に、注意モデルは、人工エージェントのアクションおよび人工エージェントのバックグラウンドにおけるアクションにも適用される。任意選択的に、ユーザの眼球運動及び注視は、ユーザの目の角度及び/又はユーザの頭の角度を使用して追跡される。任意選択で、人工エージェント、ユーザ、およびデジタルコンテンツ間のシミュレートされた具現化された相互作用は、エージェント仮想空間のデジタルコンテンツ内のオブジェクトに注意を向けるユーザを含む。任意選択で、この方法は人工エージェントの注視を追跡することを含み、シミュレートする具現化された相互作用はさらに、ユーザの注視および人工エージェントの注視に適用されるダイアディック・ターン・テーキング・モデルに基づく。任意選択的に、人工エージェントは、ユーザとの直接注視を試みることによって、相互作用中の自分の順番の終わりを示す。任意選択的に、人工エージェントは、相互作用中のターンの終わりを言語キューによって示す。任意選択的に、人工エージェントは、非言語キューによる相互作用の間、自分の順番の終わりを示す。任意選択的に、非言語キューは笑顔、瞬き、頭部の動き、腕、手、および指を含む身体の動きを含む。任意選択的に、人工エージェントはユーザが人工エージェントとの直接注視を開始するとき、ユーザが相互作用中に自分の順番の終わりを示すことを知覚する。任意選択的に、人工エージェントはユーザが言語キューを使用するときに、ユーザが自分の順番の終わりを示すことを知覚する。任意選択で、人工エージェントはユーザが非言語キューを使用するとき、ユーザが自分の順番の終わりを示すことを知覚する。任意選択的に、非言語キューは笑顔、瞬き、頭部の動き、腕、手、および指を含む身体の動きを含む。任意選択で、相互作用は、仮想現実環境および/または拡張現実環境で生じる。任意選択的に、人工エージェントは、相互作用の少なくとも一部の間、ディスプレイ上では見えない。