АЛГОРИТМЫ

Новости

Рассылка новостей

Форум

AlgoPascal

Редактор блок-схем

Статьи

О сайте

Контакты



Содержание - Поиск экстремумов функций - Метод наискорейшего спуска

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

Методом наискорейшего спуска может быть найден минимум функции n переменных F(x, ..., x) или найдены решения системы уравнений вида:

F(x, x, ..., x) = 0, i = 1, ..., n

Решение данной системы эквивалентно отысканию равного нулю минимума функции:

Для нахождения минимума F задаем некоторое начальное приближение x (0) (i = 1, ..., n) и строим последующие приближения по формуле:

где направления v (j) и величина шага на j-ом шаге соответственно равны:

Все производные вычисляются при x = x (j). Итерационный процесс продолжается до тех пор, пока не будет удовлетворяться условие

|x (j+1)-x (j)| < e (i = 1, ..., n)

или все производные dF/dx не станут равны нулю.

В процедуре используются функции:

  • F(x:array[1..n] of real):real - минимизируемая функция
  • DF (i:integer;x:array[1..n] of real):real - производные dF/dx
  • DF2 (i,j:integer;x:array[1..n] of real):real - производные d 2F/dxdx

Если нашли ошибку в алгоритме - сообщите!



Блоксхемы:

Посмотреть блок-схему алгоритма
Скачать блок-схему алгоритма

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


 


Бочканов Сергей, Быстрицкий Владимир
Copyright © 1999-2004
При поддержке проекта MANUAL.RU