Intuición detrás del método de dirección alterna de multiplicadores

8

He estado leyendo muchos documentos sobre ADMM últimamente, y también intenté resolver varios problemas al usarlo, en todos los cuales fue muy efectivo. A diferencia de otros métodos de optimización, no puedo tener una buena intuición de cómo y por qué este método es tan efectivo (por supuesto, he visto análisis de convergencia en algunos casos, pero nada que me haya dado mucha información). ¿Hay alguna intuición detrás de ADMM? ¿Cómo se les ocurrió esta idea a los primeros científicos en usarlo? Alguna intuición geométrica sería lo mejor, pero cualquier idea que alguien tenga ayudará.

olamundo
fuente
¿Puedes explicar qué es ADMM?
Bill Barth
@BillBarth - Claro :) Método de dirección alterna de multiplicadores (ver, por ejemplo, stanford.edu/~boyd/admm.html )
olamundo
1
¿Al menos puede decir de qué se trata el documento original que le resulta tan poco claro?
Kirill el
3
@Kirill Just a nit: el papel de Boyd no es el original de ADMM. Es una buena referencia, pero el algoritmo se remonta a Douglas y Rachford (1956) y se desarrolló y analizó más a fondo desde la década de 1970 hasta la de 1990. Se ha visto un resurgimiento en los últimos años en gran parte debido a los rumores en torno regularización. 1
Jed Brown el
2
ADMM ha recibido mucha atención porque es muy efectivo para resolver problemas en la regularización , pero no es un método que sea generalmente útil para todos los problemas de optimización. Una mejor pregunta sería por qué ADMM es tan eficaz en el contexto. El trabajo de Osher y Yin sobre los métodos de Bregman divididos (básicamente equivalentes a ADMM) ayuda a explicar esto. Vea la página en caam.rice.edu/~optimization/L1/bregmanL1
Brian Borchers el

Respuestas:

10

Si no recuerdo mal, el ADMM a menudo se establece como un algoritmo para resolver para dos convexos , inferior-semicontinuos funcionales y y lineales, operadores delimitadas y .F G A B

minx,y F(x)+G(y),s.tAx+By=c
FGAB

Encuentro el siguiente caso especial de , y ilustrativo. En este caso, la restricción dice , es decir, podemos sustituir para obtener el problema Ahora resolver esto puede ser difícil, mientras que resolver problemas de la forma puede ser fácil. (Puede crear ejemplos para esto usted mismo, uno popular es y ). En ADMM comienzas desde la "forma " y construyes el "lagragiano aumentado" A=IB=Ic=0xy=0

minxF(x)+G(x).
F(x)=λx1
minxρF(x)+12xz2
F(x)=λx1minx,yF(x)+G(y),G(x)=12Axb2L ρ ( x , y , z ) = F ( x ) + G ( y ) + z T ( x - y ) + ρ
minx,y F(x)+G(y),s.txy=0
zxyxk+1=argminxLρ(x,yk,zk)yk+1=argminyLρ(xk+1,y,z)zk+1
Lρ(x,y,z)=F(x)+G(y)+zT(xy)+ρ2xy2
con el multiplicador de Lagrange . Ahora minimiza alternativamente el Lagragio augementado en las diferentes direcciones e , es decir, itera y actualiza el multiplicador de acuerdo con Esto debería explicar el nombre del método de direcciones alternas de multiplicadores .z xy
xk+1=argminx Lρ(x,yk,zk)
yk+1=argminy Lρ(xk+1,y,z)
zk+1=zk+ρ(xk+1yk+1).

El análisis de estos problemas de minimización de e más cerca, se observa que para cada actualización sólo se necesita para resolver un problema de la "forma más simple", por ejemplo, para la actualización (descuidando los términos que no dependen de ).y x x k + 1 = a r g m i n x F ( x ) + ρxyxx

xk+1=argminx F(x)+ρ2xyk+ρzk2
x

ADMM para el problema se deriva de manera similar, pero los problemas intermedios para las actualizaciones siguen siendo una poco difícil pero puede ser comparativamente simple en comparación con el original. Especialmente en el caso de y (o equivalente , y la restricción ) las actualizaciones son más o menos fáciles de implementar.F ( x ) = λ x 1 G ( x ) = 1

minx,y F(x)+G(y),s.tAx+By=c
F(x)=λx1F(x)=λx1G(y)=1G(x)=12Axb2F(x)=λx1Ax-y=bG(y)=12y2Axy=b
Puñal
fuente
¡Agradable! También es útil mostrar lo que sucede para 3 bloques (hay casos en los que funcionará, por ejemplo, para matrices relacionadas con la decoración).
Royi