Marcn LIME *, Potr ŁEBOWSI ** ALGORYTM PRIORYTETOWY ALOACJI BUFORÓW DLA PROBLEMU HARMONOGRAMOWANIA PROJETU ZE ZDEFINIOWANYMI AMIENIAMI MILOWYMI Streszczene Artykuł prezentue model harmonogramowana proektu z ogranczoną dostępnoścą zasobów (ang. RCPSP Resource-Constraned Proect Schedulng Problem) ze zdefnowanym termnam realzac kamen mlowych proektu. Dla tego modelu proponowany est prorytetowy algorytm alokac buforów. Skuteczność opsanego algorytmu est testowana przy uŝycu zboru nstanc J30 J90 z bblotek PSPLIB (ang. Proect Schedulng Problem LIBrary). Słowa kluczowe: harmonogramowane odporne, harmonogramowane proektu z ogranczonym zasobam, reguły prorytetowe, alokaca buforów, kamene mlowe 1. WPROWADZENIE W artykule zaprezentowany est model harmonogramowana proektu z ogranczoną dostępnoścą zasobów ze zdefnowanym termnam realzac etapów przedsęwzęca (kamenam mlowym proektu). Proponowany model moŝe być wykorzystywany przy realzac duŝych proektów konstrukcynych czy rozwoowych. Wprowadza kontrolę przebegu prac w trakce całego przedsęwzęca. Termnowa realzaca kamen mlowych, zmnesza ryzyko nepowodzena całego proektu. Podczas planowana realzac proektu stosowane est harmonogramowane predyktywno-reaktywne (ang. predctve-reactve schedulng) [1][10] podeśce wykorzystywane w dynamcznych, zmennych systemach produkcynych. W faze harmonogramowana predyktywnego generowany est harmonogram nomnalny, który następne est uodparnany podczas harmonogramowana proaktywnego (ang. proactve schedulng), zwanego teŝ odpornym (ang. robust schedule). Natomast w trakce wykonana proektu podczas harmonogramowana reaktywnego wykonywane są nezbędne zmany w planowanym harmonograme, które rozwązuą konflkty czasowe czy zasobowe. Harmonogram proaktywny ma przecwdzałać nestablnośc harmonogramów nomnalnych przez uwzględnene nepewnośc parametrów systemu produkcynego. Harmonogram odporny pownen charakteryzować sę tym, Ŝe ego akość est akceptowalna, nawet po wystąpenu neprzewdywalnych zakłóceń. Jest tworzony m.n. przez wstawane buforów czasowych w mescach harmonogramu nabardze naraŝonych na zakłócena. Określene odpornego przydzału buforów czasowych est przedmotem badań w te pracy. Analzowana est zdolność harmonogramu do nwelowana skutków wzrostów (lub wahań) czasów trwana czynnośc, które mogą być spowodowane przez nekontrolowane czynnk. Alokaca buforów czasowych ma prowadzć do mnmalzac zman w czasach rozpoczęca zadań w planowanym harmonograme w trakce ego realzac przy równoczesnym termnowym wykonanu wszystkch umownych etapów proektu. * Państwowa Szkoła WyŜsza w Bałe Podlaske, Instytut Informatyk ** Akadema Górnczo-Hutncza, Wydzał Zarządzana
W nneszym artykule ako rozwązane problemu odporne alokac zasobów proponowany est algorytm prorytetowy, w którym bufory czasowe wstawane są na podstawe prorytetowana zadań. Eksperymenty oblczenowe przeprowadzone przez autorów maą na celu wyłonene naskuteczneszych reguł prorytetowych wykorzystywanych przy przydzale buforów. Podczas eksperymentów stosowane są zestawy J30 J90 zadań testowych z bblotek PSPLIB [7] z kamenam mlowym zdefnowanym według procedury opracowane przez autorów ze zmennoścą czasów trwana zadań uwzględnaącą nepewność realzac zadań proektowych. 2. SFORMUŁOWANIE PROBLEMU Proekt to zbór nepodzelnych zadań (czynnośc) wykonywany przy uŝycu ogranczone lczby zasobów odnawalnych, których lość est stała nezaleŝne od obcąŝeń w poprzednch okresach. W kaŝde chwl t wykorzystane wszystkch typów zasobów przez czynnośc ne przekracza welkośc dostępnych [1][9]: r k A( t ) a gdze: A(t) zbór zadań wykonywanych w okrese [t, t-1], a k lczba dostępnych zasobów typu k, r k zapotrzebowane zadana na zasób typu k. k t, k (1) Proekt przedstawany est w reprezentac grafowe czynność na węźle AON (ang. Actvty On Node) ako acyklczny, spóny, prosty graf skerowany G(V, E), w którym V to zbór węzłów odpowadaący czynnoścom, a E to zbór łuków opsuących relace kolenoścowe mędzy zadanam. Jako werzchołek początkowy końcowy w grafe G dodawane są dwa pozorne zadana 0 n+1 o zerowych czasach trwana zerowym zapotrzebowanu na zasoby (n lczba zadań proektowych). Na rysunku 1 zaprezentowany est przykładowy proekt w reprezentac czynność na węźle. Rys. 1. Przykładowa seć typu AON dla proektu z ednym zasobem, z określonym neprzekraczalnym termnam realzac zadań
aŝde z zadań ma określony eden sposób realzac (ang. sngle-mode RCPSP)[3][9][11]. Mędzy zadanam występuą relace poprzedzań typu konec-początek bez zwłok, w których następnk moŝe rozpocząć sę bezzwłoczne po zakończenu poprzednka: gdze: s planowany czas rozpoczęca, d planowany czas trwana zadana. s + d s, (, ) E (2) Podczas harmonogramowana nomnalnego szukane są czasy rozpoczęca poszczególnych zadań s 0, s 1, s n+1 przy spełnenu opsanych wzoram (1-2) ogranczeń zasobowych kolenoścowych. Naczęstszym kryterum optymalzacyne stosowanym w badanach est mnmalzaca czasu wykonana całego przedsęwzęca (ang. makespan). W zwązku z nepewnoścą występuącą w trakce realzac proektu autorzy proponuą określć momenty kontrol przebegu prac tzw. kamene mlowe (mogą to być umowne etapy proektu określone przez zlecenodawcę wykonawcy proektu), które zmneszą ryzyko nepowodzena lub netermnowośc realzac przedsęwzęca. Poszczególne zadana maą zdefnowane neprzekraczalne termny ch zakończena δ [4-5]: z < δ (3) gdze: z planowany czas zakończena zadana, δ termn realzac nablŝszego -tego etapu proektu (δ tm ), w którym zadane mus być uŝ wykonane. Dla przykładowego proektu przedstawonego na rysunku 1 określone są trzy etapy wykonana proektu: 1) etap 0 o termne realzac tm 0 10 (do wykonana zadane 1), 2) etap 1 o termne realzac tm 1 15 (do wykonana zadana 3, 4, 7), 3) etap 2 o termne realzac tm 2 18 (do wykonana zadana 2, 5, 6, 8, 9 oraz etapy 0 1). Przy ocene akośc uszeregowana nomnalnego stotny est pozom zapasów czasowych występuących przy realzac wszystkch etapów proektu. Jako kryterum oceny proponowana est funkca celu maksymalzuąca waŝoną sumę rezerw czasowych dla termnów wykonana poszczególnych kamen mlowych: F m n 1 rez wm gdze: m lczba umownych etapów proektu, rez róŝnca mędzy termnem zakończena -tego etapu proektu tm a termnem realzac wszystkch zadań zwązanych z tym etapem dla aktualnego harmonogramu, wm waga przypsana -temu etapow proektu. Przy zastosowanu funkc celu F n osąga sę równomerne rozłoŝene zapasów czasowych dla poszczególnych kamen mlowych, przy czym stotne est odpowedne określene wag wm. Wartośc wag wm są ustalane na podstawe aktualnych rezerw czasowych dla kamen (4)
mlowych: wększa waga dla mne zabezpeczonych (o mneszym rez ) etapów proektu (szczegóły ustalana wag przedstawone są w pracach [4-5]). Maksymalne zabezpeczene termnowe realzac kamen mlowych est stotne ze względu na moŝlwość występowana zakłóceń produkcynych (wydłuŝaących czas trwana zadań) w trakce wykonana proektu, które mogą opóźnć przebeg prac. Stworzene uszeregowana nomnalnego z rezerwam czasowym umoŝlwa takŝe przeprowadzene alokac buforów zabezpeczaące harmonogram w mescach nabardze naraŝonych na zakłócena produkcyne, o nawększym koszce nestablnośc. 3. ODPORNA ALOACJA BUFORÓW W faze harmonogramowana nomnalnego szukane est uszeregowane (czasy rozpoczęca zadań) przy zastosowanu ako kryterum akośc harmonogramu maksymalzac zabezpeczena termnowe realzac kamen mlowych (4). Następnym etapem est harmonogramowane odporne, którego celem est uodpornene harmonogramu na moŝlwe zakłócena produkcyne. Harmonogram odporny to uszeregowane, które ze względu na swoe właścwośc, est nepodatne na zakłócena poawaące sę w trakce produkc, którego akość est akceptowalna, nawet po wystąpenu neprzewdywalnych zdarzeń [2]. W faze harmonogramowana odpornego dla problemu RCPSP wykonywane są alokaca zasobów (ang. resource allocaton) alokaca buforów[1][9]. Odporna alokaca buforów czasowych est przedmotem analz w te pracy. Odpowedne rozmeszczene buforów est stotne z punktu wdzena m.n. kosztu realzac proektu. Dla mne zaburzanego harmonogramu występuą np. nŝsze koszty magazynowana, czy kredytu fnansuącego zakup materałów przy dostawach ust-n-tme. Alokaca buforów odbywa sę przy ustalone alokac zasobów do zadań sprowadza sę do wstawana buforów czasowych przed zadanam (lub po zadanach) w celu uodparnana harmonogramu m.n. przed czasową nedostępnoścą zasobów przed zmennoścą czasów trwana czynnośc. Bufory czasowe są wstawane w newralgcznych mescach harmonogramu nomnalnego maą zapobegać neznacznym wzrostom (szerze wahanom) czasów trwana czynnośc spowodowanych nekontrolowanym czynnkam. Inne zakłócena produkcyne ne są rozpatrywane, gdyŝ zakłada sę, Ŝe wększość zaburzeń skutkue wahanam czasów trwana zadań [1][9]. W trakce wykonywana proektu czasy trwana zadań są wydłuŝane z powodów nemoŝlwych do określena w faze planowana t. błędy oszacowana czasu trwana, nekorzystne warunk atmosferyczne, aware tp. Dla rozpatrywanego problemu z kamenam mlowym harmonogram pownen być buforowany tak, aby moŝlwe proporconalne zabezpeczyć termnową realzacę wszystkch etapów proektu. Przy alokac buforów dla rozpatrywanego problemu autorzy przymuą, Ŝe: - mogą być buforowane edyne czynnośc zwązane z kamenam mlowym o rez >0, - wstawene bufora ne moŝe spowodować przekroczena umownych termnów realzac poszczególnych kamen mlowych. Lczba róŝnych sposobów wstawena buforów, przy przyętych załoŝenach, zaleŝna est od rozmaru rez dla poszczególnych kamen mlowych. Im wększe rez, tym węce moŝlwośc rozłoŝena zapasów czasowych dla poszczególnych zadań. Celem alokac buforów est znalezene lsty buforów po czynnoścach B (B 1, B 2,, B n ) lub lsty buforów przed czynnoścam b (b 1, b 2,, b n ), tak aby uzyskane uszeregowane proaktywne było ak nabardze odporne na zakłócena. luczowe est zatem określene stopna odpornośc harmonogramu, czyl ego zdolnośc do absoowana zakłóceń
poawaących sę w trakce dzałana systemu produkcynego. Stosowane w badanach dotyczących RCPSP mary odpornośc, ne mogą być wykorzystane, gdyŝ ne uwzględnaą umownych termnów realzac kamen mlowych. Autorzy proponuą ako funkcę celu harmonogramowana odpornego mnmalzacę funkc F, określone wzorem (5), uwzględnaące zarówno termny realzac kamen mlowych proektu ak stablność uszeregowana (zmany w plane dla poszczególnych czynnośc). Funkca celu F wyznaczana est w drodze symulac dla róŝnych scenaruszy przebegu produkc według następuącego wzoru: n R 0 R F α s s + (1-α) ( f max(0, tm tm )) (5) 1 gdze: s planowany moment rozpoczęca zadana (na podstawe harmonogramu odpornego), 0 R s rzeczywsty moment rozpoczęca zadan, R tm - rzeczywsty termn wykonana -tego etapu proektu, f - funkca kary za przekroczene termnu zakończena -tego etapu proektu, α parametr, określaący znaczene stablnośc harmonogramu w stosunku do ego akośc. W funkc F zakłada sę, Ŝe zakłócene kaŝde z czynnośc ma tak sam wpływ na stablność produkc. MoŜlwe est przypsane wag dla poszczególnych zadań określaących znaczene termnowośc ch wykonana [9], ne est to ednak przedmotem rozwaŝań w te pracy. Współczynnk α naleŝy do przedzału <0, 1> określa ake znaczene w danym przedsęwzęcu ma stablność realzac planu produkc (uwzględnaąc np. specyfkę tego proektu, charakterystykę dane branŝy tp.): - dla α 0 problem sprowadza sę do termnowe realzac wszystkch etapów proektu (kryterum wydanoścowe), - dla α 1 problem sprowadza sę do uodpornena harmonogramu na moŝlwe zakłócena w celu mnmalzac całkowtego odchylena czasów rozpoczęca zadań pomędzy planowanym a zrealzowanym harmonogramem (kryterum stablnośc). Dla poszczególnych etapów proektu określona est funkca kary f, która moŝe być zaleŝna od wpływu opóźneń na realzacę proektu (np. zaleŝna od wysokośc kar umownych za przekroczene termnu wykonana danego etapu proektu). W te pracy przymowane są równe wartośc f n dla kaŝdego etapu proektu: przekroczene o 1 ednostkę czasową umownego termnu wykonana etapu proektu ma tak sam wpływ na wartość funkc celu ak opóźnene o 1 rozpoczęca wszystkch czynnośc w proekce (przy współczynnku α0.5). Przy takch wartoścach kar f termnowość wykonana kaŝdego z etapów proektu est równe stotna. MoŜlwe est przyęce nnych wartośc f, ale ne est to przedmotem analz w te pracy. m 1 4. ALGORYTM PRIORYTETOWY ODPORNEJ ALOACJI BUFORÓW Dla problemu harmonogramowana proektu stosowane są róŝne metody alokac buforów [1] np. metoda łańcucha krytycznego oraz zarządzana buforam (ang. CC/BM Crtcal Chan/Buffer Management), metody szacowana rozmarów buforów na podstawe wedzy statystyczne dla problemu mnmalzac waŝonego kosztu nestablnośc harmonogramu (algorytmy alokac buforów czasowych przy zmennych czasach trwana
zadań, algorytmy alokac buforów czasowych lub/ zasobowych przy zmenne dostępnośc zasob.ów) Stosowane w badanach procedury alokac buforów czasowych rozkładaą bufory równomerne [6] lub proporconalne do kosztu nestablnośc zwązanego z poszczególnym zadanam [1][9]. Dla rozpatrywanego nowego modelu RCPSP z kamenam mlowym wskazane est opracowane procedury uwzględnaące takŝe zabezpeczene termnowe realzac wszystkch etapów proektu. Proponowany przez autorów est algorytm BufP, w którym bufory czasowe wstawane są na podstawe prostych reguł prorytetowych uwzględnaących np. podatność na zakłócene czy koszt nestablnośc poszczególnych zadań. Stosowane reguł prorytetowych to nowe podeśce do problemu alokac buforów. Schemat dzałana algorytmu BufP przedstawony est na rysunku 2. TL : //rok 1: Incalzaca danych //rok teracyne alokac kolenych buforów ednostkowych repeat Wyberz zadane ob do buforowana //rok 2 f (Wstawene bufora dla ob est moŝlwe) then b[ob] : b[ob] + 1 //rok 3a Modyfku czasy rozpoczęca czynnośc else Doda ob do TL //rok 3b untl (lczba elementów w TL est mnesza od n) Rys. 2. Schemat dzałana algorytmu alokac buforów BufP W poedynczym kroku algorytmu testowane est wstawene bufora ednostkowego dla wybrane czynnośc ob. Jeśl dodane bufora dla czynnośc ob est moŝlwe (sprawdzana termnowość realzac kamen mlowych), bufor est wstawany modyfkowany est harmonogram. W przecwnym wypadku zadane ob est umeszczane na lśce czynnośc TL, która zawera zadana, które ne mogą uŝ być buforowane. Algorytm kończy dzałane, gdy wszystke czynnośc ne mogą być uŝ buforowane (lczba elementów w zborze TL wynos n). luczowy dla dzałana algorytmu est rok 2, w którym wyberana est czynność do wstawena bufora. Bufory są wstawane przed lub po analzowane w dane terac czynnośc (w kroku 3a) w zaleŝnośc od stosowane reguły prorytetowana. Algorytm BufP to unwersalny, elastyczny sposób alokac na podstawe lsty prorytetowe zadań. Jeśl znana est specyfka optymalzowanego systemu produkcynego moŝe ona być uwzględnona w regułach prorytetowana, co moŝe przyczynć sę do zwększena odpornośc harmonogramu. Na przykład moŝna w ten sposób skuteczne rozwązać problem ze stochastycznym czasam trwana czynnośc, czy ze stochastyczną dostępnoścą zasobów. W algorytme BufP stosowane są dwa rodzae reguł prorytetowych: - statyczne prorytety oblczane przed alokacą buforów dla harmonogramu nomnalnego, zadane zbuforowane w dane terac umeszczane est na konec lsty prorytetowe, - dynamczne prorytety modyfkowane po kaŝde modyfkac harmonogramu, gdyŝ uwzględnaą aktualną alokacę buforów (wększy koszt oblczenowy nŝ prorytetowana statycznego), w kaŝdym kroku modyfkaca prorytetu zadana zbuforowanego w tym kroku.
W tablcy 1 zaprezentowane są reguły prorytetowana statyczne dynamczne wstawana buforów przed czynnoścam lub po czynnoścach, wykorzystywane w algorytme BufP. Tablca 1. Reguły prorytetowe dla problemu odporne alokac buforów Reguła Wzór na prorytet zadana Ops reguły RB 0 0 ( ) random Losowe prorytety zadań RB 1 RB 2 1 ( ) r k k 1 2 ( ) r k + ( rk ) k 1 ZNA k 1 RB 3 ( ) ( LS s ) RB 4 RB 5 RB 6 RB 7 RB 8 RB 9 RB 10 RB 11 RB 12 RB 13 3 rk 4 ( ) max( s + d s,0) k P( ) Maksymalna zasobochłonność czynnośc Maksymalna suma zapotrzebowana na zasoby czynnośc e następnków w sec przepływu zasobów Mnmalna róŝnca mędzy napóźneszym a planowanym czasem rozpoczęca czynnośc Maksymalny szacowany koszt nestablnośc 5 ( ) max( s + d s,0) Maksymalny szacowany koszt P( ) nestablnośc rk max( s + d s,0) Maksymalny szacowany koszt k P( ) 6 ( ) nestablnośc z uwzględnenem b + 1 aktualnego bufora przed czynnoścą ( ) 7 8 ( ) ( ) 9 10 11 ( 12 13 P( ) max( s d r k d k 1 d r k 1 ( ) B + 1 d ) B + 1 k ( ) λ d B ( ) N ( ) + d b + 1 max( s + d B + 1 s,0) s,0) Maksymalny szacowany koszt nestablnośc z uwzględnenem aktualnego bufora przed czynnoścą Maksymalny loczyn czasu trwana zasobochłonnośc dane czynnośc Maksymalny czas trwana czynnośc Maksymalny loczyn czasu trwana zasobochłonnośc dane czynnośc z uwzględnenem aktualnego bufora po czynnośc. Maksymalna suma loczynu czasu trwana zasobochłonnośc dane czynnośc e wszystkch następnków Maksymalny czas trwana czynnośc z uwzględnenem aktualnego bufora po czynnośc Maksymalny wskaźnk naraŝena na opóźnene ze względu na wydłuŝene poprzednków
RB 14 14 ( ) ( r N ( ) k 1 k max( s + d B + 1 s,0)) Maksymalny wskaźnk naraŝena na opóźnene ze względu na wydłuŝene poprzednków gdze: P() - zbór poprzednków zadana, d - korekta czasu trwana zadana wylczana następuąco: d λ d, λ - szacowany wskaźnk wzrostu rzeczywstego czasu trwana zadana w stosunku do planu. Z podanych reguł prorytetowych moŝna wyróŝnć następuące grupy reguł: - reguły statyczne przy alokac buforów przed czynnoścam (RB 1 -RB 3 ), - reguły dynamczne przy alokac buforów przed czynnoścam (RB 4 -RB 6 ), - reguły statyczne przy alokac buforów po czynnoścach (RB 7 -RB 9 ), - reguły dynamczne przy alokac buforów przed czynnoścach (RB 10 - RB 14 ). Zaprezentowane reguły prorytetowe RB 1 -RB 14 uwzględnaą następuące załoŝena.: - zakłócene rozpoczęca czynnośc bardze zasobochłonne powodue wększy koszt nestablnośc (w zwązku z dezorganzacą pracy wększe lczby zasobów), - m węce zasobów realzue czynność, tym est ona bardze podatna na zakłócena, stnee wększe prawdopodobeństwo wystąpena czasowe nedostępnośc zasobów (awar maszyny, choroby pracownka tp.), - m czynność est dłuŝsza, tym bardze zwększa sę moŝlwość e wydłuŝena, dłuŝsze zadana wykazuą sę wększą zmennoścą bezwzględną. Opracowane reguły RB 0 -RB 14 stosowane są w algorytme BufP w celu znalezena nalepszych strateg buforowana. 5. WYNII ESPERYMENTÓW Celem eksperymentów est znalezene nalepszych zasad prorytetowana zadań wykorzystywanych przez algorytm BufP do alokac buforów. Eksperymenty prowadzone są przy uŝycu 960 nstanc testowych z zestawów J30 J90 (po 480 dla problemów złoŝonych z 30 90 zadań) bblotek PSPLIB, o ednym sposobe wykonana zadań z zasobam odnawalnym z kryterum mnmalzac czasu trwana proektu. Do kaŝdego z proektów z bblotek PSPLIB dodawane są losowo cztery kamene mlowe ( zwązane z nm zadana) z określonym termnam realzac tm, rozłoŝonym równomerne w trakce realzac całego proektu. Poza defncą umownych etapów proektu w symulacach stotne est określene zmennośc czasów trwana zadań. Analza czasów trwana zadań w rzeczywstych proektach (zwłaszcza realzowanych przez zasoby ludzke) wskazue, Ŝe krzywa prawdopodobeństwa zakończena zadana ma kształt krzywe β. Skumulowany rozkład β est uŝywany w planowanu proektów do modelowana moŝlwych czasów ukończena przy danym oczekwanym czase ukończena ego zmennośc. W nnesze pracy przyęte są take same parametry opsuące zmenność czasów trwana zadań ak w nnych badanach [1][9]. Dla kaŝdego zadana rzeczywsty czas wykonana zadana est losowany ze zdyskretyzowanego, prawoskośnego rozkładu β o parametrach 2 5, ze średną równą planowanemu czasow trwana zadana. Do ednoznacznego zdefnowana parametrów naleŝy zdefnować takŝe wartość mnmalną maksymalną. RozwaŜane są: duŝa mała zmenność czasów trwana zadań. Dla kaŝdego zadana ( 1, 2,, n): - przy duŝe zmennośc wartość mnmalna wynos 0,25 d, zaś wartość maksymalna wynos 2,85 d,
- przy małe zmennośc wartość mnmalna wynos 0,75 d, zaś wartość maksymalna wynos 1,625 d. Eksperymenty prowadzone są na komputerze klasy Pentum z procesorem 1,7 GHz przy uŝycu programu zamplementowanego w ęzyku C# w środowsku Vsual Studo.NET. Harmonogram nomnalny generowany est przy uŝycu metaheurystyk symulowanego wyŝarzana SA (ang. Smulated Annealng) z funkcą celu harmonogramowana nomnalnego określoną wzorem (4). Eksperymentalne ustalone są nalepsze parametry algorytmu nalepsze technk przeszukwana rozwązań [4]. Podczas harmonogramowana nomnalnego uzasadnone est wykorzystane algorytmów przyblŝonych, takch ak algorytm SA, ponewaŝ RCPSP est problemem slne NP-trudnym [11]. Następnym etapem est odporna alokaca zasobów. Przydzał zasobów wykonywany est przy uŝycu algorytmu ISH 2 [8]. Algorytm ISH 2 przydzela aktualne analzowaną czynność do zasobów (łańcuchów), w których ostatna czynność est bezpośrednm poprzednkem czynnośc. Gdy zapotrzebowane na zasoby czynnośc est wększe nŝ poprzednków te czynnośc, pozostałe łańcuchy wyberane są zgodne z algorytmem ISH [8], który sprowadza sę do przydzelana czynnośc o zapotrzebowanu na dany zasób (r k > 1), w tak sposób, aby zmaksymalzować lczbę wspólnych łańcuchów z ostatnm czynnoścam w dostępnych łańcuchach. Harmonogram nomnalny znalezony algorytmem symulowanego wyŝarzana z alokacą zasobów wygenerowaną procedurą ISH 2 est uodparnany przy uŝycu analzowanego algorytmu BufP. ryterum oceny harmonogramów z alokacą buforów est funkca celu F określona wzorem (5). Funkca F wyznaczana est symulacyne dla czasów trwana wygenerowanych z rozkładu β o duŝe lub małe zmennośc. W faze realzac proektu stosowana est naprostsza metoda reharmonogramowana z przesunęcem prawostronnym (ang. rght-shft reschedulng) [10], która sprowadza sę do przesuwana w prawo zakłóconych czynnośc bez zmany alokac zasobów. W tablcy 2 przedstawone są wynk dzałana algorytmu BufP dla róŝnych reguł prorytetowych. Zaprezentowane są średne wartośc funkc celu F wylczane przy załoŝonym mneszym (α 0.25) lub wększym (α 0.75) znaczenu stablnośc realzac poszczególnych zadań zgodne z planem w stosunku do znaczena termnowośc wykonana kamen mlowych. Do celów porównawczych w tablcy umeszczone są takŝe średne wartośc F uzyskane dla harmonogramów nomnalnych bez wstawonych buforów czasowych. Tablca 2. Średne wartośc funkc celu F dla róŝnych reguł prorytetowych dla zestawów J30 J90 mała zmenność duŝa zmenność Reguła J30 J90 J30 J90 α 0.25 α 0.75 α 0.25 α 0.75 α 0.25 α 0.75 α 0.25 α 0.75 RB 0 15.8 12.5 585.5 302.5 82.5 61.5 4084.5 2060.9 RB 1 15.9 12.7 587.2 302.8 79.9 60.8 4068.1 2051.7 RB 2 21.7 14.5 624.9 310.8 135.4 78.0 4377.3 2111.1 RB 3 16.3 12.9 593.7 305.4 87.6 65.9 4161.0 2089.2 RB 4, λ0.1 13.4 11.5 563.6 294.1 59.5 53.3 3857.1 1971.7 RB 4, λ0.4 13.7 10.9 573.0 296.1 65.8 51.3 3955.1 2003.5 RB 5, λ0.1 12.9 11.3 558.8 293.2 58.6 53.6 3838.5 1967.5 RB 5, λ0.4 13.0 10.6 568.2 294.3 64.3 49.9 3934.8 1994.6 RB 6, λ0.1 17.7 22.0 546.5 304.2 84.1 118.8 3764.2 2033.5 RB 6, λ0.4 17.0 18.8 567.5 303.9 81.4 103.5 3839.4 2036.9 RB 7, λ0.1 17.1 23.4 538.6 304.7 80.8 126.3 3753.0 2044.5 RB 7, λ0.4 18.8 19.1 578.5 303.7 84.0 100.2 3808.9 1989.2 RB 8 12.9 12.6 554.3 305.0 61.4 54.2 3916.0 2061.8 RB 9 12.0 12.2 551.9 304.2 61.7 53.6 3921.1 2062.7
RB 10 15.8 22.1 534.0 311.6 75.9 117.4 3760.5 2119.8 RB 11 16.3 24.0 538.9 319.3 81.9 132.9 3788.3 2171.7 RB 12, λ0.1 15.2 21.7 530.8 310.3 76.6 124.7 3752.9 2132.5 RB 12, λ0.4 14.3 20.7 532.1 309.8 72.9 113.3 3775.7 2104.8 RB 13, λ0.4 17.7 19.7 561.4 311.8 84.5 103.6 3925.0 2105.5 RB 13, λ0.1 15.4 19.6 542.0 306.8 77.1 103.2 3817.4 2062.4 RB 14, λ0.4 17.0 18.9 562.7 308.8 81.7 102.6 3880.2 2097.1 RB 14, λ0.1 15.9 18.3 551.4 304.3 77.5 103.4 3824.5 2052.2 nomnalny 30.3 79.9 498.1 416.7 194.0 513.7 3810.4 2932.1 Stosowane alokac buforów w wększośc konfgurac parametrów zwększa stablność uszeregowań w porównanu z realzacą harmonogramu nomnalnego bez buforów czasowych. Przy wększym znaczenu stablnośc realzac poszczególnych zadań (α 0.75), etap alokac buforów czasowych przynos stotneszą poprawę wartośc funkc celu F. Im lepsze przecętne rezultaty (mnesze średne wartośc funkc F), tym mneszy koszt nestablnośc np. nŝsze koszty dezorganzac produkc nŝsze kary umowne za netermnową realzacę kamen mlowych. Wstawene buforów przed czynnoścam est skutecznesze od alokac buforów po czynnoścach przy opracowanych regułach prorytetowych. Naskuteczneszy est algorytm wstawaący bufory przed czynnoścam wykorzystuący regułę dynamczną RB 5. Przy wstawanu buforów po czynnoścach naskutecznesze są reguły RB 9 RB 12. Zatem efektywne est wstawane buforów w perwsze kolenośc zabezpeczaąc harmonogram przed wydłuŝenem zadań nadłuŝszych. Wybór odpowedne reguły prorytetowe ma wpływ na wartośc funkc celu F. Zastosowane neefektywnych zasad prorytetowana prowadz do alokac buforów gorszych nŝ przy zastosowanu losowe reguły RB 0. 6. ZAOŃCZENIE W artykule zaprezentowany est model harmonogramowana proektu z ogranczoną dostępnoścą zasobów ze zdefnowanym termnam realzac zadań zwązanych z kamenam mlowym proektu. Dla opracowanego modelu proponowany est prorytetowy algorytm odporne alokac buforów czasowych. Wynk eksperymentów oblczenowych potwerdzaą skuteczność zaproponowanego algorytmu. Harmonogramy z buforam czasowym wyznaczonym przez prorytetowy algorytm alokac ze skutecznym regułam prorytetowana są mne zakłócane podczas wykonana proektu nŝ harmonogram nomnalny. Odporna alokaca buforów est stotna z punktu wdzena m.n. mnmalzac kosztu realzac proektu. Odpowedne rozmeszczene buforów czasowych prowadz do mnmalzac wpływu neprzewdywalnych wahań czasów trwana czynnośc na realzacę poszczególnych zadań wszystkch etapów proektu. LITERATURA [1] Herroelen W., Leus R.: Robust and reactve proect schedulng: a revew and classfcaton of procedures. Internatonal Journal of Producton Research 42(8), s. 1599-1620, 2004. [2] Jensen M.T.: Improvng robustness and flexblty of tardness and total flow-tme ob shops usng robustness measures. Appled Soft Computng 1, s.35-52, 2001.
[3] Józefowska J., Węglarz J. (Red.): Perspectves n Modern Proect Schedulng, Sprnger, 2006. [4] lmek M., Łebkowsk P.: Algorytmy metaheurystyczne dla problemu harmonogramowana proektu z kamenam mlowym. Zeszyty Naukowe Poltechnk Śląske, Sera: Automatyka, z. 150, s. 63 72, 2008. [5] lmek M., Łebkowsk P.: Predctve schedulng, wth determned terms of mlestone achevement. Total Logstc Management, AGH Unversty of Scence and Technology Press, Annual 1, raków, s. 69-80, 2008. [6] obylańsk P., uchta D.: A note on the paper by M. A. Al-Fawzan and M. Haouar about a b-obectve problem for robust resource-constraned proect schedulng Internatonal Journal of Producton Economcs, 107, s.496-501, 2007. [7] olsch R., Sprecher A.: PSPLIB a proect schedulng lbrary. European Journal of Operatonal Research 96, s. 205-216, 1997. [8] Polcella N., Odd A., Smth S., Cesta A: Generatng robust partal order schedules, In Proceedngs of CP2004, Toronto, anada, 2004. [9] Van de Vonder S., Demeulemeester E., Herroelen W., Leus R.: The use of buffers n proect management: The trade-off between stablty and makespan. Internatonal Journal of Producton Economcs 97 s. 227-240, 2005. [10] Vera G.E., Herrmann J.W., Ln E.: Reschedulng manufacturng systems: a framework of strateges, polces and methods. Journal of schedulng, 6(1), s. 35-58, 2003. [11] Węglarz J. (Red.): Proect Schedulng: Recent Models, Algorthms and Applcatons, luwer Academc Publshers, 1998. PRIORITY ALGORITHM OF BUFFER ALLOCATION FOR PROJECT SCHEDULING PROBLEM WITH DEFINED MILESTONES Abstract Ths paper presents a model of the Resource-Constraned Proect Schedulng Problem (RCPSP) wth defned terms of mlestones achevement. For ths model s proposed prorty algorthm of buffer allocaton. Effectveness of desced algorthm s tested usng a set of J30 and J90 problem nstances from the Proect Schedulng Problem LIBrary (PSPLIB). eywords: robust schedulng, resource-constraned proect schedulng, prorty rules, buffer allocaton, mlestones