A Fuzzy Particle Swarm Optimization Algorithm for Computer ...

0 downloads 0 Views 301KB Size Report
This paper presents a multi-objective particle swarm optimization algorithm to efficiently solve the DLAN. Salman A. Khan. Computer Engineering Department ...
Noname manuscript No. (will be inserted by the editor)

A Fuzzy Particle Swarm Optimization Algorithm for Computer Communication Network Topology Design Salman A. Khan · Andries P. Engelbrecht

Received: date / Accepted: date

Abstract Particle swarm optimization (PSO) is a pow-

topology design problem. Fuzzy logic is incorporated in

erful optimization technique that has been applied to

the PSO algorithm to handle the multi-objective na-

solve a number of complex optimization problems. One

ture of the problem. Specifically, a recently proposed

such optimization problem is topology design of dis-

fuzzy aggregation operator, namely the unified And-Or

tributed local area networks (DLANs). The problem

operator [30], is used to aggregate the objectives. The

is defined as a multi-objective optimization problem

proposed fuzzy PSO (FPSO) algorithm is empirically

requiring simultaneous optimization of monetary cost,

evaluated through a preliminary sensitivity analysis of

average network delay, hop count between communi-

the PSO parameters. FPSO is also compared with fuzzy

cating nodes, and reliability under a set of constraints.

simulated annealing and fuzzy ant colony optimization

This paper presents a multi-objective particle swarm

algorithms. Results suggest that the fuzzy PSO is a

optimization algorithm to efficiently solve the DLAN

suitable algorithm for solving the DLAN topology de-

Salman A. Khan

sign problem.

Computer Engineering Department, King Fahd University of Petroleum & Minerals, Dhahran 31261, Saudi Arabia E-mail: [email protected] Andries P. Engelbrecht

Keywords Particle swarm optimization · Fuzzy Department of Computer Science, University of Pretoria, Pretoria 0002, South Africa

logic · Multi-objective optimization · Unified And-Or

E-mail: [email protected]

operator · Network topology design

2

1 Introduction

search techniques have been frequently used to optimize network topology design problems [18, 29, 34, 46,

Particle swarm optimization (PSO) is an optimization

59]. However, these techniques generally do not perform

heuristic proposed by Kennedy and Eberhart [11][12].

well enough when multiple objectives need to be opti-

The PSO algorithm is based on the sociological behav-

mized and/or constraints are present [29, 60–62]. Hence,

ior associated with bird flocking [12]. The algorithm

iterative heuristics, such as evolutionary algorithms or

makes use of cognitive and social information among

swarm intelligence techniques seem to be appropriate

the individuals (particles) to find an optimal solution

approaches to solve the problem. Iterative heuristics

to an optimization problem. The algorithm can be used

have a tendency to escape a local optimum and can

to solve a variety of complex optimization problems, in

often find a global optimum solution in a reasonable

domains of both continuous and binary problems [13].

amount of computational time.

The popularity of PSO is growing with applications in diverse fields of engineering [53, 55, 58], medicine [1, 27, 56, 65], and social sciences [42]. Among many complex optimization problems, com-

The design of distributed local area networks (DLANs), such as campus networks or enterprize networks, is a complex multi-objective optimization problem. This problem requires simultaneous optimization of a number of

puter communication network topology design (CCNTD)

design objectives, such as network delay, monetary cost,

is one problem that has received considerable atten-

hop count between communicating pairs, and network

tion during the past three decades. Significant research

reliability, subject to a set of design constraints. This

has been done to address many variants of the net-

optimization problem tends to have a solution space

work topology design (NTD) problem, and a number

that grows exponentially with the problem size. At-

of techniques have been proposed to find efficient so-

tempts have been made earlier to solve this specific

lutions to these problems [10, 15, 20, 21, 29, 35]. A CC-

problem with optimization techniques such as simu-

NTD problem requires an objective or objectives to be

lated evolution (SimE) [30], ant colony optimization

optimized. Presence of constraints further amplifies the

(ACO) [32], and simulated annealing (SA) [31]. How-

complexity of such problems. However, many of these

ever, application of PSO to the DLAN topology design

approaches have not proven to be fully able to address

problem has not been reported in the literature. There

the problem under consideration [18, 29, 34, 46]. Local

are somewhat simpler versions of the DLAN topology

3

design problems which are NP-hard [15, 17, 20], and hence

cus of this paper is not to compare the variants and

the DLAN topology design problem can be classified as

alterations proposed for PSO by many researchers, but

an NP-hard problem.

rather the development of a fuzzy logic based multi-

Several methods for handling the multi-objective as-

objective PSO, and a preliminary analysis of the fuzzy

pects have been reported in the literature. Some of the

PSO with respect to the UAO operator. The rest of

popular methods [39] are the weighted sum method,

the paper is organized as follows: Section 2 provides

ε-constraint method, lexicographic ordering, goal pro-

the necessary background on PSO. Section 3 provides

gramming, the goal attainment method, and fuzzy logic

a short introduction to fuzzy logic and the unified And-

[64]. Fuzzy logic has received notable attention for multi-

Or operator. A brief description of the DLAN topology

objective optimization (MOO) problems, with appli-

design problem is given in Section 4. Section 5 proposes

cations in various areas. Among various fuzzy oper-

a fuzzy PSO (FPSO) algorithm. Section 6 provides em-

ators, the ordered weighted averaging (OWA) opera-

pirical results and a discussion of the performance of

tor, proposed by Yager [57], has been frequently used

FPSO with respect to the UAO operator. A compar-

to aggregate multiple objectives into a single objective

ison with fuzzy simulated annealing (FSA) and fuzzy

function. Recently, the Unified And-Or (UAO) operator

ant colony (FACO) algorithms is also given in Section

[30], which exhibits mathematical properties similar to

6. Conclusions are provided in Section 7.

that of OWA, has been proposed to aggregate multiple objectives into a single objective function.

2 Particle Swarm Optimization

Most applications of PSO are for single-objective

In PSO, a population of potential solutions to the prob-

optimization problems. In the multi-objective domain,

lem under consideration is used to explore the search

a number of PSO based approaches have been proposed

space [44]. Each individual of the population is called

(as discussed in Section 2.2), and there is still scope

a ‘particle’. A particle has an adaptable velocity (step

for further exploration. The development of a multi-

size), according to which the particle moves in the search

objective PSO for the DLAN topology design problem

space. Moreover, each particle has a memory, remem-

is one step towards the assessment of the performance

bering the best position it has ever visited in the search

of PSO in multi-objective optimization, with applica-

space [14]. This best position is termed as the personal

tion to a real-world design problem. Therefore, the fo-

best, or pbest. The fitness value associated with the

4

pbest position is also recorded. Another “best value” that is tracked by the global version of the particle vi,j (t + 1) = wvi,j (t) + c1 r1,j (t)[yi,j (t) − xi,j (t)] + swarm optimizer is the overall best value, and the associated best location, obtained so far by any particle in

c2 r2,j (t)[ˆ yj (t) − xi,j (t)]

(1)

the population. This location is called the gbest partiwhere w is the inertia weight, c1 and c2 are acceleration cle. Thus, a particle’s movement is an aggregated ‘accelcoefficients, and r1,j , r2,j ∼ U (0, 1) are two indepeneration’ towards its best previously visited position (the dent random numbers sampled from a uniform districognitive component) and towards the best individual bution between 0 and 1. These random numbers induce (the social component) of a topological neighborhood. a stochastic component in the search process. The particle swarm optimization algorithm consists The position xi of a particle i is updated using of, at each time step, changing the velocity (accelerating) of each particle toward its pbest and gbest locations in the global version of the PSO. Acceleration

xi (t + 1) = xi (t) + vi (t + 1)

(2)

is weighted by a random term, with separate random

Figure 1 lists pseudo-code of the basic PSO. There

numbers being generated for acceleration toward pbest

are many main variations of this PSO algorithm [16].

and gbest locations.

Based on the neighborhood topology used, two early

Each particle in the swarm maintains the following information:

versions of PSO have been developed [44]: the global best (gbest) PSO, and the local best (lbest) PSO. The rest of this section discusses PSO parameters

– xi : the current position of the particle; and MOO approaches using PSO. – vi : the current velocity of the particle; – yi : the personal best position of the particle; and – y ˆi : the neighborhood best position of the particle.

2.1 PSO Parameters

The standard PSO algorithm consists of several paramThe velocity update step is specified separately for each dimension, j ∈ 1...N , where vi,j represents the j th dimension of the velocity vector associated with the ith particle. The velocity of particle i is updated using

eters that have an influence on the performance of the algorithm [13]. These include

– Dimensionality of the particles

5

test functions than on versions of the same functions

Algorithm PSO(); For each particle i ∈ 1, ..., s do Randomly initialize xi

in fewer dimensions. – Number of particles (i.e. swarm size)

Initialize vi to zero

Swarm size is another important factor in PSO. InSet yi = xi end For

creasing population size generally causes an increase

Repeat

in computational complexity per iteration, but fa-

For each particle i ∈ 1, ..., s do

vors higher diversity, and therefore, may take less

Evaluate the fitness of particle i

iterations to converge [13]. Generally, there is an Update yi Update y ˆi

inverse relationship between the size of the popula-

For each dimension j ∈ 1, ..., N do

tion and the number of iterations required to find

Apply velocity update using Equation (1)

the optimum of an objective function [13].

end For

– Inertia weight, w Apply position update using Equation (2) end For Until some convergence criterion is satisfied end Algorithm

The inertia weight w is a modification to the standard PSO, proposed by Shi and Eberhart [50], to control the impact of the previous history of veloc-

Fig. 1 Pseudo-code of the basic particle swarm optimization al-

ities on the current velocity, thus influencing the

gorithm

trade-off between global (wide-ranging) exploration and local (nearby) exploitation abilities of the par-

Usually, dimensionality is considered an important parameter in determining the hardness of a problem. PSO has been shown to perform very well on a wide variety of hard, high-dimensional benchmark functions such as the De Jong suite and other hard problems including Schaffer’s f6, Griewank, Ackley, Rastrigin, and Rosenbrock functions [3, 12, 50]. Angeline [13] found that PSO actually performs relatively better on higher-dimensional versions of some

ticles. A larger value of w facilitates exploration (searching new areas), thus increasing diversity. A smaller value of w tends to facilitate local exploitation to fine-tune the current search area. – Acceleration coefficients c1 and c2 The acceleration coefficients, c1 and c2 , associated with the cognitive and social components play an important role in the convergence ability of the PSO. Varying these parameters has the effect of varying

6

the strength of the pull towards the two bests (i.e.

a maximum value, Vmax , on it [14]. Vmax restricts

personal best and neighborhood best). Values of c1

the step size, i.e. the amount by which velocity is up-

= c2 = 0 mean that both the cognitive and social

dated. This upper limit on step sizes prevents indi-

components are absent, and particles keep moving

viduals from moving too rapidly from one region of

at their current speed until they hit a boundary of

the problem space to another, overshooting good re-

the search space (assuming no inertia) [16]. With

gions of the search space. Vmax proved to be crucial,

c1 > 0 and c2 = 0, each particle searches for the best

because large values could result in particles moving

position in its neighborhood, and replaces the cur-

past good solutions, while small values could result

rent best position if the new position is better [16].

in insufficient exploration of the search space due

However, with c2 > 0 and c1 = 0, the entire swarm is

to too small step sizes. The value assigned to Vmax

attracted to a single point, y ˆ. Furthermore, having

is not arbitrary, and should be optimized for each

c1 >> c2 causes each particle to be attracted to its

problem. It is recommended to set Vmax to a value

own personal best position to a very high extent, re-

that is determined by the domain of the variables

sulting in excessive wandering. On the other hand,

[13].

c2 >> c1 results in particles being more strongly attracted to the global best position, thus causing

2.2 PSO and Multi-objective Optimization

particles to rush prematurely towards optima [16]. Van den Bergh [54] showed that the relation between acceleration coefficients and inertia weight should satisfy the following equation to have guar-

PSO was also adapted to solve MOO problems. ReyesSierra and Coello-Coello [49] provided a detailed classification of current MOO approaches for PSO, as discussed below:

anteed convergence:

1. Aggregating approaches c1 + c 2 −1 M axH

(13)

µc (x ) =

    1    

M axC−Cost M axC−M inC

      0

if Cost ≤ M inC Finally, the membership function for reliability, µr , if M inC < Cost ≤ M axC can be determined by finding the maximum (MaxR) if Cost > M axC (11)

and the minimum (MinR) bounds for the reliability. The membership value for reliability is determined as

where the term Cost represents the cost of the solution, ‘MinC’ represents the lower limit of cost and ‘MaxC’ represents the maximum limit of cost. The membership function of delay, µd , can be defined in a similar

µr (x ) =

way. The two extreme values of delay are ‘MinD’ and

    1    

if Rel ≥ M axR

M axR−Rel M axR−M inR if M inR < Rel ≤ M axR       0 if Rel < M inR

(14)

‘MaxD’ for minimum and maximum delay respectively. The membership value of delay is determined as

Once the individual membership values are found using the above functions, Rule 1 can be mathematically represented using the UAO operator as:

µd (x ) =

    1    

if Delay ≤ M inD

M axD−Delay M axD−M inD if M inD < Delay ≤ M axD       0 if Delay > M axD

(12)

µ(x)

I?

=

Q4

i=1

µi (x) + ν max{µ1 (x), µ2 (x), µ3 (x), µ4 (x)} ν + max{µ1 (x), µ2 (x), µ3 (x), µ4 (x)} (15)

13

In Equation (15), µ(x)I? represents the membership

guidance in selection of links is provided by three pa-

value of solution x in the fuzzy set good topology using

rameters: the particle’s current position, its own best

the UAO operator. Also, µi for i = {1,2,3,4} represents

position so far, and the best position in relation to

the membership values of solution x in the fuzzy sets

the particle’s neighborhood. Each step of the proposed

low cost, low delay, low hops, and high reliability re-

FPSO is discussed next.

spectively. The solution which results in the maximum value for Equation (15) is reported as the best solution found. However, note that the algorithm generates Pareto optimal solutions (i.e., all best solutions on the Pareto front having equal membership values), and any one of these solutions can be taken as the best solution. A detailed description on formation of membership functions for individual objectives can be found in [30, 31].

5.1 Particle Position and Velocity Representation

For the original PSO, particle position as well as velocity representation were in the real number domain, that is, all xij ∈