**4. Genetic algorithm for CAP**

54 Simulated Annealing – Single and Multiple Objective Problems

representing the solution of the optimization problem.

**3.2. Simulated quenching applied to the CAP** 

equal *di*.

satisfied.

one used channel with one unused.

adjusting the length of the Markov chains and the cooling speed.

The initial temperature should be chosen high enough in order to allow that most of the proposed transitions pass the Metropolis criterion. Hence, at the start of the algorithm, an explorative search into the configuration space is intended. Later on, the number of accepted transitions decreases as *t*→0. Finally, when *t* ≈ 0 , no more transitions are accepted and the algorithm may stop. As a consequence, the algorithm converges to a final configuration

As (Duque, 1993) shows, when doing this most cooling schedules lean on the homogenous variant and try to establish and maintain equilibrium on each temperature level by

According to this, the main steps required for solving an optimization problem applying SQ involves that, first, the problem must be expressed as a cost function optimization problem by defining the configuration space *S*, the cost function *J*, the neighbourhood structure *N*. Next, a cooling schedule must be chosen, and, finally, the annealing process is performed.

In order to apply SQ to solve the CAP, we have to formulate the CAP as a discrete optimization problem, with *S*, *J* and *N* defined. In section 3.2 we have already presented the problem together with its mathematical characterization: a mobile radio network of *n* radio cells, each of them capable to carry any of the *n* available channels. The channel assignment is given by binary matrix **A**, with *aij*=1 meaning that channel *j* is assigned to cell *i*. Since the traffic demand is modelled by vector **d,** the total number of 1's in row *i* of matrix **A** must

The cost function *J* is then given by Eq. (6) that quantifies the violation of the interference constraints defined in section 3.1. Thus *J*(*s*) reaches its minimum of zero if all constraints are

In this work we will use the same simple strategies for generating the neighbourhood than those used in (Duque, 1993) but with probabilities specifically tuned for our application: (i) *single flip*: just switching on or off channel *i* in cell *j*, −this procedure mimics the mutation operation that will be described later in the GAs context, and (ii) *flip-flop*: replacing at cell *j*

Considering the particularities of the channel allocation problem with hexagonal cells, the same channel should be reused as closed as possible. To approach this goal, the *basic flip-flop* is modified as follows: (ii-1) a cell *j* is chosen at random, (ii-2) from all the channels not used in cell *j*, the channel that is most used within the nearest cells to *j* that may share that channel with cell *j* is switched on, (ii-3) one of the channels previously used at cell *j* is randomly selected and switched off. This *modified flip-flop* is used in conjunction with the basic one.

For the cooling schedule we have implemented of a mixture of different cooling schemes −(Aarts, 1989; Huang, 1986; Romeo, 1989)− with a polynomial-time approximation behaviour. The initial value of the temperature is set to assure a user specified transitions' This section describes a low complexity GA (known as μGA) that is applied to solve the channel assignment problem. Next sections present the proposed method, particularizing the concepts to the CAP for a better understanding.
