Witam serdecznie.
Proszę o pomoc w napisaniu programu do n-hetmanów. Może ktoś z Was ma coś podobnego.
Problem
Rozwiązywany problem to n-hetmanów, gdzie n jest parametrem programu. Określa on wielkość szachownicy jak i liczbę hetmanów.
Algorytm
Rozwiązać problem stosując algorytm ewolucyjny.
Chromosom: wektor zawierający n wartości określających położenie hetmanów w poszczególnych kolumnach
Funkcja przystosowania: liczba atakujących się hetmanów (wartość funkcji 0 oznacza rozwiązanie)
operatory genetyczne: dowolne do wyboru w tym metoda selekcji, krzyżowania, mutacji.
Parametry programu
n: wielkość szachownicy
liczność populacji zakres od 10 do 100
prawdopodobieństwo krzyżowania zakres od 0,7 do 1
prawdopodobieństwo mutacji zakres od 0,01 do 0,2
liczba generacji
Warunek stopu (zatrzymania pętli)
Wartość funkcji przystosowania równa 0
Osiągnięcie założonej liczby iteracji (generacji)
Wynik
Najlepszy chromosom z populacji (taki, którego funkcja przystosowania ma najmniejszą wartość)
Wykres zmian wartości funkcji przystosowania dla najlepszego osobnika w populacji w generacjach.
Wykres średniego przystosowania populacji zmieniającego się w generacjach.
fasadin