Efficiently obtain matrix from majorization

45 Views Asked by At

Let $x,y\in\mathbb{R}^n$, with $x_1\geq x_2\geq...\geq x_n$, $y_1\geq y_2\geq\ldots,y_n$. Say that $x$ majorizes $y$ if $\sum_{i=1}^{k}x_i\geq\sum_{i=1}^{k}y_i$ for $k=1,2,\ldots,n$, with equality happening for $k=n$. Denote the condition of $x$ majorizing $y$ by $x\succ y$.

It is well known that there exists a matrix $A=(a_{i,j})_{i,j\in[n]}$, with $a_{i,j}\geq0$, $\sum_{k=1}^na_{i,k}=1$, and $\sum_{k=1}^{n}a_{k,j}=1$, for all $i,j\in[n]$, such that $$y=Ax$$ Such matrices are called doubly stochastic.

How to efficiently compute some such matrix $A$, given $x,y$?


A common way to show the existence of $A$, it by constructing $x=x_0\succ x_1\succ\ldots\succ x_m=y$ with each $x_i$ differing from $x_{i-1}$ by at most two components. A transformation $x_i=A_ix_{i-1}$ is simple to write, and then one can take $A=A_m\dotsm A_2A_1$. Here $m\leq n-1$.

One can even require the form $A=(|u_{i,j}|^2)_{i,j\in[n]}$, where $U=(u_{i,j})_{i,j\in[n]}$ is unitary.

In both cases these yield an algorithm in which we update (multiply) a matrix up to $n-1$ times.

Is there a way to do better?

Informally, these two solving the convex optimization of minimizing $\|y-Ax\|^2$ over Birkhoff's polytope (the set of doubly stochastic matrices) moving "close" to the boundary. Perhaps other strategies that make updates more in the interior could be able to perform better.