Termeléstervezés és -irányítás Termelés és kapacitás tervezés Xpress-Mosel FICO Xpress Optimization Suite Alkalmazásával 214 Monostori László egyetemi tanár Váncza József egyetemi docens 1
Probléma Igények és a kapacitások megfeleltetése Jövőre vonatkozva Hosszabb horizonton, minden időperiódusra Az aggregáció több szintjén Méret Bizonytalanság Bonyolultság Mennyi időn belül várhatunk választ a kérdéseinkre? Anyagáram vs. kapacitások Bonyolultság miatt külön kezelik (dekompozíció) Eredmény Cselekvési terv a jövőre vonatkozóan Gyártás, beszerzés, raktározás, eladás Kapacitás terv 2
Aggregált termelés és kapacitás tervezés Alapfeladat: ismert Maximális kereslet termékeként Minimális szállítandó mennyiség termékeként Realizálható profit termékenként Egyes termékek erőforrásigénye Egyes erőforrások kapacitása, periódusonként Raktárazás költsége, termékenként Kiindulási készlet, termékenként Feltevések Teljesítetlen rendelés elvész Anyagok korlátlanul rendelkezésre állnak Kérdés Adott időszakban mennyit érdemes gyártani az egyes termékekből? Részletezve: periódusonként és termékenként Mennyit gyártsunk? Mennyit adjuk el? Mennyit raktározzunk? 4
Aggregált termelés és kapacitás tervezés (2) Idő modellezése Az időtengely diszkrét időegységekre bontva (time bucket) Az igények és a termelt mennyiségek időben változnak Az egységek hossza változhat (növekedhet) Időben változó paraméterek Pl. kapacitás határok Belső Külső Alapmodell Később bővítményei Megfogalmazás Lineáris program (LP) Futtaható XPress program aggregate_planning 5
Aggregált termelés és kapacitás tervezés (3) Alapmodell: lineáris program Indexek termékek indexe erőforrások indexe időperiódusok indexe (véges horizont) i 1,..., m j 1,..., n t 1,..., T Paraméterek igény maximuma, termékenként minimális szállítandó mennyiség, termékenként erőforrás igény erőforrás kapacitás (időben változó) nettó profit, termékenként időegységre eső raktározás költsége kiindulási készlet, termékenként d it d it a ij c jt p i h i I i 6
Aggregált termelés és kapacitás tervezés (4) Alapmodell (folyt) Döntési változók gyártandó mennyiség, periódusonként szállítandó mennyiség, periódusonként raktárazandó mennyiség, periódusonként X it S it I it Kritérium Profit maximalizálása Eladott termékek ára raktározás költsége Gyártás költsége nem számít Nettó profit: árbevétel gyártási költség Nincs átállás nem kell sorozatokat tervezni max T m t 1 i 1 p S h I i it i it 7
Aggregált termelés és kapacitás tervezés (5) Korlátozások Szállítható mennyiség minimális és maximális igény korlátok közé szorítva Erőforrások kapacitás korlátok Induló raktárkészlet Mérlegek egyensúlya (raktárazás gyártás szállítás) Kapcsolat két szomszédos időperiódus között Integritás korlátok d S d i, t it it it m i 1 a X c j, t ij it jt I I i i i I I X S i t it it 1 it it, Xit, Sit, Iit 8
Példa Termékek Maximális és minimális igény, ár, tartási költség Induló raktárkészletek period product max demand P1 2 5 5 5 5 5 5 5 P2 3 3 4 2 3 4 4 4 min sales P1 P2 1 1 1 1 profit holding cost init hold P1 15 2 P2 1 1 9
Erőforrások kapacitások, fogyasztás Példa (2) period resource capacity WS_A 25 25 6 1 2 2 24 WS_B 15 22 6 1 12 2 24 WS_C 15 15 4 1 6 15 15 WS_D 14 15 3 2 1 1 1 consumption P1 P2 WS_A 5 4 WS_B 5 4 WS_C 5 4 WS_D 2 4 1
Példa megoldása Sell P1 Sell P2 6 5 4 3 2 1 max demand min sales sell 45 4 35 3 25 2 15 1 5 max demand min sales sell Make Inventory 35 3 25 2 15 1 5 P1 P2 4.5 4 3.5 3 2.5 2 1.5 1.5 P1 P2 11
Módosított példa Termékek P2 ára nő, tartási költsége csökken period product max demand P1 2 5 5 5 5 5 5 5 P2 3 3 4 2 3 4 4 4 min sales P1 P2 1 1 1 1 profit holding cost init hold P1 15 2 P2 2 5 12
Módosított példa megoldása Sell P1 Sell P2 6 5 4 3 2 1 max demand min sales sell 45 4 35 3 25 2 15 1 5 max demand min sales sell Make Inventory 4 35 3 25 12 1 8 2 15 1 5 P1 P2 6 4 2 P1 P2 13
Aggregált tervezés: anyagigény Feladat Hasonló az alapproblémához, további feltételekkel A gyártáshoz anyagokra van szükség Több termék is igényelheti ugyanazt az anyagot Az anyagigény termékenként ismert Az rendelkezésre álló anyagok összmennyisége korlátos Ún. nem megújuló erőforrás Kérdés Adott időszakban mennyit érdemes gyártani az egyes termékekből? Részletezve: periódusonként és termékenként Mennyit gyártsunk? Mennyit adjuk el? Mennyit raktározzunk? Program aggregate_planning_material 14
Aggregált tervezés: anyagigény (2) Új elemek a modellben Index anyagok k X it 1,..., K Paraméterek anyagigény, termékenként rendelkezésre álló anyag Új korlátozás Anyag mint nem megújuló erőforrás a teljes horizonton korlátos t 1 i 1 Új optimalizálási kritérium: nincsen T m b X B k ik it k S it I it b ik B k 15
Feladat Hasonló az alapproblémához, további feltételekkel Az erőforrások hibázhatnak, a kihozatal kisebb, mint 1% Selejtarány: α,β,γ, α β Kihozatal: d/y Függ az erőforrás sorrendben elfoglalt helyétől Kérdés Adott időszakban mennyit érdemes gyártani az egyes termékekből? Részletezve: periódusonként és termékenként Mennyit gyártsunk? Mennyit adjuk el? Mennyit raktározzunk? Program aggregate_planning_yield 16 d/(1- α)(1- β)(1- γ) Aggregált tervezés: kihozatal d/(1- β)(1- γ) d/(1- γ) A B C γ d
Aggregált tervezés: kihozatal (2) Új elemek a modellben Paraméterek selejtarány, termékenként és erőforrásonként kumulatív kihozatal, termékenként és erőforrásonként Új korlátozás Csökken a tényleges erőforrás kapacitás 1 s ij X it 1/ yij m i 1 ax ij y ij it c jt j, t Új optimalizálási kritérium: nincsen 17
Aggregált tervezés: rendelés hátrálék Feladat Hasonló az alapproblémához, további feltételekkel A ki nem elégített igények nem vesznek el Létezik rendelés hátralék (backorder) A rendelés hátralék költséges Kérdés Adott időszakban mennyit érdemes gyártani az egyes termékekből? Részletezve: periódusonként és termékenként Mennyit gyártsunk? Mennyit adjuk el? Mennyit raktározzunk? Mennyi legyen a rendelés hátralék? Program Raktári pozíció: a készletezett mennyiség és a rendeléshátralék különbsége Lehet negatív aggregate_planning_backorder 18
Aggregált tervezés: rendelés hátrálék (2) Új elemek a modellben Paraméter időegységre eső rendelés hátralék költsége Xr iit Döntési változók raktári pozíció, periódusonként raktárazandó mennyiség, periódusonként rendelés hátralék, periódusonként Új kritérium Profit maximalizálás De a rendelés hátralék is csökkenti a profitot S it I it I it I it I it max T m t 1 i 1 p S h I ri i it i it i it 19
Aggregált tervezés: rendelés hátrálék (3) Új korlátozások Raktári pozíció I I I i, t it it it Integritás korlátok A raktári pozíció lehet negatív, a raktárkészlet és rendeléshátralék nem I it, I it 2
Aggregált tervezés: hátrálék és túlmunka Feladat Hasonló az előző problémához, további feltételekkel Túlmunka lehetséges Erőforrásonként más és más A túlmunka költséges Költségektől függően kompromisszum kell a hátralék és a túlmunka között Kérdés Adott időszakban mennyit érdemes gyártani az egyes termékekből? Részletezve: periódusonként és termékenként Mennyit gyártsunk? Mennyit adjuk el? Mennyit raktározzunk? Mennyi legyen a rendelés hátralék? Mennyi túlmunkát tervezzünk? Program aggregate_planning_backorder_overtime 21
Aggregált tervezés: hátrálék és túlmunka (2) Új elemek a modellben Paraméterek időegységre eső túlmunka költsége, erőforrásonként túlmunka korlátja, erőforrásonként X it S it q j L j Döntési változó túlmunka, periódusonként és erőforrásonként I it O jt Új kritérium Profit maximalizálás De a rendelés hátralék és a túlmunka költsége csökkenti a profitot max T m n pisit hi I it ri i it q jo jt t 1 i 1 j 1 22
Aggregált tervezés: hátrálék és túlmunka (3) Új korlátozások Erőforrás kapacitás korlátok bővítve a túlmunkával m i 1 a X c O j, t ij it jt jt Túlmunka korlátja Integritás korlátok O L j, t jt O jt j 23
Példa: eredeti feladat Ugyanazon igény, költségek De: drága rendeléshátralék és túlmunka period product max demand P1 2 5 5 5 5 5 5 5 P2 3 3 4 2 3 4 4 4 min sales P1 P2 1 1 1 1 cost init profit holding backorder hold backorder P1 15 2 3 P2 1 1 2 Ugyanaz a megoldás Nincs rendeléshátralék I I i, t it Nincs túlmunka it period resource capacity WS_A 25 25 6 1 2 2 24 WS_B 15 22 6 1 12 2 24 WS_C 15 15 4 1 6 15 15 WS_D 14 15 3 2 1 1 1 consumption P1 P2 overtime limit overtime cost WS_A 5 4 1 1 WS_B 5 4 1 1 WS_C 5 4 1 1 WS_D 2 4 1 1 24
Példa: eredeti feladat megoldása Make Inventory 35 3 25 2 15 1 5 P1 P2 4.5 4 3.5 3 2.5 2 1.5 1.5 P1 P2 Backorder Inventory position 1.9.8.7.6.5.4.3.2.1 P1 P2 4.5 4 3.5 3 2.5 2 1.5 1.5 P1 P2 25
Példa: módosított feladat Kisebb járulékos költségek Rendelés hátralék, túlmunka period product max demand P1 2 5 5 5 5 5 5 5 P2 3 3 4 2 3 4 4 4 min sales P1 P2 1 1 1 1 cost init profit holding backorder hold backorder P1 15 2 5 P2 1 1 3 26 period resource capacity WS_A 25 25 6 1 2 2 24 WS_B 15 22 6 1 12 2 24 WS_C 15 15 4 1 6 15 15 WS_D 14 15 3 2 1 1 1 consumption P1 P2 overtime limit overtime cost WS_A 5 4 1 1 WS_B 5 4 1 1 WS_C 5 4 1 1 WS_D 2 4 1 1
Példa: módosított feladat megoldása Több gyártás és eladás Túlmunka és rendeléshátralék költségei egyensúlyozva Sell P1 Sell P2 6 5 4 3 2 1 max demand min sales sell 45 4 35 3 25 2 15 1 5 max demand min sales sell Make Inventory 45 4 35 3 25 2 15 1 5 P1 P2 18 16 14 12 1 8 6 4 2 P1 P2 27
Példa: módosított feladat megoldása (2) Backorder Inventory position 14 12 1 8 6 4 2 P1 P2 4 2-2 -4-6 -8-1 P1 P2-12 -14 12 Overtime 1 8 6 4 2 WS_A WS_B WS_C WS_D 28
Aggregált tervezés: összegzés Dinamikus modellek Lineáris programok Hatékonyan megoldhatók Inkrementálisan bővíthetők Különböző jellegű korlátozásokkal Hatékony megoldás Mi lenne ha típusú kísérletek De: nem minden probléma fogalmazható meg mint LP Pl. ha dönteni akarunk, hogy bérlünk-e/veszünk-e egy erőforrást vagy sem Igen/nem típusú döntés (/1 értékű változó) Keresni kell a megoldást Lényegesen nehezebb lehet a megoldás 29