Применение генетических алгоритмов, Пример тривиальной реализации на C++ - Генетический алгоритм

Генетические алгоритмы применяются для решения следующих задач:

    1. Оптимизация функций 2. Оптимизация запросов в базах данных 3. Разнообразные задачи на графах (задача коммивояжера, раскраска, нахождение паросочетаний) 4. Настройка и обучение искусственной нейронной сети 5. Задачи компоновки 6. Составление расписаний 7. Игровые стратегии 8. Теория приближений 9. Искусственная жизнь 10. Биоинформатика (фолдинг белков)
Пример тривиальной реализации на C++

Поиск в одномерном пространстве, без скрещивания.

# include <iostream># include <algorithm># include <numeric> int main(){usingnamespace std;srand((unsigned)time(NULL));constint N =1000;int a[N];//заполняемнулямиfill(a, a+N, 0);for(;;){//мутация в случайную сторону каждого элемента:for(int i =0; i < N;++i)if(rand()%2 == 1)a[i]+=1;elsea[i]-=1;//теперь выбираем лучших, отсортировав по возрастанию...sort(a, a+N);//... и тогда лучшие окажутся во второй половине массива.//скопируем лучших в первую половину, куда они оставили потомство, а первые умерли:copy(a+N/2, a+N, a /*куда*/);//теперь посмотрим на среднее состояние популяции. Как видим, оно все лучше и лучше. cout<< accumulate(a, a+N, 0)/ N << endl;}}

Книги

    - Емельянов В. В., Курейчик В. В., Курейчик В. М. Теория и практика эволюционного моделирования. -- М: Физматлит, 2003. -- С. 432. -- ISBN 5-9221-0337-7 - Курейчик В. М., Лебедев Б. К., Лебедев О. К. Поисковая адаптация: теория и практика. -- М: Физматлит, 2006. -- С. 272. -- ISBN 5-9221-0749-6 - Гладков Л. А., Курейчик В. В., Курейчик В. М. Генетические алгоритмы: Учебное пособие. -- 2-е изд... -- М: Физматлит, 2006. -- С. 320. -- ISBN 5-9221-0510-8 - Гладков Л. А., Курейчик В. В, Курейчик В. М. и др. Биоинспирированные методы в оптимизации: монография. -- М: Физматлит, 2009. -- С. 384. -- ISBN 978-5-9221-1101-0 - Рутковская Д., Пилиньский М., Рутковский Л. Нейронные сети, генетические алгоритмы и нечеткие системы = Sieci neuronowe, algorytmy genetyczne i systemy rozmyte. -- 2-е изд... -- М: Горячая линия-Телеком, 2008. -- С. 452. -- ISBN 5-93517-103-1

Ссылки

    -Научные статьи по генетическим алгоритмам -Реализация генетического алгоритма для. NET Framework 2.0 -Проект CuberGA -- расширяемый framework для реализации генетических алгоритмов - Эволюционные вычисления - Генетические алгоритмы - Генетические алгоритмы - Решение Диофантова уравнения - Подборка статей по теме Генетические алгоритмы - Основные операции генетического алгоритма - Использование генетических алгоритмов в проблеме автоматического написания программ - Реализация генетических алгоритмов в среде MATLAB v6.12 - Сергей Николенко. Генетические алгоритмы (слайды) -- лекция № 4 из курса "Самообучающиеся системы" - geneticprogramming. us - Обзор методов эволюции нейронных сетей - Генерирование автоматов состояний с помощью ГА - Субботін С. О., Олійник А. О., Олійник О. О. Неітеративні, еволюційні та мультиагентні методи синтезу нечіткологічних і нейромережних моделей: Монографія / Під заг. ред. С. О. Субботіна. -- Запоріжжя: ЗНТУ, 2009. -- 375 с.(укр.) - A Field Guide to Genetic Programming. -- Lulu. com, freely available from the internet, 2008. -- ISBN 978-1-4092-0073-4 - Special Interest Group for Genetic and Evolutionary Computation (former ISGEC)(англ.) - JAGA (Java API for Genetic Algorithms) -- Extensible and pluggable open source API for implementing genetic algorithms and genetic programming applications in Java(англ.) - IlliGAL (Illinois Genetic Algorithms Laboratory) Home Page(англ.) - Evolutionary Computation Laboratory at George-Mason University(англ.) - GENITOR Research Group (CS, Colorado)(англ.) - Evolutionary and Adaptive Systems (EASy) at Sussex(англ.) - Genetic Algorithms Articles(англ.) - Evolutionary Algorithms Research Group at University of Dortmund(англ.) - Evolutionary Digest Archive(англ.) - GAUL: Genetic Algorithm Utility Library -- нетривиальная обобщенная свободная реализация GA(англ.) - Очень большая подборка статей по использованию генетических алгоритмов в задачах многокритериальной оптимизации(англ.) - Genetic Algorithms in Ruby(англ.) - Lakhmi C. Jain; N. M. Martin Fusion of Neural Networks, Fuzzy Systems and Genetic Algorithms: Industrial Applications. -- CRC Press, CRC Press LLC, 1998

Похожие статьи




Применение генетических алгоритмов, Пример тривиальной реализации на C++ - Генетический алгоритм

Предыдущая | Следующая