Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МОТС / МОТС-л.doc
Скачиваний:
50
Добавлен:
29.03.2015
Размер:
5.33 Mб
Скачать

3.4.2.1. Метод покоординатного спуска

Сущность метода.

Поиск экстремума ведется в направлении осей координат, т.е. в процессе поиска изменяется только одна координата. Таким образом, многомерная задача сводится к одномерной (рис. 3.6).

Рис. 3.6. Метод покоординатного спуска

(– новые точки приближения к экстремуму)

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

Первый цикл:

1 шаг. x1 = var, х2 = х20, х3 = х30,хn = хn0.

Ищем экстремум функции f(х1). Положим, экстремум функции в точке х11.

2 шаг. x1 = х11, x2 = var, х3 = х30,хn = хn0.

Экстремум f(х2) равен х21.

n шаг. x1 = х11, x2 = х21, x3 = х31,xn = var.

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

Далее проверяем критерий окончания счета (3.15):

если – решение найдено, в противном случае выполняем еще один цикл.

Пример 1.

f(x1, x2)= 4x12 – 10x22 +10x1 x2 – 26x1

= (0, 0),  = 0,1.

Решение

1. x1 = var, х2 = 0, f(x1)= 4x12 – 26x1.

Любым известным методом находим экстремум: x11 = 3,25.

2. x1 = 3,25, х2 = var, f(x2)= –10x22 + 32,5x2 – 42,25.

x21 = 1,625

= (3,2; 1,625)

3. Проверка критерия окончания счета:

Как видим, , следовательно, требуется выполнить еще хотя бы один цикл.

Пример 2.

f(x1, x2)= 5x12 + 5x22 – 4x1 x2 x1 x2

= (1, 1),  = 0,01.

Решение.

1. x1 = var, х2 = 1 f(x1)= 5x12 – 5x1 + 4.

Любым известным методом находим экстремум:

2. x1 = 0,5, х2 = var, f(x2)=0,75 – 3 x2 + 5x22.

x21 = 0,3б

= (0,5; 0,3).

3. Проверка критерия окончания счета:

2,8 > ε = 0,01.

Видим, , следовательно, требуется выполнить еще хотя бы один цикл.

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

Поиск экстремума ведется шагами в направлении градиента (max) или антиградиента (min). На каждом шаге в направлении градиента (антиградиента) движение осуществляется до тех пор, пока функция возрастает (убывает).

Этот метод имеет лучшую сходимость, чем предыдущий.

Допустим, требуется найти минимум функции.

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

1. Находим

. (3.16)

Введем обозначения:

тогда

2. Делаем шаг в направлении антиградиента. Выражения для нахождения координат новой точки приближения к экстремуму выглядят следующим образом:

(3.17)

где 1 – величина шага в направлении антиградиента при 1-ой итерации.

3. Нахождение величины шага.

В направлении антиградиента движемся до тех пор, пока функция убывает. Следовательно, шаг выбирается из условия минимума функции f(1).

Для этого в функцию f(х1, х2хn) подставляем выражения для координат новой точки (3.17).

В результате получим функцию одной переменной f(1). Минимум f(1) находим любым известным методом поиска экстремума функции одной переменной.

4. Полученное значение 1 подставляется в формулы (3.17). В результате получаем точку X1 = (x11,,xn1).

5. Проверка критерия окончания счета.

Если , то решение в точке, иначе – требуется сделать еще шаг.

Пример 1.

f(x1, x2) = x12 – 7x1 + x22 – 4x2x1x2 + 35, = (1, 1), = 0,5.

Требуется найти минимум f(x1, x2).

Решение.

1. = 2x1 – 7 x2, a1 = 21 –7 –1 = –6.

= 2x2 – 4 x1, a2 = 21 –4 –1 = –3.

2. x11 = x10 – 1 a1 = 1 + 61

x21 = x20 – 1 a2 = 1 + 31

3. f(x1, x2)= f(1) = = 27(1)2 – 451 + 35.

Находим минимум f(1):11 = 5/6.

x11 = 1 + 61 = 6,

x21 = 1 + 31 = 3,5.

(6; 3,5)

4. , следовательно, нужен еще шаг.

Пример 2.

Найти безусловный экстремум методом наискорейшего спуска

F(x1,x2) = 5x12 – 4x1x2 + 5x22x1x2;

Х0 (1;1);

ε = 0,01.

Тип экстремума минимум f(x1, x2).

Решение

1. = 10x1 – 4x2, – 1, a1 = 101 – 41 – 1= 5,

= –4x1 +10x1 – 1, a2 = –41 + 101 – 1 = 5.

2. x11 = x10 – 1 a1 = 1 – 51

x21 = x20 – 1 a2 = 1 – 51

3. f(x1, x2)= f(1) = 50 – 3001

Находим минимум f(1): 1 = 1/6.

x11 = 1 – 51 = 1/6,

x21 = 1 – 51 = 1/6.

Х1 (1/6; 1/6).

4. f(Х1)f(Х0)= 4,167 > ε, следовательно, нужен еще шаг.

Соседние файлы в папке МОТС