Harmonogramowania proces贸w produkcyjnych i przedsi臋wzi臋膰 inwestycyjnych – cze艣膰 II
Teoria szeregowania zada艅 wykorzystywana jest w
harmonogramowaniu produkcji przemys艂owej, w systemach operacyjnych maszyn
cyfrowych, w systemach wspomagania podejmowania decyzji, podczas planowania przedsi臋wzi臋膰 inwestycyjnych, podczas organizowania czasu pracy i podzia艂u
obowi膮zk贸w.
Szeregowanie to wyznaczenie takiego rozdzia艂u w czasie
i przestrzeni dost臋pnych zasob贸w
produkcyjnych, by spe艂niaj膮c za艂o偶enia projektowe, uzyska膰 najlepsze
mo偶liwe rozwi膮zanie zaspokajaj膮ce zapotrzebowanie na produkowane wyroby.
Za艂贸偶my,
偶e dysponujemy zbiorem n zada艅
Z = {Z1, ..., Zn},
wykonywanych przy u偶yciu m-elementowego
zbioru maszyn M =
{M1, ...,Mm},
kt贸re s膮 jedynymi zasobami w naszym modelu.
Nale偶y tak
pokierowa膰 przep艂ywem zada艅 poprzez zbi贸r maszyn, aby uzyska膰 rozwi膮zanie
najkorzystniejsze. Wyr贸偶nia si臋 przep艂ywowe zagadnienie kolejno艣ciowe (np.
linia monta偶owa) oraz og贸lne zagadnienie kolejno艣ciowe, w tym szeregowanie
zada艅 na maszynach r贸wnoleg艂ych.
Zadaniami
mog膮 by膰 przyk艂adowo procesy produkcyjne, czynno艣ci inwestycyjne w projektach,
obliczenia komputerowe. Maszyny mog膮 by膰 r贸偶nego typu, mog膮 to by膰 procesory
komputer贸w, ludzie, energia, nak艂ady finansowe. Mo偶liwo艣ci jest wiele. Opiszemy
teraz podstawowe parametry charakteryzuj膮ce model szeregowania zada艅:
Przejdziemy
teraz do om贸wienia parametr贸w, za pomoc膮 kt贸rych okre艣la si臋 po艂o偶enie danego
zadania w czasie. Ka偶de zadanie produkcyjne Zj
ma sw贸j czas rozpocz臋cia Sj
i czas zako艅czenia Cj. Dodatkowo
do najcz臋艣ciej spotykanych parametr贸w, umo偶liwiaj膮cych usytuowanie zadania w
czasie nale偶膮:
Bazuj膮c
na powy偶szych danych mo偶emy spr贸bowa膰 oceni膰 dane uszeregowania zada艅. Jak
艂atwo si臋 domy艣li膰, nie istnieje uniwersalne kryterium optymalno艣ci. Za ka偶dym razem
minimalizujemy koszty zwi膮zane z wyborem kolejno艣ci wykonywanych operacji, a te
zwi膮zane s膮 ze specyfik膮 danego przedsi臋biorstwa. Czasami najwi臋kszymi kosztami
obarczona b臋dzie ilo艣膰 op贸藕nionych zada艅, innym razem firma nara偶ona b臋dzie na
najwi臋ksze straty, gdy przekroczy 艂膮czny czas przewidziany na wykonanie ca艂ego
przedsi臋wzi臋cia. Niech
fj(t)
b臋dzie kosztem zako艅czenia zadania Zj
w chwili t,
fj
€
{Cj,
Lj,
Tj,
Uj},
w贸wczas do najcz臋艣ciej rozwa偶anych funkcji koszt贸w nale偶膮:
Koszt
maksymalny, kt贸ry mo偶na wyrazi膰 jako fmax
= max{fj
: j =
1, ..., n}.
Do tej grupy nale偶膮 na przyk艂ad:
Koszt
ca艂kowity, do kt贸rego nale偶膮 koszt sumaryczny i
koszt sumaryczny wa偶ony, nazywany te偶 wa偶on膮 lub obci膮偶on膮 sum膮 koszt贸w.
Og贸lnie koszt ca艂kowity wyra偶a si臋 wzorem fsum
= ∑wjfj.
Gdy wszystkie wagi s膮 takie same, przyjmuje si臋 fsum
= ∑fj
i jest to w贸wczas koszt sumaryczny. Do
najcz臋艣ciej rozpatrywanych koszt贸w, wyst臋puj膮cych w tej klasie nale偶膮:
Z
ilo艣ci poj臋膰, zdefiniowanych powy偶ej, mo偶na by wnioskowa膰, i偶 dok艂adny opis
przyk艂adowego modelu szeregowania zada艅 ze wszystkimi jego parametrami zajmuje
niejednokrotnie kilka linijek tekstu. By艂oby tak z pewno艣ci膮, gdyby nie
istnia艂a elastyczna symbolika, kt贸r膮 wprowadzono, aby upro艣ci膰 wielolinijkowe
zapisy. Jest to tak zwana notacj臋 tr贸jpolowa.
maszyny|zadania|kryterium
Za
pomoc膮 tego uniwersalnego zapisu mo偶na precyzyjnie i zwi臋藕le zdefiniowa膰 ka偶de
zagadnienie z obszernej teorii szeregowania zada艅. My ograniczymy nasz膮 uwag臋
do tych warto艣ci p贸l, kt贸re odpowiadaj膮 problemom rozwa偶anym w szeregowaniu na
maszynach r贸wnoleg艂ych.
Pole
maszyny okre艣la typ systemu, czyli 艣rodowisko
maszynowe. Je偶eli nie jest zaznaczone iloma maszynami dysponujemy, zak艂adamy,
偶e liczba maszyn stanowi parametr zagadnienia i w贸wczas stosujemy oznaczenia:
Natomiast,
je偶eli liczba maszyn z jakiego艣 wzgl臋du jest ustalona i na przyk艂ad dysponujemy
tylko dwoma identycznymi maszynami pracuj膮cymi r贸wnolegle, zapisujemy to jako P2.
Og贸lnie, gdy mamy dane m maszyn
danego rodzaju, odpowiada to zapisowi Pm, Qm lub Rm.
Je偶eli dysponujemy tylko jedn膮 maszyn膮 wpisujemy w pierwszym polu notacji
tr贸jpolowej cyfr臋 1, natomiast gdy problem jest bezprocesorowy zostawiamy
pierwsze pole puste.
Pole
zadania opisuje charakterystyki zada艅,
dodatkowe ograniczenia. Pole to mo偶e pozosta膰 puste, pod warunkiem, 偶e zadania
s膮 niepodzielne, niezale偶ne i wszystkie s膮 dost臋pne z chwil膮 rozpocz臋cia
procesu (czyli rj
= 0 dla i =
1, ..., n). W przeciwnym
przypadku w polu tym umieszcza si臋 list臋 niekt贸rych spo艣r贸d poni偶szych
parametr贸w:
Pole
kryterium okre艣la posta膰 funkcji koszt贸w, wzgl臋dem
kt贸rej dokonuje si臋 optymalizacji danego zagadnienia. Zatem b臋dzie przyjmowa膰
jedn膮 z postaci: Cmax,
Lmax,
∑Tj
, ∑wjTj
, lub inn膮 ze wspominanych wcze艣niej. Warto prze艣ledzi膰 jak
w praktyce notacja tr贸jpolowa upraszcza zapis. Poni偶ej przedstawiamy dwa przyk艂ady.
Przyk艂ad
1. Za艂贸偶my, 偶e dysponujemy dwoma pracownikami. Ka偶dy z nich
mo偶e wykonywa膰 te same zadania, jednak ka偶dy z nich w innym tempie, sta艂ym dla
danego zadania. Mog膮 tak偶e przerywa膰 swoje obowi膮zki w dowolnym momencie czasu.
Niestety niekt贸re zadania s膮 im dostarczane dopiero po godzinie 12:00.
Interesuje nas taki podzia艂 obowi膮zk贸w mi臋dzy
tych dw贸ch pracownik贸w, kt贸ry zminimalizowa艂by ilo艣膰 sp贸藕nionych zada艅
przeznaczonych do wykonania w ci膮gu jednego dnia roboczego. Okazuj臋 si臋, 偶e
jest to problem Q2|rj,
pmtn|_Uj
.
Przyk艂ad
2. Pewna hala produkcyjna zosta艂a wyposa偶ona w pi臋膰
identycznych maszyn. Kolejno艣膰 niekt贸rych zada艅 jest uzale偶niona od specyfiki
procesu technologicznego. Dodatkowo wykonanie ka偶dego zadania obarczone jest
pewnym kosztem (zwi膮zanym z eksploatacj膮 niekt贸rych cz臋艣ci maszyn
produkcyjnych). Firma, dla kt贸rej wykonywane jest to zlecenie, zastrzeg艂a sobie
w umowie, i偶 ca艂e przedsi臋wzi臋cie powinno by膰 uko艅czone przed terminem d.
Ka偶dy dzie艅 zw艂oki obarczony zosta艂 pewn膮 kar膮 (bez premii dla przedterminowego
uko艅czenia ca艂o艣ci przedsi臋wzi臋cia). Maj膮c szczeg贸艂owe dane o czasie trwania
poszczeg贸lnych czynno艣ci,nale偶y
wyznaczy膰 ca艂kowity wa偶ony koszt procesu, zwi膮zany z niedotrzymaniem danego
terminu oddania przedsi臋wzi臋cia ”pod klucz”. Dla por贸wnania, interesuje nas
tak偶e data mo偶liwie najszybszego terminu uko艅czenia ca艂o艣ci przedsi臋wzi臋cia
(bez wzgl臋du na koszty). W tym przyk艂adzie,
nale偶a艂oby rozwa偶a膰 kolejno problemy P5| prec |∑wjTj
oraz P5| prec |Cmax.
Jak
wida膰, wprowadzona symbolika znacznie u艂atwia zrozumienie danego problemu
szeregowania i w efektywny spos贸b umo偶liwia przej艣cie do modelu matematycznego. Tak偶e w metodzie s艂u偶膮cej przedstawianiu
wynik贸w uzyskanych metodami szeregowania zada艅 nie brakuje przejrzysto艣ci.
Je偶eli pod poj臋ciem harmonogramu rozumie膰
b臋dziemy przyporz膮dkowanie maszyn do zada艅 w czasie, to w贸wczas wykres
Gantta b臋dzie graficzn膮 metod膮
przedstawiania harmonogram贸w na diagramie s艂upkowym, wyrazi艣cie obrazuj膮c膮
etapy projektu na przestrzeni czasu. Czas zaznaczany jest na osi poziomej, a
maszyny na pionowej. Praca zwi膮zana z wykonaniem ka偶dego zadania jest
przedstawiana jako prostok膮t odpowiedniej d艂ugo艣ci.
Analizuj膮c Rysunek 1 艂atwo zauwa偶y膰, i偶 zadanie Zj
uda艂o si臋 uko艅czy膰 przed 偶膮danym terminem jego zako艅czenia (dj).
W zwi膮zku z tym, pozosta艂e parametry opisuj膮ce zadanie Zj
maj膮 warto艣ci Lj
= dj
− Cj
< 0, Tj
= max{0,
Lj}
= 0 oraz Uj
= 0. Natomiast, aby poda膰 warto艣ci przyk艂adowych funkcji
kosztu dla ca艂ego harmonogramu, musieliby艣my dodatkowo zna膰 warto艣ci parametru dj
nie tylko dla zadania Zj
, ale dla wszystkich zada艅. Poniewa偶 opr贸cz funkcji Cmax,
∑wjCj
, pozosta艂e uzale偶nione s膮 od tego parametru. Na potrzeby
przyk艂adu u艣ci艣lijmy, i偶 dj
jest lini膮 krytyczn膮 dla ca艂ego procesu (dj
= d =
const). W贸wczas
przyk艂adowo: Lmax = max{Lj : j = 1, ..., n} = y, Tmax = Lmax = y, ∑Tj = x + y, ∑Uj
= 2.
Podsumowuj膮c,
pe艂ny model problemu szeregowania zada艅 powinien dok艂adnie opisywa膰
rzeczywisto艣膰 (na przyk艂ad produkcyjn膮). Najkorzystniej jakby by艂 sformu艂owany
z wykorzystaniem notacji tr贸jpolowej. Nast臋pnie,
przy pomocy odpowiedniego algorytmu poszukuje si臋 rozwi膮zania mo偶liwie
najbli偶szego rozwi膮zaniu optymalnemu. W wyniku tych operacji powinien powsta膰
harmonogram dzia艂a艅 w postaci wykresu Gantta. Bibliografia
Anna D膮browska, logistica.pl
|
|

