Abstract

Many network problems deal with the routing of a main tool comprised of several parallel assisting tools. These problems can be found with multi-tool-head routing of CNC machines, waterjets, plasma sprayers, and cutting machines. Other applications involve logistics, distribution, and material handling that require a main tool with assisting tools. Currently no studies exist that optimally route a main tool comprised of and fitted with multiple tools, nor do any studies evaluate the impact of adding additional capabilities to the tool set. Herein we define the network routing problem for a main tool comprised of multiple secondary tools. We introduce first principles to properly configure the main tool with the appropriate number of supporting tools such that that system is not overstatured. We invert the network geometry to extract the “best case” configuration for toolset configuration to include speed, range, and number of such that the system is lean. Our computational studies reveal that the theorems introduced herein greatly improve the overall system performance without oversaturating it with unused resources. In order to validate experiments, we define a mixed integer program and compare it to our metaheuristics developed for experimentation. Both the MIP and the metaheuristics herein optimally route a main tool with multiple assisting tools as well as the routing of a parcel delivery truck comprised of many drones.

1. Introduction

The use of multiple tools consisting of a main tool and several parallel resources in conjunction with the primary tool offers processing efficiencies in a range of applications. Semiconductor manufacturers are looking at ways to allow autonomous vehicles to interact such that overall travel time and traffic-congestion are reduced. Advances in multiheaded CNC and 3D printing-devices are expected to reduce print time significantly. In these designs, the main tool is confined to the primary axis of performance while assisting tool heads operate in parallel to the main tool. From a logistics standpoint, UPS, FedEx, and Amazon are evaluating the use of a single truck that is fitted with multiple parcel delivery drones to achieve greater efficiencies in delivery time.

The simplest example of this problem can be visualized as a mother with several children assisting with grocery shopping. The family has one grocery cart, and children are dispatched in different directions around the store to retrieve items back to the cart while the parent routes through the store. It is obvious that there exists a set of optimal routes that the mother and children take that would optimize the total shopping time. However, it is less clear how the underlying relationships between the speed of the mother and children as well as their ranges of travel will also greatly impact any gained efficiencies in shopping. If a child is exceptionally slow, then the parent is better off to carry the child. If the child is exceptionally fast, but does not have the travel range, then the child’s speed gives little advantage. Furthermore, that if the mother were to bring all her children into the store (in which case she has more than a dozen), she would be overwhelmed by idle children accompanying the overburdened shopping cart with much complaining due to their unemployed idle time.

So, it is easy to imagine that there exists a set of optimal assisting tool parameters (speed, range, and number of) that properly define the configuration of the overall system. For simplicity, we adopt a parcel delivery truck comprised of and fitted with multiple delivery drones to describe the problem.

The main idea here is that there exists a geometric relationship between the size and delivery-density of the total operations area (Figure 1) and the density of truck-drone operations area. Specifically, the size and number of deliveries in the total operational area needs to be proportional to the size and number of deliveries in the truck-drone operations area for the most efficient operations. In words, a single truck-drone operation is described as a truck launching one or more drones, each drone traverses out to make deliveries, and then subsequently rendezvous with the truck at a downstream delivery location. In a single truck-drone operation, we know that there is a max coverage area (denoted by the elliptical circle) that drones can reach (being constrained by range) and a total number of deliveries that can be performed. To achieve the maximum efficiencies, the truck-drone operation area density needs to be proportional to the total density of the larger delivery space. Since the larger space density is fixed, we adjust the drone parameters (speed, range, and number of) in order to match the truck-drone operations density to the larger delivery density. Thus, we advise to invert the network problem and solve the assisting tool parameters a priori such that they fit “the most” typical delivery scenarios for the delivery region in order to achieve maximum efficiencies.

In Section (2), we lay out the first principles geometric relationships between drone parameters and the truck-drone operations area. The notion here is that an operations is comprised of several truck-drone routing triangles. Each of these triangles fits within the area of an ellipse defined by truck speed and drone range. Thus, the elliptical area of the truck-drone operation and the number of deliveries within this space must be proportional to the larger delivery space delivery-density. To support the working theory, we conduct several computer experiments that reveal the production curve and “efficiencies gained” for systems described by the geometric relationships compared to systems defined by standard drone parameters of speed and range found in the literature. Section (3) reveals the results of these experiments.

An evolutionary algorithm (EA) was developed to perform empirical tests of our theory. The EA solves the truck-multidrone network routing problem by minimizing the total cumulative time based on either the max truck time or the max drone time for each set of launch-deliver-rendezvous operations cumulated in the total tour. Figure 1 shows ∼optimal routing solution for one of the problem scenarios. The algorithm is used to test the performance (total delivery time) of a lean configured truck-drone/s system to a standard configured system. The EA is validated by comparing it to the mixed integer program (MIP) shown in Section (5). The MIP is also validated by comparing it to known solutions and to brute force methods for smaller problem sets. As such, the validated metaheuristic solves problems optimally for nearly all of the smaller problem sets involving ten or less delivery stops and ∼optimal for problems as large as one hundred stops.

The sections comprised herein are as follow: Section (2) discusses working theory and theoretical insights. Section (3) reveals the results of the hypothesis testing performed in relation to the fundamental theorems. Section (4) discusses the literature surrounding the network routing problems. Section (5) defines a tractable version of the mixed integer programming (MIP) used to validate metaheuristics that can be easily adopted to optimization software tools available to researchers. Section (6) formulates EA used to higher dimension truck-multidrone routing problems. Section (7) gives comparative studies: the first comparative study shows the performance of the evolutionary algorithms (EA-1 and EA-2) used to solve the optimal routing for empirical studies. The algorithms are compared to each other and to MIP-solved optimal solutions. The second study compares a lean configured system to a standard system configurations found in the literature. Section (8) concludes the research findings.

2. Theoretical Insights

2.1. Truck-Drone Performance Boundaries

The simplest truck-drone example involves a truck and one drone (Figure 2). For this, there are three nodes comprised of a depot and two delivery locations i and j. If the truck’s speed is scaled to one (1) and the drone’s speed is a factor of the truck speed, then an optimal configuration exists when the drone’s range () equals the drone’s speed factor (). So, as the truck travels out one unit distance from the depot (Figure 2) to a delivery (), the drone also travels one () units of distance (where ) from the depot to delivery location for best configuration. The important thing here is that under the “best” configuration both the truck and drone return at the same time such that neither is waiting on the other. So, the best percent time () improvement that the dual system can possibly achieve over a truck-only system (truck having to deliver the two parcels itself and return to the depot tsp) is defined by [1]. Thus, the best case () of a truck-one-drone over a truck-only system is

2.2. Truck-Multiple-Drone Performance Boundaries

The more complex case for a truck fitted with multiple drones necessarily involves more than three delivery locations, say () For this argument, we assume that a well-configured system will involve the drones as much as possible throughout the delivery process. Therefore, if there are delivery stops to be made during the day, then the “best case” number of deliveries allotted to each resources is () divided by the number of assisting drones () plus the main tool (truck): . Furthermore, that delivery density plays an important role in determining the proper speed () and range () factors in the analysis where total delivery density is defined as the number of required deliveries for the operation divided by the size of the geometric operating or delivery area () as in . A densely populated delivery area requires more short-range drones while a sparse delivery density requires longer range and higher speed drones.

In order to construct a case for the theoretical upper boundary in potential performance improvement, we examine the geometry of a circle. We surmise that the best case (truck-multidrone) system for delivery time performance (over a truck-only) can be determined by launching drones from the depot, sending the drones out to delivery locations along the perimeter of the circle and returning to the depot as shown in (Figure 3). Both drones and truck launch from the depot, traverse out, and return to the depot. Conversely, in an absolute worst case scenario, the truck would have to deliver to all delivery locations. This means that the worst-case truck route having no drones (i.e., hub-spoke route) will have to traverse from depot to edge of circle and then back to the depot.

Concretely, there exists a maximum and minimum yield on potential performance improvement for a truck and multiple drone/s system over the truck-only system. The worst case performance (lower boundary) is the truck having to make all the deliveries itself inside the circle (hub-spoke). The best case improvement requires the drones to traverse out to the radius of the circle (); each makes a delivery, and then traverses back to the depot rendezvousing simultaneously with the truck.

Summarizing, if the truck traverses out one unit distance while the drones traverse units of distance where (), then the max time for any truck or drone is 2 units of time (Figure 3). Thus, a worst-case situation would exist if a truck had to visit all deliveries on the circle (hub-spoke fashion). In such case, the absolute worst time the truck could encounter would be where () is the number of deliveries around the circle (thus number of drones) at radius and one delivery made by the truck (1). Conversely, the best case () improvement for truck-multidrone () over a truck-only system is

2.3. Truck-Multidrone Operations Area

Expanding on the theoretical delivery problem means that trucks and each drone must traverse through the operating space and, therefore, do not return immediately to the depot. As such, drones travel using a triangular path to launch and deliver and then rendezvous with the truck downstream where the two legs of the drone’s triangular path cannot exceed the drone’s total range kappa . Since the truck and the drone do not have the same speed, we have to adopt a configuration using an ellipse (as opposed to a circle) (Figure 4) such that the foci points on the ellipse denotes the truck’s delivery locations, while a triangle formed inside the ellipse (using the foci points and edge of ellipse) denotes any of the potential launch-delivery-rendezvous operation for any of the drones. Thus, the drones are confined by range to operate within the area of the ellipse where they are launched. They are launched from the first foci point and must then be retrieved at the second foci of the ellipse by the truck in a perfect scenario. Therefore, it is easy to imagine that there exists a proper sizing of the ellipse whereby the truck’s speed and distance (from foci to foci) must be aligned with the drone’s range, drone’s speed, and the number of drones. The number of drones is based on the density of deliver locations within the elliptical area.

The first interrelationship requires that in order for the drone to traverse out to its maximum distance and return back to the truck without any idle time, it is require that the truck-only travel kappa divided by alpha distance. Therefore, the distance between the two foci is a factor of both drone range and drone speed. For example, if the drone travels twice the speed of the truck and the drone can travel a total of 10 km , then the truck should only travel 5 km before having to retrieve the faster drone having travelled 10 km in the same time period if there is to be no idle time. As such, we limit our elliptical area such that from foci to foci is denoted as must be equal to for a perfectly lean scenario.

The second interrelationship requires that the total distance that the drone can travel is limited by the drone’s range. Therefore, the drone should be limited to twice the axis of the major axis . For relaxation of the problem, drone range must be greater than twice the major axis , and truck travel distance at speed one is consistent with drone speed factor where the truck speed and drone speed are defined by speed factor alpha .

Moreover, delivery density directly reflects the number of drones assigned to deliver within the elliptical area. We can imagine that if given the total delivery density for the entire area is comprised of total deliveries and a total area , then delivery density would be computed as . Under a best-case delivery density scenario, the densities of two of the ellipses would need to be proportional to the total delivery density for the problem space as in . Thus, we define the truck-drone operations area as that of two overlapping ellipses joined at the foci (minus intersection) aswhere is the major axis, is the minor axis , is the foci distance from centre to foci, and is the golden ratio (∼1.618) shown in figure (Figure 5).

Furthermore, based on the interrelationship between truck speed, drone speed, and drone range, the total distance between two foci is approximately equal to . Therefore, we would expect to see deliveries within the dual elliptical area . Thus, we compute the number of expected deliveries inside any of our elliptical drone operational areas as for a “practical best-case” scenario.

In summary, we can surmise for practical best-case situation that twice the distance from the centre of the ellipse to the foci is a factor of both drone range and drone speed as in so that the truck and drone’s operation reduces idle time and that drone range is greater than or equal to the two legs of the triangle () (Figure 5). In such case, the “practical best case” for the number of drones fitted to the truck is based on deliveries needed to be within the combined area of the two ellipses . Also, since the truck can make three of the total deliveries, then the number of drones required to be fitted to the truck under “best case” scenario is .

Using the area of two ellipses and the appropriate “practical best case” density for a given system, the problem can be inverted by knowing a priori the delivery density and then forcing to be equal to by selecting proper parameters for range, speed, and number of drones. Thus inverting the problem, we solve for the drone range, drone speed, and number of drones that would produce a “practical best case” geometric design for the problem.

2.4. Theoretical Summary

In summary, the hypothesis for is as follows.

2.4.1. Maximum Theoretical Upper Boundary

There exists a maximum theoretical upper boundary for best possible percent time improvement over a truck-only system that will never be exceeded without special construction of problem scenario based on the assisting drone’s time improvement factor where denotes the speed factor and denotes the number of drones assigned.

2.4.2. Lower Boundary

The theoretical lower boundary percent improvement (worst case) for a truck-multiple-drone system over a single truck only solution is based on the fact that a truck can perform all the deliveries by itself and default to a single truck route, thus no time improvement.

2.4.3. Improvement

Improvement moves toward the practical upper boundary as the delivery density of the given operating area scenario moves toward the calculated theoretical “best case” delivery density . As such, the problem can be inverted. As the absolute value between the problem delivery density and the “practical best case” delivery density are minimized, the best case (optimal) drone speed factor , drone range , and number of drones based on the geometric layout of the ellipse emerge. Due to the stochastic nature of most problem scenarios, the optimal drone speed, drone range, and number of drones is a lower boundary optimal.S.T.

For the proper configuration of the minimization problem, let be the major axis, let be the minor axis, and let denote the distance from foci to the centre of the ellipse. Furthermore, let alpha denote the speed factor of drone as related to the truck’s speed of one (1). Let kappa denote the range of the drone whereby the range must be greater than twice the major axis of the ellipse; let nu be the number of drones assigned to assist the truck. Let the area of one ellipse be and the combined area of two ellipses . Since the ellipses are intersecting at a foci point , then let the area of the two combined ellipses be reduced by the area of one of the intersected ellipses where is the golden ratio (∼1.618).

Concretely, equation (5) minimizes the absolute distance between the problem delivery density and the practical best case delivery density of the two ellipses. Equation (6) forces the range of the drone to be greater than that of the two legs of the triangle inscribed within an ellipse. Equation (7) solves for the optimal number of drones to be fitted to the truck by allowing the truck the opportunity to deliver to three of the delivery vertices found within the area of the two ellipses. Equation (8) guarantees that the interrelationship between truck speed, drone speed, and range are configured such that for each operation, (launch-deliver-rendezvous) the truck and drone arrive back at nearly the same time to reduce potential idle time for either truck or drone. The truck travels , while the drone travels a max of and the interrelationship gives enough flexibility to solve the problem by establishing that . Equation (9) calculates the expected number of deliveries found within the area of two ellipses . Equation (10) defines the delivery density as the number of deliveries per total area of operation. Equation (11) calculates the delivery density of the two ellipses. Equation (12) defines the area of the two ellipses minus their intersecting area. Equation (13) establishes the geometric relationship of the triangle inscribed within an ellipse where is the hypotenuse. Equation (14) solves for drone speed factor alpha as the ratio of the drone’s speed to the truck’s speed. Equations (15)–(18) are boundary equations for the drone’s speed, truck’s speed, drone range, and the total number of drones. Equation (19) ensures that delivery density of ellipses is greater than zero while drone range, drone speed factor, and number of drones are greater than one.

3. Hypothesis Testing

To test our hypothesis, thousands of random experiments were conducted by holding range , speed factor , and number of drones stationary while perturbing number of deliveries over the delivery area . In essence, the optimal delivery density is precalculated based on drone parameters . For each experiment, delivery density changes based on changing number of deliveries within the delivery space . The experiments are designed to test the performance of a truck multidrone system against a truck-stand-alone (no drones) system. In the experiments, we see that, when the delivery density (along the x-axis) reaches the optimal density line on the graph, then the overall performance of the system improves until it begins to saturate. In words, the denser the deliveries are in a delivery space, the better the system performs until saturation. Using the fundamentals mentioned above, we can now calculate the optimal density at which the system saturates. The figure below (Figure 6) reveals low performance when delivery density is sparse. The system then begins to improve up to and including the optimal delivery density before the resources begin to saturate, and improvement curve asymptotically reaches its peak performance.

The figure shows that the fundamental relationships established in Section 3 accurately predict the system performance. Using the fundamentals as a guide, the experiments revealed that as the delivery density approached the optimal density the overall performance of the system improved. Concretely, that as density moved closer toward the system improved until saturation. As such, we can surmise that the geometric layout of the ellipses comprising the delivery density is an accurate depiction of the practical best case geometric configuration for the system. Therefore, the minimization problem established in Section 3 is a “practical best case” method to derive speed factor alpha , drone range kappa , and number of drones nu to be fitted to a truck based on a typical delivery situation.

4. Literature

A large body of literature exists about the traveling salesman problem (tsp) and the vehicle routing problem (vrp). Many approaches and variations to both can be found in surveys, reports, and papers [24]. As a general rule, the vrp problem extents the tsp problem by adding additional constraints. These constraints are comprised of time windows, priorities, range, loiter times, permissible-to-vehicle type route segments, load configurations, traffic patterns, etc. [5, 6]. Originally, Danzig and Ramser [7] investigated the vehicle routing problem. Later, Clarke and Wright [8] proposed an effective greedy heuristic which subsequently followed by several techniques or models involving exact and heuristic approaches to solve the extensions and variations of the vrp. An extensive survey can be found in [9] with exact methods to solve various routing problems.

While many variants to the tsp problem exist in the literature including multivehicle, customer pickup and delivery problem, multiple synchronization constraints [10], multiple depot vehicle scheduling problem [11], and many-to-many milk run routing problem [12], there exists only a handful of studies concerning the truck-drone problem. Moreover, the truck multidrone problem is a relatively new paradigm not found in the recent literature. Although the truck-drone problem has been addressed by research thus far, there is no work found on the truck-n-drone problem.

4.1. Truck-Drone Problem

The operational aspects and the formulation of the truck-drone problem were first shown by Murray and Chu [13]. Shortly thereafter, Agatz et al. [1] considered a close, but slightly altered version of the problem. Murray and Chu identify two ways that drone can be useful in delivery: drones can be launched and recovered from the depot (parallel drone scheduling traveling salesman problem PDSTSP) or drones can assist the truck in a parallel operation (launch-deliver-recover) as in the “flying sidekick tsp” FSTSP. Both Murray and Agatz define the material aspects of the truck-drone problem and discuss the mixed integer formulation for the optimal min-time route. They consider the drone is constrained in range, capacity, and speed. Agatz only considers a slightly altered version of the FSTSP and does not address the PDSTSP. Agatz, like Murray, considers the truck-drone in tandem as a team whereby the truck launches the drone, traverses to a separate delivery location from the drone, and then rendezvous with the drone again. However, the main difference between the approaches is that Agatz et al. [1] proposed that the drone and truck traverse along the road network system, a constraint not enforced by [13]. They do this to facilitate construction of heuristic approaches with approximations that guarantee a bound on the maximum achievable gain of the delivery system over a “truck-only solution.” Murray and Chu [13] formally define the flying sidekick traveling salesman problem (FSTSP) as an NP-hard problem. Their study suggests a mixed integer programming (MIP) as well as a metaheuristic approach. They also consider a second similar hub-type problem that addresses the case where the customers are close enough to the depot to be serviced directly from the depot by the drone while the truck delivers to farther reach areas. This is denoted as the parallel drone scheduling TSP (PDSTSP). More recently, Agatz et al. [14] presented an exact solution approach for the truck-drone problem denoted as the TSP-D based on dynamic programming. They conducted experimental studies using the different dynamic programming heuristics which indicated that the dynamic-programming-problem could solve larger problems better than mathematically programming approaches found in the literature.

Although existing research shows mathematical formulations and discusses various methods to approach the metaheuristics, the main gaps are that no studies reveal details concerning the expected percent improvement for a given configuration of the truck-drone to various delivery densities. Specifically, there are no studies that investigate the tradeoff between number of drones, speed factor, and drone range.

4.2. Truck Multiple Drones

Ferrandez et al. [15] introduce a method using k-means clustering to cluster deliveries based on distance and then to route the truck around to each of the clusters using a approach. This cluster-first-route-second approach also introduces a genetic algorithm to optimally route the truck through center mass quasinodes created from each of the clusters. In the described scenario, the truck may loiter at any center mass cluster node (hub) while the drone/s deliver to customers within the cluster region using a minimum spanning tree (MST) hub-spoke type of approach. Additionally, analysis was conducted on the tradeoffs between total time and total energy consumed by the truck-drone team as a factor of number of truck stops.

Our study herein is different than Ferrandez et al. [15]. Here, we require that the truck launch multiple drones then proceed to the next delivery location prior to rendezvous. It is an improvement in time over a hub-spoke method. Furthermore, we use an MIP metaheuristic to solve for optimal network routing while minimizing total delivery time. Furthermore, we introduce the concepts of “practical best case” or lean configuration which has not been addressed by any author for any of the main tool/assisting tool problems.

Other gaps in the literature are that no research deals squarely with the truck-multidrone problem from a mathematical modeling or a metaheuristic perspective. Moreover, there exists no study that discusses of the tradeoffs or selection of system parameters with changes in the operating area or density of the delivery area. There is obviously a delta time improvement that can be determined using two or more drones or proper selection of range and speed when these are used in conjunction with a truck addressed herein.

5. Mixed Integer Program (MIP)

The MIP for the truck-multiple drones d traveling salesman problem () solves for the optimal network routing of a truck with multiple drones while minimizing total time. It was developed and used herein as the basis to analyze and evaluate the effectiveness of the “practical best case” configuration. Material elements of the are described as a network graph where denotes the customers-delivery-stops and the edges between stops. Each vertex where . Edge is described by two vertices , and two edges or an operation is described by two vertices for a truck indicating launch and recovery. Furthermore, the binary variables denote a truck and the two edges used by a drone in an operation if an operation exists between . The binary variable if truck traverses edge . If a drone is dormant, it is assigned no vertices for a null operation. As in the truck-drone problem, the first and last vertices of an operation must always be the same for the truck and all drones. The distance matrix is denoted as where is the cost or distance of traversing edge . The subtour elimination variable ensures that sequence of follows in the event that is part of the solution; as such, it restricts subtour formations. The min-sum of max (of max) objective function minimizes the max time of either the truck’s time or any of drone’s time for an operation. As such, is used to evaluate each vehicle’s max-time where are the first and last nodes of the two visited nodes for truck as well as the first and last of three nodes traveled by any drone as in . Since is greater than or equal to the max time of the truck or any of the drones, it forces to evaluate the max (of max) of all vehicle’s time.S.T.

In the construction, equation (20) minimizes the sum all the max of truck or drone edges to all operations described as a truck route and potentially a triangle drone operation described by . Equation (21) forces the max (worst case) of either a truck edge or the drones’ two-edges to be in the resultant minimization calculation for objective Z. The distance for a truck edge is denoted as whereas the drone’s triangular operation distance is denoted by where is the drone speed as a factor of truck speed where . In essence, this equation serves as a mini-sum of max (of max) construction. Equation (22) constrains the truck portion of the route to make a circuit or at a minimum manifests a sub-tour. Equations (23) and (24) ensure each city has at least one truck or one drone visiting the city. Equation (23) establishes that each city must be visited (entered), while (24) constrains that each city visited must then be exited. Equations (25) and (26) prohibit any truck or drone from loitering as in or . Equation (27) requires that any drone operation triangle has an associated truck launch and recovery . Equation (28) forces that any drone operation edge is not already a truck edge. Equation (29) forces a utility variable and to properly sequence truck route segments such that sequence number follows so that no subtour is formed in the truck sequence of the truck portion of the route. Equation (30) and (31) work in conjunction with equation (29) to set vertex (20) as first and vertex as the last of the truck-route segments. Equation (32) sets the minimum number of truck cities visited to be greater than or equal to three but less than total nodes available, . Equation (33) limits any drone operation to be less than the constrained range of the drone if those two edges and are used as a drone operation . Equations (34)–(36) set minimum requirements for distance matrix, range, and speed factor as well as sets truck variable and drone variable as binary integers.

6. Evolutionary Algorithm

The tournament-based evolutionary algorithm (EA) here adopts a cluster-during-routing approach to solve the truck-drone problem. More accurately, it assigns both truck and drone labels during the routing process. Currently, there are no other algorithms found in the literature. The algorithm denoted as EA1 creates a population matrix of randomly permuted routes whereby each node in a tour is evaluated as a potential drone-delivery node unless that node is out of range. Since a population of many randomly generated tours is evaluated simultaneously, any node not within drone range is autoassigned and labelled truck; otherwise, the algorithm labels it drone.

6.1. Evolutionary Algorithm (1) Steps

The EA randomly permutes a population of tours where each tour denoted as a genome sequence for delivery nodes in the tour. It determines the fitness for each population member (tours) based on total tour delivery time. All fitness times are saved for seed tournament. The total population is then divided into groups of five tours each to conduct a set of seed tournaments. For each of the groups, the best member within the seed group (of the five) is chosen as the single gene to mutate for the remaining four members of the seed group. Gene mutation (tour mutation) first copies the fittest member of the group of five within the seed tournament to replace the four less fit members. Each of the four less fit members (now identical to the fittest) is then slightly mutated to improve fitness. For each of the four, mutations are comprised of only one of (a) randomly selecting and swapping two nodes within the tour, (b) reverse ordering of the tour between two nodes, (c) sliding a tour segment down between nodes to left or right, and (d) replacing the last node in the tour with any other node. The algorithm iterates repeatedly until convergence, or a terminating condition is met based on a predetermined budget, tolerance, or a saturation found in improvements (Algorithm 1).

FOR iterations in budjet LOOP
FOR each (i) population member LOOP
   Routei ⟵ a tour within the populations of tours
   launch ⟵ Routei (1) first node;
   rendezvous ⟵ Routei (2) second node;
   candidate ⟵ Routei (3) third node;
   drone count ⟵ 0;
   route time ⟵ 0;
  WHILE candidate ≤ total delivery nodes DO
   truck op time ⟵ get truck time (launch, rendezvous);
   drone op time ⟵ get drone time (launch, candidate, rendezvous);
   drone op dist ⟵ get drone distance (launch, candidate, rendezvous);
   IF candidate ≥ total delivery nodes THEN
    IF drone count ≥ number drones avail.OR drone op dist. > drone range THEN
     Max op time = max (truck op time, drone op time, multiple drone op time);
     route time ⟵ route time + max op time + truck op time;
     route time ⟵ route time + get truck time (candidate depot);
    ELSE (drone makes last delivery)
     Max op time = max (truck op time, drone op time, multiple drone op time);
     Route time ⟵ route time + max op time + get truck time (rendezvous, depot);
    END IF
    BREAKwhile loop;
   END IF
   IF drone count ≥ number drone avail OR drone dist. > drone range THEN
    Max op time ⟵ max (truck op time, multiple drone op time);
    Route time ⟵ route time + max op time;
    Launch ⟵ rendezvous;
    rendezvous ⟵ candidate;
    candidate ⟵ min (Routei(candidate + 1), total number stops);
    drone count ⟵ 0;
    multi drone op time ⟵ 0;
   ELSE (assign delivery to drone)
    max op time ⟵ max (truck op time, drone op time, multiple drone op time);
    route time ⟵ route time + max op time
    candidate ⟵ Routei(candidate + 1);
    drone count ⟵ drone count + 1;
    multi drone op time(drone count) ⟵ drone op time;
   END IF
    List of all Route Times (p)  route time;
  END WHILE
END FOR (each population member)
  Populationrandomly shuffle among the tours in population, keep routes intact
FOR each of five tours in population LOOP through, keep tournament winners, mutate losers
  Best time, Id, Best RouteGet Fittest Member tour of tournament of 5;
  Overwrite each of the four less fit tours with the fittest member;
  Mutate first of the four less fit tours by random swap;
  Mutate second of the four less fit tours by random segment slide;
  Mutate third of the four less fit tours by random segment flip;
  Mutate fourth of the four less fit tours by swapping last node in tour with any other
  Do nothing for fifth tour; keep the fittest tour intact;
END FOR mutations and tournament winners
  Populationupdate old Population with new Population mutations and winners
END FOR total budget exhausted
RETURN overall best tour in population (time, route) and graph route;
6.2. Evolutionary Algorithm (2)

The second metaheuristic denoted as EA2 is nearly identical to EA1, but differs by performing a cost check before assigning a drone to the job. Concretely, EA2 performs a calculation to determine if it is more efficient to assign the truck or the next drone. If the truck is more efficient, the greedy algorithm assigns the truck and foregoes assigning a drone.

Both algorithms use an approach similar to simulated annealing. A seed tournament genetic algorithm’s strength lies in the ability to overcome local optima by retaining multiple paths (or seeds) that simultaneously advance toward optimization. This ideology is especially critical for network routing problems. Furthermore, because there are multiple members of the population within a seed tournament, the algorithm allows for various mutation methodologies to be performed on the members of the seed tournament. In this case, the random swap (or pairwise swap), flip, and slide mutations have proven to be robust, fast, and extremely accurate for problems involving permutations whereby order matters.

The performance of the evolutionary algorithm is based on the underlying theoretical principles: (a) by initializing a relatively large population (i.e., 5n) of randomly permuted tours, multiple tracks are maintained toward optimal convergence (seed tournaments). These multiple, but different, paths slowly converge and, thus, increase the probability of an optimal convergence. (b) By saving the fittest gene in a seed and then slightly perturbing (mutating) the best gene (tour) found in the seed group ensure the solution never gets worse while promoting improvements at each iteration. (c) By autoassigning the drone to any “within range” node, the use of the drone is maximized throughout the routing process while simultaneously reducing the truck’s overall tour length. The risk of assigning the wrong node to a drone is mitigated by multiple seeds. (d) Multiple path (seed) random search is much faster than having to calculate the greediness or the exactness of each neighborhood within reach as in other algorithms. Therefore, the algorithm relies on computational speed and iterations without the burden of unnecessary calculations.

Both EA1 and EA2 use a route-during-clustering approach. This approach has several advantages over other algorithms. All algorithms found in the literature with the exception of [16] use route-first, cluster-second or a cluster-first, route-second approach. This results in a two-phase algorithmic process whereby the first phase solves for routing (as in travelling salesperson routing (tsp) or minimum spanning tree, (mst) routing); the second phase relying extensively on solutions found in first phase performs swaps between truck or drone delivery. The best known algorithms for tsp (or mst) routing are on the order of where n is the number of nodes in the route. The second phase in a route-first-cluster-second algorithm relies heavily on the initial routing solutions being in the vicinity of a truck-drone solution. As such, the second phase is equally complex as the first phase with the disadvantage of being locked into a potentially suboptimal routing scheme especially when drone configurations change.

Conversely, the route-during-clustering algorithm performs the routing and the selection of the truck or drone for the next operational move, segment of the route. As such, the complexity of the algorithm is based on the number of iterations , the population size , and the number of nodes found in the tour. In such case, the algorithm is consistent with the order of or . A computer with an Intel core (i5) and 1.70 GHz CPU, comprised of 50 nodes and 3 drones, requires approximately ∼25 million iterations or ∼35 seconds for convergence.

The overall complexity of the truck-multidrone problem denoted as () can be analysed from a brute force methodology. To evaluate every potential solution for a ten node problem would require slightly less than permutations or approximately ∼1.86e + 09 routes and binary drone assignments. Every solution requires two genes, a gene describing the order of the tour and a gene to describe every possible truck or drone assignments . For larger problem sizes, say would require  = 6.8486e + 79 iterations translating to approximately 2.8e61 seconds computer time or ∼7.1e53 years on a 1.70 GHz CPU. For such method, the number of iterations to accomplish would exceed the time in the universe.

7. Comparison Studies

Two different computational studies are conducted here. The first study analyses the performance of the metaheuristics against the optimal solution based on MIP and brute force solution. The second study analyses the performance of the system model parameters against arbitrarily (standard) assigned system variables.

In the first study, the performance of the two metaheuristics described in Section 6 is analysed. The two metaheuristics are compared against themselves as well as compared with the guaranteed optimal results obtained from the mixed integer program (MIP). The comparison study analyses four different performance factors: (1) the average delta delivery-time of the metaheuristic versus the optimal delivery time found using the MIP, (2) the max delta (delivery-time) between the metaheuristic versus the optimal time of MIP, and (3) the total number of metaheuristic experiments that resulted in optimal results out of ten studies, and the average computer solution time for the metaheuristic to compute the optimal solution.

The second study analyses the performance of properly (optimally) configured system parameters as described in Section 2 (theoretical insights: system model) against standard parameters found in the literature . In many cases, the literature arbitrarily chooses system parameters as drone speed factor set at two times the speed of the truck and an arbitrary drone range set at ten kilometres based on current technical capabilities. The system comparison study here analyses three performance metrics: (1) the total delivery-time obtained by a properly configured (lean) system versus the total delivery-time obtained by arbitrary system parameters , (2) the overall utilization of the drones throughout the delivery: a properly configured (lean) system versus the utilization of the drones from a system with arbitrary parameters, and (3) the under or oversaturation of the system determined by the average wait or idle time (by the truck or by drone) for all operations.

7.1. Computational Study 1: Metaheuristic Performance to Optimal Solution

For the sake of simplicity, a plane of coordinates is uniformly randomly generated from the Cartesian coordinate system with Euclidean distance between the nodes. Concretely, all nodes for problem comparisons herein were sampled from the uniform distribution from {0, 1, 2, …, 30}. For each metaheuristic experiment, 10 runs were conducted in order to average the results. Results obtained were based on delta from optimal, whereby delta is defined as the difference between delivery-time (and final route) obtained from the metaheuristic versus the delivery-time (and final route) obtained by an optimal guarantee process (i.e., MIP).

The metaheuristic experiments were run on a Windows 10 operating system, Intel® Core™ i5-835OU CPU @ 1.70 GHz and 4 GB of memory. The main purpose of the experiments was to determine the accuracy of the metaheuristics denoted by delta () and total computer-solution time (elapse time). Since optimization can only be guaranteed (compared to MIP) by smaller job sizes, the job size for experiments ranged from 10 to 15 jobs (nodes). Table (Table 1) below shows results for 10 randomly generated instances with 10 and 15 nodes of each instance type. For each experiment (10 runs), the delta from optimal is averaged (avg.), the max deviation from optimal is determined (max), the total number of experiments found to be optimal (#opt out of 10), and the total computer-solution time is given (elapse time) for comparison.

Results indicate that both EA-1 and EA-2 are capable of solving the truck-multidrone problem near optimal. The EA-1 slightly outperformed EA-2 due to the higher utilization of drones. It is estimated that depending on the configuration of the system parameters to the operational spaced, EA-2 is efficient when there are more drones than necessary fitted to the truck or the system is highly saturated with resources.

7.2. Computational Study 2: Lean System Parameters Compared to Standard Parameters

The second study compares the performance of a lean or properly configured system parameters against an arbitrarily set of system parameters often found in the literature. For the sake of simplicity, an experiment was drawn from a uniform random distribution of the plane comprised of Euclidean distance between each of the coordinate delivery nodes. Since the experiments are designed to compare the performance of a lean system to an arbitrary system, the performance parameters selected for comparison are delivery-time ti, utilization util., and truck or drone wait time. Each experiment was comprised of ten (10) runs in order to obtain an averaged set of results. The delivery area was perturbed between to evaluate various delivery densities for 30 delivery sites. Table 2 shows the results of six experiments each with ten runs comparing the arbitrary system parameters to the lean system parameters derived from the nonlinear optimization in Section 3. The evolutionary algorithm EA-1 (Section 7) was used to optimally route and cluster the truck and n-drones throughout the delivery area to arrive at the optimal delivery times for each run for each experiment. EA-1 was also used to obtain average utilization (of drones) and the average wait time for either the truck or the drone for each operation within each run. The average of the ten runs is reported in Table 2.

Experiment results show that by adopting the lean system parameters, the overall delivery time is consistently reduced. Results show delivery time reductions for each experiment (56%, 33%, 15%, 8%, 9% and 26%). It is noted that for at least two experiments, the arbitrary configuration was close to the calculated lean configuration; thus, no major improvements were expected for experiments 4 and 5. An expected tradeoff is utilization. In poorly configured systems, the drones are either highly utilized or rarely utilized; thus, they range from bottleneck to saturated resources. The lean configuration slightly relieves the bottleneck system and unsaturates low utilization configurations. Average wait time for each operation slightly increased due to the stochastic nature of within the experiment design. In this case, the drones often found themselves advance of the truck in operations and therefore at an increased opportunity to accumulate wait time.

8. Conclusions

The current literature lacks any usable information in terms of the highest yield regions of the design space (speed, range, and number drones) for a main tool with multiple assisting tools; specifically, herein, we analysed a truck-multiple-drone configuration. Few, if any, research articles address a tractable, usable MIP for the truck-multidrone problem for quick transfer and testing within standard optimization tools (IBM® ILOG CPLEX, Lindo® Lingo). Therefore, any business wishing to evaluate the use of a single truck fitted with multiple drones has a way neither to guide the selection of drone parameters nor to evaluate the efficiencies of those selections without developing scientific experiments. The “practical best case” geometric approach shown herein inverts the problem space and solves for practical best case drone speed, drone range, and number of drones given a general delivery scenario. Concretely, it serves as a basis to address practical design decisions regarding the proper configurations to achieve the maximum desired yields for a system. It serves as a way to screen out low performing designs while giving the decision maker a Pareto front of potential configuration solutions that achieve a lean alignment. Moreover, both the MIP and metaheuristics developed herein for empirical studies accurately solve for the optimal truck-multidrone routing, thus giving the business ample tools for evaluating generalized scenarios.

The simplified version of the MIP is not found in any other study; it is useful and an easily implemented metaheuristic necessary to solve for the optimal route and optimal time for the truck-multiple-drone for smaller problem sets. For larger problem sets, the single chromosome evolutionary algorithm (EA-1) is best in class metaheuristic to test various test-case scenarios. Both EA-1 and EA-2 were modelled as functions within the MATLAB® development environment language, and the files were made available at Mathworks® file exchange (dvtsp_ga_basic) for evaluation and general purpose use/testing. As far as we could surmise, our EA is the only algorithm available for such problems found in the literature or in an open resource environment.

In conclusion, this research answers the questions of expected efficiencies in time that would be expected given a truck-multidrone configuration as well as finding “what is the proper configuration for a truck-multidrone situation.” It gives business a foundation to evaluate a variety of configurations against a typical daily last-mile parcel-delivery scenario. The work also opens several additional questions for future research. These questions tend to be toward the total energy savings and the energy saturation for different truck-multiple-drone generalized situations the business may encounter. Future research studies a fleet of trucks each fitted with the optimal number and type of drones.

Data Availability

Genetic algorithms and metaheuristics are available online in MATLAB after publication.

Conflicts of Interest

The authors declare that they have no conflicts of interest.

Authors’ Contributions

(1) R. R. conceived the presented idea, developed the system theory, performed the computations, developed the theoretical formalism, performed the analytic calculations, performed the numerical simulations, verified the analytical methods of the system theory, mixed integer program and metaheuristics, wrote all sections of the paper including all the tables and graphs, conducted the fundamental experiments, conducted the performance comparison for evolutionary algorithms 1 and 2 against optimal solution, and conducted the lean comparison tests to the arbitrarily configured system.