Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Регистрация Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Блоги > ZackMercury

Оценить эту запись

Генетический алгоритм. Вступление

Запись от ZackMercury размещена 13.06.2017 в 21:40

Что такое алгоритм, и как он может быть генетическим?

Алгоритм имеет несколько определений в разных областях применения, но в общем смысл сводится к следующему:
Цитата:
Алгоритм - последовательность элементарных действий для достижения какой-либо цели.
Теперь немного о упрощённой биологии.
Цитата:
Генетический алгоритм - это программа, которая, подобно эволюционным механизмам, создаёт поколение с случайными мутациями и следит за их поведением.
Тоесть, грубо говоря, генетический алгоритм изменяет алгоритм, пока тот не станет удовлетворять необходимым параметрам.

Где это можно применить?

Генетический алгоритм может применён для разных целей. В первую очередь, например:
  1. Машины могут учиться ходить.
    https://www.youtube.com/watch?v=uwz8JzrEwWY
    https://www.youtube.com/watch?v=pgaEE27nsQw
  2. Машины могут учиться сражаться
    https://www.youtube.com/watch?v=u2t77mQmJiY
  3. И выполнять любые другие действия
    https://www.youtube.com/watch?v=Gl3EjiVlz_4

Коротко и размыто о работе

Те особи, которые делают больше успехов, чем другие отбираются(2 особи, которые скрещиваются) и дают следующее потомство со случайными мутациями, и так происходит до тех пор, пока однажды цель не оказывается достигнутой.
Время жизни поколения зависит от конкретной окружающей среды, в которой проживает население. Если вы считаете, что особь сможет достичь цели за 3 секунды, пусть это будет 3 секунды.

Пример работы
Вначале алгоритм не знает ничего, он представляет собой просто рандомную последовательность движений в разные стороны, но шанс дать потомство больше у тех особей, которые путешествуют ближе к цели, чем остальные к концу жизни поколения.
Таким образом, спустя несколько десятков поколений найлучшая DNA наиболее близко приближается к цели.
DNA состоит из последовательности движений(влево-вправо-вверх-вниз, углы)

(справа кнопочка - развернуть)
Test.swf   (14.4 Кб)
Вложения
Тип файла: swf Test.swf (14.4 Кб, 239 просмотров)
Всего комментариев 3

Комментарии

Старый 14.06.2017 20:09 caseyryan вне форума
caseyryan
 
Аватар для caseyryan
Интересная тема. На исходники бы глянуть
Старый 14.06.2017 21:35 Psycho Tiger вне форума
Psycho Tiger
 
Аватар для Psycho Tiger
Полагаю, с каждым поколением растёт и цепь ДНК?
Старый 14.06.2017 21:45 ZackMercury вне форума
ZackMercury
 
Аватар для ZackMercury
В данном примере - нет, цепь всегда остаётся одной длины. Так как цепь представляет собой лишь последовательность движений, то при мутации одно движение заменяется на другое(например, влево-вправо вверх, вправо вверх-вниз).
 

 


Часовой пояс GMT +4, время: 01:33.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2019, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.