(57)【要約】【課題】本発明は、プロアクティブユーザインターフェース(proactive user interface)とそのシステム及び方法に関し、特に、移動情報装置とともに使用するためのユーザインターフェースとそのシステム及び方法に関する。【解決手段】どんなタイプの演算装置にも任意に設置されることができる(またはその装置を制御し、そして／または、その装置に関連できる)プロアクティブユーザインターフェースである。プロアクティブユーザインターフェースは、使用者の行動に応じて、演算装置が選択できる予めプログラムされた多様なパターン及び／または特定の使用者との以前の経験に基づいて使用者に能動的に提案する。例えば、メニューまたはその一部を変更し、表示する異なるメニューを提供し、そして／または、タッチスクリーン機能を変更するなど表示部の少なくとも一部のアピアランス(appearance)を変更することによってその提案を任意に行うことができる。このような提案は、音声によって任意に行われることができる。【選択図】図１
2005085256.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)になるものであり、その結果に応じて、知識ベースに対する修正がその学習アルゴリズムから出力されるものであろう(ここには、例えば、補強学習、バッチ学習、及びサポートベクトルマシーンなどが含まれる。)。
【００１０】
人工知能ソフトウェアを具現した幾つの非限定的な例には次のようなものが含まれる(下記例は、すべて“An Artificial Intelligence: A Modern Approach (人工知能：最新方法)”、S. Russell and P. Norvig (eds), Prentice Hall, Pearson Education Inc., NJ, USA, 2003に記載されている。)。
【００１１】
自律プレイニング及びスケジューリング(Autonomous planning and scheduling)：米国の航空宇宙局(National Aeronautics and Space Administration；ＮＡＳＡ)の遠隔エージェントプログラムは、宇宙船のための動作のスケジューリングを制御する最初の機内搭載自律プレイニング(on-board autonomous planning)プログラムになった。遠隔エージェントは、地上から特定の高水準の目標から計画を生成し、その計画が遂行されるにつれて宇宙船の動作を監視した(問題が発生するに従ってその問題を検出、診断、及び復旧を遂行する。)。
【００１２】
ゲームプレイニング(Game playing)：ＩＢＭのディープブルー(Deep Blue)は、世界チャンピオンを勝った最初のコンピュータプログラムになった。
【００１３】
自律制御(Autonomous control)：ＡＬＶＩＮＮコンピュータビジョンシステムは、車線に沿って車の進行が保持されるように運転するように訓練された。ＡＬＶＩＮＮは、以前の訓練運行(training runs)での経験に基づいて運転することに一番よい方向を計算する。
【００１４】
診断(Diagnosis)：確率論的解析(probabilistic analysis)に基づいた医療診断プログラムは、多様な医療分野で専門の水準で遂行が可能であった。
【００１５】
物流計画(Logistics planning)：１９９１年ペルシャ湾の危機の間に、米軍は、ＤＡＲＴと呼ばれる“動態分析及び再計画ツール(Dynamic Analysis and Replanning Tool；ＤＡＲＴ)”を配置して運送のために自動化された物流計画及びスケジューリングを遂行した。
【００１６】
ロボット工学(Robotics)：多い外科医が超微細手術を行うとき新たなロボット補助器(assistant)を利用する。ＨｉｐＮａｖは、患者の内部に対する解剖(anatomy)の三次元モデルを生成するためにコンピュータビジョン技術を利用し、ヒップ取替え補助物(hip replacement prosthesis)の挿入を案内するためにロボット制御を利用するシステムである。
【００１７】
言語理解及び問題解決(Language Understanding and problem solving)：ＰＲＯＶＥＲＢは、可能なワードフィラー(possible word fillers)における制約条件と、過去パズルの多いデータベースと、多様な情報ソースを利用して人間よりもクロスワードパズル(crossword puzzle)を上手で解決するコンピュータプログラムである。
【００１８】
ソフトウェア用遺伝的アルゴリズム及び進化アルゴリズムのための研究も行われた。このようなソフトウェアの１つの例が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)が取り扱われるようにすることも望ましい。
【００３０】
前記プロアクティブユーザインターフェースのまた他の任意のしかし望ましい機能には、使用者に対する教育機能が含まれる。使用者に移動使用者装置(mobile user device)の機能に対して知らせるために、そのような教育が任意に遂行されることができる。例えば、使用者が誤った選択を入力してその装置を正しく操作できないと、前記教育機能は、使用者がその装置を正しく使用する方法を学習できるように助けることが望ましい。しかし、前記教育機能が少なくとも１つの非装置関連対象(non-device related subject)に対して使用者に命令(instruction)を提供できることがさらに望ましい。前記教育機能の好適な実施例によると、任意にそして望ましく(より望ましくは、フレキシブルアプリケーションフレームワーク(flexible application framework)を通じて)、複数の対象に対して(または非装置関連対象(non-device related subject)を変更することによって)命令が提供されることができる。
【００３１】
本発明の任意の(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)”が提供されることもできる。
【００３７】
そのようなインテリジェントエージェントは、任意に携帯電話の操作者に多様なビジネス／プロモーションの機会を提供するのに役に立つこともできる。任意にそして望ましく、前記エージェントは、携帯電話上のソフトウェアの設置及び駆動を遂行するのに役に立つこともでき、これは、新たな産業分野に該当する。例えば、任意にエージェントは、ソフトウェアを正しくダウンロードして駆動させるために必須的な移動情報装置の適切な形態とそれ以外の具体的な事項を決定するのに役に立つこともできる。
【００３８】
任意にそして望ましく、インテリジェントエージェントは、使用者に移動情報装置の自体にある多様な機能を動作させる方法、例えば、メッセージの送信または受信、またはアラムを利用するなどの方法を教示することにより使用者を教育させることもできる。さらに詳細に説明するように、そのような教育機能は、任意に移動情報装置の外部の情報／機能に対して使用者に教示するように拡張されることもできる。望ましく、そのような教育機能は、ネットワーク内での複数のエージェント間の通信によって向上されることにより、ネットワーク上のエージェントの間に分布されている情報をエージェントが獲得することができる。
【００３９】
任意にそして望ましく、エージェントのための決裁(支払い)は、定期使用料の支払い(subscriptions)方式にて行われることができ、またはその代わりに使用者のプレペイドカードの残金に課され、そして／または月末に使用者に請求される行為(actions)を通じて任意にエージェントに“支給(feed)”されることができる。
【００４０】
従って、本発明の多様な実施例によると、多くの相互に異なる相互作用が可能である。このような相互作用のうちには、アバターまたはそれ以外のキャラクタまたは使用者のパーソニフィケイション(personification)と装置の使用者との間の相互作用と、アバターまたはそれ以外のキャラクタまたはパーソニフィケイションを通じて装置を駆動するための装置と装置の使用者との間の相互作用と、アバターまたはそれ以外のキャラクタまたはパーソニフィケイションを通じた通信(情報交換)によって、それぞれの装置を利用した二人の使用者間の相互作用と、任意に使用者間のまたはエージェントと使用者との間の何の情報交換もなく、２つの装置の間にそれぞれのインテリジェントエージェントを通じた相互作用のうちいずれか１つ以上が含まれる。前記相互作用または可能な相互作用は、本発明の実施例に従って決定され、これについては、下記にさらに詳細に説明する。
【００４１】
本発明は、演算装置、そして／または、例えば、携帯電話のような移動情報装置の相対的に制限された環境から利益を得るようになるが、その理由は、そのような環境の変数がすでに知られているからである。そのような装置は、例えば、携帯電話網のようなネットワークを通じて通信を遂行しても、それでもやはり前記環境の変数は予め決定されることができる。現在、演算装置は、使用者の受動的かつ直接的な操作でもカスタマイズ化が許容されないか、それがほぼ許容されない包括的インターフェース(generic interface)のみを提供している。
【００４２】
“ソフトウェア”という用語は、ハードウェアによって動作するフレームワークまたは命令語を任意に含むこともできるという点に留意されたい。
【００４３】
本発明は、プロアクティブユーザインターフェースに関するもので、どんな形態の演算装置にも任意に設置されることができる(または、そうではない場合に、その装置を制御でき、そして／またはその装置に関連することができる)。プロアクティブユーザインターフェースは、使用者の行動に応じて演算装置が選択できる多様な予めプログラムされたパターン及び／または特定の使用者との以前の経験に基づいて使用者に能動的に提案できる。表示部の少なくとも一部の外観を変更することにより、例えば、その一部またはメニューを変更し、表示するための異なるメニューを提供し、そして／またはタッチスクリーン機能を変更するなどによって前述した提案が任意に行われることができる。また、そのような提案は、音声によって任意に行われることもできる。
【００４４】
プロアクティブユーザインターフェースは、前述したように、オペレーティングシステムを含んでいる演算装置のために実現されることが望ましい。このようなインターフェースは、任意にそして望ましく、使用者とオペレーティングシステムとの間の通信のためのユーザインターフェースを含む。また、望ましくインターフェースは、ユーザインターフェースとの使用者の相互作用の少なくとも１つのパターンを検出し、検出されたパターンに従ってユーザインターフェースの少なくとも１つの機能を事前行動的に変更するための学習モジュールを含む。これにより、プロアクティブユーザインターフェースは、使用者の要請を予測して演算装置の所望する機能を選択するとき使用者に役に立つことができる。
【００４５】
任意にそして望ましく、ユーザインターフェースと使用者の以前の相互作用のうち少なくとも１つに従って決定されたパターン、及び予め決定されたパターン、またはその組合せでなされた群から少なくとも１つのパターンが選択される。第１パターンタイプは学習された行動を表現し、第２パターンタイプは任意にプログラムされることができるか、そうでなければ予め決定されることができ、これは、特に、特定の演算装置が使用者によって始めに使用される場合使用者を助けるためのものである。第３パターンタイプはこのような２つの要素を組み合わせるようになり、パターンが使用者の行動に従って少なくとも部分的に(完全にではない)決定されることができるようにし、例えば、パターン選択は、複数の規則に従って、そして／または可能な世の環境状態及び／または装置及び／またはユーザインターフェースの状態の制限的な定義に従って任意に案内されることができる(より具体的であることは、下記説明を参照する。)。
【００４６】
ユーザインターフェースは、グラフィック表示を特徴的な要素として有しており、そのグラフィック表示のうち少なくとも１つの機能がパターンに従って事前行動的に変更されるようにすることが望ましい。例えば、任意にそして望ましく、グラフィック表示のうち少なくとも一部が変更されることができ、より望ましくは、検出されたパターンに従って表示するメニューを選択して表示することによってこのような変更が行われることができる。任意に、このメニューは、例えば、メニューを“遂行中(on the fly)”に生成するために複数のメニューオプションから１つのメニューを構成することによって選択されることができる。
【００４７】
ユーザインターフェースは、追加的にまたはその代わりに音声表示を特徴にして、ユーザインターフェースの少なくとも１つの機能を変更することが演算装置によって生成された少なくとも１つの可聴音を変更することを含むようにすることもできる。
【００４８】
任意にそして望ましく、プロアクティブユーザインターフェースは、本発明の方法に従って実現されることができ、これは、望ましく使用者と演算装置との間のユーザインターフェースを通じたプロアクティブ相互作用のために実現される。前述した方法は、ユーザインターフェースと使用者との少なくとも１つの相互作用に従って使用者行動のパターンを検出するものと、そのパターンに従ってユーザインターフェースの少なくとも１つの機能を事前行動的に変更することを含む。
【００４９】
本発明の他の実施例によると、適応型システムを含む移動情報装置が提供される。前述したユーザインターフェースのように、この装置も使用者との以前の経験及び／または予めプログラムされたパターンに依存する。しかし、任意にそして望ましく、そのような適応型システムは、現在ＰＤＡからの特定の基本機能を含むこともある、例えば、携帯電話のような移動情報装置の環境及び機能内での駆動により限定される。
【００５０】
望ましく、前記適応型システムは、オペレーティングシステムを特徴的な要素として備えた移動情報装置とともに動作する。このオペレーティングシステムは、任意に内蔵型システム(embedded system)を含むことができる。移動情報装置は携帯電話を任意に含むことができる。
【００５１】
望ましく、適応型システムは、移動情報装置と使用者との複数の相互作用を分析することにより使用者の行動を分析することができ、より望ましく、その後に、適応型システムは、少なくとも１つのすでに決定されたパターンと複数の使用者の相互作用を比較してその予め決定されたパターンがユーザインターフェースの少なくとも１つの機能を変更することに関連するか否かを分かる。その代わりにまたは追加的に前記分析は、以前に検出された使用者行動の少なくとも１つのパターンと前述した複数の使用者の相互作用を比較することを含むことができ、このとき、前述した以前に検出された使用者行動のパターンは、ユーザインターフェースの少なくとも１つの機能を変更することに関連する。
【００５２】
任意に、ユーザインターフェースの機能は、移動情報装置によって可聴音を生成することを含むことができ、これは、より望ましく、着信音(ring tone)、アラム、及び受信メッセージ音のうちの少なくとも１つからなる群から選択される。その代わりにまたは追加的に、これは、移動情報装置による画像表示と任意に関連することができる。前記画像表示は、例えば、メニューを表示することを任意に含むことができる。
【００５３】
かならずそういうものではないが、適応型システムは、移動情報装置の自体によって任意に駆動されることができる。または、移動情報装置がネットワークに連結された場合、適応型システムは、少なくとも部分的にネットワークから移動情報装置に伝送された命令に従って任意に駆動されることもできる。これを実現するためには、適応型システムの少なくとも１つの動作と関連したデータが移動情報装置の以外の位置に貯蔵されることが望ましく、このとき、前記位置は、ネットワークを通じてアクセスが可能である。
【００５４】
本発明の好適な実施例によると、適応型システムは、受信された入力情報及び以前に得られた知識に従って分析を遂行する学習モジュールも含む。任意に(optionally)、このような知識は使用者の行動から以前に得られたものであることもでき、そして／または特定の移動情報装置の適応型システムと通信を遂行する他の適応型システムから伝達されたものであることもできる。任意にそして望ましく、適応型システムは、人工知能アルゴリズム、機械学習アルゴリズム、または遺伝的アルゴリズムのうちの１つ以上に従って使用者の行為に適応される。
【００５５】
本発明のまた他の任意の、しかし、好適な実施例によると、移動情報装置網を通じて移動情報装置と使用するための１個以上のインテリジェントエージェントが提供され、これには、エージェントが人間使用者と情報交換(通信)を可能にするアバターを含むことが望ましい。従って、望ましく、アバターは使用者との相互作用のためのユーザインターフェースを提供する。また、インテリジェントエージェントは、ネットワークを通じて移動情報装置の少なくとも１つの相互作用を制御するためのエージェントを含むことが望ましい。この実施例は、移動情報装置網を通じて連結されたそのような複数のアバターを任意に含むことができる。
【００５６】
本発明の望ましい実施例によれば、アバター及びエージェントは、すべて移動情報装置によって駆動される。その代わりにまたは追加的に、移動情報装置は、第２エージェントを有する少なくとも１つの他の移動情報装置と通信を遂行してその第１及び第２エージェントが相互に通信が可能になることが望ましい。任意に、このような通信は直接行われることができるが、例えば、２個の移動情報装置の間で赤外線通信を通じて直接行われることができ、またはその代わりにまたは追加的に、移動情報装置網を通じて行われることができる。例えば、そのネットワークが携帯電話網である場合、通信は、標準通信プロトコル、ＩＰ／ＨＴＴＰ、及びＳＭＳなどを利用して任意に遂行されることができる。
【００５７】
また、任意にそしてより望ましく、各移動情報装置の使用者はそれらそれぞれのアバターを通じて通信できることが望ましい。このような通信は、ロールプレイニングゲームのようなゲームと任意に関連されることができる。
【００５８】
前述した適応型システムと類似して、アバター及びエージェントのうち１つまたはそのすべては、少なくとも部分的に移動情報装置網から移動情報装置に伝送された命令に従って任意に動作されることができる。また、任意に、アバターまたはエージェントのうち少なくとも１つ以上の動作に関連したデータは、移動情報装置以外の位置に貯蔵され、前記位置は、移動情報装置網を通じてアクセスが可能である。
【００５９】
本発明の好適な実施例によると、アバターのアピアランス(appearance)の少なくとも１つの特性が、例えば、使用者の命令に従って任意に変更できることが望ましい。任意にそしてより望ましく、アバターのアピアランスの複数の特徴が予め定義されたアバター皮膚に従って変更可能である。その皮膚は、使用者によって任意に予め決定される。“皮膚”によって前記複数の特徴が１つのセットとしてともに変更されることを意味し、このとき、前記セットは前記皮膚を形成するものである。このような実施例がネットワーク-アクセス可能な位置に貯蔵されたアバターに関連したデータの少なくとも一部を有する以前の実施例と結合される場合には、使用者は、同一のアバターを相互に異なる電話機に任意に移動させることができ、そして／または相互に異なる理由のために、例えば、パーティーまたはそれ以外のセレブレイション(celebration)のような特別の場合のために、アバターのアピアランスをカスタマイズ化できる。もちろん、このようなものは、ただ例を挙げるためのもので、どんな方式にも限定的であるものを意味しない。
【００６０】
本発明のまた他の任意の、しかし、好適な実施例によると、アバターのアピアランスの少なくとも１つの特性は自動化された進化アルゴリズム、例えば、遺伝的アルゴリズムに従って変更できることが望ましい。進化アルゴリズムは、使用者のためにアバターのパーソナライゼーション(personalization)を提供するための方法の１つの非限定的な例である。パーソナライゼーションは、１個以上の特性または皮膚(特性グループ)に対する直接的な使用者の選択を通じて任意に行われることもできる。そのようなパーソナライゼーションは、少なくとも部分的にはアバターで、それに従って移動情報装置で使用者の感情的な表現を向上させるので望ましい。
【００６１】
本発明のまた他の任意の、しかし、好適な実施例によると、移動情報装置網は、移動情報装置の物理的な位置を決定するための位置決定器(locator)を含んで、望ましく、使用者がエージェントの行為を通じてその物理的な位置に対する情報を要求することができる。また、望ましく、位置決定器は、移動情報装置の物理的な位置に対して相対的な第２物理的な位置を決定することができるので、使用者がエージェントの行為を通じて第２物理的な位置に対する情報を要求することができる。
【００６２】
任意にそして望ましく、使用者は、商業的位置、医療的位置、及び、例えば、消防署または警察署などの公共安全位置(public safety location)でなされた群から任意に選択されることができるカテゴリーに従って第２物理的な位置の選択及び要請を遂行することができる。
【００６３】
例えば、使用者が商業的位置を探そうとするときには、使用者は、ストーア及びショッピングモールなどの名前によって任意にそのような位置に対する要請を入力し、またはその代わりにストーアのタイプなどの商業的位置のタイプに従って、または、例えば、“ショッピングモール”などの一般カテゴリーに従っても、そのような位置に対する要請を入力するようになる。任意に、一致する商業的位置は、前記エージェントの前記行為に従って移動情報装置にメッセージを伝送することができ、任意にそして望ましく、これには、広告またはクーポンまたはその組合せのうちの少なくとも１つが含まれる。望ましく、エージェントは、そのようなメッセージに対して、またはそのすべてのタイプのメッセージに対して、少なくとも１つの判断基準に従ってメッセージをフィルタリングし、より望ましく、その判断基準は、アバターを通じて使用者によって入力され、そして／またはメッセージの受信のときに使用者が以前に１つの行為に応答してアバターによって学習される。そして、アバターは(全体的にまたは部分的に)メッセージ自体を見せない場合には、少なくともメッセージに対する情報を使用者に任意に見せることができる。
【００６４】
また、望ましく、使用者は、アバターを通じて第２物理的な位置に対する情報を要求する。
【００６５】
もちろん、商業的位置は、かならず物理的な位置である必要はなく、例えば、任意に、移動商取引(m-commerce)などのための仮想の商業的位置であることもでき、この場合、使用者は、アバターを通じて仮想の商業的位置と通信するようになる。望ましく、使用者は、アバターを通じて仮想の商業的位置で購入することができる。また、使用者は、アバターをさらにインターフェースとして利用することが望ましいが、エージェントを利用することにより仮想の商業的位置を任意に探索することもできる。前述したように、アバターは、仮想の商業的位置から購入したアクセサリーを任意に受信することもできる。
【００６６】
また、移動情報装置がソフトウェアを受信できれば、エージェントは、移動情報装置上のソフトウェアの設置のうちの少なくとも一部を行うことが望ましい。使用者は、ソフトウェアの環境設定(configuration)のうちの少なくとも一部を遂行するためにアバターとの相互作用を任意に遂行することもできる。
【００６７】
技術的な具現(technical implementation)においては、本発明は、使用者にごくパーソナルデバイス(メモリ、データ処理容量、スクリーン表示の大きさ、及び解像度など)の制限されたシステムの上で動作できることが望ましい。例えば、望ましく、前記装置は、携帯電話などの移動情報装置であり、これは、かならず携帯性及び使用上利便性のために適応されるので、前記装置は、前述した制限のうちの１つ以上またはそのすべてを有することができる。本発明の具現形態は、このような特性の組合せに適合であるようにすることが望ましい。従って、使用者の望ましいパーソナライゼーション(personalization)及び“個人的な気持ち(personal feel)”を保持しつつも、前記装置自体の制限を解決するために、次のような多様な解決方案を提案するようにする。これら解決方案は、ただ例に過ぎなく、どんな方法を使っても限定的に解釈するように意図されたものではないことに留意されたい。
【００６８】
例１：プロアクティブインターフェース - 一般
望ましく、本発明のプロアクティブユーザインターフェースは、使用者の行動に応じて演算装置が選択できる多様な予めプログラムされたパターン及び／または特定の使用者との以前の経験に基づいて、使用者に能動的に提案するために、どんなタイプの演算装置も制御することができ、そして／またはその装置にも関連されることができることが望ましい。このような提案は、表示部の少なくとも一部のアピアランスを変更することにより、例えば、メニューまたはその一部を変更し、表示するための相互に異なるメニューを提供し、そして／またはタッチスクリーン機能を変更することにより、任意に行われることができる。その提案は、音声によって任意に行われることもできる。
【００６９】
プロアクティブユーザインターフェースは、オペレーティングシステムを含む前記のような演算装置のために実現されることが望ましい。任意にそして望ましく、前記インターフェースは、使用者とオペレーティングシステムとの間の通信のためのユーザインターフェースを含んでいる。望ましく、インターフェースは、使用者のユーザインターフェースとの相互作用の少なくとも１つのパターンを、例えば、学習モジュールの動作を通じて検出することができ、従って、望ましく、検出されたパターンに従って使用者のインターフェースの少なくとも１つの機能を事前行動的に変更することができる。従って、プロアクティブユーザインターフェースは、使用者の要請を予想することができ、これに従って、演算装置の所望の機能を選択するにおいて使用者に役に立つことができる。
【００７０】
特に、使用者が所望するものとその行動を学習するものに関連して、このようなタイプのプロアクティブ行動は、プロアクティブインターフェースの部分に所定のタイプの学習能力を必要とする。そのような学習能力は、ソフトウェア客体の環境との相互作用及び(ソフトウェアによる)学習に関連する該当技術分野で公知されたアルゴリズムと方法論を通じて任意に提供されることができる。ソフトウェアがその行為を時間に従って向上させられるとき、そのソフトウェアを学習であるといえる。人工知能は、知能型行為選択(intelligent action selection)(推論；reasoning)を示す必要があり、これに従って、ソフトウェアがその環境(その“世界”)を探検して行為の可能性を発見できる能力を有することが望ましい。また、ソフトウェアは、世界の状態とそれ自体の内部状態を表現する能力を有することが望ましい。そして、ソフトウェアは、知能型行為(前記のような知識を利用して)を選択して行動できることが望ましい。
【００７１】
任意にそして望ましく、例えば、インターフェースの学習モジュールによる学習は補償(rewards)によって補強されることができ、このとき、学習モジュールは、環境の状態に応じて特定の行為を取るものに対して補償を受けるようになる。このような形態の学習は、所定の方式にて行動するように学習モジュールを訓練させることを含む。２以上の行動が許容されれば、学習処理過程は非決定的なものになって相互に異なる行動を生成することができる。プロアクティブユーザインターフェースに関連して、任意にそして望ましく、前述した補償は、例えば、提示された選択対象が使用者の選択に続くとき(提示された選択対象によって、例えば、プロアクティブユーザインターフェースによって提供されたものと異なるメニューを選択することにより、使用者が異なるセットの１個以上の選択を探そうとするときとは対照的に)を学習モジュールが検出するように引き起こすことなどを含む。プロアクティブユーザインターフェースが使用者の行動を正しく理解したことを示すもので、明確に、前記使用者インターフェースの提示事項を使用者が直接選択する比率が最大になるようにすべきである。
【００７２】
このような処理に役に立つために、学習モジュールによる学習は、例えば、次のような任意のしかし望ましい補強学習の核心特徴に従って補強されることが望ましい。
【００７３】
適応型学習処理(Adaptive learning process)−学習処理は反復的(iterative)であるので、それぞれの反復(iteration)に対して学習モジュールは、遂行する適切な行為を学習するようになる。環境での変化は行動での変化に続く。学習モジュールは、特定の行為を遂行するように訓練されることができる。
【００７４】
低いメモリ消費(Low memory consumption)−神経網またはＭＡＳなどの推論システムアルゴリズムは、環境状態及び内部状態が小さいセットの数値に減少するのでメモリの複雑度が低い。このようなアルゴリズムは、学習処理の間にさらに多いメモリを必要としない。
【００７５】
速い相互作用(Fast interaction)−任意に、それぞれの反復において、以前の反復での演算に基づいて行為が選択され、これにより、次の行為を選択するためには演算がほぼ遂行されない。使用者は、反応が速いプログラムを経験する。次の反復のための学習処理は、その行為が発生した後に行われる。
【００７６】
装置アイドルタイムの活用(Utilization of device idle time)−学習モジュールは、任意に、使用者との相互作用なく環境から自ら学習できるので、遊休演算装置時間(idle computational device time)が学習のために望ましく活用されることができる。
【発明の効果】
【００７７】
本発明は、現在の包括的(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)の感知用センサーまたは使用者の生物学変数を測定する他のすべての形態のセンサーを含むことができるが、それらに限定されることではない。
【００８４】
図２は、学習モジュール１００をさらに特徴としたプロアクティブユーザインターフェースを提供するための本発明によるシステム２００の典型的な実施例を示す。学習モジュール１００は、学習モジュール１００に関連し、そして／またはこれによって制御され、そして／またはこれを動作させる演算装置(図示せず)のオペレーティングシステム２０２と通信を遂行することが示されている。オペレーティングシステム２０２は、ユーザインターフェース２０４だけではなく、少なくとも１つの他のソフトウェアアプリケーション２０６の動作を制御することが望ましい(もちろん、そのような多いソフトウェアアプリケーションが任意に存在することができる。)。
【００８５】
使用者は、例えば、メニューから１つの選択対象を選択するようによりユーザインターフェース２０４を通じて通信を遂行する。オペレーティングシステム２０２は、このような通信情報が受信されてデータに翻訳(interpret)されるようにする。そして、望ましく、学習モジュール１００は、そのようなデータを受信して任意に命令をオペレーティングシステム２０２にさらに伝送して、例えば、ユーザインターフェース２０４の所定の要素(例えば、異なるメニューを提供することにより)を変更し、そして／またはソフトウェアアプリケーション２０６を動作させる。そして、使用者は、ユーザインターフェース２０４を通じて応答を行い、この応答から、望ましく、学習モジュール１００は、その行為(学習モジュール１００によって伝送された命令)が適切であるか否かを学習するようになる。
【００８６】
図３は、本発明によるプロアクティブユーザインターフェースシステム３００の具現例を概略的に示すブロック図である。示すように、システム３００は、望ましく３レベル構造を特徴的な要素として有し、このとき、アプリケーションレイヤーは、人工知能(ＡＩ)フレームワークによって支援され、これは、続いてホストプラットフォーム演算装置(“ホストプラットフォーム”で示される。)と通信を遂行するようになる。
【００８７】
任意にそして望ましく、アプリケーションレイヤーは、複数の相互に異なるアプリケーションを特徴的な要素として有しており、その中で、MutateApp(ミューテーションアプリケーション)３０２、PreviousApp(以前のアプリケーション)３０４及びTeachingApp(教育アプリケーション)３０６のような幾つの非限定的な例を示す。
【００８８】
望ましく、MutateApp３０２は、システム３００内のミューテーションを制御し、そして／または開始させるために呼び出される(invoke)。前述したように、学習モジュールは、指示されたまたは半指示された進化(directed or semi-directed evolution)を通じて、例えば、遺伝的アルゴリズムを通じてその行動を任意に変更することができる。 望ましく、MutateApp３０２は、進化を通じてそのようなミューテーションを制御し、そして／または開始させる。進化の実施例に対しては下記にさらに詳細に説明するのであろう。
【００８９】
望ましく、PreviousApp３０４は、システム３００の以前の状態または(学習モジュールの状態のような)その一部分が現在の状態の代わりに呼び出されることができるようにする。さらに具体的に、本発明が進化的アルゴリズムで具現されるものであれば、PreviousApp３０４は、使用者を以前の進化的なステップに復帰させる。さらに一般的に、システム３００は状態保存型(stateful)であるので、以前状態に任意に復帰することができ、このとき、そのような状態のヒストリーは望ましく保持される。
【００９０】
TeachingApp３０６は、例３の説明の以後にさらに詳細に説明されたが、演算装置を動作させる方法に対して、及び／またはその演算装置の外部の異なる対象に対して使用者に教示するように任意に実現されることができる。TeachingApp３０６は、後述する人工知能基盤構造とともに個人向けの学習経験を提供する教育アプリケーションを提供する。望ましく、TeachingApp３０６は、教育タイプ、教育方法、新たな情報を伝達する比率(rate)、補強活動(reinforcement activities)、及び練習活動(practice activites)などを特定の使用者の個別要求に合うように調整することが可能になっている。また、任意に、TeachingApp３０６は、例えば、グループまたは教室の学習状況で相互に異なる複数の使用者のために性能を調整することもできる。
【００９１】
TeachingApp３０６は、人工知能フレームワークレイヤーを通じて具現されることができる包括的(generic)アプリケーションの１つの非限定的な例であるだけである。
【００９２】
人工知能フレームワークレイヤーの自体は、ユーザインターフェースがプロアクティブ方式にて行動できるようにする１個以上の構成成分を含んでいる。任意にそして望ましく、フレームワークは、演算装置の状態及び仮想世界の状態を決定し、また、その２つの状態間の関係も決定するためのDeviceWorldMapper(装置世界マッパー)３０８を含む。望ましく、DeviceWorldMapper３０８は、仮想世界の状態とその装置の状態を決定するために、例えば、EventHandler(イベントハンドラ)３１０からの多様なイベントから入力を受信する。
【００９３】
望ましく、DeviceWorldMapper３０８は、入力データを分析するために、ＡＩ(人工知能)／ＭＬ(Machine Learning)３１２との通信を遂行する。また、望ましく、ＡＩ／ＭＬモジュール３１２は、多様な刺激に対応してシステム３００の行動を決定し、例えば、ユーザインターフェースの相互に異なる形態の行為に対する使用者の反応からシステム３００が学習できるようにする。システム３００の行動は、進化モジュール３１４に従って、任意にそして望ましく向上されることもできる。
【００９４】
そのような進化の実施例は、移動情報装置上のインテリジェントエージェントの使用に関連することが特に望ましいが(例えば、以下の説明を参照する。)、演算装置のためのどんなプロアクティブユーザインターフェースと任意に使用されることもできる。望ましく、この実施例は、プロアクティブユーザインターフェースがアバターを特徴的な要素として有する場合またはアバターと結合されて使用される場合に利用される。
【００９５】
望ましく、進化は、１個のセットの遺伝的アルゴリズムによって模擬(simulation)される。これらアルゴリズムは、遺伝子(genes)、染色体(chromosomes)、及び表現型(phenotypes)について、プロアクティブインターフェースの特性(そして、特にアバターのアピアランス)を記述することに基づいている。遺伝子は、例えば、特定の形態のレッグなどの発現水準(a level of expression)を有する分別性(discrete property)がある。発現水準は、そのようなレッグの個数であることができる。
【００９６】
表現型は、遺伝子の外的表現に該当し、例えば、レッグの遺伝子は、レッグの長さまたはレッグのサイズにおいて異なる表現型を有することができる。
【００９７】
遺伝子は、ミューテーション過程を任意に経ることができる。このような過程(望ましくは特定の確率(probability)に従う過程)によって遺伝子の１個以上の変数(parameter)が変更されて異なる新たな表現型が生成される。
【００９８】
染色体は、ともに機能する１つのセットの遺伝子に該当する。染色体は、異なる生物からの同一の形態の染色体とハイブリッド(hybrid)、または交雑育種(cross breeding)されてその遺伝子の父母染色体の組合せで新たな染色体を生成する。
【００９９】
この方法論は、プロアクティブユーザインターフェースの行為の進化及び／または視覚的進化(例えば、アバターのアピアランス)を模擬するために包括的な基盤構造(generic infrastructure)を生成するのに役に立つ。これらアルゴリズムは、機敏さ及び体力などの非視覚的な行動の特性のために任意に利用されることもできる。このような効果による結果として、例えば、動きが速い生物になることができ、またはさらに能率的な生物になることができる。これらのアルゴリズムは、前述した遺伝子／遺伝型／表現型の構造に従って記述されることができる特性のうちのいずれのためにも任意に利用されることができ、これに従って、例えば、行動的遺伝子(behavioral gene)は、本発明によって利用される人工知能(ＡＩ)アルゴリズムの行動を決定するようになる。
【０１００】
望ましく、このようなアルゴリズムの出力は、様々の可能な子孫アバター及び／またはプロアクティブユーザインターフェースを提供する。 
【０１０１】
遺伝的アルゴリズムは、遺伝的な子孫のうちのいずれが次世代として継続して保持されるようにするかを決定するために自然選択過程を使用する。このような選択過程は、使用者によって決定されることができ、または予め決定されることもできる。このような方式にて生物が興味のある進化行動を表示することができる。遺伝的アルゴリズムの構成(framework)は、目標または性格(goals or character)のような生物のそれ以外の非視覚的な特性を符号化(encode)する遺伝子を進化させるために利用されることができる。
【０１０２】
進化モジュール３１４は、例えば、MutateApp３０２の動作を通じてそのような進化を支援し、また、望ましくそれを管理する。
【０１０３】
このような相互に異なる人工知能タイプのアプリケーションとEventHandler３１０との間で、１個以上の相互に異なる低水準管理者(low level managers)は、相互に異なるイベントの受信及び取り扱い(処理)とシステム３００による相互に異なる行動を望ましく支援するようになる。 これらの管理者は、ActionManager(行為管理者)３１６、UIManager(UI管理者)３１８、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(ハイブリッドアプリケーション)５２０などが含まれ、これに限定されるものではない。これらのアプリケーションに対しては、図３を参照してより詳細に説明する。
【０１３１】
望ましく、MutateApp５１０は、適応型システムにおける、そして／またはユーザインターフェースとしての適応型システムを示すアバターのアピアランスにおけるミューテーションを制御し、そして／または開始させるために呼び出される。例１を利用して、前述したように、本発明の適応型システムは、指示されたまたは半指示された進化(semi-directed evolution)を通じて、例えば、遺伝的アルゴリズムを通じてその行動を任意に変更することができる。MutateApp５１０は、望ましく、そのようなミューテーションの制御及び／または開始を遂行する。
【０１３２】
望ましく、GeneStudioApp５１４は、使用者が１個以上の手動命令(manual commands)を通じて、指示され、そして／または、半指示されたミューテーションを実行できるようにする。例えば、使用者は、適応型システムに特定の入力を受信するとき特定のタスクシーケンス(task sequence)を遂行するように(アプリケーション管理システム５００を通じて)指示しようとすることができる。または、それが存在すれば、使用者は、アバターのアピアランスのうちの一部を直接変更しようとできるのであろう。本発明の望ましい実施例によると、適応型システムのそのような相互に異なる形態は、別個の“遺伝子”によって望ましく具現され、これは、使用者によって任意に変更されることができる。
【０１３３】
HybridApp５２０は、使用者が他の移動情報装置の適応型システムのような外部ソースから情報を受信して、その情報を使用者の移動情報装置にある既存の情報と統合しようとする場合、任意に呼び出されることができる。例えば、使用者は、他の移動情報装置のアバターとのハイブリッドアピアランス(hybrid appearance)を有するアバターを生成しようとすることができる。また、HybridApp５２０は、任意にそして望ましく、アバターの全体の進化的な状態に対する使用者の主要な制御を提供する。任意にそしてより望ましく、HybridApp５２０は、名前、性格、行動、及びアピアランスを任意に有することができるアバターの“生活(life)”特性に対して使用者に教示するのに利用されることができる。
【０１３４】
TeachingMachineApp５０８は、前記装置自体の使用に対する命令(instruction)を提供するものと任意に関連できるアプリケーションの例示的でありかつ非限定的な例であり、望ましくは、装置自体の直接的な動作と関連しない対象に対する命令を提供する。従って、TeachingMachineApp５０８は、その装置自体の使用以外の目的で、移動情報装置の上に提供されるアプリケーションの任意の例(optional example)を示す。
【０１３５】
TCWorldApp５２２は、インテリジェントエージェントを動作(run)させるアプリケーションであり、望ましくは、生物またはアバターのグラフィック表示とそのエージェントの知能型要素(intelligent aspects)の両方ともを制御する(この両方ともに対しては、下記でより詳細に説明する。)。
【０１３６】
本発明によるアプリケーションに対する他の非限定的な例に含まれるものには、ゲームがある。システム及び使用者が任意に相互作用をともに遂行できるゲームの１つの非限定的な例として“かくれんぼ(Hide-and-Seek)”ゲームがある。望ましく、“かくれんぼ”ゲームは、メニュー階層に生物またはアバターを“隠れる”ことによって行われ、望ましく、使用者は、少なくとも１つのサブメニューを横切ってアバターまたは生物を探すことにより、使用者がメニュー階層及び構造についてさらに多く学ぶことができるようにする。それ以外のそのような多様なゲームアプリケーションが本発明の権利範囲の内で具現可能である。
【０１３７】
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)を示すものである。
【０１６６】
図８Ｂは、本発明のインテリジェントエージェントと仮想世界との間の一連の相互作用の例を示す典型的なシーケンスダイアグラムである。このシーケンスは、インテリジェントエージェントの状態(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１１１０によって行われるように要請する。
【０２０４】
セクション４：使用者との通信(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は選択的なもので、例えば、失望を表現するもの(例えば、“私は悲しい”)のようなインテリジェントエージェントの反応のために使用される。
【０２１６】
このような例で示すように、テキストエンジン１２００は、受信を失敗した電話イベントからバッテリー不足イベントに至る数多いイベントのために関連した文章を生成でき、これにより、使用者は、移動情報装置とさらに豊かであり、さらに多く理解可能であるように相互作用を遂行できる。
【０２１７】
セクション５：ＳＭＳメッセージ及び通話のための適応型システム
このセクションは、本発明によるＳＭＳメッセージ及び通話を適応的に処理するための適応型システムの望ましい実施例に対して説明している。まず、本発明によるシステムで動作するための幾つの望ましいアルゴリズムに対する一般的な概要を説明し、その次に、通話処理、ＳＭＳメッセージ処理クラス、及びシーケンスダイアグラムに対して説明する。
【０２１８】
スマート対案番号(Smart Alternative Number；ＳＡＮ)
ＳＡＮアルゴリズムは、所定の電話の試みが失敗した後にかけられる可能性が一番高い対案電話番号を学習するために考案された。このアルゴリズムは、これらペアー(pair)を生成するように学習し、これに従って、新たな使用者の行動に対して動的に適応できる。これら関連対は、使用者による電話試みが失敗した後にかけられる番号を提案するために利用される。
【０２１９】
このアルゴリズムは、次のように任意に実現されることができる。すなわち、一番頻りに利用される項目を第１レイヤーに挿入し(任意に、その項目の頻度数が所定の基準値より大きくなると、そのような挿入が発生する。)、電話番号に対する関連対を望ましくはそのリスト上の対の頻度数に従って提案し、電話の成功または失敗を決定し、番号ごと決定された対のヒストリーに対するウィンドーを保持し、一番古いものは、任意に削除されることができるようにするなどによって実現されることができる。
【０２２０】
このアルゴリズムのための知識ベースは、対案(alternative)／後続通話(following phone call)のリスト及び／またはそれ以外の行われる行動を含む、各発信番号のための１つのフォレスト(forest)として任意に表現されることができる。各発信通話に対して、その次の通話は、一番目の通話が失敗し、二番目の通話が所定の期間の以内に遂行された場合に後続されるものと見なされることが望ましい。その後続する電話番号は、一番目の電話番号に対する後続電話番号のリストに追加される。そのリストがすべて満たされると、一番古くなった電話番号は望ましく忘れ去れる。 
【０２２１】
スマート電話帳管理者(Smart Phonebook Manager；ＳＰＢＭ)
ＳＰＢＭシステムは、移動情報装置の使用統計及び通話統計を利用して可能な連絡先の関係及び相互特性を学習するインテリジェントフォンブック(intelligent phonebook)システムの非限定的な例である。このシステムは、自動化された連絡先グループの生成及び自動化された連絡先の追加／削除などを含む(これに限定されない。)。幾つの新たな電話帳の機能を提供する。
【０２２２】
例えば、自動化されたグループ管理アルゴリズムは、使用者の使用方式に従って連絡先の電話番号を自動にグループ化できるようになっていることが望ましい。
【０２２３】
自動化された状態検出(Automated State Detection；ＡＳＤ)
移動情報装置は、ＡＳＤシステムによって、望ましく、使用者の現在の使用状態(例えば、ミーティング中、不在中)を決定して現在の状態に合うようにユーザインターフェース、サウンド、及び人工知能行動システムに対する変更を提案することが可能である(例えば、着信される電話に対してサイレントモード(silent mode)を動作させ、そして／または、自動に“ミーティング中”というＳＭＳ回信を伝送する。)。任意にそして望ましく、このシステムは、１個以上の生物学的センサーと通信を遂行するようになり、このセンサーは、任意にそして望ましく、使用者の生物学的状態及び／または使用者の移動などを感知するようになる。これらの付加センサーは、使用者から特定の入力を受信せず、そして／または使用者の現在状態に対して使用者に問わず、移動情報装置のために適応型システムが正しい状態を決定できるようにする情報を提供する。デバイスカメラ(device camera)によって撮影された画像もこのような目的に任意に使用されることができる。
【０２２４】
また他の任意の(optional)タイプのセンサーは、例えば、指紋分析及び／または他のタイプの生体認識情報を通じて使用者が特定の使用者を識別できるようにする。そのような情報は、保安上の理由で任意に使用されることもできる。
【０２２５】
ミーティングモードアドバイザー(meeting mode advisor)アルゴリズムは、使用者が妨害遮断モード(do-not-disturb mode)を管理するのに役に立つように設計される。このアルゴリズムは、使用者がミーティングモードにあり、妨害を受けたくない確率(使用者がそのモードを変更せず、電話を受けようとする確率の反対)を示す規則ベースを有している。このアルゴリズムの目的は、そのような変換(transitions)の管理を助けようとすることにある。
【０２２６】
望ましく、このアルゴリズムは、電話機の世界状態を決定し、また(例えば、使用者が現在電話ベルを停止し、その電話に応答しないなどの)、ミーティングモードが提案されなければならないと規則ベースが指示する時期を決定することにより、前記のような人工知能状態処理器を通じて動作する。また、望ましく、そのStateHandlers(状態ハンドラ)は、ミーティングモードが取り消さなければならないと指示できるその反対タイプのイベントに注意を注ぐようになる。
【０２２７】
図１３Ａ及び図１３Ｂは、それぞれ本発明による通話処理のための典型的なクラスダイアグラム及び典型的なシーケンスダイアグラムを示す。
【０２２８】
図１３Ａに示すように、通話処理クラスダイアグラム１３００は、SuggestCall(通話提案)クラス１３０４によるSuggestCall行為の生成を担当するCallStateHandler(通話状態ハンドラ)１３０２を特徴として有する。望ましく、CallStateHandler１３０２は、CallStartedEvent(通話開始イベント)１３０６、CallEndedEvent(通話終了イベント)１３０８、及びCallFailedEvent(通話失敗イベント)１３１０のような通話イベントに注意を注ぐ規則基盤アルゴリズムであり、そして、これらイベントのそれぞれは、CallEvent１３１２クラスと通信を遂行する。また、望ましく、CallStateHandler１３０２は、次のような２つの主な機能を担当する規則ベースを保有する。２個の主な機能のうちの１つは、機械学習(Machine Learning)として電話関連事項知識ベース(call associations knowledge base)を保有するものであり、他の１つは、使用者に通話する電話番号を提案するか否かに対する人工知能確率基盤推定(AI probability based inference)である。このような提案は、SuggestFollowingCall(後続通話提案)１３１４またはSuggestAlternativeCall(対案通話提案)１３１６によって処理されることが望ましい。
【０２２９】
通話イベント客体は、さらに移動情報装置のオペレーティングシステムのフック機能によって前記のようなイベントモデルを利用して生成される。その通話データには、可能であれば、生成されたイベント(電話番号、連絡先の名前、開始時間、及び期間(duration)など)に対する情報で満たされることが望ましい。
【０２３０】
通話提案クラス１３０４、１３１４、及び１３１６は、適応型行為モデルで記述されたベース行為インターフェースを具現する。これらクラスは、所定の通話が終了した後に後続通話を行うための電話番号を使用者に提案するか、または所定の通話が失敗した後に対案通話を行うための電話番号を使用者に提案する機能を行う。
【０２３１】
CallStateHandler１３０２は、通話イベントに注意を注ぎ、そのイベントをその規則ベースに従って分類する(規則ベース方式を利用した行為選択)。典型的な任意の通話提案規則ベースは、次のように与えられる。
１．通話が開始され、マークされた以前通話(prior call)がなければ、 → 通話を開始したものでマークする。
２．その通話が終了され、通話が開始されたものでマークされたら、 → 一番目の通話でマークする。
３．通話が開始され、その以前の通話が一番目の通話でマークされ、通話間の時間が後続通話基準値(following call threshold)より小さければ、 → 後続通話でマークする。
４．通話を後続するものでマークしたら → 知識ベースを更新する。
５．通話を後続するものでマークしたら → 通話を一番目の通話でマークする(これに従って、次の通話との比較のために現在の一番目の通話がリセットされる。)。
６．通話が失敗し、マークされた以前の通話が開始された通話でマークされたら → 通話を始めに失敗したものでマークする。
７．通話が開始され、以前の通話が始めに失敗したものでマークされ、通話間の時間が失敗通話基準値(failed call threshold)より小さければ → 対案通話でマークする。
８．対案通話でマークしたら → 知識ベースを更新する。
９．通話が終了し、終了通話以後の時間(time since end call)が提案後続通話基準値(suggest following call threshold)より小さく、後続通話を推論したら → 提案された後続通話行為(例えば、その通話の以後に取られる行為)を生成する。
１０．通話が失敗し、失敗した通話以後の時間が提案された代案通話の基準値より小さく、後続通話を推論したら → 提案された代案通話行為を生成する。
１１．最後のマークからの時間(time from last mark)が基準値より大きければ → すべての通話のマークを取り消す(unmark)。
【０２３２】
通話提案知識ベースは、ヒストリーウィンドー(history window)として任意にそして望ましく設計され、このとき、関連事項(associations)がそのサブジェクトのヒストリに発生事項(occurrences)として追加される。この場合、所定の連絡先に対する対案または後続通話のための関連したサブジェクトはその連絡先の自体であり、すべての関連した通話は、その対案通話または後続通話ヒストリーウィンドーに発生手順(occurrence order)によって望ましく配置される。
【０２３３】
例えば、連絡先の電話番号が０５４−５４５１９１である場合、ヒストリーウィンドーの内の通話関連事項は次のように任意に提供されることができる。
【０２３４】
【表１】
2005085256.tif 000003
【０２３５】
そのヒストリウィンドーサイズは、前記アルゴリズムが管理(または記憶)するようになっている関連事項(発生事項)の個数として前記アルゴリズムによって定義されることが望ましい。ヒストリーウィンドーがすべて満たされば、新たな発生事項がその真っ先に望ましく追加されて最後の発生事項は除去され、従って、ウィンドーは、その定義された大きさを超えない。その知識ベースはさらに最近の関連事項を優先にして、古い関連事項は除去されるので(忘れ去れ)、使用者パターンにおける変化に適応できるようになっている。
【０２３６】
知識ベースは、対案または後続通話を提案するのに十分ではなく、その理由は、よい提案が知識ベースから推論されるべき必要があるからである。望ましく、この推論アルゴリズムは、知識ベースに従って可能性が一番大きい関連事項ターゲットを決定するための単純確率基盤推論(simple probability based inference)である。次のようなパラメータを考慮すれば、
【０２３７】
Ｃ０ − 常数
Ｈ０(Ｃｉ) - 連絡先(Ｃｉ)がＣ０ヒストリーウィンドーで発見されることができる回数
Ｈｓｉｚｅ - ヒストリウィンドーサイズ
望ましく、前記方法の提案によれば、連絡先Ｃｉは次のようになる。
Ｐ(Ｃｉ) = Ｍａｘ(Ｈ０(Ｃｉ)／Ｈｓｉｚｅ)
【０２３８】
前述した例では、Ｃ０ = ０５４−５４５１９１である場合に、
Ｐ(０５２−５５２２１１)が最大であり、０．６である。
【０２３９】
推論過程は、％５０より大きい確率を推論できる場合にのみ、望ましくは、ヒストリーウィンドーがすべて満たされば、成功的なものと見なされる。
【０２４０】
図１３Ｂは、通話処理のための典型的なシーケンスダイアグラムを示す。示すように、EventDispatcher(イベント発送者)６０４(図６にさらに詳細に説明する。)は、通話イベントに対する通知をCallStateHandler(通話状態ハンドラ)１３０２に伝送し(矢印１)、継続して、これは、その規則ベースを評価する。関連事項をHistoryWindow(ヒストリーウィンドー)１３１８に追加せよとの要請が行われる(矢印１．１．１)。
【０２４１】
通話が終了され、または失敗されたイベントのために、EventDispatcher６０４は、通知をCallStateHandler１３０２に伝送し(矢印２)、続いて、これは規則ベースを評価する(矢印２．１)。関連事項をHistoryWindow１３１８に追加せよとの要請が行われる(矢印２．１．１)。HistoryWindow１３１８から可能性がある関連事項(probable association)を受信せよとの要請が行われる(矢印２．２)。この可能性がある関連事項は、例えば、通話する電話番号を示し、CallStateHandler１３０２からSuggestCall１３０４に伝送される(矢印２．３)。この行為は、行為管理者１００８によって待機状態になる(矢印２．４)。
【０２４２】
また他の任意のしかし望ましいアルゴリズムは、使用者が受信を失敗した電話(missed calls) 及び電話待機機能(call waiting function)を管理するのに役に立つ。このアルゴリズムは、受信を失敗した(電話を待機する途中に発生可能な)重要な電話を識別してインテリジェントコールバック(intelligent callback)を提案することに目標がある。このコールバックは、使用者によって(または知識ベースによって)重要なものとして識別された番号にのみ提案される。
【０２４３】
この知識ベースは、２つの可能な(補完的な)オプションに基づいている。第１オプションは明示的(explicit)なもので、この場合に、使用者は、拡張された住所録の領域内の他の情報と、遂行された(電話をかけた)後のその電話の重要性を指示する。第２オプションは、非明示的(implicit)なもので、その電話の頻度数とは異なる変数によって与えられる。
【０２４４】
このアルゴリズムは、コールバック番号が重要なものであり、使用者が一定の期間の間その電話をかけず、そして／または、その対象番号が電話をかけない場合コールバック(call back)を提案することができる。
【０２４５】
コンテンツ方式ＳＭＳ受信者の推測(Content-based SMS Addressee Inference；ＣＳＡＩ)
任意にそして望ましく、ＣＳＡＩアルゴリズムは、メッセージのコンテンツによってそのメッセージ受信者を予測するように考案された。このアルゴリズムは、望ましく、メッセージの特定の単語のパターンを識別してそれらを既存の住所録の連絡先と関連させるように学習する。この連絡先は、メッセージの作成完了のときにメッセージ目的地として提示される。
【０２４６】
このアルゴリズムは、１個以上の規則に従って任意に遂行されることができ、そして、この規則は、規則翻訳部(rule interpreter)によって翻訳される。適応型システムは(例えば、学習モジュールを通じて)、例えば、１０００単語のテーブルを学習することが望ましいのであろう。発信されるＳＭＳメッセージの内に現れる新たな単語はそれぞれそのリストに追加される。単語のそれぞれに対して、ＳＭＳ連絡先(すなわち、少なくとも１つのＳＭＳが伝送された連絡先)のそれぞれのための入力項(entry)が存在する。各単語／連絡先の入力項には、その連絡先に伝送されたＳＭＳメッセージでその単語が現れる回数が含まれ、望ましくは、各連絡先に伝送されたＳＭＳメッセージの個数もともに含まれる。
【０２４７】
このような推論メカニズムが動作するためには、望ましく、現在ＳＭＳメッセージにある各単語(Ｗ)と各連絡先(Ｃ)に対して、そのテーブルに与えられたＰ(Ｗ|Ｃ)と、また、そのテーブルから演算されたＰ(Ｃ)に基づいて確率Ｐ(Ｃ|Ｗ)が計算される。そして、現在、ＳＭＳメッセージ内の単語の個数によって正規化された用語の個数が追加される。
【０２４８】
前記ＳＭＳ処理方法は、ＳＭＳメッセージコンテンツを分析し、“伝送する”受信者アドレスを推論することを目的とする。任意にそして望ましく、前記アルゴリズムは、次のような発見的方法(heuristics)を利用するが、このためにメッセージを特定の受信者に伝送する場合、さらに現れる特定の指示単語(specific indicating words)を利用する。
【０２４９】
発信されるＳＭＳメッセージに現れる新たな単語がそれぞれそのリストに追加される。単語のそれぞれに対して、ＳＭＳ連絡先(すなわち、少なくとも１つのＳＭＳが伝送された連絡先)のそれぞれのための入力項が存在する。各単語／連絡先の入力項には、その連絡先に伝送されたＳＭＳメッセージでその単語が現れる回数が含まれる。また、望ましくは、各連絡先に伝送されたＳＭＳの個数が貯蔵される。新たに伝達されたＳＭＳメッセージをパーシング(parsing)した後にその単語テーブルを更新することにより学習が望ましく発生する。
【０２５０】
人工知能推論方法は、前述したように、単純な確率によって望ましく行われる。
【０２５１】
図１４Ａ及び図１４Ｂは、それぞれ本発明によるＳＭＳメッセージ処理クラス及びシーケンスダイアグラムの典型的な非限定的な例を示している。
【０２５２】
図１４Ａは、本発明による典型的なＳＭＳメッセージ処理クラスダイアグラム１４００を示している。SMSstateHandler(ＳＭＳ状態ハンドラ)１４０２クラス及びSuggestSMStoSend(ＳＭＳ伝送提案)１４０４クラスを示す。SMSstateHandler１４０２は、ＳＭＳを伝送する状態に対する情報を受信する機能を行い、そして、SuggestSMStoSend１４０４は、ＳＭＳを伝送する受信側アドレス(電話番号)を提案するために接続される。
【０２５３】
図１４Ｂは、このような提案を行うための典型的なシーケンスダイアグラムを示している。EventDispatcher６０４(さらに詳細な説明のために図６を参照する。)は、ＳＭＳイベントに対してSMSstateHandler１４０２に通知を伝達する(矢印１)。SMSstateHandler１４０２は、知識ベースをパーシングすることによって開始され(矢印１．１．１)、その後に連絡先に対する情報のために要請がSMSdata１４０６に伝送される。ＳＭＳは、矢印１．１．１．２のように、望ましくトークン化され(例えば、パーシングされ)、提案された連絡先アドレスがＳＭＳdata１４０６に要請される(矢印１．１．１．３)。
【０２５４】
提案された連絡先アドレスが得られると、SMSstateHandler１４０２は、行為を望ましく生成し、これは、SuggestSMStoSend１４０４に伝送され(矢印１．１．２．１．１)、継続してこの行為に対する目標が設定され(矢印１．１．２．１．２)、行為管理者１００８(さらに詳細な説明のために図１０を参照する。)に伝送することによりその行為が待機状態になる(矢印１．１．２．１．３)。
【０２５５】
まず、ＳＭＳが伝送されれば、通知がEventDispatcher６０４からSMSstateHandler１４０２に伝送され(矢印２)、SMSstateHandler１４０２は、その状態を処理し(矢印２．１)、この処理には、知識ベースを更新し(矢印２．１．１)、新たなＳＭＳデータをその内に挿入すること(矢印２．１．１．１)が望ましく含まれる(この処理は、SMSdata１４０６と通信しつつ行われる。)。
【０２５６】
セクション６：メニュー用適応型システム
このセクションでは、本発明によるメニューの適応的処理のための適応型システムの望ましい実施例に対して説明する。まず、メニューを構成して配列すると、再配列するためのアルゴリズムの一般概要に対して説明し、その次に、典型的なメニュー処理クラスダイアグラム(図１５)に対して説明する。
【０２５７】
この適応型メニューシステムは、自動的な推論を利用することによって移動情報装置のオペレーティングシステムが提供されたヒューマンユーザインターフェースまたはメニューシステムをカスタマイズする能力に基づいている。グラフィックユーザーインターフェースを備えたすべてのオペレーティングシステムは、メニュー、ウィンドー、または、それに相当するユーザインターフェースシステムを有している。オペレーティングシステムのうちの多くが特定の使用者のためのメニューシステムまたはウィンドーシステムを受動にまたは管理的(administrative)にカスタマイズするオプションを有している。前記システムは、ユーザインターフェースを自動にカスタマイズできる可能性を提供する。自動的な行為が前記システムによって生成される(使用者の承認でまたは自動的に可能である。)。前記システムは、メニューシステムフレームワークを利用して正しいカスタマイズ行為を推論し、また、オペレーティングシステムが提供されたカスタマイズオプションを自動的に利用する能力を提供するために必要な知識ベースと抽象化(abstractions)を提供する。
【０２５８】
インテリジェントメニューアセンブラ(Intelligent Menu assembler；ＩＭＡ)
ＩＭＡアルゴリズムは、特定の使用者オプション(preferences)及び移動情報装置の使用方式(usage)に基づいてユーザインターフェース(ＵＩ)メニューを動的に生成するように考案された。このアルゴリズムは、望ましく、電話使用の特性を識別し、このような特性に基づいて特別な個人用メニューを形成する。
【０２５９】
そして、このアルゴリズムは、このようなメニューを構成するための２個の他のアルゴリズムを特徴的な要素として任意に有することができる。自動メニュー短縮キーメニューアルゴリズムは、選好し、そして、一番頻りに利用されるアプリケーション及びサブアプリケーションに対する自動短縮キーまたは短縮手段(shortcut)を生成することに目的がある。このアルゴリズムは、それらの個人用短縮キーメニューを設定するために使用者の多くが使用しなかった手動方式を向上させるのに重点を置いている。知識ベース及び学習のためにPhoneWorldMapper(電話機世界マッパー)は、アプリケーション及びサブアプリケーションの実行を蓄積し、その知識をどんなアプリケーション／サブアプリケーションに個人用メニューオプションのメニュー短縮キーを与えて使用者のために設定すべきであるかを推測するために使用する。
【０２６０】
このような短縮キー推論は、次のような効用関数(utility function)に基づいて行われる。すなわち、短縮キーによって節約される必要なクリック量(一般メニューのクリック数(マイナス)短縮キー上のクリック数)によって加重された(weighted)使用されるアプリケーションの頻度数に基づいて行われる。最高効用(highest utility)のアプリケーション／サブアプリケーション／スクリーンは、使用者にその提案と短縮キーの構成を提供する。
【０２６１】
また他のこのようなメニューアルゴリズムは、その自動メニュー再構成アルゴリズムを任意に含むことができる。このアルゴリズムが目標としていることは、メニューシステムにおいて、パーソナライズの不足さにある。多くの使用者は、電話機のユーザインターフェースをそれぞれ異なる方式にて使用するが、同一のメニューシステム及びインターフェースを有している。このアルゴリズムは、使用者の特定の使用方式を学習し、それに従ってメニューシステムを再構成することにより、さらに望ましく、完全な適応型メニューシステムを提供する。
【０２６２】
このような知識ベースのために、PhoneWorldMapper(電話機世界マッパー)は、特定のターゲットに対するクリック数を節約するのみならず、アプリケーション及びサブアプリケーションの実行を蓄積する。この電話機世界マッパーは、アイテムを同一のメニューに追加するとき使用される階層的視野(hierarchical view)を与えることであろう。メニューの内では、そのアイテムがこれらの効用性によって構成される。
【０２６３】
望ましく、前記メニューシステムは(前記で定義された変数により)、使用者に最適であるか否かが周期的に評価され、任意に、推論された最上のオプションに従ってその評価に後続して再構成される。
【０２６４】
図１５は、適応型メニューシステムクラスダイアグラム１５００を示している。このクラスダイアグラムは、PhoneWorldMapper１５０２クラス及びPhoneWorldNode(電話機世界ノード)１５０４クラスを通じて必要な抽象化を提供する。PhoneWorldMapper１５０２は、メニュー及びユーザインターフェースシステムをマッピングする機能を行う。このマッピングは、PhoneWorldNode１５０４とともに行われる。PhoneWorldNode１５０４は、グラフ構造のメニュー、サブメニュー、またはメニューアイテムを示す。
【０２６５】
望ましく、PhoneWorldMapper１５０２は、PhoneWorldNode１５０４客体のグラフを含み、このエッジは、このノード間のメニュー転移部(menu transitions)に該当し、バーテックス(vertice)は、マッピングされたメニューとアイテムである。使用者がメニューシステムの内でナビゲートするときごと、PhoneWorldMapper１５０２は、PhoneWorldNode１５０４客体の客体グラフを通じてついて行き、それを使用者の正しい位置にポイントする。使用者が所定のアイテムを活性化させるときごと、現在ノードは、その行為及びカウント活性化を望ましく記録する。PhoneWorldMapper１５０２は、本発明が各メニューアイテム間の(クリックにおける)距離を算出する能力及びルートからのその距離を算出する能力を有するようにし、これは、前記メニューシステムのグラフィック表現のために可能である。従って、PhoneWorldMapper１５０２は、メニューにおけるアイテム間の距離と、メニュー活性化と、メニューナビゲーションとメニュー構造に対する抽象化(abstraction)を提供する。
【０２６６】
また、望ましく、クラスダイアグラム１５００は、メニューを通じて短縮キーを提案するためのSuggestShortcut(短縮キー提案)１５０８及びメニューイベントを処理するためのMenuEventクラス１５０６を含む。望ましく、PhoneWorldMapper１５０２は、メニューと関連して使用者の個人的な使用パターンを説明するためのMyMenuDataクラス１５１０と通信を行い、また、前述したグラフのためのメニューノードを提供するためのPhoneWorldMenuNode(電話機世界メニューノード)１５１２と通信を遂行する。PhoneWorldLeafNode(電話機世界リーフノード)１５１４は、また、前述したグラフを支援するためにPhoneWorldNode１５０４と通信を行う。
【０２６７】
前記のようなシステムは、適応型ユーザインターフェースアルゴリズムのレベルを提供する。第１カスタマイズレベル(first customization level)は、メニューアイテム活性化短縮キー提案アルゴリズムを望ましく特徴として有する。このアルゴリズムは、PhoneWorldMapper１５０２を利用してアイテムの活性化を監視する。このアルゴリズムは、メニューアイテムの活性化の平均回数を監視する。所定のタイプアイテムに対する複数の活性化が基準値を超え(任意に平均を超え)、短縮キー活性化の距離がその自分のアイテム活性化に必要なものより短ければ短縮キーが望ましく提案される。使用者は、このような自動化された短縮キーから利得を得るようになるが、その理由は、それによって使用者が所望の機能を動作させるために遂行する動作回数が減少するからである。このようなフローに基づいて、行為の生成は、その知識ベースとしてPhoneWorldMapper１５０２を使用する規則基盤方式(rule based strategy)である。このようなアルゴリズムは、使用者の特定の短縮キーを自動にカスタマイズするようになる。
【０２６８】
第２カスタマイズレベルは、メニューアイテム再配列を望ましく含む。このアルゴリズムは、PhoneWorldMapper１５０２を使用してアイテムの活性化を監視し、その活性化回数に従って特定のメニュー内のアイテムを再配列して一番頻りに使用されるアイテムを始めに見えるようにする。このアルゴリズムは、使用者の特定の使用方式に適応することによりメニューアイテムの順序をカスタマイズする。このアルゴリズムは、メニューアイテムを再配列するために、以前のアルゴリズムと同一の活性化の知識ベースを望ましく使用する。
【０２６９】
第３カスタマイズレベルは、メニュー構成(composition)を望ましく含む。このアルゴリズムは、メニューとアイテムの使用を監視して一番多く使用されたアイテムを選択する。これらアイテムのために、このアルゴリズムは、PhoneWorldMapper１５０２グラフ内で一番目共通ノードを選択する。このノードはメニューになり、一番多く使用されたアイテムはそのノードのメニューアイテムになる。このメニューは、メニューシステムで一番目に配置されることが望ましい。また、これによって、PhoneWorldMapperグラフがそのメニューシステムでの変化を示す新たなグラフに変更される。望ましく、このアルゴリズムは、アイテム活性化の降順にメニューを反復して構成する。
【０２７０】
セクション７：ゲーム用適応型システム 
このセクションでは、本発明によるゲーム用適応型システムの望ましい実施例に対して説明する。本発明による典型的なゲームクラスダイアグラムが図１６に示されている。
【０２７１】
任意にそして望ましく、インテリジェントエージェントの目標のうちの幾つは、使用者を楽しませるためのものである。また、任意に前記インテリジェントエージェントは、例えば、情報交換(communication)のために個人的な目標(personal goals)を有している。
【０２７２】
これら目標の状態を管理するために、望ましく、前記システムは、図１６のゲームクラスダイアグラム１６００の内に２個のクラス(UserBoredStateHandler(使用者の退屈した状態ハンドラ)１６０２及びCreatureStateHandler(生物状態ハンドラ)１６０４を望ましく有している。望ましく、この２個のクラスは、すべて規則基盤方式に従って行為を生成する。このクラスによって保持される規則は、それらによって表現される目標に関する。前記２個のクラスは、すべて状態変化及び規則の評価のための入力方法としてイベントモデルを利用する(すなわち、２個がすべてイベントハンドラである。)。
【０２７３】
Idle(遊休)行為として(すなわち、その他は関与しない場合)、インテリジェントエージェントは、MoveAction(移動行為)(図示せず)を望ましく選択し、また、これは、例えば、アニメーション及び音などと関連して使用者の性向(preferences)に適応されることもできる。
【０２７４】
望ましく、MoveActionは、まず、MOVE(移動)状態とREST(休息)状態との間で選択するようになる。それぞれの状態において、MoveActionは、確率(probability)を基礎にしてその状態のための適切なアニメーションを選択する。その確率は、各オプションに対して５０％に初期化される。
【０２７５】
使用者の入力は、現在選択された対(状態及びアニメーション)に対する確率に影響を与える。使用者がその状態の確率に悪い入力を与えると、現在のアニメーション及びこの状態の確率が減少し、よい入力を与えると、その確率は減少するようになる。望ましく、この確率は、最小値及び最大値に対する所定の基準値を有しているので、所定の状態またはアニメーションが決して選択されることができない可能性を防止するようになる。
【０２７６】
また、CommAction１６０６を示している。この行為は、通信(情報交換)を行うための目標によって誘導され、インテリジェントエージェントの通信状態と使用者の表現力及び通信性向に従って、CreatureStateHandler１６０４によって任意に生成される。例えば、インテリジェントエージェントが一定の時間の間使用者と通信を遂行せず(状態ハンドラの規則ベースに従って)、現在が使用者との通信を試みるのによい時間であれば通信行為が望ましく生成される。この行為は、振動またはサウンドを引き起こすことができ、また、可能であれば、テキスト通信が任意に使用されることもできる。
【０２７７】
任意にそして望ましく、行動表示行為は感情型モデルによって動作するようになり、感情的な状態が変化するときごとインテリジェントエージェントは(テキスト、サウンド、２次元及び３次元アニメーションなどを任意に使用して)、新たな感情的な状態を望ましく表現する。
【０２７８】
GameAction(ゲーム行為)１６０８は、フローティング(floating)アプリケーション空間上でゲームを開始させる。この行為は、仮想人工知能世界アプリケーションから１個以上の客体を任意に選択する。インテリジェントエージェントは客体を探索し、それに従って行動する。例えば、ボールが選択されることができ、ボールが選択されると、インテリジェントエージェントは、そのボールを移動させるかまたは蹴ることができ、使用者は、そのボールを新たな場所に移動させることもできる。その客体のうちのいずれのものは、包装されたユーザインターフェース客体(wrapped user interface objects)になることができる(人工知能世界アプリケーションに記述されている。)。望ましく、このゲーム行為は、ただ、それがインテリジェントエージェントであり、使用者の補強なく可能な行動の選択を決定する特徴を有する。
【０２７９】
HideAndSeek(かくれんぼ)行為１６１０は、メニューシステムと、異なるホストスクリーンで使用者の位置を追跡するためにPhoneWorldMapperの能力を利用する。望ましく、インテリジェントエージェントは、メニューツリーで位置を選択して隠し、その後に、使用者は、インテリジェントエージェントを探すときまでまたは探索時間が終わるときまでメニューシステムをナビゲートする。使用者がインテリジェントエージェントを探した(または探すことができない)後に、望ましく、メニューシステムでの現在位置に対する何そして／または現在スクリーンに対して役に立つ何を使用者に知らせるメッセージがポストされる。このような方式にて、使用者は、このホストプラットフォームで利用可能な特徴と他のオプションに対して学習できる。望ましく、役に立つツールチップ(tool-tips)は、そのクラスの客体インスタンスによって記述された特定のノードに関連したツールチップを含むPhoneWorldNodeを通じてインテリジェントエージェントによって利用可能である。
【０２８０】
望ましくは、SuggestTmTrivia１６１２は、使用者が関心を持っていると表現したトーピックに対して使用者にトリビアゲーム(trivia game)を任意に提供できる。
【０２８１】
セクション８：教育システム(Teaching System)
このセクションでは、本発明による教育システムの望ましい実施例に対して説明し、これには、装置自体の動作と直接関連しないサブジェクトに対して使用者に教えるための本発明の望ましい実施例も含まれ、これに限定されることではない。このような教育機械(teaching machine)に対する一般概要に対して説明し、継続して、図１７Ａ(典型的なティーチングマシンクラスダイアグラム)及び図１７Ｂ(典型的なティーチングマシンシーケンスダイアグラム)による教育機械の任意のしかし望ましい具現に対して説明する。
【０２８２】
前述したアプリケーションレイヤーは、本発明のフレームワーク内の相互に異なる教育アプリケーションを生成するためにその教育機械の基盤構造(infrastructure)を望ましく利用する。
【０２８３】
前記教育機械は、教育及び学習のコンテンツ、教育ロジック、貯蔵、更新、インテリジェントエージェントとの相互作用(それが存在すれば)、レッスン(lesson)構成、発音(可聴単語が音を出して話されるか理解される場合)などのような教育及び学習の多様な要素(aspect)のための支援の処理及び／または提供を行えることが望ましい。後者の場合(latter issue)は、言語定義(名前、文字セット、ボキャブラリなど)、規則(文法、構文論)及び単語ボキャブラリ(vocabulary)などのデータが各言語のために貯蔵される必要があるので、言語を教育させるために特に重要なものである。望ましく、１つの規則は、例えば教育を受けることができ、容易に有効性が確認される１つの単純な言語要素に該当する。望ましく、単語ボキャブラリは、複数のセットの単語として定義され、ここで、各単語セットは１つの水準を有し、異なる判断基準(業務単語、旅行単語、及び単純会話単語などのような)に従って任意に分類されることもできる。他の重要な要素(aspect)には文脈(context)が含まれて、各単語(ｗ)には、少なくとも３つの文脈と関係(relations)があるべきであり、従って、単語集の内にある単語であるｗ１、ｗ２のそれぞれに対して最大セットの関係があるべきである。望ましく、１つの関係は、１つのセットの４個の単語(ｗ１：ｗ２ like ｗ３：ｗ４、すなわち、ｗ３：ｗ４と類似しているｗ１：ｗ２)で定義される。
【０２８４】
高水準の教育機械の構造は、TMLanguageと呼ばれるクラスを含むことが望ましく、これは、現在ＴＭ言語のための抽象化(abstraction)を提供し、全体ＴＭ基盤構造のための拡張機能を許容する。また、望ましく、TMLessonと定義されるクラスがあり、これは、例えば、１つのセット内の単語、規則、クイズ、または練習問題などに従って個別レッスンを組織するためのものである。
【０２８５】
レッスン周期は、１週間に任意に定義される。１つのレッスンは、このレッスンのための現在単語ボキャブラリとしての１つの単語セットと、このレッスンによって教育される１個以上の規則を含むことができる１つの規則セットと、使用者がその資料(material)を練習できるようにする練習と、任意に１つのクイズと、から構成されている。
【０２８６】
図１７Ａは、包括的(generic)であり適応的な教育アプリケーションのための拡張可能なフレームワークを提供するために設計された教育機械の基盤構造のための典型的な教育機械クラスダイアグラム１７００を示している。このアプリケーションクラスTeachingMachineApp１７０２は、クイズに基づいたアプリケーションのためにランタイム及びユーザインターフェースを提供する機能を行う。望ましく、このアプリケーションは、試験された領域(examined field)で使用者プロファイル(使用者モデル)を構成する機能を行うTMEngine１７０４を内蔵している。例えば、その一般領域(general field)が英語単語ボキャブラリ(vocabulary)である場合、TMEngine１７０４は、単語関係、否定(negation)、機能(function)、トーピック、及びそれ以上のものに関連して英語単語ボキャブラリの多様なサブ領域で使用者の成功率を望ましく学習する。
【０２８７】
このアプリケーションによって教えられる一般領域の多様なサブ領域における使用者の成果または成績(performance)を分析した後に、TMEngine１７０４は、その成果が低調したトーピックとサブ領域において、使用者の知識をテストして向上させるようにそのアプリケーションに望ましく指示する。TMEngine１７０４は、ある程度反復される使用者の評価を望ましく行い、続いて、教育及び使用者の成果に対する適応を行って使用者の新たな状態に関連したクイズ問題を生成する。
【０２８８】
TMEngine１７０４は、時間が経過するにつれて使用者の成果を集めるようになり、使用者の成功率と関連した統計をTeahcingMachineApp(教育機械アプリケーション)１７０２に任意に提供できる。
【０２８９】
望ましく、拡張可能なクイズフレームワークは、抽象化レイヤーとインターフェースを利用することによって提供される。TMEngine１７０４は、望ましくクイズのコンテナ(container)であり、このクイズは、すべてTMQuiz１７０６標準インターフェースを望ましく具現するので、任意にシームレス(seamless)的であることもある。各クイズは、TMDataAccess１７０８クラスを利用して、問題、回答、及び使用者の成功率に対する自分と関連したデータベースに対するアクセス及び貯蔵を行える。前記教育機械のクイズ及びトーピック訓練要素(aspects)は望ましく分離されており、これに従って、適応型教育アプリケーションが相互に異なる多い形態のトーピックとともに動作でき、これにより拡張性が非常に大きくなる。
【０２９０】
幾つの相互に異なる形態のクイズの例には、TMWordNet(ＴＭワードネット)クイズ１７１０、TMTriviaQuiz(ＴＭトリビアクイズ)１７１２、及びTMRelationQuiz(ＴＭ関連クイズ)１７１４などが含まれる。
【０２９１】
図１７Ｂは、本発明による典型的な教育シーケンスダイアグラムを示す。アプリケーション管理者５０２(図５を参照してさらに詳細に説明する。)は、ステップをTeachingMachineApp１７０２に伝送する(矢印１)。続いて、TeachingMachineApp１７０２は、その次の教育ラウンドを準備せよとの要請をTMEngine１７０２に伝送する(矢印１．１)。このような準備は、その次の問題をTMQuiz１７０６に要請することにより(矢印１．２．１及び１．２．１．１)望ましく開始される。それに対する答弁は、使用者から受信されてTMEngine１７０４及びTMQuiz１７０６によって評価される(矢印１．２．２)。答弁が正しければ、TMQuiz１７０６は、正答カウントを更新し(矢印１．２．２．１．１．１)、そうでなければ、誤答カウントを更新し(矢印１．２．２．１．２．１)、全体成功率も更新する。望ましく、TMEngine１７０４はそのクイズ統計値を貯蔵する。任意にそして望ましく、誤答が選択されたら正答を使用者に表示する。
【０２９２】
以前に少なくとも一回使用者がテストされたら、このようなシーケンスのその次の部分が任意に実行されることができる。アプリケーション管理者５０２は、さらにステップを伝送する(矢印２)。TeachingMachineApp１７０２は、教育ラウンドを準備せよとの要請を伝送する(矢印２．１)。使用者の一番弱いトーピックが配置され(矢印２．１．１)、使用者が一番弱いタイプのクイズも望ましく配置される(矢印２．１．１．２)。そのラウンドの各問題に対して、TeachingMachineApp１７０２は、前記のように、その次の問題を望ましく得、前述したように使用者の回答を評価する。
【０２９３】
このような構成は、新たなトーピックに対してまた新たなクイズ構造に対して望ましく拡張可能である。新たなトーピックには、一般トーピック(例えば、英語のような)と特定のタイプのコンテンツ(例えば、米国俗語または旅行単語)などが望ましく含まれる。望ましく、このようなトーピックには、そのトーピックのためのデータ及びクイズ構造が含まれて教育機械がそのデータをクイズ構造と自動に結合させることができる。望ましく、各クイズは、クイズテンプレートに基づいており、そのテンプレート内の特定の位置に任意に配置されることができるデータに対する命令(instruction)を利用する。
【０２９４】
例３：インテリジェントエージェント用進化システム
この例では、本発明による進化システムの望ましい実施例に対して説明しており、ここには、本発明の望ましい実施例による生物またはアバターのためのＤＮＡに対する説明と、本発明による任意の(optional)遺伝子スタジオに対する説明が含まれ、これらに限定されることではない。任意にそして望ましく、そのような進化システムは、生物またはアバターが“進化(evolve)”できるように、すなわち、その生物の行動及び／またはアピアランスの少なくとも一側面を変更できるようにする。この例では、例２で記述されたインテリジェントエージェントとともに任意にそして望ましく動作するもので記述されているが、このような説明は、ただ例示に過ぎなく、何の方式にも限定しようとする意図はない。
【０２９５】
インテリジェントエージェントの進化(変化)に対しては、アバターまたは生物によって表示されるそのエージェントの有形(tangible)の特徴とそのアバターまたは生物の行動に影響を与えるそのエージェントの無形の特徴の両方ともに関連して説明されている。
【０２９６】
図１８Ａは、典型的なエボリューション(evolution)クラスダイアグラム１８００を示す。このクラスダイアグラムで記述されている遺伝的なモデル(genetic model)は、インテリジェントエージェントの機能的な性質だけではなく、視覚的性質を含んだインテリジェントエージェントの多様な性質が変更されることができるようにする。そのようなモデルには、ＤＮＡ構造を表現するCreatureDNAクラス１８０２が含まれる。このＤＮＡ構造は、利用可能な遺伝子でなされるベクトルであり、新たな遺伝子を含ませるように望ましく拡張されることができる。遺伝子(gene)は、所定のタイプ範囲の可能な値(すなわち、遺伝子型(genotype))を有するパラメータである。遺伝子は、本発明によるシステムによって解釈(interpret)されてその遺伝子内のデータの表現(expression)がその遺伝子型になる。例えば、頭の遺伝子は、ＤＮＡの一番目の遺伝子として位置し、その値は、その生物の頭の視覚的な構造で表現される。しかし、頭の色は、他の遺伝子に符号化(encoded)されることが望ましい。
【０２９７】
インテリジェントエージェントを進化させて使用者を喜ばせる特定のＤＮＡインスタンスを獲得するために、本発明による遺伝的なモデルは、ＤＮＡを変更するハイブリッド及びミューテーションの遺伝的な動作(hybrid and mutate genetic operations)を望ましく具現する。 CreatureProxyクラス１８０４は、前記システムのための遺伝的な動作に、また、ＤＮＡにインターフェースを提供する機能を行う。また、CreatureProxy１８０４は、インテリジェントエージェントに対する他の非遺伝的な(non-genetic)情報(すなわち、名前、誕生日など)を望ましく保有する。
【０２９８】
望ましく、EvolutionMGRクラス１８０６は、インテリジェントエージェントの進化を管理し、インテリジェントエージェントのCreatureProxy１８０４にインターフェースを提供し、その遺伝的な動作をアプリケーションに提供する。
【０２９９】
EvolutionEngine(進化エンジン)クラス１８０８は、所定の遺伝的な動作が発生してインテリジェントエージェントＤＮＡに対して行われなければならないことを指示するために、時々に生成されることができる進化イベントに注意を注ぐ。そのＤＮＡ構造は、次のように与えられる。
【０３００】
望ましく、CreatureDNA１８０２は、EvolutionEvent１８１０からそのような進化イベントに注意を注ぐ。
【０３０１】
ＤＮＡ構造
#ifndef __CREATURE_DNA__
#define __CREATURE_DNA__
#include “CreatureDefs.h”
#include “CommSerializable.h”
#define GENE_COUNT 19
#define BASE_COLOR_GENE 8
typedef  struct internal_dna
{
unsigned char head;
unsigned char head_color;
unsigned char head_scale;
unsigned char body;
unsigned char body_color;
unsigned char body_scale;
unsigned char hand;
unsigned char hand_color;
unsigned char hand_scale;
unsigned char tail;
unsigned char tail_color;
unsigned char tail_scale;
unsigned char leg;
unsigned char leg_color;
unsigned char leg_scale;
unsigned char dexterity;
unsigned char efficiancy;
unsigned char interactive;
unsigned char base_color;
} internal_dna;
typedef internal_dna p_internaldna;
/**
* このクラスは、生物ＤＮＡ構造を示す。
* ＤＮＡは、生物のボディー部分と幾つの性格及び機能的な特質(personality and  functional qualities)に対するすべてのデータを保有する。
*/
class CreatureDNA /*: public CommSerializable*/
{
public:
static const int  gene_count;
/**
* デフォルト構成者(constructor)、ＤＮＡは０に初期化される。 
*/
CreatureDNA();
/*
* コピー構成者(Copy constructor)
* @param other - the DNA to copy
*/
CreatureDNA(const CreatureDNA &other);
/**
* 初期化機能、構成者が呼び出されなかったら呼び出されなければならない。                                                             
*/
void init();
/**
* ＤＮＡデータをランダム化する。
* 
*/
void randomizedna();
/**
* ＤＮＡ実際データ
*/
union {
internal_dna genes;
unsigned char data[GENE_COUNT];
};
/**
* 形態遺伝子の範囲(Range of type gene)   
*/
static const int TYPE_RANGE;
/**
* 色遺伝子の範囲(Range of color gene)  
*/
static const int COLOR_RANGE;
/**
* スケール遺伝子の範囲(Range of scale gene)  
*/
static const int SCALE_RANGE;
/**
* キャラクタ遺伝子の範囲(Range of charecter genes)   
*/
static const int CHARECTER_RANGE;
static const int BASE_COLOR_RANGE;
private:
/**
* 形態、色、及びスケールトリプレットの位置(Location of scale gene in the type,color,scale triplet)   
*/
static const int SCALE_LOCATION;
};
#endif /*__CREATURE_DNA__*/
【０３０２】
インテリジェントエージェントのＤＮＡ構成は、望ましく次のように行われる。生存型移動電話(living mobile phone)のバージョンを提供すると、ＤＮＡは、インテリジェントエージェントの各構成要素(Building Block)のためのジーン(Gene)から望ましく構成される。任意に、その構成要素は、そのインテリジェントエージェントの視覚的な部分であることができ、ここには、色またはスケール(その構成要素の大きさ)が望ましく含まれ、また、インテリジェントエージェントの機能及び行動と関連した非視覚的な性質も望ましく含まれる。ＤＮＡ構成のこのようなモデルは、さらい多い構成要素が追加されることができ、各構成要素の発現水準が増加することができるので拡張されることができる。
【０３０３】
ＤＮＡ構造からインテリジェントエージェントを構成することは、各遺伝子とその値と関連して行われることが望ましい。各遺伝子(building block)の値(発現水準)は、構成されたエージェントで表現された異なる遺伝子型を説明する。視覚的エージェントの基礎構成要素(basic building blocks)は原型(prototypes)としてモデル化され、従って、原型の量は、各視覚的な遺伝子の範囲を決定する(dictate)ようになる。また、実行中に原型に依存しない発現遺伝子の値を生成でき、例えば、色の遺伝子の発現水準は、ホストプラットフォーム色テーブルでのインデックスとして演算されることができるが、またはスケールもホストスクリーンの大きさに対して演算されることができるので、予め決定されている原型から独立的な遺伝子型を得ることができる。その原型モデルは、望ましく分解(decomposed)され、継続して、非原型エージェント(non-prototype agent)は、各構成要素の遺伝子の値に従って望ましく再構成(recomposed)される。
【０３０４】
次に説明する例は、このような過程に対する例示的であり非限定的な説明を提供する。単純化及び明確化のために、色、スケール、及び他の非視覚的な遺伝子が含まれておらず、このような遺伝子にも同一の過程が適用される。
【０３０５】
ＤＮＡの１６個の原型及び５個の構成要素のバージョンが次のように任意に与えられることができる。
【０３０６】
ＤＮＡ０＝{[head,0:15]、[body,0:15]、[legs,0:15]、[hands,0:15]、[tail,0:15]}
【０３０７】
５個の構成要素は、それぞれ原型モデルの個数から導出された構成要素の遺伝子の値に従って１６個の相互に異なる可能な遺伝子型を有している。インテリジェントエージェントを構成するとき、その各遺伝子の値であるＤＮＡ内の構成要素の値に従って右側の構成要素が取られる。
【０３０８】
例えば、前述したＤＮＡ方式の特定のインスタンスは次のようである。
DNA = {[3],[5],[10],[13],[0]} 
【０３０９】
このような簡単なＤＮＡバージョンにおける可能なインテリジェントエージェント構成の多様度(variety)は、次のようである。
V0 = (16) * (16) * (16) * (16) * (16) = (16)5 = 1048576
【０３１０】
インテリジェントエージェントの一般的な色を説明するための基本色の遺伝子(すなわち、緑色、青色など)が追加されると、可能な１６個の基本色の発現水準を有する場合、次のような多様度が得られる。
DNA１ = 
{[head,0:15]、[body,0:15]、[legs,0:15]、[hands,0:15]、[tail,0:15]、[bs_color,0:15]}
【０３１１】
そうすると、多様度は次のようになる。
V1 = V0 * 16 = (16)6 = 16777216
【０３１２】
基本色(すなわち、明色から暗色まで)の遺伝子のための強度遺伝子(intensity gene)がこのＤＮＡバージョンに追加されると、基本色の可能な１６個の強度の発現水準を有する場合、次のような多様度が望ましく得られる。
DNA２ = 
{[head,0:15]、[body,0:15]、[legs,0:15]、[hands,0:15]、[tail,0:15]、[bs_color,0:15]、[intensity,0:15]}
【０３１３】
この場合、多様度の計算は次のようである。
V２ = V１ * 16 = (16)７ = 268435456
【０３１４】
ミューテーションシーケンスダイアグラム及びハイブリッド化(hybridization)シーケンスダイアグラムをそれぞれ示している図１８Ｂ及び図１８Ｃを参照して説明したように、多様な遺伝的な動作(genetic operations)がＤＮＡの上で任意に遂行されることができる。
【０３１５】
図１８Ｂに示すように、ミューテーションされることができる遺伝子セット(任意に全体ＤＮＡであることができる。)から所定の遺伝子が基本ミューテーションの動作によってランダムに選択され、その遺伝子の可能な範囲(発現水準)内で選択された遺伝子の値が変更される。その基本動作は、複数回任意に遂行されることができる。
【０３１６】
ミューテーションアプリケーション１８１２は、ミュータント(mutant)を生成せよとの要請をEvolutionMGR(進化ＭＧＲ)１８０６(矢印１．１)に伝送する(矢印１．１)。EvolutionMGRクラス１８０６は、任意に複数のミュータントのために、この要請をCreatureProxy(生物プロクシ)１８０４に伝達する(この値は、関数呼出し(function call)において与えられることができる(矢印１．１．１))。このようなミュータントのそれぞれに対して、CreatureProxy１８０４は、ランダム遺伝子を望ましく選択し(矢印１．１．１．１．１)、これを前記遺伝子の範囲内にやはり存在する値に変更する(矢印１．１．１．１．２)。このミュータントは、ミューテーションアプリケーション１８１２にさらに伝達され、望ましく使用者に表示され、これに対しては、下記例４でさらに詳細に説明する。
【０３１７】
使用者がミュータントを承認すると、ミューテーションアプリケーション１８１２は、そのエージェントの既存の具現体(existing implementation)をその新たなミュータント(矢印２．１)に置き換えろとの命令をEvolutionMGR１８０６に伝送する。そうすると、EvolutionMGR１８０６は、CreatureProxy１８０４でのその生物のためのＤＮＡを設定し(矢印２．１．１)、続いて、CreatureProxy１８０４は、Agent_history(エージェント_ヒストリー)１８１４でのそのエージェントのヒストリーを望ましく更新する(２．１．１．１)。
【０３１８】
図１８Ｃは、２個の候補ＤＮＡが相互に配列されるとき発生する基本ハイブリッド動作(basis hybrid operation)(または交差動作(cross-over operation))のための典型的なシーケンスダイアグラムを示す。ＤＮＡの上に位置する１個以上の交差ポイントが望ましく選択される(交差ポイントの個数は、１からＤＮＡの内の遺伝子の個数まで変更されることができ、任意にこの個数はランダムに選択されることができる。)。交差ポイントを選択する動作はget_cut_indexと呼ばれる。各交差ポイントで、ＤＮＡのための値が既存のＤＮＡの値のうちの１つから選択される。任意に、これは、cutting_indexと呼ばれるカウントに従ってランダムに行われることができる。その結果、前記２個の候補ＤＮＡが相互に混合される。任意に、このような基本ハイブリッド動作は、複数の候補を利用して数回にわたって遂行されることができる。
【０３１９】
示すように、HybridApp１８１６は、ハイブリダイゼーション(Hybridization)過程を開始せよとのコマンドをEvolutionMGR１８０６に伝送する。任意に、このハイブリダイゼーション過程は、使用者がそのハイブリッドエージェントを承認するかまたはその過程を中断するときまで遂行される。EvolutionMGR１８０６は、遂行される複数の交差(ハイブリッド化)を利用してCreatureMGR１８０６からターゲットＤＮＡ(矢印２．１．１)を獲得せよとの命令を伝送することによりハイブリッド化を開始させる。示すように、cutting_indexは、前記２個のＤＮＡの値の間の交差を何時行うのかを指示するように保持される。
【０３２０】
前記ハイブリッドエージェントは、復帰(return)され、使用者が同意すれば、現在エージェントは、ミュータント過程と関連して、前述したように、そのハイブリッドエージェントに置き換えられる。結果的に、agent_history１８１４でのそのエージェントのヒストリーが望ましく更新される。
【０３２１】
任意にそして望ましく、ハイブリッド化は、赤外線、ブルートース(BlueTooth)またはインターネットを通じて、例えば、ＳＭＳメッセージにある、移動情報装置の外部にあるソースまたはそれ以外の任意のソースから伝送されたエージェントＤＮＡを利用して遂行されることができる。ただ説明するための目的で限定しようとする意図なく、ＳＭＳメッセージを通じてこのハイブリッドＤＮＡを受信するものと関連してこのような過程を例示する。ＳＭＳメッセージは、MIMEタイプのＤＮＡのためのデータを望ましく含んでいる。より望ましくは、本発明のシステムは、MIMEタイプのためのフックを有しているので、このようなタイプのＳＭＳメッセージが使用者による手動調停(manual intervention)を要求することなく、ハイブリッド化のために自動に望ましくパーシングされる。
【０３２２】
図１９は、このような過程の典型的なシーケンスダイアグラムを示している。示すように、使用者１は、ハンドセット１を通じて使用者１のインテリジェントエージェントを使用者２のインテリジェントエージェントとハイブリッド化せよとの要請を伝送する。使用者２は、ハンドセット２を通じてその要請を任意に承認するかまたは拒絶できる。使用者２が承認すれば、ハンドセット１の上で両方のエージェントからのＤＮＡの間でハイブリッド動作が遂行される。この結果が要請した側(使用者１)に任意に表示され、この要請側は、このハイブリッドを現在エージェントに置き換えることによって貯蔵することができる。このハイブリッドが置き換えるものとして使用されると、使用者２は、ハンドセット２の上でハイブリッド結果情報収集部(hybrid results collection)にそのハイブリッドに対することを貯蔵する。
【０３２３】
例４：本発明と使用者の相互作用(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)を望ましく設定し、その使用者の詳細な情報には使用者の名前、誕生日及び性別などが含まれ、これらに限定されることではない。本発明の任意の実施例によれば、前記誕生日の値は、使用者間の相性可能性(compatibility possibility)(よい占星術パターン(favorable astrology pattern)を有するハイブリッド(hybrid)を生成できる能力を意味するもので、相性(compatibility of temper)のオプションは、日付及び星占い(horoscopes)に対する適切なテーブルに従って構成される。)を決定するので、ハイブリッドＳＭＳにおいて重要である。
【０３３０】
また、使用者は、生物の詳細な情報(Creature Details)も望ましく設定することができる。
【０３３１】
図２３は、前記のようなハイブリッドアプリケーションを通じてハイブリッド化を遂行するための典型的なメニューを示す。
【０３３２】
図２４Ａは、使用者が生物をランダムに生成できるようにする“生成(Generate)”ボタンを押すことにより、新たな生物を見るための(また、任意にさらに生成するための)典型的なスクリーンショットを示す。図２４Ｂは、“ハイブリッド(Hybrid)”ボタンを押して得られた画面出力上の生物を示すもので、そのボタンを押すと使用者の生物選択を確定し、生物のプレビューウィンドーに移動するようになる。
【０３３３】
使用者は、このプレビューウィンドーによって新たに生成された生物を３次元に見ることができ、任意に次のようなオプションを使用してその生物を動画させる(animate)。
１． 上方向キー(Navigation UP key)：ズームイン(Zoom In)し、生物の大きさを最小化させる。
２． 下方向キー(Navigation DOWN key)：ズームアウト(Zoom Out)し、生物の大きさを最大化させる。
３． 左方向キー(Navigation LEFT key)：“確認(OK)”ボタンと“バック(Back)”ボタンとの間の転換。
４． 右方向キー(Navigation RIGHT key)：“確認”ボタンと“バック”ボタンとの間の転換。
５． 確認キー(OK)：選択を確認する。
６． 削除キー(CLR)：生物のプレビューウィンドーで生存型移動電話メニュー(Living Mobile Menu)に出る。
７． 終了キー(End)：生物のプレビューウィンドーでメインメニューに出る。
８． ‘０’キー：生物に対して明るくそして黒くする動作を遂行する。
９． ‘１’キー：時計方向に生物を左側に回転させる。
１０．‘２’キー: 生物を３次元に回転させる。
１１． ‘３’キー: 反時計方向に生物を右側に回転させる。
１２． ‘５’キー: 生物を３次元に回転させる。
１３． ‘６’キー: 生物に多様な方式にて動作を与える。このキーを押す度に動画形態(animation type)が変わる。
【０３３４】
前記生物が行える動画形態には、歩き(walking)、座り(sitting)、匂い嗅ぎ(smelling)、飛び(flying)、及び跳び(jumping)などが任意に含まれ、これらに限定されることではない。
【０３３５】
図２５は、使用者がその世代(generations)での動物の変化に対するヒストリーを調べてみて検査できるようにするハイブリッドヒストリーの典型的なスクリーンショットを示す。使用者は、現在の生物と母体(parents)を望ましく見ることができ、また、任意にその母体の母体も見ることができる。望ましく、すべての生物に対して多くとも２個の母体が存在することができる。
【０３３６】
図２６は、現在生物のＤＮＡシーケンスを有している遺伝子スタジオの典型的なスクリーンショットを示す。また、この遺伝子スタジオは、使用者がエージェントのＤＮＡシーケンスの変更及び修正を行えるようにする機会を望ましく提供する。
【０３３７】
例５：ネットワーク型移動情報装置のためのインテリジェントエージェント
このような例は、ネットワーク型移動情報装置(networked mobile information device)、望ましくは携帯電話に対するインテリジェントエージェントの使用に関する。任意にそして望ましく、インテリジェントエージェントは、使用者との相互作用のためのアバターと、他の移動情報装置のようなネットワーク上の他の構成要素及び／またはネットワーク自体と相互作用を行うエージェントを含む。従って、望ましく、アバターはユーザインターフェース(またはその一部)を形成し、アピアランス(より望ましく３次元の形態)を有するようになる。そのアピアランスは、任意に人間の形をしたアピアランスになることができるが、その代わりに、他のタイプの実際または想像のキャラクタまたは生物に基づいたものであることができる。前記エージェントは、アバターと移動情報装置との間、そして／またはネットワーク上の他の構成要素との間、そして／または他の移動情報装置の他のアバターとの間などの通信を処理する。このような具現が携帯電話のような移動情報装置を参照して説明されるとしても、その具現のアバター側(または、エージェントのそれ自体も)は、前記のような適応型システム(例２)及び／またはプロアクティブユーザインターフェース(例１)で任意に具現されることもできることに留意されたい。
【０３３８】
本発明のインテリジェントエージェントは、“生存型装置(Living Device)”の概念を適用することにより、向上された感情的経験を生成することを目標としている。すべての生きている生物は、アピアランス及び行動において唯一であり特別なもので、インテリジェントエージェントの唯一性(uniqueness)に重点をおくことと、また、使用者の生存型装置との相互作用を向上させるための多様なアバターアピアランスなどの多様性を提供することがそのような概念に望ましく含まれる。アバターは、気を引く(compelling)画像特性を有しており、これは、適切であり補充的な客体と周辺の環境を任意に有する。
【０３３９】
望ましく、インテリジェントエージェントは、その自尊(self-existence)及び独立的学習を示す予期せぬ行動で知能型意思決定を表示する。このような独立的行動は、本発明の重要な特徴のうちの１つとして、どんなタイプのユーザインターフェースまたは使用者のための相互作用のためにも、また、どんなタイプを有する演算装置のためにも以前に見られたことがなく、移動情報装置のためのインテリジェントエージェントのために確実に利用されたところがない。さらに、前述したインテリジェントエージェントは、生物のように時間に従って進化して視覚的変化を表示するようになる。これは、“生存型装置”の一番重要な特性のうち１つである。
【０３４０】
進化ステップは、驚き及び次の進化ステップに対する期待に対する使用者からの感情的な反応を引き起こす。
【０３４１】
進化は、時間による生物の時刻的変化に該当する。時間フレームは、流通中であるミッドレンジ(midrange)の携帯電話の寿命に該当するもので、例えば、一年で任意に設定されることができる。一年の間に進化を通じて周期的な変化が望ましく発生する。進化経路(環境に対する適応)は、自然選択の結果である。また他の選択オプションとして、自動選択のために幾つの機能を開発することによって予め決定される自然選択過程があるが、自然選択は、任意に使用者の中心(user driven)になることができる(すなわち、使用者は、次世代がさらによいか否かを決定する。)。
【０３４２】
インテリジェントエージェントは、相互に異なる実施例の２つの“世界”(すなわち、電話機世界及び仮想生物世界)で機能するために任意に実現されることができる。電話機(移動情報装置)世界では、インテリジェントエージェントがその電話機の相互に異なる機能を制御して、前述したように、使用者に多様な機能の選択を提案することができる。望ましく、インテリジェントエージェントは、後続するそのエージェントのためにモデルになる１個以上の電話機の使用処理過程に基づいて動作することができる。電話機世界のまた他の重要な特徴は、画面ブレーキング(screen breaking)のようなグラフィック表現、またはフリードローイング(free drawing)、または顔(表面)及び文字表現(特定の場合に１つまたは２つの関連単語)になることができる感情表現である。
【０３４３】
仮想世界は、望ましく、画像表示及び活動領域(playground area)であり、アバター以外の客体が挿入されることができ、アバター学習及びそれらとの相互作用を使用者が観察できる領域が選択的に決定されることができる。この世界に進入できるこの客体は任意に予め決定されることができ、その学習過程から発生した可能な相互に異なる行動を有するようになる。任意にそして望ましく、使用者は、補償または行動抑制要因(disincentive)を提供することができ、学習過程の一部になることができる。このような観点で(アバターのアピアランスを通じて)、インテリジェントエージェントは、仮想のペット(pet)または同僚(友達)の１つの形態として任意に行動できる。
【０３４４】
インテリジェントエージェントの幾つの望ましい形態には、３Ｄグラフィック基盤構造(アバターのアピアランスに関連した)と、適応型行動及びプロアクティブ行動のすべてを支援する人工知能及び機械学習メカニズムの使用と、ゲーム能力の提供と、移動情報装置の有用性を向上させ、また、特定の使用者の補助を提供する(その使用者を助ける)能力と、ホストプラットホームの抽象化レイヤー(abstraction layer)の提供などが含まれる。しかし、これらに限定されることではない。これとともに、これら機能は、移動情報装置の上で動作するようにすべてが一般的に定義された複数の人工知能アプリケーションを支援するための安定的であり、注目すべきであり、核心的なコンテンツプラットフォームを提供する。
【０３４５】
また、望ましく、アバターは、多い時刻的な要素を有している。例えば、外郭クリップサイズは６０×７０ピクセルまで任意になることができ、もちろん、移動情報装置の画面表示の特性に従って異なる解像度が選択されることもできる。望ましく、アバターは、幾つの色を有する３Ｄ多角形客体として表現され、どんな場合にも、望ましく、影、テクスチャ、及びアニメーション支援などの幾つの色を有する複数の相互に異なる３Ｄ画像特性を有する。このような能力は、移動情報装置に貯蔵されている以前に生成された視覚的構成要素(visual building blocks)を通じて任意に提供されることができる。望ましく、アバターの視覚的アピアランスは実行のときに構成される。
【０３４６】
アバターは、使用者の性向を考慮してランチウィザード(launch wizard)の以後に“生存すること(living)”を任意に開始させることができる(生存型装置に使用者を紹介する。)。進化とともに、アバターは、ミューテーションを示す微小な視覚的変化を任意に表示することができる(任意のステップ(random step)で幾つのキーバーテキスト(key vertices)の移動／色の変更)。視覚的な進化ステップは、１つの構成要素を追加して置き換えることによって遂行されることが望ましい。望ましく、アバターはすべての方向に移動でき、完全に生き動く３Ｄキャラクタになることがさらに望ましい。
【０３４７】
アバターは、背景において、移動情報装置のユーザインターフェースを有する移動情報装置の上にフローティングされているもののように見えることが望ましく、使用者の要請に従って退場されることもできる。アバターは、現在、使用者の移動情報装置との正常的(normal)な相互作用を利用できるので、使用者による強制的な隠れ／退場を最小化しようとすることが望ましい。
【０３４８】
本発明の任意のしかし望ましい実施例によると、アバターはより自然的であり、物理的に現実的な(realistic)方式にて画面上で“移動”するようにプログラムされることができる。例えば、ロボットの移動を制御するための物理的に現実的な行動及び移動を説明しようと試みる多様なアルゴリズム及び変数が利用可能である。このようなアルゴリズム及び変数の例は、“Automatic Generation of Kinematic Models for the Conversion of Human Motion Capture Data into Humanoid Robot Motion”(Ude et al., Proc. First IEEE-RAS Int. Conf. Humanoid Robots (Humanoids 2000), Cambridge, MA, USA, September 2000)に記述されている(この参考文献は、その内容が本明細書に完全に説明されているもののような効果を有するように本明細書とともに提出する。)。この参考文献は、多様な人間動作の撮影技術と、撮影されたデータを人間型ロボット動的変数(kinetic parameters)に自動に翻訳する方法に対して説明している。この内容を要約すると、人間及びロボット動作がモデルになり、このモデルは、実際、人間動作データを人間型ロボットの動作を制御するのに利用されることができるデータに翻訳するために利用される。
【０３４９】
このような種類の参考資料は、人間型ロボットの移動のモデルを得る方法に対する情報を提供するので有用である。本発明は、アバター(三次元的に描写された仮想キャラクタ)の実際的な移動に関連するが、それと類似しているモデルを人間型ロボットのためのものでアバターのために任意に利用されることができる。また、任意に、１つのモデルを動物の移動をモデル化するために構成し、動物または動物形態のアバターのさらに実際的(現実的)な移動を可能に行うこともできる。より一般的に、前記システムは、与えられたどんな３Ｄキャラクタデータも一般的(generical)に取り扱うことができることが望ましい。
【０３５０】
任意にそして望ましく、これらモデルの変数が進化過程の間に任意に変化されてアバターが動く方式を変更できるので、アバターの動きが進化されることができるようにするために、そのモデルを任意にそして望ましく利用することもできる。また、望ましく、このようなモデルは、アバターの非決定的な動きを説明するのに有用であり、さらに、任意に非決定的な動きが進化されることができるようにするのに有用である。この非決定的な行動も使用者の興味を保持するのに役に立つ。
【０３５１】
また、本発明の他の望ましい実施例によると、アバターの行動は、非決定的なモデルに従って任意にそして望ましく生成されて管理される。そのようなモデルは、“A Behavior Language for Story-Based Believable Agents”(M. Mateas and A. Stern, Working Notes of Artificial Intelligence and Interactive Entertainment, AAAI Spring Symposium Series, AAAI Press, USA, 2002)に記載されているように、ＡＢＬ(A Behavioral Language)のような公知の行動言語で任意に使用されることができる(この参考文献は、その内容が本明細書に完全に記載されているもののような効果を有するように本明細書とともに提出する。)。この参考文献は、実際のような方式にて行動する仮想キャラクタを生成するのに利用されることができるＡＢＬに対して説明している。このような現実的な行動には、例えば、音声、動き、及び／またはジェスチャーを通じて入力に対して反応することが含まれ、これらのすべては、ソフトウェアの人間使用者と現実的な通信を提供する。“動き”とは、アピアランスにおいて現実的な動きのモデル化(modeling)をかならず意味することではなく、その情況において、現実的な動きをその発生のときに支援することを意味する点に留意されたい。
【０３５２】
多様な入力及び出力を含み、人間使用者と現実的であり、非決定的であり、相互に作用する行動をモデル化して支援するために利用されられるこのような言語は、本発明によるアバターの行動のために任意に利用されることができる。例えば、この言語は、表現的な行動の例としての“ビートイディオム(beat idioms)”を記述する。これらビートイディオムは、ビート目的、ハンドラ及び交差-ビート行動の３つのカテゴリーに分類される。ビート目的(Beat goals)とは、人間使用者に挨拶をするもののように、特定の状況との関係において行われなければならない行動を意味する。ハンドラ(Handlers)は、人間使用者と仮想生物(例えば、本発明のアバター)との間の相互作用、または仮想生物間の相互作用を担当する。交差-ビート行動(Cross-beat behaviors)は、仮想生物体が一連の行動またはビートイディオムの間で移動できるようにする。明確に、その言語内のこのような構成は、本発明に従ってアバターのために任意に利用されることができる。
【０３５３】
もちろん、ＡＢＬは、信頼できるエージェント言語のうちの１つの非限定的な例に過ぎなく、他のタイプの言語及び／またはモデルをＡＢＬの代わりに、そして／またはＡＢＬと結合して任意に利用されることができる点に留意されたい。
【０３５４】
また、アバターは、例えば、幸福さ、悲しさ、驚き、遺憾、痛み、または退屈さのような多様な感情的表現を有することが望ましく、これは、顔表現である必要はなく、その代わりに、アニメーションまたはテキストであることもできる。感情的表現は相互に結合されることもできる。
【０３５５】
また、アバターは、画面のアピアランスを変更し、使用者に文章を書き、そして／または電話機を通じてサウンドを鳴らすものように見えることができ、これらは、インテリジェントエージェントの動作を通じて望ましく成就される。このエージェントは、例えば、アバターが仮想世界上の硬い物体(客体)にぶつかったとき、または使用者の気を引こうとするとき、振動モードを任意に動作させることもできる。また、任意に、アバターは、電話機のユーザインターフェース画面を能動的に操作しているように見えることもできる。
【０３５６】
アバター及び／またはインテリジェントエージェントのこのような相互に異なる機能を具現するために、図２７乃至図３０を参照して、以下に説明するように、インテリジェントエージェントを任意にそして望ましく構成でき、このとき、これら図面は、１つの具現例を示すものに過ぎなく、相互に異なる多い具現例が可能である点に留意されたい。また、インテリジェントエージェントの具現は、さらに例１及び例２で説明した具現例を任意に結合するかまたはそれに依存することができる。
【０３５７】
図２７は、本発明によるインテリジェントエージェントシステム２７００を概略的に示すブロック図である。示すように、第１使用者２７０２は第２移動情報装置２７０４を制御し、この第２移動情報装置２７０４は、ただ説明するための目的で、また、何の限定する意図もなく、このような例の目的のために、携帯電話として任意に実現されることができる。第２使用者２７０６は、第２移動情報装置２７０８を制御する。第１移動情報装置２７０４及び第２移動情報装置２７０８は、例えば、メッセージの伝送によってネットワーク２７１０を通じて望ましく通信する。
【０３５８】
望ましく、第１移動情報装置２７０４及び第２移動情報装置２７０８は、それぞれの使用者２７０２及び２７０６との相互作用のために、また、他のインテリジェントエージェントとの相互作用のために、インテリジェントエージェントを特徴的な要素として有している。従って、示すように、システム２７００によって１つのコミューニティをなすこのようなインテリジェントエージェントが相互作用を遂行でき、そして／または、例えば、ネットワーク２７１０を通じてそれぞれの使用者のための情報を獲得することができる。
【０３５９】
それぞれの移動情報装置２７０４及び２７０８と使用者２７０２及び２７０６との間の相互作用には、望ましく、移動情報装置の一般動作が含まれ、また、“生存型移動装置(living mobile phone)”の興味ある新たな機能が追加される。これら機能には、望ましくインテリジェントエージェントが含まれ、また、ユーザインターフェースを提供し、また、望ましく向上された使用者の感情的経験を提供するためのアバターの利用も含まれる。
【０３６０】
このようなインテリジェントエージェントは、望ましく“自覚している(aware)”知能型ソフトウェアフレームワークを特徴的な要素として有する。このようなシステムの内部動作は、多様なアルゴリズムツールに関連しているが、これには、ＡＩ(人工知能)及びＭＬ(機械学習)アルゴリズムが含まれる。しかし、これらに限定されることではない。
【０３６１】
システム２７００は、示した複数の使用者間の相互作用に任意に関与することができる。このような相互作用によってそのエンドユーザーのための移動情報装置を利用する有用性及び楽しみが増加される。
【０３６２】
図２８は、図２７のインテリジェントエージェントシステムをさらに具体的に示す。示すように、第１インテリジェントエージェント２８００は、行動を取り、学習し、移動情報装置の動作に対して意思決定を遂行するために、任意にそして望ましく、前述した知識ベースのようなシナリオデータ２８０２に従って動作することができる。第２インテリジェントエージェント２８００の学習及び発展過程は、前述したように、進化のための進化モジュール２８０４によって望ましく支援される。本発明の望ましい実施例に従って、第１インテリジェントエージェント２８００が使用者とアバターを通じて通信を遂行すると、アニメーションモジュール２８０６は、アバターのアピアランスを望ましく支援するようになる。
【０３６３】
第１インテリジェントエージェント２８００は、例えば、使用者のための情報を得るために、バックエンドサーバー(backend server)２８０８及び／またはコンピュータ２８１０のような他のネットワーク資源とネットワーク(図示せず)を通じて任意に通信することもできる。
【０３６４】
第１インテリジェントエージェント２８００は、示すように、第２インテリジェントエージェント２８１２と任意に通信することもできる。
【０３６５】
図２９は、本発明による行為選択システム２９００の具現例を概略的に示すブロック図であって、このシステム２９００は、インテリジェントエージェントが行為を選択できるようにする基盤構造を提供する。
【０３６６】
行為選択システム２９００は、ActionManager２９０２(説明のために図１０を参照)を特徴的な要素として有することが望ましく、これが行為を実際に行うようになる。ベースアクションインターフェース(BaseAction interface)２９０４は、ActionManager２９０２によって実行されるすべての行為のためのインターフェースを提供することが望ましい。
【０３６７】
行為は、特定の行為を遂行するために必要なAnimationManager(アニメーション管理者)２９０６とSoundManager(サウンド管理者)２９０８として表示される装置及びアプリケーション機能を任意に利用することができる。任意にそして望ましく、各行為は、正確でありかつ正しい遂行のために適切な管理者を集めるようになる。
【０３６８】
任意にそして望ましく、AnimationManager２９０６は、ChangeUIAction(ＵＩ行為変更部)２９１０も制御することができ、これは、ユーザインターフェースの視覚的表示のアピアランス(形態)を変更するようになる。追加的にまたはその代わりに、アバターがインテリジェントエージェントを使用者に表現するために利用されると、AnimationManager２９０６は、GoAwayFromObjectAction(客体行為から外れる)２９１２及びGoTowardObjectAction(客体行為に進行)２９１４を任意にそして望ましく制御することもでき、これによって、アバターがアバターの仮想世界の仮想客体と相互作用を行うことができる。
【０３６９】
図３０Ａ及び図３０Ｂは、移動情報装置の画面上の本発明によるアバターのスクリーンショットの典型的な２個の非限定的な例を示す。図３０Ａは、アバターとの相互作用を通じて着信音の大きさを調整するためのユーザインターフェースのスクリーンショットを示す。図３０Ｂは、アバターとの相互作用を通じてメッセージを受信するためのユーザインターフェースのスクリーンショットを示す。
【０３７０】
本発明を限定された個数の実施例を利用して説明したが、本発明に対する多い変更、修正、及び他の応用が行われることができる。
【０３７１】
以上、本発明の詳細について具体的な実施形態に基づき説明してきたが、本発明の範囲を逸脱しない限り、各種の変形が可能なのは明らかである。従って、本発明の範囲は、上記実施形態に限るものでなく、特許請求の範囲のみならず、その範囲と均等なものにより定められるべきである。
【図面の簡単な説明】
【０３７２】
【図１】本発明による学習モジュールの例を示す概略ブロック図。
【図２】プロアクティブユーザインターフェースを利用するための本発明によるシステムの例を示す概略ブロック図。
【図３】本発明によるプロアクティブユーザインターフェースシステムの具現例を示す図。
【図４】本発明による適応型システムの具現例を示す概略ブロック図。
【図５Ａ】本発明によるアプリケーション管理システムの例を示す概略ブロック図。
【図５Ｂ】本発明によるアプリケーション管理システムの例を示すシーケンスダイアグラム。
【図６Ａ】移動情報装置のオペレーティングシステムを通じて１個以上の行為を遂行するために本発明による適応型システムに必要な基盤構造(infrastructure)の例を示し、これに対する本発明によるシーケンスダイアグラムの例を示す図。
【図６Ｂ】移動情報装置のオペレーティングシステムを通じて１個以上の行為を遂行するために本発明による適応型システムに必要な基盤構造(infrastructure)の例を示し、これに対する本発明によるシーケンスダイアグラムの例を示す図。
【図７Ａ】典型的なイベントを示すもので、そのイベントが移動情報装置(移動情報装置のオペレーティングシステムを通じて)と本発明のシステムとの間の相互作用によって処理される方法を示す図。
【図７Ｂ】典型的なイベントを示すもので、そのイベントが移動情報装置(移動情報装置のオペレーティングシステムを通じて)と本発明のシステムとの間の相互作用によって処理される方法を示す図。
【図７Ｃ】典型的なイベントを示すもので、そのイベントが移動情報装置(移動情報装置のオペレーティングシステムを通じて)と本発明のシステムとの間の相互作用によって処理される方法を示す図。
【図８Ａ】インテリジェントエージェントの構成例を示す図。
【図８Ｂ】インテリジェントエージェントの動作に対するシーケンスダイアグラムの例を示す図。
【図９Ａ】本発明による行為を選択するための２つの典型的な方法を示す図。
【図９Ｂ】本発明による行為を選択するための２つの典型的な方法を示す図。
【図１０】本発明による行為遂行(action execution)の例を示すシーケンスダイアグラム。
【図１１Ａ】本発明による典型的な感情型システムの具現例を説明するためのダイアグラムを特徴とする図。
【図１１Ｂ】本発明による典型的な感情型システムの具現例を説明するためのダイアグラムを特徴とする図。
【図１１Ｃ】本発明による典型的な感情型システムの具現例を説明するためのダイアグラムを特徴とする図。
【図１２】本発明によるテキスト形式の通信のための典型的なシーケンスダイアグラム。
【図１３Ａ】それぞれ本発明による通話処理(telephone call handling)のための典型的なクラスダイアグラム及び典型的なシーケンスダイアグラム。
【図１３Ｂ】それぞれ本発明による通話処理(telephone call handling)のための典型的なクラスダイアグラム及び典型的なシーケンスダイアグラム。
【図１４Ａ】本発明によるＳＭＳメッセージ処理クラスの例示的であり非限定的な例を示す図。
【図１４Ｂ】それに対するシーケンスダイアグラム。
【図１５】本発明による典型的なメニュー処理クラスダイアグラム。
【図１６】本発明による典型的なゲームクラスダイアグラム。
【図１７Ａ】典型的な教育機械クラスダイアグラム。
【図１７Ｂ】本発明による典型的な教育機械シーケンスダイアグラム。
【図１８Ａ】本発明による典型的なエボリューションクラスダイアグラム。
【図１８Ｂ】本発明による典型的なミューテーションシーケンスダイアグラム。
【図１８Ｃ】本発明による典型的なハイブリッドシーケンスダイアグラム。
【図１９】２個の移動情報装置上のインテリジェントエージェント間の典型的なハイブリダイゼーションシーケンス(hybridization sequence)を示す図。
【図２０】本発明によるアバターまたは生物の典型的なスクリーンショット(screenshots)を示す図。
【図２１】本発明によるアバターまたは生物の典型的なスクリーンショット(screenshots)を示す図。
【図２２】本発明によるアバターまたは生物の典型的なスクリーンショット(screenshots)を示す図。
【図２３】本発明によるアバターまたは生物の典型的なスクリーンショット(screenshots)を示す図。
【図２４Ａ】本発明によるアバターまたは生物の典型的なスクリーンショット(screenshots)を示す図。
【図２４Ｂ】本発明によるアバターまたは生物の典型的なスクリーンショット(screenshots)を示す図。
【図２５】本発明によるアバターまたは生物の典型的なスクリーンショット(screenshots)を示す図。
【図２６】本発明によるアバターまたは生物の典型的なスクリーンショット(screenshots)を示す図。
【図２７】本発明による典型的なインテリジェントエージェントシステムを示す概略ブロック図。
【図２８】図２７のシステムをより詳細に示す図。
【図２９】本発明による他の行為選択システムの典型的な具現例を示す概略ブロック図。
【図３０Ａ】移動情報装置のスクリーン上に表示された本発明によるアバターの幾つかのスクリーンショットを示す図。
【図３０Ｂ】移動情報装置のスクリーン上に表示された本発明によるアバターの幾つかのスクリーンショットを示す図。
【符号の説明】
【０３７３】
１００  学習モジュール
１０２  知識ベース
１０４  センサー
１０６  認知部
１０８  推論システム
【図１】
2005085256.tif 000004
【図２】
2005085256.tif 000005
【図３】
2005085256.tif 000006
【図４】
2005085256.tif 000007
【図５Ａ】
2005085256.tif 000008
【図５Ｂ】
2005085256.tif 000009
【図６Ａ】
2005085256.tif 000010
【図６Ｂ】
2005085256.tif 000011
【図７Ａ】
2005085256.tif 000012
【図７Ｂ】
2005085256.tif 000013
【図７Ｃ】
2005085256.tif 000014
【図８Ａ】
2005085256.tif 000015
【図８Ｂ】
2005085256.tif 000016
【図９Ａ】
2005085256.tif 000017
【図９Ｂ】
2005085256.tif 000018
【図１０】
2005085256.tif 000019
【図１１Ａ】
2005085256.tif 000020
【図１１Ｂ】
2005085256.tif 000021
【図１１Ｃ】
2005085256.tif 000022
【図１２】
2005085256.tif 000023
【図１３Ａ】
2005085256.tif 000024
【図１３Ｂ】
2005085256.tif 000025
【図１４Ａ】
2005085256.tif 000026
【図１４Ｂ】
2005085256.tif 000027
【図１５】
2005085256.tif 000028
【図１６】
2005085256.tif 000029
【図１７Ａ】
2005085256.tif 000030
【図１７Ｂ】
2005085256.tif 000031
【図１８Ａ】
2005085256.tif 000032
【図１８Ｂ】
2005085256.tif 000033
【図１８Ｃ】
2005085256.tif 000034
【図１９】
2005085256.tif 000035
【図２０】
2005085256.tif 000036
【図２１】
2005085256.tif 000037
【図２２】
2005085256.tif 000038
【図２３】
2005085256.tif 000039
【図２４Ａ】
2005085256.tif 000040
【図２４Ｂ】
2005085256.tif 000041
【図２５】
2005085256.tif 000042
【図２６】
2005085256.tif 000043
【図２７】
2005085256.tif 000044
【図２８】
2005085256.tif 000045
【図２９】
2005085256.tif 000046
【図３０Ａ】
2005085256.tif 000047
【図３０Ｂ】
2005085256.tif 000048
【外国語明細書】
2005085256.tif 000049
2005085256.tif 000050
2005085256.tif 000051
2005085256.tif 000052
2005085256.tif 000053
2005085256.tif 000054
2005085256.tif 000055
2005085256.tif 000056
2005085256.tif 000057
2005085256.tif 000058
2005085256.tif 000059
2005085256.tif 000060
2005085256.tif 000061
2005085256.tif 000062
2005085256.tif 000063
2005085256.tif 000064
2005085256.tif 000065
2005085256.tif 000066
2005085256.tif 000067
2005085256.tif 000068
2005085256.tif 000069
2005085256.tif 000070
2005085256.tif 000071
2005085256.tif 000072
2005085256.tif 000073
2005085256.tif 000074
2005085256.tif 000075
2005085256.tif 000076
2005085256.tif 000077
2005085256.tif 000078
2005085256.tif 000079
2005085256.tif 000080
2005085256.tif 000081
2005085256.tif 000082
2005085256.tif 000083
2005085256.tif 000084
2005085256.tif 000085
2005085256.tif 000086
2005085256.tif 000087
2005085256.tif 000088
2005085256.tif 000089
2005085256.tif 000090
2005085256.tif 000091
2005085256.tif 000092
2005085256.tif 000093
2005085256.tif 000094
2005085256.tif 000095
2005085256.tif 000096
2005085256.tif 000097
2005085256.tif 000098
2005085256.tif 000099
2005085256.tif 000100
2005085256.tif 000101
2005085256.tif 000102
2005085256.tif 000103
2005085256.tif 000104
2005085256.tif 000105
2005085256.tif 000106
2005085256.tif 000107
2005085256.tif 000108
2005085256.tif 000109
2005085256.tif 000110
2005085256.tif 000111
2005085256.tif 000112
2005085256.tif 000113
2005085256.tif 000114
2005085256.tif 000115
2005085256.tif 000116
2005085256.tif 000117
2005085256.tif 000118
2005085256.tif 000119
2005085256.tif 000120
2005085256.tif 000121
2005085256.tif 000122
2005085256.tif 000123
2005085256.tif 000124
2005085256.tif 000125
2005085256.tif 000126
2005085256.tif 000127
2005085256.tif 000128
2005085256.tif 000129
2005085256.tif 000130
2005085256.tif 000131
2005085256.tif 000132
2005085256.tif 000133
2005085256.tif 000134
2005085256.tif 000135
2005085256.tif 000136
2005085256.tif 000137
2005085256.tif 000138
2005085256.tif 000139
2005085256.tif 000140
2005085256.tif 000141
2005085256.tif 000142
2005085256.tif 000143
2005085256.tif 000144
2005085256.tif 000145
2005085256.tif 000146
2005085256.tif 000147
2005085256.tif 000148
2005085256.tif 000149
2005085256.tif 000150
2005085256.tif 000151
2005085256.tif 000152
2005085256.tif 000153
2005085256.tif 000154
2005085256.tif 000155
2005085256.tif 000156
2005085256.tif 000157
2005085256.tif 000158
2005085256.tif 000159
2005085256.tif 000160
2005085256.tif 000161
2005085256.tif 000162
2005085256.tif 000163
2005085256.tif 000164
2005085256.tif 000165
2005085256.tif 000166