Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint)...

36
Restricciones (Constraints) Miguel Ángel Otaduy Animación Avanzada 11 de Febrero de 2014

Transcript of Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint)...

Page 1: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Restricciones (Constraints)

Miguel Ángel Otaduy

Animación Avanzada 11 de Febrero de 2014

Page 2: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Índice

• Mecánica Lagrangiana • Concepto de restricción (constraint) • Aplicaciones • Restricciones Débiles: Energías y fuerzas • Restricciones Fuertes: Multiplicadores de Lagrange • Cuerpos articulados

Page 3: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Coordenadas Máximas

Ecuaciones: Dinámica de partícula en 2D (2ª Ley de Newton)

Pero hace falta una fuerza que

sujete a la bola en el anillo!! Formulación: Dinámica con

restricciones (método de los multiplicadores de Lagrange)

Page 4: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Coordenadas Reducidas

Coordenadas: Las justas, dadas por el número de grados de libertad

Fuerza: No hace falta, la bola

se sujeta por la propia selección de coordenadas

Formulación: Mecánica

Lagrangiana

Page 5: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Lagrangiana

Matriz de masas

Coordenadas generalizadas

E. Cinética

E. Potencial

Lagrangiana

Page 6: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Ecs. de Euler-Lagrange

- Se obtiene una ecuación dinámica por coordenada reducida. - Estas ecuaciones permiten calcular las aceleraciones. - Integrando se obtienen velocidades y posiciones.

- Claves: definir velocidad en función de las coordenadas

generalizadas, definir energías cinética y potencial

Page 7: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Sólidos Articulados

Coordenadas máximas: - Sólido rígido por hueso - Restricciones en articulaciones Ver algoritmo de Featherstone para simulación de sólidos

articulados por coordenadas reducidas

Coordenadas reducidas: - Ángulos en articulaciones - Ecs. de Euler-Lagrange

Page 8: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Concepto de Restricción

• Una propiedad que queremos conservar.

• Asociamos a la propiedad una función escalar que ha de ser cero.

Estado de la simulación

Page 9: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Aplicación: Sólidos Articulados

• Ejemplo: articulación esférica. • ¿Cuál es la restricción a formular?

En 3D son 3 restricciones, una por eje

Page 10: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Aplicación: Sólidos Articulados

D. Baraff. ‘Linear time dynamics using Lagrange multipliers’, SIGGRAPH 1996

Page 11: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Aplicación: Ropa Inextensible

Goldenthal et al. ‘Efficient simulation of inextensible cloth’, SIGGRAPH 2007

Page 12: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Aplicación: Contactos

D. Baraff. ‘Fast contact force computation for non-penetrating rigid bodies’, SIGGRAPH 1994. K. Erleben. ‘Velocity-based shock propagation for multibody dynamics animation´, ACM TOG 2007. Kaufman et al. ‘Staggered projection for frictional contact in multibody systems’, SIGGRAPH Asia 2008. Otaduy et al. `Implicit contact handling for deformable objects’, Eurographics 2009

Page 13: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Aplicación: Conservación de Volumen

Irving et al. ‘Volume conserving finite element simulations of deformable models’, SIGGRAPH 2007.

Page 14: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Aplicación: Contacto con Adherencia

Gascón et al. ‘Constraint-Based Simulation of Adhesive Contact’, Symposium on Computer Animation 2010.

Page 15: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Aplicación: Piel No Lineal

Pérez et al. ‘Strain Limiting for Soft Finger Contact Simulation’, World Haptics Conference 2013.

Page 16: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Índice

• Concepto de restricción (constraint) • Aplicaciones • Restricciones Débiles: Energías y fuerzas • Restricciones Fuertes: Multiplicadores de Lagrange • Cuerpos articulados

Page 17: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Energía de Restricción

• Ejemplo: Longitud de un muelle – Propiedad: – Función escalar: –Energía:

Page 18: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Fuerzas de Restricción

• Ejemplo: Longitud de un muelle – Fuerza = - Gradiente de la energía: – Fuerza: – La fuerza es la misma que con la ley de Hooke! – Notación Jacobiana:

Page 19: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Fuerzas de Restricción

• Otros ejemplos: –Simulación de ropa: mallar mediante

triángulos y formular restricciones que conserven el área de los triángulos.

–Simulación de sólidos: mallar mediante tetraedros y formular restricciones que conservar el volumen de los tetraedros.

(En combinación con fuerzas de muelles) Ejercicio: simular un triángulo por masa-

muelle añadiendo restricción de área.

Page 20: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Fuerzas Internas

• Si las restricciones se utilizan para modelar fuerzas internas (p.ej., elasticidad), hay que tener cuidado: – Las fuerzas de restricción han de sumar

cero para conservar el momento lineal y el momento angular.

Page 21: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Pros y Contras

Mecanismo poderoso para modelar fuerzas internas que conservan propiedades.

Se pueden combinar y ponderar (constante k).

×Pueden ser costosas. ×Elegir las k-s puede ser complicado si hay

muchas restricciones. ×Las restricciones pueden ser redundantes,

competir, y/o cancelarse unas a otras.

Page 22: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Integración Implícita

• ODEs a integrar:

• Euler semi-implícito:

Incluye fuerzas de restricciones

Jacobianas a calcular para las restricciones

Page 23: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Integración Implícita (1 Restricción)

• Energía:

• Fuerza:

• Jacobiana:

Matriz de derivadas segundas (Hessiana)

Page 24: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Restricciones Fuertes vs. Débiles

• Con las restricciones débiles no hay garantías de conseguir que se cumplan. Debemos aumentar k, pero eso trae problemas de inestabilidad, etc.

• Restricciones fuertes: vamos a calcular k de manera que las restricciones se cumplan exactamente.

Page 25: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Índice

• Concepto de restricción (constraint) • Aplicaciones • Restricciones Débiles: Energías y fuerzas • Restricciones Fuertes: Multiplicadores de Lagrange • Cuerpos articulados

Page 26: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Multiplicadores de Lagrange

• Técnica para resolver problemas de optimización con restricciones.

• Problema de optimización:

• Solución sin restricciones:

• Restricciones:

Page 27: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Multiplicadores de Lagrange

• Reescribimos el problema de optimización:

• Sistema a resolver: Multiplicadores de Lagrange:

Vector de incógnitas de tamaño igual al número de restricciones

‘Fuerzas’ de restricciones: Su dirección es la misma que para restricciones débiles, pero la magnitud es desconocida a priori.

Page 28: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Dinámica + Restricciones

• ¿Cómo añadimos restricciones a las ODEs (Ley de Newton)?

• Opción 1: –Vamos a diferenciar las restricciones, y

expresamos restricciones en las aceleraciones.

• Opción 2: – Integramos las ODEs, y expresamos las

restricciones sobre las variables ya discretizadas en el tiempo.

Page 29: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Opción 1: Diferenciación de Restricciones

• Vamos a diferenciar las restricciones:

La derivada de la Jacobiana se suele tomar como 0.

Page 30: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Opción 1: Diferenciación de Restricciones

• Problema de optimización:

• Da lugar al sistema:

Al resolver el sistema nos quedan las ODEs que tenemos que resolver (y se aplican los métodos de integración típicos).

Aceleraciones sin restricciones

Page 31: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Opción 1: Diferenciación de Restricciones

• Al formular restricciones sobre las aceleraciones, se sufre desviación (drift).

• Reformular las restricciones con términos correctores:

Estos términos son, en el fondo, como una restricción débil que se suma a la restricción fuerte (un muelle con amortiguamiento)

Page 32: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Opción 2: Restricciones sobre Ecs. Discretizadas

• Integramos las velocidades y posiciones (vamos a asumir una solución linealizada):

• Restricciones con aproximación lineal:

Page 33: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Opción 2: Restricciones sobre Ecs. Discretizadas

• Problema de optimización:

• Da lugar al sistema:

Se obtienen, directamente, las velocidades al final del paso de simulación.

Fuerzas de restricción.

Velocidades sin restricciones

Page 34: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Multiplicadores de Lagrange

• Hay que resolver sistemas del tipo:

• Si A es fácil de invertir, se sustituye la primera ecuación en la segunda.

• O se puede resolver todo el sistema a la vez: con MINRES ó GMRES si es disperso; SVD si es incompatible (overconstrained).

Page 35: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Sólidos Articulados

• Ejemplo: articulación esférica:

• Utilizar método 2: restricción sobre ecs. discretizadas.

Page 36: Simulación Basada en Modelos Físicos en GMRV€¦ · •Concepto de restricción (constraint) •Aplicaciones ... Multiplicadores de Lagrange: Vector de incógnitas de tamaño igual

Sólidos Articulados

• Expresar la restricción con velocidades:

• Utilizar velocidades del estado:

• Restricciones finales:

Aquí utilizamos una técnica de linealización de la restricción ligeramente distinta a la planteada en la transparencia 25. No es tan general, pero es más fácil de aplicar en este caso.