4 votos

Más cercana de la Matriz con los Específicos de la Autovector

Considere la posibilidad de un vector ${\bf x}$ y una matriz de $A_0$$A_0(i,j)\ge0$. ¿Cuál es la mejor forma de obtener la matriz de $A$ s.t.

$$A = \arg \min |A-A_0|$$

sujeto a

$$A{\bf x} = \lambda {\bf x} \hspace{2mm} \mbox{and} \hspace{2mm} A(i,j)\ge0$$

donde $|\bullet|$ es la norma de Frobenius?

7voto

Giulio Muscarello Puntos 150

La estructura de la matriz oculta el hecho de que este es un proceso relativamente simple problema de optimización convexa. Deje $\mathop{\textbf{vec}}$ ser el operador que las "pilas" las columnas de una matriz en un vector de altura. Entonces, este problema es

\begin{array}{ll} \text{minimize}_{a,\lambda} & \| a - a_0 \|_2 \\ \text{subject to} & (x^T \otimes I) a - \lambda x = 0 \\ & a \geq 0 \end{array} donde$a \triangleq \mathop{\textbf{vec}}(A)$$a_0 \triangleq \mathop{\textbf{vec}}(A_0)$, e $\otimes$ es el producto de Kronecker. Esto es fácil de fundición como de segundo orden cono o una cuadrática programa. La función objetivo es convexa en a $A$, y las restricciones son lineales en $(A,\lambda)$.

Si utiliza un marco de modelado como CVX (descargo de responsabilidad: la mía) o YALMIP (no la mía!) entonces usted no necesita meterse con el $\mathop{\textbf{vec}}$ operador o productos de Kronecker, porque eso es lo que hará para usted. En CVX, el modelo es

cvx_begin
    variables A(m,n) lambda
    minimize(norm(A-A0,'fro'))
    subject to
        A >= 0
        A * x == lambda * x
cvx_end

EDIT: Otra cosa buena acerca del uso de un marco como este es que si usted decide que usted estaría interesado en minimizar el espectro de la norma (es decir, el máximo valor singular) de $A-A_0$ en lugar de eso, cambiar el objetivo a norm(A-A0). Usted puede incluso minimizar la nuclear de la norma (es decir, la suma de los valores singulares) con norm_nuc(A-A0)!

Para dos de estas alternativas, el problema debe ser reestructurada como una semidefinite programa, y no de una manera directa; y será más lento. Pero usted puede permanecer felizmente inconscientes de cómo la proverbial salchicha, y dejar que el marco de hacerlo por usted. YALMIP puede hacer todas estas cosas así.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X