(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-02-17
(45)【発行日】2023-02-28
(54)【発明の名称】動的カート最適化システム
(51)【国際特許分類】
B65G 1/137 20060101AFI20230220BHJP
G06Q 10/08 20230101ALI20230220BHJP
【FI】
B65G1/137 E
G06Q10/08
(21)【出願番号】P 2022506355
(86)(22)【出願日】2020-07-30
(86)【国際出願番号】 US2020044240
(87)【国際公開番号】W WO2021025945
(87)【国際公開日】2021-02-11
【審査請求日】2022-07-04
(32)【優先日】2019-08-02
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2020-07-29
(33)【優先権主張国・地域又は機関】US
【早期審査対象出願】
(73)【特許権者】
【識別番号】511117392
【氏名又は名称】パックサイズ,エルエルシー
(74)【代理人】
【識別番号】100118902
【氏名又は名称】山本 修
(74)【代理人】
【識別番号】100106208
【氏名又は名称】宮前 徹
(74)【代理人】
【識別番号】100196508
【氏名又は名称】松尾 淳一
(74)【代理人】
【識別番号】100119781
【氏名又は名称】中村 彰吾
(72)【発明者】
【氏名】ラスマッセン,ジェフリー・エル
(72)【発明者】
【氏名】ブロック,エリック・ブランチ
(72)【発明者】
【氏名】モーガン,ケビン・ブレイドン
(72)【発明者】
【氏名】ハーネスク,アンドレアス
(72)【発明者】
【氏名】ギャラウェイ,ロドニー
【審査官】板澤 敏明
(56)【参考文献】
【文献】特表2019-529279(JP,A)
【文献】特表2018-513503(JP,A)
【文献】米国特許出願公開第2017/0220984(US,A1)
【文献】米国特許出願公開第2018/0265297(US,A1)
【文献】米国特許出願公開第2018/0357601(US,A1)
【文献】特開2019-28838(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B65G 1/00
(57)【特許請求の範囲】
【請求項1】
デジタルグラフモデルの中でノードおよびエッジ
の選択物を最適化するためのコンピュータシステムであって、
1つまたは複数のプロセッサと、
前記1つまたは複数のプロセッサにより実行されるときに、前記コンピュータシステムを、少なくとも、
物理的倉庫場所のデジタルグラフモデルにアクセスすることであって、
前記デジタルグラフモデルは、前記物理的倉庫場所内の棚の間でのインベントリの複数個の特定の物品の場所を指示する情報を含み、
前記デジタルグラフモデルは、複数個のノードと、複数個のエッジとを含み、前記複数個のノードは、各々、前記物理的倉庫場所の中の異なる物理的区域を表し、前記複数個のエッジは、各々、前記複数個のノードの中の各々のノードと、各々のノードのすぐ隣のネイバー(immediate neighbors)との間の物理的径路を表す、アクセスすることと、
注文要求データベースの中で、注文のセットを識別することであって、注文の前記セットの中の各々の注文は、1つまたは複数の物品と、注文優先度とを含む、識別することと、
注文の前記セットから選択される各々の注文においての各々の物品を、前記デジタルグラフモデルの中の前記複数個のノードにマッピングすることと、
前記複数個のノードから上位ノードを識別することであって、前記上位ノードは、最も高い数のマッピングされる物品を伴うノードを含む、識別することと、
詰め込みしきい値レベルより上に、ピッキングカートのデジタルモデルを一杯にするための、前記デジタルグラフモデルの中の最も短い経路を識別するために、前記上位ノードから延びる1つまたは複数のエッジを走査することと
を遂行するように構成する、実行可能命令を記憶している、1つまたは複数のコンピュータ可読媒体と
を含む、コンピュータシステム。
【請求項2】
前記実行可能命令は、前記コンピュータシステムを、
前記最も短い経路に基づいてピック要求(pick request)を生成することであって、前記ピック要求は、前記最も短い経路に沿って配置される注文の前記セットから選択される1つまたは複数の注文を含む、生成すること
を行うように構成するように実行可能である命令を含む、請求項1に記載のコンピュータシステム。
【請求項3】
前記実行可能命令は、前記コンピュータシステムを、
ユーザインターフェイス上で、前記ピック要求を完了するために、ユーザが前記物理的倉庫場所の中で進行するために、1つまたは複数の視覚的道順を表示する
ように構成するように実行可能である命令を含む、請求項2に記載のコンピュータシステム。
【請求項4】
前記実行可能命令は、前記コンピュータシステムを、
自動化されたピッキングデバイスへの通信のために、1つまたは複数のコンピュータ命令を生成することであって、前記1つまたは複数のコンピュータ命令は、前記自動化されたピッキングデバイス(picking device)に、前記最も短い経路に沿って進行させる、生成すること
を行うように構成するように実行可能である命令を含む、請求項2に記載のコンピュータシステム。
【請求項5】
前記デジタルグラフモデルの中の前記最も短い経路を識別するために、前記上位ノードから延びる前記1つまたは複数のエッジを走査することは、
前記デジタルグラフモデルの中の前記上位ノードにアクセスすることと、
前記上位ノードに配置される少なくとも1つの物品と各々が関連付けられる、前記1つまたは複数の注文の中の注文のサブセットを識別することと、
注文の前記サブセットからの物品と関連付けられる、関連付けられるノードのセットを識別することと、
前記上位ノードから前記上位ノードの1つまたは複数の関連付けられるノードに延びる各々のエッジを走査することと、
前記1つまたは複数の関連付けられるノードにおいて、注文の前記サブセットの中の注文と関連付けられる追加的な物品を識別することと、
1つまたは複数の完了された注文を識別することを、前記1つまたは複数の完了された注文が、関連付けられるノードの前記セットの中で完全に対処されるまで、前記上位ノードから前記1つまたは複数の関連付けられるノードの各々に延びる各々のエッジを走査することを継続することにより行うことと、
前記ピッキングカートの前記デジタルモデルが、完了された注文によって、前記詰め込みしきい値レベルより上に一杯にされると決定されるときに、前記ピック要求を生成することと
を含む、請求項2に記載のコンピュータシステム。
【請求項6】
前記ピッキングカートの前記デジタルモデルが、前記1つまたは複数の完了された注文によって、前記詰め込みしきい値レベルより上に一杯にされると決定することは、
前記1つまたは複数の完了された注文にキュービングアルゴリズムを適用することと、
前記キュービング(cubing)アルゴリズムの結果に基づいて、前記ピッキングカートの前記デジタルモデルが、前記詰め込みしきい値レベルより上に一杯にされると決定することと
を含む、請求項5に記載のコンピュータシステム。
【請求項7】
前記ピック要求を生成することは、
前記ピック要求の中に、優先度しきい値を超過する個別の注文優先度と関連付けられる個別の注文を含めることであって、前記個別の注文は、前記最も短い経路に沿った様態に
ならなくてもよい、含めること
を含む、請求項5に記載のコンピュータシステム。
【請求項8】
前記詰め込みしきい値レベルは、重量を含む、請求項5に記載のコンピュータシステム。
【請求項9】
前記詰め込みしきい値レベルは、体積利用度を含む、請求項5に記載のコンピュータシステム。
【請求項10】
デジタルグラフモデルの中でノードおよびエッジ
の選択物を最適化するための、コンピュータで実現される方法であって、1つまたは複数のプロセッサと、コンピュータ可読媒体とを含むコンピュータシステムにおいて遂行され、
物理的倉庫場所のデジタルグラフモデルにアクセスするステップであって、
前記デジタルグラフモデルは、前記物理的倉庫場所内の棚の間でのインベントリの複数個の特定の物品の場所を指示する情報を含み、
前記デジタルグラフモデルは、複数個のノードと、複数個のエッジとを含み、前記複数個のノードは、各々、前記物理的倉庫場所の中の異なる物理的区域を表し、前記複数個のエッジは、各々、前記複数個のノードの中の各々のノードと、各々のノードのすぐ隣のネイバーとの間の物理的径路を表す、アクセスするステップと、
注文要求データベースの中で、注文のセットを識別するステップであって、注文の前記セットの中の各々の注文は、1つまたは複数の物品と、注文優先度とを含む、識別するステップと、
注文の前記セットから選択される各々の注文においての各々の物品を、前記デジタルグラフモデルの中の前記複数個のノードにマッピングするステップと、
前記複数個のノードから上位ノードを識別するステップであって、前記上位ノードは、最も高い数のマッピングされる物品を伴うノードを含む、識別するステップと、
詰め込みしきい値レベルより上に、ピッキングカートのデジタルモデルを一杯にするための、前記デジタルグラフモデルの中の最も短い経路を識別するために、前記上位ノードから延びる1つまたは複数のエッジを走査するステップと
を含む、コンピュータで実現される方法。
【請求項11】
前記最も短い経路に基づいてピック要求を生成するステップであって、前記ピック要求は、前記最も短い経路に沿って配置される注文の前記セットから選択される1つまたは複数の注文を含む、生成するステップ
をさらに含む、請求項10に記載のコンピュータで実現される方法。
【請求項12】
ユーザインターフェイス上で、前記ピック要求を完了するために、ユーザが前記物理的倉庫場所の中で進行するために、1つまたは複数の視覚的道順を表示するステップ
をさらに含む、請求項11に記載のコンピュータで実現される方法。
【請求項13】
自動化されたピッキングデバイスへの通信のために、1つまたは複数のコンピュータ命令を生成するステップであって、前記1つまたは複数のコンピュータ命令は、前記自動化されたピッキングデバイスに、前記最も短い経路に沿って進行させる、生成するステップをさらに含む、請求項11に記載のコンピュータで実現される方法。
【請求項14】
前記デジタルグラフモデルの中の前記最も短い経路を識別するために、前記上位ノードから延びる前記1つまたは複数のエッジを走査するステップは、
前記デジタルグラフモデルの中の前記上位ノードにアクセスするステップと、
前記上位ノードに配置される少なくとも1つの物品と各々が関連付けられる、前記1つまたは複数の注文の中の注文のサブセットを識別するステップと、
注文の前記サブセットからの物品と関連付けられる、関連付けられるノードのセットを識別するステップと、
前記上位ノードから前記上位ノードの1つまたは複数の関連付けられるノードに延びる各々のエッジを走査するステップと、
前記1つまたは複数の関連付けられるノードにおいて、注文の前記サブセットの中の注文と関連付けられる追加的な物品を識別するステップと、
1つまたは複数の完了された注文を識別することを、前記1つまたは複数の完了された注文が、関連付けられるノードの前記セットの中で完全に対処されるまで、前記上位ノードから前記1つまたは複数の関連付けられるノードの各々に延びる各々のエッジを走査することを継続することにより行うステップと、
前記ピッキングカートの前記デジタルモデルが、完了された注文によって、前記詰め込みしきい値レベルより上に一杯にされると決定されるときに、前記ピック要求を生成するステップと
を含む、請求項11に記載のコンピュータで実現される方法。
【請求項15】
前記ピッキングカートの前記デジタルモデルが、完了された注文によって、前記詰め込みしきい値レベルより上に一杯にされると決定するステップは、
前記1つまたは複数の完了された注文にキュービングアルゴリズムを適用するステップと、
前記キュービングアルゴリズムの結果に基づいて、前記ピッキングカートの前記デジタルモデルが、前記詰め込みしきい値レベルより上に一杯にされると決定するステップと
を含む、請求項14に記載のコンピュータで実現される方法。
【請求項16】
前記ピック要求を生成するステップは、
前記ピック要求の中に、優先度しきい値を超過する個別の注文優先度と関連付けられる個別の注文を含めるステップであって、前記個別の注文は、前記最も短い経路に沿った様態になら
なくてもよい、含めるステップ
を含む、請求項14に記載のコンピュータで実現される方法。
【請求項17】
前記詰め込みしきい値レベルは、重量を含む、請求項14に記載のコンピュータで実現される方法。
【請求項18】
前記詰め込みしきい値レベルは、体積利用度を含む、請求項14に記載のコンピュータで実現される方法。
【請求項19】
プロセッサにおいて実行されるときに、コンピュータシステムに、注文品が収集された後に梱包材テンプレートを創出するための方法を遂行させる、コンピュータ実行可能命令を記憶している、1つまたは複数の物理的コンピュータ可読記憶媒体を含むコンピュータ可読媒体であって、前記方法は、
物理的倉庫場所のデジタルグラフモデルにアクセスするステップであって、
前記デジタルグラフモデルは、前記物理的倉庫場所内の棚の間でのインベントリの複数個の特定の物品の場所を指示する情報を含み、
前記デジタルグラフモデルは、複数個のノードと、複数個のエッジとを含み、前記複数個のノードは、各々、前記物理的倉庫場所の中の異なる物理的区域を表し、前記複数個のエッジは、各々、前記複数個のノードの中の各々のノードと、各々のノードのすぐ隣のネイバーとの間の物理的径路を表す、アクセスするステップと、
注文要求データベースの中で、注文のセットを識別するステップであって、注文の前記セットの中の各々の注文は、1つまたは複数の物品と、注文優先度とを含む、識別するステップと、
注文の前記セットから選択される各々の注文においての各々の物品を、前記デジタルグラフモデルの中の前記複数個のノードにマッピングするステップと、
前記複数個のノードから上位ノードを識別するステップであって、前記上位ノードは、最も高い数のマッピングされる物品を伴うノードを含む、識別するステップと、
詰め込みしきい値レベルより上に、ピッキングカートのデジタルモデルを一杯にするための、前記デジタルグラフモデルの中の最も短い経路を識別するために、前記上位ノードから延びる1つまたは複数のエッジを走査するステップと
を含む、コンピュータ可読媒体。
【請求項20】
前記デジタルグラフモデルの中の前記最も短い経路を識別するために、前記上位ノードから延びる前記1つまたは複数のエッジを走査するステップは、
前記デジタルグラフモデルの中の前記上位ノードにアクセスするステップと、
前記上位ノードに配置される少なくとも1つの物品と各々が関連付けられる、1つまたは複数の注文の中の注文のサブセットを識別するステップと、
注文の前記サブセットからの物品と関連付けられる、関連付けられるノードのセットを識別するステップと、
前記上位ノードから前記上位ノードの1つまたは複数の関連付けられるノードに延びる各々のエッジを走査するステップと、
前記1つまたは複数の関連付けられるノードにおいて、注文の前記サブセットの中の注文と関連付けられる追加的な物品を識別するステップと、
1つまたは複数の完了された注文を識別することを、前記1つまたは複数の完了された注文が、関連付けられるノードの前記セットの中で完全に対処されるまで、前記上位ノードから前記1つまたは複数の関連付けられるノードの各々に延びる各々のエッジを走査することを継続することにより行うステップと、
前記ピッキングカートの前記デジタルモデルが、完了された注文によって、前記詰め込みしきい値レベルより上に一杯にされると決定されるときに、ピック要求を生成するステップと
を含む、請求項19に記載のコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
[0001]本出願は、DYNAMIC CART OPTIMIZATION SYSTEMと題された、2019年8月2日に出願された米国仮特許出願第62/882,158号、および、DYNAMIC CART OPTIMIZATION SYSTEMと題された、2020年7月29日に出願された米国特許出願第16/942,541号の、利益および優先権を主張するものであり、それらの出願は、それらの全体において参照により本明細書に明示的に組み込まれている。
【背景技術】
【0002】
[0002]電子商取引の最近の、および急激な成長は、運送および梱包材産業に著しい負担をかけてきた。運送される製品の取引量が著しく増大したのみではなく、製品が配送されることを期待される速さが、さらには著しく増大した。以前は、梱包体が、注文を出した後5~6営業日で到着することが容認可能であり得た。しかしながら、現在の市場は、梱包体が、2日以内に、および一部の事例においては、注文が出された同日に到着するという要望を強いる。
【0003】
[0003]これらの急速に高まる要望に応えるために、梱包材および運送産業は、効率および速さを増大するための、新しいシステムおよび機械を、導入および開発することを求められてきた。効率が増大された1つの領域は、広い各種の異なる注文に対して、合うように作製される梱包体を創出することができる、あつらえで作製される梱包材システムの使用を通してのものである。これらのあつらえで作製される梱包体は、運送輸送機関の中の、および、備蓄施設の中のむだな空間を低減し、そのことは、より多くの注文が、同じ輸送機関の中で運送されることを可能とする。
【0004】
[0004]技術的改善の必要性のある梱包材および運送の領域は、ピッキング技術に関係する領域である。「ピッキング」は、運送のために倉庫の中で物品を収集することのプロセスである。典型的には、注文が倉庫において受信され、ピック要求が、注文においての物品を収集しに行くことを、それらの物品が注文の受け取り手に運送され得るように行うために作り出される。注文品を収集することにおいて利用されるプロセスおよび機械は、注文品が運送のために収集および用意される際に伴う、効率、コスト、および速さに著しく影響を与えることがある。
【0005】
[0005]本明細書において主張される本主題は、上記で説明されたものなどの、何らかの不利点を解決する、または、環境においてのみで動作する、実施形態に制限されない。むしろ、本背景は、単に、本明細書において説明される一部の実施形態が実践され得る、1つの例示的な技術領域を例解するために提供されるものである。
【発明の概要】
【発明が解決しようとする課題】
【0006】
本願発明の一実施例は、例えば、動的カート最適化システムに関する。
【課題を解決するための手段】
【0007】
[0006]開示される実施形態は、デジタルグラフモデルの中でノードおよびエッジ選択物を最適化するためのコンピュータシステムを含む。コンピュータシステムは、1つまたは複数のプロセッサと、1つまたは複数のプロセッサにより実行されるときに、コンピュータシステムを、様々な行為を遂行するように構成する、実行可能命令を記憶している、1つまたは複数のコンピュータ可読媒体とを含む。例えば、コンピュータシステムは、物理的倉庫場所のデジタルグラフモデルにアクセスすることができる。デジタルグラフモデルは、物理的倉庫場所内の棚の間でのインベントリの複数個の特定の物品の場所を指示する情報を含む。加えて、デジタルグラフモデルは、複数個のノードと、複数個のエッジとを含み、複数個のノードは、各々、物理的倉庫場所の中の異なる物理的区域を表し、複数個のエッジは、各々、複数個のノードの中の各々のノードと、各々のノードのすぐ隣のネイバーとの間の物理的径路を表す。
【0008】
[0007]コンピュータシステムは、注文要求データベースの中で、注文のセットを識別することであって、注文のセットの中の各々の注文は、1つまたは複数の物品と、注文優先度とを含む、識別することをさらに行うことができる。コンピュータシステムは、次いで、セットまたは注文から選択される各々の注文においての各々の物品を、デジタルグラフモデルの中の複数個のノードにマッピングする。コンピュータシステムは、複数個のノードから上位ノードを識別する。上位ノードは、最も高い数のマッピングされる物品を伴うノードを含む。コンピュータシステムは、次いで、詰め込みしきい値レベルより上に、ピッキングカートのデジタルモデルを一杯にするための、デジタルグラフモデルの中の最も短い経路を識別するために、上位ノードから延びる1つまたは複数のエッジを走査する。
【0009】
[0008]本概要は、詳細な説明において下記でさらに説明される、単純化された形式での概念の選択物を紹介するために提供される。本概要は、主張される本主題の主要な特徴、または、本質的な特徴を識別することを意図されず、本概要は、主張される本主題の範囲を決定することにおいて一助として使用されることを意図されもしない。
【0010】
[0009]追加的な特徴および利点は、後に続く説明において論述されることになり、部分的には、説明から明白であることになり、または、本明細書においての教示の実践により知得され得る。本発明の特徴および利点は、添付される特許請求の範囲において特に指摘される機器の手段および組み合わせにより、現実化および獲得され得る。本発明の特徴は、後に続く説明、および、添付される特許請求の範囲から、より十二分に明らかになることになり、または、本明細書において以降で論述されるような本発明の実践により知得され得る。
【0011】
[0010]上記で詳述された、および他の、利点および特徴が獲得され得る様式を説明するために、上記で簡単に説明された本主題の、より詳しい説明が、添付される図面において例解される具体的な実施形態への言及により与えられることになる。これらの図面は、単に典型的な実施形態を描写し、それゆえに、範囲において制限的であると考えられるべきではないということを理解して、実施形態が、付随する図面の使用を通して、追加的な具体性および詳細とともに、説明および解説されることになる。
【図面の簡単な説明】
【0012】
【
図1】[0011]梱包室の実施形態を例解する図である。
【
図2】[0012]倉庫場所の実施形態の概略図を例解する図である。
【
図3】[0013]概略図上に重ねられたノードおよび注文物品を伴う、
図2の倉庫場所の実施形態の概略図を例解する図である。
【
図4】[0014]
図2において描写された物理的倉庫場所のデジタルグラフモデルを例解する図である。
【
図5】[0015]ピック要求経路を識別し、ピック要求を生成するためのコンピュータシステムの実施形態の概略図を例解する図である。
【
図6】[0016]ピック要求を生成するための方法においてのステップの実施形態のフローチャートを例解する図である。
【
図7】[0017]ピック要求経路を識別するための方法においてのステップの実施形態のフローチャートを例解する図である。
【発明を実施するための形態】
【0013】
[0018]開示される実施形態は、倉庫場所のデジタルグラフモデルの中でノードおよびエッジ選択物を最適化するためのシステムに向けられる。特に、開示される実施形態は、倉庫場所の物理的配置設計を表すノードを含むデジタルグラフモデルを生成する。デジタルグラフモデルは、さらには、ノードのうちの1つまたは複数の間で延びるエッジを含む。少なくとも1つの実施形態において、デジタルグラフモデルは、グラフデータベースを含む。コンピュータシステムは、1つまたは複数の注文の中の物品をデジタルグラフモデル上へとマッピングし、ノードおよびエッジの最適化される選択物を生成するために、モデルの中のエッジを反復的に走査するように構成される。本明細書において使用される際に、「注文品」は、単一の梱包体の中に梱包することに対して意図される物品の群を含む。しかしながら、我々は、一部の実施形態において、複数個の注文品が、単一の梱包体の中に梱包され得るということを理解するであろう。同様に、顧客は、複数個の梱包体の間で分割される、複数個の注文品へと分割され得る、大きい数の物品を注文し得る。
【0014】
[0019]任意選択で、コンピュータシステムは、さらには、コンピュータシステムがエッジおよびノードを走査している間に、キュービング(cubing)プロセッサを利用して、1つまたは複数の注文の中の物品についてキュービングアルゴリズムを処理し得る。キュービングアルゴリズムの出力は、いつ最適なノードおよびエッジ選択物が識別されたかを決定するために、詰め込みしきい値レベルに対して適用され得る。少なくとも1つの実施形態において、詰め込みしきい値レベルは、いつ1つまたは複数の注文の中の選択される物品が、ピッキングカートを十分に一杯にすることになるかを決定するために、ピッキングカートに適用される。
【0015】
[0020]我々は、本明細書において開示される実施形態は、より効率的なピッキングシステムを可能なものにするということを理解するであろう。ピック要求は、倉庫場所の中でのピッキングカートの、最も効率的で、最も良好な使用を確実にするために、最適化される進路の中で動的に生成される。さらに、開示される実施形態は、それらの実施形態が、広い数の異なる場所において、異なるピッキングシステムの中で、および、異なるピッキング技術によって実現され得るように、高度にあつらえ可能である。
【0016】
[0021]今から図に目を向けると、少なくとも1つの実施形態において、
図1において例解されるように、運送業者は、発送のために、利用可能な注文品を梱包し、それらの注文品を用意するための設備を含むことができる、1つまたは複数の梱包室100を有することができる。例えば、梱包室100は、梱包材システム110と、利用可能な注文品移送システム120と、作業区域130と、追跡コードスキャナ132と、処理された注文品移送システム140とを含むことができる。梱包材システム110は、1つまたは複数の梱152からファンフォールド材料150を受け取ることができる転換機械112を含むことができる。梱包材システム110は、ファンフォールド材料150を、注文に対してあつらえで作製される梱包材テンプレート160へと処理することができる。オペレータは、梱包材システム110から梱包材テンプレート160を取り出すことができ、利用可能な注文品180の発送のための箱170を形成することができる。本明細書において使用される際に、用語「利用可能な注文品」は、運送業者により1つのユニットとして処理され得る任意の注文品を(単一物品注文品か多物品注文品かを問わず)指す。
【0017】
[0022]ピッキングカート120は、発送のための梱包および用意のために、様々な利用可能な注文品180を作業区域130に移送することができる。一部の実施形態において、ピッキングカート120は、利用可能な注文品180を作業区域130に移送することができる、コンベヤシステムまたは可動棚積みシステムであり得る。利用可能な注文品180が作業区域130に到着すると、オペレータは、梱包材システム110により用意されるように、梱包材テンプレート160を要求することができる。少なくとも1つの実施形態において、オペレータは、追跡コードスキャナ132によって、各々のそれぞれの利用可能な注文品180と関連付けられるコードをスキャンすることにより、梱包材テンプレート160を要求する。下記でさらに説明されるように、そのような梱包材テンプレート160は、梱包されることになる利用可能な注文品180の個別の寸法に基づいて、あつらえでサイズ設定され得る。
【0018】
[0023]利用可能な注文品180を梱包することに加えて、オペレータは、要されるラベルおよび他の材料を取り付けることにより、発送のために、利用可能な注文品180を用意することができる。利用可能な注文品180が処理される(すなわち、発送のために梱包および/または用意される)と、そのような処理された注文品190は、処理された注文品移送システム140によって、作業区域130から別のところに移送され得る。実例として、処理された注文品移送システム140は、処理された注文品190を運送区域に移送することができる。一部の実現形態において、処理された注文品移送システム140は、作業区域130と処理された注文品190に対する所望される場所とを連結することができるコンベヤベルトであり得る。他の実施形態において、処理された注文品移送システム140は、処理された注文品190を作業区域130から別のところに移送することができる可動棚積みシステムであり得る。
【0019】
[0024]我々は、
図1の梱包室100は、単に例および背景状況のために提供されるということを理解するであろう。様々な実施形態において、梱包材システムの異なる構成およびタイプが利用され得る。例えば、梱包材システムは、標準的な打抜箱、ダンネージシステム、異なる作業流れ、または、多数の他の梱包材システムおよびスタイルを利用し得る。同様に、詰め込み室100は、いくつかの異なるピッキングカート120構成を利用し得る。例えば、ピッキングカート(cat)120は、自動化されたピッキングカート、人間に運転されるピッキングカート、通い箱(tote)ベースのピッキングカート、または、多数の他のピッキングカートを歩み寄らせ得る。別段に具体的に述べられない限り、本明細書において開示される動的カート最適化システムのすべての実施形態は、任意の梱包材構成、ピッキング構成、または倉庫構成の中で使用され得る。しかるがゆえに、梱包材構成、ピッキング構成、または倉庫構成の特定の例が本明細書において使用されるとき、それらの例は、単に例および解説のために提供され、本発明を個別の実施形態に制限しない。
【0020】
[0025]
図2は、倉庫場所200の実施形態の概略図を例解する。本明細書において使用される際に、「倉庫場所」200は、処理および運送のために品物を一時的に収容するために利用される任意の物理的場所を含む。描写される倉庫場所200は、複数個の棚220により分割される、複数個の通路210を含む。我々は、典型的な倉庫場所200内で、複数個の棚220が、発送を待機する物品を入れて置かれているということを理解するであろう。
【0021】
[0026]
図2は、倉庫場所200の全体を通してのピッキング通行の従来の流れを指示する矢印をさらに例解する。指示されるように、従来のピッキングカート120は、倉庫場所200の周囲の共通の経路に沿って押される。関心の物品を収容する通路に達すると、人間オペレータは、通路からピッキングカート120を押し下げ、所望される品物を棚から取り去ることになる。そのようなプロセスは、典型的には、ありとあらゆる人間オペレータおよびピッキングカート120に、生成されるあらゆるピック要求に対して、倉庫場所200全体の、完全な、または、ほぼ完全な、巡回路を進行することを求めることがある。
【0022】
[0027]
図3は、概略図上に重ねられたノードおよび注文物品を伴う、
図2の倉庫場所200の実施形態の概略図を例解する。ノードは、円として描写され、文字A~Rによって標記される。ノードは、倉庫場所200の中の異なる場所を表す。例えば、各々の通路は、通路の長さに基づいて、複数個のノードへと分割される。ノード(A~R)の描写される間隔は、例および解説のために提供される。他の実施形態において、ノード(A~R)は、倉庫場所200の中の所望される分解度に基づいて、より近く、または、より遠く隔たって置かれ得る。
【0023】
[0028]注文物品は、六角形300(a~c)、三角形310(a~c)、正方形320(a~d)、および菱形330(a~d)として描写される。注文物品は、注文に基づいて形状により群に分けられる。しかるがゆえに、個別の注文と関連付けられる各々の物品は、共通の形状によって示される。例えば、物品300(a~c)の各々は、六角形と関連付けられ、単一の注文の中に含まれる。特に、物品300aは、ノードCの付近の棚上に布置され、物品300bは、ノードEの付近の棚上に布置され、物品300cは、ノードGの付近の棚上にある。注文の中の異なる物品300(a~c)は、倉庫場所200の中に収められる任意のタイプまたは組み合わせの品物を含み得る。
【0024】
[0029]
図4は、
図2において描写された物理的倉庫場所200のデジタルグラフモデル400を例解する。デジタルグラフモデル400は、エッジを通して接続される
図3のノードのコンピュータ表現を含み、それらのエッジは、様々なノードを接続する矢印として描写される。エッジは、異なるノードの間の、倉庫場所200の中の物理的径路を表すものである。例えば、ユーザおよびピッキングカート120は、接続するエッジにより指示されるように、ノードAとノードCとの間で直接的に進行することができる。
【0025】
[0030]
図5は、ピック要求経路を識別し、ピック要求を生成するためのノードおよびエッジ最適化コンピュータシステム500の実施形態の概略図を例解する。少なくとも1つの実施形態において、コンピュータシステム500の中の1つまたは複数のプロセッサ510が、ありとあらゆるノードの間の最も短い距離(さらには「ホップ」と呼称される)を、あらかじめ算出し、または、算出する。例えば、コンピュータシステム500は、ノードAとノードBとの間の最も短いホップが1ホップであると決定する。対照的に、コンピュータシステムは、ノードAとノードNとの間の最も短い距離が6ホップであると決定する。このプロセスは、あらゆるノードの間の最も短い距離が識別されるまで継続される。
【0026】
[0031]少なくとも1つの実施形態において、コンピュータシステム500は、注文を受信し、その注文を注文要求データベース540の中に記憶する。注文は、インターネットなどのネットワーク接続570によって、1つまたは複数の顧客580(a~c)から、ネットワークインターフェイス520を通して受信され得る。少なくとも1つの実施形態において、複数人のユーザが、同じ時間においてカートを要求することができる。加えて、少なくとも1つの実施形態において、コンピュータシステム500は、同じ時間においての複数個のビルドカート要求に対処する能力がある。
【0027】
[0032]注文を受信することに応答して、1つまたは複数のプロセッサ510は、物理的倉庫場所200のデジタルグラフモデル400にアクセスする。上記で解説され、
図4において描写されるように、デジタルグラフモデル400は、物理的倉庫場所200内の棚の間でのインベントリの複数個の特定の物品の場所を指示する情報を含む。加えて、デジタルグラフモデル400は、複数個のノード(A~R)と、ノード(A~R)を接続する複数個のエッジとを含む。複数個のノード(A~R)は、各々、物理的倉庫場所200の中の異なる物理的区域を表し、複数個のエッジは、各々、複数個のノードの中の各々のノードと、各々のノードのすぐ隣のネイバーとの間の物理的径路を表す。
【0028】
[0033]コンピュータシステム500は、注文要求データベース540の中で、注文のセットを識別し、それらの注文は、各々、1つまたは複数の物品と、注文優先度とを含む。注文要求データベース540は、ピッキングおよび梱包される準備が整っている注文のキューを含む。一部の実施形態において、1つまたは複数の注文は、注文優先度と関連付けられ得る。注文優先度は、注文がピッキングおよび運送されることを必要とする緊急度を指示する。実例として、倉庫場所200は、一部の注文に対して同日運送を供し得る。そのような注文は、高い優先度レベルと関連付けられることになる。同様に、個別の注文は、特定の時刻において運送のために倉庫場所200に到着する個別の運送業者と関連付けられ得る。そのような事例において、それらの運送業者と関連付けられる注文は、運送業者の到着時間が近付いているならば、高い優先度になり得る。
【0029】
[0034]1つまたは複数のプロセッサ510は、注文のセットから選択される各々の注文においての各々の物品を、デジタルグラフモデル400の中の複数個のノードにマッピングする。1つまたは複数のプロセッサ510は、インベントリマップ560の中に記憶される情報を利用して、物品を適切なノードにマッピングする。例えば、インベントリマップ560は、倉庫場所200の中のあらゆる物品を、その物品と最も近いノード(A~R)と関連付けるデータベースを含み得る。少なくとも1つの実施形態において、インベントリマップ560および注文要求データベース540は、同じデータベースの中に記憶される。よって、コンピュータシステム500は、注文においての各々の物品を探索し、どの物品が倉庫場所200の中のどのノードにマッピングされるかを決定するように構成される。
【0030】
[0035]1つまたは複数のプロセッサ510が、各々の注文においての各々の物品を、デジタルグラフモデル400による複数個のノード(A~R)にマッピングすると、1つまたは複数のプロセッサ510は、注文のセットの中の各々の注文が関連付けられるノードを識別する。実例として、1つまたは複数のプロセッサ510は、注文300(六角形により描写される)がノードC、E、およびGと関連付けられ、注文310(三角形により描写される)がノードC、G、およびDと関連付けられ、注文320(正方形により描写される)がノードB、G、J、およびQと関連付けられ、注文330(菱形により描写される)がノードJ、M、I、およびKと関連付けられるということを識別する。
【0031】
[0036]1つまたは複数のプロセッサ510は、次いで、複数個のノードから上位ノードを識別する。上位ノードは、最も高い数のマッピングされる物品を伴うノードを含む。例えば、
図4において描写されるように、ノードGが上位ノードであり、なぜならば、ノードGは、いかなる他のノードと関連付けられる物品の数よりも高い、3つの異なる物品(300c、310b、および320c)と関連付けられるからである。我々は、ノードのサブセットが、同じく最も高い数の関連付けられる物品を有するときに、多数の方法が、上位ノードを識別するために使用され得るということを理解するであろう。例えば、そのような事例において、上位ノードは、ノードのサブセットからランダムに選択され得る。
【0032】
[0037]上位ノード(例えば、ノードG)が識別されると、1つまたは複数のプロセッサ510は、詰め込みしきい値レベルより上に、カートのデジタルモデルを一杯にするための、デジタルグラフモデルの中の最も短い経路を識別するために、上位ノードから延びる1つまたは複数のエッジを走査する。詰め込みしきい値は、ピッキングカート120上で利用可能な体積に対して、注文される物品のキュービングを行うキュービングアルゴリズムの結果により決定され得る。詰め込みしきい値は、加えて、および/または、代替方法として、ピッキングカート120が、あらかじめ決定された重量を超過しないということを確実にする、重量測定基準を含み得る。
【0033】
[0038]少なくとも1つの実施形態において、デジタルグラフモデル400の中の最も短い経路を識別するために、上位ノードGから延びる1つまたは複数のエッジを走査することは、デジタルグラフモデル400の中の上位ノードにアクセスすることと、次いで、上位ノードGに配置される少なくとも1つの物品と各々が関連付けられる、1つまたは複数の注文の中の注文のサブセットを識別することとを含む。実例として、
図4において描写されるように、注文300(すなわち、物品300a、300b、300c、および300d)は、上位ノードGと関連付けられる物品300cを有する。加えて、注文310(すなわち、物品310a、310b、および310c)は、上位ノードGと関連付けられる物品310bを有する。同様に、注文320(すなわち、物品320a、320b、320c、および320d)は、上位ノードGと関連付けられる物品320cを有する。しかるがゆえに、注文300、310、および320のサブセットは、各々、上位ノードGと関連付けられる物品を有する。
【0034】
[0039]コンピュータシステム500は、次いで、ノードGにおいて物品を有する注文と関連付けられる、関連付けられるノードのセットを識別する。実例として、注文300の物品300cが、ノードGと関連付けられる。注文300と関連付けられる、残っているノードは、ノードCおよびEである。加えて、注文310の物品310bが、ノードGと関連付けられる。注文310と関連付けられる、残っているノードは、ノードCおよびDである。さらに、注文320の物品320cが、ノードGと関連付けられる。注文320と関連付けられる、残っているノードは、ノードB、J、およびQである。よって、
図4により描写される例において、ノードB、C、D、E、G、J、およびQが、すべての考えられる「関連付けられるノード」である。
【0035】
[0040]関連付けられるノードが識別されると、1つまたは複数のプロセッサ510は、上位ノードGから1つまたは複数の関連付けられるノードに延びる各々のエッジを走査する。コンピュータシステム500が、上位ノードGと、各々の関連付けられるノード(B、C、D、E、J、およびQ)との間のエッジに沿って走査する際に、コンピュータシステム500は、注文のサブセットの中の注文と関連付けられる追加的な物品を識別する。例えば、ノードEにおいて、コンピュータシステム500は、注文300と関連付けられる物品300bを識別する。ノードJにおいて、コンピュータシステム500は、注文320と関連付けられる物品320bを識別する。ノードQへと走査する間に、ノードPにおいて、コンピュータシステム500は、注文のサブセットと関連付けられる何らの物品も識別しない。
【0036】
[0041]コンピュータシステム500は、1つまたは複数の完了された注文を識別することを、1つまたは複数の完了された注文が、走査されるノードの中で完全に対処されるまで、上位ノードから1つまたは複数の関連付けられるノードの各々に延びる各々のエッジを走査することを継続することにより行う。本明細書において使用される際に、「完了された注文」は、注文においてのあらゆる物品が、上位ノードから関連付けられるノードへの走査経路に沿って識別された、注文である。
【0037】
[0042]コンピュータシステム500は、次いで、詰め込みしきい値レベルより上に、ピッキングカート120のデジタルモデルを一杯にするための、デジタルグラフモデルの中の最も短い経路に基づいてピック要求を生成する。ピック要求は、最も短い経路に沿って配置される注文のセットから選択される1つまたは複数の注文を含む。最も短い経路は、詰め込みしきい値レベルより上に、カートのデジタルモデルを一杯にするために必要とされる、デジタルグラフモデル400の中のエッジにより表されるような、最も短い物理的進行距離を含む。
【0038】
[0043]少なくとも1つの実施形態において、ピッキングカートのデジタルモデルが、1つまたは複数の完了された注文によって、詰め込みしきい値レベルより上に一杯にされると決定することは、1つまたは複数の完了された注文へのキュービングアルゴリズムの適用を含む。いくつかの従来のキュービングアルゴリズムのうちの任意のものが、1つまたは複数の完了された注文においての識別される物品が、ピッキングカート120の利用可能な棚空間の中にはまる可能性があるかどうかを決定するために利用され得る。加えて、詰め込みしきい値レベルは、体積利用度限度および/または重量限度を含み得る。実例として、ピッキングカート120は、単に、あらかじめ決定された重量の最大量を収容するように構成され得る。さらに、ピッキングカート120の中の個々の棚は、あらかじめ決定された重量の最大量を収容するように構成され得る。同様に、ピッキングカート120の中の各々の棚は、個別の体積と関連付けられ得る。この情報を使用して、キュービングアルゴリズムは、重量および/または体積利用度を基礎として、個別の完了された注文の中の物品が、ピッキングカート120上にはまる可能性があるかどうかを決定することができる。加えて、キュービングアルゴリズムは、ピッキングカート120が、十分に利用されておらず、所望される詰め込みレベルしきい値より下に一杯にされているのみであるかどうかを決定することができる。例えば、ピッキングカート120は、そのカートがそのカートの利用可能な体積の半分を利用するように一杯にされるのみであり得る。対照的に、詰め込みレベルしきい値は、ピッキングカートが、それらのカートの体積の少なくとも80パーセントを利用するように一杯にされるべきであるということを指示し得る。よって、少なくとも1つの実施形態において、詰め込みレベルしきい値は、下限および上限の両方を含み得る。
【0039】
[0044]コンピュータシステム500が、キュービングアルゴリズムによって各々の完了された注文を処理する際に、ピッキングカート120上にはまらない物品を含む注文は、注文のサブセットから取り去られ、後刻のピック要求により集配されるように適所に残される。しかるがゆえに、コンピュータシステム500が、倉庫場所200のデジタルグラフモデル400の中でエッジを走査する際に、キュービングアルゴリズムおよび詰め込みしきい値が、所与のピック要求に適さない注文をフィルタリング除去するために使用される。少なくとも1つの実施形態において、注文のサブセットの外であるが、デジタルグラフモデル400を通る走査経路に基づいて偶然にも完了可能である注文が、注文のサブセットに追加され得る。
【0040】
[0045]少なくとも1つの実施形態において、コンピュータシステム500は、さらには、注文優先度に動的に適合する能力がある。上記で述べられたように、注文優先度は、注文要求データベース540の中で、1つまたは複数の物品と関連付けられ得る。少なくとも1つの実施形態において、注文が、十分に高い優先度のものであるならば、コンピュータシステム500は、ピック要求の中に、優先度しきい値を超過する個別の注文優先度と関連付けられる個別の注文を含める。例えば、個別の倉庫場所200は、同日配送が、ピック要求の中で、可能な限りすみやかにと位置付けられるように、優先度しきい値をセットし得る。そのような倉庫場所200において、コンピュータシステム500は、同日優先度を伴う注文を識別し得る。注文優先度が優先度しきい値を超過するということを識別することに応答して、個別の注文が、最も短い経路に沿った様態にならないとしても、注文は、ピック要求に追加され得る。
【0041】
[0046]少なくとも1つの実施形態において、ピック要求が生成されると、コンピュータシステム500は、ユーザインターフェイス上で、ピック要求を完了するために、ユーザが物理的倉庫場所200の中で進行するために、1つまたは複数の視覚的道順を表示する。例えば、ユーザにより保持されるモバイルコンピューティングデバイスが、ピック要求を完了するために、倉庫場所200の中で進行するために、指図を伴う地図を描写し得る。同様に、指図が、ユーザに、ピッキングカート120へと統合される、倉庫場所200の中の棚へと統合されるデバイス上で表示され、または、他の手立てで表示され得る。さらに、少なくとも1つの実施形態において、コンピュータシステム500は、自動化されたピッキングデバイスへの通信のために、1つまたは複数のコンピュータ命令を生成することであって、1つまたは複数のコンピュータ命令は、自動化されたピッキングデバイスに、最も短い経路に沿って進行させる、生成することを行うように構成され得る。
【0042】
[0047]後に続く論考が、今から、遂行され得るいくつかの方法および方法行為に言及する。方法行為は、所定の順序で論考され、または、個別の順序で生起するようにフローチャートにおいて例解され得るが、具体的に説述されない限り、または、行為が、その行為が遂行されるより前に別の行為が完了されることに依存的であることを理由に要されるのではない限り、個別の順序付けは、要されるものではない。
【0043】
[0048]
図6は、ピック要求を生成するための方法600においてのステップの実施形態のフローチャートを例解する。方法600は、注文のサブセットを選択するステップ610を含む。少なくとも1つの実施形態において、このサブセットは、何の注文がよりすみやかに送り出されることを必要とするか、および、どれだけ多くのピックをそれらの注文が有するかに基づいて選択される。
【0044】
[0049]方法600は、さらには、注文をバックフィルする(backfill)ステップ620を含む。上記で説明されたように、少なくとも1つの実施形態において、コンピュータシステム500は、探求経路上ではあるが、最も至急扱いのピック区域上ではない注文を、注文のサブセットに追加することにより、注文をバックフィルすることができる。そのようなシステムは、ピッキングカート120がより十二分に積載されることを、および、他の区域がより迅速に収集されることを可能とする。
【0045】
[0050]加えて、方法600は、初期ピック区域をセットするステップ630を含む。少なくとも1つの実施形態において、コンピュータシステム500は、開始する起点のためのノードの最も小さいセットを選び取ることになる。実例として、少なくとも1つの実施形態において、コンピュータシステム500は、上位ノードと関連付けられる大きい数の注文を識別し得る。そのような事例において、コンピュータシステム500は、大きい数の注文から個別の数の注文をランダムに選択することにより、探求される注文の数を動的に制限し得る。加えて、または、代替方法として、コンピュータシステム500は、最も高い注文優先度を伴う注文のみを選択し得る。
【0046】
[0051]方法600は、次いで、ピッキングカート120を一杯にするステップ640を含む。ステップ640は、体積利用度および/または重量により、ピッキングカート120が一杯であると決定するための、キュービングアルゴリズムの利用を含む。ステップ650により指示されるように、ピッキングカート120が、選択されるノード上で一杯にされないならば、コンピュータシステム500は、ステップ660を遂行し、関連付けられるノードの選択物に新しいノードを追加することによりピック区域を拡大し、再びピッキングカート120を一杯にすることを試みる。コンピュータシステム500は、ピッキングカート120が一杯になるまで、このプロセスを繰り返すことになる。ピッキングカート120が一杯であると、ステップ670が、セットアップ統計情報を提供し、第1のステップ610に戻る。提供される統計情報は、単位あたりのフィート(30.48cm)、利用度、および、さらに多くのものなどの、創出されたピッキングカート120に関する洞察をもたらし得る。
【0047】
[0052]今から
図7に目を向けると、
図7は、ピック要求経路を識別するための方法700においてのステップの実施形態のフローチャートを例解する。方法700は、物理的倉庫場所200のデジタルグラフモデル400にアクセスするステップ710を含む。行為710は、物理的倉庫場所のデジタルグラフモデルへのアクセスを含む。デジタルグラフモデルは、物理的倉庫場所内の棚の間でのインベントリの複数個の特定の物品の場所を指示する情報を含む。加えて、デジタルグラフモデルは、複数個のノードと、複数個のエッジとを含み、複数個のノードは、各々、物理的倉庫場所の中の異なる物理的区域を表し、複数個のエッジは、各々、複数個のノードの中の各々のノードと、各々のノードのすぐ隣のネイバーとの間の物理的径路を表す。例えば、
図2~
図4、および、付随する説明に関して、描写および説明されるように、物理的倉庫場所200は、倉庫場所200の中のピッキング区域を表すノード、および、ノードどうしの間の経路を表すエッジを描写する、デジタルグラフモデル400へと変えられ得る。
【0048】
[0053]方法700は、さらには、注文のセットを識別するステップ720を含む。ステップ720は、注文要求データベース540の中で、注文のセットを識別するステップであって、注文のセットの中の各々の注文は、1つまたは複数の物品と、注文優先度とを含む、識別するステップを含む。
図3~
図5、および、付随する説明に関して、描写および説明されるように、コンピュータシステム500は、注文要求データベース540の中から、顧客コンピュータ580(a~c)から受信された注文にアクセスすることができる。
【0049】
[0054]加えて、方法700は、注文においての物品を、デジタルグラフモデルの中のノードにマッピングするステップ730を含む。ステップ730は、セットまたは注文から選択される各々の注文においての各々の物品を、デジタルグラフモデルの中の複数個のノードにマッピングするステップを含む。例えば、
図3~
図5に関して描写および説明されるように、コンピュータシステム500は、インベントリマップ560を利用して、注文の中の物品を、倉庫場所200の中のノードにマッピングする。
【0050】
[0055]さらに、方法700は、上位ノードを識別するステップ740を含む。ステップ740は、複数個のノードから上位ノードを識別するステップであって、上位ノードは、最も高い数のマッピングされる物品を伴うノードを含む、識別するステップを含む。例えば、
図4および5において描写されるように、コンピュータシステム500は、ノードGを上位ノードとして識別し、なぜならば、ノードGは、注文からの、最大である数の物品と関連付けられるからである。
【0051】
[0056]さらにその上、方法700は、最も短い経路を識別するために、1つまたは複数のエッジを走査するステップ750を含む。ステップ750は、詰め込みしきい値レベルより上に、ピッキングカートのデジタルモデルを一杯にするための、デジタルグラフモデルの中の最も短い経路を識別するために、上位ノードから延びる1つまたは複数のエッジを走査するステップを含む。例えば、
図4および
図5に関して、描写および説明されるように、コンピュータシステム500は、ピッキングカート120がしきい値まで一杯にされることに基づいて、ピック要求が生成されるまで、上位ノードから別のところに延びるエッジを反復的に走査する。
【0052】
[0057]さらに、方法は、1つまたは複数のプロセッサと、コンピュータメモリなどのコンピュータ可読媒体とを含むコンピュータシステムにより実践され得る。特に、コンピュータメモリは、1つまたは複数のプロセッサにより実行されるときに、実施形態において詳述される行為などの様々な機能が遂行されることを生じさせる、コンピュータ実行可能命令を記憶し得る。
【0053】
[0058]コンピューティングシステム機能性は、ネットワーク接続を介して他のコンピューティングシステムに相互接続される、コンピューティングシステムの能力により増強され得る。ネットワーク接続は、配線もしくはワイヤレスEthernetを介した接続、セルラー接続、またはさらに、シリアル、パラレル、USB、もしくは他の接続を通してのコンピュータ間接続を含み得るが、それらに制限されない。接続は、コンピューティングシステムが、他のコンピューティングシステムにおいてのサービスにアクセスすることを、ならびに、他のコンピューティングシステムからアプリケーションデータを迅速および効率的に受信することを可能とする。
【0054】
[0059]コンピューティングシステムの相互接続は、いわゆる「クラウド」コンピューティングシステムなどの分散型コンピューティングシステムを助長した。本説明において「クラウドコンピューティング」は、低減される管理労力またはサービスプロバイダ相互作用を伴ってプロビジョニングおよび解放され得る、構成可能コンピューティングリソース(例えば、ネットワーク、サーバ、ストレージ、アプリケーション、サービス、その他)の共有プールへの、ユビキタスな、好都合な、オンデマンドネットワークアクセスを可能にするためのシステムまたはリソースであり得る。クラウドモデルは、様々な特性(例えば、オンデマンドセルフサービス、幅広いネットワークアクセス、リソースの共用(resource pooling)、スピーディな拡張性(rapid elasticity)、サービスが計測可能であること(measured service)、その他)、サービスモデル(例えば、サービスとしてのソフトウェア(「SaaS」)、サービスとしてのプラットフォーム(「PaaS」)、サービスとしてのインフラストラクチャ(「IaaS」)、および、デプロイメントモデル(例えば、プライベートクラウド、コミュニティクラウド、パブリッククラウド、ハイブリッドクラウド、その他)から組成され得る。
【0055】
[0060]クラウドおよびリモートベースのサービスアプリケーションが普及している。そのようなアプリケーションは、クラウドなどのパブリックおよびプライベートリモートシステム上でホスティングされ、普通は、クライアントと往復して通信するためのウェブベースのサービスのセットを供する。
【0056】
[0061]多くのコンピュータが、コンピュータとの直接的なユーザ相互作用により使用されることを意図される。しかるがゆえに、コンピュータは、ユーザ相互作用を手助けするための入力ハードウェアおよびソフトウェアユーザインターフェイスを有する。例えば、現代の汎用コンピュータは、ユーザがデータをコンピュータ内へと入力することを可能とするための、キーボード、マウス、タッチパッド、カメラ、その他を含み得る。加えて、様々なソフトウェアユーザインターフェイスが利用可能であり得る。
【0057】
[0062]ソフトウェアユーザインターフェイスの例は、グラフィカルユーザインターフェイス、テキストコマンドラインベースのユーザインターフェイス、ファンクションキーまたはホットキーユーザインターフェイス、および類するものを含む。
【0058】
[0063]開示される実施形態は、下記でより詳細に論考されるように、コンピュータハードウェアを含む、専用または汎用コンピュータを、含み、または利用し得る。開示される実施形態は、さらには、コンピュータ実行可能命令および/またはデータ構造を、搬送または記憶するための、物理的な、および他のコンピュータ可読媒体を含む。そのようなコンピュータ可読媒体は、汎用または専用コンピュータシステムによりアクセスされ得る任意の利用可能な媒体であり得る。コンピュータ実行可能命令を記憶するコンピュータ可読媒体は、物理的記憶媒体である。コンピュータ実行可能命令を搬送するコンピュータ可読媒体は、伝送媒体である。かくして、制限ではなく例として、本発明の実施形態は、少なくとも2つの明確に異なる種類のコンピュータ可読媒体:物理的コンピュータ可読記憶媒体および伝送コンピュータ可読媒体を含むことができる。
【0059】
[0064]物理的コンピュータ可読記憶媒体は、コンピュータ実行可能命令またはデータ構造の形式で、所望されるプログラムコード手段を記憶するために使用され得る、および、汎用または専用コンピュータによりアクセスされ得る、RAM、ROM、EEPROM、CD-ROMもしくは他の光学ディスク記憶装置(CD、DVD、その他など)、磁気ディスク記憶装置もしくは他の磁気記憶デバイス、または、任意の他の媒体を含む。
【0060】
[0065]「ネットワーク」は、コンピュータシステム、および/またはモジュール、および/または他の電子デバイスの間での電子データの移送を可能にする、1つまたは複数のデータリンクと定義される。情報が、ネットワークまたは別の通信接続(実配線、ワイヤレス、または、実配線もしくはワイヤレスの組み合わせのいずれか)によって、コンピュータに転送または提供されるとき、コンピュータは、当然のことながら、接続を伝送媒体とみなす。伝送媒体は、コンピュータ実行可能命令またはデータ構造の形式で、プログラムコードを搬送するために使用され得る、および、汎用または専用コンピュータによりアクセスされ得る、ネットワークおよび/またはデータリンクを含むことができる。上記の組み合わせが、さらには、コンピュータ可読媒体の範囲の中に含まれる。
【0061】
[0066]さらに、様々なコンピュータシステム構成要素に達することを基に、コンピュータ実行可能命令またはデータ構造の形式でのプログラムコード手段は、自動的に、伝送コンピュータ可読媒体から物理的コンピュータ可読記憶媒体に(または、逆もしかりである)転送され得る。例えば、ネットワークまたはデータリンクによって受信される、コンピュータ実行可能命令またはデータ構造は、ネットワークインターフェイスモジュール(例えば、「NIC」)の中のRAM内でバッファリングされ、次いで、最終的には、コンピュータシステムRAMに、および/または、コンピュータシステムにおいての、より揮発性でないコンピュータ可読物理的記憶媒体に転送され得る。かくして、コンピュータ可読物理的記憶媒体は、伝送媒体もまた(またはさらに、主として)利用するコンピュータシステム構成要素内に含まれ得る。
【0062】
[0067]コンピュータ実行可能命令は、例えば、汎用コンピュータ、専用コンピュータ、または専用処理デバイスに、所定の機能、または、機能の群を遂行させる、命令およびデータを含む。コンピュータ実行可能命令は、例えば、バイナリ、アセンブリ言語などの中間フォーマット命令、またはさらに、ソースコードであり得る。本主題は、構造的特徴および/または方法論的行為に固有の文言で説明されたが、添付される特許請求の範囲において定義される本主題は、必ずしも、上記で説明された、説明された特徴または行為に制限されないということが理解されるべきである。むしろ、説明された特徴および行為は、請求項を実現することの例形式として開示されるものである。
【0063】
[0068]当業者は、本発明が、パーソナルコンピュータ、デスクトップコンピュータ、ラップトップコンピュータ、メッセージプロセッサ、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベースの、またはプログラマブルなコンシューマ電子機器、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、移動電話、PDA、ページャ、ルータ、スイッチ、および類するものを含む、多くのタイプのコンピュータシステム構成を伴うネットワークコンピューティング環境において実践され得るということを理解するであろう。本発明は、さらには、ネットワークを通して(実配線データリンク、ワイヤレスデータリンクによって、または、実配線データリンクおよびワイヤレスデータリンクの組み合わせによってのいずれかで)リンクされる、ローカルコンピュータシステムおよびリモートコンピュータシステムが、両方がタスクを遂行する、分散型システム環境において実践され得る。分散型システム環境において、プログラムモジュールは、ローカルおよびリモートの両方のメモリ記憶デバイス内に配置され得る。
【0064】
[0069]代替方法として、または、加えて、本明細書において説明される機能性は、少なくとも部分的に、1つまたは複数のハードウェア論理構成要素により遂行され得る。例えば、および、制限なしに、使用され得る例解的なタイプのハードウェア論理構成要素は、フィールドプログラマブルゲートアレイ(FPGA)、特定プログラム向け集積回路(ASIC)、特定プログラム向け標準製品(ASSP)、システムオンチップシステム(SOC)、複合プログラマブル論理デバイス(CPLD)、その他を含む。
【0065】
[0070]本発明は、本発明の趣旨または特性から逸脱することなく、他の特定の形式で実施され得る。説明された実施形態は、すべての点において、単に、限定的ではなく例解的と考えられるべきものである。本発明の範囲は、それゆえに、上述の説明によってよりむしろ、添付される特許請求の範囲によって指示される。請求項の均等性の趣意および範囲の中にあるすべての変更は、それらの請求項の範囲の中に包含されるべきものである。