88
Vietnam, March 2010 1 The districting problem: The districting problem: applications and solving applications and solving methods methods Viviane Gascon Viviane Gascon Département des sciences de la gestion Département des sciences de la gestion Université du Québec à Trois-Rivières Université du Québec à Trois-Rivières

The districting problem: applications and solving methods

  • Upload
    emmet

  • View
    26

  • Download
    1

Embed Size (px)

DESCRIPTION

The districting problem: applications and solving methods. Viviane Gascon Département des sciences de la gestion Université du Québec à Trois-Rivières. Introduction. - PowerPoint PPT Presentation

Citation preview

Page 1: The districting problem: applications and solving methods

Vietnam, March 2010

1

The districting problem: The districting problem: applications and solving applications and solving

methodsmethods

Viviane GasconViviane GasconDépartement des sciences de la gestionDépartement des sciences de la gestionUniversité du Québec à Trois-RivièresUniversité du Québec à Trois-Rivières

Page 2: The districting problem: applications and solving methods

Vietnam, March 2010

2

IntroductionIntroduction

The districting problem consists in partitioning a The districting problem consists in partitioning a geographical region into districts in order to plan geographical region into districts in order to plan

some operations while considering different some operations while considering different criteria or constraints. criteria or constraints.

Page 3: The districting problem: applications and solving methods

Vietnam, March 2010

3

Main criteriaMain criteria

ContiguityContiguity CompactnessCompactness Balance or equityBalance or equity Respect of natural boundariesRespect of natural boundaries Socio-economic homogeneitySocio-economic homogeneity

A district is contiguous if it is A district is contiguous if it is possible to travel from any possible to travel from any

point in the district to any other point in the district to any other in the district without having to in the district without having to go through any other districtgo through any other district

Page 4: The districting problem: applications and solving methods

Vietnam, March 2010

4

Main criteriaMain criteria

ContiguityContiguity CompactnessCompactness Balance or equityBalance or equity Respect of natural boundariesRespect of natural boundaries Socio-economic homogeneitySocio-economic homogeneity

Compactness is a criterion Compactness is a criterion used to prevent the formation used to prevent the formation of odd-shaped districts that is of odd-shaped districts that is districts should be circular or districts should be circular or square in shape rather than square in shape rather than

elongatedelongated

Page 5: The districting problem: applications and solving methods

Vietnam, March 2010

5

Main criteriaMain criteria

ContiguityContiguity CompactnessCompactness Balance or equityBalance or equity Respect of natural boundariesRespect of natural boundaries Socio-economic homogeneitySocio-economic homogeneityBalanced in workload or in Balanced in workload or in

population in the districtspopulation in the districts

Page 6: The districting problem: applications and solving methods

Vietnam, March 2010

6

Main criteriaMain criteria

ContiguityContiguity CompactnessCompactness Balance or equityBalance or equity Respect of natural boundariesRespect of natural boundaries Socio-economic homogeneitySocio-economic homogeneity

Rivers, railroads, mountains, Rivers, railroads, mountains, administrative boundaries, etc.administrative boundaries, etc.

Page 7: The districting problem: applications and solving methods

Vietnam, March 2010

7

Main criteriaMain criteria

ContiguityContiguity CompactnessCompactness Balance or equityBalance or equity Respect of natural boundariesRespect of natural boundaries Socio-economic homogeneitySocio-economic homogeneity

Having a better representation of residents who share

common concerns or views (can be based on income revenues, minorities, etc.)

Page 8: The districting problem: applications and solving methods

Vietnam, March 2010

8

ApplicationsApplications

Political districtingPolitical districting(Hess and Weaver (1965), Garfinkel and Nemhauser (1970), Mehotra, Johnson and (Hess and Weaver (1965), Garfinkel and Nemhauser (1970), Mehotra, Johnson and Nemhauser (1998), Bozkaya, Erkut and Laporte (2002))Nemhauser (1998), Bozkaya, Erkut and Laporte (2002))

School districtingSchool districting(Ferland and Guénette (1990))(Ferland and Guénette (1990))

Districting for health servicesDistricting for health services(Gascon, Gorvan and Michelon (2010))(Gascon, Gorvan and Michelon (2010))

Page 9: The districting problem: applications and solving methods

Vietnam, March 2010

9

Political districtingPolitical districting

The political districting problem consists in The political districting problem consists in partitioning an area into electoral constituencies partitioning an area into electoral constituencies (districts), each one being assigned a number of (districts), each one being assigned a number of

representatives.representatives.

one representative is assigned to each district;one representative is assigned to each district; each population unit is assigned to one district;each population unit is assigned to one district; the number of districts is usually known (the number of districts is usually known (MM districts); districts); all districts must have approximately the same number of all districts must have approximately the same number of

voters for better equityvoters for better equity

Page 10: The districting problem: applications and solving methods

Vietnam, March 2010

10

Political districting : Political districting : Hess Hess et al.et al. (1965) (1965)

Among the first mathematical programming approach of Among the first mathematical programming approach of the political districting problem.the political districting problem.

The problem is modeled as an The problem is modeled as an assignmentassignment problemproblem with additional constraints where each population unit with additional constraints where each population unit must be assigned to a district center.must be assigned to a district center.

Page 11: The districting problem: applications and solving methods

Vietnam, March 2010

11

Political districting : Political districting : Hess Hess et al.et al. (1965) (1965)Mathematical modelMathematical model Parameters:Parameters:

I I : set of population units: set of population unitsJ J : set of : set of potentialpotential district centers district centersM M : number of district centers: number of district centersppi i : population of the : population of the iithth population unit population unita a : minimum population allowed for a district: minimum population allowed for a districtb b : maximum population allowed for a district: maximum population allowed for a district

aa and and bb can be considered as deviations from the average can be considered as deviations from the average population of all population units which is given bypopulation of all population units which is given by

Ii

i

Mp

Page 12: The districting problem: applications and solving methods

Vietnam, March 2010

12

Political districting : Political districting : Hess Hess et al.et al. (1965) (1965)

ccij ij , the, the cost of assigning population unit cost of assigning population unit ii to district center to district center j j is the is the Euclidean distance between the district center Euclidean distance between the district center ii and the district and the district center center jj..

ddijij : distance between the centers of population units : distance between the centers of population units ii and and jj. .

Minimizing the Euclidean distance between population units favours Minimizing the Euclidean distance between population units favours contiguouscontiguous districts but do not guarantee them. districts but do not guarantee them.

Page 13: The districting problem: applications and solving methods

Vietnam, March 2010

13

District District jj

Population unit i

Population unit j

Center of district j

Center of population unit i

Center of population unit j

Page 14: The districting problem: applications and solving methods

Vietnam, March 2010

14

Political districting : Political districting : Hess Hess et al.et al. (1965) (1965)

Mathematical modelMathematical model

Variable:Variable:

ccijij = = ddijij22 p pjj is used in the objective function of the mathematical model by Hess is used in the objective function of the mathematical model by Hess et al.et al.

otherwise 0

jcenter district toassigned is unit population if 1 ixij JjIi ,

Page 15: The districting problem: applications and solving methods

Vietnam, March 2010

15

Political districting : Political districting : Hess Hess et al.et al. (1965) (1965)

Mathematical modelMathematical model

Jj

ijijIi

xcMin

Subject to

IixJj

ij

,1

MxJj

jj

JjbxpaIi

iji

,

JjIixij , ,1,0

(1)

(2)

(3)

Page 16: The districting problem: applications and solving methods

Vietnam, March 2010

16

Political districting : Political districting : Hess Hess et al.et al. (1965) (1965)

Mathematical modelMathematical model

Jj

ijijIi

xcMin

Subject to

IixJj

ij

,1

MxJj

jj

JjbxpaIi

iji

,

JjIixij , ,1,0

(1)

(2)

(3)

Constraint (1) ensures that each population unit i is assigned to exactly one district

Page 17: The districting problem: applications and solving methods

Vietnam, March 2010

17

Political districting : Political districting : Hess Hess et al.et al. (1965) (1965)

Mathematical modelMathematical model

Jj

ijijIi

xcMin

Subject to

IixJj

ij

,1

MxJj

jj

JjbxpaIi

iji

,

JjIixij , ,1,0

(1)

(2)

(3)

Constraint (2) ensures that M districts are chosen.

Page 18: The districting problem: applications and solving methods

Vietnam, March 2010

18

Political districting : Political districting : Hess Hess et al.et al. (1965) (1965)

Mathematical modelMathematical model

Jj

ijijIi

xcMin

Subject to

IixJj

ij

,1

MxJj

jj

JjbxpaIi

iji

,

JjIixij , ,1,0

(1)

(2)

(3) Constraint (3) ensures population equity among districts

Page 19: The districting problem: applications and solving methods

Vietnam, March 2010

19

Political districting : Political districting : Hess Hess et al.et al. (1965) (1965)

Solving method : heuristicSolving method : heuristic1.1. Define district centersDefine district centers2.2. Assign population equally to the district centers at Assign population equally to the district centers at

minimum costs (with a transportation algorithm)minimum costs (with a transportation algorithm)3.3. Adjust assignment so that each population unit is Adjust assignment so that each population unit is

entirely within one districtentirely within one district4.4. Compute centroids and use them as improved district Compute centroids and use them as improved district

centerscenters5.5. Repeat from step 2 until solution convergesRepeat from step 2 until solution converges6.6. Try with other initial district centersTry with other initial district centers

Page 20: The districting problem: applications and solving methods

Vietnam, March 2010

20

Political districting : Political districting : Hess Hess et al.et al. (1965) (1965)

Limits of the solving method Limits of the solving method

No guaranty of convergenceNo guaranty of convergence Non contiguous solutions must be rejectedNon contiguous solutions must be rejected If many solutions, choose the most compact one and If many solutions, choose the most compact one and

one having a good population equity by always verifying one having a good population equity by always verifying that there is no deviation form the minimum and that there is no deviation form the minimum and maximum allowable populationmaximum allowable population

Page 21: The districting problem: applications and solving methods

Vietnam, March 2010

21

Political districting : Political districting : Garfinkel and Garfinkel and Nemhauser (1970)Nemhauser (1970)

Garfinkel and Nemhauser (1970) considers Garfinkel and Nemhauser (1970) considers predefinedpredefined districts to be specified and among which the final districts districts to be specified and among which the final districts are chosen.are chosen.

Page 22: The districting problem: applications and solving methods

Vietnam, March 2010

22

Political districting : Political districting : Garfinkel and Garfinkel and Nemhauser (1970)Nemhauser (1970)

Mathematical modelMathematical model

Parameters:Parameters:I I : set of population units: set of population unitsJ J : set of : set of potentialpotential districts districtsM M : number of district: number of districtppi i : population of the : population of the iithth population unit population unit

P(j)P(j) : population of district : population of district jj where where

otherwise 0

district tobelongs unit population if 1 jiaij

iIi

ij pajP

)(

Page 23: The districting problem: applications and solving methods

Vietnam, March 2010

23

Political districting : Political districting : Garfinkel and Garfinkel and Nemhauser (1970)Nemhauser (1970)

Mathematical modelMathematical model

Parameters:Parameters:

deviation of population of district deviation of population of district jj from the from the average average population, population, p

pjPc j

)(

p

Page 24: The districting problem: applications and solving methods

Vietnam, March 2010

24

Political districting : Political districting : Garfinkel and Garfinkel and Nemhauser (1970)Nemhauser (1970)

Mathematical modelMathematical model VariableVariable

otherwise 0

chosen is district if 1 jx j

Page 25: The districting problem: applications and solving methods

Vietnam, March 2010

25

Political districting : Political districting : Garfinkel and Garfinkel and Nemhauser (1970)Nemhauser (1970)

MinimiseMinimisestst

jjJj xcmax

IixaJj

jij

,1

MxJj

j

Jjx j ,1,0

(1)

(2)

Constraint (1) ensures that each population unit i is assigned to exactly one district

Mathematical programming problemMathematical programming problem

(P1)

Page 26: The districting problem: applications and solving methods

Vietnam, March 2010

26

Political districting : Political districting : Garfinkel and Garfinkel and Nemhauser (1970)Nemhauser (1970)

MinimiseMinimisestst

jjJj xcmax

IixaJj

jij

,1

MxJj

j

Jjx j ,1,0

(1)

(2)Constraint (2) ensures that that M districts are chosen.

(P1)

Page 27: The districting problem: applications and solving methods

Vietnam, March 2010

27

Political districting : Political districting : Garfinkel and Garfinkel and Nemhauser (1970)Nemhauser (1970)

The problem implies that The problem implies that potentialpotential districts must be defined. districts must be defined.

ContiguityContiguity : Let : Let BB = { = {bbikik}, a symmetric matrix where }, a symmetric matrix where

If a district is an undirected graph whose vertices are the units of the district, If a district is an undirected graph whose vertices are the units of the district, an arc exists between vertices an arc exists between vertices ii and and kk if and only if if and only if bbikik==1.1.

A district is A district is contiguouscontiguous if and only if the graph is connected (a path exists if and only if the graph is connected (a path exists between every pair of vertices).between every pair of vertices).

A district is A district is feasiblefeasible only if it is only if it is contiguouscontiguous..

otherwise 0

point aan greater thboundary common a have and units if 1 kibik

Page 28: The districting problem: applications and solving methods

Vietnam, March 2010

28

Connected graph of district Connected graph of district jj

Population unit i

Population unit j

Center of district j

Page 29: The districting problem: applications and solving methods

Vietnam, March 2010

29

Political districting : Political districting : Garfinkel and Garfinkel and Nemhauser (1970)Nemhauser (1970)

A district is A district is feasiblefeasible only if only if

is the maximum allowable percentage deviation of the is the maximum allowable percentage deviation of the population of a district from the average district population.population of a district from the average district population.

)10( 100 where,)( ppjP

Page 30: The districting problem: applications and solving methods

Vietnam, March 2010

30

Political districting : Political districting : Garfinkel and Garfinkel and Nemhauser (1970)Nemhauser (1970)

CompactnessCompactness : :

d(i,k)d(i,k) = distance between units = distance between units ii and and kk..e(i,k)e(i,k) = exclusion distance = exclusion distance between units between units ii and and kk..

District j is District j is feasiblefeasible only if only if d(i,k)d(i,k) > > e(i,k)e(i,k) implies that implies that aaijij . a . akjkj = 0 = 0

((ii and and jj can not be in the same district if the distance between can not be in the same district if the distance between them is higher than them is higher than e(i,k)e(i,k)))

i

kd(i,k)

e(i,k)

Page 31: The districting problem: applications and solving methods

Vietnam, March 2010

31

Political districting : Political districting : Garfinkel and Garfinkel and Nemhauser (1970)Nemhauser (1970)

CompactnessCompactness : : ddjj = distance between the units of = distance between the units of j j for districtfor district j j which are farthest apart. which are farthest apart.

ddjj = =

((ddjj measures the “ measures the “range”range” of the district) of the district)

A(j)A(j) = area of district = area of district jj

is a dimensionless measure of the shape compactness of is a dimensionless measure of the shape compactness of district district jj

District j is District j is feasiblefeasible only if only if

Nkiaakid kjijki ,..,1, ,),(max ,

)(

2'

jAd

c jj

.0 ,' jc

Page 32: The districting problem: applications and solving methods

Vietnam, March 2010

32

Political districting : Political districting : Garfinkel and Garfinkel and Nemhauser (1970)Nemhauser (1970)

Solving method : two phase methodSolving method : two phase method

1)1) Phase IPhase I: Find feasible districts : Find feasible districts Start at an arbitrary unit and adjoin contiguous units until the Start at an arbitrary unit and adjoin contiguous units until the combined population becomes feasible.combined population becomes feasible.If the district is compact, keep it.If the district is compact, keep it.If combined population exceeds the upper limit, backtrack on the If combined population exceeds the upper limit, backtrack on the enumeration tree.enumeration tree.It is verified if the district has some enclaves.It is verified if the district has some enclaves.

District with an enclave

Page 33: The districting problem: applications and solving methods

Vietnam, March 2010

33

Political districting : Political districting : Garfinkel and Garfinkel and Nemhauser (1970)Nemhauser (1970)

Solving method : two phase methodSolving method : two phase method

2)2) Phase IIPhase II: : Solve the mathematical programming problem (search tree Solve the mathematical programming problem (search tree algorithm)algorithm)

(see paper for more details)(see paper for more details)

Page 34: The districting problem: applications and solving methods

Vietnam, March 2010

34

Political districting : Political districting : Mehotra, Johnson and Mehotra, Johnson and Nemhauser (1998)Nemhauser (1998)

The problem considered by Mehotra The problem considered by Mehotra et al.et al. (1998) is similar (1998) is similar to the problem in Garfinkel and Nemhauser (1970).to the problem in Garfinkel and Nemhauser (1970).

But their model considers more But their model considers more potentialpotential districts. districts.

They consider a They consider a graph partitioning problemgraph partitioning problem where where A A nodenode is associated to every population unit (its weight is is associated to every population unit (its weight is

equal to the corresponding population)equal to the corresponding population) An An edgeedge connects two nodes when the corresponding connects two nodes when the corresponding

population units are neighbourspopulation units are neighbours A A solutionsolution is a connected graph (for contiguity) for which the is a connected graph (for contiguity) for which the

sum of the node weights is within a population interval (for sum of the node weights is within a population interval (for population equity).population equity).

Page 35: The districting problem: applications and solving methods

Vietnam, March 2010

35

Political districting : Political districting : Mehotra, Johnson and Mehotra, Johnson and Nemhauser (1998)Nemhauser (1998)

IixaJj

jij

,1

MxJj

j

Jjx j ,1,0

(1)

(2)

Jj

jj xcMin

Same model as Garfinkel and Nemhauser (1970) except for Same model as Garfinkel and Nemhauser (1970) except for ccjj which is the cost of district which is the cost of district jj..

The question is : how should The question is : how should ccjj be defined ?be defined ?

(P2)

Page 36: The districting problem: applications and solving methods

Vietnam, March 2010

36

Political districting : Political districting : Mehotra, Johnson and Mehotra, Johnson and Nemhauser (1998)Nemhauser (1998)

The cost of district The cost of district jj, , ccjj, measures its non compactness., measures its non compactness.

V: set of population unitsV: set of population unitsE: edges connecting units if they share common bordersE: edges connecting units if they share common borders

G(V,E): graph G(V,E): graph G’(V’,E’): connected subgraph defining a district and satisfying population limitsG’(V’,E’): connected subgraph defining a district and satisfying population limits

Non compactness of G’ will be measured by how far units in the district are from Non compactness of G’ will be measured by how far units in the district are from a central unit.a central unit.

Page 37: The districting problem: applications and solving methods

Vietnam, March 2010

37

Political districting : Political districting : Mehotra, Johnson and Mehotra, Johnson and Nemhauser (1998)Nemhauser (1998)

ssijij: number of edges in a shortest path from : number of edges in a shortest path from ii to to j j in G.in G.

Center of G’ : nodeCenter of G’ : node

Cost of a district with Cost of a district with uu as the center of the district is given by as the center of the district is given by

A district is more compact when the cost is smaller. A district is more compact when the cost is smaller.

minimized. is that such

'

'Vj

ujsVu

'Vj

ujs

u

i

jk

sui= 2

suj= 2

suk= 2

Page 38: The districting problem: applications and solving methods

Vietnam, March 2010

38

Political districting : Political districting : Mehotra, Johnson and Mehotra, Johnson and Nemhauser (1998)Nemhauser (1998)

Solving methodSolving method : column generation method : column generation method

1)1) Start with a subset of feasible districts, J’Start with a subset of feasible districts, J’2)2) Solve the linear relaxation of (PSolve the linear relaxation of (P22) restricted to J’ where ) restricted to J’ where

This linear relaxation of (PThis linear relaxation of (P22) is LP-P) is LP-P22(J’).(J’).

3)3) The optimal solution of the linear relaxation of (PThe optimal solution of the linear relaxation of (P22) is feasible to ) is feasible to

LP-PLP-P22(J). A dual value (J). A dual value is obtained for each constraint in LP-P is obtained for each constraint in LP-P22(J).(J).

3)3) Determine if the optimal solution of LP-PDetermine if the optimal solution of LP-P22(J’) is optimal for (J’) is optimal for

LP-PLP-P22(J). This is done by solving a subproblem SP.(J). This is done by solving a subproblem SP.

10 jx

Page 39: The districting problem: applications and solving methods

Vietnam, March 2010

39

Political districting : Political districting : Mehotra, Johnson and Mehotra, Johnson and Nemhauser (1998)Nemhauser (1998)

Solving methodSolving method : column generation method : column generation method

Parameters for SPParameters for SP : :

ppii: population of unit : population of unit ii ppminmin, p, pmaxmax: lower and upper bounds on the population of a district: lower and upper bounds on the population of a district

is the average population of a districtis the average population of a district

otherwise 0

district the in is unit if i yi

1

M

pp Vi

i

Page 40: The districting problem: applications and solving methods

Vietnam, March 2010

40

Political districting : Political districting : Mehotra, Johnson and Mehotra, Johnson and Nemhauser (1998)Nemhauser (1998)

SP problemSP problem

sconstraint contiguity satisfies y and

where

Min Vu

uViy

ppyppp

ysuS

uS

i

uiuVi

iu

iuVi

iuiun

,1,0

min)(

)(

maxmin

1

Page 41: The districting problem: applications and solving methods

Vietnam, March 2010

41

Political districting : Political districting : Mehotra, Johnson and Mehotra, Johnson and Nemhauser (1998)Nemhauser (1998)

Contiguity constraintsContiguity constraints

To ensure contiguity of districts, districts are required to be subtrees of To ensure contiguity of districts, districts are required to be subtrees of a a shortest path tree rooted at shortest path tree rooted at uu (district center).(district center).

Constraints allowing district Constraints allowing district jj to be selected only if at least one of the to be selected only if at least one of the nodes that is adjacent to it and closer to nodes that is adjacent to it and closer to uu is also selected, are added, is also selected, are added, that isthat isIfIf then we add the contiguity then we add the contiguity constraintconstraint

ensuring that node ensuring that node jj is selected only if all nodes along some shortest is selected only if all nodes along some shortest path from path from uu to to jj are also selected. are also selected.

EjissViS ujuij ),(1| and

jSi

ij yy

Page 42: The districting problem: applications and solving methods

Vietnam, March 2010

42

Political districting : Political districting : Mehotra, Johnson and Mehotra, Johnson and Nemhauser (1998)Nemhauser (1998)

If the optimal objective value of SP is negative then a district with If the optimal objective value of SP is negative then a district with minimum value is added to the set J’ and LP-Pminimum value is added to the set J’ and LP-P22(J’) is solved again.(J’) is solved again.

Otherwise, the current solution to LP-POtherwise, the current solution to LP-P22(J’) is also optimal to LP-P(J’) is also optimal to LP-P22(J).(J).

In this case, if the solution is integral, then a solution to PIn this case, if the solution is integral, then a solution to P22 is found. is found.

If it is not integral, a branching rule is applied, based on a depth-first-If it is not integral, a branching rule is applied, based on a depth-first-search strategy, to find another solution.search strategy, to find another solution.

Page 43: The districting problem: applications and solving methods

Vietnam, March 2010

43

Political districting : Political districting : Bozkaya, Erkut and Bozkaya, Erkut and Laporte (2003)Laporte (2003)

The political districting problem solved by Bozkaya The political districting problem solved by Bozkaya et al.et al. (2003) (2003) considers the considers the contiguity constraint as a hard constraintcontiguity constraint as a hard constraint and all other and all other criteria as soft constraints through a weighted objective function.criteria as soft constraints through a weighted objective function.

Other criteria :Other criteria : population equalitypopulation equality compactnesscompactness socio-economic homogeneitysocio-economic homogeneity similar districts to the existing districtssimilar districts to the existing districts integrity of communitiesintegrity of communities

Page 44: The districting problem: applications and solving methods

Vietnam, March 2010

44

Political districting : Political districting : Bozkaya, Erkut and Bozkaya, Erkut and Laporte (2003)Laporte (2003)Population equalityPopulation equality::

J J : set of all districts in solution : set of all districts in solution xx (feasible or not) (feasible or not)PPjj(x)(x):: population of district population of district jj in solution in solution xx

is the average population of the districtis the average population of the district

The population of a district is required to be in the intervalThe population of a district is required to be in the interval

Population equality functionPopulation equality function : :

M

xPP Jj

j

)(

10)1(,)1( wherePP

P

xPPPxPxf Jj

jj

pop

0),()1(,)1()(max)(

It evaluates the maximum deviation of the population in the district from the maximum It evaluates the maximum deviation of the population in the district from the maximum and the minimum allowedand the minimum allowed

Page 45: The districting problem: applications and solving methods

Vietnam, March 2010

45

Political districting : Political districting : Bozkaya, Erkut and Bozkaya, Erkut and Laporte (2003)Laporte (2003)

CompactnessCompactness: two measures: two measures

R R : perimeter of the whole territory, used for scaling: perimeter of the whole territory, used for scalingRRjj(x) (x) :: perimeter of district perimeter of district jj in solution in solution xx

Compactness measure 1 :Compactness measure 1 :

Compactness measure 2 :Compactness measure 2 :

R

RxRxf Jj

j

comp 2

)()(1

M

xR

xA

xfJj j

j

comp

)(

/)(21

)(2

Page 46: The districting problem: applications and solving methods

Vietnam, March 2010

46

Political districting : Political districting : Bozkaya, Erkut and Bozkaya, Erkut and Laporte (2003)Laporte (2003)

Socio-economic homogeneitySocio-economic homogeneity : minimize the sum of the standard : minimize the sum of the standard deviation of incomedeviation of income

SSjj(x)(x): standard deviation of income in district : standard deviation of income in district jj : average income: average income

Socio-economic homogeneity function:Socio-economic homogeneity function:

S

S

xSxf Jj

j

soc

)()(

Page 47: The districting problem: applications and solving methods

Vietnam, March 2010

47

Political districting : Political districting : Bozkaya, Erkut and Bozkaya, Erkut and Laporte (2003)Laporte (2003)

Similar districts to the existing districtsSimilar districts to the existing districts::

OOjj(x)(x) : largest overlay of district : largest overlay of district jj with a district contained in a solution with a district contained in a solution xx

AA: entire area: entire area

Similarity objective function:Similarity objective function:A

xOf Jj

j

sim

)(1

Old and new Old and new districtsdistricts

Overlaying Overlaying sectorssectors

Page 48: The districting problem: applications and solving methods

Vietnam, March 2010

48

Political districting : Political districting : Bozkaya, Erkut and Bozkaya, Erkut and Laporte (2003)Laporte (2003)

Integrity of communitiesIntegrity of communities:: GGjj(x)(x) : largest population of a given community in district : largest population of a given community in district jj of solution of solution xx

Integrity of communities objective function : Integrity of communities objective function : minimizeminimize

Jjj

Jjj

xP

xGf

)(

)(1int

Page 49: The districting problem: applications and solving methods

Vietnam, March 2010

49

Political districting : Political districting : Bozkaya, Erkut and Bozkaya, Erkut and Laporte (2003)Laporte (2003)

Solving methodSolving method : Tabu search : Tabu search

Objective functionObjective function

)()()()()()( intint xfxfxfxfxfxF simsimsocsoccompcomppoppop

Page 50: The districting problem: applications and solving methods

Vietnam, March 2010

50

Political districting : Political districting : Bozkaya, Erkut and Bozkaya, Erkut and Laporte (2003)Laporte (2003)

Solving methodSolving method : Tabu search : Tabu search

Initial solutionInitial solution : select a seed unit for a district and add to it adjacent : select a seed unit for a district and add to it adjacent units until the district population attains or when no adjacent units units until the district population attains or when no adjacent units are available.are available.

If the number of districts created is larger than If the number of districts created is larger than MM, reduce it by merging , reduce it by merging the least populated unit with the least populated neighbour. the least populated unit with the least populated neighbour. If the number of districts created is less than If the number of districts created is less than MM, gradually increase it by , gradually increase it by iteratively splitting the most populated district into two while preserving iteratively splitting the most populated district into two while preserving contiguity. contiguity.

P

Page 51: The districting problem: applications and solving methods

Vietnam, March 2010

51

Political districting : Political districting : Bozkaya, Erkut and Bozkaya, Erkut and Laporte (2003)Laporte (2003)

Solving methodSolving method : Tabu search : Tabu search

Type I neighbours or moves (Type I neighbours or moves (i,j,li,j,l)) : all solutions that can be obtained : all solutions that can be obtained from from xx by moving a basic unit by moving a basic unit ii from its current district from its current district jj to a neighbour to a neighbour district district ll without creating a non-contiguous solution. without creating a non-contiguous solution.

Type II neighbours or moves (Type II neighbours or moves (i,k,j,li,k,j,l)) : all solutions that can be obtained : all solutions that can be obtained from from xx by swapping two border units by swapping two border units ii and and kk between their respective between their respective districts districts jj and and ll without creating a non-contiguous solution. without creating a non-contiguous solution.

District j

District l

i District j

District l

ik

Type IType I Type IIType II

Page 52: The districting problem: applications and solving methods

Vietnam, March 2010

52

Political districting : Political districting : Bozkaya, Erkut and Bozkaya, Erkut and Laporte (2003)Laporte (2003)

Solving methodSolving method : Tabu search : Tabu search

Preventing cyclingPreventing cycling : for both types of moves, a move which puts unit : for both types of moves, a move which puts unit ii back into district back into district jj or unit or unit kk back into district back into district ii is said to be is said to be tabutabu for for iterations where iterations where is chosen randomly in an interval. is chosen randomly in an interval.

DiversificationDiversification : by adding a : by adding a penaltypenalty term to the objective function value term to the objective function value associated to the frequently performed moves.associated to the frequently performed moves.

Adaptive memory procedureAdaptive memory procedure : keep in a pool of solutions a set of : keep in a pool of solutions a set of districts belonging to some of the best solutions. Disjoint districts can districts belonging to some of the best solutions. Disjoint districts can be chosen form the pool and used as a basis for a new population with be chosen form the pool and used as a basis for a new population with a higher probability.a higher probability.

Page 53: The districting problem: applications and solving methods

Vietnam, March 2010

53

School districting problem : School districting problem : Ferland and Ferland and Guénette (1990)Guénette (1990)

The school districting problem consists in The school districting problem consists in determining the groups of students attending each determining the groups of students attending each

school of a school board located over a given school of a school board located over a given territory.territory.

Ferland and Guénette (1990) propose a decision support system to Ferland and Guénette (1990) propose a decision support system to solve the problem.solve the problem.

Page 54: The districting problem: applications and solving methods

Vietnam, March 2010

54

School districting problem : School districting problem : Ferland and Ferland and Guénette (1990)Guénette (1990)

Different constraints must be taken into account :Different constraints must be taken into account : School capacitySchool capacity Class capacityClass capacity Contiguity of school sectorsContiguity of school sectors Keep students in the same school from year to yearKeep students in the same school from year to year

Page 55: The districting problem: applications and solving methods

Vietnam, March 2010

55

School districting problem : School districting problem : Ferland and Ferland and Guénette (1990)Guénette (1990)

Mathematical modelMathematical model

Parameters :Parameters :G(N,A)G(N,A) : road network for the school board : road network for the school boardNN is the set of nodes defined as street intersections and school is the set of nodes defined as street intersections and school locationslocationsAA is the set of edges defined as the street segments. is the set of edges defined as the street segments. is a subset of edges with students located on itis a subset of edges with students located on itII : number of edges in : number of edges inKK : number of grades : number of grades

AA A

Page 56: The districting problem: applications and solving methods

Vietnam, March 2010

56

School districting problem : School districting problem : Ferland and Ferland and Guénette (1990)Guénette (1990)

Mathematical modelMathematical model

Parameters :Parameters :)(1 school at available )(1 grade of classes of number JjjKkkk

j

)(1 grade class a in students of number the on bound upper Kkkk

)(1 edge on )(1 grade of students of number IiaKkkr ik

i

Page 57: The districting problem: applications and solving methods

Vietnam, March 2010

57

School districting problem School districting problem : Ferland and : Ferland and Guénette (1990)Guénette (1990)

Mathematical modelMathematical model

Variables :Variables :

otherwise

school to assigned is edge if i

0)1()1(1 JjjIia

xij

Page 58: The districting problem: applications and solving methods

Vietnam, March 2010

58

School districting problem : School districting problem : Ferland and Ferland and Guénette (1990)Guénette (1990)

Mathematical modelMathematical model

Constraints :Constraints :

IixJ

jij

1,11

JjKkxr kkjij

I

i

ki

1,1,1

(1)

(2)

Constraint (1) ensures that each edge i is assigned to exactly one school

Page 59: The districting problem: applications and solving methods

Vietnam, March 2010

59

School districting problem : School districting problem : Ferland and Ferland and Guénette (1990)Guénette (1990)

Mathematical modelMathematical model

Constraints :Constraints :

IixJ

jij

1,11

JjKkxr kkjij

I

i

ki

1,1,1

(1)

(2)Constraint (2) ensures that the capacity of each school for each grade is not exceeded

Page 60: The districting problem: applications and solving methods

Vietnam, March 2010

60

School districting problem : School districting problem : Ferland and Ferland and Guénette (1990)Guénette (1990)

Mathematical modelMathematical model

Contiguity constraints : Contiguity constraints : distance is neededdistance is needed

ddijij : distance between edge : distance between edge aaii and school and school jj

(distance between the node where school (distance between the node where school jj is located and the end- is located and the end-node of node of aaii closer to this node closer to this node

ww : walking distance to the school : walking distance to the schoolIf then students on edge If then students on edge aaii have to go to school have to go to school jj by bus. by bus. If then If then aaii is within walking distance of school is within walking distance of school jj. .

1 ijij xwd and

wd ij

edge edge aaiiDistance between edge Distance between edge aaii and school and school jj

School School jj

Page 61: The districting problem: applications and solving methods

Vietnam, March 2010

61

School districting problem : School districting problem : Ferland and Ferland and Guénette (1990)Guénette (1990)

Mathematical modelMathematical model

Contiguity constraints :Contiguity constraints :

jlJlwdwdAaW ilijij ,1,: and

JjjwdAaZ iji 1: ,index one than more for

JjjwdAaB iji 1: , all for

BZWA jJj 1

Page 62: The districting problem: applications and solving methods

Vietnam, March 2010

62

School districting problem : School districting problem : Ferland and Ferland and Guénette (1990)Guénette (1990)

Mathematical modelMathematical model

Walking constraints :Walking constraints :

Edges in Z should be assigned to their closest school (if capacity Edges in Z should be assigned to their closest school (if capacity constraints can be satisfied) and priority should be given to edges closer constraints can be satisfied) and priority should be given to edges closer to their closest school.to their closest school.

wdxZWa ijijjJji ifonly then edgeany For 11

.1 ijji xWa then if Therefore

Page 63: The districting problem: applications and solving methods

Vietnam, March 2010

63

School districting problem : School districting problem : Ferland and Ferland and Guénette (1990)Guénette (1990)

Mathematical modelMathematical model

A measure to evaluate how well a solution satisfy the capacity A measure to evaluate how well a solution satisfy the capacity constraints :constraints :

K

k

I

ik

kjij

ki

J

j

xrECM1 11

,0max

Page 64: The districting problem: applications and solving methods

Vietnam, March 2010

64

School districting problem : School districting problem : Ferland and Ferland and Guénette (1990)Guénette (1990)

Assignment processAssignment process

Procedure Procedure WW-edges :-edges :

Procedure Procedure ZZ-edges : -edges : order edges in order edges in ZZ in decreasing order of their distance to their closest in decreasing order of their distance to their closest school.school.Assign each edge Assign each edge aaii belonging to belonging to ZZ to the closest school to the closest school jj s.t. s.t.

and the capacity constraint is satisfied.and the capacity constraint is satisfied.If it is not possible, assign If it is not possible, assign aaii to the closest school (even if some capacity constraints are not to the closest school (even if some capacity constraints are not satisfied) satisfied)

1 ijji xWa then If

wd ij

Page 65: The districting problem: applications and solving methods

Vietnam, March 2010

65

School districting problem : School districting problem : Ferland and Ferland and Guénette (1990)Guénette (1990)

Assignment processAssignment process

Procedure Procedure BB-edges : -edges : order edges in order edges in BB in increasing order of their distance to their in increasing order of their distance to their closest school.closest school.Treat each edge Treat each edge aaii belonging to belonging to BB and determine and determine SSii, the set of schools to which the , the set of schools to which the edges adjacent to edges adjacent to aaii are assigned. are assigned.

If If SSii is empty then is empty then SSii = = SS, set of all schools., set of all schools.

Assign Assign aaii to the closest school to the closest school jj in in SSii s.t. the capacity constraints are satisfied. s.t. the capacity constraints are satisfied.

If it is not possible then assign If it is not possible then assign aaii to school to school jj in in SSii with smallest value ECM. with smallest value ECM.

Page 66: The districting problem: applications and solving methods

Vietnam, March 2010

66

Districting for a public medical clinicDistricting for a public medical clinic : : Gascon, Gorvan and Michelon (2010)Gascon, Gorvan and Michelon (2010)

The territory covered by the public medical clinic is divided The territory covered by the public medical clinic is divided into into districtsdistricts

Each districtEach district is assigned to a given number of nurses is assigned to a given number of nurses Each nurseEach nurse is assigned to a given district is assigned to a given district A nurse is usually assigned to a short list of patients as a A nurse is usually assigned to a short list of patients as a

follow-up nursefollow-up nurse

The list of patients to visit varies from day to day:The list of patients to visit varies from day to day: it becomes difficult to it becomes difficult to balance nurse workloadsbalance nurse workloads it becomes difficult to it becomes difficult to account for the account for the continuity of carecontinuity of care

requirements requirements

Page 67: The districting problem: applications and solving methods

Vietnam, March 2010

67

Districting for a public medical clinicDistricting for a public medical clinic

The The districting problemdistricting problem of the medical public clinic of the medical public clinic consists in determining new districts, that is, new paring of consists in determining new districts, that is, new paring of patients with nurses in such a way that patients with nurses in such a way that nurses’ workloadsnurses’ workloads do not vary much from one nurse to the other and that the do not vary much from one nurse to the other and that the same follow-up nursesame follow-up nurse is assigned to a patient, if possible.is assigned to a patient, if possible.

Page 68: The districting problem: applications and solving methods

Vietnam, March 2010

68

Mathematical modelMathematical model

VariablesVariables

ParametersParametersTT = Length of a working day= Length of a working dayttijij = Traveling time from patient = Traveling time from patient ii to patient to patient jj

ttoj oj = Traveling time from the public medical clinic (= Traveling time from the public medical clinic (oo) to patient ) to patient jj

rri i = Time required to complete treatment to patient = Time required to complete treatment to patient ii

otherwise 0

nurse toassigned is patient if 1 kixik

Page 69: The districting problem: applications and solving methods

Vietnam, March 2010

69

Mathematical modelMathematical model

ffii = Visit frequency (value between 0 and 1)= Visit frequency (value between 0 and 1)

ssi i = Parameter related to continuity of care= Parameter related to continuity of care

month a during days ofnumber month a during patient toplanned visitsofnumber if i

otherwise 0

patient toimportant is care of continuity if 1 isi

Page 70: The districting problem: applications and solving methods

Vietnam, March 2010

70

Mathematical modelMathematical model

ppikik = Proportion of visits made by nurse = Proportion of visits made by nurse kk to patient to patient ii

= Parameter related to follow-up= Parameter related to follow-up

month previous theduring patient to visitsofnumber totalmonth previous theduring nurseby patient to visitsofnumber

ikipik

otherwise 0

month previous theduring nurse toassigned waspatient if 1 kixik

ikx

Page 71: The districting problem: applications and solving methods

Vietnam, March 2010

71

Nurses’ workloadNurses’ workload A daily nurse workload is equal toA daily nurse workload is equal to

wherewhere

Ii

kiiiik

kOk trfxtW )]([2

oiiIi

ikkO tfxt

iji

ijIj

jkki tfxt

Daily mean traveling time from the medical Daily mean traveling time from the medical public clinic to all patients assigned to public clinic to all patients assigned to nurse nurse kk

Daily mean traveling time from patient Daily mean traveling time from patient ii to to all patients assigned to nurse all patients assigned to nurse kk

Page 72: The districting problem: applications and solving methods

Vietnam, March 2010

72

Nurses’ workloadNurses’ workload

Additional workload generated by assigning patient Additional workload generated by assigning patient ii to nurse to nurse kk is is defined by parameterdefined by parameter

where an estimated daily mean traveling time from the previous solution is used.where an estimated daily mean traveling time from the previous solution is used.

The nurse workload The nurse workload WWkk is linearized is linearized

since since wwikik is a constant is a constant

)( *kiiiik trfw

ikIi

ikk

k wxtW

02

Page 73: The districting problem: applications and solving methods

Vietnam, March 2010

73

ConstraintsConstraints

Each patient must be assigned to exactly one nurse (or one district).Each patient must be assigned to exactly one nurse (or one district).

A patient A patient ii can be assigned to nurse can be assigned to nurse kk only if he is close to her only if he is close to her sector that is if sector that is if CCikik = 1 = 1

wherewhere

IixKk

ik

,1

otherwise 0

nurse toassigned becan patient if 1 kiCik

ikik Cx

Page 74: The districting problem: applications and solving methods

Vietnam, March 2010

74

Constraints and objectivesConstraints and objectives

A nurse A nurse kk ’s workload should be close to the average workload of all ’s workload should be close to the average workload of all nursesnurses..

we minimise the gap between nurse we minimise the gap between nurse kk ’s workload and the ’s workload and the average workloadaverage workload

Kk

kkequ qqxf )(

KkqqK

WW kk

Kkk

k

,

Page 75: The districting problem: applications and solving methods

Vietnam, March 2010

75

Constraints and objectivesConstraints and objectives

The daily working hours of a nurse The daily working hours of a nurse kk should not exceed T hours should not exceed T hours

we minimise the excess over T in working hourswe minimise the excess over T in working hours

Kk

kexf )(sup

KkTeW kk ,

Page 76: The districting problem: applications and solving methods

Vietnam, March 2010

76

Constraints and objectivesConstraints and objectives

A patient A patient ii should be assigned to the nurse should be assigned to the nurse kk who visited him most who visited him most frequently in the previous period according to the value of frequently in the previous period according to the value of ppikik

if following-up a patient if following-up a patient ii is essential is essential ((ssii=1),=1), we minimise an we minimise an objective function where patient objective function where patient ii should be assigned to the nurse should be assigned to the nurse kk who visited him most frequently in the last period, weighted according who visited him most frequently in the last period, weighted according to the frequency to the frequency ffii..

IiKkeepx ikikikik , ,

iki

Kk Iiisuiv esfxf )(

Page 77: The districting problem: applications and solving methods

Vietnam, March 2010

77

Another objectiveAnother objective

is minimised to avoid moving too many patients from one nurse to is minimised to avoid moving too many patients from one nurse to the otherthe other

wherewhere

ikikKk Ii

isim xxfxf

1)(

otherwise 0

month previous the during nurse to assigned was patient if kixik

1

Page 78: The districting problem: applications and solving methods

Vietnam, March 2010

78

Mathematical modelMathematical model

Each of the four objective functions is weighted according to some Each of the four objective functions is weighted according to some .. Global objective functionGlobal objective function

The problem is an integer linear programming problem with binary The problem is an integer linear programming problem with binary variablesvariables

)()()()(supsup xfxfxfxf suivsuivsimsimequequ

Page 79: The districting problem: applications and solving methods

Vietnam, March 2010

79

Solving methodSolving method

Heuristic combined with CPLEX as a subroutine since Heuristic combined with CPLEX as a subroutine since our problem is an integer linear programming problem.our problem is an integer linear programming problem.

Page 80: The districting problem: applications and solving methods

Vietnam, March 2010

80

Main steps of the algorithmMain steps of the algorithm

1)1) Update the list of patients to visitUpdate the list of patients to visit2)2) Assign each new patient to nurse Assign each new patient to nurse kk whose district is the closest whose district is the closest3)3) Determine the list of patients who can be moved from one nurse’s Determine the list of patients who can be moved from one nurse’s

district to another and the districts where they could be moved (district to another and the districts where they could be moved (CCikik =1 or 0)=1 or 0)

4)4) Solve the sub problem with CPLEXSolve the sub problem with CPLEX5)5) Repeat steps 3) and 4) while the solution changes or a given number Repeat steps 3) and 4) while the solution changes or a given number

of iterations is not reachedof iterations is not reached

Page 81: The districting problem: applications and solving methods

Vietnam, March 2010

81

Numerical tests and resultsNumerical tests and results

Data generated randomlyData generated randomly Planning horizon for data: one yearPlanning horizon for data: one year Tests are done for one month periodsTests are done for one month periods Different values of Different values of tested tested Four types of data: A, B, C and D, and five runs for each type of Four types of data: A, B, C and D, and five runs for each type of

datadata

Page 82: The districting problem: applications and solving methods

Vietnam, March 2010

82

A – Homogenous districts of similar workloadsA – Homogenous districts of similar workloads

Page 83: The districting problem: applications and solving methods

Vietnam, March 2010

83

B – Districts with greater density in the center; not B – Districts with greater density in the center; not necessarily similar workloadsnecessarily similar workloads

Page 84: The districting problem: applications and solving methods

Vietnam, March 2010

84

C – Greater density districts in the southwest with C – Greater density districts in the southwest with similar workloadssimilar workloads

Page 85: The districting problem: applications and solving methods

Vietnam, March 2010

85

D – Same density as c but workloads not similarD – Same density as c but workloads not similar

Page 86: The districting problem: applications and solving methods

Vietnam, March 2010

86

ResultsResults

For For type A and C datatype A and C data, initial solutions being of good , initial solutions being of good quality, computational time was low:quality, computational time was low: few patients were moved from one district to anotherfew patients were moved from one district to another workloads are similar for all nursesworkloads are similar for all nurses

For For type B and D datatype B and D data, initial solutions being of poor , initial solutions being of poor quality, computational time was higher:quality, computational time was higher: overtime but limited to values acceptableovertime but limited to values acceptable different workloads among nurses but differences are acceptable different workloads among nurses but differences are acceptable

Page 87: The districting problem: applications and solving methods

Vietnam, March 2010

87

ResultsResults

In general, when a higher priority is given to In general, when a higher priority is given to balancing workloadsbalancing workloads, , there is a greater gap between the initial and the final solution.there is a greater gap between the initial and the final solution.

When a higher priority is given to When a higher priority is given to reducing movements of patientsreducing movements of patients from one district to another, it produces a solution with more from one district to another, it produces a solution with more overtime and differences in workloads.overtime and differences in workloads.

When a higher priority is given to When a higher priority is given to maintaining follow-upmaintaining follow-up, it does not , it does not have a real impact on the solution. have a real impact on the solution.

Page 88: The districting problem: applications and solving methods

Vietnam, March 2010

88

ConclusionConclusion

Solutions generally have similar workloads which is very Solutions generally have similar workloads which is very important to nursesimportant to nurses

To be tested on real dataTo be tested on real data

To be tested on daily data and to determine routes for To be tested on daily data and to determine routes for those datathose data