# An Evolutionary Algorithm Based on the Four-Color Theorem for Location Area Planning

Authors: Lei Chen; Hai-Lin Liu
Journal: Mathematical Problems in Engineering
 (2013)

---

## Abstract

As an important constituent of wireless network planning, location area planning (LAP) directly affects the stability, security, and performance of wireless network. This work proposes a novel evolutionary algorithm (EA) to solve the LAP problem. The difference between the proposed algorithm and the previous EA is mainly how to encode. The new coding method is inspired by the famous four-color theorem in graph theory. Only four numbers are needed to encode all chromosomes by this method. The encoding and decoding process is fast and easy to implement. What is more, illegal solutions can be processed easily in the process of decoding. The design of effective and efficient genetic operators can also benefit from this coding method. The modified evolutionary algorithm with this coding method is especially effective for LAP problem. The use of the principle of fuzzy clustering in initialization can effectively compress the search space in this new algorithm. The computer simulation has been conducted, and the quality of proposed algorithm is confirmed by comparing the results of proposed algorithm with EA and simulated annealing (SA).


---

## Body

## 1. Introduction

The requirement for wireless communication, both real-time and non-real-time, has grown tremendously recently. As the foundation of mobile communication system, the management of the users’ mobility plays an important role in the design of wireless mobile networks. When the user (which is also called mobile station or mobile terminal) roams in the entire mobile network, the network must transmit data or voice information to the user quickly and accurately. So it is necessary for the network to locate the users by tracing their location. These requirements result in the management of mobile communication. In the management of the users’ mobility in a mobile communication system, LAs mainly have two functions: location inquiry and location update. Location inquiry is performed by the network itself. When the network launches a phone call to a certain user, all the base stations in the LA will page it. In the process, the network tries to locate the user based on its last known location information. In the process of location update, every user updates its location in the network and notifies the network its current location. Whenever the users’ movement of entering a new LA service is checked, the records of home location register (HLR) and visitor location register (VLR) are updated timely. In the GSM network, cells are bounded together to form a series of LAs. It is assumed that the user reports to the system as soon as it crosses the LA boundary. The user’s report is called location update (LU). So when the user enters a new LA, its location is updated, or the location will never be updated. Obviously, the higher the frequency of LA boundary crossing is, the larger the number of LU is. Consequently, frequent LU leads to a high updating cost in location register. It seems to be a good idea to simply increase the size of LA if we want to reduce LU cost. However, it does not mean that only lowering the number of LU can result in a better network performance. The size of the LA is limited by many other factors such as the paging capacity of an mobile switching center (MSC) and the number of available channels. Moreover, there is another constraint in terms of paging cost. Paging cost is caused by the network during a location inquiry when the network tries to locate a user. As the size of LA increases, the cost of paging will also increase because more cells need to be checked to find the called user in a bigger LA. It implies that the size of LA tends to be small. The problem is that LAs with small size will lead to high frequency of boundary crossing. The results are frequent LU and the waste of signal resource. Both paging and LU consume scarce resources such as wireless network bandwidth. Therefore, the size of the LA should not tend to be too small or too big. So a reasonable planning of LA, which aims to minimize users’ LA boundary crossing and guarantee the quality of a signal received on currently allocated channel at the same time, can effectively reduce the total cost of a mobile management system. To build a rational mathematical model, it is not only the number of LAs, carrier frequency, telephone traffic load, paging, and LU frequency but also the assurance of a certain margin for system expansion that we should take comprehensive consideration of. Furthermore, there are many other variables and complicated constraints involved in LAP. It is obvious that the LAP is kind of combination optimization problem with constraints [1]. It is characterized by the tradeoff between the number of LU and the amount of paging signaling which the network system has to deal with. It is an NP-hard problem which has a large solution space [2].LAP is highly valued by network operators. A lot of heuristic algorithms such as artificial neural network (ANN), SA, and EA have been proposed to solve the problem. Lots of research literatures have emerged [1, 3–9]. In paper [3], the authors summarize a lot of literatures about LAP problem. They give the general principle of LAP: try to make the LA border, avoid the area with big telephone traffic, and set LA boundary as vertical or oblique to the roads. Papers [1, 4] discuss LAP optimization problem in a fixed area and evoke some new beneficial ideas. Paper [5] builds an objective function by making quantitative analogies. These analogies between signal cost and paging cost or LU cost have been widely used by lots of subsequent research works in the literature. However, some researches imply that these analogies have their unreasonable characters. The authors in [6, 7] take the viewpoint that they are incomparable. They think that LAP optimization should be translated into an optimization problem of minimizing the times of LA boundary crossing under the condition of satisfying the network’s paging capacity. They use SA and other heuristic algorithms to solve this model. The authors in [8–11] convert the multiobjective optimization into a single-objective optimization by regarding paging capacity as a constraint under some simplified hypotheses. However, this simplification in [8–11] misses some key factors and can only get some specific solutions. What is more, they do not focus on the design of algorithms. They use the existing algorithms to solve their model rather than propose a new effective method. In the literature [12], the authors regard the times of LA boundary crossing in the network as the measure of LU cost. Under some relevant constrains, the authors present an SA based on Cell-to-Switch (CSA) assignment. Paper [13] proposed a cell grouping strategy according to real statistics of traffic flow between these cells. This strategy assigns the cells with high frequency of intercell user movements (high traffic load) to the same LA. The purpose of this strategy is to limit users’ movements into the interior of LAs. The authors in [14, 15] try to solve LAP by combining LU cost with paging cost. This strategy of this kind of converting and grouping is useful and reasonable. It is adopted by many other researchers who study LAP. Although those algorithms open doors for us to solve LAP problem, they may still have some details to be completed when it comes to the practical application. There are some weaknesses along with them. Firstly, the existing coding methods limit the use of those algorithms, and the encoding and decoding methods of those algorithm are relatively complicated and inefficient; secondly, some search algorithms are easy to fall into local optimum, and the solutions of some algorithms rely heavily on the initial value; thirdly, some algorithms cannot produce good solutions in an acceptable time.In this paper, an EA with a new coding method is proposed to solve LAP problem. As we discussed previously, a proper coding method can significantly increase the performance of EA. Although a variety of different coding methods for LAP have been presented in previous literatures, the coding method to solve LAP problem still needs to be explored deeply. The existing coding methods in previous works of literature could not be regarded to really satisfy LAP. The processes of encoding and decoding based on them may be very hard to deal with. In this paper, we creatively design a coding method based on the famous four-color theorem in graph theory. According to this coding method, only four numbers are needed to encode all the solutions of LAP. The encoding and decoding process is fast and easy to implement when corresponding evolutionary algorithm is used to solve LAP problem. This design of the chromosome decoding method can effectively avoid the generation of illegal solutions. Unfortunately, illegal solutions cannot be avoided completely. Based on this new coding method, we design a repair strategy which can easily handle illegal solutions. The corresponding evolutionary algorithm of this new coding method is used to search the good solutions of LAP problem. To avoid the shortcomings of some algorithms described previouly and make the model more practical, we use a LAP model integrated with the road distribution information and traffic flow. In the process of solving this model, the multiple constraints are integrated into a single constrain. A new constrain that cells adjacent but without road connection should belong to different LAs is added. This strategy can effectively compress the solution space and increase search efficiency. A reasonable coding method can benefit not only the process of encoding and decoding but also the design of genetic operators. In this algorithm, fixed length chromosomes with a size equal to the number of cells in the network are used. Owing to the novel coding method, only four numbers are needed to encode all chromosomes. Therefore, the crossover and mutation of the chromosomes can be very convenient. What is more, in the process of initialization, the use of fuzzy cluster method based on the known information can produce solutions with lower LA boundary crossing. It can effectively compress the search space and enhance the practical value of the algorithm.The remainder of this paper is organized as follows. Section2 describes formulation of the problem and the new model proposed in this paper. Section 3 gives the design of evolutionary algorithm in detail and shows the framework of the proposed algorithm. In Section 4, the numerical simulations of the 2 different generated networks are conducted. The experimental results are showed in Tables 3 and 4, and corresponding configurations of the cells are showed in Figures 4, 5, and 6. Finally, we conclude the paper in Section 5.


## 2. The LAP Problem

### 2.1. Problem Statement

In the GSM network, the geographical coverage area is partitioned into cells, while each cell is served by a base station (BS). The essential task of LAP is to group those cells to form a series of LAs. The LU cost and paging cost of the network are all related to the size of the LA. Therefore, the goals of LAP are to lower the user LA boundary crossing and improve the quality of service at the same time. So the division of cells in the network planning should be scientific and reasonable. The study of intelligence optimization algorithms to solve LAP focuses on mathematical model and corresponding algorithm. It is of great significance both in theory study and practical application.To satisfy the goals of LAP, LA should be divided neither too big nor too small. We hope that the paging cost and the LU cost can be minimized simultaneously when we plan a network. But the fact is that those two objectives are conflicting, and the situation in which these two goals both achieve their smallest value at the same time does not exist. We can only get a set of trade-off solutions. In order to achieve a satisfactory result, some proper transformation of the two goals should be made. Regarding that the task is to find a balance between the paging cost and LU cost, we take the paging load as a constraint in this paper. Therefore, the problem of finding trade-off solutions between the two goals is converted to finding a minimum LU cost satisfying corresponding constraints.When solving optimization problem, it is very important to properly model the problem. However, almost all the mathematic models about LAP commonly used previously only consider the theoretical distribution of cells. In other words, the information provided by the real geographic environment such as the location of mountains, rivers, and streets is ignored. In fact, this environmental factors can directly affect the mobility of users in the real situation. Those effects could be decisive in some situations. It is a common sense that the regions with connective roads have a higher frequency of user mobility, while the regions without connection roads have a relatively smaller users’ movements. For example, if there are mountains or rivers in some area, the users’ movements in this area tend to be small. The LU among LAs is generated by the users’ LA boundary crossing. So the geographic information is crucial in LAP. If we know that there is a river or something else between two cells which hinders people’s movements, we should avoid to assign the two cells to the same LA in the process of dividing. Considering the impact of streets and roads, the boundaries of LA should avoid contacting with the road or paralleling the road to reduce the so-called ping-pong effect.


### 2.2. Location Area Planning Model

This model is based on an important hypothesis that the user movement between two cells is realized by roads. It means that the LA boundary has no LU if there are no roads crossing the boundary because of rivers or something else hindering the user movement. Figure1 shows an instance of a GSM network. As shown in Figure 1, it is supposed that there is a river between cell 23 and cell 24. So there is no user movement between the two cells. The result is that no LU is generated in the boundary of the two cells. According to the statistical information of real situation, the road traffic flow in busy hour is relatively stable although the number of users on a road is unable to be confirmed at any time. Understandable, the average road traffic flow can be regarded as the number of boundary crossing while the boundary crossing, can be regarded as a measure of LU. To make the model more realistic, the roads in every network will be classified to different types according to their traffic flow. To mimic the user movements, we suppose that daily user traffic flow in every type of roads subjects to a uniform distribution on different intervals. The other important assumptions for the model are as follows. Each cell has at least one road, and the mobile users on the road have a relatively strong mobility. The user movements in each cell are confined on the road. So the total number of LU generated in a network is equal to the total number of mobile users LA boundary crossing. Based on the hypotheses above, the calculation of LU between different LAs can be simplified as counting traffic flow in various roads across the boundary of LAs. Therefore, the objective of this model is to get a configuration of LAs with the least boundary crossing. It is intuitive that the good solutions of this new model will give a configuration of LA with much better practical applications.Figure 1
The LU between cells in LA.For reasons of simplicity, roads are roughly divided into three different types: main road, street, and alley. The main notations used in the following equations are listed as follows:(i)
N: the total number of cells in a network,(ii)
{1,2,…,N}: the corresponding index set of the cells,(iii)
K: the total number of road types,(iv)
{Rk1,Rk2,…,RkSk}: the road set of type k (k=1,2,…,K),(v)
Sk: the total number of roads of type k,(vi)
{ks1,ks2,…,ksNks}: the index of cells in order passed by a road of type k,(vii)
Nks (Nks≤N): the total number of the cells passed by aroad of type k (k=1,2,…,K, s=1,2,…,Sk).Then, the total number of LAs boundary crossing in busy hour is
(1)NR=∑k=1K‍∑s=1Sk‍∑n=1Nks‍dksnksn+1λksnksn+1,
where ksn and ksn+1 represent the indexes of two different cells. If cell i and cell j are assigned to a same LA, dij=1; otherwise, dij=0. λksnksn+1 represents the traffic flow between cell ksn and cell ksn+1 in a type k road.For the entire network system, the total number of LA boundary crossing in busy hour isNR. Because of the assumption we make, the minimization of NR can achieve the goal of minimizing corresponding cost of LU. As stated above, we use the total number of the user LAs boundary crossing in busy hour as the objective of the model in this paper. The goal of this model is to find a configuration of LA to make NR as small as possible without violating the constraints. So the model can be described as
(2)min∑k=1K‍∑s=1Sk‍∑n=1Nks‍dksnksn+1λksnksn+1,s.t(3)∑j‍xij=1,∀i,(4)∑k‍lik=1,∀i,(5)pi*<PBS,∀i,(6)∑i‍xiqti<TMSC,∀q,(7)∑i‍lihti<TLA,∀h,(8)∑q‍xiqxjq=1,when∑k‍likljk=1,(9)∑ih‍ljh=0,whenλij=0,yij=1.
For the sake of readability of the section, there are notations described as follows:
(2.2)xij={1celliisassignedtoBSCj,0others,lij={1celliisassignedtoLAj,0others,dis={1celliandcellsbelongtodifferentLAs,0others,yij={1celliandcelljisassignedtoBSCj,0others,pi*=pi+∑j‍pj(1-dij).Here,pi* is the total paging load of LAi, and pi represents the total paging load produced by the mobile users in cell i. In this paper, we make every BS corresponds to only one cell, which means that those two conceptions can be substituted mutually. PBS is the paging capacity of a single cell. Paging cost of an LA is determined by the paging cost generated in every cell divided into this LA. Generally speaking, it is independent whether a user is called. So the paging cost generated by each cell is also independent. It is obvious that the cell with more calls contributes more paging cost to LA. The size of LA relies on its paging capacity, while LA paging capacity is decided by the capacity of every single cell divided into this LA.Those constraints are relevant to paging capacity and call traffic capacity. The meanings of (3)–(9) are explained in detail as follows: (3) means that a cell can only belong to exactly one MSC; (4) means that a cell can only be assigned to exactly one LA; (5) means that the paging capacity must not be exceeded; (6) and (7) means that the call traffic capacity of both MSC and LA must not be exceeded. ti represents the call traffic capacity of cell i (i=1,2…,N), while TMSC and TLA represent the traffic capacity of a single MSC service area and LA, respectively; (8) means that the cells in the same LA must belong to the same MSC; (9) means that adjacent cells without boundary crossing should belong to different LAs. Here, λij is the traffic flow between cell i and cell j.


## 2.1. Problem Statement

In the GSM network, the geographical coverage area is partitioned into cells, while each cell is served by a base station (BS). The essential task of LAP is to group those cells to form a series of LAs. The LU cost and paging cost of the network are all related to the size of the LA. Therefore, the goals of LAP are to lower the user LA boundary crossing and improve the quality of service at the same time. So the division of cells in the network planning should be scientific and reasonable. The study of intelligence optimization algorithms to solve LAP focuses on mathematical model and corresponding algorithm. It is of great significance both in theory study and practical application.To satisfy the goals of LAP, LA should be divided neither too big nor too small. We hope that the paging cost and the LU cost can be minimized simultaneously when we plan a network. But the fact is that those two objectives are conflicting, and the situation in which these two goals both achieve their smallest value at the same time does not exist. We can only get a set of trade-off solutions. In order to achieve a satisfactory result, some proper transformation of the two goals should be made. Regarding that the task is to find a balance between the paging cost and LU cost, we take the paging load as a constraint in this paper. Therefore, the problem of finding trade-off solutions between the two goals is converted to finding a minimum LU cost satisfying corresponding constraints.When solving optimization problem, it is very important to properly model the problem. However, almost all the mathematic models about LAP commonly used previously only consider the theoretical distribution of cells. In other words, the information provided by the real geographic environment such as the location of mountains, rivers, and streets is ignored. In fact, this environmental factors can directly affect the mobility of users in the real situation. Those effects could be decisive in some situations. It is a common sense that the regions with connective roads have a higher frequency of user mobility, while the regions without connection roads have a relatively smaller users’ movements. For example, if there are mountains or rivers in some area, the users’ movements in this area tend to be small. The LU among LAs is generated by the users’ LA boundary crossing. So the geographic information is crucial in LAP. If we know that there is a river or something else between two cells which hinders people’s movements, we should avoid to assign the two cells to the same LA in the process of dividing. Considering the impact of streets and roads, the boundaries of LA should avoid contacting with the road or paralleling the road to reduce the so-called ping-pong effect.


## 2.2. Location Area Planning Model

This model is based on an important hypothesis that the user movement between two cells is realized by roads. It means that the LA boundary has no LU if there are no roads crossing the boundary because of rivers or something else hindering the user movement. Figure1 shows an instance of a GSM network. As shown in Figure 1, it is supposed that there is a river between cell 23 and cell 24. So there is no user movement between the two cells. The result is that no LU is generated in the boundary of the two cells. According to the statistical information of real situation, the road traffic flow in busy hour is relatively stable although the number of users on a road is unable to be confirmed at any time. Understandable, the average road traffic flow can be regarded as the number of boundary crossing while the boundary crossing, can be regarded as a measure of LU. To make the model more realistic, the roads in every network will be classified to different types according to their traffic flow. To mimic the user movements, we suppose that daily user traffic flow in every type of roads subjects to a uniform distribution on different intervals. The other important assumptions for the model are as follows. Each cell has at least one road, and the mobile users on the road have a relatively strong mobility. The user movements in each cell are confined on the road. So the total number of LU generated in a network is equal to the total number of mobile users LA boundary crossing. Based on the hypotheses above, the calculation of LU between different LAs can be simplified as counting traffic flow in various roads across the boundary of LAs. Therefore, the objective of this model is to get a configuration of LAs with the least boundary crossing. It is intuitive that the good solutions of this new model will give a configuration of LA with much better practical applications.Figure 1
The LU between cells in LA.For reasons of simplicity, roads are roughly divided into three different types: main road, street, and alley. The main notations used in the following equations are listed as follows:(i)
N: the total number of cells in a network,(ii)
{1,2,…,N}: the corresponding index set of the cells,(iii)
K: the total number of road types,(iv)
{Rk1,Rk2,…,RkSk}: the road set of type k (k=1,2,…,K),(v)
Sk: the total number of roads of type k,(vi)
{ks1,ks2,…,ksNks}: the index of cells in order passed by a road of type k,(vii)
Nks (Nks≤N): the total number of the cells passed by aroad of type k (k=1,2,…,K, s=1,2,…,Sk).Then, the total number of LAs boundary crossing in busy hour is
(1)NR=∑k=1K‍∑s=1Sk‍∑n=1Nks‍dksnksn+1λksnksn+1,
where ksn and ksn+1 represent the indexes of two different cells. If cell i and cell j are assigned to a same LA, dij=1; otherwise, dij=0. λksnksn+1 represents the traffic flow between cell ksn and cell ksn+1 in a type k road.For the entire network system, the total number of LA boundary crossing in busy hour isNR. Because of the assumption we make, the minimization of NR can achieve the goal of minimizing corresponding cost of LU. As stated above, we use the total number of the user LAs boundary crossing in busy hour as the objective of the model in this paper. The goal of this model is to find a configuration of LA to make NR as small as possible without violating the constraints. So the model can be described as
(2)min∑k=1K‍∑s=1Sk‍∑n=1Nks‍dksnksn+1λksnksn+1,s.t(3)∑j‍xij=1,∀i,(4)∑k‍lik=1,∀i,(5)pi*<PBS,∀i,(6)∑i‍xiqti<TMSC,∀q,(7)∑i‍lihti<TLA,∀h,(8)∑q‍xiqxjq=1,when∑k‍likljk=1,(9)∑ih‍ljh=0,whenλij=0,yij=1.
For the sake of readability of the section, there are notations described as follows:
(2.2)xij={1celliisassignedtoBSCj,0others,lij={1celliisassignedtoLAj,0others,dis={1celliandcellsbelongtodifferentLAs,0others,yij={1celliandcelljisassignedtoBSCj,0others,pi*=pi+∑j‍pj(1-dij).Here,pi* is the total paging load of LAi, and pi represents the total paging load produced by the mobile users in cell i. In this paper, we make every BS corresponds to only one cell, which means that those two conceptions can be substituted mutually. PBS is the paging capacity of a single cell. Paging cost of an LA is determined by the paging cost generated in every cell divided into this LA. Generally speaking, it is independent whether a user is called. So the paging cost generated by each cell is also independent. It is obvious that the cell with more calls contributes more paging cost to LA. The size of LA relies on its paging capacity, while LA paging capacity is decided by the capacity of every single cell divided into this LA.Those constraints are relevant to paging capacity and call traffic capacity. The meanings of (3)–(9) are explained in detail as follows: (3) means that a cell can only belong to exactly one MSC; (4) means that a cell can only be assigned to exactly one LA; (5) means that the paging capacity must not be exceeded; (6) and (7) means that the call traffic capacity of both MSC and LA must not be exceeded. ti represents the call traffic capacity of cell i (i=1,2…,N), while TMSC and TLA represent the traffic capacity of a single MSC service area and LA, respectively; (8) means that the cells in the same LA must belong to the same MSC; (9) means that adjacent cells without boundary crossing should belong to different LAs. Here, λij is the traffic flow between cell i and cell j.


## 3. Algorithm Design

### 3.1. Code Design and Determination of LA

In mathematics, the four-color theorem states that, given any separation of a plane into contiguous regions, no more than four colors are needed to color all the regions of the plane so that no two adjacent regions have the same color. Inspired by the four-color theorem, we use four different numbers{1,2,3,4} to encode LA as the chromosome of the EA. Each number represents a color, so four number is enough to represent all LA division. Then, the basic rules are as follows:(a)
cellicorresponds to a digital coding xi,(i=1,2,…,N)xi∈{1,2,3,4};(b)
cells with different codes belong to different LAs. That is, ifxi≠xj, then cell i and cell j belong to different LAs (i=1,2,…,N),(c)
cells with the same code belong to the same LAs. That is, ifxi=xj, then cell i and cell j belong to the same LA (i=1,2,…,N),(d)
if celli and cell j belong to the same LA and cell j and cell k belong to the same LA, then it can be deduced that cell i and cell k must belong to the same LA.According to the previously described coding method and the method to divide LA, the cells can be divided into different LAs using the following steps.Step 1.
Seth=0, and initialize an empty queue Q.Step 2.
Seth=h+1. Begin with an undivided cell i(1≼i≼N) and place cell i in queue Q. Define state of cell i as the cell to be checked.Step 3.
Check all the cells adjacent to celli and not yet having been divided. Put the cells having the same code in the end of queue Q sequentially, and change the state of the cell i to have been checked.Step 4.
If all the elements inQ have been checked, turn to Step 5; or choose the first unchecked cell in Q as the next cell to be checked.Step 5.
Divide all the cells inQ into LA h; if all cells have been divided, stop; or turn to Step 3.


### 3.2. Constraint Violation Adjustment Strategy

If those constraints are handled directly, the implementation of EA can be very difficult. So constraints violation adjustment strategy is adopted in this paper. As we know, every cell must belong to an LA, and LA is divided in the interior of MSC. Therefore, the constraints presented in (4), (5), and (9) are necessarily met. For (6), it can be adjusted as
(11)p=∑i=1H‍max(pi*-PBS,0).
Here, H represents the total number of LA. p=0 means that the constraint is satisfied, while p≠0 means that the constraint is not satisfied.For (7) and (8), it can be adjusted as
(12)t=∑h=1H‍max(∑celli∈LAh‍ti-TLA,0).
If t=0, the constraint is satisfied, or it is not.For (7), due to the fact that MSC paging handling capacity is large enough and the cells which meet the MSC paging capacity are preferentially divided in process of division, LA is divided without considering the MSC paging constraint in this paper.For (8), it can be satisfied by some other strategies in the process of solving the model.


### 3.3. LA Initialization Strategy

The initialization of GA plays an important role in finding the solution effectively. We must make sure that all possible solutions can be generated from the initial population. This paper integrates fuzzy clustering into the initialization. The fuzzy clustering algorithm procedure is very simple and easy to implement. It will be described as follows in detail. At first, fuzzy similarity matrix is determined. Secondly, fuzzy equivalence matrix is calculated. At last, a threshold to the equivalent matrix is set to get equivalence class. The traffic flow between celli and cell j is unitized as similarity coefficient rij. Here, rij is defined as
(13)rij={λijmaxj=1,2,…,Nλiji≠j,1i=j.Considering the different distances between cells, we define an operator∘to calculate fuzzy equivalence matrix. If R1=(aik)m×p, R2=(bkj)p×n, then R1∘R2=(ci,j)m×n, where cij=maxk=1,2,…,p(aik·bkj). R∘Rcan be abbreviated as R2. We can use square method to deal with RNN. Then, we get R→R2→R4→R16→⋯→R2k→⋯. It has been proved that there must be a k∈N satisfying R2k=R2k+1, after a finite number of times operation. Then, the fuzzy equivalence matrix R*=R2k=R2k+1 can be gotten.Every individual in the population represents a configuration of LA, the population is initialized using the following steps.Step 1.
Generate a random sequenceL1N including N elements in {1,2,…,N}, i=1.Step 2.
Find cells which should not be divided into the same LA according to (8). The matrix D2×dis used to store the two sequences of the cells. For an example, cell D1j and cell D2j  cannot be divided into same LA. Here, d is the total member of cells that cannot be divided into same LA.Step 3.
Calculate the equivalence matrixR* based on the similarity matrix R.Step 4.
Ifi>N, stop or compare the elements of matrix R*in row Li column D1j with the elements in row Li column D2j. The element with a smaller value is reset to 0. If no constraints are violated, divide the cells in row Li with a relatively large and not zero value into the same LA as many as possible, i→i+1.According to the steps above, it can be ensured that the cells with large number of boundary crossing are divided into the same LA. What is more, the situation that two cells which should not be assigned to the same LA are divided into the same LA can be avoided.


### 3.4. The Strategy of Updating Population

Evolutionary algorithm is implemented to solve the LAP problem in this paper. Each individual represents a configuration of LA. The population sizeM means that there are total M different configurations of LA. The crossover and mutation of every individual in the population are implemented with the best individual in the current population to generate new individuals (new configuration of LA). In order to give the population a valid guidance and accelerate the convergence of the population evolution, there are two kinds of updates: the best individual (optimal configuration of LA) update and the population update. The two kinds of updates are described as follows:(a)
the best individual update: in every generation of the evolution, every newly generated individual by crossover and mutation is compared with the best individual in current population. First of all, their constraints violation values are compared. The individual with a lower constraints violation value is set as the new best individual. If the constraints violation values of the two are equal, the individuals with a lower LU is set as the new best individual,(b)
the population update: the constraints violation values of every individual both in parent population and offspring population are calculated using the following steps.Step 1.
The violation valuespm and tm of each new individual are calculated according to (11) and (12).Step 2.
SetVm=(pm/pmax)+(tm/tmax); pmax, tmax are the maximal constraint violation values of parent population and offspring population, respectively. Thus, the values Vm of M offspring individuals and M parent individuals can be calculated. If the number of population with the value of V=0 (satisfy all the constraints) is less than M, then select M individuals with a lower value V from the new population and parent population as the population of next generation. If the number of population with the value V=0 is larger than M, select M individuals with a lower value of NR from the individuals with V=0 as the population of next generation.The best individual in current population can maintain the optimal state by means of comparing with every newly generated individual and updating according to the above best individual update method in time. The crossover and mutation with the best individual in the current population can make best use of information kept by the best individual. In the process of dealing with constraints, the normalization method used in this algorithm can evaluate different constrains by giving a qualitative standard. It is a feasible way to avoid the incomparability of different constraints. As a consequence, the new population keeps the high-quality individuals from both parent population and the new population.


### 3.5. Crossover and Mutation

The crossover and mutation operation with the best individual play an important role in exploring the good individuals in solution space. The method of mutation and crossover is described in detail as follows.Generate a random numberr∈(0,1). If r>0.5, an intermediate offspring is generated from xm and x* by single point crossover, or the intermediate offspring is generated by randomized crossover. After crossover, the new individual is generated as follows: mutate the code of intermediate offspring with probability of 0.5 at random, and then randomly choose an adjacent cell for mutation. Make sure that the two cells have the same code after mutation. In this way, a new individual is generated.


### 3.6. The Framework of the Algorithm

The algorithm can be implemented by the steps described as follows.Step 1.
Set the population sizeM, the number of evolution generation gen=0, and the maximum number of evolution generation gmax. Initialize population and encode the initialized population according to the method described in Section 3.Step 2.
Select the best individualx*.Step 3.
Make every individualxm in population cross and mutate with best individual in the population (m=1,2,…,M).
If the newly generated individual violates (9), the code repair process needs to be conducted. This violation can assume that cell i and cell j have the same code but without user crossing the boundary. The violation has three situations:(a)
celli and cell j have the same code with their adjacent cells. Then, we center the two cells and divide the LA into two new LAs. The method is to divide the cells having big traffic flow with cell i into one LA and divide the cells having big traffic flow with cell j into another LA according to fuzzy equivalent matrix;(b)
only one of the two cells supposed as celli has adjacent cells with different code. Check the adjacent cell of cell i, and identify in which LA the cell with the largest flow is located. Then, cell i is divided into the LA;(c)
both the two cells have adjacent cells with different codes. Identify the LAs where the adjacent cells are located, and calculate the sum of the traffic flow between the two cells within these LAs. The cell with larger traffic flow will be retained, while the cell with smaller traffic flow is divided into a new LA using the method described in (b).Step 4.
New individuals are processed according to the coding method in Section3. Update the best individual and population using the update method described in Section 3.Step 5.
Ifgen≼gmax, go to Step 2; otherwise, stop.


## 3.1. Code Design and Determination of LA

In mathematics, the four-color theorem states that, given any separation of a plane into contiguous regions, no more than four colors are needed to color all the regions of the plane so that no two adjacent regions have the same color. Inspired by the four-color theorem, we use four different numbers{1,2,3,4} to encode LA as the chromosome of the EA. Each number represents a color, so four number is enough to represent all LA division. Then, the basic rules are as follows:(a)
cellicorresponds to a digital coding xi,(i=1,2,…,N)xi∈{1,2,3,4};(b)
cells with different codes belong to different LAs. That is, ifxi≠xj, then cell i and cell j belong to different LAs (i=1,2,…,N),(c)
cells with the same code belong to the same LAs. That is, ifxi=xj, then cell i and cell j belong to the same LA (i=1,2,…,N),(d)
if celli and cell j belong to the same LA and cell j and cell k belong to the same LA, then it can be deduced that cell i and cell k must belong to the same LA.According to the previously described coding method and the method to divide LA, the cells can be divided into different LAs using the following steps.Step 1.
Seth=0, and initialize an empty queue Q.Step 2.
Seth=h+1. Begin with an undivided cell i(1≼i≼N) and place cell i in queue Q. Define state of cell i as the cell to be checked.Step 3.
Check all the cells adjacent to celli and not yet having been divided. Put the cells having the same code in the end of queue Q sequentially, and change the state of the cell i to have been checked.Step 4.
If all the elements inQ have been checked, turn to Step 5; or choose the first unchecked cell in Q as the next cell to be checked.Step 5.
Divide all the cells inQ into LA h; if all cells have been divided, stop; or turn to Step 3.


## 3.2. Constraint Violation Adjustment Strategy

If those constraints are handled directly, the implementation of EA can be very difficult. So constraints violation adjustment strategy is adopted in this paper. As we know, every cell must belong to an LA, and LA is divided in the interior of MSC. Therefore, the constraints presented in (4), (5), and (9) are necessarily met. For (6), it can be adjusted as
(11)p=∑i=1H‍max(pi*-PBS,0).
Here, H represents the total number of LA. p=0 means that the constraint is satisfied, while p≠0 means that the constraint is not satisfied.For (7) and (8), it can be adjusted as
(12)t=∑h=1H‍max(∑celli∈LAh‍ti-TLA,0).
If t=0, the constraint is satisfied, or it is not.For (7), due to the fact that MSC paging handling capacity is large enough and the cells which meet the MSC paging capacity are preferentially divided in process of division, LA is divided without considering the MSC paging constraint in this paper.For (8), it can be satisfied by some other strategies in the process of solving the model.


## 3.3. LA Initialization Strategy

The initialization of GA plays an important role in finding the solution effectively. We must make sure that all possible solutions can be generated from the initial population. This paper integrates fuzzy clustering into the initialization. The fuzzy clustering algorithm procedure is very simple and easy to implement. It will be described as follows in detail. At first, fuzzy similarity matrix is determined. Secondly, fuzzy equivalence matrix is calculated. At last, a threshold to the equivalent matrix is set to get equivalence class. The traffic flow between celli and cell j is unitized as similarity coefficient rij. Here, rij is defined as
(13)rij={λijmaxj=1,2,…,Nλiji≠j,1i=j.Considering the different distances between cells, we define an operator∘to calculate fuzzy equivalence matrix. If R1=(aik)m×p, R2=(bkj)p×n, then R1∘R2=(ci,j)m×n, where cij=maxk=1,2,…,p(aik·bkj). R∘Rcan be abbreviated as R2. We can use square method to deal with RNN. Then, we get R→R2→R4→R16→⋯→R2k→⋯. It has been proved that there must be a k∈N satisfying R2k=R2k+1, after a finite number of times operation. Then, the fuzzy equivalence matrix R*=R2k=R2k+1 can be gotten.Every individual in the population represents a configuration of LA, the population is initialized using the following steps.Step 1.
Generate a random sequenceL1N including N elements in {1,2,…,N}, i=1.Step 2.
Find cells which should not be divided into the same LA according to (8). The matrix D2×dis used to store the two sequences of the cells. For an example, cell D1j and cell D2j  cannot be divided into same LA. Here, d is the total member of cells that cannot be divided into same LA.Step 3.
Calculate the equivalence matrixR* based on the similarity matrix R.Step 4.
Ifi>N, stop or compare the elements of matrix R*in row Li column D1j with the elements in row Li column D2j. The element with a smaller value is reset to 0. If no constraints are violated, divide the cells in row Li with a relatively large and not zero value into the same LA as many as possible, i→i+1.According to the steps above, it can be ensured that the cells with large number of boundary crossing are divided into the same LA. What is more, the situation that two cells which should not be assigned to the same LA are divided into the same LA can be avoided.


## 3.4. The Strategy of Updating Population

Evolutionary algorithm is implemented to solve the LAP problem in this paper. Each individual represents a configuration of LA. The population sizeM means that there are total M different configurations of LA. The crossover and mutation of every individual in the population are implemented with the best individual in the current population to generate new individuals (new configuration of LA). In order to give the population a valid guidance and accelerate the convergence of the population evolution, there are two kinds of updates: the best individual (optimal configuration of LA) update and the population update. The two kinds of updates are described as follows:(a)
the best individual update: in every generation of the evolution, every newly generated individual by crossover and mutation is compared with the best individual in current population. First of all, their constraints violation values are compared. The individual with a lower constraints violation value is set as the new best individual. If the constraints violation values of the two are equal, the individuals with a lower LU is set as the new best individual,(b)
the population update: the constraints violation values of every individual both in parent population and offspring population are calculated using the following steps.Step 1.
The violation valuespm and tm of each new individual are calculated according to (11) and (12).Step 2.
SetVm=(pm/pmax)+(tm/tmax); pmax, tmax are the maximal constraint violation values of parent population and offspring population, respectively. Thus, the values Vm of M offspring individuals and M parent individuals can be calculated. If the number of population with the value of V=0 (satisfy all the constraints) is less than M, then select M individuals with a lower value V from the new population and parent population as the population of next generation. If the number of population with the value V=0 is larger than M, select M individuals with a lower value of NR from the individuals with V=0 as the population of next generation.The best individual in current population can maintain the optimal state by means of comparing with every newly generated individual and updating according to the above best individual update method in time. The crossover and mutation with the best individual in the current population can make best use of information kept by the best individual. In the process of dealing with constraints, the normalization method used in this algorithm can evaluate different constrains by giving a qualitative standard. It is a feasible way to avoid the incomparability of different constraints. As a consequence, the new population keeps the high-quality individuals from both parent population and the new population.


## 3.5. Crossover and Mutation

The crossover and mutation operation with the best individual play an important role in exploring the good individuals in solution space. The method of mutation and crossover is described in detail as follows.Generate a random numberr∈(0,1). If r>0.5, an intermediate offspring is generated from xm and x* by single point crossover, or the intermediate offspring is generated by randomized crossover. After crossover, the new individual is generated as follows: mutate the code of intermediate offspring with probability of 0.5 at random, and then randomly choose an adjacent cell for mutation. Make sure that the two cells have the same code after mutation. In this way, a new individual is generated.


## 3.6. The Framework of the Algorithm

The algorithm can be implemented by the steps described as follows.Step 1.
Set the population sizeM, the number of evolution generation gen=0, and the maximum number of evolution generation gmax. Initialize population and encode the initialized population according to the method described in Section 3.Step 2.
Select the best individualx*.Step 3.
Make every individualxm in population cross and mutate with best individual in the population (m=1,2,…,M).
If the newly generated individual violates (9), the code repair process needs to be conducted. This violation can assume that cell i and cell j have the same code but without user crossing the boundary. The violation has three situations:(a)
celli and cell j have the same code with their adjacent cells. Then, we center the two cells and divide the LA into two new LAs. The method is to divide the cells having big traffic flow with cell i into one LA and divide the cells having big traffic flow with cell j into another LA according to fuzzy equivalent matrix;(b)
only one of the two cells supposed as celli has adjacent cells with different code. Check the adjacent cell of cell i, and identify in which LA the cell with the largest flow is located. Then, cell i is divided into the LA;(c)
both the two cells have adjacent cells with different codes. Identify the LAs where the adjacent cells are located, and calculate the sum of the traffic flow between the two cells within these LAs. The cell with larger traffic flow will be retained, while the cell with smaller traffic flow is divided into a new LA using the method described in (b).Step 4.
New individuals are processed according to the coding method in Section3. Update the best individual and population using the update method described in Section 3.Step 5.
Ifgen≼gmax, go to Step 2; otherwise, stop.


## 4. Computational Experiments and Comparison

In this part, two different test networks are generated to examine the validity of the proposed algorithm. Figures2 and 3 show the two networks with total of 25 cells, and 30 cells respectively. The information of roads distribution in the two networks are pre-known. Therefore, the traffic flow of each road is generated according to its type in the two networks to simulate the real situation of a city. The cells crossed by each road are showed in Tables 1 and 2 in detail.Table 1
The roads distribution in5×5 network.
Road type
Number
Traffic flow
Cells crossed by roads
(1) Main road
4
[200, 400]
{11, 12, 17, 22, 23, 24, 25}{21, 22, 18, 14, 15}  {5, 9, 13, 18, 23}  {3, 8, 9, 10}
(2) Street
7
[100, 250]
{2, 3, 4, 5}{3, 8, 13, 18}  {4, 8, 12}  {9, 10, 15, 20, 24}  {17, 13, 14, 10}  {18, 19, 15}  {19, 23}
(3) Alley
4
[50, 150]
{6, 11, 16, 21, 22}{2, 7}  {8, 4, 5}  {11, 12, 13}Table 2
The roads distribution in5×6 network.
Road type
Number
Traffic flow
Cells crossed by roads
(1) Main road
4
[200, 400]
{6, 7, 12, 17, 22, 23, 24, 25}{21, 22, 18, 19, 20}  {5, 9, 14, 18, 23}  {7, 8, 9, 10}
(2) Street
7
[100, 250]
{1, 2, 3, 4}{3, 4, 8, 13, 18}  {3, 8, 12}  {9, 10, 15, 20, 24}  {17, 13, 14, 10}  {18, 19, 15}  {19, 23}
(3) Alley
4
[50, 150]
{6, 11, 16, 21, 22}{1, 2, 3, 7}  {4, 5}  {11, 12, 13}Table 3
EA results of LAP for given5×5 network.
Data set number
The cost of proposed EA
The cost of EA
The cost of SA
1
6058
6302
9934
2
5494
5932
10878
3
6116
6564
9770
4
5736
5928
10326
5
5216
5310
9406
6
5420
5842
10372
7
5434
6278
10686
8
6144
6298
8880
9
4894
7152
10850
10
5028
6242
8226Table 4
EA results of LAP for given5×6 network.
Data set number
The cost of proposed EA
The cost of EA
The cost of SA
1
5994
12176
12606
2
6080
6632
13426
3
7126
7210
12316
4
7384
7469
13564
5
7044
7224
14040
6
6506
7186
12774
7
5830
7698
14972
8
7616
7728
10484
9
7232
7648
12256
10
6226
7934
14892Figure 2
5
×
5network.Figure 3
5
×
6network.Figure 4
The result of LAP for given5×5network (1).Figure 5
The result of LAP for given5×5network (2).Figure 6
The result of LAP for given5×5network (3).We use the EA without four-color coding method and a SA to solve this model as a contrast to identify the validity of the algorithm in this work. To be fair, the initialization, mutation, and crossover of the EA and SA are the same with the proposed EA. The only difference between the proposed EA and two algorithms compared is the coding method.The other basic parameters are supposed as follows:(a)
the paging capacity of every cellPBS is 28/s;(b)
the traffic load capacity of single LA isTLA=1500Erl;(c)
the total paging of cellipi obeys Poisson distribution with parameters λ=6;(d)
the paging load of every cell obeys uniform distribution on the interval[120,350];(e)
the population sizeM=100 and the maximum evolution generations gmax=1000.The simulation program has been developed within the MATLAB programming environment.


### 4.1. Simulation Experiment and Analysis

We generate 10 groups ofpi, ti, and λk randomly according to the experimental hypothesis for each network to simulate the real situation. It is known that finding the optimal answer of a problem by EA is highly dependent on the number of the iterations that the algorithm undergoes. However, it is not convenient to determine the recursion terminal condition. To avoid the difference, the two algorithms are executed until the maximum number of generation is reached. The costs of each simulation for the two given networks are showed in Tables 3 and 4, respectively. For simplicity, only 3 groups of corresponding configurations of the5×5network are showed in Figures 4–6.The results of simulation experiment in Tables3 and 4 show that the novel algorithm outperforms general EA and SA when solving the proposed model. Figures 4–6 show that cells with big traffic flow are assigned to the same LA. It lives up to the general rules established by the previous researchers.


## 4.1. Simulation Experiment and Analysis

We generate 10 groups ofpi, ti, and λk randomly according to the experimental hypothesis for each network to simulate the real situation. It is known that finding the optimal answer of a problem by EA is highly dependent on the number of the iterations that the algorithm undergoes. However, it is not convenient to determine the recursion terminal condition. To avoid the difference, the two algorithms are executed until the maximum number of generation is reached. The costs of each simulation for the two given networks are showed in Tables 3 and 4, respectively. For simplicity, only 3 groups of corresponding configurations of the5×5network are showed in Figures 4–6.The results of simulation experiment in Tables3 and 4 show that the novel algorithm outperforms general EA and SA when solving the proposed model. Figures 4–6 show that cells with big traffic flow are assigned to the same LA. It lives up to the general rules established by the previous researchers.


## 5. Conclusion

In this paper, we propose an evolutionary algorithm with a novel coding method based on four-color theorem to solve an NP-hard problem of LAP. The cell information-based algorithm for LAP problem has proved its ability to significantly reduce signaling costs by computer simulation. In the process of initialization, we use the fuzzy clustering method based on the information of real situation to enhance exploration. The use of the new coding method based on four-color theorem increases the efficiency of the proposed algorithm. The constraints are adjusted during the update process using different strategies. The comparisons of the experimental results show the practical applicability of the algorithm.



---

*Source: 271935-2013-10-29.xml*