# A Network Traffic Prediction Model Based on Quantum-Behaved Particle Swarm Optimization Algorithm and Fuzzy Wavelet Neural Network

Authors: Kun Zhang; Zhao Hu; Xiao-Ting Gan; Jian-Bo Fang
Journal: Discrete Dynamics in Nature and Society
 (2016)

---

## Abstract

Due to the fact that the fluctuation of network traffic is affected by various factors, accurate prediction of network traffic is regarded as a challenging task of the time series prediction process. For this purpose, a novel prediction method of network traffic based on QPSO algorithm and fuzzy wavelet neural network is proposed in this paper. Firstly, quantum-behaved particle swarm optimization (QPSO) was introduced. Then, the structure and operation algorithms of WFNN are presented. The parameters of fuzzy wavelet neural network were optimized by QPSO algorithm. Finally, the QPSO-FWNN could be used in prediction of network traffic simulation successfully and evaluate the performance of different prediction models such as BP neural network, RBF neural network, fuzzy neural network, and FWNN-GA neural network. Simulation results show that QPSO-FWNN has a better precision and stability in calculation. At the same time, the QPSO-FWNN also has better generalization ability, and it has a broad prospect on application.


---

## Body

## 1. Introduction

With the rapid development of computer network technology, network applications have infiltrated every corner of human society and play an important role in various industries and situations. Since the network topology structure is gradually complicated, the problem of network’s emergencies and congestion are more and more serious. Through monitoring and accuracy prediction of network traffic, it can prevent network congestion and can effectively improve the utilization rate of the network [1].In general, the network traffic data is a kind of time series data and the problem of network traffic prediction is to forecast future network traffic rate variations as precisely as possible based on the measured history. The traditional prediction model, such as Markov model [2], ARMA (Autoregressive Moving Average) model [3], ARIMA (Autoregressive Integrated Moving Average) model [4], and FARIMA (Fractional Autoregressive Integrated Moving Average) [5] model, has been proposed. As the network traffic is affected by many factors, the network traffic time series show quite obvious multiscale, long-range dependence, and nonline characteristic. The methods mentioned above have the weakness of low-level efficiency [6].An artificial neural network (ANN) is an analysis paradigm that is roughly modeled after the massively parallel structure of the brain. Artificial neural networks can be thought of as “black box” devices that accept inputs and produce outputs and are able to give better performance in dealing with the nonlinear relationships between the output and the input theoretically [7]. Although artificial neural networks have been successfully used for modeling complex nonlinear systems and predicting signals for a wide range of engineering applications, artificial neural networks (ANNs) have limited ability to characterize local features, such as discontinuities in curvature, jumps in value or other edges [8]. These local features, which are located in time and/or frequency, typically embody important process-critical information such as aberrant process modes or faults.The fuzzy neural networks (FNN) are the hybrid systems which combine both advantages of the fuzzy systems and artificial neural networks. The FNN possesses the merits of the low-level learning and computational power of neural networks, and the high-level human knowledge representation and thinking of fuzzy theory [9]. A fuzzy wavelet neural network (FWNN) is a new network structure that combines wavelet theory with fuzzy logic and NNs. The synthesis of a fuzzy wavelet neural inference system includes the determination of the optimal definitions of the premise and the consequent part of fuzzy IF-THEN rules [10]. However, many fuzzy neural network models, including FWNN, have common problems derived from their fundamental algorithm [11]. For example, the design process for FNN and FWNN combined tapped delays with the backpropagation (BP) algorithm to solve the dynamic mapping problems [12]. Unfortunately, the BP training algorithm has some inherent defects [13, 14], such as low learning speed, existence of local minima, and difficulty in choosing the proper size of network to suit a given problem. Thus the systems which employ basic fuzzy inference theory make the degree of each rule extremely small and often make it underflow when the dimension of the task is large. In such a situation, the learning and inference cannot be carried out correctly.As a variant of PSO, quantum-behaved particle swarm optimization (QPSO) is a novel optimization algorithm inspired by the fundamental theory of particle swarm and features of quantum mechanics such as the use of Schrödinger equation and potential field distribution [15]. As a global optimization algorithm, the QPSO can seek many local minima and thus increase the likelihood of finding the global minimum. This advantage of the QPSO can be applied to neural networks to optimize the topology and/or weight parameters [16].In order to predict the network traffic more accurately, a prediction model of network traffic based on QPSO algorithm and fuzzy wavelet neural network is proposed in this paper. The network traffic data is trained by QPSO and fuzzy wavelet neural network and weights are progressively updated until the convergence criterion is satisfied. The objective function to be minimized by the QPSO algorithm is the predicted error function.The rest of this paper is arranged as follows. Section2 gives a brief introduction to classical PSO algorithm and quantum-behaved particle swarm optimization (QPSO) algorithm. In Section 3, the fuzzy wavelet neural network is introduced and the fuzzy wavelet neural network based on QPSO (QPSO-FWNN) algorithm is presented in detail. In Section 4, simulation results are presented. Performance metrics of the several prediction methods are analyzed and compared in Section 5. Finally, some conclusions are given in Section 6.


## 2. Quantum-Behaved Particle Swarm Optimization

### 2.1. Classical Particle Swarm Optimization

Particle swarm optimization (PSO) is an evolutionary computation technique that is proposed by Kennedy and Eberhart in 1995 [17]. Similarly to other genetic algorithms (GA), PSO is initialized with a population of random solutions. However, it is unlike GA, PSO does not have operators, such as crossover and mutation. In the PSO algorithm, each potential solution, called “particles,” moves around in a multidimensional search space with a velocity constantly updated by the particle’s own experience and the experience of the particle’s neighbors or the experience of the whole swarm [18].In the PSO, each particle keeps track of its coordinates in the search space which are associated with the best solution it has achieved so far and this value is calledpbest. Another best value that is tracked by the global version of the particle swarm optimizer is the overall best value, and its location, obtained so far by any particle in the population [19]. This location is called gbest.The process for implementing the global version of PSO is given by the following steps.Step 1.
Initialize a population (array) of particles with random positions and velocities in theD-dimensional problem space. For aD-dimensional problem with N number of particles, the position vector Xit and velocity vector Vit are represented as (1)Xit=Xi,1t,Xi,2t,…,Xi,Dt,Vit=Vi,1t,Vi,2t,…,Vi,Dt,where i=1,2,…,N.Step 2.
For each particle, evaluate the desired optimization fitness function inD variables.Step 3.
Compare each particle’s fitness evaluation with the particle’spbest. If the current value is better thanpbest, then set thepbest value equal to the current value and thepbest location equal to the current location inD-dimensional space.Step 4.
Compare the fitness evaluation with the population’s overall previous best. If the current value is better thangbest, then reset gbest to the current particle’s array index and value.Step 5.
Update the velocity and position of the particle according to (2) and (3), respectively. One has(2)Vi,dt+1=Vi,dt+c1r1pbesti,dt-Xi,dt+c2r2gbestdt-Xi,dt,(3)Xi,dt+1=Xi,dt+Vi,dt+1,where c1 and c2 are two positive constants, known as the cognitive and social coefficients, which control the relative proportion of cognition and social interaction, respectively, and the values of c1 and c2 were decreased with each iteration [20]. r1 and r2 are two random values in the range [0,1]. Vi,dt, Xi,dt, and pbesti,dt are the velocity, position, and the personal best of ith particle in dth dimension for the tth iteration, respectively. The gbestdt is the dth dimension of best particle in the swarm for the tth iteration.Step 6.
Loop to Step2 until a stop criterion is met, usually a sufficiently good fitness or a maximum number of iteration generations.


### 2.2. Quantum-Behaved Particle Swarm Optimization

Motivated by concepts in quantum mechanics and particle swarm optimization, Sun et al. proposed a new version of PSO, quantum-behaved particle swarm optimization (QPSO) [21]. In the QPSO, the state of a particle is depicted by a wave function ψ(x,t), instead of position and velocity. The probability density function of the particle’s position is ψ(X,t)2 in position Xi [22].Assume that, at iterationt, particle i moves in D-dimensional space with a δ potential well centered at pbesti,jt on the dth dimension. The wave function at iteration t+1 is given by the following equation:(4)ψXi,dt+1=1Lijtexp-Xi,dt-pbesti,dtLijt,where Li,dt is the standard deviation of the double exponential distribution, varying with iteration number t. Hence the probability density function Q is defined as(5)QXi,dt+1=ψXi,dt+12=1Li,dtexp-2Xi,dt+1-pbesti,dtLi,dtand the probability distribution function F is given by the following equation:(6)FXi,dt+1=1-exp-2Xi,dt+1-pbesti,dtLi,dt.By using Monte-Carlo method, thejth component of position Xi at iteration t+1 can obtain by the following equation:(7)Xi,dt+1=pbesti,dt±12Li,dtln⁡1ui,dt+1,where ui,dt+1 is a uniform random number in the interval [0,1]. The value of Li,dt+1 is calculated as(8)Li,dt=2αCdt-Xi,dt,where parameter α is known as the contraction-expansion (CE) coefficient, which can be tuned to control the convergence speed of the algorithms [23]. Ct is the mean best position (mbest) and is defined as(9)Ct=C1t,C2t,…,CDt=1M∑i=1Mpbesti,1t,1M∑i=1Mpbesti,2t,…,1M∑i=1Mpbesti,Dt,where M is the size of the population. Hence the position of the particle is updated according to the following equation:(10)Xi,dt+1=pbesti,dt±αCdt-Xi,dtln⁡1ui,dt+1.From (4) and (10), the new position of the particle is calculated as(11)
X
i
,
d
t
+
1
=
p
b
e
s
t
i
,
d
t
+
α
C
d
t
-
X
i
,
d
t
ln
⁡
1
u
i
,
d
t
+
1
k
∈
0.5
,
1
,
p
b
e
s
t
i
,
d
t
-
α
C
d
t
-
X
i
,
d
t
ln
⁡
1
u
i
,
d
t
+
1
k
∈
0
,
0.5
,where k is a random number in the range [0,1]. α is linearly decreasing factor from 1.0 to 0.3 with iteration as(12)αt=αmax-αmax-αmintmax·t,where tmax is the maximum number iteration used in algorithm.


## 2.1. Classical Particle Swarm Optimization

Particle swarm optimization (PSO) is an evolutionary computation technique that is proposed by Kennedy and Eberhart in 1995 [17]. Similarly to other genetic algorithms (GA), PSO is initialized with a population of random solutions. However, it is unlike GA, PSO does not have operators, such as crossover and mutation. In the PSO algorithm, each potential solution, called “particles,” moves around in a multidimensional search space with a velocity constantly updated by the particle’s own experience and the experience of the particle’s neighbors or the experience of the whole swarm [18].In the PSO, each particle keeps track of its coordinates in the search space which are associated with the best solution it has achieved so far and this value is calledpbest. Another best value that is tracked by the global version of the particle swarm optimizer is the overall best value, and its location, obtained so far by any particle in the population [19]. This location is called gbest.The process for implementing the global version of PSO is given by the following steps.Step 1.
Initialize a population (array) of particles with random positions and velocities in theD-dimensional problem space. For aD-dimensional problem with N number of particles, the position vector Xit and velocity vector Vit are represented as (1)Xit=Xi,1t,Xi,2t,…,Xi,Dt,Vit=Vi,1t,Vi,2t,…,Vi,Dt,where i=1,2,…,N.Step 2.
For each particle, evaluate the desired optimization fitness function inD variables.Step 3.
Compare each particle’s fitness evaluation with the particle’spbest. If the current value is better thanpbest, then set thepbest value equal to the current value and thepbest location equal to the current location inD-dimensional space.Step 4.
Compare the fitness evaluation with the population’s overall previous best. If the current value is better thangbest, then reset gbest to the current particle’s array index and value.Step 5.
Update the velocity and position of the particle according to (2) and (3), respectively. One has(2)Vi,dt+1=Vi,dt+c1r1pbesti,dt-Xi,dt+c2r2gbestdt-Xi,dt,(3)Xi,dt+1=Xi,dt+Vi,dt+1,where c1 and c2 are two positive constants, known as the cognitive and social coefficients, which control the relative proportion of cognition and social interaction, respectively, and the values of c1 and c2 were decreased with each iteration [20]. r1 and r2 are two random values in the range [0,1]. Vi,dt, Xi,dt, and pbesti,dt are the velocity, position, and the personal best of ith particle in dth dimension for the tth iteration, respectively. The gbestdt is the dth dimension of best particle in the swarm for the tth iteration.Step 6.
Loop to Step2 until a stop criterion is met, usually a sufficiently good fitness or a maximum number of iteration generations.


## 2.2. Quantum-Behaved Particle Swarm Optimization

Motivated by concepts in quantum mechanics and particle swarm optimization, Sun et al. proposed a new version of PSO, quantum-behaved particle swarm optimization (QPSO) [21]. In the QPSO, the state of a particle is depicted by a wave function ψ(x,t), instead of position and velocity. The probability density function of the particle’s position is ψ(X,t)2 in position Xi [22].Assume that, at iterationt, particle i moves in D-dimensional space with a δ potential well centered at pbesti,jt on the dth dimension. The wave function at iteration t+1 is given by the following equation:(4)ψXi,dt+1=1Lijtexp-Xi,dt-pbesti,dtLijt,where Li,dt is the standard deviation of the double exponential distribution, varying with iteration number t. Hence the probability density function Q is defined as(5)QXi,dt+1=ψXi,dt+12=1Li,dtexp-2Xi,dt+1-pbesti,dtLi,dtand the probability distribution function F is given by the following equation:(6)FXi,dt+1=1-exp-2Xi,dt+1-pbesti,dtLi,dt.By using Monte-Carlo method, thejth component of position Xi at iteration t+1 can obtain by the following equation:(7)Xi,dt+1=pbesti,dt±12Li,dtln⁡1ui,dt+1,where ui,dt+1 is a uniform random number in the interval [0,1]. The value of Li,dt+1 is calculated as(8)Li,dt=2αCdt-Xi,dt,where parameter α is known as the contraction-expansion (CE) coefficient, which can be tuned to control the convergence speed of the algorithms [23]. Ct is the mean best position (mbest) and is defined as(9)Ct=C1t,C2t,…,CDt=1M∑i=1Mpbesti,1t,1M∑i=1Mpbesti,2t,…,1M∑i=1Mpbesti,Dt,where M is the size of the population. Hence the position of the particle is updated according to the following equation:(10)Xi,dt+1=pbesti,dt±αCdt-Xi,dtln⁡1ui,dt+1.From (4) and (10), the new position of the particle is calculated as(11)
X
i
,
d
t
+
1
=
p
b
e
s
t
i
,
d
t
+
α
C
d
t
-
X
i
,
d
t
ln
⁡
1
u
i
,
d
t
+
1
k
∈
0.5
,
1
,
p
b
e
s
t
i
,
d
t
-
α
C
d
t
-
X
i
,
d
t
ln
⁡
1
u
i
,
d
t
+
1
k
∈
0
,
0.5
,where k is a random number in the range [0,1]. α is linearly decreasing factor from 1.0 to 0.3 with iteration as(12)αt=αmax-αmax-αmintmax·t,where tmax is the maximum number iteration used in algorithm.


## 3. Fuzzy Wavelet Neural Network Based on QPSO

### 3.1. The Wavelet Base Function

InL2(R), a wavelet dictionary is constructed by dilating and translating from a wavelet base function ψ(t) of zero average [24]:(13)∫-∞+∞ψtdt=0which is dilated with a scale parameter a and translated by b(14)ψa,bt=1aψt-baa>0.


### 3.2. Fuzzy Wavelet Neural Network

The basic architecture of fuzzy wavelet neural network could be described as a set of Takagi-Sugeno models. Assume that there arer rules in the rule base and the Takagi-Sugeno fuzzy if-then rules are usually in the following form:(15)Ri:IFx1isF1i,…,xrisFri,THENyi=α0i+α1ix1+⋯+αrixr,where x1,x2,…,xr are input of T-S rule, Fji is the ith linguistic variable value of the jth input, which is a fuzzy set characterized by wavelet function. αji is constant coefficients which are usually referred to as consequent parameters determined during the training process.Figure1 shows the architecture of the proposed FWNN modeling. The FWNN is a 4-layer feedforward network and detailed descriptions and equations for each layer are given here.Figure 1
The architecture of FWNN.Layer 1  (input variables layer). This layer is the input signals of the FWNN and each node of this layer, respectively, represents an input linguistic variable. The node output and the node input are related by (16)Ii1=xiOi1=Ii1i=1,2,…,n,where Ii(1) and Oi(1) are, respectively, the input and output of ith node in Layer 1.Layer 2 (membership functions layer). In this layer, nodes represent fuzzy sets in the antecedents of fuzzy rules. The outputs of this layer are the values of the membership functions. The membership function is wavelet function and is often taken as(17)uij=φxi-bijaij=cos⁡xi-bij2aijexp⁡-12xi-bijaij2,where uij is the jth membership function of xi and j=1,2,…,p.   aij,bij are the dilation and translation parameter of wavelet function.In this layer, the relation between the output and input is represented as(18)Iij2=Oi1,Oij2=uijIij2=cos⁡Oi1-bij2aijexp⁡-12Oi1-bijaij2,where i=1,2,…,n,  j=1,2,…,p.Layer 3 (rule layer). In this layer, the number of rules is equal to the number of nodes. The output can be calculated as follows according to the AND (min) operation [12]:(19)Oij3=Iij3=minO1j2,O2j2,…,Onj2.Layer 4 (output layer). This layer consists of output nodes. The output are given by(20)Ik4=∑i=1m∑j=1pOij3ωij3,(21)yk=Ok4=Ik4∑i=1m∑j=1pOij3.To train the parameters of FWNN, backpropagation (BP) training algorithm is extensively used as a powerful training method which can be applied to the forward network architecture [25]. For this purpose, mean square error (MSE) is selected as performance index which is given by(22)J=12D-YTD-Y,where D and Y are current and desired output values of network, correspondingly.The all adjustable parameters of FWNN can be calculated by the following formulas:(23)ωij3t+1=ωij3t-η·∂J∂ωij3t+α·Δωij3t,bij2t+1=bij2t-η·∂J∂bij2t+α·Δbij2t,aij2t+1=aij2t-η·∂J∂aij2t+α·Δaij2t,where t represents the backward step number and η and α are the learning and the momentum constants, differing in the ranges 0.01 to 0.1 and 0.1 to 0.9, respectively.


### 3.3. Fuzzy Wavelet Neural Network Trained by QPSO Algorithm

Computational intelligence has gained popularity in training of neural networks because of their ability to find a global solution in a multidimensional search space. The QPSO algorithm is a global algorithm, which has a strong ability to find global optimistic results and QPSO algorithm has proven to have advantages than the classical PSO due its less control parameters [26]. Therefore, by combining the QPSO with the fuzzy wavelet neural network, a new algorithm referred to as QPSO-FWNN algorithm is formulated in this paper.When QPSO algorithm is used to train the FWNN model, a decision vector represents a particular group of network parameters including the connection weight, the dilation and translation parameter. It is further denoted as(24)Xi=a1,1,…,a1,p,…,an,p,b1,1,…,b1,p,…,bn,p,ω1,1,…,ω1,p,…,ωm,p,where aij and bij are the dilation and translation parameter of wavelet function in Layer 2. ωl,k are the connection weight in (20). Since a component of the position corresponds to a network parameter, FWNN is structured according the particle’s position vector. Training the corresponding network by inputting the training samples, we can obtain an error value computed by (22). In a word, the mean square error is adopted as the objective function to be minimized in FWNN based on QPSO.The specific procedure for the QPSO-FWNN algorithm can be summarized as follows.Step 1.
Define the structure of the FWNN according to the input and output sample.Step 2.
Treat the position vector of each particle as a group of network parameter by (24).Step 3.
Initialize the population by randomly generating the position vectorXi of each particle and set pbesti=Xi.Step 4.
Evaluatem and α of QPSO algorithm using (9) and (12), respectively.Step 5.
Conclude the objective function of each particle by (22).Step 6 (updatepbest).
Each particle’s current fitness value is compared with previous best valuepbest. If the current value is better than the pbest value, then set the pbest value to the current value.Step 7 (updategbest).
Determine the swarm bestgbest as minimum of all the particles pbest.Step 8.
Judge the stopping criteria, if the maximal iterative times are met, stop the iteration, and the positions of particles are the optimal solution. Otherwise, the procedure is repeated from Step4.


## 3.1. The Wavelet Base Function

InL2(R), a wavelet dictionary is constructed by dilating and translating from a wavelet base function ψ(t) of zero average [24]:(13)∫-∞+∞ψtdt=0which is dilated with a scale parameter a and translated by b(14)ψa,bt=1aψt-baa>0.


## 3.2. Fuzzy Wavelet Neural Network

The basic architecture of fuzzy wavelet neural network could be described as a set of Takagi-Sugeno models. Assume that there arer rules in the rule base and the Takagi-Sugeno fuzzy if-then rules are usually in the following form:(15)Ri:IFx1isF1i,…,xrisFri,THENyi=α0i+α1ix1+⋯+αrixr,where x1,x2,…,xr are input of T-S rule, Fji is the ith linguistic variable value of the jth input, which is a fuzzy set characterized by wavelet function. αji is constant coefficients which are usually referred to as consequent parameters determined during the training process.Figure1 shows the architecture of the proposed FWNN modeling. The FWNN is a 4-layer feedforward network and detailed descriptions and equations for each layer are given here.Figure 1
The architecture of FWNN.Layer 1  (input variables layer). This layer is the input signals of the FWNN and each node of this layer, respectively, represents an input linguistic variable. The node output and the node input are related by (16)Ii1=xiOi1=Ii1i=1,2,…,n,where Ii(1) and Oi(1) are, respectively, the input and output of ith node in Layer 1.Layer 2 (membership functions layer). In this layer, nodes represent fuzzy sets in the antecedents of fuzzy rules. The outputs of this layer are the values of the membership functions. The membership function is wavelet function and is often taken as(17)uij=φxi-bijaij=cos⁡xi-bij2aijexp⁡-12xi-bijaij2,where uij is the jth membership function of xi and j=1,2,…,p.   aij,bij are the dilation and translation parameter of wavelet function.In this layer, the relation between the output and input is represented as(18)Iij2=Oi1,Oij2=uijIij2=cos⁡Oi1-bij2aijexp⁡-12Oi1-bijaij2,where i=1,2,…,n,  j=1,2,…,p.Layer 3 (rule layer). In this layer, the number of rules is equal to the number of nodes. The output can be calculated as follows according to the AND (min) operation [12]:(19)Oij3=Iij3=minO1j2,O2j2,…,Onj2.Layer 4 (output layer). This layer consists of output nodes. The output are given by(20)Ik4=∑i=1m∑j=1pOij3ωij3,(21)yk=Ok4=Ik4∑i=1m∑j=1pOij3.To train the parameters of FWNN, backpropagation (BP) training algorithm is extensively used as a powerful training method which can be applied to the forward network architecture [25]. For this purpose, mean square error (MSE) is selected as performance index which is given by(22)J=12D-YTD-Y,where D and Y are current and desired output values of network, correspondingly.The all adjustable parameters of FWNN can be calculated by the following formulas:(23)ωij3t+1=ωij3t-η·∂J∂ωij3t+α·Δωij3t,bij2t+1=bij2t-η·∂J∂bij2t+α·Δbij2t,aij2t+1=aij2t-η·∂J∂aij2t+α·Δaij2t,where t represents the backward step number and η and α are the learning and the momentum constants, differing in the ranges 0.01 to 0.1 and 0.1 to 0.9, respectively.


## 3.3. Fuzzy Wavelet Neural Network Trained by QPSO Algorithm

Computational intelligence has gained popularity in training of neural networks because of their ability to find a global solution in a multidimensional search space. The QPSO algorithm is a global algorithm, which has a strong ability to find global optimistic results and QPSO algorithm has proven to have advantages than the classical PSO due its less control parameters [26]. Therefore, by combining the QPSO with the fuzzy wavelet neural network, a new algorithm referred to as QPSO-FWNN algorithm is formulated in this paper.When QPSO algorithm is used to train the FWNN model, a decision vector represents a particular group of network parameters including the connection weight, the dilation and translation parameter. It is further denoted as(24)Xi=a1,1,…,a1,p,…,an,p,b1,1,…,b1,p,…,bn,p,ω1,1,…,ω1,p,…,ωm,p,where aij and bij are the dilation and translation parameter of wavelet function in Layer 2. ωl,k are the connection weight in (20). Since a component of the position corresponds to a network parameter, FWNN is structured according the particle’s position vector. Training the corresponding network by inputting the training samples, we can obtain an error value computed by (22). In a word, the mean square error is adopted as the objective function to be minimized in FWNN based on QPSO.The specific procedure for the QPSO-FWNN algorithm can be summarized as follows.Step 1.
Define the structure of the FWNN according to the input and output sample.Step 2.
Treat the position vector of each particle as a group of network parameter by (24).Step 3.
Initialize the population by randomly generating the position vectorXi of each particle and set pbesti=Xi.Step 4.
Evaluatem and α of QPSO algorithm using (9) and (12), respectively.Step 5.
Conclude the objective function of each particle by (22).Step 6 (updatepbest).
Each particle’s current fitness value is compared with previous best valuepbest. If the current value is better than the pbest value, then set the pbest value to the current value.Step 7 (updategbest).
Determine the swarm bestgbest as minimum of all the particles pbest.Step 8.
Judge the stopping criteria, if the maximal iterative times are met, stop the iteration, and the positions of particles are the optimal solution. Otherwise, the procedure is repeated from Step4.


## 4. Simulation Results

Experimental data set consists of 10 hours observations which comes from monitoring the traffic between clients in our campus network and servers. The minimal time interval in network traffic time series is 10 seconds. Figure2 shows the normalization of network traffic time series.Figure 2
The normalization of network traffic time series.In this paper, the design of a discrete filter predictor consists in finding the relation between the future datax(n) and the past observations x(n-1),x(n-2),…,x(n-M), where M is the number of considered input elements. The predictor relationship can be described by the following convolution sum [27]:(25)x^n=∑k=1Mhokxn-k,where hok (k=1,2,…,M) is the filter coefficient vector. x(n-k) is an k-step backward sample. x^n is the desired output.In order to test the performance of the prediction model, the front 1000 is the training data, and the latter 2100 is the prediction data. The number of time series windows was set as 3, which meant that the forth of measurement data would be predicted from the past three of measurement data. In the established prediction model base on QPSO-FWNN algorithm, the number of membership functions is five, the number of input variables layer nodes is three, and the number of output layer nodes is one. The population size of QPSO algorithm is 120 particles andD-dimensional search space of particle is 45. tmax is 30. αmax is 1 and αmin is 0.5. The CE coefficient decreases linearly from 1.0 to 0.3 during the search process according to (12) and After 50 times iterations, the cost function J of QPSO-FWNN neural network was 2.1887. The connection weight between input variables layer and output layer is given by(26)a=1.018-0.196-0.5820.4190.743-1.299-0.8850.676-0.1700.1341.0820.2060.557-0.4080.453,b=0.4951.5101.8930.8692.6651.171-0.6272.3692.3040.786-0.0821.2972.0431.3001.850,ω=-0.9270.4080.0532.1282.1951.6521.8751.436-1.5372.4161.5951.1462.0720.9651.884,where a is the dilation parameter of the wavelet function. b is the translation parameter of wavelet function. ω is the connection weight of the output layer. Figure 3 shows the membership functions of input variable x(t), x(t-1), and  x(t-2) in FWNN units. Figure 4 shows the QPSO-FWNN convergence curves. These prediction results show that the QPSO-FWNN model is an effective, high-accuracy prediction model of network traffic in Figure 5.Figure 3
The membership functions of input variablex(t), x(t-1), and  x(t-2) in FWNN units.
(a)
Membership functions of input variablex(t) in FWNN units
(b)
Membership functions of input variablex(t-1) in FWNN units
(c)
Membership functions of input variablex(t-2) in FWNN unitsFigure 4
The QPSO-FWNN convergence curves.Figure 5
Prediction with QPSO-FWNN model.
(a)
The predicted results with QPSO-FWNN method
(b)
The error between the actual value and its predicted value


## 5. Performance Metrics

In order to evaluate the prediction model more comprehensively, the following performance metrics are used to estimate the prediction accuracy.(1) MSE (mean square error) is a scale-dependent metric which quantifies the difference between the predicted values and the actual values of the quantity being predicted by computing the average sum of squared errors [28]:(27)MSE=1N∑i=1Nyi-y^i2,where yi is the actual value, y^i is the predicted value, and N is the total number of predictions.(2) NMSE (Normalized Mean Square Error) is defined as(28)NMSE=1σ21N∑i=1Nyi-y^i2,where σ2 denotes the variance of the actual values during the prediction interval and is given as follows:(29)σ2=1N∑i=1Nyi-y-2,where y- is the mean value and is given by(30)y-=1N∑i=1Nyi.It can be seen that, if NMSE=0, the prediction performance is perfect, and if NMSE=1, the prediction is a trivial predictor which statistically predicts the mean of the actual value. If NMSE>1, it means that the prediction performance is worse than that of trivial predictor [29].(3) MAPE (Mean Absolute Percentage Error) can calculate the prediction error as a percentage of the actual value. MAPE is defined as(31)MAPE=1N∑i=1Nyi-y^iyi×100%.(4) Coefficient correlation is the covariance of the two variables divided by the product of their individual standard deviations. It is a normalized measurement of how the two variables are linearly related. The coefficient of correlation (r) is given as follows:(32)r=COVY,Y^σYσY^,where σY and σY^ indicate the standard deviation of the actual and the predicted values are given by (33)(33)σY=1N∑i=1Nyi-y¯2.COVX,Y is the covariance between X and Y. It is obtained as follows:(34)COV=1N∑i=1Nxi-x¯yi-y¯.Values for the correlation coefficient range are [-1,1]. If r=1, there is a perfect positive correlation between the actual and the predicted values, whereas r=-1 indicates a perfect negative correlation. If r=0, we have a complete lack of correlation among the datasets.(5) Coefficient of efficiency (CE) is defined as(35)CE=1-∑i=1Nyi-y^i2∑i=1Nyi-y-2,where the domain of the efficiency coefficient is (-∞,1]. If CE=1, there is a perfect fit between the observed and the predicted data. When the prediction corresponds to estimating the mean of the actual values, CE=0. If CE∈(-∞,0], it indicates that the average of the actual values is a better predictor than the analyzed prediction method. The closer CE is to 1, the more accurate the prediction is.In order to test the QPSO-FWNN method’s validity and accuracy, we carried out the experiment which is compared with the other methods. The prediction model based on BP neural network is 3 layers, in which the number of input layer nodes is 3, the number of hidden layer nodes is 7, the number of output layer nodes is 1, and the number of iterations is 1000. In the prediction model based on RBF neural network, the radial based distribute function “spread” is 1.5. The prediction model based on FNN neural network is 4 layers and the number of membership functions is five. The number of iterations is 1000. The architecture of prediction model based on fuzzy wavelet neural network and genetic algorithm (FWNN-GA) is the same with the QPSO-FWNN method. The population size of GA is 100. The crossover type is one-point crossover, and crossover rate is 0.6. Mutation rate is 0.01 and the number of iterations is 500 [30]. The prediction model based on ARIMA model is built. The estimation of the model parameters is done using Maximum Likelihood Estimation and the best model is chosen as ARIMA (5,1,3) [31]. Figures 6, 7, 8, 9, and 10 show that prediction results with BP, RBF, FNN, and FWNN-GA neural network and ARIMA model, respectively. The performance comparison of the four prediction methods is shown in Table 1. From Table 1, one can look further into the prediction performance among the four prediction models. By comparing the value of MSE, NMSE, MAPE, coefficient correlation, and CE, QPSO-FWNN demonstrates better prediction accuracy than the other three methods. Therefore, the experimental results in this section show that the prediction method based on QPSO-FWNN is much more effective than BP, RBF, FNN, FWNN-GA, and ARIMA. It can be seen that the prediction method based on QPSO-FWNN is a better method to predict the time series of network traffic.Table 1
Performance comparison of the six prediction methods.
Method
MSE
NMSE
MAPE
r
CE
QPSO-FWNN
3.02
×
10
-
4
0.0348
0.0181
0.9833
0.9667
BP
6.30
×
10
-
3
0.3022
0.0986
0.8602
0.3091
RBF
4.20
×
10
-
3
0.2182
0.0786
0.9115
0.5424
FNN
2
.
69
×
10
-
1
1.0999
0.2041
−0.1692
−28.6128
FWNN-GA
1
.
01
×
10
-
3
0.1475
0.0434
0.9560
0.8884
ARIMA
4.50
×
10
-
3
0.5974
0.7326
0.7326
0.5011Figure 6
Prediction results with BP neural network.
(a)
The predicted results with BP neural network
(b)
The error between the actual value and its predicted valueFigure 7
Prediction results with RBF neural network.
(a)
The predicted results with RBF method
(b)
The error between the actual value and its predicted valueFigure 8
Prediction results with FNN neural network.
(a)
The predicted results with FNN method
(b)
The error between the actual value and its predicted valueFigure 9
Prediction results with FWNN-GA method.
(a)
The predicted results with FWNN-GA method
(b)
The error between the actual value and its predicted valueFigure 10
Prediction results with ARIMA method.
(a)
The predicted results with ARIMA(5,1,3) model
(b)
The error between the actual value and its predicted valueIn order to test the prediction stability of each mode, the five prediction methods were predicted 10 times, respectively. Figures11, 12, and 13 show that prediction results with QPSO-FWNN models are much more stable than BP, FNN, and FWNN-GA.Figure 11
MAPE and NMSE histogram of four prediction models.
(a)
MAPE histogram of four prediction models
(b)
NMSE histogram of four prediction modelsFigure 12
MSE and CE histogram of four prediction models.
(a)
MSE histogram of five prediction models
(b)
CE histogram of five prediction modelsFigure 13
Coefficient correlation histogram of four prediction models.


## 6. Conclusion

Predicting the direction of movements of network traffic is important as they enable us to detect potential network traffic jam spots. Since the network traffic is affected by many factors, the data of network traffic have the volatility and self-similarity features and the network traffic prediction becomes a challenge task. In this paper, the QPSO-FWNN method has been presented to predict the network traffic. The QPSO-FWNN combines the QPSO, which has the merit of powerful global exploration capability, with FWNN which can extract the mapping relations between the input and output data. The parameters of FWNN neural network are obtained by quantum-behaved particle swarm optimization (QPSO) and the time series of network traffic data was modeled by QPSO-FWNN. Finally, experiments showed that QPSO-FWNN model has faster and better performance in prediction of nonlinear and nonstationary time series than many pure neural networks.



---

*Source: 4135056-2016-03-10.xml*