(57)【要約】【課題】アクション実行時の状況、ユーザの応答等を学習して状況に適した動作の提示又は実行を行う情報処理装置を実現する。【解決手段】ルール格納部１１０が、アクションとその実行のための状況条件を定めたルールを格納し、アクション動作部１０８が、いずれかのルールの状況条件に合致する状況の場合に、当該ルールのアクションを実行し、誤動作判別部１０７は、アクション動作部１０８のアクションに対するユーザの応答が肯定的か否定的かを判定し、フィードバック学習部１０６が、誤動作判別部１０７による判定結果に基づき、当該アクションに対応するルールに対する評価を行う。評価は、ユーザの応答が肯定的であったアクションに対応するルールに対する報酬を上げ、否定的であったアクションに対応するルールに対する報酬を下げて行う。また、ルール修正部１０３は、各ルールの報酬に基づき、ルールを修正する。【選択図】図１
2008123332.tif 000002
【特許請求の範囲】
【請求項１】
複数のアクションを実行する情報処理装置であって、
実行対象の実行対象アクションと実行対象アクションを実行するための状況条件を定めたアクションルールを少なくとも一つ格納するアクションルール格納部と、
いずれかのアクションルールの状況条件に合致する状況の場合に、当該アクションルールに定められたアクションを実行するアクション実行部と、
前記アクション実行部により実行された実行アクションに対する情報処理装置のユーザの応答が、実行アクションを承認する承認応答及び実行アクションを否認する否認応答のいずれであるかを判定する応答判定部と、
前記応答判定部による判定結果に基づき、実行アクションに対応するアクションルールに対する評価を行うアクションルール評価部とを有することを特徴とする情報処理装置。
【請求項２】
前記情報処理装置は、更に、
前記アクション実行部によりアクションが実行された際の状況を示す状況情報を生成する状況情報生成部を有し、
前記アクションルール評価部は、
前記状況情報生成部により生成された状況情報と前記応答判定部による判定結果とに基づき、実行アクションに対応するアクションルールに対する評価を行うことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記アクションルール評価部は、
前記応答判定部によりユーザの応答が承認応答であると判定された実行アクションに対応するアクションルールに対する評価ポイントを上げ、前記応答判定部によりユーザの応答が否認応答であると判定された実行アクションに対応するアクションルールに対する評価ポイントを下げて、アクションルールに対する評価を行うことを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記アクションルール評価部は、
実行アクションに対応するアクションルールに対する評価を蓄積し、蓄積したアクションルールに対する評価に基づき、新たなアクションルールを生成し、
前記アクションルール格納部は、
前記アクションルール評価部により生成された新たなアクションルールを格納することを特徴とする請求項１に記載の情報処理装置。
【請求項５】
前記アクション実行部は、
複数のアクションルールの状況条件に合致する状況の場合に、それぞれのアクションルールに対する前記アクションルール評価部の評価結果を用いて、複数のアクションルールの中からいずれかのアクションルールを選択し、選択したアクションルールに定められたアクションを実行することを特徴とする請求項１に記載の情報処理装置。
【請求項６】
前記アクション実行部は、
アクションの実行として、所定のデータ処理の実行又はデータ処理の実行候補のユーザへの提示を行い、
前記応答判定部は、
前記アクション実行部が実行したデータ処理に対するキャンセル指示がユーザから入力された場合又は前記アクション実行部がユーザへ提示したデータ処理の実行候補に対するデータ処理の実行指示がユーザから入力されなかった場合に、前記アクション実行部による実行アクションに対して否認応答がなされたと判定することを特徴とする請求項１に記載の情報処理装置。
【請求項７】
前記応答判定部は、
ユーザから、いずれかのアクションルールに定められているアクションの実行指示が、当該アクションルールの状況条件に合致しない状況時に入力された場合に、当該アクションルールに定められているアクションに対する否認応答がなされたと判定することを特徴とする請求項１に記載の情報処理装置。
【請求項８】
前記情報処理装置は、更に
前記応答判定部により否認応答がなされたと判定された際の状況を示す状況情報を生成する状況情報生成部を有し、
前記アクションルール評価部は、
前記状況情報生成部により生成された状況情報況と前記応答判定部による否認応答との判定結果とに基づき、アクションルールに対する評価を行うことを特徴とする請求項７に記載の情報処理装置。
【請求項９】
前記情報処理装置は、更に
ユーザから、いずれのアクションルールにも定められていない状況で特定のアクションの実行指示が入力された場合に、実行指示が入力された際の状況を示す状況情報を生成する状況情報生成部と、
ユーザから、いずれのアクションルールにも定められていない状況で特定のアクションの実行指示が入力された場合に、実行指示の対象となるアクションを示すアクション情報を生成するアクション情報生成部とを有し、
前記アクションルール評価部は、
前記状況情報生成部により生成されたと状況情報と前記アクション情報生成部により生成されたアクション情報とに基づき、新たなアクションルールを生成し、
前記アクションルール格納部は、
前記アクションルール評価部により生成された新たなアクションルールを格納することを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
前記アクションルール格納部は、
連続値の特性を有する事象に対して連続値を任意長の区間に区分して区間ごとに状況条件を定めるアクションルールを格納しており、
前記アクションルール評価部は、
前記アクション実行部によるアクションの実行状況に基づき、アクションルールの状況条件における区間の設定を変更することを特徴とする請求項１に記載の情報処理装置。
【請求項１１】
前記アクションルール評価部は、
それぞれの実行アクションを実行のあった区間にマッピングするとともに、実行アクションの分布を解析して、アクションルールの状況条件における区間の設定を変更することを特徴とする請求項１０に記載の情報処理装置。
【請求項１２】
複数のアクションを実行する情報処理装置における情報処理方法であって、
実行対象の実行対象アクションと実行対象アクションを実行するための状況条件を定めた一つ以上のアクションルールのうちのいずれかのアクションルールの状況条件に合致する状況の場合に、前記情報処理装置が、当該アクションルールに定められたアクションを実行するアクション実行ステップと、
前記情報処理装置が、前記アクション実行ステップにより実行された実行アクションに対する情報処理装置のユーザの応答が、実行アクションを承認する承認応答及び実行アクションを否認する否認応答のいずれであるかを判定する応答判定ステップと、
前記応答判定ステップによる判定結果に基づき、前記情報処理装置が、実行アクションに対応するアクションルールに対する評価を行うアクションルール評価ステップとを有することを特徴とする情報処理方法。
【請求項１３】
複数のアクションを実行するコンピュータに、
実行対象の実行対象アクションと実行対象アクションを実行するための状況条件を定めた一つ以上のアクションルールのうちのいずれかのアクションルールの状況条件に合致する状況の場合に、当該アクションルールに定められたアクションを実行するアクション実行処理と、
前記アクション実行処理により実行された実行アクションに対する情報処理装置のユーザの応答が、実行アクションを承認する承認応答及び実行アクションを否認する否認応答のいずれであるかを判定する応答判定処理と、
前記応答判定処理による判定結果に基づき、実行アクションに対応するアクションルールに対する評価を行うアクションルール評価処理とを実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば携帯型の情報処理装置等に関し、特に、携帯電話や持ち運び可能な端末等で、ユーザが様々な状況に応じて操作する場合に、その位置や時間といった状況に応じて、自動的にユーザ操作を代行し、また、ユーザに操作の候補を提示する等の携帯型の情報処理装置等に関する。
【背景技術】
【０００２】
携帯電話を利用している際に携帯電話の設定が自動的に切り替わって欲しい例としては、例えばマナーモードはその必要性がある場合に自動的に変わって欲しい機能である。
また、飛行機に搭乗する場合も、携帯電話において自動的に電源をオフして欲しい機能である。
このように携帯電話に代表される携帯端末では状況に応じて自動的に動作して欲しい機能がある。
また、ユーザが何かを操作しようとした場合に、奥深くメニューをたぐらずに済むように、メニューの表示の設定を状況に応じて自動的に切り替えられれば便利である。
【０００３】
例えば、特開２００６−１３５６３４号公報では、ユーザが時刻を指定しておくと、自動的にマナーモードに設定するという技術が開示されているが、周りの状況に応じてこの設定が有効になるか無効になるかなど学習していく技術は開示されていない。
【０００４】
例えば、特開２００６−１１５２７８号公報では、スケジュールにあわせてマナーモードに設定するという技術が開示されているが、スケジュールどおりに人は行動するとは限らず、場所などコンテキストに応じて設定するという技術は開示されていない。
【０００５】
例えば、特開２００６−０７４５８８号公報では、入退室管理と連動してマナーモード設定をオンオフするという技術が開示されているが、例えば曜日や時間によってはマナーモードにする必要がないなどコンテキストに応じて設定したりしなかったりという技術は開示されていない。
【０００６】
例えば、特開２００５−５７７４０号公報では、コンテキストに応じて種々の条件設定を変更する技術が開示されているが、予め条件をユーザが設定する方式に関して開示されており、学習することと、連続値の条件を離散値に変換することや、離散値に変換する場合に、状態が大きくなることが考えられ、この状態の増加を抑える技術に関しては開示されていない。
【０００７】
例えば、特開２００４−９４５４４号公報においては高齢者の意図を理解して操作を支援する方式に関する技術が開示されており、近距離の無線機能を利用してコンテキストを把握し、コンテキストに応じて操作を支援することが開示されているが、連続値で得られる状態の保持に関しては開示されていないし、学習してこの状態の大きさを抑える方法に関しても開示されていない。
【特許文献１】特開２００６−１３５６３４号公報
【特許文献２】特開２００６−１１５２７８号公報
【特許文献３】特開２００６−０７４５８８号公報
【特許文献４】特開２００５−５７７４０号公報
【特許文献５】特開２００４−９４５４４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
状況に応じて、携帯端末などでユーザの操作を支援しようとすると、状況を取得する必要がある。
例えば、状況としては、時刻、位置といった情報が該当する。
しかし、位置や時刻は連続値であり、毎回状況を見るたびに微妙に違う場合がある。
そのため、データとして扱うには離散化が必須である。
【０００９】
しかし、離散化といってもどの程度の単位で離散化すればよいかはユーザの置かれている環境及びユーザの属性等により変動する。
例えば、高速で移動している新幹線の中にいる場合と、歩いている場合とでは位置情報の離散化の単位は変わるべきである。
また、仕事をしている場合の時間に関しては、新幹線の運転手とサラリーマンあるいは自営業者では時間の精密さも変わるため、離散化の単位は変わるであろう。
あるいは、昼間と夜とでも変わるべきであり、人に依存して代わる情報となる。
【００１０】
また、例えばユーザの就業形態の変化や生活形態の変化により、ユーザの置かれた環境が変化した場合やユーザの行動パターンや思考パターンが変化した場合には、ユーザの置かれた環境、ユーザの行動パターン、思考パターンを学習して、ユーザの状況に最も適合するユーザ操作支援を行うべきである。
【００１１】
従来の開示された技術では、あらかじめルールを作成しておくなどするため、コンテキストに応じた操作支援ができないことと、人に応じた操作支援ができないなどの課題があった。
【００１２】
この発明は、上記のような課題を解決することを主な目的の一つとしており、状況に応じた動作のログとして、動作の条件及びユーザの応答を記録し、学習して状況に適した動作の提示又は実行を行う情報処理装置を実現するとともに、予め決めた離散化ルールを学習過程において、変更していくことにより状態の爆発を防ぐ情報処理装置等を実現する。
【課題を解決するための手段】
【００１３】
本発明に係る情報処理装置は、
複数のアクションを実行する情報処理装置であって、
実行対象の実行対象アクションと実行対象アクションを実行するための状況条件を定めたアクションルールを少なくとも一つ格納するアクションルール格納部と、
いずれかのアクションルールの状況条件に合致する状況の場合に、当該アクションルールに定められたアクションを実行するアクション実行部と、
前記アクション実行部により実行された実行アクションに対する情報処理装置のユーザの応答が、実行アクションを承認する承認応答及び実行アクションを否認する否認応答のいずれであるかを判定する応答判定部と、
前記応答判定部による判定結果に基づき、実行アクションに対応するアクションルールに対する評価を行うアクションルール評価部とを有することを特徴とする。
【発明の効果】
【００１４】
本発明によれば、アクション実行時の状況、ユーザの応答に基づくアクション内容の適否等を学習して状況に適したアクションを選択することができ、ユーザの利便性を向上させることができる。
【発明を実施するための最良の形態】
【００１５】
実施の形態１．
以下、図面を用いながら本実施の形態に係る携帯端末ユーザ操作支援装置の詳細を説明する。
図１は、本実施の形態に係る携帯端末ユーザ操作支援装置１００の構成例を示す。
【００１６】
時刻情報取得部１０１は、時刻情報を取得する。
位置情報取得部１０２は、位置情報を取得する。位置情報取得部１０２は、例えば、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）衛星からのＧＰＳ信号を受信することにより、携帯端末ユーザ操作支援装置１００の現在位置を測位するようにしてもよい。
ルール格納部１１０は、アクションルール（以下、単にルールともいう）を格納するデータベースである。
ルール修正部１０３は、ルール格納部１１０のルールを修正する。
条件記録部１０５は、ある動作をしたときの位置や時刻といった動作条件を記録する。
【００１７】
誤動作条件記録部１０４は、例えば、ユーザに示した動作候補からユーザが該当動作を選ばない場合や、自動的に動作させた機能をユーザがキャンセルするなどした場合の誤動作条件を記録する。
【００１８】
フィードバック学習部１０６は、誤動作をした場合や、正しい動作を支援した場合などに報酬を与えるという強化学習の機能を実現する。
誤動作判別部１０７は、動作が誤りであったことを判定する。
アクション動作部１０８は、ユーザの操作を支援する機能である。
また、ルール設定部１０９は、ルール格納部１１０にルールを設定する。
表示部１１１は、ユーザに各種情報を表示する。
入力部１１２は、ユーザからの指示を受付ける。
【００１９】
図１において、ルール格納部１１０（アクションルール格納部）は、実行対象の実行対象アクションと実行対象アクションを実行するための状況条件を定めたアクションルールを少なくとも一つ格納している。アクションルールの詳細は、後述するが、例えば、図２に示すように、実行対象アクション（例えば、スケジューラの起動）に対して、場所（例えば、駅）、時間帯（例えば、平日、勤務時間）という状況条件を定めている。
アクション動作部１０８（アクション実行部）は、いずれかのアクションルールの状況条件に合致する状況の場合に、当該アクションルールに定められたアクションを実行する。
誤動作判別部１０７（応答判定部）は、アクション動作部１０８により実行された実行アクションに対する携帯端末ユーザ操作支援装置１００のユーザの応答が、実行アクションを承認する承認応答及び実行アクションを否認する否認応答のいずれであるかを判定する。
アクション動作部１０８は、アクションの実行として、所定のデータ処理の実行（アプリケーションプログラムの実行等）又はデータ処理の実行候補のユーザへの提示（実行候補のアプリケーションプログラムのリスト表示等）を行い、誤動作判別部１０７は、アクション動作部１０８が実行したデータ処理に対するキャンセル指示がユーザから入力された場合又はアクション動作部１０８がユーザへ提示したデータ処理の実行候補に対するデータ処理の実行指示がユーザから入力されなかった場合に、アクション動作部１０８による実行アクションに対して否認応答がなされたと判定する。
また、誤動作判別部１０７は、ユーザから、いずれかのアクションルールに定められているアクションの実行指示が、当該アクションルールの状況条件に合致しない状況時に入力された場合に、当該アクションルールに定められているアクションに対する否認応答がなされたと判定する。
【００２０】
フィードバック学習部１０６（アクションルール評価部）は、誤動作判別部１０７による判定結果に基づき、アクション動作部１０８により実行された実行アクションに対応するアクションルールに対する評価を行う。
また、時刻情報取得部１０１（状況情報生成部）は、アクション動作部１０８によりアクションが実行された際又は誤動作判別部１０７により否認応答がなされたと判定された際の時刻（状況）を示す時刻情報（状況情報）を生成し、位置情報取得部１０２（状況情報生成部）は、アクション動作部１０８によりアクションが実行された際又は誤動作判別部１０７により否認応答がなされたと判定された際の位置（状況）を示す位置情報（状況情報）を生成する。
フィードバック学習部１０６は、時刻情報取得部１０１及び位置情報取得部１０２により生成された時間情報及び位置情報と誤動作判別部１０７による判定結果とに基づき、実行アクションに対応するアクションルールに対する評価を行う。
【００２１】
フィードバック学習部１０６によるアクションルールに対する評価は、誤動作判別部１０７によりユーザの応答が承認応答であると判定された実行アクションに対応するアクションルールに対する報酬（評価ポイント）を上げ、誤動作判別部１０７によりユーザの応答が否認応答であると判定された実行アクションに対応するアクションルールに対する報酬（評価ポイント）を下げて、アクションルールに対する評価を行う。
また、フィードバック学習部１０６は、実行アクションに対応するアクションルールに対する評価を蓄積し、ルール修正部１０３（アクションルール評価部）は蓄積されたアクションルールに対する評価に基づき、新たなアクションルールを生成する。
そして、ルール格納部１１０は、ルール修正部１０３により生成された新たなアクションルールを格納する。
【００２２】
アクション動作部１０８は、複数のアクションルールの状況条件に合致する状況の場合に、それぞれのアクションルールに対するフィードバック学習部１０６の評価結果を用いて、複数のアクションルールの中からいずれかのアクションルールを選択し、選択したアクションルールに定められたアクションを実行する。
【００２３】
また、時刻情報取得部１０１及び位置情報取得部１０２は、ユーザから、いずれのアクションルールにも定められていない状況で特定のアクションの実行指示が入力された場合に、実行指示が入力された際の状況（時刻、位置）を示す時刻情報及び位置情報（状況情報）を生成する。
また、誤動作判別部１０７（アクション情報生成部）は、ユーザから、いずれのアクションルールにも定められていない状況で特定のアクションの実行指示が入力された場合に、実行指示の対象となるアクションを示すアクション情報を生成する。
そして、ルール修正部１０３は、時刻情報取得部１０１及び位置情報取得部１０２により生成されたと時刻情報及び位置情報と誤動作判別部１０７により生成されたアクション情報とに基づき、新たなアクションルールを生成する。
【００２４】
次に、ルール格納部１１０に登録されているルールの例を図２を用いて説明する。
２０１は、場所に関する状況条件の一例で、駅が経度と緯度で表されることを意味している。
駅は複数ある。また、経度と緯度と標高あるいは地上からの高さのパラメータがあってもよい。
【００２５】
次に、２０２は時刻に関する状況条件の一例で、働いている時間帯を定義している。
２０３はルールの本体である。
図２では、もしユーザがある駅（Ｓｔａｔｉｏｎ  １）にいて、平日で働いている時間だとしたら、時刻表かスケジューラかメールを読む可能性が高いというルールと、もしユーザがある駅（Ｓｔａｔｉｏｎ  １）にいて、休日でなら、時刻表とメールを読む可能性が高いというルールを示している。
【００２６】
このように、ルールは状況条件とその実行対象アクションの組み合わせで示すことができる。
ルール設定部１０９とは、このようなルールをデータベースであるルール格納部１１０に入れるものであり、メモリ上に作成したルールを不揮発性の記憶領域に追加で書き込むという通常のコンピュータの方法と同様にして実現することができる。
【００２７】
次にアクション動作部１０８に関して説明する。
アクションとは、アプリケーションまたはアプリケーションの候補を複数リストにすることであり、例えば図２のルール２０３の例に従えば、駅（Ｓｔａｔｉｏｎ  １）の近くで平日の就業時間内であれば、その駅の時刻表にアクセスするブラウザに該当するアプリケーションと、スケジューラアプリケーションとメールアプリケーションが候補となり、ユーザが携帯端末ユーザ操作支援装置に対する行動（例えば、キーの押下）をしたときに、その３つがリスト表示されることになる。
【００２８】
あるいはもし、候補が一つしかなく、即アプリケーション実行とのルールが設定されていればアプリケーションの候補を提示するのではなく、そのアプリケーションを実行してしまうのでも良い。
【００２９】
次に、条件記録部１０５に関して説明する。
条件記録部１０５は、あるアプリケーションを動作させたときの状況を記録していく。
図３に示す例は、スケジューラアプリケーション、メールアプリケーションの動作した状況を示しており、それぞれ場所と時刻という情報が入っている。
また、一定時間以内にアプリケーションを起動している場合には、その情報も入っている。
【００３０】
３０１は、スケジューラアプリケーションを起動した際の状況を記録した例であり、ある場所において、ある時刻でスケジューラアプリケーションが起動されたという情報が２件あることを示している。
３０２は、メールアプリケーションを起動した際の状況を記録した例であり、ある場所、ある時刻にメールアプリケーションが起動されたことを示しているが、ある時刻には直前にメール受信をしたということも記録している。このように、アプリケーションが起動された場合の状況を記録していく。
図３に示すような時刻情報や位置情報は時刻情報取得部１０１及び位置情報取得部１０２により生成され、条件記録部１０５がこれら時刻情報及び位置情報を取得して記録する。
【００３１】
次に、誤動作判別部１０７に関して説明する。
誤動作判別部１０７は、アクション動作部１０８が自動的に実行したアプリケーションに関しては、例えばアプリケーション実行後１０秒といった一定時間以内に強制終了処理を行ったか否かにより否認応答がなされたかどうかを判別する。
つまり、誤動作判別部１０７は、アクション動作部１０８が起動したアプリケーションに対するキャンセル指示が一定時間内にユーザから入力された場合に、アクション動作部１０８による実行アクションに対してユーザから否認応答がなされたと判定する。
また、アプリケーションの実行候補の提示に対しては、誤動作判別部１０７は、ユーザが提示された候補以外のアプリケーションの起動を選択したということで否認応答が行われたかどうかを判別することができる。
また、アプリケーションの実行候補を提示したにも係らず、提示から一定時間の間にユーザが候補からアプリケーションを選択しなかった場合も誤動作と判別してもかまわない。
つまり、誤動作判別部１０７は、アクション動作部１０８がユーザへ提示したアプリケーションの実行候補に対する実行指示が一定時間内にユーザから入力されなかった場合に、アクション動作部１０８による実行アクションに対して否認応答がなされたと判定する。
また、誤動作判別部１０７は、以上のような否認応答がなかった場合、例えば、起動したアプリケーションからの問い合わせに対するユーザからの応答（パスワード入力等）があった場合、起動したアプリケーションに対してユーザが応答しない場合（時刻表を閲覧中等）、リスト表示されたアプリケーション実行候補の中からいずれかのアプリケーションを選択する応答があった場合等は、承認応答があったと判断する。
【００３２】
次に、本実施の形態に係る携帯端末ユーザ操作支援装置１００の動作例（情報処理方法）を、図４のフローチャートを用いて説明する。
【００３３】
ステップＳ４０１では、携帯端末ユーザ操作支援装置１００は、ユーザが何か行動を開始したことを感知する。
例えば、折りたたみ式の携帯電話なら開く行為や、スライド式の携帯電話ならばスライドさせる行為、またはキーが押下されたことを感知する。
次に、ステップＳ４０２において、状況を抽出する。例えば、時刻情報取得部１０１及び位置情報取得部１０２が、時刻情報、位置情報を取得する。
その他に音の情報や、明るさの情報など取得可能なものを取得していもよい。
【００３４】
次にステップＳ４０３で、候補を抽出する。
動作の候補の抽出は、アクション動作部１０８が、時刻情報取得部１０１からの時刻情報及び位置情報取得部１０２からの位置情報等に基づいて、ルール格納部１１０にある複数のルールの中から状況にマッチするものを抽出する。
そして、アクション動作部１０８は、抽出したルールに即時起動とあれば即時アプリケーションの起動の準備をし、候補を列挙とあればアプリケーションの実行候補のリストを生成する。
次に、ステップＳ４０４で、アクション動作部１０８が該当するアプリケーションを起動するか、表示部１１１がアクション動作部１０８により生成されたアプリケーション実行候補のリストの表示を行う（アクション実行ステップ）。
ステップＳ４０５において、誤動作判別部１０７が、ユーザの反応をチェックする（応答判定ステップ）。
起動したアプリケーションをユーザが使い始めた場合や、提示したアプリケーション実行候補の中からユーザがアプリケーションを選択した場合は（Ｓ４０５でＹｅｓの場合）、フィードバック学習部１０６が、ステップＳ４０６で報酬として、ルールに対して確率があがるための一定値（評価ポイント）を付与する（アクションルール評価ステップ）。
他方、ユーザがアプリケーションの実行候補以外のアプリケーションの起動を選択した場合や、アクション動作部１０８により起動されたアプリケーションを強制終了するなどしたら（Ｓ４０５でＮｏの場合）、フィードバック学習部１０６が、ステップＳ４０７で逆に報酬（評価ポイント）を削除する（アクションルール評価ステップ）。
報酬は具体的には数値でよく、そのルールに対して合致したら＋１、合致しなければー１といった報酬を与える。フィードバック学習部１０６は、ルール格納部１１０に格納されている各ルールに対して報酬の数値を記録するテーブルを備えており、ステップＳ４０６又はステップＳ４０７において、当該テーブルの対応するルールの報酬数値を増減する。
【００３５】
このようにユーザの応答に基づいて各ルールの適否を報酬の増減により評価することで、特定の状況において複数のルールの状況条件がマッチする場合に、アクション動作部１０８は、報酬の大きな方のルールに規定されているアクションを実行対象のアクションとして選ぶことができる。
【００３６】
上記のようにある動作に対して、正しかったどうかで報酬を与えることにより、次回からの候補の抽出にフィードバックすることができる。
また、この報酬に基づいてルール修正部１０３がルールを修正するようにしてもよい。
例えば、図２に示されている一つ目のルール２０３、つまり、「ユーザが、平日の昼間の就業時間中にＳｔａｔｉｏｎ  １付近にいるときには、Ｓｔａｔｉｏｎ  １の時刻表にアクセスするブラウザに該当するアプリケーションと、スケジューラアプリケーションとメールアプリケーションをリスト表示する」というルールに対してプラスの報酬が蓄積されて報酬の数値が一定値以上となった場合には、ルール修正部１０３は、Ｓｔａｔｉｏｎ  ２に対して同様の条件及びアクションを規定するルールを新たに生成し、ルール格納部１１０に登録するようにしてもよい。
また、例えば、図２に示されている二つ目のルール２０３、つまり、「ユーザが、休日の昼間にＳｔａｔｉｏｎ  １付近にいるときには、Ｓｔａｔｉｏｎ  １の時刻表にアクセスするブラウザに該当するアプリケーションと、メールアプリケーションをリスト表示する」というルールに対するマイナスの報酬が蓄積されて報酬の数値が一定値以下となった場合には、ルール修正部１０３は、この二つ目のルールを削除するようにしてもよい（このようなルールの削除も消極的な新たなルールの生成と考えることができる）。
【００３７】
次に、本実施の形態に係る携帯端末ユーザ操作支援装置１００の別の動作例（情報処理方法）を、図５のフローチャートを用いて説明する。
【００３８】
図５のフローチャートにおいては、携帯端末ユーザ操作支援装置１００は、ユーザの行動（図４のＳ４０１と同様の行動）を検知した場合（ステップＳ５０１）、又は状況を抽出する状況抽出周期が到来した際（ステップＳ５０２）において動作を開始する。
ユーザの行動を検知した場合又は状況抽出周期が到来した場合には、候補を抽出する（ステップＳ５０３）。
例えば、時刻情報取得部１０１及び位置情報取得部１０２が、時刻情報、位置情報を取得する。
その他に音の情報や、明るさの情報など取得可能なものを取得していもよい。
【００３９】
次に、アクション動作部１０８は、入力部１１２を通じてユーザからいずれかのアクションを指示するアクション指示が入力されたか否かを判断する（Ｓ５０４）。
アクション指示が入力されていない場合（Ｓ５０４でＮｏの場合）は、アクション動作部１０８が、時刻情報取得部１０１からの時刻情報及び位置情報取得部１０２からの位置情報等に基づいて、ルール格納部１１０にある複数のルールの中から現在の状況に合致するルールがあるかを判断する（Ｓ５０５）。
現在の状況に合致するルールがない場合（Ｓ５０５でＮｏの場合）は、Ｓ５０１に戻り、ユーザの行動の開始を検知するか、次の状況抽出周期の到来まで待機する。
現在の状況に合致するルールがある場合（Ｓ５０５でＹｅｓの場合）は、アクション動作部１０８は、図４の場合と同様に、ルール格納部１１０にある複数のルールの中から状況にマッチするものを抽出し（Ｓ５０６）、該当するアプリケーションを起動するか、表示部１１１がアクション動作部１０８により生成されたアプリケーション実行候補のリストの表示を行う（Ｓ５０７）（アクション実行ステップ）。
次に、誤動作判別部１０７が、ユーザの反応をチェックし（Ｓ５０８）（応答判定ステップ）、起動したアプリケーションをユーザが使い始めた場合や、提示したアプリケーション実行候補の中からユーザがアプリケーションを選択した場合は（Ｓ５０８でＹｅｓの場合）、フィードバック学習部１０６が、当該ルールに対して報酬を付与する（Ｓ５０９）（アクションルール評価ステップ）。
他方、ユーザがアプリケーションの実行候補以外のアプリケーションの起動を選択した場合や、アクション動作部１０８により起動されたアプリケーションを強制終了するなどした場合は（Ｓ５０８でＮｏの場合）、フィードバック学習部１０６が、報酬を削除する（Ｓ５１３）（アクションルール評価ステップ）。
その後、報酬が付与された場合は、条件記録部１０５が時刻情報取得部１０１からの時刻情報及び位置情報取得部１０２からの位置情報を記録し、報酬が削除された場合は、誤動作条件記録部１０４が、時刻情報取得部１０１からの時刻情報及び位置情報取得部１０２からの位置情報を記録する（Ｓ５１０）。
【００４０】
一方、Ｓ５０４においてアクション指示が入力されたと判断した場合は、アクション動作部１０８は、アクション指示を解析し、指示されたアクションを実行する（Ｓ５１１）。この実行するアクションは、該当するアプリケーションの起動、又は表示部１１１によるアプリケーション実行候補のリストの表示である。
次に、誤動作判別部１０７が、実行されたアクョンが状況に合致するか否かを判断する（Ｓ５１２）。具体的には、誤動作判別部１０７は、ステップＳ５０３で時刻情報取得部１０１及び位置情報取得部１０２により抽出された状況（時刻、位置）が、ルール格納部１１０に格納されているいずれかのルールに規定されている状況条件に合致するか否か、また、現在の状況がいずれかのルールの状況条件に合致する場合に、実行されたアクションが当該ルールに規定されているアクションに合致するか否かを判断する。
実行されたアクションが状況に合致する場合、即ち、状況条件及びアクション内容ともに現在の状況及び実行されたアクションに一致するルールが存在する場合（Ｓ５１２で「あり（一致）」の場合）は、フィードバック学習部１０６が、該当するルールに対して報酬を付与する（Ｓ５０９）（アクションルール評価ステップ）。
状況条件が現在の状況に合致するルールはあるが、当該ルールに規定されているアクション内容が実行されたアクションに一致しない場合（Ｓ５１２で「あり（不一致）」の場合）は、現在の状況では、当該ルールに規定されているアクションをユーザは望んでいないことになるので、フィードバック学習部１０６は、当該ルールの報酬を削除する（Ｓ５１３）（アクションルール評価ステップ）。
また、状況条件が現在の状況に合致するルールがない場合（Ｓ５１２で「なし」の場合）は、報酬の付与又は削減を行うルールが存在しないので、ステップＳ５１０に進む。
【００４１】
報酬が付与された場合は、条件記録部１０５が時刻情報取得部１０１からの時刻情報及び位置情報取得部１０２からの位置情報を記録する。
また、報酬が削除された場合又は状況条件が現在の状況に合致するルールがない場合（Ｓ５１２で「なし」の場合）は、誤動作判別部１０７が、ステップＳ５１１で実行されたアクションの内容を示すアクション情報を生成し、誤動作条件記録部１０４が、時刻情報取得部１０１からの時刻情報及び位置情報取得部１０２からの位置情報を記録するとともに、誤動作判別部１０７により生成されたアクション情報を時刻情報及び位置情報に対応付けて記録する。（Ｓ５１０）。
誤動作条件記録部１０４の記録形式は、例えば、図３に示すように時刻情報と位置情報を記録するとともに、これらに対応付けて、実行されたアクションの内容を示す情報（例えば、スケジューラアプリケーションの起動を示す情報）を記録する形式が考えられる。
【００４２】
このように、ユーザからアクションを指示された場合にも、報酬を付与又は削除することにより、次回からの候補の抽出にフィードバックすることができ、例えば、特定の状況において複数のルールの状況条件がマッチする場合に、アクション動作部１０８は、報酬の大きな方のルールに規定されているアクションを実行対象のアクションとして選ぶことができる。
【００４３】
いずれのルールにも規定されていない状況でユーザから特定のアクションに対する指示があった場合に、現在の状況及びユーザから指示されたアクションの内容を誤動作条件記録部１０４に記録することにより、同様のアクション指示についての記録が一定数蓄積された場合には、ルール修正部１０３は、誤動作条件記録部に記録された情報に基づいて新たなルールを生成することができる。
【００４４】
このように、本実施の形態では、時刻情報を表示でき、位置情報を獲得できる携帯型端末装置であって、ユーザが自動的にアクションをさせるための条件を設定できるルール設定機能と、ルールに基づくアクションを動作させるアクション動作機能と、アクションを動作させた場合に条件を記録する条件記録機能と、自動動作させたアクションをユーザが修正したことを判別する誤動作判別機能と、誤動作の条件を記録する条件記録機能と、記録された条件と、誤動作の条件とから本来動作するべき条件を導き出すフィードバック学習機能、学習した結果に基づきルールを修正するルール修正機能とを持つユーザ操作支援装置について説明した。
【００４５】
また、本実施の形態では、前記ルール設定機能は、位置、時刻などの状況データに応じて、自動的に動作させるべき機能を決定する機能であり、一つ以上の条件と確率を示す数値と動作させるアクションを設定できることを説明した。
【００４６】
また、前記アクション動作機能は、ルール設定機能で設定したルールの条件にマッチした場合に、自動的に例えばマナーモードに設定するなどのアクションを動作させることを説明した。
【００４７】
また、前記アクション動作機能は、ユーザが動作させようとした時点で、ルール設定機能で設定したルールの条件にあっていた場合に自動的に決まったアクションを動作させることを説明した。
【００４８】
また、前記アクション動作機能は、ユーザが動作させようとした時点で、ルール設定機能で設定したルールの条件にあっていた場合に自動的に決まったアクションの候補一覧を出すというアクションを動作させることを説明した。
【００４９】
また、前記誤動作判別機能は、アクション動作をさせたにもかかわらず、キャンセルされたり、動作の候補を示したにも係らず、候補以外の動作をした場合に、誤った動作であると判定することを説明した。
【００５０】
また、前記誤動作条件記録機能は、誤動作判別機能により誤動作であると判別された場合に、位置、場所といったコンテキスト情報と当該動作内容を記録することを説明した。
【００５１】
また、前記フィードバック学習機能が、誤動作判定された場合の条件と、本来動作すべきであった動作との間で、位置、動作といったコンテキスト情報に基づく一定の決まった動作の評価値を結果に基づいて修正することを説明した。
【００５２】
実施の形態２．
本実施の形態では、時間や位置といった連続値を離散値へ変換する場合について説明する。
本実施の形態に係る携帯端末ユーザ操作支援装置１００の構成例は図１に示したものと同様である。
【００５３】
次に、時間や位置といった連続値の特性を有する事象から離散値への変換の例を図６に示す。
図６の例では、時間の場合の例を示しており、連続値を任意長の区間（時間帯）に区分している。
０時から６時の間は同じ扱いとして３時とする。つまり、この例では、０時から６時の６時間を一つの区間（時間帯）とし、この区間の代表値として３時を定めている。
６時から８時は同じ扱いとして７時とする。つまり、この例では、６時から８時の２時間を一つの区間（時間帯）とし、この区間の代表値として７時を定めている。
８時から９時は同じ扱いとして８時３０分とする。つまり、この例では、８時から９時の１時間を一つの区間（時間帯）とし、この区間の代表値として８時３０分を定めている。
そして、９時以降は３０分きざみとして、夜の２０時以降は、２０時―２０時５２分を同じ扱いとして、２１時までを別とする。
このように、時間に応じてその離散値への変換（区間の長さ）は変わる。
本実施の形態では、ルール格納部１１０は、時間や位置といった連続値の特性を有する事象に対して連続値を任意長の区間に区分して区間ごとに状況条件を定めるアクションルールを格納している。
本実施の形態では、報酬の付与、削除のいずれに関わらず、誤動作条件記録部１０４又は条件記録部１０５が、アクション動作部１０８によるアクションの実行があった際の状況（時刻、位置）及び実行されたアクションの内容を記録する。
そして、ルール修正部１０３は、アクション動作部１０８によるアクションの実行状況（時刻、位置、アクション内容）に基づき、アクションルールの状況条件における区間の設定を変更する。
具体的な動作は、後述するが、本実施の形態では、ルール修正部１０３は、それぞれの実行アクションを実行のあった区間にマッピングするとともに、実行アクションの分布を解析して、アクションルールの状況条件における区間の設定を変更する。
【００５４】
本実施の形態に係るルール修正部１０３は、図６に示すように、時間に応じた変換式を用いて、連続値を離散値へ変換する。
そして、これらの変換式はフィードバック学習の結果などでデータ蓄積されていくことにより変わる。
例えば、１０などの一定の数の実績データが集まった時点で、ルール修正部１０３は、その時間の間隔の半分の部分で区切ってみて、一定の率、例えば、３０％と７０％などの有意な割合で差がある場合は、その有意な差が生じる区分で切ることにする。
【００５５】
例えば、現在のルールの状況条件の時間帯の設定が２０時から２１時までを一区間としている場合に、２０時から２１時までの時間帯においてメールとブラウザのアプリケーションの起動が多かったとして、一定の回数の学習後、２０時３０分を境にみると、２０時から２０時３０分はメールもブラウザも同様の数の起動だが、２０時３０分から２１時を見るとメールの起動の数が多いのであれば、ルール修正部１０３は、２０時３０分を境に区切る。
【００５６】
次に、ルール修正部１０３は、２０時４５分を境にみる。
２０時から２０時３０分までと２０時３０分から２０時４５分までがほぼ同じ率であれば、２０時から２０時４５分までを同じ扱いとして、ルール修正部１０３は、明らかに差のある２０時４５分から２１時までを別にする。
そして、ルール修正部１０３は、例えば、２０時３０分から２０時４５分までに対して一つのルール（例えば、ブラウザとメールアプリケーションのリスト表示をアクションとするルール）を設定し、２０時４５分から２１時に対して別のルール（例えば、メールアプリケーションの即時起動をアクションとするルール）を設定する。
【００５７】
このような処理を繰り返すことにより、ルール修正部１０３は、マッピングされた各アクションの分布を解析し、適切な離散化（連続値の区間分け）を行い、ルールの状況条件における時間帯の設定を適切に変更することができる。
これらは、位置によっても変わるものであれば、位置ごとに同じ処理を繰り返すことになる。
【００５８】
また、位置情報も同様に離散化が必要であるが、同様の処理でまわりの状況に応じて離散化を変更する。
【００５９】
位置情報の離散化は移動速度に影響を受けることもある。
移動速度もまた連続値であるため、この情報も同様の離散化を行うことで実現することができる。
【００６０】
以上のような動作によって、ユーザが望むアプリケーションの起動や、アプリケーションの候補を提示することができ、利便性のよい、携帯電話端末を提供することができるという効果がある。
【００６１】
本実施の形態では、ルール修正機能が、時間、位置といった本来は連続値であるものを一定の決まったルールで離散値に変換して評価を行うが、過去のデータの分析結果に基づき、離散値への変換の方式を変更し、アクションの条件となるルールを変更することについて説明した。
【００６２】
また、前記分析として、一定の離散値内にあった状況に応じた動作が、一定の動作に決まっていないが、２点以上の空間に分けた場合には、一定の動作が決まるかどうかを判定し、もし一定の動作が決められる場合には離散値への変換の方式を変換し、アクションの条件となるルールを変更することを説明した。
【００６３】
また、前記分析として、一定の離散値内にあった状況に応じた動作が、一定の動作に決まっていないが、複数の空間を統合した場合でも、一定の動作が決まるなど統合してもしなくても変わらないかどうかを判定し、統合しても変わらない場合には離散値への変換の方式を変換し、アクションの条件となるルールを変更することを説明した。
【００６４】
また、前記変換方式は、位置と時間といった複数の連続値において相互の状態に応じてアクションの条件となるルールを変更することができることを説明した。
【００６５】
なお、最後に実施の形態１及び２に係る携帯端末ユーザ操作支援装置１００のハードウェア構成例について説明する。
【００６６】
図７は、本実施の形態１及び２に示す携帯端末ユーザ操作支援装置１００のハードウェア資源の一例を示す図である。なお、図７の構成は、あくまでも携帯端末ユーザ操作支援装置１００のハードウェア構成の一例を示すものであり、携帯端末ユーザ操作支援装置１００のハードウェア構成は図７に記載の構成に限らず、他の構成であってもよい。
図７において、携帯端末ユーザ操作支援装置１００は、プログラムを実行するＣＰＵ９１１（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう）を備えている。ＣＰＵ９１１は、バス９１２を介して、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９１３、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９１４、通信ボード９１５、表示装置９０１、キーボード９０２、マウス９０３、磁気ディスク装置９２０と接続され、これらのハードウェアデバイスを制御する。更に、ＣＰＵ９１１は、ＦＤＤ９０４（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ  Ｄｒｉｖｅ）、コンパクトディスク装置９０５（ＣＤＤ）、プリンタ装置９０６、スキャナ装置９０７と接続していてもよい。また、磁気ディスク装置９２０の代わりに、光ディスク装置、メモリカード読み書き装置などの記憶装置でもよい。
ＲＡＭ９１４は、揮発性メモリの一例である。ＲＯＭ９１３、ＦＤＤ９０４、ＣＤＤ９０５、磁気ディスク装置９２０の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置あるいは記憶部の一例である。
通信ボード９１５、キーボード９０２、スキャナ装置９０７、ＦＤＤ９０４などは、入力部、入力装置の一例である。
また、通信ボード９１５、表示装置９０１、プリンタ装置９０６などは、出力部、出力装置の一例である。
【００６７】
通信ボード９１５は、無線通信ネットワークに接続されている。その他に、通信ボード９１５は、ＬＡＮ（ローカルエリアネットワーク）、インターネット、ＷＡＮ（ワイドエリアネットワーク）などに接続可能な構成でも構わない。
磁気ディスク装置９２０には、オペレーティングシステム９２１（ＯＳ）、ウィンドウシステム９２２、プログラム群９２３、ファイル群９２４が記憶されている。プログラム群９２３のプログラムは、ＣＰＵ９１１、オペレーティングシステム９２１、ウィンドウシステム９２２により実行される。
【００６８】
上記プログラム群９２３には、本実施の形態１及び２の説明において「〜部」、「〜機能」として説明している機能を実行するプログラムが記憶されている。プログラムは、ＣＰＵ９１１により読み出され実行される。
ファイル群９２４には、実施の形態１及び２に述べる説明において、「〜の判断」、「〜の判定」、「〜の判別」、「〜の計算」、「〜の比較」、「〜の評価」、「〜の設定」、「〜の登録」等として説明している処理の結果を示す情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリになどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してＣＰＵ９１１によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示などのＣＰＵの動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示のＣＰＵの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、実施の形態１及び２で説明するフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、ＲＡＭ９１４のメモリ、ＦＤＤ９０４のフレキシブルディスク、ＣＤＤ９０５のコンパクトディスク、磁気ディスク装置９２０の磁気ディスク、その他光ディスク、ミニディスク、ＤＶＤ等の記録媒体に記録される。また、データや信号は、バス９１２や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
【００６９】
また、本実施の形態１及び２説明において「〜部」、「〜機能」として説明しているものは、「〜回路」、「〜装置」、「〜機器」、「〜手段」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」、「〜機能」として説明しているものは、ＲＯＭ９１３に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、ＤＶＤ等の記録媒体に記憶される。プログラムはＣＰＵ９１１により読み出され、ＣＰＵ９１１により実行される。すなわち、プログラムは、本実施の形態１及び２の「〜部」、「〜機能」としてコンピュータを機能させるものである。あるいは、本実施の形態１及び２の「〜部」、「〜機能」の手順や方法をコンピュータに実行させるものである。
【００７０】
このように、本実施の形態１及び２に示す携帯端末ユーザ操作支援装置１００は、処理装置たるＣＰＵ、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータであり、上記したように「〜部」、「〜機能」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。
【図面の簡単な説明】
【００７１】
【図１】実施の形態１に係る携帯端末ユーザ操作支援装置の構成例を示す図。
【図２】実施の形態１に係るルールの例を示す図。
【図３】実施の形態１に係る条件記録部の記録内容を示すフローチャート図。
【図４】実施の形態１に係る携帯端末ユーザ操作支援装置の動作例を示すフローチャート図。
【図５】実施の形態１に係る携帯端末ユーザ操作支援装置の動作例を示すフローチャート図。
【図６】実施の形態２に係る連続値から離散値への変換の例を示す図。
【図７】実施の形態１及び２に係る携帯端末ユーザ操作支援装置のハードウェア構成例を示す図。
【符号の説明】
【００７２】
１００  携帯端末ユーザ操作支援装置、１０１  時刻情報取得部、１０２  位置情報取得部、１０３  ルール修正部、１０４  誤動作条件記録部、１０５  条件記録部、１０６  フィードバック学習部、１０７  誤動作判別部、１０８  アクション動作部、１０９  ルール設定部、１１０  ルール格納部、１１１  表示部、１１２  入力部。
【図１】
2008123332.tif 000003
【図２】
2008123332.tif 000004
【図３】
2008123332.tif 000005
【図４】
2008123332.tif 000006
【図５】
2008123332.tif 000007
【図６】
2008123332.tif 000008
【図７】
2008123332.tif 000009