- Research
- Open Access

# Multi-objective enhanced particle swarm optimization in virtual network embedding

- Peiying Zhang
^{1, 2, 3}, - Haipeng Yao
^{1}Email author, - Chao Fang
^{4, 2}and - Yunjie Liu
^{1}

**2016**:167

https://doi.org/10.1186/s13638-016-0669-2

© Zhang et al. 2016

**Received:**10 April 2016**Accepted:**5 July 2016**Published:**13 July 2016

## Abstract

In network virtualization, one of its core challenges lies in how to map the virtual networks (VNs) to the shared substrate network (SN) that is managed by an infrastructure provider, termed as the virtual network embedding problem. Prior studies on this problem only consider one objective, e.g., maximizing the revenues by mapping more VNs or minimizing the energy cost. In this paper, we addressed the virtual network embedding problem with these two objectives. We leverage niche particle swarm optimization technique to design a meta-heuristic algorithm to solve this problem. Extensive simulations illustrate that the efficiency of our proposed algorithm is better than the state-of-the-art algorithms in terms of both revenue and energy cost.

## Keywords

- Network virtualization
- Particle swarm optimization
- Virtual network embedding

## 1 Introduction

Up to now, network virtualization has been put forward as a fundamental attribute of diversification for the future Internet by decoupling the service providers (SPs) from the roles of infrastructure providers (InPs). SPs rent some resources of the substrate network (SN) from InPs and provided services to the end users. Embedding a sequence of virtual networks (VNs) to the shared SN is defined as the VN embedding problem, which has been extensively studied [1–12].

In these previous works, the main goal is to design more efficient approaches to maximize the revenue through accommodating more virtual network requests (VNRs). Recently, in [13, 14], they proposed to minimize the energy consumption for the SPs by leveraging meta-heuristics, i.e., particle swarm optimization. Nevertheless, the particle swarm optimization (PSO) model has a high opportunity to converge to local optima. To further optimize and improve the VN embedding issues, in our works, we put forward an approach of niche particle swarm optimization algorithm (MO-NPSO) based on the multi-objectives. The originality of this algorithm is as follows. We first apply a discrete approach, which encodes the virtual node mapping solution as the position of a particle to leverage PSO. We then apply an aggregation strategy for the fitness function to transform the multi-objective problem to a uni-objective problem. To further improve the performance of this algorithm, we leverage the niche technique for the enhanced algorithm. By leveraging Niche PSO in our context, we can avoid local optima and achieve a more revenue and energy-efficient VN embedding solution in the evolution process, which is the critical contribution of this thesis. Through extensive simulations, the performance of our algorithm is better than the state-of-the-art algorithm in terms of revenue and energy cost.

The main contributions of this paper are as follows. (i) Unlike most of the prior studies, we address the virtual network embedding problem with these two objectives. (ii) We leverage niche particle swarm optimization technique to design a meta-heuristic algorithm to solve this problem. The niche technology can avoid PSO from local optima. (iii) We perform extensive simulations to prove that our proposed algorithm is better than the state-of-the-art algorithms in terms of both revenue and energy cost.

The roadmap of this thesis is as follows. In Section 2, we revisit the related works. The network model and performance metrics are presented in Section 3. In Section 4, we give details of our proposed meta-heuristic algorithm-based VN embedding which known as MO-NPSO. In Section 5, we compare our MO-NPSO algorithm with other state-of-the-art algorithms. Finally, conclusions are drawn in the last section.

## 2 Related works

The virtual network embedding (VNE) problem, which is proved to be NP hard problem, is very hot and has been extensively studied. The primary goal earlier is to increase the long-term average revenues with certain substrate network resources. Yu et al. [1] assumed that supporting path splitting and reconfiguration can increase the opportunity of acceptance ratio of VNR. Chowdhury et al. [2] translated the VNE problem into the mixed-integer programming (MIP) problems and took advantage of classical integer programming solution to address the issue. However, this approach incurs a very high time complexity and also suffers from poor performance. Cheng et al. [10] leveraged Markov random walk theory and proposed NodeRank, similar to PageRank which serves as the core algorithm of Google’s web searching. The benefit of this algorithm lies in that it incorporates the topology attribute into the VN embedding algorithm.

Another line to solve this NP hard problem is leveraging meta-heuristic. For example, Cheng and Zhang [11, 15] proposed to leverage the particle swarm optimization technique to achieve a better and better solution by iteratively searching. The difference between these two studies lies in that they did not consider the energy. Recently, due to the importance of the energy issue, energy-aware VN embedding problem also attracts several researchers. Su et al. [13, 14] and Botero et al. [16] proposed two different solutions for energy-efficient VN embedding algorithm. The former focused on the heuristics while the latter focused on the exact algorithm. However, for the heuristic algorithm, it is easy while the quality of the solution is not good; for the exact algorithm, it can achieve the optimal solution while incurring a very high time complexity. We bridge this gap in this paper and leverage the Niche PSO to address these the limitations of these two branches of algorithms.

## 3 The description of network model and performance metrics

### 3.1 The introduction of network model

We model a substrate network (SN) to a weighted graph which denoted as *G*
_{s}=(*N*
_{s},*L*
_{s}), in which *N*
_{s} stands for the collection of substrate nodes and *L*
_{s} stands for the collection of substrate links.

With regard to the attributes on the nodes and links, following most of the previous studies [1, 10–13], we take the nodes’ CPU capacity and location and the links’ bandwidth capacity into considerations. Similar to previous studies, we model a VN to a weighted graph represented by *G*
_{v}=(*N*
_{v},*L*
_{v}), in which *N*
_{v} stands for the collection of virtual nodes and *L*
_{v} stands for the collection of virtual links.

A VNR can be modeled as VNR(*G*
_{v},*T*
_{a},*T*
_{d}), in which *T*
_{a} stands for the arrival time and *T*
_{d} stands for the duration of the VN request hosting in the SN. The VNE problem can be described as a process which maps a VN to a SN, meanwhile satisfying the resource constraints of node and link. Naturally, the mapping process can be broken into two sub-phrases: one is the node mapping phrase denoted by *M*
_{n} and the other is the link mapping phrase denoted by *M*
_{l}. The part of (b) in Fig. 1 gives a VNE solution for the VNR denoted by the part of Fig. 1
a. From Fig. 1, we can easily know that mapping solutions.

### 3.2 The performance metrics

From the InP’s prospective, there are two goals: (i) maximizing the revenue for serving the VN requests and (ii) minimizing the corresponding energy cost.

#### 3.2.1 Revenue

where *N* stands for the number of accepted VNRs in time *T* and *R*
^{
i
}(*G*
_{v}) stands for the derived revenue for accepting the *i*th VNR. We quantify the resource cost for mapping *G*
_{v}, denoted by *C*(*G*
_{v}) in the following ways. *C*(*G*
_{v}) consists of two parts: the first part is the total consumed CPU resource, denoted by *C*(*N*
_{v}), and the total consumed bandwidth resource, denoted by *C*(*L*
_{v}).

#### 3.2.2 Energy cost

*i*th VNR can be defined as:

*P*

_{l}denotes a linear parameter,

*P*

_{b}represents the baseline energy cost, and

*N*stands for how many substrate nodes have been powered up. Through the equation above, it is of critical importance to consolidate the VNs into substrate nodes as little as possible. To compute the energy cost for embedding a sequence of VN requests, we quantify the long-term average energy cost as follows:

where *G* stands for the number of accepted VNRs in time *T* and *E*
^{
i
}(*G*
_{v}) stands for *i*th VNR’s energy cost. In our approach, we consider not only its long-term average revenue but also its long-term average energy cost and take both as our performance metrics.

## 4 Proposed solution

In particular, compared to other methods, the algorithm of PSO can produce better optimal solution with less computational time but stable convergence [17]. Furthermore, it is easy to use fewer parameters to tune. The originality of our work is to leverage these PSO benefits to construct a revenue and energy-aware VNE solution. Before that, we will give a brief introduction of particle swarm optimization basics.

### 4.1 Particle swarm optimization basics

*i*th particle by \(X_{i}=({x_{i}^{1}},{x_{i}^{2}},\ldots,{x_{i}^{D}})\), in which

*D*denotes the dimensionality. Each particle has a position. The quality of its position is better or worse, which can be determined by a fitness function. The

*i*th particle interacts with other particles in a certain manner and adjusts its forward direction using the velocity \(V_{i}=({v_{i}^{1}},{v_{i}^{2}},\ldots,{v_{i}^{D}})\) iteratively. The

*i*th particle’s velocity is determined by three factors: its current position (

*X*

_{ i }), its best obtained experience (pBest

_{ i }), and the best obtained group experience (gBest). During the process of the iteration, their velocity and positions are updated by the following formula:

where *P*
_{i} stands for the inertia weight, *P*
_{c} stands for the cognition weight, *P*
_{s} stands for the social weight, and \({r_{1}^{d}}\) and \({r_{2}^{d}}\) stand for the two random variables which are uniformly distributed in [0, 1]. In such an iterative way, the optional solution may be finally found.

It seems that we can leverage PSO to solve the VNE problem. However, for the multi-objective optimization, there still exist the following technical challenges.

1. Basic PSO only deals with the problems in continuous space. However, the VN embedding problem is discretized.

2. Basic PSO only deals with single objective optimization problem. However, this thesis can solve the multi-objective VNE problems, i.e., minimizing the resource cost and the energy consumption at the same time.

3. Basic PSO is easy to be trapped into local optima, which significantly affects the performance of our algorithm.

In the following three subsections, we will address these challenges one by one.

### 4.2 Discrete PSO for VNE problems

The basic PSO cannot be directly applicable to the VNE problems, since the space of VNE problem is discrete. Through analyzing the characteristics of our problem, we have put forward a discrete approach for the node mapping stage in [11, 14]. The main idea of this approach is as follows.

Node mapping
**:** We marked the virtual nodes and substrate nodes; and then, we take the position of a particle denoted by \(X_{i}=({x_{i}^{1}},{x_{i}^{2}},\ldots,{x_{i}^{D}})\) as the solution of node mapping. The *i*th position of *X*
_{
i
} can be assumed as the solution of the virtual node *v*
_{
i
} mapping. That is, in this node mapping solution, the substrate node marked \({x_{i}^{1}}\) is the mapping result of the first virtual node, the substrate node marked \({x_{i}^{2}}\) is the mapping result of the second virtual node, and the substrate node marked \({x_{i}^{D}}\) is the mapping result of the *D*th virtual node.

Link mapping: We can also perform the link mapping in [11, 14] to compute *C*(*G*
_{v}) and *E*(*G*
_{v}). Then we take advantage of the fitness function which denoted by *C*(*G*
_{v}) and *E*(*G*
_{v}) for evaluating the quality of a particle. We also redefine the velocity and three operations for discrete PSO, including *subtraction* (⊖), *addition* (⊕), and *multiplication* (⊗). Please see details in [11, 14].

where *P*
_{i} stands for the inertia weight, *P*
_{c} stands for the cognition weight, and *P*
_{s} stands for the social weight. Generally, *P*
_{i}, *P*
_{c}, and *P*
_{s} meet the following constraints: 0<*P*
_{i}≤*P*
_{c}≤*P*
_{s}<1 and *P*
_{i}+*P*
_{c}+*P*
_{s}=1.

### 4.3 Aggregation strategy for fitness function

*f*, which is used to evaluate the quality of a particle, is usually a simple uni-objective function. To solve the multi-objective optimization problem, the most common approach is aggregation. In this approach, the core idea is that all the objectives are summed to a combination. The benefit of the aggregation is that the multi-objective optimization problem can be easily transformed into uni-objective optimization problem, which helps reduce the complexity of this problem. However, this approach cannot be directly applied in our context, since

*C*(

*G*

_{v}) and

*E*(

*G*

_{v}) denotes different performance metrics and they cannot be summed directly together. Towards this end, we first normalize these two metrics as follows.

Based on Eqs. 9 and 10, we then define our goal as follows:

Minimize *f*(*G*
_{v})=*α*
*C*(*G*
_{v})_{n}+(1−*α*)*E*(*G*
_{v})_{n}.

Here, *α*∈[0,1]. Note that, if this solution is infeasible, *C*(*G*
_{v})_{n}, *E*(*G*
_{v})_{n} and *f*(*G*
_{v}) will be set to +*∞* directly.

### 4.4 Niche PSO

In this subsection, we will introduce how to use niche PSO into our virtual network embedding problem. Firstly, we will discuss niche technology. As well as we know, basic PSO is suffering from local optimum. To avoid this problem to some extent, Brits et al. proposed niche PSO [19]. Generally speaking, niche PSO divides the whole searching space into several small subspaces. In each subspace, we use basic PSO algorithm concurrently and independently. Besides, the niche includes absorption and merge strategy. In virtual network embedding problems, some definitions need to be discussed firstly.

The center of a niche is the best solution within that niche.

*R*

_{i}of a niche

*I*is defined as:

where *X*
_{
ib
} is the best solution in *i*th niche, and *X*
_{
is
} is another common solution where *b*≠*s*. ||*X*
_{
ib
}−*X*
_{
is
}|| denotes the Euclidean distance between the two solutions which should be calculated as \(\sqrt {\sum \limits _{k = 1}^{n} {{{({X_{i{b_{k}}}} - {X_{i{s_{k}}}})}^{2}}} }\). Here, \(X_{ib_{k}}\) is the *k*th dimension of *X*
_{
ib
}. The same rule holds for \(X_{is_{k}}\).

where *X*
_{
ib
} is the best solution in niche *i*, *X*
_{
js
} is another solution which comes from niche *j*, and *R*
_{
i
} is the radius of niche *i*, which means when a particle move into the space of another niche, it will belong to the new niche.

where *X*
_{
ib
} and *X*
_{
jb
} are the best solutions of niche *i* and *j*, respectively, and ||*X*
_{
ib
}−*X*
_{
jb
}|| is the Euclidean distance between the two solutions. Here, *R*
_{
i
} and *R*
_{
j
} are radius of niche *i* and *j*, which means when two niche get close enough, they will become one niche.

### 4.5 Description of niche PSO

*G*

_{ s }and a VN request

*G*

_{ v }, and the output is the corresponding revenue- and energy-aware VN embedding solution. We first initialize

*M*particles as main particles. Then, we use basic PSO to train main particles. We hope to construct initial niches in this step. main particles, whose degree of change of fitness is smaller than

*S*will be regarded as the center of a niche. And the radius is the distance between the center and another closest solution. Then in each niche, we use basic PSO concurrently and independently with on iteration to train each particle. We update the fitness and radius of each niche and allow a niche to absorb particles into and different niches merge together. If the end criteria is met, output the VN embedding solution and stop. The details of this algorithm are presented in Algorithm 1 and Fig. 2. The Algorithm 2 gives the details of the basic PSO algorithm.

## 5 Performance evaluation

In this section, we compare our proposed algorithm known as MO-NPSO to the prior algorithms. In Subsection 5.1, we describe our simulation settings and present our evaluation results in Subsection 5.2.

### 5.1 Evaluation settings

Network topology: Similar to most of previous studies [1, 10–13, 15], we use the GT-ITM tool to generate the topologies of substrate network and virtual network. Similar to [12, 13], the SN topology contains 50 nodes and we initialize each of them to *inactive* state. For the capacity settings, the CPU capacity is uniformly distributed between 50 and 100, and the bandwidth is also uniformly distributed between 50 and 100. Between each pair of the substrate nodes, it have a probability of 0.5 to connect each other. The number of nodes in a VNR has the uniform distribution of *U*[2,10]. The average probability of link connectivity is also set to 0.5. We follow the literature [12], and each of virtual node’s CPU capacity requirement obeys to the uniform distribution of *U*[0,20], and each of virtual node’s bandwidth capacity requirement obeys the uniform distribution of *U*[0,50]. The process of VNR’s arrival can be simulated as a Poisson process, and its average arrival rate is set to 4 VNRs per 100 time units, and its residence time obeys to the exponential distribution with its average value to be 500 time units. To map a sequence of 2000 VN requests, our simulation may last for about 50,000 time units.

Parameter settings: The values of *P*
_{
b
} and *P*
_{
l
} are assigned to 165 and 1.5 W per CPU unit, respectively, following the previous work [20, 21]. The initial value of *α* is set to 0.5. Following the literature [11], the value of *M* is set to 5, and the threshold of maximum count of iteration is set to 30. According to our experiences, the initial values of *P*
_{i}, *P*
_{c}, and *P*
_{s} are set to 0.1, 0.2, and 0.7, respectively.

Performance metrics: We adopt the long-term average revenue and long-average energy cost as our main performance metrics. We also calculate the resource cost of SN and the quantity of active substrate nodes, aim to explain the reason of revenue and energy cost. In addition, the running time is also another important metric in the online VN embedding.

Compared algorithms

Notation | Algorithm description |
---|---|

MO-NPSO | The approach of multi-objective and meta-heuristic VNE which based on particle swarm optimization, aiming at both maximizing the revenues and minimizing the energy consumption. It adopts the adaptive weighted strategy. |

EA-PSO | An energy-aware VN embedding algorithm proposed in our previous work [14]. It is also based on particle swarm optimization. |

D-ViNE-SP | The single-objective VN embedding algorithm proposed in [12], aiming at maximizing the revenues by optimizing the resource cost. Take the shortest path algorithm to determine the link mapping solution after node mapping stage. |

### 5.2 Experimental results

We summarize our experimental results in terms of revenue comparison, energy comparison, and running time comparison.

The running time of compared algorithms

Algorithm | Running time |
---|---|

D-ViNE-SP | 4 s |

EA-PSO | 100 ms |

MO-NPSO | 110 ms |

## 6 Conclusions

Network virtualization is a promising technique with the purpose of overcoming the ossification of the Internet by means of supporting multiple VNs to cohabit on a shared substrate infrastructure. In the environment of network virtualization, VNE issue is proposed as one of the most important issues. In this paper, we put forward MO-NPSO algorithm to solve the multi-objective VNE problem by means of trading off the revenue and the energy cost. To be specific, we design an enhanced revenue and energy-aware VNE algorithm termed as MO-NPSO, by leveraging niche particle swarm optimization. Through extensive simulations, we prove the efficiency of our proposed algorithm.

In the future, we plan to focus on how to use path division to optimize the revenue and energy cost, and optimize energy cost while considering a variety of node types.

## Declarations

### Acknowledgements

This work was supported by the Shandong Provincial Natural Science Foundation, China (Grant No. ZR2014FQ018), the National Natural Science Foundation of China (Grant No. 61471056), China Jiangsu Future Internet Research Fund (Grant No. BY2013095-3-1), and BUPT Youth Research and Innovation Plan (Grant No. 2014RC0103).

### Competing interests

The authors declare that they have no competing interests.

**Open Access** This article is distributed under the terms of the Creative Commons Attribution 4.0 International License(http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.

## Authors’ Affiliations

## References

- M Yu, Y Yi, J Rexford, M Chiang, Rethinking virtual network embedding: substrate support for path splitting and migration. Acm Sigcomm Comput. Commun. Rev.
**38**(2), 17–29 (2008).View ArticleGoogle Scholar - NMMK Chowdhury, MR Rahman, R Boutaba, in
*INFOCOM*. Virtual network embedding with coordinated node and link mapping (IEEERio de Janeiro, 2009), pp. 783–791.Google Scholar - I Houidi, W Louati, D Zeghlache, in
*IEEE International Conference on Communications*. A distributed virtual network mapping algorithm (IEEEBeijing, 2008), pp. 5634–5640.Google Scholar - J Lischka, H Karl, in
*ACM Workshop on Virtualized Infrastructure Systems and Architectures*. A virtual network mapping algorithm based on subgraph isomorphism detection (ACMNew York, NY, USA, 2009), pp. 81–88.View ArticleGoogle Scholar - Y Zhu, M Ammar, in
*Infocom IEEE International Conference on Computer Communications*. Algorithms for Assigning Substrate Network Resources to Virtual Network Components (IEEEBarcelona, Spain, 2006), pp. 1–12.Google Scholar - J Lu, J Turner, Efficient Mapping of Virtual Networks onto a Shared Substrate. Washington University in St Louis. 35: (2006).Google Scholar
- J Fan, M Ammar, Dynamic topology configuration in service overlay networks: a study of reconfiguration policies. INFOCOM.
**2**(9), 1–12 (2006).Google Scholar - C Fang, FR Yu, T Huang, J Liu, Y Liu, A survey of green information-centric networking: research issues and challenges. Commun. Surveys Tuts.
**17**(3), 1455–1472 (2015).View ArticleGoogle Scholar - C Fang, FR Yu, T Huang, J Liu, Y Liu, A survey of energy-efficient caching in information-centric networking. IEEE Commun. Mag.
**52**(11), 122–129 (2014).View ArticleGoogle Scholar - X Cheng, S Su, Z Zhang, H Wang, F Yang, Y Luo, J Wang, Virtual network embedding through topology-aware node ranking. ACM SIGCOMM Comput. Commun. Rev.
**41**(2), 39–47 (2011).View ArticleGoogle Scholar - X Cheng, S Su, Z Zhang, K Shuang, F Yang, Y Luo, J Wang, Virtual network embedding through topology awareness and optimization. Comput. Netw.
**56**(6), 1797–1813 (2012).View ArticleGoogle Scholar - NMMK Chowdhury, MR Rahman, R Boutaba, ViNEYard: Virtual network embedding algorithms with coordinated node and link mapping. IEEE/ACM Trans. Netw.
**20**(1), 206–219 (2012).View ArticleGoogle Scholar - S Su, Z Zhang, X Cheng, Y Wang, Y Luo, J Wang, in
*Computer Communications Workshops (INFOCOM WKSHPS), 2012 IEEE Conference on*. Energy-aware virtual network embedding through consolidation (IEEEOrlando, FL, 2012), pp. 127–132.Google Scholar - S Su, Z Zhang, AX Liu, X Cheng, Y Wang, X Zhao, Energy-aware virtual network embedding. IEEE Trans. Netw.
**22**(5), 1607–1620 (2014).View ArticleGoogle Scholar - Z Zhang, X Cheng, S Su, Y Wang, K Shuang, Y Luo, A unified enhanced particle swarm optimization-based virtual network embedding algorithm. Int. J. Commun. Syst.
**26**(8), 1054–1073 (2013).View ArticleGoogle Scholar - JF Botero, X Hesselbach, M Duelli, D Schlosser, A Fischer, H de Meer, Energy efficient virtual network embedding. IEEE Commun. Lett.
**16**(5), 756–759 (2012).View ArticleGoogle Scholar - P Bajpai, SN Singh, Fuzzy adaptive particle swarm optimization for bidding strategy in uniform price spot market. Power Syst. IEEE Trans.
**22**(4), 2152–2160 (2007).View ArticleGoogle Scholar - J Kennedy, RC Eberhart, et al, in
*Proceedings of IEEE international conference on neural networks, volume 4*. Particle swarm optimization (PerthAustralia, 1995), pp. 1942–1948.View ArticleGoogle Scholar - R Brits, AP Engelbrecht, F Van den Bergh, in
*Proceedings of the 4th Asia-Pacific conference on simulated evolution and learning, volume 2*. A niching particle swarm optimizer (SingaporeOrchid Country Club, 2002), pp. 692–696.Google Scholar - LA Barroso, U Hölzle, The datacenter as a computer: an introduction to the design of warehouse-scale machines. Synth. Lectures Comput. Arch.
**4**(1), 1–108 (2009).MathSciNetView ArticleGoogle Scholar - G Lu, C Guo, Y Li, Z Zhou, T Yuan, H Wu, Y Xiong, R Gao, Y Zhang, in
*Proceedings of the 8th USENIX conference on Networked systems design and implementation*. Serverswitch: A programmable and high performance platform for data center networks (USENIX AssociationCA, USA, 2011).Google Scholar - GNU Linear Programming Kit, http://www.gnu.org/software/glpk/.