(57)【要約】【課題】本発明は、ユーザが購入して所有している製品によって、実現可能なサービスが何か、あるいはあるサービスを実現するために不足している製品は何かを判別して、適当なサービスや製品をユーザに推薦するビジネスモデルに関する特許である。これらのデータから、推薦データを自動的に作成し、特にコンポーネント形式の製品の販売促進や電子取引に役立てることを目的とする。【解決手段】本発明の製品およびサービス推薦装置は、ユーザが所有する製品データを保持する手段と、製品の仕様データを保持する手段と、サービスを実現するのに必要な要件データを保持する手段と、特定のユーザを指定した時に、以上のデータから適当な推薦データを作成する手段とから構成される。【選択図】        なし【特許請求の範囲】
【請求項１】
登録ユーザが所有する製品を示すデータを保持するユーザ所有製品データ手段と、
本装置が扱う製品の仕様に関するデータを保持する製品仕様データ手段と、
本装置が扱うサービスを実現する要件に関するデータを保持するサービス要件データ保持手段と、
本装置で推薦を行なうユーザのユーザＩＤを保持するユーザＩＤ保持手段と、
前記ユーザＩＤ保持手段に保持されているユーザＩＤが示すユーザが所有する製品データを前記ユーザ所有製品データ保持手段より取得しその所有製品データと、前記製品仕様データ保持手段に保持されている製品仕様データと、前記サービス要件データ保持手段に保持されているサービス要件データとから、ユーザに製品およびサービスを推薦する推薦データを作成する推薦データ生成手段と、
前記推薦データ作成手段で作成された推薦データを保持する推薦データ保持手段とを備えることを特徴とする製品およびサービス推薦装置。
【請求項２】
前記推薦データ生成手段は、
前記ユーザ所有製品データ保持手段が保持しているユーザ所有製品データの中から、前記ユーザＩＤ保持手段に保持されているユーザＩＤが示すユーザが所有する製品データを特定するユーザ所有製品特定手段と、
前記製品仕様データ保持手段に保持されている製品仕様データの中から、前記ユーザ所有製品特定手段により特定された製品データの製品仕様データを特定する製品仕様データ特定手段と、
前記サービス要件データ保持手段に保持されているサービス要件データの中から、前記製品仕様データ特定手段により特定された製品仕様データにより前記サービス要件データの要件を満足するサービスを選択するサービス選択手段と、
前記サービス選択手段で選択されたサービスに対して、当該サービスを推薦する推薦データを作成する推薦データ作成手段と
から構成されることを特徴とする前記請求項１に記載のサービス推薦装置。
【請求項３】
特定のサービスを示すデータを保持するサービス保持手段をさらに備え、
前記推薦データ生成手段は、
前記サービス要件データ保持手段に保持されているサービス要件データの中から前記サービス保持手段に保持されているサービスのサービス要件データを特定するサービス特定手段と、
前記ユーザ所有製品データ保持手段が保持しているユーザ所有製品データの中から、前記ユーザＩＤ保持手段に保持されているユーザＩＤが示すユーザが所有する製品データを特定するユーザ所有製品特定手段と、
前記製品仕様データ保持手段に保持されている製品仕様データの中から、前記ユーザ所有製品特定手段により特定された製品データの製品仕様データを特定する製品仕様データ特定手段と、
前記サービス特定手段により特定されたサービス要件データに対して、前記製品仕様データ特定手段により特定された製品仕様データでは満足できない要件を抽出する不足要件抽出手段と、
前記不足要件抽出手段により抽出された不足要件を満足する製品を、前記製品仕様データ保持手段に保持されている製品仕様データを用いて特定する不足要件充足製品特定手段と、
前記不足要件充足製品特定手段により特定された製品に対して、当該サービスを推薦する推薦データを作成する推薦データ作成手段と
から構成されることを特徴とする前記請求項１に記載の製品推薦装置。
【請求項４】
前記推薦データ生成手段は、
前記ユーザ所有製品データ保持手段が保持しているユーザ所有製品データの中から、前記ユーザＩＤ保持手段に保持されているユーザＩＤが示すユーザが所有する製品データを特定するユーザ所有製品特定手段と、
前記製品仕様データ保持手段に保持されている製品仕様データの中から、前記ユーザ所有製品特定手段により特定された製品データの製品仕様データを特定する製品仕様データ特定手段と、
前記サービス要件データ保持手段に保持されているサービス要件データの中から、前記製品仕様データ特定手段により特定された製品仕様データにより前記サービス要件データの要件を満足する度合いが高いサービスを選択するサービス選択手段と、
前記サービス選択手段で選択されたサービスのサービス要件データに対して、前記製品仕様データ特定手段により特定された製品仕様データでは満足できない要件を抽出する不足要件抽出手段と、
前記不足要件抽出手段により抽出された不足要件を満足する製品を、前記製品仕様データ保持手段に保持されている製品仕様データを用いて特定する不足要件充足製品特定手段と、
前記不足要件充足製品特定手段により特定された製品と前記サービス選択手段で選択されたサービスとに対して、当該製品およびサービスを推薦する推薦データを作成する推薦データ作成手段と
から構成されることを特徴とする前記請求項１に記載の製品およびサービス推薦装置。
【請求項５】
登録ユーザが所有する製品を示すデータを保持するユーザ所有製品データ工程と、
本装置が扱う製品の仕様に関するデータを保持する製品仕様データ工程と、
本装置が扱うサービスを実現する要件に関するデータを保持するサービス要件データ保持工程と、
本装置で推薦を行なうユーザのユーザＩＤを保持するユーザＩＤ保持工程と、
前記ユーザＩＤ保持工程に保持されているユーザＩＤが示すユーザが所有する製品データを前記ユーザ所有製品データ保持工程より取得しその所有製品データと、前記製品仕様データ保持工程に保持されている製品仕様データと、前記サービス要件データ保持工程に保持されているサービス要件データとから、ユーザに製品およびサービスを推薦する推薦データを作成する推薦データ生成工程と、
前記推薦データ作成工程で作成された推薦データを保持する推薦データ保持工程とを備えることを特徴とする製品およびサービス推薦方法。
【請求項６】
前記推薦データ生成工程は、
前記ユーザ所有製品データ保持工程が保持しているユーザ所有製品データの中から、前記ユーザＩＤ保持工程に保持されているユーザＩＤが示すユーザが所有する製品データを特定するユーザ所有製品特定工程と、
前記製品仕様データ保持工程に保持されている製品仕様データの中から、前記ユーザ所有製品特定工程により特定された製品データの製品仕様データを特定する製品仕様データ特定工程と、
前記サービス要件データ保持工程に保持されているサービス要件データの中から、前記製品仕様データ特定工程により特定された製品仕様データにより前記サービス要件データの要件を満足するサービスを選択するサービス選択工程と、
前記サービス選択工程で選択されたサービスに対して、当該サービスを推薦する推薦データを作成する推薦データ作成工程と
から構成されることを特徴とする前記請求項５に記載のサービス推薦方法。
【請求項７】
特定のサービスを示すデータを保持するサービス保持工程をさらに備え、
前記推薦データ生成工程は、
前記サービス要件データ保持工程に保持されているサービス要件データの中から前記サービス保持工程に保持されているサービスのサービス要件データを特定するサービス特定工程と、
前記ユーザ所有製品データ保持工程が保持しているユーザ所有製品データの中から、前記ユーザＩＤ保持工程に保持されているユーザＩＤが示すユーザが所有する製品データを特定するユーザ所有製品特定工程と、
前記製品仕様データ保持工程に保持されている製品仕様データの中から、前記ユーザ所有製品特定工程により特定された製品データの製品仕様データを特定する製品仕様データ特定工程と、
前記サービス特定工程により特定されたサービス要件データに対して、前記製品仕様データ特定工程により特定された製品仕様データでは満足できない要件を抽出する不足要件抽出工程と、
前記不足要件抽出工程により抽出された不足要件を満足する製品を、前記製品仕様データ保持工程に保持されている製品仕様データを用いて特定する不足要件充足製品特定工程と、
前記不足要件充足製品特定工程により特定された製品に対して、当該サービスを推薦する推薦データを作成する推薦データ作成工程と
から構成されることを特徴とする前記請求項５に記載の製品推薦方法。
【請求項８】
前記推薦データ生成工程は、
前記ユーザ所有製品データ保持工程が保持しているユーザ所有製品データの中から、前記ユーザＩＤ保持工程に保持されているユーザＩＤが示すユーザが所有する製品データを特定するユーザ所有製品特定工程と、
前記製品仕様データ保持工程に保持されている製品仕様データの中から、前記ユーザ所有製品特定工程により特定された製品データの製品仕様データを特定する製品仕様データ特定工程と、
前記サービス要件データ保持工程に保持されているサービス要件データの中から、前記製品仕様データ特定工程により特定された製品仕様データにより前記サービス要件データの要件を満足する度合いが高いサービスを選択するサービス選択工程と、
前記サービス選択工程で選択されたサービスのサービス要件データに対して、前記製品仕様データ特定工程により特定された製品仕様データでは満足できない要件を抽出する不足要件抽出工程と、
前記不足要件抽出工程により抽出された不足要件を満足する製品を、前記製品仕様データ保持工程に保持されている製品仕様データを用いて特定する不足要件充足製品特定工程と、
前記不足要件充足製品特定工程により特定された製品と前記サービス選択工程で選択されたサービスとに対して、当該製品およびサービスを推薦する推薦データを作成する推薦データ作成工程と
から構成されることを特徴とする前記請求項５に記載の製品およびサービス推薦方法。
【請求項９】
前記請求項５から８に記載の製品およびサービス推薦方法を実現するコンピュータプログラムを記憶した記憶媒体。
【請求項１０】
前記請求項５から８に記載の製品およびサービス推薦方法を実現するコンピュータプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ネットワークを介し、製品およびサービスの推薦を自動生成する装置、特にユーザが既に保持する製品情報から他の製品やサービスの推薦を自動生成する製品およびサービス推薦装置に関するものである。
【０００２】
【従来の技術】
従来のこの種のサービス推薦装置では、ユーザの製品購入履歴やサービス利用履歴から新たな製品やサービスを推薦することが通常であった。
【０００３】
例えば、特開平７−３１１７９９で開示されているサービス選択支援装置及びサービス選択支援方法では、ユーザの通信利用履歴から割引サービスを推薦するデータを自動的に生成している。あるいは、特開２０００−１４８８６４で開示されている製品推薦を提供する方法および装置では、電子商取引サイトにおいてユーザが購入もしくはブラウズした履歴から新たな製品を推薦するデータを自動的に生成している。
【０００４】
【発明が解決しようとする課題】
しかしながら、上記従来例における製品およびサービス推薦装置では、ユーザが既に保持している製品とは無関係に別の製品やサービスを推薦するものである。そのため、既に保持している製品で利用できるサービスを知りたいユーザや、ある種のサービスを受けるために必要な他の製品は何かを知りたいユーザに対して、適切な推薦を提供できないという問題点があった。
【０００５】
本発明は上記の問題に鑑みてなされたものであり、既に保持している製品で利用できるサービスや、ある種のサービスを受けるために必要な他の製品を推薦するデータを自動生成する製品およびサービス推薦装置を提供することを目的とする。
【０００６】
【課題を解決するための手段】
上記課題を解決するために、本発明の製品およびサービス推薦装置は、
登録ユーザが所有する製品を示すデータを保持するユーザ所有製品データ手段と、
本装置が扱う製品の仕様に関するデータを保持する製品仕様データ手段と、
本装置が扱うサービスを実現する要件に関するデータを保持するサービス要件データ保持手段と、
本装置で推薦を行なうユーザのユーザＩＤを保持するユーザＩＤ保持手段と、
前記ユーザＩＤ保持手段に保持されているユーザＩＤが示すユーザが所有する製品データを前記ユーザ所有製品データ保持手段より取得しその所有製品データと、前記製品仕様データ保持手段に保持されている製品仕様データと、前記サービス要件データ保持手段に保持されているサービス要件データとから、ユーザに製品およびサービスを推薦する推薦データを作成する推薦データ生成手段と、
前記推薦データ作成手段で作成された推薦データを保持する推薦データ保持手段
とを備える。
【０００７】
【発明の実施の形態】
（実施例）
以下、図面を参照して本発明の一実施形態を詳細に説明する。
【０００８】
図１は、本実施例の製品およびサービス推薦装置における機能モジュールの構成例を示す図である。
【０００９】
同図において、１０１は本装置に登録されている各ユーザが所有する製品を示すデータを保持するユーザ所有製品データ保持部である。
【００１０】
１０２は、本装置が扱う製品の仕様に関するデータを保持する製品仕様データ保持部である。
【００１１】
１０３は、本装置が扱うサービスを実現する要件に関するデータを保持するサービス要件データ保持部である。
【００１２】
１０４は、本装置で推薦を行なうユーザのユーザＩＤを受理するユーザＩＤ受理部である。
【００１３】
１０５は、ユーザＩＤ受理部１０４で受理されたユーザＩＤが示すユーザが所有する製品をユーザ所有製品データ保持部１０１より取得し、その所有製品の仕様データを製品仕様データ保持部１０２より取得し、サービス要件データ保持部１０３に保持されているサービス要件データとから、ユーザに製品およびサービスを推薦する推薦データを作成する推薦データ作成部である。
【００１４】
１０６は、推薦データ作成部１０５で作成された推薦データを出力する推薦データ出力部である。
【００１５】
図２は、本発明の一実施例である製品およびサービス推薦装置を用いた推薦システムの構成例を示す構成図である。同図において、２０１は、ユーザがネットワークにアクセスするＷｅｂブラウザである。２０２は、Ｗｅｂブラウザ２０１からのリクエストに応じて、出力ページデータを返すＷｅｂサーバである。２０３は、Ｗｅｂブラウザ２０１とＷｅｂサーバ２０２との間の通信路となるインターネットである。２０４は、本実施例の製品およびサービス推薦装置であり、Ｗｅｂサーバ２０２からユーザＩＤを受理すると、当該ユーザＩＤが示すユーザに対する推薦データをＷｅｂサーバ２０２に対して出力する。
【００１６】
この構成例では、Ｗｅｂブラウザ２０１からＷｅｂサーバ２０２に対して送られるリクエストの中に、Ｃｏｏｋｉｅと呼ばれる形式でユーザＩＤが埋め込まれている。Ｗｅｂサーバ２０２は、リクエストが推薦データを含むべきページのリクエストであった場合は、当該ユーザＩＤを推薦装置２０４に送る。ユーザＩＤを受理した推薦装置２０４は、推薦データをＨＴＭＬ形式でＷｅｂサーバ２０２に出力する。Ｗｅｂサーバ２０２は、受理したＨＴＭＬデータを、ページの中の推薦データを入れる部分に挿入して、Ｗｅｂブラウザ２０１に返信する。このようにして、ユーザに対して推薦を行なうことができる。
【００１７】
以下、図３に示すフローチャートで、本実施例の製品およびサービス推薦装置の処理手順を説明する。
【００１８】
ユーザＩＤ受理部１０４でユーザＩＤデータが受理されると、まずステップ３０１で初期化処理が行なわれる。ユーザ所有製品データ保持部１０１に保持されているユーザ所有製品データの中から、ユーザＩＤ受理部１０４で受理されたユーザＩＤが示すユーザの所有製品データを抽出して、作業メモリに格納する。また、作業メモリ中に設けられる推薦候補リストを空に初期化すると共に、サービス要件データ保持部１０３に保持されているサービス要件データのリストを指し示すポインタをリストの先頭を指すように初期化する。そして、ステップ３０２に移る。
【００１９】
図４は、本実施例におけるユーザ所有製品データ保持部１０１のデータ構造とデータの例を示すである。同図において、各行が一つのユーザ所有製品データに相当する。それぞれのデータにおいて、列４０１にはそのユーザ所有製品データが表わすユーザを示すユーザＩＤが入る。本実施例では、ユーザＩＤを整数型としているが、一意に定めるデータであれば、文字列等任意のデータで構わない。列４０２には、当該ユーザが所有するカメラを識別するカメラＩＤのリストが入る。列４０３には、当該ユーザが所有するプリンタを識別するプリンタＩＤのリストが入る。列４０４には、当該ユーザが所有する画像データ管理ソフトウェアを識別するソフトウェアＩＤのリストが入る。これらのＩＤは、本実施例では２文字の文字列型としているが、一意に定めるデータであれば整数等任意のデータで構わない。また、リストを文字列の連結で表現しているが、配列等任意のデータ構造で表現して構わない。
【００２０】
ここで、例えばユーザＩＤ受理部１０４にユーザＩＤ「１」が受理された場合は、図４の１行目のデータが作業メモリに格納される。
【００２１】
図５は、本実施例におけるサービス要件データ保持部１０３のデータ構造とデータの例を示す図である。同図において、各行が一つのサービス要件データに相当する。それぞれのデータにおいて、列５０１には、当該サービスを実現するために必要な画像データを撮影するカメラの最低画素数を示すデータがメガピクセルを単位とする整数データとして入る。列５０２には、当該サービスを実現するために必要な画像データを印刷するプリンタの最低解像度を示すデータがｄｐｉを単位とする整数データとして入る。列５０３には、当該サービスを実現するために必要な画像データを印刷するプリンタの最低出力サイズを示すデータが用紙サイズを示す文字列データとして入る。列５０４には、当該サービスを実現するために必要な画像データをカメラから取り込んでプリンタに出力するソフトウェアが、これを識別するソフトウェアＩＤのリストとして入る。リスト中のいずれかのソフトウェアが必要であることを示す。列５０５には、当該サービスを識別するサービス番号が整数データとして入る。なお、５０６は、各サービスの内容の説明であるが、本実施例におけるサービス要件データに含まれるものではない。
【００２２】
次に、ステップ３０２では、サービス要件データのリストにおいてポインタが指すサービス要件データの次のデータがまだ存在するかを判定する。存在すればポインタを次のサービス要件データに動かしてステップ３０３に移る。存在しなければステップ３０５に移る。
【００２３】
ステップ３０３では、ポインタが指し示すサービス要件データの要件を、作業メモリにある所有製品データが満足するかを判定する。満足すればステップ３０４に移る。満足しなければステップ３０２に戻る。
【００２４】
以下、判定手順について説明する。
【００２５】
まず、ポインタが指し示すサービス要件データの各列のデータを、作業メモリに読み込む。列５０１のデータがｙ１で参照される整数データ領域に読み込まれる。列５０２のデータがｙ２で参照される整数データ領域に読み込まれる。列５０３のデータがｙ３で参照される文字列領域に読み込まれる。５０４のデータがｙ４で参照される文字列のリスト領域に読み込まれる。
【００２６】
次に作業メモリに読み込まれているユーザ所有製品データが、これらの要件を満足するかを判定する。その説明に先立ち、以下で使用する製品仕様データについて説明する。図６と図７は製品仕様データ保持部１０２に保持される製品仕様データの例である。図６は、カメラの製品仕様データの例であり、各行が一つのカメラの製品仕様データに相当する。同図において、列６０１には、当該カメラを識別するカメラＩＤが入る。列６０２には、当該カメラが撮影可能な最大画素数を示すデータがメガピクセルを単位とする整数データとして入る。図７は、プリンタの製品仕様データの例であり、各行が一つのプリンタの製品仕様データに相当する。同図において、列７０１には、当該カメラを識別するプリンタＩＤが入る。列７０２には、当該プリンタが出力可能な最大の解像度を示すデータがｄｐｉを単位とする整数データとして入る。列７０３には、当該プリンタが出力可能な最大用紙サイズを示すデータが文字列データとして入る。
【００２７】
まず、作業メモリに読み込まれているユーザ所有製品データの列４０２にあるカメラＩＤのリストから一つのＩＤをキーとして、図６に示すカメラの製品仕様データから、同一のカメラＩＤを持つ行を探す。そして、その列６０２の値をｘ１で参照される整数データ領域に読み込む。ここで、ｘ１＞＝ｙ１であれば次に進む。ｘ１＜ｙ１であれば別のＩＤをキーとして同様の判定を行なう。これを繰り返し、この一つも条件を満たさない場合は、サービス要件を満足しないと判定する。また、リストが空の場合もサービス要件を満足しないと判定する。
【００２８】
次に、作業メモリに読み込まれているユーザ所有製品データの列４０３にあるプリンタＩＤのリストから一つのＩＤをキーとして、図７に示すカメラの製品仕様データから、同一のプリンタＩＤを持つ行を探す。そして、その列７０２の値をｘ２で参照される整数データ領域に読み込む。また、列７０３の値をｘ３で参照される文字列データ領域によみこむ。ここで、ｘ２＞＝ｙ２かつｌａｒｇｅ（ｘ３，ｙ３）が真であれば次に進む。ここで、ｌａｒｇｅ（ｘ，ｙ）は、ｘで示される用紙サイズがｙで示される用紙サイズ以上であれば真を返し、そうでなければ偽を返すブール型関数である。ここで、いずれかの条件を満足しない場合は、別のＩＤをキーとして同様の判定を行なう。これを繰り返し、この一つも条件を満たさない場合は、サービス要件を満足しないと判定する。また、リストが空の場合もサービス要件を満足しないと判定する。
【００２９】
次に、作業メモリに読み込まれているユーザ所有製品データの列４０４にあるソフトウェアＩＤのリストを、ｘ４で参照される文字列リスト領域に読み込む。そして、ｘ４とｙ４の交わりが空でなければ、サービス要件を満足すると判定する。空であれば、サービス要件を満足しないと判定する。
【００３０】
以上が、ステップ３０３の処理の詳細である。
【００３１】
ステップ３０４では、ポインタが指し示すサービス要件データのサービス番号を推薦候補リストに追加する。そしてステップ３０２に戻る。
【００３２】
ステップ３０５では、推薦候補リストの中から一つのサービス番号を無作為に抽出する。推薦候補リスト中に存在するサービス番号の数までの整数を乱数により発生させ、その数が示す位置のサービス番号を抽出する。なお、推薦候補リストが空の場合は、サービス番号を０とする。そしてステップ３０６に移る。
【００３３】
ステップ３０６では、予め作成されたサービスごとのＨＴＭＬデータから、サービス番号により示す推薦データを抽出し、これを出力して全ての処理を終了する。ＨＴＭＬデータは、サービス番号で識別されるサービスを、推薦する内容の文書となるように作ればよい。また、サービス番号０番に対しては、一般的な推薦データを作成するなどしておく。
【００３４】
以下、データ例を参照して動作例を説明する。
【００３５】
まず、ユーザＩＤ受理部１０４にデータＩＤ「１」が受理されると、図４に示されるユーザ所有データ保持部から１行目のデータが作業メモリに読み込まれる。次に、図５に示されるサービス要件データ保持部の各データについて判定が行なわれる。この場合、要件を満足すると判定されるのは、サービス番号１０１、１０２、１０４である。これらの三つのサービスの中からいずれかが推薦される。
【００３６】
以上説明したように、本実施例の製品およびサービス推薦装置では、ユーザ所有製品データと製品仕様データとサービス要件データとを用いて、特定のユーザに対するサービス推薦データを生成するようにしたので、ユーザが所有する製品に応じた推薦データを自動作成することができる。これにより、このサービス推薦装置から推薦データを受けるユーザは、自らが所有する製品を使って新たに実現できるサービスを知ることができ、所有製品を有効活用することができる。
【００３７】
（他の実施例）
上記実施例においては、複数の推薦サービス候補から推薦するサービスを乱数により選択する場合について説明したが、これに限定されるものではなく、他の選択戦略を用いてもよい。
【００３８】
例えば、性別や年齢といったユーザに関する他の属性を用いてサービスを分類したり、これらの属性からルールにより導き出されるサービスの優先度を用いたりして選択してもよい。
【００３９】
上記実施例においては、ユーザが所有する製品で実現可能なサービスを推薦するデータを作成する場合について説明したが、これに限定されるものではなく、他の推薦データを作成してもよい。
【００４０】
ここでは、特定のサービスを実行するにあたりユーザが所有する製品では不足の時に新たに購入すべき製品を推薦するデータを作成する装置について説明する。本実施例の機能モジュールの機能構成や本実施例の装置を使用するシステムの構成例は図１および図２に同じである。
【００４１】
図８は、本実施例の製品およびサービス推薦装置における機能モジュールの構成例を示す図である。
【００４２】
同図において、８０１は本装置に登録されている各ユーザが所有する製品を示すデータを保持するユーザ所有製品データ保持部である。
【００４３】
８０２は、本装置が扱う製品の仕様に関するデータを保持する製品仕様データ保持部である。
【００４４】
８０３は、本装置が扱うサービスを実現する要件に関するデータを保持するサービス要件データ保持部である。
【００４５】
８０４は、本装置で推薦を行なうユーザのユーザＩＤを受理するユーザＩＤ受理部である。
【００４６】
８０５は、本装置で推薦する製品で実現するサービスを示すサービス番号を受理するサービス番号受理部である。
【００４７】
８０６は、ユーザＩＤ受理部８０４で受理されたユーザＩＤが示すユーザが所有する製品をユーザ所有製品データ保持部８０１より取得し、その所有製品の仕様データを製品仕様データ保持部８０２より取得し、サービス番号受理部８０５で受理されたサービス番号が示すサービスのサービス要件データをサービス要件データ保持部８０３より取得し、サービスの要件を満足しない点を充足する製品をユーザに推薦する推薦データを作成する推薦データ作成部である。
【００４８】
８０７は、推薦データ作成部８０６で作成された推薦データを出力する推薦データ出力部である。
【００４９】
図９は、本実施例の処理手順を説明したフローチャートである。
【００５０】
ユーザＩＤ受理部８０４でユーザＩＤデータが受理され、サービス番号受理部８０５でサービス番号が受理されると、まずステップ９０１で初期化処理が行なわれる。ユーザ所有製品データ保持部８０１に保持されているユーザ所有製品データの中から、ユーザＩＤ受理部８０４で受理されたユーザＩＤが示すユーザの所有製品データを抽出して作業メモリに格納する。また、サービス番号受理部８０５で受理されたサービス番号が示すサービスのサービス要件データの各列のデータを、作業メモリに読み込む。列５０１のデータがｙ１で参照される整数データ領域に読み込まれる。列５０２のデータがｙ２で参照される整数データ領域に読み込まれる。列５０３のデータがｙ３で参照される文字列領域に読み込まれる。５０４のデータがｙ４で参照される文字列のリスト領域に読み込まれる。さらに、作業メモリ中に設けられる推薦候補リストを空に初期化する。そして、ステップ９０２に移る。
【００５１】
ステップ９０２では、ステップ９０１で作業メモリに読み込まれたユーザ所有製品データに列挙されている製品で、同じく作業メモリに読み込まれたサービスの要件を満足するかを判定する。
【００５２】
以下、判定手順について説明する。  まず、作業メモリに読み込まれているユーザ所有製品データの列４０２にあるカメラＩＤのリストから一つのＩＤをキーとして、図６に示すカメラの製品仕様データから、同一のカメラＩＤを持つ行を探す。そして、その列６０２の値をｘ１で参照される整数データ領域に読み込む。ここで、ｘ１＞＝ｙ１であれば次に進む。ｘ１＜ｙ１であれば別のＩＤをキーとして同様の判定を行なう。これを繰り返し、この一つも条件を満たさない場合は、サービス要件を満足しないと判定する。また、リストが空の場合もサービス要件を満足しないと判定する。その上で、不足要件であるｙ１のデータを作業メモリに保持する。
【００５３】
次に、作業メモリに読み込まれているユーザ所有製品データの列４０３にあるプリンタＩＤのリストから一つのＩＤをキーとして、図７に示すカメラの製品仕様データから、同一のプリンタＩＤを持つ行を探す。そして、その列７０２の値をｘ２で参照される整数データ領域に読み込む。また、列７０３の値をｘ３で参照される文字列データ領域によみこむ。ここで、ｘ２＞＝ｙ２かつｌａｒｇｅ（ｘ３，ｙ３）が真であれば次に進む。ここで、ｌａｒｇｅ（ｘ，ｙ）は、先の実施例と同じ関数である。ここで、いずれかの条件を満足しない場合は、別のＩＤをキーとして同様の判定を行なう。これを繰り返し、この一つも条件を満たさない場合は、サービス要件を満足しないと判定する。また、リストが空の場合もサービス要件を満足しないと判定する。その上で、不足要件であるｙ２とｙ３のデータを作業メモリに保持する。
【００５４】
次に、作業メモリに読み込まれているユーザ所有製品データの列４０４にあるソフトウェアＩＤのリストを、ｘ４で参照される文字列リスト領域に読み込む。そして、ｘ４とｙ４の交わりが空でなければ、サービス要件を満足すると判定する。空であれば、サービス要件を満足しないと判定する。その上で、不足要件であるｙ４のデータを作業メモリに保持する。
【００５５】
サービス要件を満足しない場合は、製品仕様データ保持部８０２に保持されている製品仕様データのリストを指し示すポインタをリストの先頭を指すように初期化して、ステップ９０３に移る。サービス要件を満足する場合は、ステップ９０６に移る。
【００５６】
ステップ９０３では、ポインタが示すリストがまだあるかを調べ、あればポインタを進めてステップ９０４に移る。なければ、ステップ９０６に移る。
【００５７】
ステップ９０４では、ポインタが示す製品仕様データの仕様で、作業メモリにある不足要件を満足するかを判定する。
【００５８】
以下判定方法について説明する。作業メモリにある不足要件について下記の条件を全て満足すれば充足すると判定する。
【００５９】
作業メモリにｙ１で参照されるデータが存在する場合は、ポインタが示す製品仕様データがカメラの製品仕様データであれば、その列６０２の値をｘ１で参照される整数データ領域に読み込む。ここで、ｘ１＞＝ｙ１であれば充足すると判定する。それ以外の場合は充足しないと判定する。
【００６０】
作業メモリにｙ２で参照されるデータが存在する場合は、ポインタが示す製品仕様データがプリンタの製品仕様データであれば、その列７０２の値をｘ２で参照される整数データ領域に読み込む。ここで、ｘ２＞＝ｙ２であれば充足すると判定する。それ以外の場合は充足しないと判定する。
【００６１】
作業メモリにｙ３で参照されるデータが存在する場合は、ポインタが示す製品仕様データがプリンタの製品仕様データであれば、その列７０３の値をｘ３で参照される文字列データ領域に読み込む。ここで、ｌａｒｇｅ（ｘ３，ｙ３）が真であれば充足すると判定する。それ以外の場合は充足しないと判定する。
【００６２】
作業メモリにｙ４で参照されるデータが存在する場合は、ポインタが示す製品仕様データがソフトウェアの製品仕様データであれば、そのソフトウェアＩＤがｙ４の要素である時に充足すると判定する。それ以外の場合は充足しないと判定する。
【００６３】
以上、全ての不足要件を満足する製品をポインタが指していた場合は、ステップ９０５に移る。そうでない場合は、ステップ９０３に戻る。
【００６４】
ステップ９０５では、ポインタが示す製品のＩＤを推薦候補リストに追加する。そしてステップ９０３に戻る。
【００６５】
ステップ９０６では、推薦候補リストの中から一つのサービス番号を無作為に抽出する。推薦候補リスト中に存在する製品ＩＤの数までの整数を乱数により発生させ、その数が示す位置のサービス番号を抽出する。なお、推薦候補リストが空の場合は、製品ＩＤを他と重複しない特殊ＩＤとする。そしてステップ９０７に移る。
【００６６】
ステップ９０７では、予め作成された製品ごとのＨＴＭＬデータから、製品ＩＤにより示す推薦データを抽出し、これを出力して全ての処理を終了する。ＨＴＭＬデータは、製品ＩＤで識別される製品を推薦する内容の文書となるように作ればよい。また、特殊ＩＤに対しては、一般的な推薦データを作成するなどしておく。
【００６７】
以下、データ例を参照して動作例を説明する。
【００６８】
まず、ユーザＩＤ受理部８０４にデータＩＤ「２」が受理され、サービス番号受理部８０５にサービス番号「１０２」が受理されると、図４に示されるユーザ所有データ保持部から２行目のデータと、図５に示されるサービス要件保持部から２行目のデータが作業メモリに読み込まれる。ここでサービスの要件を満足するかを判定すると、ｙ２とｙ３で参照されるデータが満足されないと判定される。次に、各製品仕様データに対して、これらを充足するデータを探していくと、プリンタＰＡからＰＤが充足されるので、これらの製品のいずれかが推薦される。
【００６９】
以上説明したように、本実施例の製品およびサービス推薦装置では、ユーザ所有製品データと製品仕様データとサービス要件データとを用いて、特定のユーザに対する製品推薦データを生成するようにしたので、ユーザが特定のサービスを受ける時に不足する製品の推薦データを自動作成することができる。これにより、この製品推薦装置から推薦データを受けるユーザは、自らが所有する製品を活用して、新たなサービスを実現するために必要な製品を知ることができ、所有製品を有効活用しつつ新たなサービスを受けることができる。
【００７０】
上記実施例においては、複数の推薦製品候補から推薦するサービスを乱数により選択する場合について説明したが、これに限定されるものではなく、他の選択戦略を用いてもよい。
【００７１】
例えば、候補の中でも最も価格の低い製品を選択してもよい。
【００７２】
上記実施例においては、サービスは既知のものとして製品だけを推薦するデータを作成する場合について説明したが、これに限定されるものではなく、製品と合わせて当該サービスも推薦するデータを作成してもよい。
【００７３】
上記実施例においては、一つのサービスに対して、推薦するデータを作成する場合について説明したが、これに限定されるものではなく、複数のサービスに対して推薦するデータを作成してもよい。前記実施例において、複数のサービスに対して同じ処理を繰り返すことで実現される。
【００７４】
この場合、一つの製品で複数のサービスを実現可能な場合に、その製品と複数のサービスを推薦するデータを作成してもよいし、一つのサービスを選択して、その製品とサービスを推薦するデータを作成してもよい。
【００７５】
上記実施例においては、製品の購入を推薦するデータを作成する場合について説明したが、これに限定されるものではなく、製品のレンタルや製品の一時使用が可能な店舗を推薦するデータを作成してもよい。
【００７６】
例えば、サービスを実現できるプリンタを備えたプリントショップを、その所在地と共に推薦するデータを作成してもよい。この場合、プリントショップの選択にあたっては、ユーザの所在地に近いショップを選択するといった戦略を用いてよいことは言うまでもない。
【００７７】
上記実施例においては、サービス要件データをテーブルで表わし、予め定めた項目について判定を行なう場合について説明したが、これに限定されるものではなく、要件を記述して判定できる任意のデータ構造と判定手段でよい。
【００７８】
例えば、制約条件式やルールで記述してもよい。
【００７９】
上記実施例においては、製品としてカメラ、プリンタ、画像データ処理ソフトウェアをとり、カメラで撮影した画像データを様々な形態でプリントするサービスについて推薦データを作成する場合について説明したが、これに限定されるものではなく、任意の製品やサービスに関する推薦データの作成が実現可能である。
【００８０】
例えば、オーディオ関連製品に対して、メディアから別のメディアへのダビングや編集といったサービスを推薦するとか、調理器具製品に対して、ある料理を作成するサービスを推薦するといった例が実現可能である。
【００８１】
上記実施例においては、各部を同一の汎用計算機上で実現する場合について説明したが、その一部がネットワークで接続された他の汎用計算機や特定用途の装置に分散していてもよい。また、ユーザ所有製品保持部、製品仕様データ保持部、サービス要件データ保持部は全データを集中して保持する場合について説明したが、データの一部が他に分散してもよい。
【００８２】
上記実施例においては、コンピュータまたはＣＰＵやＭＰＵを用いて、前述した機能を実現するソウトウェアプログラムを動作させる実施形態であったが、その機能の全部または一部を実現する論理回路により達成されることは言うまでもない。
【００８３】
なお、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記録媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
【００８４】
プログラムコードを供給するための記録媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤーＲＯＭ、ＣＤーＲ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることができる。
【００８５】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳなどが実際の処理の一部または全部を行ない、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００８６】
更に、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行ない、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００８７】
【発明の効果】
以上説明したように、本発明によれば、既に保持している製品で利用できるサービスや、ある種のサービスを受けるために必要な他の製品を推薦するデータを自動生成することができ、製品やサービスの提供者にとって、利用者に対して適切な宣伝を容易に提供できるという効果が得られる。また、ユーザにとっては、自らが所有する製品を有効活用する情報を容易に得られるという効果がある。
【図面の簡単な説明】
【図１】本発明の実施例における機能ブロックの構成図。
【図２】本発明の実施例を用いた推薦システムの構成図。
【図３】本発明の実施例における処理手順を示すフローチャート。
【図４】本発明の実施例におけるユーザ所有製品データの例を示す図。
【図５】本発明の実施例におけるサービス要件データの例を示す図。
【図６】本発明の実施例における製品仕様データの例を示す図。
【図７】本発明の実施例における別の製品仕様データデータの例を示す図。
【図８】本発明の他の実施例における機能ブロックの構成図。
【図９】本発明の他の実施例における処理手順を示すフローチャート。
【符号の説明】
１０１  ユーザ所有製品データ保持部
１０２  製品仕様データ保持部
１０３  サービス要件データ保持部
１０４  ユーザＩＤ受理部
１０５  推薦データ作成部
１０６  推薦データ出力部
【図１】
2004348613.tif 000002
【図２】
2004348613.tif 000003
【図３】
2004348613.tif 000004
【図４】
2004348613.tif 000005
【図５】
2004348613.tif 000006
【図６】
2004348613.tif 000007
【図７】
2004348613.tif 000008
【図８】
2004348613.tif 000009
【図９】
2004348613.tif 000010