stringtranslate.com

Método de marcha rápida

El método de marcha rápida [1] es un método numérico creado por James Sethian para resolver problemas de valores en la frontera de la ecuación de Eikonal :

Normalmente, un problema de este tipo describe la evolución de una superficie cerrada en función del tiempo con la velocidad en la dirección normal en un punto de la superficie de propagación. Se especifica la función de velocidad y el tiempo en el que el contorno cruza un punto se obtiene resolviendo la ecuación. Alternativamente, se puede considerar como la cantidad mínima de tiempo que tomaría llegar a partir del punto . El método de marcha rápida aprovecha esta interpretación de control óptima del problema para construir una solución a partir de la "información conocida", es decir, los valores límite.

El algoritmo es similar al algoritmo de Dijkstra y utiliza el hecho de que la información sólo fluye hacia afuera desde el área de siembra. Este problema es un caso especial de métodos de conjunto de niveles . Existen algoritmos más generales pero normalmente son más lentos.

Extensiones para resolver dominios no planos (triangulados)

para la superficie y , fueron presentados por Ron Kimmel y James Sethian .

Algoritmo

Primero, supongamos que el dominio ha sido discretizado en una malla. Nos referiremos a los puntos de malla como nodos. Cada nodo tiene un valor correspondiente .

El algoritmo funciona igual que el algoritmo de Dijkstra, pero difiere en cómo se calculan los valores de los nodos. En el algoritmo de Dijkstra, el valor de un nodo se calcula utilizando uno solo de los nodos vecinos. Sin embargo, al resolver la PDE en , se utilizan entre y de los nodos vecinos .

Los nodos se etiquetan como hasta ahora (aún no visitados), considerados (visitados y valor asignado provisionalmente) y aceptados (visitados y valor asignado permanentemente).

  1. Asigne a cada nodo el valor de y etiquételos hasta el momento ; para todos los nodos configurados y etiquetados como aceptados .
  2. Para cada nodo lejano , utilice la fórmula de actualización de Eikonal para calcular un nuevo valor para . Si luego establece y etiqueta como se considera .
  3. Sea el nodo considerado con el valor más pequeño . Etiquetar como aceptado .
  4. Para cada vecino que no sea aceptado, calcule un valor tentativo .
  5. Si entonces se establece . Si fue etiquetado hasta el momento , actualice la etiqueta para considerarlo .
  6. Si existe un nodo considerado , regrese al paso 3. De lo contrario, finalice.

Ver también

Enlaces externos

Notas

  1. ^ JA Sethian. Un método de establecimiento de niveles de marcha rápida para frentes que avanzan monótonamente, proc. Nacional. Acad. Sci., 93, 4, págs. 1591-1595, 1996. [1]