How to find dual of optimization problem with two variables?

148 Views Asked by At

Given $n\times n$ Hermitian matrices $A_1, A_2, A_3$ and $A_4$, I want to find dual of the following optimization problem:

\begin{array}{ll} \underset{k\geq1,X\in\mathbb{C^{n\times n}}}{\text{maximize}} & k\\ \text{subject to} & \mathrm{trace}\Big(\big(A_1+(k+k^{-1})A_2\big)X\Big)=0,\\&\mathrm{trace}(A_3X)=0,\\&\mathrm{trace}(A_4X)=1,\\&X\succeq0,\end{array}

where "$X\succeq 0$" means that $X$ is positive semi-definite.


Instead of maximizing $k$, we can minimize $-k,$ then $L(X,k,\lambda_1,\lambda_2,\lambda_3)=-k-\lambda_1\mathrm{trace}\Big(\big(A_1+(k+k^{-1})A_2\big)X\Big)-\lambda_2\mathrm{trace}(A_3X)-\lambda_3(\mathrm{trace}(A_4X)-1)$

I am confused here, because there are two optimization variables $k$ and $X$.

Lets assume that we fix $k$ first, then

\begin{align} &\frac{\partial L(X,\lambda_1,\lambda_2,\lambda_3)}{\partial X}=-\lambda_1(A_1+(k+k^{-1})A_2)-\lambda_2A_3-\lambda_3A_4, \end{align}

and the corresponding dual problem is

\begin{array}{ll} \underset{\lambda_1,\lambda_2,\lambda_3}{\text{maximize}} & \lambda_3.\\ \text{subject to} & -\lambda_1(A_1+(k+k^{-1})A_2)-\lambda_2A_3-\lambda_3A_4\succeq0.\end{array}


Another direction that I tried is the following:

For $k\geq1$, maximizing $k$ is equivalent to maximizing $k+k^{-1}$, so solving original problem is equivalent to solving the following problem:

\begin{array}{ll} \underset{X\in\mathbb{C^{n\times n}}}{\text{minimize}} & \frac{\mathrm{trace}(A_1X)}{\mathrm{trace}(A_2X)}\\ \text{subject to} & \mathrm{trace}(A_3X)=0,\\&\mathrm{trace}(A_4X)=1,\\&X\succeq0.\end{array}

Then $L(X,\lambda_1,\lambda_2)=\frac{\mathrm{trace}(A_1X)}{\mathrm{trace}(A_2X)}-\lambda_1\mathrm{trace}(A_3X)-\lambda_2(\mathrm{trace}(A_4X)-1)$, and

\begin{align} &\frac{\partial L(X,\lambda_1,\lambda_2)}{\partial X}=\frac{A_1\mathrm{trace}(A_2X)-\mathrm{trace}(A_1X)A_2}{\mathrm{trace}^2(A_2X)}-\lambda_1A_3-\lambda_2A_4, \end{align}

and finally the corresponding dual is

\begin{array}{ll} \underset{\lambda_1,\lambda_2}{\text{maximize}} & \lambda_2.\\ \text{subject to} & \frac{A_1\mathrm{trace}(A_2X)-\mathrm{trace}(A_1X)A_2}{\mathrm{trace}^2(A_2X)}-\lambda_1A_3-\lambda_2A_4\succeq0.\end{array}

Also, a general comment on how to solve such optimization problems with two variables would be very helpful.