1,770
Views
2
CrossRef citations to date
0
Altmetric
Original Articles

ATM cash replenishment under varying population coverage requirements

, , &
Pages 869-887 | Received 22 Nov 2019, Accepted 14 Dec 2020, Published online: 02 Feb 2021

Abstract

Inspired by an automated teller machine (ATM) cash replenishment problem involving population coverage requirements (PCRs) in the Netherlands, we propose the vehicle tour problem with minimum coverage requirements. In this problem, a set of minimum-cost routes is constructed subject to constraints on the duration of each route and the population coverage of the replenished ATMs. A compact formulation incorporating a family of valid inequalities and an efficient tour-splitting metaheuristic are proposed and tested on 77 instances derived from real-life data involving up to 98 ATMs and 237,604 citizens and on 144 newly generated synthetic instances. Our results for the real-life instances indicate significant cost differences in replenishing ATMs for seven major Dutch cities when the PCRs vary. Additionally, we illustrate the impact of different PCRs on the ATM replenishment costs for seven major cities in the Netherlands by presenting an aggregated cost evaluation of 11 PCRs involving 1,003,519 citizens, 338 ATMs, and 19 cash distribution vehicles.

1. Introduction

Service level requirements (SLRs) are widely used in supply chain logistics but have received little attention in the academic literature on optimising distribution problems. For example, Lin and Yang (Citation2011) address the design of public bicycle systems both from a user’s and an investor’s viewpoint. The service level provided to users is measured by the demand coverage level and travel costs, while the setup costs for bike stations and bike lanes are considered in the case of the investor. Escalona et al. (Citation2015) develop an inventory location model for the design of a distribution network for fast-moving items able to provide differentiated service levels in terms of product availability for two demand classes (high and low priority) using a critical level policy. Hensher and Houghton (Citation2004) use SLRs to ensure that bus operators deliver service levels consistent with stakeholder needs, especially with the objectives of the Australian government. Recently, Ibarra-Rojas et al. (Citation2014) studied the trade-off between the level of service in the bus network and operating costs incurred (related to fleet size) in Monterrey, while Sawik (Citation2015) deals with a supplier selection and scheduling problem to optimise the expected costs and customer service levels under disruption risks. Zhang et al. (Citation2018) define a service level as the probability of satisfying uncertain demand in build–operate–transfer projects. This service level is imposed by the government on the private firm so that capacity and stochastic demand can be better matched in public transport projects. Moons et al. (Citation2019) provide a recent review measuring, among others, the logistics performance in distributing internal hospital supplies while determining the desired SLRs. The literature on service level considerations in vehicle routing is scarce with the notable exception of Bulhões et al. (Citation2018) who investigate a capacitated routing problem minimising the sum of transportation costs and lost profits subject to strictly non-violated SLRs for groups of customers. Lai (Citation2004) empirically studies different types of service providers and their performance under different SLRs. For an extended and more general overview of the several key performance indicators for logistics service providers, see Krauth et al. (Citation2005).

Our research is motivated by a real-life automated teller machine (ATM) cash replenishment problem involving an SLR imposed by the Dutch Central Bank (DNB) through the National Forum on the Payment System to Geldmaat.Footnote1 Cash payments represent the most dominant payment instrument in a large majority of sectors throughout Europe. In recent years, however, digital or contactless payments have become widely available (2017). This trend has caused the gradual removal of ATMs in many European countries (2018). The accessibility of the public to ATMs and to cash in general has recently received public and political attention in the Netherlands. The high operational and maintenance costs of ATMs combined with the reduced used of cash led the banks to remove 6.4% of the ATMs in the country between 2014 and 2017. Despite the increasing use of digital currencies (2018), cash payments still enjoy a high acceptance rate, and their use is unlikely to significantly decline in the next few years (2018). Accessibility also remains an issue, especially for those groups of the population that are less mobile and that often live in rural communities where ATM coverage is low (2017). According to DNB guidelines, Geldmaat has to ensure that 99.73% of the Dutch population has access to a replenished ATM within five kilometres. maps the ATM population coverage in the Netherlands for 2017 when all ATMs are replenished.

Figure 1. ATM population coverage map in the Netherlands for 2017. Black areas represent postal codes with residents not having access to an ATM within five kilometres.

Figure 1. ATM population coverage map in the Netherlands for 2017. Black areas represent postal codes with residents not having access to an ATM within five kilometres.

The problem of operating an ATM network subject to population coverage requirements (PCRs) is closely related to the multi-vehicle covering tour problem (m-CTP) first introduced by Hachicha et al. (Citation2000). The m-CTP is a well-known decision-making problem with must-visit and may-visit locations and a set of demand points that must be covered by the visited locations. The m-CTP seeks a set of minimum-cost routes passing through a subset of the locations subject to (i) visiting all must-visit locations, (ii) constraints on the length of each route, (iii) constraints on the number of visited locations on each route, and (iv) covering all demand points by visiting locations within a specific distance. The m-CTP (and its variants) has numerous applications, including the construction of routes for mobile healthcare teams such that all population centres are within a short traveling distance (Hodgson et al., Citation1998) and in the design of postal box installations maximising an appropriate linear combination of user convenience and postal service efficiency (Labbé & Laporte, Citation1986). Nevertheless, the m-CTP requires that all demand points are covered, thus implying mandatory 100% coverage.

In this article, we introduce the vehicle tour problem with minimum coverage requirements (VTPMCR) capable of handling coverage requirements lower than or equal to 100%. To the best of our knowledge, this is the first study to examine the impact of such coverage requirements on network operating costs. provides an example illustrating a feasible solution of the VTPMCR with coverage strictly lower than 100%, showing that the presence of uncovered citizens makes such a solution infeasible to the m-CTP. The VTPMCR generalises the m-CTP when it comes to the coverage constraints by allowing partial demand point coverage and therefore belongs to the class of NP-hard problems. As a solution to the VTPMCR satisfies coverage requirements and operational constraints, it indicates which ATMs to replenish and provides insights on how to redesign the network, i.e. which ATMs to keep or close.

Figure 2. Example of a feasible solution of the VTPMCR involving uncovered citizen demand and coverage strictly lower than 100%; such a solution is infeasible for the m-CTP.

Figure 2. Example of a feasible solution of the VTPMCR involving uncovered citizen demand and coverage strictly lower than 100%; such a solution is infeasible for the m-CTP.

The main contributions of this study are various. First, we introduce the VTPMCR, a new decision-making problem with applications to various distribution settings. Second, we propose a compact formulation and incorporate a family of valid inequalities that allows us to solve real-life instances with up to 50 ATMs and 163,029 citizens to optimality. Third, we propose a tour-splitting metaheuristic for the VTPMCR that can find high-quality solutions for real-life instances with up to 98 ATMs and 237,604 citizens within short computation times. Additionally, we illustrate the cost impact of different PCRs on the ATM replenishment costs for seven major cities in the Netherlands and present an aggregated cost evaluation of 11 PCRs involving 1,003,519 citizens from seven cities, 338 ATMs, and 19 cash distribution vehicles. Finally, we introduce 144 new synthetic problem instances, and we report a computational study indicating how the problem’s main parameters affect the computational behaviour of the proposed solution approaches.

The rest of the article is organised as follows. Section 2 reviews the state–of–the–art on exact and heuristic algorithms for the m-CTP and its main variants. The VTPMCR is formally introduced in Section 3, along with a flow-based formulation for the problem. Section 4 describes the tour-splitting metaheuristic along with nine local search operators incorporated into our solution framework. Section 5 elaborates on the synthetic and the real-life banknote distribution instances and discusses the computational results obtained. Finally, conclusions and future research directions are outlined in Section 6.

2. Literature review

Based on the objective function and constraints, vehicle routing problems (VRPs) can be categorised into classes of problems with special characteristics. m-CTP extend the traditional VRP literature by considering must-visit and may-visit locations and a set of demand points that can be assumed to be covered if a visited location is within a specific distance. Additionally, covering tour problems incorporate constraints on the length of each route and on the number of visited locations per route. When all these modeling aspects are present, the problem under consideration is the m-CTP introduced in Section 1.

2.1. Literature on the m-CTP

Many researchers have studied the m-CTP since its first appearance in the seminal work of Hachicha et al. (Citation2000), who propose three heuristic solution approaches. The first two, namely modified savings and modified sweep algorithms, are based on successful solution approaches for the VRP and vehicle dispatch problem (see Clarke & Wright, Citation1964 and Gillett & Miller, Citation1974). The third one follows a route-first cluster-second approach creating a possibly infeasible giant tour that is then split into multiple feasible routes. All three heuristics are tested on two sets of synthetic and real-life instances with up to 200 must-visit/may-visit locations.

Lopes et al. (Citation2013) propose the first exact solution approach for the m-CTP. In particular, the authors propose a Branch-and-Price (BP) algorithm and a column generation heuristic incorporating specific dominance and extension pruning rules to accelerate the resolution of the related pricing problems. Following the guidelines in (2000) for creating 15 instances, the authors solve five instances with up to 50 must-visit/may-visit locations to optimality.

Jozefowiez (Citation2014) proposes a path-based model and a BP algorithm to select routes such that all demand points are covered and all must-visit locations are visited. The constraints associated with the number of visited locations, the number of routes, and their duration are considered in the subproblem based on the integer programming formulation of Labbé et al. (Citation2004). The algorithm can solve 47 out of 80 synthetic instances with up to 60 must-visit/may-visit locations and 150 demand points to optimality.

Finally, a capacitated version of the m-CTP (m-CTP-c) is introduced by Murakami (Citation2018). The capacity constraints for each vehicle reduce to the constraints on the number of visited locations per route when each must-visit/may-visit location is assigned a demand level of one. The authors present a heuristic solution framework which is based on a column generation algorithm, where the route generation problems (subproblems) are solved by applying a heuristic for the CTP. Computational results on a newly generated set of synthetic instances with up to 500 must-visit/may-visit locations and 2500 demand points show the competitiveness of the heuristic by outperforming the three heuristics of Hachicha et al. (Citation2000).

2.2. Literature on variants of the m-CTP

Several studies have explored variants of the m-CTP. Tricoire et al. (Citation2012) consider a Bi-objective Stochastic CTP (bi-SCTP) that aims to minimise the opening cost of distribution centres and incurred transportation costs. The authors develop a Branch-and-Cut (BC) algorithm for a two-stage stochastic optimisation in which the demand of a set of population nodes is stochastic and can be partially covered based on their distance from the visiting distribution centres and present computational results on a set of real-life instances.

A CTP for the location of satellite distribution centres to supply humanitarian aid to affected people throughout a disaster area (CTLSDC) is proposed by Naji-Azimi et al. (Citation2012). In this problem, a heterogeneous and capacitated fleet serves individual demand points with different types of required aid by visiting (possibly multiple times) a set of satellite distribution centres. Neither must-visit locations nor route duration constraints for the vehicles are taken into account in this study. A multi-start heuristic is proposed to produce high-quality solutions for realistically sized instances in reasonable computation times.

Hà et al. (Citation2013) consider a special case of the m-CTP without any restriction on the duration of the routes (m-CTP-p). A new formulation extending that found in Baldacci et al. (Citation2005) for the single-vehicle version of the m-CTP is proposed along with a BC and a metaheuristic solution framework. Competitive computational results on a set of instances with up to 100 must-visit/may-visit and 100 demand points indicate the efficiency of their methods.

Inspired by humanitarian logistics scenarios, Flores-Garza et al. (Citation2017) consider a variant of the m-CTP with the objective of minimising the sum of arrival times (latency) at each visited location (m-CCTP). A mixed integer linear programming formulation and a greedy randomised adaptive search procedure are developed and tested on an adaptation of the 96 instances proposed by Ha et al. (Citation2013).

Kammoun et al. (Citation2017) study the m-CTP-p of Ha et al. (Citation2013). A variable neighbourhood search heuristic based on variable neighbourhood descent is proposed and tested on a set of synthetic instances generated according to the guidelines in (2013).

Pham et al. (Citation2017) develop a BC algorithm and a genetic algorithm adapted from Vidal et al. (Citation2014) for the Multi-vehicle Multi-CTP (mm-CTP) in which the number of vehicles is represented as a variable, the demand points may need to be covered multiple times, and must-visit/may-visit locations may allow for multiple visits. The genetic algorithm outperforms the results of Hà et al. (Citation2013), especially on large instances.

Finally, Karaoğlan et al. (Citation2018) introduce the Multi-vehicle Probabilistic CTP (m-PCTP) whose objective function aims to maximise the expected coverage of the demand points without considering any must-visit locations. A variable neighbourhood search metaheuristic is used to improve the initial solution of a BC algorithm that can solve 538 out of 587 synthetic instances to optimality involving up to 161 may-visit locations and 322 demand points.

provides an overview of the different covering tour problems addressed in the literature as well as their corresponding features and references. The table shows that the VTPMCR faced by Geldmaat has not been addressed in the literature yet.

Table 1. A summary of the features of the m-CTP and its main variants: superscripts indicate whether an exact (E) or a metaheuristic (H) solution approach was used; superscripts indicate mandatory full coverage (F) or partial coverage (P).

3. Problem description

The VTPMCR can be defined on a directed graph G=(V,A). The vertex set V={0}S represents a depot, 0, and a set S={1,2,,n} of n ATMs. The set of ATMs can be visited and replenished by up to m vehicles. The arc set A is defined as A={(i,j)|i,jV:ij}. Given a set of citizens C that the ATMs can cover, the VTPMCR consists of determining a set of at most m minimum-cost routes on a subset of V, subject to constraints on the maximum route duration T of each route and on the total population coverage of the replenished ATMs of all routes. Specifically, feasible solutions require covering at least P out of |C| citizens. A citizen cC is considered to be covered if there exists at least one replenished (i.e. visited) ATM within a (straight) distance r. Such a distance r, hereafter referred to as the service radius, is defined based on the population density and number of ATMs in the geographical area served. In the following, ScS denotes the set of ATMs that can cover citizen cC, and cij represents the cost of traveling from i to j, where (i,j)A. Motivated by our real-life case, each arc cost cij, (i,j)A, is set equal to cij={tij+trif jStijotherwise with tij representing the time required to travel from iV to jV and tr is the fixed replenishment time per ATM. In this study, traveling times are calculated based on real-road distances and a fixed vehicle speed depending on the average distance between the set of ATMs and depot.

Moreover, let P={Φ1,Φ2,,Φ|P|} be a partition of the citizens such that Sc=Sc for each pair of citizens c,cC,cc, belonging to the same subset Φk,k=1,,|P|, i.e. the two citizens can be served by the same subset of ATMs. Each subset of the partition P is called family of citizens (or simply family), and we refer to each class corresponding to subset Φk,k=1,,|P|, by its index k. Moreover, let S(Φk)S be the subset of ATMs that serve the citizens of the subset Φk – i.e. S(Φk)=Sc for each cΦk.

To formulate the VTPMCR, we introduce three sets of variables:

  • yk{0,1} is a binary variable equal to 1 if family k=1,,|P| is covered (0 otherwise),

  • xij{0,1} is a binary variable equal to 1 if any vehicle traverses arc (i,j)A (0 otherwise), and

  • zijR+ is a continuous variable indicating the departure time from i to j, where iS,jV.

The VTPMCR can then be formulated as follows: (1a) min(i,j)Acijxij(1a) (1b) s.t.k=1|P||Φk|ykP(1b) (1c) (i,j)A:jS(Φk)xijykk=1,,|P|(1c) (1d) (0,j)Ax0jm(1d) (1e) (i,j)Axij(j,i)Axji=0jV(1e) (1f) (i,j)Axij1jS(1f) (1g) zij(Ttijtj0)xijiS,jV(1g) (1h) (i,j)Azijt0i(j,i)AxjiiS(1h) (1i) (i,j)A(zij+tijxij)(j,i)AzjijS(1i) (1j) yk{0,1}k=1,,|P|(1j) (1k) xij{0,1}(i,j)A(1k) (1l) zijR+iS,jV(1l)

The objective function Equation(1a) minimises the total ATM cash replenishment costs. Constraint Equation(1b) guarantees that at least P citizens are covered. Constraints Equation(1c) make sure that a family of citizens is covered only if there is a replenished ATM within the service radius r. Constraints Equation(1d) limit the number of routes. Constraints Equation(1e) are flow conservation constraints. Constraints Equation(1f) make sure that each ATM is visited at most once. Constraints Equation(1g) define the maximum route duration constraints per vehicle by setting a limit on the maximum departure time from each ATM iS; if the arc xij is not used, the value of zij is equal to 0. Constraints Equation(1h) set the minimum value for zij. Constraints Equation(1i) are flow constraints for the zij variables. Finally, constraints Equation(1j)–(1l) define the domain of the variables.

The linear relaxation of formulation Equation(1a)–(1l) can be strengthened with the following set of valid inequalities: (2) yk(i,j)Axijk=1,,|P|,jS(Φk)(2)

These inequalities become active when at least one ATM jS(Φk) being within a service radius r from citizens of family k=1,,|P| is replenished; in that case, variable yk is forced to take a positive value.

4. A tour-splitting metaheuristic

In this section, we present a route-first cluster-second metaheuristic for the VTPMCR accompanied by iterated local search. The metaheuristic is inspired by tour-splitting approaches proposed for different VRPs. In such approaches, one giant tour visiting all service points (or customers) is created, which is then split into feasible routes. Prins et al. (Citation2009) describe how to improve tour-splitting approaches to obtain better solutions or tackle additional constraints while a recent review recalling the basic route-first cluster-second approach to show how it can efficiently be embedded in constructive heuristics and metaheuristics can be found in the recent work of Prins et al. (Citation2014). In opposite approaches, namely cluster-first split-second approaches, clusters of service points compatible with vehicle capacity are first formed and then optimised by solving the related traveling salesman problems for each cluster to extract higher-quality solutions.

4.1. Overview of the proposed metaheuristic

Algorithm 1.

Overview of the proposed tour-splitting metaheuristic TSMheu

Input: VTPMCR input data

Parameters: η¯0,η¯1,η¯2

Output: a set of routes X=(R1,,Rm)

1: X,c(X)

2: for η0=1,,η¯0 do

3:  S SelectSPs()      ⊳ see Algorithm 2

4:  for η1=1,,η¯1 do

5:   T CreateGiantTour(S)

6:   for η2=1,,η¯2 do

7:     T LocalSearch(T) ⊳ see Algorithm 3

8:     T DeleteSPs(T)

9:     R Split(T)

10:     R LocalSearch(R)

11:     if c(X)>c(R) then

12:      XR

13:     end if

14:     T CreateGiantTour(SR)

15:   end for

16:  end for

17: end for

18: return X

Algorithm 1 provides a pseudocode description of the proposed tour-splitting metaheuristic (TSMheu). The input of the TSMheu is the input data for the VTPMCR. The best solution found by the TSMheu after η¯0 iterations is indicated by X, where X=(R1,,Rm) denotes the set of m routes forming a feasible solution given a VTPMCR input instance. The two main tasks of the problem, namely ATM selection and the design of minimum-cost routes subject to maximum route duration constraints and minimum PCRs, are carried out sequentially. In each iteration, the selectSPs function selects a set of ATMs that satisfy the minimum PCRs (Line 3). In the following, P(S) denotes the total number of citizens covered by a set of ATMs SS. Algorithm 2 describes the selectSPs function more in detail.

The ATM selection task is accomplished in a way that, in each of the η¯0 iterations, a variety of different sets of ATMs is selected. Specifically, in each step of the ATM selection procedure, an equal probability of selection is given to every ATM iS with a positive coverage contribution given a set of already selected ATMs S (i.e. P(Si)P(S)>0). The equal probability of selecting ATMs with positive coverage contribution guarantees that in each iteration of the metaheuristic, a diverse set of ATMs is selected.

Then, for η¯1 iterations, a giant tour T is created by iteratively inserting the ATMs of the set S one by one in the same order as they were selected by the selectSPs function in the position of T that minimises the cost added to the objective function (Line 5).

The following steps are then applied for a number of η¯2 iterations. First, an attempt to further optimise T is made by applying two intra-route operators (Line 7). Second, the ATMs that contribute the most to the objective function value are sequentially removed as long as the minimum PCR is not violated (Line 8). Third, the optimal splitting of T into a set of routes R respecting the order of the ATMs in T is executed (Line 9); such a splitting is cost-driven and aims to minimise the cost of the routes generated from the giant tour; however, the maximum route duration constraints are neglected, meaning that some routes may be infeasible. To address this issue of having infeasible routes and guide the search toward feasible solutions, a penalty factor p is embedded into the cost of each set of routes R to proportionally penalise the violation of the maximum route duration constraints in the routes. The optimal split of the giant tour T into a set of minimum-cost routes R while respecting their order in T is based on the guidelines of Prins et al. (Citation2009) for VRPs with limited size fleets.

The routes in R are optimised by a set of nine local search intra- and inter-route operators until no further improvement can be found (Line 10). The solution is then checked, and if it is better than the previous best, it is stored in memory. Finally, the ATMs SR present in R are reconnected into a single giant tour T using the same process as applied in Line 5.

Algorithm 2.

selectSPs()

Input: VTPMCR input data

Output: A set of SPs SS with P(S)P

1: S

2: do

3:  Select randomly a SP iS with P(S{i})>P(S)

4:  SS{i}

5: While P(S)<P

6: return S

4.2. Local search

Algorithm 3 describes the local search procedure (LocalSearch) applied at each iteration of the TSMheu. The input is a (possibly infeasible) solution represented as a set of routes H, and the output is the set of routes obtained after the evaluation of a set of local search moves. The local search procedure is repeated as long as the incumbent solution improves with any of the local search moves.

The local search procedure of the TSMheu consists of three improving components: intra-route, inter-route, and population coverage improvement. All three components may affect the value of the objective function. The population coverage, however, can only be differentiated by the operators incorporated in the population coverage improvement component. Overall, nine local search operators are applied, of which seven deal with route improvement and two with population coverage improvement: (1) swap-intra (i.e. exchanging the positions of two ATMs on a single route), (2) 2-opt-intra (i.e. the well-known 2-opt applied within a single route), (3) 2-0-relocate-inter (i.e. relocating two consecutive ATMs of a route to another route), (4) 2-1-exchange-inter (i.e. exchanging two consecutive ATMs of a route with an ATM of another route), (5) swap-inter (i.e. exchanging an ATM of a route with an ATM of another route), (6) crossover-inter (i.e. combining the first part of a route with the second part of another route), (7) 1-0-relocate-inter (i.e. relocating an ATM of a route to another one), (8) 1-1-replace (i.e. replacing a visited ATM with an unvisited one), and (9) 2-1-replace (i.e. replacing two consecutive ATMs of a route with an unvisited one).

Algorithm 3.

LocalSearch(H)

Input: VTPMCR input data, a set of routes H=(H1,,Hm)

Output: a new set of routes H improved with local search operators

1: do

2:HH

3:  do

4:   HH,Hswapintra(H)        ⊳ intra-route improvement

5:  while HH

6:  do

7:   HH,H2optintra(H)        ⊳ intra-route improvement

8: while HH

9: while HH

10: If m > 1 then

11:do

12:   HH

13:   do

14:    HH,H20relocateinter(H)        ⊳ inter-route improvement

15:   while HH

16:   do

17:    HH,H21exchangeinter(H)        ⊳ inter-route improvement

18:   while HH

19:   do

20:    HH,Hswapinter(H)        ⊳ inter-route improvement

21:   while HH

22:   do

23:    HH,Hcrossoverinter(H)        ⊳ inter-route improvement

24:   while HH

25:   do

26:    HH,H10relocateinter(H)        ⊳ inter-route improvement

27:   whileHH

28:   do

29:    HH,H11replace(H)      ⊳ population coverage improvement

30:   while HH

31:   do

32:    HH,H21replace(H)      ⊳ population coverage improvement

33:   while HH

34:  while HH

35: end if

36: return H

5. Computational results

This section presents a computational analysis of the performance of the mixed-integer programming formulation Equation(1a)–(1l) accompanied by the family of valid inequalities (2) (hereafter MIP) and the tour-splitting metaheuristic TSMheu presented in Sections 3 and 4.

With regard to the experiments with the MIP, all inequalities (2) are added upfront to strengthen its linear relaxation. From a computational viewpoint, adding such inequalities may slow the solution process for small instances, but it is highly beneficial for solving large instances. Instead of tailoring the setting on the instances, we instead prefer to have the same setting for all instances at hand.

Both the MIP and the TSMheu have been implemented in C++, compiled with Visual Studio (2017) 64-bit, and tested on a single-core of an Intel Core i7-6700U running at 4.00 GHz, equipped with 24 GB of memory. The MIP has been solved with CPLEX 12.7 with a computational time limit (TL) of 3600s. The time limit for the TSMheu (TLH) has been set to 1800s. The corresponding gap between the best dual bound and best solution found within the TL for the MIP is reported as |θθ¯||θ|·100%, where θ is the cost of the best solution found (by the TSMheu or MIP) and θ¯ is the best dual bound achieved by the MIP within the TL. Computational times are reported in seconds throughout the section. For the TSMheu, unless stated otherwise, the following parameter settings are used: η¯0=100,η¯1=500,η¯2=30, and p = 10, 000.

5.1. Case study instances

To illustrate the relevance of the VTPMCR and performance of the proposed solution approaches, real-life banknote distribution instances were provided by Geldmaat, a joint venture that manages cash collection, counting, and distribution in the Dutch cash supply chain. As replenishment costs can be considered to be proportional to the time spent on traveling and replenishing the ATMs, the objective function is the sum of travel times and replenishment times valued at a confidential hourly cost rate. The banknote distribution instances represent the cash replenishment problems faced in seven major cities in the Netherlands: Amsterdam, Venlo, Almelo, Tilburg, Arnhem, Almere, and Gouda. For banknote distribution, a maximum limit has been imposed on the value of banknotes officially allowed to be delivered per vehicle. However, this value is never reached in practice, because the maximum route duration constraints imposed by the working regulations are much tighter. Therefore, the VTPMCR instances used have no capacity constraints. summarises the features of the seven instances, showing the number of ATMs (|S|), number of citizens (|C|), and number of available vehicles (m).

Table 2. Summary of the features of VTPMCR faced by Geldmaat in the seven cities considered.

To examine the impact of different PCRs, 11 PCR levels (i.e. 80%, 85%, 90%, 95%, 99.5%, 99.6%, 99.7%, 99.73%, 99.8%, 99.9%, and 100%) are considered for each city, thus creating a set of 77 instances. The PCR faced by Geldmaat is equal to 99.73%, as already mentioned in Section 1. Each instance features a maximum route duration constraint equal to 480 min, which corresponds to a typical working day of eight hours. Real-road distances are taken into account. Citizens (identified by their permanent residence address) are considered to be covered if a replenished ATM exists within a specific (straight) distance r from their permanent residence address. This distance extends the five kilometre rule in the analysis of the DNB (see NFPS, Citation2017). It is determined by a function of the population density and number of available ATMs in a given geographical area and was provided by Geldmaat for our seven real-life instances. geographically represents an instance for Tilburg.

Figure 3. Tilburg instance with 35 ATMs (pinned locations) and the depot (drop).

Figure 3. Tilburg instance with 35 ATMs (pinned locations) and the depot (drop).

5.1.1. Case study results

presents the detailed computational results for the 77 real-life instances. Each row of this table reports the computational results of the TSMheu and MIP for one of the 77 test instances. The following information is indicated: the city (City), the PCR (PCR), the worst (ubW), average (ubA), and best (ubB) upper bounds computed by the TSMheu along with the corresponding percentage gaps for the latter two (%ADB, %BDB) computed with respect to the best-known lower bound achieved by the MIP (lbMIP), the percentage gap between ubB and the best computed upper bound (ubMIP) produced by the MIP (%BPB); note here that negative gaps mean that the best solution found by the TSMheu is better than the best solution found by the MIP), and the average computation time of the TSMheu (cpuHeu) - all these values are averages over 10 runs. Additionally, we report the number of replenished ATMs (SB) along with the fill-rate indicating the percentage of replenished ATMs (FRATM), and the number of vehicles required (KR) in the best solution found by the TSMheu (ubB). Finally, we also report the percentage gap between the ubMIP and lbMIP (%MIP) along with the computation time spent by the MIP (cpuMIP).

Table 3. Detailed computational results on the 77 real-life instances.

Both methods were able to find optimal solutions for 49 out of the 77 instances with up to 50 ATMs. The corresponding average gaps (%BDB, %MIP) are equal to 2.3% and 2.5%, respectively. Additionally, TSMheu was able to find 25 better solutions than the MIP for the remaining 28 instances for which there is no provable optimality. Moreover, the highest fill rate (FRATM) over all instances is only 82.9%, so a significant percentage of ATMs can potentially be closed even if the entire population has to be covered.

reports the cost differences of the replenishment operations for each of the seven cities, between the current PCR Geldmaat is required to meet (i.e. 99.73%) and the other ten PCRs considered. We observe that small differences in the PCRs (e.g. 0.03% or 0.07%) affect the costs significantly. The impact differs across cities because of the differences in the dispersion of the population and ATM locations. Another important observation is that applying ATM replenishment strategies that deviate significantly from the required population coverage of 99.73% may result in either i) significantly higher total replenishment costs or ii) a violated PCR accompanied by only minor financial benefits. Replenishing ATMs that cover more than 99.73% of the population may result in higher total costs of 0.85% for a PCR equal to 99.8% and 7.15% for a PCR equal to 99.9%. On the contrary, replenishing ATMs covering less than 99.73% of the population results in reduced costs with 0.74% less for a PCR equal to 99.7%, 1.98% less for a PCR equal to 99.6%, and 2.97% less for a PCR equal to 99.5%. Thus, replenishment strategies such as the one introduced in this paper can be beneficial since they help fulfil the required PCR in a cost-efficient way. To illustrate this point, consider the seven cities representing 5.86% of the population of the Netherlands for 250 working days per year; a non-accurate replenishment strategy always covering 99.9% of the population may result in an unnecessary additional annual cost of 371,742.8 €.

Table 4. Impact of the PCR on the total cost for the seven cities of our study.

presents our aggregated computational findings for the seven major Dutch cities involving 1,003,519 citizens, 338 ATMs, and 19 cash distribution vehicles. Specifically, we show the impact of the PCR on 1) total replenishment costs, 2) the number of ATMs that need to be replenished along with the realised fill rate and number of cash distribution vehicles that need to be available for the related operations by considering the structure of the best solution found per instance, 3) the average gaps for the TSMheu and MIP, and 4) the average computation times for the TSMheu and the MIP. An interesting observation is that, on average, a PCR equal to 100% can be obtained by replenishing only 77.4% of the ATMs, while this fill rate is 64.5% for a PCR equal to 99.73%. Further, total replenishment costs, the total number of ATMs replenished, and the total number of vehicles required all rise when the PCR is set to 100%. Additional investment in distribution capacity is, however, only required if the required PCR is greater than 99.8%. On the computational side, both methods were able to compute high-quality solutions within reasonable (average) times of up to 408.9 s for the TSMheu and 2062.7 s for the MIP, especially given that the computed gaps may be overestimated, as not all the lower bounds provided by the MIP were proven to be optimal.

Figure 4. Aggregated results per PCR for seven major Dutch cities involving 1,003,519 citizens, 338 ATMs, and 19 cash distribution vehicles.

Figure 4. Aggregated results per PCR for seven major Dutch cities involving 1,003,519 citizens, 338 ATMs, and 19 cash distribution vehicles.

5.2. Synthetic instance generation

To further investigate the computational behaviour of the MIP and the tour-splitting metaheuristic TSMheu, we derived 144 new instances from nine instances of the distance-constrained capacitated vehicle routing problem (DCVRP) that can be found in Vigo (Citation1999). Specifically, we made use of the DCVRP instances with at least 51 vertices, namely: D051-06c, D076-11c, D101-09c, D101-11c, D121-11c, D151-14b, D151-14c, D200-18b, and D200-18c. From these instances, we took the following information: (a) the total number of vertices, (b) the number of vehicles, (c) the maximum route duration, (d) the service time, (e) the Euclidean 2-dimensional coordinates of each vertex, and (f) the demand of each vertex. On the contrary, some new data had to be generated, namely the demand points that can be covered by the may-visit locations (or vertices) and a radius determining the coverage distance of each location. To create the new instances, we adopted the following process: first, the minimum distance between any two locations was calculated; the initial coverage radius r0 was then set for all locations as the half of this distance. As a next step, the number of demand points for each location was set based on the demand of each location in the original DCVRP instance; the demand points were then randomly distributed around each location within a distance of r0.

The previously described process allowed us to generate a set of nine instances with a coverage radius defined in such a way so that all demand points can be covered by exactly one location. In other words, all these nine instances have an overlap equal to 0%. For each instance, 16 more were generated by considering four distinct demand point coverage requirements (DPCR) equal to 85%, 90%, 95%, 100% of the total number of demand points and four distinct overlap levels equal to 0%, 10%, 30%, 50%. An instance with overlap equal to 0% has a total number of covered equal to the number of demand points. To generate instances with increasing overlaps, r0 was gradually increased so that the total number of demand point coverings can get larger than the total number of demand points. For example, an instance with r0 and a total number of n demand points has a total amount of cr0n coverings and 0% overlap. The same instance can generate another one with overlap 10% with a new service radius r>r0 if the total amount of coverings cr0n+crncr0n/cr0n is equal to 1.1. Note that attempting to solve an instance with DPCR equal to 100% and an overlap equal to 0% is equivalent to solving a DCVRP instance without capacity constraints. Similarly, attempting to solve an instance with DPCR equal to 100% is equivalent to solving an m-CTP instance with may-visit locations. The Euclidean two-dimensional distances between the locations of the synthetic instances have been rounded up to the closest integer.

5.2.1. Results on the synthetic instances

and report on the computational behaviour of the TSMheu and MIP for a total set of 144 synthetic instances. A detailed presentation of this computational study can be found in A.

Figure 5. Aggregated computational results of the TSMheu and MIP with respect to different overlap levels.

Figure 5. Aggregated computational results of the TSMheu and MIP with respect to different overlap levels.

Figure 6. Aggregated computational results of the TSMheu and MIP with respect to different DPCR levels.

Figure 6. Aggregated computational results of the TSMheu and MIP with respect to different DPCR levels.

highlights the impact of the overlap levels on the effectiveness on the solution approaches. For each group of 36 instances with the same overlap, the top part of reports the number of feasible solutions found by the two methods, while the bottom part provides more details on which method achieves better solutions. Our main observation here is that when the overlap level gets higher, both solution methods appear to find more feasible solutions. We also observe that, overall, the TSMheu manages to find more feasible solutions. This is expected as higher overlap levels may create space to alternative solution structures that would not be possible otherwise. The quality of these solutions, however, could not be proved to be optimal as the MIP did not manage to close the optimality gap for any of the instances due to their large size. Last, both methods did not manage to find a feasible solution for 15 out of the 144 instances. Notice that for these instances a feasible may not exist due to the way we calculated the distances between the locations.

highlights the impact of the DPCR levels on the effectiveness of both solution approaches. For each group of 36 instances with the same DPCR, the top part of reports the number of feasible solutions found by the two methods, while the bottom part provides more details on which method achieves better solutions. Contrary to our observations regarding overlap levels, the main observation here is that when the DPCR level gets higher, both solution methods appear to find less feasible solutions. This can be explained by the fact that higher DPCR levels reduce the space of feasible solutions. The overall performance of the TSMheu appears to be better than the one of the MIP but again, no solutions could be proved to be optimal. Both methods did not manage to find a feasible solution for 15 out of the 144 instances. Notice again that for these instances a feasible may not exist due to the way we calculated the distances between the locations.

6. Conclusions

Cash payments are the dominant payment instrument in a large majority of sectors throughout Europe. In recent years, however, digital or contactless payments have become widely available (Esselink & Hernández, Citation2017). This trend has caused a gradual removal of ATMs in many European countries (de Groen et al., Citation2018). Inspired by the real-life case of ATM cash replenishment, we introduced and studied a new covering tour problem, namely, the VTPMCR that extends the literature by capturing the case in which only a proportion of demand needs to be covered. A compact formulation accompanied by a family of valid inequalities for efficiently solving small and medium-sized instances and a tour-splitting metaheuristic accompanied by local neighbourhood search are proposed. A computational study on 77 real-life instances showed the effectiveness of our compact formulation and of the metaheuristic for solving small and medium-sized real-life instances with up to 50 ATMs and 163,029 citizens to provable optimality. Specifically, we manage to solve 49 out of the 77 instances to optimality, with an average gap below 2.5% for both solution methods. We show that significant cost differences may occur when ATM replenishment strategies deviate from the required population coverage. Additionally, the impact of varying the minimum coverage requirements on replenishment costs and network utilisation is illustrated for seven major Dutch cities involving 1,003,519 citizens, 338 ATMs, and 19 cash distribution vehicles. Finally, to evaluate the competitiveness of both solution methods, 144 new synthetic instances are derived from a well-known set of benchmark instances. Our computational results showed that the behaviour of our metaheuristic solution approach is overall better than the one of our exact approach. Also, the problem’s parameter setting can affect the quality of the solutions obtained for both methods. Specifically, increased overlap levels and decreased coverage requirement levels seem to make the problem structure easier.

Acknowledgements

We would like to thank Geldmaat for providing real-life instances of banknote distribution. The views presented in the article are the sole responsibility of the authors.

Disclosure statement

No potential conflict of interest was reported by the authors.

Correction Statement

This article has been republished with minor changes. These changes do not impact the academic content of the article.

Additional information

Funding

The support by the Dutch Science Foundation [grant number 407-13-050] is gratefully acknowledged.

Notes

1 Geldmaat is a joint venture of the three largest banks of the Netherlands (i.e. ABN AMRO, ING, and Rabobank) responsible for providing logistical services such as cash collection, counting, and distribution.

References

Appendix.

Detailed computational results for the synthetic instances

report on the computational behaviour of the TSMheu and MIP on a total set of 144 synthetic instances. Each of the nine tables reports the computational results for 16 instances produced by the same original instance, as described in Section 5.2. For each instance, the following information is provided: the DPCR, the worst (ubW), average (ubA), and best (ubB) upper bounds computed by the TSMheu along with the corresponding percentage gaps for the latter two (%ADB, %BPB) computed with respect to the best-known lower bound achieved by the MIP (lbMIP), the percentage gap between ubB and the best computed upper bound (ubMIP) produced by the MIP (%BPB); note here that negative gaps mean that the best solution found by the TSMheu is better than the best solution found by the MIP), and the average computation time of the TSMheu (cpuHeu) – all these values are averages over 10 runs. When less than 10 runs produced a feasible solution, only ubB is provided. Additionally, we report the number of visited locations (SB) along with the fill-rate indicating the percentage of visited locations (FR), and the number of vehicles required (KR) in the best solution found by the TSMheu (ubB). Finally, we also report the percentage gap between the ubMIP and lbMIP (%MIP) along with the computation time spent by the MIP (cpuMIP).

Table A.1. Detailed computational results of the D051-06c family of instances.

Table A.2. Detailed computational results of the D076-11c family of instances.

Table A.3. Detailed computational results of the D101-09c family of instances.

Table A.4. Detailed computational results of the D101-11c family of instances.

Table A.5. Detailed computational results of the D121-11c family of instances.

Table A.6. Detailed computational results of the D151-14b family of instances.

Table A.7. Detailed computational results of the D151-14c family of instances.

Table A.8. Detailed computational results of the D200-18b family of instances.

Table A.9. Detailed computational results of the D200-18c family of instances.