El principal método computacional utilizado en la geometría algebraica numérica es la continuación de homotopía, en la que se forma una homotopía entre dos sistemas polinómicos y las soluciones aisladas (puntos) de uno se continúan hasta el otro. Se trata de una especialización del método más general de continuación numérica .
Sea , las variables del sistema se representan como sigue : Por abuso de notación y para facilitar el espectro de espacios ambientales sobre los que se puede resolver el sistema, no utilizamos notación vectorial para . De manera similar, para los sistemas polinómicos y .
La notación canónica actual llama al sistema de partida , y al sistema de destino, es decir, el sistema a resolver, . [4] [5] Una homotopía muy común, la homotopía de línea recta, entre y es
En la homotopía anterior, la variable de ruta comienza en y continúa hacia . Otra opción común es ir desde hasta . En principio, la elección es completamente arbitraria. En la práctica, en lo que respecta a los métodos de final de juego para calcular soluciones singulares mediante la continuación de la homotopía, el tiempo objetivo puede facilitar significativamente el análisis, por lo que aquí se adopta esta perspectiva. [6]
Independientemente de la elección de los tiempos de inicio y de destino, el debe formularse de tal manera que , y .
Uno tiene la posibilidad de elegir entre :
Raíces de la unidad
Grado total
Poliédrico
Multihomogéneo
y más allá de estos, se pueden formar sistemas de inicio específicos que reflejen fielmente la estructura de para sistemas particulares. La elección del sistema de inicio afecta el tiempo computacional que lleva resolver , en el sentido de que aquellos que son fáciles de formular (como el grado total) tienden a tener una mayor cantidad de caminos para seguir, y aquellos que requieren un esfuerzo significativo (como el método poliédrico) son mucho más precisos. Actualmente no hay una buena manera de predecir cuál conducirá al tiempo más rápido para resolver. [ cita requerida ]
La continuación real se realiza normalmente mediante métodos predictores-correctores , con características adicionales a medida que se implementan. La predicción se realiza mediante un método predictor de EDO estándar , como Runge-Kutta , y la corrección a menudo utiliza la iteración de Newton-Raphson.
Como y son polinomiales, en teoría se garantiza que la continuación de homotopía en este contexto permite calcular todas las soluciones de , debido al teorema de Bertini . Sin embargo, esta garantía no siempre se logra en la práctica, debido a problemas que surgen de las limitaciones de la computadora moderna, principalmente la precisión finita. Es decir, a pesar de la solidez del argumento de probabilidad 1 que subyace a esta teoría, sin utilizar métodos de seguimiento certificados a priori, algunas rutas pueden no seguirse perfectamente por diversas razones.
Conjunto de testigos
Un conjunto testigo es una estructura de datos que se utiliza para describir variedades algebraicas . El conjunto testigo para una variedad afín que es equidimensional consta de tres piezas de información. La primera pieza de información es un sistema de ecuaciones . Estas ecuaciones definen la variedad algebraica que se está estudiando. La segunda pieza de información es un espacio lineal . La dimensión de es la codimensión de y se elige para que se intersequen transversalmente. La tercera pieza de información es la lista de puntos en la intersección . Esta intersección tiene un número finito de puntos y el número de puntos es el grado de la variedad algebraica . Por lo tanto, los conjuntos testigo codifican la respuesta a las dos primeras preguntas que uno se hace sobre una variedad algebraica: ¿Cuál es la dimensión y cuál es el grado? Los conjuntos testigo también permiten realizar una descomposición numérica irreducible, pruebas de pertenencia de componentes y muestreo de componentes. Esto hace que los conjuntos testigo sean una buena descripción de una variedad algebraica.
Proceso de dar un título
Las soluciones de sistemas polinómicos calculadas mediante métodos geométricos algebraicos numéricos pueden certificarse , lo que significa que la solución aproximada es "correcta". Esto se puede lograr de varias maneras, ya sea a priori utilizando un rastreador certificado, [7] [8] o a posteriori mostrando que el punto está, por ejemplo, en la cuenca de convergencia para el método de Newton. [9]
Software
Existen varios paquetes de software que implementan partes del cuerpo teórico de la geometría algebraica numérica. Entre ellos se incluyen, en orden alfabético:
AlfaCertificado [9]
Bertini [5]
Hom4PS [10] [11]
HomotopyContinuation.jl [12]
Macaulay2 (implementación básica del seguimiento de homotopía y paquete NumericalAlgebraicGeometry[3] )
MiNuS: marco de trabajo C++ optimizado para la continuación rápida de homotopías. El solucionador más rápido hasta la fecha para ciertos problemas de grados cuadrados de 100 a 320.
Paquete PHC [13]
Referencias
^ Hauenstein, Jonathan D.; Sommese, Andrew J. (marzo de 2017). "¿Qué es la geometría algebraica numérica?". Journal of Symbolic Computation . 79 : 499–507. doi : 10.1016/j.jsc.2016.07.015 .
^ Sommese, Andrew J.; Verschelde, enero; Wampler, Charles W. (2005). "Introducción a la Geometría Algebraica Numérica". En Bronstein, Manuel; Cohen, Arjeh M.; Cohen, Enrique; Eisenbud, David; Sturmfels, Bernd; Dickenstein, Alicia; Emiris, Ioannis Z. (eds.). Resolución de ecuaciones polinómicas: fundamentos, algoritmos y aplicaciones (PDF) . Springer-Verlag. doi :10.1007/3-540-27357-3_8. ISBN978-3-540-24326-7.
^ ab Leykin, Anton (1 de enero de 2000). "Geometría algebraica numérica". Revista de software para álgebra y geometría . 3 (1): 5–10. doi : 10.2140/jsag.2011.3.5 . ISSN 1948-7916.
^ Sommese, Andrew J.; Wampler, II, Charles W. (2005). La solución numérica de sistemas de polinomios que surgen en la ingeniería y la ciencia . World Scientific. ISBN978-981-256-184-8.
^ ab Bates, Daniel J.; Sommese, Andrew J.; Hauenstein, Jonathan D; Wampler, Charles W. (2013). Resolución numérica de sistemas polinómicos con Bertini . Sociedad de Matemáticas Industriales y Aplicadas. ISBN978-1-61197-269-6.
^ Chen, Tianran; Li, Tien-Yien (2015). "Método de continuación de homotopía para resolver sistemas de ecuaciones no lineales y polinómicas". Comunicaciones en Información y Sistemas . 15 (2): 276–277. doi : 10.4310/CIS.2015.v15.n2.a1 .
^ Beltrán, Carlos; Leykin, Anton (1 de marzo de 2012). "Seguimiento de homotopía numérica certificada". Matemáticas experimentales . 21 (1): 69–83. arXiv : 0912.0920 . doi :10.1080/10586458.2011.606184. ISSN 1058-6458. S2CID 2889087.
^ Beltrán, Carlos; Leykin, Anton (1 de febrero de 2013). "Seguimiento de homotopía numérica certificada robusta". Fundamentos de las matemáticas computacionales . 13 (2): 253–295. arXiv : 1105.5992 . doi :10.1007/s10208-013-9143-2. ISSN 1615-3375. S2CID 32990257.
^ ab Hauenstein, Jonathan D.; Sottile, Frank (agosto de 2012). "Algoritmo 921: alphaCertified: Certificación de soluciones para sistemas polinomiales". ACM Transactions on Mathematical Software . 38 (4): 1–20. doi :10.1145/2331130.2331136. S2CID 13821271.
^ Chen, T.; Lee, TL; Li, TY (2014). "Hom4PS-3: Un solucionador numérico paralelo para sistemas de ecuaciones polinómicas basado en métodos de continuación de homotopía poliédrica". En Hong, H.; Yap, C. (eds.). Software matemático - ICMS 2014: 4.º Congreso internacional, Seúl, Corea del Sur, 5-9 de agosto de 2014. Actas . págs. 183-190. doi :10.1007/978-3-662-44199-2_30. ISBN .978-3-662-44199-2. Recuperado el 28 de abril de 2020 .
^ Equipo Hom4PS. «Productos destacados». Hom4PS-3 . Universidad Estatal de Michigan . Consultado el 28 de abril de 2020 .{{cite web}}: CS1 maint: nombres numéricos: lista de autores ( enlace )
^ Breiding, Paul; Timme, Sascha (mayo de 2018). "HomotopyContinuation.jl: Un paquete para la continuación de homotopía en Julia". arXiv : 1711.10911v2 [cs.MS].
^ Verschelde, Jan (1 de junio de 1999). "Algoritmo 795: PHCpack: un solucionador de propósito general para sistemas polinomiales por continuación de homotopía". ACM Transactions on Mathematical Software . 25 (2): 251–276. doi : 10.1145/317275.317286 . S2CID 15485257.