Algorytmy genetyczne - uniwersalne podejście

0

Cześć, chciałem się was zapytać czy jest możliwe napisanie klasy do optymalizacji różnych problemów przy pomocy algorytmów genetycznych (AG) w taki sposób, by ta klasa mogła optymalizować dowolny problem? Tzn. by była uniwersalna?

Chodzi mi o to, że do tej pory spotkałem się z wykorzystaniem AG do konkretnego problemu np. gdy mamy do zoptymalizowania jakąś funkcję z parametrami to pod nią piszemy AG. Jak mamy problem komiwojażera to trzeba znowu pisać kolejny program. Jak mamy inną funkcję to kolejny AG...

Ja się zastanawiam jak można zorganizować obiektowo taką klasę do optymalizowania różnych innych obiektów.
Przykładowo jak stworzę sobie klasę sieci neuronowej to chciałbym ją zoptymalizować przy pomocy tej klasy AG.

Czy da się to jakoś zrobić? Jak Wy byście do tego podeszli?

0

Różne problemy wymagają różnego kodowania chromosomów i różnych funkcji celu. Dodatkowo w zależności od problemu typy selekcji, krzyżowania i mutacji (i ich prawdopodobieństwa) także muszą zostać dobrane inaczej (najcześciej doświadczalnie w celu znalezienia optymalnych wartości). Dlatego właśnie AG są najczęściej "skrajane" pod dane zadanie i ciężko może być stworzyć jeden uniwersalny "kombajn" :)

0
dbCooper napisał(a):

Różne problemy wymagają różnego kodowania chromosomów i różnych funkcji celu.
Funkcja/funktor przekazana z zewnątrz.

dbCooper napisał(a):

Dodatkowo w zależności od problemu typy selekcji, krzyżowania i mutacji (i ich prawdopodobieństwa) także muszą zostać dobrane inaczej (najcześciej doświadczalnie w celu znalezienia optymalnych wartości).
Parametry konstruktora.

dbCooper napisał(a):

Dlatego właśnie AG są najczęściej "skrajane" pod dane zadanie ...
Może, ale nie przez zawodowców

dbCooper napisał(a):

... i ciężko może być stworzyć jeden uniwersalny "kombajn" :)
Dla początkującego - owszem.

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