(57)【要約】【課題】再現性のあるユーザの状況として適切な範囲を持った状況情報を複数生成して、ユーザの状況に対する適切な分析・適切な判断を行うことを目的とする。【解決手段】状況情報取得部１０２がユーザの状況に関する状況情報を取得し、ヒストリー生成部１０３が状況情報取得部が記憶した状況情報から履歴情報を生成して、生成した履歴情報をヒストリー蓄積部１０４に蓄積し、コンテキスト情報生成部１０５がヒストリー蓄積部１０４に蓄積された複数の履歴情報について再現性のあるユーザの状況に関する履歴情報であるか否かを処理装置により分析して、分析により再現性のあるユーザの状況に関する履歴情報であると判断された履歴情報をヒストリー蓄積部１０４から抽出し、抽出した複数の履歴情報に基づいて再現性のあるユーザの状況を示すコンテキスト情報８００を生成して、生成したコンテキスト情報８００をコンテキスト情報蓄積部１０６に蓄積する。【選択図】図３
2008262251.tif 000002
【特許請求の範囲】
【請求項１】
ユーザが利用する情報処理装置であって、
ユーザの状況に関する状況情報を取得して記憶装置に記憶する状況情報取得部と、
上記状況情報取得部が記憶した状況情報から履歴情報を生成して、生成した履歴情報を履歴情報蓄積部に蓄積する履歴情報生成部と、
履歴情報蓄積部に蓄積された複数の履歴情報について再現性のあるユーザの状況に関する履歴情報であるか否かを処理装置により分析して、分析により再現性のあるユーザの状況に関する履歴情報であると判断された履歴情報を履歴情報蓄積部から抽出し、抽出した複数の履歴情報に基づいて上記再現性のあるユーザの状況を示すコンテキスト情報を生成して、生成したコンテキスト情報をコンテキスト情報蓄積部に蓄積するコンテキスト情報生成部と
を備えたことを特徴とする情報処理装置。
【請求項２】
上記情報処理装置は、さらに、
ユーザが行う操作に関する操作情報を取得して記憶装置に記憶するユーザ操作情報取得部を備え、
上記履歴情報生成部は、
状況情報と操作情報とを対応づけて履歴情報を生成し、
上記コンテキスト情報生成部は、
生成したコンテキスト情報と当該コンテキスト情報の生成の基となった上記再現性のあるユーザの状況に関する複数の履歴情報との対応づけを行い、
上記情報処理装置は、さらに、
ユーザの現在の状況である現況情報を取得して、取得した現況情報の内容とコンテキスト情報蓄積部に蓄積されたコンテキスト情報の内容とが所定の条件のもとで一致するか否かを処理装置により判断して、現況情報と所定の条件のもとで一致すると判断されたコンテキスト情報をコンテキスト情報蓄積部から抽出する情報判断抽出部と、
上記情報判断抽出部が抽出した当該コンテキスト情報と対応づけられている複数の履歴情報についてユーザが過去に行った操作情報を求め、求めた操作情報の出現率を処理装置により算出して、算出した操作情報の出現率に基づいて少なくとも１つ以上の操作情報を選出する操作情報選出部と
を備えることを特徴とする請求項１記載の情報処理装置。
【請求項３】
上記履歴情報生成部は、
状況情報からユーザの位置を示す位置情報を含む履歴情報を生成し、
上記コンテキスト情報生成部は、
履歴情報蓄積部に蓄積された複数の履歴情報を分析して、位置情報が示す位置が同一の所定の領域に属する履歴情報を履歴情報蓄積部から抽出して、抽出した複数の履歴情報に基づいて上記所定の領域を示す位置範囲情報を含むコンテキスト情報を生成することを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
上記履歴情報生成部は、
状況情報からユーザの移動速度を示す速度情報を含む履歴情報を生成し、
上記コンテキスト情報生成部は、
履歴情報蓄積部に蓄積された複数の履歴情報を分析して、速度情報が示す移動速度が同一の所定の速度範囲に属する履歴情報を履歴情報蓄積部から抽出して、抽出した複数の履歴情報に基づいて上記所定の速度範囲を示す速度区分情報を含むコンテキスト情報を生成することを特徴とする請求項１〜３のいずれかに記載の情報処理装置。
【請求項５】
上記履歴情報生成部は、
状況情報からユーザの操作時刻を示す時刻情報を含む履歴情報を生成し、
上記コンテキスト情報生成部は、
履歴情報蓄積部に蓄積された複数の履歴情報を分析して、時刻情報が示す操作時刻が同一の所定の時間帯に属する履歴情報を履歴情報蓄積部から抽出して、抽出した複数の履歴情報に基づいて上記所定の時間帯を示す時間帯情報を含むコンテキスト情報を生成することを特徴とする請求項１〜４のいずれかに記載の情報処理装置。
【請求項６】
上記情報処理装置は、さらに、
上記操作情報選出部が選出した少なくとも１つ以上の操作情報を入力して表示装置に表示する操作表示部を備えることを特徴とする請求項２〜５のいずれかに記載の情報処理装置。
【請求項７】
状況情報取得部が、ユーザの状況に関する状況情報を取得して記憶装置に記憶する状況情報取得ステップと、
履歴情報生成部が、上記状況情報取得ステップにて記憶した状況情報から履歴情報を生成して、生成した履歴情報を履歴情報蓄積部に蓄積する履歴情報生成ステップと、
コンテキスト情報生成部が、履歴情報蓄積部に蓄積された複数の履歴情報について再現性のあるユーザの状況に関する履歴情報であるか否かを処理装置により分析して、分析により再現性のあるユーザの状況に関する履歴情報であると判断された履歴情報を履歴情報蓄積部から抽出し、抽出した複数の履歴情報に基づいて上記再現性のあるユーザの状況を示すコンテキスト情報を生成して、生成したコンテキスト情報をコンテキスト情報蓄積部に蓄積するコンテキスト情報生成ステップと
を備えたことを特徴とする情報処理方法。
【請求項８】
上記情報処理方法は、さらに、
ユーザ操作情報取得部が、ユーザが情報処理装置に対して行う操作に関する操作情報を取得して記憶装置に記憶するユーザ操作情報取得ステップを備え、
上記履歴情報生成ステップは、
状況情報と操作情報とを対応づけて履歴情報を生成し、
上記コンテキスト情報生成ステップは、
生成したコンテキスト情報と当該コンテキスト情報の生成の基となった上記再現性のあるユーザの状況に関する複数の履歴情報との対応づけを行い、
上記情報処理ステップは、さらに、
情報判断抽出部が、ユーザの現在の状況である現況情報を取得して、取得した現況情報の内容とコンテキスト情報蓄積部に蓄積されたコンテキスト情報の内容とが所定の条件のもとで一致するか否かを処理装置により判断して、現況情報と所定の条件のもとで一致すると判断されたコンテキスト情報をコンテキスト情報蓄積部から抽出する情報判断抽出ステップと、
操作情報選出部が、上記情報判断抽出ステップにて抽出した当該コンテキスト情報と対応づけられている複数の履歴情報についてユーザが過去に行った操作情報を求め、求めた操作情報の出現率を処理装置により算出して、算出した操作情報の出現率に基づいて少なくとも１つ以上の操作情報を選出する操作情報選出ステップと
を備えることを特徴とする請求項７記載の情報処理方法。
【請求項９】
状況情報取得部が、ユーザの状況に関する状況情報を取得して記憶装置に記憶する状況情報取得処理と、
履歴情報生成部が、上記状況情報取得ステップにて記憶した状況情報から履歴情報を生成して、生成した履歴情報を履歴情報蓄積部に蓄積する履歴情報生成処理と、
コンテキスト情報生成部が、履歴情報蓄積部に蓄積された複数の履歴情報について再現性のあるユーザの状況に関する履歴情報であるか否かを処理装置により分析して、分析により再現性のあるユーザの状況に関する履歴情報であると判断された履歴情報を履歴情報蓄積部から抽出し、抽出した複数の履歴情報に基づいて上記再現性のあるユーザの状況を示すコンテキスト情報を生成して、生成したコンテキスト情報をコンテキスト情報蓄積部に蓄積するコンテキスト情報生成処理と
をコンピュータに実行させることを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、情報処理装置及び情報処理方法及び情報処理プログラムに関するものであり、特に、ユーザの状況に応じて最適な操作情報を提示することができる情報処理装置及び情報処理方法及び情報処理プログラムに関する。
【背景技術】
【０００２】
携帯電話等のように貧弱なユーザインタフェースの機器においては、ユーザの状況に応じた最適な操作を簡便かつ迅速に利用するためのユーザインタフェースを提供することが重要である。そのための従来技術のアプローチとして、加速度センサを用いて所定の加速度と操作の組み合わせからユーザの状況を把握し、特定の状況における操作の提示を行う方法が開示されている。また、固定の範囲と共に定義づけされた時刻の情報あるいは固定の範囲と共に定義づけされた場所の情報と関連付けられた操作情報を管理する方法が開示されている。すなわち、固定の加速度、固定の範囲と共に定義づけされた時刻、および固定の範囲と共に定義づけされた場所等とユーザの状況との一致を検出することにより、その状況と関連性のあるものとして登録された操作を提示するものである。
【特許文献１】特開２００１−１５９９５１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
従来技術は、ユーザの状況と操作とを結び付けて管理し、状況に適合した操作を提示するものであるが、以下の課題がある。例えば、加速度、時刻、場所などの情報を示す範囲が非常に狭く、また、固定化された範囲であり、ユーザの現況との一致がとり難いという課題がある。これらの課題に対し、本発明においては、適切な範囲を持った状況情報（例えば、位置範囲情報、速度区分情報、時間帯情報等）を複数持ち、適宜組み合わせて状況を分析・判断することにより、ユーザの状況に対する適切な分析・適切な判断を伴った操作の提示を行うことを目的とする。
【課題を解決するための手段】
【０００４】
本発明に係る情報処理装置は、ユーザが利用する情報処理装置であって、ユーザの状況に関する状況情報を取得して記憶装置に記憶する状況情報取得部と、上記状況情報取得部が記憶した状況情報から履歴情報を生成して、生成した履歴情報を履歴情報蓄積部に蓄積する履歴情報生成部と、履歴情報蓄積部に蓄積された複数の履歴情報について再現性のあるユーザの状況に関する履歴情報であるか否かを処理装置により分析して、分析により再現性のあるユーザの状況に関する履歴情報であると判断された履歴情報を履歴情報蓄積部から抽出し、抽出した複数の履歴情報に基づいて上記再現性のあるユーザの状況を示すコンテキスト情報を生成して、生成したコンテキスト情報をコンテキスト情報蓄積部に蓄積するコンテキスト情報生成部とを備えたことを特徴とする。
【発明の効果】
【０００５】
本発明によれば、ユーザの状況情報を含む複数の履歴情報を生成して、生成した複数の履歴情報をすべて分析して再現性のあるユーザの状況を示す複数のコンテキスト情報を生成するので、ユーザの現況を分析する場合に、適切な範囲を持った複数のコンテキスト情報と比較することで、きめ細やかなユーザの状況分析を行うことができ、適切なユーザの状況判断を行うことができるという効果を奏する。
【発明を実施するための最良の形態】
【０００６】
以下に示す実施の形態では、ユーザの状況に応じてきめ細かい状況判断・状況分析を行い、最適な操作情報をユーザに提示する情報処理装置１００１及び情報処理方法及び情報処理プログラムについて説明する。以下に示す実施の形態では、情報処理装置１００１とは、例えば、ユーザが携帯して移動することができる携帯情報端末であって、例えば、携帯電話端末、ＰＨＳ（登録商標）（Ｐｅｒｓｏｎａｌ  Ｈａｎｄｙｐｈｏｎｅ  Ｓｙｓｔｅｍ）、ＰＤＡ（登録商標）（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔｓ（登録商標））等の携帯情報端末である。あるいは、情報処理装置１００１は、ユーザが移動時に携帯する携帯情報端末と、無線あるいは有線あるいは無線と有線との組み合わせによるネットワークやインターネット等を経由して接続されているサーバ装置であってもよい。
【０００７】
図１は、実施の形態１に係る情報処理装置１００１の外観の一例を示す図である。図１に示す情報処理装置１００１の外観は、主に情報処理装置１００１がサーバ装置として機能する場合の外観である。
【０００８】
図１において、情報処理装置１００１は、システムユニット９１０、ＣＲＴ（Ｃａｔｈｏｄｅ・Ｒａｙ・Ｔｕｂｅ）やＬＣＤ（液晶）の表示画面を有する表示装置９０１、キーボード９０２（Ｋｅｙ・Ｂｏａｒｄ：Ｋ／Ｂ）、マウス９０３、ＦＤＤ９０４（Ｆｌｅｘｉｂｌｅ・Ｄｉｓｋ・  Ｄｒｉｖｅ）、コンパクトディスク装置９０５（ＣＤＤ）、プリンタ装置９０６、スキャナ装置９０７などのハードウェア資源を備え、これらはケーブルや信号線で接続されている。
【０００９】
システムユニット９１０は、コンピュータであり、ファクシミリ機９３２、電話器９３１とケーブルで接続され、また、ローカルエリアネットワーク９４２（ＬＡＮ）、ゲートウェイ９４１を介してインターネット９４０に接続されている。
【００１０】
図２は、実施の形態における情報処理装置１００１のハードウェア資源の一例を示す図である。図２に示す情報処理装置１００１のハードウェア資源の一例は、情報処理装置１００１が携帯情報端末であってもサーバ装置であっても適用することができる。
【００１１】
図２において、情報処理装置１００１は、プログラムを実行するＣＰＵ９１１（Ｃｅｎｔｒａｌ・Ｐｒｏｃｅｓｓｉｎｇ・Ｕｎｉｔ、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう）を備えている。ＣＰＵ９１１は、バス９１２を介してＲＯＭ９１３、ＲＡＭ９１４、フラッシュメモリ９１６、通信ボード９１５、表示装置９０１、キーボード９０２、マウス９０３、ＦＤＤ９０４、ＣＤＤ９０５、プリンタ装置９０６、スキャナ装置９０７、タッチパネル９０９、スピーカー１１、マイク１０、カメラ９１９、磁気ディスク装置９２０と接続され、これらのハードウェアデバイスを制御する。磁気ディスク装置９２０の代わりに、光ディスク装置、メモリカード読み書き装置などの記憶装置でもよい。
【００１２】
ＲＡＭ９１４は、揮発性メモリの一例である。ＲＯＭ９１３、フラッシュメモリ９１６、ＦＤＤ９０４、ＣＤＤ９０５、磁気ディスク装置９２０の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置あるいは記憶部の一例である。
【００１３】
通信ボード９１５、キーボード９０２、スキャナ装置９０７、ＦＤＤ９０４、タッチパネル９１９などは、入力部、入力装置の一例である。
【００１４】
また、通信ボード９１５、表示装置９０１、プリンタ装置９０６などは、出力部、出力装置の一例である。
【００１５】
通信ボード９１５は、ファクシミリ機、電話器、ＬＡＮ、電話基地局、無線ＬＡＮ等に接続されている。通信ボード９１５は、電話基地局、無線ＬＡＮに限らず、インターネット、ＩＳＤＮ等のＷＡＮ（ワイドエリアネットワーク）などに接続されていても構わない。インターネット或いはＩＳＤＮ等のＷＡＮに接続されている場合、ゲートウェイは不用となる。
【００１６】
磁気ディスク装置９２０には、オペレーティングシステム９２１（ＯＳ）、ウィンドウシステム９２２、プログラム群９２３、ファイル群９２４が記憶されている。プログラム群９２３のプログラムは、ＣＰＵ９１１、オペレーティングシステム９２１、ウィンドウシステム９２２により実行される。
【００１７】
上記プログラム群９２３には、以下に述べる実施の形態の説明において、「ユーザ操作情報取得部」、「状況情報取得部」、「ヒストリー生成部」、「コンテキスト情報生成部」、「状況監視部」、「情報判断抽出部」、「操作情報選出部」、「操作提示部」等の「〜部」として説明する機能を実行するプログラムが記憶されている。プログラムは、ＣＰＵ９１１により読み出され実行される。
【００１８】
ファイル群９２４には、以下に述べる実施の形態の説明において、「〜の判定結果」、「〜の計算結果」、「〜の処理結果」として説明する情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」や「〜蓄積部」や「〜テーブル」の各項目として記憶されている。「〜ファイル」や「〜データベース」や「〜蓄積部」や「〜テーブル」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリになどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してＣＰＵ９１１によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示などのＣＰＵの動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示のＣＰＵの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。
【００１９】
また、以下に述べる実施の形態の説明において説明するフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、ＲＡＭ９１４のメモリ、フラッシュメモリ９１６のメモリ、ＦＤＤ９０４のフレキシブルディスク、ＣＤＤ９０５のコンパクトディスク、磁気ディスク装置９２０の磁気ディスク、その他光ディスク、ミニディスク、ＤＶＤ（Ｄｉｇｉｔａｌ・Ｖｅｒｓａｔｉｌｅ・Ｄｉｓｃ）等の記録媒体に記録される。また、データや信号は、バス９１２や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
【００２０】
また、以下に述べる実施の形態の説明において「〜部」、「〜手段」として説明するものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」、「〜手段」として説明するものは、ＲＯＭ９１３に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フラッシュメモリ、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、ＤＶＤ等の記録媒体に記憶される。プログラムはＣＰＵ９１１により読み出され、ＣＰＵ９１１により実行される。すなわち、プログラムは、以下に述べる「〜部」、「〜手段」としてコンピュータを機能させるものである。あるいは、以下に述べる「〜部」、「〜手段」の手順や方法をコンピュータに実行させるものである。
【００２１】
実施の形態１．
本実施の形態では、ユーザの状況に応じてきめ細かい状況判断・状況分析を行い、最適な操作情報をユーザに提示する情報処理装置１００１及び情報処理方法及び情報処理プログラムについて説明する。実施の形態１においては、情報処理装置１００１とは、例えば、ユーザが移動時にも携帯することができる携帯情報端末であって、携帯電話端末、ＰＨＳ（登録商標）（Ｐｅｒｓｏｎａｌ  Ｈａｎｄｙｐｈｏｎｅ  Ｓｙｓｔｅｍ（登録商標））、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔｓ）等の携帯情報端末である。また、情報処理装置１００１は、例えば、ユーザが移動時に携帯する携帯情報端末と、無線通信あるいは有線通信および無線通信と有線通信との組み合わせによるネットワーク、あるいはインターネット等を経由して接続されているサーバ装置とを含む情報処理システムであってもよい。
【００２２】
実施の形態１に係る情報処理装置１００１の機能について図３を用いて説明する。図３は、実施の形態１における情報処理装置１００１の機能ブロック図である。
【００２３】
図３において、情報処理装置１００１は、ユーザ操作情報取得部１０１、状況情報取得部１０２、ヒストリー生成部１０３（履歴情報生成部の一例）、ヒストリー蓄積部１０４（履歴情報蓄積部の一例）、コンテキスト情報蓄積部１０６、状況監視部１０７を備えている。状況監視部１０７は、情報判断抽出部１０８と操作情報選出部１０９とを備えている。
【００２４】
ユーザ操作情報取得部１０１は、ユーザが携帯情報端末に対して行う操作に関する操作情報を取得してＲＯＭ９１３やフラッシュメモリ９１６等の記憶装置に記憶する。操作情報とは、ユーザが携帯している携帯情報端末等に対して行った操作に関する情報であり、例えば、ユーザが起動したアプリケーションソフト及び入出力データ等の情報、ユーザがウェブ等に接続した場合のブラウザの種類や接続先の情報あるいはダウンロードしたデータ等の情報、ユーザが電話機能やＦＡＸ機能等を利用して通信を行った情報及び通信先の情報等である。ユーザ操作情報取得部１０１は、例えば、ユーザの操作情報として、マウスのクリック位置及びクリック時のアクティブウィンドウのウィンドウ名などを直接取得して、記憶装置に記憶する。また、例えば、ユーザ操作情報取得部１０１は、情報処理装置１００１のアプリケーションソフト等の起動プロセスや通信プロセスを監視し、起動プロセスや通信プロセスのログ履歴を取って記憶装置に記憶する等の方法で、ユーザの操作情報を取得する。
【００２５】
状況情報取得部１０２は、情報処理装置１００１を操作するユーザの状況に関する状況情報を取得してＲＯＭ９１３やフラッシュメモリ９１６等の記憶装置に記憶する。状況情報とは、情報処理装置１００１を操作するユーザを取り巻く環境やユーザの状態に関する情報である。状況情報とは、例えば、ユーザのある時点での環境を示す場所、天気、温度、混雑度等の環境情報や、ユーザの状態を示す移動速度、体調情報（体温や心電情報）等の状態情報である。状況情報取得部１０２は、状況情報として、例えば、情報処理装置１００１の内部に内蔵するセンサ類（ＧＰＳセンサ、傾きセンサ、生体情報センサ等の各種センサ）や時計等の「ユーザを取り巻く環境に関する情報を取得する装置」から情報を取得して記憶装置に記憶する。あるいは、情報処理装置１００１と、無線あるいは有線および無線と有線との組み合わせによるネットワークあるいはインターネット等を経由して接続された上記センサ類等の「ユーザを取り巻く環境に関する情報を取得する装置」から情報を取得して記憶装置に記憶してもよい。また、上記「ユーザを取り巻く環境に関する情報を取得する装置」は、特にセンサ類等に限らず、例えば、ＶＩＣＳ（Ｖｅｈｉｃｌｅ  Ｉｎｆｏｒｍａｔｉｏｎ  ａｎｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｓｙｓｔｅｍ）等から取得する情報等でもよい。
【００２６】
ヒストリー生成部１０３は、状況情報取得部１０２が記憶装置に記憶した状況情報とユーザ操作情報取得部１０１が記憶装置に記憶した操作情報とを対応づけてシーン情報５００（履歴情報の一例）を生成してヒストリー蓄積部１０４に蓄積保存する。シーン情報とは、ある時点でのユーザの１シーン（１場面）を示す情報を、上述した状況情報と操作情報とを使って記録したものである。シーン情報は、一定時間毎にヒストリー生成部１０３によって、ユーザの状況情報と操作情報とから情報を得て作成される。ヒストリー生成部１０３は、履歴情報生成部の一例である。また、ヒストリー蓄積部１０４は、履歴情報蓄積部の一例である。シーン情報５００（履歴情報）の詳細については、後述する。
【００２７】
コンテキスト情報生成部１０５は、ヒストリー蓄積部１０４に蓄積された複数のシーン情報５００（履歴情報）について再現性のあるユーザの状況に関するシーン情報５００であるか否かを処理装置により分析して、分析により再現性のあるユーザの状況に関するシーン情報５００であると判断されたシーン情報５００をヒストリー蓄積部１０４から抽出し、抽出した複数のシーン情報５００に基づいて、再現性のあるユーザの状況を示すコンテキスト情報８００を生成して、生成したコンテキスト情報８００をコンテキスト情報蓄積部１０６に蓄積する。また、コンテキスト情報生成部１０５は、生成したコンテキスト情報８００と当該コンテキスト情報８００の生成の基となった再現性のあるユーザの状況に関する複数のシーン情報５００との対応づけを行う。コンテキスト情報８００とは、再現性のあるユーザの状況を示す情報であり、例えば、ユーザのシーン情報５００をすべての日毎に分析して、すべての日について１日をユーザの状況によって分割し、すべての日について分析した日単位の分析結果を総合してさらに分析し、日単位において発生する確率の高いユーザの状況を洗い出し、洗い出した発生する確率の高いユーザの状況のそれぞれをコンテキスト情報８００とする。具体的には、例えば、ユーザについて「平日の７時から７時３０分までは家から駅までを歩行中である」という情報、あるいは「平日の８時から９時２０分までは乗車中である」という情報、またあるいは「休日の１３時から１５時までは公園内をサイクリング中である」という情報等のそれぞれがコンテキスト情報８００となる。すなわち、コンテキスト情報生成部１０５は、ヒストリー蓄積部１０４の情報を元に、ユーザの操作とユーザの操作時の状況情報との間に顕著な関連性が認識される再現性のある状況情報を抽出してコンテキスト情報８００として生成し、生成したコンテキスト情報８００をコンテキスト情報蓄積部１０６に蓄積する。コンテキスト情報８００の詳細については後述する。
【００２８】
状況監視部１０７は、状況情報取得部１０２が取得した状況情報等からユーザの現在の状況を示す現況情報を取得して、取得した現況情報とコンテキスト情報蓄積部１０６に蓄積されたコンテキスト情報を分析して、現況情報と合致するコンテキスト情報の有無を判断し、現況情報と合致するコンテキスト情報を抽出する。現況情報とは、ユーザの現在の状況（ユーザのおかれている環境やユーザの状態）を示した情報であり、例えば、当該時点の時刻、ユーザの現在位置、ユーザの移動速度等の情報である。そして、状況監視部１０７は、抽出したコンテキスト情報８００に基づいて、ユーザの現在の状況に応じた適切な操作情報を選出する。状況監視部１０７は、上記の機能を実現するために情報判断抽出部１０８と操作情報選出部１０９とを備えている。
【００２９】
情報判断抽出部１０８は、ユーザの現在の状況である現況情報を取得して、取得した現況情報の内容とコンテキスト情報蓄積部１０６に蓄積されたコンテキスト情報８００の内容とが所定の条件のもとで一致するか否かを処理装置により判断して、現況情報と所定の条件のもとで一致すると判断されたコンテキスト情報８００をコンテキスト情報蓄積部１０６から抽出する。
【００３０】
操作情報選出部１０９は、情報判断抽出部１０８が抽出したコンテキスト情報８００と対応づけられている複数のシーン情報５００について、ユーザが過去に行った操作情報を求め、求めた操作情報の出現率を処理装置により算出して、算出した操作情報の出現率に基づいて少なくとも１つ以上の操作情報を選出する。
【００３１】
次に、図４〜図１５を用いて、実施の形態１における情報処理装置１００１の情報処理方法及び情報処理プログラムの動作について説明する。
【００３２】
ここで、ヒストリー生成部１０３（履歴情報生成部）が、状況情報取得部１０２の取得した状況情報とユーザ操作情報取得部１０１の取得した操作情報とを対応づけて生成するシーン情報５００（履歴情報）について、図４を用いて説明する。
【００３３】
図４は、実施の形態１に係るシーン情報５００のデータ項目を示す図である。シーン情報５００は、ヒストリー蓄積部１０４に蓄積される１シーン（１Ｓｃｅｎｅ、１場面ともいう）単位の情報である。すなわち、ヒストリー蓄積部１０４に蓄積されるシーン情報５００は、例えば、一定時間毎のユーザのシーン（Ｓｃｅｎｅ、場面、事象ともいう）であり、当該シーンにおける時刻情報、ユーザの位置を示す位置情報、ユーザの移動速度を示す速度情報、ユーザの体調情報等と、当該シーンにおいてユーザが行った操作情報等が含まれている。シーン情報５００は、以下のデータ項目から構成されている。
【００３４】
以下のデータ項目は、ヒストリー生成部１０３が、状況情報取得部１０２の取得した状況情報とユーザ操作情報取得部１０１の取得した操作情報とに基づいて、処理装置を用いて、抽出・検索・参照・比較・演算・計算の処理を行ってシーン情報５００の各データ項目に設定する。データ項目によっては、状況情報取得部１０２あるいはユーザ操作情報取得部１０１が、情報の取得時にシーン情報５００に設定する形式に合わせて処理装置を用いて抽出・検索・参照・比較・演算・計算の処理を行っておいても構わない。
【００３５】
シーンＩＤ５０１は、シーン情報５００を一意に識別する識別子である。日時５０２（ｄｔ）は、当該シーン（当該事象）発生の日時の情報であり、時刻情報の一例である。
【００３６】
緯度５０３（ｌａｔ）は、当該シーン（当該事象）の発生場所の緯度であり、経度５０４（ｌｏｎ）は、当該シーン（当該事象）の発生場所の経度である。地点ＩＤ５０５（Ｐｏｉｎｔ＿ＩＤ）は、当該シーン（当該事象）の発生場所を示すＩＤであり、例えば、Ｓｕｉｃａ（登録商標）等のセンサを経由して取得した駅名コードなどである。地点名称５０６（Ｐｏｉｎｔ＿Ｎａｍｅ）は、当該シーン（当該事象）の発生場所を示す名前であり、例えば、駅名、建物名などでもよいし、マイクにより収集した駅でのアナウンスを音声認識により取得した場所に関する情報や、地図ＤＢなどから取得した場所に関する情報等でもよい。緯度５０３（ｌａｔ）、経度５０４（Ｌｏｎ）、地点ＩＤ５０５（Ｐｏｉｎｔ＿ＩＤ）及び地点名称５０６（Ｐｏｉｎｔ＿Ｎａｍｅ）は、位置情報の一例である。
【００３７】
Ｃｎｇｓｔｎ＿ｌｅｖｅｌ５０７は、当該シーン（当該事象）の発生の混雑度レベルを示す値であり、例えば、マイクから拾った環境音の音量を数値化した値等である。Ｃｎｇｓｔｎ＿ｌｅｖｅｌ５０７は、ユーザの環境情報の一例である。ＥＣＧ５０８は、当該シーン（当該事象）の発生時点のユーザの体調や体の状態などの情報となる生体センサ情報であり、例えば、心電センサの値等である。ＥＣＧ５０８は、ユーザの体調情報の一例である。
【００３８】
ＡＰＰ識別子５０９は、当該シーン（当該事象）の発生時点でユーザが使用したアプリケーションの情報を一意に識別するアプリ識別子である。図４においては、ＡＰＰ識別子５０９は、ｍａｉｌ、ｂｒｏｗｓｅｒ、ｍｅｄｉａｐｌａｙｅｒ等のように、ＴＥＸＴすなわち文字列で例示しているが、特に文字列に限られず、例えば、アプリケーションへの実行パスなどでも良い。またＡＰＰ識別子５０９とアプリケーションソフトの実行パスを別テーブルに持つ方法でも良い。当該シーン（当該事象）の発生時点で使用アプリがない場合は、ＡＰＰ識別子５０９にはＮＵＬＬが設定される。ｐａｒａｍ１（５１０１）〜ｐａｒａｍＮ（５０１Ｎ）は、アプリ毎に定まる任意の数のアプリで使用するデータである。例えば、ｂｒｏｗｓｅｒにおけるアクセスＵＲＬなど、アプリ毎に定まる０以上の任意の個数のパラメータである。ＡＰＰ識別子５０９とその使用データ（使用パラメータ）ｐａｒａｍ１（５１０１）〜ｐａｒａｍＮ（５０１Ｎ）は、操作情報の一例である。なお、ＡＰＰ識別子５０９とその使用データ（使用パラメータ）ｐａｒａｍ１（５１０１）〜ｐａｒａｍＮ（５０１Ｎ）とのセットは、複数備えることも可能（可変長）である。
【００３９】
曜日５１２（Ｄａｙ）は、当該シーン（当該事象）の発生時の曜日を示すデータである。
【００４０】
速度５１３（Ｓｐｅｅｄ）は、当該シーン（当該事象）の発生時のユーザの移動速度である。速度５１３（Ｓｐｅｅｄ）は、例えば、ＧＰＳなどの位置情報があれば、直前のシーン情報５００の位置情報と時刻情報から算出して設定される。ＧＰＳが陰の場合など速度が取れない場合は失敗を表す−１などの値が設定される。ｉｓＧｐｓＢｈｉｎｄ５１４は、ＧＰＳセンサを用いる場合に、ＧＰＳの陰（値が取れない状態）か否かを示す値である。ＧＰＳを用いない場合も、ＧＰＳの値は取れないので陰として値が設定される。
【００４１】
コンテキストＩＤ５１５は、当該シーン情報５００が属するコンテキスト情報８００（反復性のある状況）のＩＤであり、デフォルトは０である。コンテキスト情報生成部１０５によってコンテキスト情報８００が生成された後に、コンテキスト情報生成部１０５によってコンテキストＩＤが書き込まれる。なお、コンテキストＩＤ５１５にて示すコンテキストＩＤは図８にて示すコンテキスト情報蓄積部１０６に蓄積されるコンテキスト情報におけるＣｏｎｔｅｘｔＩＤ８０１と同じものであり、コンテキスト情報生成部１０５は、このコンテキストＩＤによりコンテキスト情報蓄積部１０６のコンテキスト情報８００とヒストリー蓄積部１０４におけるシーン情報５００との結び付け（対応付け）を行う。
【００４２】
図５は、実施の形態１における情報処理装置１００１のヒストリー生成処理（履歴情報生成処理）とコンテキスト情報生成処理の一連の処理を示すフロー図である。
【００４３】
ヒストリー生成部１０３によるヒストリー生成処理、及び、コンテキスト情報生成部１０５によるコンテキスト情報生成処理は、ユーザの操作により起動されてもよいし、あるいは、自動起動であってもよい。
【００４４】
ヒストリー生成部１０３は、ユーザ操作情報取得部１０１が記憶した操作情報と状況情報取得部１０２が記憶した状況情報とにおいて、ヒストリー蓄積部１０４へ蓄積すべき更新データがあるか否かを処理装置を用いて判定する（Ｓ３０１）。ヒストリー生成部１０３は、状況情報取得部１０２が取得した各種センサログ（状況情報）あるいはユーザ操作情報取得部１０１が取得した各種アプリログ（ユーザのアプリケーションのデータ（操作情報））において、ヒストリー蓄積部１０４へ蓄積すべき情報があるか否か、すなわちシーン情報５００に設定すべきセンサログあるいはアプリログのデータがあるか否かを処理装置により判定する。ヒストリー生成部１０３は、センサログあるいはアプリログの示す取得日時が、ヒストリー蓄積部１０４に蓄積されている最新のシーン情報５００の日時５０２よりさらに新しい日時を示すセンサログあるいはアプリログある場合に、更新すべきデータがあると判断する。また、あるいは、ヒストリー蓄積部１０４にセンサログ及びアプリログの最新更新データ等を示す更新情報を備え、ヒストリー生成部１０３が当該更新情報とセンサログ及びアプリログ等を比較することにより、更新すべきデータがあるか否かを判断してもよい。
【００４５】
＜Ｓ３０２：ヒストリー生成処理（履歴情報生成処理）＞
Ｓ３０１にて、ヒストリー蓄積部１０４へ蓄積すべき更新データがあると判定された場合（Ｓ３０１でＹｅｓ）は、ヒストリー生成部１０３は、シーン情報５００を生成して（シーン情報生成処理）、生成したシーン情報５００をヒストリー蓄積部１０４に蓄積してヒストリー蓄積部１０４を更新する（ヒストリー更新処理）。
【００４６】
＜Ｓ３０３：コンテキスト情報生成処理＞
次に、コンテキスト情報生成部１０５は、ヒストリー蓄積部１０４に蓄積された複数のシーン情報５００を処理装置により分析して、再現性のあるユーザの状況を示すコンテキスト情報８００を生成して、生成したコンテキスト情報８００をコンテキスト情報蓄積部１０６に蓄積してコンテキスト情報蓄積部１０６を更新する（Ｓ３０３：コンテキスト情報生成・コンテキスト情報蓄積部更新処理）。
【００４７】
Ｓ３０１にて、ヒストリー蓄積部１０４へ蓄積すべき更新データがないと判定された場合（Ｓ３０１でＮｏ）は、ヒストリー生成部１０３は、処理を終了する。
【００４８】
＜ヒストリー生成処理＞
次に、図６を用いて、図５におけるＳ３０２に示すヒストリー生成処理（履歴情報生成処理、履歴情報生成プログラム）の一例について説明する。図６は、実施の形態１におけるヒストリー生成処理（履歴情報生成処理、履歴情報生成プログラム）を示すフロー図である。
【００４９】
処理を開始すると、ヒストリー生成部１０３は、状況情報取得部１０２が取得したセンサログ（状況情報）のデータにおいて、ヒストリー蓄積部１０４へ蓄積すべき情報があるか否か、すなわちシーン情報５００に設定すべきセンサログ（状況情報）のデータがあるか否かを処理装置により判定する（Ｓ４０１）。ヒストリー生成部１０３は、状況情報取得部１０２によって取得された各種センサログ（状況情報）の取得日時が、ヒストリー蓄積部１０４に蓄積されている最新のシーン情報５００の日時５０２より、さらに新しい日時を示す場合に、更新すべきデータがあると判断する。
【００５０】
本実施の形態においては、状況情報取得部１０２は、状況情報として、ＧＰＳセンサ、傾きセンサ、生体情報センサ等のセンサ類や時計等の「ユーザを取り巻く環境に関する情報を取得する装置」からセンサログを取得して記憶装置に記憶しているものとする。状況情報取得部１０２は、具体的には、上述したシーン情報５００のデータ項目に設定するデータとして、各種センサ類のセンサログから緯度、経度、時刻、地点ＩＤ、地点名称、心拍数、混雑度レベル等を取得して記憶装置に記憶しているものとする。状況情報取得部１０２は、例えば、各種センサ類のセンサログを一次ファイルに取得して、シーン情報５００のデータ項目に設定する形式のデータに変換して、バックアップ用フォルダに移動させておいてもよい。これにより、ヒストリー生成部１０３は、取得した状況情報の各種データが更新データであるか否かを判定することができる。また、状況情報取得部１０２は、各種センサ類のセンサログを一次ファイルに取得して、取得したままの形式のデータで、バックアップ用フォルダに移動させておいてもよい。この場合は、ヒストリー生成部１０３は、取得した状況情報の各種データが更新データであるか否かを判定する時に、バックアップ用フォルダに移動させたデータをシーン情報５００のデータ項目に設定する形式に変換して判定する。
【００５１】
本実施の形態においては、ユーザ操作情報取得部１０１は、メールおよびブラウザのアプリケーションのデータを取得して記憶装置に記憶しているものとする。
【００５２】
ユーザ操作情報取得部１０１は、例えば、各種アプリケーションのアプリログを一次ファイルに取得して、シーン情報５００のデータ項目に設定する形式のデータに変換して、バックアップ用フォルダに移動させておいてもよい。これにより、ユーザ操作情報取得部１０１は、取得したアプリケーション（操作情報）の各種データが更新データであるか否かを判定することができる。また、ユーザ操作情報取得部１０１は、各種アプリケーションのアプリログを一次ファイルに取得して、取得したままの形式で、バックアップ用フォルダに移動させておいてもよい。この場合は、ヒストリー生成部１０３は、取得したアプリログの各種データが更新データであるか否かを判定する時に、バックアップ用フォルダに移動させたデータをシーン情報５００のデータ項目に設定する形式に変換して判定すればよい。
【００５３】
状況情報取得部１０２が取得する状況情報は、上記に例示するデータに限らず、状況情報取得部１０２が取得することができる他の形式を含む位置情報、時刻情報、速度情報等の状況情報に差し替えても構わない。また、ユーザ操作情報取得部１０１が取得するユーザのアプリケーション（操作情報）についても、上述のアプリケーションでなくでも構わない。
【００５４】
Ｓ４０１にて、新しく更新すべきセンサログ（状況情報）があると判定されると（Ｓ４０１にてＹｅｓ）、ヒストリー生成部１０３は、シーン情報５００に設定すべきデータを記憶装置に記憶されたセンサログ（状況情報）から抽出してシーン情報５００に設定する（Ｓ４０２）。
【００５５】
Ｓ４０１にて、センサログ（状況情報）のデータにおいて新しく更新すべきデータがないと判定されると（Ｓ４０１にてＮｏ）、ヒストリー生成部１０３は、Ｓ４０３に処理を移す。
【００５６】
次に、Ｓ４０３では、ヒストリー生成部１０３は、ユーザ操作情報取得部１０１が取得したアプリログ（ユーザのアプリケーションのデータ（操作情報））において、ヒストリー蓄積部１０４へ蓄積すべき情報があるか否か、すなわちシーン情報５００に設定すべきアプリログ（ユーザのアプリケーションのデータ（操作情報））があるか否かを処理装置により判定する（Ｓ４０３）。ヒストリー生成部１０３は、ユーザ操作情報取得部１０１によって取得されたアプリログの取得日時が、ヒストリー蓄積部１０４に蓄積されている最新のシーン情報５００の日時５０２より、さらに新しい日時を示す場合に、更新すべきデータがあると判断する。
【００５７】
Ｓ４０３にて、アプリログ（ユーザのアプリケーションのデータ（操作情報））において新しく更新すべきデータがあると判定されると（Ｓ４０３にてＹｅｓ）、ヒストリー生成部１０３は、シーン情報５００に設定すべきデータを記憶装置に記憶されたアプリログ（ユーザのアプリケーションのデータ（操作情報））から抽出してシーン情報５００に設定（追加）する（Ｓ４０４）。
【００５８】
ヒストリー生成部１０３は、生成したシーン情報５００をヒストリー蓄積部１０４に蓄積して、ヒストリー蓄積部１０４を更新（追加）する（Ｓ４０５）。
【００５９】
＜コンテキスト情報生成処理＞
次に、図７を用いて、コンテキスト情報生成部１０５のコンテキスト情報生成処理（コンテキスト情報生成プログラム）について説明する。
【００６０】
図７は、実施の形態１に係るコンテキスト情報生成処理の一連の処理の流れを示すフロー図である。コンテキスト情報生成部１０５によるコンテキスト情報生成処理は、ユーザの操作により起動されてもよいし、あるいは、自動起動であってもよい。
【００６１】
処理を開始すると、コンテキスト情報生成部１０５は、ヒストリー蓄積部１０４に蓄積されたシーン情報５００（履歴情報）を処理装置により分析して、一週間以上の期間のシーン情報５００が蓄積されたか否かを処理装置を用いて判定する（Ｓ６０１）。ここで、本実施の形態では、１週間以上をシーン情報５００の蓄積期間の条件としているが、これに限られる訳ではなく、所定の期間を設定してもよい。Ｓ６０１で所定（１週間）以上の期間のシーン情報５００（ログ）が蓄積されていると判定されると（Ｓ６０１でＹｅｓ）、Ｓ６０２へ進む。Ｓ６０１で所定（１週間）以上の期間のシーン情報５００（ログ）が蓄積されていないと判定されると（Ｓ６０１でＮｏ）、コンテキスト情報生成部１０５は、処理を終了する。
【００６２】
コンテキスト情報生成部１０５は、コンテキスト情報蓄積部１０６に蓄積される複数のコンテキスト情報８００に最新のシーン情報５００を反映済みか否かの判定を処理装置により行う（Ｓ６０２）。コンテキスト情報生成部１０５は、例えば、コンテキスト情報蓄積部１０６を更新する毎に更新時刻を記憶装置に記憶して、ヒストリー蓄積部１０４に蓄積された最新のシーン情報５００の時刻が、コンテキスト情報蓄積部１０６の最新の更新時刻よりも前の時刻であった場合は反映済みと判断することで判定することができる。
【００６３】
Ｓ６０２にて、コンテキスト情報蓄積部１０６が最新ではないと判定された場合（Ｓ６０２でＮｏ）、コンテキスト情報生成・コンテキスト情報蓄積部更新処理（Ｓ６０３）へと進む。Ｓ６０３（コンテキスト情報生成処理・コンテキスト情報蓄積部更新処理）では、コンテキスト情報生成部１０５は、ヒストリー蓄積部１０４に蓄積された複数のシーン情報５００に基づいて、処理装置を用いて、ユーザの一日毎において生活に区切りの見られる時間帯情報の分析および生成を行い、切り出した時間帯情報を元にコンテキスト情報８００を生成し、生成したコンテキスト情報８００をコンテキスト情報蓄積部１０６へ蓄積（登録・保存）して、コンテキスト情報蓄積部１０６を更新する。Ｓ６０３（コンテキスト情報生成処理・コンテキスト情報蓄積部更新処理）の詳細については、図９の説明にて後述する。
【００６４】
Ｓ６０２にて、コンテキスト情報蓄積部１０６が最新であると判定された場合（Ｓ６０２でＹｅｓ）、コンテキスト情報生成部１０５は、処理を終了する。
【００６５】
ここで、コンテキスト情報生成処理にて生成するコンテキスト情報蓄積部１０６へ登録する個々のコンテキスト情報８００（再現性のあると考えられる分析・判定済の状況情報）について図８を用いて説明する。図８は、実施の形態１に係るコンテキスト情報８００のデータ項目を示す図である。
【００６６】
コンテキスト情報８００は、後述するように、ヒストリー蓄積部１０４に蓄積された複数のシーン情報５００（履歴情報）をコンテキスト情報生成部１０５が分析することにより再現性のあると判断することができるユーザの状況に関するデータをコンテキスト情報生成部１０５が設定する情報である。
【００６７】
以下のデータ項目は、コンテキスト情報生成部１０５が、ヒストリー蓄積部１０４に蓄積された複数のシーン情報５００（履歴情報）に基づいて、処理装置を用いて、抽出・検索・参照・比較・演算・計算の処理を行ってコンテキスト情報８００の各データ項目に設定する。
【００６８】
コンテキストＩＤ８０１は、コンテキスト情報蓄積部１０６に登録されるコンテキスト情報８００を一意に識別する識別子である。
【００６９】
速度区分８０２は、予め設定されているか、あるいは、コンテキスト情報生成部１０５がヒストリー蓄積部１０４に蓄積された複数のシーン情報５００（履歴情報）を分析した結果設定される所定の速度範囲である。例えば、ユーザの移動速度に応じてユーザの状況（ユーザの状態）を示すための速度区分であり、速度区分８０２は、ユーザの移動速度に応じたユーザの状態を、停止中（Ｓｔａｙ）、歩行中（Ｗａｌｋｉｎｇ）、ランニング中（Ｒｕｎｎｉｎｇ）、サイクリング中（Ｃｙｃｌｉｎｇ）、自動車や列車などへの乗車中（ｏｎ  Ｂｏａｄｉｎｇ）に区分している。コンテキスト情報生成部１０５は、ＧＰＳ情報を利用して速度区分を割り出す場合は、ＧＰＳが陰になっている部分については、陰から出た時点での平均時速を割り出し、最も近い速度区分に割り当てる等の処理を行う。速度区分８０２は、コンテキスト情報に含まれる再現性のある状況情報を示すための速度区分情報の一例である。
【００７０】
タイムスロットＩＤ８０３は、再現性のあるユーザの状況が継続する時間帯（タイムスロット）を一意に識別するための識別子である。再現性のあるユーザの状況を表す（再現性のあるユーザの状況が継続する）時間帯（タイムスロット）とは、予め設定される時間帯の区分でもよいし、あるいは、コンテキスト情報生成部１０５がヒストリー蓄積部１０４に蓄積された複数のシーン情報５００（履歴情報）を分析した結果、決定される再現性のあるユーザの状況（ユーザの状態）が発生している時間帯（タイムスロット）でもよい。例えば、あるタイムスロットＡは、ユーザが停止中でかつ家にいる状況が継続する時間帯を示すタイムスロット（時間帯）であり、また、あるタイムスロットＢは、ユーザが歩行中でかつ家と駅との間の地点にいる状況が継続している時間帯を示すタイムスロット（時間帯）である。すなわち、本実施の形態では、タイムスロット（時間帯）の情報を作成することが、コンテキスト情報８００の情報を生成することとなる。
【００７１】
本実施の形態では、タイムスロットＩＤ８０３は、各曜日毎、平日毎、休日毎における各タイムスロット（時間帯）を一意に表すための識別子となっている。したがって、タイムスロットＩＤ８０３は、曜日、平日、休日の日区分毎の時間区分を示すために、図８のタイムスロットＩＤ８０３の備考欄に示したように、ｔｉｍｅＳｌｏｔ＿Ｍｏｎという識別子とｉという時間の早い順にあるいは分析が早く終わった順に昇順に付与する時間区分番号による、曜日の識別子と一日における時間区分番号とを用いて時間帯（タイムスロット）を一意に識別するためのタイムスロットＩＤ８０３としている。
【００７２】
タイムスロット開始時間８０４は、タイムスロットＩＤ８０３により示された当該タイムスロット（時間帯、時間区分）の開始時刻を示す。タイムスロット終了時間８０５は、タイムスロットＩＤ８０３により示された当該タイムスロット（時間帯、時間区分）の終了時刻を示す。ここで、タイムスロットＩＤ８０３とタイムスロット開始時間８０４とタイムスロット終了時間８０５とで示されるタイムスロット（時間帯）の時間帯は、再現性のあるユーザの状況を示すための時間帯情報の一例である。
【００７３】
開始緯度経度８０６は、当該コンテキスト情報８００が示す再現性のあるユーザの状況（ユーザの状態）が開始された位置（発生場所）の平均緯度経度を示す。終了緯度経度８０７は、当該コンテキスト情報８００が示す再現性のあるユーザの状況（ユーザの状態）が終了した位置（終了場所）の平均緯度経度を示す。ここで、開始緯度経度８０６と終了緯度経度８０７とは、再現性のあるユーザの状況を示すための位置範囲情報の一例である。
【００７４】
有効範囲開始時間８０８は、当該コンテキスト情報８００が示す再現性のあるユーザの状況（ユーザの状態）の発生認識の有効範囲時間である。本実施の形態では、タイムスロット開始時間８０４からマイナスしてよい時間であり、単位は分である。有効範囲終了期間８０９は、当該コンテキスト情報８００が示す再現性のあるユーザの状況（ユーザの状態）の終了認識の有効範囲時間である。本実施の形態では、タイムスロット終了時間８０５にプラスしてよい時間であり、単位は分である。
【００７５】
コンテキスト情報８００の具体的なデータ設定については、後述するコンテキスト情報生成処理にて説明する。
【００７６】
次に、図９〜図１０を用いて、図７に示したコンテキスト情報生成処理におけるコンテキスト情報生成・コンテキスト情報蓄積部更新処理（Ｓ６０３）について説明する。図９は、実施の形態１におけるコンテキスト情報生成・コンテキスト情報蓄積部更新処理の流れを示すフロー図である。図１０は、実施の形態１におけるコンテキスト情報生成・コンテキスト情報蓄積部更新処理の流れを示すフロー図である。本実施の形態では、コンテキスト情報生成部１０５は、コンテキスト情報生成・コンテキスト情報蓄積部更新処理（Ｓ６０３）においてヒストリー蓄積部１０４に蓄積された複数のシーン情報５００を分析して、コンテキスト情報の生成及びコンテキスト情報蓄積部の更新の処理を行う。
【００７７】
本実施の形態では、コンテキスト情報８００は、月曜から日曜までの各曜日、平日、休日毎に作成する。Ｓ７０１からＳ７１５で示す複数のシーン情報５００の分析、上述したタイムスロット（時間帯）の情報の分析、およびこれらの分析に基づくコンテキスト情報の生成処理は、月曜から日曜までの各曜日、平日（月曜から金曜）、休日（土曜、日曜、祝日）毎にそれぞれ同様の処理を行うものとする（Ｓ７０１、Ｓ７１５）。
【００７８】
＜基準タイムスロット生成処理＞
コンテキスト情報生成部１０５は、まず、タイムスロット（時間帯）情報を作成する上で基準となるユーザが停止中（Ｓｔａｙ）のタイムスロットから作成する。
【００７９】
処理を開始すると、コンテキスト情報生成部１０５は、図示しないカレンダー情報（曜日、平日、休日区分情報を含む）から日区分（月曜から日曜の各曜日か平日か休日の区分）を判断し、ヒストリー蓄積部１０４から処理対象日区分（処理対象の曜日、平日、休日のいずれか）毎に１日の開始点が停止中（Ｓｔａｙ：速度５１３の値が０）のシーン情報５００をすべて抽出して、抽出したシーン情報５００の位置を取得する（Ｓ７０２）。１日の開始点とは、予め決定されている時刻であり、例えば、本実施の形態では午前３時としている。すなわち、Ｓ７０２において、コンテキスト情報生成部１０５は、処理対象日区分のシーン情報５００をすべて（例えば、月曜日のシーン情報５００すべて）を検索して、１日の開始点である午前３時の時点で停止中のシーン情報５００を抽出して、その位置を取得する。
【００８０】
コンテキスト情報生成部１０５は、抽出されたシーン情報５００について、当該シーン情報５００の位置情報が５０％を超える確率で同じ位置を示しているシーン情報５００があるか否かを処理装置により判定する（Ｓ７０３）。本実施の形態では、５０％の確率を条件としたが、所定の確率を設定して構わない。Ｓ７０３で、抽出したシーン情報５００のうち５０％以上の確率で同じ位置にあるシーン情報があると判定された場合、コンテキスト情報生成部１０５は、５０％以上の確率で同じ位置であると判定されたシーン情報５００をすべて抽出して記憶装置に記憶する。さらに、同じ状況（停止中で同じ位置）が続く一連のシーン情報５００についても５０％以上の確率で同じ場所で停止中となるシーン情報５００を連続して抽出する（Ｓ７０４）。
【００８１】
コンテキスト情報生成部１０５は、Ｓ７０４にて抽出したすべてのシーン情報５００を分析して、連続したＳｔａｙ状態のタイムスロットを作成して、作成したタイムスロットの情報をコンテキスト情報８００としてコンテキスト情報蓄積部１０６へ登録（蓄積）するとともに、登録したコンテキスト情報８００作成の基となったすべてのシーン情報５００について、登録したコンテキスト情報８００のコンテキストＩＤ８０１をシーン情報５００のコンテキストＩＤ５１５に設定する（Ｓ７０５）。これにより、コンテキスト情報生成部１０５は、生成したコンテキスト情報８００と当該コンテキスト情報８００の生成の基となった再現性のあるユーザの状況に関する複数のシーン情報５００との対応づけを行うことができる。
【００８２】
コンテキスト生成部１０５は、該当する日（分析対象の曜日など）の中で分析対象としたシーン情報５００の次に停止中（Ｓｔａｙ）に入るシーン情報５００を抽出して位置情報を取得し、Ｓ７０３へ処理をもどす（Ｓ７０６）。
【００８３】
コンテキスト情報生成部１０５は、Ｓ７０５において、Ｓ７０４にて抽出したすべてのシーン情報５００を分析して、以下の内容の基準タイムスロット（同じ位置で停止中の時間帯）の情報からなるコンテキスト情報８００を生成し、コンテキスト情報蓄積部１０６へ登録する。以下に、コンテキスト情報生成部１０５が、コンテキスト情報８００に設定するデータ項目について説明する。
【００８４】
＜コンテキスト情報（基準タイムスロット）＞
・速度区分８０１（ＳｐｅｅｄＳｅｃｔｉｏｎ）＝停止中（Ｓｔａｙ）。
・タイムスロット開始時間８０４（ＳｔａｒｔＴｉｍｅ）＝停止中（Ｓｔａｙ）となった時刻の平均値。一日の開始点の場合はシステムに応じて決定された値（例えば、本実施の形態の場合は午前３時）。
・タイムスロット終了時間８０５（ＥｎｄＴｉｍｅ）＝停止中（Ｓｔａｙ）から出る時刻の平均値。一日の終了点の場合はシステムに応じて決定された値。
・タイムスロットＩＤ８０３（ＴｉｍｅＳｌｏｔ＿ＩＤ）＝各日区分の識別子を含むＩＤ。（ｔｉｍｅＳｌｏｔ＿Ｍｏｎ［ｉ］など。各日区分の識別子はＭｏｎ（月曜日を表す）。ｉは、各日区分におけるタイムスロットの作成の順番に付与される番号である。一日の開始点でｉは０を開始番号とする。タイムスロットが作成される順番にｉがインクリメントされて付与される。基準タイムスロットがＮ個作成されるとすると、０≦ｉ≦Ｎとなる。）
・開始緯度経度８０６（Ｓｔａｒｔ（Ｌａｔ，Ｌｏｎ））＝終了緯度経度８０７（Ｅｎｄ（Ｌａｔ，Ｌｏｎ））＝Ｓｔａｙとなった位置の範囲の情報。同一視することができる誤差範囲はシステム全体で規定された値でよい。例えば、開始緯度経度８０６地点と終了緯度経度８０７地点とを結んだ直線を対角線とする矩形範囲内を同一視する位置範囲の情報とする。あるいは、開始緯度経度８０６地点と終了緯度経度８０７地点とを結んだ直線を直径とする円形範囲内を同一視する位置範囲としても良い。
・有効範囲開始時間８０８（ｖａｌｉｄＴｉｍｅＳｔａｒｔ）＝コンテキスト情報発生の有効範囲時間（ＳｔａｒｔＴｉｍｅの時刻からの−時間。Ｓ７０４で抽出して分析対象とする複数のシーン情報５００の中で最も早い開始時刻とＳｔａｒｔＴｉｍｅとの差分）。
・有効範囲終了時間（ｖａｌｉｄＴｉｍｅＥｎｄ）＝コンテキスト情報終了の有効範囲時間（ＥｎｄＴｉｍｅの時刻からの＋時間。Ｓ７０４で抽出して分析対象とする複数のシーン情報５００の中で最も遅い終了時刻とＥｎｄＴｉｍｅとの差分）。
【００８５】
コンテキスト情報生成部１０５は、上述したように、Ｓ７０５でコンテキスト情報蓄積部１０６に登録されたコンテキスト情報８００のコンテキストＩＤ８０１をヒストリー蓄積部１０４から抽出されたシーン情報５００にも登録を行う。コンテキスト情報生成部１０５は、コンテキスト情報生成・コンテキスト情報蓄積部更新後、再び判定処理Ｓ７０３へと戻り、５０％を超える確率（所定の確率でもよい）で同じ場所で停止中（Ｓｔａｙ）となっていないと判定されるまでＳ７０３〜Ｓ７０６までの一連の処理を繰り返し行う。
【００８６】
基準タイムスロット作成処理によって、処理対象の日区分（例えば、月曜日等）について、ユーザが停止中（Ｓｔａｙ）の状態であるタイムスロットがすべて作成される。これは、ヒストリー蓄積部１０４に蓄積されたシーン情報５００において、処理対象の日区分に該当するすべて日のすべてのシーン情報５００を分析したものである。
【００８７】
次に、コンテキスト情報生成部１０５は、基準タイムスロット作成処理（Ｓで作成した基準タイムスロット（停止中のタイムスロット）間の時間帯における、速度区分毎すなわちユーザの状態毎のタイムスロットを作成する（Ｓ７０７）。
【００８８】
コンテキスト情報生成部１０５は、Ｓ７０３で５０％を越える確率で同じ位置でＳｔａｙとなるシーン情報５００がないと判定された場合はＳ７０７，Ｓ７０８へと処理を移す。コンテキスト情報生成部１０５は、速度区分がＷａｌｋｉｎｇ状態の場合について示しているが、他の速度区分があれば、タイムスロットによって埋まっていない時間帯があればＳ７０７からＳ７１４の処理を繰り返す。
【００８９】
コンテキスト情報生成部１０５は、分析対象日区分毎のタイムスロットのＩＤ（ｋ＝０〜Ｎとする）のｋについて０を設定し（Ｓ７０８）、対象となるタイムスロットについて順次分析を行う。既に作成済みのタイムスロットをＮ個とすると、０≦ｋ≦Ｎ−１となる。
【００９０】
コンテキスト情報生成部１０５は、分析対象日（月曜の分析を行っている場合、ヒストリー蓄積部１０４中のシーン情報５００で月曜日のシーン情報５００）でかつ、ｋ番目とｋ＋１番目のタイムスロットの間の時間にて発生したシーン情報５００でかつ連続してＷａｌｋｉｎｇとなる一連のシーン情報５００を抽出する。コンテキスト情報生成部１０５は、抽出したシーン情報５００の中から、ｋ番目のタイムスロットの位置とｋ＋１番目のタイムスロットの位置を対角線とする矩形領域内に５０％以上の確率（所定の確率で構わない）で存在するシーン情報５００群を抽出する（Ｓ７０９）。
【００９１】
コンテキスト情報生成部１０５は、Ｓ７０９で抽出されたシーン情報５００群があるか否かを判定し（Ｓ７１０）、抽出したシーン情報５００群がある場合はそのシーン情報５００群を分析して、処理対象となっている速度区分（例えば歩行中（Ｗａｌｋｉｎｇ））で同じ位置あるいは同一視することができる位置にいる時間帯のタイムスロットを作成し、作成したタイムスロットの情報から以下の内容のコンテキスト情報８００を生成する。コンテキスト情報生成部１０５は、生成したコンテキスト情報８００をコンテキスト情報蓄積部１０６に登録（蓄積）するとともに、登録したコンテキスト情報８００のコンテキストＩＤを生成の基となったＳ７０９で抽出したシーン情報５００のコンテキストＩＤ５１５に登録する（Ｓ７１１）。以下に、コンテキスト情報生成部１０５が、Ｓ７１１で生成するコンテキスト情報８００のデータ項目について説明する。
【００９２】
＜コンテキスト情報設定項目（基準タイムスロット間のコンテキスト情報）＞
・速度区分８０１（ＳｐｅｅｄＳｅｃｔｉｏｎ）＝歩行中（Ｗａｌｋｉｎｇ）
・タイムスロット開始時間８０４（ＳｔａｒｔＴｉｍｅ）＝歩行中（Ｗａｌｋｉｎｇ）となった時刻の平均値。すなわち、Ｓ７０４で抽出したシーン情報５００群について一日毎で一番早い時刻の平均値を算出した値。
・タイムスロット終了時間８０５（ＥｎｄＴｉｍｅ）＝歩行中（Ｗａｌｋｉｎｇ）から出る時刻の平均値。すなわち、Ｓ７０４で抽出したシーン情報５００群について一日毎で一番遅い時刻の平均値を算出した値。
・タイムスロットＩＤ８０３（ＴｉｍｅＳｌｏｔ＿ＩＤ）＝各日区分の識別子を含むＩＤ。（ｔｉｍｅＳｌｏｔ＿Ｍｏｎ［ｉ］など。各日区分の識別子はＭｏｎ（月曜日を表す）。ｉは、各日区分におけるタイムスロットの作成の順番に付与される番号である。タイムスロットが作成される順番にｉがインクリメントされて付与される。歩行中（Ｗａｉｋｉｎｇ）のタイムスロットに関しては、ｉはＮ＋１から開始する。）
・開始緯度経度８０６（Ｓｔａｒｔ（Ｌａｔ，Ｌｏｎ））＝終了緯度経度８０７（Ｅｎｄ（Ｌａｔ，Ｌｏｎ））＝Ｓｔａｙとなった位置の範囲の情報。同一視することができる誤差範囲はシステム全体で規定された値でよい。例えば、開始緯度経度８０６地点と終了緯度経度８０７地点とを結んだ直線を対角線とする矩形範囲内を同一視する位置範囲の情報とする。あるいは、開始緯度経度８０６地点と終了緯度経度８０７地点とを結んだ直線を直径とする円形範囲内を同一視する位置範囲としても良い。
・有効範囲開始時間８０８（ｖａｌｉｄＴｉｍｅＳｔａｒｔ）＝コンテキスト情報発生の有効範囲時間（ＳｔａｒｔＴｉｍｅの時刻からの−時間。Ｓ７０４で抽出して分析対象とする複数のシーン情報５００の中で最も早い開始時刻とＳｔａｒｔＴｉｍｅとの差分）。
・有効範囲終了時間（ｖａｌｉｄＴｉｍｅＥｎｄ）＝コンテキスト情報終了の有効範囲時間（ＥｎｄＴｉｍｅの時刻からの＋時間。Ｓ７０４で抽出して分析対象とする複数のシーン情報５００の中で最も遅い終了時刻とＥｎｄＴｉｍｅとの差分）。
【００９３】
コンテキスト情報生成部１０５は、上述したように、コンテキスト情報蓄積部１０６に登録されたコンテキスト情報８００のコンテキストＩＤ８０１を、Ｓ７０９にて抽出され当該コンテキスト情報生成の基となったシーン情報５００群のコンテキストＩＤ５１５に付与して登録する（Ｓ７１１）。Ｓ７１１終了後、コンテキスト情報生成部１０５は、Ｓ７０１〜Ｓ７０６までの一連の処理にて生成した基準タイムスロット間の全ての時間帯について分析済か否かについて判定し、分析済と判定された場合（Ｓ７１２でＹｅｓ）は、Ｓ７１４へ処理を移す。分析済ではないと判定された場合（Ｓ７１２でＮｏ）は、コンテキスト情報生成部１０５は、次のタイムスロット間に分析対象のタイムスロット間の時間帯を設定し（Ｓ７１３）、再び、処理ステップＳ７０９へ戻り、判定処理ステップＳ７１２で全ての時間帯について分析済と判定されるまで処理を繰り返す。
【００９４】
＜状況監視処理＞
次に、図１１〜図１５を用いて状況監視処理（情報判断抽出処理、操作情報選出処理）について説明する。
【００９５】
状況監視処理は、現況情報取得処理、情報判断抽出処理、操作情報選出処理とから構成される。現況情報取得処理では、ユーザの現在の状況である現況情報（位置情報、速度情報、時刻情報等）を抽出する。
【００９６】
情報判断抽出処理では、取得した現況状況の内容とコンテキスト情報蓄積部１０６に蓄積されているコンテキスト情報８００の内容とをコンテキスト情報検索条件（所定の条件）のもとで比較して、内容が一致するかあるいは最も近似するコンテキスト情報を検索して抽出する処理を行う。本実施の形態における、コンテキスト情報検索条件は、速度／位置／時刻の３つの条件の組み合わせにより設定される。また、それぞれのコンテキスト情報検索条件には、条件の強弱により重み付け係数を対応させ、後述する対応するコンテキスト情報検索条件により検出されたコンテキスト情報に基づくアプリケーション利用状況ランキングの際に利用する。
【００９７】
操作情報選出処理では、現況と同じか最も近いと判断されて抽出されたコンテキスト情報８００に基づいて、ユーザの現況においてユーザが操作する可能性が最も高いアプリケーション（操作情報）を選出してランク付けを行う。
【００９８】
図１１は、本実施の形態に係る現況情報取得処理及び情報判断抽出処理を示すフロー図である。図１２は、実施の形態１に係る操作情報選出処理を示すフロー図である。図１３は、コンテキスト情報検索条件と重み付けＩＤとの対応、及び対応するコンテキスト情報検索条件により検出されたコンテキスト情報に基づくアプリケーション利用状況ランキングの際の重み付け係数を示す表である。図１４は、実施の形態１におけるアプリ別ランキング情報定義テーブルである。図１５は、実施の形態１における推奨アプリケーション情報テーブルを示す図である。
【００９９】
ここで、図１３を用いて、コンテキスト情報検索条件と重み付けＩＤΦ（ｉ）との対応、及び対応するコンテキスト情報検索条件により検出されたコンテキスト情報に基づくアプリケーション利用状況ランキングの際の重み付け係数について説明する。
【０１００】
図１３において、列のセンサ条件（コンテキスト情報検索条件）重み付け１４０１は、センサ条件（コンテキスト情報検索条件）における速度、位置、時刻の組み合わせパターンとこれらの組み合わせパターンに対応する重み付け係数を表すものである。センサ条件の重み付けの組み合わせとしては１４０２に示すように速度／位置／時刻、速度／位置、速度／時間、速度、位置、時刻に対し、それぞれ１、０．８、０．８、０．５、０．３、０．３の重み付け係数が対応している。すなわち、コンテキスト情報の内容と現況情報の内容とを比較する場合に、速度／位置／時刻からなる３つの条件のもとで比較して一致するコンテキスト情報を抽出する。条件が多い方が、現況状況とコンテキスト情報の示す状況とがより近いので、重み付け係数も大きくなる。
【０１０１】
行の日区分重み付け１４０３は、日区分の条件（例えば、曜日区分と平日休日区分）による重み付け係数をあらわすものである。１４０５に示すように、各曜日区分の場合と平日休日区分の場合に対して、それぞれ１と０．９の重み付け係数が対応する。
【０１０２】
図１３では、センサ条件による重み付け係数と日区分条件による重み付け係数との組み合わせにより、φ（１）〜φ（１２）で示すような重み付けＩＤで指定可能な重み係数の定義を例示している。例えば、１４０４にて示すように、重み付けＩＤφ（４）で指定可能な重み係数は０．７２ということになる。
【０１０３】
図１１において、状況監視部１０７は、処理を開始すると、情報処理装置１００１のシャットダウン要求があるか否かを判定し（Ｓ９０１）、シャットダウン要求がないと判定された場合（Ｓ９０１でＮｏ）は、Ｓ９０２へと進む。
【０１０４】
＜現況情報取得処理＞
情報判断抽出部１０８は、現況情報を取得する。情報判断抽出部１０８は、例えば、図示しないカレンダーから曜日や祝祭日に当たるか否かに関する現在の日区分情報、現在の移動速度情報、現在の位置情報、現在の時刻情報等を取得する（Ｓ９０２）。
【０１０５】
＜情報判断抽出処理＞
情報判断抽出部１０８は、Ｓ９０２で現況情報の取得が完了すると、コンテキスト情報検索条件の検索条件番号のパラメータｉを先頭の１にセットする（Ｓ９０３）。情報判断抽出部１０８は、コンテキスト情報検索条件を重み付けＩＤΦ（ｉ）に対応するコンテキスト情報検索条件に設定する（Ｓ９０４）。情報判断抽出部１０８は、設定したコンテキスト情報検索条件に基づいて、現況状況の内容とコンテキスト情報蓄積部１０６の複数のコンテキスト情報８００の内容とを比較判断して、設定したコンテキスト情報検索条件のもとで現況状況の内容と一致するコンテキスト情報８００を処理装置により検索する（Ｓ９０５）。
【０１０６】
情報判断抽出部１０８の情報判断処理について以下に詳しく説明する。
【０１０７】
情報判断抽出部１０８は、ｉの値に対応する重み付けＩＤ（ｉ）をコンテキスト情報検索条件として設定し（Ｓ９０４）、コンテキスト情報蓄積部１０６からコンテキスト情報検索条件と一致するコンテキスト情報８００を検出する。指定されたコンテキスト検索条件は、図１３で示すように、速度／位置／時刻のうち一つ以上を組み合わせた検索条件であり、情報判断抽出部１０８は、コンテキスト情報蓄積部１０６内の個々のコンテキスト情報８００について、対象検索条件が含む個々の数値・値等が、以下の条件と合致するか否かを判定する。
・速度：現況の移動速度が、コンテキスト情報８００における速度区分８０２にて示される速度区分に一致するか否か。
・時間：現在時刻が、コンテキスト情報８００における誤差範囲を含めたタイムスロット開始時間８０４からタイムスロット終了時間８０５の範囲以内か否か。図８の例では、（タイムスロット開始時間８０４−有効範囲開始時間８０８）＜現在時刻＜（タイムスロット終了時間８０５＋有効範囲終了時間８０９）であるか否か。
・位置：現在位置が、誤差範囲を含めたコンテキスト発生位置範囲以内か否かによって判定を行う。図８の例では現在の位置情報が（（Ｓｔａｒｔ（Ｌａｔ，Ｌｏｎ）８０６のＬａｔ−システム規定の誤差）＜現在位置のＬａｔ（緯度）＜（（Ｅｎｄ（Ｌａｔ，Ｌｏｎ）８０６のＬａｔ（緯度）＋システム規定の誤差）ＯＲ（Ｓｔａｒｔ（Ｌａｔ，Ｌｏｎ）８０６のＬａｔ＋システム規定の誤差）＞現在位置のＬａｔ＞（Ｅｎｄ（Ｌａｔ，Ｌｏｎ）８０７のＬａｔ−システム規定の誤差））ＡＮＤ（（Ｓｔａｒｔ（Ｌａｔ，Ｌｏｎ）８０６のＬｏｎ（経度）−システム規定の誤差）＜現在位置のＬｏｎ（経度）＜（Ｅｎｄ（Ｌａｔ，Ｌｏｎ）８０７のＬｏｎ（経度）＋システム規定の誤差）ＯＲ（Ｓｔａｒｔ（Ｌａｔ，Ｌｏｎ）８０６のＬｏｎ＋システム規定の誤差）＞現在位置のＬｏｎ＞（Ｅｎｄ（Ｌａｔ，Ｌｏｎ）８０６のＬｏｎ−システム規定の誤差））を満たすか否か。
【０１０８】
情報判断抽出部１０８は、Ｓ９０５での抽出結果から、抽出されたコンテキスト情報８００があるか否かを判定する（Ｓ９０６）。Ｓ９０６で条件が一致するコンテキスト情報があったとされた場合（Ｓ９０６でＹｅｓ）、情報判断抽出部１０８は、Ｓ９０７へ処理を移す。
【０１０９】
Ｓ９０６で条件が一致するコンテキスト情報がないとされた場合（Ｓ９０６でＮｏ）、情報判断抽出部１０８は、すべてのコンテキスト検索条件を設定したかを判断する（Ｓ９０９）。Ｓ９０９でまだ未設定の検索条件があると判断された場合は（Ｓ９０９でＮｏ）、情報判断抽出部１０８は、ｉの値をインクリメントして（Ｓ９１０）、Ｓ９０４へ処理をもどす。Ｓ９０９ですべての検索条件を設定済みと判断された場合は（Ｓ９０９でＹｅｓ）、情報判断抽出部１０８は、処理をＳｌｅｅｐ状態に移す（Ｓ９１２へ）。
【０１１０】
情報判断抽出部１０８は、Ｓ９０４〜Ｓ９１０までの一連の処理の繰り返しにより、図１３に例示するようなコンテキスト情報検索条件のもとで現況と一致する状況における、再現性のあるコンテキスト情報８００をコンテキスト情報蓄積部１０６から抽出する。
【０１１１】
＜操作情報選出処理＞
操作情報選出部１０９は、Ｓ９０５で抽出されたコンテキスト情報８００のコンテキストＩＤ８０１と同じコンテキストＩＤをもつシーン情報５００をヒストリー蓄積部１０４より検索して抽出する。操作情報選出部１０９は、抽出した複数のシーン情報５００はすべて当該コンテキスト情報８００の状況であると判断して、当該コンテキスト情報８００の状況の発生（コンテキスト発生ともいう）回数Ｃ＿ｎ（コンテキスト発生回数）としてカウントする。次に、操作情報選出部１０９は、抽出した複数のシーン情報５００のアプリケーション情報（Ａｐｐ識別子５０９、ｐａｒａｍ１（５１０１）〜ｐａｒａｍＮ（５１０Ｎ））を抽出し、アプリケーション毎に利用回数Ａ＿ｎ（アプリ利用回数）をカウントする（Ｓ９０５）。アプリケーションの利用回数Ａ＿ｎのカウント方法は、アプリケーション毎に定義する。例えば、アプリケーションがＷｅｂブラウザの場合は、ユーザが連続して同じトップドメインのページにアクセスした場合は、最後にアクセスしたものだけカウントする、などと規定する。
【０１１２】
操作情報選出部１０９は、各アプリケーションの検出数（Ａ＿ｎ）とコンテキスト発生回数（Ｃ＿ｎ）とから各アプリケーションの検出率（Ａ＿ｎ／Ｃ＿ｎ）情報（出現率の一例）を処理装置により算出する（Ｓ９０５）。
【０１１３】
操作情報選出部１０９は、各アプリケーションの検出数（Ａ＿ｎ）の値に基づいて、推奨アプリ情報の作成に十分な検出が出来たか否かの判定を行う（Ｓ９０８）。操作情報選出部１０９は、アプリケーションのサンプル数が少ない場合を除外するために、アプリケーション毎に予め設定された下限値を用いて推奨アプリ情報の作成に十分な検出が出来たか否かの判定を行う。十分なアプリ数が検出されたと判定された場合（Ｓ９０８でＹｅｓ）、操作情報選出部１０９は、Ｓ９１１に処理を移し、推奨アプリ情報生成処理を行う。十分なアプリ数が検出されていないと判定された場合（Ｓ９０８でＮｏ）、操作情報選出部１０９は、Ｓ９０９へ処理を戻す。
【０１１４】
操作情報選出部１０９は、Ｓ９０７で算出した検出率情報と予め記憶装置に記憶されているアプリ別ランク情報定義テーブル１１０１（図１４参照）を用いて、推奨アプリケーション情報テーブル１５０１（図１５参照）を生成して記憶装置に記憶する（Ｓ９１１）。操作情報選出部１０９は、算出したアプリケーション毎の検出率情報（Ａ＿ｎ／Ｃ＿ｎ）と、アプリ別ランク情報定義テーブル１１０１とを照合し、各アプリケーションのランク付けを行う。操作情報選出部１０９は、検出された全てのアプリケーションに関するランク付けの終了後、ランクの高いアプリケーションから順番に、推奨アプリケーション情報テーブル１５０１に設定する。図１５においては、３つのアプリケーションを選出しているが、所定の数を設定しても良い。この時、操作情報選出部１０９は、アプリケーション（ＡＰＰ）とアプリケーションと共に使用したデータ（ＡｐｐＤａｔａ１〜ＡｐｐＤａｔａＮ）に設定を行う。
【０１１５】
操作情報選出部１０９が行う、アプリケーションと共に使用したデータ（ＡｐｐＤａｔａ１〜ＡｐｐＤａｔａＮ）の設定方法について説明する。
【０１１６】
例えば、アプリケーションがブラウザ情報の場合、操作情報選出部１０９は、予め規定された所定の確率以上でトップドメインのＵＲＬが一致するものの中から、使用率が最も高いものを抽出する。操作情報選出部１０９は、例えば、画像のＵＲＬ（．ｇｉｆ）を抜くなど特定の書式のＵＲＬを候補選択に対する処理方法として指定することも可能である。また、例えば、アプリケーションがメールの場合は、操作情報選出部１０９は、Ｓ９０７でＴｏ，ＣＣ，Ｓｕｂｊｅｃｔ，Ｂｏｄｙなどに分けたデータをＡｐｐＤａｔａとして取得し、予め規定された所定の確率以上で出現されたものの中で、各ＡｐｐＤａｔａについて一致数が多いものから順に推奨アプリケーション情報テーブル１５０１に設定する。推奨アプリケーション情報テーブル１５０１の生成完了の後、Ｓ９１２で一定時間あけたのち、再びＳ９０１へと戻り、一連の処理を、情報処理装置１００１の終了情報（シャットダウン要求）が来るまで繰り返し行う。
【０１１７】
以上のように、本実施の形態によれば、ユーザの状況情報を含むシーン情報５００を一定時間毎に複数生成して蓄積し、生成したシーン情報５００を分析して再現性のあるユーザの状況のパターンを示すコンテキスト情報８００を複数生成することができる。このときコンテキスト情報８００は、ユーザの状態（速度区分）やユーザの位置（同一視することのできる位置の範囲）やシーン情報の時刻を含む時間帯等によって、あるいはこれらの組み合わせによって再現性のあるユーザの状況のパターンを示すことができる。したがって、ユーザの現在の状況を判断するときに、適切な範囲を持ったコンテキスト情報と現況情報とを、適切な範囲を持ったユーザの状況を適宜組み合わせながら状況分析を行うので、きめ細やかな状況分析を行うことができ、適切な状況判断を行うことができるという効果を奏する。
【０１１８】
また、本実施の形態によれば、適切な状況判断を行うことができるので、最適な操作情報を選出することができるという効果を奏する。
【０１１９】
実施の形態２．
実施の形態２について図１６を用いて説明する。
【０１２０】
本実施の形態では、実施の形態１で生成した推奨アプリケーション情報テーブル１５０１を表示装置等を用いてユーザに提示する方法について説明する。
【０１２１】
まず、図１６を用いて実施の形態２にかかる情報処理装置１００１の構成について説明する。図１６は、実施の形態２にかかる情報処理装置１００１の機能ブロック図である。ここで、実施の形態１で説明したものと同じ機能、動作を有する機能ブロックについては同じ符号を付し、その説明を省略する。
【０１２２】
実施の形態１との相違点は、情報処理装置１００１内に、さらに、操作表示部２０１を備える点である。
【０１２３】
図１１において、操作情報選出部１０９は、生成した推奨アプリケーション情報テーブルの情報を、操作表示部２０１へと送る。操作表示部２０１は、受け取った推奨アプリケーション情報テーブルの情報の表示装置の画面への表示や、スピーカからの再生などを行うことにより、ユーザに提示する。提示方法としては、例えば、アプリケーションのランク情報に応じて、画面へ表示する色、アイコン種類、アイコンの大きさなどを変更しても良い。また、例えば、スピーカの音量を変化させる、音程を変える、バックに異なる効果音を入れるなどの方法を取ることも可能である。
【０１２４】
上記実施の形態１〜２の説明では、「ユーザ操作情報取得部」、「状況情報取得部」、「ヒストリー生成部」、「コンテキスト情報生成部」、「状況監視部」、「情報判断抽出部」、「操作情報選出部」、「操作提示部」がそれぞれ独立した機能ブロックとして情報処理装置１００１を構成している。しかし、これに限られるわけではなく、例えば、「ユーザ操作情報取得部」と「状況情報取得部」とをひとつの機能ブロックで実現し、「ヒストリー生成部」と「コンテキスト情報生成部」とをひとつの機能ブロックで実現しても良い。あるいは、これらの機能ブロックを、他のどのような組み合わせで情報処理装置１００１を構成しても構わない。
【０１２５】
実施の形態１〜２について以下に再言する、
実施の形態１〜２に係る情報処理装置は、ユーザの「状況情報」を元に、位置情報および位置情報の同一視範囲（中心点とその半径からなる円にて示す方法、あるいは対角線上の二点にて示す矩形範囲など）による分類情報を付加した情報を生成し、ユーザの操作（行動）に関する情報とリンク付けされた形で蓄積することができることを特徴とする。
【０１２６】
実施の形態１〜２に係る情報処理装置は、ユーザの「状況情報」を元に、時刻情報および時刻情報の同一視範囲（ある時刻およびその時刻からの＋−による有効範囲情報など）による分類情報を付加した情報を生成し、ユーザの操作（行動）に関する情報とリンク付けされた形で、蓄積することができることを特徴とする。
【０１２７】
実施の形態１〜２に係る情報処理装置は、ユーザの「状況情報」を元に、速度情報の同一視範囲（ある範囲を持った速度：０〜１０ｋｍ／時など）による分類情報を付加した情報を生成し、ユーザの操作（行動）に関する情報とリンク付けされた形で、蓄積することができることを特徴とする。
【０１２８】
実施の形態１〜２に係る情報処理装置は、ユーザの「状況情報」を元に、時間帯の同一視範囲（開始時間、終了時間およびそれらの有効範囲）による分類情報を付加した情報を生成し、ユーザの操作（行動）に関する情報とリンク付けされた形で、蓄積することができることを特徴とする。
【０１２９】
実施の形態１〜２に係る情報処理装置は、反復性のあるユーザの位置情報毎に、「ユーザ操作情報取得部」から取得したユーザ操作情報を分類し、反復性のあるユーザ操作を抽出、ユーザ操作と位置情報とをリンク付けて蓄積を行うことを特徴とする。
【０１３０】
実施の形態１〜２に係る情報処理装置は、反復性のある時刻情報毎に、「ユーザ操作情報」を分類し、反復性のあるユーザ操作を抽出、ユーザ操作と時間帯とリンク付けて蓄積を行うことを特徴とする。
【０１３１】
実施の形態１〜２に係る情報処理装置は、反復性のある速度区分情報毎に、「ユーザ操作情報取得部」から取得した情報を分類し、反復性のあるユーザ操作を抽出、ユーザ操作と速度区分情報とをリンク付けて蓄積を行うことを特徴とする。
【０１３２】
実施の形態１〜２に係る情報処理装置は、反復性のある時間帯区分情報毎に、「ユーザ操作情報取得部」から取得した情報を分類し、反復性のあるユーザ操作を抽出、ユーザ操作と速度区分情報とをリンク付けて蓄積を行うことを特徴とする。
【０１３３】
実施の形態１〜２に係る情報処理装置は、速度区分情報を元にユーザの移動速度の変化に関し反復性のある時間帯を抽出し、時間帯ごとに「ユーザ操作情報取得部」から取得したユーザ操作情報を分類し、反復性のあるユーザ操作を抽出、ユーザ操作と時間帯とリンク付けて蓄積を行うことを特徴とする。
【０１３４】
実施の形態１〜２に係る情報処理装置は、反復性のあるユーザ状況情報を蓄積し、ユーザの現況を表す一つ以上の状況情報を持ち、ユーザの現況と反復性のある状況情報を照合し、現況と一致する一つ以上の反復性のある状況情報を抽出することを特徴とする。
【０１３５】
実施の形態１〜２に係る情報処理装置は、ユーザの操作情報と関連付けられた反復性のあるユーザ状況情報を蓄積し、ユーザの現況を表す一つ以上の状況情報を持ち、ユーザの現況と反復性のある状況情報を照合し、現況と関連付けられた一つ以上のユーザ操作情報を抽出することを特徴とする。
【０１３６】
実施の形態１〜２に係る情報処理装置は、抽出された反復性のある状況情報に対する重要度を算出する手段を持ち、現況と一致する一つ以上の反復性のある状況情報を重要度と共に抽出する。
【０１３７】
実施の形態１〜２に係る情報処理装置は、抽出された反復性のある操作情報に対する重要度を算出する手段を持ち、現況と関連付けられた一つ以上のユーザ操作情報を重要度と共に抽出することを特徴とする。
【０１３８】
実施の形態１〜２に係る情報処理装置は、抽出された情報を、提示することを特徴とする。
【図面の簡単な説明】
【０１３９】
【図１】実施の形態１に係る情報処理装置１００１の外観の一例を示す図である。
【図２】実施の形態における情報処理装置１００１のハードウェア資源の一例を示す図である。
【図３】実施の形態１における情報処理装置１００１の機能ブロック図である。
【図４】実施の形態１に係るシーン情報５００のデータ項目を示す図である。
【図５】実施の形態１における情報処理装置１００１のヒストリー生成処理（履歴情報生成処理）とコンテキスト情報生成処理の一連の処理を示すフロー図である。
【図６】実施の形態１におけるヒストリー生成処理（履歴情報生成処理、履歴情報生成プログラム）を示すフロー図である。
【図７】実施の形態１に係るコンテキスト情報生成処理の一連の処理の流れを示すフロー図である。
【図８】実施の形態１に係るコンテキスト情報８００のデータ項目を示す図である。
【図９】実施の形態１におけるコンテキスト情報生成・コンテキスト情報蓄積部更新処理の流れを示すフロー図である。
【図１０】実施の形態１におけるコンテキスト情報生成・コンテキスト情報蓄積部更新処理の流れを示すフロー図である。
【図１１】本実施の形態に係る現況情報取得処理及び情報判断抽出処理を示すフロー図である。
【図１２】実施の形態１に係る操作情報選出処理を示すフロー図である。
【図１３】コンテキスト情報検索条件と重み付けＩＤとの対応、及び対応するコンテキスト情報検索条件により検出されたコンテキスト情報に基づくアプリケーション利用状況ランキングの際の重み付け係数を表す表である。
【図１４】実施の形態１におけるアプリ別ランキング情報定義テーブルである。
【図１５】実施の形態１における推奨アプリケーション情報テーブルを示す図である。
【図１６】実施の形態２にかかる情報処理装置１００１の機能ブロック図である。
【符号の説明】
【０１４０】
１０１  ユーザ操作情報取得部、１０２  状況情報取得部、１０３  ヒストリー生成部、１０４  ヒストリー蓄積部、１０５  コンテキスト情報生成部、１０６  コンテキスト情報蓄積部、１０７  状況監視部、１０８  情報判断抽出部、１０９  操作情報選出部、５００  シーン情報、５０１  シーンＩＤ、５０２  日時、５０３  緯度、５０４  経度、５０５  地点ＩＤ、５０６  地点名称、５０７  Ｃｎｇｓｔｎ−ｌｅｖｅｌ、５０８  ＥＣＧ、５０９  ＡＰＰ識別子、５１０１  ｐａｒａｍ１、５１０Ｎ  ｐａｒａｍＮ、５１２  曜日、５１３  速度、５１４  ｉｓ−Ｇｐｓ−Ｂｈｉｎｄ、５１５  コンテキストＩＤ、８００  コンテキスト情報、８０１  コンテキストＩＤ、８０２  速度区分、８０３  タイムスロットＩＤ、８０４  タイムスロット開始時間、８０５  タイムスロット終了時間、８０６  開始緯度経度、８０７  終了緯度経度、８０８  有効範囲開始時間、８０９  有効範囲終了時間、９０１  表示装置、９０２  キーボード、９０３  マウス、９０４  ＦＤＤ、９０５  ＣＤＤ、９０６  プリンタ装置、９０７  スキャナ装置、９０９  タッチパネル、９１０  システムユニット、９１１  ＣＰＵ、９１２  バス、９１３  ＲＯＭ、９１４  ＲＡＭ、９１５  通信ボード、９１６  フラッシュメモリ、９１７  スピーカ、９１８  マイク、９１９  カメラ、９２０  磁気ディスク装置、９２１  ＯＳ、９２２  ウィンドウシステム、９２３  プログラム群、９２４  ファイル群、９３１  電話器、９３２  ファクシミリ機、９４０  インターネット、９４１  ゲートウェイ、９４２  ＬＡＮ、１００１  情報処理装置。
【図１】
2008262251.tif 000003
【図２】
2008262251.tif 000004
【図３】
2008262251.tif 000005
【図４】
2008262251.tif 000006
【図５】
2008262251.tif 000007
【図６】
2008262251.tif 000008
【図７】
2008262251.tif 000009
【図８】
2008262251.tif 000010
【図９】
2008262251.tif 000011
【図１０】
2008262251.tif 000012
【図１１】
2008262251.tif 000013
【図１２】
2008262251.tif 000014
【図１３】
2008262251.tif 000015
【図１４】
2008262251.tif 000016
【図１５】
2008262251.tif 000017
【図１６】
2008262251.tif 000018