2011-01-22 11 views
11

Robię projekt w ostatnim roku na temat algorytmów genetycznych - w szczególności typu Dawkins Weasel. Dokonałem wyboru w ruletce i wyboru turnieju, wciąż w celu ustalenia stanu stałego, ale nie jestem pewien, co to jest, a odniesienia, które znajduję w Internecie, są dość niejasne.Algorytm genetyczny - co to jest wybór stanu ustalonego?

Czy ktoś wie, w jaki sposób należy go wdrożyć? Wszelkie wskazówki byłyby świetne.

Wielkie dzięki.

Odpowiedz

19

Zazwyczaj przebieg algorytmu genetycznego dzieli się na generacje - każde pokolenie proces selekcji i reprodukcji zastępuje wszystkie (lub przynajmniej większość) populacji. W algorytmie genetycznym stanu ustalonego zastępujesz tylko kilka osobników na raz.

Użyj standardowej techniki selekcji, aby wybrać rodziców, aby wyprodukować te kilka potomstwa. Następnie losowo wybierz tę samą liczbę osobników, zabij je i zastąp je potomstwem (możesz wybrać osoby nieodpowiednie dla śmierci, ale może to zniszczyć różnorodność populacji w nietrywialnym problemie).

Należy oceniać kondycję tylko raz na osobę - po ocenieniu kondycji należy ją zapisać, a następnie ponownie wykorzystać w przyszłości. Protip: kiedy tworzona jest nowa osoba, oznacz ją jako nieocenioną, a następnie oceń ją za pierwszym razem, kiedy jest potrzebna (w ten sposób, jeśli osoba jest tworzona, a następnie losowo wybierana na śmierć przed użyciem, nie zużywasz czasu na ocenę jego sprawność).

Podstawowa realizacja powinna być dość prosta, ale można sprawdzić Essentials of Metaheuristics (strony 45-46, ebook dostępny bezpłatnie).