(57)【要約】  方法およびシステムの例は、カスタマイズ可能な目標に従って決定された最適レイアウトへの倉庫の再配置を可能にする。方法の例は、倉庫管理システム（ＷＭＳ）において、倉庫および倉庫の物品の情報を受信することと、未来の日付に倉庫において受け取られることが予想される新たな物品および未来の日付における配送が示された倉庫にある物品を含む物品出荷予想を識別することと、物品出荷予想に基づいて現在の倉庫の物品の最適レイアウトを決定することと、ロボットデバイスがタスクを実行するためにかかる時間測定値に基づいて、物品を再配置するロボットデバイスの１または複数によって物品を最適レイアウトに再配置するためにかかる時間を決定することと、物品を再配置するためにかかる時間が閾値時間を下回ることに基づいて、倉庫の物品を再配置することを決定することとを含む。【選択図】図３
2019526513.tif 000002
【特許請求の範囲】
【請求項１】
倉庫管理システム（ＷＭＳ）において、倉庫内の物品のリアルタイム在庫および前記物品のリアルタイム位置データを受信することと、
未来の日付に前記倉庫において受け取られることが予想される新たな物品および前記未来の日付における配送が示された前記倉庫にある物品を含む物品出荷予想を識別することであって、前記識別することは、前記ＷＭＳによって、受取り記録、注文履行、および出荷記録の１または複数に基づいて実行されることと、
前記物品出荷予想に基づいて前記物品の最適レイアウトを決定することと、
ロボットデバイスがタスクを実行するためにかかる時間測定値に基づいて、前記ロボットデバイスが前記物品を前記最適レイアウトに再配置するためにかかる時間を決定することと、
前記物品を再配置するためにかかる前記時間が閾値時間を下回ることに基づいて、前記倉庫の前記物品を再配置することを決定することと、
前記ロボットデバイスに、前記物品を前記最適レイアウトに再配置させることと
を備える方法。
【請求項２】
前記倉庫内の前記物品はパレット上に配置され、前記リアルタイム位置データを受信することは、前記倉庫内の前記パレットの配置および各パレットの内容物に関する情報を受信することを含む、請求項１に記載の方法。
【請求項３】
前記物品の販売促進日を含む事業目標に基づいて前記物品の最適レイアウトを決定することを更に備える、請求項１に記載の方法。
【請求項４】
配送される物品の数量の予測に基づいて前記物品の最適レイアウトを決定することを更に備える、請求項１に記載の方法。
【請求項５】
出荷ドックの付近で入手可能な物品に基づいて前記物品の最適レイアウトを決定することと、
物品の過剰在庫を前記出荷ドックから遠くに保管するように移動することを決定することと
を更に備える、請求項１に記載の方法。
【請求項６】
前記倉庫の最大保管容量配置に基づいて前記物品の最適レイアウトを決定することを更に備える、請求項１に記載の方法。
【請求項７】
在庫がなくなるまでの予想時間、
到着物品に必要な保管容量、
物品の出荷に関する１または複数の期限
のパラメータを少なくとも考慮するコスト関数の出力に基づいて、前記倉庫の前記物品の前記レイアウトを最適化すること
を更に備える、請求項１に記載の方法。
【請求項８】
物品の発送スループットを満たし、前記将来の日付に関する保管容量要件を提供する前記最適レイアウトに基づいて、前記物品を再配置することを決定すること
を更に備える、請求項１に記載の方法。
【請求項９】
前記将来の日付に関する前記倉庫の保管容量要件に基づいて、前記倉庫の前記物品を再配置することを決定すること
を更に備える、請求項１に記載の方法。
【請求項１０】
倉庫内のロボットデバイスと、
プロセッサと、
システムに、
前記倉庫内の前記物品のリアルタイム在庫および前記物品のリアルタイム位置データを受信することと、
受取り記録、注文履行記録、および出荷記録の１または複数に基づいて、未来の日付に前記倉庫において受け取られることが予想される新たな物品および前記未来の日付における配送が示された前記倉庫にある物品を含む物品出荷予想を識別することと、
前記物品出荷予想に基づいて前記物品の最適レイアウトを決定することと、
前記ロボットデバイスがタスクを実行するためにかかる時間測定値に基づいて、前記ロボットデバイスが前記物品を前記最適レイアウトに再配置するためにかかる時間を決定することと、
前記物品を再配置するためにかかる前記時間が閾値時間を下回ることに基づいて、前記倉庫の前記物品を再配置することを決定することと、
前記ロボットデバイスに、前記物品を前記最適レイアウトに再配置させることと
を含む動作を実行させるために前記プロセッサによって実行可能な命令を備えるデータストレージと
を備えるシステム。
【請求項１１】
前記倉庫内の前記物品はパレット上に配置され、前記リアルタイム位置データを受信することは、前記倉庫内の前記パレットの配置および各パレットの内容物に関する情報を受信することを含む、請求項１０に記載のシステム。
【請求項１２】
前記動作は更に、
出荷ドックの付近で入手可能な物品に基づいて前記物品の最適レイアウトを決定することと、
物品の過剰在庫を前記出荷ドックから遠くに保管するように移動することを決定することと
を含む、請求項１０に記載のシステム。
【請求項１３】
前記動作は更に、
在庫がなくなるまでの予想時間、
到着物品に必要な保管容量、
物品の出荷に関する１または複数の期限
のパラメータを少なくとも考慮するコスト関数の出力に基づいて、前記倉庫の前記物品の前記レイアウトを最適化すること
を含む、請求項１０に記載のシステム。
【請求項１４】
前記動作は更に、
前記物品の販売促進日を含む事業目標に基づいて前記物品の最適レイアウトを決定することを含む、請求項１０に記載のシステム。
【請求項１５】
少なくとも１つのプロセッサを含むコンピューティングシステムによって実行されると、前記コンピューティングシステムに、
倉庫内の物品のリアルタイム在庫および前記物品のリアルタイム位置データを受信することと、
受取り記録、注文履行、および出荷記録の１または複数に基づいて、未来の日付に前記倉庫において受け取られることが予想される新たな物品および前記未来の日付における配送が示された前記倉庫にある物品を含む物品出荷予想を識別することと、
前記物品出荷予想に基づいて前記物品の最適レイアウトを決定することと、
ロボットデバイスがタスクを実行するためにかかる時間測定値に基づいて、前記ロボットデバイスが前記物品を前記最適レイアウトに再配置するためにかかる時間を決定することと、
前記物品を再配置するためにかかる前記時間が閾値時間を下回ることに基づいて、前記倉庫の前記物品を再配置することを決定することと、
前記ロボットデバイスに、前記物品を前記最適レイアウトに再配置させることと
を含む動作を実行させるプログラム命令を格納した非一時的コンピュータ可読媒体。
【請求項１６】
前記動作は更に、
出荷ドックの付近で入手可能な物品に基づいて前記物品の最適レイアウトを決定することと、
物品の過剰在庫を前記出荷ドックから遠くに保管するように配置することを決定することと
を含む、請求項１５に記載の非一時的コンピュータ可読媒体。
【請求項１７】
前記動作は更に、
在庫がなくなるまでの予想時間、
到着物品に必要な保管容量、
物品の出荷に関する１または複数の期限
のパラメータを少なくとも考慮するコスト関数の出力に基づいて、前記倉庫の前記物品の前記レイアウトを最適化すること
を含む、請求項１５に記載の非一時的コンピュータ可読媒体。
【請求項１８】
前記動作は更に、
物品の発送スループットを満たし、前記将来の日付に関する保管容量要件を提供する前記最適レイアウトに基づいて、前記物品を再配置することを決定すること
を含む、請求項１５に記載の非一時的コンピュータ可読媒体。
【請求項１９】
前記動作は更に、
前記将来の日付に関する前記倉庫の保管容量要件に基づいて、前記倉庫の前記物品を再配置することを決定すること
を含む、請求項１５に記載の非一時的コンピュータ可読媒体。
【請求項２０】
前記動作は更に、
前記倉庫の最大保管容量配置に基づいて前記物品の最適レイアウトを決定すること
を含む、請求項１５に記載の非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【背景技術】
【０００１】
［0001］  倉庫は、製造業者、卸売業者、および輸送業者を含む様々な種類の商業団体によって、品物を保管するために用いられ得る。保管される品物の例は、原材料、部材または部品、梱包材料、および完成品を含んでよい。場合によっては、倉庫は、配送トラックまたは他の種類の車両へ品物を荷積みし、そこから品物を荷卸しすることができる搬出ドックを備えてよい。倉庫は、ボックスの積み重ねまたは他の物体を収容する平坦な搬送構造であるパレットを保管することができるパレットラックの列を用いてもよい。また倉庫は、たとえばクレーンおよびフォークリフトなど、品物または品物パレットを持ち上げて移動するための機械または車両を有してよい。機械、車両、および他の機器を操作するために、人間のオペレータが雇われ得る。場合によっては、機械または車両の１または複数は、コンピュータ制御システムによって動かされるロボットデバイスであってよい。
【発明の概要】
【課題を解決するための手段】
【０００２】
［0002］  一例において、倉庫内の物品のリアルタイム在庫および物品のリアルタイム位置データを倉庫管理システム（ＷＭＳ）において受信すること、および未来の日付に倉庫において受け取られることが予想される新たな物品および未来の日付における配送が示された倉庫にある物品を含む物品出荷予想を識別することを備える方法が説明される。識別は、受取り記録、注文履行、および出荷記録の１または複数に基づいて、ＷＭＳによって実行される。方法は、物品出荷予想に基づいて物品の最適レイアウトを決定すること、およびロボットデバイスがタスクを実行するためにかかる時間測定値に基づいて、ロボットデバイスが物品を最適レイアウトに再配置するためにかかる時間を決定することも含む。方法は、物品を再配置するためにかかる時間が閾値時間を下回ることに基づいて、倉庫の物品を再配置することを決定すること、およびロボットデバイスに物品を最適レイアウトに再配置させることも含む。
【０００３】
［0003］  他の例において、倉庫内のロボットデバイス、プロセッサ、およびシステムに動作を実行させるためにプロセッサによって実行可能な命令を備えるデータストレージを備えるシステムが説明される。動作は、倉庫内の物品のリアルタイム在庫および物品のリアルタイム位置データを受信すること、および未来の日付に倉庫において受け取られることが予想される新たな物品および未来の日付における配送が示された倉庫にある物品を含む物品出荷予想を識別することを備える。識別は、受取り記録、注文履行記録、および出荷記録の１または複数に基づく。動作は、物品出荷予想に基づいて物品の最適レイアウトを決定すること、ロボットデバイスがタスクを実行するためにかかる時間測定値に基づいて、ロボットデバイスが物品を最適レイアウトに再配置するためにかかる時間を決定すること、物品を再配置するためにかかる時間が閾値時間を下回ることに基づいて、倉庫の物品を再配置することを決定すること、およびロボットデバイスに物品を最適レイアウトに再配置させることも備える。
【０００４】
［0004］  また他の例において、少なくとも１つのプロセッサを含むコンピューティングシステムによって実行されると、コンピューティングシステムに動作を実行させるプログラム命令を格納した非一時的コンピュータ可読媒体が説明される。動作は、倉庫内の物品のリアルタイム在庫および物品のリアルタイム位置データを受信すること、および未来の日付に倉庫において受け取られることが予想される新たな物品および未来の日付における配送が示された倉庫にある物品を含む物品出荷予想を識別することを備える。識別は、受取り記録、注文履行、および出荷記録の１または複数に基づく。動作は、物品出荷予想に基づいて物品の最適レイアウトを決定すること、ロボットデバイスがタスクを実行するためにかかる時間測定値に基づいて、ロボットデバイスが物品を最適レイアウトに再配置するためにかかる時間を決定すること、物品を再配置するためにかかる時間が閾値時間を下回ることに基づいて、倉庫の物品を再配置することを決定すること、およびロボットデバイスに物品を最適レイアウトに再配置させることも備える。
【０００５】
［0005］  また他の態様において、倉庫内の物品のリアルタイム在庫および物品のリアルタイム位置データを倉庫管理システム（ＷＭＳ）において受信するための手段を含むシステムが提供される。システムは、未来の日付に倉庫において受け取られることが予想される新たな物品および未来の日付における配送が示された倉庫にある物品を含む物品出荷予想を識別するための手段も含む。システムは、物品出荷予想に基づいて物品の最適レイアウトを決定するための手段も含む。システムは、ロボットデバイスがタスクを実行するためにかかる時間測定値に基づいて、ロボットデバイスが物品を最適レイアウトに再配置するためにかかる時間を決定するための手段も含む。システムは、物品を再配置するためにかかる時間が閾値時間を下回ることに基づいて、倉庫の物品を再配置することを決定するための手段、およびロボットデバイスに物品を最適レイアウトに再配置させるための手段も含む。
【０００６】
［0006］  上記概要は例示にすぎず、いかなるようにも限定的であることは意図されない。上述した例示的な態様、実装、および特徴に加えて、追加の態様、実装、および特徴が、図面および以下の詳細な説明を参照することによって明らかになる。
【図面の簡単な説明】
【０００７】
【図１】［0007］本明細書で説明される少なくともいくつかの実装に係る倉庫の例を示す。
【図２】［0008］本明細書で説明される少なくともいくつかの実装に係るコンピューティングシステム例の構成要素を示す簡略ブロック図である。
【図３】［0009］本明細書で説明される少なくともいくつかの実装に係る方法例のフローチャートである。
【図４】［0010］パレットＡ〜Ｈと符号付けされた複数の物品パレットおよび出荷ドックを含む倉庫のレイアウト例を示す。
【図５】［0011］パレットＡ〜Ｈの最適レイアウトへの再配置の例を示す。
【図６】［0012］レイアウト例に関するパレットＡ、Ｅ、およびＦの再配置の例を示す。
【図７】［0013］パレットＡ〜Ｈと符号付けされた複数の物品パレットおよび出荷ドック、および出荷ドックにおいて受け取られた新たなパレットＩ〜Ｋを含む、倉庫の他のレイアウト例を示す。
【図８】［0014］倉庫の最大保管容量配置に基づく倉庫の最適レイアウトの例を示す。
【発明を実施するための形態】
【０００８】
［0015］  ここで、方法およびシステムの例が説明される。「例」、「典型的」、および「例示的」という言葉は、本明細書において「例、例示、または例証としての役割を果たす」ことを意味するものとして使用されることを理解すべきである。本明細書で「例」、「典型的」、または「例示的」なものとして説明される任意の実装または特徴は、必ずしも他の実装または特徴よりも好適または有利であるとは解釈されない。本明細書で説明される実装例は、限定的であることが意図されない。本明細書で一般に説明され図面に示されるように、本開示の態様は、広く様々な構成で配置、代替、結合、分離、および設計されてよく、それら全てが本明細書において明確に考慮されることが容易に理解される。また、本開示において、特に明記しない限り、および／または文脈が例外を明示しない限り、「ａ」または「ａｎ」という語は少なくとも１つを意味し、「ｔｈｅ」という語は少なくとも１つを意味するものである。
【０００９】
［0016］  本明細書で使用される場合、「倉庫」という用語は、物品または物品パレットがロボットデバイスによって取り扱われ、処理され、および／または保管される任意の物理環境に言及し得る。いくつかの例において、倉庫は、単一の物理的建造物または構造であってよい。他の例において、物体の処理中または処理前に、何らかの固定部品が環境内に設置または他の方法で配置され得る。追加の例において、倉庫は、複数の個別の物理的構造または建造物を含んでよく、および／または物理的構造によって包含されない物理空間も含んでよい。
【００１０】
［0017］  倉庫の例は、ロボットデバイスの同種または異種グループ、およびロボットデバイスを管理するように構成された制御システムを含んでよい。倉庫の環境において、そのような制御システムは、倉庫管理システム（ＷＭＳ）と称され得る。倉庫は、パレットに配置された様々な物品（たとえば製品）も含んでよく、パレットは、倉庫内の様々な位置に配置され得る。たとえばパレットは、倉庫の床に直接載置され、他のパレットに積み重ねられ、パレットラック内に配置され、および／または輸送コンテナ内に保管されてよい。また倉庫は、（パレット上ではなく）個々に配置され、カスタマイズドコンテナ、ボックスに含まれ、あるいはどのコンテナにも含まれない物品を含んでよい。
【００１１】
［0018］  ロボットデバイスのグループは、数々の様々なアプリケーションのための倉庫環境において使用され得る。考えられる１つのアプリケーションは、（たとえば個人の顧客のための）注文の履行を含み、この場合パレットは開放され、パレット内の個々の物品は、個人の注文を履行するためにボックス内に包装され得る。考えられる他のアプリケーションは、（たとえば店舗または他の倉庫への）配送を含み、この場合、店舗へ出荷するための様々な種類の物品（すなわち様々な種類の製品）のグループを含む混合パレットが構成され得る。更に考えられるアプリケーションは、クロスドッキングを含み、これは、何も保管することのない輸送コンテナ間での搬送を伴ってよい（たとえば、物品は、４台の４０フィートトレーラから移動され、３台のより軽いトレーラトラックに荷積みされてよく、パレタイズされてもよい）。他の数多のアプリケーションも考えられる。
【００１２】
［0019］  一般に、倉庫内でパレットが配置される方法は、様々な要因に依存し得る。そのような要因は、倉庫内での活動の履歴、パレット位置の履歴、特定の物品への需要の履歴、倉庫で受け取られる物品の傾向、倉庫から出荷される物品の傾向、物品の受取り順序、倉庫内での活動の予測、特定の物品への需要の予測、倉庫で受け取られる物品の予測、倉庫から出荷される物品の予測、事業目標（たとえば即日配送などの販売促進オファー）、およびパレットを配置するために利用可能な人間および／またはロボットリソース、他多数を含んでよい。ＷＭＳは、倉庫内でのパレットの配置および再配置を含む改善された倉庫管理を容易にするために、これらおよび他の要因を機械学習とともに用いるように構成され得る。
【００１３】
［0020］  倉庫内のパレットを自律的に再配置、または「シャッフル」するための方法およびシステムの例が本明細書で説明される。方法の例によると、ＷＭＳは、倉庫内の物品のパレットのリアルタイム位置、倉庫内の物品のリアルタイム在庫、および各パレットのリアルタイム内容物（たとえばどの物品がどのパレットにあるか）を含むリアルタイム物品情報を受信し、決定し、または他の方法でこれにアクセスしてよい。ＷＭＳは、たとえばパレット移転履歴（たとえばいつ、どこで、なぜ、および／またはどのように、１つの場所から他の場所へパレットが移動したかに関する情報）、倉庫で受け取られる物品の予想、および倉庫から出荷される物品の予想などの他の倉庫情報も受信し、決定し、または他の方法によるこれへのアクセスを有してよい。
【００１４】
［0021］  ＷＭＳは、受取り記録および注文履行および出荷記録へのアクセスに基づいて、未来の日付に倉庫で受け取られることが予想される新たな物品および未来の日付における配送が示された倉庫にある物品を含む物品出荷予想を識別し、その後、物品出荷予想に基づいて、現在の倉庫の物品の最適レイアウトを決定することができる。
【００１５】
［0022］  また、ＷＭＳは、たとえばロボットデバイスがパレットを再配置するためにかかる時間など、倉庫を最適レイアウトに再配置するために必要なリソースが何かを決定してよい。ＷＭＳは、リソースが特定の基準を満たすと決定した場合、ロボットデバイスにパレットを再配置するように指示してよい。そうでない場合、ＷＭＳは、リソースが特定の基準を満たすと決定するまで、ロボットデバイスにパレットを再配置するように指示しなくてよい。
【００１６】
［0023］  例として、実際にこれを容易にするために、ＷＭＳは、倉庫内のロボット活動に関するリアルタイムロボット情報を受信し、決定し、または他の方法によるこれへのアクセスを有してよい。一例として、リアルタイムロボット情報は、ロボットデバイスのリアルタイム位置、進行中および／または完了予定のロボットタスクに関するリアルタイムタスク進捗更新、タスクスケジュール、および様々なタスクを実行するためにロボットデバイスがどれほどの時間を要するかに関するそれぞれの測定値、他多数を含んでよい。ＷＭＳはその後、パレットを最適な密集グリッドレイアウトに再配置するためにロボットデバイスが要する時間を決定するために、少なくともリアルタイムロボット情報を用いてよい。時間が閾値時間を下回る場合、ＷＭＳはロボットデバイスに、パレットを最適な密集グリッドレイアウトに再配置するように指示してよい。閾値はたとえば動的であってよく、予測または実際のロボットの利用可能性に基づいてよい。またＷＭＳは、パレットを再配置するようにロボットデバイスに指示するかを決定する際、時間に加えて、たとえば電力使用、炭素放出、物品を移動する距離などのパラメータを考慮してよい。
【００１７】
［0024］  倉庫内で動的かつ自律的にパレットを再配置することは、様々な産業および事業利益を提供し得る。たとえば、ＷＭＳおよびロボットデバイスの使用は、倉庫を再配置する際の人間労働者の必要性を大幅に低減または排除し得る。他の例として、物品への需要は経時的に変化するので、ＷＭＳは、様々な時点における現在の需要を最適に反映するようにパレットのレイアウトを変更し、あるいは未来の時点における予測需要を最適に反映するようにパレットのレイアウトを未然に変更してよい。また他の例として、倉庫内の利用可能な空間は増減するので、ＷＭＳは、たとえば需要、物品への接近容易性など他の事情と利用可能な空間の事情とのバランスをとり、これらの事情の観点から倉庫内の利用可能な空間を最適に用いるレイアウト型式を決定してよい。他の例も考えられる。
【００１８】
［0025］  ただし、代替の実装において、たとえばＷＭＳおよび／または他のコンピューティングシステムなど倉庫に関連する１または複数のコンピューティングエンティティは、リアルタイムよりも少ない頻度で物品情報および／またはロボット情報を収集し、更新し、処理し、および／またはＷＭＳによって受け取られるために提供してよい。
【００１９】
［0026］  以下、様々な実装が詳しく参照され、これらの例は添付図面に示される。以下の詳細な説明において、本開示および説明される実装の完全な理解を提供するために、数々の特定の細部が記載される。しかし、本開示は、これら特定の細部のいくつかを伴わず実施されてもよい。他の例において、周知の方法、手順、構成要素、および回路は、実装の態様を不必要に曖昧にしないために詳しく説明されない。
【００２０】
［0027］  図面を参照すると、図１は、本明細書で説明される少なくともいくつかの実装に係る倉庫１００の例を示す。倉庫１００は、倉庫内の物品、パレットなどの処理に関するタスクを協調して実行するように制御され得る様々な種類のロボットデバイスを含む。様々なロボットデバイスの種類および数の一例が例示目的でここに示されるが、倉庫は、より多いまたは少ない数のロボットデバイスを利用してよく、ここに示される特定の種類を省いてよく、明示されない他の種類のロボットデバイスを含んでもよい。
【００２１】
［0028］  図１に示すロボットデバイスの種類の一例は、自律フォークトラック１０２であり、これは、ボックスパレットを搬送するためおよび／または（たとえば保管用のラックにパレットを載置するために）ボックスパレットを持ち上げるため、もしくは、ボックスそのものを搬送および／または持ち上げるために用いられ得るフォークリフトを有する移動デバイスである。図示されるロボットデバイスの種類の他の例は、自律搬送車（ＡＧＶ）１０４であり、これは、個々の物品または他の物体を倉庫内の１つの場所から他の場所へ搬送するために機能し得る、比較的小さい車輪付き移動デバイスであってよい。ロボットデバイスの種類の追加例は、ロボットトラックローダ／アンローダ１０６であり、これは、ロボットマニピュレータと、物品および／またはパレットをトラックまたは他の車両へ荷積みし、および／またはそこから荷下ろしすることを容易にするための、たとえば光センサなどの他の部品とを有する移動デバイスである。たとえば、ロボットトラックアンローダ１０６は、パレットまたは個々の物品を、倉庫の出荷ドック１１０に位置する配送トラック１０８へ荷積みするために用いられ得る。いくつかの例において、（たとえば荷物を他の倉庫へ配送するための）配送トラック１０８の移動もまた、倉庫内のロボットデバイスと連係されてよい。
【００２２】
［0029］  ここに示されたもの以外の種類の移動デバイスが追加または代替として含まれてもよい。いくつかの例において、１または複数のロボットデバイスは、地上の車輪以外に様々な搬送モードを用いてよい。たとえば１または複数のロボットデバイスは空挺（たとえばクワッドコプタ）であってよく、たとえば物体の移動または環境のセンサデータの収集などのタスクのために用いられ得る。本明細書で説明されるロボットデバイスのいずれかは、たとえば力センサ、近接センサ、負荷センサ、位置センサ、タッチセンサ、深さセンサ、超音波距離センサ、赤外センサ、グローバルポジショニングシステム（ＧＰＳ）受信機、ソナー、光学センサ、バイオセンサ、無線周波数識別（ＲＦＩＤ）センサ、近距離通信（ＮＦＣ）センサ、無線センサ、コンパス、煙センサ、光センサ、オーディオセンサ、マイクロフォン、スピーカ、レーダ、カメラ（たとえばカラーカメラ、グレースケールカメラ、および／または赤外カメラ）、深さセンサ（たとえば三原色プラス深さ（ＲＧＢ‐Ｄ）、レーザ、光検知測距（ＬＩＤＡＲ）デバイス、構造化光スキャナ、および／または飛行時間カメラ）、ステレオカメラ、モーションセンサ（たとえばジャイロスコープ、加速度計、慣性測定ユニット（ＩＭＵ）、および／またはフットステップまたは車輪オドメトリ）、および／または距離センサ（たとえば超音波および／または赤外線）、他を含んでよい。センサ（複数も可）は、ロボットデバイスと環境との適切なインタラクションを可能にするために、プロセッサ（複数も可）へセンサデータを提供してよい。またロボットデバイスは、ロボットデバイスの様々な部品に動力を供給するように構成された１または複数の動力源（複数も可）も含んでよい。たとえばガソリンエンジンまたはバッテリなど、任意の種類の動力源が用いられ得る。
【００２３】
［0030］  更なる例において、倉庫１００は、様々な固定部品または固定ロボットデバイスも含んでよい。固定ロボットデバイスは、物品を移動または他の方法で処理するために用いられ得る。たとえば架台ロボット１１２は、倉庫内の地上階に固定された架台において持ち上げられるロボットアームを含んでよい。架台ロボット１１２は、他のロボット間で物品を分配し、および／または物品のパレットを段積および段ばらしするように制御され得る。たとえば架台ロボット１１２は、近くのパレットからボックスをピックアップして動かし、物品を倉庫内の他の場所へ搬送するために個々のＡＧＶ１０４に分配してよい。
【００２４】
［0031］  更なる例において、倉庫１００は、たとえば倉庫内のパレットおよび／または他の物体を保管するために用いられ得る保管ラック（不図示）など、追加の固定部品を含んでよい。そのような保管ラックは、たとえば自律フォークトラック１０２など１または複数のロボットデバイスとのインタラクションを容易にするように設計または配置され得る。保管ラックの追加または代替として、倉庫１００内の特定の地上空間が、パレットの保管のために選択され用いられてよい。たとえばいくつかのパレットは、パレットがロボットデバイスによってピックアップされ、分配され、または他の方法で処理されることができるように、特定の期間、倉庫環境内で選択された位置に載置され得る。倉庫１００における任意の固定部品は、本明細書で説明されるように、１または複数のセンサを備えてよい。
【００２５】
［0032］  いくつかの例において、倉庫１００内のロボットデバイスのいずれかまたは全ては、１または複数のセンサ、１または複数のコンピュータ、および１または複数のロボットアームまたはロボットマニピュレータを含んでよい。センサは、たとえば視覚データおよび／または３次元（３Ｄ）深さ情報を捕捉するために倉庫１００内のエリアを走査することなど、様々な動作を実行するために用いられ得る。走査から得たデータは、その後、デジタル環境再構築を提供するために、より広いエリアの表現に統合され得る。追加の例において、再構築された環境はその後、ピックアップする物品、パレット、または他の物体を識別するため、物品またはパレットのピック位置を決定するため、および／またはロボットデバイスが走行すべき無衝突軌道を計画するために用いられ得る。倉庫１００は、ロボットデバイスに接続されていない、たとえばカメラまたは他の種類のセンサなどのセンサも含んでよい。たとえば様々なセンサが、たとえば壁、天井など倉庫内の様々な位置に設置され得る。
【００２６】
［0033］  図１に示すように、倉庫１００は様々なパレットを含み、その各々は、１種類の物品を収容してよく、または複数の種類の物品を収容してよい。一例として、倉庫１００は、列１１４、１１６、１１８、１２０、１２２、および１２４を含み、その各々が、同じ種類の物品を収容するパレットのラインを含む。たとえば、列１１４、列１１８、および列１２４のパレットの各々は第１の種類の物品を含み、列１１６および列１２２のパレットの各々は第２の種類の物品を含み、列１２０のパレットの各々は第３の種類の物品を含んでよい。
【００２７】
［0034］  列１１４、１１６、１１８、１２０、１２２、および１２４におけるいくつかのパレットは、「フル」パレット、すなわちパレットごとに割り当てられた物品の最大量を収容するパレットであると考えられ得る。パレットごとに割り当てられた物品の最大量は、複数のパレットに関して同じまたは異なってよく、ＷＭＳまたは人間によって定められた量であってよい。また、パレットごとに割り当てられた物品の最大量は、たとえばパレット構造（たとえばパレットが支持することができる最大重量）などの様々な要因に依存してよい。比較として、倉庫１００は、たとえばパレット１２６、パレット１２８、パレット１３０、およびパレット１３２など、フルに満たない様々なパレットも含んでよい。これらのパレットの各々は、同じ種類の物品を含んでよく、または様々な種類の物品を含んでよい。
【００２８】
［0035］  図１に示す、倉庫１００内にパレットが配置される方式は、ディープレーンレイアウトの一例であってよい。たとえば列１１４および列１１６は共に第１レーンを形成し、列１１８および列１２０は共に第２レーンを形成し、列１２２および列１２４は共に第３レーンを形成してよい。第１、第２、および第３レーンの各々は、たとえばロボットデバイス（たとえば自律フォークトラック１０２）がレーン間を移動しレーン内のパレットに接近することができる距離など、所定の距離だけ分離され得る。
【００２９】
［0036］  レーン、列、およびパレットは、図１に示す例と異なるように組織されてよい。たとえば他のディープレーンレイアウトにおいて、第１レーン全体が第１の種類の物品のみを収容し、第２レーン全体が異なる第２の種類の物品のみを収容してよい。また、各レーンの幅および長さを構成するパレットの量は増減され得る。
【００３０】
［0037］  いくつかの例において、倉庫１００は、バッテリ交換および／またはバッテリ充電ステーション（不図示）を更に含んでよい。例において、たとえば自律フォークトラック１０２またはＡＧＶ１０４などの移動ロボットデバイスの一部または全ては、複数のバッテリ充電器を備えたバッテリ交換ステーションから充電済みのバッテリを定期的に受け取ってよい。一例において、バッテリ交換ステーションは、ロボットデバイスの古いバッテリを再充電されたバッテリと交換してよく、それによってロボットデバイスはバッテリを充電するために静止および待機する必要がない。バッテリ交換ステーションは、たとえばロボットアームなどのロボットマニピュレータを備えてよい。ロボットマニピュレータは、個々の移動ロボットデバイスからバッテリを取り外し、利用可能なバッテリ充電器にバッテリを取り付けてよい。ロボットマニピュレータはその後、バッテリ交換ステーションにある充電済みのバッテリを移動ロボットデバイスへ移し、取り外されたバッテリと交換してよい。たとえば、弱いバッテリを有するＡＧＶは、バッテリ交換ステーションへ移動するように制御されてよく、そこでロボットアームはＡＧＶからバッテリを抜き出し、バッテリを充電器に入れ、ＡＧＶに新しいバッテリを付与する。
【００３１】
［0038］  例において、たとえば上述した任意の固定ロボットデバイスまたは構成要素および任意のパレットなど他の物体の配置を決定する前に、１または複数のロボットデバイスが、倉庫１００空間のマップを生成するために倉庫１００内に持ち込まれ得る。本明細書において、「マップ」は、環境エリア内の要素の位置を表す情報、および／または特定の要素と他の要素または環境との関係を表す情報を指す。実装例において、マップは、所与の環境内の要素間の関係を表すデータを収集およびコンパイルし、その後、そのようなデータをたとえば仮想２Ｄまたは３Ｄ画像などの仮想形式にフォーマットすることによって決定されたデジタルマップである。マップは、取り係り中の要素および環境、そのような要素の細部、環境、および／またはそのような要素および／または環境における対象点のリアルタイムまたは非リアルタイム表現であってよい。
【００３２】
［0039］  マップ情報が利用可能になると、たとえばＷＭＳなどのコンピューティングシステムは、そのような構成要素を利用可能な空間内でどのようにレイアウトするかを（たとえばシミュレーションの実行によって）決定してよい。特定の場合、レイアウトは、物体に占められる空間の量を最小にするように選択され得る。パレットは、所定の位置に配置されてよく、あるいは他の例ではランダムに配置され得る。またパレットは、本明細書で説明されるような数々の要因に基づくインテリジェント最適化アプローチを用いて配置されてよく、所定の位置またはランダム性も要因の１または複数であってよい。
【００３３】
［0040］  倉庫１００内の様々なデバイス（たとえばロボットデバイス、および場合によってはたとえばバッテリ充電ステーション、遠隔制御出荷ドックドア、遠隔制御ランプなど他の構成要素）の行動を調和させるために、たとえば遠隔クラウドベースサーバシステムなどのグローバル制御システムは、構成要素の一部または全ておよび／または個々の構成要素の個別ローカル制御システムと（たとえば無線通信を介して）通信してよい。たとえばＷＭＳなどの本明細書で説明されるコンピューティングシステムは、そのようなグローバル制御システムの形式であってよい。
【００３４】
［0041］  図２は、本明細書で説明される少なくともいくつかの実装に係るコンピューティングシステム２００の例の構成要素を示す簡略ブロック図である。たとえばコンピューティングシステム２００はＷＭＳとして機能し、上述したように倉庫内のロボットデバイスまたは他の構成要素の動作を動的に制御するなど、たとえば倉庫１００などの倉庫の態様を制御してよい。このようにコンピューティングシステム２００は、たとえばプロセッサ（複数も可）２０２、データストレージユニット２０４、通信インタフェース２０６、および／またはユーザインタフェース２０８などの様々な構成要素を含んでよい。コンピューティングシステム２００の構成要素は、接続メカニズム２１０を介して互いに（または他のデバイス、システム、または他のエンティティと）接続され得る。本開示において、「接続メカニズム」という用語は、２つ以上のデバイス、システム、または他のエンティティ間の通信を容易にするメカニズムを意味する。たとえば接続メカニズムは、たとえばケーブルまたはシステムバスなどの単純なメカニズムであってよく、あるいはたとえばパケットベース通信ネットワーク（たとえばインターネット）などの比較的複雑なメカニズムであってよい。いくつかの例において、接続メカニズムは、（たとえば接続が無線である場合）非有形媒体を含んでよい。コンピューティングシステム２００は、他の実装例において、より多いまたは少ない数の構成要素を含んでよい。
【００３５】
［0042］  プロセッサ２０２は、汎用プロセッサ（たとえばマイクロプロセッサ）および／または専用プロセッサ（たとえばデジタル信号プロセッサ（ＤＳＰ））の形式であってよい。いくつかの例において、コンピューティングシステム２００は、プロセッサの組み合わせを含んでよい。
【００３６】
［0043］  データストレージユニット２０４は、たとえば磁気、光、またはフラッシュストレージなど、１または複数の揮発性、不揮発性、消去可能、および／または非消去可能記憶部品を含んでよく、および／またはプロセッサ２０２に全体または部分的に統合され得る。このようにデータストレージユニット２０４は、プロセッサ２０２によって実行されると、コンピューティングシステム２００に、本開示で説明されるような１または複数の動作および／または機能を実行させるプログラム命令（たとえばコンパイルまたは非コンパイルプログラム論理および／または機械コード）を格納している非一時的コンピュータ可読記憶媒体の形式であってよい。コンピューティングシステム２００は、たとえば本開示で説明されるような１または複数の動作および／または機能を実行するように構成され得る。そのようなプログラム命令は、ディスクリートソフトウェアアプリケーションを定義し、および／またはその一部であってよい。いくつかの例において、コンピューティングシステム２００は、たとえば通信インタフェース２０６および／またはユーザインタフェース２０８からの入力などの入力の受信に応答してプログラム命令を実行してよい。データストレージユニット２０４は、たとえば本開示で説明される種類のような他の種類のデータも格納してよい。
【００３７】
［0044］  通信インタフェース２０６は、コンピューティングシステム２００が、１または複数のプロトコルに従って別の他のエンティティと接続および／または通信することを可能にし得る。一例において、通信インタフェース２０６は、たとえばイーサネット（登録商標）インタフェースまたは高解像度シリアルデジタルインタフェース（ＨＤ‐ＳＤＩ）などの有線インタフェースであってよい。他の例において、通信インタフェース２０６は、たとえばセルラまたはＷｉＦｉインタフェースなどの無線インタフェースであってよい。接続は、直接接続または間接接続であってよく、後者は、たとえばルータ、スイッチャ、または他のネットワークデバイスなど１または複数のエンティティを通過および／または横断する接続である。同様に、伝送は、直接伝送または間接伝送であってよい。
【００３８】
［0045］  ユーザインタフェース２０８は、必要な場合、コンピューティングシステム２００とコンピューティングシステム２００のユーザとのインタラクションを容易にし得る。このようにユーザインタフェース２０８は、たとえばキーボード、キーパッド、マウス、タッチ感知式パネル、マイクロフォン、および／またはカメラなどの入力部品、および／または、たとえば（たとえばタッチ感知式パネルと結合され得る）ディスプレイデバイス、サウンドスピーカ、および／または触覚フィードバックシステムなどの出力部品を含んでよい。より一般には、ユーザインタフェース２０８は、コンピューティングシステム２００とコンピューティングデバイスシステムのユーザとのインタラクションを容易にするハードウェアおよび／またはソフトウェア部品を含んでよい。
【００３９】
［0046］  上述したように、コンピューティングシステム２００は、たとえば倉庫内で動作するロボットデバイスの動作を調和させることによって、倉庫の態様を動的に制御するように構成され得る。一例として、コンピューティングシステム２００は、所与のロボットデバイスに関して、ロボットデバイスが期間全体にわたって実行する一連のタスクを指示するスケジュールを決定し、ロボットデバイスから受信した後続情報（たとえばセンサデータ、タスク進捗更新）、倉庫内に位置する他のロボットデバイス、および／または他のシステム（たとえばセンサシステム）から受信した後続情報を用いてスケジュールを調整してよい。他の例として、コンピューティングシステム２００は、期間中に２つ以上のロボットデバイスが同じエリアにあるようにスケジュールを合わせることを含む、複数のロボットデバイスに関する動作を調和させるように構成され得る。場合によっては、コンピューティングシステムは、その時間にそのエリア内のもう１つのタスクを支援するために２つ以上のロボットデバイスが必要であり得ることを予測している。また他の例として、コンピューティングシステム２００は、同じ期間中に同じエリアでタスクを実行する閾値最大量のロボットデバイスを有さないようにスケジュールを手配することによって、倉庫内の交通過多の発生を回避してもよい。また他の例として、コンピューティングシステム２００は、第１のロボットデバイスよりも第２のロボットデバイスがパレットまで近い距離にある場合、第１のロボットデバイスのスケジュールされたパレットのピックアップを取り消し、代わりに第２のロボットデバイスにパレットをピックアップするように指示することによって、リソースを節約するために１または複数のロボットデバイスのスケジュールを変更してよい。
【００４０】
［0047］  いくつかの例において、コンピューティングシステム２００は、様々なロボットデバイスにタスクを割り当てる中央計画システムとして機能し、またはこれを含んでよい。本明細書において、「タスク」は、少なくとも１つのエンティティが実行するように割り当てられた動作を指す。実装例において、そのようなタスクは、少なくとも１つのエンティティによるタスクの履行を容易にするために少なくとも１つのエンティティを監視、統治、または他の方法で管理するシステムによって、少なくとも１つのエンティティに割り当てられる。
【００４１】
［0048］  中央計画システムは、どのデバイスがどの時間にどのタスクを遂行するかを決定するために様々なスケジューリングアルゴリズムを利用してよい。たとえば中央計画システムは、タスクを実行する特定のロボットの全体コストを最小にするように、ロボットにタスクを割り当ててよい。追加の例において、中央計画システムは、たとえば時間、空間、またはエネルギ利用など１または複数の様々なリソース間で最適化してよい。更なる例において、計画またはスケジューリングシステムは、ボックスピッキング、包装、または保管に関する幾何学および物理学の態様を組み込んでもよい。
【００４２】
［0049］  計画制御は、個々のシステム構成要素に分散されてもよい。たとえば、コンピューティングシステム２００は、グローバルシステム計画に従って命令を発行してよく、個々のシステム構成要素もまた個別のローカル計画に従って動作してよい。また、様々なレベルの細部がグローバル計画に含まれてよく、他の態様は、個々のロボットデバイスがローカルに計画するために残される。たとえば、移動ロボットデバイスは、グローバルプランナによってターゲット目的地を割り当てられ得るが、それらのターゲット目的地へ到達するルート全体はローカルに計画または修正され得る。
【００４３】
［0050］  計画制御を容易にするために、コンピューティングシステム２００は、倉庫１００内のロボットデバイスの位置を監視するための様々な技術を利用してよい。これらの位置は、リアルタイム位置であってよい。計画制御を更に容易にするために、いくつかの実装において、ロボットデバイスは、コンピューティングシステム２００がロボットデバイスの位置を更新することができるように、コンピューティングシステム２００に自身の位置を継続的または定期的に「公表」（たとえば伝送）するように構成され得る。コンピューティングシステム２００および／またはロボットデバイスは、ロボットデバイスの位置の監視を容易にするために他の技術も利用してよい。
【００４４】
［0051］  リアルタイムは、プロセスまたはイベントが発生する実際の時間を指し得るので、リアルタイム位置は、閾値時間内に決定された（たとえば数秒以内に決定された）ロボットデバイスの物理的位置を指し、特定の時間におけるロボットデバイスの物理的位置は確定的に知られる。
【００４５】
［0052］  追加の例において、中央計画システムは、様々なロボットデバイスの機能を調和させるために個々のロボットデバイスにおけるローカル視覚システムと関連して用いられ得る。たとえば、中央計画システムは、行く必要のある場所に少なくとも比較的近いロボットデバイスを知るために用いられ得る。しかし、中央計画システムがロボットにミリメートルの精度で命令することは、ロボットデバイスがレールにボルト留めされているか、ロボット位置を正確に制御するために他の測定部品が使用されていない限り、困難であり得る。したがって、ローカル視覚システムおよび個々のロボットデバイスに関する計画は、様々なロボットデバイス間での融通性を可能にするように用いられ得る。ジェネラルプランナは、ターゲット位置に近いロボットデバイスを知るために用いられ、その地点において、ロボットデバイスのローカル視覚システムが引き継いでよい。いくつかの例において、多くのロボット機能は、ターゲット位置に比較的近いロボットを知るために位置制御されてよく、その後、ローカル制御が必要な場合、視覚システムおよびハンドシェイクが用いられ得る。
【００４６】
［0053］視覚ハンドシェイクは、２つのロボットデバイスがクイックレスポンス（ＱＲ）コード（登録商標）または他の特徴を用いて互いに識別し、倉庫１００内での協調動作を実行することを可能にし得る。追加の例において、追加または代替として物品（たとえば出荷すべき荷物）にも視覚タグが提供され得る。視覚タグは、ローカル視覚システムを用いて物品に動作を実行するためにロボットデバイスによって用いられ得る。一例において、タグは、ロボットデバイスによる物品の取扱いを容易にするために用いられ得る。たとえば、パレットの位置にあるタグは、どこでまたはどのようにパレットを持ち上げるかをフォークリフトに通知するために用いられ得る。
【００４７】
［0054］  追加の例において、ロボットデバイスは、ロボットデバイスが何らかの方法で物品／パレットを取り扱う必要があるタスク中に個々の物品または物品パレットを走査および識別するために自身のローカル視覚システムを用いてよい。これを部分的に容易にするために、たとえば所与の物品／パレットは、所与の物品／パレットに関する符号化情報を有する機械可読コード（たとえばＱＲコード（登録商標）またはバーコード）を含んでよい。走査の結果、機械可読コードは、所与の物品／パレットに関する情報を、ロボットデバイスのローカルコンピューティングシステムおよび／またはコンピューティングシステム２００に提供してよい。たとえばパレットに関して、そのような情報は、パレットが担持する物品の種類を含んでよい。パレットは、パレットおよび／またはパレットの一部として存在することが知られる１または複数のボックスに含まれる無線周波数識別（ＲＦＩＤ）タグも含んでよい。また、パレットの走査またはＲＦＩＤとの通信によって得られるそのような情報は、たとえば（ｉ）倉庫のどこにパレットがあるか、（ｉｉ）パレットは何回移動されたか、（ｉｉｉ）パレットはいつ移動されたか、（ｉｖ）パレットの損傷がある場合、その表示、および（ｖ）パレットは倉庫の他のエリア（たとえば出荷ドック、または他のエリアでの保管）への配送が示されているか、および他の種類の情報など、パレットの履歴を含んでよい。所与の物品／パレットは追加または代替として、ロボットデバイスが物品／パレットを識別し、そのような情報を得るために走査し得る、そのような情報のラベルまたは他の情報源を含んでもよい。
【００４８】
［0055］  このように物品／パレットを走査することは、たとえば物品／パレットが倉庫１００の内外へ、および倉庫１００中を移動すると同時に物品／パレットの進路を特定および追跡することなど、様々な利点をもたらし得る。また、そのような走査の潜在的利益は、供給者側および消費者側の両方における透明性の追加である。供給者側において、たとえば在庫の現在位置に関する情報は、在庫過多を回避するため、および／または、物品／パレットを様々な位置または倉庫へ移動して需要を先取りするために用いられ得る。消費者側において、物品の現在位置に関する情報は、物品／パレットがいつ配送されるかを高い精度で決定するために用いられ得る。
【００４９】
［0056］  追加の例において、コンピューティングシステム２００は、固定および／または移動構成要素に関する展開および／または計画戦略を経時的に最適化してよい。たとえば、コンピューティングシステム２００（たとえばクラウドベースサーバシステム）は、倉庫内の個々のロボットデバイスおよび／または外部供給源からのデータおよび情報を取り入れてよい。戦略はその後、ロボットデバイスがより少ない空間、少ない時間、少ない動力、少ない電力を使用し、または他の変数を最適化することを可能にするために、経時的に精緻化され得る。いくつかの例において、最適化は、場合によっては他のロボットデバイスを有する他の倉庫および／またはそのようなロボットデバイスを有さない従来の倉庫を含む複数の倉庫に及んでよい。たとえばコンピューティングシステム２００は、配送車両および施設間の通過時間に関する情報を中央計画に取り入れてよい。
【００５０】
［0057］  同様に、コンピューティングシステム２００は、物品に関する既存の需要（たとえば製品に対する現在の注文）を満たし、物品に関して予想される需要を満たし、特定の事業目標を満たすなどのように、計画戦略を経時的に最適化してよい。
【００５１】
［0058］  いくつかの例において、中央計画システムは、たとえばロボットデバイスが衝突した時または物品がある位置で落下し紛失された時など、場合によっては失敗し得る。したがってローカル視覚システムは、中央プランナが失敗した場合に対処するための冗長性を挿入することによって堅牢性を提供してもよい。たとえば、自動パレットジャックが物品を通過し識別すると、パレットジャックは、遠隔クラウドベースサーバシステムへ情報を送信してよい。そのような情報は、中央計画におけるエラーを修正するため、ロボットデバイスのローカライズを助けるため、または紛失した物品を識別するために用いられ得る。
【００５２】
［0059］  更なる例において、コンピューティングシステム２００は、倉庫１００およびロボットデバイスによる処理中の物品のマップを動的に更新してよい。いくつかの例において、マップは、動的物体（たとえば移動中のロボットデバイスおよびロボットデバイスによって移動される物品／パレット）に関する情報を用いて継続的に更新され得る。追加の例において、動的マップは、倉庫内（または複数の倉庫にわたる）の物体の現在の配置、およびたとえば短期的（たとえば来る数秒、数分、数時間、または数日）または長期的（たとえば来る数週間、数か月、または数年）な未来に予想されることに関する情報の両方に関する情報を含んでよい。たとえばマップは、移動中のロボットデバイスの現在位置、および未来におけるロボットデバイスの予想位置を示してよく、これは、ロボットデバイス間で活動を連係させるために用いられ得る。またマップは、処理中の物品の現在位置および物品の予想される未来位置（たとえば現在物品がどこにあり、物品がいつ出荷されると予想されるか）も示してよい。更にマップは、倉庫にまだ到着していない物品の予想位置を示してよい。たとえばコンピューティングシステム２００は、物品の注文履歴、予測される注文、パレット再配置の履歴、および／または他の既知または予測情報を考慮して、物品のパレットが到着した時に倉庫内のどこに配置すべきかをマップに示させてよい。
【００５３】
［0060］  上記に従って、コンピューティングシステム２００は、バッテリ交換、充電、および必要であり得る他の任意のスケジュールされたメンテナンスもスケジュールしてよい。たとえば個々の移動ロボットデバイスは、自身のバッテリ充電状態を監視するように構成され得る。ロボットデバイスは、自身のバッテリの状態を示す情報をコンピューティングシステム２００へ送信してよい。この情報はその後、コンピューティングシステム２００によって、個々のロボットデバイスに関する必要時または都合の良い時のバッテリ交換をスケジュールするために用いられ得る。
【００５４】
［0061］  上述したように、コンピューティングシステム２００は、倉庫の最適レイアウトを決定するためにデータストレージユニット２０４に格納された命令を実行するＷＭＳとして機能してよい。従来、倉庫の配置は静的であり、パレットは所定の位置に配置される。しかし、出荷の（たとえば日ごと、季節ごとの）変化に応じて、本明細書で説明される方法は、数々の可能な要因に基づく倉庫の動的な再配置を可能にする。一例として、季節物品は、それらが季節外である時は倉庫の後方に向かって配置され、同様に物品の過剰在庫も後方に向かって配置され得る。レイアウトは、倉庫の任意の固定レイアウトに制限されず、動的に決定されてよく、任意のレイアウトは、考慮される要因に基づく最適であってよい。倉庫内の全てのパレットの物理的位置、およびパレットの内容物を把握した状態で、出荷のために処理される物品を決定するために出荷オーダーがアクセスされ、受取りが予想される物品を決定するために受取り記録がアクセスされ得る。これらの要因の全ては、現在の倉庫の最適レイアウトを生成するために処理され得る。
【００５５】
［0062］  最適レイアウトは、たとえば倉庫の保管容量を向上させるためなど、カスタマイズ可能な目標に基づいてよい。保管容量が必要とされる例において、レイアウトは、広い幅ではなく狭い幅の通路を用いるように修正されてよく、これは、保管容量を増加させるために発送スループット（たとえばパレット内の物品への接近手段）と引き替えであってよい。レイアウトは、日ごとまたは年間の季節ごとに、あるいは保管容量または発送スループットを最適化するように最適化され得る。
【００５６】
［0063］  図３は、本明細書で説明される少なくともいくつかの実装に係る方法３００の例のフローチャートである。図３に示す方法３００は、たとえば図１および図２に示すデバイス、構成要素、およびシステムとともに使用され得る、またはこれらの図の任意の構成要素の組み合わせによって実行され得る方法の実装を提示する。方法３００は、ブロック３０２〜３１２の１または複数によって示すような１または複数の動作または行動を含んでよい。ブロックは連続的順序で示されるが、これらのブロックはいくつかの例においては同時に実行され、および／または本明細書で説明される順序と異なる順序で実行されてもよい。また、様々なブロックは、より少ない数のブロックに結合され、追加のブロックに分割され、および／または所望の実装に基づいて取り除かれてもよい。
【００５７】
［0064］  また、方法３００、および本明細書に開示される他のプロセスおよび方法に関して、フローチャートは可能な実装の１つの動作を示す。この点に関して、各ブロックは、プロセスにおける特定の論理的動作またはステップを実行するために１または複数のプロセッサによって実行可能な１または複数の命令を含む、モジュール、セグメント、またはプログラムコードの一部を表してよい。プログラムコードは、たとえばディスクまたはハードドライブを含むストレージデバイスなど、任意の種類のコンピュータ可読媒体に格納され得る。コンピュータ可読媒体は、たとえばレジスタメモリ、プロセッサキャッシュ、およびランダムアクセスメモリ（ＲＡＭ）のような短期間にわたりデータを格納するコンピュータ可読媒体などの非一時的コンピュータ可読媒体を含んでよい。コンピュータ可読媒体は、たとえば読取専用メモリ（ＲＯＭ）、光または磁気ディスク、コンパクトディスク読取専用メモリ（ＣＤ‐ＲＯＭ）のような二次または持続性長期間ストレージなどの非一時的媒体も含んでよい。コンピュータ可読媒体は、他の任意の揮発性または不揮発性ストレージシステムであってもよい。コンピュータ可読媒体は、たとえばコンピュータ可読記憶媒体、有形ストレージデバイス、または他の製品と考えられ得る。
【００５８】
［0065］  また、方法３００、および本明細書に開示される他のプロセスおよび方法に関して、図３における各ブロックは、プロセス内の特定の論理的動作を実行するための有線である回路を表してよい。
【００５９】
［0066］  方法の動作、および本明細書で開示される他の方法およびプロセスの動作は、いくつかの例において、たとえばコンピューティングシステム２００などのＷＭＳによって実行されるものとして説明される。しかしこれらの動作は、他のエンティティまたはエンティティの組み合わせによって全体または部分的に実行されてもよい。たとえばこれらの動作は、ロボットデバイスの一部を管理し得るより小さなピアツーピアネットワークまたはサーバに動作を分配することができる中央サーバによって管理され得る。また、例において、ＷＭＳは、クラウドベースコンピューティングシステム、または倉庫のレイアウトを再配置するためにロボットデバイスの少なくとも一部を管理するように構成された他のエンティティであってよい。
【００６０】
［0067］  ブロック３０２において、方法３００は、倉庫管理システム（ＷＭＳ）において、倉庫における物品のリアルタイム在庫および倉庫内にある物品に関連するリアルタイム位置データを含む、倉庫および倉庫の物品の情報を受信することを含む。倉庫内の物品はパレット上に配置され、ＷＭＳは、倉庫内のパレットの配置および各パレットの内容物に関する情報を受信する。いくつかの例において、パレットの配置に関する情報、および他のリアルタイム位置データは、倉庫およびその周囲（たとえば荷積みベイ、駐車エリア、隣接する保管ユニットなど）内のパレットまたは物体に結合されたセンサ、トラッカ、送信機、または他の識別子を用いてＷＭＳへ提供され得る。ＷＭＳは、倉庫の配置および活動を計画および管理してよい。たとえばＷＭＳは、発注書および顧客注文データに基づいて次の営業日に受け取られる物品をどこに保管するかを決定するため、および物品の受取り後、物品をどこに保管するかを決定するためにリアルタイム在庫を用いてよい。
【００６１】
［0068］  ブロック３０４において、方法３００は、ＷＭＳによって、受取り記録、注文履行、および出荷記録の１または複数へのアクセスに基づいて、未来の日付に倉庫で受け取られることが予想される１または複数の新たな物品、および未来の日付における配送が示された倉庫にある１または複数の物品を含む物品出荷予想を識別することを含む。注文履行および出荷記録は、ＷＭＳへ電子的に送信され、またはＷＭＳに格納されてもよい。またＷＭＳは、ネットワークを介して注文履行および出荷記録にアクセスしてもよい。
【００６２】
［0069］  ブロック３０６において、方法３００は、物品出荷予測に基づいて、現在の倉庫内の物品の最適レイアウトを決定することを含む。倉庫内の物品の最適レイアウトは、物品の販売促進日を含む事業目標、または配送される物品量の予想に基づいて決定されてもよい。
【００６３】
［0070］  倉庫のレイアウト例は、以下で詳述されるように、図４〜図８に示される。
【００６４】
［0071］  現在の倉庫の物品の最適レイアウトの決定は、多数の要因に基づいてよい。最適化は、レイアウトを入れ替えるコストを決定するために過去に実行された再配置を分析することによって決定され得る。最適化は、数々のパラメータを考慮するコスト関数の出力に基づいてよい。いくつかのパラメータは、在庫がなくなるまでの予想時間、到着物品に必要な保管容量、および物品の出荷に関する１または複数の期限を含む。
【００６５】
［0072］  また、最適レイアウトの決定は、格納された倉庫構成にアクセスすることによって、または倉庫の過去の配置から実行され得る。たとえば、倉庫内の物品は所望の方法で構成されてよく、特定の構成は、たとえばパレットの物理的位置および配置を記録するために倉庫を撮像することによってメモリに記録および格納され得る。構成は、特定のパラメータ、たとえば保管容量パラメータ、発送スループットパラメータに関連してよく、倉庫の今後の再配置のために、ユーザはＷＭＳにパラメータを入力してよく、ＷＭＳはその後、パラメータ入力に基づいて関連する最適レイアウトを決定するために、格納された構成にアクセスする。
【００６６】
［0073］  レイアウト例は、密集グリッドレイアウトを含んでよく、この場合、パレットが密に保管されると同時に、様々な目的でパレットを移動する必要がある場合、高い需要が予想される（または知られる）パレットにロボットデバイスが接近し易いことを可能にし、ロボットデバイスがパレットにどのように接近するかを制御することを可能にする。密集グリッドレイアウトは、様々な特徴を有してよい。たとえば、最低限、密集グリッドレイアウトの走行レーンの中央から所与のパレットまでの距離は、所与のパレットに関する需要の可能性に関連してよい。
【００６７】
［0074］  他の例として、最適レイアウトは、ディープレーンレイアウトを含んでよく、これは様々な特徴によって定義され得る。たとえば、最低限、ディープレーンレイアウトは、それぞれのレーンに配置されたパレットのグループを含んでよく、いくつかのパレットは、他のパレットの後ろに置かれているため、移動または走行ラインから即時に接近することができない。他のレイアウトも可能である。
【００６８】
［0075］  ブロック３０８において、方法３００は、１または複数のロボットデバイスのうちのロボットデバイスがタスクを実行するためにかかる時間測定値に基づいて、物品を再配置する１または複数のロボットデバイスによって倉庫の物品を最適レイアウトに再配置するためにかかる時間を決定することを含む。この目的のために複数のロボットデバイスが用いられてもよい。ロボットデバイスは、イベントに変化性をもたらす人間労働者と対照的に、既知の時間フレーム内にタスクを実行することができる。したがって時間測定値は、一定の時間測定値であってよい。特定のロボットデバイスによって倉庫を横切りパレットを新たな位置へ移動することは、特定の時間を要することが決定され得る。また、ロボットデバイス隊を用いて、ＷＭＳは、他のいずれかのロボットデバイスと経路を交差させ、または行動の衝突を招くロボットデバイスがないように、個々のロボットデバイスをプログラムすることができる。これによって、各ロボットデバイスは、個々にまたは連帯して動作することができ、隊は、倉庫の再配置を実行するために効率的に動作することができる。
【００６９】
［0076］  ＷＭＳは、特定のロボットデバイスによって特定のタスクを実行するためにかかる既知の時間を格納するデータベースにアクセスし、この方法で倉庫を再配置するための合計時間を決定することができる。他の例において、特定のロボットによって特定のタスクを実行するためにかかる時間は、タスクの高忠実度シミュレーションによってリアルタイムで計算することができ、この場合シミュレーションは、利用可能なロボットによってタスクを実行するための時間を推定するために実行される。
【００７０】
［0077］  ブロック３１０において、方法３００は、物品を再配置するためにかかる時間が閾値時間を下回ることに基づいて、倉庫の物品を再配置することを決定することを含む。したがって、一般に、ロボットデバイスが再配置を完了することができる利用可能時間がある場合、ＷＭＳは、そうすることを決定する。実際、再配置は、人間の従業員が存在せず、その日の倉庫作業が完了している場合、一晩中発生してよい。いくつかの例において、時間は、最適化に着手するかを決定する時に考慮される１つの制約にすぎず、たとえば倉庫の現在の在庫、今後の注文、今後の配送、利用可能なロボットデバイスの数、ロボットデバイスの現在および今後のバッテリ状態、衝突し得るロボットデバイスの動作など、他の追加の制約も考慮され得る。
【００７１】
［0078］  コスト関数は、倉庫１００を再配置するためのコストを発生すると考えられるパラメータのいずれかおよび全てに値を関連付けてよく、コストが閾値を下回る場合、再配置を実行することは有益であると決定され得る。コスト関数は、パラメータまたは制約を条件として最大化または最小化され得る。達成が望まれる目標に依存して、コスト関数の例は以下を含んでよい。
Ｆ（ｘ）＝ｓｔｏｒａｇｅ＋ｐａｌｌｅｔｓ（Ａ−Ｈ）／ｓｈｉｐｐｉｎｇ＋ｏｐｅｎ  ｄｏｃｋｓ
式中、ｓｔｏｒａｇｅは、必要な１平方フィート当たりの保管量を示し、ｐａｌｌｅｔｓ（Ａ−Ｈ）／ｓｈｉｐｐｉｎｇは、出荷ドック付近にそのようなパレットを有する要件を示し、ｏｐｅｎ  ｄｏｃｋｓは、全ての出荷ドックが出入り可能かつ使用可能である要件を示す。そのようなパラメータに関連付ける値は、０〜１００点システムに基づいてよく、ゼロは低優先度を示し、１００は必要不可欠性を示す。このシナリオ例におけるコスト関数が閾値点数を下回った場合、たとえば、再配置が推奨されるとみなされ、再配置が閾値利用可能時間内に生じることができる場合、ＷＭＳは再配置の実行を決定する。他の例において、コスト関数は制約付き最適化として設定されてよく、この場合、いくつかの変数に制約が存在する場合、これらの変数に関して目的関数が確立される。制約は、満たされなくてはならない変数の条件を設定するハードな制約、または、変数における条件が満たされない場合、その範囲に基づいて目的関数に不利ないくつかの変数値を有するソフトな制約のいずれかであってよい。ここで、コスト関数はたとえば、全ての出荷ドックドアが使用可能であるという制約を条件として、９５番目の百分位数の注文履行レイテンシの最小化を試みるために処理され得る。他の目標が設定されてもよい。
【００７２】
［0079］  コスト関数への値は、ユーザによって入力され、またはユーザインタフェースからＷＭＳによって受信されてよく、コスト関数の閾値もまたユーザによって設定され得る。更なる例において、コスト関数への入力は、予測および既知の今後出入りする品物に基づいて、コストまたはレイテンシを最小化またはスループットを最大化する目標に基づいて推測され得る。
【００７３】
［0080］  コスト関数の他の例も用いられてよく、未来の日付における倉庫の保管容量要件、および未来の日付における保管容量要件を提供しながら物品の発送スループット（たとえば倉庫内の走行レーンに沿った物品への接近）を満たす最適レイアウトを考慮してよい。物品の発送スループットは、タイムリーに物品に接近する能力も指す。たとえば、物品が、遮断された走行レーンによって接近不可能なエリアにある場合、発送スループットは、物品が荷解きされる時に遅延される。
【００７４】
［0081］  ブロック３１２において、方法３００は、１または複数のロボットデバイスに、倉庫の物品を最適レイアウトに再配置させることを含む。ＷＭＳは、再配置を遂行するための特定のタスクを通知する電子メッセージを（たとえば無線で）各ロボットデバイスへ送信してよく、その後ロボットデバイスは、倉庫の物品を最適レイアウトに再配置してよい。タスクは、倉庫１００内の物品を１つの物理的位置から別の物理的位置へ移動し、またはパレットを結合するための、図１に関して説明されたタスクのいずれかを含んでよい。
【００７５】
［0082］  例において、ロボットデバイスは、所与のタスクの履行の進捗および完了をＷＭＳに通信してよい。したがってＷＭＳは、所与のタスクフェーズの履行の完了を示すメッセージに応答して、１または複数のロボットデバイスのうちの少なくとも１つに、所与のタスクに引き続く別のタスクを実行させてよい。
【００７６】
［0083］  方法３００は、保管容量要件と比較して発送スループットを重視する任意の数のパラメータを考慮するように物品が再配置され得るので、効率的な注文履行のために倉庫１００内の物品を組織するのみではない。また、再配置は、受信した命令に基づいて、タスクを実行するための既知の時間フレームに従って動作する無人ロボットデバイスによって実行される。したがって、従来の倉庫環境は、大掛かりな再配置を、非効率性、またはその利益よりもコストが上回るという理由から行わないことがあるが、倉庫１００は、小さな利益しかもたらさない場合でもロボットデバイスを用いて再配置され得る。
【００７７】
［0084］  倉庫１００は、物品の受取りおよび出荷日の後に最適レイアウトを実現するために、夜間を通して毎日再配置され得る。最適レイアウトは、倉庫を、次の営業日のために最適な構成にし得る。他の例において、倉庫は、毎週、毎月、季節ごと、または、任意の所望の再配置を実行するために必要な利用可能時間がある時間窓において再配置され得る。
【００７８】
［0085］  また、倉庫１００の一部は、他の部分を定位置に保ったまま再配置され得る。ＷＭＳは、倉庫１００の任意のカスタマイズド再配置を実行するようにプログラム可能である。
【００７９】
［0086］  図４〜６は、倉庫のレイアウト例を示す。図４は、パレットＡ〜Ｈと符号付けされた複数の物品パレットおよび出荷ドック１１０および１１１を含む倉庫１００のレイアウト例を示す。図４において、パレットＡ〜Ｈは２列に配置され、出荷ドック１１１は遮断される。
【００８０】
［0087］  倉庫１００の最適レイアウトは、出荷ドック１１１が出入り可能かつ使用可能であるように決定されてよく、したがってパレットＡ〜Ｄは、出荷ドック１１１を使用する物品出荷予想によって移動され得る。図５は、パレットＡ〜Ｈの最適レイアウトへの再配置の例を示す。たとえばパレットＡ〜Ｄは、パレットＥ〜Ｈの列の反対側の出入り可能な列へ移動され得る。パレットＡ〜Ｄが移動されると、出荷ドック１１１は使用することが可能になる。
【００８１】
［0088］  他の例において、倉庫１００の最適レイアウトは、両方の出荷ドック１１０および１１１が出入り可能かつ利用可能であるように決定され得る。図６は、このレイアウトに関するパレットＡ、Ｅ、およびＦの再配置の例を示す。たとえば、パレットＡ、Ｅ、およびＦの各々は、出荷ドック１１０も使用できるように出入り可能な状態にしたまま、出荷ドック１１１への接近手段を提供するように隣の列へ移動され得る。
【００８２】
［0089］  これらのレイアウト例のいくつかは、出荷ドック付近の物品利用可能性にも基づいて決定されてよく、物品の過剰在庫は、出荷ドック１１０および１１１から離れた保管位置に置き換えられ得る。一例として、パレットＡおよびＦは、双方同じ物品を収容してよく、パレットＦ上の過剰在庫は、倉庫１００の後方に向かって保管されるように配置され得る。すなわち簡単に言うと、パレットＦ上の過剰在庫は、出荷ドック１１０および１１１から離れて配置され得る。他の例において、レイアウトは、パレットラックにおける（たとえば、動きが遅いまたは過剰な在庫は、ラックの上方に配置される）物品の配置、または積み重ねられたパレットにおける（たとえば、動きが遅いまたは過剰な在庫は、積み重ねの底またはパレットレーンの奥に配置される）物品の配置によって決定され得る。
【００８３】
［0090］  また他の例において、図７〜図８は、倉庫１００の追加のレイアウトを示す。図７は、パレットＡ〜Ｈと符号付けされた複数の物品パレットおよび出荷ドック１１０および１１１を含む倉庫１００のレイアウト例を示す。また、新たなパレットＩ〜Ｋは、出荷ドック１１０において配送され受け取られた直後である。図８は、倉庫１００の最大保管容量の配置に基づく倉庫１００の最適レイアウトの例を示す。この例において、パレットは倉庫の壁に向かって配置され、たとえばパレットＣとＤ、およびＧとＨのように、いくつかのパレットは結合され得る。また、様々なサイズの新たなパレットＩ〜Ｋは、積み重ねられてもよい。図８に示すレイアウトは、倉庫１００内のパレットのサイズを考慮して、倉庫１００の最大保管容量をもたらし得る。
【００８４】
［0091］  本明細書で説明される配置は、例示目的にすぎないことを理解すべきである。したがって当業者は、他の配置および他の要素（たとえば機械、インタフェース、動作、順序、および動作のグループなど）が代替として用いられてよく、いくつかの要素は所望の結果に従って完全に省かれてよいことを理解する。また、説明される要素の多くは、任意の適切な組み合わせおよび位置において、個別または分散型構成要素として、または他の構成要素と関連して実装され得る動作エンティティであり、または独立した構成として説明される他の構成要素は結合されてよい。
【００８５】
［0092］  本明細書において様々な態様および実装が開示されたが、他の態様および実装が当業者には明らかである。本明細書で開示された様々な態様および実装は、例示を目的とするものであり、限定的であることは意図されず、適正な範囲は、それらのクレームが権利を付与された全ての範囲の均等物とともに以下のクレームによって示される。本明細書で使用される用語は、実装例を説明するために用いられたにすぎず、限定的であることは意図されないことも理解すべきである。
【図１】
2019526513.tif 000003
【図２】
2019526513.tif 000004
【図３】
2019526513.tif 000005
【図４】
2019526513.tif 000006
【図５】
2019526513.tif 000007
【図６】
2019526513.tif 000008
【図７】
2019526513.tif 000009
【図８】
2019526513.tif 000010
【国際調査報告】
2019526513.tif 000011
2019526513.tif 000012