Главная | Список обновлений | Содержание | Настройки | Помощь | |
Эволюционный алгоритм – это всеохватывающий термин, используемый для описания компьютерных систем решения проблем, в которых в качестве ключевого элемента конструкции и исполнения используются вычислительные модели эволюционных процессов. Существует множество различных эволюционных алгоритмов. Основные из них: генетические алгоритмы (В.1.1), эволюционное программирование (В.1.2), эволюционные стратегии (В.1.3), классификаторы (В.1.4), генетическое программирование (В.1.5). Они все разделяют общую концепцию симуляции ЭВОЛЮЦИИ ИНДИВИДУАЛЬНЫХ структур, посредством процессов ОТБОРА, МУТАЦИИ и ВОСПРОИЗВОДСТВА. Поведение процессов опрделяется ОКРУЖЕНАЮЩЕЙ СРЕДОЙ индивидуальных структур и зависит от их текущих ХАРАКТЕРИСТИК.
Другими словами, эволюционные алгоритмы поддерживают ПОПУЛЯЦИИ структур, которые эволюционируют в соответствии с правилами ОТБОРА и другими операторами, которые называются «операторами поиска» (или ГЕНЕТИЧЕСКИМИ ОПЕРАТОРами), такие как РЕКОМБИНАЦИЯ и МУТАЦИЯ. Каждому ИНДИВИДУУМу популяции назначается значение его ПРИГОДНОСТи в ОКРУЖАЮЩЕЙ СРЕДЕ. ВОСПРОИЗВОДСТВО фокусирует внимание на индивидуумах с более высокими значениями пригодности, используя (ИСПОЛЬЗОВАНИЕ) доступную информацию об индивидуумах. Рокомбинация и мутация влияют на индивидуумов, предостовляя тем самым базовую эвристику для ИССЛЕДОВАНИЯ. Несмотря на свою простоту с точки зрения биолога, эти алгоритмы достаточно сложны, чтобы предоставить устойчивые и мощные адаптивные поисковые механизмы.
Псевдокод:
Algorithm EA is // Начальное время t := 0; // Инициализация обычно случайной популяции инивидуумов initpopulation P (t); // Оценка пригодности всех начальных индивидуумов популяции evaluate P (t); // Проверка критерия прекращения поиска (время, пригодность, и т.п.) while not done do // Увеличить счетчик времени t := t + 1; // Выбор суб-популяции для производства потомоков P' := selectparents P (t); // Рекомбинация «генов» выбранных родителей recombine P' (t); // Искажение спаренной популяции случайным образом mutate P' (t); // Переоценка новых значений пригодности популяции evaluate P' (t); // Отбор выживших индивидуумов по значению пригодности P := survive P,P' (t); od end EA.
Новости | Материалы | Справочник | Форум | Гостевая книга | Ссылки | О сайте | Copyright © 2001-2022, www.gotai.net |