*4.1.1. D\* Lite algorithm*

*f*(*s*) = *g*(*s*) + *ε* ∗ *h*(*s*). (6)

Hence, the computed path is no longer optimal. Moreover, each search iteration is no longer guaranteed to expand searching each cell at most once like A\* due to decreasing *ε*. However, to maintain efficiency and ensure suboptimal bound, ARA\* introduces INCONS list to store

)), (7)

∈*pred*(*s*′ ) (*cost*(*s*′ , *s*′′ ) + *g*(*s*′′

) > min*s*′′

local inconsistent cells as specified function:

*g*(*s*′

**Figure 7.** Pseudo code of ARA\* algorithm.

72 Advanced Path Planning for Mobile Entities

In goal-directed navigation task, with cell decomposition approximation, the robot always observes a limited range of eight connected grids. The robot is able to move in eight directions with cost one, and it assumes that unknown cells are traversable. The robot follows the initial calculated path to goal and encounters blockage cells; it must be able to process only cells that are relevant to compute the new path. The challenge is to find these relevant cells. **Figure 8** illustrates this idea.

Note that grey cells (in **Figure 8**) are expanded cells to compute initial path or new path when robot detects blockage cell in purple at position yellow cell. Darker grey cells are processed multiple times. As can be seen, total expanded cells in replanning process of D\* Lite is 61, whereas expanded cells of rerunning A\* are 75.

D\* Lite [19] is developed directly from Lifelong Planning A\* (LPA\*) [20] for applying on mobile robot, which is a combination of Dynamic SWSF-FP [21] and A\* [8]. Therefore, D\* Lite possesses these properties:


**Figure 8.** MP simulation on grid environment (a) Initial path, (b) Reset A\* and (c) D\* Lite.

• Incremental: D\* Lite inherits incremental search property from Dynamic SWSF-FP; it reuses information from previous search to repair path in a series of similar searches, which is much efficient than calculating path from scratch.

The pseudo code for D\* Lite is shown in **Figure 9**.

In general, the pseudo code of D\* Lite maintains three invariants:


At the first run, D\* Lite is exactly like A\*. It guarantees to expand cells at most twice in each search routine due to the concept of one-step look-ahead estimated goal distance r *hs*(*s*) that is inherited from LPA\*. r *hs*(*s*) leads to the terms of over-consistent cell *g*(*s*) > *rhs*(*s*) and under-consistent cell *g*(*s*) < *rhs*(*s*). Intuitively, these concepts help propagating the inconsistency of cells to their neighbours. To maintain Invariants 1 and 2, ComputePath() function updates rhs-values of changed cells, checks their consistency and decides their membership of OPEN list accordingly. Invariant 3 is maintained by updating the OPEN list keys while expanding (**Figure 9**, lines 17–18). ComputePath() stops when the smallest key of OPEN list is less than *Key*(*sstart*) or *sstart* is consistent; this criteria indicates that cell expansion has reached target *sstart*. Theorems of D\* Lite are described detail in [19].
