# MMSE - How to minimize a complex error with respect to a set of real parameters

Suppose there's a complex signal $X(k)$ (where $k \in \{0, 1, 2,...,N - 1\}$) corrupted by additive complex noise. Its estimate $\hat{X}(k)$ is a linear combination of a set of real parameters $A_r$ ($r \in \{1, 2, 3,..., R$}) $$\hat{X}(k) = \sum_{r=1}^R A_rZ_r(k)$$ where $Z_r(k)$ is complex (and known).

I wish to obtain the real values of $A_r$ for which the error is minimized. If I simply differentiate the mean squared error (MSE) $\frac{1}{N}\sum_{k = 0}^{N-1}(X(k) - \hat{X}(k))^2$ with respect to each $A_r$ and set the resulting derivatives equal to zero, the values of $A_r$ I'll obtain will be complex, so that's not a solution.

My question is: how do I obtain the optimal values of $A_r$ such that the MSE is minimized, under the constraint that each $A_r$ should be real?

• I did not try it but the idea crossed my mind was that $$\hat{X}(k) = \sum_{r=1}^R (B_r + B_r^*) Z_r(k)$$ where $B_r$ is complex and * mean transposed conjungate. Oct 27, 2017 at 14:48

A very common approach is to consider $X(k) \;\text{and} \;\hat{X}(k)$ as elements vector space $C^R$, and consider the distance between the 2 vectors as a norm, which are real, positive or zero, and satisfy the triangle inequality.

So using vector-matrix notation with the vectors as column vectors:

$$\text{error}^2 =(\mathbf{X}-\mathbf{\hat{X}})^H (\mathbf{X}-\mathbf{\hat{X}})$$
where $H$ is conjugate transpose.

Constraint is satisfied when imaginary part of $A_r$ is zero.

$$\frac{1}{2}(A_r - A_r^*)=0$$ which is appended to the objective as a lagrange multiplier(s) $$\text{error}^2+\sum \lambda_r \frac{1}{2}(A_r - A_r^*)$$

These sorts of problems are easier when you use Brandwood derivatives,

D. H. Brandwood, "A complex gradient operator and its application in adaptive array theory," in Communications, Radar and Signal Processing, IEE Proceedings F, vol. 130, no. 1, pp. 11-16, February 1983. doi: 10.1049/ip-f-1.1983.0003 Abstract: The problem of minimising a real scalar quantity (for example array output power, or mean square error) as a function of a complex vector (the set of weights) frequently arises in adaptive array theory. A complex gradient operator is defined in the paper for this purpose and its use justified. Three examples of its application to array theory problems are given. URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=4645581&isnumber=4645575

This is the convention used in

Van Trees, Harry L. Optimum array processing: Part IV of detection, estimation and modulation theory. Vol. 1. New York, NY, USA: John Wiley & Sons, 2002.

• In retrospect, that seems obvious. Thank you so much! Oct 27, 2017 at 19:30
• @gk1111 Could you please explain how this answer can satisfy the constraint that $A_r$ must be real ? Oct 28, 2017 at 9:00
• Good point, it corrected the MSE but not the constraint. Answer edited accordingly
– user28715
Oct 28, 2017 at 13:07
• Unless I'm making a mistake, the Lagrange multiplier is not needed for this particular problem. $X(k)$ and $Z_r(k)$ are already known. Since $A_r$ is real, multiplying $Z_r(k)$ by it means multiplying the real and imaginary parts by the same scalar. The error is real, since it's a sum of squared magnitudes. By representing the error in terms of $A_r$ and the real and imaginary parts of $X(k)$ and $Z_r(k)$, we can completely eliminate any complex numbers from the equation. Then we can differentiate the error with respect to each $A_r$. The solution obtained will necessarily be real. Oct 29, 2017 at 13:40
• @gk1111 It all depends on how you pose the problem. If you can avoid the Lagrange multiplier, when you solve your equations and all is correct, good, but given what you originally posted, the Lagrange multiplier is the way I would approach the problem, because I believe that algebra is simpler. The Lagrange multiplier might be unnecessary but it isn’t wrong. You can answer your own questions on this site and post your Lagrange free solution. It would be interesting to see.
– user28715
Oct 29, 2017 at 13:52

We can rewrite $Z_r(k)$ as $$Z_r(k) = P_r(k) + jQ_r(k)$$ where $P_r(k)$ and $Q_r(k)$ are, respectively, the real and imaginary parts of $Z_r(k)$.

Similarly, we can rewrite $X(k)$ as $$X(k) = X_1(k) + jX_2(k)$$ where $X_1(k)$ and $X_2(k)$ are, respectively, the real and imaginary parts of $X(k)$.

The MSE $\varepsilon$ is $$\varepsilon = \frac{1}{N}\sum_{k = 0}^{N-1}|X(k) - \hat{X}(k)|^2$$

This can be rewritten as $$\varepsilon = \frac{1}{N}\sum_{k = 0}^{N-1}\bigl|X_1(k) + jX_2(k) - \sum_{r=1}^R A_r(P_r(k) + jQ_r(k))\bigr|^2$$ or, $$\varepsilon = \frac{1}{N}\sum_{k = 0}^{N-1}\bigl(\bigl(X_1(k) - \sum_{r=1}^R A_rP_r(k)\bigr)^2 + \bigl(X_2(k) - \sum_{r=1}^R A_rQ_r(k)\bigr)^2\bigr)$$

If we differentiate $\varepsilon$ with respect to each $A_r$, we'll get a set of R linear equations, which we can then solve to obtain the optimal values of $A_r$. Since we're dealing with only real numbers here, the values of $A_r$ obtained will be real.