image thumbnail

dvtsp_ga_basic :Truck, Multi-drone Evolutionary Routing Prob

version 2.1.3 (4.11 KB) by Robert Rich
Evolutionary Genetic Algorithm to ~optimally route the Truck-Multiple Drone Configuration


Updated 07 Jan 2020

View License

FUNCTION: dvtsp_ga_basic calculates the minimum delivery time for a truck and
% multiple (nu) drones to deliver n parcels where each drone is capable of
% working in tandem with the truck to deliver only one parcel.
% System parameters for the drones are:
% kappa = drone range,
% alpha = drone speed as a factor of truck speed (1)
% nu = number of drones assigned to assist the truck.
% Given a graph G(V,E) with vertices V and edges E, the algorithm routes
% the truck ~optimally by assigning drones while routing the truck.
% For any operation (launch, delivery, rendezvous), one or up to nu drones
% may be assigned deliveries within range such that they can rendezvous
% back with the truck at the truck's next delivery location.

% Inputs:
% population size
% number of iterations
% xy coordinates
% alpha: max speed of drone as a factor of truck speed
% kappa: max range of drone (i.e. km)
% nu: max number of drones assigned to a truck
% Outputs:
% minimum ~optimal time based on distance with speed=1
% truck route
% drone route
% Evolutionary Algorithm (EA) uses uses a tournament mutation approach.

% Example of inputs:
% nStops = 20; % Number of delivery stops for truck-and-drones
% popSize = 500; % Size of the population of trials for mutation.
% numIter = 3500; % Number of iterations of GA; iteration budget.
% alpha = 2; % Speed of drone as a factor of truck
% kappa = 10; % Range of drone (i.e. 10 km)
% nu = 4; % Max number of drones assigned to truck
% xy = 50*rand([nStops,2]); % coordinates of stops

Cite As

Robert Rich (2021). dvtsp_ga_basic :Truck, Multi-drone Evolutionary Routing Prob (, MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2019b
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!