<?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">CMES</journal-id>
<journal-id journal-id-type="nlm-ta">CMES</journal-id>
<journal-id journal-id-type="publisher-id">CMES</journal-id>
<journal-title-group>
<journal-title>Computer Modeling in Engineering &#x0026; Sciences</journal-title>
</journal-title-group>
<issn pub-type="epub">1526-1506</issn>
<issn pub-type="ppub">1526-1492</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">46363</article-id>
<article-id pub-id-type="doi">10.32604/cmes.2024.046363</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Article</subject>
</subj-group>
</article-categories>
<title-group>
<article-title>An Improved Bounded Conflict-Based Search for Multi-AGV Pathfinding in Automated Container Terminals</article-title>
<alt-title alt-title-type="left-running-head">An Improved Bounded Conflict-Based Search for Multi-AGV Pathfinding in Automated Container Terminals</alt-title>
<alt-title alt-title-type="right-running-head">An Improved Bounded Conflict-Based Search for Multi-AGV Pathfinding in Automated Container Terminals</alt-title>
</title-group>
<contrib-group>
<contrib id="author-1" contrib-type="author">
<name name-style="western"><surname>Zhou</surname><given-names>Xinci</given-names></name></contrib>
<contrib id="author-2" contrib-type="author" corresp="yes">
<name name-style="western"><surname>Zhu</surname><given-names>Jin</given-names></name><email>jinzhu@shmtu.edu.cn</email></contrib>
<aff><institution>Shanghai Maritime University, Logistics Science and Engineering Research Institute</institution>, <addr-line>Shanghai, 200000</addr-line>, <country>China</country></aff>
</contrib-group>
<author-notes>
<corresp id="cor1"><label>&#x002A;</label>Corresponding Author: Jin Zhu. Email: <email>jinzhu@shmtu.edu.cn</email></corresp>
</author-notes>
<pub-date date-type="collection" publication-format="electronic"><year>2024</year></pub-date>
<pub-date date-type="pub" publication-format="electronic"><day>11</day><month>3</month><year>2024</year></pub-date>
<volume>139</volume>
<issue>3</issue>
<fpage>2705</fpage>
<lpage>2727</lpage>
<history>
<date date-type="received"><day>27</day><month>9</month><year>2023</year>
</date>
<date date-type="accepted"><day>06</day><month>12</month><year>2023</year>
</date>
</history>
<permissions>
<copyright-statement>&#x00A9; 2024 Zhou and Zhu</copyright-statement>
<copyright-year>2024</copyright-year>
<copyright-holder>Zhou and Zhu</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_CMES_46363.pdf"></self-uri>
<abstract>
<p>As the number of automated guided vehicles (AGVs) within automated container terminals (ACT) continues to rise, conflicts have become more frequent. Addressing point and edge conflicts of AGVs, a multi-AGV conflict-free path planning model has been formulated to minimize the total path length of AGVs between shore bridges and yards. For larger terminal maps and complex environments, the grid method is employed to model AGVs&#x2019; road networks. An improved bounded conflict-based search (IBCBS) algorithm tailored to ACT is proposed, leveraging the binary tree principle to resolve conflicts and employing focal search to expand the search range. Comparative experiments involving 60 AGVs indicate a reduction in computing time by 37.397% to 64.06% while maintaining the over cost within 1.019%. Numerical experiments validate the proposed algorithm&#x2019;s efficacy in enhancing efficiency and ensuring solution quality.</p>
</abstract>
<kwd-group kwd-group-type="author">
<kwd>Automated terminals</kwd>
<kwd>multi-AGV</kwd>
<kwd>multi-agent path finding (MAPF)</kwd>
<kwd>conflict based search (CBS)</kwd>
<kwd>AGV path planning</kwd>
</kwd-group>
<funding-group>
<award-group id="awg1">
<funding-source>National Natural Science Foundation of China</funding-source>
<award-id>62073212</award-id>
</award-group>
<award-group id="awg2">
<funding-source>Shanghai Science and Technology Commission</funding-source>
<award-id>23ZR1426600</award-id>
</award-group>
</funding-group>
</article-meta>
</front>
<body>
<sec id="s1">
<label>1</label>
<title>Introduction</title>
<p>Automated guided vehicles (AGVs) are the primary tool for container transport and crucial pieces of equipment for horizontal transportation operations in automated terminals. The number of AGVs is growing, which also causes issues like waiting, conflict, and deadlock in the operation of the equipment. These issues are caused by manual operation, large-scale operation, and the rising difficulty of intelligent terminals. At the level of automated terminals, increasing AGV operating speed is a critical issue that must be resolved since it has an impact on the efficiency of AGV transportation.</p>
<p>In various scenarios, research has been conducted on challenges related to multi-AGV path planning, spanning warehouses [<xref ref-type="bibr" rid="ref-1">1</xref>], electric vehicles [<xref ref-type="bibr" rid="ref-2">2</xref>], and terminals [<xref ref-type="bibr" rid="ref-3">3</xref>]. It closely addresses the challenges of job dispatch, scheduling, and routing. For warehouses and workshops, Yuan et al. [<xref ref-type="bibr" rid="ref-4">4</xref>] proposed a bi-level path planning algorithm employing an improved A&#x002A; method at the first level and a rapidly exploring random tree approach at the second level to enhance search effectiveness. Wang et al. [<xref ref-type="bibr" rid="ref-5">5</xref>] suggested using a heuristic ant colony algorithm to solve the model, demonstrating its efficacy. Fazlollahtabar et al. [<xref ref-type="bibr" rid="ref-6">6</xref>] utilized a modified network simplex algorithm (NSA) to optimize the model. Ivica et al. [<xref ref-type="bibr" rid="ref-7">7</xref>] based their approach on a vehicle priority scheme to resolve conflicts. Chen et al. [<xref ref-type="bibr" rid="ref-8">8</xref>] utilized the ant agent optimized by a repulsive potential field to improve collision avoidance, transportation distance, and efficiency. Li et al. [<xref ref-type="bibr" rid="ref-9">9</xref>] proposed a novel quantum ant colony optimization algorithm that combines the advantages of various methods. Choi et al. [<xref ref-type="bibr" rid="ref-10">10</xref>] proposed a QMIX-based scheme for cooperative path control of multiple AGVs. For automated container terminals, Guo et al. [<xref ref-type="bibr" rid="ref-11">11</xref>] proposed an improved Dijkstra algorithm and an enhanced acceleration control method to solve the path planning problem for 42 AGVs. Hu et al. [<xref ref-type="bibr" rid="ref-12">12</xref>] combined the A&#x002A; algorithm with a time window principle to plan each AGV&#x2019;s path, with a maximum of 12 AGVs. Zhong et al. [<xref ref-type="bibr" rid="ref-13">13</xref>] validated the effectiveness of a hybrid genetic algorithm particle swarm optimization (HGA-PSO) in solving path planning problems for 24 AGVs. Zhong et al. [<xref ref-type="bibr" rid="ref-14">14</xref>] utilized a priority-based speed control strategy in conjunction with the Dijkstra depth-first search algorithm to solve the model. The AGV scheduling problem has been established as an non-deterministic polynomial (NP)-hard problem [<xref ref-type="bibr" rid="ref-15">15</xref>]. Luo et al. [<xref ref-type="bibr" rid="ref-16">16</xref>] proposed a genetic algorithm to obtain a mixed-integer linear optimization model (MILP), considering up to 10 AGVs. In existing literature, single-AGV path planning is often applied to solve multi-AGV path planning in automated container terminals (ACT). Simple traffic rules are employed when two AGVs might collide. However, as the number or density of robots increases, congestion occurs, leading to decreased system efficiency. In contrast, Multi-agent Path Finding (MAPF) plans paths for all AGVs simultaneously, considering various collision possibilities. Limited literature exists on multi-AGV path planning in ACT using the MAPF method.</p>
<p>MAPF problems involve finding the optimal set of paths from the starting position to the target position for multiple agents without conflicts. These problems can be divided into two classes: optimal and sub-optimal solvers. One approach to solving MAPF is by reducing it to other problems. For instance, Ma et al. [<xref ref-type="bibr" rid="ref-17">17</xref>] introduced a hierarchical algorithm within a Markov decision processes framework and utilized Integer Linear Programming (ILP) [<xref ref-type="bibr" rid="ref-18">18</xref>] and Answer Set Programming (ASP) [<xref ref-type="bibr" rid="ref-19">19</xref>]. Andreychuk et al. [<xref ref-type="bibr" rid="ref-20">20</xref>] used a branch-and-cut-and-price method to address the issue, incorporating a shortest-path pricing problem for locating paths for each agent independently and incorporating thirteen types of constraints to resolve various conflict situations. However, these methods are less efficient, especially for the sum of the cost function. While the optimal solver is preferable for small-scale scenarios, the NP-hard nature of the problem leads to an increased state space as the number of agents grows, making sub-optimal solvers more suitable.</p>
<p>For optimal solvers, Goldenberg et al. [<xref ref-type="bibr" rid="ref-21">21</xref>] presented another A&#x002A; variant called enhanced partial expansion A&#x002A; (EPEA&#x002A;). Sharon et al. [<xref ref-type="bibr" rid="ref-22">22</xref>] proposed an increasing cost tree search (ICTS) algorithm that transforms MAPF into a set of faster-to-solve problems. Sharon et al. [<xref ref-type="bibr" rid="ref-23">23</xref>] introduced the conflict-based search (CBS), dividing the MAPF problem into two levels: a low level to solve single-agent pathfinding problems and a high level using a conflict tree to resolve conflicts between different agents. Regarding sub-optimal solvers, most are unbounded and do not guarantee the quality of the returned path. Pearl et al. [<xref ref-type="bibr" rid="ref-24">24</xref>] introduced three sub-optimal algorithms, including focal search, which avoids excessive excellence in A&#x002A;, enhancing algorithm efficiency within bounded sub-optimality. The extension of CBS to greedy conflict-based search (GCBS) [<xref ref-type="bibr" rid="ref-25">25</xref>] uses greedy best-first search to relax high-level and low-level search. However, the absence of time and bounded limits often leads to timeouts or excessively large solution sizes. Barer et al. [<xref ref-type="bibr" rid="ref-26">26</xref>] proposed Bounded CBS (BCBS), utilizing focal search, and Enhanced CBS (ECBS), which employs an open list. ECBS tends to get caught in local searches and lacks guaranteed efficiency, whereas BCBS offers more flexibility to adjust the bounded depth and search strategy according to the model. It generally avoids expanding too many nodes in the search, particularly in ACT scenarios with lower complexity or fewer conflicts.</p>
<p>The multi-AGV conflict-free path planning challenge for ACT is referred to in this work as the MAPF problem. An improved bounded conflict-based search (IBCBS) was used to plan the AGVs&#x2019; paths in automated terminals to reduce the overall path length of AGVs between the shore bridge and the yard while considering point and edge conflict between AGVs. It creates an AGV road network utilizing the grid method. The following are the primary contributions made to this paper:
<list list-type="bullet">
<list-item>
<p>Enabling large-scale AGVs on automated terminals to use conflict-free route planning.</p></list-item>
<list-item>
<p>Statute of automated terminals using MAPF and grid method modeling of terminal maps.</p></list-item>
<list-item>
<p>Verifies the efficacy of the algorithm using a bounded conflict-based search that shortens calculation time, maintains quality within reasonable bounds, and speeds up computation.</p></list-item>
</list></p>
<p>The remaining portions of this essay are listed below. <xref ref-type="sec" rid="s2">Section 2</xref> describes the issue. <xref ref-type="sec" rid="s3">Section 3</xref> outlines the model. <xref ref-type="sec" rid="s4">Section 4</xref> details the method. <xref ref-type="sec" rid="s5">Section 5</xref> presents the findings and results of our simulations. Finally, conclusions are drawn in <xref ref-type="sec" rid="s6">Section 6</xref>.</p>
</sec>
<sec id="s2">
<label>2</label>
<title>Problem Description and Design</title>
<sec id="s2_1">
<label>2.1</label>
<title>AGV Road Network Modelling</title>
<p>The model uses a yard plane that is perpendicular to the quay shoreline, ensuring that no horizontal transportation equipment enters the box area and transfers operation with yards at both ends of the box area. <xref ref-type="fig" rid="fig-1">Fig. 1</xref> depicts the layout of the automated quay with 4 shore bridges and 12 yards built up. In this paper, a two-way single-lane path is chosen, and the AGV can travel to the nearby passable four nodes or wait in place. The grey obstacle designates the yard buffer region, which is regarded as an obstruction while the AGV conducts horizontal transportation operations.</p>
<fig id="fig-1">
<label>Figure 1</label>
<caption>
<title>The layout of automated container terminals</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMES_46363-fig-1.tif"/>
</fig>
<p>The automated terminal&#x2019;s AGV path planning system is a sophisticated system made up of numerous components, including shore bridges, yards, buffer zones, magnetic pegs, etc. The AGV horizontal transport area is taken into consideration, and the map is modeled using the grid method. Cells are used to represent the obstacle information of the AGV horizontal transport area, and their weights are Boolean variables where passable nodes are represented by 0 and impassable nodes by 1. The obstacle cells and the AGV cannot overlap.</p>
</sec>
<sec id="s2_2">
<label>2.2</label>
<title>Communication Interaction Protocols</title>
<p>A centralized control strategy is employed to discover a solution for all AGVs using a single central processing unit for horizontal transport operations at terminals with changeable surroundings. A wireless communication system, such as a communication interaction protocol between AGVs and the console, is required to implement communication between AGVs due to their constant movement and variety of horizontal transport tasks. The AGV sends the task starting point, the task deadline, and the following task receipt. Then, the AGV communicates the task start point, task finish point, and AGV cart number to the console, which then sends each cart the determined conflict-free path. This paper chooses user datagram protocol (UDP) wireless network communication, sets the network IP addresses of the AGV and console in the same IP network segment, and uses a wireless Wi-Fi signal to connect to the router to realize the communication between them while taking the cost of communication and the convenience of task operation into account. In the four corners and the center, a total of five WiFi access points (APs) are placed, using dual-band (2.4 and 5 GHz) APs, and installed at a height of 2&#x2013;3 m above the ground to achieve complete WiFi coverage.</p>
</sec>
<sec id="s2_3">
<label>2.3</label>
<title>Multi-AGV Conflict Avoidance Strategy</title>
<p>1. Intersection conflict;</p>
<p>The intersection conflict is produced, as seen in <xref ref-type="fig" rid="fig-2">Fig. 2a</xref>, when <inline-formula id="ieqn-1"><mml:math id="mml-ieqn-1"><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> move vertically toward the intersecting grid <inline-formula id="ieqn-2"><mml:math id="mml-ieqn-2"><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> and reach the same grid point <inline-formula id="ieqn-3"><mml:math id="mml-ieqn-3"><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> at once at time point <inline-formula id="ieqn-4"><mml:math id="mml-ieqn-4"><mml:mi>t</mml:mi></mml:math></inline-formula>. Add constraints <inline-formula id="ieqn-5"><mml:math id="mml-ieqn-5"><mml:mrow><mml:mo>(</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> for <inline-formula id="ieqn-6"><mml:math id="mml-ieqn-6"><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> and <inline-formula id="ieqn-7"><mml:math id="mml-ieqn-7"><mml:mrow><mml:mo>(</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> for <inline-formula id="ieqn-8"><mml:math id="mml-ieqn-8"><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula>, respectively, to this conflict binary tree node and treat it as a point conflict <inline-formula id="ieqn-9"><mml:math id="mml-ieqn-9"><mml:mrow><mml:mo>(</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>.</p>
<fig id="fig-2">
<label>Figure 2</label>
<caption>
<title>AGV main conflict types (a) intersection conflict; (b) phase conflict; (c) exchange conflict; (d) AGV failure</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMES_46363-fig-2.tif"/>
</fig>
<p>2. Phase conflict;</p>
<p>A phase conflict develops when <inline-formula id="ieqn-10"><mml:math id="mml-ieqn-10"><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> and <inline-formula id="ieqn-11"><mml:math id="mml-ieqn-11"><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> travel to the same grid node <inline-formula id="ieqn-12"><mml:math id="mml-ieqn-12"><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> from opposing directions and arrive at the same grid point <inline-formula id="ieqn-13"><mml:math id="mml-ieqn-13"><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> at the same time at time point t, as shown in <xref ref-type="fig" rid="fig-2">Fig. 2b</xref>. As with the intersection conflict, it is referred to as a point conflict <inline-formula id="ieqn-14"><mml:math id="mml-ieqn-14"><mml:mrow><mml:mo>(</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> and constraints are added to <inline-formula id="ieqn-15"><mml:math id="mml-ieqn-15"><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo>(</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> and <inline-formula id="ieqn-16"><mml:math id="mml-ieqn-16"><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo>(</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> on the conflict binary tree nodes, respectively.</p>
<p>3. Exchange conflict;</p>
<p>As seen in <xref ref-type="fig" rid="fig-2">Fig. 2c</xref>, an exchange conflict occurs when <inline-formula id="ieqn-17"><mml:math id="mml-ieqn-17"><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula>, <inline-formula id="ieqn-18"><mml:math id="mml-ieqn-18"><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> move in opposite directions to exchange the positions of grid points <inline-formula id="ieqn-19"><mml:math id="mml-ieqn-19"><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula>, <inline-formula id="ieqn-20"><mml:math id="mml-ieqn-20"><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> at time point t. Think of it as an edge conflict <inline-formula id="ieqn-21"><mml:math id="mml-ieqn-21"><mml:mrow><mml:mo>(</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, and apply constraints to<inline-formula id="ieqn-22"><mml:math id="mml-ieqn-22"><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo>(</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> and <inline-formula id="ieqn-23"><mml:math id="mml-ieqn-23"><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo>(</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> on the conflict binary tree nodes, respectively.</p>
<p>4. AGV failure.</p>
<p>As seen in <xref ref-type="fig" rid="fig-2">Fig. 2d</xref>, the equipment must wait while the faulty <inline-formula id="ieqn-24"><mml:math id="mml-ieqn-24"><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> stops at the grid point <inline-formula id="ieqn-25"><mml:math id="mml-ieqn-25"><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> and the planned path <inline-formula id="ieqn-26"><mml:math id="mml-ieqn-26"><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> crosses the fault point. This model does not take into account the possibility of an AGV conflict due to a fault.</p>
<p>On the automated terminal, both point conflicts and edge conflicts occur. After determining the shortest path for each AGV using the Manhattan distance-based A &#x002A; algorithm, the search proceeds on the conflict binomial tree. AGV mobility is constrained by each node on the conflict tree, comprising a set of constraints (<inline-formula id="ieqn-27"><mml:math id="mml-ieqn-27"><mml:mi>N</mml:mi><mml:mo>.</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:mi>r</mml:mi><mml:mi>a</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi><mml:mi>t</mml:mi><mml:mi>s</mml:mi></mml:math></inline-formula>), a solution (<inline-formula id="ieqn-28"><mml:math id="mml-ieqn-28"><mml:mi>N</mml:mi><mml:mo>.</mml:mo><mml:mi>s</mml:mi><mml:mi>o</mml:mi><mml:mi>l</mml:mi><mml:mi>u</mml:mi><mml:mi>t</mml:mi><mml:mi>i</mml:mi><mml:mi>o</mml:mi><mml:mi>n</mml:mi></mml:math></inline-formula>), and a total cost (<inline-formula id="ieqn-29"><mml:math id="mml-ieqn-29"><mml:mi>N</mml:mi><mml:mo>.</mml:mo><mml:mi>c</mml:mi><mml:mi>o</mml:mi><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:math></inline-formula>).</p>
<p><xref ref-type="fig" rid="fig-3">Fig. 3</xref> illustrates an instance of AGV conflict at the terminal. Each AGV must plan its entire route from the shore bridge to the stacking yard. In the diagram, and represent two shore bridges <inline-formula id="ieqn-30"><mml:math id="mml-ieqn-30"><mml:msub><mml:mi>S</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula> and <inline-formula id="ieqn-31"><mml:math id="mml-ieqn-31"><mml:msub><mml:mi>S</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula>, while <inline-formula id="ieqn-32"><mml:math id="mml-ieqn-32"><mml:msub><mml:mi>G</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula> and <inline-formula id="ieqn-33"><mml:math id="mml-ieqn-33"><mml:msub><mml:mi>G</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula> denote two stacking areas. Both AGVs&#x2019; routes have lengths of 3: <inline-formula id="ieqn-34"><mml:math id="mml-ieqn-34"><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>&#x003A;</mml:mo><mml:msub><mml:mi>S</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>A</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>D</mml:mi><mml:mo>,</mml:mo><mml:msub><mml:mi>G</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>;</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>&#x003A;</mml:mo><mml:msub><mml:mi>S</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>B</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>D</mml:mi><mml:mo>,</mml:mo><mml:msub><mml:mi>G</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula>. They simultaneously reach grid point D at time step <inline-formula id="ieqn-35"><mml:math id="mml-ieqn-35"><mml:msub><mml:mi>t</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula>, resulting in a conflict. The decision <inline-formula id="ieqn-36"><mml:math id="mml-ieqn-36"><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula> is for to wait until a certain time point, and the AGV with the shortest total path length is designated to apply the restriction. Consequently, <inline-formula id="ieqn-37"><mml:math id="mml-ieqn-37"><mml:mi>N</mml:mi><mml:mo>.</mml:mo><mml:mi>s</mml:mi><mml:mi>o</mml:mi><mml:mi>l</mml:mi><mml:mi>u</mml:mi><mml:mi>t</mml:mi><mml:mi>i</mml:mi><mml:mi>o</mml:mi><mml:mi>n</mml:mi></mml:math></inline-formula> &#x003D; 7 emerges as the optimal solution in this scenario.</p>
<fig id="fig-3">
<label>Figure 3</label>
<caption>
<title>AGV conflict example</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMES_46363-fig-3.tif"/>
</fig>
<p><xref ref-type="fig" rid="fig-4">Fig. 4</xref> displays the related conflict binary tree. The initial paths of <inline-formula id="ieqn-38"><mml:math id="mml-ieqn-38"><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula> and <inline-formula id="ieqn-39"><mml:math id="mml-ieqn-39"><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula> from the shore bridge to the heap and the yard are calculated using the underlying A&#x002A; algorithm as <inline-formula id="ieqn-40"><mml:math id="mml-ieqn-40"><mml:mi>N</mml:mi><mml:mo>.</mml:mo><mml:mi>s</mml:mi><mml:mi>o</mml:mi><mml:mi>l</mml:mi><mml:mi>u</mml:mi><mml:mi>t</mml:mi><mml:mi>i</mml:mi><mml:mi>o</mml:mi><mml:mi>n</mml:mi><mml:mo>=</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>&#x003A;</mml:mo><mml:msub><mml:mi>S</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>A</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>D</mml:mi><mml:mo>,</mml:mo><mml:msub><mml:mi>G</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo fence="false" stretchy="false">}</mml:mo><mml:mo>,</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>&#x003A;</mml:mo><mml:msub><mml:mi>S</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>B</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>D</mml:mi><mml:mo>,</mml:mo><mml:msub><mml:mi>G</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>}</mml:mo></mml:mrow></mml:math></inline-formula>; this results in <inline-formula id="ieqn-41"><mml:math id="mml-ieqn-41"><mml:mi>N</mml:mi><mml:mo>.</mml:mo><mml:mi>c</mml:mi><mml:mi>o</mml:mi><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:math></inline-formula> &#x003D; 6. The root node of the conflict tree corresponds to an empty constraint set, denoted as <inline-formula id="ieqn-42"><mml:math id="mml-ieqn-42"><mml:mi>N</mml:mi><mml:mo>.</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:mi>r</mml:mi><mml:mi>a</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi><mml:mi>t</mml:mi><mml:mi>s</mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mi>&#x03D5;</mml:mi><mml:mo>}</mml:mo></mml:mrow></mml:math></inline-formula>. The root node is where this data is kept. A conflict <inline-formula id="ieqn-43"><mml:math id="mml-ieqn-43"><mml:mrow><mml:mo>(</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>D</mml:mi><mml:mo>,</mml:mo><mml:msub><mml:mi>t</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> occurs when both AGVs arrive at the raster point D at the time <inline-formula id="ieqn-44"><mml:math id="mml-ieqn-44"><mml:msub><mml:mi>t</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula> during the verification of the supplied solution. Hence, the target node is not the root node.</p>
<fig id="fig-4">
<label>Figure 4</label>
<caption>
<title>Conflict tree example</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMES_46363-fig-4.tif"/>
</fig>
<p>Two new child nodes are created to resolve the dispute. In contrast to the right child node, which adds constraints <inline-formula id="ieqn-45"><mml:math id="mml-ieqn-45"><mml:mi>N</mml:mi><mml:mo>.</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:mi>r</mml:mi><mml:mi>a</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi><mml:mi>t</mml:mi><mml:mi>s</mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mrow><mml:mo>(</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>D</mml:mi><mml:mo>,</mml:mo><mml:msub><mml:mi>t</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow><mml:mo>}</mml:mo></mml:mrow></mml:math></inline-formula>, the left child node adds constraints <inline-formula id="ieqn-46"><mml:math id="mml-ieqn-46"><mml:mi>N</mml:mi><mml:mo>.</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:mi>r</mml:mi><mml:mi>a</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi><mml:mi>t</mml:mi><mml:mi>s</mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mrow><mml:mo>(</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>D</mml:mi><mml:mo>,</mml:mo><mml:msub><mml:mi>t</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow><mml:mo>}</mml:mo></mml:mrow></mml:math></inline-formula>. To determine the best path while adhering to the new constraint, the left child node&#x2019;s underlying A&#x002A; search is invoked. To execute this, <inline-formula id="ieqn-47"><mml:math id="mml-ieqn-47"><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula> must wait for a time point at <inline-formula id="ieqn-48"><mml:math id="mml-ieqn-48"><mml:msub><mml:mi>A</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula> or <inline-formula id="ieqn-49"><mml:math id="mml-ieqn-49"><mml:msub><mml:mi>S</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula>, after which its new path becomes: <inline-formula id="ieqn-50"><mml:math id="mml-ieqn-50"><mml:mrow><mml:mo>{</mml:mo><mml:msub><mml:mi>S</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>A</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>A</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>D</mml:mi><mml:mo>,</mml:mo><mml:msub><mml:mi>G</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>}</mml:mo></mml:mrow></mml:math></inline-formula>, whereas <inline-formula id="ieqn-51"><mml:math id="mml-ieqn-51"><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula>&#x2019;s path in the left child node remains unchanged. The total cost for the left child node <inline-formula id="ieqn-52"><mml:math id="mml-ieqn-52"><mml:mi>N</mml:mi><mml:mo>.</mml:mo><mml:mi>c</mml:mi><mml:mi>o</mml:mi><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:math></inline-formula> is 7.</p>
<p>Similarly, in creating the appropriate child node, the cost for Node N is 7. The OPEN node contains both child nodes. The left child node, which exhibits the lowest cost, is selected for expansion in the subsequent iteration of the while loop, confirming the underlying path. The left child node is identified as the target node because no conflict exists, making its solution <inline-formula id="ieqn-53"><mml:math id="mml-ieqn-53"><mml:mi>N</mml:mi><mml:mo>.</mml:mo><mml:mi>s</mml:mi><mml:mi>o</mml:mi><mml:mi>l</mml:mi><mml:mi>u</mml:mi><mml:mi>t</mml:mi><mml:mi>i</mml:mi><mml:mi>o</mml:mi><mml:mi>n</mml:mi></mml:math></inline-formula> the optimal one for this particular dock conflict case.</p>
</sec>
</sec>
<sec id="s3">
<label>3</label>
<title>Mathematical Model</title>
<sec id="s3_1">
<label>3.1</label>
<title>Assumptions</title>
<p>1. The shore bridge and yard are located in a fixed and well-known location, and there is one shore bridge for each section of the yard box;</p>
<p>2. Every AGV has an identical type definition;</p>
<p>3. The AGV runs at a steady pace, even while turning;</p>
<p>4. Without taking into account the impact of variables like failure, weather, and electricity while AGVs are being driven;</p>
<p>5. The idle AGV parking space is built up as a static obstruction in the buffer zone between the shore bridge and the yard, making it impossible for the AGV to move through when performing horizontal transportation operations;</p>
<p>6. AGVs can load and unload containers quickly between the yard and the beach bridge;</p>
<p>7. Every AGV grid route is accessible from both directions;</p>
<p>8. Several AGVs may be permitted to occupy the grid at the shore bridge, but only one AGV is permitted to occupy each grid at any time point.</p>
</sec>
<sec id="s3_2">
<label>3.2</label>
<title>Variable Setting</title>
<p>In representing the path network of AGVs in the horizontal transport area of the automated terminal, the path network of AGVs is represented by the <inline-formula id="ieqn-54"><mml:math id="mml-ieqn-54"><mml:mi>G</mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mo>(</mml:mo><mml:mi>V</mml:mi><mml:mo>,</mml:mo><mml:mi>E</mml:mi><mml:mo>,</mml:mo><mml:mi>o</mml:mi><mml:mi>b</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> directed weighted graph. where <inline-formula id="ieqn-55"><mml:math id="mml-ieqn-55"><mml:mi>V</mml:mi></mml:math></inline-formula> denotes the set of all node numbers of the AGV grid graph on the automated terminal, <inline-formula id="ieqn-56"><mml:math id="mml-ieqn-56"><mml:mi>V</mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo stretchy="false">)</mml:mo><mml:mo>,</mml:mo><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo stretchy="false">)</mml:mo><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>,</mml:mo><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula>, where <inline-formula id="ieqn-57"><mml:math id="mml-ieqn-57"><mml:mi>n</mml:mi><mml:mo>&#x00D7;</mml:mo><mml:mi>n</mml:mi></mml:math></inline-formula> denotes the number of grids, and <inline-formula id="ieqn-58"><mml:math id="mml-ieqn-58"><mml:mi>E</mml:mi></mml:math></inline-formula> is the set of edges of <inline-formula id="ieqn-59"><mml:math id="mml-ieqn-59"><mml:mi>V</mml:mi></mml:math></inline-formula>, which denotes the length corresponding to each <inline-formula id="ieqn-60"><mml:math id="mml-ieqn-60"><mml:mi>V</mml:mi></mml:math></inline-formula>. <inline-formula id="ieqn-61"><mml:math id="mml-ieqn-61"><mml:mi>o</mml:mi><mml:mi>b</mml:mi></mml:math></inline-formula>denotes the set of obstacle coordinates <inline-formula id="ieqn-62"><mml:math id="mml-ieqn-62"><mml:mi>o</mml:mi><mml:mi>b</mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo stretchy="false">)</mml:mo><mml:mo>,</mml:mo><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo stretchy="false">)</mml:mo><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>,</mml:mo><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula>. Other variables are set as shown in <xref ref-type="table" rid="table-1">Table 1</xref>.</p>
<table-wrap id="table-1">
<label>Table 1</label>
<caption>
<title>Variables table</title>
</caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
<col align="left"/>
</colgroup>
<thead valign="top">
<tr>
<th>Variable name</th>
<th>Definition</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td><inline-formula id="ieqn-63"><mml:math id="mml-ieqn-63"><mml:mrow><mml:mtext>L</mml:mtext></mml:mrow></mml:math></inline-formula></td>
<td>The length of the AGV equipment</td>
</tr>
<tr>
<td><inline-formula id="ieqn-64"><mml:math id="mml-ieqn-64"><mml:mrow><mml:mtext>g</mml:mtext></mml:mrow></mml:math></inline-formula></td>
<td>The length of each grid</td>
</tr>
<tr>
<td><inline-formula id="ieqn-65"><mml:math id="mml-ieqn-65"><mml:mrow><mml:mtext>v</mml:mtext></mml:mrow></mml:math></inline-formula></td>
<td>The average speed of the AGVs during operation</td>
</tr>
<tr>
<td><inline-formula id="ieqn-66"><mml:math id="mml-ieqn-66"><mml:mrow><mml:mtext>T</mml:mtext></mml:mrow></mml:math></inline-formula></td>
<td>The time is taken by all AGVs to complete the task</td>
</tr>
<tr>
<td>K</td>
<td>The number of AGVs</td>
</tr>
<tr>
<td><inline-formula id="ieqn-67"><mml:math id="mml-ieqn-67"><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:math></inline-formula></td>
<td>The number of AGV conflicts using the underlying algorithm, j &#x003C;&#x003D; k</td>
</tr>
<tr>
<td><inline-formula id="ieqn-68"><mml:math id="mml-ieqn-68"><mml:mrow><mml:mtext>Q</mml:mtext></mml:mrow></mml:math></inline-formula></td>
<td>The set of shore bridge loading and unloading nodes, <inline-formula id="ieqn-69"><mml:math id="mml-ieqn-69"><mml:mi>Q</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mi>V</mml:mi><mml:mo>,</mml:mo><mml:mi>Q</mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>Q</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>Q</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>,</mml:mo><mml:msub><mml:mi>Q</mml:mi><mml:mrow><mml:mi>a</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> here <inline-formula id="ieqn-70"><mml:math id="mml-ieqn-70"><mml:mi>a</mml:mi></mml:math></inline-formula> denotes the number of shore bridges</td>
</tr>
<tr>
<td><inline-formula id="ieqn-71"><mml:math id="mml-ieqn-71"><mml:mrow><mml:mtext>D</mml:mtext></mml:mrow></mml:math></inline-formula></td>
<td>The set of yard loading and unloading nodes, <inline-formula id="ieqn-72"><mml:math id="mml-ieqn-72"><mml:mi>D</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mi>V</mml:mi><mml:mo>,</mml:mo><mml:mi>D</mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>D</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>D</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>,</mml:mo><mml:msub><mml:mi>D</mml:mi><mml:mrow><mml:mi>b</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, where <inline-formula id="ieqn-73"><mml:math id="mml-ieqn-73"><mml:mi>b</mml:mi></mml:math></inline-formula> denotes the number of yards</td>
</tr>
<tr>
<td><inline-formula id="ieqn-74"><mml:math id="mml-ieqn-74"><mml:msub><mml:mrow><mml:mtext>S</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula></td>
<td>The set of starting nodes, <inline-formula id="ieqn-75"><mml:math id="mml-ieqn-75"><mml:msub><mml:mi>s</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2208;</mml:mo><mml:mi>Q</mml:mi><mml:mo>,</mml:mo><mml:mi>D</mml:mi></mml:math></inline-formula></td>
</tr>
<tr>
<td><inline-formula id="ieqn-76"><mml:math id="mml-ieqn-76"><mml:msub><mml:mi>g</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula></td>
<td>The set of target nodes, <inline-formula id="ieqn-77"><mml:math id="mml-ieqn-77"><mml:msub><mml:mi>g</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2208;</mml:mo><mml:mi>Q</mml:mi><mml:mo>,</mml:mo><mml:mi>D</mml:mi></mml:math></inline-formula>,<inline-formula id="ieqn-78"><mml:math id="mml-ieqn-78"><mml:mrow><mml:msub><mml:mi>g</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mtext>[0]</mml:mtext></mml:mrow></mml:math></inline-formula> denotes the X-axis coordinate of the target nodes, <inline-formula id="ieqn-79"><mml:math id="mml-ieqn-79"><mml:mrow><mml:msub><mml:mi>g</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mtext>[1]</mml:mtext></mml:mrow></mml:math></inline-formula> denotes the Y-axis coordinate of the target nodes,</td>
</tr>
<tr>
<td><inline-formula id="ieqn-80"><mml:math id="mml-ieqn-80"><mml:mi>A</mml:mi></mml:math></inline-formula></td>
<td>The set of AGVs, <inline-formula id="ieqn-81"><mml:math id="mml-ieqn-81"><mml:mi>A</mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mo>(</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>,</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
</tr>
<tr>
<td><inline-formula id="ieqn-82"><mml:math id="mml-ieqn-82"><mml:msub><mml:mi>c</mml:mi><mml:mrow><mml:mi>f</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula></td>
<td>The set of conflicts between paths, where <inline-formula id="ieqn-83"><mml:math id="mml-ieqn-83"><mml:mrow><mml:mo>(</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> indicates that <inline-formula id="ieqn-84"><mml:math id="mml-ieqn-84"><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> and <inline-formula id="ieqn-85"><mml:math id="mml-ieqn-85"><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> have point conflicts at the node <inline-formula id="ieqn-86"><mml:math id="mml-ieqn-86"><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> at time point t, and <inline-formula id="ieqn-87"><mml:math id="mml-ieqn-87"><mml:mrow><mml:mo>(</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> indicates that <inline-formula id="ieqn-88"><mml:math id="mml-ieqn-88"><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> and <inline-formula id="ieqn-89"><mml:math id="mml-ieqn-89"><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> have edge conflicts at time points t</td>
</tr>
<tr>
<td><inline-formula id="ieqn-90"><mml:math id="mml-ieqn-90"><mml:msub><mml:mi>c</mml:mi><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula></td>
<td>The constraint of AGV, <inline-formula id="ieqn-91"><mml:math id="mml-ieqn-91"><mml:mrow><mml:mo>(</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> means <inline-formula id="ieqn-92"><mml:math id="mml-ieqn-92"><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> cannot occupy the node <inline-formula id="ieqn-93"><mml:math id="mml-ieqn-93"><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> at time point t, <inline-formula id="ieqn-94"><mml:math id="mml-ieqn-94"><mml:mrow><mml:mo>(</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> means <inline-formula id="ieqn-95"><mml:math id="mml-ieqn-95"><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> is forbidden to move from <inline-formula id="ieqn-96"><mml:math id="mml-ieqn-96"><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> to <inline-formula id="ieqn-97"><mml:math id="mml-ieqn-97"><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> at time point t</td>
</tr>
<tr>
<td><inline-formula id="ieqn-98"><mml:math id="mml-ieqn-98"><mml:msub><mml:mi>C</mml:mi><mml:mrow><mml:mi>s</mml:mi><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula></td>
<td>The constraint set of the i-th AGV, <inline-formula id="ieqn-99"><mml:math id="mml-ieqn-99"><mml:msub><mml:mi>C</mml:mi><mml:mrow><mml:mi>s</mml:mi><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mo stretchy="false">(</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mn>0</mml:mn><mml:mo stretchy="false">)</mml:mo><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>,</mml:mo><mml:mrow><mml:mo>(</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>j</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:mrow></mml:math></inline-formula></td>
</tr>
<tr>
<td><inline-formula id="ieqn-100"><mml:math id="mml-ieqn-100"><mml:mi>C</mml:mi></mml:math></inline-formula></td>
<td>The set of constraints for all AGVs, <inline-formula id="ieqn-101"><mml:math id="mml-ieqn-101"><mml:mi>C</mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:msub><mml:mi>C</mml:mi><mml:mrow><mml:mi>s</mml:mi><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>C</mml:mi><mml:mrow><mml:mi>s</mml:mi><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>,</mml:mo><mml:msub><mml:mi>C</mml:mi><mml:mrow><mml:mi>s</mml:mi><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula></td>
</tr>
<tr>
<td><inline-formula id="ieqn-102"><mml:math id="mml-ieqn-102"><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula></td>
<td>The path of the i-th AGV, <inline-formula id="ieqn-103"><mml:math id="mml-ieqn-103"><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>,</mml:mo><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>c</mml:mi></mml:mrow></mml:msub><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula>, <inline-formula id="ieqn-104"><mml:math id="mml-ieqn-104"><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo>[</mml:mo><mml:mi>t</mml:mi><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula> denotes the coordinates of <inline-formula id="ieqn-105"><mml:math id="mml-ieqn-105"><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> at time point t, denotes the X-axis coordinate of at time point t, denotes the Y-axis coordinate of at time point t</td>
</tr>
<tr>
<td><inline-formula id="ieqn-106"><mml:math id="mml-ieqn-106"><mml:msub><mml:mi>t</mml:mi><mml:mrow><mml:mi>d</mml:mi><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula></td>
<td>The time that the i-th AGV waits in the path <inline-formula id="ieqn-107"><mml:math id="mml-ieqn-107"><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula></td>
</tr>
<tr>
<td><inline-formula id="ieqn-108"><mml:math id="mml-ieqn-108"><mml:mi>P</mml:mi></mml:math></inline-formula></td>
<td>The set of paths of all AGVs, <inline-formula id="ieqn-109"><mml:math id="mml-ieqn-109"><mml:mi>P</mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>,</mml:mo><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, with a total of k paths</td>
</tr>
<tr>
<td><inline-formula id="ieqn-110"><mml:math id="mml-ieqn-110"><mml:msub><mml:mi>n</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula></td>
<td>The node i on the binary tree, with a total of N nodes</td>
</tr>
<tr>
<td><inline-formula id="ieqn-111"><mml:math id="mml-ieqn-111"><mml:msub><mml:mi>S</mml:mi><mml:mrow><mml:mi>n</mml:mi><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula></td>
<td>The solution corresponding to node i of the binary tree</td>
</tr>
<tr>
<td><inline-formula id="ieqn-112"><mml:math id="mml-ieqn-112"><mml:mi>S</mml:mi></mml:math></inline-formula></td>
<td>The set of final solutions of k paths, i.e., the solutions of conflict-free path planning for all AGVs, and <inline-formula id="ieqn-113"><mml:math id="mml-ieqn-113"><mml:mi>S</mml:mi><mml:mrow><mml:mo>[</mml:mo><mml:mi>i</mml:mi><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula> denotes the path solution of the ith AGV</td>
</tr>
<tr>
<td><inline-formula id="ieqn-114"><mml:math id="mml-ieqn-114"><mml:msub><mml:mi>C</mml:mi><mml:mrow><mml:mi>o</mml:mi><mml:mi>n</mml:mi><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula></td>
<td>The total cost corresponding to binomial tree node i</td>
</tr>
<tr>
<td><inline-formula id="ieqn-115"><mml:math id="mml-ieqn-115"><mml:msub><mml:mi>C</mml:mi><mml:mrow><mml:mi>o</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula></td>
<td>The total cost corresponding to the final solution S</td>
</tr>
<tr>
<td><inline-formula id="ieqn-116"><mml:math id="mml-ieqn-116"><mml:mi>C</mml:mi><mml:msub><mml:mi>s</mml:mi><mml:mrow><mml:mi>n</mml:mi><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula></td>
<td>The set of constraints corresponding to binomial tree node i; <inline-formula id="ieqn-117"><mml:math id="mml-ieqn-117"><mml:mi>C</mml:mi><mml:msub><mml:mi>s</mml:mi><mml:mrow><mml:mi>n</mml:mi><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> is the set of constraints corresponding to binomial tree node i</td>
</tr>
<tr>
<td><inline-formula id="ieqn-118"><mml:math id="mml-ieqn-118"><mml:mi>C</mml:mi><mml:mi>T</mml:mi></mml:math></inline-formula></td>
<td>The constraint tree, <inline-formula id="ieqn-119"><mml:math id="mml-ieqn-119"><mml:mi>C</mml:mi><mml:mi>T</mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mo>(</mml:mo><mml:mi>C</mml:mi><mml:msub><mml:mi>s</mml:mi><mml:mrow><mml:mi>n</mml:mi><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>S</mml:mi><mml:mrow><mml:mi>n</mml:mi><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>C</mml:mi><mml:msub><mml:mi>o</mml:mi><mml:mrow><mml:mi>n</mml:mi><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s3_3">
<label>3.3</label>
<title>Variable Setting</title>
<p>They should also be separated from the surrounding text by one space.</p>
<p>Objective function:</p>
<p><disp-formula id="eqn-1"><label>(1)</label><mml:math id="mml-eqn-1" display="block"><mml:mo movablelimits="true" form="prefix">min</mml:mo><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>N</mml:mi></mml:mrow></mml:munderover><mml:mi>C</mml:mi><mml:mi>o</mml:mi><mml:msub><mml:mi>n</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></disp-formula></p>
<p>Constraints:</p>
<p><disp-formula id="eqn-2"><label>(2)</label><mml:math id="mml-eqn-2" display="block"><mml:msub><mml:mi>X</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mtable columnalign="left" rowspacing="4pt" columnspacing="1em"><mml:mtr><mml:mtd><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mi>A</mml:mi><mml:mi>G</mml:mi><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>a</mml:mi></mml:mrow></mml:msub><mml:mtext>&#xA0;</mml:mtext><mml:mspace width="0pt" /><mml:mi>a</mml:mi><mml:mi>c</mml:mi><mml:mi>c</mml:mi><mml:mi>e</mml:mi><mml:mi>s</mml:mi><mml:mi>s</mml:mi><mml:mi>e</mml:mi><mml:mi>s</mml:mi><mml:mtext>&#xA0;</mml:mtext><mml:mspace width="0pt" /><mml:mi>n</mml:mi><mml:mi>o</mml:mi><mml:mi>d</mml:mi><mml:mi>e</mml:mi><mml:mtext>&#xA0;</mml:mtext><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow><mml:mtext>&#xA0;</mml:mtext><mml:mrow><mml:mtext>after accessing node&#xA0;</mml:mtext></mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mspace width="1em" /><mml:mspace width="1em" /><mml:mspace width="1em" /><mml:mspace width="1em" /><mml:mspace width="1em" /><mml:mspace width="1em" /><mml:mspace width="1em" /><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mi>O</mml:mi><mml:mi>t</mml:mi><mml:mi>h</mml:mi><mml:mi>e</mml:mi><mml:mi>r</mml:mi><mml:mi>w</mml:mi><mml:mi>i</mml:mi><mml:mi>s</mml:mi><mml:mi>e</mml:mi></mml:mtd></mml:mtr></mml:mtable><mml:mo>}</mml:mo></mml:mrow></mml:math></disp-formula></p>
<p><disp-formula id="eqn-3"><label>(3)</label><mml:math id="mml-eqn-3" display="block"><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>N</mml:mi></mml:mrow></mml:munderover><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>j</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>N</mml:mi></mml:mrow></mml:munderover><mml:msub><mml:mi>X</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:math></disp-formula></p>
<p><disp-formula id="eqn-4"><label>(4)</label><mml:math id="mml-eqn-4" display="block"><mml:mi>T</mml:mi><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:mi>C</mml:mi><mml:mi>o</mml:mi></mml:mrow><mml:mi>v</mml:mi></mml:mfrac></mml:math></disp-formula></p>
<p><disp-formula id="eqn-5"><label>(5)</label><mml:math id="mml-eqn-5" display="block"><mml:mi>f</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mi>g</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>+</mml:mo><mml:mi>h</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula></p>
<p><disp-formula id="eqn-6"><label>(6)</label><mml:math id="mml-eqn-6" display="block"><mml:mrow><mml:mi>h</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mo>&#x007C;</mml:mo><mml:msub><mml:mi>P</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mrow><mml:mo>[</mml:mo> <mml:mi>t</mml:mi> <mml:mo>]</mml:mo></mml:mrow><mml:mrow><mml:mo>[</mml:mo> <mml:mn>0</mml:mn> <mml:mo>]</mml:mo></mml:mrow><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>g</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mrow><mml:mo>[</mml:mo> <mml:mn>0</mml:mn> <mml:mo>]</mml:mo></mml:mrow><mml:mo>&#x007C;</mml:mo><mml:mo>+</mml:mo><mml:mo>&#x007C;</mml:mo><mml:msub><mml:mi>P</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mrow><mml:mo>[</mml:mo> <mml:mi>t</mml:mi> <mml:mo>]</mml:mo></mml:mrow><mml:mrow><mml:mo>[</mml:mo> <mml:mn>1</mml:mn> <mml:mo>]</mml:mo></mml:mrow><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>g</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mrow><mml:mo>[</mml:mo> <mml:mn>1</mml:mn> <mml:mo>]</mml:mo></mml:mrow><mml:mo>&#x007C;</mml:mo></mml:mrow></mml:math></disp-formula></p>
<p><disp-formula id="eqn-7"><label>(7)</label><mml:math id="mml-eqn-7" display="block"><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:munderover><mml:mi>t</mml:mi><mml:msub><mml:mi>d</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></disp-formula></p>
<p><disp-formula id="eqn-8"><label>(8)</label><mml:math id="mml-eqn-8" display="block"><mml:mi>m</mml:mi><mml:mi>o</mml:mi><mml:mi>v</mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mtable columnalign="left" rowspacing="4pt" columnspacing="1em"><mml:mtr><mml:mtd><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mi>I</mml:mi><mml:mi>n</mml:mi><mml:mi>d</mml:mi><mml:mi>i</mml:mi><mml:mi>c</mml:mi><mml:mi>a</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi><mml:mi>s</mml:mi><mml:mtext>&#xA0;</mml:mtext><mml:mrow><mml:mtext>that the AGV is waiting in place</mml:mtext></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mspace width="1em" /><mml:mspace width="1em" /><mml:mspace width="1em" /><mml:mspace width="1em" /><mml:mspace width="1em" /><mml:mspace width="1em" /><mml:mspace width="1em" /><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mi>O</mml:mi><mml:mi>t</mml:mi><mml:mi>h</mml:mi><mml:mi>e</mml:mi><mml:mi>r</mml:mi><mml:mi>w</mml:mi><mml:mi>i</mml:mi><mml:mi>s</mml:mi><mml:mi>e</mml:mi></mml:mtd></mml:mtr></mml:mtable><mml:mo>}</mml:mo></mml:mrow></mml:math></disp-formula></p>
<p><disp-formula id="eqn-9"><label>(9)</label><mml:math id="mml-eqn-9" display="block"><mml:mi>C</mml:mi><mml:mi>o</mml:mi><mml:mo>=</mml:mo><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:munderover><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2212;</mml:mo><mml:mn>1</mml:mn></mml:math></disp-formula></p>
<p><xref ref-type="disp-formula" rid="eqn-1">Eq. (1)</xref> indicates that the objective function of this model is the total cost minimization, <xref ref-type="disp-formula" rid="eqn-2">Eqs. (2)</xref> and <xref ref-type="disp-formula" rid="eqn-3">(3)</xref> indicates that each node is visited by AGV at most once at the same time, <xref ref-type="disp-formula" rid="eqn-4">Eq. (4)</xref> indicates the time for all AGVs to complete the task, <xref ref-type="disp-formula" rid="eqn-5">Eq. (5)</xref> indicates the A&#x002A; algorithm used at the bottom, where f(i) is the estimation function, g(i) is the actual cost from the starting node to node i, h(i) is the estimated node i to the target node cost, <xref ref-type="disp-formula" rid="eqn-6">Eq. (6)</xref> denotes the heuristic function using the Manhattan distance-based A&#x002A; algorithm, <xref ref-type="disp-formula" rid="eqn-7">Eq. (7)</xref> denotes the total waiting time, <xref ref-type="disp-formula" rid="eqn-8">Eq. (8)</xref> denotes the choice of movement method for the AGVs, including waiting in place or moving one time step to a neighboring node, and <xref ref-type="disp-formula" rid="eqn-9">Eq. (9)</xref> denotes the total cost of all AGVs to complete the task.</p>
</sec>
</sec>
<sec id="s4">
<label>4</label>
<title>An Improved Bounded Conflicted-Based Search Algorithm on Automated Container Terminals</title>
<p>The solutions to MAPF problems are divided into two main categories: optimal solvers and suboptimal solvers. Optimal solvers work better when the number of AGVs is small, but as the number of AGVs increases, the state space grows exponentially, making finding the optimal solution NP-hard. However, in the case of AGV path planning on the automated terminal studied in this paper, with large map size and numerous AGVs, optimal solvers are not viable. Suboptimal solvers, known for their rapid solving speed, are usually preferred in scenarios involving a high number of AGVs.</p>
<p>Optimal solvers and suboptimal solvers constitute the primary solutions for MAPF issues. Finding the best solution for the MAPF problem is NP-hard because optimal solvers perform better with a low number of AGVs, but as the number grows, the state space expands exponentially. Unfortunately, due to the enormous map area and high AGV density in the automated terminal analyzed in this paper, optimal solvers cannot be applied. The swift-solving ability of suboptimal solvers makes them a popular choice in scenarios involving numerous AGVs.</p>
<p>This article employs the IBCBS algorithm, considering both point conflicts and determining edge conflicts in the binary tree. Furthermore, constraints are added to child nodes with edge conflicts to achieve multi-AGV conflict-free path planning. The utilization of focal search in both high-level and low-level tasks is employed to ensure solution quality while accelerating solution times.</p>
<p>The IBCBS algorithm flowchart is shown in <xref ref-type="fig" rid="fig-5">Fig. 5</xref>, the left is a high level search and the right is a low-level single A&#x002A; search. There are two lists of nodes in focal search which include Open_list and Focal_list. Open_list is a regular Open_list of A&#x002A;. Focal_list is a subset of Open_list. The focal search uses two functions <inline-formula id="ieqn-120"><mml:math id="mml-ieqn-120"><mml:msub><mml:mi>f</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula> and <inline-formula id="ieqn-121"><mml:math id="mml-ieqn-121"><mml:msub><mml:mi>f</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula>, <inline-formula id="ieqn-122"><mml:math id="mml-ieqn-122"><mml:msub><mml:mi>f</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula> defines where nodes are in Focal_list and <inline-formula id="ieqn-123"><mml:math id="mml-ieqn-123"><mml:msub><mml:mi>f</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula> defines which node from Focal_list to expand.</p>
<fig id="fig-5">
<label>Figure 5</label>
<caption>
<title>IBCBS algorithm flowchart</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMES_46363-fig-5.tif"/>
</fig>
<p>After setting start points and endpoints, conducted a single A&#x002A; search for each agent to get paths. At the low-level of IBCBS, apply focal search <inline-formula id="ieqn-124"><mml:math id="mml-ieqn-124"><mml:mrow><mml:mo>(</mml:mo><mml:mi>f</mml:mi><mml:mo>,</mml:mo><mml:msub><mml:mi>h</mml:mi><mml:mrow><mml:mi>c</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> for single AGV pathfinding where <inline-formula id="ieqn-125"><mml:math id="mml-ieqn-125"><mml:mi>f</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>n</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> is the regular <inline-formula id="ieqn-126"><mml:math id="mml-ieqn-126"><mml:mi>f</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>n</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mi>g</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>n</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>+</mml:mo><mml:mi>h</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>n</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, <inline-formula id="ieqn-127"><mml:math id="mml-ieqn-127"><mml:mi>h</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>n</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> is the number of conflicts. At the high-level of IBCBS, search a binary tree called CT. Each node N in the tree consists of <inline-formula id="ieqn-128"><mml:math id="mml-ieqn-128"><mml:mi>N</mml:mi><mml:mo>.</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:mi>r</mml:mi><mml:mi>a</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi><mml:mi>t</mml:mi><mml:mi>s</mml:mi></mml:math></inline-formula>, <inline-formula id="ieqn-129"><mml:math id="mml-ieqn-129"><mml:mi>N</mml:mi><mml:mo>.</mml:mo><mml:mi>s</mml:mi><mml:mi>o</mml:mi><mml:mi>l</mml:mi><mml:mi>u</mml:mi><mml:mi>t</mml:mi><mml:mi>i</mml:mi><mml:mi>o</mml:mi><mml:mi>n</mml:mi></mml:math></inline-formula> and <inline-formula id="ieqn-130"><mml:math id="mml-ieqn-130"><mml:mi>N</mml:mi><mml:mo>.</mml:mo><mml:mi>c</mml:mi><mml:mi>o</mml:mi><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:math></inline-formula>. Each constraint belongs to an AGV and the root of CT is an empty set. There are k conflict-free paths in the solution and consistent with constraints. <inline-formula id="ieqn-131"><mml:math id="mml-ieqn-131"><mml:mi>N</mml:mi><mml:mo>.</mml:mo><mml:mi>c</mml:mi><mml:mi>o</mml:mi><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:math></inline-formula> is the sum of all the paths. Apply focal search <inline-formula id="ieqn-132"><mml:math id="mml-ieqn-132"><mml:mrow><mml:mo>(</mml:mo><mml:mi>g</mml:mi><mml:mo>,</mml:mo><mml:msub><mml:mi>h</mml:mi><mml:mrow><mml:mi>c</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> to search the CT, where <inline-formula id="ieqn-133"><mml:math id="mml-ieqn-133"><mml:mi>g</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>n</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> is the cost of the CT node <inline-formula id="ieqn-134"><mml:math id="mml-ieqn-134"><mml:mi>n</mml:mi></mml:math></inline-formula> and <inline-formula id="ieqn-135"><mml:math id="mml-ieqn-135"><mml:msub><mml:mi>h</mml:mi><mml:mrow><mml:mi>c</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo>(</mml:mo><mml:mi>n</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> is the number of conflicts. Determined no conflict in the locations reserved in all agents at all time steps and if no two AGVs plan to be at the same location at the same time, the paths are the solution. If a conflict exists, add a constraint to the CT node, and the low-level invoke again.</p>
<sec id="s4_1">
<label>4.1</label>
<title>The Quality of the Solution</title>
<p><inline-formula id="ieqn-136"><mml:math id="mml-ieqn-136"><mml:mi>I</mml:mi><mml:mi>B</mml:mi><mml:mi>C</mml:mi><mml:mi>B</mml:mi><mml:mi>S</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>&#x03C9;</mml:mi><mml:mrow><mml:mi>H</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>&#x03C9;</mml:mi><mml:mrow><mml:mi>L</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> denote IBCBS uses <inline-formula id="ieqn-137"><mml:math id="mml-ieqn-137"><mml:msub><mml:mi>&#x03C9;</mml:mi><mml:mrow><mml:mi>H</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> in high level and <inline-formula id="ieqn-138"><mml:math id="mml-ieqn-138"><mml:msub><mml:mi>&#x03C9;</mml:mi><mml:mrow><mml:mi>L</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> in low level. <inline-formula id="ieqn-139"><mml:math id="mml-ieqn-139"><mml:mi>I</mml:mi><mml:mi>B</mml:mi><mml:mi>C</mml:mi><mml:mi>B</mml:mi><mml:mi>S</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>&#x03C9;</mml:mi><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> is a special case that focal search only used at a high level and <inline-formula id="ieqn-140"><mml:math id="mml-ieqn-140"><mml:mi>I</mml:mi><mml:mi>B</mml:mi><mml:mi>C</mml:mi><mml:mi>B</mml:mi><mml:mi>S</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mi>&#x03C9;</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> is focal search only used at a low level. The cost of <inline-formula id="ieqn-141"><mml:math id="mml-ieqn-141"><mml:mi>I</mml:mi><mml:mi>B</mml:mi><mml:mi>C</mml:mi><mml:mi>B</mml:mi><mml:mi>S</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>&#x03C9;</mml:mi><mml:mrow><mml:mi>H</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>&#x03C9;</mml:mi><mml:mrow><mml:mi>L</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> is at most <inline-formula id="ieqn-142"><mml:math id="mml-ieqn-142"><mml:msub><mml:mi>&#x03C9;</mml:mi><mml:mrow><mml:mi>H</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2217;</mml:mo><mml:msub><mml:mi>&#x03C9;</mml:mi><mml:mrow><mml:mi>L</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2217;</mml:mo><mml:msup><mml:mi>C</mml:mi><mml:mrow><mml:mo>&#x2217;</mml:mo></mml:mrow></mml:msup></mml:math></inline-formula>. This also proves the boundedness of the algorithm.</p>
</sec>
<sec id="s4_2">
<label>4.2</label>
<title>The Completeness of the Algorithm</title>
<p>The expansion cost of both IBCBS is no more than &#x03C9; times higher than the ideal solution. Moreover, within OPEN, at least one CT node consistently aligns with every viable answer. Due to its systematic search, it eventually identifies all solutions. Consequently, IBCBS concludes.</p>
<p>Algorithm 1 presents the pseudo-code for a low level of IBCBS which uses a Manhattan distance-based A&#x002A; algorithm with focal search <inline-formula id="ieqn-143"><mml:math id="mml-ieqn-143"><mml:mrow><mml:mo>(</mml:mo><mml:mi>f</mml:mi><mml:mo>,</mml:mo><mml:msub><mml:mi>h</mml:mi><mml:mrow><mml:mi>c</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> for each single AGV path planning.</p>
<fig id="fig-14">
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMES_46363-fig-14.tif"/>
</fig>
<p><bold>Algorithm 2</bold> presents the pseudo-code for a high level of IBCBS which use focal-search <inline-formula id="ieqn-152"><mml:math id="mml-ieqn-152"><mml:mrow><mml:mo>(</mml:mo><mml:mi>g</mml:mi><mml:mo>,</mml:mo><mml:msub><mml:mi>h</mml:mi><mml:mrow><mml:mi>c</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> to choose the cost of nodes in CT lower than <inline-formula id="ieqn-153"><mml:math id="mml-ieqn-153"><mml:mi>&#x03C9;</mml:mi><mml:mo>&#x2217;</mml:mo><mml:mi>g</mml:mi></mml:math></inline-formula>.</p>
<fig id="fig-15">
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMES_46363-fig-15.tif"/>
</fig>
</sec>
</sec>
<sec id="s5">
<label>5</label>
<title>Experimental Results and Analysis</title>
<p>Referring to the actual situation of the automated terminal, a two-way grid road network diagram is designed, as depicted in <xref ref-type="fig" rid="fig-6">Fig. 6</xref>. In the road network layout, Q1&#x2013;Q10 represents the location of the quay crane, while D1&#x2013;D30 signifies the location of the container yard. The white grid denotes an access point, whereas the grey indicates a static obstacle that is inaccessible. The program is written in Python and runs on an Intel<sup>&#x00AE;</sup> AMD5-2500U CPU @ 2.00 GHz with 8 GB memory on a Windows 10 computer.</p>
<fig id="fig-6">
<label>Figure 6</label>
<caption>
<title>AGV road network layout</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMES_46363-fig-6.tif"/>
</fig>
<p>The following criteria are utilized in this example: The AGV road network size is set to 40 &#x00D7; 40 with a grid length of 2 m. The starting point and endpoint information can be found in <xref ref-type="table" rid="table-2">Table 2</xref>. Both the starting point and endpoint are selected according to the operating mode, either from the shore bridge to the container yard or from the container yard to the shore bridge. Each AGV maintains a constant speed of 2 m/s, with a length of 2 m.</p>
<table-wrap id="table-2">
<label>Table 2</label>
<caption>
<title>AGVs start and end point table</title>
</caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
</colgroup>
<thead valign="top">
<tr>
<th>Start point</th>
<th>End point</th>
<th>Start point</th>
<th>End point</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td>(2, 1)</td>
<td>(3, 39), (2, 39), (4, 39)</td>
<td>(3, 39), (2, 39), (4, 39)</td>
<td>(2, 1)</td>
</tr>
<tr>
<td>(6, 1)</td>
<td>(7, 39), (6, 39), (8, 39)</td>
<td>(7, 39), (6, 39), (8, 39)</td>
<td>(6, 1)</td>
</tr>
<tr>
<td>(10, 1)</td>
<td>(11, 39), (10,39), (12,39)</td>
<td>(11, 39), (10,39), (12,39)</td>
<td>(10, 1)</td>
</tr>
<tr>
<td>(14, 1)</td>
<td>(15, 39), (14,39), (16,39)</td>
<td>(15, 39), (14,39), (16,39)</td>
<td>(14, 1)</td>
</tr>
<tr>
<td>(18, 1)</td>
<td>(19, 39), (18,39), (20,39)</td>
<td>(19, 39), (18,39), (20,39)</td>
<td>(18, 1)</td>
</tr>
<tr>
<td>(22, 1)</td>
<td>(23, 39), (22,39), (24,39)</td>
<td>(23, 39), (22,39), (24,39)</td>
<td>(22, 1)</td>
</tr>
<tr>
<td>(26, 1)</td>
<td>(27, 39), (26,39), (28,39)</td>
<td>(27, 39), (26,39), (28,39)</td>
<td>(26, 1)</td>
</tr>
<tr>
<td>(30, 1)</td>
<td>(31, 39), (30,39), (32,39)</td>
<td>(31, 39), (30,39), (32,39)</td>
<td>(30, 1)</td>
</tr>
<tr>
<td>(34, 1)</td>
<td>(35, 39), (34,39), (36,39)</td>
<td>(35, 39), (34,39), (36,39)</td>
<td>(34, 1)</td>
</tr>
<tr>
<td>(38, 1)</td>
<td>(39, 39), (38,39), (40,39)</td>
<td>(39, 39), (38,39), (40,39)</td>
<td>(38, 1)</td>
</tr>
</tbody>
</table>
</table-wrap>
<sec id="s5_1">
<label>5.1</label>
<title>Performance Comparison Experiments between CBS and IBCBS Algorithms for Different Numbers of AGVs with Starting Endpoints</title>
<p>Set the number of AGVs as 10, 20, 30, 40, 50, and 60, and then randomly select the starting and endpoint based on <xref ref-type="table" rid="table-1">Table 1</xref>. The shore bridge can be repeatedly selected. For AGV &#x003D; 10, 20, 30, the starting point includes all shore bridges, and the endpoint is the yard. For AGV &#x003D; 30, the endpoint includes all yards. However, for AGV &#x003D; 40, 50, 60, 30 units move from the shore bridge to the yard, while the others move from the yard to the shore bridge. The starting point and endpoint remain fixed after random selection.</p>
<p>Set <inline-formula id="ieqn-170"><mml:math id="mml-ieqn-170"><mml:mrow><mml:mi mathvariant="normal">&#x03C9;</mml:mi></mml:mrow></mml:math></inline-formula> &#x003D; 1.1. Four methods&#x2014;IBCBS (<inline-formula id="ieqn-171"><mml:math id="mml-ieqn-171"><mml:mrow><mml:mi mathvariant="normal">&#x03C9;</mml:mi></mml:mrow></mml:math></inline-formula>, 1), IBCBS (1, <inline-formula id="ieqn-172"><mml:math id="mml-ieqn-172"><mml:mrow><mml:mi mathvariant="normal">&#x03C9;</mml:mi></mml:mrow></mml:math></inline-formula>), IBCBS (<inline-formula id="ieqn-173"><mml:math id="mml-ieqn-173"><mml:msqrt><mml:mrow><mml:mi mathvariant="normal">&#x03C9;</mml:mi></mml:mrow></mml:msqrt><mml:mo>,</mml:mo><mml:msqrt><mml:mrow><mml:mi mathvariant="normal">&#x03C9;</mml:mi></mml:mrow></mml:msqrt></mml:math></inline-formula>) and CBS&#x2014;are utilized for 100 experiments each. The effective time is set to 60 s, and if a solution cannot be obtained within this time, it is considered as unsolvable. Despite fixing the number of AGVs and algorithms, the computing time for each experiment differs while maintaining the same total path length. Thus, the computing time for 2400 experiments is depicted in <xref ref-type="fig" rid="fig-7">Fig. 7</xref>.</p>
<fig id="fig-7">
<label>Figure 7</label>
<caption>
<title>Run time of IBCBS (<inline-formula id="ieqn-180"><mml:math id="mml-ieqn-180"><mml:mi mathvariant="bold-italic">&#x03C9;</mml:mi></mml:math></inline-formula>, 1), IBCBS (1, <inline-formula id="ieqn-181"><mml:math id="mml-ieqn-181"><mml:mi mathvariant="bold-italic">&#x03C9;</mml:mi></mml:math></inline-formula>), IBCBS (<inline-formula id="ieqn-182"><mml:math id="mml-ieqn-182"><mml:msqrt><mml:mi mathvariant="bold-italic">&#x03C9;</mml:mi></mml:msqrt><mml:mo>,</mml:mo><mml:msqrt><mml:mi mathvariant="bold-italic">&#x03C9;</mml:mi></mml:msqrt></mml:math></inline-formula>) and CBS. (a) AGV &#x003D; 10; (b) AGV &#x003D; 20; (c) AGV &#x003D; 30; (d) AGV &#x003D; 40; (e) AGV &#x003D; 50; (f) AGV &#x003D; 60</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMES_46363-fig-7.tif"/>
</fig>
<p>It is evident from <xref ref-type="fig" rid="fig-7">Fig. 7</xref> that with a smaller AGV scale of 10, 20, 30, conflicts among AGVs are fewer. The effectiveness of focal search between the high-level and low-level in IBCBS is less pronounced. Additionally, the discrepancy between CBS and IBCBS (<inline-formula id="ieqn-174"><mml:math id="mml-ieqn-174"><mml:mrow><mml:mi mathvariant="normal">&#x03C9;</mml:mi></mml:mrow></mml:math></inline-formula>, 1), IBCBS (1, <inline-formula id="ieqn-175"><mml:math id="mml-ieqn-175"><mml:mrow><mml:mi mathvariant="normal">&#x03C9;</mml:mi></mml:mrow></mml:math></inline-formula>), IBCBS (<inline-formula id="ieqn-176"><mml:math id="mml-ieqn-176"><mml:msqrt><mml:mrow><mml:mi mathvariant="normal">&#x03C9;</mml:mi></mml:mrow></mml:msqrt><mml:mo>,</mml:mo><mml:msqrt><mml:mrow><mml:mi mathvariant="normal">&#x03C9;</mml:mi></mml:mrow></mml:msqrt></mml:math></inline-formula>) is marginal. However, as the AGV scale increases to 40, 50, 60, AGV conflicts surge. IBCBS sacrifices optimality, leading to a slackening effect in both the high-level and low-level operations. Notably, CBS&#x2019;s operational time is significantly longer compared to IBCBS (<inline-formula id="ieqn-177"><mml:math id="mml-ieqn-177"><mml:mrow><mml:mi mathvariant="normal">&#x03C9;</mml:mi></mml:mrow></mml:math></inline-formula>, 1), IBCBS (1, <inline-formula id="ieqn-178"><mml:math id="mml-ieqn-178"><mml:mrow><mml:mi mathvariant="normal">&#x03C9;</mml:mi></mml:mrow></mml:math></inline-formula>), IBCBS (<inline-formula id="ieqn-179"><mml:math id="mml-ieqn-179"><mml:msqrt><mml:mrow><mml:mi mathvariant="normal">&#x03C9;</mml:mi></mml:mrow></mml:msqrt><mml:mo>,</mml:mo><mml:msqrt><mml:mrow><mml:mi mathvariant="normal">&#x03C9;</mml:mi></mml:mrow></mml:msqrt></mml:math></inline-formula>).</p>
<p><xref ref-type="fig" rid="fig-8">Fig. 8</xref> illustrates that the effectiveness of bounded suboptimal search is not immediately evident with a low number of AGVs. Conflicts are minimal, below 30 units, resulting in comparable computing times for the six methods. However, as the AGV count exceeds 30 units, both point and edge conflicts rise, consequently escalating computing times for all six methods. The CBS algorithm consistently strives for optimal solutions, resulting in longer operational times. Due to convergence, GCBS algorithm operation times are extended, while BCBS operation times are marginally better than CBS and less than the other three IBCBS algorithms. The three IBCBS algorithms adopt focal search with different levels of permissive optimality constraints, substantially reducing runtime and enhancing computational efficiency. Among them, IBCBS (1.0488, 1.0488) uses focal search at both high and low levels, exhibiting the shortest operational time.</p>
<fig id="fig-8">
<label>Figure 8</label>
<caption>
<title>Average run time of IBCBS (<inline-formula id="ieqn-183"><mml:math id="mml-ieqn-183"><mml:mi mathvariant="bold-italic">&#x03C9;</mml:mi></mml:math></inline-formula>, 1), IBCBS (1, <inline-formula id="ieqn-184"><mml:math id="mml-ieqn-184"><mml:mi mathvariant="bold-italic">&#x03C9;</mml:mi></mml:math></inline-formula>), IBCBS (<inline-formula id="ieqn-185"><mml:math id="mml-ieqn-185"><mml:msqrt><mml:mi mathvariant="bold-italic">&#x03C9;</mml:mi></mml:msqrt><mml:mo>,</mml:mo><mml:msqrt><mml:mi mathvariant="bold-italic">&#x03C9;</mml:mi></mml:msqrt></mml:math></inline-formula>), GCBS, BCBS and CBS, when the number of AGVs is 10, 20, 30, 40, 50, 60</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMES_46363-fig-8.tif"/>
</fig>
<p><xref ref-type="fig" rid="fig-9">Fig. 9</xref> indicates that CBS consistently yields the shortest total path length regardless of AGV count, with IBCBS following as the second shortest. At 10 AGVs, where path conflicts are absent, the total path length is identical for all four methods. Even with an increased AGV count, the total path length of the three IBCBS methods cannot exceed 1.1 times that of CBS due to CBS&#x2019;s optimal nature, resulting in the shortest total path length. IBCBS is constrained by &#x002A;cost, set at 1.1. By incorporating additional measures at the low level, potential conflicts can be averted. Consequently, IBCBS (1, 1) displays a shorter path length than IBCBS (1.0488, 1.0488) and IBCBS (1.1, 1).</p>
<fig id="fig-9">
<label>Figure 9</label>
<caption>
<title>When the number of AGVs is 10, 20, 30, 40, 50, 60, (a) total path length (b) over the cost of IBCBS (<inline-formula id="ieqn-186"><mml:math id="mml-ieqn-186"><mml:mi mathvariant="bold-italic">&#x03C9;</mml:mi></mml:math></inline-formula>, 1), IBCBS (1, <inline-formula id="ieqn-187"><mml:math id="mml-ieqn-187"><mml:mi mathvariant="bold-italic">&#x03C9;</mml:mi></mml:math></inline-formula>), IBCBS (<inline-formula id="ieqn-188"><mml:math id="mml-ieqn-188"><mml:msqrt><mml:mi mathvariant="bold-italic">&#x03C9;</mml:mi></mml:msqrt><mml:mo>,</mml:mo><mml:msqrt><mml:mi mathvariant="bold-italic">&#x03C9;</mml:mi></mml:msqrt></mml:math></inline-formula>) and CBS</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMES_46363-fig-9.tif"/>
</fig>
<p><xref ref-type="table" rid="table-3">Table 3</xref> presents specific experimental data. The reduced time is calculated as (CBS&#x2019;s average run time-IBCBS&#x2019;s average run time)/CBS&#x2019;s average run time, expressed as a percentage. Meanwhile, the over cost is determined by (IBCBS&#x2019;s total path length-CBS&#x2019;s total path length)/CBS&#x2019;s total path length, also as a percentage. The results indicate that, in line with the analyses in <xref ref-type="fig" rid="fig-7">Figs. 7</xref> and <xref ref-type="fig" rid="fig-8">8</xref>, CBS exhibits the lowest operation time at AGV &#x003D; 10, 20, 30; whereas, at AGV &#x003D; 40, 50, 60, IBCBS (1.0488, 1.0488) demonstrates the lowest time, reduced by up to 64.06%. Regarding the total path length, as observed in <xref ref-type="fig" rid="fig-9">Fig. 9</xref>, the sequence from shortest to longest is CBS, IBCBS (1, 1.1), IBCBS (1.0488, 1.0488), IBCBS (1.1, 1). All variants of IBCBS maintain an over the cost of no more than 1.2%.</p>
<table-wrap id="table-3">
<label>Table 3</label>
<caption>
<title>Specific values of CBS and IBCBS</title>
</caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
</colgroup>
<thead valign="top">
<tr>
<th rowspan="2">The number of AGVs</th>
<th>Parameters</th>
<th colspan="4" align="center">Algorithms</th>
</tr>
<tr>
<th/>
<th>IBCBS (1.1, 1)</th>
<th>IBCBS (1, 1.1)</th>
<th>IBCBS (1.0488, 1.0488)</th>
<th>CBS</th>
</tr>
</thead>
<tbody>
<tr>
<td rowspan="4">10</td>
<td>Average run-time (s)</td>
<td>0.132</td>
<td>0.137</td>
<td>0.138</td>
<td><bold>0.130</bold></td>
</tr>
<tr>
<td>Reduced time(%)</td>
<td>&#x2212;1.538</td>
<td>&#x2212;5.384</td>
<td>&#x2212;6.154</td>
<td>/</td>
</tr>
<tr>
<td>Total path length (m)</td>
<td>800</td>
<td>800</td>
<td>800</td>
<td>800</td>
</tr>
<tr>
<td>Over cost (%)</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>/</td>
</tr>
<tr>
<td rowspan="4">20</td>
<td>Average run-time (s)</td>
<td>0.627</td>
<td>0.679</td>
<td>0.588</td>
<td><bold>0.530</bold></td>
</tr>
<tr>
<td>Reduced time (%)</td>
<td>&#x2212;18.302</td>
<td>&#x2212;28.113</td>
<td>&#x2212;10.943</td>
<td>/</td>
</tr>
<tr>
<td>Total path length (m)</td>
<td>1620</td>
<td>1620</td>
<td>1620</td>
<td>1608</td>
</tr>
<tr>
<td>Over cost (%)</td>
<td>0.746</td>
<td>0.746</td>
<td>0.746</td>
<td>/</td>
</tr>
<tr>
<td rowspan="4">30</td>
<td>Average run-time (s)</td>
<td>1.545</td>
<td>1.370</td>
<td>1.181</td>
<td><bold>1.155</bold></td>
</tr>
<tr>
<td>Reduced time (%)</td>
<td>&#x2212;33.766</td>
<td>&#x2212;18.615</td>
<td>&#x2212;2.251</td>
<td>/</td>
</tr>
<tr>
<td>Total path length (m)</td>
<td>2452</td>
<td>2452</td>
<td>2452</td>
<td>2424</td>
</tr>
<tr>
<td>Over cost (%)</td>
<td>1.155</td>
<td>1.155</td>
<td>1.155</td>
<td>/</td>
</tr>
<tr>
<td rowspan="4">40</td>
<td>Average run-time (s)</td>
<td>3.309</td>
<td>3.189</td>
<td><bold>2.469</bold></td>
<td>4.408</td>
</tr>
<tr>
<td>Reduced time (%)</td>
<td>24.932</td>
<td>27.654</td>
<td><bold>43.988</bold></td>
<td>/</td>
</tr>
<tr>
<td>Total path length (m)</td>
<td>3606</td>
<td><bold>3570</bold></td>
<td>3598</td>
<td>3568</td>
</tr>
<tr>
<td>Over cost (%)</td>
<td>1.065</td>
<td><bold>0.056</bold></td>
<td>0.841</td>
<td>/</td>
</tr>
<tr>
<td rowspan="4">50</td>
<td>Average run-time (s)</td>
<td>7.741</td>
<td>6.717</td>
<td><bold>4.889</bold></td>
<td>9.331</td>
</tr>
<tr>
<td>Reduced time (%)</td>
<td>17.040</td>
<td>28.014</td>
<td><bold>47.605</bold></td>
<td>/</td>
</tr>
<tr>
<td>Total path length (m)</td>
<td>4766</td>
<td><bold>4738</bold></td>
<td>4764</td>
<td>4724</td>
</tr>
<tr>
<td>Over cost (%)</td>
<td>0.889</td>
<td><bold>0.296</bold></td>
<td>0.847</td>
<td>/</td>
</tr>
<tr>
<td rowspan="4">60</td>
<td>Average run-time (s)</td>
<td>10.054</td>
<td>8.044</td>
<td><bold>5.772</bold></td>
<td>16.060</td>
</tr>
<tr>
<td>Reduced time (%)</td>
<td>37.397</td>
<td>49.913</td>
<td><bold>64.060</bold></td>
<td>/</td>
</tr>
<tr>
<td>Total path length (m)</td>
<td>5946</td>
<td><bold>5904</bold></td>
<td>5944</td>
<td>5886</td>
</tr>
<tr>
<td>Over cost (%)</td>
<td>1.019</td>
<td><bold>0.306</bold></td>
<td>0.985</td>
<td>/</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>Based on the analysis, when a low total path length is desired, the CBS algorithm is automatically preferred. For fewer AGVs (10, 20, or 30), CBS stands as the best choice due to its shorter computation time and total path length. On the other hand, when more AGVs are involved (40, 50, or 60), the IBCBS algorithm becomes the selection due to its shorter computation time and its ability to accept a more costly solution (1.0488, 1.0488).</p>
</sec>
<sec id="s5_2">
<label>5.2</label>
<title>Performance Comparison Experiments of Three IBCBS Algorithms with Randomly Selected Starting Endpoints</title>
<p>AGV counts were set to 10, 20, 30, 40, 50, and 60, with starting and ending points chosen randomly from <xref ref-type="table" rid="table-1">Table 1</xref>. The shore bridge can be selected repeatedly, without considering potential conflicts. For AGV &#x003D; 10, 20, 30, the starting and ending points are selected from the shore bridge to the yard. For AGV &#x003D; 40, 50, 60, 30 units are chosen from the shore bridge to the yard, while the remaining units are from the yard to the shore bridge.</p>
<p>In <xref ref-type="fig" rid="fig-10">Fig. 10</xref>, a horizontal comparison highlights that as the number of AGVs increases, conflicts intensify, resulting in fewer valid points and declining success rates across all three algorithms. However, with the same AGV count, employing focal searches at the high level extends the search range and enhances the success rate, leading to an increased number of green points. These green points surpass the red and blue ones because only IBCBS (1, 1.1) and IBCBS (1.0488, 1.0488), which conduct focal search solely at the low level, might avoid potential conflicts and exhibit lower operation times.</p>
<fig id="fig-10">
<label>Figure 10</label>
<caption>
<title>Run time of IBCBS (<inline-formula id="ieqn-189"><mml:math id="mml-ieqn-189"><mml:mi>&#x03C9;</mml:mi></mml:math></inline-formula>, 1), IBCBS (1, <inline-formula id="ieqn-190"><mml:math id="mml-ieqn-190"><mml:mi>&#x03C9;</mml:mi></mml:math></inline-formula>) and IBCBS (<inline-formula id="ieqn-191"><mml:math id="mml-ieqn-191"><mml:msqrt><mml:mi>&#x03C9;</mml:mi></mml:msqrt><mml:mo>,</mml:mo><mml:msqrt><mml:mi>&#x03C9;</mml:mi></mml:msqrt></mml:math></inline-formula>). (a) AGV &#x003D; 10; (b) AGV &#x003D; 20; (c) AGV &#x003D; 30;(d) AGV &#x003D; 40;(e) AGV &#x003D; 50; (f) AGV &#x003D; 60</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMES_46363-fig-10a.tif"/><graphic mimetype="image" mime-subtype="tif" xlink:href="CMES_46363-fig-10b.tif"/>
</fig>
<p><xref ref-type="fig" rid="fig-11">Fig. 11</xref>, following the analysis from <xref ref-type="fig" rid="fig-10">Fig. 10</xref>, displays the average run times of the three algorithms across 100 experiments. As the number of AGVs increases, all three algorithms take longer to compute. Notably, IBCBS (1.1, 1) takes significantly more time than IBCBS (1, 1.1) and IBCBS (1.0488, 1.0488). However, IBCBS (1.0488, 1.0488) exhibits the fastest operation time, employing focal search at both top and bottom levels, encompassing a wider search range.</p>
<fig id="fig-11">
<label>Figure 11</label>
<caption>
<title>Average run time of three kinds of IBCBS</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMES_46363-fig-11.tif"/>
</fig>
<p><xref ref-type="table" rid="table-4">Table 4</xref> demonstrates specific success rates and average operation times using the three algorithms after randomly choosing starting and ending points. Based on the analysis, IBCBS (1.1, 1) attains the highest success rate among the three algorithms, while IBCBS (1.0488, 1.0488) records the shortest operation time. If the problem model prioritizes a higher success rate over operation time, selecting IBCBS (1.1, 1) is recommended, despite its longer operation time. Conversely, if a higher operation time is required, choosing IBCBS (1.0488, 1.0488) would be preferable.</p>
<table-wrap id="table-4">
<label>Table 4</label>
<caption>
<title>Success rate and average run time of three kinds of IBCBS</title>
</caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
</colgroup>
<thead valign="top">
<tr>
<th rowspan="2">Number of AGVs</th>
<th colspan="2" align="center">IBCBS (1.1, 1)</th>
<th colspan="2" align="center">IBCBS (1, 1.1)</th>
<th colspan="2" align="center">IBCBS (1.0488, 1.0488)</th>
</tr>
<tr>
<th>Success rate</th>
<th>Average run time</th>
<th>Success rate</th>
<th>Average run time</th>
<th>Success rate</th>
<th>Average run time</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td>10</td>
<td><bold>82%</bold></td>
<td>1.345</td>
<td>70%</td>
<td>0.522</td>
<td>71%</td>
<td><bold>0.495</bold></td>
</tr>
<tr>
<td>20</td>
<td><bold>75%</bold></td>
<td>2.001</td>
<td>55%</td>
<td>0.785</td>
<td>57%</td>
<td><bold>0.765</bold></td>
</tr>
<tr>
<td>30</td>
<td><bold>67%</bold></td>
<td>2.493</td>
<td>43%</td>
<td>1.066</td>
<td>43%</td>
<td><bold>0.979</bold></td>
</tr>
<tr>
<td>40</td>
<td><bold>63%</bold></td>
<td>3.636</td>
<td>31%</td>
<td>1.545</td>
<td>32%</td>
<td><bold>1.375</bold></td>
</tr>
<tr>
<td>50</td>
<td><bold>42%</bold></td>
<td>4.676</td>
<td>16%</td>
<td>2.204</td>
<td>17%</td>
<td><bold>2.001</bold></td>
</tr>
<tr>
<td>60</td>
<td><bold>40%</bold></td>
<td>7.380</td>
<td>7%</td>
<td>2.416</td>
<td>8%</td>
<td><bold>2.203</bold></td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s5_3">
<label>5.3</label>
<title>Experimental Analysis of the Value of &#x03C9; in IBCBS (&#x03C9;, 1) on the Performance When AGV &#x003D; 60 Units</title>
<p>Set the effective time limit at 60 s, beyond which the solution is considered invalid. Choose 60 AGVs, with half of them moving from the shore bridge to the yard and the other half from the yard to the shore bridge. Fix the values at 1.01, 1.05, 1.1, 1.5, and 2.0 for &#x03C9;, and opt for IBCBS (&#x03C9;, 1) with the highest success rate among the three methods. Conduct 100 experiments.</p>
<p><xref ref-type="fig" rid="fig-12">Fig. 12</xref> depicts the computing time for 500 experiments, where times exceeding 60 s are deemed invalid. Experiment configurations, particularly the starting and endpoint selections, are random, occasionally resulting in computing times surpassing the limit. For instance, at &#x03C9; &#x003D; 1.01 and 1.05, some instances exceed 60 s, while other data cluster around 7.0 s. At &#x03C9; &#x003D; 1.01, the operation takes longer (illustrated by the green squares), with fewer instances indicating the lowest success rate compared to other data.</p>
<fig id="fig-12">
<label>Figure 12</label>
<caption>
<title>Run time of IBCBS (1.01, 1), IBCBS (1.05, 1), IBCBS (1.1, 1), IBCBS (1.5, 1) and IBCBS (2.0, 1)</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMES_46363-fig-12.tif"/>
</fig>
<p><xref ref-type="fig" rid="fig-13">Fig. 13</xref> displays the average operation time and success rate, excluding invalid data where operation times exceeded 60 s. With smaller &#x03C9; values, the focal search scope decreases, making it challenging to find valid solutions through Focal_list traversal. Therefore, success rates rise and average run times decline as &#x03C9; increases from 1.01 to 1.05 and 1.1. As &#x03C9; grows larger, the Focal_list node count increases, enhancing the chance of the target node&#x2019;s existence. Beyond &#x03C9; &#x003D; 1.1, the success rate plateaus, yet increasing &#x03C9; widens the search range, enabling faster discovery of nodes with fewer conflicts, thereby enhancing algorithm efficiency.</p>
<fig id="fig-13">
<label>Figure 13</label>
<caption>
<title>Success rate and average run time of IBCBS (<inline-formula id="ieqn-192"><mml:math id="mml-ieqn-192"><mml:mi>&#x03C9;</mml:mi></mml:math></inline-formula>, 1)</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMES_46363-fig-13.tif"/>
</fig>
<p><xref ref-type="table" rid="table-5">Table 5</xref> presents specific success rates and average operation time data for varying &#x03C9; values in IBCBS (&#x03C9;, 1). Based on the analysis, when dealing with 60 AGVs in the automated terminal, &#x03C9; &#x003D; 2.0 is preferable for high success rates and rapid computing times, whereas &#x03C9; &#x003D; 1.1 is preferable for maintaining a high success rate with excellent solution quality.</p>
<table-wrap id="table-5">
<label>Table 5</label>
<caption>
<title>Success rate and average run time of IBCBS (<inline-formula id="ieqn-193"><mml:math id="mml-ieqn-193"><mml:mi mathvariant="bold-italic">&#x03C9;</mml:mi></mml:math></inline-formula>, 1)</title>
</caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
</colgroup>
<thead valign="top">
<tr>
<th>Value of <inline-formula id="ieqn-194"><mml:math id="mml-ieqn-194"><mml:mrow><mml:mi mathvariant="normal">&#x03C9;</mml:mi></mml:mrow></mml:math></inline-formula></th>
<th>1.01</th>
<th>1.05</th>
<th>1.1</th>
<th>1.5</th>
<th>2.0</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td>Rate of success</td>
<td>33%</td>
<td>37%</td>
<td><bold>40%</bold></td>
<td><bold>40%</bold></td>
<td><bold>40%</bold></td>
</tr>
<tr>
<td>Average run time</td>
<td>7.786</td>
<td>7.559</td>
<td>7.380</td>
<td>7.167</td>
<td><bold>6.663</bold></td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
</sec>
<sec id="s6">
<label>6</label>
<title>Conclusions</title>
<p>To enhance productivity and minimize conflicts, a novel bounded conflict-based search method was introduced for ACT. Addressing AGV point and edge conflicts, the approach aimed to minimize AGVs&#x2019; total path length. We developed a multi-AGV conflict-free path planning model and solved it using the IBCBS algorithm with focal search. Our study compared the efficiency of IBCBS and CBS algorithms through several numerical experiments. The comparison was conducted across four techniques involving varying AGV numbers in three sets of experiments. Initially, with fixed start and endpoints and &#x03C9; value set at 1.1, all three IBCBS algorithms outperformed CBS. At 30 to 60 AGVs, IBCBS (1.0488, 1.0488) exhibited the highest speed and maintained an over cost of no more than 1.2%. Subsequently, employing randomly selected start and endpoints demonstrated the swiftness of IBCBS (1.0488, 1.0488) and the higher success rate of IBCBS (1.1, 1). Finally, using the IBCBS (&#x03C9;, 1) algorithm revealed a higher success rate with &#x03C9; above 1.1 and shorter average run times specifically at &#x03C9; &#x003D; 2.0. Our experiments indicate the practical applicability of the proposed IBCBS algorithm to existing automatic terminals, promising a significant enhancement in efficiency.</p>
<p>In our study, AGV speed remained constant. However, in practical scenarios, AGV speed might decrease or halt during turns or malfunctions. Future work could consider increasing the turning factor to minimize turns and better reflect real ACT scenarios. Additionally, employing reinforcement learning in future studies might further enhance solution speed.</p>
</sec>
</body>
<back>
<ack>
<p>The authors would like to acknowledge that this work would not have been possible without the support of the Shanghai Maritime University.</p>
</ack>
<sec><title>Funding Statement</title>
<p>This work was supported by National Natural Science Foundation of China (No. 62073212), Shanghai Science and Technology Commission (No. 23ZR1426600).</p>
</sec>
<sec><title>Author Contributions</title>
<p>Xinci Zhou: Methodology, Software, Validation, Investigation, Resources, Writing original draft, Visualization; Jin Zhu: Conceptualization, Formal analysis, Writing&#x2014;review and editing, Supervision, Project administration, Funding acquisition.</p>
</sec>
<sec sec-type="data-availability"><title>Availability of Data and Materials</title>
<p>All the reviewed research literature and used data in this research paper consists of publicly available scholarly articles, conference proceedings, books, and reports. The references and citations are contained in the reference list of this manuscript and can be accessed through online databases, academic libraries, or by contacting the respective publishers.</p>
</sec>
<sec sec-type="COI-statement"><title>Conflicts of Interest</title>
<p>The authors declare that they have no conflicts of interest to report regarding the present study.</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>Zhang</surname>, <given-names>Z.</given-names></string-name>, <string-name><surname>Chen</surname>, <given-names>J.</given-names></string-name>, <string-name><surname>Guo</surname>, <given-names>Q.</given-names></string-name></person-group> (<year>2023</year>). <article-title>Application of automated guided vehicles in smart automated warehouse systems: A survey</article-title>. <source>Computer Modeling in Engineering &#x0026; Sciences</source><italic>,</italic> <volume>134</volume><italic>(</italic><issue>3</issue><italic>),</italic> <fpage>1529</fpage>&#x2013;<lpage>1563</lpage>. <pub-id pub-id-type="doi">10.32604/cmes.2022.021451</pub-id></mixed-citation></ref>
<ref id="ref-2"><label>2.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Xu</surname>, <given-names>C.</given-names></string-name>, <string-name><surname>Zhu</surname>, <given-names>H.</given-names></string-name>, <string-name><surname>Zhu</surname>, <given-names>H.</given-names></string-name>, <string-name><surname>Wang</surname>, <given-names>J.</given-names></string-name>, <string-name><surname>Zhao</surname>, <given-names>Q.</given-names></string-name></person-group> (<year>2023</year>). <article-title>Improved RRT &#x2217; algorithm for automatic charging robot obstacle avoidance path planning in complex environments</article-title>. <source>Computer Modeling in Engineering &#x0026; Sciences</source><italic>,</italic> <volume>137</volume><italic>(</italic><issue>3</issue><italic>),</italic> <fpage>2567</fpage>&#x2013;<lpage>2591</lpage>. <pub-id pub-id-type="doi">10.32604/cmes.2023.029152</pub-id></mixed-citation></ref>
<ref id="ref-3"><label>3.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Yue</surname>, <given-names>L.</given-names></string-name>, <string-name><surname>Fan</surname>, <given-names>H.</given-names></string-name></person-group> (<year>2022</year>). <article-title>Dynamic scheduling and path planning of automated guided vehicles in automatic container terminal</article-title>. <source>IEEE/CAA Journal of Automatica Sinica</source><italic>,</italic> <volume>9</volume><italic>(</italic><issue>11</issue><italic>),</italic> <fpage>2005</fpage>&#x2013;<lpage>2019</lpage>. <pub-id pub-id-type="doi">10.1109/jas.2022.105950</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>Yuan</surname>, <given-names>Z.</given-names></string-name>, <string-name><surname>Yang</surname>, <given-names>Z.</given-names></string-name>, <string-name><surname>Lv</surname>, <given-names>L.</given-names></string-name>, <string-name><surname>Shi</surname>, <given-names>Y.</given-names></string-name></person-group> (<year>2020</year>). <article-title>A bi-level path planning algorithm for multi-AGV routing problem</article-title>. <source>Electronics</source><italic>,</italic> <volume>9</volume><italic>(</italic><issue>9</issue><italic>)</italic>, <fpage>1351</fpage>. <pub-id pub-id-type="doi">10.3390/electronics9091351</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>Wang</surname>, <given-names>Y. J.</given-names></string-name>, <string-name><surname>Liu</surname>, <given-names>X. Q.</given-names></string-name>, <string-name><surname>Leng</surname>, <given-names>J. Y.</given-names></string-name>, <string-name><surname>Wang</surname>, <given-names>J. J.</given-names></string-name>, <string-name><surname>Meng</surname>, <given-names>Q. N.</given-names></string-name> <etal>et al.</etal></person-group> (<year>2022</year>). <article-title>Study on scheduling and path planning problems of multi-AGVs based on a heuristic algorithm in intelligent manufacturing workshop</article-title>. <source>Advances in Production Engineering &#x0026; Management</source><italic>,</italic> <volume>17</volume><italic>(</italic><issue>4</issue><italic>),</italic> <fpage>505</fpage>&#x2013;<lpage>513</lpage>. <pub-id pub-id-type="doi">10.14743/apem2022.4.452</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>Fazlollahtabar</surname>, <given-names>H.</given-names></string-name>, <string-name><surname>Hassanli</surname>, <given-names>S.</given-names></string-name></person-group> (<year>2017</year>). <article-title>Hybrid cost and time path planning for multiple autonomous guided vehicles</article-title>. <source>Applied Intelligence</source><italic>,</italic> <volume>48</volume><italic>(</italic><issue>2</issue><italic>),</italic> <fpage>482</fpage>&#x2013;<lpage>498</lpage>. <pub-id pub-id-type="doi">10.1007/s10489-017-0997-x</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>Draganjac</surname>, <given-names>I.</given-names></string-name>, <string-name><surname>Miklic</surname>, <given-names>D.</given-names></string-name>, <string-name><surname>Kovacic</surname>, <given-names>Z.</given-names></string-name>, <string-name><surname>Vasiljevic</surname>, <given-names>G.</given-names></string-name>, <string-name><surname>Bogdan</surname>, <given-names>S.</given-names></string-name></person-group> (<year>2016</year>). <article-title>Decentralized control of multi-AGV systems in autonomous warehousing applications</article-title>. <source>IEEE Transactions on Automation Science and Engineering</source><italic>,</italic> <volume>13</volume><italic>(</italic><issue>4</issue><italic>),</italic> <fpage>1433</fpage>&#x2013;<lpage>1447</lpage>. <pub-id pub-id-type="doi">10.1109/tase.2016.2603781</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>Chen</surname>, <given-names>J.</given-names></string-name>, <string-name><surname>Zhang</surname>, <given-names>X.</given-names></string-name>, <string-name><surname>Peng</surname>, <given-names>X.</given-names></string-name>, <string-name><surname>Xu</surname>, <given-names>D.</given-names></string-name>, <string-name><surname>Peng</surname>, <given-names>J.</given-names></string-name></person-group> (<year>2022</year>). <article-title>Efficient routing for multi-AGV based on optimized Ant-agent</article-title>. <source>Computers &#x0026; Industrial Engineering</source><italic>,</italic> <volume>167</volume><italic>,</italic> <fpage>108042</fpage>. <pub-id pub-id-type="doi">10.1016/j.cie.2022.108042</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>Li</surname>, <given-names>J.</given-names></string-name>, <string-name><surname>Xu</surname>, <given-names>B.</given-names></string-name>, <string-name><surname>Yang</surname>, <given-names>Y.</given-names></string-name>, <string-name><surname>Wu</surname>, <given-names>H.</given-names></string-name></person-group> (<year>2018</year>). <article-title>Quantum ant colony optimization algorithm for AGVs path planning based on Bloch coordinates of pheromones</article-title>. <source>Natural Computing</source><italic>,</italic> <volume>19</volume><italic>(</italic><issue>4</issue><italic>),</italic> <fpage>673</fpage>&#x2013;<lpage>682</lpage>. <pub-id pub-id-type="doi">10.1007/s11047-018-9711-0</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>Choi</surname>, <given-names>H. B.</given-names></string-name>, <string-name><surname>Kim</surname>, <given-names>J. B.</given-names></string-name>, <string-name><surname>Han</surname>, <given-names>Y. H.</given-names></string-name>, <string-name><surname>Oh</surname>, <given-names>S. W.</given-names></string-name>, <string-name><surname>Kim</surname>, <given-names>K.</given-names></string-name></person-group> (<year>2022</year>). <article-title>MARL-based cooperative multi-AGV control in warehouse systems</article-title>. <source>IEEE Access</source><italic>,</italic> <volume>10</volume><italic>,</italic> <fpage>100478</fpage>&#x2013;<lpage>100488</lpage>. <pub-id pub-id-type="doi">10.1109/access.2022.3206537</pub-id></mixed-citation></ref>
<ref id="ref-11"><label>11.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Guo</surname>, <given-names>K.</given-names></string-name>, <string-name><surname>Zhu</surname>, <given-names>J.</given-names></string-name>, <string-name><surname>Shen</surname>, <given-names>L.</given-names></string-name></person-group> (<year>2021</year>). <article-title>An improved acceleration method based on multi-agent system for AGVs conflict-free path planning in automated terminals</article-title>. <source>IEEE Access</source><italic>,</italic> <volume>9</volume><italic>,</italic> <fpage>3326</fpage>&#x2013;<lpage>3338</lpage>. <pub-id pub-id-type="doi">10.1109/access.2020.3047916</pub-id></mixed-citation></ref>
<ref id="ref-12"><label>12.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Hu</surname>, <given-names>Y. J.</given-names></string-name>, <string-name><surname>Dong</surname>, <given-names>L. C.</given-names></string-name>, <string-name><surname>Xu</surname>, <given-names>L.</given-names></string-name></person-group> (<year>2020</year>). <article-title>Multi-AGV dispatching and routing problem based on a three-stage decomposition method</article-title>. <source>Mathematical Biosciences and Engineering</source><italic>,</italic> <volume>17</volume><italic>(</italic><issue>5</issue><italic>),</italic> <fpage>5150</fpage>&#x2013;<lpage>5172</lpage>. <pub-id pub-id-type="doi">10.3934/mbe.2020279</pub-id>; <pub-id pub-id-type="pmid">33120546</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>Zhong</surname>, <given-names>M.</given-names></string-name>, <string-name><surname>Yang</surname>, <given-names>Y.</given-names></string-name>, <string-name><surname>Dessouky</surname>, <given-names>Y.</given-names></string-name>, <string-name><surname>Postolache</surname>, <given-names>O.</given-names></string-name></person-group> (<year>2020</year>). <article-title>Multi-AGV scheduling for conflict-free path planning in automated container terminals</article-title>. <source>Computers &#x0026; Industrial Engineering</source><italic>,</italic> <volume>142</volume><italic>,</italic> <fpage>106371</fpage>. <pub-id pub-id-type="doi">10.1016/j.cie.2020.106371</pub-id></mixed-citation></ref>
<ref id="ref-14"><label>14.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Zhong</surname>, <given-names>M.</given-names></string-name>, <string-name><surname>Yang</surname>, <given-names>Y.</given-names></string-name>, <string-name><surname>Sun</surname>, <given-names>S.</given-names></string-name>, <string-name><surname>Zhou</surname>, <given-names>Y.</given-names></string-name>, <string-name><surname>Postolache</surname>, <given-names>O.</given-names></string-name> <etal>et al.</etal></person-group> (<year>2020</year>). <article-title>Priority-based speed control strategy for automated guided vehicle path planning in automated container terminals</article-title>. <source>Transactions of the Institute of Measurement and Control</source><italic>,</italic> <volume>42</volume><italic>(</italic><issue>16</issue><italic>),</italic> <fpage>3079</fpage>&#x2013;<lpage>3090</lpage>. <pub-id pub-id-type="doi">10.1177/0142331220940110</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>Wang</surname>, <given-names>J.</given-names></string-name>, <string-name><surname>Sun</surname>, <given-names>Y.</given-names></string-name>, <string-name><surname>Zhang</surname>, <given-names>Z.</given-names></string-name>, <string-name><surname>Gao</surname>, <given-names>S.</given-names></string-name></person-group> (<year>2020</year>). <article-title>Solving multitrip pickup and delivery problem with time windows and manpower planning using multiobjective algorithms</article-title>. <source>IEEE/CAA Journal of Automatica Sinica</source><italic>,</italic> <volume>7</volume><italic>(</italic><issue>4</issue><italic>),</italic> <fpage>1134</fpage>&#x2013;<lpage>1153</lpage>. <pub-id pub-id-type="doi">10.1109/jas.2020.1003204</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>Luo</surname>, <given-names>J.</given-names></string-name>, <string-name><surname>Wu</surname>, <given-names>Y.</given-names></string-name></person-group> (<year>2015</year>). <article-title>Modelling of dual-cycle strategy for container storage and vehicle scheduling problems at automated container terminals</article-title>. <source>Transportation Research Part E: Logistics and Transportation Review</source><italic>,</italic> <volume>79</volume><italic>,</italic> <fpage>49</fpage>&#x2013;<lpage>64</lpage>. <pub-id pub-id-type="doi">10.1016/j.tre.2015.03.006</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>Ma</surname>, <given-names>A.</given-names></string-name>, <string-name><surname>Ouimet</surname>, <given-names>M.</given-names></string-name>, <string-name><surname>Cort&#x00E9;s</surname>, <given-names>J.</given-names></string-name></person-group> (<year>2020</year>). <article-title>Hierarchical reinforcement learning via dynamic subspace search for multi-agent planning</article-title>. <source>Autonomous Robots</source><italic>,</italic> <volume>44</volume><italic>(</italic><issue>3&#x2013;4</issue><italic>),</italic> <fpage>485</fpage>&#x2013;<lpage>503</lpage>. <pub-id pub-id-type="doi">10.1007/s10514-019-09871-2</pub-id></mixed-citation></ref>
<ref id="ref-18"><label>18.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Zhou</surname>, <given-names>Y.</given-names></string-name>, <string-name><surname>Yang</surname>, <given-names>H.</given-names></string-name>, <string-name><surname>Wang</surname>, <given-names>Y.</given-names></string-name>, <string-name><surname>Yan</surname>, <given-names>X.</given-names></string-name></person-group> (<year>2021</year>). <article-title>Integrated line configuration and frequency determination with passenger path assignment in urban rail transit networks</article-title>. <source>Transportation Research Part B: Methodological</source><italic>,</italic> <volume>145</volume><italic>,</italic> <fpage>134</fpage>&#x2013;<lpage>151</lpage>. <pub-id pub-id-type="doi">10.1016/j.trb.2021.01.002</pub-id></mixed-citation></ref>
<ref id="ref-19"><label>19.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Chen</surname>, <given-names>H.</given-names></string-name>, <string-name><surname>Chen</surname>, <given-names>B.</given-names></string-name>, <string-name><surname>Varshney</surname>, <given-names>P. K.</given-names></string-name></person-group> (<year>2012</year>). <article-title>A new framework for distributed detection with conditionally dependent observations</article-title>. <source>IEEE Transactions on Signal Processing</source><italic>,</italic> <volume>60</volume><italic>(</italic><issue>3</issue><italic>),</italic> <fpage>1409</fpage>&#x2013;<lpage>1419</lpage>. <pub-id pub-id-type="doi">10.1109/tsp.2011.2177975</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>Andreychuk</surname>, <given-names>A.</given-names></string-name>, <string-name><surname>Yakovlev</surname>, <given-names>K.</given-names></string-name>, <string-name><surname>Surynek</surname>, <given-names>P.</given-names></string-name>, <string-name><surname>Atzmon</surname>, <given-names>D.</given-names></string-name>, <string-name><surname>Stern</surname>, <given-names>R.</given-names></string-name></person-group> (<year>2022</year>). <article-title>Multi-agent pathfinding with continuous time</article-title>. <source>Artificial Intelligence</source><italic>,</italic> <volume>305(C)</volume>. <pub-id pub-id-type="doi">10.1016/j.artint.2022.103662</pub-id></mixed-citation></ref>
<ref id="ref-21"><label>21.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Goldenberg</surname>, <given-names>M.</given-names></string-name>, <string-name><surname>Felner</surname>, <given-names>A.</given-names></string-name>, <string-name><surname>Stern</surname>, <given-names>R.</given-names></string-name>, <string-name><surname>Sharon</surname>, <given-names>G.</given-names></string-name>, <string-name><surname>Sturtevant</surname>, <given-names>N.</given-names></string-name> <etal>et al.</etal></person-group> (<year>2014</year>). <article-title>Enhanced partial expansion A</article-title>. <source>Journal of Artificial Intelligence Research</source><italic>,</italic> <volume>50</volume><italic>,</italic> <fpage>141</fpage>&#x2013;<lpage>187</lpage>. <pub-id pub-id-type="doi">10.1613/jair.4171</pub-id></mixed-citation></ref>
<ref id="ref-22"><label>22.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Sharon</surname>, <given-names>G.</given-names></string-name>, <string-name><surname>Stern</surname>, <given-names>R.</given-names></string-name>, <string-name><surname>Goldenberg</surname>, <given-names>M.</given-names></string-name>, <string-name><surname>Felner</surname>, <given-names>A.</given-names></string-name></person-group> (<year>2013</year>). <article-title>The increasing cost tree search for optimal multi-agent pathfinding</article-title>. <source>Artificial Intelligence</source><italic>,</italic> <volume>195</volume><italic>,</italic> <fpage>470</fpage>&#x2013;<lpage>495</lpage>. <pub-id pub-id-type="doi">10.1016/j.artint.2012.11.006</pub-id></mixed-citation></ref>
<ref id="ref-23"><label>23.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Sharon</surname>, <given-names>G.</given-names></string-name>, <string-name><surname>Stern</surname>, <given-names>R.</given-names></string-name>, <string-name><surname>Felner</surname>, <given-names>A.</given-names></string-name>, <string-name><surname>Sturtevant</surname>, <given-names>N. R.</given-names></string-name></person-group> (<year>2015</year>). <article-title>Conflict-based search for optimal multi-agent pathfinding</article-title>. <source>Artificial Intelligence</source><italic>,</italic> <volume>219</volume><italic>,</italic> <fpage>40</fpage>&#x2013;<lpage>66</lpage>. <pub-id pub-id-type="doi">10.1016/j.artint.2014.11.006</pub-id></mixed-citation></ref>
<ref id="ref-24"><label>24.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Pearl</surname>, <given-names>J.</given-names></string-name>, <string-name><surname>Kim</surname>, <given-names>J. H.</given-names></string-name></person-group> (<year>1982</year>). <article-title>Studies in semi-admissible heuristics</article-title>. <source>IEEE Transactions on Pattern Analysis and Machine Intelligence</source><italic>,</italic> <italic>(</italic><issue>4</issue><italic>),</italic> <fpage>392</fpage>&#x2013;<lpage>399</lpage>. <pub-id pub-id-type="doi">10.1109/TPAMI.1982.4767270</pub-id>; <pub-id pub-id-type="pmid">21869053</pub-id></mixed-citation></ref>
<ref id="ref-25"><label>25.</label><mixed-citation publication-type="book"><person-group person-group-type="author"><string-name><surname>Lifschitz</surname>, <given-names>V.</given-names></string-name></person-group> (<year>2019</year>). <source>Answer set programming</source><italic>,</italic> pp. <fpage>1</fpage>&#x2013;<lpage>147</lpage>. <publisher-loc>Heidelberg</publisher-loc>: <publisher-name>Springer</publisher-name>.</mixed-citation></ref>
<ref id="ref-26"><label>26.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Barer</surname>, <given-names>M.</given-names></string-name>, <string-name><surname>Sharon</surname>, <given-names>G.</given-names></string-name>, <string-name><surname>Stern</surname>, <given-names>R.</given-names></string-name>, <string-name><surname>Felner</surname>, <given-names>A.</given-names></string-name></person-group> (<year>2014</year>). <article-title>Suboptimal variants of the conflict-based search algorithm for the multi-agent pathfinding problem</article-title>. <source>Proceedings of the International Symposium on Combinatorial Search</source><italic>,</italic> <volume>5</volume><italic>,</italic> <fpage>19</fpage>&#x2013;<lpage>27</lpage>. <pub-id pub-id-type="doi">10.1609/socs.v5i1.18315</pub-id></mixed-citation></ref>
</ref-list>
</back></article>