Реферат
Введение 3
1 Классический генетический алгоритм 4
1.1 Г енетические алгоритмы 4
1.2 Понятия генетических алгоритмов 5
1.3 Операторы алгоритма 7
1.4 Описание работы классического генетического алгоритма 9
2 Гендерный генетический алгоритм 17
2.1 Биологические особенности полового размножения 17
2.2 Структура гендерного генетического алгоритма 18
2.3 Проведение эксперимента 20
2.4 Реализация генетического алгоритма для решения поставленной задачи
в среде Visual Studio 22
2.5 Результаты начальных экспериментов, вывод и их сравнение 27
2.6 Результаты основных экспериментов, вывод и их сравнение 33
Заключение 40
Список использованных источников и литературы 41
ВВЕДЕНИЕ
Идея генетических алгоритмов возникла из-за желания создать в виде кода для компьютера алгоритм для решения трудоемких задач подобно эволюции в природе. Появление генетических алгоритмов можно объяснить необходимостью копирования и воссоздания развития живых организмов. В том числе попыткой промоделировать естественный отбор популяции или, другими словами, селекцию в эволюции вида.
В наше время перечень генетических алгоритмов практически приблизился к 10000 наименований и все еще растет. Несмотря на это, очень сложно понять для каких задач они применяются и чем определяются, способом описания смоделированных действий в популяциях или удобным поиском с возможностью решать задачи глобальной оптимизации.
Исследование основано на возможности изучить генетические алгоритмы как один из способов оптимизации, а также определить их эффективность и трудоемкость. Цель данной работы - экспериментально проверить гипотезу о том, что при разделении популяции на два пола в генетическом алгоритме оптимизации сложных многоэкстремальных функций, процесс эволюции пойдет быстрее.
Главным приложением для решения задачи была выбрана среда Visual Studio, потому что в данной среде присутствует большое количество функций и инструментов для моделирования задач.
Для выполнения цели исследования следует выполнить определенные задачи: промоделировать половые различия; провести эксперименты и набрать статистику; сравнить половую популяцию с бесполой с помощью оценки эффективности поиска экстремума; ввести в алгоритм выбора партнера для размножения конкуренцию среди самцов; реализовать программу с разными параметрами в фазах размножения для сравнения результатов работы генетического алгоритма.
ЗАКЛЮЧЕНИЕ
Анализируя данные, полученные в ходе проведения дипломной работы, можно сделать вывод о том, что генетические алгоритмы выделяет то, что они показывают приближенность к глобальному минимуму или максимуму, а не являются случайным поиском решения функции.
Анализируя данные, полученные в результате эксперимента, можно сравнить половую и бесполую популяцию и сделать вывод о том, что при разделении популяции на два пола, процесс эволюции пойдет быстрее. Наиболее приспособленная особь находится быстрее и эффективнее именно при половом скрещивании. Так же все показатели говорят о том, что не зависимо от заданных значений, алгоритм сработает и эволюция произойдет. Однако в бесполом размножении работа генетического алгоритма напрямую зависит от значения вероятности мутации.
Анализируя результаты экспериментов, можно сделать вывод о том, что параметры сильно влияют на работу алгоритма в целом, а также можно отследить как именно каждый из них меняет результат.
Результаты исследования показали, что в настоящее время генетические алгоритмы широко используются для решения задач оптимизации и численных вычислений, которые позволяют достичь приближенности к глобальному экстремуму. Однако, генетические алгоритмы имеют и ряд недостатков, включая высокую чувствительность к параметрам. Малейшее изменение параметров может привести к существенному улучшению или ухудшению результата, как это было показано в данном исследовании. Поэтому генетические алгоритмы лучше
всего использовать для решения задач, для которых нет других эффективных методов решения.