Efficient Path Planning in Narrow Passages for Robots With Ellipsoidal Components

Path planning has long been one of the major research areas in robotics, with probabilistic roadmap (PRM) and rapidly-exploring random trees (RRT) being two of the most effective classes of planners. Though generally very efficient, these sampling-based planners can become computationally expensive in the important case of “narrow passages.” This article develops a path planning paradigm specifically formulated for narrow passage problems. The core is based on planning for rigid-body robots encapsulated by unions of ellipsoids. Each environmental feature is represented geometrically using a strictly convex body with a $\mathcal {C}^{1}$ boundary (e.g., superquadric). The main benefit of doing this is that configuration-space obstacles can be parameterized explicitly in closed form, thereby allowing prior knowledge to be used to avoid sampling infeasible configurations. Then, by characterizing a tight volume bound for multiple ellipsoids, robot transitions involving rotations are guaranteed to be collision free without needing to perform traditional collision detection. Furthermore, by combining with a stochastic sampling strategy, the proposed planning framework can be extended to solving higher dimensional problems, in which the robot has a moving base and articulated appendages. Benchmark results show that the proposed framework often outperforms the sampling-based planners in terms of computational time and success rate in finding a path through narrow corridors for both single-body robots and those with higher dimensional configuration spaces. Physical experiments using the proposed framework are further demonstrated on a humanoid robot that walks in several cluttered environments with narrow passages.


I. INTRODUCTION
Sampling-based planners such as PRM [2] and RRT [3] (and a multitude of their extensions, e.g., [4], [5]) have demonstrated remarkable success in solving complex robot motion planning problems.These frameworks generate state samples randomly and perform explicit collision detection to assess their feasibility.These methods have had a profound impact both within robotics and across other fields such as molecular docking, urban planning, and assembly automation.
It is well known that despite the great success of these methods, the "narrow passage" problem remains a significant challenge.Generally speaking, when there is a narrow passage, Parts of materials from this article were presented in 2018 International Workshop on Algorithmic Foundations of Robotics (WAFR), Merida, Mexico [1].
Hongtao Wu is with Laboratory for Computational Sensing and Robotics, Johns Hopkins University, Baltimore, MD 21218, USA.
Karen L. Poblete is with Epic Systems, Verona, WI 53593, USA.Qianli Ma is with Motional Inc., Pittsburgh, PA 15207, USA.* Address all correspondence to this author.
an inordinate amount of computational time is spent on the random state samples and edges that eventually will be discarded.To increase the probability of sampling and connecting valid configurations in a narrow passage, various methods have been proposed such as [6]- [8] (Sec.II-A provides more detailed reviews on narrow passage problems).In this article, however, the narrow passage problem is addressed through an explicit closed-form characterization of the boundary between free and in-collision regions.The first goal of this paper is to: 1. Extend the previous methods of parameterizing the free space for single-body ellipsoidal robots avoiding ellipsoidal obstacles [9].A more general case is studied where the obstacles are represented by unions of strictly convex bodies with C1 boundaries.
In our proposed path planning framework, the robot is encapsulated by a union of ellipsoids.The configuration spaces to be considered are SE(d) and SE(d) × (S 1 ) n for rigid-body and articulated robots, respectively 1 .Ellipsoids have a wide range of applications in encapsulating robots.For example, the projection contour of a humanoid robot can be tightly encapsulated by an ellipse since its shoulders are narrower than the head [10] (Fig. 1a).In computational crystallography, it is natural to approximate a protein molecule by a momentof-inertia ellipsoid, which simplifies the complex geometric models and maintains the physical information of the protein [11] (Fig. 1b).Moreover, superquadrics are chosen as examples to represent environmental features.This family of shapes generalizes ellipsoids by adding freedoms in choosing the power of the exponents rather than restricting to quadratics.It represents a wider range of the complex shapes (e.g., cuboids, cylinders, etc) while also requiring only a few parameters [12].
When a robot is fixed at a certain orientation and internal joint angles, a "slice" of the configuration space (C-space) is defined by the Minkowski sums between the rigid body parts and the obstacles in the workspace [13], [14], denoted here as a "C-slice" [15].(Sec.II-B reviews the literature in details on the computations of Minkowski sums).Once the C-space obstacles (C-obstacles) are computed, the complement regions between the planning arena 2 and the union of C-obstacles is the free space that allows the robot to travel through safely.Consequently, collision-free samples can be generated within this collision-free C-space.However, if one seeks to connect such samples using current sampling-based planners like PRM   or RRT, explicit collision checking is still required.Therefore, the second goal of this article is to:

Develop guaranteed safe and efficient methods for connecting configurations between different C-slices without performing explicit collision checking between pairwise bodies.
A "bridge C-slice" idea is proposed as a local planner to guarantee safe transitions between different C-slices.The name suggests that a new C-slice is built as a bridge between two adjacent C-slices.To efficiently construct a bridge C-slice, an enlarged void for each ellipsoidal robot part is computed in closed form.Here, a "void" is the free space that fully contains the robot part, ensuring that it moves without collisions.A sweep volume is then constructed to enclose the robot at all possible intermediate configurations during the transition.
All the above methods are combined into a path planning algorithm called "Highway RoadMap (HRM)".This planner is deterministic and suitable for rigid-body planning problems.It is known that traditional deterministic planners suffer from the curse of dimensionality burden in the case of articulated robots.Therefore, the third goal of this article is to: 3. Develop an effective method to tackle the exponential computational complexity for the planning of articulated robots.
A hybrid algorithm called "Probabilistic Highway RoadMap (Prob-HRM)" is proposed here to make planning in higher dimensional configuration spaces tractable.It randomly samples the rotational components (i.e., the base orientation and internal joint angles) and takes advantage of the explicit parameterizations of free space in each C-slice from HRM.
This article extends the conference version [1] on the same topic, and has significant updates.Comparing to the conference paper, the key contributions of this article are: • Extend the graph construction procedure in each C-slice to 3D multi-body case; • Introduce a novel "bridge C-slice" method to connect vertices between adjacent C-slices; • Propose a hybrid planner which integrates the advantages of sampling-based planners on higher dimensional articulated robot planning problems; • Conduct rigorous benchmark simulations and physical experiments in challenging environments to evaluate the proposed planning framework.
These extensions are essential since more general 3D and articulated robot models are implemented.The benchmark and physical experimental settings are also more realistic.The rest of this article is organized as follows.Section II reviews related literature.Section III provides mathematical foundations.Section IV extends our previously proposed HRM planner to the case of 3D multi-body robot with ellipsoidal components.The novel "bridge C-slice" method is then introduced.Section V introduces the hybrid Prob-HRM planner.Section VI conducts extensive benchmarks with some popular and successful sampling-based planners.In Section VII, our planning framework is demonstrated by physical experiments in real world, which solve walking path planning problems for a humanoid robot in cluttered environments.We discuss the advantages and limitations of our proposed framework in Section VIII.Finally, we conclude in Section IX.

II. LITERATURE REVIEW
This section reviews related work on the key topics that this article addresses.

A. The challenge of narrow passages
One of the key factors that affects the performance of sampling-based planners is the random state sampling strategy.To tackle the "narrow passage" challenge, various sampling strategies have been studied throughout these years, many of which try to capture the local features around obstacles.
The bridge test [6] finds a collision-free middle point between configurations that are in collision with the obstacles.UOBPRM [16] searches for collision-free samples from a configuration in collision by moving in different ray directions.In [8], a Bayesian learning scheme is used to model sampling distributions.It subsequently updates the previous samples by maximizing the likelihood from the region that has higher probability in forming a valid path within the narrow passage.Ideas about generating samples on the "medial axis" were proposed in [17], [18].Each sampled state, regardless of free or in-collision, is retracted to the medial axis of free space.The retraction direction is selected between the sampled state and its nearest neighbor on the boundary of free space.The resulting samples stay far from obstacles.And the usage of in-collision samples is able to detect regions close to narrow passages.The proposed framework in this article also attempts to generate vertices that stay away from obstacles as far as possible.A similar idea is used in the "maximize clearance" sampler, i.e., PRM(MC), in the benchmark studies of this article.For each valid sample, the sampler searches a new sample close-by but with larger distance to the obstacles.We use PRM(MC) for comparisons since it is implemented on the well-known Open Motion Planning Library (OMPL) [19].This provides a standardized way to benchmark with other sampling-based planning algorithms as well as samplers.
Other methods combine the advantages of different kinds of algorithms.For example, Toggle PRM [20] simultaneously maps both free space and obstacle space, enabling an augmentation from a failed connection attempt in one space to the other.Spark PRM [7] grows a tree inside the narrow passage region to connect different parts of the roadmap on different ends of the region.Retraction-based RRT [21] tries to retract initial samples into more difficult regions, so as to increase probability of sampling near narrow passages.More recently, a reinforcement learning method is applied to enhance the ability to explore local regions where the tree grows [22].
Hybrid planner [15] combines a random sampling strategy with Minkowski sums computations, which increases the probability of identifying narrow regions.In this article, we use an approach with some similarities to the Prob-HRM planner to randomly sample the robot shapes.Nevertheless, the differences are significant.We propose a closed-form Minkowski sum expression for continuous bodies, as compared to pointbased Minkowski sums for polyhedral objects.To generate valid vertices, they directly choose the points on C-obstacle boundary, but we generate in the middle of free space in a more uniform way.And to connect different C-slices, they add a new vertex and search for paths on the C-obstacle boundaries, but we instead generate a new slice based on an enlarged void.

B. Computations of Minkowski sums
The Minkowski sum is ubiquitous in many fields such as computational geometry [23], robot motion planning [13], control theory [24], etc.Despite its straightforward definition, which will be given in Sec.III, computing an exact boundary of Minkowski sum between two general non-convex polytopes in R 3 can be as high as O(N 3  1 N 3 2 ), where N 1 and N 2 are the complexities (i.e., the number of facets) of the two polytopes.Therefore, many efficient methods decompose the general polytopes into convex components [25], since the Minkowski sums between two convex polytopes can achieve O(N 1 N 2 ) complexity [26].Another type of methods is based on convolutions of two bodies, since Minkowski sum of two solid bodies is the support of the convolution of their indicator functions [27].A simple approximated algorithm [28] is proposed that avoids computing 3D arrangement and winding numbers via collision detection.An exact Minkowski sum for polytopes containing holes is proposed using convolution [29].In addition, point-based methods avoid convex decomposition [30].The major advantages are the ease of generating points than meshes and the possibility of parallelisms [31].An exact closed-form Minkowski sum formula for d-dimensional ellipsoids was introduced [32].And in [33], a parameterized ellipsoidal outer boundary for the Minkowski sum of two ellipsoids is proposed.This article studies a more general case when one body is an ellipsoid and the other is a strictly convex body with a C 1 boundary (e.g., superquadric).

C. Ellipsoids and superquadrics for object representation
Besides using polyhedra for object representations, other geometric primitives such as ellipsoids and superquadrics also play an important role due to their simple algebraic characterizations.Recently, in many robotic applications, they are good candidates to encapsulate objects [34], [35].
A 3D ellipsoid in a general pose only needs 9 parameters: 3 for the shape (i.e., semi-axes lengths) and 6 for the pose.Algorithms related to ellipsoids are studied extensively [36], [37].The minimum volume enclosing ellipsoid (MVEE), which is characterized as a convex optimization problem [38], is widely used to encapsulate a point cloud.The studies of algebraic separation conditions for two ellipsoids provides very efficient algorithms to detect collisions in both static and dynamic cases [39], [40].Another attractive attribute of the representation using ellipsoids is the existence of efficient procedures of computing their distance [41], [42].Once an ellipsoid is fully contained in another, the volume of its limited available motions is computed explicitly [43].
Superquadrics can be seen as an extension of ellipsoids, with the two additional exponents determining the sharpness and convexity [12].They are able to represent a wider range of geometries such as cube, cylinder, octahedron, etc.Using optimization or deep learning techniques, point cloud data can be segmented and fitted by unions of superquadrics [44], [45].Proximity queries and contact detection are useful applications of this geometric model [46], [47].

III. MATHEMATICAL PRELIMINARIES
This section provides the mathematical preliminaries for developing the new path planning paradigm in this article.

A. Minkowski sum and difference between two bodies
The Minkowski sum and difference of two point sets (or bodies) centered at the origin, i.e., P 1 and P 2 in R d , are defined respectively as [48] When computing the boundary in which the two bodies touch each other externally (i.e., their contact space), we refer to the calculation of ∂[P 1 ⊕ (−P 2 )], where −P 2 is the reflection of P 2 as viewed in its body frame [28].Note that when P 2 is centrally symmetric, such as ellipsoids and superquadrics that this article focuses on, the Minkowski sum boundary and contact space are equivalent.Moreover, when the bodies are non-convex, using the fact that their Minkwoski sums can be obtained via convex decomposition.

B. Implicit and parametetric surfaces
Assume that S 1 is a strictly convex body bounded by a C 1 hyper-surface embedded in R d .The implicit and parametric forms of its surface can be expressed as where Φ(•) is a real-valued differentiable function of x 1 ∈ R d and f is a differentiable d-dimensional vector-valued function of surface parameters Let E 2 be an ellipsoid in R d in general orientation, with semi-axis lengths a 2 = [a 1 , a 2 , ..., a n ] ⊤ .Its implicit and explicit expressions are where is the shape matrix of E 2 , R 2 ∈ SO(d) denotes the orientation of E 2 , and Λ(•) is a diagonal matrix with the semi-axis length a i at the (i, i) entry.
One class of strictly convex bodies meeting the conditions stated earlier include those with specific kinds of superquadric boundaries.The implicit equations in the 2D and 3D cases are given by where a, b, c are the semi-axes lengths, and ǫ, ǫ 1 , ǫ 2 ∈ (0, 2) are the exponents that ensure strict convexity.

C. Closed-form Minkowski operations between an ellipsoid and a general convex differentiable surface
It has been shown previously in [32] that the Minkowski sum and difference between two ellipsoids can be parameterized in closed-form.The expression can be extended when one ellipsoid is substituted by S 1 [1].The general simplified form for the Minkowski sum can be computed as where ∇ x1 Φ(x 1 ) is the gradient of S 1 at x 1 .The conditions that S 1 is strictly convex and its boundary is C 1 ensure that the gradient exists and that there is never division by zero when using Eq. ( 7). Figure 2 illustrates the geometric interpretation of the computational process.Detailed derivations were presented in [1].

D. The minimum volume concentric ellipsoid (MVCE) enclosing two ellipsoids with the same center
When two ellipsoids are fixed at the same center, a "minimum volume concentric ellipsoid (MVCE)" can be computed in closed form as follows.
Given two d-dimensional ellipsoids E a and E b with semiaxis lengths a and b respectively.One ellipsoid (e.g., E b ) can be shrunk into a sphere (E ′ b ) via the affine transformation Then the shape matrix of E a in shrunk space, i.e., E ′ a , can be computed as Using singular value decomposition (SVD), its semi-axis lengths and orientation, i.e., a ′ and R ′ a , can be obtained respectively.The shape matrix of their MVCE, i.e., E m , is obtained as The computational procedure is visualized in Fig. 3 for the 3D case.The idea here is inspired by [36], which provides equivalent computations for a maximum volume concentric ellipsoid covered by two ellipsoids.
Furthermore, this process can be applied iteratively if there are multiple concentric ellipsoids.For example, the MVCE that enclose the previous two ellipsoids, along with the next ellipsoid, can be enclosed by a new MVCE.The final resulting ellipsoid encapsulates all the original set of ellipsoids, which is denoted as a tightly-fitted ellipsoid (TFE).

E. Superquadric model fitting to point cloud data
Given a set of m 3D points {x i = [x i , y i , z i ] ⊤ , i = 1, ..., m}, a superquadric model can be approximated by minimizing [45], [49] where Φ(•) is shown in Eq. ( 6), is the transformed data point as viewed in the body frame of the superquadric, and R ∈ SO(3) and t ∈ R 3 are the orientation and center of the superquadric, respectively.The factor abc is added here in order to minimize the volume of the fitted superquadric body.Similarly, for the 2D case, the corresponding nonlinear optimization problem can be formulated as where Φ(•) is now referred to Eq. ( 5) and θ is the rotational angle of the 2D superellipse.Solving the above optimizations requires good initial conditions.The parameters from minimum volume enclosing ellipsoid (MVEE) are used, which can be computed using convex optimization as [38] min where A is the shape matrix of an ellipsoid as in Eq. ( 4).This convex optimization process can also be used to bound the robot parts if they are originally modeled by surface meshes.

IV. HIGHWAY ROADMAP PLANNING ALGORITHM FOR RIGID-BODY ROBOTS WITH ELLIPSOIDAL COMPONENTS
This section introduces the extended "Highway RoadMap (HRM)" algorithm.The extension to the previous work [9] from 2D to 3D rigid-body path planning problems is explained here.Then, a novel vertex connection strategy for configurations with different rotational components is proposed.This strategy can be applied when the robot is constructed by a union of ellipsoids.Also, a procedure to iteratively refine the roadmap is introduced.

A. Overview of the Highway RoadMap planner
The general workflow to construct this graph-based roadmap system is illustrated in Alg. 1.To visually demonstrate the concept, a fully connected graph obtained by running our algorithm in the planar case is shown in Fig. 4.   set of superquadric objects that represent the obstacles and arena.And the endpts input indicates the start and goal configurations of the robot.There are two major input parameters: the number of C-slices N slice and the initial number of sweep lines at each C-slice N line .These two parameters determine the initial resolution of the roadmap.N line will be increased after the initial roadmap is built but the termination condition is not reached.The outputs of the algorithm are the roadmap and path.The roadmap is represented as a graph structure and the path stores an ordered list of valid configurations from the start to the goal.This algorithm will terminate when any of the following conditions is satisfied: a valid path is found, the maximum planning time is reached or the maximum number of sweep lines is generated.
In Alg. 1, Line 1 generates N slice of discrete rotations in SO(d) and stored a priori.Then, the forward kinematics is computed in Line 3 to rotate the rigid-body robot.At each fixed orientation, a subset of the C-space that only contains translation is built, denoted here as a "C-slice", in Line 4. Once all C-slices are constructed, the vertices among adjacent C-slices are connected via a novel idea of "bridge C-slice" in Line 7. Each constructed C-slice only connects to its most adjacent C-slice.In Line 9, a graph search technique is applied to find a path from the starting configuration to the goal.In this work, A * algorithm [50] is used.When the termination condition is not satisfied, the roadmap is refined in an iterative way in Line 11.

B. Discretization of the robot orientations
Line 1 of Alg. 1 pre-computes a set of orientation samples from SO(d).In the 2D case, uniformly distributed angles Using this set of orientation samples, the rotational difference between two adjacent C-slices is smaller compared to nonuniform sample sets.Note that more rotations can be sampled to construct a denser roadmap per the user's choice, i.e., using the strategies proposed in [52], [53].

C. Construction of one C-slice
The detailed procedure to construct one single C-slice (i.e., Line 4 of Alg. 1) is outlined in Alg. 2. Within each C-slice, the closed-form Minkowski sum and difference for the bodies of robot are computed with the obstacles and arena, which results in C obstacle and C arena , respectively (Line 1).By sweeping parallel lines throughout the C-slice with a certain resolution (indicated by N line ), the free portion of the C-slice (C free ) is detected and represented as a set of line segments (Line 2).Furthermore, the middle point of each collision-free line segment is generated as the sampled vertices in the roadmap (Line 3).Then, two vertices in adjacent sweep lines attempt to be connected by collision-free edges (Line 4).
1) Minkowski operations for a multi-body robot: At each C-slice, the closed-form Minkowski operations are computed to generate C-obstacles (i.e., in Line 1 of Alg. 2).The robot is constructed by a finite union of M rigidly connected ellipsoids E 1 , E 2 , . . ., E M .Without loss of generality, E 1 is chosen as the base of the robot.The relative transformations between the base E 1 and other ellipsoidal parts E 2 , E 3 , . . ., E M are defined as g i = (R i , t i ) (i = 2, . . ., M ), respectively.For a multi-link rigid-body robot, these relative transformations can be computed via forward kinematics with all the internal joints being fixed.With this definition and the property from Eq. ( 2), the union of the Minkowski operations for all body parts can be expressed relative to one single reference point, which we choose as the center of the base ellipsoid E 1 .In particular, for each ellipsoidal body E i , a positional offset t i is added to Eq. (7).For practical computational purposes, each Minkowski sum and difference boundary is discretized as a convex polygon in 2D and polyhedral mesh in 3D.The vertices of the discrete boundary are generated using the parametric expression of Minkowski operations.Figure 5 shows the Minkowski sums of a multi-body robot at a fixed orientation (Fig. 5a) and the collision-free C-space in the corresponding C-slice (Fig. 5b).2) A sweep-line process to characterize free regions within one C-slice: The general idea of the "sweep-line" process (i.e., Line 2 of Alg. 2) is analogous to raster scanning -a set of parallel lines is defined to sweep throughout the whole Cslice.Theoretically, these parallel lines can be defined along any direction.But for simplicity of representation and storage, throughout this article, the lines are defined to be parallel to the basis axes of the coordinate system.Specifically, the sweep lines are parallel to x-axis and z-axis for the 2D and 3D case, respectively.Note that, in the 3D case, one could think the process as firstly sweeping planes through the 3D translational space, then sweeping lines within each plane.But in practice, there is no need to compute each plane completely that includes the silhouettes of C-obstacles.Instead, this work approximates each plane by a bundle of sweep lines, which are then used directly to compute free segments via line-obstacle intersections.
To generate collision-free configurations, segments on each sweep line within all C-obstacles and C-arenas are computed, denoted as L O and L A , respectively.Then, the collision-free segments L free can be computed as [9], [54] where M A and M O are numbers of arenas and obstacles respectively.All L free are stored in C free (Line 2 of Alg. 2).Then, collision-free vertices are generated as the middle point of each L free (Line 3 of Alg. 2).Afterwards, more vertices can be generated as an enhancement step.An example is given and applied throughout this article.Denote L j,k as the k th free segment of j th sweep line, with V j,k being its corresponding middle point.Firstly, L j+1,k2 is projected onto L j,k1 .If the projection overlaps with L j,k1 but V j,k1 is not within the overlapping segment, a new vertex within the overlapping segment that is nearest to V j,k1 is added to the vertex list.The resulting new vertex is closer to V j+1,k2 than V j,k1 does, which gives higher chance to make the further connection success, especially in narrow regions.
Once a list of collision-free vertices is generated, the next step is to connect them (Line 4 of Alg. 2).In this work, only two vertices in adjacent sweep lines attempt to be connected with a straight line segment.Assume a candidate connection is attempted between V j,k1 and V j+1,k2 .The connection validity is checked by computing the intersections between the line segment V j,k1 V j+1,k2 and all meshed C-obstacles.If the segment is outside all C-obstacles, the whole edge is guaranteed to be collision-free.Figure 6 shows the decomposed C-space in one slice of a planar case.The horizontal raster lines indicate the collision-free line segments.This method provides a continuous way of validating edges within each C-slice, in the sense that the whole edge is checked without interpolation.

D. Vertex connections between adjacent C-slices
Since each C-slice only represents one orientation of the robot, rotational motions are required when connecting different C-slices.A novel "bridge C-slice" method is proposed (i.e., in Line 7 of Alg. 1) to guarantee that the vertices at different C-slices can be safely connected without performing explicit collision detection.Algorithm 3 outlines this new local planner.The general idea is to construct a new C-slice based on an enlarged ellipsoidal void that encloses the robot at two configurations and compute a translational sweep volume that bounds the whole transition.
1) General ideas of the "bridge C-slice" local planner: Each C-slice only attempts to connect with one adjacent C-slice, which is searched at the beginning in Line 1 of Alg. 3.And the metric that evaluates adjacency is based on the distance of the rotational components.In the 3D case, for instance, the Euclidean distance between the quaternion parameterization of the two bodies is used.The core steps in Alg. 3 are Line 2, which constructs an enlarged tightly-fitted Suppose that the robot is moving from vertex , where R i and t i (i = 1, 2) represents the rotation and translation part of vertex V i , respectively.The idea here is to enclose the motions of each ellipsoidal part of the robot, i.e., E k , between the two configurations by a tightly fitted sweep volume, which is guaranteed to be collisionfree.The intermediate configurations between V 1 and V 2 can be computed using interpolation technique.To construct the sweep volume, a tightly-fitted concentric ellipsoid (TFE) for each E k at all orientations from the interpolated motions is computed, which will be detailed in Sec.IV-D2.The computed TFE is the void that guards the safe motions of the actual ellipsoidal part.Then, the computed TFE translates from t 1 to t 2 following the interpolated path (i.e., {t step }) of E k 's center.The resulting sweep volume bounds the whole transition of E k between the two configurations.To ensure that each computed TFE stays inside the collision-free space, one could query the inside-outside status of all the intermediate translation parts {t step } with all C-obstacles and C-arena.Then, if all the positions from {t step } are valid, the sweep volume is guaranteed to be safe.Therefore, the whole transition for the ellipsoidal part E k is collision-free.
Figure 7a shows the procedure of constructing the sweep volume for an individual body part.And Fig. 7b illustrates the union of sweep volumes that encloses the whole multibody robot in the planar case.The robot base follows a 2D straight line with rotations, and the TFEs of different body parts follow different paths (as show in white curves).In this process, the TFE for each body part translates with respect to its own center individually.This differs from the operations within one C-slice, which requires an offset to the C-obstacle and C-arena boundaries in order to make the robot as a whole rigid body.The reason is that, as Fig. 7b shows, the motion of each robot part is no longer a pure translation.Therefore, the reference points of Minkowski operations for different body  parts have different trajectories to follow.The transition for the whole robot is guaranteed safe if all the individual reference points are within their own free space.
2) Computational procedure for "Tightly-Fitted Ellipsoids": Line 2 of Alg. 3 generates the TFE for each individual part of the robot.The detailed computational procedure is shown in Alg. 4. Firstly, an interpolation of the orientations is computed (Line 1).The number of intermediate orientations is pre-defined by users as the parameter N point .Then, the TFE set, represented as a set of ellipsoids, is initiated as the robot at i th orientation (Line 2).For each interpolated step, the orientations of all the robot parts are updated (Line 4).Finally, the updated TFE for each robot part is generated by computing the minimum volume concentric ellipsoid (MVCE) (introduced in Sec.III-D) of the current TFE and each ellipsoidal part at the new orientation (Line 6).This procedure requires N point iterations so that all the interpolated orientations between two C-slices can be fully encapsulated.

3) Vertex connections based on bridge C-slice calculations:
A "bridge C-slice" is constructed via closed-form Minkowski operations between the computed TFE and obstacles/arena (Line 3 of Alg. 3).Then, the algorithm attempts to connect all the existing vertices to their nearest neighbors within the adjacent C-slice.The nearest neighbors of a vertex are defined as located within the same sweep line (Line 5 of Alg. 3).
For each candidate connection, the robot is transformed according to the interpolated configurations between two vertices (Line 7 of Alg. 3).Note that the rotation part of each interpolated motion needs to match those when computing TFEs (i.e., Line 1 of Alg. 4).This is not hard to achieve for a typical interpolation of rigid-body motions, even when a simultaneous rotation and translation is considered.For example, this article uses interpolations in SE(3) of the form , where τ ∈ [0, 1] parameterizes the transition, g 1 , g 2 ∈ SE(3) are the two end points of the interpolation, exp[•] and log(•) are matrix exponential and logarithm respectively.The rotation part of each step is the same with interpolations on SO(3) since the group operation for the rotation part is not affected by the translation part.
With the C-obstacle and C-arena being computed for the TFE of each individual robot part, the next step is to check the validity of the translation motions of each TFE (Line 8 of Alg. 3).The inside-outside status of this point with all the C-obstacles are queried.If any of the center point is inside any C-obstacle, the validating process is terminated and the corresponding connection is discarded.Otherwise, further checks for other ellipsoidal parts are conducted until all the parts are checked.
The sweep volume gives a conservative encapsulation of the robot transitions between two vertices.But if the orientation samplings are incremental and uniform, there will not be a large rotational difference between adjacent C-slices.Thus, the extra free space inside the sweep volume will be small.

E. Refinement of the existing roadmap
Line 11 of Alg. 1 tries to refine the existing roadmap by increasing the density of sweep lines at each existing Cslice.This process will be triggered when the termination conditions are not satisfied after building and searching the whole roadmap.Detailed procedures are presented in Alg. 5. Firstly, N line is doubled (Line 1).Then, at each C-slice, the same procedure with Alg. 2 that constructs one C-slice with more sweep lines is performed (Line 4).Note that the Cobstacles are stored during the initial construction of C-slices, then they can be directly retrieved without re-computing.Afterwards, the new denser set of vertices attempts to connect with the old vertices within the same C-slice (Line 5).This process firstly locates the vertices that have the same rotation part in the existing roadmap.Then, each new vertex attempts to connect with nearby existing vertex using the same procedure in Line 4 of Alg. 2. Once connections are done, the graph search is performed again (Line 6).
Algorithm 5: RefineExistRoadMap(robot, obstacle, arena, N line , R) The original HRM planner in Sec.IV only designs for the case when robot parts are rigidly connected to each other.This limits its ability to extend to higher dimensional configuration space, i.e., SE(d) × (S 1 ) n .To avoid the exponential computational complexity in concatenating all possible combinations of the base pose and joint angles, a hybrid algorithm is proposed here.The general idea is to combine with samplingbased planners, which are proved to be advantageous in dealing with the "curse of dimensionality".Algorithm 6 shows the general workflow of the proposed hybrid probabilistic Highway RoadMap (Prob-HRM) planner.Prob-HRM mainly differs from the original HRM algorithm in that it utilizes the idea of random sampling for rotational components of the robot, i.e., the orientation of the base part and all joint angles.
The robot with fixed rotational components is called a "shape" [15], and a single C-slice is computed for each robot shape.Since for each shape, the internal joint angles are fixed, computations within the same C-slice in Prob-HRM stay the same with those in HRM, i.e., Line 5 of Alg. 6 are the same with the corresponding subroutine in Alg. 1.Other subroutines are also easy to be ported from the original HRM to Prob-HRM.In particular, the only difference for vertex connections among adjacent C-slices (Line 6) with that in HRM is that the connection attempts are made only for the new C-slice in the current loop.In HRM, as a comparison, the adjacent Cslices are connected in the end after all C-slices are generated.Also, the graph search process is conducted each time after the new C-slice is connected to the graph (as in Line 8).In contrast, for HRM, the graph search is conducted once after the whole graph is built.The new subroutines in Prob-HRM are the random sampling of robot shapes (Line 3) and the computations of forward kinematics (Line 4) in each loop.To sample a shape, the orientation of the robot base is uniformly and randomly sampled [52], followed by random sampling of joint angles within their ranges.After that, the forward kinematics is computed to get the poses of all the robot body parts with respect to the world frame.When N slice reaches a certain number but the termination conditions are still not satisfied, the C-slice exploration is paused and the refinement of the current roadmap is triggered.In practice, this refinement process is triggered when each 60 new C-slices are generated.The refinement procedure in Line 12 is the same with Alg. 5. Once all existing C-slices are refined but the algorithm is still not terminated, new C-slices exploration will be resumed.Note that N slice in HRM is no longer a pre-defined parameter of Prob-HRM since the orientation of the robot base and joint angles are updated online.

VI. BENCHMARKS ON PATH PLANNING FOR ELLIPSOIDAL
ROBOTS IN SUPERQUADRIC ENVIRONMENTS This section compares the performance of the proposed HRM and Prob-HRM planners with some well-known sampling-based motion planners.The proposed planners are written in C++.The baseline sampling-based planners to be compared are sourced from the "Open Motion Planning Library (OMPL)" [19].All the benchmarks are conducted on Ubuntu 16.04 using an Intel Core i7 CPU at 3.40 GHz × 8.

A. Planning environment and robot type settings
Figure 8 shows the planning environments and the solved paths for different robots using our proposed HRM or Prob-HRM planners.Both rigid-body and articulated robots are considered.The rigid-body robots include: • tilted rabbit (Fig. 8a), with 3 body parts being rigidly and serially connected but not co-planar; and • rigid object with 13 parts, resembling a common chair (Fig. 8b).The articulated robots include: • snake-like robot (Figs.8c and 8d) which is serially configured with one movable base and 3 links (totally 9 degrees of freedom); and • tree-like robot (Fig. 8e), which is a tree structure with one movable base in the middle and 3 branches of RRR-typed serial linkages (totally 15 degrees of freedom).The planning environments being considered include: • spatial maze map (Fig. 8a) with more narrow corridors; • home map (Fig. 8b) that is constructed as a 2-floor house with walls, corridors, stairs and tables; • cluttered map (Fig. 8c) with obstacles in arbitrary poses; • narrow window map (Fig. 8d) that includes one wall with a small window available for the robot to move through; • sparse map (Fig. 8e) with only two obstacles.

B. Parameter settings for planners
The compared baseline sampling-based planners from OMPL are PRM [2], Lazy PRM [5], RRT [3], RRT Connect [4] and EST [55].Moreover, different sampling methods for PRM are also considered, including uniform random sampling (Uniform), obstacle-based sampling (OB) [56], Gaussian sampling (Gaussian) [57], bridge test (Bridge) [6] and maximized clearance sampling (MC).We conduct 50 planning trials per planner per map.A time limit of 300 seconds is set for one planning trial for all planners.A planning trial is considered failure if the time exceeds this limit.
1) Parameters for our proposed HRM-based planners: Table I shows the parameters of the HRM-based planners for each scenarios in Fig. 8. N slice is only defined for HRM planner, as explained in Sec.IV-B.For scenes including articulated robot (i.e., snake and tree), N slice is not a pre-defined parameter.The initial value of N line is a parameter defined by user or computed according to the planning scenario.In the following benchmark studies, the latter case is used.Based on the sizes of the obstacles and robot parts, the initial number of lines along a certain direction (i.e., N dir ) is computed by where a dir (A), a(E i ) and a(O j ) denote the semi-axis length of the arena A along direction dir, an ellipsoidal robot part E i and an obstacle O j , respectively.In 3D case, N line is a multiplication of the numbers of lines along x and y axes directions, i.e., N line (N x × N y ).
2) Parameters for sampling-based planners: For samplingbased planners, the choice of a relatively fast collision checker is essential.We choose the open-source and widely-used library, i.e., "Flexible Collision Library (FCL)" [58], as an external plug-in for collision detection between robot parts and obstacles.In particular, a special and efficient collision object from FCL is applied for ellipsoidal parts of the robot.The library uses 12 extreme vertices to outer bound the exact ellipsoidal surface, resultng in a discretized polyhedral model.For superquadrics, their surfaces are discretized as triangular meshes based on the parametric expressions.Then, the bodies can be seen as convex polyhedra.The collision objects are generated a priori, and the collision queries are made online by only changing the poses of each body part.
Since the efficiency and accuracy of collision checking highly depend on the quality of discretization, we provide a statistical evaluation to determine the number of vertices for the discrete superquadric surface.The evaluation metric is based on the relative volume difference between the ground truth and fitted geometries, i.e., where, Vol true and Vol fitted denote the volume of the ground truth and fitted geometries, respectively.Here the ground truth is considered as the superquadric and the fitted object is the convex polyhedron.The volume of a superquadric body can be computed as ), where β(x, y) = 2 π/2 0 sin 2x−1 φ cos 2y−1 φ dφ is the beta function.κ volume are computed for different numbers of vertices on the superquadric surface.For each discretization, 100 random superquadric shapes are generated.Figure 9 shows the statistical plot of the discretization quality for different vertex resolutions.After around 100 vertices, the error starts to be plateaued and below 10%.Therefore, we choose 100 as the number of vertices for the superquadric surface.To make the comparison relatively fair, the same number of 100 vertices are chosen to discretize the closed-form Minkowski sums boundaries in each C-slice for our HRM-based planners.

C. Results and analysis
An ablation study for the "bridge C-slice" subroutine is firstly conducted, followed by benchmark studies among the proposed HRM-based and the sampling-based planners.The benchmark results include the total time and the success rate to solve different planning problems.
1) Ablation study for "bridge C-slice" subroutine: In this study, the HRM planner is treated as the baseline because of its deterministic property.The ablated version replaces the bridge C-slice with direct interpolation between two vertices in different C-slices and collision detection at each intermediate step using FCL.The number of steps is chosen as N point , the same with that in the bridge C-slice process.The average planning time and the number of edges in the graph (i.e., N edge ) are shown in Tab.II.
The original HRM with "bridge C-slice" connects less valid edges than the ablated version which uses direct interpolation   and explicit collision detection.This is mainly due to the fact that the computation of TFE for each robot part is conservative.However, the efficient computations of Minkowski sums for TFEs and point inclusion queries in the bridge C-slice help speed up the planner.Especially in the more complex environments like cluttered and home maps, the proposed HRM runs around two times faster than the ablated version.
2) Benchmark results for SE(3) and higher dimensional planning problems: The comparisons of total running time and success rate in SE(3) rigid-body planning problems are shown in Fig. 10.Figures 11 and 12 show the computational time and success rate results for articulated robots in SE(3) × (S 1 ) n configuration space, respectively.For our proposed HRMbased and the PRM-based planners, the total running time at each trial includes both graph construction and search phases.
From the benchmark results, sampling-based planners are very efficient when the environments are sparse (such as in Figs.10a, 11a, 11b, etc).However, they become slower when the space occupied by obstacles increases.Also, the success rate of sampling-based planners decreases as the environment becomes denser.In cases like in Figs.12f and 12h, some planners cannot even find any solution within the assigned time limit of 300 seconds.For graph-based algorithms, even with the help of different types of samplers, they still take longer time to finally find a valid path.The tree-based planners are much more efficient for single queries in sparse and cluttered maps.And even in the maze map, when the dimensions of the problems increase, both RRT and RRT-connect planners can still search for a valid path efficiently.But in more complex maps like the home and narrow environments, both of their speed and success rate start to drop.
On the other hand, the proposed HRM and Prob-HRM planners are more efficient in complex environments, such as in Figs.10c, 10d, 11f and 11h.The success rates among multiple planning trials are also higher, as in Figs.10g, 10h, 12f and 12h.These results show the advantages of the proposed HRM-based planners in solving narrow passage problems.Furthermore, as can be seen from Fig. 10, the performance of HRM is more stable among different trials in rigid-body planning problems, which is mainly due to its deterministic nature.Prob-HRM planner, on the other hand, has larger variance in planning time for articulated robots (such as in Fig. 11c).Another feature of our proposed HRM and Prob-HRM is that they are both graph-based planners.They are competitive in solving complex problems with single-query planners (as in Figs.10b, 11e and 11g), and outperforms all planners in environments with narrow corridors (as in Figs 10d, 11f and 11h).This is desirable since ours can not only build the roadmap efficiently but also answer planning queries multiple times when the environment does not change.

VII. PHYSICAL EXPERIMENTS ON WALKING PATH PLANNING FOR A HUMANOID ROBOT
In order to demonstrate the capabilities of our proposed planning framework in the real-world setting, physical experiments with a NAO humanoid robot [59] are conducted.The task is to guide the robot to walk through environments with several objects on the floor in random poses.The robot is required to avoid them in order to pass this cluttered space.Therefore, the problem is simplified into a planar case, where the robot and all objects are projected onto the floor.The contour of the robot projection is encapsulated by an ellipse, with pre-defined semi-axes lengths.The robot is able to walk sideways and its the configuration space is SE(2).The arena is a pre-defined rectangular area, which is bounded by a superellipse with exponent defined as 0.1.The whole experimental pipeline consists of three main modules: perception, planning, and control, which is shown in Fig 13 .Robot Operating System (ROS) is used to communicate between different modules.
The whole scene is firstly captured from a fixed RGB-D camera as point cloud data.The point cloud is transformed from the camera frame into the world frame (indicated by an ArUco marker [60] on the floor), and segmented into disjoint clusters using Point Cloud Library (PCL) [61].Each cluster is then projected onto the x-y plane and fitted into a superelliptical model using Eq. ( 9).The obtained environmental data is then given as the input to the planning module.By manually selecting the start and goal poses of the robot, a valid SE(2) path is then solved by the proposed HRM planner.Finally, given a list of SE(2) poses, the robot follows the path via a simple proportional controller [62].The robot pose is tracked by an ArUco tag attached to its head and is controlled to  minimize the distance with the next way point on the trajectory until reaching the goal configuration.Since the planning scene does not change during the whole trial of the experiment, the perception and planning modules both run offline.The control module runs as an on-board process to keep the robot following the solved path.Table III shows the planning results in different example trials of experiments.Figure 14 demonstrates the walking sequences of NAO for the three different planning scenarios.

VIII. DISCUSSIONS
This section discusses the advantages of the proposed HRMbased planners, followed by some potential limitations.

A. Geometric approximations of rigid objects
The superquadric is an example model to enclose the environmental features.Alternatively, the convex polyhedron is a well-known type of geometry to represent a complex body, but may require many vertices and faces to describe a rounded region.It is possible to fit a convex polyhedra with superquadric model and vice versa, which introduces approximation errors.The fitting quality is evaluated as the relative volume between the two different models as in Eq. (13).
To fit a superquadric model, the vertices of a convex polyhedron is used in Eq. ( 8).The evaluation metrics include not only Eq. ( 13), but also the averaged sum of absolute difference between the point and implicit function, i.e., κ implicit = 1 m m i=1 |Φ(x i ) − 1| , where m is the number of vertices of the convex polyhedron.
Firstly, the convex polyhedron is treated as ground truth and generated as the convex hull of a set of 100 random points.Two types of convex polyhedra are studied: centrally symmetric and random shapes.To generate the centrally symmetric convex polyhedra, all the random vertices are flipped around the origin, followed by computing the convex hull.Among all the 100 trials, the mean of κ volume and κ implicit are: for the centrally symmetric polyhedra, 11.74% and 0.3886 respectively; and, for the random polyhedra, 19.88% and 0.6057 respectively.The results show that the superquadric surfaces fit closely to the polyhedral vertices when the object is centrally symmetric.However, when the convex polyhedron is highly non-symmetric, fitting the centralsymmetric superquadric model is conservative and the volume difference might be unavoidably large.On the other hand, a superquadric body can be considered as the ground truth, which this article mainly addresses and uses for benchmarks detect most of the C-obstacles.Since there is a refinement step for the existing roadmap, the input N line only defines an initial resolution of the roadmap.When the problem becomes more complex, e.g., including narrow passages, the existing roadmap will be made denser by iteratively doubling the number of sweep lines until one of the termination conditions is satisfied.

C. Advantageous properties of our proposed framework
One of the highlights of our proposed path planning framework is the closed-form parameterization of Minkowski sum and difference that explicitly characterizes the C-space.The closed-form expression only depends on the parameters of one body (such as the superquadric obstacle body when computing the C-obstacle boundary).Therefore, the computational complexity is linear with respect to only one body, not both ones as the traditional polytope-based Minkowski sum [26].Moreover, the numerical errors introduced in this process only come from the geometric approximations of object since the Minkowski sums computations are exact.The density of sampling vertices on the object surface is determined and used throughout all the experiments in this article.It is shown to be robust in different scenarios in terms of success rate and speed to solve motion planning queries.
The sweep line method in a single C-slice avoids traditional collision detection computation in generating collision-free samples.The vertices computed in each C-slice are automatically guaranteed to be safe.With the enhancement step, more vertices within each free segment can be generated.The added new vertices are closer to the adjacent free segment than the existing middle point, making it possible to circumvent obstacles compared to directly connecting two middle points.This step makes the vertex generation process more robust since more possible valid edges can be connected.Moreover, when connecting an edge between two vertices within one C-slice, the whole edge is checked for intersections with C-obstacle boundaries (if a straight-line connection is considered).This is a continuous way of performing validity check, since no interpolation along the edge is required.
With the roadmap refinement process, the portion of free space represented by the collision-free intervals of each sweep line increases with higher resolutions.Each C-slice can be explored uniformly along the sweeping direction and completely within a certain resolution parameter.The initial resolution parameter set by users might not be enough to find a valid solution.But with this refinement step, the free space can be explored in an adaptive way, making the proposed algorithms more robust in dealing with resolution errors.
The "bridge C-slice" adds another C-slice to the whole roadmap, which doubles the total number of slices.However, it simplifies the edge validation process.In each bridge Cslice, only the center point of each enlarged ellipsoidal void for robot part is checked with C-obstacles.Computing a path in the bridge C-slice can be viewed as a projection of the SE(3) (or SE(3) × (S 1 ) n ) motion sequence of the robot onto a path for translational motion of the enlarged void in R 3 .The validation process still involves interpolations between two SO(3) (or SO(3) × (S 1 ) n ) configurations.But they are only computed once before connecting two C-slices.
The deterministic nature of HRM makes it stable over different benchmark trials on the same planning scene.The Prob-HRM planner, on the other hand, integrates the shining features of the probabilistic ideas in sampling-based algorithms.Comparing to HRM, the number of robot shapes sampled in Prob-HRM is unknown a priori.But as shown in the benchmark results, the final numbers of C-slices are within a tractable range.This is mainly because that Prob-HRM still preserves the deterministic nature when exploring each C-slice, which increases the chance of identifying difficult regions.The collaboration with sampling-based planners avoids the dimensionality explosions for higher degrees-offreedom robots, making our framework extendable to wider and more complicated tasks.

D. Limitations
There are also some limitations of the proposed framework.Firstly, the geometry of the robot parts is limited to ellipsoids.The Minkowski sums are exact only when one of the bodies is an ellipsoid.For other geometric representations, such as polyhedra and point cloud, a fitting process is required before running the planner.Also, the meshed surface of the exact Minkowski sum in the sweep-line process introduces another level of approximation errors.
The computation of tightly-fitted ellipsoid (TFE) in the bridge C-slice is conservative in the sense that some free space will be lost when the robot parts are enlarged.This enlargement scarifies the completeness of the planner.However, the efficiency using the bridge C-slice is significant based on the ablation study and benchmark results.Also, when the distance between two C-slices is smaller, the TFE encloses each robot part tighter, resulting in losing less free space.
The current HRM and Prob-HRM are both effective when the robot motions are dominated by translations.But they are not advantageous for robots with a fixed base such as manipulators.Prob-HRM can possibly be used to solve problems with pure rotational motions.In this case, useful operations within a single C-slice might be very limited, since no translational connections can be made.When the robot base is fixed, Prob-HRM is equivalent to a pure sampling-based planner.In this case, the proposed closed-form Minkowski operations and the sweep line method can be used to generate valid vertices during the C-space exploration.And the "bridge Cslice" method can be applied as the transition validity checker between adjacent C-slices.

IX. CONCLUSION
This article proposes a path planning framework based on the closed-form characterization of Minkowski sum and difference.The important "narrow passage" problem can be solved efficiently by the proposed extended Highway RoadMap (HRM) planner.Collision-free configurations are generated directly by a "sweep line" process.And connections between two configurations with the same rotational components can be validated without interpolations.Configurations with different rotational components are connected through a novel "bridge C-slice" method using the sweep volume of enlarged ellipsoidal voids.A new hybrid probabilistic variant, i.e., Prob-HRM, is then proposed to solve higher dimensional problems.It combines the efficient explicit descriptions of C-space and the effectiveness of random sampling.This hybrid idea can thereby achieve better performance in higher dimensional (articulated robot) motion planning problems in cluttered environments with narrow passages.
(a) Projection contour of a NAO humanoid robot is enclosed by an ellipse (yellow).
Protein atom elements (small balls) are enclosed by ellipsoids (green).
(a) The original space with S 1 in the center and E 2 translating around.(b) Both bodies are rotated by the inverse orientation of E 2 .(c) E 2 is shrunk into a sphere, and an offset surface is computed.(d) Stretch back and obtain S 1 ⊕ (−E 2 ) (the yellow region).

Fig. 2 :
Fig. 2: Process for the characterizations of the Minkowski sums between a superquadric S 1 and an ellipsoid E 2 .
(a) C-obstacle as the Minkowski sum boundaries of individual ellipsoidal bodies and their union.(b) Collision free C-space as an intersection of free space for individual robot parts.

Fig. 5 :
Fig. 5: The characterization of the Minkowski sum between a convex superquadric and a union of ellipsoids.

Fig. 6 :
Fig. 6: The sweep line process for detecting free space and construct sub-graph in one C-slice.
(a) Sweep volume for individual elliptical part.(b) Sweep volume for the whole multi-body robot.

Fig. 7 :
Fig. 7: 2D example illustrating the sweep volume idea based on the sliding of tightly-fitted ellipsoids.

Fig. 8 :
Fig.8: Demonstration of path planning solutions using our proposed HRM-based planners for different types of robots in different environments.Problems with rigid-body and articulated robots are planned using HRM and Prob-HRM respectively.Obstacles are 3D superquadrics and the robots are constructed by unions of 3D ellipsoids.The magenta curve represents the solved path of the robot base center that is projected from C-space to Euclidean space.

Fig. 10 :
Fig. 10: Running time and success rate comparisons between HRM and sampling-based motion planners.PRM-based planners use different sampling strategies, denoted as "PRM (sampler name)".The planning time is shown as a box plot (Figs.10a, 10b, 10c and 10d).The red line inside the each box is the median of the data, while the upper and lower edges of the box show the 25%-th and 75%-th percentile respectively.The dashed lines extend to the most extreme data points excluding the outliers.And the outliers are plotted as + signs.The success rates are shown as bar plots (Figs.10e, 10f, 10g and 10h).

Fig. 14 :
Fig. 14: Walking sequences of NAO that follows the planned SE(2) paths in physical experiments.

TABLE I :
Parameters for HRM-based planners in scenarios from Fig.8

TABLE II :
Results of ablation study for "bridge C-slice"

TABLE III :
NAO walking path planning results using HRM