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

lec_opt1

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

 

 

 

 

 

 

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

в точке

локального

 

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

∂L∂x∂ 1

L

∂x2∂LM

∂λ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 M≥ 0 ;

λ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

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