Введение 3
Аппроксимация функций нескольких переменных 5
Общие сведения о генетических алгоритмах 15
Решение задачи аппроксимации функции на основе генетических алгоритмов 23
Заключение 35
Список используемой литературы 37
Приложение
На практике, в ходе обработки экспериментальных данных, часто встречается задача установления аналитического вида зависимости входных и выходных данных, что является очень затратной процедурой. Восстановление
конкретного вида функции в аналитическом виде при этом, как правило, невозможно и поэтому для дальнейшего анализа выбирается относительно простая конструкция, приближающая исходную.
Полиномы, сплайны, вейвлеты – все они имеют право на существование
в качестве аппарата приближения. В данной работе используются многочлены, ввиду простоты оперирования ими для дальнейшего интегрирования,
дифференцирования, а также установления промежуточных значений.
Для минимизирования отклонения между двумя функциями в заданных
точках, использовалась формула метода наименьших квадратов, а для поиска
неизвестных параметров использовалась рабочая конструкция естественного
отбора. Широкий простор для выбора метода решения подобных задач дают
эволюционные алгоритмы, моделирующие известные процессы селекции, мутации и скрещивания индивидов популяции. Алгоритмы используют такие
разделы биологии, как нейробиологию – источник идей искусственных
нейронных сетей и генетику – средство расшифровки геномов и использования операции рекомбинации решений. Используя генетические алгоритмы и
генетическое программирование, созданное на основе генетики, удалось реализовать модель отбора наиболее приспособленной особи – коэффициентов
полинома. Данный алгоритм, появившийся в результате работ Д. Холланда и
его коллег в начале 70-х годов, популярен и по сей день, поскольку областей
его применения существует немало:
экстремальные задачи;
задачи о кратчайшем пути;
задачи компоновки;4
составление расписаний;
аппроксимация функций;
отбор (фильтрация) входных данных;
настройка искусственной нейронной сети [1].
Не мало работ по генетическим алгоритмам посвящены задачам оптимизации, например [2] Паротькина Н.Ю, [3] Семенкиной М.Е., а также вопросам принятия решения [4] Штуца И.М.
Целью нашей работы являлось построение математической модели,
основанной на применении генетических алгоритмов, для аппроксимации
функции многих переменных с некоторой наперед заданной точностью.
Для достижения цели необходимо было решить следующие задачи:
1) изучить теорию аппроксимации функции, обобщить задачу на
случай многих переменных и выбрать метод оценки близости
точного и приближенного решений;
2) исследовать схему работы генетического алгоритма и возможности ее модификаций для улучшения результата по точности
или по времени.
3) разработать программное обеспечение, реализующее построенную математическую модель.
Существуют различные методы приближения для заданного дискретного множества точек некоторого интервала. Чаще всего для задачи минимизации отклонения выбирают среднеквадратичную метрику метода наименьших квадратов. В качестве аппроксимирующей функции, ввиду несложности
построения и дальнейшего оперирования, в работе был использован полином,
который представим своими коэффициентами. Для функций нескольких переменных, был проведен анализ построения алгебраического полинома заданной
степени. Обобщенный многочлен представлялся в виде дерева, где каждый
узел соответствует моному, а каждое ребро – домножению на одну из переменных. Также для сравнения было разобрано приближение ортогональными
полиномами Чебышева и системы комбинаций степеней переменных. Отличаются они тем, что в первом случае необходимы механические замены на полином следующей степени, когда встречаются повторяющиеся комбинации
переменных в узлах дерева.
Классический метод наименьших квадратов приводит к СЛАУ, для решения которой использовался метод адаптивного поиска параметров полинома – генетический алгоритм, поскольку он предъявляет минимальные требования к исходным данным. ГА хорошо приспособлен к работе с вычислительной техникой и не предъявляет жестких ограничений к исходным данным.
Генетический алгоритм для функции нескольких переменных не претерпевает
больших изменений при переходе от одномерного случая к многомерному.
Достаточно лишь следить за количеством коэффициентов полинома и соответствовать порядку следования базисной системы на всех этапах. В программной реализации алгоритма также была проанализирована работа нескольких
существующих методов селекции. Наиболее приемлемым по скорости выполнения оказался турнирный.36
Основная проблема генетических алгоритмов – предварительная
сходимость – решалась посредством использования островной модели
развития отдельно живущих популяций. С помощью параллелизма
удалось добиться уменьшения временных затрат, так как каждая популяция
обрабатывалась отдельным потоком.
1. Цой Ю. Генетические алгоритмы. [Электронный ресурс] // Генетиче¬ские алгоритмы. URL: http://qai.narod.ru/GA/intro.html
2. Паротькин Н.Ю. Дифференцированный генетический алгоритм реше-ния задач оптимизации: дис. ... канд. тех. наук: 05.13.01 / Патротькин Николай Юрьевич. - Красноярск, 2013 - 135c.
3. Семенкина М.Е. Самоконфигурируемые эволюционные алгоритмы мо-делирования и оптимизации: дис. ... канд. тех. наук: 05.13.01 /
Семенкина Мария Евгеньевна. - Красноярск, 2012 - 203с.
4. Штуца И.М. Модели и алгоритмы принятия решений на основе генети-ческого поиска: дис. ... канд. тех. наук: 05.13.01 / Штуца Илья Михайлович. - Москва, 2008 - 204с.
5. Тюканов А.С. Основы численных методов: Учебное пособие.
[Электронный ресурс] // РГПУ им. А.И.Герцена. URL: http://physics.hezen.spb.ru/library/01/01 /nm labs/index.htm
6. Михеев С. Е. Численные методы. Учебное пособие. [Электронный ре-сурс] // СПб гос. ун-т, 2013. URL:
http: //www. apmath. spbu. ru/ru/staff/miheev/
7. Диканев Т. В. Прочее. Алгоритмы и численные методы. [Электронный ресурс] // Вычисление полинома от нескольких переменных. URL: http: //www.tvd-home. ru/numerical/polynom
8. Утешев А. Ю. Полиномы и алгебраические уравнения нескольких пере-менных. [Электронный ресурс] // Полиномы нескольких переменных. URL: http: //pmpu.ru/vf4/polynomialm
9. Бахвалов Н.С., Жидков Н.П., Кобельков Г.М. Численные методы: учеб-ное пособие. М.: ООО “Бином. Лаборатория знаний”. 2003. - 632 с.
10. Мудров А.Е. Численные методы для ПЭВМ на языках Бейсик, Фортран и Паскаль. - Томск: МП "РАСКО", 1991. - 272 с.
11. Иванов А. П. Аппроксимация функций. Методические указания. [Элек-тронный ресурс] // СПб гос. ун-т, 2013. URL: http://www.ap- math.spbu.ru/ru/structure/depts/is/task6-2013.pdf
12. Михайлев В. Решение систем линейных алгебраических уравнений,
методы решения, примеры. [Электронный ресурс] //
Системы уравнений и неравенств, примеры, решения. URL: http://www.cleverstudents.ru/systems/solving systems of linear equations.html
13. Панченко Т. В. Генетические алгоритмы : учебно-методическое посо-бие / под ред. Ю. Ю. Тарасевича. Астрахань: “Астраханский универси-тет”, 2007. - 87 с.
14. Гладков Л.А., Курейчик В.В., Курейчик В.М. Генетические алгоритмы / под ред. В.М.Курейчика. 2-е изд., испр. и доп. М.: ФИЗМА- ТЛИТ. 2006 - 368 с.
15. Исаев А. Генетические алгоритмы. [Электронный ресурс] // Алгоритмы. Методы. Исходники. URL: http: //al golist. manual. ru/ai/ga/ga1. php
16. Edited by Rustem Popa, Genetic Algorithms in Applications, InTech, Chaters published March 21, 2013. - P. 328.
17. Вороновский Г.К., и др. Генетические алгоритмы, искусственные нейронные сети и проблемы виртуальной реальности / под ред. Г. К. Во- роновский, К. В. Махотило, С. Н. Петрашев, С. А. Сергеев. X.: ОСНОВА, 1997. - 112 с.
18. Шилдт, Г. Java 8. Полное руководство; 9-е изд.: Пер. с англ. - М.: ООО "И.Д. Вильямс", 2015. - 1376 с.