Eikonal equation
The eikonal equation (from German Eikonal, which is from Greek εἰκών, image[1][2]) is a non-linear partial differential equation encountered in problems of wave propagation, when the wave equation is approximated using the WKB theory. It is derivable from Maxwell's equations of electromagnetics, and provides a link between physical (wave) optics and geometric (ray) optics.
The eikonal equation is of the form
subject to , where is an open set in with well-behaved boundary, is a function with positive values, denotes the gradient and is the Euclidean norm. Here, the right-hand side is typically supplied as known input. Physically, the solution is the shortest time needed to travel from the boundary to inside with being the speed at .
In the special case when , the solution gives the signed distance from .
One fast computational algorithm to approximate the solution to the eikonal equation is the fast marching method.
Physical interpretation
Continuous Shortest Path Problems
The solution to the Eikonal equation
can be interpreted as the minimum amount of time required to travel from to where is the speed of travel and is an exit-time penalty. (Alternatively this can be posed as a minimum-cost-to-exit by making the righthand-side and an exit-cost penalty.)
By assuming that exists at all points it is easy to prove that corresponds to a this time-optimal control problem using Bellman's Optimality Principle and a Taylor expansion.[3] Unfortunately, it is not guaranteed that exists at all points and more advanced techniques are necessary to prove this. This led to the development of Viscosity Solutions in the 1980s by Pierre-Louis Lions and Michael G. Crandall,[4] and Lions won a Fields Medal for his contributions.
Electromagnetic Potential
The physical meaning of the eikonal equation is related to the formula
where is the electric field strength and is the electric potential. There is a similar equation for velocity potential in fluid flow and temperature in heat transfer. The physical meaning of this equation in the electromagnetic example is that any charge in the region is pushed to move at right angles to the lines[clarification needed] of constant potential, and along lines of force determined by the field of the E vector and the sign of the charge.
Ray optics and electromagnetism are related by the fact that the eikonal equation gives a second electromagnetic formula of the same form as the potential equation above where the line of constant potential has been replaced by a line of constant phase and the force lines have been replaced by normal vectors coming out of the constant phase line at right angles. The magnitude of these normal vectors is given by the square root of the relative permittivity. The line of constant phase can be considered the edge of one of the advancing light waves. The normal vectors are the rays the light is traveling down in ray optics.
Computational Algorithms
A myriad of fast and efficient algorithms to solve the Eikonal equation have been developed since the 1990s. Many of these algorithms take advantage of algorithms developed much earlier for shortest path problems on graphs with nonnegative edge lengths.[5] These algorithms take advantage of the causality provided by the physical interpretation and typically discretize the domain using a mesh [6][7][8][9] or regular grid [10][11] and calculate the solution at each discretized point.
Sethian's Fast Marching Method (FMM)[10][11] was the first "fast and efficient" algorithm created to solve the Eikonal equation. The original description discretizes the domain into a regular grid and "marches" the solution from "known" values to the undiscovered regions, precisely mirroring the logic of Dijkstra's Algorithm. If is discretized and has meshpoints, then the computational complexity is where the term comes from the use of a heap (typically binary). A number of modifications can be prescribed to FMM since it is classified as a label-setting method. In addition, FMM has been generalized to operate on general meshes that discretize the domain.[6][7][8][9]
Label-correcting methods such as the Bellman–Ford algorithm can also be used to solve the discretized Eikonal equation also with numerous modifications allowed (e.g. "Small Labels First" [5][12] or "Large Labels Last" [5][13]). Two-queue methods have also been developed[14] that are essentially a version of the Bellman-Ford algorithm except two queues are used with a threshold used to determine which queue a gridpoint should be assigned to based on local information.
Sweeping algorithms such as the Fast Sweeping Method (FSM)[15] are highly efficient for solving Eikonal equations when the corresponding characteristic curves do not change direction very often.[5] These algorithms are label-correcting but do not make use of a queue or heap, and instead prescribe different orderings for the gridpoints to be updated and iterate through these orderings until convergence. Some improvements were introduced such as "locking" gridpoints[14] during a sweep if does not receive an update, but on highly refined grids and higher-dimensional spaces there is still a large overhead due to having to pass through every gridpoint. Parallel methods have been introduced that attempt to decompose the domain and perform sweeping on each decomposed subset. Zhao's parallel implementation decomposes the domain into -dimensional subsets and then runs an individual FSM on each subset.[16] Dextrixhe's parallel implementation also decomposes the domain, but parallelizes each individual sweep so that processors are responsible for updating gridpoints in an -dimensional hyperplane until the entire domain is fully swept.[17]
Hybrid methods have also been introduced that take advantage of FMM's efficiency with FSM's simplicity. For example, the Heap Cell Method (HCM) decomposes the domain into cells and performs FMM on the cell-domain, and each time a "cell" is updated FSM is performed on the local gridpoint-domain that lies within that cell.[5] A parallelized version of HCM has also been developed.[18]
Numerical Approximation
For simplicity assume that is discretized into a uniform grid with spacing .
2D Approximation on a Grid
Assume that a gridpoint has value . A first-order scheme to approximate the partial derivatives is
where
- .
Due to the consistent, monotone, and causal properties of this discretization[5] it is easy to show that if and and then
which means
- .
This solution will always exist as long as is satisfied. Otherwise, a lower-dimensional update must be performed by assuming one of the partial derivatives is :
- .
n-D Approximation on a Grid
Assume that a gridpoint has value . Repeating the same steps as in the case we can use a first-order scheme to approximate the partial derivatives. Let be the minimum of the values of the neighbors in the directions, where is a standard unit basis vector. The approximation is then
- .
Solving this quadratic equation for yields:
- .
If the discriminant in the square root is negative, then a lower-dimensional update must be performed (i.e. one of the partial derivatives is ).
If then perform the one-dimensional update
- .
If then locate the largest for . Use the remaining values to perform an dimensional update.
Mathematical description
An eikonal equation is one of the form
The plane can be thought of as the initial condition, by thinking of as We could also solve the equation on a subset of this plane, or on a curved surface, with obvious modifications.
The eikonal equation shows up in geometrical optics, which is a way of studying solutions of the wave equation . In geometric optics, the eikonal equation describes the phase fronts of waves. Under reasonable hypothesis on the "initial" data, the eikonal equation admits a local solution, but a global smooth solution (e.g. a solution for all time in the geometrical optics case) is not possible. The reason is that caustics may develop. In the geometrical optics case, this means that wavefronts cross.
We can solve the eikonal equation using the method of characteristics. One must impose the "non-characteristic" hypothesis along the initial hypersurface , where H=H(x,p) and p=(p1,...,pn) is the variable that gets replaced by ∇u. Here x=(x1,...,xn) = (t,x').
First, solve the problem , . This is done by defining curves (and values of on those curves) as
- Note that even before we have a solution , we know for due to our equation for .
That these equations have a solution for some interval follows from standard ODE theorems (using the non-characteristic hypothesis). These curves fill out an open set around the plane . Thus the curves define the value of in an open set about our initial plane. Once defined as such it is easy to see using the chain rule that , and therefore along these curves.
We want our solution to satisfy , or more specifically, for every , Assuming for a minute that this is possible, for any solution we must have
- ,
and therefore
In other words, the solution will be given in a neighborhood of the initial plane by an explicit equation. However, since the different paths , starting from different initial points may cross, the solution may become multi-valued, at which point we have developed caustics. We also have (even before showing that is a solution)
It remains to show that , which we have defined in a neighborhood of our initial plane, is the gradient of some function . This will follow if we show that the vector field is curl free. Consider the first term in the definition of . This term, is curl free as it is the gradient of a function. As for the other term, we note
The result follows.
Applications
- A concrete application is the computation of radiowave attenuation in the atmosphere.
- Finding the shape from shading in computer vision.
- Fast Eikonal solvers on triangulated manifolds [6][7]
- Geometric optics
- Continuous shortest path problems
- Image segmentation
See also
References
- Paris, D. T. and Hurd F.K., Basic Electromagnetic Theory, McGraw-Hill 1969, pg. 383–385.
- Arnold, V. I., Lectures on Partial Differential Equations, Springer 2004, 2nd Edition, pg. 2–3.
External links
Notes
- ^ The Oxford English Dictionary. 2nd ed. 1989. OED Online. Oxford University Press. 4 April 2000 http://dictionary.oed.com/cgi/entry/00292404
- ^ Evans, L. C., Partial Differential Equations, AMS Graduate Texts in Mathematics, Vol. 19, pg. 93.
- ^ Z. Clawson, A. Chacon, and A. Vladimirsky. Causal Domain Restriction for Eikonal Equations, SIAM Journal on Scientific Computing 36 (5), A2478-A2505, 2014. [1]
- ^ M. Bardi, I. Calpuzzo-Dolcetta. Optimal Control and Viscosity Solutions of Hamilton-Jacobi-Bellman Equations. Birkhauser, Cambridge, MA, 1997.
- ^ a b c d e f A. Chacon and A. Vladimirsky. Fast two-scale methods for Eikonal equations. SIAM J. on Scientific Computing 34/2: A547-A578, 2012. [2]
- ^ a b c R. Kimmel and J. A. Sethian. Computing Geodesic Paths on Manifolds in the Proceedings of National Academy of Sciences, 95(15):8431-8435, July, 1998. [3]
- ^ a b c A. M. Bronstein, M. M. Bronstein, and R. Kimmel. Weighted distance maps computation on parametric three-dimensional manifolds, Journal of Computational Physics.[4] 225(1):771-784, 2007.
- ^ a b J.A. Sethian and A. Vladimirsky. Fast methods for the Eikonal and related Hamilton-Jacobi equations on unstructured meshes. Proc. Natl. Acad. Sci. USA 97/11: 5699-5703, 2000. [5]
- ^ a b D.S. Yershov, S.M. LaValle. Simplicial Dijkstra and A* Algorithms: From Graphs to Continuous Spaces. Advanced Robotics, Vol. 26, no. 17, pp. 2065-2085, 2012. [6]
- ^ a b J.A. Sethian. A Fast Marching Level Set Method for Monotonically Advancing Fronts, Proc. Nat. Acad. Sci., 93, 4, pp.1591--1595, 1996. [7]
- ^ a b J.N. Tsitsiklis. Efficient algorithms for globally optimal trajectories, IEEE Trans. Automat. Control, 40, pp. 1528–1538, 1995. [8]
- ^ D.P. Bertsekas. A Simple and Fast Label Correcting Algorithm for Shortest Paths, Networks, Vol. 23, pp. 703-709, 1993. [9]
- ^ D.P. Bertsekas, F. Guerriero, and R. Musmanno. Parallel Asynchronous Label Correcting Methods for Shortest Paths, J. of Optimization Theory and Applications, Vol. 88, pp. 297-320, 1996. [10]
- ^ a b S. Bak, J. McLaughlin, and D. Renzi, Some improvements for the fast sweeping method, SIAM J. on Sci. Comp., 32(5), 2010. [11]
- ^ H. Zhao, A fast sweeping method for Eikonal equations, Math. Comp., 74 (2004), pp. 603–627. [12]
- ^ H.K. Zhao. Parallel Implementations of the Fast Sweeping Method, J. Comput. Math. 25, pp. 421-429, 2007. [13]
- ^ M. Detrixhe, F. Gibou, and C. Min, A parallel fast sweeping method for the Eikonal equation, Journal of Computational Physics, v.237, pp.46-55, 2013. [14]
- ^ A. Chacon and A. Vladimirsky. A parallel two-scale method for Eikonal equations. SIAM J. on Scientific Computing 37/1: A156-A180, 2015. [15]