• Nie Znaleziono Wyników

Algorytm rozwiązywania zadań przydziału z minimaksowym kryterium

N/A
N/A
Protected

Academic year: 2022

Share "Algorytm rozwiązywania zadań przydziału z minimaksowym kryterium"

Copied!
11
0
0

Pełen tekst

(1)

ZE SZYTY NA UK OW E POLITECHNIKI ŚL ĄSKIEJ Seria: A U T O M A T Y K A z. 63

1982 Nr kol. 735

Eugeniusz T O C Z Y Ł O W S K I , Krzysztof RUDOWSKI Instytut Automatyki, Politechniko Wa rs za ws ka

A L GO RY TM RO ZW IĄ ZY WA NI A ZADANI PR ZY OZ IA ŁU Z M I N I M A K S O W Y M KRYT ER IU M

S t r e s z c z e n i e . W pracy przeds ta wi on o kilka we rs ji algorytmu roz­

wiązyw an ia problemu przydziału. Różnię się one efektywnościę w z a ­ leżności od wy miaru i li czby danych pomo cn ic ze go zadania z n a j d o w a ­ nia pełnego skojarzenia w grafie dwudzielnym. Pr ze dstawiono kilko metod umoż li wi aj ąc yc h zw ię ks ze ni e efektywności ob liczeń przez w y k o ­ rzystanie rozrzedzenie gr afów dwudzielnych. Z a p r o p on ow an o efektywne w y k o r z ys ta ni e pamięci i efektywnę organizację ob liczeń w p r oc ed u­

rach realizujęcych algorytmy.

1. ZADANIE PRZYDZIAŁU

Dany jest zbiór n zada ń oraz zbió r m pracowników. Bez st ra ty o g ó l ­ ności mo że my założyć, że m ^ n. Przydziałem zada ń do prac ow ni kó w n a z w i e ­ my do wolne przyporz ąd ko wa ni e zadań do pracowników, Jeżeli każdemu p r a c o w ­ nikowi przypo rz ąd ko wa ne Jest dokładnie Jedno, odrębne zadanie, to pr zy­

dz ia ł nazywany Jest dopuszczalnym. Niech będzie czasem wykonanie i-tego zadania przez J-tego pracownika (jeżeli i-te za danie nie może być wykonane przez j-tego pracownika, to pr zy jmujemy a =<*>). W p ro wa dź my zmienne de cy zy jn e zero-j ed yn ko we x ^ , przy czym x ^ = 1 wtedy i tylko wtedy, gdy J-te zadanie pr zy dzielono i-temu pracownikowi. Jeżeli z a ł o ż y ­ my, że wszystkie zadania sę wy ko ny wa ne Jednocześnie, to przydział m i n i m a ­ lizujący czas wykonania zadań można w y zn ac zy ć przez rozwięzanie mi nimak- sowego zadania .

zm in imalizować z = max a,,x. . i ii.j

m

(1) i = l

n

i = 1

X = 0,1

(2)

174 E. Toczyłowskl, K. Rudowskl

Wa rt oś ć pr zyporządkowana 6ędzic krawędzi | ri ' c]

grafie dw ud zi el ny * ok re śl an y Jest pojęciem skojarzenia

Funkcja celu zadania (l) Jest typu wąskie gardło. Z algo ry tm ic zn eg o punk­

tu wi dzenia bedą interesujące inna, równoważne re pr ezentacje zadania (l) w ujęciu ma ci er zo wy m i w ujęciu teorii grafów. W reprezentacji m a c i er zo­

wej rozpatrywano Jest ma cierz A = [®ij] mxti ’ w której po sz uk iw an y jest przydział kolumn do wi e r s z y (tzn. każdemu w i er sz ow i przydzielana Jest od­

dzielna kolumna) i taki, że najwię ks zy z w y ró żn io ny ch w ten sposób e l e­

ment a ^ Jest Jak najmniejszy. W notacji teorii g r af ów kons tr uo wa ny Jest graf dw ud zi el ny G(M,N,E), gdzie M = r^J jest zbiorem w i e r z c h o ł ­ ków od po wi ad aj ąc yc h wi erszom ma cierzy A (pracownikom), N «

Jest zbiorem w i e r z c h o ł k ó w od po wi ad aj ąc yc h kolumnom ma cierzy a (zadaniom"), natomiast E jest zbiorem (nieskiorowanych) krawędzi łączących w i e r z ­ chołki z M i N, tzn. j r ^ C j j e E wted y i tylko wtedy, gdy s ij < '*°- iowana będzie krawędzi ir., ,c, . Przydział na skojarzenia wierz­

ch ołków należących do zhioru M z wi er z c h o ł k a m i należącymi do N ) . Zadanie przydziału ma wiele interpretacji. Przykładam może byc z e d B - nie przydziału mo nterów do stanowisk mo nt ażowych na linii montażowej. In­

nym przykładem Jest zadanie wzaj em ni e Je dn oz na cz ne go przyporządkowania w i e r s z y i kolumn zadanej macierzy. Za da ni e to Jest często rozwiązywane podczas an al iz y strukturalnej w i e l ki ch prob le mó w obliczeniowych, gdzie n craz m może być nawet rzędu kilku tysięcy.

Sz cz eg ól ni e efektywną klasą a l go ry tm ów ro zw ią zu ją cy ch zadanie pr zy­

dz iału jest klasa al go ry tm ów progowych M M . W al go ry tm ac h tych z a s a d ­ niczą rolę odgrywa pomocn ic zy problem decy zy jn y p a ra me tr yz ow an y przez zmienną progowa V. Problem ten polega na sprawdzeniu, czy dla ustalonej wa rtości zmiennej progowej V, istnieje dopu sz cz al ny pr zy dz ia ł o koszcie V. Problem progowy jest równoważny problemowi istnienia pełnogo s k o j ar ze­

nia w grafie dwudzielnym.

Złożoność obliczeniowe na jl epszych a l go ry tm ów mi ni ma ks ow eg o zadania przydziału Jest równa O ( n 3 log,,n) [śj dla n =■ m. In tencją tej prscy Jest opracowanie algorytmu o Jak nBjmniej6Z0j złożon oś ci obliczeniowej.

Z a p r o p on ow an o kilka metod zw ię ks za ją cy ch efektywność algorytmu, wy ko­

rzystujących szczególne właś ci wo śc i rozwią zy wa ny ch zadań.

2. PR OBLEM M A K S Y M A L N E G O SK OJ ARZENIA

Dla ustalonej wartości zmiennej progowej V ro zp atrywany Jest Drogowy graf dw ud zi el ny g(m ,N,Ev ), gdzie Ev = | { ri ,ci]': a ij ^ V } * Niech s<= EV będzie pewnym podzbiorem Jego krawędzi. Zbiór S nazy wa ny Jest skojarze­

niem, jeżeli każdy wi er z c h o ł e k grafu Jest incydentny z co najwyżej Jed­

ną krawędzią z S. Jeżeli |S| = m, to skojarzenie nazywane Jest pałnym.

Dis danego grafu g(m,N,Ev ) oraz da nego skojarzenia S mó wi my ,ż e wierz-

(3)

Algorytm ro zw iązywania zadań przydziału... 175

chołek v c M u N Jest swobodny. Jeżeli nie Jest d.neydentny z krawędziami skojarzenia. Droga prosta P w grafie g(m ,N,Ev )

nazywana Jest drogę p o w l ę k s z a l n ę , Jeżeli krawędzie drogi należę pr ze mi en­

nie do E \ S , S , . . . , E \ S , a ponadto wi er z c h o ł k i krańcowe v Ł i v 2(< sę swobodne. Pods ta wo wy m faktem, wy ko r z y s t y w a n y m w al go ry tm ac h zn aj dowania

«aksymalnego sk oj arzenia jest twierdzenie, że dane sk oj arzenie S nie Jest skojarzeniem o największej liczności wted y i tylko wtedy, gdy w grafie G(m, N ,Ey ) istnieje droga po wi ększalna [ l ] . De że li nie jest skoj ar ze ni em o największej liczności, czyli gdy istnieje pewna dr o g a powi ęk sz al na (2).

to sk oj arzenie S można za stępie sk oj ar ze ni em o liczności większej o je­

den, stosujęc po ds ta wi en ie S' = S © P, gdzie symbol © oz na cz a różnicę symetryczną dwóch zbiorów. Pods ta wi en ie to odpowiada za st ęp ie ni u krawędzi skojarzenia odpo wi ad aj ęc yc h parzystym łukom dr og i (2) przez krawędzie n i e ­ parzyste, których liczba jest d o kł ad ni e wi ęk sz a o Jeden. W s z y s t k i e a l g o ­ rytmy z n a j do wa ni a m a ks ym al ne go skojarzenia oparte sę na p o wy żs zy m p o d s t a ­ wieniu. R o zr óż ni a się dwie zasadn ic ze grupy me to d:

(i) al go ry tm y szeregowe (Hall [2]), w których jedna iteracja oolega na zn al ez ie ni u pojedynczej dr og i powiększalnej P i dokonaniu ‘p o d ­ stawienia S' - 5 © P,

(ii) al go ry tm y równoległe (H op croft-Karp [3J ), w których Jedna iter a­

cja polega na w y z n a c z e n i u 'możliwie maks ym al ne go zbioru rozłęcz- nych dróg po wi ęk sz al ny ch P^,...,P^ a następnie d o ko na ni u p o d­

stawienia S r = S © Pj © . . . © P ^ -

^Oaśli o z na cz ym y NM =« |EV |> to as ym pt ot yc zn a złoż on oś ć a l go ry tm ów pi er­

wszej i drugiej grupy jest równa od po wi ed ni o 0(m NM) oraz 0 ( Y m ’ • N M ) . Praktyczna przewaga al go ry tm ów równoległych nad szeregowymi uwidacznia się dopiero dla w i ęk sz yc h zadań, co w y ni ka z wi ęk s z e g o w s p ó ł c zy nn ik a p r op or­

cjonalności w os za cowaniu złożoności obliczeniowej. Oak w y k a zu ję d o ś w i a d ­ czenia numeryczne, al go ry tm y szeregowe sę bardziej efektywne od al g o r y t ­ mów równ ol eg ły ch dla zadań, w których m jest rzędu kilkadziesięt oraz dla ni ek tó ry ch zadań nawet przy m rzędu kilkaset. Zb io ry zada ń, dl a któ­

rych al go ry tm y szeregowe i równoległe sę sz cz eg ól ni e ef ek ty wn e w y da ję się uzupełniać: przewaga al go ry tm ów ró wn ol eg ły ch nad sz er eg ow ym i uwidacznia się dla g r a f ó w z wi ększę liczbę w i e r z c h o ł k ó w i stosun ko wo rozrzedzonych (w których NM i k m, gdzie k Jest niewielkę stełę) , podczas gdy dla grafów z mn iejszę liczbę w i e r z c h o ł k ó w lub dla g r af ów prawie pe łnych (gdy NM s a ) bardziej efektywna sę algo ry tm y szeregowe.2

Z powyżs ze go powodu podczas ro zw ięzywanie zadania pr zy dz ia łu opłacalne Jsst wy ko r z y s t y w a n i e kilku różnych a l g o r y t m ó w poszukiwania maks ym al ne go skojarzenia, gdyż zachodzi wted y potrzeba badanie istnienie pełnego s k o­

jarzenia dla różnych gr afów progowych o różnym stopniu rozrzedzenia.

P ■ (v4 ,v2 ) (v2 ,v3 ) ... (v.2 k - l ,v2 k ■

(

2

)

(4)

176 E. To cz yłowskl, K. Rudowski

Dla da ne go grafu progowego o llczbia krawędzi Nfi przez A oznaczać będziemy ma ci er z progową 9dzle * s ij Jeżeli { ł *Jj € Ev oraz

^ j = <x> w or ze ci wn ym przypadku,

3. W Y K O R Z YS TA NI E S Z CZ EG ÓL NY CH W Ł A Ś CI WO ŚC I ZA D A N I A PR OG OW EG O

Dedna duża iteracja algorytmu mi ni ma ks ow eg o zadania przydz ia łu polega na rozwięzaniu zadania Drogowego, czyli za da ni a ma ks ym a l n e g o skojarzenia, co w najgorszym przyoadku może w y ma ga ć 0(m*NM) ob li cz eń dla algorytmu Helia. W rozdziale tym z a j m ie my się metodami umożliwiajęcyrai uproszczenie rozwiązania za da ni a progowego. Zauważmy, że w istocie zsdanie to polega na odpowiedzi na pytanie, czy dla ustalonej wartości progu w grafie pro­

gowym istnieje pełne skojarzenie. Problem ten nie jest problemem optyma­

lizacyjnym, lecz Jedynie problemem de cy zy jn ym i może być rozwiązany ła­

twiej aniżeli zadanie zn al ez ie ni s ma ks ym a l n e g o skojarzenia. Podamy teraz metodę up raszczającą rozwiązanie tego problemu de cy zy jn eg o, w przyped“

ku gdy o « n.

Wy ko r z y s t a n i e silnie spójnych okładowych

Dla dalszych ce ló w zm od yf ik uj em y nieco pojęcio skojarzenia. Niech ScM*N będzie pewnym zbiorem krawędzi, niekon ie cz ni e na le żą cy ch do E. Zbiór S nazywamy skojarzeniem. Jeżeli każdy wi er z c h o ł e k v ę M u N Jest incydent- ny z do kł ad ni e Jedną krawędzią z S. Dla da nego grafu d w u d z i e l n e g o g(h, N ,'Cy) liczbę | S n Ey | , czyli 1 iczbę • ws pó l n y c h krawędzi z Ev nazywać bę­

dziemy licznością skojarzenia S. S k o j ar ze ni e o liczności m na zywane jest s k oj arzeniem pełnym. Powyższe d e fi ni cj a sk oj ar ze ni a pełnego pokrywa się z definicją z rozdz. 2. Droga prosta P w grafie G ( M , N , E V u S)

p = (v1 .v2 ).(v2 .v3 ) ...i''2k-2'v 2 k - l )

z parzystą liczbą łuków nazywana Jest drogą p r z e s u w a l n ą , Jeżeli niepa­

rzyste łuki należą do S, parzyste do Ey-S, a ponadto pi erwszy luk ni®

należy do Ey (tzn. wier zc ho łk i i v 2 są swobodne). Dożęli =

= v 2 |<_i> to p na zy wa ny jest cy kl em przesuwalnym. Deżeli t0 z P twor zy my cykl cl(p) jak następuje. Niech s K u N będzie wierz­

chołkiem określ on ym Je dn oznacznie przez wa ru ne k ^v 2 k - l ’v 2k^ * S ' cl(P& tworzymy dodając do P łuk ^v 2k - l ' v 2k^ e S oraz łuk domykający

(v 2k'v l^ ’ n * ekoniecznie na le żą cy do E y , tzn.

(5)

Algorytm ro zw iązywania zadań przydziału. 177

W cyklu cl(P) zn ajdują »ię krawędzie nie należące do Ev< Niech dj będzie liczbą tych ni ep ar zy st yc h krawędzi, które nie należą do E v oraz ri,, liczbą krawędzi pa rz ys ty ch nie należących do E v> Ró żnicę n a z >'W 8 m y defektem drog i P i oz naczać będziemy przez df(P). Osżeli d f ( P ) > l , to drogę przesuwalną na zywać będziemy drogą p o w i ę k s z o l r ą . Dla tak u o g ó l n i o ­ nego pojęcia drog i powiększalnej można u d ow od ni ć uo gó ln ie ni a podstawowych twierdzeń z teorii sk oj ar ze ń na grafach dwudzielnych.

Tw i er dz en ie 1 [6]. Oeżeli S Jest skoj ar ze ni em i P jest drogą pr ze­

suwalną, to S' = S © c l (P) jest s k oj ar ze ni em i Jego liczność jest po­

większona o df(p).

Twie rd ze ni e 2 [6], Oeżeli S i R są sk ojarzeniami o liczności od­

powiednio a i r, s > r . to S © R zawiera zbiór w i e r z c ho łk ow o rozłącz­

nych dróg pr ze su wa ln yc h Pj_,...,P^ w z g l ę d o m skojarzenia S, takich że df(p^ ) + . , .d f (p^) = s-r.

Dla zd ef in i o w a n e g o w powy żs zy sposób skojarzenia S utwórzmy z grafu dwudzielnego G ( M , N , E V U S) graf s k i e r o w a n y Gg = G ( m , N , E v U S) przez skie­

rowanie kr awędzi z S od w i e r z c h o ł k ó w z M (wierszy) do wi er zc h o ł k ó w z N (kolumn) , natomiast krawędzi z Ey S od wi e r z c h o ł k ó w z N do w i e r z ­ chołków z M„ Przyjmijmy, że sk oj ar ze ni e S nie Jeat skoj ar ze ni em p e ł ­ nym. Za łóżmy, że w grafie Gg z o st ał y z n al ez io ne silnie spójne s k ł a d o ­ we. Najbardziej ef ek ty wn ym algory tm em w y o d r ę b n i a n i a silnie s p ó J n y c R s k ł a ­ dowych grafu jest algo ry tm Tarjana, [5] o złożoności obliczeniowej o ( n m ) , gdzie NM Jest liczbą łuków grafu <J^. Łuki w grafie łączące w i e r z ­ chołki z różnych sk ła do wy ch silnej soójności n a z y wa my łukami skrośnymi.

Tw i e rd ze ni e 3 [fi]. Oeżeli S i R są skojarzeniami., R jest s k o j a ­ rzeniem pełnym, to każda droga po wi ększalna na leżąca do S © R Jest za­

warta w jednaj z silnie spójnych sk ła do wy ch grafu Gg.

Dzięki powyższej w ł a ś ci wo śc i us un ię ci e łuków skrośnych z grafu Gg i oddzielne w y z n a c z a n i e dróg po wi ęk sz al ay ch dla każdej silnie spójnej sk ła­

dowej umoż li wi a zmni ej sz en ie maksymalnej liczby kr ok ów al go ry tm ów Helia i Hopcrofta-Karpa o d o o wi ed ni o z m i 2Vm do p 1 2Yp\ gdzie D=Sm Jest liczbą w i e r z c h o ł k ó w największej silnio spójnej składowej grafu.

W y k o r z y s t a n i e algo ry tm u Tarjana w trakcie w y k o ny wa ni a kolejnych it er a­

cji jednego z al go r y t m ó w znaj do wa ni a m a ks ym al ne go skojarzenia Jest ko­

rzystne dla gr afów ro zrzedzonych o dużej liczbie wierzchołków.

Z punktu wi dz en ia ro zw iązywania zadania prog ow eg o szczególnie intere­

sujący jest fakt, iż w y o d r ę bn ia ni e silnie spójnych składowych grafu Gg umożliwia uzyskanie w pewnych sytuacjach odpowiedzi negatywnej "w grafie progowym pełne sk oj ar ze ni e nie istnieje" bez ko ni ec zn oś ci znajdowania ma- ksymalnogo skojarzenia. Załóżmy, że dla da ne go skojarzenia S, nie będą­

cego s k oj ar ze ni em pełnym w grafie Gg istnieje wi er zc ho łe k r £ M sta­

nowiący silnie spójną składową grafu. Oeżeli krawędź skojarzenia | r , c j « S incydentna z r nie należy do Ev , to łatwo wykazać, że skojarzenie peł­

(6)

178 E. Tocz ył ow sk l, K. Rudowskl

ne w grafie progowym nie istnieje. Wynika to z faktu, że w ma ci er zy A NM można w y o d r ę b n i ć k+1 wi er sz y z a w i e r aj ęc yc h jedynie k ni ez er ow yc h ko­

lumn, k ^ 0 .

Wy od r ę b n i a n i e silnie spójnych składowych pozwala również na wyłączenie z rozważań “ni eo bi ec uj ąc yc h" elem en tó w a^j o których w i a d o m o , że nie w e j ­ dę one w skład pełnych skojarzeń ni ez ależnie od zmian progu V. Niech V będzie progiem górnym, tzn. takim, że w grafie G(m ,N,Ev ) istnieje pełne skojarzenie S. Przypuśćmy teraz, że dla us ta lo ne go progu gó rnego V w y ­ o d rę bn io no w grafie Gg Je go silnie spójne składowe. Obniżenie progu V prowadzi co najwyżej do rozbicie wy od rę b n i o n y c h składo wy ch grafu G g . 2 po­

wyżs ze go faktu oraz z twierdzenia 3 wynika, że łuki s k r o ś n ą grafu 5^ nie będę w c h o d z i ć w skład pełnych skoj ar ze ń dla do wo ln yc h wa rt oś ci progowych V mniejs zy ch od progu gó rn eg o a zatem mogę one być całkow ic ie usunięte.

Jest oczywiste, że za powyższe, do da tk ow e informacje płacimy kosztem w y o d r ę bn ia ni a silnie spójnych składowych (za pomocę algo ry tm u Tarjana).

Koszt ten Jest liniowę funkcję liczby krawędzi grafu. Możn a oczekiwać, że u s uwanie łuków skrośnych będzie opłacalne dla wi ę k s z y c h zadań, szczegól­

nie dla m n ie js zy ch w a rt oś ci progu V, kiedy to graf y progowe są stosunko­

wo rozrzedzona.

4. OPIS REALIZACJI A L GO RY TM U

Przyjmiemy wstępnie, że znane s ę : dolna wa rt oś ć progowa Vd , dla której w grafie prog ow ym nie istnieje pełne skojarzenie oraz górna wa r t o ś ć pro­

gowa V , dla której w grafie progówym pełne skojarzenie istnieje. Pod­

st aw ow y schemat algory tm ów progowych można zapisać następujęco.

Al go ry tm

1. (Dobór progu). Dobierz nowę wa rt oś ć progowę V e (v cj'V g^ ic^ż do 2 - 2. (Problem pe łnego skojarzenia). Zbadaj, czy istnieje w grafie progo­

wym G(m , N ,Ey) pełne skojarzenie. Jeżeli istnieją, to idż do 3, Jeżeli nie istnieje, to idż do 4.

3. V g :«V, idż do 5.

4. Vd :-V, idż do 5.

5. Jeżeli V d < V g idż do 1. W pr ze ci wn ym przypadku w y zn ac z ma ksymal­

ne skojarzenie w grafie G ( M , N , E V ). Stop.

Schemat algorytmu łatwo można zmod yf ik ow ać również na przypadek, w któ­

rym wa r t o ś ć progu gó rn eg o Vg nie Jest znana 1 kiedy w y k o r z y s t y w a n y Jest wy łą c z n i e próg dolny V d jak w al go ry tm ie G a rf in ke la [i]. Om ówimy teraz w a r i a n t y algorytmu do boru progu i al go ry tm u pełnego skojarzenia.

(7)

A l g o r y t m ro zw ią zy wa ni a zsdan przydziału. 179

4.1. Dobór progu

Wy ró ż n i m y dwa zasadnicze scosoby co bo ru progu. Pi er ws zy oochodzi od Garfin ke la [lj i polega na s t op ni ow ym p o dw yż sz an iu progu w taki sposób, że w kolejnych krokach uz ys ki wa ne są proai dolne (dla których nie i s tn ie­

je przy dz ia ł pełny) , natomiast pierwszy przydział oełny jest rozwiązaniem optymalnym. Wa rt oś ć nowego progu wy nika z an alizy rozwiązania zadania p r o­

g o we go dla starej w a r t oś ci prcpu. Zaletą tej reguły Jest to, że grafy p r o­

gowe ro zo otrywane w kolejnych iteracjach algorytmu są st os un ko wo r o z r z e ­ dzone. co g e ne ra ln ie zwiększa ef ek ty wn oś ć rozwiązywania zadań progowych.

Do wad me tody na leży zaliczyć stosunkowo dużą liczbę kroków metody, n i e­

zb ędnych do uzyskania do D u s z c z a l n e g o rozwiązania.

Drugi sposób do bo ru procu, za pr o p o n o w a n y przez S ł om iń ak le go [4] . w y k o ­ rz ystuje po dział d y c h o t om ic zn y i wy ma ga jedynie 0 ( l o g 2 n't kroków. P r z y j ­ mijmy, że el em en ty m a c i er zy A - Ca ijJ siJ w s t ę p n i e usze re go wa ne w ko l e j ­ ności n i s m a l a j ą c e j . Na jl ep sz e algo ry tm y sortowania um oż li wi aj ą u p o r z ą d k o ­ wanie zb ioru o liczności t za pomocą 0 ( t l o g 2 T() operacji (oorównań, prze­

st awień itp.) £7]. Dla u p o r z ą d k o w a n e g o w kolejności nlemalejącej ciągu e- lementów ma ci er zy jJ m °żna st osować dwa rodzaje progów. Pr ogiem li cz­

bowym na zw ie my do wo ln ą całk ow it ą liczbę NM, 1 ^ N M ^ T ok re śl aj ąc ą zbiór NM pi er ws zy ch e l em en tó w tego ciągu. Próg V okre śl aj ąc y zbiór elem en tó w C = { 8 ij : a ij ^ v j n a z y w a m y orogiea w a r t o ś c i o w y m . D y ch ot om ic zn y po­

dzia ł można st osować za równo dla progu liczbowego. Jak l dla progu w a r t o ­ ściowego. W pier ws zy m przy pa dk u w a r t o ś ć orogu NM Jest wy zn ac za na według r e gu ły NM = (NM£j+NMQ )/2 (z z a o k r ą gl en ie m do liczby ca łk owitej). gdzie NM^ i NMg są odpo wi ed ni o progami d o ln ym i górnym. W przypadku u s t a l e ­ nie progu w a r t o ś c i o w e g o do bi er an a jest wa rt oś ć progu V w taki sposób, że rozp at ry wa ny podciąg elementów/ o wa rt o ś c i a c h (a ij : <~ 8 ij ^ V g) Je 8t d z ie lo ny na dwa podc ią gi (0^ : ^ V) oraz ^ : V C a ^ < V^) zr ów no w a ż o n e “wa rt oś ci ow o" , tzn. zawi er aj ąc e tę samą liczbę różnych w a r ­ tości.

Re gu ła pierwsza w y ma ga o ( l o g 2 n) kroków, podczas gdy reguła dr ug a w y ­ maga Jedynie o ( l o q 2 z) kroków, gdzie z Jest ma ks ym al ną liczbą e l e m e n ­ tów maci er zy £a ijJ 0 różnych wartościach. Re gu ła dr ug a może więc wy m a g a ć zn ac zn ie mniej kr ok ów w przypadku ma cierzy p o s i a d aj ąc yc h du żo el em e n t ó w o tych samych wartościach. Dej wadą jeat Je dn ak koni ec zn oś ć pamiętania d o ­ datkowej tablicy o wymi ar ze z. W o p is yw an ym algorytmie im pl em en to wa ne są obie reguły, przy czym wybór reguły będzie u z a l eż ni on y od p a r a m e t r ó w za­

dania. Ponadto za st o s o w a n o po dział "niesymetryczny" u m o ż l i wi aj ąc y dobór progu s t os un ko wo blisko progu dolnego, co Jak w i a d o m o zwiększa e f e k t y w ­ ność ro zw ią zy wa ni a zadania progowego.

(8)

180 E. Toczyłowski, K. Rudowski

4.2. Realiz ac ja algorytmu oałnsgo skojarzenie

Dla zadanego orogu V poszukiwanie ma ks ymalnego sk oj ar ze ni a w pr og o­

wym grafie d w u d zi el ny m G(M,N,Ey) jest równoważne p o s z uk iw an iu pr zy po­

rządkowania wi erszy i kolumn w maci er zy A takiego, że liczba o g r a n i ­ czonych progiem ws p ó ł c z y n n i k ó w a ^ na skrzyżowaniu tych wi er sz y i ko­

lumn jest jak największa. Najbardziej efektywna realizacja algorytmów peł­

nego skojarzenia opiera się na powyższej równoważności. Niech P będzie macierz* osrmutacyjnę stopnia n. W zapisie maci er zo wy m zadaniu pełnego skojarzenia odoowiada zadanie zn al ezienia takiej m a c i er zy permutacyjnej P że macierz A....P posiada skończoną przekętnę. Ogólnie, dowolnemu skoja- NM rżeniu S w grafie G ( M , N , E V ) odpowiada wzajemnie Je dn oz na cz ni e pewna macierz oermutacyjna P.

cs(v)--- r io , > ADO,)

— - *

RIO,) AD (iJ

--- --- - *

Rt OJ 0

Rys. 1. Li stowy kolumnowy zapis ma ci er zy A. V - numer kolumny. GS(v' adres pierws ze go elementu listy z kolumnę V. Zapis i-tego el ementu lis­

ty: Rl(i) - numer wi ersza tego elementu: AD(i) - adres następ ne go el em en­

tu w liście w kolumnie V (jeżeli element i-ty Jest osta tn im w kolumnie V, to AD(i) « O)

A NM zapisy wa na Jest w postaci listowej (rys. 1). Dla ustalo- Macierz wn

nej wart oś ci progowej ma ci er z A ^ za wi er a NM e l em en tó w m n ia js zy cn od wa rt oś ci progowej i tylko to el ementy sę elementami listy. Przyjęto ko­

lumnową postać lietowę, która pozwala na szybki d o st ęp do kolejnych ele­

me nt ów kolumn ma cierzy A N M - Pozwala również na proste mo dy fi ka cj e listy polegające na do pi s a n i u (rys. 2) lub us un ię ci u (rys. 3) pewnej liczby ele-

»

RI(NM) ACKNM)

Rys. 2. Do pi sa ni e nowego elementu awv orzy zmianie progu z NM na w y ż ­ szy :

N M :«NM + 1 , A D ( N M ):«CS(V), CS(v):«NM. R l ( N M ) : « W

nentów listy. Mo dy fi ka cj e listy sę niezbędne orzy zmianie progu. W y k o r z y ­ stanie algorytmu Ta rjana d o eliminacji łuków skrośnych w grafie (repre­

zentowanych przez el ementy m a ci er zy A^.,) również wymaga usuwania ele­

me nt ów listy.

(9)

Al gorytm ro zw iązywania zadań przydziału.

Rys. 3. Us uwanie elementu ^ oraz i, CS(V) :-l2 , A D ( l 2 ) :-i4

Elementy macierzy usze re go wa ne sę we dł ug na st ęp uj ąc eg o porzędku:

Jeżeli a Aj > a k ^. to element listy od po wi ad aj ęc y elementowi a ^ Jest umie sz cz on y na pozycji wc ześniejszej niż element 3 tj- Pozwala to w pr os­

ty sposób mody fi ko wa ć listę przy zmianie w a r t oś ci progu NM.

A l go ry tm y po sz uk iw an ia pełnego skojarzenia w grafie progowym Dolegaję na znal ez ie ni u ma cierzy permutacyjnej P takiej, Ze ma cierz A ^ P ma na przekętnej głównej w s p ó ł c zy nn ik i o ograni cz on yc h wartościach.

Oeżeli n = m. to d o da tk ow o w y zn ac za na Jest macierz pe rm ut ac yj na S, umożli wi aj ąc a transformację

W - s . ( A NMP l . s T .

gdżie ma ci er z pe rm utacyjna S służy do jednoczesnej oermutacji wi er sz y i kolumn ma ci er zy A N M P takiej postaci. Ze prowadzi to do wyodrę bn ie ni a silnie spójnych składowych sk ie ro wa ne go grafu orogowego (odpowiadajęcych kwad ra to wy m podm ac ie rz om w z d ł u ż przekętnej głównej). Oznacza to, Ze Je­

żeli pomi ni em y nies ko ńc zo ne w s p ó ł c zy nn ik i w ma cierzy Aj^» to wy nikowa permutowana ma ci er z posiada strukturę b l o k o w o - t r ó j k ą t n ą .

Wszystkie macierze permutacyjne pamiętane sę w postaci w e k t o r ó w permu- tacyjnych. Przy kł ad ow o m a c i e r z y pnxn odpowiada n w y m i a r o w y we kt or p =■ ( p ( l ) p (n ) ) , taki. Ze P(i,j) « i wted y i tylko wtedy, gdy J * - p(i). W realiz ow an yc h al go rytmach we kt or y pe rm ut ac yj ne p oraz s p a ­ miętane sę w postaci tablic o nazwie R1 i STACK.

Do pa mi ęt an ia struktury blokowo-trójkętnej ma cierzy A służy obok m a ­ c i er zy permutacyjnej S we kt or FATHER o wy mi ar ze n (rys. 4), Każdemu w y od rę b n i o n e m u olokowi m a c i er zy A odpowiada obszar tablicy FATHER od oo- czętkowej pozycji CP do końcowej pozycji NZ . na których znajduję się w tablicy ST AC K numery kolumn wy o d r ę b n i o n e g o bloku. W tablicy FATHER na koń­

cowej pozycji NZ wy od rę b n i o n e g o bloku wp is an y jest adres początku bloku CP. W zwięzku z przyjętym za pisem bloki sę ęnalizowęne sekwencyjnie od os­

tatniego d o pierwszego. Do zepleu swobodnych kolumn za st os ow an o d o da tk ow y we ktor STOS o wy mi ar ze n. Ko lumny te zopiauje się dla każdego bloku od­

dzielnie (rys. 4). Zn ac z n i k i e m końca zbioru swobodnych kolumn jest zero

(10)

182 E, T o c z y ł o w s k l , K. Rudowski

CP N Z

STACK

STOS

0

V,

FA TH ER CP

Rys. a. Oois bloku od po wi ad aj ąc eg o eilnie spójnej składowej grafu prog o­

we go (Vj,...,V^ - numery sw ob od ny ch kolumn bloku)

(jeżeli w bloku ws zy s t k i e ko lumny tą swobodne, to w y p e ł n i a j ? cały obszer bloku'. Kolumny swobodne rozpatrywane są od ko lumny zapisanej w STOS(NZ).

Liczna za jętość pamięci tablic używ an yc h we w s z y s t k i c h implementowa- nych algo ry tm ac h posz uk iw an ia pełnej przekętnej Jest równa lin + 2NM,

VI celu ro zw iązania zadania pełnego p r zy dz ia łu w y bi er an y Jest jeden z na st ęp uj ąc yc h al go ry tm ów

(i) Halla

(ii) Ho pc ro ft a- Ka rp a (iii) Halla plus Tarjana

(iv) H o pc ro ft a- Ka rp a plus Tarjana

w zależności od wa rt oś ci p a r a m e t r ó w st er uj ąc yc h u z a l e ż ni on yc h od rozmia­

rów i rozr ze dz en ia maci er zy struktury grafu. VI p r z y pa dk ac h (iii) oraz (iv) brak pełnego przydz ia łu może być st wi erdzony w al go ry tm ie T a r j a n a . W chwi­

li obecr.ej au torzy impl em en tu ję al go ry tm y (i) oraz (iii). Po ds ta wo wy m pa­

rametrem st er uj ęc ym Jest para me tr o nazwie NU okre śl aj ąc y wa ru ne k w y wo ła­

nia algo ry tm u Tarjana w algo ry tm ac h m a k s ym al ne go skojarzenia. Reguły do- tyczęce wartości tego parametru sę us talane na oodstawia eksperymentów nu­

merycznych.

Dla z w i ę ks ze ni e ef ek ty wn oś ci ro zw ięzywania zadania pr og ow eg o przy zmia­

nie progu na w y ż s z y za ch ow yw an e sa d o t y c h c z a s znalezione p r zy dz ia ły z po­

przedniej iteracji. Podobnie przy zmianie progu na ni żs zy znikeje Jedynie przydz ia ły od po wiadaJęce elem en to m położonym na przekętnej ma cierzy A j^p w i ę k s z y m od nowej w a r t oś ci progu.

PO DS UM OW AN IE

Om ów io ne w pracy rozwięzanin a l go ry tm ic zn e i orogramowe stanowię ood- stawę organizacji ro zbudowanego pa kietu z u n i fi ko wa ny ch pr ocedur służęcych do efek ty wn eg o rozwięzywania zadań przydziału. Realiz ac ja całego oakletu Jest zami er ze ni em d ł ug of al ow ym i będzie realizowana etapami. VI pierwszym etapie zaimpl em en to wa no algorytmy Halla i Tarjana w we rs ji umożliwiającej bezp oś re dn ią i efektywną współp ra cę tych algorytmów.

(11)

Aloorytm rozwiązywania zadań or -ycizia t u . lf-3

LJTtRAT'JRA

[lj Garf in ke i R.5.: An Im proved Algo ri th m for the Bottleneck Assignment Problem, Oons, Res. 19 1971'. 174V-17bl,

[z] Hail M. : An Al oc ri th m for Distinct Raorezent at i o n s , Amer. Math. M o n t h ­ l y , Vol 63 11956). 716-717.

[j] Hoocroft O.E. . k a rc R.M.: An r S//2 Al g o r i t h m for M a xi mu m Ma tc hi ng s in Bipartite Grsrhs, SI AM P. O o m o u t , Vol 2 (1973), No 4. 225-231.

[4] 5lomir.sk 1 L.: bottleneck Assignment Problem: an Efficient Algorithm, Arch. Aut. tern 24, zeszyt 4, 469-482, 1979,

[b] Tarjan R.E. : Depth-First Ec ar ch and Linear Grapn Algori th ms SI AM 0.

C o m o u t . Vol 1, Dp. 146-160. 1972.

[t] 1 oczylowsk i t;. : A Ma ximum Ma tc hi ng alaorithm for block-1 rangularizs - n o n of Large-Scale Ma tr ic es , or ze dl oz on o do Anp. Disc' . Moth.

[7] Trybus E.: M e tp dy p o r z g d k o w a n i a , Mat. Stcs. IV. 1975, 95-117.

Recenzent: Prof. dr inż. Henryk k d w a l d w s kI

Wpłynęło do Reda kc ji 15.05.1982 r.

AJirOPlITM PSffiEHHH ¡IHHWiAKCHOli uiWi'-CI 0 HAbKMEffi:;:

P e

3

v M_e

3 paO dT e r .r .i.,jr a ii.ic s o :;c o u d a ô ::'j . ..o r o i'K 'iîis . ;:x

zjO-Meiuta. „ u k a uî.toah 'j.v -iu m:»4 0w*i»eKl::3H0CXK J.va<j...

r p a . u o . .ypôAJio iaU o ay ;e:t?« i> a 3 e a c n o . ' . L o U i : : _ u TuKxe Jv Je K iH B a y o a p ra u ita a w tiu . ; j b ..

2

..

AN ALGORITHM FOR THE BOTTLE NE CK A S S I G N M E N T PROBLEM

S u m m a r y

net. threshold algorithm for the bottleneck assignment 'roller, is p r e­

sented. We apply a met nod wh i c h arables to improve the e f •:r iency of f-e algorithms for finoing full matchings in the bipartite graphs. We also show how to reduce the number of steps of the threshold a l go ri th m by m a ­ king e f f i c1ent use of the information from the previous steps of the a l ­ gorithm.

Cytaty

Powiązane dokumenty

Perspektywa, którą Autorka przyjęła w pracy analizując polskie społeczeństwo, sprawia, że udało się jej pokazać tylko jeden z wymiarów, w jakim to

Nauczyciel wybiera kilkoro uczniów, którym rozdaje karteczki z opisem sytuacji (Załącznik 1). Uczniowie ci przygotowują się do odegrania scenek improwizowanych przed klasą.

[r]

1) Ofertę należy sporządzić w formie pisemnej na formularzu ofertowym stanowiącym Załącznik nr 1 do Zapytania ofertowego. 2) Oferta oraz wszystkie załączniki muszą być

Jego rodzice byli podobno chrześcijanami. Źródła pisane donoszą, że za młodu skorzystał ze sposobności uczenia się bezpośrednio od niektórych apostołów. Wiele

macyjne takie jak m etoda włączania najdalszego wierzchołka FI oraz m etoda najtańszego włączania wierzchołka CI [20], [24], W algorytmach typu włączania najpierw

W wielu zagadnieniach praktycznych często spotykamy się z sytuacją, kiedy ten sam zbiór zadań (prac, czynności itp.) wykonywany w identycznych (lub bardzo

Wygodnie jest umie ci rysunek rzutu uko nego w uk adzie wspó rz dnych, co u atwia orientacj w nazwach zmiennych i pozwala na wyprowadzenie równania toru.. Odleg o jak przebywa