• Nie Znaleziono Wyników

Zastosowanie techniki tabu search do harmonogramowania elastycznych gniazd produkcyjnych

N/A
N/A
Protected

Academic year: 2022

Share "Zastosowanie techniki tabu search do harmonogramowania elastycznych gniazd produkcyjnych"

Copied!
12
0
0

Pełen tekst

(1)

Z E S Z Y T Y N A U K O W E P O L IT E C H N IK I ŚL Ą SK IE J Seria: A U T O M A T Y K A z. 118

1996 Nr kol. 1338

E u g en iu sz N O W IC K I P o lite c h n ik a W rocław ska

Z A S T O S O W A N IE T E C H N IK I T A B U SEARCH

DO I I A R M O N O G R A M O W A N IA E L A ST Y C Z N Y C H G NIAZD P R O D U K C Y J N Y C H

S t r e s z c z e n i e . W p racy p rz e d s ta w ia się szybki a p ro k sy m acy jn y a lg o ry tm o p a rty n a te c h n ic e ta b u search , d la problem u szeregow ania zad ań w elasty czn y ch g n iazd a ch p ro d u k c y jn y c h z k ry te riu m b ę d ą c y m czasem w y k o n an ia w szystkich zad ań . S p e ­ c ja ln a m e to d a im p lem en tacji isto tn ie p o p raw ia lokalne p rzeszu k iw an ie i zw iększa p ręd k o ść a lg o ry tm u .

A P P L IC A T IO N OF T A B U SEARCH T E C H N IQ U E TO S C H E D U L IN G A FL E X IB L E JO B SH O P

S u m m a r y , A fa s t a p p ro x im a tio n a lg o rith m for a p ro b lem of finding a m in im u m in a k e s p a n in a flexible jo b shop is p resen ted . T h e a lg o rith m is b ased on a ta b u se a rc h te c h n iq u e . A special m e th o d of im p le m e n ta tio n im p ro v es th e local search sig n ifican tly and increases th e speed of th e alg o rith m .

1. W s tę p

W n iniejszej p ra c y b a d a się p roblem h arm o n o g ram o w an ia e la sty czn y ch g n ia z d p ro ­ d u k c y jn y c h z k ry te riu m m in im alizu jący m m o m en t zak o ń czen ia w y k o n y w an ia w szystkich z a d a ń p ro d u k c y jn y c h . P rz y jm u je się, że w każdym gnieździć p ro d u k c y jn y m (stan o w isk u obsługi) z n a jd u je się o k reślo n a liczba id entycznych m aszy n . K ażde za d a n ie je s t re p re ­ zen to w an e p rzez pew ien ciąg operacji. D la każdej o peracji je st o kreślone g n iazd o p ro ­ d u k c y jn e , w k tó ry m m a b y ć o n a w ykonana, i czas jej w ykonania. R e a liz a c ja o p eracji w d a n y m gn ieźd zie p ro d u k cy jn y m w y m ag a zaan g ażo w an ia jed n ej (dow olnej) m aszy n y z teg o g n ia z d a . D la up ro szczen ia, w p ra c y nie rozw aża się innych elem en tó w , ta k ic h ja k : czasy tr a n s p o rtu p o m ięd zy g n iazd a m i, skończona p o jem n o ść m ag azy n ó w , p a le ty , u ch w y ty ob róbkow e o raz w ózki tra n sp o rto w e itp . [10]. M im o to b a d a n y p ro b le m je s t je d n y m z n a j­

tru d n ie js z y c h p roblem ów szeregow ania zad ań n a m aszy n ach , jak o że je s t u o g ó ln ien iem

(2)

zn an eg o z lite r a tu r y p ro b lem u gniazdow ego, uw ażanego pow szechnie za b a rd z o tru d n y . Z p u n k tu w id z e n ia teo rii złożoności obliczeniow ej je s t to p roblem iV P -tru d n y , co u s p ra ­ w ied liw ia sto so w an ie do jego ro zw iązan ia algorytm ów h e u ry s ty c z n y c h , ty m b a rd z ie j że is tn ie ją c e w lite r a tu rz e a lg o ry tm y d o kładne, o p a rte p rz e d e w szy stk im n a m e to d z ie po­

d z ia łu i o g ran iczeń , p o z w a la ją go rozw iązać w sensow nym czasie ty lk o d la b a rd z o m alej liczby o p e ra c ji, m aszy n i stanow isk.

A k tu a ln ie b a d a n y p ro b lem je s t rozw iązyw any p rzez alg o ry tm y h e u ry s ty c z n e ty p u kon­

stru k c y jn e g o . A lg o ry tm y te , zgodnie z p ew n y m i reg u łam i p rio ry te to w y m i,s z e re g u ją ko­

lejn o p o je d y n c z e o p e ra c je i po uszeregow aniu w szystkich kończą sw o je d ziałan ie. C zas ich p ra c y je s t b a rd z o k ró tk i, ale jakość produkow anych przez n ie ro zw iązań n ie zaw sze je s t zad o w a la ją c a . W sy tu a c ja c h , kiedy m ożem y pozw olić sobie n a zw iększenie czasu obliczeń, w a rto zastosow ać a lg o ry tm y ty p u p o p raw , a w szczególności te c h n ik ę ta b u search [1,2], k tó r a d la w ielu p o d o b n y ch zagadnień um ożliw iła sk o n stru o w an ie b ard zo o b ie c u ją c y c h a l­

g o ry tm ó w (p a trz n p . [7,8,9] i p ra c a przeglądow a [12] o raz [4,5]).

W p ra c y p rz e d s ta w ia się alg o ry tm ty p u ta b u search, k tó ry je s t o d p o w ie d n ią m o d y fi­

k a c ją a lg o ry tm u zap rezen to w an eg o w [7] d la p ro b lem u gniazdow ego o ra z a lg o ry tm u z [6] i [9] d la p ro b le m u przepływ ow ego z m aszynam i rów noległym i. S pecyficzna k o n s tru k c ja o to ­ c z e n ia uszereg o w an ia i w y k o rzy stan ie odpow iednich w łasności do "szy b k ieg o ” jego p rz e ­ sz u k a n ia pozw oliły z n aczn ie zredukow ać czasochłonność w yboru n a jlep szeg o ro zw iązan ia z o to c z e n ia . W konsekw encji p rezen to w an y alg o ry tm is to tn ie p o p ra w ia p o c z ą tk o w e roz­

w ią z a n ia , d o sta rc z o n e z pow szechnie stosow anych alg o ry tm ó w k o n stru k c y jn y c h d la tego ty p u z a g a d n ie n ia , w czasie rzęd u kilku m in u t n a IBM P C . R ozw iązyw ane w ty m czasie p ro b le m y m a j ą ro z m ia r akceptow alny w p ra k ty c e .

2 . S f o r m u ło w a n i e p r o b l e m u

R o zw ażan y w p ra c y p ro b lem szeregow ania m o żn a sform ułow ać n a stę p u ją c o : D an y je st zb ió r z a d a ń J — ( 1 , 2 , . ,ra ), zbiór o p eracji O = ( 1 , 2 , . . . , o} o raz zb ió r stan o w isk obsługi M = { 1 , 2 , Za da ni e j , j € J sk ład a się z sekw encji o, o p eracji indeksow anych o d p o w ied n io p rz e z (r , + 1, tj 2 , . . . , r, + o ,), k tó re należy w ykonyw ać w tej kolejności, g dzie Tj = i °i Jc st liczb ą o p eracji w z ad an iach 1, 2 , . . . , j — 1, n = 0 o raz D , e j o, = o.

W k a ż d y m stan o w isk u obsługi l, ł € M . z n a jd u je się zbiór M i = {1, 2 , . . . , m /} z aw icrajacy

(3)

Z asto so w an ie te c h n ik i ta b u search do h arm o n o g ram o w an ia elasty czn y ch . 155

m¡ id e n ty c z n y c h m a sz y n . O p e ra c ja i, i € O p o w in n a być w y k o n an a w sta n o w isk u /i; 6 M w czasie p t- > 0 n a je d n e j, dow olnie w ybranej m aszy n ie z teg o stanow iska. P rz y jm u je się, że k a ż d a m a s z y n a m oże w ykonyw ać w danej chwili nie więcej niż je d n ą o p e ra c ję o raz w yko n y w an ie o p eracji n a danej m aszy n ie nie m oże być przery w an e. D o p u szczaln e u szere­

gow anie je s t definiow ane przez zb ió r p a r ( Ki , C ,), i 6 0 ta k ic h , że pow yższe o g ran iczen ia s ą sp e łn io n e , g d zie I{¡ € M Mj je s t m aszy n ą, k tó ra w ykonuje o p erację t w stan o w isk u fi¡, zas' Ci m o m e n te m zak o ń czen ia w y konyw ania tej op eracji w ty m stan o w isk u . P ro b le m po leg a n a z n a le z ie n iu d opuszczalnego uszeregow ania m inim alizu jąceg o czas w y k o n an ia w szy st­

kich o p eracji m ax ¡£o C¡.

P rz e d s ta w io n y p ro b le m różni się ty m od klasycznego p ro b lem u gniazdow ego (n o to w a­

nego z a G ra h a m e m ja k o J || C,,,»*), że w d anym gnieździe p ro d u k c y jn y m m oże z n ajd o w ać się k ilk a m a sz y n . P o w o d u je to , że należy dodatkow o w yznaczyć d la każdej o p e ra c ji m a ­ szy n ę, n a k tó re j b ę d z ie on a w ykonyw ana.

W celu sfo rm u ło w an ia pełnego m odelu m atem aty czn eg o pow yższego z a d a n ia w y g o d ­ n ie je s t, p o d o b n ie ja k w [6-9], posłużyć się pew nym skierow anym grafem re p re z e n tu ­ ją c y m uszeregow anie. N iech Ot = {i € O : /«; = 1} o k reśla zb ió r o p e ra c ji, k tó re p o ­ w in n y by ć w y k o n an e w stan o w isk u /, / 6 M . W każdym stan o w isk u I zb ió r o p e ra c ji 0¡

n a le ż y p o d z ie lić n a m i podzbiorów Oik, k £ M¡; o p eracje ze zb io ru O/k b ę d ą w ykony­

w an e n a m asz y n ie k. K olejność w ykonyw ania o peracji ze zbioru Ojjt o k re śla p e rm u ta c ja TC/it = ( ir ij t( l) ,. . . , it(oiit)), g d zie itijfc(to) ozn acza o p erację ze zb io ru Oik, k tó r a w y stę p u je w w -tej p o zy cji w ir/jt, zaś ou¡ = |O u |. S tąd kolejność w y konyw ania w szy stk ich o p e ra ­ cji je s t o k reślo n a p rzez p e rm u ta c ję ir = gdzie it| = ( itn , it|2, . . . , ir/m |).

Z b ió r w szy stk ich ta k ic h p e rm u ta c ji w ynikających z w szystkich m ożliw ych ro zb ić zbiorów Ot o ra z ró żn y ch kolejności w ykonyw ania o peracji ze zbiorów Oik o zn aczam y przez IT. T e­

ra z m o żem y p rzejść do zdefiniow ania zapow iedzianego wcześniej g rafu . D la p e rm u ta c ji it, rr € n niech G (ir) = [O, E ' U £ ( i r ) b ęd zie skierow anym grafem ze zb io rem w ierz­

chołków O o raz zb io rem luków E ' U E ( n ) , gdzie E ‘ = U j E j U i i i M f 7!» + * .Tj + * + 1)}

o k reśla w y m a g a n ą tech n o lo g iczn ą kolejność p rzech o d zen ia zad ań przez stan o w isk a, zaś

£ ( * ) = U/cm U tew , Uw=T’ { ( k k - M , it/it(ui + 1))} w y b ra n ą kolejność w y k o n y w an ia o p eracji n a m a s z y n a c h . K ażd y w ierzchołek i tego grafu m a w agę p,-, a każdy luk w agę zero. N iech r ;( it) o z n a c z a w a rto ść n a jd łu ż sz e j drogi dochodzącej do w ierzchołka i w grafie G (it), łącz­

n ie z ty m w ierzchołkiem . O czyw iście, w p rzy p ad k u gdy g ra f G (it) je s t cykliczny, n ie k tó re

(4)

z w arto ści r ,( it) m o g ą być rów ne nieskończoności. W p rzeciw n y m w y p a d k u z e sta w p a r ( A Ci), i 6 O , o k reśla n ajlep sze (w sensie k ry te riu m C mAX) uszeregow anie d o p u szczaln e zg o d n e ’’kolejnościow o” z p e rm u ta c ją ir, gdzie A',- je s t m a sz y n ą ze sta n o w isk a p ; ta k ą , że i 6 • • • i ■*w.A';((WC;)}> za-ś Ci = O sta te c z n ie o z n a c z a ją c p rz e z CmAX(-ir) długość n a jd łu ż sz e j drogi w G (ir) (ścieżka k ry ty c z n a ), p ro b le m n asz m o ż n a sform ułow ać n a stę p u ją c o : Z n aleźć kolejność rt* £ ii ta k ą , że C mAX(it*) = m in x6n GmAX(it).

Ścieżkę k ry ty c z n ą w grafie G {tt) m o żn a opisać jak o ciąg u = ( u j , u 2, . . . , u , ) w ierz­

chołków teg o g rafu , gdzie u,- € 0 , 1 < i < 3, a a je s t długością ścieżki. Oczywiście, GmAX(ir) - J j L i P u i - Ścieżkę u, p o d o b n ie ja k d la p ro b lem u gniazdow ego, m o ż n a p rz e d ­ sta w ić w p o sta c i u = (£?], B 2, . . . , /?,), gdzie

B i, = (es)i (c/i + l)i • • • i (A)).

1 < A < i, je s t ciąg iem zaw ierający m o p eracje w ykonyw ane n a te j sam ej m a s z y n ie w p ew n y m stan o w isk u (m a sz y n ę tę i stanow isko o zn aczam y o dpow iednio p rz e z k /, o raz A ) p o c z y n a ją c o d op eracji z pozycji e-u, 1 < ea < opią,, a kończąc n a o p eracji z po­

zycji A i Cfc A ^ , w p e rm u ta c ji ir;Ajtk. D odatkow o p rzy jm u jem y , że o p e ra c je z dw óch k olejnych ciągów Bk, ZA+i są w ykonyw ane w różnych stan o w isk ach , tz n . A 7^ A + u fc = 1 , 2 , 1 . D alej ciąg Bk będziem y n azyw ać /i-ty m blokiem o p eracji n a ścieżce k ry ty c z n e j. U w z lę d n ia ją c w cześniej w prow adzone p o jęcia, d la każdej o p eracji i z b lo k u Bk zach o d zi p , = A, i € 0 ((p A, oraz C niAX(it) = D a= i Pi-

3 . M e t o d a t a b u s e a r c h

T e c h n ik a ta b u search z o sta ła w yczerpująco o p isan a w w ielu p ra c a c h , p a tr z np. [1,2].

D la te g o też t u t a j o g ran iczy m y się tylko do k ró tk ieg o jej szkicu. P o d staw o w y m ele m e n te m te j te c h n ik i je s t p o ję c ie ru ch u , o to c z e n ia oraz listy ta b u . P rzez ru c h ro zu m iem y fu n k cję, k tó r a o dw zorow uje je d n o uszeregow anie w d ru g ie. D la każdego u szereg o w an ia d o p u sz ­ czalnego o k reślony je s t pew ien zestaw ruchów , g en eru jący d la niego o to cze n ie. A lg o ry tm w y k o rz y stu ją c y te c h n ik ę ta b u search s ta r tu je z pew nego u szereg o w an ia do p u szczaln eg o w ygenerow anego p rzez p ro s te a lg o ry tm y k o n stru k c y jn e i zw anego dalej u szeregow aniem b azo w y m . N a s tę p n ie ok reśla się d la tego uszeregow ania o to cze n ie, z n a jd u je się w nim n a jle p sz e w sensie w arto ści funkcji celu uszeregow anie i dalej tr a k tu je się j e ja k o u szere­

(5)

Z asto so w an ie tech n ik i ta b u search tlo harrn o n o g ram o w an ia elastycznych . 157

gow anie bazow e w n a stę p n e j ite ra c ji. W celu p rzeciw d ziałan ia p rzed w p ad n ięciem w cykl, po w y k o n an iu ru ch u n a tzw . liście ta b u (p am ięć k ró tk o term in o w a) zap isu je się pew n e jeg o a tr y b u ty . Z kolei w trak cie generow ania o to cze n ia nie ro z p a tru je się ru ch ó w , k tó ry c h a tr y b u ty z n a jd u ją się n a liście ta b u ; ruchy te są ru ch am i zab ro n io n y m i. Z m niejszenie re stry k c y jn o śc i listy ta b u o siąg a się przez w prow adzanie poziom u asp iracji ru c h u .

D alej, w kolejnych ro zd ziałach , p rzed staw im y szczegółowo poszczególne e le m e n ty n a ­ szego a lg o ry tm u zw anego dalej a lg o ry tm e m T S .

4 . R u c h i o t o c z e n i e

W większości a lg o ry tm ó w , w k tó ry ch rozw iązanie je s t określone przez p e rm u ta c ję (lu b zestaw p e rm u ta c ji), ja k o ruch p rzy jm u je się: (i) p o b ran ie pew nego e le m e n tu p e rm u ta - cji i w łożenie go p rzed p ew n y m elem en tem z n a jd u ją c y m się na określonej pozycji w tej p e rm u ta c ji, (ii) z a m ia n ę p o ło żen ia dw óch w ybranych elem entów p e rm u ta c ji. R u ch y ty p u (i) u m o ż liw ia ją z reguły szybsze w y zn aczen ia w artości funkcji celu d la o trz y m a n e j (po w y k o n an iu ru ch u ) p e rm u ta c ji. D latego też będziem y rozw ażać ty lk o ru ch y tego ty p u . P re c y z y jn ie , ja k o ru ch v = ( i , a , x , b , y ) zastosow any do p e rm u ta c ji n € II, b ęd zie m y ro ­ zu m ieć czynność p o le g a ją c ą n a p o b ra n iu o peracji z = it|a ( i ) z p o zy cji x n a m a s z y n ie a w sta n o w isk u l i w łożeniu je j bezp o śred n io p rzed o p erację z pozycji y n a m aszy n ie b w ty m sa m y m sta n o w isk u , gdy y < on lub w łożeniu jej b ezp o śred n io p o o p eracji z pozycji

°iki g d y y = o j i - t - l . W p rz y p a d k u b = a, tzn . przesu w an ia o p eracji z w o b ręb ie tej sa ­ m ej m aszy n y , o p e ra c je 1r/a( z + 1) , . . . ,ir/a (i/ - 1) są przesuw ane o je d n ą p o zy cję w lewo, jeżeli x < y , lu b o p eracje ir/0( y ) , . . . , iria(x - 1) są przesuw ane o je d n ą p o zy cję w praw o, g d y x > y . W p rz y p a d k u 6 a, tzn . p rzesu w an ia operacji z n a in n ą m aszy n ę, o p e ra c je it/a(x + 1 ) , . . . ,ii(a (oia) s ą przesu w an e w lewo, zaś o p eracje it/i,(y ),. . ■, ^ik(oii,) w praw o. W w y n ik u ru c h u u o trz y m u je m y now ą p e rm u ta c ję n o to w an ą ja k o rrv.

P ie rw s z ą rzeczą, k tó r ą tr z e b a w ziąć pod uw agę przy definiow aniu, ja k ie ru c h y v należy w y k o n ać z danej p e rm u ta c ji ir, je s t niedopuszczenie do p o w sta n ia cyklu w grafie G (it„).

P o d ru g ie, n ależ y d okonać sensow nego w yboru wielkości teg o zb io ru ruchów , o z n acza­

nego dalej p rzez V (ir). D uży zb ió r V (n ) w ym aga znacznych n akładów obliczeniow ych n a w y zn aczen ie ru ch u d ając eg o n a jle p sz ą w arluść funkcji celu. Z kolei is to tn e zm n iejszen ie te g o zb io ru m oże uniem ożliw ić p rzeg ląd an ie ty ch obszarów ro zw iązań d o p u szczaln y ch , w

(6)

k tó ry c h z n a jd u ją się ro zw iązan ia o p ty m a ln e lu b do nich zbliżone. D latego te ż , p o d o b n ie ja k w [9], w y k o rz y sta m y "elim in acy jn e w łasności ścieżki k ry te c z n e j” do k o n stru k c ji zb io ru V {tC). M ian o w icie, n ie b ęd zie m y rozw ażać ruchów , k tó re p o le g a ją n a p o b ie ra n iu o p e ra ­ cji n ie leżą cy ch n a ścieżce k ry ty c z n e j, a dok ład n iej, nie n ależących do bloków o p eracji o liczności w iększej niż dw a. U spraw iedliw ione je s t to fa k te m , że d la elim in o w an y ch ruchów C m a f i t,) > Cm lx(ii). P o d o b n a nierów ność zachodzi, jeżeli p rzesu w am y o p e ra c je w o b ręb ie te j sam ej m a s z y n y o raz: (i) przesuw am y p ierw szą o p erację b lo k u w lew o, (u ) p rzesuw am y o s ta tn ią o p e ra c ję b lo k u w praw o, (iii) przesu w am y o p erację z w n ę trz a b lo k u (tz n . o p e­

ra c ję n ie pierw szą, i n ie o s ta tn ią w b lo k u ) n a pozycje z w n ę trz a b lo k u . W konsekw encji p ro p o n u je m y n a s tę p u ją c y zb ió r ruchów :

h

=

U U

\ {u 6 kśr(Tt) : G(tvu) je s t cykliczny}

gdzie

%,(*) = Vi(n) u vi ( *) ,

oraz

' /Ar(1f) = U {” = ( h i h , x , b , y ) : 1 < y < oiht>+ 1},

»«w,*. Mb,

vłU 10 = {« = ( k, kh, x, h, y) ■ y e A(*)}

Z b ió r okres'la ruchy, k tó re w ykonujem y p o p o b ra n iu o p eracji z — ( z ) z bloku Bh z p o zy cji x . Z b ió r te n je s t podzielony n a dw a zb io ry V^x ( x ) , V*T( x ) . P ierw szy o kreśla ru c h y p o le g a ją c e n a w k ła d a n iu o p eracji z n a in n e m aszy n y niż m a s z y n a k n a której b y ła o n a w y k o n y w an a, a drugi n a przem ieszczaniu o p eracji z ty lk o n a m a s z y n ie kh- Zbiór P h ( x ) o z n acza p o z o sta łe pozycje w p e rm u ta c ji irą,*,, w y n ik ające z u z g lę d n ie n ia w arunków (i)-(tii); Ph(eh) = {e-h + 2 , e A + 2 , . . . , o i hkh + 1}, P n (fh ) = { 1 , 2 , . . . , / a - 2 ) , Ph( x ) = { 1, 2 , . . . , m i n ( r - 2, eA)} U { A + 1, fh + 1, ■ .., + 1}, e* < x < //,. Ze z b io ru Ph(fh) z o s ta ła w y elim in o w an a p o z y c ja fh - 1, poniew aż p rzesu n ięcie o p e ra c ji z p rz e d o p e ra c ję z te j p o zy cji d aw ałoby ta k ą s a m ą p e rm u ta c ję , co p rzesu n ięcie o p eracji — 1) p rzed o p e ra c ję z po zy cji / a + 1. D otyczy to rów nież zb io ru Ph(e/i + 1)1 elim in acji p o zy cji r./,.

P rz e jd z ie m y te r a z do an alizy liczności zbioru V (rt). Z auw ażm y, że |VLc(ir)| « | 0 / J ■ S tą d i p rz y jm u ją c d la uproszczenia, że g ra f (7(n„) je s t acy k liczn y d la każdego ru c h u v , o tr z y m a m y | V (ir)| « |S a | |. P oniew aż w yznaczenie Cmax(lrv) (lub stw ierd zen ie,

(7)

Z asto so w an ie te c h n ik i ta b u search do h arm o n o g ram o w an ia elastycznych 159

że g ra f G (ir„) je s t cykliczny) w y m ag a O[o) kroków , to przeglądnięcie o to c z e n ia 0 ( n ) = { ir „ : v £ ^("¡r)} w y m a g a aż 0 (o X )/,=i |B /J | ( \ | ) czasu. D alej n aszk icu jem y m e to d ę , k tó r a p o zw ala n a p rzeg ląd n ięcie tego o to cze n ia w czasie 0 (oX)j,=1 IB /J).

W s p o m n ia n ą pow yżej m e to d ę b ędziem y om aw iać d la pew nego u stalo n eg o bloku B/,, 1 < h < t o raz u sta lo n e j op eracji z — irifljfch(z ) , e/, < x < //, z p e rm u ta c ji P ołóżm y l = 1^ o raz a = h^. Pokażem y, że przeglądnięcie całego zbioru ruch ó w Vhi{n) (tz n . sp raw d zen ie, czy g ra f G'(tt„) je s t acykliczny o raz w yliczenie Cmax(Ttv) d la w szystkich

V £ V/,x(n) = r y/wr(it) \ {u 6 V/1I (-n) : G {itv) je s t cykliczny}) w y m ag a O (o) kroków . N a p o c z ą te k w p ro w ad źm y kilka dodatkow ych pojęć. N iech A {i) (B ( i) ) o z n acza o p e ­ r a c ję , k tó r a je s t b ezp o śred n im n a stę p n ik ie m (p o p rzed n ik iem ) techn o lo g iczn y m o p eracji i, tz n . (i, A (i) ) 6 E ’ £ B*). Jeżeli o p eracja i nie m a n a stę p n ik a (p o p rzed n ik a) te c h ­ nologicznego, to p rz y jm u je m y A (i) = 0 ( B(£) = 0). D alej oznaczm y przez dv (c„) o p erację, k tó r a p o w y k o n an iu ru ch u u = ( l , a , x , b , y ) z n , b ęd zie b e zp o śred n im n a stę p n ik ie m (p o ­ p rz e d n ik ie m ) o p eracji z i je s t w ykonyw ana n a m aszy n ie b, tz n . (z,</„) £ E (it„ ) (( c „ ,z ) £ B (iru)). Z definicji ir„ w ynika, że (lv — ^ w {y ) , jeżeli y < o/6 oraz dv = -it/¡.(o/t, + 1) = f 0, gdy y = on, + 1. P o d o b n ie cv = TT/t(y — 1), jeżeli y > 1 oraz e„ = -n/ifO) = f 0, gdy y = 1.

N a jp ie rw p o d a m y m e to d ę , k tó ra pozw ala ’’szybko” znaleźć w szystkie ru c h y v £ V/,x (n ) n ie p o w o d u ją c e cyklu w grafie G ( it„). P raw dziw a je s t n a s tę p u ją c a w łasność.

W ł a s n o ś ć 1 . Niech z £ IT, gra f G (n ) j e s t acykliczny oraz v — ( l , a , x , b , y ) £ V/,r . G r a f G (tt„) j e s t ac yklic zn y wtedy i tylko wtedy gdy w grafie G (ir) nie istnieje droga z wierzchołka A ( z ) do jednego z wierzchołków Tt/i,(l), ir/i,(2),. . . , ^ a ( y - 1) = cv oraz nie istnieje droga z jednego z wie rz chołków ^ ¡.(i/) = d v,^ n ,(y + 1) , . . . , it(j(o(i,) do wierzchołka B ( z ) .

W p rz y p a d k u gdy A { z ) — 0 lu b y = 1 (B (z ) = 0 lub y = on, + 1), w y m ien io n e pow yżej d ro g i n ie is tn ie ją ,p o n ie w a ż g ra f G (it) nie zaw iera w ierzchołka 0.

W łasn o ść 1 p o zw ala w czasie O (o) określić w szystkie ruchy v £ V/,r , d la k tó ry c h g ra f G (it„ ) je s t acykliczny. R zeczyw iście, w y starczy w yznaczyć w ierzchołki A W £ 0 / w grafie G’(it), do k tó ry c h is tn ie je d ro g a z w ierzchołka A (z ) oraz w ierzchołki B W £ 0 / w grafie G ( it), z k tó ry c h is tn ie je d ro g a do w ierzchołka B { z ) . M ożna to w ykonać w czasie O (o).

Z auw ażm y, żc jeże li it/¿(u/) ^ A W , to tci/,(uj - l) A W , w = 2 , 3 , . . . , o/6- P o d o b n ie , jeże li it|j,(ui) (fi. B W , to n [b{w + 1) £ B W , w — 1 , 2 , . . . , 0/6 - 1. S tąd i z W łasności 1 w ynika, że g ra f G (it„) je s t acy k liczn y w tedy i ty lk o w tedy, gdy cv fi A W i d u fi B W . M o żn a to

(8)

sp ra w d z ić w czasie 0 ( 1 ) , p rzy odpow iedniej s tru k tu r z e p a m ię ta n ia zbiorów A W i B W . O sta te c z n ie , p oniew aż |14r (it)| « \OĄ < o, o trzy m u jem y w sp o m n ia n ą w yżej złożoność.

P rz e d y s k u tu je m y te ra z m e to d ę , k tó r a pozw ala w yznaczyć C m^x(i\v) d la w szystkich u £ Vśx(iv) te ż w czasie 0 ( o ) . P odstaw ow ą rolę będzie tu ta j p ełn ić p e rm u ta c ja 7 , k tó r a je s t o tr z y m a n a z ir p rzez p o b ra n ie o p eracji z z p e rm u ta c ji i nie wlożenie j e j do żad n ej in n ej p e rm u ta c ji ips. O d p o w ia d a ją c y jej g ra f G ( 7 ) = [G (ir) \ { ( ^ ( a : - l ) , z ) , (z, ir/a ( x + 1))}] O {(iWn(i — 1), ^ /„(x + 1))}. Jeżeli x — 1 lu b x = o/a, to o d p o w ied n ie p a ry w pow yżej rów ności n ie w y stę p u ją . N a koniec przez r , ( 7 ) (<7,(7 )) o znaczm y w arto ść n a jd łu ż sz e j drogi d o ch o d zącej do w ierzchołka i (w ychodzącej z w ierzchołka i) w grafie G (7 ) łącz n ie z ty m w ierzch o łk iem , r 0(7 ) = 0 (90(7 ) = 0 ).

W ł a s n o ś ć 2 . Niech -rc £ IT ora: graf G (it) jest acykliczny. Dla każdego u £ 14i (it) m a m y C m„ (ir„ ) = rn a x {C m« (

7

), m a x (rB(j)( 7 ) ,r iv (7 )) + p. + max(9/1(l)(7 ), 9 ^ ( 7 ) ) } .

K o n s tru k c ja g rafu G ( 7 ) z grafu G(-k) w y m ag a 0 ( 1 ) czasu. W y liczen ie w artości ^ ( 7 ), 9,(7 ) d la i £ Oi o ra z w artości Om»x(7 ) w y m ag a O(o). W y zn aczen ie je d n e j w artości Omwc(it„), w y k o rz y stu ją c W łasność 2, w ym aga 0 ( 1 ) . S tą d do w y z n aczen ia ich w szy st­

k ich (w p rzy b liżen iu |0 / |) p o trz e b a 0 ( | 0 | | ) czasu. O sta te c z n ie , p oniew aż |0 / | < o, to w y liczen ie C maz(r^v) d la w szystkich u £ VŁx(it) w y m ag a 0 ( o ) czasu.

5 . L i s t a t a b u

N a liście ta b u T o u stalo n ej długości M a x T (p a r a m e tr a lg o ry tm u ) b ę d zie m y z a p a m ię ­ ty w a ć p e w n e a tr y b u ty a k tu a ln ie w izytow anej p e rm u ta c ji ir, k tó re zależą od w ykonanego z niej ru c h u u = (/, a , x , b, y). A try b u ta m i ty m i b ęd zie p a ra lu b dw ie p a ry sąsied n ich o p e­

racji z p e rm u ta c ji it|a - Jeżeli l> ył u, w tedy n a listę T zapisujem y dw ie pary o p eracji (c „ ,z ) o ra z (z, d„). W p rz y p a d k u gdy b — a, zap isu jem y tylko je d n ą p arę; jeże li x < y, to (z , d„), z aś g dy z > y , to (c„, z). P rz y zapisyw aniu danej p ary n a listę T n a js ta rs z a p a ra je s t u su w a n a . P o czątk o w o T je s t całkow icie z a p e łn io n a przez p a ry (0,0).

R u ch u = ( l , a , x , b , y ) nie m oże b y ć w ykonany z p e rm u ta c ji ir (m a s ta tu s ta b u ) , jeżeli w 0 = (itv)(fc p o ja w ia się p a ra niekoniecznie sąsiednich o p eracji (/?(?«'), £ T , k tó rej n ie było w n n , gdzie w' < w ". R e stry k c ję tę m o żn a w yjaśnić ty m , że p o jaw ien ie się tak iej p a ry su g e ru je , iż p e rm u ta c ja 0 lub zbliżona do niej była ju ż w cześniej ro z p a try w a n a .

(9)

Z asto so w an ie tech n ik i ta b u search do liarm o n o g ram o w an ia elasty czn y ch ■ 161

6 . S t r a t e g i a p r z e g l ą d a n i a o t o c z e n i a i w a r u n k i s t o p u

N iech tt b ęd zie p c rrn u ta c ją bazow ą n a p o czątk u pew nej ite ra c ji a lg o ry tm u T S . S tr a ­ te g ia p rz e g lą d a n ia o to c z e n ia 0 (n ) = (n,, : v £ V('k)} w y k o rzy stu je p o ję c ie re p re z e n ­ t a n t a zb io ru ru ch ó w , w prow adzone pierw szy raz w [8]. D la każdego zb io ru ruchów 14r (ir) o k re śla m y ru c h v(V/ur(it)) € Va*(TC)> zw any jego re p re z e n ta n te m ta k i, że — m in „g(rhi(^) C mix(ir„). D alej z a m ia st zb io ru ruchów V (it) ro z p a tru je m y ty lk o zb ió r re p re ­ z e n ta n tó w W (ir) = {v (Vkx(-ir)) : 1 < h < t, |S /,| > 1,6), < i < />,}. N a stę p n ie w ty m zb io ­ rze z n a jd u je m y ru c h y R ( v ) — {u £ Vk(n) : (u nie m a s ta tu s u ta b u ) V C maX(it„) < C r s }, k tó r e n ie m a ją s ta tu s u ta b u lu b d la k tó ry ch w artość funkcji celu je s t m n ie js z a niż n a j ­ le p sz a d o ty ch cz as z n ale zio n a przez alg o ry tm T S (o zn aczan a tu t a j przez C T S ). Z kolei w z b io rze R ( ir) z n a jd u je m y ruch v' ta k i, że C Ilmx(Tv„i) = m iii„6n (,j (^„„„(ii,,). Jeżeli zb ió r R ( -n) je s t p u sty , to u suw am y ty le n a jsta rsz y c h elem entów z listy T} aż b ęd zie on nie p usty.

P o w y b o rze ru ch u v ' o dpow iednio m odyfikujem y listę T (p a trz ro zd ział 5), p o d sta w ia m y C TS := ( ^ „ ( n , , ') , txT5 := n v’, jeżeli C nmx(T v ) < C l s oraz p e rm u ta c ję ir„/ tr a k tu je m y ja k o p e rm u ta c ję b azo w ą (tz n . ir := ir,/) d la n astęp n ej iteracji a lg o ry tm u .

W a lg o ry tm ie w y k o rzy stu je się d w a w arunki sto p u . P ierw szy po leg a n a z a tr z y m a ­ n iu p o szu k iw ań , k ied y w ykonaliśm y ju ż M a x [ t e r iteracji bez p o p ra w y w artości funkcji celu. D rugi k ończy p o szu k iw an ia, gdy w ykonaliśm y łączn ie M a x T o t l t c r ite ra c ji. W ielkości M a x l t e r o raz M a x T o t l t e r są p a ra m e tra m i alg o ry tm u i p o d le g a ją w yborow i.

7 . W y n i k i b a d a ń t e s t o w y c h

A lg o ry tm T S z o sta ł zakodow any w P ascalu i byl u ru c h a m ia n y n a m in ik o m p u te rz e IB M P C 586 (lOO M IIz). P rz e d sta w im y tu ta j tylko w stęp n e w yniki testó w . T e sty te zo­

s ta ły p rz e p ro w ad zo n e n a szczególnie tru d n y c h przy k ład ach zap rezen to w an y ch w [11] d la p ro b le m u gniazdow ego; 10 przykładów d la każdego zestaw u 15/15, 2 0 /1 5 , 2 0 /2 0 , 3 0 /1 5 , 3 0 /2 0 , 5 0 /1 5 , 5 0 /2 0 , 100/20 (pierw szy elem ent k odujący zestaw ozn acza lic z b ę za d a ń n , a d ru g i lic z b ę sta n o w isk w ) - łącznie 80 p rzykładów . P o n iew aż w p rz y k ład ach ty ch w s ta ­ now isku w y stę p u je ty lk o je d n a m aszy n a, to d la każdego z nich utw orzono 5 p rzy k ład ó w o różnej liczb ie m aszy n m i w poszczególnych stanow iskach. W ielkości m ; b y ły g en ero w an e w g ro z k ła d u ró w n o m iern eg o n a zbiorze ( 1 , 2 , 3 ) . Ł ącznie p rz e b a d a n o 400 p rz y k ła d ó w .

(10)

D la każdego p rz y k ła d u w yznaczano: ( 2) n a jm n ie jsz ą w artość funkcji celu C B o tr z y ­ m a n ą p rz e z 10 a lg o ry tm ó w k o n stru k cy jn y ch o różnych regułach p rio ry te to w y c h , [3], (ii) n a jm n ie js z ą w a rto ść funkcji celu C p o p o trz y m a n ą przez d ziesięcio k ro tn e u ru ch o m ien ie klasy czn eg o a lg o ry tm u ty p u popraw P O P sta rtu ją c e g o z ró żn y ch p e rm u ta c ji o tr z y m a ­ n y ch p rz e z a lg o ry tm y k o n stru k c y jn e z (¡); P O P z a trz y m u je się, g dy w o to c z e n iu 0 ( iv) nie m a ro z w ią z a n ia o lepszej w artości funkcji celu, (iii) w artość funkcji celu C TSk o trz y m a n ą p o w y k o n an iu k = M a x T o t I t e r , M a x T o t l l e r — 1000,5000, ite ra c ji b a d a n e g o a lg o ry tm u T S . Ja k o ro zw iązan ie p oczątkow e w T S p rzy jęto kolejnos'ć o tr z y m a n ą p rz e z a lg o ry tm k o n stru k c y jn y z re g u łą S P T oraz listę ta b u o długości M a x T = 8 .

N a b a z ie tych w artości w yznaczono w zględną p ro cen to w ą p o p raw ę

<bA = m % ( c B - C A) I C B

w artości C A w sto su n k u do w artości porów naw czej C B , A 6 {P O P ,T 5 lO O O ,T 5 5 0 Q O }.

N a stę p n ie , d la każdej k o m b in acji n oraz m w yznaczono śre d n ie a ry tm e ty c z n e z 50 w arto ści 4>/i. W y n ik i przed staw io n o w ta b lic y 1. Z analizy ta b lic y 1 w ynika, że śre d n ie

T a b lic a 1 W y n ik i b a d ań testow ych a lg o ry tm u T S

n / m m /

Ś red n ie w zględne pop raw y d la alg o ry tm u

C zas n a PC5S6 w [sec]

d la a lg o ry tm u P O P T S 1 0 0 0 T S 5000 P O P T S 1 0 0 0 T 5 5 0 0 0

15/15 1 . . . 3 3.6 18.9 19.4 1 6 28

2 0 /1 5 1 . . . 3 3.7 21.4 22.0 3 12 57

2 0 /2 0 1 . . . 3 3.6 14.9 15.2 4 17 82

3 0 /1 5 1 . . . 3 3.0 21.2 21.8 6 30 142

3 0 /2 0 1 . . . 3 2.9 15.8 16.4 9 44 209

5 0 /1 5 1 . . . 3 3.0 14.2 14.6 18 91 443

5 0 /2 0 1 . . . 3 2.9 17.4 17.9 26 129 635

100/20 1 . . . 3 1.3 11.1 11.2 112 550 2710

w szy stk ie 3.0 16.9 17.3

(11)

Z asto so w an ie tech n ik i ta b u search do h arro o n o g ram o w an ia elastycznych . . . _________

w zględne p o p ra w y 4|TS1000 w a h a ją się w gran icach od 11.1 do 21.4 p ro cen t. C zas p ra c y a lg o ry tm u TSlOOO ro śn ie ze w zrostem liczby operacji; od 6 sekund d la 225 o p eracji do około 9 m in u t d la 2000 o p eracji. R óżnica p om iędzy <J>rS1000 a 4>T5500° je s t ty lk o rzędu 0.5

%, zaś czas p ra c y a lg o ry tm u T S 5 0 0 0 je s t p ięcio k ro tn ie w iększy niż a lg o ry tm u TSIOOO.

D lateg o te ż w y d a je się , że w sy tu a c ja c h p rak ty czn y ch w y starczy w ykonać około ty s ią c a ite ra c ji a lg o ry tm u T S . P o ró w n an ie alg o ry tm u TSJOOO z a lg o ry tm e m P O P z p u n k tu wi­

d z e n ia jakości produ k o w an y ch rozw iązań w yraźnie w skazuje n a T 5 1 0 0 0 ; śre d n ia w zględna p o p ra w a d la w szy stk ich przykładów przy alg o ry tm ie TSIOOO ró w n a się 16.9 % , po d czas gdy p rz y P O P ty lk o 3.0 % . Zw iększenie czasu obliczeń je s t w p ełn i rek o m p en so w an e z n a c z n ie lep szy m ro zw iązan iem .

Z p rzed staw io n y ch w stępnych w yników testó w w ynika ju ż , że T S m oże by ć z pow o­

d zen iem sto so w an y do rozw iązyw ania problem ów o p rak ty czn y ch ro zm iarach . W a rto tu ta k ż e zau w aży ć, iż w a lg o ry tm ie ty m łatw o uw zględnić niezerow e czasy tr a n s p o rtu p o ­ m ię d z y g n ia z d a m i (w y sta rc z y w prow adzić o b ciążen ia na lukach E " ) czy te ż w y stęp o w an ie n ie id c n ty c z n y c h m asz y n w gn iazd ach p ro d ukcyjnych.

L IT E R A T U R A

1. G lover F .: T a b u search. P a rt I. O RSA Jo u rn a l on C o m p u tin g , 1, 1989, 190-206.

2. G lover F .: T a b u search fu n d a m e n ta ls an d uses, R esearch R e p o rt, U n iv e rs ity of C o lo rad o , B o u ld er, A p ril 1995.

3. F ren ch S.: Sequencing an d S cheduling: An In tro d u c tio n to th e M a th e m a tic s o f th e Jo b S h o p , W iley, New York 19S2.

4. K orcyl A ., Saw ik T .: A lg o ry tm y ty p u ta b u d la z a d a n ia rów now ażenia obciążeń e la ­ sty czn eg o sy s te m u m ontażow ego. Zeszyty N aukow e P o litech n ik i Ś ląskiej, z. 114, G li­

w ice 1994, s. 174-185.

5. K a d lu c z k a P ., W ala K .: T a b u search h e u ristic for generalized g ra p h p a rtitio n in g p ro ­ b lem . Z eszy ty N aukow e AGH seria: A u to m a ty k a z. 64, K raków 1993, s. 473-487.

6 . N ow icki E.: P ro b le m przepływ ow y z dw om a stanow iskam i obsługi: a lg o ry tm ta b u se­

a rch . X I M iędzynarodow e S y m p o zju m „Z astosow ania teorii sy stem ó w . Z ak o p a n c ’95” . E le k ro te c h n ik a t. 14, z. 4, Z akopane 1995, s. 345-350.

7. N owicki E ., S m u tn ic k i O.: A fast tab o o search a lg o rith m for th e jo b sh o p . R a p o rt IC T P o l. W rocl. serii: P R E P R 1 N T Y nr 8/1 9 9 3 . (M a n a g e m e n t Science J u ly 1996, w d ru k u ).

(12)

8 . N ow icki E ., S m u tn ick i C.: A fast ta b o o search a lg o rith m for th e flow sh o p . R a p o rt IC T P o l. W rocl. serii: P R E P R IN T Y n r 8 /1994. (E u ro p e a n J . O p er. R es. 1996, w d ru k u ) .

9. N ow icki E ., S m u tn ick i C.: Flow shop w ith p arallel m ach in es. A ta b u se a rc h a p p ro a c h . R a p o rt IC T Pol. W rocl. serii: P R E P R IN T Y n r 30/1995. (w stęp n ie z a a k c e p to w a n a do sp ecjaln eg o w y d a n ia E u ro p ean J . O per. Res. pośw ięconego tec h n ic e ta b u se a rc h ).

10. Saw ik T .: O p ty m a liz a c ja d y s k re tn a w elastycznych sy stem ach p ro d u k c y jn y c h , W N T , W arszaw a 1992.

11. T a illa rd E.: B en c h m a rk s for b asic sch ed u lin g p ro b lem s. E u ro p e a n J. O p e r. R es. 64, 1993, s. 278-285.

12. V aesscns R .J .M ., A a rts E .H .I., L cn stra J .K .: Jo b shop sch ed u lin g by local search . M e m o ra n d u m C O S O R 94-05, E idhoven, T h e N e th e rla n d s, 1994.

R ecen zen t: D r b ab . inż. M irosław Z aborow ski, prof. P ol.Ś l.

W p iy n ę lo d o R ed ak cji do 30.06.1996 r.

A b s t r a c t

A fa st a n d easily im p le m e n te d a p p ro x im a tio n a lg o rith m for a p ro b le m o f finding a m in im u m m a k e sp a n in a flexible job shop is p re se n te d . T h e a lg o rith m is b ased on a ta b u search te c h n iq u e w ith a specific n eig h b o rh o o d definition. A n eig h b o rh o o d is defined using so -called b lo ck s of o p e ra tio n s on a critical p a th . T h e essence o f th e a lg o rith m co n sists in u sin g so m e p ro p e rtie s w hich allow us to search over th e m o s t p ro fita b le p a r t o f a n e ig h b o rh o o d . A sp ecial ad v an ced m e th o d of im p le m e n ta tio n im p ro v es th e local search sig n ifican tly an d in creases th e speed of th e a lg o rith m . C o m p u ta tio n a l e x p e rim e n ts (u p to 2000 o p e ra tio n s a n d 20 ce n te rs) show its excellent n u m erical p ro p e rtie s. T h e a lg o rith m is eassily tu n e d ; p rim a l values of tu n in g p a ra m e te rs arc reco m m en d ed in th e p a p e r.

Cytaty

Powiązane dokumenty

Dokonano realizacji praktycznej za pom ocą typowych algorytmów teorii grafów mających szerokie zastosowanie w metodach reprezentacji wiedzy, a także w innych

Dla uniknięcia czasochłonnego rozpisywania identycznych elementów modelowanego systemu, powtarzających się sekwencji analogicznych czynności oraz odpowiadających im

wana dla przedstawiciela danego typu technologicznego. Ze względu na różne wymiary przedm iotów czasy trwania poszczególnych operacji w marszrutach indywidualnych

W tej pracy proponujemy zastosowanie algorytmu ’’popraw” opartego na metaheury- styce Tabu, który jest uogólnieniem algorytmu przedstawionego w [4] dla

Zatem liczba detali na paletach jest stała, a więc w tym przypadku modelem kolejkowym ESP jest zamknięta sieć stanowisk (w sieci ząnkaiętej liczba klientów jest stała)..

Ważną zaletę programu stanowi możliwość oceny jakości funkcjonowania ESP na różnych poziomach jego hierarchii oraz możliwość kompleksowego u- jęcia zadań

uwolnienie w funkcji nakładów, przy parametrze rentowność przedsiębiorstwa na jednego zatrudnionego, jednocześnie określa charakterystykę: maksymalne efekty powstające

Rys.1 Uproszczona wersja ESP Simplified version of