OPTYMALIZACJA W LOGISTYCE

Podobne dokumenty
OPTYMALIZACJA W LOGISTYCE

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

Zagadnienie transportowe

Wyznaczanie optymalnej trasy problem komiwojażera

Zadanie transportowe i problem komiwojażera. Tadeusz Trzaskalik

Rozdział 3 ZADANIE TRANSPORTOWE I PROBLEM KOMIWOJAŻERA

Wykład z modelowania matematycznego. Zagadnienie transportowe.

Wykład 4. Droga i cykl Eulera i Hamiltona

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

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

ZAGADNIENIE TRANSPORTOWE

E: Rekonstrukcja ewolucji. Algorytmy filogenetyczne

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

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

TEORIA GRAFÓW I SIECI

Znajdowanie wyjścia z labiryntu

Rozdział 6 PROGRAMOWANIE WYPUKŁE I KWADRATOWE

Problem komiwojażera ACO. Zagadnienie optymalizacyjne, polegające na znalezieniu minimalnego cyklu Hamiltona w pełnym grafie ważonym.

Rozdział 2 PROGRAMOWANIE LINIOWE CAŁKOWITOLICZBOWE

Rozdział 8 PROGRAMOWANIE SIECIOWE

Algorytmy mrówkowe (optymalizacja kolonii mrówek, Ant Colony optimisation)

Programowanie sieciowe. Tadeusz Trzaskalik

OPTYMALIZACJA W LOGISTYCE

Rozdział 1 PROGRAMOWANIE LINIOWE

Metoda simpleks. Gliwice

Przykłady grafów. Graf prosty, to graf bez pętli i bez krawędzi wielokrotnych.

ZAGADNIENIE TRANSPORTOWE (część 1)

BADANIA OPERACYJNE Zagadnienie transportowe

Badania operacyjne: Wykład Zastosowanie kolorowania grafów w planowaniu produkcji typu no-idle

Klasyczne zagadnienie przydziału

Algorytm Dijkstry znajdowania najkrótszej ścieżki w grafie

MODELE SIECIOWE 1. Drzewo rozpinające 2. Najkrótsza droga 3. Zagadnienie maksymalnego przepływu źródłem ujściem

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

Matematyczne Podstawy Informatyki

BADANIA OPERACYJNE Zagadnienie transportowe. dr Adam Sojda

ANALIZA ALGORYTMÓW. Analiza algorytmów polega między innymi na odpowiedzi na pytania:

Elementy teorii grafów Elementy teorii grafów

Algorytmy genetyczne

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

Ćwiczenie 1 Planowanie trasy robota mobilnego w siatce kwadratów pól - Algorytm A

Wybrane podstawowe rodzaje algorytmów

Programowanie liniowe

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

Rozdział 9 PROGRAMOWANIE DYNAMICZNE

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

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

Grafy dla każdego. dr Krzysztof Bryś. Wydział Matematyki i Nauk Informacyjnych Politechnika Warszawska.

Programowanie liniowe metoda sympleks

ZAGADNIENIE TRANSPORTOWE

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

TEORIA GRAFÓW I SIECI

WYKŁAD 3 WYPEŁNIANIE OBSZARÓW. Plan wykładu: 1. Wypełnianie wieloboku

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

Matematyka dyskretna

Rozwiązanie Ad 1. Model zadania jest następujący:

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

Matematyka od zaraz zatrudnię

Ekonometria - ćwiczenia 10

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

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

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):

6a. Grafy eulerowskie i hamiltonowskie

Rozdział 1 PROGRAMOWANIE LINIOWE

BADANIA OPERACYJNE I TEORIE OPTYMALIZACJI. Zagadnienie transportowe

ZAGADNIENIE TRANSPORTOWE(ZT)

Programowanie liniowe metoda sympleks

Programowanie liniowe

SZTUCZNA INTELIGENCJA

Algorytmika Problemów Trudnych

Graf. Definicja marca / 1

Badania Operacyjne Ćwiczenia nr 5 (Materiały)

Schemat programowania dynamicznego (ang. dynamic programming)

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA

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

LOGISTYKA ZAOPATRZENIA I PRODUKCJI ĆWICZENIA 13 ROZMIESZCZENIE STANOWISK (LAYOUT)

Programowanie liniowe. Tadeusz Trzaskalik

Lista 4. Kamil Matuszewski 22 marca 2016

Metody przeszukiwania

a) 7 b) 19 c) 21 d) 34

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA

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

LI Olimpiada Matematyczna Rozwiązania zadań konkursowych zawodów stopnia trzeciego 3 kwietnia 2000 r. (pierwszy dzień zawodów)

ANALIZA SIECIOWA PROJEKTÓW REALIZACJI

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

Przykład planowania sieci publicznego transportu zbiorowego

Programowanie liniowe całkowitoliczbowe. Tadeusz Trzaskalik

Programowanie liniowe

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

Wykłady z Matematyki Dyskretnej

Równoległy algorytm wyznaczania bloków dla cyklicznego problemu przepływowego z przezbrojeniami

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Programowanie liniowe metoda sympleks

Serwis NaviExpert Biznes. Instrukcja obsługi

KURS MATEMATYKA DYSKRETNA

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

OPTYMALIZACJA W LOGISTYCE

Wielokryteriowa optymalizacja liniowa cz.2

Teoria grafów dla małolatów. Andrzej Przemysław Urbański Instytut Informatyki Politechnika Poznańska

Matematyczne Podstawy Informatyki

Transkrypt:

OPTYMALIZACJA W LOGISTYCE Optymalizacja zadań bazy transportowej ( część 1 ) Opracowano na podstawie : Stanisław Krawczyk, Metody ilościowe w logistyce ( przedsiębiorstwa ), Wydawnictwo C. H. Beck, Warszawa 2001

Problem komiwojażera 1 Sformułowanie problemu Zadanie komiwojażera jest znane od kiedy kupcy zaczęli dostarczać produkty klientom. Podstawową wersję problemu komiwojażera można przedstawić w dwóch zdaniach: 1. Komiwojażer pragnie odwiedzić pewną liczbę klientów w różnych miejscowościach i po zakończeniu odwiedzin wrócić do domu. 2. Jaką drogę powinien wybrać ( w jakiej kolejności powinien odwiedzać klientów) aby przebyta przez niego droga była możliwie najkrótsza?

Problem komiwojażera 2 Pierwsze reguły wyznaczania trasy zostały opracowane na podstawie doświadczeń praktycznych już w połowie XIX wieku przez komiwojażerów w USA. Jednak dopiero formalne ujęcie matematyczne pozwoliło odkryć, że to niby proste zadanie obejmuje bardzo szeroką klasę przypadków, z których tylko niektóre można rozwiązać dokładnie. Założenia: 1. Każdego klienta można identyfikować przez podanie miejscowości (węzła w grafie), w której zamieszkuje ( w jednej miejscowości znajduje się jeden klient ). 2. Między miejscowościami istnieją połączenia pozwalające na przemieszczanie w obu kierunkach ( krawędzie grafu ). 3. Każdej krawędzi przyporządkowana jest liczba określająca uogólnioną odległość. 4. Wyróżnione miejscowości oraz potencjalne trasy przejazdu można przedstawić za pomocą grafu G=[ V, E, c ], nieskierowanego, spójnego, o n węzłach, w którym liczby przyporządkowane krawędziom są nieujemne cij = cji 0 5. Dla dowolnych trzech węzłów i,j,k powinna być spełniona nierówność: cik cij + cjk 6. Dla dowolnych dwóch miejscowości nie mogą występować połączenia przez inne miejscowości. 7. Wyróżniamy jeden węzeł odpowiadający miejscu startu komiwojażera i przyjmujemy, że jego trasa powinna kończyć się powrotem do tego węzła.

Problem komiwojażera 3 Każdą trasę spełniająca te warunki nazywamy trasą okrężną komiwojażera, która jest optymalna, gdy łączna jej długość jest minimalna. Każda z miejscowości ( z wyjątkiem startowej ) musi wystąpić na niej tylko raz. W teorii grafów trasę tego typu nazywa się cyklem Hamiltona. Jeżeli nie wymaga się odwiedzenia wszystkich miejscowości mówimy o cyklu skróconym. 2 3 1 4 5 6

Problem komiwojażera 4 Poszukiwany cykl Hamiltona oznaczymy krótko symbolem H. Aby móc zapisać, że pewna krawędź należy do tego cyklu, wprowadzimy zmienne binarne xij, i,j= 1, n. x ij 1, 0, gdy droga i, j cyklu H w przeciwnymprzypadku Ponieważ każda miejscowość może tylko raz wystąpić w trasie, więc każdy węzeł i może tylko raz wystąpić jako węzeł początkowy krawędzi : n i1 x ij 1, j 1,...,n. Każdy węzeł może być również tylko raz węzłem końcowym krawędzi, co prowadzi do układu ograniczeń: n j1 x ij 1, i 1,...,n.

Minimalizacja trasy może być ujęta w formie funkcji kryterium: z n n i1 j1 c ij x ij min Wprowadzamy sztuczne założenie, na mocy którego, gdy między dwoma węzłami p i r nie istnieje połączenie, to przyjmujemy, że są one oddalone nieskończenie daleko, a więc cpr =, oraz również cii = Próba tak sformułowanego zadania kończy się jednak bardzo często wskazaniem cykli skróconych, których przyjęte ograniczenia niestety nie wykluczają. Aby do tego nie dopuścić do zadania należy wprowadzić dodatkowe ograniczenia, które czynią zadanie trudnym do praktycznego rozwiązania. W literaturze można spotkać różne wersje ograniczeń uniemożliwiających powstawanie cykli skróconych. Często spotykaną jest następująca: 1. Rozpatrujemy wszystkie k elementowe permutacje węzłów [ i1, i2,, ik ], przy czym Gdy liczba węzłów jest parzysta: n k = 2,3,, 2 Problem komiwojażera 5

Problem komiwojażera 6 Gdy liczba węzłów n jest nieparzysta: k = 2,3,, n 1 2 2. Dla każdego k tworzymy układ ograniczeń: x x... x k 1 1 1 i i2 i2i3 iki n k 1! Należy teraz wziąć pod uwagę, że dla każdego k otrzymujemy k ograniczeń. Dla n=6 otrzymamy 55 ograniczeń, ale ich liczba rośnie bardzo szybko dla n=14 wynosi prawie 3 miliony, co czyni zadanie niemożliwym do rozwiązania. Z tego względu w praktyce najczęściej wykorzystywane są algorytmy heurystyczne.

Problem komiwojażera 6 Algorytm droga do najbliższego sąsiada Założenia startowe Startujemy węźle a. Symbolem z oznaczamy długość drogi okrężnej. Przyjmujemy: k1 := a, z := 0. Iteracje Numery iteracji będziemy kojarzyć z liczbą odwiedzanych miejscowości, dlatego. rozpatrujemy iteracje j = 2,3,,n. Krok 1 Wskazujemy węzeł kj, dla którego c k c k, przy czymi k1 k j 1, k min,..., j j1, i j1 Czyli wskazujemy węzeł, który nie jest zakwalifikowany do drogi i leży najbliżej ostatniego z już uwzględnionych w drodze. Krok 2 Tworzymy ciąg [ k1,, kj ].

Problem komiwojażera 7 Krok 3 Przyjmujemy: z z c k j 1, k j Po n iteracjach do ciągu [ k1,, kn-1, kn ] dołączamy węzeł startowy k1, tworząc drogę okrężną H = [ k1,, kn-1, kn, k1 ], której długość wynosi: z z c kn, k1

Problem komiwojażera 8 KURIER MA DO ROZWIEZIENIA 9 PRZESYŁEK. ABY OBNIŻYĆ KOSZTY DOSTARCZENIA PRZESYŁKI MUSI ON ZMINIMALIZOWAĆ TRASĘ JAKĄ POKONA. NIESTETY ZE WZGLĘDU NA REMONTY DRÓG NIE KAŻDA TRASA ŁĄCZĄCA POSZCZEGÓLNYCH ODBIORCÓW JEST PRZEJEZDNA. ODLEGŁOŚCI MIĘDZY ODBIORCAMI I MAGAZYNEM ORAZ NIEPRZEJEZDNE TRASY PREZENTUJE TABELA: opracowali : Sylwia Głowacka, Kacper Mroczek, Kamil Ligenza Lp 0 1 2 3 4 5 6 7 8 9 Nazwa nowe rumunki spaliny wielkie koziebrody twarogi ruskie żebrak piekiełko potworów włochy bujny księże wągry 0 nowe rumunki X 201 54 242 203 123 152 111 149 96 1 spaliny wielkie 201 X 157 170 203 228 273 182 322 266 2 koziebrody 54 157 X 212 195 157 202 112 205 145 3 twarogi ruskie 242 170 212 X 100 188 239 162 323 260 4 żebrak 203 203 195 100 X 105 156 98 241 181 5 piekiełko 123 228 157 188 105 X 54 45 140 81 6 potworów 152 273 202 239 156 54 X 91 116 83 7 włochy 111 182 112 162 98 50 91 X 161 102 8 bujny księże 149 322 205 323 241 116 161 X 77 9 wągry 96 266 145 260 181 81 83 102 77 X - trasa nieprzejezdna

Problem komiwojażera 9 - najbliższy, nieodwiedzony wcześniej sąsiad - odbiorca u którego był już kurier Lp 0 1 2 3 4 5 6 7 8 9 Nazwa nowe rumunki spaliny wielkie koziebrody twarogi ruskie żebrak piekiełko potworów włochy bujny księże wągry 0 nowe rumunki X 201 54 242 203 123 152 111 149 96 H : 0 2 Lp 0 1 2 3 4 5 6 7 8 9 Nazwa nowe rumunki spaliny wielkie koziebrody twarogi ruskie żebrak piekiełko potworów włochy bujny księże wągry 2 koziebrody 54 157 X 212 195 157 202 112 205 145 H : 2 7 Lp 0 1 2 3 4 5 6 7 8 9 Nazwa nowe rumunki spaliny wielkie koziebrody twarogi ruskie żebrak piekiełko potworów włochy bujny księże wągry 7 włochy 111 182 112 162 98 50 91 X 161 102 H : 7 5

Problem komiwojażera 10 Lp 0 1 2 3 4 5 6 7 8 9 Nazwa H : 5 6 nowe rumunki spaliny wielkie koziebrody twarogi ruskie żebrak piekiełko potworów włochy bujny księże wągry 5 piekiełko 123 228 157 188 105 X 54 45 140 81 Lp 0 1 2 3 4 5 6 7 8 9 Nazwa nowe rumunki spaliny wielkie koziebrody twarogi ruskie żebrak piekiełko potworów włochy bujny księże wągry 6 potworów 152 273 202 239 156 54 X 91 116 83 H : 6 9 Lp 0 1 2 3 4 5 6 7 8 9 Nazwa nowe rumunki spaliny wielkie koziebrody twarogi ruskie żebrak piekiełko potworów włochy bujny księże wągry 9 wągry 96 266 145 260 181 81 83 102 77 X H : 9 8

Problem komiwojażera 11 Lp 0 1 2 3 4 5 6 7 8 9 Nazwa nowe rumunki spaliny wielkie koziebrody twarogi ruskie żebrak piekiełko potworów włochy bujny księże wągry 8 bujny księże 149 322 205 323 241 140 116 161 X 77 H : 8 4 Lp 0 1 2 3 4 5 6 7 8 9 Nazwa nowe rumunki spaliny wielkie koziebrody twarogi ruskie żebrak piekiełko potworów włochy bujny księże wągry 4 żebrak 203 203 195 100 X 105 156 98 241 181 H : 4 3 Lp 0 1 2 3 4 5 6 7 8 9 Nazwa nowe rumunki spaliny wielkie koziebrody twarogi ruskie żebrak piekiełko potworów włochy bujny księże wągry 3 twarogi ruskie 242 170 212 X 100 188 239 162 323 260 H : 3 1

Problem komiwojażera 12 Lp 0 1 2 3 4 5 6 7 8 9 Nazwa nowe rumunki spaliny wielkie koziebrody twarogi ruskie żebrak piekiełko potworów włochy bujny księże wągry 1 spaliny wielkie 201 X 157 170 203 228 273 182 322 266 H : 1 0 ODPOWIEDŹ: H = 0 2 7 5 6 9 8 4 3 1 0 T = 54 + 112 + 50 + 54 + 83 + 77 + 241 + 100 + 170 + 201 = 1142

Postępując zgodnie z zasadami wyznaczania najbliższego sąsiada wyznaczamy kolejno w wierszach zaczynając od wiersza 1: - W wierszu 1 : węzeł 3 czas 78 - W wierszu 3 : węzeł 5 czas 66 Problem komiwojażera 10 2 Lp. 1 2 3 4 5 Nazwa Wrocław Wałbrzych Legnica Poznań Jelenia Góra 1 Wrocław 83 78 198 131 2 Wałbrzych 83 81 63 3 Legnica 78 81 277 66 4 Poznań 198 277 288 5 Jelenia Góra 131 63 66 288 - W wierszu 5 : węzeł 4 czas 288,nie można wybrać 2 bo nie ma z niego dojazdu do 4, ale z 4 nie możliwy jest także dojazd do 2. Należy postępowanie zacząć od początku biorąc pod uwagę, że najgorszy dojazd jest do 2 i 4 - W wierszu 1 : węzeł 3 czas 78 - W wierszu 3 : węzeł 2 czas 81 - W wierszu 2 : węzeł 5 czas 63 - W wierszu 5 : węzeł 4 - czas 288 - W wierszu 4 : węzeł 1 - czas 198 Łączny czas przejazdu 708

Problem komiwojażera 11 2 Drugi wariant drogi okrężnej W wierszu 1 : węzeł 3 czas 78 W wierszu 3 : węzeł 4 czas 277 W wierszu 4 : węzeł 5 - czas 288 W wierszu 5 : węzeł 2 - czas 63 W wierszu 2 : węzeł 1 czas 83 Łączny czas przejazdu 789 Trzeci wariant drogi okrężnej: W wierszu 1 : węzeł 2 czas 83 W wierszu 2 : węzeł 5 czas 63 W wierszu 5 : węzeł 3 - czas 66 W wierszu 3: węzeł 4 - czas 277 W wierszu 4 : węzeł 1 czas 198 Łączny czas przejazdu 687

Problem komiwojażera 12 2 4 Poznań Jelenia Góra 5 3 Legnica 1 Wrocław 2 Wałbrzych

Problem komiwojażera 13 2 Jak widać algorytmu nie da się zawsze zastosować nie odchodząc od wcześniej przedstawionych reguł postępowania. Wszystko zależy od konfiguracji połączeń. Dlatego należy pamiętać, że stosując algorytmy heurystyczne nie zawsze otrzymujemy rozwiązanie optymalne ale jedynie dopuszczalne.

Problem komiwojażera 14 Algorytm sukcesywne dołączanie węzłów. Dla z góry zadanego węzła startowego a należy już na starcie wybrać inny węzeł b i utworzyć początkową trasę z a do b i powrotem: [a,b,a]. W trakcie postępowania będziemy sukcesywnie modyfikować tę drogę przez dołączanie nowych węzłów. Wybór nowego węzła nie jest jednoznacznie określony, ale korzystnie jest stosować następująca regułę: Najmniejsza z odległości dołączanego węzła do wcześniej określonej drogi powinna. być możliwie największa. Przyjmujemy zatem: a węzeł startowy, b węzeł najbardziej oddalony od a, z określona długość okrężnej drogi; w iteracja pośrednich drogi częściowej, H cykl węzłów tworzących drogę okrężną; w iteracjach pośrednich jest to droga częściowa

Problem komiwojażera 15 Założenia startowe Przyjmujemy: k k 1, k2, k1, z k 1 k c 2 k 2 1 1 a, k2 b, H c k Iteracje Numery iteracji kojarzyć będziemy z liczbą odwiedzonych miejscowości, dlatego. rozpatrujemy iteracje j = 3,,n. Przyjmijmy, że w iteracji (j-1) otrzymaliśmy częściową. drogę okrężną : H k1, k2,..., k j 1, k j o długości z. Ze względu na stosowane dalej wzory ostatni z węzłów jest oznaczony przez kj, a w rzeczywistości jest nim węzeł k1.

Problem komiwojażera 16 W każdej iteracji należy wskazać, który z nie uwzględnionych jeszcze węzłów powinien być dołączony i rozstrzygnąć, między którymi węzłami istniejącej trasy powinien być Dołączony. Krok 1 Dla każdego węzła p k1, k2,, kj-1 obliczamy : d p min ck p, ck p,..., c 1 1 2 k j p Krok 2 Jako węzeł i, który ma być dołączony do drogi wybieramy ten, dla którego: d i max p d p

Problem komiwojażera 17 Krok 3 Mając wybrany węzeł i musimy rozstrzygnąć, między które węzły drogi H wstawić ten węzeł. W nowej drodze pojawiają się krawędzie [kt, i] oraz [i, kt+1 ] natomiast wypada z niej krawędź [kt, kt+1 ] i Ckti Cikt+1 k1 kt Kt+1 k1 Cktkt+1

Dołączenie nowych odcinków drogi powoduje zmianę jej długości. Wielkość tej zmiany oznaczamy symbolem st i obliczamy następująco : Jesteśmy zainteresowani takim rozwiązaniem, które będzie powodowało najmniejszy przyrost długości drogi, dlatego postępujemy zgodnie z następującym kryterium: Krok 4 Tworzymy nową częściową trasę 1 1 t t t t k k ik i k t c c c s 1 1 1 min1 1,..., t t h h t t k k ik i k j h ik i k t c c c c c s j t t k k i k k H,...,,,,..., 1 1 Problem komiwojażera 18

Problem komiwojażera 19 Krok 5 Sprawdzamy czy zostały uwzględnione wszystkie węzły. Jeżeli nie to przechodzimy do następnej iteracji. Jeżeli tak wyznaczanie trasy komiwojażera kończy się. Otrzymujemy drogę okrężną, która jest cyklem Hamiltona H k 1 kn,,..., k 1

Problem komiwojażera 20 opracowali : Sylwia Głowacka, Kacper Mroczek, Kamil Ligenza Lp 0 1 2 3 4 5 6 7 8 9 Nazwa nowe rumunki spaliny wielkie koziebrody twarogi ruskie żebrak piekiełko potworów włochy bujny księże wągry 0 nowe rumunki X 201 54 242 203 123 152 111 149 96 spaliny wielkie - NAJDŁUŻSZA PRZEJEZDNA TRASA W OBIE STRONY, MIĘDZY MAGAZYNEM A ODBIORCĄ H=[0, 1, 0] T 1 =402 ITERACJA 1 p=2 r 1 2= min[c 02, c 12 ]= min[54, 157]=54 p=3 r 1 3= min[c 03, c 13 ]= min[10.000, 170]=170 p=4 r 1 4= min[c 04, c 14 ]= min[10.000,203]=203 p=5 r 1 5= min[c 05, c 15 ]= min[123, 10.000]=123 p=6 r 1 6= min[c 06, c 16 ]= min[152, 273]=152 p=7 r 1 7= min[c 07, c 17 ]= min[111, 10.000]=111 p=8 r 1 8= min[c 08, c 18 ]= min[149, 10.000]=149 p=9 r 1 9= min[c 09, c 19 ]= min[96, 10.000]=96 max r 1 i = r 1 4=203

Problem komiwojażera 21 s 1 0= c 04 + c 41 - c 01 =10.000 + 203-201=10.002 s 1 1= c 14 + c 40 - c 10 = 203 + 10.000-201=10.002 H= [0, 1, 4, 0] T 2 =201 + 203 + 10.000= T1 + s 1 1= 10.404

Problem komiwojażera 22 ITERACJA 2 p=2 r 2 2= min[c 02, c 12, c 42 ]= min[54, 157, 195]=54 p=3 r 2 3= min[c 03, c 13, c 42 ]= min[10.000, 170, 100]=100 p=5 r 2 5= min[c 05, c 15, c 42 ]= min[123, 10.000, 105]=105 p=6 r 2 6= min[c 06, c 16, c 42 ]= min[152, 273, 156]=152 p=7 r 2 7= min[c 07, c 17, c 42 ]= min[111, 10.000, 10.000]=111 p=8 r 2 8= min[c 08, c 18, c 42 ]= min[149, 10.000, 241]=149 p=9 r 2 9= min[c 09, c 19, c 42 ]= min[96, 10.000, 181]=96 max r 2 i = r 2 6=152

Problem komiwojażera 23 s 2 0= c 06 + c 16 - c 01 =152 + 273-201=224 s 2 1= c 16 + c 64 - c 14 = 273 + 156-203=226 s 2 4= c 46 + c 60 - c 40 = 156 + 152 10.000=-9692 H= [0, 1, 4, 6, 0] T 3 =201 + 203 + 156 + 152 = T 2 + s 2 4= 712

Problem komiwojażera 24 ITERACJA 3 p=2 r 3 2= min[c 02, c 12, c 42, c 62 ]= min[54, 157, 195, 10.000]=54 p=3 r 3 3= min[c 03, c 13, c 43, c 63 ]= min[10.000, 170, 100, 239]=100 p=5 r 3 5= min[c 05, c 15, c 45, c 65 ]= min[123, 10.000, 105, 54]=54 p=7 r 3 7= min[c 07, c 17, c 47, c 67 ]= min[111, 10.000, 10.000, 91]=91 p=8 r 3 8= min[c 08, c 18, c 48, c 68 ]= min[149, 10.000, 241, 116]=111 p=9 r 3 9= min[c 09, c 19, c 49, c 69 ]= min[96, 10.000, 181, 83]=83 max r 3 i = r 3 8=111

Problem komiwojażera 25 s 3 0= c 08 + c 18 - c 01 =149 + 10.000-201= 9.948 s 3 1= c 18 + c 84 - c 14 = 10.000 + 241 203 = 10.038 s 3 4= c 48 + c 86 - c 46 = 241 + 116 156 = 201 s 3 6= c 68 + c 80 - c 60 = 116 + 148 152 = 113 H= [0, 1, 4, 6, 8, 0] T 4 =201 + 203 + 156 + 116 + 149 = T 3 + s 3 6= 825

Problem komiwojażera 26 ITERACJA 4 p=2 r 4 2= min[c 02, c 12, c 42, c 62, c 82 ]= min[54, 157, 195, 10.000, 205]=54 p=3 r 4 3= min[c 03, c 13, c 43, c 63, c 83 ]= min[10.000, 170, 100, 239, 323]=100 p=5 r 4 5= min[c 05, c 15, c 45, c 65, c 85 ]= min[123, 10.000, 105, 54, 10.000]=54 p=7 r 4 7= min[c 07, c 17, c 47, c 67, c 87 ]= min[111, 10.000, 10.000, 91, 161]=91 p=9 r 4 9= min[c 09, c 19, c 49, c 69, c 89 ]= min[96, 10.000, 181, 83, 77]=77 max r 4 i = r 4 3=100

Problem komiwojażera 27 s 4 0= c 03 + c 31 - c 01 =10.000 + 170-201=9.969 s 4 1= c 13 + c 34 - c 14 = 170 + 100-203=67 s 4 4= c 43 + c 36 - c 46 = 100 + 239 156=183 s 4 6= c 63 + c 38 - c 68 = 239 + 323 116=446 s 4 8= c 63 + c 30 - c 80 = 323 + 10.000 149=10.174 H= [0, 1, 3, 4, 6, 8, 0] T 5 = 201 + 170 + 100 + 156 + 116 + 149 =T 4 + s 4 1 = 892

Problem komiwojażera 27 ITERACJA 5 p=2 r 5 2= min[c 02, c 12, c 32, c 42, c 62, c 82 ]= min[54, 157, 212, 195, 10.000, 205] = 54 p=5 r 5 5= min[c 05, c 15, c 35, c 45, c 65, c 85 ]= min[123, 10.000, 188, 105, 54, 10.000] = 54 p=7 r 5 7= min[c 07, c 17, c 37, c 47, c 67, c 87 ]= min[111, 10.000, 50, 10.000, 91, 161] = 50 p=9 r 5 9= min[c 09, c 19,c 39, c 49, c 69, c 89 ]= min[96, 10.000, 10.000, 181, 83, 77] = 77 max r 5 i = r 5 9=77

Problem komiwojażera 27 s 5 0= c 09 + c 91 - c 01 =96 + 10.000-201=9.895 s 5 1= c 19 + c 93 - c 13 = 10.000 + 260-170=10.090 s 5 3= c 39 + c 94 - c 34 = 260 + 181 100=341 s 5 4= c 49 + c 96 - c 46 = 181 + 83 156=108 s 5 6= c 69 + c 98 - c 68 = 83 + 77 116=44 s 5 8= c 69 + c 90 - c 80 = 77 + 96 149=24 H= [0, 1, 3, 4, 6, 8, 9, 0] T 6 = 201 + 170 + 100 + 156 + 116 + 77 + 96 =T 5 + s 5 8= 916

Problem komiwojażera 28 ITERACJA 6 p=2 r 6 2= min[c 02, c 12, c 32, c 42, c 62, c 82, c 92 ]= min[54, 157, 212, 195, 10.000, 205, 145]=54 p=5 r 6 5= min[c 05, c 15, c 35, c 45, c 65, c 85, c 95 ]= min[123, 10.000, 188, 105, 54, 10.000, 10.000]=54 p=7 r 6 7= min[c 07, c 17, c 37, c 47, c 67, c 87, c 97 ]= min[111, 10.000, 50, 10.000, 91, 161, 102]=50 max r 6 i = r 6 2=r 6 5=54

Problem komiwojażera 29 s 6 0= c 02 + c 21 - c 01 =54 + 157-208=10 s 6 1= c 12 + c 23 - c 13 = 157 + 212-170=199 s 6 3= c 32 + c 24 c 34 = 212 +195-100=307 s 6 4= c 42 + c 26 - c 46 = 195 + 10.000 156=10.039 s 6 6= c 62 + c 28 - c 68 = 10.000 + 205 116=10.089 s 6 8= c 82 + c 29 - c 89 = 205 + 145 77=273 s 6 9= c 92 + c 20 - c 90 = 145 + 54 96=103 H= [0, 2, 1, 3, 4, 6, 8, 9, 0] T 7 = 54 + 157 + 170 + 100 + 156 + 116 + 77 + 96 = T 6 + s 6 0 = 926

Problem komiwojażera 30 ITERACJA 7 p=5 r 7 5= min[c 05, c 25, c 15, c 35, c 45, c 65, c 85, c 95 ]= min[123, 157, 10.000, 188, 105, 54, 10.000, 10.000]=54 p=7 r 7 7= min[c 07, c 27, c 17, c 37, c 47, c 67, c 87, c 97 ]= min[111, 112, 10.000, 50, 10.000, 91, 161, 102]=50 max r 7 i = r 67 5=54

Problem komiwojażera 31 s 7 0= c 05 + c 52 - c 02 =123 + 157-54=226 s 7 2= c 15 + c 51 - c 21 = 157 + 10.000-157=10.000 s 7 1= c 15 + c 53 - c 13 = 10.000 + 188 170=10.018 s 7 3= c 35 + c 54 c 34 = 188 + 105 100=193 s 7 4= c 45 + c 56 - c 46 = 105 + 54 156=3 s 7 6= c 65 + c 58 - c 68 = 54 + 10.000 116=9.938 s 7 8= c 85 + c 59 - c 89 = 10.000 + 10.000 77=19.923 s 7 9= c 95 + c 50 - c 90 = 10.000 + 123 96= 10.027 H= [0, 2, 1, 3, 4, 5, 6, 8, 9, 0] T 8 = 54 + 157 + 170 + 100 + 105 + 54 + 116 + 77 + 96 = T 7 + s 7 4 = 929

Problem komiwojażera 32 s 8 0= c 07 + c 72 - c 02 =111 + 112-54=169 s 8 2= c 17 + c 71 - c 21 = 112 + 10.000-157=9.955 s 8 1= c 17 + c 73 - c 13 = 10.000 + 162 170=9.945 s 8 3= c 37 + c 74 c 34 = 162 + 10.000 100=10.062 s 8 4= c 47 + c 75 - c 45 = 10.000 + 50 105=9.945 s 8 5= c 57 + c 76 - c 56 = 50 + 91 54=87 s 8 6= c 67 + c 78 - c 68 = 91 + 161 116=136 s 8 8= c 87 + c 79 - c 89 = 161 + 102 77=186 s 7 9= c 97 + c 70 - c 90 = 102 + 111 96= 117 ODPOWIEDŹ: H= [0, 2, 1, 3, 4, 5, 7, 6, 8, 9, 0] T 9 = 54 + 157 + 170 + 100 + 105 + 50 + 91 + 116 + 77 + 96 = T 7 + s 8 5 = 1.016 0 2 1 3 4 5 7 6 8 9 0