Witamy na forum PC Format Zapraszamy do REJESTRACJI


Użytkownicy przeglądający ten wątek: 1 gości

Algorytm Genetyczny C

#1
Algorytm Genetyczny C
Witam wszystkich, aktualnie walczę ze zrozumieniem algorytmu genetycznego i trafiłem na taki temat: LINK  i mniej więcej jakoś tam osoba wyjaśniła na czym polega tylko dalej nie do końca rozumiem, skoro algorytm musi wybrać najlepsze osobniki to jakoś musi chyba porównać by wiedział co jest najlepsze? A z wybieraniu części osobników to poprostu wybiera sobie polowe wylosowanych liczb i robi z nich pary i w tych parach powstanie potomek czyli średnia tych par? A z mutowaniem czyli od czasu do czasu zrobić parę gdzie jeden element będzie wybrany z powstałej puli a drugi całkowicie losowy? Da się ten algorytm całkowicie łopatologicznie wytłumaczyć? Bardzo proszę o pomoc w zrozumieniu.
 System operacyjny: windows_ten Przeglądarka: firefox
#2
RE: Algorytm Genetyczny C
Witam, żeby wybrać najlepszego kandydata, potrzebna jest jakaś funkcja oceniająca. Nawet gdyby przyjąć selekcję opartą na ruletce, to jednak lepsi kandydaci powinni mieć większe prawdopodobieństwo wylosowania niż ci gorsi. Można też zawsze wybierać n najlepszych osobników (selekcja deterministyczna) i z nich tworzyć potomków za pomocą krzyżowania. Mutant nie jest całkowicie losowym obiektem, tylko lekko odstającym od rodzica.
 System operacyjny: linux_ubuntu Przeglądarka: firefox
#3
RE: Algorytm Genetyczny C
Czyli to będzie mniej więcej tak?:
Zakładając, że problemem jest by kupić jak największą liczbę produktów, nie przekraczając budżetu (nie wiem, może problem jest bez sensu dla ag ale nie umiem nic innego wymyśleć, nawet problem konwojażera mam wrażenie, że można rozwiązać bez algorytmu genetycznego poprzez porównanie odległości każdej możliwej trasy).
Każdy produkt jest elementem tablicy o nazwie produkt[i] o wartości jego ceny.
Komputer losowo wybiera każdy element np produkt[1] produkt [6] produkt [14] produkt[8]...
Robi pary np. produkt[1][6] produkt[14][8] i ich wartość to suma cen tych par a potem porównuje do dostępnego budżetu i ten cały zbiór jest przypisywany do tablicy zbior[y] i tak na okrągło i wygrywa ten zbior[y] który będzie miał najmniejsza różnice od budżetu a zbiory przekraczające sa eliminowane? A mutacje jak miałbym tu zastosować i jaki tego cel jest?
Pewnie totalnie bez sensu to co napisałem ale dalej nie mogę zrozumieć logicznego zastosowania algorytmu. Najlepiej bym ogólnie pomijał wiedze o ag bo to o czym mam pisać nie może mieć takiego zamulacza procesora ale profesor woli nam sprawiać problemy odrazu takimi rzeczami, zamiast nas porządnie wyuczyć języka programowania by później takie problemy rozwiązywać znacznie sprawniej.
 System operacyjny: windows_ten Przeglądarka: firefox
#4
RE: Algorytm Genetyczny C
W przypadku problemu komiwojażera liczba wszystkich tras jest ograniczona z góry przez wartość n!, gdzie n to liczba miast, zatem w praktyce nie da się zbadać wszystkich możliwych tras Wesoły
Co do problemu zakupów - tworzysz sobie na początku jakąś pulę genów (reprezentujących koszyk z produktami). Krzyżowanie polegałoby na przejęciu części produktów od obu rodziców, a mutacja polegałaby np. na zastąpieniu jakiegoś produktu (lub grupy produktów) innym.
 System operacyjny: linux_ubuntu Przeglądarka: firefox
Programy: Polecane / Nowe / Inne




Podobne wątki (Algorytm Genetyczny C)
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Mały algorytm bartek164 3 10916 25.12.2017, 10:41
Ostatni post: Szachista
  Algorytm znajdowania minimum w ciągu - prośba o pomoc majster69 3 8346 18.10.2015, 11:20
Ostatni post: majster69
  Algorytm - olimpiada informatyczna bswigon 1 8448 17.08.2015, 19:44
Ostatni post: Szachista

Skocz do:


Wybrane wątki (Algorytm Genetyczny C)
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
Ściana Klika pytań plz pomóżcie Samek2222 1 5432 22.03.2020 18:59
Ostatni post: Ajgor
  Pytanie - programowanie batch [cmd] Max23 0 5377 20.03.2020 01:03
Ostatni post: Max23
  Oczekiwanie na Akcje przycisku wanhelsing 8 7548 01.03.2020 19:44
Ostatni post: Szachista
Toungue Wybór szkoły średniej przez potencjalnego programistę Zikinan 1 7208 09.02.2020 15:58
Ostatni post: dzikuu86
  Poszukuję pomysłu na prosty program ;) janciu96 5 16699 13.12.2019 23:32
Ostatni post: Ajgor
  Programowanie Batch (CMD) Informatyk2019 0 7939 11.12.2019 18:30
Ostatni post: Informatyk2019
  [JavaScript] Znajdowanie przedziału czasu rafal12999 0 3697 10.12.2019 17:58
Ostatni post: rafal12999
  Przekazywanie wskaźnika przez referencję w Qt Trojan3000 3 16048 10.12.2019 13:16
Ostatni post: Ajgor
  Proszę o pomoc w uzupełnieniu ankiety dt. Zawodu Programisty MaleMonki 0 4114 17.11.2019 12:47
Ostatni post: MaleMonki
  Spring framework – jakie strony polecacie do nauki? olek23 5 9669 15.11.2019 15:57
Ostatni post: Alsenas
  Programowanie windy (problem) w C++ mysza2323 2 8988 06.11.2019 23:04
Ostatni post: mysza2323
  Programy w C ~Anonim 1 9210 22.10.2019 17:48
Ostatni post: Szachista
  Wyświetlanie informacji z bazy danych na stronie www PitPlay 1 9620 16.09.2019 11:18
Ostatni post: Ajgor
  Błąd przy uruchamianiu programu w Java z wiersza poleceń Physicist 3 4798 30.08.2019 14:16
Ostatni post: Physicist
  Python z wiersza poleceń Physicist 15 25735 21.08.2019 20:14
Ostatni post: Physicist