Virtual Laboratory Wiki
Advertisement

Постановка задачи решения системы уравнений в терминах методов оптимизации

Задача решения системы уравнений:

(1)

с эквивалентна задаче минимизации функции

(2)

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

Для решения этой задачи итерационными методами начинают с произвольных значений и строят последовательные приближения:

или покоординатно:

(3)

которые сходятся к некоторому решению при .

Различные методы отличаются выбором «направления» для очередного шага, т.е. выбором отношений

.

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

Градиентные методы

Основная идея методов заключается в том, чтобы идти в направлении наискорейшего спуска, а это направление задаётся антиградиентом :

где выбирается

  • постоянной, в этом случае метод может расходиться;
  • дробным шагом, т.е. длина шага в процессе спуска делится на некое число;
  • наискорейшим спуском:

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

Основная статья: метод градиента


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

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

(5)

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

Алгоритм

  1. Задаются начальное приближение и точность расчёта
  2. Рассчитывают , где
  3. Проверяют условие останова:
    • Если , то и переход к шагу 2.
    • Иначе и останов.

Метод покоординатного спуска (Гаусса—Зейделя)

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

Алгоритм

  1. Задаются начальное приближение и точность расчёта
  2. Рассчитывают , где
  3. Проверяют условие останова:
    • Если , то и переход к шагу 2.
    • Иначе и останов.

Метод сопряжённых градиентов

Метод сопряженных градиентов основывается на понятиях прямого метода многомерной оптимизацииметода сопряжённых направлений.

Применение метода к квадратичным функциям в определяет минимум за шагов.

Алгоритм

  1. Задаются начальным приближением и погрешностью:
  2. Рассчитывают начальное направление:
    • Если или , то и останов.
    • Иначе
      • если , то и переход к 3;
      • иначе и переход к 2.

Литература

  1. Акулич И.Л. Математическое программирование в примерах и задачах: Учеб. пособие для студентов эконом. спец. вузов. — М.: Высш. шк., 1986.
  1. Гилл Ф., Мюррей У., Райт М. Практическая оптимизация. Пер. с англ. — М.: Мир, 1985.
  1. Коршунов Ю.М., Коршунов Ю.М. Математические основы кибернетики. — М.: Энергоатомиздат, 1972.
  1. Максимов Ю.А.,Филлиповская Е.А. Алгоритмы решения задач нелинейного программирования. — М.: МИФИ, 1982.
  1. Максимов Ю.А. Алгоритмы линейного и дискретного программирования. — М.: МИФИ, 1980.
  1. Корн Г., Корн Т. Справочник по математике для научных работников и инженеров. — М.: Наука, 1970. — С. 575-576.


Ссылки

Внешние ссылки

См. также

  • Численные методы
    • Численное решение уравнений
    • Метод Гаусса-Зейделя решения СЛАУ

Эта страница использует содержимое раздела Википедии на русском языке. Оригинальная статья находится по адресу: Система уравнений и экстремальные задачи. Градиентные методы.. Список первоначальных авторов статьи можно посмотреть в истории правок. Эта статья так же, как и статья, размещённая в Википедии, доступна на условиях CC-BY-SA .


Advertisement