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

тизационных отчислений на затраты будет компенсироваться, во-первых, положительным влиянием сокращения налога на имущество, и, во-вторых, непосредственным воздействием амортизационных отчислений на МРУ

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

Учет рассматриваемых факторов при подготовке проекта и в ходе его реализации делает возможным управление его эффективностью. При этом необходимо учитывать взаимодействие факторов друг с другом и изменение спроса на продукцию.

Таким образом, можно сделать вывод, что предлагаемая классификация методов моделирования инвестицион-

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

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

1. Зимин, И. А. Реальные инвестиции / И. А. Зимин. М. : Тандем, 2000. 304 с.

2. Старик, Д. Э. Оценка эффективности инвестиционных проектов / Д. Э. Старик. Финансы. 2006. № 10. С. 70-72.

3. Конструктор и решатель дискретных задач оптимального управления («Карма») : программа для ЭВМ / правообладатели: А. В. Медведев, П. Н. Победаш, А. В. Смольянинов, М. А. Горбунов. Зарегистрировано Федер. службой по интеллект. собственности, патентам и товарным знакам (Роспатент) 11.09.2008, N° 2008614387.

M. A. Gorbunov

THE METHODS OF MODELLING AND INVESTMENT PROJECTS EFFICIENCY FACTORS

The classification of methods of investment projects modeling, the comparative analysis of the given methods, advantages, lacks, directions of application are made in this case. On the basis of the developed calculation of enterprise net profit algorithm, the factors of efficiency of the investment project are displayed.

Keywords: the investment project, an estimation and the analysis of efficiency, modelling of the project.

© Горбунов М. А., 2009

УДК 519.68

А. Ю. Ворожейкин, Т. Н. Гончар, И. А. Панфилов, Е. А. Сопов, С. А. Сопов

ОБ ОДНОЙ МОДИФИКАЦИИ ВЕРОЯТНОСТНОГО ГЕНЕТИЧЕСКОГО АЛГОРИТМА ДЛЯ РЕШЕНИЯ СЛОЖНЫХ ЗАДАЧ УСЛОВНОЙ ОПТИМИЗАЦИИ*

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

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

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

*Данное исследование проводится при поддержке ФЦП «Научные и научно-педагогические кадры инновационной России на 2009-2013 годы» (НИР НК136П/3), при поддержке гранта Президента РФ молодым кандидатам наук на 2009-2010 гг. (грант МК-2160.2009.9).

тывать и применять более эффективные и универсальные методы. К таким методам относятся, в частности, эволюционные алгоритмы (ЭА), доказавшие свою эффективность при решении многих сложных задач [1; 2].

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

Одним из подходов, позволяющих уменьшить число настраиваемых параметров эволюционных алгоритмов, является применение вероятностных генетических алгоритмов, или ВГА [3; 4]. Их отличие от стандартного генетического алгоритма (ГА), в частности, состоит в том, что в них отсутствует оператор скрещивания, а новые решения получаются на основе статистической информации о поисковом пространстве. Таким образом, накапливая и используя эту информацию, данные алгоритмы самостоятельно могут адаптироваться к решаемой задаче.

ВГА показали свою эффективность и применимость к некоторым сложным задачам оптимизации [5; 6] и являются перспективными для дальнейшего изучения и совершенствования. Проблема исследования их специфических свойств на широком классе задач оптимизации, уменьшение количества настраиваемых параметров без потери эффективности является актуальной. Данная работа посвящена исследованию эффективности ВГА в сложных задачах условной оптимизации.

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

рк=(рк, ..., ркп), рк = р(хк=1),/=щ,

где рк - вероятность присвоения г-й компоненте вектора решения X значения 1; к - номер итерации.

В общем виде работу алгоритма ВГА можно представить следующим образом.

1. Инициализировать случайным образом популяцию решений.

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

Р ЧРр -, Рп ) ,

р.1 = р {х = 1} = Г ,1 =1,п,

' г=1

где п - длина хромосомы; х1 -1-й бит /-го индивида.

3. В соответствии с распределением Р сформировать популяцию потомков.

4. Применить оператор мутации к популяции потомков.

5. Из популяции родителей и потомков сформировать новую популяцию.

6. Повторять шаги 2-5, пока не выполнится условие остановки.

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

| ; _____I_____I_______________________I_____I_________________

I II Л AJ и Д. .1- I__ и Д.

Рис. 1. Значения 1-й компоненты вектора вероятностей в зависимости от номера поколения

В [3; 4] был предложен следующий алгоритм прогноза:

1. Для данной задачи выбрать определенную схему ВГА, определить число итераций г = 1, ..., I и число независимых запусков алгоритма к = 1, . . ., К .

2. Набрать статистику (р1!)к, 1 = 1, ..., п . Усреднить (р1 )г по к. Выявить тенденцию изменения компонент р1.

I

3. Считать х°р‘ = 1, если (р1)г - 0,5) > 0, иначе

г=1

х°р1 = 0.

Основная идея данного алгоритма состоит в том, что чем чаще вероятность оказывается больше 0,5, тем вероятнее всего ген в оптимальном решении принимает значение, равное 1.

На практике возможна ситуация, когда в начале работы ВГА накоплено недостаточно информации о поисковом пространстве и значение 1-го гена у большинства решений равно 0 (или 1). На более позднем поколении ВГА находит очень хорошее решение, у которого значение 1-го гена от -личное от ранее встречавшихся, и значения1-й компоненты вектора вероятностей начинают сходиться к противоположному значению (рис. 2). Однако приведенный выше алгоритм прогноза вычислит значение гена, равное первоначальному, поскольку 1-я компонента вектора вероятностей продолжительное время оставалась меньше 0,5 (или

больше 0,5, если первоначально было значение 1).

1..---------------------------.----.-----.---------------

л м I1 /"''

I-7 ь; '/-.м!.

I. и Л1 ^ У. А .'1 и ^ 1Л.

Рис. 2. Ситуация, когда прогноз может быть неверным

Таким образом, можно использовать следующую модификацию алгоритма прогноза.

1. Определить шаг прогноза K.

2. Через каждые K поколений по набранной статистике Pi, / = 1, NK , NK = t • K, t е{ 1, 2, к} рассчитать изменение вектора вероятностей: А Р/ = Р/ - Р/ -1.

3. Каждому поколению придавать вес в зависимости от его номера: а/ = 2 i|NK (NK +1), / = Г • • •, Nк .

4. Рассчитать взвешенное изменение вектора вероят-

NK _

ностей по формуле АP = (Ар,) = ^ • АPi .

/=1

__5. Рассчитать прогнозируемое оптимальное решение:

X Р = (х°р‘), где х°р‘ = 1, если Ар, - 0,и х°р1 = 0 иначе.

6. Добавить полученное решение в текущую рабочую популяцию и продолжить работу ВГА.

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

Nк

ся таким образом, что +1 >ст; и ^ а. = 1.

i=1

Генетические алгоритмы условной оптимизации.

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

Пусть решается следующая задача условной однокритериальной оптимизации:

/(х)  ехй;

\ Я,(х) < 0,, = 1,г,

/і (х) =

тах

{о, gJ (х)}, ]=г

\Н. (х), j = г + Ї, т.

г;

В частности, метод «смертельных» штрафов попросту отбрасывает недопустимые решения, тогда как они, находясь вблизи допустимой области, зачастую несут в себе полезную информацию для порождения новых допустимых решений. Метод статических штрафов использует много настраиваемых параметров, которые пользователь должен самостоятельно подобрать перед решением каждой задачи. Неверный выбор данных параметров может привести к тому, что допустимые решения не будут найдены. Гибридные методы, использующие механизм «лечения», применяют на каждом шаге ЭА локальный поиск для того, чтобы минимизировать значения штрафных функций. Это требует значительных дополнительных вычислительных ресурсов.

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

Х«) = ( С • t)а.

На ^й итерации пригодность индивида х вычисляется в данном методе по следующей формуле:

т

Гйпе88(х) = /(х) + 8- (С • t)“ • £ (х).

/•=1

Параметры С, а, Р подбираются индивидуально для каждой решаемой задачи. На практике рекомендованы значения С = 0,5; а=р = 2 (получено экспериментальным путем).

Метод адаптивных штрафов. Этот метод также использует вышеописанные штрафные функции, функция

) вычисляется следующим образом:

Ц(ґ + ї) =

\hj (х) = 0, ] = г + Ї, т.

В общем виде пригодность индивида х вычисляется по формуле

т

ЙШе88(х) = /(х) + 5 • Ц(ґ) • £ /р (х);

j=l

где ґ - номер текущего поколения; 5 = Ї, если решается задача минимизации; 5 = -1, если решается задача максимизации; /j (х) - штраф за нарушениеу-го ограничения; Р - вещественное число. Штрафные функции /j (х) вычисляются по формуле

Р1 • ), если Ь е Б,

для всех t - к +1 < / < t,

Р2 • 1(t), если Ь‘ г Б, для всех t - к +1 < / < t, 1(0, в остальных случаях.

Известны следующие штрафные методы: метод «смертельных» штрафов, метод статических штрафов, метод динамических штрафов, метод адаптивных штрафов, а также гибридные методы, использующие механизм «лечения».

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

где Ь - лучший индивид /-й популяции, Р1 е (0,1) , Р2 >1 и Р1Р2 Ф1. Здесь на ^ + 1)-м шаге происходит уменьшение штрафа, если лучший индивид в течение к предыдущих поколений принадлежал допустимой области. Если же лучший индивид в течение того же промежутка времени выходил за границы допустимой области, то происходит увеличение штрафа.

Метод вводит три дополнительных параметра Р1, Р2, к. Таким образом, метод адаптивных штрафов штрафует недопустимых индивидов не только в соответствии с тем, насколько они сами нарушают ограничения, но и с учетом того, насколько ограничения нарушались их предшественниками [7].

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

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

Численное исследование эффективности алгоритмов ГА и ВГА для задач условной оптимизации. Сравнение эффективности ГА и ВГА проводилось на множестве тестовых задач однокритериальной условной оптимизации. Целевые функции и ограничения в задачах представляют собой линейные и нелинейные функции нескольких переменных. Приведем здесь некоторые из задач, входящих в тестовый набор (табл. 1) [8].

Тестирование проводилось при наилучших и наихуд -ших настройках параметров алгоритмов, для того чтобы установить диапазон влияния вносимых изменений на качество работы. Эти изменения могут и не улучшать

Тестовые задачи условной од

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

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

В качестве исследуемых характеристик были выбраны следующие:

- процент запусков (%), в которых было найдено точное оптимальное решение;

- средний номер итерации (Щ, на которой впервые было найдено точное оптимальное решение.

На первом этапе исследования был определен метод учета ограничений, который является наиболее эффек-

Таблица 1

жритериальной оптимизации

Условие задачи

Известное решение

г = х + у  тах; у < 7 + вт(2 • х), у > 1 - sin(2 • х), х є[0,4]

х = 4,

у = 7,989 358 247, 2* = 79,829 845 20

г = 5 • х + 0,5 • у  тах; у < -2 • х + 5, у > х -1,5, у < 2 • х +1, х > 0, у > 0

х = — = 2,166 66, 6

у =- = 0,666 66,

3

г = — = 11,166 666 67 6

г(х, у) = 2000х + 2400у  тах; х > 0,

у > 0,

х у

120 110

4х + у < 320.

х + у < 110,

х у

-------1-----

340 120

х + 2у < 160, х + 4у < 280

< 1,

< 1,

х = 50, у = 55,

гор1 = 232 000

= 20 + е - 20ехр

N = 4;

2х1 - 3х2 + 4х3 < 10,

4 х2 - 5 х3 + х4 < 1,

10х1 + 7,5х3 -8,4х4 < 3,5, -3,1х1 + 21,7х2 -36,4х4 < 16,2

х = 0, і = 1, N,

V = 0

N

г =

і=1

N = 2:

N

1(0,1 • х2 - 4cos(0,8хі) + 4тіп;

х^2 + 9х2 < 36,

х = 0, і = 1, N,

V = 0

тивным для выбранного множества тестовых задач. В результате исследований было установлено, что для стандартного ГА при наилучших настройках динамический штраф оказывается эффективнее во всех случаях. При наихудших настройках динамический штраф эффективнее в 60 % случаев. В среднем, динамический штраф эффективнее адаптивного в 60 % случаев. Для ВГА динамический штраф оказывается эффективнее во всех случаях при наилучших и наихудших настройках.

Таким образом, было установлено, что для ГА и ВГА метод динамического штрафа является более эффективным, чем метод адаптивного штрафа.

На втором этапе исследования было проведено сравнение стандартного ГА и ВГА с использованием метода динамических штрафов для учета ограничений (табл. 2). При наилучших настройках стандартный ГА оказался эффективнее в 67 % случаев. Однако даже в тех случаях, когда ВГА уступает стандартному ГА, разница в эффективности незначительна. При наихудших и средних настройках наиболее эффективным оказался ВГА в 100 и 75 % случаев соответственно.

На третьем этапе исследования сравнивались стандартный ГА и ВГА с прогнозом (табл. 3). Было установлено, что при наилучших настройках ВГА с прогнозом в целом эффективнее ГА в 60 % случаев, а при наихудших настройках эффективнее в 67 % случаев. Кроме того, алгоритм с прогнозом находит оптимальное решение на более ранней стадии работы алгоритма.

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

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

1. Holland, J. H. Adaptation in natural and artificial systems / J. H. Holland. Ann Arbor, MI : University of Michigan Press, 1975.

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

3. Сопов, Е. А. Вероятностный генетический алгоритм и его исследование // VII Королевские чтения. Т. 5. Самара : Изд-во Самар. науч. центра Рос. акад. наук, 2003. С. 38-39.

4. Сопов, Е. А. О вероятностном генетическом алгоритме. Современные техника и технологии. В 2-х т. Т. 2 / Е. А. Сопов // Томск : Изд-во Томского политехн. ун-та, 2004. С. 197-199.

5. Сопов, Е. А. Вероятностный генетический алгоритм с прогнозированием сходимости / Е. А. Сопов // Вестн. унив. комплекса. Красноярск : 2004. Вып 1 (15). С. 219-227.

Таблица 2

Сравнение эффективности ГА и ВГА для однокритериальной условной оптимизации с динамическим штрафом

Задача Наилучшие настройки Наихудшие настройки Средняя эффективность

ГА ВГА ГА ВГА ГА ВГА

% N % N % N % N % N % N

Линейная задача 1 7б 31,05 б4 32,81 12 1б,83 14 14,14 41,78 27,б7 40,22 2б,2

Линейная задача 2 100 472,04 100 44б,9 0 0 0 0 б1,19 357,38 б1,5б 375,58

Нелинейная задача 1 58 32,28 бб 32,39 8 25 24 18,25 34,22 28,95 41,33 2б,49

Нелинейная задача 2 100 21,22 98 15,02 44 9,93 б8 9,12 7б,07 14,49 83,5б 12,24

Нелинейная задача 3 20 18,8 б8 29,94 0 0 22 13,б4 7,41 19,45 40,89 24,б8

Нелинейная задача 4 94 35,77 92 Зб,09 52 43,42 48 42,9б 72,81 33,07 72,44 31,8б

Растригина 100 54,4 100 33,4 5 10 100 7б,92 5б,85 58,32 100 48,22

Ackley (and) 100 2,7б 100 4,51 95 б1,21 100 б9,71 99,бЗ 23,02 100 32,92

Ackley (or) 100 1,94 100 3,79 100 бЗ,04 100 42,24 100 12,57 100 13,41

Количество выигрышей 7 б б 3 2 2 7 б 3 4 7 5

Процент выигрышей 53,85 бб,б7 77,78 75 70 55,5б

Количество 4 2 0 5 1 3

выигрышей по двум критериям

Процент бб,б7 100 75

выигрышей по двум критериям

ВЗ

6. Сопов, Е. А. Программная реализация вероятностного генетического алгоритма решения сложных задач оптимизации I Е. А. Сопов II М., 2004. Зарегистрировано во Всерос. науч.-техн. информ. центре, N° 5020040050І.

7. Michalewicz, Z. Genetic algorithms, numerical optimization and constraints I Z. Michalewicz II Proc. of the

Sixth Intern. Conf. on Genetic Algorithms and their Applications, Pittsburgh, PA, 1995.

8. Whitley, D. Building Better Test Functions / D. Whitley // Proc. of the Sixth Intern. Conf. on Genetic Algorithms and their Applications. Pittsburgh, PA, 1995. P. 239-247.

Таблица 3

Сравнение эффективности ГА и ВГА с прогнозом для однокритериальной условной оптимизации с динамическим штрафом

Функция Наилучшие настройки Наихудшие настройки Средняя эфе активность

ГА ВГА

% N % N % N % N % N % N

Линейная задача 1 7б 31,05 48 34,29 12 1б,83 22 24,б4 41,78 27,б7 39,33 32,8

Линейная задача 2 100 472,04 100 438,4 0 0 2 8 б1,19 357,38 б0 350,82

Нелинейная задача 1 58 32,28 4б 23,9б 8 25 0 0 34,22 28,95 21,78 19,49

Нелинейная задача 2 100 21,22 бб 18,12 44 9,93 28 14,21 7б,07 14,49 45,11 1б,91

Нелинейная задача 3 20 18,8 34 29,47 0 0 0 0 7,41 19,45 17,33 21,45

Нелинейная задача 4 94 35,77 100 38,92 52 43,42 б0 41,77 72,81 33,07 84,22 30,84

Растригина 100 54,4 100 32,3б 5 10 98 55,22 5б,85 58,32 99,78 47,82

Ackley (and) 100 2,7б 100 3,0б 95 б1,21 100 50,57 99,бЗ 23,02 100 29,74

Ackley (or) 100 1,94 100 3,47 100 бЗ,04 100 5б,б5 100 12,57 100 15,58

Количество выигрышей 7 4 5 б 3 4 б 4 5 5 5 4

Процент выигрышей 58,33 б0 50 бб,б7 50 50 55,5б 50

Количество выигрышей по двум критериям 2 3 2 4 1 2

Процент выигрышей по двум критериям б0 бб,б7 бб,б7

A. Yu. Vorozheikin, T. N. Gonchar, I. A. Panfilov, E. A. Sopov, S. A. Sopov

A MODIFIED PROBABILISTIC GENETIC ALGORITHM FOR COMPLEX CONSTRAINED OPTIMIZATION PROBLEMS

A new algorithm for complex constrained optimization problems based on the probabilistic genetic algorithm with optimal solution prediction is proposed. The efficiency investigation results in comparison with standard genetic algorithm are presented.

Keywords: probabilistic genetic algorithm, constrained optimization.

© Ворожейкин А. Ю., Гончар Т. Н., Панфилов И. А., Сопов Е. А., Сопов С. А., 2009