Modele całkowitoliczbowe zagadnienia komiwojażera (TSP)

Podobne dokumenty
Wyznaczanie optymalnej trasy problem komiwojażera

Zadanie transportowe i problem komiwojażera. Tadeusz Trzaskalik

TEORIA GRAFÓW I SIECI

Wybrane podstawowe rodzaje algorytmów

Modele i narzędzia optymalizacji w systemach informatycznych zarządzania

Klasyczne zagadnienie przydziału

Suma dwóch grafów. Zespolenie dwóch grafów

PLAN WYKŁADU OPTYMALIZACJA GLOBALNA ZADANIE KOMIWOJAŻERA METODY ROZWIĄZYWANIA. Specyfika zadania komiwojażera Reprezentacje Operatory

TEORIA GRAFÓW I SIECI

OPTYMALIZACJA DYSKRETNA

Drzewa spinające MST dla grafów ważonych Maksymalne drzewo spinające Drzewo Steinera. Wykład 6. Drzewa cz. II

EGZAMIN - Wersja A. ALGORYTMY I STRUKTURY DANYCH Lisek89 opracowanie kartki od Pani dr E. Koszelew

etody programowania całkowitoliczboweg

Algorytmy genetyczne

Przykłady problemów optymalizacyjnych

) a j x j b; x j binarne (j N) całkowitoliczbowe; przyjmujemy (bez straty ogólności): c j > 0, 0 <a j b (j N), P n

Wykład 4. Droga i cykl Eulera i Hamiltona

Techniki optymalizacji

Droga i cykl Eulera Przykłady zastosowania drogi i cyku Eulera Droga i cykl Hamiltona. Wykład 4. Droga i cykl Eulera i Hamiltona

G. Wybrane elementy teorii grafów

Techniki optymalizacji

Elementy Modelowania Matematycznego Wykład 7 Programowanie nieliniowe i całkowitoliczbowe

Struktury danych i złożoność obliczeniowa Wykład 7. Prof. dr hab. inż. Jan Magott

mgr Anna Bernaciak Wyższa Szkoła Logistyki Badania operacyjne II Zagadnienie komiwojażera Zadanie 1 Rozwiązanie zadania 1. Krok i to minimalny

Plan wykładu. Przykład. Przykład 3/19/2011. Przykład zagadnienia transportowego. Optymalizacja w procesach biznesowych Wykład 2 DECYZJA?

Rozważmy funkcję f : X Y. Dla dowolnego zbioru A X określamy. Dla dowolnego zbioru B Y określamy jego przeciwobraz:

Metody Optymalizacji: Przeszukiwanie z listą tabu

ZAGADNIENIE TRANSPORTOWE

Struktury danych i złozoność obliczeniowa. Prof. dr hab. inż. Jan Magott

3. FUNKCJA LINIOWA. gdzie ; ół,.

Działanie algorytmu oparte jest na minimalizacji funkcji celu jako suma funkcji kosztu ( ) oraz funkcji heurystycznej ( ).

Data Mining Wykład 9. Analiza skupień (grupowanie) Grupowanie hierarchiczne O-Cluster. Plan wykładu. Sformułowanie problemu

Sieć (graf skierowany)

Wykład 4. Określimy teraz pewną ważną klasę pierścieni.

Algorytmika Problemów Trudnych

Metody Programowania

Porównanie algorytmów wyszukiwania najkrótszych ścieżek międz. grafu. Daniel Golubiewski. 22 listopada Instytut Informatyki

Kodowanie i kompresja Streszczenie Studia dzienne Wykład 6

Matematyka dyskretna

ALGORYTM KLASTERYZACJI W ZASTOSOWANIU DO PROBLEMU TRASOWANIA POJAZDÓW

Adam Kasperski, Michał Kulej, Badania Operacyjne, Wykład 3, Programowanie całkowite(plc)1 PROGRAMOWANIE LINIOWE CAŁKOWITOLICZBOWE(DYSKRET- NE)

UKŁADY RÓWNAŃ LINIOWYCH

Algorytm dyskretnego PSO z przeszukiwaniem lokalnym w problemie dynamicznej wersji TSP

Optymalizacja. Przeszukiwanie lokalne

Programowanie dynamiczne cz. 2

Programowanie liniowe

Metody Rozmyte i Algorytmy Ewolucyjne

Przykład wykorzystania dodatku SOLVER 1 w arkuszu Excel do rozwiązywania zadań programowania matematycznego

Wykorzystanie algorytmów mrówkowych w dynamicznym problem

Kolejny krok iteracji polega na tym, że przechodzimy do następnego wierzchołka, znajdującego się na jednej krawędzi z odnalezionym już punktem, w

Programowanie liniowe całkowitoliczbowe

Układy równań i nierówności liniowych

Sieć (graf skierowany)

Grafy. Jeżeli, to elementy p i q nazywamy końcami krawędzi e. f a b c d e γ f {1} {1,2} {2,3} {2,3} {1,3}

Reprezentacje grafów nieskierowanych Reprezentacje grafów skierowanych. Wykład 2. Reprezentacja komputerowa grafów

Luty 2001 Algorytmy (4) 2000/2001

Temat 9. Zabłocone miasto Minimalne drzewa rozpinające

Algorytm grupowania danych typu kwantyzacji wektorów

Algorytmy wyznaczania centralności w sieci Szymon Szylko

0 + 0 = 0, = 1, = 1, = 0.

Programowanie dynamiczne i algorytmy zachłanne

Zagadnienie transportowe (badania operacyjne) Mgr inż. Aleksandra Radziejowska AGH Akademia Górniczo-Hutnicza w Krakowie

Modelowanie całkowitoliczbowe

Zagadnienie transportowe

Algorytmy mrówkowe. H. Bednarz. Wydział Informatyki Zachodniopomorski Uniwersytet Technologiczny w Szczecinie Inteligentne systemy informatyczne

Metody przeszukiwania

1 Programowanie całkowitoliczbowe PLC

Teoria grafów podstawy. Materiały pomocnicze do wykładu. wykładowca: dr Magdalena Kacprzak

Matematyka dyskretna. Andrzej Łachwa, UJ, B/14

OSTASZEWSKI Paweł (55566) PAWLICKI Piotr (55567) Algorytmy i Struktury Danych PIŁA

LABORATORIUM 7: Problem komiwojażera (TSP) cz. 2

5c. Sieci i przepływy

Złożoność obliczeniowa klasycznych problemów grafowych

[1] E. M. Reingold, J. Nievergelt, N. Deo Algorytmy kombinatoryczne PWN, 1985.

Serwis NaviExpert Biznes. Instrukcja obsługi

Zaawansowane algorytmy i struktury danych

Młodzieżowe Uniwersytety Matematyczne. dr Michał Lorens

ZAGADNIENIE TRANSPORTOWE(ZT)

Opis przedmiotu. Karta przedmiotu - Badania operacyjne Katalog ECTS Politechniki Warszawskiej

Elementy Modelowania Matematycznego

Programowanie liniowe całkowitoliczbowe

Zaawansowane programowanie

III TUTORIAL Z METOD OBLICZENIOWYCH

10. Kolorowanie wierzchołków grafu

Optymalizacja. Wybrane algorytmy

MIO - LABORATORIUM. Imię i nazwisko Rok ak. Gr. Sem. Komputer Data / EC3 VIII LAB...

Porównanie czasów działania algorytmów sortowania przez wstawianie i scalanie

Kodowanie i kompresja Tomasz Jurdziński Studia Wieczorowe Wykład Kody liniowe - kodowanie w oparciu o macierz parzystości

Opis przedmiotu. Karta przedmiotu - Badania operacyjne Katalog ECTS Politechniki Warszawskiej

BADANIA OPERACYJNE Zagadnienie transportowe. dr Adam Sojda

Programowanie sieciowe. Tadeusz Trzaskalik

Opis przedmiotu: Badania operacyjne

Rozwiązywanie układów równań liniowych

Ekonometria - ćwiczenia 11

Metoda graficzna może być stosowana w przypadku gdy model zawiera dwie zmienne decyzyjne. Metoda składa się z dwóch kroków (zobacz pierwszy wykład):

Programowanie dynamiczne

A. Kasperski, M. Kulej, Badania operacyjne, Wykład 4, Zagadnienie transportowe1

; B = Wykonaj poniższe obliczenia: Mnożenia, transpozycje etc wykonuję programem i przepisuję wyniki. Mam nadzieję, że umiesz mnożyć macierze...

[1] R. K. Ahuja, T. L. Magnanti, J. B. Orlin, Network Flows: Theory, Algorithms, and Applications, Prentice Hall, 1993.

Problem zakleszczenia

Transkrypt:

& Zagadnienie komowojażera 1 Modele całkowitoliczbowe zagadnienia komiwojażera (TSP) Danych jest miast oraz macierz odległości pomiędzy każdą parą miast. Komiwojażer wyjeżdża z miasta o numerze 1 chce odwiedzić wszystkie pozostałe miasta, każde dokładnie jeden raz, powrócić do punktu wyjazdu (tj. miasta 1) i przejechać przy tym trasę o najkrótszej długości. W zależności od własności macierzy odległości dokonuje się klasyfikacji problemu. Jeśli macierz jest macierzą symetryczną tj., to problem nazywa się symetrycznym zagadnieniem komiwojażera (STSP). Jeśli macierz nie jest symetryczna, to zagadnienie nazywamy asymetrycznym zagadnieniem komiwojażera (ATSP) lub po prostu zagadnieniem komiwojażera (TSP). Model całkowitoliczbowy tego zagadnienia (asymetrycznego) można sformułować (Dantzig - Fulkerson - Johnson) następująco: Zagadnienie komowojażera 2 Model DFJ zagadnienia komiwojażera )(+*! #" jeśli miasto $ bezpośrednio poprzedza miasto% w przeciwnym przypadku. 1,(+*-/. (0 24365879 1(+*-:. (0 dla $ "<;>=>=>=1; ; (1) )(+*-?. (@ dla% "<;>=>=>=1; ; (2) Ä-BC D E!FE>G "<; FIHKJ dla ;ML DNEOFPEQD G L, (3) SRUT & ;>"/V dla $ ; % "<;>=>=>=1; ; $W %, (4)

Zagadnienie komowojażera 3 gdzie J T "<;>=>=>=; V. Ograniczenie (3) nazywane warunkiem eliminacji podcykli uniemożliwia powstawanie cykli tj. tras zamkniętych przechodzacych przez mniej niż miast (ale dopuszczających cykle przechodzace przez wszystkie miast). Powyższe sformułowanie wymaga ponad-wielomianowej liczby ograniczeń. Poniżej podane zostaną dwa sformułowania o wielomianowej liczbie ograniczeń. Miller, Tucker i Zemlin wprowadzili inny niż (3) sposób eliminacji podcykli wymagający - oprócz zmiennych - G wprowadzenia " dodatkowych zmiennych $ L ;>=>=>=; i tylko G L dodatkowych ograniczeń (oprócz 1 i 2 ). Zagadnienie komowojażera 4 )(+* Model MTZ zagadnienia komiwojażera 1,(+*-:. ( 2436587 9 1(+*-:. (0 dla $ "<;>=>=>=; ; (5) )(+*-?. ( dla% "<;>=>=>=1; ; (6) G G "? D G L ; gdzie $ ; % L ;>=>=>=; ; $ W % ; (7) R T & ;>"/VQ; dla $ ; % "<;>=>=>=,; ; $W %, (8) " D D G "<; dla $ L ;>=>=>=,; = (9)

& Zagadnienie komowojażera 5 Model ATSPxy z relacja poprzedzania miast Wprowadza się - oprócz zmiennych zero-jedynkowych zdefiniowanych w poprzednich modelach - nowy zbiór ciągłych zmiennych ; $ ; % L ;>=>=>=1; ; $ W % ; (które mają jednak binarną interpretację) następująco: " jeśli $ poprzedza (niekoniecznie bezpośrednio)% na trasie w przeciwnym przypadku. Zagadnienie komowojażera 6 )(+* 1,(+*-:. ( 243 5879 1(+*-:. (0 dla $ "<;>=>=>=; ; (10) )(+*-?. ( dla % "<;>=>=>=1; ; (11) ; dla $ ; % L ;>=>=>=1; ; $ W % ; (12) dla $ ; % L ;>=>=>=1; ; $ W % ; (13) D L ; dla $ ; ; % L ;>=>=>=; ; $ W % W ; (14) R T & ;>"/VQ; dla $ ; % "<;>=>=>=1; ; $W %, (15) & ; dla $ ; % L ;>=>=>=1; ; $W % = (16)

Zagadnienie komowojażera 7 Model ATSPxy pozwala na wprowadzenie dodatkowych ograniczeń uwzględniających relację poprzedzania między miastami na trasie komiwojażera: dla% L ;>=>=>=; ; oraz $ R F M ; F 4 gdzie jest podzbiorem zbioru miast L ;>=>=>=1; które mają poprzedzać miasto% na trasie komiwojażera zaczynajacej się w mieście ". Zagadnienie komowojażera 8 Model STSP dla symetrycznego zagadnienia komiwojażera Model STSP można sformułować używając mniejszej liczby zmiennej. Wystarczy wtedy zdefiniować zmienne tylko dla $ ; % "<;>=>=>=1; ; $ % = Model symetrycznego zagadnienia komiwojażera jest wtedy następujący: 1 3 5879 -BQC, L "<;>=>=>=; D E!FE>G " AFIHKJ ; DNE!FEQD G R T & ;>"/V $ ; % "<;>=>=>=1; ; $ % = (17) (18)

Zagadnienie komowojażera 9 Tabela 1: Macierz odległości dla zagadnienia komiwojażera 1 2 3 4 5 6 1 0 42 62 53 96 105 2 52 0 49 29 54 84 3 70 42 0 77 65 129 4 42 35 56 0 57 56 5 105 63 81 41 0 80 6 101 93 111 72 75 0 o długości 346. Jeśli wprowadzi się ograniczenie, że miasta 4 i 5 powinny Dla tej macierzy optymalną jest trasa: " G G L G SG G SG " na trasie występować przed 6, tj. F 4 NT ; V oraz " i " w modelu ASTPxy to trasą optymalną jest " G L G G PG G G " długości 354. o Zagadnienie komowojażera 10 Rozwiazywanie zagadnienia komiwojażera Metoda I (oszacowań i podziału ) Metoda II (rozwiazywanie ciagu zadań PCL) Podamy teraz inną niż oszacowań i podziału metodę rozwiązywania zagadnienia komiwojażera. Polega ona na rozwiązaniu najpierw następującego zagadnienie optymalnego przydziału:

Zagadnienie komowojażera 11 (+* 2 3 5 1(+* (19) dla $ "<;>=>=>=1; ; (20) )(+* dla % "<;>=>=>=; ; (21) R T & ;>"/V dla $ "<;>=>=>=; ; % "<;>=>=>=1; ; $W %. (22) Jeśli rozwiązanie optymalne tego zagadnienia nie zawiera podcykli, to jest ono również rozwiązaniem optymalnym zagadnienia komiwojażera. Jeśli natomiast zawiera podcykle (tj. cykle przechodzace przez mniej niż n wierzchołków) to dopisujemy ograniczenia - dla każdego podcyklu jedno - eliminujące te podcykle. Stosujemy metodę eliminacji podcykli (6) tj. dodajemy ograniczenie, że suma zmiennych, które tworzą ten podcykl musi być nie większa niż liczba łuków tego podcyklu minus 1. Zagadnienie komowojażera 12 Ponownie rozwiązujemy tak zmodyfikowane całkowitoliczbowe zagadnienie (ma teraz tyle dodatkowych ograniczeń ile było podcykli). Powyższe postępowanie kontynuujemy aż do otrzymania rozwiązanie nie zawierającego podcykli, które jest rozwiązaniem optymalnym. Działanie tej metody zilustrujemy na przykładzie zagadanienia komiwojażera o następującej macierzy odległości:

Zagadnienie komowojażera 13 Tabela 2: Macierz odległości dla zagadnienia komiwojażera 1 2 3 4 5 6 1 0 42 62 53 96 105 2 52 0 49 29 54 84 3 70 42 0 77 65 129 4 42 35 56 0 57 56 5 105 63 81 41 0 80 6 101 93 111 72 75 0 Rozwiązanie optymalne zagadnienia optymalnego przydziału jest następujace: * *M " Zagadnienie komowojażera 14 Zawiera ono dwa podcykle utworzone przez łuki $)% " : jeden to " G G L G " a drugi G G G dodając dwa następujace ograniczenia: *, dla których. Eliminujemy je * D L (23) D L (24) Rozwiązujemy teraz wyjściowy problem z dwoma dodatkowymi ograniczeniami (23 i 24). Rozwiązanie optymalne jest następujące: * * " oraz G G. Eliminujemy je dodając do ograniczeń wyjściowego problemu oprócz (23, 24) dwa nowe : Rozwiązanie zawiera znowu dwa podcykle: " G G L G G " * * D (25) D " (26)

Zagadnienie komowojażera 15 Rozwiązanie optymalne tego zagadnienia * * " daje już optymalną trasę komiwojażera: o długości 346. " G SG L G G G SG " Metody heurystyczne rozwiazywania zagadnienia komiwojażera Konstrukcji trasy Heurystyka najbliższego sąsiada. Heurystyka najbliższego(najdalszego) wstawienia. Heurystyka najtańszego wstawienia Heurystyka CCAO Poprawianie trasy Algorytm 2-optymalny