Инициализация: Пусть , и пусть будет любой точкой в .
Шаг 1. Подзадача определения направления: найти решение
Свернуть
При условии соблюдения
(Интерпретация: минимизировать линейное приближение задачи, заданное приближением Тейлора первого порядка, вокруг , ограниченного так, чтобы оставаться в пределах .)
Шаг 2. Определение размера шага: Установите или, в качестве альтернативы, найдите значение, которое минимизирует условие .
Шаг 3. Обновление: Пусть , пусть и перейдите к Шагу 1.
Характеристики
В то время как конкурирующие методы, такие как градиентный спуск для ограниченной оптимизации, требуют проецирования обратного шага к допустимому множеству на каждой итерации, алгоритму Франка–Вульфа требуется только решение выпуклой задачи над тем же множеством на каждой итерации, и он автоматически остается в допустимом множестве.
Сходимость алгоритма Франка–Вульфа в общем случае сублинейна: ошибка целевой функции в оптимуме возникает после k итераций, пока градиент является липшицевым относительно некоторой нормы. Такую же скорость сходимости можно показать, если подзадачи решаются только приближенно. [3]
Если допустимый набор задан набором линейных ограничений, то подзадача, решаемая на каждой итерации, становится линейной программой .
Хотя скорость сходимости в худшем случае в общем случае не может быть улучшена, более быструю сходимость можно получить для специальных классов задач, таких как некоторые сильно выпуклые задачи. [6]
Нижние границы значения решения и прямо-двойственный анализ
Так как является выпуклым , то для любых двух точек имеем:
Это также справедливо для (неизвестного) оптимального решения . То есть, . Лучшая нижняя граница относительно заданной точки задается выражением
Последняя задача оптимизации решается на каждой итерации алгоритма Франка–Вульфа, поэтому решение подзадачи пеленгования -й итерации можно использовать для определения возрастающих нижних границ на каждой итерации, устанавливая и
Такие нижние границы неизвестного оптимального значения важны на практике, поскольку их можно использовать в качестве критерия остановки и они дают эффективный сертификат качества аппроксимации на каждой итерации, поскольку всегда .
Было показано, что этот соответствующий разрыв двойственности , то есть разница между и нижней границей , уменьшается с той же скоростью сходимости, т.е.
Примечания
^ Левитин, Е.С.; Поляк, Б.Т. (1966). «Методы условной минимизации». Журнал вычислительной математики и математической физики СССР . 6 (5): 1. doi :10.1016/0041-5553(66)90114-5.
^ Франк, М.; Вулф, П. (1956). «Алгоритм квадратичного программирования». Naval Research Logistics Quarterly . 3 (1–2): 95–110. doi :10.1002/nav.3800030109.
^ Данн, Дж. К.; Харшбаргер, С. (1978). «Условные градиентные алгоритмы с правилами размера шага открытого цикла». Журнал математического анализа и приложений . 62 (2): 432. doi : 10.1016/0022-247X(78)90137-3 .
^ Кларксон, К. Л. (2010). «Coresets, разреженная жадная аппроксимация и алгоритм Франка-Вульфа». Труды ACM по алгоритмам . 6 (4): 1–30. CiteSeerX 10.1.1.145.9299 . doi :10.1145/1824777.1824783.
^ Фукусима, М. (1984). «Модифицированный алгоритм Франка-Вульфа для решения проблемы распределения трафика». Transportation Research Часть B: Методологические . 18 (2): 169–177. doi :10.1016/0191-2615(84)90029-8.
Jaggi, Martin (2013). «Возвращаясь к Frank–Wolfe: Projection-Free Sparse Convex Optimization». Журнал исследований машинного обучения: Труды семинаров и конференций . 28 (1): 427–435.(Обзорная статья)
Описание алгоритма Франка–Вульфа
Нокедаль, Хорхе; Райт, Стивен Дж. (2006). Численная оптимизация (2-е изд.). Берлин, Нью-Йорк: Springer-Verlag . ISBN 978-0-387-30303-1..