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

9286

.pdf
Скачиваний:
0
Добавлен:
25.11.2023
Размер:
2.47 Mб
Скачать

разделить на два больших класса: точные и приближенные методы решения. Точные методы позволяют определить решение для некоторых более узких задач, прежде всего задач с выпуклыми (вогнутыми) функциями F(x) и gi(x). Приближенные (ите-

рационные) методы позволяют решить практически любую задачу нелинейного программирования, однако, имеют свои недостатки: скорость сходимости (число шагов), точность и др.

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

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

Определение. Непустое множество S из R n , называется выпуклым, если отре-

зок прямой, соединяющий любые точки множества

S , также принадлежит этому

множеству. То есть если x1, x2 S, [0,1] * x1

(1 ) * x2 S .

Точка вида x3 * x1 (1 ) * x2 называется выпуклой комбинацией точек

x1 и x2 .

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

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

Примеры выпуклых множеств:

1) S {x R n : pТ * x } – полупространство в R n .

В пространстве R2.

11

2) Многогранное множество. В R 2 :

3) S {x R2 : x

2

x } – выпуклый конус в R2.

 

 

1

 

4) S {x R 2 : x 2

x 2

4} – круг с радиусом 2 и центром (0, 0) .

 

1

 

2

 

Выпуклые функции.

 

Определение. Пусть f :S R n , где S – непустое выпуклое множество в R n .

Функция f

выпукла на множестве S , если для x1, x2 S и (0,1) :

 

 

f [ * x1 + (1- ) * x2 ] * f(x1) + (1- ) * f(x2 ) (5)

 

Функция

f строго выпукла на множестве S , если для x1, x2

S, x1 x 2 и

(0,1) :

f [ * x1 + (1- ) * x2 ] * f(x1) + (1- ) * f(x2 )

 

Функция

f :S R n называется вогнутой (строго вогнутой) ,

если функция

f выпукла ( строго выпукла ) на S .

 

Что означает соотношение (5): для выпуклой функции значение

f в точках от-

 

 

12

 

резка, соединяющего x1 и x2 , не превосходит средневзвешенного (с тем же )

значения величин f (x1) и f(x2 ) .

Определение (для функции одной переменной). График функции F(X) называ-

ется вогнутым (рис. 2) на интервале (A,B), выпуклым (рис. 3) на интервале (А,В),

если все точки графика расположены ниже (выше) любой его касательной на этом интервале.

Теорема 1. Если функция F(X) дважды дифференцируема на интервале и во всех его точках , то ее график выпуклый (вогнутый) на этом ин-

тервале.

Определение. Точкой перегиба графика функции называется точка этого графика, которая отделяет выпуклую его часть от вогнутой (рис. 4).

Рис. 2. Вогнутая функция

Рис. 3. Выпуклая функция Рис. 4 Функция общего вида

Теорема 2. Пусть функция F(X) определена в некоторой окрестности точки B

и дважды дифференцируема в ней всюду, кроме, быть может самой точки B. То-

гда, если при переходе через точку B вторая производная меняет знак, то точка B

есть точка перегиба графика функции.

Примеры выпуклых функций: f1(x) = 3* x + 4 ;

f2 (x) = x ;

f3(x) = x2 - 2 * x

13

Понятие унимодальной функции.

Определение. f (x) унимодальна на [a,b], если существуют , : a b

такие, что:

1)f (x) строго монотонно убывает на [a, ],

2)f (x) строго монотонно возрастает на[ ,b],

3) для x [, ] f(x) = min f (x) .

x [a,b]

Если , то f (x) строго унимодальна.

Унимодальная функция не обязательно должна быть непрерывной и дифферен-

цируемой. Ниже представлены примеры унимодальных функций.

Рис. 5. Строго унимодальная, непрерывная, дифференцируемая функция.

Рис. 6. Нестрого унимодальная, непрерывная, дифференцируемая функция.

Рис. 7. При x c имеет разрыв I-го рода, при x ,

x d производной у функции f (x)

не существует.

 

14

Рис. 8. Пример многоэкстремальной функции, где x* – точка глобального минимума.

Если функция f на отрезке [a,b]многоэкстремальна (то есть существует не-

сколько минимумов функции f ), то возникает задача отыскания глобального ми-

нимума функции f (x) .

Замечание. Для унимодальной функции локальный оптимум является глобаль-

ным.

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

1)если унимодальная функция выпукла, то она имеет глобальный минимум;

2)если унимодальная функция вогнута, то она имеет глобальный максимум.

Алгоритм определения глобального максимума (минимума):

Шаг 1. Приравнять и найти все стационарные точки.

Шаг 2. Выбрать все стационарные точки, которые расположены в интервале

[A,B]. Обозначим эти точки через х1, х2, …, хN. Проверку наличия локального опти-

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

ками A и B.

Шаг 3. Найти наибольшее (наименьшее) значение F(х) из множества F(A), F(B), F(х1), …, F(хn). Это значение соответствует глобальному максимуму (минимуму).

Общие сведения о численных методах оптимизации, их классификация.

В большинстве случаев задачу оптимизации: f (x) min , x X не удается ре-

шить опираясь на необходимые и достаточные условия оптимальности или на гео-

метрическую интерпретацию задачи, и приходится ее решать численно с примене-

нием вычислительной техники. Причем, наиболее эффективными оказываются ме-

15

тоды, разработанные специально для решения конкретного класса задач оптимиза-

ции, так как они позволяют полнее учесть ее специфику.

Любой численный метод имеет два этапа:

1) первый этап любого численного метода (алгоритма) решения задачи опти-

мизации основан на точном или приближенном вычислении ее характеристик (зна-

чений целевой функции; значений функций, задающих допустимое множество, а

также их производных);

2) на втором этапе, на основании полученной информации строится прибли-

жение к решению задачи – искомой точке минимума x* , или, если такая точка не единственна, к множеству точек минимума.

Иногда, если только это требуется, строится и приближение к минимальному

значению целевой функции f min f (x) .

x X

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

брать для вычисления, решается в зависимости от свойств минимизируемой функ-

ции, ограничений и имеющихся возможностей по хранению и обработки информа-

ции.

В зависимости от того какие характеристики, в частности, целевой функции бе-

рутся, алгоритмы делятся на алгоритмы:

1) нулевого порядка, в них используется информация только о значениях ми-

нимизируемой функции;

2)первого порядка, использующие информацию также и о значениях первых производных;

3)второго порядка, использующие, кроме того, информацию о вторых произ-

водных и так далее.

Когда решен вопрос о том, какие именно характеристики решаемой задачи сле-

дует вычислять, то для задания алгоритма достаточно указать способ выбора точек вычисления. В зависимости от способа выбора точек вычисления, алгоритмы делят-

ся на пассивные и активные (последовательные).

16

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

числений.

В активных (последовательных) алгоритмах точки вычисления выбираются поочередно, то есть точка xi 1 выбирается, когда уже выбраны точки предыдущих вычислений x1, x2 ,..,xi и в каждой из них произведены предусмотренные алгорит-

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

 

которых

будем обозначать соответственно через

y1, y 2 ,...,yi .

 

 

 

 

 

 

Таким

образом, последовательный

алгоритм определяется

точкой

x1 X и

 

 

 

~i 1

 

 

 

набором отображений вида

x

:{x1,...,xi ; y1,...,yi } X

i 1,

при этом

xi 1 ~xi 1

{x1,...,xi ; y1,...,yi }.

 

 

 

 

 

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

 

~i 1

 

~i 1

{xi ; yi }, то есть выбор точки очередного

например:

x

{x1,...,xi ; y1,...,yi } x

вычисления зависит лишь от точки предыдущего вычисления и полученного резуль-

 

~i 1

 

 

 

 

~i 1

:{xi ; 1 * y1

... i * yi }, то

тата или

x

{x1,...,xi

; y1,...,yi } x

есть выбор xi 1 зависит от xi

и линейной комбинации всех полученных результа-

тов(например, в методе сопряженных градиентов).

 

В дальнейшем для нахождения x k 1 будем пользоваться соотношением вида

xk 1 xk

 

k

* hk ,

 

k

R, k = 0,1, 2...

 

 

 

 

 

 

 

 

 

При этом конкретный алгоритм определяется:

1)заданием точки x0 ;

2)правилами выбора векторов h k и чисел k на основе полученной в резуль-

тате вычислений информации;

3) условием остановки.

17

Правила выбора h k и чисел k могут предусматривать вычисления характери-

стик не только в точках x0 , x1,...,xk , но и в других точках, отличных от x0 , x1,...,xk .

Вектор h k определяет направление k 1-го шага метода минимизации, а коэф-

фициент k – длину этого шага.

Обычно название метода минимизации определяется способом выбора h k , а

его различные варианты связываются с разными способами выбора k .

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

Среди методов минимизации можно условно выделить:

конечношаговые методы;

бесконечношаговые методы.

Конечношаговыми (или конечными) называются методы, гарантирующие отыс-

кание решения задачи за конечное число шагов.

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

Сходимость методов оптимизации.

Важной характеристикой бесконечношаговых методов является сходимость.

Метод сходится если xk x при k , где x * – решение задачи

f (x) min x X .

Если f (xk ) f (x ) , то иногда также говорят, что метод сходится (по функ-

ции), при этом последовательность x k называют минимизирующей. Минимизиру-

ющая последовательность может не сходится к точке минимума.

Пример:

f ( x )

x*

x 1

x 2

x 3

18

Вданном примере минимизирующая последовательность x k k не сходится к точке минимума x* 0 .

Вслучае, когда точка минимума x* не единственна, под сходимостью метода

понимается сходимость x k к множеству X * точек минимума функции f (x) .

Пусть xk x при k .

 

 

 

 

 

 

Говорят, что:

 

 

 

 

 

 

 

 

1) последовательность x k

сходится к точке x* линейно (с линейной скоростью,

со скоростью геометрической прогрессии), если существуют такие константы

q (0,1) и k0 , что

 

 

 

 

 

 

 

 

 

 

x k 1 x

 

 

 

x k x

 

* q при

k k

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

2) последовательность x k

сходится к точке x* сверхлинейно (со сверхлиней-

ной скоростью), если:

 

 

 

 

 

 

 

 

xk 1 x qk * xk x , qk 0 при k

3) последовательность x k сходится к точке x* с квадратичной скоростью схо-

димости, если существуют такие константы с 0 и k0 , что

xk 1 x

 

*

 

 

 

xk x

 

 

 

2

при

k k

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

Большинство теорем о сходимости методов оптимизации доказывается в пред-

положении о выпуклости целевой функции.

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

Условия остановки (критерии окончания счета).

Условие остановки может определяться имеющимися в наличии вычислитель-

ными ресурсами (например, числом вычислений характеристик минимизируемой функции) f (x) .

На практике часто используют следующие условия остановки:

19

 

 

x k 1 x k

 

 

1

(1)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f (xk 1) f (xk )

 

 

2

(2)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f ( xk 1)

 

 

3

 

 

 

 

 

 

(3)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

ящие в одновременном выполнении двух или всех трех условий

(1) –

(3).

 

 

 

 

 

 

 

 

 

 

 

 

Критерий

 

 

 

 

(3) относится лишь к задачам безусловной оптимиза-

ции. Его выполнение означает, что в точке x k 1 с точностью

3

выполняется усло-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

вие стационарности.

2.3.2. Раздел 2. Безусловная нелинейная оптимизация функции одной

переменной. Классификация методов.

Постановка задачи.

 

 

f (x)

– числовая функция вещественной переменной x . Под задачей одномер-

ной минимизации на отрезке [a,b] понимается поиск x* [a, b] такого, что

 

f (x* ) min

f (x)

(2.4)

 

x [a,b]

 

 

min

f (x) – наименьшее значение f (x)

на [a,b];

 

x [a,b]

 

 

x*, удовлетворяющее (2.4) называется точкой минимума f (x) на [a,b] ;

X * – множество точек минимума на [a,b] ;

X * может быть пустым, содержать конечное или бесконечное число точек.

Замечание. Задача поиска максимума f (x) сводится к задаче поиска миниму-

ма: max f (x) min( f (x)).

Задача одномерной минимизации состоит из двух частей:

20

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