Matriz jacobiana

Nivel UniversitarioDificultad ★★★★★Concepto⌖ Ver en el mapa

¿Qué es?

Para F:ℝn→ℝmF : \R^n \to \R^m, la matriz m×nm \times n de todas las derivadas parciales ∂Fi/∂xj\partial F_i/\partial x_j: la mejor aproximación lineal de FF cerca de un punto. Su determinante mide cómo estira FF los volúmenes.

¿Por qué existe?

Cuando la entrada y la salida son vectores, «la derivada» tiene que decir cómo responde cada salida a cada entrada: una tabla m×nm \times n de tasas. Dispuesta como matriz se compone multiplicando (regla de la cadena), se invierte cuando FF es localmente invertible y su determinante da el factor de cambio de variable en las integrales.

Intuición

Haz zoom sobre una aplicación suave hasta que parezca lineal: la jacobiana es esa aplicación lineal. Un cuadradito en xx se transforma en un paralelogramo diminuto generado por las columnas de JJ; su área es ∣det⁡J∣|\det J| veces la del cuadrado. En un brazo robótico, la columna jj dice a qué velocidad se mueve la mano cuando gira la articulación jj.

Definición formal

JF(x)=(∂F1∂x1⋯∂F1∂xn⋮⋮∂Fm∂x1⋯∂Fm∂xn),F(x+h)=F(x)+JF(x) h+o(∥h∥).J_F(x) = \begin{pmatrix} \frac{\partial F_1}{\partial x_1} & \cdots & \frac{\partial F_1}{\partial x_n} \\ \vdots & & \vdots \\ \frac{\partial F_m}{\partial x_1} & \cdots & \frac{\partial F_m}{\partial x_n}\end{pmatrix}, \qquad F(x + h) = F(x) + J_F(x)\,h + o(\norm h).

Teorema de la función inversa: si m=nm = n y det⁡JF(a)≠0\det J_F(a) \ne 0, FF es invertible cerca de aa con JF−1=JF−1J_{F^{-1}} = J_F^{-1}.

Fórmulas

(JF)ij=∂Fi∂xj(J_F)_{ij} = \frac{\partial F_i}{\partial x_j}
p˙=J(q) q˙\dot p = J(q)\,\dot q
cinemática de velocidades de un robot
pY(y)=pX(x) ∣det⁡JF(x)∣−1,y=F(x)p_Y(y) = p_X(x)\,\big|\det J_F(x)\big|^{-1}, \quad y = F(x)
densidades bajo una aplicación invertible (normalizing flows)

Ejemplo

Coordenadas polares F(r,θ)=(rcos⁡θ,rsin⁡θ)F(r, \theta) = (r\cos\theta, r\sin\theta): J=(cos⁡θ−rsin⁡θsin⁡θrcos⁡θ)J = \begin{pmatrix}\cos\theta & -r\sin\theta\\ \sin\theta & r\cos\theta\end{pmatrix}, det⁡J=r\det J = r. Esa rr es el factor conocido de dx dy=r dr dθ\dd x\,\dd y = r\,\dd r\,\dd\theta.

¿Por qué importa?

La robótica vive de jacobianas (cinemática de velocidades, cinemática inversa, singularidades donde det⁡J=0\det J = 0). El método de Newton para sistemas invierte una en cada paso. Los normalizing flows necesitan log⁡∣det⁡J∣\log|\det J| barato. Los frameworks de diferenciación automática nunca construyen jacobianas explícitamente: calculan productos jacobiana–vector (JVP) y vector–jacobiana (VJP).

Aplicaciones en informática

  • Jacobiana del robot (cinemática de velocidades)★★★★★fundamentalRobótica y control

    Transforma velocidades articulares en velocidades del efector final; sus singularidades son configuraciones donde el brazo pierde movilidad.

  • Cinemática inversa★★★★★fundamentalRobótica y control

    Los resolvedores de cinemática inversa iteran Δq=J+Δp\Delta q = J^{+}\Delta p (pseudoinversa) o mínimos cuadrados amortiguados.

  • Filtro de Kalman★★★★★frecuenteRobótica y control

    El filtro de Kalman extendido propaga covarianzas con las jacobianas de los modelos de dinámica y de medida.

Dónde aparece en IA

  • Modelos generativos★★★★★fundamentalIA y machine learning

    Los normalizing flows calculan verosimilitudes exactas con log⁡pX=log⁡pZ+log⁡∣det⁡J∣\log p_X = \log p_Z + \log|\det J|, diseñando capas con determinantes baratos.

  • Diferenciación automática★★★★★fundamentalIA y machine learning

    La diferenciación automática calcula JVP (modo directo) y VJP (modo inverso) sin construir JJ.

¿Dónde se utiliza?

Temas de informática a los que se llega desde aquí, con la cadena de ideas que lleva a ellos:

Qué depende de él

Ejercicios

1Cálculo directo

Calcula la jacobiana de F(x,y)=(x2−y2, 2xy)F(x, y) = (x^2 - y^2,\ 2xy) y su determinante. ¿Dónde no es FF localmente invertible?

Solución

J=(2x−2y2y2x)J = \begin{pmatrix}2x & -2y\\ 2y & 2x\end{pmatrix}, det⁡J=4(x2+y2)\det J = 4(x^2 + y^2). Solo en el origen (FF es z↦z2z \mapsto z^2 en forma compleja).

2Problema aplicado

Un brazo plano de 2 eslabones de longitudes ℓ1,ℓ2\ell_1, \ell_2 tiene la mano en p=(ℓ1cos⁡q1+ℓ2cos⁡(q1+q2), ℓ1sin⁡q1+ℓ2sin⁡(q1+q2))p = (\ell_1\cos q_1 + \ell_2\cos(q_1+q_2),\ \ell_1\sin q_1 + \ell_2\sin(q_1+q_2)). ¿Cuándo es det⁡J=0\det J = 0?

Solución

det⁡J=ℓ1ℓ2sin⁡q2\det J = \ell_1\ell_2\sin q_2: cero cuando q2=0q_2 = 0 o π\pi, con el brazo totalmente estirado o plegado. Ahí la mano no se puede mover en dirección radial.

↑ ↓ para navegar · ↵ · Esc