Wojciech THOMAS Politechnika W rocławska
P O R Ó W N A N I E A L G O R Y T M Ó W R O Z W IĄ Z A N IA P R O B L E M U S Z E R E G O W A N IA Z A D A Ń Z R U C H O M Y M I R E A L I Z A T O R A M I D L A K R Y T E R I U M M F T
S tre s z c z e n ie . W p rac y przedstaw iono porównanie dotychczas opracowa
nych algorytmów dotyczących problem u szeregowania zadań z ruchom ym i realizatoram i i k ry teriu m w postaci średniego czasu przepływu. Algorytm y porównano p o d względem osiąganej wartości kryterium oraz pod względem czasu działania. W pracy porów nano algorytm symulowanego w yżarzania, algorytm ewolucyjny, dw a algorytm y hybrydowe oraz algoiytm determ ini
styczny.
C O M P A R IS O N O F S O L U T I O N A L G O R I T H M S F O R T A S K S C H E D U L IN G P R O B L E M W I T H M O V I N G E X E C U T O R S A N D M E A N F L O W T I M E C R I T E R I O N
S u m m a ry . In th e p a p e r a com parison of heuristic algorithm s for solving a task scheduling problem w ith moving executors and m ean flow criterion is presented. T he following algorithm s are considered in this paper: evolutio
nary algorithm , sim u lated annealing algorithm , two hybrid algorithm s an d a determ inistic algorithm . All algorithm s are com pared w ith respect to a value of perform ance index an d execution tim e.
1. W s tę p
Prezentow ana p rac a dotyczy problem u szeregowania zadań z ruchom ym i realizatoram i. Z zagadnieniam i tego ty p u m ożna spotkać się w elastycznych sys
tem ach produkcyjnych, w system ach usługowych, gdy zadania albo czynności są realizowane na stanow iskach rozmieszczonych na płaszczyźnie lub w przestrze
ni, przy czym nie m ożna zaniedbać czasów przejazdu podm iotów wykonujących te czynności (realizatorów, robotów , pojazdów autonom icznych). Założono, że n a każdym ze stanowisk może być w ykonyw ana jed n a czynność, dlatego stanow iska można utożsam ić z czynnościam i. Specyfika problem u polega na tym , że jako czas wykonania zadania h przez realizato r r przyjęto sumę czasów dojazdu z poprzed-
Rys. 1. Przykładow a instancja problem u dla R = 2 i H = 15
niego stanow iska g do stanow iska h oraz czas w ykonania czynności n a stanow isku h:
T~r,h = R ,g,h T R\h-
P rzyjęte założenie o czasie trw an ia zadania powoduje, że czas jego w ykonania nie będzie znany, dopóki nie zostaną określone tra sy przejazdu realizatorów.
N a rys. 1 przedstaw iono przykładow ą instancję problem u dla H — 15 zadań i R = 2 realizatorów . N um erem 16 oznaczono bazę, czyli specjalne stanowisko, na którym rozpoczynają pracę wszystkie realizatory i do którego pow racają po wykonaniu przypisanych im zadań.
W badanym problem ie jako kryterium jakości przyjęto średni czas przepły
wu (ang. mean flow tim e) zdefiniowany jako sum a m om entów zakończeń wykony
w ania zadań:
H F = Y , C h -
1
2 . A lg o r y tm e w o lu c y jn y E A
Do zakodowania rozw iązania badanego problem u zaproponow ano wykorzy
stanie dwuwierszowej m acierzy g, w której elem enty pierwszego wiersza g u t wska
zywały n a którym realizatorze jest wykonywane zadanie o num erze go,h- Kolejność w ykonania zad ań przez realizatory odpow iada kolejności kolum n w m acierzy g.
Przykładow a m acierz g , opisująca tra sy przejazdu dwóch realizatorów z ry s.l, w ygląda następująco:
2 1 2 1 1 1 1 1 1 1 1 1 2 2 1
15 3 14 2 9 8 13 10 7 5 4 1 11 12 6
W algorytm ie EA zastosowano specjalnie zmodyfikowany o perator krzyżowania z cięciem jednopunktow ym , k tóry nie powodował pow staw ania rozw iązań niedo
puszczalnych oraz dostosowane do niego o p e ra to ry m utacji, zmieniające kolejność kolum n w m acierzy g.
D okładny opis wykorzystanych operatorów ewolucyjnych, wykorzystanych do rozw iązania przedstaw ionego problem u, przedstaw iono w pracy [4]. Szczegóło
we porów nanie algorytm ów ewolucyjnych zarów no dla rozważanego problem u, ja k również dla problem ów tego ty p u uwzględni aj ących inne kryteria jakości zapre
zentowano w pracy [1].
3. A lg o r y tm s y m u lo w a n e g o w y ż a r z a n ia S A
Drugim algorytm em heurystycznym , w ykorzystanym w pracach, był algo
ry tm symulowanego w yżarzania. B adany problem jest problem em optym alizacji kom binatorycznej, w związku z czym określenie otocznia bieżącego rozw iązania nie jest ta k oczywiste, ja k w przypadku problem ów ciągłych. W literaturze przyj
muje się w takich przypadkach, że otoczeniem je st zbiór rozwiązań niewiele róż
niących się od bieżącego rozw iązania. W b ad an ym problem ie zaproponowano, aby za otoczenie bieżącego rozw iązania traktow ać w szystkie takie rozwiązania, w któ
rych jedno, losowo w ybrane, zadanie jest uszeregowane n a wszystkich możliwych pozycjach. W zaproponow anym algorytm ie w ykorzystano logarytm iczny schem at schładzania.
4. A lg o r y tm d e te r m i n is t y c z n y C A
W takcie prowadzonych prac pojaw iła się idea prostego algorytm u, służą
cego do szybkiego generowania rozwiązań w stępnych dla algorytm u SA. D ziałanie algorytm u CA polega n a szeregowaniu kolejnych zadań n a realizatorach wg ko
lejności ich numerów. Kolejne zadania są szeregowane n a wszystkich możliwych pozycjach (względem już uszeregowanych zadań) i ostatecznie zadanie szeregowa
ne jest n a tej pozycji, k tó ra powoduje najm niejszy przyrost wartości kryterium .
5. A lg o r y tm y h y b r y d o w e E A S A i E A ( S A )
Zaprezentow ane powyżej algorytm}' heurystyczne EA i SA m iały swoje za
lety i wady. A lgorytm EA dość szybko znajdow ał rozw iązania leżące w pobliżu optim um globalnego, jednak nawet znaczny w zrost liczby iteracji nie powodował znaczącej popraw y w artości kryterium . W przeciw ieństwie do algorytm u EA, algo
ry tm SA był w stanie znacząco popraw iać znalezione rozwiązanie, w ym agał jednak znacznego powiększenia liczby iteracji. W ram ach prowadzonych b ad ań postano
wiono przebadać dw a algorytm y hybrydowe, stanow iące połączenie obu podejść heurystycznych. W pierwszym z nich, nazw anym EASA, algorytm EA m iał służyć do szybkiego znalezienia rozwiązania, które następnie staw ało się rozwiązaniem początkow ym algorytm u SA. W drugim przypadku, w algorytm ie EA (SA ), algo-
¿ C A - — -
4— .— j— .— i— .— i— i — i //
8 10 12 14 10 18 20
Rys. 2. Porów nanie znalezionych w artości kryterium dla H < 20
rytm SA w ystępow ał jak o specyficzny o p erato r ewolucyjny w algorytm ie EA. Ze względu n a to, iż liczba iteracji algorytm u EA jest duża, wywoływanie algorytm u SA w każdej z nich znacząco w ydłużyłoby czas działania algorytm u EA (SA ). Nie należało również wywoływać algorytm u SA dla wszystkich rozw iązań w każdej iteracji, ponieważ zbiór rozw iązań stałby się w tedy jednorodny. Z tych powodów zdecydowano, że w algorytm ie EA(SA) algorytm SA będzie wywoływany co okre
śloną liczbę iteracji, w yłącznie dla najlepszego rozw iązania znalezionego w danej iteracji.
Zasadę d ziałan ia oraz szczegółowe wyniki przedstaw iono w pracy [5]. Więcej informacji o zastosow aniu rozw iązań hybrydowych w algorytm ach ewolucyjnych m ożna znaleźć m .in. w' [2].
6 . B a d a n ia s y m u la c y jn e
B adania sym ulacyjne składały się z dwóch etapowe W pienwszym etapie b a
dań dobrano p a ra m e try algorytm ów tak, aby uzyskać najlepsze wyniki. N astępnie dla w ybranych param etró w porównywano ze sobą poszczególne algorytm)'. W ar
tości k ryteriu m znalezione przez algorytm y heurystyczne dla problemów o m ałych rozm iarach (II < 20) porówmano przy użyciu wskaźnika 5X:
S x = F x ~ F b b • 1 0 0 % ,
Fbb
gdzie x oznacza b ad an y algorytm , zaś Fbb oznacza optym alną w artość kryterium dla badanego problem u. W szystkie wyniki przedstaw ione na wykresach są uśred
nionymi wynikami z dziesięciu uruchom ień każdego z algorytmów'. Ja k wynika z rys. 2, dla problem ów o I I < 1 7 algorytm y EA i SA znajdow ały rozw iązania dokładne. Dla większych H znajdow ane rozw iązania stopniowo się pogarszały, przy czym były one gorsze od dokładnych tylko o 2 — 3%. D la m ałych problemów' algorytm CA uzyskiw ał zdecydowanie gorsze wyniki.
S ytuacja zm ieniła się dla problemów o dużych rozm iarach 100 < H < 450.
Na rys. 3 przedstaw iono porówmanie wartości kryteriów' znajdow anych przez po
szczególne algorytmy. Ze względu na brak znajom ości dokładnych w artości kry-
Rys. 3. Porównanie znalezionych wartości kryteriów dla dużych wartości H
terim n dla problemów o ta k dużych rozm iarach, wartości kryteriów znajdow ane przez badane algorytm y porównywano z w artościam i znalezionymi przez algorytm EA, przy pom ocy wskaźnika:
<5X = 7i ~ F k a . . 1 0 0 % . ń E A
Jak widać, dla zadań o dużych rozm iarach najlepsze wyniki osiąga algorytm hy
brydowy EASA. Niewiele gorszy od niego jest algorytm SA. W arte podkreślenia są dobre (lepsze niż algorytm u EA) wyniki uzyskane przez algorytm CA. Algo
ry tm CA jest bardzo prosty, ale dla największych badanych rozm iarów problem u uzyskuje wyniki lepsze od algorytm ów heurystycznych, ustępując algorytm om hy
brydowym.
W yniki te są efektem zastosowanych w algorytm ach EA i SA warunków sto
pu - w obu przypadkach założono, że algorytm y d ziałają przez określoną z góry, sta łą dla wszystkich b adań, liczbę iteracji. Z uzyskanych wyników m ożna wycią
gnąć wniosek, że wraz ze wzrostem rozm iaru problem u należy również zwiększać liczbę iteracji w algorytm ach EA i SA. Algor}rtm EA wykonywał I = 100000 iteracji, zaś algorytm SA - K — 200000. W przypadku algorytm u EASA algo
rytm EA wykonywał tylko I = 1000 iteracji, zaś algorytm SA - K — 50000, ale i ta k znalezione przez algorytm EA początkowe rozwiązanie dla algorytm u SA po
zwoliło wyznaczyć rozw iązania o lepszych wartościach kryterium . W arto zwrócić uwagę na czasy działania algorytm ów przedstaw ione w tab . 1. Ja k widać algorytm CA znajduje rozw iązanie w ciągu kilku sekund, zaś dla najw iększych problemów (H = 450) czasy działania algorytm ów sięgają tysięcy sekund.
7. P o d s u m o w a n ie
W pracy przedstaw iono porównanie opracowanych dotychczas algorytmów heurystycznych i hybrydowych, znajdujących rozwiązania dla problem u szerego
wania zadań z uwzględnieniem ruchu realizatorów dla kryterium średniego czasu przepływu. Najlepsze efekty dało zastosowanie algorytm u h}rbrydowego EASA, k tóry nawet dla największych rozmiarów badanych problemów znajdował rozwią-
Tabela 1 Porównanie czasów działan ia wszystkich
algorytm ów
\ T [ s j
11 Tsa 7ea 7ca Teasa Tea(sa)
50 49 148 1 51 1342
100 102 250 1 105 2534
150 374 439 1 378 5847
200 033 059 1 038 9895
250 1048 845 1 1050 10383
300 1431 958 2 1440 22308
350 1915 1128 2 1925 29931 400 2429 1252 2 2441 37905 450 3340 1391 2 3353 52200
zania lepsze niż pozostałe algorytmy. W arto również zwrócić uwagę n a algorytm determ inistyczny CA, który, pom im o swojej prostoty, dla problem ów o dużych rozm iarach osiągał rezultat}' lepsze od algorytm ów heurystycznych EA i SA.
LITER A TU RA
1. Kowalski M., T hom as W.: E k sperym entalna ocena ewolucyjnych algorytm ów szeregowania zadań na ruchom ych realizatorach. W: M. Zaborowski (red.):
A utom atyzacja procesów dyskretnych, W N T, 2004.
2. P reux P., Talbi E.G.: Towards hybrid evolutionary algorithm s. Intl. Tans, in Op. Res., t. 6, 1999, p. 557-570.
3. T hom as W.: Algorytm dokładny rozw iązania problem u szeregowania zadań z ruchowymi realizatoram i dla kryterium M FT. W: M. Zaborowski (red.):
A utom atyzacja procesów dyskretnych, W N T, 2004.
4. T hom as W.: A pplication of th e genetic algorithm to solve th e task scheduling problem w ith moving executors. Proc. of A l-m eth 2003, Gliwice, 2003.
5. T hom as W.: Hybrydowe algorytm y szeregowania zadań n a ruchom ych re
alizatorach dla kryterium średniego czasu przepływ u. K rajow a Konferencja A utom atyki, Warszawa, 2005.
Recenzent: D r hab. inz. K onrad W ala, prof. AGH
A b s t r a c t
T his paper concerns a task scheduling problem w ith moving executors for th e m ean flow tim e criterion. In th e p a p e r heuristic and hybrid algorithm s are com
pared. Best criterion values found by th e algorithm s are com pared w ith optim al
criterion value for th e sm all problem s (less th a n 20 ta sk s). For the larger problem s (II > 100 tasks), evolutionary algorithm is used as a reference algorithm . T he re
search shows th a t th e b e st algorithm is th e hybrid algorithm EASA th a t is a serial com position of evolutionary algorithm EA and sim ulated annealing algorithm SA.
Very good results are achieved by determ inistic algorithm CA, which outperform s b o th heuristic algorithm s E A and SA for th e large problem s (H = 450 tasks). It is w orth to note th a t alg orith m CA is very quick. Its execution tim e is shorter th a n 2 seconds, whereas execution tim es of hybrid algorithm s are about thousands of seconds for th e largest exam ined problems.