The districting problem: applications and solving methods

Size: px
Start display at page:

Download "The districting problem: applications and solving methods"

Transcription

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

2 Introduction The districting problem consists in partitioning a geographical region into districts in order to plan some operations while considering different criteria or constraints. 2

3 Main criteria Contiguity Compactness Balance or equity Respect of natural boundaries Socio-economic homogeneity A district is contiguous if it is possible to travel from any point in the district to any other in the district without having to go through any other district 3

4 Main criteria Contiguity Compactness Balance or equity Respect of natural boundaries Socio-economic homogeneity Compactness is a criterion used to prevent the formation of odd-shaped districts that is districts should be circular or square in shape rather than elongated 4

5 Main criteria Contiguity Compactness Balance or equity Respect of natural boundaries Socio-economic homogeneity Balanced in workload or in population in the districts 5

6 Main criteria Contiguity Compactness Balance or equity Respect of natural boundaries Socio-economic homogeneity Rivers, railroads, mountains, administrative boundaries, etc. 6

7 Main criteria Contiguity Compactness Balance or equity Respect of natural boundaries Socio-economic homogeneity Having a better representation of residents who share common concerns or views (can be based on income revenues, minorities, etc.) 7

8 Applications Political districting (Hess and Weaver (1965), Garfinkel and Nemhauser (1970), Mehotra,, Johnson and Nemhauser (1998), Bozkaya, Erkut and Laporte (2002)) School districting (Ferland and Guénette (1990)) Districting for health services (Gascon, Gorvan and Michelon (2010)) 8

9 Political districting The political districting problem consists in partitioning an area into electoral constituencies (districts), each one being assigned a number of representatives. one representative is assigned to each district; each population unit is assigned to one district; the number of districts is usually known (M( districts); all districts must have approximately the same number of voters for better equity 9

10 Political districting : Hess et al. (1965) Among the first mathematical programming approach of the political districting problem. The problem is modeled as an assignment problem with additional constraints where each population unit must be assigned to a district center. 10

11 Political districting : Hess et al. (1965) Mathematical model Parameters: I : set of population units J : set of potential district centers M : number of district centers p i : population of the i th population unit a : minimum population allowed for a district b : maximum population allowed for a district a and b can be considered as deviations from the average population of all population units which is given by p i I i M 11

12 Political districting : Hess et al. (1965) c ij ij, the cost of assigning population unit i to district center j is the Euclidean distance between the district center i and the district center j. d ij : distance between the centers of population units i and j. Minimizing the Euclidean distance between population units favours contiguous districts but do not guarantee them. 12

13 District j Population unit i Population unit j Center of population unit i Center of population unit j Center of district j 13

14 Political districting : Hess et al. (1965) Mathematical model Variable: x ij = 1 if population unit i is assigned to district center j 0 otherwise i I, j J c ij = d ij2 p j is used in the objective function of the mathematical model by Hess et al. 14

15 Political districting : Hess et al. (1965) Mathematical model Min i I j J c ij x ij Subject to j J j J a x x ij = 1, i I jj = i I p M i x ij b, j J (1) (2) (3) x ij { 0,1 }, i I j J, 15

16 Political districting : Hess et al. (1965) Mathematical model Min i I j J c ij x ij Subject to j J j J a x x ij = 1, i I jj = i I p M i x ij b, j J (1) (2) (3) Constraint (1) ensures that each population unit i is assigned to exactly one district x ij { 0,1 }, i I j J, 16

17 Political districting : Hess et al. (1965) Mathematical model Min i I j J c ij x ij Subject to j J j J a x x ij = 1, i I jj = i I p M i x ij b, j J (1) (2) (3) Constraint (2) ensures that M districts are chosen. x ij { 0,1 }, i I j J, 17

18 Political districting : Hess et al. (1965) Mathematical model Min i I j J c ij x ij Subject to j J j J a x ij x x ij = 1, i I jj = i I p M i x ij b, j J { 0,1 }, i I j J, (1) (2) (3) Constraint (3) ensures population equity among districts 18

19 Political districting : Hess et al. (1965) Solving method : heuristic 1. Define district centers 2. Assign population equally to the district centers at minimum costs (with a transportation algorithm) 3. Adjust assignment so that each population unit is entirely within one district 4. Compute centroids and use them as improved district centers 5. Repeat from step 2 until solution converges 6. Try with other initial district centers 19

20 Political districting : Hess et al. (1965) Limits of the solving method No guaranty of convergence Non contiguous solutions must be rejected If many solutions, choose the most compact one and one having a good population equity by always verifying that there is no deviation form the minimum and maximum allowable population 20

21 Political districting : Garfinkel and Nemhauser (1970) Garfinkel and Nemhauser (1970) considers predefined districts to be specified and among which the final districts are chosen. 21

22 Political districting : Garfinkel and Nemhauser (1970) Mathematical model Parameters: I : set of population units J : set of potential districts M : number of district p i : population of the i th population unit a ij 1 if population unit i belongs to district j = 0 otherwise P(j) : population of district j where P ( j ) = i I a ij p i 22

23 Political districting : Garfinkel and Nemhauser (1970) Mathematical model Parameters: c j = P( j) αp p deviation of population of district j from the average population, p 23

24 Political districting : Garfinkel and Nemhauser (1970) Mathematical model Variable x j 1 if district j = 0 otherwise is chosen 24

25 Political districting : Garfinkel and Nemhauser (1970) Mathematical programming problem Minimise max st j J a ij j J x j x = 1, j = M j J i I c j x j (1) (2) (P 1 ) Constraint (1) ensures that each population unit i is assigned to exactly one district x j { 0,1 }, j J 25

26 Political districting : Garfinkel and Nemhauser (1970) Minimise max st j J a ij j J x j x = 1, j = M j J i I c j x j (1) (2) (P 1 ) Constraint (2) ensures that that M districts are chosen. x j { 0,1 }, j J 26

27 Political districting : Garfinkel and Nemhauser (1970) The problem implies that potential districts must be defined. Contiguity : Let B = {b{ ik }, a symmetric matrix where b ik 1 if units i and k have a common boundary greater than a = 0 otherwise point If a district is an undirected graph whose vertices are the units s of the district, an arc exists between vertices i and k if and only if b ik =1. A district is contiguous if and only if the graph is connected (a path exists between every pair of vertices). A district is feasible only if it is contiguous. 27

28 Connected graph of district j Population unit i Population unit j Center of district j 28

29 Political districting : Garfinkel and Nemhauser (1970) A district is feasible only if P( j) p αp, where 100α(0 α 1) is the maximum allowable percentage deviation of the population of a district from the average district population. 29

30 Political districting : Garfinkel and Nemhauser (1970) Compactness : d(i,k) = distance between units i and k. e(i,k) = exclusion distance between units i and k. District j is feasible only if d(i,k) > e(i,k) implies that a ij. a kj = 0 (i and j can not be in the same district if the distance between them is higher than e(i,k)) i d(i,k) e(i,k) k 30

31 Political districting : Garfinkel and Nemhauser (1970) Compactness : d j = distance between the units of j for district j which are farthest apart. d j = max, = d( i, k) a a, i, k = 1 { } N i k ij kj,.., (d j measures the range of the district) A(j) = area of district j c ' j = d 2 j A( j) is a dimensionless measure of the shape compactness of district j District j is feasible only if ' c j β, 0 β. 31

32 Political districting : Garfinkel and Nemhauser (1970) Solving method : two phase method 1) Phase I: Find feasible districts Start at an arbitrary unit and adjoin contiguous units until the combined population becomes feasible. If the district is compact, keep it. If combined population exceeds the upper limit, backtrack on the enumeration tree. It is verified if the district has some enclaves. District with an enclave 32

33 Political districting : Garfinkel and Nemhauser (1970) Solving method : two phase method 2) Phase II: Solve the mathematical programming problem (search tree algorithm) (see paper for more details) 33

34 Political districting : Mehotra,, Johnson and Nemhauser (1998) The problem considered by Mehotra et al. (1998) is similar to the problem in Garfinkel and Nemhauser (1970). But their model considers more potential districts. They consider a graph partitioning problem where A node is associated to every population unit (its weight is equal to the corresponding population) An edge connects two nodes when the corresponding population units are neighbours A solution is a connected graph (for contiguity) for which the sum of the node weights is within a population interval (for population equity). 34

35 Political districting : Mehotra,, Johnson and Nemhauser (1998) Same model as Garfinkel and Nemhauser (1970) except for c j which is the cost of district j. The question is : how should c j be defined? Min j J a ij j J j J x j x c j x j = 1, j = M i I (1) (2) (P 2 ) x j { 0,1 }, j J 35

36 Political districting : Mehotra,, Johnson and Nemhauser (1998) The cost of district j, c j, measures its non compactness. V: set of population units E: edges connecting units if they share common borders G(V,E): graph G (V,E ): connected subgraph defining a district and satisfying population limits Non compactness of G G will be measured by how far units in the district are from a central unit. 36

37 Political districting : Mehotra,, Johnson and Nemhauser (1998) s ij : number of edges in a shortest path from i to j in G. Center of G G : node u V ' such that s uj j V ' is minimized. Cost of a district with u as the center of the district is given by s uj j V ' A district is more compact when the cost is smaller. i s ui = 2 s uk = 2 k u j s uj = 2 37

38 Political districting : Mehotra,, Johnson and Nemhauser (1998) Solving method : column generation method 1) Start with a subset of feasible districts, J J 2) Solve the linear relaxation of (P 2 ) restricted to J J where 0 x j 1 This linear relaxation of (P 2 ) is LP-P 2 (J ). 3) The optimal solution of the linear relaxation of (P 2 ) is feasible to LP-P 2 (J). A dual value π ι is obtained for each constraint in LP-P 2 (J). 3) Determine if the optimal solution of LP-P 2 (J ) ) is optimal for LP-P 2 (J). This is done by solving a subproblem SP. 38

39 Political districting : Mehotra,, Johnson and Nemhauser (1998) Solving method : column generation method Parameters for SP : p i : population of unit i p min, p max : lower and upper bounds on the population of a district 1 if unit i is in the district y i = 0 otherwise pi i V p = is the average population of a district M 39

40 Political districting : Mehotra,, Johnson and Nemhauser (1998) SP problem Min u V p y i { S( u) } where S( u) = π min p u i p { V u} i y i p p u { V u} ( s ) n+ 1 π u + min ui π i i max { 0,1 }, i { V u} and y satisfies contiguity constraints y i 40

41 Political districting : Mehotra,, Johnson and Nemhauser (1998) Contiguity constraints To ensure contiguity of districts, districts are required to be subtrees of a shortest path tree rooted at u (district center). Constraints allowing district j to be selected only if at least one of the nodes that is adjacent to it and closer to u is also selected, are added, that is If S j = { i V sui = suj 1 and ( i, j) E} then we add the contiguity constraint y j y i i S j ensuring that node j is selected only if all nodes along some shortest path from u to j are also selected. 41

42 Political districting : Mehotra,, Johnson and Nemhauser (1998) If the optimal objective value of SP is negative then a district with minimum value is added to the set J J and LP-P 2 (J ) ) is solved again. Otherwise, the current solution to LP-P 2 (J ) ) is also optimal to LP-P 2 (J). In this case, if the solution is integral, then a solution to P 2 is found. If it is not integral, a branching rule is applied, based on a depthd epth-first- search strategy, to find another solution. 42

43 Political districting : Bozkaya, Erkut and Laporte (2003) The political districting problem solved by Bozkaya et al. (2003) considers the contiguity constraint as a hard constraint and all other criteria as soft constraints through a weighted objective function. Other criteria : population equality compactness socio-economic homogeneity similar districts to the existing districts integrity of communities 43

44 Political districting : Bozkaya, Erkut and Laporte (2003) Population equality: J : set of all districts in solution x (feasible or not) P j (x): population of district j in solution x P = j J P ( x) j M is the average population of the district The population of a district is required to be in the interval [( 1 α ) P,(1 + α) P ] where 0 α < 1 Population equality function : j f x = ( ) pop J max { P ( x) (1 + α) P,(1 α) P P ( x),0} It evaluates the maximum deviation of the population in the district from the maximum and the minimum allowed j P j 44

45 Political districting : Bozkaya, Erkut and Laporte (2003) Compactness: : two measures R : perimeter of the whole territory, used for scaling R j (x) : perimeter of district j in solution x Compactness measure 1 : R j ( x) j J f ( comp1 x) = 2R R Compactness measure 2 : f ( comp2 x) = j J 1 2π M R A j j ( x) / π ( x) 45

46 Political districting : Bozkaya, Erkut and Laporte (2003) Socio-economic homogeneity : minimize the sum of the standard deviation of income S j (x): : standard deviation of income in district j S : average income Socio-economic homogeneity function: f soc ( x) = j J S S j ( x) 46

47 Political districting : Bozkaya, Erkut and Laporte (2003) Similar districts to the existing districts: O j (x) : largest overlay of district j with a district contained in a solution x A: : entire area Similarity objective function: f sim = 1 j J O j A ( x) Old and new districts Overlaying sectors 47

48 Political districting : Bozkaya, Erkut and Laporte (2003) Integrity of communities: G j (x) : largest population of a given community in district j of solution x Integrity of communities objective function : minimize f int = 1 j J j J G P j j ( x) ( x) 48

49 Political districting : Bozkaya, Erkut and Laporte (2003) Solving method : Tabu search Objective function F( x) = α pop f pop ( x) + α comp f comp ( x) + α soc f soc ( x) + α sim f sim ( x) + α int f int ( x) 49

50 Political districting : Bozkaya, Erkut and Laporte (2003) Solving method : Tabu search Initial solution : select a seed unit for a district and add to it adjacent units until the district population attains P or when no adjacent units are available. If the number of districts created is larger than M,, reduce it by merging the least populated unit with the least populated neighbour. If the number of districts created is less than M,, gradually increase it by iteratively splitting the most populated district into two while preserving contiguity. 50

51 Political districting : Bozkaya, Erkut and Laporte (2003) Solving method : Tabu search Type I neighbours or moves (i,j,l( i,j,l) : all solutions that can be obtained from x by moving a basic unit i from its current district j to a neighbour district l without creating a non-contiguous solution. Type II neighbours or moves (i,k,j,l( i,k,j,l) : all solutions that can be obtained from x by swapping two border units i and k between their respective districts j and l without creating a non-contiguous solution. i District j District l i k District j District l Type I Type II 51

52 Political districting : Bozkaya, Erkut and Laporte (2003) Solving method : Tabu search Preventing cycling : for both types of moves, a move which puts unit i back into district j or unit k back into district i is said to be tabu for θ iterations where θ is chosen randomly in an interval. Diversification : by adding a penalty term to the objective function value associated to the frequently performed moves. Adaptive memory procedure : keep in a pool of solutions a set of 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 a higher probability. 52

53 School districting problem : Ferland and Guénette (1990) The school districting problem consists in determining the groups of students attending each school of a school board located over a given territory. Ferland and Guénette (1990) propose a decision support system to solve the problem. 53

54 School districting problem : Ferland and Guénette (1990) Different constraints must be taken into account : School capacity Class capacity Contiguity of school sectors Keep students in the same school from year to year 54

55 School districting problem : Ferland and Guénette (1990) Mathematical model Parameters : G(N,A) : road network for the school board N is the set of nodes defined as street intersections and school locations A is the set of edges defined as the street segments. A A is a subset of edges with students located on it I : number of edges in A K : number of grades 55

56 School districting problem : Ferland and Guénette (1990) Mathematical model Parameters : α φ r k j k k i = number of classes of grade k (1 k K) available at school j (1 j J ) = upper bound on the number of students in a class grade k (1 = number of students of grade k (1 k K) on edge a i (1 i I ) k K) 56

57 School districting problem : Ferland and Guénette (1990) Mathematical model Variables : x ij = 1 if edge ai (1 i I) is assigned to school j (1 j J ) 0 otherwise 57

58 School districting problem : Ferland and Guénette (1990) Mathematical model Constraints : J j= 1 I i= 1 r x k i ij x = 1, 1 i ij α k j φ, k I 1 k K,1 j J (1) (2) Constraint (1) ensures that each edge i is assigned to exactly one school 58

59 School districting problem : Ferland and Guénette (1990) Mathematical model Constraints : J j= 1 x ij = 1, 1 i I (1) I i= 1 r k i x ij α k j φ, k 1 k K,1 j J (2) Constraint (2) ensures that the capacity of each school for each grade is not exceeded 59

60 School districting problem : Ferland and Guénette (1990) Mathematical model Contiguity constraints : distance is needed d ij : distance between edge a i and school j (distance between the node where school j is located and the end- node of a i closer to this node w : walking distance to the school If d ij > w and xij = 1 then students on edge a i have to go to school j by bus. If d ij w then a i is within walking distance of school j. edge a i Distance between edge a i and school j School j 60

61 School districting problem : Ferland and Guénette (1990) Mathematical model Contiguity constraints : W Z B j { a A : d w and d > w, 1 l J l j} =, i ij il { a A : d w for more than one index j, j J} = 1 i ij { a A : d > w for all j, j J} = 1 i ij A = ( J W ) Z B j = 1 j 61

62 School districting problem : Ferland and Guénette (1990) Mathematical model Walking constraints : J ( W ) Z then x = only if d w For any edge a 1 Therefore if a i i j= 1 j W j then x ij = 1. ij ij Edges in Z should be assigned to their closest school (if capacity constraints can be satisfied) and priority should be given to edges closer to their closest school. 62

63 School districting problem : Ferland and Guénette (1990) Mathematical model A measure to evaluate how well a solution satisfy the capacity constraints : ECM = J K I k k max 0, ri xij α jφk = = = j 1 k 1 i 1 63

64 School districting problem : Ferland and Guénette (1990) Assignment process Procedure W-edges : If a i W j then x ij = 1 Procedure Z-edges : order edges in Z in decreasing order of their distance to their closest school. Assign each edge a i belonging to Z to the closest school j s.t. d ij w and the capacity constraint is satisfied. If it is not possible, assign a i to the closest school (even if some capacity constraints are not satisfied) 64

65 School districting problem : Ferland and Guénette (1990) Assignment process Procedure B-edges : order edges in B in increasing order of their distance to their closest school. Treat each edge a i belonging to B and determine S i, the set of schools to which the edges adjacent to a i are assigned. If S i is empty then S i = S,, set of all schools. Assign a i to the closest school j in S i s.t.. the capacity constraints are satisfied. If it is not possible then assign a i to school j in S i with smallest value ECM. 65

66 Districting for a public medical clinic : Gascon, Gorvan and Michelon (2010) The territory covered by the public medical clinic is divided into districts Each district is assigned to a given number of nurses Each nurse is assigned to a given district A nurse is usually assigned to a short list of patients as a follow-up nurse The list of patients to visit varies from day to day: it becomes difficult to balance nurse workloads it becomes difficult to account for the continuity of care requirements 66

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

68 Mathematical model Variables x ik = 1 if patient i is assigned to nurse k 0 otherwise Parameters T = Length of a working day t ij = Traveling time from patient i to patient j t oj = Traveling time from the public medical clinic (o)( ) to patient j r i = Time required to complete treatment to patient i 68

69 Mathematical model f i = Visit frequency (value between 0 and 1) f i = number of visits planned to patient i during a number of days during a month month s i = Parameter related to continuity of care s i = 1 if continuity of care is important to patient i 0 otherwise 69

70 Mathematical model p ik = Proportion of visits made by nurse k to patient i p ik = number of visits to patient i by nurse k during the previous month total number of visits to patient i during the previous month x ik x ik = Parameter related to follow-up 1 if patient i was assigned to nurse k = 0 otherwise during the previous month 70

71 Nurses workload A daily nurse workload is equal to where k k W = 2t + [ x f ( r + t )] k O i I ik i i i t = x k O i I ik f i t oi Daily mean traveling time from the medical public clinic to all patients assigned to nurse k t = x k i j I j i jk f i t ij Daily mean traveling time from patient i to all patients assigned to nurse k 71

72 Nurses workload Additional workload generated by assigning patient i to nurse k is defined by parameter w = f ( r + t ik i where an estimated daily mean traveling time from the previous solution s is used. i *k i ) The nurse workload W k is linearized W since w ik is a constant k k = 2t 0 + i I x ik w ik 72

73 Constraints Each patient must be assigned to exactly one nurse (or one district). ict). k K x ik = 1, i I A patient i can be assigned to nurse k only if he is close to her sector that is if C ik = 1 xik C ik where C ik = 1 if patient i can be assigned to nurse k 0 otherwise 73

74 Constraints and objectives A nurse k s s workload should be close to the average workload of all nurses. W k = k K W K k + q + k q k, k K we minimise the gap between nurse k s s workload and the average workload f ( x) equ = ( q + + ) k qk k K 74

75 Constraints and objectives The daily working hours of a nurse k should not exceed T hours W k e + T, k k K we minimise the excess over T in working hours f ( x) sup = k K + e k 75

76 Constraints and objectives A patient i should be assigned to the nurse k who visited him most frequently in the previous period according to the value of p ik x ik = p ik + e + ik e ik, k K, i if following-up a patient i is essential (s i =1), we minimise an objective function where patient i should be assigned to the nurse k who visited him most frequently in the last period, weighted according to the frequency f i. f ( x) suiv + = f isieik k K i I I 76

77 Another objective f sim ( x) = k K i I f i x ik ( 1 x ) ik is minimised to avoid moving too many patients from one nurse to the other where 1 x ik = 0 if patient i otherwise was assigned to nurse k during the previous month 77

78 Mathematical model Each of the four objective functions is weighted according to some α. Global objective function α f ( x) + α f ( x) + α f ( x) + α sup sup equ equ ( x) The problem is an integer linear programming problem with binary variables sim sim suiv f suiv 78

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

80 Main steps of the algorithm 1) Update the list of patients to visit 2) Assign each new patient to nurse k whose district is the closest 3) Determine the list of patients who can be moved from one nurse s district to another and the districts where they could be moved (C ik =1 or 0) 4) Solve the sub problem with CPLEX 5) Repeat steps 3) and 4) while the solution changes or a given number of iterations is not reached 80

81 Numerical tests and results Data generated randomly Planning horizon for data: one year Tests are done for one month periods Different values of α tested Four types of data: A, B, C and D, and five runs for each type of o data 81

82 A Homogenous districts of similar workloads 82

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

84 C Greater density districts in the southwest with similar workloads 84

85 D Same density as c but workloads not similar 85

86 Results For type A and C data,, initial solutions being of good quality, computational time was low: few patients were moved from one district to another workloads are similar for all nurses For type B and D data,, initial solutions being of poor quality, computational time was higher: overtime but limited to values acceptable different workloads among nurses but differences are acceptable 86

87 Results In general, when a higher priority is given to balancing workloads, there is a greater gap between the initial and the final solution. When a higher priority is given to reducing movements of patients from one district to another, it produces a solution with more overtime and differences in workloads. When a higher priority is given to maintaining follow-up up,, it does not have a real impact on the solution. 87

88 Conclusion Solutions generally have similar workloads which is very important to nurses To be tested on real data To be tested on daily data and to determine routes for those data 88

Column Generation Method for an Agent Scheduling Problem

Column Generation Method for an Agent Scheduling Problem Column Generation Method for an Agent Scheduling Problem Balázs Dezső Alpár Jüttner Péter Kovács Dept. of Algorithms and Their Applications, and Dept. of Operations Research Eötvös Loránd University, Budapest,

More information

Introduction to Mathematical Programming IE406. Lecture 16. Dr. Ted Ralphs

Introduction to Mathematical Programming IE406. Lecture 16. Dr. Ted Ralphs Introduction to Mathematical Programming IE406 Lecture 16 Dr. Ted Ralphs IE406 Lecture 16 1 Reading for This Lecture Bertsimas 7.1-7.3 IE406 Lecture 16 2 Network Flow Problems Networks are used to model

More information

Computational Complexity CSC Professor: Tom Altman. Capacitated Problem

Computational Complexity CSC Professor: Tom Altman. Capacitated Problem Computational Complexity CSC 5802 Professor: Tom Altman Capacitated Problem Agenda: Definition Example Solution Techniques Implementation Capacitated VRP (CPRV) CVRP is a Vehicle Routing Problem (VRP)

More information

Minimum Weight Constrained Forest Problems. Problem Definition

Minimum Weight Constrained Forest Problems. Problem Definition Slide 1 s Xiaoyun Ji, John E. Mitchell Department of Mathematical Sciences Rensselaer Polytechnic Institute Troy, NY, USA jix@rpi.edu, mitchj@rpi.edu 2005 Optimization Days Montreal, Canada May 09, 2005

More information

Unsupervised Learning and Clustering

Unsupervised Learning and Clustering Unsupervised Learning and Clustering Selim Aksoy Department of Computer Engineering Bilkent University saksoy@cs.bilkent.edu.tr CS 551, Spring 2009 CS 551, Spring 2009 c 2009, Selim Aksoy (Bilkent University)

More information

Cluster Analysis. Ying Shen, SSE, Tongji University

Cluster Analysis. Ying Shen, SSE, Tongji University Cluster Analysis Ying Shen, SSE, Tongji University Cluster analysis Cluster analysis groups data objects based only on the attributes in the data. The main objective is that The objects within a group

More information

Assignment 3b: The traveling salesman problem

Assignment 3b: The traveling salesman problem Chalmers University of Technology MVE165 University of Gothenburg MMG631 Mathematical Sciences Linear and integer optimization Optimization with applications Emil Gustavsson Assignment information Ann-Brith

More information

Branch-and-bound: an example

Branch-and-bound: an example Branch-and-bound: an example Giovanni Righini Università degli Studi di Milano Operations Research Complements The Linear Ordering Problem The Linear Ordering Problem (LOP) is an N P-hard combinatorial

More information

Introduction to Machine Learning

Introduction to Machine Learning Introduction to Machine Learning Clustering Varun Chandola Computer Science & Engineering State University of New York at Buffalo Buffalo, NY, USA chandola@buffalo.edu Chandola@UB CSE 474/574 1 / 19 Outline

More information

ECLT 5810 Clustering

ECLT 5810 Clustering ECLT 5810 Clustering What is Cluster Analysis? Cluster: a collection of data objects Similar to one another within the same cluster Dissimilar to the objects in other clusters Cluster analysis Grouping

More information

Supervised vs. Unsupervised Learning

Supervised vs. Unsupervised Learning Clustering Supervised vs. Unsupervised Learning So far we have assumed that the training samples used to design the classifier were labeled by their class membership (supervised learning) We assume now

More information

Unsupervised Learning and Clustering

Unsupervised Learning and Clustering Unsupervised Learning and Clustering Selim Aksoy Department of Computer Engineering Bilkent University saksoy@cs.bilkent.edu.tr CS 551, Spring 2008 CS 551, Spring 2008 c 2008, Selim Aksoy (Bilkent University)

More information

Unsupervised Learning : Clustering

Unsupervised Learning : Clustering Unsupervised Learning : Clustering Things to be Addressed Traditional Learning Models. Cluster Analysis K-means Clustering Algorithm Drawbacks of traditional clustering algorithms. Clustering as a complex

More information

An iteration of Branch and Bound One iteration of Branch and Bound consists of the following four steps: Some definitions. Branch and Bound.

An iteration of Branch and Bound One iteration of Branch and Bound consists of the following four steps: Some definitions. Branch and Bound. ranch and ound xamples and xtensions jesla@man.dtu.dk epartment of Management ngineering Technical University of enmark ounding ow do we get ourselves a bounding function? Relaxation. Leave out some constraints.

More information

A Tabu Search Heuristic for the Generalized Traveling Salesman Problem

A Tabu Search Heuristic for the Generalized Traveling Salesman Problem A Tabu Search Heuristic for the Generalized Traveling Salesman Problem Jacques Renaud 1,2 Frédéric Semet 3,4 1. Université Laval 2. Centre de Recherche sur les Technologies de l Organisation Réseau 3.

More information

Outline. Optimales Recycling - Tourenplanung in der Altglasentsorgung

Outline. Optimales Recycling - Tourenplanung in der Altglasentsorgung 1 Optimales Recycling - Ruhr-Universität Bochum, 15.02.2013 2 1. Introduction and Motivation 2. Problem Definition 3. Literature Review 4. Mathematical Model 5. Variable Neighborhood Search 6. Numerical

More information

Branch-price-and-cut for vehicle routing. Guy Desaulniers

Branch-price-and-cut for vehicle routing. Guy Desaulniers Guy Desaulniers Professor, Polytechnique Montréal, Canada Director, GERAD, Canada VeRoLog PhD School 2018 Cagliari, Italy, June 2, 2018 Outline 1 VRPTW definition 2 Mathematical formulations Arc-flow formulation

More information

Algorithm Design (8) Graph Algorithms 1/2

Algorithm Design (8) Graph Algorithms 1/2 Graph Algorithm Design (8) Graph Algorithms / Graph:, : A finite set of vertices (or nodes) : A finite set of edges (or arcs or branches) each of which connect two vertices Takashi Chikayama School of

More information

ECLT 5810 Clustering

ECLT 5810 Clustering ECLT 5810 Clustering What is Cluster Analysis? Cluster: a collection of data objects Similar to one another within the same cluster Dissimilar to the objects in other clusters Cluster analysis Grouping

More information

Copyright 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin Introduction to the Design & Analysis of Algorithms, 2 nd ed., Ch.

Copyright 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin Introduction to the Design & Analysis of Algorithms, 2 nd ed., Ch. Iterative Improvement Algorithm design technique for solving optimization problems Start with a feasible solution Repeat the following step until no improvement can be found: change the current feasible

More information

6 ROUTING PROBLEMS VEHICLE ROUTING PROBLEMS. Vehicle Routing Problem, VRP:

6 ROUTING PROBLEMS VEHICLE ROUTING PROBLEMS. Vehicle Routing Problem, VRP: 6 ROUTING PROBLEMS VEHICLE ROUTING PROBLEMS Vehicle Routing Problem, VRP: Customers i=1,...,n with demands of a product must be served using a fleet of vehicles for the deliveries. The vehicles, with given

More information

Clustering. Robert M. Haralick. Computer Science, Graduate Center City University of New York

Clustering. Robert M. Haralick. Computer Science, Graduate Center City University of New York Clustering Robert M. Haralick Computer Science, Graduate Center City University of New York Outline K-means 1 K-means 2 3 4 5 Clustering K-means The purpose of clustering is to determine the similarity

More information

MVE165/MMG630, Applied Optimization Lecture 8 Integer linear programming algorithms. Ann-Brith Strömberg

MVE165/MMG630, Applied Optimization Lecture 8 Integer linear programming algorithms. Ann-Brith Strömberg MVE165/MMG630, Integer linear programming algorithms Ann-Brith Strömberg 2009 04 15 Methods for ILP: Overview (Ch. 14.1) Enumeration Implicit enumeration: Branch and bound Relaxations Decomposition methods:

More information

Algorithms for the Bin Packing Problem with Conflicts

Algorithms for the Bin Packing Problem with Conflicts Algorithms for the Bin Packing Problem with Conflicts Albert E. Fernandes Muritiba *, Manuel Iori, Enrico Malaguti*, Paolo Toth* *Dipartimento di Elettronica, Informatica e Sistemistica, Università degli

More information

Recursive column generation for the Tactical Berth Allocation Problem

Recursive column generation for the Tactical Berth Allocation Problem Recursive column generation for the Tactical Berth Allocation Problem Ilaria Vacca 1 Matteo Salani 2 Michel Bierlaire 1 1 Transport and Mobility Laboratory, EPFL, Lausanne, Switzerland 2 IDSIA, Lugano,

More information

Minimum-Spanning-Tree problem. Minimum Spanning Trees (Forests) Minimum-Spanning-Tree problem

Minimum-Spanning-Tree problem. Minimum Spanning Trees (Forests) Minimum-Spanning-Tree problem Minimum Spanning Trees (Forests) Given an undirected graph G=(V,E) with each edge e having a weight w(e) : Find a subgraph T of G of minimum total weight s.t. every pair of vertices connected in G are

More information

Crew Scheduling Problem: A Column Generation Approach Improved by a Genetic Algorithm. Santos and Mateus (2007)

Crew Scheduling Problem: A Column Generation Approach Improved by a Genetic Algorithm. Santos and Mateus (2007) In the name of God Crew Scheduling Problem: A Column Generation Approach Improved by a Genetic Algorithm Spring 2009 Instructor: Dr. Masoud Yaghini Outlines Problem Definition Modeling As A Set Partitioning

More information

Lecture 4: Graph Algorithms

Lecture 4: Graph Algorithms Lecture 4: Graph Algorithms Definitions Undirected graph: G =(V, E) V finite set of vertices, E finite set of edges any edge e = (u,v) is an unordered pair Directed graph: edges are ordered pairs If e

More information

Lesson 3. Prof. Enza Messina

Lesson 3. Prof. Enza Messina Lesson 3 Prof. Enza Messina Clustering techniques are generally classified into these classes: PARTITIONING ALGORITHMS Directly divides data points into some prespecified number of clusters without a hierarchical

More information

Clustering. SC4/SM4 Data Mining and Machine Learning, Hilary Term 2017 Dino Sejdinovic

Clustering. SC4/SM4 Data Mining and Machine Learning, Hilary Term 2017 Dino Sejdinovic Clustering SC4/SM4 Data Mining and Machine Learning, Hilary Term 2017 Dino Sejdinovic Clustering is one of the fundamental and ubiquitous tasks in exploratory data analysis a first intuition about the

More information

CS6702 GRAPH THEORY AND APPLICATIONS 2 MARKS QUESTIONS AND ANSWERS

CS6702 GRAPH THEORY AND APPLICATIONS 2 MARKS QUESTIONS AND ANSWERS CS6702 GRAPH THEORY AND APPLICATIONS 2 MARKS QUESTIONS AND ANSWERS 1 UNIT I INTRODUCTION CS6702 GRAPH THEORY AND APPLICATIONS 2 MARKS QUESTIONS AND ANSWERS 1. Define Graph. A graph G = (V, E) consists

More information

Topic 6 Representation and Description

Topic 6 Representation and Description Topic 6 Representation and Description Background Segmentation divides the image into regions Each region should be represented and described in a form suitable for further processing/decision-making Representation

More information

CPSC 340: Machine Learning and Data Mining. Density-Based Clustering Fall 2016

CPSC 340: Machine Learning and Data Mining. Density-Based Clustering Fall 2016 CPSC 340: Machine Learning and Data Mining Density-Based Clustering Fall 2016 Assignment 1 : Admin 2 late days to hand it in before Wednesday s class. 3 late days to hand it in before Friday s class. 0

More information

Clustering methods for the automatic design of traffic zones

Clustering methods for the automatic design of traffic zones SIDT 2009 International Conference 1 Clustering methods for the automatic design of traffic zones Guido Gentile 1, Daniele Tiddi 1 1 DITS - Dipartimento di Idraulica Trasporti e Strade, Sapienza Università

More information

DESIGN AND ANALYSIS OF ALGORITHMS GREEDY METHOD

DESIGN AND ANALYSIS OF ALGORITHMS GREEDY METHOD 1 DESIGN AND ANALYSIS OF ALGORITHMS UNIT II Objectives GREEDY METHOD Explain and detail about greedy method Explain the concept of knapsack problem and solve the problems in knapsack Discuss the applications

More information

Unsupervised: no target value to predict

Unsupervised: no target value to predict Clustering Unsupervised: no target value to predict Differences between models/algorithms: Exclusive vs. overlapping Deterministic vs. probabilistic Hierarchical vs. flat Incremental vs. batch learning

More information

Mathematical Morphology and Distance Transforms. Robin Strand

Mathematical Morphology and Distance Transforms. Robin Strand Mathematical Morphology and Distance Transforms Robin Strand robin.strand@it.uu.se Morphology Form and structure Mathematical framework used for: Pre-processing Noise filtering, shape simplification,...

More information

3 No-Wait Job Shops with Variable Processing Times

3 No-Wait Job Shops with Variable Processing Times 3 No-Wait Job Shops with Variable Processing Times In this chapter we assume that, on top of the classical no-wait job shop setting, we are given a set of processing times for each operation. We may select

More information

Vehicle Routing Heuristic Methods

Vehicle Routing Heuristic Methods DM87 SCHEDULING, TIMETABLING AND ROUTING Outline 1. Construction Heuristics for VRPTW Lecture 19 Vehicle Routing Heuristic Methods 2. Local Search 3. Metaheuristics Marco Chiarandini 4. Other Variants

More information

Equi-sized, Homogeneous Partitioning

Equi-sized, Homogeneous Partitioning Equi-sized, Homogeneous Partitioning Frank Klawonn and Frank Höppner 2 Department of Computer Science University of Applied Sciences Braunschweig /Wolfenbüttel Salzdahlumer Str 46/48 38302 Wolfenbüttel,

More information

Clustering. Supervised vs. Unsupervised Learning

Clustering. Supervised vs. Unsupervised Learning Clustering Supervised vs. Unsupervised Learning So far we have assumed that the training samples used to design the classifier were labeled by their class membership (supervised learning) We assume now

More information

ALGORITHM CHEAPEST INSERTION

ALGORITHM CHEAPEST INSERTION Version for STSP ALGORITHM CHEAPEST INSERTION. Choose the two furthest vertices i and k as initial subtour (c ik = max {c hj : (h, j) A}); set V := V \ {i} \ {k} (set of the unvisited vertices).. For each

More information

Chapter 11: Graphs and Trees. March 23, 2008

Chapter 11: Graphs and Trees. March 23, 2008 Chapter 11: Graphs and Trees March 23, 2008 Outline 1 11.1 Graphs: An Introduction 2 11.2 Paths and Circuits 3 11.3 Matrix Representations of Graphs 4 11.5 Trees Graphs: Basic Definitions Informally, a

More information

S. Dasgupta, C.H. Papadimitriou, and U.V. Vazirani 165

S. Dasgupta, C.H. Papadimitriou, and U.V. Vazirani 165 S. Dasgupta, C.H. Papadimitriou, and U.V. Vazirani 165 5.22. You are given a graph G = (V, E) with positive edge weights, and a minimum spanning tree T = (V, E ) with respect to these weights; you may

More information

Clustering. Informal goal. General types of clustering. Applications: Clustering in information search and analysis. Example applications in search

Clustering. Informal goal. General types of clustering. Applications: Clustering in information search and analysis. Example applications in search Informal goal Clustering Given set of objects and measure of similarity between them, group similar objects together What mean by similar? What is good grouping? Computation time / quality tradeoff 1 2

More information

University of Florida CISE department Gator Engineering. Clustering Part 2

University of Florida CISE department Gator Engineering. Clustering Part 2 Clustering Part 2 Dr. Sanjay Ranka Professor Computer and Information Science and Engineering University of Florida, Gainesville Partitional Clustering Original Points A Partitional Clustering Hierarchical

More information

Construction of Minimum-Weight Spanners Mikkel Sigurd Martin Zachariasen

Construction of Minimum-Weight Spanners Mikkel Sigurd Martin Zachariasen Construction of Minimum-Weight Spanners Mikkel Sigurd Martin Zachariasen University of Copenhagen Outline Motivation and Background Minimum-Weight Spanner Problem Greedy Spanner Algorithm Exact Algorithm:

More information

Methods and Models for Combinatorial Optimization Exact methods for the Traveling Salesman Problem

Methods and Models for Combinatorial Optimization Exact methods for the Traveling Salesman Problem Methods and Models for Combinatorial Optimization Exact methods for the Traveling Salesman Problem L. De Giovanni M. Di Summa The Traveling Salesman Problem (TSP) is an optimization problem on a directed

More information

On Covering a Graph Optimally with Induced Subgraphs

On Covering a Graph Optimally with Induced Subgraphs On Covering a Graph Optimally with Induced Subgraphs Shripad Thite April 1, 006 Abstract We consider the problem of covering a graph with a given number of induced subgraphs so that the maximum number

More information

Assigning Judges to Competitions Using Tabu Search Approach

Assigning Judges to Competitions Using Tabu Search Approach Assigning Judges to Competitions Using Tabu Search Approach Amina Lamghari Jacques A. Ferland Computer science and OR dept. University of Montreal Faculty of Information Technology University of Science

More information

TIM 206 Lecture Notes Integer Programming

TIM 206 Lecture Notes Integer Programming TIM 206 Lecture Notes Integer Programming Instructor: Kevin Ross Scribe: Fengji Xu October 25, 2011 1 Defining Integer Programming Problems We will deal with linear constraints. The abbreviation MIP stands

More information

CHAPTER 4: CLUSTER ANALYSIS

CHAPTER 4: CLUSTER ANALYSIS CHAPTER 4: CLUSTER ANALYSIS WHAT IS CLUSTER ANALYSIS? A cluster is a collection of data-objects similar to one another within the same group & dissimilar to the objects in other groups. Cluster analysis

More information

CSE 373 Final Exam 3/14/06 Sample Solution

CSE 373 Final Exam 3/14/06 Sample Solution Question 1. (6 points) A priority queue is a data structure that supports storing a set of values, each of which has an associated key. Each key-value pair is an entry in the priority queue. The basic

More information

Cluster Analysis. Mu-Chun Su. Department of Computer Science and Information Engineering National Central University 2003/3/11 1

Cluster Analysis. Mu-Chun Su. Department of Computer Science and Information Engineering National Central University 2003/3/11 1 Cluster Analysis Mu-Chun Su Department of Computer Science and Information Engineering National Central University 2003/3/11 1 Introduction Cluster analysis is the formal study of algorithms and methods

More information

Improved K-Means Algorithm for Capacitated Clustering Problem

Improved K-Means Algorithm for Capacitated Clustering Problem Improved K-Means Algorithm for Capacitated Clustering Problem S. GEETHA 1 G. POONTHALIR 2 P. T. VANATHI 3 PSG College of Technology Tamil Nadu India 1 geet_shan@yahoo.com 2 thalirkathir@rediffmail.com

More information

Graphs (MTAT , 6 EAP) Lectures: Mon 14-16, hall 404 Exercises: Wed 14-16, hall 402

Graphs (MTAT , 6 EAP) Lectures: Mon 14-16, hall 404 Exercises: Wed 14-16, hall 402 Graphs (MTAT.05.080, 6 EAP) Lectures: Mon 14-16, hall 404 Exercises: Wed 14-16, hall 402 homepage: http://courses.cs.ut.ee/2012/graafid (contains slides) For grade: Homework + three tests (during or after

More information

layers in a raster model

layers in a raster model layers in a raster model Layer 1 Layer 2 layers in an vector-based model (1) Layer 2 Layer 1 layers in an vector-based model (2) raster versus vector data model Raster model Vector model Simple data structure

More information

The Grid File: An Adaptable, Symmetric Multikey File Structure

The Grid File: An Adaptable, Symmetric Multikey File Structure The Grid File: An Adaptable, Symmetric Multikey File Structure Presentation: Saskia Nieckau Moderation: Hedi Buchner The Grid File: An Adaptable, Symmetric Multikey File Structure 1. Multikey Structures

More information

Extracting Communities from Networks

Extracting Communities from Networks Extracting Communities from Networks Ji Zhu Department of Statistics, University of Michigan Joint work with Yunpeng Zhao and Elizaveta Levina Outline Review of community detection Community extraction

More information

HEURISTIC ALGORITHMS FOR THE GENERALIZED MINIMUM SPANNING TREE PROBLEM

HEURISTIC ALGORITHMS FOR THE GENERALIZED MINIMUM SPANNING TREE PROBLEM Proceedings of the International Conference on Theory and Applications of Mathematics and Informatics - ICTAMI 24, Thessaloniki, Greece HEURISTIC ALGORITHMS FOR THE GENERALIZED MINIMUM SPANNING TREE PROBLEM

More information

Chapter 9 Graph Algorithms

Chapter 9 Graph Algorithms Chapter 9 Graph Algorithms 2 Introduction graph theory useful in practice represent many real-life problems can be if not careful with data structures 3 Definitions an undirected graph G = (V, E) is a

More information

Graph Theory. Part of Texas Counties.

Graph Theory. Part of Texas Counties. Graph Theory Part of Texas Counties. We would like to visit each of the above counties, crossing each county only once, starting from Harris county. Is this possible? This problem can be modeled as a graph.

More information

TIE Graph algorithms

TIE Graph algorithms TIE-20106 1 1 Graph algorithms This chapter discusses the data structure that is a collection of points (called nodes or vertices) and connections between them (called edges or arcs) a graph. The common

More information

Using the OPTMODEL Procedure in SAS/OR to Solve Complex Problems. Rob Pratt, Senior R&D Manager, SAS/OR

Using the OPTMODEL Procedure in SAS/OR to Solve Complex Problems. Rob Pratt, Senior R&D Manager, SAS/OR Using the OPTMODEL Procedure in SAS/OR to Solve Complex Problems Rob Pratt, Senior R&D Manager, SAS/OR Outline 1 Recent Features in PROC OPTMODEL 2 Graph Partitioning with Connectivity Constraints 2 /

More information

Clustering part II 1

Clustering part II 1 Clustering part II 1 Clustering What is Cluster Analysis? Types of Data in Cluster Analysis A Categorization of Major Clustering Methods Partitioning Methods Hierarchical Methods 2 Partitioning Algorithms:

More information

CAD Algorithms. Categorizing Algorithms

CAD Algorithms. Categorizing Algorithms CAD Algorithms Categorizing Algorithms Mohammad Tehranipoor ECE Department 2 September 2008 1 Categorizing Algorithms Greedy Algorithms Prim s Algorithm (Minimum Spanning Tree) A subgraph that is a tree

More information

Parallel Graph Algorithms

Parallel Graph Algorithms Parallel Graph Algorithms Design and Analysis of Parallel Algorithms 5DV050/VT3 Part I Introduction Overview Graphs definitions & representations Minimal Spanning Tree (MST) Prim s algorithm Single Source

More information

CSE 5243 INTRO. TO DATA MINING

CSE 5243 INTRO. TO DATA MINING CSE 5243 INTRO. TO DATA MINING Cluster Analysis: Basic Concepts and Methods Huan Sun, CSE@The Ohio State University 09/25/2017 Slides adapted from UIUC CS412, Fall 2017, by Prof. Jiawei Han 2 Chapter 10.

More information

Integer Programming. Xi Chen. Department of Management Science and Engineering International Business School Beijing Foreign Studies University

Integer Programming. Xi Chen. Department of Management Science and Engineering International Business School Beijing Foreign Studies University Integer Programming Xi Chen Department of Management Science and Engineering International Business School Beijing Foreign Studies University Xi Chen (chenxi0109@bfsu.edu.cn) Integer Programming 1 / 42

More information

Module 5 Graph Algorithms

Module 5 Graph Algorithms Module 5 Graph lgorithms Dr. Natarajan Meghanathan Professor of Computer Science Jackson State University Jackson, MS 97 E-mail: natarajan.meghanathan@jsums.edu 5. Graph Traversal lgorithms Depth First

More information

Unsupervised Learning

Unsupervised Learning Unsupervised Learning Unsupervised learning Until now, we have assumed our training samples are labeled by their category membership. Methods that use labeled samples are said to be supervised. However,

More information

The ILP approach to the layered graph drawing. Ago Kuusik

The ILP approach to the layered graph drawing. Ago Kuusik The ILP approach to the layered graph drawing Ago Kuusik Veskisilla Teooriapäevad 1-3.10.2004 1 Outline Introduction Hierarchical drawing & Sugiyama algorithm Linear Programming (LP) and Integer Linear

More information

Lecture 3: Totally Unimodularity and Network Flows

Lecture 3: Totally Unimodularity and Network Flows Lecture 3: Totally Unimodularity and Network Flows (3 units) Outline Properties of Easy Problems Totally Unimodular Matrix Minimum Cost Network Flows Dijkstra Algorithm for Shortest Path Problem Ford-Fulkerson

More information

Overview. H. R. Alvarez A., Ph. D.

Overview. H. R. Alvarez A., Ph. D. Network Modeling Overview Networks arise in numerous settings: transportation, electrical, and communication networks, for example. Network representations also are widely used for problems in such diverse

More information

looking ahead to see the optimum

looking ahead to see the optimum ! Make choice based on immediate rewards rather than looking ahead to see the optimum! In many cases this is effective as the look ahead variation can require exponential time as the number of possible

More information

Introduction to Mathematical Programming IE406. Lecture 20. Dr. Ted Ralphs

Introduction to Mathematical Programming IE406. Lecture 20. Dr. Ted Ralphs Introduction to Mathematical Programming IE406 Lecture 20 Dr. Ted Ralphs IE406 Lecture 20 1 Reading for This Lecture Bertsimas Sections 10.1, 11.4 IE406 Lecture 20 2 Integer Linear Programming An integer

More information

22 Elementary Graph Algorithms. There are two standard ways to represent a

22 Elementary Graph Algorithms. There are two standard ways to represent a VI Graph Algorithms Elementary Graph Algorithms Minimum Spanning Trees Single-Source Shortest Paths All-Pairs Shortest Paths 22 Elementary Graph Algorithms There are two standard ways to represent a graph

More information

External Memory Algorithms and Data Structures Fall Project 3 A GIS system

External Memory Algorithms and Data Structures Fall Project 3 A GIS system External Memory Algorithms and Data Structures Fall 2003 1 Project 3 A GIS system GSB/RF November 17, 2003 1 Introduction The goal of this project is to implement a rudimentary Geographical Information

More information

Solving Capacitated P-Median Problem by Hybrid K-Means Clustering and Fixed Neighborhood Search algorithm

Solving Capacitated P-Median Problem by Hybrid K-Means Clustering and Fixed Neighborhood Search algorithm Proceedings of the 2010 International Conference on Industrial Engineering and Operations Management Dhaka, Bangladesh, January 9 10, 2010 Solving Capacitated P-Median Problem by Hybrid K-Means Clustering

More information

the 2010 Argentinian Census

the 2010 Argentinian Census Automatic Dwelling Segmentation of Buenos Aires Province for the 2010 Argentinian Census February 4, 2013 Abstract One of the logistical challenges in planning a population census is determining which

More information

Chapter 9 Graph Algorithms

Chapter 9 Graph Algorithms Introduction graph theory useful in practice represent many real-life problems can be if not careful with data structures Chapter 9 Graph s 2 Definitions Definitions an undirected graph is a finite set

More information

LEAST COST ROUTING ALGORITHM WITH THE STATE SPACE RELAXATION IN A CENTRALIZED NETWORK

LEAST COST ROUTING ALGORITHM WITH THE STATE SPACE RELAXATION IN A CENTRALIZED NETWORK VOL., NO., JUNE 08 ISSN 896608 00608 Asian Research Publishing Network (ARPN). All rights reserved. LEAST COST ROUTING ALGORITHM WITH THE STATE SPACE RELAXATION IN A CENTRALIZED NETWORK Y. J. Lee Department

More information

56:272 Integer Programming & Network Flows Final Exam -- December 16, 1997

56:272 Integer Programming & Network Flows Final Exam -- December 16, 1997 56:272 Integer Programming & Network Flows Final Exam -- December 16, 1997 Answer #1 and any five of the remaining six problems! possible score 1. Multiple Choice 25 2. Traveling Salesman Problem 15 3.

More information

Exact Algorithms for NP-hard problems

Exact Algorithms for NP-hard problems 24 mai 2012 1 Why do we need exponential algorithms? 2 3 Why the P-border? 1 Practical reasons (Jack Edmonds, 1965) For practical purposes the difference between algebraic and exponential order is more

More information

Search Algorithms. IE 496 Lecture 17

Search Algorithms. IE 496 Lecture 17 Search Algorithms IE 496 Lecture 17 Reading for This Lecture Primary Horowitz and Sahni, Chapter 8 Basic Search Algorithms Search Algorithms Search algorithms are fundamental techniques applied to solve

More information

INF4820. Clustering. Erik Velldal. Nov. 17, University of Oslo. Erik Velldal INF / 22

INF4820. Clustering. Erik Velldal. Nov. 17, University of Oslo. Erik Velldal INF / 22 INF4820 Clustering Erik Velldal University of Oslo Nov. 17, 2009 Erik Velldal INF4820 1 / 22 Topics for Today More on unsupervised machine learning for data-driven categorization: clustering. The task

More information

ME 391Q Network Flow Programming

ME 391Q Network Flow Programming ME 9Q Network Flow Programming Final Exam, Summer 00. ( Points) The figure below shows an undirected network. The parameters on the edges are the edge lengths. Find the shortest path tree using Dijkstra

More information

Cluster Analysis. Angela Montanari and Laura Anderlucci

Cluster Analysis. Angela Montanari and Laura Anderlucci Cluster Analysis Angela Montanari and Laura Anderlucci 1 Introduction Clustering a set of n objects into k groups is usually moved by the aim of identifying internally homogenous groups according to a

More information

Introduction to Approximation Algorithms

Introduction to Approximation Algorithms Introduction to Approximation Algorithms Dr. Gautam K. Das Departmet of Mathematics Indian Institute of Technology Guwahati, India gkd@iitg.ernet.in February 19, 2016 Outline of the lecture Background

More information

Unsupervised Learning Hierarchical Methods

Unsupervised Learning Hierarchical Methods Unsupervised Learning Hierarchical Methods Road Map. Basic Concepts 2. BIRCH 3. ROCK The Principle Group data objects into a tree of clusters Hierarchical methods can be Agglomerative: bottom-up approach

More information

COMP3121/3821/9101/ s1 Assignment 1

COMP3121/3821/9101/ s1 Assignment 1 Sample solutions to assignment 1 1. (a) Describe an O(n log n) algorithm (in the sense of the worst case performance) that, given an array S of n integers and another integer x, determines whether or not

More information

Introduction to Parallel & Distributed Computing Parallel Graph Algorithms

Introduction to Parallel & Distributed Computing Parallel Graph Algorithms Introduction to Parallel & Distributed Computing Parallel Graph Algorithms Lecture 16, Spring 2014 Instructor: 罗国杰 gluo@pku.edu.cn In This Lecture Parallel formulations of some important and fundamental

More information

11/22/2016. Chapter 9 Graph Algorithms. Introduction. Definitions. Definitions. Definitions. Definitions

11/22/2016. Chapter 9 Graph Algorithms. Introduction. Definitions. Definitions. Definitions. Definitions Introduction Chapter 9 Graph Algorithms graph theory useful in practice represent many real-life problems can be slow if not careful with data structures 2 Definitions an undirected graph G = (V, E) is

More information

Mathematical Tools for Engineering and Management

Mathematical Tools for Engineering and Management Mathematical Tools for Engineering and Management Lecture 8 8 Dec 0 Overview Models, Data and Algorithms Linear Optimization Mathematical Background: Polyhedra, Simplex-Algorithm Sensitivity Analysis;

More information

Introduction III. Graphs. Motivations I. Introduction IV

Introduction III. Graphs. Motivations I. Introduction IV Introduction I Graphs Computer Science & Engineering 235: Discrete Mathematics Christopher M. Bourke cbourke@cse.unl.edu Graph theory was introduced in the 18th century by Leonhard Euler via the Königsberg

More information

Chapter 9 Graph Algorithms

Chapter 9 Graph Algorithms Chapter 9 Graph Algorithms 2 Introduction graph theory useful in practice represent many real-life problems can be slow if not careful with data structures 3 Definitions an undirected graph G = (V, E)

More information

Constructive and destructive algorithms

Constructive and destructive algorithms Constructive and destructive algorithms Heuristic algorithms Giovanni Righini University of Milan Department of Computer Science (Crema) Constructive algorithms In combinatorial optimization problems every

More information

Statistics 202: Data Mining. c Jonathan Taylor. Week 8 Based in part on slides from textbook, slides of Susan Holmes. December 2, / 1

Statistics 202: Data Mining. c Jonathan Taylor. Week 8 Based in part on slides from textbook, slides of Susan Holmes. December 2, / 1 Week 8 Based in part on slides from textbook, slides of Susan Holmes December 2, 2012 1 / 1 Part I Clustering 2 / 1 Clustering Clustering Goal: Finding groups of objects such that the objects in a group

More information

Clustering algorithms and introduction to persistent homology

Clustering algorithms and introduction to persistent homology Foundations of Geometric Methods in Data Analysis 2017-18 Clustering algorithms and introduction to persistent homology Frédéric Chazal INRIA Saclay - Ile-de-France frederic.chazal@inria.fr Introduction

More information

11. APPROXIMATION ALGORITHMS

11. APPROXIMATION ALGORITHMS 11. APPROXIMATION ALGORITHMS load balancing center selection pricing method: vertex cover LP rounding: vertex cover generalized load balancing knapsack problem Lecture slides by Kevin Wayne Copyright 2005

More information