Алгори́тм Франк-Ву́льфа — це ітеративний алгоритм оптимізації [en] для опуклої оптимізації з обмеженнями. Алгоритм відомий також як ме́тод умо́вного градіє́нта, ме́тод зве́деного градіє́нта і алгори́тм опу́клих комбіна́цій. Метод першими запропонували 1956 року [en] і [en]. На кожній ітерації алгоритм Франк — Вульфа розглядає лінійне наближення цільової функції і рухається в напрямку мінімізації цієї лінійної функції (на тій самій множині допустимих розв'язків).
Формулювання задачі
Припустимо, що — компактна опукла множина у векторному просторі, а — опукла, диференційовна дійснозначна функція. Алгоритм Франк — Вульфа розв'язує задачу оптимізації: Мінімізувавши
- за умови .
Алгоритм
- Ініціалізація: Нехай і нехай буде точкою в .
- Крок 1. Підзадача пошуку напрямку: Знаходимо , яке розв'язує задачу
- Мінімізувати
- за умов
- (Інтерпретація: мінімізуємо лінійне наближення задачі, отримане апроксимацією Тейлора першого порядку функції поблизу .)
- Крок 2. Визначення розміру кроку: Нехай , або, альтернативно, знаходимо , яке мінімізує за умови .
- Крок 3. Перерахунок: Нехай , і переходимо до кроку 1.
Властивості
Тоді як конкурентні методи, такі як градієнтний спуск для оптимізації з обмеженнями, вимагають на кожній ітерації кроку проєктування у множину допустимих значень, для алгоритму Франк — Вульфа потрібно на кожній ітерації лише розв'язати задачу лінійного програмування на тій самій самій множині, так що розв'язок завжди залишається належним множині допустимих розв'язків.
Збіжність алгоритму Франк — Вульфа в загальному випадку сублінійна — помилка цільової функції відносно оптимального значення після k ітерацій дорівнює за умови, що градієнт неперервний за Ліпшицом за деякою нормою. Таку ж збіжність можна показати, якщо підзадачі розв'язуються лише наближено.
Ітерації алгоритму можна завжди подати як нещільну опуклу комбінацію екстремальних точок множини допустимих розв'язків, що допомогло популярності алгоритму для задач розрідженої жадібної оптимізації в машинному навчанні і обробці сигналів, а також для знаходження потоків мінімальної вартості в транспортних мережах.
Якщо множину допустимих розв'язків задано набором лінійних нерівностей, то підзадача, розв'язувана на кожній ітерації, стає задачею лінійного програмування.
Хоча швидкість збіжності в гіршому випадку для загального випадку не можна покращити, вищу швидкість збіжності можна отримати для спеціальних задач, таких як строго опуклі задачі.
Нижні межі на значення розв'язку і прямо-двоїстий аналіз
Оскільки функція опукла, для будь-яких двох точок маємо:
Це виконується також для (невідомого) оптимального розв'язку . Тобто . Краща нижня межа з урахуванням точки задається формулою
Ця остання задача розв'язується на кожній ітерації алгоритму Франк — Вульфа, тому розв'язок підзадачі знаходження напрямку на -й ітерації можна використати для визначення зростаючих нижніх меж на кожній ітерації присвоєнням і
Такі нижні межі на невідоме оптимальне значення на практиці дуже важливі, оскільки їх можна використати як критерій зупинки алгоритму і вони на кожній ітерації дають ефективний показник якості наближення, оскільки завжди .
Показано, що розрив двоїстості, що є різницею між і нижньою межею , зменшується з тією ж швидкістю, тобто
Примітки
- Алгоритм розробили Маргарита Франк і Філіп Вульф, тому поширена в літературі назва Алгоритм Франка — Вульфа є помилковою.
- Левитин, Поляк, 1966, с. 787-823.
- Frank, Wolfe, 1956, с. 95–110.
- Dunn, Harshbarger, 1978, с. 432.
- Clarkson, 2010, с. 1–30.
- Fukushima, 1984, с. 169–177.
- Bertsekas, 1999, с. 215.
Література
- Левитин Е.С., Поляк Б.Т. Методы минимизации при наличии ограничений // Ж. вычисл. матем. и матем. физ.. — 1966. — Т. 6, вип. 5. — DOI: .
- Frank M., Wolfe P. An algorithm for quadratic programming // Naval Research Logistics Quarterly. — 1956. — Т. 3, вип. 1–2. — С. 95–110. — DOI: .
- Dunn J. C., Harshbarger S. Conditional gradient algorithms with open loop step size rules // Journal of Mathematical Analysis and Applications. — 1978. — Т. 62, вип. 2. — С. 432. — DOI: .
- Clarkson K. L. Coresets, sparse greedy approximation, and the Frank-Wolfe algorithm // ACM Transactions on Algorithms. — 2010. — Т. 6, вип. 4. — С. 1–30. — DOI: .
- A modified Frank-Wolfe algorithm for solving the traffic assignment problem // Transportation Research Part B: Methodological. — 1984. — Т. 18, вип. 2. — DOI: .
- Dimitri Bertsekas. Nonlinear Programming. — Athena Scientific, 1999. — С. 215. — .
- Martin Jaggi. Revisiting Frank–Wolfe: Projection-Free Sparse Convex Optimization // Journal of Machine Learning Research: Workshop and Conference Proceedings. — 2013. — Т. 28, вип. 1. — С. 427–435. з джерела 17 листопада 2016. Процитовано 8 травня 2022. (Оглядова стаття)
- Опис алгоритму Франк — Вульфа [ 7 травня 2021 у Wayback Machine.] (англ.)
- Jorge Nocedal, Stephen J. Wright. Numerical Optimization. — 2nd. — Berlin, New York : , 2006. — .
- Fukushima, M. (1984). A modified Frank-Wolfe algorithm for solving the traffic assignment problem. Transportation Research Part B: Methodological. 18 (2): 169—177. doi:10.1016/0191-2615(84)90029-8.
Посилання
- Маргарита Франк розповідає про історію алгоритму на YouTube
Див. також
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Algori tm Frank Vu lfa ce iterativnij algoritm optimizaciyi en dlya opukloyi optimizaciyi z obmezhennyami Algoritm vidomij takozh yak me tod umo vnogo gradiye nta me tod zve denogo gradiye nta i algori tm opu klih kombina cij Metod pershimi zaproponuvali 1956 roku en i en Na kozhnij iteraciyi algoritm Frank Vulfa rozglyadaye linijne nablizhennya cilovoyi funkciyi i ruhayetsya v napryamku minimizaciyi ciyeyi linijnoyi funkciyi na tij samij mnozhini dopustimih rozv yazkiv Formulyuvannya zadachiPripustimo sho D displaystyle mathcal D kompaktna opukla mnozhina u vektornomu prostori a f D R displaystyle f colon mathcal D to mathbb R opukla diferencijovna dijsnoznachna funkciya Algoritm Frank Vulfa rozv yazuye zadachu optimizaciyi Minimizuvavshi f x displaystyle f mathbf x za umovi x D displaystyle mathbf x in mathcal D AlgoritmKrok algoritmu Frank VulfaInicializaciya Nehaj k 0 displaystyle k leftarrow 0 i nehaj x0 displaystyle mathbf x 0 bude tochkoyu v D displaystyle mathcal D Krok 1 Pidzadacha poshuku napryamku Znahodimo sk displaystyle mathbf s k yake rozv yazuye zadachuMinimizuvati sT f xk displaystyle mathbf s T nabla f mathbf x k za umov s D displaystyle mathbf s in mathcal D dd Interpretaciya minimizuyemo linijne nablizhennya zadachi otrimane aproksimaciyeyu Tejlora pershogo poryadku funkciyi f displaystyle f poblizu xk displaystyle mathbf x k Krok 2 Viznachennya rozmiru kroku Nehaj g 2k 2 displaystyle gamma leftarrow frac 2 k 2 abo alternativno znahodimo g displaystyle gamma yake minimizuye f xk g sk xk displaystyle f mathbf x k gamma mathbf s k mathbf x k za umovi 0 g 1 displaystyle 0 leqslant gamma leqslant 1 Krok 3 Pererahunok Nehaj xk 1 xk g sk xk displaystyle mathbf x k 1 leftarrow mathbf x k gamma mathbf s k mathbf x k k k 1 displaystyle k leftarrow k 1 i perehodimo do kroku 1 VlastivostiTodi yak konkurentni metodi taki yak gradiyentnij spusk dlya optimizaciyi z obmezhennyami vimagayut na kozhnij iteraciyi kroku proyektuvannya u mnozhinu dopustimih znachen dlya algoritmu Frank Vulfa potribno na kozhnij iteraciyi lishe rozv yazati zadachu linijnogo programuvannya na tij samij samij mnozhini tak sho rozv yazok zavzhdi zalishayetsya nalezhnim mnozhini dopustimih rozv yazkiv Zbizhnist algoritmu Frank Vulfa v zagalnomu vipadku sublinijna pomilka cilovoyi funkciyi vidnosno optimalnogo znachennya pislya k iteracij dorivnyuye O 1 k displaystyle O 1 k za umovi sho gradiyent neperervnij za Lipshicom za deyakoyu normoyu Taku zh zbizhnist mozhna pokazati yaksho pidzadachi rozv yazuyutsya lishe nablizheno Iteraciyi algoritmu mozhna zavzhdi podati yak neshilnu opuklu kombinaciyu ekstremalnih tochok mnozhini dopustimih rozv yazkiv sho dopomoglo populyarnosti algoritmu dlya zadach rozridzhenoyi zhadibnoyi optimizaciyi v mashinnomu navchanni i obrobci signaliv a takozh dlya znahodzhennya potokiv minimalnoyi vartosti v transportnih merezhah Yaksho mnozhinu dopustimih rozv yazkiv zadano naborom linijnih nerivnostej to pidzadacha rozv yazuvana na kozhnij iteraciyi staye zadacheyu linijnogo programuvannya Hocha shvidkist zbizhnosti v girshomu vipadku O 1 k displaystyle O 1 k dlya zagalnogo vipadku ne mozhna pokrashiti vishu shvidkist zbizhnosti mozhna otrimati dlya specialnih zadach takih yak strogo opukli zadachi Nizhni mezhi na znachennya rozv yazku i pryamo dvoyistij analizOskilki funkciya f displaystyle f opukla dlya bud yakih dvoh tochok x y D displaystyle mathbf x mathbf y in mathcal D mayemo f y f x y x T f x displaystyle f mathbf y geqslant f mathbf x mathbf y mathbf x T nabla f mathbf x Ce vikonuyetsya takozh dlya nevidomogo optimalnogo rozv yazku x displaystyle mathbf x Tobto f x f x x x T f x displaystyle f mathbf x geqslant f mathbf x mathbf x mathbf x T nabla f mathbf x Krasha nizhnya mezha z urahuvannyam tochki x displaystyle mathbf x zadayetsya formuloyu f x f x x x T f x miny D f x y x T f x f x xT f x miny DyT f x displaystyle begin aligned f mathbf x amp geqslant f mathbf x mathbf x mathbf x T nabla f mathbf x amp geqslant min mathbf y in D left f mathbf x mathbf y mathbf x T nabla f mathbf x right amp f mathbf x mathbf x T nabla f mathbf x min mathbf y in D mathbf y T nabla f mathbf x end aligned Cya ostannya zadacha rozv yazuyetsya na kozhnij iteraciyi algoritmu Frank Vulfa tomu rozv yazok sk displaystyle mathbf s k pidzadachi znahodzhennya napryamku na k displaystyle k j iteraciyi mozhna vikoristati dlya viznachennya zrostayuchih nizhnih mezh lk displaystyle l k na kozhnij iteraciyi prisvoyennyam l0 displaystyle l 0 infty i lk max lk 1 f xk sk xk T f xk displaystyle l k max l k 1 f mathbf x k mathbf s k mathbf x k T nabla f mathbf x k Taki nizhni mezhi na nevidome optimalne znachennya na praktici duzhe vazhlivi oskilki yih mozhna vikoristati yak kriterij zupinki algoritmu i voni na kozhnij iteraciyi dayut efektivnij pokaznik yakosti nablizhennya oskilki zavzhdi lk f x f xk displaystyle l k leqslant f mathbf x leqslant f mathbf x k Pokazano sho rozriv dvoyistosti sho ye rizniceyu mizh f xk displaystyle f mathbf x k i nizhnoyu mezheyu lk displaystyle l k zmenshuyetsya z tiyeyu zh shvidkistyu tobto f xk lk O 1 k displaystyle f mathbf x k l k O 1 k PrimitkiAlgoritm rozrobili Margarita Frank i Filip Vulf tomu poshirena v literaturi nazva Algoritm Franka Vulfa ye pomilkovoyu Levitin Polyak 1966 s 787 823 Frank Wolfe 1956 s 95 110 Dunn Harshbarger 1978 s 432 Clarkson 2010 s 1 30 Fukushima 1984 s 169 177 Bertsekas 1999 s 215 LiteraturaLevitin E S Polyak B T Metody minimizacii pri nalichii ogranichenij Zh vychisl matem i matem fiz 1966 T 6 vip 5 DOI 10 1016 0041 5553 66 90114 5 Frank M Wolfe P An algorithm for quadratic programming Naval Research Logistics Quarterly 1956 T 3 vip 1 2 S 95 110 DOI 10 1002 nav 3800030109 Dunn J C Harshbarger S Conditional gradient algorithms with open loop step size rules Journal of Mathematical Analysis and Applications 1978 T 62 vip 2 S 432 DOI 10 1016 0022 247X 78 90137 3 Clarkson K L Coresets sparse greedy approximation and the Frank Wolfe algorithm ACM Transactions on Algorithms 2010 T 6 vip 4 S 1 30 DOI 10 1145 1824777 1824783 A modified Frank Wolfe algorithm for solving the traffic assignment problem Transportation Research Part B Methodological 1984 T 18 vip 2 DOI 10 1016 0191 2615 84 90029 8 Dimitri Bertsekas Nonlinear Programming Athena Scientific 1999 S 215 ISBN 978 1 886529 00 7 Martin Jaggi Revisiting Frank Wolfe Projection Free Sparse Convex Optimization Journal of Machine Learning Research Workshop and Conference Proceedings 2013 T 28 vip 1 S 427 435 z dzherela 17 listopada 2016 Procitovano 8 travnya 2022 Oglyadova stattya Opis algoritmu Frank Vulfa 7 travnya 2021 u Wayback Machine angl Jorge Nocedal Stephen J Wright Numerical Optimization 2nd Berlin New York Springer Verlag 2006 ISBN 978 0 387 30303 1 Fukushima M 1984 A modified Frank Wolfe algorithm for solving the traffic assignment problem Transportation Research Part B Methodological 18 2 169 177 doi 10 1016 0191 2615 84 90029 8 PosilannyaMargarita Frank rozpovidaye pro istoriyu algoritmu na YouTubeDiv takozhMetod proksimalnogo gradiyenta