kozik,projektowanie algorytmów,Zastosowanie algorytmu metaheurystycznego do rozwiązywania problemu n komiwojażerów sprawozdanie

background image

1. Wstęp.

Celem eksperymentu było zbadanie skuteczności algorytmu symulowanego

wyżarzania zastosowanego do rozwiązywania problemu n-komiwojażerów – należało n-
komiwojażerom przydzielić takie cykle, aby maksymalna z n dróg była najmniejsza.

2. Opis algorytmu.

Badany algorytm był oparty na losowym ruchu typu insert:

• Losujemy wierzchołek grafu, oraz miejsce w uporządkowanym zbiorze wierzchołków

tworzących drogi.

• Obliczamy jakie zmiany w długości dróg wprowadzi wylosowany ruch
• Jeżeli nowe rozwiązanie jest lepsze to wykonaj ten ruch
• W przeciwnym wypadku przyjmujemy wylosowane rozwiązanie z

prawdopodobieństwem określonym przez funkcję f(numer iteracji).

• Kończymy algorytm po określonej ilości iteracji.


W moim eksperymencie sprawdziłem działanie programu dla następujących funkcji

wyznaczających prawdopodobieństwo przyjęcie gorszego rozwiązania:

• funkcja ekspotencjalnie malejąca (parametrem jest współczynnik w wykładniku)
• funkcja liniowo malejąca (parametrem jest współczynnik kierunkowy prostej)
• funkcja do pewnego momentu stała, następnie gwałtownie opadająca (parametrem jest

przy której iteracji funkcja zaczyna opadać)

Wykres 1: Stosowane podczas symulacji funkcje prawdopodobieństwa (przykładowe parametry).

Każda z funkcji przyjmowała wartości poprawnie określające prawdopodobieństwo,

czyli przedział [0,1]. Losowanie z prawdopodobieństwem zaimplementowałem losując liczbę
z przedziału [0,1] i sprawdzając czy jest ona większa od wartości funkcji f dla aktualnego
numeru iteracji.

background image

3. Badanie kształtowania się rozwiązania w zależności od ilości iteracji dla różnych

parametrów funkcji prawdopodobieństwa.

Wylosowałem po 3 różne instancje dla każdej z funkcji określającej

prawdopodobieństwo oraz uruchomiłem 500 razy dla metodę insert() rejestrując wartość
kryterium, co 50 iteracji. Wyniki zostały zobrazowane na wykresach.

background image


Wykresy 2,3,4: Wartość kryterium w funkcji numeru iteracji dla ekspotencjalnej funkcji
prawdopodobieństwa.

background image


Wykresy 5,6,7: Wartość kryterium w funkcji numeru iteracji dla liniowej funkcji
prawdopodobieństwa.



background image










background image


Wykresy 8,9,10: Wartość kryterium w funkcji numeru iteracji dla nieliniowo opadającej
funkcji prawdopodobieństwa.

4. Badanie kształtowania się rozwiązania w zależności od zastosowanej funkcji określającej

prawdopodobieństwo.

Następnie

przeprowadziłem

podobne

badania

lecz

dla

różnych

funkcji

prawdopodobieństwa w których przyjąłem stałe parametry (0,1 dla eksponenty i f. liniowej
oraz 50 dla funkcji opadającej). Wyniki również zostały zobrazowane na poniższych
wykresach.

background image


Wykresy 11, 12, 13: Kształtowanie się rozwiązania dla różnych funkcji prawdopodobieństwa
(porównanie skuteczności).

5. Porównanie algorytmu z optymalnym algorytmem rozwiązywania problemu

komiwojażera.

Do

porównania

skuteczności

algorytmów

zastosowałem

metodę

analizy

eksperymentalnej. Liczyłem średnie błędy względne 100 instancji dla ilości miast w zakresie
od 4 do 14. Zależności przedstawione zostały na wykresie.


background image


Wykres 14: Zależność względnych błędów algorytmu metaheurystycznego od ilości miast.






























Wyszukiwarka

Podobne podstrony:
Prońko, Rafał Zastosowanie klasycznego algorytmu genetycznego do rozwiązania zbilansowanego zagadni
kozik,projektowanie algorytmów,ALGORYTMY PRZYBLIŻONE
kozik,projektowanie algorytmów,TEORIA ZŁOŻONOŚCI OBLICZENIOWEJ
kozik,projektowanie algorytmów,ALGORYTMY SORTOWANIA
kozik,projektowanie algorytmów,TEORIA GRAFÓW
kozik,projektowanie algorytmów,STRUKTURY?NYCH
kozik,projektowanie algorytmów,METODY SZTUCZNEJ INTELIG1180/6343
Refleksje metodologiczne z praktycznego zastosowania metod jakościowych do analizy problemów życiowy
k balinska projektowanie algorytmow i struktur danych
Simulink i jego zastosowanie do rozwiązywania równań nieliniowych

więcej podobnych podstron