番組表作成方法及び番組表作成装置並びに番組表作成システム
様々な条件に応じて、コンテンツの再生を行うための詳細な番組表を自動的に作成する技術が開示され、その技術によれば制約条件生成部103は、ユーザに係る条件(制約条件)を取得し、この制約条件を制約条件記述関数によって記述する。制約条件解消部104は、制約条件生成部から供給された制約条件記述関数に基づき、コンテンツ属性情報格納部124に格納されているコンテンツ属性情報を参照しながら、制約解消処理を行って、複数のコンテンツの時間的な配列を定める最適な番組表(最適解)を導出する。また、最適解が発見されない制約過多の場合には制約条件優先度取得部105によって、最適解が複数発見される制約不足の場合にはスコア設定部106によって、最適な番組表の紋り込みや再計算などが行われる。このようにして作成された最適な番組表に基づき、コンテンツ取得部109によるコンテンツの取得処理、番組再生部110による再生処理が行われる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンテンツの再生を行うための番組表を作成する番組表作成方法及び番組表作成装置並びに番組表作成システムに関する。
【背景技術】
【0002】
従来、携帯電話機やPHS(Personal Handyphone System)端末、PDA(Personal Digital Assistance)などの持ち運び可能な移動通信端末や、車両、船、飛行機などの移動体に搭載された通信装置などにおいて、無線通信を介して楽曲データや映像データなどのコンテンツを受信し、再生することが可能である。例えば、テレビやラジオの放送電波を受信して再生することによって、テレビ番組やラジオ番組を視聴する方法や、デジタル通信網などを介して、所定のサーバから映像データや楽曲データなどのデジタルコンテンツを受信して再生することによって、ネットワークを通じて配信される番組を視聴する方法などが存在する。
【0003】
しかしながら、上述の放送形式によるコンテンツ配信では、不特定多数のユーザに同一の番組(コンテンツ)が提供されることになり、ユーザは、必ずしも自分が視聴したいコンテンツを楽しむことができないという問題があった。こうした問題に対処するため、ユーザの嗜好を考慮したオンデマンド形式のコンテンツ配信を行うことが可能なコンテンツ配信システムが多数知られている。
【0004】
また、下記の特許文献1には、放送通信やインターネットなどを介して配信されるコンテンツや、ローカルに存在する記録メディア(CD(Compact Disc)やDVD(Digital Versatile Disk)など)に格納されているコンテンツなどの各コンテンツに関して、ユーザが設定した設定情報(プロファイル)に基づく番組構成を行うことが可能な、車内で使用する音楽・情報提供装置が開示されている。なお、この特許文献1に開示されている技術では、ユーザが、番組構成用の設定情報や所望の番組構成・情報内容などをあらかじめパーソナルコンピュータなどを用いてカスタマイズしておくことで、車両の運転中における機器の操作回数の低減を可能とし、車両運転時の安全性の向上が図られている。
【特許文献1】特開2001−343979号公報(図1、3、5、7)
【0005】
しかしながら、特許文献1に開示されている技術によれば、車両内における操作回数は低減されるものの、番組構成は、ユーザが前もって行う操作によるところが大きく、番組を構成するのは、あくまでもユーザの役割である。したがって、特許文献1に開示されている技術では、ユーザの嗜好や状況などの様々な条件に応じた時刻や順序によって、コンテンツの再生を行うための番組表を自動的に作成することは不可能である。
【0006】
すなわち、特許文献1に開示されている技術によれば、下記の点において課題がある。
・番組を自動的に構成する方法(アルゴリズム)が存在せず、事前にユーザが行う設定を考慮すると、必ずしもユーザの操作回数全体が低減されるわけではない。
・ユーザの履歴を基にして、ユーザの好きなコーナーやコンテンツの順位付けを行い、その順位に従った順番で再生することは可能であったが、例えば、2時間の番組を作成する場合に、ユーザの好きなコーナーやコンテンツから再生して行くと、ユーザの好まないコーナーやコンテンツは番組後半に再生されることになってしまう。したがって、番組全体に対するユーザの満足度は高くなるとは思われない。
・ユーザの履歴を基にして、コーナーやコンテンツに対するスキップ率(コンテンツの利用の度合いを示す指標:特許文献1の図5(b)を参照)は表示されても、スキップ率は、ユーザが番組の構成を行うための参考データに過ぎず、その参考データに基づいて、コーナーの長さや、コーナーやコンテンツの再生時刻や再生する順番などを決定するのはユーザの作業である。したがって、スキップ率などの参考データが効率良く利用されているとは言えず、結局、ユーザによる操作が行われない限り、最適化された番組を作成することは不可能である。
・番組全体の最適化を行って、番組全体としてのユーザの嗜好性を追求することが不可能である。
・ユーザの嗜好、状況、番組全体の再生時間などの様々な条件が複雑に絡み合った状況下で起こり得る、複数の番組の候補として多数のコンテンツが候補に挙がる状態や、番組の候補となるコンテンツが存在しなくなってしまう状態に対して対応することができず、すなわち、様々な条件を考慮した詳細な番組表を臨機応変に作成することが不可能である。
【発明の開示】
【0007】
本発明は、上記課題に鑑み、様々な条件に応じて、コンテンツの再生を行うための詳細な番組表を自動的に作成することを可能とする番組表作成方法及び番組表作成装置並びに番組表作成システムを提供することを目的とする。
【0008】
上記目的を達成するために、本発明によれば、複数のコンテンツの時間的な配列を定める番組表を作成するための番組表作成方法において、
前記複数のコンテンツの選択に係る制約条件、及び/又は、前記複数のコンテンツの時間的な配列に係る制約条件に基づき、制約解消技術を利用して、前記番組表の作成を行うことを特徴とする番組表作成方法が提供される。
【0009】
さらに、本発明によれば、上記の番組表作成方法において、あらかじめ定められた制約条件記述関数によって、前記制約条件の記述を行うことを特徴とする番組表作成方法が提供される。
【0010】
さらに、本発明によれば、上記の番組表作成方法において、前記コンテンツを視聴又は聴取するユーザの嗜好を示すユーザ嗜好情報を、前記制約条件として取得することを特徴とする番組表作成方法が提供される。
【0011】
さらに、本発明によれば、上記の番組表作成方法において、前記ユーザの嗜好を学習して前記ユーザ嗜好情報を自動生成することによって、前記制約条件を自動的に取得することを特徴とする番組表作成方法が提供される。
【0012】
さらに、本発明によれば、上記の番組表作成方法において、前記コンテンツの再生に係る状況を示す状況情報を、前記制約条件として取得することを特徴とする番組表作成方法が提供される。
【0013】
さらに、本発明によれば、上記の番組表作成方法において、前記複数のコンテンツのそれぞれの属性を示すコンテンツ属性情報を参照して、前記番組表の作成を行うことを特徴とする番組表作成方法が提供される。
【0014】
さらに、本発明によれば、上記の番組表作成方法において、前記番組表の作成時の制約解消処理において、制約過多の状態となった場合に、前記コンテンツ及び/又は前記制約条件に優先度を設定し、前記優先度の高い前記制約条件を優先して前記制約解消処理を行うことを特徴とする番組表作成方法が提供される。
【0015】
さらに、本発明によれば、上記の番組表作成方法において、前記番組表の作成時の制約解消処理において、制約不足の状態となった場合に、前記コンテンツ及び/又は前記制約条件にスコアを設定し、前記スコアをパラメータとした関数を演算に係る演算結果を比較することによって、前記制約解消処理を行うことを特徴とする番組表作成方法が提供される。
【0016】
さらに、本発明によれば、上記の番組表作成方法において、前記制約解消技術として、制約論理プログラミング技術を用いることを特徴とする番組表作成方法が提供される。
【0017】
さらに、本発明によれば、上記の番組表作成方法において、最下位層に前記番組表を構成する前記コンテンツを表すエレメントが配置されており、前記コンテンツを表すエレメントの上位に、下位のエレメントの特徴を集約するエレメントが配置された1つ又は複数の階層を有するツリー構造によって前記番組表を表現し、上下の層において相互に関連付けられた前記エレメント同士は、相互に矛盾しない情報を有する番組表作成方法が提供される。
【0018】
さらに、本発明によれば、上記の番組表作成方法において、前記上下の層において相互に関連付けられた前記エレメント同士は、相互に矛盾しない属性情報又は時間幅情報を有する番組表作成方法が提供される。
【0019】
さらに、本発明によれば、前記ツリー構造に基づいて、前記番組表の一部の再構成を行う番組表作成方法が提供される。
【0020】
さらに、本発明によれば、前記番組表の一部の再構成を、以前の解を利用して新たな解を導出する方法、及び以前の解導出にかかる履歴を利用して新たな解を導出する方法のいずれか一方又はこれらの組み合わせを利用して行う番組表作成方法が提供される。
【0021】
さらに、本発明によれば、前記番組表の作成時又は作成後に、前記コンテンツに設定されるスコア、前記コンテンツの属性の相関、前記コンテンツの相関のいずれか1つ又はこれらの組み合わせに基づいて、前記コンテンツの配列の最適化を行う番組表作成方法が提供される。
【0022】
さらに、本発明によれば、時間軸に対して、1つ前に配置される前記コンテンツに基づいて、次に配置される前記コンテンツを決定する番組表作成方法が提供される。
【0023】
さらに、本発明によれば、時間軸に対して、1つ後に配置される前記コンテンツに基づいて、前に配置される前記コンテンツを決定する番組表作成方法が提供される。
【0024】
さらに、本発明によれば、時間軸に対する複数の前記コンテンツに係るパターンに基づいて、前記コンテンツの配列を決定する番組表作成方法が提供される。
【0025】
さらに、本発明によれば、上記の番組表作成方法において、前記コンテンツの属性を示すコンテンツ属性情報を参照して、全体として、隣接する前記コンテンツ間における相関が最も高くなるように前記コンテンツの配列を変更する番組表作成方法が提供される。
【0026】
また、上記目的を達成するために、本発明によれば、複数のコンテンツの時間的な配列を定める番組表を作成するための番組表作成装置において、
前記複数のコンテンツの選択に係る制約条件、及び/又は、前記複数のコンテンツの時間的な配列に係る制約条件に基づき、制約解消技術を利用して、前記番組表の作成を行うことを特徴とする番組表作成装置が提供される。
【0027】
さらに、本発明によれば、上記の番組表作成装置において、車両に搭載されており、前記車両内において視聴又は聴取される番組の前記番組表の作成を行うことを特徴とする番組表作成装置が提供される。
【0028】
さらに、本発明によれば、上記の番組表作成装置において、前記制約解消技術として、制約論理プログラミング技術を用いることを特徴とする番組表作成装置が提供される。
【0029】
また、上記目的を達成するために、本発明によれば、複数のコンテンツの時間的な配列を定める番組表を作成するための番組表作成システムにおいて、
前記複数のコンテンツの選択に係る制約条件、及び/又は、前記複数のコンテンツの時間的な配列に係る制約条件に基づき、制約解消技術を利用して、前記番組表の作成を行うように構成されており、前記所定のネットワーク上に存在する番組表作成サーバと、
前記所定のネットワークに接続可能であり、前記所定のネットワークを介して、前記番組表作成サーバに対して前記制約条件を送信するとともに、前記番組表作成サーバにおいて作成された前記番組表を受信することが可能な通信装置とを、
有することを特徴とする番組表作成システムが提供される。
【0030】
さらに、本発明によれば、上記の番組表作成システムにおいて、前記通信装置が車両に搭載されており、前記番組表作成サーバが、前記車両内において視聴又は聴取される番組の前記番組表の作成を行うことを特徴とする番組表作成システムが提供される。
【0031】
さらに、本発明によれば、上記の番組表作成システムにおいて、前記制約解消技術として、制約論理プログラミング技術を用いることを特徴とする番組表作成システムが提供される。
【0032】
本発明は、上記構成を有しており、様々な条件に応じて、コンテンツの再生を行うための詳細な番組表を自動的に作成することが可能となる。
【0033】
また、本発明によれば、制約解消技術を利用して導出された制約条件の充足解(最適解)として番組を自動的に作成することができるようになり、特に、番組に対するユーザの嗜好や他の条件を制約論理プログラミング技術における宣言的な制約条件に変換して、それらの制約条件の充足解(最適解)として番組を自動的に作成することができるようになる。
【0034】
また、本発明によれば、ユーザの履歴を基にして、ユーザの嗜好に合った各コーナーの長さや、各コーナーや各コンテンツの再生時刻、それらのコーナーやコンテンツ間の再生順序や周期性などの情報を制約条件として取得して、それらの制約条件を満たす番組を自動的に作成することができるようになる。また、ユーザの履歴に加えてユーザと似たプロファイルデータをもつユーザや一般的なユーザの嗜好を基にして、制約条件を取得したり、ユーザの履歴を基にした制約条件と組み合わせたりすることもできる。
【0035】
また、本発明によれば、上記のユーザの嗜好に関連する制約条件に加えて、コンテンツプロバイダ、サービスプロバイダ、番組提供会社、放送局、ネットワーク、契約、他者、他車から生じる半強制的な制約条件も満たす番組を自動的に作成することができるようになる。
【0036】
また、本発明によれば、ユーザインタフェースを通したユーザの操作によって入力された制約条件を、ユーザの手動の操作によらない上記の制約条件(ユーザの嗜好に関連する制約条件や半強制的な制約条件)と組み合わせることによって、その時点でより嗜好性の高い番組を作成することができる。この際に入力する制約条件はコーナーの長さや順序に限らず、具体的に再生したいコンテンツやその放送時刻を設定することもできる。
【0037】
また、本発明によれば、番組進行中においても、様々な状況変化に応じて、上記の制約条件(ユーザの嗜好に関連する制約条件、半強制的な制約条件、ユーザの操作によって入力された制約条件)を動的に変化させることができ、制約条件の変化をトリガとして、番組の再構成を行うこともできる。
【0038】
また、本発明によれば、ユーザの嗜好性を表現した目的関数によって番組全体を最適化することにより、番組全体としてのユーザの嗜好性を追求することができるようになる。
【0039】
また、本発明によれば、ユーザの嗜好性を表現した目的関数によって番組全体を最適化することにより、目的関数の値によってランキングされた複数の番組をユーザに推薦して、それらの中からユーザのそのときの嗜好に最も合った番組をユーザに選択させることができるようになる。
【0040】
また、本発明によれば、制約条件が非常に多くなった場合には、ユーザの履歴制約条件やユーザと似たプロファイルデータをもつユーザや一般的なユーザの嗜好を基にして、各制約条件に優先度を設定し、優先度の高い制約条件を優先して番組を作成することができるようになる。
【0041】
また、本発明によれば、番組表を階層的なツリー構造によって表現することによって、ツリー構造の構成要素(エレメント)に係る条件を束縛することで、このエレメントに関連付けられた上下の階層のエレメントの条件を束縛し、制約解消処理の効率を向上させることができるようになる。
【0042】
また、本発明によれば、番組表の一部(例えば、途中まで再生された残りの番組内容)を、ツリー構造に基づき、初期値利用法及び/又は制約記録法を利用して最構成することで、番組表の再構成を高速で行うことができるようになる。
【0043】
また、本発明によれば、番組表の作成時又は作成後に、制約条件を満たす範囲で、番組全体の流れを考慮したコンテンツの配列変更を行うことで、ユーザのニーズにより近い番組表の作成を行うことができるようになる。
【図面の簡単な説明】
【0044】
【図1】本発明の実施の形態における番組表作成装置の構成の一例を示すブロック図である。
【図2】本発明の実施の形態における番組表作成方法の一例を示すフローチャートである。
【図3】本発明の実施の形態において利用される各コンテンツに設定されているコンテンツ属性情報の一例を示す図である。
【図4】本発明の実施の形態における番組表作成時に参照される制約条件の一例と、この制約条件に基づいて導出された最適解の一例とをそれぞれ模式的に示す図である。
【図5】本発明の実施の形態における番組、コーナー、コンテンツの階層的な関係を模式的に示す図である。
【図6】本発明の実施の形態における番組表作成装置によって最終的に作成される番組表の一例を示す模式図である。
【図7A】本発明の実施の形態におけるコーナー内のコンテンツに係る配置最適化の第1の例を示す図である。
【図7B】本発明の実施の形態におけるコーナー内のコンテンツに係る配置最適化の第2の例を示す図である。
【図7C】本発明の実施の形態におけるコーナー内のコンテンツに係る配置最適化の第3の例を示す図である。
【図7D】本発明の実施の形態におけるコーナー内のコンテンツに係る配置最適化の第4の例を示す図である。
【図8】本発明の実施の形態における制約解消処理において用いられるツリー構造の概念を模式的に示す図である。
【図9】本発明の実施の形態におけるツリー構造を用いた制約解消処理のアルゴリズムの一例を示すフローチャートである。
【図10】本発明の実施の形態における番組表の再スケジューリングの開始タイミングの一例を示す図である。
【発明を実施するための最良の形態】
【0045】
以下、図面を参照しながら、本発明の実施の形態について説明する。まず、図1を参照しながら、本発明の実施の形態における番組表作成装置について説明する。図1は、本発明の実施の形態における番組表作成装置の構成の一例を示すブロック図である。図1に示す番組表作成装置100は、制約条件入力部101、制約条件学習部102、制約条件生成部103、制約条件解消部104、制約条件優先度取得部105、スコア設定部106、コンテンツ情報取得部107、番組表出力部108、コンテンツ取得部109、番組再生部110、履歴情報格納部121、状況情報格納部122、一般情報格納部123、コンテンツ属性情報格納部124、制約関数格納部125を有している。
【0046】
なお、図1に示す番組表作成装置100は、主な動作は、CPU(Central Processing Unit:中央演算処理装置)によって動作されるプログラム(ソフトウェア)により行われるようにすることが可能である。例えば、図1に示す番組表作成装置100は、固定据置型PC(Personal Computer)又はノートブック型の持ち運び可能なPC、PDA、携帯電話機、車両などの移動体に設置される車載装置、CPUを搭載した専用端末などの各種の計算機によって実現可能である。
【0047】
また、例えば、番組表の作成の際に、主にデータ処理を行う制約条件学習部102、制約条件生成部103、制約条件解消部104、制約条件優先度取得部105、スコア設定部106などの各手段は、CPUが所定のプログラムを実行することによって実現可能である。また、特に、本発明の特徴でもある人工知能の要素技術の1つである制約解消に係る処理に関しては、制約に基づく問題解決を論理プログラミングと組み合わせた制約論理プログラミング(制約プログラミング、制約ロジックプログラミングとも呼ばれる)に係る技術の利用が可能であり、すなわち、高い記述能力を有する制約論理プログラミング言語によって宣言的に記述された制約の問題を、コンピュータによって解決させる方法を採用することが可能である。
【0048】
また、図1に示す番組表作成装置100の構成要素である各ブロックは、それぞれ分散していてもよい。すなわち、各ブロックが同一装置内に配置され、各ブロック間において、データが装置内の内部バスなどを通じて伝送されてもよく、また、各ブロックが全く別の装置に配置され、各ブロック間において、データが有線ケーブルや無線伝送媒体などを通じて伝送されてもよい。したがって、例えば、制約条件解消部104、制約条件優先度取得部105、スコア設定部106、コンテンツ情報取得部107を有する番組表作成サーバが、ネットワーク上に存在する一方、コンテンツ属性情報を有するコンテンツ情報格納サーバが別のサーバとしてネットワーク上に存在する構成とし、ユーザは、PCなどを用いて、番組表作成サーバに対して所定の制約条件を送信する(必要に応じて、さらに、ユーザ側の履歴情報や状況情報などを適宜送信してもよい)ことによって、番組表作成サーバから番組表を受信できるようにすることも可能である。
【0049】
制約条件入力部101は、GUI(Graphical User Interface:グラフィカルユーザインタフェース)などによって実現されるユーザの入力インタフェースである。ユーザは、番組の構成に係る条件を入力することが可能である。なお、このGUIによる条件入力においては、ユーザの操作を簡単にするために、あらかじめ定められた条件の選択(例えば、コンテンツの種別の選択)や、割合の選択(例えば、番組内に含まれるコンテンツの種別などの割合の選択)などが行えるようにすることが望ましい。
【0050】
また、制約条件学習部102は、ユーザによって入力された条件などから、ユーザの嗜好や傾向を学習するための手段である。なお、嗜好情報は、ここでは、履歴情報(ユーザによる条件入力の単純な履歴に係る情報)と共に履歴情報格納部121に格納されるように構成されているが、別に、不図示のユーザ嗜好情報格納部を設けて、その中に格納されるようにしてもよい。また、制約条件学習部102は、後述の番組再生部110によって再生されたコンテンツのスキップ率(ユーザが、コンテンツを再生せずにスキップさせる度合い)を取得したり、番組表出力後又は番組再生後に、番組に係るユーザの満足度を取得したりすることによって、作成された番組表に基づくユーザの満足度をフィードバックして、ユーザの嗜好情報を修正できるように構成することも可能である。
【0051】
また、制約条件生成部103は、ユーザによって制約条件入力部101から入力される条件や、制約条件学習部102によって供給されるユーザの嗜好情報などのユーザに係る条件に基づいて、制約条件記述関数による制約条件の記述を行う手段である。すなわち、この制約条件生成部103は、あらかじめ定義された多数の制約条件記述関数が格納されている制約関数格納部125から、ユーザに係る条件に対応する制約条件記述関数を読み出して、ユーザに係る条件を制約条件記述関数による記述に置き換える作業が行われる。したがって、制約条件生成部103によって生成される情報は、ユーザに係る条件を制約条件記述関数に翻訳したものである。なお、制約条件生成部103に供給される制約条件の供給元として、制約条件入力部101を利用しないようにすることも可能であり、これによって、ユーザによる制約条件の入力操作を完全に省き、制約条件学習部102から供給される制約条件に基づく番組表の自動生成処理を実現することも可能である。
【0052】
また、制約関数格納部125に格納されている制約条件記述関数は、番組の構成要素である階層的なコーナーやコンテンツなどに対する時間(長さ)、時刻(開始時刻や終了時刻)、回数、周期、順序などの制約が宣言的に記述された関数である。制約関数格納部125には、様々な条件に係る制約条件記述関数が格納されている。
【0053】
また、制約条件解消部104は、制約解消技術を利用した番組表の生成処理を行う手段である。制約条件解消部104は、ユーザに係る条件が制約条件記述関数によって表された情報を制約条件生成部103から受けて、これを解くべき問題として、その制約条件を解消(充足)する制約充足解を探す処理を行う。すなわち、制約条件解消部104では、番組内に構成することが可能な各コンテンツの様々な条件(コンテンツの属性)を考慮して、制約条件を満たす最適な番組表(コンテンツのタイムスケジュール)を見つけ出す処理が行われ、最適な番組表が作成・出力される。
【0054】
なお、番組は、時間やコンセプトなどによって区切られた大きな1つの単位である。番組には、所定のルールに基づいてカテゴリ化されたコーナーが1つ又は複数含まれている。また、コーナーには、番組の最小構成要素であるコンテンツが1つ又は複数含まれている。すなわち、「番組」−「コーナー」−「コンテンツ」は、階層的な構造を有している。例えば、図5を参照しながら、上述の番組、コーナー、コンテンツの階層的な関係について説明する。
【0055】
図5に図示されているように、1つの番組は、時間軸に沿って配列されたニュース、天気予報、CM、音楽、CM、トーク、音楽の各コーナーによって構成されている(1次コーナー層)。また、CMによって挟まれている音楽コーナーには、洋楽&1970年代のコーナー、アーティスト**の曲コーナー、ジャズorクラシックコーナー、テーマ:クリスマスコーナーが存在し(2次コーナー層)、例えば、アーティスト**の曲コーナーは、楽曲X、楽曲Y、楽曲Zの3つの音楽コンテンツによって構成されている(コンテンツ層)。また、ニュースコーナーには、ヘッドラインニュース及び経済ニュースの各コンテンツが含まれている。なお、その他の1次コーナー層を構成する各コーナーも同様に、多段のコーナー層を経て、再生すべきコンテンツと関連付けられているか、あるいは、図5に図示されているニュースコーナーのように、直接コンテンツと関連付けられている。したがって、1つの番組の再生は、時間軸に沿ってコンテンツ層に配列されるコンテンツの再生によって行われる。
【0056】
また、コンテンツ情報取得部107は、制約解消処理時に制約条件解消部104によって参照されるコンテンツの属性をコンテンツ属性情報格納部124から取得して、制約条件解消部104に供給するための手段である。また、コンテンツ情報取得部107は、一般情報格納部123に格納されている一般情報(一般的な大衆による人気度、時間帯や季節による人気度、これらの人気度の年齢・性別・職業などによる傾向など、各コンテンツに係る統計データを指す)を取得して、制約条件解消部104に供給することも可能である。
【0057】
また、コンテンツ属性情報格納部124には、上述のように、番組の一部分として利用可能な各コンテンツの属性に係る情報(コンテンツ属性情報)が格納されている。例えば、図3には、音楽コンテンツのコンテンツ属性情報が例示されている。図3に示すように、コンテンツが音楽コンテンツの場合、各コンテンツには、その楽曲のタイトル、アーティスト、時間(コンテンツの再生時間)、ジャンル(邦楽、洋楽、ジャズ、ロック、ポップスなどの様々な分類)、ヒットした年代、テーマ(クリスマスソング、スロー/アップテンポな曲などの雑多な情報)、タイアップ情報(テレビやラジオなどの他のメディアとの連携に係る情報)、チャート情報(ヒットチャートの履歴情報)などのコンテンツ属性情報があらかじめ関連付けられており、こうした情報が、コンテンツ属性情報格納部124に格納されている。
【0058】
なお、図3に示すコンテンツ属性情報は一例であり、図3に図示されているすべての情報を必ずしも有する必要はなく、また、図3に図示されている情報以外の情報をコンテンツ属性情報とすることも可能である。また、例えば、音楽コンテンツの場合には、各コンテンツのタイトルやアーティストなどの情報が格納されているCDDB(CD Database)を利用して、このCDDBからコンテンツ属性情報を取得できるようにすることも可能である。また、コンテンツの種別が音楽以外の種別(例えば、ニュースやトーク、天気予報、ドラマなどの多種多様な種別)の場合も同様に、制約条件解消部104による制約解消処理時に必要とされる情報が、コンテンツ属性情報としてコンテンツ属性情報格納部124に格納される必要がある。また、例えば、ジャンルや年代などのコンテンツ属性情報に関しては、例えば、洋楽=『3』、1970年代=『5』などのように、一定のルールに基づいて定められた値を設定することによって、その項目の内容を表現することが可能である。
【0059】
また、制約条件解消部104による制約解消処理において、制約条件を満たす解(番組表)が複数存在してしまう制約不足の状態になったり、制約条件が多すぎて(すなわち、制約条件が限定されすぎて)、最適解が発見されないオーバコンストレイント(制約過多)の状態になったりすることがある。これらの状態に対処するために、制約条件優先度取得部(制約過多対処部)105やスコア設定部(制約不足対処部)106が設けられている。
【0060】
制約条件優先度取得部105は、制約過多状態において制約条件を満たす解が導出されない場合に、制約条件(制約解消記述関数)に対して優先度を設定することによって、制約解消処理における最適解の導出の補助を行うための手段である。例えば、制約条件優先度取得部105は、履歴情報格納部121に格納されているユーザの履歴情報や嗜好情報、状況情報格納部122に格納されている状況情報(GPS(Global Positioning System)などによって取得される現在位置、現在日時、そのときのテレビ/ラジオ番組表、サービスプロバイダやコンテンツプロバイダの条件・状況、他者・他者から受ける条件、天候状況、車両内に居る場合には道路状況や同乗者の有無などの様々な状況に係る情報)、一般情報格納部123に格納されている一般情報などに基づいて、各制約条件に対して重み付けを行ったり優先度を設定したりすることが可能である。これにより、制約条件解消部104は、各制約条件に付与された重みを考慮した制約解消処理を行ったり、優先度が高く設定された制約条件を優先して、制約解消処理を行ったりすることが可能となる。
【0061】
なお、ユーザが、制約条件入力部101の入力インタフェースを用いて、制約条件優先度取得部105が設定する優先度を、ユーザ自らが設定することも可能である。また、ここでは、制約条件優先度取得部105は、各制約条件に関して優先度の設定を行っているが、各コンテンツに対して(又は、コンテンツの属性情報を対象として)、優先度の設定を行うようにすることも可能である。
【0062】
また、スコア設定部106は、各コンテンツに対してスコアを設定することによって、制約解消処理における最適解の導出の補助を行うための手段である。具体的には、スコア設定部106は、制約条件を満たす複数の解(番組表)を構成するすべてのコンテンツに対してスコアを設定した後、このスコアをパラメータとした目的関数の計算を行う目的関数計算部111に対して、スコアを供給して目的関数の計算を行わせ、この計算結果に基づいて、制約条件を満たす複数の番組表に係るランキングを決定する。このランキングに係る情報は、スコア設定部106から制約条件解消部104に供給され、制約条件解消部104は、ランキングに係る情報によって差別化された複数の解のうち、ランキングの上位に存在する一部の解(1つ又は複数の番組表)を、最適な番組表として出力することが可能となる。
【0063】
また、このスコア設定部106に関しても、上記の制約条件優先度取得部105と同様に、ユーザの履歴情報や嗜好情報、状況情報、一般情報などに基づいて、各コンテンツにスコアを設定することが可能である。これにより、制約条件解消部104は、上記のスコアをパラメータとした目的関数の値を算出して、その算出結果の比較を行うことによって、複数の番組表の差別化を行うことが可能となる。
【0064】
なお、ユーザが、制約条件入力部101の入力インタフェースを用いて、スコア設定部106が設定するスコアを、ユーザ自らが設定することも可能である。また、ここでは、スコア設定部106は、各コンテンツに関してスコアの設定を行っているが、各制約条件(各制約条件記述関数)に対して、スコアの設定を行うようにすることも可能である。
【0065】
また、上記の制約条件優先度取得部105やスコア設定部106による補助に基づいて、制約条件解消部104で制約解消処理が行われた場合には、最適な番組表を求める過程で、複数の番組表に順位付けが行われることになる。制約条件解消部104は、このようにして求められた番組表のうち、最も順位の高い番組表をただ1つのみ出力することも可能であり、また、所定の順位(例えば、上位3つ)までの番組表(例えば、3つの番組表)やその順位を出力することも可能である。
【0066】
制約条件解消部104によって作成された最適な番組表は、番組表出力部108やコンテンツ取得部109に供給される。番組表出力部108は、例えば、視覚的な情報を出力するモニタや聴覚的な情報を出力するスピーカなどであり、番組表出力部108からユーザに対して、番組表が作成された旨や番組表そのものが報知される。また、制約不足や制約過多の場合に、番組表出力部108から複数の番組表を選択候補として出力し、ユーザに選択させるようにすることも可能である。また、番組表出力部108は、所定の記録媒体への情報書き込み手段や通信手段でもよく、番組表出力部108を通じて、番組表が所定の記録媒体に記録されたり、他の通信装置やネットワークに送信されたりしてもよい。
【0067】
また、コンテンツ取得部109は、制約条件解消部104によって作成された番組表に基づいて、コンテンツを取得するための手段である。なお、コンテンツ取得部109がコンテンツを取得するためのコンテンツの格納場所(コンテンツの取得先)は任意である。すなわち、番組の構成要素として利用可能なコンテンツは特に限定されず、放送信号によって放送されてくるコンテンツ、ネットワークによって配信されるコンテンツ、ローカルコンテンツ(CDやDVDに格納されているコンテンツ)などを始めとする任意のコンテンツを利用することが可能である。また、コンテンツ取得部109によって取得されたコンテンツは、番組再生部110においてビデオ再生やオーディオ再生が行われる。
【0068】
次に、図2を参照しながら、本発明の実施の形態における動作の概要について説明する。図2は、本発明の実施の形態における番組表作成方法の一例を示すフローチャートである。なお、ここでは、図1に示す番組表作成装置100に基づいて、図2に示すフローチャートの説明を行う。
【0069】
番組表作成処理を行う際に、まず、制約条件生成部103は、制約条件入力部101や制約条件学習部102などから、ユーザによって入力される条件やユーザの嗜好情報などのユーザに係る条件を取得し(ステップS201)、これらの条件(制約条件)に基づいて、制約条件記述関数による制約条件の記述を行う(ステップS203)。そして、この制約条件を記述した制約条件記述関数に基づいて、制約条件解消部104による制約解消処理が行われる。
【0070】
制約条件解消部104による制約解消処理では、まず、制約条件解消部104が、制約条件記述関数の解析を行う(ステップS205)。そして、制約条件解消部104は、コンテンツ情報取得部107を通じて、コンテンツ属性情報格納部124内のコンテンツ属性情報を参照しながら、制約条件が矛盾なく充足されるすべての番組表(制約充足解)を求める、制約解消技術に基づいた制約問題の解決処理を行う(ステップS207)。最も単純なアルゴリズムとしては、例えば、バックトラックに基づく探索によって矛盾を解消する値を自動的に判定していく方法が挙げられるが、制約条件解消部104において制約問題の解決アルゴリズムは、特に限定されるものではない。
【0071】
制約解消技術に基づいた制約問題の解決処理では、例えば、以下の条件が参照されて、コンテンツの選択や、コンテンツの配置順序の決定を行うことが可能である。例えば、コンテンツに対して設定されたスコアが所定の閾値以上であるコンテンツのみを選択し、この所定の閾値以上のコンテンツのみを用いて制約問題の解決処理を行うことが可能である。
【0072】
また、スコアの高いコンテンツのみを常に選択しているだけでは、作成される番組表がいつでもほぼ同一になってしまうため、コンテンツ選択時にランダム性を導入することも可能である。例えば、コンテンツに対して設定されたスコアが所定の閾値以上であるコンテンツが所定の割合だけ含まれるようにコンテンツを選択して、こうして選択されたコンテンツを用いて制約問題の解決処理を行うことが可能である。また、例えば、コンテンツに対して設定されたスコアに対してランダム値を積算した積算結果を新たなスコアとみなし、この新たなスコアが所定の閾値以上であるコンテンツのみを選択したり、この新たなスコアが所定の閾値以上であるコンテンツが所定の割合だけ含まれるようにコンテンツを選択したりすることによって、こうして選択されたコンテンツを用いて制約問題の解決処理を行うことが可能である。
【0073】
また、コンテンツの配置順序に関して、スコアの高いコンテンツが各コーナーのどの部分に配置されるべきかを考慮したり、隣り合うコンテンツの相関性を考慮しながら配置位置を定めたりすることも可能である。こうしたコンテンツの配置順序の決定では、例えば、各コーナーにおいて、スコアの高いコンテンツをコーナーの最初及び/又は最後やコーナーの途中に配置したり、各コンテンツの属性の相関性がコーナー全体の流れを考慮して最も高くなるように配置したりすることによって、コンテンツの配置順序の最適化が行われる。なお、コンテンツの配置順序の最適化に関しては、後で詳細に説明する。また、コンテンツの配置順序の最適化は、番組表の生成過程(例えば、ステップS207)で行われてもよく、また、制約問題の解決処理後(ステップS217の最適な番組表の報知前)に行われてもよい。
【0074】
また、ステップS207における制約解消技術に基づいた制約問題の解決処理では、以下の3つの結果(第1〜第3の結果)のうちのいずれか1つが出ることが予想される(ステップS209、S211)。第1の結果は、制約充足解が1個のみ発見される状態である。第2の結果は、制約不足によって2個以上の制約充足解が発見される状態である。第3の結果は、制約過多によって制約充足解(制約充足解が0個)が発見されない状態である。
【0075】
制約充足解が1個のみ発見される第1の結果の場合には、制約条件解消部104は、この制約充足解をユーザに提示すべき最適な番組表として決定し、後述のステップS217に進み、ユーザに対して、最適な番組表の報知が行われる。
【0076】
また、制約充足解が2個以上発見される第2の結果の場合には、スコア設定部106に基づく目的関数生成部111による番組表のランキング処理が行われる(ステップS213)。このステップS213の処理では、例えば、制約条件解消部104が、スコア設定部106に対してコンテンツにスコアを決めてランク付けを行うように要求する。このとき、スコア設定部106は、各コンテンツのスコアを決定するとともに、すべての番組表(制約充足解)に関して、スコアをパラメータとして用いた目的関数の計算を目的関数計算部111に行わせて、その計算結果から、各制約充足解のランキングを決定する。そして、制約条件解消部104は、このランキングに係る情報を参照して、ランキングの最上位に位置する制約充足解、又は、ランキングの上位に位置する複数の制約充足解を最適な番組表として出力する。
【0077】
また、制約充足解が発見されない第3の結果の場合には、制約条件優先度取得部105が、ステップS207の制約問題の解決処理で用いられた制約条件に対して設定されている優先度を取得するとともに、優先度の低い制約条件を削除したうえで、残りの制約条件を制約条件解消部104に再度供給する処理を行う(ステップS215:制約条件優先度取得部に基づく制約条件の緩和処理)。すなわち、このステップS215における処理では、一部の制約条件が削除されて、制約充足解を求める際の制約条件が緩和される。そして、ステップS207に戻って、緩和された制約条件に基づく制約問題の解決処理が改めて行われる。
【0078】
具体的には、複数の段階の優先度(例えば、「必須」、「強い」、「普通」、「弱い」の4段階の優先度)が、あらかじめ制約条件に設定されており、最初に行われる制約問題の解決処理(ステップS207)では、すべての優先度に係る制約条件を充足する制約充足解の探索が行われる。そして、この最初の制約問題の解決処理で制約充足解が発見されなかった場合(解が0個の場合)には、ステップS215の処理によって、最も低い優先度(「弱い」)の制約条件が削除され、「弱い」以外の優先度(「必須」、「強い」、「普通」の3段階の優先度)に係る制約条件を新しい制約条件として、この新しい制約条件に基づいた2回目の制約問題の解決処理(ステップS207)が再度行われる。
【0079】
2回目の制約問題の解決処理においても制約充足解が発見されなかった場合には、削除する制約条件に係る優先度を上げて、「普通」の制約条件が削除され、「必須」、「強い」の2段階の優先度に係る制約条件を新しい制約条件として、この新しい制約条件に基づいた3回目の制約問題の解決処理(ステップS207)が再度行われる。さらに、この場合でも制約充足解が発見されなかった場合には、「強い」の優先度の制約条件が削除され、「必須」のみの優先度に係る制約条件を新しい制約条件として、この新しい制約条件に基づいた3回目の制約問題の解決処理(ステップS207)が再度行われる。
【0080】
このように、制約条件の緩和を段階的に行っていくことにより、1個又は複数の制約充足解が発見された時点で、上述したステップS211以降の処理に進み、制約充足解が存在する場合の処理が行われる。また、優先度を最も緩和した状態(例えば、上述の場合において、「必須」のみの優先度に係る制約条件)で行われた制約問題の解消処理においても、制約充足解が発見されなかった場合には、制約条件を満たす制約充足解(最適な番組表)が存在しない旨を、番組表出力部108から報知するように構成することも可能である。なお、上述の例では、「必須」、「強い」、「普通」、「弱い」の4段階の優先度があらかじめ設定されているが、この優先度の設定の態様や優先度の段階数などは、任意に設定可能である。
【0081】
そして、制約充足解が1個又は複数発見された場合には、その制約充足解が最適な番組表として、制約条件解消部104から番組表出力部108やコンテンツ取得部109に対して出力され、最適な番組表の報知(ステップS217)や最適な番組表に基づくコンテンツの再生(番組の再生)(ステップS219)が行われる。なお、このとき、番組表出力部108から報知された最適な番組表に関して、ユーザが確認作業又は選択作業を行うことが望ましい。
【0082】
次に、本発明の実施の形態における番組表作成装置100の制約条件生成部103によって取得されるユーザに係る条件と、制約条件解消部104によって作成される番組表について、それぞれ具体的に説明する。
【0083】
図4は、本発明の実施の形態における番組表作成時に参照される制約条件の一例と、この制約条件に基づいて導出された最適解の一例とをそれぞれ模式的に示す図である。番組表作成時に、制約条件生成部103には、ユーザに係る条件として、例えば、図4に示すような制約条件が供給される。図4には、1つの番組全体は60分〜70分であるという条件(番組全体の時間に係る条件)、ニュースは10分以内であるという条件(コーナーの長さに係る条件)、ニュースの次に天気予報が挿入されるという条件(コーナーやコンテンツの順序に係る条件)、その他の時間はすべて音楽を流すという条件(ジャンルに係る条件)が、制約条件の一例として図示されている。
【0084】
なお、図4に図示されている制約条件以外にも様々な条件が設定可能である。また、例えば、『「ニュースコーナー」の次は「音楽コーナー」、1回の「音楽コーナー」は60分以上70分以下、「音楽コーナー」の中には「洋楽コーナー」と「邦楽コーナー」を入れて、それぞれが40分以上50分以下、20分以上30分以下、「洋楽コーナー」には「1970年代コーナー」と「最新ヒットコーナー」があり、それぞれ約半分ずつとするとともに、「1970年代コーナー」には、必ずアーティスト●●の楽曲◎◎を1回入れる』などのように、詳細な制約条件を設定することが可能である。
【0085】
また、図4には、上記の制約条件に基づいて、制約条件解消部104によって導出される、制約条件を満たす最適解の一例が図示されている。この最適解は、制約条件解消部104によって階層的なコーナーの種類が特定され、さらに、そのコーナー内に含まれるコンテンツが特定されて作成される最適な番組表(番組のタイムスケジュール)そのものであり、制約過多の場合を除いて、基本的には、すべての制約条件が満たされている。なお、制約過多の場合には、上述のように、各制約条件に優先度を設定することによって、いずれか1つ又は複数の優先度の低い制約条件が犠牲となる形で、最適解が導出されることとなる。また、図4に示す制約条件を満たす最適解は、図5において、番組、コーナー、コンテンツの階層的な関係の説明の際に参照した構造と同一の構造を有している。
【0086】
制約条件解消部104は、図4に示すような最適な番組表を作成する際に、階層的なコーナーを特定する方法として、例えば、各コンテンツに係る各属性の値の論理式を用いることが可能である。すなわち、例えば、音楽コーナーにおける「洋楽&1970年代コーナー」に含まれるコンテンツは、音楽コンテンツが有する属性のうちの「ジャンル名=洋楽」、「年代=1970年代」の2つの値のAND演算によって特定される。
【0087】
また、図6は、本発明の実施の形態における番組表作成装置によって最終的に作成される番組表の一例を示す模式図である。図6には、17時から18時までの1時間番組という制約条件がさらに課された場合に作成された最適な番組表の一例が模式的に図示されている。この場合、番組を構成するコーナー名又はコンテンツ名(図6では、一例として、コンテンツ名は適当なアルファベット3文字で記載されている)と共に、各コーナー又は各コンテンツの再生開始タイミングを示すコンテンツ開始時刻が定められる。なお、コンテンツ名の欄には、そのコンテンツを取得するための位置情報や識別情報を含む情報が記載されており、コンテンツ取得部109は、この情報を参照することによって、番組再生部110が所定の再生開始タイミングでコンテンツを再生できるように、コンテンツの取得を行う。
【0088】
また、上述のように番組表を作成した後に、番組表の作成過程で課された制約条件を満たしながら、番組の一部(コーナーの一部やコンテンツの一部)を再配置して最適化を行い、最適化された番組表を最終的な番組表として出力することも可能である。この番組作成後の最適化(コーナーやコンテンツの配置順序の最適化)は、コーナー内、番組内のコンテンツをシャッフルして聴きたいというユーザ側のニーズに応えるものであり、番組の一部の再配置を行うことによって、番組全体に対するユーザの評価が高まるという効果が得られる。
【0089】
制約条件を満たす範囲で番組の一部をシャッフルする方法としては、いくつかの方法が考えられる。最も単純な方法としては、生成された番組のコーナーやコンテンツを、制約条件を満たす範囲でランダムにシャッフルする方法である。
【0090】
また、コーナー内の特定の場所(コーナー内の相対位置)にユーザが最も聴きたいと思われるコンテンツを配置することも効果的である。これは、ユーザが、例えば音楽コーナーの最初及び/又は最後や途中で、自分の好みの楽曲を聴きたいなどのニーズに応えるものであり、このようにユーザの好みのコンテンツの再生タイミングを考慮することで、番組全体に対するユーザの評価が高まるという効果が得られる。
【0091】
ユーザの好みのコンテンツの再生タイミングを考慮しながら、制約条件を満たす範囲で番組の一部の並べ換えを行う方法としては、下記の4つのタイプが考えられる。これらの4つの方法について、図7A〜図7Dを参照しながら説明する。
【0092】
図7Aは、本発明の実施の形態におけるコーナー内のコンテンツに係る配置最適化の第1の例を示す図である。作成後の番組に含まれる各コンテンツは、例えば、番組作成過程で設定されたスコアを有している。このスコアは、上述のように、ユーザの履歴情報や嗜好情報、状況情報、一般情報などに基づいて各コンテンツに対して設定可能な情報であり、すなわち、ユーザの履歴、嗜好や番組再生時の状況、一般的な人気度などが総合的に表された数値である。
【0093】
図7Aには、制約条件を満たしながら、コーナー内で複数のコンテンツの並べ換えを行う場合に参照される時刻とスコアとの関係が図示されている。例えば、コーナー内で複数のコンテンツを並べ換える際に、図7Aに図示されているように、コーナーの後半に進むにつれてスコアの高いコンテンツが配置されるようにする。したがって、図7Aに図示されているコンテンツの並べ換えの方法は、後半盛り上がり型(昇順パターン)と呼ぶことができる。
【0094】
例えば、5つの楽曲コンテンツ(「楽曲P」〜「楽曲T」)を含むコーナー内が存在しており、「楽曲P」のスコアは1、「楽曲Q」のスコアは3、「楽曲R」のスコアは5、「楽曲S」のスコアは7、「楽曲T」のスコアは9であるとする。これらの上記5つの楽曲コンテンツの並べ換えを行う場合、各楽曲コンテンツのスコアを参照して、図7Aに図示されている後半盛り上がり型に配置した結果、このコーナーに含まれる楽曲コンテンツの順序は、「楽曲P」、「楽曲Q」、「楽曲R」、「楽曲S」、「楽曲T」に最適化される。
【0095】
また、図7Bは、本発明の実施の形態におけるコーナー内のコンテンツに係る配置最適化の第2の例を示す図である。例えば、コーナー内で複数のコンテンツを並べ換える際に、図7Bに図示されているように、コーナーの前半部分にスコアの高いコンテンツが配置されるようにする。したがって、図7Bに図示されているコンテンツの並べ換えの方法は、前半盛り上がり型(降順パターン)と呼ぶことができる。
【0096】
例えば、5つの楽曲コンテンツ(「楽曲P」〜「楽曲T」)を含むコーナー内が存在しており、「楽曲P」のスコアは1、「楽曲Q」のスコアは3、「楽曲R」のスコアは5、「楽曲S」のスコアは7、「楽曲T」のスコアは9であるとする。これらの上記5つの楽曲コンテンツの並べ換えを行う場合、各楽曲コンテンツのスコアを参照して、図7Bに図示されている前半盛り上がり型に配置した結果、このコーナーに含まれる楽曲コンテンツの順序は、「楽曲T」、「楽曲S」、「楽曲R」、「楽曲Q」、「楽曲P」に最適化される。
【0097】
また、図7Cは、本発明の実施の形態におけるコーナー内のコンテンツに係る配置最適化の第3の例を示す図である。例えば、コーナー内で複数のコンテンツを並べ換える際に、図7Cに図示されているように、コーナーの途中部分にスコアの高いコンテンツが配置されるようにする。したがって、図7Cに図示されているコンテンツの並べ換えの方法は、途中盛り上がり型(山型パターン)と呼ぶことができる。
【0098】
例えば、5つの楽曲コンテンツ(「楽曲P」〜「楽曲T」)を含むコーナー内が存在しており、「楽曲P」のスコアは1、「楽曲Q」のスコアは3、「楽曲R」のスコアは5、「楽曲S」のスコアは7、「楽曲T」のスコアは9であるとする。これらの上記5つの楽曲コンテンツの並べ換えを行う場合、各楽曲コンテンツのスコアを参照して、図7Cに図示されている途中盛り上がり型に配置した結果、このコーナーに含まれる楽曲コンテンツの順序は、「楽曲P」、「楽曲R」、「楽曲T」、「楽曲S」、「楽曲Q」に最適化される。
【0099】
また、図7Dは、本発明の実施の形態におけるコーナー内のコンテンツに係る配置最適化の第4の例を示す図である。例えば、コーナー内で複数のコンテンツを並べ換える際に、図7Dに図示されているように、コーナーの最初及び最後にスコアの高いコンテンツが配置されるようにする。したがって、図7Dに図示されているコンテンツの並べ換えの方法は、最初及び最後盛り上がり型(谷型パターン)と呼ぶことができる。
【0100】
例えば、5つの楽曲コンテンツ(「楽曲P」〜「楽曲T」)を含むコーナー内が存在しており、「楽曲P」のスコアは1、「楽曲Q」のスコアは3、「楽曲R」のスコアは5、「楽曲S」のスコアは7、「楽曲T」のスコアは9であるとする。これらの上記5つの楽曲コンテンツの並べ換えを行う場合、各楽曲コンテンツのスコアを参照して、図7Dに図示されている最初及び最後盛り上がり型に配置した結果、このコーナーに含まれる楽曲コンテンツの順序は、「楽曲S」、「楽曲Q」、「楽曲P」、「楽曲R」、「楽曲T」に最適化される。
【0101】
また、コーナー内の各コンテンツの相関性を考慮してコンテンツの再配置を行うことも効果的である。これは、あるコンテンツの直後には、そのコンテンツのジャンル、アーティスト、年代、曲調などを始めとするコンテンツの属性に係る相関が高く、類似していると判断される別のコンテンツを配置して、番組全体の流れを滑らかにするという効果が得られる。
【0102】
例えば、あるコーナーを構成するK個のコンテンツのそれぞれの相関性を判断する場合、例えば、K個のコンテンツのそれぞれのジャンルやアーティスト、年代、曲調などの相関性に点数を付ける。これは、例えば、ジャンルに関してジャズの後にクラッシックが配置される場合には10点満点中8点、曲調に関して静かな曲調の後にややうるさい曲調が配置される場合には10点満点中2点などのように、あらかじめ、属性に入る変数間に点数を定めておくことで、それぞれ属性間の相関性を表す点数付けが可能となる。そして、K個のコンテンツの配置(K!通り)のそれぞれに関して、各属性間の相関性を表す点数の総和を計算し、その計算結果が最も高いコンテンツの配置を、コーナー内のコンテンツの流れが最も滑らかとなるコンテンツの配置とみなす。
【0103】
なお、コンテンツに係るスコアは、コンテンツ単独で決まる場合と、前後のコンテンツに依存して動的に決まる場合がある。また、コンテンツに係るスコアは、状況などに応じても動的に変更可能である。また、上述の例では、コンテンツに係るスコアを用いて、コンテンツの配置の最適化を行っているが、例えば、属性の相関(コンテンツベースフィルタ)や、コンテンツの相関(協調フィルタ)によって、コンテンツの配置の最適化を行うことも可能である。
【0104】
次に、本発明の実施の形態における制約解消処理のアルゴリズムの一例について具体的に説明する。本発明では、例えば図4及び図5に図示されているように、番組、コーナー、コンテンツが階層的な関係を有していることを利用して、各階層において定められた制約条件を、その上の階層及び/又は下の階層に伝播させることによって、効率的に制約解消処理を行うことが可能である。
【0105】
まず、図8を参照しながら、本発明の実施の形態における制約解消処理において用いられるツリー構造の概念について説明する。図8は、本発明の実施の形態における制約解消処理において用いられるツリー構造の概念を模式的に示す図である。なお、図8では、2つのコーナー階層(メインコーナー層及びサブコーナー層:上述の1次コーナー層及び2次コーナー層に対応)を有するツリー構造が図示されているが、コーナー層は1つの階層又は3つ以上の階層であってもよい。
【0106】
図8に図示されているように、1つの番組は、例えば、音楽、ニュース、CM、天気予報などの大分類を表すメインコーナー層、メインコーナー層の属性を満たし、メインコーナー層の直下の層を構成するサブコーナー層、さらに、サブコーナー層の直下に属し、番組を構成する最小要素となるコンテンツ層によって構成されており、この関係をツリー構造によって図示することが可能である。なお、以降、ツリー構造を形成する要素(図8では矩形によって図示されている)をエレメントと呼ぶことにする。また、エレメント間の線分は、上位の層が下位の層の属性を有していることを表しており、各エレメントは、ツリー構造のどの位置に配置されるかを示す情報を有している。
【0107】
また、図8に図示されている各エレメントは、言い換えると単なる入れ物に過ぎず、この入れ物の中にコンテンツ属性情報が入ることによって、番組表の生成が行われる。本発明の実施の形態における制約解消処理では、エレメントは、例えば、エレメントに入るコーナー又はコンテンツを特定するためのインデックス(I1〜I15)、エレメントの時間幅(D1〜D15)、エレメントの開始時刻(S1〜S15)、エレメントの終了時刻(E1〜E15)の4つの変数の集合によって表すことが可能である。なお、エレメントの開始時刻及び終了時刻が定まれば、エレメントの時間幅が定まるため、エレメントの総時間、開始時刻、終了時刻のいずれか1つは冗長な情報であるが、実際に計算を行なう際には、エレメントの時間幅、開始時刻、終了時刻のすべての情報を設定することによって計算効率が向上する。
【0108】
エレメントの変数に対して、ツリー構造によって各階層間で定まる制約は、以下の通りである。まず、あるエレメントの時間幅と、そのエレメントの直下に存在する複数のエレメントのそれぞれの時間幅の和とは、等しくなければならない。すなわち、図8の例では、例えばD1=D2+D3であり、D2=D4+D5であり、D4=D8+D9である。
【0109】
また、あるエレメントの開始時刻と、そのエレメントの直下に存在する最初のエレメントの開始時刻とは等しくなければならず、さらに、これらの開始時刻は、上記の最初のエレメントの直前に位置するエレメントの終了時刻と等しくなければならない。すなわち、図8の例では、例えばS1=S2=S4=S8であり、また、S3=S6=E5である。
【0110】
また、あるエレメントの終了時刻も同様に、そのエレメントの直下に存在する最後のエレメントの終了時刻に等しくなければならず、さらに、これらの終了時刻は、上記の最後のエレメントの直後に位置するエレメントの開始時刻と等しくなければならない。すなわち、図8の例では、例えばE1=E3=E7=E15であり、また、E2=E5=S6である。
【0111】
また、あるエレメントに対して属性が与えられた場合には、そのエレメントの直上及び/又は直下のエレメントに対して、その属性は伝播される。すなわち、例えばサブコーナー層のあるエレメントに対して、アーティスト**の曲という属性が制約された場合には、そのエレメントの下位に属するコンテンツは、アーティスト**の曲という属性を有する楽曲コンテンツに制約されるとともに、そのエレメントの上位に属するコンテンツは、アーティスト**の曲という属性が含まれるカテゴリ(例えば、音楽ジャンル)に制約される。
【0112】
次に、図8に図示されているツリー構造を用いた制約解消処理のアルゴリズムについて説明する。図9は、本発明の実施の形態におけるツリー構造を用いた制約解消処理のアルゴリズムの一例を示すフローチャートである。なお、この図9に図示されているフローチャートは、図2のステップS207における制約問題の解決処理における詳細な処理であると言える。
【0113】
制約解消処理では、図8に図示されているツリー構造の各エレメントの変数(上述のインデックス、時間幅、開始時刻、終了時刻)のすべてを決定するための処理が行われる。なお、各エレメントのインデックスが決定すれば(すなわち、各エレメントに入るコンテンツ及びコーナーが決定すれば)、その他のすべての変数も定まり、完全な番組表が作成されることになる。ここでは、図9を参照しながら、あるエレメントのインデックスを定めた後に(あるインデックスを束縛した後に)、ツリー内で束縛を伝播させることによって、制約解消処理の対象となるコンテンツの限定を行う場合について説明する。
【0114】
図9において、まず、あるエレメントに対してインデックスが入れられることによって、あるエレメントのインデックスが束縛される(ステップS901)。ここで、インデックスが束縛されたエレメントがどの階層に属しているかによって、定められたインデックスの伝播の態様が異なる。
【0115】
ステップS902及びS903は、インデックスが束縛されたエレメントがどの階層に属しているかに応じて場合分けを行うステップである。すなわち、図9に図示されているフローチャートにおいて、インデックスが束縛されたエレメントがメインコーナーの場合にはステップS904に進み、インデックスが束縛されたエレメントがサブコーナーの場合にはステップS905に進み、インデックスが束縛されたエレメントがコンテンツの場合にはステップS907に進む。
【0116】
インデックスが束縛されたエレメントがメインコーナーの場合、このメインコーナーの下位のエレメントに対して、定められたインデックスが伝播し、その結果、下位のエレメントのインデックスが限定される(ステップS904)。例えば、メインコーナーが「音楽コーナー」に定められた場合、その直下に属するサブコーナーのエレメントに入るインデックスは、「音楽コーナー」の直下に配置され得る「1970年代コーナー」や「ジャズコーナー」、「クラシックコーナー」などの属性を有するものに限定される。
【0117】
また、インデックスが束縛されたエレメントがサブコーナーの場合、このサブコーナーの上位及び下位の両方のエレメントに対して、定められたインデックスが伝播し、その結果、上位及び下位のエレメントのインデックスが限定される(ステップS905、S906)。例えば、サブコーナーが「邦楽コーナー」に定められた場合、その直下に属するコンテンツのエレメントに入るインデックスは、「邦楽コーナー」の直下に配置され得る邦楽アーティストの楽曲の属性を有するものに限定され、また、その直上に属するメインコーナーのエレメントに入るインデックスは、例えば「音楽コーナー」に限定される。
【0118】
また、インデックスが束縛されたエレメントがコンテンツの場合、このコンテンツの上位のエレメントに対して、定められたインデックスが伝播し、その結果、上位のエレメントのインデックスが限定される(ステップS907)。例えば、コンテンツが「楽曲Z」に定められた場合、その直上に属するサブコーナーのエレメントに入るインデックスは、この「楽曲Z」の直上に配置され得る「アーティスト**の曲」や「洋楽コーナー」などの属性を有するものに限定される。また、この場合には、あるコンテンツが定まるので、番組全体のどこかにこのコンテンツが埋め込まれることになり、番組全体の総時間の一部が、このコンテンツの時間幅によって満たされる(束縛される)という条件が新たに発生する(ステップS908)。
【0119】
そして、他の制約条件が付与されているか否かを考慮し(ステップS909)、他の制約条件が付与されている場合には、他の制約条件に加えて、上述のステップS901〜S908の束縛を加えた制約解消処理を行い(ステップS910)、制約条件が解消された解の集合が導出される。
【0120】
また、番組表作成のための各制約条件としては、例えば、下記のいずれか1つ又はこれらの組み合わせの制約条件が設定されて、制約解消処理が行われる。例えば、制約条件として、エレメントの開始時刻や終了時刻に関する制約が行われる。例えば、ニュースは、番組開始時刻から30分後に開始し40分後に終了するなどの制約がこれに当てはまる。
【0121】
また、例えば、制約条件として、エレメントの時間幅に関する制約が行われる。例えば、ニュースは10分間とするなどの制約がこれに当てはまる。また、例えば、制約条件として、エレメントの順序制約に関する制約が行われる。例えば、ニュースの直後に天気予報を入れるなどの制約がこれに当てはまる。
【0122】
一方、他の制約条件が存在しない場合には、上述のステップS901〜S908の束縛条件を満たす解の集合が導出される。この場合には、新たなインデックスの束縛や制約条件の付与などによって、図9に図示されているフローチャートに係る処理が再び行われてもよい。
【0123】
なお、上述の方法ではインデックスを束縛することによって制約解消処理の対象となるコンテンツの束縛を行っているが、初期値として定める情報はインデックスに限定されず、例えば、インデックスの束縛を行わずにエレメントの時間幅に係る束縛を行うことによって、制約解消処理の対象となるコンテンツの束縛を行ってもよい。
【0124】
また、エレメントの数を決定する必要があるが、このエレメントの数の決定アルゴリズムは、任意のアルゴリズムを使用することが可能であり、本発明においては、特に限定されるものではない。また、図9に図示されているフローチャートでは、どの階層のインデックスを決定してもよいアルゴリズムが図示されているが、実際の計算においては、より上位の階層から下位の階層に向かってインデックスの束縛条件を伝播させていくことが望ましい。
【0125】
次に、番組表の再スケジューリングについて説明する。上述のように番組表が作成された後に、番組表の再スケジューリング(再構成)を行うことも可能である。この番組表の再スケジューリングは、任意のタイミングで開始可能であるとともに、例えばユーザインタフェースを通したユーザからの再スケジューリングの指示、番組全体の時間延長(一例としては、本発明に係る番組表作成装置が車両に実装されており、目的地までの予想所要時間に基づいて番組表が作成されたものの、渋滞などの道路状況の影響によって目的地への予想到着時刻が延び、番組全体の総時間も延長される場合)や番組視聴状況の変更(一例としては、新たな同乗者が車両に乗り込んだ場合)などの任意のトリガに応じて開始可能である。
【0126】
例えば、作成された番組表に基づいてコンテンツの再生が行われている途中で、任意のトリガに応じて番組表の再スケジューリングを行う旨が決定された場合、いったんユーザに承認されている現在の番組構成を大幅に変更することは望ましくなく、現在の番組構成と類似した番組表の再スケジューリングが行われることが望ましい。
【0127】
ここで、図10を参照しながら、番組表の再スケジューリングの開始タイミングの一例について説明する。図10は、本発明の実施の形態における番組表の再スケジューリングの開始タイミングの一例を示す図である。なお、図10では、図7A〜図7Dと同様に番組表がツリー構造によって表現されている。
【0128】
図10には、メインコーナーM1、M2、サブコーナーS1〜S4、コンテンツC1〜C8により構成されている番組Pが図示されている。ここで、コンテンツC5の再生中に、何らかの番組の再スケジューリングのトリガが発生したとする。この場合、トリガ発生時に再生されているコンテンツC5より後ろの構成が変更される。すなわち、図10に図示されているツリー構造のうち、メインコーナーM1、サブコーナーS1、S2、コンテンツC1〜C5に係るエレメント及びツリー構造に関しては変更を加えず、点線によって囲まれている番組P、メインコーナーM2、サブコーナーS3、S4、コンテンツC6〜C8に係る領域に変更が加えられる。なお、この番組表の再スケジューリングに係る変更では、各エレメント内のインデックス、時間幅、開始時刻、終了時刻の4つの変数の変更が行われたり、エレメントの追加、削除などの処理が行われたりする。
【0129】
こうした番組表の再スケジューリング処理の際には、例えば再スケジューリング前の番組表や、この番組表の作成過程で生成された情報を有効利用することによって、番組表の再スケジューリング処理に費やされる処理時間や処理負荷の軽減が実現可能である。このような効率的な番組表の再スケジューリングを行う方法として、例えば、初期値利用法及び制約記録法の2つの再スケジューリング方法、あるいはこれらのスケジューリング方法の組み合わせを利用することが可能である。なお、以下に、初期値利用法及び制約記録法について説明するが、その他の任意の再スケジューリング方法を利用して、番組表の再スケジューリングを行うことも可能である。
【0130】
まず、再スケジューリングにおける初期値利用法について説明する。この初期値利用法は、現在の解(番組表)を初期値として利用し、新たに制約条件を課することによって、再スケジューリングを行い、新たな解を求める手法である。例えば、図10に図示されている例の場合には、メインコーナーM1、サブコーナーS1、S2、コンテンツC1〜C5に係るエレメントの変数を固定するとともに、番組P、メインコーナーM2、サブコーナーS3、S4、コンテンツC6〜C8に係るエレメントの変数に関しては、現在の設定を初期値として、新たな解の探索処理が行われる。これにより、番組表の再スケジューリングの際に、現在の番組表の構成に類似した新たな番組表を高速で再構成することが可能となる。
【0131】
次に、再スケジューリングにおける制約記録法について説明する。この制約記録法は、現在の解(番組表)を求める過程で随時生成された情報(現在の番組表の生成過程に係る計算結果などの情報)を記録しておき、再スケジューリング時に、この情報を再利用して新たな解を求める手法である。再スケジューリング時に利用可能な情報としては、例えば制約条件の組み合わせに対する解の候補集合や、その他の様々な制約解消処理の履歴などである。例えば、図10に図示されている例の場合には、メインコーナーM1、サブコーナーS1、S2、コンテンツC1〜C5に係るエレメントの変数を固定するとともに、番組P、メインコーナーM2、サブコーナーS3、S4、コンテンツC6〜C8に係るエレメントの変数に関してはいったん空にし、例えば、各変数の取りうる範囲の値や、その他の変更のない制約条件(例えば、番組中にニュースは1回など)の情報を再利用して、新たな解の探索処理が行われる。これにより、番組表の再スケジューリングの際に、変更のない制約条件に対する解の候補集合が再利用可能となり、現在の番組表の構成に類似した新たな番組表を高速で再構成することが可能となる。
【0132】
以上、上述の実施の形態において説明した通り、本発明によれば、制約解消技術(制約充足技術)を利用して、様々な条件に応じて、コンテンツの再生を行うための詳細な番組表を自動的に作成することが可能となる。また、特に、制約解消技術として、制約解消技術に含まれる制約論理プログラミング技術を利用することが可能となる。
【0133】
なお、本発明に係る制約解消技術を利用した番組表の作成アルゴリズムは、あらゆる番組表(マルチメディア番組表)の作成状況において利用可能である。すなわち、コンテンツの再生を行おうとしているユーザが、そのコンテンツの再生に係る番組表を作成する場合においても利用可能であり、また、ラジオ番組やテレビ番組などの制作や配信を行っている番組制作側において、番組を作成する場合においても利用可能である。また、本発明に係る番組表の作成では、番組表の自動作成が可能であることが特徴の1つであり、例えば、ユーザの操作を少なくすることによって運転の安全性を向上させる車載装置において利用されることが有用である。また、上述のように、特に、処理の負荷が大きくなる可能性のある番組作成処理(特に、制約解消処理)に関しては、特定の番組表作成サーバ(例えば、サービスプロバイダなどのセンタやサーバ上)で行われるようにし、すなわち、例えば、ユーザ側の通信装置から番組作成サーバに対して制約条件が送信され、この制約条件に基づいて作成された番組表が、番組作成サーバからユーザ側の通信装置に対して送られることによって、ユーザ側が、最適な番組表を取得できるように構成することも可能である。
【産業上の利用可能性】
【0134】
本発明に係る番組表作成方法及び番組表作成装置並びに番組表作成システムは、制約解消技術(制約充足技術)を利用して、様々な条件に応じて、コンテンツの再生を行うための詳細な番組表を自動的に作成することが可能であるという効果を有しており、コンテンツの再生を行うための番組表を作成する技術に適用可能である。
【技術分野】
【0001】
本発明は、コンテンツの再生を行うための番組表を作成する番組表作成方法及び番組表作成装置並びに番組表作成システムに関する。
【背景技術】
【0002】
従来、携帯電話機やPHS(Personal Handyphone System)端末、PDA(Personal Digital Assistance)などの持ち運び可能な移動通信端末や、車両、船、飛行機などの移動体に搭載された通信装置などにおいて、無線通信を介して楽曲データや映像データなどのコンテンツを受信し、再生することが可能である。例えば、テレビやラジオの放送電波を受信して再生することによって、テレビ番組やラジオ番組を視聴する方法や、デジタル通信網などを介して、所定のサーバから映像データや楽曲データなどのデジタルコンテンツを受信して再生することによって、ネットワークを通じて配信される番組を視聴する方法などが存在する。
【0003】
しかしながら、上述の放送形式によるコンテンツ配信では、不特定多数のユーザに同一の番組(コンテンツ)が提供されることになり、ユーザは、必ずしも自分が視聴したいコンテンツを楽しむことができないという問題があった。こうした問題に対処するため、ユーザの嗜好を考慮したオンデマンド形式のコンテンツ配信を行うことが可能なコンテンツ配信システムが多数知られている。
【0004】
また、下記の特許文献1には、放送通信やインターネットなどを介して配信されるコンテンツや、ローカルに存在する記録メディア(CD(Compact Disc)やDVD(Digital Versatile Disk)など)に格納されているコンテンツなどの各コンテンツに関して、ユーザが設定した設定情報(プロファイル)に基づく番組構成を行うことが可能な、車内で使用する音楽・情報提供装置が開示されている。なお、この特許文献1に開示されている技術では、ユーザが、番組構成用の設定情報や所望の番組構成・情報内容などをあらかじめパーソナルコンピュータなどを用いてカスタマイズしておくことで、車両の運転中における機器の操作回数の低減を可能とし、車両運転時の安全性の向上が図られている。
【特許文献1】特開2001−343979号公報(図1、3、5、7)
【0005】
しかしながら、特許文献1に開示されている技術によれば、車両内における操作回数は低減されるものの、番組構成は、ユーザが前もって行う操作によるところが大きく、番組を構成するのは、あくまでもユーザの役割である。したがって、特許文献1に開示されている技術では、ユーザの嗜好や状況などの様々な条件に応じた時刻や順序によって、コンテンツの再生を行うための番組表を自動的に作成することは不可能である。
【0006】
すなわち、特許文献1に開示されている技術によれば、下記の点において課題がある。
・番組を自動的に構成する方法(アルゴリズム)が存在せず、事前にユーザが行う設定を考慮すると、必ずしもユーザの操作回数全体が低減されるわけではない。
・ユーザの履歴を基にして、ユーザの好きなコーナーやコンテンツの順位付けを行い、その順位に従った順番で再生することは可能であったが、例えば、2時間の番組を作成する場合に、ユーザの好きなコーナーやコンテンツから再生して行くと、ユーザの好まないコーナーやコンテンツは番組後半に再生されることになってしまう。したがって、番組全体に対するユーザの満足度は高くなるとは思われない。
・ユーザの履歴を基にして、コーナーやコンテンツに対するスキップ率(コンテンツの利用の度合いを示す指標:特許文献1の図5(b)を参照)は表示されても、スキップ率は、ユーザが番組の構成を行うための参考データに過ぎず、その参考データに基づいて、コーナーの長さや、コーナーやコンテンツの再生時刻や再生する順番などを決定するのはユーザの作業である。したがって、スキップ率などの参考データが効率良く利用されているとは言えず、結局、ユーザによる操作が行われない限り、最適化された番組を作成することは不可能である。
・番組全体の最適化を行って、番組全体としてのユーザの嗜好性を追求することが不可能である。
・ユーザの嗜好、状況、番組全体の再生時間などの様々な条件が複雑に絡み合った状況下で起こり得る、複数の番組の候補として多数のコンテンツが候補に挙がる状態や、番組の候補となるコンテンツが存在しなくなってしまう状態に対して対応することができず、すなわち、様々な条件を考慮した詳細な番組表を臨機応変に作成することが不可能である。
【発明の開示】
【0007】
本発明は、上記課題に鑑み、様々な条件に応じて、コンテンツの再生を行うための詳細な番組表を自動的に作成することを可能とする番組表作成方法及び番組表作成装置並びに番組表作成システムを提供することを目的とする。
【0008】
上記目的を達成するために、本発明によれば、複数のコンテンツの時間的な配列を定める番組表を作成するための番組表作成方法において、
前記複数のコンテンツの選択に係る制約条件、及び/又は、前記複数のコンテンツの時間的な配列に係る制約条件に基づき、制約解消技術を利用して、前記番組表の作成を行うことを特徴とする番組表作成方法が提供される。
【0009】
さらに、本発明によれば、上記の番組表作成方法において、あらかじめ定められた制約条件記述関数によって、前記制約条件の記述を行うことを特徴とする番組表作成方法が提供される。
【0010】
さらに、本発明によれば、上記の番組表作成方法において、前記コンテンツを視聴又は聴取するユーザの嗜好を示すユーザ嗜好情報を、前記制約条件として取得することを特徴とする番組表作成方法が提供される。
【0011】
さらに、本発明によれば、上記の番組表作成方法において、前記ユーザの嗜好を学習して前記ユーザ嗜好情報を自動生成することによって、前記制約条件を自動的に取得することを特徴とする番組表作成方法が提供される。
【0012】
さらに、本発明によれば、上記の番組表作成方法において、前記コンテンツの再生に係る状況を示す状況情報を、前記制約条件として取得することを特徴とする番組表作成方法が提供される。
【0013】
さらに、本発明によれば、上記の番組表作成方法において、前記複数のコンテンツのそれぞれの属性を示すコンテンツ属性情報を参照して、前記番組表の作成を行うことを特徴とする番組表作成方法が提供される。
【0014】
さらに、本発明によれば、上記の番組表作成方法において、前記番組表の作成時の制約解消処理において、制約過多の状態となった場合に、前記コンテンツ及び/又は前記制約条件に優先度を設定し、前記優先度の高い前記制約条件を優先して前記制約解消処理を行うことを特徴とする番組表作成方法が提供される。
【0015】
さらに、本発明によれば、上記の番組表作成方法において、前記番組表の作成時の制約解消処理において、制約不足の状態となった場合に、前記コンテンツ及び/又は前記制約条件にスコアを設定し、前記スコアをパラメータとした関数を演算に係る演算結果を比較することによって、前記制約解消処理を行うことを特徴とする番組表作成方法が提供される。
【0016】
さらに、本発明によれば、上記の番組表作成方法において、前記制約解消技術として、制約論理プログラミング技術を用いることを特徴とする番組表作成方法が提供される。
【0017】
さらに、本発明によれば、上記の番組表作成方法において、最下位層に前記番組表を構成する前記コンテンツを表すエレメントが配置されており、前記コンテンツを表すエレメントの上位に、下位のエレメントの特徴を集約するエレメントが配置された1つ又は複数の階層を有するツリー構造によって前記番組表を表現し、上下の層において相互に関連付けられた前記エレメント同士は、相互に矛盾しない情報を有する番組表作成方法が提供される。
【0018】
さらに、本発明によれば、上記の番組表作成方法において、前記上下の層において相互に関連付けられた前記エレメント同士は、相互に矛盾しない属性情報又は時間幅情報を有する番組表作成方法が提供される。
【0019】
さらに、本発明によれば、前記ツリー構造に基づいて、前記番組表の一部の再構成を行う番組表作成方法が提供される。
【0020】
さらに、本発明によれば、前記番組表の一部の再構成を、以前の解を利用して新たな解を導出する方法、及び以前の解導出にかかる履歴を利用して新たな解を導出する方法のいずれか一方又はこれらの組み合わせを利用して行う番組表作成方法が提供される。
【0021】
さらに、本発明によれば、前記番組表の作成時又は作成後に、前記コンテンツに設定されるスコア、前記コンテンツの属性の相関、前記コンテンツの相関のいずれか1つ又はこれらの組み合わせに基づいて、前記コンテンツの配列の最適化を行う番組表作成方法が提供される。
【0022】
さらに、本発明によれば、時間軸に対して、1つ前に配置される前記コンテンツに基づいて、次に配置される前記コンテンツを決定する番組表作成方法が提供される。
【0023】
さらに、本発明によれば、時間軸に対して、1つ後に配置される前記コンテンツに基づいて、前に配置される前記コンテンツを決定する番組表作成方法が提供される。
【0024】
さらに、本発明によれば、時間軸に対する複数の前記コンテンツに係るパターンに基づいて、前記コンテンツの配列を決定する番組表作成方法が提供される。
【0025】
さらに、本発明によれば、上記の番組表作成方法において、前記コンテンツの属性を示すコンテンツ属性情報を参照して、全体として、隣接する前記コンテンツ間における相関が最も高くなるように前記コンテンツの配列を変更する番組表作成方法が提供される。
【0026】
また、上記目的を達成するために、本発明によれば、複数のコンテンツの時間的な配列を定める番組表を作成するための番組表作成装置において、
前記複数のコンテンツの選択に係る制約条件、及び/又は、前記複数のコンテンツの時間的な配列に係る制約条件に基づき、制約解消技術を利用して、前記番組表の作成を行うことを特徴とする番組表作成装置が提供される。
【0027】
さらに、本発明によれば、上記の番組表作成装置において、車両に搭載されており、前記車両内において視聴又は聴取される番組の前記番組表の作成を行うことを特徴とする番組表作成装置が提供される。
【0028】
さらに、本発明によれば、上記の番組表作成装置において、前記制約解消技術として、制約論理プログラミング技術を用いることを特徴とする番組表作成装置が提供される。
【0029】
また、上記目的を達成するために、本発明によれば、複数のコンテンツの時間的な配列を定める番組表を作成するための番組表作成システムにおいて、
前記複数のコンテンツの選択に係る制約条件、及び/又は、前記複数のコンテンツの時間的な配列に係る制約条件に基づき、制約解消技術を利用して、前記番組表の作成を行うように構成されており、前記所定のネットワーク上に存在する番組表作成サーバと、
前記所定のネットワークに接続可能であり、前記所定のネットワークを介して、前記番組表作成サーバに対して前記制約条件を送信するとともに、前記番組表作成サーバにおいて作成された前記番組表を受信することが可能な通信装置とを、
有することを特徴とする番組表作成システムが提供される。
【0030】
さらに、本発明によれば、上記の番組表作成システムにおいて、前記通信装置が車両に搭載されており、前記番組表作成サーバが、前記車両内において視聴又は聴取される番組の前記番組表の作成を行うことを特徴とする番組表作成システムが提供される。
【0031】
さらに、本発明によれば、上記の番組表作成システムにおいて、前記制約解消技術として、制約論理プログラミング技術を用いることを特徴とする番組表作成システムが提供される。
【0032】
本発明は、上記構成を有しており、様々な条件に応じて、コンテンツの再生を行うための詳細な番組表を自動的に作成することが可能となる。
【0033】
また、本発明によれば、制約解消技術を利用して導出された制約条件の充足解(最適解)として番組を自動的に作成することができるようになり、特に、番組に対するユーザの嗜好や他の条件を制約論理プログラミング技術における宣言的な制約条件に変換して、それらの制約条件の充足解(最適解)として番組を自動的に作成することができるようになる。
【0034】
また、本発明によれば、ユーザの履歴を基にして、ユーザの嗜好に合った各コーナーの長さや、各コーナーや各コンテンツの再生時刻、それらのコーナーやコンテンツ間の再生順序や周期性などの情報を制約条件として取得して、それらの制約条件を満たす番組を自動的に作成することができるようになる。また、ユーザの履歴に加えてユーザと似たプロファイルデータをもつユーザや一般的なユーザの嗜好を基にして、制約条件を取得したり、ユーザの履歴を基にした制約条件と組み合わせたりすることもできる。
【0035】
また、本発明によれば、上記のユーザの嗜好に関連する制約条件に加えて、コンテンツプロバイダ、サービスプロバイダ、番組提供会社、放送局、ネットワーク、契約、他者、他車から生じる半強制的な制約条件も満たす番組を自動的に作成することができるようになる。
【0036】
また、本発明によれば、ユーザインタフェースを通したユーザの操作によって入力された制約条件を、ユーザの手動の操作によらない上記の制約条件(ユーザの嗜好に関連する制約条件や半強制的な制約条件)と組み合わせることによって、その時点でより嗜好性の高い番組を作成することができる。この際に入力する制約条件はコーナーの長さや順序に限らず、具体的に再生したいコンテンツやその放送時刻を設定することもできる。
【0037】
また、本発明によれば、番組進行中においても、様々な状況変化に応じて、上記の制約条件(ユーザの嗜好に関連する制約条件、半強制的な制約条件、ユーザの操作によって入力された制約条件)を動的に変化させることができ、制約条件の変化をトリガとして、番組の再構成を行うこともできる。
【0038】
また、本発明によれば、ユーザの嗜好性を表現した目的関数によって番組全体を最適化することにより、番組全体としてのユーザの嗜好性を追求することができるようになる。
【0039】
また、本発明によれば、ユーザの嗜好性を表現した目的関数によって番組全体を最適化することにより、目的関数の値によってランキングされた複数の番組をユーザに推薦して、それらの中からユーザのそのときの嗜好に最も合った番組をユーザに選択させることができるようになる。
【0040】
また、本発明によれば、制約条件が非常に多くなった場合には、ユーザの履歴制約条件やユーザと似たプロファイルデータをもつユーザや一般的なユーザの嗜好を基にして、各制約条件に優先度を設定し、優先度の高い制約条件を優先して番組を作成することができるようになる。
【0041】
また、本発明によれば、番組表を階層的なツリー構造によって表現することによって、ツリー構造の構成要素(エレメント)に係る条件を束縛することで、このエレメントに関連付けられた上下の階層のエレメントの条件を束縛し、制約解消処理の効率を向上させることができるようになる。
【0042】
また、本発明によれば、番組表の一部(例えば、途中まで再生された残りの番組内容)を、ツリー構造に基づき、初期値利用法及び/又は制約記録法を利用して最構成することで、番組表の再構成を高速で行うことができるようになる。
【0043】
また、本発明によれば、番組表の作成時又は作成後に、制約条件を満たす範囲で、番組全体の流れを考慮したコンテンツの配列変更を行うことで、ユーザのニーズにより近い番組表の作成を行うことができるようになる。
【図面の簡単な説明】
【0044】
【図1】本発明の実施の形態における番組表作成装置の構成の一例を示すブロック図である。
【図2】本発明の実施の形態における番組表作成方法の一例を示すフローチャートである。
【図3】本発明の実施の形態において利用される各コンテンツに設定されているコンテンツ属性情報の一例を示す図である。
【図4】本発明の実施の形態における番組表作成時に参照される制約条件の一例と、この制約条件に基づいて導出された最適解の一例とをそれぞれ模式的に示す図である。
【図5】本発明の実施の形態における番組、コーナー、コンテンツの階層的な関係を模式的に示す図である。
【図6】本発明の実施の形態における番組表作成装置によって最終的に作成される番組表の一例を示す模式図である。
【図7A】本発明の実施の形態におけるコーナー内のコンテンツに係る配置最適化の第1の例を示す図である。
【図7B】本発明の実施の形態におけるコーナー内のコンテンツに係る配置最適化の第2の例を示す図である。
【図7C】本発明の実施の形態におけるコーナー内のコンテンツに係る配置最適化の第3の例を示す図である。
【図7D】本発明の実施の形態におけるコーナー内のコンテンツに係る配置最適化の第4の例を示す図である。
【図8】本発明の実施の形態における制約解消処理において用いられるツリー構造の概念を模式的に示す図である。
【図9】本発明の実施の形態におけるツリー構造を用いた制約解消処理のアルゴリズムの一例を示すフローチャートである。
【図10】本発明の実施の形態における番組表の再スケジューリングの開始タイミングの一例を示す図である。
【発明を実施するための最良の形態】
【0045】
以下、図面を参照しながら、本発明の実施の形態について説明する。まず、図1を参照しながら、本発明の実施の形態における番組表作成装置について説明する。図1は、本発明の実施の形態における番組表作成装置の構成の一例を示すブロック図である。図1に示す番組表作成装置100は、制約条件入力部101、制約条件学習部102、制約条件生成部103、制約条件解消部104、制約条件優先度取得部105、スコア設定部106、コンテンツ情報取得部107、番組表出力部108、コンテンツ取得部109、番組再生部110、履歴情報格納部121、状況情報格納部122、一般情報格納部123、コンテンツ属性情報格納部124、制約関数格納部125を有している。
【0046】
なお、図1に示す番組表作成装置100は、主な動作は、CPU(Central Processing Unit:中央演算処理装置)によって動作されるプログラム(ソフトウェア)により行われるようにすることが可能である。例えば、図1に示す番組表作成装置100は、固定据置型PC(Personal Computer)又はノートブック型の持ち運び可能なPC、PDA、携帯電話機、車両などの移動体に設置される車載装置、CPUを搭載した専用端末などの各種の計算機によって実現可能である。
【0047】
また、例えば、番組表の作成の際に、主にデータ処理を行う制約条件学習部102、制約条件生成部103、制約条件解消部104、制約条件優先度取得部105、スコア設定部106などの各手段は、CPUが所定のプログラムを実行することによって実現可能である。また、特に、本発明の特徴でもある人工知能の要素技術の1つである制約解消に係る処理に関しては、制約に基づく問題解決を論理プログラミングと組み合わせた制約論理プログラミング(制約プログラミング、制約ロジックプログラミングとも呼ばれる)に係る技術の利用が可能であり、すなわち、高い記述能力を有する制約論理プログラミング言語によって宣言的に記述された制約の問題を、コンピュータによって解決させる方法を採用することが可能である。
【0048】
また、図1に示す番組表作成装置100の構成要素である各ブロックは、それぞれ分散していてもよい。すなわち、各ブロックが同一装置内に配置され、各ブロック間において、データが装置内の内部バスなどを通じて伝送されてもよく、また、各ブロックが全く別の装置に配置され、各ブロック間において、データが有線ケーブルや無線伝送媒体などを通じて伝送されてもよい。したがって、例えば、制約条件解消部104、制約条件優先度取得部105、スコア設定部106、コンテンツ情報取得部107を有する番組表作成サーバが、ネットワーク上に存在する一方、コンテンツ属性情報を有するコンテンツ情報格納サーバが別のサーバとしてネットワーク上に存在する構成とし、ユーザは、PCなどを用いて、番組表作成サーバに対して所定の制約条件を送信する(必要に応じて、さらに、ユーザ側の履歴情報や状況情報などを適宜送信してもよい)ことによって、番組表作成サーバから番組表を受信できるようにすることも可能である。
【0049】
制約条件入力部101は、GUI(Graphical User Interface:グラフィカルユーザインタフェース)などによって実現されるユーザの入力インタフェースである。ユーザは、番組の構成に係る条件を入力することが可能である。なお、このGUIによる条件入力においては、ユーザの操作を簡単にするために、あらかじめ定められた条件の選択(例えば、コンテンツの種別の選択)や、割合の選択(例えば、番組内に含まれるコンテンツの種別などの割合の選択)などが行えるようにすることが望ましい。
【0050】
また、制約条件学習部102は、ユーザによって入力された条件などから、ユーザの嗜好や傾向を学習するための手段である。なお、嗜好情報は、ここでは、履歴情報(ユーザによる条件入力の単純な履歴に係る情報)と共に履歴情報格納部121に格納されるように構成されているが、別に、不図示のユーザ嗜好情報格納部を設けて、その中に格納されるようにしてもよい。また、制約条件学習部102は、後述の番組再生部110によって再生されたコンテンツのスキップ率(ユーザが、コンテンツを再生せずにスキップさせる度合い)を取得したり、番組表出力後又は番組再生後に、番組に係るユーザの満足度を取得したりすることによって、作成された番組表に基づくユーザの満足度をフィードバックして、ユーザの嗜好情報を修正できるように構成することも可能である。
【0051】
また、制約条件生成部103は、ユーザによって制約条件入力部101から入力される条件や、制約条件学習部102によって供給されるユーザの嗜好情報などのユーザに係る条件に基づいて、制約条件記述関数による制約条件の記述を行う手段である。すなわち、この制約条件生成部103は、あらかじめ定義された多数の制約条件記述関数が格納されている制約関数格納部125から、ユーザに係る条件に対応する制約条件記述関数を読み出して、ユーザに係る条件を制約条件記述関数による記述に置き換える作業が行われる。したがって、制約条件生成部103によって生成される情報は、ユーザに係る条件を制約条件記述関数に翻訳したものである。なお、制約条件生成部103に供給される制約条件の供給元として、制約条件入力部101を利用しないようにすることも可能であり、これによって、ユーザによる制約条件の入力操作を完全に省き、制約条件学習部102から供給される制約条件に基づく番組表の自動生成処理を実現することも可能である。
【0052】
また、制約関数格納部125に格納されている制約条件記述関数は、番組の構成要素である階層的なコーナーやコンテンツなどに対する時間(長さ)、時刻(開始時刻や終了時刻)、回数、周期、順序などの制約が宣言的に記述された関数である。制約関数格納部125には、様々な条件に係る制約条件記述関数が格納されている。
【0053】
また、制約条件解消部104は、制約解消技術を利用した番組表の生成処理を行う手段である。制約条件解消部104は、ユーザに係る条件が制約条件記述関数によって表された情報を制約条件生成部103から受けて、これを解くべき問題として、その制約条件を解消(充足)する制約充足解を探す処理を行う。すなわち、制約条件解消部104では、番組内に構成することが可能な各コンテンツの様々な条件(コンテンツの属性)を考慮して、制約条件を満たす最適な番組表(コンテンツのタイムスケジュール)を見つけ出す処理が行われ、最適な番組表が作成・出力される。
【0054】
なお、番組は、時間やコンセプトなどによって区切られた大きな1つの単位である。番組には、所定のルールに基づいてカテゴリ化されたコーナーが1つ又は複数含まれている。また、コーナーには、番組の最小構成要素であるコンテンツが1つ又は複数含まれている。すなわち、「番組」−「コーナー」−「コンテンツ」は、階層的な構造を有している。例えば、図5を参照しながら、上述の番組、コーナー、コンテンツの階層的な関係について説明する。
【0055】
図5に図示されているように、1つの番組は、時間軸に沿って配列されたニュース、天気予報、CM、音楽、CM、トーク、音楽の各コーナーによって構成されている(1次コーナー層)。また、CMによって挟まれている音楽コーナーには、洋楽&1970年代のコーナー、アーティスト**の曲コーナー、ジャズorクラシックコーナー、テーマ:クリスマスコーナーが存在し(2次コーナー層)、例えば、アーティスト**の曲コーナーは、楽曲X、楽曲Y、楽曲Zの3つの音楽コンテンツによって構成されている(コンテンツ層)。また、ニュースコーナーには、ヘッドラインニュース及び経済ニュースの各コンテンツが含まれている。なお、その他の1次コーナー層を構成する各コーナーも同様に、多段のコーナー層を経て、再生すべきコンテンツと関連付けられているか、あるいは、図5に図示されているニュースコーナーのように、直接コンテンツと関連付けられている。したがって、1つの番組の再生は、時間軸に沿ってコンテンツ層に配列されるコンテンツの再生によって行われる。
【0056】
また、コンテンツ情報取得部107は、制約解消処理時に制約条件解消部104によって参照されるコンテンツの属性をコンテンツ属性情報格納部124から取得して、制約条件解消部104に供給するための手段である。また、コンテンツ情報取得部107は、一般情報格納部123に格納されている一般情報(一般的な大衆による人気度、時間帯や季節による人気度、これらの人気度の年齢・性別・職業などによる傾向など、各コンテンツに係る統計データを指す)を取得して、制約条件解消部104に供給することも可能である。
【0057】
また、コンテンツ属性情報格納部124には、上述のように、番組の一部分として利用可能な各コンテンツの属性に係る情報(コンテンツ属性情報)が格納されている。例えば、図3には、音楽コンテンツのコンテンツ属性情報が例示されている。図3に示すように、コンテンツが音楽コンテンツの場合、各コンテンツには、その楽曲のタイトル、アーティスト、時間(コンテンツの再生時間)、ジャンル(邦楽、洋楽、ジャズ、ロック、ポップスなどの様々な分類)、ヒットした年代、テーマ(クリスマスソング、スロー/アップテンポな曲などの雑多な情報)、タイアップ情報(テレビやラジオなどの他のメディアとの連携に係る情報)、チャート情報(ヒットチャートの履歴情報)などのコンテンツ属性情報があらかじめ関連付けられており、こうした情報が、コンテンツ属性情報格納部124に格納されている。
【0058】
なお、図3に示すコンテンツ属性情報は一例であり、図3に図示されているすべての情報を必ずしも有する必要はなく、また、図3に図示されている情報以外の情報をコンテンツ属性情報とすることも可能である。また、例えば、音楽コンテンツの場合には、各コンテンツのタイトルやアーティストなどの情報が格納されているCDDB(CD Database)を利用して、このCDDBからコンテンツ属性情報を取得できるようにすることも可能である。また、コンテンツの種別が音楽以外の種別(例えば、ニュースやトーク、天気予報、ドラマなどの多種多様な種別)の場合も同様に、制約条件解消部104による制約解消処理時に必要とされる情報が、コンテンツ属性情報としてコンテンツ属性情報格納部124に格納される必要がある。また、例えば、ジャンルや年代などのコンテンツ属性情報に関しては、例えば、洋楽=『3』、1970年代=『5』などのように、一定のルールに基づいて定められた値を設定することによって、その項目の内容を表現することが可能である。
【0059】
また、制約条件解消部104による制約解消処理において、制約条件を満たす解(番組表)が複数存在してしまう制約不足の状態になったり、制約条件が多すぎて(すなわち、制約条件が限定されすぎて)、最適解が発見されないオーバコンストレイント(制約過多)の状態になったりすることがある。これらの状態に対処するために、制約条件優先度取得部(制約過多対処部)105やスコア設定部(制約不足対処部)106が設けられている。
【0060】
制約条件優先度取得部105は、制約過多状態において制約条件を満たす解が導出されない場合に、制約条件(制約解消記述関数)に対して優先度を設定することによって、制約解消処理における最適解の導出の補助を行うための手段である。例えば、制約条件優先度取得部105は、履歴情報格納部121に格納されているユーザの履歴情報や嗜好情報、状況情報格納部122に格納されている状況情報(GPS(Global Positioning System)などによって取得される現在位置、現在日時、そのときのテレビ/ラジオ番組表、サービスプロバイダやコンテンツプロバイダの条件・状況、他者・他者から受ける条件、天候状況、車両内に居る場合には道路状況や同乗者の有無などの様々な状況に係る情報)、一般情報格納部123に格納されている一般情報などに基づいて、各制約条件に対して重み付けを行ったり優先度を設定したりすることが可能である。これにより、制約条件解消部104は、各制約条件に付与された重みを考慮した制約解消処理を行ったり、優先度が高く設定された制約条件を優先して、制約解消処理を行ったりすることが可能となる。
【0061】
なお、ユーザが、制約条件入力部101の入力インタフェースを用いて、制約条件優先度取得部105が設定する優先度を、ユーザ自らが設定することも可能である。また、ここでは、制約条件優先度取得部105は、各制約条件に関して優先度の設定を行っているが、各コンテンツに対して(又は、コンテンツの属性情報を対象として)、優先度の設定を行うようにすることも可能である。
【0062】
また、スコア設定部106は、各コンテンツに対してスコアを設定することによって、制約解消処理における最適解の導出の補助を行うための手段である。具体的には、スコア設定部106は、制約条件を満たす複数の解(番組表)を構成するすべてのコンテンツに対してスコアを設定した後、このスコアをパラメータとした目的関数の計算を行う目的関数計算部111に対して、スコアを供給して目的関数の計算を行わせ、この計算結果に基づいて、制約条件を満たす複数の番組表に係るランキングを決定する。このランキングに係る情報は、スコア設定部106から制約条件解消部104に供給され、制約条件解消部104は、ランキングに係る情報によって差別化された複数の解のうち、ランキングの上位に存在する一部の解(1つ又は複数の番組表)を、最適な番組表として出力することが可能となる。
【0063】
また、このスコア設定部106に関しても、上記の制約条件優先度取得部105と同様に、ユーザの履歴情報や嗜好情報、状況情報、一般情報などに基づいて、各コンテンツにスコアを設定することが可能である。これにより、制約条件解消部104は、上記のスコアをパラメータとした目的関数の値を算出して、その算出結果の比較を行うことによって、複数の番組表の差別化を行うことが可能となる。
【0064】
なお、ユーザが、制約条件入力部101の入力インタフェースを用いて、スコア設定部106が設定するスコアを、ユーザ自らが設定することも可能である。また、ここでは、スコア設定部106は、各コンテンツに関してスコアの設定を行っているが、各制約条件(各制約条件記述関数)に対して、スコアの設定を行うようにすることも可能である。
【0065】
また、上記の制約条件優先度取得部105やスコア設定部106による補助に基づいて、制約条件解消部104で制約解消処理が行われた場合には、最適な番組表を求める過程で、複数の番組表に順位付けが行われることになる。制約条件解消部104は、このようにして求められた番組表のうち、最も順位の高い番組表をただ1つのみ出力することも可能であり、また、所定の順位(例えば、上位3つ)までの番組表(例えば、3つの番組表)やその順位を出力することも可能である。
【0066】
制約条件解消部104によって作成された最適な番組表は、番組表出力部108やコンテンツ取得部109に供給される。番組表出力部108は、例えば、視覚的な情報を出力するモニタや聴覚的な情報を出力するスピーカなどであり、番組表出力部108からユーザに対して、番組表が作成された旨や番組表そのものが報知される。また、制約不足や制約過多の場合に、番組表出力部108から複数の番組表を選択候補として出力し、ユーザに選択させるようにすることも可能である。また、番組表出力部108は、所定の記録媒体への情報書き込み手段や通信手段でもよく、番組表出力部108を通じて、番組表が所定の記録媒体に記録されたり、他の通信装置やネットワークに送信されたりしてもよい。
【0067】
また、コンテンツ取得部109は、制約条件解消部104によって作成された番組表に基づいて、コンテンツを取得するための手段である。なお、コンテンツ取得部109がコンテンツを取得するためのコンテンツの格納場所(コンテンツの取得先)は任意である。すなわち、番組の構成要素として利用可能なコンテンツは特に限定されず、放送信号によって放送されてくるコンテンツ、ネットワークによって配信されるコンテンツ、ローカルコンテンツ(CDやDVDに格納されているコンテンツ)などを始めとする任意のコンテンツを利用することが可能である。また、コンテンツ取得部109によって取得されたコンテンツは、番組再生部110においてビデオ再生やオーディオ再生が行われる。
【0068】
次に、図2を参照しながら、本発明の実施の形態における動作の概要について説明する。図2は、本発明の実施の形態における番組表作成方法の一例を示すフローチャートである。なお、ここでは、図1に示す番組表作成装置100に基づいて、図2に示すフローチャートの説明を行う。
【0069】
番組表作成処理を行う際に、まず、制約条件生成部103は、制約条件入力部101や制約条件学習部102などから、ユーザによって入力される条件やユーザの嗜好情報などのユーザに係る条件を取得し(ステップS201)、これらの条件(制約条件)に基づいて、制約条件記述関数による制約条件の記述を行う(ステップS203)。そして、この制約条件を記述した制約条件記述関数に基づいて、制約条件解消部104による制約解消処理が行われる。
【0070】
制約条件解消部104による制約解消処理では、まず、制約条件解消部104が、制約条件記述関数の解析を行う(ステップS205)。そして、制約条件解消部104は、コンテンツ情報取得部107を通じて、コンテンツ属性情報格納部124内のコンテンツ属性情報を参照しながら、制約条件が矛盾なく充足されるすべての番組表(制約充足解)を求める、制約解消技術に基づいた制約問題の解決処理を行う(ステップS207)。最も単純なアルゴリズムとしては、例えば、バックトラックに基づく探索によって矛盾を解消する値を自動的に判定していく方法が挙げられるが、制約条件解消部104において制約問題の解決アルゴリズムは、特に限定されるものではない。
【0071】
制約解消技術に基づいた制約問題の解決処理では、例えば、以下の条件が参照されて、コンテンツの選択や、コンテンツの配置順序の決定を行うことが可能である。例えば、コンテンツに対して設定されたスコアが所定の閾値以上であるコンテンツのみを選択し、この所定の閾値以上のコンテンツのみを用いて制約問題の解決処理を行うことが可能である。
【0072】
また、スコアの高いコンテンツのみを常に選択しているだけでは、作成される番組表がいつでもほぼ同一になってしまうため、コンテンツ選択時にランダム性を導入することも可能である。例えば、コンテンツに対して設定されたスコアが所定の閾値以上であるコンテンツが所定の割合だけ含まれるようにコンテンツを選択して、こうして選択されたコンテンツを用いて制約問題の解決処理を行うことが可能である。また、例えば、コンテンツに対して設定されたスコアに対してランダム値を積算した積算結果を新たなスコアとみなし、この新たなスコアが所定の閾値以上であるコンテンツのみを選択したり、この新たなスコアが所定の閾値以上であるコンテンツが所定の割合だけ含まれるようにコンテンツを選択したりすることによって、こうして選択されたコンテンツを用いて制約問題の解決処理を行うことが可能である。
【0073】
また、コンテンツの配置順序に関して、スコアの高いコンテンツが各コーナーのどの部分に配置されるべきかを考慮したり、隣り合うコンテンツの相関性を考慮しながら配置位置を定めたりすることも可能である。こうしたコンテンツの配置順序の決定では、例えば、各コーナーにおいて、スコアの高いコンテンツをコーナーの最初及び/又は最後やコーナーの途中に配置したり、各コンテンツの属性の相関性がコーナー全体の流れを考慮して最も高くなるように配置したりすることによって、コンテンツの配置順序の最適化が行われる。なお、コンテンツの配置順序の最適化に関しては、後で詳細に説明する。また、コンテンツの配置順序の最適化は、番組表の生成過程(例えば、ステップS207)で行われてもよく、また、制約問題の解決処理後(ステップS217の最適な番組表の報知前)に行われてもよい。
【0074】
また、ステップS207における制約解消技術に基づいた制約問題の解決処理では、以下の3つの結果(第1〜第3の結果)のうちのいずれか1つが出ることが予想される(ステップS209、S211)。第1の結果は、制約充足解が1個のみ発見される状態である。第2の結果は、制約不足によって2個以上の制約充足解が発見される状態である。第3の結果は、制約過多によって制約充足解(制約充足解が0個)が発見されない状態である。
【0075】
制約充足解が1個のみ発見される第1の結果の場合には、制約条件解消部104は、この制約充足解をユーザに提示すべき最適な番組表として決定し、後述のステップS217に進み、ユーザに対して、最適な番組表の報知が行われる。
【0076】
また、制約充足解が2個以上発見される第2の結果の場合には、スコア設定部106に基づく目的関数生成部111による番組表のランキング処理が行われる(ステップS213)。このステップS213の処理では、例えば、制約条件解消部104が、スコア設定部106に対してコンテンツにスコアを決めてランク付けを行うように要求する。このとき、スコア設定部106は、各コンテンツのスコアを決定するとともに、すべての番組表(制約充足解)に関して、スコアをパラメータとして用いた目的関数の計算を目的関数計算部111に行わせて、その計算結果から、各制約充足解のランキングを決定する。そして、制約条件解消部104は、このランキングに係る情報を参照して、ランキングの最上位に位置する制約充足解、又は、ランキングの上位に位置する複数の制約充足解を最適な番組表として出力する。
【0077】
また、制約充足解が発見されない第3の結果の場合には、制約条件優先度取得部105が、ステップS207の制約問題の解決処理で用いられた制約条件に対して設定されている優先度を取得するとともに、優先度の低い制約条件を削除したうえで、残りの制約条件を制約条件解消部104に再度供給する処理を行う(ステップS215:制約条件優先度取得部に基づく制約条件の緩和処理)。すなわち、このステップS215における処理では、一部の制約条件が削除されて、制約充足解を求める際の制約条件が緩和される。そして、ステップS207に戻って、緩和された制約条件に基づく制約問題の解決処理が改めて行われる。
【0078】
具体的には、複数の段階の優先度(例えば、「必須」、「強い」、「普通」、「弱い」の4段階の優先度)が、あらかじめ制約条件に設定されており、最初に行われる制約問題の解決処理(ステップS207)では、すべての優先度に係る制約条件を充足する制約充足解の探索が行われる。そして、この最初の制約問題の解決処理で制約充足解が発見されなかった場合(解が0個の場合)には、ステップS215の処理によって、最も低い優先度(「弱い」)の制約条件が削除され、「弱い」以外の優先度(「必須」、「強い」、「普通」の3段階の優先度)に係る制約条件を新しい制約条件として、この新しい制約条件に基づいた2回目の制約問題の解決処理(ステップS207)が再度行われる。
【0079】
2回目の制約問題の解決処理においても制約充足解が発見されなかった場合には、削除する制約条件に係る優先度を上げて、「普通」の制約条件が削除され、「必須」、「強い」の2段階の優先度に係る制約条件を新しい制約条件として、この新しい制約条件に基づいた3回目の制約問題の解決処理(ステップS207)が再度行われる。さらに、この場合でも制約充足解が発見されなかった場合には、「強い」の優先度の制約条件が削除され、「必須」のみの優先度に係る制約条件を新しい制約条件として、この新しい制約条件に基づいた3回目の制約問題の解決処理(ステップS207)が再度行われる。
【0080】
このように、制約条件の緩和を段階的に行っていくことにより、1個又は複数の制約充足解が発見された時点で、上述したステップS211以降の処理に進み、制約充足解が存在する場合の処理が行われる。また、優先度を最も緩和した状態(例えば、上述の場合において、「必須」のみの優先度に係る制約条件)で行われた制約問題の解消処理においても、制約充足解が発見されなかった場合には、制約条件を満たす制約充足解(最適な番組表)が存在しない旨を、番組表出力部108から報知するように構成することも可能である。なお、上述の例では、「必須」、「強い」、「普通」、「弱い」の4段階の優先度があらかじめ設定されているが、この優先度の設定の態様や優先度の段階数などは、任意に設定可能である。
【0081】
そして、制約充足解が1個又は複数発見された場合には、その制約充足解が最適な番組表として、制約条件解消部104から番組表出力部108やコンテンツ取得部109に対して出力され、最適な番組表の報知(ステップS217)や最適な番組表に基づくコンテンツの再生(番組の再生)(ステップS219)が行われる。なお、このとき、番組表出力部108から報知された最適な番組表に関して、ユーザが確認作業又は選択作業を行うことが望ましい。
【0082】
次に、本発明の実施の形態における番組表作成装置100の制約条件生成部103によって取得されるユーザに係る条件と、制約条件解消部104によって作成される番組表について、それぞれ具体的に説明する。
【0083】
図4は、本発明の実施の形態における番組表作成時に参照される制約条件の一例と、この制約条件に基づいて導出された最適解の一例とをそれぞれ模式的に示す図である。番組表作成時に、制約条件生成部103には、ユーザに係る条件として、例えば、図4に示すような制約条件が供給される。図4には、1つの番組全体は60分〜70分であるという条件(番組全体の時間に係る条件)、ニュースは10分以内であるという条件(コーナーの長さに係る条件)、ニュースの次に天気予報が挿入されるという条件(コーナーやコンテンツの順序に係る条件)、その他の時間はすべて音楽を流すという条件(ジャンルに係る条件)が、制約条件の一例として図示されている。
【0084】
なお、図4に図示されている制約条件以外にも様々な条件が設定可能である。また、例えば、『「ニュースコーナー」の次は「音楽コーナー」、1回の「音楽コーナー」は60分以上70分以下、「音楽コーナー」の中には「洋楽コーナー」と「邦楽コーナー」を入れて、それぞれが40分以上50分以下、20分以上30分以下、「洋楽コーナー」には「1970年代コーナー」と「最新ヒットコーナー」があり、それぞれ約半分ずつとするとともに、「1970年代コーナー」には、必ずアーティスト●●の楽曲◎◎を1回入れる』などのように、詳細な制約条件を設定することが可能である。
【0085】
また、図4には、上記の制約条件に基づいて、制約条件解消部104によって導出される、制約条件を満たす最適解の一例が図示されている。この最適解は、制約条件解消部104によって階層的なコーナーの種類が特定され、さらに、そのコーナー内に含まれるコンテンツが特定されて作成される最適な番組表(番組のタイムスケジュール)そのものであり、制約過多の場合を除いて、基本的には、すべての制約条件が満たされている。なお、制約過多の場合には、上述のように、各制約条件に優先度を設定することによって、いずれか1つ又は複数の優先度の低い制約条件が犠牲となる形で、最適解が導出されることとなる。また、図4に示す制約条件を満たす最適解は、図5において、番組、コーナー、コンテンツの階層的な関係の説明の際に参照した構造と同一の構造を有している。
【0086】
制約条件解消部104は、図4に示すような最適な番組表を作成する際に、階層的なコーナーを特定する方法として、例えば、各コンテンツに係る各属性の値の論理式を用いることが可能である。すなわち、例えば、音楽コーナーにおける「洋楽&1970年代コーナー」に含まれるコンテンツは、音楽コンテンツが有する属性のうちの「ジャンル名=洋楽」、「年代=1970年代」の2つの値のAND演算によって特定される。
【0087】
また、図6は、本発明の実施の形態における番組表作成装置によって最終的に作成される番組表の一例を示す模式図である。図6には、17時から18時までの1時間番組という制約条件がさらに課された場合に作成された最適な番組表の一例が模式的に図示されている。この場合、番組を構成するコーナー名又はコンテンツ名(図6では、一例として、コンテンツ名は適当なアルファベット3文字で記載されている)と共に、各コーナー又は各コンテンツの再生開始タイミングを示すコンテンツ開始時刻が定められる。なお、コンテンツ名の欄には、そのコンテンツを取得するための位置情報や識別情報を含む情報が記載されており、コンテンツ取得部109は、この情報を参照することによって、番組再生部110が所定の再生開始タイミングでコンテンツを再生できるように、コンテンツの取得を行う。
【0088】
また、上述のように番組表を作成した後に、番組表の作成過程で課された制約条件を満たしながら、番組の一部(コーナーの一部やコンテンツの一部)を再配置して最適化を行い、最適化された番組表を最終的な番組表として出力することも可能である。この番組作成後の最適化(コーナーやコンテンツの配置順序の最適化)は、コーナー内、番組内のコンテンツをシャッフルして聴きたいというユーザ側のニーズに応えるものであり、番組の一部の再配置を行うことによって、番組全体に対するユーザの評価が高まるという効果が得られる。
【0089】
制約条件を満たす範囲で番組の一部をシャッフルする方法としては、いくつかの方法が考えられる。最も単純な方法としては、生成された番組のコーナーやコンテンツを、制約条件を満たす範囲でランダムにシャッフルする方法である。
【0090】
また、コーナー内の特定の場所(コーナー内の相対位置)にユーザが最も聴きたいと思われるコンテンツを配置することも効果的である。これは、ユーザが、例えば音楽コーナーの最初及び/又は最後や途中で、自分の好みの楽曲を聴きたいなどのニーズに応えるものであり、このようにユーザの好みのコンテンツの再生タイミングを考慮することで、番組全体に対するユーザの評価が高まるという効果が得られる。
【0091】
ユーザの好みのコンテンツの再生タイミングを考慮しながら、制約条件を満たす範囲で番組の一部の並べ換えを行う方法としては、下記の4つのタイプが考えられる。これらの4つの方法について、図7A〜図7Dを参照しながら説明する。
【0092】
図7Aは、本発明の実施の形態におけるコーナー内のコンテンツに係る配置最適化の第1の例を示す図である。作成後の番組に含まれる各コンテンツは、例えば、番組作成過程で設定されたスコアを有している。このスコアは、上述のように、ユーザの履歴情報や嗜好情報、状況情報、一般情報などに基づいて各コンテンツに対して設定可能な情報であり、すなわち、ユーザの履歴、嗜好や番組再生時の状況、一般的な人気度などが総合的に表された数値である。
【0093】
図7Aには、制約条件を満たしながら、コーナー内で複数のコンテンツの並べ換えを行う場合に参照される時刻とスコアとの関係が図示されている。例えば、コーナー内で複数のコンテンツを並べ換える際に、図7Aに図示されているように、コーナーの後半に進むにつれてスコアの高いコンテンツが配置されるようにする。したがって、図7Aに図示されているコンテンツの並べ換えの方法は、後半盛り上がり型(昇順パターン)と呼ぶことができる。
【0094】
例えば、5つの楽曲コンテンツ(「楽曲P」〜「楽曲T」)を含むコーナー内が存在しており、「楽曲P」のスコアは1、「楽曲Q」のスコアは3、「楽曲R」のスコアは5、「楽曲S」のスコアは7、「楽曲T」のスコアは9であるとする。これらの上記5つの楽曲コンテンツの並べ換えを行う場合、各楽曲コンテンツのスコアを参照して、図7Aに図示されている後半盛り上がり型に配置した結果、このコーナーに含まれる楽曲コンテンツの順序は、「楽曲P」、「楽曲Q」、「楽曲R」、「楽曲S」、「楽曲T」に最適化される。
【0095】
また、図7Bは、本発明の実施の形態におけるコーナー内のコンテンツに係る配置最適化の第2の例を示す図である。例えば、コーナー内で複数のコンテンツを並べ換える際に、図7Bに図示されているように、コーナーの前半部分にスコアの高いコンテンツが配置されるようにする。したがって、図7Bに図示されているコンテンツの並べ換えの方法は、前半盛り上がり型(降順パターン)と呼ぶことができる。
【0096】
例えば、5つの楽曲コンテンツ(「楽曲P」〜「楽曲T」)を含むコーナー内が存在しており、「楽曲P」のスコアは1、「楽曲Q」のスコアは3、「楽曲R」のスコアは5、「楽曲S」のスコアは7、「楽曲T」のスコアは9であるとする。これらの上記5つの楽曲コンテンツの並べ換えを行う場合、各楽曲コンテンツのスコアを参照して、図7Bに図示されている前半盛り上がり型に配置した結果、このコーナーに含まれる楽曲コンテンツの順序は、「楽曲T」、「楽曲S」、「楽曲R」、「楽曲Q」、「楽曲P」に最適化される。
【0097】
また、図7Cは、本発明の実施の形態におけるコーナー内のコンテンツに係る配置最適化の第3の例を示す図である。例えば、コーナー内で複数のコンテンツを並べ換える際に、図7Cに図示されているように、コーナーの途中部分にスコアの高いコンテンツが配置されるようにする。したがって、図7Cに図示されているコンテンツの並べ換えの方法は、途中盛り上がり型(山型パターン)と呼ぶことができる。
【0098】
例えば、5つの楽曲コンテンツ(「楽曲P」〜「楽曲T」)を含むコーナー内が存在しており、「楽曲P」のスコアは1、「楽曲Q」のスコアは3、「楽曲R」のスコアは5、「楽曲S」のスコアは7、「楽曲T」のスコアは9であるとする。これらの上記5つの楽曲コンテンツの並べ換えを行う場合、各楽曲コンテンツのスコアを参照して、図7Cに図示されている途中盛り上がり型に配置した結果、このコーナーに含まれる楽曲コンテンツの順序は、「楽曲P」、「楽曲R」、「楽曲T」、「楽曲S」、「楽曲Q」に最適化される。
【0099】
また、図7Dは、本発明の実施の形態におけるコーナー内のコンテンツに係る配置最適化の第4の例を示す図である。例えば、コーナー内で複数のコンテンツを並べ換える際に、図7Dに図示されているように、コーナーの最初及び最後にスコアの高いコンテンツが配置されるようにする。したがって、図7Dに図示されているコンテンツの並べ換えの方法は、最初及び最後盛り上がり型(谷型パターン)と呼ぶことができる。
【0100】
例えば、5つの楽曲コンテンツ(「楽曲P」〜「楽曲T」)を含むコーナー内が存在しており、「楽曲P」のスコアは1、「楽曲Q」のスコアは3、「楽曲R」のスコアは5、「楽曲S」のスコアは7、「楽曲T」のスコアは9であるとする。これらの上記5つの楽曲コンテンツの並べ換えを行う場合、各楽曲コンテンツのスコアを参照して、図7Dに図示されている最初及び最後盛り上がり型に配置した結果、このコーナーに含まれる楽曲コンテンツの順序は、「楽曲S」、「楽曲Q」、「楽曲P」、「楽曲R」、「楽曲T」に最適化される。
【0101】
また、コーナー内の各コンテンツの相関性を考慮してコンテンツの再配置を行うことも効果的である。これは、あるコンテンツの直後には、そのコンテンツのジャンル、アーティスト、年代、曲調などを始めとするコンテンツの属性に係る相関が高く、類似していると判断される別のコンテンツを配置して、番組全体の流れを滑らかにするという効果が得られる。
【0102】
例えば、あるコーナーを構成するK個のコンテンツのそれぞれの相関性を判断する場合、例えば、K個のコンテンツのそれぞれのジャンルやアーティスト、年代、曲調などの相関性に点数を付ける。これは、例えば、ジャンルに関してジャズの後にクラッシックが配置される場合には10点満点中8点、曲調に関して静かな曲調の後にややうるさい曲調が配置される場合には10点満点中2点などのように、あらかじめ、属性に入る変数間に点数を定めておくことで、それぞれ属性間の相関性を表す点数付けが可能となる。そして、K個のコンテンツの配置(K!通り)のそれぞれに関して、各属性間の相関性を表す点数の総和を計算し、その計算結果が最も高いコンテンツの配置を、コーナー内のコンテンツの流れが最も滑らかとなるコンテンツの配置とみなす。
【0103】
なお、コンテンツに係るスコアは、コンテンツ単独で決まる場合と、前後のコンテンツに依存して動的に決まる場合がある。また、コンテンツに係るスコアは、状況などに応じても動的に変更可能である。また、上述の例では、コンテンツに係るスコアを用いて、コンテンツの配置の最適化を行っているが、例えば、属性の相関(コンテンツベースフィルタ)や、コンテンツの相関(協調フィルタ)によって、コンテンツの配置の最適化を行うことも可能である。
【0104】
次に、本発明の実施の形態における制約解消処理のアルゴリズムの一例について具体的に説明する。本発明では、例えば図4及び図5に図示されているように、番組、コーナー、コンテンツが階層的な関係を有していることを利用して、各階層において定められた制約条件を、その上の階層及び/又は下の階層に伝播させることによって、効率的に制約解消処理を行うことが可能である。
【0105】
まず、図8を参照しながら、本発明の実施の形態における制約解消処理において用いられるツリー構造の概念について説明する。図8は、本発明の実施の形態における制約解消処理において用いられるツリー構造の概念を模式的に示す図である。なお、図8では、2つのコーナー階層(メインコーナー層及びサブコーナー層:上述の1次コーナー層及び2次コーナー層に対応)を有するツリー構造が図示されているが、コーナー層は1つの階層又は3つ以上の階層であってもよい。
【0106】
図8に図示されているように、1つの番組は、例えば、音楽、ニュース、CM、天気予報などの大分類を表すメインコーナー層、メインコーナー層の属性を満たし、メインコーナー層の直下の層を構成するサブコーナー層、さらに、サブコーナー層の直下に属し、番組を構成する最小要素となるコンテンツ層によって構成されており、この関係をツリー構造によって図示することが可能である。なお、以降、ツリー構造を形成する要素(図8では矩形によって図示されている)をエレメントと呼ぶことにする。また、エレメント間の線分は、上位の層が下位の層の属性を有していることを表しており、各エレメントは、ツリー構造のどの位置に配置されるかを示す情報を有している。
【0107】
また、図8に図示されている各エレメントは、言い換えると単なる入れ物に過ぎず、この入れ物の中にコンテンツ属性情報が入ることによって、番組表の生成が行われる。本発明の実施の形態における制約解消処理では、エレメントは、例えば、エレメントに入るコーナー又はコンテンツを特定するためのインデックス(I1〜I15)、エレメントの時間幅(D1〜D15)、エレメントの開始時刻(S1〜S15)、エレメントの終了時刻(E1〜E15)の4つの変数の集合によって表すことが可能である。なお、エレメントの開始時刻及び終了時刻が定まれば、エレメントの時間幅が定まるため、エレメントの総時間、開始時刻、終了時刻のいずれか1つは冗長な情報であるが、実際に計算を行なう際には、エレメントの時間幅、開始時刻、終了時刻のすべての情報を設定することによって計算効率が向上する。
【0108】
エレメントの変数に対して、ツリー構造によって各階層間で定まる制約は、以下の通りである。まず、あるエレメントの時間幅と、そのエレメントの直下に存在する複数のエレメントのそれぞれの時間幅の和とは、等しくなければならない。すなわち、図8の例では、例えばD1=D2+D3であり、D2=D4+D5であり、D4=D8+D9である。
【0109】
また、あるエレメントの開始時刻と、そのエレメントの直下に存在する最初のエレメントの開始時刻とは等しくなければならず、さらに、これらの開始時刻は、上記の最初のエレメントの直前に位置するエレメントの終了時刻と等しくなければならない。すなわち、図8の例では、例えばS1=S2=S4=S8であり、また、S3=S6=E5である。
【0110】
また、あるエレメントの終了時刻も同様に、そのエレメントの直下に存在する最後のエレメントの終了時刻に等しくなければならず、さらに、これらの終了時刻は、上記の最後のエレメントの直後に位置するエレメントの開始時刻と等しくなければならない。すなわち、図8の例では、例えばE1=E3=E7=E15であり、また、E2=E5=S6である。
【0111】
また、あるエレメントに対して属性が与えられた場合には、そのエレメントの直上及び/又は直下のエレメントに対して、その属性は伝播される。すなわち、例えばサブコーナー層のあるエレメントに対して、アーティスト**の曲という属性が制約された場合には、そのエレメントの下位に属するコンテンツは、アーティスト**の曲という属性を有する楽曲コンテンツに制約されるとともに、そのエレメントの上位に属するコンテンツは、アーティスト**の曲という属性が含まれるカテゴリ(例えば、音楽ジャンル)に制約される。
【0112】
次に、図8に図示されているツリー構造を用いた制約解消処理のアルゴリズムについて説明する。図9は、本発明の実施の形態におけるツリー構造を用いた制約解消処理のアルゴリズムの一例を示すフローチャートである。なお、この図9に図示されているフローチャートは、図2のステップS207における制約問題の解決処理における詳細な処理であると言える。
【0113】
制約解消処理では、図8に図示されているツリー構造の各エレメントの変数(上述のインデックス、時間幅、開始時刻、終了時刻)のすべてを決定するための処理が行われる。なお、各エレメントのインデックスが決定すれば(すなわち、各エレメントに入るコンテンツ及びコーナーが決定すれば)、その他のすべての変数も定まり、完全な番組表が作成されることになる。ここでは、図9を参照しながら、あるエレメントのインデックスを定めた後に(あるインデックスを束縛した後に)、ツリー内で束縛を伝播させることによって、制約解消処理の対象となるコンテンツの限定を行う場合について説明する。
【0114】
図9において、まず、あるエレメントに対してインデックスが入れられることによって、あるエレメントのインデックスが束縛される(ステップS901)。ここで、インデックスが束縛されたエレメントがどの階層に属しているかによって、定められたインデックスの伝播の態様が異なる。
【0115】
ステップS902及びS903は、インデックスが束縛されたエレメントがどの階層に属しているかに応じて場合分けを行うステップである。すなわち、図9に図示されているフローチャートにおいて、インデックスが束縛されたエレメントがメインコーナーの場合にはステップS904に進み、インデックスが束縛されたエレメントがサブコーナーの場合にはステップS905に進み、インデックスが束縛されたエレメントがコンテンツの場合にはステップS907に進む。
【0116】
インデックスが束縛されたエレメントがメインコーナーの場合、このメインコーナーの下位のエレメントに対して、定められたインデックスが伝播し、その結果、下位のエレメントのインデックスが限定される(ステップS904)。例えば、メインコーナーが「音楽コーナー」に定められた場合、その直下に属するサブコーナーのエレメントに入るインデックスは、「音楽コーナー」の直下に配置され得る「1970年代コーナー」や「ジャズコーナー」、「クラシックコーナー」などの属性を有するものに限定される。
【0117】
また、インデックスが束縛されたエレメントがサブコーナーの場合、このサブコーナーの上位及び下位の両方のエレメントに対して、定められたインデックスが伝播し、その結果、上位及び下位のエレメントのインデックスが限定される(ステップS905、S906)。例えば、サブコーナーが「邦楽コーナー」に定められた場合、その直下に属するコンテンツのエレメントに入るインデックスは、「邦楽コーナー」の直下に配置され得る邦楽アーティストの楽曲の属性を有するものに限定され、また、その直上に属するメインコーナーのエレメントに入るインデックスは、例えば「音楽コーナー」に限定される。
【0118】
また、インデックスが束縛されたエレメントがコンテンツの場合、このコンテンツの上位のエレメントに対して、定められたインデックスが伝播し、その結果、上位のエレメントのインデックスが限定される(ステップS907)。例えば、コンテンツが「楽曲Z」に定められた場合、その直上に属するサブコーナーのエレメントに入るインデックスは、この「楽曲Z」の直上に配置され得る「アーティスト**の曲」や「洋楽コーナー」などの属性を有するものに限定される。また、この場合には、あるコンテンツが定まるので、番組全体のどこかにこのコンテンツが埋め込まれることになり、番組全体の総時間の一部が、このコンテンツの時間幅によって満たされる(束縛される)という条件が新たに発生する(ステップS908)。
【0119】
そして、他の制約条件が付与されているか否かを考慮し(ステップS909)、他の制約条件が付与されている場合には、他の制約条件に加えて、上述のステップS901〜S908の束縛を加えた制約解消処理を行い(ステップS910)、制約条件が解消された解の集合が導出される。
【0120】
また、番組表作成のための各制約条件としては、例えば、下記のいずれか1つ又はこれらの組み合わせの制約条件が設定されて、制約解消処理が行われる。例えば、制約条件として、エレメントの開始時刻や終了時刻に関する制約が行われる。例えば、ニュースは、番組開始時刻から30分後に開始し40分後に終了するなどの制約がこれに当てはまる。
【0121】
また、例えば、制約条件として、エレメントの時間幅に関する制約が行われる。例えば、ニュースは10分間とするなどの制約がこれに当てはまる。また、例えば、制約条件として、エレメントの順序制約に関する制約が行われる。例えば、ニュースの直後に天気予報を入れるなどの制約がこれに当てはまる。
【0122】
一方、他の制約条件が存在しない場合には、上述のステップS901〜S908の束縛条件を満たす解の集合が導出される。この場合には、新たなインデックスの束縛や制約条件の付与などによって、図9に図示されているフローチャートに係る処理が再び行われてもよい。
【0123】
なお、上述の方法ではインデックスを束縛することによって制約解消処理の対象となるコンテンツの束縛を行っているが、初期値として定める情報はインデックスに限定されず、例えば、インデックスの束縛を行わずにエレメントの時間幅に係る束縛を行うことによって、制約解消処理の対象となるコンテンツの束縛を行ってもよい。
【0124】
また、エレメントの数を決定する必要があるが、このエレメントの数の決定アルゴリズムは、任意のアルゴリズムを使用することが可能であり、本発明においては、特に限定されるものではない。また、図9に図示されているフローチャートでは、どの階層のインデックスを決定してもよいアルゴリズムが図示されているが、実際の計算においては、より上位の階層から下位の階層に向かってインデックスの束縛条件を伝播させていくことが望ましい。
【0125】
次に、番組表の再スケジューリングについて説明する。上述のように番組表が作成された後に、番組表の再スケジューリング(再構成)を行うことも可能である。この番組表の再スケジューリングは、任意のタイミングで開始可能であるとともに、例えばユーザインタフェースを通したユーザからの再スケジューリングの指示、番組全体の時間延長(一例としては、本発明に係る番組表作成装置が車両に実装されており、目的地までの予想所要時間に基づいて番組表が作成されたものの、渋滞などの道路状況の影響によって目的地への予想到着時刻が延び、番組全体の総時間も延長される場合)や番組視聴状況の変更(一例としては、新たな同乗者が車両に乗り込んだ場合)などの任意のトリガに応じて開始可能である。
【0126】
例えば、作成された番組表に基づいてコンテンツの再生が行われている途中で、任意のトリガに応じて番組表の再スケジューリングを行う旨が決定された場合、いったんユーザに承認されている現在の番組構成を大幅に変更することは望ましくなく、現在の番組構成と類似した番組表の再スケジューリングが行われることが望ましい。
【0127】
ここで、図10を参照しながら、番組表の再スケジューリングの開始タイミングの一例について説明する。図10は、本発明の実施の形態における番組表の再スケジューリングの開始タイミングの一例を示す図である。なお、図10では、図7A〜図7Dと同様に番組表がツリー構造によって表現されている。
【0128】
図10には、メインコーナーM1、M2、サブコーナーS1〜S4、コンテンツC1〜C8により構成されている番組Pが図示されている。ここで、コンテンツC5の再生中に、何らかの番組の再スケジューリングのトリガが発生したとする。この場合、トリガ発生時に再生されているコンテンツC5より後ろの構成が変更される。すなわち、図10に図示されているツリー構造のうち、メインコーナーM1、サブコーナーS1、S2、コンテンツC1〜C5に係るエレメント及びツリー構造に関しては変更を加えず、点線によって囲まれている番組P、メインコーナーM2、サブコーナーS3、S4、コンテンツC6〜C8に係る領域に変更が加えられる。なお、この番組表の再スケジューリングに係る変更では、各エレメント内のインデックス、時間幅、開始時刻、終了時刻の4つの変数の変更が行われたり、エレメントの追加、削除などの処理が行われたりする。
【0129】
こうした番組表の再スケジューリング処理の際には、例えば再スケジューリング前の番組表や、この番組表の作成過程で生成された情報を有効利用することによって、番組表の再スケジューリング処理に費やされる処理時間や処理負荷の軽減が実現可能である。このような効率的な番組表の再スケジューリングを行う方法として、例えば、初期値利用法及び制約記録法の2つの再スケジューリング方法、あるいはこれらのスケジューリング方法の組み合わせを利用することが可能である。なお、以下に、初期値利用法及び制約記録法について説明するが、その他の任意の再スケジューリング方法を利用して、番組表の再スケジューリングを行うことも可能である。
【0130】
まず、再スケジューリングにおける初期値利用法について説明する。この初期値利用法は、現在の解(番組表)を初期値として利用し、新たに制約条件を課することによって、再スケジューリングを行い、新たな解を求める手法である。例えば、図10に図示されている例の場合には、メインコーナーM1、サブコーナーS1、S2、コンテンツC1〜C5に係るエレメントの変数を固定するとともに、番組P、メインコーナーM2、サブコーナーS3、S4、コンテンツC6〜C8に係るエレメントの変数に関しては、現在の設定を初期値として、新たな解の探索処理が行われる。これにより、番組表の再スケジューリングの際に、現在の番組表の構成に類似した新たな番組表を高速で再構成することが可能となる。
【0131】
次に、再スケジューリングにおける制約記録法について説明する。この制約記録法は、現在の解(番組表)を求める過程で随時生成された情報(現在の番組表の生成過程に係る計算結果などの情報)を記録しておき、再スケジューリング時に、この情報を再利用して新たな解を求める手法である。再スケジューリング時に利用可能な情報としては、例えば制約条件の組み合わせに対する解の候補集合や、その他の様々な制約解消処理の履歴などである。例えば、図10に図示されている例の場合には、メインコーナーM1、サブコーナーS1、S2、コンテンツC1〜C5に係るエレメントの変数を固定するとともに、番組P、メインコーナーM2、サブコーナーS3、S4、コンテンツC6〜C8に係るエレメントの変数に関してはいったん空にし、例えば、各変数の取りうる範囲の値や、その他の変更のない制約条件(例えば、番組中にニュースは1回など)の情報を再利用して、新たな解の探索処理が行われる。これにより、番組表の再スケジューリングの際に、変更のない制約条件に対する解の候補集合が再利用可能となり、現在の番組表の構成に類似した新たな番組表を高速で再構成することが可能となる。
【0132】
以上、上述の実施の形態において説明した通り、本発明によれば、制約解消技術(制約充足技術)を利用して、様々な条件に応じて、コンテンツの再生を行うための詳細な番組表を自動的に作成することが可能となる。また、特に、制約解消技術として、制約解消技術に含まれる制約論理プログラミング技術を利用することが可能となる。
【0133】
なお、本発明に係る制約解消技術を利用した番組表の作成アルゴリズムは、あらゆる番組表(マルチメディア番組表)の作成状況において利用可能である。すなわち、コンテンツの再生を行おうとしているユーザが、そのコンテンツの再生に係る番組表を作成する場合においても利用可能であり、また、ラジオ番組やテレビ番組などの制作や配信を行っている番組制作側において、番組を作成する場合においても利用可能である。また、本発明に係る番組表の作成では、番組表の自動作成が可能であることが特徴の1つであり、例えば、ユーザの操作を少なくすることによって運転の安全性を向上させる車載装置において利用されることが有用である。また、上述のように、特に、処理の負荷が大きくなる可能性のある番組作成処理(特に、制約解消処理)に関しては、特定の番組表作成サーバ(例えば、サービスプロバイダなどのセンタやサーバ上)で行われるようにし、すなわち、例えば、ユーザ側の通信装置から番組作成サーバに対して制約条件が送信され、この制約条件に基づいて作成された番組表が、番組作成サーバからユーザ側の通信装置に対して送られることによって、ユーザ側が、最適な番組表を取得できるように構成することも可能である。
【産業上の利用可能性】
【0134】
本発明に係る番組表作成方法及び番組表作成装置並びに番組表作成システムは、制約解消技術(制約充足技術)を利用して、様々な条件に応じて、コンテンツの再生を行うための詳細な番組表を自動的に作成することが可能であるという効果を有しており、コンテンツの再生を行うための番組表を作成する技術に適用可能である。
【特許請求の範囲】
【請求項1】
複数のコンテンツの時間的な配列を定める番組表を作成するための番組表作成方法において、
前記複数のコンテンツの選択に係る制約条件、及び/又は、前記複数のコンテンツの時間的な配列に係る制約条件に基づき、制約解消技術を利用して、前記番組表の作成を行うことを特徴とする番組表作成方法。
【請求項2】
あらかじめ定められた制約条件記述関数によって、前記制約条件の記述を行うことを特徴とする請求項1に記載の番組表作成方法。
【請求項3】
前記コンテンツを視聴又は聴取するユーザの嗜好を示すユーザ嗜好情報を、前記制約条件として取得することを特徴とする請求項1に記載の番組表作成方法。
【請求項4】
前記ユーザの嗜好を学習して前記ユーザ嗜好情報を自動生成することによって、前記制約条件を自動的に取得することを特徴とする請求項1に記載の番組表作成方法。
【請求項5】
前記コンテンツの再生に係る状況を示す状況情報を、前記制約条件として取得することを特徴とする請求項1に記載の番組表作成方法。
【請求項6】
前記複数のコンテンツのそれぞれの属性を示すコンテンツ属性情報を参照して、前記番組表の作成を行うことを特徴とする請求項1に記載の番組表作成方法。
【請求項7】
前記番組表の作成時の制約解消処理において、制約過多の状態となった場合に、前記コンテンツ及び/又は前記制約条件に優先度を設定し、前記優先度の高い前記制約条件を優先して前記制約解消処理を行うことを特徴とする請求項1に記載の番組表作成方法。
【請求項8】
前記番組表の作成時の制約解消処理において、制約不足の状態となった場合に、前記コンテンツ及び/又は前記制約条件にスコアを設定し、前記スコアをパラメータとした関数を用いた演算に係る複数の演算結果を相互に比較することによって、前記制約解消処理を行うことを特徴とする請求項1に記載の番組表作成方法。
【請求項9】
前記制約解消技術として、制約論理プログラミング技術を用いることを特徴とする請求項1に記載の番組表作成方法。
【請求項10】
最下位層に前記番組表を構成する前記コンテンツを表すエレメントが配置されており、前記コンテンツを表すエレメントの上位に、下位のエレメントの特徴を集約するエレメントが配置された1つ又は複数の階層を有するツリー構造によって前記番組表を表現する請求項1に記載の番組表作成方法。
【請求項11】
前記上下の層において相互に関連付けられた前記エレメント同士は、相互に矛盾しない属性情報又は時間幅情報を有する請求項10に記載の番組表作成方法。
【請求項12】
前記ツリー構造に基づいて、前記番組表の一部の再構成を行う請求項10に記載の番組表作成方法。
【請求項13】
前記番組表の一部の再構成を、以前の解を利用して新たな解を導出する方法、及び以前の解導出にかかる履歴を利用して新たな解を導出する方法のいずれか一方又はこれらの組み合わせを利用して行う請求項12に記載の番組表作成方法。
【請求項14】
前記番組表の作成時又は作成後に、前記コンテンツに設定されるスコア、前記コンテンツの属性の相関、前記コンテンツの相関のいずれか1つ又はこれらの組み合わせに基づいて、前記コンテンツの配列の最適化を行う請求項1に記載の番組表作成方法。
【請求項15】
時間軸に対して、1つ前に配置される前記コンテンツに基づいて、次に配置される前記コンテンツを決定する請求項1に記載の番組表作成方法。
【請求項16】
時間軸に対して、1つ後に配置される前記コンテンツに基づいて、前に配置される前記コンテンツを決定する請求項1又は15に記載の番組表作成方法。
【請求項17】
時間軸に対する複数の前記コンテンツに係るパターンに基づいて、前記コンテンツの配列を決定する請求項1に記載の番組表作成方法。
【請求項18】
前記コンテンツの属性を示すコンテンツ属性情報を参照して、全体として、隣接する前記コンテンツ間における相関が最も高くなるように前記コンテンツの配列を変更する請求項1に記載の番組表作成方法。
【請求項19】
複数のコンテンツの時間的な配列を定める番組表を作成するための番組表作成装置において、
前記複数のコンテンツの選択に係る制約条件、及び/又は、前記複数のコンテンツの時間的な配列に係る制約条件に基づき、制約解消技術を利用して、前記番組表の作成を行うことを特徴とする番組表作成装置。
【請求項20】
車両に搭載されており、前記車両内において視聴又は聴取される番組の前記番組表の作成を行うことを特徴とする請求項19に記載の番組表作成装置。
【請求項21】
前記制約解消技術として、制約論理プログラミング技術を用いることを特徴とする請求項19に記載の番組表作成装置。
【請求項22】
複数のコンテンツの時間的な配列を定める番組表を作成するための番組表作成システムにおいて、
前記複数のコンテンツの選択に係る制約条件、及び/又は、前記複数のコンテンツの時間的な配列に係る制約条件に基づき、制約解消技術を利用して、前記番組表の作成を行うように構成されており、前記所定のネットワーク上に存在する番組表作成サーバと、
前記所定のネットワークに接続可能であり、前記所定のネットワークを介して、前記番組表作成サーバに対して前記制約条件を送信するとともに、前記番組表作成サーバにおいて作成された前記番組表を受信することが可能な通信装置とを、
有することを特徴とする番組表作成システム。
【請求項23】
前記通信装置が車両に搭載されており、前記番組表作成サーバが、前記車両内において視聴又は聴取される番組の前記番組表の作成を行うことを特徴とする請求項22に記載の番組表作成システム。
【請求項24】
前記制約解消技術として、制約論理プログラミング技術を用いることを特徴とする請求項22に記載の番組表作成システム。
【請求項1】
複数のコンテンツの時間的な配列を定める番組表を作成するための番組表作成方法において、
前記複数のコンテンツの選択に係る制約条件、及び/又は、前記複数のコンテンツの時間的な配列に係る制約条件に基づき、制約解消技術を利用して、前記番組表の作成を行うことを特徴とする番組表作成方法。
【請求項2】
あらかじめ定められた制約条件記述関数によって、前記制約条件の記述を行うことを特徴とする請求項1に記載の番組表作成方法。
【請求項3】
前記コンテンツを視聴又は聴取するユーザの嗜好を示すユーザ嗜好情報を、前記制約条件として取得することを特徴とする請求項1に記載の番組表作成方法。
【請求項4】
前記ユーザの嗜好を学習して前記ユーザ嗜好情報を自動生成することによって、前記制約条件を自動的に取得することを特徴とする請求項1に記載の番組表作成方法。
【請求項5】
前記コンテンツの再生に係る状況を示す状況情報を、前記制約条件として取得することを特徴とする請求項1に記載の番組表作成方法。
【請求項6】
前記複数のコンテンツのそれぞれの属性を示すコンテンツ属性情報を参照して、前記番組表の作成を行うことを特徴とする請求項1に記載の番組表作成方法。
【請求項7】
前記番組表の作成時の制約解消処理において、制約過多の状態となった場合に、前記コンテンツ及び/又は前記制約条件に優先度を設定し、前記優先度の高い前記制約条件を優先して前記制約解消処理を行うことを特徴とする請求項1に記載の番組表作成方法。
【請求項8】
前記番組表の作成時の制約解消処理において、制約不足の状態となった場合に、前記コンテンツ及び/又は前記制約条件にスコアを設定し、前記スコアをパラメータとした関数を用いた演算に係る複数の演算結果を相互に比較することによって、前記制約解消処理を行うことを特徴とする請求項1に記載の番組表作成方法。
【請求項9】
前記制約解消技術として、制約論理プログラミング技術を用いることを特徴とする請求項1に記載の番組表作成方法。
【請求項10】
最下位層に前記番組表を構成する前記コンテンツを表すエレメントが配置されており、前記コンテンツを表すエレメントの上位に、下位のエレメントの特徴を集約するエレメントが配置された1つ又は複数の階層を有するツリー構造によって前記番組表を表現する請求項1に記載の番組表作成方法。
【請求項11】
前記上下の層において相互に関連付けられた前記エレメント同士は、相互に矛盾しない属性情報又は時間幅情報を有する請求項10に記載の番組表作成方法。
【請求項12】
前記ツリー構造に基づいて、前記番組表の一部の再構成を行う請求項10に記載の番組表作成方法。
【請求項13】
前記番組表の一部の再構成を、以前の解を利用して新たな解を導出する方法、及び以前の解導出にかかる履歴を利用して新たな解を導出する方法のいずれか一方又はこれらの組み合わせを利用して行う請求項12に記載の番組表作成方法。
【請求項14】
前記番組表の作成時又は作成後に、前記コンテンツに設定されるスコア、前記コンテンツの属性の相関、前記コンテンツの相関のいずれか1つ又はこれらの組み合わせに基づいて、前記コンテンツの配列の最適化を行う請求項1に記載の番組表作成方法。
【請求項15】
時間軸に対して、1つ前に配置される前記コンテンツに基づいて、次に配置される前記コンテンツを決定する請求項1に記載の番組表作成方法。
【請求項16】
時間軸に対して、1つ後に配置される前記コンテンツに基づいて、前に配置される前記コンテンツを決定する請求項1又は15に記載の番組表作成方法。
【請求項17】
時間軸に対する複数の前記コンテンツに係るパターンに基づいて、前記コンテンツの配列を決定する請求項1に記載の番組表作成方法。
【請求項18】
前記コンテンツの属性を示すコンテンツ属性情報を参照して、全体として、隣接する前記コンテンツ間における相関が最も高くなるように前記コンテンツの配列を変更する請求項1に記載の番組表作成方法。
【請求項19】
複数のコンテンツの時間的な配列を定める番組表を作成するための番組表作成装置において、
前記複数のコンテンツの選択に係る制約条件、及び/又は、前記複数のコンテンツの時間的な配列に係る制約条件に基づき、制約解消技術を利用して、前記番組表の作成を行うことを特徴とする番組表作成装置。
【請求項20】
車両に搭載されており、前記車両内において視聴又は聴取される番組の前記番組表の作成を行うことを特徴とする請求項19に記載の番組表作成装置。
【請求項21】
前記制約解消技術として、制約論理プログラミング技術を用いることを特徴とする請求項19に記載の番組表作成装置。
【請求項22】
複数のコンテンツの時間的な配列を定める番組表を作成するための番組表作成システムにおいて、
前記複数のコンテンツの選択に係る制約条件、及び/又は、前記複数のコンテンツの時間的な配列に係る制約条件に基づき、制約解消技術を利用して、前記番組表の作成を行うように構成されており、前記所定のネットワーク上に存在する番組表作成サーバと、
前記所定のネットワークに接続可能であり、前記所定のネットワークを介して、前記番組表作成サーバに対して前記制約条件を送信するとともに、前記番組表作成サーバにおいて作成された前記番組表を受信することが可能な通信装置とを、
有することを特徴とする番組表作成システム。
【請求項23】
前記通信装置が車両に搭載されており、前記番組表作成サーバが、前記車両内において視聴又は聴取される番組の前記番組表の作成を行うことを特徴とする請求項22に記載の番組表作成システム。
【請求項24】
前記制約解消技術として、制約論理プログラミング技術を用いることを特徴とする請求項22に記載の番組表作成システム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7A】
【図7B】
【図7C】
【図7D】
【図8】
【図9】
【図10】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7A】
【図7B】
【図7C】
【図7D】
【図8】
【図9】
【図10】
【国際公開番号】WO2005/096629
【国際公開日】平成17年10月13日(2005.10.13)
【発行日】平成19年8月16日(2007.8.16)
【国際特許分類】
【出願番号】特願2006−511823(P2006−511823)
【国際出願番号】PCT/JP2005/006368
【国際出願日】平成17年3月31日(2005.3.31)
【出願人】(502324066)株式会社デンソーアイティーラボラトリ (332)
【出願人】(302017089)株式会社ウィズダムテック (2)
【Fターム(参考)】
【国際公開日】平成17年10月13日(2005.10.13)
【発行日】平成19年8月16日(2007.8.16)
【国際特許分類】
【国際出願番号】PCT/JP2005/006368
【国際出願日】平成17年3月31日(2005.3.31)
【出願人】(502324066)株式会社デンソーアイティーラボラトリ (332)
【出願人】(302017089)株式会社ウィズダムテック (2)
【Fターム(参考)】
[ Back to top ]