(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-01-04
(45)【発行日】2023-01-13
(54)【発明の名称】情報処理装置およびプログラム
(51)【国際特許分類】
G06Q 30/0201 20230101AFI20230105BHJP
【FI】
G06Q30/02 300
(21)【出願番号】P 2019217535
(22)【出願日】2019-11-29
【審査請求日】2022-02-18
(73)【特許権者】
【識別番号】000130581
【氏名又は名称】サトーホールディングス株式会社
(74)【代理人】
【識別番号】110000165
【氏名又は名称】グローバル・アイピー東京特許業務法人
(72)【発明者】
【氏名】立浪 秀喜
【審査官】成瀬 博之
(56)【参考文献】
【文献】特開2019-109751(JP,A)
【文献】特開2016-177583(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 30/02
(57)【特許請求の範囲】
【請求項1】
購入者の動線情報と商品の販売情報とを対応付ける情報処理装置であって、
商品の種別ごとに、商品が配置されるエリア内の領域が設定され、
前記情報処理装置は、
購入者と共に前記エリア内を移動する通信デバイスごとに、時刻の経過に応じた前記通信デバイスの前記エリア内の位置を示す位置情報を含む購入者の動線情報を取得する第1取得部と、
商品の販売時刻と、前記販売時刻に販売された商品の種別とを含む商品の販売情報を取得する第2取得部と、
前記第1取得部により取得された購入者の動線情報と、前記エリア内に配置された商品の種別情報とに基づき、前記購入者の動線情報に対応付けられる商品の種別を特定する商品種別特定部と、
前記第2取得部により取得された商品の販売情報に含まれる商品の種別と、前記商品種別特定部により特定された商品の種別とに基づき、前記購入者の動線情報と前記商品の販売情報との関連度合を取得する第3取得部と、
前記第3取得部により取得された関連度合に基づき、前記購入者の動線情報と前記商品の販売情報とを対応付ける対応付け部とを有する、
情報処理装置。
【請求項2】
前記第2取得部は、
前記購入者の動線情報から特定された前記エリア内の商品精算領域への進入時刻に基づき、前記進入時刻を含む所定範囲に前記販売時刻が含まれる前記商品の販売情報を取得する、
請求項1に記載された情報処理装置。
【請求項3】
前記第2取得部は、
前記購入者の動線情報から特定された前記エリア内の商品精算領域における精算機情報に基づき、前記精算機情報が含まれる前記商品の販売情報を取得する、
請求項2に記載された情報処理装置。
【請求項4】
前記エリア内に格子状に配置される仮想ポイントを定義し、各仮想ポイントが、前記購入者の動線情報に含まれる前記位置情報によって示される位置を中心に設定した所定の範囲内に継続して含まれる時間を計測する計測部と、
前記計測部により計測された各仮想ポイントの計測時間を、前記商品の種別ごとに設定された前記エリア内の領域ごとに集計する集計部と、を更に備え、
前記第3取得部は、
前記商品の販売情報に含まれる商品の種別ごとに集計された計測時間に基づいて、前記関連度合を調整する、
請求項1から3のいずれか一項に記載された情報処理装置。
【請求項5】
前記購入者の動線情報に基づき、前記商品の種別ごとに設定された前記エリア内の各領域に対する進入及び退出の繰返し回数を算出する回数算出部を更に備え、
前記第3取得部は、
前記回数算出部により算出された繰返し回数に基づいて、前記関連度合を調整する、
請求項1から4のいずれか一項に記載された情報処理装置。
【請求項6】
前記第3取得部は、
前記購入者の動線情報に基づいて特定される前記購入者が通過した前記エリア内の領域が、前記第2取得部により取得された商品の販売情報に含まれる商品の種別に対して設定されている前記エリア内の領域を含まない場合、前記関連度合を低くなるように調整する、
請求項1から5のいずれか一項に記載された情報処理装置。
【請求項7】
商品の種別ごとに、商品が配置される前記エリア内の領域の変更の可能性がない第1設定、又は、商品が配置される前記エリア内の領域の変更の可能性がある第2設定のいずれかが対応付けられ、
前記第3取得部は、
前記購入者の動線情報に基づいて特定される前記購入者が通過した前記エリア内の領域が、前記第2取得部により取得された商品の販売情報に含まれる商品の種別のうち前記第1設定に対応付けられている商品の種別に設定された領域を含まない場合、前記関連度合を低くなるように調整する、
請求項6に記載された情報処理装置。
【請求項8】
前記第3取得部は、
前記第2取得部により取得された商品の販売情報に含まれる商品の種別の数をAとし、前記商品種別特定部により特定された商品の種別のうち、前記第2取得部により取得された商品の販売情報に含まれる商品の種別と一致する種別の数をBとしたときに、BをAで除算して前記関連度合を取得し、
前記対応付け部は、前記関連度合が最も大きい前記商品の販売情報を、前記購入者の動線情報に対応付ける、
請求項1から7のいずれか一項に記載された情報処理装置。
【請求項9】
購入者の動線情報と商品の販売情報とを対応付けるプログラムであって、
エリア内の複数の領域の各々が商品の種別ごとに設定され、
コンピュータに、
購入者と共に前記エリア内を移動する通信デバイスごとに、時刻の経過に応じた前記通信デバイスの前記エリア内の位置を示す位置情報を含む購入者の動線情報を取得する手順と、
商品の販売時刻と、前記販売時刻に販売された商品の種別とを含む商品の販売情報を取得する手順と、
前記動線情報を取得する手順により取得された購入者の動線情報と、前記エリア内に配置された商品の種別情報とに基づき、前記購入者の動線情報に対応付けられる商品の種別を特定する手順と、
前記商品の販売情報を取得する手順により取得された商品の販売情報に含まれる商品の種別と、前記商品の種別を特定する手順により特定された商品の種別とに基づき、前記購入者の動線情報と前記商品の販売情報との関連度合を取得する手順と、
前記関連度合を取得する手順により取得された関連度合に基づき、前記購入者の動線情報と前記商品の販売情報とを対応付ける手順と、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置およびプログラムに関する。
【背景技術】
【0002】
従来から、スーパーマーケット、ショッピングモール等の商業施設において、ユーザの消費動向を把握し、さらに販売を増加させるため、消費者がどのように巡回しているかについての情報を分析することが提案されている。
【0003】
例えば、ショッピングエリア内においてユーザが携行可能であって、商品が収容される可搬コンテナに配設される信号発信器から発信される信号を受信することで、ショッピングフロアにおける顧客ユーザの行動ログ(移動履歴)を集積するようにした、位置情報収集装置が提案されている(例えば、特許文献1)。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、従来、店舗内を消費者がどのように巡回しているかについての情報を収集、分析することは提案されてきたが、店舗で実際に商品を購入した購入者が、店舗内をどのように巡回して特定の商品の購入に至ったかについての分析はなされていなかった。店舗内の購入者の行動と、実際の購入結果とが対応付けられれば、店舗内の購入者の行動がどのような商品の購入に結び付いたのか、あるいは、店舗内の購入者の行動にもかかわらず購入されなかった商品は何かといった分析が可能となる。
そこで、本発明は、店舗内での購入者の行動と、当該購入者による実際の購入結果とを対応付けることを目的とする。
【課題を解決するための手段】
【0006】
本発明のある態様は、購入者の動線情報と商品の販売情報とを対応付ける情報処理装置であって、エリア内の複数の領域の各々が商品の種別ごとに設定され、前記情報処理装置は、購入者と共に前記エリア内を移動する通信デバイスごとに、時刻の経過に応じた前記通信デバイスの前記エリア内の位置を示す位置情報を含む購入者の動線情報を取得する第1取得部と、商品の販売時刻と、前記販売時刻に販売された商品の種別とを含む商品の販売情報を取得する第2取得部と、前記第1取得部により取得された購入者の動線情報と、前記エリア内に配置された商品の種別情報とに基づき、前記購入者の動線情報に対応付けられる商品の種別を特定する商品種別特定部と、前記第2取得部により取得された商品の販売情報に含まれる商品の種別と、前記商品種別特定部により特定された商品の種別とに基づき、前記購入者の動線情報と前記商品の販売情報との関連度合を取得する第3取得部と、前記第3取得部により取得された関連度合に基づき、前記購入者の動線情報と前記商品の販売情報とを対応付ける対応付け部とを有する、情報処理装置である。
【発明の効果】
【0007】
本発明のある態様によれば、店舗内での購入者の行動と、当該購入者による実際の購入結果とを対応付けることができる。
【図面の簡単な説明】
【0008】
【
図1】実施形態の購入分析システムを概略的に示す図である。
【
図2】実施形態の購入分析システムが適用される例示的な店舗の平面図である。
【
図3】商品配置テーブルのデータ構成例を示す図である。
【
図4】POSデータベースのデータ構成例を示す図である。
【
図6】
図2の平面図において1つの無線タグの動線を例示する図である。
【
図7】
図2の平面図において仮想ポイントの配置例を示す図である。
【
図8】仮想ポイントの設定例について説明する図である。
【
図9】例示的な店舗において設定される仮想円の例を示す図である。
【
図10】実施形態の購入分析システムの各装置の内部構成を示すブロック図である。
【
図11】サーバによって実行される突合処理のフローチャートである。
【
図13】
図11の購入者データセットのデータ構成例を示す図である。
【
図14】
図2の平面図においてレジゾーンを拡大して示す図である。
【
図15】
図11のPOSレンジデータの作成処理のフローチャートである。
【
図16】POSレンジデータについて説明する図である。
【
図17】
図11のスコアリング前処理データの作成処理のフローチャートである。
【
図18】特定のタグIDの購入者に対して、POSレンジデータの各POSデータとスコアリング前処理データの対応付けを示す図である。
【
図21】
図11のスコアセット作成処理のフローチャートである。
【
図22】スコアセットのデータ構成例を示す図である。
【
図23】突合データセットのデータ構成例を示す図である。
【発明を実施するための形態】
【0009】
以下、本発明の情報処理装置及びプログラムの一実施形態について説明する。また、以下では、情報処理装置を含むシステムの一例として、購入者の動線情報と商品の販売情報とを対応付けて購入者の分析を行う購入分析システムについて説明する。
例えば、スーパーマーケット等、複数の売り場が混在する店舗では、多数の来店者が店舗内を巡回して売り場から商品をピックアップし、レジ(精算機)で精算する。レジでの精算結果(つまり、商品の購入内容を示すPOSデータ)はPOSシステムに蓄積される。他方、購入者の店舗内での動線を示すデータ(動線データ)がPOSシステムとは別のシステムによって取得される。そのため、店舗内の購入者の行動がどのような商品の購入に結び付いたのか、あるいは、店舗内の購入者の行動にもかかわらず購入されなかった商品は何かといった分析を行うためには、各購入者についてPOSデータと動線データとを対応付けることが必要となる。
したがって、以下に示す購入分析システム1は、店舗の購入者による購入内容と、店舗内での当該購入者の行動とを対応付けることを意図して構成されている。
【0010】
購入分析システム1は、購入者の動線データを取得するために、購入者と共に移動する通信デバイスの位置を追跡するように構成される。以下では、購入者と共に移動する通信デバイスが、買い物カートに取り付けられた無線タグである場合について説明するが、通信デバイスの種類についてはその限りではなく、ユーザと共に移動可能な如何なる通信デバイスでもよい。通信デバイスは、例えば、購入者のスマートフォン等の携帯端末、タブレット端末、ウェアラブル端末等であってもよい。また、通信デバイス(無線タグ等)を取り付ける対象は、購入者と共に移動する物であればよく、買い物カートでなくてもよい。また、通信デバイスは、例えば、買い物かごに通信デバイス(無線タグ等)を取り付けるようにしてもよい。通信デバイス(無線タグ等)の位置は、買い物カートや買い物かごに取り付けた場合であっても、買い物カートや買い物かごと共に移動する購入者(又は来店者)の位置と実質的に同じであると考えることができる。
【0011】
(1)購入分析システムの概要
本実施形態の購入分析システム1の概要について、
図1~
図4を参照して説明する。
図1は、本実施形態の購入分析システム1を概略的に示す図である。
図2は、本実施形態の購入分析システム1が適用される例示的な店舗の平面図である。なお、各図では、方向を示す目的でXYZ座標系が定義される。
図3は、商品配置テーブルのデータ構成例を示す図である。
図4は、POSデータベースのデータ構成例を示す図である。
【0012】
図1に示すように、本実施形態の購入分析システム1は、店舗内で各購入者が使用するカートCTに取り付けられた無線タグ2、受信機3、店舗端末4、サーバ5(情報処理装置の一例)、および、POSシステム7を備える。
図1では、カートCTに無線タグ2が取り付けられる場合を示しているが、カートCT上の買い物かご(図示せず)に無線タグ2を取り付けてもよい。
【0013】
上述したように、無線タグ2は、通信デバイスの一例であり、比較的小型の無線通信装置である。
受信機3とサーバ5は、ネットワークNWで接続され、来店者の店舗内での位置を特定する位置特定システムを構成する。ネットワークNWは、例えば、セルラー網や、Wi-Fi網、インターネット、LAN(Local Area Network)、WAN(Wide Area Network)、公衆回路、専用回路、無線基地局等である。受信機3(ロケータ)は、店舗の天井に設置され、店舗内で来店者が使用するカートCTに取り付けられた無線タグ2が放射する電波を受信し、その電波の入射角を測定する。サーバ5は、受信機3が測定した入射角を基に購入者の店舗内の位置(XY座標の位置)を特定する(つまり、無線タグ2を測位する)。
無線タグ2と受信機3の通信プロトコルは問わないが、例えば、Wi-Fi(登録商標)、Bluetooth Low Energy(登録商標)(以下、BLE)等が挙げられる。
【0014】
サーバ5は、来店者の位置(つまり、無線タグ2の位置)を測位して動線データを作成(取得)するとともに、POSシステム7からPOSデータベースを取得する。
サーバ5には、各無線タグ2を識別するタグID(つまり、デバイス識別情報)に対応する動線データを基に、各タグIDをPOSデータベースに含まれるいずれかのPOSデータに対応付ける処理(以下、適宜「突合」又は「突合処理」という。)を実行する突合プログラムがインストールされている。各タグIDをPOSデータベースに含まれるいずれかのPOSデータに対応付けることは、各購入者にPOSデータを対応付けることと同義である。
【0015】
店舗端末4は、例えば、店舗の事務所等に配置され、例えば、パーソナルコンピュータ、タブレット端末等の表示パネルを備えた端末である。店舗端末4は、ネットワークNWを介してサーバ5と通信可能であり、例えば、タグIDごとの動線データを取得して表示させ、あるいは、突合プログラムの実行結果として、タグIDごとの動線データと、当該タグIDに対応する購入者のPOSデータとを対応付けて表示するように構成されている。それによって、店舗の社員が店舗内の購入者の行動分析を行うことができる。
なお、本実施形態では、サーバ5による突合プログラムの実行結果等を閲覧する目的のために店舗端末4を設けているが、そのような端末は店舗に配置されていなくてもよい。例えば、ログイン情報を認証することによりサーバ5にアクセス可能な如何なる情報処理端末からも上記実行結果等を閲覧することができるようにしてもよい。
【0016】
図2を参照すると、例示的な店舗内のエリアは、複数の売り場ゾーン(適宜、単に「ゾーン」という。)Z1~Z24とレジゾーンRZを有し、各店舗には商品を配置する商品棚SHが設置されている。各ゾーンは、例えば、精肉ゾーン、惣菜ゾーン、菓子類ゾーンといった具合に、販売する商品の種別に応じて区画されている。各ゾーンはエリア内の領域の一例であり、レジゾーンRZは商品精算領域の一例である。
【0017】
店舗内の商品の配置は、
図3に例示する商品配置テーブルに従って行われる。この商品配置テーブルは、サーバ5に記憶され、店舗端末4からの要求に応じて適宜更新されてもよい。
図3に示すように、商品配置テーブルでは、各商品カテゴリに対して、当該商品カテゴリに属する商品が配置される売り場ゾーンが割り当てられている(設定されている)。例えば、商品カテゴリC1である酒類には、売り場ゾーンZ6,Z15が割り当てられている。ここで、商品カテゴリに属する商品が、当該商品カテゴリに対応するすべての売り場ゾーンに配置されているとは限らず、いずれかの売り場ゾーンに配置されていることを意味する。例えば、
図3の商品配置テーブルは、商品カテゴリC1である酒類に属するワイン、日本酒等の商品が、売り場ゾーンZ6,Z15の少なくともいずれかに配置されていることを意味しており、実際にワイン、日本酒等の商品が配置される売リ場ゾーンは、店舗の担当者によって決定される。
図3において、完全マッチフラグは、商品カテゴリに属する商品の売り場ゾーンを変更する可能性がない(つまり、売り場位置が固定である)場合に「True」(第1設定の一例)を示し、売り場ゾーンを変更する可能性がある場合に「False」(第2設定の一例)を示す。例えば、商品カテゴリC1である酒類に対応する完全マッチフラグは「True」であるため、酒類が配置される売り場ゾーンは必ず、売り場ゾーンZ6,Z15の少なくともいずれかである。それに対して、完全マッチフラグが「False」である商品カテゴリの商品が配置される売り場ゾーンは、店舗の都合により変更される可能性がある。例えば、商品カテゴリC2である惣菜は、通常は売り場ゾーンZ11,Z12,Z20のうちの少なくともいずれかに配置されるが、例えば季節や特売等に応じて、売り場ゾーンが新たに追加されたり、現在設定されている売り場ゾーン(Z11,Z12,Z20)のいずれかが削除されたりする可能性がある。
【0018】
なお、商品カテゴリによる商品の分類レベルは適宜設定可能である。商品カテゴリの分類レベルをより細かくする(例えば、酒類ではなく、より小分類のワイン、日本酒ごとにゾーンを設定する)ことで、突合の精度を上げることができる。しかし、細かい商品カテゴリに対する商品の位置は、店舗の都合で頻繁に変わる可能性があり、その都度商品配置テーブルを更新する必要がある。
【0019】
POSシステム7は、サーバ5とネットワークNWを介して通信可能に設けられ、店舗の売上げ情報であるPOSデータ(販売情報の一例)を購入者の1回の購入を対象として作成し、POSデータベースに蓄積する。サーバ5は、POSシステム7からPOSデータベースを取得する。
図4に例示するように、本実施形態の購入分析システム1では、POSデータベースに、POSデータP-1,P-2,…,P-NのN個(Nは2以上の整数)のPOSデータが含まれている場合を想定する。POSデータベースでは、1つのPOSデータのレコードに対して、「販売時刻」、「商品カテゴリ」、「レジ番号」の各フィールドの値を有する。「レジ番号」フィールドの値は、購入者が精算を行ったレジを識別するレジ番号(本実施形態の例では、レジ番号R1~R6のいずれか;精算機情報の一例)である。なお、POSデータベースは、販売時刻の順にPOSデータP-1,P-2,…,P-Nが配列されている。
【0020】
(2)購入者の測位方法
次に、購入者の測位方法について、
図5および
図6を参照して説明する。
図5は、動線データのデータ構成例を示す図である。
図6は、
図2の平面図において1つの無線タグ2の動線を例示する図である。実施形態において、無線タグ2の動線は、対応する購入者の動線に等しいものとみなしている。
【0021】
無線タグ2の測位は、前述したように、店舗の天井に受信機3を設置し、受信機3が、購入者が使用するカートに取り付けられた無線タグ2から放射する電波(ビーコン信号)を受信し、受信したビーコン信号の入射角を算出するAOA(Angle of Arrival)方式を利用する。受信機3では、無線タグ2から受信するビーコン信号の入射角(到来方向)を測定し、測定した入射角の情報をサーバ5に送る。サーバ5では、送信元の受信機3の店舗内での位置(XYZ座標の位置)と、当該位置を基準とした入射角とから、無線タグ2の位置(XY座標)を推定する。
【0022】
1つの受信機3(ロケータ)によっても無線タグ2の位置を推定可能であるが、ビーコン信号の受信信号強度(RSSI)の大きさや店舗面積、店舗の電波環境に応じて、より多くの受信機3を設けることが好ましい。例えば、店舗の天井には、等間隔で受信機3を配置し、売り場が密集している場所等の特に測位精度が要求される場所には、より短い間隔で受信機3を配置することが好ましい。
【0023】
なお、無線タグ2の測位方法はAOA方式に限定するものではなく、TOA(Time of Arrival)方式等の他の方法を利用してもよい。
無線タグ2の測位間隔は、任意に設定してよいが、購入者の行動を正確に把握するために必要な時間(例えば、100ms~2秒)に設定される。
【0024】
サーバ5は、無線タグ2の位置を算出し、無線タグ2ごとの動線データを記録する。
図5に示す動線データでは、各測位時刻における無線タグ2の位置(XY座標)のデータ(位置情報の一例)を含む。この例では、時刻t0が店舗に入店した時刻を示し、時刻t1000がレジゾーンRZを抜けて退店した時刻を示している。この動線データを、
図2の店舗の平面図にプロットしたものが
図6に例示する無線タグ2の動線FLである。
図5に示す動線データ内のゾーンは、測位された位置に対応する売り場ゾーンを示している。
【0025】
(3)滞留時間の計測方法
次に、購入者の店舗内の滞留時間の計測方法について、
図7~
図9を参照して説明する。
滞留時間とは、店舗内を巡回した購入者が店舗内で立ち止まった時間であり、突合の精度を高めるためのファクタである。
図6に示したように、無線タグ2の動線FLは、購入者の店舗内の行動についての経路情報のみを含むものであるため、後述するように、突合処理を行うときに滞留時間の情報を考慮することで、突合の精度を向上させることができる。
【0026】
図7に示すように、本実施形態の購入分析システム1では、購入者の店舗内での滞留時間を計測するために、店舗内の売り場ゾーンZ1~Z24を含むエリアに仮想ポイントVPが設定される。つまり、
図8に
図7のエリアの一部を拡大して示すように、店舗内の売り場ゾーンのエリアのX軸およびY軸に沿って格子状に配置される仮想線Lx,Lyの交点である仮想ポイントVPが定義される。そして、この仮想ポイントVPごとに購入者の滞留時間が計測される。
隣接する2個の仮想ポイントVPの間隔は任意に設定可能であるが、好ましくは、受信機3とサーバ5によって構成される位置特定システムの測位精度に応じて設定される。例えば、位置特定システムの測位精度が50cmであれば、隣接する2個の仮想ポイントVPの間隔を50cmに設定してもよい。
【0027】
具体的な滞留時間の計測方法について、
図9を参照して説明する。
図9において、無線タグ2の位置がCmである場合を想定する。このとき、位置Cmを中心とした所定の直径Dの仮想円CRを設定し、この仮想円CRの円形領域内に位置する仮想ポイント(
図8の例では仮想ポイントVP1,VP2)が特定される。そして、購入者が同じ位置に留まり、例えば仮想ポイントVP1,VP2が仮想円CRの円形領域内に継続して位置している時間を滞留時間として計測する。なお、
図9では、所定の範囲として円形領域を例示しているが、所定の領域であれば、その形状は円形に限られず、楕円(直線部分を含む実質的に楕円となる形状も含む)、正方形、矩形であってもよい。
【0028】
購入者が店舗内を巡回するにつれて移動する無線タグ2と共に仮想円CRが移動し、当該無線タグ2に設定される仮想円CRの円形領域内に含まれる仮想ポイントVPが変動する。店舗のエリア内に設定された各仮想ポイントVPについて、購入者に対応する仮想円CRに含まれる継続時間を滞留時間とする。つまり、一人の購入者に対して(つまり、1個の無線タグ2に対して)仮想ポイントVPごとの滞留時間が計測される。
【0029】
ここで、各仮想ポイントVPの滞留時間を積算値(積算時間)として計測してもよいし、最大値(最大継続時間)として計測してもよい。以下では、1つの仮想ポイントについて、滞留時間を積算値として算出する場合を「滞留時間(積算値)」と表記し、滞留時間を最大値として算出する場合を「滞留時間(最大値)」と表記する。滞留時間(積算値)と滞留時間(最大値)について、共通する事項を参照するときには、単に「滞留時間」と表記する。滞留時間は、計測時間の一例である。
滞留時間(積算値)は、購入者が店舗に入店してから退店するまでの間、各仮想ポイントVPで計測された時間をリセットすることなく積算することで算出される値である。
滞留時間(最大値)は、購入者が店舗に入店してから退店するまでの間において、各仮想ポイントVPが仮想円CRの円形領域内に位置している継続時間の最大値である。仮想ポイントVPが仮想円CRの円形領域内に位置している継続時間は、その都度測定され、いったん仮想円CRの円形領域から外れた場合はリセットされる。
【0030】
無線タグ2の位置を中心に設定される仮想円CRの大きさは、隣接する2個の仮想ポイントVPの間隔である基準間隔d(
図9参照)に基づいて決定することが好ましい。具体的には、仮想円CRの直径Dを隣接する2個の仮想ポイントの間隔である基準間隔dよりも大きく設定する。その理由は以下のとおりである。
【0031】
すなわち、仮に、仮想円CRの円形領域内に1個も仮想ポイントVPがないとしたならば滞留時間を計測することができない。仮に、仮想円CRの円形領域内に1個の仮想ポイントVPのみが含まれるとしたならば、実際には購入者があるゾーン内に止まっているのにも関わらず、無線タグ2の測位誤差によって当該ゾーンに隣接する別のゾーン内にいるものとして計測されてしまう可能性がある。それに対して、本実施形態では、仮想円CRの円形領域内に少なくとも2個の仮想ポイントVPが常に含まれることになり、それぞれの仮想ポイントVPで滞留時間が計測されるため、売り場ゾーンの境界において滞留時間を誤って計測することが回避される。
【0032】
なお、仮想円CRの直径Dを基準間隔dより大きくし過ぎる場合には、実際に購入者がいる位置から離れた仮想ポイントVPを対象として滞留時間が計測されることになり、実際の状況と乖離する。そのため、エリア内の各仮想ポイントVPの滞留時間の誤差が大きくなる。
そこで、仮想円CRの円形領域内には仮想ポイントVPが2~5個含まれるように仮想円CRの直径Dを設定することが好ましい。例えば、d<D≦2dを満たすように仮想円CRの直径Dを設定することが好ましい。
【0033】
仮想ポイントVPごとの滞留時間を基に、売り場ゾーンごとに、各仮想ポイントの滞留時間の総和(総滞留時間)が算出される。それによって、購入者が、店舗を巡回しているときに、どの売リ場ゾーンにどの程度の時間立ち止まっていたかについての情報(つまり、売り場ゾーンごとの滞留時間の情報)を得ることができる。
すなわち、購入者が店舗に入店してから退店するまでの間に特定の売り場ゾーンに含まれる複数の仮想ポイントの各々に対して算出された滞留時間の総和が、当該売り場ゾーンについての総滞留時間になる。この場合、各仮想ポイントを滞留時間(積算値)として算出したか、あるいは滞留時間(最大値)として算出したかに応じて、売り場ゾーンごとの総滞留時間についても、総滞留時間(積算値)あるいは総滞留時間(最大値)のいずれかが算出されるが、いずれを適用してもよい。総滞留時間は、集計された計測時間の一例である。
【0034】
(4)購入分析システム1の内部構成
次に、購入分析システム1の内部構成について、
図10のブロック図を参照して説明する。
【0035】
図10に示すように、無線タグ2は、制御部21と通信部22を備える。
制御部21は、マイクロコントローラを主体として構成され、無線タグ2の全体を制御する。例えば、制御部21は、受信信号および送信信号に対する処理(ベースバンド信号の処理)を行う。
通信部22は、受信機3と通信を行うためのインタフェースであり、例えば、受信機3への送信信号(例えばビーコン信号)の変調を行い、例えばBLEに従ってブロードキャスト送信する。ビーコン信号には、無線タグ2のタグIDが含まれる。
【0036】
図10に示すように、受信機3は、電波受信部31、入射角測定部32、および、通信部33を備える。
電波受信部31は、無線タグ2から送信されるビーコン信号(電波)を受信するアンテナを含む。
入射角測定部32は、電波受信部31で受信した無線タグ2からの電波の入射角を測定する。
通信部33は、無線タグ2およびサーバ5と通信を行うためのインタフェースである。例えば、通信部33は、無線タグ2からの受信信号を復調する。また、通信部33は、入射角測定部32によって測定された入射角の情報を、受信したビーコン信号に含まれるタグIDと対応付けて、ネットワークNWを介してサーバ5に送信する。
【0037】
図10に示すように、店舗端末4は、制御部41、表示部42、および、通信部43を備える。
制御部41は、マイクロコントローラを主体として構成され、店舗端末4の全体を制御する。
制御部41は、例えば、通信部43を介して表示のために、動線データ、POSデータベース、購入データセット、突合データセット等を要求して、これらのデータを受信する。
表示部42は、例えば、LCD(Liquid Crystal Display)パネル等の表示パネルと、サーバ5から取得する表示データに基づいて表示パネルを駆動する駆動回路とを含む。
例えば、制御部41が所定のプログラムを実行することで、タグIDごとの動線データおよびPOSデータ等を表示部42に表示する。
通信部43は、ネットワークNWを介してサーバ5との通信を行うための通信インタフェースとして機能する。
【0038】
図10に示すように、サーバ5は、制御部51、ストレージ52、および、通信部53を備える。
制御部51は、マイクロコントローラを主体として構成され、サーバ5の全体を制御する。例えば、制御部51のマイクロコントローラが突合プログラムを実行することで、制御部51は、データ取得部511、商品カテゴリ特定部512、POSデータ抽出部513、スコア算出部514、滞留時間算出部515、リピート値算出部516、および、対応付け部517として機能する。
【0039】
データ取得部511(第1取得部、第2取得部の一例)は、各購入者の無線タグ2を識別する複数のタグIDの各々に対して、対応する無線タグ2の時刻の経過に応じた店舗内の位置を示す位置情報を含む動線データ(
図5参照;動線情報の一例)を取得する。このとき、データ取得部511は、受信機3から受信するタグIDごとの入射角の情報を基に、タグIDごとに動線データを取得する。
また、データ取得部511は、商品が販売された販売時刻と、当該販売時刻に販売された商品の各々の商品カテゴリと、レジ番号と、がそれぞれ対応付けられた複数のPOSデータが格納されるPOSデータベース(
図4参照)をPOSシステム7から取得する。
【0040】
商品カテゴリ特定部512(商品種別特定部の一例)は、商品配置テーブル(
図3参照)と、各タグIDに対応する動線データとに基づいて、各無線タグ2が通過した店舗内のゾーンに割り当てられている商品カテゴリを特定する。つまり、商品カテゴリ特定部512は、購入者の動線データに対応付けられる商品カテゴリを特定する。
【0041】
POSデータ抽出部513(第2取得部の一例)は、各タグIDに対応する動線データに基づいて、各タグIDによって特定される無線タグ2がレジゾーンRZに進入した進入時刻(レジ進入時刻)を特定し、POSデータベースから、レジ進入時刻を含む所定期間に販売時刻が含まれるPOSデータを、POSレンジデータ(後述する)として抽出する。
POSデータ抽出部513は、各タグIDに対応する動線データに基づいて、商品の精算が行われたレジ(精算機の一例)を特定し、POSデータベースから、特定したレジのレジ番号を有し、かつレジ進入時刻の前後の所定期間に販売時刻が含まれるPOSデータを抽出してもよい。
【0042】
スコア算出部514(第3取得部の一例)は、複数のタグIDのいずれかのタグIDを処理対象IDとして、データ取得部511により取得されたPOSデータに含まれる商品カテゴリと、商品カテゴリ特定部512により特定された商品カテゴリとに基づき、スコアを算出する。例えば、スコア算出部514は、POSデータベースの各POSデータに含まれる商品カテゴリの数と、商品カテゴリ特定部512により処理対象IDに対して特定された商品カテゴリのうち各POSデータに含まれる商品カテゴリと一致する商品カテゴリの数と、に基づいて、各POSデータのスコアを算出する。
ここで、スコアとは、例えば、処理対象IDに対応付けるべきPOSデータであることの確からしさを示す値であり、関連度合の一例である。つまり、特定のタグIDの無線タグ2の動線は購入者の動線と1対1で対応付けられているため、スコアは、購入者の動線データとPOSデータとの関連度合を示すものといえる。なお、スコアの具体的な算出例については、後述する。
また、スコア算出部514は、例えば、スコアの算出対象のPOSデータに含まれる商品カテゴリに割り当てられた1又は複数のゾーンの各々に対して算出された総滞留時間に基づいて、スコアを調整してもよい。
また、スコア算出部514は、例えば、スコアの算出対象のPOSデータに含まれる商品カテゴリに割り当てられた1又は複数のゾーンの各々に対してリピート値算出部516によって算出されたリピート値(後述する)に基づいて、スコアを調整してもよい。
また、スコア算出部514は、例えば、購入者の動線データに基づいて特定される購入者が通過した1又は複数のゾーンが、POSデータ抽出部513により取得されたPOSデータに含まれる商品カテゴリに対して設定されているソーンを含まない場合には、当該POSデータのスコアを小さくなるように調整してもよい。
また、
図3に示したように、店舗には、完全マッチフラグが「True」(第1設定の一例)の商品カテゴリの商品が配置されるゾーン(つまり、配置される商品の変更の可能性がないゾーン)と、完全マッチフラグが「False」(第2設定の一例)の商品カテゴリの商品が配置されるゾーン(つまり、配置される商品の変更の可能性があるゾーン)とを設けてもよい。例えば、完全マッチフラグが「True」の商品カテゴリに対応する売り場ゾーンは固定である。この場合、スコア算出部514は、購入者の動線データに基づいて特定される購入者が通過したゾーンが、POSデータ抽出部513により取得されたPOSデータに含まれる商品カテゴリのうち完全マッチフラグが「True」の商品カテゴリに設定されたゾーンを含まない場合、スコアを小さくなるように調整してもよい。
【0043】
滞留時間算出部515(計測部、集計部の一例)は、店舗内に格子状に配置される仮想線の交点である仮想ポイントVP(
図8参照)を定義したときに、各無線タグ2の位置を中心とした所定の範囲内に位置する仮想ポイントの各々を対象として、購入者の移動に伴って仮想ポイントが前記範囲内に継続して位置する時間として滞留時間を計測し、各ゾーンでの総滞留時間を算出する。つまり、あるゾーンに含まれる複数の仮想ポイントの各々に対して算出された滞留時間の総和が、当該ゾーンに対する総滞留時間となる。
【0044】
リピート値算出部516(回数算出部の一例)は、各タグIDに対応する動線データに基づいて、各タグIDによって特定される無線タグ2による複数のゾーンの各々に対する進入および退出の繰返し回数を、リピート値として算出する。
【0045】
対応付け部517は、スコア算出部514によって算出されたスコアに基づいて、処理対象IDをPOSデータベースのいずれかのPOSデータに対応付ける。すなわち、対応付け部517によって、購入者の動線データ(対応する無線タグ2の動線データと等価)と、POSデータとが対応付けられることになる。
【0046】
ストレージ52は、例えばHDD(Hard Disk Drive)装置等の大容量記憶装置であり、店舗マップ、動線データ(
図5参照)、POSデータベース(POS DB)(
図4参照)、商品配置テーブル(
図3参照)、購入者データセット(購入者DS)、および、突合データセット(突合DS)を格納する。ストレージ52内の各データは、制御部51からのアクセスに応じて適宜、更新、追加、又は削除される。
店舗マップは、店舗のフロアの各売り場ゾーンの境界についての地理的情報(XY座標の情報)を含む。店舗マップを参照することで、例えば、無線タグ2の位置に対応する売り場ゾーンを特定し、あるいは、各仮想ポイントVP(
図9参照)が含まれる売り場ゾーンを特定することができる。
購入者データセットについては後述するが、無線タグ2のタグIDごとに動線データ、レジ進入時刻、および、レジ番号を対応付けたデータベースであり、突合プログラムを実行するときに作成される。
突合データセットについては後述するが、無線タグ2のタグIDごとに、POSデータベース内のいずれかのPOSデータが対応付けられたデータであり、突合プログラムの実行結果(つまり、突合結果)である。
【0047】
通信部53は、ネットワークNWを介して、受信機3、店舗端末4、および、POSシステム7との通信を行うための通信インタフェースとして機能する。
【0048】
(5)サーバ5による突合処理
次に、
図11~
図23を参照して、サーバ5による突合処理について説明する。
前述したように、突合処理は、各無線タグを識別するタグIDに対応する動線データを基に、各タグIDをPOSデータベースに含まれるいずれかのPOSデータに対応付ける処理(突合プログラムの処理)であり、サーバ5の制御部51により実行される。
【0049】
以下の説明では、無線タグが取り付けられたカートを利用して店舗でN人の来店者(購入者)が商品を購入した場合を想定する。その場合、N人の購入者の各々に対応して、異なるタグIDのN個の無線タグが割り当てられる。サーバ5は、異なるタグIDの無線タグを測位し、各タグIDの無線タグの動線データ(
図5参照;等価的に、異なる購入者の動線データ)を取得する。具体的には、N個のタグID:1~Nに対して、それぞれ動線データFL(1)~FL(N)(後述する)を取得する。
【0050】
また、サーバ5は、N人の購入者に対する売上げ情報としてN個のPOSデータからなるPOSデータベースをPOSシステム7から取得する。具体的には、
図4に示したように、サーバ5は、N個のPOSデータP-1~P-NからなるPOSデータベースを取得する。
サーバ5は、N個のタグID:1~Nに対して、それぞれ動線データFL(1)~FL(N)を取得し、N個のPOSデータP-1~P-NからなるPOSデータベースを取得した後に、以下で説明する突合処理を実行する。突合処理を実行することで、N個のタグIDとN個のPOSデータをそれぞれ1対1に対応付けた突合データセットが作成される。
【0051】
(5-1)全体の流れ
図11に、サーバ5によって実行される突合処理の全体のフローチャートを示す。
図11のフローチャートに含まれる各処理については後で詳述するが、以下の一連の処理である。
・レジ番号特定処理(ステップS2)
レジ番号特定処理は、各タグIDに対応する動線データを基に、各タグIDに対応する購入者が商品の精算を行ったレジのレジ番号を特定する処理である。
・POSレンジデータの作成処理(ステップS4)
POSレンジデータの作成処理は、各タグIDに対して、レジ進入時刻の前後の所定の期間に販売時刻が含まれるPOSデータからなるPOSレンジデータを作成する処理である。
・スコアリング前処理データの作成処理(ステップS6)
スコアリング前処理データの作成処理は、各タグIDに対応するPOSレンジデータに含まれる各POSデータに対して、スコアリング前処理データを作成する処理である。スコアリング前処理データは、各タグIDに対してPOSデータを対応付ける(突合させる)ときのスコアに反映されるデータである。
・変換処理(ステップS8)
変換処理は、各タグIDについて、POSレンジデータに含まれる各POSデータとスコアリング前処理データとが対応付けられたデータを、各POSデータについて、各タグIDとスコアリング前処理データとが対応付けられたデータ(後述する購入データセット)に変換する処理である。
すなわち、レジ進入時刻が近い複数のタグIDの各々に対するPOSレンジデータには、同一のPOSデータが重複して含まれている。そこで、変換処理では、複数のタグIDの各々に対するPOSレンジデータに含まれるPOSデータとスコアリング前処理データの関係を、それぞれ個別のPOSデータごとのタグIDとスコアリング前処理データとの関係に変換する。
・スコアセット作成処理(ステップS10)
スコアセット作成処理は、スコアセットを作成する処理である。スコアセットとは、タグIDに対応するPOSレンジデータの各POSデータが、当該タグIDに対応付けるべきPOSデータであることの確からしさを示す値であるスコアを、タグIDごとに格納したデータである。
・突合データセットの作成処理(ステップS12)
突合データセットの作成処理は、スコアセットを参照して、各タグIDをPOSデータベースのいずれかのPOSデータに対応付けた突合データセットを作成する処理である。
【0052】
(5-2)レジ番号特定処理
先ず、
図12~
図14を参照して、
図11のレジ番号特定処理(ステップS2)について具体的に説明する。
図12は、
図11のレジ番号特定処理のフローチャートである。
図13は、
図11の購入者データセットのデータ構成例を示す図である。
図14は、
図2の平面図においてレジゾーンRZを拡大して示す図である。
【0053】
前述したように、レジ番号特定処理は、各タグIDに対応する動線データを基に、各タグIDに対応する購入者が商品の精算を行ったレジのレジ番号を特定する処理であり、制御部51のデータ取得部511による処理である。すなわち、データ取得部511は、無線タグ2の動線データから特定された店舗エリア内のレジゾーンRZにおけるレジ番号を取得する。なお、店舗のレジが1つである場合には、レジ番号特定処理は必要ない。
レジ番号特定処理では、
図13に例示する購入者データセットが作成される。購入者データセットの各レコードでは、「タグID」、「動線データ」、「レジ進入時刻」、および、「レジ番号」の各フィールドの値を格納する。前述したように、N個のタグID:1~Nにそれぞれ対応する動線データFL(1)~FL(N)は取得済みであることを前提としている。レジ番号特定処理では、各タグIDに対応するレジ進入時刻およびレジ番号が特定され、購入者データセットに書き込まれる。
【0054】
図14に示す例では、レジ番号R1~R6に対応する6台のレジ(キャッシュレジスタCRT)が配置される。そして、レジ番号を特定するために、レジゾーンRZが細分化されて処理が行われる。この例では、レジゾーンRZに6個のレジ(レジ番号R1~R6)が配置される例が示される。レジ番号R1~R6の各レジにそれぞれ対応するゾーンが、レジゾーンRZ1~RZ6である。
仮想線L1は、レジゾーンRZと、隣接する売り場ゾーン(
図6の例では、売り場ゾーンZ13)との境界に設定される。無線タグが仮想線L1を-Y方向に向かって通過した時点がレジ進入時刻であり、各タグIDに対応する動線データから特定可能である。例えば、
図14に示す動線FLが仮想線L1を通過した時点が、動線FLに対応するタグIDのレジ進入時刻になる。
【0055】
レジ番号の特定精度を高めるためには、各レジ番号に対応するレジゾーンRZ1~RZ6をさらに、Y軸方向で細分化して処理することが好ましい。これは、購入者が、例えばカート上の商品をレジカウンタに載せるときにカートを横に移動させる場合があるため、カートに取り付けた無線タグの位置が購入者と離れる場合があることを考慮するためである。
図14では、仮想線L1と平行にY軸方向にオフセットした2本の仮想線L2,L3でレジゾーンRZ1~RZ6を細分化した例が示される。具体的には、レジゾーンRZ1を3個のサブゾーンRZ11~RZ13に細分化し、レジゾーンRZ2を3個のサブゾーンRZ21~RZ23に細分化し、レジゾーンRZ3を3個のサブゾーンRZ31~RZ33に細分化し、レジゾーンRZ4を3個のサブゾーンRZ41~RZ43に細分化し、レジゾーンRZ5を3個のサブゾーンRZ51~RZ53に細分化し、レジゾーンRZ6を3個のサブゾーンRZ61~RZ63に細分化した例が示される。
【0056】
各レジ番号に対応するレジゾーンRZ1~RZ6をサブゾーンに細分化した上で、動線データを基にどのサブゾーンに進入したかに応じた重み付けスコアを評価することで、レジ番号を決定する。重みは、レジゾーンRZの入口に近いほど(つまり、仮想線L1に近いほど)高くするように設定することが好ましい。
例えば、サブゾーンRZ11~RZ61にそれぞれ進入したときに、対応するレジ番号に対する重み付けを1.2とし、サブゾーンRZ12~RZ62にそれぞれ進入したときに、対応するレジ番号に対する重み付けを1.0とし、サブゾーンRZ13~RZ63にそれぞれ進入したときに、対応するレジ番号に対する重み付けを0.8とする。この場合、
図14の例では、動線FLでは、無線タグがサブゾーンRZ21に進入し、サブゾーンRZ22に進入し、サブゾーンRZ33に進入する。そのため、レジ番号R2に対する重み付けスコアが2.2となり、レジ番号R3に対する重み付けスコアが0.8となり、動線FLに対するレジ番号はR2に特定される。
【0057】
なお、2以上のレジ番号に対して重み付けスコアが同一である場合には、レジゾーンRZに進入したときのサブゾーンに基づいて(つまり、進入時刻が最も早いサブゾーン)、レジ番号を決定する。すなわち、サブゾーンRZ11,RZ21,RZ31,RZ41,RZ51,RZ61に進入した場合に、それぞれレジ番号がR1,R2,R3,R4,R5,R6に特定される。
【0058】
図12を参照すると、サーバ5は、
図12のフローチャートのステップS20~S26の処理を、すべてのタグID:i(i=1~N)について実行する(ステップS28)。
サーバ5は先ず、動線データFL(i)からレジゾーンRZの各サブゾーンに対する進入時刻を特定する(ステップS20)。そして、サーバ5は、上述したように、レジ番号ごとの重み付けスコアを決定し(ステップS22)、重み付けスコアに基づいてレジ番号R(i)(本実施形態の例では、レジ番号R1~R6のいずれか)を決定する(ステップS24)。
サーバ5は、レジ番号R(i)に対応付けて、ステップS20で特定したレジ進入時刻TE(i)(つまり、
図14のサブゾーンRZ11~RZ61のいずれかの進入時刻)と、ステップS24で決定したレジ番号R(i)とを購入者データセット(
図13)に書き込む(ステップS26)。
図12のフローチャートの処理を実行することで、
図13の購入者データセットが作成される。購入者データセットは、
図11のステップS4以降の処理で参照される。
【0059】
上述した重み付けスコアを用いたレジ番号の特定は一例に過ぎず、より簡略的には、レジゾーンRZ1~RZ6の中のいずれのレジゾーンに進入したかに基づいて、レジ番号R1~R6のいずれかを特定してもよい。
また、レジゾーンRZ1~RZ6の各々を3個のサブゾーンに細分化した例を示したが、その限りではなく、2個のサブゾーン、あるいは、4個以上の任意の数のサブゾーンに細分化して重み付けスコアを算出するようにしてもよい。
【0060】
(5-3)POSレンジデータの作成処理
次に、
図15および
図16を参照して、
図11のPOSレンジデータ(ステップS4)の作成処理について具体的に説明する。
図15は、
図11のPOSレンジデータの作成処理のフローチャートである。
図16は、POSレンジデータについて説明する図である。
【0061】
前述したように、POSレンジデータの作成処理は、各タグIDに対して、レジ進入時刻の前後の所定の期間(所定範囲)に販売時刻が含まれるPOSデータからなるPOSレンジデータを作成する処理であり、制御部51のデータ取得部511による処理である。すなわち、データ取得部511は、レジ番号特定処理によって特定されたレジ番号に基づき、レジ番号が含まれるPOSデータをPOSデータベースから取得する。データ取得部511はさらに、無線タグ2の動線データから特定された店舗のエリア内のレジゾーンRZへの進入時刻に基づき、進入時刻を含む所定範囲に販売時刻が含まれるPOSデータを、POSデータベースから取得する。具体的に説明すると以下のとおりである。
図15を参照すると、サーバ5は、
図15のフローチャートのステップS30~S34の処理を、すべてのタグID:i(i=1~N)について実行する(ステップS36)
サーバ5は先ず、タグID:iに対応するレジ進入時刻TE(i)を基準にTE(i)±Δtの期間を設定する(ステップS30)。ここで
図16を参照すると、タグID:iに対応するレジ進入時刻TE(i)はレジ番号特定処理で特定済みであり、レジ進入時刻TE(i)を基準にして前後の所定の期間(TE(i)-Δt~TE(i)+Δt)が設定される。
【0062】
Δtは、無線タグのレジ進入時刻に基づいて、タグIDを突合させるときのPOSデータの候補を限定する(絞り込む)ために設定され、任意の値に設定可能である。一般に、POSシステムには多くの仕様が存在し、販売時刻が分単位で記録されるものもあれば秒単位で記録されるものもある。POSデータの販売時刻が分単位である場合には例えば60~120秒の範囲の比較的長い時間でΔtを設定し、POSデータの販売時刻が秒単位である場合には例えば20~60秒の範囲の値等、比較的短い時間でΔtを設定することが好ましい。
【0063】
次いでサーバ5は、POSデータベースから、販売時刻がステップS30で設定された期間内であって、タグID:iのレジ番号R(i)と同一のレジ番号のPOSデータを抽出し(ステップS32)、抽出したPOSデータをPOSレンジデータPR(i)とする(ステップS34)。
図16に示すように、POSデータベースでは、N個のPOSデータP-1,P-2,…,P-Nが販売時刻の順に配列されている。このPOSデータベースから、レジ進入時刻TE(i)を基準にした所定の期間(TE(i)-Δt~TE(i)+Δt)に販売時刻が含まれ、同一のレジ番号のPOSデータがすべて、POSレンジデータPR(i)に含まれる。
各タグIDに対応してPOSレンジデータを作成することで、タグIDごとに、対応付けの対象となるPOSデータの候補を絞り込むことができる。言い換えれば、タグID:iのレジ進入時刻TE(i)から乖離した販売時刻のPOSデータを候補から外すことができる。
【0064】
(5-4)スコアリング前処理データの作成処理
次に、
図17および
図18を参照して、
図11のスコアリング前処理データの作成処理(ステップS6)について具体的に説明する。
図17は、
図11のスコアリング前処理データの作成処理のフローチャートである。
図18は、特定のタグIDの購入者に対して、POSレンジデータの各POSデータとスコアリング前処理データの対応付けを示す図である。
【0065】
前述したように、スコアリング前処理データの作成処理は、各タグIDに対応するPOSレンジデータに含まれる各POSデータに対して、スコアリング前処理データを作成する処理である。スコアリング前処理データは、各タグIDに対してPOSデータベース内のいずれかのPOSデータを対応付ける(突合させる)ときのスコアに反映されるデータである。
【0066】
具体的には、
図18に示すように、タグID:iに対して作成されたPOSレンジデータPR(i)が、M
i個のPOSデータP(i,1),P(i,2),…,P(i,M
i)を含む場合には、各POSデータに対してそれぞれ、スコアリング前処理データSp(i,1),Sp(i,2),…,Sp(i,M
i)が作成される。なお、タグIDごとにレジ進入時刻が異なるため、POSレンジデータに含まれるPOSデータの数M
iは、タグIDごとに異なる場合がある。
図18では、タグID:iのPOSレンジデータPR(i)のj番目のPOSデータP(i,j)(j:1~M
iの範囲内の整数)に対して、スコアリング前処理データSp(i,j)が作成される。POSデータP(i,j)は、POSデータベースに含まれるいずれかのPOSデータに等しい。つまり、任意のi(i=1~N),j(j=1~M
i)に対して、P(i,j)∈{P-1,P-2,…,P-N}が成り立つ。
【0067】
スコアリング前処理データSp(i,j)は、以下のデータの組合せからなるデータである。これらのデータを取得又は算出するときに基準となるのは、タグID:iに対応する動線データFL(i)、および、POSデータP(i,j)に含まれる商品カテゴリである。
・POSデータP(i,j)の商品カテゴリのデータ
・当該商品カテゴリに対応するゾーンのデータ
・当該ゾーンごとのリピート値
・店舗のゾーンごとの総滞留時間
・完全マッチゾーンに対する進入データ
・完全マッチゾーン以外のゾーンに対する進入データ
【0068】
ここで、リピート値とは、店舗の各ゾーンに対して進入および退出が繰返し行われた場合の繰返し回数のデータである。例えば、特定のゾーンに対して、進入および退出がそれぞれ1回ずつであるとすれば当該ゾーンを単に通過した場合があるが、進入および退出が繰返し行われているならば、当該ゾーンで商品を購入した可能性が高いと考えられる。そこで、後述するように、動線データFL(i)を参照して、POSデータP(i,j)の商品カテゴリに対応するゾーンに対する繰返し回数を、タグID:iをPOSデータに対応付けるときのスコアに反映させることが好ましい。
【0069】
ゾーンごとの総滞留時間は、既に説明したように、店舗のフロアの各仮想ポイントの滞留時間の、ゾーンごとの総和である。特定のゾーンにおいて総滞留時間が長い場合には、当該ゾーンに立ち止まって商品を物色し、購入した可能性が高いと考えられる。そこで、各ゾーンに対する総滞留時間の大きさを、タグID:iをPOSデータに対応付けるときのスコアに反映させることが好ましい。
なお、前述したように、各仮想ポイントを滞留時間(積算値)として算出したか、あるいは滞留時間(最大値)として算出したかに応じて、各ゾーンの総滞留時間についても、総滞留時間(積算値)あるいは総滞留時間(最大値)のいずれかが算出される。ここでは、総滞留時間(最大値)を算出するが、その限りではなく総滞留時間(積算値)を算出してもよい。
【0070】
完全マッチゾーンとは、商品の売り場ゾーンのうち、位置の変更の可能性がない(つまり、固定の)ゾーンを意味する。商品を購入した事実がPOSデータに記録され、かつ当該商品が含まれる商品カテゴリの売り場ゾーンの位置が固定であるならば、当該商品の購入者がその売り場ゾーンを必ず通過していなければならない。そのような売り場ゾーンを完全マッチゾーンという。
具体的には、
図3の商品配置テーブルにおいて、POSデータP(i,j)に含まれる商品カテゴリのうち、完全マッチフラグが「True」である商品カテゴリに対応するゾーンを意味する。タグID:iを対象とした、完全マッチゾーンに対する進入データは、完全マッチゾーンに進入しているか否かを示すデータである。
例えば、
図3の商品配置テーブルを参照すると、POSデータP(i,j)の商品カテゴリの中に商品カテゴリC1(酒類)が含まれているならば、対応する完全マッチフラグは「True」であるため、商品カテゴリC1に対応する売り場ゾーンZ6,Z15が完全マッチゾーンとなる。この場合、動線データFL(i)に基づき、タグID:iの無線タグが売り場ゾーンZ6,Z15の少なくともいずれか一方を通過している場合には、当該無線タグは、商品カテゴリC1に対する完全マッチゾーンに進入していると判断される。
POSデータP(i,j)に対応付けるべきタグIDの動線は、POSデータP(i,j)に含まれる各商品カテゴリに対応し、かつ完全マッチフラグが「True」であるゾーン(つまり、完全マッチゾーン)を通過していなければならない。そのため、完全マッチゾーンに対する進入データは、タグID:iをPOSデータに対応付けるときの重要なファクタである。
【0071】
タグID:iを対象とした、完全マッチゾーン以外のゾーンに対する進入データとは、完全マッチゾーン以外のゾーンに進入しているか否かを示すデータである。
【0072】
図17を参照すると、サーバ5は、
図17のフローチャートのステップS40~S52の処理を、すべてのタグID:i(i=1~N)の各々に対応するPOSレンジデータに含まれるすべてのPOSデータP(i,j)(i=1~N,j=1~M
i)について実行する(ステップS54,S56)。
サーバ5は先ず、POSデータベースを参照して、処理対象のPOSデータP(i,j)に含まれる商品カテゴリをすべて取得し(ステップS40)、商品配置テーブル(
図3)を参照して、ステップS40で取得した商品カテゴリのうち完全マッチフラグが「True」である各商品カテゴリに対応する売り場ゾーン(完全マッチゾーン)を取得する(ステップS42)。
【0073】
次いでサーバ5は、タグID:iに対応する動線データFL(i)(
図5)を参照して、店舗の各ゾーンに対するリピート値、つまり、店舗の各ゾーンに対して進入および退出の繰返し回数を取得する(ステップS44)。
図5に示したように、動線データには、測位時刻ごとに無線タグが位置するゾーンが記録されているため、動線データを参照することで、各ゾーンに対する進入および退出の繰返し回数を取得できる。
次いでサーバ5は、タグID:iに対応する動線データFL(i)を参照して、店舗内の各ゾーンに対する総滞留時間を算出する(ステップS46)。総滞留時間の算出方法は、
図9等を参照して既に説明したとおりである。
さらにサーバ5は、処理対象となるPOSデータP(i,j)に対してステップS42で算出された完全マッチゾーンと、タグID:iに対応する動線データFL(i)とに基づいて、完全マッチゾーンに対する進入データと、完全マッチゾーン以外のゾーンに対する進入データとを取得する(ステップS48,S50)。
【0074】
サーバ5は、ステップS40~S50で取得又は算出したデータを、
図18に示すように、タグID:iに対応するスコアリング前処理データSp(i,j)として記録する(ステップS52)。
【0075】
(5-5)変換処理
次に、
図19および
図20を参照して、
図11の変換処理(ステップS8)について具体的に説明する。
図19は、変換処理の例を説明する図である。
図20は、
図11の変換処理のフローチャートである。
【0076】
前述したように、変換処理は、各タグIDについて、POSレンジデータに含まれる各POSデータとスコアリング前処理データとが対応付けられたデータを、各POSデータについて、各タグIDとスコアリング前処理データとが対応付けられたデータ(後述する購入データセット)に変換する処理である。
図19において変換前データは、スコアリング前処理データの作成処理によって作成されたデータである。つまり、タグID:1~Nの各々に対して、各タグIDに対するPOSレンジデータに含まれるPOSデータごとにスコアリング前処理データが対応付けられたデータである。この状態のデータのままであっても突合のためのスコアを作成することは可能であるが、より効率的に処理を行うために、POSデータごとのデータに変換する。すなわち、
図19の変換後データ(以下、「購入データセット」という。)として例示するように、POSデータP-1,P-2,…,P-Nの各々に対して、タグIDごとにスコアリング前処理データが対応付けられたデータとする。
前述したように、任意のiおよびjに対する1個のPOSデータP(i,j)に対しては、P(i,j)∈{P-1,P-2,…,P-N}が成り立つ。しかし変換前データにおいて、例えばレジ進入時刻が近い複数のタグIDの各々に対するPOSレンジデータには、同一のPOSデータが重複して含まれている。そのため、変換前データに含まれるすべてのPOSデータP(i,j)(i=1~N,j=1~M
i)の各々とタグIDとの対応関係を、それぞれ個別のPOSデータであるP-1,P-2,…,P-Nの各POSデータに対して整理した場合、
図19の購入データセットが得られる。つまり、購入データセットでは、それぞれ個別のPOSデータに対して、複数のタグIDおよび各タグIDに対するスコアリング前処理データが対応付けられることになる。
【0077】
図20を参照すると、サーバ5は、
図20のフローチャートのステップS60,S62の処理を、すべてのPOSデータP-i(i=1~N)について実行する(ステップS64)。
サーバ5は先ず、変換前データを対象として、処理対象のPOSデータP-iと同一のPOSデータのタグIDとスコアリング前処理データの組合せをすべて抽出する(ステップS60)。さらにサーバ5は、好ましくは、POSデータP-iに対して抽出されたタグIDとスコアリング前処理データの組合せを、購入者データセットを参照してレジ進入時刻の順にソートする(ステップS62)。
すべてのPOSデータの処理が完了すると、
図19に例示した購入データセットが得られる。購入データセットにおいて特定のPOSデータに対応付けられた複数のタグIDは、当該POSデータに対応付けられる可能性が高いタグID候補であると考えることができる。
【0078】
(5-6)スコアセット作成処理
次に、
図21および
図22を参照して、
図11のスコアセット作成処理(ステップS10)について具体的に説明する。
図21は、
図11のスコアセット作成処理のフローチャートである。
図22は、スコアセットのデータ構成例を示す図である。
【0079】
前述したように、スコアセット作成処理は、スコアセットを作成する処理である。スコアセットは、タグIDに対応するPOSレンジデータの各POSデータが、当該タグIDに対応付けるべきPOSデータであることの確からしさを示す値であるスコアを、タグIDごとに格納したデータである。スコアセット作成処理は、
図20の変換処理によって作成された購入データセットを対象として実行される。スコアが高いほど、スコア算出の基礎となるタグIDとPOSデータを対応付けがより確からしい(つまり、タグIDに対応する動線データとPOSデータとの関連度合がより高い)と判断される。
【0080】
スコアSCは、後述するマッチ率SMと調整値SAを加算した値(つまり、SC=SM+SA)である。
【0081】
スコアSCに影響を与える主要なファクタは、マッチ率SMである。
マッチ率SMとは、有効カテゴリ数をNAとし、マッチカテゴリ数をNBとしたときに、NB÷NAで算出される値(0~1の範囲の値)である。ここで、有効カテゴリ数NAは、処理対象となるPOSデータに含まれる商品カテゴリの数である。マッチカテゴリ数NBは、処理対象のタグIDの無線タグが通過したゾーンに割り当てられている商品カテゴリのうち、処理対象となるPOSデータに含まれる商品カテゴリと一致する商品カテゴリの数である。マッチカテゴリ数NBを特定するために、処理対象のタグIDの動線データが参照される。
例えば、処理対象のPOSデータに含まれる商品カテゴリの数が4個(例えば、「酒類」、「菓子類」、「花」、「乳製品」)である場合に、有効カテゴリ数NAは4である。ここで、処理対象のタグIDの無線タグの動線データを参照して、当該タグIDの無線タグが通過したゾーンに割り当てられている商品カテゴリのうち、処理対象となるPOSデータに含まれる商品カテゴリと一致する商品カテゴリが「酒類」、「花」である場合には、マッチカテゴリ数NBは2である。その結果、マッチ率SMは0.5(=2÷4)となる。
【0082】
処理対象のスコアリング前処理データに含まれる以下のデータに基づいて、調整値SAが算出される。
・ゾーンごとのリピート値(進入および退出の繰返し回数)
・店舗のゾーンごとの総滞留時間
・完全マッチゾーンに対する進入データ(進入したか否かを示す値)
・完全マッチゾーン以外のゾーンに対する進入データ(進入したか否かを示す値)
【0083】
前述したように、特定のゾーンに対するリピート値が大きい場合には、当該ゾーンの商品を購入した可能性が高いと考えられる。そこで、処理対象のPOSデータに含まれる商品カテゴリに対応するゾーンに対するリピート値が大きいほど、調整値SAが大きくなるように設定することが好ましい。
例えば、複数のゾーンの各ゾーンに対するリピート値が0(回)、1~3(回)、6(回)以上の場合、リピート値に基づく調整値を、それぞれ、0、0.1、0.2(最大)としてもよい。そして、各々のゾーンに対して決定された調整値の総和を、リピート値に基づく調整値SARとする。なお、リピート値に基づく調整値SARは上限値(例えば、0.5)を設定してもよい。
【0084】
前述したように、特定のゾーンにおいて総滞留時間が長い場合には、購入者が当該ゾーンに立ち止まって商品を物色し、購入した可能性が高いと考えられる。そこで、処理対象のPOSデータに含まれる商品カテゴリに対応するゾーンに対する総滞留時間が長いほど、調整値SAが大きくなるように設定することが好ましい。
例えば、複数のゾーンの各ゾーンに対する総滞留時間が5秒未満、5秒以上20秒未満、20秒以上の場合、総滞留時間に基づく調整値を、それぞれ、0、0.1、0.2(最大)としてもよい。そして、各々のゾーンに対して決定された総滞留時間の総和を、総滞留時間に基づく調整値SATとする。なお、総滞留時間に基づく調整値SATは上限値(例えば、0.5)を設定してもよい。
【0085】
完全マッチゾーンに対する進入データに基づく調整値をSAEとしたとき、処理対象のタグIDの無線タグがすべての完全マッチゾーンに進入していない場合には、調整値SAEを比較的大きな負の値(例えば、-5)としてもよい。前述したように、完全マッチゾーンは、例えば処理対象となるPOSデータに含まれる商品カテゴリに属する商品の売り場ゾーンのうち位置の変更がないゾーンであるため、完全マッチゾーンを通過せずに当該商品を購入することはできない。すなわち、POSデータに基づく完全マッチゾーンは、対応付けるタグIDの無線タグが必ず通過していなければならないゾーンであるため、完全マッチゾーンに進入していない無線タグに対するタグIDに対しては、スコアが大きく低下するように調整してもよい。
【0086】
以上をまとめると、スコアSCは、例えば以下の(式1)又は(式2)により算出される。
SC=SM+SAR+SAT …(式1)
SC=SM+SAR+SAT+SAE …(式2)
なお、
SM :マッチ率
SAR :リピート値に基づく調整値
SAT :総滞留時間に基づく調整値
SAE :完全マッチゾーンに対する進入データに基づく調整値
である。
【0087】
図21を参照すると、サーバ5は、
図21のフローチャートのステップS70~S78の処理を、すべてのPOSデータP-i(i=1~N)に対して、変換処理によって得られた購入データセット(
図19参照)のすべてのタグIDについて実行する(ステップS80,S82)。
サーバ5は先ず、処理対象のPOSデータP-iに含まれる商品カテゴリと、処理対象のタグIDの動線データとに基づいて、マッチ率S
Mを算出する(ステップS70)。次いでサーバ5は、処理対象のタグIDに対応するスコアリング前処理データから調整値S
A(例えば、上記のS
AR,S
AT,S
AEの各調整値の和)を決定する(ステップS72)。ここで、処理対象のPOSデータP-iに対応する購入データセットにおいて、k番目のタグIDに対するスコアをSC(i,k)とすると、サーバ5は、スコアSC(i,k)をS
M+S
Aとして算出する(ステップS74)。
【0088】
サーバ5は、ステップS74で算出したスコアSC(i,k)が所定の閾値TH以上である場合(ステップS76:YES)、当該スコアをスコアセットに格納する(ステップS78)。スコアSC(i,k)が所定の閾値TH未満である場合、スコアの信頼性が低いと考えられるため、スコアセットに格納しない。
【0089】
スコアセットは、
図22に示すように、処理対象のPOSデータおよび処理対象のタグIDに対して算出されたスコアを、変換処理の変換前データ(
図19参照)の形式、つまり、タグIDごとにPOSレンジデータに含まれる各POSデータに対するスコアとして整理したものである。
購入データセット(
図19参照)において、各POSデータとタグIDのすべての組合せに対してスコアを算出することで、各タグIDに対するPOSレンジデータに含まれる各POSデータに対するスコアが算出される。そのため、
図21のステップS70~S78の処理の繰り返し行うことで、
図22に示すようにスコアセットが作成される。つまり、スコアセットは、
図19の変換前データにおいて、スコアリング前処理データに代えて、
図21のステップS70~S74の処理により算出されたスコアSC(i,k)を格納したデータということができる。
【0090】
(5-7)突合データセットの作成処理
次に、
図23を参照して、
図11の突合データセットの作成処理(ステップS12)について具体的に説明する。
図23は、突合データセットのデータ構成例を示す図である。
【0091】
前述したように、突合データセットの作成処理は、スコアセットを参照して、各タグIDをPOSデータベースのいずれかのPOSデータに対応付けた突合データセットを作成する処理である。
図22に示したように、スコアセットには、タグIDごとに、無線タグのレジ進入時刻を基準として作成されたPOSレンジデータに含まれる各POSデータに対応付けて、スコアが格納されている。タグIDに対するPOSレンジデータの中でスコアが最も高いPOSデータが、当該タグIDに対応付けることが最も確からしいPOSデータである。
例えば、
図22のスコアデータに基づいて突合データセットを作成するには、タグID:1に対して、POSレンジデータPR(1)に含まれるPOSデータP(1,1),P(1,2),…,P(1,M
1)のうち、対応するスコアが最も高いPOSデータが選択される。同様にして、タグID:2~Nの各々に対しても、対応するPOSレンジデータのうち、スコアが最も高いPOSデータが選択される。
購入データセット(
図13参照)および突合データセットから、購入者の動線データとPOSデータベースのいずれかのPOSデータとが対応付けられたことになる。
【0092】
なお、上記変換処理では、
図20のステップS62のとおり、各POSデータに対してレジ進入時刻順にソートして購入データセットを作成し、スコアセット作成処理では、作成された購入データセットを順に(つまり、レジ進入時刻の早いタグIDの順に)処理してスコアを算出した。そこで、確認的に、変換処理において、各POSデータに対してレジ進入時刻の遅い順にソートして購入データセットを作成し、スコアセット作成処理では、作成された購入データセットを順に(つまり、レジ進入時刻の遅いタグIDの順に)処理してスコアを算出してもよい。
【0093】
以上説明したように、本実施形態の購入分析システム1では、サーバ5は、各購入者と共に店舗内を移動する無線タグ2を識別する複数のタグIDの各々に対する動線データ(購入者の動線データ)と、店舗の売上げ情報であるPOSデータベースとを取得する。サーバ5は、購入者の動線データと、商品カテゴリごとに設定される店舗エリア内の売り場ゾーンの位置の情報とに基づいて、購入者の動線データとPOSデータとの関連度合としてスコアを取得する。例えば、サーバ5は、複数のタグIDのいずれかのタグIDを処理対象IDとして、POSデータベースの各POSデータに含まれる商品カテゴリの数と、処理対象IDに対して特定された商品カテゴリのうち各POSデータに含まれる商品カテゴリと一致する商品カテゴリの数と、に基づいて、各POSデータのスコアを算出する。そして、サーバ5は、算出されたスコアに基づいて、処理対象IDをPOSデータベースのいずれかのPOSデータに対応付ける(突合させる)。それによって、サーバ5は、購入者の動線データとPOSデータベースのいずれかのPOSデータとが対応付けることができる。そのため、店舗内での購入者の行動と、当該購入者による実際の購入結果とを対応付けることが可能となる。
【0094】
上述した実施形態ではPOSレンジデータを作成したが、その限りではなく、POSレンジデータを作成しない場合であっても、タグIDとPOSデータを対応付けることはできる。しかし、POSレンジデータを作成することで、レジ進入時刻に基づいて確からしい範囲で、タグIDと対応付けられる可能性が高いPOSデータの候補を絞り込むことができるため、正しい突合結果を高速に得ることが可能となる。
【0095】
上述した実施形態では、店舗のレジが複数存在する場合について説明したが、その限りではない。レジが複数存在する場合には、タグIDごとに無線タグが進入したレジのレジ番号が特定され、特定されたレジ番号によって、さらに確からしい範囲で、タグIDと対応付ける可能性が高いPOSデータの候補を絞り込むことができる。
【0096】
上述した実施形態では、各ゾーンに対するリピート値、および、各ゾーンに対する総滞留時間によってスコアを調整する例を示したが、その限りではない。マッチ率のみによってスコアを決定して、タグIDとPOSデータを対応付けてもよい。しかし、各ゾーンに対するリピート値及び/又は総滞留時間によってスコアを調整することで、例えば、処理対象のタグIDに対して、2以上のPOSデータのマッチ率が等しい場合に、より確からしいPOSデータを選択することが可能となる。
【0097】
上述した実施形態では、スコアに含まれるファクタとしてマッチ率SMを算出したが、その限りではない。例えば、マッチ率SMに代えて、有効カテゴリ数NAとマッチカテゴリ数NBの差分(NA-NB)を算出してスコアに反映してもよいし、マッチカテゴリ数NBの値自体をスコアに反映してもよい。
【0098】
上述した実施形態では、スコアの算出として、マッチ率SM、リピート値に基づく調整値SAR、総滞留時間に基づく調整値SAT、完全マッチゾーンに対する進入データに基づく調整値SAEを用いる場合について説明したが、その限りではない。これらの値のすべてを使用してスコアを算出しなくてもよく、一部の値のみを使用してスコアを算出してもよい。
【0099】
上述した実施形態では、商品カテゴリに属する商品の売り場ゾーンを変更する可能性を考慮して、商品カテゴリに対する売り場ゾーンに対する対応付け(
図3参照)において完全マッチフラグ(「True」又は「False」)が設定される場合について説明したが、その限りではない。商品カテゴリに属する商品と売り場ゾーンとの対応付けが固定的である場合や、店舗内の商品配置の変更に対して即時的に商品配置テーブルが更新される場合には、完全マッチフラグを設定しなくてもよい。
【0100】
上述した実施形態では、店舗端末4とサーバ5の間のデータ授受がネットワークNW経由で行われる場合について説明したが、その限りではない。店舗端末4とサーバ5の間のデータ授受は、例えば、USB(Universal Serial Bus)メモリ、SD(Secure Digital)メモリカード、HDD装置、SSD(Solid State Drive)等の記憶媒体を経由して行うこともできる。POSシステム7とサーバ5の間のデータ授受についても同様である。
【0101】
以上、情報処理装置およびプログラムの実施形態について説明したが、本発明は上記の実施形態に限定されない。また、上記の実施形態は、本発明の主旨を逸脱しない範囲において、種々の改良や変更が可能である。
【符号の説明】
【0102】
1…購入分析システム
2…無線タグ
21…制御部
22…通信部
3…受信機
31…電波受信部
32…入射角測定部
33…通信部
4…店舗端末
41…制御部
42…表示部
43…通信部
5…サーバ
51…制御部
511…データ取得部
512…商品カテゴリ特定部
513…POSデータ抽出部
514…スコア算出部
515…滞留時間算出部
516…リピート値算出部
517…対応付け部
52…ストレージ
53…通信部
7…POSシステム
NW…ネットワーク
CT…カート
Z1~Z24…売り場ゾーン
RZ…レジゾーン
SH…商品棚
VP…仮想ポイント
d…基準間隔
CR…仮想円
Cm…位置