( )
i
x t
is the position of particle
i
at iteration
t
,whichdefines a potential solution;
( )
i
v t
is the velocity of particle
i
at iteration
t
;
1
c
、
2
c
and
3
c
are three positive constants;
1
r
、
2
r
and
3
r
are three uniform random numbers in therange [0,1];
( 1)
i
p t
−
is the best position (solution) particle
i
has achieved so far;
( 1)
pl
p t
−
is the best position(solution) particles in particle
i
’s group have achieved sofar;
( 1)
gl
p t
−
is the best position (solution) all of the particles have achieved so far.After every
K
iterations, the two groups will conductinformation communication to each other, and then the PSOwill get a new
gl
p
.The operators “+”
、
“-” and “
∗
” in (7) and (8) are definedas follows:
1)
The operator “-”:
The expression
2 1
( )
x x
−
，
where
2
x
and
1
x
are two positions(
n m
×
matrix), represents the difference betweentwo positions and the velocity needed to go from
1
x
to
2
x
. Theresult of
2 1
( )
x x
−
is an “exchange sequence”, thecomponents of the exchange sequence are called “exchangeelements”.For example, let
2
0 11 0 0 11 0 0 0 1 0
x
⎛ ⎞⎟⎜⎟⎜=⎟⎜⎟⎜⎟⎜⎝ ⎠
and
1
0 1 0 1 0 11 0 0 0 0 1
x
⎛ ⎞⎟⎜⎟⎜=⎟⎜⎟⎜⎟⎜⎝ ⎠
, then the result of
2 1
( )
x x
−
will bethe “exchange sequence”: ((1,3),(1,4),(2,5),(2,6)),in which the“exchange element”(1,3) denotes that the value at Column 3Row 1 of
1
x
has to change from 1 to 0 or from 0 to 1.According to (5) and (6), it is certain that there are pairs of 1-to-0 change and 0-to-1 change in each row, so the result of
2 1
( )
x x
−
is defined as “exchange sequence”: ((1,3,4),(2,5,6)),the “exchange element” (1,3,4) denotes that the values atColumn 3 Row 1 and Column 4 Row 1of
1
x
have to beexchanged. It is manipulated as follows:
1
0 1 0 1 0 11 0 0 0 0 1
x
⎛ ⎞⎟⎜⎟⎜=⎟⎜⎟⎜⎟⎜⎝ ⎠
1
0 1 1 0 0 11 0 0 0 0 1
x
⎛ ⎞⎟⎜⎟⎜=⎟⎜⎟⎜⎟⎜⎝ ⎠
(1,3,4)
2)
The operator “+”
The result of
1 2
( )
v v
+
，
where
1
v
and
2
v
are twoexchange sequences, is simply the concatenation of theexchange elements of
1
v
and
2
v
.The result of
1 1
( )
x v
+
，
where
1
x
is the position and
1
v
is the velocity, is sequentially applying each exchangeelement of the velocity to the position.
3)
The operator “
∗
”
The expression “
1
c v
∗
”, which means a coefficient
c
ismultiplied by a velocity
1
v
, indicates the probability of eachexchange element of
1
v
to be applied. For example, if wemultiply the coefficient 0.5 by the velocity ((1, 3, 4), (2, 5, 6)),two random numbers between 0 and 1 are generated for comparison with the value 0.5. If the random number is lower than 0.5, the exchange element is applied. Therefore, if thevalues of the random numbers are 0.4 and 0.7, exchangeelement (1, 3, 4) is applied, whereas exchange element (2, 5, 6)is not. The resulting velocity of the multiplication is therefore((1, 3, 4)), which, as previously stated, represents a list of exchange elements to be applied to a position.V.
A
METAHEURISTIC APPROACH FOR
FAPRoughly, the algorithm works as follows:
•
First, all the particles are initialized, and thisinitializing procedure assigns a set of channels thatsatisfy the CSC and the demand vector
D
to eachcell without considering ACC or CCC. The initialized position
(0)
i
x
of particle i is particle i’s
(0)
i
p
, wecan also obtain
(0)
gl
p
. And then the particles aredivided into two groups, thus
(0)
pl
p
for each groupis obtained;
•
For each iteration, update
i
x
and
i
v
of particle
i
in both groups using (7)
、
(8) and (9), and then we couldupdate
i
p
and
pl
p
for each group as well;
•
Every K iterations, two groups conduct informationcommunication to each other, and then the modifiedPSO will get a new
gl
p
;
•
Once termination conditions satisfied, the algorithmwill be terminated.In our metaheuristic approach, the positions (potentialsolutions) of various particles are evaluated by(3). And the“termination conditions” are “the iteration
t
has reached
max
t
or the value of fitness function of
gl
p
is zero”. Thealgorithm of the metaheuristic approach is described in.
Figure 1