Rescaling Algorithms for Linear Conic Feasibility
  We propose simple polynomial-time algorithms for two linear conic feasibility problems. For a matrix $A\in \mathbb{R}^{m\times n}$, the kernel problem requires a positive vector in the kernel of $A$, and the image problem requires a positive vector in the image of $A^\top$. Both algorithms iterate between simple first order steps and rescaling steps. These rescalings improve natural geometric potentials. If Goffin's condition measure $\rho_A$ is negative, then the kernel problem is feasible and the worst-case complexity of the kernel algorithm is $O\left((m^3n+mn^2)\log{|\rho_A|^{-1}}\right)$; if $\rho_A>0$, then the image problem is feasible and the image algorithm runs in time $O\left(m^2n^2\log{\rho_A^{-1}}\right)$. We also extend the image algorithm to the oracle setting.   We address the degenerate case $\rho_A=0$ by extending our algorithms to find maximum support nonnegative vectors in the kernel of $A$ and in the image of $A^\top$. In this case the running time bounds are expressed in the bit-size model of computation: for an input matrix $A$ with integer entries and total encoding length $L$, the maximum support kernel algorithm runs in time $O\left((m^3n+mn^2)L\right)$, while the maximum support image algorithm runs in time $O\left(m^2n^2L\right)$. The standard linear programming feasibility problem can be easily reduced to either maximum support problems, yielding polynomial-time algorithms for Linear Programming. 
Daniel Dadush and L\'aszl\'o A. V\'egh and Giacomo Zambelli
math.OC cs.DS