Fixed Channel Assignment and Neural Network Algorithm for Channel Assignment Problem in Cellular Radio Networks

The channel-assignment problem is important in mobile telephone communication. Since the usable range of the frequency spectrum is limited, the optimal channel-assignment problem has become increasingly important. The goal of this problem is to find a channel assignment to requested calls with the minimum number of channels subject to interference constraints between channels. This algorithm consists of: 1) the fixed channel assignment stage; 2) the neural network stage. In the first stage, the calls in a cell determining the lower bound on the total number of channels are assigned channels at regular intervals, then the calls in adjacent six cells are assigned channels by a cluster heuristic method sequentially. In the second stage, the calls in the remaining cells are assigned channels by a binary neural network. The performance is verified through solving well-known benchmark problems. Especially for Sivarajan's benchmark problems, my algorithm first achieves the lower bound solutions in all of the 12 instances.


Introduction
Recent demand for mobile telephone service has been growing rapidly.At the same time, the electromagnetic spectrum or frequencies allocated for this purpose are limited.This makes solving the problem of channel assignment more and more critical.The channel assignment problem involves efficiently assigning channels or frequencies to each radio cell in the cellular radio network, while satisfying the electromagnetic compatibility constraints.
The channel assignment problem in this paper is based on a common model.The service area of the system is divided into a large number of hexagonal cells.A cell composes a unit area to provide communication services, where every user is located in one cell.When a user requests a call for this system, a channel or frequency spectrum is assigned there to provide the communication service.This channel assignment must satisfy the constraints to avoid the radio interference between channels.Three types of constraints have usually been considered in channel assignment problem.
1) The Cochannel Constraint (CCC): The same channel cannot be reused in the cells within a certain distance from each other.A set of channel-reuse forbidden cells is called a cluster, where a different channel must be assigned to every call.
2) The Adjacent Channel Constraint (ACC): Adjacent channels cannot be assigned to adjacent cells simultaneously.In other words, any pair of channels in adjacent cells must have a specified distance.Note that the distance indicates the difference in the channel domain.
3) The Cosite Constraint (CSC): Any pair of channels in the same cell must have a specified distance.This distance for CSC is usually larger than that for ACC.
The goal of channel assignment problem is to find a channel assignment to every requested call with the minimum number of channels subject to the above three constraints.
In the simplest form of the channel assignment problem, the cochannel constraint only is considered, and the problem is known to be equivalent to a graph coloring problem.Since the graph coloring problem is known to be NP-complete, the computation complexity of searching for the optimum solution in the channel assignment problem grows exponentially with the problem size.Many researchers have investigated the channel assignment problem in the cellular radio network.In 1982 Gamst and Rave summarized four existing sequential approximation algorithms.The first algorithm has four different versions by combining two different assignment strategies-the frequency-exhaustive assignment and the requirement-exhaustive assignment, and two different ordering strategies-the node-degree order and the node-coloring order.The second algorithm repeatedly assigns frequencies according to the assignment difficulty of requirements.The third algorithm uses the heuristic geometric principle of maximum overlap of denial areas.It states that a frequency should be assigned to cell whose denial area has the maximum overlap with the existing denial area of that frequency.The fourth algorithm is based on the graph theory, where the clique number plays a key role.In 1986 Gamst proposed procedures to generate lower bounds on the number of total frequencies.In 1989 Sivarajan et al. proposed an 0 (n2) time sequential heuristic algorithm, based on the first algorithm introduced by Gamst and Rave.Sivarajan et al. applied their algorithm to several problems, where the values of total frequencies in solutions are shown without any actual assignment results.In 1997 Smith and Palaniswami proposed two neural network algorithms for a different formulation of channel assignment problem, which treats the noninterference constraints as soft constraints in the objective function.In 1998 Ngo and Li proposed a genetic algorithm with a local search method.Unfortunately, none of the existing heuristic algorithms can find the lower bound solutions in all of the 13 instances for Sivarajan's benchmark problems.
In this paper, I propose a two-stage algorithm for channel assignment problem by combining sequential heuristic algorithms into a parallel neural network algorithm.This algorithm consists of fixed channel assignment(FCA) stage and the neural-network assignment stage.The performance is verified through solving the benchmark problems by Sivarajan, Kunz, and Kim.For Sivarajan's and Kunz's problems, my algorithm first achieves the lower bound solutions in all the instances, whereas my algorithm provides the better solution quality than existing algorithms for Kim's problems.

Problem Representation
Channel assignment in this paper follows the problem formulation by Funabiki, Okutani snd Nishikawa.The three constraints for the channel interference in the N-cell system are described by an N  N symmetric compatibility matrix C. The nondiagonal element c ij (i  j) of C represents the minimum distance between a channel assigned to cell i  and a channel to cell j  .The diagonal element C ii of C represents the distance between a pair of channels assigned to cell i  .Thus, CCC is described by C ij =1, ACC is by C ij  2 and CSC is by C ii  1 in C, respectively.A set of requested calls in the N-cell system is given by an N-element demand vector D. The ith element d i of D represents the number of channels for the requested calls in cell  i.Let f ik be the kth channel assigned to cell  i for i=1,…,N and k=1,…,d i .Then, the total number of required channels M can be represented by: Given a pair of a compatibility matrix C and a demand vector D, the goal of channel assignment problem is to find a channel assignment {f ik } with the minimum value of M subject to the interference constraints: (2)

Two -Stage Algorithm for Channel Assignment Problem
This algorithm consists of: 1) the fixed channel assignment stage; 2) the neural-network assignment stage.In the first stage, the calls in a cell, which determines the lower bound on the total number of channels are assigned channels at regular interval, then the calls in adjacent six cells are assigned channels by a cluster heuristic method sequentially.Initially, the cluster region is composed of a cell, which determines the lower bound on the total number of channels and its adjacent cells because the channel assignment to cells with large demand is usually more difficult than the assignment to other cells.Then, every time the whole assignment is failed, the cluster region is expanded by additionally including the cells adjacent to the original region.In the second stage, the calls in the remaining cells are assigned channels by a binary neural network in parallel.when the neural network stage is applied to the remaining cells, the channel assignment result by the fixed channel assignment stage must be fixed in this algorithm.
The overall procedure of the this algorithm is described as follows.
1) Input a compatibility matrix C and a demand vector D.
2) Initialize the total number of channels M by the lower bound or its approximation.
3) Apply the fixed channel assignment stage.
a) Initialize the cluster region by a cell which determines the lower bound of M and its adjacent cells.
b) Regular interval assignment to the cell which determines the lower bound of M. c) Apply the cluster assignment stage to the cluster region while the assignment by b) is fixed.If this assignment is failed, then increment M by one (M=M+1) and go to b).
4) Apply the neural-network assignment stage to the remaining cells while the assignment by b) and c) is fixed.
If this assignment is failed, then expand the cluster region by additionally including its adjacent cells and go to c).If no expandable cell exists, then increment by one and go to b).
Fig. 1 shows a cellular system of 21 cells in Sivarajan's benchmark problems.Each number inside a cell represents the number of requested calls.In this algorithm, the fixed channel assignment stage is applied to the cell with 77 calls and adjacent six cells, because the 77-call cell determines the lower bound of M.Then, the neural-network assignment stage is applied to the other cells.

Fixed Channel Assignment Stage
The fixed channel assignment stage assigns channels to the calls in the cell which determines the lower bound on M, at a regular interval of satisfying CSC in order to minimize the total number of channels M. Let us consider the channel assignment to cell i  , where C ii and d i represent CSC and the number of requested channels for cell i  , respectively.Each of d i calls is assigned a channel at an interval of either C ii or (C ii +1), after the first and last channels are assigned to cell i  .Actually, the first x calls are assigned at the interval of C ii , whereas the rest (d i -x) calls are assigned at the interval of (C ii +1).
The value of x is given by solving the linear equation After channel assignment to the calls in the cell which determines the lower bound on M, then at the cluster assignment stage assigns channels sequentially by using the assignment list, which is made of calls in the cluster region after sorted in the descending order of the assignment difficulty in Box's algorithm.Each call in this list is assigned a channel by the requirement exhaustive strategy proposed by Sivarajan.The procedure of this stage is as follows.
1) Make a list of the calls in the cluster region in the ascending order of the cell index number.
2) Initialize the assignment difficulty of every call in the list by zero and the iteration number t by one.
3) Initialize the channel number j by one.
4) Check whether or not channel #j can be assigned to each unassigned call in the list from the top to the bottom sequentially.If it can be assigned there without interference, then assign channel #j to that call.
5) If every call in the list is assigned a channel, then terminate the procedure as success, else if j<M then increment t by one and go to 4).
6) If the iteration number t reaches its upper limit G max, then terminate the procedure as failure, else increment t by one.
7) Add a randomized real number between zero and one to the assignment difficulty for each unassigned cell in this iteration, clear the assignment result by this stage, remake the list by sorting the calls in the descending order of the assignment difficulty, and go to 3).

Neural-Network Assignment stage
This algorithm is based on a two dimensional neural network model.Consider a channel assignment problem in a four-cell network proposed by Sivarajan.Fig. 2 shows the compatibility matrix C and the demand vector D. Fig. 3(a) shows the neural network representation for solving the channel assignment problem in Fig. 2. The frequency assignment to each cell requires 11 processing elements because there are 11 candidates or frequencies.A total of 44 (=4  11) are required for this problem.Generally, a total of N  M processing elements is required for solving an N-cell-M-frequency problem, where N is the number of radio cells and M is the total number of frequencies.The output of the ijth processing element V ij indicates whether or not frequency #j is assigned to cell #i.The nonzero output (V ij =1) indicates that frequency #j is assigned to cell #i.The zero output (V ij =0) indicates that frequency #j is not assigned to cell #i.Fig. 3(b) shows the solution state of the neural network system, where black squares represent the nonzero output and white squares indicate the zero output.
To satisfy channel requirements, a total of d i processing elements among m processing elements for cell #i must have nonzero output, because a total of d i frequencies are required for cell #i: is zero if and only if d i processing elements for cell #i have nonzero output.In the co-site constraint, if frequency #q within distance c ii from frequency #j is assigned to cell #i, frequency #j must not be assigned to cell #i: is nonzero if the assignment of frequency #j to cell #i violates the co-site constraint.
In the cochannel constraint and the adjacent channel constraint, if frequency #q within distance C ip from frequency #j is assigned to cell #p for c ip >0 and p # i, frequency #j must not be assigned to cell #i: is nonzero if the assignment of frequency #j to cell #i violates the cochannel constraint and/or the adjacent channelconstraint.
The motion equation of the ijth processing element in the N-cell-M-frequency problem is given by: The first term (A-term) forces d i processing elements among M candidates for cell #i to have nonzero output, where the corresponding frequencies are assigned to cell #i.The second term (B-term) discourages the ijth processing element from having nonzero output if the assignment of frequency #j to cell #i violates the three constraints mentioned previously.A and B are constant coefficients (A = B = 1).The energy function E for the channel assignment problem is given by considering (8):

Heuristics for the Global Minimum Convergence
To increase the frequency of the global minimum convergence, the following four heuristics have been introduced empirically.
1) The A-term saturation heuristic: the following function is used for the A-term in order to confine the A-term between two values: where f(x) is A-max if x > A_max, A-min if x < A_min, and x otherwise.A_max and A_min are the constant upper and lower bounds, respectively of the A-term (A_max = 5, A_min = 5).
2) The omega function heuristic: two forms of the B-term are used periodically in the motion equation: where t is the number of iteration steps, and T and w are constant parameters (T = 10, w = 5).
3) The hill climbing heuristic: the following term is added to the motion equation: where h(x) is 1 if x < 0, and 0 if 0  x .C is randomly chosen among 3, 4, and 5 in each iteration step to avoid oscillation due to digital simulation, where otherwise, two or more processing elements continue to have the same states.The C-term encourages the ijth processing element to have nonzero output if fewer than d i processing elements for cell #i have nonzero output and V ij =0.
4) The input saturation heuristic: the input of the processing element is confined between two values: where U max and U min are the constant upper and lower bounds, respectively, of the input value U min (U max =30, U min =30).

Parallel Algorithm
The following procedure describes the proposed parallel algorithm based on the motion equation in ( 4) with the four heuristics, where the first-order Euler method is used.The data set of coefficients and parameters are determined empirically.
3) The channel assignment result by the fixed channel assignment stage must be fixed when the neural network stage is applied to the remaining cells.To represent this constraint correctly, all the fixed channel assignment must be reflected into the corresponding neuron outputs: 4) Compute the change of input  U ij (t) based on the motion equation in ( 8): 5) Update input U ij (t+1) based on the first-order Euler method: 6) Use the input saturation heuristic in (13): 7) Update output V ij (t + 1) based on the hysteresis Mc-Culloch-Pitts neuron model: 8) Increment the number of iteration steps by one.9) Check the termination condition: if all the constraints are resolved, then terminate this procedure as success, else if then terminate it as failure, else go to 4).

4) Simulation and Discussion
For the comparison, two heuristic algorithms by Sivarajan and by Box have also been implemented.The benchmark problems by Sivarajan, Kunz and Kim are used as simulated instances in this paper, where specifications are summarized in Tables I and II.Note that instance #12 in Table I is the Kunz's problem.In the compatibility matrix of these tables, "N c " is the size for CCC, "c ij " is the minimum channel distance between any pair of cells in the same cluster except for adjacent cells for CCC, " acc" is the minimum channel distance between adjacent cells for ACC, and "c ii " is the minimum distance within the same cell for CSC.In the demand vector, "case 1" and "case 2" represent the corresponding channel requirements in Sivarajan's problem.''U(x,y)'' represents a set of uniformly randomized integers between and , and "total call" is the total number of requested channels in each simulated instance.
In the fixed channel assignment stage the cell with 77 calls in instances #1-8 and to the cell with 45 calls in instances #11,12 in Sivarajan's problems are assigned channels at regular intervals, because they determine the lower bound on the total number of channels.In the cluster assignment stage, the iteration limit is set 100 and a maximum of ten trials using different random numbers is repeated for each cluster region until the assignment succeeds.In the neural-network assignment stage, a maximum of ten trials using different initial neuron states is repeated for each assignment result by the FCA stage until the assignment succeeds.
A total of ten runs using different random numbers is executed by my algorithm and Box's algorithm for each instance, whereas one run is executed by each of Sivarajan's eight algorithms.Table III shows the lower bound in Sivarajan's and Kunz's problems, best and average solutions found by this algorithm.Here, we need to correct the lower bound on M in instances #1 and #2.Consider the channel assignment to the requests in the seven-cell cluster composed of the 77-call cell and its adjacent six cells.In this cluster, a different channel must be assigned to every call to satisfy CCC.When a channel is assigned to each call in the 77-call cell, this channel and its adjacent channels cannot be reused to the other cells in this cluster because of acc=2.Thus, the 77-call cell must occupy 229(=2  2+3  (77-2)) channels exclusively in this cluster.The remaining six cells need at least 198(=25+8+52+28+57+28) different channels.Therefore, the channel assignment for this cluster requires at least 427(=229+198) channels.
Table III indicates that my algorithm first achieves the lower bound solutions in all of the benchmark instances, whereas the existing algorithms cannot find them in instances #1, #2, #3, #9, and #10.One run is executed by the FCA and neural network algorithm, Sivarajan's eight algorithms, and Box's algorithm for each of nine instances in Kim's benchmark problems.Table IV compares the solutions by the FCA and neural network on the total numbers of required channels, where my algorithm can find the best solutions in all of the nine instances.Table V summarizes the simulation results, and shows the average number of iteration steps required to converge to the optimum solution and the convergence rate.Fig. 4 shows the distribution of the frequency for each cell and fig. 5 shows the number of iteration step required to convergence to solution in instance #3.

Conclusion
This paper presents a FCA and neural network algorithm of combining sequential heuristic methods into a parallel neural network for the NP-complete channel assignment problem in cellular mobile communication systems.This algorithm consists of the fixed channel assignment stage and the neural-network assignment stage to seek the near-optimum solution.The performance is verified through solving the benchmark problems by Sivarajan, Kunz, and Kim.Especially for all the instances in Sivarajan's problems, my algorithm first achieves the lower bound solutions.For Kim's problems, my algorithm provides the better solution quality than existing algorithms.

Figure 3 .Figure 5 .
Figure 3. Neural network representation for the channel assignment problem in Fig. 2. (a) .4 x 11 processing elements for the channel assignment problem in Fig. 2. (b) .The convergence of 4 x 11 processing elements to a solution.

Figure 4 .
Figure 4. Distribution of the frequency for each cell with 533 frequency in instance #3.

Table 3 .
Simulation Results For Sivarajan'S And Kunz'S Benchmark Problems