How to calculate coordinates using MDS if the square root of the Eigen values are imaginary

57 Views Asked by At

I'm currently trying to retrieve the coordinates of nodes using from the distance matrix using MDS

Assuming I have my original coordinates are (0,0), (0,2), (2,0) and (2,2). Hence the Distance matrix will be:

\begin{bmatrix}0 & 2 & 2 & 2.82842712 \\2 & 0 & 2.82842712 & 2 \\2 & 2.82842712 & 0 & 2 \\2.82842712 & 2 & 2 & 0 \end{bmatrix}

Decomposition of this Distance matrix will return Eigen Values: \begin{bmatrix} -0.21338835 & 0.08838835 & 0.03661165 & 0.08838835 \end{bmatrix}

and Eigen Vectors: $ U = \begin{bmatrix} \\5.00000000e-01 & 7.07106781e-01 & 5.00000000e-01 & 3.26334304e-01 \\5.00000000e-01 & -1.85675350e-16 & -5.00000000e-01 & -6.27300504e-01 \\5.00000000e-01 & -8.85308358e-17 & -5.00000000e-01 & 6.27300504e-01 \\5.00000000e-01 & -7.07106781e-01 & 5.00000000e-01 & -3.26334304e-01 \end{bmatrix} $

We could get the final result of the points using the formula: $X = U \sqrt{S}$

where S is the diagonal matrix of the Eigen Values.

But taking the square-root of the Eigen Value diagonal matrix will return imaginary numbers for some values. And hence it wouldn't be possible to recalculate the original coordinator.

Is there a way to solve this?