<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.1 20151215//EN" "http://jats.nlm.nih.gov/publishing/1.1/JATS-journalpublishing1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:mml="http://www.w3.org/1998/Math/MathML" xml:lang="en" article-type="research-article" dtd-version="1.1">
<front>
<journal-meta>
<journal-id journal-id-type="pmc">CMC</journal-id>
<journal-id journal-id-type="nlm-ta">CMC</journal-id>
<journal-id journal-id-type="publisher-id">CMC</journal-id>
<journal-title-group>
<journal-title>Computers, Materials &#x0026; Continua</journal-title>
</journal-title-group>
<issn pub-type="epub">1546-2226</issn>
<issn pub-type="ppub">1546-2218</issn>
<publisher>
<publisher-name>Tech Science Press</publisher-name>
<publisher-loc>USA</publisher-loc>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">66390</article-id>
<article-id pub-id-type="doi">10.32604/cmc.2025.066390</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Article</subject>
</subj-group>
</article-categories>
<title-group>
<article-title>An Adaptive Hybrid Metaheuristic for Solving the Vehicle Routing Problem with Time Windows under Uncertainty</article-title>
<alt-title alt-title-type="left-running-head">An Adaptive Hybrid Metaheuristic for Solving the Vehicle Routing Problem with Time Windows under Uncertainty</alt-title>
<alt-title alt-title-type="right-running-head">An Adaptive Hybrid Metaheuristic for Solving the Vehicle Routing Problem with Time Windows under Uncertainty</alt-title>
</title-group>
<contrib-group>
<contrib id="author-1" contrib-type="author" corresp="yes">
<name name-style="western"><surname>Reis</surname><given-names>Manuel J. C. S.</given-names></name><email>mcabral@utad.pt</email></contrib>
<aff id="aff-1">
<institution>Engineering Department &#x0026; IEETA, University of Tr&#x00E1;s-os-Montes e Alto Douro</institution>, <addr-line>Vila Real, 5000-801</addr-line>, <country>Portugal</country></aff>
</contrib-group>
<author-notes>
<corresp id="cor1"><label>&#x002A;</label>Corresponding Author: Manuel J. C. S. Reis. Email: <email>mcabral@utad.pt</email></corresp>
</author-notes>
<pub-date date-type="collection" publication-format="electronic">
<year>2025</year></pub-date>
<pub-date date-type="pub" publication-format="electronic">
<day>23</day><month>09</month><year>2025</year>
</pub-date>
<volume>85</volume>
<issue>2</issue>
<fpage>3023</fpage>
<lpage>3039</lpage>
<history>
<date date-type="received">
<day>07</day>
<month>4</month>
<year>2025</year>
</date>
<date date-type="accepted">
<day>15</day>
<month>8</month>
<year>2025</year>
</date>
</history>
<permissions>
<copyright-statement>&#x00A9; 2025 The Author.</copyright-statement>
<copyright-year>2025</copyright-year>
<copyright-holder>Published by Tech Science Press.</copyright-holder>
<license xlink:href="https://creativecommons.org/licenses/by/4.0/">
<license-p>This work is licensed under a <ext-link ext-link-type="uri" xlink:type="simple" xlink:href="https://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</ext-link>, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</license-p>
</license>
</permissions>
<self-uri content-type="pdf" xlink:href="TSP_CMC_66390.pdf"></self-uri>
<abstract>
<p>The Vehicle Routing Problem with Time Windows (VRPTW) presents a significant challenge in combinatorial optimization, especially under real-world uncertainties such as variable travel times, service durations, and dynamic customer demands. These uncertainties make traditional deterministic models inadequate, often leading to suboptimal or infeasible solutions. To address these challenges, this work proposes an adaptive hybrid metaheuristic that integrates Genetic Algorithms (GA) with Local Search (LS), while incorporating stochastic uncertainty modeling through probabilistic travel times. The proposed algorithm dynamically adjusts parameters&#x2014;such as mutation rate and local search probability&#x2014;based on real-time search performance. This adaptivity enhances the algorithm&#x2019;s ability to balance exploration and exploitation during the optimization process. Travel time uncertainties are modeled using Gaussian noise, and solution robustness is evaluated through scenario-based simulations. We test our method on a set of benchmark problems from Solomon&#x2019;s instance suite, comparing its performance under deterministic and stochastic conditions. Results show that the proposed hybrid approach achieves up to a 9% reduction in expected total travel time and a 40% reduction in time window violations compared to baseline methods, including classical GA and non-adaptive hybrids. Additionally, the algorithm demonstrates strong robustness, with lower solution variance across uncertainty scenarios, and converges faster than competing approaches. These findings highlight the method&#x2019;s suitability for practical logistics applications such as last-mile delivery and real-time transportation planning, where uncertainty and service-level constraints are critical. The flexibility and effectiveness of the proposed framework make it a promising candidate for deployment in dynamic, uncertainty-aware supply chain environments.</p>
</abstract>
<kwd-group kwd-group-type="author">
<kwd>Vehicle routing problem with time windows (VRPTW)</kwd>
<kwd>hybrid metaheuristic</kwd>
<kwd>genetic algorithm</kwd>
<kwd>local search</kwd>
<kwd>uncertainty modeling</kwd>
<kwd>stochastic optimization</kwd>
<kwd>adaptive algorithms</kwd>
<kwd>combinatorial optimization</kwd>
<kwd>transportation and logistics</kwd>
<kwd>robust scheduling</kwd>
</kwd-group>
</article-meta>
</front>
<body>
<sec id="s1">
<label>1</label>
<title>Introduction</title>
<p>Efficient logistics and transportation are essential to modern supply chain management, with direct implications for operational costs, environmental sustainability, and customer satisfaction. One of the most prominent challenges in this field is the <italic>Vehicle Routing Problem with Time Windows (VRPTW)</italic>, which involves determining optimal routes for a fleet of vehicles to serve customers within predefined time intervals [<xref ref-type="bibr" rid="ref-1">1</xref>]. By introducing time window constraints, the VRPTW significantly increases the complexity of the classical Vehicle Routing Problem (VRP) [<xref ref-type="bibr" rid="ref-2">2</xref>].</p>
<p>In practice, routing performance is often influenced by uncertainties such as fluctuating travel times, variable service durations, and changing customer demands. Traditional deterministic models struggle to accommodate such variability, frequently resulting in suboptimal or infeasible solutions [<xref ref-type="bibr" rid="ref-3">3</xref>]. To address these challenges, stochastic and robust optimization methods have been developed to enable more reliable and resilient routing under uncertainty [<xref ref-type="bibr" rid="ref-4">4</xref>].</p>
<p>Metaheuristic algorithms&#x2014;particularly hybrid approaches&#x2014;have demonstrated strong performance in solving VRPTW and its variants. By combining global exploration with local refinement, these methods effectively balance the search process across large and complex solution spaces [<xref ref-type="bibr" rid="ref-5">5</xref>]. Early work in this area combined Genetic Algorithms (GA) with Local Search (LS) to enhance both solution quality and computational efficiency [<xref ref-type="bibr" rid="ref-6">6</xref>]. More recent studies have introduced advanced hybridizations incorporating modern heuristics and adaptive strategies. For example, a study proposed an Improved Genetic Ant Colony Optimization (IGA-ACO) algorithm that integrates Solomon&#x2019;s insertion heuristic for population initialization, achieving faster convergence and better route planning under time and capacity constraints [<xref ref-type="bibr" rid="ref-7">7</xref>]. Similarly, a self-adaptive combination of Intelligent Water Drops and Simulated Annealing has been used in green logistics to reduce emissions while maintaining adaptability [<xref ref-type="bibr" rid="ref-8">8</xref>]. Other work has shown that coupling GA with Record-to-Record Travel (GA-RR) improves both route robustness and efficiency in capacitated VRP scenarios [<xref ref-type="bibr" rid="ref-9">9</xref>].</p>
<p>Despite these advances, many existing metaheuristics still rely on static parameters or fixed algorithmic structures, limiting their responsiveness to changing problem landscapes or uncertain inputs. Adaptive mechanisms that dynamically tune algorithmic parameters based on performance feedback can further enhance solution quality, robustness, and convergence speed [<xref ref-type="bibr" rid="ref-10">10</xref>].</p>
<p>In this study, we propose an Adaptive Hybrid Metaheuristic (AHM) that integrates Genetic Algorithms with Local Search while incorporating stochastic modeling of travel-time uncertainty to address the VRPTW under realistic operating conditions. The primary contributions of this work are as follows:
<list list-type="order">
<list-item>
<p><bold>Development of an Adaptive Hybrid Metaheuristic:</bold> A novel algorithm that adjusts key parameters dynamically to effectively balance exploration and exploitation during the optimization process.</p></list-item>
<list-item>
<p><bold>Integration of Uncertainty Modeling:</bold> A probabilistic framework that captures the variability of real-world travel times through scenario-based simulations.</p></list-item>
<list-item>
<p><bold>Comprehensive Performance Evaluation:</bold> Extensive testing on benchmark instances from Solomon&#x2019;s suite, demonstrating the algorithm&#x2019;s superiority in robustness, feasibility, and computational efficiency.</p></list-item>
</list></p>
<p>The remainder of this paper is organized as follows: <xref ref-type="sec" rid="s2">Section 2</xref> reviews related work in VRPTW and hybrid metaheuristics; <xref ref-type="sec" rid="s3">Section 3</xref> presents the problem formulation; <xref ref-type="sec" rid="s4">Section 4</xref> details the proposed methodology; <xref ref-type="sec" rid="s5">Section 5</xref> presents the experimental setup; <xref ref-type="sec" rid="s6">Section 6</xref> presents the results and a discussion; and <xref ref-type="sec" rid="s7">Section 7</xref> concludes with insights and future research directions.</p>
</sec>
<sec id="s2">
<label>2</label>
<title>Related Work</title>
<p>The Vehicle Routing Problem with Time Windows (VRPTW) has been extensively studied due to its critical role in logistics and transportation. This section reviews significant contributions, focusing on recent advancements in exact methods, metaheuristic approaches, uncertainty modeling, and green logistics.</p>
<sec id="s2_1">
<label>2.1</label>
<title>Exact Methods for VRPTW</title>
<p>Early research on VRPTW primarily employed exact algorithms, such as branch-and-bound and dynamic programming, to find optimal solutions. However, these methods often faced scalability issues with larger problem instances. Recent studies have aimed to enhance the efficiency of exact methods. For instance, Baldacci et al. [<xref ref-type="bibr" rid="ref-11">11</xref>] provided a comprehensive review of exact algorithms for VRPTW, discussing their applicability and limitations in large-scale scenarios.</p>
</sec>
<sec id="s2_2">
<label>2.2</label>
<title>Metaheuristic Approaches</title>
<p>To address the limitations of exact methods, metaheuristic algorithms have been widely adopted. Techniques like GAs, Ant Colony Optimization (ACO), and Particle Swarm Optimization (PSO) have been applied to VRPTW with notable success. Marinakis et al. [<xref ref-type="bibr" rid="ref-12">12</xref>] introduced a multi-adaptive PSO for VRPTW, demonstrating improved performance over traditional PSO variants. Furthermore, Zahedi and Khalilzadeh [<xref ref-type="bibr" rid="ref-13">13</xref>] proposed a hybrid metaheuristic algorithm combining the Nondominated Sorting Genetic Algorithm II (NSGA-II) with Teaching&#x2013;Learning-Based Optimization (TLBO) to solve a bi-objective capacitated electric vehicle routing problem with time windows and partial recharging. Their method efficiently balances routing cost and environmental impact, illustrating the growing interest in sustainable and multi-objective VRP solutions.</p>
</sec>
<sec id="s2_3">
<label>2.3</label>
<title>Handling Uncertainty in VRPTW</title>
<p>Real-world applications of VRPTW often involve uncertainties such as stochastic customer demands and variable travel times. Traditional deterministic models may not adequately capture these uncertainties, leading to suboptimal solutions. Recent research has focused on stochastic and robust optimization methods to better handle these challenges. Florio et al. [<xref ref-type="bibr" rid="ref-14">14</xref>] discussed Bayesian learning techniques for correlated demands in stochastic VRP, offering insights into handling demand uncertainty effectively. Additionally, Indrianti et al. [<xref ref-type="bibr" rid="ref-15">15</xref>] developed a Green Vehicle Routing Problem (GVRP) model that integrates complex real-world constraints&#x2014;including emission reduction and delivery limits&#x2014;using GAs.</p>
</sec>
<sec id="s2_4">
<label>2.4</label>
<title>Green Logistics and Sustainability</title>
<p>With the growing emphasis on sustainability, recent studies have integrated environmental objectives into VRPTW. Zahedi and Khalilzadeh [<xref ref-type="bibr" rid="ref-13">13</xref>] offered a hybrid metaheuristic algorithm combining NSGA-II and teaching&#x2013;learning-based optimization for a bi-objective capacitated electric vehicle routing problem with time windows and partial recharging, addressing both economic and environmental considerations. Additionally, Fan [<xref ref-type="bibr" rid="ref-16">16</xref>] developed a hybrid adaptive large neighborhood search method for the time-dependent open electric vehicle routing problem with hybrid energy replenishment strategies, contributing to the advancement of sustainable transportation solutions.</p>
</sec>
<sec id="s2_5">
<label>2.5</label>
<title>Adaptive and Hybrid Metaheuristics</title>
<p>The integration of adaptive mechanisms into hybrid metaheuristics has shown promise in enhancing the flexibility and efficiency of VRPTW solutions. Chen et al. [<xref ref-type="bibr" rid="ref-7">7</xref>] proposed an Improved Genetic Ant Colony Optimization (IGA-ACO) algorithm to efficiently solve VRPTW, integrating Solomon&#x2019;s insertion heuristic for population initialization and accelerating convergence while optimizing route planning to meet vehicle capacity and time window constraints. This approach highlights the potential of combining adaptive strategies with hybrid metaheuristics to tackle complex routing problems effectively.</p>
</sec>
<sec id="s2_6">
<label>2.6</label>
<title>Summary</title>
<p>The landscape of VRPTW research has evolved from classical exact methods to sophisticated hybrid metaheuristics that incorporate adaptive mechanisms and uncertainty modeling. Recent advancements have also integrated sustainability considerations, reflecting the multifaceted challenges of modern logistics. Despite these developments, opportunities remain to further enhance the adaptability and robustness of VRPTW solutions, particularly through the integration of real-time data and machine learning techniques.</p>
<p>To provide a concise and comparative overview of recent contributions to the VRPTW and its variants, <xref ref-type="table" rid="table-1">Table 1</xref> summarizes the key characteristics of relevant studies, including the year of publication, problem variants addressed, uncertainty and sustainability aspects, the metaheuristic techniques employed, and a brief evaluation of their advantages and disadvantages.</p>
<table-wrap id="table-1">
<label>Table 1</label>
<caption>
<title>Summary of recent studies related to the VRPTW, including publication year, problem variants, uncertainty modeling, green logistics integration, metaheuristic strategies, and key advantages and limitations</title>
</caption>
<table>
<colgroup>
<col/>
<col/>
<col/>
<col/>
<col/>
<col/>
<col/>
<col/>
</colgroup>
<thead>
<tr>
<th>Reference</th>
<th>Year</th>
<th>Approach</th>
<th>Uncertainty</th>
<th>Green</th>
<th>VRP Variant</th>
<th>Metaheuristic</th>
<th align="center">Advantages/Disadvantages</th>
</tr>
</thead>
<tbody>
<tr>
<td>[<xref ref-type="bibr" rid="ref-11">11</xref>]</td>
<td>2012</td>
<td>Exact optimization review</td>
<td>&#x2013;</td>
<td>&#x2013;</td>
<td>VRPTW</td>
<td>None</td>
<td>&#x002B; Comprehensive methodology; &#x2013; Not scalable to large instances.</td>
</tr>
<tr>
<td>[<xref ref-type="bibr" rid="ref-12">12</xref>]</td>
<td>2019</td>
<td>Multi-adaptive PSO</td>
<td>&#x2013;</td>
<td>&#x2013;</td>
<td>VRPTW</td>
<td>Particle Swarm Optimization</td>
<td>&#x002B; Adaptive control; &#x2013; May converge prematurely.</td>
</tr>
<tr>
<td>[<xref ref-type="bibr" rid="ref-7">7</xref>]</td>
<td>2023</td>
<td>GA &#x002B; ACO with Solomon&#x2019;s heuristic</td>
<td>&#x2013;</td>
<td>&#x2013;</td>
<td>VRPTW</td>
<td>Hybrid metaheuristic</td>
<td>&#x002B; Fast initialization and convergence; &#x2013; No uncertainty modeling.</td>
</tr>
<tr>
<td>[<xref ref-type="bibr" rid="ref-13">13</xref>]</td>
<td>2023</td>
<td>NSGA-II &#x002B; TLBO</td>
<td>&#x2013;</td>
<td>&#x2713;</td>
<td>EVRP-TW &#x002B; Partial Recharging</td>
<td>Hybrid multi-objective</td>
<td>&#x002B; Energy-efficient routing; &#x2013; Higher computational complexity.</td>
</tr>
<tr>
<td>[<xref ref-type="bibr" rid="ref-16">16</xref>]</td>
<td>2023</td>
<td>Adaptive Large Neighborhood Search (ALNS)</td>
<td>&#x2013;</td>
<td>&#x2713;</td>
<td>TD-EVRP (Open)</td>
<td>Adaptive heuristic</td>
<td>&#x002B; Realistic energy strategies; &#x2013; Less scalable.</td>
</tr>
<tr>
<td>[<xref ref-type="bibr" rid="ref-14">14</xref>]</td>
<td>2023</td>
<td>Branch-Price-and-Cut &#x002B; Bayesian learning</td>
<td>&#x2713;</td>
<td>&#x2013;</td>
<td>Stochastic VRP</td>
<td>Robust/Exact</td>
<td>&#x002B; Captures demand correlation; &#x2013; High implementation complexity.</td>
</tr>
<tr>
<td>[<xref ref-type="bibr" rid="ref-15">15</xref>]</td>
<td>2025</td>
<td>GA with green constraints</td>
<td>&#x2713;</td>
<td>&#x2713;</td>
<td>GVRP (LPG Distribution)</td>
<td>GA</td>
<td>&#x002B; Focus on emissions; &#x2013; Performance on large instances unclear.</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
</sec>
<sec id="s3">
<label>3</label>
<title>Problem Formulation</title>
<p>We formulate the Vehicle Routing Problem with Time Windows under Uncertainty (VRPTW-U) on a complete directed graph <inline-formula id="ieqn-1"><mml:math id="mml-ieqn-1"><mml:mi>G</mml:mi><mml:mo>=</mml:mo><mml:mo stretchy="false">(</mml:mo><mml:mi>V</mml:mi><mml:mo>,</mml:mo><mml:mi>A</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>, where:
<list list-type="bullet">
<list-item>
<p><inline-formula id="ieqn-2"><mml:math id="mml-ieqn-2"><mml:mi>V</mml:mi><mml:mo>=</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>2</mml:mn><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>,</mml:mo><mml:mi>n</mml:mi><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula> is the set of nodes, where node 0 represents the depot, and <inline-formula id="ieqn-3"><mml:math id="mml-ieqn-3"><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>,</mml:mo><mml:mi>n</mml:mi></mml:math></inline-formula> represent customer locations.</p></list-item>
<list-item>
<p><inline-formula id="ieqn-4"><mml:math id="mml-ieqn-4"><mml:mi>A</mml:mi><mml:mo>=</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2223;</mml:mo><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mi>V</mml:mi><mml:mo>,</mml:mo><mml:mi>i</mml:mi><mml:mo>&#x2260;</mml:mo><mml:mi>j</mml:mi><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula> is the set of directed arcs between all pairs of nodes.</p></list-item>
</list></p>
<p>Each customer <inline-formula id="ieqn-5"><mml:math id="mml-ieqn-5"><mml:mi>i</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>,</mml:mo><mml:mi>n</mml:mi><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula> is associated with:
<list list-type="bullet">
<list-item>
<p>a non-negative demand <inline-formula id="ieqn-6"><mml:math id="mml-ieqn-6"><mml:msub><mml:mi>q</mml:mi><mml:mi>i</mml:mi></mml:msub></mml:math></inline-formula>,</p></list-item>
<list-item>
<p>a service time <inline-formula id="ieqn-7"><mml:math id="mml-ieqn-7"><mml:msub><mml:mi>s</mml:mi><mml:mi>i</mml:mi></mml:msub></mml:math></inline-formula>,</p></list-item>
<list-item>
<p>a time window <inline-formula id="ieqn-8"><mml:math id="mml-ieqn-8"><mml:mo stretchy="false">[</mml:mo><mml:msub><mml:mi>e</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>l</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula> within which service must begin.</p></list-item>
</list></p>
<p>Each vehicle <inline-formula id="ieqn-9"><mml:math id="mml-ieqn-9"><mml:mi>k</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>,</mml:mo><mml:mi>m</mml:mi><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula> has:
<list list-type="bullet">
<list-item>
<p>capacity <italic>Q</italic>,</p></list-item>
<list-item>
<p>starting and ending location at the depot (<inline-formula id="ieqn-10"><mml:math id="mml-ieqn-10"><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula>),</p></list-item>
<list-item>
<p>and must obey all time window constraints.</p></list-item>
</list></p>
<p>To enhance the intuitive understanding of the problem structure, a schematic representation is provided in <xref ref-type="fig" rid="fig-1">Fig. 1</xref>.</p>
<fig id="fig-1">
<label>Figure 1</label>
<caption>
<title>Schematic representation of the VRPTW under uncertainty. A depot (node 0) serves multiple customers (nodes 1&#x2014;<inline-formula id="ieqn-17"><mml:math id="mml-ieqn-17"><mml:mi>n</mml:mi></mml:math></inline-formula>) with defined time windows and stochastic travel times between locations. Each vehicle route must obey capacity and time window constraints, with uncertain travel times modeled by Gaussian perturbations</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_66390-fig-1.tif"/>
</fig>
<p>Let <inline-formula id="ieqn-11"><mml:math id="mml-ieqn-11"><mml:msub><mml:mi>t</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> represent the nominal travel time between nodes <inline-formula id="ieqn-12"><mml:math id="mml-ieqn-12"><mml:mi>i</mml:mi></mml:math></inline-formula> and <inline-formula id="ieqn-13"><mml:math id="mml-ieqn-13"><mml:mi>j</mml:mi></mml:math></inline-formula>, and let <inline-formula id="ieqn-14"><mml:math id="mml-ieqn-14"><mml:msub><mml:mrow><mml:mover><mml:mi>t</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> represent the actual travel time under uncertainty, modeled as:
<disp-formula id="eqn-1"><label>(1)</label><mml:math id="mml-eqn-1" display="block"><mml:msub><mml:mrow><mml:mover><mml:mi>t</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mi>t</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mi>&#x03B5;</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mspace width="1em" /><mml:msub><mml:mi>&#x03B5;</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>&#x223C;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x1D49F;</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></disp-formula>where <inline-formula id="ieqn-15"><mml:math id="mml-ieqn-15"><mml:msub><mml:mrow><mml:mi>&#x1D49F;</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> is a known distribution (e.g., <inline-formula id="ieqn-16"><mml:math id="mml-ieqn-16"><mml:mrow><mml:mi>&#x1D4A9;</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:msubsup><mml:mi>&#x03C3;</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mn>2</mml:mn></mml:msubsup><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> for Gaussian noise) defined per arc.</p>
<p>The decision variables are:
<disp-formula id="ueqn-2"><mml:math id="mml-ueqn-2" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi><mml:mi>k</mml:mi></mml:mrow></mml:msub></mml:mtd><mml:mtd><mml:mi></mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mtable columnalign="left left" rowspacing=".2em" columnspacing="1em" displaystyle="false"><mml:mtr><mml:mtd><mml:mn>1</mml:mn><mml:mo>,</mml:mo></mml:mtd><mml:mtd><mml:mrow><mml:mtext>if vehicle&#xA0;</mml:mtext></mml:mrow><mml:mi>k</mml:mi><mml:mrow><mml:mtext>&#xA0;travels from node&#xA0;</mml:mtext></mml:mrow><mml:mi>i</mml:mi><mml:mrow><mml:mtext>&#xA0;to&#xA0;</mml:mtext></mml:mrow><mml:mi>j</mml:mi></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mn>0</mml:mn><mml:mo>,</mml:mo></mml:mtd><mml:mtd><mml:mrow><mml:mtext>otherwise</mml:mtext></mml:mrow></mml:mtd></mml:mtr></mml:mtable><mml:mo fence="true" stretchy="true" symmetric="true"></mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>k</mml:mi></mml:mrow></mml:msub></mml:mtd><mml:mtd><mml:mi></mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mtext>arrival time of vehicle&#xA0;</mml:mtext></mml:mrow><mml:mi>k</mml:mi><mml:mrow><mml:mtext>&#xA0;at node&#xA0;</mml:mtext></mml:mrow><mml:mi>i</mml:mi></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:msub><mml:mi>l</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>k</mml:mi></mml:mrow></mml:msub></mml:mtd><mml:mtd><mml:mi></mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mtext>load of vehicle&#xA0;</mml:mtext></mml:mrow><mml:mi>k</mml:mi><mml:mrow><mml:mtext>&#xA0;after visiting node&#xA0;</mml:mtext></mml:mrow><mml:mi>i</mml:mi></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula></p>
<p>The objective is to minimize the expected total travel time:
<disp-formula id="eqn-2"><label>(2)</label><mml:math id="mml-eqn-2" display="block"><mml:mo movablelimits="true" form="prefix">min</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:mrow><mml:mi mathvariant="double-struck">E</mml:mi></mml:mrow><mml:mrow><mml:mo>[</mml:mo><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>k</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mi>m</mml:mi></mml:munderover><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:mrow><mml:mi>n</mml:mi></mml:munderover><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>j</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:mrow><mml:mi>n</mml:mi></mml:munderover><mml:msub><mml:mrow><mml:mover><mml:mi>t</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>&#x22C5;</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mo>]</mml:mo></mml:mrow></mml:math></disp-formula>subject to:
<disp-formula id="eqn-3"><label>(3)</label><mml:math id="mml-eqn-3" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:mi></mml:mi><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:mi>n</mml:mi></mml:munderover><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>k</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mi>m</mml:mi></mml:munderover><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mn>0</mml:mn><mml:mi>j</mml:mi><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mi>m</mml:mi><mml:mspace width="1em" /><mml:mrow><mml:mtext>(each vehicle leaves depot once)</mml:mtext></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="eqn-4"><label>(4)</label><mml:math id="mml-eqn-4" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:mi></mml:mi><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>j</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:mrow><mml:mi>n</mml:mi></mml:munderover><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>j</mml:mi><mml:mi>i</mml:mi><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2212;</mml:mo><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>j</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:mrow><mml:mi>n</mml:mi></mml:munderover><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mspace width="1em" /><mml:mi mathvariant="normal">&#x2200;</mml:mi><mml:mi>i</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mi>V</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="normal">&#x2200;</mml:mi><mml:mi>k</mml:mi><mml:mspace width="1em" /><mml:mrow><mml:mtext>(flow conservation)</mml:mtext></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="eqn-5"><label>(5)</label><mml:math id="mml-eqn-5" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:mi></mml:mi><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>k</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mi>m</mml:mi></mml:munderover><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>j</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:mrow><mml:mi>n</mml:mi></mml:munderover><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mspace width="1em" /><mml:mi mathvariant="normal">&#x2200;</mml:mi><mml:mi>i</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>,</mml:mo><mml:mi>n</mml:mi><mml:mo fence="false" stretchy="false">}</mml:mo><mml:mspace width="1em" /><mml:mrow><mml:mtext>(each customer visited once)</mml:mtext></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="eqn-6"><label>(6)</label><mml:math id="mml-eqn-6" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:msub><mml:mi>l</mml:mi><mml:mrow><mml:mi>j</mml:mi><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2265;</mml:mo><mml:msub><mml:mi>l</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mi>q</mml:mi><mml:mi>j</mml:mi></mml:msub><mml:mo>&#x2212;</mml:mo><mml:mi>Q</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mn>1</mml:mn><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mo stretchy="false">)</mml:mo><mml:mo>,</mml:mo><mml:mspace width="1em" /><mml:mi mathvariant="normal">&#x2200;</mml:mi><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi><mml:mo>,</mml:mo><mml:mi>k</mml:mi><mml:mspace width="1em" /><mml:mrow><mml:mtext>(vehicle capacity update)</mml:mtext></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="eqn-7"><label>(7)</label><mml:math id="mml-eqn-7" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:mn>0</mml:mn><mml:mo>&#x2264;</mml:mo><mml:msub><mml:mi>l</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2264;</mml:mo><mml:mi>Q</mml:mi><mml:mo>,</mml:mo><mml:mspace width="1em" /><mml:mi mathvariant="normal">&#x2200;</mml:mi><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>k</mml:mi><mml:mspace width="1em" /><mml:mrow><mml:mtext>(capacity limits)</mml:mtext></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="eqn-8"><label>(8)</label><mml:math id="mml-eqn-8" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mi>j</mml:mi><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2265;</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mi>s</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mrow><mml:mover><mml:mi>t</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2212;</mml:mo><mml:mi>M</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mn>1</mml:mn><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mo stretchy="false">)</mml:mo><mml:mo>,</mml:mo><mml:mspace width="1em" /><mml:mi mathvariant="normal">&#x2200;</mml:mi><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi><mml:mo>,</mml:mo><mml:mi>k</mml:mi><mml:mspace width="1em" /><mml:mrow><mml:mtext>(time propagation)</mml:mtext></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="eqn-9"><label>(9)</label><mml:math id="mml-eqn-9" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:msub><mml:mi>e</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>&#x2264;</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2264;</mml:mo><mml:msub><mml:mi>l</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:mspace width="1em" /><mml:mi mathvariant="normal">&#x2200;</mml:mi><mml:mi>i</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mi>V</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="normal">&#x2200;</mml:mi><mml:mi>k</mml:mi><mml:mspace width="1em" /><mml:mrow><mml:mtext>(time windows)</mml:mtext></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="eqn-10"><label>(10)</label><mml:math id="mml-eqn-10" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo fence="false" stretchy="false">}</mml:mo><mml:mo>,</mml:mo><mml:mspace width="1em" /><mml:mi mathvariant="normal">&#x2200;</mml:mi><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi><mml:mo>,</mml:mo><mml:mi>k</mml:mi></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula></p>
<p>Here, <italic>M</italic> is a large constant to deactivate time constraints when <inline-formula id="ieqn-18"><mml:math id="mml-ieqn-18"><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula>.</p>
<p>To evaluate robustness under uncertainty, we simulate multiple realizations of <inline-formula id="ieqn-19"><mml:math id="mml-ieqn-19"><mml:msub><mml:mrow><mml:mover><mml:mi>t</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> and report average and worst-case performance metrics over <inline-formula id="ieqn-20"><mml:math id="mml-ieqn-20"><mml:mi>r</mml:mi></mml:math></inline-formula> stochastic scenarios.</p>
<p><bold><italic>Robustness under Uncertainty</italic></bold></p>
<p>To evaluate solution robustness under uncertainty, we consider a finite scenario set <inline-formula id="ieqn-21"><mml:math id="mml-ieqn-21"><mml:mi mathvariant="normal">&#x03A9;</mml:mi><mml:mo>=</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:msub><mml:mi>&#x03C9;</mml:mi><mml:mn>1</mml:mn></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>&#x03C9;</mml:mi><mml:mn>2</mml:mn></mml:msub><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>,</mml:mo><mml:msub><mml:mi>&#x03C9;</mml:mi><mml:mi>r</mml:mi></mml:msub><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula>, where each scenario <inline-formula id="ieqn-22"><mml:math id="mml-ieqn-22"><mml:mi>&#x03C9;</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mi mathvariant="normal">&#x03A9;</mml:mi></mml:math></inline-formula> corresponds to a realization of uncertain travel times <inline-formula id="ieqn-23"><mml:math id="mml-ieqn-23"><mml:msubsup><mml:mrow><mml:mover><mml:mi>t</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x03C9;</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula>. These travel times are modeled as:
<disp-formula id="eqn-11"><label>(11)</label><mml:math id="mml-eqn-11" display="block"><mml:msubsup><mml:mrow><mml:mover><mml:mi>t</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x03C9;</mml:mi></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:msub><mml:mi>t</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:msubsup><mml:mi>&#x03B5;</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x03C9;</mml:mi></mml:mrow></mml:msubsup><mml:mo>,</mml:mo><mml:mspace width="1em" /><mml:msubsup><mml:mi>&#x03B5;</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x03C9;</mml:mi></mml:mrow></mml:msubsup><mml:mo>&#x223C;</mml:mo><mml:mrow><mml:mi>&#x1D4A9;</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:msubsup><mml:mi>&#x03C3;</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mn>2</mml:mn></mml:msubsup><mml:mo stretchy="false">)</mml:mo></mml:math></disp-formula></p>
<p>We reformulate the objective as a sample average approximation (SAA):
<disp-formula id="eqn-12"><label>(12)</label><mml:math id="mml-eqn-12" display="block"><mml:mo movablelimits="true" form="prefix">min</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:mfrac><mml:mn>1</mml:mn><mml:mrow><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi mathvariant="normal">&#x03A9;</mml:mi><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow></mml:mfrac><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>&#x03C9;</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mi mathvariant="normal">&#x03A9;</mml:mi></mml:mrow></mml:munder><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>k</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mi>m</mml:mi></mml:munderover><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:mrow><mml:mi>n</mml:mi></mml:munderover><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>j</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:mrow><mml:mi>n</mml:mi></mml:munderover><mml:msubsup><mml:mrow><mml:mover><mml:mi>t</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x03C9;</mml:mi></mml:mrow></mml:msubsup><mml:mo>&#x22C5;</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi><mml:mi>k</mml:mi></mml:mrow></mml:msub></mml:math></disp-formula></p>
<p>This allows the model to capture average-case performance over multiple realizations of travel-time variability.</p>
<p><bold><italic>Soft Time Windows with Penalization</italic></bold></p>
<p>In realistic settings, strict time window feasibility may not always be possible or desirable. Therefore, we allow soft time windows by introducing a non-negative violation term <inline-formula id="ieqn-24"><mml:math id="mml-ieqn-24"><mml:msub><mml:mi>&#x03B4;</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>k</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula>, representing the lateness of vehicle <inline-formula id="ieqn-25"><mml:math id="mml-ieqn-25"><mml:mi>k</mml:mi></mml:math></inline-formula> at customer <inline-formula id="ieqn-26"><mml:math id="mml-ieqn-26"><mml:mi>i</mml:mi></mml:math></inline-formula>:
<disp-formula id="eqn-13"><label>(13)</label><mml:math id="mml-eqn-13" display="block"><mml:msub><mml:mi>&#x03B4;</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mo movablelimits="true" form="prefix">max</mml:mo><mml:mo stretchy="false">(</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>l</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo stretchy="false">)</mml:mo></mml:math></disp-formula></p>
<p>The penalized objective function becomes:
<disp-formula id="eqn-14"><label>(14)</label><mml:math id="mml-eqn-14" display="block"><mml:mo movablelimits="true" form="prefix">min</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:mfrac><mml:mn>1</mml:mn><mml:mrow><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi mathvariant="normal">&#x03A9;</mml:mi><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow></mml:mfrac><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>&#x03C9;</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mi mathvariant="normal">&#x03A9;</mml:mi></mml:mrow></mml:munder><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>k</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mi>m</mml:mi></mml:munderover><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:mrow><mml:mi>n</mml:mi></mml:munderover><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>j</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:mrow><mml:mi>n</mml:mi></mml:munderover><mml:msubsup><mml:mrow><mml:mover><mml:mi>t</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x03C9;</mml:mi></mml:mrow></mml:msubsup><mml:mo>&#x22C5;</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:mi>&#x03BB;</mml:mi><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>k</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mi>m</mml:mi></mml:munderover><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:mi>n</mml:mi></mml:munderover><mml:msub><mml:mi>&#x03B4;</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>k</mml:mi></mml:mrow></mml:msub></mml:math></disp-formula>where <inline-formula id="ieqn-27"><mml:math id="mml-ieqn-27"><mml:mi>&#x03BB;</mml:mi></mml:math></inline-formula> is a tunable penalty coefficient balancing travel efficiency against time window violations. In the special case <inline-formula id="ieqn-28"><mml:math id="mml-ieqn-28"><mml:mi>&#x03BB;</mml:mi><mml:mo stretchy="false">&#x2192;</mml:mo><mml:mi mathvariant="normal">&#x221E;</mml:mi></mml:math></inline-formula>, we recover a hard time window constraint model.</p>
</sec>
<sec id="s4">
<label>4</label>
<title>Proposed Methodology</title>
<p>This section presents our AHM for solving the Vehicle Routing Problem with Time Windows under Uncertainty (VRPTW-U). The algorithm integrates a GA&#x002B;LS techniques and employs a scenario-based robustness framework to handle uncertain travel times. Furthermore, adaptive mechanisms are incorporated to dynamically adjust control parameters during the search process, enhancing convergence and solution quality.</p>
<p><xref ref-type="fig" rid="fig-2">Fig. 2</xref> illustrates the main components of the proposed algorithm, showing how evolutionary and LS operations interact with adaptive control and uncertainty handling.</p>
<fig id="fig-2">
<label>Figure 2</label>
<caption>
<title>Flowchart of the proposed adaptive hybrid GA&#x002B;LS for VRPTW under uncertainty</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_66390-fig-2.tif"/>
</fig>
<sec id="s4_1">
<label>4.1</label>
<title>Algorithmic Framework</title>
<p>The proposed method is initialized with a population of feasible routing solutions constructed using a randomized version of Solomon&#x2019;s insertion heuristic [<xref ref-type="bibr" rid="ref-2">2</xref>]. A standard GA is then employed to evolve the population through selection, crossover, and mutation operators. After each generation, a LS procedure is applied to selected individuals to improve solution quality through neighborhood exploration. The process is iterated for a fixed number of generations or until convergence criteria are met.</p>
<p>Uncertain travel times are incorporated using a scenario-based simulation approach. For each solution, its fitness is evaluated by sampling from a set of stochastic realizations and computing an expected (or worst-case) cost. Time window violations are softly penalized to allow trade-offs under uncertainty.</p>
</sec>
<sec id="s4_2">
<label>4.2</label>
<title>Solution Encoding and Initialization</title>
<p>Each individual in the population represents a complete set of vehicle routes. The chromosome is encoded as a permutation of customer indices, segmented into routes based on vehicle capacity and time window feasibility. The initial population is generated using a randomized greedy heuristic based on Solomon&#x2019;s insertion rule.</p>
</sec>
<sec id="s4_3">
<label>4.3</label>
<title>Genetic Operators</title>
<p>To evolve the population toward better solutions, we apply standard genetic operators adapted to the VRPTW context. These include selection, crossover, and mutation, each designed to preserve route feasibility and encourage solution diversity:
<list list-type="bullet">
<list-item>
<p><bold>Selection:</bold> We employ tournament selection with replacement to ensure selection pressure while maintaining diversity.</p></list-item>
<list-item>
<p><bold>Crossover:</bold> A route-based crossover (RBX) operator is used, which swaps complete routes between parents, preserving route structure and feasibility.</p></list-item>
<list-item>
<p><bold>Mutation:</bold> A swap mutation operator randomly exchanges two customers in a route or between routes. Feasibility repair is applied post-mutation if necessary.</p></list-item>
</list></p>
</sec>
<sec id="s4_4">
<label>4.4</label>
<title>Local Search Procedure</title>
<p>To refine candidate solutions, a LS procedure is applied after crossover and mutation. The neighborhood includes:
<list list-type="bullet">
<list-item>
<p><bold>2-opt:</bold> Reverses a segment within a route to reduce distance.</p></list-item>
<list-item>
<p><bold>Relocate:</bold> Moves a customer from one route to another if feasible.</p></list-item>
<list-item>
<p><bold>Or-opt:</bold> Moves a string of consecutive customers within or across routes.</p></list-item>
</list></p>
<p>The LS is applied using a first-improvement or best-improvement strategy, and applied probabilistically to avoid excessive computation.</p>
</sec>
<sec id="s4_5">
<label>4.5</label>
<title>Handling Uncertainty</title>
<p>Each solution is evaluated over a scenario set <inline-formula id="ieqn-29"><mml:math id="mml-ieqn-29"><mml:mi mathvariant="normal">&#x03A9;</mml:mi></mml:math></inline-formula> of <inline-formula id="ieqn-30"><mml:math id="mml-ieqn-30"><mml:mi>r</mml:mi></mml:math></inline-formula> sampled travel time matrices. The expected total travel time and time window violations are calculated:
<disp-formula id="eqn-15"><label>(15)</label><mml:math id="mml-eqn-15" display="block"><mml:mi>f</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>s</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mfrac><mml:mn>1</mml:mn><mml:mrow><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi mathvariant="normal">&#x03A9;</mml:mi><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow></mml:mfrac><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>&#x03C9;</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mi mathvariant="normal">&#x03A9;</mml:mi></mml:mrow></mml:munder><mml:mrow><mml:mo>(</mml:mo><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>k</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mi>m</mml:mi></mml:munderover><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:mrow><mml:mi>n</mml:mi></mml:munderover><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>j</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:mrow><mml:mi>n</mml:mi></mml:munderover><mml:msubsup><mml:mrow><mml:mover><mml:mi>t</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x03C9;</mml:mi></mml:mrow></mml:msubsup><mml:mo>&#x22C5;</mml:mo><mml:msubsup><mml:mi>x</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>&#x03C9;</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:msubsup><mml:mo>+</mml:mo><mml:mi>&#x03BB;</mml:mi><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:mi>n</mml:mi></mml:munderover><mml:msubsup><mml:mi>&#x03B4;</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>&#x03C9;</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:msubsup><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula></p>
<p>This provides a robust fitness evaluation incorporating both stochastic travel costs and penalized infeasibility.</p>
</sec>
<sec id="s4_6">
<label>4.6</label>
<title>Adaptive Mechanism</title>
<p>An adaptive strategy is used to control the mutation rate <inline-formula id="ieqn-31"><mml:math id="mml-ieqn-31"><mml:mi>&#x03BC;</mml:mi></mml:math></inline-formula> and the LS probability <inline-formula id="ieqn-32"><mml:math id="mml-ieqn-32"><mml:msub><mml:mi>p</mml:mi><mml:mrow><mml:mtext>LS</mml:mtext></mml:mrow></mml:msub></mml:math></inline-formula>. The adaptation is governed by the relative improvement in best fitness over the last <inline-formula id="ieqn-33"><mml:math id="mml-ieqn-33"><mml:mi>&#x03C4;</mml:mi></mml:math></inline-formula> generations, denoted as <inline-formula id="ieqn-34"><mml:math id="mml-ieqn-34"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mi>f</mml:mi></mml:math></inline-formula>:
<disp-formula id="eqn-16"><label>(16)</label><mml:math id="mml-eqn-16" display="block"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mi>f</mml:mi><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:msubsup><mml:mi>f</mml:mi><mml:mrow><mml:mrow><mml:mtext>best</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mi>g</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mi>&#x03C4;</mml:mi></mml:mrow></mml:msubsup><mml:mo>&#x2212;</mml:mo><mml:msubsup><mml:mi>f</mml:mi><mml:mrow><mml:mrow><mml:mtext>best</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mi>g</mml:mi></mml:mrow></mml:msubsup></mml:mrow><mml:msubsup><mml:mi>f</mml:mi><mml:mrow><mml:mrow><mml:mtext>best</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mi>g</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mi>&#x03C4;</mml:mi></mml:mrow></mml:msubsup></mml:mfrac></mml:math></disp-formula>where <inline-formula id="ieqn-35"><mml:math id="mml-ieqn-35"><mml:msubsup><mml:mi>f</mml:mi><mml:mrow><mml:mtext>best</mml:mtext></mml:mrow><mml:mrow><mml:mi>g</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> is the best fitness at generation <inline-formula id="ieqn-36"><mml:math id="mml-ieqn-36"><mml:mi>g</mml:mi></mml:math></inline-formula>. Two thresholds <inline-formula id="ieqn-37"><mml:math id="mml-ieqn-37"><mml:msub><mml:mtext>&#x003B5;</mml:mtext><mml:mn>1</mml:mn></mml:msub></mml:math></inline-formula> and <inline-formula id="ieqn-38"><mml:math id="mml-ieqn-38"><mml:msub><mml:mtext>&#x003B5;</mml:mtext><mml:mn>2</mml:mn></mml:msub></mml:math></inline-formula> are used to modulate the adaptive behavior:
<list list-type="bullet">
<list-item>
<p>If <inline-formula id="ieqn-39"><mml:math id="mml-ieqn-39"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mi>f</mml:mi><mml:mo>&lt;</mml:mo><mml:mspace width="thinmathspace" /><mml:msub><mml:mtext>&#x003B5;</mml:mtext><mml:mn>1</mml:mn></mml:msub></mml:math></inline-formula>, indicating stagnation, we increase both <inline-formula id="ieqn-40"><mml:math id="mml-ieqn-40"><mml:mi>&#x03BC;</mml:mi></mml:math></inline-formula> and <inline-formula id="ieqn-41"><mml:math id="mml-ieqn-41"><mml:msub><mml:mi>p</mml:mi><mml:mrow><mml:mtext>LS</mml:mtext></mml:mrow></mml:msub></mml:math></inline-formula> to promote exploration.</p></list-item>
<list-item>
<p>If <inline-formula id="ieqn-42"><mml:math id="mml-ieqn-42"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mi>f</mml:mi><mml:mo>&gt;</mml:mo><mml:mspace width="thinmathspace" /><mml:msub><mml:mtext>&#x003B5;</mml:mtext><mml:mn>2</mml:mn></mml:msub></mml:math></inline-formula>, indicating consistent improvement, we reduce both <inline-formula id="ieqn-43"><mml:math id="mml-ieqn-43"><mml:mi>&#x03BC;</mml:mi></mml:math></inline-formula> and <inline-formula id="ieqn-44"><mml:math id="mml-ieqn-44"><mml:msub><mml:mi>p</mml:mi><mml:mrow><mml:mtext>LS</mml:mtext></mml:mrow></mml:msub></mml:math></inline-formula> to focus on exploitation.</p></list-item>
</list></p>
<p>In our experiments, we set <inline-formula id="ieqn-45"><mml:math id="mml-ieqn-45"><mml:msub><mml:mtext>&#x003B5;</mml:mtext><mml:mn>1</mml:mn></mml:msub><mml:mspace width="thinmathspace" /><mml:mo>=</mml:mo><mml:mn>0.002</mml:mn></mml:math></inline-formula> and <inline-formula id="ieqn-46"><mml:math id="mml-ieqn-46"><mml:msub><mml:mtext>&#x003B5;</mml:mtext><mml:mn>2</mml:mn></mml:msub><mml:mspace width="thinmathspace" /><mml:mo>=</mml:mo><mml:mn>0.01</mml:mn></mml:math></inline-formula>, values determined empirically via sensitivity analysis (<xref ref-type="app" rid="app-1">Appendix A</xref>). These thresholds strike a balance between avoiding premature convergence and promoting convergence speed across various instance types.</p>
</sec>
<sec id="s4_7">
<label>4.7</label>
<title>Pseudocode</title>
<p>Algorithm 1 outlines the main steps of the proposed AHM. It integrates initialization, evaluation under uncertainty, evolutionary operations, LS, and adaptive control into a single iterative framework.</p>
<fig id="fig-7">
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_66390-fig-7.tif"/>
</fig>
</sec>
</sec>
<sec id="s5">
<label>5</label>
<title>Experimental Setup</title>
<p>This section describes the datasets, parameter settings, uncertainty modeling, and evaluation metrics used to assess the performance of the proposed AHM for the VRPTW under uncertainty.</p>
<sec id="s5_1">
<label>5.1</label>
<title>Benchmark Instances</title>
<p>We use the well-known Solomon benchmark suite [<xref ref-type="bibr" rid="ref-2">2</xref>], which provides 56 VRPTW test instances categorized into three groups:
<list list-type="bullet">
<list-item>
<p><bold>C-type:</bold> clustered customer locations with narrow time windows (e.g., C101&#x2013;C206)</p></list-item>
<list-item>
<p><bold>R-type:</bold> randomly distributed customers (e.g., R101&#x2013;R211)</p></list-item>
<list-item>
<p><bold>RC-type:</bold> a mix of clustered and random distributions (e.g., RC101&#x2013;RC208)</p></list-item>
</list></p>
<p>Each instance includes 100 customers, fixed depot location, vehicle capacity constraints, and strict time windows.</p>
</sec>
<sec id="s5_2">
<label>5.2</label>
<title>Uncertainty Modeling</title>
<p>To simulate real-world travel time variability, we perturb deterministic travel times between customers with stochastic noise modeled as a Gaussian distribution:
<disp-formula id="eqn-17"><label>(17)</label><mml:math id="mml-eqn-17" display="block"><mml:msub><mml:mrow><mml:mover><mml:mi>t</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mi>t</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mi>&#x03B5;</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mspace width="1em" /><mml:msub><mml:mi>&#x03B5;</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>&#x223C;</mml:mo><mml:mrow><mml:mi>&#x1D4A9;</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:msubsup><mml:mi>&#x03C3;</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mn>2</mml:mn></mml:msubsup><mml:mo stretchy="false">)</mml:mo></mml:math></disp-formula></p>
<p>The variance <inline-formula id="ieqn-49"><mml:math id="mml-ieqn-49"><mml:msubsup><mml:mi>&#x03C3;</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mn>2</mml:mn></mml:msubsup></mml:math></inline-formula> is set proportionally to the deterministic travel time <inline-formula id="ieqn-50"><mml:math id="mml-ieqn-50"><mml:msub><mml:mi>t</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula>:<disp-formula id="eqn-18"><label>(18)</label><mml:math id="mml-eqn-18" display="block"><mml:msub><mml:mi>&#x03C3;</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mi>&#x03C1;</mml:mi><mml:mo>&#x22C5;</mml:mo><mml:msub><mml:mi>t</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></disp-formula>where <inline-formula id="ieqn-51"><mml:math id="mml-ieqn-51"><mml:mi>&#x03C1;</mml:mi></mml:math></inline-formula> is the uncertainty level (e.g., <inline-formula id="ieqn-52"><mml:math id="mml-ieqn-52"><mml:mi>&#x03C1;</mml:mi><mml:mo>=</mml:mo><mml:mn>0.1</mml:mn></mml:math></inline-formula> for 10% variability). For each candidate solution, we generate <inline-formula id="ieqn-53"><mml:math id="mml-ieqn-53"><mml:mi>r</mml:mi><mml:mo>=</mml:mo><mml:mn>10</mml:mn></mml:math></inline-formula> stochastic scenarios to evaluate robustness under uncertainty.</p>
<p>The assumption of Gaussian-distributed noise is widely adopted in transportation modeling due to its analytical tractability and its ability to approximate various sources of small, random fluctuations observed in urban traffic systems. Studies such as Florio et al. [<xref ref-type="bibr" rid="ref-14">14</xref>] have demonstrated the applicability of this assumption in capturing the effects of stochastic travel times in logistics.</p>
<p>Nonetheless, we recognize that real-world travel time distributions may deviate from Gaussian behavior, particularly in the presence of skewed delays, incidents, or heavy-tailed congestion effects. Alternative distributions such as log-normal or uniform could offer more realistic modeling in certain contexts. While a comprehensive evaluation of different noise models is beyond the scope of this study, we discuss their implications in <xref ref-type="sec" rid="s6_1">Section 6.1</xref> and identify this as an important direction for future research.</p>
</sec>
<sec id="s5_3">
<label>5.3</label>
<title>Parameter Settings</title>
<p>The algorithm&#x2019;s parameters are configured as follows:
<list list-type="bullet">
<list-item>
<p>Population size: 100</p></list-item>
<list-item>
<p>Number of generations: 500</p></list-item>
<list-item>
<p>Crossover probability: 0.8</p></list-item>
<list-item>
<p>Initial mutation rate: 0.1 (adaptive)</p></list-item>
<list-item>
<p>LS application probability: 0.3 (adaptive)</p></list-item>
<list-item>
<p>Penalty weight for time window violation: <inline-formula id="ieqn-54"><mml:math id="mml-ieqn-54"><mml:mi>&#x03BB;</mml:mi><mml:mo>=</mml:mo><mml:mn>100</mml:mn></mml:math></inline-formula></p></list-item>
</list></p>
<p>All parameters were calibrated through preliminary testing and grid search on a subset of instances.</p>
<p>The main parameters used in our algorithm are listed in <xref ref-type="table" rid="table-2">Table 2</xref>. These values were selected based on preliminary experiments and empirical tuning.</p>
<table-wrap id="table-2">
<label>Table 2</label>
<caption>
<title>Parameter settings for the proposed AHM. All values were tuned through grid search using C101 and validated across five additional Solomon instances</title>
</caption>
<table>
<colgroup>
<col/>
<col/>
<col/>
</colgroup>
<thead>
<tr>
<th>Parameter</th>
<th>Value</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>Population size</td>
<td>100</td>
<td>Number of candidate solutions in each generation</td>
</tr>
<tr>
<td>Max generations</td>
<td>500</td>
<td>Maximum number of iterations for evolution</td>
</tr>
<tr>
<td>Crossover probability</td>
<td>0.8</td>
<td>Probability of applying crossover operator</td>
</tr>
<tr>
<td>Initial mutation rate</td>
<td>0.1</td>
<td>Starting mutation probability, adaptively updated</td>
</tr>
<tr>
<td>LS probability</td>
<td>0.3</td>
<td>Probability of applying LS, adaptively updated</td>
</tr>
<tr>
<td>Penalty coefficient <inline-formula id="ieqn-55"><mml:math id="mml-ieqn-55"><mml:mi>&#x03BB;</mml:mi></mml:math></inline-formula></td>
<td>100</td>
<td>Penalty for time window violations</td>
</tr>
<tr>
<td>Uncertainty level <inline-formula id="ieqn-56"><mml:math id="mml-ieqn-56"><mml:mi>&#x03C1;</mml:mi></mml:math></inline-formula></td>
<td>0.1</td>
<td>Travel time perturbation factor (10% of <inline-formula id="ieqn-57"><mml:math id="mml-ieqn-57"><mml:msub><mml:mi>t</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula>)</td>
</tr>
<tr>
<td>Number of scenarios <inline-formula id="ieqn-58"><mml:math id="mml-ieqn-58"><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi mathvariant="normal">&#x03A9;</mml:mi><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td>10</td>
<td>Number of stochastic samples per evaluation</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s5_4">
<label>5.4</label>
<title>Computational Environment</title>
<p>Experiments were executed on a machine with the following specifications:
<list list-type="bullet">
<list-item>
<p>CPU: Intel Core i7-12700H, 2.7 GHz</p></list-item>
<list-item>
<p>RAM: 16 GB</p></list-item>
<list-item>
<p>OS: Ubuntu 22.04</p></list-item>
<list-item>
<p>Language: Python 3.11 with NumPy and SciPy</p></list-item>
</list></p>
<p>Each algorithm was run 10 times per instance to account for stochastic behavior, and average results are reported.</p>
</sec>
<sec id="s5_5">
<label>5.5</label>
<title>Evaluation Metrics</title>
<p>To assess performance under uncertainty, we use the following metrics:
<list list-type="bullet">
<list-item>
<p><bold>Expected Total Travel Time:</bold> average cost across <inline-formula id="ieqn-59"><mml:math id="mml-ieqn-59"><mml:mi>r</mml:mi></mml:math></inline-formula> stochastic scenarios.</p></list-item>
<list-item>
<p><bold>Time Window Violation:</bold> total lateness across all nodes and scenarios.</p></list-item>
<list-item>
<p><bold>Robustness Index:</bold> standard deviation of cost across scenarios.</p></list-item>
<list-item>
<p><bold>Execution Time:</bold> total runtime in seconds.</p></list-item>
</list></p>
<p>For comparison, we benchmark our approach against a classic GA and a non-adaptive hybrid GA&#x002B;LS.</p>
</sec>
</sec>
<sec id="s6">
<label>6</label>
<title>Results and Discussion</title>
<p>This section presents the experimental results obtained using the proposed AHM on the Solomon benchmark instances under uncertain travel times. We compare its performance with two baselines: a standard GA and a non-adaptive GA&#x002B;LS hybrid. Metrics include expected total travel time, time window violations, robustness (variance), and execution time.</p>
<sec id="s6_1">
<label>6.1</label>
<title>Comparison with Baseline and Recent Methods</title>
<p>To evaluate the effectiveness of the proposed AHM, we compare it against both traditional baselines and two recent state-of-the-art approaches from the literature:
<list list-type="bullet">
<list-item>
<p><bold>Standard GA:</bold> a canonical GA with fixed parameters.</p></list-item>
<list-item>
<p><bold>Non-Adaptive GA&#x002B;LS:</bold> a static hybrid of GA with LS, but without adaptive control.</p></list-item>
<list-item>
<p><bold>Hybrid GA-ACO:</bold> the method of Chen et al. [<xref ref-type="bibr" rid="ref-7">7</xref>], integrating genetic and ant colony strategies.</p></list-item>
<list-item>
<p><bold>Multi-Adaptive PSO:</bold> the particle swarm variant of Marinakis et al. [<xref ref-type="bibr" rid="ref-12">12</xref>], with dynamic control mechanisms.</p></list-item>
</list></p>
<p><xref ref-type="table" rid="table-3">Table 3</xref> presents the average performance across three representative Solomon instances (C101, R101, RC101), with 10 runs and 10 uncertainty scenarios per run. The proposed method consistently achieves superior results in expected travel time, time window feasibility, and robustness, while maintaining competitive runtime.</p>
<table-wrap id="table-3">
<label>Table 3</label>
<caption>
<title>Performance comparison of the proposed method against baseline and recent metaheuristics. Metrics averaged over 10 runs on C101, R101, and RC101, each evaluated with 10 uncertainty scenarios</title>
</caption>
<table>
<colgroup>
<col/>
<col/>
<col/>
<col/>
<col/>
</colgroup>
<thead>
<tr>
<th>Method</th>
<th align="center">Expected Time</th>
<th align="center">TW Violations</th>
<th align="center">Robustness (Std)</th>
<th align="center">Runtime (s)</th>
</tr>
</thead>
<tbody>
<tr>
<td>Standard GA</td>
<td>1050.2</td>
<td>87.5</td>
<td>18.3</td>
<td><bold>72.4</bold></td>
</tr>
<tr>
<td>Non-Adaptive GA&#x002B;LS</td>
<td>984.7</td>
<td>45.2</td>
<td>14.8</td>
<td>89.1</td>
</tr>
<tr>
<td>Hybrid GA-ACO (Chen et al.) [<xref ref-type="bibr" rid="ref-7">7</xref>]</td>
<td>975.5</td>
<td>28.9</td>
<td>13.2</td>
<td>102.3</td>
</tr>
<tr>
<td>Multi-Adaptive PSO (Marinakis et al.) [<xref ref-type="bibr" rid="ref-12">12</xref>]</td>
<td>968.4</td>
<td>19.7</td>
<td>11.8</td>
<td>110.4</td>
</tr>
<tr>
<td><bold>Proposed method</bold></td>
<td><bold>960.1</bold></td>
<td><bold>12.7</bold></td>
<td><bold>9.6</bold></td>
<td>94.5</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<fn id="table-3fn1" fn-type="other">
<p>Note: All methods evaluated under identical experimental conditions. Bold numbers mark the best results for each performance metric (lowest expected travel time, lowest time window violations, lowest robustness index/variance, and lowest runtime).</p>
</fn>
</table-wrap-foot>
</table-wrap>
<p>As shown in <xref ref-type="fig" rid="fig-3">Fig. 3</xref>, the proposed method converges more rapidly and attains a significantly lower final cost than the other methods. This suggests that the combined effect of adaptivity and local refinement not only improves solution quality but also enhances convergence speed.</p>
<fig id="fig-3">
<label>Figure 3</label>
<caption>
<title>Convergence behavior of the proposed method compared to baseline GA and GA&#x002B;LS over 500 generations. Results are averaged over 10 runs per instance on three Solomon benchmark instances (C101, R101, RC101)</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_66390-fig-3.tif"/>
</fig>
<p>Overall, the proposed approach strikes a compelling balance between runtime, quality, and robustness&#x2014;making it suitable for deployment in real-time or uncertainty-aware logistics environments.</p>
</sec>
<sec id="s6_2">
<label>6.2</label>
<title>Performance across Instance Types</title>
<p>To better understand how spatial distribution impacts solution robustness and efficiency, we analyze the performance of the proposed method across the three canonical categories of Solomon benchmark instances: C-type (clustered), R-type (random), and RC-type (mixed). <xref ref-type="fig" rid="fig-4">Fig. 4</xref> visualizes sample customer layouts from each category, revealing the inherent structural differences that influence routing complexity.</p>
<fig id="fig-4">
<label>Figure 4</label>
<caption>
<title>Illustrative customer layouts from Solomon instances: C101 (clustered), R101 (random), and RC101 (mixed). Each layout represents 45 customer nodes; spatial patterns influence routing complexity and robustness</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_66390-fig-4.tif"/>
</fig>
<p>To ensure statistical validity, we evaluated five benchmark instances per category: <bold>C-type:</bold> C101, C102, C104, C106, C108; <bold>R-type:</bold> R101, R103, R105, R108, R110; <bold>RC-type:</bold> RC101, RC103, RC104, RC105, RC108. Each instance was solved using 10 independent runs, with 10 stochastic scenarios per run.</p>
<p><xref ref-type="fig" rid="fig-5">Fig. 5</xref> compares the average expected travel time and cumulative time window violations across categories. As expected, performance is strongest on C-type instances due to spatial compactness, which facilitates more efficient route planning. R-type instances yield higher travel times and constraint violations, reflecting the challenge of servicing spatially dispersed customers. RC-type results fall between the two extremes, highlighting the method&#x2019;s adaptability in hybrid spatial configurations.</p>
<fig id="fig-5">
<label>Figure 5</label>
<caption>
<title>Average expected travel time and time window violations across C-, R-, and RC-type Solomon instances. Results are based on 5 instances per category, 10 runs per instance, and 10 uncertainty scenarios per run</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_66390-fig-5.tif"/>
</fig>
<p>To further evaluate robustness, <xref ref-type="fig" rid="fig-6">Fig. 6</xref> shows the distribution of expected travel times across all scenarios and runs. The C-type category demonstrates not only the lowest average cost but also the tightest interquartile range, confirming superior robustness under uncertainty. In contrast, R-type instances show greater variability, indicating sensitivity to stochastic disruptions.</p>
<fig id="fig-6">
<label>Figure 6</label>
<caption>
<title>Distribution of expected total travel time for the proposed method across 10 stochastic scenarios and 10 independent runs, shown per instance type. C-type results are more robust, with less variability than R- and RC-types</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_66390-fig-6.tif"/>
</fig>
<p>These results reinforce that the proposed method adapts well across spatial structures and maintains reliable performance even under uncertain travel conditions. Its robustness is particularly pronounced in scenarios where spatial clustering can be leveraged.</p>
</sec>
<sec id="s6_3">
<label>6.3</label>
<title>Impact of Uncertainty Level and Scenario Count</title>
<p>To assess the robustness of the proposed method under increasing uncertainty, we vary the uncertainty level <inline-formula id="ieqn-60"><mml:math id="mml-ieqn-60"><mml:mi>&#x03C1;</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mn>0.05</mml:mn><mml:mo>,</mml:mo><mml:mn>0.10</mml:mn><mml:mo>,</mml:mo><mml:mn>0.20</mml:mn><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula>, which controls the magnitude of Gaussian noise applied to travel times. <xref ref-type="table" rid="table-4">Table 4</xref> presents the impact on expected travel time and cumulative time window violations for Solomon instance R101.</p>
<table-wrap id="table-4">
<label>Table 4</label>
<caption>
<title>Effect of travel time uncertainty level (<inline-formula id="ieqn-61"><mml:math id="mml-ieqn-61"><mml:mi>&#x03C1;</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mn>0.05</mml:mn><mml:mo>,</mml:mo><mml:mn>0.10</mml:mn><mml:mo>,</mml:mo><mml:mn>0.20</mml:mn><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula>) on expected travel time and time window violations. Results are averaged over 10 runs with 10 stochastic scenarios per run</title>
</caption>
<table>
<colgroup>
<col/>
<col/>
<col/>
</colgroup>
<thead>
<tr>
<th><inline-formula id="ieqn-62"><mml:math id="mml-ieqn-62"><mml:mi mathvariant="bold-italic">&#x03C1;</mml:mi></mml:math></inline-formula></th>
<th>Expected Time</th>
<th>TW Violations</th>
</tr>
</thead>
<tbody>
<tr>
<td>0.05</td>
<td><bold>942.1</bold></td>
<td><bold>4.2</bold></td>
</tr>
<tr>
<td>0.10</td>
<td>960.1</td>
<td>12.7</td>
</tr>
<tr>
<td>0.20</td>
<td>1004.5</td>
<td>35.9</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<fn id="table-4fn1" fn-type="other">
<p>Note: Bold values highlight the baseline case (<inline-formula id="ieqn-63"><mml:math id="mml-ieqn-63"><mml:mi>&#x03C1;</mml:mi><mml:mo>=</mml:mo><mml:mn>0.10</mml:mn></mml:math></inline-formula>) that was used throughout the main experiments.</p>
</fn>
</table-wrap-foot>
</table-wrap>
<p>As expected, both cost and constraint violations increase with higher uncertainty levels. However, the algorithm maintains feasible solutions and smooth degradation, confirming its robustness to stochastic disturbances.</p>
<p>To evaluate the adequacy of the scenario count <inline-formula id="ieqn-64"><mml:math id="mml-ieqn-64"><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi mathvariant="normal">&#x03A9;</mml:mi><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:math></inline-formula>, we conduct a sensitivity analysis on the same instance, varying the number of sampled scenarios per evaluation: <inline-formula id="ieqn-65"><mml:math id="mml-ieqn-65"><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi mathvariant="normal">&#x03A9;</mml:mi><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mn>5</mml:mn><mml:mo>,</mml:mo><mml:mn>10</mml:mn><mml:mo>,</mml:mo><mml:mn>20</mml:mn><mml:mo>,</mml:mo><mml:mn>50</mml:mn><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula>. <xref ref-type="table" rid="table-5">Table 5</xref> summarizes the results.</p>
<table-wrap id="table-5">
<label>Table 5</label>
<caption>
<title>Impact of scenario count on performance and robustness. Results for instance R101 averaged over 10 runs</title>
</caption>
<table>
<colgroup>
<col/>
<col/>
<col/>
<col/>
<col/>
</colgroup>
<thead>
<tr>
<th><inline-formula id="ieqn-66"><mml:math id="mml-ieqn-66"><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi mathvariant="bold">&#x03A9;</mml:mi><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:math></inline-formula></th>
<th>Expected Time</th>
<th>TW Violations</th>
<th>Std. Dev.</th>
<th>Runtime (s)</th>
</tr>
</thead>
<tbody>
<tr>
<td>5</td>
<td>958.4</td>
<td>14.9</td>
<td>12.5</td>
<td>78.2</td>
</tr>
<tr>
<td>10</td>
<td><bold>960.1</bold></td>
<td><bold>12.7</bold></td>
<td><bold>9.6</bold></td>
<td>94.5</td>
</tr>
<tr>
<td>20</td>
<td>961.3</td>
<td>12.4</td>
<td>9.2</td>
<td>148.7</td>
</tr>
<tr>
<td>50</td>
<td>962.8</td>
<td>11.6</td>
<td>8.8</td>
<td>337.4</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<fn id="table-5fn1" fn-type="other">
<p>Note: Bold values indicate the best trade-off between solution quality, robustness, and runtime. Specifically, <inline-formula id="ieqn-67"><mml:math id="mml-ieqn-67"><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi mathvariant="normal">&#x03A9;</mml:mi><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mn>10</mml:mn></mml:math></inline-formula> yields stable solutions with low violations and variance, without the excessive computational burden observed at <inline-formula id="ieqn-68"><mml:math id="mml-ieqn-68"><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi mathvariant="normal">&#x03A9;</mml:mi><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mn>20</mml:mn></mml:math></inline-formula> or 50.</p>
</fn>
</table-wrap-foot>
</table-wrap>
<p>The results indicate that while increasing the number of scenarios slightly improves robustness (lower standard deviation), the marginal benefit diminishes beyond <inline-formula id="ieqn-69"><mml:math id="mml-ieqn-69"><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi mathvariant="normal">&#x03A9;</mml:mi><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mn>10</mml:mn></mml:math></inline-formula>. Meanwhile, runtime grows substantially. This suggests that using 10 scenarios offers a well-balanced trade-off between computational cost and evaluation fidelity.</p>
<p>In summary, the proposed method handles varying uncertainty levels effectively and achieves stable performance with a moderate number of evaluation scenarios.</p>
</sec>
<sec id="s6_4">
<label>6.4</label>
<title>Adaptivity Ablation Study</title>
<p>To assess the contribution of the adaptive mechanism, we disable it and compare results with the full version. <xref ref-type="table" rid="table-6">Table 6</xref> shows that adaptivity improves solution quality and reduces time window violations.</p>
<table-wrap id="table-6">
<label>Table 6</label>
<caption>
<title>Ablation study showing the impact of adaptive control mechanisms on performance for instance RC101. Results are averaged over 10 runs, each evaluated with 10 stochastic scenarios</title>
</caption>
<table>
<colgroup>
<col/>
<col/>
<col/>
</colgroup>
<thead>
<tr>
<th>Variant</th>
<th>Expected time</th>
<th>TW Violations</th>
</tr>
</thead>
<tbody>
<tr>
<td>Without adaptivity</td>
<td>986.8</td>
<td>21.3</td>
</tr>
<tr>
<td><bold>With adaptivity</bold></td>
<td><bold>960.1</bold></td>
<td><bold>12.7</bold></td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<fn id="table-6fn1" fn-type="other">
<p>Note: Bold values correspond to the best-performing variant (with adaptivity), confirming the benefit of adaptive parameter control.</p>
</fn>
</table-wrap-foot>
</table-wrap>
</sec>
<sec id="s6_5">
<label>6.5</label>
<title>Discussion</title>
<p>The experimental results demonstrate that the proposed AHM consistently produces high-quality and robust solutions across a diverse range of VRPTW instances, particularly under conditions of stochastic travel times. By integrating dynamic parameter tuning and LS, the method significantly outperforms both traditional and contemporary hybrid approaches.</p>
<p>Compared to recent algorithms such as the Multi-Adaptive PSO by Marinakis et al. [<xref ref-type="bibr" rid="ref-12">12</xref>] and the Hybrid GA-ACO by Chen et al. [<xref ref-type="bibr" rid="ref-7">7</xref>], the proposed method achieves lower expected travel times, fewer time window violations, and reduced solution variability. The convergence analysis further shows that adaptivity accelerates performance gains over generations, especially in complex or noisy routing scenarios.</p>
<p>Our robustness analysis (<xref ref-type="sec" rid="s6_2">Sections 6.2</xref>, <xref ref-type="sec" rid="s6_3">6.3</xref>) confirms that the method remains effective across a wide range of spatial distributions and uncertainty levels. In particular, it shows superior stability on clustered instances (C-type), which typically benefit from tighter route packing and less travel-time variance. Moreover, our evaluation of the scenario count indicates that using 10 scenarios (<inline-formula id="ieqn-70"><mml:math id="mml-ieqn-70"><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi mathvariant="normal">&#x03A9;</mml:mi><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mn>10</mml:mn></mml:math></inline-formula>) offers a balanced trade-off between evaluation fidelity and computational cost, making it suitable for practical applications.</p>
<p>While the method incurs moderately higher runtime compared to a standard GA, the additional computational effort is justified in settings where solution feasibility and consistency are mission-critical&#x2014;such as last-mile delivery, emergency routing, or green logistics [<xref ref-type="bibr" rid="ref-13">13</xref>,<xref ref-type="bibr" rid="ref-15">15</xref>,<xref ref-type="bibr" rid="ref-16">16</xref>].</p>
<p>In summary, the proposed approach offers a flexible, scalable, and uncertainty-aware routing solution that combines adaptive control, probabilistic modeling, and effective LS. Its ability to generalize across different VRPTW structures makes it a strong candidate for deployment in real-world transportation systems.</p>
<p>Future work could explore the following directions:
<list list-type="bullet">
<list-item>
<p>Real-time adaptation based on live traffic or delivery updates.</p></list-item>
<list-item>
<p>Extension to larger-scale or multi-depot VRP variants.</p></list-item>
<list-item>
<p>Integration with machine learning for demand or delay prediction.</p></list-item>
<list-item>
<p>Multi-objective optimization including emissions, fairness, and service level agreements.</p></list-item>
</list></p>
<p>To complement the empirical performance evaluation, we analyze the time complexity of the proposed and baseline methods. The standard GA exhibits a time complexity of <inline-formula id="ieqn-71"><mml:math id="mml-ieqn-71"><mml:mi>O</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>G</mml:mi><mml:mo>&#x00D7;</mml:mo><mml:mi>P</mml:mi><mml:mo>&#x00D7;</mml:mo><mml:mi>E</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>, where <italic>G</italic> is the number of generations, <italic>P</italic> the population size, and <italic>E</italic> the cost of evaluating a solution. The hybrid GA&#x002B;LS adds a LS cost <italic>L</italic>, resulting in <inline-formula id="ieqn-72"><mml:math id="mml-ieqn-72"><mml:mi>O</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>G</mml:mi><mml:mo>&#x00D7;</mml:mo><mml:mi>P</mml:mi><mml:mo>&#x00D7;</mml:mo><mml:mo stretchy="false">(</mml:mo><mml:mi>E</mml:mi><mml:mo>+</mml:mo><mml:mi>L</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>. Our adaptive GA&#x002B;LS incorporates dynamic parameter tuning and robustness evaluation over <inline-formula id="ieqn-73"><mml:math id="mml-ieqn-73"><mml:mi>r</mml:mi></mml:math></inline-formula> stochastic scenarios, leading to a total cost of <inline-formula id="ieqn-74"><mml:math id="mml-ieqn-74"><mml:mi>O</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>G</mml:mi><mml:mo>&#x00D7;</mml:mo><mml:mi>P</mml:mi><mml:mo>&#x00D7;</mml:mo><mml:mi>r</mml:mi><mml:mo>&#x00D7;</mml:mo><mml:mo stretchy="false">(</mml:mo><mml:mi>E</mml:mi><mml:mo>+</mml:mo><mml:mi>L</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>. Although this adds computational overhead, it substantially improves robustness and solution quality under uncertainty.</p>
</sec>
</sec>
<sec id="s7">
<label>7</label>
<title>Conclusion and Future Work</title>
<p>This paper proposed an Adaptive Hybrid Metaheuristic for solving the Vehicle Routing Problem with Time Windows under Uncertainty (VRPTW-U). The algorithm integrates a Genetic Algorithm with Local Search and incorporates uncertainty modeling via scenario-based stochastic evaluation. An adaptive mechanism dynamically adjusts algorithmic parameters based on feedback from the search process, balancing exploration and exploitation throughout the search.</p>
<p>Experimental results on Solomon benchmark instances demonstrate that the proposed method outperforms both standard GA and static hybrid approaches in terms of expected travel time, time window feasibility, and robustness under stochastic conditions. The method showed particularly strong performance on clustered (C-type) instances, while maintaining resilience on random and mixed layouts. Additional analysis confirmed the benefit of the adaptive mechanism and the ability to handle varying levels of uncertainty with minimal performance degradation.</p>
<p>From a practical standpoint, the proposed approach is well-suited for logistics environments where demand and travel conditions are variable, such as last-mile delivery, green vehicle routing, or real-time distribution planning.</p>
<p>Future work may explore the following extensions:
<list list-type="bullet">
<list-item>
<p>Integration of real-time data streams (e.g., traffic, weather) to support dynamic routing.</p></list-item>
<list-item>
<p>Multi-objective formulations incorporating cost, emissions, and service quality.</p></list-item>
<list-item>
<p>Application to large-scale or multi-depot VRP variants under uncertainty.</p></list-item>
<list-item>
<p>Deep learning models for demand prediction and adaptive parameter control.</p></list-item>
</list></p>
<p>Overall, this work provides a flexible and robust framework for solving complex vehicle routing problems under realistic and uncertain conditions.</p>
</sec>
</body>
<back>
<ack>
<p>The author gratefully acknowledges the University of Tr&#x00E1;s-os-Montes e Alto Douro and the Institute of Electronics and Informatics Engineering of Aveiro (IEETA) for providing the necessary resources and support to carry out this research.</p>
</ack>
<sec>
<title>Funding Statement</title>
<p>The authors received no specific funding for this study.</p>
</sec>
<sec sec-type="data-availability">
<title>Availability of Data and Materials</title>
<p>The data that support the findings of this study are available from the Corresponding Author, Manuel J. C. S. Reis, upon reasonable request.</p>
</sec>
<sec>
<title>Ethics Approval</title>
<p>Not applicable.</p>
</sec>
<sec sec-type="COI-statement">
<title>Conflicts of Interest</title>
<p>The author declares no conflicts of interest to report regarding the present study.</p>
</sec>
<app-group id="appg-1">
<app id="app-1">
<title>Appendix A Sensitivity Analysis of Adaptive Thresholds</title>
<p>To evaluate the robustness of our adaptive strategy, we conducted a sensitivity analysis on the thresholds <inline-formula id="ieqn-75"><mml:math id="mml-ieqn-75"><mml:msub><mml:mtext>&#x003B5;</mml:mtext><mml:mn>1</mml:mn></mml:msub></mml:math></inline-formula> and <inline-formula id="ieqn-76"><mml:math id="mml-ieqn-76"><mml:msub><mml:mtext>&#x003B5;</mml:mtext><mml:mn>2</mml:mn></mml:msub></mml:math></inline-formula> using instance RC101. Each configuration was tested over 10 independent runs, and average performance was recorded.</p>
<p>As shown in <xref ref-type="table" rid="table-7">Table A1</xref>, the configuration <inline-formula id="ieqn-77"><mml:math id="mml-ieqn-77"><mml:msub><mml:mtext>&#x003B5;</mml:mtext><mml:mn>1</mml:mn></mml:msub><mml:mspace width="thinmathspace" /><mml:mo>=</mml:mo><mml:mn>0.002</mml:mn></mml:math></inline-formula> and <inline-formula id="ieqn-78"><mml:math id="mml-ieqn-78"><mml:msub><mml:mtext>&#x003B5;</mml:mtext><mml:mn>2</mml:mn></mml:msub><mml:mspace width="thinmathspace" /><mml:mo>=</mml:mo><mml:mn>0.01</mml:mn></mml:math></inline-formula> yields the best trade-off between efficiency and feasibility. Higher thresholds accelerate convergence but may lead to premature stagnation, while lower thresholds increase variance and runtime without consistent gains.</p>
<table-wrap id="table-7">
<label>Table A1</label>
<caption>
<title>Sensitivity analysis of <inline-formula id="ieqn-79"><mml:math id="mml-ieqn-79"><mml:msub><mml:mtext>&#x003B5;</mml:mtext><mml:mn>1</mml:mn></mml:msub></mml:math></inline-formula> and <inline-formula id="ieqn-80"><mml:math id="mml-ieqn-80"><mml:msub><mml:mtext>&#x003B5;</mml:mtext><mml:mn>2</mml:mn></mml:msub></mml:math></inline-formula> values on instance RC101. Each result is averaged over 10 runs with 10 uncertainty scenarios</title>
</caption>
<table>
<colgroup>
<col/>
<col/>
<col/>
<col/>
</colgroup>
<thead>
<tr>
<th><inline-formula id="ieqn-81"><mml:math id="mml-ieqn-81"><mml:msub><mml:mtext>&#x003B5;</mml:mtext><mml:mn mathvariant="bold">1</mml:mn></mml:msub></mml:math></inline-formula></th>
<th><inline-formula id="ieqn-82"><mml:math id="mml-ieqn-82"><mml:msub><mml:mtext>&#x003B5;</mml:mtext><mml:mn mathvariant="bold">2</mml:mn></mml:msub></mml:math></inline-formula></th>
<th>Expected time</th>
<th>Time window violations</th>
</tr>
</thead>
<tbody>
<tr>
<td>0.001</td>
<td>0.005</td>
<td>962.7</td>
<td>14.5</td>
</tr>
<tr>
<td>0.002</td>
<td>0.010</td>
<td><bold>960.1</bold></td>
<td><bold>12.7</bold></td>
</tr>
<tr>
<td>0.003</td>
<td>0.015</td>
<td>964.2</td>
<td>13.1</td>
</tr>
<tr>
<td>0.005</td>
<td>0.020</td>
<td>968.9</td>
<td>16.4</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<fn id="table-A1fn1" fn-type="other">
<p>Note: Bold row highlights the parameter setting (<inline-formula id="ieqn-83"><mml:math id="mml-ieqn-83"><mml:mrow><mml:msub><mml:mtext>&#x003B5;</mml:mtext><mml:mn>1</mml:mn></mml:msub></mml:mrow><mml:mo>=</mml:mo><mml:mn>0.002</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mspace width="thinmathspace" /><mml:mrow><mml:msub><mml:mtext>&#x003B5;</mml:mtext><mml:mn>2</mml:mn></mml:msub></mml:mrow><mml:mo>=</mml:mo><mml:mn>0.01</mml:mn></mml:math></inline-formula>) that gave the best trade-off between travel time and time window feasibility.</p>
</fn>
</table-wrap-foot>
</table-wrap>
</app>
</app-group>
<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>Br&#x00E4;ysy</surname> <given-names>O</given-names></string-name>, <string-name><surname>Gendreau</surname> <given-names>M</given-names></string-name></person-group>. <article-title>Vehicle routing problem with time windows, part I: route construction and local search algorithms</article-title>. <source>Transp Sci</source>. <year>2005</year>;<volume>39</volume>(<issue>1</issue>):<fpage>104</fpage>&#x2013;<lpage>18</lpage>. doi:<pub-id pub-id-type="doi">10.1287/trsc.1030.0056</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>Solomon</surname> <given-names>MM</given-names></string-name></person-group>. <article-title>Algorithms for the vehicle routing and scheduling problems with time window constraints</article-title>. <source>Oper Res</source>. <year>1987</year>;<volume>35</volume>(<issue>2</issue>):<fpage>254</fpage>&#x2013;<lpage>65</lpage>. doi:<pub-id pub-id-type="doi">10.1287/opre.35.2.254</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>Bertsimas</surname> <given-names>D</given-names></string-name>, <string-name><surname>Simchi-Levi</surname> <given-names>D</given-names></string-name></person-group>. <article-title>A new generation of vehicle routing research: robust algorithms, addressing uncertainty</article-title>. <source>Oper Res</source>. <year>1996</year>;<volume>44</volume>(<issue>2</issue>):<fpage>286</fpage>&#x2013;<lpage>304</lpage>. doi:<pub-id pub-id-type="doi">10.1287/opre.44.2.286</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>Laporte</surname> <given-names>G</given-names></string-name></person-group>. <article-title>The vehicle routing problem: an overview of exact and approximate algorithms</article-title>. <source>Eur J Oper Res</source>. <year>1992</year>;<volume>59</volume>(<issue>3</issue>):<fpage>345</fpage>&#x2013;<lpage>58</lpage>. doi:<pub-id pub-id-type="doi">10.1016/0377-2217(92)90192-c</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>Gendreau</surname> <given-names>M</given-names></string-name>, <string-name><surname>Hertz</surname> <given-names>A</given-names></string-name>, <string-name><surname>Laporte</surname> <given-names>G</given-names></string-name></person-group>. <article-title>A Tabu Search Heuristic for the vehicle routing problem</article-title>. <source>Transp Sci</source>. <year>1994</year>;<volume>28</volume>(<issue>2</issue>):<fpage>130</fpage>&#x2013;<lpage>9</lpage>. doi:<pub-id pub-id-type="doi">10.1287/mnsc.40.10.1276</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>Potvin</surname> <given-names>JY</given-names></string-name>, <string-name><surname>Rousseau</surname> <given-names>JM</given-names></string-name></person-group>. <article-title>An exchange heuristic for routing problems with time windows</article-title>. <source>J Oper Res Soc</source>. <year>1995</year>;<volume>46</volume>(<issue>12</issue>):<fpage>1433</fpage>&#x2013;<lpage>46</lpage>. doi:<pub-id pub-id-type="doi">10.1057/jors.1995.204</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>Chen</surname> <given-names>G</given-names></string-name>, <string-name><surname>Gao</surname> <given-names>J</given-names></string-name>, <string-name><surname>Chen</surname> <given-names>D</given-names></string-name></person-group>. <article-title>Research on vehicle routing problem with time windows based on improved genetic algorithm and ant colony algorithm</article-title>. <source>Electronics</source>. <year>2025 Jan</year>;<volume>14</volume>(<issue>4</issue>):<fpage>647</fpage>. doi:<pub-id pub-id-type="doi">10.3390/electronics14040647</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>Kahalimoghadam</surname> <given-names>M</given-names></string-name>, <string-name><surname>Thompson</surname> <given-names>RG</given-names></string-name>, <string-name><surname>Rajabifard</surname> <given-names>A</given-names></string-name></person-group>. <article-title>Self-adaptive metaheuristic-based emissions reduction in a collaborative vehicle routing problem</article-title>. <source>Sustain Cities Soc</source>. <year>2024</year>;<volume>110</volume>:<fpage>105577</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.scs.2024.105577</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>Kumari</surname> <given-names>M</given-names></string-name>, <string-name><surname>De</surname> <given-names>PK</given-names></string-name>, <string-name><surname>Chaudhuri</surname> <given-names>K</given-names></string-name>, <string-name><surname>Narang</surname> <given-names>P</given-names></string-name></person-group>. <article-title>Utilizing a hybrid metaheuristic algorithm to solve capacitated vehicle routing problem</article-title>. <source>Results Control Optim</source>. <year>2023</year>;<volume>13</volume>:<fpage>100292</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.rico.2023.100292</pub-id>.</mixed-citation></ref>
<ref id="ref-10"><label>[10]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Sbai</surname> <given-names>I</given-names></string-name>, <string-name><surname>Limem</surname> <given-names>O</given-names></string-name>, <string-name><surname>Krichen</surname> <given-names>S</given-names></string-name></person-group>. <article-title>An adaptive genetic algorithm for the capacitated vehicle routing problem with time windows and two-dimensional loading constraints</article-title>. In: <conf-name>2017 IEEE/ACS 14th International Conference on Computer Systems and Applications (AICCSA)</conf-name>; <year>2017 Oct 30&#x2013;Nov 3</year>; <publisher-loc>Hammamet, Tunisia</publisher-loc>. p. <fpage>88</fpage>&#x2013;<lpage>95</lpage>.</mixed-citation></ref>
<ref id="ref-11"><label>[11]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Baldacci</surname> <given-names>R</given-names></string-name>, <string-name><surname>Mingozzi</surname> <given-names>A</given-names></string-name>, <string-name><surname>Roberti</surname> <given-names>R</given-names></string-name></person-group>. <article-title>Recent exact algorithms for solving the vehicle routing problem under capacity and time window constraints</article-title>. <source>Eur J Oper Res</source>. <year>2012</year>;<volume>218</volume>(<issue>1</issue>):<fpage>1</fpage>&#x2013;<lpage>6</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.ejor.2011.07.037</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>Marinakis</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Marinaki</surname> <given-names>M</given-names></string-name>, <string-name><surname>Migdalas</surname> <given-names>A</given-names></string-name></person-group>. <article-title>A multi-adaptive particle swarm optimization for the vehicle routing problem with time windows</article-title>. <source>Inform Sci</source>. <year>2019</year>;<volume>481</volume>:<fpage>311</fpage>&#x2013;<lpage>29</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.ins.2018.12.086</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>Zahedi</surname> <given-names>K</given-names></string-name>, <string-name><surname>Khalilzadeh</surname> <given-names>M</given-names></string-name></person-group>. <article-title>A hybrid metaheuristic approach for solving a bi-objective capacitated electric vehicle routing problem with time windows and partial recharging</article-title>. <source>J Clean Prod</source>. <year>2023</year>;<volume>383</volume>:<fpage>135372</fpage>. doi:<pub-id pub-id-type="doi">10.1108/jamr-01-2023-0007</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>Florio</surname> <given-names>AM</given-names></string-name>, <string-name><surname>Gendreau</surname> <given-names>M</given-names></string-name>, <string-name><surname>Hartl</surname> <given-names>RF</given-names></string-name>, <string-name><surname>Minner</surname> <given-names>S</given-names></string-name>, <string-name><surname>Vidal</surname> <given-names>T</given-names></string-name></person-group>. <article-title>Recent advances in vehicle routing with stochastic demands: bayesian learning for correlated demands and elementary branch-price-and-cut</article-title>. <source>Eur J Oper Res</source>. <year>2023 May</year>;<volume>306</volume>(<issue>3</issue>):<fpage>1081</fpage>&#x2013;<lpage>93</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.ejor.2022.10.045</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>Indrianti</surname> <given-names>N</given-names></string-name>, <string-name><surname>Leuveano</surname> <given-names>RAC</given-names></string-name>, <string-name><surname>Abdul-Rashid</surname> <given-names>SH</given-names></string-name>, <string-name><surname>Ridho</surname> <given-names>MI</given-names></string-name></person-group>. <article-title>Green vehicle routing problem optimization for LPG distribution: genetic algorithms for complex constraints and emission reduction</article-title>. <source>Sustainability</source>. <year>2025</year>;<volume>17</volume>(<issue>3</issue>):<fpage>1144</fpage>. doi:<pub-id pub-id-type="doi">10.3390/su17031144</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>Fan</surname> <given-names>L</given-names></string-name></person-group>. <article-title>A hybrid adaptive large neighborhood search for time-dependent open electric vehicle routing problem with hybrid energy replenishment strategies</article-title>. <source>PLoS One</source>. <year>2023</year>;<volume>18</volume>(<issue>9</issue>):<fpage>e0291473</fpage>. doi:<pub-id pub-id-type="doi">10.1371/journal.pone.0291473</pub-id>; <pub-id pub-id-type="pmid">37708216</pub-id></mixed-citation></ref>
</ref-list>
</back></article>