Minimize $ \|A-BXC \|_F$ subject to $\mbox{rank} (X) \leq r$

1.2k Views Asked by At

I have the following problem.

Let $A$, $B$ $C$ be real-valued matrices of size $m \times q$, $m \times n$, $p \times q$ respectively. Find matrix $X$ of size $n \times p$ and maximum rank $r$ such that the Frobenius norm $\|A - B X C \|$ is minimized.

This is a generalization of the best approximation property of the truncated Singular Value Decomposition; however it doesn't appear to be trivial. Any insights? Known literature?

1

There are 1 best solutions below

0
On

Here is an idea:

The equation $A = BXC$ can be transformed to $(C^T \otimes B) \operatorname{vec} X = \operatorname{vec} A$ where $\operatorname{vec}$ is vectorization and $\otimes$ is Kronecker product. This transforms the problem to a standard matrix problem (there are also other ways of solving a matrix equation of this type) which can be solved using e.g. Gauss-Jordan elimination.

If the equation $(C^T \otimes B) \operatorname{vec} X = \operatorname{vec} A$ is not solvable, i.e. $\operatorname{vec} A$ is not in the image of $C^T \otimes B$, find the vector in the image of $C^T \otimes B$ closest to $\operatorname{vec} A$. This can be done by finding an orthogonal basis for the image of $C^T \otimes B$ and projecting $\operatorname{vec} A$ onto these vectors. In other words, find a least squares "solution" to the system $(C^T \otimes B) \operatorname{vec} X = \operatorname{vec} A$.

It should be noted in the above argument, that since we are using the Frobenius norm, $\|A\|$ and $\| \operatorname{vec} A\|$ will be equal, and also that $$\|\operatorname{vec} (A - BXC)\| = \| \operatorname{vec} (A) -\operatorname{vec}(BXC) \| = \| \operatorname{vec} A - (C^T \otimes B) \operatorname{vec} X\|.$$