(57)【要約】【課題】複数のジャンルにそれぞれ属する商品が所定の比率でランクインしたランキングを生成できるランキング生成装置、ランキング生成プログラム、ランキング生成プログラムを記録したコンピュータ読み取り可能な記録媒体、及びランキング生成方法を提供する。【解決手段】ランキング生成装置１００は、複数の商品のそれぞれが属するジャンル毎に、商品の指標値に基づいてジャンル別ランキング情報を生成する個別生成部１０２を備える。また、ランキング生成装置１００は、ジャンル別ランキング情報に含まれる商品の指標値を、第１ジャンルに属する商品の指標値に対する第２ジャンルに属する商品の指標値の比率が略一定になるように補正し、補正された指標値に基づいて、第１ジャンル及び第２ジャンルにそれぞれ属する商品の統合ランキング情報を生成する統合生成部１０５をさらに備える。【選択図】図３
2012118696.tif 000002
【特許請求の範囲】
【請求項１】
複数の商品のそれぞれが属するジャンルが記憶される商品記憶部、
前記記憶されたジャンル毎に、当該ジャンルに属する商品の所定の指標に対する指標値を求め、当該指標値に基づいて当該ジャンルに属する商品のジャンル別ランキング情報を生成する個別生成部、
第１ジャンル及び第２ジャンルを含む複数のジャンルが指定されると、当該複数のジャンルのそれぞれについて、前記生成されたジャンル別ランキング情報に含まれる商品の指標値を、前記第１ジャンルに属する商品の指標値に対する前記第２ジャンルに属する商品の指標値の比率が略一定になるように補正し、当該補正された指標値に基づいて、当該複数のジャンルに属する商品の統合ランキング情報を生成する統合生成部、を備える、
ことを特徴とするランキング生成装置。
【請求項２】
請求項１に記載のランキング生成装置であって、
前記統合生成部は、各ジャンル別ランキング情報に含まれる商品の指標値の総和を求め、当該求められた総和の積算値を算出し、当該積算値に対する前記総和の比率がそれぞれ略等しくなるように当該ジャンルに対する係数を定め、各ジャンル別ランキング情報に含まれる各商品の指標値に当該ジャンルに対する係数を乗じることにより、当該商品の指標値を補正する、
ことを特徴とするランキング生成装置。
【請求項３】
請求項１又は２に記載のランキング生成装置であって、
前記ジャンルの各々は項目ごとに分類されており、
ユーザからのクエリを受け付ける受付部、
前記受け付けられたクエリに該当するジャンルおよび当該ジャンルを含む項目を選択し、前記選択した項目の中から前記クエリに該当するジャンルを最も多く含む項目を特定し、前記特定された項目に含まれるジャンルを前記統合生成部に指定する特定部、をさらに備える、
ことを特徴とするランキング生成装置。
【請求項４】
請求項３に記載のランキング生成装置であって、
ユーザの属性があらかじめ記憶されるユーザ記憶部、をさらに備え、
前記所定の指標は、前記記憶されたジャンルごとにあらかじめ定められ、
前記統合生成部は、前記第１ジャンルと前記第２ジャンルとを含む複数のジャンルにあらかじめ定められる所定の指標がそれぞれ異なる場合、
（１）前記クエリを発したユーザについて前記ユーザ記憶部に記憶される属性にあらかじめ対応付けられるユーザ指標を取得し、
（２）当該複数のジャンルのうち、当該取得されたユーザ指標と異なる所定の指標があらかじめ定められているジャンルについて、当該ジャンルに属する商品の当該取得されたユーザ指標に対する指標値を求め、当該指標値に基づいて当該ジャンルに属する商品のジャンル別ランキング情報を生成し、
（３）当該複数のジャンルのそれぞれについて前記生成されたジャンル別ランキング情報に含まれる商品の前記取得されたユーザ指標に対する指標値を、前記第１ジャンルに属する商品の前記ユーザ指標に対する指標値と、前記第２ジャンルに属する商品の前記ユーザ指標に対する指標値との比率が略一定になるように補正し、当該補正されたユーザ指標値に基づいて、当該複数のジャンルに属する商品の統合ランキング情報を生成する、
ことを特徴とするランキング生成装置。
【請求項５】
請求項４に記載のランキング生成装置であって、
前記ユーザ記憶部には、ユーザによる商品の購入履歴が、さらに記憶され、
前記統合生成部は、前記クエリを発したユーザについて、前記記憶された商品の購入履歴からユーザの嗜好を求め、当該ユーザの嗜好から前記複数のジャンルの重みを取得し、当該商品が属するジャンルについて取得された重みを前記指標値にさらに乗じることにより、当該指標値を補正する、
ことを特徴とするランキング生成装置。
【請求項６】
コンピュータを、
複数の商品のそれぞれが属するジャンルが記憶される商品記憶部、
前記記憶されたジャンル毎に、当該ジャンルに属する商品の所定の指標に対する指標値を求め、当該指標値に基づいて当該ジャンルに属する商品のジャンル別ランキング情報を生成する個別生成部、
第１ジャンル及び第２ジャンルを含む複数のジャンルが指定されると、当該複数のジャンルのそれぞれについて、前記生成されたジャンル別ランキング情報に含まれる商品の指標値を、前記第１ジャンルに属する商品の指標値に対する前記第２ジャンルに属する商品の指標値の比率が略一定になるように補正し、当該補正された指標値に基づいて、当該複数のジャンルに属する商品の統合ランキング情報を生成する統合生成部、として機能させる、
ことを特徴とするランキング生成プログラム。
【請求項７】
コンピュータを、
複数の商品のそれぞれが属するジャンルが記憶される商品記憶部、
前記記憶されたジャンル毎に、当該ジャンルに属する商品の所定の指標に対する指標値を求め、当該指標値に基づいて当該ジャンルに属する商品のジャンル別ランキング情報を生成する個別生成部、
第１ジャンル及び第２ジャンルを含む複数のジャンルが指定されると、当該複数のジャンルのそれぞれについて、前記生成されたジャンル別ランキング情報に含まれる商品の指標値を、前記第１ジャンルに属する商品の指標値に対する前記第２ジャンルに属する商品の指標値の比率が略一定になるように補正し、当該補正された指標値に基づいて、当該複数のジャンルに属する商品の統合ランキング情報を生成する統合生成部、として機能させる、
ことを特徴とするランキング生成プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項８】
個別生成部と統合生成部とを備えるランキング生成装置が実行する方法であって、
前記個別生成部が、複数の商品のそれぞれが属するジャンル毎に、当該ジャンルに属する商品の所定の指標に対する指標値を求め、当該指標値に基づいて当該ジャンルに属する商品のジャンル別ランキング情報を生成する個別生成ステップ、
第１ジャンル及び第２ジャンルを含む複数のジャンルが指定されると、前記統合生成部が、当該複数のジャンルのそれぞれについて、前記生成されたジャンル別ランキング情報に含まれる商品の指標値を、前記第１ジャンルに属する商品の指標値に対する前記第２ジャンルに属する商品の指標値の比率が略一定になるように補正し、当該補正された指標値に基づいて、当該複数のジャンルに属する商品の統合ランキング情報を生成する統合生成ステップ、を有する、
ことを特徴とするランキング生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ランキング生成装置、ランキング生成プログラム、ランキング生成プログラムを記録したコンピュータ読み取り可能な記録媒体、及びランキング生成方法に関する。
【背景技術】
【０００２】
従来から、検索キーワードに基づいて既に作成されたランキングを、当該検索キーワードでウェブを検索した検索結果に基づいて再作成する技術が知られている（例えば、特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−０６１４２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ここで、特許文献１の技術では、複数の異なるジャンルに属する商品を併せてランキングする場合には、同じ種類の指標値に基づいてこれらの商品をランキングしても、あるジャンルに属する商品の指標値が他のジャンルに属する商品の指標値よりも全体的に大きい傾向にあると、当該あるジャンルの商品がランクインし易いが、当該他のジャンルの商品がランクインし難いという問題があった。
【０００５】
本発明は、このような点に鑑みてなされたものであり、その目的とするところは、複数のジャンルにそれぞれ属する商品が所定の比率でランクインしたランキングを生成できるランキング生成装置、ランキング生成プログラム、ランキング生成プログラムを記録したコンピュータ読み取り可能な記録媒体、及びランキング生成方法を提供することにある。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明の第１の観点に係るランキング生成装置は、
複数の商品のそれぞれが属するジャンルが記憶される商品記憶部、
前記記憶されたジャンル毎に、当該ジャンルに属する商品の所定の指標に対する指標値を求め、当該指標値に基づいて当該ジャンルに属する商品のジャンル別ランキング情報を生成する個別生成部、
第１ジャンル及び第２ジャンルを含む複数のジャンルが指定されると、当該複数のジャンルのそれぞれについて、前記生成されたジャンル別ランキング情報に含まれる商品の指標値を、前記第１ジャンルに属する商品の指標値に対する前記第２ジャンルに属する商品の指標値の比率が略一定になるように補正し、当該補正された指標値に基づいて、当該複数のジャンルに属する商品の統合ランキング情報を生成する統合生成部、を備える、
ことを特徴とする。
【０００７】
また、第１の観点に係るランキング生成装置において、
前記統合生成部は、各ジャンル別ランキング情報に含まれる商品の指標値の総和を求め、当該求められた総和の積算値を算出し、当該積算値に対する前記総和の比率がそれぞれ略等しくなるように当該ジャンルに対する係数を定め、各ジャンル別ランキング情報に含まれる各商品の指標値に当該ジャンルに対する係数を乗じることにより、当該商品の指標値を補正する、
としても良い。
【０００８】
また、第１の観点に係るランキング生成装置において、
前記ジャンルの各々は項目ごとに分類されており、
ユーザからのクエリを受け付ける受付部、
前記受け付けられたクエリに該当するジャンルおよび当該ジャンルを含む項目を選択し、前記選択した項目の中から前記クエリに該当するジャンルを最も多く含む項目を特定し、前記特定された項目に含まれるジャンルを前記統合生成部に指定する特定部、をさらに備える、
としても良い。
【０００９】
また、第１の観点に係るランキング生成装置において、
ユーザの属性があらかじめ記憶されるユーザ記憶部、をさらに備え、
前記所定の指標は、前記記憶されたジャンルごとにあらかじめ定められ、
前記統合生成部は、前記第１ジャンルと前記第２ジャンルとを含む複数のジャンルにあらかじめ定められる所定の指標がそれぞれ異なる場合、
（１）前記クエリを発したユーザについて前記ユーザ記憶部に記憶される属性にあらかじめ対応付けられるユーザ指標を取得し、
（２）当該複数のジャンルのうち、当該取得されたユーザ指標と異なる所定の指標があらかじめ定められているジャンルについて、当該ジャンルに属する商品の当該取得されたユーザ指標に対する指標値を求め、当該指標値に基づいて当該ジャンルに属する商品のジャンル別ランキング情報を生成し、
（３）当該複数のジャンルのそれぞれについて前記生成されたジャンル別ランキング情報に含まれる商品の前記取得されたユーザ指標に対する指標値を、前記第１ジャンルに属する商品の前記ユーザ指標に対する指標値と、前記第２ジャンルに属する商品の前記ユーザ指標に対する指標値との比率が略一定になるように補正し、当該補正されたユーザ指標値に基づいて、当該複数のジャンルに属する商品の統合ランキング情報を生成する、
としても良い。
【００１０】
また、第１の観点に係るランキング生成装置において、
前記ユーザ記憶部には、ユーザによる商品の購入履歴が、さらに記憶され、
前記統合生成部は、前記クエリを発したユーザについて、前記記憶された商品の購入履歴からユーザの嗜好を求め、当該ユーザの嗜好から前記複数のジャンルの重みを取得し、当該商品が属するジャンルについて取得された重みを前記指標値にさらに乗じることにより、当該指標値を補正する、
としても良い。
【００１１】
また、上記目的を達成するため、本発明の第２の観点に係るランキング生成プログラムは、
コンピュータを、
複数の商品のそれぞれが属するジャンルが記憶される商品記憶部、
前記記憶されたジャンル毎に、当該ジャンルに属する商品の所定の指標に対する指標値を求め、当該指標値に基づいて当該ジャンルに属する商品のジャンル別ランキング情報を生成する個別生成部、
第１ジャンル及び第２ジャンルを含む複数のジャンルが指定されると、当該複数のジャンルのそれぞれについて、前記生成されたジャンル別ランキング情報に含まれる商品の指標値を、前記第１ジャンルに属する商品の指標値に対する前記第２ジャンルに属する商品の指標値の比率が略一定になるように補正し、当該補正された指標値に基づいて、当該複数のジャンルに属する商品の統合ランキング情報を生成する統合生成部、として機能させる、
ことを特徴とする。
【００１２】
また、上記目的を達成するため、本発明の第３の観点に係るコンピュータ読み取り可能な記録媒体が記録したランキング生成プログラムは、
コンピュータを、
複数の商品のそれぞれが属するジャンルが記憶される商品記憶部、
前記記憶されたジャンル毎に、当該ジャンルに属する商品の所定の指標に対する指標値を求め、当該指標値に基づいて当該ジャンルに属する商品のジャンル別ランキング情報を生成する個別生成部、
第１ジャンル及び第２ジャンルを含む複数のジャンルが指定されると、当該複数のジャンルのそれぞれについて、前記生成されたジャンル別ランキング情報に含まれる商品の指標値を、前記第１ジャンルに属する商品の指標値に対する前記第２ジャンルに属する商品の指標値の比率が略一定になるように補正し、当該補正された指標値に基づいて、当該複数のジャンルに属する商品の統合ランキング情報を生成する統合生成部、として機能させる、
ことを特徴とする。
【００１３】
さらに上記目的を達成するため、本発明の第４の観点に係るランキング生成方法は、
個別生成部と統合生成部とを備えるランキング生成装置が実行する方法であって、
前記個別生成部が、複数の商品のそれぞれが属するジャンル毎に、当該ジャンルに属する商品の所定の指標に対する指標値を求め、当該指標値に基づいて当該ジャンルに属する商品のジャンル別ランキング情報を生成する個別生成ステップ、
第１ジャンル及び第２ジャンルを含む複数のジャンルが指定されると、前記統合生成部が、当該複数のジャンルのそれぞれについて、前記生成されたジャンル別ランキング情報に含まれる商品の指標値を、前記第１ジャンルに属する商品の指標値に対する前記第２ジャンルに属する商品の指標値の比率が略一定になるように補正し、当該補正された指標値に基づいて、当該複数のジャンルに属する商品の統合ランキング情報を生成する統合生成ステップ、を有する、
ことを特徴とする。
【発明の効果】
【００１４】
本発明に係るランキング生成装置、ランキング生成プログラム、ランキング生成プログラムを記録したコンピュータ読み取り可能な記録媒体、及びランキング生成方法によれば、複数のジャンルにそれぞれ属する商品が所定の比率でランクインしたランキングを生成できる。
【図面の簡単な説明】
【００１５】
【図１】本発明の実施例に係るランキング生成システムの一構成例を表すシステム構成図である。
【図２】本発明の実施例に係るランキング生成装置の一構成例を表すハードウェア構成図である。
【図３】ランキング生成装置が発揮する機能の一例を表す機能ブロック図である。
【図４】商品購買テーブルの一例を表す図である。
【図５】ジャンルテーブルの一例を表す図である。
【図６】（ａ）は、売上個数でソートされたインスタントラーメンのジャンル別ランキング情報の一例を表す図である。（ｂ）は、流通額でソートされた高級ラーメンのジャンル別ランキング情報の一例を表す図である。（ｃ）は、売上個数でソートされたダイエットラーメンのジャンル別ランキング情報の一例を表す図である。
【図７】履歴テーブルの一例を表す図である。
【図８】（ａ）は、ユーザテーブルの一例を表す図である。（ｂ）は、嗜好テーブルの一例を表す図である。
【図９】ランキング生成装置が実行する統合ランキング生成処理の一例を表すフローチャートである。
【図１０】ジャンル選択画面の一例を表す図である。
【図１１】（ａ）は、ランキング生成装置が実行するジャンル特定処理の一例を表すフローチャートである。（ｂ）は、ランキング生成装置が実行するジャンル特定処理の他例を表すフローチャートである。
【図１２】（ａ）は、項目テーブルの一例を表す図である。（ｂ）は、項目関係テーブルの一例を表す図である。（ｃ）は、項目ジャンルテーブルの一例を表す図である。
【図１３】ランキング生成装置が実行するユーザ指標値算出処理の一例を表すフローチャートである。
【図１４】（ａ）は、流通額でソートされたインスタントラーメンのジャンル別ランキング情報の一例を表す図である。（ｂ）は、流通額でソートされた高級ラーメンのジャンル別ランキング情報の一例を表す図である。（ｃ）は、流通額でソートされたダイエットラーメンのジャンル別ランキング情報の一例を表す図である。
【図１５】ランキング生成装置が実行する比率補正処理の一例を表すフローチャートである。
【図１６】補正係数テーブルの一例を表す図である。
【図１７】（ａ）は、補正後のインスタントラーメンのジャンル別ランキング情報の一例を表す図である。（ｂ）は、補正後の高級ラーメンのジャンル別ランキング情報の一例を表す図である。（ｃ）は、補正後のダイエットラーメンのジャンル別ランキング情報の一例を表す図である。（ｄ）は、重み付け後のダイエットラーメンのジャンル別ランキング情報の一例を表す図である。
【図１８】ランキング生成装置が実行する重付補正処理の一例を表すフローチャートである。
【図１９】統合ランキング情報の一例を表す図である。
【発明を実施するための形態】
【００１６】
以下、本発明の実施例について添付図面を参照しつつ説明する。
【００１７】
本発明の実施例に係るランキング生成システム１は、図１に示すように、コンピュータ通信網１０（以下単に、通信網１０という）と、本発明のランキング生成装置１００と、端末装置２０１及び２０２とで構成される。端末装置２０１及び２０２は、それぞれ同様の構成を有するため、以下、端末装置２０１についてのみ説明する。
【００１８】
通信網１０は、例えば、インターネットで構成される。通信網１０は、ＬＡＮ（Local Area Network）又は公衆回線網であっても良い。
【００１９】
ランキング生成装置１００について説明する前に、端末装置２０１について説明する。
端末装置２０１は、例えば、ＬＣＤ（Liquid Crystal Display）などの表示部と、キーボードなどの入力部とを備えたパーソナル・コンピュータで構成される。端末装置２０１は、ユーザに操作されて、操作に応じた各種の信号をランキング生成システム１に入力し、入力された信号に基づいた情報をランキング生成装置１００へ送信する。また、端末装置２０１は、ランキング生成装置１００から返信された情報を受信し、受信された情報に基づいて表示部に各種の情報を表示する。
【００２０】
ランキング生成装置１００は、ウェブサーバソフトウェアをインストールされたサーバ機である。ランキング生成装置１００は、端末装置２０１からクエリを受信し、受信されたクエリに該当する複数種類（以下、ジャンルという）の商品を順位付けし（以下、ランキングするという）、ランキングした結果（以下、ランキングという）を表す情報を端末装置２０１へ返信する。
【００２１】
尚、クエリは、ランキング生成装置１００に対するランキングの生成要求を示すデータをいう。本実施例において、端末装置２０１によって送信されるクエリは、ジャンルの検索に用いられる検索キーワードを文字列で表現したものである。
【００２２】
ランキング生成装置１００は、図２に示すように、ＣＰＵ（Central Processing Unit）１００ａ、ＲＯＭ（Read Only Memory）１００ｂ、ＲＡＭ（Random Access Memory）１００ｃ、ハードディスク１００ｄ、メディアコントローラ１００ｅ、ＬＡＮカード（Local Area Network）１００ｆ、ビデオカード１００ｇ、ＬＣＤ（Liquid Crystal Display）１００ｈ、キーボード１００ｉ、スピーカ１００ｊ、及びマウス１００ｋで構成される。
【００２３】
ＣＰＵ１００ａは、ＲＯＭ１００ｂ又はハードディスク１００ｄに保存されたプログラムに従ってソフトウェア処理を実行することで、ランキング生成装置１００の全体制御を行う。ＲＡＭ１００ｃは、ＣＰＵ１００ａによるプログラムの実行時において、処理対象とする情報（つまり、データ）を一時的に記憶する。
【００２４】
ハードディスク１００ｄは、各種の情報（つまり、データ）を保存した表（つまり、テーブル）を記憶する商品記憶部及びユーザ記憶部である。尚、ランキング生成装置１００は、ハードディスク１００ｄの代わりに、フラッシュメモリを備えても良い。
【００２５】
メディアコントローラ１００ｅは、フラッシュメモリ、ＣＤ（Compact Disc）、ＤＶＤ（Digital Versatile Disc）、及びブルーレイディスク（Blu-ray Disc）（登録商標）を含む記録媒体から各種のデータ及びプログラムを読み出す。
【００２６】
ＬＡＮカード１００ｆは、通信網１０を介して接続する端末装置２０１及び２０２との間でデータを送受信する。キーボード１００ｉ及びマウス１００ｋは、ユーザの操作に応じた信号又は情報を入力する。ＬＡＮカード１００ｆは、受付部及び出力部を構成する。
【００２７】
ビデオカード１００ｇは、ＣＰＵ１００ａから出力されたデジタル信号に基づいて画像を描画（つまり、レンダリング）すると共に、描画された画像を表す画像信号を出力する。ＬＣＤ１００ｈは、ビデオカード１００ｇから出力された画像信号に従って画像を表示する表示部である。なお、ランキング生成装置１００は、ＬＣＤ１００ｈの代わりに、ＰＤＰ（Plasma Display Panel）又はＥＬ（Electroluminescence）ディスプレイを備えても良い。スピーカ１００ｊは、ＣＰＵ１００ａから出力された信号に基づいて音声を出力する。
【００２８】
ランキング生成装置１００のＣＰＵ１００ａは、図２のハードウェアを用いて、ジャンル毎に商品をランキングする個別ランキング生成処理を実行することで、図３に示すような個別生成部１０２として機能する。また、ＣＰＵ１００ａは、図２のハードディスク１００ｄと協働して、商品記憶部１０１ｍとして機能する。この個別ランキング生成処理は、例えば、数十分に１回から１週間に１回といった所定周期で実行されるため、各ジャンルのランキングを表すジャンル別ランキング情報は、例えば、クエリが受信されるより前に予め生成される。しかし、これに限定されるのではなく、個別ランキング生成処理は、クエリが受信されたタイミングで実行されても良い。
【００２９】
商品記憶部１０１ｍは、図４に示すような商品購買テーブルを記憶する。商品購買テーブルは、購買された商品を識別する情報（以下、商品ＩＤという）、商品の名称（以下、商品名という）、商品が属するジャンルを識別する情報（以下、ジャンルＩＤという）、商品の価格を表す情報、及び売上個数を表す情報を対応付けて保存された複数のレコードを有する。
【００３０】
商品記憶部１０１ｍは、図５に示すようなジャンルテーブルをさらに記憶する。ジャンルテーブルは、図４の商品購買テーブルに記憶されたジャンルＩＤと、ジャンルＩＤで識別されるジャンルの名称（以下、ジャンル名という）を表す情報、当該ジャンルに属する商品の並び順を変える（以下、ソートという）場合に使用される並び替えの基準又は指標（以下、ソートキーという）を表す情報、及び当該ジャンルに属する商品で満足されるユーザの嗜好を識別する情報（以下、合致嗜好ＩＤという）を対応付けて保存された複数のレコードを有する。本実施例において、ソートキーは、商品の「価格」、商品の「売上件数」、商品の「売上個数」、及び商品の「流通額」などの指標、並びに、例えば、「流通額×売上件数」のような、これら指標を所定の数式を用いて算出した算出結果を含む。これらソートキーは、ジャンルに属する商品の用途、種類、及び価格などによって予め定められている。具体例として、「高級ラーメン」のジャンルに属する商品の価格は、「通常のラーメン」、「インスタントラーメン」、及び「ダイエットラーメン」などの他のジャンルに属する同種の商品の価格よりも高いため、「高級ラーメン」のジャンルには、流通額が高い商品が属する。このため、「高級ラーメン」のジャンルには、「流通額」がソートキーとして予め設定されている。
【００３１】
図３の個別生成部１０２は、個別ランキング生成処理の実行を開始すると、図５のジャンルテーブルに記憶された全ジャンルに対して、ジャンル毎のランキング（以下、ジャンル別ランキングという）を生成したか否かを判別する。個別生成部１０２は、全ジャンルに対してジャンル別ランキングを生成した訳ではないと判別すると、ジャンル別ランキングを生成していないジャンルの１つを注目ジャンル（つまり、処理対象）とする。次に、個別生成部１０２は、注目ジャンルに予め定められたソートキーを取得する。具体的には、個別生成部１０２は、図５のジャンルテーブルから注目ジャンルのジャンルＩＤに対応付けたソートキー表す情報を取得する。
【００３２】
具体例として、個別生成部１０２は、注目ジャンルがジャンルＩＤ「J001」の「インスタントラーメン」である場合、及び注目ジャンルがジャンルＩＤ「J005」の「ダイエットラーメン」である場合には、図５のジャンルテーブルからソートキー「売上個数」を取得する。これに対して、個別生成部１０２は、注目ジャンルがジャンルＩＤ「J003」の「高級ラーメン」である場合には、図５のジャンルテーブルからソートキー「流通額」を取得する。
【００３３】
その後、個別生成部１０２は、図４の商品購買テーブルに、取得されたソートキーが保存されているか否かを判別し、保存されていないと判別するとソートキーに対する指標値を算出する。具体例としては、商品購買テーブルには、「流通額」が保存されていないので、個別生成部１０２は、「流通額」が予め定められたソートキーであるジャンルに属する商品のそれぞれについて、商品の「売上個数」に対して商品の「価格」を乗算することで商品の「流通額」を算出する。
【００３４】
その後、個別生成部１０２は、取得又は算出されたソートキーに対する指標値に基づいて、注目ジャンルのジャンル別ランキングを表すジャンル別ランキング情報を生成する。具体的には、個別生成部１０２は、図４の商品購買テーブルから、注目ジャンルのジャンルＩＤを記録されたレコードを検索し、検索されたレコードを、取得されたソートキーに対する指標値に基づいてソートすることで、図６（ａ）から（ｃ）に示すようなジャンル別ランキング情報を生成する。
【００３５】
具体例として、注目ジャンルが「インスタントラーメン」である場合、及び「ダイエットラーメン」である場合には、図６（ａ）及び（ｃ）に示すような、指標値「売上個数」でソートされたジャンル別ランキングを生成する。これに対して、注目ジャンルが「高級ラーメン」である場合には、図６（ｂ）に示すような、指標値「流通額」でソートされたランキングを生成する。
【００３６】
その後、個別生成部１０２は、生成されたジャンル別ランキング情報を、図３の商品記憶部１０１ｍに保存した後に、ジャンルテーブルに記憶された全ジャンルに対してランキングを生成するまで、上記処理を繰り返す。
【００３７】
ＣＰＵ１００ａは、図２のハードウェアを用いて、商品を購入したユーザの嗜好を特定する嗜好特定処理を実行することで、図３に示すような特定部１０４として機能する。また、ＣＰＵ１００ａは、図２のハードディスク１００ｄと協働して、ユーザ記憶部１０１ｕとして機能する。尚、この嗜好特定処理は、例えば、数十分に１回から１週間に１回といった所定周期で実行される。
【００３８】
ユーザ記憶部１０１ｕは、図７に示すような履歴テーブルを記憶する。履歴テーブルは、ユーザを識別する情報（以下、ユーザＩＤという）、ユーザが商品を購入した日付を表す情報、ユーザが購入した商品（以下、購入商品という）の商品ＩＤ、及び購入商品の商品名を表す情報を対応付けて保存された複数のレコードを有する。
【００３９】
ユーザ記憶部１０１ｕは、図８（ａ）に示すようなユーザテーブルをさらに記憶する。ユーザテーブルは、ユーザＩＤ、ユーザＩＤで識別されるユーザの嗜好を識別する情報（以下、嗜好ＩＤという）、嗜好を表す情報を対応付けて保存された複数のレコードを有する。尚、ユーザの嗜好は、ユーザ属性の１つであるため、嗜好属性とも称する。また、嗜好属性は、例えば、高級な商品を好む嗜好、健康食品など健康的な商品を好む嗜好、及び通常の商品を好む嗜好を含む。
【００４０】
ユーザ記憶部１０１ｕは、図８（ｂ）に示すような嗜好テーブルを記憶する。嗜好テーブルは、嗜好ＩＤ、嗜好ＩＤで識別される嗜好、及び当該嗜好に合致する商品をランキングする際に用いられるソートキーを表す情報を対応付けて保存された複数のレコードを有する。例えば、高級な商品を好む嗜好は、価格が低い商品よりも高い商品によって満足させられるため、ソートキー「価格」に対応付けられ、高級な商品をランキングする際には、ソートキー「価格」が用いられる。
【００４１】
図３の特定部１０４は、嗜好特定処理の実行を開始すると、図８（ａ）のユーザテーブルに記憶された全ユーザに対して嗜好を特定したか否かを判別する。特定部１０４は、全ユーザに対して嗜好を特定した訳ではないと判別すると、嗜好を特定していないユーザの１人を注目ユーザとする。次に、特定部１０４は、注目ユーザが過去に購入した商品を特定する。具体的には、特定部１０４は、図７の履歴テーブルから注目ユーザのユーザＩＤと対応付けられた購入商品の商品ＩＤを検索する。次に、特定部１０４は、検索された商品ＩＤで識別される商品に基づいて、ユーザの嗜好を特定する。
【００４２】
具体的には、特定部１０４は、検索された商品ＩＤに基づいて、図４の商品購買テーブルから当該商品のジャンルを検索する。次に、特定部１０４は、検索されたジャンルのジャンルＩＤに基づいて、図５のジャンルテーブルから、注目ユーザが購入した商品に合致する嗜好を特定し、特定された嗜好を注目ユーザの嗜好とする。また、これに限定される訳ではなく、特定部１０４は、検索された商品ＩＤに基づいて、図４の商品購買テーブルから、検索された商品ＩＤに対応付けた価格情報を検索し、検索された情報で表される価格が、注目ユーザが購入した商品のジャンルに属する商品群又は同等の機能を有する商品群における平均価格よりも高い場合に、注目ユーザの嗜好に高価格商品（つまり、高級品）が合致すると特定し、そうでない場合に、注目ユーザの嗜好に低価格商品が合致すると特定する。
【００４３】
注目ユーザの嗜好を特定した後に、特定部１０４は、図８（ａ）のユーザテーブルに対して、注目ユーザのユーザＩＤと、特定された嗜好の嗜好ＩＤとを対応付けて保存した後に、ユーザテーブルに記憶された全てのユーザに対して嗜好を特定するまで、上記処理を繰り返す。
【００４４】
ランキング生成装置１００のＣＰＵ１００ａは、複数のジャンルにそれぞれ属する商品を合わせてランキングした統合ランキングの生成を求める要求（つまり、リクエスト）を端末装置２０１から受信すると、図９に示すような統合ランキング生成処理の実行を開始する。ＣＰＵ１００ａは、図２のハードウェアを用いて、この統合ランキング生成処理を実行することで、図３に示すような特定部１０４及び統合生成部１０５としてさらに機能する。また、ＣＰＵ１００ａは、図２のＬＡＮカード１００ｆと協働することで、受付部１０３及び出力部１０６として機能する。
【００４５】
図９の統合ランキング生成処理の実行を開始すると、受付部１０３は、端末装置２０１を操作するユーザに対してユーザ認証を行う（ステップＳ０１）。具体的には、端末装置２０１を操作するユーザのユーザＩＤ及びパスワードを表す情報を端末装置２０１から受信し、受信されたユーザＩＤ及びパスワードの組み合わせが、予めランキング生成装置１００に記憶されたユーザＩＤ及びパスワードの組合せに一致するか否かを判別する。
【００４６】
次に、受付部１０３は、端末装置２０１を操作するユーザがユーザ認証をクリアするか否かを判別する（ステップＳ０２）。具体的には、受付部１０３は、受信されたユーザＩＤ及びパスワードの組み合わせが、記憶されたユーザＩＤ及びパスワードの組み合わせに一致すると判別すると、当該ユーザがユーザ認証をクリアしたと判別し、そうでないと判別するとユーザ認証をクリアしなかったと判別する。
【００４７】
ステップＳ０２において、ユーザがユーザ認証をクリアしなかったと判別されると（ステップＳ０２；Ｎｏ）、受付部１０３は、統合ランキング生成処理の実行を終了する。これに対して、ユーザがユーザ認証をクリアしたと判別されると（ステップＳ０２；Ｙｅｓ）、出力部１０６は、図１０に示すようなジャンル選択画面ＦＳを表す情報を端末装置２０１へ送信する（ステップＳ０３）。
【００４８】
尚、端末装置２０１は、ジャンル選択画面ＦＳを表す情報を受信すると、受信された情報で表されるジャンル選択画面ＦＳを表示部に表示させる。次に、端末装置２０１は、ユーザに入力部を操作されて、ランキングを行うジャンルの検索に用いられる検索キーワードを入力し、入力された検索キーワードに基づいてクエリを生成し、生成されたクエリをランキング生成装置１００へ返信する。
【００４９】
ステップＳ０３が実行された後に、受付部１０３は、端末装置２０１からクエリを受け付ける（ステップＳ０４）。次に、図３の特定部１０４は、受け付けられたクエリに該当するジャンルを特定する、図１１（ａ）に示すようなジャンル特定処理を実行する（ステップＳ０５）。
【００５０】
図１１（ａ）のジャンル特定処理を開始すると、特定部１０４は、図５のジャンルテーブルから、受け付けられたクエリに該当するジャンルを検索する（ステップＳ１１）。具体的には、特定部１０４は、クエリの文字列（つまり、検索ワード）を含むジャンル名を検索する。
【００５１】
ここで、ジャンルは、ジャンルに属する商品の用途、種類、及び価格などに基づいて、大分類項目と小分類項目とを含む項目ごとに分類される。ある大分類項目に含まれる（つまり、分類される）ジャンルは、小分類項目にごとにさらに分類される。具体例として、「インスタントラーメン」、「（通常タイプで通常価格の）ラーメン」、及び「高級ラーメン」という３つのジャンルのそれぞれに属する商品は全て麺類であるため、これらの３つのジャンルは、大分類項目「麺類」にそれぞれ分類される。これに対して、これら３つのジャンルの内、ジャンル「インスタントラーメン」のみにインスタント食品が属するため、ジャンル「インスタントラーメン」だけが小分類項目「インスタント」に分類される。
【００５２】
このため、図３の商品記憶部１０１ｍは、図１２（ａ）から（ｃ）に示すような項目テーブル、項目関係テーブル、及び項目ジャンルテーブルを記憶する。
図１２（ａ）の項目テーブルは、大分類項目又は小分類項目を識別する情報（以下、項目ＩＤという）と、大分類項目又は小分類項目の名称（以下、項目名という）を表す情報とを対応付けて記録された複数のレコードを有する。
図１２（ｂ）の項目関係テーブルは、大分類項目の項目ＩＤ（以下、大分類項目ＩＤという）及び名称（以下、大分類項目名という）と、当該大分類項目に分類されたジャンルが、さらに分類される小分類項目の項目ＩＤ（以下、小分類項目ＩＤという）及び名称（以下、小分類項目名という）とを対応付けて記録された複数のレコードを有する。
図１２（ｃ）の項目ジャンルテーブルは、大分類項目又は小分類項目の項目ＩＤ及び名称と、当該大分類項目又は当該小分類項目に分類されるジャンルのジャンルＩＤ及び名称とを対応付けて記録された複数のレコードを有する。
【００５３】
図１１（ａ）のステップＳ１１が実行された後に、特定部１０４は、ステップＳ１１で検索されたジャンル名のジャンルを含む小分類項目を検索した後に、検索された小分類項目を含む大分類項目を検索する（ステップＳ１２）。具体的には、特定部１０４は、ステップＳ１１で検索されたジャンルのジャンルＩＤと対応付けられた項目ＩＤを、図１２（ｃ）の項目ジャンルテーブルから検索する。次に、特定部１０４は、図１２（ｂ）の項目関係テーブルから、検索された項目ＩＤを小分類項目ＩＤ列に記録したレコードを検索し、レコードが見つかった場合には、見つかったレコードの大分類項目ＩＤ列に記録された大分類項目ＩＤを取得する。
【００５４】
その後、出力部１０６は、図１１のステップＳ１２で検索されたジャンルＩＤで識別されるジャンルの名称を表す情報、小分類項目ＩＤで識別される項目の名称を表す情報、及び大分類項目ＩＤで識別される項目の名称を表す情報を端末装置２０１へ送信する（ステップＳ１３）。
【００５５】
尚、端末装置２０１は、ジャンル名を表す情報、小分類項目の名称を表す情報、及び大分類項目の名称を表す情報を受信した後に、受信された情報で表されるジャンル名、小分類項目名、及び大分類項目名を、図１０のジャンル選択画面ＦＳのジャンル表示部ＰＪへ表示する。次に、ユーザは、表示されたジャンル名の内で、ランキングの生成を求める複数のジャンルを選択する。その後、端末装置２０１は、ユーザによって選択されたジャンルを表す情報を複数入力し、入力された複数の情報をランキング生成装置１００へ送信する。
【００５６】
ステップＳ１３が実行された後に、受付部１０３は、選択されたジャンルを表す情報を端末装置２０１から複数受信する。その後、特定部１０４は、受信された複数の情報でそれぞれ表されるジャンルを、ユーザがランキングの生成を求めるジャンルであると特定し（ステップＳ１４）、特定された複数のジャンルに対してランキングを生成するように統合生成部１０５に対して指定する（ステップＳ１５）。その後、特定部１０４は、ジャンル特定処理の実行を終了する。
【００５７】
本実施例において、ユーザは、図１０のジャンル選択画面を確認した後に、ユーザがランキングの生成を求めるジャンルを選択するとして説明した。しかし、これに限定される訳ではなく、クエリに該当するジャンルを含む複数の項目の内で、クエリに該当するジャンルを多く含む項目を選択し、選択された項目に含まれるジャンルを、ユーザがランキングの生成を求めるジャンルとする構成を採用できる。この構成において、特定部１０４は、図１１（ｂ）に示すようなジャンル特定処理を実行する。
【００５８】
図１１（ｂ）のジャンル特定処理を開始すると、特定部１０４は、図１１（ａ）のステップＳ１１からＳ１３と同様の処理を実行する（ステップＳ２１からステップＳ２３）。次に、特定部１０４は、項目毎に検索されたジャンルの数を計数する（ステップＳ２４）。
【００５９】
例えば、図１０に示すように、クエリ「ラーメン」に基づいて検索されたジャンルが「インスタントラーメン」、「ラーメン」、「高級ラーメン」、「ラーメン鉢」、及び「ダイエットラーメン」である場合には、特定部１０４は、項目「麺類」に含まれるジャンルの数を、「インスタントラーメン」、「ラーメン」、及び「高級ラーメン」の３つと計数し、項目「中華食器」に含まれるジャンルの数を、「ラーメン鉢」の１つと計数し、項目「ダイエット」に含まれるジャンルの数を「ダイエットラーメン」の１つと計数する。
【００６０】
その後、特定部１０４は、計数されたジャンルの数に基づいて、ユーザがランキングの生成を求めるジャンルを他の項目よりも多く含む項目を特定する（ステップＳ２５）。具体的には、特定部１０４は、クエリに該当するジャンルを最も多く含む項目「麺類」を特定する。その後、特定部１０４は、特定された項目に含まれるジャンルを、ユーザがランキングの生成を求めるジャンルとして特定する（ステップＳ２６）。つまり、特定部１０４は、「インスタントラーメン」、「ラーメン」、「高級ラーメン」、「ラーメン鉢」、及び「ダイエットラーメン」の内で、「麺類」に属する「インスタントラーメン」、「ラーメン」、及び「高級ラーメン」のみを、ユーザがランキングの生成を求めるジャンルとして特定する。
【００６１】
その後、特定部１０４は、特定された複数のジャンルに対してランキングを生成するように統合生成部１０５に対して指定した後に（ステップＳ２７）、ジャンル特定処理を終了する。
【００６２】
これらの構成によれば、クエリに該当するジャンルを最も多く含む項目を特定し、特定された項目に含まれるジャンルを、統合ランキング情報を生成する統合生成部に指定する。ここで、通常、ユーザは、同一又は類似の用途、種類、又は価格の商品についてジャンルを跨ったランキングの生成を求めるため、ユーザが統合ランキング情報の生成を求めるジャンルを精度良く特定できるだけでなく、ユーザが統合ランキング情報の生成を求めていないジャンルについて統合ランキング情報を生成することを防止できる。また、ユーザがジャンルを選択する必要がないため利便性が向上する。
【００６３】
尚、本実施例において、統合生成部１０５は、クエリに該当するジャンルを検索するとして説明したが、これに限定される訳ではない。例えば、端末装置２０１のユーザが、図１０のジャンル選択画面のリストボックスＬＢを用いて商品を検索するように指示する命令を端末装置２０１に入力した後に、端末装置２０１は、入力された命令と、商品の検索に用いられる検索キーワードを文字列で表現したクエリとを送信する構成を採用できる。この構成において、統合生成部１０５は、送信された命令に従って、図４の商品購買テーブルから、送信されたクエリに該当する商品（つまり、検索キーワードを含む商品名の商品）を検索し、検索された商品の属するジャンルを検索する構成を採用できる。
【００６４】
図９に示すステップＳ０５の処理が終了すると、統合生成部１０５は、特定部１０４によって指定された複数のジャンル（以下、複数の指定ジャンルという）に対して、図５のジャンルテーブルからソートキーをそれぞれ検索する（ステップＳ０６）。次に、統合生成部１０５は、検索された複数のソートキーがそれぞれ同じであるか否かを判別する（ステップＳ０７）。
【００６５】
ステップＳ０７において、統合生成部１０５は、複数のソートキーのいずれか２つがそれぞれ相違すると判別すると（ステップＳ０７；Ｎｏ）、統合ランキングの生成に用いられるユーザ指標値を指定ジャンル毎に算出する、図１３に示すようなユーザ指標値算出処理を実行する（ステップＳ０８）。
【００６６】
図１３のユーザ指標値算出処理を開始すると、統合生成部１０５は、図９のステップＳ０１で取得されたユーザＩＤに基づいて、図８（ａ）のユーザテーブルから、ユーザの嗜好を識別する嗜好ＩＤを検索する（ステップＳ３１）。次に、統合生成部１０５は、検索された嗜好ＩＤに基づいて、図８（ｂ）の嗜好テーブルから、ユーザの嗜好属性に予め対応付けられたソートキー（以下、ユーザソートキー又はユーザ指標という）を検索する（ステップＳ３２）。次に、統合生成部１０５は、図９のステップＳ０６で検索されたソートキーが、検索されたユーザソートキーと異なる指定ジャンルを特定する（ステップＳ３３）。
【００６７】
その後、統合生成部１０５は、特定されたジャンル（以下、特定ジャンルという）の全てについてユーザソートキーを生成したか（つまり、ステップＳ３５からＳ４０の処理対象としたか）否かを判別する（ステップＳ３４）。このとき、統合生成部１０５は、全ての特定ジャンルを処理した訳ではないと判別すると（ステップＳ３４；Ｎｏ）、未処理の特定ジャンルの１つを注目ジャンルとする（ステップＳ３５）。次に、注目ジャンルのジャンル別ランキング情報に含まれる商品を特定する（ステップＳ３６）。その後、統合生成部１０５は、特定された商品（以下、特定商品という）の全てについてユーザ指標に対する指標値（以下、ユーザ指標値という）を算出したか（つまり、ステップＳ３８及びＳ３９の処理を実行したか）否かを判別する（ステップＳ３７）。
【００６８】
ステップＳ３７において、統合生成部１０５は、全ての特定商品について処理を実行した訳ではないと判別した場合には（ステップＳ３７；Ｎｏ）、未処理の特定商品の１つを注目商品とする（ステップＳ３８）。その後、統合生成部１０５は、注目商品のユーザ指標値を算出した後に（ステップＳ３９）、ステップＳ３７から上記処理を繰り返す。
【００６９】
ステップＳ３７において、統合生成部１０５は、全ての特定商品について処理を実行したと判別した場合には（ステップＳ３７；Ｙｅｓ）、ユーザソートキーに基づいて注目ジャンルのジャンル別ランキング情報を再生成した後に（ステップＳ４０）、ステップＳ３４に戻り上記処理を繰り返す。
【００７０】
ステップＳ３４において、全ての特定ジャンルを処理したと判別すると（ステップＳ３４；Ｙｅｓ）、ユーザ指標値算出処理の実行を終了する。
【００７１】
具体例として、図９のステップＳ０１で取得されたユーザＩＤが「U003」であり、ジャンル「インスタントラーメン」、「高級ラーメン」、及び「ダイエットラーメン」が指定された場合を挙げて、ユーザ指標値算出処理を再度説明する。
【００７２】
統合生成部１０５は、図９のステップＳ０６で、指定ジャンル「インスタントラーメン」に予め定められたソートキーと、指定ジャンル「ダイエットトラーメン」に予め定められたソートキーとが「売上個数」であり、指定ジャンル「高級ラーメン」に予め定められたソートキーが「流通額」であると特定し、ステップＳ０７で、これらのキーがそれぞれ相違すると判別する。
【００７３】
統合生成部１０５は、図１３のステップＳ３１で、健康的な商品がユーザの嗜好に合致すると図８（ａ）のユーザテーブルから判別し、ステップＳ３２で、ユーザ指標値が「流通額」であると図８（ｂ）の嗜好テーブルから判別する。その後、統合生成部１０５は、ステップＳ３３で、「流通額」と異なるキーに予め対応付けられたジャンル「インスタントラーメン」を特定し、ステップＳ３６で、特定されたジャンルのジャンル別ランキング情報に含まれる商品が「ラーメンＡ」及び「ラーメンＢ」であることを、図６（ａ）のジャンル別ランキング情報から特定する。次に、統合生成部１０５は、ステップＳ３９で、「ラーメンＡ」及び「ラーメンＢ」の「流通額」を、それぞれの「価格」に対してそれぞれの「売上個数」を乗算することで算出する。その後、統合生成部１０５は、ステップＳ４０で、ユーザ指標値「流通額」に基づいて、図１４（ａ）に示すような「インスタントラーメン」のジャンル別ランキング情報を生成する。同様に、統合生成部１０５は、ユーザ指標値「流通額」に基づいて、図１４（ｃ）に示すような「ダイエットラーメン」のジャンル別ランキング情報を生成する。
【００７４】
図９のステップＳ０７において、ソートキーが同じであると判別された場合（ステップＳ０７；Ｙｅｓ）には、当該ソートキーを統合ランキングの生成に用いられる指標（以下、統合用指標という）とする。また、ステップＳ０８の後に、統合生成部１０５は、ユーザ指標を統合用指標とする。その後、統合生成部１０５は、統合用指標値の指定ジャンル間における比率を補正する、図１５に示すような比率補正処理を実行する（ステップＳ０９）。
【００７５】
図１５の比率補正処理の実行を開始すると、統合生成部１０５は、指定ジャンルのそれぞれの統合用指標値を積算した積算値を格納する積算値係数の値を「0」として初期化する（ステップＳ５１）。次に、統合生成部１０５は、指定ジャンルの全てについて統合用指標値の総和を算出したか（つまり、ステップＳ５５の処理を実行したか）否かを判別する（ステップＳ５２）。尚、ある指定ジャンルについての統合用指標値の総和とは、当該指定ジャンルのジャンル別ランキング情報で表されるランキングに含まれる商品（以下、ジャンル別ランクイン商品という）の統合用指標値を全て和算した値をいう。
【００７６】
ステップＳ５２において、全ての指定ジャンルについて統合用指標値の総和を算出した訳ではないと判別されると（ステップＳ５２；Ｎｏ）、統合生成部１０５は、未処理の指定ジャンルの１つを注目ジャンルとする（ステップＳ５３）。次に、統合生成部１０５は、個別生成部１０２によって生成された注目ジャンルのジャンル別ランキング情報を商品記憶部１０１ｍから検索し、検索されたジャンル別ランキング情報に含まれる商品（つまり、ジャンル別ランクイン商品）を特定する（ステップＳ５４）。次に、統合生成部１０５は、ステップＳ５４で特定された商品（以下、特定商品という）の統合用指標値について、総和を算出する（ステップＳ５５）。
【００７７】
例えば、注目ジャンルが「インスタントラーメン」であり、統合用指標が「流通額」である場合には、図１４（ａ）に示すようなジャンル別ランキング（図１３のステップＳ４０で再生成されたランキング）に含まれる商品「ラーメンＡ」の統合用指標値「\25,000」と「ラーメンＢ」の統合用指標値「\31,500」とを和算した「\56,500」が、図１６に示すような統合用指標値の総和として算出される。同様に、注目ジャンルが「高級ラーメン」である場合には、図１４（ｂ）に示すような「高級ラーメン」のジャンル別ランキングに含まれる「高級ラーメンＡ」の「流通額」と「高級ラーメンＢ」の「流通額」とを和算した値「\1,275,000」が、「高級ラーメン」における統合用指標値の総和として算出される。さらに同様に、注目ジャンルが「ダイエットラーメン」である場合には、図１４（ｃ）に示すような「ダイエットラーメン」のジャンル別ランキングに含まれる「ダイエットラーメンＡ」の「流通額」と「ダイエットラーメンＢ」の「流通額」とを和算した値「\58,500」が、「高級ラーメン」における統合用指標値の総和として算出される。
【００７８】
ステップＳ５５の後に、統合生成部１０５は、積算値変数に対して、ステップＳ５５で算出された総和を加算した後に（ステップＳ５６）、ステップＳ５２に戻り上記処理を繰り返す。
【００７９】
ステップＳ５２において、全ての指定ジャンルについて統合用指標値の総和を算出したと判別されると（ステップＳ５２；Ｙｅｓ）、統合生成部１０５は、全ての指定ジャンルについて、統合用指標値を補正したか（つまり、ステップＳ５８からＳ６２処理を実行したか）否かを判別する（ステップＳ５７）。
【００８０】
ステップＳ５７において、全ての指定ジャンルについて処理を実行した訳ではないと判別すると（ステップＳ５７；Ｎｏ）、統合生成部１０５は、未処理の指定ジャンルの１つを注目ジャンルとする（ステップＳ５８）。次に、統合生成部１０５は、注目ジャンルにおける統合用指標値の総和と、積算値変数の値とを用いて以下の式（１）から補正係数を算出する（ステップＳ５９）。
【００８１】
【数１】
2012118696.tif 000003
【００８２】
例えば、指定ジャンルが「インスタントラーメン」、「高級ラーメン」、及び「ダイエットラーメン」であり、統合用指標が「流通額」である場合には、総和の積算値が「\1,390,000」であるので、「インスタントラーメン」、「高級ラーメン」、及び「ダイエットラーメン」の補正計数は、図１６に示すような値「8.2」、「0.4」、及び「7.9」とそれぞれ算出される。
【００８３】
ステップＳ５９の後に、統合生成部１０５は、注目ジャンルのジャンル別ランキングに含まれる商品（つまり、ステップＳ５４で特定された特定商品）の全てについて、統合用指標値を補正したか（つまり、ステップＳ６２の処理を実行したか）否かを判別する（ステップＳ６０）。このとき、全ての特定商品について統合用指標値を補正した訳ではないと判別される場合には（ステップＳ６０；Ｎｏ）、統合生成部１０５は、未処理の特定商品の１つを注目商品とする（ステップＳ６１）。その後、統合生成部１０５は、ステップＳ５９で算出された補正係数を下記の式（２）に用いて注目商品の統合用指標値を補正した後に（ステップＳ６２）、ステップＳ６０に戻り上記処理を繰り返す。
【００８４】
補正後統合用指標値  ＝  補正前ランキング用指標値  ×  注目ジャンルの補正係数・・・（２）
【００８５】
例えば、指定ジャンルが「インスタントラーメン」、「高級ラーメン」、及び「ダイエットラーメン」である場合には、図１６に示すようなこれらの補正係数「8.2」、「0.4」、及び「7.9」を、図１４（ａ）から（ｃ）に示す統合用指標値に乗算することで、図１７（ａ）から（ｃ）に示すような統合用指標値に補正する。
【００８６】
ここで、「高級ラーメン」のジャンルに属する商品は、「インスタントラーメン」及び「ダイエットラーメン」等の他のジャンルに属する商品と比べて「価格」が高いため、統合用指標値である「流通額」も高くなる傾向にある。このため、「高級ラーメン」のジャンルに属する商品と、「インスタントラーメン」及び「ダイエットラーメン」等の他のジャンルに属する商品とを、統合用指標値の補正をせずに併せてランキングするのでは、「高級ラーメン」に属する商品が統合ランキングの上位にランクインし、「インスタントラーメン」及び「ダイエットラーメン」に属する商品が下位にランクインしてしまい、統合ランキングに均一又は一定の比率でそれぞれのジャンルに属する商品がランクインしない。
【００８７】
このため、本実施例では、統合生成部１０５は、ステップＳ６２の補正により、指定ジャンル「高級ラーメン」のジャンル別ランクイン商品の統合用指標値に対する指定ジャンル「インスタントラーメン」のジャンル別ランクイン商品の統合用指標値の比率、指定ジャンル「高級ラーメン」のジャンル別ランクイン商品の統合用指標値に対する指定ジャンル「ダイエットラーメン」のジャンル別ランクイン商品の統合用指標値の比率、及び指定ジャンル「インスタントラーメン」のジャンル別ランクイン商品の統合用指標値に対する指定ジャンル「ダイエットラーメン」のジャンル別ランクイン商品の統合用指標値の比率を、それぞれどの商品同士を比べても約「1:1」から「1:1.4」の範囲に属する値（つまり、略一定の値）とする。また、統合生成部１０５は、ステップＳ６２の補正により、「インスタントラーメン」、「高級ラーメン」、及び「ダイエットラーメン」それぞれについて、ジャンル別ランキングに含まれる商品（以下、ジャンル別ランクイン商品という）の統合用指標値に対する総和を「\463,333」とする。つまり、総和の積算値「\1,390,000」に対する指定ジャンルそれぞれの総和「\463,333」が占める比率を約「0.33」として、それぞれ略等しい値にする。
【００８８】
尚、統合用指標値の補正方法は、ジャンル別ランクイン商品の統合用指標値に対する総和がジャンル毎に略同一となるように補正することに限定される訳ではなく、ジャンル別ランクイン商品に対する統合用指標値の平均値がジャンル毎に略同一となるように補正する方法であっても良い。さらに、統合用指標値の補正方法は、ジャンル別ランクイン商品の最大値及び最小値の双方がジャンル毎に略同一となるように補正する方法であっても良い。
【００８９】
さらに、統合用指標値の補正方法は、図４の商品購買テーブルに保存された商品の内で、所定期間において販売された商品に対する統合用指標値の平均値がジャンル毎に略同一となるように補正する方法であっても良い。さらに、統合用指標値の補正方法は、所定期間において販売された商品の最大値及び最小値の双方がジャンル毎に略同一となるように補正する方法であっても良い。
【００９０】
またさらに、統合用指標値の補正方法は、ある指定ジャンルにおけるジャンル別ランクイン商品の統合用指標値に対する総和に対する、他の指定ジャンルにおけるジャンル別ランクイン商品の統合用指標値に対する総和の比率が、所定の比率となるように補正する方法であっても良い。つまり、統合用指標値の補正方法は、ある指定ジャンルにおけるジャンル別ランクイン商品の統合用指標値と、他の指定ジャンルにおけるジャンル別ランクイン商品の統合用指標値との差が縮小するように補正する方法であれば良い。
【００９１】
ステップＳ６０において、全ての特定商品について統合用指標値を補正したと判別される場合には（ステップＳ６０；Ｙｅｓ）、統合生成部１０５は、ステップＳ５７から上記処理を繰り返す。
【００９２】
ステップＳ５７において、全ての指定ジャンルについて処理を実行したと判別すると（ステップＳ５７；Ｙｅｓ）、統合生成部１０５は、比率補正処理の実行を終了する。
【００９３】
図９のステップＳ０９を実行した後に、統合生成部１０５は、端末装置２０１を操作するユーザの嗜好に基づいて統合用指標値に対して重み付けする、図１８に示すような重付補正処理を実行する。
【００９４】
図１８の重付補正処理を開始すると、統合生成部１０５は、全ての指定ジャンルについて、ユーザの嗜好に基づいて補正を検討したか（つまり、ステップＳ７４の処理を実行したか）否かを判別する（ステップＳ７１）。
【００９５】
ステップＳ７１において、全ての指定ジャンルについて処理を実行した訳ではないと判別すると（ステップＳ７１；Ｎｏ）、統合生成部１０５は、未処理の指定ジャンルの１つを注目ジャンルとする（ステップＳ７２）。次に、統合生成部１０５は、注目ジャンルに属する商品に合致する嗜好を検索する（ステップＳ７３）。具体的には、統合生成部１０５は、注目ジャンルのジャンルＩＤに対応付けられた嗜好ＩＤを、図５のジャンルテーブルから検索する。
【００９６】
その後、統合生成部１０５は、ステップＳ７２で検索された嗜好が、図１３のステップＳ３１で検索されたユーザの嗜好に合致するか否かを判別する（ステップＳ７４）。このとき、注目ジャンルに合致する嗜好と、ユーザの嗜好とが一致すると判別されると（ステップＳ７４；Ｙｅｓ）、注目ジャンルの補正計数に対して重み付け計数を乗算する（ステップＳ７５）。次に、統合生成部１０５は、注目ジャンルのジャンル別ランキングに含まれる商品（つまり、ジャンル別ランクイン商品）を特定する（ステップＳ７６）。その後、統合生成部１０５は、特定された商品（特定商品）の全てについて、統合用指標値を再補正したか（つまり、ステップＳ７９の処理を実行したか）否かを判別する（ステップＳ７７）。
【００９７】
ステップＳ７７において、全ての特定商品について統合用指標値を再補正した訳ではないと判別される場合には（ステップＳ７７；Ｎｏ）、統合生成部１０５は、未処理の特定商品の１つを注目商品とする（ステップＳ７８）。その後、統合生成部１０５は、ステップＳ７５で重み付けされた補正係数を用いて注目商品の統合用指標値を再補正した後に（ステップＳ７９）、ステップＳ７７に戻り上記処理を繰り返す。具体的には、統合生成部１０５は、図１５のステップＳ６２で補正される前の統合用指標値に対して、ステップＳ７５で重み付けられた補正計数を乗算する。しかし、これに限定される訳ではなく、図１５のステップＳ６２で補正された後の統合用指標値に対して、ステップＳ７５で用いられる重み付け係数を乗算しても良い。
【００９８】
例えば、ユーザのユーザＩＤが「U003」である場合には、図１３のステップＳ３１で、ユーザの嗜好は、健康食品などで満足させられると、図８（ａ）のユーザテーブルに基づいて特定されている。このため、統合生成部１０５は、図１８のステップＳ７４で、指定ジャンル「インスタントラーメン」及び「高級ラーメン」のいずれもユーザの嗜好に合致しないが、指定ジャンル「ダイエットラーメン」のみがユーザの嗜好に合致すると、図５のジャンルテーブルから判別する。このため、統合生成部１０５は、図１６の補正係数の内で、指定ジャンル「ダイエットラーメン」の補正係数のみ値「1.2」を乗算することで重み付けする。その後、統合生成部１０５は、図１４（ｃ）に示す「ダイエットラーメン」のジャンル別ランキングに含まれる商品の統合用指標値に対して、重み付けされた補正係数を乗算することで、図１７（ｄ）に示すようなジャンル別ランキングに補正する。
【００９９】
ステップＳ７７において、全ての特定商品について統合用指標値を再補正したと判別される場合には（ステップＳ７７；Ｙｅｓ）、統合生成部１０５は、ステップＳ７１から上記処理を繰り返す。
【０１００】
ステップＳ７４において、注目ジャンルに合致する嗜好と、ユーザの嗜好とが相違すると判別されると（ステップＳ７４；Ｎｏ）統合生成部１０５は、ステップＳ７１から上記処理を繰り返す。
【０１０１】
ステップＳ７１において、全ての指定ジャンルについて処理を実行したと判別すると（ステップＳ７１；Ｙｅｓ）、統合生成部１０５は、重付補正処理の実行を終了する。
【０１０２】
図９のステップＳ１０を実行した後に、統合生成部１０５は、統合ランキングを表す情報（以下、統合ランキング情報という）を、補正後の統合用指標値に基づいて生成する（ステップＳ１１）。具体的には、統合生成部１０５は、統合用指標に基づいて、複数の指定ジャンルのジャンル別ランクイン商品を併せてランキングする。つまり、統合生成部１０５は、図１７（ａ）、図１７（ｂ）、及び図１７（ｄ）のジャンル別ランキングにランクインした商品を、図１７（ａ）及び（ｂ）の補正された統合用指標値、並びに図１７（ｄ）の重み付けされた統合用指標値に従ってソートすることで、図１９に示すような統合ランキングを生成する。
【０１０３】
図１９の統合ランキングには、「インスタントラーメン」、「高級ラーメン」、及び「ダイエットラーメン」の指定ジャンルに属する商品が、それぞれ略均一（所定の比率）で上位の３位（所定の順位）までにランクインしている。また、端末装置２０１のユーザの嗜好に合致する「高級ラーメン」のジャンルに属する商品が、１位（つまり、他のジャンルに属する商品よりも上位）にランクインしている。
【０１０４】
図９のステップＳ１１の後に、図３の出力部１０５は、生成された統合ランキング情報を、端末装置２０１へ送信した後に（ステップＳ１２）、統合ランキング生成処理の実行を終了する。
【０１０５】
これらの構成によれば、例えば、「インスタントラーメン」などの第１ジャンルに属する商品の指標値に対する「高級ラーメン」などの第２ジャンルに属する商品の指標値の比率が略一定になるように補正した後に、補正された指標値に基づいて第１ジャンルに属する商品と第２ジャンルに属する商品とを併せてランキングする。このため、第１ジャンルに属する商品と、第２ジャンルに属する商品とが所定の比率でランクインした統合ランキングを表す統合ランキング情報を生成できる。また、統合ランキングにランクインした商品と、当該商品の補正された指標値とを対応付けたランキングを生成すれば、第１ジャンルに属する商品の指標値と、第２ジャンルに属する商品の指標値とが所定の比率でランクインしランキングを生成できる。
【０１０６】
また、これらの構成によれば、積算値に対する総和の比率がそれぞれ略等しくなるように指定ジャンルの指標値に乗算される補正係数を定めるため、第１ジャンルに属する商品の平均的な指標値の大きさと第２ジャンルに属する商品の平均的な指標値の大きさとが異なる場合であっても、第１ジャンルに属する商品と、第２ジャンルに属する商品とが所定の比率でランクインした統合ランキング情報を生成できる。
【０１０７】
これらの構成によれば、ユーザの属性に対応付けられたユーザ指標に基づいて統合ランキング情報を生成するため、統合ランキング情報に含まれる商品の順位をユーザ毎に異ならせることができる。またこれらの構成によれば、ユーザの嗜好から取得されたジャンルの重みをユーザ指標値に乗じるため、ユーザの嗜好に基づいて上位にランクインする商品を変更できる。
【０１０８】
本発明に係る機能を実現するための構成を備えたランキング生成装置として提供できることはもとより、複数の装置で構成されるランキング生成システムであって、本発明に係る機能を実現するための構成をシステム全体として備えた情報処理システムとして提供することもできる。
【０１０９】
なお、本発明に係る機能を実現するための構成を予め備えたランキング生成装置として提供できることはもとより、プログラムの適用により、既存のランキング生成装置を本発明に係るランキング生成装置として機能させることもできる。すなわち、上記実施例で例示したランキング生成装置１００による各機能構成を実現させるためのランキング生成プログラムを、既存のランキング生成装置を制御するコンピュータ（ＣＰＵなど）が実行できるように適用することで、本発明に係るランキング生成装置１００として機能させることができる。
【０１１０】
このようなプログラムの配布方法は任意であり、例えば、メモリカード、ＣＤ−ＲＯＭ、又はＤＶＤ−ＲＯＭなどの記録媒体に格納して配布できる他、インターネットなどの通信媒体を介して配布することもできる。また、本発明に係るランキング生成方法は、本発明に係るランキング生成装置１００を用いて実施できる。
【０１１１】
以上本発明の好ましい実施例について詳述したが、本発明は係る特定の実施例に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形、変更が可能である。
【符号の説明】
【０１１２】
１０：通信網
１００：ランキング生成装置
１００ａ：ＣＰＵ
１００ｂ：ＲＯＭ
１００ｃ：ＲＡＭ
１００ｄ：ハードディスク
１００ｅ：メディアコントローラ
１００ｆ：ＬＡＮカード
１００ｇ：ビデオカード
１００ｈ：ＬＣＤ
１００ｉ：キーボード
１００ｊ：スピーカ
１００ｋ：マウス
１０１ｍ：商品記憶部
１０１ｕ：ユーザ記憶部
１０２：個別生成部
１０３：受付部
１０４：特定部
１０５：統合生成部
１０６：出力部
２０１，２０２：端末装置
【図１】
2012118696.tif 000004
【図２】
2012118696.tif 000005
【図３】
2012118696.tif 000006
【図４】
2012118696.tif 000007
【図５】
2012118696.tif 000008
【図６】
2012118696.tif 000009
【図７】
2012118696.tif 000010
【図８】
2012118696.tif 000011
【図９】
2012118696.tif 000012
【図１０】
2012118696.tif 000013
【図１１】
2012118696.tif 000014
【図１２】
2012118696.tif 000015
【図１３】
2012118696.tif 000016
【図１４】
2012118696.tif 000017
【図１５】
2012118696.tif 000018
【図１６】
2012118696.tif 000019
【図１７】
2012118696.tif 000020
【図１８】
2012118696.tif 000021
【図１９】
2012118696.tif 000022