Frank-Wulf algoritmus

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).

Problémafelvetés

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 .

Algoritmus

Inicializálás: Legyen és legyen egy pont a . 1. lépés : Iránykeresés részfeladat: Keresse meg , a probléma megoldása Minimalizálja feltételek mellett (Interpretáció: A közeli függvény elsőrendű Taylor-közelítésével kapott probléma lineáris közelítését minimalizáljuk .) 2. lépés. Lépésméret meghatározása: Legyen , vagy keresse meg , amely a feltétel alatt minimalizálódik . 3. lépés : Újraszámítás: Állítsa be a lehetőséget , és folytassa az 1. lépéssel.

Tulajdonságok

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] .

A megoldás és a primál-duális elemzés értékének alsó határai

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.

Jegyzetek

  1. Az algoritmust Margarita Frank és Philip Wolf fejlesztette ki, ezért az orosz irodalomban széles körben használt Frank-Wulf algoritmus elnevezés hibás.
  2. Levitin, Polyak, 1966 , p. 787-823.
  3. Frank és Wolfe, 1956 , p. 95–110.
  4. Dunn és Harshbarger 1978 , p. 432.
  5. Clarkson, 2010 , p. 1–30.
  6. Fukushima, 1984 , p. 169–177.
  7. Bertsekas, 1999 , p. 215.

Irodalom

Link

Lásd még