(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-06-17
(45)【発行日】2024-06-25
(54)【発明の名称】情報処理装置、情報処理システム、情報処理方法、及びプログラム
(51)【国際特許分類】
G06Q 30/0207 20230101AFI20240618BHJP
G06Q 30/0283 20230101ALI20240618BHJP
G07G 1/12 20060101ALI20240618BHJP
【FI】
G06Q30/0207
G06Q30/0283
G07G1/12 361E
(21)【出願番号】P 2022184936
(22)【出願日】2022-11-18
(62)【分割の表示】P 2022019358の分割
【原出願日】2018-02-22
【審査請求日】2022-12-15
(73)【特許権者】
【識別番号】000002945
【氏名又は名称】オムロン株式会社
(74)【代理人】
【識別番号】100135817
【氏名又は名称】華山 浩伸
(74)【代理人】
【識別番号】100167302
【氏名又は名称】種村 一幸
(74)【代理人】
【識別番号】100181869
【氏名又は名称】大久保 雄一
(72)【発明者】
【氏名】岡本 大和
(72)【発明者】
【氏名】幡山 五郎
(72)【発明者】
【氏名】岡部 浩史
(72)【発明者】
【氏名】野路 晴香
【審査官】山崎 誠也
(56)【参考文献】
【文献】特開2007-041704(JP,A)
【文献】米国特許出願公開第2017/0109767(US,A1)
【文献】特開2020-122995(JP,A)
【文献】国際公開第2014/141717(WO,A1)
【文献】最適価格はAIに聞け,日経コンピュータ,日経BP社,2018年01月18日,no.956,p.22-35
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00-99/00
G07G 1/12
(57)【特許請求の範囲】
【請求項1】
所定の商品が提供される店舗の従業員が使用する
携帯端末装置と、情報処理装置とを含む情報処理システムであって、
前記情報処理装置は、
前記店舗で陳列して販売中の前記所定の商品に対して実施される値引きの値引き率を判定する判定部と、
前記判定部によって判定された前記値引き率を前記
携帯端末装置に送信する判定結果通知部と、を備え、
前記判定部は、前記店舗
の来店者数を少なくとも含む変動情報と、
前記店舗の従業員によって前記携帯端末装置に入力された前記陳列して販売中の前記所定の商品の数を少なくとも含み前記
携帯端末装置から取得した前記所定の商品
に関する商品情報と
、に基づいて、前記値引き率を判定するよう構成されており、
前記
携帯端末装置は、前記判定結果通知部によって送信された前記値引き率を受信するよう構成されている、情報処理システム。
【請求項2】
前記携帯端末装置は、前記判定結果通知部から送信された前記値引き率を受信して、前記携帯端末装置の表示部に表示する、請求項1に記載の情報処理システム。
【請求項3】
前記変動情報を取得する変動情報取得部と、
前記商品情報を取得する商品情報取得部と、を更に備え、
前記判定部は、
前記値引き率を判定するように予め機械学習させた学習モデルを用いて、前記変動情報及び前記商品情報に基づいて、前記値引き率を判定する、請求項1
又は2に記載の情報処理システム。
【請求項4】
前記変動情報は、前記来店者数のほかに、前記所定の商品の過去の販売実績、前記所定の商品の過去の廃棄履歴、或いは、前記店舗の所在地における天候のいずれか一つ又は複数を更に含む、請求項1
から3のいずれかに記載の情報処理システム。
【請求項5】
前記変動情報は、現時刻を更に含み、
前記判定部は、前記変動情報及び前記商品情報に基づいて、前記値引き率と前記値引きの実施タイミングとを判定し、
前記判定結果通知部は、前記値引き率と前記実施タイミングとを前記
携帯端末装置に送信し、
前記
携帯端末装置は、前記判定結果通知部から送信された前記値引き率と前記実施タイミングを受信して、前記
携帯端末装置の表示部に表示する、請求項1から
4のいずれかに記載の情報処理システム。
【請求項6】
前記商品情報は、前記
陳列して販売中の前記所定の商品の数のほかに、前記所定の商品に関する商品金額、商品ID、商品寿命、生産時刻、販促キャンペーン対象情報、利益率、廃棄リスクの程度のうちの少なくとも一つ以上を更に含む、請求項1から
5のいずれかに記載の情報処理システム。
【請求項7】
店舗で
陳列して販売中の所定の商品に対して実施される値引きの値引き率を判定する判定ステップと、
前記判定ステップによって判定された前記値引き率を前記店舗の従業員が使用する
携帯端末装置に送信する送信ステップと、
前記送信ステップによって送信された前記値引き率を前記
携帯端末装置で受信する受信ステップと、を含み、
前記判定ステップは、
前記店舗
の来店者数を少なくとも含む変動情報と、
前記店舗の従業員によって前記携帯端末装置に入力された前記所定の商品
の数を少なくとも含む商品情報とを取得し、前記変動情報及び前記商品情報に基づいて、前記値引き率を判定し、
前記各ステップを一又は複数のプロセッサー
が実行する情報処理方法。
【請求項8】
請求項
7に記載の情報処理方法の各ステップを一又は複数のプロセッサーに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理システム、情報処理定方法、及びプログラムに関する。
【背景技術】
【0002】
インターネットにおける電子商取引や広告において、膨大な情報のなかから、ユーザーの嗜好に合わせた所謂推奨情報を抽出して、ユーザーが使用する端末装置に表示する手法が知られている。前記推奨情報は、レコメンド情報とも称されており、例えば、ユーザーの嗜好に合致するであろう推奨されるべき推奨商品を含む商品情報が該当する。前記推奨情報は、例えば、ユーザーがWEBサイトで商品を購入した履歴情報(商品購入履歴)や商品紹介ページを閲覧した履歴情報(商品閲覧履歴)などの行動履歴に基づいて特定されるものである。前記行動履歴を分析し、所定のアルゴリズムに基づいてユーザーの嗜好に合わせた前記推奨情報を特定して提示する機能はレコメンド機能と称されており、近年多用されている。
【0003】
従来、前記レコメンド機能を備えるレコメンド装置が提案されている(特許文献1参照)。前記レコメンド装置は、小売店などの店舗において従業員が使用するタブレットなどに、顧客(来店者)の嗜好に合わせた推奨情報を表示する。
【0004】
また、近年、商品の内容や価格を示すバーコードやQRコード(登録商標)などの情報コードを利用した決済システムが提案されている(特許文献2参照)。店舗を利用する顧客の携帯端末(例えばスマートフォン)には、商品に付与された情報コードを読み取るコード読取機能が搭載されている。前記決済システムによると、顧客は、携帯端末を用いて、商品のパッケージなどに付与されている前記情報コードを読み取ってから商品を買い物かごに入れ、その後、読み取った情報コードに含まれる商品金額に対する決済を行う。商品金額の支払いは、例えば、携帯端末と通信可能なレジスターで行うことができ、或いは、携帯端末に登録済みの電子マネーによる決済、或いは、オンラインによるクレジット決済などを利用できる。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2017-215667号公報
【文献】特開2015-185089号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、小売店などの店舗においては、取り扱っている複数種類の商品ごとに商品状況が異なるため、顧客の嗜好だけで決定される推奨情報を提示する従来のレコメンド機能では、商品状況に応じて店舗側(販売者)が販売したい商品を顧客に提示することができない場合がある。例えば、或る商品Aと、それに類似する商品Bとを取り扱う店舗において、商品Bの在庫数が商品Aよりも多い場合、店舗側は商品Bを優先的に販売したいのであるが、従来のレコメンド機能では、推奨情報として商品Bを優先して顧客に提示することはできない。特に、生鮮食品や惣菜類などの調理済み食品(加工食品)のような商品寿命の短い商品を取り扱うスーパーマーケットなどでは、一日において商品状況が刻々と変化するため、商品状況を加味した推奨情報の提案が望まれている。
【0007】
本発明の目的は、商品状況に応じた推奨情報を特定することにより、当該推奨情報を受けたユーザーは、自分の嗜好に合致した商品情報をいち早く入手することができ、また、店舗側は、優先的に販売したい商品の購買率をアップさせることができる推奨情報特定装置、推奨情報特定システム、推奨情報特定方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【0008】
本発明の一の局面に係る推奨情報特定装置は、店舗で提供される商品に対するユーザーの行動履歴と、店舗で提供される複数の商品の販売に関して予め定められた優先順位とに基づいて、前記複数の商品に関する複数の商品情報から前記ユーザーに応じた推奨商品を含む推奨情報を特定する推奨情報特定部を備える。
【0009】
本発明の推奨情報特定装置は、前記優先順位を機械学習により決定するよう構成された順位決定部を更に備える。前記順位決定部は、前記優先順位に変動を来す変動情報を取得する変動情報取得部と、前記変動情報取得部によって取得された前記変動情報に基づいて、前記優先順位を学習する順位学習部と、を有する。
【0010】
本発明の他の局面に係る推奨情報特定システムは、優先順位取得部と、行動履歴取得部と、推奨情報特定部と、を備える。前記優先順位取得部は、店舗で提供される複数の商品の販売に関する優先順位を記憶する優先順位記憶部から前記優先順位を取得する。前記行動履歴取得部は、店舗で提供される商品に対するユーザーの行動履歴を記憶する行動履歴記憶部から前記行動履歴を取得する。前記推奨情報特定部は、前記行動履歴取得部によって取得された前記行動履歴と、前記優先順位取得部によって取得された前記優先順位とに基づいて、前記複数の商品情報から前記ユーザーに応じた推奨商品を含む推奨情報を特定する。
【0011】
本発明の他の局面に係る推奨情報特定方法は、店舗で提供される商品に対するユーザーの行動履歴を取得する行動履歴取得ステップと、取得された前記行動履歴と、店舗で提供される複数の商品の販売に関して予め定められた優先順位とに基づいて、前記複数の商品に関する複数の商品情報から前記ユーザーに応じた推奨商品を含む推奨情報を特定する推奨情報特定ステップと、を備える。
【0012】
なお、本発明は、前記推奨情報特定方法の各ステップをコンピュータに実行させるためのプログラム、又は、このようなプログラムを非一時的に記録したコンピュータ読み取り可能な記録媒体として捉えることもできる。
【発明の効果】
【0013】
本発明によれば、商品状況に応じた推奨情報を特定することにより、当該推奨情報を提示されたユーザーは、自分の嗜好に合致した商品情報をいち早く入手することができ、また、店舗側(販売者)は、優先的に販売したい商品の購買率をアップさせることができる。
【0014】
また、本発明によれば、変動情報取得部及び順位学習部を含む順位決定部を備えることにより、前記優先順位に変動を来す変動情報に基づいて、複数の商品の販売に関する優先順位が、順位学習部によって学習される。これにより、店舗において商品状況が刻々と変動する場合であっても、その変動に応じて決定された優先順位を用いて推奨情報が特定されるため、その結果、当該推奨情報を提示されたユーザーは、自分の嗜好に合致した商品情報をいち早く入手することができ、店舗側(販売者)は、リアルタイムに優先的に販売したい商品の購買率をアップさせることができる。
【図面の簡単な説明】
【0015】
【
図1】
図1は、本発明の実施形態に係る情報処理システムの構成を示す図である。
【
図2】
図2は、情報処理システムを構成する携帯端末で表示される画面の一例を示す図である。
【
図3】
図3は、情報処理システムを構成する各装置の構成を示すブロック図である。
【
図4】
図4は、情報処理システムを構成するサーバー装置の順位決定部の構成を示すブロック図である。
【
図5】
図5は、情報処理システムを構成するサーバー装置の値引き判定部の構成を示すブロック図である。
【
図6】
図6は、店舗が取り扱う各商品の順位を示す図である。
【
図7】
図7は、情報処理システムで実行されるレコメンド処理の手順の一例を示すフローチャートである。
【
図8】
図8は、抽出された5つの候補の商品が優先順位1位から5位の商品である場合の各係数及びレコメンド評価値を例示している。
【
図9】
図9は、情報処理システムの学習部で実行される学習動作の一例を示すフローチャートである。
【発明を実施するための形態】
【0016】
以下、適宜図面を参照して本発明の実施形態について説明する。なお、以下に説明される実施形態は本発明を具体化した一例にすぎず、本発明の技術的範囲を限定するものではない。
【0017】
[情報処理システム100]
図1に示すように、本発明の実施形態に係る情報処理システム100(本発明の推奨情報特定システム)は、サーバー装置11(本発明の推奨情報特定装置の一例)、入店用のゲート装置12、退店用のゲート装置13、セルフタイプのレジスター14、利用者端末15(本発明の端末装置の一例)、及び、店舗200の従業員が使用する従業員端末16を含む。ゲート装置12、ゲート装置13、レジスター14は、いずれも、一つであってもよく、また、複数であってもよい。本実施形態では、例えば、多種多様な商品を取り扱っているスーパーマーケットなどの店舗200に情報処理システム100が導入される例について説明する。もちろん、情報処理システム100が導入される店舗200はスーパーマーケットに限られず、複数の商品を取り扱っている実在の小売店であればよく、また、インターネット上の仮想店舗であってもよい。
【0018】
ゲート装置12は、店舗200の入口付近に設置されており、ゲート装置13は、店舗200の出口付近に設置されている。利用者端末15は、店舗200内において、店舗200に陳列されている商品の購入の際に店舗200に入店した利用者(ユーザー)が所持して使用する端末装置であり、例えば、スマートフォンや携帯電話、タブレット端末などの携帯端末である。従業員端末16は、店舗200の従業員が使用する端末装置であり、例えば、ノートパソコンや、スマートフォン及びタブレット端末などの携帯端末である。
【0019】
以下、
図1及び
図2を参照して、利用者が店舗200に来店してから商品を購入して退店するまでの一連の流れを例示する。
【0020】
先ず、店舗200に来店した利用者は、利用者端末15を所持した状態で、入口から入店用のゲート装置12に近づく。利用者がゲート装置12に近づくと、利用者端末15は、Bluetooth(登録商標)やFeliCa(登録商標)などに代表される近距離無線通信によってゲート装置12と通信する。このとき、利用者端末15に記憶されている利用者識別情報(ID番号、氏名、性別、年齢など)がゲート装置12に送信される。前記利用者識別情報は、店舗200の利用者を識別するための情報である。前記利用者識別情報は、店舗200に設置される無線LAN(店内LAN)などの通信網N1を通じてゲート装置12からサーバー装置11に転送される。これにより、サーバー装置11は、事前に登録されている利用者が来店したことを認識する。なお、利用者端末15内に、店舗200における利用者の購入履歴情報が含まれている場合は、前記購入履歴情報もゲート装置12に送信されて、通信網N1を通じてサーバー装置11に転送される。ここで、前記購入履歴情報は、利用者が店舗200において過去に購入した商品の履歴情報である。
【0021】
利用者端末15には、商品に付された情報コード(バーコードやQRコードなど)をスキャンしながら買い物を行うシステムに用いられる買い物アプリケーションが予めインストールされている。利用者端末15がゲート装置12と通信すると、利用者端末15は自動的に前記買い物アプリケーションを起動する。このとき、利用者端末15の操作表示部22(
図3参照)には、例えば、
図2(A)に示す画面が表示される。これにより、利用者は、店舗200内で、前記買い物アプリケーションを用いて、商品の購入操作を行うことが可能となる。
【0022】
利用者は、店舗200内を買い回りしながら、購入を希望する商品(購入対象の商品)を陳列棚から手に取り、その商品に付された情報コードを、利用者端末15の撮像部24(
図3参照)により撮像(スキャン)する。利用者端末15の前記買い物アプリケーションは、前記情報コードに含まれる前記商品の価格情報(商品名、金額、商品IDを含む情報)を読み取って、利用者端末15の操作表示部22(
図3参照)に表示する。例えば、利用者が3点の商品a,b,cをスキャンした場合、利用者端末15には、購入対象として選択された3点の商品a,b,cの前記価格情報を含む
図2(B)に示す画面が表示される。読み取られた前記価格情報は、利用者端末15に保存されるとともに、通信網N1を通じて利用者端末15からサーバー装置11に送信されて、サーバー装置11にも保存される。
【0023】
サーバー装置11は、ゲート装置12から転送されてきた前記利用者識別情報に対応する購入履歴情報(本発明の行動履歴の一例)を記憶部32(顧客情報格納部321)から読み出して、後述のレコメンド処理(
図7参照)を実行する。このレコメンド処理は、サーバー装置11内で管理されている全ての商品(店舗200で販売可能な商品)に関する複数の商品情報から、利用者に応じたレコメンド情報(本発明の推奨情報の一例)を特定する処理である。具体的には、利用者の嗜好に合致するであろう商品情報を所定のアルゴリズムに基づいて抽出し、その抽出された商品情報を前記レコメンド情報として特定する。そして、特定された前記レコメンド情報は、通信網N1を通じて利用者端末15に送信される。利用者端末15では、買い回り中の利用者が容易に気づくことができるように、利用者端末15の操作表示部22(
図3参照)に前記レコメンド情報がポップアップ形式などによって表示される。
【0024】
読み取った商品の代金の支払い(決済)をする場合、利用者は、レジスター14に行き、レジスター14に設けられた通信部に利用者端末15を翳した状態で、「支払い」(
図2(B)参照)を選択する。これにより、利用者端末15は、前記近距離無線を通じてレジスター14と通信し、利用者端末15から前記利用者識別情報がレジスター14に送信される。また、レジスター14に送信された前記利用者識別情報は、通信網N1を通じてレジスター14からサーバー装置11に転送される。その後、サーバー装置11において、前記利用者識別情報に対応する決済対象の前記価格情報が抽出され、レジスター14に転送される。そして、レジスター14において、利用者が指定する決済方法に基づいて、前記価格情報が示す金額の決済処理が実行される。前記決済処理が完了すると、利用者端末15には、決済が完了したことを示す画面が表示される。
【0025】
なお、レジスター14を利用せずに、利用者端末15とサーバー装置11との間でオンライン状態で決算処理を行ってもよい。当該決済処理は以下の要領で行われる。例えば、
図2(B)の画面において利用者が「支払い」を選択すると、決済処理が開始される。例えば、利用者端末15は、決済対象である商品a,b,cの前記価格情報を前記利用者識別情報とともにサーバー装置11に送信する。サーバー装置11は、前記価格情報に基づいて、インターネットを通じて接続された決済サーバー(不図示)に決済要求を送信する。前記決済サーバーは、決済事業者に応じた決済システムにより決済処理を実行する。その後、決済処理が実行されたことがサーバー装置11を介して利用者端末15に送信され、その旨を示すメッセージが操作表示部22(
図3参照)に表示される。
【0026】
前記決済処理が完了すると、レジスター14は、決済が完了した購入済み商品の情報をサーバー装置11に送信する。サーバー装置11は、レジスター14から受け取った情報に基づいて、サーバー装置11で管理している商品の在庫数などを更新する。また、サーバー装置11は、レジスター14から受け取った実際の購入情報に基づいて、利用者毎に記憶管理している購入履歴情報を更新する。
【0027】
利用者は、店舗200を退店する場合、退店用のゲート装置13に近づく。利用者がゲート装置13に近づくと、利用者端末15は、近距離無線通信によってゲート装置13と通信する。このとき、利用者の前記利用者識別情報とともに、買い物が終了したことを示すフラグ情報がゲート装置13に送信され、前記識別情報及び前記フラグ情報が、通信網N1を介してゲート装置13からサーバー装置11に転送される。これにより、サーバー装置11では、不正なく買い物が終了したこと、及び、利用者が退店したことを認識する。
【0028】
以上のようにして、利用者は店舗200において、前記買い物アプリケーションを用いての買い物を行うことができる。
【0029】
上述したように、情報処理システム100では、利用者に応じた前記レコメンド情報を特定するための前記レコメンド処理が実行されて、特定された前記レコメンド情報が利用者端末15に表示される。
【0030】
以下、
図3を参照して、前記レコメンド処理を実現するための情報処理システム100の具体的な構成について説明する。
【0031】
[利用者端末15]
図3に示すように、利用者端末15は、制御部21、操作表示部22、記憶部23、撮像部24、通信I/F25などを備える。利用者端末15は、例えば、店舗200の利用者が所持する携帯端末であり、例えばスマートフォン、携帯電話、又はタブレット端末である。利用者端末15は、店舗200から貸与される携帯端末であってもよく、また、買い物カートに設置されるカート端末であってもよい。
【0032】
撮像部24は、被写体の画像を撮像してデジタル画像データとして出力するデジタルカメラである。店舗200内で買い物をする利用者は、購入対象の商品に付されている前記情報コードを撮像部24で撮像する。撮像された前記情報コードの画像が後述の読取処理部211によって読取処理されることにより、購入対象の商品の価格情報(商品名、金額、商品IDなど)が得られる。
【0033】
通信I/F25は、利用者端末15を有線又は無線で通信網N1に接続し、通信網N1を介してサーバー装置11などの外部機器との間で所定の通信プロトコルに従ったデータ通信を実行するための通信インターフェースである。また、通信I/F25は、利用者端末15を無線(例えば、Bluetoothなどの近距離無線)を通じてゲート装置12,13やレジスター14などの装置との間でデータ通信を可能にする。
【0034】
操作表示部22は、各種の情報を表示する液晶ディスプレイ又は有機ELディスプレイなどの表示部と、利用者の操作を受け付けるマウス、キーボード、又はタッチパネルなどの操作部とを備えるユーザーインターフェースである。操作表示部22の前記表示部に、利用者に応じた前記レコメンド情報が表示される。
【0035】
記憶部23は、各種の情報を記憶するフラッシュメモリなどの不揮発性の記憶媒体である。記憶部23には、制御部21に各種処理を実行させるための制御プログラムが記憶されている。
【0036】
また、記憶部23には、利用者を識別するための利用者識別情報が記憶されている。前記利用者識別情報は、利用者を特定するための情報であり、ID番号、氏名、性別、年齢などである。前記利用者識別情報は、店舗200に設けられたサーバー装置11に事前に登録されており、サーバー装置11内の記憶部32(顧客情報格納部321)に購入履歴情報とともに記憶管理されている。
【0037】
また、記憶部23には、後述する読取処理部211によって読み取られた購入対象の商品の前記価格情報が格納される。
【0038】
制御部21は、CPU、ROM、及びRAMなどの制御機器を有する。前記CPUは、各種の演算処理を実行するプロセッサーである。前記ROMは、前記CPUに各種の処理を実行させるためのBIOS及びOSなどの制御プログラムが予め記憶された不揮発性の記憶部である。前記RAMは、各種の情報を記憶する揮発性又は不揮発性の記憶部であり、前記CPUが実行する各種の処理の一時記憶メモリ(作業領域)として使用される。そして、制御部21は、前記ROM又は記憶部23に予め記憶された各種の制御プログラムを前記CPUで実行することにより利用者端末15を制御する。
【0039】
具体的に、制御部21は、
図3に示すように、読取処理部211、表示処理部212、通知処理部213、行動結果送信部214などの各種の処理部を含む。なお、制御部21は、前記CPUで前記制御プログラムに従った各種の処理を実行することによって前記各種の処理部として機能する。また、制御部21に含まれる一部又は全部の処理部が電子回路で構成されていてもよい。なお、前記制御プログラムは、複数のプロセッサーを前記各種の処理部として機能させるためのプログラムであってもよい。
【0040】
読取処理部211は、撮像部24により撮像された前記情報コードの画像データに基づいて、前記情報コードに含まれる商品の前記価格情報(商品名、金額、商品IDなど)を読み取る。以下、説明の便宜のため、購入対象として読み取られた前記価格情報を、購入対象情報という。読み取られた前記購入対象情報は、キャンセルされるか、或いは、購入対象の商品の決済が完了するまで、記憶部23に格納される。
【0041】
表示処理部212は、サーバー装置11から送信されてくる前記レコメンド情報を操作表示部22の表示部に表示させる。例えば、表示処理部212は、前記レコメンド情報をポップアップ形式で操作表示部22の表示部に表示する。表示処理部212は、前記レコメンド情報に商品画像や商品名などが含まれている場合は、これらの情報をポップアップ形式で操作表示部22の表示部に表示する。前記商品画像や商品名は、例えば、推奨されている商品の更に詳しい詳細情報(例えば、商品説明、商品価格、店舗200における商品の陳列場所)が格納されているアドレスにリンクされており、利用者が前記商品画像や商品名を表示画面においてタッチ操作すると、表示処理部212は、前記アドレスに記憶されている詳細情報を読み出して、前記表示部に表示する。また、表示処理部212は、前記レコメンド情報に商品の写真画像や説明などを含むWEBサイトのURLが含まれている場合は、前記URLを操作表示部22の表示部に表示する。この場合、利用者が前記URLをタッチ操作すると、表示処理部212は、前記URLにアクセスして、前記WEBサイトを前記表示部に表示する。
【0042】
通知処理部213は、サーバー装置11、ゲート装置12,13、レジスター14に各種情報を送信する。例えば、通知処理部213は、利用者が店舗200に入店する際にゲート装置12に前記利用者識別情報などを送信し、利用者が店舗200から退店する際にゲート装置13に前記利用者識別情報などを送信する。また、通知処理部213は、買い回り中に読み取られた前記購入対象情報をサーバー装置11に送信する。
【0043】
行動結果送信部214は、操作表示部22の表示部に表示された前記レコメンド情報に対して、利用者が行動をしたかどうかを示す行動結果をサーバー装置11の順位決定部33(
図3参照)に送信する。前記行動としては、例えば、操作表示部22の表示部に表示された前記レコメンド情報を閲覧する行動(閲覧行動)、読取処理部211によって前記レコメンド情報が示す商品の情報コードの商品情報を読み取る行動(読取行動)、或いは、前記表示部に表示された前記レコメンド情報が示す商品を購入する行動(購入行動)、などが挙げられる。前記行動結果は、前記各行動が起きたことを示す肯定結果、又は前記各行動が起きなかったことを示す否定結果を含む。
【0044】
制御部21は、操作表示部22の表示部に表示された前記レコメンド情報に対して利用者が行動を起こしたかどうかを判定する処理を行う。かかる判定処理を行う制御部21は、前記レコメンド情報に対して行動したか否かを判定する行動判定部として捉えることができる。
【0045】
例えば、制御部21は、操作表示部22の表示部に前記レコメンド情報が表示されてから一定時間(タイムアップ時間)が経過するまでの間に前記商品画像や前記商品名がタッチ操作されたか否か、或いは、前記URLがタッチ操作されたか否かを判定する処理を行う。この場合、前記一定時間内にタッチ操作されたと判定されると、行動結果送信部214は、利用者端末15においてその利用者が前記レコメンド情報を閲覧したことを示す肯定結果(行動結果)の情報をサーバー装置11の順位決定部33に送信する。
【0046】
また、制御部21は、前記一定時間が経過するまでの間、又は決済処理が行われるまでの間に、読取処理部211によって前記レコメンド情報が示す商品の情報コードの商品情報が読み取られたか否かを判定する処理を行う。この場合、前記レコメンド情報が示す商品の情報コードの商品情報が読み取られたと判定されると、行動結果送信部214は、利用者端末15の利用者が、前記レコメンド情報が示す商品を購入予定であることを示す肯定結果(行動結果)の情報をサーバー装置11の順位決定部33に送信する。
【0047】
また、制御部21は、前記レコメンド情報が示す商品を購入したか否かを判定する処理を行う。この場合、前記決済処理された購入後商品のなかに前記レコメンド情報が示す商品が含まれている場合に、行動結果送信部214は、前記レコメンド情報が示す商品が購入されたことを示す肯定結果(行動結果)の情報をサーバー装置11の順位決定部33に送信する。
【0048】
なお、行動結果送信部214は、前記一定時間に前記閲覧行動又は前記読取行動が行われなかった場合、レジスター14で利用者が決済処理を行うまでの間に前記読取行動が行われなかった場合、決済処理において前記購入行動が行われなかった場合は、前記各行動が起きなかったことを示す否定結果(行動結果)の情報をサーバー装置11の順位決定部33に送信する。
【0049】
[サーバー装置11]
サーバー装置11は、制御部31、記憶部32、順位決定部33(本発明の順位決定部の一例)、値引き判定部34(本発明の値引き判定部の一例)、通信I/F35などを備えるサーバコンピュータである。なお、サーバー装置11は、1台のコンピュータに限らず、複数台のコンピュータが協働して動作するコンピュータシステムであってもよい。また、サーバー装置11で実行される各種の処理は、一又は複数のプロセッサーによって分散して実行されてもよい。
【0050】
通信I/F35は、サーバー装置11を有線又は無線で通信網N1に接続し、通信網N1を介して利用者端末15やゲート装置12,13、レジスター14などの外部機器との間で所定の通信プロトコルに従ったデータ通信を実行するための通信インターフェースである。
【0051】
記憶部32は、各種の情報を記憶する半導体メモリ、HDD(Hard Disk Drive)又はSSD(Solid State Drive)などを含む不揮発性の記憶部である。なお、本実施形態では、記憶部32がサーバー装置11に設けられた構成を例示するが、例えば、記憶部32内の各種情報の一部又は全部が、通信網N1やインターネットなどを通じてサーバー装置11とデータ通信可能な他のサーバー装置や記憶装置などの外部装置に記憶されていてもよい。この場合、サーバー装置11は、必要に応じて、前記外部装置から必要な情報を読み出したり、情報を前記外部装置に記憶させる。
【0052】
記憶部32には、制御部31に各種制御処理や、
図7に示す後述のレコメンド処理(レコメンド抽出処理、レコメンド選定処理)を実行させるための制御プログラムが記憶されている。例えば、前記制御プログラムは、CD又はDVDなどのコンピュータ読取可能な記録媒体に非一時的に記録されており、サーバー装置11が備えるCDドライブ又はDVDドライブなどの読取装置(不図示)で読み取られて記憶部32に記憶される。
【0053】
記憶部32は、複数の記憶領域に分けられている。具体的には、記憶部32には、顧客情報格納部321(本発明の行動履歴記憶部の一例)、商品情報格納部322、購入予定商品格納部323、優先順位格納部324(本発明の優先順位記憶部の一例)が設けられている。
【0054】
顧客情報格納部321には、事前に登録された利用者毎の情報(以下、顧客情報という。)が記憶されている。前記顧客情報は、利用者のID番号や氏名、性別、年齢などを含む前記利用者識別情報のほかに、利用者が過去に店舗200で購入した商品に関する購入履歴情報を含む。つまり、前記購入履歴情報は、店舗200で販売されている商品に対する利用者の行動履歴を示す情報である。
【0055】
前記顧客情報は、例えば、利用者が店舗200の会員登録を行ったときに記憶部32の顧客情報格納部321に前記利用者識別情報として記憶(登録)される。その後、利用者が店舗200内において商品を購入すると、その購入した商品に関する商品情報及び購入日などを含む購入履歴情報が、購入した利用者の前記利用者識別情報に紐付けられた状態で顧客情報格納部321に上書き記憶される。つまり、前記顧客情報が更新される。なお、前記購入履歴情報は、後述するレコメンド抽出処理部311によるレコメンド抽出処理に用いられる。
【0056】
商品情報格納部322には、店舗200において販売可能な全ての商品に関する商品情報が記憶されている。前記商品情報は、商品を識別可能な情報であって、例えば、商品名、商品の金額、及び商品ID(JANコードなど)を含む価格情報を含む。また、前記商品情報は、商品の種類、商品の寿命(賞味期限や消費期限、使用期限など)、値引きの有無や値引き率、商品の陳列場所、その商品の写真や説明などを含むWEBサイトのURLなどの情報であって、店舗200での買い物時に利用者の利便が良好となる情報を含んでいる。また、商品が惣菜類などの調理済み食品(加工食品)である場合は、その調理済み食品の加工日時である調理時刻(調理日、調理予定時刻を含む)や調理後の状態(加工状態)を示す情報が前記商品情報に含まれていてもよい。また、商品が、例えば、販促キャンペーンの対象である場合は、その販促キャンペーンの対象か否かを判別するための情報が前記商品情報に含まれていてもよい。更にまた、前記商品情報は、店舗200の販売者のみが把握すべき情報、例えば、商品の利益率、廃棄リスクの程度、在庫数などを含んでもよい。
【0057】
また、商品情報格納部322には、商品ごとに、過去の販売実績、及び過去の廃棄履歴が記憶されている。前記過去の販売実績とは、過去に当該商品を販売したときの日時、価格、販売数、値引きの有無、値引き率などを含む。また、前記過去の廃棄履歴とは、売れ残った当該商品の廃棄処分の有無、過去に行われた廃棄処分の日時、廃棄処分した量などを含む。
【0058】
商品情報格納部322に記憶されている前記商品情報は、変化が生じるたびに更新される。例えば、商品の在庫数は、利用者が商品の支払い(決済)をした場合に、サーバー装置11の制御部31によって即座に更新される。また、商品の価格や在庫数、値引きの有無、値引き率、調理時刻、販促キャンペーンの有無、廃棄リスク、入荷による在庫数の増加などは、従業員端末16から従業員によって入力される情報に基づいて制御部31によって更新される。
【0059】
購入予定商品格納部323には、読取処理部211による読取処理が行われるたびに利用者端末15から順次送信されてくる前記購入対象情報が一時的に記憶される。この購入予定商品格納部323は、仮想的な買い物かごとして機能する。前記購入対象情報は、キャンセルされるか、或いは購入対象の商品の決済が完了するまで、購入予定商品格納部323に格納される。
【0060】
優先順位格納部324には、複数の商品情報とともに前記複数の商品の販売に関する優先順位が記憶されている。
図6は、複数の商品それぞれの前記優先順位を示す順位リストTB1である。順位リストTB1には、商品情報格納部322に格納されている全ての商品のうち、店舗200側(販売者)が優先して販売することを望む複数の商品(以下、優先商品という。)が含まれており、各優先商品それぞれに対して、販売に関する優先順位が定められている。前記優先順位は、販売を促進したい商品の順位を示すものであり、その順位が1位の商品は、店舗200において最も販売を促進したい商品である。商品情報格納部322に格納されている全ての商品それぞれについて、前記優先順位が定められていてもよい。
【0061】
順位リストTB1における優先商品各々の優先順位は、その優先順位に変動を来す変動要素に関する変動情報に基づいて決定される。前記変動情報は、例えば、前記優先商品の価格、種類、寿命、値引きの有無、値引き率、商品が惣菜類などの調理済み食品である場合はその調理時刻、前記販促キャンペーンの対象か否か、利益率、廃棄リスクの程度、在庫数、過去の販売実績、過去の廃棄履歴などの情報である。また、前記変動情報は、前記優先商品が惣菜類に代表される「焼き鳥」などの調理済み食品である場合は、調理日、調理時刻、調理後の状態を含む。また、前記変動情報は、店舗200の所在地における気温、湿度、気圧、及び天候を含む。また、前記変動情報は、現時刻、店舗200の当日の来店者数や来店者履歴を含む。前記来店者履歴は、過去の月別又は曜日別の来店者数を示す統計情報である。また、前記来店者数は、前記来店者履歴から予測される来店者見込み数を含む。このような変動情報は、商品の状態や利用者の購買意欲などを含む、商品をとりまく状況(商品状況)に変動を来す情報であるといえる。なお、前記優先商品の優先順位を決定するにあたり、その決定処理に用いられる前記変動情報は、上述した具体的な複数の変動要素のうちいずれか一つ以上の情報を含むものであればよい。
【0062】
前記優先順位は、前記商品状況や店舗200側(販売者)の様々な要因などによって変動する。例えば、在庫数が多い商品は優先順位が上位に定められ、少ない商品は下位に定められる。これは、在庫数が多いほど売れ残りが生じ易いことに起因する。また、商品寿命が短い商品は上位に定められ、長い場合は下位に定められる。利益率が高い商品は上位に定められ、低い商品は下位に定められる。廃棄リスクが高い商品は上位に定められ、低い商品は下位に定められる。また、商品の種類によっても前記優先順位は変動し、例えば、調理の材料となる食材・食料品や食品(調理済み食品を含む)、飲料などは上位に定められ、洗剤や文具などは下位に定められる。また、惣菜類などの調理済み食品にあっても、調理時刻が何時であるか、或いはその調理後の状態によっても前記優先順位は変動し、調理後の経過時間が長い場合や調理時刻までの待ち時間が長い場合、調理後の状態が悪い場合は上位に定められ、前記経過時間が短い場合や前記待ち時間が短い場合、調理後の状態が良好な場合は下位に定められる。
【0063】
また、商品の価格や、値引きの有無、値引き率、過去の販売実績、過去の廃棄履歴、店舗200の所在地における気温、湿度、気圧、及び天候、来店者数、来店者履歴なども前記優先順位を変動させる要因である。また、複数の変動情報が存在する場合、上述した複数の変動情報が相互に影響して優先順位が変動することもある。例えば、天候の良い日は多くの来店者が見込まれるため、この場合は、在庫数による影響よりも利益率の影響を重視して各優先商品の順位が定められる。また、天候が良くても気温が高い場合は、商品の種類を重視して順位が定められ、例えば、料理済み食品であれば、過去の販売実績などから売れにくいと推定される加熱済み食品や保温状態の調理済み食品が上位に定められ、売れ筋と推定される冷菜などが下位に定められる。
【0064】
本実施形態では、前記優先順位は、上述した複数の変動情報に基づいて、後述する順位決定部33において決定又は更新される。なお、順位決定部33については後述する。
【0065】
制御部31は、CPU、ROM、及びRAMなどの制御機器を有する。前記CPUは、各種の演算処理を実行するプロセッサーである。前記ROMは、前記CPUに各種の演算処理を実行させるためのBIOS及びOSなどの制御プログラムが予め記憶される不揮発性の記憶部である。前記RAMは、各種の情報を記憶する揮発性又は不揮発性の記憶部であり、前記CPUが実行する各種の処理の一時記憶メモリ(作業領域)として使用される。そして、制御部31は、前記ROM又は記憶部32に予め記憶された各種の制御プログラムを前記CPUで実行することによりサーバー装置11を制御する。
【0066】
具体的に、制御部31は、
図3に示すように、レコメンド抽出処理部311、レコメンド選定処理部312、レコメンド情報送信部313(本発明の推奨情報出力部の一例)、情報取得部314(本発明の優先順位取得部、行動履歴取得部の一例)、などの各種の処理部を含む。ここで、レコメンド抽出処理部311及びレコメンド選定処理部312は、本発明の推奨情報特定部の一例である。なお、制御部31は、前記CPUで前記制御プログラムに従った各種の処理を実行することによって前記各種の処理部として機能する。また、制御部31に含まれる一部又は全部の処理部が電子回路で構成されていてもよい。なお、前記制御プログラムは、複数のプロセッサーを前記各種の処理部として機能させるためのプログラムであってもよい。
【0067】
レコメンド抽出処理部311は、顧客情報格納部321に格納されている利用者の購入履歴情報に基づいて、利用者の嗜好に合ったレコメンド情報を複数の商品情報から抽出するレコメンド抽出処理を実行する。前記レコメンド抽出処理を実行するための制御プログラムとして、記憶部32には、前記購入履歴情報を用いる従来周知の所定のレコメンドアルゴリズムを用いて前記レコメンド情報を抽出するレコメンドエンジン(レコメンドプログラム)が格納されている。レコメンド抽出処理部311は、前記レコメンドエンジンを用いて、複数の商品情報から予め設定された2以上の候補数の推奨商品の候補(推奨商品候補、本発明の候補情報に相当)を抽出する。つまり、レコメンド抽出処理部311は、記憶部32に記憶された前記レコメンドエンジンを用いて、所定のアルゴリズムに基づいて前記レコメンド抽出処理を実行する。
【0068】
レコメンド選定処理部312は、レコメンド抽出処理部311によって抽出された複数の前記推奨商品候補から、さらに特定の推奨商品候補を選定するレコメンド選定処理を実行する。前記レコメンド選定処理を実行するための制御プログラムが記憶部32に記憶されている。本実施形態では、レコメンド選定処理部312は、レコメンド抽出処理部311によって抽出された複数の前記推奨商品候補から、優先順位格納部324に記憶されている前記優先商品の優先順位に基づいて特定される前記特定の推奨商品候補を選定する。
【0069】
なお、本実施形態では、レコメンド抽出処理部311及びレコメンド選定処理部312によって本発明の推奨情報特定部が実現される構成について例示するが、本発明はこのような構成に限られない。例えば、前記レコメンド抽出処理が実行される際に、顧客情報格納部321に格納されている利用者の購入履歴情報と優先順位格納部324に記憶されている前記優先商品の優先順位との両方に基づいて前記特定のレコメンド情報を抽出する構成であっても適用可能である。この場合、上述した従来周知の所定のレコメンドアルゴリズムを用いるレコメンドエンジンに、前記レコメンド選定処理を実現するプログラムが組み込まれる。
【0070】
レコメンド情報送信部313は、レコメンド選定処理部312によって選定された前記特定の推奨商品候補の商品情報を含むレコメンド情報を、通信網N1を通じて利用者端末15に出力する。利用者端末15は、送信されてきた前記レコメンド情報を受信すると、利用者端末15の操作表示部22に当該レコメンド情報を表示する。また、レコメンド情報送信部313は、前記レコメンド情報を従業員端末16にも送信する。
【0071】
情報取得部314は、店舗200で提供される複数の商品の販売に関する前記優先順位を優先順位格納部324から取得する。具体的には、情報取得部314は、優先順位格納部324から必要な商品の優先順位を取得する。更に詳細には、レコメンド抽出処理部311による前記レコメンド抽出処理によって、利用者の嗜好に合致すると推定される複数の推奨商品候補の商品情報が選択された場合、情報取得部314は、選択された複数の商品情報の前記優先順位を優先順位格納部324から取得する。取得された前記優先順位は、レコメンド選定処理部312で用いられる。
【0072】
また、情報取得部314は、店舗200で提供される商品に対する利用者の購入履歴情報を顧客情報格納部321から取得する。具体的には、利用者の来店時にゲート装置12から当該利用者の前記利用者識別情報が送られてくると、情報取得部314は、前記利用者識別情報に対応する顧客情報を前記顧客情報格納部321から抽出し、その顧客情報に含まれる前記購入履歴情報を抽出する。取得された購入履歴情報は、レコメンド抽出処理部311に転送される。
【0073】
[順位決定部33]
以下、
図4を参照して、順位決定部33について説明する。順位決定部33は、前記優先順位を機械学習により決定するよう構成された学習装置であり、前記優先順位を決定するための学習モデルを有している。ここで、
図4は、順位決定部33の構成を示すブロック図であり、機械学習アルゴリズムとして強化学習を適用した例を示している。
【0074】
図4に示すように、順位決定部33は、変動情報観測部331(本発明の変動情報取得部の一例)と、行動結果取得部332(本発明の行動結果取得部の一例)と、学習部40(本発明の順位学習部の一例)と、データ更新処理部333と、を備える。順位決定部33は、汎用的なCPUを用いることができるが、より高速な演算処理が可能にするために、例えば、GPGPU(General-Purpose computing on Graphics Processing Units)や大規模PCクラスター等を用いることが望ましい。
【0075】
変動情報観測部331は、
図6の順位リストTB1に示す優先商品それぞれの優先順位を決定するために用いられる前記変動情報を取得する。前記変動情報が、商品の価格、商品の種類、商品の寿命(賞味期限や消費期限、使用期限など)、値引きの有無や値引き率、調理済み食品の調理時刻又は調理予定時刻、販促キャンペーンの対象か否かの判別情報、商品の利益率、廃棄リスクの程度、在庫数、過去の販売実績、過去の廃棄履歴である場合は、変動情報観測部331は、商品情報格納部322内の商品情報を監視し、常にリアルタイムな情報を商品情報格納部322から取得する。
【0076】
また、前記変動情報が、店舗200の所在地における気温、湿度、気圧である場合は、変動情報観測部331は、店舗200の屋内又は屋外に設けられた温度センサー、湿度センサー、気圧センサーから出力されるセンサー出力値を受け取り、そのセンサー出力値が示すリアルタイムな気温、湿度、気圧を取得する。また、前記変動情報が店舗200周辺の天候である場合は、サーバー装置11とインターネット接続されたに天気情報データベースから制御部31が天候情報をダウンロードし、変動情報観測部331は、制御部31から前記天候情報を受け取る。
【0077】
取得された変動情報は、学習部40の学習に用いられる情報であり、順位決定部33内の図示しない記憶部に記憶される。前記記憶部から学習部40に前記変動情報が入力される。
【0078】
行動結果取得部332は、利用者端末15の行動結果送信部214から送信される前記行動結果の情報を取得する。つまり、行動結果取得部332は、前記レコメンド情報が示す推奨商品を利用者が閲覧又は購入したか否かを示す行動結果(肯定結果、否定結果)を取得する。取得された行動結果の情報は、学習部40の学習に用いられる情報であり、順位決定部33内の図示しない記憶部に記憶される。前記記憶部から学習部40に前記行動結果が入力される。
【0079】
学習部40は、変動情報観測部331によって取得された前記変動情報に基づいて、前記優先順位を学習する。本実施形態では、学習部40は、取得された前記変動情報のみならず、行動結果取得部332によって取得された前記行動結果をも用いて、店舗200側が優先して販売したい商品の前記優先順位を機械学習する。なお、学習部40については後述する。
【0080】
データ更新処理部333は、学習部40が学習した前記優先順位を参照して、優先順位格納部324に記憶されている前記優先順位、詳細には、
図6の順位リストTB1に示す優先商品それぞれの優先順位を学習後の順位に更新する。
【0081】
学習部40は、入力された前記変動情報の集合から、その中にある有用な規則やルール、知識表現、判断基準などを解析によって抽出し、その判断結果を出力するとともに、知識の学習を行う機能を備えている。機械学習には、教師あり学習(Supervised Learning)、教師なし学習(Unsupervised Learning)、強化学習(Reinforcement Learning)などのアルゴリズムがあり、更に、これらの手法を実現するうえで、特徴量そのものの抽出を学習する、「深層学習(ディープラーニング:Deep Learning)」と呼ばれる手法が用いられる。
【0082】
ここで、教師あり学習は、事前に入力されたデータから、その「入力と出力の関係」を学習するアルゴリズムである。入力されるデータには、入力値とともに、そのデータの正解が付与されており、このようなデータを大量に学習部40に与えることで、学習部40は、それらのデータにある特徴を学習し、入力から出力(結果)を推定する。与えられた入出力データ間の関係が学習できれば、その関係性を未知のデータに適用することにより、出力の予想が可能になる。
【0083】
また、教師なし学習は、正解となる出力データを与えられることなく、大量に与えられた入力データから、そのデータの構造、特性、新たな知識などの特徴量を学習するアルゴリズムである。学習する元となるデータに正解が付与されていない点で、教師あり学習とは異なる。
【0084】
また、強化学習は、教師あり学習、教師なし学習のような固定的で明確なデータを元にした学習ではなく、プログラム自体が、与えられた環境(現在の状態)を観測し、連続した一連の行動を評価し、環境に行動が与える相互作用を踏まえて適切な行動、つまり、将来的に得られる報酬を最大にするための行動を自ら学習するアルゴリズムである。代表的な手法としてTD学習やQ学習が知られている。
【0085】
強化学習は、行動が引き起こす結果が未知である。そのため、学習部40の機械学習として強化学習を採用する場合、学習したい各商品の優先順位が全く分かっていない状態から学習がスタートすることになり、初期段階においては、学習によって得られた前記優先順位が店舗200側の望む順位になっていない場合がある。そのため、教師あり学習で事前学習を行い、事前学習した前記優先順位を初期状態として、その後に強化学習を行うことが望ましい。
【0086】
例えば、学習部40における強化学習がQ学習の場合、行動価値関数Q(s,a)の一般的な更新式(行動価値テーブル)は、次の式(1)で表される。
【0087】
【0088】
なお、式(1)中において、stは、時刻tにおける環境を表し、atは、時刻tにおける行動を表す。行動atにより、環境はst+1に変わる。rt+1は、その環境の変化によって貰える報酬である。maxの付いた項は、環境st+1の下で、その時に分かっている最もQ値の高い行動aを選んだ場合のQ値にγを乗じたものになる。また、γは割引率と呼ばれており、0<γ≦1のパラメータである。また、αは、0<α≦1の範囲の学習係数である。Q学習を適用した場合、利用者端末15に表示された前記レコメンド情報を閲覧したり、前記レコメンド情報が示す商品の情報コードを読み取ったり、商品を利用者が購入したりする行動(閲覧行動、読取行動、購入行動)が行動atとなる。
【0089】
図4に示すように、学習部40は、報酬計算部401(本発明の報酬出力部の一例)と、価値関数更新部402(本発明の学習モデル更新部の一例)とを有する。報酬計算部401は、変動情報観測部331によって取得された前記変動情報に基づいて報酬を計算し、出力する。また、価値関数更新部402は、前記変動情報及び報酬計算部401で計算された報酬に基づいて、前記優先順位に関する価値関数を更新する。この価値関数は、学習モデルに対応する。
【0090】
上述したように、変動情報は、前記優先順位に変動を来すものであるが、この変動情報そのものも刻々と変化する。このため、前記変動情報が変化すると、前記優先順位も更新される。変更後の優先順位が適切であるか否かは、閲覧行動、読取行動、購入行動の各行動の行動結果が肯定結果であるか否定結果であるかによって評価できる。このため、例えば、Q学習を適用した場合、行動結果(肯定結果、否定結果)が実質的に式(1)における行動atであり、式(1)で表される行動価値関数Q(s,a)を、行動atを変更するための価値関数として用いる。
【0091】
本実施形態では、報酬計算部401は、前記行動結果が前記レコメンド情報が示す推奨商品を閲覧又は購入したことを示す肯定結果である場合にプラスの報酬を出力し、前記行動結果が前記推奨商品を閲覧及び購入しなかったことを示す否定結果である場合にマイナスの報酬を出力する。出力される報酬の絶対値は、前記行動結果の内容によって異ならせてもよい。例えば、閲覧行動の行動結果に対する報酬が最も低く、購入行動の行動結果に対応する報酬が最も高く設定されていてもよい。また、利用者ごとに報酬に対する重み係数を設定してもよく、例えば、店舗200の利用頻度が高い利用者の行動結果による報酬を重視する場合は、前記報酬に乗じる重み係数を前記利用頻度に比例した数値に設定してもよい。
【0092】
[値引き判定部34]
以下、
図5を参照して、値引き判定部34について説明する。値引き判定部34は、同種類の複数の商品のうち前記優先順位が予め定められた基準順位(本実施形態では10位)よりも低位である低順位商品に対する値引きを実施するか否かを機械学習により判定するよう構成された学習装置である。ここで、
図5は、値引き判定部34の構成を示すブロック図であり、機械学習アルゴリズムとして強化学習を適用した例を示している。なお、値引き判定部34の構成は、判定結果通知部341を除き順位決定部33の構成と同様であるため、以下では、異なる構成についてのみ詳細に説明し、同様の構成については順位決定部33と同じ符号を付し示すことによりその詳細な説明を省略する。
【0093】
なお、本実施形態では、前記値引きは、対象商品の販売価格を更に値下げするのみならず、対象商品の実質的な値引きに相当する行為も含む。例えば、対象商品を購入した場合にクーポン券(金券、割引券)を付与することや、商品と引き換え可能なポイントを付与すること、なども前記値引きに相当する。
【0094】
図5に示すように、値引き判定部34は、変動情報観測部331(本発明の劣化情報取得部の一例)と、行動結果取得部332(本発明の行動結果取得部の一例)と、学習部40(本発明の判定学習部の一例)と、判定結果通知部341と、を備える。つまり、値引き判定部34は、データ更新処理部333に代えて判定結果通知部341が備えられている点で順位決定部33と異なる。
【0095】
例えば、
図6の順位リストTB1において、同じ種類の商品「焼き鳥」が10位(基準順位)以内に2つランクインしており、10位より低位の19位にも存在しているケースについて検討する。例えば、順位が10位以内にランクインしている商品「焼き鳥」については、前記優先順位が高いため、前記レコメンド情報として店舗20を買い回り中の利用者に通知される可能性が高く、利用者によって購入される可能性が他の順位の商品「焼き鳥」よりも高い。一方、前記基準順位よりも低位の19位の商品「焼き鳥」(低順位商品に相当)は、順位が低いため、前記レコメンド情報として利用者に通知される可能性は低い。この場合、現時点では、順位が下位の商品(低順位商品)は店舗200側(販売者)として優先的に販売したい商品でないとしても、前記変動情報の変動内容如何によっては、順位決定部33による順位決定後のランクアップ又はランクダウン(順位変動)を待たずして、売れ行き状況を向上させる必要が生じる場合がある。
【0096】
このため、値引き判定部34では、変動情報観測部331は、上述したように変動情報を取得するものであるが、商品の劣化に変動を来す劣化情報として、前記変動情報を取得する。また、学習部40は、変動情報観測部331によって取得された前記変動情報に基づいて、同種類の複数の商品のうちで前記優先順位が前記基準順位よりも低位の商品(低順位商品)に対する値引きを実施するか否かを機械学習する。
【0097】
ところで、店舗200で取り扱われている商品には、生鮮食品や惣菜類などのように長期保存ができない短寿命の商品が含まれている。また、洗剤や文具などの生活用品や、長期保存可能な缶詰や即席麺類などの加工食品、菓子類や嗜好品、調味料、リキュールなどのアルコール飲料のように使用期限や消費期限の長い商品なども含まれる。したがって、前記低順位商品といえども、生活用品などのように長寿命の商品については、仮に在庫数が多い場合でも値引きする必要性が低い。一方、生鮮食品や惣菜類などの短寿命の商品については、仮に在庫数が少なくても寿命間近であれば、売れ残り廃棄のリスクを回避するために、値引きしてでも売り切る必要性が高い。したがって、値引き判定部34においては、前記低順位商品のうち、所定の閾値よりも寿命が短い短寿命の商品を抽出し、その短寿命の商品について、値引きを実施するか否かを機械学習することが好ましい。つまり、本実施形態では、値引き判定部34は、前記低順位商品から、前記所定の閾値よりも寿命の長い商品を除外して、値引きを実施するか否かを機械学習する。なお、前記所定の閾値は、対象となる商品に応じて任意に設定されるものであり、例えば惣菜類であれが1日、生鮮食品であれば食品の種類に応じて数日程度に設定される。
【0098】
判定結果通知部341は、学習部40が学習した前記判定結果を参照して、従業員端末16に判定結果を送信する処理を行う。この判定結果を受け取った従業員端末16では、その判定結果が当該端末16の表示部に表示される。したがって、店舗200の従業員は、表示された判定結果を確認することにより、いずれの商品を値引きすればよいかを認識し、迅速に商品の値引き、つまり、情報コードの更新(貼り替え)を行うことができる。
【0099】
なお、上述の例では、前記基準順位を10位としたが、例えば、値引き判定部34は、同種類の複数の商品のうち順位が最も高い商品以外の商品それぞれに対して、値引きをするか否かを学習するものであってもよい。この場合、同種類の複数の商品のうち順位が最も高い商品のその順位が、本発明の基準順位に相当する。
【0100】
また、上述の例では、同種類の複数の商品のうち前記優先順位が前記基準順位よりも低位である商品(商品)に対する値引きについて例示したが、例えば、値引き判定部34は、全ての商品のうち前記基準順位よりも低位の商品(低順位商品)それぞれに対して、値引きをするか否かを学習するものであってもよい。
【0101】
また、商品の値引きを実施するか否かの判定のみならず、例えば、値引きを実施すると判定された場合にその値引き率や値引きの実施タイミングなども値引き判定部34の学習部40に学習させるようにしてもよい。
【0102】
以下、
図7のフローチャートを用いて、サーバー装置11の制御部31によって実行されるレコメンド処理とともに、本発明の推奨情報特定方法について説明する。以下の説明では、店舗200のゲート装置12を利用者が通過した入店時から、利用者が店舗200のゲート装置13を通過した退店時までの間に前記レコメンド処理が行われるものとする。つまり、前記レコメンド処理は、店舗200内を利用者が買い回りしているときに実施される。なお、
図7において、S11,S12,・・・は処理手順の番号(ステップ番号)を示す。
【0103】
まず、ステップS11では、制御部31は、入店した利用者の購入履歴情報を顧客情報格納部321から取得する。かかる処理は、制御部31の情報取得部314によって行われる。ステップS11が、本発明の行動履歴取得ステップに相当する。また、次のステップS12では、制御部31は、取得した購入履歴情報から、利用者の行動内容を抽出する。
【0104】
次に、ステップS13において、制御部31は、前記レコメンドエンジンを用いて、前記行動内容に基づいて、利用者の嗜好に合致するであろう推奨される推奨商品の候補を複数抽出する処理を行う。かかる処理は、制御部31のレコメンド抽出処理部311によって行われる。本実施形態では、レコメンド抽出処理部311は、例えば5つの候補を決定する。
【0105】
次のステップS14では、制御部31は、ステップS13で抽出された複数の候補の中に、
図6の順位リストTB1に属する優先順位が上位の上位商品が含まれているかどうかを判定する。例えば、前記上位商品は、前記優先順位が予め定められた基準順位(本実施形態では10位)以内の商品とすることができる。
【0106】
ステップS14において、前記複数の候補の中に前記上位商品が含まれていると判定された場合(S14のYes側)、次のステップS15において、複数の候補のなかから最上位の商品を選定して、その選定された商品を推奨商品に特定する。かかる処理は、制御部31のレコメンド選定処理部312によって行われる。ステップS15は、本発明の推奨情報特定ステップに相当する。その後、前記推奨商品を含む前記レコメンド情報がレコメンド情報送信部313によって利用者の利用者端末15に送信される。利用者端末15では、受信したレコメンド情報が操作表示部22の表示部に表示される。また、前記レコメンド情報は、従業員端末16にも送信される。
【0107】
一方、ステップS14において、前記複数の候補の中に前記上位商品が含まれていないと判定された場合(S14のNo側)、制御部31は、再び前記レコメンドエンジンを用いて、前記行動内容に基づいて、ステップS13で抽出された候補とは異なる複数の候補を抽出する処理を行う(ステップS17)。その後、ステップS14の処理を実行し、前記複数の候補の中に前記上位商品が含まれていると判定されるまで、ステップS14及びS17の処理が繰り返し行われる。
【0108】
以上説明したように、本実施形態では、利用者端末15に利用者の嗜好に合致した前記レコメンド情報が表示されるので、前記レコメンド情報を提示された利用者は、自分の嗜好に合致した商品情報(推奨商品の情報)をいち早く入手することができる。また、利用者端末15に出力された前記レコメンド情報は、店舗200側(販売者)が優先的に販売したい商品の優先順位が考慮された推奨商品の情報を含む。そのため、当該推奨商品が閲覧されたり購入される可能性がアップし、その結果、店舗側(販売者)は、優先的に販売したい商品の購買率を向上させることができる。
【0109】
また、従業員端末16にも前記レコメンド情報が送信されるため、従業員は受信した各利用者のレコメンド情報を確認することができる。
【0110】
なお、上述の実施形態では、ステップS14及びS15の処理を行うことにより推奨商品を特定する例について説明したが、本発明はこのような例に限られない。例えば、ステップS13で抽出された複数の候補の中から、後述するレコメンド評価値の最も高い商品を前記推奨商品と特定してもよい。
【0111】
前記レコメンド評価値は、例えば、
図8に示すように、抽出された5つの候補の商品A1~A5それぞれについて予め定められた相性係数Z1と順位係数Z2とを乗じた数値Z1・Z2を用いることができる。ここで、前記相性係数Z1は、候補となる商品A1~A5それぞれに対する利用者との相性(好み)を数値化したものであり、例えば、利用者の購入履歴情報や商品情報などのデータに基づいて、確率的潜在意味解析法(PLSA:Probabilistic Latent Semantic Analysis)によって算出される。
【0112】
また、前記順位係数Z2は、所定のルールに基づいて定められた任意の係数である。本実施形態では、順位リストTB1(
図6参照)における1位の商品には任意の数値「0.50」が定められており、2位の商品には1位の係数の半分の数値「0.25」、3位の商品には1位の係数の3分の1の数値「0.16」、4位の商品には1位の係数の4分の1の数値「0.13」、5位の商品には1位の係数の5分の1の数値「0.10」が定められている。前記順位係数Z2を設定するルールは、順位が上位から下位になるほど前記順位係数Z2が小さい数値に設定されていればよく、上述のルールに限られない。なお、上述した各数値は、小数点第三位を切り捨てて表示している。ここで、
図8では、ステップS13で抽出された5つの候補の商品が優先順位1位から5位の商品である場合の各係数及び前記レコメンド評価値を例示している。
【0113】
制御部31は、前記レコメンド処理において、ステップS14及びS15の処理に代えて、上述のように定められたレコメンド評価値のうち、最も数値の大きい商品を前記推奨商品に特定する。このように推奨商品が特定されることにより、上位の商品の順位に変動がない場合に、同じ利用者に対して同じ商品が推奨商品として提示されることを防止できる。
【0114】
なお、前記レコメンド評価値の最も高い商品を前記推奨商品に特定するのではなく、例えば、抽出された5つの候補の商品A1~A5それぞれに対して、前記レコメンド評価値の数値が高いものほど高い選択率を設定し、各選択率に基づいて確率論的に前記推奨商品を特定してもよい。
【0115】
前記レコメンド評価値は、相性係数Z1と順位係数Z2とを乗じた数値Z1・Z2に対して、さらに、5つの候補の商品A1~A5それぞれについてランダムに決定されたノイズ係数Z3を乗じたものを用いてもよい。このノイズ係数Z3は、前記レコメンド評価値を変動させるための係数である。このノイズ係数Z3が数値Z1・Z2に乗算されることで、特定される前記推奨商品にも影響する。つまり、前記ノイズ係数Z3が乗じられる前と後とでは、特定される前記推奨商品が変化する場合がある。ノイズ係数Z3を乗じるタイミングは、例えば、利用者が入店した入店回数の累積が予め定められた回数に達したこと、直近の設定期間における入店回数が予め定められた回数に達したこと、予め定められた期間を経過した後に利用者が再来店したこと、提示されたレコメンド情報が示す推奨商品に対して予め定められた回数連続して肯定的な行動結果(閲覧行動、読取行動、購入行動)を利用者が起こさなかったこと、のいずれか一つ又は複数を満たしたタイミングとすることができる。このようなノイズ係数Z3を前記レコメンド評価値に加味することにより、特定された前記推奨商品を含む前記レコメンド情報に多様性を持たせることができる。
【0116】
このような多様性を有するレコメンド情報は、必ずしも、利用者の購入履歴が反映した前記推奨商品を含むとは限らない。しかしながら、推奨商品を含まないレコメンド情報を閲覧した利用者が、そのレコメンド情報を契機として前記レコメンド情報が示す商品を購入することで、このような商品の購入実績が利用者の購入履歴に上書きされる。その結果、次のタイミングでは、上書き後の購入履歴情報を用いて前記推奨商品を含む前記レコメンド情報が特定され、前記レコメンド情報が示す推奨商品と利用者が好む商品との一致性が向上する。
【0117】
なお、前記レコメンド評価値として、相性係数Z1を用いずに、順位係数Z2にノイズ係数Z3を乗じた数値Z2・Z3を用いてもかまわない。
【0118】
以下、
図9のフローチャートを用いて、強化学習を用いた順位決定部33の学習部40の学習動作フローの一例について説明する。
図9において、S21,S22,・・・は処理手順の番号(ステップ番号)を示す。値引き判定部34における学習部40の学習動作は、
図9に示す学習動作フローと同じであるため、その説明は省略する。
【0119】
まず、ステップS21では、順位決定部33の行動結果取得部332は、利用者端末15から送信されたきた前記行動結果(閲覧行動、読取行動、購入行動の行動結果)を取得する。このステップS21では、店舗200を利用するすべての利用者の行動結果が利用者端末15各々から送信される。
【0120】
ステップS22では、学習部40の報酬計算部401は、ステップS21で取得された行動結果に基づいて、現時点の前記優先順位が適切かどうかを判定するための判定評価値を算出する。前記判定評価値は、前記行動結果の内容ごとに定められている評価ポイントを加算して算出される。例えば、閲覧行動、読取行動、購入行動の肯定結果に対してはプラスの評価ポイントが定められており、否定結果に対してはマイナスの評価ポイントが定められている。すべての行動結果に対する評価ポイントが加算されることにより、前記判定評価値が算出される。なお、利用者ごとに前記評価ポイントに重み係数が設定されている場合、例えば、店舗200の利用頻度が高い利用者の行動結果に対する評価ポイントに前記利用頻度に比例した数値の重み係数が設定されている場合は、その重み係数を加味して前記判定評価値が算出されてもよい。
【0121】
次のステップS23では、前記判定評価値が所定の許容範囲内かどうかを判定する。前記判定評価値が許容範囲内であると判定された場合は、現時点の前記優先順位が適切であるとして、処理はステップS24に進み、プラス報酬を設定する。一方、前記判定評価値が許容範囲を超えていると判定された場合は、現時点の前記優先順位が不適切であるとして、処理はステップS25に進み、マイナス報酬を設定する。
【0122】
その後、ステップS26において、学習部40の価値関数更新部402によって、優先順位に関する価値関数、つまり、行動価値関数Q(s,a)が更新され、再びステップS21に戻って、同様の処理が繰り返し実行される。
【0123】
なお、上述の実施形態では、実在する店舗200に適用される情報処理システム100を例示したが、本発明は、利用者端末15を介して利用者が買い物をするインターネット上に存在する仮想店舗にも適用可能である。
【0124】
以上説明した実施形態は、以下に付記する特徴を含む。
(1) 店舗で提供される商品に対するユーザーの行動履歴と、店舗で提供される複数の商品の販売に関して予め定められた優先順位とに基づいて、前記複数の商品に関する複数の商品情報から前記ユーザーに応じた推奨商品を含む推奨情報を特定する推奨情報特定部、を備える推奨情報特定装置。
(2) 前記優先順位を機械学習により決定するよう構成された順位決定部を更に備え、
前記順位決定部は、
前記優先順位に変動を来す変動情報を取得する変動情報取得部と、
前記変動情報取得部によって取得された前記変動情報に基づいて、前記優先順位を学習する順位学習部と、を有する、前記(1)に記載の推奨情報特定装置。
(3) 前記変動情報は、
前記商品の価格、種類、寿命、値引きの有無、値引き率、利益率、廃棄リスク、在庫数、過去の販売実績、及び過去の廃棄履歴、前記商品が加工食品である場合は加工日時及び加工状態、現時刻、前記店舗の所在地における気温、湿度、気圧、及び天候、ならびに前記店舗の来店者数のうちの少なくとも一つ以上を含む、前記(2)に記載の推奨情報特定装置。
(4) 前記順位決定部は、
前記推奨情報が示す前記推奨商品を前記ユーザーが閲覧又は購入したか否かを示す行動結果を取得する行動結果取得部を更に有し、
前記順位学習部は、前記変動情報取得部によって取得された前記変動情報、及び前記行動結果取得部によって取得された前記行動結果に基づいて、前記優先順位を学習する、前記(2)又は(3)に記載の推奨情報特定装置。
(5) 前記順位学習部は、前記優先順位を学習するための学習モデルを有し、
前記順位学習部は、
前記行動結果が前記推奨商品を閲覧又は購入したことを示すものである場合はプラスの報酬を出力し、前記行動結果が前記推奨商品を閲覧及び購入しなかったことを示すものである場合はマイナスの報酬を出力する報酬出力部と、
前記報酬出力部によって出力された報酬に基づいて前記学習モデルを更新する学習モデル更新部と、を有する、前記(4)に記載の推奨情報特定装置。
(6) 前記推奨情報特定部は、前記行動履歴に基づいて前記複数の商品情報から抽出された複数の候補情報から、前記優先順位が最も高い前記推奨商品を含むものを前記推奨情報として特定する、前記(1)から(5)のいずれかに記載の推奨情報特定装置。
(7) 前記推奨情報特定部は、前記複数の候補情報から、前記複数の候補情報それぞれについてランダムに決定されたノイズ係数を前記複数の候補情報それぞれの前記優先順位に乗じて得た評価値が最も高い前記推奨商品を含むものを前記推奨情報として特定する、前記(6)に記載の推奨情報特定装置。
(8) 前記店舗における商品の購入の際に前記ユーザーが使用する端末装置に、前記推奨情報特定部によって特定された前記推奨情報を出力する推奨情報出力部を更に備える、前記(1)から(7)のいずれかに記載の推奨情報特定装置。
(9) 前記優先順位が予め定められた基準順位よりも低位である低順位商品に対する値引きを実施するか否かを機械学習により判定するよう構成された値引き判定部を更に備え、
前記値引き判定部は、
前記商品の劣化に変動を来す劣化情報を取得する劣化情報取得部と、
前記劣化情報取得部によって取得された前記劣化情報に基づいて、前記低順位商品に対する値引きを実施するか否かの判定を学習する判定学習部と、を有する、前記(1)から(8)のいずれかに記載の推奨情報特定装置。
(10) 前記劣化情報は、
前記商品の価格、種類、寿命、値引きの有無、値引き率、利益率、廃棄リスク、在庫数、過去の販売実績、及び過去の廃棄履歴、前記商品が加工食品である場合は加工日時及び加工状態、現時刻、前記店舗の所在地における気温、湿度、気圧、及び天候、ならびに前記店舗の来店者数のうちの少なくとも一つ以上を含む、前記(9)に記載の推奨情報特定装置。
(11) 店舗で提供される複数の商品の販売に関する優先順位を記憶する優先順位記憶部から前記優先順位を取得する優先順位取得部と、
店舗で提供される商品に対するユーザーの行動履歴を記憶する行動履歴記憶部から前記行動履歴を取得する行動履歴取得部と、
前記行動履歴取得部によって取得された前記行動履歴と、前記優先順位取得部によって取得された前記優先順位とに基づいて、前記複数の商品情報から前記ユーザーに応じた推奨商品を含む推奨情報を特定する推奨情報特定部と、を備える推奨情報特定システム。
(12) 前記優先順位を機械学習により決定するよう構成された順位決定部を更に備え、
前記順位決定部は、
前記優先順位に変動を来す変動情報を取得する変動情報取得部と、
前記変動情報取得部によって取得された前記変動情報に基づいて、前記優先順位を学習する順位学習部と、を有する、前記(11)に記載の推奨情報特定システム。
(13) 店舗で提供される商品に対するユーザーの行動履歴を取得する行動履歴取得ステップと、
取得された前記行動履歴と、店舗で提供される複数の商品の販売に関して予め定められた優先順位とに基づいて、前記複数の商品に関する複数の商品情報から前記ユーザーに応じた推奨商品を含む推奨情報を特定する推奨情報特定ステップと、を備える推奨情報特定方法。
(14) 前記(13)に記載の推奨情報特定方法の各ステップをコンピュータに実行させるためのプログラム。
【符号の説明】
【0125】
11 :サーバー装置
12 :ゲート装置
13 :ゲート装置
14 :レジスター
15 :利用者端末
16 :従業員端末
21 :制御部
22 :操作表示部
23 :記憶部
24 :撮像部
25 :通信I/F
31 :制御部
32 :記憶部
33 :順位決定部
34 :値引き判定部
35 :通信I/F
40 :順位学習部
100 :情報処理システム
200 :店舗
211 :読取処理部
212 :表示処理部
213 :通知処理部
214 :行動結果送信部
311 :レコメンド抽出処理部
312 :レコメンド選定処理部
313 :レコメンド情報送信部
314 :情報取得部
321 :顧客情報格納部
322 :商品情報格納部
323 :購入予定商品格納部
324 :優先順位格納部
331 :変動情報観測部
332 :行動結果取得部
333 :順位更新処理部
401 :報酬計算部
402 :価値関数更新部
TB1 :順位リスト