## 4 Approach
### Iterative Sampling in the Neighborhood
The second part can be expressed as

\[cost_{target}(q^{mm})=\sum\lvert q_{i}\ -q^{t}_{i}\rvert, \tag{6}\]

Figure 7: (a) Selected keypoints for the mobile manipulator. (b) Calculated cost between the path and the mobile manipulator. (c) A collision-free tunnel generated with the path. (d) The configuration of the manipulator along with the tunnel. where \(q_{i}\) is the \(i\)th element of the configuration \(q^{mm}\) and \(q_{i}^{t}\) is the \(i\)th element of the target configuration \(q_{i}^{mm}\). Since the environment in which \(q_{g}^{mm}\) is located is more complex, the iterative sampling is started at \(q_{g}^{mm}\), and so \(q_{i}^{mm}\) is the target \(q_{i}^{mm}\). The importance of these two components varies at different stages; when the mobile manipulator is close to \(q_{g}^{mm}\), \(cost_{path}\) is more important because the environment is complex. When the mobile manipulator is close to \(q_{t}^{mm}\), there is no need to stay close to the path, and \(cost_{target}\) is more important. Therefore, a linear combination of \(cost_{path}\) and \(cost_{target}\) is used to represent the \(cost\)

\[cost(q^{mm})=k_{1}*cost_{path}(q^{mm})+k_{2}*cost_{target}(q^{mm}), \tag{7}\]

where \(k_{1}\) and \(k_{2}\) are coefficients associated with the value of the remaining length of \(\Pi^{ee}\). After each successful sample, the last element of \(\Pi^{ee}\) is deleted to make the mobile manipulator to move to the target configuration. Finally, simple post-processing of the path is performed to obtain a smoothed path for the mobile manipulator. ```
1 Input:\(q_{mml}^{mm}\), \(\Pi^{ee}\)
2 Output:\(q_{mml}^{mm}\)
3\(Q\) is a set of \(q\)
4\(i\gets 0\)
5 while\(i\)<NumOfAlterdo
6\(q_{mml}^{mm}\leftarrow\) SAMPLEQ(\(q_{mml}^{mm}\))
7 ifISMMCONFIGVALID(\(q_{mml}^{mm}\)) then
8\(Q\gets Q\cup\{q_{mml}^{mm}\}\)
9\(i\gets i+1\)
10 endif
11 endwhile
12 forall\(q\in Q\)do
13\(cost\leftarrow\) CALCOST(\(q\), \(\Pi^{ee}\))
14 ifcost < mincostthen
15\(q_{mml}^{mm}\gets q\)
16\(mincost\leftarrow\)cost
17 endif
18 endfor
19 delete the last element of \(\Pi^{ee}\)
```

**Algorithm 4** SAMPLEINNEIGHBOURHOOD()

## 5 Simulations and Discussion

### Case Description

In this section, we conduct simulations on the proposed methods for different scenarios and cases. All methods are implemented in C++ and all experiments are run on an Intel i5 9400F at 2.9 GHz with 16 GB of RAM. All simulation experiments are conducted with a Robot Operating System (ROS) [40]. We consider the complex 3D scenario (scenario C1) shown in Figure 7(a) and the tunnel-like 3D scenario (scenario C2) shown in Figure 7(b). In scenario 1, we consider four different cases with two different starting configurations, (0, 0, 0, 0, 0, 0, 0, 0) and (0.6, 0, 0, 0, 3.14, 0, 0, 0), and two different goal points: (1.28, 0, 0.65) and (1.28, 0, 0.75) (denoted as S1, S2, G1, and G2, respectively). In scenario 2, we consider two different cases, they have two starting configurations that are the same as scenario C1, and they have the same goal point (1.31, \(-\)0.1, 0.65) (denoted as G3). For the above cases, we apply different algorithms for the simulation, including the traditional RRT using end-effector path and inverse kinematics, separate planning for the mobile base and the manipulator and combining the paths, separate planning but planning for the manipulator when the mobile base is at the target position, the proposed hybrid sampling-based path planning, and its variant that only use \(cost_{target}\) as cost when sampling in the neighborhood (denoted as RRT, IK, SP-1, SP-2, HSPP-pt, and HSPP-t). Since the RRT, IK, SP-1, and SP-2 methods also require the goal configuration of the mobile manipulator as a known condition to generate a path, we first test the performance of the proposed Sampling-based Configuration Generation (SCG) method and use it to generate the goal configuration for all methods. ### Results and Discussion

First, we execute 1000 runs for each goal point to get the performance of the proposed Sampling-based Configuration Generation (SCG) method.