Skip to content
BY-NC-ND 3.0 license Open Access Published by De Gruyter December 21, 2018

Iterated Local Search for Time-extended Multi-robot Task Allocation with Spatio-temporal and Capacity Constraints

Hakim Mitiche ORCID logo, Dalila Boughaci and Maria Gini

Abstract

We propose a method for task allocation to multiple physical agents that works when tasks have temporal and spatial constraints and agents have different capacities. Assuming that the problem is over-constrained, we need to find allocations that maximize the number of tasks that can be done without violating any of the constraints. The contribution of this work is the study of a new multi-robot task allocation problem and the design and the experimental evaluation of our approach, an iterated local search that is suitable for time critical applications. We created test instances on which we experimentally show that our approach outperforms a state-of-the-art approach to a related problem. Our approach improves the baseline’s score on average by 2.35% and up to 10.53%, while responding in times shorter than the baseline’s, on average, 1.6 s and up to 5.5 s shorter. Furthermore, our approach is robust to run replication and is not very sensitive to parameters tuning.

2010 Mathematics Subject Classification: 68T20; 68T40; 68U01

1 Introduction

Task allocation to physical agents addresses the problem of which agent should execute which tasks, so that the total cost is minimized and/or the total reward is maximized. Applications include robotic missions for surveillance or exploration (e.g. NASA’s rovers sent to Mars); multiple vehicles routing and scheduling, such as for delivery of goods [20]; and an emergency response, which deals with important social issues, such as natural disaster mitigation [8] or law enforcement at the city scale [1].

Task allocation to multiple physical agents has been formulated in many ways, depending on the application, and solved using different methods. Our work is motivated by emergency response, but the formulation we give is relevant to other applications. Considering the intractability of the problem and the need of rapid response, we are interested in a fast and competitive heuristic for the problem. The main contributions of the paper are the following:

  1. a formalization of a practical multi-robot task allocation problem, where there is a limited number of agents that have heterogeneous capacity to execute tasks, and a relatively large number of tasks that are geographically scattered with deadlines;

  2. the development of an efficient and effective metaheuristic, iterated local search (ILS) [12], based on a preliminary study of the baseline approach [21] when applied to our problem [15];

  3. the generation of a test set and the experimental evaluation of the proposed method on it.

The task allocation problem we deal with falls into the ST-SR-TA:TW (Single Task robot, Single Robot task, Time-extended Assignment, Time Windows) deterministic category according to Nunes et al.’s taxonomy [17]. Our proposed approach is easy to implement; though not optimal, it computes good solutions fast, as shown in our experimental results. Hence, it is suitable for time critical applications, where solution quality is traded off for prompt response time. The experimental results show that our approach has limited sensitivity to parameter tuning and is robust to run replication.

The paper is organized as follows. In Section 2, we briefly review the literature on task allocation to multiple physical agents. We define our task allocation problem in Section 3. In Section 4, we detail a fast and effective metaheuristic approach that we propose for the problem. Section 5 describes the experimental setup, the test instances, and the experimental results we obtained. Section 6 concludes and suggests future research directions.

2 Related Work

Task allocation to multiple physical agents is mainly studied by the artificial intelligence and robotics communities, where it is usually referred to as multi-robot task allocation (MRTA). Major applications of MRTA are, but not limited to, emergency response, such as urban search and rescue; exploration of hostile environments, such as the Mars planet by NASA’s twin geologist rovers; and surveillance of hazardous environments, such as surveillance of an enemy’s border territory with unmanned air vehicles. Typically, the objective in a MRTA problem is to minimize the total distance traveled by robots to accomplish the tasks (because of limited battery power) or to minimize the mission’s time (if it maximizes the reward). The allocation of tasks to robots is constrained spatially and temporally, as the robots need to travel to tasks which are only available during a certain, potentially short, period of time. Advanced applications may require further constraints, such as precedence among tasks or synchronization of their execution [17].

According to the taxonomy of Gerkey and Matarić [5], MRTA problems can be broadly categorized according to three axes: (i) how many tasks can a robot perform simultaneously, (ii) does a task require (or permit) multiple robots working on it simultaneously, and (iii) can all tasks be allocated upfront or as they arrive.

Nunes et al. [17] recently extended the taxonomy third axis by distinguishing between allocation models where tasks have time windows and allocation models where tasks have precedence or synchronization constraints. Their taxonomy is further narrowed by subcategorizing task allocation according to hard vs. soft temporal constraints, deterministic vs. stochastic task arrival, task reward, robot travel time, etc.

With respect to decision making, we distinguish centralized approaches (e.g. [9]) from decentralized approaches (e.g. [18], [19]). Centralized approaches assume a (single) central decision maker that assigns tasks to agents, while in decentralized approaches there are many independent decision makers, usually with limited awareness of tasks and peer agents. In swarm intelligence, (e.g. [3], [4]), task allocation can emerge from simple and independent behaviors of single robots. When using decentralized constraint optimization, tasks are allocated through a distributed algorithm run by multiple robots that communicate with each other [19]. Decentralized task allocation is useful in dynamic environments, to provide fault tolerance and adaptability, or when communication is limited. Centralized approaches have a single point of failure; however, they are more effective in observable environments and more suitable when optimality is desirable.

Lagoudakis et al. [11] provide auction-based multi-robot algorithms for robots to visit tasks. The algorithms have performance guarantees, but they do not include temporal constraints. Melvin et al. [14] developed auction-based methods that run fast and perform well on MRTA problems with reward for task completion. Their problem does not require the visit of all targets, and the approach is restricted to tasks with disjoint time windows. Task allocation in emergency response is modeled as an extended generalized assignment problem by Scerri et al. [19]. The agents diverge in efficiency and availability of resources. The tasks require different amounts of resources and may have interdependencies during execution. The problem formulation captures many aspects of task allocation to robots; however, it does not consider spatial or temporal constraints on tasks, and the agent capacity is considered as a reward rather than a constraint. Ramchurn et al. [18] approached the emergency response issue with teams of agents, of different joint capabilities, which band (and disband) to work simultaneously together on tasks that have workload, time, and location constraints. While such a formulation may be effective, it comes at the cost of increased computational complexity.

Other formulations relevant to the problem we address are routing and scheduling problems, such as the vehicle routing problem with time windows [20], the team orienteering problem with time windows (TOPTW) [2], and the multiple repairman problem with time windows [13].

These problems fall within the time-extended task allocation class (see [17] for details on further problems that fall in this class).

3 Problem Statement

We assume a number of cooperative physical agents that have to travel to execute dispersed tasks. The agents and the tasks are known upfront and do not change during the allocation. We assume the ST-SR-TA allocation model [5], where an agent does at most one task at a time, each task requires one agent only, and task assignments are planned over time spans. Our MRTA model is deterministic with hard temporal constraints [17]. We assume a single type of task and a single type of agent.

3.1 Basic Definitions

Let A={a1,,an} be the set of agents. Each agent aA has an initial location la0LA at time t = 0, where LA is the set of initial locations of the agents on the Euclidean plane. Let K={k1,,km} be the set of tasks. A task kK has a fixed location lkLK, a deadline dk by which it should be finished, and a workload wk which is an estimate of the amount of work necessary to complete k. Each agent a has a capacity pa, which is the number of units of work that a can perform in one unit of time. Differences in capacity among agents may be due to skill, experience, or specific tools. We assume that time is discrete and agents can travel and do tasks in measurable units of time (e.g., seconds or minutes) starting from a reference time t = 0. We define ρ:(LALK)×LK[0] to be the agent travel time function. For simplicity, we assume that paths are free of blockages and traffic jams, the agents have the same constant velocity and will always take the shortest path between two consecutive tasks.

3.2 Problem Constraints

The tasks have to be allocated without violating any temporal or capacity constraint. Temporal constraints restrict the time by which tasks have to be completed, while capacity constraints affect the number of tasks that can be processed and their processing time. An agent-task assignment that respects the capacity and temporal constraints is said to be feasible. Formally, the assignment of agent a to task k at time t is feasible, if and only if

(1)t+ρ(lat,lk)+wk/padk

where lat is the location of agent a at time t. The constraint above ensures that an agent will only travel to a task it can reach and finish before the deadline, given the agent’s location, its capacity, and the task’s workload.

3.3 Search Space

We denote by τt1,t2ak the assignment of agent a to task k, during the period of time [t1,t2]. We define F, the set of all feasible assignments, as

(2)F={τt1,t2ak|t1=t+ρ(lat,lk),t2=t1+wk/pa,t2dk}aA,kK,t{0,,dk}

Feasible assignments of agent a to task k are within the time window [0,dk] (Eq. (2)). An assignment start time, t1, corresponds to the time of arrival of a to task k. It depends on a’s location at time t, which is 0 at the beginning, or the time by which a finishes the previous assignment. The assignment completion time, t2, should meet k’s deadline (Eq. (2)). A candidate solution, denoted by Γ, is a subset of F that we define as

(3)Γ={{τt,tak}F|τt1,t2a1k1,τt1,t2a2k2Γ:k1k2,a1=a2{t1t2}{t1t2}=}

The first condition (Eq. (3)) ensures that every task is at most assigned to one agent and once. The second condition guarantees that each agent is assigned to no more than one task simultaneously. The search space, 𝚪, is defined as: 𝚪=Γ.

3.4 Objective Function

The goal of our task allocation problem is to maximize the number of tasks that are completed (by their deadlines). It can be expressed as follows:

(4)argmaxΓ𝚪kKδ(k,Γ)

where δ(.) is the task selection function defined over the set of tasks and candidate solutions. For kK and Γ𝚪, we have

(5)δ(k,Γ)={1ifaA,t,t:τt,takΓ0otherwise

The function δ(.) returns 1 if and only if task k is present in one of the assignments of the candidate solution (Γ).

To the best of our knowledge, the problem we have defined has not been studied. It bears similarity to TOPTW [2] and particularly to the MRTA problem in [18]; however, we assume single-robot tasks and capacity for agents rather than coalitions. We refer to our problem as multi-robot task allocation with temporal and capacity constraints (MRTA/TC).

4 A Metaheuristic Approach

We found that the MRTA/TC problem is NP-hard and relates to the TOPTW. To tackle the problem complexity, we propose an anytime approach so that it returns quickly a (suboptimal) solution, yet can find a better solution if run longer. The approach is an enhanced ILS that builds upon ILS [21], based on the preliminary study we did in [15]. The metaheuristic runs in two phases: construction, which generates local optima, and perturbation, which tries to escape them to find a global optimum or at least a local optimum of better quality. We will designate an agent’s assignment by visit and an agent’s set of assignments by tour.

4.1 Construction Step: Insertion-Based Heuristic

This phase builds a candidate solution, from some partial solution, based on a heuristic that inserts visits into all tours simultaneously. Let si, fi, and Ti respectively denote the start time, the finish time, and the service time of visit i. Based of Eq. (1), the service time of visit i can be computed as Ti=wai/pai, where ai is the agent corresponding to the tour in which visit i is considered for insertion. We denote – with some abuse of notation – by ρ(h, i), the travel time between locations of visits h and i and by ρ(−1, h) the travel time between the tour start location and (h), the location of the first visit in the tour. The insertion of visit i between h and j delays j and the visits that follow j, in the tour, by shifti as follows:

(6)shift=iρ(h,i)+Ti+ρ(i,j)ρ(h,j).

Given that the tasks have deadlines, before considering to delay a visit, we ensure that the visit remains feasible after the insertion under consideration. For that, we compute maxshiftj, the maximum allowed delay of visit j, as follows:

(7)maxshiftj=max{0,{dj(sj+Tj)ifjisthelastmin{dj(sj+Tj),maxshiftj+1}otherwise}}

where dj is the deadline of visit j (with some abuse of notation) and maxshiftj+1 is the maximum delay that can be applied on the visit that follows j. A visit can be delayed as much as its task’s deadline permits, when it is the last in the tour. Otherwise, the visit can be delayed no later than its task’s deadline and no more than the maximum shift of the visit that follows (Eq. (7)).

The insertion of visit i between h and j is feasible if and only if i is feasible (Eq. (1)) and the resulting delay of j and, consequently, the delays of the visits that follow j are less than or equal to the maximum allowable:

(8)shiftimaxshiftj

Algorithm 1:

Construction Step.

Input: partial solution S, set of tasks Kpending
Output: new solution S′
1SS
2whileKpendingdo
3       forallkKpendingdo
4             Compute all possible visits to task k (Eqs. (1) and (8))
5             Find the best visit to task k (Eq. (10))
6       Find the best visit to insert, i (Eq. (11))
7       ifi=nullthen ReturnS′
8       else Insert i into S′ and update Kpending
9       Compute the start time si and the finish time fi
10       forallthe visits j after ido Update sj, fj and maxshiftj (Eqs. (12) and (7))
11       Compute maxshifti
12       forallthe visits h before ido Update maxshifth

A visit may be inserted in many tours and in many positions in a tour. The desirability of the insertion of visit i, noted as desirabilityi, is inversely proportional to the resulting delay (Eq. (9)). Let F denote – with a slight change of notation – the set of possible visits to currently not allocated tasks, Kpending. Let Fk denote the set of feasible visits to task kKpending. Then F denotes the set composed of the most desirable insertion for every pending task (FF). We look for ik, the most desirable visit to task k in the current tours (Eq. (10)). Then we select for insertion i, the visit with the highest desirability among the best visits to the pending tasks (Eq. (11)).

(9)desirabilityi=1/shifti
(10)ik=argmaxiFk{desirabilityi}
(11)i=argmaxiF{desirabilityi}

After an insertion, we update the maximum shift for all the visits in the tour. For the visits that come after the insertion, we further update their start times and finish times, by adding the insertion delay (Eq. (12)).

(12)sj=sj+shifti  fj=fj+shifti

The construction step iterates until all tasks are visited, or no further insertion is possible (Algorithm 1). Each time, Algorithm 1 inserts the best visit among the possible visits to the pending tasks. Then, it updates the set of pending tasks and the tour where the insertion took place by recomputing the visits’ start times, finish times, and maximum shifts. The maximum shifts are updated in the inverse order of visits, as required by Eq. (7).

4.2 Perturbation Step: Alteration of the Current Solution

This phase modifies the current solution so that the construction phase can find another solution. The perturbation strength and the perturbation start define the modification to make. The adjustment of these perturbation parameters affects the search tendency (exploration or exploitation) [12]. To perturb the solution, we remove from each tour r sequential visits, starting from some visit x, in a circular way. That is, we remove visits from index x to x + r − 1. When we reach the end of the tour, we continue from the beginning (i.e. from 0 to y = (x + r) % tl − 1, where % is the remainder of division operator and tl is the length of the tour). The perturbation strength is then nr. Removing visits requires a backward shift, backshiftx,r, of the visits that follow the removal, unless the visits removed are at the tour end:

(13)backshiftx,r={0ifx+r=tli=0y[ρ(i1,i)+Ti]+ρ(y,y+1)ρ(1,y+1)ifx+r>tli=xx+r1[Ti+ρ(i,i+1)]+ρ(x1,x)ρ(x1,x+r)otherwise

Algorithm 2:

Perturbation Step.

Input: current solution S, free parameter perturbationStrengthCoef
Output: partial solution S′
1r(score(S)×perturbationStrengthCoef)/n
2SS
3foralltourSdo
4       x random number [0,length(tour))
5       Remove the r first visits starting at index x in tour and update Kpending
6       Compute backshiftx,r in tour (Eq. (13))
7       forallthe visitsjx+rdo Update sj, fj and maxshiftj (Eqs. (14)–(16))
8       forall the visits i<xdo Update maxshifti (Eq. (7))

When visits are removed from the beginning or the middle of the tour, the visits that follow are shifted toward the beginning. The start and finish times of the shifted visits are updated as follows (where i{x+rtl1} when x + r < tl and i{y+1x1} when x + r > tl),

(14)si=sibackshiftx,r
(15)fi=fibackshiftx,r

The removal of visits requires to update the maximum shifts of the visits that remain. When visits are removed from the middle of the tour (i.e. when x + r < tl), the maximum shifts of the visits i that follow the removal (i{x+r,,tl1}) are computed as follows:

(16)maxshifti=maxshifti+backshiftx,r

Our perturbation (Algorithm 2) removes from every tour a number of visits that is proportional to the number of visited tasks, score(S), the perturbation strength coefficient, perturbationStrengthCoef, and the number of agents n. Thus, the perturbation strength is evenly divided among the tours and is adapted to the search progression and the difficulty of the problem instance (number of agents, task/agent locations, and deadlines/capacities distribution). Namely, the perturbation strength at the tour’s level increases as more tasks get visited (hence, the tours get longer). The perturbation start index, x, is selected randomly (Algorithm 2). By doing so, the perturbation is very likely to output a different solution S′, if it happens to have again solution S as input. Consequently, our ILS should avoid cycles and better explore the search space compared to ILS [21].

4.3 The Metaheuristic: Enhanced ILS

Enhanced ILS (Algorithm 3) is configured with two parameters: (1) the maximum number of iterations (maxIter) which, contrary to maxTrials of ILS [21], enables the control of the runtime and (2) a coefficient that controls the perturbation strength at the tour level (perturbationStrengthCoef). Enhanced ILS iterates until all tasks are visited or the maximum number of iterations is reached. Each time, it constructs a new solution, S, from a partial solution, S′ (initially empty), that is based on the current solution, S. The best solution found, S*, is updated with new solution S if necessary. Then, S is altered so that the next iteration may escape the local optimum towards a possibly better one.

Algorithm 3:

Enhanced Iterated Local Search.

Input:maxIter, perturbationStrengthCoef
Output: best-found solution S
1S
2SS
3iter1
4whileitermaxIterdo
5       S ← Construction(S′) (Algorithm 1)
6       ifscore(S)>score(S)thenSS
7       S′ ← Perturbation(S) (Algorithm 2)

5 Experimental Evaluation

We experimentally evaluated our approach to the MRTA/TC problem on instances we generated based on instances of the related problem (TOPTW) and against a competitive approach to the related problem.

The comparison of the state-of-the-art approaches to TOPTW was conducted by Hu and Lim [7] and recently by Gunawan et al. [6]. The authors adapted the computation times of the competitors methods according to their CPU speeds. The comparisons were carried out on two TOPTW benchmarks with up to four tours. We only consider the benchmark based on Solomon’s instances as our test set. We compare the performance averaged per group of instances similarly to [6], [7]. The iterative three-component heuristic [7] tends to get the lowest gap to the best-known solutions; however, it has a high computation time. The hybridization of Simulated Annealing with ILS [6] is comparable to the iterative three-component heuristic but only for long computation times. ILS [21] is appropriate for real time, since it can in the order of seconds return solutions with a low score gap to the best-known – the average score gap was only 1.76% and 2.34%, respectively, for the second group and the first group of Solomon’s instances (Gunawan et al. [6], though more recently, report ILS score gaps that are even lower than Hu and Lim [7]), while the average response time is tens to hundreds times faster than the ant colony system [16] and the iterative three-component heuristic. The hybrid metaheuristic of Labadi et al. [10] is a few times slower than ILS but has a slightly better average score gap (about 1.2% better on average in each instance group [7]).

The metaheuristics of [10] and [21] are suitable baselines for time critical applications, since both have prompt response times and low score gaps compared to the best-known. Nonetheless, ILS [21] has the best response time and will be the baseline for evaluating our approach.

5.1 Experimental Instances and Setup

We generated two groups of problem instances. In group 1, instances admit solutions with tours of small to moderate length; whereas in group 2, instances can have solutions with tours that are relatively long. There is a fixed number of tasks, 100, while the number of agents varies as follows: 2, 3, 5, and 7. The map is a 100 × 100 grid. The agents’ initial locations and the tasks’ locations are drawn uniformly at random. The travel velocity is commonly set at a unitary value. Agent a’s capacity pa{1,2}, such that about one third of the agents are twice more efficient at work than the rest.

The task workload is set at 20. Task k’s deadline, dk, is normally drawn from [dklow,dhigh] for 25%, 50%, 75%, or 100% of the tasks. The remaining tasks take dhigh (the slackest deadline). The tightest deadline, dklow, is set such that task k would be feasible as first task for any agent. The value dhigh is set such that, assuming 10 agents and a travel distance between any pair of tasks of at most 25 units (1/4 of the longest distance), if dhigh was the deadline for all tasks, they could all be visited. We experimentally found that this setting of dhigh enables long tours, whereas setting it at half its original value enables relatively short tours.

By combining the number of agents with the percentage of normally sampled deadlines, we get 16 different problem configurations per group. We sample three instances per problem (configuration) to get 96 instances (the test instances are available on the Web at http://tinyurl.com/taptc15in). An instance named r23a501, for example, is in group 2, has 3/4 tasks with normally distributed deadlines, five agents, and is the second instance of the problem configuration.

We coded the enhanced ILS and the baseline in Java. We ran the experiments on a laptop equipped with an Intel(R) Core(TM) i7 CPU clocked at 2.20 GHz, 8 GB of volatile memory, and running under Linux Ubuntu 14.04. We replicated enhanced ILS run on a problem instance 10 times.

5.2 Parameter Tuning

We manually tuned the algorithms in a trial-and-error fashion. We stopped tuning when the quality of the solution no longer improved without significantly increasing the computation cost. We found the best parameters setting for ILS (maxTrials, maxPerturbationStrengthCoef) to be (600, 1/2) and (600, 2/5), respectively, for group 1’s and group 2’s instances. Based on the run replication with the median score, we found the best parameters setting for enhanced ILS (maxIter, perturbationStrengthCoef) to be (3000, 1/3) and (5000, 1/8), respectively, for group 1’s and group 2’s instances. We found marginal improvements beyond 15 s of execution.

5.3 Results

Table 1 summarizes the results of the experimental comparison of enhanced ILS and ILS. The score gap is reported in percentage (%) and the computation time gap in milliseconds (ms) per problem (Eq. (17)).

(17)ScoreGap=(scoreenhILSscoreILS)÷scoreILS×100%TimeGap={timeILStimeenhILSifScoreGap=0(runtimerunneruptimewinner)otherwise

Table 1:

Performance of Enhanced ILS vs. Baseline ILS, Average Per Problem.

ProblemScore gap (%)Time gap (ms)
MedianBestWorstMedianBestWorst
r11a20.00.00.091515
r12a21.382.760.0155814644
r13a21.431.431.43117413661364
r14a25.185.183.63108011411202
r11a33.13.13.1276027832717
r12a34.234.233.26248024182497
r13a35.216.511.95141816072368
r14a33.83.81.52213321222083
r11a52.683.251.34468835324917
r12a50.01.9−0.76−31338835389
r13a52.562.560.033584143259
r14a53.314.021.65209729683969
r11a71.31.3−0.523443387811,234
r12a70.00.95−0.41−20752218287
r13a70.971.940.55497334012927
r14a72.642.641.09554770416591
Average2.362.851.11226229362378
Minimum0.00.00.0−313154
Maximum5.216.513.63554770416591
r21a21.561.56−0.67130319013815
r22a24.024.731.65129015392508
r23a21.741.740.99142813152232
r24a27.217.215.11114310241330
r21a31.111.580.0−2151678125
r22a32.593.730.9714−6571892
r23a31.722.40.69218317512890
r24a30.81.99−1.19252632362893
r21a52.42.41.67−102−6991294
r22a52.843.62.18879−975552
r23a53.114.32.39193021182996
r24a52.233.150.52154414372972
r21a70.00.00.0151515
r22a70.00.00.0171018
r23a70.00.0−0.3−12−4762417
r24a72.493.122.0848710131577
Average2.112.591.019028891569
Minimum0.00.0−0.67−215−97515
Maximum7.217.215.11252632362996

where scoreenhILS and scoreILS are the solution qualities of the proposed metaheuristic and the baseline metaheuristic, respectively. The computation time that is actually necessary to find the final solution is noted timeILS and timeenhILS. As to runtimerunner−up, it is the runtime of the metaheuristic that underperformed, while timewinner is the computation time of the metaheuristic that performed best on the problem at hand. Then the time gap, TimeGap, measures how much extra time the runner-up approach was given to catch up with the superior approach, if any (Eq. (17)).

In Table 1, column 1 lists the problems, and columns 2–4 report the score gaps obtained from the median, best, and worst run replications of enhanced ILS, respectively. Columns 5 through 7, respectively, report the time gap for enhanced ILS run replications with the median, best, and worst score gaps. The results are averaged over the problems instances. Positive score gaps account for our approach having a performance better than the baseline’s. When the time gaps are positive as well, our approach could find better solutions in shorter response times (Eq. (17)).

Compared to ILS, enhanced ILS generally finds solutions of better quality, within shorter times (Table 1). Even in the worst run replication, enhanced ILS is generally better (it is at least as effective as ILS on 13 out of the 16 problems, in each group). In the median case, enhanced ILS is on average 2.24% and up to 7.21% more effective in allocating tasks than ILS. When we consider all run replications, enhanced ILS almost always improves the solution quality (it did not only on two problems in group 2). The total average score gap is slightly improved in the best run replication; nonetheless, the score is improved on half of the problems. Enhanced ILS tends to have a response time that is shorter than ILS’s (Table 1). In the median run replication, ILS is given, on average, 1 s and up to 5.5 s to catch up with enhanced ILS.

Adapting the perturbation strength to the current solution and problem instance, and including randomness into the perturbation phase, is better than doing cyclic incremental deterministic perturbations (the case of ILS). We think, likewise, that search recycling is very unlikely. Interestingly, enhanced ILS’s perturbation proved particularly helpful on instances with short tours. Enhanced ILS achieved at least 2.5% score improvement in nine problems of group 1, compared to five problems of group 2 (Table 1).

Table 2 details the median performance results of enhanced ILS. The columns from left to right, respectively, lists the problem instances names, the solution quality, the score gap (enhanced ILS vs. ILS), enhanced ILS’s computation time, and runtime. Strictly positive score gap values, which account for the superiority of our metaheuristic, are noted in bold. Enhanced ILS finds solutions of better quality than ILS solutions, about 68% of the time (or on 65 out of the 96 instances). Enhanced ILS fell shorter than the baseline only on three instances: r12a500, r12a702, and r13a700 (Table 2). The score improvement is up to about 10%. On average, enhanced ILS performs slightly better on instances with tight deadlines (group 1). Since both ILS algorithms find the optimal solution of at least 10 instances of group 2 (when 100 tasks are allocated), such instances may be easy; thus, we cannot compare the approaches on them. Enhanced ILS runs, on average, in less than 5 s and no more than 15 s. However, the response times are lesser than the runtimes (Table 2).

Table 2:

Detailed Performance of Enhanced ILS (Median Run) Versus ILS.

InstanceScoreGap (%)Time (ms)InstanceScoreGap (%)Time (ms)
ComputationRunComputationRun
r11a20023.00.0421732r21a20046.00.027645019
r11a20123.00.0131581r21a20146.02.2294117
r11a20223.00.021832r21a20245.02.279273854
r11a30031.03.331192481r21a30059.00.01707068
r11a30138.02.71854243r21a30172.01.4117627638
r11a30231.03.3342594r21a30261.01.671036865
r11a50052.01.9612105962r21a50097.02.119187448
r11a50152.01.967016297r21a50197.04.319938056
r11a50257.03.6412009261r21a502100.01.01214441
r11a70078.02.63806913,987r21a700100.00.01415
r11a70179.01.28395214,358r21a701100.00.01522
r11a70276.00.064310,956r21a702100.00.01517
r12a20022.04.76101114r22a20044.07.326153172
r12a20121.00.05251077r22a20143.00.020263298
r12a20223.00.091954r22a20245.04.651193392
r12a30030.03.45222129r22a30060.05.262815428
r12a30136.02.86163790r22a30171.02.915586769
r12a30230.07.1415132177r22a30259.00.05515695
r12a50050.0−1.965325683r22a50093.04.495966889
r12a50152.01.967645244r22a50194.03.36347439
r12a50256.01.8232708873r22a50296.01.0518017904
r12a70073.02.8248459382r22a700100.00.01516
r12a70176.00.010909440r22a701100.00.04020
r12a70273.0−1.3528099412r22a702100.00.01517
r13a20022.00.02934r23a20041.00.016142767
r13a20122.04.7671063r23a20141.02.56422774
r13a20220.00.0261851r23a20241.02.57702738
r13a30031.03.33761815r23a30055.01.8517083859
r13a30135.06.062402836r23a30167.01.5224175254
r13a30231.06.94301871r23a30256.01.8210193862
r13a50050.04.174644621r23a50081.03.8535706004
r13a50152.04.013975472r23a50189.04.7110826227
r13a50254.01.8910565433r23a50289.01.1429735886
r13a70073.0−1.3517598799r23a700100.00.02324
r13a70175.02.7477828854r23a701100.00.0175761
r13a70271.01.4360438527r23a702100.00.01517
r14a20021.010.53397864r24a20036.09.091491702
r14a20120.00.04755r24a20135.02.941231609
r14a20220.05.26101064r24a20236.09.092331754
r14a30025.08.7321998r24a30046.00.021113036
r14a30131.03.33733036r24a30156.00.032553982
r14a30226.00.0221928r24a30250.02.0473309
r14a50042.02.44853879r24a50076.00.014536973
r14a50143.02.3820695034r24a50177.04.0514786595
r14a50246.04.556985761r24a50281.02.5313176322
r14a70067.03.088298711r24a70099.02.062348220
r14a70164.01.5934779961r24a70198.03.166317608
r14a70267.03.0856819556r24a70299.02.0621518337
Average2.5213424983Average2.19984157
Maximum10.53806914,358Maximum9.0935708337
Minimum−1.962755Minimum0.0715

To further evaluate our approach, we plot the score gap evolution over time. For that, we consider enhanced ILS’s median run and ILS run on the 96 problem instances. Figure 1 shows four representative patterns of score gap evolution over time – we omit a fifth pattern, with 26% of occurrences, since therein the score gap is null and does not evolve over time. Enhanced ILS is superior to ILS all over the runtime more than half of the time (Figure 1A). Specifically, in 56.3% of the instances, not only does enhanced ILS return a better solution, but it can also do that any time. Less frequently (11.5% of the time), enhanced ILS achieves a better score by the end, while being generally superior during the runtime (Figure 1B). Enhanced ILS ties with ILS by the end of the run in 29% cases (Figure 1C). Interestingly, when enhanced ILS underachieves by the end (3% of the cases), it is still competitive with ILS along the runtime (Figure 1D). We can conclude that enhanced ILS is likely to achieve a score better than ILS’s, even if interrupted at different cutoff times.

Figure 1: Patterns of Score Gap Evolution Over Time (Enhanced ILS vs. ILS). (A) enhILS superior all over the runtime; (B) enhILS superior over most of the runtime; (C) enhILS similar, better along the runtime; and (D) enhILS inferior, competitive along the runtime.

Figure 1:

Patterns of Score Gap Evolution Over Time (Enhanced ILS vs. ILS). (A) enhILS superior all over the runtime; (B) enhILS superior over most of the runtime; (C) enhILS similar, better along the runtime; and (D) enhILS inferior, competitive along the runtime.

For our statistical study on the performance of our approach, we consider 30 observations per problem configuration, obtained from running enhanced ILS on the problem instances. Specifically, we compute the probability that enhanced ILS will improve, not improve, or deteriorate, respectively, the solution quality achieved by ILS (Figure 2). Enhanced ILS is at least 50% likely to improve ILS’s solution in most problems in each group. Enhanced ILS is overall 95% likely to perform at least as well as the baseline; we practically never get a score worse than ILS’s, particularly for group 2 instances (Figure 2). Therefore, though stochastic, enhanced ILS is practically better than ILS when run once. It is further better if we do multiple runs.

Figure 2: Probability that Enhanced ILS Improves Solution Quality of ILS.

Figure 2:

Probability that Enhanced ILS Improves Solution Quality of ILS.

5.4 Sensitivity to Parameters Setting

A metaheuristic’s performance partly depends on how its free parameters are set. So to evaluate the impact of free parameters setting our approach’s performance, we measure the sensitivity of the score gap to the free parameters setting (Figure 3). The free parameters settings we considered to configure enhanced ILS, noted as config in Figure 3, are given by Table 3. We configured ILS the best we could (Section 5.2). Enhanced ILS generally performs better than ILS, independently of how its free parameters are set. Specifically, it performs worse than ILS only in four problems and with a few free parameters settings in each group (Figure 3). On average, parameters tuning resulted in a score gain of 2.23% only. Therefore, enhanced ILS’s performance is barely affected by the free parameters setting, and, generally, its superiority to the baseline’s best performance does not result from parameters tuning.

Figure 3: Enhanced ILS vs. ILS (Tuned as in §5.2) Score Gap Sensitivity to Free Parameters Setting (Config), with the Median Runs of Enhanced ILS.

Figure 3:

Enhanced ILS vs. ILS (Tuned as in §5.2) Score Gap Sensitivity to Free Parameters Setting (Config), with the Median Runs of Enhanced ILS.

Table 3:

Some Free Parameters Settings Tried During Enhanced ILS Tuning.

ConfigurationGroup 1’s instancesGroup 2’s instances
maxItermaxPerturbationStrengthCoefmaxItermaxPerturbationStrengthCoef
060000.110000.5
150000.12530000.125
240000.220000.25
330000.2515000.4
430000.3345000.1
521000.417000.33
615000.540000.125
750000.125
840000.2

6 Conclusions and Future Work

We have introduced MRTA/TC, a task allocation problem where tasks have temporal constraints and agents have capacity constraints. We presented an enhanced ILS which is suitable for time critical applications. We experimentally evaluated our approach on test instances that we generated. Our approach produces better quality solutions than the baseline while showing a more prompt response time. Our solution is barely sensitive to parameter tuning, and it is fairly robust to run replications. The proposed approach performs well when it is interrupted at different cutoff times. Future directions will investigate the use of sophisticated acceptance criterion, multiple construction heuristics, and/or adaptive parameter selection.

Acknowledgments

The first author is thankful to Prof. Maria Gini for her help, as well as to her research team at the University of Minnesota, in particular, to Dr. William Groves and Dr. Julio Godoy.

  1. Research supported: This work was supported by the Algerian Ministry of Higher Education and Scientific Research, scholarship number 187/PNE/USA/2013–2014.

References

[1] S. Amador, S. Okamoto and R. Zivan, Dynamic multi-agent task allocation with spatial and temporal constraints, in: Proc. International Conf. on Autonomous Agents and Multiagent Systems (AAMAS), pp. 1495–1503, 2014.Search in Google Scholar

[2] I.-M. Chao, B. L. Golden and E. A. Wasil, The team orienteering problem, Eur. J. Oper. Res.88 (1996), 464–474.10.1016/0377-2217(94)00289-4Search in Google Scholar

[3] E. Ferrante, A. E. Turgut, E. Duéñez-Guzmán, M. Dorigo and T. Wenseleers, Evolution of self-organized task specialization in robot swarms, PLoS Comput. Biol.11 (2015), e1004273.10.1371/journal.pcbi.1004273Search in Google Scholar PubMed PubMed Central

[4] P. Ferreira, F. Boffo and A. Bazzan, Using swarm-GAP for distributed task allocation in complex scenarios, in: N. Jamali, P. Scerri and T. Sugawara, eds., Massively Multi-Agent Technology, Lecture Notes in Computer Science 5043, pp. 107–121, Springer, Berlin/Heidelberg, 2008.10.1007/978-3-540-85449-4_8Search in Google Scholar

[5] B. P. Gerkey and M. J. Matarić, A formal analysis and taxonomy of task allocation in multi-robot systems, Int. J. Robot. Res.23 (2004), 939–954.10.1177/0278364904045564Search in Google Scholar

[6] A. Gunawan, H. C. Lau, P. Vansteenwegen and K. Lu, Well-tuned algorithms for the team orienteering problem with time windows, J. Oper. Res. Soc.68 (2017), 861–876.10.1057/s41274-017-0244-1Search in Google Scholar

[7] Q. Hu and A. Lim, An iterative three-component heuristic for the team orienteering problem with time windows, Eur. J. Oper. Res.232 (2014), 276–286.10.1016/j.ejor.2013.06.011Search in Google Scholar

[8] H. Kitano and T. Satoshi, Robocup rescue: a grand challenge for multiagent and intelligent systems, AI Mag.22 (2001), 39–52.Search in Google Scholar

[9] M. Koes, I. Nourbakhsh and K. Sycara, Heterogeneous multirobot coordination with spatial and temporal constraints, in: Proc. 20th National Conf. on Artificial Intelligence (AAAI), pp. 1292–1297, June 2005.Search in Google Scholar

[10] N. Labadi, R. Mansini, J. Melechovský and R. W. Calvo, The team orienteering problem with time windows: an LP-based granular variable neighborhood search, Eur. J. Oper. Res.220 (2012), 15–27.10.1016/j.ejor.2012.01.030Search in Google Scholar

[11] M. G. Lagoudakis, E. Markakis, D. Kempe, P. Keskinocak, A. Kleywegt, S. Koenig, C. Tovey, A. Meyerson and S. Jain, Auction-based multi-robot routing, in: Robotics: Science and Systems, pp. 343–350, 2005.10.15607/RSS.2005.I.045Search in Google Scholar

[12] H. R. Lourenço, O. C. Martin and T. Stützle, Iterated local search, in: M. Gendreau and J-Y. Potvin, eds., Handbook of Metaheuristics, 2nd Edition International Series in Operations Research and Management Science 146, pp. 363–398, Springer, New York, USA, 2010.10.1007/978-1-4419-1665-5_12Search in Google Scholar

[13] A. Lucena, Time-dependent traveling salesman problem – the deliveryman case, Networks20 (1990), 753–763.10.1002/net.3230200605Search in Google Scholar

[14] J. Melvin, P. Keskinocak, S. Koenig, C. Tovey and B. Y. Ozkaya, Multi-robot routing with rewards and disjoint time windows, in: Proc. IEEE/RSJ Int. Conf. on Intelligent Robots and Systems, pp. 2332–2337, San Diego, CA, USA, 2007.Search in Google Scholar

[15] H. Mitiche, J. Godoy and M. Gini, On the tuning and evaluation of iterated local search, in: Proc. of Metaheuristics International Conference (MIC), Agadir, Morocco, 2015.Search in Google Scholar

[16] R. Montemanni and L. M. Gambardella, An ant colony system for team orienteering problems with time windows, Found. Comput. Decis. Sci.34 (2009), 287–306.10.1109/ISCCS.2011.95Search in Google Scholar

[17] E. Nunes, M. Manner, H. Mitiche and M. Gini, A taxonomy for task allocation problems with temporal and ordering constraints, Robot. Auton. Syst.90 (2017), 55–70.10.1016/j.robot.2016.10.008Search in Google Scholar

[18] S. D. Ramchurn, A. Farinelli, K. S. Macarthur and N. R. Jennings, Decentralized coordination in RoboCup Rescue, Comput. J.53 (2010), 1447–1461.10.1093/comjnl/bxq022Search in Google Scholar

[19] P. Scerri, A. Farinelli, S. Okamoto and M. Tambe, Allocating tasks in extreme teams, in: Proc. International Conf. on Autonomous Agents and Multiagent Systems (AAMAS), pp. 727–734, 2005.10.1145/1082473.1082584Search in Google Scholar

[20] M. M. Solomon, Algorithms for the vehicle routing and scheduling problems with time window constraints, Oper. Res.35 (1987), 254–265.10.1287/opre.35.2.254Search in Google Scholar

[21] P. Vansteenwegen, W. Souffriau, G. V. Berghe and D. V. Oudheusden, Iterated local search for the team orienteering problem with time windows, Comput. Oper. Res.36 (2009), 3281–3290.10.1016/j.cor.2009.03.008Search in Google Scholar

Received: 2018-06-19
Published Online: 2018-12-21
Published in Print: 2019-04-24

©2019 Walter de Gruyter GmbH, Berlin/Boston

This article is distributed under the terms of the Creative Commons Attribution Non-Commercial License, which permits unrestricted non-commercial use, distribution, and reproduction in any medium, provided the original work is properly cited.

Scroll Up Arrow