Research on multi-agent systems has been attracting increasing interest in recent years. This is due to the potential applications of this research in a variety of fields, including sensor networks , distributed power grids , distributed computation and so on. For certain multi-agent systems, such as a cooperating group of unmanned airborne vehicles (UAVs), there are some tasks, e.g. formation shape control , state consensus , or self-localization , which often need to be performed in a distributed way and using limited sensing.
A common task for UAV formations is that of localizing a target, such as a radio-frequency emitter. A prerequisite for this is for all agents to know their positions in a common (global) coordinate basis, since otherwise vehicles cannot sensibly cooperate by sharing measurements from the emitter in order to localize it. However, not all vehicles may have access to GPS, depending on their location or possible jamming, but if one vehicle does have such access, then it can seek to localize the other vehicles in the same formation (allowing subsequently all vehicles to localize the target). Those other vehicles, while not GPS-equipped, are assumed to be equipped with inertial navigation sensing, which means that each views its position and motion in a local coordinate frame whose orientation and relative to the global frame are unknown. The book chapter  provides a high level introduction to localisation in a 3D environment, including limited consideration of mobility. While this can be achieved in principle if vehicles have sensors delivering relative positions (range and bearing) of their neighbors, and an ability to communicate with their neighbors, distance-only sensing is preferred in many scenarios [11, 3] due to its reliability, low cost, low power and light weight sensors. Therefore, a method that can localize non-GPS-equipped UAVs using distance-only measurements (and INS data from non-GPS-equipped vehicles) is of great appeal. Providing such a method is the motivation for this paper. Additionally, we seek a method which degrades gracefully, rather than collapses, in the presence of increasing noise.
For the sake of completeness, we remark that there are a number of works using very different approaches in the utilization of distance-only measurements in multi-agent systems to achieve localization of vehicles whose global coordinates are not measured by GPS; most of them require the vehicles, playing the role of mobile sensors, to move in certain standard trajectory patterns . The trajectories are adopted simply for the purpose of achieving self localization in a global coordinate basis of each agent, and so may conflict with achieving formation objectives such as surveillance of a target. Fundamentally too, this setting, though presented in many papers, is likely to be energy inefficient. In another direction again, some work in the robotics literature studies the problem of determining relative position and orientation between two robots  given distance measurements between them. The paper  does some pioneering work in this area and investigates this problem in 3D, with interagent distances assumed to be measurable with high though not perfect accuracy. However, this method is only applicable to agent pairs, not to multi-agent formations. Further, noise robustness is not high. In our paper, we obtain location information, as long as orientation information of the local coordinates using distance-only measurements, much like localizing a rigid body .
On the algorithm side, there are some previous work looking at localization problems using SDP, see e.g. 
. However, those formulations cannot be adopted in the case of distance-only measurements. In this case, the relative position vector must be squared to reveal the distance-only measurements, and then, in the noisy case, the associated least-squares formulation will lift the order of polynomials to 4. Our paper gives a SDP formulation specifically used in the distance-only measurements case that remains of order 2.
This paper provides an implementation of a localization algorithm given noisy distance measurements combining semidefinite programming (SDP) and Maximum Likelihood Estimation (MLE), which is applicable in both a two-agent situation and a number of multi-agent situations. The two-agent situation is particularly important because, in a multi-agent setting, it is often desired that only one agent emitting signals is enough for the localization of all other agents in the network. Such a scenario gives a star topology, which is trivial to treat once we obtain solutions in the two-agent situation. However, we will look at generic multi-agent cases in the future. Compared to other similar research, in our proposed method, 1. Agents are not required to move in any designated pattern; 2. Only one GPS equipped agent (which must be moving) is required; 3. Only distance measurements between sensors are used, and 4. real noisy data verifies the robustness of the algorithm in noise. In short, this paper provides a practical SDP formulation to achieve localization using distance-only measurements.
The rest of this paper is organized as follows:
Section II poses, in a mathematical framework, the problem of localizing in 3D space an agent without GPS using distance measurements to a second GPS-equipped agent. It also discusses the minimal number of measurements required via the theory of graph rigidity. Section III is the most comprehensive section of the paper; it explains how the problem can be solved, using several major steps. These steps include semidefinite programming (SDP), which gives an initial solution, and determination of a maximum likelihood estimate via a gradient algorithm initialized by the SDP solution. Issues of gradient flow on a manifold are also discussed. In addition, the usage of the proposed algorithm in limited multi-agent cases is also discussed. Simulations and separately results from flight testing data are presented in Section IV. Concluding remarks are provided in Section VI.
Ii The 3D localization problem and number of measurements required
In this section, we first introduce the general localization problem for an agent pair. Then we use graph rigidity theory to determine a minimal number of measurements required to achieve localization.
Ii-a Problem formulation
The problem of a pair of agents localizing each other is the most elementary version of the larger scale multi-agent localization problem. Consider two agents in 3D space, as shown in Figure 1. Agent 0 is the reference agent, whose position in the global coordinate system is denoted by . Agent 1 is the agent to be localized, whose position in its own local coordinate system (almost certainly derived from an inertial navigation system) is denoted by . Suppose further that a coordinate system transformation, including a rotation matrix and a translation vector , can transfer agent 1’s local coordinates into global coordinates, so that the position of agent 1 in the global coordinate system is . The matrix and vector are assumed to be constant (and unknown) through the interval over which measurements are taken, i.e. the cumulative drift in the INS system over the time interval of measurements is negligible. Equivalently, the time interval is sufficiently short.
In addition, suppose is the distance between the two agents and define
Thus is the relative position vector of agent 1 as seen from agent 0, using global coordinates. Immediately we have
Suppose at time instants , each agent takes distance measurements and each knows the coordinates and at these time instants through messsage interchange. The objective is to infer and after a finite number of measurements. Knowledge of and yields knowledge of the positions of agent 1 in global coordinates, i.e. solves the localization problem for that agent.
Note that there are 6 degrees of freedom to pin down, three each associated withand . Therefore, one must expect that at least 6 measurements would be needed to solve the relevant equation set. As summarized in  there are generally 40 solutions of that set 111The equation set is actually a set of simultaneous polynomial equations. Unless all the equations are linear, as a matter of algebra n simultaneous equations in n unknowns always have multiple solutions, provided they are solvable in the first place.
. One disambiguates only by using further measurements. Although for generic agent trajectories, the minimal number of measurements to secure disambiguation is 7, there could be a problem if the trajectories are special. E.g., for two agents both flying in exactly straight lines, as it turns out, distance only measurements will never give a unique solution. In the rest of this paper, we refer to a ”generic trajectory” as a trajactory that has a unique solution when there are more than 7 distance measurements. Note the set of ”generic trajectories” will happen with probability 1 if agents are doing a random walk.222The situation is analagous to what happens when one is solving the linear equation Ax=b for square A. Generic A are those which are nonsingular. Nongeneric or special A are those which are singular. Randomly selected A will with probaiblity 1 be nonsingular or generic. Just as linear equations may not be solvable for certain parameter values, so can the nonlinear equations relevant here be nonsolvable for certain parameter values, essentailly defined by special trajectories.
Regarding the SDP based approach we discuss later in this paper, if less than 7 measurements are taken, then the algorithm will randomly give one solution from the multilple possibilities that satisfies all measurements, but the solution may be far away from the ground truth. Noise contaminating the distance measurements is a further issue to contemplate.
Ii-B Identifying the minimal number of measurements required
On the theory side, there are some previous papers providing some analysis of this problem for the two agent case or solving a simplified version of this problem in 2D. The paper  points out that the two-agent problem in 2D is almost always solvable with no less than 4 inter-agent measurements, followed by a computationally effective solution of the problem in a two-dimensional ambient space via the concept of four bar chain in mechanics . Because the solution of this two-agent localization problem in 3D is analogous to solving the forward kinematics of a Stewart-Gough platform  without the constraints that both the fixed and mobile platform are planar, we know that with 6 distance measurements, the elementary two-agent localization problem stated formally in Section III normally has 40 distinct solutions , though some of the solutions may not be real and hence must be discarded. Not unsurprisingly, an additional, i.e. 7th, interagent distance measurement is enough to disambiguate the multiple solutions, at least generically, so that a unique solution results.
A related result along these lines can be found in , expressed in terms of the merging of globally rigid frameworks. A globally rigid framework essentially is a framework of vertices and bars of known lengths joining the vertices, such that the specification of the lengths defines the framework up to a congruence. Now the coordinate-alignment problem of interest to us can generally be reformulated as one which (a) associates a 3D (globally rigid) body with each agent (the body being a polyhedron with vertices defined by the agent positions at each time an interagent distance is measured), (b) associates a bar (or link between two bodies) with each interagent distance measurement, and (c) seeks conditions on the overall number of links and rules concerning the points on the bodies to which they can be incident to ensure that the entire framework is globally rigid, i.e. every joint or bar end in the framework has a computable location in a coordinate frame fixed to the framework, which cannot flex.
The result of  states that if two globally rigid frameworks in an ambient three-dimensional space are joined by 7 or more bars of fixed lengths (and the endpoints of the bars can only coincide to a limited extent, or are distinct) then the merged framework is again globally rigid. This means that if one of the frameworks before merging is localized, the whole framework after merging (and thus the second framework before merging) is localized.
Other relevant literature includes that on multi body-bar problems, see [20, 6]. A body-bar framework is one where bars are regarded as joining rigid bodies, rather than intersect in a point or joint. In our context, each rigid body is defined, as noted above, by the set of points at which a particular agent is located at the times distance measurements are taken. These papers focus on determination of counting conditions on the links to ensure rigidity (nondeformability roughly) and global rigidity (unique specification up to congruence) of body-bar frameworks. In the particular case of two agents, they provide the same conclusion already noted, i.e. generically 7 measurements are required. The counting conditions are also consistent with the limited set of multiagent cases we discuss later in this paper.
Hence, in the end, we consider vehicle localization for set-ups corresponding to a proper subset of all possible globally rigid body-bar frameworks, or equivalently a subset of all possible information patterns linking multiple UAVs, in order that recursive localization can be achieved.
Iii Solution to the two-agent problem
In this section, we consider the two agent case, apart from noting at the end of the section in a Remark how the ideas can be applied to certain multiagent arrangements. We first present, in subsection A, a semidefinite programming (SDP) approach for solving a constrained least squares problem in the case of no less than 7 measurements. This solution actually is a relaxed solution (in the sense of optimization theory) of the problem of interest, and so a further step may have to be undertaken to deal with possible consequences of the relaxation. This further step may induce failure of the constraint that the matrix
is orthogonal with determinant 1, and so we show how to modify the outcome of the calculations of Subsection 3.1 to achieve an orthogonal matrix in Subsection 3.2. The outcome of the SDP computations is an estimate of the rotation matrix and translation vector. These estimates however are not maximum likelihood estimates, even if the noise contaminating the distance measurements is zero mean and gaussian. In Subsection 3.3, we show how a maximum likelihood estimate of the matrix and vector can be obtained by a gradient flow; it is vital to initalize this properly, and the result of the SDP calculation is used for that purpose.
In this section, because there are only two agents, we let agent be the reference agent, whose position in the global coordinate system is denoted by . On the other hand, agent is the agent to be localized, whose position in its own local coordinate system is denoted by . Suppose further that a coordinate system transformation, including a rotation matrix and a translation vector , can transfer agent ’s local coordinates into global coordinates, so that the position of agent in the global coordinate system is . As before, denotes an interagent distance.
Iii-a A semidefinite programming (SDP) relaxation
Suppose , . There holds for measurements at time (with the time index suppressed in the following equations)
The equation for can be written as
The fourth term involves quadratic expressions of the unknowns, i.e. the entries of and . The fifth and sixth terms involve linear terms only. The end result is the following quadratic constraint on the entries of and , presented to place all the unknowns on the right side of the equation:
If we regard each summand in (4) as a product of known values and independent unknowns , one can seek to solve the set of equations with a sufficient number of measurements. Generally 16 measurements are sufficient because there are 16 linearly independent unknowns (at least if the associated coefficient matrix has full rank, which proves to be almost always the case). When the coefficient matrix is close to singular, more measurements are required. If there are more measurements than required, a least-squares solution is used.
In the above solution process, we regard each summand in (4) as a product of a known value and an independent unknown. This therefore leaves out the consideration of the nonlinear constraints (though recall that (4) only arises after use of a number of such constraints). Using these constraints may reduce the number of measurements required and improve the estimation accuracy in the presence of noise as we now argue in more detail.
Define to be the 16-vector of unknowns in (4) and to be the row vector of known values in (4) at time . Further, assuming for convenience there are 16 measurements, suppose and is a column vector with the th entry being .
The optimization problem we are trying to solve is
where expresses all the constraints among the . Note there are altogether 10 independent constraints expressed in as listed in the Appendix. An additional four constraints are listed which are not independent of the 10 just mentioned.
We now show how to solve (5), using semidefinite programming. Define
Solving for is equivalent to solving for with the constraints that
1. is positive semidefinite (denoted by )
3. The bottom right corner element
Suppose that denote the inner product of two matrices and , i.e. , and define
The objective function can be written as
Similarly, the constraints in (15) can be written in terms of
where are 17 by 17 symmetric matrices and are 10 scalars. Now the optimization problem becomes
A naive semidefinite programming (SDP) relaxation is given by removing the rank constraint. After removing the constraint, no longer implies , so it is best to add those constraints as well. As observed in a number of simulations, the above additional constraints are helpful to obtain a low-rank solution for generic trajectories, and therefore helpful to reduce the rounding error when we recover the rank-1 solution using SVD (as shown later in the paper). In addition, because entries in the rotation matrix should satisfies , one can also consider including Reformulation-linearization-technique (RLT) constraints to further reduce the set of feasible solutions.
After finding the solution, we can find its best rank 1 approximation under matrix 2-norms by using SVD and setting all but the largest singular value to zero, see Section 4.3 of. In fact, it is generally a very good approximation because the solution of the relaxed problem is very close to rank 1. In a number of numerical simulations, the largest singular value of the solution is generally larger than the second largest singular value.
The solution of the above SDP can then be used as an initial condition to the gradient optimization presented below in Subsection III-C. One should note that the number of measurements used in the semidefinite programming method can increase arbitrarily and decrease to 7. Although the validity of the semidefinite programming approach does not straightforwardly imply that the minimum number of measurements is 7, we nevertheless assume that this constraint always holds; this will be discussed in more detail in Subsection IV-B.
Iii-B Obtaining a rotation matrix
In the noisy case, let and denote the estimated value of and respectively. Note that the imposition of the rank 1 constraint through approximation, as a final tidy-up step of the algorithm, may destroy orthogonality, though up to that point, SDP guarantees orthogonality by virtue of the equality constraints. In this case, the obtained may not satisfy all the conditions to be a rotation matrix; therefore, one more step can be taken to find the rotation matrix that has the closest Frobenius norm to . Thus one seeks
where denotes the Frobenius norm.
This minimization problem is a special case of the Orthogonal Procrustes problem [8, pp. 29-34]. To find this orthogonal matrix
, the singular value decomposition can be used
Suppose is a diagonal matrix with the last entry on the diagonal being and all other entries on the diagonal being . The solution of this constrained version of the Orthogonal Procrustes problem is
Note that det can be used as a error measure.
Iii-C Maximum Likelihood Estimation and Gradient Flow on Manifold
To refine the solution of the SDP, it is natural to contemplate a gradient descent optimization. In the noisy situation, we want a maximum likelihood estimate of and , and this will not be given by the quadratic index and constrained least squares estimate of SDP. Hence we will formulate a new index whose minimization yields the MLE, and then examine a gradient descent algorithm to compute the minimum.
Suppose the measurement of distance
is contaminated by a Gaussian noise with zero mean and some standard deviation; i.e. the measurement sensor delivers. We assume in this section that and can be obtained without noise and that the measurement noise values at different times are independent.
Now we obtain . The likelihood function is
Therefore the maximum likelihood estimate is given by solving the optimization problem below
Like many MLE estimation problems, the index is not convex and minimization is not necessarily straightforward. A particular problem with using gradient descent on any nonconvex function is to find an initialization within the capture region of the global minimum, and this is where the calculations of the previous subsections become relevant if not critical. We use the result from linear processing (with the number of measurements being 16) or the SDP approach (with the number of measurements being greater than or equal to 7) in the previous subsections to initialize a gradient descent algorithm aimed at finding the minimum. 333In unpublished work  studying autonomous underwater vehicle localization using distance-only measurements to a non-GPS-equipped vehicle, minimization of the same MLE index is tackled using a form of approximation for the index, with application of a parallel projection algorithm. Proper comparison with the methods of this paper cannot be made, due to the limited details in the paper. How issues of initialization can be effectively tackled is also not clear.
It is useful for this purpose to know how to calculate the gradient of a function of a special orthogonal matrix on the manifold of special orthogonal matrices. Consider : , mapping special orthogonal matrices to the reals. Suppose we want to compute the gradient, reflecting the orthogonal property.
The general idea (technically a consequence of the fact that is a Riemannian manifold and so inherits a metric from the Euclidean space in which it is embedded ) is: first we consider a point on the manifold, and compute the gradient in the standard way, then we project it onto the tangent space of at the point . For this purpose, we need to have the tangent space and normal spaces of at some point , and also the projection of a vector to the tangent space.
i. The tangent space of at is the set of such that 
and the normal space is
where and denote the tangent and normal spaces at respectively.
ii. Furthermore, suppose at a point , the gradient of in is
Then the projection of on the tangent space is given by
The first part of the proof regarding the tangent and normal spaces of (i.) is given in . We now prove that (ii.) the projection of on is given by .
First, let . Observe that
is symmetric; therefore, is normal to the tangent space at . Furthermore,
is skew-symmetric; thus. Further because , is the projection of on . ∎
Now suppose . It is straightforward to obtain the gradient and , and so we have the gradient flow
The SDP relaxation of Section III is likely to give a good initial condition, and then a gradient method using a discretization of (13) is sufficient in solving this optimization problem. The use of the Procrustes problem algorithm can be applied in each step to tidy up departures from orthogonality due to round-off and discretization error.
In the case of multi-agent localization, the same algorithm can be adopted for those networks where each non-GPS equipped agent has 7 measurements to a GPS-equipped agent. Thus if there is only one GPS-equipped agent, the graph will be a star form; each of the GPS-denied agents (with INS) must have 7 or more distance measurements between it and the GPS-equipped agent. This allows a collection of two-agent problems to be solved (possibly in parallel). Note that this topology may well correspond to the physical situation of one agent remaining high above a building canyon, while other agents explore the building canyon.
Iv Simulations and Performance Evaluation
Iv-a Simulation and Comparison between SDP and Gradient Descent
Simulations are given below. In the simulations, white Gaussian noise is added to the measurements of , and there are 7 such measurements. Furthermore, SNR denotes the Signal-to-noise ratio in dB. Here SNR is defined as where is the average distance between agents and is the root mean square (RMS) amplitude of the noise added in to the measurements.
In each figure, the upper subplot shows the measurements , the second subplot shows the three entries of the translation , and the third subplot shows the nine entries of the rotation matrix . The ordering of the entries is . Note the correction as described in section III-B is applied.
In the upper subplot, the blue line shows the true value of and the red line shows the noisy distance observations .
In the middle and lower subplot, ’o’ marks the true value, ’+’ marks the value obtained by solving the SDP relaxation and ’’ marks the value obtained by gradient descent refinement.
Figure 2 depicts the noiseless case, i.e. , in Figure 3 and in Figure 4 . It is well known that in practice the distance accuracy (1-sigma distance error) is inversely proportional to signal bandwidth as well as the square root of SNR. For passive RF detection problems the SNR in free space is inversely proportional to distance squared. At 1km the SNR is usually high say 20 or more dB. 444The value is relevant for the DSTG vehicles used to obtain the real data discussed below.
Gradient descent refinement can provide an improved result in comparison to simple SDP relaxation. This is partly because gradient descent refinement uses a better estimator, and partly because of the relaxation error in SDP. However, it is also notable that SDP relaxation is important in providing the initial condition to avoid convergence to a local nonglobal minimum in the gradient descent search for the MLE optimum.
In the above simulations, which all have 7 measurements, a unique solution can be found for generic trajectories. A detailed argument based on algebraic geometry will then imply that for almost all instances of the problem, the coefficient matrix in the objective function is of rank 7, carrying enough information to obtain a unique solution. Furthermore, as more and more measurements are obtained, the rank of will further increase, allowing more and more accurate estimation. Nevertheless, there exist special cases where the rank of is always less than 7.
Suppose for example the two agents pursue two parallel straight line paths. It is not hard to see there is insufficient data to obtain a unique rotation matrix. Also, with noise, nearly but not exactly parallel straight line paths may cause a problem.
With more measurements provided, the result can be improved in both the SDP relaxation and gradient descent refinement for generic trajectories.
The objective function of the constrained linear least squares problem and the objective function of the gradient descent method are different. The first one is designed to exploit as far as possible the linear occurrence of unknowns in the expression while the second one is derived from a maximum likelihood estimator. As noted, the constrained least squares problem is used to find an appropriate starting point for the gradient descent method, which then finds the accurate maximum likelihood estimate.
Iv-B Number of measurements vs. estimation error
From , one can conclude that with 6 distance measurements, the 3D geolocation problem has 40 solutions, where some of the solutions may not be real and must be discarded. The paper  further shows that an additional measurement can almost always disambiguate the solutions and with 7 distance-only measurements, a unique solution can be found.
Although the use of SDP followed by the gradient-based MLE algorithm as proposed in this paper does not require a minimum number of measurements, an implicit assumption is that the number of measurements is greater than or equal to 7. In the case of less than or equal to 5 measurements, the gradient of the objective function of the MLE optimization is always zero on a manifold, and the final result is randomly located on the manifold. In addition, in the case of 6 measurements, there is no way to deal with the issue of disambiguating local optima. With the number of measurements being greater than or equal to 7, it is reasonable to expect that the performance of the approach will be improved as the number of measurements increases. To study this, let us suppose a direction error measure is defined as
Figure 5 shows the change of direction error in degrees as the number of measurements increases. The simulations were run with three different levels of SNR: 10dB, 20dB and 30 dB. In the above figure, the blue curve shows the result with SNR10, the red curve shows the result with SNR20 and the yellow curve shows the result with SNR
30. With each number of measurements and each level of SNR, the result shown in the above figures is the average of 200 simulations with random vehicle trajectories and white noise.
Iv-C Trial on real data
Real flight data provided by Australian Defence Science and Technology Group is used in this section to test the performance of the proposed method in practice. The data consists of: the true positions of UAV1 in the global coordinates, the positions of UAV2 in its local INS coordinates and the distance measurements between the pair of agents. The relevant numbers are recorded in Table I.
|Time(s)||UAV1 global Coordinates||UAV2 Local Coordinates||Distances|
Now using the above constrained least-squares method followed by gradient optimization, one can compute UAV 2’s positions in the global coordinate system as shown in Figure 6. In Figure 6, circles are the positions of UAV 1 in global coordinates; triangles are the recovered position of UAV 2 in the global coordinates, and the solid line is the true trajectory of UAV2. Comparing the triangles and the solid line, we observe that the localization algorithm achieves better accuracy in the north and east directions but poorer accuracy in height. This can be explained by the following observation: we find that the trajectories of the UAVs are very close to coplanar, which may be detrimental to the reliability of the result. Indeed, if we change the height recorded by a UAV’s inertial sensor by a few metres, a ’mirror solution’ will be obtained. This statement can be drawn from an analysis of the (reduced) rigidity matrix, see .
In this paper, we first proposed a novel semidefinite optimization approach for solving the problem of 3D mobile localization of a GPS-denied agent using distance-only measurements. After that, a maximum likelihood estimator is used in a further approach to enhance the accuracy of localization, with simulations using real field test data.
Future work includes introducing systematic treatment for the multi-agent case using similar procedure with this paper. We are also involved in a separate study of localization of GPS-denied agents using bearing-only (azimuth and elevation) measurements.
The 10 constraints are listed as below. Let be the th constraint and we have
Note there are 10 independent equality constraints and 16 independent variables, so the problem has 6 degrees of freedom. That is consistent with the fact that each of the rotation matrix and the translation matrix has three degrees of freedom. One should also note that the equation set used to express those constraints is not unique. In fact, there are 4 other constraints being dropped here, which can be derived from . The additional constraints are
-  Brian DO Anderson, Iman Shames, Guoqiang Mao, and Baris Fidan. Formal theory of noisy sensor network localization. Journal on Discrete Mathematics, 24(2):684–698, 2010.
-  Ming Cao, A Stephen Morse, and Brian DO Anderson. Reaching a consensus in a dynamically changing environment: a graphical approach. SIAM Journal on Control and Optimization, 47(2):575–600, 2008.
-  Ming Cao, Changbin Yu, and Brian DO Anderson. Formation control using range-only measurements. Automatica, 47(4):776–781, 2011.
-  Sundeep Prabhakar Chepuri, Geert Leus, and Alle-Jan van der Veen. Rigid body localization using sensor networks. IEEE Transactions on Signal Processing, 62(18):4911–4924, 2014.
-  Wen-Yeuan Chung. The characteristics of a coupler curve. Mechanism and Machine Theory, 40(10):1099 – 1106, 2005.
-  Robert Connelly, Tibor Jordán, and Walter Whiteley. Generic global rigidity of body–bar frameworks. Journal of Combinatorial Theory, Series B, 103(6):689–705, 2013.
-  Peter Dietmaier. The stewart-gough platform of general geometry can have 40 real postures. In Advances in Robot Kinematics: Analysis and Control, pages 7–16. Springer, 1998.
-  John C Gower and Garmt B Dijksterhuis. Procrustes problems, volume 3. Oxford University Press Oxford, 2004.
-  Uwe Helmke, John B Moore, and Wrzburg Germany. Optimization and dynamical systems. Springer, 1994.
-  John Hopcroft and Ravi Kannan. Computer science theory for the information age. 2012.
-  B. Jiang, M. Deghat, and B. Anderson. Simultaneous velocity and position estimation via distance-only measurements with application to multi-agent system control. IEEE Transactions on Automatic Control, PP(99):1–1, 2016.
-  Bomin Jiang, M. Deghat, and B.D.O. Anderson. Translational velocity consensus using distance-only measurements. In IEEE Conference on Decision and Control, pages 2746–2751, Dec 2013.
-  Usman Mansoor and Habib M. Ammari. Localization in three-dimensional wireless sensor networks. In Habib M. Ammari, editor, The Art of Wireless Sensor Networks, chapter 9, pages 325–363. Springer, 2014.
-  Guoqiang Mao, Barış Fidan, and Brian DO Anderson. Wireless sensor network localization techniques. Computer networks, 51(10):2529–2553, 2007.
-  S.A. Motevallian, Lu Xia, and B.D.O. Anderson. A new splitting-merging paradigm for distributed localization in wireless sensor networks. In IEEE International Conference on Communications, pages 1454–1458, June 2013.
-  Takeshi Nagata and Hiroshi Sasaki. A multi-agent approach to power system restoration. IEEE Transactions on Power Systems, 17(2):457–462, 2002.
-  Keyou You Qizhu Chen and Shiji Song. Cooperative localization for autonomous underwater vehicles using parallel projection. In 13th IEEE International Conference on Control and Automation, to appear, 2017.
-  Davood Shamsi, Nicole Taheri, Zhisu Zhu, and Yinyu Ye. On sensor network localization using sdp relaxation. arXiv preprint arXiv:1010.2262, 2010.
-  D. Stewart. A platform with six degrees of freedom. Aircraft Engineering and Aerospace Technology, 38(4):30–35, 1966.
-  Tiong-Seng Tay and Walter Whiteley. Recent advances in the generic ridigity of structures. Structural Topology, 1984, núm. 9, 1984.
-  Nikolas Trawny, Xun S Zhou, Ke X Zhou, and Stergios I Roumeliotis. 3d relative pose estimation from distance-only measurements. In IEEE/RSJ International Conference on Intelligent Robots and Systems, pages 1071–1078. IEEE, 2007.
-  Changbin Yu, Barıs Fidan, and Brian DO Anderson. Principles to control autonomous formation merging. In Proceedings of the American Control Conference, pages 7–pp. IEEE, 2006.