E. N. Garin
INSTRUMENTAL ERROR OF RELATIVE MEASUREMENTS
The influence of provisional scale parameters of radio navigation equipment for tracking loop after the signal of navigation space craft and radio navigation parameters estimation signal are considered.
Keywords: error, measurements, frequency, reference generator, navigation space craft, phase.
© Гарин Е. Н., 2009
УДК 519.85:519.676
Р. Б. Сергиенко
ИССЛЕДОВАНИЕ ЭФФЕКТИВНОСТИ КОЭВОЛЮЦИОННОГО ГЕНЕТИЧЕСКОГО АЛГОРИТМА УСЛОВНОЙ ОПТИМИЗАЦИИ
Проведено сравнение эффективности коэволюционного генетического алгоритма и индивидуальных стандартных генетических алгоритмов на тестовых и практических задачах условной оптимизации. Показано, что коэволюционный алгоритм не менее эффективен, чем лучший для решаемой задачи индивидуальный стандартный генетический алгоритм.
Ключевые слова: условная оптимизация, генетический алгоритм, коэволюция, инвестиции, кредитование.
В настоящее время в качестве метода решения сложных задач оптимизации широкое распространение получили эволюционные алгоритмы [1]. Однако все еще не решенной проблемой использования эволюционных алгоритмов является высокая сложность и трудоемкость их настройки на решаемую задачу в связи с большим числом возможных комбинаций параметров алгоритма (селекции, мутации, скрещивания и некоторых других). Эффективность одной и той же настройки на разных задачах и различных настроек на одной и той же задаче может изменяться в очень широком диапазоне. Поэтому выбор настроек наугад является неприемлемым, так как многие комбинации параметров алгоритма оказываются неработоспособными, а тщательная настройка под новую задачу является чрезмерно трудоемкой из-за временных, трудовых и материальных затрат. Использование опыта решения аналогичных задач также не дает повода для оптимизма.
Для разрешения указанной проблемы предлагаются различные подходы, одним из которых является коэволю-ционный алгоритм [2]. В коэволюционном алгоритме параллельно работают, взаимодействуя при этом между собой, индивидуальные генетические алгоритмы с различными настройками. Конкуренция и кооперация индивидуальных алгоритмов обеспечивает самонастройку эволюционного поиска на решаемую задачу в ходе ее однократного решения и снимает проблему «ручного» выбора наилучшего алгоритма.
Автором статьи был разработан коэволюционный генетический алгоритм (ГА) условной оптимизации [3], который обеспечивает автоматический выбор, помимо основных параметров генетического алгоритма, также и
метода учета ограничений, необходимого для адаптации генетического алгоритма на класс задач условной оптимизации.
В данной статье будет проведено экспериментальное сравнение эффективности коэволюционного алгоритма с индивидуальными генетическими алгоритмами на тестовых и практических задачах условной оптимизации.
В качестве тестовых задач условной оптимизации взяты восемь задач с ограничениями-неравенствами и две задачи с ограничениями-равенствами:
- задача 1:
I (х) = 3 • (х1 - 4)2 + 4 • (х1 - 4) х х(х2 - 4) + 3 • (х2 - 4)2 = тіп, х1 + х2 < 0, х* = (0; 0)т;
- задача 2:
I (х) = 8 • (х1 - 3)2 + 4 • (х1 - 3) х х(х2 - 3) + 4 • (х2 - 3)2 = тіп,
-3 < х1 < 3,
-3 < х2 < 3, х* = (3; 3)т;
- задача 3:
I (х) = 3 • (х1 - 6)2 + (х1 - 6) х х(х2 - 6) + 3 • (х2 - 6)2 = тіп,
-3 < х1 < 3,
-3 < х2 < 3, х* = (3; 3)т;
З1
- задача 4:
- задача 5:
х
У г -
- задача 6:
- задача 7:
- задача 8:
г = 5 • х + 0,5 • у ® тах, у <-2 • х + 5,
У >-х -1,5,
■у < 2 • х +1 х > 0,
.У > 0,
х =— = 2,166 66,
6
у = - = 0,666 66,
3
г = — = 11,166 666 67;
6
г = 10х - 5у ® тах,
У -15 < 0, у + 2х2 - 20 < 0,
*2.у < 0,
2
= 3,651483 71 670110 760,
= -6,666 666 66 666 666 696,
: 69,848170 5 003110 760;
г = - х2 + у2 ® тах, у < 7 + єіп (2 • х),
< у > 1 - єіп (2 • х), х є [0, 4],
х = 4,
у = 7,989 358 247, г = 79,829 845 20;
г = -10 • х - 5 • у ® тіп,
'х > 0,
у >-15, х2
у <—,
2
у > 2 • х2 - 20, х = 3,651483 717, у = 6,666 666 670, г = -69,848170 52;
и = х3 + у2 + г ® тах,
х > 0,
у > 0,
г > 0,
х2 + у2 + г2 < 25,
х = 5, у = 0,
г = 0, и * = 125;
- задача 9:
I (х) = 3 • (х1 - 6)2 + (х1 - 6) х х(х2 - 6) + 3 • (х2 - 6)2 = тіп,
х1 + х2 = 0, х * = (0; 0)т;
- задача 10:
I(х) = 3 • х2 + 5 • х1 • (х2 - 8) + 3 • (х2 - 8)2 = тіп, х1 + х2 = 0, х* = (-4; 4)т.
Тестовые задачи условной оптимизации 1-3 и 9, 10 взяты из [4], задачи 4-8 - из [5].
В качестве практических задач использованы задача формирования оптимального инвестиционного портфеля предприятия (инвестиционная задача) и задача формирования кредитного портфеля банка (банковская задача). Задача формирования оптимального инвестиционного портфеля предприятия состоит в составлении такого портфеля инвестиционных проектов, который смог бы принести инвестору наибольшую прибыль при приемлемом риске. При этом должны выполняться ограничения по выделяемым средствам, норме прибыли и общей рискованности портфеля. Задача формирования кредитного портфеля банка состоит в создании оптимального кредитного портфеля при наличии жестких ограничений по суммам имеющихся в наличии свободных кредитных ресурсов, их стоимости, процентным ставкам на выдаваемые кредиты, срокам привлечения ресурсов, максимальному размеру кредита на одного заемщика. Постановка практических задач и исходные данные взяты из [6; 7]. Эти задачи представляют собой задачи условной оптимизации большой размерности с бинарными переменными, алгоритмически заданными функциями и ограничениями-неравенствами.
В данной статье рассматривается возможность выбора для индивидуальных генетических алгоритмов трех типов селекции: пропорциональной, турнирной с турниром 2, ранговой; трех типов скрещивания: одноточечного, двухточечного, равномерного; трех методов учета ограничений: «смертельные штрафы» + «лечение» недопустимых индивидов, динамические штрафы, адаптивные штрафы [7]. Используется адаптивная мутация, предложенная в [4], не требующая настройки.
Для иллюстрации необходимости настройки параметров генетического алгоритма в табл. 1 представлены наилучшие настройки индивидуального ГА для тестовых и практических задач, найденные полным перебором комбинаций, основанном на многократных запусках алгоритмов и статистическом анализе. В случае статистической неразличимости показателей эффективности приведены несколько равноэффективных комбинаций настроек параметров алгоритма.
В табл. 1 представлены все три типа селекции, все три типа скрещивания и все три метода учета ограничений.
Это означает, что при отсутствии априорной информации о поведении целевой функции и ограничений фактически невозможно «угадать» оптимальную комбинацию настроек алгоритма, даже обладая серьезным опытом эволюционной оптимизации.
Основной комплекс исследований по проверке целесообразности использования коэволюционного подхода на задачах условной оптимизации был разбит на четыре этапа.
На этапе 1 индивидуальные алгоритмы тестируются по отдельности. Общее число комбинаций параметров алгоритма составляет 27 (три метода селекции, три метода скрещивания, три метода учета ограничений). Для каждой задачи каждый алгоритм тестируется по пять раз. Каждый тест включает 100 запусков алгоритма, по которым определяется надежность, т. е. отношение числа запусков, в которых с заданной точностью найден известный оптимум, к общему числу запусков, и скорость, т. е. средний номер поколения, на котором впервые в прогоне найден оптимум. По пяти тестам усредняются значения надежности и скорости, а также проводится статистическое сравнение алгоритмов по ранговому критерию
Вилкоксона. В банковской задаче ввиду отсутствия известного оптимального значения приводятся значения средней и наилучшей прибыли банка.
На этапе 2 происходит коэволюционная свертка по селекции, при которой формируются коэволюционные комбинации по три алгоритма с одинаковым методом учета ограничений и типов скрещивания, но отличающиеся типом селекции. Общее число комбинаций сокращается в три раза - до девяти.
На этапе 3 проводится аналогичная свертка по методу учета ограничений и были получаются три коэволю-ционные комбинации по девять алгоритмов.
И, наконец, на этапе 4 используется итоговый коэво-люционный алгоритм с автоматической настройкой всех трех параметров: селекции, скрещивания и метода учета ограничений.
Необходимо отметить, что итоговый коэволюционный алгоритм включает не все 27 индивидуальных алгоритмов, а только 18 (отсутствуют алгоритмы с одноточечным типом скрещивания). Это объясняется тем, что по результатам исследований было выяснено следующее: алгоритмы с одноточечным и двухточечным типом скре-
Таблица 1
Наилучшие параметры индивидуального ГА для задач условной оптимизации
Задача Селекция Скрещивание Метод учета ограничений
Задача 1 Пропорциональная Равномерное «Смертельные» штрафы+«лечение»
Задача 2 Турнирная Одноточечное Адаптивные штрафы
Ранговая Одноточечное Адаптивные штрафы
Турнирная Одноточечное Динамические штрафы
Ранговая Одноточечное Динамические штрафы
Турнирная Двухточечное Адаптивные штрафы
Ранговая Двухточечное Адаптивные штрафы
Турнирная Двухточечное Динамические штрафы
Ранговая Двухточечное Динамические штрафы
Задача 3 Ранговая Одноточечное Адаптивные штрафы
Ранговая Двухточечное Адаптивные штрафы
Задача 4 Турнирная Одноточечное Адаптивные штрафы
Ранговая Одноточечное Адаптивные штрафы
Турнирная Одноточечное Динамические штрафы
Ранговая Одноточечное Динамические штрафы
Турнирная Двухточечное Адаптивные штрафы
Ранговая Двухточечное Адаптивные штрафы
Турнирная Двухточечное Динамические штрафы
Ранговая Двухточечное Динамические штрафы
Задача 5 Турнирная Двухточечное Динамические штрафы
Ранговая Двухточечное Динамические штрафы
Задача 6 Турнирная Одноточечное Динамические штрафы
Ранговая Одноточечное Динамические штрафы
Турнирная Двухточечное Динамические штрафы
Ранговая Двухточечное Динамические штрафы
Задача 7 Турнирная Одноточечное Динамические штрафы
Ранговая Одноточечное Динамические штрафы
Турнирная Двухточечное Динамические штрафы
Ранговая Двухточечное Динамические штрафы
Задача 8 Турнирная Равномерное Динамические штрафы
Задача 9 Турнирная Одноточечное Динамические штрафы
Ранговая Одноточечное Динамические штрафы
Турнирная Двухточечное Динамические штрафы
Ранговая Двухточечное Динамические штрафы
Задача 10 Турнирная Двухточечное Динамические штрафы
Инвестиционная задача Ранговая Равномерное Адаптивные штрафы
Банковская задача Ранговая Двухточечное Динамические штрафы
щивания статистически незначительно отличаются друг от друга по эффективности, но при этом на некоторых задачах двухточечное скрещивание все же демонстрирует некоторое преимущество. Использование в итоговой коэволюции всех 27 алгоритмов приводит к некоторому снижению надежности и скорости на всех тестовых задачах. Вероятно, в этом случае будет превышено некоторое критическое число алгоритмов в коэволюционной комбинации, когда негативный эффект от роста числа алгоритмов начинает преобладать над положительным эффектом взаимодействия алгоритмов между собой.
Тестирование проходит при следующих общих настройках алгоритма: интервал адаптации (для коэволю-ционного алгоритма) - пять поколений; штраф для проигравших алгоритмов (для коэволюционного алгоритма) - 10 %; размер «социальной карты» (для коэволюционного алгоритма) - 10 %; допуск для нарушения ограничений-равенств - 0,005; процент «лечимых» индивидов в методе «смертельных штрафов» - 20 %; параметр С для динамических и адаптивных штрафов - 0,5; параметры Рр Р2, к для адаптивных штрафов - 1,4; 1,2; 3. Значения всех этих параметров рекомендованы по результатам предыдущих исследований и не требуют настройки.
В тестовых задачах интервал для переменных - [-10; 10], дискретность для переменных - 0,001. В практических задачах соответствующая информация загружается из файла. Число поколений - 100, за исключением инвестици-
онной задачи (30 поколений). Начальное число индивидов в алгоритмах приведено в табл. 2.
Изменение начального ресурса индивидуальных алгоритмов на различных этапах обусловлено тем, что общий ресурс всех алгоритмов в коэволюционной комбинации (или отдельного алгоритма на первом этапе) остается неизменным. Уменьшение ресурса для задач с ограничениями-равенствами вызвано тем, что была использована генерация начальных популяций допустимыми индивидами, что при наличии ограничений-равенств сказывается на скорости работы алгоритма в целом. В практических задачах все искомые переменные являются бинарными, что сокращает длину бинарной строки-хромосомы и уменьшает необходимое число вычислений целевой функции с ограничениями.
Результаты исследований для задач с ограничениями-неравенствами, ограничениями-равенствами и для практических задач приведены в табл. 3...6. Жирным шрифтом выделены наилучшие показатели для каждой тестовой задачи (первоочередным показателем является надежность, следующим по значимости - скорость сходимости, для банковской задачи первоочередной показатель
- лучшее значение прибыли). В случае статистической неразличимости выделяется несколько показателей.
На всех тестовых задачах условной оптимизации с ограничениями-неравенствами и на практических задачах, которые также являются задачами с ограничениями-неравенствами, видно существенное повышение средних
Таблица 2
Начальный ресурс для алгоритмов
Класс задач Этап 1 Этап 2 Этап 3 Этап 4
С ограничениями-неравенствами 600 200 66 33
С ограничениями-равенствами, практические задачи 180 60 20 10
Таблица 3
Результаты исследований для задач 1...4 с ограничениями-неравенствами
Этап Показатель Задача 1 Задача 2 Задача 3 Задача 4
Надежность, % Скорость Надежность, % Скорость Надежность, % Скорость Надежность, % Скорость
Этап 1 Средний 24,91 64,08 66,13 63,49 67,93 62,14 73,54 59,64
Лучший 73,60 70,80 100,00 55,20 100,00 60,60 100,00 62,60
Этап 2 Средний 76,78 74,15 89,47 38,56 90,00 51,22 95,93 52,80
Лучший 98,80 78,00 100,00 31,20 100,00 30,20 100,00 38,20
Этап 3 Средний 94,93 69,60 99,87 25,07 99,80 34,40 100,00 28,20
Лучший 96,60 65,00 100,00 23,20 100,00 30,20 100,00 27,00
Этап 4 99,00 57,80 100,00 23,00 100,00 31,40 100,00 27,00
Таблица 4
Результаты исследований для задач 5-8 с ограничениями-неравенствами
Этап Показатель Задача 5 Задача 6 Задача 7 Задача 8
Надежность, % Скорость Надежность, % Скорость Надежность, % Скорость Надежность, % Скорость
Этап 1 Средний 6,62 73,24 54,99 61,51 8,01 70,49 41,96 78,79
Лучший 29,20 73,40 100,00 68,00 32,00 71,00 74,80 70,00
Этап 2 Средний 47,29 69,43 83,49 55,93 49,04 69,44 89,13 67,82
Лучший 89,20 72,20 100,00 46,20 91,40 75,60 100,00 63,60
Этап 3 Средний 97,60 51,33 98,07 41,07 98,20 54,20 100,00 48,07
Лучший 99,40 48,60 99,20 36,00 99,80 50,40 100,00 41,40
Этап 4 99,00 48,00 98,20 39,40 99,60 50,20 100,00 44,80
показателей эффективности на каждом этапе коэволю-ционной свертки, а для большинства задач - и наилучших показателей.
Итоговый коэволюционный алгоритм (этап 4) работает эффективнее самого лучшего индивидуального алгоритма в семи из восьми тестовых задачах с ограничениями-неравенствами, а также в обеих практических задачах. Наиболее ярко это выражено в задачах 5 и 7: надежность наилучших индивидуальных алгоритмов составляет 29,2 и 32,0 % соответственно, а итогового коэволюци-онного алгоритма - 99,0 и 99,6 % соответственно при одинаковом ресурсе. Таким образом, в задачах условной оптимизации с ограничениями-неравенствами имеет место значительный положительный эффект взаимодействия алгоритмов между собой, чего не наблюдается в такой степени в задачах безусловной оптимизации. Эти результаты, а также результаты, полученные в [2], позволяют сделать общий вывод о том, что коэволюционный алгоритм в задачах безусловной оптимизации работает лучше алгоритмов со средними настройками, но все-таки хуже алгоритма с наилучшими настройками.
В некоторых случаях на промежуточных этапах свертки алгоритмов (для задачи 6 - на этапе индивидуальных алгоритмов) встречаются коэволюционные комбинации, которые несколько превосходят итоговый коэволюцион-ный алгоритм. Так, в задачах 3 и 8 итоговая коэволюция обеспечивает максимальную надежность, однако на предыдущих этапах встречаются комбинации алгоритмов, которые дают улучшение по скорости сходимости в среднем на одно и три поколения соответственно. В задаче 6 есть промежуточная неполная комбинация алгоритмов и индивидуальный алгоритм, которые дают выигрыш по надежности на 2 % по сравнению с итоговым коэволю-ционным алгоритмом. Для инвестиционной задачи неполная комбинация на этапе 2 дает выигрыш в 2 % по надежности и в пять поколений по скорости сходимости.
Результаты исследований для
Для банковской задачи на этом же этапе найдено решение, дающее выигрыш в прибыли по сравнению с решением на этапе 4 в 20 080 руб. (0,012 % от значения целевой функции). Однако эти отличия можно считать малозначительными, так как выигрыш до пяти поколений по скорости сходимости или до 2 % по надежности не сопоставим с затратами на поиск подходящей комбинации алгоритмов.
Аналогичные результаты получены в задачах с ограничениями-равенствами. Итоговый коэволюционный алгоритм значительно лучше среднего индивидуального в обеих задачах и значительного эффективнее лучшего индивидуального в задаче 9 (рост надежности с 56,8 до 80,2 %), в задаче 10 наблюдается снижение надежности на
3 % (с 37,2 до 34 %). Однако при этом в обеих задачах встречаются неполные коэволюционные комбинации, которые дают выигрыш в надежности по сравнению с итоговой коэволюцией в среднем на 13 и 11 % соответственно, что не может быть признано малозначительным.
Интересной особенностью коэволюционного алгоритма условной оптимизации является динамика перераспределения ресурсов между алгоритмами. Ниже приведены графики этого процесса на некоторых тестовых задачах при усреднении по 100 запускам (см. рисунок).
Похожая картина наблюдается и во всех остальных тестовых и практических задачах: к максимальному размеру ресурса стремятся шесть алгоритмов, когда как остальные либо стабилизируются, либо стремятся к минимуму, т. е. к размеру «социальной карты». Во всех случаях шесть лидирующих алгоритмов одни и те же: это алгоритмы с методом учета ограничений («смертельные штрафы» + «лечение» локальным поиском). Иными словами, алгоритмы с динамическими или адаптивными штрафами даже при минимальном ресурсе обеспечивают существенное увеличение эффективности работы ко-эволюционного алгоритма в целом.
Таблица 5
1ч с ограничениями-равенствами
Этап Показатель Задача 9 Задача 10
Надежность, % Скорость Надежность, % Скорость
Этап 1 Средний 29,37 51,39 17,21 50,76
Лучший 56,8 71,8 37,2 75,4
Этап 2 Средний 83,80 63,91 32,82 67,67
Лучший 93,6 70,2 45,4 51,8
Этап 3 Средний 75,07 52,67 35,47 57,73
Лучший 79,8 48,4 36,4 56,0
Этап 4 80,2 54,0 34,0 59,0
Таблица 6
Результаты исследований на практических задачах
Этап Инвестиционная задача Банковская задача
Надежность, % Скорость Лучшая прибыль Средняя прибыль Скорость
Этап 1 Средний 55,29 18,07 199 760 935,7 199 606 449,8 60,37
Лучший 97,0 16,6 199 843 184 199 617 408 65
Этап 2 Средний 73,36 15,64 199 840 746,7 199 673 820,4 80,22
Лучший 100,0 12,8 199 893 440 199 672 480 82
Этап 3 Средний 98,93 16,53 199 844 565,3 199 643 189,3 81,0
Лучший 99,6 15,6 199 870 448 199 643 520 79
Этап 4 98,2 18,2 199 869 360 199 638 544 76
Таким образом, проведенные исследования полностью подтверждают целесообразность использования ко-эволюционного подхода в задачах условной оптимизации с ограничениями в виде неравенств и равенств. При этом подходе, помимо того, что устраняется проблема настройки параметров алгоритма, также достигается эффективность, превосходящая эффективность наилучшего индивидуального алгоритма на большинстве задач.
Коэволюционный алгоритм условной оптимизации позволяет решать сложные прикладные задачи условной оптимизации при невозможности использования классических детерминированных методов оптимизации и значительных затратах на вычисление целевой функции с ограничениями. К таким задачам может относиться автоматизированное генерирование интеллектуальных информационных технологий (нейронных сетей, экспертных систем на нечеткой логике и т. п.), применяемое при классификации, распознавании, прогнозировании, построении регрессионных зависимостей и др.
Библиографический список
1. Семенкин, Е. С. Метод обобщенного адаптивного поиска для синтеза систем управления сложными объектами / Е. С. Семенкин, В. А. Лебедев. М. : Макс-Пресс, 2002.
2. Об эволюционных алгоритмах решения сложных задач оптимизации / Е. С. Семенкин, А. В. Гуменникова,
М. Н. Емельянова, Е. А. Сопов // Вестн. Сиб. гос. аэрокос-мич. ун-та им. акад. М. Ф. Решетнева : сб. науч. тр. Красноярск, 2003. Вып. 5. С. 14-23.
3. Сергиенко, Р. Б. Коэволюционный алгоритм условной оптимизации: разработка и приложения / Р. Б. Сергиенко // Тр. Междунар. науч.-техн. конф. «Интеллектуальные системы» и «Интеллектуальные САПР». В 4 т. Т. 1. М. : Физматлит, 2008. С. 33-40.
4. Ворожейкин, А. Ю. Адаптивные эволюционные алгоритмы решения сложных задач оптимизации : дис. ... канд. техн. наук / А. Ю. Ворожейкин. Красноярск, 2008.
5. Рубан, А. И. Методы оптимизации : учеб. пособие /
A. И. Рубан. Красноярск, 2001.
6. Клешков, В. М. Модели и алгоритмы распределения общих ресурсов при управлении инновациями реструктурированного машиностроительного предприятия /
B. М. Клешков, Е. С. Семенкин // Проблемы машиностроения и автоматизации. 2006. N° 3. С. 24-31.
7. Семенкин, Е. С. Модели и алгоритмы для поддержки принятия решений инвестиционного аналитика / Е. С. Семенкин, А. Ю.Ворожейкин, А. В. Медведев // Вестн. Том. гос. ун-та. Серия «Информатика. Кибернетика. Математика». 2006. N° 293. С. 63-70.
8. Michalewicz, Z. Evolutionary algorithms for constrained parameter optimization problems / Z. Michalewicz, M. Schoenauer // Evolutionary Computation. 1996. Vol. 4, № 1. Р 1-32.
Графики перераспределения ресурсов между алгоритмами для задач 1 и 7
R. B. Sergienko
EFFECTIVENESS INVESTIGATION OF COEVOLUTIONARY GENETIC ALGORITHM FOR CONSTRAINED OPTIMIZATION PROBLEMS
The effectiveness of coevolutionary genetic algorithm and individual conventional genetic algorithms for constrained optimization problems is compared with testing and applied tasks. The coevolutionary algorithm is demonstrated to be not less effective than the best one for problem-in-hand individual conventional genetic algorithm.
Keywords: constrained optimization, genetic algorithm, coevolution, investments, credits.
© Сергиенко Р. Б., 2009