Application of Drone in Solving Last Mile Parcel Delivery

Jiashi LIU, Zhongliang GUAN, Jennifer SHANG, Xiang XIE

Journal of Systems Science and Information ›› 2018, Vol. 6 ›› Issue (4) : 302-319.

PDF(396 KB)
PDF(396 KB)
Journal of Systems Science and Information ›› 2018, Vol. 6 ›› Issue (4) : 302-319. DOI: 10.21078/JSSI-2018-302-18
 

Application of Drone in Solving Last Mile Parcel Delivery

Author information +
History +

Abstract

The article is about solving the last mile delivery problem in rural town or village. We want to test the drone's potential in parcel delivery. The objectives are 1) to introduce the cluster and truck-drone in tandem delivery method, 2) to compare the new method with the traditional TSP method in aspect of truck running distance, energy using and time occupation. The parcel delivery demand is sparse, so it is not dense enough for a truck to carry on delivery. We try to identify the best route for the drone to deliver the goods. We use k-mean method to carry on clustering, then we use enumeration method to fulfill the centroids delivery, which comes from the depot. We design a model and calculate the energy, time and distance saving between drone using method (DTSP) and traditional TSP method. The drone attended delivery saves truck delivery distance, energy consumption and time. The truck running distance of DTSP method saves 91.87%, the truck running distance is shortened from 189.69 km to 15.4252 km. The DTSP method saves 90.45% of energy. The DTSP method brings a 29.75% cutoff in time aspect when there are two drone in running. The research introduces the cluster and TSP combination method, which is a good way to carry on last mile delivery. The result shows a bright future for drone to attend parcel delivery. The e-commerce corporation can apply this method in practice.

Key words

drone / last mile delivery / e-commerce / genetic algorithm

Cite this article

Download Citations
Jiashi LIU , Zhongliang GUAN , Jennifer SHANG , Xiang XIE. Application of Drone in Solving Last Mile Parcel Delivery. Journal of Systems Science and Information, 2018, 6(4): 302-319 https://doi.org/10.21078/JSSI-2018-302-18

1 Introduction

Attention has been dedicated to ''drone'', which is also named Unmanned Aerial Vehicles (UAVs, aircrafts piloted by remote control or onboard computers as in the Oxford Dictionary), It recently becomes widely available in the commercial marketplace. The quadcopter is a special kind of drone, which has four rotors. The UAV has been applied to commercial use test by Amazon, DHL, JD etc. There are articles that talk about how it works. Gatteschi, Lamberti, et al.[1] explained how it works for quadcopter to delivery drugs. We try to give a solution to optimization of the quadrotor's route in delivering the e-commerce parcels in rural town or village. Due to the limited flying distance of drone, a truck drone in tandem system is introduced. Considering the relationship of traditional vehicle routing problem, we define our research problem as drones traveling salesman problem (DTSP).

2 Literature Review

There are literatures about using drone or quadcopter as way to delivery parcels. Hong, Kuby, et al.[2] showed us the usage of commercial drone in the urban area. The research considers the battery recharging problem and tries to build a network to cover the urban city. It also considers the barrier problem. The model is based on the Euclidean shortest path problem, which has been solved Lee and Preparata[3]. There are also literatures about the internal logistic usage of quadcopter. Olivares, Cordova, et al.[4] talked about the quadcopters' usage inside a manufacturing plant. The research uses the sweep algorithm; it divides the process into two steps. In the first phase the clusters are formed. In the second phase, the problem is transformed into traveling sales man problem. There are literatures about the truck-drone in tandem delivery network. Ferrandez, Harbison, et al.[5] has found that the truck-drone in tandem delivery network is better than truck or drones work alone. The research also gives us the best number of launch locations and the best of number of drones on the truck. In this article, we also adopt this tandem mode. We first cluster the demand dots, then we do a TSP problem, which is about depot and cluster center. Besides the new research on quadcopters' usage and optimization, the traditional research about the vehicle routing problem can also be applied to this new scenario. Some research is helpful to solve QRP problem. Ombuki, Ross, et al.[6] has researched the multi-objective vehicle routing problem with time window. Baldacci, Toth, et al.[7] has done an study about the vehicle routing problem with a capacity constraints. The work most closely related to DTSP appears to Murray, et al.[8]. It brings two models: The flying sidekick TSP and the parallel drone scheduling TSP. It models a tandem system in FSTSP, the depot is far from the customer. The truck can recharge a drone. Both the truck and drone can serve customers. The truck meets the drone at customer demand location. Our work is different from that in following aspect. First, we define multiple drones problem, more than one drone is used in our work. Second, the truck stays at the centroids is not working for delivery. Third, we do not consider the case that the demand point cannot served by drone. We think the payload of drone is capable to handling most parcels. The drone fly range problem can be solved by the truck drone in tandem system.

3 Model

Assumptions is put forward. The following operating conditions are assumed:
1) The truck is staying still while the drone in the route, therefore the drones can be recharged and go to another round of delivering.
2) The drones use the truck as harbors, it can serve the drone many times and the recharging time is tiny, which can be omitted in our cases.
3) The drones arrive at the demand points in a direct line way, which means it is an Euclidean distance in calculation between the demand points and the truck.
4) The demand points are reached once and only once by drones (other than the depot, of course).
5) The demand points are far from the depot, so it is not applicable to launch the drones from the depot directly.
Objective: Find the solution that saves energy and time with shorter truck route. The flight height of drone is about 300 meters. The payload is required no more than 5 pounds; the maximum flight radius is about 20 km. Here we do not consider the flight control and mechanical problem such as moving direction etc. We use random number from the computer. We get random 150 demand dots through random function with code. The large number of demand points are served by the drone and truck in tandem system[9, 10]. So we get the demand dot data X. X= [randn(50,2) + ones(50,2); randn(50,2) ones(50,2); randn(50,2) + [ones(50,1), ones(50,1)]]; The depot is far from most of the demand dots. In our case, the depot O location is set at [4,4].
X=[1.537667139546100.136347178011286;2.833885014595091.07735909113043;1.258846861003650.214117043615409;1.862173320368120.113500741486764;1.318765239858980.993150671896652;0.3076882963052732.53263030828475;0.5664079776943170.230334086246318;1.342624466538651.37137881276006;4.578396939725760.774415597728748;3.769437029884882.11735613881447;0.3498869401565210.0890642950522358;4.034923466331851.03255746416497;1.725404224946111.55252702111222;0.9369451268103442.10061021788087;1.714742903826102.54421189550395;0.7950339417002251.08593113317543;0.8758556517836880.491590310637609;2.489697607785470.257698162740143;2.409034489800480.0615817333199864;2.417192413429613.35045722400204;1.671497133608080.384398118533106;0.2074869226850381.74807678370399;1.717238651328840.807581489411737;2.630235289164731.88861042542072;1.488893770311790.235150763432126;2.034693009917860.402268969338759;1.726885133383240.422375925091496;0.6965590752139841.48819390985994;1.293871467096660.822624843381175;0.2127171962413620.803946512192667;1.888395631757642.41931015064255;0.1470701069691501.29158437398418;0.06887045816803171.19781105346436;0.1905013055751242.58769908997406;1.944284161994900.195534043650453;2.438380292815101.69662441584961;1.325190539456201.83508816507268;0.2450716808302970.756284859622048;2.370298540095231.21567008640374;0.7115164188536980.165843931482049;0.8977575539145090.147952778898594;0.7585529583926421.10487471601649;
1.319206739165501.72225403222500;1.312858596637433.58549125261624;0.1351200826755440.333109329298615;0.9699487038037311.18733102457894;0.8351209807909620.917505574629045;1.627707287528730.933022917850987;2.093265669039480.561033846065227;2.109273297614400.794678841455123;0.1596244702460950.479939898544542;1.888032082329011.02002785164254;0.8999071668606781.03477108602848;1.544528929990551.79816358456414;0.6964792053506460.0186852821285755;1.600326562133731.13321747950773;0.5100346788260521.71453016378716;0.2606368763955260.351385768426657;0.7118877829815551.22477105605258;1.194123535758271.58902903072080;3.138355269439941.29375359773542;1.839588747336611.84792624363793;0.3545943280046442.12012830124373;2.072155288384251.52599969211831;0.03904613025943320.655497592887346;0.8759501999968080.692464840761748;0.4366966227189392.25711835935205;2.960899999365031.86546803055480;1.197698225974151.17653411423145;2.207845485259800.208583938371366;1.908008030729362.33200442131525;0.1747811057715093.32986715580508;0.3789719779166142.44909729283874;2.058180257987360.666489166934194;1.468615581100620.608646395567099;1.272469409250190.548320581071762;0.09842461788862281.13028465314572;1.277871932787640.816310904138058;0.2984585418367171.47615301661907;3.051816299911150.137978388443078;1.353849997774432.36169447087075;1.823586525156850.544970443555666;2.577057022799201.84870937993366;0.4920253490940541.33488693896405;0.7180159363294440.447216654055450;0.9665201177555490.0390906535049560;2.333677943428112.11763868326521;0.1274922783415900.260658709120896;0.6498205893966880.339856858953022;1.299066030332981.06786555354269;0.9771102072483701.19522119789875;1.261995434966091.21760635014319;2.750212368446791.30310762135174;1.285650971595330.976954375574895;1.831366511567620.948709644151225;1.979206305167300.173937209788405;2.156401655664000.526976686733373;1.533557109315990.533085564315300;3.002635735883061.20971333838874;0.03577057736837250.374809642912374;1.183227263001441.73416911269674;0.02976754356662111.03081373001232;1.949221831131020.767652987375523;1.307061919146700.573612442591055;1.135174942099461.37280874172350;1.515246335524851.23645458375719;1.261406324055381.02369088660305;0.05851422904456633.25835397049619;0.8376623271961721.22944568045690;0.8539453656684740.662436299386894;0.4679886231911796.08195891247387×105;2.682103594663182.66416447498706;
0.1242706538399831.59003456420522;0.5161849498898791.27806416376531;0.2879954509725780.577284308779522;0.1742123314568162.67020069785047;0.8077604824607250.528365673583697;0.7259297700673982.21284719967446;2.530072514424100.933809951575389;0.7509752574862860.347644111338626;0.06421341288932680.672940032822913;2.603457298120040.0826335042367561;2.234679146890780.00607711081905138;0.7703735490368201.65090773659775;0.5061597039797190.742943842566031;0.5553721835530151.94437780640422;0.8440589642752312.32178852139256;1.276068253931540.0751740665062941;0.7388363542235220.999950150924749;1.443421912904091.05491891460941;1.391894209432450.0888727343461402;0.2506789068264080.405416302590948;0.05203907766856800.649798826125465;0.2588939060595890.250251228304996;0.4921824497218260.0702105414422843;0.6794244933997610.760236742941420;1.012469041361621.69036110311123;2.029177341404151.65155364175028;0.5429853591284180.192101870531270;2.242448406390742.61183038867781;0.06670139898474961.02446193663592;1.933728162671242.94884717689890;1.350321001356110.0204980144526539;0.9709942362912740.138283697606582;1.182452167505980.998837916516486;0.5650560141507251.07083721316048;0.9154605201822763.48628392070328;2.603946350602880.418827677324077;1.098347774640113.19243491996591;1.041373613489613.31928030664330].

4 Drone Vehicle Routing Problem Solution

The design of the algorithm herein computes the minimal time of delivery. K-means clustering is used to find cluster centroid, which is the drone's launch locations[11].
We design a drone vehicle problem. We can get the number of clusters by referring the total demand area and the flight capacity area of drone, as shown in Equation (4.1).
k=total demand areathe flight capacity area of drone.
(4.1)
In our study case, the total number of cluster k is 3. We use k-means method to solve a 3 clusters problem. The clustering code is shown in the following. The clustering can be seen in Figure 1.
Figure 1 Demand point clustering

Full size|PPT slide

% Get the 150 random dot
X=[randn(50,2) + ones(50,2); randn(50,2) ones(50,2); randn(50,2) + [ones(50,1), ones(50,1)] opts=statset('Display', 'final');
% Apply K-means function
% X the demand coordination
% Idx N1 vector, storage of the cluster label
% Ctrs KP rectangle, storage of the coordination of the K centroids
% SumD 1K vector, storage each cluster sum of all demand points to their centroids
%D NK rectangle, storage all demand points to their centroids
[Idx,Ctrs,SumD,D]=kmeans(X,3,'Replicate',3,'Options',opts);
plot(X(Idx==1,1),X(Idx==1,2),'r.','MarkerSize',14)
hold on plot(X(Idx==2,1),X(Idx==2,2),'b.','MarkerSize',14)
hold on plot(X(Idx==3,1),X(Idx==3,2),'g.','MarkerSize',14)
plot(Ctrs(:,1),Ctrs(:,2),'kx','MarkerSize',14,'LineWidth',4)
plot(Ctrs(:,1),Ctrs(:,2),'kx','MarkerSize',14,'LineWidth',4)
plot(Ctrs(:,1),Ctrs(:,2),'kx','MarkerSize',14,'LineWidth',4)
legend('Cluster 1','Cluster 2','Cluster 3','Centroids','Location','NW') Ctrs SumD
Figure 2 Centroids A, B, C location

Full size|PPT slide

The total distance from demand dots to A cluster centroid is 58.9621 km, the distance from demand dots to cluster B centroid is 115.1753 km, the distance from demand dots to cluster C centroid is 61.5390. The sum of all the dots to its centroids distances is 235.6764 km. So the flight distance of drone is double that distance, which is 471.3528 km.
The coordination of centroids and supply center is as following: A(1.4337,0.7981), B(1.3834,0.9229), C(0.8780,1.6206), O(4,4). We solve this simple TSP problem by enumerating. Distance matrix is as following: The shortest distance is 15.4252, which is route OABCO or OCBAO.
The distance of route OABCO: 15.4252 *
The distance of route OACBO: 16.4452
The distance of route OBACO: 18.4772
The distance of route OBCAO: 16.4452
The distance of route OCABO: 18.4772
The distance of route OCBAO: 15.4252 *
Figure 3 The TSP route with warehouse at O location

Full size|PPT slide

5 TSP Method Case

The notations of all the parameter are as following:
z stands for the total distance of TSP.
dij constant represents the distance between city i and city j.
xij The variable stands for whether the route from city i tocity j is taken by the solution.
x0j The truck route starts from the distribution center.
xi n+1 The truck route ends at the distribution center.
n is the total number of cities that needs to be visited. n=0 or n+1 means distribution center when it serves as the deliverystarting point and ending point separately.
The mathematical model can be seen as following.
min  z=i=1nj=1ndijxij
(5.1)
s.t.  j=1n+1x0j=1,j=1,2,,n,
(5.2)
i=0nxin+1=1,i=1,2,,n,
(5.3)
uiuj+nxijn1,2ijn,
(5.4)
i=1,ijnxij=1,j=1,2,,n,
(5.5)
j=1,jinxij=1,i=1,2,,n,
(5.6)
xij{0,1},i,j=1,2,,n,
(5.7)
ui0,i=2,3,,n.
(5.8)
The equation (5.1) is the shortest distance objective. The equation (5.2) indicates that the truck is started from the distribution center. The equation (5.3) indicates that the truck running route is ending at distribution center. The sub-route elimination equation is (5.4). The equation (5.4) means the j is visited only once. The equation (5.6) means that route start from i has only one destination. The condition (5.7) is about value constraints of the variable. The equation (5.8) is used to show the non-negative attribute of u. The TSP problem is NP-hard problem, so we use genetic algorithm to do the calculation and solve the TSP problem. The process of genetic algorithm is shown in Figure 4.
Figure 4 The process of genetic algorithm solve TSP

Full size|PPT slide

The total number of city needs to be visited is 151, thus we have n=151. The coordination of depot and demand spots have been givenas [4,4] and X. The following Algorithms 1–9 is the code ofTSP solving. The selection operation is set in Algorithm 1[12].
Algorithm 1   Selection operation
function seln=sel(p)
seln=zeros(2,1);
% choose two individual from the population, better not choose same individual of two actions
for i=1:2
r=rand; % generate a random number
prand=pr;
j=1;
while prand(j)<0
j=j+1;
end
seln(i)=j; %Select the serial number
if i==2&&j==seln(i1) %%if they are the same, select again
r=rand; %generate a random number
r=rand; prand=pr;
j=1;
while prand(j)<0
j=j+1;
end
end
end
end
The crossover operation of genetic algorithm is done in Algorithm 2.
Algorithm 2   Crossover operator
function scro=cro(s,seln,pc)
bn=size(s,2);
pcc=pro(pc); % decide whether to do crossover according to crossover rate, if pcc equal 1, then we will do crossover, if pcc equals 0, then we will not do crossover.
scro(1,:)=s(seln(1),:);
scro(2,:)=s(seln(2),:);
if pcc==1
c1=round(rand*(bn2))+1; %generate a crossover position among the range [1,bn1].
c2=round(rand*(bn2))+1;
chb1=min(c1,c2);
chb2=max(c1,c2);
middle=scro(1,chb1+1:chb2);
scro(1,chb1+1:chb2)=scro(2,chb1+1:chb2);
scro(2,chb1+1:chb2)=middle;
for i=1:chb1
while find(scro(1,chb1+1:chb2)==scro(1,i))
zhi=find(scro(1,chb1+1:chb2)==scro(1,i));
y=scro(2,chb1+zhi);
scro(1,i)=y;
end
while find(scro(2,chb1+1:chb2)==scro(2,i))
zhi=find(scro(2,chb1+1:chb2)==scro(2,i));
y=scro(1,chb1+zhi);
scro(2,i)=y;
end
end
for i=chb2+1:bn
while find(scro(1,1:chb2)==scro(1,i))
zhi=logical(scro(1,1:chb2)==scro(1,i));
y=scro(2,zhi);
scro(1,i)=y;
end
while find(scro(2,1:chb2)==scro(2,i))
zhi=logical(scro(2,1:chb2)==scro(2,i));
y=scro(1,zhi);
scro(2,i)=y;
end
end
end
end
The mutation operation is shown in algorithm 3 mutation operator.
Algorithm 3   Mutation operator
function snnew=mut(snew, pm)
bn=size(snew,2);
snnew=snew;
pmm=pro(pm); %decide whether to do mutation operator accordingto mutation rate. If pmm=1, then mutation is done. Otherwise, nothing will be done.
if pmm==1
c1=round(rand*(bn2))+1; %generate a random mutation position among the range of [1,bn1].
c2=round(rand*(bn2))+1;
chb1=min(c1,c2);
chb2=max(c1,c2);
x=snew(chb1+1:chb2);
snnew(chb1+1:chb2)=fliplr(x);
end
end
The city location coordination is set in Algorithm 4.
Algorithm 4   Pseudo-code for city location coordination
function [DLn,cityn]=tsp(n)
DLn=zeros(n,n);
if n==cityNum city151=[warehouse;all demand points];
for i=1:151
for j=1:151
DLn(i,j)=((city10(i,1)city10(j,1))2+(city10(i,2)city10(j,2))2)0.5;
end
end
city n=city151;
end
The fitness function calculation code is shown Algorithm 5, thefitness value is the shorter the distance the better.
Algorithm 5   Fitness function
function F=CalDist(dislist, s)
Distan V=0;
n=size(s,2);
for i=1:(n1)
DistanV=DistanV+dislist(s(i),s(i+1));
end
DistanV=DistanV+dislist(s(n),s(1));
F=DistanV;
end
The mutation process is an important of producing new solution. The algorithm 6 show the decision process of carrying on mutation or not.
Algorithm 6   Decide whether to do mutation action bychecking mutation rate.
function pcc=pro(pc)
test(1:100)=0;
l=round(100*pc);
test(1:l)=1;
n=round(rand*99)+1;
pcc=test(n);
end
The objective function value is calculated in Algorithm 7, which is the shortest distance.
Algorithm 7   Objective function
function [f,p]=objf(s, dislist)
inn=size(s,1); %read population size
f=zeros(inn,1);
for i=1:inn
f(i)=CalDist(dislist, s(i,:)); %calculate the function value, which is fitness value.
end
f=1000./f; %get reciprocal of distance
%calculate individual selected rate according to its fitness value.fsum=0;
for i=1:inn
fsum=fsum+f(i)15; % the higher fitness value, the higher been chosen rate
end
ps=zeros(inn,1);
for i=1:inn
ps(i)=f(i)15/fsum;
end
%calculate accumulate rate
p=zeros(inn,1);
p(1)=ps(1);
for i=2:inn
p(i)=p(i1)+ps(i);
end
p=p;
end
Algorithm 8 is the main function. The max generation is set 1500, the crossover rate is set to 0.8, the mutation rate is set to 0.08. The population size is 30.
Algorithm 8   function ga_TSP
CityNum=151;
[dislist,Clist]=tsp(CityNum);
inn=30; %original population size
gnmax=1500; %max generation
pc=0.8; %crossover rate
pm=0.08; %mutation rate
%produce original population
s=zeros(inn,CityNum);
for i=1:inn
s(i,:)=randperm(CityNum);
end
[,p]=objf(s, dislist);
gn=1;
ymean=zeros(gn,1);
ymax=zeros(gn,1);
xmax=zeros(inn,CityNum);
scnew=zeros(inn,CityNum);
smnew=zeros(inn,CityNum);
while gn<gnmax+1
for j=1:2:inn
seln=sel(p); %selection operator
scro=cro(s,seln,pc); %crossover operator
scnew(j,:)=scro(1,:);
scnew(j+1,:)=scro(2,:);
smnew(j,:)=mut(scnew(j,:),pm); %mutation operator
smnew(j+1,:)=mut(scnew(j+1,:),pm);
end
s=smnew; %generate new population
[f,p]=objf(s,dislist); %calculate the new fitness value
%record the current best and average fitness value
[fmax,nmax]=max(f);
ymean(gn)=1000/mean(f);
ymax(gn)=1000/fmax;
%record current generation best individual
x=s(nmax,:);
xmax(gn,:)=x;
drawTSP(Clist,x,ymax(gn), gn,0);
gn=gn+1;
end
[min_ymax,index]=min(ymax);
drawTSP(Clist,xmax(index,:),min_ymax,index,1);
figure(2);
plot(ymax,'r');hold on;
plot(ymean,'b');grid;
title('Searching Process');
legend('Best solution','Average solution');
fprintf('The shortest distance got by genetic algorithm: %.2fn',min_ymax);
fprintf('The shortest route generated by genetic algorithm');
disp(xmax(index,:));
end
The algorithm 9 is set to draw pictures of the TSP running result.
Algorithm 9   Draw picture
function drawTSP(Clist,BSF,bsf,p,f)
CityNum=size(Clist,1);
for i=1:CityNum1
plot([Clist(BSF(i),1),Clist(BSF(i+1),1)], [Clist(BSF(i),2), Clist(BSF(i+1),2)],'ms',
'LineWidth',2,'MarkerEdgeColor','k','MarkerFaceColor','g');
text(Clist(BSF(i),1),Clist(BSF(i),2), [' ',int2str(BSF(i))]);
text(Clist(BSF(i+1),1),Clist(BSF(i+1),2), [' ',int2str(BSF(i+1))]);
hold on;
end
plot([Clist(BSF(CityNum),1), Clist(BSF(1),1)], [Clist(BSF(CityNum),2), Clist(BSF(1),2)], 'ms', 'LineWidth', 2,'MarkerEdgeColor', 'k', 'MarkerFaceColor', 'g');
title([num2str(CityNum), 'cities TSP']);
if f==0&&CityNum =10
text(5,5, ['The No.',int2str(p), 'generation', 'The shortest distance is',num2str(bsf)]);
else
text(5,5, ['The final searching result: The shortest distance',num2str(bsf), 'got at No.',num2str(p), 'generation']);
end
if CityNum==10
if f==0
text(0,0,['At No. ',int2str(p), 'generation', 'The shortest distance is', num2str(bsf)]);
else
text(0,0,['The final searching process result: The shortest distance is', num2str(bsf), 'got at', num2str(p), 'generation']);
end
end
hold off;
pause(0.05);
end
The running environment is as following. Operating system: Windows10 Enterprise 64 bytes; CPU: Intel Core i7-5500U @ 2.40GHz dual coreprocessor; memory: 8 GB. The running result is shown as following.The shortest distance got by genetic algorithm is 189.69. Theshortest route can be seen in Figure 5. The searching process can beseen in Figure 6.
Figure 5 The 151 cities TSP solution gotby genetic algorithm

Full size|PPT slide

Figure 6 The TSP searching process

Full size|PPT slide

6 Result and Analysis

6.1 One Drone Case

The truck running distance of DTSP method saves 91.87%, the truckrunning distance is shortened from 189.69 km to 15.4252 km. Theflight distance is longer than the TSP method, because the drone isdeliverying one parcel at a time. The detail can be seen in Figure 7.
Figure 7 The running distance of TSP andDTSP method

Full size|PPT slide

According to research of Sergio Ferrandez, et al.[13], thetruck's energy is 10 mile/1.3×108 J, which is 16.09344 km/1.3×108 J, we can get 8.078×106 J/km by calculation. The drones' speed is 70km/h, the truck's speed is 35 km/h. The drone's energy consumptionis 896 Joules per second and fly at 70 km/h. The drone's flightdistance is 471.3528 km. We can get 6.7336 h for one drone to flyover, which is 2.424×104 s. Then we can get the energyconsumption of drone, which is 2.424×104×896 \rmJ/s=2.1720×107 J. The energy consumption of traditionalTSP method is 15.32×108 J. The energy consumption of thedrone TSP method is only 1.4632×108 J, which accounts thetraditional TSP method 9.55%. The DTSP method saves 90.45% ofenergy. The drone's energy consumption is tiny. The content can beseen in Figure 8.
Figure 8 The energy consumption of TSP and DTSP method

Full size|PPT slide

The delivery time of DTSP method delivering is 7.1743 h, thetraditional TSP method is 5.4197 h. The DTSP way of delivering uses132.37% more time than the traditional TSP method, which meansa 32.37% adding in time aspect. The truck delivery time isdropping from 5.4197 h to 0.4407 h. The content can be seen in Figure 9.
Figure 9 The running time of TSP and DTSP method

Full size|PPT slide

Table 1 is the data of the comparison of TSP and DTSP method indistance, Energy consumption and time in one drone case.
Table 1 The comparison of two ways of delivering in one drone case
Way of delivery TSP DTSP (Truck) DTSP (Drone) DTSP (Truck+Drone)
Distance 189.6900 km 15.4252 km 471.3528 km 486.778 km
Energy consumption 1.532×109 J 1.246×108 J 2.172×107 J 1.4632×108 J
time 5.4197 h 0.4407 h 6.7336 h 7.1743 h

6.2 Multi-Drone Case

Two drone case is used as example. The total distance and energyconsumption will stay the same. But the delivery time can beshorten a lot. The more drone the less time consumption is obvious.The advantage of drones can be more obvious when there aremultiple-drone cases. But there is an limitation of truck load. Herewe use two drones as an example. If there are two drones on thetruck. The distribution time will save 29.75%, the time will beshorten to 3.8075 hour from 5.4197 hour. The data can be seen in Figure 10.
Figure 10 The running time of TSP and DTSP method

Full size|PPT slide

Table 2 shows the data of the comparison of TSP and DTSP method in distance, energy consumption and time in two drones case.
Table 2 The comparison of two ways of delivering in two drone case
Way of delivery TSP DTSP (Truck) DTSP (Drone) DTSP (Truck+Drone)
Distance 189.6900 km 15.4252 km 471.3528 km 486.778 km
Energy consumption 1.532×109 J 1.246×108 J 2.172×107 J 1.4632×108 J
time 5.4197 h 0.4407 h 3.3668 h 3.8075 h

7 Discussion and Future Research

Recent practice of small parcel delivery by Amazon, JD, Google andDHL has shown the potential of drones for small parcel delivery.While a lot of papers focus on mechanical aspect of drone, thisarticle studies its operational problem. In particular we build amodel of drone and truck in tandem system. We bring out dronetraveling salesman problem. We compare our method with thetraditional TSP method. The result shows our new method hasadvantages in distance of truck running, energy consuming and timeusage. All the data give us a picture of the great potential indrone parcel delivery. Due to the limit number of drone usagepractice, we are in shortage of cost data. We have limits on costcalculation. In the future, the cost calculation and comparison willbe the research direction.

References

1
Gatteschi V, Lamberti F, Paravati G. New frontiers of delivery services using drones: A prototype system exploiting a quadcopter for autonomous drug shipments. Computer Software and Applications Conference (COMPSAC), 2015 IEEE 39th Annual, IEEE.
2
Hong I, Kuby M, Murray A, et al. Deviation flow refueling location model for continuous space: Commercial drone delivery system for urban area. Geocomputation, 2015, 15 (64): 389- 394.
3
Lee D T, Preparata F P. Euclidean shortest paths in the presence of rectilinear barriers. Networks, 1984, 14 (3): 393- 410.
4
Olivares V, Cordova F, Sepúlveda J M, et al. Modeling internal logistics by using drones on the stage of assembly of products. Procedia Computer Science, 2015, 55, 1240- 1249.
5
Ferrandez S M, Harbison T, Weber T, et al. Optimization of a truck-drone in tandem delivery network using K-means and genetic algorithm. Journal of Industrial Engineering and Management, 2016, 9 (2): 374- 388.
6
Ombuki B, Ross B J, Hanshar F. Multi-objective genetic algorithms for vehicle routing problem with time windows. Applied Intelligence, 2006, 24 (1): 17- 30.
7
Baldacci R, Toth P, Vigo D, et al. Exact algorithms for routing problems under vehicle capacity constraints. Annals of Operations Research, 2010, 175 (1): 213- 245.
8
Murray C C, Chu A G. The flying sidekick traveling salesman problem: Optimization of drone-assisted parcel delivery. Transportation Research Part C, 2015, 54, 86- 109.
9
Ha Q M, Deville Y, Pham Q D, et al. On the min-cost traveling salesman problem with drone. Computer Science, 2015.
10
Olivares V, Cordova F, Sepúlveda J M, et al. Modeling internal logistics by using drones on the stage of assembly of products. Procedia Computer Science, 2015, 55, 1240- 1249.
11
K-Means cluster. http://blog.sina.com.cn/s/blog62186b46010145ne.html. 2012-04-25(in Chinese).
12
Chen Z. Genetic algorithm, travel salesman problem, Matlab code. http://blog.csdn.net/robertchen1988/article/details/53003300#0-tsina-1-18211-397232819ff9a47a7b7e80a40613cfe1(in Chinese).

Funding

China Scholarship Council(201507090026)
PDF(396 KB)

261

Accesses

0

Citation

Detail

Sections
Recommended

/