Abstract
Wireless sensor networks are evolving with increasingly device heterogeneity, while the problem of effectively composing the platform-specific functionalities provided by heterogeneous sensor nodes to achieve specific goals still remains a challenge. Because of the constrained resources and unreliable communication in sensor networks, traditional service composition techniques in web services with adequate resources are insufficient. In this paper, focusing on the limited energy of sensor nodes, we propose an energy-aware service composition framework for developing various applications in heterogeneous wireless sensor networks. With both the energy-aware metrics: energy-aware load-balancing factor and overall energy consumption, we formulate the process of energy-aware sensor service composition into a combinatorial optimization problem; furthermore, an improved discrete particle swarm optimization (IDPSO) algorithm with inertia weights adjustment and extreme perturbation scheme is proposed to solve the combinatorial optimization problem. The experiment results have shown that the performance of the service route given by IDPSO is approximately equal to the best service route searched out by the exhaustive algorithm. Meanwhile, our proposed energy-aware service composition method is able to reduce the energy consumption and prolong the lifetime of the sensor network when providing stable service composition for various applications.
1. Introduction
In recent years, wireless sensor networks (WSNs) are evolving with new features such as larger scale, higher device heterogeneity and the capability of supporting multiple applications [1]. For example, a WSN deployed for intelligent buildings contains a variety of different sensors, for example, video, audio, temperature, humidity, smoke, and light sensors, and it should be able to support video surveillance, accident location and tracking, environmental monitoring, and other applications. For example, as is shown in Figure 1, the target identification and tracking application is provided by combining acoustic sensing, target localization, target identification, and camera-based target tracking functionalities. In such environments, the device heterogeneity presents a great challenge for application programmers because it requires them to master the details of the underlying software and hardware platform [2, 3]. In order to develop diverse applications rapidly and efficiently, it is really necessary to provide programmers with adequate abstractions of the low-level platform-specific software and hardware details.

Collaboration among heterogeneous nodes for an application.
Existing service-oriented architecture (SOA) [4–6] has been considered as a promising means to provide higher level abstraction for the development of applications, and it helps enable applications to be platform-independent and adapt to network dynamics. Among the SOA technologies, service composition, that is, the process through which kinds of complex applications are developed by composing a set of primitive services with various restrictions (e.g., QoS [7], fault-tolerant [8]), has been well studied in the context of web services.
Service composition in wireless sensor networks is faced with more difficulties and has gradually gained attention. The existing service models and composition techniques for web services have limitations when directly applied to wireless sensor networks. The main reason is that the software-based web services are often supported with adequate resources. However, the service capabilities of the heterogeneous sensor nodes are affected by their intrinsic properties, such as the limited and dynamic computational ability, power supply, and residual memory and communication bandwidth. Meanwhile, too many service invocations in the same node will easily cause excessive computation and storage usage, energy consumption, and network traffic. More seriously, it will exhaust the battery of the involved service nodes and then create the energy holes that split the network into isolated islands. Therefore, it is critical to bind service requests to sensor nodes according to their available resources and current service load.
Considering that the network lifetime and energy spent at the node and system level are much important in WSNs, the objective of the work presented herein is to propose an energy-aware service composition framework for sensor services in the service-oriented heterogeneous wireless sensor networks.
With this service-oriented approach, nodes’ sensing, data processing and transmission, and actuation capabilities are encapsulated as a collection of services. Conceptually, a service provided by a sensor node can be understood as a computational component that inherits the specific contexts of the related physical node. Meanwhile, a service can be provided by multiple different sensor nodes, although each service implementation may have different spatial, temporal, and QoS characteristics.
Then, based on resolving the application request into a workflow graph, we are able to develop new applications rapidly by combining a suitable set of available service nodes with service composition. Here, the process of choosing the appropriate set of service nodes is called service routing. Within the process of service routing, not only the service functionalities provided by the candidate node is concerned, but also its available energy is checked. We have exploited two different energy-aware metrics: energy-aware load-balancing factor and overall energy consumption. Based on both the metrics, we formulate the process of energy-aware sensor service routing into a combinatorial optimization problem. Considering that the traditional exhaustive algorithm suffers from the high computational complexity, we then propose an improved discrete particle swarm optimization algorithm to compute the optimal service route. In summary, we make the following contributions.
In Section 3, we provide a framework to model the problem of energy-aware sensor service composition for developing sensor network applications. In order to optimize for the energy balance and total energy minimization goals, we formulate the energy-aware sensor service composition process as a combinatorial optimization problem. To deal with the high computational complexity of exhaustive algorithm, we propose an improved discrete particle swarm optimization algorithm to find out the approximately optimal service route effectively.
With our proposed methods, the workload of the service nodes is well balanced and the total energy cost is minimized as much as possible. Therefore, our proposal is able to reduce the energy consumption and prolong the lifetime of the sensor network when providing stable service composition for various applications.
2. Related Works
In recent years, service composition for pervasive computing such as distributed real-time system, MANETs, CPSs, and WSNs has been received more and more attention. In this section, we will discuss the related works on modeling and composition of services in these systems.
2.1. Related Works of Service Composition for Pervasive Computing
Excepting for web services, service composition for pervasive computing has also been the subject of intense study over the past several years. Brønsted et al. [9] discussed that service composition mechanisms for pervasive computing should address the following four goals including context awareness, managing contingencies, leveraging heterogeneous devices, and empowering users. Their analysis suggests that there are indeed opportunities and reasons to focus on service composition for pervasive computing. The work of Kalasapur et al. [10] presented a dynamic service composition mechanism in pervasive computing. They modeled and represented resources as services, maintained a repository of service graphs, and dynamically combined multiple basic services into complex services. However, the scheme of context-aware (e.g., residual energy and location) service selection for dependable service composition was not deeply studied in this paper.
The work of Estévez-Ayres et al. [11] presented a model for QoS-aware service composition in distributed systems with real-time and fault-tolerance requirements. However, they selected out the appropriate service nodes mainly based on their QoS properties, but it is not enough for dependable service provision in WSNs. The work developed by Wang [12] studied a dependable service composition problem in MANET. They proposed to achieve dependable service composition by taking the mobility prediction of the service providers into consideration. The work of Jiang et al. [13] proposed a new service composition and recovery framework designed to achieve minimum service disruptions for mobile ad hoc networks. However, the common WSNs do not have the mobility characteristics; moreover, energy issues should be more important for service composition because of the fewer available resources in sensor nodes.
In [14], the authors proposed OSGi-based service architecture for Cyber-Physical Home Control Systems, which supports service-oriented control methods. Users can control appliances in the physical environment by intuitive operation through a virtual home on the network. In [15], Huang et al. developed an ontology model for physical entity specification. Based on this model, OWL-S is extended to accurately model the characteristics of service providers in the context of cyber-physical worlds. These proposed SOAs in CPS are helpful for our studies in WSNs; however, the WS standards such as OWL and XML exploited in CPS are too much complex for the low-capacity sensor nodes.
2.2. Related Works of Service Composition for WSNs
In recent years, some researchers have begun to focus on service composition for service-oriented wireless sensor networks. In order to handle the device heterogeneity, some kinds of service-oriented architectures and middleware have been proposed for a flexible service provision. In [5], the authors presented a service-centric WSN model, which focused on services provided by a WSN and viewed a WSN as a service provider. In [6], the authors presented a service-oriented, flexible, and adaptable middleware for QoS configuration and management of wireless sensor networks. Both proposed service-oriented models are meaningful for our studies; however, no details on automated service composition are studied in them.
Amundson et al. [16] have developed OASiS, which is an object-centric, service-oriented programming model and middleware for ambient-aware sensor network applications; however, it did not include automated composition with cost measures. In [17], the authors introduced the WSN-SOA suite which enables SOA-based communications in networks of low-capacity sensors. Service-oriented middleware TinySOA [18] allows programmers to access wireless sensor networks from their applications by using a simple service-oriented API via the language of their choice. However, both the studies did not address automatic composition construction. In [19], the authors presented a Distributed Operating System (DOS) based on the service-oriented architecture (SOA) to manage all embedded devices in a home network at high level of interoperability. Another service provision middleware, Servilla[20], enables applications to be both platform independent and energy efficient by facilitating in-network collaboration among heterogeneous devices. With Servilla, the available energy in the candidate nodes has been taken into account in the service binding process; however, the common service composition model and service selection algorithm had not been presented.
Few approaches have been proposed for modeling service composition problem and the related resolution algorithms. In [21], the authors provided service composition solutions during a persistent query's lifetime such that the involved routing update cost and transmission cost are minimized. Another approach [22] proposed a probabilistic context-free grammar (PCFG) based modeling technique to construct service compositions. In [23], the authors proposed a policy-aware sensor service composition framework, which can automate the process of combining simple sensor services into larger ones with pre-specified policies. To the best of our knowledge, energy-aware automatic service composition in our study is novel in the sensor network domain.
3. Mathematical Formulations for Energy-Aware Service Composition
3.1. Network and Application Model
3.1.1. Service Model Description in Sensor Networks
Currently, there are many modeling languages, protocols, and frameworks in web services, for example, OWL-S [24], WSDL [25], BPEL [26], and SOAP [27]. However, these technologies are heavyweight for the limited resources of sensor nodes. Meanwhile, they view services as explicit entities and the resources that provide services as implicit entities.
In contrast with traditional resource-implicit web service description model, our proposed model is resource explicit, and the state of node services is affected by the dynamic properties of the sensor nodes. In addition, each heterogeneous node
The service
3.1.2. Network Model Description
Assume that n heterogeneous nodes
3.1.3. Application Model Description
In a SOA environment, an assigned application
3.1.4. Description of Service Composition Problem
The service composition process can be achieved with a centralized or distributed method. In this paper, for simplicity, we use a centralized fashion. A sink node or a gateway can act as a central decision node receiving information from all service nodes and dispatch the service requests to the selected sensor nodes. The centralized fashion should be only suitable for service composition in small-scale sensor networks because of the dramatically increasing communication cost along with the scale of the wireless sensor network.
As is shown in Figure 2, we can implement a service composition for a given application

Service composition for a given application in wireless sensor networks.
Note that if the service capability of a node
This formula denotes that certain service class provided by
Now based on the wireless heterogeneous sensor network
Symbols used in our system model.
3.2. Energy Cost
The set of the candidate service routes can be denoted by
3.2.1. Calculate the Overall Communication and Computation Cost of a Candidate Service Route
The overall communication cost contains not only the communication cost of each involved service node, but also the communication cost of the forwarding nodes within the communication paths for the service links. Note that the communication cost in this paper refers to the energy used to transmit and receive the data specified by the requested application. For two requested adjacent service classes
The overall communication cost of the candidate service route
The overall computation cost of the candidate service route
3.2.2. Calculate the Communication and Computation Cost of Each Involved Service Node
For each service node involved in a candidate service route
Then we compute the communication cost of the service node and before this, we assume that the amount of input and output data of a requested service
Assume that there are no adjacent relationships among the services provided by node
However, in some practical applications, a node may provide multiple services which are adjacent. For example, a specific node may provide perception and data fusion services at the same time, and these two services are usually adjacent since the perception data is directly sent to the data fusion service. Here, the data exchange between these two services is implemented within a node and there is no communication cost. Therefore, formula (10) can be rewritten as follows:
3.3. Service Routing with Two Energy-Aware Metrics
As we mentioned above, the optimal service route should balance the workload on the service overlay network. Assume that
In this paper, we implement the service composition with two proposed energy-aware metrics. The first metric is energy-aware load-balancing factor, which we consider to be achieved when the maximal fraction of energy spent by any service node is minimized. With this goal, we define
The second energy-aware metric is the total energy consumption for implementing the application. Although we believe that energy balance is a better metric to measure the service routes, it is also necessary to use the goal of minimize the total energy consumption to enhance our energy-aware service composition method. The total energy spent for a candidate service route is given by
Our service routing algorithm then selects the smallest value of a weighted sum of total energy consumption
4. Exhaustive Algorithms for Service Routing
To formulate the problem, the candidate service route
Inputs:
Outputs:
Evaluation Factor:
Constraint:
As is shown in Algorithm 1, according to the evaluation factor and constraint, we then propose an exhaustive algorithm to explore the optimal service route for a given application graph. A service route is constructed by selecting an available service node for each requested service class of the application graph. The exhaustive algorithm traverses all combinations with a depth first search algorithm (line
Given: Output: (1) /*the overall service selection optimization process*/ (2) (3) { (4) /*a node j is assigned to the requested service class (5) (6) (7) (8) /*if the last service node is chosen*/ (9) (10) (11) (12) (13) (14) /*initialize the parameters*/ (15) (16) (17) /*obtain the set of service nodes for each requested service class (18) idx = GetIndex( (19) (20) /*for each available service node for the next level*/ (21) (22) (23) [e, comb, z] = Combine( (24) /*if success and the value of evaluation factor is smaller*/ (25) (26) (27) (28) (29) (30) (31) (32) }
Algorithm 2 shows the whole process of calculating the evaluation factor. It mainly includes two steps: first, it calculates the expected communication and computation energy cost of every involved service node (line
(1) [success, (2) { (3) /*firstly initialize the parameters*/ (4) (5) /*obtain the index of requested services provided by each involved node (6) (7) (8) /*firstly, compute the computation cost*/ (9) (10) (11) (12) /*compute the amount of input and output data for each requested service in (13) (14) (15) Input[i] = Input (16) Output (17) (18) (19) /*compute the communication cost*/ (20) (21) (22) /*check if there exist adjacent services*/ (23) (24) (25) (26) (27) (28) (29) /*check if the residual energy of (30) (31) (32) (33) (34) /*compute the load-balancing factor*/ (35) (36) (37) (38) (39) (40) (41) (42) (43) (44) eg = calcOverallCost( (45) /*calculate the evaluation factor*/ (46) (47) (48) (49) }
Algorithm 3 shows the process of calculating the overall energy cost of each candidate service route, and it is called by Algorithm 2 (line
(1) [ (2) { (3) /*Firstly initialize the parameters*/ (4) (5) /*compute the overall computation cost*/ (6) (7) (8) (9) /*compute the overall communication cost*/ (10) (11) (12) (13) (14) (15) /*compute the overall cost*/ (16) (17) (18) }
4.1. Computational Complexity
The proposed exhaustive algorithm suffers from the relatively high computational complexity, because it evaluates all the candidate service routes. Given the
5. Improved Discrete Particle Swarm Optimization for Service Routing
Considering the high computational complexity of the exhaustive algorithm, we propose to adopt the evolutionary computing techniques which are more suitable to solve the combinatorial optimization problem. PSO [28] is an adaptive evolutionary computing technique proposed by Kennedy and Eberhart in 1995, which maintains and exploits both the position and velocity information in the evolution process, while other evolutionary algorithms only use the position information. In other words, PSO performs a kind of conscious mutation, which improves the convergence speed greatly. Meanwhile, existing studies show [29] that PSO has the merits of high speed, high quality solution, and good robustness in terms of multimodal optimization in multidimensional space and dynamic optimization. PSO has been widely applied in the complex optimization areas including multiobjective optimization, and pattern recognition. Therefore, we propose to use the PSO algorithm to solve the combinatorial optimization problem in this paper.
5.1. Basic Particle Swarm Optimization
PSO is a population-based optimization tool and inspired by the social behavior of natural individuals. It searches the optimal solution for a difficult optimization problem through the collaboration between the individuals. Assume that the size of swarm is P, the coordinate position of each particle
5.2. Improved Discrete Particle Swarm Optimization for Energy-Aware Service Composition
In this section, we present a formalized description for energy-aware service composition with an improved discrete particle swarm optimization (IDPSO) algorithm.
5.2.1. Particle Representation
As we defined in Section 3, a requested application
5.2.2. Fitness Function
The fitness function
Constraint:
Here,
5.2.3. Improved Discrete Particle Swarm Optimization Algorithm
As the structure of PSO algorithm is relatively simple, it is running fast. However, PSO is easy to fall into premature convergence and encounter local optimization. To overcome this problem, we propose an improved discrete PSO algorithm in this paper.
Adjustment of Inertia Weights. In this paper, we exploit the fuzzy logic approach to dynamically adjust the value of inertia weight w in the different convergence stages [30]. Then, the PSO algorithm is able to adjust the global parameter adaptively taking into account both the search efficiency and precision. In the fuzzy logic approach, the variables selected as inputs to the fuzzy system are the current best performance evaluation (CBPE) and current inertia weight, whereas the output variable is the change in the inertia weight. The normalized CBPE (NCBPE) is used as an input variable between 0 and 1 and is defined as
Then, we are able to update the value of w with the formula as follows:
The convergence performance of PSO algorithm can be improved based on this adjustment strategy of the inertia weight w, because PSO algorithm can obtain better global exploration ability with a high w in prophase of the evolution process and accelerate the convergence speed with a low w in anaphase. However, for many complex combinatorial optimization problems, it is not enough to get rid of local optima and improve the exploration accuracy of PSO algorithm only by adjusting the inertia weight. Therefore, in addition to the adjustment of inertia weight, a swarm reoptimization method with extreme perturbation scheme is proposed.
Swarm Reoptimization with Extreme Perturbation Scheme. When PSO algorithm falls into evolutionary stagnation, the phenomenon of particle accumulation happens, and the particles will scatter until the stagnation is broken. This phenomenon is theoretically explained well in [31]. The definition of particle convergence is shown in formula (21), and
An extreme perturbation scheme is employed to break the stagnant state. The basic idea of this scheme is that we will randomly adjust the individual/global best position when the evolution of both the best positions is stagnant for several iterations. And the extreme perturbation operator is defined as follows:
Then, based on formula (16), the improved PSO algorithm with dynamic adjustment of inertia weight and extreme perturbation is given as follows:
As we defined before, the particle position can be encoded as a l-dimensional integer array
5.3. IDPSO Algorithm For Energy-Aware Service Routing
With the iteration formula, we have presented the detailed optimization process with IDPSO algorithm for energy-aware service routing, which is described as shown in Algorithm 4.
(1) (2) P is the size of the PSO swarm (3) of particle (4) fitness( (5) (6) (7) K is the total number of iterations (8) Step 1. (9) step 1.1. initialize P, K, w(1), (10) step 1.2. initialize (11) step 1.3. evaluate fitness( (12) step 1.4. initialize (13) step 1.5. initialize gbest(1) with the position of the particle with the best fitness among the swarm (14) step 1.6. initialize CBPE with the current best fitness fitness( (15) step 1.7. initialize CBPEmin and CBPEmax (16) step 1.8. calculat e (17) step 1.9. initialize (18) Step 2. Repeat until a stopping criteria is satisfied (19) (20) step 2.1. for each particle (21) step 2.2. reset (22) step 2.3. for each iteration, calculate (23) step 2.4. for each particle (24) step 2.5. for each iteration, update the global best position: (24) step 2.6. for each particle (25) (27) Step 3. output
Computational Complexity. In the energy-aware service composition process with IDPSO algorithm, the size of swarm is P, the number of requested service classes in the workflow graph is l, and the number of iterations is K. The computational complexity of the main steps in Algorithm 4 is given as follows: step 2.1:
6. Performance Evaluation
6.1. Simulation Environment
For evaluating the performance of our proposed energy-aware service composition algorithms, we apply them to the target identification and tracking application discussed in Section 1. The workflow graph of this application is shown in Figure 1. We build a sensor network in which there are
Furthermore, the fire rate
A battery model simulates typical distributed embedded computing hardware, with a CPU and a radio module. For the parameters of our proposed IDPSO algorithm, the size of the swarm P is set to 15, the total number of iterations K is set to 150, and
6.2. Performance Evaluation for Our Proposed Algorithm
Firstly, we evaluate the capability of searching the optimal service route for our proposed methods. As shown in Figure 3, the IDPSO algorithm was evaluated by comparing it with the basic PSO algorithm and exhaustive composition algorithm. In this experiment, given the same initialization parameters, the requested application is executed continuously with 80 times for each algorithm. For each time, the optimal service route is refreshed by running each algorithm, respectively, and the fitness of the optimal solution of each algorithm is recorded.

The curve of fitness of the optimal solution along with the execution times of the requested application.
It is shown that the exhaustive composition algorithm has gained the best performance with the lowest fitness, because it traverses all combinations of service nodes to find out the best one. The value of fitness increases stably because of the gradually increasing value of load-balancing factor. The basic PSO algorithm has the worst performance with the highest fitness, and the value of fitness fluctuates severely because the basic PSO algorithm easily falls into premature convergence and encounters local optimization. Our proposed IDPSO algorithm has gained better performance than the basic PSO algorithm. And it is able to search out a service route approximated with the best one, because the capability of global exploration of the IDPSO algorithm is enhanced with the extreme perturbation scheme.
Secondly, we measure the performance of our proposed methods on extending network lifetime, which is shown in Figure 4. Here, we also assume that all nodes started with an initial energy level and the requested application is executed continuously with 80 times for each algorithm. For the basic PSO algorithm, in Figure 4(a), we can notice that the variance of the residual energy of all the network nodes is the highest and increases most quickly; in Figure 4(b), the minimum residual energy is the lowest after the application is executed with 80 times. Therefore, some network nodes will run out of battery quickly with the basic PSO algorithm, and the network lifetime will be shortened because of the rapid emergence of energy hole. For our proposed IDPSO algorithm, it has gained better performance than the basic PSO algorithm on prolonging the network lifetime (lower variance of the residual energy and higher minimum residual energy), since it has searched out those service routes with better performance on load balancing. We can also notice that the performance of IDPSO approximates to the exhaustive composition algorithm.

The residual energy changes along with the execution times of the requested application: (a) the curve of the variance of the residual energy; (b) the curve of the minimum residual energy.
With the proposed IDPSO algorithm, the performance of service composition is evaluated with using different energy-aware metrics, which is shown in Figure 5. Given the requested application above, we demonstrate the network energy distribution after executing the service composition for 80 times under three circumstances: (a) only use the metric “overall energy consumption” with

Network energy distribution after executing the requested application for 80 times with different energy-aware metrics: (a)
Further, to verify the experiment results in Figure 5, with different energy-aware metrics, we have monitored the number of total network transmission hops for the optimal service route of each execution of the requested application, which is shown in Figure 6. By the way, the number of total network transmission hops is obtained by accumulating the number of the network transmission hops between two adjacent service nodes in the service route; meanwhile, both the services nodes should have a service link specified by the workflow graph of the requested application. We notice that the number of total network transmission hops is 5 and remains almost unchanged while only using the overall energy consumption metric, and this is because the optimal service route is not refreshed until some involved sensor nodes run out of power. When only using the energy-aware load-balancing factor, the number of total network transmission hops for the optimal service route changes in a wide range mainly from 10 to 21; therefore, a greater number of sensor nodes in a larger area consume their battery quickly because of forwarding data frequently. By using both the metrics with

The total network transmission hops of the optimal service route change along with the execution times of the requested application.
To analyze the global optimization capability of the IDPSO algorithm in depth, we then evaluate its performance on convergence of fitness function by comparing with the basic PSO algorithm. The convergence performance of both the algorithms for the 1st and 80th execution of the requested application is shown in Figure 7. In both the comparison experiments, the basic PSO algorithm has converged on local optimum quickly and fallen into evolutionary stagnation after a short iterative process, and the particles have to gather into the local optimum. For our proposed IDPSO, it has better global exploration ability because of the extreme perturbation scheme. Especially in Figure 7(b), IDPSO is able to search out better solutions at the 96th, 106th, and 139th iterations through a long-time global exploration. By adjusting the individual and global best position when the particle has fallen into evolutionary stagnation, the IDPSO algorithm can increase the particles’ searching field and then improve the probability of finding out better solutions.

Comparison between IDPSO and Basic PSO algorithm on convergence of fitness function: (a) for the 1st execution of the requested application; (b) for the 80th execution of the requested application.
For the running time of IDPSO, as we have analyzed in the last paragraph in Section 5, the computation complexity of IDPSO has no relationship with the number of sensor nodes. As shown in Figure 8, with the increase in the number of atomic services, the running time for finding out an optimal service route with IDPSO maintained steady. For the exhaustive algorithm, the running time increases dramatically because it traverses all the combinations to find out the optimal one.

The running time versus the number of sensor nodes.
We then evaluate the convergence and optimization performance of IDPSO with different swarm size P, which is shown in Figure 9. For each swarm size P, the IDPSO algorithm is run for 20 times independently, and then we obtain the convergence curve with the average values. The best fitness value of the optimal service route obtained by IDPSO descends with the increase of swarm size. This is because a larger swarm size can enlarge the overall searching field and improve the probability of finding out better service routes. Meanwhile, when the swarm size exceeds a certain value, for example,

Convergence and optimization performance of IDPSO with different swarm size.
7. Conclusion
In this paper, we have presented an energy-aware service composition method for service-oriented heterogeneous wireless sensor network, and this framework takes into account both the energy-aware metrics including overall energy consumption and energy-aware load-balancing factor. Based on this framework, we propose the IDPSO algorithm, which is able to break the evolutionary stagnation and improve the global exploration capability of the PSO algorithm with the extreme perturbation scheme. Our experiment results have shown that the IDPSO algorithm is capable of searching out better service routes with smaller fitness than the basic PSO algorithm. Meanwhile, the energy-aware performance of the service routes obtained by IDPSO is close to those optimal service routes computed by the exhaustive composition algorithm. Based on the service routes with balancing between both the energy-aware metrics, the lifetime of the sensor network can be prolonged to provide stable service composition for various applications.
Footnotes
Conflict of Interests
The authors declare that they have no conflict of interests regarding the publication of this paper.
Acknowledgments
Our work is supported by multiple funds in china, including the Key Program of NSFC-Guangdong Joint Funds (U1201251), Scientific Research Project of Guangzhou City (12C42111582), Ph.D. Start-up Fund of Natural Science Foundation of Guangdong Province (S2012040006666), and Foundation for Distinguished Young Talents in Higher Education of Guangdong (LYM11057).
