Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2793.Методы оптимизации..pdf
Скачиваний:
175
Добавлен:
15.11.2022
Размер:
33.68 Mб
Скачать

7.6.Геометрическое программирование

Вобщей задаче геометрического программирования

{ у0(х) -A min;

 

 

 

yk(x )^ l,

k = l,K ,

 

 

и целевая функция уо{х), и левые части

ограничений удДж),

k = 1 , К, являются позиномамщ

определенными на

положи­

тельном ортанте R+. Поэтому мы можем записать

 

 

 

то

 

 

 

 

yo(®) = 5 ^ c 0iPoi(®),

 

(7.21)

 

 

t=i

 

 

 

 

где cot е R+, i = 1, mo,

 

 

 

 

 

 

 

n

0(o)

 

______

 

Po»(®) =

I l ^ i 0

г =

1, m 0,

(7.22)

 

j =i

 

 

 

 

a\f 6 R, г = 1 , mo, j = 1, n.

 

 

 

 

 

Аналогично

 

 

 

 

 

 

771A:

 

 

 

 

 

Ук{х ) ~ ^

 

:iPki{x )i k =

l ,K ,

(7.23)

2=1

 

 

 

 

 

где Cfci E R+, к = 1 , AT, г =

1 , m0,

 

 

 

 

n

(fc)

 

____

 

_____

 

Pkг(®) = П х?;

/г = 1,Х,

г = 1, mjt,

(7.24)

j=1

 

 

 

 

 

 

(A:)

aj • — некоторые действительные числа.

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

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

неравенстве взвешенных средних

тWi

г=1

где у* > 0, Wi > 0, г 1 , т , и

т

J2 wi = !•

г=1

В данном случае удобно преобразовать неравенство таким образом, чтобы в нем не использовались нормированные веса. Для этого выполним замену и){ = А*/А, %= 1 , га, где Л = Ai + ...

+ Am. Тогда неравенство взвешенных средних можно запи­ сать в виде

771 771 л » /\ 771 \ /\

1 » П ( £ )

-*П (£)

(7.25)

1=1

1=1

1

1=1

1

 

Используем это неравенство для оценки позиномов Ук(х).

Выберем в качестве весов произвольные числа Аы ^ 0, i =

1 , г а *,

k = О, К, и положим

 

 

 

 

 

 

 

ТЩ

 

 

 

 

А* = ][> *< ,

k = 0 JC.

 

 

 

 

г= 1

 

 

 

Тог^а? учитывая запись позиномов Ук(х) в виде суммы функций ckiPki(x) специального вида, из неравенства (7.25) получаем

У к ( х ) > \ кЦ ( — Р^ Х ) ) Хи/Хк к = 0 ,К .

(7.26)

Все части этих неравенств положительны. Поэтому, возведя обе части неравенства для позинома к = 1, К, в степень А* и перемножив левые и правые части всех полученных нера­ венств, получим новое неравенство

ГКА‘м > П Л2*

CkiPkii'^) *ki

^ki

)

к=1

к=1

 

Для точек х допустимого множества 12 выполняются нера­ венства Ук{х) ^ 1, к = 1 , К. Значит, левая часть записанного неравенства не превышает единицы и

CkiPkijx)

^ki

Умножая это неравенство на неравенство (7.26) для целевой функции уо(аз) (т.е. при к = 0), возведенное в степень Ао, заключаем, что

^ (* )> П ^ П (^ г М )Л“

<7-27>

к=0 х=1

кг

 

Напомним, что последнее неравенство верно при произвольном выборе чисел А*; ^ 0 , i = 1 , m*, к = 0 , К.

Пусть числа Аоь i = 1, гао, связаны равенством

 

то

 

Ao = E A 0i = l.

(7.28)

1=1

 

Тогда, используя выражения (7.22) и (7.24) для Ркг(х), г = 1, т * , к = 0,К, неравенство (7.27) можно преобразовать к виду

/ 0 \ \ n tk \ 71

»и,(п(Э-)П<'П(ё)“П (7.29)

ai = Y l'5 2 aij)Xki' 3 = 1» n■

(7.30)

k=0 i=1

 

Пусть числа A^, k = 1, if, г = 1, m*, выбраны так, что выпол­ няются условия ортогональности, т.е. ау = 0, j = 1 , п. Тогда правая часть в (7.29) не будет зависеть от переменных ау и мы придем к соотношению

 

/ т о

\ \ К rrik

ч

 

уоиК,П(Э“)П лг*П(^)‘‘=ад-

(7-31)

где w £

— точка с неотрицательными координатами

^ 0,

к = 0, if,

г = 1, т * , т

= т о + mi + ... + тк- Функцию d(tu),

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

w>(*).

Если множество ТУ* точек w £ R™, координаты которых удовлетворяют равенству (7.28) и равенствам (7.30) с ау = 0, j = I, п, не пусто, то целевая функция уо(х) на ТУ*, согласно (7.31), ограничена снизу и имеет конечную точную нижнюю грань М > 0, причем М ^ d(w) для любого w £ 1У*. Выбрав произвольную точку w £ ТУ*, можно использовать значение d(w) в качестве оценки снизу точной нижней грани целевой функции.

Очевидно, что если уо(®*) = d(w*) для некоторых точек х* £ О, и w* £ ТУ*, то в точке ж* целевая функция достигает наименьшего значения в Q, а в точке w* двойственная функция достигает наибольшего значения в ТУ*. Можно показать*, что верно и обратное: если целевая функция достигает в Q наимень­ шего значения в точке ж*, а двойственная функция достигает в ТУ* наибольшего значения в точке ги*, то уо(х*) = d(w*). Таким

См.: Евдоким ов А .Г .

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

Точку w* и максимальное значение d* = d(w*) двойственной функции d(w) находят как решение задачи

fd(w) —> max; mo

= 1 ,

<г=1

К771*.

. fc=0 г=1

Значение d* является наименьшим значением функции уо(х), которое она принимает в точке х*. Эту точку можно найти, исходя из равенства уо(х*) = d*

Отметим, что неравенство уо(х) ^ d(w) получено путем многократного применения неравенства взвешенных средних (7.25), которое обращается в равенство при выполнении усло­ вий j/jA/Aj = 1 , г = 1 , т. Следовательно, равенство уо(х*) = = d(w*) означает, что все неравенства (7.26) превращаются в равенства, причем j/jt(®*) = 1, к = 1 , К. А это возможно лишь при выполнении условий

AkckiPki(?'*') ,

i = l,m k, k = 0

,K .

Aki

 

 

Таким образом, точку х* можно найти как решение системы уравнений

 

Poi{x) = — d*,

г = 1,ш 0;

<

С°*

(7.32)

 

Pki(x) = i - ^ - ,

i = l,m kt k = l,K ,

<*kcki

где учтено, что в соответствии с (7.28) Ао = 1. Заменой Xj = = е^, j = l,n, и последующим логарифмированием система

(7.32) преобразуется в систему m линейных алгебраических уравнений относительно п неизвестных £j, j = 1 , n.

К задаче геометрического программирования сводятся не­ которые задачи оптимизации, в которых целевая функция не является позиномом. Например, функция

fo(x) = yi(x) + y2{x)(y3(x))0, х € R” ,

(7.33)

где yi(®), i = 1, 2, 3, — позиномы, a /3 ^ 0, в общем случае не является позиномом (она будет позиномом либо в случае, когда уз(х) состоит лишь из одного слагаемого, либо в случае нату­ рального 0). Покажем, что задача минимизации функции fo(x) в Rn равносильна задаче геометрического программирования

y(z) = 2/1(®) 2 {х)х^ + 1 ->• min

(7.34)

3^71+1

гд е« = (ж, xn+i) = (a:i, х2, ..., i n+ i) 6 ^ .

Отметим, что если х* € R” — точка минимума функции / о(ф), то точка z* = (®*, ®*+1) е R?+1, где ®*+1 = уз(®*), удо­ влетворяет ограничению задачи (7.34). Поэтому эта точка принадлежит допустимому множеству П задачи (7.34) и

/о(®*) = yi(®*) + У2 (х*) (уз{х*))0 =

=У1(х*)+У2{х*){х„+1)1} = y{z*) ^miny(z). (7.35)

Вто же время из ограничения задачи вытекает, что для любой точки z = , хп+\) Е верно неравенство хп+\ > уз(ж).

Следовательно,

y {z )= y i(x )+ y 2 (x)xP+ 1 >

^yi(®) + У2 (х){уз(х)У = /о(®) > /о(®*)

инаименьшее значение функции y(z) на множестве П не может быть меньше fo(x*).

Таким образом, задача минимизации функции /о(аз) в R+ и задача геометрического программирования (7.34) эквива­ лентны.

Пример 7.4. Найдем минимум функции

предполагая, что коэффициенты а, Ьположительны.

Целевая функция рассматриваемой задачи имеет вид (7.33),

где J/1 (аз) =

а/{х\х2), у2 (х) = 6, у3(аз) = х\ + х\, (3 = 1 / 2, аз =

= (a?i, Ж2).

В соответствии с изложенным выше сформулиро­

ванная задача равносильна задаче геометрического програм­ мирования

(7.36)

где z = (T I , х2, х3) е R+.

Сопоставляя вид целевой функции y(z) с представлениями (7.21) и (7.22), а вид левой части ограничения с представления­ ми (7.23) и (7.24), определяем, что в данном случае п = 3, т о = 2,

Перейдем к задаче максимизации двойственной функции d(w). Так как то = т\ = 2, то

w = (Aoi, А02, Ац , А12) G R?.

Для упрощения выкладок введем обозначения А01 = toi, А02 =

=

w2, Ац = ю3 и А12 = 1U4. Тогда условие нормировки

(7.28)

и

условия ортогональности — уравнения (7.30) при aj

= 0 —

приводят к системе уравнений

f W i + W 2 = 1,

2w\ + 2ws = О,

—w\ + 2w± = О,

\ 0 ,5 U >2 — — г^4 = 0.

Множество решений этой системы есть множество W *, на ко­ тором необходимо найти наибольшее значение двойственной

функции.

В системе четыре уравнения и четыре неизвест­

ных. Несложно убедиться в том, что система

имеет

един­

ственное

решение w\ = г^з = 1/4, W2 = 3/4,

=

1/8.

Таким

образом, множество W* содержит единственную точку w* = = (1/4, 3/4, 1/4, 1/8), а задача поиска максимального значения двойственной функции оказывается тривиальной. В соответ­ ствии с (7.31) двойственная функция d(io) имеет вид

Ее значение d* в точке го* равно

 

 

 

d* =

_ а \ 1/4 / _ Ь \

3/4/3 \ 3/8/ 1 у / 4 / 1 \ г/8 _

!/ 8

1/а)

1з/4У

\8/

\1/4/

\ 1/ 8/

V108 /

Чтобы найти координаты точки z* = (х|, т?!,

 

в которой

функция y(z)

достигает на множестве О, наименьшего значе­

ния, решим систему уравнений (7.32), в данном случае прини­ мающую следующий вид:

a

о = w\d\ Х{Х2

ЬхУ2 = w^d*,

f l

=

u>3

хз

 

w$ +w\

А

_

w\

Хз

 

год +io|

Эту систему можно решить и не преобразовывая ее в систе­ му линейных уравнений с помощью соответствующей замены переменных. В результате будем иметь

*

ч/бd*

y/bdt

2

1

4Ь

4Ъ '

х3 ~

 

Таким образом, исходная функция /о (^1,^2) достигает наи­ меньшего значения точке х* £ М2 с координатами

*

_

4 / v^3 а

х 1

Xо —

2 Ь #

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

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

Теорема 7.11. Функция

п

 

 

У{х) = ^ ^

® = (^1 ?3?2? •••j хп) £ }

(7.37)

2= 1

 

 

где & > 0, i = 1 , п, рассматриваемая при ограничении

 

п *?=4

(7*38)

2=1

 

 

А > 0, 7г > 0, г = 1 , гг, достигает

наименьшего

значения /х,

равного

 

 

/i = 7( А п г ^

7Л 1/7

(7.39)

Д О ')