Metoda przydziału lotów do stanowisk odprawy biletowo-bagażowej
Metoda przydziału lotów do stanowisk odprawy biletowo-bagażowej
Metoda przydziału lotów do stanowisk odprawy biletowo-bagażowej
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
10 Sylwester Gładyś, Marcin Grabowski<br />
• łuki wychodzące z danego wierzchołka przedstawiają decyzje <strong>do</strong>puszczalne x e dla<br />
danego stanu S e , kierując proces <strong>do</strong> odpowiedniego wierzchołka następnego etapu.<br />
Rys. 3. Fragment sieci skierowanej wieloetapowego procesu decyzyjnego<br />
Dla każdego ze stanów S e znany jest czas t(S e ) potrzebny na odprawę wszystkich <strong>lotów</strong><br />
odprawianych na poprzednich etapach, niezależnie od ich kolejności. Dzięki temu możliwe<br />
jest określenie kosztu f(x e ) podjęcia każdej z możliwych decyzji <strong>do</strong>puszczalnych x e .<br />
Analizując proces od końca, możliwe jest wyznaczenie optymalnej realizacji procesu z<br />
każdego z wierzchołków sieci <strong>do</strong> końca procesu, a w konsekwencji, zgodnie z zasadą<br />
optymalności Bellmana, wyznaczenie optymalnej realizacji całego procesu.<br />
Czasowa złożoność obliczeniowa algorytmu szeregowania optymalnego <strong>lotów</strong> <strong>do</strong><br />
jednej kolejki zależeć będzie od liczby rozpatrywanych stanów (wierzchołków sieci). Dla<br />
R <strong>lotów</strong> sieć składa się z 2 R -1 wierzchołków.<br />
Szeregowanie suboptymalne <strong>lotów</strong> <strong>do</strong> jednej kolejki<br />
W przypadku, gdy duża liczba <strong>lotów</strong> poddanych szeregowaniu powoduje zbyt długi<br />
czas wykonywania obliczeń (R > R gr , gdzie R gr – graniczna liczba <strong>lotów</strong> szeregowanych<br />
optymalnie), szeregowanie może zostać wykonane za pomocą algorytmu suboptymalnego,<br />
składającego się z trzech algorytmów, wielokrotnie wykorzystujących algorytm<br />
szeregowania optymalnego.<br />
Najpierw wykonywane jest „szeregowanie co drugi”. Wektor <strong>lotów</strong> rozdzielany jest na<br />
dwa podwektory - <strong>do</strong> pierwszego przenoszone są elementy o indeksach nieparzystych, a <strong>do</strong><br />
drugiego o indeksach parzystych. Następnie obydwa wektory szeregowane są przy pomocy<br />
algorytmu optymalnego i składane z powrotem, naprzemian, <strong>do</strong> jednego wektora. Tak<br />
uszeregowany wektor <strong>lotów</strong> dzielony jest na dwie połowy („szeregowanie połówkowe”) i<br />
każda z nich osobno szeregowana jest algorytmem optymalnym. Ostatnim etapem jest<br />
wykonanie „szeregowania schodkowego”. Polega ono na stopniowym, idąc od końca,<br />
wydzielaniu podwektora o określonym rozmiarze (R gr ), szeregowaniu go algorytmem<br />
optymalnym i ponownym wpisaniu <strong>do</strong> wektora <strong>lotów</strong>. Następnie, cofając się stopniowo o<br />
jeden indeks wydzielane i szeregowane są kolejne podwektory, aż <strong>do</strong> uszeregowania<br />
całego wektora.