Описание метода решения и расчетного алгоритма
Метод градиента основан на том, что вектор градиента в каждой точке Х Î ХN совпадает с направлением наискорейшего возрастания функции.
Требуется найти: minF(X), если XÎ XN, x=x(x1, x2 ,.., xn), N=1,..,.n.
Алгоритм метода.
1. Выбор стартовой точки Хо.
2. Вычислить F(X) и gradF(X)
3. Из точки х11 и из любой точки хi,k в антиградиентном направлении с шагом hi в xi,k+1 и т.д. по формуле:
где « – » из-за антиградиентного направления.
4. Вычисление F(X) на каждом шаге, если Fk+1 < Fk, то
Графическая интерпретация метода градиента для двумерного случая приведена на рисунке 1. Целевая функция отображена линиями уровней: F(x)=const=a, а траектория движения к точке оптимума – {х0, х1, х2, х3 , х4, х5}
x1 |
x2 |
a0 a1 a2 a3 a4 a5 |
x0 |
x1 |
x3 |
x2 |
x4 |
x5 |
Рисунок 1 - Траектория движения к точке оптимума по методу градиента
Вычисление градиента в точке x0 начинается с серии пробных шагов. Сначала величине x1 дается небольшое приращение ∆ x1> 0, причем в это время x2 неизменно. Затем определяется полученное при этом приращении значение ΔF, которое можно считать пропорциональным значению величины частной производной в рассматриваемой точке.
Далее дается приращение величины x2. В это время значение x1 -постоянно. Получаемое при этом приращение ∆F является мерой другой частной производной.
После нахождения составляющих градиента делаются шаги в направлении вектора градиента, если стоит задача определения максимума и в направлении противоположном, если решается задача поиска минимума.
Таким образом, определяются новые значения x1 и x2 в соответствующей точке. После каждого шага оценивается приращение ΔF величины F.
Если ΔF>0 при поиске максимума или ΔF<0 при поиске минимума, то движение происходит в правильном направлении, иначе необходимо уменьшить величину шага.
Численное значение координаты при движении по градиенту для переменной xi в последующей k+1 точке вычисляется при помощи численного значения этой координаты на предыдущем шаге по следующей формуле:
xi,k+1 = xi,k ± hk * Si,k
(+ для поиска максимума; – для поиска минимума),
где,
i =1,2 , … ,n ; k=0,1,2, … ,.
n – число варьируемых переменных, k – номер шага поиска.
Величина называется нормой градиента в соответствующей
точке поиска экстремума целевой функции и вычисляется по формуле:
hk – шаг поиска в точке, который выбирается произвольно.
Глава II. Практическая часть
Разработка компьютерной программы для решения задачи оптимизации градиентным методом с использованием равномерного поиска