Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Metody_optimizatsii

.pdf
Скачиваний:
17
Добавлен:
21.05.2015
Размер:
970.29 Кб
Скачать

 

43

Замечани е2. О бновлени еметода,

какправи ло, прои зводи тся и для

квадрати чны х функц и й, таккакреш ени езадачодномерной ми ни ми зац и и

зачастую

сопровождается вы чи сли тельны ми погреш ностями .

 

 

 

П р имер . Н айти методом сопряжённы х гради ентов точку ми ни мума

 

 

функц и и

 

2

2

4

3+ x , нача4x(=-x)впои+сxксточкx иf xx0

=

) .0,(0

 

Р ешение.

 

1

2

 

1

 

1

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ñf (x)=(8x1-4x2+1;6x2-4x1).

 

 

 

 

 

 

 

 

 

 

 

И т ерация1.

 

 

 

 

 

 

 

 

 

 

 

 

 

0.

Задади м ε =0,01, x0=(0,0), Ñf (x0 ) = (1,0), ||Ñf (x0 ) ||=1.

 

 

 

 

1.

Положи м к =0, p0= -Ñf (x0 ) =(-1,0).

 

 

 

 

 

 

 

 

 

2.

Реш и м задачу одномерной ми ни ми зац и и по α :

 

 

2α α ® α- .

=minF -

 

α 0=1/8.

 

 

 

Ñf (x1 ) = (0,1/2),

1 ||

 

 

 

3.

Н айдем х10+ α 0 p0=(-1/8,0),

)1/2Ñ(> ε ||.f =x

 

4.

k + 1 ¹ n

 

 

2

0

1

 

2

 

 

 

 

 

 

5.

β0

 

Ñ

x

 

 

||

 

 

 

 

 

f || =)=1/4Ñ(f . x ||

 

|| ) (

 

 

 

 

 

p1= -Ñf (x1 ) + β0 p0=(-1/4,-1/2).

 

 

 

 

 

 

 

 

 

 

И т ерация2.

 

 

 

 

 

 

 

 

 

 

 

 

2.

Реш и м задачу одномерной ми ни ми зац и и по α :

 

 

 

 

 

 

( 1/8

α 4 , α

4(1/8

α 2 )

 

34α)

2

4(1/8 α

4 ())α 22 -

+

-

 

 

 

 

1/8

α

4 ®- min-.

 

 

 

 

 

 

 

 

 

 

 

 

α1=1/4.

3.Н айдем х21+ α 1 p1 = (-3/16,-1/8). Ñf (x2 ) = (0,0) - получено опти мальное реш ени е, x*=x2

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

Мето дНьюто на

Если в результатепреобразовани я x=zQ матри ц аквадрати чной формы

при води тся к еди ни чной (т. е.

T

= E ),QтоHQметод наи скорейш его спуска

 

 

z1=z0- α *Ñf (z 0 ) , получаетреш ени езаоди нш аг.

В пространствепеременны х х данны й переход запи ш ется вви де

х1 Q−1 0 Q−1 - α *Ñf (x0 ) Q

и ли

х1 0- α *Ñf (x0 ) Q Q−1 .

Т аккак Q Q−1 =H-1 , то

х1 0- α *Ñf (x0 )

H-1. И терати вны й метод ви да

хk+1 k- α k Ñf (xk ) H-1

носи тназвани еметодаН ью тона.

Д ля квадрати чной функц и и

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

Гессепри менени еметодаН ью тона сш агом α = 1 обеспечи ваетполучени е точки глобального ми ни мумаровно заодну и терац и ю , незави си мо отвы бора начальной точки . Д ля вы пуклой неквадрати чной функц и и при менени еэтого методаобеспечи вает, какправи ло, бы струю сходи мость. О днако если точка

44

 

 

 

х0 вы брана недостаточно бли зко к

опти мальному

реш ени ю ,

то

последовательностьхk можетрасходи ться (каки водномерном случае).

 

Сущ ественны м недостатком метода

Н ью тона является необходи мость

вы чи слени я и обращ ени я матри ц ы Гессенакаждой и терац и и .

 

Алго р итм мето да Ньюто на .

Шаг0. Задатьпараметрточности ε , вы братьх0 ÎRn ,вы чи сли тьf(x0).

Шаг1. Н айти Ñf (x0 ) и провери тькри тери й останова: ||Ñf (x0 ) ||<ε .

Если онвы полнен, то вы чи слени я заверш и ть, полагая

x*=x0, f*=f(x0) .

Ш аг2. Положи тьх00- Ñf (x0 ) H-1, вы чи сли тьf(x0) и перейти кш агу 1.

П р имер . Н айти методом Н ью тонаточку ми ни мумафункц и и

 

( )

2

2

+ x

1

, начаx =-xвпои4 +сx3ксточкx 4иf x0

=x ( ,0)0.

 

1

2

 

1

2

 

Р ешение. Посчи таем вектор-гради ентфункц и и Ñf (x)=(8x1-4x2+1;6x2-4x1) .

 

 

 

 

 

 

 

æ

8

− 4

ö

М атри ц авторы х частны х прои зводны х и меетви д H=ç

 

 

÷ .

 

 

 

 

 

 

 

ç

- 4

6

÷

 

 

 

 

 

 

 

è

ø

 

-1

 

1

æ

6

4

ö

 

 

 

Н айдем обратную матри ц у H

=

 

 

ç

 

 

÷ .

 

 

 

 

 

 

 

 

 

 

 

 

32

ç

4

8

÷

 

 

 

 

 

è

ø

 

 

 

0. В ы берем ε =0.001, 0 =x ( ,0)0,

f(x0)=0.

 

 

 

1. Посчи таем Ñf (x0 ) =(1,0), ||Ñf (x0 ) ||=1>ε .

 

 

0

 

0

 

0

 

-1

 

 

 

 

 

1

 

 

0

 

 

 

2.

Положи м х

 

 

- Ñf (x

 

) H

 

=

 

 

 

 

8)1, -f(x=,16)= 33

(326() 4,

 

 

 

 

 

32

 

3.

Ñf (x0 ) =(0,0) -найдено опти мальноереш ени е x*=

− (8)1.

3 ,16

Ц елевая функц и я квадрати чная, поэтому реш ени езадачи получено заодну

и терац и ю .

 

 

 

З а да чи для са мо сто ятельно го р еш ения

 

 

 

 

 

 

 

 

 

 

 

1. Н айти разли чны ми методами точку ми ни мумаследую щ и х функц и й:

 

 

2

 

2

1

 

2

 

 

 

 

 

0

= 0)1 , ( x+ x, -2= x +4

x 2

x 1x))f (

 

1

 

2

 

 

 

 

 

 

 

 

2

 

 

2

1

 

0

= 3)5, ( x=- x,+ 12

x

x 2 ))2x( f

 

1

 

2

 

 

 

 

2

 

2

 

1

 

2

 

 

 

 

0

= 10) 5, (- x

-= x, 4x+ x 2

 

x 3x))f (

 

1

 

2

 

 

 

 

 

 

 

 

 

 

2

 

2

 

1

 

2

 

 

 

0

 

= 5)4, ( x-

x-=, 2

+x 4

x

x 4x))f (

 

1

 

2

 

 

 

 

 

 

 

 

2

 

2

1

 

2

 

 

 

 

 

0

= ,0)0 ( x - x, -32= +x 6

x 4

x ))5x( f

 

1

 

2

 

 

 

 

 

 

 

 

2

 

2

1 2

 

0

= 2)1, ( x=- x,+ x

x

x 2 6x))f (

 

 

1

 

2

 

 

 

 

 

2

 

2

1 2

 

0

 

= 0)2, ( x -= x, x+2

x3

x 7x))f (

 

1

 

2

 

 

 

 

 

45

2. Показать, что для квадрати чной

функц и и вметодеН ью тонаш аг

α* = 1.

 

 

 

§ 6. Ч исленны е мето ды

по иска усло в но го

 

 

 

 

 

 

 

 

 

 

экстр емума

 

 

 

 

 

 

 

 

 

 

 

 

 

В §2 бы ли рассмотрены необходи мы еи достаточны еуслови я

 

реш ени я

 

задачнели нейной

условной опти ми зац и и ви да

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f (x) → min

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

j

 

 

 

=

 

 

;

m, 1 j

, 0 xg) (

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

g x

 

 

 

 

 

 

 

 

j

 

 

 

 

 

 

 

, 1 + p=. +m, 0=( )m j

 

 

И спользовани е данны х

услови й

при води т

к

 

необходи мости

 

реш ени я

 

сложны х си стем равенств и

неравенств.

А нали ти чески

реш и ть получаемы е

 

си стемы возможно только для ограни ченного чи слапри меров. Д ля реш ени я

 

больш и нства

практи чески х

задач

и спользую тся

чи сленны е

 

методы .

 

Ч и сленны еметоды можно условно раздели тьнатри группы .

 

 

 

 

 

 

 

1.

М ет оды

возмож ных

направлений.

Э то

методы

 

непосредственного

 

реш ени я задачи условной опти ми зац и и ,

основанны енадви жени и

и з одной

 

допусти мой xk точки кдругой допусти мой точке x k +1 с"лучш и м" значени ем

 

ц елевой функц и и . Д ви жени еосущ ествляется по прави лу

 

+

=

k

 

k 1

k

x

 

 

 

+ α k yx .

В

качестве вектораy k

вы би рается возможное и

 

подходящ ее направлени е

 

пои ска в точке xk , а ш аг

α k

вы би рается,

напри мер, путем опти ми зац и и

 

ц елевой

функц и и

в

данном

направлени и

по αk . К

данны м

методам,

 

напри мер, относятся:

мет оды проекции градиент а и

мет оды возмож ных

 

направлений.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2.

М ет оды линеаризации. Д анны е методы

 

 

основаны

на сведени и

задач

 

нели нейной

условной

опти ми зац и и

к

 

задачам

ли нейной

условной

 

опти ми зац и и

на уровне и сходной

постановки

с дальнейш и м

анали зом

 

полученны х результатови корректи ровкой реш аемой ли нейной задачи.

 

 

3.

М ет оды последоват ельной безусловной минимизации. В

основе данны х

 

методов

лежи т

преобразовани е

задачи

 

 

условной

опти ми зац и и

в

 

последовательность задач безусловной

опти ми зац и и

 

путем введени я

в

 

рассмотрени е

вспомогательны х

ц елевы х

функц и й.

И сходная

 

задача

 

аппрокси ми руется

некоторой последовательностью вспомогательны х задач

 

безусловной

ми ни ми зац и и ,

для

которы х

разработаны

эффекти вны е

и

 

надежны е методы

реш ени я. Последовательность вспомогательны х

задач

 

подби рается, как прави ло, таки м образом,

чтобы

реш ени е и сходной задачи

 

оказы валось

пределом

 

последовательности

 

получаемы х

 

реш ени й

 

вспомогательны х задач. Ч асто,

для получени я реш ени я и сходной задачи

с

 

требуемой точностью

достаточно бы вает реш и ть относи тельно небольш ое

 

чи сло вспомогательны х

задач. В спомогательны е задачи

можно реш ать

 

при бли женны ми

методами

и

и нформац и ю ,

полученную

 

в результате

 

46

 

 

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

можно

эффекти вно

и спользоватьдля реш ени я следую щ ей. К данны м методам относятся: мет од шт рафов, мет од барьеров, мет од множ ит елейЛагранж а.

М ето ды

в о змо жны хна пр а в лений

М етоды , входящ и ев эту группу методов, бази рую тся напостроени и

возможны х и подходящ и х

направлени й, по которы м осущ ествляется

дви жени и и з одной допусти мой xk точки кдругой допусти мой точке xk +1 с

"лучш и м" значени ем

ц елевой

функц и и .

Д ви жени е

осущ ествляется по

прави лу

+

=

k

k

1

k

x

 

 

 

 

+ α k yx .

 

 

О пред ел ение

1.

 

Пусть

x

допусти мая

точка в

задаче вы пуклого

программи ровани я

 

 

 

f (x) → min

 

 

 

 

 

 

 

 

 

 

 

j

j

=

=

 

< n;

m

m, , 1j

g, 0(x) (1)

 

0

 

 

 

 

 

+m,

= m j ,

)gx(

 

 

 

1 + p≤,

где f (x) - ди фференц и руемая функц и я. Н енулевой вектор y назы вается возможны м направлени ем вточке x , если сущ ествуеттакоеδ > 0 , что точки

x + αy являю тся допусти мы ми в задаче для всех

α [0,δ ].

В ектор y

назы вается подходящ и м направлени ем в точке

x ,

если

вы полняется

неравенство Ñ ( ) T

< 0f. x y

 

 

 

 

З амечани е. Е сли

некоторое направлени е y

является

возможны м и

подходящ и м в точке x , то сущ ествует такое δ > 0 , что

точки x + αy

являю тся допусти мы ми в задаче и f (x + αy) < f (x)

для всех

α [0,δ ]

(Д оказать!).

Т ео р ема 1. Д ля того, чтобы допусти мая точка x бы ла реш ени ем задачи вы пуклого программи ровани я необходи мо и достаточно, чтобы в этой точке несущ ествовало одновременно возможны х и подходящ и х направлени й.

Рассмотри м вначалечастны й случай задачи (1) - задачу сли нейны ми ограни чени ями

f (x) → min

Ax b

Cx = d

где A матри ц а размера (m × n), C - матри ц а размера ( p × n), b-вектор размераm , d - векторразмера p .

Замети м, что, в частности , можетбы тьзадачатолько сограни чени ями равенствами и ли только ограни чени ями неравенствами .

У тв ер ждение

1.

Пусть x допусти мая

точка в задаче с ли нейны ми

ограни чени ями

и

предположи м, что A1

- это подматри ц а матри ц ы A,

отвечаю щ ая акти вны м ограни чени ям в точке x . Т огданенулевой вектор y

является возможны м направлени ем в точке x в том и только в том случае,

если 1 ≤ , = 0 . Cy 0A y

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

47

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Замети м,

что

если

в

задаче отсутствую т

 

ограни чени я-равенства

 

и

в рассматри ваемой

 

точке x

нет акти вны х

 

 

ограни чени й

 

(т.е.

точка x

 

является внутренней),

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

 

y = f (x) .

В

проти вном

случае

построени е подходящ и х

направлени й

 

можно осущ естви ть в ви де ми ни ми зац и и

функц и и

 

Ñ ( )T y fпрxи

услови ях

 

1

,

 

 

= 0 .

О Cyднако 0Aеслyи

сущ ествует такой

 

 

вектор y, такой, что

 

Ñ ( )

T

< 0f, x

y

,

 

 

 

= 0 , тоCyми ни мальное0A y

значени ефункц и и

Ñf (x) yT

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

при такой ми ни ми зац и и

несущ ествует(

 

 

f x)y(TÑ

 

inf), ®таккаклю бой

 

вектор λy ,

где λ

-

сколь угодно больш ое чи сло,

также удовлетворяет

 

услови ям

1λ

,

 

λ

= 0 . ТyакиCм образомA0 y ,

в задачу ми ни ми зац и и должно

 

бы ть вклю чено услови е, которое ограни чи вало бы

 

вектор y,

напри мер,

 

услови е

 

 

£ ,

 

=

 

.1И yтаi к, 1возможноеи подходящ еенаправлени еи щ ется

 

i

 

 

, n

 

вви де реш ени я следую щ ей задачи ли нейного программи ровани я

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ñ

 

 

fyTx® min

 

 

 

 

( )

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

,

 

 

 

 

 

= 0

 

 

Cy

 

 

 

0A y

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

− ≤ i 11,

 

 

y =

 

 

.1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i, n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

А лго р итм

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ш аг 1. Задатьначальную

точку x0,

характери сти ку точности алгори тма

 

ε > 0. Положи тьk = 0 .

 

 

 

 

 

 

Ñf (xk )

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ш аг 2.

Н айти

Ñf (xk ) .

Е сли

 

 

 

 

£ ε ,

то вы чи слени я прекрати ть и

 

 

 

 

 

 

положи ть x* = xk , и начеперейти кш агу 3.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ш аг 3. Подстави ть xk

в неравенстваи определи тьмножество и ндексов

 

акти вны х ограни чени й I (xk ) .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ш аг4. Е сли

I (xk ) = Æ и взадаченетограни чени й равенств, то положи ть

 

k

=y(xkf) ,

и наче

определи ть

y k

 

 

 

 

и з

реш ени я

задачи

ли нейного

 

программи ровани я

 

 

 

 

 

 

 

 

 

k

 

T k

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ñ

 

 

y

f

 

 

 

 

 

 

 

 

 

)(

)(

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x® min

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

k £ ,

 

 

 

 

k = 0

 

 

Cy

 

0 A y

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ik £ 1-1, £y =

 

.1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i, n

 

 

 

 

 

 

 

 

 

 

 

Ш аг5. Е сли Ñ

 

 

 

 

k

T

k

, то задачарешy f x

 

енаточно и

x

*

= x

k

. И наче -

 

 

 

 

 

 

 

)(

=)(0

 

 

 

 

для найденного вектора y k

определи ть

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

α k =

 

 

min

 

 

 

 

 

 

 

k

 

 

 

 

 

k

). f

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(arg + α y

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

α: xk ykÎW

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ш аг6. Н айти очередноепри бли жени е

+

=

k

 

k

1

k

 

 

x

 

 

 

 

 

 

 

 

+ α k

yx .

 

 

 

 

 

П р имер 1. Реш и тьрассмотренны м методом следую щ ую

задачу

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

2

 

 

 

 

 

2

 

2

 

2 ®x min- 4

+=x)

-yf x( )

( )( ,

 

 

 

 

1 +

 

2 x3,

x

 

 

 

 

 

 

 

 

 

 

 

 

 

48

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2 +

 

 

 

2 £ 4x,

 

x2

 

 

 

1 ,

 

 

2 ³ 0x.

 

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Реш ени е.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

17

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x0

æ

 

 

ö

 

 

 

 

 

 

 

 

1.

В озьмем в качественачальной точки

 

= ç

 

 

,

 

 

÷. Л егко провери ть, что

 

2

12

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

è

 

 

ø

 

Положи м ε = 0,01,

 

данная точка при надлежи т допусти мому множеству.

 

k = 0 .

 

 

И зобрази м графи чески допусти мое множество и ли ни и уровня

 

ц елевой функц и и

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

x2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

.

 

1

 

 

 

..

 

 

 

 

 

 

(4,2)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x0 .

 

 

x2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

 

1

 

 

 

 

 

2

 

 

 

 

3

 

 

 

 

 

 

 

 

x1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

æ

 

 

 

7

ö

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ñf (xk )

 

> ε , то перейдем кш агу 3.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2.

Н айдем

 

 

 

 

ç 7Ñ,-

 

 

 

(÷-f. Тx=)аккак

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

è

 

 

 

6 ø

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3.

В сеограни чени я вы полняю тся в точке x0

 

как строги е неравенства, т.е.

 

x0 -

внутренняя

точка допусти мого множества. Поэтому I (x0 ) = Æ .

 

Полагаем 0

 

 

 

 

 

0

 

 

 

 

æ

 

7 ö

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

=

ç7y,

 

(÷=. -x)Ñf

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

è

 

6 ø

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4.

О пределяя α0 и з соотнош ени я

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

æ

 

 

7

ö2

 

æ

7

 

 

 

 

 

 

 

 

7

ö2

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

α0 =

 

 

 

min

 

ç7αarg-

 

 

÷

+

ç

 

 

 

α -

 

 

 

 

÷

получи м α0

=

.

 

 

 

ì

 

2

6

 

12

 

 

 

 

 

 

 

 

 

 

 

13

è

 

 

ø

 

 

 

è

 

 

 

 

 

 

 

ø

 

 

 

 

 

 

 

 

 

 

 

14

 

 

 

5.

 

 

 

 

 

ïα £

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Н айдем

 

 

 

98

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

α:í

 

 

 

 

x1

 

 

æ 1 17 ö

 

 

 

 

 

1

æ

7 ö æ

 

3 ö

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ï

 

 

 

 

 

=

ç

 

 

 

 

 

 

÷

+

 

 

 

 

 

ç7

 

 

÷,= ç1,

 

 

÷ .

,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ïα £

4

 

 

 

 

 

 

 

 

 

è 2 12 ø 14 è 6 ø è 2 ø

 

 

 

 

 

 

 

 

 

 

 

î

 

 

6

 

Н айдем

 

 

 

 

 

 

 

 

1

 

 

 

(

 

Ñ,-1)(.-6Т =)ак каf кx

 

Ñf (xk )

 

> ε , то

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

перейдем кш агу 3.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

49

 

 

 

 

 

 

 

 

 

 

 

 

7.

Т очка

x1 при надлежи т грани ц е

 

 

допусти мого

множества,

второе

 

ограни чени е

задачи

является

акти вны м

 

для

 

этой

точки , поэтому

 

( 1 ) = {2}.

 

I

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

8.

Состави м вспомогательную

задачу для определени я вектора y1 :

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

y16miny -

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

11 +

 

 

21 £ 0y

y 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

11 £ -11 £y

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

21 £ -11. £y

 

 

 

 

 

 

 

Реш ая графи чески

 

(си мплексны м методом)

данную

задачу ли нейного

 

программи ровани я, найдем y1

 

æ 2

 

 

1

ö

 

 

 

 

 

 

 

 

 

 

 

= ç

 

 

,-

 

÷ .

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

 

 

9.

О пределяя α1 и з соотнош ени я

è 3

 

 

ø

 

 

 

 

 

 

 

 

 

 

 

 

 

ö2

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

æ

2

 

 

 

æ

 

1

 

 

1 ö

 

 

 

 

 

 

 

 

 

 

α1

=

 

min

ç

 

αarg-

3÷

 

ç

 

 

 

 

α -

-,

 

 

 

 

 

 

 

 

 

 

ì

3

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

è

 

 

 

ø

 

è

 

 

 

2 ø

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ïα £

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

α:í

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

9

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ïα £

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ï

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

î

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

получи м α1 =

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

æ

3

ö

3 æ 2

 

 

 

1

ö

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Н айдем x2

 

 

 

 

 

= (,2,1).

 

 

 

 

 

 

 

 

 

 

 

10.

=

ç1

 

÷ +

 

ç

 

 

-

 

÷

 

 

,

 

 

 

 

 

 

 

2

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

è

ø

2 è 3

 

 

 

ø

 

 

 

 

 

 

 

 

 

 

 

x3 ,

 

 

 

 

Продолжая данны й проц ессв качестветочки

получи м

точку

x3

æ 5

 

1

ö

 

 

 

 

3 =y ( ,0)0, поэтому x* = x3 .

 

 

 

 

 

 

 

= ç

 

,

 

÷ . В ектор

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

è 2

 

ø

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

М етод

возможны х

направлени й

и спользуется также для реш ени я

задач

нели нейного программи ровани я более общ его ви да.

 

 

 

 

 

 

 

 

 

 

М ето дв о змо жны хна пр а в ленийЗ о йтендейка

 

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f (x) → min

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

g j (x) £ 0, j =

 

,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1, m

 

 

 

 

 

где f (x) и g j (x)

- вы пуклы еди фференц и руемы ефункц и и . В данном случае

допусти мое множество

вы пукло,

поэтому в лю бой

допусти мой

точке

сущ ествует возможное направлени е y . Д ля того,

чтобы

в данной

задаче

направлени е y бы ло возможны м и подходящ и м в точкеx , достаточно, чтобы оно удовлетворяло си стеменеравенств

Ñf (x)yT < 0

(1)

50

Ñ j ( ) T < 0 , g yj xI (x) ,

гдеI (x) - множество акти вны х вточке x ограни чени й.

 

В озможное и

подходящ ее направлени е,

удовлетворяю щ ее данной

 

си стеме

неравенств,

определяется

 

и з

 

реш ени я

задачи

ли нейного

 

программи ровани я

 

 

 

z → min

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ñ (

)

T

£ zf, x

 

y

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

j

T Ñ Î (x)£,I j z , g y x( )

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

,

=

 

.1£ -i £11 y

 

 

 

 

 

 

 

 

 

 

( y, z) = (0,0)

 

 

 

 

i

 

, n

 

 

 

 

Замети м,

что

удовлетворяет

всем

ограни чени ям

задачи,

 

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

ожи даемы й результат

z* £ 0 .

 

Е сли

z* < 0 , то си стема (1)

 

и меет реш ени е y . В

этом случаестрои тся новая точка x + αy . При этом α

 

вы би рается

таки м

образом, чтобы

 

x + αy

 

бы ла

допусти мой

точкой,

 

напри мер,

 

 

 

 

 

 

α

=

 

 

 

 

(β

β ,..., βmk )

,

 

0min

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

где

β0

 

вы би рается

и з

услови я

 

 

 

 

 

 

k

 

β0

k

 

β >0

k

+ β+y k ), xа=f

( ( ymin

β j ,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

=

 

 

макси мально

возможное перемещ ени е и з

точки

x вдоль

 

j, m1 -

 

направлени я

y

с учетом i -го ограни чени я,

которое найдено и з

услови я

 

j ( + βi

) = 0 . y g x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Е сли

 

z* = 0 , то си стема(1) несовместна, т.е.

всевозможны ев точке x

 

направлени я

не являю тся подходящ и ми .

 

Э то означает,

что в точках h

 

допусти мого множества,

достаточно бли зки х к x , вы полняется неравенство

 

f (h) ³ f (x),

т.е.

x -точка локального

ми ни мума

 

f (x)

на допусти мом

 

множестве .

Н о для вы пуклой функц и и

f (x)

навы пуклом множестве этот

 

ми ни мум является и

глобальны м.

Т аки м образом,

точка x есть реш ени е

 

задачи.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

А лго р итм

 

 

 

 

 

 

 

 

 

 

 

 

Ш аг1. Задатьначальную

точку x0,

характери сти ку точности алгори тма

 

ε > 0. Положи тьk = 0 .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ш аг 2.

Н айти

Ñf (xk ) . Е сли

 

 

 

Ñf (xk )

 

 

 

£ ε ,

 

то вы чи слени я прекрати ть и

 

 

 

 

 

 

 

 

положи ть x* = xk , и начеперейти кш агу 3.

 

 

 

 

 

 

 

 

 

 

 

 

Ш аг3. Подстави ть xk в неравенстваи определи тьмножество и ндексов

 

акти вны х ограни чени й I (xk ) .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ш аг 4. Е сли

I (xk ) = Æ ,

то положи ть

 

k

=y (xkf) , и начеопредели ть

 

y k и з реш ени я задачи

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

zk

→ min

 

 

 

 

 

 

 

 

 

 

 

51

Ñ

k

T

k

,

y f x

 

 

 

 

 

)(

£)(zk

 

k Î (xkI),£ j z , yg )x( )(

 

 

 

 

j

k TÑk

 

 

 

 

 

 

k

 

 

 

 

 

 

 

 

 

,

= , n .1£ -i £11 y

 

 

 

 

 

i

Ш аг 5. Е сли y k

= 0 и ли zk

≤ ε

найденного вектора y k

определи ть

 

 

α

=

(β

где β0 вы би рается

и з

услови я

, то положи ть x* = xk .

И наче

для

 

β ,..., βmk ),,

1 0min

 

 

 

k β0

k

k + β+y k ),

xа=f

( ( ymin

 

β >0

 

 

 

β j , =

 

 

макси мально

возможное перемещ ени е и з

точки

 

x вдоль

j, m1 -

 

направлени я

y

с учетом i -го ограни чени я,

 

которое найдено и з

услови я

 

j ( + βi ) = 0 .

y g x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ш аг6. Н айти очередноепри бли жени е

 

 

+

 

=

k

k

1

k

x

 

 

 

 

 

 

 

 

+ α k

yx .

 

 

П р имер 2. Н айти ми ни мум в задаче

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(

1

)2

( 2

5)2 ®x minx 4

 

+

 

 

 

 

 

 

 

 

 

 

 

1 +

2

0

 

 

x1

 

x

 

 

 

 

 

 

Реш ени е.

 

 

 

 

1 ³

, 2 ³ 0 .x x

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0 = ( ; ,95x).0Л0егко провери ть, что

1.

В озьмем в качественачальной точки

 

 

данная точкапри надлежи тдопусти мому множеству,

при чем

(

0 ) = {2}. I x

 

Положи м ε = 0,03 ,

 

k = 0 .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2.

Н айдем

 

0

(- = ,1);8. Т8(акка) fкx

 

Ñf (x

k

)

 

> ε , то продолжи м реш ени е

 

 

 

 

Ñ

 

 

 

 

 

задачи. Д ля

нахождени я

y0

вы чи сли м

 

 

 

 

2 Ñ0

 

(- =;0)1( и g)составиx

м

 

задачу ли нейного программи ровани я

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

z0 → min

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

,

 

 

 

0

£-z0

y1- 8 8 y

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

- y10 £ z0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

10 £ 1-1, £y

 

 

 

20 £ 1-1. £y

 

 

 

y10 = 1,

3.

Реш ая полученную

задачу

си мплексны м

методом,

получи м

 

y20 = 1, z0 = 0 .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

М ето длинеа р иза ции (Ф р а нка Вулфа )

Рассмотри м задачу ми ни ми зац и и вы пуклой нели нейной функц и и на множестве, задаваемом ли нейны ми ограни чени ями :

f x

→ min ( )

£ bü Ax

x ³ 0

ýW

þ

 

 

 

 

 

 

52

 

 

 

 

 

 

 

 

М

етод ли неари зац и и основан

назаменевокрестности точки xk

 

 

 

 

нели нейной функц и и

f (x)

ли нейной функц и ей ck xT .

И з формулы Т ейлора

 

 

следует, что

 

 

 

 

Tk k

k

м( x kf

)f =x(Ñ

T

T

.x

k

f c x

 

 

 

 

- x»)x . ПоложиÑ+x f)(

( ) )x

 

 

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

 

 

 

 

 

 

 

 

 

 

ck xT

® min

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ω

 

 

 

 

 

 

 

 

О бозначи м z k - реш ени е к - той ЗЛ П. Т огданаправлени е

=

- xlk

вz k

 

 

и сходной задачебудетподходящ и м. Ф ормулапересчетаи меетви д

 

 

 

 

 

k +1 =

k + α k l kx,

гдешx аг α k и щ ется по прави лу наи скорейш его спускас

 

 

 

учетом услови я 0 ≤ α k

≤ 1 ( при таком вы бореα k

точка x k +1 будетвы пуклой

 

 

ли нейной комби нац и ей точек z k и

x k , что обеспечи ваетеедопусти мость).

 

 

 

В качествекри тери евостановаалгори тмапри меняю тся стандартны е

 

 

 

 

кри тери и :

+1

ε

k+1

xk

< εx. k ||

f

x < || ,

|| )

(

 

||

 

 

Алго р итм

Шаг0. Зафи кси ровать x0 ÎW - начальноепри бли жени е. Положи тьк =0.

Шаг1. Реш и тьзадачу ли нейного программи ровани я

 

 

 

T

 

x

T k

fmin c, =x Ñ( )

 

k

 

 

 

 

®x

 

 

 

 

 

 

 

Ω

найти z k .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ш аг2. Зафи кси роватьвектор

=

 

- xl

k

 

k

 

 

 

вzкачественаправлени я

пои ска.

 

 

k

 

 

k

 

 

Ш аг3. В ы чи сли тьα k =

min

(

 

 

). f

x

arg+ α l

 

Ш аг4. Положи ть k +1 =

0£α£1

 

 

 

 

 

 

 

k + α k l kx

 

 

x

 

 

 

Ш аг5. Провери тьуслови я остановаи , если они вы полнены , вы чи слени я

прекрати тьи взятьточку x k +1 вкачествеи скомого реш ени я. И наче положи тьk=k+1 и перейти наш аг1.

П ример 1. Реш и тьметодом ли неари зац и и задачу нели нейного программи ровани я

 

 

 

2

y

2 ® xmin,- fy +x= -) 2 ( ) 4

( )( ,

x

+ y

1)

(

3,

 

 

x

+ y £

2)

2(, 4

 

 

x, y ³ 0

 

 

 

 

 

Р ешение. Д анная задачабы лаграфи чески реш енав§2:

x*=(5/2,1/2).

Д ля реш ени я задачи методом ли неари зац и и вы берем x0 Ω , напри мер, x0=(0,0). В ы чи сли м