{"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\/ro\/blog\/news\/diskretnaya-matematika-dlya-wms-algoritm-szhatiya-tovarov-v-yachejkah-chast-1","title":{"rendered":"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/89e9927c86cd36ee5b4ab37b5c0753c9.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n\u00cen acest articol, vom vorbi despre cum am rezolvat problema lipsei de celule libere \u00een depozit \u0219i despre dezvoltarea unui algoritm de optimizare discret\u0103 pentru a aborda aceast\u0103 problem\u0103. V\u0103 vom spune cum am \u201econstruit\u201d modelul matematic al problemei de optimizare \u0219i despre dificult\u0103\u021bile nea\u0219teptate pe care le-am \u00eent\u00e2mpinat \u00een procesarea datelor de intrare pentru algoritm.<\/p>\n<p>Dac\u0103 sunte\u021bi interesat de aplica\u021biile matematicii \u00een afaceri \u0219i nu v\u0103 teme\u021bi de transform\u0103ri identice complexe ale formulelor la nivelul clasei a V-a, atunci bun venit sub r\u00e2nd!<\/p>\n<p>Articolul va fi util celor care implementeaz\u0103 <i>sisteme WMS, care lucreaz\u0103 \u00een domeniul logisticii de depozit sau de produc\u021bie, precum \u0219i programatorilor care sunt interesa\u021bi de aplica\u021biile matematicii \u00een afaceri \u0219i de optimizarea proceselor \u00een cadrul \u00eentreprinderii.<\/i>Partea introductiv\u0103<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h4>Aceast\u0103 publica\u021bie continu\u0103 seria de articole \u00een care ne \u00eemp\u0103rt\u0103\u0219im experien\u021ba de succes \u00een implementarea algoritmilor de optimizare \u00een procesele de depozit.<\/h4>\n<p>\nEste descris\u0103 specificitatea depozitului \u00een care am implementat <\/p>\n<p>\u00cen <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/463289\/\">articolul anterior<\/a><\/noindex> -sistemul, iar de asemenea, se discut\u0103 de ce a fost necesar s\u0103 abord\u0103m problema clusteriz\u0103rii loturilor de stocuri \u00een cadrul implement\u0103rii <i>sisteme WMS, care lucreaz\u0103 \u00een domeniul logisticii de depozit sau de produc\u021bie, precum \u0219i programatorilor care sunt interesa\u021bi de aplica\u021biile matematicii \u00een afaceri \u0219i de optimizarea proceselor \u00een cadrul \u00eentreprinderii.<\/i>-sistemului \u0219i cum am realizat acest lucru. <i>sisteme WMS, care lucreaz\u0103 \u00een domeniul logisticii de depozit sau de produc\u021bie, precum \u0219i programatorilor care sunt interesa\u021bi de aplica\u021biile matematicii \u00een afaceri \u0219i de optimizarea proceselor \u00een cadrul \u00eentreprinderii.<\/i>C\u00e2nd am terminat de scris articolul despre algoritmii de optimizare, a rezultat unul foarte extins, astfel \u00eenc\u00e2t materialul acumulat a fost \u00eemp\u0103r\u021bit \u00een 2 p\u0103r\u021bi:<\/p>\n<p>\u00cen prima parte (acest articol) vom explica cum am \u201econstruit\u201d modelul matematic al problemei \u0219i despre dificult\u0103\u021bile importante pe care le-am \u00eent\u00e2mpinat \u00een procesarea \u0219i transformarea datelor de intrare pentru algoritm.<\/p>\n<ul>\n<li>\u00cen a doua parte, vom examina \u00een detaliu implementarea algoritmului \u00een limbajul<\/li>\n<li>, vom efectua un experiment computa\u021bional \u0219i vom rezuma experien\u021ba pe care am ob\u021binut-o \u00een timpul implement\u0103rii acestor \u201etehnologii inteligente\u201d \u00een procesele de afaceri ale clientului. <i>C++<\/i>Cum s\u0103 citi\u021bi articolul. Dac\u0103 a\u021bi citit articolul anterior, pute\u021bi trece direct la capitolul \u201ePrezentarea solu\u021biilor existente\u201d, dac\u0103 nu, descrierea problemei abordate este \u00een spoilerul de mai jos.<\/li>\n<\/ul>\n<p>\nDescrierea problemei abordate \u00een depozitul clientului<\/p>\n<p><b class=\"spoiler_title\">Punctul critic \u00een procesele<\/b><\/p>\n<h4>\u00cen 2018, am realizat un proiect de implementare<\/h4>\n<p>\n\u00cen 2018 am realizat un proiect de implementare <i>sisteme WMS, care lucreaz\u0103 \u00een domeniul logisticii de depozit sau de produc\u021bie, precum \u0219i programatorilor care sunt interesa\u021bi de aplica\u021biile matematicii \u00een afaceri \u0219i de optimizarea proceselor \u00een cadrul \u00eentreprinderii.<\/i>-sistemele la depozitul \u00abCasa de Comer\u021b \u00abLD\u00bb din ora\u0219ul Chelyabinsk. Am implementat produsul \u00ab1C-Logistica: Managementul depozitului 3\u00bb pe 20 de puncte de lucru: operatori, depozitari, \u0219oferi de stivuitoare. <i>sisteme WMS, care lucreaz\u0103 \u00een domeniul logisticii de depozit sau de produc\u021bie, precum \u0219i programatorilor care sunt interesa\u021bi de aplica\u021biile matematicii \u00een afaceri \u0219i de optimizarea proceselor \u00een cadrul \u00eentreprinderii.<\/i>, depozitar. Depozitul are o dimensiune medie de aproximativ 4.000 m2, cu 5.000 de celule \u0219i un num\u0103r de SKU de 4.500. \u00cen depozit sunt p\u0103strate clape sferice de produc\u021bie proprie, de diferite dimensiuni, \u00eentre 1 kg \u0219i 400 kg. Stocurile sunt p\u0103strate pe loturi, deoarece exist\u0103 necesitatea de a selecta produsele conform principiului FIFO.<\/p>\n<p>\u00cen timpul proiect\u0103rii schemelor de automatizare a proceselor de depozitare, ne-am confruntat cu problema existent\u0103 a stoc\u0103rii neoptime. Specificitatea stoc\u0103rii \u0219i aranj\u0103rii clapelor este c\u0103 \u00eentr-o celul\u0103 de depozitare poate fi p\u0103strat doar un singur tip de lot (vezi fig. 1). Produsele sosesc \u00een depozit zilnic, iar fiecare sosire reprezint\u0103 un lot separat. Astfel, \u00een urma unei luni de activitate a depozitului, se formeaz\u0103 30 de loturi separate, fiecare fiind necesar s\u0103 fie stocat\u0103 \u00een celule separate. Produsele sunt adesea selectate nu pe palete \u00eentregi, ci bucat\u0103 cu bucat\u0103, iar \u00een zona de selec\u021bie frecvent\u0103 se observ\u0103 adesea o situa\u021bie precum: \u00eentr-o celul\u0103 cu un volum de peste 1m3 se afl\u0103 c\u00e2teva unit\u0103\u021bi de cliape, care ocup\u0103 mai pu\u021bin de 5-10% din volumul celulei. <\/p>\n<p><img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/a7c03f2302c3be02c00c670453353f16.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Fig. 1. Fotografie cu c\u00e2teva unit\u0103\u021bi \u00eentr-o celul\u0103<\/i><\/p>\n<p>Se observ\u0103 o utilizare neoptimizat\u0103 a capacit\u0103\u021bilor de depozitare. Pentru a ilustra amploarea problemei, pot oferi cifre: \u00een medie, exist\u0103 \u00eentre 100 \u0219i 300 de celule cu un volum de peste 1m3, av\u00e2nd \u00abrezerve minuscule\u00bb \u00een diferite perioade de func\u021bionare a depozitului. Deoarece depozitul este relativ mic, \u00een sezoanele aglomerate, acest factor devine un \u201eg\u00e2t de sticl\u0103\u201d care \u00eencetine\u0219te semnificativ procesele de primire \u0219i expediere.<\/p>\n<h4>Ideea solu\u021bion\u0103rii problemei<\/h4>\n<p>\nA ap\u0103rut ideea: loturile de rezerve cu date de expirare apropiate s\u0103 fie consolidate \u00eentr-un singur lot unificat, iar aceste rezerve cu lot uniformizat s\u0103 fie plasate compact \u00eempreun\u0103 \u00eentr-o celul\u0103 sau \u00een mai multe, dac\u0103 \u00eentr-una nu este suficient loc pentru a plasa \u00eentreaga cantitate de rezerve. Un exemplu de astfel de \u201ecompactare\u201d este ilustrat \u00een figura 2.<\/p>\n<p><img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/792f114a7afa6272a6d152a784650681.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Fig. 2. Schi\u021ba compact\u0103rii rezervei \u00een celule<\/i><\/p>\n<p>Aceasta permite reducerea semnificativ\u0103 a spa\u021biului de depozitare ocupat, care va fi utilizat pentru noul stoc de produse. \u00cen situa\u021bia unei suprasarcini a capacit\u0103\u021bilor de depozitare, aceast\u0103 m\u0103sur\u0103 devine extrem de necesar\u0103, altfel spa\u021biul liber pentru stocarea de noi produse poate pur \u0219i simplu s\u0103 nu fie suficient, ceea ce va duce la blocarea proceselor de stocare \u0219i alimentare \u0219i, prin urmare, la blocarea primirii \u0219i livr\u0103rii. \u00cenainte de implementarea sistemului WMS, aceast\u0103 opera\u021biune era efectuat\u0103 manual, ceea ce era ineficient, deoarece procesul de c\u0103utare a stocurilor corespunz\u0103toare \u00een celule era destul de lung. Acum, cu implementarea sistemului WMS, am decis s\u0103 automatiz\u0103m procesul, s\u0103-l acceler\u0103m \u0219i s\u0103-l facem mai inteligent.<\/p>\n<p>Procesul de rezolvare a acestei sarcini este \u00eemp\u0103r\u021bit \u00een 2 etape: <\/p>\n<ul>\n<li>\u00een prima etap\u0103, g\u0103sim grupuri de loturi apropiate ca dat\u0103 pentru comprimare (aceast\u0103 sarcin\u0103 este dedicat\u0103) <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/463289\/\">articolul anterior<\/a><\/noindex>);<\/li>\n<li>\u00een a doua etap\u0103, pentru fiecare grup de loturi, calcul\u0103m aranjamentul cel mai compact al stocurilor \u00een celule. <\/li>\n<\/ul>\n<p>\n\u00cen acest articol ne vom concentra asupra celei de-a doua etape a algoritmului.<\/p>\n<h4>Prezentarea solu\u021biilor existente<\/h4>\n<p>\n\u00cenainte de a trece la descrierea algoritmilor pe care i-am dezvoltat, merit\u0103 s\u0103 facem o scurt\u0103 prezentare a sistemelor deja existente pe pia\u021b\u0103 <i>sisteme WMS, care lucreaz\u0103 \u00een domeniul logisticii de depozit sau de produc\u021bie, precum \u0219i programatorilor care sunt interesa\u021bi de aplica\u021biile matematicii \u00een afaceri \u0219i de optimizarea proceselor \u00een cadrul \u00eentreprinderii.<\/i>, care implementeaz\u0103 o astfel de func\u021bionalitate de comprimare optim\u0103.<\/p>\n<p>\u00cen primul r\u00e2nd, trebuie men\u021bionat produsul \u201e1C: \u00centreprindere 8. WMS Logistic\u0103. Managementul depozitului 4\u201d, care apar\u021bine \u0219i este distribuit de firma 1C \u0219i face parte din a patra genera\u021bie <i>sisteme WMS, care lucreaz\u0103 \u00een domeniul logisticii de depozit sau de produc\u021bie, precum \u0219i programatorilor care sunt interesa\u021bi de aplica\u021biile matematicii \u00een afaceri \u0219i de optimizarea proceselor \u00een cadrul \u00eentreprinderii.<\/i>-sisteme, dezvoltate de compania AXELOT. \u00cen acest sistem este declarat func\u021bionalitatea de comprimare, care este destinat\u0103 unirii stocurilor disparate de produse \u00eentr-o celul\u0103 comun\u0103. Trebuie men\u021bionat c\u0103 func\u021bionalitatea de comprimare dintr-un astfel de sistem include \u0219i alte posibilit\u0103\u021bi, de exemplu, corectarea plas\u0103rii produselor \u00een celule conform claselor lor ABC, dar nu ne vom opri asupra lor. <\/p>\n<p>Dac\u0103 analiz\u0103m codul sistemului \u201e1C: \u00centreprindere 8. WMS Logistic\u0103. Managementul depozitului 4\u201d (care, \u00een aceast\u0103 parte a func\u021bionalit\u0103\u021bii, este deschis), putem concluziona urm\u0103toarele. Algoritmul de compresie a stocurilor implementeaz\u0103 o logic\u0103 liniar\u0103 destul de primitiv\u0103 \u0219i nu poate fi vorba de o compresie \u201eoptim\u0103\u201d. Fire\u0219te, acesta nu preconizeaz\u0103 clusterizarea loturilor. Mai mul\u021bi clien\u021bi care au implementat un astfel de sistem s-au pl\u00e2ns de rezultatele planific\u0103rii compresiei. De exemplu, \u00een practic\u0103, adesea se \u00eent\u00e2mpla ca 100 de unit\u0103\u021bi de stoc dintr-un loc s\u0103 fie planificate pentru a fi mutate \u00eentr-un alt loc unde se afl\u0103 o unitate de produs, de\u0219i ar fi fost optim, din punct de vedere al timpului, s\u0103 se fac\u0103 invers.<\/p>\n<p>Func\u021bionalitatea de compresie a stocurilor de produse \u00een locuri este, de asemenea, anun\u021bat\u0103 \u00een multe <i>sisteme WMS, care lucreaz\u0103 \u00een domeniul logisticii de depozit sau de produc\u021bie, precum \u0219i programatorilor care sunt interesa\u021bi de aplica\u021biile matematicii \u00een afaceri \u0219i de optimizarea proceselor \u00een cadrul \u00eentreprinderii.<\/i>-sisteme str\u0103ine, dar, din p\u0103cate, nu avem recenzii reale despre eficien\u021ba func\u021bion\u0103rii algoritmilor (aceasta fiind un secret comercial), nici informa\u021bii despre complexitatea logicii acestora (software proprietar cu cod \u00eenchis), a\u0219a c\u0103 nu putem judeca.<\/p>\n<h4>C\u0103utarea unui model matematic al problemei<\/h4>\n<p>\nPentru a proiecta algoritmi de calitate pentru rezolvarea problemei, este necesar mai \u00eent\u00e2i s\u0103 formul\u0103m clar aceast\u0103 problem\u0103 din punct de vedere matematic, ceea ce vom face.<\/p>\n<p>Exist\u0103 numeroase locuri <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/bfff1fb95dd0c633ada02b9398778eab.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, \u00een care se afl\u0103 stocurile unor produse. Mai departe, vom numi aceste locuri celule-donatoare. S\u0103 not\u0103m <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/50ef693482cd4cb27410b30b0bc107b1.jpeg\" style=\"display:block;margin: 0 auto;\" \/> volumul produsului aflat \u00een celula <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/dc7faf1656fb12c8e467fe3a5b8977fa.jpeg\" style=\"display:block;margin: 0 auto;\" \/>$.<\/p>\n<p>Este important de men\u021bionat c\u0103 \u00een procedura de compresie poate participa doar un singur produs dintr-un lot, sau mai multe loturi, unite anterior \u00eentr-un cluster (cite\u0219te <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/463289\/\">articolul anterior<\/a><\/noindex>), ceea ce se datoreaz\u0103 specificului depozit\u0103rii \u0219i aranj\u0103rii produselor. Pentru produse diferite sau pentru diferite clustere de loturi, ar trebui s\u0103 se lanseze proceduri separate de compresie.<\/p>\n<p>Exist\u0103 numeroase locuri <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/b9aafca691626263d8ecc2faed8dfcfe.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, \u00een care pot fi poten\u021bial plasate stocuri din celule-donatoare. Aceste celule le vom numi mai departe celule-contoare. Acestea pot fi at\u00e2t celule libere din depozit, c\u00e2t \u0219i celule-donatoare din mul\u021bime <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/25731bc72091e2284e76c434d2abdcfd.jpeg\" style=\"display:block;margin: 0 auto;\" \/>. \u00centotdeauna mul\u021bimea <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/d407f97344131a3056b1eab1d3dd7dcd.jpeg\" style=\"display:block;margin: 0 auto;\" \/> este un subset <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/581806d446f3d8c91927045249698e71.jpeg\" style=\"display:block;margin: 0 auto;\" \/>.<\/p>\n<p>Pentru fiecare celul\u0103 <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/b084d5852a1e4f00d2498640534d66e9.jpeg\" style=\"display:block;margin: 0 auto;\" \/> din mul\u021bime <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/236efb40a21865f78240c8e14303cc2e.jpeg\" style=\"display:block;margin: 0 auto;\" \/> sunt stabilite restric\u021bii privind capacitatea <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/fe253cfe5f2aa39bc8e064674fb206f8.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, m\u0103surate \u00een dm3. Un dm3 reprezint\u0103 un cub cu laturile de 10 cm. Produsele stocate \u00een magazie sunt destul de mari, a\u0219a c\u0103, \u00een acest caz, o astfel de discretizare este suficient\u0103. <\/p>\n<p>Este dat\u0103 o matrice a distan\u021belor minime <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/48c133b0affa17f6a2367a02241d5f17.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u00een metri \u00eentre fiecare pereche de celule <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/8fd860e331a8e42dd258857bdf580c05.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, unde <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/feb9a48c6e9e4ccd8e9fa1db5565e96e.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u0219i <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/d9a48a8a22ea984d0769373c5620c99a.jpeg\" style=\"display:block;margin: 0 auto;\" \/> apar\u021bin mul\u021bimilor <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/e2dd20fda8a8b0b5ea2173c14f04fe00.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u0219i <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/0dabafdb55ac6b8495f6d5f657d6c01d.jpeg\" style=\"display:block;margin: 0 auto;\" \/> corespunz\u0103tor. <\/p>\n<p>S\u0103 not\u0103m <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/2994defad9bb0a44741f31a85273abf2.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u201ecosturile\u201d pentru mutarea produsului dintr-o celul\u0103<img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/a2e54425ec786d3a88290dda47f4b9cb.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u00een celula <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/bf4a9f1a1f396a9b7b6244cf8c77ecc8.jpeg\" style=\"display:block;margin: 0 auto;\" \/>. S\u0103 not\u0103m <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/6f4c10386fc638f6ca37e0ccdcf4ccb4.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u201ecosturile\u201d pentru alegerea containerului <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/613d619ea5951551427f0cd45c7f79bf.jpeg\" style=\"display:block;margin: 0 auto;\" \/> pentru a muta \u00een el resturile din alte celule. Cum \u0219i \u00een ce unit\u0103\u021bi de m\u0103sur\u0103 vor fi calculate valorile <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/22130f203fde6271e33cba0db14d6a80.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u0219i <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/d75c50be3ee4f8e02a9523f2d2109f0d.jpeg\" style=\"display:block;margin: 0 auto;\" \/> vom analiza mai departe (vezi sec\u021biunea preg\u0103tirea datelor de intrare), acum este suficient s\u0103 spunem c\u0103 aceste magnitudini vor fi direct propor\u021bionale cu valorile <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/5e4e80f122ac1fe43f94de2726c0d3b7.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u0219i <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/1b6a9d41ba4ad68d5a5fbae883b80596.jpeg\" style=\"display:block;margin: 0 auto;\" \/> corespunz\u0103tor.<\/p>\n<p>S\u0103 not\u0103m prin <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/1ebfe4179740aff474a78d11a004aaa7.jpeg\" style=\"display:block;margin: 0 auto;\" \/> o variabil\u0103 care ia valoarea 1 dac\u0103 resturile din celul\u0103 <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/48f9789788c38746ba4ac0c947e0a4ca.jpeg\" style=\"display:block;margin: 0 auto;\" \/> sunt mutate \u00een container <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/58ce0b4c9bfb946c00bffdc0c50a05d6.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, \u0219i 0 \u00een caz contrar. S\u0103 not\u0103m prin <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/642d5627193c55922be5274826b75cb4.jpeg\" style=\"display:block;margin: 0 auto;\" \/> o variabil\u0103 care ia valoarea 1 dac\u0103 containerul <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/6939c9f4daf2ecd531d9c2518c03401d.jpeg\" style=\"display:block;margin: 0 auto;\" \/> con\u021bine resturi de produs, \u0219i 0 \u00een caz contrar.<\/p>\n<p><b>Problema se formuleaz\u0103 astfel<\/b>: este necesar s\u0103 g\u0103sim o mul\u021bime de containere <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/d6065db66f210083181dabb39f0e9e16.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u0219i astfel \u201es\u0103 ata\u0219\u0103m\u201d celulele-donatoare la celulele-container, pentru a minimiza func\u021bia<\/p>\n<p><img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/68d7f0271f9761fff2c762e0fe6f5207.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>sub restric\u021bii<\/p>\n<p><img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/d57b8752aa4a8140e239dfa7fdc9ec36.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Astfel, \u00een timpul calcul\u0103rii solu\u021biei problemei, ne str\u0103duim: <\/p>\n<ul>\n<li>\u00een primul r\u00e2nd, s\u0103 economisim capacit\u0103\u021bile de depozitare; <\/li>\n<li>\u00een al doilea r\u00e2nd, s\u0103 economisim timpul lucr\u0103torilor din magazie. <\/li>\n<\/ul>\n<p>\nUltima restric\u021bie \u00eenseamn\u0103 c\u0103 nu putem muta produsele \u00eentr-un container pe care nu l-am ales \u0219i, prin urmare, nu am \u201epurta costuri\u201d pentru alegerea acestuia. De asemenea, aceast\u0103 restric\u021bie \u00eenseamn\u0103 c\u0103 volumul produselor mutate din celule \u00een container nu trebuie s\u0103 dep\u0103\u0219easc\u0103 capacitatea containerului. O solu\u021bie a problemei va fi considerat\u0103 o mul\u021bime de containere <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/db0f987f2d388ad1394d21404e183c93.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u0219i modalit\u0103\u021bile de ata\u0219are a celulelor-donatoare la containere.<\/p>\n<p>Aceast\u0103 formulare a problemei de optimizare nu este nou\u0103 \u0219i a fost studiat\u0103 de mul\u021bi matematicieni \u00eenc\u0103 de la \u00eenceputul anilor '80 ai secolului trecut. \u00cen literatura str\u0103in\u0103 exist\u0103 2 probleme de optimizare cu un model matematic adecvat: <noindex><a rel=\"nofollow\" href=\"http:\/\/www.math.nsc.ru\/AP\/benchmarks\/CFLP\/cflp.html\">Problema Localiz\u0103rii Facilit\u0103\u021bii Capacitate de Surs\u0103 Unic\u0103<\/a><\/noindex> \u0219i <noindex><a rel=\"nofollow\" href=\"https:\/\/waset.org\/publications\/10002290\/a-survey-of-discrete-facility-location-problems\">Problema Localiz\u0103rii Facilit\u0103\u021bii Capacitate de Surs\u0103 Multiple<\/a><\/noindex> (despre diferen\u021bele dintre probleme vom discuta mai departe). Merit\u0103 men\u021bionat c\u0103 \u00een literatura de specialitate matematic\u0103 formul\u0103rile acestor dou\u0103 probleme de optimizare sunt prezentate \u00een termeni de amplasare a unit\u0103\u021bilor de produc\u021bie, de unde \u0219i denumirea \u201eLoca\u021bia Facilita\u021bilor\u201d. \u00cen mare parte este o chestiune de tradi\u021bie, deoarece pentru prima dat\u0103 necesitatea de a rezolva astfel de probleme combinatorice a ap\u0103rut din domeniul logisticii, \u00een cea mai mare parte \u00een industria militaro-economic\u0103 din anii '50 ai secolului trecut. \u00cen termeni de amplasare a unit\u0103\u021bilor de produc\u021bie, aceste probleme sunt formulate astfel: <\/p>\n<ul>\n<li>Exist\u0103 un num\u0103r finit de ora\u0219e unde este posibil s\u0103 se amplaseze unit\u0103\u021bi de produc\u021bie (\u00een continuare ora\u0219e-produc\u0103tori). Pentru fiecare ora\u0219-produc\u0103tor sunt stabilite costurile de deschidere a unei unit\u0103\u021bi \u0219i, de asemenea, restric\u021biile privind capacitatea de produc\u021bie a unit\u0103\u021bii deschise.<\/li>\n<li>Exist\u0103 un num\u0103r finit de ora\u0219e unde se afl\u0103 de fapt clien\u021bii (\u00een continuare ora\u0219e-clien\u021bi). Pentru fiecare astfel de ora\u0219-client este stabilit volumul cererii pentru produs. Pentru simplificare, vom considera c\u0103 produsul fabricat de unit\u0103\u021bi \u0219i consumat de clien\u021bi este unul singur.<\/li>\n<li>Pentru fiecare pereche ora\u0219-produc\u0103tor \u0219i ora\u0219-client este dat\u0103 valoarea costurilor de transport pentru livrarea volumului necesar de produs de la produc\u0103tor la client.<\/li>\n<\/ul>\n<p>\nEste necesar s\u0103 se determine \u00een ce ora\u0219e s\u0103 se deschid\u0103 unit\u0103\u021bi \u0219i cum s\u0103 se aloce clien\u021bii acestor unit\u0103\u021bi, astfel \u00eenc\u00e2t:<\/p>\n<ul>\n<li>Costurile totale de deschidere a unit\u0103\u021bilor \u0219i costurile de transport s\u0103 fie minime;<\/li>\n<li>Volumul cererii clien\u021bilor aloca\u021bi unei unit\u0103\u021bi deschise s\u0103 nu dep\u0103\u0219easc\u0103 capacitatea de produc\u021bie a acestei unit\u0103\u021bi.<\/li>\n<\/ul>\n<p>\nAcum merit\u0103 men\u021bionat despre singura diferen\u021b\u0103 dintre aceste dou\u0103 probleme clasice:<\/p>\n<ul>\n<li>Problema Loca\u021biei Facilita\u021bilor Capacitate Unic\u0103 \u2013 clientul este aprovizionat doar dintr-o singur\u0103 unitate deschis\u0103;<\/li>\n<li>Problema Loca\u021biei Facilita\u021bilor Capacitate Multi-Surs\u0103 \u2013 clientul poate fi aprovizionat din mai multe unit\u0103\u021bi deschise simultan.<\/li>\n<\/ul>\n<p>\nAceast\u0103 diferen\u021b\u0103 \u00eentre cele dou\u0103 probleme, la prima vedere, pare nesemnificativ\u0103, dar de fapt duce la o structur\u0103 combinatoric\u0103 complet diferit\u0103 a acestor probleme \u0219i, drept consecin\u021b\u0103, la algoritmi complet diferi\u021bi pentru rezolvarea lor. Diferen\u021ba \u00eentre probleme este demonstrat\u0103 \u00een desenul de mai jos.<\/p>\n<p><img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/77962906c7de2fced174d4a2b7785cc2.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Fig.3. a) Problema Loca\u021biei Facilita\u021bilor Capacitate Multi-Surs\u0103<\/i><\/p>\n<p><img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/0242437e488a1aea0f00ce9ede02886d.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Fig.3. b) Problema Loca\u021biei Facilita\u021bilor Capacitate Unic\u0103<\/i><\/p>\n<p>Ambele probleme <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/b16678811fceca32d18c94e71cfaa603.jpeg\" style=\"display:block;margin: 0 auto;\" \/>-dificile, adic\u0103 nu exist\u0103 un algoritm exact care s\u0103 rezolve o astfel de problem\u0103 \u00een timp polinomial \u00een func\u021bie de dimensiunea datelor de intrare. Cu alte cuvinte, toate algoritmurile exacte pentru rezolvarea problemei vor func\u021biona \u00eentr-un timp exponen\u021bial, de\u0219i poate mai repede dec\u00e2t o abordare exhaustiv\u0103. Deoarece problema <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/09f42b4b905d9bdc3f00f21098f84ad7.jpeg\" style=\"display:block;margin: 0 auto;\" \/>-dificil\u0103, a\u0219a c\u0103 ne vom concentra doar asupra euristicilor aproximative, adic\u0103 algoritmi care vor calcula solu\u021bii \u00een mod constant, foarte apropiate de cele optime \u0219i care vor func\u021biona destul de repede. Dac\u0103 exist\u0103 interes pentru astfel de probleme, atunci aici se poate g\u0103si o bun\u0103 prezentare \u00een limba rom\u00e2n\u0103.<\/p>\n<p>Dac\u0103 facem paralela cu terminologia problemei noastre de comprimare optim\u0103 a bunurilor \u00een celule, atunci:<\/p>\n<ul>\n<li>ora\u0219ele-client \u2013 sunt celulele-donatoare <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/e6db70dbb85d1c7249f4c30e97e2942e.jpeg\" style=\"display:block;margin: 0 auto;\" \/> cu bunuri r\u0103mase, <\/li>\n<li>ora\u0219ele-produc\u0103toare \u2013 sunt celulele-container <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/5ef31fe0483d2bc9a0c18b5dc25e9867.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, \u00een care se presupune c\u0103 se vor plasa bunurile r\u0103mase din alte celule,<\/li>\n<li>costurile de transport \u2013 costul timpului <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/afac567e9057a46de6e0f3d29df9315a.jpeg\" style=\"display:block;margin: 0 auto;\" \/> de depozitare pentru mutarea volumului de bunuri din celula-donator <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/829df82255e40cb99024d7c8dd408d41.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u00een celula-container <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/b87c9d9260adb26ce623dbe80b4f22c2.jpeg\" style=\"display:block;margin: 0 auto;\" \/>; <\/li>\n<li>costurile de deschidere a \u00eentreprinderii \u2013 costurile pentru alegerea containerului <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/db4d21fc2067a23b5af5bb01c412323a.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, egale cu volumul celulei-container <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/b631a01a65f1ffd3348cbcaeeab11f0d.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, \u00eenmul\u021bit cu un anumit coeficient de economisire a volumelor libere (valoarea coeficientului este \u00eentotdeauna &gt; 1) (vezi sec\u021biunea preg\u0103tirea datelor de intrare).<\/li>\n<\/ul>\n<p>\nDup\u0103 ce s-a realizat analogia cu problemele clasice cunoscute, este necesar s\u0103 r\u0103spundem la o \u00eentrebare important\u0103, de la care depinde alegerea arhitecturii algoritmului de solu\u021bionare: este posibil\u0103 mutarea bunurilor r\u0103mase din celula-donator doar \u00eentr-un singur container (Single-Source) sau este posibil\u0103 mutarea bunurilor \u00een mai multe celule-container (Multi-Source)?<\/p>\n<p>Merit\u0103 men\u021bionat c\u0103, \u00een practic\u0103, ambele formul\u0103ri ale problemei exist\u0103. Vom enumera toate \u201eavantajele\u201d \u0219i \u201edezavantajele\u201d fiec\u0103rei astfel de formul\u0103ri mai jos:<\/p>\n<table>\n<tr>\n<th>Varianta problemei<\/th>\n<th>Avantajele variantei<\/th>\n<th>Dezavantajele variantei<\/th>\n<\/tr>\n<tr>\n<td>Single-Source<\/td>\n<td>Opera\u021biile de mutare a bunurilor, calculate pentru aceast\u0103 variant\u0103 a problemei:<\/p>\n<ul>\n<li>cer mai pu\u021bin control din partea depozitarului (a luat TOT dintr-o celul\u0103, a pus TOT \u00een alt\u0103 celul\u0103-container), ceea ce elimin\u0103 riscurile: erori la num\u0103rarea cantit\u0103\u021bii de bunuri \u00een timpul opera\u021biunilor \u201ea pune \u00een celul\u0103\u201d; erori de introducere a cantit\u0103\u021bii num\u0103rate \u00een TSD;<\/li>\n<li>Nu este necesar timp pentru a recalcula cantitatea de produse atunci c\u00e2nd se efectueaz\u0103 opera\u021biunile \u201ePune\u021bi \u00een celul\u0103\u201d \u0219i introducerea lor \u00een TSD<\/li>\n<\/ul>\n<\/td>\n<td><\/td>\n<\/tr>\n<tr>\n<td>Multi-Source<\/td>\n<td>Compresia, calculat\u0103 conform acestei variante de problem\u0103, este de obicei mai compact\u0103 cu 10-15% comparativ cu compresiile calculate conform variantei \u201eSingle-Source\u201d. De asemenea, observ\u0103m c\u0103, cu c\u00e2t num\u0103rul de stocuri \u00een celulele-donator este mai mic, cu at\u00e2t aceast\u0103 diferen\u021b\u0103 \u00een compactitate devine mai mic\u0103<\/td>\n<td>Opera\u021biile de mutare a bunurilor, calculate pentru aceast\u0103 variant\u0103 a problemei:<\/p>\n<ul>\n<li>necessit\u0103 un control mai mare din partea operatorului de depozit (este necesar s\u0103 se recalculeze cantitatea de produse mutate \u00een fiecare dintre celulele-planificate-container), ceea ce elimin\u0103 riscul de eroare \u00een timpul recalcul\u0103rii cantit\u0103\u021bii de produse \u0219i a introducerii datelor \u00een TSD \u00een timpul opera\u021biunilor \u201ePune\u021bi \u00een celul\u0103\u201d<\/li>\n<li>Este necesar timp pentru a recalcula cantitatea de produse atunci c\u00e2nd se efectueaz\u0103 opera\u021biunile \u201ePune\u021bi \u00een celul\u0103\u201d<\/li>\n<li>Este necesar timp pentru \u201ecosturi indirecte\u201d (a se opri, a se apropia de palet, a scana codul de bare al celulei-container) atunci c\u00e2nd se efectueaz\u0103 opera\u021biunile \u201ePune\u021bi \u00een celul\u0103\u201d<\/li>\n<li>Uneori, algoritmul poate \u201efragmenta\u201d cantitatea unui palet aproape complet \u00eentre un num\u0103r mare de celule-container, unde exist\u0103 deja produse potrivite, ceea ce, din punctul de vedere al clientului, este inacceptabil<\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<\/table>\n<p><i>Tabelul 1. Avantajele \u0219i dezavantajele variantelor Single-Source \u0219i Multi-Source.<\/i><\/p>\n<p>Deoarece num\u0103rul avantajelor pentru varianta Single-Source este mai mare \u0219i av\u00e2nd \u00een vedere faptul c\u0103 cu c\u00e2t num\u0103rul de stocuri \u00een celulele-donator este mai mic, cu at\u00e2t diferen\u021ba \u00een gradul de compactitate a compresiei calculate conform ambelor variante de problem\u0103 este mai mic\u0103, alegerea noastr\u0103 a c\u0103zut pe varianta Single-Source.<\/p>\n<p>Merit\u0103 men\u021bionat c\u0103 solu\u021bia pentru varianta Multi-Source \u00ee\u0219i g\u0103se\u0219te locul. Exist\u0103 o mul\u021bime de algoritmi eficien\u021bi pentru rezolvarea sa, majoritatea dintre ei reduc\u00e2ndu-se la solu\u021bionarea unor probleme de transport. Exist\u0103 nu doar algoritmi eficien\u021bi, ci \u0219i elegan\u021bi, de exemplu,<noindex><a rel=\"nofollow\" href=\"http:\/\/www.mathnet.ru\/php\/archive.phtml?wshow=paper&amp;jrnid=da&amp;paperid=791&amp;option_lang=rus\"> aici.<\/a><\/noindex><\/p>\n<h4>Preg\u0103tirea datelor de intrare<\/h4>\n<p>\n\u00cenainte de a \u00eencepe analiza \u0219i dezvoltarea algoritmului pentru rezolvarea problemei, trebuie s\u0103 stabilim ce date \u0219i \u00een ce form\u0103 le vom oferi ca intrare. Cu volumele de stocuri ale produselor \u00een celulele-donator \u0219i capacitatea celulelor-container nu sunt probleme, deoarece acestea sunt triviale \u2013 aceste valori vor fi m\u0103surate \u00een m3, dar \u00een ceea ce prive\u0219te costurile pentru utilizarea celulei-container \u0219i matricea costurilor pentru mutare, lucrurile nu sunt at\u00e2t de simple!<\/p>\n<p>La \u00eenceput, s\u0103 examin\u0103m calculul <b>costurile de mutare a bunurilor<\/b> din celula-donator \u00een celula-container. \u00cen primul r\u00e2nd, trebuie s\u0103 stabilim \u00een ce unit\u0103\u021bi de m\u0103sur\u0103 vom calcula costurile de mutare. Dou\u0103 dintre cele mai evidente variante sunt metri \u0219i secunde. \u00cen metri \"cura\u021bi\", calcularea costurilor de mutare nu are sens. S\u0103 ar\u0103t\u0103m acest lucru prin exemplu. S\u0103 presupunem c\u0103 celula <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/990a5fae8988ddf41395483263de2bcc.jpeg\" style=\"display:block;margin: 0 auto;\" \/> este situat\u0103 la primul nivel, celula <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/9d17b98e807444f431d01f2e77fc96f7.jpeg\" style=\"display:block;margin: 0 auto;\" \/> este la 30 metri distan\u021b\u0103 \u0219i se afl\u0103 la al doilea nivel:<\/p>\n<ul>\n<li>Mutarea din <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/3188fd9853d5cda2834a5083539ac11d.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u00een <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/e212a0be19ea687b1017c3aacec3df19.jpeg\" style=\"display:block;margin: 0 auto;\" \/> este mai costisitoare dec\u00e2t mutarea din <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/d65e60dec37fb3b83c83ca1c566f1ee9.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u00een <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/4168198a4c90bdd3dd4b7f0c904b06e0.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, deoarece este mai u\u0219or s\u0103 coboare de la al doilea nivel (1,5-2 metri de la podea) dec\u00e2t s\u0103 se ridice la al doilea, de\u0219i distan\u021ba parcurs\u0103 va fi aceea\u0219i;<\/li>\n<li>A muta 1 buc. de marf\u0103 din celula <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/039864ccd0a2bd14a99a83494f056fa3.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u00een <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/9f9bc7a256119b110f47760b145e174b.jpeg\" style=\"display:block;margin: 0 auto;\" \/> va fi mai u\u0219or dec\u00e2t a muta 10 buc. din aceea\u0219i marf\u0103, de\u0219i distan\u021ba parcurs\u0103 va fi aceea\u0219i.<\/li>\n<\/ul>\n<p>\nCosturile de mutare ar trebui s\u0103 fie considerate mai bine \u00een secunde, deoarece aceasta permite luarea \u00een considerare a diferen\u021belor de nivel \u0219i a diferen\u021belor cantitative de marf\u0103 mutat\u0103. Pentru a contabiliza costurile de mutare \u00een secunde, trebuie s\u0103 descompunem opera\u021biunea de mutare \u00een componente elementare \u0219i s\u0103 m\u0103sur\u0103m timpul necesar pentru fiecare component\u0103 elementar\u0103.<\/p>\n<p>S\u0103 presupunem c\u0103 din celula <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/538c4304e37f340a5a5a8e47e0ee2865.jpeg\" style=\"display:block;margin: 0 auto;\" \/> se mut\u0103 <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/6c7e32728f4771726f8ef9b2d78111d6.jpeg\" style=\"display:block;margin: 0 auto;\" \/> buc. de marf\u0103 \u00een container <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/fc2ad051b500eae5884404f4b9419841.jpeg\" style=\"display:block;margin: 0 auto;\" \/>. S\u0103 presupunem c\u0103 <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/6733192a31618a03e51e8e3133cb96ee.jpeg\" style=\"display:block;margin: 0 auto;\" \/> este viteza medie de deplasare a lucr\u0103torului \u00een magazie, m\u0103surat\u0103 \u00een m\/s. S\u0103 presupunem c\u0103 <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/97f7e9c65c2196fa586f957618d1c8a2.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u0219i <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/bbe48d987f180e2f9ccec6e090e6f942.jpeg\" style=\"display:block;margin: 0 auto;\" \/> sunt vitezele medii de execu\u021bie pentru opera\u021biunile de luat \u0219i pus, respectiv, pentru un volum de marf\u0103 egal cu 4 dm\u00b3 (volumul mediu pe care un angajat \u00eel ia \u00een 1 singur\u0103 dat\u0103 \u00een magazie \u00een timpul desf\u0103\u0219ur\u0103rii opera\u021biunilor). S\u0103 presupunem c\u0103 <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/267d74648f49d5a2d063b1377c6d2fe6.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u0219i <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/fefdd606d5a81ba4e2ce57b107dfe1e6.jpeg\" style=\"display:block;margin: 0 auto;\" \/> sunt \u00een\u0103l\u021bimile celulelor din care se realizeaz\u0103 opera\u021biunile de luat \u0219i pus, respectiv. De exemplu, \u00een\u0103l\u021bimea medie a primului nivel (podea) este de 1 m, al doilea nivel 2 m etc. Atunci formula pentru calcularea timpului total necesar pentru desf\u0103\u0219urarea opera\u021biunii de mutare <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/a48ae3c2e9dc8f2c3108cb2be1f96c40.jpeg\" style=\"display:block;margin: 0 auto;\" \/> este urm\u0103toarea:<\/p>\n<p><img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/55afb96b1141bb5656351bdaeba31ae4.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\u00cen tabelul 2 sunt prezentate statisticile timpului de desf\u0103\u0219urare a fiec\u0103rei opera\u021biuni elementare, colectate de angaja\u021bii magazinului, lu\u00e2nd \u00een considerare specificul bunurilor p\u0103strate.<\/p>\n<table>\n<tr>\n<th>Denomina\u021bia opera\u021biunii<\/th>\n<th>Simbol<\/th>\n<th>Valoare medie<\/th>\n<\/tr>\n<tr>\n<td>Viteza medie de deplasare a lucr\u0103torului \u00een magazie<\/td>\n<td><img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 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>Viteza medie de desf\u0103\u0219urare a unei opera\u021biuni de pus (pentru un volum de marf\u0103 de 4 dm\u00b3)<\/td>\n<td><img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/aa619b43a70a7cf646ad35d5c8883329.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/td>\n<td>2,4 sec<\/td>\n<\/tr>\n<\/table>\n<p><i>Tabelul 2. Timpul mediu pentru desf\u0103\u0219urarea opera\u021biunilor din magazie<\/i><\/p>\n<p>Am stabilit modul de calcul al costurilor de mutare. Acum este necesar s\u0103 afl\u0103m cum s\u0103 calcul\u0103m <b>costurile pentru selectarea celulei-container<\/b>Aici totul este mult, mult mai complicat dec\u00e2t costurile de mutare, deoarece: <\/p>\n<ul>\n<li>\u00een primul r\u00e2nd, costurile trebuie s\u0103 fie \u00een leg\u0103tur\u0103 direct\u0103 cu volumul celulei \u2013 acela\u0219i volum de stocuri mutat din celulele-donator este mai bine s\u0103 fie pus \u00eentr-un container mai mic dec\u00e2t \u00eentr-un container mare, at\u00e2ta vreme c\u00e2t acest volum \u00eencap \u00een ambele containere. Astfel, minimiz\u00e2nd costurile totale de alegere a containerelor, ne str\u0103duim s\u0103 economisim capacit\u0103\u021bile de depozitare \u201edeficitare\u201d \u00een zona de selec\u021bie, pentru a desf\u0103\u0219ura ulterior opera\u021biunile de plasare a m\u0103rfurilor \u00een celule. \u00cen figura 4 sunt prezentate op\u021biunile de mutare a stocurilor \u00een containere mari \u0219i mici \u0219i consecin\u021bele acestor op\u021biuni de mutare \u00een executarea opera\u021biunilor de depozitare ulterioare.<\/li>\n<li>\u00een al doilea r\u00e2nd, deoarece \u00een solu\u021bia problemei de baz\u0103 trebuie s\u0103 minimiz\u0103m tocmai costurile totale, adic\u0103 suma at\u00e2t a costurilor de mutare, c\u00e2t \u0219i a costurilor de alegere a containerelor, volumul celulelor \u00een metri cubi trebuie cumva corelat cu secunde, ceea ce nu este deloc trivial.<\/li>\n<\/ul>\n<p>\n<img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/2c906f9e80b32fcb111fcba7000ea2ba.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Fig. 4. Op\u021biunile de mutare a stocurilor \u00een containere cu capacit\u0103\u021bi diferite.<\/i><\/p>\n<p>\u00cen figura 4, \u00een ro\u0219u este reprezentat volumul stocurilor care nu mai \u00eencap \u00een container \u00een etapa a doua de plasare a m\u0103rfurilor ulterioare. <\/p>\n<p>Pentru a corela metri cubi de costuri pentru alegerea containerului cu secunde de costuri de mutare, urm\u0103toarele cerin\u021be pentru solu\u021biile calculate ale problemei vor fi utile:<\/p>\n<ul>\n<li>Este necesar ca stocurile din celula-donator s\u0103 fie mutate \u00een celula-container \u00een orice caz, dac\u0103 acest lucru reduce num\u0103rul total de celule-container \u00een care se afl\u0103 produsul.<\/li>\n<li>Trebuie respectat un echilibru \u00eentre volumele containerelor \u0219i costurile de timp pentru mutare: de exemplu, dac\u0103 \u00een noua variant\u0103 a solu\u021biei problemei, comparativ cu varianta anterioar\u0103, c\u00e2\u0219tigul \u00een volum este mare, iar pierderea \u00een costurile de timp este mic\u0103, atunci trebuie aleas\u0103 noua variant\u0103.<\/li>\n<\/ul>\n<p>\nS\u0103 \u00eencepem cu ultima cerin\u021b\u0103. Pentru a concretiza cuv\u00e2ntul ambiguu \u201eechilibru\u201d, am realizat un sondaj printre angaja\u021bii depozitului pentru a determina urm\u0103toarele. S\u0103 presupunem c\u0103 exist\u0103 o celul\u0103-container cu un volum <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/2b831b12448ccaee33c528ac622b7ee3.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, \u00een care este planificat\u0103 mutarea stocurilor din celule-donator \u0219i timpul total al acestei mut\u0103ri este egal cu <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/8050f4b02464164d334048bda86b3923.jpeg\" style=\"display:block;margin: 0 auto;\" \/>. S\u0103 presupunem c\u0103 exist\u0103 c\u00e2teva op\u021biuni alternative de plasare a acelea\u0219i cantit\u0103\u021bi de bunuri din acelea\u0219i celule donor \u00een alte containere, unde fiecare plasare are propriile evalu\u0103ri. <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/76f11cd5ab85f9092c8f458d01ac347b.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, unde <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/9e735d8a9c4cff3c69fd926eac8c85aa.jpeg\" style=\"display:block;margin: 0 auto;\" \/>&lt;<img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/d963e193a263a1505467c19e874f0aab.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u0219i <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/ff5d990cf5a1752d7bb45da9fd58cd7a.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, unde <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/485f34b3e720011c38740712cdb8edd9.jpeg\" style=\"display:block;margin: 0 auto;\" \/>&gt;<img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/c66b20d93fd1791e9f186f707b1517bb.jpeg\" style=\"display:block;margin: 0 auto;\" \/>. <\/p>\n<p>Se pune \u00eentrebarea: care este c\u00e2\u0219tigul minim \u00een volum <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/86861ad2236d827efdc683d759d4c120.jpeg\" style=\"display:block;margin: 0 auto;\" \/> acceptabil, av\u00e2nd \u00een vedere o pierdere dat\u0103 de timp? <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 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=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/283289c63fe1232e95b73d1dffdaa030.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Fig. 5. Diagrama rela\u021biei dintre economia minim\u0103 acceptabil\u0103 a volumului \u0219i cre\u0219terea diferen\u021bei de timp de execu\u021bie a opera\u021biunii.<\/i><\/p>\n<p>Cu alte cuvinte, dac\u0103 costurile suplimentare de timp se ridic\u0103 la 40 de secunde, suntem dispu\u0219i s\u0103 le cheltuim doar atunci c\u00e2nd c\u00e2\u0219tigul \u00een volum este de cel pu\u021bin 500 dm3. De\u0219i exist\u0103 o mic\u0103 non-liniaritate \u00een rela\u021bie, pentru simplificarea calculilor viitoare, vom considera c\u0103 rela\u021bia dintre variabile este liniar\u0103 \u0219i este descris\u0103 de inegalitate.<\/p>\n<p><img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/666802648033d918a1119e58963feffe.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\u00cen figura de mai jos, vom analiza urm\u0103toarele modalit\u0103\u021bi de plasare a bunurilor \u00een containere.<\/p>\n<p><img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/a1cb3a5bce4c369f63b3ebeebb738911.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Fig. 6. Op\u021biunea (a): 2 containere, volum total 400 dm3, timp total 150 sec.<\/i><br \/>\n<img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/a13f35b0e2a188e9a8cbf27bcfbf0292.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Fig. 6. Op\u021biunea (b): 2 containere, volum total 600 dm3, timp total 190 sec.<\/i><br \/>\n<img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/35699c8bd00546c9828dbe50d4b53c46.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Fig. 6. Op\u021biunea (c): 1 container, volum total 400 dm3, timp total 200 sec.<\/i><\/p>\n<p>Op\u021biunea (a) de alegere a containerelor este mai preferabil\u0103 dec\u00e2t op\u021biunea ini\u021bial\u0103, deoarece se \u00eendepline\u0219te inegalitatea: (800-400)\/10&gt;=150-120 ceea ce implic\u0103 40 &gt;= 30. Op\u021biunea (b) este mai pu\u021bin preferabil\u0103 dec\u00e2t op\u021biunea ini\u021bial\u0103, deoarece inegalitatea nu se \u00eendepline\u0219te: (800-600)\/10&gt;=190-150 ceea ce implic\u0103 20 &gt;= 40. \u00cens\u0103 op\u021biunea (c) nu se \u00eencadreaz\u0103 \u00een aceast\u0103 logic\u0103! S\u0103 analiz\u0103m aceast\u0103 op\u021biune \u00een detaliu. Pe de o parte, inegalitatea (800-400)\/10&gt;=200-120, ceea ce \u00eenseamn\u0103 c\u0103 inegalitatea 40 &gt;= 80 nu se \u00eendepline\u0219te, ceea ce indic\u0103 faptul c\u0103 c\u00e2\u0219tigul \u00een volum nu merit\u0103 o pierdere at\u00e2t de mare \u00een timp. <\/p>\n<p>Dar, pe de alt\u0103 parte, \u00een aceast\u0103 op\u021biune (c) nu doar reducem volumul total ocupat, ci \u0219i diminu\u0103m num\u0103rul de celule ocupate, ceea ce este primul din cele dou\u0103 cerin\u021be importante pentru solu\u021biile calculate la problemele enumerate mai sus. Este evident c\u0103, pentru ca aceast\u0103 cerin\u021b\u0103 s\u0103 \u00eenceap\u0103 s\u0103 fie \u00eendeplinit\u0103, trebuie s\u0103 ad\u0103ug\u0103m o anumit\u0103 constant\u0103 pozitiv\u0103 \u00een partea st\u00e2ng\u0103 a inegalit\u0103\u021bii. <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/61d6b2cb21474a2f4512d6a130a15a0a.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, unde aceast\u0103 constant\u0103 trebuie ad\u0103ugat\u0103 doar atunci c\u00e2nd num\u0103rul de containere se diminueaz\u0103. S\u0103 ne amintim c\u0103 <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/d80d33679896035041d0ca9a78e8177a.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u2014 este o variabil\u0103 care este egal\u0103 cu 1 atunci c\u00e2nd containerul <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/a83cd6273e544b63099939e6845740fb.jpeg\" style=\"display:block;margin: 0 auto;\" \/> este ales \u0219i 0 c\u00e2nd acesta nu este. <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/bc94d9e952782e630125a6e8919ba5ad.jpeg\" style=\"display:block;margin: 0 auto;\" \/> nu este selectat. S\u0103 definim, <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/1e3fb5d7013e60f67c56a56899630852.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u2013 un num\u0103r mare de containere \u00een solu\u021bia ini\u021bial\u0103 \u0219i <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/26ac9732af37e865cea1bb10a343175c.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u2013 un num\u0103r mare de containere \u00een noua solu\u021bie. \u00cen forma sa general\u0103, noua inegalitate va ar\u0103ta astfel:<\/p>\n<p><img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/1237914e5fdafcc6013203e2624009d0.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Transform\u00e2nd inegalitatea de mai sus, ob\u021binem <\/p>\n<p><img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/80b039f9ef44301c3b624ada42c28db8.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Av\u00e2nd \u00een vedere acest lucru, avem formula pentru calcularea costului total <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/cb5bce584fee0156b23adbab83f66b33.jpeg\" style=\"display:block;margin: 0 auto;\" \/> unei solu\u021bii alternative la problem\u0103:<\/p>\n<p><img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/34f382d40368a980674914916c65b4ec.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><b>Dar acum apare \u00eentrebarea<\/b>: ce valoare ar trebui s\u0103 aib\u0103 o astfel de constant\u0103 <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 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>S\u0103 presupunem c\u0103 <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/50deefe99bf1d5f948a49591904a8bfe.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u2013 distan\u021ba maxim\u0103 \u00eentre celulele depozitului dintr-o zon\u0103 ABC, care este \u00een cazul nostru de 100 m. S\u0103 presupunem c\u0103 <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/466892dd75279d08b4835a42e62444d4.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u2013 volumul maxim al celulei-container din depozit, care este \u00een cazul nostru de 1000 dm3.<\/p>\n<p><b>Prima metod\u0103 de calculare a valorii<\/b> <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/29b94b534da709020cbef206cb0d7dac.jpeg\" style=\"display:block;margin: 0 auto;\" \/>. S\u0103 analiz\u0103m o situa\u021bie \u00een care exist\u0103 2 containere pe primul nivel, \u00een care se afl\u0103 deja fizic bunuri, adic\u0103 sunt ele \u00eensele celule-donatoare, iar costurile pentru mutarea bunurilor \u00een acelea\u0219i celule sunt, evident, egale cu 0. Este necesar s\u0103 g\u0103sim o valoare pentru constant\u0103 <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/5cf81db57dd2a18cc0ec29bb7ca3da62.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, pentru care ar fi avantajos s\u0103 se mute \u00eentotdeauna resturile din container 1 \u00een container 2. \u00cenlocuind valorile <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/20bbd09e167edc3eb1ed49d8078ecf19.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u0219i <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/605017af48e7b3ca4a323642db4227cd.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u00een inegalitatea men\u021bionat\u0103 mai sus, ob\u021binem:<\/p>\n<p><img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/2794955b8f9f3d64ffe4e2b449547555.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>din care reiese<\/p>\n<p><img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/292a6e80c646c7eed80e888c8805990c.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\u00cenlocuind valorile timpului mediu de execu\u021bie a opera\u021biunilor elementare \u00een formula de mai sus, ob\u021binem<\/p>\n<p><img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/1f56bf1f98c1a3bbd65a4cea99da7efb.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><b>A doua metod\u0103 de calculare a valorii<\/b> <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/78e3dff7183b15136d9e03f4a5724479.jpeg\" style=\"display:block;margin: 0 auto;\" \/>. S\u0103 analiz\u0103m o situa\u021bie \u00een care exist\u0103 <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/02daff1eff70a2963ab8eaa067f15584.jpeg\" style=\"display:block;margin: 0 auto;\" \/> celule-donatoare din care se pl\u0103nuie\u0219te mutarea bunurilor \u00een container 1. S\u0103 denumim <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/df20c3f27815f2060aae20d260210893.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u2013 distan\u021ba de la celula-donator <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/a29ace66656cf1680c9e00258a9ff597.jpeg\" style=\"display:block;margin: 0 auto;\" \/> p\u00e2n\u0103 la container 1. Exist\u0103 de asemenea un container 2, \u00een care se afl\u0103 deja bunuri \u0219i volumul c\u0103ruia permite s\u0103 \u00eencap\u0103 resturile din toate <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/e25f0828e7d794f8d804528395f6dc7e.jpeg\" style=\"display:block;margin: 0 auto;\" \/> celulele. Pentru simplificare, s\u0103 presupunem c\u0103 volumul bunurilor mutate din celulele-donatoare \u00een containere este acela\u0219i \u0219i egal cu <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/35c3392a83fc3b7eef928ddb5e93961a.jpeg\" style=\"display:block;margin: 0 auto;\" \/>. Este necesar s\u0103 g\u0103sim o valoare pentru constant\u0103 <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/c9bc10aade46cc3c63628c0ba100b364.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, pentru care plasarea tuturor resturilor din <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/e610d9981da2857a541f028a217f2306.jpeg\" style=\"display:block;margin: 0 auto;\" \/> celule \u00een container 2 ar fi \u00eentotdeauna mai avantajoas\u0103 dec\u00e2t plasarea acestora \u00een diverse containere:<\/p>\n<p><img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/27f4f99a920799fba9725f30a04c8ebc.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Transform\u00e2nd inegalitatea, ob\u021binem<\/p>\n<p><img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/56abddb4fc3e54eeb1fe466c68e5d8d7.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Pentru a \"consolida\" valoarea lui <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/d77359ea816f9d45a8910cb26649f717.jpeg\" style=\"display:block;margin: 0 auto;\" \/>, vom presupune c\u0103 <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/9edf13fb4e34b5da26957e451300046f.jpeg\" style=\"display:block;margin: 0 auto;\" \/> = 0. Num\u0103rul mediu de celule care particip\u0103 \u00een mod obi\u0219nuit \u00een procedura de comprimare a resturilor \u00een depozit este de 10. \u00cemp\u0103c\u00e2nd valorile cunoscute ale m\u0103rimilor, ob\u021binem urm\u0103toarea valoare a constantei<\/p>\n<p><img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/40323791fd8cd2be3f29a2becf78e175.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Lu\u0103m cea mai mare valoare, calculat\u0103 pentru fiecare variant\u0103, aceasta va fi valoarea m\u0103rimii <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/fd018460792c79b8a7953c06b839711d.jpeg\" style=\"display:block;margin: 0 auto;\" \/> pentru parametrii specifica\u021bi ai depozitului. Acum, pentru a finaliza, vom scrie formula pentru calcularea costurilor totale <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/d4cb2c81bcc788380f1f0c1123b0eeda.jpeg\" style=\"display:block;margin: 0 auto;\" \/> pentru o anumit\u0103 solu\u021bie acceptabil\u0103 <img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/052e710199e9417aaea94b16dbed47d3.jpeg\" style=\"display:block;margin: 0 auto;\" \/>:<\/p>\n<p><img decoding=\"async\" alt=\"Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1)\" src=\"\/wp-content\/uploads\/2019\/08\/8dd672c7b91639fe1872ef50dca7a220.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Iat\u0103 acum, dup\u0103 toate <b>eforturile titanice<\/b> de transformare a datelor de intrare, putem spune c\u0103 toate datele de intrare au fost transformate \u00een forma necesar\u0103 \u0219i sunt gata pentru utilizare \u00een algoritmul de optimizare.<\/p>\n<h4>Concluzie<\/h4>\n<p>\nA\u0219a cum arat\u0103 practica, munca \u0219i importan\u021ba etapei de preg\u0103tire \u0219i transformare a datelor de intrare pentru algoritm sunt adesea subestimate. \u00cen acest articol, am dedicat o aten\u021bie deosebit\u0103 acestei etape pentru a ar\u0103ta c\u0103 doar datele de intrare preg\u0103tite calitativ \u0219i cu discern\u0103m\u00e2nt pot face ca solu\u021biile calculate de algoritm s\u0103 fie cu adev\u0103rat valoroase pentru client. Da, au fost multe concluzii de formule, dar v-am avertizat \u0219i \u00eenainte de asta \ud83d\ude42<\/p>\n<p>\u00cen articolul urm\u0103tor, \u00een sf\u00e2r\u0219it vom ajunge la ceea ce a fost g\u00e2ndit \u00een ultimele 2 publica\u021bii - algoritmul de optimizare discret\u0103.<\/p>\n<p><i>Articolul a fost preg\u0103tit de<br \/>\nRoman Shangin, programator \u00een departamentul de proiecte,<br \/>\ncompania Primul Bit, ora\u0219ul Chelyabinsk<\/i><br \/>\n<br \/>Sursa: <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.2.1 - 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\/ro\/blog\/news\/diskretnaya-matematika-dlya-wms-algoritm-szhatiya-tovarov-v-yachejkah-chast-1\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"ro_RO\" \/>\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\/ro\/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\udd47Matematica discret\u0103 pentru WMS: algoritmul de comprimare a produselor \u00een celule (partea 1) | ProHoster","description":"\u00cen articol discut\u0103m.","canonical_url":"https:\/\/prohoster.info\/ro\/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":"ro_RO","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\/ro\/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\/ro\/wp-json\/wp\/v2\/posts\/37108","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/comments?post=37108"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/37108\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media\/27819"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media?parent=37108"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/categories?post=37108"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/tags?post=37108"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}