As I understand it, the first time D * starts, it finds the same path as A *, with almost the same runtime. However, when a node changes its edge value or nodes are added, A * will recompose the ALL path, and D * will simply reconfigure the inconsistent nodes a second time, not the whole thing.
The Anthony Stentz D * algorithm (source document here ) is pretty much out of date with derivatives of its work. D * Lite and LPA * are the most common and much easier to code / implement.
Regarding real-world experience, Joseph Carsten and Art Rankin of the NASA Jet Propulsion Laboratory installed the Field D * version using the D * Lite elements on the Spirit and Opportunity rovers (slide show of rovers using D * here ). In February 2007, it was used for autonomous navigation of the rover.
alt text http://asm.arc.nasa.gov/Gallery/images/generic/rover.jpg
Apparently, D * is really useful in the field of robotics, because the built-in robot sensors constantly overestimate the values โโof the boundaries. That would make it a โbattle testedโ in my opinion.
Similarly, I found another technical paper that mentions the use of the D * Lite algorithm in Mobile Gaming.
I will end this answer by stating that I have never implemented D * before, only A *. Due to the significant increase in complexity, I would say that D * (or D * Lite) should be used only when significant and frequent changes occur on the chart. You described your position as similar to this, so I would say, of course, for D * Lite. If NASA uses it, you can safely bet that it has been thoroughly investigated.
mmcdole
source share