ZESZY TY N A U K O W E POLITECHNIKI ŚLĄ SK IEJ Seria: A U TO M A TY K A z. 144
2006 N r kol. 1727
A rkadiusz A N TCZA K , Paweł A NTCZAK , Tadeusz W ITK O W SK I Politechnika W arszaw ska
Z A STO SO W A N IE PR O C E D U R Y GRASP
DO H A R M O N O G R A M O W A N IA PR O D U K C JI M A ŁO SER YJNEJ
Streszczenie. W pracy przedstaw iono zadanie planow ania produkcji mało- seryjnej typu gniazdow o-otw artego. Do rozw iązania tej klasy zadań opra
cow ano algorytm na podstaw ie procedury G R ASP (Greedy R andom ized A daptive Search Procedure). Dla przedstaw ionego algorytm u opisano w yniki eksperym entu kom puterowego.
USED G R EED Y RA N D O M IZ ED A D A PTIV E SEA RCH PRO CEDUR E (G RASP) FO R FLEX IBLE JOB SHOP SC H E D U L IN G PRO BLEM
S u m m a ry . The paper presents task form ulation jo b shop - open shop problem . The algorithm based on the on procedure G R ASP, has been prepared fo r the class o f m entioned task. The results o f the com puter experim ent for the algorithm has been presented.
1. W prow adzenie
Do klasycznych problem ów szeregow ania zadań produkcyjnych zalicza się problem y przepływ ow e (flow shop), gniazdow e (job shop) i otwarte (open shop).
W ym ienione problem y szeregowania m ożna ogólnie określić następująco.
W system ie produkcyjnym znajduje się określona liczba m aszyn, na których należy w ykonać określoną liczbę zadań produkcyjnych. K ażde zadanie produkcyjne składa się z pewnej liczby operacji. Do danej operacji przyporządkow ana jest dokładnie jed n a m aszyna, na której należy j ą wykonać bez przerw w zadanym czasie. W danej chw ili zadanie m oże być wykonyw ane tylko na jednej m aszynie. W problem ie przepływ ow ym i gniazdow ym przyjm uje się, że kolejność w ykonyw ania operacji danego zadania je st ustalona w odróżnieniu od problem u otwartego.
Przydatność narzędzi harm onogram ow ania do analizy odpow iednich m odeli produkcyjnych zależy od w ielkości i charakteru produkcji. Podstaw ow e m etody rozw iązyw ania zadania harm onogram ow ania produkcji m ałoseryjnej dzielim y na przybliżone i dokładne. Do tego typu zadań w praktyce w ykorzystuje się w łaściw ie tylko m etody przybliżone, do których zaliczam y m.in. algorytm GRASP w ykorzystyw any w danej pracy.
18 A. Antczak. P. Antczak, T. W itkow ski
2. Sform ułowanie problem u
Przedstawim y form alne sform ułow anie rozw iązyw anego problem u. M oże on być opisany w następujący sposób. O kreślono zbiór m aszyn M, zbiór operacji O , elementami którego są poszczególne technologiczne operacje. Każdej operacji a e O przyporządkowano podzbiór m aszyn M (ó ) e M, które m ogą je wykonywać. Z biór O - zbiór częściowo uporządkow any, tj. określono zbiór następstwa kolejności wykonania C = { a -< 8 }, który określa kolejność w ykonania operacji ( « a < 8 » oznacza, że operacja a pow inna być w ykonana przed rozpoczęciem w ykonania operacji 8 ). Na zbiorze O określono także relację ekw iw alentności ę . O peracje związane relacją <p nazyw am y operacjam i ekw iw alentnym i. Relacja <p pozw ala podzielić zbiór O na klasy ekw iw alentne. O znaczm y K (a ) - klasa elem entów ze zbioru O ekwiwalentnych a . N iech funkcja:
Z ( c , 8 ) 1, jeże li a g K(8)
0, w przeciwnym przypadku
Dla operacji a są określone: p (c r )- liczba jednostek czasu niezbędna do jej wykonania (jednakowa dla w szystkich m aszyn), t ( a ) - liczba jedn ostek czasu niezbędna dla przezbrajania m aszyny przed w ykonaniem tej operacji, gdzie p { a ) , t(a) > 0 , przy czym Ver e O . Problem określenia harm onogram u polega na tym , aby dla każdej operacji a e O w ybrać m aszynę ze zbioru M i następnie określić porządek wykonania operacji na m aszynach z M w ten sposób, aby sum aryczny m aksym alny czas wykonania prac byl m inim alny. N iech S ( a ) ~ liczba jednostek czasu od początku wykonania prac do początku w ykonyw ania operacji a , m(cr)- m aszyna w ybrana dla wykonania operacji er. W tedy m atem atyczne sform ułow anie problem u m ożna przedstawić następująco:
min maxfó'Cer) + p(crj] , ( 1)
oeO
przy ograniczeniach:
S ( a ) + p { o ) < S{8) Ver,<5 e O, er -< 5 , (2) S(<r) > t(cr) ; 5(er) + p {a ) < S { 6 ) ~ x(cr,8)t(S) v S ( 5 ) + p{8) < S { o j - %{a,8)t{a) , (3)
V a , 8 e O, w(cr) = m{8) , (4)
w(cr) e M (er) Ver e O . (5)
Zależność (1) określa jak o kryterium optym alności kryterium Johnsona; (2) określa ograniczenia dotyczące kolejności w ykonania operacji zgodnie z procesem technologicznym. Zależność (3) w ym aga uw zględnienia czasu w ykonania przez- brojenia m aszyny przed rozpoczęciem operacji. O graniczenia na zasoby (m aszyna m oże jednocześnie w ykonyw ać tylko je d n ą operację) przedstaw iają zależności (4), które uw zględniają także czas niezbędny na przezbrajanie m aszyn przy w ykonyw aniu
Zastosow anie procedury GRASP 19
operacji. Zależność (5) wym aga, aby operacje w ykonyw ane były na przeznaczonych do tego celu maszynach.
C harakterystyczną cechą rozpatryw anego problem u je s t to, że kolejność wykonywania operacji danego zadania w pewnej fazie jeg o realizacji je st nieustalona w odróżnieniu od realizacji operacji w problem ie gniazdowym. W danej pracy jako kryterium optym alności przyjęto kryterium Johnsona (m inim alny sum aryczny czas wykonania prac).
Dla każdej a e O określim y zbiór JP(cx) zaw ierający operacje 8 e O takie, że 5 <g i nie istnieje operacja w e O , taka, że 8 < a > < c j. Jeżeli określono porządek w ykonania operacji, to m ożna w ykorzystać oznaczenie MP(a) dla operacji, która wykonyw ana jest bezpośrednio przed cr eO, tj. m iędzy w ykonaniem MP(cr) i a m aszyna w{a) nie wykonuje żadnych innych operacji. N iech J S ( a ) - zbiór operacji
8 e O , dla których a e JP(cr ) ; MS ( a ) - operacja, dla której MP(MS(cr)) = a . 3. M etaheurystyczna procedura GRASP
W pracy w ykorzystano schemat procedury G R ASP [2] dla opracow ania algorytm u rozw iązania zadania (ł)-(5). Procedura GRASP składa się z dwóch podstaw ow ych etapów: konstruow anie początkow ego rozw iązania - etap I i prze
szukiwania lokalnego - etap II. N a etapie konstruow ania początkow ego rozwiązania generowane jest dopuszczalne rozwiązanie dla zadania (l)-(5 ) i jeg o sąsiedztwo badane je st na etapie przeszukiw ania lokalnego. Te etapy są pow tarzane, dopóki nie będzie spełnione kryterium zatrzym ania. N ajlepsze znalezione rozw iązanie spośród wszystkich iteracji zw racane je st jak o wynik zastosow ania procedury.
D la otrzym ania dopuszczalnego rozw iązania należy określić w ielkości S(cr ) i 777(0- ) tak, aby spełnione były ograniczenia zadania. N a etapie konstruowania początkow ego rozw iązania najpierw tworzone je st rozw iązanie spełniające ograni
czenia zadania. Dla konstrukcji takiego rozw iązania w ykorzystuje się pojęcie
„kandydata do w staw ienia”. Dla zadania (l)-(5 ) kandydatem do w staw ienia je st para:
operacja i num er m aszyny, na którą ona pretenduje.
O znaczm y RC L i CL, listy kandydatów do w staw ienia, przy czym w liście CL b ędą przechowyw ani kandydaci ju ż wstawieni do częściowego harm onogram u, a w liście RCL kandydaci pretendujący do w staw ienia do tego harm onogram u; F{CL)~
w artość kryterium Johnsona dla częściowego harm onogram u określonego listą C L . Przeszukiwanie lokalne kolejno zam ienia rozw iązanie bieżące na rozw iązanie lepsze z jeg o sąsiedztwa (lepsze rozwiązanie rozum iem y w sensie kryterium Johnsona). Etap przeszukiw ania lokalnego kończy się, kiedy w sąsiedztw ie nie zostało znalezione lepsze rozwiązanie.
Poniżej przedstaw iono algorytm konstrukcji rozw iązania początkow ego (etap I) procedury GRASP, w ynikiem której je st dopuszczalne rozw iązanie zadania
(l)-(5).
20 A. Antczak. P. Antczak. T. W itkowski
1:
CL = RCL =0
2: while CL O| do 3: for all 8 £ O do
4: i f [ 3 ( S , k ) e C L y k e M ] A
11: LB = m in [wartość [(c>,A')]]
( S ^ ) e R C L
12: UB= m ax [ wartość [(¿',/c)]]
(SJ<)eR C L
a
/)
6 CL, 1 e M, \/(0£
JP{8)\then 5: for all k£
M{5) do6:
RCL = RCL{J(S,k)7: wartość [(S,k)] = F(CL{J(S,k))
13: a - liczba losowa z wartość [0,1]
14: Wybrać losowego kandydata (S , k ) ze zbioru Set = {(<5, / ) : (<5, k ) e RCL,
8: end for 9: end if
10: end for
wartość [(S, k)]] < LB + a{UB - LB)}
15: wartość CL
=
CLU
(cr, k) 16: RCL -0
17: endwhile
18: Zwrócić wartość F(CL
)
4. Przeszukiw anie lokalne
N a etapie przeszukiw ania lokalnego było użyte sąsiedztw o przedstaw ione w [2,4], które w ykorzystuje pojęcie drogi krytycznej. Przyporządkow ujem y każdej operacji a e O zbiór J S ( a ), składający się z operacji a takich, że a e . J P ( a ) i operację MS(cr ) ta k ą ż e MP(M S(a)), jeżeli taka operacja istnieje.
O peracjacr e O jest krytyczna, jeżeli F(cr) + tail(a) = F (C L ), przy czym tail{a) określa, ile czasu jest wym agane do zakończenia w szystkich operacji, które nie m ogą być rozpoczęte do zakończenia wykonania operacji a , zgodnie z ograniczeniam i technologicznym i. Operacje krytyczne to te, które nie posiadają rezerwy czasowej (luzu czasowego). Droga krytyczna je st to zbiór operacji krytycznych, które nie są w ykonywane jednocześnie. Zgodnie z tym określeniem może istnieć kilka krytycznych dróg. Przy realizacji przeszukiw ania lokalnego w ykorzystyw ana była jedna droga krytyczna. Blokiem krytycznym CB nazywa się zbiór operacji krytycznych <7 e O , które w ykonuje się na jednej m aszynie bez przerw.
W ten sposób zbiór CB można uporządkować względem czasów początku w ykonania operacji. Operacja z najm niejszym (największym) czasem rozpoczęcia w ykonania nazywa się pierw szą (ostatnią) operacją bloku krytycznego.
Sąsiedztwo przedstaw ione w [4] składa się z rozwiązań otrzym anych z rozw iązania początkow ego (wyjściow ego) na drodze zm iany porządku dwóch pierw szych lub dwóch ostatnich operacji w uporządkow anych zbiorach bloków krytycznych. Sąsiedztwo tego typu dla zadania (l)-(5 ) traci je d n ą w ażn ą właściw ość w porów naniu z zadaniem j o b shop scheduling: rozwiązania z jeg o sąsiedztw a nie zawsze są dopuszczalne. Dlatego przeprow adzane było spraw dzenie rozw iązania ze względu na dopuszczalność rozwiązania.
5. E ksperym ent kom puterowy
Dla rozw iązania zadania (l)-(5 ) opracowano oprogram owanie dla algorytm u, opartego na procedurze GRASP [2], Eksperymenty przeprow adzono kom puterow o
Zastosow anie procedury GRASP . 21
dla danych przedstaw ionych w [6]. Liczba operacji dla tych danych - 160, liczba m aszyn - 26. W szystkie eksperym enty przeprow adzono z w ykorzystaniem kom putera z procesorem Pentium 733M H z i 256M B pam ięci operacyjnej.
Param etr a , który w ykorzystuje się do w yboru kandydatów do w staw ienia do harm onogram u na etapie konstrukcji rozw iązania, w ybierany był dla każdego etapu konstrukcji losowo z przedziału [0,1]. N ajlepsze rozw iązanie dla przebiegu szeregow o-rów noległego, równe 33774 m in (tab. 1.) znaleziono po 60 iteracjach, przeprow adzając 5 prób dla każdej liczby iteracji. Dla rozw iązania tego zadania zastosow ano także algorytm genetyczny, przy czym w yniki były nieznacznie lepsze [7]. W yniki dla GRASP do szeregowego przebiegu produkcji przedstaw iono na rysunku 1.
Tabela 1 W artości F(H) w zależności od liczby iteracji dla algorytm u GRASP
Lic/.ba it e r a c j i P róba d ająca n ajlepszą w artość
Fi(H ) (i-liczb a prób, ¡=1—5)
W artość k ryteriu m o p tym alizacji Fi(H )
[min]
Ś red n ia w artość k ryteriu m Fi/5 [min]
10 20
(2) 30 40
0 )
50 60
(3) (4)
70
(5)
80
Rys. 1. Porów nanie wyników eksperym entu dla różnych wartości param etru a
22 A. Antczak. P. Antczak. T. W itkow ski
6. W nioski
Dla problem u gniazdow ootw artego szeregow ania zadań przedstaw iono algorytm bazujący na procedurze GRASP. Eksperym ent obliczeniow y pokazał, że najbardziej pracochłonną częścią algorytm u je st etap konstrukcji rozwiązania.
Głównymi wadam i realizow anego algorytm u jest niezależność poszczególnych iteracji i wysoka pracochłonność konstrukcji rozwiązania. P ierw szą w adę m ożna usunąć, w prow adzając do algoiytm u schemat intensyfikacji poszukiw ania rozw iązania w obszarze najlepszego rozwiązania, tak ja k to zrealizow ano w [6] lub stosując procedurę path-relinking [1], W celu usunięcia drugiej w ady przy rozw iązyw aniu sform ułowanego zadania m ożna zastosow ać inne m etody, np. typu TABU, która nie wym aga stałej generacji nowych rozwiązań.
LITERATU RA
1. Aiex R.M ., Binato S., Resende M.G.C.: Parallel GRASP with path-relinking for jo b shop scheduling. Parallel Com puting, Vol. 29, 2003, p. 393-430.
2. Binato S. i in.: A Greedy Random ized A daptive Search Procedure F or Job Shop Scheduling. A T& T Labs Technical Report, 2000, p. 1-19.
3. Janiak A.: W ybrane problem y i algorytm y szeregow ania zadań i rozdziału zasobów. A kadem icka Oficyna W ydaw nicza PLJ, W arszaw a 1999.
4. Nowicki E., Smutnicki Cz.: A Fast Taboo Search A lgorithm for the Job Shop Problem. M anagem ent Science, Vol. 42, No 6, 1996, p. 797-813.
5. Sm utnicki Cz.: A lgorytm y szeregowania. A kadem icka O ficyna W ydaw nicza EXIT, W arszawa 2000.
6 . W itkowski T.: Decyzje w zarządzaniu przedsiębiorstw em . W N T, W arszaw a 2000.
7. W itkowski T., A ntczak P., A ntczak A.: Random and Evolution A lgorithm s o f Tasks Scheduling and the Production Scheduling. Proceedings o f International Joint C onference on Fuzzy System s-Fuzz-IEEE 2004, Budapest 2004, Vol. 2, p. 727-732.
Recenzent: D r hab. inż: M. Zaborow ski, prof. IISiT PAN
A bstract
The one jo b shop-open shop problem has been analysed. The algorithm based on the on procedure GRASP, has been prepared for the class o f m entioned task. N ext the realization o f GRASP procedure for this problem has been presented. The neighbourhood N-S has been m odified for resolving this task. The results o f the com puter experim ent for the algorithm has been presented. Sim ulated studies have been perform ed to evaluate the perform ance o f the algorithm and to com pare the solution results with those obtained by using genetic algorithm.