Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Нахождение минимума функции z(x,y) в заданной области методом генетического алгоритма.doc
Скачиваний:
77
Добавлен:
22.06.2014
Размер:
172 Кб
Скачать
☆

4 Результаты работы

В курсовом проекте предполагалось найти минимум функции в заданной области. Листинг программы реализующей поиск минимума функции z(x,y)=x2+y2, -5,12≤ x ≤ 5,12 -5,12≤ y ≤ 5,12 приведен в приложении А, основная программа Кр.pas прилагается отдельным файлом.

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

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

После запуска программы на экране появляется предложение ввести размер популяции и число поколений, затем начинается вычисление минимума функции. На экран выводятся значения всех 30 вычислений, и в завершении лучшее и среднее значение минимума.

Результат работы программы сведен в таблицу 1.

Таблица 1 Результаты вычислений

Размер популяции

Число поколений

Лучшее значение

Среднее значение

10

50

3.73162493601970E-0011

2.19357743787896E-0003

10

100

5.03359843635386E-0013

2.85441599179141E-0007

20

50

3.11251824894887E-0012

6.18312830783820E-0007

20

100

1.86446414210852E-0015

6.14036951377804E-0011

30

50

3.49577931698669E-0012

3.43103993902770E-0007

30

100

3.31965566765600E-0015

8.29280029422930E-0011

5 Заключение.

Генетические алгоритмы – это вдохновленные эволюцией вычислительные модели, которые представляют собой семейство алгоритмов поиска, основанных на механизмах природной селекции и генетики, и имеющих дело с набором (популяцией) возможных решений задачи (испытаний), которые подвергаются циклическому воздействию трех основных «генетических» операторов - селекции, скрещивания и мутации. Эти алгоритмы используют для решения задач поиска и оптимизации в самых разнообразных областях науки и техники.

Очевидно, что минимальное значение данной функции z(x,y) при заданных диапазонах значений переменных будет стремиться к 0. Подвергнув анализу полученные данные, можно сделать вывод, доказывающий, что особенностью генетических алгоритмов является то, что они обеспечивают сходимость к глобальному оптимуму, а не являются случайным поиском решения функции.

Проведем анализ полученных данных. При увеличении количества поколений в 2 раза, при одних и тех же размерах популяции, результат улучшается на 2-3 порядка. Это можно объяснить тем, что алгоритм используя свои механизмы, находит лучшее решение с каждым последующим поколением, т.е. использует “накопленный опыт”.

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

Дальнейшее увеличение размера популяции с 20 до 30, к каким либо глобальным изменениям результата не приводят.

Самые лучшие результаты, как в среднем, так и в минимальном значении функции, получены при числе поколений 100 и размере популяции 20. Полученный результат максимально стремиться к истинному решению задачи, т.е. к 0.