I need to minimize the Frobenius norm of (A-k*B) by finding appropriate value for k.

min (norm(A-k*B),'fro')

In this question A and B are m*n known matrices.

We know that (norm(A-kB))^2=trace((A-kB)(A-k*B)')

When A and B are real numbered matrices, the question can be easily solved by minimizing the following equation(by taking derivative regarding to k) min(Trace[(A-kB)(A-kB)']) ' denotes complex conjugate operator.


In this situation k is the sole variable of the question.

However, when A and B are complex numbered matrices, k has to be complex. In this situation, in the second parentheses, after applying ' operator k changes to k'. Now both of k and k' are the unknown variables of the problem. Doing the above minimization gives only k+k' not k. It would be appreciated if you could help me on solving this question.

Thank you


You simply need to treat $k$ and its complext conjugate $k^*$ as separate variables when you differentiate to minimize. Noting you want to minimize $$I\equiv\text{Tr}[(A-kB)(A-kB)^\dagger] = \text{Tr}(AA^\dagger) + |k|^2 \text{Tr}(BB^\dagger) - k\text{Tr}(BA^\dagger) - k^*\text{Tr}(AB^\dagger)$$ Then differentiating with respect to $k$ $$0 =\frac{\partial I}{\partial k} = k^*\text{Tr}(BB^\dagger) - \text{Tr}(BA^\dagger) ~~~\Longrightarrow~~~ k^* = \frac{\text{Tr}(BA^\dagger)}{\text{Tr}(BB^\dagger)} $$ so $k=\text{Tr}(AB^\dagger)/\text{Tr}(BB^\dagger)$, using the fact that $(\text{Tr}(M))^*=\text{Tr}(M^\dagger)$. Note differentiating with respect to $k^*$ will yield a consistent result $$0=\frac{\partial I}{\partial k^*} = k\text{Tr}(BB^\dagger) - \text{Tr}(AB^\dagger) ~~~\Longrightarrow~~~ k = \frac{\text{Tr}(AB^\dagger)}{\text{Tr}(BB^\dagger)}$$

Another way to arrive at the same result is to think of $k=k_x+k_yi$ as a combination of two independent variables $k_x$ and $k_y$. You can check that minimizing with respect to $k_x$ and $k_y$ will yield the same result as above.

  • $\begingroup$ Thank you for your prompt and exact answer. I made a mistake in my solution by considering ∂k*/∂k=1 and ∂k/∂k*=1, whereas as you mentioned and as indicated in the following link they are equal to zero. math.stackexchange.com/questions/85648/… I also examined your last solution by considering k=kx+jky. By doing so, kx = (Tr(AB*+BA*)/(2Tr(BB*)) and ky = j*(Tr(BA*-AB*)/(2Tr(BB*)) are achieved and therefore k=(Tr(AB*))/(Tr(BB*)) is attained which is consistent with previous result. $\endgroup$ – mamad Jul 10 '15 at 1:02

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.