Memetic Multi-Objective Particle Swarm Optimization-Based Energy-Aware Virtual Network Embedding

In cloud infrastructure, accommodating multiple virtual networks on a single physical network reduces power consumed by physical resources and minimizes cost of operating cloud data centers. However, mapping multiple virtual network resources to physical network components, called virtual network embedding (VNE), is known to be NP-hard. With considering energy efficiency, the problem becomes more complicated. In this paper, we model energy-aware virtual network embedding, devise metrics for evaluating performance of energy aware virtual network-embedding algorithms, and propose an energy aware virtual network-embedding algorithm based on multi-objective particle swarm optimization augmented with local search to speed up convergence of the proposed algorithm and improve solutions quality. Performance of the proposed algorithm is evaluated and compared with existing algorithms using extensive simulations, which show that the proposed algorithm improves virtual network embedding by increasing revenue and decreasing energy consumption.


INTRODUCTION
Cloud computing is a model for enabling on-demand network access to a shared pool of configurable computing resources that can be rapidly provisioned and released with minimal management effort [1]. Cloud computing data centers are established as large-scale data centers containing thousands of servers, switches, and routers that consume enormous amounts of electrical energy and release CO 2 .
One of the most prominent approaches to address energy inefficiency is to leverage the capabilities of the virtualization technology, which allows creation of multiple Virtual networks on a single physical network [2]. However, mapping virtual resources to physical resources is known to be nondeterministic polynomial-time hard (NP-hard), even if energy efficiency is not considered.
Main objectives of energy-aware virtual network embedding are increasing revenue of substrate network and decreasing power consumed by substrate resources. Revenue can be maximized by increasing number of accommodated virtual networks and decreasing cost of embedding each virtual network. Number of accepted and accommodated virtual networks can be increased by using suitable search technique to find sub-substrate network for accommodating virtual network in reasonable time, regardless of virtual network size or substrate network size. Furthermore, number of accepted virtual networks can be increased by reducing substrate resources fragmentation. Substrate resources are considered fragmented if there are enough substrate resources to achieve virtual network request but virtual network request is rejected due to substrate resources scattering.
Virtual network embedding cost is the total substrate resources used to achieve virtual network request. Virtual network embedding solution maps each virtual node to a substrate node and each virtual link to a loop-free substrate path, which is consists of a set of substrate links. Fig. 1 shows an example of virtual network embedding. The cost of embedding virtual network can be minimized by decreasing number of required substrate links. This can be done by minimizing the length of required substrate paths or by accommodating more than one virtual node from the same virtual network on the same substrate node to eliminate the cost of embedding virtual links between them.
Power consumed by substrate network can be reduced by minimizing number of substrate nodes that are turned on from off to accommodate virtual node or to participate in substrate path. Furthermore, power can be minimized by selecting substrate nodes that have less power consumption. As shown in Fig. 2, different types of servers have different power consumption rates. Proposing energy-aware virtual network embedding with considering all of the above concerns is a very complicated task.
Multi-objective Particle Swarm Optimization (MOPSO) is a heuristic search technique for optimizing multi-objective optimization problems, which have more than one objective function, such as energy-aware virtual network embedding problem. In such problems, there is no single optimal solution.
In this paper, we propose a model for energy-aware virtual network embedding, devise an energy-aware virtual network embedding metrics to compare different algorithms, and propose memetic multi-objective particle swarm optimizationbased energy-aware virtual network embedding algorithm, called MOPSO-EVNE. Performance of the proposed algorithm have been evaluated using extensive simulations, which show that the proposed algorithm increases the long-term average revenue and decreases the power consumption compared with some of existing algorithms.
The remaining of the paper is organized as follows. Section 2 introduces the fundamentals of the proposed algorithm. In Section 3, we discuss the related work on energy-aware virtual network embedding problem. Section 4 presents the virtual network embedding model and problem formulation. Section 5 describes the proposed algorithm. Section 6 evaluates the proposed energy aware virtual network-embedding algorithm using extensive simulations. Finally, in Section 7 we conclude this paper.

A. Particle swarm optimization
Particle swarm optimization (PSO) is a population-based stochastic global optimization technique first proposed by Kennedy and Eberhart in 1995 [3]. PSO is inspired by the sociological behavior associated with bird flocking or fish schooling. PSO searches for a possible solution in multiple areas simultaneously and can obtain better optimal solution quickly in lesser computing time than other population based methods. PSO algorithm simultaneously maintains a number of particles, which represent candidate solutions in the search space.
Each particle has position vector and velocity vector, which can be represented as: = , , . . , and = , , . . , , where is the position of particle at time , is the velocity of particle at time , and is the dimensions of the solution space. The position and velocity of each particle are updated using the following equations: Where and are two random numbers between 0 and 1. The constants w, c , and c 0 ≤ w ≤ 1.2, 0 ≤ c ≤ 2, and 0 ≤ c ≤ 2 are specified by user. pBest t is the best previous position for the particle i at time t and is known as the personal best position. gBest t is the best position among all previous personal best positions at time t and is known as the global best position. The constant w is called inertia weight and the first term wV t is called inertia component, which keeps the particle moving forwarding. The constant c is called cognitive weight and the first term c r pBest t − X t is called cognitive component, which represents the attraction that a particle has toward its best previous position. The constant c is called social weight and the first term c r gBest t − X t is called social component, which represents the attraction that a particle has toward the global best position. The random numbers r and r cause the particle to move in a semi-random manner.

Definition 5 (Pareto optimal set).
The set of all Pareto optimal decision vectors is called Pareto optimal set and is denoted by L * .

C. Multi-objective particle swarm optimization
In multi-objective PSO (MOPSO), instead of finding single solution (global best solution), we aim to find a Pareto optimal set, which will be stored in an external repository, called external archive [5]. Instead of using global best solution to guide other solutions, Pareto optimal is selected from the external archive to guide each particle.

III. RELATED WORK
In the past few years, several researches have been proposed for effective virtual network embedding and energyaware virtual network embedding. Rodriguez et al. [6] proposed an integer linear programming model for VNE problem to minimize energy and bandwidth consumption. Rodriguez et al. assigned variant weight values to balance minimization of energy and bandwidth consumption. Their simulation results showed that considering energy consumption minimization only could extremely increase bandwidth consumption and decrease the quality of service; while assigning equal weights to both consumptions minimizes the energy consumption near to optimal solution without significantly increase the bandwidth consumption.
Tarutani et al. [7] studied the energy consumption of the data centers network, which are constructed of optical cross connects and electronic switches (called top-of rack). Tarutani et al. proposed a virtual network topology called Generalized Flattened Butterfly to achieve sufficient bandwidth and to minimize the energy consumption. The energy consumption is minimized by reducing the number of ports of electronic switches used in the virtual network topology. Sun et al. [8] modeled the energy-aware VNE problem using mixed-integer programming and proposed a heuristic algorithm to solve the proposed model with efficient power consumption and with minimal violation of service level agreements (SLAs). The proposed algorithm minimizes the energy consumption by consolidating virtual network resources into few substrate resources as possible.
Chang et al. [9] proposed virtual network architecture with virtual network components such as routers and switches. The proposed architecture provides communication functions for virtual resources in Cloud data centers. The authors designed an energy aware routing algorithm for the proposed architecture.
Fischer et al. [10] extended the VNE algorithm proposed by Lischka and Karl in [11] to be energy-aware VNE algorithm. Fischer et al. minimized energy consumption by allowing more than one virtual node from the same virtual network to coexist on the same substrate node. Furthermore, Fischer et al. considered active nodes and nodes that consume less power during node and link mapping to minimize energy consumption.
Beloglazov et al. [12,13] studied the single VM migration and dynamic VM consolidation problems and they proved the competitive ratios of optimal online deterministic algorithms for energy and performance efficient dynamic VM consolidation. Beloglazov et al. proposed heuristic algorithms for dynamic adaption of VM allocation at run-time based on an analysis of historical data on the resource usage. However, the proposed algorithms do not consider the communication between VMs in allocating or in reallocating VMs.
Cheng et al. [14] proposed topology-aware node ranking technique, called NodeRank, to reflect the topological structure of the VNs and the SN. Based on the proposed ranking technique, Cheng et al. proposed two stage virtual network embedding algorithm called RW-MaxMatch. However, mapping nodes and links in two independent stages without coordination between them leads to high consumption of the underlying SN's resources. To solve this problem, Cheng et al. [14] proposed RW-BFS algorithm. RW-BFS algorithm is a backtracking one-stage VN embedding algorithm, which maps nodes and links at the same stage.
Zhang et al. [15] proposed two VN embedding models: an integer linear programming model and a mixed integerprogramming model. Furthermore, Zhang et al. proposed a discrete particle swarm optimization based VNE algorithm, called RW-PSO, to solve the proposed models. RW-PSO algorithm is an enhanced version of RW-MaxMatch [15] algorithm to find near optimal node mapping solutions in large-scale substrate networks. After nodes mapping, Zhang et al. map links using shortest paths algorithm and greedy kshortest paths algorithm. Cheng et al. [16] proposed discrete Particle Swarm Optimization based virtual network embedding algorithm similar to the proposed algorithm in [15] but they ranked nodes using topology-aware node ranking technique proposed in [14].
Su et al. [17] formulated an energy consumption model for substrate network infrastructures and proposed an extended www.ijacsa.thesai.org version of RW-BFS [14] algorithm, called EA-VNE, for energy-aware virtual network embedding. Su [18,19], we modeled the substrate network as a weighted undirected graph P Q = R Q , S Q , where R Q is the set of substrate nodes and S Q is the set of substrate links. Each substrate node Q ∈ R Q is weighted by the CPU capacity, and each substrate link T Q ∈ S Q is weighted by the bandwidth capacity. Fig. 1(b) shows a simple SN example, where the available CPU resources are represented by numbers in rectangles and the available bandwidths are represented by numbers over the links.
Virtual network (VN): virtual network R is modeled as a weighted undirected graph P U V = R U V , S U V , where R U V is the set of virtual nodes and S U V is the set of virtual links. Virtual nodes and virtual links are weighted by the required CPU and bandwidth, respectively. Fig. 1(a) shows an example of VN with required CPU and bandwidth.

Virtual network requests (VNR
Where f]g U V is the required CPU for the virtual node U V , ij T U V is the required bandwidth for the virtual link T U V , and S -d , = 1 if is in its lifetime and substrate resources are allocated to it, otherwise S -d P U V , = 0. Substrate resources fragmentation (SNF): substrate resources fragmentation is one of the most important factors that have high impact on VNE revenue and cost. Substrate resources are considered fragmented if there are enough substrate resources to embed VN but the available substrate resources are scattered. VNR will be rejected, because it cannot be allocated to connected substrate resources while there are sufficient substrate resources to achieve this VNR.
Substrate network is considered fragmented if there are two sub-graphs P Q V , P Q k ⊂ P Q , such that R Q V ∩ R Q k = ∅ and ∄ 4 J Q ∈ ] J Q connects two substrate nodes from R Q V and R Q k , where ] J Q is the set of all loop free substrate paths in G a that have available bandwidth greater than or equal a pre-specified lower bound bandwidth and have path length less than or equal a pre-specified maximum path length.
To measure substrate network fragmentation (SNF) at time , we use the following formula: Where 2 is the number of fragments in the SN, q is a positive integer number greater than 1 to reduce the influence of the small negligible fragments as long as one large fragment exits, and Yd| }~_T P Q V , is the total residual substrate resources in sub-substrate network P Q k at time . Yd| }~_T P Q V , is calculated as following: Where P Q V = R Q V , S Q V The substrate network fragmentation formula in equation (1) is inspired by the fragmentation measure proposed by Gehr and Schneider in [20].
Virtual Network Embedding Cost: as in [18,19], the cost of embedding at time is defined as the sum of all allocated substrate CPU and substrate bandwidth to at time .
Where Sd 0 ℎ \ c h V T U V is the length of the substrate path that the virtual link T U V is mapped to.
Power consumption modeling: Substrate nodes are turned on from off to accommodate virtual nodes or to work as intermediate nodes in substrate paths. Recently, there is a new trend to deploy routing cards in data center networks to function as IP routers. Like commercial routers, routing cards handles all packet-processing tasks in hardware with high processing rate and low latency. The power consumption of the routing cards is nearly constant. As shown in [21], fully loading routing card increases its power consumption by around 5% over being idle. As any PCI-based cards, routing card has two states: enabled state, which consumes constant power, denoted by ] † , and disabled state, which does not consume any power. www.ijacsa.thesai.org To model power consumed by substrate nodes to accommodate virtual nodes, we studied the power consumption rates of different types of servers, which are collected using SPEC power benchmark 1 and is depicted in Fig. 2. Fig. 2 shows that each server has a baseline power, which is the power consumed in idle state, and the remaining power consumption is proportional to CPU utilization. Now, we can model the power consumed by an active substrate node Q at time as: ] ‡ Q , = ]ˆ Q + ] ‰ Q − ]ˆ Q . f]g Q , + ] † Q . Y…~ 0 QWZWq Q Where ]ˆ Q is the baseline power of the substrate node Q , ] ‰ Q is the maximum power consumption for the substrate node Q , f]g Q , is the total CPU utilization for the substrate node Q at time , ] † Q is the power consumed by active routing card, and Y…~ 0 QWZWq Q is equal to 1 if the routing card is enabled and equal to 0 if the routing card is disabled.
Total power consumed by substrate network at time t is defined as the sum of all power consumed by all substrate nodes at time t.
Power consumption to accommodate virtual node U in substrate node Q can be calculated as following: Where n _ d Q , is the state of substrate node Q at time t. n _ d Q , equal to 1 if Q is on and equal to 0 if Q is off. f]g U is the required CPU for the virtual node U .
Power consumption to embed virtual link T U on substrate path 4_ ℎ Q can be calculated as following: Where ]R Q is the set of all substrate nodes participate in substrate path 4_ ℎ Q .
Total power consumption to embed virtual network request at time is defined as the sum of all power consumption to embed its virtual nodes and virtual links.
Objectives: the main objectives are to increase the revenue of VNE, decrease the cost of VNE, decrease the power consumed by substrate nodes, and decrease substrate resources fragmentation in the long run. To evaluate the achievement of these objectives, we use the following metrics: -The long-term average revenue, which is defined by Where ™ =∥ RY ∥, and › is the total time.
-The VNR acceptance ratio, which is defined by Where RY Q is the set of all accepted virtual network requests.
-The long term R/Cost ratio, which is defined by -The long-term average substrate network fragmentation, which is defined by The long-term average substrate network power consumption, which is defined by

V. THE PROPOSED ALGORITHM
In this section, we redefine the parameters and operations of the particles in PSO and describe the details of the proposed MOPSO-EVNE algorithm

A. Redefining PSO particles operations
We redefined the parameters and operations of the particles in PSO as following:

Position
(X): the position vector = , , . . , of a particle i at time t represents virtual node mappings of a VNE solution. is the number of virtual nodes in the virtual network. All virtual nodes and substrate nodes are ordered and each node has an order number. ‰ is the order number of substrate node that contains virtual node with order number 2.
‰ is a substrate path specifies a sequence of substrate nodes in which a virtual node with the order number 2 will be mapped to. , .. ‰ . . , , and + 1 = + 1 , + 1 , . . , ‰ + 1 , . . , + 1 indicates that the virtual node number 2, which is currently mapped to the substrate node number ‰ , will be mapped to the first substrate node in the substrate path ‰ + 1 with enough CPU. If substrate node number ‰ already participates in the substrate path ‰ + 1 , the virtual node number 2 will be mapped to the first substrate node after the substrate node number ‰ with enough CPU if found.
Finally, position and velocity updating equations are redefined as following: Where + + = 1 , and [qZrq † t is the position vector of the particle (VNE solution) that is used to guide another particle towards better areas in the solution space. According to the redefined operations, pBest t ⊝ is a set of substrate paths from current position to the personal best position pBest t , and [qZrq † t ⊝ is a set of substrate paths from current position to the leader position [qZrq † t . As a result, + 1 is a set of substrate paths that guide particle to its personal best position or to position of Pareto optimal solution.The multiplication operation in equation (11) moves each dimension in the position vector one step toward personal best position or toward Pareto optimal solution.

B. MOPSO-EVNE algorithm
The steps of the proposed multi-objective particle swarm optimization energy aware virtual network-embedding algorithm (MOPSO-EVNE), are shown in Algorithm 1.
Particle swarm n is initialized by collecting a set of VNE feasible solutions. MOPSO-EVNE algorithm initializes n by creating a candidate substrate node list for the virtual node with the largest resources. Candidate substrate nodes list is created by collecting all substrate nodes with enough resources to embed virtual node. Candidate substrate nodes list is sorted in ascending order according to the power consumption rate for each node. Active substrate nodes with lower power consumption are selected first before activating inactive nodes. MOPSO-EVNE visits candidate substrate nodes in the created list sequentially and maps virtual network (starting from the virtual node with the largest resources). Virtual link mappings are performed during the node mapping process in breadth-first search manner to find shortest loop free substrate path with minimum number of activated substrate nodes. MOPSO-EVNE algorithm incrementally increases the maximum allowed substrate path length to visit large number of candidate substrate nodes and maximize the spread of solutions found.
If the f d_ d_Rd _]_ Td function failed in creating new VNE feasible solution from the current candidate substrate node, we move to the next candidate node. After initializing particle swarm n , each position vector for each particle is improved by using ™24 … d , which applies local search. Each dimension in the particle position vector is remapped to another substrate node, if this mapping improves position vector. New substrate node is specified by creating breadth first search trees from all substrate nodes contains neighbor of the current virtual node. All trees are increased concurrently and the first common substrate node is used as optimization position. Dimensions in the particle position are visited in a round robin fashion until no further improves are reached.
In line 29, each particle position vector is evaluated using objective functions specified by equations 1, 2, 3, and 4. Velocity vectors are initialized randomly for each particle. In line 30, n is sorted into a hierarchy of non-dominated Pareto fronts by applying Fast Nondominated Sorting approach proposed in [22]. Each particle is assigned a rank value based on its dominance level and crowding distance value.
External archive EA t is used to keep the nondominated solutions found during the search process. External archive solutions will be used as leaders to update velocity vectors of the particles of the swarm. Furthermore, the final output of the MOPSO-EVNE algorithm will be selected from the solutions contained in external archive. In line 32, initial external archive EA t is created and the non-dominated solution of the particle swarm S t are copied into the external archive EA t .
Lines from 33 to 47 describe details of each iteration. In each iteration, one of the non-dominated particles is selected from «¬ to be used as leader. Velocity vector and position vector are updated using equations (10) and (11).To avoid swarm stagnation, position vector is mutated with mutation probability 4 … ‰sW . Without mutation, the proposed algorithm might stop or converge to a local optimum. Mutation is performed by remapping mutated dimension in the position vector to substrate node with enough substrate resources. Virtual links are remapped without considering the maximum substrate path length. ™24 … d function is used to optimize the new position vector to become visible solution. Each particle is evaluated using objective functions and its pBest is updated accordingly.
At the end of each iteration, external archive EA t must be updated to add new non-dominated solutions found during this iteration. Solutions in external archive EA t are combined with the updated solutions in swarm S t + 1 , sorted into non-dominated Pareto fronts, and sorted in descending order according to their Crowding-distance values. External archive EA t + 1 is updated by selecting the first EA -ƒ®¯ °€ solutions.
After a certain number of iterations, the MOPSO-EVNE algorithm selects best Pareto optimal front from the external archive EA t and returns it as suggested solution. www.ijacsa.thesai.org

VI. PERFORMANCE EVALUATION
To evaluate the performance of the proposed algorithm, we have compared its performance with the following algorithms: RW-MaxMatch [16], RW-BFS [14], AdvSubgraph-MM [10], AdvSubgraph-MM-EE [10], and AdvSubgraph-MM-EE-Link [10]. In the following subsections, we describe the evaluation environment settings and discuss the simulations' results.

A. Evaluation environment settings
Performance is evaluated using two substrate network topologies, which are generated using Waxman generator. The first SN topology is configured with 50 nodes and 250 links. Bandwidth of the substrate links are uniformly distributed between 50 and 100 with average 75. The second SN topology is configured with 200 nodes and 1000 links. Bandwidth of the substrate links are uniformly distributed between 50 and 150 with average 100. Each substrate node is randomly assigned one of the following server configurations: HP ProLiant ML110 G4 (Intel Xeon 3040, 2 cores X 1860 MHz, 4 GB), or HP ProLiant ML110 G5 (Intel Xeon 3075, 2 cores X 2660 MHz, 4 GB).
We generated 1000 Virtual network topologies using Waxman generator with average connectivity 50%. The number of virtual nodes in each VN is variant from 2 to 20. Each virtual node is randomly assigned one of the following CPU: 2500 MIPS, 2000 MIPS, 1000 MIPS, and 500 MIPS, which are correspond to the CPU of Amazon EC2 instance types. Bandwidths of the virtual links are real numbers uniformly distributed between 1 and 50. VN's arrival times are generated randomly with arrival rate 10 VNs per 100 time units. The lifetimes of the VNRs are generated randomly between 300 and 700 time units with average 500 time units. Generated SN and VNs topologies are stored in brite format and used as inputs for all algorithms. For all algorithms, we set the maximum allowed hops (±…4| ²Z³ ) to 2, and the upper bound of remapping process (\_ _´_ : _ :) to 3n, where n is the number of nodes in each VNR. ™ d _ … | ²Z³ and Swarm¯ °€ of the MOPSO-EVNE algorithm are set to 5 and 10. Finally, we compared the results from the implemented algorithms.  (3), and (4) 30: Initialize the velocity vector randomly for each particle 31: Sort swarm S t into different non-domination levels. 32: create and ini'alize external archive «¬ with nondominated particles in S t 33: while < ™ d _ … | ²Z³ 34: for each particle p in n 35: Randomly select a single leader out of «¬ 36: Update the particle's velocity vector and the position vector using equa'ons (10) and (11). 37: Perform mutation on particle p with the mutation probability 4 … ‰sW 38: locally improve the particle p

B. Evaluation results
MOPSO-EVNE algorithm increases VNR acceptance ratio as shown in Fig. 3 and Fig. 4. Fig. 3 shows the VNR acceptance ratio comparison using the first substrate network, which is configured with 50 substrate nodes and 250 virtual links. Fig. 4 shows the VNR acceptance ratio comparison using the second substrate network, which is configured with 200 substrate nodes and 1000 virtual links. AdvSubgraph-MM, AdvSubgraph-MM-EE, and AdvSubgraph-MM-EE-Link are not compared using the second substrate network (200 nodes) because they have high complexity (require more than one month).
VNR acceptance ratio is evaluated using equation (6), which only considers the number of accepted VNRs without considering variations between VNRs' sizes. In Fig. 5 and Fig.  6, we compared the ratio of accepted virtual resources (virtual CPU and virtual BW) without considering its VNRs.
Although, MOPSO-EVNE algorithm increases the acceptance ratio among other algorithms, it rejects 81% and 33% of virtual resources ( Fig. 7 and Fig. 8). The reason behind this rejection is the lack of available substrate resources ( Fig. 9 and Fig. 10), especially the lack of available substrate CPU ( Fig. 11 and Fig. 12).
MOPSO-EVNE algorithm increases the long-term average revenue, which is defined by equation (5) (Fig. 13 and Fig. 14). As shown in Fig. 15 and Fig. 16, MOPSO-EVNE algorithm increases the revenue compared with the cost of embedding VNRs. In Fig. 15, revenue/cost ratio of MOPSO-EVNE algorithm exceeds 100%, which means that the cost of embedding VNRs is less than gained revenue from embedding them. MOPSO-EVNE algorithm increases the revenue by increasing substrate resource utilization ( Fig. 17 and Fig. 18) and reducing substrate resources fragmentation (Fig. 19), which is defined by equation 8.
The long-term average substrate network power consumption is compared and depicted in Fig. 20 and Fig. 21. Fig. 20 and Fig. 21 show that MOPSO-EVNE algorithm consumes more power, but this is due to the large amount of accommodated virtual resources. To investigate this point, we compared the power consumed by accommodating one unit of virtual resources. Fig. 22 and Fig. 23 show the comparison results. RW-MaxMatch algorithm is removed from Fig. 22 because it has a very high power consumption rate. Although, MOPSO-EVNE algorithm activated more substrate nodes to achieve more VNRs (Fig. 24 and Fig. 25), the power consumption rate of the proposed algorithm is similar to the power consumption rate of the AdvSubgraph-MM-EE-Link algorithm using small substrate network. However, AdvSubgraph-MM-EE-Link algorithm is not applicable to large substrate networks.
Although, we run our simulation with small size of particle swarm (10 particles) and with small number of iterations (5 iterations), MOPSO-EVNE algorithm increases the revenue and the acceptance ratio in reasonable time. Fig. 26 and Fig. 27 show the average VNE time consumed by each algorithm.   Embedding multiple virtual networks on a shared substrate network is NP-hard. This complexity is increased by considering energy efficiency of virtual network embedding. In this paper, we modeled energy-aware virtual network embedding problem and proposed an efficient energy aware virtual network-embedding algorithm based on multi-objective particle swarm optimization. The proposed algorithm aims to find good "tradeoff" virtual network embedding solutions that represent the best possible compromises among virtual network embedding revenue, cost, fragmentation, acceptance, and power consumption. Local search is employed to enhance position vector of each particle and to speed up the convergence of the proposed algorithm. Elitism is insured by storing best non-dominated virtual network embedding solutions into external archive. Extensive simulations show that the proposed algorithm outperforms previous algorithms in terms of the long-term average revenue, long-term average cost, long-term average substrate resources fragmentation, and long-term average power consumption. For the future work, we plan to extend the proposed algorithm to consider variant workload and employ virtual machine migration and virtual link migration to enhance energy efficiency of the proposed algorithm.