k centra single fac loc mat lab

113
PLANAR k-CENTRA SINGLE-FACILITY EUCLIDEAN LOCATION PROBLEM A thesis presented to the faculty of the Fritz J. and Dolores H. Russ College of Engineering and Technology of Ohio University In partial fulfillment of the requirements for the degree Master of Science Siddharth R. Kotian November 2005

Upload: jasmeet-singh

Post on 19-Jan-2016

22 views

Category:

Documents


2 download

DESCRIPTION

facility location

TRANSCRIPT

Page 1: k Centra Single Fac Loc Mat Lab

PLANAR k-CENTRA SINGLE-FACILITY EUCLIDEAN LOCATION PROBLEM

A thesis presented to

the faculty of

the Fritz J. and Dolores H. Russ

College of Engineering and Technology of Ohio University

In partial fulfillment

of the requirements for the degree

Master of Science

Siddharth R. Kotian

November 2005

Page 2: k Centra Single Fac Loc Mat Lab

This thesis entitled

PLANAR k-CENTRA SINGLE-FACILITY EUCLIDEAN LOCATION PROBLEM

by

SIDDHARTH R. KOTIAN

has been approved for

the Department of Industrial and Manufacturing Systems Engineering

and the Russ College of Engineering and Technology by

Trevor Hale

Assistant Professor of Industrial and Manufacturing Systems Engineering

Dennis Irwin

Dean, Russ College of Engineering and Technology

Page 3: k Centra Single Fac Loc Mat Lab

KOTIAN, SIDDHARTH R. M.S. November 2005. Industrial and Manufacturing Systems

Engineering

Planar k-Centra Single-Facility Euclidean Location Problem (113 pp.)

Director of Thesis: Trevor Hale

Facility location represents the process of identifying the best location for a

service, commodity or production facility. The objective of this thesis is to solve the

planar k-centra single-facility location problem with Euclidean distances. The problem

statement is to locate a single service point that minimizes the sum of the distances to the

k-farthest demand points out of a set of given points. A k-centra problem is a location

analysis problem which encloses attributes from both the minimax (center) as well as the

minisum (median) approaches. The k-centra methodology used in this thesis employs

selectively evaluating a few points out of all the existing points. This is the biggest

difference between a k-centra methodology and the traditional minisum methodology.

The solution procedure used in this thesis is an extension of one of the oldest

heuristic methods existing in location science-Weiszfeld’s algorithm. Starting with the

minimax solution, Weiszfeld’s algorithm is alternated with reducing radius points until

all k points lie inside the smallest possible circle (one at a time). This method is repeated

until optimality is obtained. k-Centra optimality is obtained when the same k-points are

farthest away from the starting solution. Three problems based on real life city problems

are solved using Excel substitution. A MATLAB solution is also provided in this thesis.

Page 4: k Centra Single Fac Loc Mat Lab

Experimentation is conducted to compare solution quality and computation time

of the k-centra method compared to the minisum method. Five problems each were

solved for n = 15 and n = 30. Results obtained showed that the solution quality improves

as the k value increases from 1 to n. At k = n, the solution obtained is optimal for the

minisum objective function. To evaluate this solution characteristic, few more problems

are solved to find the cutoff point of k as a percentage of n where 1% above optimal

solution is obtained. Results obtained show that at 40%-50% of n, there is a 1% increase

from optimal solution. A few more problems are evaluated to find out the computational

time for k-centra problems. It is observed that there is negligible difference in

computational time between k-centra and minisum methodologies.

The proposed k-centra method provides the user with a near-optimal solution.

However, it can be concluded that even though there is some reduction in the total

computational time for the proposed k-centra method as compared to the minisum

method, the time saved is negligible.

Approved:

Trevor Hale

Assistant Professor of Industrial and Manufacturing Systems Engineering

Page 5: k Centra Single Fac Loc Mat Lab

5

TABLE OF CONTENTS

ABSTRACT........................................................................................................................ 3

LIST OF FIGURES ............................................................................................................ 7

LIST OF TABLES.............................................................................................................. 9

1. INTRODUCTION ........................................................................................................ 11

1.1 MOTIVATION FOR RESEARCH............................................................................ 12

1.2 FACILITY LOCATION – AN OVERVIEW .............................................................. 13

1.2.1 Type of Location Problem................................................................................ 14 1.2.2 Nature of Solution Space ................................................................................. 14 1.2.3 Distance Metric................................................................................................ 15 1.2.4 Type of Objective Function.............................................................................. 16

1.3 PLANAR K-CENTRA SINGLE-FACILITY LOCATION PROBLEM ........................... 18

1.3.1 Types of Problems Evaluated........................................................................... 22 1.4 STRUCTURE OF THE THESIS............................................................................... 24

2. LITERATURE REVIEW ............................................................................................. 25

2.1 PURE LOCATION PROBLEMS ............................................................................. 26

2.1.1 Rectilinear Distance Metric Problem .............................................................. 26 2.1.2 Euclidean Distance Metric Problem................................................................ 27 2.1.3 Location-Allocation Problems ......................................................................... 28 2.1.4. K-Centra Problems ......................................................................................... 28

3. METHODOLOGY ....................................................................................................... 32

3.1 WEISZFELD’S ALGORITHM ILLUSTRATION ....................................................... 32

3.1.1 Solved Example for Weiszfeld’s Algorithm...................................................... 34 3.2 APPLICATION OF WEISZFELD’S ALGORITHM - K-CENTRA PROBLEM ............... 37

3.3 SOLVED EXAMPLES ILLUSTRATING REAL LIFE LOCATION SCENARIOS. .......... 40

3.3.1 Unplanned City Problem with Random Existing Locations ............................ 40 3.3.2 Planned City Problem with Annular Existing Customer Locations ................ 48 3.3.3 Planned City Problem with Distributed Location Clusters ............................. 50

Page 6: k Centra Single Fac Loc Mat Lab

6 3.4 MATLAB METHODOLOGY............................................................................... 52

3.4.1 MATLAB Application to the k-Centra Problem............................................... 53 3.4.2 Data Flow Logic and MATLAB Functions ...................................................... 53 3.4.3 Minimax Logic ................................................................................................. 55 3.4.4 Finding the k-Maximum x-y Coordinates ........................................................ 59 3.4.5 Weiszfeld’s Function........................................................................................ 59

4. RESULTS ..................................................................................................................... 61

4.1 RESULTS FOR THE RANDOM LOCATION PROBLEM-EXCEL AND MATLAB...... 61

4.2 OPTIMALITY COMPARISON BETWEEN K-CENTRA AND MINISUM SOLUTIONS ..66

4.3 DETERMINING THE VALUE OF K TO OBTAIN 1% INCREASE FROM OPTIMALITY73

4. 4 DETERMINING THE COMPUTATIONAL TIME FOR K-CENTRA PROBLEMS.......... 75

5. CONCLUSIONS AND FUTURE RESEARCH .......................................................... 79

5.1 ACCURACY OF THE K-CENTRA SOLUTION ........................................................ 79

5.2 SELECTING THE RIGHT K VALUE....................................................................... 80

5.3 COMPUTATION TIME FOR A K-CENTRA PROBLEM ............................................ 80

5.4 FUTURE RESEARCH ........................................................................................... 81

BIBLIOGRAPHY............................................................................................................. 83

APPENDIX A – MATLAB CODE .................................................................................. 86

APPENDIX B – RESULTS FOR THE ANNULAR LOCATION PROBLEM .............. 91

APPENDIX C - RESULTS FOR THE CLUSTERED LOCATION PROBLEM ........... 95

APPENDIX D – MATLAB SOLUTION FOR SOLVED EXAMPLE 1......................... 99

APPENDIX E – MATLAB SOLUTION FOR SOLVED EXAMPLE 2 ....................... 104

APPENDIX F – MATLAB SOLUTION FOR SOLVED EXAMPLE 3 ....................... 109

Page 7: k Centra Single Fac Loc Mat Lab

7

LIST OF FIGURES FIGURE 1. TYPE OF LOCATION PROBLEM ........................................................................... 14

FIGURE 2. NATURE OF SOLUTION SPACE............................................................................ 15

FIGURE 3. CLASSIFICATION OF DISTANCE METRIC ............................................................ 16

FIGURE 4. TYPE OF OBJECTIVE FUNCTION INVOLVED........................................................ 17

FIGURE 5. A SCHEMATIC EXAMPLE OF THE SINGLE FACILITY K-CENTRA PROBLEM......... 21

FIGURE 6. A SCHEMATIC EXAMPLE OF A RANDOM UNPLANNED CITY PROBLEM.............. 22

FIGURE 7. A SCHEMATIC EXAMPLE OF A CITY PROBLEM WITH ANNULAR LAYOUT ......... 23

FIGURE 8. A SCHEMATIC EXAMPLE OF A PROBLEM WITH LOCATION CLUSTERS............... 23

FIGURE 9. A FLOWCHART SHOWING K-CENTRA SOLUTION APPROACH ............................ 39

FIGURE 10. GRAPHICAL REPRESENTATION OF AN UNPLANNED CITY LAYOUT.................. 42

FIGURE 11. FLOWCHART FOR THE ELZINGA-HEARN ALGORITHM..................................... 43

FIGURE 12. GRAPHICAL REPRESENTATION OF AN ANNULAR CITY LAYOUT ..................... 50

FIGURE 13. GRAPHICAL REPRESENTATION OF A CLUSTERED CITY LAYOUT..................... 52

FIGURE 14. SOFTWARE FLOW DIAGRAM........................................................................... 54

FIGURE 15. MINIMAX FUNCTION FLOWCHART.................................................................. 58

FIGURE 16. WEISZFELD FUNCTION FLOWCHART............................................................... 60

FIGURE 17. K = 6, RANDOM LOCATION PROBLEM ............................................................. 64

FIGURE 18. K = 5, RANDOM LOCATION PROBLEM ............................................................. 65

FIGURE 19. OBJECTIVE FUNCTION PLOTS FOR N = 15........................................................ 67

FIGURE 20. PERCENTAGE INCREASE FROM OPTIMAL VALUE (N = 15)............................... 68

FIGURE 21. OBJECTIVE FUNCTION PLOTS FOR N = 30........................................................ 70

FIGURE 22. PERCENTAGE INCREASE FROM OPTIMAL VALUE (N = 30)............................... 71

FIGURE 23. AVERAGE INCREASE FROM OPTIMAL SOLUTION VALUE AT VARIOUS LEVELS

OF N ........................................................................................................................... 72

FIGURE 24. VALUE OF K (% OF N) TO OBTAIN 101% OF OPTIMAL SOLUTION VALUE ....... 75

FIGURE 25. PERCENTAGE REDUCTION IN COMPUTATION TIME AT 50% OF N.................... 77

FIGURE 26. K=12, ANNULAR LOCATION PROBLEM-FEASIBLE........................................... 93

FIGURE 27. K=3, ANNULAR LOCATION PROBLEM-DEGENERATE ..................................... 94

Page 8: k Centra Single Fac Loc Mat Lab

8 FIGURE 28. K = 10, CLUSTERED LOCATION PROBLEM-OPTIMAL....................................... 97

FIGURE 29. K = 6, CLUSTERED LOCATION PROBLEM-DEGENERATE ................................. 98

Page 9: k Centra Single Fac Loc Mat Lab

9

LIST OF TABLES

TABLE 1. WEISZFELD’S EXAMPLE COORDINATES.............................................................. 34

TABLE 2. UNPLANNED CITY PROBLEM .............................................................................. 41

TABLE 3. ELZINGA-HEARN ALGORITHM............................................................................ 44

TABLE 4. DISTANCE ALGORITHM....................................................................................... 45

TABLE 5. iγ VALUES........................................................................................................ 46

TABLE 6. iλ VALUES ........................................................................................................ 47

TABLE 7. WF VALUES........................................................................................................ 47

TABLE 8. OBJECTIVE FUNCTION VALUES........................................................................... 48

TABLE 9. ANNULAR LAYOUT PROBLEM............................................................................. 49

TABLE 10. CLUSTERED LAYOUT PROBLEM........................................................................ 51

TABLE 11. MINIMAX DATA REPRESENTATION................................................................... 56

TABLE 12. MAXIMUM DISTANCE MATRIX ......................................................................... 56

TABLE 13. INTERMEDIATE DISTANCE MATRIX .................................................................. 57

TABLE 14. SEARCH GRID COORDINATES ........................................................................... 57

TABLE 15. EXCEL SOLUTION-RANDOM LOCATION PROBLEM............................................ 62

TABLE 16. MATLAB SOLUTION-RANDOM LOCATION PROBLEM...................................... 63

TABLE 17. OBJECTIVE FUNCTION VALUES FOR K = 3, 6, 9, 12 AND MINISUM PROBLEMS .. 66

TABLE 18. PERCENTAGE INCREASE FROM OPTIMAL VALUE (N = 15)................................. 67

TABLE 19. OBJECTIVE FUNCTION VALUES FOR K = 6, 12, 18, 24 AND MINISUM PROBLEM 69

TABLE 20. PERCENTAGE INCREASE FROM OPTIMAL VALUE (N = 30)................................. 70

TABLE 21. AVERAGE INCREASE FROM OPTIMAL VALUE AT 20% INTERVALS OF N ............ 72

TABLE 22. VALUE OF K REQUIRED TO OBTAIN 101% OF OPTIMAL SOLUTION VALUE....... 74

TABLE 23. COMPUTATIONAL TIME FOR MINISUM AND K-CENTRA FUNCTIONS ................. 76

TABLE 24. COMPUTATION TIME REDUCTION AND OPTIMALITY LOSS AT 50% OF N........... 76

TABLE 25. EXCEL SOLUTION-ANNULAR LOCATION PROBLEM .......................................... 91

TABLE 26. MATLAB SOLUTION-ANNULAR LOCATION PROBLEM .................................... 92

Page 10: k Centra Single Fac Loc Mat Lab

10 TABLE 27. EXCEL SOLUTION-CLUSTERED LOCATION PROBLEM........................................ 95

TABLE 28. MATLAB SOLUTION-CLUSTERED LOCATION PROBLEM ................................. 96

Page 11: k Centra Single Fac Loc Mat Lab

11

Chapter 1

1. Introduction

Facility location represents the process of identifying the best location for a

service, commodity or production facility. Facility location optimization is a classical

research area in operations research concerned with the location of one or more facilities

so as to satisfy objective function requirements such as minimizing operational and

supply costs; providing fast and reliable service to customers; and capturing the largest

market share. Optimum location decision depends on the following factors:

• Service facility location: This aims at reducing transportation costs and

simplifying the transfer of bulky, expensive or perishable goods.

• Customer location: Cost is again a factor here. Also, most companies prefer

being in close proximity to high-population density areas or their suppliers.

• Labor availability: Availability of local labor means local labor rates are

applicable thus saving costs.

• Community/Environmental issues: Attitude of the local community towards the

facility is an important factor here. Also, an important consideration is the

environmental concerns involved in the area.

• Local area considerations: This varies from region to region. The idea here is to

obtain the best possible tax cuts, utilities, labor laws and zoning regulations

provided by the local authorities.

Page 12: k Centra Single Fac Loc Mat Lab

12

• Human issues: Labor culture, climatic constraints, cultural attractions, commute

times.

• Other factors: Options for further expansion, local competition, etc.

Applications of facility location models can be found in various fields. Locations

of warehouses, plants, hospitals, retail outlets, fire stations are important applications.

Applications can also be found in the location of electronic components, fire alarms,

sprinklers, radar beams, exploratory oil wells, waste disposal sites, telephone exchanges

etc.

1.1 Motivation for Research

Facility location problems date back to the 17th century when Pierre Fermat [1],

Evarista Toricelli, and Battista Cavalieri [2] simultaneously introduced the concept,

although this theory is widely contested by location analysis experts. Late in the 18th

century Pierre Varignon presented the “Varignon Frame” which was an analog solution

to the planar minisum location problem. However, facility location started garnering

more interest when Alfred Weber [3] introduced the planar Euclidean single facility

minisum problem in 1909. The Weber problem considers the example of locating a

warehouse in the best possible location such that the distance traveled between the

warehouse and its customers is minimized. Endre Weiszfeld [4] in 1937 conceptualized

an iterative method to solve the minisum Euclidean problem today called the Weiszfeld’s

Procedure.

Page 13: k Centra Single Fac Loc Mat Lab

13 In 1964, Hakimi [5] introduced a seminal paper on locating one or more points

on a network with an objective to minimize the maximum distance or the sum of all the

distances from existing customer locations already on the network. Francis et al. [6]

presented a survey paper in location analysis, which defined four classes of location

problems and described algorithms to optimize them. The paper described continuous

planar, discrete planar, mixed planar and discrete network problems.

In 1998, Susan Owen and Mark Daskin [7] reviewed various strategic location

problems where they emphasized that a good facility location decision is a critical

element in the success of any supply chain. They explained median problems, center

problems, covering problems, and other dynamic location problem formulations in the

context of a supply chain environment.

The research on facility location problems spans many research fields like

operations research, management science, mathematics, statistics, urban planning,

designing, etc.

1.2 Facility Location – An Overview

Since this thesis deals with new facility location, the major elements considered are

type of location problems, the nature of the solution space, distance measures and the

objective function.

Page 14: k Centra Single Fac Loc Mat Lab

14 1.2.1 Type of Location Problem

A facility location problem can be classified according to the number of facilities

involved. As shown in Figure 1, a new facility problem could be a single or a multiple

facility problem.

Figure 1. Type of Location Problem

A single facility location problem can be locating a single point or an enclosed

area. Multiple facility location problems can be problems defined by certain parameters

like length or certain decision variables. The obtained solution can be dependent or

independent of other parameters or decision variables. For example, the new located

point could be dependent or independent of the existing customer locations.

1.2.2 Nature of Solution Space

The other category for classification would be the solution space for the location

problem. As shown in Figure 2, some spaces can be one-dimensional such as locating

Page 15: k Centra Single Fac Loc Mat Lab

15 points on a line while others are multidimensional as in locating points in 2-D or 3-D

spaces. The solution subspace can be discrete (finite number of possible locations) or

continuous (infinite number of possible locations). Also, the solution space can be

constraint bounded or unconstrained.

Figure 2. Nature of Solution Space

In continuous space, there is no restriction on the location of the new facility. The

new facility could be located anywhere inside the convex hull. In the case of discrete

space problems, the new facility has to be located among one of the discrete points

1.2.3 Distance Metric

Another form of classification is the distance metric selected which could be

rectilinear, Euclidean or some other form of defined metrics (Figure 3). The most

common distance metric is the lp distance metric, where lp is given by Equation 1.

pn

i

piip yxl

/1

1

−= ∑

=

……… (1)

where,

Page 16: k Centra Single Fac Loc Mat Lab

16 xi = x-coordinate of the facility location

yi = y-coordinate of the facility location

p = 1, Rectilinear or “Manhattan” distance metric

p = 2, Euclidean or “Straight-line” distance metric

n = Number of facility locations

Figure 3. Classification of Distance Metric Other distance metrics include the weight 1-α norm, block norm, round norm,

mixed norms, Jaccard, expected, central, and mixed gauges.

1.2.4 Type of Objective Function

The final category is the classification of objective functions. As shown in Figure

4, a problem can be qualitative (generally facility layout problem) or quantitative (facility

location problem). Quantitative objectives could be minimization, maximization or some

other function depending on the formulated problem.

Page 17: k Centra Single Fac Loc Mat Lab

17

Figure 4. Type of Objective Function Involved

Minisum is considered as one of the quantitative objective functions. It

minimizes the sum of the distances between the new facility to be located and the

existing facility locations. It is also known as the median problem. Minimax involves

minimizing the maximum distance between the existing facility location and new facility

to be located. It is also known as the center problem.

Maxisum is maximizing the sum of the distances between the new facility to be

located and the existing facility locations. Maximin is maximizing the minimum distance

between the existing facilities and the new facility to be located. The maxisum and

maximin objective functions are useful for evaluating problems involving undesirable

facilities like nuclear waste sites, garbage dumps etc. A set covering objective function

refers to the problem in which a minimal number of new facilities to be located are

determined. The constraint involved is that the new facility cannot be further than some

pre-specified distance away from the existing facility. The maximal covering problem has

Page 18: k Centra Single Fac Loc Mat Lab

18 the number of new facilities to be located as the problem input, but the distance between

the existing facility and the new facilities is to be maximized. These are the frequently

used objective functions of a facility location problem.

In one important class of facility location problems, the goal is to find one or

more center points in order to minimize the maximal distance between a demand point

and the facility that is nearest to it. These problems are called k-center problems, where k

is the number of desired facility locations. The simplest problem in this class is the

’basic’ 1-center problem, in which one is to find a point in the plane that minimizes the

maximal distance to a set of n demand points.

In another important class of problems, the goal is to find one or more median

points in order to minimize the average distance (i.e., the sum of the distances) between a

demand point and the facility that is nearest to it. These problems are called k-median

problems, where k is the number of desired facility locations. When k = 1 the problem is

known as the Weber problem.

1.3 Planar k-Centra Single-Facility Location Problem

Facility location handles problems with an aim of locating one or more service

points so as to satisfy certain objectives. In the case of this thesis the optimizing factor is

distance. Median and center problems are well known distance dependant location

problems with a multitude of applications. The median approach locates a set of service

points in order to minimize the average distances from other customer location points.

The center approach handles a different type of location problem with the objective of

Page 19: k Centra Single Fac Loc Mat Lab

19 having farthest users as close as possible. An application of center approach is the

location of emergency facilities. However, in real life applications, most problems that

come up generally require a unique combination of both the discussed objective

functions. In the process of locating a new facility, more than one deciding factors are

involved. This is due to the fact that typically the cost associated with this decision is

very high. Thus different approaches are evaluated and compared in order to be

implemented.

A median approach provides solutions where remote and low-population (less

weight) density areas are neglected compared to centrally situated or high-population

(more weight) density areas. On the other hand using a center approach may cause a

large increase in total traveled distance, thereby causing inefficient use of available space.

The problem is therefore to select the best factors out of the two objective functions to

solve the problem. Similar logic problems are the centdian problem or the k-centra

problem. A centdian problem minimizes the convex combination of the center and

median objective function. The convex combination is decided depending on the

associated weights allocated to the customer points.

The objective of this thesis is to solve the planar k-centra single facility problem

with Euclidean distances. The problem statement is to locate a single service point that

minimizes the sum of the distances to the k-farthest demand points out of a set of given

points. A k-centra problem is a location analysis problem which encloses attributes from

both the center as well as the median approaches. However, this is not a linear

Page 20: k Centra Single Fac Loc Mat Lab

20 combination. In a k-centra problem, a set value of k is predefined and is used in the

evaluation. If k = 2 then the corresponding problem becomes a center problem and when

k = n the corresponding problem becomes a median problem, thus enclosing both

approaches. It also gives the decision-maker a more flexible tool to make an informed

and a calculated decision. A real life example for a k-centra problem could be locating a

warehouse to satisfy a set number of distant customers. The advantage here over a

minimax solution for a similar problem is that the minimax approach is generally

governed by a single largest distance. A good example here would be in the case of an

isolated unit located at a significant distance from all other units. In this case, the

minimax problem is reduced to the minimization of the distance of the particular unit

leaving few of the location decisions unsatisfied.

A k-centra problem considers k largest distances thus encompassing more of the

problem characteristics before deciding on the solution. Another application is when the

problem is very large and there are a multitude of existing locations to evaluate, thereby

costing a lot of analysis time. The k-centra approach simplifies the solution method by

selectively evaluating only a certain number of points out of the existing location. This

selective evaluation does not sacrifice too many problem characteristics and gives a near

optimal solution in a shorter period of time. However, the k-centra method comes with a

few disadvantages. Solution optimality is not guaranteed in case of a k-centra method.

The iterative nature of the solution method can cause the problem to go in a loop.

Page 21: k Centra Single Fac Loc Mat Lab

21

The solution procedure used in this thesis is an extension of one of the oldest

heuristic methods existing in location science-Weiszfeld’s algorithm. Starting out with

2n minimax solution (n being the number of demand points), the distance from the radius

of the solution would be reduced until k points lie outside the circle. Then, minisum is

applied on the problem and it is solved for the k points by considering the smallest

possible circle that encompasses (n - k) points. The solution is tested for feasibility, and

if the original k points are outside the smallest circle, the solution is optimal. If not, this

procedure is repeated again. The solution method used to solve this problem would be an

Alternating Weiszfeld’s Algorithm. Here, Weiszfeld’s algorithm would be alternated

with reducing radius points until all k points are inside the smallest possible circle (one at

a time) and then Weiszfeld’s is applied one more time. This method is repeated until

optimality is obtained.

Figure 5. A Schematic Example of the Single Facility k-Centra Problem

Page 22: k Centra Single Fac Loc Mat Lab

22

1.3.1 Types of Problems Evaluated

Three types of problems were evaluated in this thesis. The problems were derived

from examples seen in real life scenarios. The objective function remains the same for all

the example problems that is to locate a single service facility. The first problem

considered is a typical unplanned city problem with random existing customer facilities.

Figure 6. A Schematic Example of a Random Unplanned City Problem

The next example considered is a planned city layout where customers are located

in the annular region surrounding a central facility. The central facility could be a

historic landmark or an airport.

Page 23: k Centra Single Fac Loc Mat Lab

23

Figure 7. A Schematic Example of a City Problem with Annular Layout

The final example considered is one where customer settlements are bunched

together in isolated clusters all around the city. This example holds well in an industrial

city where the workforce resides in the few available residential areas.

Figure 8. A Schematic Example of a Problem with Location Clusters

Page 24: k Centra Single Fac Loc Mat Lab

24 1.4 Structure of the Thesis

The layout of this thesis is as described below. Chapter one introduces the basic

concepts of facility location analysis. This chapter also describes the problem statement

to be evaluated in this thesis. Chapter two deals with an extensive literature review

which goes into the concept development for this thesis. Chapter three describes the

methods and practices used to solve the problem. It also describes the various process

algorithms used, methods to develop them, and steps to verify the accuracy of the

proposed algorithms. The thesis conclusion is listed in chapter four. Chapter four also

discusses the scope for extension of this thesis in future research.

Page 25: k Centra Single Fac Loc Mat Lab

25

Chapter 2

2. Literature Review

In this chapter, a review of the literature existing in the area of facility location is

presented. Location analysis goes back to the influential book of the German industrial

author Alfred Weber [3]. The research was motivated by observing a warehouse

operation and its inefficiencies. Weber considered the single warehouse location problem

and evaluated it such that the travel distances for pickups and replenishment were

reduced. Other notable work in this field was by Pierre de Fermat [1], who solved the

location problem for three points constituting a triangle.

Another major concept in the field of location analysis was the concept of

competitive location analysis introduced by Hotelling [8] in 1929. The paper discussed a

method to locate a new facility considering already existing competition. The considered

facilities were on a straight line. He proposed that the customers generally prefer visiting

the closest service facility. He introduced the “Hotelling’s Proximity Rule” which can be

used to determine the market share captured by each facility. He just considered the

distance metric during his analysis. The Hotelling model was extended by Drezner [9]

who introduced the concept of varying attractiveness among competing facilities. He

analyzed cost and quality factors in addition to the distance metric involved. Huff [10]

proposed the famous “Gravity Model” for estimating the market share captured by

competitors. The gravity model states that existing customer locations attract business

Page 26: k Centra Single Fac Loc Mat Lab

26 from a service facility in direct proportion to the existing locations and in inverse

proportion to the distance between the service location and the existing customer

locations [10].

2.1 Pure Location Problems

A pure location problem deals with optimally locating one or more new service

facilities to serve the demand at existing customer locations. Selecting different distance

measures, and by using different constraints, we obtain different variants of the multi or

single facility location problem. Furthermore, we can introduce additional variants by

restricting new facility locations to specific sites, and by letting demands be either

stochastic or distributed over areas.

2.1.1 Rectilinear Distance Metric Problem

The rectilinear distance location problem is a variant of the classic location

problem. Rectilinear distance metric is the axial distance between two corresponding

points taken at right angles from each other. Francis [11] first considered the single

facility location problem with rectilinear distances. The paper considered a simple

substitution method for solving the proposed problem. Francis [12] also solved the multi-

facility rectilinear location problem with equal demand weights. The objective function

is as given by Equation 2.

Minimize ∑ == ),(.)....1()( PiXdWimixf ……………… (2)

where:

Page 27: k Centra Single Fac Loc Mat Lab

27 Wi = Weights associated with the locations.

m = Number of existing locations

2.1.2 Euclidean Distance Metric Problem

The difference between Euclidean and rectilinear distances is that where

rectilinear distance metric considers right-angle distances, a Euclidean metric considers

straight line distances between points. In a plane with points at (x1, y1) and (x2, y2), it is

given by Equation 3.

Minimize f(x,y) = ( ) ( )221

221 yyxx −+− ………..... (3)

This problem is also known as the Weber problem .It is also known as the planar

Euclidean minisum distance single facility location problem, which adequately defines its

characteristics. The upper and lower bound on feuc is as shown in Equation 4.

….…….... (4)

For collinear single facility location problems with Euclidean distances, a user can

always obtain an optimal solution as discussed in the paper by Rosen and Xue [13]. This

thesis assumes that the existing facilities are non-collinear. For non collinear location

problems, Weiszfeld [4] was the first to propose a fixed-point iterative method that is

known as the Weiszfeld procedure. Weiszfeld's algorithm iteratively solves for the

minisum location to the Weber problem based on the objective function

( ) ( ) )*y ,*(x f )*y ,*(x f 2yf 2xf recreceuceuceuceuc21 <=<=+

Page 28: k Centra Single Fac Loc Mat Lab

28

Drezner [13] in his paper conducted some sensitivity analyses for the single

facility problem. He studied various variants of the problem with weight restrictions and

location restrictions.

2.1.3 Location-Allocation Problems

Since 1963, when the first location-allocation model was formulated by Cooper

[15], there has been extensive research on this field. The simplest location-allocation

problem is the Weber problem addressed by Friedrich [16] in 1929. This paper discussed

the steps in locating a machine so as to minimize the sum of the weighted distances from

all the raw materials sources. The seminal work in this area was on the p-median

problem, initially formulated by Hakimi [5]. The median problem was considered on a

graph and the objective function was to reduce the average or the sum of the

transportation costs from the service facility to the demand locations. It was derived that

one of the optimal solutions locates the service facility on one of the nodes of the

network.

2.1.4. K-Centra Problems

Majority of the research in the field of location analysis focuses on the

minimization of the average (or total) distance (median function) or the minimization of

the maximum distance (center function) to some service facility. Approaches based on

the median model are primarily concerned with achieving maximum spatial efficiency.

This approach generally provides solutions in which remote and low-population density

Page 29: k Centra Single Fac Loc Mat Lab

29 areas are neglected in favor of providing maximum accessibility to centrally situated and

high-population density areas. To avoid this drawback, the center method can be applied

which primarily addresses geographical equity issues compromising optimum spatial

efficiency. Sometimes locating a facility using the center method doesn’t satisfy all the

complex underlying constraints a location problem is associated with. These factors led

to more research in lieu of obtaining a compromise solution concept.

Halpern [17] first introduced the cent-dian model as a parametric solution concept

based on the bicriteria center/median model. Halpern modeled the problem in such a way

that a compromise was achieved between median and centre objective functions such that

the inherent objective function characteristics of both the problems are considered while

solving. The two objective functions considered are total distance minimization and the

maximum distance minimization criterions. The goal here was to find an optimal balance

between efficiency (least-cost) and equity (worst-case). However, this particular method

can sometimes fail to provide a solution to a discrete location problem mostly due to the

limitations involved with direct combinations of two different functions.

Hansen et al. [18] introduced a variation of the cent-dian problem in the

generalized center problem, which minimizes the difference between the maximum

distance and the average distance. This model can be extended to formulate solutions for

multiple facility location problems on a plane as well as on a network. This model can

also be applied to discrete location problems.

Page 30: k Centra Single Fac Loc Mat Lab

30

The k-centra problem concept was formulated by Slater [19]. The k-centra model

combines both the center as well as the median concepts by minimization of the sum of

the k largest distances. If k = 2 the model reduces to a standard center problem while

with k = n it becomes a standard median problem. This paper concentrated on the

discrete single facility location problem on a tree graph.

Peeters [20] studied the k-centrum model and introduced a full classification of

the k-centrum criteria and some solution concepts. He proposed two different variations

on the median and the center functions each. The functions considered were upper k-

median where the sum of the k largest distances are minimized, lower k-median where

the sum of the k smallest distances are minimized, upper k-center where the k largest

distances are minimized, and lower k-center where the k smallest distances are

minimized.

The k-centrum model is generally reserved for unweighted problems. However,

significant research has been performed to show that satisfying the above criteria is not

always necessary. Recently, Tamir [21] solved a weighted multiple facility k-centrum

problem on paths and tree graphs using simple polynomial time algorithms. In this

method, weights are assigned to all the distances from the new location to the existing

locations and the distances are scaled accordingly.

Ogryczak and Zawadski [22] in their paper introduced the conditional median

method which is an extension of the k-centrum concept when applied to weighted

problems. The paper proposes that a k-centrum problem can be evaluated for optimality

Page 31: k Centra Single Fac Loc Mat Lab

31 by just considering only that specific part of the demand which is in direct proportion to

the existing largest distances. Thus this concept solves the objective function for the

entire portion of the largest distances for a specified portion of the demand.

Page 32: k Centra Single Fac Loc Mat Lab

32

Chapter 3

3. Methodology

3.1 Weiszfeld’s Algorithm Illustration

The objective function of the Weiszfeld’s algorithm is to minimize the sum of the

distances between the existing facility locations and the new facility location.

Weiszfeld’s algorithm can be used to solve planar as well as network problems

considering two-dimensional or three-dimensional coordinates. Weiszfeld’s algorithm

iteratively solves for the minisum location to the Weber problem based on its objective

function as shown in Equation 5.

Minimize ( ) ( ) ( )∑ −+−= 22, iii byaxwyxf .………. (5)

where,

wi = Weights associated with the existing locations.

x = x coordinate of the starting solution and later obtained by successive iterations.

y = y coordinate of the starting solution and later obtained by successive iterations.

ai = x coordinate of existing locations.

bi = x coordinate of existing locations.

The steps followed in Weiszfeld’s Algorithm to solve a planar Euclidean

location problem are as listed below:

Page 33: k Centra Single Fac Loc Mat Lab

33 Step 1: Input initial coordinates (x,y).

Step 2: Solve for every γi as per Equation 6.

( ) ( )22

ii

ii

byax

w

−+−=γ ………….. (6)

where,

x = x-coordinate of starting point for the iterative algorithm

y = y-coordinate of starting point for the iterative algorithm

Step 3: Sum for every γi for Γ(x,y) shown by Equation 7.

∑=

=Γm

ii yxyx

1),(),( γ ………….… (7)

Step 4: Determine all iλ = γι/Γ as shown in Equation 8.

),(),(

),(yxyx

yx ii Γ

λ ..….…….… (8)

Step 5: Weiszfeld’s (x) = WFx = ∑ = ii ami .)...1( λ ..………..… (9)

Weiszfeld’s (y) = WFy = ∑ = ii bmi .)...1( λ …....…….. (10)

Step 6: Determine the objective function value by summing the individual objective

function values for all i as per Equation 11.

( ) ( )22iiieuc byaxwf −+−= ∑ ……….… (11)

Step 7: Repeat until stopping conditions are met.

Considering a random starting solution, the algorithm is evaluated to obtain a

second set of trial values (WFx,WFy). The obtained coordinates are substituted to obtain

Page 34: k Centra Single Fac Loc Mat Lab

34 the third set of trial values and so on. By reiterating the Weiszfeld’s values for x, y, we

can find the Euclidean solution close to or equal to the optimal solution. The stopping

conditions are met when the difference between subsequent objective function values

obtained is less than or equal to zero.

3.1.1 Solved Example for Weiszfeld’s Algorithm

The objective of Weiszfeld’s algorithm is to find the minisum solution to a

location problem. The example problem considered here is a non-weighted planar

problem with coordinates listed in Table 1.

Points x y P1 2 3 P2 0 8 P3 9 3 P4 6 2 P5 7 2 P6 1 5

Table 1. Weiszfeld’s Example Coordinates

Considering the initial solution as (x,y) = (3,2). This value could be selected as

any value depending on the user’s discretion. To reduce the number of iterations

required to solve the objective function, the starting point based on visual judgment.

)2,3(),( =yx

By substituting the value of ),( yx in Equation 6 we get the following γi values:

Page 35: k Centra Single Fac Loc Mat Lab

35

( ) ( )707.0

3223

1),(221 =

−+−=yxγ

149.0),(2 =yxγ

164.0),(3 =yxγ

333.0),(4 =yxγ

25.0),(5 =yxγ

277.0),(6 =yxγ

The above γ values are summed up to obtain the Γ value.

881.1)277.025.0333.0164.0149.0707.0(),( =+++++=Γ yx

Using Γ and the corresponding γ value, λ values were calculated for each of the

existing facility locations.

375.0881.1707.0),(1 ==yxλ

0792.0),(2 =yxλ

0873.0),(3 =yxλ

177.0),(4 =yxλ

147.0),(6 =yxλ

Using the obtained λ values, Weiszfeld coordinates (WFx,WFy) are calculated

using the Equations 9 and 10.

132.0),(5 =yxλ

Page 36: k Centra Single Fac Loc Mat Lab

36

( ) ( ) ( ) ( ) ( ) ( )14.3

1*147.07*132.06*177.09*0873.00*0792.02*375.0

*)(1

=+++++=

= ∑=

m

iii axWF λ

( ) ( ) ( ) ( ) ( ) ( )201.3

5*147.02*132.02*177.03*0873.08*0792.03*375.0

*)(1

=+++++=

= ∑=

m

iii byWF λ

By using the trial solution coordinates, calculate the individual function values for

all i. The sum of the obtained individual function values would give the objective

function value for trial solution 2 as shown in Equation 12.

( ) ( ) 157.13201.3214.3 221 =−+−=eucPf

734.52 =eucPf

863.53 =eucPf

101.34 =eucPf

042.45 =eucPf

795.26 =eucPf

∑ == 695.22eucPin ff ……….… (12)

The procedure described above is repeated until stopping conditions are achieved.

Stopping condition is defined by Equation 13.

01 ≤−+ eucneucn ff ……….… (13)

Page 37: k Centra Single Fac Loc Mat Lab

37 3.2 Application of Weiszfeld’s Algorithm - k-Centra Problem

The objective this thesis is to solve a single facility, unweighted, planar k-centra

problem with an aim to locate a service point to minimize the distance to the k-farthest

customer points among several existing points. The approach used in this thesis to solve

the k-centra problem is a new method never been used before. The input required for the

problem includes the coordinates for the existing customer locations as well a k value.

This k value depends on the type of problem, the type of coverage required, the existing

customer locations on the plane or the discretion of the user.

The solution methodology used in this thesis is an iterative heuristic method

utilizing Weiszfeld’s algorithm. The solution steps are listed below:

• Step 1: The first step is to find the minimax solution for all the existing

customer locations. This minimax solution is used as a starting point for

following iterations.

• Step 2: The next step is to find the distances of all existing locations from

the minimax solution. The top k distances are considered to find the k

farthest location points.

• Step 3: The next step is to use the minisum approach to evaluate the

obtained k farthest points. Weiszfeld’s algorithm is applied to solve the

minisum aspect. After the first iteration, a new location point is obtained.

• Step 4: The next step is to check whether the same k points still are the

points lying farthest away.

Page 38: k Centra Single Fac Loc Mat Lab

38

o If so, the solution obtained is the optimal k-centra solution.

o If not, reiterate by considering the new k-largest distances and the

corresponding existing points.

o Stopping conditions are met when you end up with the same k-

farthest points you started with.

The procedure is illustrated with a flowchart as shown in Figure 9. However

there are chances that the algorithm may go in a loop. This happens when the solution

comes up with a different set of k points and this keeps repeating. This leads to an

infeasible solution. Generally it is observed that the infeasibility is due to a single point

getting displaced from the initial set of k points. The only solution possible here is a

semi-optimal solution which neglects the coordinates of the rogue point. This point is

better explained in the later part of the thesis where a MATLAB code for the discussed k-

centra approach is provided.

This approach was applied to solve three small examples problems influenced by

real life problems on location planning. Excel was used as a tool to solve the problems

manually. The example problems were also solved in MATLAB to verify obtained

solutions.

Page 39: k Centra Single Fac Loc Mat Lab

39

Figure 9. A Flowchart Showing k-Centra Solution Approach

STARTING POINT - n # of existing locations - k # of defined locations

STEP 1 Find minimax solution: - Elzinga Hearn Algorithm - Solver Solution

STEP 2 Find individual distances from minimax solution: - Distance Algorithm

STEP 3 Select k points with largest distances from the solution

STEP 4 Solve minisum with selected k points: - Weiszfeld’s Algorithm

CHECK Same k points still farthest away?

k-centra solution

WF Minisum Solution

(WFx,WFy)

YES

NO

Page 40: k Centra Single Fac Loc Mat Lab

40 3.3 Solved Examples Illustrating Real Life Location Scenarios.

Three small location problems were solved in this thesis using the k-centra

methodology as discussed in the previous section. The analogy used was real life area

planning problems in cities. There are numerous examples of planned and unplanned city

layouts. Older cities generally fall in the unplanned category while newer cities are

methodically planned depending on population density, topographical features and

business sectors. Solution methodology for one of the considered examples is discussed

in detail while the other two problems are explained briefly.

3.3.1 Unplanned City Problem with Random Existing Locations

This is the most common layout seen in most cities all over the world. A single-

facility planar location problem associated with such a layout presents one of the most

complex and time-consuming problems in the field of location analysis. However, using

the k-centra approach discussed in this thesis, only a selective few points are evaluated

out of all the existing locations. Thus the computing time as well as complexity of the

problem is reduced. The problem considered is a 15 point problem as shown in Table 2.

The problem is evaluated for different values of k (k = 1 to 15). The flowchart as shown

in Figure 9 is used as the solution guideline for evaluating the problem. The problem is

first evaluated in Excel using manual iterations. The solution obtained is verified using

the MATLAB solver.

Page 41: k Centra Single Fac Loc Mat Lab

41

Points X Y P1 2 2 P2 2 4 P3 5 2 P4 3.5 4 P5 7 4 P6 9.5 4.5 P7 10.5 2 P8 11.5 5.5 P9 9.5 8 P10 7 6.5 P11 5 6.5 P12 2 9 P13 5.5 8.5 P14 8.5 9 P15 11 9.5

Table 2. Unplanned City Problem

The graphical representation is shown in Figure 10. As the graph suggests, the

existing points are randomly located on a planar layout. This problem is just an

illustration; similar problems could include over 1000 customer locations. Good

examples here could be something as important as locating emergency services or as

simple as locating a pizza shop. The aim is to locate a single service facility in the plane

so as to minimize the sum of the distances to the k farthest points. The data required for

this problem includes the coordinates for existing customer locations and a value for k.

Reiterating, a k value could depend on the nature of the problem or it could be based on

logical reasoning and demand flow.

Page 42: k Centra Single Fac Loc Mat Lab

42

.

2, 2

2, 4

5, 2

3.5, 4 7, 49.5, 4.5

10.5, 2

11.5, 5.5

9.5, 8

7, 6.55, 6.5

2, 95.5, 8.5

8.5, 911, 9.5

0

1

2

3

45

6

7

8

9

10

0 2 4 6 8 10 12 14

x Coordinate

y C

oord

inat

e

Figure 10. Graphical Representation of an Unplanned City Layout

The first step in the discussed methodology is obtaining the minimax solution

considering Euclidean metric. Two different methods were used to obtain the minimax

solution. The first method is a graphical solution based on the Elzinga-Hearn algorithm.

The Elzinga-Hearn algorithm is a graphical method of solving the minimax objective

function for a location problem. The method involved is the smallest circle covering

method where the objective is to find the smallest possible circle which encompasses all

the existing locations in the plane. The method involved is shown in Figure 11.

Page 43: k Centra Single Fac Loc Mat Lab

43

Figure 11. Flowchart for the Elzinga-Hearn Algorithm

Page 44: k Centra Single Fac Loc Mat Lab

44

Procedure Called Defining Points Outside Point Radius TwoPoints 1,3 1.5 TwoPoints 1,3 2

TwoPointsPlus 1,3,2 1.8 FourPoints 1,3,2 5

TwoPointsPlus 1,2,5 2.75 FourPoints 1,2,5 6

TwoPointsPlus 1,2,6 4 TwoPoints 1,6 9

TwoPointsPlus 1,6,9 4.9 TwoPoints 1,9 15

TwoPointsPlus 1,9,15 6 TwoPoints 1,15 None

Table 3. Elzinga-Hearn Algorithm

The minimax solution is obtained at x = 6.5 and y = 5.75. Excel solver was also

used to obtain the minimax solution and verify the results obtained by using the Elzinga-

Hearn algorithm. The next step is to find the distance between the calculated minimax

solution and the all the other existing location points. This provides the starting point for

the k-centra algorithm. Distance algorithm is used for this computation. The distances

are sorted in descending order as shown in Table 4. The top k distances are considered

and the problem is evaluated for just the obtained k farthest points.

Page 45: k Centra Single Fac Loc Mat Lab

45

Points Distance P1 5.857687 P15 5.857687 P12 5.550901 P7 5.482928 P8 5.006246 P2 4.828302 P3 4.038874 P14 3.816084 P9 3.75 P4 3.473111 P6 3.25 P13 2.926175 P5 1.820027 P11 1.677051 P10 0.901388

Table 4. Distance Algorithm

Considering k = 6 for this illustration, points P1, P15, P12, P7, P8 and P2 are the

points farthest away from the minimax solution (6.5,5.75). Considering the minimax

solution as the starting solution, Weiszfeld’s algorithm is used to solve the minisum

objective function. The Weiszfeld’s function is shown in Equation 14.

Minimize ( ) ( ) ( )∑ −+−= 22, iii byaxwyxf …...…… (14)

The next step is for solve for every iγ as shown in Equation 15. x and y are the

starting solution coordinates.

( ) ( )22ii

ii

byax

w

−+−=γ ….……. (15)

Page 46: k Centra Single Fac Loc Mat Lab

46

The iγ values obtained are shown in Table 5.

γ1 0.17072γ12 0.18015γ2 0.20711γ8 0.19975γ7 0.18238γ15 0.17072

Table 5. iγ Values

The next step is to obtain the Γ(x,y) value by summing for every γi. The value of

Γ(x,y) comes out to be 1.1108 in this case. The Γ(x,y) value calculation is shown in

Equation 16.

∑=

=Γm

ii yxyx

1),(),( γ ...............(16)

The next step is to determine all iλ values as shown in Equation 17. The values

obtained are listed in Table 6.

),(),(

),(yxyx

yx ii Γ

λ ..............(17)

Page 47: k Centra Single Fac Loc Mat Lab

47

λ1 0.15368λ12 0.16218λ2 0.18645λ8 0.17982λ7 0.16419λ15 0.15368

Table 6. iλ Values

The final step is to find the Weiszfeld values for x and y and the objective function

value. The formulae are listed in Equations 18, 19, and 20. The WF values are presented

in Table 7.

Weiszfeld’s (x) = WFx = Σ (i = 1 to m) λi.ai ..............(18)

Weiszfeld’s (y) = WFy = Σ (i = 1 to m) λi.bi ..............(19)

Objective function value: ( ) ( )22iiieuc byaxwf −+−= ∑ ..............(20)

WF(x) WF(y) 7.86376 6.28355

Table 7. WF values

The objective function values are shown in Table 8.

Page 48: k Centra Single Fac Loc Mat Lab

48

feucP1 7.26172feucP12 6.46241feucP14 2.78996feucP9 2.37139feucP8 3.7197 feucP7 5.02977feucP15 4.49239

feuc 32.1273

Table 8. Objective Function Values

Using the distance algorithm to find the distance from the obtained minisum

solution to all existing locations, it is observed that the same six points are farthest away.

In this case, this solution is feasible and optimal for k = 6. Thus the k-centra solution for

this problem lies at x = 7.86 and y = 6.28. However, it was noticed that for k = 5, the

algorithm goes into a loop and the solution points keep jumping from one solution space

to the other. In this case, the MATLAB software discussed later in this chapter can be

used to find a sub-optimal solution. The solution is presented in Chapter 4.

3.3.2 Planned City Problem with Annular Existing Customer Locations

The next problem considered is another common problem in location analysis.

This is a planned city problem where customers are located around a central city

landmark, be it a school or a big employer or a tourist attraction. The problem considered

is the same as the earlier problem that is locating a single service facility such that the

distance from the k farthest points is minimized. The example problem considered is a

15-point problem and the problem is solved for k = 1 to k = 15. The solution

Page 49: k Centra Single Fac Loc Mat Lab

49 methodology used is similar to the method employed to solve the earlier example. The

existing customer locations are listed in Table 9.

Points X Y P1 2 10 P2 3 6 P3 7 4 P4 11 4 P5 15 11 P6 13 16 P7 8 18 P8 4 15 P9 7 10 P10 8 9 P11 10.5 11.5 P12 9 10.5 P13 10 12 P14 8 12 P15 8 11.5

Table 9. Annular Layout Problem

The graphical representation is shown in Figure 12. The k-centra methodology is

applied to the existing location points and the problem is evaluated for all the values of k.

The obtained solution is listed in the next chapter and the solution methodology is

discussed in detail in the appendix section of this thesis.

Page 50: k Centra Single Fac Loc Mat Lab

50

2, 10

3, 6

7, 4 11, 4

15, 11

13, 16

8, 18

4, 15

7, 108, 9

10.5, 11.59, 10.5

8, 1210, 12

8, 11.5

0

2

4

6

810

12

14

16

18

20

0 2 4 6 8 10 12 14 16

x Coordinate

y C

oord

inat

e

Figure 12. Graphical Representation of an Annular City Layout

3.3.3 Planned City Problem with Distributed Location Clusters

The final example problem considered is a city problem with distributed location

clusters. This is also a common layout for modern cities where the population is located

in concentrated clusters. The concentrations could be developed residential areas or

individual housing complexes. The existing customer locations are listed in Table 10.

Page 51: k Centra Single Fac Loc Mat Lab

51

Points X Y P1 2 1 P2 3 4 P3 1 1 P4 1 4 P5 2 3 P6 9 9 P7 10 9 P8 8 10 P9 8 8 P10 10 11 P11 8 1 P12 8 3 P13 9 2 P14 10 3 P15 9 4

Table 10. Clustered Layout Problem

The graphical representation for the problem is depicted in Figure 13.

Page 52: k Centra Single Fac Loc Mat Lab

52

2, 1

3, 4

1, 1

1, 42, 3

9, 9 10, 98, 10

8, 8

10, 11

8, 1

10, 38, 3 9, 2

9, 4

0

2

4

6

8

10

12

0 2 4 6 8 10 12

x Coordinate

y C

oord

inat

e

Figure 13. Graphical Representation of a Clustered City Layout

The solution is listed in the fourth chapter and the results are given in the

appendix. The three examples discussed above are also solved using the k-centra code

written in MATLAB.

3.4 MATLAB Methodology

MATLAB is a high-level computer language recognized worldwide in the

mathematical community for its computational prowess in performing various complex

mathematical tasks. It is superior to various traditional solving methods as well as

programming languages like C, or C++ for handling computationally intensive projects.

The MATLAB package is available with many software add-ons to solve a multitude of

problems in various application areas. It is an interactive tool with options for 2-D or 3-

Page 53: k Centra Single Fac Loc Mat Lab

53 D visualization of input or output data. MATLAB can be integrated with various other

software applications to suit every computational need.

3.4.1 MATLAB Application to the k-Centra Problem

The advantage of using MATLAB to solve a location problem over traditional

manual methods is better accuracy as well as increased computational speed. The manual

method for evaluating k-centra problems is a very tedious one involving much iteration to

get a more accurate solution. The other advantage is you can manipulate or massage the

code to suit your computational needs. The code discussed later in this chapter has input

options which are user-defined like the number of existing locations, value of k, number

of iterations, search space boundaries, and search space increment. The code has been

programmed to output the coordinate solution in a graphical representation. You can add

a lot more features like inputting coordinate data directly from other applications, 3-D

visualization, report generation, decision support using neural networks, etc.

The same logic used for manually solving a k-centra problem is used to code the

MATLAB program.

3.4.2 Data Flow Logic and MATLAB Functions

The k-centra example problems involved were solved in MATLAB 6.0, in the

following manner. The user interface is a basic MATLAB program that prompts the user

to input various data point coordinates and other parameters. User input includes the

number of existing locations (N) and respective coordinates entered one by one (x and y

Page 54: k Centra Single Fac Loc Mat Lab

54 separately), maximum range of x and y, search space increment, k-term, and number of

iterations. The added advantage is that this can be modified easily as per the user’s

requirements and future upgrades. Newer parameters such as weights, etc. can be added

in a seamless fashion.

This program then calls the main program which stores the user inputted data,

saves and computes the various distances and k-centra parameters by calling the

respective functions. The overall flow diagram is as seen in Figure 14.

SOFTWARE FLOW DIAGRAM

User interface - Prompts the user for dataFile name: view .m

Main program that sorts and stores, computesand calls the necessary functions for each

processFile name : kot_w ts.m

Scatter PlotOutputs the values to the user

Function: f indpos.m is used to f ind the Kmaximum distance X-Y coordinates for

future computation of Weiszfeldscoordinates

Function: WFxy.m is used to compute theWeiszfelds X and Y coordinates

Figure 14. Software Flow Diagram

Page 55: k Centra Single Fac Loc Mat Lab

55 3.4.3 Minimax Logic

The minimax function forms an important part of the logic flow for this program.

The minimax function is called upon after the “View” function and uses user input as its

starting variables. Data used for the function includes “N” number of existing locations

and corresponding coordinates. Consider the N data points to be Data1, Data2…..Data

N. The user reference is initiated as Xref and Yref and is started at (0,0) and is

incremented on the basis of user input. The maximum range threshold is also set by the

user (Xmax and Ymax). The distance or range for each data point from this reference is

then computed using the distance formula as shown by Equation 21.

( ) ( )22 yyxxDN refrefxy −+−= ………… (21)

The distances are represented as D100, D101..., D120..., D1x0 … DNxy. The tabular

representation is shown in Table 11.

Page 56: k Centra Single Fac Loc Mat Lab

56

Xref Yref Data1 Data2 .. Data

..

DataN Max

0 0 D100 D200 .. DN00 Dmax000 1 D101 D201 .. DN01 Dmax010 2 D102 D202 .. DN02 Dmax02.. .. .. .. .. .. 0 Ymax

= y D10y D20y .. DN0y Dmax0y

1 0 D110 D210 .. DN10 Dmax101 1 D111 D211 .. DN11 Dmax111 2 D112 D212 .. DN12 Dmax12.. .. .. .. .. .. 2 0 D120 D220 .. DN20 Dmax202 1 D121 D221 .. DN21 Dmax21.. .. .. .. .. .. .. .. .. .. .. ..

Xmax = x Ymax = y

D1xy D2xy .. DNxy Dmaxxy

Table 11. Minimax Data Representation

After each increment, and progressively stepping through the search grid, the

program computes the maximum of each of these distances and is represented in the

program as Dmax00 .., Dmaxxy shown in Table 12.

Dmax00 Dmax01 …… Dmax0y Dmax10 Dmax11 …… Dmax1y Dmax20 Dmax21 …… Dmax2y …… …… …… …… Dmaxx0 Dmaxx1 …… Dmaxxy

Table 12. Maximum Distance Matrix

The minimum values from each of the above values are calculated and forms an

intermediate step in the calculation. The matrix is shown in Table 13.

Page 57: k Centra Single Fac Loc Mat Lab

57 Min of Dmax00 : Dmaxx0

Min of Dmax01 : Dmaxx0

…… Min of Dmax0y : Dmaxxy

Table 13. Intermediate Distance Matrix

The next step is to find the minimum of these intermediate minimums. This is the

minimax solution distance. We can trace the (Xref,Yref) coordinate where this occurs as

the maximum distances matrix directly represents the search grid of (Xref,Yref)

coordinates as shown in Table 14 below, and the user data points (D1, D2.. DN) will also

lie inside this grid.

0 0 0 1 0 2 …… 0 y 1 0 1 1 1 2 …… 1 y 2 0 2 1 2 2 …… 2 y …… …… …… …… …… x 0 x 1 x 2 …… x y

Table 14. Search Grid Coordinates

Thus the minimax solution, its coordinates and its distance from other existing

locations can be calculated. The flow chart for the minimax function is provided in

Figure 15. The function code is provided in the appendix section of this thesis.

Page 58: k Centra Single Fac Loc Mat Lab

58

LOCATION ANALYSIS USING K-CENTRA

Enter the no. of data points NEnter the data point coordinates (X,Y)Enter the maxium range for locationsearch in X and Y (Xmax,Ymax)Enter the space search incrementEnter the K centra K termEnter the Weiszfelds WeightEnter the number of iterations

Verify and monitor thedata points for errors

and report to user

Compute the MINIMAX SOLUTION

For Xref = 0 to Xmax in steps of incr

For all the data points (From 1 to N)

For Yref = 0 to Ymax in steps of incr

Compute the distance of each data point from the Xref andYref

Distance = Sqrt{(X-Xref)^2-(Y-Yref)^2}

Compute and save the maximum of the distancescomputed for each iteration and f ind the corresponding

X Y coordinates

Find the minimum of these maximums, and output the X and Y coordinate. This isthe Minimax Solution

Data Points LoopYref LoopXref Loop

Figure 15. Minimax Function Flowchart

Page 59: k Centra Single Fac Loc Mat Lab

59 3.4.4 Finding the k-Maximum x-y Coordinates

The next step in the flow is to find the coordinates associated with the k-

maximum distances from the minimax solution. The user inputs the data coordinates and

the value of k. The position for each of the coordinates from the minimax solution is

computed. Depending on the value of k, the x-y coordinates furthest from this minimax

solution is stored for future use. Say k is 5, the five furthest distances and their

coordinates are considered. The MATLAB process uses inbuilt functions like ‘find’ (to

find the position of the data if it’s stored in an array), and “max” (to find the maximum

distance).

Since the data was stored in an array, we zeroed the selected values to avoid

repetitions while it uses these inbuilt functions.

3.4.5 Weiszfeld’s Function

In this case, the only difference is that the minimax solution is used as the

reference coordinates i.e., as the initialization parameters. In future iterations, the

Weiszfeld’s functions (WFxy.m) are computed iteratively, and processed for the number

of iterations prompted by the user. The Weiszfeld logic is coded similar to the method

used in the manual solutions. The method is discussed in detail in Section 3.1 of this

chapter. The steps are repeated for as many iterations as requested but the user.

In every iteration, we use the findpos.m function to compute the furthermost k

points from each iteratively computed WFxy. The flowchart is given in Figure 16.

Page 60: k Centra Single Fac Loc Mat Lab

60

Minimax solution X-Y coordinates

Compute the K maximum X-Y coordinates from thisminimax solution for the given data set (f indpos.m)

Using the minimax solution as the inital parametersfor Weiszfelds function, and using the selected K X-

Y coordinates compte the Weiszfelds X Ycoordinates (WFxy.m)

First Iteration

Find the K maximum distances from the f irst iterativeWeiszfelds X and Y coordinate

For the number of iterations specif ied by the user(num_iter)

For i = 1 to the num_iter

Compte the Weiszfelds XY coordinates iteratively, andsave for future use

SCATTER PLOT and other methods of outputting the computed parameters

If i =num_iter

No

Yes

Figure 16. Weiszfeld Function Flowchart

Page 61: k Centra Single Fac Loc Mat Lab

61

Chapter 4

4. Results

This thesis developed a unique, analytical method to solve the planar k-centra

single facility location problem with Euclidean distances. Problems were solved

manually using Excel iterations. A MATLAB code was developed as a faster mode for

solving k-centra problems. After the method was verified, the next step was to find the

accuracy of the k-centra solutions obtained as compared to the optimal minisum solution

for the problems. The final step was to conduct further experimentation to find the

computational time for the k-centra and corresponding minisum problems.

4.1 Results for the Random Location Problem-Excel and MATLAB

The results obtained by using the k-centra methodology to solve the random

location problem using Excel are displayed in Table 15.

Page 62: k Centra Single Fac Loc Mat Lab

62

Method x y Comments Minimax 6.5 5.75 Optimal k-centra (k=2) 6.5 5.75 Optimal k-centra (k=3) 2.94573 4.87253 Degenerate k-centra (k=4) 6.38474 5.61015 Optimal k-centra (k=5) 10.0325 7.00555 Degenerate k-centra (k=6) 6.48704 5.29013 Optimal k-centra (k=7) 4.94579 4.44125 Degenerate k-centra (k=8) 6.58535 5.38736 Optimal k-centra (k=9) 6.99721 5.75654 Degenerate k-centra (k=10) 6.53427 5.52402 Optimal k-centra (k=11) 6.90182 5.39711 Degenerate k-centra (k=12) 6.73221 5.77254 Optimal k-centra (k=13) 6.77582 5.48388 Degenerate k-centra (k=14) 6.79665 5.55367 Optimal k-centra (k=15) 6.74856 5.95321 Optimal

Table 15. Excel Solution-Random Location Problem

It is observed that for k = 2, 4, 6, 8, 10, 12, 14, 15, we get an optimal k-centra

solution. An optimal k-centra solution implies that the point obtained after the first

iteration still has the original k points as the k points lying farthest away. For all other k

values, the problem becomes degenerate and the algorithm falls in a loop. This means

that that the solution point obtained after all the iterations does not have the same k points

lying farthest away as it started with. The solution point jumps around between 2 or 3

possible solution points never obtaining optimality. This occurrence is better explained

when the MATLAB results are studied. The results obtained using the MATLAB

methodology is shown in Table 16.

Page 63: k Centra Single Fac Loc Mat Lab

63

k Value x y 2 6.4951 5.7459 3 10.9906 5.5276 3 2.0000 4.9834 4 6.2264 5.5206 5 10.1159 6.7560 5 3.023 4.1519 6 6.353 5.1108 7 5.4278 4.6738 7 7.4667 6.2096 8 6.805 5.8855 9 6.6943 4.7370 9 7.032 6.3561 10 6.4317 5.3727 11 6.9824 5.4588 11 6.6027 5.8715 12 7.0524 5.8734 13 6.8411 5.5280 13 6.629 5.8243 14 6.5318 5.5320 15 6.7462 5.9592

Table 16. MATLAB Solution-Random Location Problem

The example problems were solved for 10 iterations. When we have a

degenerate solution for some value of k, it comes out as a separate solution in MATLAB

compiler. Thus, there are two solutions for k = 3, k = 5, k = 7, k = 9, k = 11, and k = 13.

The user has all probable optimal and semi-optimal k-centra solutions in front of him to

assist him with the decision making. The graph shown in Figure 17 shows the solution

plot for k = 6. This scatter plot is automatically generated by the proposed MATLAB

code. The diamond indicates the location of the minimax solution while the asterisk

shows the k-centra solution. In this case, k = 6 gives a feasible k-centra solution at x =

Page 64: k Centra Single Fac Loc Mat Lab

64 6.35 and y = 5.1. Thus if the user has 15 existing customer locations and he needs to

locate a single service facility considering that the criteria involved is that he has to serve

atleast 6 customers lying farthest away, this method provides an alternative solution to

the solution obtained by using the minisum method.

Figure 17. k = 6, Random Location Problem

The solution plot for k = 5 is shown in Figure 18. This is an example of a

degenerate solution where the obtained location point jumps between 2 points,

(10.1,6.75) and (3,4.15). In this case, the objective function values (feuc values) are

calculated for the obtained solution points and the lowest feuc value obtained is considered

Page 65: k Centra Single Fac Loc Mat Lab

65 as the k-centra solution. This scenario can also be resolved by using a second constraint

(e.g. weights of the surrounding customer locations) to decide on the appropriate location

for the service facility.

Figure 18. k = 5, Random Location Problem

The results for all three solved examples are presented in a similar way with

different tables for the Excel as well as the MATLAB solution along with two graphical

illustrations showing a feasible and a degenerate solution. The solution tables and graphs

for the annular layout problem and the clustered layout problem are listed in Appendix B

and Appendix C respectively.

Page 66: k Centra Single Fac Loc Mat Lab

66 4.2 Optimality Comparison between k-Centra and Minisum Solutions

In order to check the accuracy of k-centra solution as compared to the optimal

minisum solution, five problems each with fifteen (n = 15) and thirty (n = 30) existing

locations were solved in MATLAB. The coordinates were randomly generated in

MATLAB. The problems were solved for 5 equally interspaced k-values for 20 iterations

each. The objective function value (feuc) was calculated at the end of all the iterations and

used as a comparison measure between the k-centra and minisum method. The objective

function values for the 15-point problems are listed in Table 17.

k Value feucP1 feucP2 feucP3 feucP4 feucP5 3 164.20 159.09 133.08 146.97 122.06 6 133.58 124.93 110.86 130.13 108.28 9 118.85 107.87 102.57 110.41 96.03 12 117.40 106.38 100.88 108.25 94.77

Minisum 116.90 106.08 100.55 107.53 94.08

Table 17. Objective Function Values for k = 3, 6, 9, 12 and Minisum Problems

Table 17 shows the feuc values for 5 problems (P1, P2, P3, P4, and P5) when k =

3, 6, 9, and 12. When k = 15, the problem becomes a minisum problem which is the

optimal solution to the problem. The lesser the objective function value, the better the

solution. From the table, it is clear that the objective function value reduces as we move

from k = 3 to k = 15. This is due to the fact that more of the problem characteristics get

incorporated in the solution as the value of k is increased. Further observations can be

made with a plot for Table 17. The graphical representation is shown in Figure 19.

Page 67: k Centra Single Fac Loc Mat Lab

67

020406080

100120140160180

0 5 10 15 20

k Value

f euc

Val

uefeucP1feucP2feucP3feucP4feucP5

Figure 19. Objective Function Plots for n = 15

Figure 19 shows the objective function plot for the 15-point solved problems.

From the plot, it can be observed that the feuc curves for all the considered problems have

a similar pattern. Also, the curve drops sharply from k = 3 to k = 9 after which it evens

out until we reach k = 15. This is consistent with all the five solved problems. The

percentage increase from optimal value as k drops from 15 to 3 for problems P1, P2, P3,

P4, and P5 is shown in Table 18.

k Value % More P1

% More P2

% More P3

% More P4

% More P5

3 40.45% 49.96% 32.35% 36.68% 29.74% 6 14.26% 17.77% 10.26% 21.02% 15.10% 9 1.66% 1.62% 2.01% 1.69% 2.19% 12 0.43% 0.28% 0.33% 0.68% 0.73%

Minisum 0.00% 0.00% 0.00% 0.00% 0.00%

Table 18. Percentage Increase from Optimal Value (n = 15)

Page 68: k Centra Single Fac Loc Mat Lab

68

It is observed that at k = 3, the objective function value is 40.45% more than the

optimal objective function value. The objective function value decreases as k moves

towards n. At k = 9, the increase from the optimal solution is very low (1%-2.2%) and it

becomes lower at k = 12 (less than 1%). The graphical plot for Table 18 is shown in

Figure 20.

0%

10%20%

30%40%

50%60%

0 2 4 6 8 10 12 14 16

k Value

% In

crea

se fr

om O

ptim

al

Val

ue

% More P1% More P2% More P3% More P4% More P5

Figure 20. Percentage Increase from Optimal Value (n = 15)

From Figure 20, it is evident that the objective function value increases as we

increase the k value. However, after a certain cutoff value for k, there is negligible

increase in the objective function value. To investigate this solution aspect, five 30-point

problems were solved for k = 6, 12, 18, 24 and 30. The k values for the 30-point

problems were chosen in the same 20% intervals as in the 15-point problems so as to

compare and analyze both the problem sets across similar solution trends and to verify

whether this trend would hold for other problems as well. The coordinates were

Page 69: k Centra Single Fac Loc Mat Lab

69 randomly generated and saved as a separate array in the MATLAB workspace. The

objective function (feuc) values for various values of k are listed in Table 19.

k Value feucP1 feucP2 feucP3 feucP4 feucP5 6 308.63 292.10 323.46 256.32 299.49 12 257.40 227.04 248.72 218.62 258.63 18 222.70 210.88 235.89 203.03 234.95 24 220.84 208.99 233.91 201.12 233.44

Minisum 220.22 208.59 233.06 200.39 233.03

Table 19. Objective Function Values for k = 6, 12, 18, 24 and Minisum Problem

The optimal objective function value is obtained when all the 30 points are

evaluated for the minisum function. From Table 19, it can be observed that the objective

function values increase as k decreases from 30 to 6. This is the same trend which is

observed in Table 17 for the 15-point problems. The objective function plot for the 30-

point problems is shown in Figure 21.

Page 70: k Centra Single Fac Loc Mat Lab

70

050

100150200250300350

6 12 18 24 30

k Value

f euc

Val

uefeucP1feucP2feucP3feucP4feucP5

Figure 21. Objective Function Plots for n = 30

The objective function plots for the 30-point problems reflect the same slope as

the 15-point problems. It can be observed that the objective function value drops

significantly as k is changed from 6 to 18. At k = 18, the objective function curve flattens

out. The percentage increase from optimal value as k drops from 30 to 6 for problems

P1, P2, P3, P4, and P5 is shown in Table 20.

k Value % More P1

% More P2

% More P3

% More P4

% More P5

6 40.14% 40.04% 38.79% 27.91% 28.52% 12 16.88% 8.85% 6.72% 9.09% 10.98% 18 1.12% 1.10% 1.21% 1.32% 0.82% 24 0.28% 0.19% 0.37% 0.36% 0.17%

Minisum 0.00% 0.00% 0.00% 0.00% 0.00%

Table 20. Percentage Increase from Optimal Value (n = 30)

Page 71: k Centra Single Fac Loc Mat Lab

71

At k = 6, there is a significant increase from the optimal solution value when

compared to the increase at k = 18. The plot for Table 20 is shown in Figure 22.

0%5%

10%15%20%25%30%35%40%45%

0 5 10 15 20 25 30 35

k Value

% In

crea

se fr

om O

ptim

al

Val

ue

% More P1% More P2% More P3% More P4% More P5

Figure 22. Percentage Increase from Optimal Value (n = 30)

From Figure 22, it can be observed that for all 5 problems, at k = 6 we have a high

objective function value. This objective function value decreases as the k value increases

towards n. At k = 18, the increase from optimal value is just about 1%. This is the same

trend observed in all the problems irrespective of the value of n. By consolidating all the

data obtained from solving the 15-point and 30-point problems, it is easy to visualize the

solution trends. Table 21 shows the average percentage increase from optimality at 20%

intervals of n for the 15-point and 30-point problems.

Page 72: k Centra Single Fac Loc Mat Lab

72

%n 15-point 30-point 20% 37.84% 35.08% 40% 15.68% 10.51% 60% 1.83% 1.12% 80% 0.49% 0.27% 100% 0.00% 0.00%

Table 21. Average Increase from Optimal Value at 20% Intervals of n

From Table 21, it can be observed that at various percentages of n, the increase

from the optimal solution value is very similar for both the 15-point and the 30-point

problems. The graphical representation is shown in Figure 23.

0%5%

10%15%20%25%30%35%40%

0% 50% 100% 150%

Percentage of n

% In

crea

se fr

om O

ptim

al V

alue

15 point30 point

Figure 23. Average Increase from Optimal Solution Value at Various Levels of n

The plots for the 15-point and 30-point problems follow a similar trend. The

important points to note here are the significant down-slope at low percentages of n and

the flattening of the curve at about 60% of the value of n. Considering all the information

Page 73: k Centra Single Fac Loc Mat Lab

73 provided in this section, it can be interpreted that by taking a k-value at a certain

percentage of n, a good solution (negligible increase from optimal value) is obtained.

This problem characteristic required further investigation so as to find out the range of k

as a percentage of n where the increase from optimal solution value is negligible. Due to

the similarity of the solution trends, it can be inferred that the range of k (as a percentage

of n) to obtain a good k-centra solution would hold good for any problem. The range

obtained would provide a user with a viable idea to predict the smallest value of k so as to

obtain a nearly optimal solution for any k-centra problem.

4.3 Determining the Value of k to Obtain 1% Increase from Optimality

From Section 4.2, it can be observed that the objective function value of the

solution decreases from k = 1 to k = n. To obtain a benchmark value of k (at a certain

percentage of n) where 101% of optimal (i.e. 1% increase over optimal objective function

value) is obtained, problems were solved for n = 15, 30, 60, 120, 500, 1000, and 2000.

Once the cutoff percent is obtained for a particular value of n, four more problems were

solved for the same value of n to verify the obtained benchmark value of k for the

corresponding value of n. This was repeated for n = 15, 30, 60, 120, 500, 1000, and

2000. The results obtained after the experimentation are displayed in Table 22.

Page 74: k Centra Single Fac Loc Mat Lab

74

n Value

Value of k (Percentage of n) to Obtain 101% of Optimality Average 101% Solution

at k = 15 60.00% 60.00% 66.67% 60.00% 60.00% 61.33% 9 30 53.33% 50.00% 53.33% 53.33% 50.00% 52.00% 16 60 48.00% 48.00% 50.00% 48.00% 48.00% 48.40% 29 120 45.00% 45.00% 45.83% 45.83% 45.83% 45.50% 55 500 44.00% 44.20% 44.40% 44.80% 44.96% 44.47% 222 1000 44.00% 43.33% 43.70% 44.10% 44.60% 43.95% 439 2000 43.55% 43.30% 43.10% 43.55% 43.80% 43.46% 869

Table 22. Value of k Required to Obtain 101% of Optimal Solution Value

For n = 15, 1% above optimality is obtained on an average at 61.33% value of n

which in this case is at k = 9. For n = 2000, 101% of optimality is obtained at 43.46% of

n which comes up as k = 869. The important point to observe in Table 22 is the trend at

which the cutoff point varies as n increases from 15 to 2000. It can be noted that the

cutoff point average drops sharply from 61% at n = 15 to 48.4% at n = 60. From n = 120

to n = 2000, the average cutoff point for 101% of optimality drops from 45.5% to

43.46%. This means that the cutoff point for 101% of optimal changes with the problem

size. However, this change is not linear. There is significant variance in the cutoff point

percentage at lower values of n. At higher values of n, this variance reduces considerably

and the value of k to obtain a nearly optimal solution can be predicted within the cutoff

range. So, depending on the problem size and within certain accuracy, a user can decide

on a particular value of k to obtain a good solution by studying this particular problem

characteristic. The plot for this experiment is given in Figure 24.

Page 75: k Centra Single Fac Loc Mat Lab

75

0%10%20%30%40%50%60%70%

0 500 1000 1500 2000 2500

n Value

Ave

rage

Per

cent

age

of n

to

Obt

ain

101%

of O

ptim

ality

Figure 24. Value of k (% of n) to Obtain 101% of Optimal Solution Value

From Figure 24, it can be observed that the 101% cutoff curve drops sharply at a

lower value of n and it straightens out as n increases. If the curve is extrapolated, it can

be inferred that the cutoff k percentage for 101% of optimality would lay between 40%-

45% of n for any n values greater than 120. Thus, for higher values of n, a user can solve

the k-centra problem for 40%-45% of all the existing locations and obtain a nearly

optimal solution.

4. 4 Determining the Computational Time for k-Centra Problems

From Sections 4.2 and 4.3, it can be concluded that a good solution which is

nearly optimal is obtained even if just 50% of all the existing locations is used to solve

the problem. The next aspect to evaluate is the amount of time saved by solving the k-

centra problem for a certain percent of all the existing locations. Experimentation was

conducted considering only 50% of the points as the value of k. The time taken to solve

Page 76: k Centra Single Fac Loc Mat Lab

76 the k-centra and the minisum objective functions for a particular value of n were found.

The objective function (feuc) values were also found to verify the accuracy of the

solutions obtained. Problems were solved for n = 2000, 1000, 5000, 250, and 100. The

results obtained are shown in Table 23.

n Value Function Computational Time feuc Value

Minisum 922.51 15194.06 n = 2000 k = 1000 898.51 15241.19 Minisum 470.54 7709.9 n = 1000 k = 500 460.5 7737.29

Minisum 231.34 3839.85 n = 500 k = 250 227.06 3855.77

Minisum 116.58 1901.43 n = 250 k = 125 115.02 1912.66

Minisum 46.53 717.74 n = 100 k = 50 46.1 723.18

Table 23. Computational Time for Minisum and k-Centra Functions

The results displayed in Table 23 are compiled and interpreted in Table 24.

n Value % Time Reduction at 50% n % above Optimal Solution at

50% n 2000 2.60% (k = 1000) 0.31% (k = 1000) 1000 2.13% (k = 500) 0.36% (k = 500) 500 1.85% (k = 250) 0.41% (k = 250) 250 1.33% (k = 125) 0.59% (k = 125) 100 0.91% (k = 50) 0.76% (k = 50)

Table 24. Computation Time Reduction and Optimality Loss at 50% of n

Page 77: k Centra Single Fac Loc Mat Lab

77

A 2000-point minisum problem takes 2.60% more computation time than a k-

centra problem for the same 2000 points with k = 1000. The increase in the objective

function value for k = 1000 compared to the minisum objective function however is

negligible (0.31%). The same trend is observed in the 100-point problem. A 100-point

minisum problem takes 0.91% more computation time than the k-centra problem

considering k = 50. However, in this case the objective function value obtained for the k-

centra solution is 0.76% more than the optimal minisum solution. Thus, it can be inferred

that evaluating the k-centra problem taking k as 50% of the existing points provides very

good, nearly optimal solutions taking less computational time than the traditional

minisum method. The percent computation time reduction versus n value plot is shown

in Figure 25.

0.0%

0.5%

1.0%

1.5%

2.0%

2.5%

3.0%

0 500 1000 1500 2000 2500

Number of Existing Locations (n )

% L

ess C

ompu

tatio

n T

ime

at

50%

of n

Figure 25. Percentage Reduction in Computation Time at 50% of n

Page 78: k Centra Single Fac Loc Mat Lab

78

It can be inferred that for a corresponding minisum problem, a k-centra problem

with k taken as 50% of the number of existing points (n) takes a little less computational

time. From the plot trend in Figure 25, it can be also inferred that as the n value increases

the computational time would reduce correspondingly. It can also be observed that with

k taken as 50% of n, the percentage of computational time reduction at lower values of n

is less than the time reduction percentage at higher values of n.

Page 79: k Centra Single Fac Loc Mat Lab

79

Chapter 5

5. Conclusions and Future Research

This objective of this thesis was to find a unique method to solve the planar

single-facility k-centra problem with Euclidean distances. The method developed uses

the iterative nature of Weiszfeld’s method to selectively solve the minisum objective

function for a set of predefined k-farthest away points. Three examples influenced by

existing real-life location problems were solved manually in Excel and the results

obtained were verified using a MATLAB code written for evaluating such problems.

Further experimentation was conducted to check the accuracy and the speed of the k-

centra solution as compared to the minisum solution.

5.1 Accuracy of the k-Centra Solution

In this thesis a k-centra method is proposed as an alternative approach to the

minisum method. So, it was necessary to verify the accuracy of the solutions obtained

with the k-centra approach. Five 15-point and 30-point problems were solved each for

various values of k and were compared to the optimal minisum solution. It can be

concluded that for an n-point problem, the objective function value decreases as k is

increased from 1 to n. However, this is not a linear decrease. For a particular n-point

problem, the percent increase from optimality drops steadily until k reaches a certain

threshold percentage of n after which the drop is very gradual until the solution reaches

complete optimality at k = n. There is a significant increase from optimality at lower

Page 80: k Centra Single Fac Loc Mat Lab

80 values of k. Thus, the proposed k-centra approach provides the user with a good nearly

optimal solution, provided the k value is selected appropriately.

5.2 Selecting the Right k Value

It is absolutely necessary to select a good k value so that solution optimality is not

completely sacrificed. A few problems were evaluated for 1% increase in optimality

considering various values of n to obtain a general idea on selecting the right value of k.

From the results obtained, it can be concluded that for smaller problems (n<30), selecting

a k value between 50% - 60% of n yields a good solution. For bigger problems (n>30), a

nearly optimal solution is obtained by selecting k between 40% - 50% of n. From the

experimentation, it was also evident that the cutoff value of k (as a percent of n) to obtain

101% of optimality reduces from smaller to larger problems. However, after reaching a

certain value of n, 101% of optimality is consistently obtained in the same range (40% -

50% of n).

5.3 Computation Time for a k-Centra Problem

The aim of this thesis was to find a good alternative methodology to the

minisum method. A good alternative method should provide good results preferably

using less computational time. The proposed k-centra method provides the user with an

nearly optimal solution. However, it can be concluded that even though there is some

reduction in the total computational time for the proposed k-centra method as compared

to the minisum method, the time saved is negligible. Thus, the proposed k-centra

Page 81: k Centra Single Fac Loc Mat Lab

81 methodology is not significantly faster than the traditional minisum method. This

translates into a tradeoff between achieving complete optimality and computational time.

The negligible reduction in computation time by using this method does not justify the

deviation from optimality.

5.4 Future Research

The proposed k-centra method discussed in this thesis has its drawbacks in

terms of the probability of achieving a single optimal solution. Degeneracy is also an

inherent problem with this particular method. These issues are easily handled by adding

a few more parameters and constraints to the objective function. A few examples include

addition of weights depending on demand, or frequency, terrain conditions, traffic issues

and delivery cost considerations can easily negate sub-optimality and provide a single

feasible solution.

Certain changes can be made to the proposed methodology so as to ensure that the

computational time is reduced significantly as compared to a minisum method. Changes

can include a different method to solve the Weiszfeld’s loop, different selection criteria

for k after every iteration, different software used to evaluate the problem, etc.

This thesis considers a single facility location problem. This method can be

extended to more than a single facility problem depending on the size and nature of the

problem. The other aspect is the consideration of rectilinear distance metric. This

method can be modified to consider rectilinear distances by changing the considered

Page 82: k Centra Single Fac Loc Mat Lab

82 objective function. A good example for an application for the k-centra problem with

rectilinear distances is in warehousing and the design of aisles. This thesis considers a set

of location points on a plane; an interesting formulation would be to consider the points

on a network with 3-D spaces. In this thesis, the aim is to locate a single-point facility.

This thesis can also be extended to locate 2-D area spaces within a set of existing areas.

The anti k-centra problem is to locate one or more points so as to maximize the

distance to the k-closest points out of the set of existing locations. Future research in this

aspect is to solve weighted or unweighted instances of the anti k-centra problem.

Finally, the MATLAB program coded in this thesis can be easily modified to

consider all the above discussed variations. Some other possible additions to the program

includes solving the k-centra problem for a set of randomly generated existing location

coordinates, the addition of demand or cost weights, cross referencing of data from

external sources like Excel or Access, various different graphical representations, etc.

Page 83: k Centra Single Fac Loc Mat Lab

83

Bibliography

[1] Fermat, P. De. (1643) Methodus de maximis et minimis. In “Fermat-Oeuvres

I.”,Tannery, H. (Ed), Paris, 1896, supplement, Paris, 1922.

[2] Cavalieri, T. M. (1647) Exercitatio sexta. In CAVALIERI, “Exercitationes

geometricae.”, Bologna, 1647.

[3] Weber, A. (1909) “Ueber den Standort der Industrien. Erster Teil. Reine Theorie

der Standorte. Mit einem mathematischen Anhang von G.PICK.” (in German).

Verlag, J. C. B. Mohr, Tübingen, Germany.

[4] Weiszfeld, E. (1937) “Sur le point pour lequel la somme des distances de n points

donnes est minimum.” Tohoku Mathematical Journal, 43, 355-386.

[5] Hakimi, S. L. (1964) “Optimum locations of switching centres and the absolute

centres and medians of a graph.” Operations Research, 12, 450-459.

[6] Francis, R. L., McGinnis, L. F., and White, J. A. (1983) “Locational analysis.”

European Journal of Operational Research, 12, 220-252.

[7] Daskin, M. S. and Owen, S. H. (1998) “Two new location covering problems: The

partial covering p-center problem and the partial set covering problem.”

Geographical Analysis, ww, yy-zz.

[8] Hotelling, H. (1929) “Stability in competition.” Economic Journal, 39, 41-57.

[9] Drezner, Z. (1993) “Recent results in competitive facility location.” Studies in

Locational Analysis, 4, 97-103.

Page 84: k Centra Single Fac Loc Mat Lab

84 [10] Huff, D. L. (1966) “A programmed solution for approximating an optimum retail

location.” Land Economics, 42, 293-303.

[11] Francis, R. L. (1963) “A note on the optimum location of new machines in existing

plant layouts.” The Journal of Industrial Engineering, 14, 57-59.

[12] Francis, R. L. (1964) “On the location of multiple new facilities with respect to

existing facilities.” The Journal of Industrial Engineering, 15, 106-107.

[13] Rosen, J. B. and Xue, G. L. (1993) “On the convergence of a hyperboloid

approximation procedure for the perturbed Euclidean multifacility location

problem.” Operations Research, 41, 1164-1171.

[14] Drezner, Z. (1985) “Sensitivity analysis of the optimal location of a facility.” Naval

Research Logistics Quarterly, 32, 209-224.

[15] Cooper, L. (1963) “Location-allocation problems.” Operations Research, 11, 331-

343.

[16] Friedrich, F. (1929) “Alfred Weber's theory of the location of industries.” Chicago

University Press, Chicago, Illinois.

[17] Halpern, J. (1976) “The location of a cent-dian convex combination on an

undirected tree.” Journal of Regional Science, 16, 237-245.

[18] Hansen, P., Labbe, M. and Thisse, J. F. (1991) “An Overview of Representative

Problems in Location Research.” RAIRO Recherche Operationelle, 25, 73-86.

[19] Slater, P. J. (1978) “Structure of the k-centra in a tree.” Proceedings of the 9th

Southeast Conference on Combinatorics, Graph Theory and Computing, 663-670.

Page 85: k Centra Single Fac Loc Mat Lab

85 [20] Peeters, P. H. (1998) “Some New Algorithms for Location Problems on Networks.”

European Journal of Operational Research, 104, 299-309.

[21] Tamir, A. (2001) “The K-centrum Multi-Facility Location Problem.” Discrete

Applied Mathematics, 109, 293-307.

[22] Ogryczak, W. and Zawadzki, M. (2002) “Conditional Median: A Parametric

Solution Concept for Location Problems.” Annals of Operations Research, 110,

167-181.

Page 86: k Centra Single Fac Loc Mat Lab

86

Appendix A – MATLAB Code

clear all; close all; clc; fprintf('***************************************************************************************\n'); fprintf(' Location Analysis using Mini-Max and Weiszfelds Function \n'); fprintf(' Siddharth Kotian \n'); fprintf('***************************************************************************************\n'); no = input('Number of data points '); %weights = input('If weights are used alongside distance enter 1 else enter 0'); for i = 1:1:no fprintf('Data Point %d \n',i); data(i,1) = input('X '); data(i,2) = input('Y '); % if (weights == 1) % data_wt(i) = input('Data Point Weightage '); % end fprintf(' \n'); end xmax = input('Max Range of X '); ymax = input('Max Range of Y '); incr = input('Search Space Increment '); K = input('K Centra K term '); Wt = input('Weizfelds Weight '); num_iter = input('Number of iterations '); kot_wts % % DATA INPUT IF IN DEBUG MODE - JUST TESTING % clear all; % close all; % clc; % % % Input the Data numbers

Page 87: k Centra Single Fac Loc Mat Lab

87 % % data = [2,2; 2,4; 5,2; 3.5,4; 7,4; 9.5,4.5; 10.5,2; 11.5,5.5; 9.5,8; 7,6.5; % % 5,6.5; 2,9; 5.5, 8.5; 8.5, 9; 11,9.5 ]; % % %data = [2,10; 3,6; 7,4; 11,4; 15,11; 13,16; 8,18; 4,15; 7,10; 8,9; 10.5,11.5; 9,10.5; 10,12; 8,12; 8,11.5]; % % data = [2,1; 3,4; 1,1; 1,4; 2,3; 9,9; 10,9; 8,10; 8,8; 10,11; 8,1; 8,3; 9,2; 10,3; 9,4]; % % xmax = 12; % ymax = 12; % incr = 0.1; % K = 3; % Wt = 1; % num_iter = 10; % TO BE COMMENTED OFF IF YOU ARE RUNNING view.m %-------------------------------------------------------------------------------------------- x = 1; % count variable y = 1; % count variable for xref = 0:incr:xmax; % From 0 to max range of X inputted by user for yref = 0:incr:ymax; % From 0 to max range of Y inputted by user for i = 1:1:length(data); % From 1 to the actual length of the data file dist(i) = sqrt((data(i,1)-xref)^2+(data(i,2)-yref)^2); % Compute iteratively the distance of each of the % data point from 0 to each of the maximum ranges for X and Y end maxdist(x,y) = max(dist); % The maximum obtained from this distance eq for the given data set y = y + 1; % keeping track of the count, so that the max dist is saved correctly end if ( y > ymax+1)% Incrementing the count so that if the y loop is reached, reset the counters: x = x+1; % increment the counter for x y = 1; % reset the counter for y end end xcols = [0:incr:xmax];% reperesent the x and y coordinates, for easy reference ycols = [0:incr:ymax]; intmin = min(maxdist); % intermedieate minimum as matlab searches columns! minimax = min(intmin); % The minimax solution % Finding the position of this minimax

Page 88: k Centra Single Fac Loc Mat Lab

88 [row,col] = find(maxdist == minimax); % Correcting for the 0 offset bestX = xcols(row); bestY = ycols(col); for i = 1:1:length(data); bestdist(i) = sqrt((data(i,1)-bestX)^2+(data(i,2)-bestY)^2); %Distance equation end %------------------------------------------------------------------------------------- [maxd,xx,yy,bdist,cnt] = findpos(bestdist,K,data); % Calling function findpos to find the max K distance XY coordinates %Ouptut from the function Input to the function % only for software debugging % Use bdist for easy verify crosscheck! The top K values should be Zeroed % Cross check cnt should be 1 more than K kpts = [xx' yy']; % Data set for further use % Weiszfelds function for computing the X and Y coordinates [WFx,WFy] = WFxy(kpts,bestX,bestY,K,Wt); % First iteration for WF ( function %WFxy) %Computing the first WF X and Y terms non-iteratively, by using just the minimax solution %bestX = X coordinate of minimax soln; bestY = Y coordinate of minimax soln. %kpts= the maximum K points coordinates from the minimax solution %Wt is usually 1 %------------------------------------------------------------------------------------------ %Iterative computation of further WF X Y terms for z = 1:1:num_iter % Iterating until the user wants clear i % variable is cleared to use again for i = 1:1:length(data) newdist(i) = sqrt((data(i,1)-WFx)^2+(data(i,2)-WFy)^2); % Distance equation using the first %WFx and WFy points computed previously from the single iteration function above end [maxd_new,xx_new,yy_new,bdist_new,cnt_new] = findpos(newdist,K,data); %Calling function findpos %to find the top K distance XY coordinates

Page 89: k Centra Single Fac Loc Mat Lab

89 kpts_new = [xx_new' yy_new'];% Data set for further use [WFx,WFy] = WFxy(kpts_new,WFx,WFy,K,Wt); % iteration for WF ( function WFxy), uses the previous % values of WFx and WFy to compute new solution WFXY(z,:) = [WFx WFy]; % OUTPUT DATA SET WF -saved clear newdist; % clear variable for reuse end WFXY % output data %-------------------------------------------------------------------------- %Scatter plots for data points, the minimax solution and k-centra solution scatter(data(:,1),data(:,2)) hold on grid xlabel('X coordinate') ylabel('Y coordinate') axis([0 12 0 12]) % SET THE AXIS as you want it in the plot title('Scatter plot - k-centra Analysis K = 12') hold on scatter(bestX,bestY,48,'rd') % minimax hold on scatter(WFXY(:,1),WFXY(:,2),48,'k*') % WF plots hold on % Function to compute the maximum K distance points from % the minimax solution. function [maxd,xx,yy,bdist,cnt] = findpos(bdist,k,data); cnt = 1; % internal counter while (k~=0) % Until all the points inputted by the user are covered maxdist(cnt) = max(bdist); % finds maximum of the distances pos = find(bdist == maxdist(cnt)); % finds its position if (length(pos) > 1) for n = 1:1:length(pos)% Incase its multidimensional keep track of the points xx(cnt) = data(pos(n),1); % array manipulation yy(cnt) = data(pos(n),2); % maxd(cnt) = maxdist(cnt); bdist(pos(n)) = 0; % zeroing it out for next data max search, to prevent repetition cnt = cnt + 1; %increment count

Page 90: k Centra Single Fac Loc Mat Lab

90 if (cnt == k+1) %keep track of count k = 0; end end clear pos else xx(cnt) = data(pos,1); yy(cnt) = data(pos,2); %maxd(cnt) = maxdist(cnt); bdist(pos) = 0; cnt = cnt + 1; if (cnt == k+1) k = 0; end clear pos end maxd = 0; end % Function for Weiszfelds algorithm to compute the minisum values function [WFx,WFy] = WFxy(kpts,bestX,bestY,K,Wt); for g = 1:1:K gamma(g) = Wt/sqrt((kpts(g,1)-bestX)^2 + (kpts(g,2)-bestY)^2);% First step to WF end tau = sum(gamma); % Second step to WF for l = 1:1:K lamda(l) = gamma(l)/tau; % Third Step to WF lam_X(l) = lamda(l)*kpts(l,1); % lamda*X1 .. lamda*X2 .. ... lamda*X5 lam_Y(l) = lamda(l)*kpts(l,2); % lamda*Y1 .. lamda*Y2 ... end WFx = sum(lam_X); WFy = sum(lam_Y);

Page 91: k Centra Single Fac Loc Mat Lab

91

Appendix B – Results for the Annular Location Problem

The tabular results for the annular location problem solved in Excel and MATLAB are

shown in Tables 25 and 26 respectively.

Method x y Comments Minimax 8.45 10.8 Optimal k-centra (k=2) 6.5 5.75 Degenerate k-centra (k=3) 7.33482 9.35265 Degenerate k-centra (k=4) 7.24849 7.97259 Degenerate k-centra (k=5) 8.43329 9.62622 Degenerate k-centra (k=6) 9.6051 9.87137 Degenerate k-centra (k=7) 8.44544 9.89098 Degenerate k-centra (k=8) 7.8258 10.6031 Optimal k-centra (k=9) 8.58127 10.8565 Optimal k-centra (k=10) 8.91881 11.1285 Degenerate k-centra (k=11) 8.73425 10.701 Degenerate k-centra (k=12) 8.41566 10.5722 Optimal k-centra (k=13) 8.33592 10.8461 Optimal k-centra (k=14) 8.2086 11.2759 Optimal k-centra (k=15) 8.4432 11.3161 Optimal

Table 25. Excel Solution-Annular Location Problem

Page 92: k Centra Single Fac Loc Mat Lab

92

k Value x y 2 10.4754 17.00982 4.9882 5.0059 3 11.9842 14.96063 3.964 6.7660 4 5.568 6.2071 4 9.6731 14.87175 7.7326 13.44455 7.405 7.4007 6 7.1789 12.13636 9.4104 10.48666 5.9384 9.3724 7 7.773 11.14247 8.1799 9.9744 8 7.2562 10.27469 8.5562 10.818910 7.7917 10.181610 8.9422 11.133711 8.7619 10.717311 8.2714 10.336512 8.3545 10.469413 8.2557 10.841414 8.2534 11.022 15 8.3762 10.9827

Table 26. MATLAB Solution-Annular Location Problem

The solution illustrations for the annular layout problem are as shown in Figures

19 and 20, optimal and degenerate solutions respectively.

Page 93: k Centra Single Fac Loc Mat Lab

93

Figure 26. k=12, Annular Location Problem-Feasible

Page 94: k Centra Single Fac Loc Mat Lab

94

Figure 27. k=3, Annular Location Problem-Degenerate

Page 95: k Centra Single Fac Loc Mat Lab

95

Appendix C - Results for the Clustered Location Problem

The tabular results for the clustered location problem solved in Excel and

MATLAB are shown in Tables 27 and 28 respectively.

Method x y Comments Minimax 5.4900 6.0000 Optimal k-centra (k=2) 5.4955 5.9950 Optimal k-centra (k=3) 4.252853 4.21928 Degenerate k-centra (k=4) 5.299275 3.32027 Degenerate k-centra (k=5) 6.351602 4.59176 Degenerate k-centra (k=6) 7.018953 4.3006 Degenerate k-centra (k=7) 9.4010 7.1000 Degenerate k-centra (k=8) 5.1135 5.8244 Degenerate k-centra (k=9) 6.0876 3.8864 Degenerate k-centra (k=10) 6.2231 5.0577 Optimal k-centra (k=11) 6.7038 5.0001 Degenerate k-centra (k=12) 6.3718 6.6343 Degenerate k-centra (k=13) 6.4110 4.9985 Optimal k-centra (k=14) 6.9987 4.8355 Optimal k-centra (k=15) 7.3000 4.3569 Optimal

Table 27. Excel Solution-Clustered Location Problem

Page 96: k Centra Single Fac Loc Mat Lab

96

k Value x y

2 5.5000 6.0000 3 9.2767 9.9635 3 1.3249 9.7063 4 9.2016 6.7660 4 1.5086 2.3469 5 8.9143 9.2882 5 3.03 2.0338 6 5.3124 5.9687 6 6.9422 4.2437 7 4.4168 2.2909 7 9.1251 7.0399 8 6.5245 4.0596 8 5.0971 5.7257 8 7.2607 4.6370 9 6.0756 3.8138 9 5.2219 5.7791 10 6.2459 5.0479 11 6.0183 4.9081 11 6.6943 4.8387 12 6.3702 4.6113 12 6.7248 4.8884 13 6.3963 4.9695 14 7.0041 4.8477 15 7.2818 4.3501

Table 28. MATLAB Solution-Clustered Location Problem

The solution illustrations for the clustered layout problem are as shown in Figures

29 and 30, optimal and degenerate solutions respectively.

Page 97: k Centra Single Fac Loc Mat Lab

97

Figure 28. k = 10, Clustered Location Problem-Optimal

Page 98: k Centra Single Fac Loc Mat Lab

98

Figure 29. k = 6, Clustered Location Problem-Degenerate

Page 99: k Centra Single Fac Loc Mat Lab

99

Appendix D – MATLAB Solution for Solved Example 1 K = 1 WFXY = 2.0000 2.0000 11.0000 9.5000 2.0000 2.0000 11.0000 9.5000 2.0000 2.0000 11.0000 9.5000 2.0000 2.0000 11.0000 9.5000 2.0000 2.0000 11.0000 9.5000 K=2 WFXY = 6.4951 5.7459 6.4951 5.7459 6.4951 5.7459 6.4951 5.7459 6.4951 5.7459 6.4951 5.7459 6.4951 5.7459 6.4951 5.7459 6.4951 5.7459 6.4951 5.7459 K=3 WFXY = 11.0160 5.7979 2.0000 5.0084 10.9908 5.5301 2.0000 4.9837 10.9906 5.5276 2.0000 4.9834 10.9906 5.5276 2.0000 4.9834 10.9906 5.5276

Page 100: k Centra Single Fac Loc Mat Lab

100 2.0000 4.9834 K=4 WFXY = 6.3922 5.5103 6.3243 5.5141 6.2839 5.5166 6.2600 5.5182 6.2457 5.5192 6.2372 5.5198 6.2322 5.5202 6.2292 5.5204 6.2275 5.5205 6.2264 5.5206 K=5 WFXY = 8.6666 6.8312 3.0169 4.1907 10.1147 6.7609 3.0228 4.1524 10.1159 6.7561 3.0230 4.1519 10.1159 6.7560 3.0230 4.1519 10.1159 6.7560 3.0230 4.1519 K=6 WFXY = 6.5509 5.1548 6.4968 5.1315 6.4560 5.1228 6.4256 5.1186 6.4031 5.1161 6.3864 5.1143 6.3740 5.1130 6.3648 5.1121 6.3581 5.1113 6.3530 5.1108

Page 101: k Centra Single Fac Loc Mat Lab

101 K=7 WFXY = 6.5187 4.7900 6.7844 5.6701 6.3836 4.6893 7.9440 6.2926 5.6453 4.7511 7.5857 6.2581 5.4741 4.6959 7.4929 6.2221 5.4278 4.6738 7.4667 6.2096 K=8 WFXY = 7.3303 6.1964 6.2883 4.7783 7.0361 5.9762 6.0863 4.6847 6.8959 5.9187 5.9951 4.6543 6.8330 5.8956 5.9547 4.6416 6.8050 5.8855 5.9368 4.6361 K=9 WFXY = 6.4296 5.2524 6.8593 5.5260 6.2871 5.1532 6.8402 6.4686 6.5845 4.7509 6.9738 6.3542 6.6667 4.7339 7.0170 6.3535 6.6943 4.7370 7.0320 6.3561 K=10 WFXY =

Page 102: k Centra Single Fac Loc Mat Lab

102 6.5259 5.4317 6.4763 5.4012 6.4398 5.3776 6.6950 5.9922 6.7060 5.6693 6.6374 5.5388 6.5669 5.4698 6.5094 5.4259 6.4651 5.3951 6.4317 5.3727 K=11 WFXY = 6.8930 5.4252 6.5496 5.8428 6.9475 5.4400 6.5810 5.8578 6.9690 5.4510 6.5943 5.8660 6.9783 5.4564 6.6001 5.8698 6.9824 5.4588 6.6027 5.8715 K=12 WFXY = 6.9075 5.7746 6.9638 5.8200 6.9991 5.8440 7.0208 5.8570 7.0340 5.8643 7.0420 5.8684 7.0468 5.8708 7.0496 5.8721 7.0514 5.8729 7.0524 5.8734 K=13 WFXY = 6.8002 5.5159 6.6042 5.8185

Page 103: k Centra Single Fac Loc Mat Lab

103 6.8292 5.5238 6.6218 5.8224 6.8378 5.5267 6.6270 5.8237 6.8403 5.5277 6.6285 5.8242 6.8411 5.5280 6.6290 5.8243 K=14 WFXY = 6.5770 5.5202 6.5554 5.5250 6.5441 5.5279 6.5382 5.5297 6.5351 5.5307 6.5334 5.5313 6.5326 5.5316 6.5321 5.5318 6.5319 5.5319 6.5318 5.5320 K=15 WFXY = 6.7004 5.8143 6.7121 5.8749 6.7227 5.9092 6.7309 5.9292 6.7366 5.9413 6.7404 5.9487 6.7429 5.9533 6.7445 5.9562 6.7456 5.9581 6.7462 5.9592

Page 104: k Centra Single Fac Loc Mat Lab

104

Appendix E – MATLAB Solution for Solved Example 2

K=1 WFXY = 8 18 11 4 8 18 11 4 8 18 11 4 8 18 11 4 8 18 11 4 K=2 WFXY = 10.5491 16.9804 4.9902 5.0049 10.4755 17.0098 4.9882 5.0059 10.4754 17.0098 4.9882 5.0059 10.4754 17.0098 4.9882 5.0059 10.4754 17.0098 4.9882 5.0059 K=3 WFXY = 12.0991 14.8620 3.9715 6.7569 11.9852 14.9596 3.9641 6.7659 11.9842 14.9606 3.9640 6.7660 11.9842 14.9606 3.9640 6.7660 11.9842 14.9606 3.9640 6.7660

Page 105: k Centra Single Fac Loc Mat Lab

105 K=4 WFXY = 7.2997 8.1544 9.8389 14.8248 5.5924 6.1901 9.6793 14.8696 5.5689 6.2064 9.6733 14.8716 5.5680 6.2071 9.6731 14.8717 5.5680 6.2071 9.6731 14.8717 K=5 WFXY = 8.4862 12.8459 7.7298 7.3847 7.8868 13.4741 7.4761 7.4056 7.7651 13.4516 7.4200 7.4017 7.7385 13.4458 7.4077 7.4009 7.7326 13.4445 7.4050 7.4007 K=6 WFXY = 6.2592 11.2517 9.0170 9.7822 6.1006 11.1023 8.9428 9.6676 7.5993 12.4198 8.3668 8.9836 7.1789 12.1363 9.4104 10.4866 5.9384 9.3724 9.0218 10.6927 K=7 WFXY =

Page 106: k Centra Single Fac Loc Mat Lab

106 7.8968 11.1109 8.2328 9.9754 7.8003 11.1448 8.1929 9.9794 7.7796 11.1449 8.1833 9.9766 7.7744 11.1432 8.1807 9.9750 7.7730 11.1424 8.1799 9.9744 K=8 WFXY = 7.5190 10.4700 7.3838 10.3890 7.3187 10.3404 7.2871 10.3119 7.2715 10.2953 7.2637 10.2858 7.2598 10.2804 7.2578 10.2773 7.2568 10.2756 7.2562 10.2746 K=9 WFXY = 8.6469 10.8889 7.9452 10.1615 8.2297 10.5252 8.4248 10.7168 8.5569 10.8196 8.6458 10.8769 7.9445 10.1550 8.2285 10.5222 8.4238 10.7154 8.5562 10.8189 K=10 WFXY = 7.8071 10.2382 8.5126 10.8203

Page 107: k Centra Single Fac Loc Mat Lab

107 8.9543 11.1453 7.8289 10.2537 8.5255 10.8296 8.4768 10.4240 8.8679 10.9890 7.7917 10.1816 8.4970 10.7950 8.9422 11.1337 K=11 WFXY = 8.6338 10.9061 8.2372 10.3865 8.5699 11.1890 8.2489 10.4851 8.5796 11.2294 8.2601 10.5024 8.5853 10.5012 8.5068 10.8065 8.7619 10.7173 8.2714 10.3365 K = 12 WFXY = 8.3238 10.4489 8.4855 10.7709 8.4276 10.5683 8.3464 10.4622 8.4951 10.7822 8.4357 10.5758 8.3525 10.4676 8.4980 10.7863 8.4383 10.5784 8.3545 10.4694 K=13 WFXY = 8.2804 10.8481 8.2673 10.8486 8.2617 10.8470 8.2590 10.8453

Page 108: k Centra Single Fac Loc Mat Lab

108 8.2576 10.8440 8.2568 10.8430 8.2563 10.8424 8.2560 10.8419 8.2558 10.8416 8.2557 10.8414 K = 14 WFXY = 8.4212 10.8377 8.2503 11.0139 8.4258 10.8486 8.2526 11.0197 8.4268 10.8517 8.2532 11.0214 8.4270 10.8526 8.2533 11.0218 8.4271 10.8528 8.2534 11.0220 K= 15 WFXY = 8.4016 10.9278 8.3945 10.9507 8.3885 10.9636 8.3841 10.9712 8.3811 10.9758 8.3792 10.9787 8.3779 10.9805 8.3771 10.9816 8.3766 10.9823 8.3762 10.9827

Page 109: k Centra Single Fac Loc Mat Lab

109

Appendix F – MATLAB Solution for Solved Example 3 K=1 WFXY = 10 11 1 1 10 11 1 1 10 11 1 1 10 11 1 1 10 11 1 1 K=2 WFXY = 5.5000 6.0000 5.5000 6.0000 5.5000 6.0000 5.5000 6.0000 5.5000 6.0000 5.5000 6.0000 5.5000 6.0000 5.5000 6.0000 5.5000 6.0000 5.5000 6.0000 K=3 WFXY = 9.2583 9.9456 1.3249 2.1033 9.2767 9.9635 1.3249 2.1030 9.2767 9.9635 1.3249 2.1030 9.2767 9.9635 1.3249 2.1030 9.2767 9.9635 1.3249 2.1030

Page 110: k Centra Single Fac Loc Mat Lab

110 K=4 WFXY = 9.2024 9.6771 1.5087 2.3468 9.2016 9.7063 1.5086 2.3469 9.2016 9.7063 1.5086 2.3469 9.2016 9.7063 1.5086 2.3469 9.2016 9.7063 1.5086 2.3469 K=5 WFXY = 6.1379 6.3060 4.5750 3.7090 8.8875 9.2505 3.0305 2.0339 8.9143 9.2882 3.0300 2.0338 8.9143 9.2882 3.0300 2.0338 8.9143 9.2882 3.0300 2.0338 K=6 WFXY = 5.3679 6.0232 6.9767 4.2807 5.3395 5.9958 6.9592 4.2619 5.3246 5.9809 6.9498 4.2519 5.3167 5.9729 6.9449 4.2465 5.3124 5.9687 6.9422 4.2437

Page 111: k Centra Single Fac Loc Mat Lab

111 K=7 WFXY = 4.8023 5.4978 7.9361 6.1162 4.3742 3.8673 9.0874 6.8989 4.4403 2.2873 9.1255 7.0357 4.4177 2.2907 9.1251 7.0397 4.4168 2.2909 9.1251 7.0399 K=8 WFXY = 5.0057 5.6371 7.2141 4.5774 5.6091 6.2105 6.5018 4.0410 5.0796 5.7089 7.2519 4.6256 5.6453 6.2450 6.5245 4.0596 5.0971 5.7257 7.2607 4.6370 K=9 WFXY = 5.8078 5.2856 6.6312 5.3423 5.9904 5.6187 5.8944 4.7772 6.5641 5.1056 5.8857 5.4664 6.7083 5.4520 6.0602 5.7051 6.0756 3.8138 5.2219 5.7791 K=10 WFXY =

Page 112: k Centra Single Fac Loc Mat Lab

112 6.0565 4.7757 6.0930 4.8812 6.1345 4.9383 6.1684 4.9742 6.1938 4.9987 6.2121 5.0159 6.2252 5.0283 6.2345 5.0371 6.2412 5.0434 6.2459 5.0479 K=11 WFXY = 6.6241 4.7066 5.9587 4.8358 6.3832 4.5649 6.4409 5.2239 6.6797 4.8224 6.0077 4.8980 6.4183 4.6002 6.4648 5.2483 6.6943 4.8387 6.0183 4.9081 K=12 WFXY = 6.3420 4.6112 6.7115 4.8851 6.3631 4.6084 6.7211 4.8861 6.3682 4.6099 6.7237 4.8874 6.3697 4.6109 6.7245 4.8881 6.3702 4.6113 6.7248 4.8884 K=13 WFXY =

Page 113: k Centra Single Fac Loc Mat Lab

113 6.5620 4.8943 6.4675 4.9576 6.4299 4.9749 6.4138 4.9773 6.4060 4.9759 6.4019 4.9739 6.3994 4.9722 6.3979 4.9710 6.3969 4.9701 6.3963 4.9695 K=14 WFXY = 6.6580 4.7103 6.8151 4.7643 6.9027 4.7986 6.9504 4.8195 6.9760 4.8319 6.9897 4.8391 6.9970 4.8433 7.0009 4.8457 7.0030 4.8470 7.0041 4.8477 K=15 WFXY = 6.9188 4.6537 7.0940 4.5142 7.1824 4.4416 7.2286 4.4014 7.2533 4.3787 7.2668 4.3657 7.2742 4.3582 7.2783 4.3539 7.2805 4.3515 7.2818 4.3501