(57)【特許請求の範囲】
【請求項１】
利用者が複数の商品を購入する際の購入店を推薦する購入店推薦方法であって、
コンピュータが、
前記利用者端末から、前記複数の商品、利用者が指定した指定販売店、および、購入する販売店の最大店数に関する検索条件を受信する受信ステップと、
前記商品を販売する販売店および該商品の販売価格を記録する商品テーブル、および、販売店の所在位置に関連する情報を記録する販売店テーブルを参照し、前記指定販売店および該指定販売店から所定距離以内の販売店で、前記検索条件として指定された全商品が購入可能である販売店を販売店候補として抽出し、更に前記指定販売店を除く販売候補店のうち最低の価格で販売する商品の頻度が高い販売候補店を順次抽出していくことにより前記指定販売店を含む前記販売候補店の数を前記最大店数になるまで絞込むことにより、前記最大店数以内の販売店数で販売店間の距離が所定距離以内であり、かつ、前記検索条件として指定された全商品が購入可能である販売店を販売店候補として抽出する抽出ステップと、
前記指定販売店を含む前記販売店候補を前記利用者端末に送信する送信ステップ
を備えることを特徴とする購入店推薦方法。
【請求項２】
前記抽出ステップは、前記コンピュータが、前記検索条件として指定された前記商品について、該商品を販売する販売店、商品価格、販売店の位置に関連する情報をネットーワーク検索し、該検索結果に基づき、前記商品テーブルおよび前記販売店テーブルを作成する
ことを特徴とする請求項１記載の購入店推薦方法。」
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、利用者が複数の商品を購入する際の購入店を推薦する方法に関する。
【０００２】
【従来の技術】
複数の商品を購入する際の情報提供支援に関する方法は、例えば、本発明と同一の出願人が出願した特願２０００−１２８４７０に、利用者が購入希望する複数の商品の合計販売価格を店舗毎に、複数の店舗に関して表示して、利用者はその内の１店舗を購入先として選択する技術が紹介されている。
【０００３】
【発明が解決しようとする課題】
しかし、一般利用者の購入行動パターンを考慮すると、必要な商品を１店舗に絞って購入することもあれば、複数の店舗を回ってなるべく安価な商品を求めることも考え得る。後者の場合、特願２０００−１２８４７０のような従来技術では、必要な商品毎における販売店間の価格差は利用者が判断しなければいけない。
【０００４】
また、特願２０００−１２８４７０のように購入商品を自宅まで運送してもらう場合は問題とならないが、利用者自身が購入店を訪問する場合は、単純に価格の高低だけを基準に購入店を推薦すると、訪問すべき購入店があまりに多くなって、購入店間移動における時間的・精神的・経済的コストが、商品価格メリットを相殺したり、あるいは、そのコストが商品価格メリットを超えてしまうことになりかねない。
【０００５】
また、利用者によっては、販売店の営業時間、駐車場等の附帯設備、その他の条件を考慮して、対象となる購入店を限定したいという希望が利用者にはある。あるいは、購入サービスポイントを貯めているとか、通常使用しているクレジットカードが利用できるなどの理由で、ある特定の店でなるべく購入したいという希望が利用者にはある。上述の特願２０００−１２８４７０では、このような利用者側の希望を加味した購入店推薦ができない。
【０００６】
本発明の目的は、販売価格がなるべく安価な購入店を推薦することを基本としながらも、利用者の購入店間移動の負担が一定以上に増えないことや、販売価格以外に関する利用者の購入店希望条件を考慮して、推薦する購入店を調整することにある。
【０００７】
【課題を解決するための手段】
本発明にかかる購入店推薦方法は、利用者端末から利用者が購入希望する複数の商品に関する検索条件を受信すると、商品毎に、前記検索条件に該当する販売店および商品販売価格を検索する。そして、その検索結果に基づいて、前記商品毎に前記販売価格が最も低い販売店を識別し、利用者端末に対して、前記商品毎の前記最低価格販売店を購入店候補として送信することを特徴とする。
【０００８】
上記の方法によって、利用者は必要な商品毎に販売価格の最も安い購入店候補を知ることが可能となる。
【０００９】
さらに、本発明にかかる購入店推薦方法は、購入店候補として最も高い頻度で選択された販売店を中核店として特定し、該中核店が選択されていない商品について再度検討する。すなわち、中核店における該商品の販売価格を参照して該販売価格が所定の条件を満たすと判定する場合は、前記中核店を前記商品における購入店候補とすることを特徴とする。
【００１０】
上記の方法によって、例えば、その商品の検索結果の中で、中核店の販売価格が最低価格販売店に次いで安価であれば、この商品についても中核店を購入店候補として利用者に提示するので、利用者は訪問すべき店数を少なくすることが可能となる。
【００１１】
さらに、本発明にかかる購入店推薦方法は、中核店と他の最低価格販売店間の距離や移動時間などの隔たりを参照して、その隔たりが所定の値を超える場合は、中核店から所定の値を超えない隔たりに位置する販売店の内で販売価格が最低である販売店を、その商品における購入店候補とすることを特徴とする。
【００１２】
上記の方法によって、中核店の一定の隔たりの中に位置する販売店で全ての購入を済ますことができ、利用者の購入店間移動の負担を少なくすることが可能となる。
【００１３】
さらに、本発明にかかる購入店推薦方法は、利用者から指定された販売店を中核店として特定することを特徴とする。
【００１４】
上記の方法によって、利用者が様々な理由で自分にとって都合のよい販売店を常に中心とした購入店候補の情報を、利用者は享受できる。
【００１５】
さらに、本発明にかかる購入店推薦方法は、利用者からの購入店に関する条件を受付け、この条件に合致する販売店から購入店候補を推薦することを特徴とする。
【００１６】
上記の方法によって、例えば、販売店の営業時間、駐車場等の附帯設備の有無、バーゲンセールの有無など、販売店に関する様々な条件で、利用者が購入店候補を絞り込むが可能となる。
【００１７】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照し、詳細に説明する。尚、以下の実施例は、利用者が食材を購入する場合を想定したものであるが、本発明は、食品流通分野に限定されるものではない。
【００１８】
図１に、本発明のシステム構成図を示す。本発明は、検索サーバ１００、ネットワーク１１０・１２０、ユーザ端末１３０、サーバ１４０・１５０で構成される。
【００１９】
検索サーバ１００は、さらに、ネットワーク１１０を介してユーザ端末１３０から検索条件を受け付け、ネットワーク１２０を介してサーバ１４０・１５０の情報を検索し、その検索結果に基づきユーザ端末１３０に購入店候補を提示する価格比較プログラム１０１、条件入力された料理名から必要な素材を識別するための構成素材テーブル６００を格納する構成素材ＤＢ１０２、素材毎の検索結果を管理する抽出テーブル７０１〜７０５、購入店候補を管理する候補テーブル１１００、および、購入店候補を再検討するための調整テーブル１２００、検索はされたものの他の条件を満たさない販売店を管理する除外店舗テーブル１８００を格納する一時抽出ＤＢ１０３、利用者の登録した店舗を管理する登録店舗テーブル９００、店舗に関する諸属性を管理する店舗条件テーブル１０００、販売店間の距離を管理する距離判定テーブル１４００を格納する店舗ＤＢ１０４で構成される。
【００２０】
ネットワーク網１１０・１２０は、検索サーバ１００とユーザ端末１３０間、あるいは、検索サーバ１００とサーバ１４０・１５０間で、ｗｗｗ(world wide web)に関するデータを送受信するための通信網である。ネットワーク１１０・１２０は、主に、インターネット網を想定しているが、データが送受信できるのであれば、どのような種類の通信網であっても構わない。また、ネットワーク１１０・１２０は、それぞれ別個に存在するのではなく、同一の一つのネットワークを介して、検索サーバ１００がユーザ端末１３０およびサーバ１４０・１５０に接続する構成も当然あり得る。
【００２１】
ユーザ端末１３０は、検索サーバ１００から送信されたｗｗｗに関するデータを端末画面に表示し、あるいは、表示された画面から入力された情報を検索サーバ１００へ送信するなど、検索サーバ１００との間でｗｗｗに関するデータの送受信を行うブラウザプログラム１３１を有する。ユーザ端末１３０は、主に、デスクトップパソコン、ノートパソコン、デジタルデータ交換可能な携帯電話端末、ＰＤＡ（personal data assistant）などの各種端末が想定されるが、検索サーバ１００と上記のようなデータ交換が実現できるものであれば、どのような装置でも構わない。
【００２２】
サーバ１４０・１５０は、検索サーバ１００とは別個に複数存在しており、販売店の各種販売情報に関するｗｗｗデータを保持するWWW DB１４１・１５１を有する。サーバは、検索サーバ１００とデータ交換ができるものであれば、どのような装置でも構わない。
【００２３】
図２に、価格比較プログラム１０１が行う購入店候補を推薦する処理フローの全体像を示す。
【００２４】
Ｓ２０１で、価格比較プログラム１０１は、ユーザ端末１３０から送信されてきた利用者ＩＤを受信する。具体的には、価格比較プログラム１０１から送信されてきたログイン画面をユーザ端末１３０が表示し、利用者が利用者ＩＤを入力する。すると、ユーザ端末１３０は、この利用者ＩＤを価格比較プログラム１０１に送信する。
【００２５】
Ｓ２０２で、価格比較プログラム１０１は、ユーザ端末１３０に検索条件入力画面５００を送信する。図５に検索条件入力画面５００の例を示す。検索条件としては、料理名５０１、指定したい店舗条件５０２、購入店候補として認める最大店舗数５０３、予め登録している店舗中心に購入店候補を絞り込むか否かの選択５０４が設けられている。各検索条件は、利用者が直接入力しても良いし、または、選択肢が提示されており利用者はそこから選択するようにしても良い。価格比較プログラム１０１が選択肢を提示する場合、たとえば、料理名は構成素材テーブル６００で管理されている料理名を、店舗条件は店舗条件テーブル１０００で管理される項目名を、それぞれの選択肢に設定する。
【００２６】
さらに、例えば、購入店数５０３や登録店舗中心の検索可否５０４等の条件は、価格比較プログラム１０１で予め設定しておき、利用者に対して検索の度に条件設定させないような構成もあり得る。
【００２７】
Ｓ２０３では、ユーザ端末１２０の条件入力画面５００で設定された料理名などの各種設定条件を価格比較プログラム１０１が受信する。そして、価格比較プログラム１０１は、図示していない検索条件テーブルに設定条件を記憶する。この検索条件テーブルには、Ｓ２０１で認証識別している利用者ＩＤを、併せて記憶してもよい。
【００２８】
Ｓ２０４で、価格比較プログラム１０１は、構成素材テーブル６００に基づいて、条件入力された料理名に対応する素材を識別する。図６に、構成素材テーブルの例を示す。
【００２９】
構成素材テーブル６００は、料理名（大分類）、料理名（小分類）、素材が対応づけられて管理されている。例えば、料理名として「カレーライス」が条件入力されたとすると、必要な素材は「ジャガイモ、タマネギ、にんじん、肉、福神漬」であることが識別される。料理名に大分類・小分類とあるのは、同じ分野の料理でもさらに細かく分類分けされて、使われる素材も変わってくるからである。このため、条件入力画面５００では、料理名（小分類）まで利用者に指定させることが望ましい。尚、最終的に料理に必要な素材が特定できるのであれば、構成素材テーブル６００が管理する情報項目やデータ形態は、これに限定される必要はない。
【００３０】
Ｓ２０５で、価格比較プログラム１０１は、Ｓ２０４で識別した必要素材を示す画面情報をユーザ端末１３０に送信する。この時、送信する画面は、その画面上で利用者が必要素材を削除・追加する処理操作が可能となっている。
【００３１】
Ｓ２０６で、価格比較プログラム１０１は、利用者によって最終に確定された検索すべき素材情報をユーザ端末１３０から受信する。そして、価格比較プログラム１０１は、検索条件テーブルに確定された素材項目を記憶する。
【００３２】
Ｓ２０７で、価格比較プログラム１０１は、Ｓ２０６で設定された素材条件に基づいて、サーバ１４０・１５０の情報をインターネット検索して、その検索結果から各素材別に購入店候補を絞り込む。このステップの詳細説明は、図３および図４を使って説明する。
【００３３】
Ｓ２０８で、価格比較プログラム１０１は、Ｓ２０７で絞り込んだ各素材別の購入店候補を示す画面情報をユーザ端末１３０に送信する。検索結果画面は図示していないが、この画面は、各素材別の購入店候補名、素材の販売価格を表示することが第一の目的だが、さらに、購入店候補と最低価格販売店の価格差や、材料毎の抽出テーブル７０１〜７０５を表示することも可能である。
【００３４】
図３・図４を用いて、Ｓ２０７における情報検索から購入店候補絞り込みの詳細処理フローを説明する。
【００３５】
各処理の詳細説明に併せて、次のような検索条件を設定された際の具体的な処理例も説明する。図に示されている各テーブル内のデータや概念図も、同じ検索条件を想定したものである。
【００３６】
すなわち、利用者ＩＤ「Ｕ１」が条件を設定し、その検索条件は、料理名「カレーライス」（かつ、Ｓ２０６で、図６の構成素材テーブル６００のカレーライス該当素材全５品が指定される）、店舗条件「深夜営業」、購入店舗数「２」、行きつけの店（登録店舗）を中心に検索を「する」という設定内容である。これは、図５に示された検索条件入力画面例と同一である。
【００３７】
Ｓ３０１で、価格比較プログラム１０１は、Ｓ２０６で設定された素材条件に基づいて、サーバ１４０・１５０の情報を検索する。検索方法は、指定されたキーワードが存在するウェブサイトをインターネット上から検索する「サーチ・エンジン」と一般的に言われる従来技術を採用することで可能である。また該当サイトから、必要素材と販売価格を抽出することも、ブラウザプログラムが有する「ページ内検索」機能や、その他、文章解析して必要な情報を特定するさまざまな公知例を用いることで可能である。XML(eXtensible Markup Language)言語で記述されたウェブ情報であれば、さらに、必要な素材および販売価格を特定することは容易になる。
【００３８】
Ｓ３０２で、Ｓ３０１の検索結果に基づき、価格比較プログラム１０１は、各素材毎の該当販売店および販売価格を管理する抽出テーブル７０１〜７０５を作成する。この時、販売店間における素材の質量や数量の違いに基づき、例えば１００ｇ当たり単価のように、各販売店の販売価格を調整しておくことが望ましい。テーブル作成の際、価格比較プログラム１０１は販売価格が安い順にレコードをソートしておく。図７に、今回の検索条件例で作成される抽出テーブル７０１〜７０５を示す。料理名「カレーライス」に必要な素材毎に５つのテーブルが作成され、各テーブルの最上段レコードが販売価格の最も安い販売店となっている。
【００３９】
図７の抽出テーブル７０１〜７０５に基づく素材別の販売価格関係を図８に示す。例えば、素材「ジャガイモ」について販売価格の安い順に販売店を並べると、「Ｂ」−「D」−「Ｃ」−「Ａ」−「Ｅ」の順となっている。
【００４０】
Ｓ３０３で、価格比較プログラム１０１は、抽出テーブル７０１〜７０５に基づいて、購入店候補データを管理する候補テーブル１１００と、購入店数が条件設定された場合に候補店数を管理する調整テーブル１２００を作成し、データを記憶する。尚、調整テーブル１２００については、購入店数の条件設定が無い場合は、作成しないようなプログラム設計でも良い。
【００４１】
図１１に、Ｓ３０３の段階で作成された候補テーブル１１００の例を示す。各素材別に購入店候補の販売店が管理される。Ｓ３０３の段階では、価格比較プログラム１０１は、単純に販売価格が最も安い販売店（即ち、抽出テーブル７０１〜７０５の最上段レコードの販売店）を記録するが、これらの購入店候補は、以降の判定処理で順次更新されていく。
【００４２】
想定した検索条件では、図１１に示すように、「ジャガイモ」は「Ｂ」店、「タマネギ」は「Ｂ」店、「にんじん」は「Ｅ」店、「肉」は「Ｃ」店、「福神漬」は「Ｂ」店が購入店候補として記録される。
【００４３】
図１２に、調整テーブル１２００の例を示す。調整テーブル１２００の第一の役割は、販売店が幾つの素材で購入店候補に選択されたかを、「頻度」項目で管理することにある。そして、調整テーブル１２００の第二の役割は、どの販売店が購入する中心となる店であるかを識別するため、「区分」項目を管理することにある。まだ、Ｓ３０３の段階では、全てのレコードについて「００」（コア店でない）を初期値として設定されるが、この区分項目は以降の判定処理で、順次更新されていく。
【００４４】
想定した検索条件においては、Ｓ３０３の段階では、「Ｂ」店が頻度「３」、「Ｃ」店が頻度「１」、「Ｅ」店が頻度「１」となり、区分は全レコード「００」という状態になっている。（図１２の例は、想定して検索条件例のＳ３１７処理後のデータを示している。）
Ｓ３０４で、価格比較プログラム１０１は、図示していない検索条件テーブルを参照し、行きつけの店（すなわち登録店舗）を中心に検索するか否かを判定する。
【００４５】
もし登録店舗を中心とする検索指定であった場合は、価格比較プログラム１０１は、Ｓ３１７に進み、登録店舗テーブル９００を参照し、Ｓ２０１で認証識別している利用者ＩＤに対応する販売店を識別する。登録店舗テーブル９００は、検索の時点までに、利用者が予め指定しておいた販売店を管理するものである。
【００４６】
そして、価格比較プログラム１０１は、識別された販売店が調整テーブル１２００に存在するか否かを参照して、存在するならば、その販売店レコードの「区分」を「００」から「０１」（コア店である）へ変更する。また、識別された販売店が調整テーブル１２００に存在しない場合は、抽出テーブル７０１〜７０５内に存在するか参照し、ここに存在するならば、調整テーブル１２００に新規にレコードを追加し、「店舗」に登録店舗である販売店、「頻度」に「０」、「区分」に「０１」を設定する。識別された販売店が、調整テーブル１２００、抽出テーブル７０１〜７０５のいずれにも存在しない場合は、調整テーブル１２００に何も変更せず、その結果、どのレコードも区分項目は「００」（コア店でない）のままとなる。
【００４７】
また、Ｓ３０４で、価格比較プログラム１０１が、登録店舗中心の検索指定が設定されていない場合は、価格比較プログラム１０１はＳ３０５の処理へと進む。
【００４８】
想定した検索条件では、利用者ＩＤ「Ｕ１」が、「登録店舗中心の検索」と指定しているので、Ｓ３１７で、価格比較プログラム１０１は、登録店舗テーブル９００の利用者「Ｕ１」に対応する店舗「Ｄ」を、抽出テーブル７０１〜７０５・調整テーブル１２００に存在するか識別する。すると、調整テーブル１２００には「Ｄ」店が存在せず、抽出テーブル７０１〜７０５にだけ「Ｄ」店が存在する。したがって、価格比較プログラム１０１は、調整テーブル１２００に新規にレコードを追加し、「店舗」に「Ｄ」店、「頻度」に「０」、「区分」に「０１」を設定する。図１２の調整テーブル１２００の例は、このような処理が実施された時点の状態を示している。
【００４９】
Ｓ３０５で、価格比較プログラム１０１は、図示していない検索条件テーブルから店舗条件が設定されているか否かを識別する。店舗条件が設定されている場合は、価格比較プログラム１０１は、Ｓ３１６に進み、店舗条件テーブル１０００を参照して、現在の候補テーブル１１００に記録されている各購入店候補が設定された店舗条件を満たしているか否かを判定する。そして、購入店候補が店舗条件を満たしていない場合、価格比較プログラム１０１は、店舗条件を満たさない購入店候補である販売店を除外店舗テーブル１８００に登録し、そして、抽出テーブル７０１〜７０５のうちから該当素材の抽出テーブルを参照し、店舗条件を満たす販売店で販売価格が最も安い店舗を検索し、その店舗を新たな購入店候補として候補テーブル１１００に記録し、調整テーブル１２００のデータ内容も更新する。そして、価格比較プログラム１０１は、Ｓ３０６へ進む。
【００５０】
店舗条件テーブル１０００は、価格比較プログラム１０１がインターネットで情報検索した結果を管理してもよいし、あるいは、検索サーバ１００の運営者が、販売店毎の情報を収集し、その結果を入力しても良い。
【００５１】
図１０の店舗条件テーブル１０００は、「深夜営業」という一つの項目のみを管理しているが、当然のごとく、この項目のみに限定されるものではなく、駐車場のような店舗設備や、使用できる決済方法、サービスポイントの有無、最寄駅からの移動時間、など様々な条件に関する情報を管理することが可能である。
【００５２】
想定した検索条件では、店舗条件に「深夜営業」が選択されている。図１０の店舗条件テーブル１０００によれば、「Ｃ」店が「００」（非該当）となっている。そして、Ｓ３０３の段階での候補テーブル１１００では、「肉」の購入店候補に「Ｃ」店が選択されている。したがって、価格比較プログラム１０１は、まず、この「Ｃ」店を除外店舗テーブル１８００に登録する。そして、次に、「肉」の抽出テーブル７０４を参照して、第２番目のレコード（即ち、販売価格が２番目に安い店のレコード）の「Ａ」店について、「深夜営業」しているか店舗条件テーブル１０００で確認する。店舗条件テーブル１０００で、「Ａ」店は「深夜営業」項目は「９９」（該当）となっているため、価格比較プログラム１０１は、候補テーブル１１００の「肉」項目の購入店候補を、「Ｃ」店から「Ａ」店へデータ更新する。そして、価格比較プログラム１０１は、調整テーブル１２００において、「Ｃ」店が購入店候補とする素材がなくなったので、「Ｃ」店のレコードを削除し、代わって、新規に店舗「Ａ」−頻度「１」−区分「００」のレコードを作成する。
【００５３】
図１５に、想定した検索条件に基づいて、登録店舗を中心にした購入店候補の決定過程を示す。因みに、Ｓ３０５の処理が終わった時点の候補テーブル１１００のデータは、「２.店舗条件（深夜営業）」の段階に該当する。
【００５４】
Ｓ３０６に進み、価格比較プログラム１０１は、候補テーブル１１００を参照し、コア店が設定できるか否かを判定する。具体的には、まず、価格比較プログラム１０１は、調整テーブル１２００を参照し、区分「０１」（コア店）のレコードがあるかを判定し、該当レコードがあれば、Ｓ３０７の処理へ進む。この時点で区分「０１」のレコードがあるのは、価格比較プログラム１０１がＳ３１７の処理を行った場合である。
【００５５】
さて、この時点で、調整テーブル１２００に区分「０１」が存在しない場合、価格比較プログラム１０１は、調整テーブル１２００の「頻度」項目の値を比較して、最も高い値となっている購入店候補レコードの区分を「０１」に設定し、Ｓ３０７の処理へ進む。すなわち、登録店舗中心の検索を行わない場合、あるいは、登録店舗中心の検索指定であっても抽出テーブル７０１〜７０５に登録店舗が存在しない場合は、最も多く購入店候補として選択された最多頻出販売店をコア店に設定するような処理を、価格比較プログラム１０１が実行する。
【００５６】
最多頻出販売店をコア店に設定する際、単純に調整テーブル１２００の「頻度」の最も高い値の販売店を選ぶのではなく、その値が所定値より高い場合、あるいは、全体の素材数に対する「頻度」項目の値の割合が所定値より高い場合、価格比較プログラム１０１が該当する販売店をコア店に設定しても良い。また、一旦、価格比較プログラム１０１が、現状の調整テーブル１２００の状態をユーザ端末１３０に送ると共に、どの店舗をコア店にするのかを利用者に選択させることによって、コア店を決定することも考えられる。
【００５７】
想定した検索条件では、価格比較プログラム１０１が、Ｓ３１７の処理を行っているので、調整テーブル１２００に区分が「０１」となっている「Ｄ」店が存在しており、よって、価格比較プログラム１０１は、Ｓ３０７へ進む。
【００５８】
Ｓ３０６で、価格比較プログラム１０１が、上記のような最多頻出販売店調整によってもコア店を設定できない場合、Ｓ４０１以降への処理と進む。
【００５９】
Ｓ３０７で、価格比較プログラム１０１は、候補テーブル１１００を参照して、コア店が購入店候補として選択されていない素材がどれであるかを識別する。該当する素材が存在する場合は、該当する素材毎に、価格比較プログラム１０１は、Ｓ３０８〜３０９・３１２の処理でコア店を購入店候補に設定し直すことが可能かどうか、また、Ｓ３１０・３１３〜３１４の処理で、コア店が購入候補として設定できないならば、現在の購入店候補がコア店から一定の距離内かどうかを再検討する。尚、Ｓ３０７で、全ての素材についてコア店が購入店候補である場合は、価格比較プログラム１０１は、Ｓ４０１の処理へと進む。
【００６０】
想定した検索条件では、登録店舗の「Ｄ」店がコア店として設定されているにも関わらず、５点の全素材が「Ｄ」店以外の販売店が購入店候補とされている（図１５の「２.店舗条件（深夜営業）」）のレコード参照）。したがって、価格比較プログラム１０１は、全素材について、「Ｄ」店を購入店候補に設定できるか否か再検討する。
【００６１】
Ｓ３０８で、価格比較プログラム１０１は、候補テーブル１１００でコア店が購入店候補とされていない素材に関する抽出テーブル７０１〜７０５の一つを、まず参照する。
【００６２】
想定した検索条件では、候補テーブル１１００の最初の素材項目である「ジャガイモ」がコア店の「Ｄ」店ではなく「Ｂ」店なので、価格比較プログラム１０１は、「ジャガイモ」の抽出テーブル７０１を参照する。
【００６３】
Ｓ３０９で、価格比較プログラム１０１は、参照している抽出テーブル（７０１〜７０５のいずれか）において、販売価格の安い順で販売店を順位付けした場合に、所定の順位内にコア店が位置するか否かを判定する。抽出テーブル７０１〜７０５は既にこの順でソートされているので、価格比較プログラム１０１は、コア店のレコードが上から何番目に位置するかを識別すれば確認できる。
【００６４】
そして、コア店の販売価格が所定順位内であると判定すれば、価格比較プログラム１０１は、Ｓ３１２へ進み、候補テーブル１１００における該当素材項目の購入店候補をコア店に更新し、また、調整テーブル１２００のデータを更新する。また、所定順位内ではないと判定すれば、価格比較プログラム１０１は、Ｓ３１０の処理へ進む。
【００６５】
例えば、価格比較プログラム１０１に、所定順位が「２」と初期設定されているとする。想定した検索条件では、コア店は今「Ｄ」店であるので、価格比較プログラム１０１は、今参照している「ジャガイモ」の抽出テーブル７０１で、「Ｄ」店のレコード位置を確認する。抽出テーブル７０１で、「Ｄ」店のレコードは上から２番目に位置していることから、価格比較プログラム１０１は、コア店の販売価格が所定の順位内であると判定する。この結果、価格比較プログラム１０１は、候補テーブル１１００の「ジャガイモ」項目の購入店候補を、「Ｂ」店から登録店舗である「Ｄ」店へ変更し、また、調整テーブル１２００も更新された候補テーブル１２００に基づいてデータが変更される（この場合、「Ｄ」店の頻度が「０」から「１」へ、「Ｂ」店の頻度が「３」から「２」へ）。
【００６６】
想定した検索条件によってもたらされた抽出テーブル７０１〜７０５について、コア店「Ｄ」が所定順位内（今上位２位以内と想定）かどうかの判定結果は、図１５の「3.登録店舗（Ｄ）の価格が２位」の段階に示される。それまで設定されていた購入店候補と比較すると、「ジャガイモ」の項目では、最低販売価格で販売し深夜営業している「Ｂ」店から、登録店舗である「Ｄ」店に変更され、それ以外の素材項目では、「Ｄ」店の販売価格が上位２位以内に位置しないため変更されていない。
【００６７】
Ｓ３１０では、価格比較プログラム１０１は、距離判定テーブル１４００から、該当素材項目の購入店候補とコア店が所定距離内か否かを判定する。図１４に示すように距離判定テーブル１４００は、各販売店間の距離が所定距離内か否かを判定した結果が管理されている。距離判定テーブル１４００は、各販売店間の距離を格納し、価格比較プログラム１０１が対象販売店間の距離を識別して、所定距離内か否か判定してもよい。図１４の距離判定テーブル１４００に格納されるデータは、各販売店が図１３に示すような位置関係にある場合を想定している。図１３における各販売店を中心にした円周は、価格比較プログラム１０１に設定された所定の距離を半径にしている。
【００６８】
各販売店の距離データは、各販売店の所在位置に関する情報を、検索サーバ１００がインターネット上で情報検索して収集し、あるいは、検索サーバ１００運営者がインターネットとは別の情報源から収集して、価格比較プログラム１０１が収集した位置情報に基づき各販売店間の距離を計算することによって求められる。あるいは、利用者の検索条件が設定された後に、価格比較プログラム１０１が、素材情報と併せて販売店の位置情報を情報検索して、その結果に基づきＳ３０３の段階で、距離判定テーブル１４００を作成してもよい。また、距離判定の代わりに、各販売店間の移動時間を判定材料としても構わない。
【００６９】
Ｓ３１０で、現在の購入店候補がコア店から所定距離以内と判定すれば、価格比較プログラム１０１は、候補テーブル１１００の更新は行わず、Ｓ３１１に進む。一方、購入店候補がコア店から所定距離以内に所在しないと判定すれば、価格比較プログラム１０１は、Ｓ３１３へ進み、この購入店候補の販売店を除外店舗テーブル１８００に登録した上で、現在再検討中の素材の抽出テーブル（７０１〜７０５のいずれか）を参照し、上位レコードから順に検討し、除外店舗テーブル１８００に登録されておらず、かつ、距離判定テーブル１４００に基づきコア店から所定距離内と判定される最初のレコードの販売店を検索する。そして、Ｓ３１４で、価格比較プログラム１０１は、候補テーブル１１００の該当素材の購入店候補を、抽出された販売店へ更新するとともに、調整テーブル１２００をデータ更新する。
【００７０】
想定した検索条件では、登録店舗「Ｄ」店がコア店となるが、距離判定テーブル１４００によると、「Ｄ」店と所定距離内にあるのは「９９」（該当）の値が付されている「Ａ」、「Ｃ」、「Ｅ」の３店とコア店自身の「Ｄ」店、所定距離内にないのは「００」（非該当）の値が付されている「Ｂ」の１店である。図１５において「3.登録店舗(D)の価格が２位」の状態であり、所定距離内に所在しない「Ｂ」店が購入店候補となっている素材項目が、「タマネギ」、「福神漬」の２項目存在する。
【００７１】
したがって、価格比較プログラム１０１は、除外店舗テーブル１８００に「Ｂ」店を登録する（この時点で、「Ｃ」、「Ｂ」が登録されることになる）とともに、「タマネギ」、「福神漬」について、Ｓ３１３〜３１４の処理を行う。「タマネギ」の抽出テーブル７０２を参照すると、「Ｂ」店の次に位置する「Ａ」店は、除外店舗テーブル１８００に含まれず、かつ、コア店である「Ｄ」店から所定距離内と判定されるため、価格比較プログラム１０１は「タマネギ」の購入店候補を「Ａ」と変更する。「福神漬」の抽出テーブル７０５を参照すると、「Ｂ」店の次に位置するのは「Ｃ」店だが、「Ｃ」店は除外店舗テーブル１８００に登録されているため、購入店候補とはならない。したがって、価格比較プログラム１０１は、「Ｃ」店の次に位置する「Ｄ」店を検討する。「Ｄ」店は除外店舗テーブル１８００に登録されず、また、「Ｄ」店はコア店自身であるので当然「９９」（該当）となる。この結果、価格比較プログラム１０１は、候補テーブル１１００の「福神漬」の購入店候補を、「Ｄ」店に変更し、調整テーブル１２００もデータ更新する。
【００７２】
Ｓ３１１で、価格比較プログラム１０１は、購入店候補がコア店ではなく、かつ、未だ再検討されていない素材があるかを判定し、あれば、Ｓ３１５に進み、次の再検討素材の抽出テーブル（７０１〜７０５のいずれか）を参照しにいき、Ｓ３０９へ戻る。また、購入店候補がコア店でない素材は全て再検討したと判定すると、価格比較プログラム１０１は、図４のＳ４０１の処理へ進む。この判定は、例えば、Ｓ３０７の段階で、価格比較プログラム１０１が、購入店候補の再検討が必要となる素材項目をワークメモリ上に保持しておき、再検討を終えた素材項目はワークメモリ上から消去するなど、さまざまな方法が可能である。
【００７３】
図４のＳ４０１で、Ｓ３１１までの処理を終えた価格比較プログラム１０１は、図示していない検索条件テーブルを参照し、購入する最大店数の条件が設定されているか否かを判定する。店数条件が設定されていない場合は、価格比較プログラム１０１は、一連の購入店絞込みの処理を終了し、現時点の候補テーブル１１００に基づき、Ｓ２０８で各素材の購入店候補に関する情報をユーザ端末１３０へ送信する。
【００７４】
一方、最大店数が設定されている場合、価格比較プログラム１０１は、Ｓ４０２の処理へと進む。
【００７５】
想定した検索条件では、最大店数条件が「２」と設定されているので、価格比較プログラム１０１は、Ｓ４０２へ進む。
【００７６】
Ｓ４０２で、価格比較プログラム１０１は、調整テーブル１２００を参照して、現時点の購入店候補の店数が、条件設定された店数以内であるか否かを判定する。
【００７７】
この際、調整テーブル１２００のコア店（区分が「０１」のレコード）の頻度項目が「０」である場合、すなわち、登録店舗中心の検索指定であっても結局どの素材についても購入店候補として登録店舗が選択されなかった場合、価格比較プログラム１０１は、調整テーブル１２００から登録店舗のレコードを削除した上で、店数条件の判定を行うものとする。
【００７８】
Ｓ４０２で、現時点の購入店候補の店数が店数条件を満たしている場合、価格比較プログラム１０１は、一連の購入店絞込みの処理を終了し、現時点の候補テーブル１１００に基づき、Ｓ２０８で各素材の購入店候補に関する情報をユーザ端末１３０へ送信する。一方、店数条件を満たしていない場合、価格比較プログラム１０１は、Ｓ４０３へ進む。
【００７９】
想定した検索条件だと、現時点の候補テーブル１１００は、図１５の「４．登録店舗（Ｄ）からの距離」の段階の状態になっており、したがって、調整テーブル１２００は、登録店舗である「Ｄ」店の頻度が「２」、「Ａ」店の頻度が「２」、そして、「Ｅ」店の頻度が「１」の状態となっている。これは、想定した店数条件「２」を満たしていないため、価格比較プログラム１０１は、Ｓ４０３へと進むことになる。
【００８０】
Ｓ４０３で、価格比較プログラム１０１は、調整テーブル１２００を参照し、区分「０１」の販売店レコードが存在するか否かを判定する。該当レコードが存在する場合、すなわち、コア店が現時点で存在する場合、価格比較プログラム１０１は、Ｓ４０４で、抽出設定件数「ｉ」を条件設定された店数から１を減じた値に設定し、Ｓ４０６へ進む。これは、コア店を含むように意識して店数条件に合致する購入店候補を再検討するために行う。
【００８１】
また、調整テーブル１２００に区分「０１」の販売店レコードが存在しない場合、すなわち、コア店が現時点で存在しない場合、価格比較プログラム１０１は、Ｓ４０５に進み、抽出設定件数「ｉ」を条件設定された店数と同一の値に設定し、Ｓ４０６へ進む。これは、条件設定された最大店数に合致するよう購入店候補を再検討する際、コア店を意識しなくてもよいためである。
【００８２】
想定した検索条件では、調整テーブル１２００に、区分「０１」とする「Ｄ」店のレコードが存在するため、価格比較プログラム１０１は、Ｓ４０４へ進み、「ｉ」を条件設定された店数（ここでは「２」）から１減じた数「１」に設定する。
【００８３】
Ｓ４０６で、価格比較プログラム１０１は、調整テーブル１２００を参照し、区分「００」と設定されたレコード、すなわち、コア店ではない販売店レコードのうちで、頻度項目が最多のレコードを識別する。
【００８４】
そして、Ｓ４０７で、価格比較プログラム１０１は、頻度項目が最多のレコードが単独であるか否かを判定し、単独であれば、Ｓ４１０で、調整テーブル１２００の該当販売店レコードの区分を「００」から「０１」に更新する。すなわち、該当販売店もコア店に分類され、結果的に、コア店が複数存在することになる。
【００８５】
Ｓ４０７で、調整テーブル１２００で区分項目が「００」、かつ、頻度項目が最多の販売店レコードが複数の場合、価格比較プログラム１０１は、Ｓ４０８で、そのレコード数が現時点の「ｉ」以下であるかをさらに判定する。そして、「ｉ」以下であれば、価格比較プログラム１０１は、Ｓ４１０に進み、調整レコード１２００において該当する複数の販売店レコードの区分を「００」から「０１」に更新する。
【００８６】
しかし、一方、Ｓ４０８で、該当するレコード数が「ｉ」を超える場合、すなわち、条件店数を超えると判断する場合、価格比較プログラム１０１は、該当レコードの販売店を提示し、「ｉ」の数だけ販売店を選択することを依頼する画面情報をユーザ端末１３０に送信し、ユーザ端末１３０から選択された販売店の情報を受信した上、Ｓ４１０へ進み、調整テーブル１２００において選択された販売店レコードの区分を「００」から「０１」に更新する。
【００８７】
Ｓ４１１で、価格比較プログラム１０１は、「ｉ」の現時点の値から、調整テーブル１２００の区分項目を「００」から「０１」に変更したレコード数を減じた値を、新たな「ｉ」の値として設定する。
【００８８】
そして、Ｓ４１２で、価格比較プログラム１０１は、「ｉ」が「０」か否かを判定する。すなわち、検索条件で設定された店数条件を満たすように購入店候補の数を限定できたかどうかを、この段階で判定する。そして、「ｉ」が「０」であれば、価格比較プログラム１０１はＳ４１４の処理へ進み、一方、「ｉ」が「０」でなければ、再びＳ４０６の処理へ戻る。
【００８９】
想定した検索条件では、店数条件は「２」で、コア店は存在するため、Ｓ４０４の段階で「ｉ」は「１」である。また、調整テーブル１２００において区分「００」で最多頻度のレコードは、頻度「２」の「Ａ」店の１レコードのみである。したがって、価格比較プログラム１０１は、Ｓ４０７〜４０８、Ｓ４１０〜４１２と処理が進み、調整テーブル１２００の「Ａ」店レコードの区分を「０１」に変更し、その結果「ｉ」は「０」となり店数条件は満たされる。したがって、価格比較プログラム１０１は、そのまま、Ｓ４１３へと進む。
【００９０】
Ｓ４１３で、価格比較プログラム１０１は、この時点の候補テーブル１１００と調整テーブル１２００を照合して、購入店候補にコア店以外が選択されている素材を識別し、たとえば、ワークメモリ上に再検討すべき素材項目を記憶する。
【００９１】
Ｓ４１４で、価格比較プログラム１０１は、再検討すべき最初の素材項目の抽出テーブル（７０１〜７０５のいずれか）を参照する。
【００９２】
Ｓ４１５で、価格比較プログラム１０１は、参照中の抽出テーブル７０１〜７０５において、調査テーブル１２００で区分「０１」に設定されている各販売店のうち、参照中の抽出テーブル（７０１〜７０５のいずれか）で最上位に位置している販売店を特定し、この販売店を候補テーブル１１００の該当素材の購入店候補に設定し、ワークメモリ上に記憶された再検討素材項目から該当素材を消去する。
【００９３】
Ｓ４１６で、価格比較プログラム１０１は、ワークメモリ上に再検討素材項目が存在するか否かを判定し、存在すれば、Ｓ４１７へ進みワークメモリ上に存在するいずれかの再検討素材項目に対応する抽出テーブル（７０１〜７０５のいずれか）を参照し、再びＳ４１５の処理へ戻る。一方、Ｓ４１６で、ワークメモリ上に再検討素材項目が存在しない場合は、これで一連の購入店絞込み処理を終了し、現時点での候補テーブル１１００に基づき、価格比較プログラム１０１は、Ｓ２０８で購入店候補の画面情報をユーザ端末１３０に送信する。
【００９４】
想定した検索条件では、店数条件を満たす処理を実施した結果、調整テーブル１２００では、「Ｄ」店と「Ａ」店が区分「０１」（コア店）となっている。そして、候補テーブル１１００は、図１５の「４．登録店舗（Ｄ）からの距離」の行のような状態になっている。したがって、価格比較プログラム１０１は、Ｓ４１３で、「にんじん」項目のみがコア店以外の購入店候補だと認識する。そこで、価格比較プログラム１０１は、「にんじん」の抽出テーブル７０３を参照し、コア店である「Ａ」店と「Ｄ」店のいずれが上位に位置するか識別し、この結果「Ａ」店が上位にあるため、候補テーブル１１００の「にんじん」項目の購入店候補を「Ｅ」から「Ａ」に変更することになる。こうして、最終的な候補テーブル１１００は、図１５の「５．店数条件（ｍａｘ２）」の行のような状態となる。
【００９５】
以上が、購入店候補の絞り込み処理の動作説明である。
【００９６】
以上の説明においては、登録店舗中心の検索指定を例にして具体的処理例を示した。参考までに、登録店舗中心の検索指定はしないで、他は同じ条件設定である場合における購入店候補決定過程を図１６に示す。すなわち、「深夜営業」という店舗条件を満たす中で、最も多く購入店候補として選択された販売店を最初のコア店に特定する、最多頻出店舗中心の検索方法を図１６に示す。
【００９７】
上記実施例では、購入店候補がコア店から所定距離内に位置しなければ購入店候補を再検討する処理が自動的に行われるが、他の条件と同様に、この処理を行うか否か、あるいは、その距離の値を、利用者が最初に設定できるようにすることも可能である。コア店の販売価格順位判定を行うかどうかについても、同様のことが言える。
【００９８】
あるいは、例えば、店舗条件で「駐車場」と設定された場合は、車で購入するものと判断し、上記の距離判定を行わないようにすることも可能である。また、場合によっては、上記実施例の判定処理の一部を削除したり、判定処理順序を変更することも可能である。
【００９９】
図１７に、本実施の形態にかかる検索サーバ１００のハードウエア構成の一例を示す。
【０１００】
検索サーバ１００はＣＰＵ１７０１と、ＲＯＭ１７０２と、ＲＡＭ１７０３と、ＨＤＤ（ハードディスクドライブ）１７０４と、ＨＤ（ハードディスク）１７０５と、ＦＤＤ（フレキシブルディスクドライブ）１７０６と、着脱可能な記録媒体の一例としてのＦＤ（フレキシブルディスク）１７０７と、ディスプレイ１７０８と、Ｉ／Ｆ（インターフェース）１７０９と、キーボード１７１１と、マウス１７１２と、スキャナ１７１３と、プリンタ１７１４と、を備えている。また、各構成部はバスまたはケーブル１７００によってそれぞれ接続されている。
【０１０１】
ここで、ＣＰＵ１７０１は検索サーバ１００の全体の制御を司る。ＲＯＭ１７０２は、ブートプログラムなどのプログラムを記憶している。ＲＡＭ１７０３は、ＣＰＵ１７０１のワークエリアとして使用される。ＨＤＤ（ハードディスクドライブ）１７０４は、ＣＰＵ１７０１の制御にしたがってＨＤ（ハードディスク）１７０５に対するデータのリード／ライトを制御する。ＨＤ１７０５は、ＨＤＤ１７０４の制御にしたがって書き込まれたデータを記憶する。
【０１０２】
ＦＤＤ１７０６は、ＣＰＵ１７０１の制御にしたがってＦＤ１７０７に対するデータのリード／ライトを制御する。ＦＤ１７０７は、ＦＤＤ１７０６の制御にしたがって書き込まれたデータを記憶したり、記憶しているデータをＦＤＤ１７０６の磁気ヘッドに読み取らせたりする。着脱可能な記録媒体としては、ＦＤ１７０７のほか、ＣＤ−ＲＯＭ（ＣＤ−Ｒ、ＣＤ−ＲＷ）、ＭＯ（ＭａｇｎｅｔｏＯｐｔｉｃａｌ  Ｄｉｓｋ）、ＤＶＤ（Ｄｉｇｉｔａｌ  ＶｅｒｓａｔｉｌｅＤｉｓｋ）、メモリーカードなどであってもよい。ディスプレイ１７０８は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータに関するウインドウを表示する。たとえば、ＣＲＴ、ＴＦＴ液晶ディスプレイ、プラズマディスプレイなどである。
【０１０３】
Ｉ／Ｆ１７０９は、通信回線１７１０を通じてインターネット１１０・１２０に接続され、インターネット１１０・１２０を介して、ユーザ端末１３０を始めとする他の情報処理装置に接続される。そして、Ｉ／Ｆ１７０９はインターネット１１０・１２０と検索サーバ１００内部とのデータの送受信を司り、他の情報処理装置との間のデータの入出力を制御する。Ｉ／Ｆ１７０９は、たとえばモデムなどである。
【０１０４】
キーボード１７１１は、文字、数字、各種指示などの入力のためのキーを備え、装置内部へのデータの入力をおこなう。タッチパネル式の入力パッドやテンキーなどであってもよい。マウス１７１２は、カーソルの移動や範囲選択、あるいはウインドウの移動やサイズの変更などをおこなう。ポインティングデバイスとして同様の機能を備えるものであれば、トラックボール、ジョイスティック、十字キー、ジョグダイヤルなどであってもよい。
【０１０５】
スキャナ１７１３は、画像を光学的に読み取り、装置内に画像データとして取り込む。プリンタ１７１４は、たとえばレーザプリンタ、インクジェットプリンタなどであって、画像データや文書データを印刷する。
（付記１）
利用者が複数の商品を購入する際の購入店を推薦する購入店推薦方法であって、
利用者端末から送信された、前記複数の商品に関する検索条件を受信し、
前記商品毎に、前記検索条件に該当する販売店および該販売店における該商品の販売価格を検索し、
前記商品毎に、前記販売価格が最も低い販売店を最低価格販売店として識別し、
前記商品毎の前記最低価格販売店を購入店候補として前記利用者端末に送信する
ことを特徴とする購入店推薦方法。
（付記２）
前記商品毎の前記最低価格販売店を参照し、最も高い頻度で選択された最低価格販売店を中核店として特定し、
前記最低価格販売店として前記中核店が選択されていない前記商品について、該中核店における該商品の販売価格を参照し、該販売価格が所定の条件を満たすか否かを判定し、
前記所定の条件を満たすと判定する場合は、前記中核店を前記商品における購入店候補とする
ことを特徴とする付記１に記載の購入店推薦方法。
（付記３）
前記商品毎の前記最低価格販売店を参照し、最も高い頻度で選択された最低価格販売店を中核店として特定し、
前記最低価格販売店として前記中核店が選択されていない前記商品について、該中核店と前記最低価格販売店の間の隔たりを参照し、該隔たりが所定の値を超えるか否かを判定し、
前記所定の値を超えると判定する場合は、前記中核店から該所定の値を超えない隔たりに位置する前記検索された販売店のうちで、該商品の販売価格が最低である販売店を識別し、
前記識別した販売店を、前記商品における購入店候補とする
ことを特徴とする付記１記載の購入店推薦方法。
（付記４）
前記利用者から指定された販売店を前記中核店として特定することを特徴とする付記２乃至付記３記載の通知方法。
（付記５）
前記利用者端末から、前記購入店に関する検索条件を受信し、前記購入店に関する検索条件に該当する販売店を検索する
ことを特徴とする付記１記載の購入店推薦方法。
（付記６）
前記利用者端末から、購入店候補の最大店数の条件を受信し、該最大店数の条件に該当するように購入店候補を調整する
ことを特徴とする付記１記載の購入店推薦方法。
（付記７）
利用者が複数の商品を購入する際の購入店を推薦する購入店推薦装置であって、
利用者端末から送信された、前記複数の商品に関する検索条件を受信する手段と、
前記商品毎に、前記検索条件に該当する販売店および該販売店における該商品の販売価格を検索する手段と、
前記商品毎に、前記販売価格が最も低い販売店を最低価格販売店として識別し、
前記商品毎の前記最低価格販売店を購入店候補として前記利用者端末に送信する手段
を有することを特徴とする購入店推薦装置。
【０１０６】
【発明の効果】
以上のように、本発明にかかる購入店推薦方法により、販売価格がなるべく安価な購入店を推薦することを基本としながらも、利用者の購入店間移動の負担が一定以上に増えないことや、販売価格以外に関する利用者の購入店希望条件を考慮して、推薦する購入店を調整することが可能となる。
【図面の簡単な説明】
【図１】本発明のシステム構成を示す図である。
【図２】本発明の検索サーバ１００の全体的な処理フロー図である。
【図３】本発明の購入店候補絞込み処理に関するフロー図（前半）である。
【図４】本発明の購入店候補絞込み処理に関するフロー図（後半）である。
【図５】ユーザ端末１３０に表示される検索条件入力画面を示す図である
【図６】構成素材テーブル６００を示す図である。
【図７】各素材の抽出テーブル７０１〜７０５を示す図である。
【図８】各素材の店舗別最低価格順位を示す概念図である。
【図９】登録店舗テーブル９００を示す図である。
【図１０】店舗条件テーブル１０００を示す図である。
【図１１】候補テーブル１１００を示す図である。
【図１２】調整テーブル１２００を示す図である。
【図１３】店舗間の位置関係を示す概念図である。
【図１４】距離判定テーブル１４００を示す図である。
【図１５】登録店舗中心の購入店候補決定過程を示す概念図である。
【図１６】最多頻出店舗中心の購入店候補決定過程を示す概念図である。
【図１７】検索サーバ１００のハードウェア構成を示す図である。
【図１８】除外店舗テーブル１８００を示す図である。
【符号の説明】
１００  検索サーバ
１０１  価格比較プログラム
１０２  構成素材ＤＢ
１０３  一時抽出ＤＢ
１０４  店舗ＤＢ
１１０・１２０  ネットワーク
１３０  ユーザ端末
１３１  ブラウザプログラム
１３３  電子メールプログラム
１４０・１５０  サーバ
１４１・１５１  ＷＷＷ ＤＢ
５００  検索条件入力画面
６００  構成素材テーブル
７０１〜７０５  抽出テーブル
９００  登録店舗テーブル
１０００  店舗条件テーブル
１１００  候補テーブル
１２００  調整テーブル
１４００  距離判定テーブル
１８００  除外店舗テーブル
【図１】
0003931723.tif 000002
【図２】
0003931723.tif 000003
【図３】
0003931723.tif 000004
【図４】
0003931723.tif 000005
【図５】
0003931723.tif 000006
【図６】
0003931723.tif 000007
【図７】
0003931723.tif 000008
【図８】
0003931723.tif 000009
【図９】
0003931723.tif 000010
【図１０】
0003931723.tif 000011
【図１１】
0003931723.tif 000012
【図１２】
0003931723.tif 000013
【図１３】
0003931723.tif 000014
【図１４】
0003931723.tif 000015
【図１５】
0003931723.tif 000016
【図１６】
0003931723.tif 000017
【図１７】
0003931723.tif 000018
【図１８】
0003931723.tif 000019