<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Archiving and Interchange DTD v2.3 20070202//EN" "archivearticle.dtd">
<article article-type="methods-article" dtd-version="2.3" xml:lang="EN" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Robot. AI</journal-id>
<journal-title>Frontiers in Robotics and AI</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Robot. AI</abbrev-journal-title>
<issn pub-type="epub">2296-9144</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">843816</article-id>
<article-id pub-id-type="doi">10.3389/frobt.2022.843816</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Robotics and AI</subject>
<subj-group>
<subject>Methods</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>Deep Learning-Based Complete Coverage Path Planning With Re-Joint and Obstacle Fusion Paradigm</article-title>
<alt-title alt-title-type="left-running-head">Lei et&#x20;al.</alt-title>
<alt-title alt-title-type="right-running-head">Deep Learning Coverage Path Planning</alt-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname>Lei</surname>
<given-names>Tingjun</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<uri xlink:href="https://loop.frontiersin.org/people/1324852/overview"/>
</contrib>
<contrib contrib-type="author" corresp="yes">
<name>
<surname>Luo</surname>
<given-names>Chaomin</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<xref ref-type="corresp" rid="c001">&#x2a;</xref>
<uri xlink:href="https://loop.frontiersin.org/people/1328679/overview"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Jan</surname>
<given-names>Gene Eu</given-names>
</name>
<xref ref-type="aff" rid="aff2">
<sup>2</sup>
</xref>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Bi</surname>
<given-names>Zhuming</given-names>
</name>
<xref ref-type="aff" rid="aff3">
<sup>3</sup>
</xref>
<uri xlink:href="https://loop.frontiersin.org/people/1637617/overview"/>
</contrib>
</contrib-group>
<aff id="aff1">
<sup>1</sup>
<institution>Department of Electrical and Computer Engineering</institution>, <institution>Mississippi State University</institution>, <addr-line>Mississippi State</addr-line>, <addr-line>MS</addr-line>, <country>United&#x20;States</country>
</aff>
<aff id="aff2">
<sup>2</sup>
<institution>Department of Electrical Engineering</institution>, <institution>National Taipei University, and Tainan National University of the Arts</institution>, <addr-line>Taipei</addr-line>, <country>Taiwan</country>
</aff>
<aff id="aff3">
<sup>3</sup>
<institution>Department of Civil and Mechanical Engineering</institution>, <institution>Purdue University Fort Wayne</institution>, <addr-line>Fort Wayne</addr-line>, <addr-line>IN</addr-line>, <country>United&#x20;States</country>
</aff>
<author-notes>
<fn fn-type="edited-by">
<p>
<bold>Edited by:</bold> <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/1249371/overview">Jason Gu</ext-link>, Dalhousie University, Canada</p>
</fn>
<fn fn-type="edited-by">
<p>
<bold>Reviewed by:</bold> <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/1475325/overview">Chaoqun Wang</ext-link>, Shandong University, China</p>
<p>
<ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/1385620/overview">Guoming Li</ext-link>, Iowa State University, United&#x20;States</p>
</fn>
<corresp id="c001">&#x2a;Correspondence: Chaomin Luo, <email>Chaomin.Luo@ece.msstate.edu</email>
</corresp>
<fn fn-type="other">
<p>This article was submitted to Robot and Machine Vision, a section of the journal Frontiers in Robotics and&#x20;AI</p>
</fn>
</author-notes>
<pub-date pub-type="epub">
<day>22</day>
<month>03</month>
<year>2022</year>
</pub-date>
<pub-date pub-type="collection">
<year>2022</year>
</pub-date>
<volume>9</volume>
<elocation-id>843816</elocation-id>
<history>
<date date-type="received">
<day>27</day>
<month>12</month>
<year>2021</year>
</date>
<date date-type="accepted">
<day>11</day>
<month>02</month>
<year>2022</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#xa9; 2022 Lei, Luo, Jan and Bi.</copyright-statement>
<copyright-year>2022</copyright-year>
<copyright-holder>Lei, Luo, Jan and Bi</copyright-holder>
<license xlink:href="http://creativecommons.org/licenses/by/4.0/">
<p>This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these&#x20;terms.</p>
</license>
</permissions>
<abstract>
<p>With the introduction of autonomy into the precision agriculture process, environmental exploration, disaster response, and other fields, one of the global demands is to navigate autonomous vehicles to completely cover entire unknown environments. In the previous complete coverage path planning (CCPP) research, however, autonomous vehicles need to consider mapping, obstacle avoidance, and route planning simultaneously during operating in the workspace, which results in an extremely complicated and computationally expensive navigation system. In this study, a new framework is developed in light of a hierarchical manner with the obtained environmental information and gradually solving navigation problems layer by layer, consisting of environmental mapping, path generation, CCPP, and dynamic obstacle avoidance. The first layer based on satellite images utilizes a deep learning method to generate the CCPP trajectory through the position of the autonomous vehicle. In the second layer, an obstacle fusion paradigm in the map is developed based on the unmanned aerial vehicle (UAV) onboard sensors. A nature-inspired algorithm is adopted for obstacle avoidance and CCPP re-joint. Equipped with the onboard LIDAR equipment, autonomous vehicles, in the third layer, dynamically avoid moving obstacles. Simulated experiments validate the effectiveness and robustness of the proposed framework.</p>
</abstract>
<kwd-group>
<kwd>Deep learning-based path generation</kwd>
<kwd>complete coverage path planning</kwd>
<kwd>obstacle approximation and fusion</kwd>
<kwd>nature-inspired path planning</kwd>
<kwd>velocity-based local navigator</kwd>
<kwd>re-joint paradigm</kwd>
</kwd-group>
</article-meta>
</front>
<body>
<sec id="s1">
<title>1 Introduction</title>
<p>In real-world applications such as environmental exploration (<xref ref-type="bibr" rid="B33">Rose and Chilvers, 2018</xref>), environmental sensing (<xref ref-type="bibr" rid="B35">Stolfi et&#x20;al., 2021</xref>) and disaster response (<xref ref-type="bibr" rid="B6">Carrillo-Zapata et&#x20;al., 2020</xref>), and other autonomous vehicle applications such as agricultural harvesting and forest surveillance, prospecting, search and rescue vehicles, concurrent complete coverage path planning (CCPP), and mapping are needed to navigate a vehicle to cover every part of the terrain in unknown environments (<xref ref-type="bibr" rid="B41">Wang et&#x20;al., 2019</xref>; <xref ref-type="bibr" rid="B14">Iqbal et&#x20;al., 2020</xref>; <xref ref-type="bibr" rid="B7">C&#xe8;sar-Tondreau et&#x20;al., 2021</xref>; <xref ref-type="bibr" rid="B26">Meng, 2021</xref>). In previous CCPP research, the vehicle needs to concurrently consider mapping, obstacle avoidance, and route planning intractably while traversing in a workspace, which makes the entire navigation system fairly complicated and computationally expensive (<xref ref-type="bibr" rid="B16">Lee et&#x20;al., 2014</xref>; <xref ref-type="bibr" rid="B30">Poonawala and Spong, 2017</xref>; <xref ref-type="bibr" rid="B28">Niyaz et&#x20;al., 2019</xref>; <xref ref-type="bibr" rid="B15">Jiang et&#x20;al., 2020</xref>). Particularly, in real-time navigation, re-planning with unforeseen moving obstacles may be computationally expensive. This study proposes a new framework that tackles issues of environment mapping, path generation, CCPP, and dynamic obstacle avoidance in a hierarchical manner.</p>
<sec id="s1-1">
<title>1.1 Related Work</title>
<p>For decades, CCPP has undergone extensive research, and many algorithms have emerged, such as the bio-inspired neural network (BNN) approach, the Boustrophedon Cellular Decomposition (BCD) method, and the deep reinforcement learning approach (DRL). <xref ref-type="bibr" rid="B23">Luo and Yang (2008)</xref> developed the bio-inspired neural network (BNN) method to navigate robots to perform CCPP while avoiding obstacles within dynamic environments in real time (<xref ref-type="bibr" rid="B48">Zhu et&#x20;al., 2017</xref>). The robot is attracted to unscanned areas and repelled by the accomplished areas or obstacles based on the neuron activity in the BNN given by the shunting equation (<xref ref-type="bibr" rid="B45">Yang and Luo, 2004</xref>; <xref ref-type="bibr" rid="B22">Li et&#x20;al., 2018</xref>). Without any prior knowledge about the environment, the next position of the robot depends on the current position of the robot and neuron activity associated with its current position (<xref ref-type="bibr" rid="B24">Luo et&#x20;al., 2016</xref>). However, it is time- and energy-consuming for the vehicles and requires high computing resources to process fine-resolution mapping (<xref ref-type="bibr" rid="B36">Sun et&#x20;al., 2018</xref>). Unlike the BNN approach, the boundary representation method that defines the workspace is adopted by the Boustrophedon Cellular Decomposition (BCD) method and the deep reinforcement learning approach (DRL). The BCD method is proposed by <xref ref-type="bibr" rid="B1">Acar and Choset (2002)</xref>, which decomposes the environment into many line scan partitions and is explored through a back-and-forth path (BFP) in the same direction. The BCD is an effective CCPP method with more diverse, non-polygonal obstacles in workspace. In trapezoidal decomposition as a cell, it is covered in back-and-forth patterns. For a complex configuration space with irregular-shaped obstacles, BCD needs to construct a graph that represents the adjacency connections of the cells in the boustrophedon decomposition. Therefore, a deep leaning-based method may promote it to a more efficient CCPP method (<xref ref-type="bibr" rid="B37">S&#xfc;nderhauf et&#x20;al., 2018</xref>; <xref ref-type="bibr" rid="B39">Valiente et&#x20;al., 2020</xref>; <xref ref-type="bibr" rid="B32">Rawashdeh et&#x20;al., 2021</xref>). Similarly, <xref ref-type="bibr" rid="B27">Nasirian et&#x20;al. (2021)</xref> utilized traditional graph theory to segment the workspace and proposed a deep reinforcement learning approach to solve the CCPP problem in the complex workspace. However, the most common shape of the workspace is represented by polygons. As irregular areas of non-convex polygons, they can still be decomposed into multiple convex polygons (<xref ref-type="bibr" rid="B21">Li et&#x20;al., 2011</xref>). Thus, the representation of polygons is also adopted in this study to express most workspace that needs to be explored. Such a method simplifies the complex environments and solves the covering irregularity for vehicles (<xref ref-type="bibr" rid="B31">Quin et&#x20;al., 2021</xref>).</p>
<p>Faster R-CNN originated from R-CNN, and Fast CNN uses a unified neural network (NN) for object detection shown in <xref ref-type="fig" rid="F4">Figure&#x20;4A</xref>. The faster R-CNN avoids using selective search, which accelerates region selection and further reduces computational costs. The faster R-CNN detector is mainly composed of a region proposal network (RPN), which generates region proposals, and a network that uses these generated feature patches (FP) for object detection. The region of interest (ROI) pooling layer is used to resize the feature patch (RFP), finally concatenated with a set of fully connected (FC) layers in our study. The two fully connected NN layers are utilized to refine the location of the bounding box and classify the objects. Faster R-CNN effectively uses the bounding box in our studies to identify and locate vehicles and obstacles in the images. This is also applied to the map obtained from farms, search, and rescue scenes to distinguish the vehicles, machines, and human beings on the&#x20;image.</p>
<p>Although the above-mentioned CCPP approaches have achieved remarkable results, such approaches may still be sub-optimal when the starting and target positions required by the vehicle are included in the path. Especially for multiple sub-region exploration tasks shown in <xref ref-type="fig" rid="F1">Figure&#x20;1A</xref>, the task is considered continuous to explore the four sub-regions, and the starting point of the next sub-region to be explored is the target point of the last sub-region as shown by the red circles in <xref ref-type="fig" rid="F1">Figure&#x20;1</xref>. The selection of intermediate target points for multiple polygonal exploration areas is still an open problem because it needs to consider the shape and relative position of each sub-region, as well as the entrance and exit of the exploration area (<xref ref-type="bibr" rid="B12">Graves and Chakraborty, 2018</xref>). For simplicity, the entrances of the next sub-region are selected as target points here. The connection path length from the starting point to the target point should be considered, as shown in the blue lines in <xref ref-type="fig" rid="F1">Figure&#x20;1B</xref>. In this case, ignoring the connection path may increase the complete path length of the overall exploration task (<xref ref-type="bibr" rid="B43">Xie et&#x20;al., 2019</xref>). Thus, it is vital to consider the starting and target points of the vehicle, including the exploration task, and obtain a shorter path that effectively utilizes the limited onboard resources. Another challenging problem that arises in CCPP is obstacle avoidance (<xref ref-type="bibr" rid="B3">An et&#x20;al., 2018</xref>; <xref ref-type="bibr" rid="B42">Wang et&#x20;al., 2021</xref>). Based on the excellent optimization and search capabilities of nature-inspired algorithms, researchers have recently explored many nature-inspired computational approaches to solve vehicle collision-free navigation problems (<xref ref-type="bibr" rid="B8">Deng et&#x20;al., 2016</xref>; <xref ref-type="bibr" rid="B9">Ewerton et&#x20;al., 2019</xref>; <xref ref-type="bibr" rid="B19">Lei et&#x20;al., 2019</xref>, <xref ref-type="bibr" rid="B20">2021</xref>; <xref ref-type="bibr" rid="B34">Segato et&#x20;al., 2019</xref>). For instance, a hybrid fireworks algorithm with LIDAR-based local navigation was developed by <xref ref-type="bibr" rid="B17">Lei et&#x20;al. (2020a)</xref>, capable of generating short collision-free trajectories in unstructured environments. <xref ref-type="bibr" rid="B47">Zhou et&#x20;al. (2019)</xref> developed a modified firefly algorithm with the self-adaptive step factor to avoid the premature and improve the operational efficiency of autonomous vehicles. <xref ref-type="bibr" rid="B18">Lei et&#x20;al. (2020b)</xref> proposed a graph-based model integrated with ant colony optimization (ACO) to navigate the robot under the robot&#x2019;s kinematics constraints. <xref ref-type="bibr" rid="B44">Xiong et&#x20;al. (2021)</xref> further improved ACO using the time Taboo strategy to improve the algorithm convergence speed and global search ability in a dynamic environment. <xref ref-type="bibr" rid="B7">C&#xe8;sar-Tondreau et&#x20;al. (2021)</xref> proposed a human-demonstrated navigation system, which integrates the behavioral cloning model into an off-the-shelf navigation&#x20;stack.</p>
<fig id="F1" position="float">
<label>FIGURE 1</label>
<caption>
<p>
<bold>(A)</bold> Illustration of multiple sub-regions exploration task. <bold>(B)</bold> The entire CCPP trajectory of multiple sub-regions with connection&#x20;paths.</p>
</caption>
<graphic xlink:href="frobt-09-843816-g001.tif"/>
</fig>
</sec>
<sec id="s1-2">
<title>1.2 Proposed Framework and Original Contributions</title>
<p>This study proposes a progressive three-layer framework for the CCPP navigation of autonomous vehicles. Initially, in the first layer, a new type of deep learning-based complete coverage path generation method is developed to generate complete coverage trajectories without considering obstacles. A feature learning-enabled fully convolutional deep neural network (FCNN) model is developed to identify the edges of the workspace to be explored, in combination with the starting and target positions of the vehicle to estimate waypoints given an occupancy grid map and generate the CCPP paths. The generated paths are references to guide the vehicle in the following layers to reset and continue CCPP with obstacle avoidance once traversing in the vicinity of obstacles, which improves the computational efficiency of vehicle re-planning.</p>
<p>In the second layer, the obstacles in the environment are considered in this stage. A nature-inspired path planning method is proposed to perform autonomous navigation of vehicles in the environment. Particularly, the vehicle deeply re-plans when it traverses in the vicinity of obstacles. In this study, the Bat algorithm is utilized to plan a collision-free trajectory in light of the size and shape of the obstacles. Once the vehicle completes the re-planning near the obstacles, a new re-joint mechanism is developed to enable the vehicle to re-join complete coverage trajectories. Additionally, an environment-based obstacle approximation and fusion paradigm is developed using image processing of feature extraction. Based on the proposed obstacle approximation and fusion method and the nature-inspired path planning method integrated with the re-joint mechanism, the autonomous vehicle takes less computational effort for optimal path planning on the map populated with obstacles.</p>
<p>Furthermore, a reactive local navigator in the third layer is developed to dynamically update the path and map in real time, so as to avoid moving obstacles and unknown obstacles in the dynamical environment. It dynamically adjusts the speed and direction based on&#x20;onboard LIDAR sensors to navigate autonomous vehicles locally, thereby benefiting obstacle avoidance and safety assurance.</p>
<p>Overall, the framework composed of three layers advances accurately and is efficiently based on the environmental information layer by layer. Specifically, in the first layer, only the satellite images are needed to provide the size and shape of the searching area and the vehicle&#x2019;s initial and final positions. In the second layer, the images obtained from the unmanned aerial vehicle (UAV) are required to gather detailed information of the obstacles in the environment, such as minecarts, planters, and vehicles. The third layer is based on onboard LIDAR sensors, used for real-time local reactive navigation of autonomous vehicles, avoiding moving obstacles, and building maps simultaneously. The contributions of this study are summarized as follows:<list list-type="simple">
<list-item>
<p>1) A hierarchical framework is proposed for the autonomous vehicle CCPP navigation in real-time environments;</p>
</list-item>
<list-item>
<p>2) A deep learning-based complete coverage path generation method is developed to generate complete coverage trajectories without considering obstacles;</p>
</list-item>
<list-item>
<p>3) For the problem of obstacle avoidance, an obstacle fusion paradigm and Bat algorithm-based path re-joint method is proposed;</p>
</list-item>
<list-item>
<p>4) Regarding avoiding dynamic and unknown obstacles in real-time environments, a local reactive navigator is introduced.</p>
</list-item>
</list>
</p>
<p>The rest of this study is organized as follows: in <xref ref-type="sec" rid="s2">Section 2</xref>, the deep learning-based complete coverage path generation method is addressed. The second layer with regard to the nature-inspired algorithm and re-joint mechanism is explained in <xref ref-type="sec" rid="s3">Section 3</xref>. <xref ref-type="sec" rid="s4">Section 4</xref> shows the reactive local navigator based on LIDAR sensors, which is the third layer in our proposed framework. Simulation and comparison studies are presented in <xref ref-type="sec" rid="s5">Section 5</xref>. Several important properties of the presented framework are summarized in <xref ref-type="sec" rid="s6">Section&#x20;6</xref>.</p>
</sec>
</sec>
<sec id="s2">
<title>2 Deep Learning-Based Complete Coverage Path Planning</title>
<p>In the first layer, a deep learning-based method is proposed to generate a path with the starting and end positions while considering the shape of the explored areas for creating the optimal back-and-forth (BFP) coverage trajectories.</p>
<sec id="s2-1">
<title>2.1 Preliminaries</title>
<p>In this section, the required assumptions are described for the proposed method. The region to be explored is assumed in a 2D environment, and the configuration space <italic>&#x2127;</italic> for autonomous vehicle &#x394; is formulated as <inline-formula id="inf1">
<mml:math id="m1">
<mml:mi>&#x2127;</mml:mi>
<mml:mo>&#x2286;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="double-struck">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
</mml:math>
</inline-formula>. For this study, the boundary of the area to be explored is first obtained based on image processing. There are many existing studies on edge detection (<xref ref-type="bibr" rid="B29">Poma et&#x20;al., 2020</xref>; <xref ref-type="bibr" rid="B27">Nasirian et&#x20;al., 2021</xref>), proving its practicability and reliability (<xref ref-type="bibr" rid="B40">Wagner and Oppelt, 2020</xref>). Hence, this study omitted this step and the workspace is directly analyzed. Each region is described by a standard form of convex polygon, <inline-formula id="inf2">
<mml:math id="m2">
<mml:mi>&#x3b6;</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">{</mml:mo>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="script">E</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">}</mml:mo>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="script">V</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">{</mml:mo>
<mml:mrow>
<mml:mn>1,2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">}</mml:mo>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="script">E</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">{</mml:mo>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mn>1,2</mml:mn>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo stretchy="false">}</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>, where <inline-formula id="inf3">
<mml:math id="m3">
<mml:mi mathvariant="script">V</mml:mi>
</mml:math>
</inline-formula> is a set of vertices in clockwise order and <inline-formula id="inf4">
<mml:math id="m4">
<mml:mi mathvariant="script">E</mml:mi>
</mml:math>
</inline-formula> a set of edges. The vehicle&#x2019;s exploration range (for the task of seeding, cleaning, rescuing, etc<italic>.</italic>) is a circle with a diameter of <italic>d</italic>. The vehicle starting position is denoted as <inline-formula id="inf5">
<mml:math id="m5">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula> and the end position is denoted as <inline-formula id="inf6">
<mml:math id="m6">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>e</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>. The CCPP path is denoted as <inline-formula id="inf7">
<mml:math id="m7">
<mml:mi>&#x3c9;</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">{</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">F</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">F</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">F</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">}</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>, while the full CCPP path is <inline-formula id="inf8">
<mml:math id="m8">
<mml:mi mathvariant="normal">&#x3a9;</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">{</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>e</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">}</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>. There are infinite potential solutions for covering an area known as an NP-hard problem (<xref ref-type="bibr" rid="B4">Arkin et&#x20;al., 2000</xref>). Therefore, a variety of search patterns have been developed, such as star, zigzag, spiral, or BFP. The BFP path is utilized to establish the complete coverage path with advantages of low spatial complexity to be tracked easily by the autonomous vehicle.</p>
</sec>
<sec id="s2-2">
<title>2.2 Search Direction</title>
<p>Previous research has mainly focused on the CCPP exploration in the workspace to be explored while ignoring the vehicle&#x2019;s starting and end positions in real-world scenarios. However, based on energy optimization and constraint considerations, the entire trajectories need to be considered. Therefore, for multiple edges of the polygons, the starting and end points of the vehicle should be combined to determine the vehicle&#x2019;s search direction. Meanwhile, in light of the properties of the BFP-based CCPP trajectories, the optimal trajectory lines are parallel to one of the edges of the area (<xref ref-type="bibr" rid="B38">Torres et&#x20;al., 2016</xref>). The procedure of the search direction is developed in <xref ref-type="other" rid="alg1">Algorithm 1</xref>, and the process details are discussed in the following sections. The algorithm requires searching the set of opposite vertex pairs <italic>&#x3b7;</italic>, such as vertices (<italic>i</italic>, <italic>j</italic>) in <xref ref-type="fig" rid="F2">Figure&#x20;2A</xref>. One of the vertexes, such as <italic>i</italic>, finds its adjacent vertex <italic>i</italic>
<sub>
<italic>adj</italic>
</sub>, and the BFP is formed in parallel to the line <inline-formula id="inf9">
<mml:math id="m9">
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo>&#x304;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:math>
</inline-formula> with the gap distance based on the vehicle exploration range <italic>d</italic>. In this case, the search direction <italic>&#x3b8;</italic> is perpendicular to <inline-formula id="inf10">
<mml:math id="m10">
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo>&#x304;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:math>
</inline-formula> toward the <italic>j</italic>. The function <italic>Dist</italic> (<italic>i</italic>, <italic>j</italic>) calculates <inline-formula id="inf11">
<mml:math id="m11">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">L</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>, the total length of the BFP trajectory in the workspace.<disp-formula id="e1">
<mml:math id="m12">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">L</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:munderover accentunder="false" accent="false">
<mml:mrow>
<mml:mo>&#x2211;</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:munderover>
<mml:msqrt>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">F</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">F</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">F</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">F</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:msqrt>
</mml:math>
<label>(1)</label>
</disp-formula>
</p>
<fig id="F2" position="float">
<label>FIGURE 2</label>
<caption>
<p>
<bold>(A)</bold> Construction of BFP path. <bold>(B)</bold> BFP search direction based on the vehicle&#x2019;s starting and end position.</p>
</caption>
<graphic xlink:href="frobt-09-843816-g002.tif"/>
</fig>
<p>Then, the starting and end points of the autonomous vehicle are enclosed in the total length <inline-formula id="inf12">
<mml:math id="m13">
<mml:mi mathvariant="script">L</mml:mi>
</mml:math>
</inline-formula> to obtain the optimal CCPP path &#x3a9;. Notably, the optimal BFP-based CCPP trajectory is first obtained in light of the edge of the explored polygon before combining it with the start and end points to obtain the minimum total length. Thus, the search direction <italic>&#x3b8;</italic> of the BFP is obtained in the range of [ &#x2212; <italic>&#x3c0;</italic>, <italic>&#x3c0;</italic>] represented by dashed lines with autonomous vehicle BFP segmentation lines, as shown in <xref ref-type="fig" rid="F2">Figure&#x20;2B</xref>.</p>
<p>
<statement content-type="algorithm" id="alg1">
<label>Algorithm 1</label>
<p>Pseudo-code for search direction.</p>
<p>
<inline-graphic xlink:href="frobt-09-843816-fx1.tif"/>
</p>
</statement>
</p>
</sec>
<sec id="s2-3">
<title>2.3 Deep Learning-Based Path Generation</title>
<p>Through the obtained BFP path segmentation line, we take the points that are intersections of the segmentation line and the workspace edge as a regression problem, and a fully convolutional deep neural network is utilized to estimate the positions of different points. In light of the turning radius of the vehicle, as shown in <xref ref-type="fig" rid="F3">Figure&#x20;3B</xref>, the global CCPP trajectories are predicted by the neural network (NN) from the input image. The input image with resolution <italic>M</italic>&#x20;&#xd7; <italic>N</italic> is first divided into an <italic>I</italic>
<sub>
<italic>M</italic>
</sub> &#xd7; <italic>I</italic>
<sub>
<italic>N</italic>
</sub> grid map (<xref ref-type="fig" rid="F3">Figure&#x20;3A</xref>). The grid map <italic>I</italic>
<sub>
<italic>M</italic>
</sub> &#xd7; <italic>I</italic>
<sub>
<italic>N</italic>
</sub> is <italic>h</italic> times smaller than the input image. Each grid contains <italic>h</italic>&#x20;&#xd7; <italic>h</italic> pixels, and the confidence probability <inline-formula id="inf13">
<mml:math id="m14">
<mml:mi mathvariant="script">C</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula> denotes the confidence of the points in the grid <italic>s</italic>. <inline-formula id="inf14">
<mml:math id="m15">
<mml:mi mathvariant="script">C</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula> tends to zero when no point in the grid <italic>s</italic> while the confidence probability <inline-formula id="inf15">
<mml:math id="m16">
<mml:mi mathvariant="script">C</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x3e;</mml:mo>
<mml:mi mathvariant="script">T</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula> represents the possible points in the grid <italic>s</italic>, where <inline-formula id="inf16">
<mml:math id="m17">
<mml:mi mathvariant="script">T</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula> denotes the confidence threshold. In each grid, the location of the final CCPP trajectory point is further refined by <italic>&#x3b4;</italic>
<sub>
<italic>m</italic>
</sub> and <italic>&#x3b4;</italic>
<sub>
<italic>n</italic>
</sub> in accordance with the vehicle turning radius.</p>
<fig id="F3" position="float">
<label>FIGURE 3</label>
<caption>
<p>
<bold>(A)</bold> The occupancy grid map of the workspace. <bold>(B)</bold> The computation of the CCPP path waypoint location based on vehicle turning radius. <bold>(C)</bold> Overview of the deep learning architecture.</p>
</caption>
<graphic xlink:href="frobt-09-843816-g003.tif"/>
</fig>
<p>The fully convolutional neural network (FCN) designed by an input tensor <inline-formula id="inf17">
<mml:math id="m18">
<mml:mi mathvariant="script">X</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula> is gradually convolved by a stack of <italic>n</italic> residual reduction modules as shown in <xref ref-type="fig" rid="F3">Figure&#x20;3C</xref>. Each module is composed of a series of two-dimensional convolutional layers, with Mish as the activation function, and the channel and spatial attention layer, allowing the network to highlight more relevant features. In addition, each module ends with a convolutional layer with stride 2 to reduce the spatial dimension of the input tensor. After <italic>n</italic> residual reduction modules, the two dimensions of the first dimension are reduced to a factor <italic>h</italic>&#x20;&#x2b; 1. Therefore, we insert a transposed convolutional layer with a stride of 2 to obtain a two-dimensional output tensor of <italic>I</italic>
<sub>
<italic>M</italic>
</sub> &#xd7; <italic>I</italic>
<sub>
<italic>N</italic>
</sub> (refer to <xref ref-type="fig" rid="F3">Figure&#x20;3</xref>). Add a remaining connection of the output tensor from the <italic>n</italic>&#x20;&#x2212; 1 block to include important spatial information in the tensor before the last layer. Finally, similar to a single-stage target detection network, the output tensor <inline-formula id="inf18">
<mml:math id="m19">
<mml:mi mathvariant="script">Y</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula> and the shape <italic>I</italic>
<sub>
<italic>M</italic>
</sub> &#xd7; <italic>I</italic>
<sub>
<italic>N</italic>
</sub> &#xd7; 3 are calculated by 1 &#xd7; 1 convolution operation, and the sigmoid and tanh are utilized as the activation of the first and last two channels, respectively. Thus, the confidence probability <inline-formula id="inf19">
<mml:math id="m20">
<mml:mi mathvariant="script">C</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula> obtained by sigmoid predicts the existence of possible waypoints. In contrast, the tanh function is limited between &#x2212;1 and &#x2b;1, and the two coordinate compensations <italic>&#x3b4;</italic>
<sub>
<italic>m</italic>
</sub> and <italic>&#x3b4;</italic>
<sub>
<italic>n</italic>
</sub> of each unit are calculated.</p>
</sec>
</sec>
<sec id="s3">
<title>3 Path Re-Joint and Obstacle Fusion</title>
<p>In the second layer, through the generated deep learning-based coverage paths, the obstacles in the environment are considered.</p>
<sec id="s3-1">
<title>3.1 Obstacle Detection and Approximation</title>
<p>In the field of autonomous vehicles, map information is highly important, especially for global path planning, which determines the accuracy of the trajectory. However, for complex environments, such as disaster sites, many obstacles are scattered or gathered in various places, which bring safety and computational difficulties to the path planning of autonomous vehicles. When acquiring the disaster area or agricultural field map through drones, we need to retrieve map information to obtain specific locations of obstacles and approximate and merge a large number of obstacles into several large convex obstacles, thereby improving the efficiency of search and exploration tasks. Especially at the disaster site, the rescue time is limited, and it is important to quickly locate and approximate obstacles in the complex environment. Therefore, this section proposes an effective method for obstacle detection, obstacle approximation, and fusion.</p>
<sec id="s3-1-1">
<title>3.1.1 Object Detection With Bounding Box</title>
<p>Many methods have been developed for object detection. The most commonly used methods include single shot detector (SSD), region-based faster convolutional neural network (Faster R-CNN), region-based fully connected network (RCF). When these deep learning CNN models perform object detection and classification, they will obtain a bounding box based on the object&#x2019;s shape. The bounding box provides us with the specific location of the object in the image and the object classification to be found. In this study, we use Faster R-CNN as our object detection method, which has been proven an efficient and accurate method in many fields (<xref ref-type="bibr" rid="B2">Alzadjali et&#x20;al., 2021</xref>).</p>
</sec>
<sec id="s3-1-2">
<title>3.1.2 Obstacle Approximation and Fusion</title>
<p>In this section, obstacles are approximated and merged into larger convex-shaped obstacles. Through object detection, we can obtain a large amount of information in the pictures, such as inaccessible and dangerous areas. The formed map is of great assistance to the subsequent search and distribution of ground vehicles. However, excessively unorganized obstacle information on the map will cause computational costs to vehicle path planning, especially as overlapping obstacles and excessive tiny obstacles, which are very close to each other. Therefore, it is essential to integrate multiple tiny obstacles or overlapping obstacles into an approximation of the overall obstacle.</p>
<p>The method of finding the approximated obstacles is to find the obstacles to be integrated in the area. For example, in <xref ref-type="fig" rid="F4">Figure&#x20;4B</xref>, the trucks parked in the mining site are considered a greater obstacle in the environment. The red bounding box is generated by the object detection method before the approximation method merges multiple bounding boxes into convex obstacles enclosed in the blue lines. Unmanned aerial vehicles (UAVs) are particularly suitable for searching large-scale farms and dangerous areas (<xref ref-type="bibr" rid="B13">Hassler and Baysal-Gurel, 2019</xref>). The detailed information of the scene generated through the photos of the drone&#x2019;s onboard camera has made great contributions to agriculture, search, and rescue (<xref ref-type="bibr" rid="B2">Alzadjali et&#x20;al., 2021</xref>). By merging a large number of scattered or even overlapping bounding boxes in the image to approximate as a convex obstacle, we need to select a set of suitable points from the bounding&#x20;box.</p>
<fig id="F4" position="float">
<label>FIGURE 4</label>
<caption>
<p>
<bold>(A)</bold> Schematic illustration of the faster region-based convolutional neural network (Faster R-CNN) object detection method. <bold>(B)</bold> The obstacle approximation for a real map. Red boxes are the bounding boxes for object detection, and the green boxes are the approximation of the objects.</p>
</caption>
<graphic xlink:href="frobt-09-843816-g004.tif"/>
</fig>
<p>Assuming that the image has been gathered and recognized, the selection of points that approximates the obstacles will not be internal of the bounding box; thus. only the corners of the bounding box need to be considered. We then define the four reference points as the leftmost <inline-formula id="inf20">
<mml:math id="m21">
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>, topmost <inline-formula id="inf21">
<mml:math id="m22">
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>, rightmost <inline-formula id="inf22">
<mml:math id="m23">
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>, and bottommost <inline-formula id="inf23">
<mml:math id="m24">
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>b</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula> points of the convex hull as shown in <xref ref-type="fig" rid="F5">Figure&#x20;5</xref>. The reference points are found by initially identifying the boundary box of obstacles to be integrated into the area. Then, it finds the midpoint of the bounding box of the boundary obstacle and expands half of the short side of the rectangular bounding box. These four reference points are extended to an axis-aligned rectangular <inline-formula id="inf24">
<mml:math id="m25">
<mml:mi mathvariant="script">ABCD</mml:mi>
</mml:math>
</inline-formula>, where <inline-formula id="inf25">
<mml:math id="m26">
<mml:mi mathvariant="script">A</mml:mi>
</mml:math>
</inline-formula>, <inline-formula id="inf26">
<mml:math id="m27">
<mml:mi mathvariant="script">B</mml:mi>
</mml:math>
</inline-formula>, <inline-formula id="inf27">
<mml:math id="m28">
<mml:mi mathvariant="script">C</mml:mi>
</mml:math>
</inline-formula>, and <inline-formula id="inf28">
<mml:math id="m29">
<mml:mi mathvariant="script">D</mml:mi>
</mml:math>
</inline-formula> are the intersection between the vertical line through one reference point and the horizontal line through another reference point. These four reference points connection lines decompose the rectangular <inline-formula id="inf29">
<mml:math id="m30">
<mml:mi mathvariant="script">ABCD</mml:mi>
</mml:math>
</inline-formula> into four triangle sections, such as top-left triangle <inline-formula id="inf30">
<mml:math id="m31">
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mi mathvariant="script">D</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>. The vertex points at the top left section, top right section, bottom right section, and bottom left section are denoted as <inline-formula id="inf31">
<mml:math id="m32">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>, <inline-formula id="inf32">
<mml:math id="m33">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>, <inline-formula id="inf33">
<mml:math id="m34">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>b</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>, and <inline-formula id="inf34">
<mml:math id="m35">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>b</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>, respectively. Thus, the four reference points are also denoted as <inline-formula id="inf35">
<mml:math id="m36">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mi>l</mml:mi>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>, <inline-formula id="inf36">
<mml:math id="m37">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mi>r</mml:mi>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>, <inline-formula id="inf37">
<mml:math id="m38">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>b</mml:mi>
<mml:mi>l</mml:mi>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>, and <inline-formula id="inf38">
<mml:math id="m39">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>b</mml:mi>
<mml:mi>l</mml:mi>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>. Different <italic>h</italic>, <italic>i</italic>, <italic>j</italic>, and <italic>k</italic>, implying the different numbers of vertices are contained in the top left, top right, bottom right, and bottom left section, respectively. The structure <inline-formula id="inf39">
<mml:math id="m40">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula> to be the set of vertices consists of the convex hull, such that from <inline-formula id="inf40">
<mml:math id="m41">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula> to <inline-formula id="inf41">
<mml:math id="m42">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>h</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula> via a number of top left corners of the bounding boxes with <italic>m</italic>&#x20;&#x2264; <italic>h</italic>. Thus, the <inline-formula id="inf42">
<mml:math id="m43">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula> is computed in linear time using the structures <inline-formula id="inf43">
<mml:math id="m44">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula> for <italic>m</italic>&#x20;&#x2264; <italic>h</italic>
<disp-formula id="e2">
<mml:math id="m45">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>max</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>h</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:math>
<label>(2)</label>
</disp-formula>
</p>
<fig id="F5" position="float">
<label>FIGURE 5</label>
<caption>
<p>The illustration of obstacle fusion. <bold>(A)</bold> The final obstacle fusion for a set of non-overlapping obstacles. <bold>(B)</bold> The obstacle fusion for a set of overlapping obstacles\enleadertwodots.</p>
</caption>
<graphic xlink:href="frobt-09-843816-g005.tif"/>
</fig>
<p>The initial convex polygon <inline-formula id="inf44">
<mml:math id="m46">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>b</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula> is expanded with multiple triangles starting from the reference point <inline-formula id="inf45">
<mml:math id="m47">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula> and there are <italic>O</italic> (<italic>logn</italic>) structures to compute in linear time. Therefore, the algorithm runs in <italic>O</italic> (<italic>nlogn</italic>) time. Because the bounding boxes in the images may overlap, this algorithm is also applicable to overlapping bounding boxes, as shown in <xref ref-type="fig" rid="F5">Figure&#x20;5B</xref>. Therefore, our obstacle approximation and fusion approach adaptively fuse the bounding boxes of the detected obstacles according to the size and shape of the vehicle to rule out the gaps that are infeasible for the vehicle to pass through. Based on the proposed obstacle approximation and fusion method and the nature-inspired path planning method integrated with the re-joint mechanism, the autonomous vehicle takes less computational effort for optimal path planning on the map populated with obstacles.</p>
</sec>
</sec>
<sec id="s3-2">
<title>3.2 Bat Algorithm-Based Path Re-Joint</title>
<sec id="s3-2-1">
<title>3.2.1 Bat Algorithm</title>
<p>The Bat algorithm (BA) is a nature-inspired population-based meta-heuristic optimization algorithm (<xref ref-type="bibr" rid="B46">Yang, 2010</xref>). The search strategy of the BA is inspired by the social behavior of bats and the use of echolocation in foraging and avoiding obstacles. The echolocation process of bats is addressed as follows: 1) All bats apply echolocation to sense the distance between the current position and different sources, in which all bats can distinguish food/prey and background barriers intelligently. 2) Bats automatically adjust the wavelength and frequency of their emitted ultrasonic pulses while foraging. They fly randomly at position <inline-formula id="inf46">
<mml:math id="m48">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">X</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula> with speed <inline-formula id="inf47">
<mml:math id="m49">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>, fixed frequency <inline-formula id="inf48">
<mml:math id="m50">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">Q</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>min</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>, and loudness <inline-formula id="inf49">
<mml:math id="m51">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula> and continuously adjust the pulse transmission frequency <inline-formula id="inf50">
<mml:math id="m52">
<mml:mi mathvariant="script">R</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">[</mml:mo>
<mml:mrow>
<mml:mn>0,1</mml:mn>
</mml:mrow>
<mml:mo stretchy="false">]</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula> depending on the proximity to the destination. 3) The loudness of the bats varies from a minimum positive constant <inline-formula id="inf51">
<mml:math id="m53">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>min</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula> to <inline-formula id="inf52">
<mml:math id="m54">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>. Hence, the update rule for the <italic>i</italic>th bat&#x2019;s frequency <inline-formula id="inf53">
<mml:math id="m55">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">Q</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>, speed <inline-formula id="inf54">
<mml:math id="m56">
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:math>
</inline-formula>, and new solution <inline-formula id="inf55">
<mml:math id="m57">
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="script">X</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:math>
</inline-formula> at time step <italic>&#x3c4;</italic> are provided by<disp-formula id="e3">
<mml:math id="m58">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">Q</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">Q</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>min</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>&#x3b6;</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">Q</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">Q</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>min</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:math>
<label>(3)</label>
</disp-formula>
<disp-formula id="e4">
<mml:math id="m59">
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="script">X</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">X</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>b</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">Q</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
<label>(4)</label>
</disp-formula>
<disp-formula id="e5">
<mml:math id="m60">
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="script">X</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="script">X</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:math>
<label>(5)</label>
</disp-formula>where <italic>&#x3b6;</italic> denotes a randomly generated number within the interval [0, 1] and <inline-formula id="inf56">
<mml:math id="m61">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">X</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>b</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula> represents the current global best position achieved by comparing all the positions among all the bats. Because the bats also have speed limits, the speed is bond in <inline-formula id="inf57">
<mml:math id="m62">
<mml:mrow>
<mml:mo stretchy="false">[</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>min</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">]</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>, where <inline-formula id="inf58">
<mml:math id="m63">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>min</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>.</p>
<p>In order to achieve a balance between local search and global search capabilities, a random walk procedure is processed in local search under certain probability. The new solution <inline-formula id="inf59">
<mml:math id="m64">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">X</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula> to replace the original solution <inline-formula id="inf60">
<mml:math id="m65">
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="script">X</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:math>
</inline-formula> is governed by<disp-formula id="e6">
<mml:math id="m66">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">X</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="script">X</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>&#x3c1;</mml:mi>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="script">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
<mml:mo>&#x304;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:math>
<label>(6)</label>
</disp-formula>where <italic>&#x3c1;</italic> is the scaling factor which is confined to the random walk&#x2019;s step size and <italic>&#x3c1;</italic> &#x2208; [ &#x2212; 1, 1] is a random number. <inline-formula id="inf61">
<mml:math id="m67">
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="script">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
<mml:mo>&#x304;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:math>
</inline-formula> is the average loudness of all bats at time step <italic>&#x3c4;</italic>. Because bats approach their target, the amplitude of the ultrasonic pulses decreases while the pulse rate increases; the loudness <inline-formula id="inf62">
<mml:math id="m68">
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="script">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
</mml:math>
</inline-formula> and the pulse emission rate <inline-formula id="inf63">
<mml:math id="m69">
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="script">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
</mml:math>
</inline-formula> must be updated as the iteration proceeds, which is defined as<disp-formula id="e7">
<mml:math id="m70">
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="script">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>&#x3b3;</mml:mi>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="script">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:math>
<label>(7)</label>
</disp-formula>
<disp-formula id="e8">
<mml:math id="m71">
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="script">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="script">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>exp</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>&#x3b7;</mml:mi>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mfenced>
</mml:math>
<label>(8)</label>
</disp-formula>where <italic>&#x3b3;</italic> and <italic>&#x3b7;</italic> are positive constants. <inline-formula id="inf64">
<mml:math id="m72">
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="script">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msup>
</mml:math>
</inline-formula> and <inline-formula id="inf65">
<mml:math id="m73">
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="script">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msup>
</mml:math>
</inline-formula> are initial values of loudness and pulse rate, respectively.</p>
</sec>
<sec id="s3-2-2">
<title>3.2.2 Obstacle Avoidance and Path Re-Joint</title>
<p>In order to fulfill a high degree of autonomy in autonomous vehicle navigation, environment modeling or map construction is necessary to enable autonomous vehicles to generate collision-free trajectories. Therefore, in this section, the BA is utilized to perform autonomous navigation of vehicles in the grid-based environment; especially, the vehicles deeply re-plan when they traverse in the vicinity of obstacles. The grid map is composed of equal-sized grids, referred to as the generated CCPP path in <xref ref-type="sec" rid="s2">Section 2</xref>. It should be noted that the grid occupied as obstacles is an inaccessible area in <xref ref-type="fig" rid="F6">Figure&#x20;6</xref>. When an obstacle is presented in front of the vehicle, the current grid is defined as the initial point <inline-formula id="inf66">
<mml:math id="m74">
<mml:mi mathvariant="fraktur">S</mml:mi>
</mml:math>
</inline-formula>, and the next point on the unoccupied grid on the CCPP path is defined as the target point <inline-formula id="inf67">
<mml:math id="m75">
<mml:mi mathvariant="fraktur">T</mml:mi>
</mml:math>
</inline-formula>. Then, the re-joint path <inline-formula id="inf68">
<mml:math id="m76">
<mml:mi mathvariant="fraktur">P</mml:mi>
</mml:math>
</inline-formula> is defined by the initial point <inline-formula id="inf69">
<mml:math id="m77">
<mml:mi mathvariant="fraktur">S</mml:mi>
</mml:math>
</inline-formula>, target point <inline-formula id="inf70">
<mml:math id="m78">
<mml:mi mathvariant="fraktur">T</mml:mi>
</mml:math>
</inline-formula>, and <italic>n</italic> waypoints among them:<disp-formula id="e9">
<mml:math id="m79">
<mml:mi mathvariant="fraktur">P</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mi mathvariant="fraktur">S</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>p</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>p</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>p</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="fraktur">T</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:math>
<label>(9)</label>
</disp-formula>
</p>
<fig id="F6" position="float">
<label>FIGURE 6</label>
<caption>
<p>The illustration of the path re-joint mechanism.</p>
</caption>
<graphic xlink:href="frobt-09-843816-g006.tif"/>
</fig>
<p>Each point is defined by its grid coordinates (<italic>x</italic>, <italic>y</italic>), and the center of the grid pixel is regarded as a grid point. Path length is defined by the sum of the Euclidean distance between two adjacent points on the trajectory:<disp-formula id="e10">
<mml:math id="m80">
<mml:mi mathvariant="fraktur">L</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi mathvariant="fraktur">P</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3d;</mml:mo>
<mml:munderover accentunder="false" accent="false">
<mml:mrow>
<mml:mo>&#x2211;</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:munderover>
<mml:msqrt>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>p</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>p</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>p</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>p</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:msqrt>
</mml:math>
<label>(10)</label>
</disp-formula>where <inline-formula id="inf71">
<mml:math id="m81">
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>p</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula> and <inline-formula id="inf72">
<mml:math id="m82">
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>p</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula> denote starting and destination points. BA is utilized to cut down the length of point-to-point navigations. The trajectory is established between two points, which can be selected from each grid centroid of the decomposed workspace. Each point is recursively connected with the remaining points, whereas the distances of connection lines passing through obstacles are assigned with infinite numbers. As a result, the point-to-point navigations with obstacles are excluded out, and the feasible solutions are retained. The shortest paths between each pair of points are selected from those feasible solutions (<xref ref-type="fig" rid="F6">Figure&#x20;6</xref>). The procedure of the proposed deep learning-based CCPP is summarized in <xref ref-type="other" rid="alg2">Algorithm&#x20;2</xref>.</p>
<p>
<statement content-type="algorithm" id="alg2">
<label>Algorithm 2</label>
<p>Procedure of proposed deep learning-based&#x20;CCPP.</p>
<p>
<inline-graphic xlink:href="frobt-09-843816-fx2.tif"/>
</p>
</statement>
</p>
</sec>
</sec>
</sec>
<sec id="s4">
<title>4&#x20;Real-Time Navigation of Autonomous Vehicles</title>
<p>In the third layer, once the coverage trajectories are planned, a velocity-based local reactive navigator with mapping capability is considered to avoid moving obstacles while locally constructing an environmental map. The environment of autonomous vehicle navigation is dynamic, including static obstacles and moving obstacles. The local navigation only reacts to their local environment at any moment in time, aimed to create velocity commands of an autonomous vehicle to traverse towards a destination, such as the dynamic window approach of <xref ref-type="bibr" rid="B11">Fox et&#x20;al. (1997</xref>) and <xref ref-type="bibr" rid="B5">Borenstein et&#x20;al. (1991</xref>). Including a sequence of bread crumbs as local waypoints in the path planning, which decomposes the coverage trajectories into a sequence of segments, makes the model particularly efficient for the environment densely populated by obstacles. In this case, a velocity obstacle approach (VOA) for real-time autonomous vehicle navigation is utilized in this study as our LIDAR-based local navigator (<xref ref-type="bibr" rid="B10">Fiorini and Shiller, 1998</xref>). The required information is the other sensed agents&#x2019; current position, velocity, and exact shape. The definition of the VOA is defined as follows.</p>
<p>&#x394; represents the autonomous vehicle that needs to be navigated, and <inline-formula id="inf73">
<mml:math id="m83">
<mml:mi mathvariant="script">M</mml:mi>
</mml:math>
</inline-formula> and <inline-formula id="inf74">
<mml:math id="m84">
<mml:mi mathvariant="script">N</mml:mi>
</mml:math>
</inline-formula> represent the dynamic obstacles moving in the environment. Let <inline-formula id="inf75">
<mml:math id="m85">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>, <inline-formula id="inf76">
<mml:math id="m86">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="script">M</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>, and <inline-formula id="inf77">
<mml:math id="m87">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="script">N</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula> denote the current positions of the autonomous vehicle <italic>A</italic> and dynamic obstacles <inline-formula id="inf78">
<mml:math id="m88">
<mml:mi mathvariant="script">M</mml:mi>
</mml:math>
</inline-formula> and <inline-formula id="inf79">
<mml:math id="m89">
<mml:mi mathvariant="script">N</mml:mi>
</mml:math>
</inline-formula>, respectively. Similarly, <inline-formula id="inf80">
<mml:math id="m90">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>, <inline-formula id="inf81">
<mml:math id="m91">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="script">M</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>, and <inline-formula id="inf82">
<mml:math id="m92">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="script">N</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula> denote the current velocity of the autonomous vehicle &#x394; and dynamic obstacles <inline-formula id="inf83">
<mml:math id="m93">
<mml:mi mathvariant="script">M</mml:mi>
</mml:math>
</inline-formula> and <inline-formula id="inf84">
<mml:math id="m94">
<mml:mi mathvariant="script">N</mml:mi>
</mml:math>
</inline-formula>, respectively. The autonomous vehicle has a fixed radius <inline-formula id="inf85">
<mml:math id="m95">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>, a goal located at <inline-formula id="inf86">
<mml:math id="m96">
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:math>
</inline-formula>, and a preferred speed <inline-formula id="inf87">
<mml:math id="m97">
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:math>
</inline-formula> according to the road condition. To compute the velocity obstacle (VO), &#x394;, <inline-formula id="inf88">
<mml:math id="m98">
<mml:mi mathvariant="script">M</mml:mi>
</mml:math>
</inline-formula> and <inline-formula id="inf89">
<mml:math id="m99">
<mml:mi mathvariant="script">N</mml:mi>
</mml:math>
</inline-formula> are mapped into the configuration space, and the autonomous vehicle &#x394; is shrunk into a point while expanding the obstacles <inline-formula id="inf90">
<mml:math id="m100">
<mml:mi mathvariant="script">M</mml:mi>
</mml:math>
</inline-formula> and <inline-formula id="inf91">
<mml:math id="m101">
<mml:mi mathvariant="script">N</mml:mi>
</mml:math>
</inline-formula> by the radius of &#x394;. The <inline-formula id="inf92">
<mml:math id="m102">
<mml:mi mathvariant="script">VO</mml:mi>
</mml:math>
</inline-formula> can geometrically be interpreted in <xref ref-type="fig" rid="F7">Figure&#x20;7A</xref>. It is clear that the <inline-formula id="inf93">
<mml:math id="m103">
<mml:mi mathvariant="script">VO</mml:mi>
</mml:math>
</inline-formula> of autonomous vehicle &#x394; caused by dynamic obstacle <inline-formula id="inf94">
<mml:math id="m104">
<mml:mi mathvariant="script">M</mml:mi>
</mml:math>
</inline-formula>, written as <inline-formula id="inf95">
<mml:math id="m105">
<mml:msub>
<mml:mrow>
<mml:mtext mathvariant="italic">VO</mml:mtext>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mo stretchy="false">&#x7c;</mml:mo>
<mml:mi mathvariant="script">M</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>, is the set of all velocities of &#x394; resulting in a collision between &#x394; and <inline-formula id="inf96">
<mml:math id="m106">
<mml:mi mathvariant="script">M</mml:mi>
</mml:math>
</inline-formula> at some moment in time, assuming that <inline-formula id="inf97">
<mml:math id="m107">
<mml:mi mathvariant="script">M</mml:mi>
</mml:math>
</inline-formula> maintains its velocity <inline-formula id="inf98">
<mml:math id="m108">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="script">M</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>. Let <italic>P</italic>&#x20;&#x2295; <italic>Q</italic> represent the Minkowski sum of two objects <italic>P</italic> and <italic>Q</italic>, and let &#x2212; <italic>P</italic> represent the object <italic>P</italic> appearing in its reference point:<disp-formula id="e11">
<mml:math id="m109">
<mml:mi>P</mml:mi>
<mml:mo>&#x2295;</mml:mo>
<mml:mi>Q</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mfenced open="{" close="}">
<mml:mrow>
<mml:mi mathvariant="bold">p</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mi mathvariant="bold">q</mml:mi>
<mml:mo stretchy="false">&#x2223;</mml:mo>
<mml:mi mathvariant="bold">p</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:mi>P</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold">q</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:mi>Q</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>,</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>P</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mfenced open="{" close="}">
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mi mathvariant="bold">p</mml:mi>
<mml:mo stretchy="false">&#x2223;</mml:mo>
<mml:mi mathvariant="bold">p</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:mi>P</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:math>
<label>(11)</label>
</disp-formula>
</p>
<fig id="F7" position="float">
<label>FIGURE 7</label>
<caption>
<p>The illustration of velocity obstacle approach (VOA) in our model. <bold>(A)</bold> Velocity obstacles <inline-formula id="inf99">
<mml:math id="m110">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">VO</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mo stretchy="false">&#x7c;</mml:mo>
<mml:mi mathvariant="script">M</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula> and <inline-formula id="inf100">
<mml:math id="m111">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">VO</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mo stretchy="false">&#x7c;</mml:mo>
<mml:mi mathvariant="script">N</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula> for moving obstacles <inline-formula id="inf101">
<mml:math id="m112">
<mml:mi mathvariant="script">M</mml:mi>
</mml:math>
</inline-formula> and <inline-formula id="inf102">
<mml:math id="m113">
<mml:mi mathvariant="script">N</mml:mi>
</mml:math>
</inline-formula>. <bold>(B)</bold> Admissible velocity set <inline-formula id="inf103">
<mml:math id="m114">
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi mathvariant="script">AS</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula> and collision-free velocity set <inline-formula id="inf104">
<mml:math id="m115">
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi mathvariant="script">FS</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
</caption>
<graphic xlink:href="frobt-09-843816-g007.tif"/>
</fig>
<p>Let <inline-formula id="inf105">
<mml:math id="m116">
<mml:mi>&#x3bb;</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula> represent a ray starting at position <inline-formula id="inf106">
<mml:math id="m117">
<mml:mi mathvariant="script">P</mml:mi>
</mml:math>
</inline-formula> and heading in the direction of velocity <inline-formula id="inf107">
<mml:math id="m118">
<mml:mi mathvariant="script">V</mml:mi>
</mml:math>
</inline-formula>:<disp-formula id="e12">
<mml:math id="m119">
<mml:mi>&#x3bb;</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3d;</mml:mo>
<mml:mfenced open="{" close="}">
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="script">V</mml:mi>
<mml:mo stretchy="false">&#x2223;</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>&#x2265;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:math>
<label>(12)</label>
</disp-formula>
</p>
<p>As shown in <xref ref-type="fig" rid="F7">Figure&#x20;7A</xref>, the <inline-formula id="inf108">
<mml:math id="m120">
<mml:mi>&#x3bb;</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="script">M</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula> represents a ray starting from <inline-formula id="inf109">
<mml:math id="m121">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula> and heading in the direction of the relative velocity of <inline-formula id="inf110">
<mml:math id="m122">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="script">M</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula> intersecting the Minkowski sum of <inline-formula id="inf111">
<mml:math id="m123">
<mml:mi mathvariant="script">M</mml:mi>
</mml:math>
</inline-formula> and -&#x394; centered on <inline-formula id="inf112">
<mml:math id="m124">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="script">M</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>. Then, velocity <inline-formula id="inf113">
<mml:math id="m125">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula> is in the <inline-formula id="inf114">
<mml:math id="m126">
<mml:mi mathvariant="script">VO</mml:mi>
</mml:math>
</inline-formula> of <inline-formula id="inf115">
<mml:math id="m127">
<mml:mi mathvariant="script">M</mml:mi>
</mml:math>
</inline-formula>. It follows that if &#x394; chooses a velocity inside <inline-formula id="inf116">
<mml:math id="m128">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">VO</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mo stretchy="false">&#x7c;</mml:mo>
<mml:mi mathvariant="script">M</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula> or <inline-formula id="inf117">
<mml:math id="m129">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">VO</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mo stretchy="false">&#x7c;</mml:mo>
<mml:mi mathvariant="script">N</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>, then &#x394; and <inline-formula id="inf118">
<mml:math id="m130">
<mml:mi mathvariant="script">M</mml:mi>
</mml:math>
</inline-formula> or <inline-formula id="inf119">
<mml:math id="m131">
<mml:mi mathvariant="script">N</mml:mi>
</mml:math>
</inline-formula> will collide at some point in time. If the velocity chosen is outside <inline-formula id="inf120">
<mml:math id="m132">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">VO</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mo stretchy="false">&#x7c;</mml:mo>
<mml:mi mathvariant="script">M</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula> and <inline-formula id="inf121">
<mml:math id="m133">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">VO</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mo stretchy="false">&#x7c;</mml:mo>
<mml:mi mathvariant="script">N</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>, such a collision will never occur. Therefore, the <inline-formula id="inf122">
<mml:math id="m134">
<mml:mi mathvariant="script">VO</mml:mi>
</mml:math>
</inline-formula> of <inline-formula id="inf123">
<mml:math id="m135">
<mml:mi mathvariant="script">M</mml:mi>
</mml:math>
</inline-formula> to &#x394; can be represented as<disp-formula id="e13">
<mml:math id="m136">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">VO</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mo stretchy="false">&#x7c;</mml:mo>
<mml:mi mathvariant="script">M</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="script">M</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3d;</mml:mo>
<mml:mfenced open="{" close="}">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">&#x2223;</mml:mo>
<mml:mi>&#x3bb;</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="script">M</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2229;</mml:mo>
<mml:mi mathvariant="script">M</mml:mi>
<mml:mo>&#x2295;</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mo>&#x2260;</mml:mo>
<mml:mi>&#x2205;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:math>
<label>(13)</label>
</disp-formula>
</p>
<p>The current autonomous vehicle <inline-formula id="inf124">
<mml:math id="m137">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula> subject to kinematics and dynamic constraints restricts the admissible set of new velocity, denoting this set as <inline-formula id="inf125">
<mml:math id="m138">
<mml:mi mathvariant="script">AS</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>. According to different conditions of autonomous vehicles, such as maximum speed and maximum acceleration, <inline-formula id="inf126">
<mml:math id="m139">
<mml:mi mathvariant="script">AS</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula> can have any shape. In <xref ref-type="fig" rid="F7">Figure&#x20;7B</xref>, an arylide yellow rectangle represents the admissible velocity set for the current velocity <inline-formula id="inf127">
<mml:math id="m140">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>. In each cycle of planning, the reactive navigator selects a speed that lies outside of any velocity obstacles caused through moving obstacles. As shown in <xref ref-type="fig" rid="F7">Figure&#x20;7B</xref>, multiple maroon areas are collision-free velocity set <inline-formula id="inf128">
<mml:math id="m141">
<mml:mi mathvariant="script">FS</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula> where autonomous vehicles can avoid the moving obstacles <inline-formula id="inf129">
<mml:math id="m142">
<mml:mi mathvariant="script">M</mml:mi>
</mml:math>
</inline-formula> and&#x20;<inline-formula id="inf130">
<mml:math id="m143">
<mml:mi mathvariant="script">N</mml:mi>
</mml:math>
</inline-formula>.</p>
<p>Our approach uses both the current position and velocity of other moving obstacles to compute their future collision-free trajectories. Obstacles are also considered in the environments, uncertainty in radius, position, and velocity, as well as dynamics and kinematics of the vehicles. The proposed velocity-based local navigator avoids unforeseen moving obstacles on the planned trajectory, which re-joins the previously planned route after it traverses in the vicinity of the obstacle. Furthermore, each layer takes advantage of the results of the previous layer as a reference to decrease the computational effort.</p>
</sec>
<sec id="s5">
<title>5 Simulated Experiments and Results</title>
<p>In this section, two simulation studies are conducted to validate the feasibility and merit of the proposed framework. The first simulation investigates the CCPP obtained by the deep learning method. The second simulation, through more detailed images obtained by drones, undertakes obstacle avoidance and re-joint paths. Moreover, onboard LIDAR is utilized to identify moving obstacles in the environment. The parameters of the proposed framework are listed below. In the CCPP deep learning training, 3000 environment maps with polygonal shape areas are utilized for training, with a resolution of 1000 &#xd7; 1000 and <italic>h</italic>&#x20;&#x3d; 10. The prediction made by the NN for the image is based on the spatial dimension of 100 &#xd7; 100. Parameters of BA are set as the following: <inline-formula id="inf131">
<mml:math id="m144">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.1</mml:mn>
</mml:math>
</inline-formula>, <inline-formula id="inf132">
<mml:math id="m145">
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="script">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.65</mml:mn>
</mml:math>
</inline-formula>, <inline-formula id="inf133">
<mml:math id="m146">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">Q</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>min</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.1</mml:mn>
</mml:math>
</inline-formula>, and <inline-formula id="inf134">
<mml:math id="m147">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">Q</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.75</mml:mn>
</mml:math>
</inline-formula>. Each algorithm runs 200&#x20;times in a case, and the population size is&#x20;50.</p>
<sec id="s5-1">
<title>5.1 Simulation and Comparative Studies in CCPP Without Obstacles</title>
<p>In order to compare the proposed model with others, we compare the proposed CCPP method with the well-known Boustrophedon Cellular Decomposition (BCD) method (<xref ref-type="bibr" rid="B1">Acar and Choset, 2002</xref>). In this section, the map is a satellite image from the North Farm of Mississippi State University as shown in <xref ref-type="fig" rid="F8">Figure&#x20;8</xref>. The starting and target points are randomly selected. Different shapes of the targeted areas are selected to perform coverage searches. The edges of the targeted areas as three scenarios are highlighted in yellow, blue, and green in <xref ref-type="fig" rid="F8">Figure&#x20;8</xref>. The starting and target points are represented by squares and stars, respectively. The exploration range <italic>d</italic> of the autonomous vehicle is set as 5&#xa0;m. The shape of the targeted areas, the starting and target positions of the autonomous vehicle are considered. Then, the directions of the vehicle&#x2019;s search of the proposed CCPP in these three scenarios are achieved in <xref ref-type="fig" rid="F9">Figures 9A&#x2013;C</xref>, respectively.</p>
<fig id="F8" position="float">
<label>FIGURE 8</label>
<caption>
<p>Real-world satellite images taken from Google Maps. Three targeted areas with specific starting and target points are assigned to CCPP (image from Mississippi State University North Farm).</p>
</caption>
<graphic xlink:href="frobt-09-843816-g008.tif"/>
</fig>
<fig id="F9" position="float">
<label>FIGURE 9</label>
<caption>
<p>Real-world scenarios of autonomous vehicle CCPP trajectories in <xref ref-type="fig" rid="F8">Figure&#x20;8</xref>. <bold>(A&#x2013;C)</bold> Trajectories generated by proposed CCPP method. <bold>(D&#x2013;F)</bold> Trajectories generated by Boustrophedon Cellular Decomposition (BCD) method.</p>
</caption>
<graphic xlink:href="frobt-09-843816-g009.tif"/>
</fig>
<p>In three scenarios, the proposed CCPP method has a shorter path length regardless of the coverage path within the targeted areas, the path connecting the starting and target points, and the final total path. The trajectories of the proposed CCPP method are shown in <xref ref-type="fig" rid="F9">Figures 9A&#x2013;C</xref>, respectively. The trajectories of the BCD method are shown in <xref ref-type="fig" rid="F9">Figures 9D&#x2013;F</xref>, respectively. The comparative studies are summarized in <xref ref-type="table" rid="T1">Table&#x20;1</xref>.</p>
<table-wrap id="T1" position="float">
<label>TABLE 1</label>
<caption>
<p>Performance analysis of the proposed CCPP method with Boustrophedon Cellular Decomposition (BCD) method (<xref ref-type="bibr" rid="B1">Acar and Choset, 2002</xref>) under different scenarios.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="left">Scenarios</th>
<th align="center">Models</th>
<th align="center">CCPP length in targeted area (m)</th>
<th align="center">Connection path length (m)</th>
<th align="center">Total CCPP length (m)</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="left">
<xref ref-type="fig" rid="F9">Figure&#x20;9A</xref>
</td>
<td align="left">BCD method</td>
<td align="char" char=".">19&#x2009;615.91</td>
<td align="char" char=".">
<bold>552.38</bold>
</td>
<td align="char" char=".">20&#x2009;168.30</td>
</tr>
<tr>
<td align="left">
<xref ref-type="fig" rid="F9">Figure&#x20;9B</xref>
</td>
<td align="left">Proposed method</td>
<td align="char" char=".">
<bold>19&#x2009;147.27</bold>
</td>
<td align="char" char=".">
<bold>552.38</bold>
</td>
<td align="char" char=".">
<bold>19&#x2009;699.66</bold>
</td>
</tr>
<tr>
<td align="left">
<xref ref-type="fig" rid="F9">Figure&#x20;9C</xref>
</td>
<td align="left">BCD method</td>
<td align="char" char=".">8088.80</td>
<td align="char" char=".">230.53</td>
<td align="char" char=".">8319.33</td>
</tr>
<tr>
<td align="left">
<xref ref-type="fig" rid="F9">Figure&#x20;9D</xref>
</td>
<td align="left">Proposed method</td>
<td align="char" char=".">
<bold>7991.89</bold>
</td>
<td align="char" char=".">
<bold>221.34</bold>
</td>
<td align="char" char=".">
<bold>8213.23</bold>
</td>
</tr>
<tr>
<td align="left">
<xref ref-type="fig" rid="F9">Figure&#x20;9E</xref>
</td>
<td align="left">BCD method</td>
<td align="char" char=".">6579.39</td>
<td align="char" char=".">315.20</td>
<td align="char" char=".">6894.60</td>
</tr>
<tr>
<td align="left">
<xref ref-type="fig" rid="F9">Figure&#x20;9F</xref>
</td>
<td align="left">Proposed method</td>
<td align="char" char=".">
<bold>6480.83</bold>
</td>
<td align="char" char=".">
<bold>168.58</bold>
</td>
<td align="char" char=".">
<bold>6649.41</bold>
</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<fn>
<p>The best results compared from two models are specified in bold.</p>
</fn>
</table-wrap-foot>
</table-wrap>
<p>The average precision (AP) metric is utilized to evaluate the training results. A total of 3000 synthetic images with a resolution of 800&#x20;&#xd7; 800 are utilized for training and <italic>h</italic> &#x3d; 8. Then, the network is evaluated with 1000 synthetic images. The network is trained with 200 epochs using Adam optimizer. The learning rate is equal to 3e-4, and the batch size is 16. A tunning point prediction is within the selected area as a true positive (TP), while more predictions fall within the selected range. Only one is counted as TP and all others as false positive (FP). All ground-truths not covered by a prediction are counted as false negatives (FN). Because different confidence thresholds can obtain different recall and precision values and the AP calculation is obtained by the common definition of recall and precision, we change the threshold value from 0 to 1 with step size 0.1. Multiple results obtained by modifying the threshold show that recall and precision are inversely proportional. The final confidence threshold is set as 0.9. At a distance range of 8 pixels, the average precision equals 0.9735.</p>
<p>Consequently, through the deep learning method, the turning points of the autonomous vehicle are generated, and the final CCPP paths are obtained, as shown in <xref ref-type="fig" rid="F10">Figures 10A,B</xref>. The neural network training and testing procedure are similar to the Deepway model (<xref ref-type="bibr" rid="B25">Mazzia et&#x20;al., 2021</xref>). However, the Deepway model relies only on identifying row-based crops to manually sort the order of waypoints that generates the final CCPP result. It remarkably limits the usage scenarios of the model and requires additional labor time to sort the waypoints. Our proposed model extends the range of usage to random environments with arbitrary shape search areas and considers the relative positions of the autonomous vehicle to obtain the optimal CCPP path, as shown in <xref ref-type="fig" rid="F10">Figure&#x20;10</xref>.</p>
<fig id="F10" position="float">
<label>FIGURE 10</label>
<caption>
<p>Illustration of the final trajectory in light of the deep learning-based CCPP. <bold>(A)</bold> The final deep learning-based CCPP path regarding the targeted area in <xref ref-type="fig" rid="F9">Figure&#x20;9B</xref>. <bold>(B)</bold> The final deep learning-based CCPP path regarding the targeted area in <xref ref-type="fig" rid="F9">Figure&#x20;9C</xref>.</p>
</caption>
<graphic xlink:href="frobt-09-843816-g010.tif"/>
</fig>
</sec>
<sec id="s5-2">
<title>5.2 CCPP Amid Stationary and Dynamic Obstacles</title>
<p>In this section, simulation studies are carried out to validate the second and third layers of the proposed framework, utilized for CCPP re-joint and obstacle avoidance in environments with stationary and dynamic obstacles. Due to the relatively large environment, in order to better show the re-joining path of the autonomous vehicle, a part of the map is truncated. More detailed information of the images is obtained from the drones, as shown in <xref ref-type="fig" rid="F11">Figure&#x20;11A</xref>, in which haystacks and trucks are detected as obstacles. Obstacles are then approximated and merged into a grid-based map. The CCPP with obstacle avoidance function uses the CCPP path obtained in the first layer as a reference to decrease the computational effort. The proposed obstacle avoidance method based on the BA algorithm will only be triggered when an obstacle is presented in front of the vehicle. The grid of the current position is taken as the starting point, and the next grid of the CCPP reference path unoccupied by obstacles is regarded as the target point to plan a collision-free trajectory. The proposed method is unnecessarily to recalculate for the complete map, which can flexibly adapt to the alterations of obstacles in the map. The CCPP trajectory of static obstacle avoidance is shown in <xref ref-type="fig" rid="F11">Figure&#x20;11B</xref>. When there are unknown and moving obstacles in the environment, such as the trucks in <xref ref-type="fig" rid="F11">Figure&#x20;11</xref>, the autonomous vehicles can still rely on the onboard LIDAR to dynamically avoid obstacles and return to the original coverage path to search the entire environment. Two specific operations of the autonomous vehicle avoiding moving trucks are shown in <xref ref-type="fig" rid="F12">Figure&#x20;12</xref>. The autonomous vehicle, the first truck, and the second truck are represented by dark blue circles, yellow rectangles, and light blue rectangles, respectively. The autonomous vehicle performs dynamic avoidance twice for the first truck. The vehicle successfully avoids obstacles and returns to the planned CCPP trajectory. The second truck first stops at the original position before the vehicle avoids obstacles according to the obstacle avoidance path planned by the second layer of the framework. During the returning process, the truck starts to move, and the vehicle can still avoid obstacles to the updated truck position. These results prove that the proposed CCPP framework is effective and efficient in coverage navigation under real-world applications.</p>
<fig id="F11" position="float">
<label>FIGURE 11</label>
<caption>
<p>
<bold>(A)</bold> Real-world images taken from UAVs. <bold>(B)</bold> Re-joint and collision-free CCPP trajectories.</p>
</caption>
<graphic xlink:href="frobt-09-843816-g011.tif"/>
</fig>
<fig id="F12" position="float">
<label>FIGURE 12</label>
<caption>
<p>Illustration of autonomous vehicle CCPP navigation with unknown and moving obstacles in the real-world environment. The dashed boxes depict the avoidance of the moving trucks.</p>
</caption>
<graphic xlink:href="frobt-09-843816-g012.tif"/>
</fig>
</sec>
</sec>
<sec id="s6">
<title>6 Conclusion and Future Work</title>
<p>A new framework to tackle issues of environment mapping, path generation, CCPP, and dynamic obstacle avoidance in a hierarchical manner has been proposed. The proposed framework comprises three layers that advance more accurately and efficiently based on environmental information. The framework adopts a layer-by-layer approach with the intention of each layer treating the results of the previous layer as a reference to reduce the computational effort. Simulation studies validated the effectiveness and robustness of the proposed framework. We are working on ROS-based sensor configuration and implementation of this proposed model on an actual mobile robot. Sensors being integrated include five components: a camera, a Hokuyo LIDAR, a differential global positioning system, a digital compass, and an inertial measurement&#x20;unit.</p>
</sec>
</body>
<back>
<sec id="s7">
<title>Data Availability Statement</title>
<p>The original contributions presented in the study are included in the article/supplementary material. Further inquiries can be directed to the corresponding author.</p>
</sec>
<sec id="s8">
<title>Author Contributions</title>
<p>All authors listed have made a substantial, direct, and intellectual contribution to the work and approved it for publication.</p>
</sec>
<sec sec-type="COI-statement" id="s9">
<title>Conflict of Interest</title>
<p>The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.</p>
</sec>
<sec sec-type="disclaimer" id="s10">
<title>Publisher&#x2019;s Note</title>
<p>All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations or those of the publisher, the editors, and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.</p>
</sec>
<ack>
<p>The authors would like to thank the editor-in-chief, the associate editor, and the reviewers for their valuable comments and suggestions, which improved the manuscript.</p>
</ack>
<ref-list>
<title>References</title>
<ref id="B1">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Acar</surname>
<given-names>E. U.</given-names>
</name>
<name>
<surname>Choset</surname>
<given-names>H.</given-names>
</name>
</person-group> (<year>2002</year>). <article-title>Sensor-based Coverage of Unknown Environments: Incremental Construction of morse Decompositions</article-title>. <source>Int. J.&#x20;Robotics Res.</source> <volume>21</volume>, <fpage>345</fpage>&#x2013;<lpage>366</lpage>. <pub-id pub-id-type="doi">10.1177/027836402320556368</pub-id> </citation>
</ref>
<ref id="B2">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Alzadjali</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Alali</surname>
<given-names>M. H.</given-names>
</name>
<name>
<surname>Sivakumar</surname>
<given-names>A. N. V.</given-names>
</name>
<name>
<surname>Deogun</surname>
<given-names>J.&#x20;S.</given-names>
</name>
<name>
<surname>Scott</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Schnable</surname>
<given-names>J.&#x20;C.</given-names>
</name>
<etal/>
</person-group> (<year>2021</year>). <article-title>Maize Tassel Detection from UAV Imagery Using Deep Learning</article-title>. <source>Front. Robotics AI</source> <volume>8</volume>, <fpage>136</fpage>. <pub-id pub-id-type="doi">10.3389/frobt.2021.600410</pub-id> </citation>
</ref>
<ref id="B3">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>An</surname>
<given-names>V.</given-names>
</name>
<name>
<surname>Qu</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Crosby</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Roberts</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>An</surname>
<given-names>V.</given-names>
</name>
</person-group> (<year>2018</year>). <article-title>A Triangulation-Based Coverage Path Planning</article-title>. <source>IEEE Trans. Syst. Man, Cybernetics: Syst.</source> <volume>50</volume>, <fpage>2157</fpage>&#x2013;<lpage>2169</lpage>. </citation>
</ref>
<ref id="B4">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Arkin</surname>
<given-names>E. M.</given-names>
</name>
<name>
<surname>Fekete</surname>
<given-names>S. P.</given-names>
</name>
<name>
<surname>Mitchell</surname>
<given-names>J.&#x20;S. B.</given-names>
</name>
</person-group> (<year>2000</year>). <article-title>Approximation Algorithms for Lawn Mowing and milling&#x2606;&#x2606;A Preliminary Version of This Paper Was Entitled "The Lawnmower Problem" and Appears in the Proc. 5th Canad. Conf. Comput. Geom., Waterloo, Canada, 1993, Pp. 461-466</article-title>. <source>Comput. Geometry</source> <volume>17</volume>, <fpage>25</fpage>&#x2013;<lpage>50</lpage>. <pub-id pub-id-type="doi">10.1016/s0925-7721(00)00015-8</pub-id> </citation>
</ref>
<ref id="B5">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Borenstein</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Koren</surname>
<given-names>Y.</given-names>
</name>
</person-group> (<year>1991</year>). <article-title>The Vector Field Histogram-Fast Obstacle Avoidance for mobile Robots</article-title>. <source>IEEE Trans. Robot. Automat.</source> <volume>7</volume>, <fpage>278</fpage>&#x2013;<lpage>288</lpage>. <pub-id pub-id-type="doi">10.1109/70.88137</pub-id> </citation>
</ref>
<ref id="B6">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Carrillo-Zapata</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Milner</surname>
<given-names>E.</given-names>
</name>
<name>
<surname>Hird</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Tzoumas</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Vardanega</surname>
<given-names>P. J.</given-names>
</name>
<name>
<surname>Sooriyabandara</surname>
<given-names>M.</given-names>
</name>
<etal/>
</person-group> (<year>2020</year>). <article-title>Mutual Shaping in Swarm Robotics: User Studies in Fire and rescue, Storage Organization, and Bridge Inspection</article-title>. <source>Front. Robot. AI</source> <volume>7</volume>, <fpage>53</fpage>. <pub-id pub-id-type="doi">10.3389/frobt.2020.00053</pub-id> </citation>
</ref>
<ref id="B7">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>C&#xe8;sar-Tondreau</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Warnell</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Stump</surname>
<given-names>E.</given-names>
</name>
<name>
<surname>Kochersberger</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Waytowich</surname>
<given-names>N. R.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Improving Autonomous Robotic Navigation Using Imitation Learning</article-title>. <source>Front. Robotics AI</source> <volume>8</volume>, <fpage>46</fpage>. </citation>
</ref>
<ref id="B8">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Deng</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Ma</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Gu</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Xu</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>Y.</given-names>
</name>
</person-group> (<year>2016</year>). <article-title>Artificial Immune Network-Based Multi-Robot Formation Path Planning with Obstacle Avoidance</article-title>. <source>Int. J.&#x20;Robotics Automation</source> <volume>31</volume>, <fpage>233</fpage>&#x2013;<lpage>242</lpage>. <pub-id pub-id-type="doi">10.2316/journal.206.2016.3.206-4746</pub-id> </citation>
</ref>
<ref id="B9">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ewerton</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Arenz</surname>
<given-names>O.</given-names>
</name>
<name>
<surname>Maeda</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Koert</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Kolev</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Takahashi</surname>
<given-names>M.</given-names>
</name>
<etal/>
</person-group> (<year>2019</year>). <article-title>Learning Trajectory Distributions for Assisted Teleoperation and Path Planning</article-title>. <source>Front. Robot. AI</source> <volume>6</volume>, <fpage>89</fpage>. <pub-id pub-id-type="doi">10.3389/frobt.2019.00089</pub-id> </citation>
</ref>
<ref id="B10">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Fiorini</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Shiller</surname>
<given-names>Z.</given-names>
</name>
</person-group> (<year>1998</year>). <article-title>Motion Planning in Dynamic Environments Using Velocity Obstacles</article-title>. <source>Int. J.&#x20;Robotics Res.</source> <volume>17</volume>, <fpage>760</fpage>&#x2013;<lpage>772</lpage>. <pub-id pub-id-type="doi">10.1177/027836499801700706</pub-id> </citation>
</ref>
<ref id="B11">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Fox</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Burgard</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Thrun</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>1997</year>). <article-title>The Dynamic Window Approach to Collision Avoidance</article-title>. <source>IEEE Robot. Automat. Mag.</source> <volume>4</volume>, <fpage>23</fpage>&#x2013;<lpage>33</lpage>. <pub-id pub-id-type="doi">10.1109/100.580977</pub-id> </citation>
</ref>
<ref id="B12">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Graves</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Chakraborty</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2018</year>). <article-title>A Linear Objective Function-Based Heuristic for Robotic Exploration of Unknown Polygonal Environments</article-title>. <source>Front. Robot. AI</source> <volume>5</volume>, <fpage>19</fpage>. <pub-id pub-id-type="doi">10.3389/frobt.2018.00019</pub-id> </citation>
</ref>
<ref id="B13">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Hassler</surname>
<given-names>S. C.</given-names>
</name>
<name>
<surname>Baysal-Gurel</surname>
<given-names>F.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Unmanned Aircraft System (UAS) Technology and Applications in Agriculture</article-title>. <source>Agronomy</source> <volume>9</volume>, <fpage>618</fpage>. <pub-id pub-id-type="doi">10.3390/agronomy9100618</pub-id> </citation>
</ref>
<ref id="B14">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Iqbal</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Xu</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Halloran</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>C.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Development of a Multi-Purpose Autonomous Differential Drive mobile Robot for Plant Phenotyping and Soil Sensing</article-title>. <source>Electronics</source> <volume>9</volume>, <fpage>1550</fpage>. <pub-id pub-id-type="doi">10.3390/electronics9091550</pub-id> </citation>
</ref>
<ref id="B15">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Jiang</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Chi</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Pan</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Guo</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Tan</surname>
<given-names>K. C.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Evolutionary Gait Transfer of Multi-Legged Robots in Complex Terrains</article-title>. <source>arXiv preprint arXiv:2012.13320</source>. </citation>
</ref>
<ref id="B16">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Lee</surname>
<given-names>S.-M.</given-names>
</name>
<name>
<surname>Kim</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Myung</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Yao</surname>
<given-names>X.</given-names>
</name>
</person-group> (<year>2014</year>). <article-title>Cooperative Coevolutionary Algorithm-Based Model Predictive Control Guaranteeing Stability of Multirobot Formation</article-title>. <source>IEEE Trans. Control. Syst. Technol.</source> <volume>23</volume>, <fpage>37</fpage>&#x2013;<lpage>51</lpage>. </citation>
</ref>
<ref id="B17">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Lei</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Luo</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Ball</surname>
<given-names>J.&#x20;E.</given-names>
</name>
<name>
<surname>Bi</surname>
<given-names>Z.</given-names>
</name>
</person-group> (<year>2020a</year>). &#x201c;<article-title>A Hybrid Fireworks Algorithm to Navigation and Mapping</article-title>,&#x201d; in <source>Handbook of Research on Fireworks Algorithms and Swarm Intelligence</source> (<publisher-loc>Pennsylvania, United&#x20;States</publisher-loc>: <publisher-name>IGI Global</publisher-name>), <fpage>213</fpage>&#x2013;<lpage>232</lpage>. <pub-id pub-id-type="doi">10.4018/978-1-7998-1659-1.ch010</pub-id> </citation>
</ref>
<ref id="B18">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Lei</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Luo</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Ball</surname>
<given-names>J.&#x20;E.</given-names>
</name>
<name>
<surname>Rahimi</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2020b</year>). &#x201c;<article-title>A Graph-Based Ant-like Approach to Optimal Path Planning</article-title>,&#x201d; in <conf-name>2020 IEEE Congress on Evolutionary Computation (CEC)</conf-name>, <fpage>1</fpage>&#x2013;<lpage>6</lpage>. <pub-id pub-id-type="doi">10.1109/cec48606.2020.9185628</pub-id> </citation>
</ref>
<ref id="B19">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Lei</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Luo</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Jan</surname>
<given-names>G. E.</given-names>
</name>
<name>
<surname>Fung</surname>
<given-names>K.</given-names>
</name>
</person-group> (<year>2019</year>). &#x201c;<article-title>Variable Speed Robot Navigation by an ACO Approach</article-title>,&#x201d; in <conf-name>International Conference on Swarm Intelligence</conf-name> (<publisher-loc>Berlin, Germany</publisher-loc>: <publisher-name>Springer</publisher-name>), <fpage>232</fpage>&#x2013;<lpage>242</lpage>. <pub-id pub-id-type="doi">10.1007/978-3-030-26369-0_22</pub-id> </citation>
</ref>
<ref id="B20">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Lei</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Luo</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Sellers</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Rahimi</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>A Bat-pigeon Algorithm to Crack Detection-Enabled Autonomous Vehicle Navigation and Mapping</article-title>. <source>Intell. Syst. Appl.</source> <volume>12</volume>, <fpage>200053</fpage>. <pub-id pub-id-type="doi">10.1016/j.iswa.2021.200053</pub-id> </citation>
</ref>
<ref id="B21">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Li</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Joo Er</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>X.</given-names>
</name>
</person-group> (<year>2011</year>). <article-title>Coverage Path Planning for UAVs Based on Enhanced Exact Cellular Decomposition Method</article-title>. <source>Mechatronics</source> <volume>21</volume>, <fpage>876</fpage>&#x2013;<lpage>885</lpage>. <pub-id pub-id-type="doi">10.1016/j.mechatronics.2010.10.009</pub-id> </citation>
</ref>
<ref id="B22">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Li</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Cui</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Xu</surname>
<given-names>D.</given-names>
</name>
</person-group> (<year>2018</year>). <article-title>Neural Network Approximation Based Near-Optimal Motion Planning with Kinodynamic Constraints Using RRT</article-title>. <source>IEEE Trans. Ind. Electron.</source> <volume>65</volume>, <fpage>8718</fpage>&#x2013;<lpage>8729</lpage>. <pub-id pub-id-type="doi">10.1109/tie.2018.2816000</pub-id> </citation>
</ref>
<ref id="B23">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Luo</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Yang</surname>
<given-names>S. X.</given-names>
</name>
</person-group> (<year>2008</year>). <article-title>A Bioinspired Neural Network for Real-Time Concurrent Map Building and Complete Coverage Robot Navigation in Unknown Environments</article-title>. <source>IEEE Trans. Neural Netw.</source> <volume>19</volume>, <fpage>1279</fpage>&#x2013;<lpage>1298</lpage>. <pub-id pub-id-type="doi">10.1109/tnn.2008.2000394</pub-id> </citation>
</ref>
<ref id="B24">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Luo</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Yang</surname>
<given-names>S. X.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Meng</surname>
<given-names>M. Q.-H.</given-names>
</name>
</person-group> (<year>2016</year>). <article-title>Neural-dynamics-driven Complete Area Coverage Navigation through Cooperation of Multiple mobile Robots</article-title>. <source>IEEE Trans. Ind. Electron.</source> <volume>64</volume>, <fpage>750</fpage>&#x2013;<lpage>760</lpage>. </citation>
</ref>
<ref id="B25">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Mazzia</surname>
<given-names>V.</given-names>
</name>
<name>
<surname>Salvetti</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Aghi</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Chiaberge</surname>
<given-names>M.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Deepway: A Deep Learning Waypoint Estimator for Global Path Generation</article-title>. <source>Comput. Electron. Agric.</source> <volume>184</volume>, <fpage>106091</fpage>. <pub-id pub-id-type="doi">10.1016/j.compag.2021.106091</pub-id> </citation>
</ref>
<ref id="B26">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Meng</surname>
<given-names>M. Q.-H.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Bridging AI to Robotics via Biomimetics</article-title>. <source>Biomimetic Intelligence and Robotics</source> <volume>1</volume>, <fpage>100006</fpage>. <pub-id pub-id-type="doi">10.1016/j.birob.2021.100006</pub-id> </citation>
</ref>
<ref id="B27">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Nasirian</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Mehrandezh</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Janabi-Sharifi</surname>
<given-names>F.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Efficient Coverage Path Planning for mobile Disinfecting Robots Using Graph-Based Representation of Environment</article-title>. <source>Front. Robotics AI</source> <volume>8</volume>, <fpage>4</fpage>. <pub-id pub-id-type="doi">10.3389/frobt.2021.624333</pub-id> </citation>
</ref>
<ref id="B28">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Niyaz</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Kuntz</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Salzman</surname>
<given-names>O.</given-names>
</name>
<name>
<surname>Alterovitz</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Srinivasa</surname>
<given-names>S. S.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Optimizing Motion-Planning Problem Setup via Bounded Evaluation with Application to Following Surgical Trajectories</article-title>. <source>Rep. U S</source> <volume>2019</volume>, <fpage>1355</fpage>&#x2013;<lpage>1362</lpage>. <pub-id pub-id-type="doi">10.1109/IROS40897.2019.8968575</pub-id> </citation>
</ref>
<ref id="B29">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Poma</surname>
<given-names>X. S.</given-names>
</name>
<name>
<surname>Riba</surname>
<given-names>E.</given-names>
</name>
<name>
<surname>Sappa</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2020</year>). &#x201c;<article-title>Dense Extreme Inception Network: Towards a Robust Cnn Model for Edge Detection</article-title>,&#x201d; in <conf-name>IEEE/CVF Winter Conference on Applications of Computer Vision</conf-name>, <fpage>1923</fpage>&#x2013;<lpage>1932</lpage>. </citation>
</ref>
<ref id="B30">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Poonawala</surname>
<given-names>H. A.</given-names>
</name>
<name>
<surname>Spong</surname>
<given-names>M. W.</given-names>
</name>
</person-group> (<year>2017</year>). <article-title>Time-optimal Velocity Tracking Control for Differential Drive Robots</article-title>. <source>Automatica</source> <volume>85</volume>, <fpage>153</fpage>&#x2013;<lpage>157</lpage>. <pub-id pub-id-type="doi">10.1016/j.automatica.2017.07.038</pub-id> </citation>
</ref>
<ref id="B31">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Quin</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Nguyen</surname>
<given-names>D. D. K.</given-names>
</name>
<name>
<surname>Vu</surname>
<given-names>T. L.</given-names>
</name>
<name>
<surname>Alempijevic</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Paul</surname>
<given-names>G.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Approaches for Efficiently Detecting Frontier Cells in Robotics Exploration</article-title>. <source>Front. Robot. AI</source> <volume>8</volume>, <fpage>1</fpage>. <pub-id pub-id-type="doi">10.3389/frobt.2021.616470</pub-id> </citation>
</ref>
<ref id="B32">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Rawashdeh</surname>
<given-names>N. A.</given-names>
</name>
<name>
<surname>Bos</surname>
<given-names>J.&#x20;P.</given-names>
</name>
<name>
<surname>Abu-Alrub</surname>
<given-names>N. J.</given-names>
</name>
</person-group> (<year>2021</year>). &#x201c;<article-title>Drivable Path Detection Using CNN Sensor Fusion for Autonomous Driving in the Snow</article-title>,&#x201d; in <conf-name>Autonomous Systems: Sensors, Processing, and Security for Vehicles and Infrastructure 2021. Vol. 11748</conf-name>, <fpage>1174806</fpage>. <pub-id pub-id-type="doi">10.1117/12.2587993</pub-id> </citation>
</ref>
<ref id="B33">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Rose</surname>
<given-names>D. C.</given-names>
</name>
<name>
<surname>Chilvers</surname>
<given-names>J.</given-names>
</name>
</person-group> (<year>2018</year>). <article-title>Agriculture 4.0: Broadening Responsible Innovation in an Era of Smart Farming</article-title>. <source>Front. Sustain. Food Syst.</source> <volume>2</volume>, <fpage>87</fpage>. <pub-id pub-id-type="doi">10.3389/fsufs.2018.00087</pub-id> </citation>
</ref>
<ref id="B34">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Segato</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Pieri</surname>
<given-names>V.</given-names>
</name>
<name>
<surname>Favaro</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Riva</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Falini</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>De Momi</surname>
<given-names>E.</given-names>
</name>
<etal/>
</person-group> (<year>2019</year>). <article-title>Automated Steerable Path Planning for Deep Brain Stimulation Safeguarding Fiber Tracts and Deep gray Matter Nuclei</article-title>. <source>Front. Robot. AI</source> <volume>6</volume>, <fpage>70</fpage>. <pub-id pub-id-type="doi">10.3389/frobt.2019.00070</pub-id> </citation>
</ref>
<ref id="B35">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Stolfi</surname>
<given-names>D. H.</given-names>
</name>
<name>
<surname>Brust</surname>
<given-names>M. R.</given-names>
</name>
<name>
<surname>Danoy</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Bouvry</surname>
<given-names>P.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>UAV-UGV-UMV Multi-Swarms for Cooperative Surveillance</article-title>. <source>Front. Robotics AI</source> <volume>8</volume>, <fpage>5</fpage>. <pub-id pub-id-type="doi">10.3389/frobt.2021.616950</pub-id> </citation>
</ref>
<ref id="B36">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Sun</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Zhu</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Tian</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Luo</surname>
<given-names>C.</given-names>
</name>
</person-group> (<year>2018</year>). <article-title>Complete Coverage Autonomous Underwater Vehicles Path Planning Based on Glasius Bio-Inspired Neural Network Algorithm for Discrete and Centralized Programming</article-title>. <source>IEEE Trans. Cogn. Dev. Syst.</source> <volume>11</volume>, <fpage>73</fpage>&#x2013;<lpage>84</lpage>. </citation>
</ref>
<ref id="B37">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>S&#xfc;nderhauf</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Brock</surname>
<given-names>O.</given-names>
</name>
<name>
<surname>Scheirer</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Hadsell</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Fox</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Leitner</surname>
<given-names>J.</given-names>
</name>
<etal/>
</person-group> (<year>2018</year>). <article-title>The Limits and Potentials of Deep Learning for Robotics</article-title>. <source>Int. J.&#x20;Robotics Res.</source> <volume>37</volume>, <fpage>405</fpage>&#x2013;<lpage>420</lpage>. </citation>
</ref>
<ref id="B38">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Torres</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Pelta</surname>
<given-names>D. A.</given-names>
</name>
<name>
<surname>Verdegay</surname>
<given-names>J.&#x20;L.</given-names>
</name>
<name>
<surname>Torres</surname>
<given-names>J.&#x20;C.</given-names>
</name>
</person-group> (<year>2016</year>). <article-title>Coverage Path Planning with Unmanned Aerial Vehicles for 3D Terrain Reconstruction</article-title>. <source>Expert Syst. Appl.</source> <volume>55</volume>, <fpage>441</fpage>&#x2013;<lpage>451</lpage>. <pub-id pub-id-type="doi">10.1016/j.eswa.2016.02.007</pub-id> </citation>
</ref>
<ref id="B39">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Valiente</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Zaman</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Fallah</surname>
<given-names>Y. P.</given-names>
</name>
<name>
<surname>Ozer</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2020</year>). &#x201c;<article-title>Connected and Autonomous Vehicles in the Deep Learning Era: A Case Study on Computer-Guided Steering</article-title>,&#x201d; in <source>Handbook of Pattern Recognition and Computer Vision</source> (<publisher-loc>Singapore</publisher-loc>: <publisher-name>World Scientific</publisher-name>), <fpage>365</fpage>&#x2013;<lpage>384</lpage>. <pub-id pub-id-type="doi">10.1142/9789811211072_0019</pub-id> </citation>
</ref>
<ref id="B40">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wagner</surname>
<given-names>M. P.</given-names>
</name>
<name>
<surname>Oppelt</surname>
<given-names>N.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Extracting Agricultural fields from Remote Sensing Imagery Using Graph-Based Growing Contours</article-title>. <source>Remote Sensing</source> <volume>12</volume>, <fpage>1205</fpage>. <pub-id pub-id-type="doi">10.3390/rs12071205</pub-id> </citation>
</ref>
<ref id="B41">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wang</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Chi</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Meng</surname>
<given-names>M. Q.-H.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Autonomous Robotic Exploration by Incremental Road Map Construction</article-title>. <source>IEEE Trans. Automat. Sci. Eng.</source> <volume>16</volume>, <fpage>1720</fpage>&#x2013;<lpage>1731</lpage>. <pub-id pub-id-type="doi">10.1109/tase.2019.2894748</pub-id> </citation>
</ref>
<ref id="B42">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Wang</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Chi</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Meng</surname>
<given-names>M. Q.-H.</given-names>
</name>
</person-group> (<year>2021</year>). &#x201c;<article-title>Efficient Robot Motion Planning Using Bidirectional-Unidirectional RRT Extend Function</article-title>,&#x201d; in <conf-name>IEEE Transactions on Automation Science and Engineering</conf-name>. <pub-id pub-id-type="doi">10.1109/tase.2021.3130372</pub-id> </citation>
</ref>
<ref id="B43">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Xie</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Jin</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Garcia Carrillo</surname>
<given-names>L. R.</given-names>
</name>
</person-group> (<year>2019</year>). &#x201c;<article-title>Optimal Path Planning for Unmanned Aerial Systems to Cover Multiple Regions</article-title>,&#x201d; in <conf-name>AIAA Scitech 2019 Forum</conf-name>, <fpage>1794</fpage>. <pub-id pub-id-type="doi">10.2514/6.2019-1794</pub-id> </citation>
</ref>
<ref id="B44">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Xiong</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Zhou</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Yang</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Xiang</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Ma</surname>
<given-names>J.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Mobile Robot Path Planning Based on Time Taboo Ant colony Optimization in Dynamic Environment</article-title>. <source>Front. Neurorobot</source> <volume>15</volume>, <fpage>642733</fpage>. <pub-id pub-id-type="doi">10.3389/fnbot.2021.642733</pub-id> </citation>
</ref>
<ref id="B45">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yang</surname>
<given-names>S. X.</given-names>
</name>
<name>
<surname>Luo</surname>
<given-names>C.</given-names>
</name>
</person-group> (<year>2004</year>). <article-title>A Neural Network Approach to Complete Coverage Path Planning</article-title>. <source>IEEE Trans. Syst. Man. Cybern. B</source> <volume>34</volume>, <fpage>718</fpage>&#x2013;<lpage>724</lpage>. <pub-id pub-id-type="doi">10.1109/tsmcb.2003.811769</pub-id> </citation>
</ref>
<ref id="B46">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Yang</surname>
<given-names>X.-S.</given-names>
</name>
</person-group> (<year>2010</year>). &#x201c;<article-title>A New Metaheuristic Bat-Inspired Algorithm</article-title>,&#x201d; in <source>Nature Inspired Cooperative Strategies for Optimization (NICSO 2010)</source> (<publisher-loc>Berlin, Germany</publisher-loc>: <publisher-name>Springer</publisher-name>), <fpage>65</fpage>&#x2013;<lpage>74</lpage>. <pub-id pub-id-type="doi">10.1007/978-3-642-12538-6_6</pub-id> </citation>
</ref>
<ref id="B47">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Zhou</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Gu</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>H.</given-names>
</name>
<etal/>
</person-group> (<year>2019</year>). &#x201c;<article-title>Improved Path Planning for mobile Robot Based on Firefly Algorithm</article-title>,&#x201d; in <conf-name>2019 IEEE International Conference on Robotics and Biomimetics (ROBIO)</conf-name>, <fpage>2885</fpage>&#x2013;<lpage>2889</lpage>. <pub-id pub-id-type="doi">10.1109/robio49542.2019.8961442</pub-id> </citation>
</ref>
<ref id="B48">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhu</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Cao</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Luo</surname>
<given-names>C.</given-names>
</name>
</person-group> (<year>2017</year>). <article-title>Biologically Inspired Self-Organizing Map Applied to Task Assignment and Path Planning of an AUV System</article-title>. <source>IEEE Trans. Cogn. Develop. Syst.</source> <volume>10</volume>, <fpage>304</fpage>&#x2013;<lpage>313</lpage>. </citation>
</ref>
</ref-list>
</back>
</article>