(57)【要約】【課題】本発明は、プロアクティブユーザインターフェースとそのシステム及び方法に関し、特に、移動情報装置とともに使用するためのユーザインターフェースとそのシステム及び方法に関する。【解決手段】いずれのタイプの演算装置にも任意に設置されることができる(またはその装置を制御し、そして／または、その装置に関連できる)プロアクティブユーザインターフェースであり、使用者の行動に応じて、演算装置が選択できる予めプログラムされた多様なパターン及び／または特定の使用者との以前の経験に基づいて使用者に能動的に提案する。例えば、メニューまたはその一部を変更し、表示する異なるメニューを提供し、そして／または、タッチスクリーン機能を変更するなど表示部の少なくとも一部のアピアランスを変更することによってその提案を任意に行うことができる。このような提案は、音声によって任意に行われることができる。【選択図】図２
2005085274.tif 000002
【特許請求の範囲】
【請求項１】
オペレーティングシステムを備えた演算装置のためのプロアクティブユーザインターフェースにおいて、
ａ) 使用者と情報交換を可能にするエージェントが提供され、前記使用者と前記オペレーティングシステムとの間の通信のためのインターフェース部と、
ｂ) 前記オペレーティングシステムにより制御される少なくとも一つのソフトウェアアプリケーションと、
ｃ) 前記アプリケーションを支援して、前記オペレーティングシステムを有するホストプラットホームと通信して、前記インターフェース部と前記使用者との相互作用の少なくとも一つのパターンを検出して、前記検出されたパターンに従って、使用者にユーザインターフェースの少なくとも一つの機能を変化させるための選択事項を能動的に提案する人工知能フレームワークと、から構成され、
前記エージェントは、前記提案に対する使用者の反応に従う感情を表現することを特徴とする感情あるエージェントを有するプロアクティブユーザインターフェース。
【請求項２】
前記インターフェース部と前記使用者との少なくとも一度の以前の相互作用によって決定されたパターンと、予め決定されたパターン、またはその組合せでなされた群から選択される情報を貯蔵する知識ベースをさらに備える請求項１に記載の感情あるエージェントを有するプロアクティブユーザインターフェース。
【請求項３】
前記人工知能フレームワークは、
人工知能／機械学習モジュールと、
前記アプリケーションとの通信を取り扱うアプリケーション管理者と、
システムの前記知識ベースに関連したデータの貯蔵及び取扱いを管理するストレージ管理者と、
前記人工知能／機械学習モジュールの動作を通じて、前記プロアクティブユーザインターフェースがどんな行為を取るべきであるかを決定する行為管理者と、
前記ユーザインターフェースに変化を指示して、前記ユーザインターフェースのアピアランスと機能を管理するユーザインターフェース管理者と、
前記演算装置の状態と仮想世界の状態及びその２状態間の関係を決定する装置世界マッパーと、を備える請求項２に記載の感情あるエージェントを有するプロアクティブユーザインターフェース。
【請求項４】
前記人工知能／機械学習モジュールは、色々な刺激に対応して前記プロアクティブユーザインターフェースの行動を決定して、相異なる形態の行為に対する使用者の反応から前記プロアクティブユーザインターフェースが学習できるようにする請求項３に記載の感情あるエージェントを有するプロアクティブユーザインターフェース。
【請求項５】
前記人工知能フレームワークは、イベントハンドラをさらに備え、
前記行為管理者、ユーザインターフェース管理者、ストレージ管理者、及びアプリケーション管理者を含む低水準の管理者は、前記アプリケーションと前記イベントハンドラとの間で異なるイベントの受信及び取扱いを行う請求項３または請求項４に記載の感情あるエージェントを有するプロアクティブユーザインターフェース。
【請求項６】
前記アプリケーション管理者は、前記アプリケーションのそれぞれの開始、一時停止、再開及び終了を遂行することができる請求項４に記載の感情あるエージェントを有するプロアクティブユーザインターフェース。
【請求項７】
前記演算装置は、一般コンピュータと、ＡＴＭと、携帯電話を含む移動情報装置と、ＰＤＡまたはオペレーティングシステムを備えた消費財でなされた群から選択される請求項１乃至請求項６のうちいずれか１項に記載の感情あるエージェントを有するプロアクティブユーザインターフェース。
【請求項８】
前記エージェントは、３Ｄグラフィックモデルで生成されたアバターである請求項７に記載の感情あるエージェントを有するプロアクティブユーザインターフェース。
【請求項９】
前記プロアクティブユーザインターフェースは、前記アバターをユーザインターフェースの画像表示の要素に独立して表示するように制御する請求項８に記載の感情あるエージェントを有するプロアクティブユーザインターフェース。
【請求項１０】
前記エージェントは、仮想環境で発見される客体と通信する請求項７に記載の感情あるエージェントを有するプロアクティブユーザインターフェース。
【請求項１１】
前記仮想環境で発見される客体は、球、良い動物、食べ物、悪い動物、家、オモチャのうちいずれか一つ以上を備える請求項１０に記載の感情あるエージェントを有するプロアクティブユーザインターフェース。
【請求項１２】
前記仮想環境で発見される客体は、その状態に等級化された入力を含む請求項１１に記載の感情あるエージェントを有するプロアクティブユーザインターフェース。
【請求項１３】
前記仮想環境で発見される客体は、知能型エージェントがフィードバックの提供された行動を継続することに対するインセンティブまたは行動抑制要因になる請求項１２に記載の感情あるエージェントを有するプロアクティブユーザインターフェース。
【請求項１４】
前記等級化された入力は、エージェントに対する補償点数になり、前記エージェントは、獲得した補償点数に従って取れる動作の種類を異ならせる請求項１２に記載の感情あるエージェントを有するプロアクティブユーザインターフェース。
【請求項１５】
前記提案は、規則基盤方式によって決定される請求項７に記載の感情あるエージェントを有するプロアクティブユーザインターフェース。
【請求項１６】
前記規則基盤方式は、
ａ) イベントの発生のときに知識ベースに問い合わせて応答を得るステップと、
ｂ) そのイベントの有効性を判断するステップと、
ｃ) そのイベントに対応する行為を生成して、その行為の優先順位を決定するステップと、
ｄ) 前記イベントに対応する行為のうち最高の優先順位の行為を遂行するステップと、からなる請求項１５に記載の感情あるエージェントを有するプロアクティブユーザインターフェース。
【請求項１７】
前記最高の優先順位の行為は、奨励または妨害フィードバック形態の等級化された入力または仮想環境から集計された総補償を最大化する行為である請求項１６に記載の感情あるエージェントを有するプロアクティブユーザインターフェース。
【請求項１８】
前記プロアクティブユーザインターフェースは、前記エージェントの抽象的な目標に対する成功可能性または失敗可能性が増加し、または減少するときに前記エージェントの感情を生成する請求項１５乃至請求項１７のうちいずれか１項に記載の感情あるエージェントを有するプロアクティブユーザインターフェース。
【請求項１９】
前記生成された感情は、蓄積され、支配的な行動パターンが変化する度に、前記エージェントは、その感情的な状態を表現する請求項１８に記載の感情あるエージェントを有するプロアクティブユーザインターフェース。
【請求項２０】
前記表現される感情は、テキスト通信、３次元アニメーション、顔表情、２次元活動効果及びサウンドのうち一つ以上を利用して表現される請求項１９に記載の感情あるエージェントを有するプロアクティブユーザインターフェース。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プロアクティブユーザインターフェース(proactive user interface)とそのシステム及び方法に関し、特に、移動情報装置とともに使用するためのユーザインターフェースとそのシステム及び方法に関する。
【背景技術】
【０００２】
最近、移動及び携帯無線装置の使用が急激に増加している。変化する機能、内部資源及び性能を有している多い装置があり、このような装置には、移動電話、ＰＤＡ(Personal Digital Assistants)、医療用及び実験実用機構、スマートカード、及びセットトップボックスなどが含まれるが、それらに限定されることではない。そのような装置はすべて移動情報装置である。これらの装置は、すでに知られている汎用計算機械よりは特殊目的用の機能制限型装置になる傾向がある。これら中の多くの装置は、インターネットに連結されて多様な用途として用いられている。
【０００３】
そのような移動情報装置には、例えば、携帯電話(cellular phone)がある。携帯電話は急速に普遍化されて、携帯電話の使用が既存のＰＳＴＮ(Public Switched Telephony Network)電話機または“地上線路(land line)”電話機の使用を上回っている。携帯電話は、それ自体にさらに精巧になっており、実際には、事実上の内蔵型オペレーティングシステムを備える演算装置であるといえる。
【０００４】
携帯電話がさらに精巧になるにつれて、携帯電話によって提供される機能の範囲も潜在的にさらに拡大されている。しかし、現在では、携帯電話の機能は、一般(地上線路)電話機にすでに存在する機能を拡張し、そして／またはＰＤＡの特定の機能を携帯電話の機能と統合することに関連することが一般的である。これと類似して、携帯電話とともに提供されるユーザインターフェースも精巧でないことであり、幾つの単純なメニューを通じてスクロールするためのキーパッドを特徴的な要素として備えることが一般的である。着信音及びそれ以外の携帯電話のアクセサリーのために相当な費用を支払っている顧客の立場では、カスタマイズ化(customization)を確実に所望しているが、カスタマイズ化は、いまでも携帯電話の非常に少ない個数の機能に限定されている。また、携帯電話は、現在、移動情報装置の使用を向上させるのに必要な注文製作型機能(custom/tailored functionalities)と、例えば、装置ユーザインターフェースなどのオートマチックパーソナライゼーション(automatic personalization)、及び／または使用者の行動に応じて反応する能力が不足である。
【０００５】
しかし、このような精巧さの不足は、個人用(デスクトップまたはラップトップ)コンピュータ用及びそれ以外の演算装置用ユーザインターフェースでも同様である。通常に、これらの演算装置は、かなり単純な方法にのみカスタマイズ化されることができる。また、このようなカスタマイズ化は使用者によって遂行されなければならないが、使用者は、コンピュータ機能を理解できないか、またはこのようなカスタマイズ化作業の遂行を不便に感じることができる。現在、演算装置は、使用者の行動(動作)パターンを学習して、それに従ってそれら自分の動作をユーザインターフェース用適応型システム(adaptive system)のように調整することが不能である。使用者がコンピュータを手動に調整できなければ、コンピュータが使用者に合うようにその動作を調整するよりは、使用者が自分の動作をコンピュータに合うように調整すべきである。
【０００６】
専門化された実験実用機能のみのためのものであるが、学習できるソフトウェアが開発されたところがある。例えば、“人工知能(Artificial Intelligence；ＡＩ)”というソフトウェアが開発された。人工知能という用語に対する多様な定義があるが、その中の１つとして、“人工知能を認知、推論、及び行動を遂行できるようにする演算の研究”であると定義する(Prentice Hall, Pearson Education Inc., 2003年 Stuart Russell, Peter Norvigの“Artificial Intelligence；A Modern Approach (second edition)”で引用する。)。人工知能ソフトウェアは、認知(perception)などの多様な他の概念を結合したもので、これは、推論して行動するために人工知能ソフトウェアを必要とする世界(world)にインターフェースを提供する。例えば、自然言語処理(natural language processing)(自然言語の文献内容及び文脈を伝達(communication)して理解する。)と、コンピュータビジョン(画像源(imagery source)から客体(objects)を認知する。)と、センサーシステム(感覚データ(sensory data)を分析して認知された客体の特徴(features)及び客体を認知する。)などが含まれるが、それらに限定されることではない。
【０００７】
他の重要な概念には、知識ベース(knowledge base)がある。知識表現(knowledge representation)は、知識の抽出及び貯蔵を表現する機能を遂行する。この概念は、また、知識、特徴抽出、及び列挙(enumeration)、客体状態の構成及び定義を一般化する技術も提供する。それ自体を具現するためには、一般的に、グラフ、ベクトル、及びテーブルなどの公知のデータ構造を利用することができる。
【０００８】
また他の重要な概念には、推論(reasoning)がある。自動化された推論は、知識表現及び認知を利用するアルゴリズムを結合して新たな結論を導出し、質問及び答弁を推測し、エージェント目標(agent goals)を達成するようになる。人工知能(ＡＩ)推論の例には、次のような概念的なフレームワークがある。すなわち、その例には、規則ベース(rule base)(推論のための認知された状態及び知識ベースに対してシステム規則が評価される。)と、検索システム(利用可能な知識及び目標に従って知識結論の検索のために周知のデータ構造を利用(例えば、決定ツリー(decision tree)、状態グラフ、及びミニマックス決定(minimax decision)などがそれに含まれる。)する。)と、分類器(classifier)(分類器推論システムの目的は、分類タグ(classification tag)のない実験として表現される認知状態(perceived state)を分類するためのものである。)などがある。分類器は、予め分類された(pre-classified)知識ベースに従って、新たな実験の分類を推測するのであろう(ここには、例えば、ベクトル距離発見的方法(vector distance heuristics)、サポートベクトルマシーン(Support Vector Machine)、分類器神経回路網(Classifier Neural Network)などが含まれる。)。
【０００９】
さらに他の重要な概念には学習(learning)がある。学習の目標は、経験を通じた一般化によって人工知能推論システムの潜在的な性能を向上させることにある。学習アルゴリズムに入力されることは実験(experiment)になるものであり、その結果に応じて、知識ベースに対する修正がその学習アルゴリズムから出力されるものであろう(ここには、例えば、補強学習、バッチ学習、及びサポートベクトルマシーンなどが含まれる。)。
【００１０】
ソフトウェア用の遺伝的なアルゴリズム及び進化アルゴリズムのための研究も行われた。このようなソフトウェアの１つの例がKarl Simsの“Evolving Virtual Creatures”に記述されている(Computer Graphics, SIGGRAPH‘94 Proceedings, July 1994, pp.15-22)。この参考資料は、実際に、物理的な世界の模擬形態(simulated version)としての３次元の仮想世界に移動できる“生物(creature)”というソフトウェアについて記述している。この生物は、遺伝的なアルゴリズムを利用して学習及び進化を遂行でき、これにより、指示された外部の入力(directed external input)なしでそれらの行動を変化させる。従って、これらの遺伝的なアルゴリズムは、仮想世界での相互に異なる“適合性(fitness)”または補償(rewards)を有する潜在的な行動(potential behavior)の超空間(hyperspace)を描写した。これらアルゴリズムの自体の具現は指示されたグラフを利用して行われ、これらによって生物の遺伝子型(構成成分)及びそれらの行動を記述した。
【００１１】
そのシミュレーション(simulation)の開始のときに、異なる遺伝子型を有する相互に異なる多い生物が模擬された。生物は、仮想世界で異なる刺激に対してそれらの行動を変化させるように許容された。各“世代(generation)”では、相対的または絶対的なカットオフスコア(cut-off score)に従って、特定の生物のみが生存するように許容され、前記スコアは、生物の行動の適合性(fitness)に従って決定される。ミューテーション(mutations)の発生が許容され、これにより、ミューテーションされた生物の適合性が増加されることもでき、またはその反対であることもできる。また、例えば、ノードに関連した値を無作為に変更し、そして／またはノードを追加しまたは削除することにより指示されたグラフを通じてミューテーションが遂行される。これと類似して、生物間の“交配(mating)”による結果として指示されたグラフ(directed graph)に変化が発生することができる。
【００１２】
前記参考文献に記述されている結果は、仮想生物が事実上変化及び進化を行えることを示している。しかし、その生物は仮想世界内でのみ動作でき、実際の物理的な世界、そして／または人間コンピュータ操作者とは何の連結点または関連点も有していない。
【発明の開示】
【発明が解決しようとする課題】
【００１３】
このような背景技術は、特に、人間使用者と相互作用を遂行するために移動情報装置用のインテリジェントソフトウェアが学習して進化できるようにするシステムまたは方法を少なくとも教示するかまたは提案していない。また、背景技術は、プロアクティブ(proactive)ユーザインターフェースが使用者の行動を学習して使用者に選択事項を能動的に提案し、その提案に対する使用者の反応に従う感情を表現できる演算装置用プロアクティブユーザインターフェースに対しても教示するかまたは提案していない。さらにまた、背景技術は、アバターを通じて人間使用者と感情表現を含む相互作用を遂行できる移動情報装置用インテリジェントエージェントに対しても教示するかまたは提案していない。
【課題を解決するための手段】
【００１４】
本発明は、どんな形態の演算装置にも任意に(optionally)設置されることができる(またはそうではない場合、その装置を制御することができ、そして／またはその装置と関連することができる)プロアクティブユーザインターフェースを提供することにより、前述した背景技術の問題点を解決しようとするものである。このようなプロアクティブユーザインターフェースは、特定の使用者との以前の経験(相互作用)に基づいて、そして／または使用者の行動に応じて演算装置が選択できる予めプログラムされた(pre-programmed)多様なパターンに基づいて、使用者に能動的に提案するようになり、そして／または、そうでなければ、決定されないまたは予期せぬ行動(non-deterministic or unexpected behavior)に関与するようになる。例えば、その一部またはメニューを変更し、表示するための異なるメニューを提供し、そして／またはタッチスクリーン機能を変更するなど、表示部の少なくとも一部の外観を変更することにより、前述した提案が任意に行われることができる。また、そのような提案は、音声によって任意に行われることもできる。それ以外の他の形態の提案または伝達メカニズム(delivery mechanism)も可能である。本発明は、そのような提案に対する使用者の反応に従うエージェントの感情を表示することを特徴的な要素として有する。
【００１５】
“提案”によって、前記システムは、与えられた所定の使用者の性向(preferences)を考慮して、また、システムの状態が行為の特定の遂行を許容するか否かに従ってその行為を事実上任意に遂行することができ、また、それに伴うエージェントの感情を表現できることを留意しなければならない。本発明によるエージェントの感情表現は、エージェントの“提案”に対する使用者の選択可否またはエージェントの“提案”に対する使用者の補償に依存する点を特徴とする。
【００１６】
一般的に、プロアクティブユーザインターフェースは、少なくとも知能的であり、双方向(interactive)に見えることが望ましく、使用者と少なくともどの程度の“自由な”(例えば、準備されない(non-scripted)または部分的に準備された)通信を遂行できることが望ましい点を強調することは重要である。使用者の期待(expectations)が“インテリジェント”エージェント／装置との相互作用のために実行されることが望ましい意味で、知能的な外観(intelligent appearance)を有することは重要である。このような期待は、通信できる能力、インターフェースの選択的な外観(optional appearance)、擬人化属性(anthropomorphic attribute(s))の使用などの要素によって任意にシェープ(shaped)されることができ、それらは、プロアクティブユーザインターフェースと使用者との間の相互作用において知能感覚(sense of intelligence)を向上させるのに利用されることが望ましい。使用者から伝達される通信において、プロアクティブユーザインターフェースは、使用者が移動情報装置との相互作用をどんな方式にて遂行することを所望するかを感知できることが望ましい。任意に、通信(情報伝達)は一方向にのみ行われることができる。例えば、インターフェースは、任意に使用者にメッセージまたは情報を提示するが、使用者からは情報を受信しないことができ、またはその反対に具現することも可能である。通信は、使用者との望ましい相互作用のために双方向に行われることが望ましい。
【００１７】
任意にそして望ましく、使用者に伝達される通信のために、プロアクティブインターフェースは、使用者との通信の一部として使用者との相互作用のために模擬された感情(simulated emotions)を表示するかまたは見せられる機能を有する。この後に、さらに詳細に説明するように、これら感情は、インテリジェントエージェントによって提示されるために模擬されることが望ましく、アバターまたは生物(creature)によって表現されることがさらに望ましい。その感情は、感情型システム(emotional system)を通じて生成されることが望ましく、任意に、少なくとも１つの使用者の性向(user preference)に従って部分的に制御されることができる。知能型システムは、使用者がインテリジェントエージェントの反応及び通信を認知するにおいて、信じるべきものになれるようにするのに利用することが望ましい。例えば、インテリジェントエージェントが犬のような生物として提示されると、感情型システムは、その感情が“犬のような”行動に対する使用者の期待と一致できるようにすることが望ましい。
【００１８】
これと類似して、インテリジェントエージェントは、使用者に対して少なくとも知能的に見えることが望ましい。任意に、その知能(intelligence)は、完全に決定的なメカニズム(completely deterministic mechanism)を通じて提供されることができるが、知能的なアピアランスを備えるための基礎になるもので、少なくとも１個以上の無作為または反無作為要素(semi-random elements)が含まれることが望ましい。また、そのような要素は、インテリジェントエージェントの表現(representation)に対して知能と関連した使用者の期待と一致できるように提示されることが望ましい。
【００１９】
使用者の要求または他の通信を満足させるために、少なくともある程度はインテリジェントエージェントが行動を変更することが可能であるようにするために、適応特性または適応機能(adaptiveness)が提示されることが望ましい。プロアクティブユーザインターフェースは、使用者と通信するためのインテリジェントエージェントを含んでいなくても、適応特性によってインターフェースが事前行動的になれるようにすることが望ましい。使用者の移動情報装置との相互作用の観察(observation)によってそのような適応機能が実行されることができるようにすることが望ましく、しかし、任意にそして望ましく、そのような観察に対するプロアクティブユーザインターフェースの反応が知識ベース及び／または規則ベースによって案内されることもできる。
【００２０】
そのような適応機能の非限定的であるが、望ましい特定の例として、特に、複数のメニューを含む移動情報装置において、そのような適応機能には、メニューの少なくとも１つの形態(aspect)を変更できる能力が含まれることができることが望ましい。例えば、任意に、１個以上の短縮キーまたは短縮手段(shortcuts)が提供されて、使用者がメニュー階層(hierarchy)において最終選択対象(final choice)より上位にあるサブメニューまたは以前のメニューのうち少なくとも１つ(より望ましくはそのすべて)を迂回して直接メニュー選択対象に到達できるようにする。任意に(その代わりにまたは付加的に)、１個以上のメニューがプロアクティブユーザインターフェースの適応機能に従って、例えば、使用頻度数に従って再配列されることができる。任意に、そのような再配列には、メニュー選択及び／またはサブメニューのようなメニューの一部をメニュー階層において、現在位置より上位にある新たな位置への移動が含まれることができる。メニュー階層において、上位にあるサブメニューは、下位位置(さらに下位にある位置)にあるものより少ない回数のメニュー選択を通じてさらに速く到達されることができる。
【００２１】
任意にそして望ましく、適応機能及び／または感情(emotions)は、プロアクティブユーザインターフェースによって学習のための補償(rewards)を通じて助けられることができる。使用者が承認した提案または行為は、補償または肯定的なインセンティブをプロアクティブインターフェースに提供して、そのような提案または行為(actions)を継続するようにすることが望ましく、使用者によって承認されなければ、プロアクティブインターフェースにそのような行動(behavior(s))を継続することに対する行動抑制要因(disincentive)を発生させることが望ましい。プロアクティブユーザインターフェースに肯定的または否定的なインセンティブ／行動抑制要因を提供することにより、行動が許容されるかまたは禁止されるもっと“黒白(black or white)”的な方式に比べて、そのインターフェースの行動にニュアンスがさらに与えられるようにすることが望ましい。そのような行動が少なくともある程度使用者によって一括的に承認される／否認される場合に、そのようなニュアンスによって反対されるかまたは矛盾する行動(opposing or contradictory behaviors)が取り扱われることができるようにすることも望ましい。
【００２２】
本発明の任意の(optional)、しかし、好適な実施形態によると、プロアクティブユーザインターフェースが使用者との相互作用を通じて、使用者に対するモデルが構成されることが望ましい。そのようなモデルは、予めプログラムされた、そして／または使用者の行動から決定された人工知能知識ベースを任意にそして望ましく統合するようになるのであろう。また、前記モデルは、プロアクティブユーザインターフェースがユーザインターフェースによって行われた特定の提案に対する使用者の反応を測定することを任意に可能にすることにより、使用者の内在的または非明示的な性向(implicit preferences)に適応するようになる。
【００２３】
そのような演算装置の非限定的な例には、ＡＴＭ(例えば、使用者行動の特定のパターンが警報器を動作するようにできるので保安性にも関連する。)と、すべてのタイプの一般コンピュータ(デスクトップ(desktop)、ラップトップ(laptop)、小型軽量(thin client)、及び装着型コンピュータ(wearable computer)など)と、携帯電話などの移動情報装置、ページャー装置、それ以外の無線通信装置、オペレーティングシステムを備えた一般電話機、ＰＤＡ、及び無線ＰＤＡ、オペレーティングシステムを備えた消費財などが含まれる。以下、“演算装置”という用語はオペレーティングシステムを備えており、演算を遂行できるすべての電子装置を含むものとする。オペレーティングシステムは、任意に内蔵されたシステム及び／または他のタイプのソフトウェア及び／またはハードウェアランタイム環境(run time environment)であることができる。以下、“移動情報装置”という用語は、すべてのタイプの無線通信装置(ここには、携帯電話、無線ページャー、及び無線ＰＤＡなどが含まれ、これらに限定されることではない。)を含むと見なされるが、それに限定されることではない。
【００２４】
望ましくは、本発明は、現在の包括的(generic)であり、非柔軟的(non-flexible)であるユーザインターフェースを柔軟性があり、実際に使用しやすいインターフェースに変化させるのみならず、演算装置との向上された使用者の経験及び相互作用を提供するために実現される。より望ましくは、本発明は、使用者と相互に作用するアバター形態でユーザインターフェースを構成する任意の、しかし、望ましい実施形態に従って、演算装置との使用者の向上した感情的な経験(emotional experience)を提供するために実現される。従って、本発明は、特に、例えば、携帯電話のような移動情報装置に“生存型装置(living device)”の経験を与えることができる。この実施形態によると、使用者は、“生存型装置”に感情的な取付け機能(emotional attachment)を形成することもできる。
【００２５】
本発明の他の実施形態によると、適応型システムを含む移動情報装置が提供される。前述したユーザインターフェースのように、この装置もプログラムされたパターン及び／または使用者との以前の経験に依存する。しかし、任意にそして望ましく、適応型システムは、移動情報装置の機能及び環境内での動作にさらに制限されている。
【００２６】
任意にそして望ましく、移動情報装置の適応型システム及びプロアクティブユーザインターフェースのうちいずれか１つまたはその両方のすべては、遺伝的なアルゴリズム、人工知能(ＡＩ)アルゴリズム、機械学習(Machine Learning；ＭＬ)アルゴリズム、学習された行動、及び進化できるソフトウェア／演算装置で具現される。また、前述した２つのうちのいずれか１つまたはそのすべては、高級水準の音声命令、タッチスクリーン命令、キーボード‘短縮キーまたは短縮手段(short-cuts)’を任意に提供することもできる。
【００２７】
本発明のまた他の、任意の、しかし、好適な実施形態によると、移動情報装置網(network)を経て移動情報装置と使用するための１個以上のインテリジェントエージェントが提供され、これには、エージェントが人間使用者と通信(情報交換)を遂行できるようにするアバター(または“生物”；以下、２つの用語は、置換え可能な用語として使用するものとする。)が含まれることが望ましい。従って、アバターは、使用者との相互作用のためのユーザインターフェースを提供することが望ましい。また、インテリジェントエージェントは、ネットワークを通じて移動情報装置の少なくとも１つの相互作用を制御するためのエージェントを含むことが望ましい。この実施形態は、任意に、移動情報装置網を通じて連結されるそのようなインテリジェントエージェントを複数個含んで、任意に、そのようなエージェントのネットワークを形成できることもある。このような実施形態を通じて多様な応用例が任意に提供されることもでき、その応用例に含まれることは、例えば、一般的な教育(teaching)、そして／または、特に、移動情報装置を使用する方法を学習するための教育、言語教育、通信アプリケーション、コミューニティアプリケーション、ゲーム、娯楽(entertainment)、ショッピング(クーポン獲得など)、ショップ、または他の場所の位置把握、広告及び所望しないメッセージのフィルタリング、ロールプレイニングゲーム、または携帯電話網を通じたそれ以外の双方向(interactive)ゲーム、“チャット”及びミーティング機能、インテリジェントエージェントのための“プレゼント(presents)”を買うか、そうでなければ、そのキャラクタを装飾するための機能などがあり、これらに限定されることではない。理論的には、このようなエージェントの自体にアクセサリーとして“愛玩動物(pet)”が提供されることもできる。
【００２８】
従って、本発明の多様な実施形態によると、相互に異なる多い相互作用が可能である。このような相互作用のうちには、アバターまたはそれ以外のキャラクタまたは使用者のパーソニフィケイション(personification)と装置の使用者との間の相互作用と、アバターまたはそれ以外のキャラクタまたはパーソニフィケイションを通じて装置を駆動するための装置と装置の使用者との間の相互作用と、アバターまたはそれ以外のキャラクタまたはパーソニフィケイションを通じた通信(情報交換)によって、それぞれの装置を利用した二人の使用者間の相互作用と、任意に使用者同士またはエージェントと使用者との間の何の情報交換もなく、２つの装置の間にそれぞれのインテリジェントエージェントを通じた相互作用のうちいずれか１つ以上が含まれる。前記相互作用または可能な相互作用は、本発明の実施形態に従って決定され、これについては、下記にさらに詳細に説明する。
【００２９】
本発明は、演算装置、そして／または、例えば、携帯電話のような移動情報装置の相対的に制限された環境から利益を得るようになるが、その理由は、そのような環境の変数がすでに知られているからである。そのような装置は、例えば、携帯電話網のようなネットワークを通じて通信を遂行しても、それでもやはり前記環境の変数は予め決定されることができる。現在、演算装置は、使用者の受動的かつ直接的な操作でもカスタマイズ化が許容されないか、それがほぼ許容されない包括的なインターフェース(generic interface)のみを提供している。
【００３０】
“ソフトウェア”という用語は、ハードウェアによって動作するフレームワークまたは命令語を任意に含むこともできるという点に留意しなければならない。
【００３１】
(望ましい実施形態)
本発明は、プロアクティブユーザインターフェースに関するもので、どんな形態の演算装置にも任意に設置されることができる(または、そうではない場合に、その装置を制御でき、そして／またはその装置に関連することができる。)。プロアクティブユーザインターフェースは、使用者の行動に応じて、演算装置が選択できる多様な予めプログラムされたパターン及び／または特定の使用者との以前の経験に基づいて使用者に能動的に提案できる。表示部の少なくとも一部の外観を変更することにより、例えば、その一部またはメニューを変更し、表示するための異なるメニューを提供し、そして／またはタッチスクリーン機能を変更するなどによって、前述した提案が任意に行われることができる。また、そのような提案は、音声によって任意に行われることもできる。本発明は、そのような提案に対する使用者の反応に従うエージェントの感情を表示することを特徴的な要素として有する。
【００３２】
プロアクティブユーザインターフェースは、前述したように、オペレーティングシステムを含んでいる演算装置のために実現されることが望ましい。このようなインターフェースは、任意にそして望ましく、使用者とオペレーティングシステムとの間の通信のためのユーザインターフェースを含む。また、望ましく、インターフェースは、ユーザインターフェースとの使用者の相互作用の少なくとも１つのパターンを検出し、検出されたパターンに従って、ユーザインターフェースの少なくとも１つの機能を事前行動的に変更するための学習モジュールを含む。これにより、プロアクティブユーザインターフェースは、使用者の要請を予測して演算装置の所望する機能を選択するときに使用者に役に立つことができる。
【００３３】
本発明の他の実施形態によると、適応型システムを含む移動情報装置が提供される。前述したユーザインターフェースのように、この装置も使用者との以前の経験及び／または予めプログラムされたパターンに依存する。しかし、任意にそして望ましく、そのような適応型システムは、現在ＰＤＡからの特定の基本機能を含むこともある、例えば、携帯電話のような移動情報装置の環境及び機能内での駆動にさらに限定される。
【００３４】
望ましく、この適応型システムは、オペレーティングシステムを特徴的な要素として備えた移動情報装置とともに動作する。このオペレーティングシステムは、任意に内蔵型システム(embedded system)を含むことができる。移動情報装置は、携帯電話を任意に含むことができる。
【００３５】
かならずそういうものではないが、適応システムは、移動情報装置の自体によって任意に駆動されることができる。または、移動情報装置がネットワークに連結された場合に、適応型システムは、少なくとも部分的にネットワークから移動情報装置に伝送された命令に従って任意に駆動されることもできる。これを実現するためには、適応型システムの少なくとも１つの動作と関連したデータが移動情報装置とは異なる位置に貯蔵されることが望ましく、このとき、前記位置は、ネットワークを通じてアクセスが可能である。
【００３６】
本発明のまた他の任意の、しかし、好適な実施形態によると、移動情報装置網を通じて移動情報装置と使用するための１個以上のインテリジェントエージェントが提供され、これには、エージェントが人間使用者と情報交換(通信)を可能にするアバターを含むことが望ましい。従って、望ましく、アバターは、使用者との相互作用のためのユーザインターフェースを提供する。また、インテリジェントエージェントは、ネットワークを通じて移動情報装置の少なくとも１つの相互作用を制御するためのエージェントを含むことが望ましい。この実施形態は、移動情報装置網を通じて連結されたそのような複数のアバターを任意に含むことができる。
【００３７】
本発明の好適な実施形態によると、アバターのアピアランス(appearance)の少なくとも１つの特性が、例えば、使用者の命令に従って任意に変更できることが望ましい。任意にそしてより望ましく、アバターのアピアランスの複数の特徴が予め定義されたアバター皮膚に従って変更可能である。その皮膚は、使用者によって任意に予め決定される。“皮膚”によって前記複数の特徴が１つのセットとしてともに変更されることを意味し、このとき、前記セットは、前記皮膚を形成するものである。このような実施形態がネットワーク-アクセス可能な位置に貯蔵されたアバターに関連したデータの少なくとも一部を有する以前の実施形態と結合される場合には、使用者は、同一のアバターを相互に異なる電話機に任意に移動させることができ、そして／または相互に異なる理由のために、例えば、パーティーまたはそれ以外のセレブレイション(celebration)のような特別の場合のために、アバターのアピアランスをカスタマイズ化できる。もちろん、このようなものは、ただ例を挙げるためのもので、特定の方式で限定されるものを意味することではない。
【００３８】
技術的な具現(technical implementation)においては、本発明は、使用者にごくパーソナルデバイス(メモリ、データ処理容量、スクリーン表示の大きさ、及び解像度など)の制限されたシステムの上で動作できることが望ましい。例えば、望ましく、前記装置は、携帯電話などの移動情報装置であり、これは、かならず携帯性及び使用上利便性のために適応されるので、前記装置は、前述した制限のうちの１つ以上またはそのすべてを有することができる。本発明の具現形態は、このような特性の組合せに適合であるようにすることが望ましい。従って、使用者の望ましいパーソナライゼーション(personalization)及び“個人的な感じ(personal feel)”を保持しつつも、前記装置自体の制限を解決するために、次のような多様な解決方案を提案するようにする。これら解決方案は、ただ例に過ぎなく、いずれの方法を使っても、限定的に解釈するように意図されたものではないことに留意しなければならない。
【００３９】
例１：プロアクティブインターフェース - 一般
望ましく、本発明のプロアクティブユーザインターフェースは、使用者の行動に応じて、演算装置が選択できる予めプログラムされた多様なパターン及び／または特定の使用者との以前の経験に基づいて、使用者に能動的に提案するために、いずれのタイプの演算装置も制御することができ、そして／または、その装置にも関連することができることが望ましい。このような提案は、表示部の少なくとも一部のアピアランスを変更することにより、例えば、メニューまたはその一部を変更し、表示するための相互に異なるメニューを提供し、そして／またはタッチスクリーン機能を変更することにより、任意に行われることができる。その提案は、音声によって任意に行われることもできる。
【００４０】
プロアクティブユーザインターフェースは、オペレーティングシステムを含む前記のような演算装置のために実現されることが望ましい。任意にそして望ましく、前記インターフェースは、使用者とオペレーティングシステムとの間の通信のためのユーザインターフェースを含んでいる。望ましく、インターフェースは、使用者のユーザインターフェースとの相互作用の少なくとも１つのパターンを、例えば、学習モジュールの動作を通じて検出することができ、従って、望ましく、検出されたパターンに従って、使用者のインターフェースの少なくとも１つの機能を事前行動的に変更することができる。従って、プロアクティブユーザインターフェースは、使用者の要請を予想することができ、これに従って、演算装置の所望の機能を選択するにおいて使用者に役に立つことができる。
【００４１】
特に、使用者が所望するものとその行動を学習するものに関連して、このようなタイプのプロアクティブ行動は、プロアクティブインターフェースの部分に所定のタイプの学習能力を必要とする。そのような学習能力は、ソフトウェア客体の環境との相互作用及び(ソフトウェアによる)学習に関連する該当技術分野で公知されたアルゴリズムと方法論を通じて任意に提供されることができる。ソフトウェアがその行為を時間に従って向上させられるとき、そのソフトウェアを学習であるといえる。人工知能は、知能型行為選択(intelligent action selection)(推論；reasoning)を示す必要があり、これに従って、ソフトウェアがその環境(その“世界”)を探検して行為の可能性を発見できる能力を有することが望ましい。また、ソフトウェアは、世界の状態とそれ自体の内部状態を表現する能力を有することが望ましい。そして、ソフトウェアは、知能型行為(前記のような知識を利用して)を選択して行動することができることが望ましい。
【００４２】
任意にそして望ましく、例えば、インターフェースの学習モジュールによる学習は補償(rewards)によって補強されることができ、このとき、学習モジュールは、環境の状態に応じて特定の行為を取るものに対して補償を受けるようになる。このような形態の学習は、所定の方式にて行動するように学習モジュールを訓練させることを含む。２以上の行動が許容されれば、学習処理過程は、非決定的なものになって相互に異なる行動を生成することができる。プロアクティブユーザインターフェースに関連して、任意にそして望ましく、前述した補償は、例えば、提示された選択対象が使用者の選択に続くとき(提示された選択対象によって、例えば、プロアクティブユーザインターフェースによって提供されたものとは異なるメニューを選択することにより、使用者が異なるセットの１個以上の選択を探そうとするときとは対照的に)を学習モジュールが検出するように引き起こすことなどを含む。プロアクティブユーザインターフェースが使用者の行動を正しく理解したことを示すもので、明確に、前記インターフェースの提示事項を使用者が直接に選択する比率が最大になるようにすべきである。
【発明の効果】
【００４３】
本発明は、現在の包括的(generic)であり、非柔軟的(non-flexible)なユーザインターフェースを柔軟性があり、実際に、使用者の親和的なインターフェースに変化させるだけではなく、演算装置との向上した使用者の経験及び相互作用を提供する。また、本発明は、使用者と相互に作用する生物またはアバター形態でユーザインターフェースを構成することによって、演算装置との使用者の向上した感情的な経験(emotional experience)を提供する。従って、本発明は、例えば、携帯電話のような移動情報装置に“生存型装置(living device)”の経験を与えることができる。
【発明を実施するための最良の形態】
【００４４】
以下、本発明の好適な実施形態について添付図を参照しつつ詳細に説明する。下記説明において、本発明の要旨のみを明瞭にするために公知の機能又は構成に対する詳細な説明は省略する。
【００４５】
図１は、反応的な学習(reactive learning)のための本発明による学習モジュールの例を概略的に示すブロック図である。示すように、学習モジュール１００は、知識ベース１０２を望ましく含んでおり、知識ベース１０２は、環境との相互作用の結果として、学習モジュール１００によって収集された情報を貯蔵することにより、望ましくは、学習モジュール１００のメモリとしての機能を行う。知識ベース１０２は、不揮発性メモリ(図示せず)に任意に貯蔵されることができる。知識ベース１０２は、適切な行為を選択するために学習モジュール１００に役に立つ情報を望ましく保持している。そのような情報は、内部神経網のための数値的加重値(numerical weights)などの値、または行為補償値(action reward value)を有するテーブル、または他のすべての形態の情報を任意に含むことができる。
【００４６】
学習モジュール１００が環境に対する情報を受信できるようにするためには、学習モジュール１００は、複数のセンサー１０４を特徴的な要素として備えることが望ましい。センサー１０４は、学習モジュール１００がその環境状態を認知できるようにする。センサー１０４は、その環境に連結されて感知された値を出力する。その値は、プログラムの自体から得られたこと(例えば、画面上の位置、エネルギーレベルなど)、または実際装置の値から得られたこと(例えば、“フリッパー(flipper)”を開けてその装置が動作されるか、着信号が応答されられる携帯電話を開いた状態(flipped state)のような動作状態及びバッテリー状態など)であることができる。
【００４７】
センサー１０４は、はっきり価値ある情報を提供するが、学習モジュール１００がその情報を理解するようになることができる前までその情報を処理する必要がある。従って、学習モジュール１００は、センサー１０４の現在出力が“状態(state)”であると称するその世界の一定の表現になるように処理するために認知部１０６をさらに含む。そして、そのような状態は、学習モジュール１００の“ブレイン(brain)”として記述されることができる推論システム１０８のための入力が行われることが望ましい。このような設計は、そのシステムを複数のホストプラットホーム(相互に異なる演算装置及び環境)に容易に移動することを支援するのみならず、センサーのメカニズム及び世界の状態を拡張することを支援して、世界の状態が装置に従って変更されることができる。
【００４８】
推論システム１０８は、知識ベース１０２で現在状態を処理して、どんな行為を遂行すべきであるか否かに対する意思決定を生成するようにすることが望ましい。推論システム１０８は、世界の現在状態を受信して遂行されるべき行為を出力し、その選択された行為に対するフィードバックを受信するようになる。このフィードバックに基づいて、推論システム１０８は、知識ベース１０２をアップデートすることが望ましい。これは、学習モジュール１００が行為を状態に関連させるように学習する１つの反復処理に該当する。
【００４９】
本発明の任意の実施形態によれば、演算装置は、感情的な状態、物理的な状態、動きなどの使用者に対する多様な形態の生物学の情報を感知するための１個以上の生物学センサーを特徴的な要素として有することができる。そして、このような情報は、センサー１０４に提供されて認知部１０６が使用者の状態を決定し、それに従って、その装置のための適当な状態を決定するのに役に立つことができる。そのような生物学センサーは、体温(body temperature)、心拍(heart rate)、酸素飽和度(oxygen saturation)の感知用センサーまたは使用者の生物学変数を測定する他のすべての形態のセンサーを含むことができるが、それらに限定されることではない。
【００５０】
図２は、学習モジュール１００をさらに特徴としたプロアクティブユーザインターフェースを提供するための本発明によるシステム２００の典型的な実施形態を示す。学習モジュール１００は、学習モジュール１００に関連し、そして／またはこれによって制御され、そして／またはこれを動作させる演算装置(図示せず)のオペレーティングシステム２０２と通信を遂行することが示されている。オペレーティングシステム２０２は、インターフェース部２０４だけではなく、少なくとも１つの他のソフトウェアアプリケーション２０６の動作を制御することが望ましい(もちろん、そのような多いソフトウェアアプリケーションが任意に存在することができる。)。
【００５１】
使用者は、例えば、メニューから１つの選択対象を選択するようにより、インターフェース部２０４を通じて通信を遂行する。オペレーティングシステム２０２は、このような通信情報が受信されてデータに翻訳されられるようにする。そして、望ましく、学習モジュール１００は、そのようなデータを受信して任意に命令をオペレーティングシステム２０２にさらに伝送して、例えば、インターフェース部２０４の所定の要素(例えば、異なるメニューを提供することにより)を変更し、そして／または、ソフトウェアアプリケーション２０６を動作させる。そして、使用者は、インターフェース部２０４を通じて応答を行い、この応答から、望ましく、学習モジュール１００は、その行為(学習モジュール１００によって伝送された命令)が適切であるか否かを学習するようになる。
【００５２】
図３は、本発明によるプロアクティブユーザインターフェースシステム３００の具現例を概略的に示すブロック図である。示すように、システム３００は、望ましく３レベル構造を特徴的な要素として有し、このとき、アプリケーションレイヤーは、人工知能(ＡＩ)フレームワークによって支援され、これは、続いてホストプラットフォーム演算装置(“ホストプラットフォーム”で示される。)と通信を遂行するようになる。
【００５３】
任意にそして望ましく、アプリケーションレイヤーは、複数の相互に異なるアプリケーションを特徴的な要素として有しており、その中で、MutateApp(ミューテーションアプリケーション)３０２、PreviousApp(以前のアプリケーション)３０４、及びTeachingApp(教育アプリケーション)３０６のような幾つの非限定的な例を示す。
【００５４】
望ましく、MutateApp３０２は、システム３００内のミューテーションを制御し、そして／または、開始させるために呼び出される(invoke)。前述したように、学習モジュールは、指示されたまたは半指示された進化(directed or semi-directed evolution)を通じて、例えば、遺伝的アルゴリズムを通じてその行動を任意に変更することができる。望ましく、MutateApp３０２は、進化を通じてそのようなミューテーションを制御し、そして／または開始させる。進化の実施形態については、下記にさらに詳細に説明するのであろう。
【００５５】
望ましく、PreviousApp３０４は、システム３００の以前の状態または(学習モジュールの状態のような)その一部分が現在の状態の代わりに呼び出されることができるようにする。さらに具体的に、本発明が進化的アルゴリズムで具現されるものであれば、PreviousApp３０４は、使用者を以前の進化的なステップに復帰させる。さらに一般的に、システム３００は状態保存型(stateful)であるので、以前の状態に任意に復帰することができ、このとき、そのような状態のヒストリーは望ましく保持される。
【００５６】
TeachingApp３０６は、人工知能フレームワークレイヤーを通じて具現されることができる包括的(generic)アプリケーションの１つの非限定的な例であるだけである。
【００５７】
人工知能フレームワークレイヤーの自体は、ユーザインターフェースがプロアクティブ方式にて行動できるようにする１個以上の構成成分を含んでいる。任意にそして望ましく、フレームワークは、演算装置の状態及び仮想世界の状態を決定し、また、その２つの状態間の関係も決定するためのDeviceWorldMapper(装置世界マッパー)３０８を含む。望ましく、DeviceWorldMapper３０８は、仮想世界の状態とその装置の状態を決定するために、例えば、EventHandler(イベントハンドラ)３１０からの多様なイベントから入力を受信する。
【００５８】
望ましく、DeviceWorldMapper３０８は、入力データを分析するために、ＡＩ(人工知能)／ＭＬ(Machine Learning)３１２との通信を遂行する。また、望ましく、ＡＩ／ＭＬモジュール３１２は、多様な刺激に対応してこのプロアクティブユーザインターフェースの行動を決定し、また、例えば、ユーザインターフェースの相互に異なる形態の行為に対する使用者の反応からこのプロアクティブユーザインターフェースが学習できるようにする。
【００５９】
進化モジュール３１４は、インテリジェントエージェントの進化を管理するアプリケーションの非限定的な例である。進化モジュール３１４は、例えば、MutateApp３０２の動作を通じてそのような進化を支援し、また、望ましくそれを管理する。
【００６０】
このような相互に異なる人工知能タイプのアプリケーションとEventHandler３１０との間で、１個以上の相互に異なる低水準管理者(low level managers)は、相互に異なるイベントの受信及び取り扱い(処理)とシステム３００による相互に異なる行動を望ましく支援するようになる。これらの管理者は、ActionManager(行為管理者)３１６、UIManager(ＵＩ管理者)３１８、StorageManager(ストレージ管理者)３２０、及びApplicationManager(アプリケーション管理者)３２２を含むことができるが、これらに限定されることではない。
【００６１】
ActionManager３１６は、この後さらに詳細に説明したが、簡略に説明すると、例えば、ＡＩ／ＭＬモジュール３１２の動作を通じて、どんな行為を取るべきであるかをシステム３００が決定できるようにすることが望ましい。
【００６２】
望ましく、UIManager３１８は、例えば、前述したように、ユーザインターフェースに変化を指示することによって、ユーザインターフェースのアピアランスと機能を管理する。
【００６３】
望ましく、StorageManager３２０は、例えば、システム３００の知識ベース(図示せず)に関連したデータの貯蔵及び取り扱い(処理)を管理する。
【００６４】
望ましく、ApplicationManager３２２は、アプリケーションレイヤーの前述したアプリケーションとの通信を取り扱う。 
【００６５】
望ましく、これらの相互に異なる管理者は、すべてEventHandler３１０からイベントを受信する。
【００６６】
人工知能フレームワークレイヤーの内で、任意にそして望ましく、人工知能基盤構造３２４はホストプラットフォームとの通信を支援する。望ましく、このホストプラットフォームの自体は、ホストプラットフォームインターフェース３２６を特徴的な要素として有し、任意にそして望ましく、これは、例えば、ホストプラットフォームのオペレーティングシステムを通じて提供されることができる。 
【００６７】
任意にそして望ましく、人工知能基盤構造３２４は、ホストプラットフォームインターフェース３２６から入力を受信し、また、任意にホストプラットフォームインターフェース３２６に命令を伝送するためのＩ／Ｏモジュール３２８を含む。 望ましく、スクリーンモジュール３３０は、ホストプラットフォーム演算装置の画面上のユーザインターフェースの表示の処理／取り扱いを行う。望ましく、資源モジュール３３２は、システム３００がデータストレージなどの多様なホストプラットフォームの資源(resources)に接続できるようにする。
【００６８】
もちろん、前述した図面は、学習モジュールのためのただ１つの任意の構成を示すだけである。例えば、学習モジュールは、１つのセットの個別エージェントで表現されることもでき、このとき、各エージェントは、１つの単純な目標を有している。学習モジュールは、前述した現在の状態に基づいて所定の行為を遂行するエージェントを選択する。現在の状態とエージェントとの間の適切なマッピングは、補強学習を備えた学習モジュールによって学習されることもできる。
【００６９】
例２：移動情報装置のための適応システム
このような例は、移動情報装置を備えた本発明の適応型システムの例示的な具現に関するものであり、この具現は望ましいが、任意的なものであり、何の方式にも限定するように意図されることではない点に留意しなければならない。
【００７０】
このような適応型システムは、例１において、前述した機能のうちのいずれも任意に含むことができ、前述したように、任意に具現されることもできる。このセクション(section)では、移動情報装置の動作に関連して適応型システムの実際の構造にさらに重点をおくこととする。また、この例は、本発明による生物またはアバターの任意の、しかし、望ましい具現に対して記述している。
【００７１】
その次のセクションは、本発明による適応システムの多様な側面における特定の技術的な具現に対する任意のしかし望ましい実施形態に対して記述している。ただ説明するための目的で、また、何の限定の意図なく、これらの実施形態は、任意に、アバターまたは“生物”として視覚的に表現されるインテリジェントエージェントを通じて使用者との相互作用を行う適応型システムの任意のしかし望ましい実施形態に基づいている。
【００７２】
セクション１：イベント誘導システム(Event Driven System)
このセクションでは、本発明によるイベント誘導システムの望ましい実施形態に対して記述しており、これには、アプリケーション管理者が限定されることなく含まれ、その装置によって動作されるに従って本発明のシステムとその装置の自体との間で発生する相互作用に対して記述している。
【００７３】
図４は、本発明による典型的な適応システム４００と、このシステム４００と移動情報装置４０２との相互作用を概略的に示すブロック図である。示すように、望ましく、システム４００及び移動情報装置４０２は、すべて使用者４０４との相互作用を遂行する。
【００７４】
移動情報装置４０２は、多い標準機能を任意にそして望ましく有し、示すように、その機能は、ただ説明するための目的で、２通りのカテゴリー(データ及びメカニズム)に分類される。メカニズムには、ユーザインターフェース(ＵＩ)システム４０６(スクリーン、キーパッドまたはタッチスクリーン入力部など)と、着信及び発信呼機能４０８と、例えば、ＳＭＳのためのメッセージ通信機能４１０と、着信呼またはメッセージ及び／またはアラームを使用者４０４に知らせるためのサウンド部４１２及び／または振動部４１４と、貯蔵部４１６などの機能が任意に含まれることができる。しかし、これらに限定されることではない。
【００７５】
データには、住所録(電話帳)４１８と、着信または発信呼情報４２０と、位置４２２のような移動情報装置４０２の位置と、メッセージ情報４２４と、キャッシュインターネットデータ４２６と、オーナーデータ４２８のような使用者に対するデータ４０４などが任意に含まれることができる。
【００７６】
移動情報装置４０２は、前述したデータ／メカニズムのうちのいずれか１つ以上も任意に含むことができ、それらすべてをかならず含まなくてもいい、そして／または、図示しない付加的なデータ／メカニズムを含むこともできる。これらは、単純に移動情報装置４０２に関連した、特に、携帯電話のための非限定的な例として意図されたものである。
【００７７】
本発明による適応型システム４００は、適応型(また、望ましくは事前行動的)ユーザインターフェースを提供可能であるようにするために、移動情報装置４０２のデータ／メカニズムとの相互作用を遂行することにより、使用者４０４が移動情報装置４０２との相互作用を遂行するにおいての容易さ及び効率を増加させる。
【００７８】
望ましく、適応型システム４００は、ロジック４３０を特徴的な要素として有し、望ましく、これは、前述した学習モジュールと類似している方式にて機能を遂行し、また、これは、前述した人工知能及び機械学習アルゴリズムに従って任意にそして望ましく動作するようになる。
【００７９】
ロジック４３０は、図１(特に明記しない限り、同一の参照番号で示した構成要素は、機能が同一であるかまたは類似している。)を参照して説明されたように、知識ベース１０２と通信できることが望ましい。望ましく、情報貯蔵部４３２は、移動情報装置４０２の行為に対するデータ及び使用者情報などを含み、望ましくは、知識ベース１０２の内のデータを補充するようになる。
【００８０】
望ましく、適応型システム４００は、進化ロジック４３４を通じて進化でき、これは、図３のMutateApp３０２及び進化モジュール３１４の前述した機能を任意に統合することもできる(図示せず)。
【００８１】
任意に、適応型システム４００は、言語モジュール４３６によって支援されてテキスト及び／または可聴言語を通じて使用者４０４と直接に通信できる。 
【００８２】
また、任意に、適応型システム４００について、使用者４０４は、ユーザインターフェースのためのアバター(図示せず)が任意に提示されることができる。そのようなアバターは、これが存在すれば、３Ｄグラフィックモデル４３８及びアニメーションモジュール４４０を通じて任意に生成されることができる(具体的な説明は、下記説明を参照する。)。任意に、アバターは、使用者４０４のためにパーソナライゼーションされて、移動情報装置４０２との相互作用を遂行するときに、使用者４０４のための向上した感情的な経験を提供することができる。
【００８３】
図５Ａは、典型的なアプリケーション管理システム５００を概略的に示すブロック図であって、これは、本発明の適応型システムを支援するための核心的な基盤構造に該当する。前述したように、また、この後にさらに詳細に説明されるように、システム５００は、アプリケーション機能を教育させるもののような実施形態を支援するために任意に利用されることもできる。システム５００は、本発明による適応型システムの一部である異なる形態のアプリケーションを管理するためのアプリケーション管理者５０２を特徴的な要素として有することが望ましい。アプリケーション管理者５０２は、BaseApp(ベースアプリケーション)５０４と呼ばれるアプリケーションインターフェースとの通信を遂行し、これは、システム５００内のすべてのアプリケーションによって実現される。アプリケーション管理者５０２及びBaseApp５０４は、すべてEventHandler５０６を通じてイベントを交換(伝達)する。
【００８４】
アプリケーション管理者５０２は、システムアプリケーション(システム５００の一部としてのアプリケーション)の実行のためのランタイムを管理して提供する機能を行う。そのようなアプリケーションのそれぞれのライフサイクルはBaseApp５０４で定義され、これによって、アプリケーション管理者５０２は、そのようなアプリケーションのそれぞれの開始、一時停止(pause)、再開(resume)、及び終了(停止)を遂行することができる。望ましく、アプリケーション管理者５０２は、BaseApp５０４のインターフェースのステップ方法(step method)を通じてランタイム実行を管理する。任意にそして望ましく、前記ステップ方法が状態保存型(stateful)であることが望ましいので、システム５００は、実行のために使用されて、各ステップが１個以上の状態に(大体的に)対応することが望ましい事実に注目しなければならない。しかし、任意に、実行(execution)は、すべてのタイプの実行方法及び／またはスレッド(threads)に基づくこともできる。
【００８５】
アプリケーション管理者５０２は、移動情報装置からタイマーイベントを受信する。下記にさらに詳細に説明するように、望ましく、移動情報装置は、オペレーティングシステムを特徴づけることによって、オペレーティングシステムレイヤーからタイマーイベントを受信することが望ましい。タイマーが呼び出されば(invoke)、アプリケーション管理者５０２は、遂行されている現在アプリケーションのステップを呼び出す。使用者が、例えば、メニューシステムを使用するときに異なるアプリケーションを駆動させると、アプリケーション管理者５０２は、１つのアプリケーションから他の１つのアプリケーションに転換することが望ましい。
【００８６】
続いて、前記システムアプリケーションの幾つの非限定的な例を示し、ここには、幾つの非限定的な例で示されるように、TeachingMachineApp(教育機械アプリケーション)５０８、MutateApp(ミューテーションアプリケーション)５１０、GeneStudioApp(遺伝子スタジオアプリケーション)５１４、TWizardApp(ティーウィザードアプリケーション)５１６、FloatingAgentApp(フローティングエージェントアプリケーション)５１８、TCWorldApp(ティーシーワールドアプリケーション)５２２、及びHybridApp(ハイブリッドアプリケーション)５２０などが含まれ、これに限定されるものではない。これらのアプリケーションに対しては、図３を参照してより詳細に説明する。
【００８７】
TCWorldApp５２２は、インテリジェントエージェントを動作(run)させるアプリケーションであり、望ましくは、生物またはアバターのグラフィック表示とそのエージェントのインテリジェント要素(intelligent aspects)の両方ともを制御する(この両方ともについては、下記でさらに詳細に説明する。)。
【００８８】
TWizardApp５１６は、使用者に情報を提供する他のタイプのアプリケーションである。これについては、下記例３において、開始ウィザードアプリケーション(Start Wizard application)と関連して記述されている。簡略に説明すると、このアプリケーションは、特に、感情型システム(下記にさらに詳細に説明する。)と関連して、また、目標優先順位(goal priorities)を設定すること(下記にさらに詳細に説明する。)と関連して、インテリジェントエージェントの特性のような人工知能フレームワークの構成及び使用者オプション(user preferences)を含んでいる。
【００８９】
FloatingAgentApp５１８は、任意にそして望ましく、特に(それが存在すれば)、アバターのアピアランスと関連してユーザインターフェースのアピアランスを制御する。FloatingAgentApp５１８は、ユーザインターフェースの画像表示の要素(aspects)がアバターの表示と独立的に表示されることができるようにし、従って、これは、例えば、ユーザインターフェースの上に“フロート(float)”に見えることができる。FloatingAgentApp５１８は、動作中である他のアプリケーションが存在しないときに駆動されるデフォルトアプリケーションであることが望ましい。
【００９０】
図５Ｂは、本発明によるアプリケーション管理者の動作を示す典型的なシーケンスダイアグラムである。示すように、EventHandler５０６は、矢印１で示すように、アプリケーション管理者５０２にイベントに対する通知を発送することが望ましい。そのイベントがタイマーイベントである場合には、アプリケーション管理者５０２は、矢印１．１．１で示すように、すでに呼び出された関連アプリケーションのインスタンスのステップ(行為)を呼び出す。そのイベントがアプリケーションの実行を開始させるものであれば、アプリケーション管理者５０２は、矢印１．２．１で示すように、関連アプリケーションのインスタンスを呼び出す。アプリケーションの現在実行中であるインスタンスを一時停止しようとすれば、アプリケーション管理者５０２は、矢印１．３．１で示すように、そのアプリケーションに一時停止コマンド(pause command)を伝送する。アプリケーションのすでに一時停止されたインスタンスを再開(resume)しようとすれば、アプリケーション管理者５０２は、矢印１．４．１で示すように、再開コマンドをそのアプリケーションに伝送する。どんな場合でも、前記関連した復帰矢印で示すように、そのステップの実行が成功すればアプリケーション管理者５０２に復帰される。そして、アプリケーション管理者５０２は、EventHandler５０６に実行成功(または失敗)に対して通知する。
【００９１】
このような相互に異なるアプリケーションは、移動情報装置の動作の多様な要素を適応型システムが制御できるようにするにおいて重要なものである。しかし、適応型システムは、また、移動情報装置のオペレーティングシステムを通じて多様な移動情報装置の構成要素と直接に通信することが可能な必要がある。そのような通信は、図６を参照して示す通信システム６００を通じて任意に遂行されることができ、望ましくは、後述する行為アルゴリズムで遂行される。
【００９２】
図６Ａ及び図６Ｂは、各移動情報装置のオペレーティングシステムを通じて１個以上の行為を遂行するために、本発明による適応型システムに必要な基盤構造(infrastructure)の例を示し、図６Ｂは、通信システム６００の動作のためのシーケンスダイアグラムの例を示す。本発明の、任意のしかし望ましい実施形態によると、このような基盤構造は、“人工知能ラッパー(AI wrappers)”または既存のＵＩ(ユーザインターフェース)システムを画期的な人工知能及び機械学習機能で“包装(wrap)”する能力のさらに一般的な概念の一例である。
【００９３】
通信システム６００は、前記のようなEventHandler５０６と通信を遂行するベースクラスイベント６０２とともに、多様な形態のイベントを処理できることが望ましい。そして、EventDispatcher６０４は、本発明のシステム内の正しい目標物(object)にイベントをルーティング(伝送)する。ルーティングは、特定のイベントに対してEventDispatcher６０４にその目標物を登録して決定されることが望ましい。EventDispatcher６０４は、そのような通知のためにEventHandler５０６のインターフェースを具現するハンドラ(handler)のレジストリを管理することが望ましい。
【００９４】
任意にそして望ましく、特別なハンドラが具現される特定のイベントは、“フリッパー(flipper)”を開けてその装置が動作されるか、または着信号(incoming call)が応答されることができる携帯電話のためのフリッパーイベントハンドラ６０６を含み、フリッパーが開けられるかまたは閉じられると、このイベントが発生する。本発明に従って動作されるアプリケーションは、イベントを相互に任意に伝達でき、それらは、InterAppEventハンドラ６０８によって処理されることが望ましい。生物またはアバターの任意のしかし望ましい進化(変化)に関連したイベントは、EvolutionEventハンドラ６１０によって処理されることが望ましい。着信または発信電話は、CallEvent handler６１２によって処理されることが望ましく、これは、さらに２個の追加ハンドラと、通話を開始するためのCallStartedEventハンドラ６１４と、通話を終了するためのCallEndedEventハンドラ６１６とを含むことが望ましい。
【００９５】
ＳＭＳイベント(着信または発信メッセージ)は、SMSEventハンドラ６１８によって処理されることが望ましい。そのイベントに含まれることができる任意のしかし望ましいパラメータは、この後にさらに詳細に説明するように、１つの移動情報装置の生物またはアバターと他の移動情報装置の生物またはアバターとのハイブリッド化(hybridization)に関連したパラメータを含む。
【００９６】
そのキー(keys)の動作に関連したイベントは、KeyEventハンドラ６２０及び／またはKeyCodeEventハンドラ６２２によって処理されることが望ましい。例えば、使用者が移動情報装置の上でキーを押すと、KeyEventハンドラ６２０はこのイベントを処理し、これは、本発明によるシステムの動作のための着信情報(incoming call)に関連する。そのシーケンスダイアグラムにおいて、key_eventはクラスKeyEventからの客体であり、これは、キーイベントメッセージ客体を示す。KeyEventハンドラ６２０は、key_eventの自体を処理する一方、KeyCodeEventハンドラ６２２は、入力コードに対して注意を注ぐ(この２つの入力イベントは、そのオペレーティングシステムに挿入されるフック(hook)を通じて得られる。)。
【００９７】
BatteryEventハンドラ６２４は、バッテリー不足(low battery)またはその代わりに低消費電力モードから高消費電力モードへの転換のようなバッテリーに関連したイベントを処理することが望ましい。
【００９８】
DayTimeEventハンドラ６２６は、アラム、カレンダー、またはリマインダー／ビジネスダイアリー(reminder/appointment diary)イベントに関連することが望ましい。
図６Ｂは、移動情報装置のオペレーティングシステムまたは他の制御構造と本発明のシステムとの間で、イベントがどのように処理されるかを示す典型的なシーケンスダイアグラムである。この例において、前記移動情報装置は、オペレーティングシステムを含んでいるが、そのようなオペレーティングシステムを備えない装置のためにそれと類似している動作フローが任意に実現されることができる。それが存在すれば、オペレーティングシステムは前記装置に対する入出力を処理し、その装置のために発生する状態及びイベントを管理する。図６Ｂでのシーケンスダイアグラムは、そのようなイベントに対する(そして、それらと関連した)処理を容易にするために抽象化(abstraction)したものである。
【００９９】
オペレーティングシステムモジュール(os_module)６２８は、イベントを発生させるかまたはそれに関連したもので、任意にそのようなモジュールが複数個存在することができ、明確にするために図面には１つのみ示したが、これは、何の方式にも限定しようとすることではない。オペレーティングシステムモジュール６２８は、移動情報装置のオペレーティングシステムの一部である。オペレーティングシステムモジュール６２８は、オペレーティングシステムモジュール６２８によって受信されたかまたは生成されたかのイベントに対する通知をフック６３０に伝送することが望ましい。フック６３０は、本発明によるシステムの一部として、本発明によるシステムとオペレーティングシステムとの間の通信を許容するために使用される。フック６３０は、オペレーティングシステムからのイベントを解釈でき、イベント６０２に理解されることができるメッセージの内にイベントを構成できる。フック６３０は、EventDispatcher６０４にそのイベントを発送することもあり、これは(そのようなハンドラが複数個存在することができるが、)、EventHandler５０６で示したそのイベントのための各ハンドラと通信を遂行する。そして、EventDispatcher６０４はフック６３０に報告し、これは、そのイベントの処理に対してオペレーティングシステムモジュール６２８に報告する。
【０１００】
図７Ａ乃至図７Ｃは、典型的なイベントを示すもので、そのイベントが(移動情報装置のオペレーティングシステムを通じて)移動情報装置と本発明のシステムとの間の相互作用によってどんば方式にて処理されるかを示す。移動情報装置と関連せず、幾つのイベントが本発明のシステムの内で任意に処理されることができるという点に留意しなければならない。
【０１０１】
図７Ａは、クアルコム社のＭＳＭ(Messaging State Machine)ＣＤＭＡ(Code Division Multiple Access)移動プラットフォームのためのクアルコム社のＤＭＳＳオペレーティングシステムの基盤構造を有する移動情報装置に従って記述された典型的なキーイベントシーケンスダイアグラムを示す。このオペレーティングシステムは、電話キー(キーパッド)を使用して入力された対話型入力(interactive input)、Ｉ／Ｏサービス及びユーザインターフェースサービスのようなオペレーティングシステムサービスを提供する。この例は、本発明のシステムによってキーからの入力イベントがどのように生成されて処理されるかを示している。他のイベントは、ほぼ同一の方式にて前記システムに伝送されるが、フック６３０の機能は、そのイベントを伝送しているオペレーティングシステムモジュールに従って変更され、任意にそして望ましく、そのようなフックが複数個存在し、それぞれのフックがオペレーティングシステムとの相互作用と関連した相互に異なる機能を有している。
【０１０２】
図７Ａに示すように、ui_do_eventモジュール７００は、前記オペレーティングシステムの構成要素として周期的に呼び出される。前記移動装置のキーが押されれば、情報をui_do_eventモジュール７００に伝送するユーザインターフェース(ＵＩ)の構造はそのキーの値を含む。そうすると、フック６３０は、そのキーの値を受信し(特に、ui_do_eventモジュール７００がグローバルイベントを発送(dispatch)すれば)、任意にそして望ましく、そのイベントをキーイベントとして識別し、キーイベント７０２を生成する。続いて、そのイベントは、望ましくは、前記のようなイベントハンドラ(図示せず)を通じてそのようなイベントに対する通知の受信を要請したアプリケーション７０４に伝送される。続いて、望ましく、そのイベントの処理中に成功(または失敗)の通知がEventDispatcher６０４にさらに戻ってフック６３０及びui_do_eventモジュール７００に伝達される。
【０１０３】
図７Ｂは、イベントを処理するためのシーケンスダイアグラムの第２の具体例を示すもので、この場合に、そのイベントは本発明によるシステムから伝達され、移動情報装置のスクリーン上の絵(drawing)と関連する。情報は、スクリーンが(主に)フレームバッファによって表現されるオペレーティングシステムのスクリーンアクセス方法を通じて伝達される。このフレームバッファはスクリーンドライバーを利用してコピーされ、そのスクリーンによって表示されるメモリセグメントである。本発明のシステムは、オペレーティングシステムにスクリーン上の絵を制御するために必要な情報を発生させる。
【０１０４】
図７Ｂをさらに参照すれば、矢印“１”で示すように(scrn_update_mainモジュール７１０を通じて)、オペレーティングシステムは、まずスクリーンのためにフレームバッファを更新する。この更新は、例えば、任意にバックグラウンドを描くものと関連することができ、これは、本発明のシステムによって提供された情報からのデータが描かれないスクリーンのすべての部分に表示されることができる。任意に、そのようなバックグラウンドがあり、これによって、半透明ウインドー(semi-transparent windows)の使用を支援するようになり、これは、下記にさらに詳細に記述されるように、生物またはエージェントのために任意にそして望ましく利用されることができる。
【０１０５】
そうすると、Scrn_update_mainモジュール７１０は、更新されたデータのための要請をスクリーンモジュール７１２に伝送し、これは、本発明のシステムの一部としてオペレーティングシステムと通信するためのフックを特徴として有する。継続して、スクリーンモジュール７１２は、スクリーンに描かれるべきものに対する更新された情報のために、各アプリケーションウインドー(図面には、agentWindow(エージェントウィンドー)７１４で示し、任意に複数個が存在することができる。)に要請を伝送する。変更が発生して更新が必要であれば、agentWindow７１４は、更新が必要であることをスクリーンモジュール７１２に通知する。そうすると、スクリーンモジュール７１２は、変更された部分の位置及びサイズを望ましく二度の別個の要請(矢印２．１．２．１及び２．１．２．２でそれぞれ示す。)で要求するようになり、それに対しては、応答がagentWindow７１４によって伝送される。
【０１０６】
スクリーンモジュール７１２は(望ましくは次のように)、更新された長方形の形態でその情報をscrn_update_main７１０を通じてオペレーティングシステムに返送する。Scrn_update_main７１０は、フレームバッファをプリバッファ(pre-buffer)にコピーすることにより、更新の存在に対する通知に応答する(過程３．１)。そうすると、スクリーンモジュール７１２は、矢印３．２．１で示すように、プリバッファに各ウインドーに対する変更を描く。継続して、プリバッファがフレームバッファにコピーされ、これに従ってスクリーンにコピーされる(矢印３．３)。
【０１０７】
図７Ｃは、スクリーン上に描くための本発明のシステムのためのクラスアーキテクチャーを示す。スクリーンモジュール７１２及びagentWindow７１４をすべて示す。そのクラスagentWindow７１４も３個の他のウインドークラスと通信を遂行し、これらは、BackScreenWindow(バックスクリーンウィンドウ)７１６、BufferedWindow(バッファウィンドウ)７１８、及びDirectAccessWindow(直接アクセスウィンドウ)７２０などのウインドーの更新(または変更)に関する情報を提供する。BufferedWindow７１８は、それ自体と通信を遂行するTransbufferedWindow(トランスバッファウィンドウ)７２２及びPreBufferedWindow(プリバッファウィンドウ)７２４などの２個のウインドークラスを追加に有する。
【０１０８】
セクション１：行為選択システム(Action Selection System)
このセクションでは、インセンティブ／行動抑制要因による任意の行為選択などを含む(それに限定されることではない。)本発明による行為選択システムの望ましい実施形態に対して記述する。インテリジェントエージェントの行為がどのように選択されるかに対する説明を助けるために、本発明のシステムによって望ましく提供される仮想環境とのインテリジェントエージェントの相互作用及びインテリジェントエージェントの構造に対してまず説明する。
【０１０９】
図８Ａは、インテリジェントエージェントの構成例を示し、図８Ｂは、そのインテリジェントエージェントの動作に対するシーケンスダイアグラムの例を示す。図８Ａに示すように、インテリジェントエージェント８００は複数のクラスを含むことが望ましい。メインクラスはAICreature(人工知能生物)８０２であり、これは、その状態、性格、目標などのようなインテリジェントエージェントに対する情報を含み、また、位置、色、及び現在見ることができるか否かなどのそのエージェントを視覚的に示す生物のアピアランスに対する情報を含む。
【０１１０】
AICreature８０２は、World(世界)８０４と通信を遂行し、これは、インテリジェントエージェント用仮想環境のための基礎クラスである。また、World８０４は、仮想環境を含むクラスと通信を遂行し、それに対する幾つの非限定的な例を示す。望ましく、World８０４は、WorldObject(世界客体)８０６の多様なインスタンス(instances)と通信を遂行し、WorldObject８０６は、仮想環境で発見される客体を示し、インテリジェントエージェントと相互作用を遂行できる。World８０４は、そのような相互に異なる客体を管理し、また、それらに対する位置などの属性(property)を含む特性(characteristics)に対する情報を受信する。また、World８０４は、自ら大きさ及び可視性(visibility)などの仮想環境の属性を管理する。WorldObject８０６は、２次元または３次元グラフィックまたはそれらが混在したことを任意に利用でき、また、音生成などの移動情報装置の他の機能を任意に利用することもできる。
【０１１１】
WorldObject８０６は、自ら幾つのクラスのうちの１つに属する客体を任意に示すことができる。このような抽象化(abstraction)は、相互に異なる客体クラスが仮想環境に追加されるかそれから除去されることができるようにする。例えば、任意に前記客体は、MenuBallObject(メニューボール客体)８０８によって表現されたように、メニューの一部として開始されることができる“ボール”になることができ、そのボールを有して遊ぶために生物によって“除去”されることができる。望ましく、GoodAnimalObject(よい動物客体)８１０もWorldObject８０６と通信を遂行し、そして、望ましく、(生物のための食べ物を示す)FoodObject(食べ物客体)８１２と、(生物を腹を立たせて、例えば、けんかをさせられる動物を示す)BadAnimalObject(悪い動物客体)８１４と、(その生物のための家)HouseObjct(家客体)８１６などのクラスはGoodAnimalObject８１０と通信を遂行する。GoodAnimalObject８１０は、スクリーン上の客体などを描くことができる機能を含み、このために、望ましく、他のクラス及び客体がGoodAnimalObject８１０と通信を遂行する。もちろん、例えば、その生物に他のオモチャ(toy)が提供されることができるので、このシステムでは、他の多いクラス及び客体が可能である。
【０１１２】
任意にそして望ましく、WorldObject８０６は、例えば、その状態に等級化された入力(graded input)を提供することにより、インテリジェントエージェントの状態と関連することもできる。望ましく、この入力は、インテリジェントエージェントにインセンティブを提供するかまたは行動抑制要因を提供する意味で等級化され、また、それは、中性的な影響(neutral influence)を与えることもできる。望ましく、そのような等級化された複数の入力を集計(aggregation)することによってインテリジェントエージェントの状態が決定される。図８Ａのシーケンスダイアグラムと図９Ａ及び図９Ｂのそれぞれのグラフ探索方法及び行為選択方法ダイアグラムを参考して記述されたように、望ましく、仮想環境からインテリジェントエージェントに与えられる補償を最大にするために等級化された入力が集計される。
【０１１３】
そのような等級化された入力は、奨励または妨害フィードバック(encouraging or discouraging feedback)形態の使用者からの入力を任意に含むこともできるので、インテリジェントエージェントは、フィードバックが提供された行動を継続することに対するインセンティブまたは行動抑制要因をそれぞれ有するようになる。使用者からのフィードバックに対する世界状態の計算を、任意にそして望ましく、次のように遂行することができる。
【０１１４】
Grade=(weighting_factor*feedback_reward)+((1-weighting_factor)*world_reward))
【０１１５】
この式において、feedback_reward(フィードバック_補償)は、使用者によって提供されたフィードバックによるものであり、world_reward(世界_補償)は、前記のような仮想環境からの集計された総補償であり、weighting_factor(加重_因数)は、望ましくそして任意に、０と１との間の値で仮想環境(世界)フィードバックと反対される使用者フィードバックの加重値(weight)を示すものである。
【０１１６】
エージェント行動の補償に対する非限定的な例であって、エージェントの提案に対する肯定的または否定的フィードバック、エージェントにボールまたは食べ物のようなWorldObject(世界客体)の提供、電話使用時間、使用者が教育を受ける時間などを挙げることができる。この例において、それぞれ所定のスコアが与えられることができ、蓄積されたスコアに従ってエージェントの行動を拡張しまたは制限できる。例えば、使用者の肯定的なフィードバックは＋１点、否定的なフィードバックは−１点、敵(enemy or bad animal)及び遭遇(encounter)は−２０点、食べ物、オモチャ、または家の客体(object)の獲得は＋５点、バッテリロー(low)のアラムは−1点、エージェントの使用者に対する教育において、正答は＋１点、誤答は−１点、アクションなし(no action)の状態が２０分持続されると−1点、誤った電話は−１点、ＳＭＳ使用は＋１点などで定めることができるが、以上の例は、異なって適用することができる。
【０１１７】
図８Ｂは、本発明のインテリジェントエージェントと仮想世界との間の一連の相互作用の例を示す典型的なシーケンスダイアグラムである。このシーケンスは、インテリジェントエージェントの状態(status)に対する更新のために仮想世界モジュール８１８からAICreature８１２への要請で始まる。仮想世界モジュール８１８は、自らインテリジェントエージェントを含んで全体の仮想環境の制御及び管理を遂行する。
【０１１８】
そして、インテリジェントエージェントは、矢印１．１．１で示すように、行為を遂行するか否かを考慮する。その行為は、望ましく、世界８０４及び世界客体８０６と相互作用を行うことによって、すべての世界客体を通じて、続いて循環的(recursive)に各客体のためのすべての行為を通じて探索(矢印１．１．１．１)を通じて選択される。各行為に対する潜在的な補償が求められ(矢印１．１．１．１．１．１)、等級化される(矢印１．１．１．１．１．１．２)。最高の補償値を有する行為が選択される。その後に、インテリジェントエージェントのための全体的な等級が決定され、AICreature８０２は、選択された行為を遂行する。
【０１１９】
続いて、Virtual_world(仮想_世界)８１８は、World８０４及びWorldObject８０６と通信を遂行することにより世界の内のすべての客体の位置及び状態を更新する。
【０１２０】
多様な潜在的な行為に対する検索が１個以上の複数の相互に異なる方法に従って任意に遂行されることができる。図９Ａ及び図９Ｂは、本発明による行為を選択するための２個の典型的な方法を示す。
【０１２１】
図９Ａは、行為を選択するための規則基盤方式という行為選択方法の例を示す。ステップ１において、仮想環境の状態(status)がWorld state(世界状態)によって決定される。World Event(世界イベント)が発生した後に、そのイベントに適切なState Handler(状態ハンドラ)がステップ２で呼び出される。状態ハンドラは、ステップ３で知識ベースに問合せを行う。任意に、この知識ベースは、呼び出された状態ハンドラに従って別個のセクション及び／または別個の知識ベースに分割されることができる。ステップ４で応答が状態ハンドラに伝達される。
【０１２２】
ステップ５で、規則基盤の有効性の判断(validation)が遂行され、このとき、前記応答(とそれによるインテリジェントエージェントを特定の状態になるようにする提案された行為)がその規則と比較される。その行為が有効でなければ、処理はステップ１に復帰される。行為が有効であれば、ステップ６でその行為が生成される。その後にその行為に対する優先順位(以後、図９Ｃを参考にしてさらに詳細に説明する。)がステップ７で望ましく決定され、より望ましくは、その優先順位は複数の入力に従って決定され、その入力には、行為確率(probability)、行為ユーティリティ及び使用者の性向(user preference)が含まれ、これに限定されることではない。ステップ８で、その行為は、行為管理者のためにキュー(待機行列)(queue)に配置される。ステップ９で、行為管理者は最高の優先順位行為を読み出し、その読み出された行為は、ステップ１０で、インテリジェントエージェントによって遂行される。
【０１２３】
図９Ｂは、グラフ探索方法による典型的な行為選択方法を示す。さらに、ステップ１で、世界の状態(仮想環境)を決定することにより、プロセスが開始され、世界の状態には、その世界の内にある客体の状態及びインテリジェントエージェントの状態が含まれる。ステップ２で、インテリジェントエージェントが照会(query)される。ステップ３で、インテリジェントエージェントは、各世界の客体のための一連の(許容されたまたは可能な)法的行為を得るようになり、望ましく、各世界の客体が示すように照会される。
【０１２４】
前記方法は、２つの部分に分岐される。一番目の部分では、右側に示すように、各行為経路(action path)のために遂行される。ステップ４で、遂行される行為が模擬(simulated)される。ステップ５で、そのシミュレーションの効果(effect)がその世界のために決定され、ステップ６で、望ましく各世界の客体のために決定される。ステップ７で、各行為の効果のために等級が決定される。
【０１２５】
ステップ８で、行為の全体的に蓄積された補償のように、客体の状態及びそれによる世界の状態が決定される。ステップ９で、行為の効果がインテリジェントエージェントに対して模擬され、望ましく、ステップ１０で、各世界の客体とインテリジェントエージェントとの間の効果も考慮される。
【０１２６】
まず、前記方法の左側の部分に対して説明すると、ステップ１１で、望ましく、このような情報がすべて最高補償を有する行為経路を決定するのに利用される。ステップ１２で行為が生成される。ステップ１３で、望ましく、行為等級または補償に従って行為優先順位が設定される。ステップ１４で、図９Ａの場合のように、行為は、行為管理者でキューに配置される。ステップ１５で、その行為が優先順位に従って行為管理者によって考慮され、優先順位が一番高い行為が選択されてステップ１６で望ましく遂行される。
【０１２７】
次に、典型的な行為実行方法及び構造に対して説明する。図１０は、本発明による典型的な行為実行方法のシーケンスダイアグラムを示す。ハンドラ１０００は、矢印１で示すように、行為モジュール１００２に行為のための目標(goal)を伝送し、モジュール１００２は、ベース行為インターフェースを特徴とすることが望ましい。このベース行為インターフェースは、行為モジュール１００２がハンドラ１０００と通信を行うようにし、また、システムの他の客体と通信を遂行できるようにし、ここで、これらは、FloatingAgentApp(フローティングエージェントアプリケーション)１００６で示したインテリジェントエージェントによる追って実行のために行為を生成して配置(post)することが可能である。これらの行為は、行為管理者１００４によって管理される。
【０１２８】
行為管理者１００４は、行為客体を含む２個のキューを有している。そのうち、１つのキューは、実行準備完了状態キュー(ready for execution queue)であり、他の１つは、実行保留状態キュー(pending for execution queue)である。二番目(後者)のキューは、例えば、行為が生成されたときに使用されることができる。しかし、その行為の内部の状態は、保留状態であるので、その行為は、実行のために準備されない状態である。その行為が実行準備を完了させるように成熟すると、その行為は、前記実行準備完了状態キューに移動されることが望ましい。
【０１２９】
アプリケーション管理者１００８は、矢印２で示すように、行為を実行するためにFloatingAgentApp１００６と相互作用を行うことが望ましい。その後に、FloatingAgentApp１００６は、行為管理者１００４に次の行為を要求することが望ましく(矢印２．１)、その行為の自体は、行為モジュール１００２によって提供されることが望ましい(矢印２．２．１)。望ましく、行為は、ハンドラ１０００から行為管理者１００４への待機状態(enqueued)になる(矢印３)。望ましく、目標(goal)(及びそれによる優先順位の少なくとも一部分)は、ハンドラ１０００と行為モジュール１００２との間の通信によって各行為のために設定される(矢印４)。矢印５及び矢印６は、下記にさらに詳細に説明する“harakiri()”方法を示している。
【０１３０】
前述したように、その行為は、優先順位の手順に従って待機状態(queued)になることが望ましい。優先順位は、行為管理者１００４によって行為モジュール１００２のインターフェースに対する照会を通じて決定されることが望ましい。望ましく、行為の優先順位は、複数のパラメータを含む計算に従って決定される。例えば、望ましく、このパラメータには、前記生成される客体によって導出されるかまたは推論されたものとしての優先順位を含み、より望ましく、これは、行為の成功のための予測された確率(predicted probability)と、そのようなタイプの行為による過去の経験に従って(例えば、使用者の需要及び行為の成功に従って)決定されることが望ましい、そのようなタイプの行為の持続的な優先順位(persistent priority)と、使用者の性向(user preferences)に従って決定されることが望ましい目標優先順位(goal priority)などに基づいている。
【０１３１】
前記パラメータを管理するための１つの任意の計算は、次のようである。
【０１３２】
P(all) = P(action probability) * ((P(persistent priority) + P(action goal)/10))/2)
【０１３３】
優先権(優先順位)に基づいた行為実行に対する補完であって、各行為は、生存時間(Time To Live(ttl))という期間を参照可能(referable)に有し、この値ｔｔｌは、行為が前記準備完了状態キューに配置されたときとこの行為の終了時間の間に経過した実行時間の量を示す。行為が準備完了状態にあるが、このｔｔｌが終了されるときまで実行優先権(priority)を受信しない場合に、行為管理者１００４は、前記方法harakiri()を呼び出すことが望ましく、これは、その行為にそれが実行されないことを通知する。そのようなharakiri()の呼出しは、それぞれ基準値(threshold)に到達するときまで行為の優先順位を減少させることが望ましい。この基準値に到達された後には、持続的な優先順位が増加し始める。このようなモデルは、提案または実行が遂行されるが、使用者がその行為を中断して失敗された行為を処理するように動作する。前記持続的な優先順位は、行為の優先順位の計算に過去の経験を含ませることによって減少する。
【０１３４】
このような方法は、提案されるかまたは実行された行為が実行のときに特定の使用者の非明示的な性向にどのような方式にて適応されるかを示している。
【０１３５】
行為の持続的な優先順位が減少してその行為が動作しない場合に、例えば、使用者が変更を優先すると、それが除去されるかまたは(その他に可能には)、さらに動作することが許容される必要があるので、このようなモデルは、harakiri()メカニズムがなければ完全ではない。harakiri()の幾つの実行の以後に、その行為が動作するための優先順位をさらに回復することができる。
【０１３６】
前述したセクション(Sections)では、多様な行為及びメカニズムが本発明の適応型システムを通じて実行されることができるようにする基盤構造を提示している。これらの行為及びメカニズムに対して下記にさらに詳細に説明する。
【０１３７】
セクション２：感情型システム(Emotional System)
このセクションでは、本発明による感情型システムの望ましい実施形態を説明しており、特定の感情及びその感情の程度(intensities)に対する説明が含まれているが、これに限定されることではなく、望ましく、それらは、相互に結合されて全体的なムード(mood)を形成する。また、望ましく、前記感情型システムは、気持ちが変更されるようにするためのものであるだけではなく、例えば、変化率のような、そのような変化の１個以上の側面を任意に制御するためのメカニズムを含む。
【０１３８】
図１１Ａ乃至図１１Ｃは、本発明による典型的な感情型システムの具現例を説明するためのダイアグラムを特徴とする。図１１Ａは、本発明による感情型システムのための典型的なクラスダイアグラムを示し、一方、図１１Ｂ及び図１１Ｃは、本発明による感情型システムの動作のための典型的なシーケンスダイアグラムを示す。
【０１３９】
本発明による感情型システム１１００に対して、示すように、目標クラス１１０２は、インテリジェントエージェントの抽象的な目標(abstract goal)を示す。“目標(goal)”とは、インテリジェントエージェントが行為を遂行して成就しようとする何かを意味する。Goal１１０２は、その目標の状態とその移行可能性(chances of fulfillment)に関連した所定のイベントに基づいて感情を生成する機能を行う。
【０１４０】
Goal１１０２は、AICreature８０２と相互作用を行う(図８を参照して上述すること)。これらの相互干渉については、下記にさらに詳細に説明されている。要約して説明すると、人工知能エージェントは、目標を履行しようとし、目標が移行されたか否かを判断するためにはAICreature８０２の間の相互作用が必要であり、これは、さらに、インテリジェントエージェントの感情的な状態に影響を与える。
【０１４１】
感情的な状態のそれ自体は、クラスEmotionalState１１０４によって処理され、そして、これは、クラスEmotion１１０６と連結されている。Emotion１１０６の自体は、怒りクラスAngerEmotion１１０８及び喜びクラスJoyEmotion１１１０のような特定の感情のためのクラスと連結されていることが望ましい。EmotionalState１１０４もBehavioralPatternMapper(行動パターンマッパー)１１１２、すなわち、行動パターンを決定するクラスと連結されていることが望ましい。
【０１４２】
望ましく、プロアクティブユーザインターフェースがエージェントの感情を生成することは、エージェントの抽象的な目標に対する成功可能性(Likelihood Of Success；ＬＯＳ)が増加するかまたは減少するときに、または失敗可能性(Likelihood Of Fail；ＬＯＦ)が増加するかまたは減少するとき、感情型システムを通じて遂行される。その成功可能性が増加すれば、希望の感情(hope emotion)が望ましく生成される。成功可能性が減少すれば、絶望する感情(despair emotion)が望ましく生成される。失敗可能性が増加すれば、恐れる感情(fear emotion)が望ましく生成され、失敗可能性が減少すれば、喜ぶ感情(joy emotion)が望ましく生成される。
【０１４３】
目標の成功または失敗は、生成された感情と目標の状態に相当な影響を与える。目標が失敗すれば、絶望感が望ましく生成され、成功可能性が高ければ、挫折感(frustration)も望ましく生成される(その理由は、成功期待感が大きかったからである。)。
【０１４４】
目標が成功すれば、喜びが望ましく生成され、期待感と蓄積された成功感が高ければ、自尊心(pride)が望ましく生成される。
【０１４５】
Emotion１１０６は、メイジャー及びマイナータイプの２つの性質(property)を有する構造である。メイジャータイプは、マイナー感情(minor emotion)が属する上位レベルグループを記述するもので、望ましくは、POSITIVE_EMOTION(肯定的_感情)及びNEGATIVE_EMOTION(否定的_感情)を含む。マイナータイプには、望ましく、喜び(JOY)、希望(HOPE)、満足(GLOAT)、自尊心(PRIDE)、好み(LIKE)、怒り(ANGER)、憎悪(HATE)、恐怖(FEAR)、挫折(FRUSTRATION)、悩み(DISTRESS)、及び失望(DISAPPOINTMENT)が含まれる。感情の他の性質には、生成されるときに与えられたその程度(intensity)と、衰退方式(decay policy)(すなわち、感情の変化率)がある。
【０１４６】
感情の生成の以後の次のステップは、インテリジェントエージェントによって時間の経過に従って生成された感情を蓄積する感情的な状態(Emotional State)クラス１１０４によって遂行される。このクラスは、インテリジェントエージェントの現在の感情的な状態を定義する感情インスタンスの収集を示す。望ましく、現在の感情的な状態は、感情タイプの階層を保持することにより定義され、その感情タイプは、集計(aggregation)及び相関(correlation)によって一般化される。例えば、マイナー感情は、集まってPOSITIVE_EMOTIONのためのスコア及びNEGATIVE_EMOTIONのためのスコアになることが望ましく、これら２つの分類は、GOOD／BAD MOOD(よい／悪い機嫌)に相関することが望ましく、これは、インテリジェントエージェントの全体的なムードを記述する。
【０１４７】
EmotionalStateクラス１１０４は、インテリジェントエージェントフローティングアプリケーションによって照会され(前述したモデルで生成され、衰退されて一般化された感情によって)、支配的な行動パターンが変化する度に、インテリジェントエージェントは、望ましくその感情的な状態を表現し、その行動パターンに従って行動する。任意にそして望ましく、インテリジェントエージェントは、テキスト通信エンジン(下記にさらに詳細に説明する。)、３次元アニメーション、顔の表情、２次元活動効果(animated effects)、及びサウンドのうちの１つ以上を利用してその感情的な状態を表現する。
【０１４８】
図１１Ｂは、本発明による感情型システムによって感情を生成するための典型的なシーケンスダイアグラムを示す。示すように、アプリケーション管理者５０２(図５を参照してさらに詳細に説明される。)は、矢印１で示すように、ステップをFloatingAgentApp(フローティングエージェントアプリケーション)１００６(図１０を参照してさらに詳細に説明される。)に伝送する。その後に、FloatingAgentApp１００６は、矢印１．１のように、目標クラス１１０２を照会することにより、失敗可能性(Likelihood Of Failure；ＬＯＦ)を決定する。そして、Goal１１０２は、その失敗可能性を決定し、新たな失敗可能性が以前に決定された失敗可能性より大きい場合には、矢印１．１．１．１のように、感情クラス１１０６に要請して恐怖が望ましく生成される。この恐怖の感情もEmotionalState１１０４との通信によって感情的な状態に追加される。
【０１４９】
次に、アプリケーション管理者５０２は、また他のステップ(矢印２)をFloatingAgentApp１００６に伝送し、これは、矢印２．１のように、さらに、Goal１１０２に照会して成功可能性(Likelihood of Success；ＬＯＳ)を決定する。続いて、Goal１１０２は、その成功可能性を決定し、その新たな成功可能性が以前に決定された成功可能性より大きい場合には、矢印２．１．１．１のように、感情クラス１１０６に要請して希望感が望ましく生成される。この希望の感情も矢印２．１．１．２のように、EmotionalState１１０４との通信によって感情的な状態に追加される。
【０１５０】
矢印３は、FloatingAgentApp１００６にまた他のステップを伝送するアプリケーション管理者５０２を示すもので、これは、行為の実際の成果に従って感情の決定を要請する。その行為が失敗し、最後の成功の確率が０．５のような所定の因数より大きければ(これは、成功を期待したことを意味する。)、FloatingAgentApp１００６は、矢印３．１．１．１のように、Goal１１０２がEmotion１１０６によって生成された絶望感を有するようにする。この絶望的な感情も矢印３．１．１．２のように、EmotionalState１１０４との通信によって感情的な状態に追加される。また(望ましくは、成功期待感とは無関係に)、行為が失敗した場合には、矢印３．１．２のように、Emotion１１０６によって悩みが望ましく生成される。この悩みの感情も、矢印３．１．３のように、EmotionalState１１０４との通信によって感情的な状態に追加される。
【０１５１】
次に、アプリケーション管理者５０２は、また他のステップ(矢印４)をFloatingAgentApp１００６に伝送し、これは、矢印４．１のように、目標１１０２にメッセージを伝送することにより、実際に成功に基づいて感情を更新するようになる。続いて、望ましく、目標１１０２は、矢印４．１．１のように、楽しみが感情クラス１１０６に対する要請によって望ましく生成されるようにする。この楽しみの感情も、矢印４．１．２のように、EmotionalState１１０４との通信によって感情的な状態に追加される。
【０１５２】
実際に成功度が予想より大きい場合には、Goal１１０２は、望ましく、矢印４．１．３．１のように、自身感が感情クラス１１０６に対する要請によって生成されるようにする。この自身感も矢印４．１．３．２のように、EmotionalState１１０４との通信によって感情的な状態に追加される。
【０１５３】
図１１Ｃは、本発明による感情型システムによって感情を表現するための典型的なシーケンスダイアグラムを示す。このような表現は、使用者オプション(preferences)によって左右されることが望ましい。アプリケーション管理者５０２は、ステップ(矢印１)をFloatingAgentApp１００６に伝送することにより感情的な表現を開始させ、これは、矢印１．１のように、インテリジェントエージェントの行動パターンに対してbp_mapper１１０８に問い合わせる。支配的な行動(dominant behavior)が変更されれば、FloatingAgentApp１００６は、要請をbp_display１１１０に伝送して行動パターンを設定する(矢印１．２．１)。bp_display１１１０は、感情の実際表示を制御する。そうすると、FloatingAgentApp１００６は、行為が行為管理者１００４に対するメッセージに待機状態(enqueue)になるように要請する(矢印１．２．２)。
【０１５４】
アプリケーション管理者５０２は、また他のステップ(矢印２)をFloatingAgentApp１００６に伝送し、これは、その行為が行為管理者１００４に対するキュー(矢印２．１)から除去され、その行為がbp_display１１１０によって行われるように要請する。
【０１５５】
下記表は、エージェントが獲得した補償スコアに対して、等級別にエージェントが行動可能な動作の内容を規定する非限定的な例である。
【０１５６】
【表１】
2005085274.tif 000003
【０１５７】
この例において、エージェントは、座り、眠り、クンクン嗅ぎ、吠え、悲しさ、及び幸福などの基本動作は、獲得した補償スコアに無関係に行動できる。エージェントのレベルは、補償スコアが＋２００点を超過するときにさらに高い段階になり、−２００点を超過すると、さらに低い段階になるようにできるが、レベル変化の基準になる補償スコアは、これとは異なって定めることができる。エージェントの基本レベルを３等級に定めた場合、前記例を挙げた基本動作と幸福２、思索、走り、及びジャンプなどの動作を取ることができる。エージェントの補償スコアが＋２００点になると、エージェントのレベルは４等級になり、エージェントは、基本動作とダンス２、走り、ジャンプ、及び飛びなどの動作を取ることができる。各等級が許容する動作のうちのどのような動作を取るかは、前述した行為選択システムが決定し、それぞれの動作に従う感情表現は、感情型システムが制御する。エージェントは、このような動作及び感情表現とともに、後述する使用者との通信に基づいた感情表現を行う。
【０１５８】
セクション３：使用者との通信(Communication with the User)
このセクションでは、本発明による使用者との通信のための通信システムの望ましい実施形態に対して説明しており、これには、テキスト通信、オーディオ通信、及びグラフィック通信が含まれ、これらに限定されることではない。ただ説明するための目的で限定する意図なく、テキスト通信は、そのようなタイプの通信の一例で記述した。このセクションで説明する使用者との通信は、エージェントの提案、使用者に対する情報提供、またはエージェントの感情表現に使用されることができるが、これに限定されない。
【０１５９】
図１２は、本発明によるテキスト通信のための典型的なシーケンスダイアグラムを示す。テキストエンジン１２００は、所定のイベントに関連してインテリジェントエージェントによって伝達されることができるテキストを生成する機能を遂行する。テキストエンジン１２００は、望ましく予め決定され、フィラー(fillers)のためのプレースホルダー(place holder)を含むテンプレート(templates)に従って短いフレーズ(phrase)または文章の自然言語生成を含むことが望ましい。そのテンプレートとフィラーとを結合することによって、テキストエンジン１２００は、そのテンプレートが属するイベントに関連する多い数のフレーズを生成するようになる。
【０１６０】
このようなフレームワークは、付加フィラーのように付加テンプレートが追加されることもできるので、新しく、そして／または変化する多いイベントまたは対象(subjects)のために任意に拡張されることができる。
【０１６１】
図１２に示すように、FloatingAgentApp１００６は、まず、望ましく、特定のイベントのためにテキストを生成せよとの要請を伝送することにより、テキストエンジン１２００と通信を遂行する(矢印１)。テキストエンジン１２００は、望ましく、このイベントに適合した複数のテンプレートからテンプレートを選択することが望ましい(矢印１．１)。また、テキストエンジン１２００は、望ましく、このイベントに適合した複数のフィラーからそのテンプレートのためのフィラーを選択することが望ましい(矢印１．２．１)。継続して、満たされたテンプレートは、さらにFloatingAgentApp１００６に伝達される。
【０１６２】
次に説明することは、インテリジェントエージェントが現在幸福な状態にある場合に、幾つの典型的でありかつ非限定的なテンプレートとフィラーとで気持ちの変化のイベントのためのテキストを生成する例である。任意に、前記テンプレートは、次の通りである。
【０１６３】
Happy template １(幸福テンプレート１)：       “%noun1 is %happy_adj2”
Happy template ２(幸福テンプレート２)：       “%self_f_pronoun %happy_adj1”
【０１６４】
任意に、前記フィラーは、次の通りである。
%noun1 = {“the world(世界)”,“everything(すべてのもの)”,“life(生活)”,“this day(今日)”,“the spirit(気持ち)”}
%happy_adj1 = {“happy(幸福な)”,“joyful(楽しい)”,“glad(うれしい)”,“pleased(満足らしい)”,“cheerful(愉快な)”,“in high spirits(上機嫌で)”, “blissful(この上なく幸福な)”,“exultant(大喜びの)”,“delighted(非常に喜ぶ)”,“cheery(活気付ける)”,“jovial(陽気な)”,“on cloud nine(天にも昇る心地よい)”} 
%happy_adj2 = {“nice(よい)”,“beautiful(すてきな)”,“great(すばらしい)”, “happy(幸福な)”,“joyful(楽しい)”,“ good(よい)”,“fun(愉快な)”}
%self_f_pronoun = {“I am(私は)”,“I'm(私は)”,“your intelligent agent(あなたのインテリジェントエージェント)”,“your agent friend(あなたのエージェントフレンド)”}
【０１６５】
下記に説明することは、テンプレートとフィラーとの組合せから得られた幾つのテキスト通信句(phrases)の例である。
【０１６６】
I'm cheerful(私は愉快である。)
the spirit is joyful(うれしい。)
I am exultant(私は大喜ぶ。)
life is beautiful(人生はすてきだ。)
life is good(人生はよい。)
I'm pleased(私は満足らしい。)
I'm jovial(私は気持ちがいい。)
I am joyful(私は楽しい。)
the world is joyful(世界は楽しい。)
I'm glad(私はうれしい。)
the spirit is joyful(うれしい。)
the spirit is happy(幸福である。)
the world is nice(世界はよい。)
I am happy(私は幸福である。)
【０１６７】
また他の非限定的な例として、受信を失敗した電話テンプレート(missed call template)が次のように構成されることができる。
【０１６８】
%user missed a call from %missed %reaction
【０１６９】
この例において、使用者の名前は%userのために使用され、その名前または(例えば、電話番号のような)他の識別子が%missedに入力され、%reactionは選択的なもので、例えば、失望を表現するもの(例えば、“私は悲しい”)のようなインテリジェントエージェントの反応のために使用される。
【０１７０】
このような例で示すように、テキストエンジン１２００は、受信を失敗した電話イベントからバッテリー不足のイベントに至る数多いイベントのために関連した文章を生成することができ、これにより、さらに豊富であり、さらに多く理解可能であるように、使用者が移動情報装置と相互作用を遂行することができる。
【０１７１】
図１２Ｂは、移動電話装置で、エージェントが“私は幸福だ(I am happy)”という感情を表現する非限定的な例を示している。
【０１７２】
例３：本発明と使用者の相互作用(USER INTERACTIONS WITH THE PRESENT INVENTION)
この例は、使用者と相互作用を行う本発明によるシステムの、任意のしかし望ましい、実施形態を説明するためのもので、代表的であり、非限定的であり、例示的な複数のスクリーンショット(screenshots)を参照して説明する。
【０１７３】
図１３は、本発明の実施形態による生物またはアバター(インテリジェントエージェントの視覚的な表現)である“フローティングエージェント”の典型的なスクリーンショット(screenshot)を示す。
【０１７４】
図１４は、本発明の実施形態によるインテリジェントエージェントの仮想世界のための客体を選択するためのメニューの典型的なスクリーンショットを示す。
【０１７５】
図１５は、本発明の実施形態による使用者のオプション(preferences)だけではなく、使用者がエージェントの設定を構成でき、そして、変更できるようにする開始ウィザードアプリケーション(Start Wizard application)を示す。
【０１７６】
前記ウィザードで遂行される行為の例として、インテリジェントエージェントの感情型システムのための設定の決定、すなわち、“個性決定(Set Personality)”を挙げることができる。このとき、使用者は、生物の個性及び傾向を構成することができる。
【０１７７】
使用者は、熱意(Enthusiasm)、社交性(Sociability)、非社交的な行動(Anti_social behavior)、性質(Temper)(忍耐の水準)、憂うつ(Melancholy)、利己的な行動などの多様な性格(characteristics)の水準を増加させ、その反対を行って、その水準を減少させるために、右側矢印キーを押してその生物の設定を任意にそして望ましく決定することができる。
【０１７８】
使用者は、例えば、手助けをどれくらい速く受けることができるのかを決定するために、使用者のオプションを望ましく設定することができる。これらオプションのうちの幾つの非限定的な例には、通信(そのエージェントが通信する程度)、entertain_user(使用者を_楽しませること)(使用者と遊ぶエージェントの制御)、entertain_self(自分を_楽しませること)(一人で遊ぶエージェントの制御)、preserve_battery(バッテリー_保存)(バッテリーの寿命延長)、及びtransparency_level(透明度_水準)(生物の透明度の水準)などが含まれる。
【０１７９】
また、使用者は、その開始ウィザードで使用者の身の上情報(User Details)を望ましく設定し、その使用者の身の上情報には、使用者の名前、誕生日、及び性別などが含まれ、これらに限定されることではない。本発明の任意の実施形態によれば、前記誕生日の値は、使用者間の相性可能性(konghup possibility(Korean“konghup”means marital harmony as predicted by a fortuneteller；韓国語の“クンハップ”とは、占い師が予言した琴瑟を意味する。)；ここでは、相性可能性が対人関係によい占星術パターン(favorable astrology pattern)で定義されることができるのであろう。)を有するハイブリッド(hybrid)を生成できる能力を意味するもので、相性オプション(konghup option)は、日付及び星占い(horoscopes)に対する適切なテーブルに従って構成される。)を決定するので、ハイブリッドＳＭＳにおいて重要である。
【０１８０】
また、使用者は、生物の身の上情報(Creature Details)も望ましく設定することができる。
【０１８１】
前記生物が行えるアニメーションタイプには、歩き(walking)、座り(sitting)、匂い嗅ぎ(smelling)、飛び(flying)、及びジャンプ(jumping)などが任意に含まれ、これらに限定されることではない。
【０１８２】
本発明を限定された個数の実施形態を利用して説明したが、本発明に対する多い変更、修正、及び他の応用が行われることができる。
【図面の簡単な説明】
【０１８３】
【図１】本発明による学習モジュールの例を示す概略ブロック図である。
【図２】プロアクティブユーザインターフェースを利用するための本発明によるシステムの例を示す概略ブロック図である。
【図３】本発明によるプロアクティブユーザインターフェースシステムの具現例を示す図である。
【図４】本発明による適応型システムの具現例を示す概略ブロック図である。
【図５Ａ】本発明によるアプリケーション管理システムの例を示す概略ブロック図である。
【図５Ｂ】本発明によるアプリケーション管理システムの例を示すシーケンスダイアグラムである。
【図６Ａ】移動情報装置のオペレーティングシステムを通じて１つ以上の行為を遂行するために、本発明による適応型システムに必要な基盤構造(infrastructure)の例を示し、これに対する本発明によるシーケンスダイアグラムの例を示す図である。
【図６Ｂ】移動情報装置のオペレーティングシステムを通じて１つ以上の行為を遂行するために、本発明による適応型システムに必要な基盤構造(infrastructure)の例を示し、これに対する本発明によるシーケンスダイアグラムの例を示す図である。
【図７Ａ】典型的なイベントを示すもので、そのイベントが移動情報装置(移動情報装置のオペレーティングシステムを通じて)と本発明のシステムとの間の相互作用によって処理される方法を示す図である。
【図７Ｂ】典型的なイベントを示すもので、そのイベントが移動情報装置(移動情報装置のオペレーティングシステムを通じて)と本発明のシステムとの間の相互作用によって処理される方法を示す図である。
【図７Ｃ】典型的なイベントを示すもので、そのイベントが移動情報装置(移動情報装置のオペレーティングシステムを通じて)と本発明のシステムとの間の相互作用によって処理される方法を示す図である。
【図８Ａ】インテリジェントエージェントの構成例を示す図である。
【図８Ｂ】インテリジェントエージェントの動作に対するシーケンスダイアグラムの例を示す図である。
【図９Ａ】本発明による行為を選択するための２つの方法を示す図である。
【図９Ｂ】本発明による行為を選択するための２つの方法を示す図である。
【図１０】本発明による行為遂行(action execution)の例を示すシーケンスダイアグラムである。
【図１１Ａ】本発明による典型的な感情型システムの具現例を説明するためのダイアグラムを特徴とする図である。
【図１１Ｂ】本発明による典型的な感情型システムの具現例を説明するためのダイアグラムを特徴とする図である。
【図１１Ｃ】本発明による典型的な感情型システムの具現例を説明するためのダイアグラムを特徴とする図である。
【図１２Ａ】本発明によるテキスト形式の通信のための典型的なシーケンスダイアグラムである。
【図１２Ｂ】移動電話装置でエージェントが感情を表現する非限定的な例を示す図である。
【図１３】本発明の実施形態による生物またはアバター(インテリジェントエージェントの視覚的な表現)である“フローティングエージェント”の典型的なスクリーンショットを示す図である。
【図１４】本発明の実施形態によるインテリジェントエージェントの仮想世界のための客体を選択するためのメニューの典型的なスクリーンショットを示す図である。
【図１５】本発明の実施形態によるエージェントの設定を使用者が構成及び変更を遂行することができるようにする開始ウィザードアプリケーションを示す図である。
【符号の説明】
【０１８４】
１００  学習モジュール
２００  システム
２０２  オペレーティングシステム
２０４  インターフェース部
２０６  ソフトウェアアプリケーション
【図１】
2005085274.tif 000004
【図２】
2005085274.tif 000005
【図３】
2005085274.tif 000006
【図４】
2005085274.tif 000007
【図５Ａ】
2005085274.tif 000008
【図５Ｂ】
2005085274.tif 000009
【図６Ａ】
2005085274.tif 000010
【図６Ｂ】
2005085274.tif 000011
【図７Ａ】
2005085274.tif 000012
【図７Ｂ】
2005085274.tif 000013
【図７Ｃ】
2005085274.tif 000014
【図８Ａ】
2005085274.tif 000015
【図８Ｂ】
2005085274.tif 000016
【図９Ａ】
2005085274.tif 000017
【図９Ｂ】
2005085274.tif 000018
【図１０】
2005085274.tif 000019
【図１１Ａ】
2005085274.tif 000020
【図１１Ｂ】
2005085274.tif 000021
【図１１Ｃ】
2005085274.tif 000022
【図１２Ａ】
2005085274.tif 000023
【図１２Ｂ】
2005085274.tif 000024
【図１３】
2005085274.tif 000025
【図１４】
2005085274.tif 000026
【図１５】
2005085274.tif 000027