Świat przyrody i algorytmy genetyczne

DNA-abstractPodobnie jak w przypadku sieci neuronowych, algorytmy genetyczne mają swoje korzenie w przyrodzie. Podpatrywanie świata rzeczywistego doprowadziło do wykorzystania jego praw w metodach sztucznej inteligencji.

Przy budowie algorytmów genetycznych wykorzystano takie mechanizmy świata przyrody jak:

  • Gen - pojedynczy element odzwierciedlający pewną cechę;
  • Chromosom - uporządkowany ciąg genów (ciąg kodowy reprezentujący pewne rozwiązanie);
  • Allen - wartość danego genu;
  • Locus - miejsce położenia genu w chromosomie;
  • Genotyp - to zestaw genów charakteryzujący pojedynczego osobnika, warunkujących jego właściwości dziedziczne. W algorytmach genetycznych przyjmuje się zazwyczaj, że mamy do czynienia z osobnikami haploidalnymi, tzn. osobnikami wyposażonymi w pojedynczy chromosom;
  • Populacja to zbiór osobników o określonej liczebności;
  • Pokolenie - nowo utworzona populacja będąca wynikiem ewolucji;
  • Selekcja – wybór na ogół najlepiej przystosowanych osobników, do tzw. populacji rodzicielskiej, złożonej z chromosomów biorących udział w rekombinacji genów ; Selekcja służy do wyboru populacji najlepszych rozwiązań problemu. Są one w każdym następnym pokoleniu reprodukowane.
  • Wymieranie - w przypadku algorytmów genetycznych, służy do eliminacji w każdym pokoleniu złych rozwiązań. Aby rozróżnić rozwiązania dobre od złych używa się tzw. funkcji celu. W każdej następnej populacji znajdą się osobniki lepsze, zgodnie z funkcją celu. Osobniki gorsze podlegają eliminacji (wymieraniu).
  • Przetrwanie osobników najlepiej przystosowanych;
  • Reprodukcja

podstawowe pojęcia związane z populacją


Najczęściej działanie algorytmu genetycznego przebiega następująco:

  • Losowana jest pewna populacja początkowa;
  • Populacja poddawana jest ocenie (selekcja). Najlepiej przystosowane osobniki biorą udział w procesie reprodukcji
  • Genotypy najlepszych osobników są ze sobą kojarzone poprzez złączanie genotypów rodziców (krzyżowanie);
  • Przeprowadzana jest mutacja, czyli wprowadzenie drobnych losowych zmian;
  • Rodzi się drugie pokolenie i algorytm powraca do kroku drugiego, jeżeli nie znaleziono dostatecznie dobrego rozwiązania. W przeciwnym wypadku uzyskujemy wynik.

 

Uważasz, że artykuł był ciekawy i chcesz otrzymywać powiadomienia o moich kolejnych wpisach lub projektach?
Wpisz swoje imię oraz adres e-mail a następnie kliknij "ZAPISZ MNIE"

Twoje imię:


Adres email:



Polecam w HELIONIE:

Zbiory rozmyte
Algorytmy genetyczne

Podobne wpisy

 

    By accepting you will be accessing a service provided by a third-party external to https://www.slawop.net/

    Najnowsze komentarze

    Gość - Studio Jak wybrać hosting dla Joomla!?
    13 wrzesień 2019
    Warto jeszcze dopisać punkt, żeby przy wyborze wybrać panel między DirectAdmin/cPanel. Niektóre hostingi mają swoje własne rozwiązania - czasami bardzo specyficzne, co niekoniecznie jest dobrą rzeczą
    Gość - Marek Szyfrowanie symetryczne a niesymetryczne
    09 czerwiec 2019
    "Klucz przekazany do publicznej wiadomości, nazywany jest kluczem publicznym lub jawnym. Może on być stosowany do szyfrowania lub deszyfrowania informacji otrzymanych od osoby, która go wygenerowała. ...
    Gość - Marek Tworzenie szablonów dla Joomla! Helix Ultimate
    10 maj 2019
    Witam, napotkałem problem pojawiający się przy zmianie kolorów tła czy czcionek oraz importowaniem ustawień. W pierwszym przypadku, po zmianie kolorów i ich zapisaniem, panel podglądu strony przeładow...
    Gość - Andy SSL i Joomla! w Smarthost
    03 styczeń 2019
    Dzięki, jak zwykle dobra robota! Warto dodać, że instalacja certyfikatu SSL nie zapewnia bezpieczeństwa transmisji danych. To jest możliwe po wdrożeniu polityki bezpieczeństwa w firmie. Co do SSL - to...
    Gość - Henryk Jak utworzyć menu poziome w szablonie protostar?
    02 styczeń 2019
    Robię punkt po punkcie i nie wyświetla się poziome menu Nie wiem gdzie tkwi błąd i co robię źle?Jeśli to możliwe to proszę o pomocps. posiadam książkę "Joomla! 3x" i tu również niema pomocy Pozdrawiam...