Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

neuro_lab2

.pdf
Скачиваний:
26
Добавлен:
03.07.2022
Размер:
311.83 Кб
Скачать

Отчет по лабораторной работе № 2

по дисциплине «Нейро-нечеткие технологии в задачах управления»

Тема: «Изучение основ применения генетических алгоритмов»

Цель работы

Изучение основ работы с генетическими алгоритмами в среде Optimization Toolbox ППП

Matlab. Решение задачи поиска минимума функции на заданном интервале с применением генетических алгоритмов.

Ход работы

1. Изучение состава главного окна модуля Optimization Toolbox, анализ назначения и параметров отдельных блоков

В левой части окна модуля Optimization Toolbox имеются поля ввода: Fitness function (для задания минимизируемой функции) и Number of variables (число переменных минимизируемой функции), и три панели: Constraints (для задания ограничений), Plots (для вывода графической информации) и Run solver (управляет запуском генетического алгоритма).

В правой части окна располагается панель Options, с помощью которой можно изменять параметры генетического алгоритма, относящиеся к:

популяции (population);

масштабированию пригодности (fitness scaling);

селекции (selection);

репродукции (reproduction);

мутации (mutation);

скрещиванию (crossover);

миграции (migration);

опциям алгоритма (algorithm settings);

гибридной функции (hybrid function);

критерию останова (stopping criteria);

графическому отображению функций (plot function);

выводу функций (output function);

отображению в командном окне (display to command window);

оценке функции пользователя (user function evaluation).

2. Создание функции в пакете Matlab и построение ее графика

Создадим m-файл в Matlab, содержащий функцию:

Содержимое файла func4.m: function f = func4(x) f=sqrt(abs(x+2));

end

График функции на интервале [0, 10] представлен на рис.1

Рис.1 – Зависимость func4(x) на отрезке [0, 10].

Из рис. 1 видно, что функция достигает минимального значения на отрезке [0, 10] в

точке 0, при этом func4(0) 1,4142.

3.Задание параметров генетического алгоритма

Вкачестве минимизируемой функции зададим func4. Число переменных минимизируемой функции укажем равным 1. В качестве ограничений зададим нижнюю границу равной 0 и верхнюю границу равной 10.

Вразделе о популяции зададим в качестве типа хромосом строку двоичных символов. Оставим указанный по умолчанию размер популяции – 20 особей. В качестве функции инициализации популяции зададим функцию, которая создает случайную начальную популяцию с равномерным распределением.

2

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

Вразделе селекции зададим в качестве функции селекции метод колеса рулетки.

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

Вразделе мутации в качестве функции мутации используем стандартную мутацию, долю компонент хромосом, подлежащих мутации, укажем равной 0,01.

Окно с обозначенными параметрами представлено на рис. 2.

Рис. 2 – Окно с заданными параметрами популяции, шкалирования, селекции, репродукции и мутации.

3

Вразделе скрещивания зададим тип скрещивания – одноточечный кроссовер. Параметры

вразделе миграции оставим неизменными (миграция по направлению к последней субпопуляции, часть хромосом, перемещаемых между субпопуляциями, - 0,2, миграция происходит через 20 поколений).

Во вкладке с опциями алгоритма оставим значения по умолчанию – начальное числовое значение критики алгоритма – 10, множитель этого значения для случаев недостаточной точности оптимизации – 100.

Во вкладке с гибридной функцией укажем параметр None - не использовать гибридную функцию.

В разделе о критерии останова оставим параметры по умолчанию:

останов по достижению числа поколений равному 100,

без ограничений по времени и предельному значению функции пригодности,

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

останов, если суммарное изменение значения минимизируемоей функции через 50 поколений меньше 10-6.

Окно с обозначенными параметрами представлено на рис. 3.

Рис. 3 – Окно с заданными параметрами скрещивания, миграции, опций алгоритма и гибридной функции, критерия останова.

4

4. Анализ действия алгоритма на отрезке [0, 10]

Зависимости, полученные в результате действия алгоритма, представлены на рис. 4 - 17.

Рис. 4 – Графики наилучшей и средней пригодности.

Из графиков наилучшего и среднего значения функции пригодности (рис. 4) видно, что в первом поколении было обнаружено решение задачи (со значением пригодности, равным 1,4142), начиная с 4 поколения среднее значение совпадает с наилучшим, за исключением значений в 22, 30-32 поколениях.

Рис. 5 – График масштабированной пригодности.

Из графика масштабированной пригодности (рис. 5) видно, что ожидаемое число потомков хромосомы увеличивается с увеличением номера поколения при значении пригодности 1,4142.

Рис. 6 – Гистограмма значений пригодности хромосом.

Гистограмма значений пригодности для групп хромосом (рис. 6) показывает, что у 20 хромосом одинаковая пригодность.

5

Рис. 7 – График выполнения критерия останова.

Из графика выполнения критерия останова (рис. 7) видно, что алгоритм остановился изза отсутствия улучшений для целевой функции в последовательности следующих друг за другом 50 поколений.

Рис. 8 – График генеалогии хромосом.

Из графика генеалогии хромосом (рис. 8) видно, что две хромосомы без изменений на протяжении всего отбора гарантированно попадают в следующую популяцию (обозначены черным цветом). В результате скрещивания в каждую следующую популяцию попадает 16 хромосом (обозначены синим цветом). Хромосомы, подверженные мутации, обозначены красным цветом.

Рис. 9 – График пригодности хромосом популяции.

Из графика пригодности хромосом популяции (рис. 9) видно, что значение пригодности для каждой хромосомы популяции составляет 1,4241.

6

Рис. 10 – График расстояния между хромосомами популяции.

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

Рис. 11 – График оценки пригодности хромосом.

Из графика оценки пригодности хромосом (рис. 11) видно, что наилучшее, наихудшее и среднее значение пригодности хромосом популяции не совпадают в первых поколениях, затем в большем числе поколений, включая последнее, совпадают и составляют 1,4241.

Рис. 12 – График числа потомков хромосом.

Из гистограммы числа потомков хромосом (рис. 12) видно, что число потомков неодинаково в разных поколениях.

7

В результате действия алгоритма минимальное значение функции было вычислено с точностью до 16 знаков после запятой, и его можно считать совпавшим с точным минимальным значением целевой функции, приблизительно равным 1,4142. Аргумент минимального найденного значения целевой функции указан на вкладке Final point равным нулю, что соответствует графику целевой функции, представленному на рис. 1.

5.Анализ действия модифицированного генетического алгоритма

1)Модифицируем алгоритм поиска: функцию селекции Roulette заменим на Uniform, при которой родительские хромосомы отбираются в соответствии со значением пригодности и требуемым числом потомков.

Рис. 13 – Графики наилучшей и средней пригодности.

Из графиков наилучшего и среднего значения функции пригодности (рис. 13) видно, что в первом поколении было обнаружено решение задачи (со значением пригодности, равным 1,4142), начиная с 6 поколения среднее значение совпадает с наилучшим, за исключением значений в 28-29, 48-50 поколениях.

Рис. 14 – График масштабированной пригодности.

Из графика масштабированной пригодности (рис. 14) видно, что ожидаемое число потомков хромосомы увеличивается с увеличением номера поколения при значении пригодности 1,4142. Исключение составляет первое поколение – значение пригодности в этом случае достигает приблизительно 1,73.

8

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

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

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

График пригодности хромосом популяции совпадает с аналогичным графиком на рис. 9 и показывает, что значение пригодности для каждой хромосомы популяции составляет 1,4241.

Рис. 15 – График расстояния между хромосомами популяции.

Из графика расстояния между хромосомами популяции (рис. 15) видно, что среднее расстояние между хромосомами популяции равно нулю в большем числе поколений, за исключением 1-3, 28-29, 48-50 поколений.

Рис. 16 – График оценки пригодности хромосом.

Из графика оценки пригодности хромосом (рис. 16) видно, что наилучшее, наихудшее и среднее значение пригодности хромосом популяции не совпадают в первых поколениях, затем

9

в большем числе поколений совпадают, составляя 1,4241, и не совпадают в последних поколениях.

Рис. 17 – График числа потомков хромосом.

Из гистограммы числа потомков хромосом (рис. 17) видно, что число потомков неодинаково в разных поколениях, и равно 0 в некоторых поколениях.

В результате действия алгоритма минимальное значение функции было вычислено с точностью до 16 знаков после запятой, и его можно считать совпавшим с точным минимальным значением целевой функции, приблизительно равным 1,4142. Аргумент минимального найденного значения целевой функции указан на вкладке Final point равным нулю, что соответствует графику целевой функции, представленному на рис. 1.

2) Модифицируем алгоритм поиска: изменим количество точек скрещивания на две; оставим в качестве функции селекции Uniform.

Рис. 18 – Графики наилучшей и средней пригодности.

Из графиков наилучшего и среднего значения функции пригодности (рис. 18) видно, что значение пригодности сильно варьируется, но имеет тенденцию стремиться к 1,4142 по мере продвижения по поколениям, за исключением последних (42-44, 48-50).

График масштабированной пригодности совпадает с аналогичным графиком на рис. 14 и показывает, что ожидаемое число потомков хромосомы увеличивается с увеличением номера поколения при значении пригодности 1,4142. Исключение составляет первое поколение – значение пригодности в этом случае достигает приблизительно 1,73.

10

Соседние файлы в предмете Нейро-нечеткие технологии в задачах управления