(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-12-17
(54)【発明の名称】シミュレートされた仮想環境に対する変更に基づいて環境をコンフィグレーションするシステム
(51)【国際特許分類】
G06Q 30/0202 20230101AFI20241210BHJP
【FI】
G06Q30/0202
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2024527623
(86)(22)【出願日】2022-11-09
(85)【翻訳文提出日】2024-06-28
(86)【国際出願番号】 US2022049441
(87)【国際公開番号】W WO2023086410
(87)【国際公開日】2023-05-19
(32)【優先日】2021-11-12
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】500027208
【氏名又は名称】スターバックス・コーポレイション
(74)【代理人】
【識別番号】100114890
【氏名又は名称】アインゼル・フェリックス=ラインハルト
(74)【代理人】
【識別番号】100098501
【氏名又は名称】森田 拓
(74)【代理人】
【識別番号】100116403
【氏名又は名称】前川 純一
(74)【代理人】
【識別番号】100134315
【氏名又は名称】永島 秀郎
(74)【代理人】
【識別番号】100162880
【氏名又は名称】上島 類
(72)【発明者】
【氏名】ジョシュア ジェイ. クルーガー
(72)【発明者】
【氏名】スーザン ピー. ベロージ
【テーマコード(参考)】
5L030
【Fターム(参考)】
5L030BB01
(57)【要約】
本開示は、全体として、特定の店舗のレイアウトおよび/または店舗の店舗コンフィグレーションを決定するプロセスを自動化するシステムに関する。システムは、特定の店舗に関連付けられた店舗データを取得することができる。店舗データに基づいて、システムは、取得された店舗データに基づいて店舗の仮想レプリケーションを生成するシミュレーションプラットフォームにアクセスすることができる。店舗および店舗の仮想レプリケーションによって、同一のもしくは類似の生産データを生成することができる。店舗の生産データに基づいて、システムは、店舗データを変更して、変更された店舗の仮想レプリケーションを生成するための変更された店舗データを生成することができる。さらに、システムは、特定の制約を満たす店舗データを決定するために、店舗の仮想レプリケーションからの生産データと変更された店舗の仮想レプリケーションからの生産データとの比較を行うことができる。
【特許請求の範囲】
【請求項1】
変更された仮想環境に関連付けられるデータを出力するシステムであって、該システムは、
コンピュータ実行可能命令を記憶するように構成されたデータストアと、
前記データストアと通信する少なくとも1つのプロセッサと、
を備え、
前記コンピュータ実行可能命令は、前記少なくとも1つのプロセッサによって実行される際に、前記少なくとも1つのプロセッサに、
物理環境に関連付けられる環境データを識別させ、
前記環境データに少なくとも部分的に基づいて仮想環境を生成させ、
前記物理環境に関連付けられる生産データを識別させ、
前記物理環境に関連付けられる生産データを識別させることに少なくとも部分的に基づいて、前記環境データの1つもしくは複数の値を変更して、変更された環境データを生成させ、
前記変更された環境データに少なくとも部分的に基づいて、変更された仮想環境を生成させ、
前記生産データに少なくとも部分的に基づいて、前記変更された仮想環境と前記仮想環境とを比較させ、
前記変更された仮想環境と前記仮想環境とを比較させることに少なくとも部分的に基づいて、前記変更された仮想環境に関連付けられるデータを出力させる、
システム。
【請求項2】
前記環境データは、在庫データ、環境コンフィグレーションデータ、労働力割り当てデータ、環境レイアウトデータまたはマシン割り当てデータのうちの少なくとも1つを含む、請求項1記載のシステム。
【請求項3】
前記生産データを識別するために、前記コンピュータ実行可能命令は、前記少なくとも1つのプロセッサによって実行される際にさらに、前記少なくとも1つのプロセッサに、1つもしくは複数のセンサからリアルタイムで前記生産データを取得させる、請求項1または2記載のシステム。
【請求項4】
前記生産データを識別するために、前記コンピュータ実行可能命令は、前記少なくとも1つのプロセッサによって実行される際にさらに、前記少なくとも1つのプロセッサに、前記物理環境に関連付けられるコンピューティングシステムからリアルタイムで前記生産データを取得させ、
前記物理環境に関連付けられる前記コンピューティングシステムは、
前記物理環境に関連付けられる作業者を監視し、
前記作業者の監視に少なくとも部分的に基づいて、前記作業者に関連付けられる作業者利用状態データを識別する
ように構成されており、
前記生産データは前記作業者利用状態データを含む、
請求項1から3までのいずれか1項記載のシステム。
【請求項5】
前記作業者はロボット作業者または人間作業者である、請求項4記載のシステム。
【請求項6】
前記作業者利用状態データは、特定の時点における前記作業者のステータスを識別するためのデータであり、前記作業者のステータスは、アクティブ、アイドルまたはウォーキングのうちの少なくとも1つを含む、請求項4または5記載のシステム。
【請求項7】
前記生産データを識別するために、前記コンピュータ実行可能命令は、前記少なくとも1つのプロセッサによって実行される際にさらに、前記少なくとも1つのプロセッサに、前記物理環境に関連付けられるコンピューティングシステムからリアルタイムで前記生産データを取得させ、
前記物理環境に関連付けられる前記コンピューティングシステムは、
前記物理環境に関連付けられるマシンを監視し、
前記マシンの監視に少なくとも部分的に基づいて、前記マシンに関連付けられるマシン利用状態データを識別する
ように構成されており、
前記生産データは前記マシン利用状態データを含む、
請求項1から6までのいずれか1項記載のシステム。
【請求項8】
前記生産データは、センサデータ、マシンデータ、注文データ、在庫データまたは注文処理データのうちの少なくとも1つを含む、請求項1から7までのいずれか1項記載のシステム。
【請求項9】
前記生産データは、センサデータ、マシンデータ、注文データ、在庫データまたは注文処理データのうちの少なくとも1つを含み、
前記コンピュータ実行可能命令は、前記少なくとも1つのプロセッサによって実行される際にさらに、前記少なくとも1つのプロセッサに、
前記生産データに少なくとも部分的に基づいて、前記物理環境に関連付けられるサービス速度、前記物理環境に関連付けられるスループット、または前記物理環境に関連付けられる労働力使用のうちの1つもしくは複数を決定させる、
請求項1から8までのいずれか1項記載のシステム。
【請求項10】
前記生産データは、センサデータ、マシンデータ、注文データ、在庫データまたは注文処理データのうちの少なくとも1つを含み、前記コンピュータ実行可能命令は、前記少なくとも1つのプロセッサによって実行される際にさらに、前記少なくとも1つのプロセッサに、
前記生産データに少なくとも部分的に基づいて、前記物理環境に関連付けられるサービス速度、前記物理環境に関連付けられるスループット、または前記物理環境に関連付けられる労働力使用のうちの1つもしくは複数を決定させ、
前記サービス速度、前記スループットまたは前記労働力使用のうちの1つもしくは複数に対応する、ユーザに関連付けられる1つもしくは複数のユーザ目標を決定させ、
前記変更された仮想環境と前記仮想環境とを比較させることがさらに、前記1つもしくは複数のユーザ目標に少なくとも部分的に基づいて行われる、
請求項1から9までのいずれか1項記載のシステム。
【請求項11】
前記1つもしくは複数のユーザ目標のうちの第1の目標は第1の条件に関連付けられており、前記1つもしくは複数のユーザ目標のうちの第2の目標は第2の条件に関連付けられており、前記変更された仮想環境と前記仮想環境とを比較させることがさらに、前記第1の条件および前記第2の条件に少なくとも部分的に基づいて行われる、請求項10記載のシステム。
【請求項12】
前記変更された仮想環境と前記仮想環境とを比較するために、前記コンピュータ実行可能命令は、前記少なくとも1つのプロセッサによって実行される際にさらに、前記少なくとも1つのプロセッサに、前記物理環境に関連付けられる生産データと前記変更された仮想環境に関連付けられる仮想生産データとを比較させる、請求項1から11までのいずれか1項記載のシステム。
【請求項13】
前記環境データに少なくとも部分的に基づいて前記仮想環境を生成するために、前記コンピュータ実行可能命令は、前記少なくとも1つのプロセッサによって実行される際にさらに、前記少なくとも1つのプロセッサに、シミュレーションプラットフォームを使用して前記仮想環境を生成させる、請求項1から12までのいずれか1項記載のシステム。
【請求項14】
前記コンピュータ実行可能命令は、前記少なくとも1つのプロセッサによって実行される際にさらに、前記少なくとも1つのプロセッサに、
前記生産データに少なくとも部分的に基づいて、前記変更された仮想環境を含む複数の変更された仮想環境と前記仮想環境とを比較させ、
前記複数の変更された仮想環境と前記仮想環境とを比較させることに少なくとも部分的に基づいて、前記複数の変更された仮想環境から前記変更された仮想環境を選択させ、
前記変更された仮想環境に関連付けられるデータを出力させることが、前記変更された仮想環境を選択させることに少なくとも部分的に基づいて行われる、
請求項1から13までのいずれか1項記載のシステム。
【請求項15】
前記環境データはさらに、前記物理環境の動作に関連付けられている、請求項1から14までのいずれか1項記載のシステム。
【請求項16】
前記コンピュータ実行可能命令は、前記少なくとも1つのプロセッサによって実行される際にさらに、前記少なくとも1つのプロセッサに、スケジューリングシステムによって動的に定義される作業者スケジュールを出力させる、請求項1から15までのいずれか1項記載のシステム。
【請求項17】
前記環境データに少なくとも部分的に基づいて前記仮想環境を生成するために、前記コンピュータ実行可能命令は、前記少なくとも1つのプロセッサによって実行される際にさらに、前記少なくとも1つのプロセッサに、複数の環境データセットを複数の仮想生産データセットへマッピングするシミュレーションプラットフォームを使用して前記仮想環境を生成させ、
前記複数の環境データセットは前記環境データを含み、前記複数の生産データセットは前記生産データを含む、
請求項1から16までのいずれか1項記載のシステム。
【請求項18】
前記環境データに少なくとも部分的に基づいて前記仮想環境を生成するために、前記コンピュータ実行可能命令は、前記少なくとも1つのプロセッサによって実行される際にさらに、前記少なくとも1つのプロセッサに、シミュレーションプラットフォームを使用して前記仮想環境を生成させ、
前記シミュレーションプラットフォームは、
前記変更された仮想環境を生成するために複数のシミュレーションを動作させ、
前記変更された仮想環境を検証するために、前記複数のシミュレーションのそれぞれの出力を比較する
ように構成されている、
請求項1から17までのいずれか1項記載のシステム。
【請求項19】
前記物理環境は店舗を含み、前記仮想環境は仮想店舗を含む、請求項1から18までのいずれか1項記載のシステム。
【請求項20】
前記仮想環境は店舗の仮想レプリケーションを含む、請求項1から19までのいずれか1項記載のシステム。
【請求項21】
前記仮想環境は前記物理環境のモデルを含む、請求項1から20までのいずれか1項記載のシステム。
【請求項22】
コンピュータ実装方法であって、
物理環境に関連付けられる環境データを識別することと、
前記環境データに少なくとも部分的に基づいて仮想環境を生成することと、
前記物理環境に関連付けられる生産データを識別することと、
前記物理環境に関連付けられる生産データを識別することに少なくとも部分的に基づいて、前記環境データの1つもしくは複数の値を変更して、変更された環境データを生成することと、
前記変更された環境データに少なくとも部分的に基づいて、変更された仮想環境を生成することと、
前記生産データに少なくとも部分的に基づいて、前記変更された仮想環境と前記仮想環境とを比較することと、
前記変更された仮想環境と前記仮想環境とを比較することに少なくとも部分的に基づいて、前記変更された仮想環境に関連付けられるデータを出力することと、
を含む、コンピュータ実装方法。
【請求項23】
コンピュータ実行可能命令を記憶した非一時的なコンピュータ可読媒体であって、
前記コンピュータ実行可能命令は、少なくとも1つのプロセッサによって実行される際に、前記少なくとも1つのプロセッサに、
物理環境に関連付けられる環境データを識別し、
前記環境データに少なくとも部分的に基づいて仮想環境を生成し、
前記物理環境に関連付けられる生産データを識別し、
前記物理環境に関連付けられる生産データを識別させることに少なくとも部分的に基づいて、前記環境データの1つもしくは複数の値を変更して、変更された環境データを生成し、
前記変更された環境データに少なくとも部分的に基づいて、変更された仮想環境を生成し、
前記生産データに少なくとも部分的に基づいて、前記変更された仮想環境と前記仮想環境とを比較し、
前記変更された仮想環境と前記仮想環境とを比較させることに少なくとも部分的に基づいて、前記変更された仮想環境に関連付けられるデータを出力する、
ように構成させる、非一時的なコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、全体として、物理環境に基づいて仮想環境を生成し、変更された仮想環境をシミュレーションするシステムに関する。
【0002】
背景
物理環境(例えば店舗、建物、オフィス、工場、企業など)のコンフィグレーションは、標準的なデザイン、レイアウトなどの集合体に基づいて行うことができる。環境コンフィグレーションは当該環境において使用可能であり、当該環境を構築するときに初期設定することができる。例えば、環境は、環境コンフィグレーションに基づく初期レイアウトとして構築可能である。環境コンフィグレーションはユーザによって生成可能であり、このコンフィグレーションはユーザの知識または経験に基づくものでありうる。例えば、ユーザが複数の環境に関連付けられている場合、当該ユーザは、各環境コンフィグレーションに基づく環境コンフィグレーションを設計することができる。
【0003】
環境コンフィグレーションの初期設定の後、ユーザは、この環境コンフィグレーションを変更することができる。例えば、ユーザは、環境のレイアウト、マシン(例えば機器)の割り当て、または作業者の割り当てを変更することができる。ただし、環境コンフィグレーションの変更は、特定の環境に基づく個別の決定でありうる。環境コンフィグレーションの変更は、当該環境の異なるコンフィグレーションと比較して、スループット、効率(例えばコンピューティングシステムの効率)、パフォーマンス(例えばコンピューティングシステムのパフォーマンス)などを低下させる可能性があり、また、当該環境のオリジナルのコンフィグレーションと比較して、スループット、効率、パフォーマンスなどが低下したものとなる可能性がある。
【図面の簡単な説明】
【0004】
【
図1】仮想店舗管理システムが1つもしくは複数の店舗の仮想レプリケーションを管理することのできる例示的な環境を示すブロック図である。
【
図2】仮想店舗管理システムが1つもしくは複数の店舗の仮想レプリケーションを管理することのできる例示的な環境を示すブロック図である。
【
図3A】店舗の仮想レプリケーションを生成するための例示的な対話を示すフロー図である。
【
図3B】店舗の仮想レプリケーションを生成するための例示的な対話を示すフロー図である。
【
図4】店舗の仮想レプリケーションを示す例示的なユーザインタフェースを示す図である。
【
図5】店舗の仮想レプリケーションを生成し、出力を生成するための例示的なルーチンを示すフローチャートである。
【
図6】1つもしくは複数の店舗の仮想レプリケーションを管理する仮想店舗管理システムを提供するコンピューティングデバイスの一般的なアーキテクチャが示されている。
【0005】
添付の図面には例示の目的で様々な実施形態が示されているが、これらの実施形態は実施形態の範囲を限定するものとして解釈されるべきではない。さらに、開示する種々の実施形態の様々な特徴を組み合わせて付加的な実施形態を形成することもでき、これらの実施形態も本開示の一部である。
【0006】
実施形態の説明
図1は、管理システム102(例えば、物理環境に関連付けられるコンピューティングシステム)およびシミュレーションコンピューティングシステム108(例えば、物理環境に関連付けられるバーチャライゼーションを生成するシミュレーションプラットフォームを実装したコンピューティングシステム)がネットワーク110を介して仮想管理システム112と対話することのできる、例示的な動作環境100のブロック図である。例えば、バーチャライゼーションは、仮想レプリケーション、仮想物理環境、仮想モデル、シミュレーションなどを含みうる。
【0007】
以下の開示では特定の物理環境(例えば店舗)について説明するが、以下の開示は任意の物理環境(例えば店舗、建物、オフィス、工場、企業など)に関して実現可能であることを理解されたい。
【0008】
店舗管理システム102、シミュレーションコンピューティングシステム108および仮想店舗管理システム112は、閉ループシステムでありうる。例として、店舗管理システム102は、デスクトップコンピュータ、ラップトップおよび携帯電話機を含む、仮想店舗管理システム112と通信可能な様々なタイプのコンピューティングデバイスおよび/またはコンピューティングシステムを含むことができる。一般に、店舗管理システムは、デスクトップ、ラップトップまたはタブレットコンピュータ、パーソナルコンピュータ、ウェアラブルコンピュータ、サーバ、パーソナルデジタルアシスタント(PDA)、ハイブリッドPDA/携帯電話機、携帯電話機、電子書籍リーダ、セットトップボックス、音声コマンドデバイス、カメラ、デジタルメディアプレーヤなどのような任意のコンピューティングデバイスでありうる。
【0009】
さらなる例示として、シミュレーションコンピューティングシステム108は、サーバ、デスクトップコンピュータ、ラップトップコンピュータ、携帯電話機などを含む、シミュレーションプラットフォームを実装した様々なタイプのコンピューティングデバイスおよび/またはコンピューティングシステムを含むことができる。一般に、シミュレーションコンピューティングシステム108は、シミュレーションプラットフォームを実装した任意のコンピューティングデバイスであってよく、店舗データを受信し、この店舗データに基づいて店舗の仮想レプリケーションを生成するために、仮想店舗管理システム112と通信することができる。幾つかの実施形態では、シミュレーションコンピューティングシステム108は、シミュレーションプラットフォームを実装した特定のソフトウェアをホストする汎用のコンピューティングデバイスを含むことができる。したがって、シミュレーションコンピューティングシステム108は、店舗の仮想レプリケーションを構築するためのシミュレーションプラットフォームを実装した任意のコンピューティングデバイスであってよい。
【0010】
仮想店舗管理システム112は、店舗データをシミュレーションコンピューティングシステム108へルーティングすることができ、店舗の仮想レプリケーションに関連付けられる生産データを受信し、比較することができる。仮想店舗管理システム112は、ここでの比較に基づいて、店舗管理システム102または他の任意のコンピューティングデバイスに出力を供給することができる。仮想店舗管理システム112は、店舗管理システム102(または他の任意のコンピューティングデバイス)に、1つもしくは複数のユーザインタフェース、コマンドラインインタフェース(CLI)、アプリケーションプログラミングインタフェース(API)、および/または上記の比較に基づく1つもしくは複数の出力を表示する(例えばコンピュータディスプレイの一部としての)他のインタフェースを提供することができる。本明細書においては1つもしくは複数の実施形態につきユーザインタフェースを使用するものとして説明するが、こうした実施形態が付加的にもしくは代替的に任意のCLI、APIまたは他のインタフェースを使用することもできることを理解されたい。
【0011】
ネットワーク
店舗管理システム102、シミュレーションコンピューティングシステム108および仮想店舗管理システム112は、任意の有線ネットワーク、無線ネットワークまたはこれらの組み合わせを含みうるネットワーク110を介して通信することができる。例えば、ネットワーク110は、パーソナルエリアネットワーク、ローカルエリアネットワーク、ワイドエリアネットワーク、(例えばラジオ用またはテレビ用の)エアインタフェース放送網、ケーブルネットワーク、衛星ネットワーク、セルラフォンネットワークまたはこれらの組み合わせであってよい。さらなる例として、ネットワーク110は、様々な個別のパーティによって潜在的に運営されているリンクされた複数のネットワークから成るパブリックアクセサブルネットワーク、例えばインターネットであってもよい。幾つかの実施形態では、ネットワーク110は、企業もしくは大学のイントラネットのようなプライベートネットワークまたは準プライベートネットワークであってもよい。ネットワーク110は、1つもしくは複数の無線ネットワーク、例えばGlobal System for Mobile Communication(GSM)ネットワーク、符号分割多元接続(CDMA)ネットワーク、Long Term Evolution(LTE)ネットワークまたは他の任意のタイプの無線ネットワークを含んでもよい。ネットワーク110は、インターネットまたは上述した他の任意のタイプのネットワークを介して通信を行うためのプロトコルおよびコンポーネントを使用することができる。例えば、ネットワーク110により使用されるプロトコルは、ハイパーテキスト転送プロトコル(HTTP)、HTTPセキュア(HTTPS)、メッセージキューテレメトリトランスポート(MQTT)、制約付きアプリケーションプロトコル(CoAP)などを含むことができる。インターネットまたは上述した他の任意のタイプの通信ネットワークを介して通信を行うためのプロトコルおよびコンポーネントは当業者によく知られているので、本明細書ではこれ以上は立ち入らない。幾つかの実施形態では、店舗管理システム102、シミュレーションコンピューティングシステム108、仮想店舗管理システム112のうちの1つもしくは複数は、ネットワーク110を介して、在庫管理コンピューティングシステム106および/または生産コンピューティングシステム104と通信することができる。
【0012】
在庫管理システム
在庫管理コンピューティングシステム106は、ハードウェアデバイスによって実行されるハードウェアまたはソフトウェアに直接に実装可能であり、例えば、本明細書に記載する様々な機能を実行するためのコンピュータ実行可能命令を実行するように構成された物理コンピュータハードウェア上に実装された1つもしくは複数の物理サーバまたは仮想サーバを含むことができる。
【0013】
在庫管理コンピューティングシステム106は、1つもしくは複数のセンサおよび/または1つもしくは複数のデータストアから在庫データを受信することができる。例えば、在庫管理コンピューティングシステム106は、特定の店舗に割り当てられるもしくは関連付けられる在庫(例えば製品、機器、物品など)を識別することができる。例えば、在庫は、食料製品(例えばサンドイッチ、卵、砂糖、人工甘味料など)、飲料製品(例えばコーヒー、ティーバッグ、ミルク、クリームなど)、非食料製品または非飲料製品(例えば窒素、カトラリー、ナプキン、ストローなど)、または当該店舗に関連付けられる他の任意の製品を含みうる。さらに、在庫管理コンピューティングシステム106は、特定の店舗に関連付けられる(例えば特定の店舗に配送された)在庫データを識別することができる。例えば、在庫管理コンピューティングシステム106は、在庫の配送を監視するために、1つもしくは複数のセンサ(例えばカメラ)と通信を行うことができ、かつ/またはこうしたセンサを含むことができる。さらに、在庫管理コンピューティングシステム106は、在庫の供給を管理することができる。在庫管理コンピューティングシステム106は、以前に配送された在庫を管理するために、1つもしくは複数のセンサと通信を行うことができ、かつ/またはこうしたセンサを含むことができる。例えば、在庫管理コンピューティングシステム106は、保管室内に保管された在庫を管理するための1つもしくは複数のセンサを含むことができる。幾つかの実施形態では、在庫管理コンピューティングシステム106は、作業者フィードバック(例えばロボット作業者フィードバックまたは人間作業者フィードバック)に基づいて、在庫データを識別することができる。作業者フィードバックは、在庫の分与(例えば、顧客への分与)の表示を含むことができる。さらに、作業者フィードバックの受信に基づいて、在庫管理コンピューティングシステム106は、作業者フィードバックの精度を検証することができる。例えば、在庫管理コンピューティングシステム106は、作業者フィードバックに基づいて在庫量を計算し、(例えば、顧客に提供された在庫量または店舗内に残っている在庫量を確認することによって)在庫量を検証することができる。幾つかの実施形態では、在庫管理コンピューティングシステム106は、購入の追跡に基づいて在庫データを識別することができる。例えば、在庫管理コンピューティングシステム106は、在庫のベース量を識別し、購入の追跡に基づいて在庫のベース量を変更することができる。
【0014】
在庫管理コンピューティングシステム106は、定期的にまたは非定期的に、在庫データを店舗管理システム102に供給することができる。例えば、在庫管理コンピューティングシステム106は、在庫データを、毎時、毎日などのタイミングで店舗管理システム102に供給することができる。幾つかの実施形態では、在庫管理コンピューティングシステム106は、店舗管理システム102からの要求に基づいて、在庫データを店舗管理システム102に供給することができる。
【0015】
生産コンピューティングシステム
生産コンピューティングシステム104は、ハードウェアデバイスによって実行されるハードウェアまたはソフトウェアに直接に実装可能であり、例えば、本明細書に記載する様々な機能を実行するためのコンピュータ実行可能命令を実行するように構成された物理コンピュータハードウェア上に実装された1つもしくは複数の物理サーバまたは仮想サーバを含むことができる。
【0016】
以下で延べるように、生産コンピューティングシステム104は、1つもしくは複数のセンサおよび/または1つもしくは複数のデータストアからパフォーマンスデータを受信することができる。パフォーマンスデータとは、1つもしくは複数のコンポーネント(例えば、作業者、機器など)がどのようにパフォーマンスを発揮しているかを識別することのできるデータである。生産コンピューティングシステム104は、店舗に関連付けられるパフォーマンスデータを識別する1つもしくは複数のコンピューティングシステムを含むことができる。幾つかの実施形態では、生産コンピューティングシステム104は、作業者の活動および作業者の利用状態を監視するコンピューティングシステム(例えばビジョンシステム)を含むことができる。例えば、生産コンピューティングシステム104は、全店舗を通した様々な位置に配置された複数のセンサと通信を行うことができ、かつ/またはこうしたセンサを含むことができる。生産コンピューティングシステム104はこうしたセンサを利用して作業者を識別し、作業者にタスクを割り当てることができる。作業者に割り当てられたタスクに基づいて、生産コンピューティングシステム104は、特定のタスクまたは特定の作業者に関連付けられる効率、特定のタスクまたは特定の作業者に関連付けられるタイミングなどを決定することができる。幾つかの実施形態では、生産コンピューティングシステム104は、マシンの利用状態および/またはパフォーマンスを監視するコンピューティングシステムを含むことができる。例えば、生産コンピューティングシステム104は、マシンのタイミングおよび/またはマシンの効率を識別するために、複数のマシン(例えば、各マシンまたはマシンに関連付けられたセンサ)と通信することができ、かつ/またはこうした複数のマシンを含むことができる。複数のマシンには、冷蔵庫、冷凍庫、水ろ過システム、暖房、換気および空調システム、オーブン、コーヒーマシン、エスプレッソマシン、食品展示ケース、チルド食品展示ケース、ブレンダ、専用コーヒーマシンなどが含まれうる。さらに、複数のマシンには同種の複数のマシンも含まれうる(例えば、ここでの複数のマシンには複数のブレンダが含まれうる)。複数のマシンのそれぞれは、ネットワーク(例えばネットワーク110)を介して生産コンピューティングシステムと通信を行うことができる。幾つかの実施形態では、生産コンピューティングシステム104は、全体パフォーマンス(例えば注文タイミング、注文履歴、注文効率、店舗キャパシティ、ドライブスルーキャパシティなど)を監視するコンピューティングシステムを含むことができる。例えば、生産コンピューティングシステム104は、店内で受けている注文の数、ドライブスルーを介して受けている注文の数、店内注文および/またはドライブスルー注文に関連付けられる待機時間などを監視することができる。
【0017】
生産コンピューティングシステム104は、定期的にまたは非定期的に、パフォーマンスデータを店舗管理システム102に供給することができる。例えば、生産コンピューティングシステム104は、パフォーマンスデータを、毎時、毎日などのタイミングで店舗管理システム102に供給することができる。幾つかの実施形態では、生産コンピューティングシステム104は、店舗管理システム102からの要求に基づいて、パフォーマンスデータを店舗管理システム102に供給することができる。
【0018】
店舗管理システム
特定の店舗に関連するデータを管理するために、店舗管理システム102は、生産コンピューティングシステム104、在庫管理コンピューティングシステム106および/または他の任意のコンピューティングシステムから複数のデータを受信することができる。店舗管理システム102は、生産データを生成するために、複数のデータを解析することができる。例えば、店舗管理システム102は、複数のデータを解析して(例えば、フィルタリングして、変更して、など)、特定の店舗に関連付けられる生産データを識別することができる。例えば、店舗管理システム102は、特定の期間(例えば特定の日)、特定の店舗、店舗内の特定の位置(例えば特定のマシン)、店舗に関連付けられる特定の作業者などに関連付けられる複数のデータをフィルタリングすることができる。したがって、店舗管理システム102は、複数のデータをフィルタリングして特定の生産データを識別することができる。例示的な実施形態では、店舗管理システム102はユーザコンピューティングデバイスであり、ユーザが特定のデータを識別するもしくは選択することができる。例えば、ユーザが、特定のデータ(例えば、特定のマシン、特定の在庫、特定の作業者などに関連付けられるデータ)を生産データとして指定することができる。店舗管理システム102は、自身とユーザとの間の対話を可能にする様々なコンポーネントを含むことができる。例えば、店舗管理システム102は、自身を介して情報を表示させるディスプレイシステム(例えばユーザインタフェース)を含むことができる。一実施形態では、ディスプレイは、付加的なコンピューティングシステムによって表示されるものであってもよい。
【0019】
店舗管理システム102はさらに、店舗に関連付けられる店舗データを識別することができる。店舗データとは、店舗コンフィグレーションを識別できるようにするデータである。例えば、店舗コンフィグレーションには、店舗レイアウト、店舗デザイン、従業員割り当て、マシン割り当て、マシンレイアウト、店舗稼働パラメータ、注文パラメータ、または店舗コンフィグレーションに関連付けられる他の任意のデータが含まれうる。こうした店舗データにより、店舗の物理レイアウトを識別することができる。例えば、店舗データにより、テーブル、椅子、レジスタ、マシン、製品などの配置、種類および数量を識別することができる。さらに、店舗データにより、店舗がドライブスルー部分および/またはウォークイン部分を含むかどうかも識別することができる。店舗データにより、店舗に割り当てられた従業員を識別することもできる。例えば、店舗データにより、店舗に割り当てられた従業員の数、役職および/または業種(例えば、管理職、年数または経験レベルなど)を識別することができる。さらに、店舗データにより、店舗の作業者によって注文がどのように処理され応対されるかを識別することができる。例えば、注文が最初に手の空いた作業者にリンクされたかどうか、または所定の注文が一緒にリンクされたかどうか、などである。店舗データによりさらに、メニューオプションを識別することもできる。例えば、店舗データにより、特定の店舗での購入が可能な食品および/または飲料のオプションを識別することができる(例えば、一部の店舗では低温抽出コーヒーのような特定の製品を提供できない可能性がある)。店舗管理システム102は、(例えばユーザコンピューティングデバイスを介した)ユーザ入力に基づいて、かつ/または1つもしくは複数のセンサ(例えば店舗コンフィグレーションの画像を取得する1つもしくは複数のカメラ)を介して、店舗データを識別することができる。したがって、店舗管理システム102は、店舗の生産を表す生産データと店舗コンフィグレーションを表す店舗データとを識別することができる。
【0020】
シミュレーションコンピューティングシステム
店舗管理システム102は店舗データを仮想店舗管理システム112へルーティングすることができ、仮想店舗管理システム112はこの店舗データをシミュレーションコンピューティングシステム108へルーティングすることができる。幾つかの実施形態では、シミュレーションコンピューティングシステム108は、店舗管理システム102から直接に店舗データを受信することができる。シミュレーションコンピューティングシステム108は、店舗データを受信し、この店舗データに基づいて店舗の仮想レプリケーションを生成するシミュレーションプラットフォームを実装することができる。シミュレーションプラットフォームは、店舗コンフィグレーションに基づく店舗の仮想レプリケーションを構築するために、モデリング(例えば店舗モデリング)を実行することができる。さらに、シミュレーションプラットフォームによって構築される店舗の仮想レプリケーションが、店舗によって生成される生産データと同一のもしくは類似の仮想生産データを生成することができる。例えば、シミュレーションプラットフォームは、店舗データから生産データへの既知のマッピングに基づいてトレーニング可能であり、これにより、シミュレーションプラットフォームは、店舗により生成された生産データを追跡する仮想生産データを生成する、店舗の仮想レプリケーションを生成することができる。
【0021】
シミュレーションコンピューティングシステム108はさらに、店舗に関連付けられる店舗データの全部または一部を変更することによって、複数の変更された店舗の仮想レプリケーションを生成することができる。例えば、シミュレーションコンピューティングシステム108は、特定のマシンの追加または削除による第1の変更された店舗の仮想レプリケーション、店内注文オプションの追加または削除による第2の変更された店舗の仮想レプリケーション、メニューからの特定のオプションの追加または削除による第3の変更された店舗の仮想レプリケーションなどを生成することができる。
【0022】
各店舗の仮想レプリケーションに関連付けられる生産データを決定するために、シミュレーションコンピューティングシステム108は、店舗の仮想レプリケーションをシミュレートして、各店舗の仮想レプリケーションごとの生産データを決定することができる。店舗の仮想レプリケーションをシミュレートする際には、シミュレーションコンピューティングシステム108が店舗の仮想レプリケーションに様々な生産シナリオおよび/または労働シナリオを供給し、店舗データに基づいて、店舗の仮想レプリケーションが各シナリオに対してどのように反応するかをシミュレートすることができる。さらに、シミュレーションコンピューティングシステム108は、特定の注文(例えば特定の製品)および/または特定のタスク(例えば、機器の洗浄、特定の飲料の製造など)に関連付けられる様々なタイミングデータを取得することができる。したがって、シミュレーションコンピューティングシステム108は、店舗の各仮想レプリケーションに関連付けられる仮想生産データを識別することができる。
【0023】
仮想店舗管理システム
店舗に関連付けられる出力を生成するために、仮想店舗管理システム112は、店舗に関連付けられる生産データを店舗管理システム102から、また店舗の仮想レプリケーションのそれぞれに関連付けられる仮想生産データをシミュレーションコンピューティングシステム108から、受信することができる。仮想店舗管理システム112は、生産データと仮想生産データとを比較する1つもしくは複数のコンポーネントを含むことができる。幾つかの実施形態では、仮想店舗管理システム112は、生産データおよび仮想生産データに基づいて、特定の最適化された店舗データセット(例えば店舗コンフィグレーション)を識別するようにトレーニングされた機械学習モデル(例えばニューラルネットワーク)を含むことができる。さらに、仮想店舗管理システム112は、生産データと仮想生産データとを比較して、生産データと仮想生産データとの間に差(例えば統計的に有意な差)が存在するかどうかを判別することができる。次いで、仮想店舗管理システム112は、生産データと仮想生産データとの差が特定の閾値(例えばユーザコンピューティングデバイスを介してユーザによって設定された閾値)を超過しているかどうかを判別することができる。
【0024】
仮想店舗管理システム112は、特定の仮想生産データセットと生産データとの差を識別することに基づいて、店舗に関連付けられる出力を生成することができる。仮想店舗管理システム112は、当該出力を、ユーザコンピューティングデバイス(例えば店舗管理システム102)を介して表示させることができる。幾つかの実施形態では、仮想店舗管理システム112は、特定の店舗データの自動実装を行うことができる。例えば、仮想店舗管理システム112は、調整に結びついたサービス速度、作業者の効率、マシン効率などの向上を識別することに基づいて、どのように注文を処理して作業者に割り当てるかを自動的に調整することができる。
【0025】
レイアウトデータストア
仮想店舗管理システム112は、レイアウトデータストア118を含むことができる。レイアウトデータストア118は、特定の店舗で利用可能な1つもしくは複数のレイアウトを識別することができる。例えば、レイアウトデータストア118は、当該店舗に以前に関連付けられていたレイアウト、類似の店舗に関連付けられているレイアウト、当該店舗の現在のレイアウトから(例えば、現在の店舗データに関連付けられる特定の店舗データを変更することによって)導出されたレイアウトを識別することができる。レイアウトデータストア118によって識別されるレイアウトは、当該店舗の物理レイアウトを示すものでありうる。例えば、レイアウトは、マシン、テーブルおよび/または椅子、商品および/または商品スタンド、御手洗いおよび/または店舗内の他の任意の物理コンポーネントの物理レイアウトを示すことができる。レイアウトはさらに、(例えば店舗に関連付けられたフロアプランを介して)店舗のサイズおよび/または形状を識別することができる。レイアウトを識別することにより、仮想店舗管理システム112は、店舗の潜在的なレイアウトを動的に監視し、識別することができる。さらに、仮想店舗管理システム112は、店舗の仮想レプリケーションを生成するために潜在的なレイアウトをシミュレーションコンピューティングシステム108に供給することができる。幾つかの実施形態では、仮想店舗管理システム112は、店舗の現在のレイアウトをレイアウトデータストア118に記憶することもできる。
【0026】
作業者および在庫データストア
さらに、仮想店舗管理システム112は、作業者および在庫データストア120を含むことができる。作業者および在庫データストア120は、特定の店舗に対する作業者および/または在庫データ(例えば、潜在的な作業者割り当ておよび/または潜在的な在庫割り当て)を識別することができる。例えば、作業者および在庫データストア120は、作業者数(例えば5人の作業者)、作業者の職種(例えば、管理職、非管理職など)、特定のステーションの作業者数(例えば2人の作業者がエスプレッソマシンに割り当てられる)、作業者の経験レベル(例えば、5年の経験有り、未経験、訓練中など)、作業者のスケジュール、または店舗への作業者の割り当てのための他の任意の作業者データを識別することができる。さらに、作業者および在庫データストア120は、在庫量、在庫のタイプ、在庫の位置、在庫配送スケジュール、注文すべき在庫量、プロダクトミックス、または店舗への在庫の割り当てのための他の任意の在庫データを識別することができる。当該店舗に以前に関連付けられていた作業者および/または在庫についての作業者および/または在庫データ割り当て、類似の店舗に関連付けられている作業者および/または在庫の割り当て、当該店舗の現在の作業者および/または在庫の割り当てから(例えば現在の店舗データに関連付けられる特定の店舗データを変更することによって)導出された作業者および/または在庫の割り当て。作業者および/または在庫データを識別することにより、仮想店舗管理システム112は、店舗への作業者および/または在庫の潜在的な割り当てを動的に監視し、識別することができる。さらに、仮想店舗管理システム112は、店舗の仮想レプリケーションを生成するために、潜在的な作業者および/または在庫の割り当てをシミュレーションコンピューティングシステム108に供給することができる。幾つかの実施形態では、仮想店舗管理システム112は、店舗の作業者および/または在庫の現在の割り当てを作業者および在庫データストア120に記憶することができる。
【0027】
チャネルデータストア
仮想店舗管理システム112は、チャネルデータストア122を含むことができる。チャネルデータストア122は、特定の店舗に対する1つもしくは複数の潜在的なチャネルミックス(例えばトラフィックチャネルミックス)を識別することができる。さらに、チャネルデータストア122によって識別されたチャネルミックスによって、店舗の物理トラフィックチャネルを示すことができる。例えば、チャネルデータストア122は、店内トラフィック、ドライブスルートラフィック、カーブサイドトラフィック、モバイルオーダー(例えば顧客のコンピューティングデバイスを介して受けた注文)トラフィック、または店舗への任意の潜在的なトラフィックチャネルミックスを識別することができる。さらに、チャネルデータストア122は、それぞれ異なるトラフィックチャネルのそれぞれ異なる潜在的なミックスを識別することができる。例えば、第1のミックスは、トラフィックの90%が店内利用トラフィックであり、トラフィックの10%がドライブスルートラフィックであることを含むことができ、第2のミックスはトラフィックの59%がモバイルオーダートラフィックであり、トラフィックの21%がカーブサイドトラフィックであり、トラフィックの20%が店内利用トラフィックであること、などを含むことができる。なお、チャネルミックスは、それぞれ異なるトラフィックチャネルの任意の組み合わせを含みうることを理解されたい。チャネルミックスを識別することにより、仮想店舗管理システム112は、店舗に対する潜在的なチャネルミックスを動的に監視し、識別することができる。さらに、仮想店舗管理システム112は、店舗の仮想レプリケーションを生成するために、潜在的なチャネルミックスをシミュレーションコンピューティングシステム108に供給することができる。幾つかの実施形態では、仮想店舗管理システム112は、現在の店舗のチャネルミックスをチャネルデータストア122に記憶することもできる。
【0028】
図1に則して説明している構成要素の多くが任意選択手段であり、本開示の実施形態では構成要素の組み合わせまたは再編成が可能であることを理解されたい。さらに、本開示の実施形態は、より少ない、異なるまたはより多くの構成要素を含むこともできる。さらに、これらの構成要素は別個である必要はなく、または離散的である必要もない。例えば、仮想店舗管理システム112は、単一の物理装置として表現することもできるし、または代替的に複数の物理装置に分割することもできる。
【0029】
生産データ
図2は、(
図1に示されている)店舗管理システム102、(
図1に示されている)生産コンピューティングシステム104および(
図1に示されている)在庫管理コンピューティングシステム106が対話して特定の店舗に関連付けられる生産データを供給することのできる、例示的な動作環境200のブロック図である。店舗管理システム102、生産コンピューティングシステム104および在庫管理コンピューティングシステム106のそれぞれが、ネットワーク210を介して通信することができる。幾つかの実施形態では、ネットワーク110とネットワーク210とは同じネットワークであってよい。他の実施形態では、ネットワーク210はローカルネットワークでありうるが、ネットワークは非ローカルネットワークであってもよい。生産コンピューティングシステム104および在庫管理コンピューティングシステム106は、1つもしくは複数の店舗に関連付けることができる。幾つかの実施形態では、生産コンピューティングシステム104および在庫管理コンピューティングシステム106のそれぞれは、複数の店舗に関連付けられるパフォーマンスデータおよび/または在庫データを供給することができる。さらに、生産コンピューティングシステム104および在庫管理コンピューティングシステム106のそれぞれが、パフォーマンスデータおよび/または在庫データを識別するかつ/または取得する1つもしくは複数のシステムを含むことができる。例えば、
図2に示されているように、生産コンピューティングシステム104は、全体パフォーマンス検出システム202、マシン利用状態検出システム204および作業者利用状態検出システム206を含むことができ、在庫管理コンピューティングシステム106は在庫検出システム208を含むことができる。なお、生産コンピューティングシステム104および在庫管理コンピューティングシステムのそれぞれがより多いコンポーネント、より少ないコンポーネントまたは異なるコンポーネントを含みうることを理解されたい。全体パフォーマンス検出システム202、マシン利用状態検出システム204、作業者利用状態検出システム206および/または在庫検出システム208の動作に基づいて、店舗管理システム102は、様々なデータストアにおける生産データを受信して記憶することができる。例えば、店舗管理システムは、在庫データを在庫データストア211に、全体パフォーマンスデータを全体パフォーマンスデータストア212に、マシンデータをマシンデータストア214に、作業者データを作業者データストア216に記憶することができる。
【0030】
在庫データ
在庫管理コンピューティングシステム106は、在庫データを取得するかつ/または生成する在庫検出システム208を含むことができる。在庫検出システム208は、特定の在庫を監視するための1つもしくは複数のセンサを含むことができる。例えば、在庫検出システム208は、特定の在庫を監視し、在庫の使用を追跡するために、1つもしくは複数のカメラを含むことができる。さらに、在庫検出システム208は、在庫の日ごとの変化に基づいて在庫を追跡することができる。例えば、在庫検出システム208は、ある日の始めに存在する在庫量とその日の終わりに存在する在庫量とを追跡することができる。在庫の追跡に基づいて、在庫検出システム208は、各日に使用された在庫量を決定することができる。さらに、在庫検出システム208は、注文履歴に基づいて、各日に使用された在庫量を決定することができる。例えば、所定の日に30個のチキンサンドイッチが注文された場合、在庫検出システム208は、30個のチキンサンドイッチが在庫から除去されたことを判別することができる。幾つかの実施形態では、在庫検出システム208は、作業者および/またはユーザのフィードバックに基づき、各日に使用された在庫量を決定することができる。例えば、作業者は、各日に使用された在庫量を、在庫検出システム208および/または別のコンピューティングシステムに入力することができる。幾つかの実施形態では、任意の在庫が完全に欠乏したかどうかを在庫検出システム208が追跡することができる。例えば、在庫検出システム208は、いずれかの在庫サブセット(例えば、特定の製品に関連付けられる在庫サブセット)が完全に欠乏したかどうかを判別することができ、これにより、店舗が関連する在庫にもはやアクセスできなくなる。さらに、在庫検出システム208は、特定の製品が含まれていない在庫に基づいて、補充されていない特定の製品への何らかの注文が受信されたかどうかを判別することができる。在庫検出システム208は、在庫が需要を満たす適切な量であるかどうかを判別するために、在庫を監視することができる。幾つかの実施形態では、在庫検出システム208は、データストアから在庫データを受信することができる。したがって、在庫管理コンピューティングシステム106は、在庫検出システム208を使用して在庫データを取得するかつ/または生成することができる。
【0031】
在庫検出システム208は、在庫データを在庫管理コンピューティングシステム106に供給することができる。さらに、在庫管理コンピューティングシステム106は、当該在庫データを店舗管理システム102へ供給することができる。在庫管理コンピューティングシステム106は、定期的にまたは非定期的に在庫データを供給することができる。さらに、在庫管理コンピューティングシステム106は、解析、フィルタリング、結合、変換などのために在庫データを在庫データストア211に記憶し、生産データとしてシミュレーションコンピューティングシステムに供給することができる。
【0032】
全体パフォーマンスデータ
生産コンピューティングシステム104は、全体パフォーマンスデータを取得するかつ/または生成するために、全体パフォーマンス検出システム202を含むことができる。全体パフォーマンス検出システム202は、店舗の全体パフォーマンスデータを監視するための1つもしくは複数のセンサ(例えばカメラ)を含むことができる。例えば、全体パフォーマンス検出システム202は、顧客が入店した(またはドライブスルーへ進入した)時点、顧客が注文を行った時点、製品の生産を開始した時点、製品の生産を完了した時点、顧客が製品を受け取るためにドライブスルー窓口へ到達した時点、および/または注文が完了した時点を監視し識別するためのセンサを含みうる。さらに、全体パフォーマンス検出システム202は、データを受信するために1つもしくは複数のコンピューティングデバイスと通信することができ、また、受信されたデータに基づいて全体パフォーマンスデータを生成することができる。例えば、全体パフォーマンス検出システム202は、レジスタに関連付けられた1つもしくは複数のコンピューティングデバイスと通信することができ、注文タイミング、注文履歴、払い戻し履歴などを決定するために、1つもしくは複数のコンピューティングデバイスからデータを受信することができる。幾つかの実施形態では、全体パフォーマンス検出システム202は、店舗キャパシティ、ドライブスルーキャパシティなどを監視する1つもしくは複数のセンサから全体パフォーマンスデータを受信することができ、したがって、全体パフォーマンスデータは、店内で受けた注文数、ドライブスルーを介して受けた注文数、店内注文および/またはドライブスルー注文に関連付けられる待機時間、店舗の座席を占有している顧客数、または店舗の全体パフォーマンスを表す他の任意の全体パフォーマンスデータを表すデータを含むことができる。幾つかの実施形態では、全体パフォーマンス検出システム202は、データストアから全体パフォーマンスデータを取得することができる。したがって、生産コンピューティングシステム104は、全体パフォーマンス検出システム202を介して全体パフォーマンスデータを取得することができる。
【0033】
全体パフォーマンス検出システム202は、全体パフォーマンスデータを生産コンピューティングシステム104に供給することができる。さらに、生産コンピューティングシステム104は、全体パフォーマンスデータを店舗管理システム102に供給することができる。生産コンピューティングシステム104は、全体パフォーマンスデータを定期的にまたは非定期的に供給することができる。さらに、生産コンピューティングシステム104は、解析、フィルタリング、結合、変換などのために全体パフォーマンスデータを全体パフォーマンスデータストア212に記憶し、生産データとしてシミュレーションコンピューティングシステムに供給することができる。
【0034】
マシンデータ
生産コンピューティングシステム104は、マシンデータを取得するかつ/または生成するマシン利用状態検出システム204を含むことができる。マシン利用状態検出システム204は、1つもしくは複数のマシン(例えば店舗の各マシン)のパフォーマンス(例えば効率、精度など)を監視する1つもしくは複数のセンサ(例えばマシンセンサ)を含むことができる。さらに、マシン利用状態検出システム204は、1つもしくは複数のセンサと通信してデータを受信することができ、受信されたデータに基づいてマシンデータを生成することができる。例えば、マシン利用状態検出システム204は、特定のマシンの使用を示すデータ(例えば、エスプレッソマシンがいつ作動されたか)を受信することができる。受信されたデータに基づいて、マシン利用状態検出システム204は、特定のマシンがどのように使用されたかを識別し、使用を識別するマシンデータを生成することができる。例えば、マシン利用状態検出システム204は、(例えば、マシンの以前のパフォーマンス、マシンの閾値または(仕様を介して)指定されたパフォーマンスなどに基づく)孤立したマシンのパフォーマンスを識別するマシンデータ、および/または他のマシン(例えば、店舗の他のマシン、他の類似のマシンなど)と比較した当該マシンのパフォーマンスを識別するマシンデータを生成することができる。幾つかの実施形態では、マシン利用状態検出システム204は、1つもしくは複数のセンサおよび/または1つもしくは複数のコンピューティングデバイスからマシンデータを受信することができる。例えば、特定のマシンに、このマシンを監視し、かつこのマシンのパフォーマンスを識別するマシンデータを生成する特定のセンサおよび/または特定のコンピューティングデバイスを装備することができる。さらに、マシンデータには、マシンの効率、マシンの使用、マシンのパフォーマンス、マシンの修理時間、マシンに関連付けられる問題、マシンのダウンタイムなどのうちの1つもしくは複数が含まれうる。幾つかの実施形態では、マシン利用状態検出システム204は、データストアからマシンデータを取得することができる。したがって、生産コンピューティングシステム104は、マシン利用状態検出システム204を介してマシンデータを取得することができる。
【0035】
マシン利用状態検出システム204は、マシンデータを生産コンピューティングシステム104に供給することができる。さらに、生産コンピューティングシステム104が、当該マシンデータを店舗管理システム102に供給することができる。生産コンピューティングシステム104は、マシンデータを定期的にまたは非定期的に供給することができる。さらに、生産コンピューティングシステム104は、解析、フィルタリング、結合、変換などのためにマシンデータをマシンデータストア214に記憶し、生産データとしてシミュレーションコンピューティングシステムに供給することができる。
【0036】
作業者データ
生産コンピューティングシステム104は、作業者データを取得するかつ/または生成する作業者利用状態検出システム206を含むことができる。作業者利用状態検出システム206は、1人もしくは複数人の作業者(例えば店舗に関連付けられる作業者)のパフォーマンス(例えば効率、精度など)を監視するための1つもしくは複数のセンサ(例えばカメラ)を含むことができる。さらに、作業者利用状態検出システム206は、1つもしくは複数のセンサと通信してデータを受信することができ、受信されたデータに基づいて作業者データを生成することができる。作業者データとは、作業者利用状態データ(例えば、作業者が利用されている時間量を表すデータ)を識別できるようにするデータである。例えば、センサは、注文が発注されたことを(例えばモバイルオーダー、レジスタ、ドライブスルーなどを介して)決定することができる。さらに、センサにより、当該オーダーのためのラベルが形成されて作業者が注文の準備を開始したことを判別することができる。センサは、オーダーに関連付けられる特定のステーションに作業者が存在する時間量を決定することができる(例えば、オーダーがエスプレッソである場合、センサは、作業者がエスプレッソマシンのステーションにいる時間量を決定することができる)。さらに、センサは、作業者が顧客に注文品を手渡したことを判別することができる。作業者が顧客に注文品を手渡したことの判別に基づき、センサおよび/または作業者利用状態検出システム206は注文が完了したことを判別することができる。さらに、作業者利用状態検出システム206は、作業者利用状態を識別することができる。例えば、作業者利用状態検出システム206は、特定の製品の注文を準備するのに必要な時間の各部分を分類することができる。さらに、作業者利用状態検出システム206は、オーダーを能動的に準備している時間を作業者の「アクティブ時間」として分類することができる。作業者利用状態検出システム206はさらに、マシンによってオーダーが準備されるまでにかかる時間および/またはオーダーが能動的に準備されない時間を作業者の「アイドル時間」として分類することができる。さらに、作業者利用状態検出システム206は、(例えば、オーダーをさらに準備する、オーダーを引き渡すなどのために)各ステーション間を作業者が歩行した時間を作業者の「ウォーキング時間」としてさらに分類することができる。なお、作業者利用状態検出システム206は、作業者の時間をより多くのクラス、より少ないクラスまたは異なるクラスに分類しうることを理解されたい。さらに、作業者利用状態検出システム206は、分類された時間を使用して、作業者データ(例えば、特定の作業者の効率、利用率など)を決定することができる。例えば、作業者利用状態検出システム206は、注文の準備に費やされた時間全体に対する作業者のアクティブ時間を比較して、当該作業者の利用率および/または効率を決定することができる。幾つかの実施形態では、作業者利用状態検出システム206は、データストアから作業者データを取得することができる。したがって、生産コンピューティングシステム104は、作業者利用状態検出システム206を介して作業者データを取得することができる。
【0037】
作業者利用状態検出システム206は、作業者データを生産コンピューティングシステム104に供給することができる。さらに、生産コンピューティングシステム104は、作業者データを店舗管理システム102に供給することができる。生産コンピューティングシステム104は、作業者データを定期的にまたは非定期的に供給することができる。さらに、生産コンピューティングシステム104は、解析、フィルタリング、結合、変換などのために作業者データを作業者データストア216に記憶し、生産データとしてシミュレーションコンピューティングシステムに供給することができる。したがって、店舗管理システム102は、在庫データ、全体パフォーマンスデータ、マシンデータおよび/または作業者データを生産データとして受信し、この生産データをシミュレーションコンピューティングシステムに供給することができる。幾つかの実施形態では、店舗管理システム102は、在庫データ、全体パフォーマンスデータ、マシンデータおよび/または作業者データのうちの1つもしくは複数を変換(例えば集約)して、生産データを生成することができる。
【0038】
受信されたデータに基づいて、店舗管理システム102は生産データを生成することができる。例えば、生産データは、サービス速度、製品キュー時間、顧客キュー時間、注文生産時間、製品生産時間、窓口時間、スタック長さ、キュー長さ、作業者効率および/または作業者利用状態、マシン効率および/またはマシン利用状態、製品購入量および/または製品購入品質、スループット、ボーク率、顧客待ち時間などのうちの1つもしくは複数を識別することができる。例えば、サービス速度とは、顧客が入店してから(またはドライブスルー列に進入してから)注文製品を作業者が取り扱うまでの時間でありうる。また、スループットとは、所定の時間窓(例えば30分の時間窓)において製造される製品数でありうる。製品キュー時間とは、製品の注文から作業者への製品の割り当てまでのかつ/または製品のラベルの印刷までの時間であり、顧客キュー時間とは、顧客が入店してから(またはドライブスルー列に進入してから)注文を行うまでの時間でありうる。注文生産時間とは、注文が発注されてから作業者が注文製品を取り扱うまでの時間であり、製品生産時間とは製品の生産を開始してから製品の生産を完了するまでの時間でありうる。さらに、窓口時間とは、車両がドライブスルー窓口に到達してから、当該車両に関連付けられる顧客が注文製品を受け取るまでの時間でありうる。キュー長さとは、オーダーを待っている店内列の顧客数(例えば、先にオーダーを発していた顧客を含まない)であり、スタック長さとは、ドライブスルー列の車両数(例えば、先にオーダーを発していた顧客に対応する車両を含む)でありうる。
【0039】
店舗の仮想レプリケーションを生成するプロセス
さらに、シミュレーションコンピューティングシステム108が店舗の仮想レプリケーションをどのように生成し、関連付けられた仮想レプリケーションデータを仮想店舗管理システムにどのように供給することができるかを示すために、
図3Aには、店舗データを識別し、この店舗データに基づいて店舗の仮想レプリケーションを生成し、この店舗の仮想レプリケーションに基づいて仮想生産データを供給する際の例示的な対話300Aが示されている。
図3Aの対話300Aは、例えば、店舗の稼働中に、かつ/またはユーザからのプロンプトに応答して行うことができる。さらに、対話300Aは、店舗の初期コンフィグレーション後に行うこともできる。
【0040】
図3Aの対話は(1)で開始され、ここでは、店舗管理システム102が店舗の店舗データを識別する。店舗管理システム102は、特定の店舗に関連付けられる店舗識別子(例えば、店舗管理システムに割り当てられたかつ/または供給された店舗識別子)に基づいて店舗データを識別することができる。店舗管理システム102は、自身を用いた店舗の登録プロセスを介して店舗データを受信することができる。さらに、店舗管理システム102は、店舗データをバッチ店舗データまたはストリーミング店舗データ(例えば、リアルタイムで受信された店舗データ)として受信することができる。幾つかの実施形態では、店舗管理システム102は、ユーザコンピューティングデバイス、1つもしくは複数のセンサおよび/または他の任意のデバイスから店舗データを受信することができる。さらに、店舗管理システム102は、(例えば、店舗コンフィグレーションを決定するために)店舗の稼働を分析することによって店舗データを識別することができる。店舗管理システム102により、識別された店舗データを記憶することができ、また、記憶された店舗データをその後に識別された店舗データに基づいて更新することができる。
【0041】
店舗データは、店舗コンフィグレーションを表すデータを含むことができる。例えば、店舗データには、特定の製品および/または特定の注文を生産するための時間(例えば特定の注文を手動でまたはマシンによって完了するための期間など)を表すデータが含まれうる。さらに、店舗データは、特定のタスクのための期間(例えば特定のタスクの完了に必要となる時間)を表すデータを含むことができる。店舗データには、店舗レイアウトデータ、作業者割り当てデータ、プロダクトミックスデータ、チャネルミックスデータ、注文データなども含まれうる。例えば、店舗データは、店舗の概略図および/またはフロアプラン、店舗の生産エンジンレイアウト、店舗の物理レイアウト、店舗内のマシンの物理レイアウト、ドライブスルーの物理レイアウト、店舗内の什器の物理レイアウト、店舗内のマシンの数量、種類および/または品質、店舗に関連付けられるトラフィックチャネルミックス、店舗に関連付けられるプロダクトミックス、作業者割り当て、注文履歴などを識別することができる。店舗に関連付けられるプロダクトミックスは、注文ごとの製品タイプおよび/または製品数のミックスを識別することができる(例えば、注文の40%は少なくとも2つの物品を含む、注文の40%はアメリカーノを含む、など)。さらに、チャネルミックスにより、トラフィックチャネルミックスを識別することができる(例えば、注文の30%がドライブスルーを介して注文され、注文の20%が店内で注文され、注文の10%がモバイルオーダーを介して注文される、など)。注文履歴は、1日にわたる注文の推移を識別することのできるものである(例えば、注文履歴により、ピーク時の注文時間窓、オフピーク時の注文時間窓などを識別することができる)。したがって、店舗管理システム102により、店舗の店舗データを識別することができる。
【0042】
店舗データの識別に基づき、(2)において、店舗管理システム102が、店舗データを仮想店舗管理システム112に供給する。店舗管理システム102は、店舗データを解析し、店舗データサブセットを仮想店舗管理システム112に供給することができる。幾つかの実施形態では、店舗管理システム102は、店舗データを店舗データストアに供給することができる。例えば、店舗管理システム102は、店舗データを、この店舗データに関連付けられる店舗識別子と共に店舗データストアに記憶することができる。仮想店舗管理システム112は、店舗データに関連付けられる店舗識別子に基づいて、データストアから店舗データを取得することができる。したがって、店舗管理システム102により、店舗データを仮想店舗管理システム112に供給することができる。
【0043】
店舗データの受信に基づき、(3)において、仮想店舗管理システム112が、店舗の仮想レプリケーションを生成するために、店舗データをシミュレーションコンピューティングシステム108に供給する。仮想店舗管理システム112は、シミュレーションコンピューティングシステム108から取得された店舗データ、またはシミュレーションコンピューティングシステム108から取得された店舗データサブセットを、シミュレーションコンピューティングシステムに供給することができる。さらに、仮想店舗管理システム112は、店舗の仮想レプリケーションの生成を求める要求と共に店舗データを供給することができる。さらに、仮想店舗管理システム112は、シミュレーションコンピューティングシステム108が、店舗データに基づいて1つもしくは複数の店舗のレプリケーションをどのように生成するかを示すことができる。したがって、仮想店舗管理システム112により、店舗データをシミュレーションコンピューティングシステム108に供給することができる。
【0044】
変更された店舗のバージョンを識別するために、(4)において、シミュレーションコンピューティングシステム108が、1つもしくは複数の店舗の仮想レプリケーションを生成する。1つもしくは複数の店舗の仮想レプリケーションを生成するために、シミュレーションコンピューティングシステムが、入力データをシミュレーションプラットフォームに供給することができる。幾つかの実施形態では、入力データは、1つもしくは複数の店舗の仮想レプリケーションを生成するためのスクリプトであってよい。入力データは、店舗(または複数の店舗)に関連付けられる1つもしくは複数のベース入力を含むことができる。例えば、ベース入力は、入力またはパラメータ(例えば、複数の店舗に関連付けられるタイミングデータ)を含みうる。また、入力データは、当該店舗に関連付けられる1つもしくは複数のカスタマイズ入力を含むこともできる。カスタマイズ入力は、店舗データを含みうる。供給された入力データに基づいて、シミュレーションコンピューティングシステム108は、店舗の仮想レプリケーションを生成することができる。さらに、シミュレーションコンピューティングシステム108は、入力データの1つもしくは複数の入力またはパラメータを変更して、変更された店舗の仮想レプリケーションを生成することができる。1つもしくは複数のパラメータが変更された場合、変更された店舗の仮想レプリケーションにより、店舗がどのように稼働されることになるかを識別することができる。例えば、変更された店舗の仮想レプリケーションにより、店舗レイアウトが変更された場合に(例えば店内注文のオプションが削除された場合に)店舗の稼働がどのように変化するかを識別することができる。シミュレーションコンピューティングシステム108は、複数の変更された店舗の仮想レプリケーションを生成することができる。したがって、シミュレーションコンピューティングシステム108により、1つもしくは複数の店舗の仮想レプリケーションを生成することができる。
【0045】
1つもしくは複数の店舗の仮想レプリケーションに基づき、(5)において、シミュレーションコンピューティングシステム108が、仮想店舗管理システム112に仮想生産データを供給する。シミュレーションコンピューティングシステム108は、1つもしくは複数の店舗の仮想レプリケーションを生成し、1つもしくは複数の店舗の仮想レプリケーションの動作をシミュレートすることができる。1つもしくは複数の仮想レプリケーションの動作のシミュレーションに基づいて、シミュレーションコンピューティングシステムは、1つもしくは複数の仮想レプリケーションに関連付けられる仮想生産データを識別することができる。例えば、1つもしくは複数の仮想レプリケーションのそれぞれが、対応する仮想レプリケーションの動作を表す仮想レプリケーションデータを生成することができる。幾つかの実施形態では、シミュレーションコンピューティングシステム108および/または仮想店舗管理システム112は、仮想生産データに基づいて、キーパフォーマンスインジケータを識別することができる。例えば、キーパフォーマンスインジケータには、仮想生産データに基づく(例えば、物品ごと、店舗ごと、キュー長さごとなどの)サービス速度、(例えば、作業者ごとの)作業者の利用状態および/または効率、(例えば、マシンごと、店舗のステーションごとなどの)スループットなどが含まれうる。したがって、シミュレーションコンピューティングシステム108により、仮想生産データを仮想店舗管理システム112に供給することができる。
【0046】
さらに、仮想店舗管理システム112が店舗の仮想レプリケーションをどのように生成できるかを示すために、
図3Bには、生産データと仮想生産データとの比較を含む、店舗の仮想レプリケーションを生成する際の例示的な対話300Bが示されている。
図3Bの対話300Bは、例えば、シミュレーションコンピューティングシステム108が1つもしくは複数の店舗の仮想レプリケーションのパフォーマンスをシミュレーションして仮想生産データを識別した後に行うことができる。さらに、対話300Bは、店舗の初期コンフィグレーションの後に行うこともできる。幾つかの実施形態では、対話300Bは、
図3Aの対話300Aに続いて行うことができる。
【0047】
図3Bの対話は(1)で開始され、ここでは、店舗管理システム102が店舗の生産データを識別する。店舗管理システム102は、特定の店舗に関連付けられる店舗識別子(例えば、店舗管理システムに割り当てられたかつ/または供給された店舗識別子)に基づいて生産データを識別することができる。生産データにより、店舗によって識別された店舗コンフィグレーションに少なくとも部分的に基づきうる、当該店舗のパフォーマンスを識別することができる。さらに、生産データは、店舗データに基づいて、店舗がどのように稼働されているのかを識別することができる。例えば、店舗管理システム102は、生産データを分析して、キーパフォーマンスインジケータ(例えば、サービス速度、作業者利用状態データ、マシン利用状態データ、効率など)を識別することができる。店舗管理システム102は、店舗が稼働しているときに生産データを受信することができる。例えば、店舗管理システム102は、作業者データ、マシンデータ、全体パフォーマンスデータ、在庫データなどを表す生産データを定期的にまたは非定期的に受信することができる。さらに、1つもしくは複数のコンピューティングデバイスが、生産データを店舗管理システム102に定期的に報告することができる。店舗管理システム102は、生産データをバッチ生産データまたはストリーミング生産データ(例えばリアルタイムで受信される生産データ)として受信することができる。上述したように、店舗管理システム102は、ユーザコンピューティングデバイス、1つもしくは複数のセンサおよび/または他の任意のデバイスから生産データを受信することができる。したがって、店舗管理システム102により、店舗の生産データを識別することができる。
【0048】
生産データの識別に基づき、(2)において、店舗管理システム102が生産データを仮想店舗管理システム112に供給する。店舗管理システム102は生産データを解析し、生産データサブセットを仮想店舗管理システム112に供給可能である。店舗管理システム102は、シミュレーションコンピューティングシステム108による店舗の仮想レプリケーションのシミュレーションに続いてまたはその期間中にまたはその後に、生産データを仮想店舗管理システム112に供給して、仮想生産データを生成することができる。幾つかの実施形態では、店舗管理システム102は、生産データを生産データストアに供給することができる。例えば、店舗管理システム102は、生産データに関連付けられる店舗識別子と共に生産データを生産データストアに記憶することができる。仮想店舗管理システム112は、生産データに関連付けられる店舗識別子に基づいて、データストアから生産データを取得することができる。したがって、店舗管理システム102により、生産データを仮想店舗管理システム112に供給することができる。
【0049】
店舗管理システム102からの生産データの受信およびシミュレーションコンピューティングシステム108からの仮想生産データの受信に基づき、(3)において、仮想店舗管理システム112が、生産データと仮想生産データとの比較を行う。仮想店舗管理システム112は、生産データと仮想生産データとを比較して、特定の店舗データセット(例えば特定の店舗コンフィグレーション)を識別することができる。例えば、仮想店舗管理システム112は、生産データと仮想生産データとを比較して、最大サービス速度、最大作業者利用状態、最大マシン利用状態などに関連付けられる店舗データを識別することができる。さらに、生産データと仮想生産データとの比較は、1つもしくは複数のユーザ目標に基づいて行われうる。1つもしくは複数のユーザ目標とは、仮想店舗管理システム112のユーザに関連付け可能であって、ユーザのプリファレンスまたは目標を示すものでありうる。例えば、1つもしくは複数のユーザ目標により、サービス速度の増大、作業者利用状態の増大、マシン利用状態の増大などに関するプリファレンスを識別することができる。1つもしくは複数のユーザ目標に基づいて、仮想店舗管理システム112は、生産データの特定のコンポーネントと仮想生産データとを比較することができる。第1の時点(例えば午後)では、ユーザは第1のユーザ目標(例えばスループットの増大)に関連付け可能となり、第2の時点(例えば夜間)では、ユーザは異なる第2のユーザ目標(例えばサービス速度の増大)に関連付け可能となる。幾つかの実施形態では、仮想店舗管理システム112は、生産データと、複数の店舗の仮想レプリケーションに関連付けられる複数の仮想生産データとを比較することができる。したがって、仮想店舗管理システム112により、生産データと仮想生産データとの比較が行われる。
【0050】
生産データと仮想生産データとの比較に基づき、(4)において、仮想店舗管理システム112が出力を生成する。仮想店舗管理システム112は、生産データと仮想生産データとユーザの目標との比較に少なくとも部分的に基づいて、出力(または複数の出力)を生成することができる。例えば、仮想店舗管理システム112は、生産データと仮想生産データとの差が閾値(例えばユーザ閾値、システム閾値など)を超過するかどうかの判別に基づいて出力を生成することができる。生産データと仮想生産データとの差が閾値を超過した場合、仮想店舗管理システム112は、仮想生産データに関連付けられる店舗データに基づいて、変更された店舗コンフィグレーションを有する変更された店舗の仮想レプリケーションを含む出力を生成することができる。生産データと仮想生産データとの差が閾値を超過しない場合、仮想店舗管理システム112は、(例えば、現在の店舗コンフィグレーションを維持するというユーザプリファレンスに基づいて)現在の店舗コンフィグレーションを有する店舗の仮想レプリケーションを含む出力を生成することができる。例えば、出力は、店内注文の中止、販売中止製品(例えばアメリカーノ)、店内での飲食開始などを含む変更された店舗コンフィグレーションを、変更に関連付けられる店舗の仮想レプリケーションに基づいて識別することができる。さらに、出力は、複数の受注済み注文の再注文、および/または複数の製品を含む注文を含みうる。例えば、店舗は、第1の製品についての第1の注文、第2の製品および第3の製品についての第2の注文、ならびに第4の製品についての第3の注文を受注しうる。出力には、第1の製品の生産を割り当てて開始し、第3の製品の生産を割り当てて完了し、第2の製品の生産を割り当てて開始し、第4の製品の生産を割り当てて完了し、第1の製品および第2の製品の生産を完了する、という作業者スケジュールが含まれうる。したがって、仮想店舗管理システム112により、出力を生成することができる。
【0051】
ここでの出力に基づき、(6)において、仮想店舗管理システム112は、ユーザへの出力を、ユーザに関連付けられる店舗管理システム102に供給する。さらに、店舗管理システム102は、ここでの出力を、ユーザに関連付けられるユーザコンピューティングデバイスへルーティングすることができる。
【0052】
出力の受信に応答して、ユーザコンピューティングデバイスは、出力を表示することができる。例えば、ユーザコンピューティングデバイスは、インタフェース(例えばAPI、CLIまたは他の任意のインタフェース)を介して出力を表示することができる。さらに、ユーザコンピューティングデバイスは、Webページ、モバイルAPI、音声インタフェース、またはユーザコンピューティングデバイス用の他の任意のインタフェースを介して出力を表示することができる。
【0053】
例示的なシミュレーションユーザインタフェース
図4は、ユーザコンピューティングデバイスが店舗の仮想レプリケーションに関連する情報を供給することのできる例示的なユーザインタフェース400を示す図である。仮想店舗管理システム112および/またはシミュレーションコンピューティングシステム108は、ユーザインタフェース400をプレゼンテーションするかつ/または表示することができる。ユーザインタフェース400はさらに、店舗の仮想レプリケーションのコンフィグレーションに基づいて、ユーザが店舗コンフィグレーションを変更することを推奨するプロンプトを含むことができる。仮想店舗管理システム112および/またはシミュレーションコンピューティングシステム108はさらに、ユーザコンピューティングデバイスからのプロンプトの受信またはユーザコンピューティングデバイスに関連付けられるアクション(例えば、特定のAPIへのナビゲーション)の識別に基づいて、ユーザインタフェース400に表示を行わせることができる。店舗の仮想レプリケーションは、店舗に関連付けられる特定の情報を識別することができる。例えば、店舗に関連付けられる情報は、注文種類(例えば、モバイルオーダー(“MOP”)、ドライブスルーオーダー(例えば窓口外オーダー(“OTW”)など)、店舗の物理レイアウト(例えば店舗のドライブスルー(“DT”)、店舗の低温飲料ステーション(“CBS”)、店舗の高温飲料ステーションなど)および/または店舗のマシン(例えば店舗のエスプレッソマシン(“ESP”)など)に関連付けられる情報を含みうる。
【0054】
ユーザインタフェース400は複数の部分を含む。例えば、ユーザインタフェース400は、第1の部分402、第2の部分404、第3の部分406、第4の部分408および第5の部分410を含んでいる。なお、ユーザインタフェース400は、より多くの部分、より少ない部分または異なる部分を含みうることを理解されたい。さらに、ユーザインタフェース400の各部分は、ユーザインタフェース400との対話により店舗の仮想レプリケーションに関連付けられる追加情報の表示が行われるよう、対話可能に構成することができる。
【0055】
ユーザインタフェース400は、店舗の仮想レプリケーションを識別することができる。さらに、ユーザインタフェース400の第1の部分402は、店舗の仮想レプリケーションの物理レイアウトを識別することができる。例えば、ユーザインタフェース400の第1の部分402は、作業者、マシン、什器、レジスタなどの物理配置を識別することができる。さらに、第1の部分402は、店舗に関連付けられるトラフィックチャネルを識別することができる。
図4の例では、第1の部分402において、1つの“Cafe Channel”、4つの“Curbside Spots”および1つの“OTW Channel”を含む店舗の仮想レプリケーションが識別される。第1の部分402から、店舗識別子と、店舗に関連付けられる作業者の人数とを識別することができる。
図4の実施例では、第1の部分から、作業者数は“Partner”4人と識別され、店舗識別情報は“Store 19475 Curb”および“DT/Cafe/Curbside”と識別される。
【0056】
ユーザインタフェース400の第2の部分404では、店舗の仮想レプリケーションに関連付けられるマシンを識別することができる。例えば、第2の部分404から、店舗の仮想レプリケーション内に配置されたマシンを識別することができる。幾つかの実施形態では、第2の部分404から、各マシンが店舗の仮想レプリケーション内のどの場所に位置しているかを識別することができる。
図4の例では、第2の部分404から、仮想レプリケーションに関連付けられるマシンが“Brew”、“CBS”、“EPS CAFE”、“EPS DT”、“Oven 1”および“Oven 2”として識別される。
【0057】
ユーザインタフェース400の第3の部分406からは、店舗のドライブスルーに関連付けられる情報を識別することができる。例えば、第3の部分406から、ドライブスルーオーダーが店舗の仮想レプリケーション内で発注されるたびに、ドライブスルーライン内の車両数(例えば平均車両数)を決定することができる。幾つかの実施形態では、車両数は、先行のオーダーに対応する車両を含みうる。さらに、第3の部分406からは、注文ポイントよりも前方の車両数(例えば、オーダー待ちの顧客に対応する車両の数)および引渡しポイントよりも前方の車両数(例えば、オーダーを行って注文製品の受け取りを待機している顧客に対応する車両の数)を識別することができる。
図4の例では、第3の部分406から、“Stack Size to Order Point 5”および“Stack Size to Window 4”を含む、店舗の仮想レプリケーションのための“DT Stacks”が識別される。
【0058】
ユーザインタフェース400の第4の部分408では、店舗の仮想レプリケーションに関連付けられるプロダクトミックスおよび/またはチャネルミックスを識別することができる。例えば、第4の部分408からは、店舗へのトラフィックがそれぞれ異なるチャネルにどのように分割されるか、および/または注文がそれぞれ異なる製品にどのように分割されるかを識別することができる。
図4の例では、第4の部分408から、“35%”の“WARMED FOOD”、“18%”の“HOT ESPRESSO”、“16%”の“ICED COFFEE”、“10%”の“SHAKEN”および“9%”の“ICED ESPRESSSO”を含むプロダクトミックスが識別される。第4の部分408からはさらに、“46%”のOTW、“20%”の店内ピックアップモバイルオーダーおよび“20%”の店内オーダーを含むチャネルミックスが識別される。
【0059】
ユーザインタフェース400の第5の部分410では、作業者割り当てを識別することができる。例えば、第5の部分410により、店舗の仮想レプリケーションに関連付けられる各作業者および各作業者の位置および/または割り当てを行うことができる。例えば、各作業者を特定のステーションに割り当てることができる。
図4の例では、第5の部分410から、作業者“A”が“Drive Thru Order Routine”および“Drive Thru Register Routine”に割り当てられており、作業者“B”が“Brewed Coffee Routine”、“Cafe Order Routine”および“Warmed Food Routine”に割り当てられており、作業者“C”が“Curbside”および“Customer Support Cycle”に割り当てられており、作業者“D”が“Beverage Routine”および“Blended Beverage Routine”に割り当てられていることが識別される。なお、ユーザインタフェース400はより多くの、より少ないまたは異なる情報を含みうることを理解されたい。さらに、店舗の仮想レプリケーションを、より多数の、より少数のまたは異なるマシン、チャネル、作業者、コンフィグレーションなどに関連付けることができることを理解されたい。
【0060】
なお、
図4は例として提供しているものであり、本開示は特定の1つもしくは複数のユーザインタフェースに限定されないことを理解されたい。さらに、ユーザインタフェースは、本開示の範囲において他のユーザインタフェースと組み合わせ可能、分割可能または再編成可能であることを理解されたい。例えば、ユーザインタフェース400の部分402とユーザインタフェース400の部分408とは別個のユーザインタフェースに分割することができ、これら別個のインフェースは、店舗の仮想レプリケーションと店舗のプロダクトミックスおよび/またはチャネルミックスとを表示するように実装可能である。幾つかの実施形態では、顧客との対話、作業者割り当て、マシン割り当て、レイアウト変更などのための推奨変更を表す別個のユーザインタフェースを表示することができる。したがって、
図4が例示的であって限定的ではないことを理解されたい。
【0061】
図5を参照して、店舗の仮想レプリケーションを生成するための例示的なルーチン500を説明する。ルーチン500は、例えば
図1の仮想店舗管理システム112によって実装可能である。ルーチン500はブロック502で開始され、仮想店舗管理システム112が店舗に関連付けられる複数の店舗データを識別する。例えば、複数の店舗データは、店舗の稼働に関連付けられるものでありうる。幾つかのケースでは、仮想店舗管理システム112が、物理環境(例えば、店舗、建物、オフィス、工場、企業など)に関連付けられる複数の環境データを識別することができる。複数の店舗データは、在庫データ、店舗コンフィグレーションデータ、労働力割り当てデータ、店舗レイアウトデータおよび/またはマシン割り当てデータ(例えば機器割り当てデータ)のうちの少なくとも1つを含みうる。労働力割り当てとは、店舗に関連付けられる1人もしくは複数人の作業者(例えばロボット作業者または人間作業者)を識別できるようにするものである。
【0062】
ブロック504において、仮想店舗管理システム112は、店舗の仮想レプリケーションを生成する。例えば、店舗の仮想レプリケーションは、仮想店舗、仮想モデルなどであってよい。幾つかのケースでは、仮想店舗管理システム112が、物理環境(例えば店舗)をモデリングする仮想環境(例えば仮想店舗)を生成することができる。仮想店舗管理システム112は、シミュレーションプラットフォームにアクセスして、店舗の仮想レプリケーションを生成することができる。シミュレーションプラットフォームは、複数の店舗データに基づいて店舗の仮想レプリケーションを生成することができる。店舗の仮想レプリケーションを生成するために、シミュレーションプラットフォームは、複数のシミュレーションを動作させ、複数のシミュレーションのそれぞれの出力を比較して、仮想レプリケーションを検証することができる。
【0063】
ブロック506において、仮想店舗管理システム112が、店舗に関連付けられる複数の生産データを識別する。仮想店舗管理システム112は、店舗の仮想レプリケーションに基づいて複数の生産データを識別可能である。例えば、複数の生産データは、センサデータ、マシンデータ(例えば機器データ)、注文データ、在庫データおよび/または注文処理データのうちの少なくとも1つを含みうる。さらに、仮想店舗管理システム112は、別のコンピューティングシステム(例えば店舗管理システム102)から複数の生産データを受信することができる。例えば、仮想店舗管理システム112は、1つもしくは複数のセンサからリアルタイムで複数の生産データを取得することができる。さらに、仮想店舗管理システム112は、店舗に関連付けられる店舗コンピューティングシステムからリアルタイムで複数の生産データを取得することもできる。店舗コンピューティングシステムは、店舗に関連付けられる作業者を監視し、作業者の監視に基づいて、作業者に関連付けられる作業者利用状態データを識別することができる。さらに、複数の生産データは、作業者利用状態データを含むことができる。作業者利用状態データは、特定の時点における作業者のステータス(例えば、アクティブ、アイドル、ウォーキングなど)を識別することができる。さらに、店舗コンピューティングシステムは、店舗に関連付けられるマシン(例えば特定の機器)を監視し、マシンの監視に基づいて、マシンに関連付けられるマシン利用状態データを識別することができる。複数の生産データは、マシン利用状態データを含むことができる。複数の生産データに基づいて、仮想店舗管理システム112は、店舗に関連付けられるサービス速度、スループットおよび/または労働力使用を決定することができる。
【0064】
幾つかのケースでは、仮想店舗管理システム112が生産データを使用して、店舗の仮想レプリケーションを(例えばリアルタイムで)テストすることができる。例えば、仮想店舗管理システム112は、店舗に関連付けられる生産データと店舗の仮想レプリケーションに関連付けられる生産データとを比較して、店舗の仮想レプリケーションに関連付けられるデータストリームに対し、店舗に関連付けられるデータストリームをアライメントさせることができる。仮想店舗管理システム112は、店舗に関連付けられる生産データと店舗の仮想レプリケーションに関連付けられる生産データとを比較して、店舗の仮想レプリケーションが店舗をモデリングしているかどうかを確認することができる。例えば、仮想店舗管理システム112は、店舗に関連付けられる生産データが所定の精度(例えば90%、95%、97%など)以内で店舗の仮想レプリケーションに関連付けられる生産データに一致するかどうかを確認することができる。幾つかのケースでは、当該精度は、システムによって生成されたもしくはユーザによって生成された精度であってよい。仮想店舗管理システム112により、店舗に関連付けられる生産データが所定の精度以内で店舗の仮想レプリケーションに関連付けられる生産データに一致しないと判別された場合、仮想店舗管理システム112は、店舗の仮想レプリケーションに関連付けられる1つもしくは複数の値を(例えばリアルタイムで)調整して、店舗を再テストすることができる。例えば、仮想店舗管理システム112は、特定のセンサ、特定の機器部分、作業者などに関連付けられる1つもしくは複数の値を変更することができる。仮想店舗管理システム112は、店舗の仮想レプリケーションの調整および再テストを任意の回数だけ繰り返すことができる。
【0065】
ブロック508において、仮想店舗管理システム112が、複数の店舗データの1つもしくは複数の値を変更して、複数の変更された店舗データを生成する。仮想店舗管理システム112は、店舗に関連付けられる複数の生産データの識別に基づき、複数の店舗データの1つもしくは複数の値を変更して、複数の変更された店舗データを生成することができる。
【0066】
幾つかのケースでは、仮想店舗管理システム112、別個のシステムおよび/または(ユーザコンピューティングデバイスを介して)ユーザが、複数の店舗データの変更可能な値を定義することができる。仮想店舗管理システム112、別個のシステムおよび/またはユーザは、パートナー数、パートナータイプ、店舗サイズ、機器数、機器タイプ、廃棄物量、ドライブスルー、モバイルオーダーなどのうちの1つもしくは複数に関連付けられる値が変更可能であることまたは変更不能であることを示すことができる。例えば、ユーザは、機器数、機器タイプ、ドライブスルーおよびモバイルオーダーに関連する値が変更可能であること、およびパートナー数、パートナータイプ、店舗サイズおよび廃棄物量に関連付けられる値が変更不能であることを示すことができる。さらに、仮想店舗管理システム112、別個のシステムおよび/またはユーザは、1つもしくは複数の値についての値パラメータ(例えば範囲、最大値、最小値、平均値、中間値など)を供給することができる。例えば、あるユーザは、作業者数に関連付けられる値が10人を超える作業者へは変更できないことを示すことができる。仮想店舗管理システム112は、変更可能な値および/またはパラメータに基づいて、複数の変更された店舗データを生成することができる。
【0067】
ブロック510において、仮想店舗管理システム112は、変更された店舗の仮想レプリケーションを生成する。仮想店舗管理システム112は、シミュレーションプラットフォームにアクセスして、変更された店舗の仮想レプリケーションを生成することができる。シミュレーションプラットフォームは、複数の変更された店舗データに基づいて変更された店舗の仮想レプリケーションを生成することができる。上述したように、変更された店舗の仮想レプリケーションを生成するために、シミュレーションプラットフォームが複数のシミュレーションを動作させ、複数のシミュレーションのそれぞれの出力を比較して、変更された仮想レプリケーションを検証することができる。さらに、シミュレーションプラットフォームは、変更された仮想レプリケーションをどのようにシミュレートするかを決定するために、複数の店舗データを含む複数の店舗データセットを、複数の生産データを含む複数の仮想生産データセットへマッピングすることができる。
【0068】
仮想レプリケーションおよび変更された仮想レプリケーションに基づき、ブロック512において、仮想店舗管理システム112は、変更された店舗の仮想レプリケーションと店舗の仮想レプリケーションとの比較を行う。変更された店舗の仮想レプリケーションと店舗の仮想レプリケーションとの比較は、複数の生産データに基づいて行うことができる。さらに、変更された店舗の仮想レプリケーションと店舗の仮想レプリケーションとを比較するために、仮想店舗管理システム112は、変更された仮想レプリケーションに関連付けられる生産データと店舗に関連付けられる生産データとを比較することができる。幾つかの実施形態では、仮想店舗管理システム112は、複数の生産データに基づいて、(変更された店舗の仮想レプリケーションを含む)複数の変更された店舗の仮想レプリケーションと店舗の仮想レプリケーションと比較することができる。さらに、仮想店舗管理システム112は1つもしくは複数のユーザ目標をさらに決定することができ、ユーザ目標は、1つもしくは複数のサービス速度、スループットおよび/または労働力使用に対応するものでありうる。変更された仮想レプリケーションと仮想レプリケーションとの比較は、1つもしくは複数のユーザ目標に基づいて行うことができる。幾つかの実施形態では、ユーザ目標のそれぞれは特定の条件に関連付け可能であり、変更された仮想レプリケーションと仮想レプリケーションとの比較は当該特定の条件に基づいて行うことができる。
【0069】
当該店舗のための店舗コンフィグレーションを決定するために、ブロック514において、仮想店舗管理システム112が、変更された店舗の仮想レプリケーションを出力する。変更された店舗の仮想レプリケーションの出力は、変更された店舗の仮想レプリケーションと店舗の仮想レプリケーションとを比較することに基づいて行うことができる。幾つかの実施形態では、変更された店舗の仮想レプリケーションの出力は、複数の変更された仮想レプリケーションと仮想レプリケーションとの比較に基づいて行うことができる。当該出力には、変更された店舗の仮想レプリケーションに関連付けられるデータが含まれうる。例えば、出力には、店舗に関連付けられる変更された店舗レイアウト、店舗に関連付けられる変更された作業者割り当て、または店舗に関連付けられる変更されたマシン(例えば機器)割り当てが含まれうる。さらに、出力には作業者スケジュールが含まれてもよく、スケジューリングシステムにより作業者スケジュールを動的に定義することができる。
【0070】
幾つかの実施形態では、仮想店舗管理システム112は出力を表示させることができる。仮想店舗管理システム112は、ユーザに関連付けられるユーザコンピューティングデバイスのディスプレイを介して出力を表示させることができる。
【0071】
仮想店舗管理システム112は、ユーザのための推奨(例えば、店舗の推奨レイアウト)として、変更された店舗の仮想レプリケーションを出力することができる。幾つかのケースでは、推奨を生成するために、仮想店舗管理システム112が、推奨を実現するためのコスト、推奨の実現に基づく節約、推奨の実現に基づく生産性などに基づいて、変更された店舗の仮想レプリケーションと店舗の仮想レプリケーションとの比較を行うことができる。例えば、仮想店舗管理システム112は、推奨の実現に基づく節約が特定量(例えば10%、20%など)だけ推奨を実現するためのコストを上回るとの判別に基づいて、変更された店舗の仮想レプリケーションを推奨することができる。
【0072】
幾つかのケースでは、仮想店舗管理システム112が、1つもしくは複数の店舗のセンサに関連付けられる生産データサブセットを識別することができる。例えば、仮想店舗管理システム112は、ドライブスルー窓口に関連付けられる動きセンサに関連付けられる第1の生産データサブセット、レジスタに関連付けられる近接センサに関連付けられる第2の生産データサブセット、エスプレッソマシンに関連付けられるセンサに関連付けられる第3の生産データサブセットなどを識別することができる。仮想店舗管理システム112は、生産データを解析する手法に基づいて、生産データサブセットを識別することができる。例えば、ユーザは(ユーザコンピューティングデバイスを介して)生産データの解析手法を識別して、特定のセンサに関連付けられる生産データサブセットを識別することができる。幾つかのケースで、ユーザは、生産データの解析手法を定期的にまたは非定期的に更新することができる。例えば、ユーザは、店舗にセンサを追加し、生産データの解析手法を定義してこのセンサに関連付けられる生産データサブセットを識別することができ、かつ/またはユーザは、生産データの解析手法を更新してかつ/または追加して、以前に追加されたセンサに関連付けられる生産データサブセットを識別することができる。
【0073】
さらに、仮想店舗管理システム112は、センサに対応する店舗の仮想レプリケーションにおいて仮想センサを定義することができる。仮想店舗管理システム112は、仮想店舗に関連付けられている店舗の仮想レプリケーションに関連付けられる仮想生産データサブセットを定義することができる。仮想生産データサブセットおよび生産データサブセットに基づいて、仮想店舗管理システム112は、店舗と店舗の仮想レプリケーションとを比較することができる。仮想店舗管理システム112は特定のセンサに関連付けられるデータサブセットを動的に識別可能であるかつ/または定義可能であるため、店舗と店舗の仮想レプリケーションとの比較の粒度を動的に調整することができる。これにより、仮想店舗管理システム112は、動的な粒度で、(例えば店舗に関連付けられる個々のセンサに基づいて)店舗の仮想レプリケーションを店舗に相関させることが可能となりうる。幾つかのケースでは、仮想店舗管理システム112が、仮想生産データサブセットおよび生産データサブセットを使用した店舗と当該店舗の仮想レプリケーションとの比較に基づいて、当該店舗の仮想レプリケーションおよび/または当該店舗の仮想レプリケーションの特定の仮想センサを調整することができる。他のケースでは、仮想店舗管理システム112は、仮想生産データサブセットおよび生産データサブセットを使用した店舗と店舗の仮想レプリケーションとの比較に基づいて、当該店舗の仮想レプリケーションを置換することができる。さらに、仮想店舗管理システム112は、定義された仮想生産データサブセットを利用することで、変更された店舗の仮想レプリケーションと店舗の仮想レプリケーションとを(例えば、仮想生産データサブセットおよび変更された仮想生産データサブセットを使用して)比較することができる。
【0074】
様々な実施形態において、実行ルーチン500は、
図5に示されているよりも多数の、少数の、異なる、もしくは異なるブロック組み合わせを含むことができる。例えば、ルーチン500は、幾つかの実施形態では仮想レプリケーションの表示を含みうる。さらなる例として、ブロック504とブロック508とを組み合わせることができ、ルーチン500は、シミュレーションプラットフォームにアクセスして、仮想レプリケーションおよび変更された仮想レプリケーションを同時に生成することができる。したがって、
図5に示されているルーチン500は例示的であって限定的ではないことを理解されたい。
【0075】
図6には、本開示の態様を実現するために使用可能なコンピュータハードウェアコンポーネントおよびソフトウェアコンポーネントの配置構成を含む、仮想店舗管理システム112の一般的なアーキテクチャが示されている。仮想店舗管理システム112は、
図6に示されているよりも多数の(または少数の)要素を含むことができる。ただし、実施可能な開示の提供のためにこれらの要素の全てを示す必要はない。
【0076】
図示されているように、仮想店舗管理システム112は、プロセッサ602、入出力デバイス604、ネットワークインタフェース606およびデータストア608を含み、これらの全てが通信バス610を介して相互に通信可能である。ネットワークインタフェース606は、1つもしくは複数のネットワーク(例えば、
図1に示されているネットワーク110)またはコンピューティングシステムへの接続を提供することができ、その結果、仮想店舗管理システム112に対して、他のコンピューティングシステムまたはサービス、例えば
図1に示されているシミュレーションコンピューティングシステム108および/または店舗管理システム102との情報および命令の送受信を行わせることが可能となりうる。幾つかの実施形態では、仮想店舗管理システム112は、シミュレーションコンピューティングシステム108および/または店舗管理システム102から受信されたプロンプトを処理することができる。
【0077】
プロセッサ602は、メモリ620との通信も可能である。メモリ620は、1つもしくは複数の実施形態を実現するためにプロセッサ602が実行可能なコンピュータプログラム命令(幾つかの実施形態では、モジュールまたはコンポーネントとしてグループ化されている)を含むことができる。メモリ620は、一般に、RAM、ROMおよび/または他の持続的な、補助的なもしくは非一時的なコンピュータ可読媒体を含む。メモリ620は、仮想店舗管理システム112の全般的な管理および動作においてプロセッサ602によって使用されるコンピュータプログラム命令を提供するオペレーティングシステム622を記憶したものであってよい。メモリ620はさらに、本開示の態様を実現するための特定のコンピュータ実行可能命令および他の情報(本明細書では「モジュール」と称されうる)を記憶したものであってもよい。例えば、メモリ620は、マシンデータ624、作業者データ626、在庫データ628および/または全体パフォーマンスデータ630を含むことができる。幾つかの実施形態では、マシンデータ624、作業者データ626、在庫データ628、および/または全体パフォーマンスデータ630は、直接にまたはネットワーク110のいずれかを介して内部のもしくは外部のデータストアから取得可能であり、かつ/または内部のもしくは外部のデータストアに記憶可能である。
【0078】
図6に示されているコンポーネントの多くは任意選択手段であり、仮想店舗管理システム112の各実施形態は各構成要素の組み合わせであってもよいし、または各構成要素の組み合わせでなくてもよいことが認識されるであろう。また、構成要素は、個別である必要も離散的である必要もない。構成要素を再編成することもできる。例えば、仮想店舗管理システム112は、単一の物理デバイスで表現されてもよいし、または代替的に複数の物理デバイスに分割されてもよい。幾つかの実施形態では、仮想店舗管理システム112の一部として図示されている構成要素を、付加的にもしくは代替的に他のコンピューティングデバイス(例えば
図1の店舗管理システム102)に含めることができ、これにより、本開示の幾つかの態様を仮想店舗管理システム112によって実行させることができるが、別の態様では他のコンピューティングデバイスによって実行させることもできる。
【0079】
本明細書に記載している任意の特定の実施形態に従って必ずしも全ての目的または利点が達成可能であるわけではないことを理解されたい。つまり、例えば、特定の実施形態が必ずしも本明細書に教示するもしくは示唆する他の目的または利点を達成することなく、本明細書に教示しているいずれかの利点もしくは利点群が達成されるようにまたは最適化されるように動作すべく構成可能であることを、当業者は認識するであろう。
【0080】
本明細書に記載する全てのプロセスは、コンピューティングシステムによって実行される1つもしくは複数の特定のコンピュータ実行可能命令を含むソフトウェアコードモジュールとして実現可能であり、当該ソフトウェアコードモジュールを介して完全に自動化可能である。コンピューティングシステムは、1つもしくは複数のコンピュータまたはプロセッサを含むことができる。コードモジュールは、任意の種類の非一時的なコンピュータ可読媒体または他のコンピュータストレージデバイスに記憶可能である。方法の一部もしくは全てを専用のコンピュータハードウェアにおいて実行することができる。
【0081】
本明細書に記載している以外の多くの変形形態が本開示から明らかとなる。例えば、実施形態に応じて、本明細書に記載している任意のアルゴリズムのいずれかの行為、イベントまたは機能を異なる順序で実行することができ、また追加、統合または完全に省略することができる(例えば、記載している全ての行為またはイベントがアルゴリズムの実行に必要なわけではない)。さらに、ある実施形態において、行為またはイベントを、順次にではなく、例えばマルチスレッド処理もしくは割り込み処理によって、または複数のプロセッサもしくはプロセッサコアによって、もしくは他の並列アーキテクチャ上で同時に実行することができる。さらに、それぞれ異なるタスクまたはプロセスを協働可能なそれぞれ異なるマシンおよび/またはコンピューティングシステムによって実行することもできる。
【0082】
さらに、各構成要素および各動作を特定の配置または順序で図面に示しまたは本明細書において説明したが、望ましい結果を達成するために、こうした構成要素および動作が記載した特定の配置および位列(order)でまたは特定の順序で配置ないし実行される必要はなく、構成要素および動作の全てを含む必要もない。図示していないもしくは説明していない他の構成要素および動作を実施形態および実施例に組み込むこともできる。例えば、記載している動作のうちいずれかの動作の前にまたは後にまたはこれと同時にまたはその期間中に1つもしくは複数の付加的な動作を実行することができる。さらに、他の実現形態においては、動作の位置または順序が組み替えられていてもよい。加えて、上述した実現形態における様々なシステムコンポーネントの分離は、全ての実現形態においてこのような分離を必要とするものと理解されるべきではなく、記載しているコンポーネントおよびシステムは一般的に1つの製品に統合することができ、または複数の製品にパッケージングすることができることを理解されたい。
【0083】
本明細書に開示している実施形態に関連して説明した様々な例示的な論理ブロックおよびモジュールは、マシン、例えば、処理ユニットまたはプロセッサ、デジタルシグナルプロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、または他のプログラマブルロジックデバイス、離散ゲートまたはトランジスタロジック、離散ハードウェアコンポーネント、または本明細書に記載している機能を実行するように設計されたこれらの任意の組み合わせによって実現可能または実行可能である。プロセッサは、マイクロプロセッサであってよいが、代替的に、コントローラ、マイクロコントローラ、ステートマシンまたはこれらの組み合わせなどであってもよい。プロセッサは、コンピュータ実行可能命令を処理するように構成された電気回路を含むことができる。別の実施形態では、プロセッサは、コンピュータ実行可能命令を処理することなく論理演算を実行するFPGAまたは他のプログラマブルデバイスを含む。プロセッサはまた、コンピューティングデバイスの組み合わせ、例えば、DSPと1つもしくは複数のマイクロプロセッサとの組み合わせ、DSPコアと組み合わされた1つもしくは複数のマイクロプロセッサ、または他の任意のこのようなコンフィグレーションとして実現することができる。本明細書では主にデジタル技術に関して説明したが、プロセッサは主にアナログコンポーネントを含んでもよい。コンピューティング環境には、以下に限定されるものではないが、例を挙げるならば、マイクロプロセッサ、メインフレームコンピュータ、デジタルシグナルプロセッサ、ポータブルコンピューティングデバイス、デバイスコントローラまたは機器内の計算エンジンに基づくコンピュータシステムを含む、任意のタイプのコンピュータシステムが含まれうる。
【0084】
特に、「することができる」、「可能である」、「してもよい」、「しうる」などの条件的な語は、特に別段のことわりがない限り、一般的に、ある実施形態がある特徴、要素および/またはステップを含むが、その他の実施形態はそれらを含まないことを示唆するために使用される文脈において理解される。したがって、こうした条件的な語は、一般的に、特徴、要素および/またはステップが1つもしくは複数の実施形態のために是非とも必要であることを暗示する意図のものではなく、こうした特徴、要素および/またはステップは、ユーザ入力またはプロンプトの有無にかかわらず、いずれかの特定の実施形態に含まれるまたは実行されることを決定するロジックを必ずしも含むわけではない。
【0085】
「X、YまたはZのうちの少なくとも1つ」の語句など離接的な語句は、別段のことわりがない限り、一般的に、項目、概念などがX、YまたはZのいずれかまたはこれらの任意の組み合わせ(例えば、X、Yおよび/またはZ)であってよいことを示すために使用される文脈において理解される。したがって、こうした離接的な語句は、一般的に、ある実施形態がそれぞれ存在するために少なくとも1つのX、少なくとも1つのYまたは少なくとも1つのZを必要とすることを意図しておらず、また示唆するものではない。
【0086】
本明細書において説明し、かつ/または添付の図に示したフロー図における任意のプロセスの説明、要素またはブロックは、当該プロセスにおいて特定の論理機能または論理要素を実装するための1つもしくは複数の実行可能命令を含むモジュール、セグメントまたはコードの一部を潜在的に表現するものとして理解されたい。代替的な実現形態も本明細書に記載している実施形態の範囲内に含まれ、ここでは、当業者に理解されるように、包含される機能に応じて、要素または機能は削除可能であり、図示のもしくは説明した順序とは異なる順序でまたは実質的にこれと同時にまたはこれとは逆順で実行可能である。
【0087】
特に明示的なことわりがない限り、「1つの」「ある」(“a”,“an”)などの冠詞は、一般的に、記載している項目を1つもしくは複数含むと解釈されるべきである。したがって、「~するように構成された装置(a device configured to…)」なる語句は、言及している装置を1つもしくは複数含むことを意図している。ここで言及しているこうした1つもしくは複数の装置は、宣言されている事柄を実行するように包括的に構成されたものとすることができる。例えば、「事柄A、BおよびCを実行するように構成された1つのプロセッサ」は、事柄Aを実行するように構成された第1のプロセッサと、これと協働して事柄Bおよび事柄Cを実行するように構成された第2のプロセッサとを含むことができる。
【0088】
要約すると、様々な例示的な実施形態および実施例を開示し、これらの実施形態および実施例の文脈においてシステムおよび方法を開示したが、本開示は、具体的に開示した実施形態を超えて、他の代替的な実施形態および/または実施形態の他の使用ならびにこれを特定の形式で変更したものおよびその等価物にも及ぶ。本開示は、開示している実施形態の様々な特徴および態様が相互に組み合わせ可能であることまたは相互に置換可能であることを明確に想定している。したがって、本開示の範囲は、上述した特定の開示の実施形態によって限定されるべきではなく、以下の特許請求の範囲およびその等価物の範囲全ての適切な解釈によってのみ決定されるべきである。
【0089】
本開示の様々な例示的な実施形態を以下の条項によって記載することができる。
[条項1]
変更された仮想環境に関連付けられるデータを出力するシステムであって、
該システムは、
コンピュータ実行可能命令を記憶するように構成されたデータストアと、
前記データストアと通信する少なくとも1つのプロセッサと
を備え、
前記コンピュータ実行可能命令は、前記少なくとも1つのプロセッサによって実行される際に、前記少なくとも1つのプロセッサに、
物理環境に関連付けられる環境データを識別させ、
前記環境データに少なくとも部分的に基づいて仮想環境を生成させ、
前記物理環境に関連付けられる生産データを識別させ、
前記物理環境に関連付けられる生産データを識別させることに少なくとも部分的に基づいて、前記環境データの1つもしくは複数の値を変更して、変更された環境データを生成させ、
前記変更された環境データに少なくとも部分的に基づいて、変更された仮想環境を生成させ、
前記生産データに少なくとも部分的に基づいて、前記変更された仮想環境と前記仮想環境とを比較させ、
前記変更された仮想環境と前記仮想環境とを比較することに少なくとも部分的に基づいて、前記変更された仮想環境に関連付けられるデータを出力させる、
ためのものである、システム。
[条項2]
前記環境データは、在庫データ、環境コンフィグレーションデータ、労働力割り当てデータ、環境レイアウトデータまたはマシン割り当てデータのうちの少なくとも1つを含む、条項1記載のシステム。
[条項3]
前記生産データを識別するために、前記コンピュータ実行可能命令は、前記少なくとも1つのプロセッサによって実行される際にさらに、前記少なくとも1つのプロセッサに、1つもしくは複数のセンサからリアルタイムで前記生産データを取得させるためのものである、条項1または2記載のシステム。
[条項4]
前記生産データを識別するために、前記コンピュータ実行可能命令は、前記少なくとも1つのプロセッサによって実行される際にさらに、前記少なくとも1つのプロセッサに、前記物理環境に関連付けられるコンピューティングシステムからリアルタイムで前記生産データを取得させるためのものであり、
前記物理環境に関連付けられる前記コンピューティングシステムは、
前記物理環境に関連付けられる作業者を監視し、
前記作業者の監視に少なくとも部分的に基づいて、前記作業者に関連付けられる作業者利用状態データを識別する
ように構成されており、ここで、前記生産データは前記作業者利用状態データを含む、
条項1から3までのいずれか1つ記載のシステム。
[条項5]
前記作業者はロボット作業者または人間作業者である、条項4記載のシステム。
[条項6]
前記作業者利用状態データは、特定の時点における前記作業者のステータスを識別するためのデータであり、前記作業者のステータスは、アクティブ、アイドルまたはウォーキングのうちの少なくとも1つを含む、条項4または5記載のシステム。
[条項7]
前記生産データを識別するために、前記コンピュータ実行可能命令は、前記少なくとも1つのプロセッサによって実行される際にさらに、前記少なくとも1つのプロセッサに、前記物理環境に関連付けられるコンピューティングシステムからリアルタイムで前記生産データを取得させるためのものであり、
前記物理環境に関連付けられる前記コンピューティングシステムは、
前記物理環境に関連付けられるマシンを監視し、
前記マシンの監視に少なくとも部分的に基づいて、前記マシンに関連付けられるマシン利用状態データを識別する
ように構成されており、ここで、前記生産データは前記マシン利用状態データを含む、
条項1から6までのいずれか1つ記載のシステム。
[条項8]
前記生産データは、センサデータ、マシンデータ、注文データ、在庫データまたは注文処理データのうちの少なくとも1つを含む、条項1から7までのいずれか1つ記載のシステム。
[条項9]
前記生産データは、センサデータ、マシンデータ、注文データ、在庫データまたは注文処理データのうちの少なくとも1つを含み、
前記コンピュータ実行可能命令は、前記少なくとも1つのプロセッサによって実行される際にさらに、前記少なくとも1つのプロセッサに、
前記生産データに少なくとも部分的に基づいて、前記物理環境に関連付けられるサービス速度、前記物理環境に関連付けられるスループット、または前記物理環境に関連付けられる労働力使用のうちの1つもしくは複数を決定させる
ためのものである、条項1から8までのいずれか1つ記載のシステム。
[条項10]
前記生産データは、センサデータ、マシンデータ、注文データ、在庫データ、または注文処理データのうちの少なくとも1つを含み、
前記コンピュータ実行可能命令は、前記少なくとも1つのプロセッサによって実行される際にさらに、前記少なくとも1つのプロセッサに、
前記生産データに少なくとも部分的に基づいて、前記物理環境に関連付けられるサービス速度、前記物理環境に関連付けられるスループット、または前記物理環境に関連付けられる労働力使用のうちの1つもしくは複数を決定させ、
前記サービス速度、前記スループットまたは前記労働力使用のうちの1つもしくは複数に対応する、ユーザに関連付けられる1つもしくは複数のユーザ目標を決定させる
ためのものであり、ここで、前記変更された仮想環境と前記仮想環境とを比較することがさらに、前記1つもしくは複数のユーザ目標に少なくとも部分的に基づいて行われる、
条項1から9までのいずれか1つ記載のシステム。
[条項11]
前記1つもしくは複数のユーザ目標のうちの第1の目標は第1の条件に関連付けられており、前記1つもしくは複数のユーザ目標のうちの第2の目標は第2の条件に関連付けられており、前記変更された仮想環境と前記仮想環境とを比較することがさらに、前記第1の条件および前記第2の条件に少なくとも部分的に基づいて行われる、条項10記載のシステム。
[条項12]
前記変更された仮想環境と前記仮想環境とを比較するために、前記コンピュータ実行可能命令は、前記少なくとも1つのプロセッサによって実行される際にさらに、前記少なくとも1つのプロセッサに、前記物理環境に関連付けられる生産データと前記変更された仮想環境に関連付けられる仮想生産データとを比較させるためのものである、条項1から11までのいずれか1つ記載のシステム。
[条項13]
前記環境データに少なくとも部分的に基づいて前記仮想環境を生成するために、前記コンピュータ実行可能命令は、前記少なくとも1つのプロセッサによって実行される際にさらに、前記少なくとも1つのプロセッサに、シミュレーションプラットフォームを使用して前記仮想環境を生成させるためのものである、条項1から12までのいずれか1つ記載のシステム。
[条項14]
前記コンピュータ実行可能命令は、前記少なくとも1つのプロセッサによって実行される際に、前記少なくとも1つのプロセッサにさらに、
前記生産データに少なくとも部分的に基づいて、前記変更された仮想環境を含む複数の変更された仮想環境と前記仮想環境とを比較させ、
前記複数の変更された仮想環境と前記仮想環境とを比較することに少なくとも部分的に基づいて、前記複数の変更された仮想環境から前記変更された仮想環境を選択させる
ためのものであり、ここで、前記変更された仮想環境に関連付けられるデータを出力することが、前記変更された仮想環境を選択させることに少なくとも部分的に基づいて行われる、
条項1から13までのいずれか1つ記載のシステム。
[条項15]
前記環境データはさらに、前記物理環境の動作に関連付けられている、条項1から14までのいずれか1つ記載のシステム。
[条項16]
前記コンピュータ実行可能命令は、前記少なくとも1つのプロセッサによって実行される際にさらに、前記少なくとも1つのプロセッサに、スケジューリングシステムによって動的に定義される作業者スケジュールを出力させるためのものである、条項1から15までのいずれか1つ記載のシステム。
[条項17]
前記環境データに少なくとも部分的に基づいて前記仮想環境を生成するために、前記コンピュータ実行可能命令は、前記少なくとも1つのプロセッサによって実行される際に、さらに、前記少なくとも1つのプロセッサに、複数の環境データセットを複数の仮想生産データセットへマッピングするシミュレーションプラットフォームを使用して前記仮想環境を生成させるためのものであり、
ここで、前記複数の環境データセットは前記環境データを含み、前記複数の生産データセットは前記生産データを含む、
条項1から16までのいずれか1つ記載のシステム。
[条項18]
前記環境データに少なくとも部分的に基づいて前記仮想環境を生成するために、前記コンピュータ実行可能命令は、前記少なくとも1つのプロセッサによって実行される際にさらに、前記少なくとも1つのプロセッサに、シミュレーションプラットフォームを使用して前記仮想環境を生成させるためのものであり、
前記シミュレーションプラットフォームは、
前記変更された仮想環境を生成するために複数のシミュレーションを動作させ、
前記変更された仮想環境を検証するために、前記複数のシミュレーションのそれぞれの出力を比較する
ように構成されている、条項1から17までのいずれか1つ記載のシステム。
[条項19]
前記物理環境は店舗を含み、前記仮想環境は仮想店舗を含む、条項1から18までのいずれか1つ記載のシステム。
[条項20]
前記仮想環境は店舗の仮想レプリケーションを含む、条項1から19までのいずれか1つ記載のシステム。
[条項21]
前記仮想環境は前記物理環境のモデルを含む、条項1から20までのいずれか1つ記載のシステム。
[条項22]
コンピュータ実装方法であって、
物理環境に関連付けられる環境データを識別することと、
前記環境データに少なくとも部分的に基づいて仮想環境を生成することと、
前記物理環境に関連付けられる生産データを識別することと、
前記物理環境に関連付けられる生産データを識別することに少なくとも部分的に基づいて、前記環境データの1つもしくは複数の値を変更して、変更された環境データを生成することと、
前記変更された環境データに少なくとも部分的に基づいて、変更された仮想環境を生成することと、
前記生産データに少なくとも部分的に基づいて、前記変更された仮想環境と前記仮想環境とを比較することと、
前記変更された仮想環境と前記仮想環境とを比較することに少なくとも部分的に基づいて、前記変更された仮想環境に関連付けられるデータを出力すること
を含む、コンピュータ実装方法。
[条項23]
コンピュータ実行可能命令を記憶した非一時的なコンピュータ可読媒体であって、
前記コンピュータ実行可能命令は、少なくとも1つのプロセッサによって実行される際に、前記少なくとも1つのプロセッサに、
物理環境に関連付けられる環境データを識別し、
前記環境データに少なくとも部分的に基づいて仮想環境を生成し、
前記物理環境に関連付けられる生産データを識別し、
前記物理環境に関連付けられる生産データを識別させることに少なくとも部分的に基づいて、前記環境データの1つもしくは複数の値を変更して、変更された環境データを生成し、
前記変更された環境データに少なくとも部分的に基づいて、変更された仮想環境を生成し、
前記生産データに少なくとも部分的に基づいて、前記変更された仮想環境と前記仮想環境とを比較し、
前記変更された仮想環境と前記仮想環境とを比較させることに少なくとも部分的に基づいて、前記変更された仮想環境に関連付けられるデータを出力する、
ように構成させるためのものである、非一時的なコンピュータ可読媒体。
【国際調査報告】