(57)【特許請求の範囲】
【請求項１】
ユーザ端末と通信を行い、ユーザの行動履歴を収集するための支援を行う行動履歴入力支援サーバであって、
前記ユーザの行動履歴を記憶する行動履歴記憶手段と、
前記ユーザの行動を問い合わせるための通知メッセージを前記ユーザ端末に送信する通知送信手段と、
前記通知送信手段が前記通知メッセージを送信する時刻である通知時刻を乱数に基づいて複数生成する通知時刻生成手段と、
前記通知時刻生成手段が生成した複数の通知時刻の中から前記通知メッセージに対して前記ユーザが応答しやすい通知時刻である隙間時刻を、応答しやすさを示す適応度と通知時刻との対応を表す評価関数に基づいて推定する隙間時刻推定手段と、
前記隙間時刻推定手段が推定した隙間時刻に前記通知送信手段が前記通知メッセージを送信するように制御する送信制御手段と、
前記送信制御手段によって制御された前記通知送信手段が前記隙間時刻に送信した前記通知メッセージに応じて前記ユーザ端末から送信された応答メッセージを受信する応答受信手段と、
前記応答受信手段が前記応答メッセージを受信した場合の応答時刻又は前記応答メッセージを受信しなかった場合のタイムアウト時刻を前記隙間時刻に関連付けて前記行動履歴記憶手段に記録する行動履歴記録手段と、
前記行動履歴記憶手段に記録された前記応答時刻又は前記タイムアウト時刻から算出された応答時間に基づいて前記評価関数を変更する評価関数変更手段と、を備え、
前記隙間時刻推定手段は、次世代個体を生成する対話型遺伝的アルゴリズムに基づいて、前記通知時刻生成手段によって複数生成された前記通知時刻を組み換えて前記隙間時刻の候補を生成し、生成した前記隙間時刻の候補に対する前記評価関数に基づく推定を繰り返し、前記隙間時刻を推定する、
行動履歴入力支援サーバ。
【請求項２】
前記ユーザについての情報である、個人情報を含むデモグラフィック情報を記憶するユーザ属性記憶手段をさらに備え、
前記隙間時刻推定手段は、前記ユーザ属性記憶手段に記憶された前記ユーザのデモグラフィック情報に基づいて選択した前記評価関数に基づいて推定する、
請求項１に記載の行動履歴入力支援サーバ。
【請求項３】
前記隙間時刻推定手段は、
（ａ）前記通知時刻生成手段が生成した複数の通知時刻を現世代個体記憶手段に記憶させる現世代生成手段と、
（ｂ）前記評価関数に基づいて、前記現世代個体記憶手段に記憶された通知時刻の適応度を算出する適応度算出手段と、
（ｃ）算出した適応度に基づいて前記隙間時刻の候補を選択する候補算出手段と、
（ｄ）前記隙間時刻の候補の時刻に前記通知メッセージを送信し、規定時間内に前記応答メッセージを受信した回数が規定回数に達したか否かを判断する隙間時刻判断手段と、
（ｅ）規定回数に達したと判断した場合、前記隙間時刻の候補を前記隙間時刻と推定する推定手段と、
（ｆ）規定回数に達していないと判断した場合、前記現世代個体記憶手段に記憶された通知時刻のうち前記隙間時刻の候補を除いた通知時刻のうちから選択した一組の通知時刻に基づいて、前記一組を構成する通知時刻を組み合わせて次世代の通知時刻を生成する組み換え手段と、
（ｇ）前記組み換え手段により生成された次世代の通知時刻に対して特定の確率で突然変異を起こさせ、代替となる次世代の通知時刻候補を生成する突然変異手段と、
（ｈ）生成した次世代の通知時刻が所定の個数になるまで（ｆ）と（ｇ）とを繰り返し、生成した通知時刻及び前記隙間時刻の候補を新たに前記現世代個体記憶手段に記憶させる生成繰り返し手段と、
（ｉ）前記隙間時刻が推定されるまで（ｂ）から（ｈ）を繰り返す推定繰り返し手段と、
をさらに備える、請求項１又は２に記載の行動履歴入力支援サーバ。
【請求項４】
前記応答メッセージと共に前記ユーザ端末から送信された前記ユーザ端末の位置情報を含む前記ユーザに関する情報であるセンシング情報を、前記応答時刻に対応付けて記憶するセンシングデータ記憶手段をさらに備え、
前記組み換え手段は、前記センシングデータ記憶手段に記憶されたセンシング情報に基づいて前記一組の通知時刻を選択する、
請求項３に記載の行動履歴入力支援サーバ。
【請求項５】
前記ユーザが通信を行った情報である通信ログ情報を記憶する通信ログ記憶手段をさらに備え、
前記組み換え手段は、前記通信ログ記憶手段に記憶された通信ログ情報に基づいて前記一組の通知時刻を選択する、
請求項３又は４に記載の行動履歴入力支援サーバ。
【請求項６】
ユーザ端末と、前記ユーザ端末と通信を行う行動履歴入力支援サーバとを備え、ユーザの行動履歴を収集するための支援を行う行動履歴入力支援システムであって、
前記行動履歴入力支援サーバは、
前記ユーザの行動履歴を記憶する行動履歴記憶手段と、
前記ユーザの行動を問い合わせるための通知メッセージを前記ユーザ端末に送信する通知送信手段と、
前記通知送信手段が前記通知メッセージを送信する時刻である通知時刻を乱数に基づいて複数生成する通知時刻生成手段と、
前記通知時刻生成手段が生成した複数の通知時刻の中から前記通知メッセージに対して前記ユーザが応答しやすい通知時刻である隙間時刻を、応答しやすさを示す適応度と通知時刻との対応を表す評価関数に基づいて推定する隙間時刻推定手段と、
前記隙間時刻推定手段が推定した隙間時刻に前記通知送信手段が前記通知メッセージを送信するように制御する送信制御手段と、
前記送信制御手段によって制御された前記通知送信手段が前記隙間時刻に送信した前記通知メッセージに応じて前記ユーザ端末から送信された応答メッセージを受信する応答受信手段と、
前記応答受信手段が前記応答メッセージを受信した場合の応答時刻又は前記応答メッセージを受信しなかった場合のタイムアウト時刻を前記隙間時刻に関連付けて前記行動履歴記憶手段に記録する行動履歴記録手段と、
前記行動履歴記憶手段に記録された前記応答時刻又は前記タイムアウト時刻から算出された応答時間に基づいて前記評価関数を変更する評価関数変更手段と、を備え、
前記隙間時刻推定手段は、次世代個体を生成する対話型遺伝的アルゴリズムに基づいて、前記通知時刻生成手段によって複数生成された前記通知時刻を組み換えて前記隙間時刻の候補を生成し、生成した前記隙間時刻の候補に対する前記評価関数に基づく推定を繰り返し、前記隙間時刻を推定し、
前記ユーザ端末は、
前記行動履歴入力支援サーバから送信された通知メッセージを受信する通知受信手段と、
前記通知受信手段が受信した通知メッセージに応じて、応答メッセージを入力する入力手段と、
前記入力手段が入力した応答メッセージを送信する応答送信手段と、
を備える行動履歴入力支援システム。
【請求項７】
ユーザの行動履歴を収集するための支援を行う行動履歴入力支援装置であって、
前記ユーザの行動履歴を記憶する行動履歴記憶手段と、
前記ユーザの行動を問い合わせるための通知メッセージを前記ユーザに通知する通知手段と、
前記ユーザの行動を問い合わせるための通知メッセージを通知する時刻である通知時刻を乱数に基づいて複数生成する通知時刻生成手段と、
前記通知時刻生成手段が生成した複数の通知時刻の中から前記通知メッセージに対して前記ユーザが応答しやすい通知時刻である隙間時刻を、応答しやすさを示す適応度と通知時刻との対応を表す評価関数に基づいて推定する隙間時刻推定手段と、
前記隙間時刻推定手段が推定した隙間時刻に前記通知手段が前記通知メッセージを通知するように制御する通知制御手段と、
前記通知制御手段によって制御された前記通知手段が前記隙間時刻に通知した前記通知メッセージに応じて前記ユーザから応答メッセージが入力された場合の応答時刻又は応答メッセージが入力されなかった場合のタイムアウト時刻を前記隙間時刻に関連付けて前記行動履歴記憶手段に記録する行動履歴記録手段と、
前記行動履歴記憶手段に記録された前記応答時刻又は前記タイムアウト時刻から算出された応答時間に基づいて前記評価関数を変更する評価関数変更手段と、を備え、
前記隙間時刻推定手段は、次世代個体を生成する対話型遺伝的アルゴリズムに基づいて、前記通知時刻生成手段によって複数生成された前記通知時刻を組み換えて前記隙間時刻の候補を生成し、生成した前記隙間時刻の候補に対する前記評価関数に基づく推定を繰り返し、前記隙間時刻を推定する、
行動履歴入力支援装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザの行動履歴の入力を支援する行動履歴入力支援サーバ、装置及びシステムに関する。
【背景技術】
【０００２】
近年、コンピュータネットワークであるインターネットの普及により、インターネットを媒体とした広告が盛んに行われている。このインターネット広告では、ユーザ端末を使用するユーザの嗜好や状態に合わせて広告を配信することができる。
【０００３】
このような広告の配信について、ユーザ属性や位置情報に応じた配信に加えて、ユーザのアクセスパターンを分析することによって、ユーザからのフィードバックを取り入れ、広告を配信する技術を開示する特許文献１が知られている。
【０００４】
特許文献１に開示された広告配信システムは、広告の配信タイミングとして、ユーザの外出中の待機時間に着目し、待機時間に現れるユーザ固有のアクセスパターンを基に広告の配信タイミングを決定している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１０−１２２７３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、広告の配信タイミングとしては、ユーザの外出中の待機時間だけでなく、自宅に滞在中の空き時間や会社での休憩時間等も考えられる。このような待機時間におけるユーザは、居場所によって様々な行動を行い、その行動の特徴は異なる。また、外出時であっても、学校や会社等でのアクセスパターンと、誰かと待ち合わせを行う際のアクセスパターンとは異なるので、ユーザ固有のアクセスパターンを抽出するためには、位置情報や、そのときのユーザの状況を考慮することが必要である。
【０００７】
さらに、ユーザ固有のアクセスパターンを抽出するためには、ユーザの行動や状態を記録した履歴データが必要である。このような履歴データを自発的に記録するユーザは少ない。また、日常的に行われる行動や、習慣的な行動は、無意識的に行われるので、ユーザ自らが記録することは、困難である。さらに、ユーザがまとめてあとから記録すると、履歴データは、ユーザの記憶によって緻密な記録の部分と、粗雑な記録の部分とのまばらな記録になる。
【０００８】
そこで、ユーザの行動履歴の収集を、ユーザの行動中に効率よく支援することができるようにする装置が求められている。
【０００９】
本発明は、ユーザの行動履歴の収集を、ユーザの行動中に効率よく支援することができるようにする行動履歴入力支援サーバ、装置及びシステムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明では、以下のような解決手段を提供する。
【００１１】
（１）  ユーザ端末と通信を行い、ユーザの行動履歴を収集するための支援を行う行動履歴入力支援サーバであって、前記ユーザの行動履歴を記憶する行動履歴記憶手段と、前記ユーザの行動を問い合わせるための通知メッセージを前記ユーザ端末に送信する通知送信手段と、前記通知送信手段が前記通知メッセージを送信する時刻である通知時刻を複数生成する通知時刻生成手段と、前記通知時刻生成手段が生成した複数の通知時刻の中から前記通知メッセージに対して前記ユーザが応答しやすい通知時刻である隙間時刻を、応答しやすさを示す適応度と通知時刻との対応を表す評価関数に基づいて推定する隙間時刻推定手段と、前記隙間時刻推定手段が推定した隙間時刻に前記通知送信手段が前記通知メッセージを送信するように制御する送信制御手段と、前記送信制御手段によって制御された前記通知送信手段が前記隙間時刻に送信した前記通知メッセージに応じて前記ユーザ端末から送信された応答メッセージを受信する応答受信手段と、前記応答受信手段が前記応答メッセージを受信した場合の応答時刻又は前記応答メッセージを受信しなかった場合のタイムアウト時刻を前記隙間時刻に関連付けて前記行動履歴記憶手段に記録する行動履歴記録手段と、前記行動履歴記憶手段に記録された情報に基づいて前記評価関数を変更する評価関数変更手段と、を備える行動履歴入力支援サーバ。
【００１２】
（１）の構成によれば、本発明に係る行動履歴入力支援サーバは、ユーザの行動履歴を記憶する行動履歴記憶手段を備え、ユーザの行動を問い合わせるための通知メッセージを送信する時刻である通知時刻を複数生成し、生成した複数の通知時刻の中から、通知メッセージに対してユーザが応答しやすい通知時刻である隙間時刻を、応答しやすさを示す適応度と通知時刻との対応を表す評価関数に基づいて推定する。そして、行動履歴入力支援サーバは、推定した隙間時刻に送信した通知メッセージに応じて、ユーザ端末から送信された応答メッセージを受信し、応答メッセージを受信した場合の応答時刻又は受信しなかった場合のタイムアウト時刻を隙間時刻に関連付けて行動履歴記憶手段に記録し、記録した情報に基づいて評価関数を変更する。
【００１３】
すなわち、本発明に係る行動履歴入力支援サーバは、ユーザの行動を問い合わせるための通知メッセージを送信するタイミングとして、ユーザが応答しやすい隙間時刻を評価関数に基づいて推定し、その評価関数を、通知メッセージに対する応答に基づいて変更する。
したがって、本発明に係る行動履歴入力支援サーバは、ユーザが応答しやすい通知メッセージのタイミングを推定するので、ユーザの行動履歴の収集を、ユーザの行動中に効率よく支援することができるようにすることができる。
【００１４】
（２）  前記ユーザについての情報である、個人情報を含むデモグラフィック情報を記憶するユーザ属性記憶手段をさらに備え、前記隙間時刻推定手段は、前記ユーザ属性記憶手段に記憶された前記ユーザのデモグラフィック情報に基づいて選択した前記評価関数に基づいて推定する、（１）に記載の行動履歴入力支援サーバ。
【００１５】
すなわち、（２）に係る行動履歴入力支援サーバは、隙間時刻を推定するための評価関数をユーザのデモグラフィック情報に基づいて選択する。
したがって、（２）に係る行動履歴入力支援サーバは、ユーザの行動履歴の収集を、ユーザの行動中にさらに効率よく支援することができるようにすることができる。
【００１６】
（３）  前記隙間時刻推定手段は、
（ａ）前記通知時刻生成手段が生成した複数の通知時刻を現世代個体記憶手段に記憶させる現世代生成手段と、
（ｂ）前記評価関数に基づいて、前記現世代個体記憶手段に記憶された通知時刻の適応度を算出する適応度算出手段と、
（ｃ）算出した適応度に基づいて前記隙間時刻の候補を選択する候補算出手段と、
（ｄ）前記隙間時刻の候補の時刻に前記通知メッセージを送信し、規定時間内に前記応答メッセージを受信した回数が規定回数に達したか否かを判断する隙間時刻判断手段と、
（ｅ）規定回数に達したと判断した場合、前記隙間時刻の候補を前記隙間時刻と推定する推定手段と、
（ｆ）規定回数に達していないと判断した場合、前記現世代個体記憶手段に記憶された通知時刻のうち前記隙間時刻の候補を除いた通知時刻のうちから選択した一組の通知時刻に基づいて、前記一組を構成する通知時刻を組み合わせて次世代の通知時刻を生成する組み換え手段と、
（ｇ）前記組み換え手段により生成された次世代の通知時刻に対して、ある特定の確率で突然変異を起こさせ、代替となる次世代の通知時刻候補を生成する突然変異手段と、
（ｈ）生成した次世代の通知時刻が所定の個数になるまで（ｆ）と（ｇ）とを繰り返し、生成した通知時刻及び前記隙間時刻の候補を新たに前記現世代個体記憶手段に記憶させる生成繰り返し手段と、
（ｉ）前記隙間時刻が推定されるまで（ｂ）から（ｈ）を繰り返す推定繰り返し手段と、をさらに備える、（１）又は（２）に記載の行動履歴入力支援サーバ。
【００１７】
（３）の構成によれば、（３）に係る行動履歴入力支援サーバは、現世代の複数の通知時刻から、評価関数に基づいて通知時刻の適応度を算出し、算出した適応度に基づいて隙間時刻の候補を選択する。そして、行動履歴入力支援サーバは、隙間時刻の候補の時刻に通知メッセージを送信し、規定時間内に応答メッセージを受信した回数が規定回数に達したか否かを判断し、規定回数に達したと判断した場合、隙間時刻の候補を隙間時刻と推定する。
そして、行動履歴入力支援サーバは、規定回数に達していないと判断した場合、現世代の通知時刻のうち隙間時刻の候補を除いた通知時刻のうちから選択した一組の通知時刻に基づいて、その一組を構成する通知時刻を組み合わせて次世代の通知時刻を生成し、ある特定の確率でその次世代の通知時刻に対して変異を起こさせ、新たな次世代の通知時刻を生成する。そして、行動履歴入力支援サーバは、生成した次世代の通知時刻を新たな現世代の通知時刻として、隙間時刻が推定されるまで処理を繰り返す。
【００１８】
すなわち、（３）に係る行動履歴入力支援サーバは、ＩＧＡ（Ｉｎｔｅｒａｃｔｉｖｅ  Ｇｅｎｅｔｉｃ  Ａｌｇｏｒｉｔｈｍ、対話型遺伝的アルゴリズム）に基づいて生成した通知時刻の中から隙間時刻の候補を評価関数に基づいて選択し、選択した隙間時刻の候補の時刻に送信した通知メッセージの応答に基づいて隙間時刻を推定する。
したがって、（３）に係る行動履歴入力支援サーバは、ユーザが行動中であっても応答しやすい通知メッセージのタイミングを対話型遺伝的アルゴリズムに基づいて推定するので、ユーザの行動履歴の収集を、ユーザの行動中にさらに効率よく支援することができるようにすることができる。
【００１９】
（４）  前記応答メッセージと共に前記ユーザ端末から送信された前記ユーザ端末の位置情報を含む前記ユーザに関する情報であるセンシング情報を、前記応答時刻に対応付けて記憶するセンシングデータ記憶手段をさらに備え、前記組み換え手段は、前記センシングデータ記憶手段に記憶されたセンシング情報に基づいて前記一組の通知時刻を選択する、（３）に記載の行動履歴入力支援サーバ。
【００２０】
すなわち、（４）に係る行動履歴入力支援サーバは、対話型遺伝的アルゴリズムにおいて、現世代の通知時刻の候補から次世代の候補を生成する際に、ユーザ端末の位置情報を含むユーザに関するセンシング情報に基づいて現世代の個体から親個体群を選択し、選択した親個体群の中から次世代の候補を生成する。
したがって、（４）に係る行動履歴入力支援サーバは、対話型遺伝的アルゴリズムによる隙間時刻の推定を精度よく行うことができ、ユーザの行動履歴の収集を、ユーザの行動中にさらに効率よく支援することができるようにすることができる。
【００２１】
（５）  前記ユーザが通信を行った情報である通信ログ情報を記憶する通信ログ記憶手段をさらに備え、前記組み換え手段は、前記通信ログ記憶手段に記憶された通信ログ情報に基づいて前記一組の通知時刻を選択する、（３）又は（４）に記載の行動履歴入力支援サーバ。
【００２２】
すなわち、（５）に係る行動履歴入力支援サーバは、対話型遺伝的アルゴリズムにおいて、現世代の通知時刻の候補から次世代の候補を生成する際に、ユーザの通信ログ情報に基づいて現世代の個体から親個体群を選択し、選択した親個体群の中から次世代の候補を生成する。
したがって、（５）に係る行動履歴入力支援サーバは、対話型遺伝的アルゴリズムによる隙間時刻の推定を精度よく行うことができ、ユーザの行動履歴の収集を、ユーザの行動中にさらに効率よく支援することができるようにすることができる。
【００２３】
（６）  ユーザ端末と、前記ユーザ端末と通信を行う行動履歴入力支援サーバとを備え、ユーザの行動履歴を収集するための支援を行う行動履歴入力支援システムであって、
前記行動履歴入力支援サーバは、
前記ユーザの行動履歴を記憶する行動履歴記憶手段と、前記ユーザの行動を問い合わせるための通知メッセージを前記ユーザ端末に送信する通知送信手段と、前記通知送信手段が前記通知メッセージを送信する時刻である通知時刻を複数生成する通知時刻生成手段と、前記通知時刻生成手段が生成した複数の通知時刻の中から前記通知メッセージに対して前記ユーザが応答しやすい通知時刻である隙間時刻を、応答しやすさを示す適応度と通知時刻との対応を表す評価関数に基づいて推定する隙間時刻推定手段と、前記隙間時刻推定手段が推定した隙間時刻に前記通知送信手段が前記通知メッセージを送信するように制御する送信制御手段と、前記送信制御手段によって制御された前記通知送信手段が前記隙間時刻に送信した前記通知メッセージに応じて前記ユーザ端末から送信された応答メッセージを受信する応答受信手段と、前記応答受信手段が前記応答メッセージを受信した場合の応答時刻又は前記応答メッセージを受信しなかった場合のタイムアウト時刻を前記隙間時刻に関連付けて前記行動履歴記憶手段に記録する行動履歴記録手段と、前記行動履歴記憶手段に記録された情報に基づいて前記評価関数を変更する評価関数変更手段と、を備え、
前記ユーザ端末は、
前記行動履歴入力支援サーバから送信された通知メッセージを受信する通知受信手段と、前記通知受信手段が受信した通知メッセージに応じて、応答メッセージを入力する入力手段と、前記入力手段が入力した応答メッセージを送信する応答送信手段と、
を備える行動履歴入力支援システム。
【００２４】
したがって、（６）に係る行動履歴入力支援システムは、（１）と同様に、ユーザが応答しやすい通知メッセージのタイミングを推定するので、ユーザの行動履歴の収集を、ユーザの行動中に効率よく支援することができるようにすることができる。
【００２５】
（７）  ユーザの行動履歴を収集するための支援を行う行動履歴入力支援装置であって、前記ユーザの行動履歴を記憶する行動履歴記憶手段と、前記ユーザの行動を問い合わせるための通知メッセージを前記ユーザに通知する通知手段と、前記ユーザの行動を問い合わせるための通知メッセージを通知する時刻である通知時刻を複数生成する通知時刻生成手段と、前記通知時刻生成手段が生成した複数の通知時刻の中から前記通知メッセージに対して前記ユーザが応答しやすい通知時刻である隙間時刻を、応答しやすさを示す適応度と通知時刻との対応を表す評価関数に基づいて推定する隙間時刻推定手段と、前記隙間時刻推定手段が推定した隙間時刻に前記通知手段が前記通知メッセージを通知するように制御する通知制御手段と、前記通知制御手段によって制御された前記通知手段が前記隙間時刻に通知した前記通知メッセージに応じて前記ユーザから応答メッセージが入力された場合の応答時刻又は応答メッセージが入力されなかった場合のタイムアウト時刻を前記隙間時刻に関連付けて前記行動履歴記憶手段に記録する行動履歴記録手段と、前記行動履歴記憶手段に記録された情報に基づいて前記評価関数を変更する評価関数変更手段と、を備える行動履歴入力支援装置。
【００２６】
したがって、（７）に係る行動履歴入力支援装置は、（１）と同様に、ユーザが応答しやすい通知メッセージのタイミングを推定するので、ユーザの行動履歴の収集を、ユーザの行動中に効率よく支援することができるようにすることができる。
【発明の効果】
【００２７】
本発明によれば、ユーザの行動履歴の収集を、ユーザの行動中に効率よく支援することができるようにすることができる。
すなわち、本発明は、ユーザが行動履歴の入力を行いやすいタイミングで入力を促す通知を送信することができる。それにより、行動履歴の入力が行われやすくなり、本発明は、ユーザの行動中の情報を収集することを可能にすると共に、ユーザにより入力される行動履歴がまばらになることを防ぎ、行動履歴として価値のあるライフログを収集することができるようにする。このように収集された行動履歴データに基づけば、例えば、広告配信サーバは、ユーザの行動や状態に、より適合した広告を配信することができる。
【図面の簡単な説明】
【００２８】
【図１】本発明の一実施形態に係る行動履歴入力支援サーバの機能構成を示す機能ブロック図である。
【図２】本発明の一実施形態に係る行動履歴入力支援サーバの行動履歴ＤＢの例を示す図である。
【図３】本発明の一実施形態に係る行動履歴入力支援サーバの評価関数の例を示す図である。
【図４】本発明の一実施形態に係る行動履歴入力支援サーバの時刻テーブルの例を示す図である。
【図５】本発明の一実施形態に係る行動履歴入力支援サーバのユーザ属性ＤＢの例を示す図である。
【図６】本発明の一実施形態に係る行動履歴入力支援サーバのセンシングデータＤＢの例を示す図である。
【図７】本発明の一実施形態に係る行動履歴入力支援サーバの通信ログＤＢの例を示す図である。
【図８】本発明の一実施形態に係る行動履歴入力支援サーバのハードウェア構成を示すブロック図である。
【図９】本発明の一実施形態に係る行動履歴入力支援サーバの処理内容を示すフローチャートである。
【図１０】本発明の一実施形態に係る行動履歴入力支援サーバの隙間時刻推定処理の処理内容を示すフローチャートである。
【図１１】本発明の一実施形態に係るユーザ端末の表示の例を示す図である。
【発明を実施するための形態】
【００２９】
以下、本発明の実施形態について図を参照しながら説明する。
【００３０】
図１は、本発明の一実施形態に係る行動履歴入力支援サーバ１０の機能構成を示す機能ブロック図である。行動履歴入力支援サーバ１０は、行動履歴記憶手段としての行動履歴ＤＢ３１と、通知時刻生成手段１１と、隙間時刻推定手段１２と、送信制御手段１３と、通知送信手段１４と、応答受信手段１５と、行動履歴記録手段１６と、評価関数変更手段１７とを備え、ユーザ端末５０と通信を行い、ユーザの行動履歴を収集するための支援を効率よく行う。そして、行動履歴入力支援サーバ１０は、ユーザ属性記憶手段としてユーザ属性ＤＢ３２と、センシングデータ記憶手段としてセンシングデータＤＢ３３と、通信ログ記憶手段として通信ログＤＢ３４とをさらに備え、ユーザの行動履歴を収集するための支援をさらに効率よく行う。また、行動履歴入力支援システム１は、行動履歴入力支援サーバ１０とユーザ端末５０とを備えたシステムであり、行動履歴入力支援装置（図示せず）は、行動履歴入力支援サーバ１０とユーザ端末５０とが一体となった装置であって一人のユーザについてのデータ処理を行う。このような行動履歴入力支援サーバ１０について、手段ごとに詳述する。
【００３１】
通知送信手段１４は、ユーザの行動を問い合わせるための通知メッセージをユーザ端末５０に送信する。例えば、通知メッセージは、「現在の行動や状態について入力してください」というような、ユーザの行動や状態を問い合わせるためのメッセージである。すなわち、行動履歴入力支援サーバ１０は、通知メッセージにより、ユーザの行動や状態を示す応答メッセージの送信を促す。通知メッセージは、「仕事中」や、「散歩中」等を選択できるようにし、当てはまらない場合に、現在の行動や状態についての入力を促すようなメッセージであってもよい。
【００３２】
通知時刻生成手段１１は、通知送信手段１４が通知メッセージを送信する時刻である通知時刻を複数生成する。具体的には、通知時刻生成手段１１は、００時００分から２３時５９分までの時刻の中から、乱数表や乱数発生器から取得した乱数に基づいて、通知時刻の候補としてランダムに、例えば２０個程度、生成する。
【００３３】
隙間時刻推定手段１２は、通知時刻生成手段１１が生成した複数の通知時刻の中から通知メッセージに対してユーザが応答しやすい通知時刻である隙間時刻を、応答しやすさを示す適応度と通知時刻との対応を表す評価関数に基づいて推定する。
評価関数は、例えば図３に示すように、通知メッセージに対する応答しやすさを示す適応度と通知時刻との対応を表す。図３は、本発明の一実施形態に係る行動履歴入力支援サーバ１０の評価関数の例を示す図であって、図３（１）は、例えば、４０歳代の男性の評価関数の初期値の例であり、図３（２）は、例えば、２０歳代の女性の評価関数の初期値の例である。また、評価関数の初期値は、休日（土曜日、日曜日、祝日等）と、平日とで異なる初期値であってよい。また、評価関数は離散関数であっても連続関数であってもよい。
【００３４】
送信制御手段１３は、隙間時刻推定手段１２が推定した隙間時刻に通知送信手段１４が通知メッセージを送信するように制御する。すなわち、現在の時刻が隙間時刻推定手段１２によって推定された隙間時刻になると、通知送信手段１４は、対象ユーザのユーザ端末５０に行動履歴の入力を促す通知メッセージを送信する。
応答受信手段１５は、送信制御手段１３によって制御された通知送信手段１４が隙間時刻に送信した通知メッセージに応じてユーザ端末５０から送信された応答メッセージを受信する。応答メッセージは、ユーザの現在の行動や状況を示すメッセージや、ユーザ端末５０によって収集されたセンシングデータ等を含む。
【００３５】
行動履歴記録手段１６は、応答受信手段１５が応答メッセージを受信した場合の応答時刻又は応答メッセージを受信しなかった場合のタイムアウト時刻を隙間時刻に関連付けて行動履歴ＤＢ３１に記録する。ここで、図２に従い、ユーザの行動履歴を記憶する行動履歴ＤＢ３１の説明をする。図２は、本発明の一実施形態に係る行動履歴入力支援サーバ１０の行動履歴ＤＢ３１の例を示す図である。行動履歴ＤＢ３１は、ユーザＩＤ（ユーザ識別情報）ごとに、日付と、隙間時刻と、応答時刻と、応答メッセージの内容とを記憶する。ユーザＩＤ（ユーザ識別情報）は、ユーザを識別するための識別情報である。日付は、通知メッセージを送信した日付けであり、隙間時刻は、隙間時刻推定手段１２により推定された隙間時刻であって、実際に送信した時刻である。応答時刻は、応答受信手段１５が応答メッセージを受信した場合の応答時刻又は受信しなかった場合のタイムアウト時刻である。応答メッセージの内容は、受信した応答メッセージのメッセージである。
【００３６】
評価関数変更手段１７は、行動履歴ＤＢ３１に記録された情報に基づいて評価関数を変更する。具体的には、評価関数変更手段１７は、行動履歴ＤＢ３１に記録された応答時刻又はタイムアウト時刻と、隙間時刻との差である応答時間に基づいて応答の度合いを算出する。そして、評価関数変更手段１７は、算出した応答の度合いを、隙間時刻に対するユーザの評価とみなし、隙間時刻に対応する評価関数の適応度を、算出した応答の度合いに基づいて変更する。例えば、応答時間の最大値である規定時間（タイムアウト時刻と隙間時刻との差）を１０分とした場合、評価関数変更手段１７は、応答時間が１分の場合に、応答の度合い＝０．１×（１−１分／１０分）＝０．０９を算出し、同様に応答時間が５分の場合に、応答の度合い＝０．１×（１−５分／１０分）＝０．０５を算出する。そして、評価関数変更手段１７は、隙間時刻に対応する適応度を、算出した応答の度合いに基づいて変更する。変更された評価関数は、例えば、後述するユーザ属性ＤＢ３２に、ユーザごとに記憶される。
【００３７】
さらに、隙間時刻推定手段１２は、現世代生成手段１２１と、適応度算出手段１２２と、候補算出手段１２３と、隙間時刻判断手段１２４と、推定手段１２５と、組み換え手段１２６と、突然変異手段１２７と、生成繰り返し手段１２８と、推定繰り返し手段１２９とを備え、対話型遺伝的アルゴリズムを用いて、次の（ａ）から（ｉ）の処理を行い、隙間時刻を推定する。行動履歴入力支援サーバ１０は、図４に示すように、時刻記憶手段である時刻テーブル４１を備える。時刻テーブル４１は、ユーザＩＤごとに、処理を行う日付と、生成した通知時刻により通知を行った時刻である通知時刻と、算出した適応度と、応答メッセージを受信した場合の応答時刻（又は受信しなかった場合のタイムアウト時刻）と、規定時間内の回数とを記憶し、隙間時刻推定手段１２は、時刻テーブル４１を用いて処理を行う。
（ａ）現世代生成手段１２１は、通知時刻生成手段１１が生成した複数の通知時刻を現世代個体群として記憶させる。例えば、現世代生成手段１２１は、通知時刻として１０：１３、１１：５８、１４：３４、１６：２５、１８：４２を現世代個体群として時刻テーブル４１に記憶させる。
（ｂ）適応度算出手段１２２は、評価関数に基づいて、現世代個体群の通知時刻の適応度を算出する。具体的には、適応度算出手段１２２は、評価関数を選択し、選択した評価関数に基づいて、例えば、図３（１）の場合、１０：１３の適応度を０．４、１１：５８の適応度を０．８、１４：３４の適応度を０．４、１６：２５の適応度を０．４、１８：４１の適応度を０．６と算出する。
（ｃ）候補算出手段１２３は、算出した適応度に基づいて隙間時刻の候補（通知個体）を選択する。具体的には、候補算出手段１２３は、適応度の大きさによって確率的に候補の選択が行われる。１０：１３が選択される確率は、０．４／（０．４＋０．８＋０．４＋０．４＋０．６）であり、以下時系列順に選択される確率は、０．８／２．６、０．４／２．６、０．４／２．６、０．６／２．６となる。このとき、前述した確率により選択が行われるため、適応度が最も高い、１１：５８が隙間時刻の候補として選択されやすい。以下では、１１：５８が隙間時間として選択されたと仮定して説明する。なお、既に選択されている隙間時刻の候補が存在する場合、選択されている隙間時刻の候補を除いた中から新たな隙間時刻の候補を選択するとしてもよい。
（ｄ）隙間時刻判断手段１２４は、隙間時刻の候補の時刻に通知メッセージを送信し、規定時間内に応答メッセージを受信した回数が規定回数に達したか否かを判断する。具体的には、隙間時刻判断手段１２４は、隙間時刻の候補の時刻に通知送信手段１４によって通知メッセージを送信し、送信した通知メッセージに応じてユーザ端末５０から送信された応答メッセージを応答受信手段１５によって受信し、受信した応答時刻を記憶させる。通知送信手段１４が通知メッセージを送信してから一定時間内に応答受信手段１５が応答メッセージを受信しない場合には、時刻テーブル４１に応答がタイムアウトしたことと、そのタイムアウト時刻とが記録される。そして、隙間時刻推定手段１２は、応答メッセージを受信した時刻と、通知メッセージを送信した時刻との差が、規定時間（例えば１０分）以内であるか否かを判断する。
（ｅ）推定手段１２５は、規定回数に達したと判断した場合、隙間時刻の候補を隙間時刻と推定する。具体的には、推定手段１２５は、例えば１０分以内である場合の回数をカウントし、規定時間内に応答メッセージを受信した回数が規定回数（例えば５回）に達したか否かを判断する。推定手段１２５は、規定回数（例えば５回）に達したと判断した場合に、隙間時刻の候補の時刻を隙間時刻と推定する。
（ｆ）組み換え手段１２６は、規定回数に達していないと判断した場合、現世代個体群の通知時刻のうち隙間時刻の候補を除いた通知時刻のうちから選択した一組の通知時刻を親個体群として、その親個体群を構成する通知時刻を組み合わせて次世代の子供の通知時刻を生成する。具体的には、組み換え手段１２６は、１１：５８を除いた１０：１３、１４：３４、１６：２５、１８：４２のうちから選択した１４：３４、１６：２５に基づいて、１４：２５を生成する。この生成は、親の情報が子供に残るように、例えば、時刻を所定の割合でカットして時間を含んだ部分と、分を含んだ部分とに分け、一方の親の部分と、他方の親の対応する部分とを入れ換えることによって行われる。
（ｇ）突然変異手段１２７は、（ｆ）により生成された子供の通知時刻を所定の割合によって突然変異を起こさせる。具体的には、突然変異手段１２７は、生成された子供の通知時刻１４：２５に基づいて、１６：２５を生成する。この生成は、例えば、時刻を所定の割合でカットして時間を含んだ部分と、分を含んだ部分とに分け、時間又は分を含んだ部分を乱数表等に基づいてランダムに変更することによって行われる。突然変異の割合は、世代交代ごとに所定の割合としてもよい。
（ｇ）による突然変異が起こらないこともある。その場合は、（ｆ）によって親の通知時刻の入れ換えにより生成された１４：２５と、隙間時刻の候補１１：５８とを合わせて２個体が生成される。（ｇ）による突然変異が起こる場合には、突然変異の１６：２５と、隙間時刻候補の１１：５８とを合わせて２個体が生成される。
（ｈ）生成繰り返し手段１２８は、生成した次世代の通知時刻が所定の個数になるまで（ｆ）と（ｇ）とを繰り返し、生成した通知時刻及び隙間時刻の候補を新たに現世代個体群として記憶させる。例えば、（ａ）で生成した個数をＮ個とすると、所定の個数は、隙間時刻の候補を含めた個数がＮ個になる。
例えば、隙間時刻の候補１１：５８を含めて５個体になるまで、（ｆ）と（ｇ）とを繰り返し、例えば、１４：２５と、１６：１３と、１８：３４と、０８：４２とを生成し、生成した通知時刻及び隙間時刻の候補を、新たな現世代個体群として時刻テーブル４１に記憶させる。
（ｉ）推定繰り返し手段１２９は、隙間時刻が推定されるまで（ｂ）から（ｈ）を繰り返す。
【００３８】
さらに、行動履歴入力支援サーバ１０は、ユーザ属性ＤＢ３２を備える。図５は、本発明の一実施形態に係る行動履歴入力支援サーバ１０のユーザ属性ＤＢ３２の例を示す図である。ユーザ属性ＤＢ３２は、ユーザごとに、ユーザについての情報である、個人情報を含むデモグラフィック情報と、評価関数変更手段１７によって変更された評価関数とを記憶する。デモグラフィック情報は、図５に示すように、例えば、通知対象ユーザの性別、年齢、住所、趣味、職業、性格等の静的な情報である。デモグラフィック情報は、ユーザによって修正されることもある。隙間時刻推定手段１２は、ユーザ属性ＤＢ３２に記憶された、対象となるユーザのデモグラフィック情報（例えば、年齢や職業）に基づいて、例えば、デモグラフィック情報と初期評価関数とを対応付けたテーブル（図示せず）から、評価関数の初期値を取得する。
【００３９】
さらに、行動履歴入力支援サーバ１０は、センシングデータＤＢ３３を備える。図６は、本発明の一実施形態に係る行動履歴入力支援サーバ１０のセンシングデータＤＢ３３の例を示す図である。センシングデータＤＢ３３は、応答メッセージと共にユーザ端末５０から送信された、ユーザ端末５０の位置情報を含むユーザに関する情報であるセンシング情報を、ユーザＩＤ及び応答時刻に対応付けて記憶する。センシング情報は、ユーザによる自発的な入力アクションを必要としない、ユーザに関する情報であって、リアルタイムに自動で収集される情報である。センシング情報は、図６に示すように、例えば、ユーザ端末５０のＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）装置によって取得されたユーザ端末５０のＧＰＳ位置情報や、ユーザ端末５０の計測装置によって計測された、移動するユーザ端末５０の加速度、ユーザの移動に伴って計測された歩数、ユーザ端末５０の測定装置によって測定されたユーザの状態に関する情報である地磁気、気温、気圧、電波強度等の情報である。
隙間時刻推定手段１２の組み換え手段１２６は、センシングデータＤＢ３３に記憶されたセンシング情報に基づいて一組の通知時刻を選択する。例えば、組み換え手段１２６は、一組の通知時刻を選択する際に、通知時刻をＧＰＳ情報に基づいてユーザが存在する位置の時刻に換算し、換算した時刻に基づいて次世代の通知時刻を生成する。よって、ユーザが行動履歴入力支援サーバ１０から離れた場所、例えば外国にいても、行動履歴入力支援サーバ１０は、隙間時刻を推定することができる。
【００４０】
さらに、行動履歴入力支援サーバ１０は、通信ログＤＢ３４を備える。図７は、本発明の一実施形態に係る行動履歴入力支援サーバ１０の通信ログＤＢ３４の例を示す図である。通信ログＤＢ３４は、ユーザが通信を行った情報である通信ログ情報を記憶する。通信ログ情報は、図７に示すように、例えば、ユーザが所有する携帯電話で通信を行う際に接続した基地局情報や日付及び時刻が含まれる。通信ログ情報は、例えば、通信管理サーバ（図示せず）からユーザごとに取得することができる。
隙間時刻推定手段１２の組み換え手段１２６は、通信ログＤＢ３４に記憶された通信ログ情報に基づいて一組の通知時刻を選択する。具体的には、組み換え手段１２６は、一組の通知時刻を選択する際に、頻繁に通信が行われた時間帯に近い通知時刻を親個体群として選択し、選択した親個体群に基づいて次世代の通知時刻を生成する。よって、行動履歴入力支援サーバ１０は、隙間時刻を効率よく推定することができる。
【００４１】
図８は、本発明の一実施形態に係る行動履歴入力支援サーバ１０のハードウェア構成の一例を示す図である。行動履歴入力支援サーバ１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０００、通信Ｉ／Ｆ１０４０、メインメモリ１０５０、ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）１０６０、Ｉ／Ｏコントローラ１０７０、ハードディスク１０７４、表示装置１０８０、入力装置１１００及び入出力Ｉ／Ｆ装置２０００を備え、バスライン１００５により接続されている。
【００４２】
ＣＰＵ１０００は、行動履歴入力支援サーバ１０を統括的に制御する部分であり、ハードディスク１０７４に記憶された各種プログラムを適宜読み出して実行することにより、上述したハードウェアと協働し、本発明に係る各種機能を実現している。
【００４３】
通信Ｉ／Ｆ１０４０は、行動履歴入力支援サーバ１０を専用ネットワーク又は公共ネットワークを介してユーザ端末５０等と接続できるようにするためのネットワーク・アダプタである。
【００４４】
メインメモリ１０５０は、適宜読み出して実行されるプログラムを記憶し、プログラムの実行によって作成される種々の情報を記憶する。ＢＩＯＳ１０６０は、行動履歴入力支援サーバ１０の起動時にＣＰＵ１０００が実行するブートプログラムや、行動履歴入力支援サーバ１０のハードウェアに依存するプログラム等を格納する。
【００４５】
Ｉ／Ｏコントローラ１０７０には、ハードディスク１０７４等の記憶手段を接続することができる。ハードディスク１０７４は、行動履歴入力支援サーバ１０が本発明の機能を実行するためのプログラムを記憶しており、時刻テーブル４１、行動履歴ＤＢ３１、ユーザ属性ＤＢ３２、センシングデータＤＢ３３及び通信ログＤＢ３４等を記憶している。
【００４６】
行動履歴入力支援サーバ１０に提供されるプログラムは、ハードディスク１０７４、又はメモリカード等の記録媒体に格納されて提供される。このプログラムは、Ｉ／Ｏコントローラ１０７０を介して、記録媒体から読み出され、又は通信Ｉ／Ｆ１０４０を介してダウンロードされることによって、行動履歴入力支援サーバ１０にインストールされ実行されてもよい。
【００４７】
表示装置１０８０は、行動履歴入力支援サーバ１０による演算処理結果の画面、オペレータの指示を受け付ける画面等を表示するものであり、ブラウン管表示装置、液晶表示装置等のディスプレイ装置を含む。入力装置１１００は、行動履歴入力支援サーバ１０のオペレータによる入力を行う装置であり、キーボード及びマウス等で構成される。入出力Ｉ／Ｆ装置２０００は、行動履歴入力支援サーバ１０と、他の機器、例えば補助記憶装置等とを接続する。
【００４８】
図９は、本発明の一実施形態に係る行動履歴入力支援サーバ１０の処理内容を示すフローチャートである。
【００４９】
ステップＳ１０１において、ＣＰＵ１０００（隙間時刻推定手段１２）は、隙間時刻推定処理を行う。その後、ＣＰＵ１０００は、処理をステップＳ１０２に移す。
【００５０】
ステップＳ１０２において、ＣＰＵ１０００（送信制御手段１３）は、現在の時刻がステップＳ１０１の隙間時刻推定処理によって推定された隙間時刻か否かを判断する。この判断がＹＥＳの場合、ＣＰＵ１０００は、処理をステップＳ１０３に移し、ＮＯの場合、ＣＰＵ１０００は、現在の時刻が隙間時刻になるまで待つために処理をステップＳ１０２のままとする。
【００５１】
ステップＳ１０３において、ＣＰＵ１０００（通知送信手段１４）は、通知メッセージを送信する。より具体的には、ＣＰＵ１０００は、ユーザの行動を問い合わせるための通知メッセージをユーザ端末５０に送信する。その後、ＣＰＵ１０００は、処理をステップＳ１０４に移す。
【００５２】
ステップＳ１０４において、ＣＰＵ１０００（応答受信手段１５）は、応答メッセージを受信する。より具体的には、ＣＰＵ１０００は、ステップＳ１０３において送信した通知メッセージに応じてユーザ端末５０から送信された応答メッセージを受信する。さらに、ＣＰＵ１０００は、受信したセンシングデータをセンシングデータＤＢ３３に記憶する。その後、ＣＰＵ１０００は、処理をステップＳ１０５に移す。
【００５３】
ステップＳ１０５において、ＣＰＵ１０００（行動履歴記録手段１６）は、行動履歴を記録する。より具体的には、ＣＰＵ１０００は、ステップＳ１０４において受信した応答メッセージや、応答メッセージを受信した場合の応答時刻又は応答メッセージを受信しなかった場合のタイムアウト時刻を隙間時刻に関連付けて行動履歴ＤＢ３１に記録する。その後、ＣＰＵ１０００は、処理をステップＳ１０６に移す。
【００５４】
ステップＳ１０６において、ＣＰＵ１０００（評価関数変更手段１７）は、評価関数を変更する。より具体的には、ＣＰＵ１０００は、応答時刻又はタイムアウト時刻と隙間時刻との差である応答時間に基づいて応答の度合いを算出し、次に、隙間時刻に対応する評価関数の適応度を、算出した応答の度合いに基づいて変更する。
適応度の変更は次式により実施される。
適合度をｆ（ｔ）、応答の度合いをｒ（ｔ）とすると、
ｆ（ｔ＋１）＝ｆ（ｔ）＋ｒ（ｔ）
ここで、ｆ（ｔ＋１）＜０になる場合は、ｆ（ｔ＋１）＝０とする。
応答度合いは、例えば次式により算出される。
タイムアウトになる場合：ｒ（ｔ）＝−０．１
規定時間内に応答がある場合：ｒ（ｔ）＝０．１×（規定時間−応答時間）／規定時間
その後、ＣＰＵ１０００は、処理をステップＳ１０７に移す。
【００５５】
ステップＳ１０７において、ＣＰＵ１０００（隙間時刻推定手段１２）は、新たな隙間時刻を推定するか否かを判断する。より具体的には、ＣＰＵ１０００は、行動履歴ＤＢ３１に記録した応答時刻と隙間時刻との差を算出し、算出した差が規定時間（例えば１０分）外である回数が規定回数（例えば５回）である場合や、タイムアウトをした回数が所定回数である場合に、新たな隙間時刻を推定すると判断する。この判断がＹＥＳの場合、ＣＰＵ１０００は、当該隙間時刻を削除して、処理をステップＳ１０１に移し、ＮＯの場合、ＣＰＵ１０００は、処理をステップＳ１０２に移す。
【００５６】
図１０は、本発明の一実施形態に係る行動履歴入力支援サーバ１０の隙間時刻推定処理の処理内容を示すフローチャートである。
【００５７】
ステップＳ２０１において、ＣＰＵ１０００（通知時刻生成手段１１、現世代生成手段１２１）は、初期個体を生成する。より具体的には、ＣＰＵ１０００は、００時００分から２３時５９分までの時刻の中から、乱数表から取得した乱数に基づいて、通知時刻の候補としてランダムにＮ個の通知時刻を生成し、現世代個体群として記憶させる。その後、ＣＰＵ１０００は、処理をステップＳ２０２に移す。
【００５８】
ステップＳ２０２において、ＣＰＵ１０００（適応度算出手段１２２）は、適応度を算出する。より具体的には、ＣＰＵ１０００は、ユーザ属性ＤＢ３２の評価関数に評価関数ＩＤが記憶されている場合、記憶されている評価関数を選択し、評価関数ＩＤが記憶されていない場合、評価関数の初期値をユーザ属性ＤＢ３２のデモグラフィック情報に基づいて選択する。次に、ＣＰＵ１０００は、選択した評価関数に基づいて、適応度を算出する。その後、ＣＰＵ１０００は、処理をステップＳ２０３に移す。
【００５９】
ステップＳ２０３において、ＣＰＵ１０００（候補算出手段１２３）は、通知個体を選択する。より具体的には、ＣＰＵ１０００は、適応度を基に各個体が選択される確率を算出し、その確率を基にして通知時刻を、通知個体として選択する。このとき適応度が高い個体（時刻）ほど選択される確率が高くなる。その後、ＣＰＵ１０００は、処理をステップＳ２０４に移す。
【００６０】
ステップＳ２０４において、ＣＰＵ１０００（隙間時刻判断手段１２４）は、通知時刻か否かを判断する。より具体的には、ＣＰＵ１０００は、現在の時刻がステップＳ２０３において選択された通知個体の通知時刻か否かを判断する。この判断がＹＥＳの場合、ＣＰＵ１０００は、処理をステップＳ２０５に移し、ＮＯの場合、ＣＰＵ１０００は、現在の時刻が通知時刻になるまで待つために処理をステップＳ２０４のままとする。
【００６１】
ステップＳ２０５において、ＣＰＵ１０００（隙間時刻判断手段１２４）は、通知メッセージを送信する。その後、ＣＰＵ１０００は、処理をステップＳ２０６に移す。
【００６２】
ステップＳ２０６において、ＣＰＵ１０００（隙間時刻判断手段１２４、推定繰り返し手段１２９）は、規定時間内のレスポンスが規定回数続くか否かを判断する。より具体的には、ＣＰＵ１０００は、通知個体の通知時刻に通知メッセージを送信する。次に、送信した通知メッセージに応じてユーザ端末５０から送信された応答メッセージを受信し、受信した場合の応答時刻又は受信しなかった場合のタイムアウト時刻を記憶する。次に、応答時刻又はタイムアウト時刻と、通知メッセージを送信した時刻との差が、規定時間（例えば１０分）以内であるか否かを判断し、規定以内である場合にカウントする。次に、カウントした回数が規定値（例えば５回）であるか否かを判断する。この判断がＹＥＳの場合、ＣＰＵ１０００は、処理をステップＳ２１１に移し、ＮＯの場合、ＣＰＵ１０００は、処理をステップＳ２０７に移す。
【００６３】
ステップＳ２０７において、ＣＰＵ１０００（組み換え手段１２６）は、次世代の親個体群を選択する。より具体的には、ＣＰＵ１０００は、現世代個体群の通知時刻のうち隙間時刻の候補を除いた通知時刻のうちから一組の通知時刻をエリート個体群として選択して、親個体群とする。センシングデータＤＢ３３及び通信ログＤＢ３４を利用することができる場合には、各ＤＢに記憶される位置情報、時間情報等を利用し親個体群の選択を実施する。その後、ＣＰＵ１０００は、処理をステップＳ２０８に移す。
【００６４】
ステップＳ２０８において、ＣＰＵ１０００（組み換え手段１２６）は、子供個体を生成する。より具体的には、ＣＰＵ１０００は、ステップＳ２０７において選択した親個体群を構成する通知時刻を組み合わせて次世代の子供の通知時刻を生成する。その後、ＣＰＵ１０００は、処理をステップＳ２０９に移す。
【００６５】
ステップＳ２０９において、ＣＰＵ１０００（突然変異手段１２７）は、突然変異個体を生成する。より具体的には、ＣＰＵ１０００は、ステップＳ２０８において作成された子供の通知時刻に対して、特定の確率で変異を行い、新たな次世代の子供の通知時刻を生成する。その後、ＣＰＵ１０００は、処理をステップＳ２１０に移す。
【００６６】
ステップＳ２１０において、ＣＰＵ１０００（生成繰り返し手段１２８）は、生成した個体数が所定個数に達したか否かを判断する。より具体的には、ＣＰＵ１０００は、ステップＳ２０８及びステップＳ２０９で生成した次世代の通知時刻が通知個体を含めてＮ個に達したか否かを判断する。この判断がＹＥＳの場合、ＣＰＵ１０００は、処理をステップＳ２０２に移し、ＮＯの場合、ＣＰＵ１０００は、処理をステップＳ２０８に移す。
【００６７】
ステップＳ２１１において、ＣＰＵ１０００（推定手段１２５）は、通知個体の通知時刻を隙間時刻と推定する。その後、ＣＰＵ１０００は、処理を終了し、処理をステップＳ１０２に戻す。
【００６８】
図１１は、本発明の一実施形態に係るユーザ端末５０の表示の例を示す図である。図１１が示す例において、ユーザ端末５０は、行動履歴入力支援サーバ１０が送信した通知メッセージを、表示画面５１の通知メッセージ表示欄１０１に表示する。ユーザ端末５０は、ユーザにより入力されたデータを、表示画面５１の応答メッセージ入力欄１０２に表示し、送信操作により行動履歴入力支援サーバ１０に応答メッセージとして送信する。
【００６９】
本実施形態によれば、行動履歴入力支援サーバ１０は、ユーザの行動履歴を記憶する行動履歴ＤＢ３１を備え、ユーザの行動を問い合わせるための通知メッセージを送信する時刻である通知時刻を複数生成し、生成した複数の通知時刻の中から、通知メッセージに対してユーザが応答しやすい通知時刻である隙間時刻を、応答しやすさを示す適応度と通知時刻との対応を表す評価関数に基づいて推定する。そして、行動履歴入力支援サーバ１０は、推定した隙間時刻に送信した通知メッセージに応じて、ユーザ端末５０から送信された応答メッセージを受信し、応答メッセージを受信した場合の応答時刻又は受信しなかった場合のタイムアウト時刻を隙間時刻に関連付けて行動履歴ＤＢ３１に記録し、記録された情報に基づいて評価関数を変更する。さらに、行動履歴入力支援サーバ１０は、ユーザ属性ＤＢ３２を備え、隙間時刻を推定するための評価関数をユーザのデモグラフィック情報に基づいて選択する。
さらに、行動履歴入力支援サーバ１０は、センシングデータＤＢ３３及び通信ログＤＢ３４を備え、対話型遺伝的アルゴリズムに基づいて隙間時刻を推定する。したがって、行動履歴入力支援サーバ１０は、ユーザの行動履歴の収集を、ユーザの行動中に効率よく支援することができるようにすることができる。
【００７０】
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限るものではない。また、本発明の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本発明の実施形態に記載されたものに限定されるものではない。
【符号の説明】
【００７１】
１      行動履歴入力支援システム
１０    行動履歴入力支援サーバ
１１    通知時刻生成手段
１２    隙間時刻推定手段
１２１  現世代生成手段
１２２  適応度算出手段
１２３  候補算出手段
１２４  隙間時刻判断手段
１２５  推定手段
１２６  組み換え手段
１２７  突然変異手段
１２８  生成繰り返し手段
１２９  推定繰り返し手段
１３    送信制御手段
１４    通知送信手段
１５    応答受信手段
１６    行動履歴記録手段
１７    評価関数変更手段
３１    行動履歴ＤＢ
３２    ユーザ属性ＤＢ
３３    センシングデータＤＢ
３４    通信ログＤＢ
４１    時刻テーブル
５０    ユーザ端末
【図１】
0005622616.tif 000002
【図２】
0005622616.tif 000003
【図３】
0005622616.tif 000004
【図４】
0005622616.tif 000005
【図５】
0005622616.tif 000006
【図６】
0005622616.tif 000007
【図７】
0005622616.tif 000008
【図８】
0005622616.tif 000009
【図９】
0005622616.tif 000010
【図１０】
0005622616.tif 000011
【図１１】
0005622616.tif 000012