Смекни!
smekni.com

Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" (стр. 2 из 12)

· метод градиентного спуска;

· метод наискорейшего градиентного спуска;

· метод покоординатного спуска;

· метод Гаусса-Зейделя;

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

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

:

· метод Ньютона;

· метод Ньютона-Рафсона;

· метод Марквардта

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

В практикуме реализованы следующие методы нулевого порядка:

· метод случайного поиска

· метод деформируемого многогранника

· метод конфигураций

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

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

,

здесь:

o

- направление антиградиента функции;

o

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

Геометрическая интерпретация метода:

Рисунок 1.2. Геометрическая интерпретация метода

Основной критерий окончания метода:

Построение последовательности заканчивается в точке, для которой

где

- заданное малое положительное число, здесь

Начальные параметры метода:

.

Изменяемый параметр метода: величина шага

.

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

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

Рекомендации по выбору параметров метода. Согласно алгоритму метода, каждая последующая точка

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

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

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

,

здесь

·

- направление антиградиента функции

·

- шаг вычисляется из условия наибольшего убывания функции в точках последовательности:

·

Геометрическая интерпретация метода

Рисунок 1.3. Геометрическая интерпретация метода

В методе наискорейшего градиентного спуска последующая точка

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

Основной критерий окончания метода:

Начальные параметры метода:

Изменяемые параметры метода: отрезок для уточнения шага

.

Особенности реализации алгоритма. При решении задачи поиска оптимального шага

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

Рекомендации по выбору параметров метода. При задании на каждой итерации отрезка

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

Проиллюстрируем ситуацию, при которой шаг

вычисляется численно методом дихотомии. Для этого построим график функции
, которая в случае если
является квадратичной функцией, имеет вид:

Рисунок 1.4 Метод дихотомии

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

Как видно из чертежа, если в качестве отрезка будет выбран

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

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

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