Motivated by a numerical example which shows that a feasible version of Mehrotra’s original predictor-corrector algorithm might be inefficient in practice, Salahi et al., proposed a so-called safeguard based variant of the algorithm that enjoys polynomial iteration complexity while its practical efficiency is preserved. In this paper we analyze the same Mehrotra’s algorithm from a different perspective. We give a condition on the maximum step size in the predictor step, violation of which might imply a very small or zero step size in the corrector step of the algorithm. This might explain the reason for occasional ill behavior of the original algorithm. We propose to cut the maximum step size in the predictor step if it is above a certain threshold. If this cut does not give a desirable step size, then we cut it for the second time that allows us to give a lower bound for the step size in the corrector step. This enables us to prove an $\O\left(n^\frac52\log \frac{n}{\epsilon}\right)$ worst case iteration complexity bound for the new algorithm. By slightly modifying the Newton system in the corrector step we reduce the iteration complexity to $\O\left(n^\frac32\log \frac{n}{\epsilon}\right)$. Finally, we report some illustrative computational results using the McIPM software package.
Citation
Advanced Optimization Lab., McMaster University, Report No. 2007/1