Cooperative localization in wireless ad hoc and sensor networks using hybrid distance and bearing (angle of arrival) measurements

This article provides the graphical properties which can ensure unique localizability in cooperative networks with hybrid distance and bearing (angle of arrival) measurements. Furthermore, within the networks satisfying these graphical properties, this article identifies further sets of conditions so that the associated computational complexity becomes linear in the number of sensor nodes. We show how, by forming a spanning tree used once for distances and a second time for bearings where the underlying graph is connected, the localization problem can be made solvable in linear time with significantly less number of sensing links and smaller sensing radii of nodes compared with the cooperative networks with distance-only or bearing-only measurements. These easily localizable networks can be localized in polynomial time when measurements are noisy


Introduction
In this article, we deal with resolving the graphical conditions of cooperative localization in networks that use hybrid distance and bearing (a.k.a. angle of arrival, AOA) measurements. Broadly speaking, the cooperative network localization problem is determining the Euclidean positions of all nodes (ordinary nodes) in a network given the knowledge of the Euclidean positions of some reference nodes (anchors), and the knowledge of a number of internode measurements. In such a setting, localization can be obtained through the cooperation of all nodes, using not only the measurements from anchors but also the measurements among pairs of ordinary nodes.

Modalities of measurements
Wireless sensor networks are geometric networks. The data collected by the nodes are closely related to their Euclidean positions in the plane or in the space. Moreover, the interconnection between the nodes highly depends on their spatial distribution within the network, i.e., nodes can directly sense or communicate with only other spatially close nodes.
Nodes need to sense some aspects of network geometry to determine their positions. Deriving location information in a cooperative scheme with distance (range) using the capability of the nodes to measure time of arrival, time difference of arrival, and received signal strength (RSS) have been used extensively to localize nodes relative to a frame of reference. For background papers dealing with various aspects of measurements and cooperative localization in sensor networks, see e.g., [1][2][3][4].
Distance measurements are not the only geometrically pertinent quantities that can be used for network localization. The nodes in an ad-hoc network can have multiple capabilities and exploiting one or more of the capabilities can improve the quality of positioning. Another form of geometric quantity is bearing (AOA), and such a quantity, singly or in conjunction with distance, can contribute to network localization.
Localization using bearing-only measurements and hybrid distance-bearing measurements has been an active research area. Examples of methods using bearing-only type information can be found in [5][6][7][8].
Among studies dealing with localization schemes using hybrid distance-bearing information, we note those of [9][10][11][12][13]. In particular, Ash and Potter [9] present a node-localization scheme in wireless sensor networks using bearing and RSS measurements and demonstrate that sub-meter location accuracy is achievable. They evaluate the differences between angle-only, distanceonly, and hybrid systems by deriving the localization Cramér-Rao bound for a system utilizing joint angle and distance observations.

Role of rigidity and global rigidity
In the formalism of rigidity, nodes are represented by vertices in a graph. The edges in the graph represent sensing and communication. Rigid graph theory is concerned with properties of graphs that ensure that the network modeled by the graph is rigid. Roughly speaking, a network is rigid if its only continuous (smooth) motions satisfying measurement constraints are those corresponding to translation or rotation of the entire network. A network corresponding to a rigid graph benefits from its "local" unique realization. A network is globally rigid if its only continuous and discontinuous motions satisfying measurement constraints are those corresponding to translation, rotation, or reflection of the entire network. A network corresponding to a globally rigid graph benefits from its "global" unique realization. Rigidity proved to be helpful in maintaining the shape of a formation of mobile autonomous agents, such as vehicles and robots. On the other hand, global rigidity plays a role in determination of the existence/ uniqueness problem in network localization.

Related work
Rigidity theory has become increasingly popular in the research on network localization, see, e.g., [14][15][16][17][18][19][20][21][22]. Eren et al. [14] provide a theoretical foundation for network localization in terms of graph rigidity theory. They show that a network has a unique localization if and only if its underlying graph is globally rigid. In addition, they show that a certain subclass of globally rigid graphs, trilateration graphs, can be constructed and localized in linear time. Moore et al. [15] take global rigidity and trilateration graphs one step further with robust quadrilaterals that provide unambiguous localizations and tolerate measurement noise. Aspnes et al. [18] analyze the performance of network localization in networks of randomly placed nodes using rigidity theory. Anderson et al. [19] use the idea of increasing sensor transmit powers temporarily to increase the sensing radius of nodes to acquire the needed rigidity-based graphical properties in sensor networks with minimal connectedness properties.
Graph rigidity problem with bearings for formation control and localization first appeared in [23,24]. The analysis of bearings within the framework of graph rigidity and localization was developed in [25,26]. There is a concept termed parallel rigidity developed in [25,26], which assists in the analysis of the graph rigidity for localization where there is bearing measurement. Parallel rigidity was used in localization in sensor networks with bidirectional links in [25]. Directed parallel rigidity was used for localization in robot networks with unidirectional links in [26]. Specifically, it was shown that parallel rigidity with bearings is the dual of the rigidity with distances.

Contribution of this article
Cooperative network localization problem can be split up into (i) existence/uniqueness and (ii) algorithmic problems. The existence/uniqueness problem is concerned with the structural properties of a sensor network, which ensure unique solvability of the localization problem. For the solution of the network localization problem, we need unambiguity in the shape of the network based on internode measurements. The algorithmic problem is dealing with finding the positions of nodes in the network, and the computational complexity involved in a solution. Within the framework of these issues, this article employs the concept of parallel rigidity, carrying forward the previous results of [25,26]. We first show that bearings (AOA) provide more information than directions, on which parallel rigidity is based on. Thus, in essence, bearing-based rigidity is stronger than parallel rigidity, which allows us to use bearing measurements in conjunction with distances while having less number of measurements and a simpler network structure. Results are presented for networks in two dimensions.
The rest of the article is organized as follows. Section 2 explains the localizability problem and topology-control aspects in cooperative localization. Section 3 reviews distance-based globally rigid graphs in two dimensions. Section 4 deals with bearing-based global rigidity and bilateration for localization. Section 5 deals with the graphical conditions of hybrid distance-bearing based rigidity, the construction of spanning tress and distancebearing-based Henneberg sequences for localization. Section 6 presents evaluation results. Section 7 discusses noisy localization and limited measurement coverage. Section 8 contains concluding remarks.

Cooperative localization and topology control
The network localization generally consists of two phases, namely the measurement phase and the location estimation phase [2]. Most sensor network localization algorithms rely on measurements between neighboring sensor nodes for location estimation. Packets are exchanged between neighboring nodes in the network in the measurement phase. The receiver node can extract information regarding distance or bearing by measuring or estimating one or more signal metrics from the physical waveforms corresponding to these packets.
In the location estimation phase, measurements are aggregated and used as inputs to a localization algorithm. In this section, first we describe the distinction between noncooperative and cooperative localization algorithms. Then, we explain the localizability issue arising within the cooperative localization and elaborate the graphical issues in the localizability problem.

Noncooperative versus cooperative
In a noncooperative (one-hop) localization approach, there is no communication between ordinary nodes, only between ordinary nodes and anchors. Every ordinary node needs to communicate with multiple anchors, requiring either a high density of anchors or long-range anchor transmissions as shown in Figure 1.
In cooperative (multihop) localization, we still allow ordinary nodes to make measurements with anchors, but in cooperative localization, we additionally allow ordinary nodes to make measurements with other ordinary nodes as shown in Figure 2. Internode communication removes the need for all nodes to be within communication range of multiple anchors. Thus, high anchor density or long-range anchor transmissions are no longer required. The additional information gained from these measurements between pairs of ordinary nodes can offer increased accuracy and coverage.
A formal statement of the "cooperative localization problem" is given by Patwari et al. [3]. Consider a sensor network S consisting of a set of m >0 nodes labeled 1 through m that represent anchor nodes together with n -m >0 additional nodes labeled m + 1 through n that represent ordinary nodes. Let measurements μ ij between certain pairs of nodes s i , s j be given, and suppose that the coordinates p i of the anchor nodes s i are known. The cooperative localization problem is finding the coordinates of the ordinary nodes such that the assignment of the coordinates of ordinary nodes is consistent with the measurements μ ij and is consistent with anchor node coordinates. The corresponding framework of the cooperative sensor network is shown in Figure 3. We note that graph structure naturally arises in representation of cooperative networks.
Cooperative localization algorithms can be generally divided into "centralized algorithms," which collect measurements at a central processor before calculation, and "distributed algorithms," which require sensors to share information only with their neighbors, but possibly iteratively. Here, we give a brief summary of these algorithms. For a detailed discussion of these algorithms, see [2,3,27] and the references therein.
In centralized algorithms of cooperative localization, the positions of all nodes are determined by a central    Fig. 2. The nodes 1, 2, and 3 correspond to three anchor nodes. These nodes are connected by edges between each other in the graph since the corresponding distances, although not measured via sensors, can be calculated using the known positions of the anchor nodes.
processor. This processor collects measurements from anchors as well as ordinary nodes and computes the positions of all ordinary nodes. Centralized algorithms are usually not scalable and thus impractical for large networks. If they are feasible to implement, the main motive behind the interest in centralized localization schemes is the likelihood of providing more accurate location estimates than those provided by distributed algorithms. In the literature, there exist three main approaches for designing centralized distance-based localization algorithms: multidimensional scaling (MDS), linear programming, and stochastic optimization approaches. It is relevant to note for MDS that it is a centralized algorithm in its raw form, though recent study has attempted to break away from this restriction [28].
In distributed algorithms of cooperative localization, there is no central controller, and every node infers its own position based only on locally collected information. Distributed algorithms are scalable and thus attractive for large networks. Distributed algorithms for cooperative localization generally fall into one of two categories, namely, "network multilateration" and "successive refinement" [3].
In network multilateration, each ordinary node estimates its multihop range to the nearest anchors. When each ordinary node has multiple measurement estimates to known positions, its coordinates are calculated locally via multilateration. Successive refinement algorithms try to find the optimum of a global cost function, e.g., least squares (LS), weighted LS (WLS), or maximum likelihood (ML). Each sensor estimates its location and then transmits that assertion to its neighbors. Neighbors must then recalculate their location and transmit again, until convergence. Typically, better statistical performance is achieved by successive refinement compared to network multilateration, but convergence issues must be addressed.
A recent direction of research in distributed algorithms is the use of particle filters. In [29], Ihler et al. formulated the sensor network localization problem as an inference problem on a graphical model and applied a variant of belief propagation (BP) techniques, the so-called nonparametric belief propagation (NBP) algorithm, to obtain an approximate solution to the sensor locations. The main advantages of the NBP algorithm are its easy implementation in a distributed fashion and sufficiency of a small number of iterations to converge. In [30], Bayesian inference is performed through an iterative local message passing procedure based on belief propagation and particle-filtering message representation.
There may be hybrid algorithms that combine centralized and distributed features to reduce the energy consumption beyond what either one could do alone [3].
For example, if the sensor network is divided into small clusters, an algorithm could select a processor from within each cluster to estimate a map of the cluster's sensors. Then, cluster processors could operate a distributed algorithm to merge and optimize the local estimates, such as described in [31].

Topology-control aspects of localizability in cooperative networks
Despite a considerable number of techniques developed for cooperative localization, there is a great number of associated research challenges, including analytic characterization of the cooperative networks from the aspect of localization; development of efficient localization algorithms for various classes of cooperative networks under a variety of conditions.
Topology control is one of the most important techniques used in wireless ad hoc and sensor networks. The aim of this technique is to control the topology of the graph representing the communication links between network nodes with the purpose of maintaining some global graph property (e.g., connectivity), while reducing energy consumption and/or interference that are strictly related to the nodes' transmitting range. Topology control for connectivity has been well studied (e.g., [32][33][34][35][36]).
From the topology control perspective, applications of the notions of rigidity and global rigidity in cooperative network localization are well described and their importance is well demonstrated from both the analytic and the algorithmic aspects in the recent literature [18,19,37]. In particular, it is established in [14,18] that a necessary and sufficient condition for unique localization of a d-dimensional cooperative network is global rigidity of any d-dimensional representation (G, p), where G is the representative graph of the cooperative network, and the edge lengths ||p(i) -p(j)|| imposed by p are equal to the corresponding known internode distances d ij , assuming that the absolute positions of at least three anchors in ℝ 2 (which do not lie on the same line) or four anchors in ℝ 3 (which do not lie on the same plane) are known.
For example, for the cooperative sensor network shown in Figure 2 to be localizable, the underlying graph of the sensor network shown in Figure 3 should be globally rigid [18]. Moreover, the network graph should satisfy certain other constraints to be localizable in linear time [19]. In particular, this article is intended to explore the conditions for the localizability (in linear time) of cooperative networks that use bearing information along with distances.
The construction techniques developed in this article, namely, building spanning trees, bilaterations, trilaterations are obtained via topology control algorithms. Topology-control phase takes place between measurement and location update phases. We note that we implement these topology constructions so that location estimation can be implemented in linear time. An advantage of this construction-based approach is that during deployment, sensors can first perform simple topology control (using, for example, measurement power control) to construct a topology with simple connectivity-based properties. Then using our constructionbased operation (e.g., power control), the network constructs a localizable topology. References [32] and [38] provide a comprehensive survey on existing techniques. The topology of a network is determined by the subset of active nodes and the set of active links along which direct communication can occur. A topology-control algorithm takes a graph G = (V, E) representing the network, where V is the set of all nodes in the network and there is an edge (v 1 , v 2 ) E ⊆ V 2 if and only if nodes v 1 and v 2 can directly communicate with each other, and transforms it to a graph G T = (V T , E T ) such that V T ⊆ V and E T ⊆ E. A related question is where topology-control mechanisms are placed in the network protocol stack. Among the many possible solutions, one approach given by Santi [32] is that topology control is an additional protocol layer positioned between routing and MAC layer.

Graph theoretic statement of the localization problem
Consider a network S consisting of a set of m >0 nodes labeled 1 through m that represent anchor nodes together with n -m >0 additional nodes labeled m + 1 through n that represent ordinary nodes. Let distances d ij between certain pairs of nodes s i , s j be given, and suppose that the coordinates p i of the anchor nodes s i are known. The localization problem is finding a map p : S ℝ 2 which assigns coordinates p i ℝ 2 to each node s i such that ||p(i) -p(j)|| = d ij holds for all pairs i, j for which d ij is given, and the assignment is consistent with any node coordinate assignments provided in the problem statement.
We can associate a graph G = (V, D) with a network by associating a vertex of the graph with each sensor (the vertex set is V ), and an edge of the graph with each sensor pair for which the inter-sensor distance is known (the edge set is D). Let |V| denote the number of vertices and |D| the number of edges. A 2-dimensional framework (G, p) is a graph G = (V, D) together with a map p : V ℝ 2 . The framework is a realization if it results in ||p(i) -p(j)|| = d ij for all pairs i, j where (i, j) D. Two frameworks (G, p) and (G, q) are equivalent if ||p(i) -p(j)|| = ||q(i) -q(j)|| holds for all pairs i, j with (i, j) D. The two frameworks (G, p) and (G, q) are congruent if ||p(i) -p(j)|| = ||q(i) -q(j)|| holds for all pairs i, j with i, j V. This is the same as saying that (G, q) can be obtained from (G, p) by an isometry of ℝ 2 , i.e., a combination of translations, rotations and reflection.

The role of global rigidity
A framework (G, p) is rigid if there exists a sufficiently small positive such that if (G, q) is equivalent to (G, p) and ||p(i) -q(i)|| <ε for all i V then (G, q) is congruent to (G, p). Intuitively, a rigid framework cannot flex. We remark that there exist rigid frameworks (G, p) and (G, q) which are equivalent but not congruent, see [39].
Given the graph and distance set of a globally rigid framework, relative localization is feasible; yet there is not enough information to position the framework absolutely in ℝ 2 . To do this requires the absolute position of at least three vertices, and in fact they must be generically positioned.
Hence, the existence/uniqueness problem is describing how one can decide if a prescribed framework is globally rigid. Consider a rigid framework (G, p) in ℝ 2 . It is said to be generic if the set containing the coordinates of all its points is algebraically independent over the rationals. It is known that rigidity of frameworks in ℝ 2 is a generic property. In other words, provided p is generic, the graph G alone determines the rigidity of the framework, and so we can speak of rigidity of a graph.
There is a test for rigidity involving the rank of rigidity matrices with entries formed from the coordinates of the vertices, and in two dimensions there is a graph theoretic necessary and sufficient condition for rigidity proved by Laman [40]. See Whiteley [41] and references therein for a thorough exposition of rigidity.
When it comes to testing for global rigidity, there is an algebraic test using stress matrices [42]. In two dimensions, there is a necessary and sufficient condition for global rigidity of a graph: either the associated graph is the complete graph on three vertices or it must have two properties: (i) it must be 3-connected; (ii) it must be redundantly rigid [39,43]. The definition of 3-connectedness is as follows: between any two vertices of the graph, there must exist at least three paths which have no edge or vertex in common, apart from the end vertices. A graph is termed redundantly rigid if with the removal of any edge, it remains rigid.

Computational complexity of localization
The computational complexity of the algorithmic localization problem has been dealt with in the literature. The general answer is that the computational complexity of localization is NP-hard as proved by Saxe [44], and this continues to be true for an important subclass of sensor network graphs, such as those which are unit disk graphs [18].

Possible strategies to reduce computational costs
We need to introduce some notation. Let G = (V, D) be a graph. Then the graph G 2 is defined as (V, D ∪ D 2 ) where (a, b) D 2 just when a ≠ b, and there exists c with (a, c) D and (b, c) D. Thus, G 2 is obtained from G by adding edges between the vertex pairs of G which are separated by precisely one intermediate vertex, i.e., by adding edges between the two-hop vertex pairs of G. The graph G 3 is defined as Methods for reducing computational complexity can be found by imposing more conditions on the underlying graph. In particular, one might expect that with more data, i.e., more inter-sensor distances being specified than the minimum number required to secure global rigidity of the underlying graph, there might be a possibility to cut computational costs. Indeed this is so. There is an important class of graphs in two dimensions, called trilateration graphs, in which the computational complexity of localization is polynomial, and on such occasions as linear, in the number of vertices [14].
One of the key contributions of rigidity-based approach is that it provides how to systematically construct globally rigid graphs (in other words, localizable graphs), using trilateration from graphs without this property. Construction involves sensors determining distances not just to their immediate neighbors, but also to their two-and three-hop distant neighbors [19]. This corresponds to increasing the sensing radius temporarily by adjusting transmit powers for each sensor. In the case of determining distances to two-hop neighbors, doubling of the sensing radius will suffice. Indeed, an advantage of this construction-based approach is that during deployment, sensors can first perform simple topology control (using, for example, measurement power control) to construct a topology with simple connectivity-based properties. Then using constructionbased operation, the network constructs a localizable topology. Once the localization of each node is achieved, sensor nodes decrease their sensing radii back to onehop distances. The following results summarize the methods provided by Anderson et al. in [19]. Suppose G is connected. G 2 is generated by doubling the sensing radius, and G 3 is generated by trebling the sensing radius. First, if G is an edge 2-connected graph in ℝ 2 , then G 2 is globally rigid. Secondly, if G is a connected graph in ℝ 2 , then G 3 is globally rigid.

Bearing measurement
A bearing is the angle between the x-axis of the local coordinate system of node i and the line segment joining node i with node j with which the node i has a sensing/communication link. The angle is measured in counterclockwise rotation direction from the x-axis of the local coordinate system. A node's local coordinate system is chosen by each node based on some criteria, e.g. the coordinates are referenced to a known location in the immediate area, or the longer side of a node is chosen to be the x-axis of the local coordinate system, and so forth. Two local coordinate systems may not always line up on the same map. We assume that each node has its own coordinate system as described in [8]. If two nodes i and j have a sensing/communication link between each other as shown in Figure 4, then bearing constraints for i and j, denoted by θ ij and θ ji respectively, are the angles between the x-axis of each node's own coordinate system and the link (i, j).

Heading
Our aim is to obtain a relation between the coordinates of node i and j given the bearing constraint between them. In real implementations of bearing information, the information about a global coordinate system (x G , y G ) is either known by all nodes (all nodes have compass capabilities) or is transmitted from anchor nodes to ordinary nodes. This is done by passing "heading" information from one node to another. An example of Figure 4 Local coordinate systems for node i and node j are shown with the axes (x i , y i ) and (x j , y j ), and bearing constraints for node i and node j are denoted by θ ij and θ ji , respectively.
propagation of heading information between nodes is given in [8].
By heading is meant the angle between the x-axis of the node's local coordinate system and the y-axis of the global coordinate system measured in counterclockwise direction from the x-axis of the node's local coordinate system. For example, j i is the heading of i in Figure 5.
Once node i passes the information j i and θ ij to node j, then node j can compute its heading by j j = π -(θ ijj i ) + θ ji . Once nodes recognize the global coordinate system, they can transform the bearing information measured in their local coordinate systems (θ ij and θ ji ) into bearing information in the global coordinate system (Θ ij and Θ ji ) as shown in Figure 6. We note that Θ ji = π + Θ ij (mod 2π).

Bearing constraint
A bearing constraint between node i and j can be expressed as where e x is the unit vector along the x-axis of the global coordinate system, and ∡[.] stands for the function that maps the two vectors in the argument to the angle between them, where the angle is measured in the counterclockwise direction from the second vector to the first vector in the argument. We will simply denote a bearing constraint between nodes i and j as ∡(p(i), p(j)) = Θ ij .

Problem statement for bearing-only localization
Let bearings Θ ij between certain pairs of nodes s i , s j be given, and suppose that the coordinates p i of the anchor nodes s i are known. The localization problem for a network with bearing-only information is finding a map p : S ℝ 2 which assigns coordinates p i ℝ 2 to each node s i such that ∡(i, j) = Θ ij holds for all pairs i, j for which Θ ij is given, and the assignment is consistent with any node coordinate assignments provided in the problem statement.
We can associate a graph G = (V, B) with a network by associating a vertex of the graph with each sensor (the vertex set is V), and an edge of the graph with each sensor pair for which the inter-sensor bearing is known (the edge set is B).

Necessary-sufficient condition for bearing-only localization
As was the case with distances, there is a test for bearing-based rigidity involving the rank of a matrix with entries formed from the coordinates of the vertices, and in two dimensions there is a graph theoretic necessary and sufficient condition for bearing-based rigidity using parallel rigidity as described by Eren [26].
The graph rigidity problem for networks with bearings is the dual of the distance case. For networks using pure distance information, the conditions for global rigidity  Figure 6 Once nodes recognize the global coordinate system, they can transform the bearing information measured in their local coordinate systems (θ ij and θ ji ) into bearing information in the global coordinate system (Θ ij and Θ ji ).
are stronger than those for rigidity. For networks in 2space with bearing information between nodes, the situation is strikingly different. Because the key constraints are linear equations, if there are two non-similar parallel rigid networks with points p and q, then both networks are not rigid. Therefore, for bearing-only networks, rigidity implies global rigidity, (provided that there is one distance information to rule out dilation, which is easily satisfied with the existence of two anchor nodes). In two dimensions, if we have 2n -3 bearings of a parallel rigid network, and add one distance, we will have a globally rigid network.

Reducing computational costs
Let G = (V, B) be a graph. Then the graph G 2 is defined as (V, B ∪ B 2 ) where (a, b) B 2 just when a ≠ b and there exists c with (a, c) B and (b, c) B. Thus G 2 is obtained from G by adding edges between the vertex pairs of G which are separated by precisely one intermediate vertex, i.e., by adding edges between the twohop vertex pairs of G. Along the lines of the distance version, it is possible to cast that G 2 renders a connected graph G into a bearing-based globally rigid graph stated formally as follows: Theorem 1. Let G = (V, B) be a connected graph in ℝ 2 . Then G 2 is bearing-based globally rigid.
The proof is based on the bilateration operation described in [45] whereby a node with known bearings to two other nodes determines its own position in terms of the positions of those two neighbors. We know that when G is connected, G 2 is generated by doubling sensing radius. As in the case of trilateration, the computational complexity of localization in bilateration is polynomial, and on occasions such as linear, in the number of vertices.

Problem statement for hybrid distance-bearing information
Before going into detail, it is useful to formally state the network localization problem for networks with hybrid distance-bearing information. Let the set of sensor nodes be S, let distances d ij and bearings Θ ij between certain pairs of nodes s i , s j be given, and suppose that the coordinates p i of anchor nodes s i are known. The localization problem is one of finding a map p : S ℝ 2 which assigns coordinates p i ℝ 2 to each node s i such that ||p(i) -p(j)|| = d ij holds for all pairs i, j for which d ij is given, ∡(p(i), p (j)) = Θ ij holds for all pairs i, j for which Θ ij is given and the assignment is consistent with any node coordinate assignments provided in the problem statement.
Before stating the main result of the section, we need to introduce some notation. We denote the underlying graph of a network that make use of hybrid distancebearing information by a multi-graph G = (V, D, B). In this notation, we associate a vertex of the graph with each sensor (the vertex set is V ), a distance edge of the graph with each sensor pair for which the inter-sensor distance is known (the edge set is D), a bearing edge of the graph with each sensor pair for which the inter-sensor bearing is known (the edge set is B). Let |V | denote the number of vertices, |D| the number of distance edges and |B| the number of bearing edges. V. This is the same as saying that (G, q) can be obtained from (G, p) by an isometry of ℝ 2 , i.e., a combination of translations. A framework (G, p) is globally rigid if every framework which is equivalent to (G, p) is congruent to (G, p). Given the graph and distancebearing sets of a globally rigid framework, there is not enough information to position the framework absolutely in ℝ 2 . To do this requires the absolute position of at least "one" vertex (which is an anchor node in sensor networks).

Necessary-sufficient condition of rigidity for hybrid distance-bearing information
For networks with combined distance-bearing measurements, there is a combinatorial characterization of rigidity for hybrid distance-bearing constraints as follows [25,26]: Before starting to examine the information provided by bearings, we draw your attention to see that (i) appropriately chosen (satisfying the conditions above) set of 2|V | -3 distances plus any single bearing is an appropriate set of 2|V | -2 constraints; (ii) appropriately chosen set of 2|V | -3 bearings plus any single distance is an appropriate set of 2|V | -2 constraints; (iii) a "spanning tree", used once for distances and a second time for bearings, is an appropriate set of 2(|V | -1) = 2|V | -2 constraints. A tree is a graph in which any two vertices are connected by exactly one path. Given a connected, undirected graph, a spanning tree of that graph is a subgraph which is a tree and connects all the vertices together. Spanning tree-based methods were used for indoor positioning using NBP in [46].

Uniqueness: global rigidity for hybrid distancebearing information
The combinatorial conditions for hybrid distance-bearing information were derived by transforming bearing constraints into direction constraints which were studied in discrete geometry literature. Two line segments p i -p j and q i -q j have the same direction if they are parallel to each other. Direction constraints are studied using parallel drawings that result in a dual theory of rigidity for direction constraints used in computeraided design and scene analysis. Servatius and Whiteley [47], and Jackson and Jordán [48] set out to define the conditions for mixed distance-direction constraints. Within the framework of methods using mixed distance-direction constraints, if there is more than one distance constraint, the resulting framework can never be globally rigid. Similarly, we note that, if there are multiple distance constraints, Theorem 2 provides the criterion for rigidity up to translation, but not for global rigidity. We come now to the key contribution of this article. It is to explain that bearing information provides more than direction information, and hence networks with certain structures of mixed distancebearing constraints satisfying the conditions in Theorem 2 may indeed be globally rigid even if it has more than one distance constraint. This is the point we would like to underline in this article. First we have the following lemma. Lemma 1. Mixed distance-bearing constraints between two nodes i and j provide a unique position with respect to each other.
As we will see, direction is a less stringent condition than bearing constraint. Now let us consider the case where the constraints are mixed distance-bearing. For distance, we have the same equation ||q 1 -q 2 || = ||p 1p 2 ||. Now for bearing, we have q 1 -q 2 = a(p 1 -p 2 ) where a ℝ + . This implies a||p 1 -p 2 || = ||p 1 -p 2 || and thus a = 1. Therefore, q 1 -q 2 = p 1 -p 2 which provides a unique solution. □ This lemma provides the structure of the network that we will consider in the following result.
Theorem 3. A spanning tree, used once for distances and a second time for bearings, is a globally rigid set of 2(|V | -1) = 2|V | -2 constraints.
Proof. We know that this spanning tree satisfies the conditions listed in Theorem 2. Thus it is rigid. Let us consider an ordering of vertices 1, ..., |V |. We have mixed distance-bearing constraints between adjacent nodes on the tree. Starting from vertex 1, which has a fixed position, it is indeed possible to determine the position of every other node without ambiguity using the reasoning in Lemma 1. □ This proof also fairly easily describes how localization occurs for a sensor network with a graph which is of the form of a spanning tree, used once for distances and a second time for bearings where the underlying graph G is connected. We identify an ordering of vertices in G, with vertices v 1 , v 2 , ..., v k and edges (v 1 , v 2 ), (v 2 , v 3 ), .., (v (n-1) , v n ). Starting from the anchor node with known position, we determine the unique position of every other node along the spanning tree.
Naturally, one can contemplate whether the requirement that a node i has a mixed distance-bearing constraint with the same node j can somehow be relaxed. What if node i has a distance constraint with node k and a bearing constraint with node j? The following lemma settles down this question.
Lemma 2. Provided that the positions of any two nodes j and k are fixed, the condition that node i having a distance constraint with node k and a bearing constraint with node j unambiguously determines the position of node i.
Proof. For distance, we have the equation ||q i -q k || = || p i -p k ||. Now for bearing, we have q i -q j = a(p i -p j ) where a ℝ + . This implies q i = q j +a(p i -p j ). We substitute this on the left side of the distance constraint: || q i -q k || = ||q j +a(p i -p j )-q k || = ||q j -q k +a(p i -p j )||. Since j and k are fixed, q j -q k = p j -p k . Thus the left side of the distance constraint equation turns out to be ||p j -p k + a(p i -p j )|| = ||(1 -a)p j + ap i -p k ||. This expression has to be equal with the right side of the distance constraint, namely ||p i -p k ||, for any j and k. This is true only if a = 1, which implies that q i -q j = p i -p j , and thus node i has a unique position. □ Let G = (V, D, B) be a multi-graph. LetĜ be a multigraph obtained from G by adjoining a new vertex i with one distance and one bearing constraint. We call this operation a vertex addition of G [24,26]. In this operation, there is no restriction on the choice of the neighbors of node i, i.e., the neighbors of node i can be identical or distinct. Starting from an initial double edge between two vertices, one edge for distance constraint, and the other for bearing constraint, we apply vertex addition operation repeatedly. Thus we obtain a series of graphs, G 0 , G 1 , G 2 , .., G n . We call this set of graphs distance-bearing-based Henneberg sequence, inspired from the name of a series of graphs generated in distance-based rigid graphs.
Theorem 4. Let a multi-graph G = (V, D, B) given. If G has a subsetĜ = (V,D ,B ) which has a distancebearing-based Henneberg sequence using vertex addition operation, then G is globally rigid.
Proof. Starting from G 0 , and repeatedly applying vertex addition, consecutively obtained graphs have a unique realization from Lemmas 1 and 2. □ Note that a spanning tree, used once for distances and a second time for bearings is a subset of multi-graphs generated by distance-bearing-based Henneberg sequence using vertex addition operation.

Computational cost
In a fully distributed computation, the propagation of position information works as follows: Nodes immediately adjacent to an anchor node get their distance/bearings directly from the anchor node. Assuming that a node has some neighbors with distance/bearing information for an anchor node, it will be able to compute its own position and forward it further into the network. An algorithm to localize a spanning tree, used once for distances and a second time for bearings is provided in Figure 7. Evidently all vertices can be localized relative to anchor nodes sequentially, in a single sweep and in time O(|V |).

Evaluation of localization in random networks
We generate 20 instances of test networks each with 100 nodes by uniformly distributing the nodes in an area of 1000 × 1000. We do not consider anchors, as we are interested here is how many nodes we can localize.
We consider three different measurement scenarios: 1. Distance-Bearing Measurements: We assume that each node can measure at least one distance and one bearing to a single node among its neighbors. As shown in Section 5, connectivity of the network suffices to localize each node in the network. We raise the sensing radius of the network gradually until the largest connected component of the network contains all of the hundred nodes. We denote the resulting graph by G.

Bearing-Only Measurements:
We assume that each node can measure at least two bearings to two different neighbors. As shown in Section 4, creating G 2 from G of the network suffices to localize each node in the network. One way to achieve G 2 when G is the connected network at radius r(G) is to start with radius r(G) at each node, and then raise the sensing radius of each node individually so that it connects to all of its neighbors' neighbors. 3. Distance-Only Measurements: We assume that each node can measure at least two distances to two different neighbors. As explained in Section 3, creating G 3 from G of the network suffices to localize each node in the network. One way to achieve G 3 when G is the connected network at radius r(G) is to start with radius r(G) at each node, and then raise the sensing radius of each node individually so that it connects to all of its neighbors' neighbors' neighbors.
For each instance of the test networks, we compute the following performance metrics: • r(G): We raise the sensing radius of the network gradually until the largest connected component of the network contains all of the N nodes resulting a graph denoted with G. We refer to this radius as r (G). • r(G 2 ): We denote the largest sensing radius of nodes in G 2 by r(G 2 ).
•r(G 2 ): We compute the average of the radii of all nodes in G 2 and denote it by r(G 2 ).
• n G 2 : Total number of links in G 2 .
• r(G 3 ): We denote the largest sensing radius of nodes in G 3 by r(G 3 ). First, we explain the network structure in one instance of the exemplary networks. This is shown in Figures 8,  9, and 10. Links in G are shown in Figure 8. We assume that each node can measure one distance-one bearing to at least one node among its neighbors, forming a spanning tree in the network as described in Section 5. If this is the case, a connected graph will suffice for the nodes to localize themselves using the algorithm in Figure 7.
If each node can measure at least two bearings to two different neighbors, but no distance-bearing measurement together, as explained in Section 4, then we need more links and larger sensing radii for network localization to obtain G 2 for bilateration. In Figure 9, the set of additional links to be inserted into G to obtain G 2 are shown. The union of the set of links in Figures 8 and 9 will be needed for the nodes to localize themselves using bilateration.
If each node can measure at least two distances to two different neighbors, but no bearings at all, then the requirements of localization in terms of the number of links and the required sensing radii for localization using trilateration are more burdensome. We need G 3 for trilateration as explained in Section 3 for localization. In Figure 10, the set of additional links to be inserted into G 2 to obtain G 3 are shown. The union of the set of links in Figures 8, 9 and 10 will be needed for the nodes to localize themselves using trilateration. Now, we look into the results of the 20 instances reported in Figures 11, 12 and 13. We make the following observations. First, controlling the sensing radii of the nodes individually to increase connectivity, e.g., from G to G 2 or G to G 3 , results in r(G 2 ) to be about twice the value of r(G), and r(G 3 ) to be about 3.5 times the value of r(G). This can be seen from the values shown in Figure 11. For the average values ofr(G), r(G 2 ), andr(G 3 ) , we obtain different proportions in values.r(G 2 ) is slightly more than 1.5 times the value ofr(G), andr(G 3 ) is slightly less than three times the value of r(G) as seen clearly in Figure 12. When we compare the number of links in G, G 2 , and G 3 , we observe that n G 2 is slightly more than twice the value of n G , and n G 3 is slightly less than six times the value of n G . Figure 13 shows the number of links in G, G 2 , and G 3 . Again, we observe large variations in different test cases. It should be noted, however, that a connected graph G has considerable advantages over G 2 and G 3 in terms of all performance metrics. This shows the importance of topology control for easily localizable networks and the importance of applying graph-theoretic techniques to construct networks for easy localization.  x-side y-side Figure 9 The additional links that need to be inserted to create G 2 from G are shown in this figure.
7 Discussion on noise in measurements and limited measurement coverage

Localization with noise in measurements
So far, graph theory has been used to characterize the solvability of the sensor network localization problem so that if the underlying graph of the sensor network is generically globally rigid and there is a suitable set of anchors at known positions, then a unique set of sensor positions can be determined that is consistent with the measurements. However, distance and bearing measurements used for localization are measured in a physical medium that introduces errors. Therefore, in practice, distance and bearing measurements will never be exact, and the equations whose solutions deliver sensor positions in the noiseless case in general no longer have a solution.
One of the early studies focusing on robust distributed localization of noisy sensor networks using globally rigid robust quadrilaterals with certain distance measurement errors and ambiguities caused by these errors is presented in [15]. In that article, assuming that the measurement noise can be modeled as a random process, the proposed algorithm uses robust quadrilaterals as a building block for localization, adding an additional constraint beyond graph rigidity. This constraint permits localization of only those nodes which have a high likelihood of unambiguous realization.
The study by Cao et al. [49] introduces the Cayley-Menger determinant as an important tool for formulating the geometric relations among node positions in x-side y-side Figure 10 The additional links that need to be inserted to create G 3 from G 2 are shown in this figure.  Figure 11 Sensing radii to achieve various connectivity and localization objectives.  Figure 12 Average of sensing radii to achieve various connectivity and localization objectives. sensor networks as quadratic constraints. It also discusses solutions to optimization problems to estimate the errors in the inaccurate measured distances between sensor nodes and anchor nodes. The solution of the optimization problem, when used to adjust noisy distance measurements, gives a set of distances between nodes which are completely consistent with the fact that sensor nodes live in the same plane as the anchor nodes.
An elegant recent article by Anderson et al. [50] provides a formal theory to deal with noise in globally rigid formations for localization. For a cooperative network, we write the set of vertices of the corresponding graph as V = V O ∪ V A , where V A is the set of vertices corresponding to the anchors, and V O is the set of vertices associated with ordinary nodes. Let the coordinate values of the anchors bep(i) for i V A . Note that the distance between any two anchors of the network is necessarily known. Let us denote the set of edges joining two vertices which correspond to anchor nodes by D A , which is a subset of D. Then the equations which apply to the framework after using the anchor node information include distance information and coordinate information and are of the form Determining a set of valuesp(i) for all i V O satisfying these equations is the localization problem. We note that the equations are written with the squares to have polynomial equations in the variables. Suppose that each squared distance d 2 ij in (3) is replaced by d 2 ij + n ij , the quantity n ij being a (typically small) error in the squared distance (rather than in the distance itself); thus d ij remains the actual distance, and n ij constitutes the measurement noise effect. Then it is natural to consider the following set: This equation set is still overdetermined but will have no solution in general. One example of this problem involves localizing a single sensor node given noisy measurements of its distance from three anchors, as treated in [49]. In that case, there are two unknown coordinates of the single sensor node to be localized. But there are three equations perturbed by noise, and there is generically no solution. Given the graphical conditions that would guarantee unique localizability in the noiseless case, localization in the noisy case can be posed as a minimization problem. Despite the inability to solve the noisy equation set (5)(6), the apparent solution is to seek those coordinate values of p(i), call themp * (i) for i V O = V \V A solving the following minimization problem: Now we know that if all n ij are zero, there is generically a unique solution to the minimization problem, namely, the solution of the usual localization problem, which yields a zero value for the cost function. Let n denote the vector of n ij , corresponding to some arbitrary ordering of the subset of edges D\D A , i.e., edges incident on at least one ordinary (nonanchor) vertex. Let ||n|| denote the Euclidean norm so that ||n|| 2 = {i,j}∈D\D A n 2 ij . The central result of [50] is the following theorem.
Theorem 5 (Anderson et al. [50]). Consider a globally rigid and generic framework (G,p ) defined by a graph G = (V, D) and vertex positionsp(i) , i = 1, 2, .., |V |. Let V A ⊂ V denote vertices of G corresponding to anchor nodes, of which there are at least three and for which the value ofp(i)is known, and let D A ⊂ D denote those edges incident on two vertices of V A , with the graph G A = (V A , D A ) then forming a complete subgraph of G. Let d ij denote the distance between nodes i and j when (i, j) is an edge of G. Consider the minimization problem (7), and denote the solution of the minimization problem bȳ p * . Then there exists a suitably small positive Δ and an associated positive constant c such that if the measurement errors in the squares of the distances obey n <Δ, the solution of the minimization problem is unique and there holds ||p * −p|| ≤ c||n||.
This result establishes that a globally rigid network can be approximately localized when the internode distance measurements are contaminated with a sufficiently small noise. The solution of the minimization problem is unique and returns sensor position estimates which are not far from the correct values. In particular, a bound on the position errors can be found in terms of a bound on the distance errors. This result serves to fill a logical gap between the formal treatment of noiseless localization and typical practical approaches to sensor localization in nonideal circumstances.
Fang et al. [36] present a sequential algorithm, called "Sweeps" for estimating sensor positions when noiseless and noisy [51] distance measurements are available in globally rigid networks. They use experimental evaluation to demonstrate network instances on which the algorithm is effective.
In the case of other localization problems relying on other types of measurement modalities, for example, bearings in which, again in the noiseless case, an overdetermined set of equations determines the solution. For example, in bearing based localization in two dimensions, typically three or more lines have a common point of intersection. The same issue will arise in the presence of noise, and the treatment in [50] gives some of the formal machinery for dealing with it. The formal analysis in a forthcoming article [52] provides some understanding about the relationship between the errors in the bearing measurements and the corresponding errors in the sensor position estimates given a particular localization scheme. In particular, a bound on the position errors is found in terms of a bound on the bearing errors.

Computational complexity in easily localizable networks with noisy measurements
The main results in [50,52] establish that a globally rigid network can be approximately localized when internode distance or bearing measurements are contaminated with sufficiently small noise. A related problem is solving the minimization problem numerically. The network localization problem using internode distances is, in general, NP-hard [18], and we may expect the same complexity for localization with bearing measurements. Nevertheless, several computational algorithms have been proposed to solve the noisy localization problem, e.g., algorithms using sum of squares relaxation [53], squared-range LS (SR-LS) [54], convex optimizationbased algorithms and in particular semi-definite programming [55][56][57], ML location estimation method [58], the methods that use MDS [59], or other methods, e.g., described in [15,60].
For a localization problem to be solvable in polynomial time, it is, in general, necessary that some special structure holds for the graph. Specifically, localization in the noiseless case can be done in linear time: (i) in the case of trilateration graphs for distance measurements; (ii) in the case of bilateration graphs for bearing measurements; (iii) in the case of double spanning trees for hybrid distance-bearing measurements.
For networks with noisy measurements, "polynomial time" sequential algorithms were introduced in the context of easily localizable networks. In such networks, localization can be carried out sequentially, sensor by sensor, in a distributed fashion, and central calculations are not required. In particular, recent articles by Bishop and Shames [61,62] are two further steps in developing computationally efficient algorithms that extend the existing results for globally rigid networks in the context of easily localizable networks where distance and bearing measurements are noisy. While it is beyond the scope of this article to present a detailed discussion of such numerical schemes, we do give a brief explanation of measurement refinements carried out in sequential localization algorithms to be used in easily localizable networks.
A numerical recipe for noisy localization in globally rigid trilateration networks using distance measurements is provided in [62]. They consider the problem of improving the accuracy of localization using two types of algorithms, namely the "batch refinement" algorithm, and the "sequential refinement" algorithm. These algorithms refine distance measurements and localize a d-lateration graph sequentially. We will give a brief overview of sequential refinement here, which is based on Cayley-Menger determinant introduced as an important tool for formulating the geometric relations among node positions in sensor networks as quadratic constraints in [49].
Consider a globally rigid graph G(V, D) and a set of internode distance measurements. The problem of distance measurement refinement is to find a set of distances d * ij for all (i, j) D such that the following set of equations is consistent.
The Cayley-Menger matrix of a single n-tuple of points p 0 , ..., p n-1 in d-dimensional space is defined as, The determinant of Cayley-Menger matrix provides a way of expressing the hyper-volume of a "simplex" using only the lengths of the edges. A simplex of n points is the smallest (n -1)-dimensional convex hull containing these points. There is the following result stemming from the above definition of the volume of a simplex [63]: Consider an n-tuple of points p 0 , ..., p n-1 in ddimensional space. If n ≥ d + 2, then the Cayley-Menger matrix is singular, namely |M(p 0 , ..., p n-1 )| = 0. Now consider the refinement problem for a network with a K 4 underlying graph (complete graph with four vertices) with a set of measured internode distances. For this graph to be realizable in ℝ 2 , the Cayley-Menger determinant corresponding to the internode distances should be equal to zero, i.e., the volume of the tetrahedron defined by the four nodes should be zero.
So the problem is to find a set of e * ij such that the Cayley-Menger determinant over the square of distances (d * ij ) 2 =d 2 ij − e * ij is equal to zero and (e * ij ) 2 = ||e * || 2 is minimum. Hence we have the following optimization problem.
For more general networks, if noisy distance information between sensor node s 0 and r (r >3) anchor nodes is available to s 0 , we can obtain r -2 independent quadratic equality constraints [49] by imposing the coplanarity of the following node sets: {s 0 , s 1 , s 2 , s 3 }, {s 0 , s 1 , s 2 , s 4 }, ..., {s 0 , s 1 , s 2 , s r }. Let e i be the error in the estimated squared distances between sensor s 0 and anchor s i . Each coplanarity condition yields a quadratic equality constraint in the form of f i (e 1 , e 2 , e i ) = 0, i = 3, 4, ..., r. We want to minimize the sum of the squared errors J = e 2 1 + e 2 2 + . . . + e 2 r , r ≥ 3, subject to r -2 quadratic equality constraints. When r = 3, we have a least squares problem with one quadratic constraint, which is well studied [64]. When r >3, we can use the following Lagrangian multiplier method. Let l i , i = 1, ..., r -2 be the Lagrangian multipliers. We can get the form of the solution H(e 1 , . . . , e r , λ 1 , . . . , λ r−2 ) = r i=1 e 2 i + r−2 i=1 λ i f i+2 (e 1 , e 2 , e i+2 ) . When l i >0, the Lagrangian H is a strictly convex function, because of the strict convexity of the function J and the positive semi-definiteness of the Hessians of functions f i+2 . Then there exists a unique global minimum. Thus numerical methods, such as gradient methods, can be utilized to search for the minimum [49].
The problem of finding cliques (a clique, in brief, is a complete subgraph of a graph) of fixed size in a general graph is a part of solving this optimization problem. It is possible to define a k-clique-finding algorithm for an arbitrary graph (specifically d-lateration graphs, k ≤ d) that has a worst-case polynomial complexity in the number of vertices [62].
The sequential algorithm proposed in [62] is based on this Cayley-Menger method to refine distance measurements and localize a d-lateration graph (d = 2, 3, 4) sequentially. The general outline of such a sequential algorithm for trilateration is shown in Figure 14. The essence of these sequential approaches is that there are indeed numerical methods for localization in "polynomial time" for easily localizable networks.
Cyclically constrained optimization is exploited in [61] to reduce the random errors in the problem of localization with bearing measurements. For triangulation networks, which can be created by bilaterations, triangular cycles lead to a system of linear constraints on bearings. Notably, the problem of finding a set of independent polygonal angle constraints in an arbitrary triangulation graph is solvable in "polynomial time" in the number of vertices [61].
For triangulation graphs, the proposed optimization problem is a linear least-squares problem with linear constraints and thus can be solved using standard methods. The conceptual goal of the optimization algorithm which is simply to force the network to live consistently in the sense that the bearings pointing to each sensor must intersect in a common location as illustrated in Figure 15. The constraint-based algorithm forces this requirement to be obeyed whenever a sufficient number of constraints exists. In some cases, the complexity of

Limited measurement coverage
It is natural to contemplate that, the measurement coverage can be an issue, and it might not be possible to extend sensing radii for distance and bearing measurements.
One of the central motivations behind hybrid distance-bearing measurements studied in this article is to eliminate the need of increasing sensing radius to satisfy the conditions of localizability in linear time complexity. We emphasize that, for networks with hybrid measurements, mere connectivity without increasing sensing radius provides a spanning tree that guarantees localizability in linear time.
For distance-only or bearing-only measurements, two issues should be noted in regard to increasing sensing radius for trilateration or bilateration to achieve localization in linear time [19]. First, in order that a sensor sense and be sensed by its two-hop distant neighbors, a doubling of the sensing radius may be excessively great. Suppose a particular sensor j has n j neighbors. Let every sensor pass to its neighbors the list of its own neighbors. Each sensor in this way can learn the list of its two-hop neighbors. Second, in order to communicate with twohop neighbors, the communication may not need to be as frequent as that with the immediate neighbors, which results in a saving of power. In fact, it might only be required once. The point of communicating with twohop neighbors is often to eliminate a flip ambiguity. Once this is eliminated, even for a moving sensor network, it may be enough to remain within range only of the original neighbors.
One could still contemplate networks where the bilateration or trilateration property failed. One might suspect that such networks could at least still be globally rigid, with parts of them in bilateration or trilateration 'clusters', linked by a certain number of edges. If the number of clusters is small, one might conjecture that the computational complexity of localizing such a globally rigid graph could be exponential in the number of clusters, but not the number of nodes.

Conclusions
This article identified the graphical conditions on unique localizability in cooperative networks with hybrid distance and bearing measurements. Moreover, this article provided further sets of conditions, within the networks satisfying these graphical properties, so that the associated computational complexity becomes linear in the number of sensor nodes.
Specifically, we showed that, for the networks with hybrid distance-bearing measurements, the localization problem for the network is uniquely solvable, almost always, if and only if the corresponding graph is distance-bearing-based rigid. We have shown how, by forming a spanning tree used once for distances and a second time for bearings where the underlying graph G is connected, the localization problem can be made solvable in linear time with significantly less number of sensing links and smaller sensing radii of nodes compared to the networks with distance-only or bearingonly measurements.
We summarize the graphical conditions of the networks with distance-only measurements, bearing-only measurements, and hybrid distance-bearing measurements for comparison as follows: • For networks with distance-only measurements, if we start with a connected graph G, then G 3 is required for linear complexity. Trilateration provides a systematic way of constructing G 3 .
• For networks with bearing-only measurements, if we start with a connected graph G, G 2 is required for linear complexity. Bilateration provides a systematic way of constructing G 2 .
• For networks with hybrid distance-bearing measurements, if we start with a connected graph G, then G used once for distances and once for bearings is sufficient for linear complexity, because spanning tree does indeed already exist in a connected graph.
As explained in the discussions section, these easily localizable networks can be localized in polynomial time when measurements are noisy. We have further global uniqueness results that can give new insights where other patterns of distances and bearings are used, as well as results in three dimensions. These will be explored further in a future article.