Andrzej Borucki programista
Temat: Wydajność algorytmów genetycznych
Chciałem znaleźć minimum funkcji kilku zmiennych. Interesowały mnie metody bezgradientowe.I dla takiego zadania postanowiłem sprawdzić to algorytmem genetycznym. Skończyło się porażką. Zainicjowałem pierwsze pokolenie losowymi punktami, rozmnażały się te osobniki dla których wartość funkcji była mniejsza. Okazało się że osobniki dążyły do jednego punktu, ale nie rozwiązania ale najlepszego początkowego osobnika. No tak, nie miałem jeszcze zaimplementowanej mutacji ale co to by dało?Z tego przykładu wydaje mi się że algorytmy genetyczne to nic innego jak losowe błądzenie,taki bogosearch. Zamiast kolejnych pokoleń mogli byśmy próbkować w kilku miejscach, potem wybrać najlepsze miejsce, losowo próbkować w pobliżu itd. w dosyć wielu miejscach odległych blisko i daleko aby się przybliżyć (co jest czasochłonne). Gdybyśmy szukali tylko blisko, wymagałoby to dużo kroków a gdy daleko to przeskoczylibyśmy. Nie ma czegoś takiego jak dostosowanie kroków, najpierw idziemy w dobrym kierunku dużymi, potem coraz mniejszymi krokami. Algorytm genetyczny to raczej bardzo nieefektywne losowe błądzenie.
Czy jest jakaś implementacja lub rodzaj problemu dla którego algorytmy genetyczne się sprawdzają?