A Frank-Wulff algoritmus [1] egy iteratív elsőrendű optimalizáló algoritmus konvex optimalizálásra megszorításokkal [ . Az algoritmust feltételes gradiens módszernek [2] , redukált gradiens módszernek és konvex kombinációs algoritmusnak is nevezik . A módszert eredetileg Marguerite Frank és Philip Wolf javasolta 1956-ban [3] . A Frank-Wulff algoritmus minden iterációnál figyelembe veszi a lineáris közelítést célfüggvényt, és ennek a lineáris függvénynek az minimalizálása irányába mozog (ugyanazon a megvalósítható megoldásokon).
Tegyük fel, hogy ez egy kompakt konvex halmaz egy vektortérben , és egy konvex , differenciálható valós értékű függvénye . A Frank-Wulff algoritmus megoldja az optimalizálási problémát
Minimalizálja feltéve .Míg a versengő módszerek, például a gradiens süllyedés a korlátozott optimalizáláshoz, megkövetelik, hogy minden iteráció a megengedett értékek halmazába legyen vetítve , a Frank-Wulf algoritmusnak csak egy lineáris programozási problémát kell megoldania ugyanazon a halmazon minden iterációnál, így a megoldás mindig megmarad. a megvalósítható megoldások halmazában.
A Frank-Wulf algoritmus konvergenciája általában szublineáris - a célfüggvény hibája az optimális értékhez képest k iteráció után következik be, feltéve, hogy a gradiens valamilyen normában Lipschitz folytonos . Ugyanez a konvergencia mutatható ki, ha a részfeladatokat csak megközelítőleg oldjuk meg [4] .
Az algoritmus iterációi mindig a megvalósítható megoldások halmazának szélső pontjainak nem sűrű konvex kombinációjaként ábrázolhatók, ami elősegítette az algoritmus népszerűségét a ritka mohó optimalizálási problémákra a gépi tanulásban és jelfeldolgozásban [5] , mivel valamint a minimális költségáramlások megtalálásához a közlekedési hálózatokban [6] .
Ha a megvalósítható megoldások halmazát lineáris egyenlőtlenségek halmaza adja meg, akkor az egyes iterációk során megoldott részprobléma lineáris programozási feladattá válik .
Bár a legrosszabb eset konvergencia rátája általános esetben nem javítható, speciális problémák, például szigorúan konvex problémák esetén magasabb konvergencia rátákat lehet elérni [7] .
Mivel a függvény konvex , bármelyik két pontra a következőt kapjuk:
Ez érvényes az (ismeretlen) optimális megoldásra is . Azaz . Egy pontot figyelembe véve a legjobb alsó korlátot a képlet adja meg
Ez utóbbi probléma a Frank-Wulff algoritmus minden iterációjában megoldódik, így az i-edik iterációnál az irány megtalálásának részprobléma megoldása felhasználható az egyes iterációknál növekvő alsó határok meghatározására azáltal, hogy ill .
Az ismeretlen optimális érték ilyen alsó határai nagyon fontosak a gyakorlatban, mivel az algoritmus leállításának kritériumaként használhatók, és minden iterációnál hatékonyan jelzik a közelítés minőségét, hiszen mindig .
Kimutatták, hogy a dualitási rés , amely az alsó és az alsó korlát közötti különbség , azonos ütemben csökken, pl.
Optimalizálási módszerek | |
---|---|
Egydimenziós |
|
Nulla sorrend | |
Első rendelés | |
másodrendű | |
Sztochasztikus | |
Lineáris programozási módszerek | |
Nemlineáris programozási módszerek |