• Nem Talált Eredményt

Különböző gépeken meghatározott sorrendben megmunkálandó gyártmányok gyártási ütemtervének meghatározása heurisztikus módszerrel

N/A
N/A
Protected

Academic year: 2022

Ossza meg "Különböző gépeken meghatározott sorrendben megmunkálandó gyártmányok gyártási ütemtervének meghatározása heurisztikus módszerrel"

Copied!
13
0
0

Teljes szövegt

(1)

KÜLÖNBÖZŐ GÉPEKEN MEGHATÁROZOTT SORRENDBEN MEGMUNKÁLANDÓ GYÁRTMÁNYOK

GYÁRTÁSI ÜTEMTERVÉNEK MEGHATÁROZÁSA HEURISZTIKUS MÓDSZERREL

DR. PERGE IMRE

(Közlésre érkezett: 1973. december 3.)

1. Bevezetés

Az eltelt 20—25 év alatt sok, a gyakorlatban előforduló, operáció- kutatási probléma standard matematikai módszerek (lineáris programo- zás, egészértékű programozás stb.) segítségével megoldást nyert. E mód- szerek alkalmazását azonban a m a t e m a t i k a és a számítógépek fejlettségi foka korlátozza. Ilyen korlátozó tényező például:

— az ismert modell nem algoritmizálható, vagy még nem ismeretes az algoritmusa,

— a számítási eljárás annyira számítógép-igényes, hogy meghaladja a rendelkezésre álló számítógép kapacitását, vagy elfogadható időn belül nem vezet el a probléma megoldásához.

— a probléma egyetlen lehetséges megoldása is komoly nehézségeket okoz és a célfüggvény sem fogalmazható meg egyértelműen stb, Ilyen esetekben az ún. heurisztikus módszer alkalmazása válik szük- ségessé.

A heurisztikus módszer lényeges vonása, hogy az adott probléma megoldását egy terv kontsruálása ú t j á n keressük és lépésről lépésre dön- tünk a következő tervezési elemről. Minél gondosabb és célszerűbb az un. előrehaladási stratégiánk, annál jobb megoldást kapunk.

A heurisztikus eljárások általában bonyolult és a gyakorlatban igen je- lentős problémák megoldására készülnek.

Ebben a cikkben egy — a gyakorlatban is bevált — heurisztikus eljá- rást ismertetünk, az úgynevezett gépterhelési probléma megoldására, pon- tosabban különböző gépeken, meghatározott sorrendben megmunkálandó gyártmányok gyártási ütemtervének meghatározására.

2. A feladat matematikai megfogalmazása

Azoknál a vállalatoknál, ahol egy-egy időszak gyártmányválasztéká- nak megfelelően, a gyártmányokat megadott határidőkre kell elkészíteni.

. 3 3 5

(2)

gondos tervező m u n k á t kell végezni annak érdekében, hogy a rendelke- zésre álló idő alatt és gépeken a m u n k a a lehető „leggazdaságosabban", vagy egyáltalán elvégezhető legyen. G y a k r a n előfordul, hogy egyes gépek állnak, mert m é g a gyártmányok ezen a gépen nem kerülhetnek meg- munkálásra, m á s gépeknél viszont a gyártmányok megmunkálásra várva torlódnak. Azzal, hogy m e g a d j u k az optimális termelési tervet még n e m i s m e r j ü k a g y á r t m á n y o k ütközésmentes gyártási ütemtervét és a gépek terhelését.

Gyakori probléma a következő tervezési, ütemezési f e l a d a t : Egy meghatározott időszakban (hónap, félév stb.) adott

Sk , (k = 1, 2, . . . , n) gyártmányokat, adott

Gi , (i = 1, 2 s)

gépeken kell meghatározott időre legyártani. Minden Sk g y á r t m á n y el- készítéséhez meghatározott

Tk , (k = 1,2, . . . , n) idő (pl. napokban) áll rendelkezésre.

Minden gépet és g y á r t m á n y t az index számával, mint kódszámmal jellemezhetjük. Minden g y á r t m á n y megmunkálása közben megadott sor- rendben végighalad bizonyos gépeken. A gyártmányok elkészítését m u n k a - folyamatokra b o n t h a t j á k , mégpedig minden gyártmány gyártását annyira, a h á n y gépen megmunkálásra kerül. Egy munkafolyamat egy g y á r t m á n y megmunkálását jelenti egy gépen. Jelöljük a gyártmányoknak éppen az adott sorrendben felbontott m u n k a f o l y a m a t a i t

Ej , (j = l , 2 , . . . , m)

-vei, ahol ha fk a k-adik g y á r t m á n y munkafolyamatainak a száma, akkor

n k = l

az összes m u n k a f o l y a m a t o k száma.*

Az Ej m u n k a f o l y a m a t n a k az alábbi két követelményt kell kielégí- teni :

* Számítástechnikai meggondolásból a m a t e m a t i k á b a n szokásos kétindexes jelölés helyett, az egyindexes jelölési f o r m á t alkalmazzuk.

(3)

a) Az Sk g y á r t m á n y t adott munkafolyamatokkal (adott gépeken), adott sorrendben kell elkészíteni. Tehát minden egyes Sk gyárt- mányhoz tartozik az 1, 2, . . . , s számoknak egy jól meghatározott fk osztályú variációja, amelyből egyértelműen meghatározhatók a k-adik g y á r t m á n y legyártásához szükséges gépek, és azok sor- r e n d j e .

b) Az Ej munkafolyamatot a Gj gépen kell elvégezni, t j idő alatt (megmunkálási idő pl. percekben).

Jelölje gj a j-edik munkafolyamathoz rendelt gép indexszámát, és végül Mj , (i = 1, 2, . . . , s) azt, hogy az i-edik gép h á n y m ű - szakban üzemel. 1 ^ Mi ^ 3.

Az Ej munkafolyamatok ütemezésénél ügyelni kell arra, hogy egy g y á r t m á n y t sem lehet valamely gépen megmunkálni mindaddig, amíg az előzőn m u n k á b a n van, továbbá egyetlen gép sem lehet duplán terhelve.

Azonos m u n k a f o l y a m a t elvégzésére egy gép áll rendelkezésre, vagyis egy folyamat realizálásához pl. egy fúrógépet, egy esztergapadot stb. haszná- lunk és egyetlen g y á r t m á n y sem kerül vissza u g y a n a r r a a gépre.

Tekintsük a m u n k a f o l y a m a t o k egy lehetséges d ütemezését és jelöl- jük dj-vel a j-ediknek beütemezett m u n k a f o l y a m a t indexét. Tehát a d j számok az 1, 2, . . . , m számok egy permutációját alkotják és ez a permu- táció egyértelműen meghatározza a munkafolyamatok ütemezését.

Az előírások figyelembevételével az ütemezés alapján meg kell ha- tározni minden G, gépre (i = 1, 2, . . . , s) a megmunkálási sorrendet, vagyis mindazon

Ej - k a t

J <c

ahol

g j «= i' ( « = 1, 2, /*),

továbbá ezen munkafolyamatok kezdési és befejezési idejét, amelynek alapján m á r az egyes gyártmányokhoz tartozó m u n k a f o l y a m a t o k és azok kezdési és befejezési ideje is meghatározott.

Az optimális megoldást többféleképpen is m e g f o g a l m a z h a t j u k :

— a gépek m u n k a f o l y a m a t o k közötti üresjárása legyen minimális,

— a teljes gyártási idő legyen minimális,

— a betartandó határidők késése legyen minimális stb.

Mi ezek közül az elsőt választjuk, de csak m i n t szempontot, tekintet- tel arra, hogy a heurisztikus módszerek csak szuboptimális megoldást szolgáltatnak és az optimalizálásra csak utalunk, mivel nagyszámú gép és g y á r t m á n y esetén a probléma egyetlen lehetséges megoldásának létre- hozása is komoly nehézségeket okoz.

3. Az algoritmus

1. lépés. A megadott információk alapján a gyártást m u n k a f o l y a m a - tokra bontjuk, azaz sorszámozzuk.

21* 3 3 7

(4)

j = 1, 2, . . . , m ; m = ,

k = 1

és egyúttal feljegyezzük a gyártmányok

к h=l

befejező és bk = vk — fk + 1, (k = 1, 2, . . . , n)

kezdő m u n k a f o l y a m a t á n a k sorszámát, valamint az egyes m u n k a f o l y a m a - tokhoz rendelt gépek gj indexszámát és azok elvégzéséhez szükséges t j időket órákban kifejezve.

Ha a gépek nem azonos műszakszámban dolgoznak, akkor

értékeit vesszük figyelembe, amivel a problémát egy műszakos üzemelés- re vezetjük vissza, és egységesen napi 8 órás terheléssel számolhatunk.

2. lépés. A d j u n k egy A változónak nagy értéket, (pl. A = 8 000 000).

Meghatározzuk az egyes gyártmányok elkészítésére fordítható idők figye- lembevételével mindenegyes g y á r t m á n y n á l a soronkövetkező m u n k a f o - lyamatokra még rendelkezésre álló időket „a", azaz k = 1, 2, . . , , n-re el- végezzük az alábbi számításokat.

vk

i = bk

A legkisebb „a" é r t é k meghatározása végett ha a < A . akkor feljegyezzük a ,,k" és „ bk" értékét, q = к és e = bk, A = a.

Megjegyzés: A bk sorszámú m u n k a f o l y a m a t lesz az a soron következő te- vékenység, amelyhez a legkevesebb idő áll rendelkezésre, így feltétlenül ezt kell beütemezni. Előfordulhat, hogy az említett listában többhöz is tartozik legkisebb időpont. Ilyen esetben ú j a b b „elsőbbségű" lista konst- ruálására nyílna lehetőség, ez azonban a gyakorlatban csak kis valószínű- séggel következhet be, ezért ettől eltekintünk.

3. lépés. A 2. lépést kell végezni

1 = 1 , 2, . . . , m

- r e és minden egyes lépésnél rögzíteni kell a beütemezett tevékenység indexszámát

di = e

és a szóban forgó g y á r t m á n y irdexszámát:

ci = q-

Továbbá, ha e = Vq, vagyis egy g y á r t m á n y befejező tevékenysége, akkor Ta értékét elég n a g y r a változtatjuk (pl. 8 000 000), hogy a q-adik g y á r t - m á n y ú j a b b beütemezésére m á r ne kerüljön sor.

(5)

Végül bg értékét eggyel növeljük, annak érdekében, hogy az „üteme- zés" m á r a soron következő m u n k a f o l y a m a t o t vegye figyelembe, ha m a j d - ú j r a a szóban forgó g y á r t m á n y r a k e r ü l sor.

4. lépés. Ebben a lépésben az egyes munkafolyamatok kezdő és befe- jező idejét kell meghatározni (pl. napokban).

Először definiálunk egy m. 6 m é r e t ű W = [Wjj] mátrixot az adatok rögzítésére.

A beütemezett munkafolyamatok mindegyikére, vagyis 1 = 1 , 2,. . . , m - r e v é g r e h a j t j u k az alábbiakat. Jelölje xk (k = 1, 2, . . . , n) a k-adik g y á r t m á n y r a m á r beütemezett időt és y, (i = 1, 2, . . . , s) az i-edik gép m á r beütemezett terhelési idejét. A kiindulásnál

xk = 0 és yi = 0

valamennyi k-ra és i-re. Legyen továbbá j = d i , i = gj és к = ci . Ha yi ^ xk, akkor w15 = xk/8 és yi = xk + tj,

egyébként

Wj5 = yi 8 és yj értékét tj-vel növeljük (yi -f- tj).

Ezután az

xk = Yi W1G = Yi/8

meghatározása után, ahol w ^ és

W]ß az 1-ediknek beütemezett m u n k a f o l y a m a t kezdési illetve befejezési időpontja, feljegyezzük a W m á t r i x 1-edik sorába még

wii = j Wj2 — i

W13 = k

wl 4 = t j • Mi értékeit.

5. lépés, i = 1, 2, . . . , s-re i értékének kiíratása után kiválasztjuk a W m á t r i x azon sorait, amelyekben w12 = i-vel ( 1 = 1 , 2, ... , m), és ki- í r a t j u k

W13, W14, W15, WJG

értékeit, (wjg és Wj6 értékei m u n k a n a p r a órára és percre könnyen átalakít- hatók.) Ezek az értékek szolgáltatják az egyes gépek terhelési táblázatát.

6. lépés, к = 1, 2, . . . , n-re к értékének kiíratása után kiválasztjuk a W m á t r i x azon sorait, amelyekre w ^ = k-val ( 1 = 1 , 2, . . . , m) és kiírat- juk

w12, w16 w15, w14,

értékeit, amelyek az egyes gyártmányok elkészítési ütemtervét szolgál- tatják.

22* 339

(6)

4. A gépi program

blokkdiagramja START

n . i m:= vn

(7)
(8)

Í5 : =

> II

_IC X > II _IC X

W1 6 - ő

(9)
(10)

5. Példa

Az algoritmus működését egy egyszerű példán m u t a t j u k be, ahol a gépek száma s = 4 és a g y á r t m á n y o k száma n = 3. A szükséges adatokat és az ütemezést az alábbi táblázat tartalmazza.

Tk j к cf

ai t. 1 1 2 8 3 4 9 5 6 7 10 11 1 vk bk 15 1

2 3

1 2 3 4

2 5 2

6 8

13 13 A A A A A A A

1 2 4

3 1 25 4

5 6 7

2 4 3 1 2

3 1 3 4

14 14 14 14 14

17 17 18

21 A A 5 7 8 9

7 4 25 8

9 10 11

3 1 2 3 4

5 5 2 1

12 12 12

17 17 17

22 22 22 22 24

3 6 10 11

11 8

A = 8 ООО 000 és az egyszerűség kedvéért a műszakok száma valamennyi gépnél legyen 1 és az idő mértéke a nap.

1. lépés: a szükséges adatokat a táblázatban feltüntettük.

2—3. lépés. 1 = 1 ; A = 8 000 000.

k = l, a = 6, q = l , e = l, A = 6 k = 2, a = 14,

к = 3, a = 12, di = l, с, = 1, b, = 1 = 2; A = 8 000 000.

k = l , a == 8, q = 1, e = 2, A = 8 к = 2, II

k = 3, a = 12, <*a= 2, 0 = 1 , bi = 1 = 3, A — 8 000 000

k = l , a = 13, q = i, e — 3, A = 13

k = 2, a = 14,

k = 3, e = 12, q = з , e = 8, A = 12

d3 = 8, c3 = 3, bg = 9

és így tovább. Az e l j á r á s további része a táblázat alapján világos: 1, dL ér- tékeit és az ütemezést a táblázatban végig f e l t ü n t e t t ü k .

4. lépés: A beütemezett m u n k a f o l y a m a t o k a t két diagramba helyezve szemléltethetjük. A diagram vízszintes tengelyére az időt m é r j ü k fel, a függőleges tengelyre pedig, az egyik diagramban a gyártmányokat, a má-

(11)

síkban pedig a gépeket visszük fel (lásd. 1. ábra). A j-edik m u n k a f o l y a - matot jelképező időintervallumot a megfelelő g y á r t m á n y n á l és a m e g f e - lelő gépnél is elhelyezzük A szóbanforgó W m á t r i x a következő

W =

1 2 1 2 0 2

2 3 1 5 2 7

8 1 3 5 0 5

3 4 1 2 7 9

4 4 2 3 9 12

9 2 3 5 5 10

5 3 2 1 12 13 6 1 2 3 13 16 7 2 2 4 16 20 10 3 3 2 13 15 11 4 3 1 15 16 5. lépés

A beütemezett munkafolyamatokat g y á r t m á n y o k r a és gépekre az alábbi ábrán szemléltetjük.

Gyártmányok: 1. ábra

3) 1-

4 5 6 7

10 в

20

6 Gépek:

A munkafolyamatok közötti ü r e s j á r a t -\ 8 nap

2 >

ЗУ 5 10

3 4 I I

11

н 9 nap -I 5 nap

н 3 n a p

összesen 25 nap

Mint látható a gyártás az előírt határidőre befejezhető. Amennyiben az egyes gyártmányok gyártása határidő előtt befejezhető, az egyes idő intervallumok mozgatásával bizonyos optimalizálásra is lehetőség nyílik.

Példánk egy ilyen szuboptimális megoldását a 2. ábrán m u t a t j u k be.

6. A modell gyakorlati alkalmazása

Végül a modell felhasználására teszünk néhány megjegyzést. Az is- mertetett módszert a gyakorlatban is kipróbáltuk a Mátravidéki F é m m ü - veknél (Sirok). A feladat megoldása ODRA—1204 elektronikus számító- gép segítségével történt és p r o g r a m j a ALGOL—60 programozási nyelven

. 3 4 5

(12)

2. ábra

A gépek ü r e s j á r a t a 6 napra csökken.

készült. A feladat főbb paraméterei a következők voltak: Az elkészítendő gyártmányok száma 51. (Egy-egy g y á r t m á n y 50—100 db.) Az egyes g y á r t - mányok 8 időnorma szerint megkülönböztethető csoportba sorolhatók, amelyek megmunkálása az alábbi gépeken és sorrendben történik:

_ , „, , Hány műszakban Egyidejűleg h á n y Sorszám Gep, m ű h e l y üzemel db-ot készít

1 Eszterga 3 1

2 Edző I. 3 10

3 Síkköszörű 2 20

4 Univ. köszörű 3 1

5 Furatköszörű 3 1

6 Leppelő 2 1

7 Szerszámköszörű 2 1

8 Lakatos 1 1

9 Edző 2. 3 10

Az egyes munkafolyamatok elvégzése után az átadás-átvétel miatt 24—48 óra időt kell biztosítani. Ismeretes továbbá az egyes szériák leg- későbbi befejezésének határideje. Meghatározandó a szóbanforgó gyárt- mányok féléves gyártási ütemterve. Ez a feladat a közölt algoritmus egy speciális esete, a m e n n y i b e n valamennyi gyártmány ugyanazokon a gépe- ken és ugyanolyan s o r r e n d b e n kerül megmunkálásra.

A feladat megoldási ideje egy óra volt, melynek jelentős része a ki- nyomtatásra fordított idő volt. Külön táblázat készült az egyes gépek ter- helésére, másrészt az egyes g y á r t m á n y o k megmunkálására vonatkozóan (gyártmánykísérő táblázat). Az eljárás segítségével nemcsak ütközésmen- tes ü t e m t e r v elkészítése vált lehetségessé, hanem a gyártási folyamat is jelentősen, közel 17 százalékkal, egy teljes hónappal lerövidült. Külön eredmény még az is, h o g y a legidőigényesebb gép (az eszterga) kapacitá- sát 100 százalékosan sikerült lekötni, tehát nincs üresjárata.

(13)

Megemlítjük még, hogy egy ilyen méretű feladat megoldásának még kézi számológépek segítségével sincs reális alapja. (Több évszázad szük- séges egy féléves terv elkészítéséhez.) A számítógép és a módszer alkal- mazása tehát rendkívül jelentős.

I R O D A L O M

[1] K a u f m a n n A: Az o p e r á c i ó k u t a t á s módszerei és m o d e l l j e i . Műszaki Kiadó, 1968.

[2] H e u r i s t i s c h e P l a n u n g s m e t h o d e n . L e c t u r e in O p e r a t i o n s R e s e a r c h a n d M a t h e m a t i - cal Economics. 13. sz. 1969.

[3] M ü l l e r - M e r b e c h : O p e r a t i o n s R e s e a r c h , 1969. V e r l a g F r a n z V a h l e n G m b h , Berlin u n d F r a n k f u r t .

[4] Dr. Csath M a g d o l n a : O p e r á c i ó k u t a t á s . SZÁMOK, B u d a p e s t , 1972.

BESTIMMUNG DES PRODUKTIONSTERMINPLANS FÜR DIE — A N DEN VERSCHIEDENEN MASCHINEN UND IN BESTIMMER REIHENFOLGE ZU BEARBEITENDEN — PRODUKTE, MIT HEURISTISCHER METHODE

Dr. I m r e P e r g e

I n dieser A r b e i t w i r d ein — a u c h in P r a x i s g u t b e w ä h r t e s — h e u r i s t i s c h e s Ver- f a h r e n f ü r die Lösung des M a s c h i n e n b e l a s t u n g s p r o b l e m s b e k a n n t g e m a c h t . Mit Hilfe des m i t g e t e i l t e n A l g o r i t h m u s k a n n n e b e n d e r B e l a s t u n g s z e i t d e r e i n z e l n e n Maschi- n e n a u c h d e r P r o d u k t i o n s t e r m i n p l a n b e s t i m m t w e r d e n . Es ist auch f ü r die Lösung u m f a n g r e i c h e r A u f g a b e n g u t zu v e r w e n d e n .

. 3 4 7

Ábra

síkban pedig a gépeket visszük fel (lásd. 1. ábra). A j-edik  m u n k a f o l y a - matot jelképező időintervallumot a megfelelő  g y á r t m á n y n á l és a  m e g f e  -lelő gépnél is elhelyezzük A szóbanforgó W  m á t r i x a következő

Hivatkozások

KAPCSOLÓDÓ DOKUMENTUMOK

Azt a következtetést kell tehát levonni, hogy bár az utóbbi 15 év alatt a sta- tisztikai adatfeldolgozásra használt számítógépek száma és hatékonysága rend-

A második ok számítási : még ha rendelkezésre is áll egy kellőképpen nagy tanítóadatbázis (és ezért a statisztikai probléma nem jelentkezik), az osztályozó

Arról van szó, hogy a diákok különböző iskolákból kerülnek ki, van aki több, van aki kevesebb számítógép-ismerettel; akik viszont tudnak programozni, azok

Már csak azért sem, mert ezen a szinten még nem egyértelmű a tehetség irányú fejlődés lehetősége, és végképp nem azonosítható a tehetség, tehát igen nagy hibák

Ezt folytatjuk mindaddig, amíg a lehető legnagyobb (nyolcas, tizenhatos, stb.) hurkokat kialakítottuk. Ez abból adódik, hogy az összevonás során csak olyan

A regiszterek és az operatív memória között található a gyorsítótár (angolul cache), amelynek célja a számítógép gyorsítása azzal, hogy különböző technikák

Az AgGPS 170 terepi számítógép rendszernek a részei: a terepi számítógép, az AgGPS jelfogó, illetve az AgGPS külső billentyűzete, amely különböző

Az ELTE Fizikai Intézet Fizika Demonstrációs Laboratóriumának honlapján (http://metal.elte.hu/~dlab) számos olyan segédanyag található, amely a (kísérleti)