Minimization of function expressed with vectors and matrices

1.2k Views Asked by At

I need to find vector $\bf{p}$ in the following system:

$$\bf{0} \approx \bf{W} \left[ \bf{C}^2 \bf{p} - \bf{d} \right]$$

$$\bf{0} \approx \varepsilon \bf{p}$$

In the above, $\bf{0}$ is a vector, $\bf{W}$ is a matrix, $\bf{C}$ is a matrix, $\bf{d}$ is a vector, $\epsilon$ is a scalar, and all of these are known inputs.

Perhaps the first and easiest way to proceed would be to re-write the system as the following:

$$\bf{0} \approx {\bf{W}}\left[ \bf{C}^2 \bf{p} - \bf{d} \right] + \varepsilon \bf{p}$$

How would I proceed to be able to find a $\bf{p}$ vector that will minimize the system? I am prototyping this calculation in Matlab, but I need to re-write the calculation in C++. Could anyone suggest an optimization algorithm (with some sort of numerical library) that I can use to minimize? I believe that the optimization algorithms bundled with Matlab require a scalar output of a function to be minimized.

As a reference, this system of equations is given in the following paper: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.78.8057&rep=rep1&type=pdf

1

There are 1 best solutions below

3
On BEST ANSWER

Try solving the least-squares problem:

$$ \min_{p} \; \; ||\begin{bmatrix} W C^2 \\ \epsilon I \end{bmatrix}p - \begin{bmatrix} W d \\ 0 \end{bmatrix} ||_2^2 $$