Добавил:
СПбГУТ * ИКСС * Программная инженерия Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебные пособия / ММвСС (2018) v3.pdf
Скачиваний:
181
Добавлен:
15.01.2020
Размер:
3.99 Mб
Скачать

Симплекс метод Нелдера-Мида (пример)

Пример поиска минимума функции Розенброка

Шаги поиска экстремума из точки (3; 3)

X

 

X

 

Часть рисунка с идентификатором отношения rId6 не найдена в файле.

Часть рисунка с идентификатором отношения rId6 не найдена в файле.

Результат (1,000; 1,002); 243 вычисления функции

199

2n1
xi

3.4 Комплексный метод Бокса (Условная оптимизация)

Пусть задана выпуклая функция нескольких переменных

n

и ограничения в виде явных и неявных ограничений x*

g (x) b

 

j =1 m

xc =

1 xr

 

 

 

 

 

 

i

 

j

j

 

 

 

 

 

 

i 1

r =1

 

(Данный метод представляет собой модификацию симплекс метода Нелдера-Мида, в отличии от последнего, поиск ведется с помощью многогранника, содержащего 2n вершин (комплекса))

Метод предполагает следующие шаги:

1. Подготовка. Задается стартовая точка x0, удовлетворяющая всем условиям ограничений. Остальные 2n-1 точек могут быть получены, например «случайным» выбором, с учетом явных ограничений xi=li+rnd*(ui-li), где rnd – случайное число от 0 до 1. После этого полученные точки проверяются на их соответствие неявным ограничениям, если точка xi не удовлетворяет неявным ограничениям, то она «подтягивается» к центру масс точек, удовлетворяющих всем ограничениям, т.е. пересчитывается, напримеркак xi=(xi+xc)/2, где xc центр масс.

x0 = 2n11 i=1

2.Оценка. Вычисляютсязначенияфункции в вершинахмногогранника. Находят «худшую» вершину xH.

3.Отражение. Относительно «наихудшей» точки определяетсяцентр тяжестипротивоположнойграни многогранника

 

2n1(f (xi )f )

 

 

1

2n

σ =

i=1

;

f =

f (xi )

2n

 

 

 

 

2n i=1

4.Выполняется попытка отражения наихудшей точки через найденный центр тяжести. В результате чего получают точку xR.

5.Проверка на допустимость точки xR. Если отраженная точка удовлетворяет явным и неявным ограничениям, то она включается в комплекс, а «наихудшая» точка xH исключается. Если xR не удовлетворяет явным ограничениям, то xR

присваивается ближайшее допустимое значение. После этого производится проверка на соответствие неявным ограничениям. Если условия неявных ограничений не выполняются, то точка xR «подтягивается» к центру масс xR=(xi+x0)/2 , и вновь выполняется проверка. При каждом «подтягивании» точки к центру масс проверяется критерий сходимости, в качестве которого обычно принимается величина среднеквадратического отклонения значения функции в точках комплексаи максимальноерасстояниемежду точками комплекса dm.

Cj (x) >0 j =1 m

200

6.Условие сходимости достигается, если σ и dm меньшенекоторыхзаданных величин.

3.5 Метод штрафных функций (Условная оптимизация)

Пусть задана выпуклая функция x* переменных

n

и ограничения в виде

z(x)=f(x)+P(x); P(x)штрафнаяфункция

 

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

m

P ( x) = r

j =1

Например, z(x,r) = f (x)

1

; r > 0

C j ( x)

m

1

 

 

f (x) = x2; x > 2

+ rj=1

 

;

 

C j (x)

 

 

 

Пример.

 

 

 

 

 

 

 

 

 

 

Часть рисунка с идентификатором отношения rId19 не найдена в файле.

 

z(x, r) = x2 + r

1

 

;

 

 

x 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

F

201

Метод штрафных функций (алгоритм)

Начало

Задать допустимую x0

r = r0

Найти min z(x) -> x**

 

Да

Нет

x**

rk+1 = rk/10

x = x**

Останов

 

202