- •1. ОСНОВНЫЕ ПОНЯТИЯ
- •2.1. Формализация геометрической задачи
- •2.2. Аппроксимация экспериментальных данных
- •2.3. Выбор места расположения управляющей вычислительной машины на производстве
- •2.4. Выбор места расположения УВМ в производственном здании
- •2.5. Определение оптимальных настроек АСР
- •2.6. Распределение нагрузки между параллельными агрегатами
- •2.7. Оптимизация температурного режима реактора периодического действия
- •3. ОСНОВНЫЕ ПОНЯТИЯ АЛГЕБРЫ И АНАЛИЗА
- •3.1. Общие сведения о множествах
- •Рис.2. Графическое представление операций над множествами
- •3.2. Евклидово пространство
- •3.3. Функция нескольких переменных и ее свойства
- •4. ПОСТАНОВКА ЗАДАЧИ ОПТИМИЗАЦИИ В ЕВКЛИДОВОМ ПРОСТРАНСТВЕ. УСЛОВИЯ ОПТИМАЛЬНОСТИ
- •4.1. Целевая функция. Локальный и глобальный оптимумы
- •4.2. Разрешимость задачи оптимизации
- •4.3. Задачи оптимизации без ограничений
- •4.4. Задачи оптимизации с ограничениями типа равенств. Метод неопределенных множителей Лагранжа
- •4.5. Задачи с ограничениями типа неравенств
- •5. ВЫПУКЛЫЕ ЗАДАЧИ ОПТИМИЗАЦИИ
- •5.1. Постановка задачи
- •5.2. Условия оптимальности в выпуклых задачах
- •6. МЕТОДЫ РЕШЕНИЯ ОПТИМАЛЬНОЙ ЗАДАЧИ ДЛЯ ФУНКЦИИ ОДНОЙ ПЕРЕМЕННОЙ
- •6.1. Необходимые и достаточные условия экстремума функции одной переменной
- •6.2. Алгоритм аналитического метода
- •7. ИТЕРАЦИОННЫЕ МЕТОДЫ ОПТИМИЗАЦИИ
- •7.1. Алгоритм итерационного метода
- •7.2. Метод сканирования
- •7.3. Определение унимодальной функции
- •7.4. Метод дихотомии
- •7.5. Метод золотого сечения
- •7.6. Одномерный градиент
- •7.7. Методы полиномиальной аппроксимации
- •7.8. Метод Пауэлла
- •7.9. Метод ДСК
- •7.10. Метод квадратичной интерполяции
- •7.11. Метод кубической аппроксимации
- •7.12. Метод Фибоначчи
- •7.14. Методы поиска безусловного экстремума невыпуклых функций
- •7.15. Метод тяжелого шарика
- •8. ЗАДАНИЯ
- •8.1. Исследование функции на выпуклость (вогнутость)
- •8.2. Варианты задач безусловной оптимизации
- •8.3. Варианты задач условной оптимизации
- •9. КОНТРОЛЬНЫЕ ВОПРОСЫ
- •10. ЛИТЕРАТУРА
где G замкнутая ограниченная область, граница которой задана уравне-
ниями gi (x) = 0, i =1,2,..., m. .
Решение задачи состоит из следующих этапов:
1) находим все стационарные точки функции f, лежащие внутри области G : х1,х2,..., хL;
2) методом множителей Лагранжа решаем следующую задачу на условный экстремум:
m
L(x) = f (x) + ∑λi (hi (x) − zi2 ) → min,
i=1
инаходим условно-стационарные точки xL+1,..., xS из необходимых условий:
∂L |
= 0, i =1,2,..., m, |
∂L |
= gi (x) = 0 , |
|
|
||
∂xi |
∂λi |
∂L = −2 λi zi = 0; ∂zi
3)из стационарных точек х1,x2,...,хL выбираем те, в которых выполняются достаточные условия локального минимума: хL1,хL2,...,хLk ;
4)сравнивая значения функции f в точках хL1,хL2,...,хLk с ее значениями в условно-стационарных точках xL+1,...,xS, находим
min f (x).
x G
5. ВЫПУКЛЫЕ ЗАДАЧИ ОПТИМИЗАЦИИ
5.1. Постановка задачи
Выпуклой задачей (или задачей выпуклого программирования) называется следующая задача оптимизации:
f (x) → min; gi (x) ≤ 0, |
i =1,2,...,m; |
x G Rn , |
(5.1) |
|
48 |
где f, g1, g2,....,gm – выпуклые функции, заданные на выпуклом и замкнутом множестве G .
Точка х, принадлежащая множеству G и удовлетворяющая неравенствам gi (x) ≤ 0, i =1,2,..., m; . называется допустимой в задаче (5.1).
Теорема 5.1:
Если функция f определена и выпукла на выпуклом множестве G Rn, то в выпуклой задаче локальный минимум является и глобальным.
Пусть х – точка локального минимума функции f, т.е. ε0 > 0 такое,
что
f (x€) ≤ f (x) x G ∩U (x€,ε0 ).
Возьмем произвольную фиксированную точку x' G. Из условия выпуклости множества G следует, что точка
€ |
+ (1 |
−λ)x' |
λ (0,1) |
x = λx |
принадлежит множеству G. При
λ ≥1 − x'ε−x€ ,
где
ε < min{ε0 , x'−x€},
получаем
x'−x€ = λx'+(1 − λ)x'−x€ = (1 − λ)(x'−x€) ≤ (1 − λ)x'−x€
≤ 1 − 1 − x'ε−x€x'−x€ = x'ε−x€x'−x€ = ε < ε0 ,
что означает
x U (x€,ε0 )
и, следовательно,
€ |
€ |
€ |
+ (1 |
−λ)x'). |
f (x) ≤ f (x) или |
f (x) ≤ |
f (λx |
49
По условию функция f выпукла. Поэтому последнее неравенство примет вид
f (x€) ≤ λf (x€) + (1 − λ) f (x').
В частности, при
λ =1 − x'ε−x€
имеем
f (x€) ≤ 1 − x'ε−x€ f (x€) + 1 − 1 − x'ε−x€ f (x').
Отсюда
|
ε |
|
€ |
|
ε |
|
f (x') , |
|
€ |
|
|
€ |
|
||
|
|
f (x) ≤ |
|
||||
|
x'−x |
|
|
|
x'−x |
|
|
или
f (x€) ≤ f (x') .
Так как х' – произвольная точка множества G, то из последнего неравенства следует, что х – точка глобального минимума функции f на G.
В дальнейшем в выпуклых задачах оптимизации, говоря "минимум", будем, подразумевать глобальный минимум.
Пример 5:
Функция
f (x1, x2 ) = x12 + x22
выпукла на R2, (0,0) – точка локального минимума функции f, она же и точка глобального минимума f на R2
(f (0,0) = 0 ≤ x12 + x22 (x1, x2 ) R2 ).
5.2.Условия оптимальности в выпуклых задачах
Ввыпуклых задачах оптимизации важное место занимает функция Лагранжа и понятие так называемой седловой точки функции Лагранжа.
50
Пусть – декартово произведение множества G (области определения функций f (x) и g(х), i=1,2,...,m, в задаче (5.1)) и множества m-мерных векторов с неотрицательными координатами
Rm ={ λ = (λ ,λ ,...,λ ) Rm |
|
λ ≥ 0,i =1,2,...,m }. |
|
||
|
|
||||
+ |
1 2 |
m |
|
i |
|
Функция |
|
|
|
|
|
|
L(x,λ) = f (x) + (λ, g(x)), (x,λ) П, |
(5.2) |
где
m
(λ, g(x)) = ∑λi gi (x)
i=1
– скалярное произведение векторов λ и g(х), называется функцией Лагранжа для выпуклой задачи оптимизации (5.1).
Точка (x*,λ* ) П, называется седловой точкой функции Лагранжа L(x,λ), (x,λ) П, если выполняются неравенства
L(x*,λ) ≤ L(x*,λ* ) ≤ L(x,λ* ), |
x G, λ R+m |
(5.3) |
Условие (5.3) может быть записано также следующим образом |
|
|
L(x*,λ* ) = min max L(x,λ) = max min L(x,λ). |
|
|
x G λ R+m |
λ R+m x G |
|
Пример 6:
Функция Лагранжа для выпуклой задачи (5.1) при
n=1, m=1, f (x)=6 – x, g(x)=х/2 – 1
имеет вид
x |
|
|
||
L(x,λ) = 6 − x + λ |
|
−1 , |
x R+, λ R+ |
|
5 |
||||
|
|
|
иимеет седловую точку (5,5). Ее график изображен на рисунке 5.
Взадачах с ограничениями типа равенств, как это отмечалось выше, решение следовало искать среди стационарных точек функции
L(x,λ). Что же касается выпуклой задачи оптимизации, то ее решение сводится к отысканию седловой точки функции Лагранжа.
51
Теорема 5.2:
Если пара (x*,λ*) – седловая точка функции Лагранжа (5.2), то х* – точка глобального минимума в задаче (5.1), т.е.
f(x* ) = min f (x).
xG
Пусть (x*,λ*) – некоторая седловая точка функции Лагранжа. Из
(5.2) и (5.3) получаем
f (x* ) + (λ, g(x* )) ≤ f (x* ) + (λ*, g(x* )) ≤ f (x) + (λ*, g(x)). |
(5.4) |
|
Из левой части неравенства (5.4) следует, что |
|
|
(λ, g(x* )) ≤ (λ*, g(x* )). |
(5.5) |
|
Отсюда |
|
|
(λ − λ*, g(x* )) ≤ 0, |
|
|
или в развернутом виде |
|
|
m |
|
|
∑(λi − λ*i )gi (x* ) ≤ 0. |
(5.6) |
|
i=1 |
|
|
Поскольку λ*i ≥ 0 , i=1,2,...,m, |
неравенство (5.6) имеет место, если |
|
gi (x* ) ≤ 0, |
i =1,2,...,m. |
|
Итак, gi(х*) ≤ 0 и, кроме того,
m ∑λ*i gi
i =1
Равенство (5.6) справедливо,
т.е.
m ∑λ*i gi
i =1
λ*i ≥ 0 , поэтому
(x* ) ≤ 0.
в частности, и для
(x* ) ≥ 0.
(5.7)
λi = 0 , i=1,2,...,m,
(5.8)
Сравнивая неравенства (5.7) и (5.8), будем иметь
m
∑λ*i gi (x* ) = 0,
i =1
т.е.
52
(λ*, g(x* )) = 0 . |
(5.9) |
Так как |
|
x G gi (x) ≤ 0, i =1,2,...,m и λi ≥ 0, |
i =1,2,...,m, |
то |
|
m |
|
∑λ*i gi (x) ≤ 0, |
|
i=1 |
|
или |
|
(λ*, g(x)) ≤ 0. |
(5.10) |
Неравенство (5.4) имеет место x G , поэтому из его правой части и из (5.9)-(5.10) получим
f (x* ) ≤ f (x) + (λ*, g(x)) ≤ f (x) x G.
Следовательно, х* – точка глобального минимума.
Теорема 5.3:
Для того чтобы пара (х*,λ*) являлась седловой точкой функции Лагранжа (5.2), необходимо и достаточно выполнение условий
L(x*,λ* ) = min L(x,λ* ), |
(5.11) |
|
x G |
|
|
gi (x* ) ≤ 0, |
i =1,2,...,m, |
(5.12) |
λ*i gi (x* ) = 0, |
i =1,2,..., m . |
(5.13) |
Необходимость. Пусть (х*,λ*) – седловая точка функции (5.2). Тогда по определению
L(x*,λ* ) ≤ L(x,λ* ) x G,
что означает справедливость равенства (5.11).
Выполнение условий (5.12) и (5.13) было показано при доказательстве теоремы (5.2).
Достаточность. Пусть выполнены условия (5.11)-(5.13). Равенство (5.11) влечет справедливость правой части неравенства (5.3) x G. До-
кажем выполнение левой части неравенства (5.3) для всех λ R+m . Для
53
этого рассмотрим произвольные неотрицательные числа λ1, λ2,…, λm, Очевидно,
λ g |
(x*) ≤ 0, i =1,2,...,m. |
i i |
|
Поэтому, используя неравенства (5.12) и (5.13), можно записать:
λ g |
(x* ) ≤ λ*g |
(x* ), i =1,2,...,m. |
i i |
i |
|
Следовательно,
f (x* ) + (λi g (x* ))≤ f (x*) + (λ*g (x* )),
что означает справедливость левой части неравенства (5.3).
Следует отметить, что теоремы 5.2 и 5.3 получены без каких-либо предположений о свойствах функций f , g1, g2 ,..., gm и структуре множества G.
В соответствии с теоремой 5.2, если удастся найти седловую точку функции Лагранжа (5.2), то тем самым будет решена задача (5.1), в которой все функции f и gi , i=1,2,...,m, а также множество G могут иметь различную природу, причем х* будет точкой глобального минимума. Если теоретически такой подход безупречен, то его реализация на практике возможна не всегда. Дело в том, что если функции f, gi, i=1,2,...,m, и множество G не выпуклы, то функция Лагранжа не всегда имеет седловые точки. Более того, даже если указанные функции и множество выпуклы и оптимальное решение задачи (5.1) существует, то в некоторых "вырожденных" случаях соответствующая функция Лагранжа может не иметь ни одной седловой точки.
Подтверждением последнего может служить следующая задача, в которой
n =1, m =1, |
f (x) = −x; |
||
g(x) = x2 ≤ 0, G = {x R |
|
x ≥ 0} |
|
|
|||
Здесь функции f (x) = −x, |
g1(x) = x2 и множество G выпуклы. |
Единственная точка х*=0 удовлетворяет ограничениям задачи; она же является и точкой глобального минимума. Однако функция Лагранжа L(x,λ) = –х + λх2 не имеет седловых точек (не выполняется необходимые
54