Compact and Efficient Topological Mapping for Large-Scale Environment with Pruned Voronoi Diagram

: Topological maps generated in complex and irregular unknown environments are meaningful for autonomous robots’ navigation. To obtain the skeleton of the environment without obstacle polygon extraction and clustering, we propose a method to obtain high-quality topological maps using only pure Voronoi diagrams in three steps. Supported by Voronoi vertex’s property of the largest empty circle, the method updates the global topological map incrementally in both dynamic and static environments online. The incremental method can be adapted to any fundamental Voronoi diagram generator. We maintain the entire space by two graphs, the pruned Voronoi graph for incremental updates and the reduced approximated generalized Voronoi graph for routing planning requests. We present an extensive benchmark and real-world experiment, and our method completes the environment representation in both indoor and outdoor areas. The proposed method generates a compact topological map in both small- and large-scale scenarios, which is defined as the total length and vertices of topological maps. Additionally, our method has been shortened by several orders of magnitude in terms of the total length and consumes less than 30% of the average time cost compared to state-of-the-art methods. Author Contributions: Conceptualization, Y.Q. and R.W.; methodology, Y.Q. and B.H.; software, Y.Q.; validation, Y.Q., B.H. and F.L. formal analysis, Y.Q., B.H., and R.W.; writing—original draft preparation, Y.Q. and R.W; writing—review and editing, Y.Q., Y.X., and R.W; project administra-tion, Y.X.; funding acquisition, Y.X.


Introduction
As an important achievement of SLAM (Simultaneous Localization and Mapping), topological maps play an important role in the environment representation [1,2]. In contrast from a metric map and a semantic map, a topological map uses a skeleton composed of vertices and edges to describe the world. The skeleton makes the topological map compact and efficient, which is illustrated by the lower memory consumption of storage and lower time cost of map updating and routing, especially in large-scale scenarios [3]. These advantages of topological mapping are vital in geographic environment modeling, autonomous exploration, and robot navigation [3].
The topological representation problem is similar to the robot path-planning problem [5]. It focuses on the multi-path, while path planning aims to find the optimal result. The three most established methods are random sampling-based, visibility graph-based and skeleton-based, which can solve the problem in known, partially known, and unknown environments.
Random sampling-based method. The classic methods using random sampling include the probabilistic roadmap (PRM) [6], sparse roadmap spanners (SPARS) [7], and rapidly exploring random tree (RRT) family [8], which include RRT and its variants, such as Bi-RRT, RRT*, and BIT* [9,10]. Witting constructed the topological map using a history of previously visited positions as seeds of the RRT to guide MAVs' autonomous explo-ration [11]. Additionally, Umari used multiple RRTs [12]. TARE constructed a sparse random roadmap in the traversable space expanded from the past trajectory for global planning [13]. To adapt to a large environment, Wang and Dang incrementally constructed a graph structure along with the exploration process by sampling random points uniformly [14,15]. These methods are complete when they sample enough points, which requires high computation in narrow environments.
Visibility graph-based method. The method constructs visibility edges among obstacles' vertices, which need to extract convex polygons from irregular obstacles [16], and sometimes the extraction is complex in unstructured environments. The FAR expanded the visibility edges incrementally in dynamic scenarios and addressed navigation tasks in both known and unknown environments [17]. Lee and Shah used the Visibility Graph (VG) for long-distance planning for USVs fulfilling target missions in marine environments [18,19]. Most of them use A* to efficiently search for the optimal path in VG. The limits of VG in complex environments are its high computational complexity and the requirement for well-defined polygonal geometry.
Skeleton-based method. Thrun first proposed generalized Voronoi diagram (GVD)-based topological maps and segmentation [20], which can be used for the safe autonomous navigation of mobile robots in unknown structured environments [21]. Li constructed a reduced approximated generalized Voronoi graph (RAGVG) by an occupancy grid map (OGM), which improved autonomous exploration [22]. Ok considered uncertainty with GVD [23]. The Voronoi edge is the perpendicular bisector of adjacent sites, and thus, the map paths are safer than other topological map construction methods [24]. The methods to construct GVD incrementally include dynamic brushfire [25] and a random incremental algorithm [26]. Most dynamic brushfire algorithms must load the whole range area first and calculate the Euclidean distance maps (EDM), just as the Dijkstra searcher. Liu constructed Voronoi segmentation incrementally with virtual obstacles using dynamic brushfire [3]. The random incremental algorithm is an efficient Voronoi diagram generation method in computational geometry by adding sites one by one, but it is poor at removing the existing site [27].
Constructing a skeleton to describe the reachable region is the main challenge of topological mapping. Some methods are efficient enough, but the maps generated by them are not compact enough. For example, visibility graph-based methods easily generate too many road branches, while RRT-or PRM-based methods easily generate redundant vertices and edges on the trunk road. In this article, our topological map is built based on a Voronoi diagram, which is generated by obstacle information in a metric map. Considering the increase in time and decrease in accuracy caused by obstacle clustering and polygon extraction, our Voronoi diagram is generated based on the original obstacle points directly. On this basis, a new pruning strategy is proposed that deletes unnecessary branches while retaining the main road, and the strategy is used to simplify the relationship in the main road as much as possible.
Many existing methods of topological mapping based on Voronoi diagrams are one-time or global incremental. In other words, these methods have to update the whole map when the environment changes slightly, rather than updating the changed region. The efficiency of these methods decreases substantially with the expansion of the environmental scale, and it is difficult to build and update the topological map in real-time.
To solve this problem, we propose a local incremental updating method as shown in Figure 1a, which can update topological boundaries only within a changed region. The method is implemented by using the largest empty circle property of the Voronoi diagram. Thus, the real-time and high efficiency of map construction are ensured.
The benefit of our method is that it is both more compact and more efficient than the state-of-the-art methods. We evaluate the proposed incremental and pruned Voronoi mapper (IPVM) by comparing it against state-of-the-art and classical methods in smalland large-scale simulation benchmarks. The results conclude that the proposed method generates fewer vertices and shorter map lengths. Furthermore, we also validate the online topological map generator in a real-world experiment under some posed drifts. The main contributions of this paper are summarized as follows: Compactness: We propose a novel Voronoi diagram pruning strategy, which can extract the road skeleton in the environment in a sufficiently compact way. Efficiency: Based on the largest empty circle property of the Voronoi diagram, we propose a novel method to incrementally update the topological map in the changed region rather than the whole map. Even in large-scale and complex environments, the map can still maintain efficiency in real-time.
As illustrated in Figure 1b, the proposed work operates upon perception data and localization data, and it is composed of a local topological map generator (Section 2) and an incremental map generator (Section 3). This paper is structured as follows: In Sections 2 and 3, we introduce our proposed method in detail. Experimental results and analyses are presented in Section 4. Our work is summarized in Section 5.

Voronoi Diagram
The traditional Voronoi diagram is the spatial division of point sets, also known as the Thiessen polygon. We define points set (sites)

Pruned Voronoi Graph
The purpose of establishing a Voronoi diagram in this paper is to obtain the topological structure of the environment. The skeleton structure of the topological map is GVD, which divides space into generalized Voronoi cells around objects O [28]. However, irregular objects are difficult to define ( ) Then, the undirected graph G = (VG, EG) is constructed by the geometrical relationship of adjacent edges in Vor(P), and Gj V and Gp V are connected if The undirected Voronoi graph has many invalid edges that are short and isolated. We reduce those edges by two steps and obtain a reduced approximated generalized Voronoi graph (RAGVG) for further pruning. First, we find the edge Ei,j that has only one joint relation in the set EG except itself, in other words, the leaf node. We eliminate Ei,j by the robots' length dv and distance buffer dbuffer. Therefore, we regard the short edge Ei,j as an invalid edge by Equation (3) Second, this paper divides the topological structure G into two segmentations by topological relation: The main segmentation Sm where the robot is located and the isolated segmentation Ss, and s m S S    . In the divided algorithm, we select the closest edge Er with the robot location in the history graph and then add Er into the open list L and the priority queue Q. Aiming at traversing the whole G quickly, we ignore the distance of each edge and apply the uninformed search strategy known as the breadth-first search (BFS) algorithm until Q is empty. The vertices that have searched in BFS consist of the main segmentation Sm, and others consist of Ss. We eliminate the Ss that cannot arrive from the robot location in G, as shown in Figure 3. We also simplify the adjacent edges with similar angles to an edge for fast route planning. After the above steps, we obtain the RAGVG from the undirected Voronoi graph, and the final G is a connected graph, enabling the route path to be found at any starting point and ending point within the map. Through these steps, we do not need to cluster and extract the polygon of obstacles in complex and irregular environments. Hence, the algorithm reduces the error of geometric shape fitting and the complexity of constructing the GVD.

Incremental Topological Map Generator
Due to the continuous growth of the map region, the computation of RAGVG for the whole region will consume a large amount of resources. Based on the results in Section 2, we construct the local layer graph Glocal, and then we merge the Glocal into the global layer graph Gglobal to update the overlapping area in the whole map. The Voronoi vertices and edges are affected by added or removed sites and considering that obstacle points do not increase or decrease randomly in the global map but change in a fixed local area close to the robot's location, we replace the Glocal in region RN by the vertex property of the largest empty circle.

Perception Data Update
We divide sites in blocks by geometrical position and place them into file storage in a large scenario. The perception result of the latest frame input is overlapped with the historical map based on the grid index. Obstacle points in the same grid have the same index, as shown in Figure 4. There are also some useless points (grid points of dynamic obstacles), which will be deleted according to the attribute identification from the perception results.

Grid
Global sites Added sites Perception range

Voronoi Diagram Generation Region Identification
With q as the center of a circle, the largest circle without any sites in P is called the largest empty circle CP(q). Figure 5a.

Theorem 1. Vq is a vertex in Vor(P) if and only if there are at least three sites on the boundary of its largest empty circle CP(Vq), as illustrated in
The change in the Voronoi diagram is the vertices' position change essentially, and vertices' positions are influenced by adjacent sites. The sweep line algorithm generates Voronoi edges by constantly moving a fixed line [24]. Inspired by this idea, we design a minimum area identification algorithm based on the sweep line to obtain RN. The edges inside of the minimum polygon RN are changed or removed after the latest points PN update, while the edges and vertices outside of RN are consistent. We obtain the whole sites where PC is the sites within or on the circumference of CP(Vq). Note that vertex Vq does not change when any site sk belongs to historical site PH. In practice, we use the k-d tree to find the nearest site of Vp and its distance dk, which is the radius of CP(Vq). Then, we search sites sk, of which the distance to Vq are shorter than dk in the k-d tree. According to Theorem 1, if the size of PC is greater than 2 and all the sk belong to PH, Vp will not be influenced by PN.

Global Layer Update
We divide the whole space into two subspaces through the above steps, and the subspace RN aims to store the surfaces of potential change after the perception data update. Again, we extend the rectangle to contain the sites belonging to CP(Vq) and set the distance buffer dB to obtain the final region Rmax, as seen in Figure 6. The Voronoi diagram Vor(PN) is generated and pruned by sites within Rmax, and then we remove edges out of RN. It should be noted that the edge is out of RN if and only if two vertices are not within RN. In other words, we remove vertices out of RN in Vor(PN). Finally, we remove the obsolete vertices in Vor(P) within RN and fulfill the subspace with Vor(PN) to update the global layer map. In practice, we hold two graph structures in the global layer: Vor(P), which is pruned by Section 2 and constructed incrementally by Section 3, and Gglobal, which is con-

Results
We conduct experiments in both benchmark simulation and the real world. The benchmark is from the autonomous exploration development environment [29]. Our data collection platform in the real world is equipped with a 32-line LiDAR forward and a 16-line LiDAR backward. In the simulation, we do not consider the large location error and the closed-loop correction in SLAM mapping. The mapper algorithm runs on a 3.2 GHz, i7-8700 computer using a single CPU thread, and all methods replan at 1 Hz. We compare our method against four representative methods, all using open-source code to experiment on the topological mapper: TARE [13]: A method using random sampling to obtain topological maps for fast autonomous exploration; FAR [17]: A visibility graph-based method for fast route planning in known and unknown environments. These two methods generate maps incrementally. Additionally, we test an incremental Voronoi Diagram generator [25], which employs a dynamic variant of the brushfire algorithm to update those cells that are actually affected by the environmental change (abbreviated as DB) and a pure Voronoi diagram generator: Fortune's sweep line algorithm with the whole obstacle points [24].

Benchmark Experimental Results
We conduct simulation experiments in indoor (130 m × 100 m), tunnel (330 m × 250 m), and forest (150 m × 150 m) areas [29]. These scenarios include indoor and outdoor, sparse and dense, and different ranges and topological structures. We input the map size in DB and prune all Voronoi diagrams by our algorithm in Section 2. Then, we only record the time costs of DB and Fortune. The perception range is approximately 20 m, and the grid size is 0.2 m × 0.2 m in the perception data update.
In the simulated experiments, we use TARE to explore the whole environment. Figure 7a shows topological maps of the three methods in the indoor scenario. DB and Fortune have almost the same maps as ours. To quantify the efficiency and ability of environment representation, we record the time cost in each frame in Figure 7b, the total length of all edges, and the total number of vertices as the explored areas grow in Figure  7c We also compare methods quantitatively in larger and outdoor environments, as shown in Figure 8. Note that compared with the indoor environment, these two environments have many more branches and more irregular obstacles. All the benchmarked methods are able to generate maps that approximately cover the entire environment without a time limit. The maps constructed by TARE and FAR have many redundant edges and vertices, especially in the unstructured forest with visibility graph-based FAR, while TARE has insufficient sampling in some corners for the time limitation, as shown in Figure 7a. Our method prunes the invalid edges and obtains the near-centerline of adjacent regions, and thus, we obtain more comprehensible and lightweight maps.  Table 1 denotes the average time cost of the five methods. Fortune's algorithm is the most efficient in generating a pure Voronoi diagram, but without generating incrementally, it costs more and more time in global layer graph construction. DB must know the scene's size to establish a grid map and costs more time when facing a larger environment, such as a tunnel. Our method is slightly influenced by the number of obstacles in the environment, so the average time cost increases in the forest and tunnel. The average time cost of our method in all scenarios decreases by 30% compared to DB, 37% compared to TARE, and is much shorter than that of the other methods. Tables 2 and 3 present the simulation results in map metrics. Although the forest area is smaller than the tunnel, many more obstacles lead to additional vertices. The proposed method establishes a more compact connection than the other methods with fewer vertices in Table 2. The other point we can see is that our maps' total length is over several orders of magnitude shorter than the other methods' in Table 3, especially in the complex forest. The result indicates the strength of our framework in generating compact topological maps.

Physical Experimental Results
To further validate the proposed method, we conduct field experiments in residential areas (100 m × 100 m), and the trees on both sides of the road give some posed drifts. The experimental environment and associated results are displayed in Figure 9. The total length of the topological map is 0.67 km, and there are 147 vertices in total. Furthermore, we ignore people, moving cars, and bicyclists in the perception data for the completeness of the map. Figure 10 displays the routing results using our maps with random starting and ending points. The average time cost in A* path searching at 470 iterations is 0.55 ms, which is more efficient than the algorithm in metric maps, such as A*, RRT, and BIT* [17]. The above experiments demonstrate the capability of our method in complex real-world scenarios.

Conclusions
In this paper, we propose a compact and efficient topological mapping method based on the obstacle points from LiDAR. First, the sweep line algorithm is used to generate a Voronoi diagram from the obstacle information in the environment. Then, to obtain a more compact map, we use a pruning strategy to delete redundant vertices and edges in the graph. Furthermore, to keep it efficient when working in large-scale scenarios, we propose a new incremental updating method for Voronoi diagrams based on the property of the largest empty circle to accurately update the changed regions and their boundaries. Our method is evaluated against state-of-the-art methods in simulation environments, and the results show that our method generates a much more compact topological map while consuming the lowest average computation. The real-world tests also demonstrate the competence of our method. In the future, we will further extend the method on remote sensing images from UAVs.