{'fraction_non_alphanumeric': 0.028462948415815658, 'fraction_numerical': 0.007567426027755957, 'mean_word_length': 4.626252209781968, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 3, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Towards Constructing Finer then Homotopy Path Classes

This work presents a new path classification criterion to distinguish paths geometrically and topologically from the workspace, which is divided through cell decomposition, generating a medial-axis-like skeleton structure. We use this information as well as the topology of the robot to bound and classify different paths in the configuration space. We show that the path class found by the proposed method is equivalent to and finer than the path class defined by the homotopy of paths. The proposed path classes are easy to compute, compare, and can be used for various planning purposes. The classification builds heavily upon the topology of the robot and the geometry of the workspace, leading to an alternative fiber-bundle-based description of the configuration space. We introduce a planning framework to overcome obstacles and narrow passages using the proposed path classification method and the resulting path classes.


Introduction
Let us consider the following scenario: a box in the middle of the room, what are the different ways to pass the box and reach the other side of the room? We can pass the box from the left or the right; if the box is not very tall, we can also jump over the box. We recognize that these are different paths, but it is difficult to define their differences topologically. If we are not allowed to jump over the box, i.e., viewing navigating the room as a planar problem, the two paths passing the box from left or right belong to two different homotopy classes. In other words, one cannot find a way to continuously deform the path from one to the other without passing through the box. Path classes are helpful when planning for multiple robots or finding diverse paths to increase the chance of survival if different paths fail with various probabilities.
In the original 3D problem, because there is a possibility of jumping over the not-so-tall box, the paths passing through the left and right belong to the same homotopy class. In recent years, topological tools such as homotopy and homology were introduced to categorize paths (Bhattacharya et al., 2013), but such definition becomes weak in dimensions beyond two unless the obstacles create a topological hole in the space. In our toy example, the box has to be touching the roof to create such a topological hole. Another example is shown in Figure 1, where there are two pillars with two platforms attached to the obstacles. Five colored paths are geometrically distanced, but only one (the bright blue) path belongs to a different homotopy class if the tall pillar touches the roof. One of the primary purposes of this work is to mathematically distinguish the above five paths and show the derived properties extending to the configuration space. We propose a new path categorization criterion, so that different path classes can either mean topologically or geometrically different. The classification starts with analyzing the workspace rather than the configuration space. We show that many critical workspace properties, including homotopy information, can extend to the configuration space. A workspace cell-decomposition is performed to find the almost-Voronoi cellscomplement, which contains the skeleton or medial-axis (Xu et al., 1992) of the workspace. We show that though it starts in the workspace, the resulting path class properties hold in the configuration space.
We should mention that, although some toy examples and analysis will be presented in R 2 , the method is most beneficial in 3D. Unlike the methods that conduct configuration space analysis and use samplingbased methods, our proposed path categorization standard only depends on the topological and geometrical properties of the workspace and robot itself, which are both easy to analyze and visualize. We show that the proposed criterion can distinguish configuration space paths with different workspace properties, and the resulting path classes can be used for various planning tasks, like obtaining path existence (McCarthy et al., 2012), finding diverse paths (Lyu et al., 2016), and planning for multiple agents.
A new planning framework can be built upon the proposed path classes and associated methods. The framework aims to separate topological and geometrical planning into two stages. In the workspace, the path classes found can represent the connectivity information in both the workspace and the configuration space. We can integrate the geometrical constraints into the topological paths and generate satisfying geometrical paths using the topological paths found using the path classes. In this work, we focus on the theoretical foundations of path classification and discuss the geometrical interpolation step.
The proposed path classification starts from the workspace. The first step is to distinguish the free regions from the obstacles. Since we know the geometries of the obstacles in the workspace, we can use cell-decomposition as the first step of the processing. We adapt a Delaunay-triangulation-based cell decomposition, producing regions with properties similar to α-shapes (also written as alpha-shapes) (van Kreveld et al., 2011;McCarthy et al., 2012). The primary focus of this work is that we show the cell decomposition in the workspace, plus the topology of the robot information, can correctly approximate the simplicial complex in the configuration space.
Cell-decomposition is a well-studied technique in the planning community, and many variations have been used in the past. Axis-aligned cell decomposition is simple, but the curse of dimensionality arises when conducted in the configuration space. Alpha-shape and simplex have also been used in planning (McCarthy et al., 2012), but the method usually requires some dense sampling in the configuration space. Medial-axis approaches often employ cell-decomposition methods as well.
The topology of the robot is the abstraction of the possible geometries a robot can reach and can usually be described using a collection of chains. For example, an open-chain has a different topology compared to a closed chain, but two open chains with different link lengths share the same topology. Paths within the same proposed path class have good geometric properties for a serial chain. The paths for a collection of chains can inform a path for the complex robot. We prove that the proposed categorization generates the same topology path classes when there are topological holes but can also further classify additional path classes based on the geometrical information when topological holes do not exist. Our path classification is finer than the homotopy class.
As presented in this paper, we are only considering polyhedron obstacles. While the proposed algorithm can handle concave obstacles, the decomposition can be expensive when there are many closely placed concave obstacles. This paper is primarily theoretical, with proof-of-concept examples and experiments. Another limitation of the current work is that the topological holes within the workspace obstacles are not well analyzed. We simply categorize such holes as regions adjacent to a single obstacle.
Our main contributions in this work are summarized as follows: 1. We introduce a finer path classification method compared to pure topological-based tools; our method can further identify paths that are not distinguishable topologically but are still distant from each other; 2. The path class provides high-level topological paths; we present definitions, proofs, and algorithms to construct the topological paths; 3. We introduce a planning framework based on the proposed path classes, which can provide good kinematic path candidates within tight spaces; 4. We show that the proposed methods are robust to small perturbations of the obstacles and can make updates efficiently;

Related Work
Researchers have been using homotopy class to categorize paths on the plane and in space (Kim et al., 2012;. In 2D, the homotopy class (Hatcher, 2002) of a path perfectly categorizes the paths that wrap around the planar obstacles differently. Based on such topological tools, works on how to search paths  and find manipulation approaches (Bhattacharya et al., 2015) using homotopy classes were proposed. More recent work has studied how to extend the ideas into 3D around knot-like obstacles and attempts to combine the path class constraints with path optimality constraints (Bhattacharya and Ghrist, 2018). The shortest path is one of the ultimate goals for motion planning, but only limited cases have been solved, especially when the obstacles are involved. In Grigoriev and Slissenko (1998) and Hershberger and Snoeyink (1994), the authors studied how to find the shortest paths in a given homotopy class. In Pokorny et al. (2016), the authors proposed to use sampling-based methods to compute filtrations and persistent homology to classify paths. In this and many other existing works, the authors attempt to distinguish paths by measuring the persistent homology of obstacles (Pokorny et al., 2016) or finding homotopy classes (Bhattacharya et al., 2015). However, in many cases, especially in higher dimensions, the topological holes are hard to create or compute. For example, in Figure 1, the two pillars and the connected platforms do not create a topological hole, all paths are homotopy equivalent, and the persistent homology of the obstacles is of low dimensions. The persistent homology and associated measure may not distinguish the path classes fully.
At the same time, researchers have also attempted to define path diversities beyond the topological properties. In Branicky et al. (2008), the authors introduced path diversity by decomposing space into cells and used the cell information to classify paths. Path diversity definitions also exist based on the measurement of closeness and relevance to the goal (Knepper and Mason, 2009;Knepper, 2011;Knepper et al., 2012). Researchers have also introduced probability into the definitions of path diversity. Some researchers have defined survivability as a critical concept in the path diversity, measuring how likely paths are to succeed if some probabilistic events were to happen at some locations (Erickson and LaValle, 2009;Lyu et al., 2016). In addition, researchers have studied path diversity in various realistic settings, such as ambush avoidance (Boidot et al., 2015), and detection avoidance for aircraft (Zabarankin et al., 2006), and how to navigate through mined waters (Babel and Zimmermann, 2015). In Schwartz and Sharir (1983), the authors presented a semi-algebraic description to distinguish various obstacles and can be used to define path classes. However, the sets can become increasingly difficult to compute when the obstacles become complex. In Siméon et al. (2004), the authors also proposed to use sampling-based methods and reachable regions to perform motion planning, which is similar to the method proposed in this work. One of the main differences is that we are not using sampling-based approaches in our proposed method, only the obstacle descriptions and robot structure.
In networking, the study of path diversity has also attracted attention, as the network communication and information flow needs to be diverse to handle traffic conditions (Yuan et al., 2005). Heuristic measurements were introduced to find diverse paths (Voss et al., 2015) and compute the maximum diversity of paths (Martí et al., 2013). Similar to the graph coloring problem, researchers also attempted to color different paths to define their diversity (Chan and Kirkpatrick, 2014). Geometric methods such as visibility have also been used to generate diverse paths (Quispe et al., 2013), or cover spaces like art gallery problems (O'Rourke, 1987). Theoreticians have also attempted to analyze how to find disjoint paths and the related complexity (Xu et al., 2006). Path diversity has also been studied under pursuit and evasion (Chung et al., 2011).
Multi-robot planning is one of the most common scenarios associated with path diversity in robotics. Multi-robot coordination usually needs diverse paths to succeed (Parker, 2009;Pecora et al., 2018). Multirobot planning has also been studied on graphs (Pereyra et al., 2017). In more challenging scenarios, people have studied the path diversity problem in online settings, such as diversity maintenance problem (Ćurković andČehulić, 2020), control problems (Liu and Belabbas, 2019), and online planning and trajectory smoothing and optimization (Zhu et al., 2015).

Decomposition and Robot Topology
We introduce the foundations of the path classification: workspace decomposition and robot topology representation. The following section shows the product relation between workspace cells and the robot topology that can successfully reproduce the path classes in the configuration space. We decompose the workspace based on the Voronoi boundaries' dimension and use Delaunay triangulation as the computation basis.
Definition 1. Let there be two disjoint objects O i and O j , denote their convex hull as Define the joint cover of a given workspace W with obstacles O i , 0 < i ≤ N as the union of all joint hulls for all pairs of objects / obstacles in a given space, In other words, a joint hull between two obstacles O i and O j contains Voronoi cell boundaries that have equal distances to O i and O j . We classify free regions based on the number of adjacent obstacles. The degree of Voronoi cell boundaries encodes the degree of holes the corresponding region would create when removed from the workspace.
The α-shape is a one-parameter family of polytopes that quantity the shape of a point set (parameterized by α ∈ R + ). When α = 0, the alpha shape of S is simply S itself. When α = ∞, we have that the alpha shape of S is equivalent to the convex hull of S. For intermediate α, the α-shape is more complicated but describes the shape of S in various levels of detail. The α-shapes provide a natural interpretation for a union of balls and are closely related toCech complex (Ghrist, 2014).
Using α shapes to describe the obstacles is an excellent way to describe some objects' convex and concave regions at some resolution. Finding the α-shape description for the obstacles is usually preferred. In McCarthy et al. (2012), the authors used sampling-based methods in the configuration space to build α-shapes and approximate the configuration obstacles, then use the resulting information to predict the existence of paths.
The joint hull of two obstacles is an α-shape and is a subset of the triangulation between the two obstacles in the workspace. The description may not correspond to a fixed α. So, in other words, the joint hull is a weighted α-shape (Edelsbrunner, 1992). It is challenging to select appropriate weights to describe the desired details of the geometry. The known runtime for finding the weighed α-shapes is O(n 2 ) in R 3 for a given weight. Because the weight is hard to select, we can find the joint hull another way, based on triangulation. We can avoid directly finding the weighted-α-shape because there can be many valid joint hulls for O i and O j .
We use Delaunay triangulation to construct a joint cover. Based on the Definition 1, there can be more than one valid joint hull between two objects. We would like to find the Joint Cover that maximizes the region adjacent to two obstacles.
Let us introduce Algorithm 1 to construct the joint cover. The process builds upon the Delaunay Triangulation and then merges adjacent regions based on the number of adjacent O. The algorithm's runtime is worst-case O(n 2 ) for a total of n vertices among all obstacles, which is the worst-case bound for triangulation. However, just as the triangulation and α-shape constructions, the practical runtime is usually much less than the theoretical worst case. The construction can also be incremental, and runtime can be faster if the obstacles and vertices are sorted geometrically first. Figure 2 shows some Joint Hulls among random 2D polygon obstacles. Figure 3 shows the joint hulls in 3D for an environment with multiple obstacles. Algorithm 1: Joint Cover if current region has the same adjacent O as s k then Add neighbors of s k into N ; Remove s k from DT; Merge s k into current region; Update current region neighboring O set; end end Set the merged region as J (·) based on the adjacent O · ; end return JC ← ∪J (·), G A The adjacency is closely related to visibility. If two obstacles are mutually visible, a free region must exist adjacent to both obstacles. Nevertheless, this free region may also be adjacent to other obstacles. We can use visibility to construct G A quickly. Visibility between obstacles is hard to compute directly. The triangulation and merging process can find G A as well as JC simultaneously.
The configuration space is closely tied to the topology of the robot. A robot B can deform into different geometries and sometimes even different topologies. Embedding various robot deformations into the workspace will result in different configurations. Let us select a set of key points on the robot, including but not limited to the endpoints of each joint on the robot. We can show that embedding the key points into the workspace can fully represent the embedding of robot deformations and infer the associated configuration.
Let us select k key points (p i = (x i , y i , z i ), i ∈ {1, 2, . . . , k}) on the robot with fixed pair-wise distances between adjacent points. Note, a single key-point p may be adjacent to many key points (A p ), and it has a fixed distance to each adjacent key point q ∈ A p , but two points in A p may not have a fixed distance constraint. For example, p can be the right shoulder of a humanoid robot. The set A p includes the spine connecting to the head, the left shoulder, and the right elbow. These points in A p all have fixed distances to the right shoulder, but they do not need to maintain any fixed distances. The relations among these key points are fixed for a given robot. Here, we do not consider the robots that can reconfigure themselves.
When the robot is a single point, the planning can be simple, and the cells derived above can give the path classes. When the robots are more complex, the path classes in the configuration space can differ from the workspace cells. We show that we can combine the workspace cells and the topology of the robot information and map to the path classes in the configuration spaces. This way, we can independently analyze the workspace information and robot topology without analyzing or sampling in the high-dimensional and hard-to-describe configuration space.
The configuration space is a simplified representation of the workspace information combined with the robot deformations, so that configuration space C is homeomorphic to W ×P (B). In fact, (C, π, B, P (B)) is a fiber bundle (Hatcher, 2002) if π maps a configuration to its workspace embedding region. The configuration space has the subspace topology of W × P (B). Because the non-trivial mapping of π is caused by the obstacles, where the paths are disconnected, a path in W × P (B) corresponds to a path in C if it is valid in C. We can define valid path classes on W × P (B) to classify paths in C. The path in W and the embedding function π would be easy to visualize and analyze independently.
Given W and JC(W ), let us label the free regions to represent the workspace connectivity better. Note that a free region is adjacent to two obstacles if it is a compact region inside a joint hull. Other regions can be found using Algorithm 1. The free regions and their adjacency form a simplicial complex representation of the workspace, and their adjacency relation G A symbolizes the workspace connectivity.
Definition 2. Define the label of a free-region as: • If a free-region is adjacent to a single obstacle O i and not a hole within obstacle O i , we assign label i to the region; • If a free-region is a hole within obstacle O i , we assign label −i × k to the region, for the kth hole; • If a free-region is adjacent to O i and O j , assign label (N * i + j) assuming j < i; • If a free-region is adjacent to more than two obstacles, {O i }, i ∈ P , where P is a subset of positive integers no larger than N ; assign label f (·) to the region, where f is the Gödel numbering function, where p j is the jth prime number, i 1 > i 2 > . . . > i |P | ; this encoding is unique for each region.
The structure of the k key points on a given robot also forms a simplicial complex which does not change even when the robot deforms in most cases. Let us denote the workspace free-region complex as S W , and the robot key-points structural complex as S B . The product relation between the two complex S W × S B can be used to represent the embedding of the robot deformation into the workspace. As S W and S B are abstractions of W and P (B), they are homotopy equivalent to W and P (B), respectively. The product S W × S B are homotopy equivalent to W × P (B). We can therefore have the following result, Lemma 1. Any two paths that are not homotopy equivalent on C correspond to two different paths on S W × S B .
Proof. If two paths belong to the same homotopy class in W × P (B), the corresponding paths must belong to the same homotopy class in C. If there exist two paths belonging to two homotopy classes in C, topological holes exist in C. The hole is either created by workspace obstacle or robot deformation limit. Both will lead to topological holes in W × P (B). The mapping of the topological hole from W × P (B) to S W × S B also results in a topological hole; thus, the corresponding paths cannot belong to the same simplicial cell.
On the robot structural simplex, the highest order simplex is the 1D chains, either open or closed. For example, a humanoid robot can have four chains sharing a common endpoint. These chains can uniquely determine the robot's topology and geometry. It is sufficient to plan for these chains, either independently or simultaneously. The workspace G A shown in Figure 4(b) cannot be drawn as a planar graph. Each node represents an obstacle, and each edge indicates the existence of a common region between two obstacles. A triangle on G A represents there is some free region adjacent to all three obstacles. Simplex of order k represents a common region among k − 1 obstacles. The S W can be constructed from G A so that every k-order simplex on S W is a k + 1th-order simplex on G A .
We can even study the topology and connectivity when removing an obstacle in the space using G A and S W . For example, in Figure 4(b), when we treat an obstacle (A) in the middle of the room as a movable object and attempt to relocate the obstacle, the resulting workspace topology can be easily derived from G A by removing A from the graph. This task-level information can be beneficial when planning in tight spaces where interaction with the environment is needed to admit feasible paths.
Let us define a state of the robot as a collection of pairs L(·) = (w i , q j ), where w i is a vertex on S W and q j a vertex on S B . A path P is a sequence of pairs P = {L(1), L(2), . . .}, which is an abstraction of configurations along the path. A homomorphism exists between the workspace path of a chain and the corresponding path in the configuration space.

Path Classes
One major challenge in planning in the configuration space is that it is difficult to map the geometry of workspace objects into the configuration space, i.e., the π −1 is hard to find near different workspace neighborhoods. The workspace's geometry is often tangled with the robot topology, leading to different descriptions in the configuration space. We show that the product topology of workspace cells and robot structure leads to important topological properties in the configuration space. We then show that the proposed path classification criterion will lead to a finer path class than the homotopy class.
The joint cover categorizes free regions based on obstacle adjacency relations, or in other words, the Voronoi cells among the obstacles. Voronoi cells describe the connectivity information in the workspace. A path in C cannot be valid if the mapping in W is not valid. We will use workspace topology and the topology of the robot to approximate the topology in the configuration space. The configuration space topology can help find feasible paths, separate paths, and explore possible interactions with the workspace to satisfy task-level requirements. First, we show that the joint hull can help distinguish paths topologically with respect to the obstacles.
Lemma 2. Given a workspace of dimension d, and obstacles O i , 0 < i ≤ N , the free-regions creates (d − 1)-dimensional holes in the joint cover.
Proof. The free-regions create d − 1-dimensional holes in the joint cover as they cut each joint hull into isolated regions.
The obstacles do not necessarily create holes in the workspace or configuration space. The statement is only valid within the joint cover. Any path intersecting the joint cover can be identified by its winding relations with different obstacles.
Two paths represented by sequences of states L(·) without loops are geometrically near each other if a one-to-one correspondence exists between the states on the respected paths. When there are loops on a given path, we derive its embedding after removing loops. Two different labels can represent the same state, such as an open-chain deforms in the same set of connected free regions can all correspond to the same state, as long as the two endpoints of the chain remain in the same region. In 2D workspace, S W has at most 1-simplex, and in 3D, S W has at most 2-simplex. We can use Algorithm 2 to simplify the representation for any robot state L(·), and we consider two states to be different if they do not have identical contracted representations L c (·). For an open chain, the simplified representation can be contracted to a single pair representing the sequence of workspace free-regions. We can similarly use Gödel numbering to determine the embedding uniquely.
Let us define the geometrical-homotopy path class as follows. Given two paths f 1 and f 2 between x and y, if the simplified representation sequences for f 1 and f 2 are different, then the two paths belong to two classes.
Lemma 3. For point robot, the proposed path class definition is finer than the homotopy class definition.
Proof. If the robot is just a single point, the representation L(·) can be simplified to just a vertex in S W . The path classes and states depend only on S W . In 2D, the workspace partition yields the same path classes as the homotopy class for any start and goal. In 3D, two regions with different labels may still be connected. If two regions are disconnected, they must have different labels, i.e., representations. Disconnection is required to produce different homotopy path classes.
Algorithm 2: Representation contraction input :L(i), S W , S B output :L c (i) Contract 1-simplex on S B embedded in same w i ; for Each remaining simplex on S W do if Corresponding region is compact then if The corresponding key-points form same simplex on S B then Contract the simplex on S B and S W ; end end return the contracted L c (i); Lemma 3 directly follows from Lemma 2. The classification is finer only in dimensions three or higher. In 2D, paths passing the obstacles differently belong to different homotopy classes as the 2D obstacles create topological holes. In 3D, the paths that go through different free regions may belong to the same homotopy class, but our criterion can identify and classify them into finer categories.
Such classification is most beneficial when narrow passages exist or the obstacle has disproportional sizes in different dimensions, such as a nail shape obstacle. In these situations, the obstacles may not create topological holes in C, but passing different surfaces of the obstacles can result in geometrically distanced paths. Using the proposed classification criterion, paths that pass through different surfaces of obstacles may be classified into different classes, especially when the surfaces create sharp edges.
Lemma 4. For any given configuration q with representation L(i), a compact neighborhood U exists in the configuration space with the same L(i).
Proof. Small perturbations of the key points without leaving the embedding free regions have the same representations. Small perturbations of key points will lead to similar configurations.
Lemma 5. Every region of the configuration space with the same contracted representation L c (i) is contractable, so are their finite intersections.
Proof. Every state is homeomorphic to the product of finitely many simply connected regions in the workspace.
Lemma 6. Given two configurations p and q, and the corresponding representations L c p (·) and L c q (·), if loops based at arbitrary configuration x passing through p and passing through q belong to two homotopy classes, then L c p (·) and L c q (·) must be different.
Proof. For a given point x, if the loop passing through p and q belong to different homotopy classes, obstacles exist that prevent the loop from passing through p to deform to q in the configuration space. If L(p) and L(q) have the same representation, each key point must be in the same embedding region following the preceding Lemma. Therefore, no obstacles prevent these key points from deforming between p and q. The omitted key points must be along a fixed path passing through a connected sequence of regions, thus can deform between p and q. Therefore, two configurations p and q are connected in the same free regions if they have the same representation.
Theorem 7. Given two paths in C, if two paths belong to different homotopy classes, then the two paths must have at least one different representation.
Proof. If two paths are in different homotopy classes, obstacles must exist preventing the paths from continuously deforming to each other. Then, there must exist obstacles that separate some states along the paths. Different states have different representations.
Corollary 1. Any two paths that belong to two different homotopy classes on C maps to two paths in different classes defined by the proposed contracted representations on S W × S B .
Lemma 8. Two paths in C may have different contracted representations L c p (·) but belong to the same homotopy class on C.
Proof. If the robot is a point robot, the statement follows from Lemma 3. If the robot is not a point robot, such as an open chain, two paths that go around an obstacle near different surfaces can have different representations, as the paths go through different cells in S W . However, if the two surfaces are not disjoint, the two paths will belong to the same homotopy class.
The above lemmas and theorem show that workspace regions and robot structure representation capture the topology information in the configuration space. Therefore, two configuration space paths in different homotopy classes must pass through configurations with non-identical states. However, non-identical states may have the same fundamental group in the configuration space. Therefore, we have, Theorem 9. The proposed path class definition is finer than the homotopy class.
Proof. The theorem is a direct extension of the proceeding Lemmas and Theorem.
We present the following planning framework based on the path classes defined in the preceding sections. The framework finds topological paths globally and then interpolates the feasible geometries for the robots to implement. This framework aims to separate global navigation from local geometrical implementation. The separation can allow adjustments of local paths without rescheduling the global plan.
1. Find path classes, and adjacency relations of different free regions; 2. Find paths f on S W × S B ; 3. Find point path f p that realizes f in W ; 4. Divide f p into pieces that are simple and mostly visible; 5. Interpolate geometrical trajectories piece-wise on f p , compute feasible robot deformations; 6. Adjust paths piece-wise to satisfy robot geometrical constraints; 7. Optimize and smooth the trajectory if needed.
The proposed framework is most beneficial when there are narrow passages in the space. The computation needed to produce the path classes can exceed that of sampling-based motion planning in a relatively open space. As the environment and robot become complex, the proposed framework can produce paths according based on tasks and allow manipulations and collaborations in tight spaces.

Applications and Verification
First, in Figure 3, we show the environment with multiple obstacles, as our proposed path class mainly differs from the homotopy class in 3D. The obstacles are not creating topological holes, and all paths belong to the same homotopy class. However, our definition would recognize additional classes. The joint cover divides the free regions among adjacent obstacle pairs uniquely. A path passing through different free regions in the joint hulls creates different path classes for a single point.
One primary aim of this paper is to show that the analysis of the workspace along and the robot structural information is sufficient to capture topological information in the configuration space. The resulting path class information can derive much helpful information that usually is extracted using various methods.
For example, in McCarthy et al. (2012), the users used the sampling-based method to compute α-shapes of configuration space obstacles and prove the non-existence of paths. In the proposed method, the structure S W × S B can derive the same information. The idea is very similar to the process used in Schwartz and Sharir (1983). We can follow the below steps, • If there does not exist a sequence on S W that connects start and goal representation regions, no path would exist; • If the sequence on S W contains regions that cannot have valid robot embedding, remove this sequence; • If no sequence remains, there does not exist a path.
(a) Environment with three boxes. (b) Different path classes for an arm traced along the base.
(c) Planning a 4R arm in an environment with narrow passages. Figure 5: Joint covers of different environments, path classes, and narrow passage planning scenario.
In Figure 5(a), two boxes have very close distances, but the pink arm cannot move through the narrow region between the boxes. Configuration space narrow passage among the two boxes can be hard to detect, but the free-region derived in the workspace can be directly used to test against the robot's geometry to determine if a path exists through some region. In the environment shown in Figure 5(a), all paths of the arm belong to the same homotopy class, but our criterion will show that there three colored paths shown in Figure 5(b) are different, and indeed, the red and the yellow paths are pretty distanced geometrically. The criterion can have more advantages when the robot becomes more complex.
The proposed planning framework further utilizes such workspace information. By considering only the key points of the robot, we can quickly check the feasibility of the free regions with respect to the size of the key points. Though the paths for key points do not necessarily mean the existence of paths for the entire robot, the counterexamples would usually include narrow passages where paths are difficult to find. For example, in Figure 5(c), the paths for a four-R arm are found using the proposed framework, where the sampling-based planning approach failed to find a solution after 4000 valid samples. In the workspace, we can directly test the valid embedding sequence against the robot geometry and workspace constraints, and deformations of robots can be derived to find valid configurations to fit through the narrow passages.
We can also use the path classes to find narrow passages or paths with the most chance for survival against probabilistic events (Erickson and LaValle, 2009;Lyu et al., 2016). The robot structural information in path classes may help validate paths for multi-agent planning or finding particular configurations to fit through narrow passages, such as the planning of the twistycool problem in OMPL (Sucan et al., 2012).
The proposed path classes are distant geometrically. The resulting path classes are good candidates for multiple agents to avoid collisions. The distance path classes can also allow collaborations in tight spaces. We can further introduce pair-wise distance constraints among key points of different robots in the optimization step, coordinating the paths for the collaborating robots to maintain relative distances and avoid collisions. Such problems can be solved using the proposed planning framework.

Conclusions
This work presents a path class definition that combines the workspace geometry and the topology of the robot. The resulting path class is finer than the homotopy path classes. The classification captures geometric and topological information in the configuration space and can help identify connectivity, obstacle topology, and compare path qualities in different path classes. Building upon the presented path classes and the algorithms to find them, we propose a new planning framework that separates the global topological plan from local geometrical interpolation. The planning framework, like the proposed path classes, builds upon the workspace's geometrical analysis. The details of the geometrical implementation of the topological plan are ongoing work. The presented work gives us theoretical foundations for the correctness of separated analysis of workspace geometry and the topology of the robot and then combines them to piece together trajectories in configuration space. One important future work is to reduce further the size and complexity of S W × S B . Currently, the map π from C to W is not being carefully studied. We believe further analysis can be introduced to the map π to produce simpler S B near different positions in W.