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

3. МИНИМИЗАЦИЯ ВЫПУКЛЫХ ФУНКЦИЙ

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

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

3.1. В ы пуклы е м н ож ества

Пусть £ — конечномерное линейное пространство и ж1,

х2 — произвольные элементы в £. Множество Е С £ вида

Е= {ж € С: х = А®1 + (1 - Л)®2, Л G [0,1] С М}

будем называть отрезком с концами ж1 и ж2 и обозначать [ж1,®2].

Определение 3.1. Подмножество Cl линейного простран­ ства £ называют выпуклым множеством, если оно вместе с любыми двумя точками ж1, ®2 € П содержит и отрезок [ж1, ж2], т.е. для любых ж1, ж2 € С1 и А € [0,1] выполняется соотношение Аж1 + (1 —A)®2 G J2. Пустое множество считаем выпуклым по определению.

Пример 3.1. а. Линейное подпространство Н в линейном пространстве £ является выпуклым множеством. В самом деле, для любых элементов ж1, ж2 е Н линейному подпространству И, согласно определению, принадлежит и любая линейная комби­

нация ct\xl + 012Х2

этих элементов. В частности, это верно и

при «1 = А, «2 = 1 -

А, где А 6 [0,1].

б. Отрезок Е = [аз1, х 2] в линейном пространстве С являет­

ся выпуклым множеством. Чтобы показать это, выберем две точки у 1, у2 € Е. Тогда, согласно определению отрезка, суще­ ствуют такие значения ti, £ [0,1], что

у 1 = tlX1 + (1 - t\)x2,

у 2 = «2*1 + (1 - t2 )x2

Пусть А € [0,1] выбрано произвольно. Тогда

Ау 1 + (1 - А2 A(ti®1 + (1 -

ti)x2) +

+ (1 —X)(t2X1+ (1 - <г)*2) = {Xti + (1 - A)<2)*I +

+ (A(l —ii) + (1 — A)(l — <г))*2-

Положив А = Xt\ + (1 — X)t2 и A = А(1 —ti) + (1 —A)(l — <2)) нетрудно показать, что А ^ 0, А ^ 0 и А + A = 1. Таким образом, 0 ^ А ^ 1, A 1 — А и

Ау 1 + (1 - А2 = А *1 + (1 - А ) * 2 е Е.

Отметим, что одноточечное множество, как частный случай отрезка, является выпуклым множеством.

в. Рассмотрим систему линейных алгебраических уравне­ ний (СЛАУ) Ах = 6, где А — матрица размера т х п, х — матрица-столбец высоты п, составленная из неизвестных си­ стемы, а b — матрица-столбец высоты т , составленная из правых частей уравнений. Множество решений рассматрива­ емой системы есть подмножество линейного арифметического пространства Rn. Это подмножество является выпуклым. В самом деле, если х 1 и х 2 — решения рассматриваемой систе­ мы, а Л Е [0,1], то в силу свойств решений СЛАУ (или свойств матричных операций)

^(Аа:1+ (1 - Х)х2) = ХАх1+ (1 - Х)Ах2 = АЬ+ (1 - А*= Ь,

т.е. столбец Аж1 + (1 —А)®2 является решением СЛАУ Аъ = Ь. Рассмотренному примеру можно придать более широкое толкование. Допустим, что А — линейный оператор, действу­

ющий в линейном пространстве С. Тогда прообраз А ~1 {у) = = {ж Е С: А х = у } произвольного элемента у ЕС есть выпуклое множество в С. Доказательство этого аналогично тому, кото­ рое было проведено для множества решений СЛАУ

Подмножество Е в линейном пространстве С назовем аф­ финным многообразием, если оно вместе с любыми своими элементами х 1 и ж2 содержит и любую их линейную комби­ нацию вида А®1 + (1 —А)®2, где А Е К — любое число. Ясно, что аффинное многообразие — частный случай выпуклого мно­ жества. Нетрудно показать, что множество решений СЛАУ, а также прообраз А~1(у) элемента у для линейного операто­ ра А являются аффинными многообразиями. Другой способ получения аффинного многообразия — образовать множество ®° + У = {у Е С: у = ®° + у0, у 0 Е У }, где х° — произвольный элемент в £, а У С С — произвольное линейное подпростран­ ство. Это множество является аффинным многообразием. Дей­ ствительно, если ж1, х 2 Е ®° + У, то х г = ®° + у1, где у* Е У, г = 1, 2. Поэтому для любого числа А

А®1 4- (1 - А)®2 = А(®° -I- у 1) + (1 - А)(®° + у2) =

= ®° + (Ay1 + (1 - А)у2) 6 ®° + У.

Отметим без доказательства, что любое аффинное многообра­ зие может быть представлено в виде ®° + У. Поэтому в Rn понятие аффинного многообразия равнозначно m-мерной плос­ кости.

Пример 3.2. Пусть С — нормированное пространство. Тогда любое множество Е вида Е = {® Е С: ||®— ®°|| ^ г}, где ||®|| — норма элемента ж в £, является выпуклым. Докажем это. Для любых элементов ж1, ®2 Е Е и любого числа А Е [0,1] Имеем

|(А®1 + (1 - А)®2) -®°|| = 11А(ж1 -® °) + (1 - А)(®2 — ®°) |^

< АЦ®1 - ®°|| + (1 - А)||®2 - ®°|| < Аг + (1 - А)г = г,

t\e. А®1 + (1 - А)®2 Е Е.

Пример 3.3. Пусть С — евклидово пространство, в кото­ ром скалярное произведение элементов ж и у будем обозначать (ж, у). Для любого вектора а Е С и любого числа с 6 R множе­ ство В = { ж Е£: ( ж , а) = с} является аффинным многообразием и, в частности, выпуклым множеством. Чтобы показать это, выберем произвольные элементы ж1, ж2 Е Е и число Л Е R. То­ гда (ж1, а) = (ж2, а) = с. Следовательно, с учетом свойств скалярного произведения

(Аж1 + (1 -

А)ж2, а) =

 

= А (ж1, а) + (1 - А) (ж2, а) = Ас+ (1 - А)с = с,

что означает

выполнение соотношения Аж1 + (1 —А)ж2 Е Е.

Множество Е указанного вида в дальнейшем будем называть гиперплоскостью. Отметим, что термин пгиперплоскость “ в R3 означает плоскость, а в R2 — прямую.

Нетрудно показать, что множество Е = {ж Е £: (ж, а) ^ с} выпуклое, но аффинным многообразием не является. Это ут­ верждение остается в силе, если в определении множества Е знак заменить знаком п^ “: по существу, это равносиль­ но замене вектора а вектором —а. Утверждение также будет справедливым, если знак неравенства заменить строгим нера­ венством. Множество Е в дальнейшем будем называть полу­ пространством. #

Пусть ж1,

х к — произвольные элементы в линейном

пространстве С.

Их линейную комбинацию Ахж1 +

+ \ьхк

назовем выпуклой комбинацией, если все коэффициенты

А{, г = 1, /с, неотрицательны, а их сумма равна единице, т.е.

к

Y2 Ai = 1- Отметим, что линейная комбинация Аж1 + (1 — А)ж2, г=1

участвующая в определении отрезка, при A Е [0, 1] является выпуклой.

Теорема 3.1. Для того чтобы множество Е С С было вы­ пуклым, необходимо и достаточно, чтобы любая выпуклая ком­ бинация элементов Е принадлежала этому множеству.

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

Пусть множество Е С С выпукло. Для выпуклой комби­ нации с к = 2 слагаемыми утверждение теоремы верно (оно равносильно определению выпуклого множества). Пусть утвер­ ждение теоремы верно для любой выпуклой комбинации, содер­

жащей к слагаемых. Выберем в Е элементы аз1, ...,

х к, х к +1

и произвольные неотрицательные числа оц, ..., а*,

1, сум­

ма которых равна единице. Отметим, что если + 1 = 1, то все остальные числа а* равны нулю и выпуклая комбинация рассма­ триваемых элементов совпадает с sc*+1, так что утверждение теоремы в этом случае тривиально и его справедливость оче­

видна. Пусть OL\t+i < 1. Положим Л = 1 — afc+i и Д =

i = 1, к.

Тогда /% ^ 0, i = 1, к, и

 

Поэтому, согласно предположению, у — (5\хх + ... + /3*®* 6 Е. Отсюда заключаем, что

a ix 1 + ... + akXk+ ak+\xk + 1 =

= A ^ i® 1 + ... + /3fc£cfc) + (1 - X)xk + 1 =

= Xy + ( l - X)xk + 1 <EE.

Таким образом, произвольная выпуклая комбинация элементов множества Е, содержащая к +1 слагаемых, принадлежит Е. Согласно принципу математической индукции, любая выпуклая комбинация элементов множества Е принадлежит Е.

Теорема 3.2. Пересечение любого числа выпуклых мно­ жеств является выпуклым множеством.

◄ Пусть А — некоторое семейство выпуклых множеств в линейном пространстве С. Рассмотрим множество

Е = р) F.

Feл

Пусть х 1 и ®2 принадлежат Е. Тогда они принадлежат любому множеству F Л. Поскольку по условию множество F выпукло, для любого A G [0,1] элемент Лаз1 + (1 —А)®2 принадлежит F. А так как F А выбрано произвольно, то

А®1 + (1 - А)®2 е Р| F = E.

F € A

Значит, множество Е выпукло. ►

Пример 3.4. Рассмотрим в R” множество Е элементов х = (хг, ..., хп), координаты которых удовлетворяют системе неравенств

а ц ®1 +

Ol2®2 + •••+

0,1пх п ^ &1>

 

< 02 1®1 + 02 2 ^2 + •••+0271^71 ^ ^2 ,

3-1)

 

 

 

k Omi® i +

Om2®2 +

+ О'ТППЗ'П ^ Ьт .

 

Множество Е является выпуклым. Чтобы доказать это ут­ верждение, изменим представление множества. Введем векто­ ры щ = (a^i, •••, &m)- Тогда с помощью стандартного скаляр­ ного произведения в W1 систему неравенств (3.1) можно запи­ сать следующим образом: (ж, а*) ^ Ьг-, г = 1, п. Другими слова­ ми, множество Е представляет собой пересечение га полупро­ странств. Поскольку любое полупространство является выпук­ лым множеством, то и множество Е выпукло. #

Множество Е.СЙП, заданное системой неравенств (3.1), а также любое конечное пересечение полупространств в евклидо­ вом пространстве будем называть выпуклым многогранным

множеством.

Выпуклую комбинацию ot\xl + ... + с^ж* элементов линейно­ го пространства назовем строго выпуклой комбинацией, если все ее коэффициенты положительны. В частности, выпук­ лая комбинация Аж1 + (1 — А)ж2 строго выпукла, если А Е (0,1).

Элемент х Е Е называют крайней точкой множества Е С С (или его вершиной), если этот элемент не может быть представлен в виде строго выпуклой комбинации двух различ­ ных элементов из Е. Иначе говоря, если х = Аж1 + (1 — А)ж2, где ж1, ж2 Е Е, А Е (0,1), то ж1 = ж2 = ж. Если выпуклое множество не имеет крайних точек, то его называют строго выпуклым множеством.

Пример 3.5. У отрезка [ж1, ж2] е £ крайними точками являются элементы ж1 и ж2, и других крайних точек у отрез­ ка нет. В R2 у выпуклого многоугольника крайними точками являются его вершины. У круга Е C R 2, заданного уравнени­ ем х\ + х\ ^ 1, множество крайних точек представляет собой окружность х\ + х\ = 1. #

Никакая внутренняя точка множества Е С Шп не может быть крайней точкой этого множества. Действительно, если ж0 Е Е — внутренняя точка J5, то существует окрестность* U = {ж Е Кп: |ж— ж°| < е}, целиком принадлежащая Е . Значит, множеству Е принадлежат элементы ж1=ж° + баиж 2 = ж °- еа, где а — произвольный вектор, для которого |а| < 1. Очевидно, что ж0 = ОДж1 + 0,5ж2

Все линейное пространство — выпуклое множество. Но, как следует из доказанного, в этом множестве нет крайних точек. Крайних точек также не имеет аффинное многообразие.

Выпуклой оболочкой произвольного подмножества Е ли­ нейного пространства С называют пересечение всех выпуклых множеств в £, которые содержат в себе множество Е.

* Здесь и далее |ж| обозначает стандартную норму в R n элемента х.

Теорема 3.3. Выпуклая оболочка множества Е совпадает с множеством всех выпуклых комбинаций элементов множе­

ства Е.

_

◄ Покажем, что множество Е всех выпуклых комбинаций эле­ ментов множества Е является выпуклым. Выберем в Е про­ извольные элементы у 1 и у 2 и рассмотрим их выпуклую ком­ бинацию у = ay1 + (1—а)у2, а Е [0,1]. Поскольку у 1 и у2 при­ надлежат Е , их можно представить как выпуклые комбинации элементов множества Е :

Ы

уг =

 

г = 1,2,

j -

1

 

где

____

 

 

ki

y>ij ^0, i 1) 2, j

1,

^ ^ (Ajj 1, i 1, 2.

j = i

Подставим эти представления в выражение у = a y 1 + (1 — а)у2:

/ci к\

 

у =

+ ]Г (1 -

a)/x2j®2j

 

j = l

j = l

 

В правой

части равенства

линейная

комбинация элементов

х г\ г = 1 ,

2, j = 1 , fci, принадлежащих множеству Е , является

выпуклой комбинацией, так как все коэффициенты линейной комбинации неотрицательны, а их сумма равна единице:

ki к\

j = i

i = i

 

 

fci

fci

=

+ (i - a)

= a•1 + (i - a) •1 = i-

j = l

j = 1

 

Следовательно, элемент у можно представить в виде выпуклой комбинации элементов множества Е } а потому он будет принад­ лежать Е. В силу того что элементы у 1, у2 и число a Е [0,1] выбирались произвольно, множество Е выпукло.

Пусть выпуклое множество F включает в себя Е. Тогда, согласно условию выпуклости, множество F содержит любую выпуклую комбинацию своих элементов, в частности элементов множества Е. Следовательно, множество F включает в себя множество Е. Таким образом, множество Е является подмно­ жеством пересечения всех выпуклых множеств, содержащих в себе Е . Но поскольку множество Е само является выпуклым множеством, содержащим Е, то оно совпадает с указанным пе­ ресечением. ►

Выпуклую оболочку конечного множества S c R n, содер­ жащего 7П + 1 различных точек жг, называют выпуклым мно­ гогранником. Если m = п и элементы жг, i = 1 , п+1, не при­ надлежат какой-либо гиперплоскости, то выпуклую оболочку множества Е = {ж1, ..., ж71-1"1} называют симплексом, а точ­ ки х %вершинами симплекса. Отметим, что условие, согласно которому элементы жг, г = 1 , п + 1 , не принадлежат какой-либо гиперплоскости, равносильно линейной независимо­ сти векторов х г—ж1, г = 2, п + 1 .

Согласно теореме 3.3, любую точку симплекса можно пред­ ставить в виде выпуклой комбинации его вершин. Отметим, что такое представление единственно. Действительно, если ж1, жп+1 — вершины симплекса и имеют место предста­

вления

ж= OL\ ж1+ OL^X 2 + ... + а^+хж*4-1,

X = 1®1 + fox 2 + ... + /3jk+l£Cfc+1,

то, вычитая из первого равенства второе, получаем

71Е1 + 72Ж2 + ... +7fc+iXA:+1 = О,

где коэффициенты 7* = а,- — /%, i = 1 , п + 1 , удовлетворяют ра­ венствам

п+ 1

п+1

п+1

j^7*=J 2 ai ~ Ё # = 1- 1=°-

i=i t=i t=i

Предположим, что один из коэффициентов 7*, например 7n+i,

П

отличен от нуля. Тогда 7^+1 = — 7* и

2=1

7 is 1 +72a32 + ... + 7jfc+ia3A:+1 =

= 71 1 - х к+1) + .. . + 1 п(хп - х к+1) = 0. (3.2)

Так как 7^+1 ф 0, то и один из коэффициентов 7*, i — 1, п, отличен от нуля. Значит, в силу равенства (3.2) элементы х г—жп+1, i = 1, п, линейно зависимы. Отсюда заключаем, что существует вектор а, ортогональный всем этим векторам, т.е. (а, х гx n+l) = 0, г = 1 , п, или

(а, X х) = (а, жп+1), г = 1, п.

Положим с = (а, жп+1). Тогда все элементы ж\ г = 1, п + 1 , удо­ влетворяют уравнению (а, ж) = с, а значит, принадлежат одной гиперплоскости. Но это противоречит предположению, соглас­ но которому эти элементы являются вершинами симплекса.

Пример 3.6. В R1 симплексом является отрезок (одномер­ ный симплекс), в R2 — треугольник (двумерный симплекс), в R3 тетраэдр (трехмерный симплекс).

Теорема 3.4 ( теорема Каратеодори*). Любую точку х выпуклой оболочки Q произвольного множества Е С Шп можно представить выпуклой комбинацией элементов из -Б, количе­ ство слагаемых в которой не превышает п + 1 .

◄ Каждую точку х Е можно представить в виде выпуклой комбинации А1Ж1 + ... + Ашжш элементов х г Е 25, г = 1, т. Мы можем считать, что число т — это наименьшее число слага­ емых в выпуклой комбинации элементов множества Е , равной заданному элементу х. Если тп ^ п + 1 , то утверждение те­ оремы верно. Поэтому предположим, что т > п + 1. Тогда векторы X х — ж1, i = 2, m, линейно зависимы, поскольку их

*К. Каратеодори (1873-1950) — немецкий математик.

количество превышает размерность линейного пространства. Следовательно, верно равенство

771

 

^ 2щ {хг- Х 1) = 0,

(3.3)

»=2

в котором хотя бы один из коэффициентов Hi отличен от нуля.

771

Положим Hi = MiТогда с учетом равенства (3.3) получим

i= 2

771

71

 

]Г^г£Сг= 0,

£ > = 0 .

(3.4)

г= 1

г=1

 

Поскольку сумма всех коэффициентов Hi равна нулю, а среди них есть коэффициенты, отличные от нуля, то Hi > 0 хотя бы для одного номера г.

Введем параметр а € К и с учетом равенств (3.4) запишем

771

771

m

m

х = ]Р аiXl = ^ Х гХ г -

 

= ^(A j - а(м)хг. (3.5)

г= 1

г = 1

г= 1

г=1

При этом

 

 

 

71

71

 

71

^ (A i -

оцц) = Х^Аг -

= 1 - 0 = 1.

г=1

г= 1

 

г = 1

Подберем такое значение параметра а, при котором линей­ ная комбинация с коэффициентами —аHi будет выпуклой, а хотя бы один из коэффициентов будет равен нулю. Для этого достаточно выбрать а равным наименьшему отношению Лi/Hi среди тех, для которых Hi > 0. Обозначим номер выбранного отношения через А;, т.е. полагаем а = Хк/Нк- Тогда А* — OL\X{ ^ 0, г = 1 , 7П. Действительно, если для фиксированного номера i имеем Hi ^ 0, то число А; —сщц положительно как разность по­ ложительного и неположительного чисел. Если же Hi > 0, то