WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)

WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)

この蚘事では、倉庫内の空きセルの䞍足の問題をどのように解決したか、およびそのような問題を解決するための離散最適化アルゎリズムの開発に぀いお説明したす。 最適化問題の数孊モデルをどのように「構築」したか、そしおアルゎリズムの入力デヌタを凊理するずきに予期せず遭遇した困難に぀いお話したしょう。

ビゞネスにおける数孊の応甚に興味があり、小孊 5 幎生レベルの公匏の剛䜓恒等倉換を恐れないのであれば、猫ぞようこそ!

この蚘事は実装する人にずっお圹立ちたす WMS-システム、倉庫たたは生産物流業界で働く人、およびビゞネスにおける数孊の応甚や䌁業内のプロセスの最適化に興味のあるプログラマヌ。

導入郚

この出版物は、倉庫プロセスでの最適化アルゎリズムの実装における成功䜓隓を共有する䞀連の蚘事の続きです。

В 前の蚘事 導入した倉庫の詳现に぀いお説明したす WMS-システムに぀いお説明し、実装䞭に残りの商品のバッチをクラスタリングする問題を解決する必芁があった理由も説明したす。 WMS-システムずそれをどのように行ったか。

最適化アルゎリズムに関する蚘事を曞き終えたずころ、蚘事が非垞に膚倧になっおしたったので、蓄積された内容を 2 ぀の郚分に分割するこずにしたした。

  • 最初の郚分 (この蚘事) では、問題の数孊モデルをどのように「構築」したか、そしおアルゎリズムの入力デヌタを凊理および倉換するずきに予期せず遭遇した倧きな困難に぀いお説明したす。
  • XNUMX 番目の郚分では、蚀語でのアルゎリズムの実装に぀いお詳しく怜蚎したす。 C + +では、このような「むンテリゞェント テクノロゞ」をお客様のビゞネス プロセスに導入する際に埗られた経隓を蚈算実隓を実斜しおたずめたす。

蚘事の読み方。 前の蚘事を読んでいる堎合は、すぐに「既存の゜リュヌションの抂芁」の章に進むこずができたす。読んでいない堎合は、解決される問題の説明が以䞋のネタバレ郚分にありたす。

顧客の倉庫で解決されおいる問題の説明

プロセスのボトルネック

2018幎に実装プロゞェクトを完了したした。 WMS-チェリャビンスクの倉庫「Trading House "LD"」のシステム。 補品「1C-Logistics:倉庫管理3」を20事業所に導入オペレヌタヌ WMS、店䞻、フォヌクリフト運転手。 平均的な倉庫面積は玄4㎡、セル数は2、SKU数は5000です。倉庫には4500kgから1kgたでのさたざたなサむズの自瀟補ボヌルバルブが保管されおいたす。 FIFOに埓っお商品を遞択する必芁があるため、倉庫内の圚庫はバッチで保管されたす。

倉庫プロセス自動化スキヌムの蚭蚈䞭に、私たちは最適でない圚庫保管ずいう既存の問題に盎面したした。 クレヌンの保管ず敷蚭の詳现は、1 ぀のナニット保管セルに 1 ぀のバッチのアむテムのみを収容できるようにするこずです (図 30 を参照)。 補品は毎日倉庫に到着し、それぞれの到着は別々のバッチになりたす。 それぞれを別個のセルに保管する必芁があるにもかかわらず、1 か月の倉庫䜜業の結果、合蚈で 3 個の別個のバッチが䜜成されたす。 補品はパレット党䜓ではなく、ピヌス単䜍で遞択されるこずが倚く、その結果、倚くのセルのピヌス遞択ゟヌンでは次のような状況が芳察されたす。䜓積が 5 m10 を超えるセルには、耇数のクレヌンピヌスがあり、现胞䜓積の XNUMX  XNUMX% 未満を占めたす。

WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)
図 1. セル内のいく぀かの郚分の写真

ストレヌゞ容量が最適に䜿甚されおいないこずは明らかです。 灜害の芏暡を想像するために、数字を挙げるこずができたす。倉庫のさたざたな皌働期間䞭に、平均しお、䜓積が 1 立方メヌトルを超えるこのようなセルが 3  100 個あり、バランスが「極小」です。 倉庫は比范的小さいため、倉庫の繁忙期にはこの芁因が「ボトルネック」ずなり、倉庫の受け入れず出荷のプロセスが倧幅に遅くなりたす。

問題解決のアむデア

アむデアが生たれたした。日付が最も近い残り物のバッチを 2 ぀のバッチに枛らし、統䞀されたバッチを持぀そのような残り物を XNUMX ぀のセルにコンパクトにたずめお配眮するか、XNUMX ぀のセルに十分なスペヌスがない堎合は耇数のセルにたずめお配眮する必芁がありたす。残り物の党量。 このような「圧瞮」の䟋を図 XNUMX に瀺したす。

WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)
図2. セル内の残基を圧瞮するスキヌム

これにより、新しい商品を配眮するために䜿甚される倉庫の占有スペヌスを倧幅に削枛できたす。 倉庫の容量が過負荷になっおいる状況では、このような察策が非垞に必芁です。そうしないず、新しい商品を収容するのに十分な空きスペヌスがなくなり、倉庫の配眮ず補充のプロセスが停止しおしたい、その結果、受付・発送を停止させおいただく堎合がございたす。 WMS システムが導入される前は、このような操䜜は手動で実行されおいたしたが、セル内の適切なバランスを怜玢するプロセスに非垞に時間がかかるため、非効率的でした。 今回、WMS システムの導入により、プロセスを自動化し、高速化し、むンテリゞェント化するこずにしたした。

このような問題を解決するプロセスは 2 ぀の段階に分かれおいたす。

  • 最初の段階で、圧瞮日が近いバッチのグルヌプを芋぀けたす (このタスク専甚) 前の蚘事);
  • 第 XNUMX 段階では、バッチのグルヌプごずに、セル内の残りの商品の最もコンパクトな配眮を蚈算したす。

今回の蚘事では、アルゎリズムの第 XNUMX 段階に焊点を圓おたす。

既存の゜リュヌションのレビュヌ

私たちが開発したアルゎリズムの説明に移る前に、垂堎にすでに存圚するシステムに぀いお簡単に抂芳する䟡倀がありたす。 WMS、同様の最適な圧瞮機胜を実装したす。

たず第䞀に、補品「1C: Enterprise 8. WMS Logistics」に泚目する必芁がありたす。 倉庫管理 4"。1C が所有および耇補しおおり、第 XNUMX 䞖代に属したす。 WMS-AXELOTが開発したシステム。 このシステムは圧瞮機胜を䞻匵しおおり、異皮の補品残骞を XNUMX ぀の共通セルに統合するように蚭蚈されおいたす。 このようなシステムの圧瞮機胜には、ABC クラスに埓っおセル内の商品の配眮を修正するなど、他の可胜性も含たれおいるこずは蚀及する䟡倀がありたすが、ここでは詳しく説明したせん。

1C のコヌドを分析するず、Enterprise 8. WMS 物流システムです。 倉庫管理 4」機胜のこの郚分でオヌプンでは、次のように結論付けるこずができたす。 残差圧瞮アルゎリズムはかなり原始的な線圢ロゞックを実装しおおり、「最適な」圧瞮に぀いお語るこずはできたせん。 圓然のこずながら、パヌティのクラスタリングには察応しおいたせん。 このようなシステムを導入した䜕人かのクラむアントは、圧瞮蚈画の結果に぀いお苊情を蚀いたした。 たずえば、実際の圧瞮䞭に次のような状況がよく発生したす。 残りの商品をあるセルから、100 個が配眮されおいる別のセルに移動するこずが蚈画されおいたす。 ただし、時間の消費ずいう芳点からは、その逆を行うのが最適です。

たた、セル内の残存物を圧瞮する機胜も倚くの諞倖囜で宣蚀されおいる。 WMS-システムですが、残念ながら、アルゎリズムの有効性に関する実際のフィヌドバックはなく (これは䌁業秘密です)、たしおやそのロゞックの深さ (独自のクロヌズド゜ヌス ゜フトりェア) に぀いおのアむデアは埗られないため、刀断するこずはできたせん。

問題の数孊的モデルを怜玢する

問題を解決するための高品質なアルゎリズムを蚭蚈するには、たずこの問題を数孊的に明確に定匏化する必芁があり、それを行うこずになりたす。

现胞がたくさんある WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)、いく぀かの商品の残骞が含たれおいたす。 以䞋では、このような现胞をドナヌ现胞ず呌びたす。 ず衚したしょう WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) セル内の物品の量 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)$.

XNUMX ぀のバッチの XNUMX ぀の補品のみ、たたは以前にクラスタヌに結合された耇数のバッチであるずいうこずが重芁です (以䞋を参照)。 前の蚘事、これは商品の保管ず保管の詳现によるものです。 異なる補品たたは異なるバッチ クラスタヌでは、独自の個別の圧瞮手順を実行する必芁がありたす。

现胞がたくさんある WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)、ドナヌ现胞からの残基が朜圚的に配眮される可胜性がありたす。 さらに、このようなセルをコンテナ セルず呌びたす。 これらは、倉庫内のフリヌセルたたはさたざたなドナヌセルのいずれかです。 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)。 い぀もたっぷり WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) サブセットです WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1).

现胞ごずに WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) たくさんの人から WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) 容量制限が蚭定されおいる WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)、dm3で枬定されたす。 3 ぀の dm10 は XNUMX cm の立方䜓であり、倉庫に保管されおいる補品は非垞に倧きいため、この堎合はこのような離散化で十分です。

最短距離の行列が䞎えられるず、 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) セルの各ペア間のメヌトル単䜍 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)どこ WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) О WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) セットに属する WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) О WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) それぞれ。

ず衚したしょう WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) セルから物品を移動する「コスト」WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) セルに WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)。 ず衚したしょう WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) コンテナ遞びの「コスト」 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) 他の现胞からその现胞に残留物を移動させる。 倀がどのように正確に、どのような枬定単䜍で蚈算されるか WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) О WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) さらに怜蚎したす (入力デヌタの準備のセクションを参照)。今のずころ、そのような倀は倀に正比䟋するず蚀うだけで十分です。 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) О WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) それぞれ。

で衚す WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) 剰䜙がセルからのものである堎合に倀 1 を取る倉数 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) コンテナに移動したした WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)、それ以倖の堎合は 0。 で衚したしょう WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) コンテナヌの堎合、倀 1 を取る倉数 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) には残りの商品が含たれ、それ以倖の堎合は 0 が含たれたす。

タスクは次のように蚘述されおいたす: 非垞に倚くのコンテナを芋぀ける必芁がありたす WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) したがっお、機胜を最小限に抑えるためにドナヌ现胞をコンテナヌ现胞に「付着」させたす。

WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)

制限䞋で

WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)

問題の解決策を蚈算するずき、合蚈するず、次のこずに努めたす。

  • たず、ストレヌゞ容量を節玄するためです。
  • 第二に、店䞻の時間を節玄するためです。

最埌の制限は、私たちが遞択しおいないコンテナに商品を移動するこずはできないこずを意味し、したがっお、そのコンテナを遞択するこずで「コストが発生」したせんでした。 この制限は、セルからコンテナに移動される商品の量がコンテナの容量を超えおはいけないこずも意味したす。 問題を解決するずは、コンテナのセットを意味したす。 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) ドナヌ现胞を容噚に付着させる方法。

最適化問題のこの定匏化は新しいものではなく、前䞖玀の 80 幎代初頭から倚くの数孊者によっお研究されおきたした。 海倖の文献には、適切な数孊モデルを䜿甚した 2 ぀の最適化問題がありたす。 単䞀電源容量の蚭備の堎所の問題 О 耇数電源の容量を備えた斜蚭の堎所の問題 (タスクの違いに぀いおは埌で説明したす)。 数孊的文献では、このような 50 ぀の最適化問題の定匏化は、地䞊の䌁業の堎所に基づいお定匏化されおおり、そのため「斜蚭の堎所」ずいう名前が付けられおいるず蚀う䟡倀がありたす。 ほずんどの堎合、これは䌝統ぞの敬意です。なぜなら、このような組み合わせの問題を解決する必芁性が初めお、前䞖玀の XNUMX 幎代の兵站の分野、䞻に軍産郚門から来たからです。 䌁業の所圚地の芳点から、このようなタスクは次のように定匏化されたす。

  • 補造業の立地が朜圚的に可胜な郜垂以䞋、補造業郜垂の数は有限である。 補造郜垂ごずに、その郜垂で䌁業を蚭立するコストず、その郜垂で蚭立される䌁業の生産胜力の制限が指定されおいたす。
  • クラむアントが実際に所圚する郜垂 (以䞋、クラむアント郜垂ず呌びたす) は有限です。 このようなクラむアント郜垂ごずに、補品の需芁量が指定されたす。 話を簡単にするために、䌁業によっお生産され、顧客によっお消費される補品は XNUMX ぀だけであるず仮定したす。
  • 郜垂のメヌカヌず郜垂の顧客のペアごずに、必芁な量の補品をメヌカヌから顧客に配送するための茞送コストの倀が指定されたす。

次のこずを行うには、どの郜垂でビゞネスを開くか、たたそのようなビゞネスに顧客を結び぀ける方法を芋぀ける必芁がありたす。

  • 開業にかかる総費甚ず亀通費は最小限で枈みたした。
  • オヌプン䌁業に割り圓おられた顧客からの需芁量は、その䌁業の生産胜力を超えるこずはありたせんでした。

ここで、これら XNUMX ぀の叀兞的な問題の唯䞀の違いに぀いお蚀及する䟡倀がありたす。

  • 単䞀゜ヌスの容量を備えた斜蚭の堎所の問題 – クラむアントは XNUMX ぀のオヌプン斜蚭からのみ䟛絊されたす。
  • マルチ゜ヌスの容量を備えた斜蚭の堎所の問題 - クラむアントは耇数のオヌプン斜蚭から同時に䟛絊される可胜性がありたす。

XNUMX ぀の問題間のこのような違いは、䞀芋するず重芁ではありたせんが、実際には、そのような問題の完党に異なる組み合わせ構造に぀ながり、その結果、それらを解決するためのたったく異なるアルゎリズムが生じたす。 タスク間の違いを以䞋の図に瀺したす。

WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)
図3. a) 耇数電源の容量を備えた斜蚭の䜍眮問題

WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)
図3. b) 単䞀電源容量蚭備の䜍眮問題

䞡方のタスク WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)-難しい、぀たり、入力デヌタのサむズの時間倚項匏でそのような問題を解決する正確なアルゎリズムはありたせん。 簡単に蚀うず、問題を解決するためのすべおの正確なアルゎリズムは、おそらくオプションを完党に探玢するよりも高速ではあるものの、指数関数的な時間で機胜したす。 任務以来 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)-難しい堎合は、近䌌ヒュヌリスティック、぀たり、最適に非垞に近い゜リュヌションを䞀貫しお蚈算し、非垞に迅速に機胜するアルゎリズムのみを考慮したす。 このようなタスクに興味がある堎合は、ここでロシア語で優れた抂芁を芋぀けるこずができたす。

セル内の商品の最適な圧瞮の問題の甚語に移るず、次のようになりたす。

  • クラむアントの郜垂はドナヌセルです WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) 残った商品ず䞀緒に、
  • 補造郜垂 – コンテナセル WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)、他のセルの残りが配眮されるこずになっおいたす。
  • 茞送コスト - 時間コスト WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) 店䞻がドナヌセルから倧量の商品を移動する WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) コンテナセルに WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1);
  • 開業費甚 - コンテナの遞択費甚 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)、コンテナセルの䜓積に等しい WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)、空きボリュヌムを保存するために特定の係数を乗算したす (係数の倀は垞に > 1) (入力デヌタの準備のセクションを参照)。

この問題のよく知られおいる叀兞的な解決策ずの類掚がなされた埌、解決アルゎリズムのアヌキテクチャの遞択が䟝存する重芁な質問に答える必芁がありたす。それは、ドナヌ セルからの剰䜙を XNUMX ぀のセルにのみ移動するこずが可胜であるずいうこずです。コンテナは XNUMX ぀だけ (シングル゜ヌス)、それずも残りを耇数のコンテナ セルに移動するこずは可胜ですか (マルチ゜ヌス)。

実際には問題の䞡方の定匏化が発生するこずは泚目に倀したす。 それぞれの蚭定の長所ず短所を以䞋に瀺したす。

問題のバリ゚ヌション オプションの長所 オプションの短所
単䞀゜ヌス この問題の倉圢を䜿甚しお蚈算される圚庫移動䜜業:

  • 店䞻偎の制埡が少なくなり (あるセルからすべおを取り出し、すべおを別のコンテナ セルに入れる)、以䞋のリスクが排陀されたす。 「セルに入れる」操䜜を実行するずきに商品の数量を再蚈算する際の゚ラヌ。 再蚈算された数量を TSD に入力する際の゚ラヌ。
  • 「セルに入れる」操䜜を実行するずきに商品の数を再蚈算しおTSDに入力する時間は必芁ありたせん。
マルチ゜ヌス このバヌゞョンの問題を䜿甚しお蚈算された圧瞮は、通垞、「単䞀゜ヌス」オプションを䜿甚しお蚈算された圧瞮ず比范しお 10  15% コンパクトになりたす。 しかし、ドナヌ现胞内の残基の数が少ないほど、コンパクトさの差が小さくなるこずにも泚目したす。 この問題の倉圢を䜿甚しお蚈算される圚庫移動䜜業:

  • 店䞻の偎でより高床な制埡が必芁です蚈画された各コンテナセルに移動される商品の数量を再蚈算する必芁がありたす。これにより、商品の数量を再蚈算し、「」を実行するずきにTSDにデヌタを入力するずきに゚ラヌが発生するリスクが排陀されたす。 「セルに入れる」操䜜
  • 「セルに入れる」操䜜を行う堎合、個数の再蚈算に時間がかかる
  • 「セルに入れる」操䜜を実行するずきに「オヌバヌヘッド」停止、パレットに移動、コンテナセルのバヌコヌドをスキャンのために時間がかかりたす
  • 堎合によっおは、アルゎリズムによっお、ほが完党なパレットの数量が、すでに適切な補品が含たれおいる倚数のコンテナ セル間で「分割」されるこずがありたすが、これは顧客の芳点からは容認できたせんでした。

è¡š 1. 単䞀゜ヌス オプションずマルチ゜ヌス オプションの長所ず短所。

シングル゜ヌスオプションにはより倚くの利点があり、ドナヌ现胞の残基数が少ないほど、問題の䞡方のバリアントに぀いお蚈算された圧瞮コンパクト床の差が小さくなるずいう事実も考慮するず、私たちの遞択は次のずおりになりたした。 [単䞀゜ヌス] オプション。

マルチ゜ヌスオプションに察する解決策も講じられるこずは蚀うたでもありたせん。 これを解決するための効果的なアルゎリズムが倚数あり、そのほずんどは倚くの茞送問題の解決に぀ながりたす。 効率的なアルゎリズムだけでなく、゚レガントなアルゎリズムもありたす。たずえば、 ここに。

入力デヌタの準備

問題を解決するためのアルゎリズムの分析ず開発を開始する前に、どのデヌタをどのような圢匏で入力ずしおフィヌドするかを決定する必芁がありたす。 ドナヌセル内の残りの商品の量ずコンテナセルの容量に぀いおは、些现なこずであるため問題はありたせん。そのような量はm3で枬定されたすが、コンテナセルの䜿甚コストず移動コストマトリックスがすべおではありたせん。ずおもシンプルです

たずは蚈算を芋おみたしょう 荷物の移動にかかる費甚 ドナヌセルからコンテナセルたで。 たず第䞀に、移動コストをどのような枬定単䜍で蚈算するかを決定する必芁がありたす。 最もわかりやすい XNUMX ぀のオプションは、メヌトルず秒です。 「玔粋な」メヌタヌで亀通費を蚈算するのは意味がありたせん。 これを䟋で瀺しおみたしょう。 セルにしたしょう WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) 最初の局のセルにありたす WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) 30 メヌトル離れお XNUMX 段目にありたす。

  • からの移動 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) в WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) から匕っ越しするよりもお金がかかる WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) в WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1), 距離は同じですが、1,5 段目 (床から 2  XNUMX メヌトル) から降りるほうが、XNUMX 段目に䞊がるよりも簡単です。
  • 1台移動したす。 现胞からの商品 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) в WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) 10個動かすより楜になりたすよ。 同じ補品ですが、距離は同じになりたす。

階局の違いず移動する商品の量の違いの䞡方を考慮できるため、移動コストを秒単䜍で怜蚎するこずをお勧めしたす。 秒単䜍の移動コストを考慮するには、移動操䜜を基本コンポヌネントに分解し、各基本コンポヌネントの実行にかかる時間を枬定する必芁がありたす。

现胞から出させおください WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) 動く WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) パ゜コン。 コンテナに入った商品 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)。 しおみたしょう WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) – 倉庫内での䜜業者の平均移動速床 (m/秒単䜍で枬定)。 させお WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) О WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) – 4 回限りの䜜業の平均速床は、それぞれ 3 dm1 に盞圓する商品の量 (埓業員が䜜業を実行する際に倉庫内で䞀床に取る平均量) の堎合です。 させお WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) О WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) take 操䜜ず put 操䜜がそれぞれ実行されるセルの高さ。 たずえば、1 段目 (床) の平均高さは 2 m、XNUMX 段目は XNUMX m などです。 移動操䜜が完了するたでの合蚈時間を蚈算する匏は次のようになりたす。 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) 以䞋

WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)

è¡š 2 は、保管商品の特性を考慮しお倉庫埓業員によっお収集された、各基本操䜜の実行時間に関する統蚈を瀺しおいたす。

操䜜の名前 指定 平均
倉庫内を移動する䜜業者の平均速床 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) 1,5 m / s
投入たでの4回の䜜業の平均速床補品䜓積3 dmXNUMXの堎合 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) 2,4秒

è¡š 2. 倉庫䜜業を完了するたでの平均時間

匕っ越しにかかる費甚の蚈算方法が決たりたした。 次に、蚈算方法を理解する必芁がありたす コンテナセルの遞択にかかるコスト。 ここでのすべおは、匕っ越し費甚よりもはるかに耇雑です。理由は次のずおりです。

  • 第䞀に、コストは现胞の容積に盎接䟝存するはずです。ドナヌ现胞から移送される同容積の残留物は、䞡方の容噚に完党に収たる容積であれば、倧きな容噚よりも小さな容積の容噚に入れる方がよいのです。 したがっお、コンテナを遞択する総コストを最小限に抑えるこずで、セルに商品を配眮する埌続の䜜業を実行するために、遞択゚リアの「垌少な」空き保管容量を節玄するよう努めたす。 図 4 は、残留物を倧小のコンテナに移すためのオプションず、その埌の倉庫䜜業におけるこれらの移送オプションの圱響を瀺しおいたす。
  • 第二に、元の問題を解決するには総コストを正確に最小化する必芁があり、これは移動コストずコンテナ遞択コストの䞡方の合蚈であるため、立方メヌトル単䜍のセルの䜓積を䜕らかの方法で秒数に関連付ける必芁がありたす。それは決しお簡単なこずではありたせん。

WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)
米。 4. 残り物を異なる容量のコンテナに移動するためのオプション。

図4は、次の商品を入れる第XNUMX段階で容噚に入りきらなかった残り物の量を赀色で瀺しおいたす。

コンテナを遞択するための立方メヌトルのコストず、問題に察する蚈算された解決策の次の芁件を移行するための数秒のコストを結び぀けるのに圹立ちたす。

  • 補品が入っおいるコンテナビンの総数が枛る堎合は、いかなる堎合でもドナヌビンからの残高をコンテナビンに移動する必芁がありたす。
  • コンテナの量ず移動に費やした時間のバランスを維持する必芁がありたす。たずえば、問題に察する新しい゜リュヌションでは、以前の゜リュヌションず比范しお量の増加は倧きいですが、時間の損倱は小さいです。 、その埌、新しいオプションを遞択する必芁がありたす。

最埌の芁件から始めたしょう。 「バランス」ずいう曖昧な蚀葉を明確にするために、倉庫埓業員を察象に次のようなアンケヌトを実斜したした。 䜓積のコンテナセルがあるずしたす。 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)、ドナヌセルからの残りの商品の移動が割り圓おられ、そのような移動の合蚈時間は次のようになりたす。 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)。 同じドナヌセルから同じ量の商品を他のコンテナに配眮するための代替オプションがいく぀かあるずしたす。各配眮には独自の掚定倀がありたす。 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)どこ WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)<WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) О WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)どこ WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)>WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1).

質問は次のずおりです: 音量の最小増加はいくらですか WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) 所定の時間損倱倀に぀いおは蚱容可胜 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)? 䟋を挙げお説明したしょう。 圓初、遺骚は容積1000 dm3 (1 m3) のコンテナに玍められる予定で、移送時間は70秒でした。 残留物を容積 500 dm3、時間 130 秒の別の容噚に入れるオプションがありたす。 質問: 60 dm500 の空き容量を節玄するために、店䞻の時間を商品の移動にさらに 3 秒費やす準備はできおいたすか? 倉庫埓業員ぞのアンケヌト結果をもずに、以䞋の図を䜜成したした。

WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)
米。 5. 動䜜時間の差の増加に察する最小蚱容容積節玄量の䟝存性の図

぀たり、远加の時間コストが 40 秒の堎合、䜓積の増加が少なくずも 500 dm3 になる堎合にのみ、远加の時間コストを費やす準備ができおいたす。 䟝存関係にはわずかな非線圢性があるずいう事実にもかかわらず、さらなる蚈算を簡単にするために、量間の䟝存関係は線圢であり、䞍等匏によっお蚘述されるず仮定したす。

WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)

䞋の図では、商品をコンテナに入れる次の方法を考えおいたす。

WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)
米。 6. オプション (a): コンテナ 2 個、総量 400 dm3、総時間 150 秒。
WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)
米。 6. オプション (b): コンテナ 2 個、合蚈容量 600 dm3、合蚈時間 190 秒。
WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)
米。 6. オプション (c): コンテナ 1 個、総量 400 dm3、総時間 200 秒。

(800-400)/10>=150-120 ずいう䞍等匏が成り立぀ため、コンテナを遞択するオプション (a) は元のオプションよりも奜たしいです。これは 40 >= 30 を意味したす。オプション (b) は元のオプションよりも奜たしくありたせん。 (800-600)/10>=190-150 ずいう䞍等匏が成り立たないため、option は 20 >= 40 を意味したす。しかし、オプション (c) はそのようなロゞックには適合したせん。 このオプションに぀いおさらに詳しく考えおみたしょう。 䞀方では、䞍等匏 (800-400)/10>=200-120 は、䞍等匏 40 >= 80 が満たされおいないこずを意味したす。これは、量の増加が時間のかかる倧きな損倱に芋合わないこずを瀺唆しおいたす。

しかしその䞀方で、このオプション (c) では、総占有䜓積を枛らすだけでなく、占有セルの数も枛らしたす。これは、䞊に挙げた問題に察する蚈算可胜な解決策の XNUMX ぀の重芁な芁件のうちの XNUMX ぀目です。 明らかに、この芁件が満たされるようにするには、䞍等匏の巊偎に正の定数を远加する必芁がありたす。 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)、このような定数は、コンテナヌの数が枛少した堎合にのみ远加する必芁がありたす。 それを思い出しおみたしょう WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) コンテナがコンテナの堎合は 1 に等しい倉数です。 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) 遞択されおおり、コンテナの堎合は 0 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) 遞択されおいない。 ず衚したしょう WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) – 初期゜リュヌションには倚数のコンテナヌがあり、 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) – 新しい゜リュヌションには倚数のコンテナヌが含たれおいたす。 䞀般に、新しい䞍等匏は次のようになりたす。

WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)

䞊蚘の䞍等匏を倉圢するず、次のようになりたす。

WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)

これに基づいお、総コストを蚈算するための匏がありたす WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) 問題に察するいく぀かの解決策:

WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)

しかし今、疑問が生じたす: そのような定数にはどのような倀が必芁ですか? WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)? 明らかに、問題を解決するための最初の芁件が垞に満たされるように、その倀は十分に倧きくなければなりたせん。 もちろん、定数の倀を 103 たたは 106 にするこずもできたすが、そのような「魔法の数」は避けたいず考えおいたす。 倉庫業務の実行の詳现を考慮するず、そのような定数の倀に぀いお十分に根拠のある数倀掚定倀をいく぀か蚈算できたす。

みたしょう WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) – 100 ぀のゟヌン ABC の倉庫セル間の最倧距離、この堎合は XNUMX m に盞圓したす。 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) – 倉庫内のコンテナセルの最倧䜓積。この堎合は 1000 dm3 に盞圓したす。

倀を蚈算する最初の方法 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)。 最初の段に 2 ぀のコンテナがあり、その䞭に商品がすでに物理的に配眮されおいる、぀たりコンテナ自䜓がドナヌ セルであり、商品を同じセルに移動するコストが圓然 0 に等しい状況を考えおみたしょう。定数のそのような倀を芋぀ける必芁がありたす WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)この堎合、残り物を垞にコンテナ 1 からコンテナ 2 に移動するず有利です。 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) О WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) 䞊蚘の䞍等匏では次のようになりたす。

WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)

そこから続きたす

WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)

基本的な操䜜の実行にかかる平均時間の倀を䞊蚘の匏に代入するず、次のようになりたす。

WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)

倀を蚈算する XNUMX 番目の方法 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)。 ある状況を考えおみたしょう WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) 商品をコンテナ 1 に移動する予定のドナヌ セル。 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) – ドナヌセルからの距離 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) コンテナ 1 にコンテナ 2 もありたす。コンテナ XNUMX にはすでに商品が入っおおり、その容積には残りのすべおを収容できる容量がありたす。 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) 现胞。 簡単にするために、ドナヌセルからコンテナに移動される商品の量は同じで等しいず仮定したす。 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)。 このような定数の倀を芋぀ける必芁がありたす WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)、からのすべおの剰䜙の配眮 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) セルをコンテナ 2 に配眮する方が、別のコンテナに配眮するよりも垞に収益性が高くなりたす。

WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)

埗られる䞍平等を倉革する

WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)

量の䟡倀を「匷く」するために WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)ず仮定したしょう WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) = 0。倉庫残高を圧瞮する手順に通垞含たれるセルの平均数は 10 です。既知の量の倀を代入するず、次の定数の倀が埗られたす。

WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)

各オプションで蚈算された最倧倀を採甚したす。これが数量の倀になりたす。 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) 指定されたりェアハりスパラメヌタに察しお。 ここで、完党を期すために、総コストの蚈算匏を曞き留めおみたしょう。 WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1) 䜕らかの実珟可胜な解決策を埗るために WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1):

WMS の離散数孊: セル内の商品を圧瞮するアルゎリズム (パヌト 1)

さお、結局のずころ タむタニックな取り組み 入力デヌタを倉換するず、すべおの入力デヌタが目的の圢匏に倉換され、最適化アルゎリズムで䜿甚できる状態になったず蚀えたす。

たずめ

実際にやっおみるずわかるように、アルゎリズムの入力デヌタを準備しお倉換する段階の耇雑さず重芁性は過小評䟡されがちです。 この蚘事では、高品質でむンテリゞェントに準備された入力デヌタのみが、アルゎリズムによっお蚈算された決定をクラむアントにずっお真に䟡倀のあるものにできるこずを瀺すために、この段階に特に倚くの泚意を払いたした。 はい、公匏の掟生はたくさんありたしたが、型の前から譊告したした :)

次の蚘事では、これたでの 2 ぀の出版物の目的である離散最適化アルゎリズムに぀いお最終的に説明したす。

蚘事を準備したした
Roman Shangin、プロゞェクト郚門のプログラマヌ、
First Bit 瀟、チェリャビンスク


出所 habr.com

コメントを远加したす