Program do n-hetmanów

0

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.

0
int main()
{
  return 0;
}

pomoglem zaczac. A teraz mozesz napsiac z czym dokladnie masz problem

0

@BudrysLP ale gdzie widzisz problem? Bo masz tu opisane dokładnie jak to masz zaimplementować przecież. W sumie w ogóle nie rozumiem jaki sens dawac takie zadanie studentom, skoro jedyna część która wymaga myslenia już została wykonana. Sam algorytm genetyczny jest przecież zawsze dokładnie taki sam, więc u ciebie wystarczy podstawić odpowiednią funkcję celu i operatory.
Algorytm działa tak:
0. Losowanie populacji początkowej

  1. Wybieranie najlepszych osobników do krzyżowania
  2. Mutowanie wybranych osobników
  3. Uzyskujemy w ten sposób nowy zestaw osobników (dzieci i mutanty) i powtarzamy kroki 1,2,3 aż nie trafimy na zadowalającego osobnika.
0

Tylko, że ja nie mam zielonego pojęcia o tym.
Nie jestem mocny w programowaniu.

0

Och poważnie? I tak nagle, ni z tego ni z owego ktoś ci to kazał napisać? Chciałbym żeby tak bylo, żeby ludzi na socjologii i pedagogice takich rzeczy uczyli, ale tak dobrze nie ma.

1

Nie lubię lenistwa, ale tyle mogę dać - masz gotowy algorytm gotowy do implementacji pod tym linkiem - http://www.mimuw.edu.pl/~zawado/WI/WyklWI.pdf

0

Hej. Daj namiary na siebie, mogę ci to napisać za drobną opłatą.

1 użytkowników online, w tym zalogowanych: 0, gości: 1