Iteratively minimize $\|AX\|_F$ subject to equality and inequality constraints

174 Views Asked by At

I would like to know what is the most effective iterative algorithm to the following optimization problem:

Given $A \in \mathbb R^{n \times n} $ find a rectangular matrix $X \in \mathbb R^{n \times m} $, where $n>m$, such that the Frobenius Norm $\|AX\|_F$ is minimized subject to all of the following conditions:

  1. $X \mathbf{1_m} = \mathbf{1_n} $ where $\mathbf{1_m} \in \mathbb R^{m \times 1} $ and $\mathbf{1_n} \in \mathbb R^{n \times 1} $ are vectors with all their entries set to one.

  2. The matrix entries have the condition $X_{i_pj_p}=1$ for a set of indices $(i_p, j_p) $ with $p \in [1,m]$. The chosen indices have the limitation $i_p \neq i_q $ and $j_p \neq j_q $ for $p \neq q$

  3. $X_{ij} \ge 0 $ for all $i,j$

Edit 1: I agree that "Most effective" is a vague requirement so I will try to clarify. The Matrices $A$ and $X$ are large (around a million rows) and sparse and hence I would like an iterative algorithm. I am willing to write custom code, but would like to know which algorithm is robust.

1

There are 1 best solutions below

2
On BEST ANSWER

Since

$$\| \mathrm A \mathrm X \|_F^2 = \| \mbox{vec} (\mathrm A \mathrm X) \|_2^2 = \| (\mathrm I_m \otimes \mathrm A) \, \mbox{vec} (\mathrm X) \|_2^2 = \mbox{vec}^{\top} (\mathrm X) (\mathrm I_m \otimes \mathrm A^{\top}) (\mathrm I_m \otimes \mathrm A) \, \mbox{vec} (\mathrm X)$$

you have a quadratic program (QP) in $\mbox{vec} (\mathrm X) \in \mathbb R^{mn}$

$$\boxed{\begin{array}{ll} \text{minimize} & \mbox{vec}^{\top} (\mathrm X) (\mathrm I_m \otimes \mathrm A^{\top}) (\mathrm I_m \otimes \mathrm A) \, \mbox{vec} (\mathrm X)\\ \text{subject to} & (1_m^{\top} \otimes \mathrm I_n) \, \mbox{vec} (\mathrm X) = 1_n\\ & (\mathrm e_j \otimes \mathrm e_i)^{\top} \, \mbox{vec} (\mathrm X) = c_{ij} \quad \forall (i,j) \in \mathcal{C}\\ & \mbox{vec} (\mathrm X) \geq 0_{mn}\end{array}}$$

where the $c_{ij}$'s are the constraints on the $(i,j)$-th entries of $\mathrm X$, and $\mathcal{C} \subset [n] \times [m]$ is the set of the indices of the constrained entries.