О сравнении эффективности двух различных методов самонастройки генетического алгоритма

Схемы динамической самонастройки параметров генетического алгоритма. Преимущества использования непараметрического критерия Вилкоксона. Исследование целесообразности применения метода Гомеса. Настройка вероятностей выбора оператора для каждого индивида.

Рубрика Программирование, компьютеры и кибернетика
Вид статья
Язык русский
Дата добавления 29.04.2018
Размер файла 86,3 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://allbest.ru

Сибирский государственный аэрокосмический университет

имени академика М. Ф. Решетнёва

УДК 519.68

О сравнении эффективности двух различных методов самонастройки генетического алгоритма

Фисак А.В.

Научный руководитель:

проф. Семенкин Е.С.

Генетические алгоритмы (ГА) давно доказали свою высокую эффективность на широком круге задач. Однако надежность их работы и требуемые ресурсы сильно зависят от выбранных настроек алгоритма. Даже для опытного исследователя выбор оптимальных параметров является сложной задачей.

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

В работах Гомеса и Банзафа представлены две схемы динамической самонастройки параметров генетического алгоритма.

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

В методе самонастройки Банзафа, напротив, вероятности не хранятся внутри индивидов и настраиваются на уровне популяции, то есть сразу для всех хромосом.

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

Данная работа посвящена разработке, исследованию эффективности и сравнению самонастраивающихся генетических алгоритмов для решения задач условной оптимизации на основе вышеупомянутых методов. Для достижения поставленных целей были выполнены следующие этапы:

- создана программная система, реализующая генетический алгоритм для решения задач условной оптимизации с двумя методами самонастройки операторов;

- исследована эффективность методов в отдельности на наборе тестовых задач условной оптимизации;

- проведено сравнение рассматриваемых подходов с использованием непараметрического критерия Вилкоксона, применяемого при необходимости определить существенно ли различаются средние значения несвязных выборок на уровне значимости б;

- на основе полученных результатов исследования сделаны выводы о целесообразности использования реализованных методов самонастройки.

В программе реализованы три вида селекции: пропорциональная, ранговая, турнирная; три вида скрещивания: одноточечное, двухточечное, равномерное; три вида мутации: слабая, средняя, сильная.

В стандартном ГА пользователь сам обязан выбирать тип селекции, тип скрещивания и тип мутации, самонастраивающийся же алгоритм лишен этого недостатка.

Остановимся на каждом методе подробнее. Гибридный самонастраивающийся эволюционный алгоритм начинается с инициализации популяции. Также нужно задать начальные значения вероятностей выбора операторов для каждого индивида.

Так как у нас нет какой-либо априорной информации о том, какой оператор предпочтительнее, то начальные значения вероятностей будут равны между собой.

В каждую хромосому, кроме решения, кодируется еще 9 чисел, первые три - это вероятности выбора определенного типа селекции, следующие три числа - предназначены для хранения вероятностей выбора типа скрещивания и последняя тройка отводится для мутации.

Причем вероятности записываются в хромосому не нулями и единицами, а вещественными числами. Далее начинается первая итерация ГА: для каждого индивида генерируется случайное число от 0 до 1, которое представляет собой скорость изменения вероятностей выбора операторов. В массив из индивида декодируются вероятности выбора операторов. Случайным образом, в соответствии с , выбираются генетические операторы, которые будет применены к этому индивиду.

Непосредственно применяем выбранные операторы, получаем потомков, случайно выбираем одного из них.

Сравниваем его пригодность с пригодность индивида, которого мы рассматриваем на текущем шаге, если она больше, то перемещаем найденного потомка в следующее поколение, если меньше, то перемещаем исходного индивида.

Затем необходимо пересчитать значение вероятностей по следующим формулам в случае, если потомок имеет большую пригодность по сравнению с исходным индивидом:

иначе по этим:

где , и - соответственно вероятности использованных на данном шаге операторов селекции, скрещивания и мутации. Перезаписываем полученные вероятности в индивида, которого переместили в следующее поколение и переходим к очередному индивиду.

После того как все хромосомы в популяции прошли развитие, заканчивается первая итерации алгоритма и начинается новая. Так продолжается до тех пор, пока не будут пройдено заданное пользователем число поколений. Алгоритм самонастройки параметров на уровне популяции проще для реализации и понимания.

Схема данного алгоритма такая же, как у обычного ГА, за исключением того, что для получения очередного потомка каждый раз случайным образом в соответствии с вероятностями выбираются разные операторы.

При этом вероятности хранятся в отдельном массиве, а не внутри хромосом, и одновременно изменяются для популяции в целом. Они адаптируются на основе информации успешного и не успешного применения операторов по формуле:

где , а , - число, показывающее сколько раз был применен оператор, - количество раз, когда оператор привел к успеху, то есть пригодность потомка оказалась лучше средней пригодности родительских индивидов; , - число операторов.

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

Ниже в таблицы представлена часть результатов полученных в ходе исследования:

№ тестовой задачи

ГА с методом ДШ

ГА с методом СШ

ГСЭА с методом ДШ

ГА настраивающийся модификацией алгоритма Банзафа с методом ДШ

ГСЭА с методом СШ

ГА настраивающийся модификацией алгоритма Банзафа с методом СШ

1

65/100

70/100

100

100

100

100

2

6/18

8/24

22

2

38

12

3

62/100

78/100

100

98

100

100

4

60/100

77/100

100

78

100

96

5

34/94

42/100

94

20

100

62

6

63/100

69/100

100

98

100

100

7

34/96

62/100

94

20

100

76

8

27/78

56/100

76

6

100

92

9

53/100

95/100

100

86

100

100

Здесь ДШ - динамические штрафы, СШ - смертельные штрафы и ГСЭА - гибридный самонастраивающийся эволюционный алгоритм.

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

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

В последующих столбцах приведены оценки надежности самонастраивающихся алгоритмов, полученные путем усреднения результатов по 50 независимых запускам.

Число индивидов и поколений для первых 7 задач равно 100 и 100 соответственно. Для 8 задачи 75 и 75. Для 9 эти числа также одинаковые и равны 50.

Приведенная выше таблица доказывает целесообразность использования, как гибридного самонастраивающегося эволюционного алгоритма, так и алгоритма со вторым методом настойки вместо обычного генетического алгоритма, так как они не требуют выбора операторов и имеют достаточно высокую надежность.

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

Размещено на Allbest.ru

...

Подобные документы

  • Описание принципа работы генетического алгоритма, проверка его работы на функции согласно варианту на основе готовой программы. Основные параметры генетического алгоритма, его структура и содержание. Способы реализации алгоритма и его компонентов.

    лабораторная работа [20,2 K], добавлен 03.12.2014

  • Оптимизация показателей эффективности функционирования технологического контура системы управления космическим аппаратом, исследование свойств его показателей. Настройка нейронной сети, гибридизация генетического алгоритма с алгоритмами локального поиска.

    дипломная работа [4,5 M], добавлен 02.06.2011

  • Этапы работы генетического алгоритма, область его применения. Структура данных, генерация первоначальной популяции. Алгоритм кроссинговера - поиск локальных оптимумов. Селекция особей в популяции. Техническое описание программы и руководство пользователя.

    реферат [1014,2 K], добавлен 14.01.2016

  • Сущность интеллектуальных систем. Запись математического выражения в виде ориентированного графа. Особенности разработки генетического алгоритма для решения задачи аппроксимации логического вывода экспертной системы на основе метода сетевого оператора.

    дипломная работа [1,0 M], добавлен 17.09.2013

  • Обзор методов и подходов решения поставленной задачи аппроксимации логического вывода экспертной системы. Разработка и описание метода сетевого оператора для решения данной задачи. Разработка алгоритма решения. Проведение вычислительного эксперимента.

    дипломная работа [1,5 M], добавлен 23.02.2015

  • Характеристика методов нечеткого моделирования и изучение системы кластеризации в пакетах прикладных программ. Разработка и реализация алгоритма для оптимизации базы правил нечеткого классификатора с помощью генетического алгоритма аппроксимации функции.

    дипломная работа [1,9 M], добавлен 21.06.2014

  • Содержание фундаментальной теории гена. Описание простого генетического алгоритма поиска оптимальных решений. Сущность понятий "кроссинговер", "сайт", "иллегальная рекомбинация". Этапы реализации алгоритма Девиса по перераспределению участков хромосом.

    контрольная работа [23,7 K], добавлен 17.09.2010

  • Комплексное исследование истории развития, основных понятий, области применения и особенностей генетических алгоритмов. Анализ преимуществ генетических алгоритмов. Построение генетического алгоритма, позволяющего находить максимум целочисленной функции.

    курсовая работа [27,9 K], добавлен 23.07.2011

  • Анализ современного состояния общей проблемы синтеза моделей многофакторного оценивания и подходов к ее решению. Разработка математической модели метода компараторной идентификации модели многофакторного оценивания. Описание генетического алгоритма.

    дипломная работа [851,7 K], добавлен 11.09.2012

  • Сравнение результатов работы генетического алгоритма по решению "несимметричной незамкнутой задачи коммивояжера" с результатами работы алгоритма динамического программирования по параметрам - время работы, точность результата и объем используемой памяти.

    курсовая работа [65,3 K], добавлен 16.04.2014

  • Теоретические основы и проблемы принятия решений. Синтез модели многофакторного оценивания, метод компараторной идентификации. Особенности реализации базового генетического алгоритма. Программный способ определения эффективного состава команды проекта.

    дипломная работа [733,1 K], добавлен 09.06.2012

  • Особенности метода неопределенных множителей Лагранжа, градиентного метода и метода перебора и динамического программирования. Конструирование алгоритма решения задачи. Структурная схема алгоритма сценария диалога и описание его программной реализации.

    курсовая работа [1010,4 K], добавлен 10.08.2014

  • Создание программы для поиска минимума функции двух вещественных переменных в заданной области с помощью генетического алгоритма. Генетические алгоритмы и операторы. Создание начальной популяции. Размножение. Мутация и селекция. Тестирование программы.

    курсовая работа [131,6 K], добавлен 22.02.2015

  • История возникновения алгоритма симметричного шифрования, условия и особенности его применения на современном этапе. Принципы и функции исследуемой технологии. Анализ главных преимуществ и недостатков использования алгоритма, оценка его уязвимости.

    курсовая работа [301,9 K], добавлен 29.10.2017

  • Программа реализации генетического алгоритма, использование визуальной среды программирования. Руководство пользователя, листинг программы. Возможность ввода параметров: объем популяции, число поколений, коэффициент скрещивания и мутации, число городов.

    курсовая работа [2,9 M], добавлен 20.08.2009

  • Выбор шифров перестановки для проведения анализа. Анализ алгоритма двух различных шифров, построение блок-схемы алгоритма и программы, разработка общего интерфейса. Сравнение шифров перестановки по результатам шифрования и криптоанализа текстов.

    курсовая работа [2,8 M], добавлен 14.01.2014

  • Методы вычисления точных вероятностей в покере. Проектирование алгоритма нахождения вероятности выигрыша для нескольких игроков. Теоретический расчет вероятности выигрыша в игре. Программная оптимизация и упрощение алгоритмов вычисления вероятностей.

    курсовая работа [96,1 K], добавлен 17.06.2013

  • Исследование нечеткой модели управления. Создание нейронной сети, выполняющей различные функции. Исследование генетического алгоритма поиска экстремума целевой функции. Сравнительный анализ нечеткой логики и нейронной сети на примере печи кипящего слоя.

    лабораторная работа [2,3 M], добавлен 25.03.2014

  • Основные генетические операторы. Схема функционирования генетического алгоритма. Задачи, решаемые с помощью генетических алгоритмов. Математическая постановка задачи оптимизации. Решение Диофантова уравнения. Программная реализация. Создание пособия.

    курсовая работа [391,4 K], добавлен 20.02.2008

  • Основные особенности эволюционных алгоритмов. Описание алгоритмов селекции, мутации, скрещивания, применяемых для реализации генетических алгоритмов. Вычисление функции приспособленности. Программная реализация. Тестирование и руководство пользователя.

    курсовая работа [1,3 M], добавлен 11.03.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.