AUTOMATYZACJA PROCESÓW DYSKRETNYCH 2014 Mariusz

Transkrypt

AUTOMATYZACJA PROCESÓW DYSKRETNYCH 2014 Mariusz
AUTOMATYZACJA PROCESÓW DYSKRETNYCH
2014
Mariusz MAKUCHOWSKI
Politechnika Wrocławska
PROBLEM PRZEPŁYWOWY: PERMUTACYJNY, BEZ CZEKANIA, BEZ
PRZESTOJÓW
Streszczenie. W pracy porównuje si˛e harmonogramy różnych wariantów problemu przepływowego; problemu permutacyjnego, bez czekania i bez przestojów.
Ocenia si˛e wpływ danego ograniczenia na wydłużenie harmonogramu oraz korelacj˛e długości harmonogramów dla wymienionych wariantów. Bada si˛e również efektywność zestawu algorytmów typu wstaw. Do eksperymentów numerycznych wykorzystuje si˛e znane z literatury przykłady testowe.
FLOW SHOP PROBLEM: PERMUTATION, NO-WAIT, NO-IDLE
Summary. The paper compares the schedules of different variants of the flow
shop problem, namely permutation, no waiting and no idle flow shop problems.
It assesses the impact of the constraints on the extension of the schedules and on
correlations of the length of the schedules for these variants. It also examines the
effectiveness of a set of insert type algorithms. The efficiency of the algorithms is
tested on well–known literature benchmarks.
1. Wst˛ep
Problem przepływowy jest sztandarowym problemem w teorii szeregowania zadań. Od kilkudziesi˛eciu lat cieszy si˛e on dużym zainteresowaniem zarówno ze strony
teoretyków jak i praktyków. Modeluje on wiele rzeczywistych systemów przemysłowych np. taśmowe linie produkcyjne. W ogólnym problemie przepływowym należy
wykonać określona˛ liczb˛e zadań produkcyjnych. Maszyny ustawione sa˛ w tzw. ciagu
˛
technologicznym a każda maszyna odpowiedzialna jest za wykonanie określonego etapu produkcyjnego. Zadania wykonywane sa˛ na wszystkich maszynach, przy czym marszruta technologiczna (kolejność odwiedzania maszyn przez zadanie) jest identyczna
dla wszystkich zadań. Harmonogramowanie zadań w systemie przepływowym polega
na wyznaczeniu dopuszczalnych momentów rozpocz˛ecia i zakończenia wykonywania
wszystkich z zadań na poszczególnych maszynach. Celem optymalizacji jest wybranie takiego harmonogramu aby był on najlepszy w sensie zadanego kryterium. Spośród
istniejacych
˛
kryteriów jednym z najcz˛eściej badanych jest kryterium minimalizacji długości harmonogramu, czyli minimalizacji czasu zakończenia realizacji wszystkich zadań. Harmonogram w którym kolejność wykonywania zadań na każdej z maszyn jest
jednakowa, nazywany jest harmonogramem permutacyjnym. Czasami pomimo, iż produkcja pozwala na wykonywanie harmonogramów niepermutracyjnych, to nakłada si˛e
sztuczne ograniczenie aby rozwiazanie
˛
było rozwiazaniem
˛
permutacyjnym. Post˛epowa-
M.Makuchowski
nie takie posiada zalety w postaci zmniejszenia przestrzeni rozwiazań
˛
oraz zwi˛ekszenia
efektywności pracy algorytmów. Niestety w niektórych przypadkach instancji założenie
te pozbawia nas możliwości znalezienia rozwiazania
˛
optymalnego.
2. Model matematyczny
Dany jest zbiór n zadań J = {1, 2, . . . , n} oraz zbiór m maszyn M =
{1, 2, . . . , m}. Każde zadanie j ∈ J ma być wykonane kolejno na maszynie, w kolejności zgodnej z numeracja˛ maszyn. Proces wykonywania zadania j ∈ J na maszynie
l ∈ M nazywamy operacja˛ i notujemy jako par˛e (j, l). Dla każdej operacji (j, l) dany jest pj,l > 0 czas jej realizacji. Podstawowe założenia dotyczace
˛ produkcji to: (i)
operacje wykonuje si˛e bez przerw, (ii) maszyna może wykonywać co najwyżej jedna˛
operacj˛e w danym momencie, (iii) nie można równocześnie wykonywać kilku operacji tego samego zadania. Harmonogramem dopuszczalnym nazywamy S(j, l) momenty
rozpocz˛ecia i/lub C(j, l) momenty zakończenia wykonywania operacji (j, l), l ∈ M ,
j ∈ J spełniajac
˛ a˛ wszystkie wymienione powyżej ograniczenia. Pomi˛edzy momentami rozpocz˛ecia i zakończenia każdej z operacji zachodzi: C(j, l) = S(j, l) + pj,l . Dla
każdego dopuszczalnego harmonogramu można wyznaczyć funkcj˛e jego oceny. W niniejszej pracy rozpatrywane kryterium to Cmax moment wykonania wszystkich operacji;
Cmax = maxj∈J C(j, m). Problem polega na znalezieniu harmonogramu dopuszczalnego minimalizujacego
˛
wybrane kryterium.
2.1. Przypadki szczególne problemu przepływowego
Uwzgl˛ednienie dodatkowych założeń odnośnie produkcji, powoduje nałożenie
dodatkowych wymagań (ograniczeń) wzgl˛edem poszukiwanego harmonogramu. Ze
wzgl˛edu na dodatkowe ograniczenia problem przepływowy tworzy nowe szczególne
przypadki. W niniejszej pracy porównywać b˛edziemy ze soba˛ trzy przypadki szczególne:
• permutacyjny problem przepływowym (ang. permutation flow shop problem) - w
którym wymaga si˛e aby kolejność wykonywania zadań na wszystkich maszynach
była jednakowa, [4, 5];
• problem przepływowy bez czekania (ang. no-wait flow shop problem) - w którym
żada
˛ si˛e aby rozpocz˛ecie wykonywania danego zadania na kolejnej maszynie rozpoczynało si˛e bezzwłocznie po zakończeniu obróbki na maszynie wcześniejszej,
[6, 9];
• (permutacyjny) problem przepływowym bez przestojów (ang. no-idle flow shop
problem) - żada
˛ si˛e, aby każda z maszyn pracowała bez przestoju, [2, 8].
Kolejne wymienione problemy w notacji Grahama [3] oznacza si˛e jako F ∗ ||Cmax ,
F |no−wait|Cmax i F |no−idle|Cmax . Własności problemu bez czekania wymuszaja,˛ iż
rozwiazanie
˛
dopuszczalne jest z definicji rozwiazaniem
˛
permutacyjnym. Przeciwnie, samo ograniczenie bez przestojów nie wymusza permutacyjnego charakteru harmonogramu. Jednakże, w dalszej cz˛eści pracy odnoszac
˛ si˛e do rozwiazań
˛
bez przestojów, b˛edziemy mieli na uwadze wyłacznie
˛
permutacyjne harmonogramy bez przestojów. Najcz˛eściej dodatkowe ograniczenia bez czekania i bez przestojów wydłużaja˛ harmonogram,
lecz nie jest to reguła.˛ Inne bardzo ciekawe własności powyższych problemów opisane
Problem przepływowy: permutacyjny, bez czekania, bez przestojów
Harmonogram permutacyjny
maszyna 1
J1
J2
J3
J1
maszyna 2
J2
J3
J1
maszyna 3
J2
J3
Harmonogram z ograniczeniem bez czekania
maszyna 1
J1
J2
J3
J1
maszyna 2
J2
J3
J1
maszyna 3
J2
J3
Harmonogram z ograniczeniem bez przestojów
maszyna 1
J1
J2
J3
J1
maszyna 2
J2
J3
J1
maszyna 3
J2
J3
Rys. 1. Harmonogramy problemu przepływowego z dodatkowymi ograniczeniami
sa˛ w pracy [1]. Przykładowe harmonogramy analizowanych problemów przedstawione
zostały na rys. 1.
2.2. Model perutacyjno–grafowy
W każdym z wymienionych powyżej przypadków, dopuszczalny harmonogram
może być jednoznacznie zdefiniowany przez sekwencj˛e wykonywania zadań. Dlatego
wygodnie jest stosować model permutacyjno–grafowy, w którym zmienna˛ decyzyjna˛
jest permutacja π zbioru zdań J; π = (π(1), π(2), . . . , π(n)). Zbiór wszystkich możliwych permutacji oznaczamy przez Π. Wartościa˛ kryterium jest długość najdłuższej
ścieżki w skierowanym grafie:
G(π) = (J × M, E T ∪ E K (π)).
(1)
Wierzchołek (j, l), j ∈ J, l ∈ M reprezentuje operacj˛e (j, l) i ma obcia˛żenie pj,l . Zbiór
nieobcia˛żonych łuków E T reprezentuje zbiór ograniczeń technologicznych;
T
E =
m n
[ [
j∈J l=2
(j, l − 1), (j, l)
o
.
(2)
M.Makuchowski
a)
···
zadanie π(1)
zadanie π(n)
maszyna 1
π(1), 1
π(2), 1
···
π(n),1
maszyna 2
π(1), 2
π(2), 2
···
π(n),2
..
.
..
.
..
.
maszyna m
π(1), m
π(2), m
b)
..
.
···
π(n), m
N I1
c)
π(1), 1
π(2), 1
···
π(n),1
π(1), 1
π(2), 1
···
π(n),1
π(1), 2
π(2), 2
···
π(n),2
π(1), 2
π(2), 2
···
π(n),2
..
.
..
.
π(n), m
π(1), m
N Wπ(1)
N Wπ(n)
..
.
..
.
π(1), m
π(2), m
···
..
. NI
m
π(2), m
..
.
···
π(n), m
Rys. 2. Modele grafowe harmonogramów: a) permutacyjny, b) z ograniczeniem bez czekania, c) permutacyjny z ograniczeniem bez postojów
Zbiór nieobcia˛żonych łuków E K (π) reprezentuje ograniczenia kolejnościowe wynikajace
˛ z przyj˛etej kolejności wykonywania zadań;
K
E (π) =
n [ n
[
(π(i − 1), l), (π(i), l)
o
.
(3)
i=2 l∈M
Graf G(π) dla permutacyjnego problemu przepływowego przedstawiony jest na rys. 2a.
Ponieważ długość najdłuższej ścieżki w grafie G(π) oznaczonej przez Cmax (π) równa
si˛e momentowi wykonania wszystkich zadań, analizowany problem sprowadza si˛e do
znalezienia
π ∗ ∈ arg min Cmax (π).
(4)
π∈Π
W przypadku uwzgl˛edniania dodatkowego ograniczenia bez-czekania, najwygodniej jest transformować analizowany problem do asymetrycznego problemu komiwojażera [10]. Jednakże można także uwzgl˛ednić ograniczenie bez czekania dodajac
˛ do
Problem przepływowy: permutacyjny, bez czekania, bez przestojów
grafu G(π) zbiór obcia˛żonych łuków
ENW =
[ n
(j, m), (j, 1)
o
.
(5)
j∈J
Łuk łacz
˛ acy
˛ ostatnia˛ i pierwsza˛ operacj˛e zadania j ∈ J jest obcia˛żony ujemna˛ suma˛
trwania wszystkich operacji tego zadania;
N Wj = −
X
pj,l .
(6)
l∈M
Graf reprezentujacy
˛ rozwiazanie
˛
π problemu z ograniczeniem bez czekania przedstawiony jest na rys.2b. W przypadku gdy uwzgl˛edni si˛e ograniczenie bez przestojów, model grafowy należy rozbudować o zbiór obcia˛żonych łuków:
ENI =
[ n
(π(n), l), (π(1), l)
o
.
(7)
l∈M
Graf reprezentujacy
˛ sekwencje zadań π z ograniczeniem bez przestojów przedstawiony
jest narys.2c. Łuk łacz
˛ acy
˛ ostatnia˛ i pierwsza˛ operacje wykonywana˛ na maszynie l ∈ M
obcia˛żony jest suma˛ czasów trwania operacji wykonywanych na tej maszynie;
N Il = −
X
pj,l .
(8)
j∈J
W modelach permutacyjno–grafowych analizowanych problemów wyst˛epuja˛ pewne podobieństwa. Struktura grafu prezentujacego
˛
harmonogram z ograniczeniem bez czekania
jest taka sama jak struktura grafu harmonogramu permutacyjnego z ograniczeniem bez
przestojów; rys.2. Majac
˛ tylko sam graf reprezentujacy
˛ jedno z wymienionych uszeregowań, (przy niewidocznych nazwach wierzchołków) nie w sposób jest rozpoznać, który z
harmonogramów jest modelowany. Mimo podobieństwa grafów modelujacych
˛
rozwia˛
zania, właściwości omawianych problemów sa˛ różne. Różnica wynika w zmianach jakie
nast˛epuja˛ w grafach dla różnych permutacji zadań π ∈ Π. Problem z ograniczeniem bez
czekania byłby równoważny permutacyjnemu problemowi bez przestojów gdyby była
ustalona kolejność wykonywania zadań, a zmienna˛ decyzyjna˛ była by sekwencja maszyn. Podobnie, gdyby w permutacyjnym problemie bez przestojów należało wybrać
sekwencj˛e maszyn a kolejności zadań była by ustalona to odpowiadało by to dokładnie
zagadnieniu bez czekania. Różnica w omawianych problemach widoczna jest także w
akceleracji obliczania wartości funkcji celu dla kolejności zadań π ∈ Π. W przypadku
ograniczenia bez czekania można dokonać wst˛epnych obliczeń (o złożoności obliczeniowej O(mn2 )) wyznaczajac
˛ przyrost długości harmonogramu dla każdej pary zadań.
Nast˛epnie wyznaczenie długości harmonogramu polega na wyznaczeniu sumy przyrostów odpowiednich wartości każdej pary sasiednich
˛
zadań w permutacji π. Złożoność
obliczenia wyznaczenia długości harmonogramu (nie uwzgl˛edniajac
˛ jednorazowych obliczeń wst˛epnych) wynosi w tym przypadku O(n). Podobnej akceleracji nie można zastosować w przypadku ograniczenia bez postoju, dla którego złożoność wyznaczenia
długości harmonogramu wynosi O(nm).
3. Badania eksperymentalne
W niniejszej cz˛eści przebadany zostanie wpływ dodatkowych ograniczeń typu
bez czekania, oraz bez przestoju na długość harmonogramu. Badania podzielone zostały
na trzy cz˛eści w których porównywano kolejno:
M.Makuchowski
Tabela 1
Średnia długość wzgl˛edna losowych harmonogramów
Typ harmonogramu
Grupa
instancji
n×m
Permutacyjny
Bez czekania
Bez przestojów
Fmin Favg Fmax
Fdev
Fmin Favg Fmax
Fdev
Fmin Favg Fmax
Fdev
20 × 5
20 × 10
20 × 20
50 × 5
50 × 10
50 × 20
100 × 5
100 × 10
100 × 20
200 × 10
200 × 20
500 × 20
1.00
1.00
1.00
1.00
1.00
1.00
1.00
1.00
1.00
1.00
1.00
1.00
1.17
1.16
1.12
1.11
1.11
1.10
1.09
1.08
1.07
1.06
1.05
1.04
1.40
1.35
1.26
1.27
1.25
1.21
1.21
1.19
1.16
1.14
1.12
1.08
0.055
0.047
0.035
0.037
0.033
0.027
0.028
0.025
0.020
0.018
0.016
0.011
1.35
1.45
1.47
1.53
1.75
1.93
1.64
1.94
2.22
2.10
2.50
2.81
1.61
1.73
1.75
1.71
1.97
2.18
1.78
2.11
2.42
2.22
2.66
2.92
1.84
1.98
2.00
1.87
2.16
2.40
1.90
2.27
2.61
2.34
2.80
3.02
0.067
0.075
0.076
0.046
0.056
0.064
0.033
0.042
0.050
0.031
0.039
0.027
1.10
1.26
1.50
1.08
1.19
1.50
1.05
1.19
1.42
1.14
1.33
1.22
1.28
1.47
1.71
1.21
1.36
1.69
1.15
1.31
1.58
1.23
1.45
1.31
1.52
1.76
1.96
1.39
1.56
1.92
1.29
1.49
1.78
1.37
1.60
1.42
0.058
0.068
0.061
0.042
0.051
0.056
0.032
0.038
0.046
0.029
0.037
0.026
Wszystko
1.00
1.10
1.22
0.029
1.89
2.09
2.27
0.050
1.25
1.40
1.59
0.045
• wpływ dodatkowych ograniczeń na średnia˛ długości harmonogramu;
• korelacja długości rozwiazań
˛
problemów przepływowych z dodatkowymi ograniczeniami;
• jakość generowanych rozwiazań
˛
generowanych dedykowanymi algorytmami typu
wstaw.
Badania przeprowadzone zostały na znanych literaturowych 120 przykładach zaproponowanych w pracy [7]. Przykłady te podzielone sa˛ na 12 grup po 10 instancji. Grupy
różnia˛ si˛e rozmiarem instancji, tj liczba˛ zadań n i/lub liczba˛ maszyn m. Każda grupa
identyfikowana jest para˛ n × m.
3.1. Średnia długość harmonogramów
Badaniu poddany został wpływ dodatkowych ograniczeń w problemie przepływowym na średnie długości harmonogramów w poszczególnych grupach instancji. Dla
każdej z instancji problemu wyznaczono zestaw k = 10 000 pseudolosowych sekwencji
wykonywania zadań. Nast˛epnie na ich podstawie wyznaczono 3 zestawy harmonogramów dla problemów przepływowych: permutacyjnego, z ograniczeniem bez czekania i
ograniczeniem bez przestojów. Dokładniej, dla każdej sekwencji stworzono odpowiednio po jednym harmonogramie danego typu. Sekwencj˛e długości harmonogramów permutacyjnych oznaczyliśmy przez X = (x1 , x2 , . . . , xk ),sekwencj˛e długości harmonogramów z ograniczeniem bez czekania jako ciag
˛ Y = (y1 , y2 , . . . , yk ),a sekwencj˛e długości harmonogramów z ograniczeniem bez przestojów jako ciag
˛ Z = (z1 , z2 , . . . , zk ).
Nast˛epnie wyznaczono referencyjna˛ długość jako długość najkrótszego wygenerowanego harmonogramu permutacyjnego; ref = mini=1,...,k xi . Dla każdego z harmonogramów wyznaczono F wzgl˛edna˛ długość harmonogramu w stosunku do wartości referencyjnej ref . Dla każdej z instancji i każdego ograniczenia, dysponujac
˛ zestawem wzgl˛ed-
Problem przepływowy: permutacyjny, bez czekania, bez przestojów
Tabela 2
Korelacje wzgl˛ednych długości harmonogramów
Typ harmonogramu: X - prermutacyjny; Y - bez czekania; Z -bez postoju
n×m
CorrXY
CorrXZ
CorrY Z
n×m
CorrXY
CorrXZ
CorrY Z
20 × 5
20 × 10
20 × 20
50 × 5
50 × 10
50 × 20
0.19
0.19
0.12
0.11
0.08
0.07
0.64
0.40
0.22
0.62
0.41
0.20
0.20
0.14
0.12
0.10
0.06
0.05
100 × 5
100 × 10
100 × 20
200 × 10
200 × 20
500 × 20
0.07
0.05
0.03
0.02
0.01
0.01
0.65
0.37
0.22
0.39
0.24
0.24
0.06
0.04
0.02
0.02
0.01
0.00
Wszystko
0.08
0.38
0.07
—
—
—
—
y
z
z
x
x
y
Rys. 3. Wizualizacja korelacji przeskalowanych długości: x harmonogramów permutacyjnych, y harmonogramów bez czekania i z harmonogramów bez przestojów
nych długości, wyznaczono kolejno: Fmin minimalna,˛ Favg średnia,˛ Fmax maksymalna˛
wzgl˛edna˛ długość, oraz Fdev jej odchylenie standardowe. Uśrednione, dla każdej grupy,
wartości powyższych parametrów zawarte zostały w tabeli 1.
3.2. Korelacja długości harmonogramów
Badaniu poddana została korelacja pomi˛edzy długościami harmonogramów permutacyjnych, bez czekania i bez postojów. W tej cz˛eści testu wykorzystano zestawy
wzgl˛ednych długości harmonogramów uzyskanych w wcześniejszym eksperymencie.
Dla każdej instancji, na podstawie ciagów
˛
X, Y i Z wzgl˛ednych długości harmonogramów wyliczono korelacje pomi˛edzy nimi. Uśrednione wyniki dla każdej z grup przedstawiono w tabeli 2. Długości harmonogramów z dwoma różnymi ograniczeniami stworzonymi dla tej samej sekwencji zadań tworza˛ par˛e liczb która˛ można zaznaczyć na wykresie punktem. Uwzgl˛ednienie całej serii punktów, generuje zbiór punktów w postaci
chmury. W artykule zostały zamieszczone wykresy korelacji dla jednej instancji. Instancja ta(62-instancja Taillarda) z grupy 100 × 5 charakteryzuje si˛e najwi˛eksza˛ wartościa˛
korelacji powyżej 0.7, uzyskana˛ pomi˛edzy Z długościami harmonogramów bez przestojów a X długościami harmonogramów permutacyjnych. W przypadku pozostałych
instancji, korelacje maja˛ mniejsze wartości, a wykresy przybieraja˛ podobny charakter,
lecz sa˛ bardziej rozmyte.
M.Makuchowski
Tabela 3
Średnia długość wzgl˛edna harmonogramów otrzymanych algorytmami klasy N EH
Typ harmonogramu
Grupa
instancji
Permutacyjny
Bez czekania
Bez przestojów
n×m
N EH
N EH N W
20 × 5
20 × 10
20 × 20
50 × 5
50 × 10
50 × 20
100 × 5
100 × 10
100 × 20
200 × 10
200 × 20
500 × 20
0.96
0.95
0.95
0.95
0.91
0.92
0.96
0.92
0.90
0.93
0.90
0.91
1.02
1.05
1.04
1.01
1.03
1.03
1.00
1.02
1.04
1.01
1.01
1.03
1.13
1.13
1.13
1.11
1.11
1.10
1.09
1.07
1.06
1.05
1.05
1.04
1.40
1.58
1.66
1.49
1.80
2.06
1.49
1.84
2.28
1.92
2.47
2.66
1.18
1.23
1.26
1.22
1.32
1.44
1.23
1.37
1.52
1.41
1.62
1.69
1.43
1.55
1.56
1.51
1.70
1.86
1.56
1.79
2.01
1.89
2.22
2.41
1.11
1.30
1.61
1.07
1.18
1.56
1.04
1.17
1.44
1.10
1.31
1.17
1.16
1.34
1.66
1.12
1.29
1.62
1.07
1.27
1.56
1.19
1.40
1.30
1.23
1.44
1.65
1.20
1.34
1.65
1.15
1.31
1.56
1.23
1.42
1.33
Wszystko
0.93
1.02
1.09
1.89
1.37
1.79
1.26
1.33
1.38
N EH N I
N EH
N EH N W
N EH N I
N EH
N EH N W
N EH N I
3.3. Algorytmy typu wstaw
Algorytm typu wstaw, N EH [4] jest dedykowanym algorytmem konstrukcyjnym
dla permutacyjnego problemu przepływowego z kryterium b˛edacym
˛
momentem zakończenia wykonywana wszystkich zadań. Ogólnie piszac
˛ algorytm N EH działa iteracyjnie, tzn w każdym kroku iteracji umieszcza w budowanym harmonogramie kolejne zadanie. Posługujac
˛ si˛e modelem permutacyjno–grafowymdo, można powiedzieć, że do cz˛eściowej sekwencji zadań dodawany jest numer kolejno szeregowanego zadania. Dokładny opis algorytmu bazujacy
˛ na wymienionym modelu przedstawiony jest w pracy [5].
Miejsce dokładanego zadania wybierane jest jako najlepsze z dost˛epnych pozycji. Kryterium oceny jakości miejsca jest takie same jak kryterium rozwiazywanego
˛
problemu.
Dokładniej, w k-tym kroku kolejne zadanie można umieścić w k pozycjach. Tworzonych
jest wi˛ec k próbnych harmonogramów analizujacych
˛
każde możliwe włożenie zadania.
Najlepszy z tych harmonogramów wyznacza szukana˛ pozycj˛e dla dodawanego zadania.
Ponieważ, analizujemy trzy przypadki problemu przepływowego z różnymi ograniczeniami, automatycznie generuje to trzy wersje algorytmu N EH, N EH N W i N EH N I .
Poszczególne wersje różnia˛ si˛e mi˛edzy soba˛ tworzonymi cz˛eściowymi harmonogramami. Klasyczny algorytm N EH ocenia cz˛eściowe sekwencje na podstawie długości permutacyjnego harmonogramu. Analogicznie algorytmy N EH N W i N EH N I oceniaja˛
cz˛eściowe sekwencje zadań na podstawie długości harmonogramów z ograniczeniami
bez czekania i bez przestojów. Załóżmy, iż ostatecznym wynikiem działania każdego
z omówionych algorytmów nie jest harmonogram lecz sekwencja wykonywania zadań.
Wtedy, dla każdej sekwencji odpowiadaja˛ harmonogramy z narzuconymi ograniczeniami (harmonogram permutacyjny, bez czekania i permutacyjny bez przestojów). Oznacza
to iż, dla każdego z analizowanych problemów można zastosowań każdy z wariantów
algorytmu N EH. Badania polegały na wygenerowaniu dla każdej instancji 3 sekwencji
Problem przepływowy: permutacyjny, bez czekania, bez przestojów
wykonywania zadań, przy pomocy algorytmów N EH, N EH N W i N EH N I . Nast˛epnie
wyznaczono po 3 harmonogramy dla każdego z analizowanych problemów (łacznie
˛
9
harmonogramów dla danej instancji). Wyznaczono długości wzgl˛edne (wzgl˛edem rozwiazania
˛
referencyjnego z pierwszego testu) każdego z otrzymanych rozwiazań.
˛
Uśrednione długości harmonogramów z analizowanymi ograniczeniami otrzymane każda˛ z
wersji algorytmu zawarte sa˛ w tabeli 3.
4. Podsumowanie
Porównujac
˛ modele grafowe ograniczenia bez czekania i bez przestojów, można
spodziewać si˛e iż, każde z tych ograniczeń w podobny sposób b˛edzie wydłużać harmonogram produkcji. Badania numeryczne potwierdzaja˛ przypuszczenia. Widoczne jest to
na przykładach w których liczba maszyn jest taka sama jak liczba zadań. Przy braku symetrii, gdy liczba zadań przewyższa liczb˛e maszyn ograniczenie bez czekania powoduje
znacznie wi˛ekszy wzrost długości harmonogramu w stosunku wzrostu długości wywołanego ograniczeniem bez przestojów.
Badania wykazały, znaczac
˛ a˛ różnic˛e w przypadku analizy korelacji długości harmonogramów różnych typów. Jedyna istotna korelacja długości uszeregowania wyst˛epuje pomi˛edzy długościa˛ rozwiazania
˛
bez ograniczenia i z ograniczeniem bez przestojów. Nawet w przypadku instancji o rozmiarze 20 × 20 istotna korelacja wyst˛epuje tylko
pomi˛edzy tymi typami harmonogramów.
Ograniczenie typu bez przestojów bardzo utrudnia konstrukcj˛e efektywnego algorytmu typu wstaw. Dzieje si˛e tak dlatego, iż dodanie kolejnego zadania w dowolne
miejsce cz˛eściowego rozwiazania
˛
zaburza cały harmonogram. Nawet w przypadku dodania zadania na końcu uszeregowania nast˛epuja˛ zmiany momentów rozpocz˛ecia operacji od poczatkowych
˛
fragmentów harmonogramu. W przypadku pozostałych analizowanych problemów takie zjawisko nie wyst˛epuje.
W przypadku problemu z ograniczeniem bez przestojów badania numeryczne
potwierdziły niska˛ efektywność algorytmu typy wstaw. Dla tego problemu algorytm
N EH N I daje rozwiazania
˛
średnio o 10% gorsze niż algorytm wybierajacy
˛ najlepsze
rozwiazanie
˛
z 10 tysi˛ecy losowych harmonogramów. Analogiczne algorytmy w przypadku problemu permutacyjnego i problemu z ograniczenim bez czekania dostarczaja˛
rozwiazania
˛
odpowiednio o 7% i o 28% lepsze niż analogiczny algorytm losowy.
Wykorzystujac
˛ istnienie istotnej korelacji pomi˛edzy jakościa˛ rozwiazania
˛
permutacyjnego i bez przestojów, proponuje si˛e aby drugi z problemów rozwiazać
˛ algorytmem
dedykowanym dla problemu pierwszego. Nast˛epnie na otrzymane rozwiazanie
˛
nałożyć
ograniczenia problemu drugiego. W ten sposób uzyskano rozwiazania
˛
problemu bez
przestojów klasycznym algorytmem N EH. Jakość otrzymanych rozwiazań
˛
jest lepsza
o około 10% lepsza niż w przypadku zastosowania algorytm dedykowanego N EH N W
i jest na poziomie najlepszego z 10 tysi˛ecy rozwiazań
˛
losowych.
LITERATURA
1.
Frits C.R. Spieksma, Gerhard J. Woeginger, The no-wait flow-shop paradox, Operations Research Letters, vol. 33(6), 2005, str. 603–608.
M.Makuchowski
2.
Goncharov Y., Sevastyanov S., The flow shop problem with no-idle constraints:
A review and approximation, European Journal of Operational Research, vol.
196(2), 2009, str. 450–456.
3.
Graham R., Lawler E., Lenstra J., Rinnooy Kan A.: Optimization and approximation in deterministic sequencing and scheduling: a survey, Annals of Discrete
Mathematics, vol. 5, 1979, str. 287–326.
4.
Nawaz M, Enscore Jr. EE, Ham I. A heuristic algorithm for the m-machine, n-job
flow-shop sequencing problem. The International Journal of Management Science, vol 11, 1983, str. 91–96.
5.
Nowicki E., Makuchowski M., Metoda wstawień w klasycznych problemach szeregowania. Cześć I. Problem przepływowy. Komputerowo Zintegrowane Zarza˛
dzanie, Tom II, WNT Warszawa 2001, str. 113–122.
6.
Röck, H., The Three-Machine No-Wait Flow Shop is NP-Complete, Journal of
Association for Computing Machinery, vol. 31(2), 1984, str. 336–345.
7.
Taillard E.: Benchmarks for basic scheduling problems, European Journal of Operational Research, vol. 64, 1993, str. 278–285.
8.
Saadani N., Guinet A., Moalla M., 2005. A travelling salesman approach to solve
the F/no-idle/Cmax problem, European Journal of Operational Research, Elsevier, vol. 161(1), str. 11–20.
9.
Sviridenko, M., Makespan Minimization in No-Wait Flow Shops: A Polynomial
Time Approximation Scheme, Journal on Discrete Mathematics, vol. 16(2), 2003,
str. 313–322.
10.
Wismer D.A., Solution of the flow shop scheduling problem with no intermediate
queues, Operational Research, vol. 20, 1972, str. 689–697.