*3.1. Introduction of Pure Pursuit (PP) Algorithm*

In the PP algorithm, the target point g in tracking path is the target point between the forward-looking distance of the center of the vehicle body and the path. As shown in Figure 3, the target point *g* belongs to one of the points along the entire travel path. The forward-looking distance *Lf* is calculated using Equation (6):

$$L\_f = k\_f \ast \upsilon + L\_{fm} \tag{6}$$

where *k <sup>f</sup>* is the custom speed weight, *υ* is the linear velocity of the mobile robot and *Lf m* is the minimum forward-looking distance limit.

**Figure 3.** The definition of the target point *g* (blue circle) in Pure Pursuit algorithm.

The algorithm uses the PD controller to follow the path calculates the angle deviation according to the current position of the robot and the forward-looking distance point g, and then keeps the robot moving on the trajectory through the PD controller. The control structure block diagram of the PD controller is shown in Figure 4. In the PP algorithm, the forward-looking distance can impact to path tracking accuracy and may cause the mobile robot to oscillate, shown in Figure 5.

**Figure 4.** The control structure block diagram of PD controller.

**Figure 5.** The impact of forward-looking (foresight) distance on generating the tracking error in the Pure Pursuit algorithm. A longer forward-looking distance represents smoother path tracking, and a shorter forward-looking distance give accurate tracking, but the PD controller is more challenging to adjust.
