Tutorial de Álgebra Geométrica Conforme

“…for geometry, you know, is the gate of science, and the gate is so low and small that one can only enter it as a little child.” — William Kingdon Clifford (1845–1879)

El Álgebra Geométrica es un subconjunto de lo que hoy se conoce como Álgebras de Clifford. Se puede afirmar que es la parte del Álgebra de Clifford que tiene sentido geométrico. Citando a David Hestenes:

“When a geometric interpretation is attached to a Clifford Algebra, I prefer to call it a Geometric Algebra, which is the name originally suggested by Clifford himself.”

El Álgebra Geométrica Conforme es la fusión del Álgebra Geométrica de Clifford con la Geometría Hiperbólica. Un importante resultado de la geometría hiperbólica es que se pueden encontrar superficies cuya métrica hiperbólica es isomorfa a la del espacio Euclidiano. Básicamente, el espacio vectorial 3D (i.e., Euclidiano) es embebido en un espacio proyectivo 5D en el cual se cumple que los vértices en el espacio Euclidiano 3D se corresponden con vértices en la superficie de un hiperparaboloide en el espacio hiperbólico 5D. Como veremos más adelante esta representación algebraica tiene muchas ventajas para el Modelado Geométrico, ya que las transformaciones no lineales en el espacio 3D (e.g., transformaciones conformes) son lineales en el espacio 5D.

El Álgebra Geométrica Conforme de Hestenes tiene la ventaja de que las primitivas geométricas como son: puntos, líneas, planos, círculos y esferas, pueden ser representadas directamente como “objetos” algebraicos que pueden ser comparados, intersecados y transformados (i.e., trasladados, rotados y escalados) sin necesidad de especificar sus coordenadas, obteniendo una correspondencia inmediata entre objetos algebraicos y objetos geométricos con un gran nivel de abstracción. Además posee un álgebra de transformaciones conformes propiamente dicha sobre la cual se puede aplicar Cálculo Geométrico. Citando a Alan McDonald:

“How Geometric Algebra Works: Algebraic operations on blades correspond to geometric operations on the subspaces they represent”

En la última década el Álgebra Geométrica y el Cálculo Geométrico han recibido más atención de la comunidad académica, perfilándose como alternativas de (entre otras) al álgebra vectorial, tensorial, compleja y cuaterniónica por un lado y al cálculo vectorial, análisis complejo, geometría diferencial y otras teorías avanzadas por el otro. La razón es que se trata de una teoría matemática que unifica varias teorías matemáticas de forma consistente y es por lo tanto un lenguaje unificado para la física y la ingeniería. Y eso la hace inmensamente poderosa. Un lenguaje que hace accesibles las investigaciones de máximo nivel en ciencias para los no especialistas en matemáticas, ya que codifica los fundamentos matemáticos subyacentes de diversas teorías matemáticas y facilita relacionarlos y transportarlos hacia nuevas áreas de estudio. En última instancia, el Álgebra y Cálculo Geométricos son la puerta de entrada hacia las matemáticas avanzadas y aceleran el aprendizaje de teorías matemáticas para la física y la ingeniería.

Diversos artículos demuestran el poder de síntesis del Álgebra y Cálculo Geométricos y sus aplicaciones en Visión Computacional y Robótica. En esos campos, el álgebra de motores y de transformaciones conformes (y su correspondiente algebra de Lie) son usados rutinariamente para reformular diversos problemas geométricos de forma algebraica y resolverlos de forma eficiente. Como veremos más adelante, AGC (Álgebra Geométrica Conforme) es la teoría matemática idónea para el modelado geométrico. También veremos que, usando el AGC evitamos completamente los inconvenientes que tienen las coordenadas homogéneas y sus transformaciones rígidas y además tenemos nuevas herramientas más generales y poderosas a nuestra disposición.

A pesar del enorme potencial que poseen el Álgebra y Cálculo Geométricos hoy en día son teorías relativamente desconocidas, inclusive para matemáticos y físicos. Por supuesto también es desconocido por la mayor parte de la comunidad de Ciencias de la Computación y es por eso que su aplicación en modelado geométrico resulta un poco esotérica. Parte de la razón es porque aún no se enseña en el pregrado de la mayoría de universidades. La enseñanza de estas teorías recién está empezando a expandirse ya que se cree que es posible enseñarla desde el colegio. Citando a los Lasenby:

“While providing an immensely powerful mathematical framework in which the most advanced concepts of quantum mechanics, relativity, electromagnetism, etc. can be expressed, it is claimed that GA [Geometric Algebra] is also simple enough to be taught to school children!”

Álgebra Geométrica de Clifford

No es mi intención hacer una introducción minuciosa ni rigurosa del Álgebra Geométrica, sino mas bien hacer una introducción intuitiva y comprensible de los conceptos básicos para lectores que no conocen nada del Álgebra Geométrica pero que han culminado sus cursos de álgebra lineal y análisis matemático a nivel universitario. Una introducción amplia y muy accesible para graduados en Ciencias de la Computación se puede encontrar en el excelente libro: “Geometric Algebra for Computer Science” de Dorst, Mann y Fontijne.

Nota: ante cualquier duda o vacío encontrado durante la lectura de este post, sugiero complementar con wikipedia.

Continue reading

Advertisements

Brief Introduction to Conformal Geometric Algebra

In words of Pablo Colapinto: “modern day graphics systems are an amalgam of matrix, vector, and tensor algebras“. These algebras run fast in computers, but the intricacies of their algebraic representations make it difficult to realize their truly geometric interpretation. Within the last decade, Geometric Algebra has emerged as a powerful alternative to the classical matrix, vector and tensor algebras as a comprehensive conceptual language and computational system for computer science. In his Master’s thesis Colapinto states that “great research has been done demonstrating its powers of synthesis, especially with regards to forms and control systems generated by twist groups and motor algebras“. However, it is known that little research focuses on their application to computer graphics, geometric modeling and animation. The aim of this post is to encourage the reader for use geometric algebra in geometric  modeling applications and computer graphics.

Geometric Algebra can be defined as the subset of Clifford Algebra that has geometric interpretation. In Conformal Geometric Algebra (CGA), rigid body motions can be represented as compact (multi-)vectors called Motors. Unlike homogeneous matrices, motors are linear transformations. All multivectors can be transformed by motors in a covariant and linear way. CGA motors can be efficiently interpolated for generating continuously deformed motions, and that is one of the main features that we should exploit in computer graphics. On the other hand, the interpolation of matrices is difficult and expensive. The logarithm of a matrix can be defined but is not elementary and not in closed form. A straightforward way to compute it is to take the eigenvalue decomposition of the rigid body motion matrix in the homogeneous coordinate framework, and take the Nth root of the diagonal matrix. Such numerical techniques makes the matrix logarithm expensive to compute and hard to analyze.

Continue reading