SlideShare a Scribd company logo
1 of 4
Download to read offline
M. Mahmoudi, K. Shahanaghi / International Journal of Engineering Research and
                  Applications (IJERA) ISSN: 2248-9622 www.ijera.com
                     Vol. 3, Issue 1, January -February 2013, pp.386-389
          A Genetic Algorithm For P-Median Location Problem
                               M. Mahmoudi and K. Shahanaghi
 Department of Industrial Engineering, Iran University of Science and Technology, Tehran 1684613114, Iran.


Abstract
         In this paper, we have proposed a new           allocate facilities to demand nodes. The objective is
genetic algorithm for p-median location problem.         to minimize total transportation (distance is
In this regard, prior genetic algorithms were            weighted by demand) between demand nodes and
designed for p-median location problem by                facilities.
proposing several methods that are used in               The following assumptions are considered in the
generation of initial population, crossover and          problem:
mutation operators, and new operator so- called          The capacity of each facility is unbounded. Each
re-allocation has been incorporated into the             node can be supplied by just one facility, but each
algorithm that causes to find the optimal solution       facility can service to several demand nodes. To
faster. Finally, efficiency of the algorithm has         formulate this problem, the following notations are
been shown by a numerical example.                       used:
                                                         i and j : index of demand nodes;
Keywords: Genetic Algorithm, p-Median Location
Problem, Multi Parent Crossover, Re-allocation.
                                                         hi : demand in node i ;
                                                         d ij : distance between demand nodes i and j ;
1. Introduction                                          n : number of demand nodes;
            Genetic Algorithm (GA) is a meta-heuristic   p : number of facilities that be located;
method which is used to obtain a near optimal
solution in cases that numerical and mathematical        Decision variables:
methods are not able to solve the problem in             x j : is equal to 1 if facility is located in node j ,
reasonable time. GA generates a new population           else is equal to 0;
from the current population by using several              y ij : is equal to 1 if facility j is allocated to
operators, repeating these methods until a proper
solution is obtained, and termination criteria are       demand node i , else is equal to 0.
met. Each individual of the population, which is         Therefore, the p-median location problem is
called a chromosome, is a solution for the               formulated as integer linear programming (1): [2]
investigated problem. Chromosomes are composed                       n   n

of genes.                                                Min      h y
                                                                 i 1 j 1
                                                                                 i        ij   d ij
            GA has five steps: initial population
generation, parent selection, crossover operation,           s.t :
mutation operation and new population selection.                             n

Initial population is generated randomly. Parents are                    y
                                                                         j 1
                                                                                     ij         1 i         (1)
selected randomly or the population is ordered
decreasingly by fitness function value and then,                         y ij  x j                   i, j
parents are selected from top of the list. The                               n
crossover operator is performed by separating                            x
                                                                         j 1
                                                                                     j     p
chromosome and replacing the separated parts. In
mutation operation, a gene is selected randomly and                      xi , y ij  0,1 i, j
changed [1]. To perform selection operator,
generated offspring go to the next stage immediately               The first constraint represents that each
or offspring along with their parents are ordered        demand node can be supplied by one facility. The
decreasingly according to fitness function value.        second constraint ensures that a node is allocated to
Then the new population is selected from above the       a demand node when a facility is located in that
list to fill the population.                             node. Third constraint indicates the number of
In this paper, we apply GA for solving p-median          facilities that must be located. The last constraint
location problem and we improve it by applying           shows the type of each decision variable.
some methods in each stage.
                                                         3. GA for solving p-median problem
2. P-median location problem                                      In this section, we introduce the proposed
In p-median location problem, we have several            genetic algorithm that is used to solve the p-median
demand nodes. The aim of the problem is to choose        location problem.
p nodes to locate facilities in those nodes and


                                                                                                                386 | P a g e
M. Mahmoudi, K. Shahanaghi / International Journal of Engineering Research and
                  Applications (IJERA) ISSN: 2248-9622 www.ijera.com
                         Vol. 3, Issue 1, January -February 2013, pp.
3.1. Introducing chromosomes                               one point or two points (one of these ways is
         Number of genes that form chromosomes             selected randomly). In one point crossover, one gene
of the proposed algorithm is equal to the number of        is selected randomly. To perform crossover
demand nodes. Each gene is filled by the index of          operation, we use this gene and the second part that
the node which is selected to locate a facility. These     is created by it. In two-point crossover, two random
genes show the facility node to which the demand           genes are selected in the chromosome. To perform
node is allocated. For example, consider 7 demand          crossover operation, we use these genes and the
nodes. Figure 1 shows a chromosome.                        middle part that is created by them. Figure 2 shows
                                                           one point crossover and figure 3 shows two points
                                                           crossover.


Figure 1. A sample chromosome of proposed
algorithm
          Genes of this chromosome indicate a
facility location and the demand allocation. This
chromosome shows that facilities are located at
nodes 2, 4 and 7. Facility node 2 is allocated to
nodes 2, 3 and 5, facility node 4 is allocated to
nodes 1,4 and 8, and facility node 7 is allocated to
nodes 6 and 7.
                                                           Figure 2. One point crossover
3.2. Initial population
           To generate initial population, genes are
usually generated randomly. In the proposed
algorithm, to generate initial population, we
randomly choose p nodes from demand nodes and
locate facilities at those nodes. Then, each demand
node is allocated to the nearest facility node. The
generation code of initial population is as follows:
function ip = Initial Population (nop, nof)
% nop : number of nodes
% nof : number of facilities
% sof : Set of facilities
sof = generate nof random site nodes for facilities
through demand nodes;                                      Figure 3. Two points crossover
for i=1:nop
    if i is in sof                                                   In the proposed algorithm, to perform
         ip(i) = i;                                        crossover operator, we use one of the above
    else                                                   methods randomly for each pair of parents [3]. In
         ip(i) = nearest facility to node i;               order to increase the efficiency of the algorithm,
    end                                                    after crossover operator, offspring are renewed.
end                                                        After crossover operator, the number of located
                                                           facilities may not be equal to p. Thus, the crossover
Using this method, generated chromosomes                   must be repeated. By renewing offspring, the
certainly are feasible and so feasible test is required.   number of located facilities will be equal to p.
                                                           Therefore, generated chromosome is feasible.
3.3. Fitness function                                      Children renewing code is following:
         The fitness function is calculated using the      function nc = new child (c, sof, nof, nofs)
objective function of the mathematical model.              % c : child
                                                           % sof : set of facilities
3.4. Parent selection process                              % nofs : number of facilities in set
         In parent selection process, parents are          % nof : number of facilities
selected randomly from population.                         if nofs > nof
                                                                 for k=1:(nofs-nof)
3.5. Crossover operation                                             select randomly two sites and replace one
         Crossover operator is used to generate                      of them with another;
children from parents. Based on parent selection                 end
procedure, we choose two chromosomes (parents).            elseif nofs < nof
We can perform crossover operator in two ways:                   for k=1:(nof-nofs)



                                                                                                 387 | P a g e
M. Mahmoudi, K. Shahanaghi / International Journal of Engineering Research and
                   Applications (IJERA) ISSN: 2248-9622 www.ijera.com
                          Vol. 3, Issue 1, January -February 2013, pp.
           select randomly a facility site (fs) and a
          non-facility site (nfs). Then, set a facility in
          nfs and change allocations from fs to nfs
          alternately;
       end
else
       child c is ok;                                        Figure 5. One point mutation operation
end
                                                             After performing mutation operator, generated
         In addition, in order to increase                   children are renewed similar to the crossover
effectiveness of the crossover operator, in each             operator. Therefore, the generated children are
performance of crossover, we run it several times            feasible.
(number of dates) and the best crossover is
introduced as the main crossover operator.                   3.7. Re-allocation
         In large scale problems, crossover operator                  re-allocation operator which is performed
might not show satisfactory efficiency. Therefore,           on each individual, without changing facility’s sites,
we can perform it on several parents instead of two          allocations of demand nodes to facilities are
parents [4, 5]. In this paper, results of the crossover      changed. Each demand node is allocated to the
operator using three parents are six children. Figure        nearest facility. Population resulting from this re-
4 shows a two points crossover with three parents.           allocation is added to the current population. This
                                                             operator causes a faster moving to the optimal
                                                             solution. The last population (population after
                                                             crossover and mutation operations and population
                                                             after re-allocation operation) enters the next stage
                                                             which is the selection of the new population.

                                                             3.8. Selection new population process
                                                                      Old and new population (population after
                                                             crossover and mutation operations and population
                                                             after re-allocation operation) create a list of
                                                             individuals. This list is sorted by fitness function
                                                             decreasingly. Then, we choose certain number of
                                                             chromosomes from the top of the list. These selected
                                                             chromosomes are selected as the new population.

                                                             3.9. stopping criteria
                                                                       To terminate the algorithm, two criteria
                                                             must be satisfied:
                                                             a) Algorithm reaches the maximum number of
                                                             iterations;
Figure 4. Two points crossover with three parents
                                                             b) The best solution is not changed after a pre-
                                                             specified number of generations.
3.6. Mutation operation
                                                             Finally, chromosomes with the best fitness value are
        In mutation operator, one or more genes of
                                                             selected as optimal solutions. A numerical example
a chromosome are selected and changed regarding
                                                             is solved in the next section to show the efficiency
the mutation rate. In the proposed algorithm, we use
                                                             of the algorithm.
one of these three types of mutation operator,
randomly: one point, two points and three points
mutation which are performed on one, two and three           4. Numerical example
gene respectively. These genes are replaced with                      To show the efficiency of the proposed
one, two and three numbers that are points to one            algorithm, we use Galvao’s standard data1. In
demand node. As an example, consider that 6th gene           Galvao’s problem, there are 100 demand nodes. We
must be replaced with a facility which is located at         want to locate p facilities to minimize total weighted
node number 4. Figure 3 illustrates one point                distance (p-median location problem). We solved
mutation operator.                                           this problem using our proposed algorithm and a
                                                             genetic algorithm proposed by Daskin’s Sitation
                                                             software2 with p=5, 10, 15, 20, 25, 30, 35 and 40.
                                                             Other parameters of this software are set as table 1.




                                                                                                   388 | P a g e
M. Mahmoudi, K. Shahanaghi / International Journal of Engineering Research and
                  Applications (IJERA) ISSN: 2248-9622 www.ijera.com
                         Vol. 3, Issue 1, January -February 2013, pp.
Table 1. Parameters of GA in Daskin’s software        [2]   S. H. Owen, M. S. Daskin, Strategic
       Parameter                      Value                 facility location: A review, European
                                                            Journal of Operational Research, Vol. 111,
        Population Size                 50                  No. 3, 1998, pp. 423-447.
        Number to Improve               0             [3]   A. Chipperfield, P. Fleming, H. Pohlheim,
                                                            C. Fonseca, Genetic Algorithm Toolbox
        Initial Population Size         150
                                                            User’s Guide, University of Sheffield, .
        Max # of Generation             300           [4]   A. E. Eiben, P. E. Raué, Zs. Ruttkay,
        #   of    Generation      w/o                       Genetic algorithms with multi-parent
                                        300
        Improvement                                         recombination, Proceedings of the 3rd
        Min Compatibility               0.1                 Conference on Parallel Problem Solving
                                                            from Nature, 1994, pp. 78-87.
        Number of Dates                 8             [5]   S. Tsutsui, M. Yamamura, T. Higuchi,
        Mutation Probability            0.4                 Multi-parent Recombination in Genetic
                                                            Algorithms with Search Space Boundary
Solutions of both algorithms are shown in table 2.          Extension by Mirroring, Proceedings of the
Table 2. Solution of both of proposed algorithm and         Fifth International Conference on Parallel
Daskin’s GA on Galvao’s problem                             Problem Solving from Nature, 1998, pp.
                                       Daskin's             428-437.
               Galvao     Proposed
  N      P                             Sitation
               Optimal Algorithm
                                       Software
  100 5        5703       5703         5703
  100     10    4426       4440         4491
  100     15    3893       3894         3974
  100     20    3565       3565         3608
  100     25    3291       3296         3312
  100     30    3032       3039         3056
  100     35    2784       2790         2815
  100     40    2542       2545         2557

As table 1 shows, answers obtained by the proposed
algorithm are closer to the optimal solution. In
addition, proposed algorithm performs better than
Daskin’s Sitation software.

5. Conclusion
         In this paper, after reviewing p-median
location problem, we proposed new and efficient
methods to improve GA for p-median location
problem. These methods contain initial population;
crossover operator containing one and two points
crossover randomly, renewing children, and
crossover with three parents. Mutation operator
containing one, two and three points mutation
randomly and renewing children and re-allocation
operator. To show the efficiency of the algorithm,
we solved a numerical example using the proposed
algorithm. The results were compared to those
obtained by genetic algorithm of Daskin’s Sitation
software that shows the superior performance of our
proposed algorithm.

References
  [1]     D. Beasley, D. R. Bull, R. R. Martin, An
          Overview of Genetic Algorithms: Part 1,
          Fundamentals, University Computing, Vol.
          15, No. 2, 1993, pp. 58-69.


                                                                                       389 | P a g e

More Related Content

What's hot

Introduction to genetic programming
Introduction to genetic programmingIntroduction to genetic programming
Introduction to genetic programmingabhishek singh
 
Optimization technique genetic algorithm
Optimization technique genetic algorithmOptimization technique genetic algorithm
Optimization technique genetic algorithmUday Wankar
 
Genetic Algorithm by Example
Genetic Algorithm by ExampleGenetic Algorithm by Example
Genetic Algorithm by ExampleNobal Niraula
 
Robust Immunological Algorithms for High-Dimensional Global Optimization
Robust Immunological Algorithms for High-Dimensional Global OptimizationRobust Immunological Algorithms for High-Dimensional Global Optimization
Robust Immunological Algorithms for High-Dimensional Global OptimizationMario Pavone
 
Data Science - Part XIV - Genetic Algorithms
Data Science - Part XIV - Genetic AlgorithmsData Science - Part XIV - Genetic Algorithms
Data Science - Part XIV - Genetic AlgorithmsDerek Kane
 
Citython presentation
Citython presentationCitython presentation
Citython presentationAnkit Tewari
 
Clustering using GA and Hill-climbing
Clustering using GA and Hill-climbingClustering using GA and Hill-climbing
Clustering using GA and Hill-climbingFatemeh Karimi
 
Genetic programming
Genetic programmingGenetic programming
Genetic programmingOmar Ghazi
 
Introduction to Genetic Algorithm
Introduction to Genetic Algorithm Introduction to Genetic Algorithm
Introduction to Genetic Algorithm ramyaravindran12
 
Semantic Genetic Programming Tutorial
Semantic Genetic Programming TutorialSemantic Genetic Programming Tutorial
Semantic Genetic Programming TutorialAlbertoMoraglio
 
Artificial bee colony (abc)
Artificial bee colony (abc)Artificial bee colony (abc)
Artificial bee colony (abc)quadmemo
 
OFFLINE SIGNATURE VERIFICATION USING SUPPORT LOCAL BINARY PATTERN
OFFLINE SIGNATURE VERIFICATION USING SUPPORT LOCAL BINARY PATTERNOFFLINE SIGNATURE VERIFICATION USING SUPPORT LOCAL BINARY PATTERN
OFFLINE SIGNATURE VERIFICATION USING SUPPORT LOCAL BINARY PATTERNijaia
 
Machine learning for document analysis and understanding
Machine learning for document analysis and understandingMachine learning for document analysis and understanding
Machine learning for document analysis and understandingSeiichi Uchida
 
chapter10
chapter10chapter10
chapter10butest
 

What's hot (16)

Introduction to genetic programming
Introduction to genetic programmingIntroduction to genetic programming
Introduction to genetic programming
 
Genetic Algorithm
Genetic AlgorithmGenetic Algorithm
Genetic Algorithm
 
Optimization technique genetic algorithm
Optimization technique genetic algorithmOptimization technique genetic algorithm
Optimization technique genetic algorithm
 
Genetic Algorithm by Example
Genetic Algorithm by ExampleGenetic Algorithm by Example
Genetic Algorithm by Example
 
Robust Immunological Algorithms for High-Dimensional Global Optimization
Robust Immunological Algorithms for High-Dimensional Global OptimizationRobust Immunological Algorithms for High-Dimensional Global Optimization
Robust Immunological Algorithms for High-Dimensional Global Optimization
 
Data Science - Part XIV - Genetic Algorithms
Data Science - Part XIV - Genetic AlgorithmsData Science - Part XIV - Genetic Algorithms
Data Science - Part XIV - Genetic Algorithms
 
Citython presentation
Citython presentationCitython presentation
Citython presentation
 
Clustering using GA and Hill-climbing
Clustering using GA and Hill-climbingClustering using GA and Hill-climbing
Clustering using GA and Hill-climbing
 
Genetic programming
Genetic programmingGenetic programming
Genetic programming
 
Introduction to Genetic Algorithm
Introduction to Genetic Algorithm Introduction to Genetic Algorithm
Introduction to Genetic Algorithm
 
Semantic Genetic Programming Tutorial
Semantic Genetic Programming TutorialSemantic Genetic Programming Tutorial
Semantic Genetic Programming Tutorial
 
genetic programming
genetic programminggenetic programming
genetic programming
 
Artificial bee colony (abc)
Artificial bee colony (abc)Artificial bee colony (abc)
Artificial bee colony (abc)
 
OFFLINE SIGNATURE VERIFICATION USING SUPPORT LOCAL BINARY PATTERN
OFFLINE SIGNATURE VERIFICATION USING SUPPORT LOCAL BINARY PATTERNOFFLINE SIGNATURE VERIFICATION USING SUPPORT LOCAL BINARY PATTERN
OFFLINE SIGNATURE VERIFICATION USING SUPPORT LOCAL BINARY PATTERN
 
Machine learning for document analysis and understanding
Machine learning for document analysis and understandingMachine learning for document analysis and understanding
Machine learning for document analysis and understanding
 
chapter10
chapter10chapter10
chapter10
 

Viewers also liked

Brico revisión antes de un viaje
Brico revisión antes de un viajeBrico revisión antes de un viaje
Brico revisión antes de un viajelalovillarejo
 
Navidad minera en salave
Navidad minera en salaveNavidad minera en salave
Navidad minera en salaveacebedin
 
Fase planificacion, grupo o
Fase planificacion, grupo oFase planificacion, grupo o
Fase planificacion, grupo oalemaneduardos
 
Presentación1
Presentación1Presentación1
Presentación1Kelly Soto
 
Alimentadores para Peixes
Alimentadores para PeixesAlimentadores para Peixes
Alimentadores para PeixesAlcon Pet
 
Artigo hsm dna inovador christensen
Artigo hsm dna inovador christensenArtigo hsm dna inovador christensen
Artigo hsm dna inovador christensenVictor Degenhardt
 
Apresentação do projeto sabores e saberes tics
Apresentação do projeto sabores e saberes ticsApresentação do projeto sabores e saberes tics
Apresentação do projeto sabores e saberes ticsleneschabbach
 
Revista Evolución en las Tecnologías
Revista Evolución en las TecnologíasRevista Evolución en las Tecnologías
Revista Evolución en las TecnologíasShainne
 

Viewers also liked (20)

Ba31354368
Ba31354368Ba31354368
Ba31354368
 
Mp2521672171
Mp2521672171Mp2521672171
Mp2521672171
 
G31048051
G31048051G31048051
G31048051
 
Hw2615491553
Hw2615491553Hw2615491553
Hw2615491553
 
Q26099103
Q26099103Q26099103
Q26099103
 
Hu2615271543
Hu2615271543Hu2615271543
Hu2615271543
 
Candidats ppp
Candidats pppCandidats ppp
Candidats ppp
 
Brico revisión antes de un viaje
Brico revisión antes de un viajeBrico revisión antes de un viaje
Brico revisión antes de un viaje
 
Navidad minera en salave
Navidad minera en salaveNavidad minera en salave
Navidad minera en salave
 
Muy fuerte
Muy fuerteMuy fuerte
Muy fuerte
 
Fase planificacion, grupo o
Fase planificacion, grupo oFase planificacion, grupo o
Fase planificacion, grupo o
 
Português
PortuguêsPortuguês
Português
 
Presentación1
Presentación1Presentación1
Presentación1
 
Alimentadores para Peixes
Alimentadores para PeixesAlimentadores para Peixes
Alimentadores para Peixes
 
Libro ped 202
Libro ped 202Libro ped 202
Libro ped 202
 
Artigo hsm dna inovador christensen
Artigo hsm dna inovador christensenArtigo hsm dna inovador christensen
Artigo hsm dna inovador christensen
 
Biagy 9
Biagy 9Biagy 9
Biagy 9
 
Apresentação do projeto sabores e saberes tics
Apresentação do projeto sabores e saberes ticsApresentação do projeto sabores e saberes tics
Apresentação do projeto sabores e saberes tics
 
Practica de word
Practica de wordPractica de word
Practica de word
 
Revista Evolución en las Tecnologías
Revista Evolución en las TecnologíasRevista Evolución en las Tecnologías
Revista Evolución en las Tecnologías
 

Similar to Bd31386389

Genetic algorithm
Genetic algorithmGenetic algorithm
Genetic algorithmgarima931
 
Travelling Salesman Problem
Travelling Salesman ProblemTravelling Salesman Problem
Travelling Salesman ProblemShikha Gupta
 
Genetic algorithm guided key generation in wireless communication (gakg)
Genetic algorithm guided key generation in wireless communication (gakg)Genetic algorithm guided key generation in wireless communication (gakg)
Genetic algorithm guided key generation in wireless communication (gakg)IJCI JOURNAL
 
Genetic algorithms
Genetic algorithmsGenetic algorithms
Genetic algorithmsswapnac12
 
Solving non linear programming minimization problem using genetic algorithm
Solving non linear programming minimization problem using genetic algorithmSolving non linear programming minimization problem using genetic algorithm
Solving non linear programming minimization problem using genetic algorithmLahiru Dilshan
 
Genetic algorithm
Genetic algorithmGenetic algorithm
Genetic algorithmRespa Peter
 
CSA 3702 machine learning module 4
CSA 3702 machine learning module 4CSA 3702 machine learning module 4
CSA 3702 machine learning module 4Nandhini S
 
Data Mining for Integration and Verification of Socio-Geographical Trend Stat...
Data Mining for Integration and Verification of Socio-Geographical Trend Stat...Data Mining for Integration and Verification of Socio-Geographical Trend Stat...
Data Mining for Integration and Verification of Socio-Geographical Trend Stat...ijaia
 
Data Mining for Integration and Verification of Socio-Geographical Trend Stat...
Data Mining for Integration and Verification of Socio-Geographical Trend Stat...Data Mining for Integration and Verification of Socio-Geographical Trend Stat...
Data Mining for Integration and Verification of Socio-Geographical Trend Stat...gerogepatton
 
AN IMPROVED ITERATIVE METHOD FOR SOLVING GENERAL SYSTEM OF EQUATIONS VIA GENE...
AN IMPROVED ITERATIVE METHOD FOR SOLVING GENERAL SYSTEM OF EQUATIONS VIA GENE...AN IMPROVED ITERATIVE METHOD FOR SOLVING GENERAL SYSTEM OF EQUATIONS VIA GENE...
AN IMPROVED ITERATIVE METHOD FOR SOLVING GENERAL SYSTEM OF EQUATIONS VIA GENE...Zac Darcy
 
Genetic Algorithm (1).pdf
Genetic Algorithm (1).pdfGenetic Algorithm (1).pdf
Genetic Algorithm (1).pdfAzmiNizar1
 
Evolving Connection Weights for Pattern Storage and Recall in Hopfield Model ...
Evolving Connection Weights for Pattern Storage and Recall in Hopfield Model ...Evolving Connection Weights for Pattern Storage and Recall in Hopfield Model ...
Evolving Connection Weights for Pattern Storage and Recall in Hopfield Model ...ijsc
 
Cost Optimized Design Technique for Pseudo-Random Numbers in Cellular Automata
Cost Optimized Design Technique for Pseudo-Random Numbers in Cellular AutomataCost Optimized Design Technique for Pseudo-Random Numbers in Cellular Automata
Cost Optimized Design Technique for Pseudo-Random Numbers in Cellular Automataijait
 
Adaptive Training of Radial Basis Function Networks Based on Cooperative
Adaptive Training of Radial Basis Function Networks Based on CooperativeAdaptive Training of Radial Basis Function Networks Based on Cooperative
Adaptive Training of Radial Basis Function Networks Based on CooperativeESCOM
 
Application of Genetic Algorithm and Particle Swarm Optimization in Software ...
Application of Genetic Algorithm and Particle Swarm Optimization in Software ...Application of Genetic Algorithm and Particle Swarm Optimization in Software ...
Application of Genetic Algorithm and Particle Swarm Optimization in Software ...IOSR Journals
 
Medical diagnosis classification
Medical diagnosis classificationMedical diagnosis classification
Medical diagnosis classificationcsandit
 

Similar to Bd31386389 (20)

Genetic algorithm
Genetic algorithmGenetic algorithm
Genetic algorithm
 
Travelling Salesman Problem
Travelling Salesman ProblemTravelling Salesman Problem
Travelling Salesman Problem
 
Genetic Algorithm
Genetic AlgorithmGenetic Algorithm
Genetic Algorithm
 
Genetic algorithm guided key generation in wireless communication (gakg)
Genetic algorithm guided key generation in wireless communication (gakg)Genetic algorithm guided key generation in wireless communication (gakg)
Genetic algorithm guided key generation in wireless communication (gakg)
 
Genetic algorithms
Genetic algorithmsGenetic algorithms
Genetic algorithms
 
Solving non linear programming minimization problem using genetic algorithm
Solving non linear programming minimization problem using genetic algorithmSolving non linear programming minimization problem using genetic algorithm
Solving non linear programming minimization problem using genetic algorithm
 
Genetic algorithm
Genetic algorithmGenetic algorithm
Genetic algorithm
 
Enhanced abc algo for tsp
Enhanced abc algo for tspEnhanced abc algo for tsp
Enhanced abc algo for tsp
 
CSA 3702 machine learning module 4
CSA 3702 machine learning module 4CSA 3702 machine learning module 4
CSA 3702 machine learning module 4
 
Data Mining for Integration and Verification of Socio-Geographical Trend Stat...
Data Mining for Integration and Verification of Socio-Geographical Trend Stat...Data Mining for Integration and Verification of Socio-Geographical Trend Stat...
Data Mining for Integration and Verification of Socio-Geographical Trend Stat...
 
Data Mining for Integration and Verification of Socio-Geographical Trend Stat...
Data Mining for Integration and Verification of Socio-Geographical Trend Stat...Data Mining for Integration and Verification of Socio-Geographical Trend Stat...
Data Mining for Integration and Verification of Socio-Geographical Trend Stat...
 
AN IMPROVED ITERATIVE METHOD FOR SOLVING GENERAL SYSTEM OF EQUATIONS VIA GENE...
AN IMPROVED ITERATIVE METHOD FOR SOLVING GENERAL SYSTEM OF EQUATIONS VIA GENE...AN IMPROVED ITERATIVE METHOD FOR SOLVING GENERAL SYSTEM OF EQUATIONS VIA GENE...
AN IMPROVED ITERATIVE METHOD FOR SOLVING GENERAL SYSTEM OF EQUATIONS VIA GENE...
 
Genetic Algorithm (1).pdf
Genetic Algorithm (1).pdfGenetic Algorithm (1).pdf
Genetic Algorithm (1).pdf
 
Cd4201522527
Cd4201522527Cd4201522527
Cd4201522527
 
Evolving Connection Weights for Pattern Storage and Recall in Hopfield Model ...
Evolving Connection Weights for Pattern Storage and Recall in Hopfield Model ...Evolving Connection Weights for Pattern Storage and Recall in Hopfield Model ...
Evolving Connection Weights for Pattern Storage and Recall in Hopfield Model ...
 
Cost Optimized Design Technique for Pseudo-Random Numbers in Cellular Automata
Cost Optimized Design Technique for Pseudo-Random Numbers in Cellular AutomataCost Optimized Design Technique for Pseudo-Random Numbers in Cellular Automata
Cost Optimized Design Technique for Pseudo-Random Numbers in Cellular Automata
 
Adaptive Training of Radial Basis Function Networks Based on Cooperative
Adaptive Training of Radial Basis Function Networks Based on CooperativeAdaptive Training of Radial Basis Function Networks Based on Cooperative
Adaptive Training of Radial Basis Function Networks Based on Cooperative
 
M017127578
M017127578M017127578
M017127578
 
Application of Genetic Algorithm and Particle Swarm Optimization in Software ...
Application of Genetic Algorithm and Particle Swarm Optimization in Software ...Application of Genetic Algorithm and Particle Swarm Optimization in Software ...
Application of Genetic Algorithm and Particle Swarm Optimization in Software ...
 
Medical diagnosis classification
Medical diagnosis classificationMedical diagnosis classification
Medical diagnosis classification
 

Bd31386389

  • 1. M. Mahmoudi, K. Shahanaghi / International Journal of Engineering Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com Vol. 3, Issue 1, January -February 2013, pp.386-389 A Genetic Algorithm For P-Median Location Problem M. Mahmoudi and K. Shahanaghi Department of Industrial Engineering, Iran University of Science and Technology, Tehran 1684613114, Iran. Abstract In this paper, we have proposed a new allocate facilities to demand nodes. The objective is genetic algorithm for p-median location problem. to minimize total transportation (distance is In this regard, prior genetic algorithms were weighted by demand) between demand nodes and designed for p-median location problem by facilities. proposing several methods that are used in The following assumptions are considered in the generation of initial population, crossover and problem: mutation operators, and new operator so- called The capacity of each facility is unbounded. Each re-allocation has been incorporated into the node can be supplied by just one facility, but each algorithm that causes to find the optimal solution facility can service to several demand nodes. To faster. Finally, efficiency of the algorithm has formulate this problem, the following notations are been shown by a numerical example. used: i and j : index of demand nodes; Keywords: Genetic Algorithm, p-Median Location Problem, Multi Parent Crossover, Re-allocation. hi : demand in node i ; d ij : distance between demand nodes i and j ; 1. Introduction n : number of demand nodes; Genetic Algorithm (GA) is a meta-heuristic p : number of facilities that be located; method which is used to obtain a near optimal solution in cases that numerical and mathematical Decision variables: methods are not able to solve the problem in x j : is equal to 1 if facility is located in node j , reasonable time. GA generates a new population else is equal to 0; from the current population by using several y ij : is equal to 1 if facility j is allocated to operators, repeating these methods until a proper solution is obtained, and termination criteria are demand node i , else is equal to 0. met. Each individual of the population, which is Therefore, the p-median location problem is called a chromosome, is a solution for the formulated as integer linear programming (1): [2] investigated problem. Chromosomes are composed n n of genes. Min  h y i 1 j 1 i ij d ij GA has five steps: initial population generation, parent selection, crossover operation, s.t : mutation operation and new population selection. n Initial population is generated randomly. Parents are y j 1 ij  1 i (1) selected randomly or the population is ordered decreasingly by fitness function value and then, y ij  x j i, j parents are selected from top of the list. The n crossover operator is performed by separating x j 1 j p chromosome and replacing the separated parts. In mutation operation, a gene is selected randomly and xi , y ij  0,1 i, j changed [1]. To perform selection operator, generated offspring go to the next stage immediately The first constraint represents that each or offspring along with their parents are ordered demand node can be supplied by one facility. The decreasingly according to fitness function value. second constraint ensures that a node is allocated to Then the new population is selected from above the a demand node when a facility is located in that list to fill the population. node. Third constraint indicates the number of In this paper, we apply GA for solving p-median facilities that must be located. The last constraint location problem and we improve it by applying shows the type of each decision variable. some methods in each stage. 3. GA for solving p-median problem 2. P-median location problem In this section, we introduce the proposed In p-median location problem, we have several genetic algorithm that is used to solve the p-median demand nodes. The aim of the problem is to choose location problem. p nodes to locate facilities in those nodes and 386 | P a g e
  • 2. M. Mahmoudi, K. Shahanaghi / International Journal of Engineering Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com Vol. 3, Issue 1, January -February 2013, pp. 3.1. Introducing chromosomes one point or two points (one of these ways is Number of genes that form chromosomes selected randomly). In one point crossover, one gene of the proposed algorithm is equal to the number of is selected randomly. To perform crossover demand nodes. Each gene is filled by the index of operation, we use this gene and the second part that the node which is selected to locate a facility. These is created by it. In two-point crossover, two random genes show the facility node to which the demand genes are selected in the chromosome. To perform node is allocated. For example, consider 7 demand crossover operation, we use these genes and the nodes. Figure 1 shows a chromosome. middle part that is created by them. Figure 2 shows one point crossover and figure 3 shows two points crossover. Figure 1. A sample chromosome of proposed algorithm Genes of this chromosome indicate a facility location and the demand allocation. This chromosome shows that facilities are located at nodes 2, 4 and 7. Facility node 2 is allocated to nodes 2, 3 and 5, facility node 4 is allocated to nodes 1,4 and 8, and facility node 7 is allocated to nodes 6 and 7. Figure 2. One point crossover 3.2. Initial population To generate initial population, genes are usually generated randomly. In the proposed algorithm, to generate initial population, we randomly choose p nodes from demand nodes and locate facilities at those nodes. Then, each demand node is allocated to the nearest facility node. The generation code of initial population is as follows: function ip = Initial Population (nop, nof) % nop : number of nodes % nof : number of facilities % sof : Set of facilities sof = generate nof random site nodes for facilities through demand nodes; Figure 3. Two points crossover for i=1:nop if i is in sof In the proposed algorithm, to perform ip(i) = i; crossover operator, we use one of the above else methods randomly for each pair of parents [3]. In ip(i) = nearest facility to node i; order to increase the efficiency of the algorithm, end after crossover operator, offspring are renewed. end After crossover operator, the number of located facilities may not be equal to p. Thus, the crossover Using this method, generated chromosomes must be repeated. By renewing offspring, the certainly are feasible and so feasible test is required. number of located facilities will be equal to p. Therefore, generated chromosome is feasible. 3.3. Fitness function Children renewing code is following: The fitness function is calculated using the function nc = new child (c, sof, nof, nofs) objective function of the mathematical model. % c : child % sof : set of facilities 3.4. Parent selection process % nofs : number of facilities in set In parent selection process, parents are % nof : number of facilities selected randomly from population. if nofs > nof for k=1:(nofs-nof) 3.5. Crossover operation select randomly two sites and replace one Crossover operator is used to generate of them with another; children from parents. Based on parent selection end procedure, we choose two chromosomes (parents). elseif nofs < nof We can perform crossover operator in two ways: for k=1:(nof-nofs) 387 | P a g e
  • 3. M. Mahmoudi, K. Shahanaghi / International Journal of Engineering Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com Vol. 3, Issue 1, January -February 2013, pp. select randomly a facility site (fs) and a non-facility site (nfs). Then, set a facility in nfs and change allocations from fs to nfs alternately; end else child c is ok; Figure 5. One point mutation operation end After performing mutation operator, generated In addition, in order to increase children are renewed similar to the crossover effectiveness of the crossover operator, in each operator. Therefore, the generated children are performance of crossover, we run it several times feasible. (number of dates) and the best crossover is introduced as the main crossover operator. 3.7. Re-allocation In large scale problems, crossover operator re-allocation operator which is performed might not show satisfactory efficiency. Therefore, on each individual, without changing facility’s sites, we can perform it on several parents instead of two allocations of demand nodes to facilities are parents [4, 5]. In this paper, results of the crossover changed. Each demand node is allocated to the operator using three parents are six children. Figure nearest facility. Population resulting from this re- 4 shows a two points crossover with three parents. allocation is added to the current population. This operator causes a faster moving to the optimal solution. The last population (population after crossover and mutation operations and population after re-allocation operation) enters the next stage which is the selection of the new population. 3.8. Selection new population process Old and new population (population after crossover and mutation operations and population after re-allocation operation) create a list of individuals. This list is sorted by fitness function decreasingly. Then, we choose certain number of chromosomes from the top of the list. These selected chromosomes are selected as the new population. 3.9. stopping criteria To terminate the algorithm, two criteria must be satisfied: a) Algorithm reaches the maximum number of iterations; Figure 4. Two points crossover with three parents b) The best solution is not changed after a pre- specified number of generations. 3.6. Mutation operation Finally, chromosomes with the best fitness value are In mutation operator, one or more genes of selected as optimal solutions. A numerical example a chromosome are selected and changed regarding is solved in the next section to show the efficiency the mutation rate. In the proposed algorithm, we use of the algorithm. one of these three types of mutation operator, randomly: one point, two points and three points mutation which are performed on one, two and three 4. Numerical example gene respectively. These genes are replaced with To show the efficiency of the proposed one, two and three numbers that are points to one algorithm, we use Galvao’s standard data1. In demand node. As an example, consider that 6th gene Galvao’s problem, there are 100 demand nodes. We must be replaced with a facility which is located at want to locate p facilities to minimize total weighted node number 4. Figure 3 illustrates one point distance (p-median location problem). We solved mutation operator. this problem using our proposed algorithm and a genetic algorithm proposed by Daskin’s Sitation software2 with p=5, 10, 15, 20, 25, 30, 35 and 40. Other parameters of this software are set as table 1. 388 | P a g e
  • 4. M. Mahmoudi, K. Shahanaghi / International Journal of Engineering Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com Vol. 3, Issue 1, January -February 2013, pp. Table 1. Parameters of GA in Daskin’s software [2] S. H. Owen, M. S. Daskin, Strategic Parameter Value facility location: A review, European Journal of Operational Research, Vol. 111, Population Size 50 No. 3, 1998, pp. 423-447. Number to Improve 0 [3] A. Chipperfield, P. Fleming, H. Pohlheim, C. Fonseca, Genetic Algorithm Toolbox Initial Population Size 150 User’s Guide, University of Sheffield, . Max # of Generation 300 [4] A. E. Eiben, P. E. Raué, Zs. Ruttkay, # of Generation w/o Genetic algorithms with multi-parent 300 Improvement recombination, Proceedings of the 3rd Min Compatibility 0.1 Conference on Parallel Problem Solving from Nature, 1994, pp. 78-87. Number of Dates 8 [5] S. Tsutsui, M. Yamamura, T. Higuchi, Mutation Probability 0.4 Multi-parent Recombination in Genetic Algorithms with Search Space Boundary Solutions of both algorithms are shown in table 2. Extension by Mirroring, Proceedings of the Table 2. Solution of both of proposed algorithm and Fifth International Conference on Parallel Daskin’s GA on Galvao’s problem Problem Solving from Nature, 1998, pp. Daskin's 428-437. Galvao Proposed N P Sitation Optimal Algorithm Software 100 5 5703 5703 5703 100 10 4426 4440 4491 100 15 3893 3894 3974 100 20 3565 3565 3608 100 25 3291 3296 3312 100 30 3032 3039 3056 100 35 2784 2790 2815 100 40 2542 2545 2557 As table 1 shows, answers obtained by the proposed algorithm are closer to the optimal solution. In addition, proposed algorithm performs better than Daskin’s Sitation software. 5. Conclusion In this paper, after reviewing p-median location problem, we proposed new and efficient methods to improve GA for p-median location problem. These methods contain initial population; crossover operator containing one and two points crossover randomly, renewing children, and crossover with three parents. Mutation operator containing one, two and three points mutation randomly and renewing children and re-allocation operator. To show the efficiency of the algorithm, we solved a numerical example using the proposed algorithm. The results were compared to those obtained by genetic algorithm of Daskin’s Sitation software that shows the superior performance of our proposed algorithm. References [1] D. Beasley, D. R. Bull, R. R. Martin, An Overview of Genetic Algorithms: Part 1, Fundamentals, University Computing, Vol. 15, No. 2, 1993, pp. 58-69. 389 | P a g e