Transforming Jacobians using the chain rule for composed functions when SE(2) and SO(2) Lie-Group arguments are involved.

167 Views Asked by At

Disclaimer: unfortunately I'm not a mathematician, so please excuse me if my mathematic notation might seem weird or is plain wrong...I try to be as precise as possible.

Basically I have a function $h(x)$ and I am trying to find the Jacobian of it. The function $h(x)$ is made up of two other functions:

$f: G \times G \rightarrow G$, with $G \in SE(2)$, the Lie-Group of rigid body motions.

$g: G \times p \rightarrow \mathbb{R}$, with $G \in SE(2)$ and $p \in \mathbb{R}^2$

$h = g \circ f$

Informally speaking, I have two Poses $A, B \in SE(2)$, a Point $p \in \mathbb{R}^2$, I transform Pose $A$ by $B$ and calculate the range of the transformed Pose $A^\prime$ to a Point $p$.

What I want is the Jacobian of $h$ with respect to the parameters of $A, B$ and $p$.

Fortunately I already get the Jacobian of $f$ and $g$, so the only question left is: how to transform them to form the Jacobian of $h$.

To my knowledge, the Jacobians of composed functions can be transformed using the chain rule:

$h = g \circ f \Rightarrow H_a = G_{f(a)} \cdot F_a$

So my question is: does this rule still hold in my case, although I have to deal with Lie-Groups? Also, can I use this property even in the case, that $g$ not only takes in parameters $f(a)$ put also the point $p$?

Additional question: assume the function $h$ is made up of two parts, with the first being the scenario above of transforming a Pose and calculating the range of the resulting Pose to a point. The second part $h_2$ would also transform a Pose, but then calculate the bearing to the point, instead of the range:

$f_2: G \times G \rightarrow G$, with $G \in SE(2)$

$g_2: G \times p \rightarrow R$, with $G \in SE(2)$, $p \in \mathbb{R}^2$ and $R \in \mathfrak{so}(2)$, the Lie-Algebra corresponding to the Lie-Group $SO(2)$ of two-dimensional Rotations.

$h_2 = g \circ f$

In this case, would the way to propagate the Jacobians of the first part of $h$ be different than the one for the second part of $h$, because it outputs a Rotation angle instead of a scalar?

Any help is appreciated. Thank you very much!