Mathematical Problems in Engineering

Volume 2016, Article ID 3690474, 13 pages

http://dx.doi.org/10.1155/2016/3690474

## A Comparison of Local Search Methods for the Multicriteria Police Districting Problem on Graph

^{1}UC3M-BS Institute of Financial Big Data, Charles III University of Madrid, Getafe, 28903 Madrid, Spain^{2}Deputy Directorate for Operations, Spanish National Police Corps, 28010 Madrid, Spain^{3}Statistics and Operations Research Department, University of Granada, 18071 Granada, Spain

Received 8 June 2015; Revised 29 January 2016; Accepted 16 February 2016

Academic Editor: Francisco Chicano

Copyright © 2016 F. Liberatore and M. Camacho-Collados. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

#### Abstract

In the current economic climate, law enforcement agencies are facing resource shortages. The effective and efficient use of scarce resources is therefore of the utmost importance to provide a high standard public safety service. Optimization models specifically tailored to the necessity of police agencies can help to ameliorate their use. The Multicriteria Police Districting Problem (MC-PDP) on a graph concerns the definition of sound patrolling sectors in a police district. The objective of this problem is to partition a graph into convex and continuous subsets, while ensuring efficiency and workload balance among the subsets. The model was originally formulated in collaboration with the Spanish National Police Corps. We propose for its solution three local search algorithms: a Simple Hill Climbing, a Steepest Descent Hill Climbing, and a Tabu Search. To improve their diversification capabilities, all the algorithms implement a multistart procedure, initialized by randomized greedy solutions. The algorithms are empirically tested on a case study on the Central District of Madrid. Our experiments show that the solutions identified by the novel Tabu Search outperform the other algorithms. Finally, research guidelines for future developments on the MC-PDP are given.

#### 1. Introduction

The Police Districting Problem concerns the definition of sound patrolling sectors in a police district. An extensive literature review on this family of problems is given by Camacho-Collados et al. [1]. The newest member of this family is the Multicriteria Police Districting Problem (MC-PDP) [1]. The novelty of this model stands in that it evaluates the workload associated with a specific patrol sector according to multiple criteria, such as area, crime risk, diameter, and isolation, and that it finds a balance between global efficiency and workload distribution among the agents, according to the preferences of a decision-maker (i.e., the service coordinator in charge of the patrolling operations in a police district). The MC-PDP was originally formulated in collaboration with the Spanish National Police Corps (SNPC) and it was solved by means of a fast heuristic algorithm that is capable of rapidly generating patrolling configurations that are more efficient than those adopted by the SNPC. When combined with Predictive Policing methodologies [2], the MC-PDP allows designing patrolling configurations that focus the distribution of resources on the most relevant locations, with a consequential improvement in the effectiveness of patrolling operations. This is the rationale of the paper by Camacho-Collados and Liberatore [3] that presented a Decision Support System (DSS) for the implementation of a paradigm of Predictive Patrolling in the SNPC.

The contributions of this paper are the following. In this research we extend the applicability and the quality of the solutions found by the MC-PDP with the objective of improving the performance of the DSS for Predictive Policing. In particular, we tackle one of the major limitations of the original formulation of the MC-PDP and propose and compare new heuristic algorithms. More specifically, the original MC-PDP was formulated to partition a grid. In this paper we formulate the MC-PDP to generate patrolling district on a generic graph, without any assumption on its topology. This allows for the definition of patrolling configurations using census districts as the atomic unit of patrolling. As explained by Sarac et al. [4] the use of a structure based on census districts is desirable as it allows easy access to demographic data and, at the same time, it is suitable for use by other agencies. Translating the MC-PDP to a generic graph requires the definition of an efficient and practical condition for set convexity that we derive from the classical definition of convexity in graphs. In terms of solution methodologies, we propose three local search algorithms for the MC-PDP on a graph, including a Tabu Search (TS). Thanks to its ability to escape from local optima and its versatility, the TS has been successfully applied to a very wide breadth of contexts and problems, such as parameter optimization [5], vehicle routing [6], hardware/software partitioning [7], and job shop scheduling [8]. The MC-PDP is a variant of the graph partitioning problem. The first application of the TS to the graph partitioning problem is due to Rolland et al. [9]. In recent years, the TS has been successfully applied to this family of problems, either individually or combined with other approaches [10–14].

The proposed algorithms are extensively tested on a real dataset based on a case study of the Central District of Madrid. Their performances are then compared and analyzed statistically. Finally, the best solutions found by the algorithms are illustrated and operational insights are drawn.

The remainder of the paper is structured as follows. The following section presents a review of the most relevant contributions to the literature. In Section 3 we formulate the MC-PDP for a generic graph and propose a methodology to deal with the problem of partitioning a generic graph into convex blocks. Next, we present in detail the local search algorithms developed for the solution of the models. In Section 5 we explain the dataset and the computational experiments run to test the algorithms. Also, we analyze the results and provide insights on the solutions obtained. Finally, we conclude the paper with some guidelines for future research.

#### 2. Related Work

In his seminal work, Mitchell [15] proposes a clustering heuristic for the redesign of patrol beats in Anaheim, California. The underlying optimization model considers both the total expected weighted distance to incidents and a workload measure defined as the sum of the expected service and travel time. A different approach is presented by Bodily [16] that adopts a utility theory model that takes into consideration the preferences of the citizens, the administrators, and the service personnel. The problem is solved by means of a local search algorithm that explores the solution space by swapping elements between the sectors. Benveniste [17] includes for the first time workload equalization criteria. The final model was nonlinear and stochastic in nature and was solved by means of an approximation algorithm. D’Amico et al. [18] propose a simulated annealing algorithm. The solutions identified by the search algorithm are evaluated by an external software program, PCAM [19, 20], that calculates sector workloads. The external routine is based on a queuing model that computes relevant statistics regarding a sector, including the optimal number of cars to be allocated. Equity in terms of area to be patrolled is enforced in the model by constraining the ratio of the size of the largest and the smallest sectors. A simpler approach is presented by Curtin et al. [21] that tackle the problem of partitioning a police district by using a covering model that maximizes the number of incidents that are close to the centers of the sectors. Five years later, the authors extend their approach [22] and include backup coverage (e.g., multiple coverage of high priority locations). Finally, Zhang and Brown [23] propose a heuristic algorithm for the generation of districting, evaluated using an agent-based simulation model. The MC-PDP [1, 3] differs from those proposed so far in the literature in a number of relevant aspects: (i)It focuses on crime prevention rather than detention. For this reason it does not consider the emergency calls but it is based on a crime risk estimation. (The crime risk estimation can be obtained by a Predictive Policing model, as illustrated by the authors in [3].) Previous approaches [18, 23] optimize the reaction time to crime incidents, that is, crimes that have already happened. (ii)It optimizes at the same time attributes of area, crime risk, compactness, and support. In particular, mutual support is a novel attribute that differs from backup coverage [22] in that the former regards the possibility of receiving backing in any point of the patrol sector from any other agent in the district, while the latter only concerns the overlapping areas between patrol sectors. (iii)It considers the decision-maker’s preferences in the objective function. In the formulation proposed by D’Amico et al. [18], the users can specify their preferences only by adjusting the righthand side coefficients in the constraints, while, in the models presented by Curtin et al. [21, 22], no user preference is considered. (iv)It requires a limited amount of data to function, while all the approaches previously presented in the literature require specific information, such as the time, location, and service time of incidents and emergency calls, which might not be available. For the same reason, these methodologies do not take into consideration, and hence they cannot be extended to, all the nonviolent crimes that are not reported by emergency calls, such as pickpockets, theft of vehicles, or property damage.

In this paper we extend the first formulation of the MC-PDP [1, 3], solving the problem on a generic graph rather than on a grid. This improvement allows for the definition of patrolling configurations using census districts as the atomic unit of patrolling which results in an increased operationality of the patrolling configurations designed by the problem, a simpler access to demographic data, and favors communication with other agencies. To translate the MC-PDP into a generic graph we devised a definition of set convexity specifically tailored to the structure of the problem. In terms of methodology, we propose and compare three local search algorithms that are capable of generating good patrolling configurations in a short time. In fact, the MC-PDP has been designed to be included in a Decision Support System. Therefore, the ability of generating good patrolling configurations in a short time is of primary importance. In Section 5 we show that the solutions obtained by two of the new algorithms outperform those of the former approach. All these improvements greatly enhance the realism, applicability, and effectiveness of the MC-PDP, compared to the previous formulation and solution methodology [1, 3].

The MC-PDP is also related to another family of problems, namely, the Convex -Partition Problem. The Convex -Partition Problem concerns the partition of a graph into convex subgraphs. Research on the decision form of the problem is extremely recent and the first contributions on the topic are due to Artigas et al. In two subsequent articles [24, 25] the authors prove that the problem of deciding if a graph can be partitioned into convex subgraphs is -complete in general and polynomial for cographs. In recent years, it has been shown that this problem is also polynomial for bipartite graphs for all [26], and for planar graphs when [27]. However, determining whether the problem is polynomial for planar graph and (which is the premise of the MC-PDP) is still an open question.

So far, the research on the problem has focused primarily on its decision form (meaning establishing whether a graph can be partitioned into convex subsets). To the best of the authors’ knowledge, the literature has a lack of models that tackle the problem of optimizing convex partitions, that is, partitioning a graph into convex subgraphs while optimizing an objective function or a set of criteria. In fact, optimization of convex partitions is a prerogative of the districting problem, a special case of the graph partitioning problem to which the MC-PDP belongs, and most of the research in the area focused on proposing metrics of convexity for districting problems (see, e.g., [28–30]). With respect to the Police Districting Problem, the only model that includes a measure of graph convexity in the optimization process, apart from the MC-PDP, is that proposed by D’Amico et al. [18]. However, the authors recognize that their definition of convexity “is somewhat unclear.” In fact, instead of relying on the formal definition of convexity as we do for the MC-PDP, they consider a set of feasibility constraints that, according to the authors, should ensure convexity in the final solution. Nonetheless, the constraints seem to be rather arbitrary and no formal proof is given.

In the following section we formulate the MC-PDP for a generic graph and propose a methodology to deal with the problem of partitioning a generic graph into convex subsets.

#### 3. The Multicriteria Police Districting Problem on Graph

The MC-PDP concerns the design of patrol sector configurations that are efficient and that distribute the workload homogeneously among the police officers. A solution to the MC-PDP defined on graph is partition of set of nodes . Each block of the partition is a connected subset of the node set and represents a patrol sector. Therefore, from this point onward the terms “partition block,” “patrol sector,” and “sector” will be used interchangeably. The MC-PDP requires the partition blocks to be convex. This condition has been introduced to ensure that all the patrol sector would be intrinsically efficient; that is, the agent can move within the sector always following the shortest path. Finally, the number of subsets in the partition must be exactly . The formal elements of the model are presented in the following.

##### 3.1. Data and Properties

We define the MC-PDP on a generic graph , with being the set of nodes and the set of edges. For each node the following data is required: (i): total length of the streets to be patrolled at node . (ii): risk of crime at node .Also, each edge is characterized by the following: (i): length of edge .Finally, is the number of patrolling sectors to be defined.

Additionally, on the set of nodes and all of its subsets we define the following operations: (i): shortest path distance between nodes computed using only the nodes in . This distance is calculated considering the length of the edges in the path. (ii): shortest edge distance between nodes computed using only the nodes in . This distance is calculated considering exclusively the number of edges in the path.Given a node subset , the shortest distances between all the nodes are obtained using the Floyd-Warshall algorithm [31, 32]. The algorithm is initialized with for , and with the adjacency matrix for . Other relevant properties defined on the set of nodes and all of its subsets are as follows: (i): diameter of subset . The diameter is the maximum distance between two nodes belonging to ; that is, . (ii): center of subset . We define the center of a subset of nodes as the node belonging to the subset that minimizes the maximum risk-weighted distance to all the other nodes in the subset. In case of ties, the node that minimizes the sum of the risk-weighted distances is chosen. In summary, , where stands for lexicographic optimization (i.e., hierarchical optimization) of the two objectives. We consider risk-weighted distances as we assume that the agents should spend more time patrolling the nodes having greater risk.

##### 3.2. Patrol Sector Attributes and Workload

The MC-PDP evaluates the patrol sectors defined by a partition according to four main attributes: area, isolation, demand, and diameter. All the attributes, explained in the following, are expressed as dimensionless ratios, so as to be comparable.

*(i) Area, *. This attribute is a measure of the size of the territory that an agent should patrol. It is expressed as the ratio of the area encompassed by patrol sector to the whole district area:

*(ii) Isolation, *. In the MC-PDP, two patrol sectors support each other if the distance between their centers is less than or equal to a defined constant, . The value of can be provided by an expert. Alternatively, for the MC-PDP on graph we recommend the following:that is, we suggest to be set equal to the total diameter of the graph divided by twice the square root of the number of subsets to be defined. The support received by a patrol sector can be calculated bythat is, the support is equal to the number of sectors whose centers are within a distance of from the center of the currently considered subset. Therefore, the isolation of sector is computed as

*(iii) Risk, *. This attribute is a measure of the total risk associated with the sector that an agent patrols. It is expressed as the ratio of the total risk of sector to the whole district risk:

*(iv) Diameter, *. The diameter has been introduced in the MC-PDP as an efficiency measure. In fact, the diameter can be interpreted as the maximum distance that the agent associated with the sector would have to travel in case of an emergency call. Therefore, a small diameter results in a low response time. The diameter measure used to evaluate a patrol sector is the ratio of the subset diameter to the diameter of the graph, that is, the maximum possible diameter:The decision-maker can express their preference on each attribute by defining a normalized vector of weights . By linearly combining the attributes with preference weights we can compute a measure of workload of a sector as

##### 3.3. Objective Function

The objective of the MC-PDP is to generate patrolling configurations that are efficient and, at the same time, that distribute the workload homogeneously among the patrol sectors. The objective function of the MC-PDP takes into consideration the preferences of the decision-maker for these factors by introducing coefficient , , that expresses the decision-maker’s preference between optimization and workload balance:The term represents the worst workload, while the term is the average workload. This objective function allows the decision-maker to examine the trade-off between optimization and balance by a parametric analysis. In fact, by varying , the model gives a range from optimization () to balance ().

##### 3.4. Problem Formulation

We can now present a mathematical formulation for the MC-PDP:

The model optimizes the objective function (8). Constraints (10)–(12) represent the conditions held by partition defined on ; that is, should not contain the empty set (10) and the partition blocks cover (11) and are pairwise disjoint (12). Restriction (13) concerns the partition cardinality and enforces the number of partition blocks to be exactly . Conditions (14) and (15) regard the geometry of the patrol sectors. In fact, is an indicator function that equals 1 when is connected and zero otherwise, and is an indicator function that equals 1 when is convex and zero otherwise. The model establishes that only connected partition blocks are feasible. This condition implies that an agent cannot be assigned to patrol sectors composed of two or more separate areas of the city. Furthermore, all the partition blocks are required to be convex. When a subset is convex, it is also optimally efficient in terms of distance between the points. In fact, in a convex subset there is a minimal shortest path connecting any pair of points. Therefore, this condition allows for the generation of patrol sectors that are more efficient in terms of movement inside of the area. In the following, we illustrate more in detail the concept of graph convexity.

##### 3.5. A Note on Graph Convexity and on Convex Graph Partitioning

Let be a finite simple graph. Let , its closed interval being the set of all nodes lying on shortest paths between any pair of nodes of . The set is convex if . In this work, the following equivalent condition is applied:

Lemma 1. *Equation (16) is a proper condition for set convexity.*

*Proof. *Let be a nonconvex set. It follows from the definition that . Let us consider nodes and node such that and . It follows that . In fact, if it were that then would need to belong to . Now let be a convex set. It follows from the definition that . More specifically, all the nodes lying on the shortest path in also belong to . It follows that, necessarily, .

Artigas et al. [25] prove that the problem of deciding if a graph can be partitioned into convex sets is -complete. As we do not make any assumption on graph , convexity for all the patrol sectors could not always be possible. In order to always obtain a solution, we relax constraint (15) and penalize its violation in the objective function by means of a Lagrange multiplier. The resulting program is

Coefficient is the Lagrange multiplier associated with the convexity constraint (15). We suggest setting . In fact, as , setting translates into always preferring a convex graph partition over a nonconvex one, regardless of the value of .

#### 4. Local Search Methods for the MC-PDP

Local search algorithms move from solution to solution in the space of candidate solutions (the search space) by applying local changes, until certain termination criteria are satisfied: for example, a solution deemed optimal is found or a time bound is elapsed. One of the main advantages of local search algorithms is that they are* anytime algorithms*, which means that they can return a valid solution even if they are interrupted at any time before they end. For this reason, they are often used to tackle hard optimization problems in a real-time environment, such as the MC-PDP. All the local search algorithms proposed make use of the same solution structure:where , . In summary, a solution is a vector of elements, one for each node in the graph, that can take any value from one to , that is, the number of patrolling sectors. A generic pseudocode for a local search algorithm is presented in Algorithm 1.