Методы направленного поиска экстремумов. 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Методы направленного поиска экстремумов.



Это пошаговые методы, на каждом шаге используется информация предыдущих шагов.

5.1 Методы определения экстремума унимодальной функции.

Унимодальная функция – функция, в интервале исследования имеющая только один экстремум.

А) Методы определения экстремума функции одной переменной.

Идея методов:

На каждом шаге выбирается 2 точки X1 и X2 в них определяются значения целевой функции, они сравниваются.

На рис. 1 f (X1)< f (X2), тогда из дальнейшего рассмотрения удаляется интервал [a, X1], т.к. там не будет экстремума.

На рис. 2 f (X1)> f (X2), тогда в интервале [X2, b] не может быть экстремума, если функция унимодальная.

На рис. 3 f (X1)= f (X2), тогда исключаются [a, X1] и [X2, b].

Б)Метод половинного деления (дихотомии).

Дана целевая функция, она унимодальна.

1. Если область изменения переменной неограниченна, то ее надо ограничить.

2. Интервал исследования делится пополам. Выбирается точность получения результата (интервал, внутри которого будет находится экстремум).

3. Заданный интервал делится пополам ∆Х/2, полученные величины откладываются от т. С влево и вправо. Получаем две точки X1 и X2.

4. В т. X1 и X2 вычисляется значение целевой функции.

5. Затем, используя свойство унимодальности целевой функции удалить из рассмотрения один из полученных интервалов и перейти на шаг 2.

В) Метод Фибоначчи.

В основе метода лежат числа Фибоначчи.

N              
FN              

 

 

N – порядковый номер;

F0= F1=1; FN= FN+1+ FN-2

Задана целевая функция f (X) и точность ∆Х.

Алгоритм метода.

1. Находится некоторое число F= l/ ∆Х, допустим F′ = 10(9)

2. Выбирается ближайшее наибольшее число Фибоначчи (FN = 13, N = 6)

3. Находится новая точность получения результата ∆Х′ = l/ FN.

4. Зафиксировать 2 точки X1 и X2 следующим образом:

X1 = а + FN-2 * ∆Х’

X2 = b - FN-2 * ∆Х’

5.Вычисляется значения f (X1) и f (X2).

6. Используя свойство унимодальности – удалить из дальнейшего рассмотрения один из интервалов, в данном случае [X2, b].

Переход к новому циклу:

Анализируется интервал [a, X2]. От его концов откладываются новые точки X3 и X4. Их величина FN-3 * ∆Х’ (∆Х′ – то же порядковое число Фибоначчи ↓ на 1)

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

Преимущество метода:

Нет необходимости вычислять два новых значения Х, а только одно значение аргумента и целевой функции. Метод Фибоначчи работает быстрее метода дихотомии.

Недостаток метода:

Подготовительная работа по заготовке таблиц Фибоначчи.


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

Задана целевая функция f (X), ограничения [a,b], точность получения результата ∆Х.

Если выполняется условие аb/ас=ас/ cb, то это золотое сечение.

1) от концов интервала l откладываем интервалы aX2= bX1 = (1/1,62)∙ l получаем точки X1 и X2.

2) определяются значения f (X1) и f (X2).

3)используя свойство унимодальности, удалить из рассмотрения один из крайних отрезков (в случае поиска max - [X2, b]). Остался интервал [a, X2] длиной l1. От его концов откладываются отрезки длиной (1/1,62)∙ l1. При этом одна из точек совпадает с одной из точек, оставшейся от предыдущей итерации.

 

5.2 Методы определения локального экстремума функции нескольких переменных

а) Метод Гаусса – Зейделя

Метод поочередного изменения параметров (переменных), или метод покоординатного спуска (подъема).

Суть метода: поочередная оптимизация последовательно по каждой переменной.

Обрабатывается функция n переменных. По каждой переменной задана область изменения. Случайным образом выбирается т. А1.

А112, х3′,…, хn′ => f( х12, х3′,…, хn)

=

х1 рассматривается в целевой функции, а другие переменные фиксируются. Применяется один из рассмотренных ранее методов. Затем находится т.А2.

А1122, х3′,…, хn′ => f( х12, х2, х3′,…, хn)

=

Берется следующая переменная – х2. Целевую функцию рассматриваем как функцию переменной х2,остальные переменные фиксируются. Используем один из методов для функции одной переменной и получаем т. А3.

А3=:х1222, х3′,…, хn′ и т.д. процесс повторяется.

Характерные черты метода: Спираль выбранных точек имеет прямые углы. Метод обеспечивает поиск только локального экстремума. Результаты анализа целевой функции зависят от первоначально выбранной точки.

Преимущество: простота алгоритмизации. Алгоритм останавливается, когда разница между значениями целевой функции достаточно мала (она задается).

б) Метод градиента(наиболее распространен)

Суть метода: нахождение направления движения, в котором целевая функция наибольшим образом изменяется и осуществление следующего шага в этом направлении.

Градиент функции – вектор, который характеризует направление наибольшего возрастания функции.

Антиградиент – уменьшение функции. grad fN12,...,хn)=(∂ fN/ ∂ х1,fN/ ∂ х2,..., fN/ ∂ хn), вычисленный в точке N

 

 

fN/ ∂ х1 = tgα > 0(≤α < 90 *) - значит ∂ fN/ ∂ х1 = tgα <0 - значит нужно шагать вправо(увеличивать х). нужно шагать вправо(увеличивать х).

fN/ ∂ х2 = tgβ< 0(≤α > 90 *) - ∂ fN/ ∂ х2 = tgβ> 0 - значит нужно шагать влево.

значит нужно шагать влево (уменьшать х).

(уменьшить х).

 

Для max следующая точка хN+1 = xN+ (∂ fN/ ∂ хn) ∙ h

h- вспомогательная величина.

Если ∂ fN/ ∂ хn =0, то в этой точке экстремум.

Для min следующая точка хN+1 = xN- (∂ fN/ ∂ хn) ∙ h

В случае n- мерного пространства:

_

хi N+1=xiN+(∂ fN/ ∂хin)∙h; i=1,n – max

_ (1)

хi N+1 = xiN - (∂ fN/ ∂ хi n) ∙ h; i=1, n - min

 

 

Алгоритм метода

Случайно выбираемся точка с некоторыми координатами. Затем по формуле (1) рассчитывается следующая точка.

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

Модуль рабочего шага

b=h

 

Преимущества:

-метод сходится быстрее.

Недостаток:

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

в) Метод наискорейшего спуска

Представляет собой ускоренный метод градиента

При поиске min

f(x1, x2, … xm)- целевая функция

xiN+1=xiN – t ∂f/∂xiN = x(t) i=1, … m

будем считать t – переменной

f(x1(t), x2(t),...,xm(t)) = (t), в этом случае целевая функция есть функция одной переменной t.

Составим уравнение =0, найдем t*.

 

xiN+1=xiN – t* ∂f/∂xiN

чем ближе к min – тем меньше , тем меньше шаг надо делать.

 



Поделиться:


Последнее изменение этой страницы: 2017-02-17; просмотров: 222; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.145.74.54 (0.018 с.)