以下、本開示の各実施の形態に係る制御システムについて、図面を参照しながら説明する。
(実施の形態1)
本実施の形態に係る情報提供装置は、利用者の位置を示す位置情報を取得する位置情報取得部と、予め設定された期間内における利用者の位置情報と位置情報が示す位置での利用者の滞在時間とに基づいて、利用者が立ち寄る少なくとも1つの立ち寄り場所を特定する場所特定部と、少なくとも1つの立ち寄り場所それぞれにおける利用者の滞在時間に基づいて、利用者の移動状況を判別する移動状況判別部と、移動状況から利用者の帰宅時刻を推定する帰宅時刻推定モデルを用いて、利用者の帰宅時刻を推定する推定部と、利用者が過去に視聴した利用者が嗜好する少なくとも1つの番組の番組種別と同一の番組種別に属する番組を選出する番組選出部と、選出された番組の開始時刻と帰宅時刻とに基づいて、番組種別の番組の番組情報を利用者が所持する端末装置へ送信するか否かを判定する通知判定部と、通知判定部により番組種別の番組の番組情報を利用者が所持する端末装置へ送信すると判定されると、番組情報を前記端末装置へ送信する番組通知部と、を備える。
本実施の形態に係る情報提供システムは、図1に示すように、建物Hに設置されたテレビ受信機91および録画装置92と、クラウドサーバ1と、位置管理サーバ2と、中継サーバ3と、端末装置5と、を備える。ここで、端末装置5は、人工衛星SATから放射されるGNSS(Global Navigation Satellite System)を受信する機能を有する。建物Hには、建物H内に構築された局所ネットワークNW2に接続されたルータ82と、ルータ82および広域ネットワークNW1に接続されたデータ回線終端装置81と、が設置されている。広域ネットワークNW1は、例えばインターネットである。また、局所ネットワークNW2は、例えば有線LAN(Local Area Network)または無線LANである。データ回線終端装置81は、ONU(Optical Network Unit)、モデム、ゲートウェイ等である。
テレビ受信機91と録画装置92とは、それぞれ、局所ネットワークNW2、広域ネットワークNW1を介してクラウドサーバ1と通信可能である。テレビ受信機91は、利用者により手動で視聴を開始するための視聴開始操作が行われると、映像表示を開始し、利用者により手動で視聴を終了するための視聴終了操作が行われると、映像表示を終了する。ここで、テレビ受信機91は、利用者が視聴した少なくとも1つの番組の視聴時間を集計し、利用者が予め設定された基準時間以上視聴を継続した番組を特定する。そして、テレビ受信機91は、特定した番組の番組識別情報と、放映された曜日を示す曜日情報と、放映開始時刻、終了時刻を示す開始時刻情報、終了時刻情報と、番組の種別(「ニュース」、「バラエティ番組」等)を示す番組種別情報と、を含む視聴履歴情報を生成する。その後、テレビ受信機91は、生成した視聴履歴情報をクラウドサーバ1へ送信する。
録画装置92は、クラウドサーバから録画を予約するための制御情報を取得すると、取得した制御情報に基づいて録画予約処理を実行する。また、録画装置92は、録画予約処理で設定された番組の放映が開始する番組開始時刻が到来すると、録画を開始し、その後、番組の放映が終了する番組終了時刻が到来すると、録画を終了する。ここで、録画装置92は、録画した番組の番組識別情報、曜日情報、開始時刻情報、終了時刻情報および番組種別情報を含む視聴履歴情報を生成し、生成した視聴履歴情報をクラウドサーバ1へ送信する。
位置管理サーバ2は、端末装置5から送信される端末装置5の位置を示す位置情報を、その位置情報の送信元の端末装置5を識別する端末装置識別情報に対応づけて管理する。そして、位置管理サーバ2は、予め設定された位置情報取得時期が到来すると、端末装置5に対して端末装置5の位置情報の送信を要求する位置情報要求情報を端末装置5へ送信することにより、端末装置5から送信される位置情報を取得する。また、位置管理サーバ2は、端末装置5の位置が予め設定された利用者の自宅を含む領域の内側に存在する状態から外側に存在する状態に遷移すると、利用者が端末装置5を携帯して外出したと判定し、端末装置5の位置情報と当該位置情報を取得した時刻を示す時刻情報とのクラウドサーバ1への定期的な送信を開始する。一方、位置管理サーバ2は、クラウドサーバ1から利用者が自宅に帰宅したことを通知する帰宅通知情報を取得すると、端末装置5の位置情報のクラウドサーバ1への送信を停止する。
中継サーバ3は、端末装置5からクラウドサーバ1宛に送信される各種情報を取得すると、取得した各種情報をクラウドサーバ1へ送信する。また、中継サーバ3は、クラウドサーバ1から端末装置5宛に送信される各種情報を取得すると、取得した各種情報を端末装置5へ送信する。
端末装置5は、例えばスマートフォンであり、図2に示すように、CPU(Central Processing Unit)501と、主記憶部502と、補助記憶部503と、表示部504と、入力部505と、広域通信部506と、GNSS受信部508と、これらを互いに接続するバス509と、を備える。主記憶部502は、RAM(Random Access Memory)のような揮発性メモリを有し、CPU501の作業領域として使用される。補助記憶部503は、半導体フラッシュメモリのような不揮発性メモリであり、CPU501が各種処理を実行するためのプログラムを記憶する。表示部504は、液晶ディスプレイ、有機EL(Electro-Luminescence)ディスプレイ等の表示装置である。入力部505は、例えば表示部504に重ねて配置される透明なタッチパッドである。広域通信部506は、広域ネットワークNW1に接続され、CPU501から転送される情報を、広域ネットワークNW1を介して中継サーバ3へ送信したり、中継サーバ3から広域ネットワークNW1を介して受信した情報をCPU501へ転送したりする。GNSS受信部508は、人工衛星SATから放射されるGNSS信号を受信し、GNSS信号に基づいて人工衛星SATの位置を示す基準位置情報、時刻情報等を生成してCPU501へ転送する。
CPU501は、補助記憶部503が記憶するプログラムを主記憶部502に読み出して実行することにより、図3に示すように、受付部511、表示制御部512、測位部513、位置情報通知部514、番組情報取得部515、操作情報生成部516および操作情報送信部517として機能する。また、図2に示す補助記憶部503は、図3に示すように、表示部504に表示させる操作画面画像を構成する画像の情報を記憶する画像記憶部531を有する。また、図2に示す主記憶部502は、図3に示すように、端末装置5の位置を示す位置情報を一時的に記憶する位置記憶部521を有する。
受付部511は、利用者が入力部505に対して行った操作を受け付けると、受け付けた操作内容を示す情報を表示制御部512に通知する。また、受付部511は、利用者が入力部505に対して端末装置5の測位を開始するための操作を受け付けると、測位開始指令情報を測位部513に通知する。表示制御部512は、受付部511から通知される情報に基づいて、画像記憶部531が記憶する情報を用いて操作画面画像を生成して表示部504に表示させる。
測位部513は、GNSS受信部508から入力される基準位置情報、時刻情報等に基づいて、端末装置5の位置を推定する。そして、測位部513は、推定した端末装置5の位置を示す位置情報で位置記憶部521が記憶する位置情報を更新する。位置情報通知部514は、位置管理サーバ2から位置情報要求情報を取得すると、位置記憶部521が記憶する位置情報を位置管理サーバ2へ送信する。番組情報取得部515は、クラウドサーバ1から送信される利用者が嗜好すると推定される番組の内容を示す番組情報を取得し、取得した番組情報を表示制御部512に通知する。ここで、表示制御部512は、番組情報取得部515から番組情報が通知されると、通知された番組情報を含む操作画面画像を生成して表示部504に表示させる。
操作情報生成部516は、受付部511から、クラウドサーバ1に対して録画装置92による録画予約処理を行うための操作内容を示す情報が通知されると、録画予約処理を行うことを示す操作情報を生成する。そして、操作情報生成部516が、生成した操作情報を操作情報送信部517に通知し、操作情報送信部517は、通知される操作情報を、中継サーバ3を介してクラウドサーバ1へ送信する。
図2に戻って、クラウドサーバ1は、CPU101と、主記憶部102と、補助記憶部103と、広域通信部106と、計時部107と、これらを相互に接続するバス109と、を備える。CPU101は、例えばマルチコアプロセッサである。主記憶部102は、揮発性メモリから構成され、CPU101の作業領域として用いられる。補助記憶部103は、大容量の不揮発性メモリから構成され、クラウドサーバ1の各種機能を実現するためのプログラムを記憶する。広域通信部106は、広域ネットワークNW1に接続されている。計時部107は、例えばリアルタイムクロックである。
CPU101は、補助記憶部103が記憶するプログラムを主記憶部102に読み出して実行することにより、図4に示すように、位置情報取得部111、場所特定部112、移動状況判別部113、帰宅通知部114、推定部115、通知判定部116、番組選出部117、番組通知部118、視聴履歴取得部119、機器制御部120およびモデル生成部121として機能する。また、図2に示す補助記憶部103は、図4に示すように、位置記憶部131と、場所記憶部132と、移動状況記憶部133と、視聴履歴記憶部134と、モデル記憶部135を有する。
位置記憶部131は、位置管理サーバ2から取得した、利用者が所持する端末装置5の位置を示す位置情報と位置管理サーバ2が端末装置5から位置情報を取得した時刻を示す時刻情報とを、利用者を識別する利用者識別情報に対応づけて記憶する。場所記憶部132は、利用者の少なくとも1つの立ち寄り場所の位置を示す場所情報を、利用者識別情報に対応づけて記憶する。ここで、場所情報は、例えば立ち寄り場所の中心位置を中心とし直径が予め設定された基準距離に等しい円形の位置座標の範囲を示す情報である。
移動状況記憶部133は、例えば図5に示すように、利用者の移動経路に含まれる少なくとも1つの利用者の立ち寄り場所を示す場所情報と、各立ち寄り場所における利用者の滞在時期を示す滞在時期情報と、を含む移動状況情報を、移動状況を識別する移動状況識別情報と移動状況に対応する曜日を示す曜日情報とに対応づけて記憶する。場所情報P[*]は、立ち寄り場所の位置座標を示す情報である。滞在時期情報は、水曜日に、立ち寄り場所それぞれへの利用者の到着時刻を示す到着時刻情報と、その場所からの利用者の出発時刻を示す出発時刻情報と、を含む。例えば移動状況識別情報「a2」で識別される移動状況情報は、利用者が場所情報P[0]に対応する自宅を8:00に出発し、場所情報P[1]に対応する職場に9:00に到着してそこに17:00まで滞在し、その後、場所情報P[2]に対応する最寄り駅を経由して場所情報P[3]に対応する近所のスーパーマーケットに18:20から18:50までの間滞在した後、19:10に帰宅したことを示している。
図4に戻って、視聴履歴記憶部134は、利用者がテレビ受信機91により視聴した番組の視聴履歴を示す情報を記憶する。視聴履歴記憶部134は、例えば図6に示すように、利用者の視聴した番組の番組識別情報と、その番組が放映された曜日を示す曜日情報と、その番組の放映開始時刻、終了時刻を示す開始時刻情報、終了時刻情報と、その番組の種別を示す番組種別情報と、を互いに対応づけて時系列で記憶している。図6に示す例では、利用者が、月曜日の7:00から8:00まで放映されたニュース番組を視聴したことを示している。
図4に戻って、モデル記憶部135は、利用者が立ち寄った立ち寄り場所の場所情報と利用者が立ち寄り場所に立ち寄った日の曜日を示す曜日情報とから、帰宅するまでの移動経路を推定するための経路推定モデルを示す経路推定モデル情報を記憶する。経路推定モデルは、例えば再帰型ニューラルネットワーク(Recurrent Neural Network)である。この場合、モデル記憶部135は、経路推定モデルの構造を示す情報と、経路推定モデルにおける重み係数を示す情報と、を記憶する。経路推定モデルの構造を示す情報には、経路推定モデルのノード数、層数、各ノードに対応する重み係数および活性化関数それぞれを示す情報が含まれる。ここで、重み係数には、各ノードが属する層からの出力を入力へ帰還させる際の重み係数を含んでいる。この経路推定モデルは、図7(A)に示すように入力層L110、隠れ層L120および出力層L130を有する。入力層L110には、利用者が立ち寄り場所に立ち寄った日の曜日を示す曜日情報と、利用者が立ち寄った場所を示す場所情報と、が入力される。
隠れ層L120は、例えば予め設定された数N[j]のノードy[j,i,t](1≦i≦N[j]、N[j]は正の整数)を含む3層から構成されている。ここで、入力層L110直後のノードと出力層L130直前のノードとを除く各ノードの出力y[2,j,t]は、下記式(1)の関係式で表される。
・・・式(1)
ここで、win[k,i]およびwfeedback[k,j]は、重み係数を示し、f(*)は、活性化関数を示す。また、tは、利用者が立ち寄った場所の数を反映した正の整数を示す。活性化関数としては、前述と同様に、シグモイド関数、ランプ関数、ステップ関数等の非線形関数が用いられる。t回目の推定時における各ノードの出力は、t回目における当該ノードが属する層の前の層に属する複数のノードそれぞれの出力に重み係数を乗じたものの総和と、直前のt-1回目の推定時における当該ノードと同じ層に属する複数のノードそれぞれの出力に重み係数を乗じたものの総和と、の和を引数とする活性化関数の出力となっている。出力層L130は、隠れ層L120の最終層に属するノードからの出力に基づいて、複数種類の移動経路、即ち、立ち寄り場所の組合せそれぞれに対する期待値を要素とする期待値ベクトルを出力する。ここで、出力層L130は、例えばソフトマックス関数を用いた処理を実行する。
また、モデル記憶部135は、利用者の移動経路に含まれる場所情報と、移動経路に含まれる少なくとも1つの立ち寄り場所における利用者の滞在時期を示す滞在時期情報と、利用者が移動経路を移動する日の曜日を示す曜日情報と、から、利用者が帰宅する帰宅時刻を推定するための帰宅時刻推定モデルを示す帰宅時刻推定モデル情報を記憶する。帰宅時刻推定モデルは、例えば順伝播型のニューラルネットワークである。この場合、モデル記憶部135は、経路推定モデルと同様に、帰宅時刻推定モデルの構造を示す情報と、帰宅時刻推定モデルにおける重み係数を示す情報と、を記憶する。ここで、帰宅時刻推定モデルの構造を示す情報には、帰宅時刻推定モデルのノード数、層数、各ノードに対応する重み係数および活性化関数それぞれを示す情報が含まれる。この帰宅時刻推定モデルは、図7(B)に示すように入力層L210、隠れ層L220および出力層L230を有する。入力層L210には、利用者の移動経路の含まれる少なくとも1つの立ち寄り場所の場所情報と、立ち寄り場所それぞれの滞在時期情報と、曜日情報と、が入力される。
隠れ層L220は、予め設定された数M[j]のノードx[j,i](1≦i≦M[j]、M[j]は正の整数)を含むN(Nは正の整数)個の層から構成されている。即ち、隠れ層L220は、各ノード列同士が繋がれた構造を有する。ここで、各ノードx[j,i]の出力y[j,i]は、下記式(2)の関係式で表される。
・・・式(2)
ここで、W[j,i,k]は、重み係数を示し、f(*)は、活性化関数を示す。活性化関数としては、シグモイド関数、ランプ関数、ステップ関数等の非線形関数が用いられる。隠れ層L220は、ノードに入力される情報が前の層の各ノードの出力にそれぞれに重み係数を乗じたものの総和となっている。そして、総和を引数とする活性化関数の出力が次の層へ伝達される。出力層L230は、隠れ層L220の最終層からの出力y[j,i]に基づいて、期待値が最も大きくなる帰宅時刻を出力する。ここで、出力層L230は、例えばソフトマックス関数を用いた処理を実行する。
図4に戻って、位置情報取得部111は、位置管理サーバ2から定期的に通知される端末装置5の位置情報および時刻情報を取得し、取得した位置情報および時刻情報を、利用者を識別する利用者識別情報に対応づけて位置記憶部131に記憶させる。
場所特定部112は、予め設定された立ち寄り場所特定時期が到来する毎に、利用者の立ち寄り場所を特定するための予め設定された場所特定用期間内における利用者の位置情報と位置情報が示す位置での利用者の滞在時間とに基づいて、利用者が立ち寄る少なくとも1つの立ち寄り場所を特定する。場所特定部112は、例えば端末装置5の位置の経時的な移動距離が予め設定された基準距離以下で維持された状態で予め設定された基準時間以上経過すると、その基準時間内における端末装置5の位置の中心位置を中心とする直径が基準距離に等しい円形の位置座標の範囲を立ち寄り場所として特定する。ここで、基準距離は、例えば100mに設定され、基準時間は、例えば5分間に設定される。また、場所特定用期間は、例えば直近の1ヶ月に設定される。この場合、場所特定部112は、直近の1ヶ月において利用者が直径100mの円形の領域内に5分間以上停滞した場所に対応する直径100mの円形の位置座標の範囲を利用者の立ち寄り場所として特定する。場所特定部112は、特定した利用者の立ち寄り場所を示す場所情報を、利用者を識別する利用者識別情報に対応づけて場所記憶部132に記憶させる。
移動状況判別部113は、利用者の立ち寄り場所それぞれにおける利用者の滞在時間に基づいて、利用者の移動状況を判別する。具体的には、移動状況判別部113は、場所記憶部132が記憶する少なくとも1つの利用者の立ち寄り場所の場所情報を参照して、位置記憶部131が記憶する直近の位置情報が示す端末装置5の位置が、ある1つの立ち寄り場所の位置座標の範囲外に存在する状態からその位置座標の範囲内に存在する状態に遷移したときにその立ち寄り場所に到着したと判別する。また、移動状況判別部113は、位置記憶部131が記憶する位置情報に対応する時刻情報に基づいて、その立ち寄り場所に到着した時刻を判別する。一方、移動状況判別部113は、位置記憶部131が記憶する直近の位置情報が示す端末装置5の位置が、ある1つの立ち寄り場所の位置座標の範囲内に存在する状態からその位置座標の範囲外に存在する状態に遷移したときにその立ち寄り場所から出発したと判別する。また、移動状況判別部113は、位置情報に対応する時刻情報に基づいて、その立ち寄り場所を出発した時刻を判別する。そして、移動状況判別部113は、利用者がいずれか1つの立ち寄り場所から出発またはいずれか1つの立ち寄り場所に到着する毎に、その立ち寄り場所の位置座標の範囲の中心の位置座標を示す情報と利用者が出発または到着した時刻を示す時刻情報とを、移動経路識別情報に対応付けて時系列で移動状況記憶部133に記憶させていく。また、移動状況判別部113は、利用者が自宅に到着したと判別すると、帰宅通知情報を帰宅通知部114に通知する。そして、帰宅通知部114は、移動状況判別部113から帰宅通知情報が通知されると、帰宅通知情報をモデル生成部121に通知するとともに位置管理サーバ2へ送信する。
推定部115は、利用者が立ち寄った立ち寄り場所の場所情報と利用者が立ち寄り場所に立ち寄った日の曜日を示す曜日情報とから、前述の経路推定モデルを用いて、利用者の移動経路を推定する。具体的には、推定部115は、利用者が立ち寄り場所に到着したと判別される毎に、モデル記憶部135が記憶する経路推定モデル情報が示す経路推定モデルを用いて、利用者が自宅から外出した後立ち寄り場所に到着するまでに利用者が立ち寄った少なくとも1つの立ち寄り場所それぞれを示す場所情報と、その立ち寄り場所に立ち寄った曜日を示す曜日情報と、から、その立ち寄り場所から帰宅するまでの複数種類の移動経路それぞれの期待値を算出する。ここで、移動経路は、利用者が立ち寄った立ち寄り場所から帰宅するまでに立ち寄る少なくとも1つの立ち寄り場所を示す場所情報の集合に相当する。そして、推定部115は、算出した期待値が最も大きい移動経路を、利用者が採用する移動経路と推定する。推定部115は、例えば水曜日に場所P[0](自宅)、場所P[1](職場)、場所P[2](最寄り駅)の順に移動して、場所P[2](最寄り駅)に到着したとする。このとき、推定部115は、例えば場所P[3](スーパーマーケット)、自宅P[0]の移動経路を利用者が採用する移動経路と推定する。
また、推定部115は、推定した移動経路に対応する場所情報と、各立ち寄り場所における滞在時期を示す滞在時期情報と、利用者が立ち寄り場所に立ち寄った日の曜日を示す曜日情報と、から、前述の帰宅時刻推定モデルを用いて、利用者の帰宅時刻を推定する。具体的には、推定部115は、決定した移動経路に対応する場所情報と、決定した移動経路が示す各立ち寄り場所の滞在時期情報と、利用者が立ち寄り場所に立ち寄った日の曜日情報と、から、モデル記憶部135が記憶する前述の帰宅時刻推定モデルを用いて、利用者が立ち寄り場所に到着した時刻または立ち寄り場所を出発した時刻以降の時間帯における各時刻における利用者が帰宅する期待値を算出する。そして、推定部115は、算出した期待値が最も大きい時刻を利用者の帰宅時刻と推定し、推定した帰宅時刻を示す帰宅時刻情報を通知判定部116に通知する。推定部115は、例えば水曜日の場所P[2](最寄り駅)の到着時刻が「18:00」であり、場所P[2](最寄り駅)から自宅までの移動経路として、場所P[3](スーパーマーケット)によってから自宅P[0]へ帰る移動経路を利用者が採用する移動経路と推定した場合、帰宅時刻を「19:10」と推定する。
番組選出部117は、利用者が過去に視聴した利用者が嗜好する少なくとも1つの番組の番組種別と同一の番組種別に属する番組を選出する。具体的には、番組選出部117は、視聴履歴記憶部134が記憶する番組識別情報の中から、利用者が立ち寄り場所に立ち寄った日の曜日と同じ曜日であって番組種別が同じである番組識別情報を検索し、そのような番組識別情報が存在する場合、その番組識別情報とその番組の開始時刻情報および終了時刻情報とを選出する。そして、番組選出部117は、選出した番組識別情報と開始時刻情報および終了時刻情報とを通知判定部116に通知する。
通知判定部116は、推定部115から通知される帰宅時刻情報が示す帰宅時刻と番組選出部117から通知される開始時刻情報が示す番組の開始時刻とを比較する。そして、通知判定部116は、利用者の帰宅時刻が番組の開始時刻よりも前であり且つ利用者の帰宅時刻から番組の開始時刻までの時間差が予め設定された第1時間差閾値以下であり且つ予め設定された第2時間差閾値よりも大きい場合、番組情報を利用者が所持する端末装置5へ送信すると判定する。ここで、第1時間差閾値は、利用者の帰宅時刻から番組の開始時刻までの時間が長く利用者の移動時に敢えて番組に関する情報を通知する必要が無い番組の番組情報の端末装置5への送信を回避する基準を定めるものであり、例えば1時間に設定される。また、第2時間差閾値は、例えば利用者の過去の同一の移動経路を移動した場合の帰宅時刻の分散に基づいて決定することができ、例えば5分間に設定される。通知判定部116は、利用者の帰宅時刻が番組の開始時刻よりも前であり且つ利用者の帰宅時刻から番組の開始時刻までの時間が予め設定された第2時間差閾値未満或いは利用者の帰宅時刻が番組の開始時刻よりも後である場合、利用者に対して番組の録画要否の問合せを行うための録画要否問合せ情報を端末装置5へ送信すると判定する。一方、通知判定部116は、利用者の帰宅時刻が番組の開始時刻よりも前であり且つ利用者の帰宅時刻から番組の開始時刻までの時間が予め設定された第1時間差閾値よりも大きい場合、番組情報および録画要否問合せ情報の端末装置5への送信を回避すると判定する。
番組通知部118は、通知判定部116により番組情報を利用者が所持する端末装置5へ送信すると判定されると、番組選出部117により選出された番組識別情報で識別される番組の番組情報を生成して端末装置5へ送信する。また、番組通知部118は、通知判定部116により前述の録画要否問合せ情報を端末装置5へ送信すると判定されると、番組選出部117により選出された番組識別情報で識別される番組の録画要否を問い合わせるための録画要否問合せ情報を生成して端末装置5へ送信する。
視聴履歴取得部119は、テレビ受信機91または録画装置92から送信される視聴履歴情報を取得すると、取得した視聴履歴情報に含まれる番組識別情報、曜日情報、開始時刻情報、終了時刻情報および番組種別情報を互いに対応づけて視聴履歴記憶部134に記憶させる。機器制御部120は、端末装置5から送信された操作情報を取得すると、取得した操作情報に基づいて、録画装置92に録画予約処理を実行させるための制御情報を生成する。そして、機器制御部120は、生成した制御情報を録画装置92へ送信する。
モデル生成部121は、利用者が帰宅したと判定される毎に、前述の利用者の立ち寄り場所を示す場所情報と滞在時期情報と曜日情報を用いて、経路推定モデルを示す経路推定モデル情報を生成する。ここで、モデル生成部121は、例えばBPTT(Back Propagation Through Time)法により新たな経路推定モデルを示す経路推定モデル情報を生成する。具体的には、モデル生成部121は、まず、モデル記憶部135が記憶する経路推定モデルを用いて、場所情報、滞在時期情報および曜日情報から、直近の推定時から予め設定された推定回数だけ遡った時点から直近の推定時までの各回における場所情報と滞在時期情報との組合せである移動経路それぞれの期待値を算出する。次に、モデル生成部121は、移動状況記憶部133が記憶する直近の推定時から予め設定された推定回数だけ遡った時点から直近の推定時までの各回に対応する移動経路の期待値が他の移動経路の期待値に比べて高くなるように期待値を設定する。例えば、モデル生成部121は、移動状況記憶部133が記憶する直近の移動経路の期待値を0よりも大きい数に設定し、他の移動経路の期待値を「0」に設定する。続いて、モデル生成部121は、経路推定モデルを用いて算出した期待値と、移動状況記憶部133が記憶する直近の移動経路の期待値との誤差を算出する。そして、モデル生成部121は、算出された誤差に基づくBUTT法により経路推定モデルの重み係数を決定し、決定した重み係数を示す情報を含む経路推定モデル情報でモデル記憶部135が記憶する経路推定モデル情報を更新する。
また、モデル生成部121は、利用者が帰宅したと判定される毎に、移動状況記憶部133が記憶する直近の利用者の場所情報と滞在時期情報と曜日情報と利用者の実際の帰宅時刻を示す帰宅時刻情報とを用いて、帰宅時刻推定モデルを示す帰宅時刻推定モデル情報を生成する。具体的には、モデル生成部121は、まず、モデル記憶部135が記憶する帰宅時刻推定モデル情報が示す帰宅時刻推定モデルを用いて、直近の利用者の場所情報と滞在時期情報と曜日情報とから、各時刻における利用者が帰宅する期待値を算出する。次に、モデル生成部121は、移動状況記憶部133が記憶する直近の帰宅時刻情報が示す帰宅時刻の期待値が他の時刻の期待値に比べて高くなるようにQ値を設定する。例えば、モデル生成部121は、移動状況記憶部133が記憶する直近の帰宅時刻の期待値を0よりも大きい数に設定し、他の時刻の期待値を「0」に設定する。そして、モデル生成部121は、帰宅時刻推定モデルを用いて算出した期待値と、移動状況記憶部133が記憶する直近の帰宅時刻情報が示す帰宅時刻について設定した期待値との誤差を算出する。そして、モデル生成部121は、算出された誤差に基づく誤差逆伝播法(バックプロパゲーション)により帰宅時刻推定モデルの重み係数を決定し、決定した重み係数を示す情報を含む帰宅時刻推定モデル情報でモデル記憶部135が記憶する帰宅時刻推定モデル情報を更新する。
次に、本実施の形態に係る情報提供システムの動作について図8から図11を参照しながら説明する。なお、図8から図11において、端末装置5とクラウドサーバ1との間で中継サーバ3を介して行う通信については中継サーバ3での中継処理を省略している。図8に示すように、まず、予め設定された位置情報取得時期が到来すると、端末装置5に対して端末装置5の位置情報の送信を要求する位置情報要求情報が、位置管理サーバ2から端末装置5へ送信される(ステップS1)。一方、端末装置5は、位置情報要求情報を取得すると、端末装置5の位置情報を生成する(ステップS2)。次に、生成された位置情報が、端末装置5から位置管理サーバ2へ送信される(ステップS3)。ここで、位置管理サーバ2は、端末装置5から取得した位置情報を、端末装置5を識別する端末装置識別情報に対応づけて管理する。
ここで、端末装置5の位置が予め設定された利用者の自宅を含む領域の内側に存在する状態から外側に存在する状態に遷移し、位置管理サーバ2が、利用者が端末装置5を携帯して外出したと判定したとする(ステップS4)。この場合、予め設定された位置情報送信時期が到来すると、端末装置5の位置情報が、位置管理サーバ2からクラウドサーバ1へ送信される(ステップS5)。一方、クラウドサーバ1は、位置管理サーバ2から位置情報を取得すると、取得した位置情報に基づいて、利用者の移動状況を判別する。そして、クラウドサーバ1は、利用者が移動経路に含まれる場所に到着またはその場所を出発したと判別すると、取得した位置情報と計時部107から通知される時刻情報とに基づいて、移動状況情報を生成して移動状況記憶部133に記憶させる(ステップS6)。以後、位置情報送信時期が到来する毎にステップS5およびS6の一連の処理が実行される。
続いて、予め設定された位置情報送信時期が到来し、端末装置5の位置情報が、位置管理サーバ2からクラウドサーバ1へ送信され(ステップS7)、クラウドサーバ1が、位置管理サーバ2から取得した位置情報に基づいて、利用者の移動状況を判別して移動状況情報を生成して移動状況記憶部133に記憶させた後(ステップS8)、クラウドサーバ1により利用者が立ち寄り場所に到着したと判定されたとする(ステップS9)。この場合、クラウドサーバ1は、前述の経路推定モデルを用いて、利用者の移動経路、即ち、利用者が立ち寄る立ち寄り場所と滞在時期との組合せを推定する(ステップS10)。その後、クラウドサーバ1は、前述の帰宅時刻推定モデルを用いて、利用者が推定した移動経路をとる場合の帰宅時刻を推定する(ステップS11)。次に、クラウドサーバ1は、利用者が過去に視聴した利用者が嗜好する少なくとも1つの番組の番組種別と同一の番組種別に属する番組を選出する(ステップS12)。続いて、クラウドサーバ1が、利用者の帰宅時刻が番組の開始時刻よりも前であり且つ利用者の帰宅時刻から番組の開始時刻までの時間差ΔTが前述の第1時間差閾値ΔTth1以下であり且つ前述の第2時間差閾値ΔTth2よりも大きいと判定したとする(ステップS13)。この場合、クラウドサーバ1が、図9に示すように、選出した番組の番組情報を生成し(ステップS14)、生成された番組情報が、クラウドサーバ1から端末装置5へ送信される(ステップS15)。一方、端末装置5は、番組情報を取得すると、取得した番組情報を含む番組紹介画像を生成して表示部504に表示させる(ステップS16)。
また、前述の位置情報送信時期が到来した後、前述のステップS7からS12までの一連の処理が実行された後、クラウドサーバ1が、利用者の帰宅時刻が番組の開始時刻よりも前であり且つ利用者の帰宅時刻から番組の開始時刻までの時間差ΔTが前述の第2時間差閾値ΔTth2以下であると判定したとする(ステップS17)。この場合、クラウドサーバ1が、選出した番組についての録画要否問合せ情報を生成し(ステップS18)、生成された録画要否問合せ情報が、クラウドサーバ1から端末装置5へ送信される(ステップS19)。一方、端末装置5は、録画要否問合せ情報を取得すると、取得した録画要否問合せ情報に含まれる問合せ対象の番組の番組情報を含む録画要否問合せ画像を生成して表示部504に表示させる(ステップS20)。
ここで、利用者が端末装置5の入力部505を介して問合せ対象の番組についての録画予約処理を録画装置92に実行させるための録画要求操作を行ったとする。この場合、端末装置5が、録画要求を行うための操作を示す操作情報を生成し(ステップS21)、生成された操作情報が、端末装置5からクラウドサーバ1へ送信される(ステップS22)。一方、クラウドサーバ1は、図10に示すように、操作情報を取得すると、取得した操作情報に基づいて、録画装置92に録画予約処理を実行させるための制御情報を生成する(ステップS23)。そして、生成された制御情報が、クラウドサーバ1から録画装置92へ送信される(ステップS24)。一方、録画装置92は、制御情報を取得すると、取得した制御情報により録画予約処理を実行する(ステップS25)。その後、録画予約した番組の番組開始時刻が到来すると、録画装置92は、録画を開始する(ステップS26)。そして、録画予約した番組の番組終了時刻が到来すると、録画装置92は、録画を終了し(ステップS27)、録画した番組の番組識別情報、曜日情報、開始時刻情報、終了時刻情報および番組種別情報を含む視聴履歴情報を生成する(ステップS28)。次に、生成された視聴履歴情報が、録画装置92からクラウドサーバ1へ送信される(ステップS29)。一方、クラウドサーバ1は、視聴履歴情報を取得すると、取得した視聴履歴情報に含まれる番組識別情報、曜日情報、開始時刻情報、終了時刻情報および番組種別情報を互いに対応づけて視聴履歴記憶部134に記憶させる(ステップS30)。
また、前述の位置情報送信時期が到来した後、前述のステップS7およびS8での一連の処理が実行された後、クラウドサーバ1により利用者が帰宅したと判定されたとする(ステップS31)。この場合、前述の帰宅通知情報が、クラウドサーバ1から位置管理サーバ2へ送信される(ステップS32)。ここで、位置管理サーバ2は、帰宅通知情報を取得すると、端末装置5の位置情報のクラウドサーバ1への定期的な送信を停止する。
続いて、クラウドサーバ1は、図11に示すように、前述の利用者の立ち寄り場所を示す場所情報と滞在時期情報と曜日情報を用いて、経路推定モデルを示す経路推定モデル情報を生成し、生成した経路推定モデル情報でモデル記憶部135が既に記憶する経路推定モデル情報を更新する(ステップS33)。その後、クラウドサーバ1は、移動状況記憶部133が記憶する直近の利用者の場所情報と滞在時期情報と曜日情報と利用者の実際の帰宅時刻を示す帰宅時刻情報とを用いて、帰宅時刻推定モデルを示す帰宅時刻推定モデル情報を生成し、生成した帰宅時刻推定モデル情報でモデル記憶部135が既に記憶する帰宅時刻推定モデル情報を更新する(ステップS34)。
また、利用者が手動で視聴を開始するための視聴開始操作を行うと、テレビ受信機91は、映像表示を開始する(ステップS35)。その後、利用者が手動で視聴を終了するための視聴終了操作を行うと、テレビ受信機91は、映像表示を終了する(ステップS36)。そしてテレビ受信機91は、利用者が視聴した少なくとも1つの番組の視聴時間を集計する視聴時間集計処理を実行し(ステップS37)、利用者が予め設定された基準時間以上視聴を継続した番組を特定する(ステップS38)。次に、テレビ受信機91が、特定した番組について、番組識別情報と曜日情報と開始時刻情報および終了時刻情報と番組種別情報とを含む視聴履歴情報を生成し(ステップS39)、生成された視聴履歴情報が、テレビ受信機91からクラウドサーバ1へ送信される(ステップS40)。一方、クラウドサーバ1は、視聴履歴情報を取得すると、取得した視聴履歴情報に含まれる番組識別情報、曜日情報、開始時刻情報、終了時刻情報および番組種別情報を互いに対応づけて視聴履歴記憶部134に記憶させる(ステップS41)。
また、予め設定された立ち寄り場所特定時期が到来すると、クラウドサーバ1は、前述の場所特定用期間内における利用者の位置情報と位置情報が示す位置での利用者の滞在時間ΔTsが予め設定された基準時間ΔTsth以上である場所を立ち寄り場所として特定する(ステップS42)。続いて、クラウドサーバ1は、特定した利用者の立ち寄り場所を示す場所情報で場所記憶部132が既に記憶する場所情報を更新する(ステップS43)。その後、クラウドサーバ1は、更新後の場所情報と滞在時期情報と曜日情報を用いて、経路推定モデルを示す経路推定モデル情報を生成し、生成した経路推定モデル情報でモデル記憶部135が既に記憶する経路推定モデル情報を更新する(ステップS44)。
次に、本実施の形態に係るクラウドサーバ1が実行する情報提供処理について図12および図13を参照しながら説明する。この情報提供処理は、例えばクラウドサーバ1において情報提供処理を実行するためのプログラムが起動したことを契機として開始される。まず、位置情報取得部111は、位置管理サーバ2から送信される位置情報および時刻情報を取得したか否かを判定する(ステップS101)。位置情報取得部111が未だ位置情報および時刻情報を取得していないと判定すると(ステップS101:No)、後述のステップS103の処理が実行される。一方、位置情報取得部111は、位置情報および時刻情報を取得したと判定すると(ステップS101:Yes)、位置情報および時刻情報を互いに対応づけて位置記憶部131に記憶させる。そして、移動状況判別部113が、位置記憶部131が記憶する位置情報と場所記憶部132が記憶する場所情報とに基づいて、利用者の移動状況を判別し、利用者が立ち寄り場所に到着または立ち寄り場所から出発したと判別すると、立ち寄り場所を示す場所情報と到着時刻、出発時刻を示す到着時刻情報、出発時刻情報とから構成される移動状況情報を生成する。そして、移動状況判別部113は、生成した移動状況情報を移動状況記憶部133に記憶させる(ステップS102)。次に、移動状況判別部113は、生成した移動状況情報に基づいて、利用者が立ち寄り場所に到着したか否かを判定する(ステップS103)。ここで、移動状況判別部113により利用者が未だ立ち寄り場所に到着していないと判定されると(ステップS103:No)、後述のステップS113の処理が実行される。
一方、移動状況判別部113により利用者が立ち寄り場所に到着したと判定されると(ステップS103:Yes)、推定部115は、利用者が立ち寄った立ち寄り場所の場所情報と利用者が立ち寄り場所に立ち寄った日の曜日を示す曜日情報とから、前述の経路推定モデルを用いて、利用者の移動経路、即ち、利用者が立ち寄る立ち寄り場所の組合せを推定する(ステップS104)。続いて、推定部115は、推定した移動経路が示す利用者が立ち寄る立ち寄り場所を示す場所情報の組合せと、決定した移動経路が示す各立ち寄り場所における滞在時期を示す滞在時期情報と、利用者が立ち寄り場所に立ち寄った日の曜日を示す曜日情報と、から、前述の帰宅時刻推定モデルを用いて、利用者の帰宅時刻を推定する(ステップS105)。その後、番組選出部117は、利用者が過去に視聴した利用者が嗜好する少なくとも1つの番組の番組種別と同一の番組種別に属する番組を選出する(ステップS106)。
次に、通知判定部116は、利用者の帰宅時刻Treが番組の開始時刻Tstよりも前であり且つ利用者の帰宅時刻Treから番組の開始時刻Tstまでの時間差ΔTが前述の第1時間差閾値ΔTth1以下であり且つ前述の第2時間差閾値ΔTth2よりも大きいか否かを判定する(ステップS107)。ここで、通知判定部116が、帰宅時刻Treが番組の開始時刻Tstよりも前であり且つ時間差ΔTが前述の第1時間差閾値ΔTth1以下であり且つ前述の第2時間差閾値ΔTth2よりも大きいと判定すると(ステップS107:Yes)、番組情報を利用者が所持する端末装置5へ送信すると判定する。そして、番組通知部118が、番組選出部117により選出された番組識別情報で識別される番組の番組情報を生成して端末装置5へ送信した後(ステップS108)、後述のステップS111の処理が実行される。
一方、通知判定部116が、帰宅時刻Treが番組の開始時刻Tstよりも前であり且つ時間差ΔTが前述の第1時間差閾値ΔTth1よりも大きい、または、時間差ΔTが前述の第2時間差閾値ΔTth1以下である、或いは、帰宅時刻Treが番組の開始時刻Tst後であると判定したとする(ステップS107:No)。この場合、通知判定部116が、帰宅時刻Treが番組の開始時刻Tstよりも前であり且つ帰宅時刻Treから番組の開始時刻Tstまでの時間差ΔTが前述の第2時間差閾値ΔTth2以下、または、帰宅時刻Treが番組の開始時刻Tst後であるか否かを判定する(ステップS109)。ここで、通知判定部116が、利用者の帰宅時刻Treが番組の開始時刻Tstよりも前であり且つ利用者の帰宅時刻Treから番組の開始時刻Tstまでの時間差ΔTが前述の第1時間差閾値ΔTth1よりも大きいと判定したとする(ステップS109:No)。この場合、番組通知部118は、番組情報の端末装置5への送信を回避し、後述のステップS113の処理が実行される。一方、通知判定部116が、帰宅時刻Treが番組の開始時刻Tstよりも前であり且つ利用者の帰宅時刻Treから番組の開始時刻Tstまでの時間差ΔTが前述の第2時間差閾値ΔTth2以下である、または、帰宅時刻Treが番組の開始時刻Tst後であると判定したとする(ステップS109:Yes)。この場合、番組通知部118は、番組選出部117により選出された番組識別情報で識別される番組の録画要否を問い合わせるための録画要否問合せ情報を生成して端末装置5へ送信する(ステップS110)。
続いて、機器制御部120は、端末装置5から送信された操作情報を取得したか否かを判定する(ステップS111)。ここで、機器制御部120は、端末装置5から送信された操作情報を取得したと判定すると(ステップS111:Yes)、取得した操作情報に基づいて、録画装置92に録画予約処理を実行させるための制御情報を生成し、生成した制御情報を録画装置92へ送信する(ステップS112)。
その後、移動状況判別部113は、生成した移動状況情報に基づいて、利用者が帰宅したか否かを判定する(ステップS113)。移動状況判別部113が、利用者が未だ帰宅していないと判定すると(ステップS113:No)、後述のステップS117の処理が実行される。一方、移動状況判別部113により利用者が帰宅したと判定されると(ステップS113:Yes)、帰宅通知部114が、帰宅通知情報を位置管理サーバ2へ送信する(ステップS114)。次に、モデル生成部121は、前述の利用者の立ち寄り場所を示す場所情報と滞在時期情報と曜日情報を用いて、経路推定モデルを示す経路推定モデル情報を生成し、生成した経路推定モデル情報でモデル記憶部135が既に記憶する経路推定モデル情報を更新する(ステップS115)。続いて、モデル生成部121は、移動状況記憶部133が記憶する直近の利用者の場所情報と滞在時期情報と曜日情報と利用者の実際の帰宅時刻を示す帰宅時刻情報とを用いて、帰宅時刻推定モデルを示す帰宅時刻推定モデル情報を生成する。そして、モデル生成部121は、生成した帰宅時刻推定モデル情報でモデル記憶部135が既に記憶する帰宅時刻推定モデル情報を更新する(ステップS116)。
次に、視聴履歴取得部119は、図13に示すように、テレビ受信機91または録画装置92から送信される視聴履歴情報を取得したか否かを判定する(ステップS117)。ここで、視聴履歴取得部119が、視聴履歴情報を取得していないと判定すると(ステップS117:No)、後述のステップS119の処理が実行される。一方、視聴履歴取得部119は、視聴履歴情報を取得したと判定すると(ステップS117:Yes)、取得した視聴履歴情報に含まれる番組識別情報、曜日情報、開始時刻情報、終了時刻情報および番組種別情報を互いに対応づけて視聴履歴記憶部134に記憶させる(ステップS118)。
続いて、場所特定部112は、前述の立ち寄り場所特定時期が到来したか否かを判定する(ステップS119)。ここで、場所特定部112が、立ち寄り場所特定時期が未だ到来していないと判定すると(ステップS119:No)、再びステップS101の処理が実行される。一方、場所特定部112は、立ち寄り場所特定時期が到来したと判定すると(ステップS119:Yes)、位置記憶部131が記憶する位置情報を参照して、前述の場所特定用期間内における利用者の位置情報と位置情報が示す位置での利用者の滞在時間ΔTsが予め設定された基準時間ΔTsth以上である場所を立ち寄り場所として特定する(ステップS120)。その後、場所特定部112は、特定した利用者の立ち寄り場所を示す場所情報で場所記憶部132が既に記憶する場所情報を更新する(ステップS121)。次に、モデル生成部121は、更新後の場所情報と滞在時期情報と曜日情報を用いて、経路推定モデルを示す経路推定モデル情報を生成し、生成した経路推定モデル情報でモデル記憶部135が既に記憶する経路推定モデル情報を更新する(ステップS122)。続いて、再びステップS101の処理が実行される。
以上説明したように、本実施の形態に係るクラウドサーバ1によれば、推定部115が、経路推定モデルを用いて利用者の移動経路を推定し、推定した移動経路から帰宅時刻推定モデルを用いて、利用者の帰宅時刻を推定する。また、番組選出部117が、利用者が過去に視聴した利用者が嗜好する少なくとも1つの番組の番組種別と同一の番組種別に属する番組を選出する。そして、番組通知部118は、通知判定部116により番組種別の番組の番組情報を利用者が所持する端末装置へ送信すると判定されると、番組情報を利用者が所持する端末装置5へ送信する。これにより、利用者の帰宅時刻に応じて利用者に対して利用者の嗜好する番組の番組情報を提供することができるので、利用者の位置、行動パターンに応じて利用者の嗜好する番組を案内することができる。
ところで、建物Hに居住する利用者は、自身が嗜好する番組の放送日と放送時間帯を事前に把握していない場合、例えば放送時間帯に外出しており自身の嗜好する番組を視聴できない場合がある。これに対して、本実施の形態に係る情報提供システムでは、利用者の位置、行動パターンに応じて利用者の嗜好する番組を案内することができるので、利用者は自身が嗜好する番組の放送日と放送時間帯を事前に把握せずに外出した場合であっても、外出先でその番組の放送時間帯を把握してその放送時間帯に合わせて行動することが可能となる。
また、本実施の形態に係る通知判定部116は、利用者の帰宅時刻が、選出された番組の開始時刻よりも前であり且つ利用者の帰宅時刻から番組の開始時刻までの時間差が予め設定された第1時間差閾値以下であり且つ予め設定された第2時間差閾値よりも大きい場合、番組情報を端末装置5へ送信すると判定する。これにより、利用者の帰宅時刻と番組の開始時刻との時間差が適当な長さである場合に利用者に番組情報が通知されるので、利用者に対して適切な番組情報を通知することができる。
更に、本実施の形態に係る通知判定部116は、利用者の帰宅時刻が、選出された番組の開始時刻よりも前であり且つ帰宅時刻から番組の開始時刻までの時間差が前記第2時間差閾値以下である場合、または、利用者の帰宅時刻が番組の開始時刻よりも後である場合、利用者に対して番組の録画要否の問合せを行うための録画要否問合せ情報を前記端末装置へ送信すると判定し、番組通知部118が、録画要否問合せ情報を端末装置5へ送信する。また、機器制御部120は、操作情報を取得すると、操作情報に基づいて、選出された番組を録画装置92に録画させるための制御情報を生成して録画装置92へ送信する。これにより、利用者が番組の開始時刻までに帰宅できない可能性ある場合に利用者に対して番組の録画要否の問い合わせを行い、利用者が端末装置5を介して録画装置92に録画させることができる。即ち、利用者が自身の嗜好する番組の番組開始時刻を帰宅の途中で把握した場合に、番組開始時刻までに帰宅できないとき、その場で番組を録画することができる。従って、利用者が視聴したい番組を見逃してしまうことを抑制できる。
(実施の形態2)
本実施の形態に係る情報提供装置は、推定部が、推定した移動経路に含まれる少なくとも1つの立ち寄り場所それぞれにおける滞在時期から利用者の帰宅時刻とともに利用者が嗜好する少なくとも1つの番組の番組種別と同一の番組種別に属する番組とを推定する帰宅時刻番組推定モデルを用いて、利用者の帰宅時刻と利用者が視聴する番組を推定する点で実施の形態1に係る情報提供装置と相違する。
本実施の形態に係るクラウドサーバのハードウェア構成は、図2に示す実施の形態1に係るクラウドサーバ1のハードウェア構成と同様である。以下、本実施の形態に係るハードウェア構成については、実施の形態1の説明で用いた符号と同一の符号を用いて説明する。図14に示すように、クラウドサーバ2001のCPU101は、補助記憶部103が記憶するプログラムを主記憶部102に読み出して実行することにより、位置情報取得部111、場所特定部112、移動状況判別部113、帰宅通知部114、推定部2115、通知判定部2116、番組通知部118、視聴履歴取得部2119、機器制御部120およびモデル生成部2121として機能する。なお、図14において実施の形態1と同様の構成については図4と同一の符号を付している。また、補助記憶部103は、位置記憶部131と、場所記憶部132と、移動状況記憶部133と、視聴履歴記憶部2134と、モデル記憶部2135を有する。
視聴履歴記憶部2134は、利用者がテレビ受信機91により視聴した番組の視聴履歴を示す情報を、その番組を視聴した直前の利用者の移動状況またはその番組が録画予約処理された際の利用者の移動状況を識別する移動状況識別情報に対応づけて記憶する。視聴履歴記憶部2134は、例えば図15に示すように、利用者の視聴した番組の番組識別情報と、その番組が放映された曜日を示す曜日情報と、その番組の放映開始時刻、終了時刻を示す開始時刻情報、終了時刻情報と、その番組の種別を示す番組種別情報と、を、移動状況識別情報に対応づけて時系列で記憶している。図15に示す例では、利用者が、月曜日の1日の移動状況が移動状況識別情報「a0」で識別される移動状況であり、その日の7:00から8:00まで放映されたニュース番組を視聴したことを示している。
図14に戻って、モデル記憶部2135は、実施の形態1で説明したモデル記憶部135と同様に、利用者が立ち寄った立ち寄り場所の場所情報と利用者が立ち寄り場所に立ち寄った日の曜日を示す曜日情報とから、移動経路を推定する経路推定モデルを示す経路推定モデル情報を記憶する。また、モデル記憶部2135は、推定された利用者の移動経路に含まれる場所情報と、移動経路に含まれる少なくとも1つの立ち寄り場所における利用者の滞在時期を示す滞在時期情報と、利用者が移動経路を移動する日の曜日を示す曜日情報と、から、利用者が帰宅する帰宅時刻と利用者が嗜好する少なくとも1つの番組の番組種別と同一の番組種別に属する番組とを推定するための帰宅時刻番組推定モデルを示す帰宅時刻番組推定モデル情報を記憶する。帰宅時刻番組推定モデルは、例えば順伝播型のニューラルネットワークであり、実施の形態1で説明した帰宅時刻推定モデルと同様の構造を有する。ここで、出力層は、隠れ層の最終層からの出力に基づいて、期待値が最も大きくなる帰宅時刻と番組との組み合わせを出力する。また、モデル記憶部2135は、少なくとも1つの経路推定モデル情報と帰宅時刻番組推定モデル情報との組合せを、対応する端末装置5を識別する端末装置識別情報に対応づけて記憶する。
推定部2115は、利用者が立ち寄り場所に到着したと判別される毎に、モデル記憶部2135が記憶する少なくとも1つの経路推定モデル情報と帰宅時刻番組推定モデル情報との組合せの中から、その利用者が所持する端末装置5の端末識別情報に対応する組合せを選出する。そして、推定部2115は、利用者が立ち寄った立ち寄り場所の場所情報と利用者が立ち寄り場所に立ち寄った日の曜日を示す曜日情報とから、選出した経路推定モデルを用いて、利用者の移動経路を推定する。また、推定部2115は、推定した移動経路に対応する場所情報と、各立ち寄り場所における滞在時期を示す滞在時期情報と、利用者が立ち寄り場所に立ち寄った日の曜日を示す曜日情報と、から、選出した帰宅時刻番組推定モデルを用いて、利用者の帰宅時刻と番組との組み合わせを推定する。具体的には、推定部2115は、決定した移動経路に対応する場所情報と、決定した移動経路が示す各立ち寄り場所の滞在時期情報と、利用者が立ち寄り場所に立ち寄った日の曜日情報と、から、モデル記憶部2135が記憶する前述の帰宅時刻番組推定モデルを用いて、利用者が立ち寄り場所に到着した時刻または立ち寄り場所を出発した時刻以降の時間帯における各時刻と各時刻前後における番組との組み合わせそれぞれの期待値を算出する。そして、推定部2115は、算出した期待値が最も大きい時刻と番組との組み合わせを利用者の帰宅時刻と利用者が嗜好する番組との組み合わせに決定し、決定した帰宅時刻、番組を示す帰宅時刻情報、番組識別情報を通知判定部2116に通知する。
通知判定部2116は、視聴履歴記憶部2134が記憶する開始時刻情報の中から、推定部2115から通知される番組識別情報に対応する開始時刻情報を特定する。そして、通知判定部2116は、推定部2115から通知される帰宅時刻情報が示す帰宅時刻と、特定した開始時刻情報が示す番組の開始時刻と、を比較する。そして、通知判定部2116は、利用者の帰宅時刻が番組の開始時刻よりも前であり且つ利用者の帰宅時刻から番組の開始時刻までの時間差が予め設定された第1時間差閾値以下であり且つ予め設定された第2時間差閾値よりも大きい場合、番組情報を利用者が所持する端末装置5へ送信すると判定する。また、通知判定部2116は、利用者の帰宅時刻が番組の開始時刻よりも前であり且つ利用者の帰宅時刻から番組の開始時刻までの時間が予め設定された第2時間差閾値未満或いは利用者の帰宅時刻が番組の開始時刻よりも後である場合、利用者に対して番組の録画要否の問合せを行うための録画要否問合せ情報を端末装置5へ送信すると判定する。一方、通知判定部2116は、利用者の帰宅時刻が番組の開始時刻よりも前であり且つ利用者の帰宅時刻から番組の開始時刻までの時間が予め設定された第1時間差閾値よりも大きい場合、番組情報および録画要否問合せ情報の端末装置5への送信を回避すると判定する。
視聴履歴取得部2119は、テレビ受信機91または録画装置92から送信される視聴履歴情報を取得すると、移動状況記憶部133が記憶する移動状況情報の中から、視聴履歴情報を取得した時点の直近の移動状況情報を特定する。そして、視聴履歴取得部2119は、取得した視聴履歴情報に含まれる番組識別情報、曜日情報、開始時刻情報、終了時刻情報および番組種別情報を、特定した移動状況情報を識別する移動状況識別情報に対応づけて視聴履歴記憶部2134に記憶させる。
モデル生成部2121は、実施の形態1で説明したモデル生成部121と同様に、利用者が帰宅したと判定される毎に、前述の利用者の立ち寄り場所を示す場所情報と滞在時期情報と曜日情報を用いて、経路推定モデルを示す経路推定モデル情報を生成する。そして、モデル生成部2121は、生成した経路推定モデル情報をモデル記憶部2135に記憶させる。また、モデル生成部2121は、利用者が帰宅したと判定される毎に、移動状況記憶部133が記憶する直近の利用者の場所情報と滞在時期情報と曜日情報と利用者の実際の帰宅時刻を示す帰宅時刻情報と番組識別情報とを用いて、帰宅時刻番組推定モデルを示す帰宅時刻推定モデル情報を生成する。具体的には、モデル生成部2121は、まず、モデル記憶部2135が記憶する帰宅時刻番組推定モデル情報が示す帰宅時刻番組推定モデルを用いて、直近の利用者の場所情報と滞在時期情報と曜日情報とから、各時刻と番組との組合せそれぞれの期待値を算出する。次に、モデル生成部2121は、移動状況記憶部2133が記憶する直近の帰宅時刻情報が示す帰宅時刻と、視聴履歴記憶部2134が記憶する帰宅後に実際に利用者が視聴した番組と、の組合せの期待値を、他の時刻と番組との組合せの期待値に比べて高くなるように設定する。例えば、モデル生成部2121は、移動状況記憶部133が記憶する直近の帰宅時刻と帰宅後に利用者が視聴した番組の期待値を0よりも大きい数に設定し、他の時刻と番組との期待値を「0」に設定する。そして、モデル生成部2121は、帰宅時刻番組推定モデルを用いて算出した期待値と、移動状況記憶部2133が記憶する直近の帰宅時刻情報が示す帰宅時刻と、視聴履歴記憶部2134が記憶する帰宅後に実際に利用者が視聴した番組と、の組合せについて設定した期待値との誤差を算出する。そして、モデル生成部2121は、算出された誤差に基づく誤差逆伝播法(バックプロパゲーション)により帰宅時刻番組推定モデルの重み係数を決定し、決定した重み係数を示す情報を含む帰宅時刻番組推定モデル情報でモデル記憶部2135が記憶する帰宅時刻番組推定モデル情報を更新する。
次に、本実施の形態に係るクラウドサーバ2001が実行する情報提供処理について図16および図17を参照しながら説明する。なお、図16および図17において、実施の形態1と同様の処理については、図12および図13と同一の符号を付している。まず、ステップS101およびS102の一連の処理が実行された後、移動状況判別部113は、前述のように利用者が立ち寄り場所に到着したか否かを判定する(ステップS103)。ここで、移動状況判別部113により利用者が未だ立ち寄り場所に到着していないと判定されると(ステップS103:No)、後述のステップS113の処理が実行される。一方、移動状況判別部113により利用者が立ち寄り場所に到着したと判定されると(ステップS103:Yes)、推定部115は、利用者の移動経路を推定する(ステップS104)。次に、推定部115は、推定した移動経路に対応する場所情報の組合せと、各立ち寄り場所における滞在時期を示す滞在時期情報と、利用者が立ち寄り場所に立ち寄った日の曜日を示す曜日情報と、から、前述の帰宅時刻番組推定モデルを用いて、利用者の帰宅時刻と番組との組み合わせを推定する(ステップS2101)。続いて、ステップS107からステップS112までの一連の処理が実行される。
その後、移動状況判別部113は、利用者が帰宅したか否かを判定する(ステップS113)。移動状況判別部113が、利用者が未だ帰宅していないと判定すると(ステップS113:No)、後述のステップS117の処理が実行される。一方、移動状況判別部113により利用者が帰宅したと判定されると(ステップS113:Yes)、帰宅通知部114が、帰宅通知情報を位置管理サーバ2へ送信する(ステップS114)。次に、モデル生成部2121は、経路推定モデルを示す経路推定モデル情報を生成し、生成した経路推定モデル情報でモデル記憶部2135が既に記憶する経路推定モデル情報を更新する(ステップS115)。続いて、モデル生成部2121は、移動状況記憶部133が記憶する直近の利用者の場所情報と滞在時期情報と曜日情報と利用者の実際の帰宅時刻を示す帰宅時刻情報と番組識別情報とを用いて、帰宅時刻番組推定モデルを示す帰宅時刻番組推定モデル情報を生成する。そして、モデル生成部2121は、生成した帰宅時刻番組推定モデル情報でモデル記憶部2135が既に記憶する帰宅時刻番組推定モデル情報を更新する(ステップS2102)。
次に、視聴履歴取得部119は、図17に示すように、テレビ受信機91または録画装置92から送信される視聴履歴情報を取得したか否かを判定する(ステップS117)。ここで、視聴履歴取得部119が、視聴履歴情報を取得していないと判定すると(ステップS117:No)、後述のステップS119の処理が実行される。一方、視聴履歴取得部119は、視聴履歴情報を取得したと判定すると(ステップS117:Yes)、テレビ受信機91または録画装置92から送信される視聴履歴情報を取得すると、移動状況記憶部133が記憶する移動状況情報の中から、視聴履歴情報を取得した時点の直近の移動状況情報を特定する。そして、視聴履歴取得部2119は、取得した視聴履歴情報に含まれる番組識別情報、曜日情報、開始時刻情報、終了時刻情報および番組種別情報を、特定した移動状況情報を識別する移動状況識別情報に対応づけて視聴履歴記憶部2134に記憶させる(ステップS2103)。続いて、モデル生成部2121は、移動状況記憶部133が記憶する直近の利用者の場所情報と滞在時期情報と曜日情報と利用者の実際の帰宅時刻を示す帰宅時刻情報と番組識別情報とを用いて、帰宅時刻番組推定モデルを示す帰宅時刻推定モデル情報を生成する。そして、モデル生成部2121は、生成した帰宅時刻番組推定モデル情報でモデル記憶部2135が既に記憶する帰宅時刻番組推定モデル情報を更新する(ステップS2104)。その後、ステップS119以降の処理が実行される。
以上説明したように、本実施の形態に係るクラウドサーバ2001では、推定部2115が、推定した移動経路に含まれる立ち寄り場所それぞれにおける滞在時期から利用者の帰宅時刻とともに利用者が嗜好する番組を推定する帰宅時刻番組推定モデルを用いて、利用者の帰宅時刻と利用者が視聴する番組とを推定する。これにより、例えば複数の利用者が建物Hに同居する場合において各利用者に、帰宅時刻と番組との組合せを推定することができるので、番組情報として各利用者の嗜好が適切に反映された番組情報を選出して利用者に提示することができる。
(実施の形態3)
本実施の形態に係る情報提供装置は、利用者の帰宅時刻から番組選出部117により選出された番組の開始時刻までの間の時間差が前述の第1時間差閾値よりも大きく且つ予め設定された第3時間差閾値以下である場合、冷蔵庫内の在庫状況を示す在庫状況情報を端末装置へ送信する在庫状況通知部を備える点で実施の形態1に係る情報提供装置と相違する。
本実施の形態に係る情報提供システムは、図18に示すように、建物Hに設置されたテレビ受信機91、録画装置92および冷蔵庫93と、クラウドサーバ3001と、位置管理サーバ2と、中継サーバ3と、端末装置3005A、3005Bと、を備える。なお、図18において、実施の形態1と同様の構成については図1と同一の符号を付している。テレビ受信機91と録画装置92と冷蔵庫93とは、それぞれ、局所ネットワークNW2、広域ネットワークNW1を介してクラウドサーバ3001と通信可能である。冷蔵庫93は、庫内を撮像する撮像部(図示せず)を有し、クラウドサーバ3001から庫内の在庫状況を示す在庫状況情報の送信を要求する在庫状況要求情報を取得すると、撮像部により庫内を撮像する。そして、冷蔵庫93は、撮像部により撮像して得られた撮像画像を示す画像情報を含む在庫状況情報を生成してクラウドサーバへ送信する。
本実施の形態に係る端末装置3005A、3005Bのハードウェア構成は、図2に示す実施の形態1に係る端末装置5のハードウェア構成と同様である。また、クラウドサーバ3001のハードウェア構成は、図2に示す実施の形態1に係るクラウドサーバ1のハードウェア構成と同様である。以下、本実施の形態に係る端末装置3005A、3005B、クラウドサーバ3001のハードウェア構成については、実施の形態1の説明で用いた符号と同一の符号を用いて説明する。端末装置3005A、3005BのCPU501は、補助記憶部503が記憶するプログラムを主記憶部502に読み出して実行することにより、図19に示すように、受付部511、表示制御部3512、測位部513、位置情報通知部514、番組情報取得部515、操作情報生成部516、操作情報送信部517および在庫状況取得部3518として機能する。なお、図19において実施の形態1と同様の構成については図3と同一の符号を付している。また、補助記憶部503は、画像記憶部531を有し、主記憶部502は、位置記憶部521とクラウドサーバ3001から送信される後述の在庫状況情報に含まれる画像情報を記憶する撮像画像記憶部522と、を有する。在庫状況取得部3518は、クラウドサーバ3001から送信される在庫状況情報を取得すると、取得した在庫状況情報に含まれる画像情報を抽出して撮像画像記憶部522に記憶させる。表示制御部3512は、撮像画像記憶部522が記憶する画像情報を用いて冷蔵庫93の在庫状況を表す在庫状況通知画像を生成し、生成した在庫状況通知画像を表示部504に表示させる。
本実施の形態に係るクラウドサーバ3001のCPU101は、補助記憶部103が記憶するプログラムを主記憶部102に読み出して実行することにより、図20に示すように、位置情報取得部111、場所特定部112、移動状況判別部113、帰宅通知部114、推定部115、通知判定部3116、番組選出部117、番組通知部118、視聴履歴取得部119、機器制御部120、モデル生成部121および在庫状況通知部3122として機能する。なお、図20において実施の形態1と同様の構成については図4と同一の符号を付している。また、補助記憶部103は、位置記憶部131と、場所記憶部132と、移動状況記憶部133と、視聴履歴記憶部134と、モデル記憶部135を有する。通知判定部3116は、利用者の帰宅時刻が番組の開始時刻よりも前であり且つ利用者の帰宅時刻から番組の開始時刻までの時間差が前述の第1時間差閾値以下であり且つ前述の第2時間差閾値よりも大きい場合、番組情報を利用者が所持する端末装置3005A、3005Bへ送信すると判定する。また、通知判定部3116は、帰宅時刻が番組の開始時刻よりも前であり且つ利用者の帰宅時刻から番組の開始時刻までの時間が第2時間差閾値未満、または、帰宅時刻が番組の開始時刻よりも後である場合、利用者に対して番組の録画要否の問合せを行うための録画要否問合せ情報を端末装置3005A、3005Bへ送信すると判定する。更に、通知判定部3116は、利用者の帰宅時刻が番組の開始時刻よりも前であり且つ帰宅時刻から番組の開始時刻までの時間差が前述の第1時間差閾値よりも大きく且つ予め設定された第3時間差閾値以下である場合、冷蔵庫93の在庫状況を示す在庫状況情報を端末装置3005A、3005Bへ送信すると判定する。ここで、第3時間差閾値は、例えば利用者が近所のスーパーマーケット、商業施設等で買い物を行うのに要する時間に基づいて設定することができ、例えば2時間に設定される。一方、通知判定部3116は、帰宅時刻が番組の開始時刻よりも前であり且つ帰宅時刻から番組の開始時刻までの時間が前述の第3時間差閾値よりも大きい場合、番組情報、録画要否問合せ情報および在庫状況情報の端末装置3005A、3005Bへの送信を回避すると判定する。
在庫状況通知部3122は、通知判定部3116により冷蔵庫93の在庫状況を示す在庫状況情報を端末装置3005A、3005Bへ送信すると判定されると、冷蔵庫内の在庫状況を示す在庫状況情報を端末装置3005A、3005Bへ送信する。ここで、在庫状況通知部3122は、冷蔵庫93に対して前述の在庫状況情報の送信を要求する在庫状況要求情報を生成して冷蔵庫93へ送信することにより、冷蔵庫93から送信される在庫状況情報を取得し、取得した在庫状況情報を端末装置3005A、3005Bへ送信する。ここで、在庫状況通知部3122は、在庫状況情報を、予め設定された送信先の端末装置3005A、3005Bへ送信する。
次に、本実施の形態に係る情報提供システムの動作について図21を参照しながら説明する。なお、図21において、端末装置3005A、3005Bとクラウドサーバ3001との間で中継サーバ3を介して行う通信については中継サーバ3での中継処理を省略している。また、実施の形態1で説明した処理と同様の処理については同一の符号を付している。まず、実施の形態1で説明したステップS1からS6までの一連の処理が実行された後、図21に示すように、前述の位置情報送信時期が到来したとする。この場合、ステップS7からS12までの一連の処理が実行される。次に、クラウドサーバ3001が、利用者の帰宅時刻が番組の開始時刻よりも前であり且つ利用者の帰宅時刻から番組の開始時刻までの時間差ΔTが前述の第1時間差閾値ΔTth1よりも大きく且つ前述の第3時間差閾値ΔTth3以下であると判定したとする(ステップS3001)。この場合、クラウドサーバ3001が、前述の在庫状況要求情報を生成し(ステップS3002)、生成された在庫状況要求情報が、クラウドサーバ3001から冷蔵庫93へ送信される(ステップS3003)。一方、冷蔵庫93は、在庫状況要求情報を取得すると、撮像部により庫内を撮像し、撮像部により撮像して得られた撮像画像を示す画像情報を含む在庫状況情報を生成する(ステップS3004)。続いて、生成された在庫状況情報が、冷蔵庫93からクラウドサーバ3001へ送信される(ステップS3005)。
一方、クラウドサーバ3001が、在庫状況情報を取得すると、取得した在庫状況情報が、クラウドサーバ3001から端末装置3005A、3005Bへ送信される(ステップS3006)。一方、端末装置3005A、3005Bは、それぞれ、在庫状況情報を取得すると、取得した在庫状況情報に含まれる画像情報を抽出して撮像画像記憶部522に記憶させる。そして、端末装置3005A、3005Bは、それぞれ、撮像画像記憶部522が記憶する画像情報を用いて冷蔵庫93の在庫状況を表す在庫状況通知画像を生成し、生成した在庫状況通知画像を表示部504に表示させる(ステップS3007)。
次に、本実施の形態に係るクラウドサーバ3001が実行する情報提供処理について図22を参照しながら説明する。なお、図22において、実施の形態1と同様の処理については、図12および図13と同一の符号を付している。まず、ステップS101およびS106の一連の処理が実行された後、通知判定部3116は、利用者の帰宅時刻Treが番組の開始時刻Tstよりも前であり且つ利用者の帰宅時刻Treから番組の開始時刻Tstまでの時間差ΔTが前述の第1時間差閾値ΔTth1以下であり且つ前述の第2時間差閾値ΔTth2よりも大きいか否かを判定する(ステップS107)。ここで、通知判定部3116が、帰宅時刻Treが番組の開始時刻Tstよりも前であり且つ時間差ΔTが前述の第1時間差閾値ΔTth1よりも大きいと判定したとする(ステップS107:No)。この場合、通知判定部3116は、帰宅時刻Treが番組の開始時刻Tstよりも前であり且つ時間差ΔTが前述の第1時間差閾値ΔTth1よりも大きく且つ前述の第3時間差閾値ΔTth3以下であるか否かを判定する(ステップS3101)。ここで、通知判定部3116が、時間差ΔTが前述の第3時間差閾値ΔTth3よりも大きいと判定すると(ステップS3101:No)、ステップS113以降の処理が実行される。
一方、通知判定部3116が、時間差ΔTが前述の第1時間差閾値ΔTth1よりも大きく且つ前述の第3時間差閾値ΔTth3以下であると判定したとする(ステップS3101:Yes)。この場合、在庫状況通知部3122は、冷蔵庫93に対して前述の在庫状況情報の送信を要求する在庫状況要求情報を生成して冷蔵庫93へ送信することにより(ステップS3102)、冷蔵庫93から送信される在庫状況情報を取得する(ステップS3103)。次に、在庫状況通知部3122は、取得した在庫状況情報を、予め設定された送信先の端末装置3005A、3005Bへ送信する(ステップS3104)。続いて、ステップS113以降の処理が実行される。
以上説明したように、本実施の形態に係るクラウドサーバ3001では、通知判定部3116が、利用者の帰宅時刻が番組の開始時刻よりも前であり且つ帰宅時刻から番組の開始時刻までの時間差が前述の第1時間差閾値よりも大きく且つ前述の第3時間差閾値以下である場合、冷蔵庫93の在庫状況を示す在庫状況情報を端末装置3005A、3005Bへ送信すると判定する。そして、在庫状況通知部3122は、冷蔵庫内の在庫状況を示す在庫状況情報を端末装置3005A、3005Bへ送信する。これにより、利用者が番組の開始時刻まで未だ時間があり、例えば近所のスーパーマーケットに立ち寄って買い物を行う場合に冷蔵庫93の在庫状況を確認することができるので、利用者が不要な買い物をしてしまうことを抑制できる。
(実施の形態4)
本実施の形態に係る情報提供装置は、推定部により推定された利用者の帰宅時刻を示す帰宅時刻情報を利用者の所持する端末装置へ送信する帰宅時刻通知部を備えており、番組通知部を備えていない点で実施の形態1に係る情報提供装置と相違する。
本実施の形態に係る情報提供システムは、図23に示すように、建物Hに設置されたテレビ受信機91、録画装置92、冷蔵庫93、炊飯器94および給湯機95と、クラウドサーバ4001と、位置管理サーバ2と、中継サーバ3と、端末装置5と、を備える。なお、図23において、実施の形態1と同様の構成については図1と同一の符号を付している。テレビ受信機91と録画装置92と冷蔵庫93と炊飯器94と給湯機95とは、それぞれ、局所ネットワークNW2、広域ネットワークNW1を介してクラウドサーバ4001と通信可能である。録画装置92、冷蔵庫93、炊飯器94および給湯機95は、それぞれ、クラウドサーバ4001から送信される制御情報に基づいて動作する。
本実施の形態に係る端末装置4005のハードウェア構成は、図2に示す実施の形態1に係る端末装置5のハードウェア構成と同様である。また、クラウドサーバ4001のハードウェア構成は、図2に示す実施の形態1に係るクラウドサーバ1のハードウェア構成と同様である。以下、本実施の形態に係る端末装置4005、クラウドサーバ4001のハードウェア構成については、実施の形態1の説明で用いた符号と同一の符号を用いて説明する。端末装置4005のCPU501は、補助記憶部503が記憶するプログラムを主記憶部502に読み出して実行することにより、図24に示すように、受付部511、表示制御部4512、測位部513、位置情報通知部514、帰宅時刻取得部4518、操作情報生成部4516および操作情報送信部517として機能する。なお、図24において実施の形態1と同様の構成については図3と同一の符号を付している。また、補助記憶部503は、画像記憶部531を有し、主記憶部502は、位置記憶部521を有する。
操作情報生成部4516は、受付部511から、クラウドサーバ1に対して録画装置92、冷蔵庫93、炊飯器94および給湯機95を動作させるための操作内容を示す情報が通知されると、録画装置92、冷蔵庫93、炊飯器94および給湯機95の動作させるための操作内容を示す操作情報を生成する。そして、操作情報生成部4516が、生成した操作情報を操作情報送信部517に通知し、操作情報送信部517は、通知される操作情報を、中継サーバ3を介してクラウドサーバ1へ送信する。帰宅時刻取得部4518は、クラウドサーバ4001から送信される後述の帰宅時刻情報を取得すると、取得した帰宅時刻情報を表示制御部4512に通知する。表示制御部4512は、帰宅時刻取得部4518から帰宅時刻情報が通知されると、通知された帰宅時刻情報が示す帰宅時刻を示す帰宅時刻通知画像を生成し、生成した帰宅時刻通知画像を表示部504に表示させる。
クラウドサーバ4001のCPU101は、補助記憶部103が記憶するプログラムを主記憶部102に読み出して実行することにより、図25に示すように、位置情報取得部111、場所特定部112、移動状況判別部113、帰宅通知部114、推定部115、帰宅時刻通知部4118および機器制御部4120として機能する。なお、図25において実施の形態1と同様の構成については図4と同一の符号を付している。また、補助記憶部103は、位置記憶部131と、場所記憶部132と、移動状況記憶部133と、モデル記憶部135を有する。帰宅時刻通知部4118は、推定部115により推定された利用者の帰宅時刻を示す帰宅時刻情報を生成し、生成した帰宅時刻情報を端末装置5へ送信する。
機器制御部4120は、端末装置5から送信された操作情報を取得すると、取得した操作情報に基づいて、録画装置92、冷蔵庫93、炊飯器94または給湯機95を動作させるための制御情報を生成する。そして、機器制御部4120は、生成した制御情報を録画装置92、冷蔵庫93、炊飯器94または給湯機95へ送信する。
次に、本実施の形態に係るクラウドサーバ4001が実行する情報提供処理について図26を参照しながら説明する。なお、図26において、実施の形態1と同様の処理については、図12および図13と同一の符号を付している。まず、ステップS101およびS102の一連の処理が実行された後、移動状況判別部113は、生成した移動状況情報に基づいて、利用者が立ち寄り場所に到着したか否かを判定する(ステップS103)。ここで、移動状況判別部113により利用者が立ち寄り場所に到着したと判定されると(ステップS103:Yes)、推定部115は、実施の形態1で説明したように、経路推定モデルを用いて、利用者の移動経路を推定する(ステップS104)。次に、推定部115は、実施の形態1で説明したように、帰宅時刻推定モデルを用いて、利用者の帰宅時刻を推定する(ステップS105)。続いて、帰宅時刻通知部4118は、推定部115により推定された利用者の帰宅時刻を示す帰宅時刻情報を生成し、生成した帰宅時刻情報を端末装置4005へ送信する(ステップS4101)。その後、機器制御部4120は、端末装置4005から送信された操作情報を取得したか否かを判定する(ステップS4102)。ここで、機器制御部4120は、端末装置5から送信された操作情報を取得したと判定すると(ステップS4102:Yes)、取得した操作情報に基づいて、録画装置92、冷蔵庫93、炊飯器94または給湯機95を動作させるための制御情報を生成し、生成した制御情報を録画装置92、冷蔵庫93、炊飯器94または給湯機95へ送信する(ステップS4103)。その後、ステップS113からS116までの一連の処理が実行される。次に、ステップS119からS122までの一連の処理が実行される。
以上説明したように、本実施の形態に係るクラウドサーバ4001では、帰宅時刻通知部4118は、推定部115により推定された利用者の帰宅時刻を示す帰宅時刻情報を生成し、生成した帰宅時刻情報を端末装置4005へ送信する。また、機器制御部4120は、端末装置4005から送信された操作情報を取得すると、取得した操作情報に基づいて、録画装置92、冷蔵庫93、炊飯器94または給湯機95を動作させるための制御情報を生成して、録画装置92、冷蔵庫93、炊飯器94または給湯機95へ送信する。これにより、利用者は、端末装置5が取得した帰宅時刻情報が示す帰宅時刻を参照して、帰宅時刻に応じて、録画装置92、冷蔵庫93、炊飯器94または給湯機95を動作させることができるので、例えば録画装置92、冷蔵庫93、炊飯器94または給湯機95を、利用者の帰宅時において利用者にとって最適な状態で動作させることができる。
以上、本開示の各実施の形態について説明したが、本開示は前述の各実施の形態によって限定されるものではない。例えば経路推定モデルが、利用者が立ち寄った立ち寄り場所の場所情報と利用者が立ち寄り場所に立ち寄った日の曜日を示す曜日情報と、利用者が立ち寄り場所に立ち寄った日の気象条件と、から、移動経路を推定するものであってもよい。また、帰宅時刻推定モデルが、推定された利用者の移動経路に含まれる場所情報と、移動経路に含まれる少なくとも1つの立ち寄り場所における利用者の滞在時期を示す滞在時期情報と、利用者が移動経路を移動する日の曜日を示す曜日情報と、利用者が立ち寄り場所に立ち寄った日の気象条件と、から、利用者が帰宅する帰宅時刻を推定するものであってもよい。更に、帰宅時刻番組推定モデルが、推定された利用者の移動経路に含まれる場所情報と、移動経路に含まれる少なくとも1つの立ち寄り場所における利用者の滞在時期を示す滞在時期情報と、利用者が移動経路を移動する日の曜日を示す曜日情報と、利用者が立ち寄り場所に立ち寄った日の気象条件と、から、利用者が帰宅する帰宅時刻と利用者が嗜好する少なくとも1つの番組の番組種別と同一の番組種別に属する番組とを推定するものであってもよい。
本構成によれば、利用者が立ち寄り場所に立ち寄った日の気象条件を考慮して、移動経路、帰宅時刻および帰宅時刻と利用者が嗜好する番組との組合せが推定される。従って、利用者の移動経路、帰宅時刻および帰宅時刻と利用者が嗜好する番組との組合せの推定精度を高めることができる。
各実施の形態において、モデル生成部121、2121は、帰宅時刻推定モデルまたは帰宅時刻番組推定モデルの生成に使用する教師データから、過去の場所情報および滞在時期情報と、過去の帰宅時刻情報と、の一部を除外してもよいし、教師データとして使用していなかった過去の場所情報および滞在時期情報と、過去の帰宅時刻情報と、を教師データに追加してもよい。また、モデル生成部121、2121が、利用者が帰宅する毎に、強化学習により新たな帰宅時刻推定モデルまたは帰宅時刻番組推定モデルを生成していくものであってもよい。
各実施の形態では、推定部115、2115とモデル生成部121、2121とモデル記憶部135、2135とが同一のクラウドサーバ1、2001、3001、4001において実現する例について説明したが、これに限らず、例えばモデル生成部121、2121およびモデル記憶部135、2135が、推定部115、2115とは別の装置において実現されているものであってもよい。
各実施の形態では、帰宅時刻推定モデル、帰宅時刻番組推定モデルが、順伝播型のニューラルネットワークである例について説明したが、これに限らず、例えば多クラス分類型のサポートベクターマシンであってもよい。
また、本開示に係るクラウドサーバ1、2001、3001、4001および端末装置5、3005A、3005B、4005の各種機能は、ソフトウェア、ファームウェア、またはソフトウェアとファームウェアとの組み合わせにより実現されてもよい。この場合、ソフトウェアまたはファームウェアは、プログラムとして記述され、プログラムを、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory)、DVD(Digital Versatile Disc)およびMO(Magneto-Optical Disc)等のコンピュータ読み取り可能な記録媒体に格納して配布し、そのプログラムをコンピュータに読み込んでインストールすることにより、前述の各機能を実現することができるコンピュータを構成してもよい。そして、各機能をOS(Operating System)とアプリケーションとの分担、またはOSとアプリケーションとの協同により実現する場合等には、OS以外の部分のみを記録媒体に格納してもよい。
さらに、搬送波に各プログラムを重畳し、ネットワークを介して配信することも可能である。例えば、ネットワーク上の掲示板(BBS,Bulletin Board System)に当該プログラムを掲示し、ネットワークを介して当該プログラムを配信してもよい。そして、これらのプログラムを起動し、OSの制御下で、他のアプリケーションプログラムと同様に実行することにより、前述の処理を実行できるように構成してもよい。