Смекни!
smekni.com

Многомерные задачи оптимизации (стр. 2 из 6)

(2.1)

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

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

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

- шаг разбиения. Вычислим значения целевой функции
в узлах
. Сравнивая полученные значения
, найдем среди них наименьшее
.

Число

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

т. е. с увеличением числа точек разбиения погрешность минимума стремится к нулю.

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

и оценке погрешности. Можно, например, провести оптимизацию с разными шагами и исследовать сходимость такого итерационного процесса. Но это трудоемкий путь.

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

, вычисленных в узлах
наименьшим оказалось
. Это означает, что оптимальное значение проектного параметра находится на отрезке
, т. е. интервал неопределенности сузился до длины двух шагов. Если размер интервала недостаточен для удовлетворения заданной погрешности, т. е.
,

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

Существует ряд специальных методов поиска оптимальных решений разными способами выбора узлов и сужения интервала неопределенности - метод деления отрезка пополам, метод золотого сечения и др. Рассмотрим один из них.

2.3 Метод золотого сечения.

Метод золотого сечения состоит в построении последовательности отрезков [a0, b0], [a1, b1], …,стягивающихся к точке минимума функции f(x). На каждом шаге, за исключением первого, вычисление значения функции f(x) проводится лишь один раз. Эта точка, называемая золотым сечением, выбирается специальным образом.

На первом шаге процесса оптимизации внутри отрезка [a0, b0] выбираем две внутренние точки x1 и x2 и вычисляем значения целевой функции f(x1) и f(x2). Поскольку в данном случае f(x1) < f(x2), очевидно, что минимум расположен на одном из прилегающих к x1 отрезков [a0, x1] или [x1, x2]. Поэтому отрезок [x2, b0] можно отбросить, сузив тем самым первоначальный интервал неопределенности.

Второй шаг проводим на отрезке [a1, b1], где a1 = a0, b1 = x2. Нужно снова выбрать две внутренние точки, но одна из них (x1) осталась из предыдущего шага, поэтому достаточно выбрать лишь одну точку x3, вычислить значение f(x3) и провести сравнение. Поскольку здесь f(x3) > f(x1), ясно, что минимум находится на отрезке [x3, b1]. Обозначим этот отрезок [a2, b2], снова выберем одну внутреннюю точку и повторим процедуру сужения интервала неопределенности. Процесс оптимизации повторяется до тех пор, пока длина очередного отрезка [an, bn] не станет меньше заданной величины ε.

Теперь рассмотрим способ размещения внутренних точек на каждом от резке [ak, bk]. Пусть длина интервала неопределенности равна l, а точка деления делит его на части l1, l2: l1 > l2, l = l1 + l2. Золотое сечение интервала неопределенности выбирается так, чтобы отношение длины большего отрезк к длине всего интервала равнялось отношению длины меньшего отрезка к длине большего отрезка:

(1)

Из этого соотношения можно найти точку деления, определив отношение l2/l1. Преобразуем выражение (1), и найдем это значение:

l

=l2l1, l
=l2(l1 + l2),

l

+l1l2 - l
=0,

2 +
- 1 =0,

=
.

Поскольку нас интересует только положительное решение, то

.

Отсюда l1

k1l, l2
k2l.

Поскольку заранее неизвестно, в какой последовательности делить интервал неопределенности, то рассматривают внутренние точки, соответствующие двум этим способам деления. Точки деления x1 и x2 выбираются с учетом полученных значений для частей отрезка. В данном случае имеем

x1 – a0 = b0 – x2 = k2d0,

b0 - x1 = x2 – a0 = k1d0,

d0 = b0 – a0.

После первого шага оптимизации получается новый интервал неопределенности – отрезок [a1, b1].

Можно показать, что точка x1 делит этот отрезок в требуемом отношении, при этом

b1 – x1 = k2d1, d1 = b1 – a1.

Для этого проведем очевидные преобразования:

b1 – x1 = x2 – x1 = (b0 – a0) – (x1 – a0) – (b0 – x2) = d0 – k2d0 - k2d0 = k3d0,

d1 = x2 – a0 = k1d0,

b1 – x1 = k3(d1/k1) = k2d1.

Вторая точка деления x3 выбирается на таком же расстоянии от левой границы отрезка, т.е. x3 – a1 = k2d1.

И снова интервал неопределенности уменьшается до размера

d2 = b2 – a2 = b1 – x3 = k1d1 = k

d0.

Используя полученные соотношения, можно записать координаты точек деления y и z отрезка [ak, bk] на k +1 шаге оптимизации (y < z):

y = k1ak + k2bk,

z = k2ak + k1bk.

При этом длина интервала неопределенности равна

dk = bk – ak = k

d0.

Процесс оптимизации заканчивается при выполнении условия dk < ε. При этом проектный параметр оптимизации составляет ak < x < bk. Можно в качестве оптимального значения принять x = ak (или x = bk, или x = (ak + bk)/2 и т.п.).

2.4 Метод Ньютона.