on the scheduling of systems of uavs and fuel service ...xs3d.kaist.ac.kr/paperdata/on the...

13
J Intell Robot Syst (2013) 70:347–359 DOI 10.1007/s10846-012-9727-0 On the Scheduling of Systems of UAVs and Fuel Service Stations for Long-Term Mission Fulfillment Jonghoe Kim · Byung Duk Song · James R. Morrison Received: 29 June 2012 / Accepted: 12 July 2012 / Published online: 31 July 2012 © Springer Science+Business Media B.V. 2012 Abstract The duration of missions that can be accomplished by a system of unmanned aerial vehicles (UAVs) is limited by the battery or fuel capacity of its constituent UAVs. However, a system of UAVs that is supported by automated refueling stations may support long term or even indefinite duration missions. We develop a mixed integer linear program (MILP) model to formalize the problem of scheduling a system of UAVs and multiple shared bases in disparate geographic locations. There are mission trajectories that must be followed by at least one UAV. A UAV may hand off the mission to another in order to return to base for fuel. To address the computational complexity of the MILP formulation, we develop a genetic algorithm to find feasible solutions when a state-of-the-art solver such as CPLEX cannot. In practice, the approach allows for a long-term mission to receive uninterrupted UAV service by successively handing off the task to replace- This work was supported in part by KAIST HRHRP Grant N10120008. J. Kim · B. D. Song · J. R. Morrison (B ) Department of Industrial and Systems Engineering, KAIST, 373-1 Guseong-dong, Yuseong-gu, Daejeon 305-701, Republic of Korea e-mail: [email protected] URL: http://xS3D.kaist.edu ment UAVs served by geographically distributed shared bases. Keywords Unmanned aerial vehicle (UAV) · Persistence · Fuel service stations · Autonomous operation 1 Introduction Unmanned aerial vehicle (UAV) missions that require long term UAV autonomy, such as in- definite border patrol or building construction, must resolve the limitation imposed by the finite UAV energy source. While battery energy density optimization or UAV efficiency improvements are necessary, the issue of refueling is fundamen- tally one of logistics. Here we develop a schedul- ing model allowing a fleet of UAVs and fuel service stations to provide long term support of mission objectives. This is accomplished by allow- ing our UAVs to be replenished and return to the field. The scheduling models developed appear to be the first of their kind allowing UAVs to recharge at a collection of shared, geographically distributed base stations and then return to work. While our focus is on UAVs, the model works just as well for any system of finite duration mobile robots or agents that can be redeployed following resupply.

Upload: lamdung

Post on 29-May-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

J Intell Robot Syst (2013) 70:347–359DOI 10.1007/s10846-012-9727-0

On the Scheduling of Systems of UAVs and Fuel ServiceStations for Long-Term Mission Fulfillment

Jonghoe Kim · Byung Duk Song ·James R. Morrison

Received: 29 June 2012 / Accepted: 12 July 2012 / Published online: 31 July 2012© Springer Science+Business Media B.V. 2012

Abstract The duration of missions that can beaccomplished by a system of unmanned aerialvehicles (UAVs) is limited by the battery or fuelcapacity of its constituent UAVs. However, asystem of UAVs that is supported by automatedrefueling stations may support long term or evenindefinite duration missions. We develop a mixedinteger linear program (MILP) model to formalizethe problem of scheduling a system of UAVsand multiple shared bases in disparate geographiclocations. There are mission trajectories that mustbe followed by at least one UAV. A UAV mayhand off the mission to another in order to returnto base for fuel. To address the computationalcomplexity of the MILP formulation, we developa genetic algorithm to find feasible solutions whena state-of-the-art solver such as CPLEX cannot.In practice, the approach allows for a long-termmission to receive uninterrupted UAV serviceby successively handing off the task to replace-

This work was supported in part by KAIST HRHRPGrant N10120008.

J. Kim · B. D. Song · J. R. Morrison (B)Department of Industrial and Systems Engineering,KAIST, 373-1 Guseong-dong, Yuseong-gu, Daejeon305-701, Republic of Koreae-mail: [email protected]: http://xS3D.kaist.edu

ment UAVs served by geographically distributedshared bases.

Keywords Unmanned aerial vehicle (UAV) ·Persistence · Fuel service stations ·Autonomous operation

1 Introduction

Unmanned aerial vehicle (UAV) missions thatrequire long term UAV autonomy, such as in-definite border patrol or building construction,must resolve the limitation imposed by the finiteUAV energy source. While battery energy densityoptimization or UAV efficiency improvementsare necessary, the issue of refueling is fundamen-tally one of logistics. Here we develop a schedul-ing model allowing a fleet of UAVs and fuelservice stations to provide long term support ofmission objectives. This is accomplished by allow-ing our UAVs to be replenished and return to thefield. The scheduling models developed appearto be the first of their kind allowing UAVs torecharge at a collection of shared, geographicallydistributed base stations and then return to work.While our focus is on UAVs, the model works justas well for any system of finite duration mobilerobots or agents that can be redeployed followingresupply.

348 J Intell Robot Syst (2013) 70:347–359

While high-cost military UAVs such as thePredator can remain in flight for as long as24 hours, commercial UAVs, micro-UAVs andnano-UAVs are not as capable. As such, practicalapplications are limited. With greater autonomy,UAV fleets could be employed for long-term mis-sions and serve as a perimeter patrol, securityescort, fire monitor, communication relay and en-vironmental monitor.

To resolve the limitation imposed by the finiteenergy source on board each UAV, we proposea system of UAVs, shared refueling stations dis-tributed across the field and a scheduling algo-rithm to coordinate their activities. To accomplishthe mission, the UAVs can refuel at any stationand return to service. The missions are assumedto be space-time trajectories that at least oneUAV must follow without fail. Figure 1 depictsan example system with three service stations, fiveUAVs and three objectives (objects). The systemmust allocate resources to provide one UAV atall times to each objective (object). Objects 1 and2 are stationary and Object 3 follows a trajectorythroughout the time horizon. The general systemthat we will consider consists of a collection ofN UAVs (each with possibly different traveling

Object 2UAV 1

UAV 3

MovingObjectiveTrajectory

Service station 3

Service station 2

Service station 1

Object 1 Object 3

UAV 3

UAV 4

UAV 2

UAV 5

UAV with plenty of power

UAV zone of observation

UAV with power closer to safety threshold

UAV with low of power

observation

Point to be observed

Service station

Fig. 1 A system of three service stations, five UAVs andthree tasks

speed and maximum flight distance), M refuelingstations and T objectives (fixed or moving in agiven time window). Throughout, we assume thatthe service stations can provide sufficient fuel orbattery replacements to accomplish the mission.

The contributions of this work are as follows.For what is to our knowledge the first time, we:

• Develop a MILP scheduling model that allowsa UAV to return to the field following a visitto any of the shared geographically distributedbases for energy resupply. Here a collection ofUAVs must follow specific time-space trajec-tories; the presence of any one UAV at eachtime of the mission is sufficient.

• Develop a genetic algorithm to address thecomputational complexity inherent in theMILP formulation.

• Demonstrate that the MILP formulation canbe employed to direct the actions of a systemof UAVs and service stations on missions thatuse multiple stations.

The first is accomplished by discretizing the time-space trajectory (path) of the objectives, or jobs,into smaller pieces, or split-jobs. The ideas andmodels proposed might be considered to fallwithin the area of mobile robot logistics.

The rest of the paper is organized as follows. InSection 2, we review related scheduling research.Section 3 develops our mixed integer linear pro-gram (MILP). Numerical examples of our MILPare presented in Section 4. Concluding remarksand future directions are provided in Section 5.

2 Literature Review

In recent years, various UAV capabilities havebeen developed. Target classification and track-ing (c.f., [1–3]), decision support tools for humanoperators (c.f., [4, 5]), systems for landing control(c.f., [6, 7]) and battery replacement systems (c.f.,[8, 9]) have been studied.

In [10], a functioning prototype battery replace-ment system was employed with UAV flight tests.There, they also developed software to guide theUAVs to use the station. (It is not however ageneric scheduling algorithm.) The design of aservice station to provide an indefinite supply of

J Intell Robot Syst (2013) 70:347–359 349

batteries was considered in [9]. This is particu-larly relevant to our study at it will enable anautomated service platform to indefinitely supplyfreshly charged batteries for weary UAVs. TheUAV and service station system may then aspireto prosecute missions of indefinite duration.

Much research has focused on UAV schedul-ing. Some has developed scheduling methods forUAVs without including a travel time or distancerestriction. A mathematical scheduling model toallocate and aggregate the available UAVs wasdeveloped in [11]. A nonlinear integer programwas proposed and validated in a small scale prob-lem. The authors in [12] posed the problem of as-signing multiple UAVs to simultaneously performcooperative tasks on consecutive targets. Theyconsidered a team of UAVs acting as a sensor andcommunication network to cooperatively trackand attack moving ground targets. A mathemati-cal program formalized the problem and a geneticalgorithm was developed to obtain good solutions.

The scheduling of capacitated UAVs with lim-ited flight duration has also been studied. Capaci-tated UAVs should finish their tasks before theirfuel (battery) runs out. UAV scheduling based onthe vehicle routing problem with time windowswas proposed in [13]. There, each UAV had a dif-ferent maximum travel time and returned to thedepot after their tasks. Tasks are defined by theirlocation, required service time and time window(earliest and latest time to begin service). A MILPwas suggested to find an optimal schedule. Shimaet al. [14] developed an optimization algorithmfor assigning multiple UAVs to task tours. Thescenario of interest was one where multiple micro-aerial vehicles are launched from a small UAV inorder to investigate selected targets in an urbansetting. The time to finish serving all the targetswas minimized via objective function and a so-lution was obtained by a search algorithm basedon the branch and bound concept. A schedulingmodel with n tasks and m UAVs, each with acapacity limit q, was developed by Kim et al. [15].They considered two situations: no UAV returnand UAV return. A model for balancing work-loads across the UAVs was suggested. Alidaeeet al. [16] improved on the model in [15] to reducethe number of variables and constraints. The au-thors in [17] developed a scheduling method for

a system of UAVs and multiple home bases (withdisparate locations) where each UAV must returnto its base at the end of its flight. There is norefueling.

Research on capacitated UAV scheduling isnecessary because UAVs have a fundamental du-ration of service limitation due to their depen-dence upon batteries or a liquid fuel. The issueof scheduling for persistent operation has beenaddressed in [18–20]. There, the concept of using aservice station (possibly with multiple connectionpoints) at a single location for persistent UAVoperations was studied. Functioning prototypeswere tested and employed.

In this paper, we propose a UAV schedulingmodel allowing UAVs to recharge and return toservice at multiple shared service stations distrib-uted throughout the field. To our knowledge, thisis the first such effort at persistence that allowsdistributed shared service stations. Due to theinclusion of the refuel/recharge process, it may beconsidered as a study on mobile robot logistics.

3 MILP for UAV Scheduling

We next develop our MILP model.

3.1 System to Provide Indefinite Duration Service

Due to their dependence on a fuel source, a singleUAV can only prosecute a mission of limitedduration. However, a fleet of UAVs with servicestations can be exploited to provide a mission ofindefinite duration.

The idea is to allow a weary UAV to handoffits mission to a refreshed UAV. The weary UAVwill return to the service station for refueling (orbattery recharge or replacement) and then returnto the field. It will then accept a mission from aweary UAV via handoff and replace that UAVin providing the desired service. This process mayrepeat indefinitely. The coordination of the activ-ities of such a system would allow for the missionsto be pursued without interruption. Such a coordi-nated process is enabled by the presence of servicestations that can supply batteries at a desired rateindefinitely.

350 J Intell Robot Syst (2013) 70:347–359

3.2 Mathematical Program to Schedulethe System

We next formulate a mixed integer linear program(MILP) that schedules a fleet of UAVs with fuellimitations to serve time constrained jobs and min-imize total travel distance. Throughout, we do notconsider any UAV flight dynamics other than amaximum speed constraint.

To schedule a UAV tracking a moving targetor patrolling an area, we break the space-timemission trajectories into pieces that we refer to assplit jobs. This is required because one UAV maynot be able to cover the entire task due to a fuelor battery constraint. We assume that the movingtarget’s path and location at specific times areknown. Therefore, we can divide the trajectory ofthe moving target into several split jobs that maybe served by different UAVs. Each split job hasa strict start time and end time. Split jobs for amoving target or path are depicted in Fig. 2.

The number of split jobs and their start andend times are considered as fixed constants in theMILP formulation. They are not decision vari-ables and must be determined in advance. Thisapproach serves to discretize each mission. Usingmore split jobs may enable an improved objectivefunction value but will increase computationalcomplexity.

We use i, j to index jobs and s to index rechargestations. Let k be the index for the UAVs. Weassume that a UAV starts its travel from arecharge station and processes several split jobs.After finishing its split jobs, it should return to arecharge station. This “station to jobs to station”travel defines one UAV flight. UAVs can have

Fig. 2 Split jobs for a moving target

multiple flights during the time horizon and r isintroduced to index a UAV’s rth flight.

Let d = NJ + 1 be the index that represents adummy split job. A dummy split job is requiredfor a UAV that does not process any split jobs.Let NJ, NUAV, NSTA and NR be the number ofsplit jobs, the number of UAVs in the system,the number of recharge stations and the maximumnumber of flights per UAV during the time hori-zon, respectively. A recharge station can rechargemultiple UAVs simultaneously. Let M be a largepositive number.

Each split job has two (x,y) coordinate pointsfor the start location and finish location. A UAVstarts the split job at the start point and completesit at the finish point. The travel distance fromsplit job i’s finish point or station i to split jobj’s start point or station j (Dij) is calculated usingthe Euclidean distance. That is, Dij = ((xi−xj)

2 +(yi−yj)

2)1/2, where (xi, yi) are the coordinates ofsplit job i’s finish point or station i and (xj, yj)

are the coordinates of split job j’s start point orstation j. Note that Dij is not equal to Dji (the startand end points change). Let Pi denote the processtime of split job i or recharging time at station i.We assume that the recharge time for a UAV isconstant.

Since we assume that the target movement orpatrol path and times are known, split job i hasstrict start and end times. Each split job i shouldstart at time Ei (and thus end at time Ei + Pi).Note that since the start/end times and start/endlocations for all split jobs are known, these arenot our decision variables. The decision variableswill simply tell us which UAV is assigned toeach split job and provide certain key event timeinstants.

UAV k can fly for at most qk units of time inone flight. We assume that initially all UAV bat-teries or fuel tanks are empty (this is convenientfor our model and is immediately rectified in thefirst moments of the schedule). A UAV does notuse its fuel when it waits for a split job at the splitjob start point (perhaps it rests on the ground).

Define Sok and TSk to be the initial locationof UAV k’s recharge station and travel speed ofUAV k, respectively. The input parameters NJ,NUAV, NSTA, NR, Dij, Pi, Ei, qk, Sok and TSk

J Intell Robot Syst (2013) 70:347–359 351

are known constants. The notation for set indicesfollows:

• UAV flight index: r in R = {1, . . . , NR};• UAV index: k in K = {1, . . . , NUAV};• Split job index: i, j in �J = {1, . . . , NJ};• Set of split jobs and dummy jobs: �JD = {1, . . . ,

NJ + 1};• Set of UAV flight start recharge stations:

�SS = {NJ + 2, NJ + 4, . . . , NJ + 2 · NSTA};• Set of UAV flight end recharge stations:

�SE = {NJ +3, NJ +5, . . . , NJ +2 · NSTA + 1};• Set of all job and recharge stations: �A = (�JD

U �SS U �SE) = {1,. . . , NJ + 2 · NSTA + 1}.

The decision variables for our mathematical pro-gram are given as follows:

• Xijkr = 1 if UAV k processes split job j orrecharges at station j after processing split jobi or recharging at station i during its rth flight;0, otherwise.

• Cikr is job i’s start time by UAV k or UAVk’s recharge start time at station i during its rth

flight; otherwise its value is 0.• Yikr = 1 if UAV k processes split job i during

its rth flight; 0, otherwise.

If we use one index for each recharge station, Cikr

cannot be determined in the case that UAV kstarts its flight at station i and finishes its flight atthe same station during the rth flight. Therefore,we assign two indices to each recharge station.Station s is allocated indices NJ + 2s and NJ +2s + 1. The first index for recharge station s in �SS

is used when a UAV departs from station s. Thesecond index for recharge station s in �SE is usedwhen UAV arrives to station s.

We assume that the UAV travel speed does notaffect its fuel consumption. Fuel consumption isproportional to travel time. (It is easy to adjustthe formulation so that fuel consumption is pro-portional to travel distance instead. This may be amore natural way to treat fuel consumption.)

Our mixed integer linear program (MILP) forthe UAV scheduling problem is as follows:

Minimize∑

k∈K

r∈R

i∈�A

j∈�A

Dij · Xijkr, (1)

subject to(initial recharge station constraint)

j∈�JD

Xsok, jk1 = 1 (k ∈ K) , (2)

(recharge station constraints)∑

s∈�SS

j∈�JD

Xsjkr = 1 (k ∈ K, r ∈ R), (3)

s∈�SE

i∈�JD

Xiskr = 1 (k ∈ K, r ∈ R), (4)

i∈�JD

Xiskr =∑

i∈�JD

Xs−1,ikr+1

(k ∈ K, r = 1...NR − 1, s ∈ �SE) ,

(5)

Cskr = Cs−1,kr+1 (k ∈ K, r = 1...NR − 1, s ∈ �SE) ,

(6)

(split job assignment constraints)∑

k∈K

r∈R

i∈�A

Xijkr = 1 ( j ∈ �J), (7)

j∈�A

Xijkr −∑

j∈�A

X jikr = 0 (i ∈ �JD, k ∈ K, r ∈ R) ,

(8)

i∈�JD

Xiskr = 0 (k ∈ K, r ∈ R, s ∈ �SS) , (9)

(start time constraints)

Cikr + Pi + Dij/TSk − C jkr ≤ M(1 − Xijkr

)

(i ∈ �JD ∪ �SS, j ∈ �JD ∪ �SE, k ∈ K, r ∈ R) ,

(10)

j∈�JD∪�SE

Xijkr = Yikr (i ∈ �J, k ∈ K, r ∈ R), (11)

M · Yikr ≥ Cikr (i ∈ �J, k ∈ K, r ∈ R) , (12)

k∈K

r∈R

Cikr = Ei (i ∈ �J) , (13)

352 J Intell Robot Syst (2013) 70:347–359

(fuel and battery constraint)

i∈�A

j∈�A

Dij/TSk · Xijkr +∑

i∈�JD

j∈�A

Pi · Xijkr ≤ qk

(k ∈ K, r ∈ R) ,

(14)

(dummy job constraints)

Xsdkr = Xd,s+1,kr (k ∈ K, r ∈ R, s ∈ �SS) , (15)

Xdikr + Xidkr = 0 (k ∈ K, r ∈ R, i ∈ �J) , (16)

(variable nonnegativity and integrality constraints)

Cikr ≥ 0 (k ∈ K, r ∈ R, i ∈ �A) , (17)

Xijkr ∈ {0, 1} (k ∈ K, r ∈ R, i ∈ �A, j ∈ �A) ,

(18)

Yikr ∈ {0, 1} (k ∈ K, r ∈ R, i ∈ �A) . (19)

The objective function 1 is to minimize the totaltravel distance of the UAV fleet. Initial rechargestation constraint 2 ensures that every UAVshould start its first flight from its initial rechargestation. Recharge station constraint 3 guaranteesthat UAV k can have only one starting rechargestation per flight. Constraint 4 indicates that UAVk can have only one ending recharge station perflight. Constraint 5 requires that if UAV k finishesits rth flight at station s, its r + 1th flight starts atstation s. Constraint 6 states that the finish timeof a UAV’s rth flight is equal to the start time ofUAV’s r + 1th flight. Job assignment constraint 7forces every job in �J to be processed by a UAV.Constraint 8 ensures a UAV does not finish itsflight at a job. Constraint 9 ensures that a UAVcannot finish its flight at the starting station. (Thisis not a restriction, just a notational issue relatedto each station having two indices.) Start timeconstraint 10 gives the relationship between thesplit job start time or recharge start time andthat of its successor for the same UAV duringits rth flight. Constraints 11, 12 and 13 imply that

every split job in �J starts its process at the pre-determined start time of the split job. Fuel andbattery constraint 14 states that the total flighttime, including travel time and process time forsplit jobs, is less than UAV k’s fuel or batterycapacity. Dummy job constraint 15 ensures thata UAV cannot go to the start recharge station in�SS after processing a dummy split job. Constraint16 prevents a dummy split job from having a suc-cessor and predecessor split job in �J. Constraints17, 18 and 19 define the ranges of the decisionvariables. The mathematical model proposed forUAV scheduling requires NR > 1 due to con-straints 5 and 6. Since, NR is just the maximumnumber of flights allowed for each UAV; thisis not in any way a restriction on the modelingcapability.

4 Genetic Algorithm

To address the computational complexity inher-ent in the MILP formulation, we develop a geneticalgorithm. Its performance is compared with thestate-of-the-art MILP solver CPLEX. A geneticalgorithm is a popular meta-heuristic that can beused for scheduling problems. Examples of its usein various scheduling problems can be found in[21–23].

The overall procedure is as follows:

• STEP 1: Set i = 1 (current generation index),c∗ = (0,0,. . . ,0) (best chromosome obtained)and FF(c∗) = ∞ (best fitness value obtained).

• STEP 2: Generate the ith generation of chro-mosomes – we call this collection of chromo-somes population P(i) (Section 4.1).

• STEP 3: For each chromosome c and eachUAV, create a list of the split jobs assigned tothat UAV (Section 4.2).

• STEP 4: For each chromosome c, determinea schedule for each UAV that includes tripsto the service stations and calculate the fitnessFF(c) of that chromosome (Section 4.3). Letc′ = argminc∈P(i) {FF(c)}. If FF(c′) < FF(c∗),update c∗← c′ and FF(c∗) ← FF(c′).

• STEP 5: If i < NG (our maximum numberof generations), set i←i + 1 and create the

J Intell Robot Syst (2013) 70:347–359 353

next generation (Section 4.4). Go to STEP 3.Otherwise continue to STEP 6.

• STEP 6: Finish the GA process.

4.1 Initial Chromosome

Each chromosome is a 1 × NJ vector of integers.(NJ is the number of split jobs.) In the initial popu-lation, each element of such a vector is generatedas a random number between 1 and NUAV. Thekth element of the vector indicates which UAVwill serve split job k (see Fig. 3). There are NC

chromosomes in the population.

4.2 Rearrangement of Each Chromosome

Each chromosome c is next converted into NUAV

vectors, one for each UAV. The vector elementsare the index of the split jobs served by that UAV.The split jobs are ordered by their start times.(Smallest index first if they have the same starttime.) Let S(c,k) denote the resulting vector forchromosome c and UAV k; use S(c,k)i as its ith

element (its value is a split job index).

4.3 UAV Schedules and Fitness Function

The vector S(c,k) does not contain visits to the ser-vice stations. A complete schedule must includesuch information. We insert a visit to a servicestation between the split jobs for a UAV as fol-lows. Assume that UAV k is performing split jobS(c,k)i.

• STEP 1: Determine the service station s’which minimizes the travel distance if theUAV goes next to split job S(c,k)i+1, then to astation and then to split job S(c,k)i+2. Thus, s’ =argmin s ∈ �SE {DS(c,k)i,S(c,k)i+1/TSk + PS(c,k)i+1

+ DS(c,k)i+1,s/TSk + Ds,S(c,k)i+2/TSk}. Pick thestation with lowest index in the event of ties.

• STEP 2: If DS(c,k)i,S(c,k)i+1/TSk + PS(c,k)i+1 +DS(c,k)i+1,s’/TSk is less than or equal to theremaining battery life, immediately conduct

split job S(c,k)i+1 after the current split jobS(c,k)i. Otherwise, go to step 3.

• STEP 3: After the current split job S(c,k)i,travel next to station s” with index s” =argmin s ∈ �SE {DS(c,k)i,s + Ds,S(c,k)i+1}. Pickthe station with the lowest index in the eventof ties.

With a complete schedule obtained as above, wenext calculate the fitness of each chromosomebased on the schedule generated for it. The fitnesswill assess the objective function value and feasi-bility of that chromosome’s schedule. We employ

F F (c) =∑

k∈K

r∈R

i∈�A

j∈�A

Dij · Xijkr + P·∑

i∈�J

Ri

where P is a constant,

Ri =⎧⎨

⎩1 if

k∈K

r∈R

Cikr > Ei

0 otherwise

and the values for the variables are determinedbased on the schedule generated from the chro-mosome c.

Chromosomes with larger value for their fitnesswill be more likely to die out in future generations.As such, infeasible solutions we be pared away.Note that we do not include a term in the fitnessfor failure to obey the battery capacity constraint.That is attended to by our service station assign-ment heuristic of this subsection.

4.4 Selection, Crossover and Mutation

A new generation (iteration) of the population isproduced by creating NC new chromosomes. Eachof the new chromosomes is constructed as follows.

First two parent chromosomes are selected viathe popular roulette wheel selection mechanism asfollows.

• STEP 1: Let C be the set of chromosomes inthe ith generation (C=P(i)). Let FF(cm) be thefitness value of mth chromosome, m ∈ {1, . . . ,NC}.

Fig. 3 Initialchromosome structurewith K = 4

354 J Intell Robot Syst (2013) 70:347–359

Fig. 4 Example of twopoint crossovermechanism

• STEP 2: Calculate

S (cm) = [maxm∈{1,...,NC} {FF (cm)} − FF (cm)

]2

• STEP 3: Select chromosome c as Parent 1 withprobability S (c) /

∑NCm=1 S (cm).

• STEP 4: Repeat STEP 3 once more to obtainParent 2.

Next the parents undergo the crossover schemewith probability pX (crossover probability). Oth-erwise, the mth chromosome in the new popula-tion is identical to the mth in the old.

The crossover scheme first generates two ran-dom integers between 1 and NJ; call them R1 andR2, with R1 ≤ R2. The child chromosome takesits first R1 elements from the first parent. TheR1 + 1 to R2 elements come from parent 2. Thefinal elements come from parent 1 again. Figure 4provides an example of the two point crossovermechanism. If R1 = R2, the child chromosome iscompletely from Parent 1.

The resulting child chromosome is then subjectto mutation. Each element of the chromosomevector is replaced with probability pM by a numberuniformly distributed between 1, . . . , NUAV.

Each of the NC chromosomes in the new popu-lation is created in this manner.

5 Numerical Experiment

In this section, we present three numerical exam-ples to illustrate the application of the MILP inSection 3 and GA in Section 4. The three models

were tested on a personal computer with Intel(R)Core(TM)2 Quad CPU Q8400, 2.66 GHz and4.00 GB RAM. We used ILOG CPLEX 11.0 andOPL Development Studio 5.5 to solve the MILPmodel directly. Examples 1, 2 and 3 demonstratea hand off, persistent operation and the need forthe GA, respectively.

5.1 Example 1: Tracking a MovingGround Target

UAVs can be used to track a moving target. Thelayout of Example 1 is provided in Fig. 5. Thereare three recharge stations located at coordinates(250 m, 550 m), (650 m, 550 m), (750 m, 150 m),and each station has two empty UAVs initially.The moving target will start its travel at time 6 minat coordinate (50 m, 250 m) and finish its travel attime 20 min at coordinate (950 m, 750 m). Target’smoving speed is 100 m/min and constant. Thetarget should be observed at all times during itstravel by UAVs.

UAVs 1, 2, 3, 4, 5 and 6 are initially located atstations 1, 1, 2, 2, 3 and 3, respectively. UAVs 1, 2,3 and 4 have 100 m/min travel speed at maximum.UAV 5 and 6 can fly up to 150 m/min. We allocate14 split jobs for the moving target tracking; theirstart point coordinate, finish point coordinate andduration are given in Table 1. For example, SplitJob 1 starts at time 6 min at location (50 m, 250 m)and ends at location (150 m, 250 m) after 1 min.We set the maximum number of UAV flights totwo for all UAVs. We set the maximum traveltime for UAVs 1, 2, 3 and 4 to 8 min and UAVs5 and 6 to 13 min. We solve the resulting MILP

J Intell Robot Syst (2013) 70:347–359 355

Fig. 5 Example layout for tracking a moving ground target

using CPLEX. In the optimal solution, UAV 1starts its first flight from station 1 to serve split job1 and then returns to station 1. UAVs 2, 3 and 4do not process any split job. UAV 5 starts its firstflight from station 3 to serve split jobs 2, 3, 4, 5, 6and 7. After that, it returns to station 3 and staysat station 3. UAV 6 flies from station 3 to split job8 to process split jobs 8–14 and returns to station 2after its flight. It stays at station 2. All split jobs areserved in a UAV’s first flight. The minimized totaltravel distance is 1846 m. The result is summarizedin Table 2.

We conduct sensitivity analysis by adjusting qk.The tuple Q is (q1,q2,q3,q4,q5,q6) and the unit ofqk is minutes. We increase or decrease qk for allUAVs by the same amount. It is observed that as

Table 1 Split jobs for Example 1

Split Start point Finish point Process Split jobjob time start time

1 50,250 150,250 1 min 6 min2 150,250 250,250 1 min 7 min3 250,250 350,250 1 min 8 min4 350,250 450,250 1 min 9 min5 450,250 550,250 1 min 10 min6 550,250 650,250 1 min 11 min7 650,250 750,250 1 min 12 min8 750,250 850,250 1 min 13 min9 850,250 950,250 1 min 14 min10 950,250 950,350 1 min 15 min11 950,350 950,450 1 min 16 min12 950,450 950,550 1 min 17 min13 950,550 950,650 1 min 18 min14 950,650 950,750 1 min 19 min

Table 2 Optimal route of UAVS during first flight

UAV Split job served Start End qk

station station (min)

1 1 1 1 82 None N/A N/A 83 None N/A N/A 84 None N/A N/A 85 2,3,4,5,6,7 3 3 136 8,9,10,11,12,13,14 3 2 13Obj. value = 1846 m

qk increases, the number of UAVs used, objectivefunction value and computational time decrease.The detailed results of our sensitivity study areshown in Table 3.

5.2 Example 2: UAV Border Patrol

One can construct an automatic area patrol sys-tem using camera equipped UAVs, automatic

Table 3 Sensitivity analysis about maximum travel time ofUAV

Q Used Obj. value ComputationalUAVs (m) time (sec)

(7,7,7,7,12,12) Infeasible(8,8,8,8,13,13) 1,5,6 1846 171(9,9,9,9,14,14) 1,2,6 1522 42(10,10,10,10,15,15) 1,2,6 1522 26(11,11,11,11,16,16) 1,6 1170 8(12,12,12,12,17,17) 1,6 922 4(13,13,13,13,18,18) 1,6 922 4

356 J Intell Robot Syst (2013) 70:347–359

Fig. 6 Layoutconfiguration of autopatrol system

recharge stations and the mathematical modeldeveloped in this study. The configuration ofExample 2 is depicted in Fig. 6.

There are two recharge stations located at co-ordinates (300 m, 600 m) and (600 m, 300 m).Each station has one UAV (they initially requirea recharge due to our formulation, but this hap-pens immediately at the beginning of any feasibleschedule). There are four fixed patrol paths theUAVs must follow. Each start point and end pointof the patrol paths are depicted in Fig. 6. Patrolpaths 1, 2, 3 and 4 should be started at times 6,18, 6 and 18 min, respectively. UAVs 1 and 2 areinitially located at stations 1 and 2, respectively.We set the maximum number of flights for eachUAV to two. The maximum travel speed of UAVs1 and 2 is 150 m/min. We create 8 split jobs todescribe the patrols (effectively discretizing thepatrol paths); their details are shown in Table 4.We set the maximum flight duration qk of bothUAVs to 15 min.

CPLEX is sufficient to obtain a solution. Inthe optimal solution, UAV 1’s first flight starts atstation 1, processes split jobs 1, 2, 3 and 4, thenenters station 2. UAV 2 starts its first flight from

Table 4 Information of split job of Example 2

Split Start point Finish point Process Split jobjob time start time

1 300,900 0,900 2 min 62 0,900 0,600 2 min 83 0,300 0,0 2 min 184 0,0 300,0 2 min 205 600,0 900,0 2 min 66 900,0 900,300 2 min 87 900,600 900,900 2 min 188 900,900 600,900 2 min 20

station 2, processes split jobs 5, 6, 7 and 8 andenters station 1. All split jobs are served duringthe UAVs’ first flights. The total travel distance is2048 m. The result is summarized in Table 5.

Table 5 Optimal route of UAVS during first flights

UAV Split job Start End qk

served station station (min)

1 1,2,3,4 1 2 152 5,6,7,8 2 1 15Obj. value = 2048 m

J Intell Robot Syst (2013) 70:347–359 357

Table 6 Optimal route of UAVs during first and secondflight

UAV Serving Start End qk

job station station (min)

First flight1 1,2 1 1 142 5,6 2 2 14

Second flight1 3,4 1 2 142 7,8 2 1 14

Obj. value = 2896 m

If we change the qk of the UAVs to 14 min,the UAVs cannot serve all jobs during their firstflights due to limited fuel capacity. The optimalschedule of UAVs during their first and secondflights is summarized in Table 6. UAV 1 serves job1 and 2 during its first flight and returns to station1 for recharging. After recharging, it serves jobs 5and 6. Finally, it heads for recharge to station 2.Similarly, UAV 2 serves jobs 5, 6 during its firstflight and serves jobs 7, 8 during the second flight.If the patrol schedule were of longer duration, thisprocess would repeat.

5.3 Example 3: GA for UAV Border Patrol

Typically, as the problem size increases, the state-of-the-art MILP solver CPLEX cannot find a so-lution. However, the GA may be able to obtainfeasible solutions. Consider Fig. 7. There are fourservice stations located at coordinates (300 m,700 m), (700 m, 700 m), (300 m, 300 m) and (700 m,300 m). Each station starts with two UAVs. Themaximum travel speed of the UAVs is 200 m/min.There are two fixed patrol paths the UAVs mustfollow. Patrol paths 1 and 2 start at time 10 min atcoordinates (0 m, 1000 m) and (1000 m, 0 m), re-spectively. The patrol path proceeds in the coun-terclockwise direction. UAVs 1, 2, 3, 4, 5, 6, 7 and8 are initially located at stations 1, 1, 2, 2, 3, 3,4 and 4, respectively. Four cases are tested withvarious total patrol distances of 2000 m, 4000 m,6000 m and 8000 m on each patrol path. We create10, 20, 30 and 40 split jobs, each with a 2 minprocess time for the 2000 m, 4000 m, 6000 m and8000 m patrol paths, respectively. To study theperformance of the GA, we conduct the algorithm10 times and report the average objective function

Fig. 7 Layout ofExample 3

358 J Intell Robot Syst (2013) 70:347–359

Table 7 Result ofCPLEX and GA

qk # of split CPLEX GA

job CPU time Obj. CPU time Obj. Standard(sec) value (sec) value deviation

30 20 16 1696 4.142 2088.4 292.720 20 N/A N/A 2.090 3279.1 328.120 40 N/A N/A 4.067 5169.1 418.420 60 N/A N/A 6.440 13936 1211.820 80 N/A N/A 9.295 23112.1 1733.2

value as a result. We use NC = 200 (chromosomes)and NG = 500 (generations). Table 7 provides theresults and compares the computational time andobjective function value. The GA obtains feasiblesolutions for the cases in which CPLEX cannotsolve the MILP in reasonable computational time.

6 Concluding Remarks

UAV missions are limited by the battery life (orfuel life) of their robots. However, by incorporat-ing into the system a collection of service stationsthat can replace the batteries (or fuel), the missionmay be conducted much longer. The UAV canrefuel at the station and return to service. Thiswould enable a UAV service that is not limitedby the battery life of a single UAV. Further,service station concepts have been proposed inthe literature that would (subject to a through-put limitation) allow for batteries to be suppliedindefinitely. With such a service station, the mo-bile robot missions might be conducted withoutinterruption for an indef inite duration of time.Incorporating such mobile robot logistics issuesinto the mobile robot system has the potential toincrease the capabilities, autonomy and practicalapplicability of such systems.

With an eye toward supporting the delivery ofsuch increased autonomy, we developed mixedinteger linear programming (MILP) schedulingmodels. The models allow the mobile robots tovisit any of a number of shared bases distributedthroughout the field, refuel and then return toservice. They allow the mobile robots to followa specific trajectory through space at requiredtimes. This is accomplished by breaking the pathinto so-called split jobs that each mobile robotmay service. To our knowledge, the features of

persistence and multiple shared service stations(distributed throughout the field) have not previ-ously been incorporated into scheduling models inthe literature.

The MILP scheduling model developed is im-plemented on three examples. The optimizationproblems are solved with CPLEX if possible. Agenetic algorithm is developed for the cases whereCPLEX is insufficient. A brief sensitivity studyon the maximum duration that a UAV can bein flight is conducted. The examples demonstratethat as the UAV battery life decreases relative tothe mission duration, it is optimal to travel to theservice station, recharge and return to service.

Future work could include the development ofreal time methods for UAV control or methodsfor indefinite duration missions, such as perpetualborder patrol.

References

1. Lipton, A.J., Fujiyoshi, H., Patil, R.S.: Moving targetclassification and tracking from real-time video. In:Proc. IEEE Workshop on Applications of ComputerVision, Princeton, pp. 8–14 (1998)

2. Saunders, J., Beard, R.: Tracking a target in wind usinga micro air vehicle with a fixed angle camera. In: Proc.of the American Control Conference, Seattle, WA,pp. 3863–3868, June (2008)

3. Dobrokhodov, V.N., Kaminer, I.I., Jones, K.D.,Ghabcheloo, R.: Vision-based tracking and motion es-timation for moving targets using small UAVs. In:Proc. of the AIAA Guidance, Navigation, and ControlConference and Exhibit, Keystone, Paper no. AIAA-2006-6606 (2006)

4. Ortiz, A.E., Langbort, C.: On multi-UAV schedulingfor human operator target identification. In: Proc. ofthe American Control Conference, San Francisco, CA,pp. 1837–1842, June (2011)

5. Cummings, M.L., Brzezinski, A.S.: Global vs. local decisionsupport for multiple independent UAV schedule man-agement. Int. J. Appl. Decis. Sci. 3(3), 188–205 (2010)

J Intell Robot Syst (2013) 70:347–359 359

6. Riseborough, P.: Automatic take-off and landing con-trol for small UAVs. In: Proc. Control Conference, 5thAsian, Melbourne, Victoria, Australia, vol. 2, pp. 754–762, July (2004)

7. Xu, G., Zhang, Y., Ji, S., Cheng, Y., Tian, Y.: Researchon computer vision-based for UAV autonomous land-ing on a ship. Pattern Recogn. Lett. 30(6), 600–605(2009)

8. Kemper Filho, P., Suzuki, K.A.O., Morrison, J.R.:UAV consumable replenishment: Design concepts forautomated service stations. J. Intell. Robot. Syst. Spe-cial Issue on Unmanned Aerial Vehicles, A SpecialVolume on Selected Papers from UAV’10 61(1), 369–397 (2011)

9. Suzuki, K.A.O., Kemper Filho, P., Morrison, J.R.: Au-tomatic battery replacement system for UAVs: Analy-sis and design. J. Intell. Robot. Syst. Special Issueon Unmanned Aerial Vehicles, a Special Volumeon Selected Papers from ICUAS’11 65(1), 563–586(2012)

10. Swieringa, K.A., Hanson, C.B., Richardson, J.R.,White, J.D., Hasan, Z., Qian, E., Girard, A.: Au-tonomous battery swapping systems for small-scale he-licopters. In: Proc. of the 2010 IEEE InternationalConference on Robotics and Automation (ICRA),pp. 3335–3340 (2010)

11. Zeng, J., Yang, X., Yang, L., Shen, G.: Modeling forUAV resource scheduling under mission synchroniza-tion. J. Syst. Eng. Electron. 21(5), 821–826 (2010)

12. Shima, T., Schumacher, C.: Assignment of cooper-ating UAVs to simultaneous tasks using genetic al-gorithm. In: Proc. AIAA Guidance, Navigation, andControl Conference and Exhibit, San Francisco, Paperno. AIAA-2005-5829 (2005)

13. Weinstein, A.L., Schumacher, C.: UAV schedulingvia the vehicle routing problem withtime windows.

In: Proc. AIAA Infotech@Aerospace 2007 Conferenceand Exhibit, Rohnert Park, California, Paper no.AIAA-2007-2839 (2007)

14. Shima, T., Rasmussen, S., Gross, D.: Assigning microUAVs to task tours in an urban terrain. IEEE Trans.Control Syst. Technol. 15(4), 601–612 (2007)

15. Kim, Y.S., Gu, D.W., Postlethwaite, I.: Real-time opti-mal mission scheduling and flight path selection. IEEETrans. Automat. Contr. 52(6), 1119–1123 (2007)

16. Alidaee, B., Wang, H., Landram, F.: A note on inte-ger programming formulations of the real-time optimalscheduling and flight selection of UAVS. IEEE Trans.Control Syst. Technol. 17(4), 839–843 (2009)

17. Kim, Y.S., Gu, D.W., Postlethwaite, I.: Real-time opti-mal mission scheduling and flight path selection. IEEETrans. Automat. Contr. 52(6), 1119–1123 (2007)

18. Bethke, B.: Persistent vision-based search and trackusing multiple UAVs. Master Thesis, MassachusettsInstitute of Technology (2005)

19. Valenti, M.: Approximate dynamic programming withapplications in multi-agent systems. PhD Thesis,Massachusetts Institute of Technology (2007)

20. Nigam, N., Bieniawski, S., Kroo, I., Vian, J.: Controlof multiple UAVs for persistent surveillance: algorithmand flight test results. IEEE Trans. Control Syst. Tech-nol. 20(5), 1236–1251 (2012)

21. Cai, X., Li, K.N.: A genetic algorithm for schedulingstaff of mixed skills under multi-criteria. Eur. J. Oper.Res. 125(2), 359–369 (2000)

22. Pezzella, F., Morganti, G., Ciaschetti, G.: A geneticalgorithm for the flexible job shop scheduling problem.Comput. Oper. Res. 35(10), 3202–3212 (2008)

23. Goncalves, J.F., Mendes, J.J.M., Resende, M.G.C.: Agenetic algorithm for the resource constrained multi-project scheduling problem. Eur. J. Oper. Res. 189(3),1171–1190 (2008)