{"id":37108,"date":"2019-10-31T22:15:47","date_gmt":"2019-10-31T19:15:47","guid":{"rendered":"https:\/\/prohoster.info\/blog\/diskretnaya-matematika-dlya-wms-algoritm-szhatiya-tovarov-v-yachejkah-chast-1\/"},"modified":"2019-10-31T22:15:47","modified_gmt":"2019-10-31T19:15:47","slug":"diskretnaya-matematika-dlya-wms-algoritm-szhatiya-tovarov-v-yachejkah-chast-1","status":"publish","type":"post","link":"https:\/\/prohoster.info\/cs\/blog\/news\/diskretnaya-matematika-dlya-wms-algoritm-szhatiya-tovarov-v-yachejkah-chast-1","title":{"rendered":"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/89e9927c86cd36ee5b4ab37b5c0753c9.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nV tomto \u010dl\u00e1nku se pod\u011bl\u00edme o to, jak jsme \u0159e\u0161ili probl\u00e9m nedostatku voln\u00fdch bun\u011bk ve skladu a o v\u00fdvoji algoritmu diskr\u00e9tn\u00ed optimalizace pro tuto \u00falohu. Pops\u00e1me, jak jsme \u201estav\u011bli\u201c matematick\u00fd model \u00falohy optimalizace, a jak\u00e9 pot\u00ed\u017ee n\u00e1s p\u0159ekvapiv\u011b potkaly p\u0159i zpracov\u00e1n\u00ed vstupn\u00edch dat pro algoritmus.<\/p>\n<p>Pokud v\u00e1s zaj\u00edmaj\u00ed aplikace matematiky v podnik\u00e1n\u00ed a neboj\u00edte se jednoduch\u00fdch algebraick\u00fdch transformac\u00ed na \u00farovni 5. t\u0159\u00eddy, v\u00edtejte pod kat!<\/p>\n<p>\u010cl\u00e1nek bude u\u017eite\u010dn\u00fd t\u011bm, kdo implementuj\u00ed <i>WMS<\/i>-syst\u00e9my, pracuj\u00ed v oblasti skladov\u00e9 nebo v\u00fdrobn\u00ed logistiky, stejn\u011b jako program\u00e1tor\u016fm, kte\u0159\u00ed se zaj\u00edmaj\u00ed o aplikace matematiky v podnik\u00e1n\u00ed a optimalizaci proces\u016f ve firm\u011b.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h4>\u00davodn\u00ed \u010d\u00e1st<\/h4>\n<p>\nTato publikace pokra\u010duje v cyklu \u010dl\u00e1nk\u016f, ve kter\u00fdch se d\u011bl\u00edme o sv\u00e9 \u00fasp\u011b\u0161n\u00e9 zku\u0161enosti s implementac\u00ed optimaliza\u010dn\u00edch algoritm\u016f do skladov\u00fdch proces\u016f. <\/p>\n<p>V <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/463289\/\">p\u0159edchoz\u00ed \u010dl\u00e1nku<\/a><\/noindex> se zde popisuje specifika skladu, do kter\u00e9ho jsme implementovali <i>WMS<\/i>-syst\u00e9m, a tak\u00e9 se rozeb\u00edr\u00e1, pro\u010d bylo nutn\u00e9 \u0159e\u0161it \u00falohu klasifikace zbytkov\u00fdch partii zbo\u017e\u00ed p\u0159i implementaci <i>WMS<\/i>-syst\u00e9mu, a jak jsme to ud\u011blali.<\/p>\n<p>Kdy\u017e jsme dokon\u010dili psan\u00ed \u010dl\u00e1nku o optimaliza\u010dn\u00edch algoritmech, vy\u0161lo to na velmi velk\u00fd text, tak\u017ee nasb\u00edran\u00fd materi\u00e1l jsme se rozhodli rozd\u011blit na 2 \u010d\u00e1sti:<\/p>\n<ul>\n<li>V prvn\u00ed \u010d\u00e1sti (tento \u010dl\u00e1nek) se pod\u011bl\u00edme o to, jak jsme \u201estav\u011bli\u201c matematick\u00fd model \u00falohy a jak\u00e9 velk\u00e9 probl\u00e9my n\u00e1s p\u0159ekvapiv\u011b potkaly p\u0159i zpracov\u00e1n\u00ed a transformaci vstupn\u00edch dat pro algoritmus.<\/li>\n<li>Ve druh\u00e9 \u010d\u00e1sti podrobn\u011b probereme realizaci algoritmu v jazyce <i>C++<\/i>, provedeme v\u00fdpo\u010detn\u00ed experiment a shrneme zku\u0161enosti, kter\u00e9 jsme z\u00edskali p\u0159i implementaci t\u011bchto \u201einteligentn\u00edch technologi\u00ed\u201c do obchodn\u00edch proces\u016f z\u00e1kazn\u00edka.<\/li>\n<\/ul>\n<p>\nJak \u010d\u00edst \u010dl\u00e1nek. Pokud jste \u010detli p\u0159edchoz\u00ed \u010dl\u00e1nek, m\u016f\u017eete p\u0159e\u010d\u00edst p\u0159\u00edmo kapitolu \u201eP\u0159ehled st\u00e1vaj\u00edc\u00edch \u0159e\u0161en\u00ed\u201c, pokud ne, pak je popis \u0159e\u0161en\u00e9ho probl\u00e9mu ve spoileru n\u00ed\u017ee.<\/p>\n<p><b class=\"spoiler_title\">Popis \u0159e\u0161en\u00e9ho probl\u00e9mu ve skladu z\u00e1kazn\u00edka<\/b><\/p>\n<h4>\u00dazk\u00e9 m\u00edsto v procesech<\/h4>\n<p>\nV roce 2018 jsme realizovali projekt implementace <i>WMS<\/i>-syst\u00e9my na sklad\u011b \u201eObchodn\u00ed d\u016fm \u201eLD\u201c v \u010celjabinsku. Implementovali produkt \u201e1C-Logistika: \u0158\u00edzen\u00ed skladu 3\u201c na 20 pracovn\u00edch m\u00edst: oper\u00e1to\u0159i, skladn\u00edci, \u0159idi\u010di vysokozdvi\u017en\u00fdch voz\u00edk\u016f. <i>WMS<\/i>, sklad m\u00e1 pr\u016fm\u011brn\u011b p\u0159ibli\u017en\u011b 4 tis\u00edce m2, po\u010det reg\u00e1l\u016f 5000 a po\u010det SKU 4500. Na sklad\u011b se uchov\u00e1vaj\u00ed kulov\u00e9 kohouty vlastn\u00ed v\u00fdroby r\u016fzn\u00fdch velikost\u00ed od 1 kg do 400 kg. Z\u00e1soby na skladu se uchov\u00e1vaj\u00ed v rozpisu podle \u0161ar\u017e\u00ed, proto\u017ee existuje pot\u0159eba v\u00fdb\u011bru zbo\u017e\u00ed podle FIFO.<\/p>\n<p>B\u011bhem projektov\u00e1n\u00ed sch\u00e9mat automatizace skladov\u00fdch proces\u016f jsme se setkali se st\u00e1vaj\u00edc\u00edm probl\u00e9mem neoptim\u00e1ln\u00edho skladov\u00e1n\u00ed z\u00e1sob. Specifika skladov\u00e1n\u00ed a ukl\u00e1d\u00e1n\u00ed kohout\u016f je takov\u00e1, \u017ee v jedn\u00e9 sk\u0159\u00ed\u0148ce pro kusov\u00e9 skladov\u00e1n\u00ed m\u016f\u017ee b\u00fdt pouze sortiment jedn\u00e9 \u0161ar\u017ee (viz obr. 1). Produkce p\u0159ich\u00e1z\u00ed na sklad denn\u011b a ka\u017ed\u00fd p\u0159\u00edjem je samostatn\u00e1 \u0161ar\u017ee. Celkem, v d\u016fsledku jednoho m\u011bs\u00edce pr\u00e1ce skladu, vznik\u00e1 30 samostatn\u00fdch \u0161ar\u017e\u00ed, p\u0159i\u010dem\u017e ka\u017ed\u00e1 mus\u00ed b\u00fdt ulo\u017eena v samostatn\u00e9 sk\u0159\u00ed\u0148ce. Zbo\u017e\u00ed se \u010dasto vyb\u00edr\u00e1 nikoli cel\u00fdmi paletami, ale kusy, a jako v\u00fdsledek, v oblasti kusov\u00e9ho v\u00fdb\u011bru je v mnoha sk\u0159\u00ed\u0148k\u00e1ch takov\u00fd obraz: ve sk\u0159\u00ed\u0148ce o objemu p\u0159es 1m3 le\u017e\u00ed n\u011bkolik kus\u016f kohout\u016f, kter\u00e9 zab\u00edraj\u00ed m\u00e9n\u011b ne\u017e 5-10% objemu sk\u0159\u00ed\u0148ky. <\/p>\n<p><img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/a7c03f2302c3be02c00c670453353f16.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Obr 1. Foto n\u011bkolika kus\u016f ve sk\u0159\u00ed\u0148ce.<\/i><\/p>\n<p>Je evidentn\u00ed neoptim\u00e1ln\u00ed vyu\u017eit\u00ed skladov\u00fdch kapacit. Abych mohl ilustrovat rozsah probl\u00e9mu, mohu uv\u00e9st \u010d\u00edsla: pr\u016fm\u011brn\u011b takov\u00fdch sk\u0159\u00ed\u0148k\u016f o objemu p\u0159es 1m3 s \u201eminim\u00e1ln\u00edmi\u201c zbytky v r\u016fzn\u00fdch obdob\u00edch provozu skladu je od 100 do 300 sk\u0159\u00ed\u0148\u011bk. Vzhledem k tomu, \u017ee sklad je relativn\u011b mal\u00fd, v sez\u00f3n\u00e1ch zat\u00ed\u017een\u00ed skladu se tento faktor st\u00e1v\u00e1 \u201e\u00fazk\u00fdm hrdlem\u201c, kter\u00e9 v\u00fdrazn\u011b zpomaluje procesy p\u0159\u00edjmu a expedice.<\/p>\n<h4>N\u00e1pad na \u0159e\u0161en\u00ed probl\u00e9mu.<\/h4>\n<p>\nObjevila se my\u0161lenka: \u0161ar\u017ee zbytk\u016f s nejbl\u00ed\u017ee datovan\u00fdmi zbytky slou\u010dit do jedn\u00e9 spole\u010dn\u00e9 \u0161ar\u017ee a tyto zbytky s unifikovanou \u0161ar\u017e\u00ed um\u00edstit kompaktn\u011b dohromady v jedn\u00e9 sk\u0159\u00ed\u0148ce, nebo ve v\u00edce, pokud m\u00edsto v jedn\u00e9 nebude sta\u010dit pro um\u00edst\u011bn\u00ed v\u0161ech zb\u00fdvaj\u00edc\u00edch. P\u0159\u00edklad takov\u00e9 \u201ekomprese\u201c je zn\u00e1zorn\u011bn na obr\u00e1zku 2.<\/p>\n<p><img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/792f114a7afa6272a6d152a784650681.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Obr.2. Sch\u00e9ma komprese zbytk\u016f ve sk\u0159\u00ed\u0148k\u00e1ch.<\/i><\/p>\n<p>To zna\u010dn\u011b zkracuje prostor, kter\u00fd bude vyu\u017e\u00edv\u00e1n pro nov\u00e9 zbo\u017e\u00ed. V situaci, kdy jsou skladovac\u00ed kapacity p\u0159et\u00ed\u017een\u00e9, je takov\u00fd krok mimo\u0159\u00e1dn\u011b nutn\u00fd, jinak m\u016f\u017ee voln\u00e9ho m\u00edsta pro nov\u00e9 zbo\u017e\u00ed jednodu\u0161e nedost\u00e1vat, co\u017e povede k zablokov\u00e1n\u00ed skladov\u00fdch proces\u016f um\u00edst\u011bn\u00ed a z\u00e1sobov\u00e1n\u00ed a t\u00edm i k zablokov\u00e1n\u00ed p\u0159\u00edjmu a expedice. D\u0159\u00edve, p\u0159ed zaveden\u00edm syst\u00e9mu WMS, se tento \u00fakol vykon\u00e1val ru\u010dn\u011b, co\u017e bylo neefektivn\u00ed, proto\u017ee proces vyhled\u00e1v\u00e1n\u00ed vhodn\u00fdch z\u00e1sob v reg\u00e1lech byl dost zdlouhav\u00fd. Nyn\u00ed, s implementac\u00ed syst\u00e9mu WMS, jsme se rozhodli proces automatizovat, urychlit a u\u010dinit ho inteligentn\u00edm.<\/p>\n<p>Proces \u0159e\u0161en\u00ed tohoto \u00fakolu je rozd\u011blen do 2 etap: <\/p>\n<ul>\n<li>v prvn\u00ed etap\u011b hled\u00e1me bl\u00edzk\u00e9 skupiny \u0161ar\u017e\u00ed podle data pro zhu\u0161t\u011bn\u00ed (tomu se v\u011bnujeme v \u010dl\u00e1nku) <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/463289\/\">p\u0159edchoz\u00ed \u010dl\u00e1nek<\/a><\/noindex>);<\/li>\n<li>ve druh\u00e9 etap\u011b pro ka\u017edou skupinu \u0161ar\u017e\u00ed vypo\u010d\u00edt\u00e1me co nejkompaktn\u011bj\u0161\u00ed um\u00edst\u011bn\u00ed zbytk\u016f zbo\u017e\u00ed v reg\u00e1lech. <\/li>\n<\/ul>\n<p>\nV tomto \u010dl\u00e1nku se zam\u011b\u0159\u00edme na druhou etapu algoritmu.<\/p>\n<h4>P\u0159ehled st\u00e1vaj\u00edc\u00edch \u0159e\u0161en\u00ed<\/h4>\n<p>\nNe\u017e p\u0159ejdeme k popisu algoritm\u016f, kter\u00e9 jsme vyvinuli, stoj\u00ed za to ud\u011blat kr\u00e1tk\u00fd p\u0159ehled ji\u017e existuj\u00edc\u00edch syst\u00e9m\u016f na trhu <i>WMS<\/i>, kter\u00e9 realizuj\u00ed podobn\u00e9 funkce optim\u00e1ln\u00edho zhu\u0161t\u011bn\u00ed.<\/p>\n<p>V prvn\u00ed \u0159ad\u011b je t\u0159eba zm\u00ednit produkt \u201e1C: Podnik 8. WMS Logistika. \u0158\u00edzen\u00ed skladu 4\u201c, kter\u00fd pat\u0159\u00ed a je \u0161\u00ed\u0159en firmou 1C a spad\u00e1 do \u010dtvrt\u00e9 generace <i>WMS<\/i>-syst\u00e9m\u016f, vyvinut\u00fdch firmou AXELOT. V tomto syst\u00e9mu je deklarov\u00e1na funkce komprese, jej\u00edm\u017e c\u00edlem je slou\u010dit jednotliv\u00e9 zbytky zbo\u017e\u00ed do jedn\u00e9 spole\u010dn\u00e9 reg\u00e1lov\u00e9 jednotky. Je t\u0159eba podotknout, \u017ee funkce komprese v takov\u00e9m syst\u00e9mu zahrnuje tak\u00e9 dal\u0161\u00ed mo\u017enosti, nap\u0159\u00edklad, opravu um\u00edst\u011bn\u00ed zbo\u017e\u00ed v reg\u00e1lech podle jejich ABC t\u0159\u00edd, ale na ty se nezam\u011b\u0159\u00edme. <\/p>\n<p>Pokud analyzujeme k\u00f3d syst\u00e9mu \u201e1C: Enterprise 8. WMS Logistika. \u0158\u00edzen\u00ed skladu 4\u201c (kter\u00fd je v t\u00e9to \u010d\u00e1sti funk\u010dnosti otev\u0159en\u00fd), m\u016f\u017eeme dosp\u011bt k n\u00e1sleduj\u00edc\u00edmu z\u00e1v\u011bru. Algoritmus komprese zbytk\u016f realizuje pom\u011brn\u011b primitivn\u00ed liniovou logiku a o jak\u00e9koli \u201eoptim\u00e1ln\u00ed\u201c kompresi nem\u016f\u017ee b\u00fdt \u0159e\u010d. Samoz\u0159ejm\u011b, klasterizaci \u0161ar\u017e\u00ed nep\u0159edpokl\u00e1d\u00e1. N\u011bkolik klient\u016f, u nich\u017e byl tento syst\u00e9m implementov\u00e1n, si st\u011b\u017eovalo na v\u00fdsledky pl\u00e1nov\u00e1n\u00ed komprese. Nap\u0159\u00edklad, \u010dasto se v praxi p\u0159i kompresi vyskytlo n\u00e1sleduj\u00edc\u00ed: 100 ks zbytk\u016f z jedn\u00e9 bu\u0148ky je pl\u00e1nov\u00e1no p\u0159esunout do jin\u00e9 bu\u0148ky, kde je 1 ks zbo\u017e\u00ed, p\u0159i\u010dem\u017e optim\u00e1ln\u011b z hlediska \u010dasov\u00fdch n\u00e1klad\u016f by bylo lep\u0161\u00ed ud\u011blat to naopak.<\/p>\n<p>Funkce komprese zbytk\u016f zbo\u017e\u00ed v bu\u0148k\u00e1ch je tak\u00e9 deklarov\u00e1na v mnoha zahrani\u010dn\u00edch <i>WMS<\/i>-syst\u00e9mech, ale bohu\u017eel nem\u00e1me \u017e\u00e1dn\u00e9 skute\u010dn\u00e9 recenze o \u00fa\u010dinnosti pr\u00e1ce algoritm\u016f (to je obchodn\u00ed tajemstv\u00ed), ani t\u00edm m\u00e9n\u011b p\u0159edstavu o hloubce jejich logiky (propriet\u00e1rn\u00ed software se zav\u0159en\u00fdm k\u00f3dem), tak\u017ee nem\u016f\u017eeme soudit.<\/p>\n<h4>Hled\u00e1n\u00ed matematick\u00e9ho modelu \u00falohy<\/h4>\n<p>\nAbychom navrhli kvalitn\u00ed algoritmy pro \u0159e\u0161en\u00ed \u00falohy, je nejprve nutn\u00e9 tuto \u00falohu jasn\u011b matematicky formulovat, co\u017e ud\u011bl\u00e1me.<\/p>\n<p>Existuje mnoho bun\u011bk <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/bfff1fb95dd0c633ada02b9398778eab.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, ve kter\u00fdch se nach\u00e1zej\u00ed zbytky n\u011bjak\u00e9ho zbo\u017e\u00ed. D\u00e1le budou tyto bu\u0148ky naz\u00fdv\u00e1ny bu\u0148kami-d\u00e1rci. Ozna\u010d\u00edme <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/50ef693482cd4cb27410b30b0bc107b1.jpeg\" style=\"display:block;margin: 0 auto;\" \/> objem zbo\u017e\u00ed nach\u00e1zej\u00edc\u00edho se v bu\u0148ce <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/dc7faf1656fb12c8e467fe3a5b8977fa.jpeg\" style=\"display:block;margin: 0 auto;\" \/>$.<\/p>\n<p>Je d\u016fle\u017eit\u00e9 \u0159\u00edci, \u017ee v procesu komprese m\u016f\u017ee \u00fa\u010dastnit pouze jedno zbo\u017e\u00ed jedn\u00e9 \u0161ar\u017ee, nebo n\u011bkolika \u0161ar\u017e\u00ed, kter\u00e9 byly p\u0159edt\u00edm slou\u010deny do klastru (\u010dti <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/463289\/\">p\u0159edchoz\u00ed \u010dl\u00e1nek<\/a><\/noindex>), co\u017e je d\u00e1no specifikou skladov\u00e1n\u00ed a ulo\u017een\u00ed zbo\u017e\u00ed. Pro r\u016fzn\u00e9 zbo\u017e\u00ed nebo r\u016fzn\u00e9 klastery \u0161ar\u017e\u00ed by m\u011bla b\u00fdt spu\u0161t\u011bna vlastn\u00ed odd\u011blen\u00e1 procedura komprese.<\/p>\n<p>Existuje mnoho bun\u011bk <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/b9aafca691626263d8ecc2faed8dfcfe.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, do kter\u00fdch mohou b\u00fdt potenci\u00e1ln\u011b um\u00edst\u011bny zbytky z bun\u011bk-d\u00e1rc\u016f. Tyto bu\u0148ky budeme d\u00e1le naz\u00fdvat bu\u0148kami-kontejnery. Mohou to b\u00fdt jak voln\u00e9 bu\u0148ky ve skladu, tak bu\u0148ky-d\u00e1rci z mno\u017estv\u00ed <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/25731bc72091e2284e76c434d2abdcfd.jpeg\" style=\"display:block;margin: 0 auto;\" \/>. V\u017edy je mno\u017eina <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/d407f97344131a3056b1eab1d3dd7dcd.jpeg\" style=\"display:block;margin: 0 auto;\" \/> podmno\u017einou <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/581806d446f3d8c91927045249698e71.jpeg\" style=\"display:block;margin: 0 auto;\" \/>.<\/p>\n<p>Pro ka\u017edou bu\u0148ku <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/b084d5852a1e4f00d2498640534d66e9.jpeg\" style=\"display:block;margin: 0 auto;\" \/> z mno\u017einy <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/236efb40a21865f78240c8e14303cc2e.jpeg\" style=\"display:block;margin: 0 auto;\" \/> jsou stanovena omezen\u00ed na kapacitu <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/fe253cfe5f2aa39bc8e064674fb206f8.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, m\u011b\u0159en\u00e9 v dm3. Jeden dm3 p\u0159edstavuje krychli se stranami 10 cm. Produkty ulo\u017een\u00e9 ve skladu jsou dostate\u010dn\u011b velk\u00e9, tak\u017ee v tomto p\u0159\u00edpad\u011b takov\u00e1 diskr\u00e9tnost zcela sta\u010d\u00ed. <\/p>\n<p>Je d\u00e1na matice nejkrat\u0161\u00edch vzd\u00e1lenost\u00ed <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/48c133b0affa17f6a2367a02241d5f17.jpeg\" style=\"display:block;margin: 0 auto;\" \/> v metrech mezi ka\u017edou dvojic\u00ed bun\u011bk <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/8fd860e331a8e42dd258857bdf580c05.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, kde <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/feb9a48c6e9e4ccd8e9fa1db5565e96e.jpeg\" style=\"display:block;margin: 0 auto;\" \/> a <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/d9a48a8a22ea984d0769373c5620c99a.jpeg\" style=\"display:block;margin: 0 auto;\" \/> pat\u0159\u00ed do mno\u017ein <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/e2dd20fda8a8b0b5ea2173c14f04fe00.jpeg\" style=\"display:block;margin: 0 auto;\" \/> a <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/0dabafdb55ac6b8495f6d5f657d6c01d.jpeg\" style=\"display:block;margin: 0 auto;\" \/> odpov\u00eddaj\u00edc\u00edm zp\u016fsobem. <\/p>\n<p>Ozna\u010dme <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/2994defad9bb0a44741f31a85273abf2.jpeg\" style=\"display:block;margin: 0 auto;\" \/> n\u00e1klady na p\u0159esun zbo\u017e\u00ed z bu\u0148ky<img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/a2e54425ec786d3a88290dda47f4b9cb.jpeg\" style=\"display:block;margin: 0 auto;\" \/> do bu\u0148ky <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/bf4a9f1a1f396a9b7b6244cf8c77ecc8.jpeg\" style=\"display:block;margin: 0 auto;\" \/>. Ozna\u010dme <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/6f4c10386fc638f6ca37e0ccdcf4ccb4.jpeg\" style=\"display:block;margin: 0 auto;\" \/> n\u00e1klady na v\u00fdb\u011br kontejneru <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/613d619ea5951551427f0cd45c7f79bf.jpeg\" style=\"display:block;margin: 0 auto;\" \/> pro p\u0159esun zbytk\u016f z jin\u00fdch bun\u011bk. Jak\u00fdm zp\u016fsobem a v jak\u00fdch jednotk\u00e1ch budou hodnoty vypo\u010d\u00edt\u00e1v\u00e1ny <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/22130f203fde6271e33cba0db14d6a80.jpeg\" style=\"display:block;margin: 0 auto;\" \/> a <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/d75c50be3ee4f8e02a9523f2d2109f0d.jpeg\" style=\"display:block;margin: 0 auto;\" \/> probereme d\u00e1le (viz \u010d\u00e1st p\u0159\u00edprava vstupn\u00edch dat), nyn\u00ed sta\u010d\u00ed \u0159\u00edci, \u017ee takov\u00e9 veli\u010diny budou p\u0159\u00edmo \u00fam\u011brn\u00e9 velikostem <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/5e4e80f122ac1fe43f94de2726c0d3b7.jpeg\" style=\"display:block;margin: 0 auto;\" \/> a <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/1b6a9d41ba4ad68d5a5fbae883b80596.jpeg\" style=\"display:block;margin: 0 auto;\" \/> odpov\u00eddaj\u00edc\u00edm zp\u016fsobem.<\/p>\n<p>Ozna\u010dme pomoc\u00ed <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/1ebfe4179740aff474a78d11a004aaa7.jpeg\" style=\"display:block;margin: 0 auto;\" \/> prom\u011bnnou, kter\u00e1 nab\u00fdv\u00e1 hodnoty 1, pokud se zbytky z bu\u0148ky <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/48f9789788c38746ba4ac0c947e0a4ca.jpeg\" style=\"display:block;margin: 0 auto;\" \/> p\u0159esunuj\u00ed do kontejneru <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/58ce0b4c9bfb946c00bffdc0c50a05d6.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, a 0 v opa\u010dn\u00e9m p\u0159\u00edpad\u011b. Ozna\u010dme pomoc\u00ed <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/642d5627193c55922be5274826b75cb4.jpeg\" style=\"display:block;margin: 0 auto;\" \/> prom\u011bnnou, kter\u00e1 nab\u00fdv\u00e1 hodnoty 1, pokud kontejner <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/6939c9f4daf2ecd531d9c2518c03401d.jpeg\" style=\"display:block;margin: 0 auto;\" \/> obsahuje zbytky zbo\u017e\u00ed, a 0 v opa\u010dn\u00e9m p\u0159\u00edpad\u011b.<\/p>\n<p><b>\u00dakol je formulov\u00e1n takto<\/b>: je t\u0159eba nal\u00e9zt takov\u00e9 mno\u017estv\u00ed kontejner\u016f <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/d6065db66f210083181dabb39f0e9e16.jpeg\" style=\"display:block;margin: 0 auto;\" \/> a t\u00edmto zp\u016fsobem \"p\u0159ipojit\" bu\u0148ky-d\u00e1rce ke kontejnerov\u00fdm bu\u0148k\u00e1m tak, aby se minimalizovala funkce<\/p>\n<p><img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/68d7f0271f9761fff2c762e0fe6f5207.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>p\u0159i omezen\u00edch<\/p>\n<p><img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/d57b8752aa4a8140e239dfa7fdc9ec36.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Celkov\u011b se b\u011bhem v\u00fdpo\u010dtu \u0159e\u0161en\u00ed \u00fakolu sna\u017e\u00edme: <\/p>\n<ul>\n<li>za prv\u00e9, \u0161et\u0159it skladov\u00e9 kapacity; <\/li>\n<li>za druh\u00e9, \u0161et\u0159it \u010das skladn\u00edk\u016f. <\/li>\n<\/ul>\n<p>\nPosledn\u00ed omezen\u00ed znamen\u00e1, \u017ee nem\u016f\u017eeme p\u0159esouvat zbo\u017e\u00ed do kontejneru, kter\u00fd nebyl vybr\u00e1n, a proto jsme na jeho v\u00fdb\u011br \"neponesli n\u00e1klady\". Tak\u00e9 toto omezen\u00ed znamen\u00e1, \u017ee objem p\u0159esouvan\u00e9ho zbo\u017e\u00ed z bun\u011bk do kontejneru nesm\u00ed p\u0159ekro\u010dit kapacitu kontejneru. \u0158e\u0161en\u00edm \u00fakolu budeme rozum\u011bt mno\u017estv\u00ed kontejner\u016f <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/db0f987f2d388ad1394d21404e183c93.jpeg\" style=\"display:block;margin: 0 auto;\" \/> a zp\u016fsoby p\u0159ipojen\u00ed bun\u011bk-d\u00e1rce k kontejner\u016fm.<\/p>\n<p>Takov\u00e1 formulace \u00fakolu optimalizace nen\u00ed nov\u00e1 a byla zkoum\u00e1na mnoha matematiky ji\u017e od po\u010d\u00e1tku 80. let minul\u00e9ho stolet\u00ed. V zahrani\u010dn\u00ed literatu\u0159e existuj\u00ed 2 \u00fakoly optimalizace s vhodn\u00fdm matematick\u00fdm modelem: <noindex><a rel=\"nofollow\" href=\"http:\/\/www.math.nsc.ru\/AP\/benchmarks\/CFLP\/cflp.html\">Single-Source Capacitated Facility Location Problem<\/a><\/noindex> a <noindex><a rel=\"nofollow\" href=\"https:\/\/waset.org\/publications\/10002290\/a-survey-of-discrete-facility-location-problems\">Multi-Source Capacitated Facility Location Problem<\/a><\/noindex> (o rozd\u00edlech \u00faloh budeme hovo\u0159it d\u00e1le). Je t\u0159eba \u0159\u00edci, \u017ee v matematick\u00e9 literatu\u0159e jsou formulace t\u011bchto dvou optimaliza\u010dn\u00edch \u00faloh definov\u00e1ny v term\u00ednech um\u00edst\u011bn\u00ed za\u0159\u00edzen\u00ed v ter\u00e9nu, odtud tak\u00e9 n\u00e1zev \u201eFacility Location\u201c. V z\u00e1sad\u011b se jedn\u00e1 o tradici, nebo\u0165 poprv\u00e9 vznikla pot\u0159eba \u0159e\u0161it takov\u00e9 kombinatorick\u00e9 \u00falohy v oblasti logistiky, p\u0159ev\u00e1\u017en\u011b v obrann\u00e9m pr\u016fmyslu v 50. letech minul\u00e9ho stolet\u00ed. V term\u00ednech um\u00edst\u011bn\u00ed za\u0159\u00edzen\u00ed se tyto \u00falohy formuluj\u00ed takto: <\/p>\n<ul>\n<li>Existuje kone\u010dn\u00e1 mno\u017eina m\u011bst, kde je potenci\u00e1ln\u011b mo\u017en\u00e9 um\u00edstit v\u00fdrobn\u00ed z\u00e1vody (d\u00e1le m\u011bsta-v\u00fdrobci). Pro ka\u017ed\u00e9 m\u011bsto-v\u00fdrobce jsou stanovena n\u00e1klady na jeho otev\u0159en\u00ed, stejn\u011b jako omezen\u00ed na v\u00fdrobn\u00ed kapacity otev\u0159en\u00e9ho z\u00e1vodu.<\/li>\n<li>Existuje kone\u010dn\u00e1 mno\u017eina m\u011bst, kde se skute\u010dn\u011b nach\u00e1z\u00ed z\u00e1kazn\u00edci (d\u00e1le m\u011bsta-z\u00e1kazn\u00edci). Pro ka\u017ed\u00e9 takov\u00e9 m\u011bsto-z\u00e1kazn\u00edka je stanovena pot\u0159eba po produkci. Pro zjednodu\u0161en\u00ed budeme p\u0159edpokl\u00e1dat, \u017ee produkt, kter\u00fd vyr\u00e1b\u011bj\u00ed z\u00e1vody a spot\u0159ebov\u00e1vaj\u00ed z\u00e1kazn\u00edci, je stejn\u00fd.<\/li>\n<li>Pro ka\u017ed\u00fd p\u00e1r m\u011bsto-v\u00fdrobce a m\u011bsto-z\u00e1kazn\u00edk je stanovena v\u00fd\u0161e p\u0159epravn\u00edch n\u00e1klad\u016f na dod\u00e1n\u00ed po\u017eadovan\u00e9ho objemu produkce od v\u00fdrobce k z\u00e1kazn\u00edkovi.<\/li>\n<\/ul>\n<p>\nJe t\u0159eba zjistit, v jak\u00fdch m\u011bstech otev\u0159\u00edt z\u00e1vody a jak p\u0159ipojit z\u00e1kazn\u00edky k t\u011bmto z\u00e1vod\u016fm, aby:<\/p>\n<ul>\n<li>Celkov\u00e9 n\u00e1klady na otev\u0159en\u00ed z\u00e1vod\u016f a p\u0159epravn\u00ed n\u00e1klady byly minim\u00e1ln\u00ed;<\/li>\n<li>Objem popt\u00e1vky z\u00e1kazn\u00edk\u016f, p\u0159ipojen\u00fdch k n\u011bjak\u00e9mu otev\u0159en\u00e9mu z\u00e1vodu, nep\u0159ekra\u010doval v\u00fdrobn\u00ed kapacity tohoto z\u00e1vodu.<\/li>\n<\/ul>\n<p>\nNyn\u00ed je vhodn\u00e9 zm\u00ednit jedin\u00e9 rozd\u00edly mezi t\u011bmito dv\u011bma klasick\u00fdmi \u00falohami:<\/p>\n<ul>\n<li>Single-Source Capacitated Facility Location Problem \u2013 z\u00e1kazn\u00edk je z\u00e1sobov\u00e1n pouze z jednoho otev\u0159en\u00e9ho z\u00e1vodu;<\/li>\n<li>Multi-Source Capacitated Facility Location Problem \u2013 z\u00e1kazn\u00edk m\u016f\u017ee b\u00fdt z\u00e1sobov\u00e1n z n\u011bkolika otev\u0159en\u00fdch z\u00e1vod\u016f sou\u010dasn\u011b.<\/li>\n<\/ul>\n<p>\nToto rozd\u00edlen\u00ed dvou \u00faloh se na prvn\u00ed pohled m\u016f\u017ee zd\u00e1t nev\u00fdznamn\u00fdm, ale ve skute\u010dnosti vede k naprosto odli\u0161n\u00e9 kombinatorick\u00e9 struktu\u0159e t\u011bchto \u00faloh a v d\u016fsledku toho k naprosto odli\u0161n\u00fdm algoritm\u016fm jejich \u0159e\u0161en\u00ed. Rozd\u00edl mezi \u00falohami je uveden na obr\u00e1zku n\u00ed\u017ee.<\/p>\n<p><img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/77962906c7de2fced174d4a2b7785cc2.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Obr. 3. a) Multi-Source Capacitated Facility Location Problem<\/i><\/p>\n<p><img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/0242437e488a1aea0f00ce9ede02886d.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Obr. 3. b) Single-Source Capacitated Facility Location Problem<\/i><\/p>\n<p>Ob\u011b \u00falohy <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/b16678811fceca32d18c94e71cfaa603.jpeg\" style=\"display:block;margin: 0 auto;\" \/>-je t\u011b\u017ek\u00fd, to znamen\u00e1, \u017ee neexistuje p\u0159esn\u00fd algoritmus, kter\u00fd by v polynomi\u00e1ln\u00edm \u010dase podle velikosti vstupn\u00edch dat vy\u0159e\u0161il tento \u00fakol. Jednodu\u0161eji \u0159e\u010deno, v\u0161echny p\u0159esn\u00e9 algoritmy pro \u0159e\u0161en\u00ed \u00fakolu budou pracovat exponenci\u00e1ln\u00ed \u010das, i kdy\u017e mo\u017en\u00e1 rychleji ne\u017e \u010dist\u00e9 prohled\u00e1v\u00e1n\u00ed variant. Vzhledem k tomu, \u017ee \u00fakol <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/09f42b4b905d9bdc3f00f21098f84ad7.jpeg\" style=\"display:block;margin: 0 auto;\" \/>-je t\u011b\u017ek\u00fd, budeme se zab\u00fdvat pouze p\u0159ibli\u017en\u00fdmi heuristikami, tedy algoritmy, kter\u00e9 budou stabiln\u011b po\u010d\u00edtat \u0159e\u0161en\u00ed velmi bl\u00edzk\u00e1 optim\u00e1ln\u00edm a budou pracovat dostate\u010dn\u011b rychle. Pokud m\u00e1te z\u00e1jem o takov\u00e9 \u00fakoly, zde lze naj\u00edt dobr\u00fd p\u0159ehled v ru\u0161tin\u011b.<\/p>\n<p>Pokud aplikujeme terminologii na\u0161eho \u00fakolu optim\u00e1ln\u00edho ukl\u00e1d\u00e1n\u00ed zbo\u017e\u00ed do bun\u011bk, pak:<\/p>\n<ul>\n<li>m\u011bsta-klienti \u2013 to jsou bu\u0148ky-d\u00e1rci <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/e6db70dbb85d1c7249f4c30e97e2942e.jpeg\" style=\"display:block;margin: 0 auto;\" \/> s zbytkem zbo\u017e\u00ed, <\/li>\n<li>m\u011bsta-v\u00fdrobci \u2013 bu\u0148ky-kontejnery <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/5ef31fe0483d2bc9a0c18b5dc25e9867.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, do kter\u00fdch se p\u0159edpokl\u00e1d\u00e1 ulo\u017een\u00ed zbytk\u016f z jin\u00fdch bun\u011bk,<\/li>\n<li>n\u00e1klady na dopravu \u2013 n\u00e1klady \u010dasu <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/afac567e9057a46de6e0f3d29df9315a.jpeg\" style=\"display:block;margin: 0 auto;\" \/> skladn\u00edka na p\u0159esun objemu zbo\u017e\u00ed z bu\u0148ky-d\u00e1rce <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/829df82255e40cb99024d7c8dd408d41.jpeg\" style=\"display:block;margin: 0 auto;\" \/> do bu\u0148ky-kontejner <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/b87c9d9260adb26ce623dbe80b4f22c2.jpeg\" style=\"display:block;margin: 0 auto;\" \/>; <\/li>\n<li>n\u00e1klady na otev\u0159en\u00ed podniku \u2013 n\u00e1klady na v\u00fdb\u011br kontejneru <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/db4d21fc2067a23b5af5bb01c412323a.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, rovn\u00e9 objemu bu\u0148ky-kontejneru <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/b631a01a65f1ffd3348cbcaeeab11f0d.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, vyn\u00e1soben\u00e9 ur\u010dit\u00fdm koeficientem \u00faspory voln\u00fdch objem\u016f (hodnota koeficientu je v\u017edy &gt; 1) (viz sekce p\u0159\u00edprava vstupn\u00edch dat).<\/li>\n<\/ul>\n<p>\nPot\u00e9, co byla analogie s klasick\u00fdmi probl\u00e9my dod\u00e1vek zaveden\u00e1, je nutn\u00e9 odpov\u011bd\u011bt na d\u016fle\u017eitou ot\u00e1zku, od kter\u00e9 z\u00e1vis\u00ed v\u00fdb\u011br architektury algoritmu \u0159e\u0161en\u00ed: je mo\u017en\u00e9 p\u0159esunut\u00ed zbytk\u016f z bu\u0148ky-d\u00e1rce pouze do jednoho a pouze jednoho kontejneru (Single-Source), \u010di je mo\u017en\u00e9 p\u0159esunut\u00ed zbytk\u016f do n\u011bkolika bun\u011bk-kontejner\u016f (Multi-Source)?<\/p>\n<p>Je t\u0159eba poznamenat, \u017ee v praxi ob\u011b formulace \u00fakolu existuj\u00ed. Uvedeme n\u00ed\u017ee v\u0161echny \"pro\" a \"proti\" pro ka\u017edou takovou formulaci:<\/p>\n<table>\n<tr>\n<th>Varianta \u00fakolu<\/th>\n<th>Klady varianty<\/th>\n<th>Z\u00e1pory varianty<\/th>\n<\/tr>\n<tr>\n<td>Single-Source<\/td>\n<td>Operace p\u0159esunu zbo\u017e\u00ed, vypo\u010d\u00edtan\u00e9 podle t\u00e9to varianty \u00fakolu:<\/p>\n<ul>\n<li>po\u017eaduj\u00ed m\u00e9n\u011b kontroly ze strany skladn\u00edka (vz\u00edt V\u0160E z jedn\u00e9 bu\u0148ky, ulo\u017eit V\u0160E do jin\u00e9 bu\u0148ky-kontejner), co\u017e eliminuje rizika: chyb p\u0159i p\u0159epo\u010d\u00edt\u00e1v\u00e1n\u00ed mno\u017estv\u00ed zbo\u017e\u00ed p\u0159i prov\u00e1d\u011bn\u00ed operac\u00ed \u201eUlo\u017eit do bu\u0148ky\u201c; chyb p\u0159i zad\u00e1v\u00e1n\u00ed p\u0159epo\u010d\u00edtan\u00e9ho mno\u017estv\u00ed do TSD;<\/li>\n<li>Nen\u00ed t\u0159eba \u010dasu na p\u0159epo\u010det po\u010dtu polo\u017eek p\u0159i prov\u00e1d\u011bn\u00ed operac\u00ed \u201eVlo\u017eit do bu\u0148ky\u201c a jejich zad\u00e1v\u00e1n\u00ed do TSD<\/li>\n<\/ul>\n<\/td>\n<td><\/td>\n<\/tr>\n<tr>\n<td>Multi-Source<\/td>\n<td>Komprese vypo\u010dten\u00e9 pro tuto variantu \u00fakolu jsou obvykle o 10-15 % kompaktn\u011bj\u0161\u00ed ne\u017e komprese vypo\u010dten\u00e9 pro variantu \u201eSingle-Source\u201c. Je v\u0161ak tak\u00e9 t\u0159eba poznamenat, \u017ee \u010d\u00edm men\u0161\u00ed je po\u010det zbytk\u016f v bu\u0148k\u00e1ch-d\u00e1rci, t\u00edm men\u0161\u00ed je toto rozd\u00edlen\u00ed v kompaktnosti<\/td>\n<td>Operace p\u0159esunu zbo\u017e\u00ed, vypo\u010d\u00edtan\u00e9 podle t\u00e9to varianty \u00fakolu:<\/p>\n<ul>\n<li>vy\u017eaduj\u00ed v\u011bt\u0161\u00ed kontrolu ze strany skladn\u00edka (je nutn\u00e9 p\u0159epo\u010d\u00edt\u00e1vat po\u010det zbo\u017e\u00ed p\u0159esunovan\u00e9ho do ka\u017ed\u00e9 z pl\u00e1novan\u00fdch bun\u011bk-kontejner\u016f), co\u017e eliminuje riziko chyby p\u0159i p\u0159epo\u010d\u00edt\u00e1v\u00e1n\u00ed zbo\u017e\u00ed a zad\u00e1v\u00e1n\u00ed dat do TSD p\u0159i prov\u00e1d\u011bn\u00ed operac\u00ed \u201eVlo\u017eit do bu\u0148ky\u201c<\/li>\n<li>Vy\u017eaduje \u010das na p\u0159epo\u010d\u00edt\u00e1v\u00e1n\u00ed po\u010dtu zbo\u017e\u00ed p\u0159i prov\u00e1d\u011bn\u00ed operac\u00ed \u201eVlo\u017eit do bu\u0148ky\u201c<\/li>\n<li>Vy\u017eaduje to \u010das na \u201eprovozn\u00ed n\u00e1klady\u201c (zastavit se, p\u0159istoupit k palet\u011b, naskenovat \u010d\u00e1rov\u00fd k\u00f3d bu\u0148ky-kontejneru) p\u0159i prov\u00e1d\u011bn\u00ed operac\u00ed \u201eVlo\u017eit do bu\u0148ky\u201c<\/li>\n<li>N\u011bkdy m\u016f\u017ee algoritmus \u201erozd\u011blovat\u201c mno\u017estv\u00ed t\u00e9m\u011b\u0159 pln\u00e9ho palety mezi velk\u00fdm mno\u017estv\u00edm bun\u011bk-kontejner\u016f, kde u\u017e je vhodn\u00e9 zbo\u017e\u00ed, co\u017e, z pohledu z\u00e1kazn\u00edka, bylo nep\u0159ijateln\u00e9<\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<\/table>\n<p><i>Tabulka 1. Klady a z\u00e1pory variant Single-Source a Multi-Source.<\/i><\/p>\n<p>Vzhledem k tomu, \u017ee po\u010det klad\u016f u varianty Single-Source je vy\u0161\u0161\u00ed, a tak\u00e9 s ohledem na fakt, \u017ee \u010d\u00edm men\u0161\u00ed je po\u010det zbytk\u016f v bu\u0148k\u00e1ch-d\u00e1rci, t\u00edm men\u0161\u00ed je rozd\u00edlnost v m\u00ed\u0159e kompaktnosti komprese vypo\u010dten\u00e9 pro ob\u011b varianty \u00falohy, jsme se rozhodli pro variantu Single-Source.<\/p>\n<p>Je t\u0159eba \u0159\u00edci, \u017ee \u0159e\u0161en\u00ed varianty Multi-Source m\u00e1 tak\u00e9 sv\u00e9 m\u00edsto. Existuje velk\u00e9 mno\u017estv\u00ed efektivn\u00edch algoritm\u016f pro jej\u00ed \u0159e\u0161en\u00ed, z nich\u017e v\u011bt\u0161ina spo\u010d\u00edv\u00e1 v \u0159e\u0161en\u00ed \u0159ady transportn\u00edch \u00faloh. Existuj\u00ed tak\u00e9 nejen efektivn\u00ed algoritmy, ale i elegantn\u00ed, nap\u0159\u00edklad,<noindex><a rel=\"nofollow\" href=\"http:\/\/www.mathnet.ru\/php\/archive.phtml?wshow=paper&amp;jrnid=da&amp;paperid=791&amp;option_lang=rus\"> zde.<\/a><\/noindex><\/p>\n<h4>P\u0159\u00edprava vstupn\u00edch dat<\/h4>\n<p>\nP\u0159edt\u00edm, ne\u017e se pust\u00edme do anal\u00fdzy a v\u00fdvoje algoritmu pro \u0159e\u0161en\u00ed \u00falohy, je nutn\u00e9 ur\u010dit, jak\u00e1 data a v jak\u00e9 podob\u011b mu budeme pod\u00e1vat jako vstup. S objemy zbytk\u016f zbo\u017e\u00ed v bu\u0148k\u00e1ch-d\u00e1rci a kapacitou bun\u011bk-kontejner\u016f nejsou probl\u00e9my, proto\u017ee to je trivi\u00e1ln\u00ed \u2013 takov\u00e9 veli\u010diny se budou m\u011b\u0159it v m3, ale s n\u00e1klady na vyu\u017eit\u00ed bu\u0148ky-kontejneru a matic\u00ed n\u00e1klad\u016f na p\u0159esun to nen\u00ed tak jednoduch\u00e9!<\/p>\n<p>Nejprve se pod\u00edv\u00e1me na v\u00fdpo\u010det <b>n\u00e1kladech na p\u0159esun zbo\u017e\u00ed<\/b> z bu\u0148ky-donora do bu\u0148ky-kontejneru. Nejprve je t\u0159eba se rozhodnout, v jak\u00fdch jednotk\u00e1ch budeme po\u010d\u00edtat n\u00e1klady na p\u0159esun. Dv\u011b nejz\u0159ejm\u011bj\u0161\u00ed mo\u017enosti jsou metry a sekundy. V '\u010dist\u00fdch' metrech je po\u010d\u00edt\u00e1n\u00ed n\u00e1klad\u016f na p\u0159esun nesmysln\u00e9. Uk\u00e1\u017eeme to na p\u0159\u00edkladu. P\u0159edpokl\u00e1dejme, \u017ee bu\u0148ka <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/990a5fae8988ddf41395483263de2bcc.jpeg\" style=\"display:block;margin: 0 auto;\" \/> se nach\u00e1z\u00ed na prvn\u00edm pat\u0159e, bu\u0148ka <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/9d17b98e807444f431d01f2e77fc96f7.jpeg\" style=\"display:block;margin: 0 auto;\" \/> je vzd\u00e1lena 30 metr\u016f a nach\u00e1z\u00ed se na druh\u00e9m pat\u0159e:<\/p>\n<ul>\n<li>P\u0159esun z <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/3188fd9853d5cda2834a5083539ac11d.jpeg\" style=\"display:block;margin: 0 auto;\" \/> v <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/e212a0be19ea687b1017c3aacec3df19.jpeg\" style=\"display:block;margin: 0 auto;\" \/> je n\u00e1kladn\u011bj\u0161\u00ed ne\u017e p\u0159esun z <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/d65e60dec37fb3b83c83ca1c566f1ee9.jpeg\" style=\"display:block;margin: 0 auto;\" \/> v <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/4168198a4c90bdd3dd4b7f0c904b06e0.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, proto\u017ee je snadn\u011bj\u0161\u00ed spou\u0161t\u011bt dol\u016f z druh\u00e9ho patra (1,5-2 metry od podlahy) ne\u017e zvedat na druh\u00e9, a\u010dkoli vzd\u00e1lenost bude kryta stejn\u00e1;<\/li>\n<li>P\u0159esunout 1 ks zbo\u017e\u00ed z bu\u0148ky <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/039864ccd0a2bd14a99a83494f056fa3.jpeg\" style=\"display:block;margin: 0 auto;\" \/> v <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/9f9bc7a256119b110f47760b145e174b.jpeg\" style=\"display:block;margin: 0 auto;\" \/> bude jednodu\u0161\u0161\u00ed ne\u017e p\u0159esunout 10 ks t\u00e9ho\u017e zbo\u017e\u00ed, a\u010dkoli vzd\u00e1lenost bude kryta stejn\u00e1.<\/li>\n<\/ul>\n<p>\nN\u00e1klady na p\u0159esun je lep\u0161\u00ed po\u010d\u00edtat v sekund\u00e1ch, proto\u017ee to umo\u017e\u0148uje zohlednit rozd\u00edly v patrech a rozd\u00edly v mno\u017estv\u00ed p\u0159esouvan\u00e9ho zbo\u017e\u00ed. Pro zaji\u0161t\u011bn\u00ed n\u00e1klad\u016f na p\u0159esun v sekund\u00e1ch mus\u00edme rozlo\u017eit operaci p\u0159esunu na element\u00e1rn\u00ed slo\u017eky a prov\u00e9st m\u011b\u0159en\u00ed \u010dasu na vykon\u00e1n\u00ed ka\u017ed\u00e9 element\u00e1rn\u00ed slo\u017eky.<\/p>\n<p>P\u0159edpokl\u00e1dejme, \u017ee z bu\u0148ky <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/538c4304e37f340a5a5a8e47e0ee2865.jpeg\" style=\"display:block;margin: 0 auto;\" \/> se p\u0159esouv\u00e1 <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/6c7e32728f4771726f8ef9b2d78111d6.jpeg\" style=\"display:block;margin: 0 auto;\" \/> ks zbo\u017e\u00ed do kontejneru. <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/fc2ad051b500eae5884404f4b9419841.jpeg\" style=\"display:block;margin: 0 auto;\" \/>P\u0159edpokl\u00e1dejme, \u017ee <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/6733192a31618a03e51e8e3133cb96ee.jpeg\" style=\"display:block;margin: 0 auto;\" \/> je pr\u016fm\u011brn\u00e1 rychlost pohybu pracovn\u00edka po skladu, m\u011b\u0159en\u00e1 v m\/s. P\u0159edpokl\u00e1dejme, \u017ee <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/97f7e9c65c2196fa586f957618d1c8a2.jpeg\" style=\"display:block;margin: 0 auto;\" \/> a <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/bbe48d987f180e2f9ccec6e090e6f942.jpeg\" style=\"display:block;margin: 0 auto;\" \/> jsou pr\u016fm\u011brn\u00e9 rychlosti jednor\u00e1zov\u00e9ho prov\u00e1d\u011bn\u00ed operac\u00ed vz\u00edt a polo\u017eit odpov\u00eddaj\u00edc\u00ed pro objem zbo\u017e\u00ed rovn\u00fd 4 dm3 (pr\u016fm\u011brn\u00fd objem, kter\u00fd bere pracovn\u00edk na skladu p\u0159i prov\u00e1d\u011bn\u00ed operac\u00ed). P\u0159edpokl\u00e1dejme, \u017ee <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/267d74648f49d5a2d063b1377c6d2fe6.jpeg\" style=\"display:block;margin: 0 auto;\" \/> a <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/fefdd606d5a81ba4e2ce57b107dfe1e6.jpeg\" style=\"display:block;margin: 0 auto;\" \/> je v\u00fd\u0161ka bun\u011bk, ze kter\u00fdch jsou vykon\u00e1v\u00e1ny operace vz\u00edt a polo\u017eit odpov\u00eddaj\u00edc\u00ed. Nap\u0159\u00edklad pr\u016fm\u011brn\u00e1 v\u00fd\u0161ka prvn\u00edho patra (podlaha) je 1 m, druh\u00e9ho patra 2 m atd. Pak vzorec pro v\u00fdpo\u010det celkov\u00e9ho \u010dasu na vykon\u00e1n\u00ed operace p\u0159esunu <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/a48ae3c2e9dc8f2c3108cb2be1f96c40.jpeg\" style=\"display:block;margin: 0 auto;\" \/> je n\u00e1sleduj\u00edc\u00ed:<\/p>\n<p><img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/55afb96b1141bb5656351bdaeba31ae4.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>V tabulce 2 jsou uvedeny statistiky doby vykon\u00e1n\u00ed ka\u017ed\u00e9 element\u00e1rn\u00ed operace, kter\u00e9 shrom\u00e1\u017edili pracovn\u00edci skladu s ohledem na specifiku skladovan\u00e9ho zbo\u017e\u00ed.<\/p>\n<table>\n<tr>\n<th>N\u00e1zev operace<\/th>\n<th>Ozna\u010den\u00ed<\/th>\n<th>Pr\u016fm\u011brn\u00e1 hodnota<\/th>\n<\/tr>\n<tr>\n<td>Pr\u016fm\u011brn\u00e1 rychlost pohybu pracovn\u00edka po skladu<\/td>\n<td><img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/dadbfb13d2b84b95ab2c5d653a21668b.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/td>\n<td>1,5 m\/s<\/td>\n<\/tr>\n<tr>\n<td>Pr\u016fm\u011brn\u00e1 rychlost vykon\u00e1n\u00ed jedn\u00e9 operace polo\u017eit (pro objem zbo\u017e\u00ed 4 dm3)<\/td>\n<td><img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/aa619b43a70a7cf646ad35d5c8883329.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/td>\n<td>2,4 s<\/td>\n<\/tr>\n<\/table>\n<p><i>Tabulka 2. Pr\u016fm\u011brn\u00fd \u010das vykon\u00e1n\u00ed skladov\u00fdch operac\u00ed<\/i><\/p>\n<p>S metodou v\u00fdpo\u010dtu n\u00e1klad\u016f na p\u0159esun jsme se ji\u017e dohodli. Nyn\u00ed je t\u0159eba zjistit, jak vypo\u010d\u00edtat <b>n\u00e1klady na v\u00fdb\u011br bu\u0148ky-kontejneru<\/b>Zde je v\u0161e mnohem, mnohem slo\u017eit\u011bj\u0161\u00ed ne\u017e n\u00e1klady na p\u0159esun, proto\u017ee: <\/p>\n<ul>\n<li>za prv\u00e9, n\u00e1klady by m\u011bly b\u00fdt ve p\u0159\u00edm\u00e9 z\u00e1vislosti na objemu bu\u0148ky \u2013 stejn\u00fd objem zbytk\u016f, kter\u00fd se p\u0159esouv\u00e1 z donorov\u00fdch bun\u011bk, je lep\u0161\u00ed vlo\u017eit do men\u0161\u00edho kontejneru ne\u017e do v\u011bt\u0161\u00edho kontejneru, pokud dan\u00fd objem pln\u011b pojme oba kontejnery. T\u00edmto zp\u016fsobem, minimalizuj\u00edc\u00ed celkov\u00e9 n\u00e1klady na v\u00fdb\u011br kontejner\u016f, se sna\u017e\u00edme u\u0161et\u0159it 'nedostate\u010dn\u00e9' voln\u00e9 skladov\u00e9 kapacity v oblasti sb\u011brn\u00e9ho m\u00edsta pro proveden\u00ed n\u00e1sledn\u00fdch operac\u00ed um\u00edst\u011bn\u00ed zbo\u017e\u00ed do bun\u011bk. Na obr\u00e1zku 4 jsou demonstrov\u00e1ny varianty p\u0159esouv\u00e1n\u00ed zbytk\u016f do velk\u00fdch a mal\u00fdch kontejner\u016f a d\u016fsledky t\u011bchto variant p\u0159esunu p\u0159i prov\u00e1d\u011bn\u00ed n\u00e1sledn\u00fdch skladov\u00fdch operac\u00ed.<\/li>\n<li>za druh\u00e9, proto\u017ee v \u0159e\u0161en\u00ed p\u016fvodn\u00edho \u00fakolu mus\u00edme minimalizovat pr\u00e1v\u011b celkov\u00e9 n\u00e1klady, co\u017e je sou\u010det jak n\u00e1klad\u016f na p\u0159esun, tak n\u00e1klad\u016f na v\u00fdb\u011br kontejner\u016f, bylo by nutn\u00e9 n\u011bjak\u00fdm zp\u016fsobem propojit objemy bun\u011bk v metrech krychlov\u00fdch se sekundami, co\u017e rozhodn\u011b nen\u00ed trivi\u00e1ln\u00ed.<\/li>\n<\/ul>\n<p>\n<img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/2c906f9e80b32fcb111fcba7000ea2ba.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Obr. 4. Varianty p\u0159esouv\u00e1n\u00ed zbytk\u016f do kontejner\u016f r\u016fzn\u00e9 kapacity.<\/i><\/p>\n<p>Na obr\u00e1zku 4 je \u010derven\u011b zn\u00e1zorn\u011bn objem zbytk\u016f, kter\u00fd se ji\u017e nevejde do kontejneru ve druh\u00e9 f\u00e1zi um\u00edst\u011bn\u00ed n\u00e1sledn\u00e9ho zbo\u017e\u00ed. <\/p>\n<p>N\u00e1sleduj\u00edc\u00ed po\u017eadavky na vypo\u010d\u00edtan\u00e1 \u0159e\u0161en\u00ed \u00fakolu pomohou propojit metry krychlov\u00e9 n\u00e1klad\u016f na v\u00fdb\u011br kontejneru se sekundami n\u00e1klad\u016f na p\u0159esun:<\/p>\n<ul>\n<li>Je nutn\u00e9, aby zbytky z donorov\u00e9 bu\u0148ky byly p\u0159esunuty do bu\u0148ky-kontejneru za ka\u017edou cenu, pokud to sni\u017euje celkov\u00fd po\u010det bun\u011bk-kontejner\u016f, ve kter\u00fdch se nach\u00e1z\u00ed zbo\u017e\u00ed.<\/li>\n<li>Je t\u0159eba dodr\u017eovat rovnov\u00e1hu mezi objemy kontejner\u016f a n\u00e1klady na p\u0159esun: nap\u0159\u00edklad, pokud je ve nov\u00e9m variantu \u0159e\u0161en\u00ed \u00fakolu ve srovn\u00e1n\u00ed s p\u0159edchoz\u00edm \u0159e\u0161en\u00edm v\u00fdhoda v objemu velik\u00e1, ale ztr\u00e1ta na \u010dase mal\u00e1, je nutn\u00e9 zvolit nov\u00fd variant.<\/li>\n<\/ul>\n<p>\nZa\u010dn\u011bme posledn\u00edm po\u017eadavkem. Abychom konkretizovali mnohozna\u010dn\u00e9 slovo 'rovnov\u00e1ha', provedli jsme anketu mezi zam\u011bstnanci skladu s c\u00edlem zjistit n\u00e1sleduj\u00edc\u00ed. M\u011bjme bu\u0148ku-kontejner objemu <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/2b831b12448ccaee33c528ac622b7ee3.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, do kter\u00e9 je ur\u010deno p\u0159esunout zbytky zbo\u017e\u00ed z donorov\u00fdch bun\u011bk a celkov\u00fd \u010das tohoto p\u0159esunu je roven <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/8050f4b02464164d334048bda86b3923.jpeg\" style=\"display:block;margin: 0 auto;\" \/>. Nech\u0165 je zde n\u011bkolik alternativn\u00edch mo\u017enost\u00ed um\u00edst\u011bn\u00ed stejn\u00e9ho mno\u017estv\u00ed zbo\u017e\u00ed z t\u011bchto donorov\u00fdch bun\u011bk do jin\u00fdch kontejner\u016f, p\u0159i\u010dem\u017e ka\u017ed\u00e9 um\u00edst\u011bn\u00ed m\u00e1 sv\u00e9 hodnocen\u00ed. <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/76f11cd5ab85f9092c8f458d01ac347b.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, kde <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/9e735d8a9c4cff3c69fd926eac8c85aa.jpeg\" style=\"display:block;margin: 0 auto;\" \/>&lt;<img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/d963e193a263a1505467c19e874f0aab.jpeg\" style=\"display:block;margin: 0 auto;\" \/> a <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/ff5d990cf5a1752d7bb45da9fd58cd7a.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, kde <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/485f34b3e720011c38740712cdb8edd9.jpeg\" style=\"display:block;margin: 0 auto;\" \/>&gt;<img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/c66b20d93fd1791e9f186f707b1517bb.jpeg\" style=\"display:block;margin: 0 auto;\" \/>. <\/p>\n<p>Ot\u00e1zka zn\u00ed: jak\u00e9 minimum objemu v\u00fdhry <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/86861ad2236d827efdc683d759d4c120.jpeg\" style=\"display:block;margin: 0 auto;\" \/> je p\u0159ijateln\u00e9, p\u0159i stanoven\u00e9 hodnot\u011b ztr\u00e1ty na \u010dase. <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/3d49171042fd83244c054dfd84e5c6bb.jpeg\" style=\"display:block;margin: 0 auto;\" \/>? \u041f\u043e\u044f\u0441\u043d\u0438\u043c \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435. \u0418\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u043e\u0441\u0442\u0430\u0442\u043a\u0438 \u043f\u043e\u043b\u0430\u0433\u0430\u043b\u043e\u0441\u044c \u0440\u0430\u0437\u043c\u0435\u0449\u0430\u0442\u044c \u0432 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u043e\u0431\u044a\u0435\u043c\u0430 1000 \u0434\u043c3 (1 \u043c3) \u0438 \u0432\u0440\u0435\u043c\u044f \u043d\u0430 \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0435\u043d\u0438\u0435 \u0441\u043e\u0441\u0442\u0430\u0432\u0438\u043b\u043e 70 \u0441\u0435\u043a\u0443\u043d\u0434. \u0415\u0441\u0442\u044c \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d\u0438\u044f \u043e\u0441\u0442\u0430\u0442\u043a\u043e\u0432 \u0432 \u0434\u0440\u0443\u0433\u043e\u0439 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u043e\u0431\u044a\u0435\u043c\u0430 500 \u0434\u043c3 \u0438 \u0432\u0440\u0435\u043c\u0435\u043d\u0435\u043c 130 \u0441\u0435\u043a\u0443\u043d\u0434. \u0412\u043e\u043f\u0440\u043e\u0441: \u0433\u043e\u0442\u043e\u0432\u044b \u043b\u0438 \u043c\u044b \u0442\u0440\u0430\u0442\u0438\u0442\u044c \u0435\u0449\u0435 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 60 \u0441\u0435\u043a\u0443\u043d\u0434 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043a\u043b\u0430\u0434\u043e\u0432\u0449\u0438\u043a\u0430 \u043d\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0435\u043d\u0438\u044f \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0441\u044d\u043a\u043e\u043d\u043e\u043c\u0438\u0442\u044c 500 \u0434\u043c3 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e\u0433\u043e \u043e\u0431\u044a\u0435\u043c\u0430? \u041f\u043e \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430\u043c \u043e\u043f\u0440\u043e\u0441\u0430 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432 \u0441\u043a\u043b\u0430\u0434\u0430 \u0431\u044b\u043b\u0430 \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430.<\/p>\n<p><img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/283289c63fe1232e95b73d1dffdaa030.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Obr. 5. Diagram z\u00e1vislosti minim\u00e1ln\u00ed p\u0159\u00edpustn\u00e9 \u00faspory objemu na zv\u00fd\u0161en\u00ed rozd\u00edlu v dob\u011b prov\u00e1d\u011bn\u00ed operace.<\/i><\/p>\n<p>To znamen\u00e1, \u017ee pokud dodate\u010dn\u00e9 n\u00e1klady na \u010das \u010din\u00ed 40 sekund, jsme p\u0159ipraveni je utratit pouze tehdy, kdy\u017e zisk v objemu bude minim\u00e1ln\u011b 500 dm3. I kdy\u017e v z\u00e1vislosti existuje m\u00edrn\u00e1 nelinearita, pro zjednodu\u0161en\u00ed dal\u0161\u00edch v\u00fdpo\u010dt\u016f budeme pova\u017eovat z\u00e1vislost mezi veli\u010dinami za line\u00e1rn\u00ed a popsanou nerovnost\u00ed.<\/p>\n<p><img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/666802648033d918a1119e58963feffe.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Na obr\u00e1zku n\u00ed\u017ee zv\u00e1\u017e\u00edme n\u00e1sleduj\u00edc\u00ed zp\u016fsoby um\u00edst\u011bn\u00ed zbo\u017e\u00ed do kontejner\u016f.<\/p>\n<p><img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/a1cb3a5bce4c369f63b3ebeebb738911.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Obr. 6. Varianta (a): 2 kontejnery, celkov\u00fd objem 400 dm3, celkov\u00fd \u010das 150 s.<\/i><br \/>\n<img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/a13f35b0e2a188e9a8cbf27bcfbf0292.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Obr. 6. Varianta (b): 2 kontejnery, celkov\u00fd objem 600 dm3, celkov\u00fd \u010das 190 s.<\/i><br \/>\n<img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/35699c8bd00546c9828dbe50d4b53c46.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Obr. 6. Varianta (c): 1 kontejner, celkov\u00fd objem 400 dm3, celkov\u00fd \u010das 200 s.<\/i><\/p>\n<p>Varianta (a) v\u00fdb\u011bru kontejner\u016f je preferovan\u011bj\u0161\u00ed ne\u017e p\u016fvodn\u00ed varianta, proto\u017ee plat\u00ed nerovnost: (800-400)\/10 &gt;= 150-120, z \u010deho\u017e vypl\u00fdv\u00e1 40 &gt;= 30. Varianta (b) je m\u00e9n\u011b preferovan\u00e1 ne\u017e p\u016fvodn\u00ed varianta, proto\u017ee nerovnost nen\u00ed spln\u011bna: (800-600)\/10 &gt;= 190-150, z \u010deho\u017e vypl\u00fdv\u00e1 20 &gt;= 40. Varianta (c) v\u0161ak do t\u00e9to logiky nezapad\u00e1! Zva\u017eme tuto variantu podrobn\u011bji. Na jedn\u00e9 stran\u011b plat\u00ed nerovnost (800-400)\/10 &gt;= 200-120, co\u017e znamen\u00e1, \u017ee nerovnost 40 &gt;= 80 nen\u00ed spln\u011bna, co\u017e nazna\u010duje, \u017ee p\u0159\u00ednos v objemu nestoj\u00ed za tak velkou ztr\u00e1tu na \u010dase. <\/p>\n<p>Na druh\u00e9 stran\u011b v takov\u00e9 variant\u011b (c) nejen\u017ee sni\u017eujeme celkov\u00fd obsazen\u00fd objem, ale tak\u00e9 sni\u017eujeme po\u010det obsazen\u00fdch bunkr\u016f, co\u017e je prvn\u00ed z dvou d\u016fle\u017eit\u00fdch po\u017eadavk\u016f na vypo\u010d\u00edtan\u00e1 \u0159e\u0161en\u00ed uveden\u00fdch v\u00fd\u0161e. Je z\u0159ejm\u00e9, \u017ee pro spln\u011bn\u00ed tohoto po\u017eadavku je nutn\u00e9 do lev\u00e9 strany nerovnosti p\u0159idat n\u011bjakou kladnou konstantu. <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/61d6b2cb21474a2f4512d6a130a15a0a.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, a p\u0159i\u010dem\u017e tuto konstantu je t\u0159eba p\u0159id\u00e1vat pouze tehdy, kdy\u017e se po\u010det kontejner\u016f sni\u017euje. P\u0159ipome\u0148me, \u017ee <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/d80d33679896035041d0ca9a78e8177a.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u2014 je prom\u011bnn\u00e1, kter\u00e1 je rovna 1, kdy\u017e je kontejner <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/a83cd6273e544b63099939e6845740fb.jpeg\" style=\"display:block;margin: 0 auto;\" \/> vybr\u00e1n, a 0 kdy\u017e kontejner. <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/bc94d9e952782e630125a6e8919ba5ad.jpeg\" style=\"display:block;margin: 0 auto;\" \/> nen\u00ed vybr\u00e1no. Ozna\u010d\u00edme, <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/1e3fb5d7013e60f67c56a56899630852.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u2013 mno\u017estv\u00ed kontejner\u016f v p\u016fvodn\u00edm \u0159e\u0161en\u00ed a <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/26ac9732af37e865cea1bb10a343175c.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u2013 mno\u017estv\u00ed kontejner\u016f v nov\u00e9m \u0159e\u0161en\u00ed. V obecn\u00e9 podob\u011b nov\u00e9 nerovnost bude vypadat takto:<\/p>\n<p><img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/1237914e5fdafcc6013203e2624009d0.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Zpracov\u00e1n\u00edm v\u00fd\u0161e uveden\u00e9 nerovnosti z\u00edsk\u00e1v\u00e1me <\/p>\n<p><img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/80b039f9ef44301c3b624ada42c28db8.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Na z\u00e1klad\u011b toho m\u00e1me vzorec pro v\u00fdpo\u010det celkov\u00fdch n\u00e1klad\u016f <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/cb5bce584fee0156b23adbab83f66b33.jpeg\" style=\"display:block;margin: 0 auto;\" \/> n\u011bjak\u00e9 varianty \u0159e\u0161en\u00ed \u00falohy:<\/p>\n<p><img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/34f382d40368a980674914916c65b4ec.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><b>Ale nyn\u00ed vyvst\u00e1v\u00e1 ot\u00e1zka<\/b>: jakou hodnotu by m\u011bla m\u00edt takov\u00e1 konstanta <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/e4754f88bcddfba85b3c785512bee697.jpeg\" style=\"display:block;margin: 0 auto;\" \/>? \u041e\u0447\u0435\u0432\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u0435\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0431\u043e\u043b\u044c\u0448\u0438\u043c, \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0432\u0441\u0435\u0433\u0434\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u043b\u043e\u0441\u044c \u043f\u0435\u0440\u0432\u043e\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u0435 \u043a \u0440\u0435\u0448\u0435\u043d\u0438\u044f\u043c \u0437\u0430\u0434\u0430\u0447\u0438. \u041c\u043e\u0436\u043d\u043e \u043a\u043e\u043d\u0435\u0447\u043d\u043e \u0432\u0437\u044f\u0442\u044c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u044b \u0440\u0430\u0432\u043d\u043e\u0435 103 \u0438\u043b\u0438 106, \u043d\u043e \u0445\u043e\u0442\u0435\u043b\u043e\u0441\u044c \u0431\u044b \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c \u0442\u0430\u043a\u0438\u0445 \u00abmagic numbers\u00bb. \u0415\u0441\u043b\u0438 \u0431\u0443\u0434\u0435\u043c \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0442\u044c \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0443 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0441\u043a\u043b\u0430\u0434\u0441\u043a\u0438\u0445 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439, \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0432\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u043f\u043e\u043b\u043d\u0435 \u043e\u0431\u043e\u0441\u043d\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0447\u0438\u0441\u043b\u043e\u0432\u044b\u0445 \u043e\u0446\u0435\u043d\u043e\u043a \u0432\u0435\u043b\u0438\u0447\u0438\u043d\u044b \u0442\u0430\u043a\u043e\u0439 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u044b.<\/p>\n<p>A\u0165 <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/50deefe99bf1d5f948a49591904a8bfe.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u2013 maxim\u00e1ln\u00ed vzd\u00e1lenost mezi bun\u011bk skladu jedn\u00e9 z\u00f3ny ABC, kter\u00e1 je v na\u0161em p\u0159\u00edpad\u011b 100 m. A\u0165 <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/466892dd75279d08b4835a42e62444d4.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u2013 maxim\u00e1ln\u00ed objem bu\u0148ky-kontejneru ve skladu, kter\u00fd je v na\u0161em p\u0159\u00edpad\u011b 1000 dm3.<\/p>\n<p><b>Prvn\u00ed zp\u016fsob v\u00fdpo\u010dtu velikosti<\/b> <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/29b94b534da709020cbef206cb0d7dac.jpeg\" style=\"display:block;margin: 0 auto;\" \/>. Zva\u017eme situaci, kdy jsou 2 kontejnery na prvn\u00ed \u00farovni, v nich\u017e se ji\u017e fyzicky nach\u00e1z\u00ed zbo\u017e\u00ed, tedy samy funguj\u00ed jako bu\u0148ky-d\u00e1rci, a n\u00e1klady na p\u0159esun zbo\u017e\u00ed do t\u011bchto bun\u011bk jsou samoz\u0159ejm\u011b rovny 0. Je t\u0159eba nal\u00e9zt takovou hodnotu konstanty <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/5cf81db57dd2a18cc0ec29bb7ca3da62.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, p\u0159i kter\u00e9 by bylo v\u00fdhodn\u00e9 v\u017edy p\u0159esunout zbytky z kontejneru 1 do kontejneru 2. Dosazen\u00edm hodnot <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/20bbd09e167edc3eb1ed49d8078ecf19.jpeg\" style=\"display:block;margin: 0 auto;\" \/> a <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/605017af48e7b3ca4a323642db4227cd.jpeg\" style=\"display:block;margin: 0 auto;\" \/> do nerovnosti uveden\u00e9 v\u00fd\u0161e z\u00edsk\u00e1v\u00e1me:<\/p>\n<p><img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/2794955b8f9f3d64ffe4e2b449547555.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>z \u010deho\u017e vypl\u00fdv\u00e1<\/p>\n<p><img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/292a6e80c646c7eed80e888c8805990c.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Dosazen\u00edm hodnot pr\u016fm\u011brn\u00e9ho \u010dasu prov\u00e1d\u011bn\u00ed element\u00e1rn\u00edch operac\u00ed do v\u00fd\u0161e uveden\u00e9ho vzorce dost\u00e1v\u00e1me<\/p>\n<p><img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/1f56bf1f98c1a3bbd65a4cea99da7efb.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><b>Druh\u00fd zp\u016fsob v\u00fdpo\u010dtu velikosti<\/b> <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/78e3dff7183b15136d9e03f4a5724479.jpeg\" style=\"display:block;margin: 0 auto;\" \/>. Zva\u017eme situaci, kdy existuj\u00ed <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/02daff1eff70a2963ab8eaa067f15584.jpeg\" style=\"display:block;margin: 0 auto;\" \/> bu\u0148ky-d\u00e1rci, ze kter\u00fdch se pl\u00e1nuje p\u0159esunout zbo\u017e\u00ed do kontejneru 1. Ozna\u010dme <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/df20c3f27815f2060aae20d260210893.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u2013 vzd\u00e1lenost od bu\u0148ky-d\u00e1rce <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/a29ace66656cf1680c9e00258a9ff597.jpeg\" style=\"display:block;margin: 0 auto;\" \/> do kontejneru 1. Rovn\u011b\u017e existuje kontejner 2, ve kter\u00e9m ji\u017e jsou v\u00fdrobky, a jeho\u017e objem dovoluje pojmout zbytky ze v\u0161ech <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/e25f0828e7d794f8d804528395f6dc7e.jpeg\" style=\"display:block;margin: 0 auto;\" \/> bu\u0148ky. Pro jednoduchost budeme p\u0159edpokl\u00e1dat, \u017ee objem zbo\u017e\u00ed, kter\u00e9 je p\u0159esouv\u00e1no z bun\u011bk-d\u00e1rc\u016f do kontejner\u016f, je stejn\u00fd a rovn\u00fd <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/35c3392a83fc3b7eef928ddb5e93961a.jpeg\" style=\"display:block;margin: 0 auto;\" \/>. Je t\u0159eba nal\u00e9zt takovou hodnotu konstanty <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/c9bc10aade46cc3c63628c0ba100b364.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, p\u0159i kter\u00e9 by um\u00edst\u011bn\u00ed v\u0161ech zbytk\u016f z <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/e610d9981da2857a541f028a217f2306.jpeg\" style=\"display:block;margin: 0 auto;\" \/> bun\u011bk do kontejneru 2 bylo v\u017edy v\u00fdhodn\u011bj\u0161\u00ed ne\u017e jejich um\u00edst\u011bn\u00ed do r\u016fzn\u00fdch kontejner\u016f:<\/p>\n<p><img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/27f4f99a920799fba9725f30a04c8ebc.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Zpracov\u00e1n\u00edm nerovnosti z\u00edsk\u00e1v\u00e1me<\/p>\n<p><img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/56abddb4fc3e54eeb1fe466c68e5d8d7.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Abychom \"pos\u00edlili\" hodnotu velikosti <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/d77359ea816f9d45a8910cb26649f717.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, p\u0159edpokl\u00e1dejme, \u017ee <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/9edf13fb4e34b5da26957e451300046f.jpeg\" style=\"display:block;margin: 0 auto;\" \/> = 0. Pr\u016fm\u011brn\u00fd po\u010det bun\u011bk obvykle zapojen\u00fdch do procedury zhu\u0161t\u011bn\u00ed zbytk\u016f ve skladu je 10. Dosazen\u00edm zn\u00e1m\u00fdch hodnot velikost\u00ed dost\u00e1v\u00e1me n\u00e1sleduj\u00edc\u00ed hodnotu konstanty<\/p>\n<p><img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/40323791fd8cd2be3f29a2becf78e175.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Bereme nejvy\u0161\u0161\u00ed hodnotu vypo\u010dtenou pro ka\u017edou variantu, to bude hodnota velikosti <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/fd018460792c79b8a7953c06b839711d.jpeg\" style=\"display:block;margin: 0 auto;\" \/> pro zadan\u00e9 parametry skladu. Nyn\u00ed pro \u00faplnost zap\u00ed\u0161eme vzorec pro v\u00fdpo\u010det celkov\u00fdch n\u00e1klad\u016f <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/d4cb2c81bcc788380f1f0c1123b0eeda.jpeg\" style=\"display:block;margin: 0 auto;\" \/> pro n\u011bjak\u00e9 p\u0159\u00edpustn\u00e9 \u0159e\u0161en\u00ed <img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/052e710199e9417aaea94b16dbed47d3.jpeg\" style=\"display:block;margin: 0 auto;\" \/>:<\/p>\n<p><img decoding=\"async\" alt=\"Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1)\" src=\"\/wp-content\/uploads\/2019\/08\/8dd672c7b91639fe1872ef50dca7a220.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Nyn\u00ed, po v\u0161ech <b>titanick\u00fdch \u00fasil\u00edch<\/b> p\u0159i transformaci vstupn\u00edch dat, m\u016f\u017eeme \u0159\u00edci, \u017ee v\u0161echna vstupn\u00ed data byla p\u0159evedena do po\u017eadovan\u00e9ho form\u00e1tu a jsou p\u0159ipravena k pou\u017eit\u00ed v optimaliza\u010dn\u00edm algoritmu.<\/p>\n<h4>Z\u00e1v\u011br<\/h4>\n<p>\nJak ukazuje praxe, n\u00e1ro\u010dnost a d\u016fle\u017eitost f\u00e1ze p\u0159\u00edpravy a transformace vstupn\u00edch dat pro algoritmus jsou \u010dasto podce\u0148ov\u00e1ny. V tomto \u010dl\u00e1nku jsme v\u011bnovali velkou pozornost t\u00e9to f\u00e1zi, abychom uk\u00e1zali, \u017ee pouze kvalitn\u011b a rozumn\u011b p\u0159ipraven\u00e1 vstupn\u00ed data mohou u\u010dinit \u0159e\u0161en\u00ed, kter\u00e1 algoritmus prov\u00e1d\u00ed, skute\u010dn\u011b cenn\u00fdmi pro klienta. Ano, bylo vypracov\u00e1no mnoho vzorc\u016f, ale varovali jsme v\u00e1s je\u0161t\u011b p\u0159ed t\u00edmto chaosem \ud83d\ude42<\/p>\n<p>V p\u0159\u00ed\u0161t\u00edm \u010dl\u00e1nku se kone\u010dn\u011b dostaneme k tomu, kv\u016fli \u010demu byly zam\u00fd\u0161leny dv\u011b p\u0159edchoz\u00ed publikace \u2013 k algoritmu diskr\u00e9tn\u00ed optimalizace.<\/p>\n<p><i>\u010cl\u00e1nek p\u0159ipravil<br \/>\nRoman Shangin, program\u00e1tor projektov\u00e9ho odd\u011blen\u00ed,<br \/>\nspole\u010dnost Prvn\u00ed Bit, \u010celjabinsk<\/i><br \/>\n<br \/>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/463481\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0435\u043c, \u043a\u0430\u043a \u0440\u0435\u0448\u0430\u043b\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u043d\u0435\u0445\u0432\u0430\u0442\u043a\u0438 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u044b\u0445 \u044f\u0447\u0435\u0435\u043a \u043d\u0430 \u0441\u043a\u043b\u0430\u0434\u0435 \u0438 \u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u0434\u0438\u0441\u043a\u0440\u0435\u0442\u043d\u043e\u0439 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0434\u043b\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0442\u0430\u043a\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438. \u0420\u0430\u0441\u0441\u043a\u0430\u0436\u0435\u043c \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u043c\u044b \u00ab\u0441\u0442\u0440\u043e\u0438\u043b\u0438\u00bb \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u043c\u043e\u0434\u0435\u043b\u044c \u0437\u0430\u0434\u0430\u0447\u0438 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438, \u0438 \u043e \u0442\u043e\u043c \u0441 \u043a\u0430\u043a\u0438\u043c\u0438 \u0442\u0440\u0443\u0434\u043d\u043e\u0441\u0442\u044f\u043c\u0438 \u043c\u044b \u043d\u0435\u043e\u0436\u0438\u0434\u0430\u043d\u043d\u043e \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0438\u0441\u044c \u043f\u0440\u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0432\u0445\u043e\u0434\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430. \u0415\u0441\u043b\u0438 \u0432\u0430\u043c \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u043a\u0438 \u0432 \u0431\u0438\u0437\u043d\u0435\u0441\u0435 \u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":27819,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-37108","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/cs\/blog\/news\/diskretnaya-matematika-dlya-wms-algoritm-szhatiya-tovarov-v-yachejkah-chast-1\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"cs_CZ\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0414\u0438\u0441\u043a\u0440\u0435\u0442\u043d\u0430\u044f \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u043a\u0430 \u0434\u043b\u044f WMS: \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0441\u0436\u0430\u0442\u0438\u044f \u0442\u043e\u0432\u0430\u0440\u043e\u0432 \u0432 \u044f\u0447\u0435\u0439\u043a\u0430\u0445 (\u0447\u0430\u0441\u0442\u044c 1) | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/cs\/blog\/news\/diskretnaya-matematika-dlya-wms-algoritm-szhatiya-tovarov-v-yachejkah-chast-1\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:15:47+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:15:47+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Diskr\u00e9tn\u00ed matematika pro WMS: algoritmus komprese zbo\u017e\u00ed v bu\u0148k\u00e1ch (\u010d\u00e1st 1) | ProHoster","description":"V \u010dl\u00e1nku se dozv\u00edte.","canonical_url":"https:\/\/prohoster.info\/cs\/blog\/news\/diskretnaya-matematika-dlya-wms-algoritm-szhatiya-tovarov-v-yachejkah-chast-1","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"cs_CZ","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0414\u0438\u0441\u043a\u0440\u0435\u0442\u043d\u0430\u044f \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u043a\u0430 \u0434\u043b\u044f WMS: \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0441\u0436\u0430\u0442\u0438\u044f \u0442\u043e\u0432\u0430\u0440\u043e\u0432 \u0432 \u044f\u0447\u0435\u0439\u043a\u0430\u0445 (\u0447\u0430\u0441\u0442\u044c 1) | ProHoster","og:description":"\u0412 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b.","og:url":"https:\/\/prohoster.info\/cs\/blog\/news\/diskretnaya-matematika-dlya-wms-algoritm-szhatiya-tovarov-v-yachejkah-chast-1","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:15:47+00:00","article:modified_time":"2019-10-31T19:15:47+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"37108","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-22 06:08:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:33:24","updated":"2026-01-22 06:08:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/37108","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/comments?post=37108"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/37108\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media\/27819"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media?parent=37108"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/categories?post=37108"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/tags?post=37108"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}