## Abstract

Mesh network topologies are becoming increasingly popular in battery-powered wireless sensor networks, primarily because of the extension of network range. However, multihop mesh networks suffer from higher energy costs, and the routing strategy employed directly affects the lifetime of nodes with limited energy resources. Hence when planning routes there are trade-offs to be considered between individual and system-wide battery lifetimes. We present a multiobjective routing optimisation approach using hybrid evolutionary algorithms to approximate the optimal trade-off between the minimum lifetime and the average lifetime of nodes in the network. In order to accomplish this combinatorial optimisation rapidly, our approach prunes the search space using *k*-shortest path pruning and a graph reduction method that finds candidate routes promoting long minimum lifetimes. When arbitrarily many routes from a node to the base station are permitted, optimal routes may be found as the solution to a well-known linear program. We present an evolutionary algorithm that finds good routes when each node is allowed only a small number of paths to the base station. On a real network deployed in the Victoria & Albert Museum, London, these solutions, using only three paths per node, are able to achieve minimum lifetimes of over 99% of the optimum linear program solution’s time to first sensor battery failure.

## 1 Introduction

Wireless sensor networks (WSNs) consist of autonomous devices distributed over a wide area that are able to sense and periodically report environmental parameters such as temperature or humidity. They are extensively used for remote monitoring, especially in industrial, regulatory, and heritage applications. Many applications require sensors to be placed far away from easy access to mains power, so battery-powered sensors are popular and are often necessary in such situations. However, it is also desirable that sensors can be left unattended, without battery replacement for as long as possible. In this paper we therefore investigate the use of hybrid evolutionary approaches to find routing schemes for mesh wireless sensor networks that optimally preserve the life of the network and promote energy efficiency.

Many existing commercial products use an ad hoc topology for WSNs. Generally, these ad hoc networks are point-to-point networks, in which each sensor reports directly to a central base station. Despite being a low-power solution, a major limitation is limited network range as each sensor node must be able to communicate directly with the base station. The rigid network structure also means that networks are unable to cope with changing conditions in a dynamic radio environment, which may occur as buildings are modified or furniture is moved. As a consequence, sometimes multiple base stations are required to cover a single site.

As a solution, mesh network topologies, where data is relayed from node to node en route to the base station, have grown in popularity. In addition to extending the range that can be covered by using multiple hops (that is, multiple node-to-node relays) mesh networks provide the opportunity of using alternative routes, thus increasing resilience to radio environment changes. However, mesh networks are expensive in terms of energy consumption because of a higher overhead at each node for additional activities, namely, relaying messages for other nodes and in systems with distributed planning, calculating new routes. These additional activities can be severely detrimental to the overall life of the network, reducing the time before it requires servicing and battery replacement. It is desirable to minimise the energy consumption in the network, which is equivalent to maximising average lifetime (Rodoplu and Meng, 1999). However, as Chang and Tassiulas (2004) indicated, using minimum energy routes throughout the lifetime of a network can be detrimental to a group of nodes that relays most routes. Hence, in addition to improving average lifetime, it is usually important to maximise the time before the battery of the shortest-lived node is exhausted. This problem is called the maximum lifetime routing problem (Chang and Tassiulas, 2004; Madan and Lall, 2006). Routing optimisation in mesh networks therefore requires consideration of the trade-off between individual and system-wide battery lifetimes within the network.

Both efficient energy usage and maximum lifetime routing have attracted much research interest. These approaches can be divided into two groups: distributed and centralised (Kulkarni et al., 2011). In distributed approaches, the responsibility for routing is distributed across the constituent nodes, that is, the nodes are able to make decisions on routing locally. On the other hand, in centralised approaches, a centrally calculated route is broadcast to participating nodes.

Distributed approaches can provide good performance and even optimal solutions. For instance, the distributed approach described by Rodoplu and Meng (1999) is guaranteed to converge to the minimum energy topology in a strongly connected network where the communication links are not vulnerable to environmental changes. In addition, Madan and Lall (2006) described a distributed approach that can locate the optimal routing scheme using a subgradient algorithm to solve the convex optimisation problem presented by maximum lifetime routing. Also, some heuristic approaches, such as reinforcement learning (Förster, 2007) and swarm intelligence (Bashyal and Venayagamoorthy, 2007), can be applied in a distributed fashion, although these only approximate the optimal solutions. An important consideration with distributed approaches is that nodes require sufficient computational power and storage to collect and store information regarding local connectivity and compute the best routes based on available information. In comparison, centralised approaches, which mostly incorporate variants of heuristic algorithms (Chang and Tassiulas, 2004; Xue et al., 2006; Islam and Hussain, 2006; Yetgin et al., 2012) require lower computational power and storage at the nodes, as most of the computation and storage is conducted by the central base station. Nonetheless, there is a systemwide overhead incurred in gathering connectivity information and broadcasting routing information. In this paper we consider very-low-powered nodes, each of which has limited computational power and storage. Routes are therefore computed at a mains-powered base station.

Most current evolutionary algorithm (EA)–based energy-aware centralised systems consider energy expense. This is the case even for multiobjective routing optimisation, where energy expense is optimised with additional objectives describing different factors, such as quality of service, bandwidth, and packet loss ratio (Xue et al., 2006; Yetgin et al., 2012). However, optimising the overall energy expenditure of a network may be detrimental to the overall performance of the network, because often the goal is to prolong the lifetime of the network before any battery needs replacing. Merely reducing the overall energy expenditure may place a large burden on a few nodes, resulting in the rapid exhaustion of their batteries. We therefore seek to optimise the lifetime of network nodes by modelling the charge held in their batteries and the energy expenditure at *each* node. Islam and Hussain (2006) and Kamath and Nasipuri (2011) have considered maximising only the minimum remaining lifetime among nodes. Such approaches can improve the individual node-specific energy state but can be suboptimal from a systemwide perspective. We therefore seek to find the optimal trade-off between local and network-wide battery lifetimes.

In previous work (Rahat et al., 2014) we investigated a centralised approach using multiobjective routing optimisation with a view to locating efficient routes that approximate the optimal trade-off between minimum lifetime and average lifetime among nodes in the system. We also described how our system can cope with failure and permits self-healing in a dynamic radio environment. Our results indicated that using multiple routing schemes may allow the minimum lifetime of the system to be extended. For a mesh network where each node is able to route its messages to the base station via a number of different routes, Chang and Tassiulas (2004) have shown that a linear programming (LP) problem may be solved to obtain the proportions of messages that should be sent by each different route so as to achieve the maximum minimum lifetime. However, in very-low-powered battery networks the requirement to use many routes places an undue burden on the storage and computation that must be performed at each node. We therefore consider a routing scheme in which each node uses only a single route to the base station, but at a few discrete times the routing scheme for the entire network can be changed. We present a hybrid multiobjective evolutionary algorithm to maximise the minimum lifetime of any node in the system and the average lifetime of all nodes in the system. This algorithm is shown to achieve minimum lifetimes very close to the LP solution obtained by Chang and Tassiulas (2004) (which cannot directly be used here because of its use of many routes per node). We also show how a different linear program may be used to find the optimum proportion of time for which each routing scheme should be used, thus obviating the need for an additional evolutionary search for the routes’ time periods.

The number of potential solutions suffers from a combinatorial explosion as the number of nodes grows. To combat this we use two methods of pruning the search space, one based on the *k*-shortest paths from a node to the base station and another that utilises the solution to the maximum minimum lifetime linear program to find potentially useful routes.

Section 2 describes the model of the wireless sensor network. Section 3 presents the maximum minimum lifetime LP problem and discusses why maximising the average lifetime cannot be formulated as an LP problem. In Section 4 we present search space pruning methods incorporating *k*-shortest paths and a graph reduction method using the LP solution to the maximum minimum lifetime problem. These are combined in Section 5, where we present a hybrid evolutionary routing optimisation strategy. Based on this, in section 6 we demonstrate and discuss our findings in a real network deployed in the Victoria & Albert Museum, London. Section 7 discusses how minimum lifetime of the system can be improved by using multiple routing schemes in an optimal time-shared manner. Finally, conclusions are presented in Section 8.

## 2 System Model and Pareto Optimality

In this section we model the WSN and derive a multiobjective problem in order to investigate how different routing schemes affect the trade-off between individual and system average lifetimes.

A WSN is represented as a network graph, , where *V* is a finite set of *n* sensor nodes *v _{i}* plus a base station node,

*v*, and

_{B}*E*is the finite set of

*m*edges (Cormen et al., 2001) describing which nodes each node can communicate with. Each node must send messages to the base station, perhaps by relaying a message through one or more other nodes. It is not acceptable for nodes to be disconnected from the network (i.e., to be unable to directly or indirectly route a message to the base station). In practical situations where this occurs, it is the role of the network engineer to distribute additional repeater nodes to bridge communication gaps or to use nodes that can transmit at greater strengths. Once all nodes can pass on a message (directly or indirectly) to the base station, the routing optimisation stage (the focus of this paper) may be undertaken. In our scheme each node reports its status using a single route once every reporting cycle (e.g., once each minute).

*v*to the base station

_{i}*v*is described by the sequence, . We denote by the

_{B}*p*th element of the route

*S*. A

_{i}*routing scheme*

*R*is a set of routes, one for each node in the network, to the base station:

An initial mapping phase, preceding optimisation, is used to discover with which other nodes the node *v _{i}* can communicate. We call this map the connectivity map. Communications may take place using a variety of baud rates and powers, so we assume that the most energy-efficient baud rate and power combination has been discovered for each pair of nodes that can communicate; generally low power and high baud rates are most efficient in our system, but the optimisation does not rely on this. Also we assume that communication is reliable at the chosen baud rate and power combination.

*v*to the base station is the sum of the energies required to transmit a message between each of the nodes composing the route: where is the length of the route and

_{i}*e*is the energy required to transmit a message from

_{jk}*v*to

_{j}*v*. Note that this generally involves energy expenditure at both the transmitting node and the receiving node, and will also involve expenditures for transmitting an acknowledgement. As noted, we assume that the communication is reliable, but if an acknowledgement is not received from the receiver the message is re-sent; this additional expense is not modelled, but if a link becomes unreliable, the routing is re-optimised.

_{k}In many routing optimisation problems, such as shortest path problems, minimising a route’s overall cost is desirable. The overall cost is found by summing the costs associated with each edge in the route. There are many well-known methods for minimising such costs (e.g., Eppstein, 1998). In this problem, however, we focus on the costs expended at the nodes themselves rather than the edge costs. This is because it is energy expended at the nodes that depletes charge in the batteries and thus governs the lifetime of a node.

*T*be the energy (charge) required at node

_{ij}*v*to send a message to

_{i}*v*(Figure 2), and let

_{j}*A*be the energy required to receive a message from

_{ki}*v*at

_{k}*v*. Also let the edge utilisation

_{i}*u*for a directed edge between

_{ij}*v*and

_{i}*v*be the number of times in one reporting cycle that the particular edge is used by the routing scheme for a transmission between the associated nodes. Then in one reporting cycle, node

_{j}*v*receives messages from nodes with indices in the set and sends data (including its own data) to nodes with indices ; the associated energy expense is Clearly is equal to the energy cost across the whole network of sending a message from each node.

_{i}*q*remaining in the battery and the quiescent energy consumption per reporting cycle

_{i}*B*due to constant microcontroller operation, sensor measurements, running an on-board display, and so on. The life of the current node therefore is modelled as where

_{i}*N*is the number of reporting cycles per unit time. We emphasise that is a function of all the routes that utilise

*v*, and

_{i}*C*is calculated from

_{i}*R*.

*v*for , because, for example, they are particularly difficult to access. In this case the two-objective problem is augmented with a third objective:

_{i}The energy efficiency objective in Eq. (5) will ensure that paths with the least energy consumption are selected irrespective of the load imposed on the nodes. As a consequence, certain nodes in the network may end up relaying most of the traffic (depending on the network structure). This is in conflict with the minimum lifetime objectives in Eqs. (6) and (7), as to maximise these objectives it is better to distribute some load away from the nodes relaying most traffic. Additionally, Eqs. (6) and (7) will be in conflict when the minimum lifetime node and .

Solving this multiobjective problem may result in multiple solutions, as opposed to a single solution for single-objective optimisation. In this case, there exists a set of solutions that are Pareto optimal, that is, there are no other feasible solutions available that improve performance on one objective without a simultaneous decrease in at least one other objective (see, e.g., Coello Coello et al., 2001).

*M*objectives, a routing scheme, , is said to dominate another routing scheme,

*R*, denoted , iff Hence, we seek the maximal set of feasible routes that are mutually nondominating, which is known as the Pareto set.

Note that an alternative approach is to combine multiple objectives in a single-objective function as a weighted sum of the constituent objectives. A set of weights then represents the relative importance of the underlying objectives as set by the decision maker, and this technique can only find a solution relating to a particular trade-off in a single optimisation run (Coello Coello et al., 2001). However, Das and Dennis (1997) showed that performing multiple optimisation runs using evenly distributed weights fails to locate an even distribution of solutions across all parts of the Pareto front, even if the front is convex. Therefore, we consider these objectives as part of a multiobjective problem.

## 3 Maximum Lifetime Routing and Energy Efficiency

Maximising the time before at least one node exhausts its power source is often referred to as the maximum lifetime routing problem (Chang and Tassiulas, 2004; Madan and Lall, 2006). Chang and Tassiulas have identified maximum lifetime routing as a linear programming problem. This is particularly useful, as this LP problem can be solved in polynomial time. We use this solution in our hybrid evolutionary method, not only as a yardstick for our approach but also as a means of directing the search. In this section we present the LP formulation for maximum lifetime routing and discuss why the problem of maximising the average lifetime cannot be formulated as a linear program.

The LP problem formulated by Chang and Tassiulas (2004) incorporates multiple sets of source-destination pairs and can be generalised when these pairs are active at different times with variable reporting rates in a multicommodity setting. In this paper we consider a special case of their formulation, where all nodes send the same amount of data periodically at fixed intervals, for instance, a message every minute. This scenario is most common in industrial applications, especially for constant monitoring of locations. Also, we extend the approach with the inclusion of quiescent consumption at nodes as a practical consideration.

*v*must be equal to the sum of the incoming flows from other nodes and the flow generated at

_{i}*v*. The network flow effectively indicates edge utilisations, that is, how many times a particular edge has been used in a routing scheme. Hence, the flow conservation at

_{i}*v*can be written in terms of edge utilisations: where

_{i}*u*is the edge utilisation of the link from

_{ij}*v*to

_{i}*v*, and is the flow generated at

_{j}*v*, namely, the data generated in each reporting cycle at

_{i}*v*; the recipient node indices belong to set and nodes transmitting to

_{i}*v*have indices in the set .

_{i}The second constraint (12) is derived from the definition of lifetime as provided in Eqs. (3) and (4). Note that this expression is nonlinear in *u _{ij}*, which means in general that the feasible region is nonconvex and that methods guaranteed to find the optimum in polynomial time are not available (Boyd and Vandenberghe, 2004); furthermore, the max-min objective function (10) is nonsmooth (Zang, 1980).

*L*may be replaced with . Chang and Tassiulas (2004) therefore recast the problem in terms of to obtain an LP problem that can be solved in polynomial time (Boyd and Vandenberghe, 2004). The LP problem has the following objective: subject to the following modified constraints: This LP problem may be solved to obtain the minimum lifetime for the system, , and a set of compound edge utilisations .

_{i}The energy efficiency of a WSN system is often viewed in terms of the average lifetime of the nodes. Maximising this ensures best possible usage of the energy available in the network as a whole (Rodoplu and Meng, 1999). Similar to the minimum lifetime problem, the objective is a linear function of the edge utilisations (Eq. (5)) with the same constraints (Eqs. (11), (12), and (13)) as for the minimum lifetime problem. Unfortunately, in this case the multiple quadratic constraints cannot be reformulated to obtain an LP problem, meaning that efficient polynomial time methods cannot be employed. In addition, when the number of routes from a node to the base station is limited, the Chang and Tassiulas (2004) method cannot be used to obtain an LP method for solving the minimum lifetime solution. We therefore turn to evolutionary methods to locate an approximate Pareto front describing the trade-off between these objectives.

## 4 Search Space Pruning

*n*nodes excluding the base station, let the number of available loopless paths from

*v*to

_{i}*v*be

_{B}*a*. In this case, the number of possible routing schemes, namely, the number of combinations of routes for individual nodes that can build the routing scheme, is It is crucial for practical implementations that the optimisation process be fast. A way to improve the speed of optimisation is to sensibly prune the search space while retaining important potential solutions. In this section we describe two methods of pruning the search space:

_{i}*k*-shortest path pruning and a max-min lifetime pruning, based on the maximum minimum lifetime solution, and discuss how they are used in approximating the Pareto set.

### 4.1 *k*-shortest Path Pruning

In order to combat the potential growth in the size of the search space as the number of nodes increases we limit the number of potential routes available to each node. More specifically, we limit the search to the space defined by the *k*-shortest paths for each node, where the metric defining the distance between nodes (the weight of the edges) is described later. This reflects our intuition that short paths to the base station are most likely to be energy-efficient. We select from among several shortest path routes for each node because if each node were to utilise its shortest path, nodes that occur in many of the 1-shortest paths would be disproportionately burdened.

*v*and

_{i}*v*. We define the weight of the edge between them as where, as before,

_{j}*e*is the energy required to transmit a message from

_{ij}*v*to

_{i}*v*, and

_{j}*q*and

_{i}*q*are the battery charges. It is expected that . This edge weighting models the fact that a high transmission cost can be borne by nodes with a high battery charge, but transmission is relatively expensive for nodes with low battery charge because each transmission will make a larger fractional depletion of the charge. Likewise, if a node is connected to mains power, then transmissions are free, which is modelled by setting . Note that is an estimate of the lifetime of

_{j}*v*. We call the cost of a routing scheme calculated using the weights

_{i}*w*the

_{ij}*composite cost*.

As we require diversity in the search space and the possibility of load balancing among nodes, we propose to evolve solutions from among the *k*-shortest paths for each node calculated with the composite cost (Eq. (19)). A number of algorithms are available for computing the *k*-shortest paths; see, for example, Yen (1971) and Eppstein (1998). In our implementation we use Eppstein’s algorithm modified to produce only simple or loopless paths, which matches the best upper-bound time complexity for finding *k*-shortest simple paths (Eppstein, 1998). We denote the *m*th shortest route found for node *v _{i}* by , for . For a chosen

*k*, we build a library of paths, where each node has no more than

*k*paths. This is because the number of loopless paths to the base station,

*v*, for a node may be less than

_{B}*k*, especially if it is close to

*v*. A complete routing scheme

_{B}*R*is then represented by a path for each node selected from one of the paths available in the library. With this technique the reduced search space of possible solutions, , is no larger than

*k*.

^{n}We also investigated the correlation between the composite cost and the objectives for 1,000 randomly chosen routing schemes with random charge levels *q _{i}* at nodes for a real network at the Victoria & Albert Museum; a more detailed description can be found in Rahat et al. (2014). We found that there is a fairly strong negative relationship between the average battery life and the composite cost (correlation coefficient ). This indicates that routing schemes selected with low composite cost via the

*k*-shortest paths algorithm are likely to have long average lives. On the other hand, there was a very weak relationship between the minimum lifetime and composite cost. This was unsurprising, since the minimum lifetime depends on a

*single*node in the network and is highly dependent on the interaction between routes.

### 4.2 Max-Min Lifetime Pruning

The correlation between composite edge cost and average battery lifetime, but poor correlation between composite edge cost and minimum battery life, means that although the *k*-shortest paths pruning retains good average lifetime routes, it may discard routes that would yield a long minimum lifetime. To obtain good candidate routes for long minimum lifetimes we solve the linear program to obtain the edge utilisations *u _{ij}* that maximise the minimum lifetime. We then consider the subgraph obtained by deleting from

*G*all the edges

*e*for which . This subgraph is then used as the basis for generating a library of

_{ij}*k*-shortest paths with Eppstein’s algorithm. The use of prunes the size of the search space but retains routes that are good for prolonging the minimum lifetime. We call this reduced search space .

The purpose of using such search space pruning is to retain routes from which to build good solutions. Here each method has its own specific goal: *k*-shortest path pruning for retaining solutions with better average lifetime, and max-min lifetime pruning for retaining solutions with better minimum lifetime. We can then utilise the modified search space to rapidly obtain a sensible approximation of the optimal Pareto set. Although , the *k*-shortest paths derived from may be different from those derived from *G*. As a consequence, using the *k*-shortest path pruning may result in the search spaces and being quite dissimilar if not completely disjoint.

## 5 Hybrid Evolutionary Approach to Routing Optimisation

The main focus of our approach is the rapid approximation of the trade-off front between minimum lifetime and average lifetime from infrequent maintenance and energy efficiency perspectives, respectively. In this section we describe how we use hybrid evolutionary approaches in a multiobjective evolutionary algorithm to locate an approximately optimal set of routes.

As described in the previous section, we prune the search space in two ways to obtain path libraries, and , of potential routes for each node in the network. We represent a solution as a vector of indices into these libraries, one index for each node, so that a complete solution *R* describes a route for each node to the base station. One optimisation strategy would be to select a route for each node from . However, it is more effective to optimise in two stages. In the first stage, we perform two separate optimisations, one selecting routes from and the other selecting routes from . In the second phase, routes are selected from . This phase is initialised from the nondominated archives resulting from the two first-stage optimisations.

Optimisations for both stages use a genetic algorithm, with an unconstrained Pareto archive to reap the benefits of better convergence properties (Fieldsend et al., 2003). Algorithm 1 describes this multiobjective optimisation process in more detail.

Solutions, *R*, are represented by vectors of *n* integers; the *i*th element of the solution indexes one of the *k*-shortest paths found for node *v _{i}*. In the initialisation step, we generate at random a population from the pruned search space, . (The search space is when using the max-min pruning, but we describe the algorithm in terms of .) This population comprises randomly chosen routing schemes where the member routes are chosen from the

*k*-shortest paths for each node; thus for node

*v*the shortest paths are selected from . Also, we include in the initial population the routing scheme that uses the first shortest route for each node. The initial archive of nondominated solutions

_{i}*A*is the maximal nondominated subset of this random population. At any step of the evolution,

*A*is the current approximation of the Pareto set within the particular chosen search space.

During the evolution process, we randomly select two routing schemes. These parent routing schemes are then crossed over to yield a single offspring : the route for each node *v _{i}* is selected from either the first or second parent with probability

*c*or , respectively, independently of the other nodes. This child is then perturbed by choosing new routes (uniformly at random from ) for a proportion of the nodes in the network. The perturbed child, , is compared against the members in the archive: if it is not dominated by any of them, then it enters the archive, and any elements of

*A*dominated by the new solution are removed from

*A*. In this fashion only the non-dominated routing schemes are preserved in the archive, and the archive can only approach the true Pareto set. The process of evolution continues for a fixed number of episodes. Alternatively, another termination criterion, such as a specified minimum dominated hypervolume (Zitzler, 1999), may be employed.

*A*and , respectively. The archive

*A*resulting from optimisation using tends to favour solutions with long average lifetimes, whereas resulting from optimisation using tends to yield solutions with long minimum lifetimes. However, solutions with intermediate average and minimum lifetimes may be scarce in . The second phase of the optimisation remedies this by employing the same optimisation algorithm, but now selecting paths from . This optimisation is initialised from the maximal nondominated subset of ; that is, , where is the function that returns the maximal subset of nondominated elements of

*X*: We denote the archive resulting from the second optimisation by .

The overall hybrid evolutionary approach can be summarised as follows:

Gather the connectivity map, and construct the network graph

*G*.Solve the LP problem for maximum lifetime routing (Eq. (10)) to find the optimal minimum lifetime and edge utilisations

*u*._{ij}Search space pruning.

Use

*u*to generate the reduced graph by selecting edges where ._{ij}Apply

*k*-shortest path pruning to*G*and , creating path libraries and , respectively.

First stage of routing optimisation. Apply Algorithm 1 using and separately. This results in archives

*A*and , which are the approximations of the Pareto set in the relevant search space.Initialise the second-stage optimisation with .

Second stage of routing optimisation. Apply Algorithm 1 using . On termination, we have the estimated Pareto set .

Once the evolution process is finished, the decision maker may manually choose the operating point using the final approximation of the Pareto front . The chosen routing scheme is sent to the nodes via the base station and becomes the active data reporting scheme.

## 6 Illustration

A real network deployed in the Victoria & Albert Museum, London, is used to illustrate the proposed approach.^{1} In a controlled environment over a vast area, such as Victoria & Albert Museum, it is essential to monitor temperature and humidity in galleries and display cases for the preservation of the artifacts. Compared to wired networks, battery-powered WSNs carry huge advantages in deployment cost and flexibility.

The network incorporated 30 sensor nodes and a base station, spanning five floors within an approximate area of 35,000 *m*^{2}. The thick, solid walls provide a challenging radio environment whose characteristics vary with the passage of visitors through the galleries.

### 6.1 Baseline Optimisation

The connectivity map *G* was built in an initial mapping phase in which nodes pinged each other using a range of baud rates and powers to discover the minimum energy configuration for communication between those nodes within radio range of each other.

Solving the maximum minimum lifetime LP problem results in a maximum minimum lifetime of years, together with a set of edge utilisations. These edge utilisations were used to calculate the average lifetime of the system, which is years. They also enable the extraction of the subgraph . We emphasise again that this maximum minimum lifetime is only achievable through the use of multiple routes from each node to the base station, whereas we are constrained to seek a routing in which each node uses only a single route to communicate with the base station. Clearly, the requirement to use a single route means that battery loadings cannot be shared optimally, so that a single routing scheme will have a worse (shorter) maximum lifetime than that given by linear programming.

Applying subspace pruning using *k* = 10 shortest paths results in libraries and from each of which solutions could be constructed. In each search space, the initial population was built with randomly chosen solutions from the relevant subspace together with the solution consisting of the shortest route for each node. The initial archive was then found by extracting the maximal set of nondominated solutions in this population.

In the evolutionary optimisation we used as the perturbation and crossover rates; these rates were chosen after a short empirical study on simulated networks, but the performance of the optimiser is relatively insensitive to their precise values. Using the dominated hypervolume measure (Zitzler, 1999), the Pareto sets for the first-stage optimisation were well converged after 150,000 epochs (see Figure 6). The second-stage optimisation used the same and *c* as the first stage. This evolution was run for 500,000 epochs, resulting in the final approximation of the Pareto set .

A single-core Python implementation takes about 2 minutes to complete each of the initial 150,000 iterations on a GHz machine. The 500,000 iterations in the second stage take about 4 minutes to complete. Consequently, the routes for new installations can be found readily, making this approach particularly feasible as part of a real system.

Figure 3 shows the estimated Pareto fronts generated during the initial stage of optimisation. As the figure suggests, in both search spaces, and , there is a wide range of routes that trade off the average lifetime of the network against the time before any single node exhausts its battery. We note that the optimisation resulted in routing schemes that are substantially better, in terms of both average and minimum lifetimes, than routing schemes utilising randomly chosen routes from the shortest paths in both and . Indeed, for both search spaces, the routing schemes with the longest minimum lifetime have a better average lifetime than any of the random solutions for that search space. Interestingly, the shortest-paths-only solutions *R _{c}* and are very close to the estimated Pareto front in both spaces. We include

*R*and in the initial archives for the relevant search spaces.

_{c}We note that for the Victoria & Albert Museum network 13 of the 30 nodes have a possible path that appears in both and , although no node has more than 3 paths common to both libraries. Since 17 of the nodes therefore have no paths appearing in both libraries, it is not possible to construct a complete routing scheme, *R*, that exists in both libraries, and the search spaces and are completely disjoint. Also, the fronts occupy different parts of the objective space. Many of the solutions in (resulting from the max-min pruning) are dominated by solutions in *A*, which resulted from *k*-shortest path pruning of the full graph *G*. Nonetheless, the utility of using the min-max pruning is shown by the 11 solutions that achieve longer minimum lifetimes than any solution found in .

Combining *A* and leaves a large gap in the estimated Pareto front for intermediate average lifetimes. To remedy this, the second-stage optimisation is initialised from , and the union of the two pruned search spaces is available for constructing new solutions. The result of this second optimisation is shown in Figure 4.

As can be seen from Figure 4, is very close to *A* in the high average lifetime region, but combining paths from and resulted in solutions being found with good minimum lifetimes and better average lifetimes than those in . The linear programming solution (which solves for many routes per node rather than a single route) is marked by a black triangle in the figure, and this upper bound on the minimum lifetime, years, is indicated by the horizontal dashed line. The best minimum lifetime solution when nodes are constrained to use a single route found by the evolutionary optimiser has a minimum lifetime of years. This solution improves the shortest-paths-only routing scheme by approximately 5 months in minimum lifetime at an expense of 2 months in average lifetime. In contrast, the solution with best average lifetime improves the shortest-paths-only solution by 7 days in average lifetime, while the minimum lifetime is worse by 2 months, which is a rather small gain at a large expense.

Figure 5 shows a comparison between the two-stage approach and a single-stage approach in which solutions may be constructed from throughout the entire optimisation. As can be seen from Figure 5, the estimated Pareto fronts resulting from the two strategies mostly overlap, except at the maximum minimum lifetime and the maximum average lifetime end. Here, the strategy of evolving solutions using a path library that favours good minimum lifetime solutions has paid off, yielding additional solutions with long minimum lifetimes. To generate this figure, the single-stage strategy was allowed to run for as many objective function evaluations as the two-stage strategy. This advantage is also apparent from the hypervolume progressions of the single-stage and the two-stage approaches, as depicted in Figure 6. Despite the additional complexity of the optimisation algorithm, we therefore adopt the two-stage approach.

### 6.2 Protecting a Group of Nodes

In practice, it is often desirable to give priority to one or more nodes so that their lifetimes are prolonged, because, for example, they are hard to access. To address this issue, we introduce an additional objective (Eq. (7)), with the aim of prolonging the minimum lifetime of the priority group of nodes, alongside the aforementioned objectives.

We selected a priority group, to include two heavily loaded nodes (*v*_{19} and *v*_{21}) and two others. Figure 7 shows the estimated trade-off surface in three dimensions between average lifetime, overall minimum lifetime, and minimum lifetime of a priority group of nodes. Except for the additional objective, the hyperparameters and general strategy for optimisation remain the same as before.

In Figure 8 we show the connectivity map as an adjacency matrix partitioned to place the priority group at the top left. The distinct nature of routing schemes corresponding to the extreme solution with respect to each of the objectives is depicted through the visualisation of the edge utilisations, shown in Figure 9; here the grey scale indicates the frequency with which an individual radio link (edge) is used in a particular routing scheme.

To illustrate the underlying distinction in nature of the extremal solution for each objective, we consider the edge utilisations, that is, the number of times a particular edge is used in a routing scheme, of three particular routing schemes: best average lifetime (*R _{a}*), best overall minimum lifetime (

*R*), and best minimum lifetime of priority group (

_{m}*R*) solutions. Figure 9 shows that in

_{p}*R*most paths utilise the link between node

_{a}*v*

_{19}and the base station

*v*. As minimum energy routes are preferred, the average lifetime is high (1.99 years), but overall minimum lifetime and minimum lifetime of the priority group are low. The minimum lifetime is low, as nodes on minimum energy paths relay most routes and as a consequence exhaust their batteries quickly. The overall minimum lifetime and minimum lifetime of the priority group are the same, years. This is because the most energy-efficient routes heavily load

_{B}*v*

_{19}, which is in the priority group, so causing it to exhaust its battery first.

In contrast, *R _{m}* provides a more evenly distributed edge utilisation map; in particular,

*v*

_{19}and

*v*

_{21}share the load between them. In this case, an increase of in minimum lifetime when compared with

*R*is achieved, at the expense of not using all energy-efficient routes. Hence, the average lifetime is reduced by . The minimum lifetime of the priority group is 1.3 years, as

_{a}*v*

_{19}is the minimum lifetime node. We note that in this case the intraconnectivity between protected group nodes also diminishes.

The most dramatic difference is in *R _{p}*, where most paths avoid the priority nodes, improving the minimum lifetime for the priority group by for

*v*

_{19}with respect to

*R*. To achieve this increase in minimum lifetime for the priority group, high energy cost paths must be used for paths in the rest of the network, resulting in a reduction in the minimum lifetime for the network as a whole;

_{m}*v*

_{2}is the node whose battery is first exhausted in this case.

## 7 Better Approximation of Maximum Lifetime Routing

It is of considerable practical importance to maximise the minimum lifetime of any node in the network, because the network requires no maintenance until the battery of the shortest-lived node is exhausted. Chang and Tassiulas (2004) described how this can be modelled as an LP problem. The LP formulation relies on each node being able to use many paths to the base station, which in turn enables load balancing by using different routes for fractions of the network lifetime. However, the computational power and the storage requirements associated with switching between many routing schemes can be prohibitive for low-powered devices. Therefore, we consider a strategy in which only a small number of routing schemes (two or three) are available to the network, and all nodes change at predetermined times to a new scheme. This re-routing can be accomplished at low energy cost from the base station. In this section we describe an evolutionary algorithm that optimises a small number of routing schemes together, and thus achieves a better approximation to the LP solution quality in comparison to using a single routing scheme throughout the lifetime of a network.

Intuitively, to see how using multiple routing schemes in a time-shared manner can be useful, suppose that under the initial routing scheme *R*, a node has the minimum lifetime. Now suppose that the network is optimised a second time after it has been in operation for a while. The result of this second optimisation can be a routing scheme in which is very lightly loaded, prolonging its life, while a different node, , which was lightly loaded in the first epoch, now carries a heavier load. In this way the life of is extended, and it may be that or or some other node is exhausted first, but in any case the time before any single node is exhausted is delayed.

### 7.1 Optimal Time Share

Inevitably the question now is how to best distribute the time share between multiple routing schemes. For a particular routing scheme, the current drain per reporting cycle is constant (the sum of a quiescent current together with transmission and reception costs to each of the nodes it communicates with). The decay in stored battery charge is therefore linear in time, although the decay rate depends on the particular routing scheme used. With this (good) assumption, the times for which each routing scheme should be used can be found by linear programming.

*D*routing schemes, , in operation for times , the charge decay equation for

*v*becomes Figure 10 illustrates the decay curve for

_{i}*v*for multiple routing schemes.

_{i}*n*by

*D*matrix of decay rates by , the charge decay equations for all the nodes can be written as The lifetime of the network is subject to the constraint that the charge remaining at all nodes is positive. This allows us to formulate an LP problem for the time spans that will maximise the minimum lifetime of the network, given the

*D*routing schemes as follows: subject to Solving this LP problem enables us to derive the optimal time span vector for a given set of routing schemes.

*D*th, routing scheme. Hence, the overall average lifetime will depend on the last routing scheme in sequence. The time

*t*remaining for node

_{i}*v*after the minimum lifetime node is exhausted is given by The average lifetime of the network is then Clearly, although changing the order in which the routing schemes are used does not affect the minimum lifetime, the average lifetime depends on which routing scheme is chosen as the last routing scheme,

_{i}*R*. We therefore select

_{D}*R*as the routing scheme that maximises the average lifetime.

_{D}Solving this LP problem and finding the routing scheme to use as *R _{D}* enables us to achieve the best minimum lifetime and average lifetime for given set of multiple routing schemes.

### 7.2 Evolving Multiple Routing Schemes

In order to locate good routing schemes we consider an evolutionary algorithm in which a solution is constructed from *D* routing schemes: . In this *D*-RS approach the evolutionary algorithm is used to optimise the routes comprising each of the constituent schemes, but optimal time spans of these evolved routes are found by solving the LP problem (Eqs. (24)–(26)). This speeds up the search considerably compared with using an evolutionary algorithm or similar stochastic search to find good time spans as well as the good routing schemes. Note that it is possible for one or more time spans to be zero, so that the evolutionary algorithm can locate solutions in which only a single routing scheme is used.

Despite the pruning used to limit the size of the search space (see Section 4), the use of several routing schemes leads to a further explosion in search space size because the number of paths available for each node is in each of the *D* routing schemes (using *k*-shortest path pruning on *G* and ). The number of possible solutions is thus approximately , although some nodes may have fewer than shortest paths available.

In order to combat this combinatorial explosion we adapt the basic evolutionary strategy for a single RS to perform a series of evolutionary searches in increasingly large search spaces as follows.

Evolutionary searches using path libraries and are carried out separately but evolving single routing schemes rather than multiple schemes. (This can be achieved by replicating a single routing scheme

*D*times and applying the same mutation and crossover operations to all of them.) As illustrated previously, optimisation using and separately helps to find good average lifetime solutions and good minimum lifetime solutions by restricting the size of the search space and guiding the search according to the pruning method used.Still optimising using and separately, we seek

*D*-RS solutions. Here, at each iteration, mutation and crossover operations suggest new paths for nodes in one of the*D*constituent routing schemes, after which the optimal time spans, and thus the minimum and average lifetimes, are calculated by linear programming (Eqs. (24)–(26)). Solutions in which the routing schemes are the same throughout the lifetime of the network can produce better average lifetime solutions. Therefore, in half the iterations, a new solution is generated by replicating one of the component routing schemes*D*times.Finally, the nondominated subset of the union of the archives obtained in step 2 is used as the initial archive for a further optimisation using both and .

Recall that the path libraries were constructed from the *k*-shortest paths based on the composite cost (see Section 4.1). The edge weights in Eq. (19) were calculated using the initial battery charges. However, the batteries become depleted by the network operation because of the routing scheme. We therefore, albeit infrequently (e.g., every 100,000 function evaluations), update the path libraries with *k*-shortest paths calculated on the basis of battery charge distributions from partially drained networks, and add any newly discovered paths to the path library. This allows the evolutionary mechanism to choose paths better suited to a network that has been in operation for some time.

### 7.3 Performance Comparison

We compare the performance of optimised one, two, and three routing schemes on the Victoria & Albert Museum network.

For both 2-RS and 3-RS strategies, we used path libraries generated with shortest paths. The first stage of the optimisation (1-RS) was run for 150,000 iterations, while the second stage (multiple routing schemes using or separately) was run for a further 800,000 iterations. Finally the third stage (multiple RS and combined path libraries) was run for an additional 1,000,000 iterations. These numbers of iterations yield well-converged fronts, and for practical purposes fewer iterations can obtain a good approximation.

Figure 11 shows the estimated fronts for 1-RS, 2-RS, and 3-RS strategies. As may be expected, the estimated Pareto front for 2-RS dominates or equals the 1-RS scheme, and it in turn is equalled or dominated by the 3-RS front. The 1-RS solution has a maximum minimum lifetime of of the maximum lifetime routing solution, , which has the freedom to use unlimited routes. The 2-RS strategy achieves an improved minimum lifetime, which is of . The additional flexibility inherent in the 3-RS strategy allows a minimum lifetime that is of to be found.

In Figure 12 we present the summary attainment surfaces (Fonseca and Fleming, 1996; Knowles, 2005) for 1-RS, 2-RS, and 3-RS strategies calculated over 10 runs. The narrow width between and attainment surfaces clearly indicates the desirable repeatability and convergence of this approach. It also shows that the approximation improves with each additional routing scheme; however, the rate of improvement diminishes as we increase the number of routing schemes.

Edge utilisations for best minimum lifetime and best average lifetime 1-RS and 2-RS solutions are shown in Figure 13. As noted previously, with a single routing scheme (top row of Figure 13) the best average lifetime solution heavily utilises a few edges, whereas the load is more evenly distributed for the maximum minimum lifetime solution. This pattern is also evident in the 2-RS solutions. The two component routing schemes, and , for the best average lifetime solution are both similar to the 1-RS solution. In fact, the 1-RS solution has a slightly better average lifetime than the 2-RS solution, and in general we find that good average lifetime solutions tend to have a single RS.

Edge utilisations for the best minimum lifetime 2-RS component schemes and are shown in Figures 13c and 13e. These are active for 0.3 years and 1.05 years, respectively, amounting to a total minimum lifetime of 1.35 years. However, individually and can only provide minimum lifetimes of and years, respectively, with the latter being the same as the best minimum lifetime solution from 1-RS ( in Figure 13a). As the different distributions of edge utilisations in Figures 13c and 13e show, the additional lifetime is achieved by protecting some nodes while the first component is active, but then loading them more while the second component is active. Here these components are active for and of the network lifetime. The extra flexibility provided by a third component produces a small increase in achievable lifetimes, but the additional component is only used for a small fraction of time: the best minimum lifetime 3-RS scheme uses components for , , and of the network lifetime.

Figures 11 and 12 also show that with each additional routing scheme in the solution, the approximation of the Pareto front improves. As well as improving the range of minimum lifetime solutions located, it also becomes denser. We attribute this to the additional flexibility to introduce paths that provide a finer grained trade-off between the objectives.

## 8 Conclusions

Using mesh network topologies in low-power wireless sensor networks poses a challenging problem of finding routes that best preserve the lifetime of individual nodes and the network as a whole. In this paper we have proposed a hybrid multiobjective evolutionary approach to approximate the optimum trade-off between the minimum lifetime for any nodes and the average lifetime of the whole, where these objectives are associated with infrequent maintenance and energy efficiency, respectively. Although not discussed here, we remark that re-optimisation from a stored Pareto front approximation is an effective way of re-routing a network in case of node or link failure or if new nodes are introduced (Rahat et al., 2014).

Chang and Tassiulas (2004) have shown that the maximum lifetime routing for a network can be modelled as an LP problem that can be solved in polynomial time to obtain the proportions of messages that should be sent via different routes. However, this formulation requires that each node be able to use many different paths to the base station. In low-power battery networks this is not feasible because of limited computational power and storage. Hence, we use an evolutionary approach to locate a set of routes for each node that can produce a close approximation to the many-paths LP solution ( with 3-RS).

As a combinatorial problem, the search space size can increase drastically as the number of nodes increases. To reduce this potentially large space while retaining sensible solutions, we use *k*-shortest path pruning on the full connectivity graph and on a reduced graph. The *k*-shortest path pruning of the full graph limits the number of routes available to a node and thus limits the search space, while retaining solutions that are energy-efficient. On the other hand, the graph reduction method retains paths that tend to yield good minimum lifetime routes. Central to the efficacy of our approach is optimisation in these limited search spaces, both for single and multiple routing schemes. In addition, solving exactly for the proportions of time that each component is active in a multiple routing scheme solution obviates the need for an additional, expensive stochastic search.

As we have shown, the flexibility of more than one routing scheme allows better solutions to be located. The nodes in the solutions here are constrained to change to another routing simultaneously. Current work focusses on relaxing this requirement, while still restricting the number of routes available to each node, in order to bring additional robustness against node or link failure to the network.

## Acknowledgments

This work was supported by a Knowledge Transfer Partnership awarded to the University of Exeter and the IMC Group Ltd (KTP008748). We would like to thank Martin Hancock (Technical Director, IMC Group Ltd.) and Neil Lundy (Engineering Manager, IMC Group Ltd.) for their support and contributions. We would also like to thank Boris Pretzel (Chief Scientist, Victoria & Albert Museum) and Bhavesh Shah (Scientist, Victoria & Albert Museum) for facilitating the real network test. A patent application based on this work has been made (reference number: GB 1400353.7).

## References

*k*-shortest path algorithms

*k*shortest paths

*K*shortest loopless paths in a network

## Note

^{1}

Data on the network to allow comparison with this work can be found at http://emps.exeter.ac.uk/computer-science/wsn/