(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-11-08
(45)【発行日】2022-11-17
(54)【発明の名称】注文されたアイテムのコンピュータによって決定される効率的な袋詰めのためのシステムおよび方法
(51)【国際特許分類】
G06Q 10/08 20120101AFI20221109BHJP
G06Q 10/04 20120101ALI20221109BHJP
【FI】
G06Q10/08
G06Q10/04
(21)【出願番号】P 2020570833
(86)(22)【出願日】2020-08-12
(86)【国際出願番号】 IB2020057584
(87)【国際公開番号】W WO2021053418
(87)【国際公開日】2021-03-25
【審査請求日】2021-03-26
(32)【優先日】2019-09-19
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】520244544
【氏名又は名称】クーパン コーポレイション
(74)【代理人】
【識別番号】230104019
【氏名又は名称】大野 聖二
(74)【代理人】
【識別番号】100131451
【氏名又は名称】津田 理
(74)【代理人】
【識別番号】100167933
【氏名又は名称】松野 知紘
(74)【代理人】
【識別番号】100174137
【氏名又は名称】酒谷 誠一
(74)【代理人】
【識別番号】100184181
【氏名又は名称】野本 裕史
(72)【発明者】
【氏名】クイ,シャオホア
(72)【発明者】
【氏名】シィ,ヂジュン
(72)【発明者】
【氏名】ヂャオ,ルビン
【審査官】宮地 匡人
(56)【参考文献】
【文献】韓国公開特許第10-2015-0098059(KR,A)
【文献】特開2003-175918(JP,A)
【文献】特開2004-030606(JP,A)
【文献】米国特許出願公開第2014/0172736(US,A1)
【文献】米国特許第08340812(US,B1)
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00-99/00
(57)【特許請求の範囲】
【請求項1】
自動袋パッケージングのためのコンピュータ化されたシステムであって、
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサによって実行されると、前記少なくとも1つのプロセ
ッサにステップを実施させる命令を備える少なくとも1つの非一時的記憶媒体とを備え、
前記ステップは、
リモートシステムから、少なくとも1つのアイテムを含む注文を受信することと、
前記少なくとも1つのプロセッサによって、各アイテムに関連付けられる1つまたは複数の特性を決定するために少なくとも1つのデータストアを検索することと、
前記少なくとも1つのプロセッサによって、前記少なくとも1つのアイテムを1つまたは複数の袋にパッケージングするための最適化工程を実施することであって、
第1の袋を表すデータ構造を選択することであり、前記データ構造は、前記第1の袋のサイズを含む、選択することと、
すべてのアイテムが選択されている袋にパッケージングされるまで
、最大のアイテムの前記第1の袋へのパッケージングを反復的にシミュレートすること
であって、
各アイテムの寸法を決定することと、
最も長い寸法を有するアイテムを決定することによって前記最大のアイテムを決定することと、
前記最大のアイテムの前記第1の袋へのパッキングをシミュレートすることと、
前記第1の袋の寸法から前記最大のアイテムの寸法を減算することによって前記第1の袋の残りのスペースを計算することと、
少なくとも1つの残りのアイテムを前記計算された残りのスペースへのパッキングを反復的にシミュレートすること、
によってシミュレートすることと、
前記選択されている袋に前記アイテムをパッケージングするための少なくとも1つの命令セットを生成すること、
によっ
て、最適化工程を実施することと、
前記少なくとも1つのプロセッサによって、前記生成されている命令を表示のためにコンピュータシステムに送信することであって、前記命令は、少なくとも1つのアイテム識別子および1つの袋識別子を含むことと
を含む、コンピュータ化されたシステム。
【請求項2】
前記第1の袋のサイズは、前記第1の袋の幅(bWidth)および前記第1の袋の長
さ(bLength)を含む、請求項1に記載のシステム。
【請求項3】
前記第1の袋の最大仮想高さ(vHeight)は、前記第1の袋の前記幅(bWid
th)および前記第1の袋の前記長さ(bLength)に基づく、請求項2に記載のシ
ステム。
【請求項4】
前記第1の袋の最大仮想高さ(vHeight)が、
vHeight=9+(-2*(bLength+bWidth))+(bLengt
h*bWidth)
として計算される、請求項3に記載のシステム。
【請求項5】
パッケージングを反復的にシミュレートすることは、前記少なくとも1つのアイテムの
前記第1の袋に関連付けられる仮想箱へのパッケージングを反復的にシミュレートするこ
とを含み、
前記仮想箱の寸法は、前記第1の袋の前記仮想高さ、前記第1の袋の前記幅、および前
記第1の袋の前記長さに基づいて計算される、
請求項4に記載のシステム。
【請求項6】
前記仮想箱の寸法が、高さ、幅、および長さを含み、
前記仮想箱の前記高さは、前記第1の袋の前記仮想高さに等しく、
前記仮想箱の前記幅は、前記第1の袋の前記幅から前記仮想高さを引いた値に等しく、
前記仮想箱の前記長さは、前記第1の袋の前記長さから前記仮想高さを引いた値に等し
い、
請求項5に記載のシステム。
【請求項7】
前記最適化工程を実施することは、前記仮想箱を複数の等量サブボックスに分割することをさらに含み、
アイテムの前記1つまたは複数の袋へのパッケージングを反復的にシミュレートするこ
とは、アイテムの前記サブボックスへのパッケージングを反復的にシミュレートすること
を含む、
請求項5に記載のシステム。
【請求項8】
前記複数の等量サブボックスが8つのサブボックスを含む、請求項7に記載のシステム
。
【請求項9】
最大のアイテムのパッケージングを前記
反復的にシミュレーション
することによって、前記少なくとも1つのアイテムが前記選択されている袋に適合しないと決定
される場合、
より大きい袋が選択され、
すべてのアイテムが前記より大きい袋にパックされるまで、前記最大のアイテムが反復
的に計算によってパッケージングされる、
請求項1に記載のシステム。
【請求項10】
自動袋パッケージングのためのコンピュータ実施方法であって、
リモートシステムから、少なくとも1つのアイテムを含む注文を受信することと、
各アイテムに関連付けられる1つまたは複数の特性を決定するために少なくとも1つの
データストアを検索することと
、
前記少なくとも1つのアイテムを1つまたは複数の袋にパッケージングするための最適化工程を実施することであって、
第1の袋を表すデータ構造を選択することであり、前記データ構造は、前記第1の袋の
寸法を含む、選択することと、
すべてのアイテムが選択されている袋にパッケージングされるまで
、最大のアイテムの前記第1の袋へのパッケージングを反復的にシミュレートすることと、
前記少なくとも1つのアイテムが前記第1の袋に適合しないと決定し、より大きい袋を選択し、すべてのアイテムが前記より大きい袋にパックされるまで、前記最大のアイテムを繰り返し計算でパッケージ化することと、
前記
より大きい袋に前記アイテムをパッケージングするための少なくとも1つの命令セットを生成することによって
、最適化工程を実施することと、
前記生成されている命令を表示のためにコンピュータシステムに送信することであって
、前記命令は、少なくとも1つのアイテム識別子および1つの袋識別子を含
むことと
を含む、コンピュータ実施方法。
【請求項11】
前記第1の袋のサイズは、前記第1の袋の幅(bWidth)および前記第1の袋の長
さ(bLength)を含む、請求項1
0に記載のコンピュータ実施方法。
【請求項12】
前記第1の袋の最大仮想高さ(vHeight)は、前記第1の袋の前記幅(bWid
th)および前記第1の袋の前記長さ(bLength)に基づく、請求項1
1に記載の
コンピュータ実施方法。
【請求項13】
前記第1の袋の最大仮想高さ(vHeight)が、
vHeight=9+(-2*(bLength+bWidth))+(bLengt
h*bWidth)
として計算される、請求項1
2に記載のコンピュータ実施方法。
【請求項14】
パッケージングを反復的にシミュレートすることは、前記少なくとも1つのアイテムの
前記第1の袋に関連付けられる仮想箱へのパッケージングを反復的にシミュレートするこ
とを含み、
前記仮想箱の寸法は、前記第1の袋の前記仮想高さ、前記第1の袋の前記幅、および前
記第1の袋の前記長さに基づいて計算される、請求項1
3に記載のコンピュータ実施方法
。
【請求項15】
前記仮想箱の寸法が、高さ、幅、および長さを含み、
前記仮想箱の前記高さは、前記第1の袋の前記仮想高さに等しく、
前記仮想箱の前記幅は、前記第1の袋の前記幅から前記仮想高さを引いた値に等しく、
前記仮想箱の前記長さは、前記第1の袋の前記長さから前記仮想高さを引いた値に等し
い、
請求項1
4に記載のコンピュータ実施方法。
【請求項16】
前記最適化工程を実施することは、前記仮想箱を複数の等量サブボックスに分割するこ
とをさらに含み、
アイテムの前記1つまたは複数の袋へのパッケージングを反復的にシミュレートするこ
とは、アイテムの前記サブボックスへのパッケージングを反復的にシミュレートすること
を含む、
請求項1
4に記載のコンピュータ実施方法。
【請求項17】
各アイテムの寸法を決定することと、
最も長い寸法を有するアイテムを決定することによっ
て前記最大のアイテムを決定することと、
前記最大のアイテムの前記第1の袋へのパッキングをシミュレートすることと、
前記第1の
袋の寸法から前記最大のアイテム
の寸法を減算することによって前記第1の袋の残りのスペースを計算することと、
少なくとも1つの残りのアイテムの前記計算された残りのスペースへのパッキングを反復的にシミュレートすることと
をさらに含む、請求項1
0に記載のコンピュータ実施方法。
【請求項18】
自動袋パッケージングのためのコンピュータ実装システムであって、前記自動袋パッケージングが、
リモートシステムから、少なくとも1つのアイテムを含む注文を受信することと、
各アイテムに関連付けられる1つまたは複数の特性を決定するために少なくとも1つの
データストアを検索することと、
前記少なくとも1つのアイテムを1つまたは複数の袋にパッケージングするための最適化工程を実施することであって、
第1の袋を表すデータ構造を選択することであって、前記データ構造は、前記第1の袋の寸法を含み、
前記第1の袋
のサイズは、前記第1の袋の幅(bWidth)および前記第1の袋の長さ(bLength)を含み、
前記第1の袋の最大仮想高さ(vHeight)が
vHeight=9+(-2*(bLength+bWidth))+(bLength*bWidth)
として計算されることと、
すべてのアイテムが選択されている袋にパッケージングされるまで、最大のアイテムの前記第1の袋へのパッケージングを反復的にシミュレートすることと、
前記選択されている袋に前記アイテムをパッケージングするための少なくとも1つの命令セットを生成すること
によって、最適化工程を実施することと、
前記生成されている命令を表示のためにコンピュータシステムに送信することであって、前記命令は、少なくとも1つのアイテム識別子および1つの袋識別子を含むことと
を含む、コンピュータ実装システム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、一般に、注文されたアイテムを効率的に袋詰めする(例えば、アイテムをプラスチック袋にパッケージングする)ためのコンピュータ化されたシステムおよび方法に関する。特に、本開示の実施形態は、入来する注文を処理し、さらなる処理および出荷のために上記注文を準備するために利用される発明的で非従来型のシステムおよび方法に関し、自動パッケージング決定が、箱、プラスチック袋、それらの組み合わせまたは代替的なパッケージング材料を利用する。
【背景技術】
【0002】
効率的なパッケージング作業は、消費者への製品の出荷に依拠するあらゆる事業の基礎である。パッケージング作業工程が非効率的で相当の時間がかかる場合、顧客への製品の配送は最終的にさらに遅れる可能性があり、事業体は追加の出荷費用を被って競争力を維持できなくなる。商品の遅延および/または不適切なパッケージングは、顧客満足度の低下につながる可能性があり、不満のある顧客からのレビューは、他の顧客からの潜在的な購入を思いとどまらせる可能性がある。パッケージング工程は、さまざまな点で事業体にとってコストがかかる可能性がある。例えば、事業は、パッケージング材料の使いすぎにより、追加の出荷コストを発生させる場合がある。さらに、不適切なパッケージングにより1つまたは複数の製品が損傷する可能性があり、返金が必要になる。そのため、工程の効率が低いほど、事業体の損失は大きくなる。
【0003】
パッケージング作業中に発生する可能性のあるこのような問題を軽減するために、従来のシステムは、利用可能な箱を容積でソートし、商品の寸法に基づいて商品を充填することができる。ただし、容積を考慮に入れるだけでは不十分であり、損傷した商品および/または不適切にパッケージングされた商品は、顧客満足度の低下につながる可能性がある。さらに従来のシステムは、箱およびパッケージング材料の使いすぎを被り、コストが増加する。代替的に、この工程は肉体労働を使用して実施することもできる。ただし、製品の各箱を手動でパッケージングするには時間がかかる場合がある。このように、パッケージングを完了するのにかかる時間が増大し、それによって利益が減り、顧客への製品の出荷および配送時間が増大する場合がある。
【0004】
注文されたアイテムを効率的にパッケージングするための以前のコンピュータ化された方法は非効率的であり、箱およびパッケージング材料の使いすぎ(コストが増加する)、アイテムの破損および汚れ(例えば、壊れ物アイテムが重いアイテムとともに保管されている場合は破損する場合がある)、および追加の出荷費用をもたらしていた。最良の袋を効率的に選択する際の追加の課題は、袋は、箱とは異なり、アイテムを入れると1次元または2次元において変形することである。
【発明の概要】
【0005】
したがって、注文されたアイテムを効率的にパッケージングするための改善された方法およびシステムが必要である。特に、アイテムがパックされるときの一次元または二次元の変形に対して最適化するように、注文されたアイテムを袋に効率的にパッケージングするための改善されたシステムおよび方法が必要である。パッケージング工程の反復シミュレーションに基づいて、商品の任意の組み合わせに最適なパッケージングを決定する。そのため、パッケージング作業の効率が向上し、それによって全体的な事業コストを削減し、顧客満足度を向上させることができる。
【0006】
本開示の一態様は、自動袋パッケージングのためのシステムであって、少なくとも1つのプロセッサと、少なくとも1つのプロセッサによって実行されると、少なくとも1つのプロセッサにステップを実施させる命令を備える少なくとも1つの非一時的記憶媒体とを備え、ステップは、リモートシステムから、少なくとも1つのアイテムを含む注文を受信することと、各アイテムに関連付けられる1つまたは複数の特性を決定するために少なくとも1つのデータストアを検索することと、各グループについて、第1の袋を表すデータ構造を選択することであり、データ構造は、第1の袋のサイズを含む、選択することと、すべてのアイテムが選択されている袋にパッケージングされるまで、グループの最大のアイテムの第1の袋へのパッケージングを反復的にシミュレートすることと、選択されている袋にアイテムをパッケージングするための少なくとも1つの命令セットを生成することによって、少なくとも1つのアイテムを1つまたは複数の袋にパッケージングするための最適化工程を実施することと、生成されている命令を表示のためにコンピュータシステムに送信することであって、命令は、少なくとも1つのアイテム識別子および1つの袋識別子を含む、送信することとを含む、システムに関する。
【0007】
本開示の別の態様は、自動袋パッケージングのための方法であって、リモートシステムから、少なくとも1つのアイテムを含む注文を受信することと、各アイテムに関連付けられる1つまたは複数の特性を決定するために少なくとも1つのデータストアを検索することと、各グループについて、第1の袋を表すデータ構造を選択することであり、データ構造は、第1の袋のサイズを含む、選択することと、すべてのアイテムが選択されている袋にパッケージングされるまで、グループの最大のアイテムの第1の袋へのパッケージングを反復的にシミュレートすることと、選択されている袋にアイテムをパッケージングするための少なくとも1つの命令セットを生成することによって、少なくとも1つのアイテムを1つまたは複数の袋にパッケージングするための最適化工程を実施することと、生成されている命令を表示のためにコンピュータシステムに送信することであって、命令は、少なくとも1つのアイテム識別子および1つの袋識別子を含む、送信することとを含む、方法に関する。
【0008】
本開示のさらに別の態様は、パッケージングを反復的にシミュレートすることが、各アイテムの寸法を決定することと、最も長い寸法を有するアイテムを決定することによってグループの最大のアイテムを決定することと、最大のアイテムの第1の袋へのパッキングをシミュレートすることと、第1のパッケージの寸法から最大のアイテムの寸法を減算することによって第1の袋の残りのスペースを計算することと、グループ内の少なくとも1つの残りのアイテムの計算された残りのスペースへのパッキングを反復的にシミュレートすることとをさらに含む、自動袋パッケージングのための方法に関する。
【0009】
本開示のさらに別の態様は、自動袋パッケージングのためのシステムであって、自動袋パッケージングが、リモートシステムから、少なくとも1つのアイテムを含む注文を受信することと、各アイテムに関連付けられる1つまたは複数の特性を決定するために少なくとも1つのデータストアを検索することと、各グループについて、第1の袋を表すデータ構造を選択することであり、データ構造は、第1の袋のサイズを含み、第1の袋のサイズは、第1の袋の幅(bWidth)および第1の袋の長さ(bLength)を含み、第1の袋の最大仮想高さ(vHeight)がvHeight=9+(-2*(bLength+bWidth))+(bLength*bWidth)として計算される、選択することと、すべてのアイテムが選択されている袋にパッケージングされるまで、グループの最大のアイテムの第1の袋へのパッケージングを反復的にシミュレートすることと、選択されている袋にアイテムをパッケージングするための少なくとも1つの命令セットを生成することによって、少なくとも1つのアイテムを1つまたは複数の袋にパッケージングするための最適化工程を実施することと、生成されている命令を表示のためにコンピュータシステムに送信することであって、命令は、少なくとも1つのアイテム識別子および1つの袋識別子を含む、送信することとを含む、システムに関する。
【0010】
他のシステム、方法、およびコンピュータ可読媒体も、本明細書で説明される。
【図面の簡単な説明】
【0011】
【
図1A】開示された実施形態と一致する、出荷、輸送、および物流オペレーションを可能にする通信のためのコンピュータ化されたシステムを備えるネットワークの例示的な実施形態を示す概略ブロック図である。
【
図1B】開示された実施形態と一致する、対話型ユーザインターフェース要素と共に、検索要求を満たす1つまたは複数の検索結果を含む例示的な検索結果ページ(SRP)を示す図である。
【
図1C】開示された実施形態と一致する、対話型ユーザインターフェース要素と共に製品および製品に関する情報を含む例示的な単一ディスプレイページ(SDP)を示す図である。
【
図1D】開示された実施形態と一致する、対話型ユーザインターフェース要素と共に仮想ショッピングカート内のアイテムを含む例示的なカートページを示す図である。
【
図1E】開示された実施形態と一致する、対話型ユーザインターフェース要素と共に、購入および出荷に関する情報と共に仮想ショッピングカートからのアイテムを含む例示的な注文ページを示す図である。
【
図2】開示された実施形態と一致する、開示されたコンピュータ化されたシステムを利用するように構成されている例示的なフルフィルメントセンタの概略図である。
【
図3】開示された実施形態と一致する、注文されたアイテムを効率的にパッケージングするための方法の例示的な実施形態を示すフローチャートである。
【
図4】開示された実施形態と一致する、最適なパッケージングが見つからない場合の、注文されたアイテムを効率的にパッケージングするための方法の例示的な実施形態を示すフローチャートである。
【
図5】開示された実施形態と一致する、パッケージンググループが壊れ物として指定されるときの、注文されたアイテムを効率的にパッケージングするための方法の例示的な実施形態を示すフローチャートである。
【
図6】開示された実施形態と一致する、注文されたアイテムの効率的なパッケージングのための方法の例示的な実施形態を示すフローチャートであり、特に、壊れ物出荷グループの出荷数を最適化するための例示的な方法を示すフローチャートである。
【
図7】開示された実施形態と一致する、袋パッケージングが注文に対して有効化されるときの、注文されたアイテムを効率的にパッケージングするための方法の例示的な実施形態を示すフローチャートである。
【
図8】開示された実施形態と一致する、袋パッケージングが利用可能であるが、注文に対して無効化されるときの、注文されたアイテムを効率的にパッケージングするための方法の例示的な実施形態を示すフローチャートである。
【発明を実施するための形態】
【0012】
以下の詳細な説明は、添付の図面を参照する。可能な限り、図面および以下の説明では、同一または類似の部分を参照するために、同一の参照番号が使用される。いくつかの例示的な実施形態が本明細書で説明されるが、修正、適応、および他の実装が可能である。例えば、置換、追加、または修正が図面に示された構成要素およびステップに行われてもよく、本明細書に記載された例示的な方法は、開示された方法にステップを置換、並べ替え、除去、または追加することによって修正されてもよい。したがって、以下の詳細な説明は、開示された実施形態および実施例に限定されない。むしろ、本発明の適切な範囲は、添付の特許請求の範囲によって定義される。
【0013】
本開示の実施形態は、注文されたアイテムを効率的にパッケージングするように構成されているシステムおよび方法に関する。
【0014】
図1Aを参照すると、出荷、輸送、および物流動作を可能にする通信のためのコンピュータ化されたシステムを含むシステムの例示的な実施形態を示す概略ブロック
図100が示されている。
図1Aに示すように、システム100は様々なシステムを含むことができ、その各々は、1つまたは複数のネットワークを介して互いに接続することができる。システムはまた、例えばケーブルを使用して、直接接続を介して互いに接続されてもよい。図示のシステムは、出荷権限技術(SAT)システム101、外部フロントエンドシステム103、内部フロントエンドシステム105、輸送システム107、モバイルデバイス107A、107B、107C、売り手ポータル109、出荷および注文追跡(SOT)システム111、フルフィルメント(履行)最適化(FO)システム113、フルフィルメントメッセージングゲートウェイ(FMG)115、サプライチェーン管理(SCM)システム117、労働力管理システム119、モバイルデバイス119A、119B、119C(フルフィルメントセンタ(FC)200の内部にあるものとして図示)、第三者パーティフルフィルメントシステム121A、121B、121C、フルフィルメントセンタ認証システム(FC認証)123、労働管理システム(LMS)125を含む。
【0015】
SATシステム101は、いくつかの実施形態では注文状態および配送状態を監視するコンピュータシステムとして実装されてもよい。例えば、SAT装置101は注文がその約束配送日(PDD)を過ぎているかどうかを判定し、新しい注文を開始すること、配達されていない注文でアイテムを再出荷すること、配達されていない注文をキャンセルすること、注文カスタマとのコンタクトを開始することなどを含む適切な処置をとることができる。SAT装置101は、出力(特定の期間中に出荷された荷物の数のよう)及び入力(出荷に使用するために受け取った空のボール紙箱の数のよう)を含む他のデータを監視することもできる。また、SATシステム101はシステム100内の異なるデバイス間のゲートウェイとして機能し、外部フロントエンドシステム103およびFOシステム113などのデバイス間の通信(例えば、ストアアンドフォワードまたは他の技術を使用する)を可能にしてもよい。
【0016】
いくつかの実施形態では、外部フロントエンドシステム103は外部ユーザがシステム100内の1つまたは複数のシステムと対話することを可能にするコンピュータシステムとして実装することができる。例えば、システム100がシステムの提示を可能にして、ユーザがアイテムのための注文を配置することを可能にする実施形態では、外部フロントエンドシステム103が検索リクエストを受信し、アイテムページを提示し、決済情報を要請するウェブサーバとして実装されてもよい。例えば、外部フロントエンドシステム103は、アパッチHTTPサーバ、マイクロソフトインターネットインフォメーションサービス、NGINX等のソフトウェアを実行するコンピュータ又はコンピュータとして実施することができる。他の実施形態では、外部フロントエンドシステム103が外部デバイス(例えば、モバイルデバイス102Aまたはコンピュータ102B)からの要求を受信および処理し、それらの要求に基づいてデータベースおよび他のデータストアから情報を取得し、取得した情報に基づいて受信した要求に対する応答を提供するように設計されたカスタムウェブサーバソフトウェアを実行することができる。
【0017】
いくつかの実施形態では、外部フロントエンドシステム103がウェブキャッシングシステム、データベース、検索システム、または支払いシステムのうちの1つまたは複数を含むことができる。一態様では外部フロントエンドシステム103がこれらのシステムのうちの1つまたは複数を備えることができ、別の態様では外部フロントエンドシステム103がこれらのシステムのうちの1つまたは複数に接続されたインターフェース(例えば、サーバ間、データベース間、または他のネットワーク接続)を備えることができる。
【0018】
図1B、
図1C、
図1D、および
図1Eによって示されるステップの例示的な組は、外部フロントエンドシステム103のいくつかの動作を説明するのに役立つことができる。外部フロントエンドシステム103は提示および/またはディスプレイのために、システム100内のシステムまたはデバイスから情報を受け取ることができる。例えば、外部フロントエンドシステム103は、検索結果を含む1つ以上のウェブページをホスティングまたは提供することができる: ページ(SRP)(例えば、
図1B)、単一ディテールページ(SDP)(例えば、
図1C)、カードページ(例えば、
図1D)、または注文ページ(例えば、
図1E)。ユーザデバイス(例えば、モバイルデバイス102Aまたはコンピュータ102Bを使用する)は外部フロントエンドシステム103にナビゲートし、サーチボックスに入力することによってサーチをリクエストすることができる。外部フロントエンドシステム103は、システム100内の1つまたは複数のシステムからリクエストすることができる。例えば、外部フロントエンドシステム103は、検索要求を満たす情報をFOシステム113に要求してもよい。また、外部フロントエンドシステム103は検索結果に含まれる商品ごとに、約束配送日または「PDD」を(FOシステム113から)リクエストし、受信することもできる。
PDDはいくつかの実施形態では、特定の期間内に、例えば、その日の最後(午後11時59分)までに注文された場合、製品を含む荷物が、いつユーザの所望の場所に到着するか、または製品がユーザの所望の場所に配送されることを約束される日付かのいずれかの推定値を表すことができる(PDDはFOシステム113に関して以下でさらに説明される)。
【0019】
外部フロントエンドシステム103がその情報に基づいてSRP(例えば、
図1B)を準備することができる。SRPは、検索要求を満たす情報を含むことができる。例えば、これは、検索要求を満たす製品の写真を含むことができる。SRPはまた、各製品についてのそれぞれの価格、または各製品についての強化された配送オプション、PDD、重み、規模、オファー、割引などに関する情報を含んでもよい。外部フロントエンドシステム103は(例えば、ネットワークを介して)要求側ユーザデバイスにSRPを送信することができる。
【0020】
次いで、ユーザデバイスは例えば、ユーザインターフェースをクリックまたはタップすることによって、または別のインプットデバイスを使用して、SRPから製品を選択して、SRP上に表される製品を選択し得る。ユーザデバイスは選択されたプロダクトに関するリクエストを作成し、それを外部フロントエンドシステム103に送ることができる。これに応じて、外部フロントエンドシステム103は、選択された商品に関する情報をリクエストすることができる。例えば、情報は、それぞれのSRP上の製品について提示される情報を超える追加の情報を含むことができる。これには、例えば、貯蔵寿命、原産国、体重、大きさ、荷物中のアイテムの個数、取扱説明書、または生成物に関する他の事項が含まれ得る。また、情報は(例えば、この製品および少なくとも1つの他の製品を購入した顧客のビッグデータおよび/または機械学習分析に基づく)類似の製品に対する推奨、頻繁に質問される質問に対する回答、顧客からのレビュー、製造業者情報、写真などを含むことができる。
【0021】
外部フロントエンドシステム103は受信したプロダクトインフォメーションに基づいて、SDP(単一ディテールページ)(例えば、
図1C)を準備することができる。SDPはまた、「今すぐ買う」ボタン、「カードに追加する」ボタン、数量欄、アイテムの写真等のような他の対話型要素を含んでもよい。SDPは、製品を提供する売り手のリストをさらに含むことができる。リストは各売り手が提供する価格に基づいて注文されてもよく、その結果、最低価格で製品を販売することを提案する売り手は最上位にリストされてもよい。リストは最高ランクの売り手が最上位にリストされるように、売り手ランキングに基づいて注文されてもよい。売り手ランキングは例えば、約束されたPDDを満たす売り手の過去の実績を含む、複数の要因に基づいて定式化されてもよい。外部フロントエンドシステム103は(例えば、ネットワークを介して)要求側ユーザデバイスにSDPを配信することができる。
【0022】
依頼元ユーザデバイスは、商品情報を記載したSDPを受け取る場合がある。SDPを受信すると、ユーザデバイスはSDPと対話することができる。例えば、要求ユーザデバイスのユーザは、SDP上の「カートに入れる」ボタンをクリックするか、あるいは他の方法で対話することができる。これは、ユーザに関連付けられたショッピングカートに製品を追加する。ユーザデバイスはこのリクエストを送信して、商品をショッピングカートに追加し、外部フロントエンドシステム103に送ることができる。
【0023】
外部フロントエンドシステム103はカートページ(例えば、
図1D)を生成することができる。カートページはいくつかの実施形態ではユーザが仮想の「買物かご」に追加した商品をリストし、ユーザデバイスは、SRP、SDP、または他のページ上のアイコンをクリックするか、または他の方法で対話することによって、カートページをリクエストしてもよい。いくつかの実施形態では、カートページがユーザがショッピングカートに追加したすべての製品、ならびに各製品の数量、各製品のアイテム当たりの価格、関連する数量に基づく各製品の価格、PDDに関する情報、配送方法、出荷費用、ショッピングカート内の製品を修正するためのユーザインターフェース要素(例えば、数量の削除または修正)、他の製品を注文するかまたは製品の定期的な配送を設定するためのオプション、利息支払いを設定するためのオプション、購入を進めるためのユーザインターフェース要素などのカート内の製品に関する情報を列挙することができる。ユーザデバイスのユーザはショッピングカート内の商品の購入を開始するために、ユーザインターフェース要素(例えば、「今すぐ買う」と読むボタン)をクリックするか、または他の方法でユーザインターフェース要素と対話することができる。そうすると、ユーザデバイスは、このリクエストを送信して、外部フロントエンドシステム103への購入を開始することができる。
【0024】
外部フロントエンドシステム103は購入を開始するためのリクエストの受信に応じて、注文頁(例えば、
図1E)を発生することができる。注文頁はいくつかの実施形態ではショッピングカートからのアイテムを再リストし、支払及び出荷に関するインプットを要求する。例えば、注文ページはショッピングカート内のアイテムの購入者に関する情報(例えば、名前、住所、電子メールアドレス、電話番号)、受取人に関する情報(例えば、名前、住所、電話番号、配送情報)、出荷情報(例えば、配送および/または集荷の速度/方法)、支払情報(例えば、クレジットカード、銀行振込、小切手、記憶クレジット)、現金受領を要求するためのユーザインターフェース要素(例えば、税務目的のための)などを要求する区画を含むことができる。外部フロントエンドシステム103は、注文頁をユーザデバイスへ送信することが可能である。
【0025】
ユーザデバイスは注文頁に情報を入力し、その情報を外部フロントエンドシステム103に送信するユーザインターフェース要素をクリックするか、または他の方法で対話することができる。そこから、外部フロントエンドシステム103はショッピングカート内の製品との新しい注文の作成および加工を可能にするために、システム100内の様々なシステムに情報を送信することができる。
【0026】
いくつかの実施形態では、外部フロントエンドシステム103が売り手が注文に関する情報を送受信することを可能にするようにさらに構成されてもよい。
【0027】
内部フロントエンドシステム105はいくつかの実施形態では内部ユーザ(例えば、システム100を所有し、運営し、またはリースする団体の従業員)がシステム100内の1つまたは複数のシステムと対話することを可能にするコンピュータシステムとして実装することができる。例えば、ネットワーク101がシステムの提示を可能にして、ユーザが注文のための注文を配置できるようにする実施形態では、内部ユーザが注文に関する診断および統計情報を見たり、アイテム情報を修正したり、またはアイテムに関する統計を見直したりできるようにする、内部フロントエンドシステム105をウェブサーバとして実装することができる。例えば、内蔵フロントエンドシステム105は、アパッチHTTPサーバ、マイクロソフトインターネットインフォメーションサービス、NGINX等のソフトウェアを実行するコンピュータ又はコンピュータとして実現することができる。他の実施形態では、内蔵フロントエンドシステム105がシステム100に示されるシステムまたはデバイス(ならびに図示されない他のデバイス)からの要求を受信および処理し、それらの要求に基づいてデータベースおよび他のデータストアから情報を取得し、取得された情報に基づいて受信された要求への応答を提供するように設計されたカスタムウェブサーバソフトウェアを実行することができる。
【0028】
いくつかの実施形態では、内蔵フロントエンドシステム105がウェブキャッシングシステム、データベース、検索システム、支払いシステム、分析システム、注文監視システムなどのうちの1つまたは複数を含むことができる。一態様では内部フロントエンドシステム105がこれらのシステムのうちの1つまたは複数を備えることができ、別の態様では内部フロントエンドシステム105がこれらのシステムのうちの1つまたは複数に接続されたインターフェース(たとえば、サーバ間、データベース間、または他のネットワーク接続)を備えることができる。
【0029】
輸送システム107は、いくつかの実施形態ではシステム100内のシステムまたはデバイスとモバイルデバイス107A~107Cとの間の通信を可能にするコンピュータシステムとして実施することができる。いくつかの実施形態では、トランスポーテーションシステム107が1つまたは複数のモバイルデバイス107A~107C(例えば、携帯電話、スマートフォン、PDAなど)から受信することができる。例えば、いくつかの実施形態では、モバイルデバイス107A~107Cが配送作業員によって操作されるデバイスを含んでもよい。配送作業員は、正社員、臨時社員、または交替社員であってもよく、モバイルデバイス107A~107Cを利用して、ユーザによって注文された製品を含む荷物の配送を行うことができる。例えば、荷物を配信するために、配送作業員は、どの荷物を配信すべきか、およびそれをどこに配信すべきかを示す通知をモバイルデバイス上で受信することができる。配送位置に到着すると、配送作業員は荷物を(例えば、トラックの後ろに、または荷物の箱に)配置し、モバイルデバイスを使用して荷物上の識別子に関連するデータ(例えば、バーコード、イメージ、文字列、RFIDタグなど)を走査または他の方法で捕捉し、荷物を(例えば、前扉に置いたままにし、警備員を置いたままにし、受信者に渡すなどによって)配信することができる。いくつかの実施形態では、配送作業員が荷物の写真をキャプチャすることができ、および/またはモバイルデバイスを使用してシグネチャを取得することができる。モバイルデバイスは例えば、時刻、日付、GPS位置、写真、配送作業員に関連付けられた識別子、モバイルデバイスに関連付けられた識別子などを含む配送に関する情報を含む情報を輸送機関107に送信することができる。輸送システム107はシステム100内の他のシステムによるアクセスのために、この情報をデータベース(図示せず)に記憶することができる。輸送システム107はいくつかの実施形態ではこの情報を使用して、特定の荷物の位置を示す追跡データを準備し、他のシステムに送信することができる。
【0030】
いくつかの実施形態ではあるユーザが1つの種類のモバイルデバイスを使用することができる(例えば、永久作業員はバーコードスキャナ、スタイラス、および他のデバイスなどのカスタムハードウェアと共に専用のPDAを使用することができる)が他のユーザは他の種類のモバイルデバイスを使用することができる(例えば、一時的または移動作業員は既製の携帯電話および/またはスマートフォンを利用することができる)。
【0031】
いくつかの実施形態では、交通機関107がユーザをそれぞれのデバイスに関連付けることができる。例えば、輸送システム107はユーザ(例えば、ユーザ識別子、従業員識別子、または電話番号)とモバイルデバイス(例えば、国際移動装置アイデンティティ(IMEI)、国際移動加入識別子(IMSI)、電話番号、汎用一意識別子(UUID)、またはグローバル一意(GUID)によって表される)との間の関連を記憶することができる。トランスポートシステム107はこの関連付けを、配送上で受信されたデータと併せて使用して、とりわけ、作業員の位置、作業員の有効性、または作業員のスピードを決定するために、注文内のデータベースに格納されたデータを分析することができる。
【0032】
売り手ポータル109は、いくつかの実施形態では売り手または他の外部エンティティがシステム100内の1つまたは複数のシステムと電子的に通信することを可能にするコンピュータシステムとして実装され得る。例えば、売り手は、コンピュータシステム(図示せず)を利用して、売り手が売り手ポータル109を使用してシステム100を通して売りたい製品について、製品情報、注文情報、連絡先情報などをアップロードまたは提供することができる。
【0033】
出荷および注文追跡システム111はいくつかの実施形態では(例えば、デバイス102A~102Bを使用するユーザによって)顧客によって注文された製品を含む荷物の位置に関する情報を受信し、記憶し、転送するコンピュータシステムとして実装されてもよい。いくつかの実施形態では、出荷および注文追跡装置111は顧客が注文した製品を含む荷物を配送する出荷会社によって運営されるウェブサーバ(図示せず)からの情報をリクエストまたは記憶することができる。
【0034】
いくつかの実施形態では、出荷および注文追跡システム111がシステム100に示されたシステムからの情報をリクエストし、記憶することができる。例えば、出荷および注文追跡システム111は、輸送システム107にリクエストすることができる。上述のように、交通機関107はユーザ(例えば、配送作業員)または乗り物(例えば、配送車)のうちの1つまたは複数に関連付けられた1つまたは複数のモバイルデバイス107A~107C(例えば、携帯電話、スマートフォン、PDAなど)から受信することができる。いくつかの実施形態では、出荷および注文追跡装置111がフルフィルメントセンタ(例えば、フルフィルメントセンタ200)内の個々の製品の位置を決定するために、労働力管理システム(WMS)119にリクエストすることもできる。出荷および注文追跡システム111は輸送システム107またはWMS 119のうちの1つまたは複数からデータを要求し、それを処理し、要求に応じてそれをデバイス(たとえば、ユーザデバイス102Aおよび102B)に提示することができる。
【0035】
フルフィルメント(履行)最適化(FO)システム113はいくつかの実施形態では他のシステム(例えば、外部フロントエンドシステム103および/または出荷および注文追跡システム111)からのカスタマ注文のための情報を記憶するコンピュータシステムとして実装されてもよい。また、FOシステム113は、特定のアイテムがどこに保持されているか、またはどこに記憶されているかを記述する情報を記憶することもできる。たとえば、特定のアイテムは1つのフルフィルメントセンタにのみ格納でき、他の特定のアイテムは複数のフルフィルメントセンタに格納できる。さらに他の実施形態では、特定のフルフィルメントセンタが特定の組のアイテム(例えば、生鮮食品または冷凍食品)のみを格納するように設計されてもよい。FOシステム113はこの情報ならびに関連する情報(例えば、数量、サイズ、受領日、有効期限など)を格納する。
【0036】
また、FOシステム113は、商品毎に対応するPDD(約束配送日)を計算してもよい。PDDは、いくつかの実施形態では1つまたは複数の要因に基づくことができる。例えば、FOシステム113は製品に対する過去の需要(例えば、その製品がある期間中に何回注文されたか)、製品に対する予想需要(例えば、来るべき期間中にその製品を注文するために何人の顧客が予想されるか)、ある期間中にいくつの製品が注文されたかを示すネットワーク全体の過去の需要、来るべき期間中にいくつの製品が注文されることが予想されるかを示すネットワーク全体の予想需要、各フルフィルメントセンタ200に格納された製品の1つ以上のカウント、その製品に対する各製品、予想または現行注文などに基づいて、製品に対するPDDを計算することができる。
【0037】
いくつかの実施形態では、FOシステム113が定期的に(例えば、1時間ごとに)商品ごとにPDDを決定し、それを検索または他のシステム(例えば、外部フロントエンドシステム103、SATシステム101、出荷および注文追跡システム111)に送信するためにデータベースに格納することができる。他の実施形態では、FOシステム113が1つまたは複数のシステム(例えば、外部フロントエンドシステム103、SATシステム101、出荷および注文追跡システム111)から電子要求を受信し、オンデマンドでPDDを計算することができる。
【0038】
フルフィルメントメッセージングゲートウェイ115はいくつかの実施形態ではFOシステム113などのシステム100内の1つ以上のシステムから1つのフォーマットまたはプロトコルで要求または応答を受信し、それを別のフォーマットまたはプロトコルに変換し、変換されたフォーマットまたはプロトコルで、WMS 119または3パーティフルフィルメントシステム121A、121B、または121Cなどの他のシステムに転送するコンピュータシステムとして実装することができる。
【0039】
サプライチェーン管理(SCM)システム117は、いくつかの実施形態では予測機能を実行するコンピュータシステムとして実装することができる。例えば、SCMシステム117は例えば、製品に対する過去の需要、製品に対する予想される需要、ネットワーク全体の過去の需要、ネットワーク全体の予想される需要、各フルフィルメントセンタ200に格納された計数製品、各製品に対する予想または現行注文などに基づいて、特定の製品に対する需要の水準を予測することができる。この予測された水準およびすべてのフルフィルメントセンタにわたるそれぞれの製品の量に応じて、SCMシステム117は特定の製品に対する予測された需要を満たすのに充分な量を購入し、ストックするための1つまたは複数の購入注文を生成することができる。
【0040】
労働力管理システム(WMS)119は、いくつかの実施形態ではワークフローをモニタするコンピュータシステムとして実装されてもよい。例えば、WMS 119は個別イベントを示す個別デバイス(例えば、デバイス107A-107Cまたは119A-119C)からイベントデータを受信することができる。例えば、WMS 119は、荷物を走査するためにこれらのデバイスの1つの使用を示すイベントデータを受信してもよい。フルフィルメントセンタ200および
図2に関して以下で論じるように、フルフィルメントプロセス中に、荷物識別子(例えば、バーコードまたはRFIDタグデータ)は特定の段階で機械によってスキャンまたは読み取ることができる(例えば、自動またはハンドヘルドバーコードスキャナ、RFIDリーダ、高速カメラ、タブレット119A、モバイルデバイス/PDA 119B、コンピュータ119Cなどのデバイス)。WMS 119は荷物識別子、時刻、日時、位置、ユーザ識別子、または他の情報と共に、荷物識別子の走査または読取りを示す各々の事象を対応するデータベース(図示せず)に記憶することができ、この情報を他のシステム(例えば、出荷および注文追跡システム111)に提供することができる。
【0041】
WMS 119はいくつかの実施形態では1つまたは複数のデバイス(例えば、デバイス107A~107Cまたは119A~119C)を、システム100に関連付けられた1つまたは複数のユーザに関連付ける情報を記憶してもよい。例えば、いくつかの状況では、ユーザ(パートまたはフルタイムの従業員など)は、ユーザがモバイルデバイスを所有する(例えば、モバイルデバイスがスマートフォンである)という点で、モバイルデバイスに関連付けられてもよい。他の状況では、ユーザは、ユーザが一時的にモバイルデバイスの管理下にある(例えば、ユーザは日の始めにモバイルデバイスを借り、日中にそれを使用し、日の終わりにそれを返す)という点で、モバイルデバイスに関連付けられてもよい。
【0042】
WMS 119は、いくつかの実施形態ではシステム100に関連する各ユーザの作業ログを維持することができる。例えば、WMS 119は任意の割り当てられたプロセス(例えば、トラックのアンローディング、ピックゾーンからのアイテムのピッキング、仕分け装置ワーク、パッキングアイテム)、ユーザ識別子、位置(例えば、フルフィルメントセンタ200内のフロアまたはゾーン)、従業員によってシステム内を移動されたユニットの数(例えば、ピックされたアイテムの数、パックされたアイテムの数)、デバイスに関連付けられた識別子(例えば、デバイス119A~119C)などを含む、各従業員に関連付けられた情報を記憶することができる。いくつかの実施形態では、WMS 119がデバイス119A~119C上で動作するタイムキーピングシステムなどのタイムキーピングシステムからチェックインおよびチェックアウト情報を受信することができる。
【0043】
第三者フルフィルメント(3PL)システム121A~121Cは、いくつかの実施形態ではロジスティクスおよび製品のサードパーティプロバイダに関連するコンピュータシステムを表す。例えば、(
図2に関して以下に説明するように)いくつかの製品がフルフィルメントセンタ200に格納されている間、他の製品は、オフサイトで格納されてもよく、オンデマンドで生産されてもよく、またはフルフィルメントセンタ200に格納するために利用できなくてもよい。3PLシステム121A~121CはFOシステム113から(例えば、FMG 115を介して)注文を受信するように構成することができ、製品および/またはサービス(例えば、配送または設置)を顧客に直接的に提供することができる。いくつかの実施形態では3PLシステム121A~121Cのうちの1つまたは複数がシステム100の一部とすることができ、他の実施形態では3PLシステム121A~121Cのうちの1つまたは複数がシステム100の外部(例えば、サードパーティプロバイダによって所有または運営される)とすることができる。
【0044】
フルフィルメントセンタ自動システム(FC認証)123は、いくつかの実施形態では様々な機能を有するコンピュータシステムとして実装され得る。例えば、いくつかの実施形態では、FC認証123がシステム100内の1つまたは複数の他のシステムのためのシングルサインオン(SSO)サービスとして動作することができる。例えば、FC認証123はユーザが内部フロントエンドシステム105を介してログインすることを可能にし、ユーザが出荷および注文追跡系111においてリソースにアクセスするための同様の特権を有していることを決定し、ユーザが2回目のログイン処理を必要とせずにそれらの特権にアクセスすることを可能にしてもよい。他の実施形態では、FC認証123は、ユーザ(例えば、従業員)が自分自身を特定の作業に関連付けることを可能にしてもよい。例えば、従業員の中には、電子デバイス(デバイス119A~119Cなど)を持たない者もいれば、その代わりに、1日の過程中に、フルフィルメントセンタ200内でタスクからタスクへ、およびゾーンからゾーンへ移動してもよい。FC認証123は、それらの従業員は、彼らがどの仕事をしているか、および彼らが様々な時刻にどの区域にいるかを示すことを可能にするように構成されてもよい。
【0045】
労働管理システム(LMS)125は、いくつかの実施形態では従業員(フルタイムおよびパートタイムの従業員を含む)のための出勤および残業を記憶するコンピュータシステムとして実装されてもよい。例えば、LMS 125は、FC認証123、WMA 119、デバイス119A-119C、輸送装置107、及び/又はデバイス107A-107Cから受信することができる。
【0046】
図1Aに示される特定の構成は単なる例である。例えば、
図1AはFOシステム113に接続されたFC認証システム123を示すが、全ての実施形態がこの特定の構成を必要とするわけではない。実際、いくつかの実施形態では、システム100内のシステムがインターネット、イントラネット、WAN(ワイドエリアネットワーク)、MAN(メトロポリタンエリアネットワーク)、IEEE 802.11a/b/g/n規格に準拠する無線ネットワーク、専用線などを含む1つまたは複数の公衆またはプライベートネットワークを介して互いに接続され得る。いくつかの実施形態では、システム100内のシステムの1つ以上がデータセンター、サーバファームなどに実装された1つ以上の仮想サーバとして実装されてもよい。
【0047】
図2は、フルフィルメントセンタ200を示す。フルフィルメントセンタ200は、注文時に顧客に出荷するためのアイテムを格納する物理的な場所の実例である。フルフィルメントセンタ(FC)200は多数のゾーンに分割することができ、その各々を
図2に示す。これらの「ゾーン」はいくつかの実施形態ではアイテムを受け取り、アイテムを保管し、アイテムを取り出し、アイテムを出荷する処理の様々な段階の間の仮想分割と考えることができ、したがって、「ゾーン」は
図2に示されているが、ゾーンの他の分割も可能であり、いくつかの実施形態では
図2のゾーンを省略、複製、または修正することができる。
【0048】
インバウンドゾーン203は、
図1Aの装置100を使用して製品を販売しようとする売り手からアイテムを受け取るFC 200の領域を表す。例えば、売り手は、台車201を使用してアイテム202A及び202Bを配送することができる。アイテム202Aはそれ自体の出荷パレットを占有するのに十分な大きさの単一のアイテムを表すことができ、アイテム202Bは、空間を節約するために同じパレット上に一緒に積み重ねられた1組のアイテムを表すことができる。
【0049】
作業員はインバウンドゾーン203でアイテムを受け取り、コンピュータシステム(図示せず)を使用して、アイテムの破損および正当性を任意選択で検査することができる。例えば、作業員は、コンピュータシステムを使用して、アイテム202Aおよび202Bの数量をアイテムの注文数量と比較することができる。数量が合致しない場合、その作業員は、アイテム202Aまたは202Bのうちの1つまたは複数を拒否することができる。数量が一致すれば、作業員はそれらのアイテムを緩衝地帯205まで(例えば、1ドル、ハンドトラック、フォークリフト、手動で)移動させることができる。緩衝ゾーン205は例えば、予測される需要を満たすのに十分な量のアイテムがピッキングゾーンにあるため、ピッキングゾーンで現在必要とされていないアイテムのための一時保管領域であってもよい。いくつかの実施形態では、フォークリフト206が緩衝ゾーン205の周り、および入りゾーン203と落下ゾーン207との間でアイテムを移動させるように動作する。ピッキングゾーンにアイテム202Aまたは202Bが必要な場合(例えば、予想される需要のため)、フォークリフトは、アイテム202Aまたは202Bを落下ゾーン207に移動させることができる。
【0050】
ドロップゾーン207は、アイテムがピッキングゾーン209に移動される前にそれらを保管するFC 200の領域であってもよい。ピッキングタスクに割り当てられた作業員(「ピッカー」)はピッキングゾーン内のアイテム202Aおよび202Bに接近し、ピッキングゾーンのバーコードをスキャンし、モバイルデバイス(例えば、デバイス119B)を使用してアイテム202Aおよび202Bに関連するバーコードをスキャンすることができる。次いで、ピッカーはアイテムをピッキングゾーン209まで(例えば、それをカート上に置くか、またはそれを運ぶことによって)取り込むことができる。
【0051】
ピッキングゾーン209は、アイテム208が保管ユニット210に保管されるFC 200の領域であってもよい。いくつかの実施形態では、貯蔵ユニット210が物理的な棚、本棚、箱、運搬箱、冷蔵庫、冷凍庫、冷蔵庫などのうちの1つまたは複数を含むことができる。いくつかの実施形態では、ピッキングゾーン209が複数のフロアに編成されてもよい。いくつかの実施形態では、作業員または機械が例えば、フォークリフト、エレベータ、コンベアベルト、カート、ハンドトラック、台車、自動ロボットもしくはデバイス、または手動を含む多数の方法で、ピッキングゾーン209内にアイテムを移動させることができる。例えば、ピッカーは、アイテム202Aおよび202Bを降下ゾーン207の手押し車または台車に載せ、アイテム202Aおよび202Bをピッキングゾーン209まで歩くことができる。
【0052】
ピッカーは、保管ユニット210上の特定の空間のようなピッキングゾーン209内の特定のスポットにアイテムを配置する(又は「収納する」)命令を受け取ることができる。例えば、ピッカーはモバイルデバイス(例えば、デバイス119B)を使用してアイテム202Aを走査することができる。デバイスは例えば、通路、棚、及び位置を示す装置を使用して、ピッカーがアイテム202Aを収納すべき場所を示すことができる。次に、デバイスはアイテム202Aをその位置に格納する前に、その位置でバーコードを走査するようにピッカーを促すことができる。デバイスは(例えば、ワイヤレスネットワークを介して)
図1AのWMS 119のようなコンピュータシステムにデータを送信し、アイテム202Aがデバイス119Bを使用してユーザによってその位置に格納されたことを示すことができる。
【0053】
ユーザが注文を置くと、ピッカーは、保管ユニット210から1つまたは複数のアイテム208を取り出すための命令をデバイス119B上で受け取ることができる。ピッカーはアイテム208を取り出し、アイテム208上のバーコードを走査し、それを搬送メカニズム214上に置くことができる。搬送機構214はスライドとして表されているが、いくつかの実施形態では搬送機構がコンベヤーベルト、エレベータ、カート、フォークリフト、ハンドトラック、台車、カートなどのうちの1つまたは複数として実施することができる。次いで、アイテム208は、充填領域211に到達することができる。
【0054】
パッキングゾーン211は、アイテムがピッキングゾーン209から受け取られ、最終的に顧客に出荷するためにボックスまたはバッグにパッキングされる、FC 200の領域であってもよい。パッキングゾーン211において、受信アイテム(「リビン(rebin)作業員」)に割り当てられた作業員はピッキングゾーン209からアイテム208を受信し、それがどの注文に対応するかを決定する。例えば、リビン(rebin)作業員はアイテム208上のバーコードを走査するために、コンピュータ119Cなどのデバイスを使用することができる。コンピュータ119Cはどの注文アイテム208が関連付けられているかを視覚的に示すことができる。これは例えば、注文に対応する壁面216上の空間または「セル」を含むことができる。注文が完了すると(例えば、セルが注文のためのすべてのアイテムを含むため)、リビン(rebin)作業員は、注文が完了したことをパッキング作業員(または「パッカー」)に示すことができる。梱包業者はセルからアイテムを回収し、輸送のために箱または袋に入れることができる。その後、パッカーは例えば、フォークリフト、カート、ドリー、ハンドトラック、コンベヤーベルトを介して、又は他の方法で、箱又はバッグをハブゾーン213に送ることができる。
【0055】
ハブゾーン213は、パッキングゾーン211から全てのボックスまたはバッグ(「荷物」)を受け取るFC 200の領域であってもよい。ハブゾーン213内の作業員および/またはマシンは荷物218を検索し、それぞれの荷物が行こうとする配送領域の一部を決定し、荷物を適切なキャンプゾーン215にルーティングすることができる。例えば、配送領域が2つのより小さいサブ領域を有する場合、荷物は2つのキャンプゾーン215のうちの1つに進む。いくつかの実施形態では、作業員またはマシンが(例えば、デバイス119A~119Cのうちの1つを使用して)荷物を走査して、その最終的な宛先を決定することができる。荷物をキャンプゾーン215にルーティングすることは、例えば、荷物が向けられている地理的エリアの一部を(例えば、郵便番号に基づいて)決定することと、地理的エリアの一部に関連付けられたキャンプゾーン215を決定することとを含むことができる。
【0056】
キャンプゾーン215はいくつかの実施形態では1つまたは複数の建物、1つまたは複数の物理的な空間、または1つまたは複数のエリアを備えることができ、荷物は、ルートおよび/またはサブルートに分類するためにハブゾーン213から受け取られる。いくつかの実施形態ではキャンプゾーン215がFC 200から物理的に分離されているが、他の実施形態ではキャンプゾーン215がFC 200の一部を形成することができる。
【0057】
キャンプゾーン215内の作業員および/またはマシンは例えば、目的地と現存するルートおよび/またはサブルートとの照合、ルートおよび/またはサブルートごとの作業負荷の算出、時刻、出荷方法、荷物220を出荷する費用、荷物220内のアイテムに関連付けられたPDDなどに基づいて、荷物220がどのルートおよび/またはサブルートに関連付けられるべきかを決定することができる。いくつかの実施形態では、作業員またはマシンが(例えば、デバイス119A~119Cのうちの1つを使用して)荷物を走査して、その最終的な宛先を決定することができる。荷物220が特定のルートおよび/またはサブルートに割り当てられると、作業員および/またはマシンは、出荷される荷物220を移動させることができる。例示的な
図2において、キャンプゾーン215は、トラック222、かご226、および配送作業員224Aおよび224Bを含む。いくつかの実施形態では、トラック222が配送作業員224Aによって駆動されてもよく、配送作業員224AはFC 200の荷物を配信する常勤の従業員であり、トラック222はFC 200を所有し、リースし、または運営する同じ企業によって所有され、リースされ、または運営される。いくつかの実施形態では、自動車226が配送作業員224Bによって駆動されてもよく、ここで、配送作業員224Bは必要に応じて(例えば、季節的に)送達する「屈曲」または時折の作業員である。自動車226は、配送作業員224Bによって所有され、リースされ、または操作され得る。
【0058】
図3は、注文された商品を効率的にパッケージングするための主な工程の概要を示す。工程301はステップ303において開始する。ステップ303において、FOシステム113は、注文を受信することによって開始する。注文は、さまざまなアイテム、すなわち消耗品と非消耗品との組み合わせを構成し得る。
【0059】
次に、工程301はステップ305に進む。ステップ305において、FOシステム113は、注文に関する情報の収集を開始する。注文に関して収集される情報は、さまざまなデータ、すなわち、注文内のアイテムの数量、注文されたアイテムの総コストなどの注文自体に関する情報を含み得る。さらに、注文内の個々のアイテムに関する情報が収集される場合がある。例えば、寸法、重量、コスト、またはアイテムを識別する他の特定のフラグなどである。フラグの例は、壊れ物、大型、冷凍、通常などである。
【0060】
次に、工程301はステップ307に進む。ステップ307において、FOシステム113は、注文されたアイテムをパッキンググループにソート307することができる。ステップ305において収集された情報に基づいて、ソートステップ307を実施することができる。例えば、冷凍アイテムは冷蔵アイテムとは別に、かつ他の通常アイテムとは別にグループ化される。代替的に、アイテムは、いくつか例を挙げると、寸法、重量、およびコストなど、収集された他の特性に基づいてソートされてもよい。ソートは、個々の特性またはそれらの組み合わせに基づいて実施することができる。
【0061】
次に、工程301はステップ309に進む。ステップ309において、FOシステム113は、パッキンググループを出荷グループにソート309し始める。出荷グループにソートするステップ309は、輸送業者によって事前設定することができる、事前設定された重量および寸法の閾値に基づいて実施される。出荷グループにソートするステップ309はまた、コストも考慮に入れる。すなわち、大きくて重い1つのパッケージではなく、2つの小さいパッケージを送信する方が安価である場合は、より安価な代替パッケージを優先することが選択される。複数の出荷業者が使用される場合は、利用可能なすべての業者間のコストの差を考慮に入れるために、複数の閾値を設定することができる。
【0062】
次に、工程301はステップ311に進む。ステップ311において、FOシステム113は、各出荷グループの最適な箱サイズを決定するためのサブルーチンを開始する。ステップ311において、FOシステム113は、第1のパッケージを表すデータ構造を選択することができ、データ構造は、第1のパッケージの特性を含むことができる。ステップ311において、FOシステム113は、すべてのアイテムが選択されているパッケージにパッケージングされるまで、グループの最大のアイテムの第1のパッケージへのパッケージングを反復的にシミュレートすることによって進行することができ、グループ内のアイテムが選択されているパッケージに適合しないとシミュレーションが決定した場合、工程は、より大きいパッケージを選択し、すべてのアイテムがより大きいパッケージにパックされるまで、最大のアイテムを反復的に計算によってパックするように試行することができる。ステップ311において、FOシステム113は、計算に様々なパッケージング材料、すなわち、箱、プラスチック袋、気泡緩衝材などをさらに含めることができる。この工程は、材料の使用および出荷コストの最適化を目的としている。反復ステップ311中、FOシステム113は、最大のアイテムの第1のパッケージへのパッキングをシミュレートするためのグループの最大のアイテムの決定、および、さらに、第1のパッケージの寸法から最大のアイテムの寸法を減算することによって残りのスペースを計算し、グループ内の少なくとも1つの残りのアイテムの計算された残りのスペースへのパッキングの反復的なシミュレーションにおいて、グループの少なくとも1つのアイテムの寸法を使用することができる。
【0063】
次に、工程301はステップ313に進む。ステップ313において、FOシステム113は、出荷グループをパッケージングするための命令セットを含む出荷オブジェクトを生成することによって継続する。ステップ313においてFOシステム113によって生成されている出荷グループをパッケージングするための命令セットは、使用される材料と、パッケージング材料の特定の寸法および品質との組み合わせを含むことができる。例えば、命令セットは、出荷グループが8-15/16’’x 5-15/16’’x 3-1/8’’の二重壁段ボール(DWB)の箱にパッケージングされること、アイテムの一部が箱に入れられる前に気泡緩衝材にパッケージングされること、残りの空きスペースが空気袋で充填されることを指定することができ、アイテムが箱に収まるように設計された特定の順序を含むことができる。
【0064】
ステップ313において出荷オブジェクトが生成された後、FOシステム113は、ステップ303において受信された注文からのすべてのアイテムがパッケージングされるまで、
図3の工程を繰り返す。すべてのアイテムがパッケージングされた後、工程301は次にステップ315に進む。ステップ315において、FOシステム113は、主工程を終了し、新しい注文が受信された場合に、
図3の工程を再開することができる。
【0065】
図4は、
図3に示されるFOシステム113によって実施される主工程のサブルーチン401を示す。具体的には、いくつかの実施形態では、サブルーチンは、出荷グループの最適な箱サイズを決定するためのステップ313の一部であるが、上記の通常の手段を使用して最適な箱が見つからない状況のために特別に設計されている。
【0066】
FOシステム113によって実施されたステップ313が、注文されたアイテムに最適なパッケージを見つけられなかった場合、サブルーチン工程401が、ステップ403において開始する。ステップ403において、FOシステム113は、出荷グループ内のアイテムをサイズによってソートすることによって開始する。ソートステップ403の後、FOシステム113は、ステップ405によって継続することができ、グループから最大のアイテムが選択され、最大のアイテムは、寸法、重量、または総体積に基づいて決定され得る。
【0067】
次に、工程401はステップ407に進む。ステップ407において、FOシステム113は、最大のアイテムを収容する箱があるか否かを決定することができる。最大のアイテムを収容する箱がある場合、FOシステム113は、最大のアイテムを現在の出荷リストからパックされるアイテムのリストに移動することによって、ステップ411によって工程401を継続する。代替的に、最大のアイテムを収容する利用可能な箱がない場合、FOシステム113は、最大のアイテムをスタンドアロンとして指定し、それを出荷グループから削除するステップ409によって工程401を続行し、スタンドアロンのアイテムは、例えば包装紙に包むなど、代替のパッケージング技法を使用して個別にパックすることができる。
【0068】
次に、工程401はステップ413に進む。ステップ413において、FOシステム113は、残りのアイテムに対して最適な箱が存在するか否かを決定することによって継続する。最適な箱が存在しない場合、FOシステム113はステップ403に戻ることによって工程401を繰り返す。最適な箱が見つかった場合、FOシステム113はステップ415に進むことによって工程401を終了する。ステップ415において、FOシステム113は、出荷グループをパッケージングするための命令セットを含む出荷オブジェクトを生成する。(いくつかの実施形態では、FOシステム113は、
図3に関して上記で説明したステップ313と同一の方法で出荷オブジェクトを生成する。)次に、工程401はステップ417に進む。ステップ417において、FOシステム113は、
図3の主工程に戻る。
図3に関して上述した主工程を実施するFOシステム113は、注文内のすべてのアイテムが処理され適切にパッケージングされるまで、注文アイテムの初期グループ分けに最適な箱が見つからない場合、各反復において工程401を呼び出すことができる。
【0069】
図5は、壊れ物タイプのアイテムを取り扱うためにFOシステム113によって利用される工程501を示すフローチャートを示している。FOシステム113が
図3の主工程のステップ307を実施し、注文アイテムがパッキンググループにソート307された後、1つまたは複数のパッキンググループが壊れ物であると決定され得、FOシステム113が工程501を開始することができる。工程501は、ステップ503において開始する。ステップ503において、FOシステム113は、パッキンググループ内のアイテムの量を決定する。アイテムが単一である場合、工程500はステップ507によって継続する。ステップ507において、FOシステム113は、そのアイテムに最適な箱が存在するか否かを決定することによって進行する。ステップ507において、FOシステム113が、最適な箱が存在すると決定した場合、工程501は、ステップ521に進む。ステップ521において、壊れ物アイテムが、先行する開示と一致して、FOシステム113によってパックされる。FOシステム113によって、壊れ物アイテムに最適な箱がないと判断された場合、工程501は、ステップ513に続く。ステップ513において、FOシステム113は、そのアイテムにスタンドアロンとしてフラグを立て、それを別個にパックすることができる。
【0070】
壊れ物アイテムのパッケージングは、FOシステム113によって実施される工程501を示す例示的なフローチャートに示されていない追加のステップを含み得る。例えば、壊れ物アイテムは、気泡緩衝材などの追加のパッケージング材料を使用して事前にパッケージングすることができる。追加のパッケージング材料が使用されている場合、適切な箱割り当てのためにアイテムの寸法が測定および更新される。
【0071】
FOシステム113が、ステップ503において、壊れ物アイテムの量が単一ではない(すなわち、複数の壊れ物アイテムが存在する)と決定した場合、工程501は、ステップ505に続くことができる。ステップ505において、FOシステム113は、パッキンググループを出荷グループにソートする。FOシステム113は、出荷業者に基づいて事前設定することができる、事前設定された重量および寸法の閾値に基づいて、出荷グループにソートするステップ505を実施する。出荷グループにソートするステップ505において、FOシステム113はまた、コストも考慮に入れる。例えば、大きくて重い1つのパッケージではなく、2つの小さいパッケージを送信する方が安価である場合は、より安価な代替パッケージを優先することが選択される。複数の出荷業者が使用される場合は、利用可能なすべての業者間のコストの差を考慮に入れるために、複数の閾値を設定することができる。
【0072】
FOシステム113が、工程501のステップ505において、パッキンググループを1つまたは複数の出荷グループにソートした後。工程501は、ステップ509に続く。ステップ509において、FOシステム113は、出荷グループに対して最適な箱が決定される。ステップ509の後、工程501は、ステップ507に続く前述のステップと同様に続くが、この場合、ステップ507においてFOシステム113によって生成されている1つのアイテムだけでなく、壊れ物アイテムが複数あるため、FOシステム113によって生成されている命令が、アイテムのパッキング順序に関連する追加情報を含み得るという点が追加されている。
【0073】
しかしながら、ステップ509においてFOシステム113によって最適な箱が見つからない場合、501工程はステップ511に続く。ステップ511において、FOシステム113は、出荷グループをより小さいグループに分割する。FOシステム113によってステップ511において出荷グループを分割することは、例えば半分、3分の1、4分の1など、グループを比例的に分割するのと同じくらい単純であり得る。いくつかの実施形態では、分割は、例えば、アイテムの寸法、コスト、重量、またはそれらの組み合わせに基づいて、より複雑であり得る。
【0074】
FOシステム113がステップ511において出荷グループを分割した後、工程501はステップ515によって継続する。ステップ515において、FOシステム113は、出荷グループの数と元の出荷グループ内のアイテムの数量との比較が行われることによって開始する。ステップ515においてFOシステム113が、新しいグループの量が元のグループのすべてのアイテムの量と同じであると決定した場合、工程501は、ステップ517に継続して進む。ステップ517において、FOシステム113は、すべてのアイテムをスタンドアロンのアイテムとして指定する。工程501は、ステップ521によって続く。ステップ521において、いくつかの実施形態では、FOシステム113は、ステップ415と同一の方法で出荷オブジェクトを生成する。
【0075】
しかしながら、ステップ515においてFOシステム113が、アイテムの数がグループの数よりも多いと決定した場合、工程501はステップ519によって処理する。ステップ519において、FOシステム113は、行われる出荷数の最適化を実施する。最適化ステップの目標は、上述したパッケージングの制限を遵守し、本開示と一致しながら、コストを最小限に抑える最適な出荷数を生成することである。ステップ519におけるFOシステム113による出荷工程の数の最適化の一例を
図6に示す。
【0076】
図6は、出荷の数を最適化する例示的な工程601を示すフローチャートを示している。工程601は、(例えば、
図5に示される工程501のステップ515において)FOシステム113が、アイテムの数がグループの数よりも多いと決定する状況において開始することができる。工程601は、ステップ603によって開始する。ステップ603において、FOシステム113は、分割後に、より大きいグループを作成する可能性があるか否かを決定する。例えば、元のグループが等しい半分に分割されているが、1/3と2/3とに分割することが可能である場合、2/3はより大きいグループと見なされる。
【0077】
FOシステム113が、より大きいグループが利用可能であると決定した場合、工程601はステップ605に続く。ステップ605において、FOシステム113は、そのグループに最適な箱を見つけることを試行する。そして、最適な箱が見つかった場合、工程601およびFOシステム113は、ステップ613として示される出荷オブジェクトの生成に進み、ステップ617として示される主工程に戻る。ステップ613および617は、FOシステム113によって実施され、先行する開示と一致している。
【0078】
ただし、ステップ603においてFOシステム113が、より大きいグループが利用可能でないと判断した場合。工程601は、ステップ607によって継続する。ステップ607において、FOシステム113は、元の分割グループに最適な箱が存在するか否かの決定を実施する。ステップ607においてFOシステム113が最適な箱があると決定した場合、工程601は、ステップ613として示される出荷オブジェクトの生成に進み、ステップ617として示される主工程に戻る。ステップ613および617は、FOシステム113によって実施され、いくつかの実施形態では、(それぞれ)ステップ521および523と同一に実施される。
【0079】
ただし、ステップ607においてFOシステム113が、最適な箱が再度見つからないと決定した場合。工程601は、ステップ609に続く。ステップ609において、FOシステム113は、出荷グループをもう一度分割する。FOシステム113は、工程501において先行して開示されたステップ511と同一または同様にステップ609を実施することができる。
【0080】
FOシステム113がステップ609を実施し、出荷グループがもう一度分割された後、工程601はステップ611に続く。ステップ611において、FOシステム113は、出荷グループの数が元のグループのアイテム数量以上であるか否かをチェックしている。そして、FOシステム113の決定が肯定的である場合、工程601はステップ615に続く。ステップ615において、FOシステム113は、すべてのアイテムをスタンドアロンとして指定し、以前に開示されたように(例えば、ステップ521および523に関して)進行して、ステップ613において出荷オブジェクトを生成し、ステップ617において主工程に戻る。しかしながら、FOシステム113が、ステップ611において、出荷グループの数が大きくないと判断した場合、工程601は、FOシステム113がグループ分けを調整し、すべてのアイテムが処理されるまで工程を繰り返すために、ステップ603に戻る。
【0081】
例えばステップ311、413、507、509、605、607などの、
図3~
図6に示されている最適な箱を決定するステップは、工程301および
図3の説明で概説されたコアアルゴリズムに従うことができる。各工程は、特定のステップセットに限定されず、各サブルーチンの詳細に適合するように最適化されたコアアルゴリズムステップの修正、省略および/または組み合わせを含んでもよい。
【0082】
図7は、アイテムを袋および箱にパックする工程を示すフローチャートを示している。いくつかの実施形態では、袋は、プラスチック、紙、または他の材料から作製することができる、所定の容積の柔軟なパッケージを含んでもよい。袋パッキングの主な課題の1つは、最良な袋を効率的に選択することであり、箱とは異なり、袋はアイテムを入れると多次元に変形する可能性がある。工程701は、ステップ703において開始する。ステップ703において、FOシステム113は、パッキンググループが袋で出荷され得るか否かを決定する。FOシステム113によって実施されるステップ703の決定は、重量、寸法、袋パッケージングの可用性を識別する特別なフラグまたはタグなどのアイテムの特性に基づいて実施され得る。
【0083】
FOシステム113が、ステップ703において、パッキンググループの1つまたは複数のアイテムを袋に入れて出荷することができないと決定した場合、工程701は、ステップ705に続く。ステップ705において、FOシステム113は、グループ内のすべてのアイテムが適格になるまで、袋で出荷することができないアイテムをパッキンググループから取り除くことができる。FOシステム113が、ステップ703において、パッキンググループ内のすべてのアイテムが1つまたは複数の袋で出荷されるのに適格であると決定した場合、工程701は、ステップ707によって進む。ステップ707において、FOシステム113は、袋の寸法に基づいて最大仮想高さを決定する。例えば、最大仮想高さ(vHeight)は、袋の幅(bWidth)および袋の長さ(bLength)に基づくことができる。いくつかの実施形態では、最大仮想高さは、vHeight=9+(-2*(bLength+bWidth))+(bLength*bWidth)として計算され得る。
【0084】
FOシステム113がステップ707において最大仮想高さを決定した後、工程701はステップ709に進む。ステップ709において、FOシステム113は仮想箱を作成する。仮想箱は、袋の寸法に基づくプラスチック袋のデジタル表現を含み、これは、仮想箱の高さ=プラスチック袋の高さ、仮想箱の幅=プラスチック袋の幅-仮想箱の高さ、仮想箱の長さ=プラスチック袋の長さ-仮想箱の高さ、として決定される。
【0085】
特定の係数(a=3,b=-2*(長さ+幅),c=(長さ*幅))を有する2次方程式を利用して、袋の「最大仮想高さ」、すなわち「袋から箱への最良の近似の「最大」高さを決定することができる。MaxVolumeHeightは、特定の高さを有する袋に収まる最大の体積を決定することに関連している。
【0086】
工程701はステップ711に進む。ステップ711において、FOシステム113は、仮想箱をいくつかのより小さい箱にさらに分割して、可能な複数のアイテムのためのスペースを割り当てることができる。仮想箱をいくつかの箱に分割して、パッキンググループ内のアイテムのサイズおよび数量に基づいてボクシングアルゴリズムによって使用できるようにすることができる。例えば、仮想箱を比例セクションに分割し、サイズに基づいてアイテムで充填することができる(例えば、大きいアイテムは大きいセクションに配置され、小さいアイテムは小さいセクションに配置される)。代替的に、仮想箱を長手方向に、同じサイズの複数のセクション(例えば、8つのセクション)に分割し、各セクションに適切なサイズの個々のアイテムを充填することもできる。ここで、適切なサイズは、アイテムの寸法、重量、体積、および他の特性に基づいて決定される。
【0087】
工程701は、ステップ713に続く。ステップ713において、FOシステム113は、出荷コストおよび出荷されるアイテムのタイプを考慮して、出荷の数を最適化する。袋でのアイテムの出荷は、従来の手段(箱など)と比較してすでに安価であり得るが、さらに最適化すると、さらに節約できる可能性がある。パッケージのさまざまな重量およびサイズに対する業者の料金を考慮に入れることによって、さらなる最適化を実現することができる(例えば、1つの重いパッケージではなく2つの軽いパッケージを出荷する方が安価である場合がある)。最適化は、先行する開示および工程701と一致している。
【0088】
工程701はステップ715に進む。ステップ715において、FOシステム113は、出荷オブジェクトを生成し、ステップ717において、主工程717に戻る。ステップ715および717は、FOシステム113によって実施され、いくつかの実施形態では、(それぞれ)ステップ521および523と同一に実施される。
【0089】
パッケージングは、箱シミュレーションと同様にシミュレートされる。例えば、シミュレーションは、各アイテムの寸法を決定することと、最も長い寸法を有するアイテムを決定することによってグループの最大のアイテムを決定することと、最大のアイテムの第1の袋へのパッキングをシミュレートすることと、第1のパッケージの寸法から最大のアイテムの寸法を減算することによって第1の袋の残りのスペースを計算することと、グループ内の少なくとも1つの残りのアイテムの計算された残りのスペースへのパッキングを反復的にシミュレートすることとを含むことができる。そして、パッケージングを反復的にシミュレートすることは、少なくとも1つのアイテムの第1の袋に関連付けられる仮想箱へのパッケージングを反復的にシミュレートすることを含み、仮想箱の寸法は、第1の袋の仮想高さ、第1の袋の幅、および第1の袋の長さに基づいて計算される。
【0090】
図8は、パッキンググループ内のすべてのアイテムが平坦なアイテムである場合に袋パッケージングを無効にするための工程801を示すフローチャートを示している。平坦なアイテムは、1つの寸法が他の寸法よりも大幅に小さいアイテムである。このような平坦なアイテムの例は、本、雑誌、レコード、写真などを含む。注文に対して袋パッケージングが無効化される場合、工程801は、ステップ803によって開始する。ステップ803において、FOシステム113は、パッキンググループが平坦なアイテムのみを含むか否かを決定することによって、設定を無効化することができる。FOシステム113が平坦なアイテムのみが存在すると決定した場合、工程801はステップ807によって進行する。ステップ807において、FOシステム113は、そのパッキンググループに対してのみ袋パッキングを有効化し、工程801は、ステップ809に続く。
【0091】
ステップ809において、FOシステム113は、注文が箱の代わりに袋にパックされるための命令を生成する。
【0092】
しかしながら、FOシステム113が(ステップ803において)平坦なアイテムだけがパッキンググループに存在するのではないと決定した場合、工程801はステップ805に続く。ステップ805において、FOシステム113は、先行して開示されたように挙動し、通常の箱パッケージングオプションによって進行する。
【0093】
本開示はその特定の実施形態を参照して示され、説明されてきたが、本開示は修正なしに、他の環境において実施することができることが理解されるのであろう。前述の説明は、例示の目的で提示されている。これは、網羅的ではなく、開示された正確な形態または実施形態に限定されない。当業者には、開示された実施形態の明細書および実施を考慮することによって、修正および適合が明らかになるのであろう。さらに、開示された実施形態の態様はメモリに記憶されるものとして記載されているが、当業者はこれらの態様が二次記憶デバイス、例えば、ハードディスクもしくはCD ROM、または他の形態のRAMもしくはROM、USB媒体、DVD、ブルーレイ、または他の光学駆動媒体などの他のタイプのコンピュータ可読媒体に記憶されてもよいことを理解するのであろう。
【0094】
記載された説明および開示された方法に基づくコンピュータプログラムは、熟練した開発者の技術の範囲内である。様々なプログラムまたはプログラムモジュールは当業者に知られている技法のいずれかを使用して作成することができ、または既存のソフトウェアに関連して設計することができる。例えば、プログラム・セクションまたはプログラムモジュールは、.Net Framework、.Net Compact Framework(およびVisual Basic、Cなどの関連言語)、Java、C++、Objective-C、HTML、HTML/AJAXの組み合わせ、XML、もしくはJavaアプレットを含むHTMLの中で、またはその手段によって設計することができる。
【0095】
さらに、例示的な実施形態が本明細書で説明されてきたが、本開示に基づいて当業者によって理解されるように、同等の要素、修正、省略、組み合わせ(例えば、様々な実施形態にわたる態様の)、適応、および/または変更を有する任意のおよびすべての実施形態の範囲が可能である。クレームの限定はクレームに使用されている文言に広く基づいて解釈されるものとし、本明細書に記載されている例に限定されるものではなく、または出願手続中に解釈されるものとする。実施例は、非排他的であると解釈されるべきである。さらに、開示された方法のステップは、ステップを並べ替えること、および/またはステップを挿入もしくは削除することを含む、任意の方法で修正されてもよい。したがって、本明細書および実施例は単に例示的なものとみなされ、真の範囲および精神は以下の特許請求の範囲およびそれらの均等物の全範囲によって示されることが意図される。