以下、図面に基づいて、本発明の実施形態を詳細に説明する。
[本発明の第1の実施の形態]
(クーポン配信システムの構成)
図1は、本発明の実施の形態に係るクーポン配信システム1の構成例を示す図である。なお、クーポン管理サーバ2の数は、任意であり、複数設けることも勿論可能である。
図1に示すように、クーポン配信システム1は、クーポン管理サーバ2、および携帯端末3−1乃至3−Nがネットワーク4を介して接続されることで構成されている。クーポン管理サーバ2は、所定のサービスやクーポンを配信する事業主であり、携帯端末3−1乃至3−Nは、クーポン管理サーバ2のサービスを利用する会員であり、双方は契約関係にある。ネットワーク4は、LAN(Local Area Network)、インターネット等である。
クーポン管理サーバ2は、例えば、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)、HDD(Hard Disk Drive)等を有するコンピュータであり、携帯端末3−1乃至3−Nに配布する会員向けのクーポンをデータベースで管理している。
またクーポン管理サーバ2は、携帯端末3−1乃至3−Nに配布した会員向けのクーポンが他の携帯端末に授受された場合、その授受に関する情報(例えば、授受日時、授受元ユーザ、授受先ユーザ、授受場所、クーポンID等)を、クーポン利用履歴としてデータベースで管理する。
またクーポン管理サーバ2は、データベースに記憶されているクーポン利用履歴を参照し、所定期間内に多くの人にクーポンを手渡せる人(例えば、ユーザA)を抽出し、その抽出された人(ユーザA)が手渡し可能な人(例えば、ユーザB、ユーザC、ユーザD)を除く人(ユーザA〜ユーザD以外の人)の中で、再度、所定期間内に多くの人にクーポンを手渡せる人を抽出するといった処理を繰り返し実行し、クーポンを全員に配布できるようにする。その処理の詳細は、後述する。
携帯端末3−1乃至3−Nは、CPU、ROM、RAM、入力部、および表示画面などを実装した携帯型コンピュータであって、例えば、スマートフォン、カメラ付き携帯電話機、タブレット端末(携帯情報端末)等である。携帯端末3−1乃至3−Nは、NFC(Near Field Communication)方式の近距離無線通信機能を備えている。
NFC方式の近距離無線通信とは、ISO/IEC21481(NFCIP−2)規格に沿った通信方式、又は、将来これを含んで拡張される通信方式を意味する。NFC方式のデバイスには、対応すべき3つのモードが規定されている。
1.リーダ/ライタモード
NFCデバイスが、非接触ICカードに相当するデバイスから、データの読み込み及び書き込みを行うモードである。
2.カードエミュレーションモード
NFCデバイスが、非接触ICカードの役割をするモードである。
3.P2P(Pear to Pear)モード
NFC方式のデバイス(イニシエータ)が、他のNFC方式のデバイス(ターゲット)と、双方向通信をするモードである。
携帯端末3−1乃至3−Nは、クーポン管理サーバ2からネットワーク4を介して配信される会員向けのクーポンを受信する。また、携帯端末3−1(イニシエータ)は、取得したクーポンを、P2Pモードで携帯端末3−N(ターゲット)に送信する(電子的に手渡す)ことができる。さらに、携帯端末3−1乃至3−Nは、GPS(Global Positioning System)機能を備えており、クーポンを取得(授受)した位置情報(緯度、経度)を取得する。
以下、携帯端末3−1乃至3−Nを個々に区別する必要がない場合、単に携帯端末3と記載する。
(クーポン管理サーバの構成)
図2は、クーポン管理サーバ2のハードウェアの構成例を示す図である。尚、図2の構成はあくまで一例であり、用途、目的に応じて様々な構成を採ることが可能である。
クーポン管理サーバ2を実現するコンピュータは、制御部11、記憶部12、メディア入出力部13、通信制御部14、入力部15、表示部16、周辺機器I/F(インターフェース)部17等が、バス18を介して接続される。
制御部11は、CPU、ROM、RAM等で構成される。
CPUは、記憶部12、ROM、記録媒体等に格納されるプログラムをRAM上のワークメモリ領域に呼び出して実行し、バス18を介して接続された各部を駆動制御し、クーポン管理サーバ2が行う後述する処理を実現する。ROMは、不揮発性メモリであり、コンピュータのブートプログラムやBIOS(Basic Input/Output System)等のプログラム、データ等を恒久的に保持している。RAMは、揮発性メモリであり、記憶部12、ROM、記録媒体等からロードしたプログラム、データ等を一時的に保持するとともに、制御部11が各種処理を行う為に使用するワークエリアを備える。
記憶部12は、HDDであり、制御部11が実行するプログラム、プログラム実行に必要なデータ、OS(オペレーティングシステム)等を格納する。プログラムに関しては、OSに相当する制御プログラムや、後述する処理をコンピュータに実行させるためのアプリケーションプログラムが格納されている。これらの各プログラムコードは、制御部11により必要に応じて読み出されてRAMに移され、CPUに読み出されて各種の手段として実行される。
メディア入出力部13(ドライブ装置)は、データの入出力を行い、例えば、CDドライブ(−ROM、−R、−RW等)、DVDドライブ(−ROM、−R、−RW等)等のメディア入出力装置を有する。通信制御部14は、通信制御装置、通信ポート等を有し、コンピュータとネットワーク4間の通信を媒介する通信インターフェースであり、ネットワーク4を介して、他のコンピュータ間との通信制御を行う。ネットワーク4は、有線、無線を問わない。
入力部15は、データの入力を行い、例えば、キーボード、マウス等のポインティングデバイス、テンキー等の入力装置を有する。入力部15を介して、コンピュータに対して、操作指示、動作指示、データ入力等を行うことができる。表示部16は、CRTモニタ、液晶パネル等のディスプレイ装置、ディスプレイ装置と連携してコンピュータのビデオ機能を実現するための論理回路等(ビデオアダプタ等)を有する。
周辺機器I/F(インターフェース)部17は、コンピュータに周辺機器を接続させるためのポートであり、周辺機器I/F部17を介してコンピュータは周辺機器とのデータの送受信を行う。周辺機器I/F部17は、USB(Universal
Serial Bus)やIEEE(The Institute of Electrical and Electronics Engineers)1394やRS−232C等で構成されており、通常複数の周辺機器I/Fを有する。周辺機器との接続形態は有線、無線を問わない。バス18は、各装置間の制御信号、データ信号等の授受を媒介する経路である。
図3は、クーポン管理サーバ2の記憶部12に記憶されるデータベースの一例を示す図である。図3に示すように、クーポン管理サーバ2の記憶部12は、少なくとも、クーポン利用履歴データベース(DB)21、およびクーポン配布と保有予定データベース(DB)22を記憶している。
図4は、クーポン利用履歴データベース21の例を示す図である。
図4に示すように、クーポン利用履歴データベース21は、少なくとも、From人、To人、経過日、From Time、To Time、Lat Lon、クーポンIDを、クーポンが授受される毎に記憶する。From人は、クーポンの授受元であるユーザを一意に識別するための情報である。To人は、クーポンの授受先であるユーザを一意に識別するための情報である。From Timeは、クーポンが授受された日を示す情報である。Lat Ronは、クーポンが授受された位置(緯度、経度)を示す情報である。クーポンIDは、クーポンを一意に識別するための情報である。
図4の例の場合、第1のデータベース格納エリアには、「ユーザA」が、「2011/12/10(2011年12月10日)」にクーポンを受け取り、「2011/12/11(2011年12月11日)」に「ユーザB」に「35.1236,136.3624」の場所でクーポンを手渡し、その経過日は「1日」であることが記憶されている。
図5は、クーポン配布と保有予定データベース22の例を示す図である。
図5に示すように、クーポン配布と保有予定データベース22は、少なくとも、クーポン配布(保持)者チェック欄、クーポン保有予定者チェック欄、クーポンIDを、ユーザ毎に記憶する。クーポン配布(保持)者チェック欄は、後述する処理によってクーポン配布者として抽出された場合にチェックを入れるためのエリアである。クーポン保有予定チェック欄は、後述する処理によってクーポン配布者が手渡せる可能性のある人と判断された場合にチェックを入れるためのエリアである。クーポンIDは、クーポンを一意に識別するための情報である。
(携帯端末の構成)
図6は、携帯端末3のハードウェアの構成例を示す図である。尚、図6の構成は、あくまで一例であり、用途、目的に応じて様々な構成を採ることが可能である。
携帯端末3は、制御部31、記憶部32、通信制御部33、入力部34、表示部35、近距離無線通信部36などが、バス37を介して接続される。
制御部31は、CPU、ROM、RAM等で構成される。制御部31は、記憶部32に記憶されたプログラムに基づいて所定の処理を行い、通話機能、ブラウザ機能、およびメール機能などを実現する。
記憶部32は、制御部31が実行するプログラム、プログラム実行に必要なデータ、OS等を格納するとともに、近距離無線通信部36経由で提供されたデータ等を記憶する。
通信制御部33は、通信制御装置、通信ポート等を有し、携帯端末3とネットワーク4間の通信を媒介する通信インターフェースであり、ネットワーク4を介して、他のコンピュータ又は他の携帯端末との音声通信やデータ通信の制御を行う。
入力部34は、ボタンやタッチパネルなどで構成され、操作指示、動作指示、データ入力等を行う。表示部35は、液晶パネル等のディスプレイ装置であり、制御部31から供給される情報を表示する。入力部34および表示部35は、タッチパネルディスプレイのように、一体となっていても良い。
近距離無線通信部36は、図示しないアンテナを用いて、NFC方式の近距離無線通信を行う。
(クーポン配布者決定処理)
図7は、本発明の第1の実施の形態に係るクーポン配布者決定処理を説明するフローチャートである。この処理を開始するにあたり、携帯端末3−1乃至3−Nでは、既にクーポンの授受が行われており、その授受に関する情報がクーポン利用履歴として記憶部12のクーポン利用履歴データベース21に記憶されているものとする。
ステップS1において、クーポン管理サーバ2の制御部11は、クーポンの管理者によって指定(入力)されたクーポン配信期限を取得する。以下、配信期限は「7日以内」であるとして、その詳細を説明する。ステップS2において、クーポン管理サーバ2の制御部11は、記憶部12のクーポン利用履歴データベース21(図4)、およびクーポン配布と保有予定データベース22(図5)に記憶されている情報を読み込む。
ステップS3において、クーポン管理サーバ2の制御部11は、ステップS2の処理で読み込んだクーポン配布と保有予定データベース22に記憶されている情報を参照し、クーポン未配布と未保有予定の人がいるか否か、つまり、クーポン配布者とその配布者から渡される可能性のある人をまだ決定していないか否かを判定し、クーポン未配布と未保有予定の人がいると判定した場合、ステップS4に進む。
ステップS4において、クーポン管理サーバ2の制御部11は、クーポン未配布者と未保有予定者を抽出する。図5の例では、「ユーザA」〜「ユーザQ」が抽出される。ステップS5において、クーポン管理サーバ2の制御部11は、読み込んだクーポン利用履歴データベース21に記憶されている情報と、ステップS4の処理で抽出したクーポン未配布者と未保有予定者に基づいて、例えば、図8に示すような、人から人へのクーポンの配布経過時間(日付)が示されたマップを作成する。
図8の例では、「ユーザA」が「ユーザB」へクーポンを渡すまでの経過日は、「1日」であり、「ユーザA」から「ユーザC」へクーポンを渡すまでの経過日は、「7日」である。同様に、他のユーザの配布経過日についても図示する通りである。また、「ユーザA」〜「ユーザK」は、1つの配布ネットワーク(同一配布元)であり、「ユーザL」〜「ユーザQ」も、「ユーザA」〜「ユーザK」とは異なる1つの配布ネットワークである。
図7の説明に戻る。ステップS6において、クーポン管理サーバ2の制御部11は、ステップS5の処理で作成したマップから、各人(基点)が配信期限内に配布できる対象者、その人数、および各人のクーポンが行き渡る最長日数をそれぞれ計算する。例えば、図9に示すように、各人毎に7日以内に配布できる対象者、その人数、および最長日数が計算される。
図9の例では、「ユーザA」が7日以内に配布できる対象者は、「ユーザB」、「ユーザC」、「ユーザD」、「ユーザE」の「4人」であり、「ユーザA」のクーポンが行き渡る最長日数が「7日」であり、「ユーザB」が7日以内に配布できる対象者は、「ユーザA」、「ユーザC」、「ユーザD」、「ユーザE」、「ユーザG」の「5人」であり、「ユーザB」のクーポンが行き渡る最長日数が「7日」である。同様に、「ユーザC」〜「ユーザQ」が7日以内に配布できる対象者、その人数、およびクーポンが行き渡る最長日数は、それぞれ図示する通りである。
図7の説明に戻る。ステップS7において、クーポン管理サーバ2の制御部11は、ステップS6の処理による計算結果から、配信期限内に配布できる対象者の人数が全部0人であるか否かを判定し、配信期限内に配布できる対象者が全部0人ではないと判定した場合、ステップS8に進む。
ステップS8において、クーポン管理サーバ2の制御部11は、ステップS6の処理による計算結果から、配信期限内に配布できる対象者が一番多い人(配布者)を抽出する。例えば、図9の例では、7日以内に配布できる対象者が「6人」と最も多い、「ユーザE」が抽出される。
ステップS9において、クーポン管理サーバ2の制御部11は、ステップS8の処理で抽出した対象者が一番多い人(配布者)が複数いるか否かを判定し、複数いると判定した場合、ステップS10に進み、複数いないと判定した場合、ステップS13に進む。いまの例では、対象者が一番多い人が「ユーザE」のみであるため、ステップS13に進む。
ステップS13において、クーポン管理サーバ2の制御部11は、ステップS8の処理で抽出した配布者、および、その配布者が配信期限内に配布できる可能性のある人(保有予定者)をクーポン配布と保有予定データベース22に書き込む。例えば、図10に示すように、クーポン配布者として「ユーザE」にチェックが入れられ、クーポン保有予定者として「ユーザA」〜「ユーザD」、「ユーザF」、「ユーザH」にチェックが入れられる。
ステップS13の処理の後、ステップS3に戻り、上述した処理が繰り返される。つまり、ステップS3において、クーポン管理サーバ2の制御部11は、図10に示すように、まだクーポン未配布と未保有予定の人がいると判定するため、ステップS4に進む。
ステップS4において、クーポン管理サーバ2の制御部11は、クーポン未配布者と未保有予定者を抽出する。図10の例では、「ユーザG」、「ユーザI」〜「ユーザQ」が抽出される。ステップS5において、クーポン管理サーバ2の制御部11は、ステップS4の処理で抽出したクーポン未配布者と未保有予定者に基づいて、例えば、図11に示すような、人から人へのクーポンの配布経過時間(日付)が示されたマップを作成する。図11の例では、図8に示したマップから、クーポン配布者の「ユーザE」、およびクーポン保有予定者の「ユーザA」〜「ユーザD」、「ユーザF」、「ユーザH」が除外されている。
図7の説明に戻る。ステップS6において、クーポン管理サーバ2の制御部11は、ステップS5の処理で作成したマップから、各人(基点)が配信期限内に配布できる対象者、その人数、および最長日数をそれぞれ計算する。例えば、図12に示すように、各人毎に7日以内に配布できる対象者、その人数、および最長日数が計算される。
図12の例では、「ユーザG」が7日以内に配布できる対象者は、「ユーザJ」、「ユーザK」の「2人」であり、「ユーザG」のクーポンが行き渡る最長日数が「7日」であり、「ユーザI」が7日以内に配布できる対象者は、「0人」である。同様に、「ユーザJ」〜「ユーザQ」が7日以内に配布できる対象者、その人数、およびクーポンが行き渡る最長日数は、それぞれ図示する通りである。
図7の説明に戻る。ステップS7において、クーポン管理サーバ2の制御部11は、ステップS6の処理による計算結果から、配信期限内に配布できる対象者が0人ではないと判定するため、ステップS8に進み、配信期限内に配布できる対象者が一番多い人(配布者)を抽出する。例えば、図12においては、7日以内に配布できる対象者が「3人」と多い、「ユーザL」、「ユーザM」、「ユーザO」が抽出される。
ステップS9において、クーポン管理サーバ2の制御部11は、ステップS8の処理で抽出した対象者が一番多い人(配布者)が複数いると判定するため、ステップS10に進み、対象者が一番多い人の中で配布予定最長日数が最も短い人を選出する。
ユーザLの配布予定最長日数=4日+2日+1日=7日
ユーザMの配布予定最長日数=4日
ユーザOの配布予定最長日数=2日+4日=6日
つまり、最長日数が最も短い人として「ユーザM」が選出される。
ステップS11において、クーポン管理サーバ2の制御部11は、ステップS10の処理で選出した配布予定最長日数が最も短い人が複数いるか否かを判定し、複数いると判定した場合、ステップS12に進み、複数いないと判定した場合、ステップS13に進む。いまの例では、配布予定最長日数が最も短い人が「ユーザM」のみであるため、ステップS13に進む。
ステップS13において、クーポン管理サーバ2の制御部11は、ステップS10の処理で抽出(選出)した配布者および保有予定者をクーポン配布と保有予定データベース22に書き込む。例えば、図13に示すように、クーポン配布者として「ユーザM」に新たにチェックが入れられ、クーポン保有予定者として「ユーザL」、「ユーザO」、「ユーザQ」に新たにチェックが入れられる。
ステップS13の処理の後、ステップS3に戻り、上述した処理が繰り返される。つまり、ステップS3において、クーポン管理サーバ2の制御部11は、図13に示すように、まだクーポン未配布と未保有予定の人がいると判定するため、ステップS4に進む。
ステップS4において、クーポン管理サーバ2の制御部11は、クーポン未配布者と未保有予定者を抽出する。図13の例では、「ユーザG」、「ユーザI」〜「ユーザK」、「ユーザN」、「ユーザP」が抽出される。ステップS5において、クーポン管理サーバ2の制御部11は、ステップS4の処理で抽出したクーポン未配布者と未保有予定者に基づいて、例えば、図14に示すような、人から人へのクーポンの配布経過時間(日付)が示されたマップを作成する。図14の例では、図11に示したマップから、クーポン配布者の「ユーザM」、およびクーポン保有予定者の「ユーザL」、「ユーザO」、「ユーザQ」が新たに除外されている。
図7の説明に戻る。ステップS6において、クーポン管理サーバ2の制御部11は、ステップS5の処理で作成したマップから、各人(基点)が配信期限内に配布できる対象者、その人数、および最長日数をそれぞれ計算する。例えば、図15に示すように、各人毎に7日以内に配布できる対象者、その人数、および最長日数が計算される。
図15の例では、「ユーザG」が7日以内に配布できる対象者は、「ユーザJ」、「ユーザK」の「2人」であり、「ユーザG」のクーポンが行き渡る最長日数が「6日」であり、「ユーザI」が7日以内に配布できる対象者は、「0人」である。同様に、「ユーザJ」、「ユーザK」、「ユーザN」、「ユーザP」が7日以内に配布できる対象者、その人数、およびクーポンが行き渡る最長日数は、それぞれ図示する通りである。
図7の説明に戻る。ステップS7において、クーポン管理サーバ2の制御部11は、ステップS6の処理による計算結果から、配信期限内に配布できる対象者が0人ではないと判定するため、ステップS8に進み、配信期限内に配布できる対象者が一番多い人(配布者)を抽出する。例えば、図15においては、7日以内に配布できる対象者が「2人」と多い、「ユーザG」、「ユーザJ」、「ユーザK」が抽出される。
ステップS9において、クーポン管理サーバ2の制御部11は、ステップS8の処理で抽出した対象者が一番多い人(配布者)が複数いると判定するため、ステップS10に進み、対象者が一番多い人の中で配布予定最長日数が最も短い人を選出する。
ユーザGの配布予定最長日数=1日+5日=6日
ユーザJの配布予定最長日数=5日
ユーザKの配布予定最長日数=5日+1日=6日
つまり、最長日数が最も短い人として「ユーザJ」が選出される。
ステップS11において、クーポン管理サーバ2の制御部11は、ステップS10の処理で選出した配布予定最長日数が最も短い人が複数いないと判定するため、ステップS13に進む。
ステップS13において、クーポン管理サーバ2の制御部11は、ステップS10の処理で抽出(選出)した配布者および保有予定者をクーポン配布と保有予定データベース22に書き込む。例えば、図16に示すように、クーポン配布者として「ユーザJ」に新たにチェックが入れられ、クーポン保有予定者として「ユーザG」、「ユーザK」に新たにチェックが入れられる。
ステップS13の処理の後、ステップS3に戻り、上述した処理が繰り返される。つまり、ステップS3において、クーポン管理サーバ2の制御部11は、図16に示すように、まだクーポン未配布と未保有予定の人がいると判定するため、ステップS4に進む。
ステップS4において、クーポン管理サーバ2の制御部11は、クーポン未配布者と未保有予定者を抽出する。図16の例では、「ユーザI」、「ユーザN」、「ユーザP」が抽出される。ステップS5において、クーポン管理サーバ2の制御部11は、ステップS4の処理で抽出したクーポン未配布者と未保有予定者に基づいて、例えば、図17に示すような、人から人へのクーポンの配布経過時間(日付)が示されたマップを作成する。図17の例では、図14に示したマップから、クーポン配布者の「ユーザJ」、およびクーポン保有予定者の「ユーザG」、「ユーザK」が新たに除外されている。
図7の説明に戻る。ステップS6において、クーポン管理サーバ2の制御部11は、ステップS5の処理で作成したマップから、各人(基点)が配信期限内に配布できる対象者、その人数、および最長日数をそれぞれ計算する。例えば、図18に示すように、各人毎に7日以内に配布できる対象者、その人数、および最長日数が計算される。図18の例では、「ユーザI」、「ユーザN」、「ユーザP」が、7日以内に配布できる対象者は、いずれも「0人」である。
図7の説明に戻る。ステップS7において、クーポン管理サーバ2の制御部11は、ステップS6の処理による計算結果から、配信期限内に配布できる対象者が0人であると判定するため、ステップS14に進む。ステップS14において、クーポン管理サーバ2の制御部11は、配信期限内に配布できる対象者が0人であると判定された各人を配布者として、クーポン配布と保有予定データベース22に書き込む。例えば、図19に示すように、クーポン配布者として「ユーザI」、「ユーザN」、「ユーザP」に新たにチェックが入れられる。
ステップS13の処理の後、ステップS3に戻り、上述した処理が繰り返される。つまり、ステップS3において、クーポン管理サーバ2の制御部11は、クーポン未配布と未保有予定の人がいないと判定するため、ステップS15に進む。
ステップS15において、クーポン管理サーバ2の制御部11は、クーポン配布と保有予定データベース22に書き込まれた情報に基づいて、配布者にクーポンを配布(配信)する。図19の例では、「ユーザE」、「ユーザI」、「ユーザJ」、「ユーザM」、「ユーザN」、「ユーザP」にクーポンが配布されることになる。
なお、ステップS11において、クーポン管理サーバ2の制御部11は、配布予定最長日数が最も短い人が複数いると判定した場合には、ステップS12に進み、隣り合う対象へ配布した最も短い日数を保有する基点を選出する。なお、隣り合う対象へ配布した最も短い平均日数を保有する基点を選出するようにしてもよい。
[本発明の第1の実施の形態における効果]
以上の処理により、所定期限内(上述した例では7日以内)に手渡しで会員全員へクーポンが行き届くことを期待することができる。事業者は、クーポン配布者にクーポンを配布してから、所定時間後(数日後)に、クーポン利用履歴データベース21を参照することで、実際のクーポンの広がり状況を確認し、クーポン再配布のための再計算を行うようにしても良い。その場合、配信期限後(7日後)に再計算を行うことで、未だクーポンを保有していない人全員がクーポン配布者になるため、結果的に全員に配信することが可能となる。つまり、限られた時間内に、効率的に、全員にクーポン(例えば、サマーセールのお知らせ)の配布が期待できるシステムを実現することができる。
[本発明の第2の実施の形態]
次に、本発明の第2の実施の形態について説明する。
図20は、本発明の第2の実施の形態に係るクーポン配布者決定処理を説明するフローチャートである。第2の実施の形態では、配布者にクーポンを配布した後に、配布者の再計算を自動的に行うことを目的とするものである。
ステップS21において、クーポン管理サーバ2の制御部11は、図7を用いて上述した第1の実施の形態におけるクーポン配布者決定処理を行う。これにより、図21に示すような、各人が配信期限内に配布できる対象者、その人数、および各人のクーポンが行き渡る最長日数が計算される。ステップS22において、クーポン管理サーバ2の制御部11は、今日の日付とクーポンが行き渡る最長日数(図21)を比較し、配信期限を再設定する。例えば、クーポンが配布されてから1日目である場合には、配信期限=7日(最長日数)−1日(クーポン配布経過日)=6日とされる。
ステップS23において、クーポン管理サーバ2の制御部11は、実際にクーポンが配布された人(図19の例では、ユーザE、ユーザI、ユーザJ、ユーザM、ユーザN、ユーザP)の中で、その人が配布できる対象者が最も多い人を抽出する。つまり、図21においては、7日以内に配布できる対象者が「6人」と最も多い、「ユーザE」が抽出される。
ステップS24において、クーポン管理サーバ2の制御部11は、ステップS23の処理で抽出した配布者が配布できる可能性のある人(配布対象者)に最長日数を割り当て、クーポン配布と保有予定データベース22に書き込む。例えば、図22に示すように、「ユーザE」の配布対象者である、「ユーザA」〜「ユーザD」、「ユーザF」、「ユーザH」の最長日数に、「6」が書き込まれる。
ステップS25において、クーポン管理サーバ2の制御部11は、配布対象者の最長日数を全て計算済であるか否かを判定し、まだ全ての計算を終えていないと判定した場合、ステップS26に進む。ステップS26において、クーポン管理サーバ2の制御部11は、ステップS23の処理で抽出した配布者と、配布対象者を除く。図21の例では、配布者である「ユーザE」、および、「ユーザE」の配布対象者である「ユーザA」〜「ユーザD」、「ユーザF」、「ユーザH」が除外される。
ステップS26の処理の後、ステップS23に戻り、クーポン管理サーバ2の制御部11は、再び、実際にクーポンが配布された人(いまの例では、ユーザI、ユーザJ、ユーザM、ユーザN、ユーザP)の中で、その人が配布できる対象者が最も多い人を抽出する。「ユーザI」の配布対象者は、1回目の計算で「ユーザC」、「ユーザF」が配布予定となったため、「0人」になる。同様に、「ユーザJ」の配布対象者は、1回目の計算で「ユーザD」、「ユーザH」が配布予定となったため、「ユーザG」、「ユーザK」の「2人」となり、「ユーザM」の配布対象者は、「ユーザL」、「ユーザO」、「ユーザQ」の「3人」となり、「ユーザN」の配布対象者は、「0人」となり、「ユーザP」の配布対象者は、「0人」となる。その結果、配布対象者の人数が最も多い、「ユーザM」が抽出される。
ステップS24において、クーポン管理サーバ2の制御部11は、ステップS23の処理で抽出した配布者対象者に最長日数を割り当て、クーポン配布と保有予定データベース22に書き込む。例えば、図22に示すように、「ユーザM」の配布対象者である、「ユーザL」、「ユーザO」、「ユーザQ」の最長日数に、「4」が新たに書き込まれる。
以上の処理を繰り返すことにより、各クーポン配布対象者(保有予定者)の最長日数が順次計算される。そして、ステップS25において、クーポン管理サーバ2の制御部11は、クーポン配布対象者の最長日数を全て計算済であると判定した場合、ステップS27に進み、クーポン配布と保有予定データベース22に書き込まれた最長日数が、配信期限より多い日があるか否かを判定し、最長日数が配信期限より多い日があると判定した場合、ステップS21に戻り、第1の実施の形態で説明した配布者決定処理を行う。
図22の例では、いずれのユーザの最長日数も、ステップS22の処理で再設定した配信期限である「6日」より少ない日となっているため、まだ第1の実施の形態で説明した配布者決定処理は再度行われない。
ステップS27において、クーポン配布と保有予定データベース22に書き込まれた最長日数が、配信期限より多い日がないと判定した場合には、処理を終了する。
引き続き、図20に示したフローチャートを参照し、クーポンが配布されてから2日目が経過した場合の処理について説明する。なお、クーポンが配布されてから2日目が経過しても、クーポン配布と保有予定データベース22に書き込まれた内容が、クーポン配布経過1日目と変わらず、図22に示した内容であるものとする。また、クーポンが配布されてから2日目が経過しているため、配信期限=7日(最長日数)−2日(クーポン配布経過日)=5日とされる。
いまの場合、ステップS27において、クーポン管理サーバ2の制御部11は、クーポン配布と保有予定データベース22に書き込まれた最長日数が、配信期限より多い日があると判定するため、ステップS21に戻り、第1の実施の形態で説明した配布者決定処理を行う。
つまり、図22の例では、「ユーザA」〜「ユーザD」、「ユーザF」〜「ユーザH」、「ユーザK」の最長日数が「6日」となり、ステップS22の処理で再設定した配信期限である「5日」より多い日となっており、クーポン配布から2日経過した残り5日で「ユーザA」〜「ユーザD」、「ユーザF」〜「ユーザH」、「ユーザK」にクーポンが配布される可能性が低くなる。このような場合には、第1の実施の形態で説明した配布者決定処理が再度行われ、新たに配布する人が決定される。
再び、図7のフローチャートを参照する。ステップS1において、クーポン管理サーバ2の制御部11は、クーポン配信期限を取得する。いまの場合、クーポン配布から2日経過しているため、配信期限は、「5日以内」となる。ステップS2において、クーポン管理サーバ2の制御部11は、記憶部12のクーポン利用履歴データベース21(図4)、およびクーポン配布と保有予定データベース22(図22)に記憶されている情報を読み込む。
ステップS3において、クーポン管理サーバ2の制御部11は、ステップS2の処理で読み込んだクーポン配布と保有予定データベース22に記憶されている情報を参照し、クーポン未配布と未保有予定の人がいると判定するため、ステップS4に進む。
ステップS4において、クーポン管理サーバ2の制御部11は、クーポン未配布者と未保有予定者を抽出する。図22の例では、「ユーザA」〜「ユーザD」、「ユーザF」〜「ユーザH」、「ユーザK」、「ユーザL」、「ユーザO」、「ユーザQ」が抽出される。ステップS5において、クーポン管理サーバ2の制御部11は、ステップS4の処理で抽出したクーポン未配布者と未保有予定者に基づいて、例えば、図23に示すような、人から人へのクーポンの配布経過時間(日付)が示されたマップを作成する。図23の例では、図8に示したマップから、実際にクーポンが配布された、「ユーザE」、「ユーザI」、「ユーザJ」、「ユーザM」、「ユーザN」、「ユーザP」が除外されている。
図7の説明に戻る。ステップS6において、クーポン管理サーバ2の制御部11は、ステップS5の処理で作成したマップから、各人(基点)が配信期限内に配布できる対象者、その人数、および最長日数をそれぞれ計算する。例えば、図24に示すように、各人毎に5日以内に配布できる対象者、その人数、および最長日数が計算される。
図24の例では、「ユーザA」が5日以内に配布できる対象者は、「ユーザB」、「ユーザD」の「2人」であり、「ユーザA」のクーポンが行き渡る最長日数が「3日」であり、「ユーザB」が6日以内に配布できる対象者は、「ユーザA」、「ユーザD」の「2人」であり、「ユーザB」のクーポンが行き渡る最長日数が「2日」である。同様に、「ユーザC」、「ユーザD」、「ユーザF」、「ユーザG」、「ユーザH」、「ユーザK」、「ユーザL」、「ユーザO」、「ユーザQ」が5日以内に配布できる対象者、その人数、およびクーポンが行き渡る最長日数は、それぞれ図示する通りである。
図7の説明に戻る。ステップS7において、クーポン管理サーバ2の制御部11は、ステップS6の処理による計算結果から、配信期限内に配布できる対象者が0人ではないと判定するため、ステップS8に進み、配信期限内に配布できる対象者が一番多い人(配布者)を抽出する。例えば、図24においては、5日以内に配布できる対象者が「3人」と最も多い、「ユーザD」が抽出される。
ステップS9において、クーポン管理サーバ2の制御部11は、ステップS8の処理で抽出した対象者が一番多い人(配布者)が複数いないと判定するため、ステップS13に進み、ステップS8の処理で抽出した配布者および保有予定者をクーポン配布と保有予定データベース22に書き込む。例えば、図25に示すように、クーポン配布者として「ユーザD」にチェックが入れられ、クーポン保有予定者として「ユーザA」、「ユーザB」、「ユーザG」にチェックが入れられる。
ステップS13の処理の後、ステップS3に戻り、上述した処理が繰り返される。つまり、ステップS3において、クーポン管理サーバ2の制御部11は、まだクーポン未配布と未保有予定の人がいると判定するため、ステップS4に進む。ステップS4において、クーポン管理サーバ2の制御部11は、クーポン未配布者と未保有予定者を抽出する。図25の例では、「ユーザC」、「ユーザF」、「ユーザH」、「ユーザK」、「ユーザL」、「ユーザO」、「ユーザQ」が抽出される。
ステップS5において、クーポン管理サーバ2の制御部11は、ステップS4の処理で抽出したクーポン未配布者と未保有予定者に基づいて、例えば、図26に示すような、人から人へのクーポンの配布経過時間(日付)が示されたマップを作成する。図26の例では、図23に示したマップから、クーポン配布者の「ユーザD」、およびクーポン保有予定者の「ユーザA」、「ユーザB」、「ユーザG」が新たに除外されている。
図7の説明に戻る。ステップS6において、クーポン管理サーバ2の制御部11は、ステップS5の処理で作成したマップから、各人(基点)が配信期限内に配布できる対象者、その人数、および最長日数をそれぞれ計算する。例えば、図27に示すように、各人毎に5日以内に配布できる対象者、その人数、および最長日数が計算される。図27の例では、「ユーザC」が5日以内に配布できる対象者は、「ユーザF」の「1人」であり、「ユーザC」のクーポンが行き渡る最長日数が「2日」であり、「ユーザF」が5日以内に配布できる対象者は、「ユーザC」の「1人」であり、「ユーザF」のクーポンが行き渡る最長日数が「2日」である。同様に、「ユーザH」、「ユーザK」、「ユーザL」、「ユーザO」、「ユーザQ」が5日以内に配布できる対象者、その人数、およびクーポンが行き渡る最長日数は、それぞれ図示する通りである。
図7の説明に戻る。ステップS7において、クーポン管理サーバ2の制御部11は、ステップS6の処理による計算結果から、配信期限内に配布できる対象者が0人ではないと判定するため、ステップS8に進み、配信期限内に配布できる対象者が一番多い人(配布者)を抽出する。例えば、図27においては、5日以内に配布できる対象者が「1人」と多い、「ユーザC」、「ユーザF」、「ユーザO」、「ユーザQ」が抽出される。
ステップS9において、クーポン管理サーバ2の制御部11は、ステップS8の処理で抽出した対象者が一番多い人(配布者)が複数いると判定するため、ステップS10に進み、対象者が一番多い人(複数人)の中で配布予定最長日数が最も短い人を選出する。
ユーザCの配布予定最長日数=2日
ユーザFの配布予定最長日数=2日
ユーザOの配布予定最長日数=1日
ユーザQの配布予定最長日数=1日
つまり、最長日数が最も短い人として「ユーザO」、「ユーザQ」が選出される。
ステップS11において、クーポン管理サーバ2の制御部11は、ステップS10の処理で選出した配布予定最長日数が最も短い人が複数いると判定するため、ステップS12に進み、隣り合う対象へ配布した最も短い日数を保有する基点を選出する。これにより、「ユーザO」が選出される。
ステップS13において、クーポン管理サーバ2の制御部11は、ステップS12の処理で抽出した配布者および保有予定者をクーポン配布と保有予定データベース22に書き込む。例えば、図28に示すように、クーポン配布者として「ユーザO」に新たにチェックが入れられ、クーポン保有予定者として「ユーザQ」に新たにチェックが入れられる。
ステップS13の処理の後、ステップS3に戻り、上述した処理が繰り返される。つまり、ステップS3において、クーポン管理サーバ2の制御部11は、まだクーポン未配布と未保有予定の人がいると判定するため、ステップS4に進む。ステップS4において、クーポン管理サーバ2の制御部11は、クーポン未配布者と未保有予定者を抽出する。図28の例では、「ユーザC」、「ユーザF」、「ユーザH」、「ユーザK」、「ユーザL」が抽出される。
ステップS5において、クーポン管理サーバ2の制御部11は、ステップS4の処理で抽出したクーポン未配布者と未保有予定者に基づいて、人から人へのクーポンの配布経過時間(日付)が示されたマップ(図26に示したマップから「ユーザO」、「ユーザQ」が新たに除外されたマップ)を作成し、ステップS6において、ステップS5の処理で作成したマップから、各人(基点)が配信期限内に配布できる対象者、その人数、および最長日数をそれぞれ計算する。これにより、「ユーザC」が5日以内に配布できる対象者は、「ユーザF」の「1人」であり、「ユーザF」が5日以内に配布できる対象者は、「ユーザC」の「1人」であり、「ユーザH」、「ユーザK」、「ユーザL」が5日以内に配布できる対象者は、それぞれ「0人」であると計算される。
ステップS7において、クーポン管理サーバ2の制御部11は、ステップS6の処理による計算結果から、配信期限内に配布できる対象者が0人ではないと判定するため、ステップS8に進み、配信期限内に配布できる対象者が一番多い人(配布者)を抽出する。これにより、5日以内に配布できる対象者が「1人」と多い、「ユーザC」、「ユーザF」が抽出される。
ステップS9において、クーポン管理サーバ2の制御部11は、ステップS8の処理で抽出した対象者が一番多い人(配布者)が複数いると判定するため、ステップS10に進み、対象者が一番多い人(複数人)の中で配布予定最長日数が最も短い人を選出する。
ユーザCの配布予定最長日数=2日
ユーザFの配布予定最長日数=2日
つまり、「ユーザC」、「ユーザF」の最長日数は同じである。
ステップS11において、クーポン管理サーバ2の制御部11は、ステップS10の処理で選出した配布予定最長日数が最も短い人が複数いると判定するため、ステップS12に進み、隣り合う対象へ配布した最も短い日数を保有する基点を選出する。これにより、「ユーザC」が選出される。
ステップS13において、クーポン管理サーバ2の制御部11は、ステップS12の処理で抽出した配布者および保有予定者をクーポン配布と保有予定データベース22に書き込む。これにより、クーポン配布者として「ユーザC」に新たにチェックが入れられ、クーポン保有予定者として「ユーザF」に新たにチェックが入れられる。
ステップS13の処理の後、ステップS3に戻り、上述した処理が繰り返される。そして、クーポン管理サーバ2の制御部11は、ステップS7において、配信期限内に配布できる対象者が0人であると判定した場合には、ステップS14に進み、各人を配布者としてデータベースに書き込んだ後、ステップS15に進む。また、クーポン管理サーバ2の制御部11は、ステップS3において、クーポン未配布と未保有予定の人がいないと判定した場合には、ステップS15に進む。
ステップS15において、クーポン管理サーバ2の制御部11は、クーポン配布と保有予定データベース22に記憶された情報に基づいて、配布者に再びクーポンを配布(配信)する。いまの場合、上述した処理を行うことで、「ユーザC」、「ユーザD」、「ユーザH」、「ユーザK」、「ユーザL」、「ユーザO」に再びクーポンが配布されることになる。
同様に、クーポン配布経過3日後についても、上述したように、再配布者を決定するか否かを判定し、再配布者を決定する必要があると判定した場合には、第1の実施の形態の配布者決定処理を再び行うことで、再配布者を決定することができる。
[本発明の第2の実施の形態における効果]
以上の処理により、クーポン配布後に、再配布者を決定する必要があるか否かを順次計算することにより、所定期限内に手渡しで会員全員へクーポンが行き届くことを期待することができる。
[変形例]
1.クーポン利用履歴データベース21を参照することにより、生活者のクーポン手渡し位置や時間、人と人とのつながりが分かるため、生活者の主な行動時間帯、よく訪れる場所、交友関係をマーケティングデータとして活用するようにしても良い。
2.クーポンの授受を行う人は、少なくとも、そのクーポンに興味のある人であるため、クーポンのジャンルから嗜好を読み取ることで、より興味を持つことができるようなクーポンを作成し、次のクーポン配布に役立てることができる。
3.以上においては、クーポンの授受を例に挙げ説明したが、これに限らず、例えば、音楽データ、画像データ、ゲームデータ、電子書籍等のコンテンツ、あるいは、有効期限を伴うセールス情報、チケット情報、懸賞などの応募券等に適用することも勿論可能である。
以上、添付図面を参照しながら、本発明に係るクーポン配信装置等の好適な実施形態について説明したが、本発明はかかる例に限定されない。当業者であれば、本願で開示した技術的思想の範疇内において、各種の変更例又は修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。