Kvantitatv mdszerek Sorbanlls Kszletezs 3 Ksztette Dr Csizmadia
Kvantitatív módszerek Sorbanállás, Készletezés 3. Készítette: Dr. Csizmadia Tibor csizi@gtk. uni-pannon. hu http: //vision. vein. hu/~kzst/oktatas/km/index. htm
Az előadás felépítése • • Sorbanállás alapfogalmai Sorbanállás-ütemezés Készletezés Példák
Sorbanállás alapfogalmai A sorbanállási rendszer jellemzői: – A beérkezés jellemzői – a várakozási sor, – a kiszolgáló egység képessége, – távozás Az elemzés célja: a sorbanállás költségeinek minimálása
Sorbanállási, kiszolgálási alapmodell Csatlakozás a sorhoz Sorbanállás Távozás Kiszolgálás Sor Kiszolgáló Forrás
A forrás (beérkezési folyamat) Az elemek számosságát tekintve (forráspopuláció) lehet: – véges; – végtelen. Az elemek kapcsolata szerint: – független elemekből álló: a sorhoz való csatlakozást tekintve nincs semmilyen kapcsolat az elemek között. A beérkezések függetlenek a korábbi beérkezésektől. – függő: van kapcsolat, egymás csatlakozását befolyásolják. A meghatározottság szerint lehet: – determinisztikus: egyenlő időközben, ugyanannyi csatlakozás a sorhoz – sztochasztikus: A sorhoz történő csatlakozások között eltelő idő vagy a sorhoz csatlakozók mennyisége (vagy mindkettő) véletlenszerűen változik.
Az eloszlás leírására leggyakrabban használt eloszlások • Exponenciális: • Ekkor a T időegység alatt k beérkezés valószínűsége Poisson eloszlást követ: • A T időegység alatt történő beérkezések számának várható értéke: • T • Normális:
A sor a várakozás színtere. A sor legfontosabb jellemzője a kapacitása (a sor maximális hossza). Ez lehet: – állandó; változó – korlátozott, korlátlan A rendszer fontos jellemzője a sorok száma. Ez is lehet változó is, többnyire a kiszolgáló egységek számával együtt. FIFO elv
A kiszolgáló egység (a kiszolgálás képessége) A kiszolgálási idő lehet: – állandó; – változó. A változás lehet véletlenszerű, vagy valamilyen program szerint változó. A kiszolgálási idő reciproka a kiszolgálási sebesség. Általában normális eloszlást követ, de kedvezőtlen esetben lehet exponenciális is. A sorkezelő rendszer lehet: – egy vagy többcsatornás – egy vagy többfázisú
Kiszolgálási elvek • FIFO (First In - First Out: Elsőként be - elsőként ki). Csatlakozás a sorhoz (bejutás) Kilépés a sorból kiszolgálásra Sor • LIFO (Last In - First Out: Utolsónak be - elsőként ki). Ilyen tároló például a zsák, vagy a verem Csatlakozás a sorhoz (bejutás) Kilépés a sorból Sor kiszolgálásra
Kiszolgálási elvek • Prioritás szerint (PRI): A sorban álló ügyfeleket a fontosság sorrendjében szolgálják ki. Ilyen például a repülőgépen a különböző osztályon utazók kiszolgálása. • Véletlenszerűen (RND): A sorban álló ügyfeleket véletlen kiválasztás szerint szolgálják ki.
Sorbanállás-ütemezés: fogalmak • A gyártási folyamat során a feladatok legyártása előtt el kell dönteni, hogy a munkákat milyen sorrendben végezzük el. • Ha az összes feladatot egy ember egyetlen gépen vagy munkahelyen végzi: nincs szükség sorrendre • Már két gép esetén: szükséges a sorrend • Meg kell határozni minden egyes feladat kezdési és befejezési idejét minden gépen, és az összes műveleti helyen.
Sorbanállás-ütemezés: fogalmak • Jellegzetes kiindulási pont, hogy van „n” számú feladat (pl. esztergálás, köszörülés, marás, stb. ), melyeket „M” számú gépen kell elvégezni. • Egyszerre egy gépen csak egy munkadarab lehet, és a feladatok általában nem megszakíthatók. Jelölések: Műveleti idő (processing time): pi, j vel jelöljük, mely azt mutatja, hogy a „j”-ik művelet az „i”-ik gépen mennyi ideig tart. rendelkezésre állási időpont (release date, vagy ready time): rj, mely megadja, hogy az adott alkatrész legkorábban mikortól vehető munkába.
Sorbanállás-ütemezés: fogalmak • esedékességi idő (due date): dj, melyre az adott feladatot be kell(ene) fejezni. • súlyszámokat (wj) is rendelhetünk egy művelethez, mely a sürgősségét, vagy fontosságát fejezi ki. • a „j”-ik feladat befejezési ideje (completion time): Cj • átfutási idő (flow time): Cj-rj • A műveletek sorrendjének szemléltetéséhez vonalas ütemtervet (Gantt-diagrammot) használunk
Sorbanállás-ütemezés: fogalmak
Sorbanállás-ütemezés: célfüggvények Kétféle célfüggvénytípust különböztetünk meg: 1. Minimax-probléma ez egy alkatrész maximális átfutási ideje, melyet ciklusidőnek (makespan) is nevezünk, és szeretnénk a lehető legkisebbre csökkenteni. Munkadarab késése: Lj=Cj-dj, a „j”-ik munkadarab késése (lateness), melyet szintén a lehető legkisebbre szeretnénk csökkenteni.
Sorbanállás-ütemezés: célfüggvények 2. Minisum-probléma ez az összes munkadarab együttes átfutási ideje – melyet minimalizálni szeretnénk súlyozott formában :
Egy gépes probléma • Ritka, hogy az összes műveletet ugyanazon a gépen kell feldolgozni. • Amennyiben nincsenek rendelkezésre állási idők (rj) megadva, úgy a munkadarabok átfutásának bármilyen sorrendje optimális. • Van néhány olyan optimális sorrendet adó szabály ez esetben is, ami jól használható bonyolultabb feladatok esetén is.
Egy gépes probléma • Lmax esetén, amikor a lehetséges legnagyobb késést szeretnénk minimalizálni akkor az ún. határidő – EDD – szabály („earliest due date” first) segít. • Az összes feladatot rendezzük növekvő sorba a határidejük (esedékesség) szerint. Az ütemezést kezdjük a legkisebbel („legsürgősebb először”).
Egy gépes probléma
Egy gépes probléma • A probléma, ahol az összes feladat együttes átfutási idejét kell minimalizálni, a legrövidebb műveleti idő (pj) szabály – SPT („shortest processing time”) segítségével oldható meg. • Tegyük a feladatokat a műveleti idejük szerint növekvő sorrendbe. Ez mindig optimális lesz. • Ez a szabály egyben az átlagos átfutási időt is minimalizálja. • Az SPT szabály általánosítása a Smith féle hányados szabály, mely a feladat optimális megoldását adja.
Egy gépes probléma • Rendezzük növekvő sorba a feladatokat a hányados szerint (qj=∞, ha wj=0), és az ütemezést kezdjük a legkisebb „qj” értékű feladattal. Művelet: j Műveleti idő: pj Súlyszám: wj Helye az optimális sorrendben 1 2 2 4 3 1, 33 3 3 5 2 2, 5 5 4 1 2 0, 5 1 5 6 3 2 4
Több gépes problémák • Mindazon feladatok, melyeket több gépen kell megvalósítani, nagyságrendekkel „nehezebbek”, mint amikor csak egy gép van. • Három jellegzetes problématípust fogunk megkülönböztetni, és általában két gépes modellekkel dolgozunk majd.
Flow-shop probléma • „n” számú megmunkálandó alkatrészt kell két gépen „átengedni” úgy, hogy az egyes műveletek sorrendje tetszőleges lehet. • Ez azt jelenti, hogy egyetlen lépésben meghatározzuk a mindkét gépre érvényes optimális megoldást. Az így sorba rendezett műveleteket először az egyik gépen, majd változatlan sorrendben a másik gépen fogjuk „átengedni”. • Célfüggvényünk a lehetséges maximális átfutási idő minimalizálása, vagyis Cmax. • Az első gépen egymás után következnek a feladatok üres idő (holt idő) nélkül, a többi gépen pedig az üres helyeket igyekszünk minimalizálni.
Johnson algoritmus • Osszuk fel a műveleti időket két halmazra. Az egyik halmazba (A) gyűjtsük azokat a feladatokat, melyek műveleti ideje (aj=p 1, j) az első gépen kisebb mint a másikon, a másik halmazba (B) gyűjtsük azokat, melyeknél a második gépen rövidebb a műveleti idejük (bj=p 2, j). Ezután kezdjük el az egyes feladatokat a még szabad helyekre „betervezni” az alábbiak szerint: • A legelső helyre kerül (tehát először kerül elvégzésre) az, amelynek a műveleti ideje az 1. gépen a legkisebb, a legutolsó helyre kerül az, melynek műveleti ideje a 2. gépen a legkisebb. • Nézzük tovább a „maradék”-ot. Második helyre kerül, melynek műveleti ideje a „maradék”-ból az első gépen a legkisebb, utolsó előtti lesz az, melynek műveleti ideje a 2. gépen a legkisebb, stb. • Ezt mindaddig folytatjuk, míg az összes feladatot be nem terveztük. Így egyetlen lépésben kapjuk meg - mindkét gépet figyelembe véve – az optimális megoldást.
Flow-shop probléma Művelet : j Műveleti idő az 1. gépen: aj Műveleti idő a 2. gépen: bj melyik halmazba tartozik „j” Helye az optimális sorrendben 1 4 3 B 3 2 1 2 A 1 3 2 1 B 5 4 1 1 B 6 5 3 4 A 2 6 2 2 B 4
Job-shop probléma • Gyakran nem fordul meg minden munkadarab minden műveleti helyen, tehát vannak olyan műveletek, melyeket csak az egyik gépen, vagy csak a másik gépen kell elvégezni. • Vagy egy munkadarabot mindkét gépen meg kell munkálni, de a sorrendjük kötött, tehát először az elsőn és utána a másodikon, vagy fordítva. • Lényeg az, hogy hiába szabad, pl. a 2. gép, ha technológiai előírás, hogy előbb az első gépen kell „átmennie”. Sőt az is előfordulhat, hogy egy alkatrész akár többször is visszamegy valamelyik géphez.
Jackson algoritmus • Jelöljük itt is aj –vel a megmunkálási időket az 1. gépen, és bj –vel a megmunkálási időket a 2. gépen. Bontsuk újfent halmazokra, a megmunkálásra váró alkatrészeinket. • Az első halmazba (N 1, 2) tartozzanak azok, melyeket először az 1. majd a 2. gépen kell megmunkálni (technológiai kényszer), a másodikba pedig (N 2, 1) melyeket először a 2. majd az 1. gépen kell megmunkálni. • Mindazon alkatrészeket, melyeket csak az egyik gépen kell megmunkálni, két további halmazba gyűjtsük össze: N 1 -be azokat, melyeket csak az első gépen, míg N 2 -be azokat, melyeket csak a második gépen kell átengedni”.
Jackson szabályok 1. 2. 3. 4. Az első gépen először azokkal az alkatrészekkel kezdjük a munkát, melyeket technológiailag először az első gépen kell megmunkálni, vagyis az N 1, 2 halmaz elemeivel, a második gépen pedig ugyanezen okból az N 2, 1 halmaz elemeivel kezdünk. Az N 1, 2 halmaz elemeit ugyanabban a sorrendben vezetjük át a 2. gépen, ahogy az első gépen is. Ugyanez igaz az N 2, 1 halmaz elemeire is. Meghatározzuk a helyes sorrendet a 2. gépre, majd azt változatlanul hagyva visszük át a feladatokat az első gépre. Mind az N 1, 2, mind pedig az N 2, 1 halmaz elemeit a Johnson szabály szerint rakjuk sorba. Az N 1 és N 2 halmaz elemeit tetszés szerint rakhatjuk sorba. A négy részhalmaz elemeit az alábbi sorrend szerint vezetjük át a két gépen: 1. gép: N 1, 2, N 1, N 2, 1, 2. gép: N 2, 1, N 2, N 1, 2.
Jackson szabály: példa Gyűjtsük össze a 4 részhalmaz elemeit. N 1, 2={1, 2, 5}; N 2, 1={4, 6, 8}; N 1={7}; N 2={3};
Jackson szabály: példa Az N 1, 2 halmaz elemeinek optimális sorrendje a Johnson algoritmussal: Művelet : j Műveleti idő az 1. gépen: aj Műveleti idő a 2. gépen: bj Helye az optimális sorrendben 1 1 3 1 2 2 1 3 5 2 2 2 Az N 2, 1 halmaz elemeinek optimális sorrendje a Johnson algoritmussal: Művelet: j Műveleti idő az 1. gépen: aj Műveleti idő a 2. gépen: bj Helye az optimális sorrendben 4 3 1 1 6 4 2 2 8 1 3 3
Jackson szabály: példa • A Gantt-diagrammon látható a végeredmény, mely szerint a feladatok az alábbi sorrendben mennek át: 1. gép: 1, 5, 2, 7, 4, 6, 8. N 1, 2 + N 1 + N 2, 1 2. gép: 4, 6, 8, 3, 1, 5, 2. N 2, 1 + N 2 + N 1, 2
Készletezés Alapmodellek független igény esetén: 1. Gazdaságosan rendelt mennyiség (EOQ) Q = optimális rendelt mennyiség D = időszakra eső igény S = rendelési költség H = készlettartás költsége (néha = I*P)
Készletezési alapmodellek 2. Termelés alapján rendelt mennyiség (Fűrészfog modell) p = termelési ráta d = igény
Készletezési alapmodellek 3. Mennyiség arányos ár P = ár
Készletezés: példa 1 Egy üzlet plüss-állatokat rendel meg. A játékok normál beszerzési ára 5 EUR. Ha 1000 db-ot, vagy többet rendelünk, akkor 4, 8 EUR, ha 2000 db-ot, vagy többet rendelünk, akkor 4, 75 EUR. A rendelési költség alkalmanként 49 EUR. Az éves igény a plüss állatokra 5000 db. A készlettartási költség a beszerzési ár 20%-a. Mennyi legyen az alkalmanként beszerzendő mennyiség, hogy az elkövetkező évre minimáljuk a költségeinket?
Készletezés: példa 2 Egy üzem hengerfejeket gyárt és épít be. Napi termelési ráta = 8 db/nap. Napi felhasználási ráta = 6 db/nap. Éves igény = 1000 db. Termelés beindításának költsége = 10 EUR. Készlettartási költség = 0, 5 EUR. Mennyit termeljen a gyár egy ciklus alatt? Mennyi ideig tart egy termelési ciklus?
Irodalom • Kovács, Z. (2004). Logisztika. Veszprém, VE Kiadó • Heizer, J. & Render, B. (1996). Production and operations management (fourth edition). New Jersey, Prentice Hall
3.
- Slides: 38