*2.3.2. Continuous to discrete approximation*

**2.2. Problem statement formulation**

**Table 1.** Different families of D\* Lite variants.

66 Advanced Path Planning for Mobile Entities

input over time interval, {*u*(*t*

environment by following these basic terms.

*2.3.1. Configuration space (C-space) transformation*

**2.3. Environment representation**

points in state space W.

the state *x*.

**2. Boundary values**: *xinit* ∈ *W* and *Xgoal* ⊂ *W*.

**Problem scenarios Algorithms** Moving target MTD\* Lite [11]

The general MP problem can be formulated as the following six terms:

Any-angle movement Field D\* [3], incremental Phi\* [15]

Performance improvement D\* Lite with Reset [16]

**1. State space**: the configuration space of the robot transformed from physical space, W.

Fast/suboptimal Anytime D\* [12], truncated D\* Lite [13], anytime Truncated D\* [14]

straints are satisfied from robot state *x*; it can output binary or real values.

*<sup>c</sup>*)| *<sup>t</sup>* <sup>&</sup>lt; *<sup>t</sup>*

to represent physical world information as data structure in computer.

**3. Collision detector:** *D*:*W* → {*true*,  *false*} the function to detect whether the global con-

**4. Input space:** a set U of input, which specifies a complete set of robot operation that affects

**5. Incremental rules:** a set of rules to transition state *x*(*t*) to state *x*(*t* + Δ*t*) when an operation is

General MP is viewed as a search for path (a series of configuration) in state space W that connects start configuration *xinit* to goal configuration region *Xgoal*. The robot is incorporated with a set of global constraints (small discrete headings, velocity, balancing, etc.). We denote *Wfree* as a set of configuration that satisfies global constraints, and the generated path must be in *Wfree*. The incremental rules can be considered as discrete-time response system, and together with input space, it defines possible robot state transitions. Metric can affect heavily to the algorithm's optimality and performance; it indicates the distance between pair of points in topological space. One can construct MP algorithm to deal with specific constraints in certain

This section will describe the transformation of world space to state space. This is the first step to formulate a MP algorithm; it creates an operation environment for MP algorithm and a way

The world space (physical space) is where the robot and obstacles exist; it is a map of the practical world. However, we cannot apply directly MP algorithm to this space due to the

*<sup>c</sup>* < *t* + Δ*t*}. **6. Metric:** a real-valued function *ρ*:*W* × *W* → [0, +∞) that defines the distance between two After transforming world space to C-space, we still cannot apply search-based algorithms to C-space. The problem is that search-based algorithms like A\* or D\* Lite work on graphlike structures; hence, applying search-based algorithms on continuous C-space is intractable. However, other MP algorithm families such as sampling based can apply directly to C-space. Unfortunately, the path optimality and performance of sampling-based algorithms are currently worse than state-of-the-art search-based algorithms.

**Figure 2.** Configuration space of 2DOF robot arm that represents a set of collision-free angles in white and specific object collided in colours (a) Workspace, (b) C-space.

There are two main approaches to discretize C-space into graph-like structure:


In cell decomposition approach, we divide C-space into eight-connected square grid environment with arbitrary resolution. Then we colour all cells that intersect with obstacle configuration with black, and other free cells are white. **Figure 3** illustrates this approach.

This approximation has limited assumptions on obstacle configuration. Therefore, the approach is used widely in practice. However, there is no concept of path optimality, because we can infinitely divide C-space into smaller squares. It is a trade-off between optimality and computation. Cell decomposition in high dimensions is also expensive; it has exponential growth in PSPACE.

In roadmaps approach, the idea is avoiding scanning the entire C-space by computing an undirected graph with "road" edges that are guaranteed to be collision-free. The main methods of this approach are visibility graph [17] and Voronoi diagrams. The examples of the two methods are demonstrated in **Figure 4**.

As can be seen, this approach generates fewer vertices than cell decomposition approach. Visibility graph method tends to generate with vertices that are the vertices of obstacles; this property leads to finding shortest path. However, the visibility graph's roadmaps are close to obstacles; collision is inevitable due to some movement error. Voronoi diagram solves the problem by generating roadmaps that keep robot as far away as possible from obstacles.

also can be unstable in dynamic scenarios; small changes in obstacles can lead to large changes

**Figure 4.** Path topologies of visibility graph and Voronoi diagram methods in roadmap approach (a) Visibility Graph

Search-Based Planning and Replanning in Robotics and Autonomous Systems

http://dx.doi.org/10.5772/intechopen.71663

69

In the following sections, we use cell decomposition approach for search-based algorithms due to its clarity to describe the operation of search-based algorithms and its feasibility to

This section demonstrates one of the most well-known algorithms in graph search family: A\*.

There are three main properties of A\* [8] that are inherited from historical graph search

• **Search tree:** a search tree *T*, which root is the starting cell, stores expanded cells as branches. This tree is capable to extract path to starting cell from any expanded cell *s* in the map. A\*

• **Uniform cost search:** This property includes a data structure *g*(*s*) that stores the cost to

f(s) = *g*(*s*), (1)

travel from starting cell to any cell *s* in the map, which is formulated as

The A\* algorithm's properties are also examined and utilised to use in different cases.

**3. Search-based planning on time-invariant environment**

inherits this tree from breadth-first search algorithm.

in graph.

apply in practice.

method, (b) Voronoi method.

**3.1. A\* algorithm**

algorithms:

Despite this approach constructs efficiently graph representation for search-based algorithm; it is difficult to compute in higher dimension or non-polygonal environment. The approach

**Figure 3.** Cell decomposition approach (a) Original Objects, (b) Encoded Objects into cells.

Search-Based Planning and Replanning in Robotics and Autonomous Systems http://dx.doi.org/10.5772/intechopen.71663 69

**Figure 4.** Path topologies of visibility graph and Voronoi diagram methods in roadmap approach (a) Visibility Graph method, (b) Voronoi method.

also can be unstable in dynamic scenarios; small changes in obstacles can lead to large changes in graph.

In the following sections, we use cell decomposition approach for search-based algorithms due to its clarity to describe the operation of search-based algorithms and its feasibility to apply in practice.
