本発明の実施の形態に係る操作履歴利用システムは、少なくとも1つの機器から送信される操作履歴データを管理する操作履歴管理装置と、前記操作履歴管理装置が管理する操作履歴データに基づいてユーザに応じた前記機器の動作制御を行うサービス提供装置とが接続される操作履歴利用システムであって、前記操作履歴管理装置は、前記機器から送信された操作履歴データから所定の時間的条件を満たす操作の系列である頻出操作パターンを抽出するパターン抽出手段と、前記頻出操作パターンの中で、あらかじめ定義された操作者に対応付けられた決定的操作を含む頻出操作パターンである第1の頻出操作パターン以外の頻出操作パターンである第2の頻出操作パターンの操作者を、前記機器から過去に送信された操作履歴データから得られる前記第1の頻出操作パターンに対する統計的な発生の連鎖頻度を算出し、頻出操作パターンの操作者として推定するパターン分類手段と、前記機器から新たに送信された操作履歴データの操作系列が前記頻出操作パターンに一致するか否かを監視するパターン監視手段とを備え、前記サービス提供装置は、前記パターン監視手段による監視の結果、前記機器から新たに送信された操作履歴データの操作系列が前記頻出操作パターンの少なくとも一部に一致した場合、当該頻出操作パターンおよび当該頻出操作パターンの操作者に基づいて、操作者であるユーザに応じた前記機器の動作制御の内容を決定するサービス決定手段を備えることを特徴とする。
これによって、個々の機器の操作履歴データなどを収集し、それらの操作履歴データを一元的に管理し、認証デバイス等の直接的にユーザを識別するための手段を備えることなく、頻出する頻出操作パターンがどのユーザによって操作されたものであるかを推定することできる。また、このようにユーザを推定することによって、そのユーザに応じた機器の動作制御を行うなどユーザに対応したきめ細やかなサービスを提供することができる。
また、本発明の実施の形態に係る操作履歴利用システムは、少なくとも1つの機器から送信される操作履歴データを管理する操作履歴管理装置と、前記操作履歴管理装置が管理する操作履歴データに基づいてユーザに応じた前記機器の動作制御を行うサービス提供装置とが接続される操作履歴利用システムであって、前記操作履歴管理装置は、前記機器から送信された操作履歴データから所定の時間的条件を満たす操作の系列である頻出操作パターンを抽出するパターン抽出手段と、前記機器から新たに送信された操作履歴データの操作系列が前記頻出操作パターンに一致するか否かを監視するパターン監視手段と、前記機器から新たに送信された操作履歴データに含まれる前記頻出操作パターンの中で、あらかじめ定義された操作者に対応付けられた決定的操作を含む頻出操作パターンである第1の頻出操作パターン以外の頻出操作パターンである第2の頻出操作パターンの操作者を、前記第1の頻出操作パターンと前記第1の頻出操作パターンに引き続いて発生する前記第2の頻出操作パターンとの隣接度合いを算出し、頻出操作パターンの操作者として推定するパターン分類手段とを備え、前記サービス提供装置は、前記パターン監視手段による監視の結果、前記機器から新たに送信された操作履歴データの操作系列が前記頻出操作パターンの少なくとも一部に一致した場合、当該頻出操作パターンおよび当該頻出操作パターンの操作者に基づいて、操作者であるユーザに応じた前記機器の動作制御の内容を決定するサービス決定手段を備えることを特徴とする。
これによって、上記同様に認証デバイス等の直接的にユーザを識別するための手段を備えることなく、頻出する頻出操作パターンがどのユーザによって操作されたものであるかを推定することできる。また、このようにユーザを推定することによって、そのユーザに応じた機器の動作制御を行うなどユーザに対応したきめ細やかなサービスを提供することができる。
また、本発明の実施の形態に係る操作履歴利用システムは、少なくとも1つの機器と、前記機器から送信される操作履歴データを管理する操作履歴管理装置と、前記操作履歴管理装置が管理する操作履歴データに基づいてユーザに応じた前記機器の動作制御を行うサービス提供装置とが接続される操作履歴利用システムであって、前記操作履歴管理装置は、前記機器は機器を操作するための操作内容と操作日時に関する情報を対応付けした操作履歴データを送信し、前記機器から送信された操作履歴データから所定の時間的条件を満たす操作の系列である頻出操作パターンを抽出するパターン抽出手段と、前記パターン抽出手段により抽出された頻出操作パターンの中に、操作者に対応付けられた決定的操作を操作者の確信度と併せてあらかじめ定義された頻出操作パターンである第1の頻出操作パターンが存在するか否かを確認し、前記第1の頻出操作パターンが複数存在し、各決定的操作に対応付けられた操作者が異なる場合、前記操作者の確信度に応じて頻出操作パターンの操作者として決定するパターン分類手段と、前記機器から新たに送信された操作履歴データの操作系列が前記頻出操作パターンに一致するか否かを監視するパターン監視手段とを備え、前記サービス提供装置は、前記パターン監視手段による監視の結果、前記機器から新たに送信された操作履歴データの操作系列が前記頻出操作パターンの少なくとも一部に一致した場合、当該頻出操作パターンおよび当該頻出操作パターンの操作者に基づいて、操作者であるユーザに応じた前記機器の動作制御の内容を決定するサービス決定手段を備えることを特徴とする。
これによって、上記同様に認証デバイス等の直接的にユーザを識別するための手段を備えることなく、頻出する頻出操作パターンがどのユーザによって操作されたものであるかを推定することできる。また、このようにユーザを推定することによって、そのユーザに応じた機器の動作制御を行うなどユーザに対応したきめ細やかなサービスを提供することができる。
また、本発明の実施の形態に係る操作履歴利用システムは、少なくとも1つの機器と、前記機器から送信される操作履歴データを管理する操作履歴管理装置と、前記操作履歴管理装置が管理する操作履歴データに基づいてユーザ行動に応じたサービスを決定し、決定したサービスを機器に対して提供するサービス提供装置とが接続される操作履歴利用システムであって、前記操作履歴管理装置は、前記機器から送信された操作履歴データから頻出操作パターンを抽出するパターン抽出手段と、前記機器から新たに送信された操作履歴データの操作系列が前記頻出操作パターンに一致するか否かを監視するパターン監視手段とを備え、前記サービス提供装置は、前記パターン監視手段による監視結果および前記頻出操作パターンに基づいて、ユーザ行動に応じたサービスを決定するサービス決定手段と、前記サービス決定手段が決定したサービスが複数存在し、かつ前記複数のサービスを同時に提供することが可能であるか否かを判別し、判別の結果、前記複数のサービスを同時に提供することが不可能である場合に前記複数のサービスの中から提供するサービスを選択するサービス選択手段とを備えることを特徴とする。
これによって、提供しようとするサービスの候補が複数存在し、それらを同時に提供することが不可能な場合においても、適切なサービスを選択して提供することが可能となる。
ここで、前記サービス選択手段は、あらかじめ定義されているユーザの優先順位に基づいてサービスを選択してもよい。
また、前記サービス選択手段は、あらかじめ定義されている操作の優先順位に基づいてサービスを選択してもよい。
また、前記サービス選択手段は、あらかじめ定義されているユーザの配分確率に基づいてサービスを選択してもよい。
また、前記サービス選択手段は、あらかじめ定義されている操作の配分確率に基づいてサービスを選択してもよい。
また、本発明の実施の形態に係る操作履歴利用システムは、少なくとも1つの機器と、前記機器から送信される操作履歴データを管理する操作履歴管理装置と、前記操作履歴管理装置が管理する操作履歴データに基づいてユーザ行動に応じたサービスを決定し、決定したサービスを機器に対して提供するサービス提供装置とが接続される操作履歴利用システムであって、前記操作履歴管理装置は、前記機器から送信された操作履歴データから頻出操作パターンを抽出するパターン抽出手段と、前記機器から新たに送信された操作履歴データの操作系列が前記頻出操作パターンに一致するか否かを監視するパターン監視手段と、前記パターン監視手段による監視結果に基づいて、ユーザの意図しない操作と予想される操作について確認または修正を行う操作確認手段とを備えることを特徴とする。
これによって、頻出操作パターンから一部外れる操作を検出し、その操作について操作者に警告を発する、その操作を中断する、あるいは頻出操作パターンから予想される代替操作を実行する等、その操作について確認または修正を行うことにより、操作者の誤操作や意図しない操作を防ぐことが可能となる。
ここで、前記操作確認手段は、前記パターン監視手段による監視結果、前記機器から新たに送信された操作履歴データの操作系列が前記頻出操作パターンに部分的に一致する場合には、前記操作履歴データの操作系列の中で、前記部分的に一致した頻出操作パターンと一致しなかった操作を、ユーザの意図しない操作と予想してもよい。
また、本発明の実施の形態に係るサービス提供装置は、少なくとも1つの機器の操作履歴データを管理する操作履歴管理装置から受け取る情報に基づいて、ユーザ行動に応じたサービスを決定するサービス決定手段と、前記サービス決定手段が決定したサービスが複数存在し、かつ前記複数のサービスを同時に提供することが可能であるか否かを判別し、判別の結果、前記複数のサービスを同時に提供することが不可能である場合に前記複数のサービスの中から提供するサービスを選択するサービス選択手段と、前記サービス選択手段が選択したサービスを機器に対して提供するサービス出力手段とを備えることを特徴とする。
これによって、提供しようとするサービスの候補が複数存在し、それらを同時に提供することが不可能な場合においても、適切なサービスを選択して提供することが可能となる。
また、本発明の実施の形態に係る操作履歴管理装置は、少なくとも1つの機器から送信される操作履歴データを管理する操作履歴管理装置であって、前記機器から送信された操作履歴データから頻出操作パターンを抽出するパターン抽出手段と、前記機器から新たに送信された操作履歴データの操作系列が前記頻出操作パターンに一致するか否かを監視するパターン監視手段と、前記パターン監視手段による監視結果に基づいて、ユーザの意図しない操作と予想される操作について確認または修正を行う操作確認手段とを備えることを特徴とする。
これによって、頻出操作パターンから一部外れる操作を検出し、その操作について操作者に警告を発する、その操作を中断する、あるいは頻出操作パターンから予想される代替操作を実行する等、その操作について確認または修正を行うことにより、操作者の誤操作や意図しない操作を防ぐことが可能となる。
なお、本発明は、このような操作履歴利用システム、操作履歴管理装置、およびサービス提供装置として実現することができるだけでなく、このような操作履歴利用システム、操作履歴管理装置、またはサービス提供装置が備える特徴的な手段をステップとする操作履歴利用方法、操作履歴管理方法、またはサービス提供方法として実現したり、それらのステップをコンピュータに実行させるプログラムとして実現したりすることもできる。そして、そのようなプログラムは、CD−ROM等の記録媒体やインターネット等の伝送媒体を介して配信することができるのは言うまでもない。
以下、本発明の第1〜第6の実施の形態について、それぞれ図面を参照しながら説明する。
(第1の実施の形態)
図1は、本発明の第1の実施の形態に係る操作履歴利用システムの構成を示すブロック図である。
操作履歴利用システムは、ネットワークを介して接続された家電機器等の機器(図示しない)の操作履歴データを受信し、この操作履歴データ等に基づいて機器の制御および情報の提供を行うなどのサービスを提供するためのシステムであり、大きくは図1に示すようにユーザエージェント部202、サービスコンシェルジェ部203、およびネットワークIF410を備えている。
ユーザエージェント部202は、ユーザの操作履歴データを受信し頻出操作パターンを抽出、保持すると共に、頻出操作パターンがどのユーザの操作によるものかを推定するものであり、操作履歴受信部401、操作履歴データベース402、操作履歴登録部403、パターン抽出部404、パターンデータベース405、パターン監視部406、およびパターン分類部601を備えている。
操作履歴受信部401は、ネットワークを介して接続された機器で行われた操作等の操作履歴データを受信する。なお、この機器で行われる操作は、機器本体で操作されてもよいし、例えばリモコン等により機器本体以外で操作されても構わない。操作履歴登録部403は、操作履歴受信部401で受信した操作履歴データを操作履歴データベース402に登録する。操作履歴データベース402は、操作履歴データを記憶する。パターン抽出部404は、操作履歴データベース402に登録されている操作履歴データから所定の条件を満たす履歴の頻出操作パターンを抽出する。パターンデータベース405は、パターン抽出部404で抽出された操作履歴の頻出操作パターンを記憶する。パターン監視部406は、操作履歴データベース402に登録されている操作履歴データ又は操作履歴登録部403が新たに登録する操作履歴データから、パターンデータベース405で登録されている頻出操作パターンと一致するものを監視する。パターン分類部601は、パターンデータベース405に記憶された操作履歴の頻出操作パターンの操作者を特定する。
一方、サービスコンシェルジェ部203は、ユーザエージェント部202に記憶されているユーザに関する情報、具体的にはユーザの操作履歴データや頻出操作パターンに基づいて、機器制御および情報提供を行うなどのサービスを提供するものであり、サービス決定部501、およびサービス出力部502を備えている。
サービス決定部501は、ネットワークを介して接続された機器への機器制御、情報提供など提供するサービス内容を推定する。サービス出力部502は、サービス決定部501で推定されたサービスを、このサービスに対応する機器へ出力する。
次に、上記のように構成された操作履歴利用システムの動作について説明する。
本実施の形態では、頻出操作パターンのユーザ特定を行うが、それに先だってまず頻出する頻出操作パターンを抽出する。図2は操作履歴データを登録する際の動作の流れを示すフローチャートであり、図3は操作履歴データに用いる操作種ごとに定義された操作種別識別子の一例を示す図であり、図4は操作履歴データベース402に記録されるデータ例を示す図である。
操作履歴受信部401は、操作履歴データを受信したか否かを確認する(ステップS101)。ここで操作履歴データを受信していない場合には、操作履歴受信部401は操作履歴データを受信したか否かの確認を所定の周期で継続する。一方、操作履歴データを受信した場合には、操作履歴受信部401は、操作履歴データを受信した旨を操作履歴登録部403へ通知する(ステップS102)。ここで、操作履歴受信部401が受信する操作履歴データは、例えば図3に示すような操作種ごとに定義された操作種別識別子と、操作日時とであり、必要な場合には操作の詳細を示す引数などを伴った形式となる。
操作履歴登録部403は、操作履歴受信部401で受信した操作履歴データを取り出し、操作履歴データベース402に登録する(ステップS103)。操作履歴データベース402には、例えば図4に示すように受信した操作履歴データが操作日時の順に記憶される。
次に、このように操作履歴データベース402に登録された操作履歴データより頻出操作パターンを抽出する。図5は、頻出操作パターンを抽出する際の動作の流れを示すフローチャートである。
パターン抽出部404は、パターン抽出の指示があったか否かを確認する(ステップS201)。このパターン抽出の指示としては、例えばシステムの内部で定期的に発生する操作履歴パターンの抽出更新命令、あるいはシステム外部からの問い合わせ受信等を用いることができる。上記確認の結果、パターン抽出の指示がなかった場合には、パターン抽出部404はパターン抽出の指示があったか否かの確認を所定の周期で継続する。
一方、パターン抽出の指示があった場合には、パターン抽出部404は操作履歴データベース402に登録されている操作履歴データを参照し、操作日時について所定の条件で操作履歴データをグループに分類する。操作履歴データベース402には、上記のように図4に示すようなデータが登録されている。この登録データを操作日時でソートし、隣接するデータ同士の間隔が所定時間以下のデータは同じグループとして分類する。例えば、隣接データ同士の間隔を5分以下という条件とすると、図4に示す例ではグループ1001から1005に示されるような5つのグループに分類することができる。
このように分類されたグループは、それぞれ図6に示すような操作系列を含むことになる。このような1つのグループに属する操作系列群をエピソードと呼ぶ。なお、1つのエピソードにおける操作系列の発生順序は考慮してもしなくてもよいが、ここでは考慮しないものとして説明する。また、ここではグループの分類にあたり、隣接するデータ同士の時間間隔が所定時間以下の場合について説明したが、簡便な方法として所定時間間隔でグループに分類する方法であっても構わない。例えば時間間隔は10分とし、毎正時から10分まで、10分から20分まで、20分から30分まで(以下同様)のようにグループ分けしていく方法である。
次に、パターン抽出部404は、上記のように分類したエピソード間で共起する操作系列が存在するか否かを確認する(ステップS202)。すなわち、パターン抽出部404は、エピソード間で同一な操作系列又は部分的に一致する操作系列がするか否かを確認する(ステップS203)。ここで、同一又は部分的に一致する操作系列が存在しない場合、パターン抽出部404は処理を終了する。
一方、同一又は部分的に一致する操作系列が存在すれば、パターン抽出部404は、その操作系列を頻出操作パターンとして抽出する(ステップS204)。例えば、図6に示す例ではエピソード1001およびエピソード1004は、両方とも「PowerOn,Opr1,Opr4」であり、エピソードは完全に一致する。また、エピソード1003とエピソード1005とは、「PowerOff,Opr2」の部分は一致する。したがって、一致する2つのエピソード又はエピソードの一部は、頻出する操作系列のパターンとしてパターンデータベース405に登録する候補となる。なお、ここでエピソード間の一致や部分一致を判定する条件として、少なくともエピソードを構成する要素の2つ以上の所定の数以上が一致するものとする。
次に、パターン抽出部404は、抽出した頻出操作パターンが既にパターンデータベース405に登録されているパターンであるか否かを確認する(ステップS205)。登録済みの場合、パターン抽出部404は処理を終了する。一方、未登録の場合、パターン抽出部404は抽出した頻出操作パターンをパターンデータベース405に登録する(ステップS206)。このようにパターンデータベース405には、例えば図7に示すような頻出操作パターンが登録される。
例えば、図7に示すNo.1のデータは、「機器の電源を入れたら、操作1と操作4を行う」という行為が定型化したパターンであることを示しており、同様にNo.2のデータは「操作2の後には電源を消す」というパターンであることを示している。また、No.3からNo.5についても上記同様の手順で抽出され、パターンデータベース405に登録される。
次に、パターン分類部601における、頻出操作パターンの操作を行ったユーザの特定について説明する。ユーザの特定にあたっては、あらかじめユーザ毎に決定的操作を定義する。
図8は決定的操作の定義の一例を示す図である。決定的操作とは、ある操作についてその行為者が必ず特定のユーザであるような操作のことを意味し、「この操作をするのは必ずユーザXである」という操作である。図8に示す例では、Opr5を行うのは必ずユーザAであり、電源を切るのは必ずユーザCである、ということを示している。なお、この決定的操作は、ある操作に対して必ず実行しているユーザではなく、高い確率で実行しているユーザと関係づけても良い。この場合、例えば図11に示すようにその確率に応じた確信度も併せて管理しておくことが望ましい。
図9は、頻出操作パターンがどのユーザによって操作されたものであるかを特定する際の動作の流れを示すフローチャートである。ここでは、図8に示すように決定的操作の定義が行われているものとする。
パターン分類部601は、パターンデータベース405に登録されている頻出操作パターンの中で、図8で示した決定的操作を含む頻出操作パターンがあるか否かを確認する(ステップS301)。ここで、決定的操作を含む頻出操作パターンが存在しなければ、パターン分類部601は処理を終了する。一方、決定的操作を含む頻出操作パターンが存在する場合、パターン分類部601はその頻出操作パターンを該当する決定的操作に対応するユーザによる操作であると定義し、パターンデータベース405に登録する(ステップS302)。
例えば、パターンデータベース405に図7に示すような頻出操作パターンが登録されている場合、図8に示す決定的操作を参照すると、No.2の頻出操作パターンは「PowerOff」を含んでいるので、図8よりユーザCの操作と定義される。同様にNo.1の頻出操作パターンは「Opr1」を含んでいるのでユーザD、No.3の頻出操作パターンは「Opr3」を含んでいるのでユーザB、No.6の頻出操作パターンは「Opr5」を含んでいるのでユーザAの操作と定義される。これらの頻出操作パターンNo.1、2、3、6については決定的操作そのものを含み、レベル1の頻出操作パターンと呼ぶ。なお、1つの頻出操作パターンに対して複数の決定的操作が含まれ、この複数の決定的操作に対応するユーザが異なる場合、例えば図11に示すような確信度に応じて頻出操作パターンの操作者を定義すればよい。
次に、パターン分類部601は、パターンデータベース405に登録されている頻出操作パターンの中で、上記のレベル1の頻出操作パターンに分類されなかった残りの頻出操作パターンのうち、レベル1の頻出操作パターンに続いて発生する頻出操作パターンがあるか否かを確認する(ステップS303)。ここで、レベル1の頻出操作パターンに続いて発生する頻出操作パターンが存在しなければ、パターン分類部601は処理を終了する。一方、レベル1の頻出操作パターンに続いて発生する頻出操作パターンが存在する場合、パターン分類部601はその発生頻度に応じて操作者を確信度付きで定義し、パターンデータベース405に登録する(ステップS304)。すなわち、パターン分類部601は、操作履歴データベース402およびパターンデータベース405を参照して、この頻出操作パターンが、レベル1のどの頻出操作パターンに引き続いて発生するか、レベル1以外の頻出操作パターンや抽出された頻出操作パターン以外の操作系列に続いて発生するか等の発生頻度を検索する。そして、パターン分類部601は、レベル1の頻出操作パターンに引き続いて発生する頻度に応じて、操作者を確信度付きで定義する。
例えば、No.4の頻出操作パターンが、No.1の頻出操作パターン(レベル1)に引き続いて発生する場合が60%、No.3の頻出操作パターン(レベル1)に引き続いて発生する場合が15%、レベル1以外の頻出操作パターンや、抽出された頻出操作パターン以外の操作系列に続いて発生する場合が25%であったとする。この場合、上記のようにNo.1の頻出操作パターンはユーザC、No.3の頻出操作パターンはユーザBと定義されているので、頻出操作パターンNo.4の操作者は、レベル1の頻出操作パターンからの発生の頻度に応じ、ユーザCの確信度が「0.6」、ユーザBの確信度が「0.15」 と定義される。この頻出操作パターンNo.4をレベル2の頻出操作パターンと呼ぶ。
次に、パターン分類部601は、パターンデータベース405に登録されている頻出操作パターンの中で、上記のレベル1、レベル2の頻出操作パターンに分類されなかった残りの頻出操作パターンのうち、レベル2の頻出操作パターンに続いて発生する頻出操作パターンがあるか否かを確認する(ステップS305)。ここで、レベル1の頻出操作パターンに続いて発生する頻出操作パターンが存在しなければ、パターン分類部601は処理を終了する。一方、レベル1の頻出操作パターンに続いて発生する頻出操作パターンが存在する場合、パターン分類部601はその発生頻度に応じて操作者を確信度付きで定義し、パターンデータベース405に登録する(ステップS306)。
例えば、操作履歴データベース402、パターンデータベース405を参照することにより、No.5の頻出操作パターンが、No.4の頻出操作パターン(レベル2)に引き続いて発生する場合が50%、レベル2以外の頻出操作パターンや、抽出された頻出操作パターン以外の操作系列に続いて発生する場合が50%であったとする。この場合、上記のようにNo.4の頻出操作パターンはユーザCの確信度が「0.6」、ユーザBの確信度が「0.15」と定義されているので、頻出操作パターンNo.5の操作者は、レベル2の頻出操作パターンの確信度、およびレベル2の頻出操作パターンからの発生の頻度を乗じ、ユーザCの確信度が「0.3」、ユーザBの確信度が「0.075」 と定義される。この頻出操作パターンNo.4をレベル2の頻出操作パターンと呼ぶ。
また、同様にレベル3、レベル4と同様の処理を再帰的に繰り返し、該当する頻出操作パターンが存在しなくなるまで継続する。このようにして頻出操作パターンは、図10に示すように操作者が推定されてパターンデータベース405に登録される。
このようにパターンデータベース405に登録された頻出操作パターンおよびその操作者の情報を利用すると、ユーザが行った操作の頻出操作パターンに応じたサービスを提供することが可能となる。この頻出操作パターンに応じたサービスとしては、受信した操作系列からパターンデータベース405に部分的に一致するものを探し出し、次に受信する操作を予測し、その予測された操作を先回りして機器制御のための信号を出力する、また受信した操作系列から操作しているユーザを推定し、ユーザに応じた情報を出力するなど、様々なものが考えられる。
例えば、ユーザエージェント部202およびサービスコンシェルジェ部203に、図12に示すようにネットワークIF410およびネットワークを介してデジタルTV(以下、単にテレビ又はTVという)101a、ビデオ101b、エアコン101c、照明器具101d、MDコンポ101e、およびPC(Personal Computer)101fなどの端末家電機器101が接続される操作履歴利用システムでは、サービスコンシェルジェ部203は次のようなサービスを提供することができる。
例えば、「テレビを消したらMDで音楽を聴く」という頻出操作パターンが登録されている場合、ユーザによりテレビが消されたことを検出すると、MDコンポの電源を自動的にオンにするなどのサービスの提供が可能となる。
また、例えば「テレビを消して、照明を少し暗くしたらMDで音楽を聴く」という頻出操作パターンの操作者がユーザA、「テレビを消して、照明をつけたらMDで音楽を聴く」という頻出操作パターンの操作者がユーザBと推定されてパターンデータベース405に登録されている場合を想定する。この場合、ユーザによりテレビが消されて、照明が少し暗くされたことを検出すると、MDコンポの電源を自動的にオンにし、あらかじめ登録されているユーザAの好みに合った曲を選択して再生するなどのサービスの提供が可能となる。一方、ユーザによりテレビが消されて、照明がつけられたことを検出すると、MDコンポの電源を自動的にオンにし、あらかじめ登録されているユーザBの好みに合った曲を選択して再生するなどのサービスの提供が可能となる。
さらに、例えば「テレビをつけたら、エアコンをつける」、「エアコンをつけたら、温度を27度に設定する」という頻出操作パターンの操作者がユーザA、「MDコンポをつけたら、エアコンをつける」、「エアコンをつけたら、温度を24度に設定する」という頻出操作パターンの操作者がユーザBと推定されてパターンデータベース405に登録されている場合を想定する。この場合、ユーザによりテレビがつけられたことを検出すると、エアコンの電源を自動的にオンにし、温度を27度に設定するなどのサービスの提供が可能となる。一方、ユーザによりMDコンポがつけられたことを検出すると、エアコンの電源を自動的にオンにし、温度を24度に設定するなどのサービスの提供が可能となる。
以上のように、本実施の形態では、受信した操作履歴データから頻出する頻出操作パターンを抽出、保持を行い、操作履歴データおよび決定的操作情報に基づいて、頻出する頻出操作パターンがどのユーザによって操作されたものであるかを推定することできる。
よって、認証デバイス等の直接的にユーザを識別するための手段を備えることなく、様々な履歴情報からサービスに活用するための情報を抽出するために不可欠な履歴がどのユーザのものであるのかを特定することができる。特に、複数のユーザが認証デバイスを用いずに同一の機器を利用することがまだまだ普通である家庭内においても、履歴がどのユーザのものであるのかを特定することができ、有用である。
また、このようにユーザを特定することによって、そのユーザに応じた情報を出力するなどユーザに対応したきめ細やかなサービスを提供することができる。
なお、本実施の形態では、ユーザエージェント部202とサービスコンシェルジェ部203とを備えた構成としたが、サービスコンシェルジェ部203は必ずしも必要ではなく、システム外部に存在し、ユーザエージェント部202はサービスコンシェルジェ部203がサービスを提供するのに必要なユーザの頻出操作パターンに関する情報を出力する構成としても構わない。例えば、図13に示すように図1に示すユーザエージェント部202の構成に加えて、サービスコンシェルジェ部203からのユーザ操作情報に関する問い合わせを受信する問い合わせ受信部407と、受信した問い合わせに対する応答を作成する応答作成部408と、作成された応答をサービスコンシェルジェ部203に出力する応答出力部409を備えた構成としても構わない。
また、本実施の形態では、機器の操作履歴データの受信、サービスの出力をネットワーク経由で行う場合のシステム構成となっているが、ネットワークIF410は必須の構成要件ではなく省略可能である。例えば、ネットワークIF410を省略した場合には、操作履歴受信部401は機器のリモコン操作信号を受信する、あるいは操作パネルからの直接操作を入力とし、サービス出力部502は表示パネルや別途設けたインタフェース部へ出力すればよい。
(第2の実施の形態)
本実施の形態では、第1の実施の形態とは別の方法によって、頻出操作パターンがどのユーザによって操作されたものであるかを特定する場合について説明する。
図14は、本発明の第2の実施の形態に係る操作履歴利用システムの構成を示すブロック図である。この操作履歴利用システムは、第1の実施の形態の構成と同様であり、異なるのは、パターン分類部601がサービス決定部501へ出力する点である。なお、第1の実施の形態と同様の部分については同じ符号を付し、詳細な説明を省略する。また、本実施の形態において、受信した操作履歴データから頻出操作パターンを抽出し、登録する方法は、第1の実施の形態において説明した方法と同一であるためここでは説明を省略する。
パターン分類部601における、頻出操作パターンの操作を行ったユーザの特定について説明する。ユーザの特定にあたっては、第1の実施の形態と同様にあらかじめユーザ毎に決定的操作を定義する。ここでは、第1の実施の形態と同様に図8に示すように決定的操作の定義が行われているものとする。
図16は、頻出操作パターンがどのユーザによって操作されたものであるかを特定する際の動作の流れを示すフローチャートである。
パターン分類部601は、操作履歴受信部401で受信している操作履歴データの操作系列中に、パターンデータベース405に登録されている頻出操作パターンであり、かつ図8で示した決定的操作を含む頻出操作パターンが存在するか否かを確認する(ステップS401)。ここで、該当する頻出操作パターンが存在しなければ、パターン分類部601は処理を終了する。一方、該当する頻出操作パターンが存在する場合、パターン分類部601は受信した操作系列の一致した部分を該当する決定的操作に対応するユーザによる操作であると定義し、パターンデータベース405に登録する(ステップS402)。
図15は操作履歴受信部401で受信した操作系列の一例を示した図である。ここで、操作履歴受信部401が図15(a)に示す操作系列を受信したとする。この場合、図15(b)に示すNo.1と記述した部分「PowerOn,Opr1,Opr4」が、図7で示した頻出操作パターンNo.1に相当する。このNo.1の頻出操作パターンは「Opr1」を含んでいるので、ユーザDの操作と定義される。これをレベル1の頻出操作パターンと呼び、確信度=1でユーザDの操作と推定される。なお、決定的操作を含む頻出操作パターンは確信度1で該当するユーザによる操作であるとしたが、あらかじめ定義された任意の確信度であってもよい。
次に、パターン分類部601は、操作履歴受信部401で受信した操作系列の中で、上記のレベル1の頻出操作パターンに隣接してパターンデータベース405に登録されている頻出操作パターンが出現するか否かを確認する(ステップS403)。ここで、隣接して頻出操作パターンが出現しなければ、パターン分類部601は処理を終了する。一方、隣接して頻出操作パターンが出現している場合、パターン分類部601は隣接して出現した頻出操作パターンの出現場所に応じて操作者を確信度付きで定義し、パターンデータベース405に登録する(ステップS404)。ここで、隣接するとは、隣り合うパターン同士が間に他の操作を挟んでいない、または隣り合うパターン同士の一部が重なり合うことを意味する。すなわち、パターン分類部601は、下記に示す式(A)を用いて確信度Conf(n)を求め、求めた確信度Conf(n)でレベル1の頻出操作パターンに対応する操作者が操作したものとして定義する。
ここで、d(i)は隣接するレベルiの頻出操作パターンとレベルi−1の頻出操作パターンの重なりで、重なっている操作の数を示す。図15の例ではd(2)=1である。隣接する頻出操作パターンの間に重なりがなくぴったり隣接している場合はd(i)=0、隣接する頻出操作パターンの間に他の操作が挟まれている場合は、挟まれている操作数に−1を乗じたものがd(i)と定義する。また、f(d(i))は0≦f(d(i))<1であり、0以上のd(i)の値に対して単調増加する。また0未満のd(i)に対してはf=0である。そしてαは定数である。またConf(1)は最初のレベル1の頻出操作パターンの確信度であり、Conf(1)=1である。
例えば、図15(b)に示す操作系列では、レベル1として検出されたNo.1の頻出操作パターンに隣接してNo.5の頻出操作パターンが出現している。ここでは、No.1の頻出操作パターンとNo.5の頻出操作パターンとで「Opr4」という操作が両者で重なり合っている。このNo.5の頻出操作パターンをレベル2の頻出操作パターンと呼ぶ。このとき、レベル2の頻出操作パターンの操作者は、上記式(A)で求められる確信度Conf(2)で、レベル1の頻出操作パターンの操作者であるユーザDであると推定される。
次に、パターン分類部601は、操作履歴受信部401で受信した操作系列の中で、上記のレベル2の頻出操作パターンに隣接してパターンデータベース405に登録されている頻出操作パターンが出現するか否かを確認する(ステップS405)。ここで、隣接して頻出操作パターンが出現しなければ、パターン分類部601は処理を終了する。一方、隣接して頻出操作パターンが出現している場合、パターン分類部601は、上記のレベル2の頻出操作パターンの場合と同様に、隣接して出現した頻出操作パターンの出現場所に応じて操作者を確信度付きで定義し、パターンデータベース405に登録する(ステップS406)。
例えば、図15(b)に示す操作系列では、レベル2として検出されたNo.5の頻出操作パターンに隣接してNo.4の頻出操作パターンが出現している。このとき、上記式(A)においてd(i)=0であり、このNo.4の頻出操作パターンをレベル3の頻出操作パターンと呼ぶ。このとき、レベル3の頻出操作パターンの操作者は、確信度Conf(3)でユーザDが操作者であると推定される。
以下、同様にレベルxの頻出操作パターンが存在するか否かについて順次確認し、該当する頻出操作パターンが見つからなくなるまで繰り返す。
上記式(A)で求められる操作者の確信度は、頻出操作パターンのレベルが上がれば上がるほど低下してゆくが、隣接するパターン同士の重なりが大きいほど低下の割合が低くなる、という特性を示している。
以上のように、本実施の形態では、パターンデータベース405に登録された頻出操作パターンを利用することにより、受信中の操作履歴データの操作系列がどのユーザによるものが動的に判断でき、システム外部からの問い合わせに対して、適宜応答することが可能となる。
よって、第1の実施の形態と同様に、認証デバイス等の直接的にユーザを識別するための手段を備えることなく、様々な履歴情報からサービスに活用するための情報を抽出するために不可欠な履歴がどのユーザのものであるのかを特定することができる。特に、複数のユーザが認証デバイスを用いずに同一の機器を利用することがまだまだ普通である家庭内においても、履歴がどのユーザのものであるのかを特定することができ、有用である。
また、このようにユーザを特定することによって、そのユーザに応じた情報を出力するなどユーザに対応したきめ細やかなサービスを提供することができる。
なお、本実施の形態は一例であって、操作系列がどのユーザによるものであるかを、決定的操作を含む頻出操作パターンの操作者として推定するものであって、その確信度が決定的操作を含む頻出操作パターンから連鎖する頻出操作パターンとの重なり度合いや頻出操作パターンからの距離に応じて決定されるものであればよい。
また、本実施の形態では、受信中の操作履歴データの操作系列がどのユーザによるものであるか推定する場合について説明したが、操作履歴データベース402に登録されている操作履歴データの操作系列であっても、同様にどのユーザによるものであるか推定することができる。
(第3の実施の形態)
図17は、本発明の第3の実施の形態に係る操作履歴利用システムの構成を示すブロック図である。この操作履歴利用システムは、第1の実施の形態の構成に加えてサービスコンシェルジェ部203にサービス優先度決定部602を備えており、その他の構成は第1の実施の形態と同様である。なお、本実施の形態では、受信したユーザの操作履歴データから頻出操作パターンを抽出し、パターンデータベース405に記憶している。また、この記憶された頻出操作パターンを利用して、現在受信している操作履歴データの操作系列からユーザの次の操作を予想し、それに応じた機器制御、情報提供などのサービスを提供する。以上の頻出操作パターンの抽出方法、およびサービスの提供方法については、第1および第2の実施の形態と同様であるのでここでは説明を省略する。
サービス優先度決定部602は、サービス決定部501によって提供されるサービスの全てを同時に提供することが不可能な場合に、優先度の高いサービスを選択する。また、サービス優先度決定部602には、あらかじめユーザおよび操作についてそれぞれ優先順位が定義されている。図18は定義されている優先順位の一例を示す図であり、(a)ユーザ毎の優先順位、(b)操作毎の優先順位を示す図である。
次に、このように構成された操作履歴利用システムにおいて、サービス決定部501によってユーザに提供するサービスが推定された後の動作について説明する。
図19は、推定されたサービスを提供する際の動作の流れを示すフローチャートである。
サービス決定部501は、パターンデータベース405に記憶されている頻出操作パターンを利用して、現在受信している操作系列からユーザの次の操作を予想し、それに応じた機器制御、情報提供などの提供するべきサービスを推定する(ステップS501)。次に、サービス優先度決定部602は、サービス決定部501によって推定されたサービスが何通り存在するかを確認し、それらのサービスを同時に提供することが可能であるか否かを判別する(ステップS502)。ここで、サービス決定部501によって推定されたサービスを同時に提供することが可能である場合には、サービス優先度決定部602はその旨をサービス出力部502へ通知する。そして、サービス出力部502は、サービス決定部501によって推定されたサービスを提供する(ステップS503)。
一方、サービス決定部501によって推定されたサービスを同時に提供することが不可能である場合には、サービス優先度決定部602は、図18に示すようなあらかじめ定義されている優先順位に基づいて、サービス決定部501によって推定されたサービスの中から優先度の高いサービスを選択し、選択したサービスをサービス出力部502へ通知する。そして、サービス出力部502は、サービス優先度決定部602によって選択されたサービスを提供する(ステップS504)。
例えば、図10に示すような頻出操作パターンと操作者との関係が抽出されているとする。ここで、操作履歴受信部401が「PowerOn、Opr1」と受信した場合、サービス決定部501は、図10に示す頻出操作パターンのうちNo.1の頻出操作パターンに部分的に一致することがパターン監視部406より通知される。この場合、サービス決定部501は、パターンデータベース405に登録された頻出操作パターンと操作者との関係より、No.1の頻出操作パターンでは次の操作が「Opr4」であること、そしてその操作者がユーザDであることを認識する。サービス決定部501は、次に予想される「Opr4」の操作を提供するサービスとして推定する。この例の場合、推定されたサービスが1通りであるため、サービス優先度決定部602はサービス決定部501によって推定された「Opr4」の操作を提供することが可能である旨をサービス出力部502へ通知する。サービス出力部502は、「Opr4」の操作に応じた機器制御をサービスとして出力する。
また、別の例として、例えば操作履歴受信部401が「Opr8,Opr2」と受信した場合、図10に示すNo.3およびNo.6の頻出操作パターンと部分一致する。サービス決定部501は、No.3の頻出操作パターンでは次の操作が「Opr3」でその操作者がユーザBであること、No.6の頻出操作パターンでは次の操作が「Opr5」でその操作者がユーザAであることを認識する。したがって、次に予想される操作としては「Opr3」と「Opr5」の操作の2通りである。ここで、サービス優先度決定部602は、「Opr3」および「Opr5」の操作が同時に提供可能であるか否かを判断する。
これらの操作が異なる機器に対する操作である場合、例えば「Opr3」の操作がテレビの音量を上げる動作、「Opr5」の操作がエアコンの風量を調整する動作であるなどの場合には、これらの制御を同時に実施することが可能である。よって、サービス優先度決定部602は、サービス決定部501によって推定された「Opr3」および「Opr5」の操作を提供することが可能である旨をサービス出力部502へ通知する。サービス出力部502は、「Opr3」および「Opr5」の操作に応じた機器制御をサービスとして出力する。
一方、これら「Opr3」および「Opr5」の操作が同一の機器に対する操作である場合、例えば「Opr3」の操作がテレビのチャンネルを「4」にする操作、「Opr5」の操作がテレビのチャンネルを「8」にする操作である場合、これらの制御を同時に実施することが不可能である。この場合、「Opr3」の操作はNo.3の頻出操作パターンから推定されたものであるから操作者はユーザB、「Opr5」の操作は頻出操作パターンNo.6から推定されたものであるから操作者はユーザAと推定される。ここで、図18(a)に示す優先順位おいては、ユーザAとユーザBとではユーザBの方が優先順位の高い。したがって、サービス優先度決定部602は、ユーザBの頻出操作パターンに基づいて予想した「Opr3」の操作を提供するサービスとして決定する。そして、サービス出力部502は、「Opr3」の操作に応じた機器制御をサービスとして出力する。
以上のように、本実施の形態では、提供しようとするサービスの候補が複数存在し、それらを同時に提供することが不可能な場合においても、適切なサービスを選択して提供することが可能となる。
よって、同一空間に複数のユーザが存在している状況が日常的である家庭内のように、同一機器や同一空間という物理的制約を受ける状況であっても、そこに存在している全てのユーザにとって可能な限り最適なサービスを提供することができる。
なお、本実施の形態においては、図18(a)に示すようなユーザ間の優先順位に基づいて提供するサービスを決定しているが、例えば図18(b)に示すような操作間の優先順位に基づいて決定しても良い。
また、本実施の形態においては、複数のサービス候補のうち選択されなかったサービスは棄却されたが、図18(c)で示すような代替操作リストをあらかじめ準備し、これを参照することにより選択したサービスと同時に提供可能な代替サービスが存在する場合にはそれを提供しても構わない。例えば、上記の例で選択されなかった「Opr5」の操作について図18(c)の代替操作リストよれば、「Opr13」の操作が代替操作であることが分かる。このとき「Opr13」の操作が、「Opr3」の操作と同時に提供可能なサービスの組み合わせであればこれら2種類のサービスを提供することが可能となる。
また、本実施の形態においては、図17に示したようにユーザエージェント部202とサービスコンシェルジェ部203とを備えた構成としたが、システム構成としては最低限サービスコンシェルジェ部203を備えればよく、頻出操作パターンの抽出管理、操作者の推定などのユーザエージェント部202の機能は通信可能なシステム外部に存在しても構わない。
(第4の実施の形態)
本実施の形態では、第3の実施の形態とは別の方法によって、同時に提供することができない複数のサービスについてどのサービスを提供するかを決定する場合について説明する。
図20は、本発明の第4の実施の形態に係る操作履歴利用システムの構成を示すブロック図である。この操作履歴利用システムは、第3の実施の形態の構成のサービス優先度決定部602に代えてサービス配分決定部603を備えており、その他の構成は第3の実施の形態と同様である。なお、第3の実施の形態と同様の部分については同じ符号を付し、詳細な説明を省略する。
サービス配分決定部603は、サービス決定部501によって提供されるサービスの全てを同時に提供することが不可能な場合に、確率的に提供するサービスを配分する。また、サービス配分決定部603には、あらかじめユーザおよび操作についてそれぞれ配分確率が定義されている。図21は定義されている配分確率の一例を示す図であり、(a)ユーザ毎の配分確率、(b)操作毎の配分確率を示す図である。
次に、このように構成された操作履歴利用システムにおいて、サービス決定部501によってユーザに提供するサービスが推定された後の動作について説明する。
図22は、推定されたサービスを提供する際の動作の流れを示すフローチャートである。
サービス決定部501は、パターンデータベース405に記憶されている頻出操作パターンを利用して、現在受信している操作系列からユーザの次の操作を予想し、それに応じた機器制御、情報提供などの提供するべきサービスを推定する(ステップS601)。次に、サービス配分決定部603は、サービス決定部501によって推定されたサービスが何通り存在するかを確認し、それらのサービスを同時に提供することが可能であるか否かを判別する(ステップS602)。ここで、サービス決定部501によって推定されたサービスを同時に提供することが可能である場合には、サービス配分決定部603はその旨をサービス出力部502へ通知する。そして、サービス出力部502は、サービス決定部501によって推定されたサービスを提供する(ステップS603)。
一方、サービス決定部501によって推定されたサービスを同時に提供することが不可能である場合には、サービス配分決定部603は、図21に示すようなあらかじめ定義されている配分確率に基づいて、サービス決定部501によって推定されたサービスの中からサービスを選択し、選択したサービスをサービス出力部502へ通知する。そして、サービス出力部502は、サービス配分決定部603によって選択されたサービスを提供する(ステップS604)。
例えば、第3の実施の形態と同様に図10に示すような頻出操作パターンと操作者との関係が抽出されているとする。ここで、操作履歴受信部401が「PowerOn、Opr1」と受信した場合、第3の実施の形態と同様にサービス決定部501は、次に予想される「Opr4」の操作を提供するサービスとして推定する。この例の場合、推定されたサービスが1通りであるため、サービス配分決定部603はサービス決定部501によって推定された「Opr4」の操作を提供することが可能である旨をサービス出力部502へ通知する。サービス出力部502は、「Opr4」の操作に応じた機器制御をサービスとして出力する。
また、別の例として、例えば操作履歴受信部401が「Opr8,Opr2」と受信した場合、第3の実施の形態と同様に次に予想される操作としては「Opr3」と「Opr5」の操作の2通りである。ここで、サービス配分決定部603は、「Opr3」および「Opr5」の操作が同時に提供可能であるか否かを判断する。
これらの操作が異なる機器に対する操作である場合、サービス配分決定部603は、サービス決定部501によって推定された「Opr3」および「Opr5」の操作を提供することが可能である旨をサービス出力部502へ通知する。サービス出力部502は、「Opr3」および「Opr5」の操作に応じた機器制御をサービスとして出力する。
一方、これら「Opr3」および「Opr5」の操作が同一の機器に対する操作である場合、第3の実施の形態と同様に「Opr3」の操作はNo.3の頻出操作パターンから推定されたものであるから操作者はユーザB、「Opr5」の操作は頻出操作パターンNo.6から推定されたものであるから操作者はユーザAと推定される。ここで、図21(a)に示す配分確率においては、ユーザAの配分確率は「0.2」、ユーザBの配分確率は「0.1」である。したがって、サービス配分決定部603は、この確率比すなわち、「2:1」の割合でどちらのサービスを提供するかを決定する。すなわちこの場合、3回に2回はユーザAの「Opr5」の操作、3回に1回はユーザBの「Opr3」の操作を提供するサービスとして決定する。そして、サービス出力部502は、サービス配分決定部603によって選択された操作に応じた機器制御をサービスとして出力する。なお、このように「2:1」の割合でどちらかを決定する動作は、例えば乱数(例えば0.000〜0.999とする)を発生させて「0.000〜0.666」の場合はユーザA、「0.667〜0.999」の場合はユーザBというように決定することができる。
以上のように、本実施の形態では提供しようとするサービスの候補が複数存在し、それらを同時に提供することが不可能な場合においても、適切なサービスを選択して提供することが可能となる。
よって、第3の実施の形態と同様に、同一空間に複数のユーザが存在している状況が日常的である家庭内のように、同一機器や同一空間という物理的制約を受ける状況であっても、そこに存在している全てのユーザにとって可能な限り最適なサービスを提供することができる。
なお、本実施の形態においては、ユーザ間の配分確率の比に基づいて提供するサービスとして決定しているが、これに限られるものではなく、ユーザ間の配分確率の比に基づいて、提供するサービスを途中で切り換えても構わない。例えば、2時間「Opr3」の操作を提供し、その後1時間「Opr5」の操作を提供するなどのように制御する。
また、本実施の形態においては、あらかじめユーザおよび操作についてそれぞれ配分確率を定義しているが、これに限られるものではなく、例えばユーザが過去に使った利用実績等の履歴に基づいて配分確率を決定したり、動的に配分確率を変更したりしても構わない。また、この際に用いるユーザの利用実績等の履歴については、第1、第2の実施の形態で説明した方法で操作者を推定した情報であっても良いし、例えばID付きリモコンのような操作者を特定することが可能な装置を用いて得られた情報であっても良い。
また、本実施の形態においては、図21(a)に示すようなユーザ間の配分確率に基づいて提供するサービスを決定しているが、例えば図21(b)に示すような操作間の配分確率に基づいて決定しても良い。
また、本実施の形態においては、図20に示したようにユーザエージェント部202とサービスコンシェルジェ部203とを備えた構成としたが、システム構成としては最低限サービスコンシェルジェ部203を備えればよく、頻出操作パターンの抽出管理、操作者の推定などのユーザエージェント部202の機能は通信可能なシステム外部に存在しても構わない。
(第5の実施の形態)
図23は、本発明の第5の実施の形態に係る操作履歴利用システムの構成を示すブロック図である。この操作履歴利用システムは、第1の実施の形態の構成のパターン分類部601に代えて操作確認部604を備えており、その他の構成は第1の実施の形態と同様である。なお、本実施の形態では、受信したユーザの操作履歴データから頻出操作パターンを抽出し、パターンデータベース405に記憶している。この頻出操作パターンの抽出方法については、第1の実施の形態と同様であるのでここでは説明を省略する。
操作確認部604は、ユーザの意図しない操作と予想される操作について確認や修正を行う。
次に、このように構成された操作履歴利用システムでの動作について説明する。
図24は、操作履歴データを受信した際の動作の流れを示すフローチャートである。
操作履歴受信部401は、操作履歴データの系列を受信したか否かを確認する(ステップS701)。ここで操作履歴データを受信していない場合には、操作履歴受信部401は操作履歴データを受信したか否かの確認を所定の周期で継続する。一方、操作履歴データを受信した場合には、操作履歴受信部401は、操作履歴データを受信した旨を操作履歴登録部403へ通知する。操作履歴登録部403は、操作履歴受信部401で受信した操作履歴データを取り出し、操作履歴データベース402に登録する。このとき、パターン監視部406は、登録される操作履歴データの操作系列がパターンデータベース405に記憶されている頻出操作パターンに一致するか否かを比較する(ステップS702)。
例えば、パターンデータベース405に図7に示す頻出操作パターンが記憶されているときに、操作履歴受信部401が「Opr7、Opr6、Opr9」という操作履歴データを受信したとする。この場合、受信した操作履歴データは、図7に示すNo.4の頻出操作パターンと「Opr7、Opr6」の部分だけが部分一致し、3番目の操作が異なる。このような場合、受信した操作履歴データが頻出操作パターンに部分的に一致することになる。
このような比較の結果、受信した操作履歴データが頻出操作パターンに完全に一致する場合、または全く一致しない場合には、パターン監視部406は処理を終了する。一方、受信した操作履歴データが頻出操作パターンに部分的に一致する場合には、操作確認部604は、部分的に一致した受信した操作履歴データと頻出操作パターンのうち、一致しなかった操作について、操作者であるユーザや操作が行われた機器に対して警告を提示する(ステップS703)。
上記の例では、受信した操作履歴データのうち「Opr9」の操作が頻出操作パターンとは異なる操作である。したがって、操作確認部604は、「Opr9」の操作について、その操作が行われた機器の表示インタフェースに「現在、Opr9の操作が行われましたが、今の操作が正しい操作か確認してください」というような警告を表示するように指示を出力する。なお、このとき操作が行われた機器だけでなく、例えばテレビ等の表示手段を有する別の機器に出力しても構わない。また、この警告は表示に限定するものではなく、警告音、バイブレーションなど他の手段であっても構わない。
以上の動作は、以下の2つの観点から行っている。第1には、頻出操作パターンは何度も観測される操作の定型的な系列であるということから、頻出操作パターンと一部だけ異なる操作系列に対して、その「異なっている」操作がユーザの誤操作や意図しない操作である可能性が高いという観点である。また第2には、頻出操作パターンに基づいたサービス予測に活用するためにパターンデータベース405を適宜更新していく場合、ユーザの意図しない操作はできるだけ排除して登録することが必要であるという観点である。
なお、本実施の形態においては、部分的に一致した受信した操作履歴データと頻出操作パターンのうち、一致しなかった操作すなわち誤操作と予想される操作(上記例では「Opr9」の操作)については実行されている(図25、動作1)が、この操作を中断(図25、動作3)しても良い。例えば、「Opr9」の操作が「音量を上げる」という操作であるとすると、一旦上げられた音量を再び元の音量レベルまで下げるような制御命令を操作確認部604が出力する。もし、「音量を上げる」操作がユーザの意図した操作であれば、操作確認部604によって自動的に音量が下げられても再び音量を上げる操作を実行するので、ユーザの意図した操作なのかどうかより明確に判断できる。
また、操作確認部604は、上記のような警告に代えて誤操作と予想される動作を中断して、パターンデータベース405に記憶されている操作を実行(図25、動作2)しても構わない。この場合、例えば上記の例では「Opr9」の操作を中断し、図7に示すNo.4の頻出操作パターンから「Opr10」の操作を実行するということになる。
以上のように、本実施の形態では、頻出操作パターンから一部外れる操作を検出し、その操作について操作者に警告を発する、その操作を中断する、あるいは頻出操作パターンから予想される代替操作を実行する等により、操作者の誤操作や意図しない操作を防ぐことが可能となる。よって、履歴情報に基づいてユーザの嗜好や状態を分析してサービスに活用とする場合に重要となる履歴情報の信頼性を高めることができる。
なお、本実施の形態においては、図23に示したようにユーザエージェント部202とサービスコンシェルジェ部203とを備えた構成としているが、システム構成としては最低限ユーザエージェント部202を備えればよい。
(第6の実施の形態)
本実施の形態は、ネットワークを介して接続された複数の機器の操作履歴データから頻出操作パターンを抽出し、それに基づいたサービスを提供する例である。
図26は、本発明の第6の実施の形態に係る操作履歴利用システムの全体構成を示すブロック図である。
この操作履歴利用システムは、図26に示すようにデジタルTV(以下、単にテレビ又はTVという)101a、ビデオ(Video)101b、エアコン(Air Conditioner)101c、照明器具(Light)101d、MD(MiniDisc)コンポ101e、およびPC(Personal Computer)101fなどの端末家電機器101と、ホームサーバやホームゲートウェイなどのサーバ家電機器(ユーザサーバ)102と、サーバ家電機器102へのアクセスを許可されたアプリケーションサーバ103と、有線又は無線のネットワークから構成されるLAN(LocalArea Network)104と、WAN(Wide Area Network:例えばインターネット)105と、LAN104をWAN105に接続するためのルータ106とを備えている。
ここで、サーバ家電機器102は常時通電されており、所定の条件に従ってWAN105側からのアクセスが許される。また、図26においては各々情報サービスを提供する複数のアプリケーションサーバ103のうちの1つが示している。また、ルータ106は、WAN105へのアクセスにADSL(Asymmetric Digital Subscriber Line)やFTTH(Fiber To The Home)を利用する場合など、必要に応じて対応するモデム機能を有する。
図27は、図26における端末家電機器101、サーバ家電機器102、アプリケーションサーバ103に搭載される主要な機能モジュール(プログラム)を示したブロック図である。
端末家電機器101の各々は、ユーザの操作をトリガとして機器操作履歴データを記録するデバイスエージェント201を備えている。サーバ家電機器102は、デバイスエージェント201から所定のタイミングで送信される機器操作履歴データを受け付けて、これを一元管理するユーザエージェント202を備えている。アプリケーションサーバ103の各々は、ユーザエージェント202が提供する機器操作履歴データを利用したサービスを提供するサービスコンシェルジェ203を備えている。
なお、サーバ家電機器102は、録画機能を持つホームサーバの場合など、ユーザエージェント202に加えて自身のデバイスエージェント201を備えてもよい。また、サーバ家電機器102の候補となる家電機器が複数存在する場合は、所定の方法によって1つの機器を選択するものとする。
図28は、デバイスエージェント201の構成を示すブロック図である。
デバイスエージェント201は、操作入力部301、操作入力解釈部302、機器制御部303、操作履歴記憶部304、操作履歴記録部305、操作履歴送信部306、およびネットワークIF(ネットワークインタフェース)308を備えている。
操作入力部301は、リモコンなどを介して入力されるユーザからの操作を受け付ける。操作入力解釈部302は、操作入力部301からの操作入力を解釈して機器の動作状態を決定する。機器制御部303は、操作入力解析部302の解析結果に対応して機器を制御する。操作履歴記憶部304は、機器の操作について操作日時と操作内容とを組にして記憶する。操作履歴記録部305は、操作入力解釈部302によって解釈された機器操作について操作履歴記憶部304に追加する。操作履歴送信部306は、ネットワークIF308を介して所定のタイミングで操作履歴記憶部304に記憶された操作履歴データをユーザエージェント202宛に送信する。
次に、上記のように構成されたデバイスエージェント201の動作について説明する。
デバイスエージェント201は、まずユーザが操作するリモコンから操作入力部301が受け付けた操作を操作入力解釈部302で解釈する。例えば、エアコン101cの温度設定が25度になっており、ユーザがリモコンの設定温度アップボタンを2回押したことにより温度設定が27度に設定されたと解釈する。なお、リモコン以外からの入力操作についても同様に処理されるものとする。これにより、機器制御部303は、操作入力に対応する動作を実行する。また同時に、操作履歴送信部306は、その操作履歴データを操作履歴記憶部304に記録する。
図29は、機器毎に定義されている履歴に残すべき操作履歴データの一例を示す図である。例えば、エアコンの場合、操作種として電源オン(PowerOn)、電源オフ(PowerOff)、温度設定、風量設定、停止、予約などが操作履歴データとして保存する対象となることを示している。
図30は、操作履歴データの一例を示す図である。図30(a)に示す操作履歴データは、エアコンの操作履歴データの例であり、操作日時としてその操作が行われた日時、機器種別として「Air Conditioner」、操作種別識別子として図29に示す「Set」、引数として「27」が記述されており、エアコンが操作日時において、温度27度で運転されたことを示している。また、図30(b)に示す操作履歴データは、テレビの操作履歴データの例であり、操作日時においてID番号がXXXXXXXで一意に指定される番組を視聴したことを示している。なお、履歴開始日時記憶部を更に設け、今までの25度での運転の開始日時を予め記憶しておき、現在日時を25度での運転終了日時として、操作開始日時と操作終了日時とを操作履歴記憶部304に記録してもよい。この場合は、現在日時を27度での運転開始日時として履歴開始日時記憶部に記憶しておくことになる。このとき、操作終了日時の項目は操作開始日時からの経過時間としても構わない。
以上のように操作履歴記憶部304に記録された操作履歴データが、操作履歴送信部306によってネットワークIF308およびネットワークを介してユーザエージェント202に対して送信される。
図31は、ユーザエージェント202が受信した操作履歴データの一例を示す図である。
ユーザエージェント202が受信した操作履歴データは、例えば図31に示すように操作日時、機器種別、操作種別識別子および引数から構成され、様々な機器、様々な操作の履歴が時系列順に並べられ、操作履歴データベース402に記憶されている。
この操作履歴データから、第1の実施の形態で既に説明した図5に示す手順により、図32で示すエピソードデータを生成し、そこから更に図33で示す頻出操作パターンを抽出することが可能である。
また、ユーザエージェント202およびサービスコンシェルジェ203を第1の実施の形態における図1で示した構成として、図5および図9で示した動作手順を用いることにより、操作履歴データの頻出操作パターンを抽出し、特別なユーザ識別の手段を用いずに操作履歴データおよび図34に示すような決定的操作情報を用いることにより、どのユーザによる操作であるかを推定することが可能となる。また、これらの操作者に関する情報が付与された頻出操作パターンを活用した、操作予測に基づく機器制御や情報提供などのサービスを提供することが可能となる。
また、ユーザエージェント202およびサービスコンシェルジェ203を第2の実施の形態における図14で示した構成として、図16で示した動作手順を用いることにより、操作履歴データの頻出操作パターンを抽出し、特別なユーザ識別の手段を用いずに操作履歴データおよび決定的操作情報を用いることにより、どのユーザによる操作であるかを推定することが可能となる。また、これらの操作者に関する情報が付与された頻出操作パターンを活用した、操作予測に基づく機器制御や情報提供などのサービスを提供することが可能となる。
また、ユーザエージェント202およびサービスコンシェルジェ203を第3の実施の形態における図17で示した構成として、図19で示した動作手順を用いることにより、操作履歴データの頻出操作パターンを抽出し、同時提供が不可能な複数のサービスの提供が予測された際でも、定義されているユーザ毎や操作毎の優先度に基づいて、操作予測に基づく機器制御や情報提供などのサービスを決定した上で提供することが可能となる。
また、ユーザエージェント202およびサービスコンシェルジェ203を第4の実施の形態における図20で示した構成として、図22で示した動作手順を用いることにより、操作履歴データの頻出操作パターンを抽出し、同時提供が不可能な複数のサービスの提供が予測された際でも、定義されているユーザ毎や操作毎の確率配分に基づいて、操作予測に基づく機器制御や情報提供などのサービスを決定した上で提供することが可能となる。
また、ユーザエージェント202およびサービスコンシェルジェ203を第5の実施の形態における図23で示した構成として、図24で示した動作手順を用いることにより、操作履歴データの頻出操作パターンを抽出し、頻出操作パターンから一部外れる操作について、操作者に警告を発する、その操作を中断する、または頻出操作パターンから予想される代替操作を実行する等により、操作者の誤操作や意図しない操作を防ぐことが可能となる。
なお、本実施の形態では、ユーザエージェント202およびサービスコンシェルジェ203を図27に示すように独立した構成としているが、これに限られるものではない。例えば、図35に示すようにユーザエージェント202とサービスコンシェルジェ203とが機能レベルでは分離しているが、同一装置にそれら機能を備えた構成としても良い。
また、本実施の形態では、端末家電機器101として家庭内で用いられるような機器を例に挙げているが、これに限られるものではなく、ネットワークに接続して情報収集することが可能であれば、例えば車等に搭載される機器、携帯情報端末(PDA)、携帯電話等であっても構わない。
また、上記各実施の形態は、それぞれ個別に実施するだけでなく、例えば第1の実施の形態と第3の実施の形態とを組み合わせるというように、他の実施の形態と組み合わせて実施することも可能である。
また、上記各実施の形態で端末家電機器101が1つしか存在しない場合においては、端末家電装置101にデバイスエージェント201とユーザエージェント202の両方を具備させて一体の装置としたり、さらにはサービスコンシェルジェ203をも加え3者を具備させた一体の装置として実施することも可能である。
以上の説明から明らかなように、本発明に係る操作履歴利用システムによれば、個々の機器の操作履歴データなどを収集し、それらの操作履歴データを一元的に管理し、そのときの状況にあわせたサービスや、個人ひとりひとりの生活における特性をより反映したサービスを行うことができる。
よって、様々な履歴情報に基づいてユーザの嗜好や状態を分析した情報を用いて、そのときの状況にあわせたサービスを提供する状況依存型サービスが求められる今日における実用的価値は極めて高い。