TY - JOUR AU - Skorohod, Valery, A. AB - Abstract This article deals with the logistics of a Ukrainian food and consumer goods distributor. Our main goal is to reduce the field costs of the company, which comprise the agent labour costs and company's transportation charges. The mathematical model used is an integer programming optimization one. The problem is heuristically decomposed into subproblems; methods to solve these subproblems are presented. In order to reduce company costs one is able to reduce company agents' staff, to optimize agents' daily routes, to minimize overall goods delivery charges and to reduce the number of rented vehicles. The developed software system offers considerable field costs reduction (28%), decision-making transparency for the planning group and a less prominent influence of human factors on decisions and schedules. 1. Introduction To estimate overall operational efficiency of a large distribution company one should evaluate operational efficiency of a series of tasks (mathematically, all of them fall within the realms of Operation Research) ranked in descending order of importance as follows (see Fernie & Sparks, 2004): Inventory management Transport (shipping) logistics Warehousing business Commercial (business travel) agents management. This aritcle focuses on the problem of efficient logistics in order to reduce company expenditures associated with company transportation and agents labour charges. Aggressive competitive activity leads to company marketing efforts that involve personal contact of company representatives and sales managers of retailers hereinafter referred to as (commercial) agents and (sales) outlets, respectively. Such policy makes management optimize commercial agents work activities by assigning areas of responsibility, scheduling and constructing daily routes for the agents and company trucks. Mathematically, it entails to consider clustering problems, scheduling and vehicle routing problems (VRPs) as well. To determine efficient logistics, the problem was heuristically reduced to the sequence of travelling salesman problems with time windows (TSPTW) and capacitated VRPs (CVRP) as well. We applied conventional algorithms to solve the subproblems. The core idea for the heuristic is associated with geometric partitioning for the set of sales outlets catered by the company. We developed a software system to implement the mathematical model of the logistics processes. 2. Literature review Thus Osvald & Stirn (2008) focused on in-time delivery of perishable goods to customers of Slovenian farm products market with the employment of VRP with time windows and temporal dependencies (VRPTWTD). The expiration time concept is built into the mathematical statement in the article; the problem is solved using a heuristic approach based on the tabu search method. Kiranoudis & Tarantilis (2002) describe optimization of large Greek distribution company that caters meat and meat products. The problem considered in the article is featured by a number of warehouses from which the goods are delivered to butler shops around Athens. From the mathematical standpoint, the problem is stated as open multi-depot VRP (OMDVRP). The authors solved it with simulated annealing. The sugar industry of the Commonwealth of Australia is analysed in great details in the aritcle (see Higgins et al., 2006). Sugar produced by Australian mills is exported to customers of various countries through a series of ports. The aritcle formalizes the problem in order to develop optimal plans (both for production and for transportation) for each sugar mill. In mathematical terms, the problem is a mixed integer programming problem but initial data for the problem can be changed as the raw sugar market fluctuates. The problem is to minimize total costs involving shipping costs (delivery to the ports) and production costs as well. To solve the problem the authors implement two metaheuristics based upon local search. For the case studies presented above, cost efficiency essentially depends on effective goods delivery to final customers, that is, mathematically, various VRP statements. Vehicle routing combined with scheduling problems often leads to periodical VRPs (PVRP). Such problems are characterized by desirable frequency of visits to each customer within the planning horizon. Coene et al. (2010) deal with case study of Belgian company gathering waste from meat-packing plants, butler shops and supermarkets as well. To describe the periodicity of visits to a customer, the concept of customer visiting scenario was used; the concept can be extended far beyond the case study considered in this article. This aritcle also thoroughly reviews possible problem statements, case studies and solution methods for PVRP. Essential non-uniformity of customer distribution is another important aspect of real-world problems. Here it is possible to develop special heuristics based on clustering techniques. Such problem is called clustered VRP (Clustered VRP). Clustered VRP was originally stated by Sevaux & Sörensen (2008) in order to find optimal routes for delivery service. Commodities are delivered to customers in special-purpose containers. Commodities intended for nearby customers (a cluster) are supposed to be loaded into a single container. A delivery agent returns to a storehouse, when all commodities from the container are delivered to the customers. The article (see Ambrosino & Sciomachen, 2007) is concerned with a food distribution problem that generalizes the asymmetric CVRP with split delivery. The authors applied two-step heuristic procedure based on the preliminary customer set clustering. To obtain the final solution there was used local-search improvement algorithm for reducing the routing costs by changing customers among routes and splitting customers⣙ demand. The authors presented case study for an Italian company that should determine the distribution plan of two types of products, namely, fresh/dry and frozen food. A strong point of the study is the comparison of the results obtained with heuristic approach with linear relaxation and the best-integer solution obtained with CPLEX software. Shin (2011) investigates the heuristic able to solve CVRP in polynomial time O(n2.2) ⁠. The heuristic is carried out in several steps, viz., preliminary clustering, adjusting and route construction within each cluster. Two first steps are grounded on determining of geometrical centres of the clusters. Preliminary clustering is employed by Dondo & Cerda (2007) to solve VRPs with time windows. Another successful application of Clustered VRP is presented in the aritcle (see Kim et al., 2006). The case study looks into functioning of the largest North American waste-collecting company Waste Management. The authors reduce to VRPTW with possibility to visit customers repeatedly. The total number of company's customers amounts to 26,000. The key idea to solve the problem with such a large amount of data is to clusterize the data to ensure minimal routes overlapping. The clusters are obtained with the employment of modified k-means algorithm and amended using the constraints of their convex hull non-intersection. Battara et al. (2014) propose a method to find the exact solution for Clustered VRP, stated as the integer programming problem. The method utilizes a preprocessing technique to simplify appreciably a structure of the considered problem. The technique involves a quadratic number of small-dimensional travel salesman problems. The calculated routes are used to reduce a problem graph dimension; the graph is used to find the exact problem solution with the employment of various versions of branch-and-bound method. Porter's economic cluster theory was employed by Patti (2006) to develop optimal strategy for logistics of US petrochemical firm; the company substantially reduces its field costs by sourcing to co-located firms. The paper suggests practical implications for managers and government officials who are in charge of economic development. Yücenur & Demirel (2011) follow a method based on geometrically defined clusters to partition a set of customers. They solve vehicle routing problem with multiple stores using genetic algorithm. To evaluate the proposed approach, the authors compare results with those obtained with nearest neighbours method. It must be stressed that problems considered in each paper mentioned above are solved with employment of one or another type of heuristics. It is not a pure accident but it is caused by computational complexity of algorithms for problems of this kind. For the problem considered in the present paper a natural assumption able to reduce drastically problem complexity is the assumption of relative compactness for commercial agents' areas of responsibility. A similar supposition provides basis for clustered vehicle routing problem (see references above). Efficient logistics of large distribution company implies that vehicle routing (VRP) and travel salesman (TSP) problems are solved repeatedly. As far as the subproblems are NP-hard, it is hardly possible to find the optimal routes in a reasonable time. In actual practice, such problems, wherever it is necessary to solve them, are solved with the employment of ad-hoc heuristic and meta-heuristic approaches (see Toth & Vigo, 2001). Yang et al. (2013) review bio-inspired metaheuristic for various dynamic statements of TSP and multicast routing problems. Another approach (see Brito et al., 2013)) involves solution of close–open VRP with time windows associated with typical situation in logistics. Usually, a company uses its own fleet of vehicles and hires services of other companies that provide complementary resources for specific service needs or business strategy. It implies that some routes are open and the others are closed. The aim of the article is to test the variable neighbourhood search algorithm in order to solve this problem. The authors present some results using different strategies to obtain the neighbourhoods, applying real problem instances and some Solomon instances. Statement of multi-path travelling salesman problem with stochastic travel times (see Perboli et al., 2015) takes into account two realistic assumptions: that of random travel time and that of existence of set of paths between any two nodes. As far as the problem similar to those discussed above usually depends on lots of various factors specific to the problem and as procedures for its solution often comprise plenty of sophisticated algorithms, it is quite natural to develop decision support system (DSS) as a final phase of problem analysis. The article (see Kremic et al., 2006) provides theoretical frameworks for DSSs for supply chains; the authors identify a number of trends and relationships for outsourcing practices. They have thoroughly reviewed more than 200 publications concerned with various approaches. The article (see Mendoza et al., 2009) describes DSS developed for Bogota's water and sewer company. The system schedules for auditors ‘visiting clients recently serviced by the contractor to verify that the work was executed properly’ and provides them with optimal routes. Suzuki (2012) describes SDD developed to minimize, on the one hand, lengths of truck routes—and thereby total fuel consumption—and, on the other hand, to select fuel station with the cheapest prices; the DSS presents a trade-off between these two criteria. Mattiussi et al. (2014) use formal frameworks to deal with multi-objective and multi-attribute decision making in order to develop DSS for sustainable plant design and production. 3. Problem description When the results presented in the article were obtained, the total number of sales outlets catered by the company amounted to 846. The majority of the sales outlets are situated within the boundaries of Dnepropetrovsk Fig. 1(b), while a certain number of outlets is scattered around Dnepropetrovsk region Fig. 1(a). The maximal distance between the company central warehouse and a sales outlet is about 140 km. Figure 1(a) displays outlets scattering around the region, while Fig. 1(b) presents the respective spatial distribution within the city boundaries. The yellow label denotes the central warehouse. The sales outlets situated outside city boundaries may be naturally clustered, whereas the situation is reversed for the city outlets: they are distributed rather uniformly within city boundaries. Fig. 1. Open in new tabDownload slide Outlets scattered around the region (a) and within the boundaries of Dnepropetrovsk (b). The colour figure is available online. Fig. 1. Open in new tabDownload slide Outlets scattered around the region (a) and within the boundaries of Dnepropetrovsk (b). The colour figure is available online. The company works with five various commodity groups: confectionery, alcoholic beverages, household chemistry goods, goods for children and small wares. The number of outlets that sell commodities of a certain group is presented in the last row of Table 1. The total number of outlets the company works with is 846; the number of outlets that sell commodities of all groups is 416. Typically, all groups of commodities are available in large supermarkets, while small sale outlets deal with a single group or several groups. Various commodity groups account for the fact that company commercial agents are subdivided into groups, likewise, and agents belonging to a certain group work with goods of the respective commodity group only. Table 1. Group characteristics Visiting frequency . Group 1 . Group 2 . Group 3 . Group 4 . Group . 2 4 3 3 4 1 4 695 618 537 551 389 8 57 53 55 53 32 Total 756 674 595 608 422 Visiting frequency . Group 1 . Group 2 . Group 3 . Group 4 . Group . 2 4 3 3 4 1 4 695 618 537 551 389 8 57 53 55 53 32 Total 756 674 595 608 422 Open in new tab Table 1. Group characteristics Visiting frequency . Group 1 . Group 2 . Group 3 . Group 4 . Group . 2 4 3 3 4 1 4 695 618 537 551 389 8 57 53 55 53 32 Total 756 674 595 608 422 Visiting frequency . Group 1 . Group 2 . Group 3 . Group 4 . Group . 2 4 3 3 4 1 4 695 618 537 551 389 8 57 53 55 53 32 Total 756 674 595 608 422 Open in new tab An agent makes the round of outlets and promotes commodities of his group. Company's policy presumes that each outlet should be visited by a single agent of each group only. According to the gained experience it is reasonable that agents of different groups visit a sales outlet at the same days of week wherever it is possible. Furthermore, a desirable number of agents' visits per month to an outlet (visit frequency) is set for each group by an outlet representative, while particular days the outlet to be visited by agents of a particular group hereinafter referred to as a (visiting) scenario are to be determined. An agent should visit an outlet within time intervals defined by the outlet management; if an agent arrives to an outlet out of the specified range the agent should wait till the nearest interval starts. An agent is supposed to stay at an outlet within 15 min. Daily agent route starts and finishes at the central warehouse. Agent's working time is not to exceed 8 h for each day and 5 days (from Monday till Friday) per week. An agent uses a vehicle belonging to the company fleet to follow a route, and a cruising speed is assumed to be constant and equal to 28 and 45 km/h for routes within and outside the boundaries of Dnepropetrovsk, respectively. It allows calculating a travel time matrix for all outlet pairs of the net. As a result of an agent visit to an outlet, procurement request (demand to deliver) for commodities belonging to the respective group is generated, and thereby the total mass of commodities (of this group) to be delivered to the outlet is specified. The company delivers commodities using either vehicles of own or rented (if necessary) fleet. The fleet consists of five delivery trucks GAZ 3309 with vehicle capacity 4500 kg each. Commodities of different groups may be delivered with the employment of the same vehicle, without any compatibility constraints. To reduce company expenditures (the reduction is the primary goal of this study) one is able to reduce the agent staff and to cut back salary expenses, as a result; to optimize agents' daily routes; to minimize overall goods delivery charges; to cut down the number of rented vehicles. To reduce the agent staff one may assign the most compact outlet set to be visited to each agent and thus increase the number of outlets visits by a single agent. Admittedly, it is conventional that an agent was in charge for a certain area. To optimize an agent's daily route one may determine the best visiting order for the respective set of outlets, taking into account constraints of the maximal daily agent working time and time intervals within which the outlets are supposed to be visited. To reduce expenditures associated with two last items, one may optimize routes for vehicles delivering commodities to outlets. It is reported to be practicable, firstly, to deliver goods of various groups ordered by a single outlet at the same day using the same delivery vehicle and, secondly, to equalize daily amounts of delivered goods over days of a week. It becomes feasible if agents of various groups visit an outlet on the same day of a week whenever possible. 4. Mathematical model We use the following notations to formulate the mathematical model for the problem under discussion. I={1,…,M} is a set of indices for commodity groups and for the respective groups of agents. Graph G=(V,A) represents a net of sales outlets with a vertex set corresponding to visiting outlets and an edge set corresponding to routes that connect them. V={0,1,…,N} ⁠, where N is the total number of outlets; 0th vertex corresponds to start and finish point for agents (the company central warehouse). The edge connecting ith and jth vertices is associated with travel time tij as well as with costs sija (for agents' driving cars) and with sijb (for trucks) proportional to distance between the respective sales outlets (fleet mileage is taken as a factor to calculate the quantities). The distance matrix is considered to be symmetric. Vj⊆V,j=1,M¯ is a set of indices for outlets where the jth group commodities are present. ∪j=1MVj=V,0∈Vj,∀j=1,M¯ ⁠. The planning horizon is T working days (⁠ T=20 that is 4 weeks of 5 days). A desirable visiting frequency (within the range of T days) is known for each outlet. The vector of desirable frequencies (for various agent groups) for ith outlet is denoted as fi=(f1i,f2i,…,fMi). The value fji=0⇔i∉Vj and, respectively, jth group agents do not visit the outlet. Particularly, the value fji=2 means that ith sales outlet is visited by a jth group agent twice per month, viz., each 2 week; the value fji=4 is equivalent to a single visit per week; and, lastly, the fji=8 implies that the outlet is visited two times per week; the visits are to be separated by 2 calendar days at least. The above-mentioned demands to visits to sales outlets can be formalized with the employment of the concept of a visits scenario. Each outlet must be visited in compliance with a certain scenario c∈C ⁠, where C is a set of admissible scenarios. Actually, a scenario is defined as the subset of a set Ψ={1,…,T} that describe days of visits to a certain outlet. To represent the set C ⁠, we introduce a matrix SC with |C| rows and T columns such that SCjt={1,jth scenario includes tth day0,otherwise. Thus each sale outlet has a vector of possible scenarios ci=(c1i,c2i,…,cMi) with natural condition |cji|=fji,i=1,N¯,j=1,M¯. Time period to visit ith outlet is constrained by two interval time windows: [a1i,b1i]∪[a2i,b2i],0≤a1i≤b1i≤a2i≤b2i≤1440,0≤a10=b20≤a10=b20≤1440. Hereinafter time is presented in minutes elapsed since 0 a.m. η designates a duration an agent is to stay at an outlet. The value is assumed to be the same for all outlets. Another characteristic for ith sale outlet is a vector of demands for commodities of various groups wi=(w1i,w2i,…,wMi) ⁠. To calculate elements wji we use averaged demands gained from preceding experience for jth commodity group. The total demand over all commodity groups for ith outlet is di=∑j=1Mwji. One should emphasize that the vectors wi are used only to schedule agents' optimal routes at the end of the preceding month, whereas actual outlets demands may differ and differ indeed from these estimates. To determine actual optimal routes for delivery vehicles, it is necessary to solve VRPTW using real demands daily. Here kj denotes the number of jth group agents, while sj is an agent salary for the considered period T ⁠. 4.1. Problem variables, constraints and objectives To formulate the problem we introduce the following binary variables. xijk={1,ith outlet is visited by kth agent of jth group0,otherwise. i∈V, j∈I, k=1,kj¯ ⁠. yijs={1,ith outlet is visited by an agent of jth group according to sth scenario0,otherwise. i∈V, j∈I, s∈C ⁠. The natural constraints hold true for the variables: ∑k=1kjxijk={1,i∈Vj,0,i∉Vjj∈I,i∈V.(4.1) ∑s=1|C|yijs=1, j∈I,i∈V.(4.2) ∑t=1TSCst=fji, where yijs=1, i∈V,j∈I.(4.3) The constraint (4.1) guarantees that each outlet is visited by one, and only one, agent, if the commodities of the respective group are available in the outlet. The constraint (4.2) ensures that a visiting scenario for the outlet is unique, and, finally, the condition (4.3) implies that outlets are visited with predefined frequencies. In terms of the variables introduced, the set of outlets visited by kth agent of jth group at tth day of a month may be defined as Vjkt={i∈V:xijk⋅yijs⋅SCst=1}, j∈I,k=1,kj¯,t=1,T¯. τjkt is the minimal time for the agent to move along the route comprising all outlets of the set Vjkt ⁠; the route starts and finishes at the point 0 and the time is calculated regarding travel time between outlets t ⁠, service time η and possible waiting time; σjkt is transportation charges for the respective route. τjkt≤480, j∈I,k=1,kj¯,t=1,T¯(4.4) The non-equalities (4.4) bound agents' daily working time. The sets Vjt=∪k=1kjVjkt,j∈I,t=1,T¯ consist of outlets visited by jth group agents at tth day. The family of sets {Vjt,j∈I} is defined by outlets with commodities to be delivered to the next t+1th day. An estimate for the total quantity of commodities being delivered at t+1th day is given by the following expression γt+1=∑j=1M∑i∈Vjtwji. If L is a truck vehicle capacity, P is the number of company trucks and r is a rent price for a single truck per day, then an estimate for the required number of trucks for t+1th day is given by pt+1=⌈γt+1L⌉ and an estimate for the number of trucks the company has to rent at this day is given by max{pt+1−P,0} ⁠. The set Vt+1=∪j∈IVjt, t=1,T¯(4.5) describes such sales outlets that commodities have to be delivered to at t+1th day of a month. The solution of VRP obtained for the set Vt+1 allows estimating company transportation charges for t+1th day θt+1 ⁠. The objective of the problem considered can be expressed using the foregoing notations as I=I1+I2+I3+I4,(4.6) where I1=∑j=1Mkjsj is the total direct agent labour cost summed up over all groups; I2=∑j=1M∑k=1kj∑t=1Tσjkt is the total agents' transportation charges; I3=r⋅∑t=1Tmax{pt+1−P,0} is the total company expenditures for truck rent and I4=∑t=2T+1θt is the total company transportation charges to deliver commodities to the sales outlets. As far as all summands of (4.6) are of financial nature, it is reasonable to sum them up with unit weights. Thus the problem considered is stated as min I(4.7) constrained by (4.1)–(4.4). Thus formulated, the problem is an integer programming statement with large number of variables. Besides that the solution of the problem in question allows scheduling for agents for T days ahead and the schedule is not changed within the time length. While values for I3 and I4 are inevitably estimated (their values depend on wji ⁠). As far as actual demands are received from outlets representatives, initial data for the VRP are corrected, and this problem formulated as min θt,1≤t≤T is resolved daily. To calculate the value of I2 one should construct the agent's optimal route for a given set of outlets for every agent of every group in every day of planning horizon. In turn, the problem to construct the route refers to the travelling salesman problem with multiple time windows (TSPMTW) as it was stated by Pesant et al. (1999). The calculation of the value of I4 involves construction of the optimal vehicle routes for every company truck or rented one that is CVRP (see VRP1 statement in Toth & Vigo, 2001; Golden et al., 2008). In spite of simple heuristics used to solve the TSPMTW and CVRP problems (see Section 5), the whole problem remains computationally prohibitive, and a certain heuristic is necessary to cope with it. 4.2. Construction of agent daily route ( TSPMTW) Lets denote the set of outlets visited by a single agent within a single day as V={0,1,…,n}, where the company warehouse is 0. Actually, the renumerated elements of the sets Vjkt constitute the set V. For each pair of points i and j both transportation charges sija (calculated using fleet mileage for agent car) and travel time tij are known, as they can be readily computed from initial data of the problem. As pointed out above each point is characterized by two interval time windows [a1i,b1i]∪[a2i,b2i] and agent stay time η as well. Subproblem variables are binaries zij∈{0,1},i,j∈V such that zij=1 if and only if ith route point precedes immediately to jth one. An integer vector T=(Ti,i=0,n+1¯) determines time points of agent's arrival at points of the route. The element Tn+1 determines the time when the agent returns to the company warehouse. In these terms, the subproblem is stated as follows. The objective min∑i∈V∑j≠isijazij minimizes the total route cost, while constraints ∑i∈Vzij=∑j∈Vzij=1,∀i,j∈V guarantee that each point is visited only once. The following constraints eliminate cycles that do not include all elements of V ∑i∈S∑j∉Szij≥1, ∀S⊂V,S≠∅∑i∈S∑j∈Szij≤|S|−1,  S⊂V. Finally, time window constraints are (a1i≤Ti≤b1i)∨(a2i≤Ti≤b2i)zij=1⇒Ti+η+tij≤Tj 4.3. CVRP for delivery trucks Initial data for the subproblem are the set Vt+1 (the sales outlets to which commodities are to be delivered at t+1th day of a month) as well as the total demands di,i∈Vt+1 for outlets of the set indicated. Transportation charges (transit cost) between points of a route sijb,i,j∈Vt+1 ⁠, number of trucks used pt+1 and their capacity are supposed to be known. Combinatorially, a solution for this problem consists of a partition of the set Vt+1 into pt+1 routes {R1,…,Rpt+1} (each route satisfies the condition ∑j∈Ridj≤L ⁠) and the respective permutation αi that determines the visiting order for the route. Such problem statement implies that there is a fully connected undirected graph with a vertex set Vt+1 and edges weighted by sijb ⁠. The desired solution is the union of sets of pt+1 cycles with unique intersection point corresponding to the company warehouse. Each cycle is associated with a single truck daily route. With a correspondence established between each edge of the graph and binary variable zij∈{0,1} ⁠, it is possible to formulate this problem as the following integer programming problem: min∑j∈Vt+1∑j∈Vt+1sijbzij∑j∈Vt+1z0j=∑j∈Vt+1zj0=pt+1∑i∈Vt+1zij=∑j∈Vt+1zij=1,∀i,j∈Vt+1∖{0}∑i∈S∑j∉Szij≥⌈1L∑i∈Sdi⌉,∀S⊂Vt+1\{0},S≠∅ The first two constraints guarantee that all sales outlets belonging to set Vt+1 are visited only one time. According to Toth & Vigo (2001), the last constraint ensures both connectivity of the solution and the vehicle capacity requirements. The right term of this constraint provides the minimal number of vehicles needed to serve any one of set of customers S. Thus any cut (S,Vt+1∖S) should be crossed in both directions by required number of trucks. 5. Solution procedure In this article, an agent's area of responsibility is defined as a convex hull for the cluster (set) of outlets visited by the commercial agent. To construct these convex hulls, the outlets i∈V are treated as points with geographical latitudes and longitudes (lati,longi) ⁠. Another assumption is that the responsibility areas do not overlap. Within the framework of these assumptions, the area comprising the points visited by the agents of a certain group is supposed to be partitioned into non-overlapping convex subareas. The following algorithm outlines the approach used to solve the optimization problem (4.7) constrained by (4.1)–(4.4). All operators used in algorithm description are discussed at length in the following subsections. 5.1. Initial clustering To construct initial approximation to areas of responsibility for jth group of agents, the set of points visited by agents of this group Vj should be partitioned into such subsets {Vjk(0)} that their convex hulls are not overlapped ∪k=1kj(0)Vjk(0)=VjConv(Vjk(0))∩Conv(Vji(0))=∅,k≠i Hereinafter, Conv(A) denotes a convex hull for a set of points {(lati,longi),i∈A} ⁠. To construct the partition, one selects randomly kj(0)=0.2⋅|Vj| outlets Gj={gjk,k=1,…,kj(0)} to specify the centres for the clusters Vjk(0) ⁠. Then one constructs Voronoi diagram for the set Gj (see De Berg et al., 2000); outlets happen to belong to the Voronoi set with centre gjk are considered to belong to cluster Vjk(0) ⁠. 5.2. Neighbouring relationship for initial clusters Voronoi diagram provides one with a natural definition of neighbouring clusters, namely, two clusters are recognized as neighbouring, if their Voronoi sets possess a joint edge. If one considers dual object to Voronoi diagram—Delaunay triangulation (see De Berg et al., 2000), one can ascertain neighbouring clusters as clusters with centres linked by an edge of Delaunay graph. Ξjk(0) denotes a set of all neighbours for cluster Vjk(0) ⁠. A part of initial clustering for the first group of agents is presented in Fig. 2. Blue discs stand for points of Gj ⁠; solid blue lines represent boundaries of Voronoi sets and red lines correspond to Delaunay graph edges. Obviously, the edges link neighbouring clusters centres. Green polygons are convex hulls of the clusters. Fig. 2. Open in new tabDownload slide Initial clustering and neighbouring relationship. The colour figure is available online. Fig. 2. Open in new tabDownload slide Initial clustering and neighbouring relationship. The colour figure is available online. 5.3. Partition infeasibility measure We introduce two characteristics to assess quality of the current solution. The first one, used to represent infeasibility measure for schedule of kth cluster of mth group, is a quantity umk=maxt=1,T¯max{0,τmkt−480} ⁠, where τmkt is a working time for kth agent of mth group during tth day. Aggregated violation of such constraints for all agents is formalized by partition infeasibility measure U=∑m=1M∑k=1kmumk. Here U=0 for feasible solutions. To find values of quantities τmkt , points of clusters Vmk (i.e., points visited by kth agent of mth group) must be allotted among days within the planning horizon. Using feasible scenarios vectors ci=(c1i,c2i,…,cMi),i∈Vmk ⁠, a solution of this problem can be represented as an integer vector ξmk=(Ap11,Ap22,…,Ap|Vmk||Vmk|), Apii∈ci Components of the vector ξmk correspond to visit scenarios for the respective outlets. Given a vector ξmk ⁠, it is easy to determine the set of points visiting by kth agent of mth group during tth day Vmkt, m=1,M¯,k=1,km¯,t=1,T¯ (Day_points stand for this operation in algorithm description). Furthermore, TSPMTW is solved for each set Vmkt in order to calculate values of τmkt ⁠. Lexicographically ordered values of τmkt,t=1,T¯ are used to compare two different schedules A and B constructed for points belonging to Vmk ⁠. Namely, a schedule A is recognized to be better than a schedule B, if A≺B⇔(τmkt1(A)≥τmkt2(A)≥…≥τmktT(A))∧(τmkt1(B)≥τmkt2(B)≥…≥τmktT(B))∧ (∃t=1,T¯:τmks(A)=τmks(B),∀s