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

lec_opt1

.pdf
Скачиваний:
18
Добавлен:
16.03.2016
Размер:
458.8 Кб
Скачать

 

 

 

 

 

 

хк - приближение

в точке

локального

 

L

 

S

x*

 

минимума, чтобы приблизиться к искомой

 

 

xK

 

 

 

точкехк .

Мы

должны

выбрать

 

 

 

 

 

 

направление, в конце получим локальную

 

 

 

 

 

 

линию.

 

 

 

Допустим,

требуется

f(x)Æmin;

x0 - начальное

приближение; xK -

текущее

приближение

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x K +1

x*

 

 

 

 

 

 

 

 

 

K

 

 

 

 

 

 

 

x K

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

S K

 

 

 

n =1

а) выбор направления (gradf , n) < 0 ;

б) движение вдоль выбранного направления X K +1 = X K + S K * nK

Задачи оптимизации с ограничениями разностями (ЗОР)

f (x1 , x2 ,...., xn ) min

g1 (x1 , x2 ,...., xn ) = 0

................................

 

 

 

 

 

 

 

g

m

(x , x

2

,...., x

n

) = 0

 

1

 

 

Пример:

f (x) min g(x) = 0

f

(x

, x

 

, x

 

x

 

) min

Функции заданы аналитическим выражением

q1

 

 

1

 

2

 

 

3,

 

4

 

 

 

можно разрешить относительно

одной из

переменных

g1 (x1 , x2 , x3, x4 ) = 0

x1 = h1 (x2 , x3 , x4 ) x1 можно

исключить

из f

и q2 ,

g

 

(x , x

, x

 

x

 

) = 0

 

m

 

1

 

2

 

 

3,

 

 

4

 

подставив вместо нее L1 :

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

, x3, x4 )

 

 

 

f (x2

 

 

 

 

, x

 

x

 

) = 0

 

 

 

 

g(x

2

3,

4

 

 

 

 

Тогда, f (x3 , x4 ) x2 x1

x2 = h2 (x3 , x4 )

-задача безусловной оптимизации. Находим x3 , x4 вычисляем

21

Метод исключения

Численное решение:

f (x1 , x2 ) min

a1 x1 + a2 x2 = b

[g(x1 , x2 ) = a1 x1 + a2 x2 b] точка min должна лежать на прямой.

x2

g(x)

x1

В каждый момент линия уровня будет касаться прямой эта точка и является точкой

условного локального min. Если в окрестности заданной точки, удовлетворяющей всем значениям равенства, значение функции больше, чем в точке, то эта точка – есть точка условного локального min.

Пример:

a1 x1 + a2 x2 = 0

(a,x)=0 a x

x2

a

 

x

x1

Если (a1x)=b

x2

a

x0

x x0

x1

22

Допустим, b = (a1 x0 )

(a, x) (a, x0 ) = 0 (a, x x0 )

Прямая будет проходить через некоторую точку удовлетворяющую условию и a Для n переменных f (x) min , Ax=b

Рассмотрим i-ое ограничение:

ai1 x1 + ai2 x2 +... + ain xn = 0 , (a, x) = 0

a - задан x - все вектора, лежащие a . Они и составляют гиперплоскость.

При добавлении еще одного условия, уменьшаются размерности. В конечном итоге получится пространство n-m.

 

Для двух переменных возможно 2 случая:

1.

2.

В случае 2 это не точка минимума, а седловая точка.

Рассмотрим точку 3-х переменных:

x3

 

Ограничение – плоскость, следовательно, все

gradf

допустимые точки на плоскости.

Если угол grad не равен 90 градусам следовательно

плоскость

 

можно двигаться дальше. На плоскости существует

 

направление, которое будет составлять острый угол

 

с – grad, и двигаясь в этом направлении можно

 

уменьшить значение f.

x

Если -grad f перпендикулярен плоскости эта точка

2

может быть точкой минимума.

x1

Пусть существует 2 ограничения:

 

 

f (x)min

 

 

 

 

+ a12 x2 +K+ a1n = b1

a11 x1

a

x

+ a

22

x

2

+K+ a

2n

= b

 

21 1

 

 

 

2

 

 

 

 

 

23

 

 

Если вектор grad (п-мерный) будет ортогонален п-т – пространству.
Допустим имеется п-1 пространство, п-мерный вектор может принадлежать ему или нет. Пусть вектор не принадлежит данному подпространству следовательно его можно разложить на 2 вектора – один который принадлежит подпространству, и второй который ортогонален данному. Ортогональное дополнение – вектора, которые ортогональны данному подпространству.
В 3D – пространстве, если подпространство равно 1 следовательно ортогональное дополнение равно 2.
В п-т-мерном подпространстве ортогональное дополнение имеет размерность
т.
Необходимое условие: Если мы находим точку, где вектор градиента принадлежит ортогональному дополнению к пространству, заданному ограничениями – равенствами, то эта точка может быть точкой локального минимума.
Пусть есть 2 плоскости. Если записать систему ограничений равенств следующим образом:
(a1 , x)= b1
(a2 , x)= b2(am , x)= bm
где ai = ai1 , ai2 ,K, aim
порождают ортогональное дополнение. Существующие

Рассмотрим опять случай 3-х переменных:

Точка минимума должна принадлежать пересечению плоскостей. Необходимое условие – вектор антиградиента должен составлять угол 90 градусов с прямой пересечения плоскостей.

Для п-мерного случая имеется п переменных следовательно рассматривая каждое ограничение, получаем п-1 гиперплоскость следовательно рассмотрев т ограничений получим п-т гиперплоскость (т<п).

a11 x1 + a12 x2 +K+ a1n = b1

Ax = b

a

x

+ a

 

x

 

+K+ a

 

= b

 

 

21 1

 

22

 

2

M

2n

 

2

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

 

 

 

 

 

 

 

 

 

независимы

 

 

 

 

 

 

M

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

+ am2 x2

+K+ amn = bm

 

am1 x1

 

Т.о. вектора a1 , a2 ,K, am

могут быть выбраны в качестве базиса ортогонального дополнения следовательно градиент принадлежит ортогональному дополнению:

gradf = λ1 a1 + λ2 a2 +K+ λm am

т.е. линейная комбинация базисных векторов.

v

V = λ1 a1 + λ2 a2

a1

a2

24

λ1 + λ2 +K+ λm - множители Лагранжа. Рассмотрим матрицу АТ , в ней а1 ,K, аm - столбцы.

gradf = AT λ

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

f (x)min

Пример:

Ax = b

 

Ax = b

AT λ = −gradf

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

Рассмотрим случай когда система ограничений – равенств нелинейная:

f (x1

,K, xn )min

 

 

 

 

 

 

 

g

 

(x ,K, x

 

 

)= 0

 

 

 

 

 

 

 

 

1

 

1

n

 

 

 

 

 

 

 

 

 

 

f (x)min

 

 

 

 

M

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

)= 0

g(x)= 0

 

g

m

(x ,K, x

n

 

 

 

 

1

 

 

 

 

 

 

 

 

Если функции дифференцируемы, то в окрестности точки минимума они будут вести себя как линейные.

 

 

 

 

*

 

 

 

 

*

 

gi

 

 

 

x K

 

gi (x

+ x)

= gi (x

)+

x +O(K)

 

 

 

 

x j

 

 

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

окрестности

точки

 

локального

минимума

эта

зависимость

 

линейная

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

получается

 

система вида:

 

 

 

 

 

 

 

 

А х = gi (x* )

 

(x* + x)+ O(K),

где

 

 

gi

А = gi

x j

следовательно необходимое условие локального минимума: xn

n-m

x1

x2

gradf = λ1 gradg1 + λ2 gradg2 +K+ λm gradgm

25

λ1 + λ2 +K+ λm - множители Лагранжа.

f (x)min

g(x)= 0

gradf = λ1 gradg 1 + λ2 gradg 2 +K + λm gradg m

х* - точка может быть искомой в задаче

λ1 + λ2 +K+ λm - множители Лагранжа.

gradf = λ gradg1

+ λ2 gradg2

+K+ λm gradgm

n

14444444244444443

 

 

m

 

m

 

g(x)= 0

 

 

 

 

Обозначения для скалярного произведения (x, y)= xT y ;

 

 

 

 

 

y1

 

(

 

,

 

)= (x1

,K, xn ) M

= xi yi ;

x

y

 

 

 

 

 

 

i

 

 

 

 

 

yn

 

L(x, y )= f (x )+ λT g (x )= f (x )+ λ1 g1 (x )+ K + λm g m (x )

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

L

=K= f (x)+ λ g

(x)+K+ λ

 

g

 

(x)=

f

+ λ g1 +K+ λ

gm = 0

x j

 

 

x j

1 1

 

m

 

m

 

1 x j

m x j

L = gi (x)= 0,i =1,K, m x j

Метод множителей Лагранжа.

Применяется для нахождения точки локального минимума для точек исходной задачи h(x, λ)= f (x)+ λT g(x). Экстремальными точками локального минимума являются седловые.

Пример:

Найти расстояние от точки до прямой в 3-х мерном пространстве.

Плоскость : а11 x1 + a12 x2 +K+ a1n = b1

a21 x1 + a22 x2 +K+ a2n = b2

y

26

Пересечение плоскостей – линия d =

(x

y )2

+ (x

2

y

2

)2

+(x

3

y

3

)2

min

 

1

1

 

 

 

 

 

 

 

Z = (x1 y1 )2 + (x2 y2 )2 + (x3 y3 )2 min

а11 x1 + a12 x2 +K+ a1n b1 = 0 a21 x1 + a22 x2 +K+ a2n b2 = 0

L(x1 , x2 , x3 , λ1 , λ2 )= j3=1 (x j y j )2 +λ j3=1 a1 j x j b1 + λ2 j3=1 a2 j x j b2

Lx1

L

x2LM

λ2

= 0

 

= 0

5 условий дают систему линейных уравнений

 

= 0

 

Нелинейное программирование (НЛП).

 

 

 

 

 

 

 

 

 

f (x1 ,K, xn )min

 

 

 

 

 

 

 

g

(x ,K, x

n

)= 0,i =1,K, m

 

 

 

 

 

 

 

 

i

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

hк (x1

,K, xn )0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f , gi , hк - заданные функции нелинейные

 

 

 

 

 

 

 

 

 

f (

 

 

 

)min

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

 

 

 

 

НЛП

 

 

 

 

(

 

 

 

)= 0

 

 

 

 

 

 

 

 

 

 

 

g

x

 

 

 

 

 

 

 

 

 

 

 

 

 

(

 

 

)0

 

 

 

 

 

 

 

 

 

 

 

h

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рассмотрим g(x1 , x2 )0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

g(x1, x2 ) = 0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x1

Пример:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x2

+ x2

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

2

)= 4 x2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

g(x , x

2

x2

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

1

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x1

27

В случае системы неравенств пересечение всех областей. Если g > 0, то ограничение неравенства – неактивно (точку можно смещать).

Если точка точно на границе, то говорят, что ограничение активно.

Рассмотрим случай:

аТ х = а х + а

2

х

2

0

 

 

 

 

 

 

1

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Если задано

линейное ограничивающее

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

неравенство,

то вектор

 

направлен

 

a

 

 

 

 

 

 

 

 

 

 

 

 

 

 

а

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

внутрь допустимой области. Если аТ х 0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

, то вектор

а

будет направлен из

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

допустимой области.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Если аТ х b , то граница проходит не через начало координат. Необходимые условия:

f (x1 , x2 )min a1 x1 + a2 x2 b

a

1.Если локальный минимум внутри допустимой области, то gradf = 0 ;

2.Если точка локального минимума точно на границе, то gradf = λa , точка является точкой локального, если gradf = λa и λ 0

 

 

a1

 

 

 

 

 

 

 

 

 

 

,

 

-

вектора

нормали

к

 

 

 

а1

а2

a2

 

 

соответствующей плоскости.

 

λ1 , λ2 0

В общем случае:

28

f (

 

)min

x

 

g1

(

 

 

)= 0

x

 

 

 

 

 

 

M

 

 

 

 

 

 

 

 

 

 

gm (x)= 0

 

h1

(

 

 

)0

 

x

 

 

 

 

 

 

M

 

h (

 

)0

m

 

m

 

 

 

 

 

 

 

а) gradf (x)= h1 gradg1 (x)+K+ hm gradgm (x)+ λ1 gradh1 (x)+K+ λp gradhp (x);

λ1 0

б) λ2 M0 ;

λp 0

в) Если hк = 0 , то λк > 0 . Если hк 0 , то λк = 0 . Т.е. λк + hк = 0, к =1,K, р. Условие дополняющей нежесткости.

Все 3 условия в совокупности называются условиями Куна-Таккера (условия оптимальности первого порядка).

f (x)min

g(x)= 0h(x)0

Можно записать и так:

f (

 

 

)min

x

 

 

(

 

)= 0

g

x

 

 

 

х 0

 

 

 

 

 

 

 

Ограничения неравенства

ti = hi (x)0

ti hi (x)= 0,ti 0

Поскольку постановка задачи h(x)0

Основные результаты:

Область п-мерного пространства называется выпуклой если вместе с 2-ми точками, она содержит весь отрезок, соединяющий эти 2 точки.

29

Пример:

Функция нескольких переменных f (x) называется выпуклой если ее матрица Гесса положительно определена.

 

2 f

 

 

 

Т

 

H =

 

 

;

х

 

Нх 0

 

 

 

 

 

 

 

 

 

 

xi x j

 

 

 

 

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

 

f (x)C , то данное неравенство

определяет выпуклую область.

область будет выпуклой

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

1случай – когда все ограничительные неравенства являются не активными.

2случай – когда точка лежит на границе.

 

 

 

Методы решения НЛП

 

 

Нулевого порядка

Первого

порядка

Второго

порядка.

поисковые

методы

аналогичны градиентным

Ньютоновские

методы.

(безусловные

методам.

Условно

Они

являются

ориентиры

похожи на

градиентные

методы.

специальными

 

это).

Используется

Используется

и

Z и

вариантами

методов

только

 

значение

вектор

градиента

(grad

Ньютона

для

целевой функции (Z).

Z).

 

 

 

оптимизации.

 

 

 

 

 

 

 

 

Используется Z, grad Z и

 

 

 

 

 

 

 

матрица Гесса (Н)

(*)

 

 

(**)

 

 

 

(***)

xK +1

 

 

 

 

 

 

 

 

xK

(**)

1случай – вектор grad направлен по нормали;

2случай – идет под углом (надо спроецировать поверхность следовательно она будет показывать направление)

Если мы внутри, двигаемся как в (*), а далее (**). Это более эффективный метод.

30

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]