Научная статья на тему 'Сравнительное исследование классических методов оптимизации и генетических алгоритмов'

Сравнительное исследование классических методов оптимизации и генетических алгоритмов Текст научной статьи по специальности «Математика»

CC BY
2056
357
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ГЕНЕТИЧЕСКИЙ АЛГОРИТМ / БЕЗУСЛОВНАЯ / ОДНОКРИТЕРИАЛЬНАЯ ОПТИМИЗАЦИЯ / КЛАССИЧЕСКИЕ МЕТОДЫ / НУЛЕВОЙ / ПЕРВЫЙ / ВТОРОЙ ПОРЯДОК / GENETIC ALGORITHM / UNCONSTRAINED / ONE-CRITERION OPTIMIZATION / CLASSICAL METHODS / ZERO / FIRST / SECOND ORDERS

Аннотация научной статьи по математике, автор научной работы — Звонков Владимир Борисович, Попов Алексей Михайлович

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по математике , автор научной работы — Звонков Владимир Борисович, Попов Алексей Михайлович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

COMPARATIVE INVESTIGATION OF CLASSICAL OPTIMIZATION METHODS AND GENETIC ALGORITHMS

This paper is devoted to the comparative investigation of the application of the classical optimization methods (zero, first and second orders) and also genetic modifications for solving of the complex optimization problems with various specific features. It is an actual modern scientific problem. The classical optimization methods based on calculation of the first and second derivatives of the function or only function values are not capable to optimize multiextreme, ravine surface functions with the set of irregular local optimum, etc. Therefore genetic algorithms and its modifications are applied in these situations. Program systems have been developed for comparison of methods with programming language named C++. These systems have been debugged and tested with the representative set of problems. The results of the experiments were processed with statistical methods. High efficiency and expediency of application of selfadjusted genetic algorithm have been proved for solving of one criterion global optimization problems. The expediency of application of the developed modifications was shown for solving of various classes of optimization problems and intelligent data analysis in the previous researches.

Текст научной работы на тему «Сравнительное исследование классических методов оптимизации и генетических алгоритмов»

УДК 519.6

СРАВНИТЕЛЬНОЕ ИССЛЕДОВАНИЕ КЛАССИЧЕСКИХ МЕТОДОВ ОПТИМИЗАЦИИ

И ГЕНЕТИЧЕСКИХ АЛГОРИТМОВ

В. Б. Звонков, А. М. Попов

Сибирский государственный аэрокосмический университет имени академика М. Ф. Решетнева Российская Федерация, 660014, Красноярск, просп. им. газ. «Красноярский рабочий», 31 Е-mail: vladimirzvonkov802@yandex.ru, vm_popov@sibsau.ru

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

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

COMPARATIVE INVESTIGATION OF CLASSICAL OPTIMIZATION METHODS

AND GENETIC ALGORITHMS

V. B. Zvonkov, A. M. Popov

Siberian State Aerospace University named after academician M. F. Reshetnev 31, Krasnoyarsky Rabochy Av., Krasnoyarsk, 660014, Russian Federation E-mail: vladimirzvonkov802@yandex.ru, vm_popov@sibsau.ru

This paper is devoted to the comparative investigation of the application of the classical optimization methods (zero, first and second orders) and also genetic modifications for solving of the complex optimization problems with various specific features. It is an actual modern scientific problem. The classical optimization methods based on calculation of the first and second derivatives of the function or only function values are not capable to optimize multiextreme, ravine surface functions with the set of irregular local optimum, etc. Therefore genetic algorithms and its modifications are applied in these situations. Program systems have been developed for comparison of methods with programming language named C++. These systems have been debugged and tested with the representative set of problems. The results of the experiments were processed with statistical methods. High efficiency and expediency of application of self-adjusted genetic algorithm have been proved for solving of one criterion global optimization problems. The expediency of application of the developed modifications was shown for solving of various classes of optimization problems and intelligent data analysis in the previous researches.

Keywords: genetic algorithm, unconstrained, one-criterion optimization, classical methods, zero, first, second orders.

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

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

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

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

f (x) ^ opt,

где x = (xj, x2, ..., xn) e X - вектор решений размерности n; fx) - целевая функция (целевой функционал, критерий качества, алгоритм вычисления показателя качества).

Классические методы оптимизации. Существует классификация методов оптимизации по наличию информации о производных функции.

1. Методы нулевого порядка:

а) методы «золотого сечения», деления отрезка пополам, метод с использованием чисел Фибоначчи, квадратичная интерполяция, кубическая интерполяция для функций одной переменной;

б) метод Хука-Дживса, метод покоординатного спуска Гаусса-Зейделя, генетический алгоритм, последовательный симплексный метод, метод Нелдера-Мида (метод деформируемого многогранника) для функций n переменных.

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

2. Методы первого порядка (градиентные): градиентный метод с фиксированным шагом, градиентный метод с адаптивным шагом, градиентный метод, в котором шаг вычисляется на каждой итерации алгоритма и является решением одномерной задачи оптимизации (метод наискорейшего спуска по антиградиенту), градиентный метод с использованием теории планирования эксперимента (ортогональные планы первого порядка). Данные методы требуют существования первой производной оптимизируемой функции в аналитическом или численном приближённом виде (конечные разности). Данная группа методов использует информацию о направлении спуска к минимуму по антиградиенту, не настраивая при этом величину шага. Метод Флетчера-Ривса (поиск ведется вдоль взаимно сопряжённых направлений) и Давидона-Флетчера-Пауэлла (необходима положительная определённость и симметричность матрицы вторых производных) наиболее быстро сходятся, если оптимизируемая функция квадратичная (для n переменных необходимо n шагов).

3. Методы второго порядка (ньютоновские методы) требуют существования первой и второй производной оптимизируемой функции (например, для вычисления матрицы Гессиана) в аналитическом или численном приближённом виде (конечные разности или ортогональное композиционное планирование второго порядка). Данная группа методов использует информацию о направлении спуска к минимуму по антиградиенту и информацию о выпуклости функций, настраивая при этом величину шага.

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

Существует следующая классификация методов оптимизации:

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

2. Детерминированные: все остальные перечисленные в статье методы. В данном классе методов все процедуры поиска строго определены математическими формулами.

Генетические алгоритмы возникли в результате наблюдений за функционированием биологических систем. Идею генетических алгоритмов высказал Дж. Холланд в 1975 г. в своей книге «Адаптация в естественных и искусственных системах» [4]. Термин «генетические алгоритмы» ввел Д. Голдберг в 1975 г. [5]. В его книге описывается теория генетических алгоритмов и возможные сферы их применения.

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

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

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

Принципы функционирования самонастраивающегося генетического алгоритма:

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

2. Начальные вероятности равны Их, где г - количество алгоритмов.

3. Через настраиваемое количество поколений 5 пересчитывается эффективность применяемых настроек (тем самым обеспечивается накопление статистической информации и адаптация алгоритма):

I —

ау, = —, I = 1, г,

П

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

4. Распределение вероятностей выбора настройки или сочетания настроек для формирования потомков на поколении, кратном 5, изменяется в пользу более эффективных за счет менее эффективных:

т = тах(ау), / = 1, г , р1 = + (х -1) • К (Я)

г • N '

z • N '

где m - максимальная средняя пригодность индивидов; P1 - увеличение вероятности выигравшего алгоритма; P2 - уменьшение вероятности остальных алгоритмов; N - число поколений; K(g) - функция, зависящая от номера поколения g и осуществляющая взвешивание перераспределяемых вероятностей (рассматривалось несколько реализаций: K(g) = const, K(g) -линейная функция, экспонента, гиперболическая функция и др., подбор параметров функции K(g) осуществлялся статистическим анализом из условия обеспечения наилучших значений критериев эффективности модифицированного алгоритма в сравнении со стандартным алгоритмом).

5. Вероятности никогда не становятся равными нулю (осуществлялась настройка минимального значения вероятностей; согласно результатам проведённых экспериментов данное значение оказывает существенное влияние на надежность работы алгоритма и скорость сходимости).

6. Выполнение условия нормировки вероятностей.

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

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

работаны программные системы на языке С++ (С++ Builder, см. рисунок), включающие классические и модифицированные алгоритмы оптимизации функций одной и многих вещественных переменных (для генетических алгоритмов применялась бинаризация). Разработанные программные системы были отлажены и протестированы на представительном множестве задач безусловной однокритериальной оптимизации (как унимодальные, монотонные, выпуклые функции, так и многоэкстремальные, недифференцируемые, овражные функции с множеством локальных нерегулярных оптимумов, слабо отличающихся от глобального, с протяженными оврагами в области оптимума, областями плато, разворотом функций относительно начала координат, нелинейностью, высокой размерностью до 100 вещественных переменных).

Усреднённые результаты численных экспериментов (500, 1000 прогонов алгоритмов) обрабатывались с использованием непараметрических методов теории вероятностей и математической статистики (критерий Вилкоксона, ANOVA) для проверки статистической устойчивости в программной системе Statistica. Происходило вычисление и статистический анализ трёх критериев эффективности алгоритмов: надёжность, время работы, скорость сходимости.

Проведённый статистический анализ доказал непротиворечивость выдвинутых гипотез экспериментальным данным: гипотеза о равенстве законов распределения критериев эффективности алгоритмов в независимых тестах алгоритмов (по 500 или 1000 независимых случайных реализаций) с одинаковыми настройками не противоречит экспериментальным данным, гипотеза о сдвиге законов распределения отвергается.

Выполненная программная реализация и исследование классических методов прямого поиска для оптимизации унимодальных функций («золотое сечение», числа Фибоначчи, деление отрезка пополам, квадратичная интерполяция - для функций одной переменной, метод Хука-Дживса - для функций n переменных) позволили получить следующие результаты. Их нужно применять, если известно, что функция унимодальна, непрерывна, выпукла (так как сходимость детерминированного метода быстрее любого стохастического), но они не гарантируют получение глобального оптимума для многоэкстремальных функций. Метод разбиения отрезка в отношении «золотого сечения» (отношение длины всего отрезка к длине большей части равно отношению длины большей части к длине меньшей части) сходится быстрее, чем метод деления отрезка пополам. Метод поиска с помощью чисел Фибоначчи сходится быстрее, чем метод «золотого сечения».

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

димости) целесообразно использовать оригинальную разработанную в настоящей работе самонастраивающуюся модификацию генетического алгоритма, доказавшую высокую эффективность при решении различных классов задач оптимизации и интеллектуального анализа данных [7]: тестовые задачи безусловной и условной однокритериальной и многокритериальной оптимизации (в сочетании с методами 8РБЛ и 8РБЛ2), прикладные задачи условной одно-критериальной и многокритериальной оптимизации,

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

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

Рабочие окна системы IT-SAGA

já : т

iOSAqA

Некоторые рабочие окна программной системы IT-SAGA

Библиографические ссылки

1. Рубан А. И. Методы анализа данных : учеб. пособие. 2-е изд., испр. и доп. Красноярск : ИПЦ КГТУ, 2004. 319 с.

2. Охорзин В. А. Прикладная математика в системе MathCad : учеб. пособие. 2-е изд., испр. и доп. Санкт-Петербург : Лань, 2008. 352 с.

3. Банди Б. Методы оптимизации. Вводный курс : пер. с англ. М. : Радио и связь, 1988. 128 с.

4. Holland J. H. Adaptation in Natural and Artificial Systems. Ann Arbor, The University of Michigan Press, 1975. 96 p.

5. Goldberg D. E. Genetic algorithms in search, optimization, and machine learning, Reading, MA Addison-Wesley, 1989.

6. Рутковская Д., Пилиньский М., Рутковский Л. Нейронные сети, генетические алгоритмы и нечеткие системы / пер. с пол. И. Д. Рудинского. М. : Горячая линия - Телеком, 2006. 452 с.

7. Звонков В. Б. Самоорганизующиеся эволюционные алгоритмы, искусственные нейронные сети и классические методы для интеллектуальных систем анализа данных : магистерская дис. / Сиб. гос. аэро-космич. ун-т. Красноярск, 2013. 179 с.

References

1. Ruban A. I. Metody analiza dannykh (Methods of data analysis). Krasnoyarsk, IPTs KGTU, 2004, 319 p.

2. Okhorzin V. A. Prikladnaya matematika v sisteme MathCad (Applied mathematics in the software system MathCad). St.-Petersburg, Lan', 2008, 352 р.

3. Bandi B. Metody optimizatsii. Vvodnyy kurs [Optimization Methods. Introductory course]. Moscow, Radio i svyaz', 1988, 128 p.

4. Holland J. H. Adaptation in Natural and Artificial Systems. Ann Arbor, The University of Michigan Press, 1975, 96 p.

5. Goldberg D. E. Genetic algorithms in search, optimization, and machine learning, Reading, MA Addison-Wesley, 1989.

6. Rutkovskaya D., Pilin'skiy M., Rutkovskiy L. Ney-ronnye seti, geneticheskie algoritmy i nechetkie sistemy (Neural networks, genetic algorithms and fuzzy systems). Moscow, Goryachaya liniya - Telekom, 2006, 452 p.

7. Zvonkov V. B. Magisterskaya dissertatsiya "Samoorganizuyushchiesya evolyutsionnye algoritmy, iskusstvennye neyronnye seti i klassicheskie metody dlya intellektual'nykh sistem analiza dannykh " (Master's thesis in the direction of "System analysis and control" "Self-organizing evolutionary algorithms, artificial neural networks and classic methods for intelligent data analysis systems"). Sib. State. Aerospace. Univ. Krasnoyarsk, 2013, 179 p.

© Звонков В. Б., Попов А. М., 2013

УДК 004.3

СИСТЕМА ДИСПЕТЧЕРИЗАЦИИ ОПЫТНОГО И МЕЛКОСЕРИЙНОГО ПРОИЗВОДСТВА

РАДИОЭЛЕКТРОННОЙ АППАРАТУРЫ*

М. А. Казанцев

ОАО «Научно производственное предприятие «Радиосвязь» Российская Федерация, 660021, Красноярск, ул. Декабристов, 19. E-mail: mkaz@mail.ru

Рассмотрено применение исполнительной системы производства на примере реализации системы диспетчеризации производства ОАО «НПП «Радиосвязь». Проанализировано применение существующих систем, решающих задачи управления производством предприятия. Выявлены требования, предъявляемые к системе диспетчеризации опытного и мелкосерийного производства современного предприятия радиоэлектронной аппаратуры. Описан опыт создания системы диспетчеризации опытного и мелкосерийного производства трехуровневой архитектуры на базе веб-технологий. Подведены итоги внедрения системы диспетчеризации в работу ОАО «НПП «Радиосвязь», перечислен ряд преимуществ, которых удалось добиться после внедрения в работу такой системы.

Ключевые слова: исполнительная система, диспетчеризация, MES.

THE SYSTEM OF THE PILOT AND SMALL-SCALE PRODUCTION SCHEDULING OF THE RADIO-ELECTRONIC EQUIPMENT

M. A. Kazantsev

JSC "Scientifically Radiosvyaz manufacturing enterprise" 19, Dekabristov str., Krasnoyarsk, 660021, Russian Federation. E-mail: mkaz@mail.ru

In the present paper we give the description of the production executive system on the example of realization of the production dispatcher system of JSC NPP Radiosvyaz. The usage of the existing systems which can solve problems of the production management of the enterprise is analysed. The demands made to the system of the pilot and small-scale production scheduling of the modern enterprise of the radio-electronic equipment are revealed. The experience of the creation of the system of the pilot and small-scale production scheduling of three-level architecture on the basis of web technologies is described. The introductions of the scheduling system in JSC NPP Radiosvyaz work are summed up, a number of advantages which managed to achieve after introduction in work of such systems is listed.

Keywords: executive system, scheduling, MES.

Для современных машиностроительных предприятий основными являются задачи оперативного реагирования и принятия оптимального решения, что

возможно только при наличии адекватной системы управления предприятием [1].

* Работа выполнена при поддержке федеральной целевой программы «Развитие электронной компонентной базы и радиоэлектроники» на 2008-2015 годы по государственному контракту № 11411.1006800.11.319 от 05.12.2011 г.

i Надоели баннеры? Вы всегда можете отключить рекламу.