Green-sell.info

Новые технологии
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Задачи оптимизации функции

Задача оптимизации

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

Содержание

Постановка задачи оптимизации

Для того, чтобы корректно поставить задачу оптимизации необходимо задать:

  1. Допустимое множество — множество ;
  2. Целевую функцию — отображение ;
  3. Критерий поиска (max или min).

Тогда решить задачу означает одно из:

  1. Показать, что .
  2. Показать, что целевая функция не ограничена.
  3. Найти .
  4. Если , то найти .

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

Если допустимое множество , то такая задача называется задачей безусловной оптимизации, в противном случае — задачей условной оптимизации.

Классификация методов оптимизации

Методы, по средством которых решают задачи оптимизации, подразделяются на виды, соответствующие задачам, к которым они применяются:

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

Существующие в настоящее время методы поиска можно разбить на три большие группы:

  1. детерминированные;
  2. случайные;
  3. комбинированные.

Некоторые детерминированные методы:

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

Помимо того, оптимизационные методы делятся на следующие группы:

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

Литература

  1. Акулич И.Л. Математическое программирование в примерах и задачах: Учеб. пособие для студентов эконом. пец. вузов. — М .: Высшая школа, 1986.
  2. Гилл Ф., Мюррей У., Райт М. Практическая оптимизация. Пер. с англ. — М .: Мир, 1985.
  3. Коршунов Ю.М., Коршунов Ю.М. Математические основы кибернетики. — М .: Энергоатомиздат, 1972.
  4. Максимов Ю.А.,Филлиповская Е.А. Алгоритмы решения задач нелинейного программирования. — М .: МИФИ, 1982.
  5. Максимов Ю.А. Алгоритмы линейного и дискретного программирования. — М .: МИФИ, 1980.
  6. Корн Г., Корн Т. Справочник по математике для научных работников и инженеров. — М .: Наука, 1970. — С. 575-576.
  7. Жиглявский А.А., Жилинкас А.Г. Методы поиска глобального экстремума. — М .: Наука, Физматлит, 1991.
  8. Растригин Л.А. Статистические методы поиска. — М .: 1968.
  9. Абакаров А.Ш., Сушков Ю.А.Статистическое исследование одного алгоритма глобальной оптимизации. — Труды ФОРА, 2004.

Ссылки

  • MDOP — Поиск глобального оптимума для задач оптимального проектирования систем или определения оптимальных законов управления.
  • Глобальная оптимизация, принятие решений — Программные системы поддержки принятия оптимальных решений. Глобальные алгоримы.

Методы второго порядка:
(требуют значения первой и второй частных производных):
Метод Ньютона • Метод Ньютона-Рафсона

Wikimedia Foundation . 2010 .

Смотреть что такое «Задача оптимизации» в других словарях:

задача оптимизации надёжности — — [http://slovarionline.ru/anglo russkiy slovar neftegazovoy promyishlennosti/] Тематики нефтегазовая промышленность EN reliability optimization problem … Справочник технического переводчика

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

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

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

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

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

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

Задача коммивояжёра — Оптимальный маршрут коммивояжёра через 15 крупнейших городов Германии. Указанный маршрут является самым коротким из всех возможных 43 589 145 600. Задача коммивояжёра (англ. Travelling salesman problem, TSP) (коммивояжёр&#16 … Википедия

Задача о ранце — Пример задачи о ранце: необходимо разместить ящики в рюкзак при условии на вместимость рюкзака 15 кг, так чтобы суммарная полезность предметов в рюкзаке была максимальной. Задача о ранце (рюкзаке) (англ. … Википедия

Задача о максимальном потоке — Максимальный поток в транспортной сети. Числа обозначают потоки и пропускные способности. В теории оптимизации и теории графов, задача о максимальном потоке заключается в нахождении такого потока по транспортной сети, что сум … Википедия

Постановка задачи оптимизации;

С использованием математических моделей

Оптимизация химико-технологических процессов

Лекция 7

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

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

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

Оптимизацияцеленаправленная деятельность, заключающаяся в получении наилучших результатов при соответствующих условиях.

Поиски оптимальных решений привели к созданию специальных математических методов и уже в 18 веке были заложены математические основы оптимизации (вариационное исчисление, численные методы и др.). Однако до второй половины 20 века методы оптимизации во многих областях науки и техники применялись очень редко, поскольку практическое использование математических методов оптимизации требовало огромной вычислительной работы, которую без ЭВМ реализовать было крайне трудно, а в ряде случаев — невозможно. Особенно большие трудности возникали при решении задач оптимизации процессов в химической технологии из-за большого числа параметров и их сложной взаимосвязи между собой. При наличии ЭВМ задача заметно упрощается.

Читать еще:  Приложения для linux ubuntu

Постановка задачи оптимизации предполагает существование конкурирующих свойств процесса, например:

— количество продукции – расход сырья;

— количество продукции – качество продукции.

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

При постановке задачи оптимизации необходимо:

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

Типичный пример неправильной постановки задачи оптимизации:

«Получить максимальную производительность при минимальной себестоимости».

Ошибка заключается в том, что ставится задача поиска оптимума 2-х величин, противостоящих друг другу по своей сути.

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

а) получить максимальную производительность при заданной себестоимости;

б) получить минимальную себестоимость при заданной производительности.

В первом случае критерий оптимизации – производительность, а во втором –себестоимость.

2. Наличие ресурсов оптимизации, под которыми понимают возможность выбора значений некоторых параметров оптимизирующего объекта. Объект должен обладать определенными степенями свободы – управляющими воздействиями.

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

4. Учет ограничений.

Как правило, формулировка задачи оптимизации включает:

1) выбор критерия оптимальности;

2) установление ограничений;

3) выбор оптимизирующих факторов;

4) запись целевой функции.

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

Критерием оптимальности называется количественная оценка оптимизируемого качества объекта.

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

Таким образом, задача оптимизации сводится к нахождению экстремума целевой функции.

Наиболее общей постановкой оптимальной задачи является выражение критерия оптимальности в виде экономической оценки (производительность, себестоимость продукции, прибыль, рентабельность). Однако в частых задачах оптимизации, когда объект является частью технологического процесса, не всегда удается или не всегда целесообразно выделять прямой экономический показатель, который бы полностью характеризовал эффективность работы рассматриваемого объекта. В таких случаях критерием оптимальности может служить технологическая характеристика, косвенно оценивающая экономичность работы агрегата (время контакта, выход продукта, степень превращения, температура). Например, устанавливается оптимальный температурный профиль, длительность цикла –«реакция-регенерация». Но в любом случае любой критерий оптимальности имеет экономическую природу.

Рассмотрим более подробно требования, которые должны предъявляться к критерию оптимальности.

1. Критерий оптимальности должен выражаться количественно.

2. Критерий оптимальности должен быть единственным.

3. Критерий оптимальности должен отражать наиболее существенные стороны процесса.

4. Желательно, чтобы критерий оптимальности имел ясный физический смысл и легко рассчитывался.

Любой оптимизируемый объект схематично можно представить следующим образом (рис. 7.1).

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

Так как Y=f(U), то при фиксированных Х можно записать:

При этом всякое изменение значений управляющих параметров двояко сказывается на величине R:

прямо, т.к. управляющие параметры непосредственно входят в выражение критерия оптимизации;

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

В принципе, для оптимизации вместо математической модели можно использовать и сам объект, однако оптимизация опытным путем имеет ряд существенных недостатков:

а) необходим реальный объект;

б) необходимо изменять технологический режим в значительных пределах, что не всегда возможно;

в) длительность испытаний и сложность обработки данных.

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

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

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

Итак, для решения задачи оптимизации необходимо:

а) составить математическую модель объекта оптимизации:

Y=f(X,U)

б) выбрать критерий оптимальности и составить целевую функцию:

R=φ(Y)=F(X,U)

Целевая функция – это то же самое, что критерий оптимальности, но это критерий, рассматриваемый как функция входных факторов.

в) установить возможные ограничения, которые должны накладываться на переменные:

Постановка задачи оптимизации

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

1. Целевая функция / (х) и-мерного векторного аргумента

  • 2. Ограничения в виде неравенств g (х) > О.
  • 3. Ограничения в виде равенств hk(x) = 0.
  • 4. Область допустимых значений хе D с R».

Задача оптимизации в общем виде:

ограничения II рода gy(x) S 0, j = 1, J;

Классификация задач оптимизации

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

Существует несколько признаков классификации. Основные критерии следующие:

1. По типу параметров задачи оптимизации. Различают непрерывные задачи оптимизации (continues optimization), дискретные (discrete) и целочисленные (integer optimization).

Рис. 1.3. Классификация задач оптимизации

  • 2. По критерию размерности допустимого множества параметров D. Задачи оптимизации по этому критерию делятся на задачи одномерной и многомерной оптимизации.
  • 3. По критерию наличия или отсутствия ограничений на допустимое множество D. Различают задачи условной (constrained) и безусловной (unconstrained) оптимизации. Этот признак классификации имеет место как для одномерных, так и для многомерных задач оптимизации.
  • 4. По характеру ограничений. Различают детерминированную оптимизацию и стохастическую. Если множество допустимых значений включает случайные компоненты, то имеет место стохастическое программирование. При этом стохастическая оптимизация может относиться и к дискретной задаче.
  • 5. По виду целевой функции и виду ограничений. Различают линейное и нелинейное программирование.
Читать еще:  Параметрическая оптимизация это

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

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

Ниже представлены постановки основных задач оптимизации в соответствии с рис. 1.3.

Задача одномерной безусловной оптимизации

Ограничения отсутствуют, К = J = 0, D = R’, т. е. задача без ограничений с одномерным вектором. Вид f(x) произвольный.

Задача многомерной безусловной оптимизации

Ограничений нет, K = J = О, D = R», хе[-оо,оо]./(х) — любого вида.

Задача условной многомерной оптимизации

Задача линейного программирования

Целевая функция — линейна, ограничения тоже линейны.

Наиболее известные классические задачи линейного программирования: транспортная задача, задача о диете и другие.

целочисленного программирования

В задачах целочисленного программирования компоненты вектора <х>принимают только целые значения. Известны классические задачи целочисленного программирования: задача о коммивояжере, раскраски графов, теории расписания.

Задача нелинейного программирования

Особо развито выпуклое и квадратичное программирование. Приведенная классификация сделана по виду нелинейности целевой функции, при этом предполагалось, что ограничения ф<х) — линейны.

Рис. 1.4. Классификация задач нелинейного программирования

Методы оптимизации

Здесь F — целевая функция, условие (0) описывает вхождение грузов в транспортную систему. Условия (1) — (3) задают балансовые соотношения для узлов 1- 3 системы. Другими словами, для каждого из внутренних узлов входящий поток грузов равен выходящему потоку , грузы не скапливаются внутри и системы и не «рождаются» в ней. Условие (4) — это условие «выхода» грузов из системы. Вместе с условием (0) оно составляет балансовое соотношение для системы в целом («вход» равен «выходу»). Следующие девять неравенств задают ограничения на пропускную способность отдельных «веток» транспортной системы. Затем в системе ограничений задачи линейного программирования указана неотрицательность объемов перевозок и целевой функции. Ясно, что последнее неравенство вытекает из вида целевой функции (соотношения (0) или (4)) и неотрицательности объемов перевозок. Однако последнее неравенство несет некоторую общую информацию — через систему может быть пропущен либо положительный объем грузов, либо нул евой (например, если внутри системы происходит движение по кругу), но не отрицательный (он не имеет экономического смысла, но формальная математическая модель об этом «не знает»).

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

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

Представляют интерес задачи оптимизации с нечеткими переменными [12.5], а также задачи оптимизации, возникающие в эконометрике [12.6]. Например, метод наименьших квадратов, разобранный в следующей главе, основан на решении задачи оптимизации. Итоговое мнение комиссии экспертов часто вычисляют как решение задачи оптимизации. Конкретные виды задач оптимизации и методы их решения рассматриваются в соответствующей литературе.

Задачи по методам принятия решений

1. Изобразите на плоскости ограничения задачи линейного программирования и решите (графически) эту задачу:

2. Решите задачу линейного программирования:

3. Решите задачу целочисленного программирования :

4. Решите задачу о ранце:

Управляющие параметры принимают значения из множества, содержащего два элемента — 0 и 1.

5. Решите задачу коммивояжера для четырех городов (маршрут должен быть замкнутым и не содержать повторных посещений). Затраты на проезд приведены в табл.12.7.

Современные методы оптимизации

Математик Александр Гасников о выпуклых функциях, анализе больших данных и о том, как оптимизация ускорила процесс решения задач

Поделиться статьей

Началось все, по-видимому, с Коши, который во второй половине XIX века предложил метод градиентного спуска как численный метод решения задач оптимизации. Но давайте начнем еще раньше, с того, где вообще стали возникать задачи оптимизации. Хорошо известно, что природа говорит на языке оптимизации, на языке вариационных принципов. Если мы хотим найти уравнение движения какого-нибудь объекта, хотим понять, как оптимально что-то сделать, природа сама часто хочет это сделать, то надо решить какую-то задачу оптимизации. В XVIII веке Лагранж и Эйлер предложили уравнение, которое описывает траекторию движения механической системы, и эту траекторию можно получать из решения вариационной задачи.

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

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

Читать еще:  Обновление android оптимизация приложения

Надо обратно решить задачу ax=b, найти x. Казалось бы, при чем здесь оптимизация? Но оказывается, что ax=b можно записать как ax-b — это некий вектор, норма этого вектора в квадрате на минимум. И минимум достигается в той точке, где решение этого уравнения. То есть та точка x, которая доставляет решению уравнения ax=b, и есть минимум функционала ax-b два норма в квадрате.

Таким образом, надо решать задачи оптимизации, и часто это задачи оптимизации бесконечномерных пространств. Когда я упоминал дифференциальные уравнения, то решением является функция. И понятно, что все это требует разработки методов. Более того, многие задачи надо решать много раз. Например, взаимодействуя с биологами в компании «Биокад», я столкнулся с задачей белкового фолдинга и докинга. Это индустриальная задача, огромные масштабы, каждый день эта задача сотни раз перерешивается. И от того, насколько эффективен метод решения этой задачи, столько вы раз успеете разные формы посопоставлять, зависит, как много вариантов лекарств вы попробуете успеть проверить, потому что мощности ограничены в энергетическом плане, то есть энергию это все поглощает, и ограничены во времени. И чем эффективнее алгоритм, тем больше вариантов вы посмотрите. Таким образом, очень много разных задач сводится именно к оптимизации.

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

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

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

Недавно было показано, что, даже если мы хотим ограничиться локальным минимумом — особенно это популярно в обучении нейронных сетей сейчас, — общая философия такая: минимумов много, но все они более-менее одинаковы. Так может случиться, и нам достаточно в любой из них попасть. Даже в этом случае сложность решения такой задачи самыми оптимальными методами, которые только могут быть (то есть это нижняя оценка единица на эпсилон), — это тоже не очень хорошо, потому что это всего лишь локальный минимум. И то эта единица на эпсилон недостижима. Это нижняя оценка. А достижимы оценки вроде единицы на эпсилон в квадрате и так далее. И это методы, которые используют старшие производные. Это недавний результат. Он не пессимистичный, но тоже говорит о пределах возможностей современных методов.

Другая история — когда мы имеем выпуклую задачу. Но в заключение темы с невыпуклыми задачами я все-таки еще один пример хотел привести. Это пример о том, что проблема невыпуклой оптимизации не в многоэкстремальности. Точнее, в многоэкстремальности функционала проблемы есть, но можно привести пример функции, которая имеет всего один экстремум. И эта функция по сложности оптимизации соответствует тому, о чем я до этого сказал. Не стоит думать, что только многоэкстремальность обуславливает все эти проблемы. То есть сходимость по функции, что это общая проблема невыпуклой оптимизации. По градиенту, по норме градиента можно сходиться, но это всего лишь локальный экстремум. А чтобы именно функцию сделать маленькой — это проблема.

Переходим к выпуклой оптимизации. Здесь действительно есть много интересных результатов — как классических, так и недавних. И начнем мы опять с градиентного метода. Он был предложен в XIX веке. Градиентным спуском активно стали пользоваться в 1950–1960-е годы. Вкратце обсудим идею этого метода. Общая идея численных методов оптимизации заключается в принципе «разделяй и властвуй». Мы хотим оптимизировать сложную функцию. Мы имеем текущее положение, линеаризуем или как-то упрощаем функцию, заменяем ее более простой моделью. И говорим, что вместо того, чтобы минимизировать, решать исходную сложную задачу, мы аппроксимируем каким-то образом эту функцию в данной точке. Аппроксимация структурно более простая, чем исходная функция, и мы решаем эту задачу минимизацией этой аппроксимации. В случае градиентного спуска этой аппроксимацией является парабола. Если мы говорим о многомерном пространстве, то это параболоид вращения. Заменяем исходную функцию таким параболоидом вращения, который касается ее в данной точке. И идея метода заключается в том, что вместо минимизации функции мы минимизируем параболоид.

Это мы можем сделать по явным формулам, перейти к минимуму параболоида. Уравнение параболоида определяем однозначно. Это делается по явным формулам, из условия касания. И это есть градиентный метод. Он имеет вид: есть новая точка, есть старая точка минус некий шаг на градиент, на вектор градиента. Тем, кто увлекается альпинизмом или просто походами по горам, я думаю, эти все термины хорошо известны, например градиент. Для этого не обязательно иметь специальное математическое образование. В каком-то смысле градиентный спуск — такой способ блуждать по горам, когда вы идете по направлению наибыстрейшего спуска. Но это локально, потому что, когда вы пройдете какое-то расстояние, направление изменится. Собственно градиентный спуск — такая дискретизация этого непрерывного процесса хождения по направлению наибыстрейшего спуска.

Ссылка на основную публикацию
Adblock
detector