3
$\begingroup$

Given are 6 independent normal distributed variables $X_i=\mathcal{N}(\mu_i,\sigma^2)_{i=1...6}$ with expectations $\mu_i$ and variance $\sigma^2$. How the expected value of the norm of their cross product can be calculated or approximated?

$$\mathbb{E}\left[ \left \| \begin{pmatrix} X_1\\X_2\\X_3 \end{pmatrix} \times \begin{pmatrix} X_4\\X_5\\X_6 \end{pmatrix} \right\| \right]=\mathbb{E}\left[ \left\|\begin{pmatrix} X_2 X_6-X_3 X_5\\X_3 X_4 - X_1 X_6\\ X_1 X_5-X_2 X_4\end{pmatrix}\right\|\right]=\mathbb{E}\left[\sqrt{(X_2 X_6-X_3 X_5)^2+(X_3 X_4 - X_1 X_6)^2+(X_1 X_5-X_2 X_4)^2}\right]$$

It can be assummed $$\sigma\ll \left\|\begin{pmatrix} \mu_1\\\mu_2\\\mu_3\end{pmatrix}\right\|=\sqrt{\mu_1^2+\mu_2^2+\mu_3^2}$$

$$\sigma\ll \left\|\begin{pmatrix} \mu_4\\\mu_5\\\mu_6\end{pmatrix}\right\|=\sqrt{\mu_4^2+\mu_5^2+\mu_6^2}$$

$\endgroup$
8
  • 1
    $\begingroup$ Shall we assume nothing about the nine means? It may help many readers to explain the origin of this problem. $\endgroup$
    – whuber
    Commented Jan 17, 2020 at 0:06
  • 1
    $\begingroup$ Related: mathematica.stackexchange.com/questions/212984/… $\endgroup$
    – JimB
    Commented Jan 17, 2020 at 0:32
  • $\begingroup$ Would you clarify what you mean by "9 normal distributed variables with expectation"? Do you mean "9 random variables with normal distributions and potentially all different means?" Also, what does "distributions do not interfere" mean? $\endgroup$
    – JimB
    Commented Jan 17, 2020 at 0:35
  • $\begingroup$ True. You were given an exact answer rather than an approximation. And I understand you want an approach (or multiple approaches) to find approximations when there are no explicit solutions. The question is related in that I think it will help others get you the answer that you want. $\endgroup$
    – JimB
    Commented Jan 17, 2020 at 0:39
  • 1
    $\begingroup$ Then please tell us how much precision you need! WLG you may take $\sigma=1,$ so it suffices to express the precision in terms of the norms of the two mean vectors. $\endgroup$
    – whuber
    Commented Jan 21, 2020 at 20:26

1 Answer 1

2
$\begingroup$

The approach mentioned by @huber is probably what you need for this particular random variable.

Here is how to perform a 2nd order Taylor series approximation (using Mathematica as your other questions indicate you use this software).

(* Function of interest *)
f = Sqrt[(x[2] x[6] - x[3] x[5])^2 + (x[3] x[4] - x[1] x[6])^2 + (x[1] x[5] - x[2] x[4])^2];

(* Make a conversion to get Mathematica to do the desired 2nd order Taylor series *)
(* Technique from 
https://mathematica.stackexchange.com/questions/15023/multivariable-taylor-expansion-does-not-work-as-expected *)
f = f /. x[i_] -> (z[i] - \[Mu][i]) t + \[Mu][i];

(* Get 2nd order Taylor series *)
taylor = (Series[f, {t, 0, 2}] // Normal) /. t -> 1 // Expand;

(* Take expectation of Taylor series *)
(* Convert z[i]^2 to \[Sigma]^2 + \[Mu][i]^2 *)
mean = taylor //. z[i_]^2 -> \[Sigma]^2 + \[Mu][i]^2;
(* Convert z[i] to \[Mu][i] *)
mean = FullSimplify[mean //. z[i_] -> \[Mu][i]]

$$\frac{\left(\mu_1^2+\mu_2^2+\mu_3^2+\mu_4^2+\mu_5^2+\mu_6^2\right) \sigma^2+2 \left(\left(\mu_5^2+\mu_6^2\right) \mu_1^2-2 \mu_3 \mu_4 \mu_6 \mu_1+\mu_3^2 \left(\mu_4^2+\mu_5^2\right)-2 \mu_2 \mu_5 (\mu_1 \mu_4+\mu_3 \mu_6)+\mu_2^2 \left(\mu_4^2+\mu_6^2\right)\right)}{2 \sqrt{\left(\mu_5^2+\mu_6^2\right) \mu_1^2-2 \mu_3 \mu_4 \mu_6 \mu_1+\mu_3^2 \left(\mu_4^2+\mu_5^2\right)-2 \mu_2 \mu_5 (\mu_1 \mu_4+\mu_3 \mu_6)+\mu_2^2 \left(\mu_4^2+\mu_6^2\right)}}$$

And if we let

$$g=\sqrt{(\mu_2 \mu_6-\mu_3 \mu_5)^2+(\mu_3 \mu_4+\mu_1 \mu_6)^2+(\mu_1 \mu_5-\mu_2 \mu_4)^2}$$

(which is the form of the random variable of interest but with the respective means plugged in), then the approximate mean can be written as

$$g+\frac{\left(\mu_1^2+\mu_2^2+\mu_3^2+\mu_4^2+\mu_5^2+\mu_6^2\right) \sigma^2}{2 g}$$

Now...is this approximation precise enough? Here's an example.

(* Set mean of x[1],...,x[6] *)
xMeans = {1, 2, 3, 3, 7, 5};
\[Mu]Values = Thread[{\[Mu][1], \[Mu][2], \[Mu][3], \[Mu][4], \[Mu][5], \[Mu][6]} -> xMeans]
(* Get a variance satisfying the OP's restriction *)
\[Sigma]X = 0.01 Min[1^2 + 2^2 + 3^2, 3^2 + 7^2 + 5^2]^0.5
(* 0.0374166 *)

(* 2nd order Taylor approximation to mean *)
mean /. \[Mu]Values /. \[Sigma] -> \[Sigma]X
(* 11.7531 *)

(* Estimation of mean by simulations *)
SeedRandom[12345];
n = 10000;
xbar = 0;
Do[xx = RandomVariate[NormalDistribution[0, 1], 6];
 xx = xMeans + \[Sigma]X*xx;
 xbar = xbar + 
   Sqrt[(xx[[2]] xx[[6]] - xx[[3]] xx[[5]])^2 +
        (xx[[3]] xx[[4]] - xx[[1]] xx[[6]])^2 + 
        (xx[[1]] xx[[5]] - xx[[2]] xx[[4]])^2],
 {i, n}]
xbar = xbar/n
(* 11.7543 *)

(* Approximate relative precision *)
(xbar - mean /. \[Mu]Values /. \[Sigma] -> \[Sigma]X)/xbar
(* 0.000103943 *)

If this approximation is not good enough, then you might want to try a higher order Taylor series approximation. Alternatively, finding an approximation for the mean by generating lots of random samples with known values for the parameters is pretty quick, too.

$\endgroup$
7
  • $\begingroup$ The solution diverges if vectors become parallel. It cannot be applied in the case that is described here: math.stackexchange.com/questions/3520115/… $\endgroup$ Commented Jan 27, 2020 at 4:46
  • $\begingroup$ It might just be that estimating the mean through random samples is the way to go which doesn't take too much computer time if you just have to do a few of these. $\endgroup$
    – JimB
    Commented Jan 28, 2020 at 14:37
  • $\begingroup$ A computer simulation might help for a few cases but not in general. $\endgroup$ Commented Jan 28, 2020 at 14:41
  • $\begingroup$ Why the replacement must be performed in the given way? mean = taylor //. z[i_]^2 -> [Sigma]^2 + [Mu][i]^2; $\endgroup$ Commented Jan 11, 2021 at 19:18
  • $\begingroup$ Do you have an alternative in mind? $\endgroup$
    – JimB
    Commented Jan 11, 2021 at 19:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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