ProHoster > blog > habari za mtandao > Hisabati ya kipekee ya WMS: algorithm ya kukandamiza bidhaa kwenye seli (sehemu ya 1)
Hisabati ya kipekee ya WMS: algorithm ya kukandamiza bidhaa kwenye seli (sehemu ya 1)
Katika nakala hii tutakuambia jinsi tulivyotatua shida ya ukosefu wa seli za bure kwenye ghala na ukuzaji wa algorithm ya utoshelezaji ya kutatua shida kama hiyo. Hebu tuzungumze kuhusu jinsi "tulivyojenga" mfano wa hisabati wa tatizo la uboreshaji, na kuhusu matatizo ambayo tulikumbana nayo bila kutarajia wakati wa kuchakata data ya pembejeo ya algoriti.
Ikiwa una nia ya matumizi ya hisabati katika biashara na hauogopi mabadiliko ya utambulisho wa fomula katika kiwango cha daraja la 5, basi karibu kwa paka!
Nakala hiyo itakuwa muhimu kwa wale wanaotekeleza WMS-mifumo, inafanya kazi katika ghala au tasnia ya vifaa vya uzalishaji, na vile vile waandaaji wa programu ambao wana nia ya matumizi ya hisabati katika biashara na uboreshaji wa michakato katika biashara.
Sehemu ya utangulizi
Chapisho hili linaendelea na mfululizo wa makala ambamo tunashiriki uzoefu wetu wenye mafanikio katika kutekeleza kanuni za uboreshaji katika michakato ya ghala.
Π makala iliyopita inaeleza maalum ya ghala ambapo sisi kutekelezwa WMS-mfumo, na pia inaeleza kwa nini tulihitaji kutatua tatizo la kuunganisha bati za bidhaa zilizobaki wakati wa utekelezaji WMS-mifumo, na jinsi tulivyofanya.
Tulipomaliza kuandika nakala juu ya algorithms ya uboreshaji, iligeuka kuwa kubwa sana, kwa hivyo tuliamua kugawanya nyenzo zilizokusanywa katika sehemu 2:
Katika sehemu ya kwanza (kifungu hiki) tutazungumzia jinsi tulivyo "jenga" mfano wa hisabati wa tatizo, na kuhusu matatizo makubwa ambayo tulikutana nayo bila kutarajia wakati wa usindikaji na kubadilisha data ya pembejeo kwa algorithm.
Katika sehemu ya pili tutazingatia kwa undani utekelezaji wa algorithm katika lugha C + +, tutafanya jaribio la kimahesabu na tufanye muhtasari wa uzoefu tuliopata wakati wa utekelezaji wa "teknolojia mahiri" katika michakato ya biashara ya mteja.
Jinsi ya kusoma makala. Ikiwa unasoma kifungu kilichopita, basi unaweza kwenda mara moja kwa sura "Muhtasari wa suluhisho zilizopo"; ikiwa sivyo, basi maelezo ya shida inayotatuliwa iko kwenye nyara hapa chini.
Maelezo ya tatizo linalotatuliwa kwenye ghala la mteja
Shida katika michakato
Mnamo 2018, tulikamilisha mradi wa kutekeleza WMS-mifumo katika ghala "Nyumba ya Biashara" LD" huko Chelyabinsk. Tulitekeleza bidhaa "1C-Logistics: Warehouse Management 3" kwa maeneo 20 ya kazi: waendeshaji. WMS, wenye maduka, madereva ya forklift. Ghala la wastani ni karibu 4 elfu m2, idadi ya seli ni 5000 na idadi ya SKU ni 4500. Ghala huhifadhi valves za mpira wa uzalishaji wetu wenyewe wa ukubwa tofauti kutoka kilo 1 hadi 400 kg. Mali katika ghala huhifadhiwa kwa makundi, kwa kuwa kuna haja ya kuchagua bidhaa kulingana na FIFO.
Wakati wa kubuni mipango ya otomatiki ya mchakato wa ghala, tulikabiliwa na shida iliyopo ya uhifadhi wa hesabu usio bora. Maalum ya kuhifadhi na kuwekewa cranes ni kwamba seli moja ya hifadhi ya kitengo inaweza tu kuwa na vitu kutoka kwa kundi moja (angalia Mchoro 1). Bidhaa hufika kwenye ghala kila siku na kila kuwasili ni kundi tofauti. Kwa jumla, kama matokeo ya mwezi 1 wa operesheni ya ghala, vikundi 30 tofauti huundwa, licha ya ukweli kwamba kila moja inapaswa kuhifadhiwa kwenye seli tofauti. Bidhaa mara nyingi huchaguliwa si kwa pallets nzima, lakini vipande vipande, na kwa sababu hiyo, katika ukanda wa uteuzi wa kipande katika seli nyingi picha ifuatayo inazingatiwa: katika kiini kilicho na kiasi cha zaidi ya 1 m3 kuna vipande kadhaa vya cranes. kuchukua chini ya 5-10% ya kiasi cha seli.
Mchoro 1. Picha ya vipande kadhaa kwenye seli
Ni wazi kwamba uwezo wa kuhifadhi hautumiki kikamilifu. Ili kufikiria ukubwa wa maafa, naweza kutoa takwimu: kwa wastani, kuna seli 1 hadi 3 za seli hizo na kiasi cha zaidi ya 100 m300 na mizani "minuscule" wakati wa vipindi tofauti vya uendeshaji wa ghala. Kwa kuwa ghala ni ndogo, wakati wa misimu ya ghala yenye shughuli nyingi, jambo hili huwa "kizuizi" na hupunguza sana taratibu za ghala za kukubalika na usafirishaji.
Wazo la suluhisho la shida
Wazo liliibuka: bati za mabaki zilizo na tarehe zilizo karibu zaidi zipunguzwe hadi kundi moja, na mabaki kama hayo yaliyo na kundi moja yanapaswa kuwekwa pamoja kwenye seli moja, au kwa kadhaa, ikiwa hakuna nafasi ya kutosha katika moja ya kuchukua. kiasi kizima cha mabaki. Mfano wa "compression" kama hiyo umeonyeshwa kwenye Mchoro 2.
Mtini.2. Mpango wa kubana mabaki kwenye seli
Hii inakuwezesha kupunguza kwa kiasi kikubwa nafasi ya ghala iliyochukuliwa ambayo itatumika kwa bidhaa mpya zinazowekwa. Katika hali ambapo uwezo wa ghala umejaa, hatua kama hiyo ni muhimu sana, vinginevyo kunaweza kuwa hakuna nafasi ya kutosha ya kubeba bidhaa mpya, ambayo itasababisha kusimamishwa kwa michakato ya ghala ya uwekaji na kujaza na, kama matokeo, kwa kuacha kukubalika na usafirishaji. Hapo awali, kabla ya utekelezaji wa mfumo wa WMS, operesheni kama hiyo ilifanywa kwa mikono, ambayo haikuwa na ufanisi, kwani mchakato wa kutafuta mizani inayofaa kwenye seli ulikuwa mrefu sana. Sasa, kwa kuanzishwa kwa mfumo wa WMS, tuliamua kufanya mchakato otomatiki, kuharakisha na kuifanya iwe ya akili.
Mchakato wa kutatua shida kama hiyo umegawanywa katika hatua 2:
katika hatua ya kwanza tunapata vikundi vya batches karibu katika tarehe kwa ajili ya compression (wakfu kwa kazi hii makala iliyopita);
katika hatua ya pili, kwa kila kikundi cha batches tunahesabu uwekaji wa kompakt zaidi wa bidhaa zilizobaki kwenye seli.
Katika makala ya sasa tutazingatia hatua ya pili ya algorithm.
Tathmini ya suluhisho zilizopo
Kabla ya kuendelea na maelezo ya algorithms ambayo tumeunda, inafaa kufanya muhtasari mfupi wa mifumo iliyopo kwenye soko. WMS, ambayo hutekeleza utendakazi sawa wa ukandamizaji.
Kwanza kabisa, ni muhimu kutambua bidhaa "1C: Enterprise 8. WMS Logistics. Usimamizi wa ghala 4", ambayo inamilikiwa na kuigwa na 1C na ni ya kizazi cha nne WMS-mifumo iliyotengenezwa na AXELOT. Mfumo huu unadai utendakazi wa mgandamizo, ambao umeundwa kuunganisha bidhaa tofauti kusalia katika seli moja ya kawaida. Inafaa kutaja kuwa utendaji wa ukandamizaji katika mfumo kama huo pia unajumuisha uwezekano mwingine, kwa mfano, kurekebisha uwekaji wa bidhaa kwenye seli kulingana na madarasa yao ya ABC, lakini hatutakaa juu yao.
Ukichambua msimbo wa 1C: Enterprise 8. Mfumo wa Logistics wa WMS. Usimamizi wa ghala 4" (ambayo iko wazi katika sehemu hii ya utendakazi), tunaweza kuhitimisha yafuatayo. Kanuni ya mfinyazo iliyosalia hutekeleza mantiki ya mstari wa awali na hakuwezi kuwa na mazungumzo ya mbano "mojawapo". Kwa kawaida, haitoi mkusanyiko wa vyama. Wateja kadhaa ambao walikuwa na mfumo kama huo kutekelezwa walilalamika juu ya matokeo ya upangaji wa ukandamizaji. Kwa mfano, mara nyingi katika mazoezi wakati wa ukandamizaji hali ifuatayo ilitokea: pcs 100. Imepangwa kuhamisha bidhaa zilizobaki kutoka kwa seli moja hadi nyingine, ambapo kipande 1 iko. bidhaa, ingawa ni sawa kutoka kwa mtazamo wa matumizi ya wakati kufanya kinyume.
Pia, utendakazi wa kubana bidhaa zilizobaki kwenye seli hutangazwa katika nchi nyingi za kigeni. WMS-mifumo, lakini, kwa bahati mbaya, hatuna maoni ya kweli juu ya ufanisi wa algorithms (hii ni siri ya biashara), na sio wazo juu ya kina cha mantiki yao (programu ya chanzo-chanzo cha wamiliki), kwa hivyo hatuwezi kuhukumu.
Tafuta mfano wa hisabati wa tatizo
Ili kuunda algorithms ya hali ya juu ya kutatua shida, kwanza ni muhimu kuunda shida hii kihisabati, ambayo ndio tutafanya.
Kuna seli nyingi , ambayo ina mabaki ya baadhi ya bidhaa. Katika kile kinachofuata, tutaita seli kama seli za wafadhili. Hebu kuashiria kiasi cha bidhaa katika seli $.
Ni muhimu kusema kwamba ni bidhaa moja tu ya kundi moja, au batches kadhaa zilizounganishwa hapo awali kwenye nguzo (soma: makala iliyopita), ambayo ni kutokana na maalum ya kuhifadhi na kuhifadhi bidhaa. Bidhaa tofauti au makundi mbalimbali ya bechi yanapaswa kuendesha utaratibu wao tofauti wa kubana.
Kuna seli nyingi , ambamo mabaki kutoka kwa seli za wafadhili yanaweza kuwekwa. Tutaita zaidi seli kama hizo za kontena. Hizi zinaweza kuwa seli za bure kwenye ghala au seli za wafadhili kutoka kwa anuwai . Daima nyingi ni sehemu ndogo .
Kwa kila seli kutoka kwa wengi Vizuizi vya uwezo vimewekwa , kipimo katika dm3. Dm3 moja ni mchemraba na pande za cm 10. Bidhaa zilizohifadhiwa kwenye ghala ni kubwa kabisa, hivyo katika kesi hii discretization hiyo ni ya kutosha kabisa.
Kwa kuzingatia matrix ya umbali mfupi zaidi katika mita kati ya kila jozi ya seli Ambapo ΠΈ ni ya seti ΠΈ ipasavyo.
Hebu kuashiria "gharama" za kuhamisha bidhaa kutoka kwa seli kwa seli . Hebu kuashiria "gharama" za kuchagua chombo kuhamisha mabaki kutoka kwa seli zingine ndani yake. Jinsi hasa na katika vitengo gani vya kipimo maadili yatahesabiwa ΠΈ tutazingatia zaidi (tazama sehemu ya kuandaa data ya pembejeo), kwa sasa inatosha kusema kwamba maadili kama haya yatalingana moja kwa moja na maadili. ΠΈ ipasavyo.
Wacha tuonyeshe kwa kigezo ambacho huchukua thamani 1 ikiwa salio ni kutoka kwa seli kuhamishiwa kwenye kontena , na 0 vinginevyo. Wacha tuonyeshe kwa tofauti ambayo inachukua thamani 1 ikiwa chombo ina bidhaa iliyobaki, na 0 vinginevyo.
Kazi imeelezwa kama ifuatavyo: unahitaji kupata vyombo vingi sana na hivyo "ambatisha" seli za wafadhili kwenye seli za kontena ili kupunguza utendakazi
chini ya vikwazo
Kwa jumla, wakati wa kuhesabu suluhisho la shida, tunajitahidi:
kwanza, kuokoa uwezo wa kuhifadhi;
pili, kuokoa muda wa wenye duka.
Kizuizi cha mwisho kinamaanisha kuwa hatuwezi kuhamisha bidhaa kwenye kontena ambalo hatukuchagua, na kwa hivyo "hatukuingiza gharama" kwa kuichagua. Kizuizi hiki pia kinamaanisha kuwa kiasi cha bidhaa zinazohamishwa kutoka seli hadi kwenye kontena haipaswi kuzidi uwezo wa kontena. Kwa kutatua tatizo tunamaanisha seti ya vyombo na mbinu za kupachika seli za wafadhili kwenye makontena.
Uundaji huu wa shida ya uboreshaji sio mpya, na umesomwa na wanahisabati wengi tangu mapema miaka ya 80 ya karne iliyopita. Katika fasihi ya kigeni kuna shida 2 za utoshelezaji na mfano unaofaa wa hesabu: Tatizo la Eneo la Kituo Chenye Uwezo wa Chanzo Kimoja ΠΈ Tatizo la Mahali pa Kituo Chenye Uwezo wa Vyanzo vingi (tutazungumza juu ya tofauti za kazi baadaye). Inafaa kusema kuwa katika fasihi ya hesabu, uundaji wa shida mbili za utoshelezaji huundwa kulingana na eneo la biashara chini, kwa hivyo jina "Mahali pa Kituo". Kwa sehemu kubwa, hii ni heshima kwa mila, kwani kwa mara ya kwanza hitaji la kutatua shida kama hizi za ujumuishaji lilitoka kwa uwanja wa vifaa, haswa kutoka kwa sekta ya kijeshi na viwanda katika miaka ya 50 ya karne iliyopita. Kwa upande wa eneo la biashara, kazi kama hizi zimeundwa kama ifuatavyo:
Kuna idadi maalum ya miji ambapo kuna uwezekano wa kupata biashara za utengenezaji (hapa inajulikana kama miji ya utengenezaji). Kwa kila jiji la utengenezaji, gharama za kufungua biashara ndani yake zimeainishwa, na vile vile kizuizi juu ya uwezo wa uzalishaji wa biashara iliyofunguliwa ndani yake.
Kuna seti fupi ya miji ambayo wateja wanapatikana (hapa inajulikana kama miji ya wateja). Kwa kila jiji la mteja kama hilo, kiasi cha mahitaji ya bidhaa kinatajwa. Kwa unyenyekevu, tutafikiri kuwa kuna bidhaa moja tu ambayo hutolewa na makampuni ya biashara na hutumiwa na wateja.
Kwa kila jozi ya mtengenezaji wa jiji na mteja wa jiji, thamani ya gharama za usafiri kwa kutoa kiasi kinachohitajika cha bidhaa kutoka kwa mtengenezaji hadi mteja imeelezwa.
Unahitaji kupata katika miji gani ya kufungua biashara na jinsi ya kuambatisha wateja kwa biashara kama hizo ili:
Gharama za jumla za kufungua biashara na gharama za usafirishaji zilikuwa ndogo;
Kiasi cha mahitaji kutoka kwa wateja waliopewa biashara yoyote ya wazi hakikuzidi uwezo wa uzalishaji wa biashara hiyo.
Sasa inafaa kutaja tofauti pekee katika shida hizi mbili za kitamaduni:
Tatizo la Eneo la Kituo Chenye Uwezo wa Chanzo Kimoja - mteja hutolewa kutoka kwa kituo kimoja tu kilicho wazi;
Tatizo la Mahali pa Kituo Chenye Uwezo wa Vyanzo Vingi - mteja anaweza kutolewa kutoka kwa vifaa kadhaa vilivyo wazi kwa wakati mmoja.
Tofauti kama hiyo kati ya shida hizi mbili haina maana kwa mtazamo wa kwanza, lakini, kwa kweli, husababisha muundo tofauti kabisa wa mchanganyiko wa shida kama hizo na, kama matokeo, kwa algorithms tofauti kabisa ya kuzitatua. Tofauti kati ya kazi zinaonyeshwa kwenye takwimu hapa chini.
Mtini.3. a) Tatizo la Mahali pa Kituo Chenye Uwezo wa Vyanzo vingi
Mtini.3. b) Tatizo la Eneo la Kituo Chenye Uwezo wa Chanzo Kimoja
Kazi zote mbili -vigumu, yaani, hakuna algorithm halisi ambayo inaweza kutatua tatizo kama hilo kwa wakati wa polynomial katika saizi ya data ya ingizo. Kwa maneno rahisi, algorithms zote kamili za kusuluhisha shida zitafanya kazi kwa wakati unaofaa, ingawa labda haraka kuliko utaftaji kamili wa chaguzi. Tangu kazi -ngumu, basi tutazingatia makadirio ya heuristics, yaani, algorithms ambayo itahesabu mara kwa mara suluhisho karibu sana na mojawapo na itafanya kazi haraka sana. Ikiwa una nia ya kazi hiyo, unaweza kupata muhtasari mzuri kwa Kirusi hapa.
Ikiwa tutahamia kwa istilahi ya shida yetu ya ukandamizaji bora wa bidhaa kwenye seli, basi:
miji ya wateja ni seli za wafadhili na bidhaa zilizobaki,
miji ya utengenezaji - seli za vyombo , ambamo masalio kutoka kwa seli zingine zinapaswa kuwekwa,
gharama za usafiri - gharama za muda mwenye duka kuhamisha kiasi cha bidhaa kutoka kwa seli ya wafadhili kwenye seli ya chombo ;
gharama za kufungua biashara - gharama za kuchagua chombo , sawa na kiasi cha seli ya chombo , ikizidishwa na mgawo fulani wa kuhifadhi kiasi cha bure (thamani ya mgawo daima ni > 1) (angalia sehemu inayotayarisha data ya ingizo).
Baada ya mlinganisho na ufumbuzi unaojulikana wa classical wa tatizo umetolewa, ni muhimu kujibu swali muhimu ambalo uchaguzi wa usanifu wa algorithm ya ufumbuzi inategemea: kusonga mabaki kutoka kwa kiini cha wafadhili inawezekana tu kwa moja. na kontena moja tu (Chanzo Kimoja), au inawezekana kusogeza mabaki kwenye seli kadhaa za kontena (Chanzo-Nyingi)?
Inafaa kumbuka kuwa katika mazoezi uundaji wote wa shida hufanyika. Tunatoa faida na hasara zote kwa kila mpangilio kama huu hapa chini:
Lahaja ya tatizo
Faida za chaguo
Hasara za chaguo
Chanzo Kimoja
Shughuli za usafirishaji wa bidhaa zinakokotolewa kwa kutumia lahaja hii ya tatizo:
zinahitaji udhibiti mdogo kwa upande wa mwenye duka (alichukua KILA KITU kutoka kwa seli moja, akaweka KILA KITU kwenye seli nyingine ya chombo), ambayo huondoa hatari za: makosa wakati wa kuhesabu tena wingi wa bidhaa wakati wa kufanya shughuli za "Weka kwenye seli"; makosa katika kuingiza kiasi kilichohesabiwa tena kwenye TSD;
Hakuna wakati unaohitajika kuhesabu tena idadi ya bidhaa wakati wa kufanya shughuli za "Weka kwenye seli" na kuziingiza kwenye TSD.
Vyanzo vingi
Mifinyizo inayokokotolewa kwa kutumia toleo hili la tatizo kwa kawaida huwa na kongamano la 10-15% zaidi ikilinganishwa na mbano zinazokokotolewa kwa kutumia chaguo la "Chanzo Kimoja". Lakini pia tunaona kuwa kadiri idadi ya mabaki katika seli za wafadhili inavyopungua, ndivyo tofauti ya ushikamano inavyopungua.
Shughuli za usafirishaji wa bidhaa zinakokotolewa kwa kutumia lahaja hii ya tatizo:
zinahitaji udhibiti mkubwa kwa upande wa muuza duka (ni muhimu kuhesabu tena idadi ya bidhaa zilizohamishwa katika kila seli zilizopangwa), ambayo huondoa hatari ya makosa wakati wa kuhesabu tena idadi ya bidhaa na kuingiza data kwenye TSD wakati wa kufanya " Weka kwenye seliβ shughuli
Inachukua muda kuhesabu tena idadi ya bidhaa wakati wa kufanya shughuli za "Weka kwenye seli".
Inachukua muda kwa "juu" (simama, nenda kwenye godoro, changanua msimbopau wa seli ya chombo) wakati wa kufanya shughuli za "Weka kwenye seli"
Wakati mwingine algorithm inaweza "kugawanya" idadi ya godoro karibu kamili kati ya idadi kubwa ya seli za kontena ambazo tayari zina bidhaa inayofaa, ambayo, kutoka kwa maoni ya mteja, haikukubalika.
Jedwali 1. Faida na hasara za chaguzi za Chanzo Kimoja na Chanzo-Nyingi.
Kwa kuwa chaguo la Chanzo Kimoja lina faida zaidi, na pia kwa kuzingatia ukweli kwamba idadi ndogo ya mabaki katika seli za wafadhili, tofauti ndogo katika kiwango cha ukandamizaji wa compression uliohesabiwa kwa lahaja zote mbili za shida, chaguo letu lilianguka. chaguo la Chanzo Kimoja.
Inafaa kusema kuwa suluhisho la chaguo la Vyanzo vingi pia hufanyika. Kuna idadi kubwa ya algorithms madhubuti ya kuisuluhisha, ambayo nyingi huja kutatua shida kadhaa za usafirishaji. Pia kuna sio tu algorithms ya ufanisi, lakini pia ya kifahari, kwa mfano, hapa.
Inatayarisha Data ya Kuingiza
Kabla ya kuanza kuchambua na kuunda algorithm ya kutatua tatizo, ni muhimu kuamua ni data gani na kwa namna gani tutailisha kama pembejeo. Hakuna shida na kiasi cha bidhaa zilizobaki katika seli za wafadhili na uwezo wa seli za chombo, kwani hii ni ndogo - idadi kama hiyo itapimwa kwa m3, lakini kwa gharama ya kutumia kiini cha chombo na matrix ya gharama ya kusonga, sio kila kitu. ni rahisi sana!
Hebu tuangalie hesabu kwanza gharama za usafirishaji wa bidhaa kutoka kwa seli ya wafadhili hadi seli ya kontena. Kwanza kabisa, ni muhimu kuamua katika vitengo gani vya kipimo tutahesabu gharama za harakati. Chaguzi mbili za wazi zaidi ni mita na sekunde. Haina maana kuhesabu gharama za usafiri katika mita "safi". Hebu tuonyeshe hili kwa mfano. Acha kiini iko kwenye safu ya kwanza, seli kuondolewa kwa mita 30 na iko kwenye daraja la pili:
Kuhama kutoka Π² ghali zaidi kuliko kuhama kutoka Π² , kwa kuwa kwenda chini kutoka daraja la pili (mita 1,5-2 kutoka sakafu) ni rahisi zaidi kuliko kwenda hadi pili, ingawa umbali utakuwa sawa;
Hoja 1 pc. bidhaa kutoka kwa seli Π² Itakuwa rahisi zaidi kuliko kusonga vipande 10. bidhaa sawa, ingawa umbali utakuwa sawa.
Ni bora kuzingatia gharama za kusonga kwa sekunde, kwani hii hukuruhusu kuzingatia tofauti za viwango na tofauti katika idadi ya bidhaa zinazohamishwa. Ili kuhesabu gharama ya harakati kwa sekunde, ni lazima tutengane operesheni ya harakati katika vipengele vya msingi na kuchukua vipimo vya muda kwa ajili ya utekelezaji wa kila sehemu ya msingi.
Acha kutoka kwa seli hatua Kompyuta. bidhaa kwenye chombo . Hebu β kasi ya wastani ya mwendo wa mfanyakazi katika ghala, kipimo katika m/sec. Hebu ΠΈ - kasi ya wastani ya shughuli za wakati mmoja huchukua na kuweka, kwa mtiririko huo, kwa kiasi cha bidhaa sawa na 4 dm3 (kiasi cha wastani ambacho mfanyakazi huchukua kwa wakati katika ghala wakati wa kufanya shughuli). Hebu ΠΈ urefu wa seli ambazo shughuli za kuchukua na kuweka zinafanywa, kwa mtiririko huo. Kwa mfano, urefu wa wastani wa tier ya kwanza (sakafu) ni 1 m, tier ya pili ni 2 m, nk. Kisha formula ya kuhesabu muda wa jumla wa kukamilisha operesheni ya kusonga ni inayofuata:
Jedwali la 2 linaonyesha takwimu juu ya muda wa utekelezaji wa kila operesheni ya msingi, iliyokusanywa na wafanyakazi wa ghala, kwa kuzingatia maalum ya bidhaa zilizohifadhiwa.
jina la operesheni
Uteuzi
Thamani ya wastani
Kasi ya wastani ya mfanyakazi kuzunguka ghala
1,5 m/s
Kasi ya wastani ya operesheni moja ya kuweka (kwa kiasi cha bidhaa cha 4 dm3)
Dakika ya 2,4
Jedwali 2. Muda wa wastani wa kukamilisha shughuli za ghala
Tumeamua juu ya njia ya kuhesabu gharama za kusonga. Sasa tunahitaji kujua jinsi ya kuhesabu gharama za kuchagua kiini cha chombo. Kila kitu hapa ni kikubwa, ngumu zaidi kuliko gharama za kusonga, kwa sababu:
kwanza, gharama zinapaswa kutegemea moja kwa moja kiasi cha seli - kiasi sawa cha mabaki yaliyohamishwa kutoka kwa seli za wafadhili ni bora kuwekwa kwenye chombo cha kiasi kidogo kuliko kwenye chombo kikubwa, mradi kiasi hicho kinafaa kabisa katika vyombo vyote viwili. Kwa hivyo, kwa kupunguza gharama za jumla za kuchagua vyombo, tunajitahidi kuokoa "adimu" uwezo wa kuhifadhi bila malipo katika eneo la uteuzi ili kufanya shughuli zinazofuata za kuweka bidhaa kwenye seli. Mchoro wa 4 unaonyesha chaguzi za kuhamisha mabaki kwenye kontena kubwa na ndogo na matokeo ya chaguzi hizi za uhamishaji katika shughuli zinazofuata za ghala.
pili, kwa kuwa katika kutatua shida ya asili tunahitaji kupunguza gharama kamili, na hii ni jumla ya gharama za kusonga na gharama za kuchagua vyombo, basi kiasi cha seli katika mita za ujazo zinahitaji kuunganishwa kwa sekunde. ambayo ni mbali na madogo.
Mchele. 4. Chaguzi za kuhamisha mabaki kwenye vyombo vya uwezo tofauti.
Mchoro wa 4 unaonyesha kwa rangi nyekundu kiasi cha mabaki ambayo hayatoshei tena kwenye kontena katika hatua ya pili ya kuweka bidhaa zinazofuata.
Itasaidia kuunganisha mita za ujazo za gharama za kuchagua chombo na sekunde za gharama za kusonga mahitaji yafuatayo ya suluhisho zilizohesabiwa kwa shida:
Ni muhimu kwamba salio kutoka kwa pipa la wafadhili zihamishwe hadi kwenye pipa la chombo kwa hali yoyote ikiwa hii itapunguza jumla ya idadi ya mapipa ya kontena yenye bidhaa.
Inahitajika kudumisha usawa kati ya kiasi cha vyombo na wakati unaotumika kusonga: kwa mfano, ikiwa katika suluhisho mpya la shida ikilinganishwa na suluhisho la hapo awali, faida ya kiasi ni kubwa, lakini upotezaji wa wakati ni mdogo. , basi ni muhimu kuchagua chaguo jipya.
Wacha tuanze na hitaji la mwisho. Ili kufafanua neno lisiloeleweka "usawa," tulifanya uchunguzi wa wafanyikazi wa ghala ili kujua yafuatayo. Hebu kuwe na kiini cha chombo cha kiasi , ambayo harakati ya bidhaa iliyobaki kutoka kwa seli za wafadhili hutolewa na muda wa jumla wa harakati hiyo ni sawa na . Acha kuwe na chaguzi mbadala kadhaa za kuweka kiwango sawa cha bidhaa kutoka kwa seli zile zile za wafadhili kwenye vyombo vingine, ambapo kila uwekaji una makadirio yake. Ambapo < ΠΈ Ambapo >.
Swali linaulizwa: ni faida gani ya chini kwa kiasi inayokubalika, kwa thamani fulani ya upotezaji wa wakati ? Hebu tueleze kwa mfano. Hapo awali, mabaki yalitakiwa kuwekwa kwenye chombo chenye ujazo wa 1000 dm3 (1 m3) na wakati wa kuhamisha ulikuwa sekunde 70. Kuna chaguo la kuweka mabaki kwenye chombo kingine na kiasi cha 500 dm3 na muda wa sekunde 130. Swali: je, tuko tayari kutumia sekunde 60 za ziada za muda wa mwenye duka kuhamisha bidhaa ili kuokoa 500 dm3 za ujazo wa bure? Kulingana na matokeo ya uchunguzi wa wafanyakazi wa ghala, mchoro ufuatao uliundwa.
Mchele. 5. Mchoro wa utegemezi wa akiba ya kiwango cha chini kinachoruhusiwa juu ya ongezeko la tofauti katika muda wa operesheni.
Hiyo ni, ikiwa gharama za muda wa ziada ni sekunde 40, basi tuko tayari kuzitumia tu wakati faida ya kiasi ni angalau 500 dm3. Licha ya ukweli kwamba kuna kutokuwa na usawa kidogo katika utegemezi, kwa unyenyekevu wa mahesabu zaidi tutafikiria kuwa utegemezi kati ya wingi ni wa mstari na unaelezewa na usawa.
Katika takwimu hapa chini, tunazingatia njia zifuatazo za kuweka bidhaa kwenye vyombo.
Mchele. 6. Chaguo (a): Vyombo 2, jumla ya kiasi 400 dm3, muda wa jumla 150 sec.
Mchele. 6. Chaguo (b): Vyombo 2, jumla ya kiasi 600 dm3, muda wa jumla 190 sec.
Mchele. 6. Chaguo (c): Chombo 1, jumla ya ujazo 400 dm3, muda wa jumla 200 sec.
Chaguo (a) la kuchagua vyombo ni vyema zaidi kuliko chaguo la awali, kwa kuwa ukosefu wa usawa unashikilia: (800-400)/10>=150-120, ambayo ina maana 40 >= 30. Chaguo (b) halipendelewi zaidi ya ile ya awali. chaguo , kwani usawa haushiki: (800-600)/10>=190-150 ambayo ina maana 20 >= 40. Lakini chaguo (c) haliingii katika mantiki hiyo! Hebu fikiria chaguo hili kwa undani zaidi. Kwa upande mmoja, kukosekana kwa usawa (800-400)/10>=200-120, ambayo ina maana ya kukosekana kwa usawa 40>= 80 hairidhiki, ambayo inaonyesha kuwa faida ya ujazo haifai hasara kubwa kama hiyo kwa wakati.
Lakini kwa upande mwingine, katika chaguo hili (c) sisi sio tu kupunguza kiasi cha jumla cha ulichukua, lakini pia kupunguza idadi ya seli zilizochukuliwa, ambayo ni ya kwanza ya mahitaji mawili muhimu kwa ufumbuzi wa computable kwa matatizo yaliyoorodheshwa hapo juu. Kwa wazi, ili hitaji hili lianze kutimizwa, ni muhimu kuongeza mara kwa mara chanya kwa upande wa kushoto wa ukosefu wa usawa. , na mara kwa mara vile mahitaji ya kuongezwa tu wakati idadi ya vyombo itapungua. Tukumbuke hilo ni tofauti sawa na 1 wakati chombo iliyochaguliwa, na 0 wakati chombo haijachaguliwa. Hebu tuashiria - vyombo vingi katika suluhisho la awali na - vyombo vingi katika suluhisho jipya. Kwa ujumla, usawa mpya utaonekana kama hii:
Kubadilisha ukosefu wa usawa hapo juu, tunapata
Kulingana na hili, tunayo fomula ya kuhesabu jumla ya gharama suluhisho fulani kwa shida:
Lakini sasa swali linatokea: thamani kama hiyo inapaswa kuwa na thamani gani? ? Kwa wazi, thamani yake lazima iwe kubwa ya kutosha ili mahitaji ya kwanza ya ufumbuzi wa tatizo yatimizwe daima. Unaweza, bila shaka, kuchukua thamani ya mara kwa mara sawa na 103 au 106, lakini ningependa kuepuka "nambari za uchawi". Ikiwa tutazingatia maalum ya kufanya shughuli za ghala, tunaweza kuhesabu makadirio kadhaa ya nambari yenye msingi wa thamani ya mara kwa mara kama hiyo.
Hebu - umbali wa juu kati ya seli za ghala za eneo moja la ABC, sawa kwa upande wetu hadi mita 100. - kiwango cha juu cha seli ya kontena kwenye ghala, sawa kwa upande wetu na 1000 dm3.
Njia ya kwanza ya kuhesabu thamani . Hebu fikiria hali ambapo kuna vyombo 2 kwenye safu ya kwanza, ambayo bidhaa tayari ziko kimwili, yaani, wao wenyewe ni seli za wafadhili, na gharama ya kuhamisha bidhaa kwenye seli sawa ni sawa na 0. ni muhimu kupata thamani hiyo kwa mara kwa mara , ambapo itakuwa vyema kuhamisha mabaki kutoka kwa kontena 1 hadi kwa kontena 2 kila wakati. Kubadilisha maadili ΠΈ Katika usawa uliotolewa hapo juu tunapata:
ambayo inafuata
Kubadilisha maadili ya muda wa wastani wa kufanya shughuli za kimsingi kwenye fomula hapo juu tunayopata
Njia ya pili ya kuhesabu thamani . Hebu fikiria hali ambapo kuna seli za wafadhili ambazo imepangwa kuhamisha bidhaa kwenye chombo 1. Hebu tuonyeshe - umbali kutoka kwa seli ya wafadhili kwa kontena 1. Pia kuna kontena 2, ambalo tayari lina bidhaa, na kiasi chake hukuruhusu kubeba salio la vitu vyote. seli. Kwa urahisi, tutafikiri kwamba kiasi cha bidhaa zinazohamishwa kutoka seli za wafadhili hadi kwenye vyombo ni sawa na sawa na . Inahitajika kupata thamani kama hiyo ya mara kwa mara , ambayo uwekaji wa mabaki yote kutoka seli kwenye kontena 2 zingekuwa na faida kila wakati kuliko kuziweka kwenye vyombo tofauti:
Kubadilisha ukosefu wa usawa tunaopata
Ili "kuimarisha" thamani ya wingi , tuchukulie hivyo = 0. Idadi ya wastani ya seli zinazohusika katika utaratibu wa kubana mizani ya ghala ni 10. Kubadilisha thamani zinazojulikana za kiasi, tuna thamani ifuatayo ya mara kwa mara.
Tunachukua thamani kubwa zaidi iliyohesabiwa kwa kila chaguo, hii itakuwa thamani ya wingi kwa vigezo vilivyotolewa vya ghala. Sasa, kwa ukamilifu, hebu tuandike formula ya kuhesabu jumla ya gharama kwa suluhisho fulani linalowezekana :
Sasa, baada ya yote Juhudi za Herculean Kwa kubadilisha data ya ingizo, tunaweza kusema kwamba data yote ya ingizo imebadilishwa kuwa fomu inayotakiwa na iko tayari kutumika katika kanuni ya uboreshaji.
Hitimisho
Kama inavyoonyesha mazoezi, uchangamano na umuhimu wa hatua ya kuandaa na kubadilisha data ya ingizo ya algoriti mara nyingi hupuuzwa. Katika makala haya, tulizingatia sana hatua hii ili kuonyesha kwamba data ya pembejeo ya hali ya juu na iliyoandaliwa kwa akili pekee ndiyo inayoweza kufanya maamuzi yaliyohesabiwa na algorithm ya thamani sana kwa mteja. Ndio, kulikuwa na matoleo mengi ya fomula, lakini tulikuonya hata kabla ya kata :)
Katika makala inayofuata hatimaye tutakuja kwa kile ambacho machapisho 2 ya awali yalikusudiwa - kanuni ya uboreshaji tofauti.
Imetayarisha makala
Roman Shangin, mtayarishaji wa idara ya miradi,
Kampuni ya First Bit, Chelyabinsk