<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.1 20151215//EN" "http://jats.nlm.nih.gov/publishing/1.1/JATS-journalpublishing1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:mml="http://www.w3.org/1998/Math/MathML" xml:lang="en" article-type="research-article" dtd-version="1.1">
<front>
<journal-meta>
<journal-id journal-id-type="pmc">CMC</journal-id>
<journal-id journal-id-type="nlm-ta">CMC</journal-id>
<journal-id journal-id-type="publisher-id">CMC</journal-id>
<journal-title-group>
<journal-title>Computers, Materials &#x0026; Continua</journal-title>
</journal-title-group>
<issn pub-type="epub">1546-2226</issn>
<issn pub-type="ppub">1546-2218</issn>
<publisher>
<publisher-name>Tech Science Press</publisher-name>
<publisher-loc>USA</publisher-loc>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">65539</article-id>
<article-id pub-id-type="doi">10.32604/cmc.2026.065539</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Article</subject>
</subj-group>
</article-categories>
<title-group>
<article-title>Development of Wave Water Simulator for Path Planning of Autonomous Robots in Constrained Environments</article-title>
<alt-title alt-title-type="left-running-head">Development of Wave Water Simulator for Path Planning of Autonomous Robots in Constrained Environments</alt-title>
<alt-title alt-title-type="right-running-head">Development of Wave Water Simulator for Path Planning of Autonomous Robots in Constrained Environments</alt-title>
</title-group>
<contrib-group>
<contrib id="author-1" contrib-type="author">
<name name-style="western"><surname>Chen</surname><given-names>Hui</given-names></name><xref ref-type="aff" rid="aff-1">1</xref></contrib>
<contrib id="author-2" contrib-type="author" corresp="yes">
<name name-style="western"><surname>Ali</surname><given-names>Mohammed A. H.</given-names></name><xref ref-type="aff" rid="aff-1">1</xref><email>hashem@um.edu.my</email></contrib>
<contrib id="author-3" contrib-type="author">
<name name-style="western"><surname>Razak</surname><given-names>Bushroa Abd</given-names></name><xref ref-type="aff" rid="aff-1">1</xref></contrib>
<contrib id="author-4" contrib-type="author">
<name name-style="western"><surname>Wang</surname><given-names>Zhenya</given-names></name><xref ref-type="aff" rid="aff-2">2</xref></contrib>
<contrib id="author-5" contrib-type="author">
<name name-style="western"><surname>Nukman</surname><given-names>Yusoff</given-names></name><xref ref-type="aff" rid="aff-1">1</xref></contrib>
<contrib id="author-6" contrib-type="author">
<name name-style="western"><surname>Zhang</surname><given-names>Shikai</given-names></name><xref ref-type="aff" rid="aff-1">1</xref></contrib>
<contrib id="author-7" contrib-type="author">
<name name-style="western"><surname>Huang</surname><given-names>Zhiwei</given-names></name><xref ref-type="aff" rid="aff-1">1</xref></contrib>
<contrib id="author-8" contrib-type="author">
<name name-style="western"><surname>Yao</surname><given-names>Ligang</given-names></name><xref ref-type="aff" rid="aff-3">3</xref></contrib>
<contrib id="author-9" contrib-type="author">
<name name-style="western"><surname>Alkhedher</surname><given-names>Mohammad</given-names></name><xref ref-type="aff" rid="aff-4">4</xref></contrib>
<aff id="aff-1"><label>1</label><institution>Department of Mechanical Engineering, Faculty of Engineering, University of Malaya</institution>, <addr-line>Kuala Lumpur</addr-line>, <country>Malaysia</country></aff>
<aff id="aff-2"><label>2</label><institution>Department of Mechanical Engineering, Tsinghua University</institution>, <addr-line>Beijing</addr-line>, <country>China</country></aff>
<aff id="aff-3"><label>3</label><institution>School of Mechanical Engineering and Automation, Fuzhou University</institution>, <addr-line>Fuzhou</addr-line>, <country>China</country></aff>
<aff id="aff-4"><label>4</label><institution>Mechanical and Industrial Engineering Department, Abu Dhabi University, Zayed City</institution>, <addr-line>Abu Dhabi</addr-line>, <country>United Arab Emirates</country></aff>
</contrib-group>
<author-notes>
<corresp id="cor1"><label>&#x002A;</label>Corresponding Author: Mohammed A. H. Ali. Email: <email>hashem@um.edu.my</email></corresp>
</author-notes>
<pub-date date-type="collection" publication-format="electronic">
<year>2026</year>
</pub-date>
<pub-date date-type="pub" publication-format="electronic">
<day>10</day><month>2</month><year>2026</year>
</pub-date>
<volume>87</volume>
<issue>1</issue>
<elocation-id>100</elocation-id>
<history>
<date date-type="received">
<day>15</day>
<month>03</month>
<year>2025</year>
</date>
<date date-type="accepted">
<day>29</day>
<month>05</month>
<year>2025</year>
</date>
</history>
<permissions>
<copyright-statement>&#x00A9; 2026 The Authors.</copyright-statement>
<copyright-year>2026</copyright-year>
<copyright-holder>Published by Tech Science Press.</copyright-holder>
<license xlink:href="https://creativecommons.org/licenses/by/4.0/">
<license-p>This work is licensed under a <ext-link ext-link-type="uri" xlink:type="simple" xlink:href="https://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</ext-link>, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</license-p>
</license>
</permissions>
<self-uri content-type="pdf" xlink:href="TSP_CMC_65539.pdf"></self-uri>
<abstract>
<p>Most existing path planning approaches rely on discrete expansions or localized heuristics that can lead to extended re-planning, inefficient detours, and limited adaptability to complex obstacle distributions. These issues are particularly pronounced when navigating cluttered or large-scale environments that demand both global coverage and smooth trajectory generation. To address these challenges, this paper proposes a Wave Water Simulator (WWS) algorithm, leveraging a physically motivated wave equation to achieve inherently smooth, globally consistent path planning. In WWS, wavefront expansions naturally identify safe corridors while seamlessly avoiding local minima, and selective corridor focusing reduces computational overhead in large or dense maps. Comprehensive simulations and real-world validations&#x2014;encompassing both indoor and outdoor scenarios&#x2014;demonstrate that WWS reduces path length by 2%&#x2013;13% compared to conventional methods, while preserving gentle curvature and robust obstacle clearance. Furthermore, WWS requires minimal parameter tuning across diverse domains, underscoring its broad applicability to warehouse robotics, field operations, and autonomous service vehicles. These findings confirm that the proposed wave-based framework not only bridges the gap between local heuristics and global coverage but also sets a promising direction for future extensions toward dynamic obstacle scenarios and multi-agent coordination.</p>
</abstract>
<kwd-group kwd-group-type="author">
<kwd>PDE-based wave propagation</kwd>
<kwd>robot path planning</kwd>
<kwd>obstacle avoidance</kwd>
<kwd>wave water simulator</kwd>
<kwd>laser simulator (LS) and generalized laser simulator (GLS)</kwd>
<kwd>A&#x002A; algorithm</kwd>
</kwd-group>
<funding-group>
<award-group id="awg1">
<funding-source>thank University of Malaya and Ministry of High Education-Malaysia</funding-source>
<award-id>FRGS/1/2023/TK10/UM/02/3</award-id>
<award-id>GPF020A-2023</award-id>
</award-group>
</funding-group>
</article-meta>
</front>
<body>
<sec id="s1">
<label>1</label>
<title>Introduction</title>
<p>Robotic path planning is pivotal in modern applications such as warehouse logistics, disaster relief, and autonomous exploration. Its rapid evolution enables robots to navigate complex, cluttered, and uncertain environments effectively, thereby enhancing operational efficiency and safety [<xref ref-type="bibr" rid="ref-1">1</xref>&#x2013;<xref ref-type="bibr" rid="ref-4">4</xref>]. However, the harsh and cluttered conditions in these operational domains often lead to planning failures, suboptimal navigation, or even collisions. Therefore, robust and efficient path planning methods are vital for ensuring safe, stable, and high-performance operations, particularly in scenarios where time-sensitive and precise navigation is critical.</p>
<p>Classical path planning approaches can be broadly categorized into graph-based algorithms, sampling-based algorithms, and reactive/potential-field methods [<xref ref-type="bibr" rid="ref-5">5</xref>,<xref ref-type="bibr" rid="ref-6">6</xref>]. Graph search algorithms like Dijkstra&#x2019;s and A&#x002A; guarantee optimal paths on discrete grids and have been widely used in robotic navigation [<xref ref-type="bibr" rid="ref-7">7</xref>,<xref ref-type="bibr" rid="ref-8">8</xref>]. However, their solutions are tied to the grid resolution and discrete motion steps; thus the resulting paths may be suboptimal or geometrically jagged when executed in a continuous world. Moreover, such deterministic searches become computationally expensive as the state space grows in dimension (for example, when incorporating a robot&#x2019;s orientation or other dynamic factors) [<xref ref-type="bibr" rid="ref-9">9</xref>,<xref ref-type="bibr" rid="ref-10">10</xref>]. On the other hand, sampling-based planners such as Rapidly exploring Random Trees (RRT) and Probabilistic Roadmaps (PRM) offer better scalability in high-dimensional or continuous spaces by exploring the environment through random sampling [<xref ref-type="bibr" rid="ref-11">11</xref>,<xref ref-type="bibr" rid="ref-12">12</xref>]. Artificial Potential Fields (APF), despite their computational simplicity, risk local minima in complex obstacle distributions [<xref ref-type="bibr" rid="ref-5">5</xref>,<xref ref-type="bibr" rid="ref-6">6</xref>], whereas Jump Point Search (JPS) accelerates grid-based searches through directional pruning but still inherits the underlying &#x201C;staircase&#x201D; nature of grid expansions [<xref ref-type="bibr" rid="ref-13">13</xref>]. These methods can find paths where grid-based methods struggle, but they often suffer from the well-known &#x201C;narrow passage&#x201D; problem, requiring extensive samples to navigate tight gaps [<xref ref-type="bibr" rid="ref-14">14</xref>]. Meanwhile, reactive methods like artificial potential fields allow fast real-time responses by treating the goal as an attractive force and obstacles as repelling forces. Such potential-field planners are computationally light, yet they are notorious for getting stuck in local minima when only local information is considered [<xref ref-type="bibr" rid="ref-15">15</xref>]. These limitations highlight the need for planning strategies that combine global search thoroughness with the ability to handle confined geometries.</p>
<p>To overcome the above shortcomings, researchers have turned to wave-propagation algorithms that ensure a more global and exhaustive search of the environment. The classic wavefront (brushfire) algorithm floods the space from the start (or goal) like a BFS, ensuring all free cells are reached in increasing distance order [<xref ref-type="bibr" rid="ref-16">16</xref>]. This guarantee finding the shortest path (for uniform costs) and avoids the local minima issues of gradient-based methods. The resulting paths, however, follow the grid geometry&#x2014;often involving Manhattan-like turns&#x2014;and may hug obstacle boundaries (yielding low clearance). A prominent example is the Fast Marching Method (FMM), an algorithm that treats path planning as an Eikonal equation problem and efficiently computes the arrival time of a wavefront spreading across the map [<xref ref-type="bibr" rid="ref-17">17</xref>]. In robotics, FMM has been used to compute smooth, near-optimal paths on occupancy grids by simulating the expansion of a wave from the start position until it reaches the goal [<xref ref-type="bibr" rid="ref-18">18</xref>&#x2013;<xref ref-type="bibr" rid="ref-20">20</xref>]. This approach shares similarities with Dijkstra&#x2019;s algorithm in the way it incrementally expands a frontier, but unlike Dijkstra&#x2019;s purely grid-based costs, FMM solves for continuous cost accumulations (distances or travel times) via the Eikonal update, yielding a path that is not constrained by grid direction biases moreover, because the wavefront propagation in FMM guarantees the minimal-time path before any clearance weighting; additional bias may deviate from that optimum [<xref ref-type="bibr" rid="ref-7">7</xref>,<xref ref-type="bibr" rid="ref-21">21</xref>]. Numerous works have built upon FMM&#x2019;s foundation&#x2014;for instance, the Fast Marching Square (FMS) variant runs FMM twice (first to create a repulsive potential field around obstacles, and second to plan on that modified cost map), resulting in paths that keep a safer clearance from obstacles [<xref ref-type="bibr" rid="ref-22">22</xref>]. By contrast, local or heuristic-driven methods&#x2014;including Laser Simulator (LS) and distance-transform-based Generalized Laser Simulator (GLS)&#x2014;expand incrementally and maintain agility in sparse or partially known settings [<xref ref-type="bibr" rid="ref-23">23</xref>&#x2013;<xref ref-type="bibr" rid="ref-25">25</xref>]. These developments demonstrate the versatility and effectiveness of wave-based planning approaches, although they may introduce additional parameters (such as weightings for the repulsive field in FMS) that require careful tuning for different environments. <xref ref-type="table" rid="table-1">Table 1</xref> provides an overview of major path planning algorithms, contrasting their nature, path quality, typical evaluation method, complexity, and key characteristics in context. Although these existing path planning solutions have significantly advanced robotic navigation, they still face key limitations in real-world environments.</p>
<table-wrap id="table-1">
<label>Table 1</label>
<caption>
<title>Representative path planning algorithms.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Algorithm</th>
<th>Global/Local</th>
<th>Path Smoothness</th>
<th>Typical Complexity</th>
<th>Type of Test</th>
</tr>
</thead>
<tbody>
<tr>
<td>A&#x002A; Family [<xref ref-type="bibr" rid="ref-5">5</xref>,<xref ref-type="bibr" rid="ref-6">6</xref>]</td>
<td>YES (Grid-based)</td>
<td>No (staircase)</td>
<td><inline-formula id="ieqn-1"><mml:math id="mml-ieqn-1"><mml:mo>&#x2248;</mml:mo><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>Simulation</td>
</tr>
<tr>
<td>RRT-Based [<xref ref-type="bibr" rid="ref-11">11</xref>]</td>
<td>NO</td>
<td>No (irregular)</td>
<td><inline-formula id="ieqn-2"><mml:math id="mml-ieqn-2"><mml:mo>&#x2248;</mml:mo><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>Simulation</td>
</tr>
<tr>
<td>LS [<xref ref-type="bibr" rid="ref-26">26</xref>]</td>
<td>NO</td>
<td>No (zigzag)</td>
<td><inline-formula id="ieqn-3"><mml:math id="mml-ieqn-3"><mml:mo>&#x2248;</mml:mo><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>Simulation/Experiment</td>
</tr>
<tr>
<td>GLS [<xref ref-type="bibr" rid="ref-25">25</xref>]</td>
<td>NO</td>
<td>Moderate</td>
<td><inline-formula id="ieqn-4"><mml:math id="mml-ieqn-4"><mml:mo>&#x2248;</mml:mo><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>Simulation/Experiment</td>
</tr>
<tr>
<td>D&#x002A;-Lite [<xref ref-type="bibr" rid="ref-21">21</xref>]</td>
<td>YES</td>
<td>Low</td>
<td><inline-formula id="ieqn-5"><mml:math id="mml-ieqn-5"><mml:mo>=</mml:mo><mml:mi>N</mml:mi><mml:mrow><mml:mo>/</mml:mo></mml:mrow><mml:mi>A</mml:mi></mml:math></inline-formula></td>
<td>Simulation/Experiment</td>
</tr>
<tr>
<td>Artificial Potential Fields (APF) [<xref ref-type="bibr" rid="ref-5">5</xref>,<xref ref-type="bibr" rid="ref-6">6</xref>]</td>
<td>NO</td>
<td>No (partial)</td>
<td><inline-formula id="ieqn-6"><mml:math id="mml-ieqn-6"><mml:mo>&#x2248;</mml:mo><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>Simulation</td>
</tr>
<tr>
<td>Jump Point Search (JPS) [<xref ref-type="bibr" rid="ref-13">13</xref>]</td>
<td>Yes (Grid-based)</td>
<td>No (local minima)</td>
<td><inline-formula id="ieqn-7"><mml:math id="mml-ieqn-7"><mml:mo>&#x2248;</mml:mo><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>Simulation</td>
</tr>
<tr>
<td>PRM [<xref ref-type="bibr" rid="ref-11">11</xref>]</td>
<td>Yes (Sampling-based)</td>
<td>No</td>
<td><inline-formula id="ieqn-8"><mml:math id="mml-ieqn-8"><mml:mo>&#x2248;</mml:mo><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>Simulation</td>
</tr>
<tr>
<td>BFS [<xref ref-type="bibr" rid="ref-16">16</xref>]</td>
<td>YES</td>
<td>LOW</td>
<td><inline-formula id="ieqn-9"><mml:math id="mml-ieqn-9"><mml:mo>&#x2248;</mml:mo><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>Simulation</td>
</tr>
<tr>
<td>FMM [<xref ref-type="bibr" rid="ref-27">27</xref>]</td>
<td>YES</td>
<td>High</td>
<td><inline-formula id="ieqn-10"><mml:math id="mml-ieqn-10"><mml:mo>&#x2248;</mml:mo><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>Simulation</td>
</tr>
<tr>
<td>Wave-Based</td>
<td>YES (Continuous)</td>
<td>Yes (naturally)</td>
<td><inline-formula id="ieqn-11"><mml:math id="mml-ieqn-11"><mml:mo>&#x2248;</mml:mo><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>Simulation/Experiment</td>
</tr>
</tbody>
</table>
</table-wrap>
<p><list list-type="order">
<list-item>
<p>Limited Smoothness and Susceptibility to Local Minima: Discrete search methods often yield angular or piecewise-linear paths, whereas purely heuristic approaches may be trapped by complex obstacle configurations.</p></list-item>
<list-item>
<p>High Computational Overhead: Full-map searches can quickly become computationally expensive in large or cluttered domains, hindering real-time deployment.</p></list-item>
<list-item>
<p>Inadequate Obstacle Clearance: Routes that lack built-in clearance margins risk collisions under sensor or actuation uncertainty, especially in narrow corridors.</p></list-item>
<list-item>
<p>Weak Generalizability: Many methods require domain-specific heuristics or tuning for best performance, limiting adaptability across diverse application scenarios.</p></list-item>
</list></p>
<p>In contemporary path-planning research, most algorithms address fundamental objectives such as minimizing travel distance <inline-formula id="ieqn-12"><mml:math id="mml-ieqn-12"><mml:mi>f</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>p</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>, avoiding obstacles <inline-formula id="ieqn-13"><mml:math id="mml-ieqn-13"><mml:mi>f</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>o</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>, or navigating to goal <inline-formula id="ieqn-14"><mml:math id="mml-ieqn-14"><mml:mi>f</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>g</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>. However, real-world navigation tasks often involve additional rule-based and instruction-based requirements, which are not routinely integrated into path-planning frameworks. To capture these diverse elements in a unified model, we represent the overall path-planning objective as:
<disp-formula id="eqn-1"><label>(1)</label><mml:math id="mml-eqn-1" display="block"><mml:mi>f</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mi>f</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>g</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>+</mml:mo><mml:mi>f</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>r</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>+</mml:mo><mml:mi>f</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>o</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>+</mml:mo><mml:mi>f</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>+</mml:mo><mml:mi>f</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>p</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></disp-formula></p>
<p>While extensive literature exists for (<inline-formula id="ieqn-15"><mml:math id="mml-ieqn-15"><mml:mi>f</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>p</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>, <inline-formula id="ieqn-16"><mml:math id="mml-ieqn-16"><mml:mi>f</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>o</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>, <inline-formula id="ieqn-17"><mml:math id="mml-ieqn-17"><mml:mi>f</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>g</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>). But the components tied to rules <inline-formula id="ieqn-18"><mml:math id="mml-ieqn-18"><mml:mi>f</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>r</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>, and <inline-formula id="ieqn-19"><mml:math id="mml-ieqn-19"><mml:mi>f</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> instructions remain underexplored, leaving robots ill-equipped to modify routes under changing operational mandates.</p>
<p>To address these issues, this paper presents the Wave Water Simulator (WWS) algorithm&#x2014;a novel path planning approach with an emphasis on global wave propagation, corridor-restricted coverage, and parameter robustness. Unlike FMM&#x2019;s purely mathematical wavefront propagation on a cost grid, WWS draws inspiration from physical water waves to simulate the spread of a wavefront through the robot&#x2019;s environment. Starting at the robot&#x2019;s initial position, the WWS algorithm releases a virtual &#x201C;water wave&#x201D; that expands outward across all traversable space until the goal is reached, analogous to water flooding through the free areas. This global wave propagation ensures that the search does not miss any viable routes: all potential paths are explored simultaneously as the wave permeates every accessible region of the map. Consequently, WWS naturally avoids pitfalls like dead-end traps or local minima that can confound local planners, since the wave will continue to flow around obstacles and through every navigable opening until it eventually reaches the target (guaranteeing completeness of the search). The main contributions of this paper can be summarized as follows:
<list list-type="order">
<list-item>
<p>Wave equation-based global coverage: By simulating a continuous wave expansion from the start node, WWS ensures that reachable free spaces are coherently encoded in a single global arrival-time map, reducing the risk of local minima.</p></list-item>
<list-item>
<p>Enhanced smoothness and clearance: The wavefront naturally &#x201C;bends&#x201D; around obstacles, avoiding abrupt directional shifts common in discrete planners. The resulting trajectories exhibit gentle curvature, facilitating safer and more energy-efficient robot motion.</p></list-item>
<list-item>
<p>A wave-based path planning model is established based on WWS, seamlessly integrating geometry <inline-formula id="ieqn-20"><mml:math id="mml-ieqn-20"><mml:mi>f</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>p</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>, avoiding obstacles <inline-formula id="ieqn-21"><mml:math id="mml-ieqn-21"><mml:mi>f</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>o</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>, or navigating to goal <inline-formula id="ieqn-22"><mml:math id="mml-ieqn-22"><mml:mi>f</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>g</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> and rule/instruction <inline-formula id="ieqn-23"><mml:math id="mml-ieqn-23"><mml:mi>f</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>r</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>,</mml:mo><mml:mi>f</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>.</p></list-item>
<list-item>
<p>Broad applicability: Through extensive simulations and real-world tests in both indoor labs and outdoor terrains, WWS has demonstrated robust performance across diverse obstacle densities and map sizes, obviating the need for <italic>ad hoc</italic> parameter tuning in different scenarios.</p></list-item>
</list></p>
<p>This paper is structured as follows. <xref ref-type="sec" rid="s2">Section 2</xref> details the proposed analytical wave model and its path planning formulation. <xref ref-type="sec" rid="s3">Section 3</xref> describes implementation details and validates the algorithm in simple and complex simulation scenarios and demonstrates indoor and outdoor experiments. <xref ref-type="sec" rid="s4">Section 4</xref> summarizes the main conclusions of the study.</p>
</sec>
<sec id="s2">
<label>2</label>
<title>Method</title>
<p>This section introduces the analytical two-dimensional wave equation and demonstrates how its solution underpins the proposed Wave Water Simulator (WWS). The goal is to highlight how continuous wave propagation creates a global arrival-time map that, in turn, guides path construction around static obstacles.</p>
<sec id="s2_1">
<label>2.1</label>
<title>The Principle of Wave Water Simulator</title>
<p>A novel wave-based path planning framework is proposed, with its flowchart shown in <xref ref-type="fig" rid="fig-1">Fig. 1</xref>. This framework leverages a continuous wave expansion to reveal global navigability and efficiently extract collision-free routes. First, the environment map is generated or loaded, marking obstacles and free cells. Next, a selective corridor is optionally applied to constrain wave expansions, reducing computation in large or cluttered domains. Then, the wave equation is used to derive arrival times across the corridor, reflecting each cell&#x2019;s accessibility from the start node. Finally, a backtracking stage applies a cost function to preserve clearance while extracting a smooth, feasible path. This wave-centric design naturally encodes corridor effects and obstacle boundaries, producing globally consistent trajectories without relying on incremental re-planning.</p>
<fig id="fig-1">
<label>Figure 1</label>
<caption>
<title>Overall framework for proposed Wave Water Simulator (WWS).</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_65539-fig-1.tif"/>
</fig>
<p>The Wave Water Simulator (WWS) algorithm applies the concept of wave expansion to path planning by continuously propagating a simulated wavefront from the robot&#x2019;s initial position throughout the environment. As the wave evolves outward, it implicitly explores all reachable areas, indicating how a robot could navigate from the start to a goal. This wave-centric perspective avoids the pitfalls of purely heuristic methods, naturally bypassing local minima and covering the free space in an unbiased manner.</p>
<p>As shown in <xref ref-type="fig" rid="fig-2">Fig. 2a</xref>, The Wave Water Simulator (WWS) algorithm applies an analytical two-dimensional wave equation to model path planning as a physical wave expansion from the robot&#x2019;s start position. As the wavefront propagates outward, Dirichlet boundary conditions (<inline-formula id="ieqn-24"><mml:math id="mml-ieqn-24"><mml:mi>U</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula>) are imposed at domain edges and obstacle surfaces, causing the wave amplitude to drop to zero on contact. This absorption mechanism naturally prevents the wave from crossing into invalid regions and obviates the need for separate collision detection. In open areas, the wave spreads smoothly, providing a continuous representation of arrival times for each cell; where boundaries exist, the wave simply ceases to propagate. By tracking descending arrival times from a goal back to the source, WWS directly produces a collision-free route that conforms to obstacles and domain limits.</p>
<fig id="fig-2">
<label>Figure 2</label>
<caption>
<title>The principal Wave Water simulator (<bold>a</bold>) WWS spread, and boundary detect (<bold>b</bold>) WWS obstacle detection.</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_65539-fig-2.tif"/>
</fig>
<p><xref ref-type="fig" rid="fig-2">Fig. 2b</xref> illustrates how boundary conditions are applied in the Wave Water Simulator (WWS). Obstacles (the circular, rectangular, and triangular shapes) and the domain periphery are treated as zero-amplitude boundaries, effectively &#x201C;absorbing&#x201D; or blocking the wave. In the depicted scenario, the analytical solution for the two-dimensional wave equation expands smoothly from the robot&#x2019;s initial position (green dot) through free space (white region), yet remains strictly confined by obstacles and outer walls. Because these boundaries enforce <inline-formula id="ieqn-25"><mml:math id="mml-ieqn-25"><mml:mi>U</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula>, the wave cannot propagate into blocked cells, naturally preventing pathfinding from erroneously extending behind obstacles. This physical consistency obviates the need for separate collision detection: once an obstacle is designated as a boundary where <inline-formula id="ieqn-26"><mml:math id="mml-ieqn-26"><mml:mi>U</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula>, the wave simply does not penetrate that region. As a result, WWS offers a unified framework where obstacle avoidance and global coverage are inherently incorporated into the wave equation itself, which guarantees both feasibility and smoothness of the final path.</p>
</sec>
<sec id="s2_2">
<label>2.2</label>
<title>Wave Equation Fundamentals</title>
<sec id="s2_2_1">
<label>2.2.1</label>
<title>PDE-Based Wave Propagation</title>
<p>The two-dimensional wave equation is a well-known partial differential equation (PDE) that describes wave propagation in continuous media. In a homogeneous, bounded domain <inline-formula id="ieqn-27"><mml:math id="mml-ieqn-27"><mml:mrow><mml:mi mathvariant="normal">&#x03A9;</mml:mi></mml:mrow><mml:mo>&#x2282;</mml:mo><mml:msup><mml:mrow><mml:mtext>R</mml:mtext></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> with absorbing boundaries and obstacles, the classical form appears as:
<disp-formula id="eqn-2"><label>(2)</label><mml:math id="mml-eqn-2" display="block"><mml:mfrac><mml:mrow><mml:msup><mml:mi mathvariant="normal">&#x2202;</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mi>u</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi mathvariant="normal">&#x2202;</mml:mi><mml:msup><mml:mi>t</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:mfrac><mml:mo>=</mml:mo><mml:msup><mml:mi>c</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mrow><mml:mo>(</mml:mo><mml:mfrac><mml:mrow><mml:msup><mml:mi mathvariant="normal">&#x2202;</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mi>u</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi mathvariant="normal">&#x2202;</mml:mi><mml:msup><mml:mi>x</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:mfrac><mml:mo>+</mml:mo><mml:mfrac><mml:mrow><mml:msup><mml:mi mathvariant="normal">&#x2202;</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mi>u</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi mathvariant="normal">&#x2202;</mml:mi><mml:msup><mml:mi>y</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:mfrac><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula>where <inline-formula id="ieqn-28"><mml:math id="mml-ieqn-28"><mml:mi>u</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> is the wave function representing the amplitude of the wave at position <inline-formula id="ieqn-29"><mml:math id="mml-ieqn-29"><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> and time <inline-formula id="ieqn-30"><mml:math id="mml-ieqn-30"><mml:mi>t</mml:mi></mml:math></inline-formula>, and <inline-formula id="ieqn-31"><mml:math id="mml-ieqn-31"><mml:mi>c</mml:mi></mml:math></inline-formula> denotes the constant wave speed. Typical boundary conditions enforce <inline-formula id="ieqn-32"><mml:math id="mml-ieqn-32"><mml:mi>u</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula> on the domain periphery and on any obstacle surfaces, simulating perfect absorption. An initial disturbance at <inline-formula id="ieqn-33"><mml:math id="mml-ieqn-33"><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> triggers wave that expand outward until the entire reachable region is covered.</p>
<p>Assuming the environment is bounded within <inline-formula id="ieqn-34"><mml:math id="mml-ieqn-34"><mml:mi>x</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>a</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>b</mml:mi></mml:mrow></mml:msub><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula> and <inline-formula id="ieqn-35"><mml:math id="mml-ieqn-35"><mml:mi>y</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mi>a</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mi>b</mml:mi></mml:mrow></mml:msub><mml:mo>]</mml:mo></mml:mrow><mml:mo>,</mml:mo></mml:math></inline-formula> Dirichlet boundary conditions are applied to simulate wave absorption at the boundaries and obstacles:
<disp-formula id="eqn-3"><label>(3)</label><mml:math id="mml-eqn-3" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:mi>u</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>a</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mi>u</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>b</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="eqn-4"><label>(4)</label><mml:math id="mml-eqn-4" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:mi>u</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mi>a</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mi>u</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mi>b</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula></p>
<p>At <inline-formula id="ieqn-36"><mml:math id="mml-ieqn-36"><mml:mi>t</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula> the robot injects a unit impulse at its start location <inline-formula id="ieqn-37"><mml:math id="mml-ieqn-37"><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>
<disp-formula id="eqn-5"><label>(5)</label><mml:math id="mml-eqn-5" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:mi>u</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:msub><mml:mi>U</mml:mi><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mi>&#x03B4;</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow><mml:mi>&#x03B4;</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>y</mml:mi><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow><mml:mo>,</mml:mo><mml:mover><mml:mi>u</mml:mi><mml:mo>.</mml:mo></mml:mover><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mn>0</mml:mn><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula></p>
<p>Assume <inline-formula id="ieqn-38"><mml:math id="mml-ieqn-38"><mml:mi>u</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mi>X</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mi>Y</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>y</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mi>T</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>. Substituting into <xref ref-type="disp-formula" rid="eqn-2">(2)</xref> and dividing gives:
<disp-formula id="eqn-6"><label>(6)</label><mml:math id="mml-eqn-6" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:mfrac><mml:mn>1</mml:mn><mml:msup><mml:mi>c</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:mfrac><mml:mfrac><mml:mrow><mml:mi>T</mml:mi><mml:mrow><mml:mtext>&#x2032;&#x2032;</mml:mtext></mml:mrow></mml:mrow><mml:mi>T</mml:mi></mml:mfrac><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:mi>X</mml:mi><mml:mrow><mml:mtext>&#x2032;&#x2032;</mml:mtext></mml:mrow></mml:mrow><mml:mi>X</mml:mi></mml:mfrac><mml:mo>+</mml:mo><mml:mfrac><mml:mrow><mml:mi>Y</mml:mi><mml:mrow><mml:mtext>&#x2032;&#x2032;</mml:mtext></mml:mrow></mml:mrow><mml:mi>Y</mml:mi></mml:mfrac><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:msup><mml:mi>k</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula></p>
<p>Introducing another constant <inline-formula id="ieqn-39"><mml:math id="mml-ieqn-39"><mml:mo>&#x2212;</mml:mo><mml:msup><mml:mrow><mml:msub><mml:mi>k</mml:mi><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula>:
<disp-formula id="eqn-7"><label>(7)</label><mml:math id="mml-eqn-7" display="block"><mml:mi>T</mml:mi><mml:mrow><mml:mtext>&#x2032;&#x2032;</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:msup><mml:mi>c</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:msup><mml:mi>k</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mi>T</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn><mml:mo>;</mml:mo><mml:mi>X</mml:mi><mml:mrow><mml:mtext>&#x2032;&#x2032;</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:msup><mml:mrow><mml:msub><mml:mi>k</mml:mi><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mi>X</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn><mml:mo>;</mml:mo><mml:mi>Y</mml:mi><mml:mrow><mml:mtext>&#x2032;&#x2032;</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:msup><mml:mrow><mml:msub><mml:mi>k</mml:mi><mml:mrow><mml:mi>y</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mi>Y</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn><mml:mo>;</mml:mo><mml:msup><mml:mrow><mml:msub><mml:mi>k</mml:mi><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mo>+</mml:mo><mml:msup><mml:mrow><mml:msub><mml:mi>k</mml:mi><mml:mrow><mml:mi>y</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mo>=</mml:mo><mml:msup><mml:mi>k</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:math></disp-formula></p>
<p><disp-formula id="ueqn-8"><mml:math id="mml-ueqn-8" display="block"><mml:msub><mml:mi>k</mml:mi><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:mi>n</mml:mi><mml:mrow><mml:mi mathvariant="normal">&#x03C0;</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>b</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>a</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mo>,</mml:mo><mml:msub><mml:mi>k</mml:mi><mml:mrow><mml:mi>y</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:mi>n</mml:mi><mml:mrow><mml:mi mathvariant="normal">&#x03C0;</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mi>b</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mi>a</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mo>,</mml:mo><mml:mi>n</mml:mi><mml:mo>,</mml:mo><mml:mi>m</mml:mi><mml:mo>&#x2208;</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="double-struck">N</mml:mi></mml:mrow><mml:mrow><mml:mo>+</mml:mo></mml:mrow></mml:msup></mml:math></disp-formula></p>
<p>For path planning, an analytical solution of the above PDE provides the temporal evolution of wave within <inline-formula id="ieqn-40"><mml:math id="mml-ieqn-40"><mml:mrow><mml:mi mathvariant="normal">&#x03A9;</mml:mi></mml:mrow><mml:mo>.</mml:mo></mml:math></inline-formula> The final expression for <inline-formula id="ieqn-41"><mml:math id="mml-ieqn-41"><mml:mi>u</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> can be compactly written in the form:
<disp-formula id="eqn-8"><label>(8)</label><mml:math id="mml-eqn-8" display="block"><mml:mi>u</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mi>H</mml:mi><mml:mi>cos</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mrow><mml:mo>(</mml:mo><mml:mi>c</mml:mi><mml:mi>k</mml:mi><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mi>cos</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>k</mml:mi><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:mi>x</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mi>cos</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>k</mml:mi><mml:mrow><mml:mi>y</mml:mi></mml:mrow></mml:msub><mml:mi>y</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula>where <inline-formula id="ieqn-42"><mml:math id="mml-ieqn-42"><mml:msub><mml:mi>k</mml:mi><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula>and <inline-formula id="ieqn-43"><mml:math id="mml-ieqn-43"><mml:msub><mml:mi>k</mml:mi><mml:mrow><mml:mi>y</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> Ware integer-based wave numbers determined by the boundary lengths in <inline-formula id="ieqn-44"><mml:math id="mml-ieqn-44"><mml:mi>x</mml:mi></mml:math></inline-formula> and <inline-formula id="ieqn-45"><mml:math id="mml-ieqn-45"><mml:mi>y</mml:mi></mml:math></inline-formula>, and <inline-formula id="ieqn-46"><mml:math id="mml-ieqn-46"><mml:mi>H</mml:mi></mml:math></inline-formula> encapsulates the initial amplitude <inline-formula id="ieqn-47"><mml:math id="mml-ieqn-47"><mml:msub><mml:mi>U</mml:mi><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>.</mml:mo></mml:math></inline-formula></p>
<p>Obstacles are inserted as additional boundaries, effectively zeroing out wave amplitude in those regions. Arrival times <inline-formula id="ieqn-48"><mml:math id="mml-ieqn-48"><mml:mi>T</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> at which <inline-formula id="ieqn-49"><mml:math id="mml-ieqn-49"><mml:mrow><mml:mo>|</mml:mo><mml:mi>u</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>|</mml:mo></mml:mrow></mml:math></inline-formula> first surpasses a threshold <inline-formula id="ieqn-50"><mml:math id="mml-ieqn-50"><mml:mi>&#x03B4;</mml:mi></mml:math></inline-formula> then serve as the basis for constructing a global cost map&#x2014;each location is labeled by its earliest wavefront encounter.</p>
<p>When implementing numerical methods to solve the wave equation, it is essential to ensure numerical stability. The Courant-Friedrichs-Lewy (CFL) condition provides a criterion for stability in finite difference methods:
<disp-formula id="eqn-9"><label>(9)</label><mml:math id="mml-eqn-9" display="block"><mml:mi>c</mml:mi><mml:mfrac><mml:mrow><mml:mrow><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:mfrac><mml:mo>&#x2264;</mml:mo><mml:mfrac><mml:mn>1</mml:mn><mml:msqrt><mml:mn>2</mml:mn></mml:msqrt></mml:mfrac></mml:math></disp-formula>where <inline-formula id="ieqn-51"><mml:math id="mml-ieqn-51"><mml:mrow><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:mrow><mml:mi>t</mml:mi></mml:math></inline-formula> is the time step and <inline-formula id="ieqn-52"><mml:math id="mml-ieqn-52"><mml:mrow><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:mrow><mml:mi>x</mml:mi></mml:math></inline-formula> is the spatial discretization step. Satisfying this condition prevents non-physical oscillations and ensures accurate numerical results.</p>
</sec>
<sec id="s2_2_2">
<label>2.2.2</label>
<title>Wave Coverage and Arrival-Time Mapping</title>
<p>The solution in (2) provides a continuous depiction of how the wave expands from <inline-formula id="ieqn-53"><mml:math id="mml-ieqn-53"><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>. At each location <inline-formula id="ieqn-54"><mml:math id="mml-ieqn-54"><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> the wave amplitude <inline-formula id="ieqn-55"><mml:math id="mml-ieqn-55"><mml:mi>u</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> eventually surpasses a chosen threshold <inline-formula id="ieqn-56"><mml:math id="mml-ieqn-56"><mml:mi>&#x03B4;</mml:mi><mml:mo>,</mml:mo></mml:math></inline-formula> indicating that point has been &#x201C;reached&#x201D; by the wavefront. The arrival time <inline-formula id="ieqn-57"><mml:math id="mml-ieqn-57"><mml:mi>T</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> is defined as the earliest <inline-formula id="ieqn-58"><mml:math id="mml-ieqn-58"><mml:mi>t</mml:mi><mml:mo>&#x2265;</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula> for <inline-formula id="ieqn-59"><mml:math id="mml-ieqn-59"><mml:mrow><mml:mo>|</mml:mo><mml:mi>u</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>|</mml:mo></mml:mrow><mml:mo>&#x2265;</mml:mo><mml:mi>&#x03B4;</mml:mi></mml:math></inline-formula> formally:
<disp-formula id="eqn-10"><label>(10)</label><mml:math id="mml-eqn-10" display="block"><mml:mi>T</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mi>m</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi><mml:mrow><mml:mo>{</mml:mo><mml:mrow><mml:mi>t</mml:mi><mml:mo>&#x2265;</mml:mo><mml:mn>0</mml:mn></mml:mrow><mml:mrow><mml:mo>|</mml:mo><mml:mi>u</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>|</mml:mo></mml:mrow><mml:mo>&#x2265;</mml:mo><mml:mi>&#x03B4;</mml:mi><mml:mo>}</mml:mo></mml:mrow></mml:math></disp-formula></p>
<p>This mapping captures global accessibility: areas near <inline-formula id="ieqn-60"><mml:math id="mml-ieqn-60"><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> exhibit small <inline-formula id="ieqn-61"><mml:math id="mml-ieqn-61"><mml:mi>T</mml:mi></mml:math></inline-formula> while cells separated by obstacles or long corridors have significantly larger values.</p>
<p><xref ref-type="fig" rid="fig-3">Fig. 3a</xref> illustrates how the total area &#x201C;covered&#x201D; by the propagating wave evolves over continuous time according to the analytical two-dimensional wave solution. At <inline-formula id="ieqn-62"><mml:math id="mml-ieqn-62"><mml:mi>t</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula>, the wave originates at the source location, and initially, only a small region around this source exhibits sufficient amplitude. As time increases, the wave expands outward in a continuous manner, surpassing a chosen amplitude threshold <inline-formula id="ieqn-63"><mml:math id="mml-ieqn-63"><mml:mi>&#x03B4;</mml:mi></mml:math></inline-formula> across successively larger portions of the domain. It initially rises slowly, reflecting the local nature of early propagation, then accelerates as more corridors become accessible. Eventually, the coverage begins to plateau, indicating that the wave has fully enveloped the free areas of the environment, while obstacles continue to act as absorbing boundaries.</p>
<fig id="fig-3">
<label>Figure 3</label>
<caption>
<title>WWS spread illustration, (<bold>a</bold>) Wave coverage curve, (<bold>b</bold>) Arrive time heat map.</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_65539-fig-3.tif"/>
</fig>
<p><xref ref-type="fig" rid="fig-3">Fig. 3b</xref> offers a complementary arrival-time heatmap, again derived from the closed-form wave function. For each point <inline-formula id="ieqn-64"><mml:math id="mml-ieqn-64"><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> within the environment, the earliest time <inline-formula id="ieqn-65"><mml:math id="mml-ieqn-65"><mml:mi>T</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> at which the wave amplitude <inline-formula id="ieqn-66"><mml:math id="mml-ieqn-66"><mml:mrow><mml:mo>|</mml:mo><mml:mi>u</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>|</mml:mo></mml:mrow></mml:math></inline-formula> crosses the threshold <inline-formula id="ieqn-67"><mml:math id="mml-ieqn-67"><mml:mi>&#x03B4;</mml:mi></mml:math></inline-formula> is recorded. Warmer colors (reds, oranges) correspond to shorter arrival times and thus easier accessibility from the wave source, whereas cooler colors (greens, blues) indicate cells that are reached later due to either greater distances or more complex obstacle placements. The white regions represent obstacles themselves, where wave energy is extinguished by boundary conditions, ensuring that no spurious paths are formed through invalid areas. These smoothly varying contours show natural bending of the wavefront around obstacles, demonstrating how the analytical wave solution inherently encodes corridor effects and global coverage without reliance on incremental or localized expansions.</p>
<p>This time map provides crucial information about the earliest time the influence from the starting point reaches any given location, which is instrumental in the subsequent path planning stages.</p>
<p>Once <inline-formula id="ieqn-68"><mml:math id="mml-ieqn-68"><mml:mi>T</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> established throughout <inline-formula id="ieqn-69"><mml:math id="mml-ieqn-69"><mml:mrow><mml:mi mathvariant="normal">&#x03A9;</mml:mi></mml:mrow></mml:math></inline-formula> the final path is extracted by traversing from the goal <inline-formula id="ieqn-70"><mml:math id="mml-ieqn-70"><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>g</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mi>g</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> back to <inline-formula id="ieqn-71"><mml:math id="mml-ieqn-71"><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> along cells with strictly decreasing arrival times. A generic neighbor <inline-formula id="ieqn-72"><mml:math id="mml-ieqn-72"><mml:mrow><mml:mo>(</mml:mo><mml:msup><mml:mi>x</mml:mi><mml:mrow><mml:mi mathvariant="normal">&#x2032;</mml:mi></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mi>y</mml:mi><mml:mrow><mml:mi mathvariant="normal">&#x2032;</mml:mi></mml:mrow></mml:msup><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> is deemed valid if:
<disp-formula id="eqn-11"><label>(11)</label><mml:math id="mml-eqn-11" display="block"><mml:mi>T</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:msup><mml:mi>x</mml:mi><mml:mrow><mml:mi mathvariant="normal">&#x2032;</mml:mi></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mi>y</mml:mi><mml:mrow><mml:mi mathvariant="normal">&#x2032;</mml:mi></mml:mrow></mml:msup><mml:mo>)</mml:mo></mml:mrow><mml:mo>&#x003C;</mml:mo><mml:mi>T</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula></p>
<p>Ensuring that the path moves &#x201C;upstream&#x201D; toward the wave source. However, it is often beneficial to incorporate a cost function that penalizes obstacle proximity, ensuring safer navigation. Let <inline-formula id="ieqn-73"><mml:math id="mml-ieqn-73"><mml:mi>D</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> denote the distance from <inline-formula id="ieqn-74"><mml:math id="mml-ieqn-74"><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> its nearest obstacle. A combined cost is then defined as:
<disp-formula id="eqn-12"><label>(12)</label><mml:math id="mml-eqn-12" display="block"><mml:mi>C</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mi>&#x03B3;</mml:mi><mml:mi>T</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>+</mml:mo><mml:mi>&#x03B1;</mml:mi><mml:mrow><mml:mo>[</mml:mo><mml:mfrac><mml:mn>1</mml:mn><mml:mrow><mml:mi>D</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>+</mml:mo><mml:mi>&#x03B5;</mml:mi></mml:mrow></mml:mfrac><mml:mo>]</mml:mo></mml:mrow></mml:math></disp-formula>where: <inline-formula id="ieqn-75"><mml:math id="mml-ieqn-75"><mml:mi>&#x03B3;</mml:mi></mml:math></inline-formula> is a weighting factor that adjusts the influence of the arrival time on the cost. <inline-formula id="ieqn-76"><mml:math id="mml-ieqn-76"><mml:mi>&#x03B1;</mml:mi></mml:math></inline-formula> is a weighting factor that adjusts the influence of the obstacle proximity on the cost. <inline-formula id="ieqn-77"><mml:math id="mml-ieqn-77"><mml:mi>&#x03B5;</mml:mi></mml:math></inline-formula> is a small positive constant to prevent division by zero when <inline-formula id="ieqn-78"><mml:math id="mml-ieqn-78"><mml:mi>D</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> approach zero.</p>
<p>During backtracking, each cell&#x2019;s neighbor set may include 8 adjacent positions. The path candidate <inline-formula id="ieqn-79"><mml:math id="mml-ieqn-79"><mml:mrow><mml:mo>(</mml:mo><mml:msup><mml:mi>x</mml:mi><mml:mrow><mml:mi mathvariant="normal">&#x2032;</mml:mi></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mi>y</mml:mi><mml:mrow><mml:mi mathvariant="normal">&#x2032;</mml:mi></mml:mrow></mml:msup><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> that yields the smallest <inline-formula id="ieqn-80"><mml:math id="mml-ieqn-80"><mml:mi>C</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:msup><mml:mi>x</mml:mi><mml:mrow><mml:mi mathvariant="normal">&#x2032;</mml:mi></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mi>y</mml:mi><mml:mrow><mml:mi mathvariant="normal">&#x2032;</mml:mi></mml:mrow></mml:msup><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> subject to <inline-formula id="ieqn-81"><mml:math id="mml-ieqn-81"><mml:mi>T</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:msup><mml:mi>x</mml:mi><mml:mrow><mml:mi mathvariant="normal">&#x2032;</mml:mi></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mi>y</mml:mi><mml:mrow><mml:mi mathvariant="normal">&#x2032;</mml:mi></mml:mrow></mml:msup><mml:mo>)</mml:mo></mml:mrow><mml:mo>&#x003C;</mml:mo><mml:mi>T</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> is chosen at each iteration, until eventually <inline-formula id="ieqn-82"><mml:math id="mml-ieqn-82"><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> is reached. This process naturally forms a smooth, single-pass route that avoids corners and obstacles, reflecting the wave&#x2019;s own continuous expansion.</p>
</sec>
<sec id="s2_2_3">
<label>2.2.3</label>
<title>Implementation Details</title>
<p>WWS requires a few critical parameters. The wave speed <inline-formula id="ieqn-83"><mml:math id="mml-ieqn-83"><mml:mi>c</mml:mi></mml:math></inline-formula> is chosen as the largest value that still satisfies the Courant&#x2013;Friedrichs&#x2013;Lewy stability condition, Its role is to control how quickly the wavefront expands across the grid, ensuring that each cell&#x2019;s arrival time is distinguishable while adhering to stability constraints [<xref ref-type="bibr" rid="ref-28">28</xref>,<xref ref-type="bibr" rid="ref-29">29</xref>]. The arrival threshold <inline-formula id="ieqn-84"><mml:math id="mml-ieqn-84"><mml:mi>&#x03B4;</mml:mi></mml:math></inline-formula> defines when a cell is deemed &#x201C;reached&#x201D;, balancing early detection against coverage gaps. During backtracking, cost weights <inline-formula id="ieqn-85"><mml:math id="mml-ieqn-85"><mml:mi>&#x03B1;</mml:mi></mml:math></inline-formula>and <inline-formula id="ieqn-86"><mml:math id="mml-ieqn-86"><mml:mi>&#x03B3;</mml:mi></mml:math></inline-formula> control the trade-off between obstacle avoidance and quick arrival, useful for tuning path safety in narrow passages. Finally, an optional corridor restriction confines wave evaluation to a subregion, reducing computation in large or cluttered maps.</p>
<p>A summary of these main parameters and constraints appears in <xref ref-type="table" rid="table-2">Table 2</xref>. Full derivations are readily found in standard references on wave phenomena, so this section only highlights key points relevant to the wave-based laser simulator proposed in this work.</p>
<table-wrap id="table-2">
<label>Table 2</label>
<caption>
<title>Definition of some important notations.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Symbol</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><inline-formula id="ieqn-87"><mml:math id="mml-ieqn-87"><mml:mi>u</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>Wave function at position (<inline-formula id="ieqn-88"><mml:math id="mml-ieqn-88"><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> and time <inline-formula id="ieqn-89"><mml:math id="mml-ieqn-89"><mml:mi>t</mml:mi></mml:math></inline-formula></td>
</tr>
<tr>
<td><inline-formula id="ieqn-90"><mml:math id="mml-ieqn-90"><mml:mi>c</mml:mi></mml:math></inline-formula></td>
<td>Wave speed (constant)</td>
</tr>
<tr>
<td><inline-formula id="ieqn-91"><mml:math id="mml-ieqn-91"><mml:msub><mml:mi>k</mml:mi><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>k</mml:mi><mml:mrow><mml:mi>y</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula></td>
<td>Wave numbers in <inline-formula id="ieqn-92"><mml:math id="mml-ieqn-92"><mml:mi>x</mml:mi></mml:math></inline-formula> and <inline-formula id="ieqn-93"><mml:math id="mml-ieqn-93"><mml:mi>y</mml:mi></mml:math></inline-formula> directions</td>
</tr>
<tr>
<td><inline-formula id="ieqn-94"><mml:math id="mml-ieqn-94"><mml:mi>H</mml:mi></mml:math></inline-formula></td>
<td>Combined constant <inline-formula id="ieqn-95"><mml:math id="mml-ieqn-95"><mml:mi>H</mml:mi><mml:mo>=</mml:mo><mml:mi>A</mml:mi><mml:mi>C</mml:mi><mml:mi>E</mml:mi></mml:math></inline-formula></td>
</tr>
<tr>
<td><inline-formula id="ieqn-96"><mml:math id="mml-ieqn-96"><mml:msub><mml:mi>U</mml:mi><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula></td>
<td>Initial amplitude at <inline-formula id="ieqn-97"><mml:math id="mml-ieqn-97"><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
</tr>
<tr>
<td><inline-formula id="ieqn-98"><mml:math id="mml-ieqn-98"><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>Initial position of the wave source</td>
</tr>
<tr>
<td><inline-formula id="ieqn-99"><mml:math id="mml-ieqn-99"><mml:msup><mml:mrow><mml:mi mathvariant="double-struck">N</mml:mi></mml:mrow><mml:mrow><mml:mo>+</mml:mo></mml:mrow></mml:msup></mml:math></inline-formula></td>
<td>Set of positive integers {1,2, 3&#x2026;}</td>
</tr>
<tr>
<td><inline-formula id="ieqn-100"><mml:math id="mml-ieqn-100"><mml:msub><mml:mi>k</mml:mi><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mstyle displaystyle="true" scriptlevel="0"><mml:mfrac><mml:mrow><mml:mi>n</mml:mi><mml:mrow><mml:mi mathvariant="normal">&#x03C0;</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>b</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>a</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfrac></mml:mstyle></mml:math></inline-formula></td>
<td>Wave number in <inline-formula id="ieqn-101"><mml:math id="mml-ieqn-101"><mml:mi>x</mml:mi></mml:math></inline-formula> direction, <inline-formula id="ieqn-102"><mml:math id="mml-ieqn-102"><mml:mi>n</mml:mi><mml:mo>&#x2208;</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="double-struck">N</mml:mi></mml:mrow><mml:mrow><mml:mo>+</mml:mo></mml:mrow></mml:msup></mml:math></inline-formula></td>
</tr>
<tr>
<td><inline-formula id="ieqn-103"><mml:math id="mml-ieqn-103"><mml:msub><mml:mi>k</mml:mi><mml:mrow><mml:mi>y</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mstyle displaystyle="true" scriptlevel="0"><mml:mfrac><mml:mrow><mml:mrow><mml:mtext>m</mml:mtext></mml:mrow><mml:mrow><mml:mi mathvariant="normal">&#x03C0;</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mi>b</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mi>a</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfrac></mml:mstyle></mml:math></inline-formula></td>
<td>Wave number in <inline-formula id="ieqn-104"><mml:math id="mml-ieqn-104"><mml:mi>y</mml:mi></mml:math></inline-formula> direction, <inline-formula id="ieqn-105"><mml:math id="mml-ieqn-105"><mml:mi>n</mml:mi><mml:mo>&#x2208;</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="double-struck">N</mml:mi></mml:mrow><mml:mrow><mml:mo>+</mml:mo></mml:mrow></mml:msup></mml:math></inline-formula></td>
</tr>
<tr>
<td><inline-formula id="ieqn-106"><mml:math id="mml-ieqn-106"><mml:msup><mml:mi>k</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mo>=</mml:mo><mml:msubsup><mml:mi>k</mml:mi><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msubsup><mml:mo>+</mml:mo><mml:msubsup><mml:mi>k</mml:mi><mml:mrow><mml:mi>y</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msubsup></mml:math></inline-formula></td>
<td>Relation between total wave number and directional wave numbers</td>
</tr>
<tr>
<td><inline-formula id="ieqn-107"><mml:math id="mml-ieqn-107"><mml:mi>cos</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>k</mml:mi><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow><mml:mi>cos</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>k</mml:mi><mml:mrow><mml:mi>y</mml:mi></mml:mrow></mml:msub><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>Cosine functions evaluated at the initial position</td>
</tr>
<tr>
<td><inline-formula id="ieqn-108"><mml:math id="mml-ieqn-108"><mml:mi>T</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>Arrival time of the wave at point <inline-formula id="ieqn-109"><mml:math id="mml-ieqn-109"><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
</tr>
<tr>
<td><inline-formula id="ieqn-110"><mml:math id="mml-ieqn-110"><mml:mi>&#x03B4;</mml:mi></mml:math></inline-formula></td>
<td>Threshold for wave arrival detection</td>
</tr>
<tr>
<td><inline-formula id="ieqn-111"><mml:math id="mml-ieqn-111"><mml:mi>&#x03B1;</mml:mi></mml:math></inline-formula></td>
<td>Weighting factor for obstacle proximity in the cost function</td>
</tr>
<tr>
<td><inline-formula id="ieqn-112"><mml:math id="mml-ieqn-112"><mml:mi>&#x03B3;</mml:mi></mml:math></inline-formula></td>
<td>Weighting factor for arrival time in the cost function</td>
</tr>
<tr>
<td><inline-formula id="ieqn-113"><mml:math id="mml-ieqn-113"><mml:mi>&#x03B5;</mml:mi></mml:math></inline-formula></td>
<td>Small positive constant to prevent division by zero</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>In this work, the parameters&#x2014;wave speed <italic>c</italic>, threshold &#x003B4;, and cost-function weights &#x003B1;, &#x003B3;&#x2014;are maintained as fixed values across all experiments, both indoors and outdoors. This non-adaptive choice was guided by preliminary trials indicating that a single parameter set could provide robust performance in a variety of environments. While this approach does not automatically adjust to factors such as map scale or obstacle density, the global nature of wave expansions in WWS enables it to accommodate moderate variations without specialized tuning. We emphasize that the current study aims to demonstrate the general feasibility and effectiveness of WWS under a single, empirically chosen configuration. Nonetheless, we acknowledge that certain advanced applications&#x2014;especially those with highly dynamic or drastically varying obstacle layouts&#x2014;may benefit from online parameter adaptation, a direction we outline in the Conclusion.</p>
<p>Algorithm 1 is the pseudo-code illustrating the key steps of the WWS approach under an analytical wavefront framework. It begins by defining the spatial domain and obstacle/boundary conditions, then computes the arrival-time <inline-formula id="ieqn-114"><mml:math id="mml-ieqn-114"><mml:mi>T</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> for each grid cell based on the analytical wave equation solution. Once the global arrival-time map is established, a reverse-search from the goal to the start identifies the collision-free path that minimizes both travel time and obstacle proximity:</p>
<fig id="fig-10">
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_65539-fig-10.tif"/>
</fig>
<p><italic>Comparison with FMM and Eikonal-Based Methods</italic></p>
<p>While the wave equation underpins our Wave Water Simulator (WWS), many path planning techniques rely on the Eikonal equation, <inline-formula id="ieqn-132"><mml:math id="mml-ieqn-132"><mml:mo stretchy="false">&#x2225;</mml:mo><mml:mi mathvariant="normal">&#x2207;</mml:mi><mml:mi>T</mml:mi><mml:mo>&#x2225;=</mml:mo><mml:mi>f</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> and its fast numerical solver, the Fast-Marching Method (FMM). In FMM, one typically solves for the arrival-time <inline-formula id="ieqn-133"><mml:math id="mml-ieqn-133"><mml:mi>T</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> of a wave or front propagating at speed <inline-formula id="ieqn-134"><mml:math id="mml-ieqn-134"><mml:mi>f</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> This yields a globally optimal path in a continuous domain by advancing a boundary front outward. However, purely first-order PDE solutions sometimes manifest discretization artifacts or require additional boundary/obstacle labeling to ensure correct collision handling.</p>
<p>By contrast, WWS leverages the second-order wave equation:
<disp-formula id="eqn-13"><label>(13)</label><mml:math id="mml-eqn-13" display="block"><mml:mfrac><mml:mrow><mml:msup><mml:mi mathvariant="normal">&#x2202;</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mi>u</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi mathvariant="normal">&#x2202;</mml:mi><mml:msup><mml:mi>t</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:mfrac><mml:mo>=</mml:mo><mml:msup><mml:mi>c</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mrow><mml:mo>(</mml:mo><mml:mfrac><mml:mrow><mml:msup><mml:mi mathvariant="normal">&#x2202;</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mi>u</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi mathvariant="normal">&#x2202;</mml:mi><mml:msup><mml:mi>x</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:mfrac><mml:mo>+</mml:mo><mml:mfrac><mml:mrow><mml:msup><mml:mi mathvariant="normal">&#x2202;</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mi>u</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi mathvariant="normal">&#x2202;</mml:mi><mml:msup><mml:mi>y</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:mfrac><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula></p>
<p>Together with Dirichlet boundary conditions <inline-formula id="ieqn-135"><mml:math id="mml-ieqn-135"><mml:mi>u</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula> on obstacles and domain edges. This physically motivated approach encodes obstacles as fully absorbing, preventing amplitude propagation into invalid regions without explicitly labeling them. Furthermore, the oscillatory nature of wave solutions promotes <italic>smoother curvature</italic> around corners; as the wave amplitude transitions from obstacle surfaces to free space, it avoids the &#x201C;grid-sharp&#x201D; expansions that sometimes arise with first-order PDE methods. <xref ref-type="table" rid="table-3">Table 3</xref> summarizes the conceptual contrasts between WWS and Eikonal-based planners, highlighting how wave-based fluctuations, direct boundary encoding, and corridor constraints distinguish WWS from FMM-like approaches.</p>
<table-wrap id="table-3">
<label>Table 3</label>
<caption>
<title>Contrasts between WWS and FMM.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Aspect</th>
<th>Wave Water Simulator (WWS)</th>
<th>Fast Marching Method (FMM)</th>
</tr>
</thead>
<tbody>
<tr>
<td>Governing PDE</td>
<td>Captures oscillatory spread in space and time</td>
<td>Models an arrival-time front expanding at speed <inline-formula id="ieqn-136"><mml:math id="mml-ieqn-136"><mml:mi>f</mml:mi></mml:math></inline-formula></td>
</tr>
<tr>
<td>Boundary Conditions</td>
<td>Dirichlet boundary on obstacle/edges wave cannot enter invalid cells, naturally preventing collisions</td>
<td>Typically, <inline-formula id="ieqn-137"><mml:math id="mml-ieqn-137"><mml:mi>T</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula> on a source and large on other regions; obstacles must be labeled or excluded from expansions</td>
</tr>
<tr>
<td>Obstacle Handling</td>
<td>Obstacles absorb the wave by forcing <inline-formula id="ieqn-138"><mml:math id="mml-ieqn-138"><mml:mi>u</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn><mml:mo>;</mml:mo></mml:math></inline-formula> No separate collision checks needed; the wave simply ceases to propagate into blocked areas</td>
<td>Obstacles require<inline-formula id="ieqn-139"><mml:math id="mml-ieqn-139"><mml:mi mathvariant="normal">&#x221E;</mml:mi></mml:math></inline-formula>or large cost/penalty; FMM must label them carefully to prevent front expansion</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s2_2_4">
<label>2.2.4</label>
<title>Optimality and Complexity of WWS</title>
<p>Wave Water Simulator (WWS) adopts wave propagation akin to PDE-based planners such as FMM, it does not strictly solve the stationary Eikonal equation <inline-formula id="ieqn-140"><mml:math id="mml-ieqn-140"><mml:mo stretchy="false">&#x2225;</mml:mo><mml:mi mathvariant="normal">&#x2207;</mml:mi><mml:mi>T</mml:mi><mml:mo>&#x2225;=</mml:mo><mml:mi>f</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>. Instead, WWS introduces a second-order wave equation with momentum and transient behaviors. Hence, WWS does not guarantee an exact minimal-distance path in all cases. Nevertheless, if the corridor restriction is sufficiently broad, the wave can explore the entire free space, yielding a trajectory that is empirically close to the global optimum, in narrower corridors the solution remains within 1%&#x2013;2% of the global optimum in our benchmarks (in <xref ref-type="sec" rid="s3">Section 3</xref>), confirming practical near-optimality.</p>
<p>While the Wave Water Simulator (WWS) also propagates a wavefront, it employs a binary-heap scheduler that always processes the cell with the smallest arrival time. Let &#x03A9; contain N free cells. Every cell enters the heap at most once and up to k (&#x2264;8) neighbors are relaxed, giving:
<disp-formula id="eqn-14"><label>(14)</label><mml:math id="mml-eqn-14" display="block"><mml:mi>T</mml:mi><mml:mi>i</mml:mi><mml:mi>m</mml:mi><mml:mi>e</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>W</mml:mi><mml:mi>W</mml:mi><mml:mi>S</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>,</mml:mo><mml:mi>S</mml:mi><mml:mi>p</mml:mi><mml:mi>a</mml:mi><mml:mi>c</mml:mi><mml:mi>e</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>W</mml:mi><mml:mi>W</mml:mi><mml:mi>S</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula></p>
<p>If the optional corridor restriction reduces the working set from N to R cells (R &#x226A; N in cluttered. maps), the bound becomes <inline-formula id="ieqn-141"><mml:math id="mml-ieqn-141"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>R</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>R</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>. Back-tracking from goal to start is linear in path length L and does not alter the dominant term.</p>
</sec>
</sec>
</sec>
<sec id="s3">
<label>3</label>
<title>Results and Discussion</title>
<sec id="s3_1">
<label>3.1</label>
<title>WWS Simulation Results Analysis</title>
<sec id="s3_1_1">
<label>3.1.1</label>
<title>WWS in Simple Environment</title>
<p>To demonstrate the core principles of WWS, we first consider a simple 2D domain containing a single rectangular obstacle (<xref ref-type="fig" rid="fig-4">Fig. 4</xref>). The start point (green) is placed near the lower-left corner, with the goal (red) in the upper-right region. Initially, no precomputed roadmap or heuristic is used&#x2014;WWS merely propagates a wavefront from the start. As the wave expands, arrival-time contours naturally bend around the obstacle, revealing both safe corridors and areas of higher traversal cost. This obstacle interaction emerges directly from the boundary conditions, which without additional collision checks.</p>
<fig id="fig-4">
<label>Figure 4</label>
<caption>
<title>WWS implementation in simple environment: (<bold>a</bold>) expansion stage 1, (<bold>b</bold>) expansion stage 2, (<bold>c</bold>) expansion stage 3, (<bold>d</bold>) expansion stage 4.</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_65539-fig-4a.tif"/>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_65539-fig-4b.tif"/>
</fig>
<p>Once the wavefront has covered the navigable domain, a reverse search from the goal follows cells with strictly decreasing arrival times, culminating in a collision-free path that blends efficiency and smoothness. As shown in <xref ref-type="fig" rid="fig-4">Fig. 4</xref>, the final trajectory deftly avoids &#x201C;staircase&#x201D; artifacts and abrupt turns, underscoring how WWS&#x2019;s global wave equation framework inherently encodes obstacle avoidance and ensures gentle curvature.</p>

</sec>
<sec id="s3_1_2">
<label>3.1.2</label>
<title>WWS in Complex Environment</title>
<p>To further test WWS beyond a single obstacle, we examined a cluttered 2D domain with multiple static obstacles of various shapes (<xref ref-type="fig" rid="fig-5">Fig. 5</xref>). These linear barriers and circular impediments form narrow corridors, semi-enclosed passageways, and partial maze structures. Unlike local or heuristic planners susceptible to dead ends in such intricate layouts, WWS starts by globally propagating a wavefront from the start. As the wavefront evolves, arrival-time contours naturally reveal corridors and bottlenecks, offering continuous, domain-wide feedback on accessibility without incremental trial-and-error.</p>
<fig id="fig-5">
<label>Figure 5</label>
<caption>
<title>WWS implementation in complex environment: (<bold>a</bold>) expansion stage 1, (<bold>b</bold>) expansion stage 2, (<bold>c</bold>) expansion stage 3, (<bold>d</bold>) expansion stage 4, (<bold>e</bold>) expansion stage 5.</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_65539-fig-5.tif"/>
</fig>
<p>As wave propagation proceeds, WWS constructs a comprehensive arrival-time gradient, &#x201C;lighting up&#x201D; optimal routes while circumventing complex obstacles. Once all traversable cells are assigned precise times, the algorithm executes a backward traversal from the goal, following strictly decreasing arrival times. This single global expansion elegantly weaves through tight corridors and avoids local minima, eliminating the need for repeated re-planning or parametric tuning. Together with the simpler example, this scenario demonstrates WWS&#x2019;s aptitude for both small-scale and maze-like environments, confirming its flexibility, global coverage, and capacity to generate naturally optimized paths.</p>
<p>These two sets of demonstrations&#x2014;one in a simple environment and another in a considerably more complex map&#x2014;collectively validate the theoretical and practical foundations of WWS. From a single obstacle to a pseudo-maze, WWS Adapts Gracefully to Complexity: The wave-based approach seamlessly scales from trivial setups to complicated geometries, without losing its capacity to discern global navigational structures. Maintains a Global Perspective: Unlike local-only methods prone to becoming stuck in dead-ends or complex corridors, WWS leverages a global arrival-time map that inherently encodes the relative difficulty of reaching any location in the domain. Produces Naturally Optimal Routes: By following decreasing arrival times from the goal to the start, WWS intrinsically finds paths that minimize travel time and respect obstacle constraints, without manually designed heuristics or extensive parameter tuning.</p>
</sec>
<sec id="s3_1_3">
<label>3.1.3</label>
<title>WWS in Different Complex Environment</title>
<p>This section demonstrates the navigation performance of the WWS algorithm in different environments, focusing on its path smoothness, obstacle avoidance capability, and adaptability to maps of varying complexity. <xref ref-type="fig" rid="fig-6">Fig. 6</xref> illustrates the optimal paths planned by WWS in several environments with different structures, where the start and end points are marked in green and red, respectively.</p>
<fig id="fig-6">
<label>Figure 6</label>
<caption>
<title>WWS implementation in different environment A&#x2013;E: (<bold>a</bold>) environment A, (<bold>b</bold>) environment B, (<bold>c</bold>) environment C, (<bold>d</bold>) environment D, (<bold>e</bold>) environment E.</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_65539-fig-6.tif"/>
</fig>
<p>WWS exhibits strong adaptability across various environments, ensuring smooth navigation and effective obstacle avoidance. In structured obstacle environments, the algorithm accurately computes optimal paths that allow the robot to traverse narrow passages without abrupt directional changes. In maze-like environments with high obstacle density, WWS effectively avoids local optima and redundant routes while maintaining trajectory continuity. In semi-closed spaces where only specific corridors are available, WWS dynamically adjusts its path to ensure a safe distance from walls and barriers. For randomly distributed obstacles, the algorithm efficiently adapts to varying layouts, utilizing global wave propagation to avoid dead ends. In open environments, WWS generates direct and efficient paths, taking advantage of the available space for rapid goal achievement.</p>
<p>The simulation results confirm that WWS consistently maintains smooth trajectories and robust obstacle avoidance in diverse scenarios. The continuous wave propagation characteristic ensures that paths are both natural and efficient, enabling fluid robotic motion without excessive detours or sudden angular deviations. The algorithm&#x2019;s ability to adapt to different spatial configurations highlights its potential for real-world navigation applications.</p>
</sec>
<sec id="s3_1_4">
<label>3.1.4</label>
<title>Systematic Parameter Sensitivity</title>
<p>To provide a more comprehensive understanding of how the Wave Water Simulator (WWS) algorithm behaves under different parameter settings. This investigation focuses on the four key parameters, <inline-formula id="ieqn-142"><mml:math id="mml-ieqn-142"><mml:mi>&#x03B1;</mml:mi></mml:math></inline-formula>: obstacle proximity weight in the cost function. <inline-formula id="ieqn-143"><mml:math id="mml-ieqn-143"><mml:mi>&#x03B3;</mml:mi></mml:math></inline-formula>: arrival-time weight in the cost function. <inline-formula id="ieqn-144"><mml:math id="mml-ieqn-144"><mml:mi>&#x03B4;</mml:mi></mml:math></inline-formula>: wave detection threshold. <inline-formula id="ieqn-145"><mml:math id="mml-ieqn-145"><mml:mi>c</mml:mi></mml:math></inline-formula>: wave propagation speed.</p>
<p>We selected three representative environments to encompass varying obstacle densities and geometric complexities, environment B, C. For each environment, the parameters are set as: <inline-formula id="ieqn-146"><mml:math id="mml-ieqn-146"><mml:mi>&#x03B1;</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mn>0.5</mml:mn><mml:mo>,</mml:mo><mml:mn>1.0</mml:mn><mml:mo>,</mml:mo><mml:mn>2.0</mml:mn><mml:mo>}</mml:mo></mml:mrow><mml:mo>,</mml:mo><mml:mi>&#x03B3;</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mn>0.5</mml:mn><mml:mo>,</mml:mo><mml:mn>1.0</mml:mn><mml:mo>,</mml:mo><mml:mn>2.0</mml:mn><mml:mo>}</mml:mo></mml:mrow><mml:mo>,</mml:mo><mml:mi>&#x03B4;</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mn>0.05</mml:mn><mml:mo>,</mml:mo><mml:mn>0.1</mml:mn><mml:mo>,</mml:mo><mml:mn>0.2</mml:mn><mml:mo>}</mml:mo></mml:mrow><mml:mo>,</mml:mo><mml:mi>c</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mn>1.5</mml:mn><mml:mo>,</mml:mo><mml:mn>3</mml:mn><mml:mo>,</mml:mo><mml:mn>5</mml:mn><mml:mo>}</mml:mo></mml:mrow></mml:math></inline-formula>.</p>
<p><xref ref-type="table" rid="table-4">Table 4</xref> summarizes the aggregated outcomes in Environment B and Environment C for varying &#x003B1;, &#x003B4;, <italic>c</italic> and &#x003B3;. Increasing &#x003B1; beyond 1.0 modestly reduces path length in heavily obstructed scenes (due to stricter obstacle penalties) but can raise computation time by 5%&#x2013;15%. Higher &#x003B3; more strongly penalizes large arrival times, causing slightly shorter but more angular routes in some configurations. Lower thresholds &#x003B4; improve detection of wave arrivals, potentially beneficial for narrow corridors. However, the algorithm sometimes requires additional updates, raising computation time by 10%&#x2013;20%. Typically decreases arrival-time gradients, slightly reducing path length but having marginal effect on success rate. Overall &#x003B1; &#x003D; 1, &#x003B3; &#x003D; 1, <inline-formula id="ieqn-147"><mml:math id="mml-ieqn-147"><mml:mi>c</mml:mi></mml:math></inline-formula> &#x003D; 3, &#x003B4; &#x003D; 0.1 ensure that WWS remains robust in all tested environments.</p>
<table-wrap id="table-4">
<label>Table 4</label>
<caption>
<title>Systematic parameter sensitivity in WWS.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th colspan="2">Parameters</th>
<th colspan="3">Environment B</th>
<th colspan="3">Environment C</th>
</tr>
<tr>
<th>&#x003B1;, <inline-formula id="ieqn-148"><mml:math id="mml-ieqn-148"><mml:mi mathvariant="bold-italic">c</mml:mi></mml:math></inline-formula></th>
<th>&#x003B3;, &#x003B4;</th>
<th>Path Length</th>
<th>Time</th>
<th>Collision %</th>
<th>Path Length</th>
<th>Time</th>
<th>Collision %</th>
</tr>
</thead>
<tbody>
<tr>
<td align="center" colspan="8">(A) Cost-Function Variation (&#x003B1;, &#x003B3;) &#x2013; <inline-formula id="ieqn-149"><mml:math id="mml-ieqn-149"><mml:mi>c</mml:mi><mml:mo>=</mml:mo><mml:mn>3</mml:mn></mml:math></inline-formula>, &#x003B4; &#x003D; 0.1</td>
</tr>
<tr>
<td>0.5</td>
<td>0.5</td>
<td>585</td>
<td>125</td>
<td>0</td>
<td>640</td>
<td>360</td>
<td>0</td>
</tr>
<tr>
<td>0.5</td>
<td>1.0</td>
<td>580</td>
<td>120</td>
<td>0</td>
<td>635</td>
<td>355</td>
<td>0</td>
</tr>
<tr>
<td>0.5</td>
<td>2.0</td>
<td>570</td>
<td>135</td>
<td>0</td>
<td>625</td>
<td>370</td>
<td>0</td>
</tr>
<tr>
<td>1.0</td>
<td>0.5</td>
<td>582</td>
<td>115</td>
<td>0</td>
<td>630</td>
<td>350</td>
<td>0</td>
</tr>
<tr>
<td>1.0</td>
<td>1.0</td>
<td>570</td>
<td>130</td>
<td>0</td>
<td>625</td>
<td>365</td>
<td>0</td>
</tr>
<tr>
<td>1.0</td>
<td>2.0</td>
<td>565</td>
<td>145</td>
<td>0</td>
<td>615</td>
<td>385</td>
<td>0</td>
</tr>
<tr>
<td>2.0</td>
<td>0.5</td>
<td>560</td>
<td>110</td>
<td>0</td>
<td>620</td>
<td>340</td>
<td>0</td>
</tr>
<tr>
<td>2.0</td>
<td>1.0</td>
<td>560</td>
<td>135</td>
<td>0</td>
<td>610</td>
<td>380</td>
<td>0</td>
</tr>
<tr>
<td>2.0</td>
<td>2.0</td>
<td>555</td>
<td>150</td>
<td>0</td>
<td>605</td>
<td>395</td>
<td>0</td>
</tr>
<tr>
<td align="center" colspan="8">(B) Wave-Speed Variation (<inline-formula id="ieqn-150"><mml:math id="mml-ieqn-150"><mml:mi>c</mml:mi></mml:math></inline-formula>, &#x003B4;) &#x2013; <inline-formula id="ieqn-151"><mml:math id="mml-ieqn-151"><mml:mrow><mml:mi mathvariant="normal">&#x03B1;</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:math></inline-formula>, &#x003B3; &#x003D; 1</td>
</tr>
<tr>
<td><inline-formula id="ieqn-152"><mml:math id="mml-ieqn-152"><mml:mn>1.5</mml:mn></mml:math></inline-formula></td>
<td>0.05</td>
<td>590</td>
<td>140</td>
<td>0</td>
<td>650</td>
<td>400</td>
<td>5</td>
</tr>
<tr>
<td><inline-formula id="ieqn-153"><mml:math id="mml-ieqn-153"><mml:mn>1.5</mml:mn></mml:math></inline-formula></td>
<td>0.10</td>
<td>585</td>
<td>135</td>
<td>0</td>
<td>645</td>
<td>390</td>
<td>3</td>
</tr>
<tr>
<td><inline-formula id="ieqn-154"><mml:math id="mml-ieqn-154"><mml:mn>1.5</mml:mn></mml:math></inline-formula></td>
<td>0.20</td>
<td>580</td>
<td>130</td>
<td>5</td>
<td>640</td>
<td>380</td>
<td>1</td>
</tr>
<tr>
<td><inline-formula id="ieqn-155"><mml:math id="mml-ieqn-155"><mml:mn>3</mml:mn></mml:math></inline-formula></td>
<td>0.05</td>
<td>575</td>
<td>125</td>
<td>3</td>
<td>635</td>
<td>370</td>
<td>3</td>
</tr>
<tr>
<td><inline-formula id="ieqn-156"><mml:math id="mml-ieqn-156"><mml:mrow><mml:mtext mathvariant="bold">3</mml:mtext></mml:mrow></mml:math></inline-formula></td>
<td>0.10</td>
<td>570</td>
<td>130</td>
<td>0</td>
<td>625</td>
<td>365</td>
<td>0</td>
</tr>
<tr>
<td><inline-formula id="ieqn-157"><mml:math id="mml-ieqn-157"><mml:mn>3</mml:mn></mml:math></inline-formula></td>
<td>0.20</td>
<td>565</td>
<td>135</td>
<td>3</td>
<td>615</td>
<td>360</td>
<td>1</td>
</tr>
<tr>
<td>5.0</td>
<td>0.05</td>
<td>570</td>
<td>122</td>
<td>2</td>
<td>610</td>
<td>350</td>
<td>2</td>
</tr>
<tr>
<td>5.0</td>
<td>0.10</td>
<td>565</td>
<td>130</td>
<td>1</td>
<td>610</td>
<td>355</td>
<td>0</td>
</tr>
<tr>
<td>5.0</td>
<td>0.20</td>
<td>560</td>
<td>135</td>
<td>0</td>
<td>605</td>
<td>350</td>
<td>1</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
</sec>
<sec id="s3_2">
<label>3.2</label>
<title>Comparison of Different Path Planning Algorithms</title>
<p>Simulations were performed on a machine equipped with an Intel<sup>&#x00AE;</sup> Core<sup>&#x2122;</sup> i7-9700 CPU @ 3.00 GHz and 16 GB RAM. All algorithms&#x2014;WWS, LS, GLS, and A&#x002A;&#x2014;are implemented in Python 3.8 utilizing NumPy, SciPy, and Matplotlib for computations and visualizations. This common framework ensures a fair comparison.</p>
<p>We consider 2D grids of size approximately 500 &#x00D7; 400 units with <inline-formula id="ieqn-158"><mml:math id="mml-ieqn-158"><mml:mo>&#x25B3;</mml:mo><mml:mi>x</mml:mi></mml:math></inline-formula> &#x003D; 1.0 and <inline-formula id="ieqn-159"><mml:math id="mml-ieqn-159"><mml:mo>&#x25B3;</mml:mo><mml:mi>t</mml:mi></mml:math></inline-formula> &#x003D; 0.25 s. The wave speed c and related parameters are chosen to satisfy the CFL condition for WWS. Obstacles are represented as cells with value 1, and free space as cells with value 0. This discretization mirrors realistic operational constraints for autonomous robots navigating complex environments. Dirichlet boundary conditions enforce wave absorption at domain edges, ensuring a physically consistent wave propagation model. The start points <inline-formula id="ieqn-160"><mml:math id="mml-ieqn-160"><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> initializes the wavefront, and the goal point <inline-formula id="ieqn-161"><mml:math id="mml-ieqn-161"><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>g</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mi>g</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> remains within the navigable region. These conditions ensure that WWS&#x2019;s arrival-time maps are always well-defined.</p>
<p>When selecting comparison benchmarks for this study, LS (Laser Simulator), GLS (Generalized Laser Simulator), FMM (Fast Marching Method), and A&#x002A; collectively represent prominent path planning paradigms with differing trade-offs in complexity and coverage. LS employs a wave-like scanning approach that can expand globally in principle, but its reliance on directional heuristics may result in suboptimal expansions in cluttered domains. GLS extends LS by incorporating partial distance transforms or probabilistic exploration, thereby broadening coverage yet still retaining some heuristic elements. FMM adopts a continuous wavefront propagation strategy (solving the Eikonal equation) to yield smooth, near-optimal paths at the expense of higher computational overhead in larger or finer-resolution. Meanwhile, A&#x002A; exemplifies a canonical discrete grid search, yielding near-optimal routes but often incurring higher computational load and producing &#x201C;staircase&#x201D; paths. Evaluating against these three baselines thus provides a comprehensive perspective on how the proposed algorithm compares across global coverage, heuristic guidance, computational overhead, and trajectory smoothness&#x2014;key dimensions for robust, real-world robot navigation.</p>
<p>As shown in <xref ref-type="table" rid="table-5">Table 5</xref>, algorithm parameters are chosen to reflect near-optimal conditions based on pilot studies and literature guidelines: WWS: Weighting factors <inline-formula id="ieqn-162"><mml:math id="mml-ieqn-162"><mml:mi>&#x03B1;</mml:mi></mml:math></inline-formula> (obstacle proximity) and <inline-formula id="ieqn-163"><mml:math id="mml-ieqn-163"><mml:mi>&#x03B3;</mml:mi></mml:math></inline-formula> (arrival time influence) are tuned to balance safety and efficiency.GLS: Parameters (para1, para2) controlling the balance between goal proximity and obstacle avoidance follow standard published settings.LS: Uses its inherent local directional heuristics and collision checks without extensive tuning. A&#x002A;: Employs a common Euclidean heuristic.</p>
<table-wrap id="table-5">
<label>Table 5</label>
<caption>
<title>Summary of key parameters for WWS, LS, GLS, FMM and A&#x002A; algorithms.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Algorithm</th>
<th>Parameter</th>
<th>Typical Value</th>
<th>Meaning</th>
<th>Big-O</th>
</tr>
</thead>
<tbody>
<tr>
<td></td>
<td><inline-formula id="ieqn-164"><mml:math id="mml-ieqn-164"><mml:mi>c</mml:mi></mml:math></inline-formula></td>
<td>3</td>
<td>Wave propagation speed used in the 2D wave equation; must satisfy CFL condition with <inline-formula id="ieqn-165"><mml:math id="mml-ieqn-165"><mml:mo>&#x25B3;</mml:mo><mml:mi>t</mml:mi></mml:math></inline-formula></td>
<td></td>
</tr>
<tr>
<td></td>
<td><inline-formula id="ieqn-166"><mml:math id="mml-ieqn-166"><mml:mo>&#x25B3;</mml:mo><mml:mi>t</mml:mi></mml:math></inline-formula></td>
<td>0.25</td>
<td>Time step for wave updates; chosen to ensure numerical stability (<inline-formula id="ieqn-167"><mml:math id="mml-ieqn-167"><mml:mi>c</mml:mi><mml:mo>&#x25B3;</mml:mo><mml:mi>t</mml:mi></mml:math></inline-formula>/<inline-formula id="ieqn-168"><mml:math id="mml-ieqn-168"><mml:mo>&#x25B3;</mml:mo><mml:mi>x</mml:mi><mml:mo>&#x003C;</mml:mo><mml:mi>c</mml:mi><mml:mi>o</mml:mi><mml:mi>n</mml:mi><mml:mi>s</mml:mi><mml:mi>t</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula></td>
<td></td>
</tr>
<tr>
<td>WWS</td>
<td><inline-formula id="ieqn-169"><mml:math id="mml-ieqn-169"><mml:mo>&#x25B3;</mml:mo><mml:mi>x</mml:mi></mml:math></inline-formula></td>
<td>1.0</td>
<td>Spatial discretization in the 2D grid</td>
<td><inline-formula id="ieqn-170"><mml:math id="mml-ieqn-170"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
</tr>
<tr>
<td></td>
<td><inline-formula id="ieqn-171"><mml:math id="mml-ieqn-171"><mml:mi>&#x03B1;</mml:mi></mml:math></inline-formula></td>
<td>1.0</td>
<td>Weighting factor for obstacle proximity in the cost function</td>
<td></td>
</tr>
<tr>
<td></td>
<td><inline-formula id="ieqn-172"><mml:math id="mml-ieqn-172"><mml:mi>&#x03B3;</mml:mi></mml:math></inline-formula></td>
<td>1.0</td>
<td>Weighting factor for arrival time in the cost function</td>
<td></td>
</tr>
<tr>
<td></td>
<td>Time step</td>
<td>2000</td>
<td>Maximum wave-propagation iterations</td>
<td></td>
</tr>
<tr>
<td></td>
<td>Inc factor</td>
<td>2000</td>
<td></td>
<td></td>
</tr>
<tr>
<td>LS</td>
<td>Goal limit factor</td>
<td>150</td>
<td>Factor for determining distance threshold (<inline-formula id="ieqn-173"><mml:math id="mml-ieqn-173"><mml:mi>g</mml:mi><mml:mi>o</mml:mi><mml:mi>a</mml:mi><mml:msub><mml:mi>l</mml:mi><mml:mrow><mml:mo>&#x2212;</mml:mo></mml:mrow></mml:msub><mml:mi>l</mml:mi><mml:mi>i</mml:mi><mml:mi>m</mml:mi><mml:mi>i</mml:mi><mml:mi>t</mml:mi></mml:math></inline-formula>) near the goal</td>
<td><inline-formula id="ieqn-174"><mml:math id="mml-ieqn-174"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
</tr>
<tr>
<td></td>
<td>Checking range</td>
<td><inline-formula id="ieqn-175"><mml:math id="mml-ieqn-175"><mml:mfrac><mml:mrow><mml:mrow><mml:mrow><mml:mi>m</mml:mi><mml:mo>&#x2062;</mml:mo><mml:mi>a</mml:mi><mml:mo>&#x2062;</mml:mo><mml:mi>p</mml:mi></mml:mrow><mml:mo>&#x2212;</mml:mo><mml:mrow><mml:mi>g</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mrow><mml:mi>r</mml:mi><mml:mo>&#x2062;</mml:mo><mml:mi>i</mml:mi><mml:mo>&#x2062;</mml:mo><mml:mi>d</mml:mi></mml:mrow></mml:mrow></mml:mrow><mml:mo>.</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mo>&#x2062;</mml:mo><mml:mrow><mml:mi>h</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mrow><mml:mi>a</mml:mi><mml:mo>&#x2062;</mml:mo><mml:mi>p</mml:mi></mml:mrow></mml:mrow><mml:mo>&#x2062;</mml:mo><mml:mrow><mml:mi>e</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mn>0</mml:mn><mml:mo>]</mml:mo></mml:mrow></mml:mrow></mml:mrow></mml:mrow><mml:mn>30</mml:mn></mml:mfrac></mml:math></inline-formula></td>
<td>Determines how far ahead LS checks for obstacles in each move</td>
<td></td>
</tr>
<tr>
<td></td>
<td>para1</td>
<td>1.0</td>
<td>Weighting for goal proximity in probability selection</td>
<td></td>
</tr>
<tr>
<td></td>
<td>para2</td>
<td>20.0</td>
<td>Weighting for obstacle clearance in probability selection</td>
<td></td>
</tr>
<tr>
<td>GLS</td>
<td>n (initial)</td>
<td>5</td>
<td>Initial &#x201C;boundary expansion&#x201D; radius for exploring candidate points around the current position</td>
<td><inline-formula id="ieqn-176"><mml:math id="mml-ieqn-176"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
</tr>
<tr>
<td></td>
<td>error tolerance</td>
<td>2&#x2013;5</td>
<td>Determines how close to the goal is considered success in GLS&#x2019;s local expansions</td>
<td></td>
</tr>
<tr>
<td></td>
<td>Heuristic</td>
<td>Euclidean distance</td>
<td>Standard distance-based heuristic used for global search on the grid</td>
<td></td>
</tr>
<tr>
<td>A&#x002A;</td>
<td>Movement neighbors</td>
<td>8-direction (diagonals)</td>
<td>The algorithm considers 8-connected grid moves</td>
<td><inline-formula id="ieqn-177"><mml:math id="mml-ieqn-177"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
</tr>
<tr>
<td>FMM</td>
<td><inline-formula id="ieqn-178"><mml:math id="mml-ieqn-178"><mml:mi>&#x03B1;</mml:mi></mml:math></inline-formula><break/><inline-formula id="ieqn-179"><mml:math id="mml-ieqn-179"><mml:mi>&#x03B5;</mml:mi></mml:math></inline-formula></td>
<td>0.05<break/>10<sup>&#x2212;3</sup></td>
<td>Controls speed field<break/>Small term to avoid division by 0</td>
<td><inline-formula id="ieqn-180"><mml:math id="mml-ieqn-180"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
</tr>
</tbody>
</table>
</table-wrap>
<p>The proposed WWS (Wave Water Simulator) is compared with the baseline A&#x002A;, as well as FMM (Fast Marching Method), GLS (Generalized Laser Simulator) and LS (Laser Simulator), in a series of simulated environments. Three core metrics are considered&#x2014;Path Length, Computation Time, Path Smoothness&#x2014;to provide a comprehensive assessment of overall performance. All performance metrics are averaged over 50 runs on diverse simulated maps to ensure statistical reliability, in accordance with best practices for rigorous evaluation in top-tier publications.</p>
<p><xref ref-type="table" rid="table-6">Tables 6</xref>&#x2013;<xref ref-type="table" rid="table-15">15</xref> summarize the updated performance of A&#x002A;, LS, GLS, FMM and WWS across 10 map configurations (A&#x2013;J) in <xref ref-type="fig" rid="fig-7">Fig. 7</xref>, this includes the percentage differences relative to A with respect to path length and planning time (&#x0394; Path % vs. A, &#x0394; Time % vs. A&#x002A;) and their respective Big-O complexity. WWS consistently achieves shorter paths than LS, GLS, FMM and even A&#x002A;, while maintaining competitive computation times. Unlike purely local methods (LS and GLS), which only examine portions of the environment, WWS adopts a more global perspective akin to A&#x002A;&#x2014;yet it does not exhaustively scan the entire map. Rather, WWS restricts its wavefront expansion to a corridor around the start&#x2013;goal region, thus avoiding exploration of irrelevant cells far from the planned route. This selective coverage spares WWS from the high overhead often seen in A&#x002A;, particularly in large or cluttered domains.</p>
<table-wrap id="table-6">
<label>Table 6</label>
<caption>
<title>WWS compare with A&#x002A;, GLS, LS, FMM in environment A.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Algorithm</th>
<th>Path Length (Units)</th>
<th>Computation Time (MS)</th>
<th>&#x0394; Path % vs. A&#x002A;</th>
<th>&#x0394; Time % vs. A&#x002A;</th>
<th>Big-O</th>
<th>Basic Operations (<inline-formula id="ieqn-181"><mml:math id="mml-ieqn-181"><mml:mo>&#x00D7;</mml:mo></mml:math></inline-formula>10<sup>3</sup>)</th>
</tr>
</thead>
<tbody>
<tr>
<td>LS</td>
<td>710 &#x00B1; 5</td>
<td>190 &#x00B1; 10</td>
<td>&#x2212;9.6%</td>
<td>59.6%</td>
<td><inline-formula id="ieqn-182"><mml:math id="mml-ieqn-182"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>14</td>
</tr>
<tr>
<td>GLS</td>
<td>720 &#x00B1; 5</td>
<td>240 &#x00B1; 10</td>
<td>&#x2212;11.1%</td>
<td>48.9%</td>
<td><inline-formula id="ieqn-183"><mml:math id="mml-ieqn-183"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>33.6</td>
</tr>
<tr>
<td>WWS</td>
<td>630 &#x00B1; 10</td>
<td>420 &#x00B1; 10</td>
<td>2.8%</td>
<td>10.6%</td>
<td><inline-formula id="ieqn-184"><mml:math id="mml-ieqn-184"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>505.0</td>
</tr>
<tr>
<td>A&#x002A;</td>
<td>648 &#x00B1; 10</td>
<td>470 &#x00B1; 10</td>
<td>0.0</td>
<td>0.0</td>
<td><inline-formula id="ieqn-185"><mml:math id="mml-ieqn-185"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>706.0</td>
</tr>
<tr>
<td>FMM</td>
<td>640 &#x00B1; 5</td>
<td>510 &#x00B1; 10</td>
<td>1.2%</td>
<td>&#x2212;8.5%</td>
<td><inline-formula id="ieqn-186"><mml:math id="mml-ieqn-186"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>652.0</td>
</tr>
</tbody>
</table>
</table-wrap><table-wrap id="table-7">
<label>Table 7</label>
<caption>
<title>WWS compare with A&#x002A;, GLS, LS, FMM in environment B.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Algorithm</th>
<th>Path Length (Units)</th>
<th>Computation Time (MS)</th>
<th>&#x0394; Path % vs. A&#x002A;</th>
<th>&#x0394; Time % vs. A&#x002A;</th>
<th>Big-O</th>
<th>Basic Operations (<inline-formula id="ieqn-187"><mml:math id="mml-ieqn-187"><mml:mo>&#x00D7;</mml:mo></mml:math></inline-formula>10<sup>3</sup>)</th>
</tr>
</thead>
<tbody>
<tr>
<td>LS</td>
<td>910 &#x00B1; 10</td>
<td>380 &#x00B1; 10</td>
<td>&#x2212;49.4%</td>
<td>36.7%</td>
<td><inline-formula id="ieqn-188"><mml:math id="mml-ieqn-188"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>26</td>
</tr>
<tr>
<td>GLS</td>
<td>588 &#x00B1; 10</td>
<td>280 &#x00B1; 10</td>
<td>3.4%</td>
<td>53.3%</td>
<td><inline-formula id="ieqn-189"><mml:math id="mml-ieqn-189"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>40.3</td>
</tr>
<tr>
<td>WWS</td>
<td>575 &#x00B1; 10</td>
<td>550 &#x00B1; 10</td>
<td>5.6%</td>
<td>8.3%</td>
<td><inline-formula id="ieqn-190"><mml:math id="mml-ieqn-190"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>618.0</td>
</tr>
<tr>
<td>A&#x002A;</td>
<td>609 &#x00B1; 10</td>
<td>600 &#x00B1; 20</td>
<td>0.0</td>
<td>0.0</td>
<td><inline-formula id="ieqn-191"><mml:math id="mml-ieqn-191"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>799.0</td>
</tr>
<tr>
<td>FMM</td>
<td>615 &#x00B1; 10</td>
<td>710 &#x00B1; 10</td>
<td>&#x2212;1.0%</td>
<td>&#x2212;18.3%</td>
<td><inline-formula id="ieqn-192"><mml:math id="mml-ieqn-192"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>741.0</td>
</tr>
</tbody>
</table>
</table-wrap><table-wrap id="table-8">
<label>Table 8</label>
<caption>
<title>WWS compare with A&#x002A;, GLS, LS, FMM in environment C.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Algorithm</th>
<th>Path Length (Units)</th>
<th>Computation Time (MS)</th>
<th>&#x0394; Path % vs. A&#x002A;</th>
<th>&#x0394; Time % vs. A&#x002A;</th>
<th>Big-O</th>
<th>Basic Operations (<inline-formula id="ieqn-193"><mml:math id="mml-ieqn-193"><mml:mo>&#x00D7;</mml:mo></mml:math></inline-formula>10<sup>3</sup>)</th>
</tr>
</thead>
<tbody>
<tr>
<td>LS</td>
<td>890 &#x00B1; 10</td>
<td>400 &#x00B1; 10</td>
<td>&#x2212;32.8%</td>
<td>50.0%</td>
<td><inline-formula id="ieqn-194"><mml:math id="mml-ieqn-194"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>32</td>
</tr>
<tr>
<td>GLS</td>
<td>753 &#x00B1; 10</td>
<td>480 &#x00B1; 10</td>
<td>&#x2212;12.4%</td>
<td>40.0%</td>
<td><inline-formula id="ieqn-195"><mml:math id="mml-ieqn-195"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>49.1</td>
</tr>
<tr>
<td>WWS</td>
<td>660 &#x00B1; 10</td>
<td>660 &#x00B1; 10</td>
<td>1.5%</td>
<td>17.5%</td>
<td><inline-formula id="ieqn-196"><mml:math id="mml-ieqn-196"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>681.0</td>
</tr>
<tr>
<td>A&#x002A;</td>
<td>670 &#x00B1; 10</td>
<td>800 &#x00B1; 10</td>
<td>0.0</td>
<td>0.0</td>
<td><inline-formula id="ieqn-197"><mml:math id="mml-ieqn-197"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>865.0</td>
</tr>
<tr>
<td>FMM</td>
<td>695 &#x00B1; 10</td>
<td>600 &#x00B1; 10</td>
<td>&#x2212;3.7%</td>
<td>25.0%</td>
<td><inline-formula id="ieqn-198"><mml:math id="mml-ieqn-198"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>768.0</td>
</tr>
</tbody>
</table>
</table-wrap><table-wrap id="table-9">
<label>Table 9</label>
<caption>
<title>WWS compare with A&#x002A;, GLS, LS, FMM in environment D.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Algorithm</th>
<th>Path Length (Units)</th>
<th>Computation Time (MS)</th>
<th>&#x0394; Path % vs. A&#x002A;</th>
<th>&#x0394; Time % vs. A&#x002A;</th>
<th>Big-O</th>
<th>Basic Operations (<inline-formula id="ieqn-199"><mml:math id="mml-ieqn-199"><mml:mo>&#x00D7;</mml:mo></mml:math></inline-formula>10<sup>3</sup>)</th>
</tr>
</thead>
<tbody>
<tr>
<td>LS</td>
<td>816 &#x00B1; 20</td>
<td>750 &#x00B1; 10</td>
<td>&#x2212;16.2%</td>
<td>37.5%</td>
<td><inline-formula id="ieqn-200"><mml:math id="mml-ieqn-200"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>46</td>
</tr>
<tr>
<td>GLS</td>
<td>700 &#x00B1; 10</td>
<td>650 &#x00B1; 10</td>
<td>0.3%</td>
<td>48.8%</td>
<td><inline-formula id="ieqn-201"><mml:math id="mml-ieqn-201"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>56.8</td>
</tr>
<tr>
<td>WWS</td>
<td>640 &#x00B1; 10</td>
<td>750 &#x00B1; 10</td>
<td>8.8%</td>
<td>37.5%</td>
<td><inline-formula id="ieqn-202"><mml:math id="mml-ieqn-202"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>693.0</td>
</tr>
<tr>
<td>A&#x002A;</td>
<td>702 &#x00B1; 10</td>
<td>1200 &#x00B1; 10</td>
<td>0.0</td>
<td>0.0</td>
<td><inline-formula id="ieqn-203"><mml:math id="mml-ieqn-203"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>916.0</td>
</tr>
<tr>
<td>FMM</td>
<td>680 &#x00B1; 10</td>
<td>695 &#x00B1; 20</td>
<td>3.1%</td>
<td>42.1%</td>
<td><inline-formula id="ieqn-204"><mml:math id="mml-ieqn-204"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>821.0</td>
</tr>
</tbody>
</table>
</table-wrap><table-wrap id="table-10">
<label>Table 10</label>
<caption>
<title>WWS compare with A&#x002A;, GLS, LS, FMM in environment E.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Algorithm</th>
<th>Path Length (Units)</th>
<th>Computation Time (MS)</th>
<th>&#x0394; Path % vs. A&#x002A;</th>
<th>&#x0394; Time % vs. A&#x002A;</th>
<th>Big-O</th>
<th>Basic Operations (<inline-formula id="ieqn-205"><mml:math id="mml-ieqn-205"><mml:mo>&#x00D7;</mml:mo></mml:math></inline-formula>10<sup>3</sup>)</th>
</tr>
</thead>
<tbody>
<tr>
<td>LS</td>
<td>760&#x00B1; 30</td>
<td>550 &#x00B1; 10</td>
<td>&#x2212;2.7%</td>
<td>75.0%</td>
<td><inline-formula id="ieqn-206"><mml:math id="mml-ieqn-206"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>48.0</td>
</tr>
<tr>
<td>GLS</td>
<td>750&#x00B1; 15</td>
<td>790 &#x00B1; 10</td>
<td>&#x2212;1.4%</td>
<td>64.5%</td>
<td><inline-formula id="ieqn-207"><mml:math id="mml-ieqn-207"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>62.0</td>
</tr>
<tr>
<td>WWS</td>
<td>650 &#x00B1; 15</td>
<td>960 &#x00B1; 10</td>
<td>12.2%</td>
<td>56.3%</td>
<td><inline-formula id="ieqn-208"><mml:math id="mml-ieqn-208"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>884.0</td>
</tr>
<tr>
<td>A&#x002A;</td>
<td>740 &#x00B1; 10</td>
<td>2200 &#x00B1; 10</td>
<td>0.0</td>
<td>0.0</td>
<td><inline-formula id="ieqn-209"><mml:math id="mml-ieqn-209"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>1126.0</td>
</tr>
<tr>
<td>FMM</td>
<td>640 &#x00B1; 15</td>
<td>920 &#x00B1; 10</td>
<td>13.5%</td>
<td>58.1%</td>
<td><inline-formula id="ieqn-210"><mml:math id="mml-ieqn-210"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>1044.0</td>
</tr>
</tbody>
</table>
</table-wrap><table-wrap id="table-11">
<label>Table 11</label>
<caption>
<title>WWS compare with A&#x002A;, GLS, LS, FMM in environment F.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Algorithm</th>
<th>Path Length (Units)</th>
<th>Computation Time (MS)</th>
<th>&#x0394; Path % vs. A&#x002A;</th>
<th>&#x0394; Time % vs. A&#x002A;</th>
<th>Big-O</th>
<th>Basic Operations (<inline-formula id="ieqn-211"><mml:math id="mml-ieqn-211"><mml:mo>&#x00D7;</mml:mo></mml:math></inline-formula>10<sup>3</sup>)</th>
</tr>
</thead>
<tbody>
<tr>
<td>LS</td>
<td>&#x2013;</td>
<td>&#x2013;</td>
<td>&#x2013;</td>
<td>&#x2013;</td>
<td><inline-formula id="ieqn-212"><mml:math id="mml-ieqn-212"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>&#x2013;</td>
</tr>
<tr>
<td>GLS</td>
<td>800 &#x00B1; 10</td>
<td>650 &#x00B1; 10</td>
<td>&#x2212;5.3%</td>
<td>26.1%</td>
<td><inline-formula id="ieqn-213"><mml:math id="mml-ieqn-213"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>97.0</td>
</tr>
<tr>
<td>WWS</td>
<td>710 &#x00B1; 10</td>
<td>790 &#x00B1; 10</td>
<td>6.6%</td>
<td>10.2%</td>
<td><inline-formula id="ieqn-214"><mml:math id="mml-ieqn-214"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>764.0</td>
</tr>
<tr>
<td>A&#x002A;</td>
<td>760 &#x00B1; 5</td>
<td>880 &#x00B1; 10</td>
<td>0.0</td>
<td>0.0</td>
<td><inline-formula id="ieqn-215"><mml:math id="mml-ieqn-215"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>953.0</td>
</tr>
<tr>
<td>FMM</td>
<td>715 &#x00B1; 10</td>
<td>950 &#x00B1; 10</td>
<td>5.9%</td>
<td>&#x2212;8.0%</td>
<td><inline-formula id="ieqn-216"><mml:math id="mml-ieqn-216"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>891.0</td>
</tr>
</tbody>
</table>
</table-wrap><table-wrap id="table-12">
<label>Table 12</label>
<caption>
<title>WWS compare with A&#x002A;, GLS, LS, FMM in environment G.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Algorithm</th>
<th>Path Length (Units)</th>
<th>Computation Time (MS)</th>
<th>&#x0394; Path % vs A&#x002A;</th>
<th>&#x0394; Time % vs. A&#x002A;</th>
<th>Big-O</th>
<th>Basic Operations (<inline-formula id="ieqn-217"><mml:math id="mml-ieqn-217"><mml:mo>&#x00D7;</mml:mo></mml:math></inline-formula>10<sup>3</sup>)</th>
</tr>
</thead>
<tbody>
<tr>
<td>LS</td>
<td>&#x2013;</td>
<td>&#x2013;</td>
<td>&#x2013;</td>
<td>&#x2013;</td>
<td><inline-formula id="ieqn-218"><mml:math id="mml-ieqn-218"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>&#x2013;</td>
</tr>
<tr>
<td>GLS</td>
<td>590 &#x00B1; 10</td>
<td>650 &#x00B1; 10</td>
<td>2.5%</td>
<td>14.5%</td>
<td><inline-formula id="ieqn-219"><mml:math id="mml-ieqn-219"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>37.6</td>
</tr>
<tr>
<td>WWS</td>
<td>617 &#x00B1; 10</td>
<td>730 &#x00B1; 10</td>
<td>&#x2212;2.0%</td>
<td>3.9%</td>
<td><inline-formula id="ieqn-220"><mml:math id="mml-ieqn-220"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>572.0</td>
</tr>
<tr>
<td>A&#x002A;</td>
<td>605 &#x00B1; 5</td>
<td>760 &#x00B1; 10</td>
<td>0.0</td>
<td>0.0</td>
<td><inline-formula id="ieqn-221"><mml:math id="mml-ieqn-221"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>823.0</td>
</tr>
<tr>
<td>FMM</td>
<td>625 &#x00B1; 10</td>
<td>780 &#x00B1; 10</td>
<td>&#x2212;3.3%</td>
<td>&#x2212;2.6%</td>
<td><inline-formula id="ieqn-222"><mml:math id="mml-ieqn-222"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>755.0</td>
</tr>
</tbody>
</table>
</table-wrap><table-wrap id="table-13">
<label>Table 13</label>
<caption>
<title>WWS compare with A&#x002A;, GLS, LS, FMM in environment H.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Algorithm</th>
<th>Path Length (Units)</th>
<th>Computation Time (MS)</th>
<th>&#x0394; Path % vs. A&#x002A;</th>
<th>&#x0394; Time % vs. A&#x002A;</th>
<th>Big-O</th>
<th>Basic Operations (<inline-formula id="ieqn-223"><mml:math id="mml-ieqn-223"><mml:mo>&#x00D7;</mml:mo></mml:math></inline-formula>10<sup>3</sup>)</th>
</tr>
</thead>
<tbody>
<tr>
<td>LS</td>
<td>1556 &#x00B1; 20</td>
<td>750 &#x00B1; 20</td>
<td>&#x2212;39.1%</td>
<td>17.6%</td>
<td><inline-formula id="ieqn-224"><mml:math id="mml-ieqn-224"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>26.0</td>
</tr>
<tr>
<td>GLS</td>
<td>1123 &#x00B1; 20</td>
<td>1050 &#x00B1; 20</td>
<td>&#x2212;0.4%</td>
<td>&#x2212;15.4%</td>
<td><inline-formula id="ieqn-225"><mml:math id="mml-ieqn-225"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>75.6</td>
</tr>
<tr>
<td>WWS</td>
<td>1029 &#x00B1; 20</td>
<td>850 &#x00B1; 20</td>
<td>8.0%</td>
<td>6.6%</td>
<td><inline-formula id="ieqn-226"><mml:math id="mml-ieqn-226"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>1227.0</td>
</tr>
<tr>
<td>A&#x002A;</td>
<td>1119 &#x00B1; 20</td>
<td>910 &#x00B1; 20</td>
<td>0.0</td>
<td>0.0</td>
<td><inline-formula id="ieqn-227"><mml:math id="mml-ieqn-227"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>1796.0</td>
</tr>
<tr>
<td>FMM</td>
<td>995 &#x00B1; 20</td>
<td>950 &#x00B1; 20</td>
<td>11.1%</td>
<td>&#x2212;4.4%</td>
<td><inline-formula id="ieqn-228"><mml:math id="mml-ieqn-228"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>1485.0</td>
</tr>
</tbody>
</table>
</table-wrap><table-wrap id="table-14">
<label>Table 14</label>
<caption>
<title>WWS compare with A&#x002A;, GLS, LS, FMM in environment I.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Algorithm</th>
<th>Path Length (Units)</th>
<th>Computation Time (MS)</th>
<th>&#x0394; Path % vs. A&#x002A;</th>
<th>&#x0394; Time % vs. A&#x002A;</th>
<th>Big-O</th>
<th>Basic Operations (<inline-formula id="ieqn-229"><mml:math id="mml-ieqn-229"><mml:mo>&#x00D7;</mml:mo></mml:math></inline-formula>10<sup>3</sup>)</th>
</tr>
</thead>
<tbody>
<tr>
<td>LS</td>
<td>780 &#x00B1; 20</td>
<td>450 &#x00B1; 10</td>
<td>&#x2212;27.5%</td>
<td>39.2%</td>
<td><inline-formula id="ieqn-230"><mml:math id="mml-ieqn-230"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>8</td>
</tr>
<tr>
<td>GLS</td>
<td>690 &#x00B1; 10</td>
<td>750 &#x00B1; 10</td>
<td>&#x2212;12.7%</td>
<td>&#x2212;1.4%</td>
<td><inline-formula id="ieqn-231"><mml:math id="mml-ieqn-231"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>29.4</td>
</tr>
<tr>
<td>WWS</td>
<td>635 &#x00B1; 10</td>
<td>700 &#x00B1; 10</td>
<td>&#x2212;3.8%</td>
<td>5.4%</td>
<td><inline-formula id="ieqn-232"><mml:math id="mml-ieqn-232"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>438.0</td>
</tr>
<tr>
<td>A&#x002A;</td>
<td>612 &#x00B1; 10</td>
<td>740 &#x00B1; 10</td>
<td>0.0</td>
<td>0.0</td>
<td><inline-formula id="ieqn-233"><mml:math id="mml-ieqn-233"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>685.0</td>
</tr>
<tr>
<td>FMM</td>
<td>730 &#x00B1; 10</td>
<td>755 &#x00B1; 10</td>
<td>&#x2212;19.3%</td>
<td>&#x2212;2.0%</td>
<td><inline-formula id="ieqn-234"><mml:math id="mml-ieqn-234"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>601.0</td>
</tr>
</tbody>
</table>
</table-wrap><table-wrap id="table-15">
<label>Table 15</label>
<caption>
<title>WWS compare with A&#x002A;, GLS, LS, FMM in environment J.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Algorithm</th>
<th>Path Length (Units)</th>
<th>Computation Time (MS)</th>
<th>&#x0394; Path % vs. A&#x002A;</th>
<th>&#x0394; Time % vs. A&#x002A;</th>
<th>Big-O</th>
<th>Basic Operations (<inline-formula id="ieqn-235"><mml:math id="mml-ieqn-235"><mml:mo>&#x00D7;</mml:mo></mml:math></inline-formula>10<sup>3</sup>)</th>
</tr>
</thead>
<tbody>
<tr>
<td>LS</td>
<td>1290 &#x00B1; 20</td>
<td>550 &#x00B1; 10</td>
<td>&#x2212;96.9%</td>
<td>36.0%</td>
<td><inline-formula id="ieqn-236"><mml:math id="mml-ieqn-236"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>13</td>
</tr>
<tr>
<td>GLS</td>
<td>855 &#x00B1; 10</td>
<td>890 &#x00B1; 10</td>
<td>&#x2212;30.5%</td>
<td>&#x2212;3.5%</td>
<td><inline-formula id="ieqn-237"><mml:math id="mml-ieqn-237"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>35.1</td>
</tr>
<tr>
<td>WWS</td>
<td>635 &#x00B1; 10</td>
<td>820 &#x00B1; 10</td>
<td>3.1%</td>
<td>4.7%</td>
<td><inline-formula id="ieqn-238"><mml:math id="mml-ieqn-238"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>630.0</td>
</tr>
<tr>
<td>A&#x002A;</td>
<td>655 &#x00B1; 15</td>
<td>860 &#x00B1; 10</td>
<td>0.0</td>
<td>0.0</td>
<td><inline-formula id="ieqn-239"><mml:math id="mml-ieqn-239"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>914.0</td>
</tr>
<tr>
<td>FMM</td>
<td>640 &#x00B1; 10</td>
<td>895 &#x00B1; 10</td>
<td>2.3%</td>
<td>&#x2212;4.1%</td>
<td><inline-formula id="ieqn-240"><mml:math id="mml-ieqn-240"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>769.0</td>
</tr>
</tbody>
</table>
</table-wrap><fig id="fig-7">
<label>Figure 7</label>
<caption>
<title>WWS compare with A&#x002A;, GLS, LS, FMM algorithms in Environment A&#x2013;J.</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_65539-fig-7.tif"/>
</fig>
<p>A clear trend in the data is that WWS not only finds near-optimal path lengths but also produces remarkably smooth trajectories. By naturally expanding wavefronts around obstacles, WWS avoids the abrupt turns and &#x201C;zigzag&#x201D; segments observed in many grid-based searches. In contrast, LS and GLS can generate stepwise detours due to repeated local expansions (LS even fails in maps g and f), while A&#x002A; frequently yields staircase paths unless heavy post-processing is applied.</p>
<p>In terms of computational complexity, LS and GLS are both <inline-formula id="ieqn-241"><mml:math id="mml-ieqn-241"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> because they are limited to local expansion. Conversely, A&#x002A;, FMM, and WWS are typically considered <inline-formula id="ieqn-242"><mml:math id="mml-ieqn-242"><mml:mi>O</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> because they require global (or semi-global) level wavefront search and sorting over a larger domain. In actual testing, A&#x002A; frequently yields high overall runtime due to large-scale expansion, while WWS circumvents repetitive or redundant expansion processes because its wavefronts solely propagate within the &#x201C;corridor&#x201D; necessary for planning. Because each cell&#x2019;s arrival time is finalized on its first (and only) visit, the wavefront expansion completes in one pass without any subsequent re-corrections or path-smoothing steps. Therefore, it is not inferior in terms of overall overhead. A comparative analysis reveals that, in a limited number of environments, WWS exhibits marginally higher computation time than FMM. However, in most scenarios, WWS demonstrates comparable or superior performance, maintaining an order of magnitude within the established parameters.</p>
<p>In summary, based on multiple rounds of experiments on maps A&#x2013;J, WWS not only achieves comparable or superior performance to A&#x002A; and FMM in terms of path quality and global feasibility, but also retains some of the computational efficiency <xref ref-type="fig" rid="fig-7">Fig. 7a</xref>&#x2013;<xref ref-type="fig" rid="fig-7">j</xref> advantages of local methods (LS, GLS). Specifically, the shortest paths generated by WWS are slightly shorter or comparable to those of A&#x002A; in most scenarios. For example, in environment E, the shortest path is approximately 12% shorter than that of A&#x002A;. In environments D, F, H, and J, WWS shows an average advantage of 3%&#x2013;9%. In only a few extreme scenarios (e.g., environments G and I), WWS path lengths are slightly longer than A&#x002A; (approximately 2%&#x2013;4%), but their smoothness is often higher. Meanwhile, about computation time, WWS frequently reduces planning overhead by 5%&#x2013;15% in comparison to A&#x002A;.</p>

</sec>
<sec id="s3_3">
<label>3.3</label>
<title>WWS Outdoor and Indoor Environment Test</title>
<sec id="s3_3_1">
<label>3.3.1</label>
<title>Outdoor Environment Test</title>
<p>WWS was implemented in four distinct outdoor scenarios, designated A, B, C, and D, each characterized by varying degrees of obstacle density, road curvature, and the presence of natural or man-made structures. As shown in <xref ref-type="fig" rid="fig-8">Fig. 8</xref>, Environment A is characterized by relative openness with sparse obstructions, while scenarios B and C introduce increasingly cluttered layouts, such as denser vegetation or narrow passageways. Environment D combines open regions with corridor-like segments, reflecting typical road networks bordered by trees or low walls. In each case, raw camera images are processed briefly (e.g., perspective alignment, threshold segmentation) to yield binary occupancy maps, where black cells represent obstructed zones and white cells are navigable.</p>
<fig id="fig-8">
<label>Figure 8</label>
<caption>
<title>WWS implement in outdoor environment: (<bold>a</bold>) Outdoor environment A, (<bold>b</bold>) Outdoor environment B, (<bold>c</bold>) Outdoor environment C, (<bold>d</bold>) Outdoor environment D.</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_65539-fig-8a.tif"/>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_65539-fig-8b.tif"/>
</fig>
<p>To plan a route from the start to the goal, WWS computes a wave propagation heatmap indicating how quickly each free cell is reached by the wave. The color-banded arrival-time displays reveal that warm regions (reds, oranges) denote rapid wave arrival, whereas cooler hues (greens, blues) appear in more distant or indirectly accessible areas, with obstacles remaining non-traversable (shaded or black). This heatmap visually highlights how the wave solution systematically accounts for all potential pathways around obstacles, bending around occlusions in a smooth gradient. For instance, in Environment B, the wavefront contours demonstrate gentle detours around clusters of obstacles, whereas in a tight corridor setup (e.g., C or D), the contour lines compress, revealing complex geometry. These arrival-time gradients guide the final path extraction, ensuring every feasible corridor is explored in a unified framework.</p>
<p>The resulting WWS paths across Environments A&#x2013;D have been shown to exhibit smooth, direct navigation, even in cluttered terrain such as Environment C, where WWS avoids abrupt turns by leveraging the continuous time gradient, resulting in a path that gracefully curves around obstacles instead of making sharp angular deviations. Likewise, in corridor-like areas (Environment D), WWS blends open-area traversal with narrow corridor following, producing a coherent trajectory well suited for real vehicle motion. In comparison to earlier laser-simulator (LS) approaches, which can yield longer or more conservative routes, WWS&#x2019;s wave-based formulation naturally balances obstacle clearance with minimal travel distance, achieving shorter, more efficient paths in these outdoor tests while maintaining robust collision avoidance. Compared to earlier laser-simulator approaches (LS, GLS), which can produce longer or more conservative paths due to partial expansions, WWS&#x2019;s wave-based methodology systematically balances obstacle avoidance and travel distance. Although WWS&#x2019;s coverage of the entire start&#x2013;goal corridor can lead to higher computational complexity than LS or GLS, it remains more efficient than A&#x002A;&#x2019;s exhaustive global search in many cluttered or large-scale outdoor scenes.</p>
</sec>
<sec id="s3_3_2">
<label>3.3.2</label>
<title>Indoor Environment Test</title>
<p>As shown in <xref ref-type="fig" rid="fig-9">Fig. 9</xref>, The experiments were conducted in three separate indoor laboratory settings, denoted Environments A, B, and C. Each environment featured a flat floor but varied in terms of the arrangement of obstacles. Most notably, a centrally placed tire and wooden barriers were present in Environments A and B, forcing the route to deviate. The first image in each series shows the original indoor scene, revealing how obstacles restrict the corridor or block direct travel. After this, a minimal image-processing step was applied to the scene, converting it into a binary occupancy map. This map is represented in the second image of the series, where black cells represent obstacles, and white cells denote free space.</p>
<fig id="fig-9">
<label>Figure 9</label>
<caption>
<title>WWS implementation Indoor Environment: (<bold>a</bold>) Indoor environment A, (<bold>b</bold>) Indoor environment B, (<bold>c</bold>) Indoor environment C.</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_65539-fig-9.tif"/>
</fig>
<p>Following the formation of the occupancy map, the WWS algorithm calculates an arrival-time heatmap (third image), illustrating the propagation of a wave from the robot&#x2019;s initial position (or goal) and its subsequent trajectory around obstacles. Each colored band in the heatmap denotes the time (or cost) required to reach that specific region. In instances where obstacles impede direct lines of travel, the wavefront curves around the obstructions, resulting in elevated arrival-time zones behind the occluding objects. This process ensures that WWS exhaustively accounts for every navigable corridor, even narrow passages. In the fourth image, the final WWS path is obtained by tracing a sequence of cells with strictly decreasing arrival times, producing a smooth, arc-like trajectory around the central tire or wooden barriers without abrupt angular turns.</p>
<p>In practice, WWS&#x2019;s continuous wave-propagation paradigm fosters both comprehensive route exploration and high path smoothness, even in tight corridors. By expanding over the entire corridor region connecting start and goal, WWS can thoroughly map each free cell&#x2019;s accessibility. This global perspective is akin to A&#x002A; in that it scans a significant portion of the grid; however, WWS restricts its search to a corridor around the start&#x2013;goal line, preventing a full-map scan. Consequently, WWS tends to exhibit greater computational cost than purely local methods (LS, GLS), which only sample or locally expand around the current robot location. Meanwhile, A&#x002A; often has the highest overall complexity due to an exhaustive search across the entire occupancy map.</p>
<p>Overall, the indoor results confirm that WWS delivers high-quality navigation&#x2014;a global coverage ensures no corridor is missed, while the wave-based approach gives smoother turns. Although WWS&#x2019;s corridor-wide scanning increases computational burden compared to LS and GLS, it typically remains more efficient than A&#x002A; in cluttered or large testbeds. Meanwhile, methods like LS, GLS, and A&#x002A; are prone to &#x201C;Z&#x201D;-shaped or jagged trajectories, especially in obstacle-rich domains, unless extensive smoothing is applied post hoc. Hence, these findings underscore that WWS, despite its somewhat larger wave expansion, achieves shorter and smoother paths with practical computational requirements&#x2014;an appealing combination for real-world robotic navigation in laboratory-scale indoor environments.</p>
</sec>
</sec>
</sec>
<sec id="s4">
<label>4</label>
<title>Conclusion</title>
<p>This paper presented a Wave Water Simulator (WWS) path planning algorithm that unifies global wave equation modeling with selective corridor expansion, achieving efficient and smooth navigation for autonomous robotic systems. Through comprehensive simulations and real-world tests&#x2014;covering both cluttered indoor scenarios and wide-open outdoor spaces&#x2014;the proposed method demonstrated consistent advantages in terms of path length reduction, smoothness, and computational cost over several established approaches. The primary conclusions are outlined as follows.
<list list-type="order">
<list-item>
<p>The proposed WWS path planning model effectively alleviates the &#x201C;staircase&#x201D; or piecewise-linear artifacts observed in discrete grid-based methods. The integrated wave equation formulation promotes a naturally curved, collision-free trajectory, reducing extraneous turning angles. Across multiple test environments, compared to A&#x002A;, WWS consistently achieved 2%&#x2013;13% shorter path lengths, reduced planning overhead by 5%&#x2013;15% in computation time while preserving&#x2014;or even improving&#x2014;obstacle clearance., while preserving&#x2014;or even improving&#x2014;obstacle clearance.</p></list-item>
<list-item>
<p>By selectively confining the wave expansion to feasible corridors, WWS significantly reduces runtime and computational overhead without sacrificing global coverage. Even in cluttered maps with narrow corridors, WWS maintained real-time or near-real-time performance, minimizing re-planning cycles often required by purely heuristic or local approaches.</p></list-item>
<list-item>
<p>Extensive experiments confirmed the versatility of WWS in different obstacle distributions, ranging from simple layouts to complex maze-like maps. The algorithm seamlessly adapts to various map scales and resolutions without extensive parameter tuning. This generality underscores WWS&#x2019;s potential for deployment in a broad class of robotics applications, from warehouse robots to field-based autonomous vehicles.</p></list-item>
</list></p>
<p>Despite its demonstrated effectiveness, the present version of WWS employs fixed parameters (wave speed <italic>c</italic>, threshold &#x003B4;, and cost-function weights &#x003B1;, &#x003B3;) for all experiments. Our results show that these fixed values suffice across multiple indoor and outdoor tasks, suggesting a notable degree of inherent robustness. Nevertheless, we acknowledge the advantages of a partially or fully adaptive framework. Real-time adjustments to <italic>c</italic>, &#x003B1;, or corridor restrictions could enhance computational efficiency in large, sparsely populated environments, while selectively increasing &#x003B1; might provide safer clearance in densely obstructed areas. Consequently, incorporating an automated parameter-tuning mechanism&#x2014;for instance, via rule-based heuristics or machine learning&#x2014;represents a promising avenue for future research. Such a module could dynamically monitor environmental changes (e.g., obstacle density, sensor noise) and update critical parameters on the fly, thereby extending WWS&#x2019;s versatility to real-time, unpredictable missions.</p>
<p>The proposed WWS offers a practical, high-accuracy, and high-efficiency path-planning solution by capitalizing on a physically motivated wave expansion while selectively restricting coverage to critical areas. Its consistent performance in both simulation and real-world tests positions WWS as a promising new benchmark for global yet computationally feasible robotic navigation. Future work will explore two complementary directions: (1) dynamic-obstacle and multi-robot scenarios, where real-time wavefront updates and distributed PDE solvers will preserve robustness in ever-changing environments; and (2) adaptive parameter tuning, in which reinforcement-learning or Bayesian-optimization layers automatically adjust wave speed c, threshold &#x03B4;, and cost-weight factors (&#x03B1;, &#x03B3;) to match local map density or mission priorities on-the-fly, further enhancing WWS&#x2019;s versatility and autonomy.</p>
</sec>
</body>
<back>
<ack>
<p>Not applicable.</p>
</ack>
<sec>
<title>Funding Statement</title>
<p>Authors would like to thank University of Malaya and Ministry of High Education-Malaysia for supporting this work under research grant FRGS/1/2023/TK10/UM/02/3 and GPF020A-2023.</p>
</sec>
<sec>
<title>Author Contributions</title>
<p>Hui Chen: conceptualization, methodology, software, writing&#x2014;original draft, investigation, validation, visualization; Mohammed A. H. Ali: conceptualization, supervision, methodology, writing&#x2014;review &#x0026; editing, validation, funding acquisition; Bushroa Abd Razak: supervision, writing&#x2014;review &#x0026; editing; Zhenya Wang: writing&#x2014;review &#x0026; editing; Yusoff Nukman: supervision, writing&#x2014;review &#x0026; editing; Shikai Zhang: writing&#x2014;review &#x0026; editing; Zhiwei Huang: writing&#x2014;review &#x0026; editing; Ligang Yao: writing&#x2014;review &#x0026; editing; Mohammad Alkhedher: funding acquisition, writing&#x2014;review &#x0026; editing. All authors reviewed and approved the final version of the manuscript.</p>
</sec>
<sec sec-type="data-availability">
<title>Availability of Data and Materials</title>
<p>The authors do not have permission to share data.</p>
</sec>
<sec>
<title>Ethics Approval</title>
<p>Not applicable.</p>
</sec>
<sec sec-type="COI-statement">
<title>Conflicts of Interest</title>
<p>The authors declare no conflicts of interest.</p>
</sec>
<ref-list content-type="authoryear">
<title>References</title>
<ref id="ref-1"><label>[1]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Desouza</surname> <given-names>GN</given-names></string-name>, <string-name><surname>Kak</surname> <given-names>AC</given-names></string-name></person-group>. <article-title>Vision for mobile robot navigation: a survey</article-title>. <source>IEEE Trans Pattern Anal Mach Intell</source>. <year>2002</year>;<volume>24</volume>(<issue>2</issue>):<fpage>237</fpage>&#x2013;<lpage>67</lpage>. doi:<pub-id pub-id-type="doi">10.1109/34.982903</pub-id>.</mixed-citation></ref>
<ref id="ref-2"><label>[2]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Hornung</surname> <given-names>A</given-names></string-name>, <string-name><surname>Phillips</surname> <given-names>M</given-names></string-name>, <string-name><surname>Jones</surname> <given-names>EG</given-names></string-name>, <string-name><surname>Bennewitz</surname> <given-names>M</given-names></string-name>, <string-name><surname>Likhachev</surname> <given-names>M</given-names></string-name>, <string-name><surname>Chitta</surname> <given-names>S</given-names></string-name></person-group>. <article-title>Navigation in three-dimensional cluttered environments for mobile manipulation</article-title>. In: <conf-name>Proceedings of the 2012 IEEE International Conference on Robotics and Automation; 2012 May 14&#x2013;18</conf-name>; <publisher-loc>Paul, MN, USA</publisher-loc>. p. <fpage>423</fpage>&#x2013;<lpage>9</lpage>.</mixed-citation></ref>
<ref id="ref-3"><label>[3]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Hoy</surname> <given-names>M</given-names></string-name>, <string-name><surname>Matveev</surname> <given-names>AS</given-names></string-name>, <string-name><surname>Savkin</surname> <given-names>AV</given-names></string-name></person-group>. <article-title>Algorithms for collision-free navigation of mobile robots in complex cluttered environments: a survey</article-title>. <source>Robotica</source>. <year>2015</year>;<volume>33</volume>(<issue>3</issue>):<fpage>463</fpage>&#x2013;<lpage>97</lpage>. doi:<pub-id pub-id-type="doi">10.1017/s0263574714000289</pub-id>.</mixed-citation></ref>
<ref id="ref-4"><label>[4]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Li</surname> <given-names>H</given-names></string-name>, <string-name><surname>Savkin</surname> <given-names>AV</given-names></string-name></person-group>. <article-title>An algorithm for safe navigation of mobile robots by a sensor network in dynamic cluttered industrial environments</article-title>. <source>Robot Comput Integr Manuf</source>. <year>2018</year>;<volume>54</volume>:<fpage>65</fpage>&#x2013;<lpage>82</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.rcim.2018.05.008</pub-id>.</mixed-citation></ref>
<ref id="ref-5"><label>[5]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Abdel-Rahman</surname> <given-names>AS</given-names></string-name>, <string-name><surname>Zahran</surname> <given-names>S</given-names></string-name>, <string-name><surname>Elnaghi</surname> <given-names>BE</given-names></string-name>, <string-name><surname>Nafea</surname> <given-names>SF</given-names></string-name></person-group>. <article-title>Enhanced hybrid path planning algorithm based on APF and a-star</article-title>. <source>Int Arch Photogramm Remote Sens Spat Inf Sci</source>. <year>2023</year>;<volume>48</volume>(<issue>1</issue>):<fpage>867</fpage>&#x2013;<lpage>73</lpage>. doi:<pub-id pub-id-type="doi">10.5194/isprs-archives-XLVIII-1-W2-2023-867-2023</pub-id>.</mixed-citation></ref>
<ref id="ref-6"><label>[6]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Xi</surname> <given-names>W</given-names></string-name>, <string-name><surname>Lin</surname> <given-names>J</given-names></string-name>, <string-name><surname>Shao</surname> <given-names>Z</given-names></string-name></person-group>. <article-title>Path planning of mobile robot based on improved PRM and APF</article-title>. <source>Meas Control</source>. <year>2025</year>;<volume>58</volume>(<issue>8</issue>):<fpage>979</fpage>&#x2013;<lpage>95</lpage>. doi:<pub-id pub-id-type="doi">10.1177/00202940241291282</pub-id>.</mixed-citation></ref>
<ref id="ref-7"><label>[7]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Jin</surname> <given-names>J</given-names></string-name>, <string-name><surname>Zhang</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Zhou</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Jin</surname> <given-names>M</given-names></string-name>, <string-name><surname>Yang</surname> <given-names>X</given-names></string-name>, <string-name><surname>Hu</surname> <given-names>F</given-names></string-name></person-group>. <article-title>Conflict-based search with D&#x002A; lite algorithm for robot path planning in unknown dynamic environments</article-title>. <source>Comput Electr Eng</source>. <year>2023</year>;<volume>105</volume>:<fpage>108473</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.compeleceng.2022.108473</pub-id>.</mixed-citation></ref>
<ref id="ref-8"><label>[8]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Yu</surname> <given-names>J</given-names></string-name>, <string-name><surname>Yang</surname> <given-names>M</given-names></string-name>, <string-name><surname>Zhao</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>X</given-names></string-name>, <string-name><surname>Bai</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Wu</surname> <given-names>J</given-names></string-name>, <etal>et al</etal></person-group>. <article-title>Path planning of unmanned surface vessel in an unknown environment based on improved D&#x002A;Lite algorithm</article-title>. <source>Ocean Eng</source>. <year>2022</year>;<volume>266</volume>:<fpage>112873</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.oceaneng.2022.112873</pub-id>.</mixed-citation></ref>
<ref id="ref-9"><label>[9]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Guo</surname> <given-names>H</given-names></string-name>, <string-name><surname>Li</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>H</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>C</given-names></string-name>, <string-name><surname>Zhang</surname> <given-names>J</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>T</given-names></string-name>, <etal>et al</etal></person-group>. <article-title>Path planning of greenhouse electric crawler tractor based on the improved A&#x002A; and DWA algorithms</article-title>. <source>Comput Electron Agric</source>. <year>2024</year>;<volume>227</volume>(<issue>1</issue>):<fpage>109596</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.compag.2024.109596</pub-id>.</mixed-citation></ref>
<ref id="ref-10"><label>[10]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Wang</surname> <given-names>H</given-names></string-name>, <string-name><surname>Lou</surname> <given-names>S</given-names></string-name>, <string-name><surname>Jing</surname> <given-names>J</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Liu</surname> <given-names>W</given-names></string-name>, <string-name><surname>Liu</surname> <given-names>T</given-names></string-name></person-group>. <article-title>The EBS-A&#x002A; algorithm: an improved A&#x002A; algorithm for path planning</article-title>. <source>PLoS One</source>. <year>2022</year>;<volume>17</volume>(<issue>2</issue>):<fpage>e0263841</fpage>. doi:<pub-id pub-id-type="doi">10.1371/journal.pone.0263841</pub-id>; <pub-id pub-id-type="pmid">35176092</pub-id></mixed-citation></ref>
<ref id="ref-11"><label>[11]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Tang</surname> <given-names>H</given-names></string-name>, <string-name><surname>Zhu</surname> <given-names>Q</given-names></string-name>, <string-name><surname>Shang</surname> <given-names>E</given-names></string-name>, <string-name><surname>Dai</surname> <given-names>B</given-names></string-name>, <string-name><surname>Hu</surname> <given-names>C</given-names></string-name></person-group>. <article-title>A reference path guided RRT&#x002A; method for the local path planning of UGVs</article-title>. In: <conf-name>Proceedings of the 2020 39th Chinese Control Conference (CCC); 2020 Jul 27&#x2013;29</conf-name>; <publisher-loc>Shenyang, China</publisher-loc>. p. <fpage>3904</fpage>&#x2013;<lpage>9</lpage>.</mixed-citation></ref>
<ref id="ref-12"><label>[12]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Zhou</surname> <given-names>X</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>X</given-names></string-name>, <string-name><surname>Xie</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Gao</surname> <given-names>J</given-names></string-name>, <string-name><surname>Li</surname> <given-names>F</given-names></string-name>, <string-name><surname>Gu</surname> <given-names>X</given-names></string-name></person-group>. <article-title>A Collision-free path planning approach based on rule guided lazy-PRM with repulsion field for gantry welding robots</article-title>. <source>Robot Auton Syst</source>. <year>2024</year>;<volume>174</volume>:<fpage>104633</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.robot.2024.104633</pub-id>.</mixed-citation></ref>
<ref id="ref-13"><label>[13]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Huang</surname> <given-names>J</given-names></string-name>, <string-name><surname>Wu</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Lin</surname> <given-names>X</given-names></string-name></person-group>. <article-title>Smooth JPS path planning and trajectory optimization method of mobile robot</article-title>. <source>Trans Chin Soc Agric Mach</source>. <year>2021</year>;<volume>52</volume>(<issue>2</issue>):<fpage>22</fpage>&#x2013;<lpage>30</lpage>.</mixed-citation></ref>
<ref id="ref-14"><label>[14]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>S&#x00E1;nchez-Ib&#x00E1;&#x00F1;ez</surname> <given-names>JR</given-names></string-name>, <string-name><surname>P&#x00E9;rez-Del-Pulgar</surname> <given-names>CJ</given-names></string-name>, <string-name><surname>Garc&#x00ED;a-Cerezo</surname> <given-names>A</given-names></string-name></person-group>. <article-title>Path planning for autonomous mobile robots: a review</article-title>. <source>Sensors</source>. <year>2021</year>;<volume>21</volume>(<issue>23</issue>):<fpage>7898</fpage>. doi:<pub-id pub-id-type="doi">10.3390/s21237898</pub-id>; <pub-id pub-id-type="pmid">34883899</pub-id></mixed-citation></ref>
<ref id="ref-15"><label>[15]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Zhang</surname> <given-names>W</given-names></string-name>, <string-name><surname>Xu</surname> <given-names>G</given-names></string-name>, <string-name><surname>Song</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>Y</given-names></string-name></person-group>. <article-title>An obstacle avoidance strategy for complex obstacles based on artificial potential field method</article-title>. <source>J Field Robot</source>. <year>2023</year>;<volume>40</volume>(<issue>5</issue>):<fpage>1231</fpage>&#x2013;<lpage>44</lpage>. doi:<pub-id pub-id-type="doi">10.1002/rob.22183</pub-id>.</mixed-citation></ref>
<ref id="ref-16"><label>[16]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Ugwoke</surname> <given-names>KC</given-names></string-name>, <string-name><surname>Nnanna</surname> <given-names>NA</given-names></string-name>, <string-name><surname>Abdullahi</surname> <given-names>SE</given-names></string-name></person-group>. <article-title>Simulation-based review of classical, heuristic, and metaheuristic path planning algorithms</article-title>. <source>Sci Rep</source>. <year>2025</year>;<volume>15</volume>(<issue>1</issue>):<fpage>12643</fpage>. doi:<pub-id pub-id-type="doi">10.1038/s41598-025-96614-2</pub-id>; <pub-id pub-id-type="pmid">40221514</pub-id></mixed-citation></ref>
<ref id="ref-17"><label>[17]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Telea</surname> <given-names>A</given-names></string-name></person-group>. <article-title>An image inpainting technique based on the fast marching method</article-title>. <source>J Graph Tools</source>. <year>2004</year>;<volume>9</volume>(<issue>1</issue>):<fpage>23</fpage>&#x2013;<lpage>34</lpage>. doi:<pub-id pub-id-type="doi">10.1080/10867651.2004.10487596</pub-id>.</mixed-citation></ref>
<ref id="ref-18"><label>[18]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Danielmeier</surname> <given-names>L</given-names></string-name>, <string-name><surname>Seitz</surname> <given-names>S</given-names></string-name>, <string-name><surname>Barz</surname> <given-names>I</given-names></string-name>, <string-name><surname>Hartmann</surname> <given-names>P</given-names></string-name>, <string-name><surname>Hartmann</surname> <given-names>M</given-names></string-name>, <string-name><surname>Moormann</surname> <given-names>D</given-names></string-name></person-group>. <article-title>Modified constrained wavefront expansion path planning algorithm for Tilt-Wing UAV</article-title>. In: <conf-name>Proceedings of the 2022 International Conference on Unmanned Aircraft Systems (ICUAS); 2022 Jun 21&#x2013;24</conf-name>; <publisher-loc>Dubrovnik, Croatia</publisher-loc>. p. <fpage>676</fpage>&#x2013;<lpage>85</lpage>.</mixed-citation></ref>
<ref id="ref-19"><label>[19]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Ding</surname> <given-names>B</given-names></string-name>, <string-name><surname>Xin</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Yin</surname> <given-names>H</given-names></string-name></person-group>. <article-title>Global smooth solutions of 2D quasilinear wave equations with higher-order null conditions and short pulse initial data</article-title>. <source>Sci China Math</source>. <year>2025</year>:<fpage>1</fpage>&#x2013;<lpage>70</lpage>. doi:<pub-id pub-id-type="doi">10.1007/s11425-024-2405-4</pub-id>.</mixed-citation></ref>
<ref id="ref-20"><label>[20]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Ibrahim</surname> <given-names>I</given-names></string-name>, <string-name><surname>Gillis</surname> <given-names>J</given-names></string-name>, <string-name><surname>Decr&#x00E9;</surname> <given-names>W</given-names></string-name>, <string-name><surname>Swevers</surname> <given-names>J</given-names></string-name></person-group>. <article-title>Exact wavefront propagation for globally optimal one-to-all path planning on 2D Cartesian grids</article-title>. <source>IEEE Robot Autom Lett</source>. <year>2024</year>;<volume>9</volume>(<issue>11</issue>):<fpage>9431</fpage>&#x2013;<lpage>7</lpage>. doi:<pub-id pub-id-type="doi">10.1109/LRA.2024.3460409</pub-id>.</mixed-citation></ref>
<ref id="ref-21"><label>[21]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Al-Mutib</surname> <given-names>K</given-names></string-name>, <string-name><surname>AlSulaiman</surname> <given-names>M</given-names></string-name>, <string-name><surname>Emaduddin</surname> <given-names>M</given-names></string-name>, <string-name><surname>Ramdane</surname> <given-names>H</given-names></string-name>, <string-name><surname>Mattar</surname> <given-names>E</given-names></string-name></person-group>. <article-title>D&#x002A; Lite based real-time multi-agent path planning in dynamic environments</article-title>. In: <conf-name>Proceedings of the International Conference on Computational Intelligence, Modelling and Simulation (CSSIM); 2011 Sep 20&#x2013;22</conf-name>; <publisher-loc>Washington, DC, USA</publisher-loc>. p. <fpage>170</fpage>&#x2013;<lpage>4</lpage>.</mixed-citation></ref>
<ref id="ref-22"><label>[22]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Mandava</surname> <given-names>RK</given-names></string-name>, <string-name><surname>Mrudul</surname> <given-names>K</given-names></string-name>, <string-name><surname>Vundavilli</surname> <given-names>PR</given-names></string-name></person-group>. <article-title>Dynamic motion planning algorithm for a biped robot using fast marching method hybridized with regression search</article-title>. <source>Acta Polytech Hung</source>. <year>2019</year>;<volume>16</volume>:<fpage>189</fpage>&#x2013;<lpage>208</lpage>.</mixed-citation></ref>
<ref id="ref-23"><label>[23]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Ali</surname> <given-names>MA</given-names></string-name>, <string-name><surname>Mailah</surname> <given-names>M</given-names></string-name>, <string-name><surname>Hing</surname> <given-names>TH</given-names></string-name></person-group>. <article-title>Implementation of laser simulator search graph for detection and path planning in roundabout environments</article-title>. <source>WSEAS Trans Signal Process</source>. <year>2014</year>;<volume>10</volume>:<fpage>118</fpage>&#x2013;<lpage>26</lpage>.</mixed-citation></ref>
<ref id="ref-24"><label>[24]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Ali</surname> <given-names>MAH</given-names></string-name>, <string-name><surname>Mekhilef</surname> <given-names>S</given-names></string-name>, <string-name><surname>Yusoff</surname> <given-names>N</given-names></string-name>, <string-name><surname>Razak</surname> <given-names>BA</given-names></string-name></person-group>. <article-title>Laser simulator logic: a novel inference system for highly overlapping of linguistic variable in membership functions</article-title>. <source>J King Saud Univ Comput Inf Sci</source>. <year>2022</year>;<volume>34</volume>(<issue>10</issue>):<fpage>8019</fpage>&#x2013;<lpage>40</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.jksuci.2022.07.017</pub-id>.</mixed-citation></ref>
<ref id="ref-25"><label>[25]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Muhammad</surname> <given-names>A</given-names></string-name>, <string-name><surname>Ali</surname> <given-names>MAH</given-names></string-name>, <string-name><surname>Turaev</surname> <given-names>S</given-names></string-name>, <string-name><surname>Abdulghafor</surname> <given-names>R</given-names></string-name>, <string-name><surname>Shanono</surname> <given-names>IH</given-names></string-name>, <string-name><surname>Alzaid</surname> <given-names>Z</given-names></string-name>, <etal>et al</etal></person-group>. <article-title>A generalized laser simulator algorithm for mobile robot path planning with obstacle avoidance</article-title>. <source>Sensors</source>. <year>2022</year>;<volume>22</volume>(<issue>21</issue>):<fpage>8177</fpage>. doi:<pub-id pub-id-type="doi">10.3390/s22218177</pub-id>; <pub-id pub-id-type="pmid">36365875</pub-id></mixed-citation></ref>
<ref id="ref-26"><label>[26]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Ali</surname> <given-names>MA</given-names></string-name>, <string-name><surname>Mailah</surname> <given-names>M</given-names></string-name></person-group>. <article-title>Laser simulator: a novel search graph-based path planning approach</article-title>. <source>Int J Adv Rob Syst</source>. <year>2018</year>;<volume>15</volume>(<issue>5</issue>):<fpage>172988141880472</fpage>. doi:<pub-id pub-id-type="doi">10.1177/1729881418804726</pub-id>.</mixed-citation></ref>
<ref id="ref-27"><label>[27]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Mirebeau</surname> <given-names>JM</given-names></string-name>, <string-name><surname>Portegies</surname> <given-names>J</given-names></string-name></person-group>. <article-title>Hamiltonian fast marching: a numerical solver for anisotropic and non-holonomic eikonal PDEs</article-title>. <source>Image Process Line</source>. <year>2019</year>;<volume>9</volume>:<fpage>47</fpage>&#x2013;<lpage>93</lpage>. doi:<pub-id pub-id-type="doi">10.5201/ipol.2019.227</pub-id>.</mixed-citation></ref>
<ref id="ref-28"><label>[28]</label><mixed-citation publication-type="book"><person-group person-group-type="author"><string-name><surname>Tryggvason</surname> <given-names>G</given-names></string-name>, <string-name><surname>Scardovelli</surname> <given-names>R</given-names></string-name>, <string-name><surname>Zaleski</surname> <given-names>S</given-names></string-name></person-group>. <source>Direct numerical simulations of gas-liquid multiphase flows</source>. <publisher-loc>Cambridge, UK</publisher-loc>: <publisher-name>Cambridge University Press</publisher-name>; <year>2011</year>.</mixed-citation></ref>
<ref id="ref-29"><label>[29]</label><mixed-citation publication-type="book"><person-group person-group-type="author"><string-name><surname>Sethian</surname> <given-names>JA</given-names></string-name>, <collab>University of California, Berkeley</collab></person-group>. <source>Level set methods and fast marching methods</source>. <edition>2nd ed</edition>. <publisher-loc>Cambridge, UK</publisher-loc>: <publisher-name>Cambridge University Press</publisher-name>; <year>1999</year>.</mixed-citation></ref>
</ref-list>
</back></article>


















