License: CC BY 4.0
arXiv:2312.10995v1 [eess.SP] 18 Dec 2023

3-D Distributed Localization with Mixed Local Relative Measurements

Xu Fang, Xiaolei Li, Lihua Xie This work is partially supported by National Research Foundation (NRF) Singapore, ST Engineering-NTU Corporate Lab under its NRF Corporate Lab @ University Scheme and National Natural Science Foundation of China (NSFC) under Grant 61720106011 and 61903319. (Corresponding author: Lihua Xie.)The authors are with the School of Electrical and Electronic Engineering, Nanyang Technological University, Singapore. (E-mail: [email protected]; [email protected]; [email protected]).
Abstract

This paper studies 3-D distributed network localization using mixed types of local relative measurements. Each node holds a local coordinate frame without a common orientation and can only measure one type of information (relative position, distance, relative bearing, angle, or ratio-of-distance measurements) about its neighboring nodes in its local coordinate frame. A novel rigidity-theory-based distributed localization is developed to overcome the challenge due to the absence of a global coordinate frame. The main idea is to construct displacement constraints for the positions of the nodes by using mixed local relative measurements. Then, a linear distributed localization algorithm is proposed for each free node to estimate its position by solving the displacement constraints. The algebraic condition and graph condition are obtained to guarantee the global convergence of the proposed distributed localization algorithm.

Index Terms:
Distributed localization, sensor network, mixed measurements, network localizability, 3-D space

I Introduction

Network localization is a fundamental problem in multiagent-related applications such as formation control, cooperative pursuit, target tracking, etc [1, 2, 3, 4]. There are typically two kinds of nodes in a network: anchor nodes and free nodes. The research on network localization focuses on how to localize the unknown free nodes by the known anchor nodes and relative measurements.

In large-scale networks, it may not be practical to equip each sensor with a GPS due to cost and in some environments GPS is not available [5]. In addition, there is usually no central unit that can obtain all the measurements in the network and compute all the positions of the free nodes in a centralized way. Hence, it is more practical to design a distributed localization algorithm such that each free node can estimate its own position by only communicating with its neighboring nodes. The existing distributed algorithms can be divided into four classes: distance-based [6, 7], relative-position-based [8], angle-based [9], and bearing-based [10, 11, 12].

The distance-based network localization has been studied extensively so far. A distance-based network is localizable if and only if it is globally rigid. Based on a generalized barycentric coordinate representation, distance-based distributed protocols are proposed to achieve network localization in both two-dimensional and three-dimensional spaces [6, 7]. Similar result can also be found in the relative-position-based network localization [8]. When each node can measure angles, a semi-definite strategy is used to localize the free nodes iteratively [9]. In the bearing-based network localization, Zhao has proved that an infinitesimally bearing rigid network is localizable [10]. In addition, the problem of how to make use of ratio-of-distance measurements to localize the free nodes is still not solved.

Note that the aforementioned works assume that the measurements of all the nodes are of identical type. In a large-scale network, different node may be equipped with different sensor and has different sensing capability. It is more practical to consider the network localization with mixed measurements. Some nodes may measure only relative distances, while others may measure only relative bearing, angle, relative position, or ratio-of-distance. The existing works consider distributed localization with mixed distance and bearing measurements [13, 14, 15], but [13] is limited to 2-D space and [14, 15] need a global coordinate frame. Another work [16] develops a distributed algorithm for 2-D network localization with mixed distance, bearing, and relative position measurements. Note that the 3-D case cannot be solved by trivially extending the results in [13, 16].

Different from the works [13, 14, 16, 15], we consider 3-D network localization with mixed local relative measurements without any known global coordinate frame. Inspired by our recent work that studies 3-D network localization with the same type of local relative measurements [17], in this paper, we study the network localization with mixed types of measurements, which is more challenging. Each node can only have one of the five types of measurements (relative position, distance, relative bearing, angle, and ratio-of-distance measurements) about its neighboring nodes in its local coordinate frame. A novel rigidity-theory-based distributed localization is developed to overcome the challenge due to the absence of a global coordinate frame. The key idea is to construct displacement constraints for the positions of the nodes by using mixed local relative measurements. Then, a linear distributed localization algorithm is proposed for each free node to estimate its own position by solving the displacement constraints. Moreover, algebraic condition and graph condition are obtained to ensure global convergence of the distributed localization algorithm.

The remaining parts of the paper are structured as follows: angle-displacement rigidity theory and problem statement are given in Section II and Section III, respectively. The localization problem with mixed local relative measurements is formulated in Section IV, where the corresponding algebraic and graph conditions for localizability are given. In addition, a distributed localization algorithm is proposed to ensure global convergence of the distributed localization algorithm. Some numerical examples are given in Section V to illustrate the theoretical results. Section VI ends this paper with some conclusions.

II Preliminaries of Angle-displacement Rigidity Theory

II-A Notations

Let \|\cdot\|∥ ⋅ ∥, Null()Null\text{Null}(\cdot)Null ( ⋅ ), dim()dim\text{dim}(\cdot)dim ( ⋅ ), Span()Span\text{Span}(\cdot)Span ( ⋅ ), |||\cdot|| ⋅ |, and Rank()Rank\text{Rank}(\cdot)Rank ( ⋅ ) denote the L2subscript𝐿2L_{2}italic_L start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT norm, null space, dimension, span, cardinality rank of a given vector or matrix, respectively. The Kronecker product and the determinant of a square matrix are denoted by tensor-product\otimes and det()det\text{det}(\cdot)det ( ⋅ ), respectively. Idd×dsubscript𝐼𝑑superscript𝑑𝑑{I}_{d}\in\mathbb{R}^{d\times d}italic_I start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT italic_d × italic_d end_POSTSUPERSCRIPT is the identity matrix, and 𝟏d(1,,1)T,𝟎d(0,,0)Tdformulae-sequencesubscript1𝑑superscript11𝑇subscript0𝑑superscript00𝑇superscript𝑑\mathbf{1}_{d}\triangleq(1,\cdots,1)^{T},\mathbf{0}_{d}\triangleq(0,\cdots,0)^% {T}\in\mathbb{R}^{d}bold_1 start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ≜ ( 1 , ⋯ , 1 ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , bold_0 start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ≜ ( 0 , ⋯ , 0 ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT italic_d end_POSTSUPERSCRIPT. An undirected graph 𝒢={𝒱,}𝒢𝒱\mathcal{G}=\{\mathcal{V},\mathcal{E}\}caligraphic_G = { caligraphic_V , caligraphic_E } consists of a vertex set 𝒱𝒱\mathcal{V}caligraphic_V of elements called nodes and an edge set 𝒱×𝒱𝒱𝒱\mathcal{E}\subseteq\mathcal{V}\times\mathcal{V}caligraphic_E ⊆ caligraphic_V × caligraphic_V of ordered pairs of nodes called edges, where (i,j)(j,i)𝑖𝑗𝑗𝑖(i,j)\in\mathcal{E}\Leftrightarrow(j,i)\in\mathcal{E}( italic_i , italic_j ) ∈ caligraphic_E ⇔ ( italic_j , italic_i ) ∈ caligraphic_E. The set of neighbors of node i𝑖iitalic_i is denoted as 𝒩i:={j𝒱:(i,j)}assignsubscript𝒩𝑖conditional-set𝑗𝒱𝑖𝑗\mathcal{N}_{i}:=\{j\in\mathcal{V}:(i,j)\in\mathcal{E}\}caligraphic_N start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT := { italic_j ∈ caligraphic_V : ( italic_i , italic_j ) ∈ caligraphic_E }. Suppose ΣgsubscriptΣ𝑔\Sigma_{g}roman_Σ start_POSTSUBSCRIPT italic_g end_POSTSUBSCRIPT is a global coordinate frame in 3superscript3\mathbb{R}^{3}blackboard_R start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT. Let pi,pj3subscript𝑝𝑖subscript𝑝𝑗superscript3p_{i},p_{j}\in\mathbb{R}^{3}italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT be the positions of nodes i,j𝑖𝑗i,jitalic_i , italic_j in ΣgsubscriptΣ𝑔\Sigma_{g}roman_Σ start_POSTSUBSCRIPT italic_g end_POSTSUBSCRIPT, and eijpjpisubscript𝑒𝑖𝑗subscript𝑝𝑗subscript𝑝𝑖e_{ij}\triangleq p_{j}\!-\!p_{i}italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT ≜ italic_p start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT - italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is the relative position in ΣgsubscriptΣ𝑔\Sigma_{g}roman_Σ start_POSTSUBSCRIPT italic_g end_POSTSUBSCRIPT.

Refer to caption
Figure 1: Angle and displacement constraints based network.

Next, we introduce the concepts of angle constraint and displacement constraint, which will be used for 3-D network localization with mixed types of measurements.

II-B Angle Constraint and Displacement Constraint

Lemma 1.

[18] For any three different nodes i,j,k𝑖𝑗𝑘i,j,kitalic_i , italic_j , italic_k in 3superscript3\mathbb{R}^{3}blackboard_R start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT, denote θi,θj,θk[0,π]subscript𝜃𝑖subscript𝜃𝑗subscript𝜃𝑘0𝜋\theta_{i},\theta_{j},\theta_{k}\in[0,\pi]italic_θ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_θ start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , italic_θ start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ∈ [ 0 , italic_π ] as the angles between eijsubscript𝑒𝑖𝑗e_{ij}italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT and eiksubscript𝑒𝑖𝑘e_{ik}italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT, ejisubscript𝑒𝑗𝑖e_{ji}italic_e start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT and ejksubscript𝑒𝑗𝑘e_{jk}italic_e start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT, ekisubscript𝑒𝑘𝑖e_{ki}italic_e start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT and ekjsubscript𝑒𝑘𝑗e_{kj}italic_e start_POSTSUBSCRIPT italic_k italic_j end_POSTSUBSCRIPT respectively. The angles θi,θj,θk[0,π]subscript𝜃𝑖subscript𝜃𝑗subscript𝜃𝑘0𝜋\theta_{i},\theta_{j},\theta_{k}\in[0,\pi]italic_θ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_θ start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , italic_θ start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ∈ [ 0 , italic_π ] are determined uniquely by the parameters wik,wki,wij,wji,wjk,wkjsubscript𝑤𝑖𝑘subscript𝑤𝑘𝑖subscript𝑤𝑖𝑗subscript𝑤𝑗𝑖subscript𝑤𝑗𝑘subscript𝑤𝑘𝑗w_{ik},w_{ki},w_{ij},w_{ji},w_{jk},w_{kj}italic_w start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT , italic_w start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT , italic_w start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT , italic_w start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT , italic_w start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT , italic_w start_POSTSUBSCRIPT italic_k italic_j end_POSTSUBSCRIPT in (1)-(3).

wikeikTeij+wkiekiTekj=0,subscript𝑤𝑖𝑘superscriptsubscript𝑒𝑖𝑘𝑇subscript𝑒𝑖𝑗subscript𝑤𝑘𝑖superscriptsubscript𝑒𝑘𝑖𝑇subscript𝑒𝑘𝑗0\displaystyle w_{ik}e_{ik}^{T}e_{ij}+w_{ki}e_{ki}^{T}e_{kj}=0,italic_w start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT + italic_w start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_k italic_j end_POSTSUBSCRIPT = 0 , (1)
wijeijTeik+wjiejiTejk=0,subscript𝑤𝑖𝑗superscriptsubscript𝑒𝑖𝑗𝑇subscript𝑒𝑖𝑘subscript𝑤𝑗𝑖superscriptsubscript𝑒𝑗𝑖𝑇subscript𝑒𝑗𝑘0\displaystyle w_{ij}e_{ij}^{T}e_{ik}+w_{ji}e_{ji}^{T}e_{jk}=0,italic_w start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT + italic_w start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT = 0 , (2)
wjkejkTeji+wkjekjTeki=0,subscript𝑤𝑗𝑘superscriptsubscript𝑒𝑗𝑘𝑇subscript𝑒𝑗𝑖subscript𝑤𝑘𝑗superscriptsubscript𝑒𝑘𝑗𝑇subscript𝑒𝑘𝑖0\displaystyle w_{jk}e_{jk}^{T}e_{ji}+w_{kj}e_{kj}^{T}e_{ki}=0,italic_w start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT + italic_w start_POSTSUBSCRIPT italic_k italic_j end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_k italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT = 0 , (3)

where wik2+wki20superscriptsubscript𝑤𝑖𝑘2superscriptsubscript𝑤𝑘𝑖20w_{ik}^{2}+w_{ki}^{2}\neq 0italic_w start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT + italic_w start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ≠ 0, wij2+wji20superscriptsubscript𝑤𝑖𝑗2superscriptsubscript𝑤𝑗𝑖20w_{ij}^{2}+w_{ji}^{2}\neq 0italic_w start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT + italic_w start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ≠ 0, and wjk2+wkj20superscriptsubscript𝑤𝑗𝑘2superscriptsubscript𝑤𝑘𝑗20w_{jk}^{2}+w_{kj}^{2}\neq 0italic_w start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT + italic_w start_POSTSUBSCRIPT italic_k italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ≠ 0.

Note that in Lemma 1, θi,θj,θk[0,π]subscript𝜃𝑖subscript𝜃𝑗subscript𝜃𝑘0𝜋\theta_{i},\theta_{j},\theta_{k}\in[0,\pi]italic_θ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_θ start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , italic_θ start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ∈ [ 0 , italic_π ] means that pi,pj,pksubscript𝑝𝑖subscript𝑝𝑗subscript𝑝𝑘p_{i},p_{j},p_{k}italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT can be either colinear or non-colinear.

Definition 1.

Equations (1), (2), and (3) are formally defined as angle constraints for the nodes i,j,k𝑖𝑗𝑘i,j,kitalic_i , italic_j , italic_k with respect to the edges (i,j),(i,k),(j,k)𝑖𝑗𝑖𝑘𝑗𝑘(i,j),(i,k),(j,k)( italic_i , italic_j ) , ( italic_i , italic_k ) , ( italic_j , italic_k ).

A wide matrix Ei=(eij,eik,eih,eil)subscript𝐸𝑖subscript𝑒𝑖𝑗subscript𝑒𝑖𝑘subscript𝑒𝑖subscript𝑒𝑖𝑙E_{i}=(e_{ij},e_{ik},e_{ih},e_{il})italic_E start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = ( italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT , italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT , italic_e start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT , italic_e start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT ) 3×4absentsuperscript34\in\mathbb{R}^{3\times 4}∈ blackboard_R start_POSTSUPERSCRIPT 3 × 4 end_POSTSUPERSCRIPT can be constructed based on five different nodes i,j,k,h,l𝑖𝑗𝑘𝑙i,j,k,h,litalic_i , italic_j , italic_k , italic_h , italic_l. From the matrix theory, for any wide matrix Eisubscript𝐸𝑖E_{i}italic_E start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, there must be a non-zero vector μi=(μij,μik,μih,μil)T4subscript𝜇𝑖superscriptsubscript𝜇𝑖𝑗subscript𝜇𝑖𝑘subscript𝜇𝑖subscript𝜇𝑖𝑙𝑇superscript4\mu_{i}=(\mu_{ij},\mu_{ik},\mu_{ih},\mu_{il})^{T}\in\mathbb{R}^{4}italic_μ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = ( italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT 4 end_POSTSUPERSCRIPT satisfying Eiμi=𝟎subscript𝐸𝑖subscript𝜇𝑖0E_{i}\mu_{i}=\mathbf{0}italic_E start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_μ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = bold_0, i.e.,

μijeij+μikeik+μiheih+μileil=𝟎,subscript𝜇𝑖𝑗subscript𝑒𝑖𝑗subscript𝜇𝑖𝑘subscript𝑒𝑖𝑘subscript𝜇𝑖subscript𝑒𝑖subscript𝜇𝑖𝑙subscript𝑒𝑖𝑙0\mu_{ij}e_{ij}+\mu_{ik}e_{ik}+\mu_{ih}e_{ih}+\mu_{il}e_{il}=\mathbf{0},italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT = bold_0 , (4)

where μij2+μik2+μih2+μil20superscriptsubscript𝜇𝑖𝑗2superscriptsubscript𝜇𝑖𝑘2superscriptsubscript𝜇𝑖2superscriptsubscript𝜇𝑖𝑙20\mu_{ij}^{2}+\mu_{ik}^{2}+\mu_{ih}^{2}+\mu_{il}^{2}\neq 0italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ≠ 0.

Definition 2.

Equation (4) is formally defined as a displacement constraint for node i𝑖iitalic_i with respect to the edges (i,j),(i,k),(i,h),(i,l)𝑖𝑗𝑖𝑘𝑖𝑖𝑙(i,j),(i,k),(i,h),(i,l)( italic_i , italic_j ) , ( italic_i , italic_k ) , ( italic_i , italic_h ) , ( italic_i , italic_l ).

It is worth noting that the angle constraints (1)-(3) are constructed by relative positions rather than angles. Note that the anchor positions are known, that is, the relative positions among the anchors are known. Hence, the angle constraints among the anchors are available. The parameters wiksubscript𝑤𝑖𝑘w_{ik}italic_w start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT, wkisubscript𝑤𝑘𝑖w_{ki}italic_w start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT, wijsubscript𝑤𝑖𝑗w_{ij}italic_w start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT, wjisubscript𝑤𝑗𝑖w_{ji}italic_w start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT, wjksubscript𝑤𝑗𝑘w_{jk}italic_w start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT, wkjsubscript𝑤𝑘𝑗w_{kj}italic_w start_POSTSUBSCRIPT italic_k italic_j end_POSTSUBSCRIPT in (1)-(3) are obtained by the relative positions eij,eik,ejksubscript𝑒𝑖𝑗subscript𝑒𝑖𝑘subscript𝑒𝑗𝑘e_{ij},e_{ik},e_{jk}italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT , italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT , italic_e start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT. For example, the parameters wiksubscript𝑤𝑖𝑘w_{ik}italic_w start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT and wkisubscript𝑤𝑘𝑖w_{ki}italic_w start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT in (1) can be designed as

wik=1eikTeij,wki=1ekiTekj,eikTeij,ekiTekj0,wik=1,wki=0,eikTeij=0,ekiTekj0,wik=0,wki=1,eikTeij0,ekiTekj=0.missing-subexpressionformulae-sequencesubscript𝑤𝑖𝑘1superscriptsubscript𝑒𝑖𝑘𝑇subscript𝑒𝑖𝑗subscript𝑤𝑘𝑖1superscriptsubscript𝑒𝑘𝑖𝑇subscript𝑒𝑘𝑗superscriptsubscript𝑒𝑖𝑘𝑇subscript𝑒𝑖𝑗superscriptsubscript𝑒𝑘𝑖𝑇subscript𝑒𝑘𝑗0missing-subexpressionformulae-sequencesubscript𝑤𝑖𝑘1subscript𝑤𝑘𝑖0formulae-sequencesuperscriptsubscript𝑒𝑖𝑘𝑇subscript𝑒𝑖𝑗0superscriptsubscript𝑒𝑘𝑖𝑇subscript𝑒𝑘𝑗0missing-subexpressionformulae-sequencesubscript𝑤𝑖𝑘0subscript𝑤𝑘𝑖1formulae-sequencesuperscriptsubscript𝑒𝑖𝑘𝑇subscript𝑒𝑖𝑗0superscriptsubscript𝑒𝑘𝑖𝑇subscript𝑒𝑘𝑗0missing-subexpression\begin{array}[]{ll}&\!\begin{array}[]{lll}w_{ik}=\frac{1}{e_{ik}^{T}e_{ij}},w_% {ki}=\frac{-1}{e_{ki}^{T}e_{kj}},&e_{ik}^{T}e_{ij},e_{ki}^{T}e_{kj}\neq 0,\\ w_{ik}=1,w_{ki}=0,&e_{ik}^{T}e_{ij}=0,e_{ki}^{T}e_{kj}\neq 0,\\ w_{ik}=0,w_{ki}=1,&e_{ik}^{T}e_{ij}\neq 0,e_{ki}^{T}e_{kj}=0.\\ \end{array}\end{array}\\ start_ARRAY start_ROW start_CELL end_CELL start_CELL start_ARRAY start_ROW start_CELL italic_w start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT = divide start_ARG 1 end_ARG start_ARG italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG , italic_w start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT = divide start_ARG - 1 end_ARG start_ARG italic_e start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_k italic_j end_POSTSUBSCRIPT end_ARG , end_CELL start_CELL italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT , italic_e start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_k italic_j end_POSTSUBSCRIPT ≠ 0 , end_CELL start_CELL end_CELL end_ROW start_ROW start_CELL italic_w start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT = 1 , italic_w start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT = 0 , end_CELL start_CELL italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT = 0 , italic_e start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_k italic_j end_POSTSUBSCRIPT ≠ 0 , end_CELL start_CELL end_CELL end_ROW start_ROW start_CELL italic_w start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT = 0 , italic_w start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT = 1 , end_CELL start_CELL italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT ≠ 0 , italic_e start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_k italic_j end_POSTSUBSCRIPT = 0 . end_CELL start_CELL end_CELL end_ROW end_ARRAY end_CELL end_ROW end_ARRAY (5)
Remark 1.

Since the nodes i,j,k𝑖𝑗𝑘i,j,kitalic_i , italic_j , italic_k are not collocated, the case eikTeij=0,ekiTekj=0formulae-sequencesuperscriptsubscript𝑒𝑖𝑘𝑇subscript𝑒𝑖𝑗0superscriptsubscript𝑒𝑘𝑖𝑇subscript𝑒𝑘𝑗0e_{ik}^{T}e_{ij}=0,e_{ki}^{T}e_{kj}=0italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT = 0 , italic_e start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_k italic_j end_POSTSUBSCRIPT = 0 does not hold. Without loss of generality, suppose eikTeij0superscriptsubscript𝑒𝑖𝑘𝑇subscript𝑒𝑖𝑗0e_{ik}^{T}e_{ij}\neq 0italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT ≠ 0. The parameters wik,wkisubscript𝑤𝑖𝑘subscript𝑤𝑘𝑖w_{ik},w_{ki}italic_w start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT , italic_w start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT satisfying the angle constraint wikeikTeij+wkiekiTekj=0subscript𝑤𝑖𝑘superscriptsubscript𝑒𝑖𝑘𝑇subscript𝑒𝑖𝑗subscript𝑤𝑘𝑖superscriptsubscript𝑒𝑘𝑖𝑇subscript𝑒𝑘𝑗0w_{ik}e_{ik}^{T}e_{ij}+w_{ki}e_{ki}^{T}e_{kj}=0italic_w start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT + italic_w start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_k italic_j end_POSTSUBSCRIPT = 0 are not unique, but the ratio of parameters wikwki=ekiTekjeikTeijsubscript𝑤𝑖𝑘subscript𝑤𝑘𝑖superscriptsubscript𝑒𝑘𝑖𝑇subscript𝑒𝑘𝑗superscriptsubscript𝑒𝑖𝑘𝑇subscript𝑒𝑖𝑗\frac{w_{ik}}{w_{ki}}=-\frac{e_{ki}^{T}e_{kj}}{e_{ik}^{T}e_{ij}}divide start_ARG italic_w start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT end_ARG start_ARG italic_w start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT end_ARG = - divide start_ARG italic_e start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_k italic_j end_POSTSUBSCRIPT end_ARG start_ARG italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG satisfying the angle constraint wikeikTeij+wkiekiTekj=0subscript𝑤𝑖𝑘superscriptsubscript𝑒𝑖𝑘𝑇subscript𝑒𝑖𝑗subscript𝑤𝑘𝑖superscriptsubscript𝑒𝑘𝑖𝑇subscript𝑒𝑘𝑗0w_{ik}e_{ik}^{T}e_{ij}+w_{ki}e_{ki}^{T}e_{kj}=0italic_w start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT + italic_w start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_k italic_j end_POSTSUBSCRIPT = 0 is unique. The angles θi,θj,θksubscript𝜃𝑖subscript𝜃𝑗subscript𝜃𝑘\theta_{i},\theta_{j},\theta_{k}italic_θ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_θ start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , italic_θ start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT between the anchor nodes i,j,k𝑖𝑗𝑘i,j,kitalic_i , italic_j , italic_k are determined uniquely by these unique ratios of parameters in the angle constraints (1)-(3).

In this paper, the known anchor positions will be used to construct the angle constraints, which do not need any measurement. In the proposed network localization, the mixed types of measurements are only used for constructing the displacement constraints (4). The details of how to make use of local relative measurements to construct the displacement constraint will be introduced in Section IV-B. Note that network localizability is used to specify whether the corresponding network structure is unique. The following angle-displacement rigidity theory will be used to explore the network localizability.

II-C Angle-displacement Rigidity Theory

A three-dimensional network, represented by (𝒢,p)𝒢𝑝(\mathcal{G},p)( caligraphic_G , italic_p ), is an undirected graph 𝒢𝒢\mathcal{G}caligraphic_G with its vertex i𝑖iitalic_i mapped to point pisubscript𝑝𝑖p_{i}italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, where p=(p1T,,pnT)T3n𝑝superscriptsuperscriptsubscript𝑝1𝑇superscriptsubscript𝑝𝑛𝑇𝑇superscript3𝑛p=(p_{1}^{T},\cdots,p_{n}^{T})^{T}\in\mathbb{R}^{3n}italic_p = ( italic_p start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , ⋯ , italic_p start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT 3 italic_n end_POSTSUPERSCRIPT is the configuration in 𝒢𝒢\mathcal{G}caligraphic_G. The structure of a network can be determined by angle and displacement constraints. A simple example is given in Fig. 1. The structure of the network ijkh(p)subscript𝑖𝑗𝑘𝑝\diamondsuit_{ijkh}(p)♢ start_POSTSUBSCRIPT italic_i italic_j italic_k italic_h end_POSTSUBSCRIPT ( italic_p ) is determined by three angles θi,θj,θksubscript𝜃𝑖subscript𝜃𝑗subscript𝜃𝑘\theta_{i},\theta_{j},\theta_{k}italic_θ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_θ start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , italic_θ start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT and a displacement constraint ehi+ehjehk=0subscript𝑒𝑖subscript𝑒𝑗subscript𝑒𝑘0e_{hi}+e_{hj}-e_{hk}=0italic_e start_POSTSUBSCRIPT italic_h italic_i end_POSTSUBSCRIPT + italic_e start_POSTSUBSCRIPT italic_h italic_j end_POSTSUBSCRIPT - italic_e start_POSTSUBSCRIPT italic_h italic_k end_POSTSUBSCRIPT = 0, where θi,θj,θksubscript𝜃𝑖subscript𝜃𝑗subscript𝜃𝑘\theta_{i},\theta_{j},\theta_{k}italic_θ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_θ start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , italic_θ start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT are determined by three angle constraints (1)-(3). Thus, the structure of the network ijkh(p)subscript𝑖𝑗𝑘𝑝\diamondsuit_{ijkh}(p)♢ start_POSTSUBSCRIPT italic_i italic_j italic_k italic_h end_POSTSUBSCRIPT ( italic_p ) can be decided by three angle constraints (1)-(3) and the displacement constraint ehi+ehjehk=0subscript𝑒𝑖subscript𝑒𝑗subscript𝑒𝑘0e_{hi}+e_{hj}-e_{hk}=0italic_e start_POSTSUBSCRIPT italic_h italic_i end_POSTSUBSCRIPT + italic_e start_POSTSUBSCRIPT italic_h italic_j end_POSTSUBSCRIPT - italic_e start_POSTSUBSCRIPT italic_h italic_k end_POSTSUBSCRIPT = 0. The following angle-displacement rigidity theory answers that the structure of a network in 3superscript3\mathbb{R}^{3}blackboard_R start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT can be uniquely determined by a set of angle and displacement constraints up to directly similar transformations, i.e., translation, rotation, and scaling.

II-C1 Angle-displacement Function

Let Υ𝒢={(i,j,k)𝒱3:(i,j),(i,k),(j,k),i<j<k}subscriptΥ𝒢conditional-set𝑖𝑗𝑘superscript𝒱3formulae-sequence𝑖𝑗𝑖𝑘𝑗𝑘𝑖𝑗𝑘\Upsilon_{\mathcal{G}}=\{(i,j,k)\in\mathcal{V}^{3}:(i,j),(i,k),(j,k)\in% \mathcal{E},i<\!j\!<\!k\}roman_Υ start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT = { ( italic_i , italic_j , italic_k ) ∈ caligraphic_V start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT : ( italic_i , italic_j ) , ( italic_i , italic_k ) , ( italic_j , italic_k ) ∈ caligraphic_E , italic_i < italic_j < italic_k } with |Υ𝒢|=mrsubscriptΥ𝒢subscript𝑚𝑟|\Upsilon_{\mathcal{G}}|=m_{r}| roman_Υ start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT | = italic_m start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT. Based on Definition 1, the angle function BΥ𝒢(p):3nmr:subscript𝐵subscriptΥ𝒢𝑝superscript3𝑛superscriptsubscript𝑚𝑟B_{\Upsilon_{\mathcal{G}}}(p):\mathbb{R}^{3n}\rightarrow\mathbb{R}^{m_{r}}italic_B start_POSTSUBSCRIPT roman_Υ start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( italic_p ) : blackboard_R start_POSTSUPERSCRIPT 3 italic_n end_POSTSUPERSCRIPT → blackboard_R start_POSTSUPERSCRIPT italic_m start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT end_POSTSUPERSCRIPT is defined as

BΥ𝒢(p)=(,wikeikTeij+wkiekiTekj,)T,subscript𝐵subscriptΥ𝒢𝑝superscriptsubscript𝑤𝑖𝑘superscriptsubscript𝑒𝑖𝑘𝑇subscript𝑒𝑖𝑗subscript𝑤𝑘𝑖superscriptsubscript𝑒𝑘𝑖𝑇subscript𝑒𝑘𝑗𝑇B_{\Upsilon_{\mathcal{G}}}(p)\!=\!(\cdots,w_{ik}e_{ik}^{T}e_{ij}+w_{ki}e_{ki}^% {T}e_{kj},\cdots)^{T},italic_B start_POSTSUBSCRIPT roman_Υ start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( italic_p ) = ( ⋯ , italic_w start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT + italic_w start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_k italic_j end_POSTSUBSCRIPT , ⋯ ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , (6)

where (i,j,k)Υ𝒢𝑖𝑗𝑘subscriptΥ𝒢(i,j,k)\!\in\!\Upsilon_{\mathcal{G}}( italic_i , italic_j , italic_k ) ∈ roman_Υ start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT, and wikeikTeij+wkiekiTekj=0subscript𝑤𝑖𝑘superscriptsubscript𝑒𝑖𝑘𝑇subscript𝑒𝑖𝑗subscript𝑤𝑘𝑖superscriptsubscript𝑒𝑘𝑖𝑇subscript𝑒𝑘𝑗0w_{ik}e_{ik}^{T}e_{ij}+w_{ki}e_{ki}^{T}e_{kj}=0italic_w start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT + italic_w start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_k italic_j end_POSTSUBSCRIPT = 0 with wik2+wki20superscriptsubscript𝑤𝑖𝑘2superscriptsubscript𝑤𝑘𝑖20w_{ik}^{2}+w_{ki}^{2}\neq 0italic_w start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT + italic_w start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ≠ 0.

Let 𝒳𝒢={(i,j,k,h,l)𝒱5:(i,j),(i,k),\mathcal{X}_{\mathcal{G}}=\{(i,j,k,h,l)\in\mathcal{V}^{5}:(i,j),(i,k),caligraphic_X start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT = { ( italic_i , italic_j , italic_k , italic_h , italic_l ) ∈ caligraphic_V start_POSTSUPERSCRIPT 5 end_POSTSUPERSCRIPT : ( italic_i , italic_j ) , ( italic_i , italic_k ) , (i,h),(i,l),j<k<h<l}(i,h),(i,l)\in\mathcal{E},j\!<\!k\!<\!h\!<\!l\}( italic_i , italic_h ) , ( italic_i , italic_l ) ∈ caligraphic_E , italic_j < italic_k < italic_h < italic_l } with |𝒳𝒢|=mdsubscript𝒳𝒢subscript𝑚𝑑|\mathcal{X}_{\mathcal{G}}|=m_{d}| caligraphic_X start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT | = italic_m start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT. Based on Definition 2, the displacement function L𝒳𝒢(p):3n3md:subscript𝐿subscript𝒳𝒢𝑝superscript3𝑛superscript3subscript𝑚𝑑L_{\mathcal{X}_{\mathcal{G}}}(p):\mathbb{R}^{3n}\rightarrow\mathbb{R}^{3m_{d}}italic_L start_POSTSUBSCRIPT caligraphic_X start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( italic_p ) : blackboard_R start_POSTSUPERSCRIPT 3 italic_n end_POSTSUPERSCRIPT → blackboard_R start_POSTSUPERSCRIPT 3 italic_m start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT end_POSTSUPERSCRIPT is defined as

L𝒳𝒢(p)=(,μijeijT+μikeikT+μiheihT+μileilT,)T,subscript𝐿subscript𝒳𝒢𝑝superscriptsubscript𝜇𝑖𝑗superscriptsubscript𝑒𝑖𝑗𝑇subscript𝜇𝑖𝑘superscriptsubscript𝑒𝑖𝑘𝑇subscript𝜇𝑖superscriptsubscript𝑒𝑖𝑇subscript𝜇𝑖𝑙superscriptsubscript𝑒𝑖𝑙𝑇𝑇L_{\mathcal{X}_{\mathcal{G}}}(p)\!=\!(\cdots,\mu_{ij}e_{ij}^{T}\!+\!\mu_{ik}e_% {ik}^{T}\!+\!\mu_{ih}e_{ih}^{T}\!+\!\mu_{il}e_{il}^{T},\cdots)^{T},italic_L start_POSTSUBSCRIPT caligraphic_X start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( italic_p ) = ( ⋯ , italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , ⋯ ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , (7)

where (i,j,k,h,l)𝒳𝒢𝑖𝑗𝑘𝑙subscript𝒳𝒢(i,j,k,h,l)\in\mathcal{X}_{\mathcal{G}}( italic_i , italic_j , italic_k , italic_h , italic_l ) ∈ caligraphic_X start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT, and μijeij+μikeik+μiheih+μileil=0subscript𝜇𝑖𝑗subscript𝑒𝑖𝑗subscript𝜇𝑖𝑘subscript𝑒𝑖𝑘subscript𝜇𝑖subscript𝑒𝑖subscript𝜇𝑖𝑙subscript𝑒𝑖𝑙0\mu_{ij}e_{ij}\!+\!\mu_{ik}e_{ik}\!+\!\mu_{ih}e_{ih}\!+\!\mu_{il}e_{il}=0italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT = 0 with μij2+μik2+μih2+μil20superscriptsubscript𝜇𝑖𝑗2superscriptsubscript𝜇𝑖𝑘2superscriptsubscript𝜇𝑖2superscriptsubscript𝜇𝑖𝑙20\mu_{ij}^{2}+\mu_{ik}^{2}+\mu_{ih}^{2}+\mu_{il}^{2}\neq 0italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ≠ 0. Let 𝒯𝒢=Υ𝒢𝒳𝒢subscript𝒯𝒢subscriptΥ𝒢subscript𝒳𝒢\mathcal{T}_{\mathcal{G}}=\Upsilon_{\mathcal{G}}\cup\mathcal{X}_{\mathcal{G}}caligraphic_T start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT = roman_Υ start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT ∪ caligraphic_X start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT and m=3md+mr𝑚3subscript𝑚𝑑subscript𝑚𝑟m=3m_{d}+m_{r}italic_m = 3 italic_m start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT + italic_m start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT. Then, the angle-displacement function f𝒯𝒢(p):3nm:subscript𝑓subscript𝒯𝒢𝑝superscript3𝑛superscript𝑚f_{\mathcal{T}_{\mathcal{G}}}(p):\mathbb{R}^{3n}\rightarrow\mathbb{R}^{m}italic_f start_POSTSUBSCRIPT caligraphic_T start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( italic_p ) : blackboard_R start_POSTSUPERSCRIPT 3 italic_n end_POSTSUPERSCRIPT → blackboard_R start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT is defined as

f𝒯𝒢(p)=(BΥ𝒢T(p),L𝒳𝒢T(p))T.subscript𝑓subscript𝒯𝒢𝑝superscriptsuperscriptsubscript𝐵subscriptΥ𝒢𝑇𝑝subscriptsuperscript𝐿𝑇subscript𝒳𝒢𝑝𝑇f_{\mathcal{T}_{\mathcal{G}}}(p)=(B_{\Upsilon_{\mathcal{G}}}^{T}(p),L^{T}_{% \mathcal{X}_{\mathcal{G}}}(p))^{T}.italic_f start_POSTSUBSCRIPT caligraphic_T start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( italic_p ) = ( italic_B start_POSTSUBSCRIPT roman_Υ start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ( italic_p ) , italic_L start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_X start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( italic_p ) ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT . (8)
Remark 2.

Note that different configurations may have different angle-displacement function. The customized angle-displacement function f𝒯𝒢(p)=𝟎subscript𝑓subscript𝒯𝒢𝑝0f_{\mathcal{T}_{\mathcal{G}}}(p)=\mathbf{0}italic_f start_POSTSUBSCRIPT caligraphic_T start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( italic_p ) = bold_0 for the configuration p𝑝pitalic_p may not be applicable to a different configuration qp𝑞𝑝q\neq pitalic_q ≠ italic_p, i.e., f𝒯𝒢(q)=𝟎subscript𝑓subscript𝒯𝒢𝑞0f_{\mathcal{T}_{\mathcal{G}}}(q)=\mathbf{0}italic_f start_POSTSUBSCRIPT caligraphic_T start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( italic_q ) = bold_0 may not hold.

II-C2 Angle-displacement Rigidity Matrix

The angle-displacement rigidity matrix is defined as

R(p)=f𝒯𝒢(p)pm×3n.𝑅𝑝subscript𝑓subscript𝒯𝒢𝑝𝑝superscript𝑚3𝑛R(p)=\frac{\partial f_{\mathcal{T}_{\mathcal{G}}}(p)}{\partial p}\in\mathbb{R}% ^{m\times 3n}.italic_R ( italic_p ) = divide start_ARG ∂ italic_f start_POSTSUBSCRIPT caligraphic_T start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( italic_p ) end_ARG start_ARG ∂ italic_p end_ARG ∈ blackboard_R start_POSTSUPERSCRIPT italic_m × 3 italic_n end_POSTSUPERSCRIPT . (9)

Let δp𝛿𝑝\delta pitalic_δ italic_p be a variation of the configuration p𝑝pitalic_p. If R(p)δp=0𝑅𝑝𝛿𝑝0R(p)\delta p=0italic_R ( italic_p ) italic_δ italic_p = 0, δp𝛿𝑝\delta pitalic_δ italic_p is called an angle-displacement infinitesimal motion. Since μijeij+μikeik+μiheih+μileil=𝟎subscript𝜇𝑖𝑗subscript𝑒𝑖𝑗subscript𝜇𝑖𝑘subscript𝑒𝑖𝑘subscript𝜇𝑖subscript𝑒𝑖subscript𝜇𝑖𝑙subscript𝑒𝑖𝑙0\mu_{ij}e_{ij}\!+\!\mu_{ik}e_{ik}\!+\!\mu_{ih}e_{ih}\!+\!\mu_{il}e_{il}=% \mathbf{0}italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT = bold_0 and wikeikTeij+wkiekiTekj=0subscript𝑤𝑖𝑘superscriptsubscript𝑒𝑖𝑘𝑇subscript𝑒𝑖𝑗subscript𝑤𝑘𝑖superscriptsubscript𝑒𝑘𝑖𝑇subscript𝑒𝑘𝑗0w_{ik}e_{ik}^{T}e_{ij}+w_{ki}e_{ki}^{T}e_{kj}=0italic_w start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT + italic_w start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_k italic_j end_POSTSUBSCRIPT = 0, the angle-displacement infinitesimal motions include translations, rotations, and scalings. An angle-displacement infinitesimal motion is called trivial if it corresponds to a translation, a rotation and a scaling of the entire network.

Lemma 2.

[18] The trivial motion space for angle-displacement rigidity in 3superscript3\mathbb{R}^{3}blackboard_R start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT is S=StSrSs𝑆subscript𝑆𝑡subscript𝑆𝑟subscript𝑆𝑠S=S_{t}\cup S_{r}\cup S_{s}italic_S = italic_S start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ∪ italic_S start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT ∪ italic_S start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT, where St={𝟏nI3}subscript𝑆𝑡tensor-productsubscript1𝑛subscript𝐼3S_{t}=\{\mathbf{1}_{n}\otimes{I}_{3}\}italic_S start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT = { bold_1 start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ⊗ italic_I start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT } is the space formed by translations , Sr={(InA)p,A+AT=𝟎,A3×3}S_{r}=\{(I_{n}\otimes A)p,A+A^{T}=\mathbf{0},A\in\mathbb{R}^{3\times 3}\}italic_S start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT = { ( italic_I start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ⊗ italic_A ) italic_p , italic_A + italic_A start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT = bold_0 , italic_A ∈ blackboard_R start_POSTSUPERSCRIPT 3 × 3 end_POSTSUPERSCRIPT } is the space formed by rotations, and Ss=Span(p)subscript𝑆𝑠Span𝑝S_{s}=\text{Span}(p)italic_S start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT = Span ( italic_p ) is the space formed by scalings.

Let

ηdT=(μijeij+μikeik+μiheih+μileil)p,ηrT=(wikeikTeij+wkiekiTekj)p,missing-subexpressionsuperscriptsubscript𝜂𝑑𝑇subscript𝜇𝑖𝑗subscript𝑒𝑖𝑗subscript𝜇𝑖𝑘subscript𝑒𝑖𝑘subscript𝜇𝑖subscript𝑒𝑖subscript𝜇𝑖𝑙subscript𝑒𝑖𝑙𝑝missing-subexpressionsuperscriptsubscript𝜂𝑟𝑇subscript𝑤𝑖𝑘superscriptsubscript𝑒𝑖𝑘𝑇subscript𝑒𝑖𝑗subscript𝑤𝑘𝑖superscriptsubscript𝑒𝑘𝑖𝑇subscript𝑒𝑘𝑗𝑝\begin{array}[]{ll}&\eta_{d}^{T}=\frac{\partial(\mu_{ij}e_{ij}\!+\!\mu_{ik}e_{% ik}\!+\!\mu_{ih}e_{ih}\!+\!\mu_{il}e_{il})}{\partial p},\\ &\eta_{r}^{T}=\frac{\partial(w_{ik}e_{ik}^{T}e_{ij}+w_{ki}e_{ki}^{T}e_{kj})}{% \partial p},\end{array}start_ARRAY start_ROW start_CELL end_CELL start_CELL italic_η start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT = divide start_ARG ∂ ( italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT ) end_ARG start_ARG ∂ italic_p end_ARG , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL italic_η start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT = divide start_ARG ∂ ( italic_w start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT + italic_w start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_k italic_j end_POSTSUBSCRIPT ) end_ARG start_ARG ∂ italic_p end_ARG , end_CELL end_ROW end_ARRAY (10)

where ηdTsuperscriptsubscript𝜂𝑑𝑇\eta_{d}^{T}italic_η start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT and ηrTsuperscriptsubscript𝜂𝑟𝑇\eta_{r}^{T}italic_η start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT are, respectively, arbitrary rows of R(p)𝑅𝑝R(p)italic_R ( italic_p ) corresponding to displacement constraint and angle constraint shown as

ηd=[𝟎,μijμikμihμil,𝟎,μij,𝟎,μik,𝟎,μih,𝟎,μil,𝟎]TI3.subscript𝜂𝑑tensor-productsuperscript0subscript𝜇𝑖𝑗subscript𝜇𝑖𝑘subscript𝜇𝑖subscript𝜇𝑖𝑙0subscript𝜇𝑖𝑗0subscript𝜇𝑖𝑘0subscript𝜇𝑖0subscript𝜇𝑖𝑙0𝑇subscript𝐼3\eta_{d}\!=\![\mathbf{0},\!-\!\mu_{ij}\!-\!\mu_{ik}\!-\!\mu_{ih}\!-\!\mu_{il},% \mathbf{0},\mu_{ij},\mathbf{0},\mu_{ik},\mathbf{0},\mu_{ih},\mathbf{0},\mu_{il% },\mathbf{0}]^{T}\otimes I_{3}.italic_η start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT = [ bold_0 , - italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT - italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT - italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT - italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT , bold_0 , italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT , bold_0 , italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT , bold_0 , italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT , bold_0 , italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT , bold_0 ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ⊗ italic_I start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT . (11)
ηr=[𝟎2wikpi+(wkiwik)pj(wik+wki)pk𝟎(wkiwik)pi+(wikwki)pk𝟎(wik+wki)pi+(wikwki)pj+2wkipk𝟎].subscript𝜂𝑟delimited-[]02subscript𝑤𝑖𝑘subscript𝑝𝑖subscript𝑤𝑘𝑖subscript𝑤𝑖𝑘subscript𝑝𝑗subscript𝑤𝑖𝑘subscript𝑤𝑘𝑖subscript𝑝𝑘0subscript𝑤𝑘𝑖subscript𝑤𝑖𝑘subscript𝑝𝑖subscript𝑤𝑖𝑘subscript𝑤𝑘𝑖subscript𝑝𝑘0subscript𝑤𝑖𝑘subscript𝑤𝑘𝑖subscript𝑝𝑖subscript𝑤𝑖𝑘subscript𝑤𝑘𝑖subscript𝑝𝑗2subscript𝑤𝑘𝑖subscript𝑝𝑘0\eta_{r}\!=\!\left[\!\begin{array}[]{c}\mathbf{0}\\ 2w_{ik}p_{i}+(w_{ki}-w_{ik})p_{j}-(w_{ik}+w_{ki})p_{k}\\ \mathbf{0}\\ (w_{ki}-w_{ik})p_{i}+(w_{ik}-w_{ki})p_{k}\\ \mathbf{0}\\ -(w_{ik}+w_{ki})p_{i}+(w_{ik}-w_{ki})p_{j}+2w_{ki}p_{k}\\ \mathbf{0}\end{array}\right].italic_η start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT = [ start_ARRAY start_ROW start_CELL bold_0 end_CELL end_ROW start_ROW start_CELL 2 italic_w start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT + ( italic_w start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT - italic_w start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT ) italic_p start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT - ( italic_w start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT + italic_w start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT ) italic_p start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL bold_0 end_CELL end_ROW start_ROW start_CELL ( italic_w start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT - italic_w start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT ) italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT + ( italic_w start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT - italic_w start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT ) italic_p start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL bold_0 end_CELL end_ROW start_ROW start_CELL - ( italic_w start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT + italic_w start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT ) italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT + ( italic_w start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT - italic_w start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT ) italic_p start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT + 2 italic_w start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT italic_p start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL bold_0 end_CELL end_ROW end_ARRAY ] . (12)

Based on (11) and (12), we have

R(p)p=(2BΥ𝒢T(p),Lχ𝒢T(p))Tm.𝑅𝑝𝑝superscript2superscriptsubscript𝐵subscriptΥ𝒢𝑇𝑝subscriptsuperscript𝐿𝑇subscript𝜒𝒢𝑝𝑇superscript𝑚R(p)p=(2B_{\Upsilon_{\mathcal{G}}}^{T}(p),L^{T}_{\chi_{\mathcal{G}}}(p))^{T}% \in\mathbb{R}^{m}.italic_R ( italic_p ) italic_p = ( 2 italic_B start_POSTSUBSCRIPT roman_Υ start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ( italic_p ) , italic_L start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_χ start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( italic_p ) ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT . (13)

Then, we obtain

pTR(p)TR(p)p=4BΥ𝒢(p)2+Lχ𝒢(p)2.superscript𝑝𝑇𝑅superscript𝑝𝑇𝑅𝑝𝑝4superscriptnormsubscript𝐵subscriptΥ𝒢𝑝2superscriptnormsubscript𝐿subscript𝜒𝒢𝑝2p^{T}R(p)^{T}R(p)p=4\|B_{\Upsilon_{\mathcal{G}}}(p)\|^{2}+\|L_{\chi_{\mathcal{% G}}}(p)\|^{2}.italic_p start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_R ( italic_p ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_R ( italic_p ) italic_p = 4 ∥ italic_B start_POSTSUBSCRIPT roman_Υ start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( italic_p ) ∥ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT + ∥ italic_L start_POSTSUBSCRIPT italic_χ start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( italic_p ) ∥ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT . (14)
Definition 3.

[17] A network (𝒢,p𝒢𝑝\mathcal{G},pcaligraphic_G , italic_p) is infinitesimally angle-displacement rigid in 3superscript3\mathbb{R}^{3}blackboard_R start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT if all the angle-displacement infinitesimal motions are trivial.

From Lemma 2, we can know that for an infinitesimally angle-displacement rigid network (𝒢,p𝒢𝑝\mathcal{G},pcaligraphic_G , italic_p), the condition dim(Null(R(p)))=7dimNull𝑅𝑝7\text{dim}(\text{Null}(R(p)))\!=\!7dim ( Null ( italic_R ( italic_p ) ) ) = 7 holds. Next, we will introduce the problem of network localization with mixed types of measurements.

III Problem Statement

The objective is to develop a distributed algorithm for localizing the positions of all unknown nodes in a network with mixed types of measurements including local relative position, distance, local relative bearing, angle, and ratio-of-distance measurements. Some nodes may measure only distances, while others may measure only local relative bearings, angles, local relative positions, or ratio-of-distances. In addition, we assume that the orientation differences between the local coordinate frames of the nodes and global coordinate frame are unknown.

Consider a static network (𝒢,p𝒢𝑝\mathcal{G},pcaligraphic_G , italic_p) in 3superscript3\mathbb{R}^{3}blackboard_R start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT. Suppose the locations of nasubscript𝑛𝑎n_{a}italic_n start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT anchor nodes are given and the locations of nfsubscript𝑛𝑓n_{f}italic_n start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT free nodes are to be estimated (na+nf=n)subscript𝑛𝑎subscript𝑛𝑓𝑛(n_{a}\!+\!n_{f}\!=\!n)( italic_n start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT + italic_n start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT = italic_n ). Denote 𝒱a={1,,na}subscript𝒱𝑎1subscript𝑛𝑎\mathcal{V}_{a}=\{1,\cdots,n_{a}\}caligraphic_V start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT = { 1 , ⋯ , italic_n start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT }, 𝒱f={na+1,,n}subscript𝒱𝑓subscript𝑛𝑎1𝑛\mathcal{V}_{f}\!=\!\{n_{a}\!+\!1,\cdots,n\}caligraphic_V start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT = { italic_n start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT + 1 , ⋯ , italic_n }, and 𝒱=𝒱a𝒱f𝒱subscript𝒱𝑎subscript𝒱𝑓\mathcal{V}=\mathcal{V}_{a}\cup\mathcal{V}_{f}caligraphic_V = caligraphic_V start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT ∪ caligraphic_V start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT. Denote pa=(p1T,,pnaT)Tsubscript𝑝𝑎superscriptsuperscriptsubscript𝑝1𝑇superscriptsubscript𝑝subscript𝑛𝑎𝑇𝑇p_{a}=(p_{1}^{T},\cdots,p_{n_{a}}^{T})^{T}italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT = ( italic_p start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , ⋯ , italic_p start_POSTSUBSCRIPT italic_n start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT, pf=(pna+1T,,pnT)Tsubscript𝑝𝑓superscriptsuperscriptsubscript𝑝subscript𝑛𝑎1𝑇superscriptsubscript𝑝𝑛𝑇𝑇p_{f}=(p_{n_{a}\!+\!1}^{T},\cdots,p_{n}^{T})^{T}italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT = ( italic_p start_POSTSUBSCRIPT italic_n start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , ⋯ , italic_p start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT, and p=papf𝑝subscript𝑝𝑎subscript𝑝𝑓p=p_{a}\cup p_{f}italic_p = italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT ∪ italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT. Denote ΣisubscriptΣ𝑖\Sigma_{i}roman_Σ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT as the local coordinate frame of node i𝑖iitalic_i. Let QiSO(3)subscript𝑄𝑖𝑆𝑂3Q_{i}\in SO(3)italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∈ italic_S italic_O ( 3 ) be the unknown rotation matrix from ΣisubscriptΣ𝑖\Sigma_{i}roman_Σ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT to ΣgsubscriptΣ𝑔\Sigma_{g}roman_Σ start_POSTSUBSCRIPT italic_g end_POSTSUBSCRIPT, where ΣgsubscriptΣ𝑔\Sigma_{g}roman_Σ start_POSTSUBSCRIPT italic_g end_POSTSUBSCRIPT is the global coordinate frame. Define

eij=Qieiji,giji=eijidij,θijk=gijigiki,rijk=dijdik,formulae-sequencesubscript𝑒𝑖𝑗subscript𝑄𝑖superscriptsubscript𝑒𝑖𝑗𝑖formulae-sequencesuperscriptsubscript𝑔𝑖𝑗𝑖superscriptsubscript𝑒𝑖𝑗𝑖subscript𝑑𝑖𝑗formulae-sequencesubscript𝜃𝑖𝑗𝑘superscriptsubscript𝑔𝑖𝑗𝑖superscriptsubscript𝑔𝑖𝑘𝑖subscript𝑟𝑖𝑗𝑘subscript𝑑𝑖𝑗subscript𝑑𝑖𝑘e_{ij}=Q_{i}e_{ij}^{i},\ \ g_{ij}^{i}=\frac{e_{ij}^{i}}{d_{ij}},\ \ \theta_{% ijk}=g_{ij}^{i}g_{ik}^{i},\ \ r_{ijk}=\frac{d_{ij}}{d_{ik}},italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT = italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_g start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT = divide start_ARG italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG , italic_θ start_POSTSUBSCRIPT italic_i italic_j italic_k end_POSTSUBSCRIPT = italic_g start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT italic_g start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_r start_POSTSUBSCRIPT italic_i italic_j italic_k end_POSTSUBSCRIPT = divide start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT end_ARG , (15)

where eijisuperscriptsubscript𝑒𝑖𝑗𝑖e_{ij}^{i}italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT is the local relative position in ΣisubscriptΣ𝑖\Sigma_{i}roman_Σ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT. dij=eijsubscript𝑑𝑖𝑗normsubscript𝑒𝑖𝑗d_{ij}=\|e_{ij}\|italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT = ∥ italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT ∥ is the distance. gijisuperscriptsubscript𝑔𝑖𝑗𝑖g_{ij}^{i}italic_g start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT is the local relative bearing. θijksubscript𝜃𝑖𝑗𝑘\theta_{ijk}italic_θ start_POSTSUBSCRIPT italic_i italic_j italic_k end_POSTSUBSCRIPT is the angle between eijsubscript𝑒𝑖𝑗e_{ij}italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT and eiksubscript𝑒𝑖𝑘e_{ik}italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT. rijksubscript𝑟𝑖𝑗𝑘r_{ijk}italic_r start_POSTSUBSCRIPT italic_i italic_j italic_k end_POSTSUBSCRIPT is the ratio-of-distance between dijsubscript𝑑𝑖𝑗d_{ij}italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT and diksubscript𝑑𝑖𝑘d_{ik}italic_d start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT. Since there are five kinds of measurements in a local coordinate frame, the nodes can be divided into five categories shown as

  1. 1.

    i𝒟𝑖𝒟i\in\mathcal{D}italic_i ∈ caligraphic_D: Node i𝑖iitalic_i can measure the distance dijsubscript𝑑𝑖𝑗d_{ij}italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT to its neighboring node j𝒩i𝑗subscript𝒩𝑖j\in\mathcal{N}_{i}italic_j ∈ caligraphic_N start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT.

  2. 2.

    i𝑖i\in\mathcal{B}italic_i ∈ caligraphic_B: Node i𝑖iitalic_i can measure the local relative bearing gijisuperscriptsubscript𝑔𝑖𝑗𝑖g_{ij}^{i}italic_g start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT with respect to its neighboring node j𝒩i𝑗subscript𝒩𝑖j\in\mathcal{N}_{i}italic_j ∈ caligraphic_N start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT.

  3. 3.

    i𝑖i\in\mathcal{R}italic_i ∈ caligraphic_R: Node i𝑖iitalic_i can measure the local relative position eijisuperscriptsubscript𝑒𝑖𝑗𝑖e_{ij}^{i}italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT to its neighboring node j𝒩i𝑗subscript𝒩𝑖j\in\mathcal{N}_{i}italic_j ∈ caligraphic_N start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT.

  4. 4.

    i𝒜𝑖𝒜i\in\mathcal{A}italic_i ∈ caligraphic_A: Node i𝑖iitalic_i can measure the angle θijksubscript𝜃𝑖𝑗𝑘\theta_{ijk}italic_θ start_POSTSUBSCRIPT italic_i italic_j italic_k end_POSTSUBSCRIPT between eijsubscript𝑒𝑖𝑗e_{ij}italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT and eiksubscript𝑒𝑖𝑘e_{ik}italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT, where j,k𝒩i𝑗𝑘subscript𝒩𝑖j,k\in\mathcal{N}_{i}italic_j , italic_k ∈ caligraphic_N start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT.

  5. 5.

    io𝒟𝑖𝑜𝒟i\in\mathcal{R}o\mathcal{D}italic_i ∈ caligraphic_R italic_o caligraphic_D: Node i𝑖iitalic_i can measure the ratio-of-distance rijksubscript𝑟𝑖𝑗𝑘r_{ijk}italic_r start_POSTSUBSCRIPT italic_i italic_j italic_k end_POSTSUBSCRIPT between dijsubscript𝑑𝑖𝑗d_{ij}italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT and diksubscript𝑑𝑖𝑘d_{ik}italic_d start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT, where j,k𝒩i𝑗𝑘subscript𝒩𝑖j,k\in\mathcal{N}_{i}italic_j , italic_k ∈ caligraphic_N start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT.

Remark 3.

The work in [19] introduces the sensors that can obtain the ratio-of-distance measurements.

Then, the problem of network localization with mixed types of measurements is described below.

Problem 1.

Consider a static network (𝒢,p𝒢𝑝\mathcal{G},pcaligraphic_G , italic_p) with an undirected graph 𝒢={𝒱,}𝒢𝒱\mathcal{G}=\{\mathcal{V},\mathcal{E}\}caligraphic_G = { caligraphic_V , caligraphic_E }, where each node can measure only one of the five kinds of local relative measurements V=𝒜𝒟o𝒟𝑉𝒜𝒟𝑜𝒟V=\mathcal{R}\cup\mathcal{B}\cup\mathcal{A}\cup\mathcal{D}\cup\mathcal{R}o% \mathcal{D}italic_V = caligraphic_R ∪ caligraphic_B ∪ caligraphic_A ∪ caligraphic_D ∪ caligraphic_R italic_o caligraphic_D. Given arbitrary initial estimates p^i(0),i𝒱fsubscriptnormal-^𝑝𝑖0𝑖subscript𝒱𝑓\hat{p}_{i}(0),i\in\mathcal{V}_{f}over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( 0 ) , italic_i ∈ caligraphic_V start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT, develop a distributed localization algorithm for each free node i𝑖iitalic_i such that

limtp^i(t)=pi,subscript𝑡subscript^𝑝𝑖𝑡subscript𝑝𝑖\lim\limits_{t\rightarrow\infty}\hat{p}_{i}(t)=p_{i},roman_lim start_POSTSUBSCRIPT italic_t → ∞ end_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_t ) = italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , (16)

where p^isubscriptnormal-^𝑝𝑖{\hat{p}}_{i}over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is the estimate of pisubscript𝑝𝑖p_{i}italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT.

Next, the method for network localization with mixed types of measurements is presented.

IV Network Localization with Mixed Types of Measurements

In this paper, we consider an undirected graph. Each node can measure only one of the five types of local relative measurements and different nodes may have different measurement types shown in Fig. 2. Before introducing the main results, the distance-based displacement constraint is introduced.

IV-A Distance-based Displacement Constraint

In this part, we will introduce how to construct the displacement constraint based on the distance measurements. For the node i𝑖iitalic_i and its neighbors j,k,h,l𝑗𝑘𝑙j,k,h,litalic_j , italic_k , italic_h , italic_l, define distance matrix D𝐷Ditalic_D as

D=[0dij2dik2dih2dil2dji20djk2djh2djl2dki2dkj20dkh2dkl2dhi2dhj2dhk20dhl2dli2dlj2dlk2dlh20].𝐷delimited-[]0superscriptsubscript𝑑𝑖𝑗2superscriptsubscript𝑑𝑖𝑘2superscriptsubscript𝑑𝑖2superscriptsubscript𝑑𝑖𝑙2superscriptsubscript𝑑𝑗𝑖20superscriptsubscript𝑑𝑗𝑘2superscriptsubscript𝑑𝑗2superscriptsubscript𝑑𝑗𝑙2superscriptsubscript𝑑𝑘𝑖2superscriptsubscript𝑑𝑘𝑗20superscriptsubscript𝑑𝑘2superscriptsubscript𝑑𝑘𝑙2superscriptsubscript𝑑𝑖2superscriptsubscript𝑑𝑗2superscriptsubscript𝑑𝑘20superscriptsubscript𝑑𝑙2superscriptsubscript𝑑𝑙𝑖2superscriptsubscript𝑑𝑙𝑗2superscriptsubscript𝑑𝑙𝑘2superscriptsubscript𝑑𝑙20D=\left[\!\begin{array}[]{c c c c c}0&d_{ij}^{2}&d_{ik}^{2}&d_{ih}^{2}&d_{il}^% {2}\\ d_{ji}^{2}&0&d_{jk}^{2}&d_{jh}^{2}&d_{jl}^{2}\\ d_{ki}^{2}&d_{kj}^{2}&0&d_{kh}^{2}&d_{kl}^{2}\\ d_{hi}^{2}&d_{hj}^{2}&d_{hk}^{2}&0&d_{hl}^{2}\\ d_{li}^{2}&d_{lj}^{2}&d_{lk}^{2}&d_{lh}^{2}&0\end{array}\right].italic_D = [ start_ARRAY start_ROW start_CELL 0 end_CELL start_CELL italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_CELL start_CELL italic_d start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_CELL start_CELL italic_d start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_CELL start_CELL italic_d start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_CELL end_ROW start_ROW start_CELL italic_d start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_CELL start_CELL 0 end_CELL start_CELL italic_d start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_CELL start_CELL italic_d start_POSTSUBSCRIPT italic_j italic_h end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_CELL start_CELL italic_d start_POSTSUBSCRIPT italic_j italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_CELL end_ROW start_ROW start_CELL italic_d start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_CELL start_CELL italic_d start_POSTSUBSCRIPT italic_k italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_CELL start_CELL 0 end_CELL start_CELL italic_d start_POSTSUBSCRIPT italic_k italic_h end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_CELL start_CELL italic_d start_POSTSUBSCRIPT italic_k italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_CELL end_ROW start_ROW start_CELL italic_d start_POSTSUBSCRIPT italic_h italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_CELL start_CELL italic_d start_POSTSUBSCRIPT italic_h italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_CELL start_CELL italic_d start_POSTSUBSCRIPT italic_h italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_CELL start_CELL 0 end_CELL start_CELL italic_d start_POSTSUBSCRIPT italic_h italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_CELL end_ROW start_ROW start_CELL italic_d start_POSTSUBSCRIPT italic_l italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_CELL start_CELL italic_d start_POSTSUBSCRIPT italic_l italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_CELL start_CELL italic_d start_POSTSUBSCRIPT italic_l italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_CELL start_CELL italic_d start_POSTSUBSCRIPT italic_l italic_h end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_CELL start_CELL 0 end_CELL end_ROW end_ARRAY ] . (17)

The volume Vjkhlsubscript𝑉𝑗𝑘𝑙V_{jkhl}italic_V start_POSTSUBSCRIPT italic_j italic_k italic_h italic_l end_POSTSUBSCRIPT of the tetrahedron formed by the nodes pj,pk,ph,plsubscript𝑝𝑗subscript𝑝𝑘subscript𝑝subscript𝑝𝑙p_{j},p_{k},p_{h},p_{l}italic_p start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT can be calculated with distance measurements through Cayley-Menger determinant [20]. That is,

288Vjkhl2=det(2djk2djk2+djh2dkh2djk2+djl2dkl2djk2+djh2dkh22djh2djh2+djl2dhl2djk2+djl2dkl2djh2+djl2dhl22djl2).missing-subexpression288superscriptsubscript𝑉𝑗𝑘𝑙2absentmissing-subexpressiondet2subscriptsuperscript𝑑2𝑗𝑘subscriptsuperscript𝑑2𝑗𝑘subscriptsuperscript𝑑2𝑗subscriptsuperscript𝑑2𝑘subscriptsuperscript𝑑2𝑗𝑘subscriptsuperscript𝑑2𝑗𝑙subscriptsuperscript𝑑2𝑘𝑙subscriptsuperscript𝑑2𝑗𝑘subscriptsuperscript𝑑2𝑗subscriptsuperscript𝑑2𝑘2subscriptsuperscript𝑑2𝑗subscriptsuperscript𝑑2𝑗subscriptsuperscript𝑑2𝑗𝑙subscriptsuperscript𝑑2𝑙subscriptsuperscript𝑑2𝑗𝑘subscriptsuperscript𝑑2𝑗𝑙subscriptsuperscript𝑑2𝑘𝑙subscriptsuperscript𝑑2𝑗subscriptsuperscript𝑑2𝑗𝑙subscriptsuperscript𝑑2𝑙2subscriptsuperscript𝑑2𝑗𝑙\begin{array}[]{ll}&288V_{jkhl}^{2}=\\ &\!\text{det}\!\left(\!\begin{array}[]{ccc}2d^{2}_{jk}&d^{2}_{jk}\!+\!d^{2}_{% jh}\!-\!d^{2}_{kh}&d^{2}_{jk}\!+\!d^{2}_{jl}\!-\!d^{2}_{kl}\\ d^{2}_{jk}\!+\!d^{2}_{jh}\!-\!d^{2}_{kh}&2d^{2}_{jh}&d^{2}_{jh}\!+\!d^{2}_{jl}% \!-\!d^{2}_{hl}\\ d^{2}_{jk}\!+\!d^{2}_{jl}\!-\!d^{2}_{kl}&d^{2}_{jh}\!+\!d^{2}_{jl}\!-\!d^{2}_{% hl}&2d^{2}_{jl}\\ \end{array}\!\right).\end{array}start_ARRAY start_ROW start_CELL end_CELL start_CELL 288 italic_V start_POSTSUBSCRIPT italic_j italic_k italic_h italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT = end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL det ( start_ARRAY start_ROW start_CELL 2 italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT end_CELL start_CELL italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT + italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j italic_h end_POSTSUBSCRIPT - italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_k italic_h end_POSTSUBSCRIPT end_CELL start_CELL italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT + italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j italic_l end_POSTSUBSCRIPT - italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_k italic_l end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT + italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j italic_h end_POSTSUBSCRIPT - italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_k italic_h end_POSTSUBSCRIPT end_CELL start_CELL 2 italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j italic_h end_POSTSUBSCRIPT end_CELL start_CELL italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j italic_h end_POSTSUBSCRIPT + italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j italic_l end_POSTSUBSCRIPT - italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_h italic_l end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT + italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j italic_l end_POSTSUBSCRIPT - italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_k italic_l end_POSTSUBSCRIPT end_CELL start_CELL italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j italic_h end_POSTSUBSCRIPT + italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j italic_l end_POSTSUBSCRIPT - italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_h italic_l end_POSTSUBSCRIPT end_CELL start_CELL 2 italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j italic_l end_POSTSUBSCRIPT end_CELL end_ROW end_ARRAY ) . end_CELL end_ROW end_ARRAY (18)
Definition 4.

If a node i𝑖iitalic_i with respect to its neighboring nodes j,k,h,l𝑗𝑘𝑙j,k,h,litalic_j , italic_k , italic_h , italic_l satisfies the following equations

pi=μijpj+μikpk+μihph+μilpl,μij+μik+μih+μil=1,missing-subexpressionsubscript𝑝𝑖subscript𝜇𝑖𝑗subscript𝑝𝑗subscript𝜇𝑖𝑘subscript𝑝𝑘subscript𝜇𝑖subscript𝑝subscript𝜇𝑖𝑙subscript𝑝𝑙missing-subexpressionsubscript𝜇𝑖𝑗subscript𝜇𝑖𝑘subscript𝜇𝑖subscript𝜇𝑖𝑙1\begin{array}[]{ll}&p_{i}=\mu_{ij}p_{j}+\mu_{ik}p_{k}+\mu_{ih}p_{h}+\mu_{il}p_% {l},\\ &\mu_{ij}+\mu_{ik}+\mu_{ih}+\mu_{il}=1,\end{array}start_ARRAY start_ROW start_CELL end_CELL start_CELL italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT italic_p start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT italic_p start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT italic_p start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT italic_p start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT = 1 , end_CELL end_ROW end_ARRAY (19)

then {μij,μik,μih,μil}subscript𝜇𝑖𝑗subscript𝜇𝑖𝑘subscript𝜇𝑖subscript𝜇𝑖𝑙\{\mu_{ij},\mu_{ik},\mu_{ih},\mu_{il}\}{ italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT } is called the barycentric coordinate of node i𝑖iitalic_i with respect to the nodes j,k,h,l𝑗𝑘𝑙j,k,h,litalic_j , italic_k , italic_h , italic_l.

For the volume Vjkhlsubscript𝑉𝑗𝑘𝑙V_{jkhl}italic_V start_POSTSUBSCRIPT italic_j italic_k italic_h italic_l end_POSTSUBSCRIPT (18), there are two cases:

  1. (a)

    If Vjkhl20superscriptsubscript𝑉𝑗𝑘𝑙20V_{jkhl}^{2}\neq 0italic_V start_POSTSUBSCRIPT italic_j italic_k italic_h italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ≠ 0, pj,pk,ph,plsubscript𝑝𝑗subscript𝑝𝑘subscript𝑝subscript𝑝𝑙p_{j},p_{k},p_{h},p_{l}italic_p start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT are non-coplanar. The work in [7] provides a way to obtain the barycentric coordinate {μij,μik,μih,μil}subscript𝜇𝑖𝑗subscript𝜇𝑖𝑘subscript𝜇𝑖subscript𝜇𝑖𝑙\{\mu_{ij},\mu_{ik},\mu_{ih},\mu_{il}\}{ italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT } of node i𝑖iitalic_i with respect to the nodes j,k,h,l𝑗𝑘𝑙j,k,h,litalic_j , italic_k , italic_h , italic_l by only using the distance measurements shown in Algorithm 1. This algorithm uses the fact that a congruent framework of the subnetwork consisting of the node and its neighbors has the same barycentric coordinate. Note that (19) can be rewritten as a displacement constraint shown as

    μijeij+μikeik+μiheih+μileil=𝟎.subscript𝜇𝑖𝑗subscript𝑒𝑖𝑗subscript𝜇𝑖𝑘subscript𝑒𝑖𝑘subscript𝜇𝑖subscript𝑒𝑖subscript𝜇𝑖𝑙subscript𝑒𝑖𝑙0\mu_{ij}e_{ij}+\mu_{ik}e_{ik}+\mu_{ih}e_{ih}+\mu_{il}e_{il}=\mathbf{0}.italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT = bold_0 . (20)
    Algorithm 1 Distance-based Barycentric Coordinate (Vjkhl0subscript𝑉𝑗𝑘𝑙0V_{jkhl}\neq 0italic_V start_POSTSUBSCRIPT italic_j italic_k italic_h italic_l end_POSTSUBSCRIPT ≠ 0)
    1:Available information: Distance measurements among the nodes pi,pj,pk,ph,plsubscript𝑝𝑖subscript𝑝𝑗subscript𝑝𝑘subscript𝑝subscript𝑝𝑙p_{i},p_{j},p_{k},p_{h},p_{l}italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT. Denote (bar𝒢,barp)bar𝒢bar𝑝(\mathcal{\mathrm{bar}G},\mathrm{bar}p)( roman_bar caligraphic_G , roman_bar italic_p ) as a subnetwork with barp=(piT,pjT,pkT,phT,plT)Tbar𝑝superscriptsuperscriptsubscript𝑝𝑖𝑇superscriptsubscript𝑝𝑗𝑇superscriptsubscript𝑝𝑘𝑇superscriptsubscript𝑝𝑇superscriptsubscript𝑝𝑙𝑇𝑇\mathrm{bar}p=(p_{i}^{T},p_{j}^{T},p_{k}^{T},p_{h}^{T},p_{l}^{T})^{T}roman_bar italic_p = ( italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , italic_p start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , italic_p start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , italic_p start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , italic_p start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT.
    2:Based on the distance matrix D𝐷Ditalic_D (17), obtaining a congruent network (bar𝒢,barq)(bar𝒢,barp)bar𝒢bar𝑞bar𝒢bar𝑝(\mathcal{\mathrm{bar}G},\mathrm{bar}q)\cong(\mathcal{\mathrm{bar}G},\mathrm{% bar}p)( roman_bar caligraphic_G , roman_bar italic_q ) ≅ ( roman_bar caligraphic_G , roman_bar italic_p ) with barq=(qiT,qjT,qkT,qhT,qlT)Tbar𝑞superscriptsuperscriptsubscript𝑞𝑖𝑇superscriptsubscript𝑞𝑗𝑇superscriptsubscript𝑞𝑘𝑇superscriptsubscript𝑞𝑇superscriptsubscript𝑞𝑙𝑇𝑇\mathrm{bar}q=(q_{i}^{T},q_{j}^{T},q_{k}^{T},q_{h}^{T},q_{l}^{T})^{T}roman_bar italic_q = ( italic_q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , italic_q start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , italic_q start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , italic_q start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , italic_q start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT by Algorithm 1111 in [7], where qi,qj,qk,subscript𝑞𝑖subscript𝑞𝑗subscript𝑞𝑘q_{i},q_{j},q_{k},italic_q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_q start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , italic_q start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT , qh,ql3subscript𝑞subscript𝑞𝑙superscript3q_{h},q_{l}\in\mathbb{R}^{3}italic_q start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT , italic_q start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT.
    3:Based on barqbar𝑞\mathrm{bar}qroman_bar italic_q, calculating the barycentric coordinate of node pisubscript𝑝𝑖p_{i}italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT with respect to its neighboring nodes pj,pk,ph,plsubscript𝑝𝑗subscript𝑝𝑘subscript𝑝subscript𝑝𝑙p_{j},p_{k},p_{h},p_{l}italic_p start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT in (19) by
    μij=ViklhVjklh,μik=VjilhVjklh,μih=VjkihVjklh,μil=VjkliVjklh,formulae-sequencesubscript𝜇𝑖𝑗subscript𝑉𝑖𝑘𝑙subscript𝑉𝑗𝑘𝑙formulae-sequencesubscript𝜇𝑖𝑘subscript𝑉𝑗𝑖𝑙subscript𝑉𝑗𝑘𝑙formulae-sequencesubscript𝜇𝑖subscript𝑉𝑗𝑘𝑖subscript𝑉𝑗𝑘𝑙subscript𝜇𝑖𝑙subscript𝑉𝑗𝑘𝑙𝑖subscript𝑉𝑗𝑘𝑙\mu_{ij}=\frac{V_{iklh}}{V_{jklh}},\mu_{ik}=\frac{V_{jilh}}{V_{jklh}},\mu_{ih}% =\frac{V_{jkih}}{V_{jklh}},\mu_{il}=\frac{V_{jkli}}{V_{jklh}},italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT = divide start_ARG italic_V start_POSTSUBSCRIPT italic_i italic_k italic_l italic_h end_POSTSUBSCRIPT end_ARG start_ARG italic_V start_POSTSUBSCRIPT italic_j italic_k italic_l italic_h end_POSTSUBSCRIPT end_ARG , italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT = divide start_ARG italic_V start_POSTSUBSCRIPT italic_j italic_i italic_l italic_h end_POSTSUBSCRIPT end_ARG start_ARG italic_V start_POSTSUBSCRIPT italic_j italic_k italic_l italic_h end_POSTSUBSCRIPT end_ARG , italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT = divide start_ARG italic_V start_POSTSUBSCRIPT italic_j italic_k italic_i italic_h end_POSTSUBSCRIPT end_ARG start_ARG italic_V start_POSTSUBSCRIPT italic_j italic_k italic_l italic_h end_POSTSUBSCRIPT end_ARG , italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT = divide start_ARG italic_V start_POSTSUBSCRIPT italic_j italic_k italic_l italic_i end_POSTSUBSCRIPT end_ARG start_ARG italic_V start_POSTSUBSCRIPT italic_j italic_k italic_l italic_h end_POSTSUBSCRIPT end_ARG , (21)
    where
    Viklh=16det([1111qiqkqlqh]),Vjilh=16det([1111qjqiqlqh]),Vjkih=16det([1111qjqkqiqh]),Vjkli=16det([1111qjqkqlqi]),Vjklh=16det([1111qjqkqlqh]).missing-subexpressionsubscript𝑉𝑖𝑘𝑙16detdelimited-[]1111subscript𝑞𝑖subscript𝑞𝑘subscript𝑞𝑙subscript𝑞missing-subexpressionsubscript𝑉𝑗𝑖𝑙16detdelimited-[]1111subscript𝑞𝑗subscript𝑞𝑖subscript𝑞𝑙subscript𝑞missing-subexpressionsubscript𝑉𝑗𝑘𝑖16detdelimited-[]1111subscript𝑞𝑗subscript𝑞𝑘subscript𝑞𝑖subscript𝑞missing-subexpressionsubscript𝑉𝑗𝑘𝑙𝑖16detdelimited-[]1111subscript𝑞𝑗subscript𝑞𝑘subscript𝑞𝑙subscript𝑞𝑖missing-subexpressionsubscript𝑉𝑗𝑘𝑙16detdelimited-[]1111subscript𝑞𝑗subscript𝑞𝑘subscript𝑞𝑙subscript𝑞\begin{array}[]{ll}&V_{iklh}=\frac{1}{6}\text{det}(\left[\!\begin{array}[]{c c% c c}1&1&1&1\\ q_{i}&q_{k}&q_{l}&q_{h}\end{array}\right]),\\ &V_{jilh}=\frac{1}{6}\text{det}(\left[\!\begin{array}[]{c c c c}1&1&1&1\\ q_{j}&q_{i}&q_{l}&q_{h}\end{array}\right]),\\ &V_{jkih}=\frac{1}{6}\text{det}(\left[\!\begin{array}[]{c c c c}1&1&1&1\\ q_{j}&q_{k}&q_{i}&q_{h}\end{array}\right]),\\ &V_{jkli}=\frac{1}{6}\text{det}(\left[\!\begin{array}[]{c c c c}1&1&1&1\\ q_{j}&q_{k}&q_{l}&q_{i}\end{array}\right]),\\ &V_{jklh}=\frac{1}{6}\text{det}(\left[\!\begin{array}[]{c c c c}1&1&1&1\\ q_{j}&q_{k}&q_{l}&q_{h}\end{array}\right]).\end{array}start_ARRAY start_ROW start_CELL end_CELL start_CELL italic_V start_POSTSUBSCRIPT italic_i italic_k italic_l italic_h end_POSTSUBSCRIPT = divide start_ARG 1 end_ARG start_ARG 6 end_ARG det ( [ start_ARRAY start_ROW start_CELL 1 end_CELL start_CELL 1 end_CELL start_CELL 1 end_CELL start_CELL 1 end_CELL end_ROW start_ROW start_CELL italic_q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_CELL start_CELL italic_q start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_CELL start_CELL italic_q start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT end_CELL start_CELL italic_q start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT end_CELL end_ROW end_ARRAY ] ) , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL italic_V start_POSTSUBSCRIPT italic_j italic_i italic_l italic_h end_POSTSUBSCRIPT = divide start_ARG 1 end_ARG start_ARG 6 end_ARG det ( [ start_ARRAY start_ROW start_CELL 1 end_CELL start_CELL 1 end_CELL start_CELL 1 end_CELL start_CELL 1 end_CELL end_ROW start_ROW start_CELL italic_q start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_CELL start_CELL italic_q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_CELL start_CELL italic_q start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT end_CELL start_CELL italic_q start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT end_CELL end_ROW end_ARRAY ] ) , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL italic_V start_POSTSUBSCRIPT italic_j italic_k italic_i italic_h end_POSTSUBSCRIPT = divide start_ARG 1 end_ARG start_ARG 6 end_ARG det ( [ start_ARRAY start_ROW start_CELL 1 end_CELL start_CELL 1 end_CELL start_CELL 1 end_CELL start_CELL 1 end_CELL end_ROW start_ROW start_CELL italic_q start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_CELL start_CELL italic_q start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_CELL start_CELL italic_q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_CELL start_CELL italic_q start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT end_CELL end_ROW end_ARRAY ] ) , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL italic_V start_POSTSUBSCRIPT italic_j italic_k italic_l italic_i end_POSTSUBSCRIPT = divide start_ARG 1 end_ARG start_ARG 6 end_ARG det ( [ start_ARRAY start_ROW start_CELL 1 end_CELL start_CELL 1 end_CELL start_CELL 1 end_CELL start_CELL 1 end_CELL end_ROW start_ROW start_CELL italic_q start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_CELL start_CELL italic_q start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_CELL start_CELL italic_q start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT end_CELL start_CELL italic_q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_CELL end_ROW end_ARRAY ] ) , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL italic_V start_POSTSUBSCRIPT italic_j italic_k italic_l italic_h end_POSTSUBSCRIPT = divide start_ARG 1 end_ARG start_ARG 6 end_ARG det ( [ start_ARRAY start_ROW start_CELL 1 end_CELL start_CELL 1 end_CELL start_CELL 1 end_CELL start_CELL 1 end_CELL end_ROW start_ROW start_CELL italic_q start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_CELL start_CELL italic_q start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_CELL start_CELL italic_q start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT end_CELL start_CELL italic_q start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT end_CELL end_ROW end_ARRAY ] ) . end_CELL end_ROW end_ARRAY (22)
  2. (b)

    If Vjkhl2=0superscriptsubscript𝑉𝑗𝑘𝑙20V_{jkhl}^{2}=0italic_V start_POSTSUBSCRIPT italic_j italic_k italic_h italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT = 0, pj,pk,ph,plsubscript𝑝𝑗subscript𝑝𝑘subscript𝑝subscript𝑝𝑙p_{j},p_{k},p_{h},p_{l}italic_p start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT are coplanar. The area Sjkhsubscript𝑆𝑗𝑘S_{jkh}italic_S start_POSTSUBSCRIPT italic_j italic_k italic_h end_POSTSUBSCRIPT of the triangle formed by the nodes pj,pk,phsubscript𝑝𝑗subscript𝑝𝑘subscript𝑝p_{j},p_{k},p_{h}italic_p start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT can also be calculated with distance measurements through Cayley-Menger determinant [20]. That is,

    16Sjkh2=det(2djk2djk2+djh2dkh2djk2+djh2dkh22djh2).16superscriptsubscript𝑆𝑗𝑘2det2subscriptsuperscript𝑑2𝑗𝑘subscriptsuperscript𝑑2𝑗𝑘subscriptsuperscript𝑑2𝑗subscriptsuperscript𝑑2𝑘missing-subexpressionsubscriptsuperscript𝑑2𝑗𝑘subscriptsuperscript𝑑2𝑗subscriptsuperscript𝑑2𝑘2subscriptsuperscript𝑑2𝑗missing-subexpression16S_{jkh}^{2}=\text{det}\left(\!\begin{array}[]{ccc}2d^{2}_{jk}&d^{2}_{jk}\!+% \!d^{2}_{jh}\!-\!d^{2}_{kh}\\ d^{2}_{jk}\!+\!d^{2}_{jh}\!-\!d^{2}_{kh}&2d^{2}_{jh}\\ \end{array}\right).16 italic_S start_POSTSUBSCRIPT italic_j italic_k italic_h end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT = det ( start_ARRAY start_ROW start_CELL 2 italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT end_CELL start_CELL italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT + italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j italic_h end_POSTSUBSCRIPT - italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_k italic_h end_POSTSUBSCRIPT end_CELL start_CELL end_CELL end_ROW start_ROW start_CELL italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT + italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j italic_h end_POSTSUBSCRIPT - italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_k italic_h end_POSTSUBSCRIPT end_CELL start_CELL 2 italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j italic_h end_POSTSUBSCRIPT end_CELL start_CELL end_CELL end_ROW end_ARRAY ) . (23)

For the area Sjkhsubscript𝑆𝑗𝑘S_{jkh}italic_S start_POSTSUBSCRIPT italic_j italic_k italic_h end_POSTSUBSCRIPT (23), there are also two cases:

  1. (i)

    If Sjkh20superscriptsubscript𝑆𝑗𝑘20S_{jkh}^{2}\neq 0italic_S start_POSTSUBSCRIPT italic_j italic_k italic_h end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ≠ 0, pj,pk,phsubscript𝑝𝑗subscript𝑝𝑘subscript𝑝p_{j},p_{k},p_{h}italic_p start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT are non-colinear. The work in [6] provides a way to obtain the barycentric coordinate {μlj,μlk,μlh}subscript𝜇𝑙𝑗subscript𝜇𝑙𝑘subscript𝜇𝑙\{\mu_{lj},\mu_{lk},\mu_{lh}\}{ italic_μ start_POSTSUBSCRIPT italic_l italic_j end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_l italic_k end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_l italic_h end_POSTSUBSCRIPT } of node l𝑙litalic_l with respect to its neighboring nodes j,k,h𝑗𝑘j,k,hitalic_j , italic_k , italic_h in (24) by only using the distance measurements shown in Algorithm 2.

    pl=μljpj+μlkpk+μlhph,μlj+μlk+μlh=1.missing-subexpressionsubscript𝑝𝑙subscript𝜇𝑙𝑗subscript𝑝𝑗subscript𝜇𝑙𝑘subscript𝑝𝑘subscript𝜇𝑙subscript𝑝missing-subexpressionsubscript𝜇𝑙𝑗subscript𝜇𝑙𝑘subscript𝜇𝑙1\begin{array}[]{ll}&p_{l}=\mu_{lj}p_{j}+\mu_{lk}p_{k}+\mu_{lh}p_{h},\\ &\mu_{lj}+\mu_{lk}+\mu_{lh}=1.\end{array}start_ARRAY start_ROW start_CELL end_CELL start_CELL italic_p start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT = italic_μ start_POSTSUBSCRIPT italic_l italic_j end_POSTSUBSCRIPT italic_p start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_l italic_k end_POSTSUBSCRIPT italic_p start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_l italic_h end_POSTSUBSCRIPT italic_p start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL italic_μ start_POSTSUBSCRIPT italic_l italic_j end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_l italic_k end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_l italic_h end_POSTSUBSCRIPT = 1 . end_CELL end_ROW end_ARRAY (24)

    Note that (24) can also be rewritten as a displacement constraint shown as

    μijeij+μikeik+μiheih+μileil=𝟎,subscript𝜇𝑖𝑗subscript𝑒𝑖𝑗subscript𝜇𝑖𝑘subscript𝑒𝑖𝑘subscript𝜇𝑖subscript𝑒𝑖subscript𝜇𝑖𝑙subscript𝑒𝑖𝑙0\mu_{ij}e_{ij}+\mu_{ik}e_{ik}+\mu_{ih}e_{ih}+\mu_{il}e_{il}=\mathbf{0},italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT = bold_0 , (25)

    where μij=μlj,μik=μlk,μih=μlh,μil=1formulae-sequencesubscript𝜇𝑖𝑗subscript𝜇𝑙𝑗formulae-sequencesubscript𝜇𝑖𝑘subscript𝜇𝑙𝑘formulae-sequencesubscript𝜇𝑖subscript𝜇𝑙subscript𝜇𝑖𝑙1\mu_{ij}\!=\!-\mu_{lj},\mu_{ik}\!=\!-\mu_{lk},\mu_{ih}\!=\!-\mu_{lh},\mu_{il}% \!=\!1italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT = - italic_μ start_POSTSUBSCRIPT italic_l italic_j end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT = - italic_μ start_POSTSUBSCRIPT italic_l italic_k end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT = - italic_μ start_POSTSUBSCRIPT italic_l italic_h end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT = 1.

    Algorithm 2 Distance-based Barycentric Coordinate (Vjkhl=0,Sjkh0formulae-sequencesubscript𝑉𝑗𝑘𝑙0subscript𝑆𝑗𝑘0V_{jkhl}=0,S_{jkh}\neq 0italic_V start_POSTSUBSCRIPT italic_j italic_k italic_h italic_l end_POSTSUBSCRIPT = 0 , italic_S start_POSTSUBSCRIPT italic_j italic_k italic_h end_POSTSUBSCRIPT ≠ 0)
    1:Available information: Distance measurements among the nodes pj,pk,ph,plsubscript𝑝𝑗subscript𝑝𝑘subscript𝑝subscript𝑝𝑙p_{j},p_{k},p_{h},p_{l}italic_p start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT.
    2:The absolute values of the barycentric coordinate μlj,μlk,μlhsubscript𝜇𝑙𝑗subscript𝜇𝑙𝑘subscript𝜇𝑙\mu_{lj},\mu_{lk},\mu_{lh}italic_μ start_POSTSUBSCRIPT italic_l italic_j end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_l italic_k end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_l italic_h end_POSTSUBSCRIPT are calculated by
    μlj=SlkhSjkh,μlk=SlhjSjkh,μlh=SljkSjkh,formulae-sequencenormsubscript𝜇𝑙𝑗normsubscript𝑆𝑙𝑘normsubscript𝑆𝑗𝑘formulae-sequencenormsubscript𝜇𝑙𝑘normsubscript𝑆𝑙𝑗normsubscript𝑆𝑗𝑘normsubscript𝜇𝑙normsubscript𝑆𝑙𝑗𝑘normsubscript𝑆𝑗𝑘\|\mu_{lj}\|=\frac{\|S_{lkh}\|}{\|S_{jkh}\|},\|\mu_{lk}\|=\frac{\|S_{lhj}\|}{% \|S_{jkh}\|},\|\mu_{lh}\|=\frac{\|S_{ljk}\|}{\|S_{jkh}\|},∥ italic_μ start_POSTSUBSCRIPT italic_l italic_j end_POSTSUBSCRIPT ∥ = divide start_ARG ∥ italic_S start_POSTSUBSCRIPT italic_l italic_k italic_h end_POSTSUBSCRIPT ∥ end_ARG start_ARG ∥ italic_S start_POSTSUBSCRIPT italic_j italic_k italic_h end_POSTSUBSCRIPT ∥ end_ARG , ∥ italic_μ start_POSTSUBSCRIPT italic_l italic_k end_POSTSUBSCRIPT ∥ = divide start_ARG ∥ italic_S start_POSTSUBSCRIPT italic_l italic_h italic_j end_POSTSUBSCRIPT ∥ end_ARG start_ARG ∥ italic_S start_POSTSUBSCRIPT italic_j italic_k italic_h end_POSTSUBSCRIPT ∥ end_ARG , ∥ italic_μ start_POSTSUBSCRIPT italic_l italic_h end_POSTSUBSCRIPT ∥ = divide start_ARG ∥ italic_S start_POSTSUBSCRIPT italic_l italic_j italic_k end_POSTSUBSCRIPT ∥ end_ARG start_ARG ∥ italic_S start_POSTSUBSCRIPT italic_j italic_k italic_h end_POSTSUBSCRIPT ∥ end_ARG , (26)
    where Sjkhnormsubscript𝑆𝑗𝑘\|S_{jkh}\|∥ italic_S start_POSTSUBSCRIPT italic_j italic_k italic_h end_POSTSUBSCRIPT ∥ and others can be solved according to (23). The absolute values μlj,μlk,μlhnormsubscript𝜇𝑙𝑗normsubscript𝜇𝑙𝑘normsubscript𝜇𝑙\|\mu_{lj}\|,\|\mu_{lk}\|,\|\mu_{lh}\|∥ italic_μ start_POSTSUBSCRIPT italic_l italic_j end_POSTSUBSCRIPT ∥ , ∥ italic_μ start_POSTSUBSCRIPT italic_l italic_k end_POSTSUBSCRIPT ∥ , ∥ italic_μ start_POSTSUBSCRIPT italic_l italic_h end_POSTSUBSCRIPT ∥ satisfy
    μlj=σljμlj,μlk=σlkμlk,μlh=σlhμlh,σljμlj+σlkμlk+σlhμlh=1,missing-subexpressionformulae-sequencesubscript𝜇𝑙𝑗subscript𝜎𝑙𝑗normsubscript𝜇𝑙𝑗formulae-sequencesubscript𝜇𝑙𝑘subscript𝜎𝑙𝑘normsubscript𝜇𝑙𝑘subscript𝜇𝑙subscript𝜎𝑙normsubscript𝜇𝑙missing-subexpressionsubscript𝜎𝑙𝑗normsubscript𝜇𝑙𝑗subscript𝜎𝑙𝑘normsubscript𝜇𝑙𝑘subscript𝜎𝑙normsubscript𝜇𝑙1\begin{array}[]{ll}&\mu_{lj}=\sigma_{lj}\|\mu_{lj}\|,\mu_{lk}=\sigma_{lk}\|\mu% _{lk}\|,\mu_{lh}=\sigma_{lh}\|\mu_{lh}\|,\\ &\sigma_{lj}\|\mu_{lj}\|+\sigma_{lk}\|\mu_{lk}\|+\sigma_{lh}\|\mu_{lh}\|=1,% \end{array}start_ARRAY start_ROW start_CELL end_CELL start_CELL italic_μ start_POSTSUBSCRIPT italic_l italic_j end_POSTSUBSCRIPT = italic_σ start_POSTSUBSCRIPT italic_l italic_j end_POSTSUBSCRIPT ∥ italic_μ start_POSTSUBSCRIPT italic_l italic_j end_POSTSUBSCRIPT ∥ , italic_μ start_POSTSUBSCRIPT italic_l italic_k end_POSTSUBSCRIPT = italic_σ start_POSTSUBSCRIPT italic_l italic_k end_POSTSUBSCRIPT ∥ italic_μ start_POSTSUBSCRIPT italic_l italic_k end_POSTSUBSCRIPT ∥ , italic_μ start_POSTSUBSCRIPT italic_l italic_h end_POSTSUBSCRIPT = italic_σ start_POSTSUBSCRIPT italic_l italic_h end_POSTSUBSCRIPT ∥ italic_μ start_POSTSUBSCRIPT italic_l italic_h end_POSTSUBSCRIPT ∥ , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL italic_σ start_POSTSUBSCRIPT italic_l italic_j end_POSTSUBSCRIPT ∥ italic_μ start_POSTSUBSCRIPT italic_l italic_j end_POSTSUBSCRIPT ∥ + italic_σ start_POSTSUBSCRIPT italic_l italic_k end_POSTSUBSCRIPT ∥ italic_μ start_POSTSUBSCRIPT italic_l italic_k end_POSTSUBSCRIPT ∥ + italic_σ start_POSTSUBSCRIPT italic_l italic_h end_POSTSUBSCRIPT ∥ italic_μ start_POSTSUBSCRIPT italic_l italic_h end_POSTSUBSCRIPT ∥ = 1 , end_CELL end_ROW end_ARRAY (27)
    where σlj,σlk,σlhsubscript𝜎𝑙𝑗subscript𝜎𝑙𝑘subscript𝜎𝑙\sigma_{lj},\sigma_{lk},\sigma_{lh}italic_σ start_POSTSUBSCRIPT italic_l italic_j end_POSTSUBSCRIPT , italic_σ start_POSTSUBSCRIPT italic_l italic_k end_POSTSUBSCRIPT , italic_σ start_POSTSUBSCRIPT italic_l italic_h end_POSTSUBSCRIPT take values of either 1111 or 11-1- 1.
    3:Calculating σlj,σlk,σlhsubscript𝜎𝑙𝑗subscript𝜎𝑙𝑘subscript𝜎𝑙\sigma_{lj},\sigma_{lk},\sigma_{lh}italic_σ start_POSTSUBSCRIPT italic_l italic_j end_POSTSUBSCRIPT , italic_σ start_POSTSUBSCRIPT italic_l italic_k end_POSTSUBSCRIPT , italic_σ start_POSTSUBSCRIPT italic_l italic_h end_POSTSUBSCRIPT by distance measurements through Algorithm 1111 in the Diao’ work [6].
  2. (ii)

    If Sjkh2=0superscriptsubscript𝑆𝑗𝑘20S_{jkh}^{2}\!=\!0italic_S start_POSTSUBSCRIPT italic_j italic_k italic_h end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT = 0, pj,pk,phsubscript𝑝𝑗subscript𝑝𝑘subscript𝑝p_{j},p_{k},p_{h}italic_p start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT are colinear. There are three cases: djk+dkh=djhsubscript𝑑𝑗𝑘subscript𝑑𝑘subscript𝑑𝑗d_{jk}\!+\!d_{kh}\!=\!d_{jh}italic_d start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT + italic_d start_POSTSUBSCRIPT italic_k italic_h end_POSTSUBSCRIPT = italic_d start_POSTSUBSCRIPT italic_j italic_h end_POSTSUBSCRIPT; djk+djh=dkhsubscript𝑑𝑗𝑘subscript𝑑𝑗subscript𝑑𝑘d_{jk}\!+\!d_{jh}\!=\!d_{kh}italic_d start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT + italic_d start_POSTSUBSCRIPT italic_j italic_h end_POSTSUBSCRIPT = italic_d start_POSTSUBSCRIPT italic_k italic_h end_POSTSUBSCRIPT; djh+dkh=djksubscript𝑑𝑗subscript𝑑𝑘subscript𝑑𝑗𝑘d_{jh}\!+\!d_{kh}\!=\!d_{jk}italic_d start_POSTSUBSCRIPT italic_j italic_h end_POSTSUBSCRIPT + italic_d start_POSTSUBSCRIPT italic_k italic_h end_POSTSUBSCRIPT = italic_d start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT. If djk+dkh=djhsubscript𝑑𝑗𝑘subscript𝑑𝑘subscript𝑑𝑗d_{jk}\!+\!d_{kh}\!=\!d_{jh}italic_d start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT + italic_d start_POSTSUBSCRIPT italic_k italic_h end_POSTSUBSCRIPT = italic_d start_POSTSUBSCRIPT italic_j italic_h end_POSTSUBSCRIPT, we have

    ejk=djkdkhekh.subscript𝑒𝑗𝑘subscript𝑑𝑗𝑘subscript𝑑𝑘subscript𝑒𝑘e_{jk}=\frac{d_{jk}}{d_{kh}}e_{kh}.italic_e start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT = divide start_ARG italic_d start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_k italic_h end_POSTSUBSCRIPT end_ARG italic_e start_POSTSUBSCRIPT italic_k italic_h end_POSTSUBSCRIPT . (28)

    Equation (28) can be rewritten as a displacement constraint shown as

    μijeij+μikeik+μiheih+μileil=𝟎,subscript𝜇𝑖𝑗subscript𝑒𝑖𝑗subscript𝜇𝑖𝑘subscript𝑒𝑖𝑘subscript𝜇𝑖subscript𝑒𝑖subscript𝜇𝑖𝑙subscript𝑒𝑖𝑙0\mu_{ij}e_{ij}+\mu_{ik}e_{ik}+\mu_{ih}e_{ih}+\mu_{il}e_{il}=\mathbf{0},italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT = bold_0 , (29)

    where μij=1,μik=1+djkdkh,μih=djkdkh,μil=0formulae-sequencesubscript𝜇𝑖𝑗1formulae-sequencesubscript𝜇𝑖𝑘1subscript𝑑𝑗𝑘subscript𝑑𝑘formulae-sequencesubscript𝜇𝑖subscript𝑑𝑗𝑘subscript𝑑𝑘subscript𝜇𝑖𝑙0\mu_{ij}\!=\!-1,\mu_{ik}\!=\!1\!+\!\frac{d_{jk}}{d_{kh}},\mu_{ih}\!=\!-\frac{d% _{jk}}{d_{kh}},\mu_{il}\!=\!0italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT = - 1 , italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT = 1 + divide start_ARG italic_d start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_k italic_h end_POSTSUBSCRIPT end_ARG , italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT = - divide start_ARG italic_d start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_k italic_h end_POSTSUBSCRIPT end_ARG , italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT = 0. If djk+djh=dkhsubscript𝑑𝑗𝑘subscript𝑑𝑗subscript𝑑𝑘d_{jk}\!+\!d_{jh}\!=\!d_{kh}italic_d start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT + italic_d start_POSTSUBSCRIPT italic_j italic_h end_POSTSUBSCRIPT = italic_d start_POSTSUBSCRIPT italic_k italic_h end_POSTSUBSCRIPT or djh+dkh=djksubscript𝑑𝑗subscript𝑑𝑘subscript𝑑𝑗𝑘d_{jh}\!+\!d_{kh}\!=\!d_{jk}italic_d start_POSTSUBSCRIPT italic_j italic_h end_POSTSUBSCRIPT + italic_d start_POSTSUBSCRIPT italic_k italic_h end_POSTSUBSCRIPT = italic_d start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT, the corresponding displacement constraint (29) can be modified accordingly. The procedure of constructing a distance-based displacement constraint among the nodes pi,pj,pk,ph,plsubscript𝑝𝑖subscript𝑝𝑗subscript𝑝𝑘subscript𝑝subscript𝑝𝑙p_{i},p_{j},p_{k},p_{h},p_{l}italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT in 3superscript3\mathbb{R}^{3}blackboard_R start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT is given in Algorithm 3.

Algorithm 3 Distance-based Displacement Constraint
1:Available information: Distance measurements among the nodes pi,pj,pk,ph,plsubscript𝑝𝑖subscript𝑝𝑗subscript𝑝𝑘subscript𝑝subscript𝑝𝑙p_{i},p_{j},p_{k},p_{h},p_{l}italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT.
2:If pj,pk,ph,plsubscript𝑝𝑗subscript𝑝𝑘subscript𝑝subscript𝑝𝑙p_{j},p_{k},p_{h},p_{l}italic_p start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT are non-coplanar Vjkhl0subscript𝑉𝑗𝑘𝑙0V_{jkhl}\neq 0italic_V start_POSTSUBSCRIPT italic_j italic_k italic_h italic_l end_POSTSUBSCRIPT ≠ 0 (18), do
3:    Constructing a displacement constraint by (20);
4:Else
5:     If pj,pk,phsubscript𝑝𝑗subscript𝑝𝑘subscript𝑝p_{j},p_{k},p_{h}italic_p start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT are non-colinear Sjkh0subscript𝑆𝑗𝑘0S_{jkh}\neq 0italic_S start_POSTSUBSCRIPT italic_j italic_k italic_h end_POSTSUBSCRIPT ≠ 0 (23), do
6:         Constructing a displacement constraint by (25);
7:     Else
8:         Constructing a displacement constraint by (29);
9:     End
10:End
Refer to caption
Figure 2: The red nodes indicate that they can measure local relative positions. The green nodes mean that they can measure one of the following four types of local relative measurements (local relative bearing, angle, distance, and ratio-of-distance). The black nodes mean that they can measure only one of the five types of local relative measurements. (a)𝑎(a)( italic_a ) Node i𝑖i\in\mathcal{R}italic_i ∈ caligraphic_R. (b)𝑏(b)( italic_b ) Node i𝒜𝒟o𝒟𝑖𝒜𝒟𝑜𝒟i\in\mathcal{B}\cup\mathcal{A}\cup\mathcal{D}\cup\mathcal{R}o\mathcal{D}italic_i ∈ caligraphic_B ∪ caligraphic_A ∪ caligraphic_D ∪ caligraphic_R italic_o caligraphic_D and Node j𝑗j\in\mathcal{R}italic_j ∈ caligraphic_R. (c)𝑐(c)( italic_c ) Node i,j,k,h,l𝒜𝒟o𝒟𝑖𝑗𝑘𝑙𝒜𝒟𝑜𝒟i,j,k,h,l\in\mathcal{B}\cup\mathcal{A}\cup\mathcal{D}\cup\mathcal{R}o\mathcal{D}italic_i , italic_j , italic_k , italic_h , italic_l ∈ caligraphic_B ∪ caligraphic_A ∪ caligraphic_D ∪ caligraphic_R italic_o caligraphic_D.

IV-B Construction of Angle Constraints and Displacement Constraints

Assumption 1.

No two nodes are collocated in 3superscript3\mathbb{R}^{3}blackboard_R start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT. Each anchor node i𝑖iitalic_i has at least two neighboring anchor nodes j,k𝑗𝑘j,kitalic_j , italic_k, where i,j,k𝑖𝑗𝑘i,j,kitalic_i , italic_j , italic_k are mutual neighbors. Each free node i𝑖iitalic_i has at least four neighboring nodes j,k,h,l𝑗𝑘𝑙j,k,h,litalic_j , italic_k , italic_h , italic_l, where i,j,k,h,l𝑖𝑗𝑘𝑙i,j,k,h,litalic_i , italic_j , italic_k , italic_h , italic_l are mutual neighbors and non-colinear.

Note that network localizability is used to specify whether the network structure is unique. Since the network structure can be determined by angle constraints and displacement constraints, to analyze network localizability, we need to obtain angle constraints and displacement constraints.

IV-B1 Angle Constraint

The known anchor positions will be used to construct the angle constraints, which do not need any measurement. Under Assumption 1, eij,eik,ejksubscript𝑒𝑖𝑗subscript𝑒𝑖𝑘subscript𝑒𝑗𝑘e_{ij},e_{ik},e_{jk}italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT , italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT , italic_e start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT are known among the anchors i,j,k𝑖𝑗𝑘i,j,kitalic_i , italic_j , italic_k. Then, the parameters wiksubscript𝑤𝑖𝑘w_{ik}italic_w start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT, wkisubscript𝑤𝑘𝑖w_{ki}italic_w start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT, wijsubscript𝑤𝑖𝑗w_{ij}italic_w start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT, wjisubscript𝑤𝑗𝑖w_{ji}italic_w start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT, wjksubscript𝑤𝑗𝑘w_{jk}italic_w start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT, wkjsubscript𝑤𝑘𝑗w_{kj}italic_w start_POSTSUBSCRIPT italic_k italic_j end_POSTSUBSCRIPT in the angle constraints (1)-(3) can be obtained by (5).

IV-B2 Displacement Constraint

Different from the angle constraints that are constructed without any measurement, the local relative measurements will be used to construct the displacement constraints (4). Under Assumption 1, each free node i𝑖iitalic_i can communicate with its four neighbors j,k,h,l𝑗𝑘𝑙j,k,h,litalic_j , italic_k , italic_h , italic_l. Then, the displacement constraint among i,j,k,h,l𝑖𝑗𝑘𝑙i,j,k,h,litalic_i , italic_j , italic_k , italic_h , italic_l can be obtained by the mixed types of measurements. Without loss of generality, we consider two cases: i𝑖i\in\mathcal{R}italic_i ∈ caligraphic_R and i𝒜𝒟o𝒟𝑖𝒜𝒟𝑜𝒟i\in\mathcal{B}\cup\mathcal{A}\cup\mathcal{D}\cup\mathcal{R}o\mathcal{D}italic_i ∈ caligraphic_B ∪ caligraphic_A ∪ caligraphic_D ∪ caligraphic_R italic_o caligraphic_D.

Case (𝟏)1\mathbf{(1)}( bold_1 ). Node i𝑖i\in\mathcal{R}italic_i ∈ caligraphic_R. Node i𝑖iitalic_i can measure local relative positions eiji,eiki,eihi,eilisuperscriptsubscript𝑒𝑖𝑗𝑖superscriptsubscript𝑒𝑖𝑘𝑖superscriptsubscript𝑒𝑖𝑖superscriptsubscript𝑒𝑖𝑙𝑖e_{ij}^{i},e_{ik}^{i},e_{ih}^{i},e_{il}^{i}italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_e start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_e start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT shown in Fig. 2(a)𝑎(a)( italic_a ). In this case, we do not care the measurement types of nodes j,k,l,h𝑗𝑘𝑙j,k,l,hitalic_j , italic_k , italic_l , italic_h as their measurements will not be used. Since (eiji,eiki,eihi,eili)3×4subscriptsuperscript𝑒𝑖𝑖𝑗subscriptsuperscript𝑒𝑖𝑖𝑘subscriptsuperscript𝑒𝑖𝑖subscriptsuperscript𝑒𝑖𝑖𝑙superscript34(e^{i}_{ij},e^{i}_{ik},e^{i}_{ih},e^{i}_{il})\in\mathbb{R}^{3\times 4}( italic_e start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT , italic_e start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT , italic_e start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT , italic_e start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT ) ∈ blackboard_R start_POSTSUPERSCRIPT 3 × 4 end_POSTSUPERSCRIPT, there must be a non-zero vector (μij,μik,μih,μil)T4superscriptsubscript𝜇𝑖𝑗subscript𝜇𝑖𝑘subscript𝜇𝑖subscript𝜇𝑖𝑙𝑇superscript4(\mu_{ij},\mu_{ik},\mu_{ih},\mu_{il})^{T}\in\mathbb{R}^{4}( italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT 4 end_POSTSUPERSCRIPT satisfying

[eijieikieihieili][μijμikμihμil]=𝟎.delimited-[]superscriptsubscript𝑒𝑖𝑗𝑖superscriptsubscript𝑒𝑖𝑘𝑖superscriptsubscript𝑒𝑖𝑖superscriptsubscript𝑒𝑖𝑙𝑖delimited-[]subscript𝜇𝑖𝑗subscript𝜇𝑖𝑘subscript𝜇𝑖subscript𝜇𝑖𝑙0\left[\!\begin{array}[]{c c c c}e_{ij}^{i}&e_{ik}^{i}&e_{ih}^{i}&e_{il}^{i}\\ \end{array}\right]\left[\!\begin{array}[]{c}\mu_{ij}\\ \mu_{ik}\\ \mu_{ih}\\ \mu_{il}\end{array}\right]=\mathbf{0}.[ start_ARRAY start_ROW start_CELL italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT end_CELL start_CELL italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT end_CELL start_CELL italic_e start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT end_CELL start_CELL italic_e start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT end_CELL end_ROW end_ARRAY ] [ start_ARRAY start_ROW start_CELL italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT end_CELL end_ROW end_ARRAY ] = bold_0 . (30)

Note that eij=Qieiji,eik=Qieiki,eih=Qieihi,eil=Qieiliformulae-sequencesubscript𝑒𝑖𝑗subscript𝑄𝑖superscriptsubscript𝑒𝑖𝑗𝑖formulae-sequencesubscript𝑒𝑖𝑘subscript𝑄𝑖superscriptsubscript𝑒𝑖𝑘𝑖formulae-sequencesubscript𝑒𝑖subscript𝑄𝑖superscriptsubscript𝑒𝑖𝑖subscript𝑒𝑖𝑙subscript𝑄𝑖superscriptsubscript𝑒𝑖𝑙𝑖e_{ij}=Q_{i}e_{ij}^{i},e_{ik}=Q_{i}e_{ik}^{i},e_{ih}=Q_{i}e_{ih}^{i},e_{il}=Q_% {i}e_{il}^{i}italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT = italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT = italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_e start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT = italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_e start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT = italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT. Left multiplying Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT on both sides of (30), we can obtain the displacement constraint

μijeij+μikeik+μiheih+μileil=𝟎.subscript𝜇𝑖𝑗subscript𝑒𝑖𝑗subscript𝜇𝑖𝑘subscript𝑒𝑖𝑘subscript𝜇𝑖subscript𝑒𝑖subscript𝜇𝑖𝑙subscript𝑒𝑖𝑙0\mu_{ij}e_{ij}+\mu_{ik}e_{ik}+\mu_{ih}e_{ih}+\mu_{il}e_{il}=\mathbf{0}.italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT = bold_0 . (31)

From (31), we can know that the parameters μij,μiksubscript𝜇𝑖𝑗subscript𝜇𝑖𝑘\mu_{ij},\mu_{ik}italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT, μih,μilsubscript𝜇𝑖subscript𝜇𝑖𝑙\mu_{ih},\mu_{il}italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT in (31) can be calculated by solving (30).

Case (𝟐)2\mathbf{(2)}( bold_2 ). Node i𝒜𝒟o𝒟𝑖𝒜𝒟𝑜𝒟i\in\mathcal{B}\cup\mathcal{A}\cup\mathcal{D}\cup\mathcal{R}o\mathcal{D}italic_i ∈ caligraphic_B ∪ caligraphic_A ∪ caligraphic_D ∪ caligraphic_R italic_o caligraphic_D. There are two situations: (2.1)2.1(\mathbf{2.1})( bold_2.1 ) at least one neighbor of node i𝑖iitalic_i in \mathcal{R}caligraphic_R, (2.2)2.2(\mathbf{2.2})( bold_2.2 ) no neighbor of node i𝑖iitalic_i in \mathcal{R}caligraphic_R.

Case (2.1)2.1(\mathbf{2.1})( bold_2.1 ). Consider at least one neighbor of node i𝑖iitalic_i in \mathcal{R}caligraphic_R, say j𝑗j\in\mathcal{R}italic_j ∈ caligraphic_R shown in Fig. 2(b)𝑏(b)( italic_b ). Node i𝑖iitalic_i can obtain ejij,ejkj,ejhj,ejljsuperscriptsubscript𝑒𝑗𝑖𝑗superscriptsubscript𝑒𝑗𝑘𝑗superscriptsubscript𝑒𝑗𝑗superscriptsubscript𝑒𝑗𝑙𝑗e_{ji}^{j},e_{jk}^{j},e_{jh}^{j},e_{jl}^{j}italic_e start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_j end_POSTSUPERSCRIPT , italic_e start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_j end_POSTSUPERSCRIPT , italic_e start_POSTSUBSCRIPT italic_j italic_h end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_j end_POSTSUPERSCRIPT , italic_e start_POSTSUBSCRIPT italic_j italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_j end_POSTSUPERSCRIPT from node j𝑗jitalic_j by communication. Similar to (30) and (31), we can obtain a displacement constraint shown as

μjieji+μjkejk+μjhejh+μjlejl=𝟎,subscript𝜇𝑗𝑖subscript𝑒𝑗𝑖subscript𝜇𝑗𝑘subscript𝑒𝑗𝑘subscript𝜇𝑗subscript𝑒𝑗subscript𝜇𝑗𝑙subscript𝑒𝑗𝑙0\mu_{ji}e_{ji}+\mu_{jk}e_{jk}+\mu_{jh}e_{jh}+\mu_{jl}e_{jl}=\mathbf{0},italic_μ start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_j italic_h end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_j italic_h end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_j italic_l end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_j italic_l end_POSTSUBSCRIPT = bold_0 , (32)

where the non-zero vector (μji,μjk,μjh,μjl)T4superscriptsubscript𝜇𝑗𝑖subscript𝜇𝑗𝑘subscript𝜇𝑗subscript𝜇𝑗𝑙𝑇superscript4(\mu_{ji},\mu_{jk},\mu_{jh},\mu_{jl})^{T}\in\mathbb{R}^{4}( italic_μ start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_j italic_h end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_j italic_l end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT 4 end_POSTSUPERSCRIPT satisfying (32) can be calculated by solving its equivalent equation (33).

[ejijejkjejhjejlj][μjiμjkμjhμjl]=𝟎.delimited-[]superscriptsubscript𝑒𝑗𝑖𝑗superscriptsubscript𝑒𝑗𝑘𝑗superscriptsubscript𝑒𝑗𝑗superscriptsubscript𝑒𝑗𝑙𝑗delimited-[]subscript𝜇𝑗𝑖subscript𝜇𝑗𝑘subscript𝜇𝑗subscript𝜇𝑗𝑙0\left[\!\begin{array}[]{c c c c}e_{ji}^{j}&e_{jk}^{j}&e_{jh}^{j}&e_{jl}^{j}\\ \end{array}\right]\left[\!\begin{array}[]{c}\mu_{ji}\\ \mu_{jk}\\ \mu_{jh}\\ \mu_{jl}\end{array}\right]=\mathbf{0}.[ start_ARRAY start_ROW start_CELL italic_e start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_j end_POSTSUPERSCRIPT end_CELL start_CELL italic_e start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_j end_POSTSUPERSCRIPT end_CELL start_CELL italic_e start_POSTSUBSCRIPT italic_j italic_h end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_j end_POSTSUPERSCRIPT end_CELL start_CELL italic_e start_POSTSUBSCRIPT italic_j italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_j end_POSTSUPERSCRIPT end_CELL end_ROW end_ARRAY ] [ start_ARRAY start_ROW start_CELL italic_μ start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_μ start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_μ start_POSTSUBSCRIPT italic_j italic_h end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_μ start_POSTSUBSCRIPT italic_j italic_l end_POSTSUBSCRIPT end_CELL end_ROW end_ARRAY ] = bold_0 . (33)
Remark 4.

For the case (2.1)2.1(\mathbf{2.1})( bold_2.1 ), node i𝑖iitalic_i makes use of node j𝑗jitalic_j’s measurements to construct the displacement constraint (32).

Case (2.2)2.2(\mathbf{2.2})( bold_2.2 ). Consider no neighbor of node i𝑖iitalic_i in \mathcal{R}caligraphic_R, that is, i,j,k,h,l𝒜𝒟o𝒟𝑖𝑗𝑘𝑙𝒜𝒟𝑜𝒟i,j,k,h,l\in\mathcal{B}\cup\mathcal{A}\cup\mathcal{D}\cup\mathcal{R}o\mathcal{D}italic_i , italic_j , italic_k , italic_h , italic_l ∈ caligraphic_B ∪ caligraphic_A ∪ caligraphic_D ∪ caligraphic_R italic_o caligraphic_D. Under Assumption 1, node i𝑖iitalic_i and its four neighboring nodes j,k,h,l𝑗𝑘𝑙j,k,h,litalic_j , italic_k , italic_h , italic_l are non-colinear. Hence, there must be six triangles among the nodes i,j,k,h,l𝑖𝑗𝑘𝑙i,j,k,h,litalic_i , italic_j , italic_k , italic_h , italic_l shown in Fig. 2(c)𝑐(c)( italic_c ), where the six triangles are: ijl(p)subscript𝑖𝑗𝑙𝑝\bigtriangleup_{ijl}(p)△ start_POSTSUBSCRIPT italic_i italic_j italic_l end_POSTSUBSCRIPT ( italic_p ), ikl(p)subscript𝑖𝑘𝑙𝑝\bigtriangleup_{ikl}(p)△ start_POSTSUBSCRIPT italic_i italic_k italic_l end_POSTSUBSCRIPT ( italic_p ), ihl(p)subscript𝑖𝑙𝑝\bigtriangleup_{ihl}(p)△ start_POSTSUBSCRIPT italic_i italic_h italic_l end_POSTSUBSCRIPT ( italic_p ), jkl(p)subscript𝑗𝑘𝑙𝑝\bigtriangleup_{jkl}(p)△ start_POSTSUBSCRIPT italic_j italic_k italic_l end_POSTSUBSCRIPT ( italic_p ), jhl(p)subscript𝑗𝑙𝑝\bigtriangleup_{jhl}(p)△ start_POSTSUBSCRIPT italic_j italic_h italic_l end_POSTSUBSCRIPT ( italic_p ), khl(p)subscript𝑘𝑙𝑝\bigtriangleup_{khl}(p)△ start_POSTSUBSCRIPT italic_k italic_h italic_l end_POSTSUBSCRIPT ( italic_p ). It is shown in Section IV-A that the parameters μij,μik,μih,μilsubscript𝜇𝑖𝑗subscript𝜇𝑖𝑘subscript𝜇𝑖subscript𝜇𝑖𝑙\mu_{ij},\mu_{ik},\mu_{ih},\mu_{il}italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT in the displacement constraint (31) can be obtained by the distance matrix D𝐷Ditalic_D (17) through Algorithm 3, but the distance matrix D𝐷Ditalic_D (17) is usually unavailable in a network with mixed local relative measurements. We find that the following ratio-of-distance matrix Drsubscript𝐷𝑟D_{r}italic_D start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT (34) can be obtained by using the mixed local relative measurements.

Dr=Ddij2.subscript𝐷𝑟𝐷superscriptsubscript𝑑𝑖𝑗2D_{r}=\frac{D}{d_{ij}^{2}}.italic_D start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT = divide start_ARG italic_D end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG . (34)

From Lemma 2, we can know that the scaling motions can preserve the invariance of displacement constraint (31), i.e., a network with ratio-of-distance matrix Drsubscript𝐷𝑟D_{r}italic_D start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT (34) has the same displacement constraint as the network with distance matrix D𝐷Ditalic_D (17). Hence, parameters μij,μik,μih,μilsubscript𝜇𝑖𝑗subscript𝜇𝑖𝑘subscript𝜇𝑖subscript𝜇𝑖𝑙\mu_{ij},\mu_{ik},\mu_{ih},\mu_{il}italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT in (31) can be obtained by the ratio-of-distance matrix Drsubscript𝐷𝑟D_{r}italic_D start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT (34) through Algorithm 3. Next, we will introduce how to obtain the ratio-of-distance matrix Drsubscript𝐷𝑟D_{r}italic_D start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT (34) based on the six triangles ijl(p)subscript𝑖𝑗𝑙𝑝\bigtriangleup_{ijl}(p)△ start_POSTSUBSCRIPT italic_i italic_j italic_l end_POSTSUBSCRIPT ( italic_p ), ikl(p)subscript𝑖𝑘𝑙𝑝\bigtriangleup_{ikl}(p)△ start_POSTSUBSCRIPT italic_i italic_k italic_l end_POSTSUBSCRIPT ( italic_p ), ihl(p)subscript𝑖𝑙𝑝\bigtriangleup_{ihl}(p)△ start_POSTSUBSCRIPT italic_i italic_h italic_l end_POSTSUBSCRIPT ( italic_p ), jkl(p)subscript𝑗𝑘𝑙𝑝\bigtriangleup_{jkl}(p)△ start_POSTSUBSCRIPT italic_j italic_k italic_l end_POSTSUBSCRIPT ( italic_p ), jhl(p)subscript𝑗𝑙𝑝\bigtriangleup_{jhl}(p)△ start_POSTSUBSCRIPT italic_j italic_h italic_l end_POSTSUBSCRIPT ( italic_p ), khl(p)subscript𝑘𝑙𝑝\bigtriangleup_{khl}(p)△ start_POSTSUBSCRIPT italic_k italic_h italic_l end_POSTSUBSCRIPT ( italic_p ) shown in Fig. 2(c)𝑐(c)( italic_c ).

We will use triangle ijl(p)subscript𝑖𝑗𝑙𝑝\bigtriangleup_{ijl}(p)△ start_POSTSUBSCRIPT italic_i italic_j italic_l end_POSTSUBSCRIPT ( italic_p ) as an example to show how to obtain the ratio-of-distances dildij,djldijsubscript𝑑𝑖𝑙subscript𝑑𝑖𝑗subscript𝑑𝑗𝑙subscript𝑑𝑖𝑗\frac{d_{il}}{d_{ij}},\frac{d_{jl}}{d_{ij}}divide start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG , divide start_ARG italic_d start_POSTSUBSCRIPT italic_j italic_l end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG in Drsubscript𝐷𝑟D_{r}italic_D start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT. In the case (2.2)2.2(\mathbf{2.2})( bold_2.2 ), for the triangle ijl(p)subscript𝑖𝑗𝑙𝑝\bigtriangleup_{ijl}(p)△ start_POSTSUBSCRIPT italic_i italic_j italic_l end_POSTSUBSCRIPT ( italic_p ) with nodes pi,pj,plsubscript𝑝𝑖subscript𝑝𝑗subscript𝑝𝑙p_{i},p_{j},p_{l}italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT, there are two categories: (a) the nodes pi,pj,plsubscript𝑝𝑖subscript𝑝𝑗subscript𝑝𝑙p_{i},p_{j},p_{l}italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT have different types of measurements, (b) at least two of the nodes pi,pj,plsubscript𝑝𝑖subscript𝑝𝑗subscript𝑝𝑙p_{i},p_{j},p_{l}italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT have the same type of measurement.

  1. (a)

    The nodes pi,pj,plsubscript𝑝𝑖subscript𝑝𝑗subscript𝑝𝑙p_{i},p_{j},p_{l}italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT have different types of measurements. Since i,j,l𝒜𝒟o𝒟𝑖𝑗𝑙𝒜𝒟𝑜𝒟i,j,l\in\mathcal{B}\cup\mathcal{A}\cup\mathcal{D}\cup\mathcal{R}o\mathcal{D}italic_i , italic_j , italic_l ∈ caligraphic_B ∪ caligraphic_A ∪ caligraphic_D ∪ caligraphic_R italic_o caligraphic_D, the following four cases: (a1) i,j,l𝒜𝒟𝑖𝑗𝑙𝒜𝒟i,j,l\in\mathcal{B}\cup\mathcal{A}\cup\mathcal{D}italic_i , italic_j , italic_l ∈ caligraphic_B ∪ caligraphic_A ∪ caligraphic_D, (a2) i,j,l𝒜o𝒟𝑖𝑗𝑙𝒜𝑜𝒟i,j,l\in\mathcal{B}\cup\mathcal{A}\cup\mathcal{R}o\mathcal{D}italic_i , italic_j , italic_l ∈ caligraphic_B ∪ caligraphic_A ∪ caligraphic_R italic_o caligraphic_D, (a3) i,j,l𝒟o𝒟𝑖𝑗𝑙𝒟𝑜𝒟i,j,l\in\mathcal{B}\cup\mathcal{D}\cup\mathcal{R}o\mathcal{D}italic_i , italic_j , italic_l ∈ caligraphic_B ∪ caligraphic_D ∪ caligraphic_R italic_o caligraphic_D, (a4) i,j,l𝒜𝒟o𝒟𝑖𝑗𝑙𝒜𝒟𝑜𝒟i,j,l\in\mathcal{A}\cup\mathcal{D}\cup\mathcal{R}o\mathcal{D}italic_i , italic_j , italic_l ∈ caligraphic_A ∪ caligraphic_D ∪ caligraphic_R italic_o caligraphic_D, cover all possibilities. Without loss of generality, for the cases (a1) and (a2), suppose node i𝑖iitalic_i can measure local relative bearings giji,gilisuperscriptsubscript𝑔𝑖𝑗𝑖superscriptsubscript𝑔𝑖𝑙𝑖g_{ij}^{i},g_{il}^{i}italic_g start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_g start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT and node j𝑗jitalic_j can measure angle θijlsubscript𝜃𝑖𝑗𝑙\theta_{ijl}italic_θ start_POSTSUBSCRIPT italic_i italic_j italic_l end_POSTSUBSCRIPT. Then, we have θjil=gijiTgilisubscript𝜃𝑗𝑖𝑙superscriptsuperscriptsubscript𝑔𝑖𝑗𝑖𝑇superscriptsubscript𝑔𝑖𝑙𝑖\theta_{jil}={g_{ij}^{i}}^{T}g_{il}^{i}italic_θ start_POSTSUBSCRIPT italic_j italic_i italic_l end_POSTSUBSCRIPT = italic_g start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_g start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT and θilj=πθjilθijlsubscript𝜃𝑖𝑙𝑗𝜋subscript𝜃𝑗𝑖𝑙subscript𝜃𝑖𝑗𝑙\theta_{ilj}=\pi-\theta_{jil}-\theta_{ijl}italic_θ start_POSTSUBSCRIPT italic_i italic_l italic_j end_POSTSUBSCRIPT = italic_π - italic_θ start_POSTSUBSCRIPT italic_j italic_i italic_l end_POSTSUBSCRIPT - italic_θ start_POSTSUBSCRIPT italic_i italic_j italic_l end_POSTSUBSCRIPT. The ratio-of-distances can be obtained by dildij=sinθijlsinθiljsubscript𝑑𝑖𝑙subscript𝑑𝑖𝑗subscript𝜃𝑖𝑗𝑙subscript𝜃𝑖𝑙𝑗\frac{d_{il}}{d_{ij}}=\frac{\sin\theta_{ijl}}{\sin\theta_{ilj}}divide start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG = divide start_ARG roman_sin italic_θ start_POSTSUBSCRIPT italic_i italic_j italic_l end_POSTSUBSCRIPT end_ARG start_ARG roman_sin italic_θ start_POSTSUBSCRIPT italic_i italic_l italic_j end_POSTSUBSCRIPT end_ARG and djldij=sinθjilsinθiljsubscript𝑑𝑗𝑙subscript𝑑𝑖𝑗subscript𝜃𝑗𝑖𝑙subscript𝜃𝑖𝑙𝑗\frac{d_{jl}}{d_{ij}}=\frac{\sin\theta_{jil}}{\sin\theta_{ilj}}divide start_ARG italic_d start_POSTSUBSCRIPT italic_j italic_l end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG = divide start_ARG roman_sin italic_θ start_POSTSUBSCRIPT italic_j italic_i italic_l end_POSTSUBSCRIPT end_ARG start_ARG roman_sin italic_θ start_POSTSUBSCRIPT italic_i italic_l italic_j end_POSTSUBSCRIPT end_ARG. For the cases (a3) and (a4), suppose node i𝑖iitalic_i can measure distances dij,dilsubscript𝑑𝑖𝑗subscript𝑑𝑖𝑙d_{ij},d_{il}italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT , italic_d start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT, and node j𝑗jitalic_j can measure the ratio of distance djldijsubscript𝑑𝑗𝑙subscript𝑑𝑖𝑗\frac{d_{jl}}{d_{ij}}divide start_ARG italic_d start_POSTSUBSCRIPT italic_j italic_l end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG. The ratio-of-distances dildij,djldijsubscript𝑑𝑖𝑙subscript𝑑𝑖𝑗subscript𝑑𝑗𝑙subscript𝑑𝑖𝑗\frac{d_{il}}{d_{ij}},\frac{d_{jl}}{d_{ij}}divide start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG , divide start_ARG italic_d start_POSTSUBSCRIPT italic_j italic_l end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG can also be obtained.

  2. (b)

    At least two of the nodes pi,pj,plsubscript𝑝𝑖subscript𝑝𝑗subscript𝑝𝑙p_{i},p_{j},p_{l}italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT have the same type of measurement. Since i,j,l𝒜𝒟o𝒟𝑖𝑗𝑙𝒜𝒟𝑜𝒟i,j,l\in\mathcal{B}\cup\mathcal{A}\cup\mathcal{D}\cup\mathcal{R}o\mathcal{D}italic_i , italic_j , italic_l ∈ caligraphic_B ∪ caligraphic_A ∪ caligraphic_D ∪ caligraphic_R italic_o caligraphic_D, the following four cases: (b1) at least two nodes can measure local relative bearing, (b2) at least two nodes can measure angle, (b3) at least two nodes can measure distance, (b4) at least two nodes can measure ratio-of-distance, cover all possibilities. Without loss of generality, for the case (b1), suppose the nodes i,j𝑖𝑗i,jitalic_i , italic_j can measure local relative bearings giji,gilisuperscriptsubscript𝑔𝑖𝑗𝑖superscriptsubscript𝑔𝑖𝑙𝑖g_{ij}^{i},g_{il}^{i}italic_g start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_g start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT and gjij,gjljsuperscriptsubscript𝑔𝑗𝑖𝑗superscriptsubscript𝑔𝑗𝑙𝑗g_{ji}^{j},g_{jl}^{j}italic_g start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_j end_POSTSUPERSCRIPT , italic_g start_POSTSUBSCRIPT italic_j italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_j end_POSTSUPERSCRIPT. Then, we have θjil=gijiTgilisubscript𝜃𝑗𝑖𝑙superscriptsuperscriptsubscript𝑔𝑖𝑗𝑖𝑇superscriptsubscript𝑔𝑖𝑙𝑖\theta_{jil}={g_{ij}^{i}}^{T}g_{il}^{i}italic_θ start_POSTSUBSCRIPT italic_j italic_i italic_l end_POSTSUBSCRIPT = italic_g start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_g start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT, θijl=gjijTgjljsubscript𝜃𝑖𝑗𝑙superscriptsuperscriptsubscript𝑔𝑗𝑖𝑗𝑇superscriptsubscript𝑔𝑗𝑙𝑗\theta_{ijl}={g_{ji}^{j}}^{T}g_{jl}^{j}italic_θ start_POSTSUBSCRIPT italic_i italic_j italic_l end_POSTSUBSCRIPT = italic_g start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_j end_POSTSUPERSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_g start_POSTSUBSCRIPT italic_j italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_j end_POSTSUPERSCRIPT and θilj=πθjilθijlsubscript𝜃𝑖𝑙𝑗𝜋subscript𝜃𝑗𝑖𝑙subscript𝜃𝑖𝑗𝑙\theta_{ilj}=\pi-\theta_{jil}-\theta_{ijl}italic_θ start_POSTSUBSCRIPT italic_i italic_l italic_j end_POSTSUBSCRIPT = italic_π - italic_θ start_POSTSUBSCRIPT italic_j italic_i italic_l end_POSTSUBSCRIPT - italic_θ start_POSTSUBSCRIPT italic_i italic_j italic_l end_POSTSUBSCRIPT. The ratio-of-distances can be obtained by dildij=sinθijlsinθiljsubscript𝑑𝑖𝑙subscript𝑑𝑖𝑗subscript𝜃𝑖𝑗𝑙subscript𝜃𝑖𝑙𝑗\frac{d_{il}}{d_{ij}}=\frac{\sin\theta_{ijl}}{\sin\theta_{ilj}}divide start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG = divide start_ARG roman_sin italic_θ start_POSTSUBSCRIPT italic_i italic_j italic_l end_POSTSUBSCRIPT end_ARG start_ARG roman_sin italic_θ start_POSTSUBSCRIPT italic_i italic_l italic_j end_POSTSUBSCRIPT end_ARG and djldij=sinθjilsinθiljsubscript𝑑𝑗𝑙subscript𝑑𝑖𝑗subscript𝜃𝑗𝑖𝑙subscript𝜃𝑖𝑙𝑗\frac{d_{jl}}{d_{ij}}=\frac{\sin\theta_{jil}}{\sin\theta_{ilj}}divide start_ARG italic_d start_POSTSUBSCRIPT italic_j italic_l end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG = divide start_ARG roman_sin italic_θ start_POSTSUBSCRIPT italic_j italic_i italic_l end_POSTSUBSCRIPT end_ARG start_ARG roman_sin italic_θ start_POSTSUBSCRIPT italic_i italic_l italic_j end_POSTSUBSCRIPT end_ARG. For the case (b2), suppose the nodes i,j𝑖𝑗i,jitalic_i , italic_j can measure angles θjilsubscript𝜃𝑗𝑖𝑙\theta_{jil}italic_θ start_POSTSUBSCRIPT italic_j italic_i italic_l end_POSTSUBSCRIPT and θijlsubscript𝜃𝑖𝑗𝑙\theta_{ijl}italic_θ start_POSTSUBSCRIPT italic_i italic_j italic_l end_POSTSUBSCRIPT. Then, we have θilj=πθjilθijlsubscript𝜃𝑖𝑙𝑗𝜋subscript𝜃𝑗𝑖𝑙subscript𝜃𝑖𝑗𝑙\theta_{ilj}=\pi-\theta_{jil}-\theta_{ijl}italic_θ start_POSTSUBSCRIPT italic_i italic_l italic_j end_POSTSUBSCRIPT = italic_π - italic_θ start_POSTSUBSCRIPT italic_j italic_i italic_l end_POSTSUBSCRIPT - italic_θ start_POSTSUBSCRIPT italic_i italic_j italic_l end_POSTSUBSCRIPT. The ratio-of-distances can also be obtained by dildij=sinθijlsinθiljsubscript𝑑𝑖𝑙subscript𝑑𝑖𝑗subscript𝜃𝑖𝑗𝑙subscript𝜃𝑖𝑙𝑗\frac{d_{il}}{d_{ij}}=\frac{\sin\theta_{ijl}}{\sin\theta_{ilj}}divide start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG = divide start_ARG roman_sin italic_θ start_POSTSUBSCRIPT italic_i italic_j italic_l end_POSTSUBSCRIPT end_ARG start_ARG roman_sin italic_θ start_POSTSUBSCRIPT italic_i italic_l italic_j end_POSTSUBSCRIPT end_ARG and djldij=sinθjilsinθiljsubscript𝑑𝑗𝑙subscript𝑑𝑖𝑗subscript𝜃𝑗𝑖𝑙subscript𝜃𝑖𝑙𝑗\frac{d_{jl}}{d_{ij}}=\frac{\sin\theta_{jil}}{\sin\theta_{ilj}}divide start_ARG italic_d start_POSTSUBSCRIPT italic_j italic_l end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG = divide start_ARG roman_sin italic_θ start_POSTSUBSCRIPT italic_j italic_i italic_l end_POSTSUBSCRIPT end_ARG start_ARG roman_sin italic_θ start_POSTSUBSCRIPT italic_i italic_l italic_j end_POSTSUBSCRIPT end_ARG. For the cases (b3) and (b4) where at least two nodes can measure distance or ratio-of-distance, it is clear that the ratio-of-distances dildij,djldijsubscript𝑑𝑖𝑙subscript𝑑𝑖𝑗subscript𝑑𝑗𝑙subscript𝑑𝑖𝑗\frac{d_{il}}{d_{ij}},\frac{d_{jl}}{d_{ij}}divide start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG , divide start_ARG italic_d start_POSTSUBSCRIPT italic_j italic_l end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG can be obtained.

Hence, the ratio-of-distances dildij,djldijsubscript𝑑𝑖𝑙subscript𝑑𝑖𝑗subscript𝑑𝑗𝑙subscript𝑑𝑖𝑗\frac{d_{il}}{d_{ij}},\frac{d_{jl}}{d_{ij}}divide start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG , divide start_ARG italic_d start_POSTSUBSCRIPT italic_j italic_l end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG in Drsubscript𝐷𝑟D_{r}italic_D start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT can be obtained by the triangle ijl(p)subscript𝑖𝑗𝑙𝑝\bigtriangleup_{ijl}(p)△ start_POSTSUBSCRIPT italic_i italic_j italic_l end_POSTSUBSCRIPT ( italic_p ). The rest ratio-of-distances in Drsubscript𝐷𝑟D_{r}italic_D start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT can also be obtained by the triangles ikl(p)subscript𝑖𝑘𝑙𝑝\bigtriangleup_{ikl}(p)△ start_POSTSUBSCRIPT italic_i italic_k italic_l end_POSTSUBSCRIPT ( italic_p ), ihl(p)subscript𝑖𝑙𝑝\bigtriangleup_{ihl}(p)△ start_POSTSUBSCRIPT italic_i italic_h italic_l end_POSTSUBSCRIPT ( italic_p ), jkl(p)subscript𝑗𝑘𝑙𝑝\bigtriangleup_{jkl}(p)△ start_POSTSUBSCRIPT italic_j italic_k italic_l end_POSTSUBSCRIPT ( italic_p ), jhl(p)subscript𝑗𝑙𝑝\bigtriangleup_{jhl}(p)△ start_POSTSUBSCRIPT italic_j italic_h italic_l end_POSTSUBSCRIPT ( italic_p ), khl(p)subscript𝑘𝑙𝑝\bigtriangleup_{khl}(p)△ start_POSTSUBSCRIPT italic_k italic_h italic_l end_POSTSUBSCRIPT ( italic_p ), i.e., the ratio-of-distance matrix Drsubscript𝐷𝑟D_{r}italic_D start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT is available. Then, the displacement constraint (31) can be obtained by the ratio-of-distance matrix Drsubscript𝐷𝑟D_{r}italic_D start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT (34) through Algorithm 3. The implementation of constructing the displacement constraint is given in Fig. 3.

Refer to caption
Figure 3: Construction of the displacement constraint.

After obtaining the angle constraints and displacement constraints, we are now ready to formulate the network localization problem and explore the network localizability.

IV-C Network Localizability

The angle constraints are used for describing the distribution of the anchors, and the displacement constraints are used to estimate the free nodes by the known anchor nodes. The network localization problem is formulated as

minp^3nJ(p^)=L𝒳𝒢(p^)2,subjecttop^i=pi,i𝒱a,missing-subexpressionsubscript^𝑝superscript3𝑛𝐽^𝑝superscriptnormsubscript𝐿subscript𝒳𝒢^𝑝2missing-subexpressionformulae-sequencesubjecttosubscript^𝑝𝑖subscript𝑝𝑖𝑖subscript𝒱𝑎\begin{array}[]{ll}&\min\limits_{\hat{p}\in\mathbb{R}^{3n}}J(\hat{p})\!=\!\|L_% {\mathcal{X}_{\mathcal{G}}}(\hat{p})\|^{2},\\ &\text{subject}\ \text{to}\ \ \hat{p}_{i}=p_{i},\ \ i\in\mathcal{V}_{a},\end{array}start_ARRAY start_ROW start_CELL end_CELL start_CELL roman_min start_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG ∈ blackboard_R start_POSTSUPERSCRIPT 3 italic_n end_POSTSUPERSCRIPT end_POSTSUBSCRIPT italic_J ( over^ start_ARG italic_p end_ARG ) = ∥ italic_L start_POSTSUBSCRIPT caligraphic_X start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( over^ start_ARG italic_p end_ARG ) ∥ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL subject to over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_i ∈ caligraphic_V start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT , end_CELL end_ROW end_ARRAY (35)

where p^=(p^1T,,p^nT)T^𝑝superscriptsuperscriptsubscript^𝑝1𝑇superscriptsubscript^𝑝𝑛𝑇𝑇\hat{p}=(\hat{p}_{1}^{T},\cdots,\hat{p}_{n}^{T})^{T}over^ start_ARG italic_p end_ARG = ( over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , ⋯ , over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT are the estimates of p=(p1T,,pnT)T𝑝superscriptsuperscriptsubscript𝑝1𝑇superscriptsubscript𝑝𝑛𝑇𝑇p=(p_{1}^{T},\cdots,p_{n}^{T})^{T}italic_p = ( italic_p start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , ⋯ , italic_p start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT, and L𝒳𝒢()subscript𝐿subscript𝒳𝒢L_{\mathcal{X}_{\mathcal{G}}}(\cdot)italic_L start_POSTSUBSCRIPT caligraphic_X start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( ⋅ ) is displacement function (7). If there is a unique solution to (35), the network (𝒢,p𝒢𝑝\mathcal{G},pcaligraphic_G , italic_p) is called localizable.

Remark 5.

L𝒳𝒢()subscript𝐿subscript𝒳𝒢L_{\mathcal{X}_{\mathcal{G}}}(\cdot)italic_L start_POSTSUBSCRIPT caligraphic_X start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( ⋅ ) is the displacement function consisting of available displacement constraints. Since the true positions p𝑝pitalic_p of all the nodes satisfy L𝒳𝒢(p)=0subscript𝐿subscript𝒳𝒢𝑝0L_{\mathcal{X}_{\mathcal{G}}}(p)=0italic_L start_POSTSUBSCRIPT caligraphic_X start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( italic_p ) = 0, we have L𝒳𝒢(p^)2=0subscriptnormsubscript𝐿subscript𝒳𝒢^𝑝20\|L_{\mathcal{X}_{\mathcal{G}}}(\hat{p})\|_{2}=0∥ italic_L start_POSTSUBSCRIPT caligraphic_X start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( over^ start_ARG italic_p end_ARG ) ∥ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT = 0 if p^=p^𝑝𝑝\hat{p}=pover^ start_ARG italic_p end_ARG = italic_p. Hence, the network localization problem is equivalent to minimizing the cost function minp^3nJ(p^)=L𝒳𝒢(p^)2subscript^𝑝superscript3𝑛𝐽^𝑝superscriptnormsubscript𝐿subscript𝒳𝒢^𝑝2\min\limits_{\hat{p}\in\mathbb{R}^{3n}}J(\hat{p})\!=\!\|L_{\mathcal{X}_{% \mathcal{G}}}(\hat{p})\|^{2}roman_min start_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG ∈ blackboard_R start_POSTSUPERSCRIPT 3 italic_n end_POSTSUPERSCRIPT end_POSTSUBSCRIPT italic_J ( over^ start_ARG italic_p end_ARG ) = ∥ italic_L start_POSTSUBSCRIPT caligraphic_X start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( over^ start_ARG italic_p end_ARG ) ∥ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT given the known anchor positions.

From (14), we obtain

4BΥ𝒢(p^)2+J(p^)=p^TR(p^)TR(p^)p^.4superscriptnormsubscript𝐵subscriptΥ𝒢^𝑝2𝐽^𝑝superscript^𝑝𝑇𝑅superscript^𝑝𝑇𝑅^𝑝^𝑝4\|B_{\Upsilon_{\mathcal{G}}}(\hat{p})\|^{2}\!+\!J(\hat{p})=\hat{p}^{T}R(\hat{% p})^{T}R(\hat{p})\hat{p}.4 ∥ italic_B start_POSTSUBSCRIPT roman_Υ start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( over^ start_ARG italic_p end_ARG ) ∥ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT + italic_J ( over^ start_ARG italic_p end_ARG ) = over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_R ( over^ start_ARG italic_p end_ARG ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_R ( over^ start_ARG italic_p end_ARG ) over^ start_ARG italic_p end_ARG . (36)

For the angle function BΥ𝒢()subscript𝐵subscriptΥ𝒢B_{\Upsilon_{\mathcal{G}}}(\cdot)italic_B start_POSTSUBSCRIPT roman_Υ start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( ⋅ ) (6) constructed among the known anchors, it yields BΥ𝒢(p)=BΥ𝒢([pa𝟎])=BΥ𝒢(p^)=0subscript𝐵subscriptΥ𝒢𝑝subscript𝐵subscriptΥ𝒢delimited-[]subscript𝑝𝑎0subscript𝐵subscriptΥ𝒢^𝑝0B_{\Upsilon_{\mathcal{G}}}(p)=B_{\Upsilon_{\mathcal{G}}}([\begin{array}[]{c}p_% {a}\\ \mathbf{0}\end{array}])=B_{\Upsilon_{\mathcal{G}}}(\hat{p})=0italic_B start_POSTSUBSCRIPT roman_Υ start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( italic_p ) = italic_B start_POSTSUBSCRIPT roman_Υ start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( [ start_ARRAY start_ROW start_CELL italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL bold_0 end_CELL end_ROW end_ARRAY ] ) = italic_B start_POSTSUBSCRIPT roman_Υ start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( over^ start_ARG italic_p end_ARG ) = 0, i.e., BΥ𝒢(p^)2=0superscriptnormsubscript𝐵subscriptΥ𝒢^𝑝20\|B_{\Upsilon_{\mathcal{G}}}(\hat{p})\|^{2}=0∥ italic_B start_POSTSUBSCRIPT roman_Υ start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( over^ start_ARG italic_p end_ARG ) ∥ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT = 0. Then, (36) becomes

J(p^)=p^TR(p^)TR(p^)p^.𝐽^𝑝superscript^𝑝𝑇𝑅superscript^𝑝𝑇𝑅^𝑝^𝑝J(\hat{p})=\hat{p}^{T}R(\hat{p})^{T}R(\hat{p})\hat{p}.italic_J ( over^ start_ARG italic_p end_ARG ) = over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_R ( over^ start_ARG italic_p end_ARG ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_R ( over^ start_ARG italic_p end_ARG ) over^ start_ARG italic_p end_ARG . (37)

From (11) and (12), we can know that the matrix R(p)𝑅𝑝R(p)italic_R ( italic_p ) are determined by the anchor positions pasubscript𝑝𝑎p_{a}italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT and parameters (such as wik,wkisubscript𝑤𝑖𝑘subscript𝑤𝑘𝑖w_{ik},w_{ki}italic_w start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT , italic_w start_POSTSUBSCRIPT italic_k italic_i end_POSTSUBSCRIPT in (6) and μij,μuk,μih,μilsubscript𝜇𝑖𝑗subscript𝜇𝑢𝑘subscript𝜇𝑖subscript𝜇𝑖𝑙\mu_{ij},\mu_{uk},\mu_{ih},\mu_{il}italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_u italic_k end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT in (7)) in the angle constraints and displacement constraints. Hence, we have R(p)=R([pa𝟎])=R(p^)𝑅𝑝𝑅delimited-[]subscript𝑝𝑎0𝑅^𝑝R(p)=R([\begin{array}[]{c}p_{a}\\ \mathbf{0}\end{array}])=R(\hat{p})italic_R ( italic_p ) = italic_R ( [ start_ARRAY start_ROW start_CELL italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL bold_0 end_CELL end_ROW end_ARRAY ] ) = italic_R ( over^ start_ARG italic_p end_ARG ). Then, (37) becomes

J(p^)=p^TR(p)TR(p)p^.𝐽^𝑝superscript^𝑝𝑇𝑅superscript𝑝𝑇𝑅𝑝^𝑝J(\hat{p})=\hat{p}^{T}R(p)^{T}R(p)\hat{p}.italic_J ( over^ start_ARG italic_p end_ARG ) = over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_R ( italic_p ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_R ( italic_p ) over^ start_ARG italic_p end_ARG . (38)

Define information matrix M3n×3n𝑀superscript3𝑛3𝑛M\in\mathbb{R}^{3{n}\times 3{n}}italic_M ∈ blackboard_R start_POSTSUPERSCRIPT 3 italic_n × 3 italic_n end_POSTSUPERSCRIPT of a network with mixed local relative measurements as

M=R(p)TR(p),𝑀𝑅superscript𝑝𝑇𝑅𝑝M=R(p)^{T}R(p),italic_M = italic_R ( italic_p ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_R ( italic_p ) , (39)

which can be partitioned as

M=[MaaMafMfaMff],𝑀delimited-[]subscript𝑀𝑎𝑎subscript𝑀𝑎𝑓subscript𝑀𝑓𝑎subscript𝑀𝑓𝑓M=\left[\begin{array}[]{cc}M_{aa}&M_{af}\\ M_{fa}&M_{ff}\end{array}\right],italic_M = [ start_ARRAY start_ROW start_CELL italic_M start_POSTSUBSCRIPT italic_a italic_a end_POSTSUBSCRIPT end_CELL start_CELL italic_M start_POSTSUBSCRIPT italic_a italic_f end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT end_CELL start_CELL italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT end_CELL end_ROW end_ARRAY ] , (40)

where Maa3na×3nasubscript𝑀𝑎𝑎superscript3subscript𝑛𝑎3subscript𝑛𝑎M_{aa}\in\mathbb{R}^{3{n_{a}}\times 3{n_{a}}}italic_M start_POSTSUBSCRIPT italic_a italic_a end_POSTSUBSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT 3 italic_n start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT × 3 italic_n start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT end_POSTSUPERSCRIPT, MfaT=Maf3na×3nfsuperscriptsubscript𝑀𝑓𝑎𝑇subscript𝑀𝑎𝑓superscript3subscript𝑛𝑎3subscript𝑛𝑓M_{fa}^{T}=M_{af}\in\mathbb{R}^{3{n_{a}}\times 3{n_{f}}}italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT = italic_M start_POSTSUBSCRIPT italic_a italic_f end_POSTSUBSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT 3 italic_n start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT × 3 italic_n start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT end_POSTSUPERSCRIPT, and Mff3nf×3nfsubscript𝑀𝑓𝑓superscript3subscript𝑛𝑓3subscript𝑛𝑓M_{ff}\in\mathbb{R}^{3{n_{f}}\times 3{n_{f}}}italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT 3 italic_n start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT × 3 italic_n start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT end_POSTSUPERSCRIPT. Note that p^=(paT,p^fT)T^𝑝superscriptsuperscriptsubscript𝑝𝑎𝑇superscriptsubscript^𝑝𝑓𝑇𝑇\hat{p}=(p_{a}^{T},\hat{p}_{f}^{T})^{T}over^ start_ARG italic_p end_ARG = ( italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT. Based on (38) and (40), (35) can be rewritten as

minp^f3nfJ~(p^f)=p^fTMffp^f+2paTMafp^f+paTMaapa.subscriptsubscript^𝑝𝑓superscript3subscript𝑛𝑓~𝐽subscript^𝑝𝑓superscriptsubscript^𝑝𝑓𝑇subscript𝑀𝑓𝑓subscript^𝑝𝑓2superscriptsubscript𝑝𝑎𝑇subscript𝑀𝑎𝑓subscript^𝑝𝑓superscriptsubscript𝑝𝑎𝑇subscript𝑀𝑎𝑎subscript𝑝𝑎\min\limits_{\hat{p}_{f}\in\mathbb{R}^{3n_{f}}}\tilde{J}(\hat{p}_{f})=\hat{p}_% {f}^{T}M_{ff}\hat{p}_{f}+2{p}_{a}^{T}M_{af}\hat{p}_{f}+{p}_{a}^{T}M_{aa}{p}_{a}.roman_min start_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT 3 italic_n start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT end_POSTSUPERSCRIPT end_POSTSUBSCRIPT over~ start_ARG italic_J end_ARG ( over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT ) = over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT + 2 italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_M start_POSTSUBSCRIPT italic_a italic_f end_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT + italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_M start_POSTSUBSCRIPT italic_a italic_a end_POSTSUBSCRIPT italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT . (41)

Note that any minimizer p^f*superscriptsubscript^𝑝𝑓\hat{p}_{f}^{*}over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT in (41) satisfies

p^f*J~(p^f*)=Mffp^f*+Mfapa=𝟎.subscriptsuperscriptsubscript^𝑝𝑓~𝐽superscriptsubscript^𝑝𝑓subscript𝑀𝑓𝑓superscriptsubscript^𝑝𝑓subscript𝑀𝑓𝑎subscript𝑝𝑎0\bigtriangledown_{{\hat{p}_{f}}^{*}}\tilde{J}({\hat{p}_{f}}^{*})=M_{ff}{{\hat{% p}_{f}}^{*}}+M_{fa}p_{a}=\mathbf{0}.▽ start_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT end_POSTSUBSCRIPT over~ start_ARG italic_J end_ARG ( over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT ) = italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT + italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT = bold_0 . (42)

From (42), we can obtain the algebraic and graph conditions for network localizability shown in the following Theorem 1 and Theorem 2, respectively.

Theorem 1.

Suppose Assumption 1 holds. A network (𝒢,p𝒢𝑝\mathcal{G},pcaligraphic_G , italic_p) with mixed types of measurements in 3superscript3\mathbb{R}^{3}blackboard_R start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT is localizable if and only if the matrix Mffsubscript𝑀𝑓𝑓M_{ff}italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT is nonsingular.

Proof.

(Sufficiency) From (42), we can know that the matrix Mffsubscript𝑀𝑓𝑓M_{ff}italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT must be nonsingular. (Necessity) If the matrix Mffsubscript𝑀𝑓𝑓M_{ff}italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT is nonsingular, we have p^f*=Mff1Mfapasuperscriptsubscript^𝑝𝑓superscriptsubscript𝑀𝑓𝑓1subscript𝑀𝑓𝑎subscript𝑝𝑎\hat{p}_{f}^{*}=-M_{ff}^{-1}M_{fa}{p}_{a}over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT = - italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT. Since pNull(R(p))𝑝Null𝑅𝑝p\in\text{Null}(R(p))italic_p ∈ Null ( italic_R ( italic_p ) ) and M=R(p)TR(p)𝑀𝑅superscript𝑝𝑇𝑅𝑝M=R(p)^{T}R(p)italic_M = italic_R ( italic_p ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_R ( italic_p ), we have pNull(M)𝑝Null𝑀p\in\text{Null}(M)italic_p ∈ Null ( italic_M ), that is, Mffpf+Mfapa=𝟎subscript𝑀𝑓𝑓subscript𝑝𝑓subscript𝑀𝑓𝑎subscript𝑝𝑎0M_{ff}p_{f}+M_{fa}p_{a}=\mathbf{0}italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT + italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT = bold_0. Since Mffsubscript𝑀𝑓𝑓M_{ff}italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT is nonsingular, we have pf=Mff1Mfapasubscript𝑝𝑓superscriptsubscript𝑀𝑓𝑓1subscript𝑀𝑓𝑎subscript𝑝𝑎p_{f}=-M_{ff}^{-1}M_{fa}{p}_{a}italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT = - italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT. Hence, p^f*superscriptsubscript^𝑝𝑓\hat{p}_{f}^{*}over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT equals the true positions pfsubscript𝑝𝑓p_{f}italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT. ∎

Refer to caption
Figure 4: 3-D localizable network. The anchor nodes are pa1,pa2,pa3,pa4subscript𝑝subscript𝑎1subscript𝑝subscript𝑎2subscript𝑝subscript𝑎3subscript𝑝subscript𝑎4p_{a_{1}},p_{a_{2}},p_{a_{3}},p_{a_{4}}italic_p start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT end_POSTSUBSCRIPT and the free nodes are pf1,pf2,pf3subscript𝑝subscript𝑓1subscript𝑝subscript𝑓2subscript𝑝subscript𝑓3p_{f_{1}},p_{f_{2}},p_{f_{3}}italic_p start_POSTSUBSCRIPT italic_f start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_f start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_f start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT end_POSTSUBSCRIPT. The black nodes mean that they can measure only one of the five types of local relative measurements.

From Theorem 1, we have pf=Mff1Mfapasubscript𝑝𝑓superscriptsubscript𝑀𝑓𝑓1subscript𝑀𝑓𝑎subscript𝑝𝑎p_{f}=-M_{ff}^{-1}M_{fa}{p}_{a}italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT = - italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT if a network (𝒢,p𝒢𝑝\mathcal{G},pcaligraphic_G , italic_p) with mixed types of measurements is localizable. A simple 3-D localizable network consisting of four anchor nodes pa1=(0,0,20)Tsubscript𝑝subscript𝑎1superscript0020𝑇p_{a_{1}}=(0,0,20)^{T}italic_p start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT = ( 0 , 0 , 20 ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT, pa2=(0,0,0)Tsubscript𝑝subscript𝑎2superscript000𝑇p_{a_{2}}=(0,0,0)^{T}italic_p start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT end_POSTSUBSCRIPT = ( 0 , 0 , 0 ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT, pa3=(10,10,0)Tsubscript𝑝subscript𝑎3superscript10100𝑇p_{a_{3}}=(10,-10,0)^{T}italic_p start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT end_POSTSUBSCRIPT = ( 10 , - 10 , 0 ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT, pa4=(0,20,0)Tsubscript𝑝subscript𝑎4superscript0200𝑇p_{a_{4}}=(0,20,0)^{T}italic_p start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT end_POSTSUBSCRIPT = ( 0 , 20 , 0 ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT and three free nodes pf1=(10,20,0)Tsubscript𝑝subscript𝑓1superscript10200𝑇p_{f_{1}}=(10,20,0)^{T}italic_p start_POSTSUBSCRIPT italic_f start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT = ( 10 , 20 , 0 ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT, pf2=(10,40,0)Tsubscript𝑝subscript𝑓2superscript10400𝑇p_{f_{2}}=(10,40,0)^{T}italic_p start_POSTSUBSCRIPT italic_f start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT end_POSTSUBSCRIPT = ( 10 , 40 , 0 ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT, pf3=(52,30,30)Tsubscript𝑝subscript𝑓3superscript523030𝑇p_{f_{3}}=(\frac{5}{2},30,30)^{T}italic_p start_POSTSUBSCRIPT italic_f start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT end_POSTSUBSCRIPT = ( divide start_ARG 5 end_ARG start_ARG 2 end_ARG , 30 , 30 ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT is given in Fig. 4. Based on the displacement constraints ea2f123ea3f1ea4f1=𝟎subscript𝑒subscript𝑎2subscript𝑓123subscript𝑒subscript𝑎3subscript𝑓1subscript𝑒subscript𝑎4subscript𝑓10e_{{a_{2}}{f_{1}}}-\frac{2}{3}e_{{a_{3}}{f_{1}}}-e_{{a_{4}}{f_{1}}}=\mathbf{0}italic_e start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT italic_f start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT - divide start_ARG 2 end_ARG start_ARG 3 end_ARG italic_e start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT italic_f start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT - italic_e start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT italic_f start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT = bold_0, ea3f252ef1f2=𝟎subscript𝑒subscript𝑎3subscript𝑓252subscript𝑒subscript𝑓1subscript𝑓20e_{{a_{3}}{f_{2}}}-\frac{5}{2}e_{{f_{1}}{f_{2}}}=\mathbf{0}italic_e start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT italic_f start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT end_POSTSUBSCRIPT - divide start_ARG 5 end_ARG start_ARG 2 end_ARG italic_e start_POSTSUBSCRIPT italic_f start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT italic_f start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT end_POSTSUBSCRIPT = bold_0, and 34ea1f3+38ea4f3+78ef1f3ef2f3=𝟎34subscript𝑒subscript𝑎1subscript𝑓338subscript𝑒subscript𝑎4subscript𝑓378subscript𝑒subscript𝑓1subscript𝑓3subscript𝑒subscript𝑓2subscript𝑓30-\frac{3}{4}e_{{a_{1}}{f_{3}}}+\frac{3}{8}e_{{a_{4}}{f_{3}}}+\frac{7}{8}e_{{f_% {1}}{f_{3}}}-e_{{f_{2}}{f_{3}}}=\mathbf{0}- divide start_ARG 3 end_ARG start_ARG 4 end_ARG italic_e start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT italic_f start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT end_POSTSUBSCRIPT + divide start_ARG 3 end_ARG start_ARG 8 end_ARG italic_e start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT italic_f start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT end_POSTSUBSCRIPT + divide start_ARG 7 end_ARG start_ARG 8 end_ARG italic_e start_POSTSUBSCRIPT italic_f start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT italic_f start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT end_POSTSUBSCRIPT - italic_e start_POSTSUBSCRIPT italic_f start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT italic_f start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT end_POSTSUBSCRIPT = bold_0, we can obtain the corresponding matrices Mffsubscript𝑀𝑓𝑓M_{ff}italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT and Mfasubscript𝑀𝑓𝑎M_{fa}italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT shown as

Mff=[1413311612471661242127161214]I3,Mfa=[213232199756434023383800316]I4.missing-subexpressionsubscript𝑀𝑓𝑓tensor-productdelimited-[]1413311612471661242127161214subscript𝐼3missing-subexpressionmissing-subexpressionmissing-subexpressionsubscript𝑀𝑓𝑎tensor-productdelimited-[]213232199756434023383800316subscript𝐼4\begin{array}[]{ll}&M_{ff}\!=\!\left[\!\begin{array}[]{lll}\frac{1413}{311}&-% \frac{61}{24}&\frac{7}{16}\\ -\frac{61}{24}&2&-\frac{1}{2}\\ \frac{7}{16}&-\frac{1}{2}&\frac{1}{4}\end{array}\right]\otimes I_{3},\\ \\ &M_{fa}\!=\!\left[\!\begin{array}[]{llll}-\frac{21}{32}&\frac{3}{2}&-\frac{19}% {9}&-\frac{75}{64}\\ \frac{3}{4}&0&\frac{2}{3}&-\frac{3}{8}\\ -\frac{3}{8}&0&0&\frac{3}{16}\end{array}\right]\otimes I_{4}.\end{array}start_ARRAY start_ROW start_CELL end_CELL start_CELL italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT = [ start_ARRAY start_ROW start_CELL divide start_ARG 1413 end_ARG start_ARG 311 end_ARG end_CELL start_CELL - divide start_ARG 61 end_ARG start_ARG 24 end_ARG end_CELL start_CELL divide start_ARG 7 end_ARG start_ARG 16 end_ARG end_CELL end_ROW start_ROW start_CELL - divide start_ARG 61 end_ARG start_ARG 24 end_ARG end_CELL start_CELL 2 end_CELL start_CELL - divide start_ARG 1 end_ARG start_ARG 2 end_ARG end_CELL end_ROW start_ROW start_CELL divide start_ARG 7 end_ARG start_ARG 16 end_ARG end_CELL start_CELL - divide start_ARG 1 end_ARG start_ARG 2 end_ARG end_CELL start_CELL divide start_ARG 1 end_ARG start_ARG 4 end_ARG end_CELL end_ROW end_ARRAY ] ⊗ italic_I start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT = [ start_ARRAY start_ROW start_CELL - divide start_ARG 21 end_ARG start_ARG 32 end_ARG end_CELL start_CELL divide start_ARG 3 end_ARG start_ARG 2 end_ARG end_CELL start_CELL - divide start_ARG 19 end_ARG start_ARG 9 end_ARG end_CELL start_CELL - divide start_ARG 75 end_ARG start_ARG 64 end_ARG end_CELL end_ROW start_ROW start_CELL divide start_ARG 3 end_ARG start_ARG 4 end_ARG end_CELL start_CELL 0 end_CELL start_CELL divide start_ARG 2 end_ARG start_ARG 3 end_ARG end_CELL start_CELL - divide start_ARG 3 end_ARG start_ARG 8 end_ARG end_CELL end_ROW start_ROW start_CELL - divide start_ARG 3 end_ARG start_ARG 8 end_ARG end_CELL start_CELL 0 end_CELL start_CELL 0 end_CELL start_CELL divide start_ARG 3 end_ARG start_ARG 16 end_ARG end_CELL end_ROW end_ARRAY ] ⊗ italic_I start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT . end_CELL end_ROW end_ARRAY (43)

It can be verified that pf=Mff1Mfapasubscript𝑝𝑓superscriptsubscript𝑀𝑓𝑓1subscript𝑀𝑓𝑎subscript𝑝𝑎p_{f}=-M_{ff}^{-1}M_{fa}{p}_{a}italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT = - italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT, where pa=(pa1T,pa2T,pa3T,pa4T)Tsubscript𝑝𝑎superscriptsuperscriptsubscript𝑝subscript𝑎1𝑇superscriptsubscript𝑝subscript𝑎2𝑇superscriptsubscript𝑝subscript𝑎3𝑇superscriptsubscript𝑝subscript𝑎4𝑇𝑇p_{a}=(p_{a_{1}}^{T},p_{a_{2}}^{T},p_{a_{3}}^{T},p_{a_{4}}^{T})^{T}italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT = ( italic_p start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , italic_p start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , italic_p start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , italic_p start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT and pf=(pf1T,pf2T,pf3T)Tsubscript𝑝𝑓superscriptsuperscriptsubscript𝑝subscript𝑓1𝑇superscriptsubscript𝑝subscript𝑓2𝑇superscriptsubscript𝑝subscript𝑓3𝑇𝑇p_{f}=(p_{f_{1}}^{T},p_{f_{2}}^{T},p_{f_{3}}^{T})^{T}italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT = ( italic_p start_POSTSUBSCRIPT italic_f start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , italic_p start_POSTSUBSCRIPT italic_f start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , italic_p start_POSTSUBSCRIPT italic_f start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT. Hence, the network in Fig. 4 is localizable.

Theorem 2.

Suppose Assumption 1 holds. A 3-D network (𝒢,p𝒢𝑝\mathcal{G},pcaligraphic_G , italic_p) with mixed types of measurements is localizable if the following conditions hold:

  1. 1.

    (𝒢,p𝒢𝑝\mathcal{G},pcaligraphic_G , italic_p) is infinitesimally angle-displacement rigid;

  2. 2.

    There are at least three non-colinear anchor nodes.

Proof.

From Lemma 2, Null(R(p))=Span{𝟏nI3,p,(InA)p,A+AT=𝟎,A3×3}\text{Null}(R(p))=\text{Span}\{\mathbf{1}_{n}\otimes I_{3},p,(I_{n}\otimes A)p% ,A+A^{T}=\mathbf{0},A\in\mathbb{R}^{3\times 3}\}Null ( italic_R ( italic_p ) ) = Span { bold_1 start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ⊗ italic_I start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT , italic_p , ( italic_I start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ⊗ italic_A ) italic_p , italic_A + italic_A start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT = bold_0 , italic_A ∈ blackboard_R start_POSTSUPERSCRIPT 3 × 3 end_POSTSUPERSCRIPT } if (𝒢,p𝒢𝑝\mathcal{G},pcaligraphic_G , italic_p) is infinitesimally angle-displacement rigid. Thus, the nonzero angle-displacement infinitesimally motion is

δp=sp+r(InA)p+𝟏n𝐭,𝛿𝑝𝑠𝑝𝑟tensor-productsubscript𝐼𝑛𝐴𝑝tensor-productsubscript1𝑛𝐭\delta p=sp+r(I_{n}\otimes{A})p+\mathbf{1}_{n}\otimes\mathbf{t},italic_δ italic_p = italic_s italic_p + italic_r ( italic_I start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ⊗ italic_A ) italic_p + bold_1 start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ⊗ bold_t , (44)

where s,r,𝐭3,s2+rA+𝐭0formulae-sequence𝑠𝑟formulae-sequence𝐭superscript3superscript𝑠2norm𝑟𝐴norm𝐭0s,r\in\mathbb{R},\mathbf{t}\in\mathbb{R}^{3},s^{2}+\|rA\|+\|\mathbf{t}\|\neq 0italic_s , italic_r ∈ blackboard_R , bold_t ∈ blackboard_R start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT , italic_s start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT + ∥ italic_r italic_A ∥ + ∥ bold_t ∥ ≠ 0. For the anchor nodes pasubscript𝑝𝑎p_{a}italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT, we have δpa=spa+r(InaA)pa+𝟏na𝐭𝛿subscript𝑝𝑎𝑠subscript𝑝𝑎𝑟tensor-productsubscript𝐼subscript𝑛𝑎𝐴subscript𝑝𝑎tensor-productsubscript1subscript𝑛𝑎𝐭\delta p_{a}=sp_{a}+r(I_{n_{a}}\otimes{A})p_{a}+\mathbf{1}_{n_{a}}\otimes% \mathbf{t}italic_δ italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT = italic_s italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT + italic_r ( italic_I start_POSTSUBSCRIPT italic_n start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT end_POSTSUBSCRIPT ⊗ italic_A ) italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT + bold_1 start_POSTSUBSCRIPT italic_n start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT end_POSTSUBSCRIPT ⊗ bold_t.

  1. (a)

    First, we will prove δpa𝟎𝛿subscript𝑝𝑎0\delta p_{a}\neq\mathbf{0}italic_δ italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT ≠ bold_0 by contradiction. If δpa=𝟎𝛿subscript𝑝𝑎0\delta p_{a}=\mathbf{0}italic_δ italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT = bold_0, we have

    (sI3+rA)pi=𝐭,i𝒱a.formulae-sequence𝑠subscript𝐼3𝑟𝐴subscript𝑝𝑖𝐭𝑖subscript𝒱𝑎(sI_{3}+rA)p_{i}=-\mathbf{t},\ \ i\in\mathcal{V}_{a}.( italic_s italic_I start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT + italic_r italic_A ) italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = - bold_t , italic_i ∈ caligraphic_V start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT . (45)

    Since A+AT=𝟎𝐴superscript𝐴𝑇0A+A^{T}=\mathbf{0}italic_A + italic_A start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT = bold_0, matrix A𝐴Aitalic_A is a real skew-symmetric matrix and each eigenvalue of A𝐴Aitalic_A is either zero or pure imaginary. If s0𝑠0s\neq 0italic_s ≠ 0, we have Rank(sI3+rA)=3Rank𝑠subscript𝐼3𝑟𝐴3\text{Rank}(sI_{3}+rA)=3Rank ( italic_s italic_I start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT + italic_r italic_A ) = 3. From (45), we have pi=(sI3+rA)1𝐭,i𝒱aformulae-sequencesubscript𝑝𝑖superscript𝑠subscript𝐼3𝑟𝐴1𝐭𝑖subscript𝒱𝑎p_{i}=-(sI_{3}+rA)^{-1}\mathbf{t},i\in\mathcal{V}_{a}italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = - ( italic_s italic_I start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT + italic_r italic_A ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT bold_t , italic_i ∈ caligraphic_V start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT, i.e., the anchor nodes collocate, which contradicts Assumption 1 that no two anchor nodes are collocated. If s=0𝑠0s=0italic_s = 0, we have rA,𝐭𝟎𝑟𝐴𝐭0rA,\mathbf{t}\neq\mathbf{0}italic_r italic_A , bold_t ≠ bold_0, i.e., Rank(rA)2Rank𝑟𝐴2\text{Rank}(rA)\geq 2Rank ( italic_r italic_A ) ≥ 2. From (45), we can know that the anchor nodes are colinear or collocated, which contradicts that no two anchor nodes are collocated and there are at least three non-colinear anchors. Hence, δpa𝟎𝛿subscript𝑝𝑎0\delta p_{a}\neq\mathbf{0}italic_δ italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT ≠ bold_0.

  2. (b)

    Second, we will prove that the matrix Mffsubscript𝑀𝑓𝑓M_{ff}italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT is nonsingular if δpa0𝛿subscript𝑝𝑎0\delta p_{a}\neq 0italic_δ italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT ≠ 0. We only need to show that δpa=0𝛿subscript𝑝𝑎0\delta p_{a}=0italic_δ italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT = 0 if the matrix Mffsubscript𝑀𝑓𝑓M_{ff}italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT is singular. If the matrix Mffsubscript𝑀𝑓𝑓M_{ff}italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT is singular, there must be a nonzero δpf𝛿subscript𝑝𝑓\delta p_{f}italic_δ italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT such that Mffδpf=𝟎subscript𝑀𝑓𝑓𝛿subscript𝑝𝑓0M_{ff}\delta p_{f}=\mathbf{0}italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT italic_δ italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT = bold_0. Let δp=(δpaT,δpfT)T𝛿𝑝superscript𝛿superscriptsubscript𝑝𝑎𝑇𝛿superscriptsubscript𝑝𝑓𝑇𝑇\delta p=(\delta p_{a}^{T},\delta p_{f}^{T})^{T}italic_δ italic_p = ( italic_δ italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , italic_δ italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT with δpa=𝟎𝛿subscript𝑝𝑎0\delta p_{a}=\mathbf{0}italic_δ italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT = bold_0. We have δpTMδp=δpfTMffδpf=0𝛿superscript𝑝𝑇𝑀𝛿𝑝𝛿superscriptsubscript𝑝𝑓𝑇subscript𝑀𝑓𝑓𝛿subscript𝑝𝑓0\delta p^{T}M\delta p=\delta p_{f}^{T}M_{ff}\delta p_{f}=0italic_δ italic_p start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_M italic_δ italic_p = italic_δ italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT italic_δ italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT = 0.

Based on (a) and (b), we can know that the matrix Mffsubscript𝑀𝑓𝑓M_{ff}italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT must be nonsingular if (𝒢,p𝒢𝑝\mathcal{G},pcaligraphic_G , italic_p) is infinitesimally angle-displacement rigid. Hence, (𝒢,p𝒢𝑝\mathcal{G},pcaligraphic_G , italic_p) is localizable from Theorem 1. ∎

The graph condition in Theorem 2 is sufficient but not necessary. A 3-D localizable network may not be infinitesimally angle-displacement rigid. As shown in Fig. 4, the anchor nodes pa1,pa2,pa3,pa4subscript𝑝subscript𝑎1subscript𝑝subscript𝑎2subscript𝑝subscript𝑎3subscript𝑝subscript𝑎4p_{a_{1}},p_{a_{2}},p_{a_{3}},p_{a_{4}}italic_p start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT end_POSTSUBSCRIPT are enough to localize the free nodes pf1,pf2,pf3subscript𝑝subscript𝑓1subscript𝑝subscript𝑓2subscript𝑝subscript𝑓3p_{f_{1}},p_{f_{2}},p_{f_{3}}italic_p start_POSTSUBSCRIPT italic_f start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_f start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_f start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT end_POSTSUBSCRIPT. If we add additional anchor node pa5subscript𝑝subscript𝑎5p_{a_{5}}italic_p start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT end_POSTSUBSCRIPT with edges (pa1,pa5)subscript𝑝subscript𝑎1subscript𝑝subscript𝑎5(p_{a_{1}},p_{a_{5}})( italic_p start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) and (pa2,pa5)subscript𝑝subscript𝑎2subscript𝑝subscript𝑎5(p_{a_{2}},p_{a_{5}})( italic_p start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) to the network, the network will not be infinitesimally angle-displacement rigid but is still localizable. Next, we will answer the question of how to localize the free node in a distributed way.

IV-D Distributed Localization Algorithm

To achieve distributed network localization, each free node i𝒱f𝑖subscript𝒱𝑓i\in\mathcal{V}_{f}italic_i ∈ caligraphic_V start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT implements the following distributed localization algorithm, i.e.,

p^˙i=(i,j,k,h,l)𝒳𝒢N(i,j,k,h,l)+(j,i,k,h,l)𝒳𝒢barN(j,i,k,h,l),subscript˙^𝑝𝑖subscript𝑖𝑗𝑘𝑙subscript𝒳𝒢𝑁𝑖𝑗𝑘𝑙subscript𝑗𝑖𝑘𝑙subscript𝒳𝒢bar𝑁𝑗𝑖𝑘𝑙\dot{\hat{p}}_{i}=\sum\limits_{(i,j,k,h,l)\in\mathcal{X}_{\mathcal{G}}}N(i,j,k% ,h,l)+\sum\limits_{(j,i,k,h,l)\in\mathcal{X}_{\mathcal{G}}}\mathrm{bar}N(j,i,k% ,h,l),over˙ start_ARG over^ start_ARG italic_p end_ARG end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = ∑ start_POSTSUBSCRIPT ( italic_i , italic_j , italic_k , italic_h , italic_l ) ∈ caligraphic_X start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT italic_N ( italic_i , italic_j , italic_k , italic_h , italic_l ) + ∑ start_POSTSUBSCRIPT ( italic_j , italic_i , italic_k , italic_h , italic_l ) ∈ caligraphic_X start_POSTSUBSCRIPT caligraphic_G end_POSTSUBSCRIPT end_POSTSUBSCRIPT roman_bar italic_N ( italic_j , italic_i , italic_k , italic_h , italic_l ) , (46)

where

N(i,j,k,h,l)=(μij+μik+μih+μil)[μij(p^jp^i)+μik(p^kp^i)+μih(p^hp^i)+μil(p^lp^i)],\begin{array}[]{ll}&N(i,j,k,h,l)=(\mu_{ij}+\mu_{ik}+\mu_{ih}+\mu_{il})\cdot[% \mu_{ij}(\hat{p}_{j}-\hat{p}_{i})\!+\\ &\mu_{ik}(\hat{p}_{k}-\hat{p}_{i})\!+\!\mu_{ih}(\hat{p}_{h}-\hat{p}_{i})\!+\!% \mu_{il}(\hat{p}_{l}-\hat{p}_{i})],\end{array}start_ARRAY start_ROW start_CELL end_CELL start_CELL italic_N ( italic_i , italic_j , italic_k , italic_h , italic_l ) = ( italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT ) ⋅ [ italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT ( over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT - over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) + end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT ( over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT - over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) + italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT ( over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT - over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) + italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT ( over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT - over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) ] , end_CELL end_ROW end_ARRAY (47)

and

barN(j,i,k,h,l)=μji2(p^jp^i)+μjiμjk(p^jp^k)+μjiμjh(p^jp^h)+μjiμjl(p^jp^l).missing-subexpressionbar𝑁𝑗𝑖𝑘𝑙superscriptsubscript𝜇𝑗𝑖2subscript^𝑝𝑗subscript^𝑝𝑖limit-fromsubscript𝜇𝑗𝑖subscript𝜇𝑗𝑘subscript^𝑝𝑗subscript^𝑝𝑘missing-subexpressionsubscript𝜇𝑗𝑖subscript𝜇𝑗subscript^𝑝𝑗subscript^𝑝subscript𝜇𝑗𝑖subscript𝜇𝑗𝑙subscript^𝑝𝑗subscript^𝑝𝑙\begin{array}[]{ll}&\mathrm{bar}N(j,i,k,h,l)=\mu_{ji}^{2}(\hat{p}_{j}-\hat{p}_% {i})\!+\!\mu_{ji}\mu_{jk}(\hat{p}_{j}-\hat{p}_{k})\!+\\ &\mu_{ji}\mu_{jh}(\hat{p}_{j}-\hat{p}_{h})\!+\!\mu_{ji}\mu_{jl}(\hat{p}_{j}-% \hat{p}_{l}).\end{array}start_ARRAY start_ROW start_CELL end_CELL start_CELL roman_bar italic_N ( italic_j , italic_i , italic_k , italic_h , italic_l ) = italic_μ start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ( over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT - over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) + italic_μ start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT italic_μ start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT ( over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT - over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) + end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL italic_μ start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT italic_μ start_POSTSUBSCRIPT italic_j italic_h end_POSTSUBSCRIPT ( over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT - over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT ) + italic_μ start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT italic_μ start_POSTSUBSCRIPT italic_j italic_l end_POSTSUBSCRIPT ( over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT - over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT ) . end_CELL end_ROW end_ARRAY (48)

N(i,j,k,h,l)𝑁𝑖𝑗𝑘𝑙N(i,j,k,h,l)italic_N ( italic_i , italic_j , italic_k , italic_h , italic_l ) corresponds to the displacement constraint (31) and barN(j,i,k,h,l)bar𝑁𝑗𝑖𝑘𝑙\mathrm{bar}N(j,i,k,h,l)roman_bar italic_N ( italic_j , italic_i , italic_k , italic_h , italic_l ) corresponds to the displacement constraint (32). Based on (46), we have

p^˙f=Mffp^fMfapa.subscript˙^𝑝𝑓subscript𝑀𝑓𝑓subscript^𝑝𝑓subscript𝑀𝑓𝑎subscript𝑝𝑎\dot{\hat{p}}_{f}=-M_{ff}{\hat{p}}_{f}-M_{fa}p_{a}.over˙ start_ARG over^ start_ARG italic_p end_ARG end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT = - italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT - italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT . (49)
Theorem 3.

Suppose Assumption 1 holds. Under the distributed localization algorithm (46) with arbitrary generated initial estimates, the position estimation errors of the free nodes asymptotically converge to zero if the following conditions hold:

  1. 1.

    (𝒢,p𝒢𝑝\mathcal{G},pcaligraphic_G , italic_p) is infinitesimally angle-displacement rigid;

  2. 2.

    There are at least three non-colinear anchor nodes.

Proof.

From (39), we can conclude that the matrix Mffsubscript𝑀𝑓𝑓M_{ff}italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT is positive semi-definite. Since (𝒢,p𝒢𝑝\mathcal{G},pcaligraphic_G , italic_p) is infinitesimally angle-displacement rigid, the matrix Mffsubscript𝑀𝑓𝑓M_{ff}italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT must be positive definite from Theorem 2. Consider the Lyapunov function V=12p^fpf2𝑉12superscriptnormsubscript^𝑝𝑓subscript𝑝𝑓2V=\frac{1}{2}\|{\hat{p}}_{f}-{{p}}_{f}\|^{2}italic_V = divide start_ARG 1 end_ARG start_ARG 2 end_ARG ∥ over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT - italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT ∥ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT, it yields

V˙=(p^fpf)Tp^˙f=(p^fpf)T(Mffp^fMfapa)=(p^fpf)T(Mffp^f+Mffpf)=(p^fpf)TMff(p^fpf)<0,ifp^fpf.˙𝑉absentsuperscriptsubscript^𝑝𝑓subscript𝑝𝑓𝑇subscript˙^𝑝𝑓missing-subexpressionabsentsuperscriptsubscript^𝑝𝑓subscript𝑝𝑓𝑇subscript𝑀𝑓𝑓subscript^𝑝𝑓subscript𝑀𝑓𝑎subscript𝑝𝑎missing-subexpressionabsentsuperscriptsubscript^𝑝𝑓subscript𝑝𝑓𝑇subscript𝑀𝑓𝑓subscript^𝑝𝑓subscript𝑀𝑓𝑓subscript𝑝𝑓missing-subexpressionformulae-sequenceabsentsuperscriptsubscript^𝑝𝑓subscript𝑝𝑓𝑇subscript𝑀𝑓𝑓subscript^𝑝𝑓subscript𝑝𝑓0ifsubscript^𝑝𝑓subscript𝑝𝑓\begin{array}[]{ll}\dot{V}&=(\hat{p}_{f}-p_{f})^{T}\dot{\hat{p}}_{f}\\ &=(\hat{p}_{f}-p_{f})^{T}(-M_{ff}{\hat{p}}_{f}-M_{fa}p_{a})\\ &=(\hat{p}_{f}-p_{f})^{T}(-M_{ff}{\hat{p}}_{f}+M_{ff}p_{f})\\ &=-(\hat{p}_{f}-p_{f})^{T}M_{ff}(\hat{p}_{f}-p_{f})<0,\ \text{if}\ \hat{p}_{f}% \neq p_{f}.\end{array}start_ARRAY start_ROW start_CELL over˙ start_ARG italic_V end_ARG end_CELL start_CELL = ( over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT - italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT over˙ start_ARG over^ start_ARG italic_p end_ARG end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL = ( over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT - italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ( - italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT - italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT ) end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL = ( over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT - italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ( - italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT + italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT ) end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL = - ( over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT - italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT ( over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT - italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT ) < 0 , if over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT ≠ italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT . end_CELL end_ROW end_ARRAY (50)

Hence, given arbitrary initial estimates p^i(0),i𝒱fsubscript^𝑝𝑖0𝑖subscript𝒱𝑓\hat{p}_{i}(0),i\in\mathcal{V}_{f}over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( 0 ) , italic_i ∈ caligraphic_V start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT, p^i(t)subscript^𝑝𝑖𝑡\hat{p}_{i}(t)over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_t ) converges to pisubscript𝑝𝑖p_{i}italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT asymptotically. ∎

Algorithm 4 The sequential distributed localization algorithm
1:Initialization: Each node starts sending and receiving local relative measurements to or from its neighboring nodes. Each node has two modes: localized and unlocalized. The anchor nodes are set as localized mode, and the free nodes are set as unlocalized mode with initial estimates. Denote 𝒩ilsubscript𝒩𝑖𝑙\mathcal{N}_{il}caligraphic_N start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT as the set of localized neighbors of node i𝑖iitalic_i, and the 4444-combinations from the set 𝒩ilsubscript𝒩𝑖𝑙\mathcal{N}_{il}caligraphic_N start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT is denoted by Cisubscript𝐶𝑖C_{i}italic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT;
2:For any node i𝑖iitalic_i:
3:      While node i𝑖iitalic_i is in localized mode, do
4:       Sending its position and local relative measurements
5:       to its neighboring nodes;
6:     End
7:      While node i𝑖iitalic_i is in unlocalized mode, do
8:       Updating the set 𝒩ilsubscript𝒩𝑖𝑙\mathcal{N}_{il}caligraphic_N start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT;
9:        If |𝒩il|4subscript𝒩𝑖𝑙4|\mathcal{N}_{il}|\geq 4| caligraphic_N start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT | ≥ 4, for each 4444-combination of Cisubscript𝐶𝑖C_{i}italic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT such as
10:       localized neighbors j,k,h,l𝑗𝑘𝑙j,k,h,litalic_j , italic_k , italic_h , italic_l, do
11:           Based on the mixed noisy measurements and the
12:           method shown in Section IV-B, constructing the
13:           displacement constraint among i,j,k,h,l𝑖𝑗𝑘𝑙i,j,k,h,litalic_i , italic_j , italic_k , italic_h , italic_l;
14:           Obtaining displacement parameters μij,μik,μih,subscript𝜇𝑖𝑗subscript𝜇𝑖𝑘subscript𝜇𝑖\mu_{ij},\mu_{ik},\mu_{ih},italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT ,
15:           μilsubscript𝜇𝑖𝑙\mu_{il}italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT, or μji,μjk,μjh,μjlsubscript𝜇𝑗𝑖subscript𝜇𝑗𝑘subscript𝜇𝑗subscript𝜇𝑗𝑙\mu_{ji},\mu_{jk},\mu_{jh},\mu_{jl}italic_μ start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_j italic_h end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_j italic_l end_POSTSUBSCRIPT;
16:           If μij+μik+μih+μil0subscript𝜇𝑖𝑗subscript𝜇𝑖𝑘subscript𝜇𝑖subscript𝜇𝑖𝑙0\mu_{ij}\!+\!\mu_{ik}\!+\!\mu_{ih}\!+\!\mu_{il}\neq 0italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT ≠ 0 or μji0subscript𝜇𝑗𝑖0\mu_{ji}\neq 0italic_μ start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT ≠ 0, then
17:             p^˙i=N(i,j,k,h,l)subscript˙^𝑝𝑖𝑁𝑖𝑗𝑘𝑙\dot{\hat{p}}_{i}\!=\!N(i,j,k,h,l)over˙ start_ARG over^ start_ARG italic_p end_ARG end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = italic_N ( italic_i , italic_j , italic_k , italic_h , italic_l ) (47) or barN(j,i,k,h,l)bar𝑁𝑗𝑖𝑘𝑙\mathrm{bar}N(j,i,k,h,l)roman_bar italic_N ( italic_j , italic_i , italic_k , italic_h , italic_l ) (48);
18:              Obtaining the estimate p^i*subscriptsuperscript^𝑝𝑖{\hat{p}}^{*}_{i}over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT of node i𝑖iitalic_i;
19:              Switching to localized mode;
20:              Break
21:           End
22:        End
23:     End

If there is measurement noise, the measurement noise will influence the parameters in the displacement constraints such as μij,μik,μih,μilsubscript𝜇𝑖𝑗subscript𝜇𝑖𝑘subscript𝜇𝑖subscript𝜇𝑖𝑙\mu_{ij},\mu_{ik},\mu_{ih},\mu_{il}italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT in (7). Note that the matrices Mffsubscript𝑀𝑓𝑓M_{ff}italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT and Mfasubscript𝑀𝑓𝑎M_{fa}italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT in (49) are only determined by the parameters in the displacement constraints. Hence, the measurement noise will influence matrices Mffsubscript𝑀𝑓𝑓M_{ff}italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT and Mfasubscript𝑀𝑓𝑎M_{fa}italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT. The noisy barMffbarsubscript𝑀𝑓𝑓\mathrm{bar}M_{ff}roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT and barMfabarsubscript𝑀𝑓𝑎\mathrm{bar}M_{fa}roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT are

barMff=Mff+ΔMff,barMfa=Mfa+ΔMfa,formulae-sequencebarsubscript𝑀𝑓𝑓subscript𝑀𝑓𝑓Δsubscript𝑀𝑓𝑓barsubscript𝑀𝑓𝑎subscript𝑀𝑓𝑎Δsubscript𝑀𝑓𝑎\mathrm{bar}M_{ff}=M_{ff}+\Delta M_{ff},\ \ \mathrm{bar}M_{fa}=M_{fa}+\Delta M% _{fa},roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT = italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT + roman_Δ italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT , roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT = italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT + roman_Δ italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT , (51)

where ΔMff,ΔMfaΔsubscript𝑀𝑓𝑓Δsubscript𝑀𝑓𝑎\Delta M_{ff},\Delta M_{fa}roman_Δ italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT , roman_Δ italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT are error matrices. Then, we have

barMffp^f*+barMfapa=𝟎,barsubscript𝑀𝑓𝑓subscriptsuperscript^𝑝𝑓barsubscript𝑀𝑓𝑎subscript𝑝𝑎0\mathrm{bar}M_{ff}\hat{p}^{*}_{f}+\mathrm{bar}M_{fa}p_{a}=\mathbf{0},roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT + roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT = bold_0 , (52)

where p^f*subscriptsuperscript^𝑝𝑓\hat{p}^{*}_{f}over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT is the positions of the free nodes satisfying the noisy measurements and known anchor positions. If the noisy matrix barMffbarsubscript𝑀𝑓𝑓\mathrm{bar}M_{ff}roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT is nonsingular, the solution p^f*superscriptsubscript^𝑝𝑓\hat{p}_{f}^{*}over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT to (52) is unique.

Lemma 3.

A network (𝒢,p𝒢𝑝\mathcal{G},pcaligraphic_G , italic_p) with mixed types of noisy measurements in 3superscript3\mathbb{R}^{3}blackboard_R start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT is localizable if the following conditions hold:

  1. 1.

    (𝒢,p𝒢𝑝\mathcal{G},pcaligraphic_G , italic_p) is infinitesimally angle-displacement rigid;

  2. 2.

    The error matrix ΔMffΔsubscript𝑀𝑓𝑓\Delta M_{ff}roman_Δ italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT satisfies

    ΔMff<λmin(Mff).normΔsubscript𝑀𝑓𝑓subscript𝜆subscript𝑀𝑓𝑓\|\Delta M_{ff}\|<\lambda_{\min}(M_{ff}).∥ roman_Δ italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT ∥ < italic_λ start_POSTSUBSCRIPT roman_min end_POSTSUBSCRIPT ( italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT ) . (53)
Proof.

From Theorem 1, Mffsubscript𝑀𝑓𝑓M_{ff}italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT is nonsingular if (𝒢,p𝒢𝑝\mathcal{G},pcaligraphic_G , italic_p) is infinitesimally angle-displacement rigid. Then, we have barMff=Mff(I+Mff1ΔMff)barsubscript𝑀𝑓𝑓subscript𝑀𝑓𝑓𝐼superscriptsubscript𝑀𝑓𝑓1Δsubscript𝑀𝑓𝑓\mathrm{bar}{M}_{ff}=M_{ff}(I\!+\!M_{ff}^{-1}\Delta M_{ff})roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT = italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT ( italic_I + italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT roman_Δ italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT ). Since Mff1ΔMffMff1ΔMff=ΔMffλmin(Mff)normsuperscriptsubscript𝑀𝑓𝑓1Δsubscript𝑀𝑓𝑓normsuperscriptsubscript𝑀𝑓𝑓1normΔsubscript𝑀𝑓𝑓normΔsubscript𝑀𝑓𝑓subscript𝜆subscript𝑀𝑓𝑓\|M_{ff}^{-1}\Delta M_{ff}\|\leq\|M_{ff}^{-1}\|\|\Delta M_{ff}\|=\frac{\|% \Delta M_{ff}\|}{\lambda_{\min}(M_{ff})}∥ italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT roman_Δ italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT ∥ ≤ ∥ italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ∥ ∥ roman_Δ italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT ∥ = divide start_ARG ∥ roman_Δ italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT ∥ end_ARG start_ARG italic_λ start_POSTSUBSCRIPT roman_min end_POSTSUBSCRIPT ( italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT ) end_ARG, the matrix barMffbarsubscript𝑀𝑓𝑓\mathrm{bar}M_{ff}roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT must be nonsingular if the condition in (53) holds. From (39), we can conclude that barMffbarsubscript𝑀𝑓𝑓\mathrm{bar}M_{ff}roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT must also be positive definite. Then, under the proposed distributed localization algorithm p^˙f=barMffp^fbarMfapasubscript˙^𝑝𝑓barsubscript𝑀𝑓𝑓subscript^𝑝𝑓barsubscript𝑀𝑓𝑎subscript𝑝𝑎\dot{\hat{p}}_{f}=-\mathrm{bar}M_{ff}{\hat{p}}_{f}-\mathrm{bar}M_{fa}p_{a}over˙ start_ARG over^ start_ARG italic_p end_ARG end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT = - roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT - roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT, the estimate p^fsubscript^𝑝𝑓{\hat{p}}_{f}over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT will converge to p^*fsubscriptsuperscript^𝑝𝑓{\hat{p}^{*}}_{f}over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT shown as

p^f*=barMff1barMfapa.superscriptsubscript^𝑝𝑓barsuperscriptsubscript𝑀𝑓𝑓1barsubscript𝑀𝑓𝑎subscript𝑝𝑎\hat{p}_{f}^{*}=-\mathrm{bar}M_{ff}^{-1}\mathrm{bar}M_{fa}p_{a}.over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT = - roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT . (54)

Remark 6.

The condition in (53) is only used to guarantee the noisy matrix barMffbarsubscript𝑀𝑓𝑓\mathrm{bar}M_{ff}roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT to be nonsingular, which is sufficient but not necessary. Hence, the noisy matrix barMffbarsubscript𝑀𝑓𝑓\mathrm{bar}M_{ff}roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT may still be nonsingular even if the condition in (53) does not hold, that is, the network may still be localizable under the proposed scheme even if the condition in (53) does not hold.

From Lemma 2, we can know that the displacement constraints are invariant to the translation of the entire network. If we change the original point of the global coordinate frame or translate the whole network, the matrices barMfa,barMff,Mff,barsubscript𝑀𝑓𝑎barsubscript𝑀𝑓𝑓subscript𝑀𝑓𝑓\mathrm{bar}{M}_{fa},\mathrm{bar}{M}_{ff},M_{ff},roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT , roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT , italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT , Mfasubscript𝑀𝑓𝑎M_{fa}italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT will remain unchanged, i.e.,

Mff(pf𝟏nfpo)+Mfa(pa𝟏napo)=𝟎,subscript𝑀𝑓𝑓subscript𝑝𝑓tensor-productsubscript1subscript𝑛𝑓subscript𝑝𝑜subscript𝑀𝑓𝑎subscript𝑝𝑎tensor-productsubscript1subscript𝑛𝑎subscript𝑝𝑜0\displaystyle M_{ff}(p_{f}-\mathbf{1}_{n_{f}}\otimes p_{o})+M_{fa}(p_{a}-% \mathbf{1}_{n_{a}}\otimes p_{o})=\mathbf{0},italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT ( italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT - bold_1 start_POSTSUBSCRIPT italic_n start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT end_POSTSUBSCRIPT ⊗ italic_p start_POSTSUBSCRIPT italic_o end_POSTSUBSCRIPT ) + italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT ( italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT - bold_1 start_POSTSUBSCRIPT italic_n start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT end_POSTSUBSCRIPT ⊗ italic_p start_POSTSUBSCRIPT italic_o end_POSTSUBSCRIPT ) = bold_0 , (55)
barMff(p^f*𝟏nfpo)+barMfa(pa𝟏napo)=𝟎,barsubscript𝑀𝑓𝑓subscriptsuperscript^𝑝𝑓tensor-productsubscript1subscript𝑛𝑓subscript𝑝𝑜barsubscript𝑀𝑓𝑎subscript𝑝𝑎tensor-productsubscript1subscript𝑛𝑎subscript𝑝𝑜0\displaystyle\mathrm{bar}M_{ff}(\hat{p}^{*}_{f}-\mathbf{1}_{n_{f}}\otimes p_{o% })+\mathrm{bar}M_{fa}(p_{a}-\mathbf{1}_{n_{a}}\otimes p_{o})=\mathbf{0},roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT ( over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT - bold_1 start_POSTSUBSCRIPT italic_n start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT end_POSTSUBSCRIPT ⊗ italic_p start_POSTSUBSCRIPT italic_o end_POSTSUBSCRIPT ) + roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT ( italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT - bold_1 start_POSTSUBSCRIPT italic_n start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT end_POSTSUBSCRIPT ⊗ italic_p start_POSTSUBSCRIPT italic_o end_POSTSUBSCRIPT ) = bold_0 , (56)

where po3subscript𝑝𝑜superscript3p_{o}\in\mathbb{R}^{3}italic_p start_POSTSUBSCRIPT italic_o end_POSTSUBSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT is the original point of any local coordinate frame. If the condition in (53) holds, based on (54) and (56), we have

p^f*pf=barMff1barMfapapf=barMff1barMfa(pa𝟏napo)(pf𝟏nfpo).missing-subexpressionnormsuperscriptsubscript^𝑝𝑓subscript𝑝𝑓missing-subexpressionabsentnormbarsuperscriptsubscript𝑀𝑓𝑓1barsubscript𝑀𝑓𝑎subscript𝑝𝑎subscript𝑝𝑓missing-subexpressionabsentnormbarsuperscriptsubscript𝑀𝑓𝑓1barsubscript𝑀𝑓𝑎subscript𝑝𝑎tensor-productsubscript1subscript𝑛𝑎subscript𝑝𝑜subscript𝑝𝑓tensor-productsubscript1subscript𝑛𝑓subscript𝑝𝑜\begin{array}[]{ll}&\|\hat{p}_{f}^{*}-p_{f}\|\\ &=\|-\mathrm{bar}{M}_{ff}^{-1}\mathrm{bar}{M}_{fa}p_{a}-p_{f}\|\\ &=\|-\mathrm{bar}{M}_{ff}^{-1}\mathrm{bar}{M}_{fa}(p_{a}-\mathbf{1}_{n_{a}}% \otimes p_{o})-(p_{f}-\mathbf{1}_{n_{f}}\otimes p_{o})\|.\end{array}start_ARRAY start_ROW start_CELL end_CELL start_CELL ∥ over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT - italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT ∥ end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL = ∥ - roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT - italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT ∥ end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL = ∥ - roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT ( italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT - bold_1 start_POSTSUBSCRIPT italic_n start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT end_POSTSUBSCRIPT ⊗ italic_p start_POSTSUBSCRIPT italic_o end_POSTSUBSCRIPT ) - ( italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT - bold_1 start_POSTSUBSCRIPT italic_n start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT end_POSTSUBSCRIPT ⊗ italic_p start_POSTSUBSCRIPT italic_o end_POSTSUBSCRIPT ) ∥ . end_CELL end_ROW end_ARRAY (57)

From (57), we can know that the position estimation error remains unchanged if we change the original point of the global coordinate frame or translate the whole network. Actually, the position estimation error is only determined by the noisy measurements and the structure of the network. Then, we can obtain the error bound of position estimates of the free nodes shown as

p^f*pf=barMff1barMfa(pa𝟏napo)(pf𝟏nfpo)ΔMfapa𝟏napo+ΔMffpf𝟏nfpoI+Mff1ΔMffMffΔMfai=1napipo+|ΔMffi=na+1npipoI+Mff1ΔMffMff,po3.missing-subexpressionnormsuperscriptsubscript^𝑝𝑓subscript𝑝𝑓missing-subexpressionabsentnormbarsuperscriptsubscript𝑀𝑓𝑓1barsubscript𝑀𝑓𝑎subscript𝑝𝑎tensor-productsubscript1subscript𝑛𝑎subscript𝑝𝑜subscript𝑝𝑓tensor-productsubscript1subscript𝑛𝑓subscript𝑝𝑜missing-subexpressionabsentnormΔsubscript𝑀𝑓𝑎normsubscript𝑝𝑎tensor-productsubscript1subscript𝑛𝑎subscript𝑝𝑜normΔsubscript𝑀𝑓𝑓normsubscript𝑝𝑓tensor-productsubscript1subscript𝑛𝑓subscript𝑝𝑜norm𝐼superscriptsubscript𝑀𝑓𝑓1Δsubscript𝑀𝑓𝑓normsubscript𝑀𝑓𝑓missing-subexpressionformulae-sequenceabsentnormΔsubscript𝑀𝑓𝑎superscriptsubscript𝑖1subscript𝑛𝑎normsubscript𝑝𝑖subscript𝑝𝑜delimited-|‖Δsubscript𝑀𝑓𝑓superscriptsubscript𝑖subscript𝑛𝑎1𝑛normsubscript𝑝𝑖subscript𝑝𝑜norm𝐼superscriptsubscript𝑀𝑓𝑓1Δsubscript𝑀𝑓𝑓normsubscript𝑀𝑓𝑓subscript𝑝𝑜superscript3\begin{array}[]{ll}&\|\hat{p}_{f}^{*}-p_{f}\|\\ &=\|-\mathrm{bar}{M}_{ff}^{-1}\mathrm{bar}{M}_{fa}(p_{a}-\mathbf{1}_{n_{a}}% \otimes p_{o})-(p_{f}-\mathbf{1}_{n_{f}}\otimes p_{o})\|\\ &\leq\frac{\|\Delta M_{fa}\|\|p_{a}-\mathbf{1}_{n_{a}}\otimes p_{o}\|+\|\Delta M% _{ff}\|\|p_{f}-\mathbf{1}_{n_{f}}\otimes p_{o}\|}{\|I+M_{ff}^{-1}\Delta M_{ff}% \|\|M_{ff}\|}\\ &\leq\frac{\|\Delta M_{fa}\|\sum\limits_{i=1}^{n_{a}}\|p_{i}-p_{o}\|+|\Delta M% _{ff}\|\sum\limits_{i=n_{a}\!+\!1}^{n}\|p_{i}-p_{o}\|}{\|I+M_{ff}^{-1}\Delta M% _{ff}\|\|M_{ff}\|},\ p_{o}\in\mathbb{R}^{3}.\end{array}start_ARRAY start_ROW start_CELL end_CELL start_CELL ∥ over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT - italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT ∥ end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL = ∥ - roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT ( italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT - bold_1 start_POSTSUBSCRIPT italic_n start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT end_POSTSUBSCRIPT ⊗ italic_p start_POSTSUBSCRIPT italic_o end_POSTSUBSCRIPT ) - ( italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT - bold_1 start_POSTSUBSCRIPT italic_n start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT end_POSTSUBSCRIPT ⊗ italic_p start_POSTSUBSCRIPT italic_o end_POSTSUBSCRIPT ) ∥ end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL ≤ divide start_ARG ∥ roman_Δ italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT ∥ ∥ italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT - bold_1 start_POSTSUBSCRIPT italic_n start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT end_POSTSUBSCRIPT ⊗ italic_p start_POSTSUBSCRIPT italic_o end_POSTSUBSCRIPT ∥ + ∥ roman_Δ italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT ∥ ∥ italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT - bold_1 start_POSTSUBSCRIPT italic_n start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT end_POSTSUBSCRIPT ⊗ italic_p start_POSTSUBSCRIPT italic_o end_POSTSUBSCRIPT ∥ end_ARG start_ARG ∥ italic_I + italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT roman_Δ italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT ∥ ∥ italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT ∥ end_ARG end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL ≤ divide start_ARG ∥ roman_Δ italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT ∥ ∑ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ∥ italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT - italic_p start_POSTSUBSCRIPT italic_o end_POSTSUBSCRIPT ∥ + | roman_Δ italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT ∥ ∑ start_POSTSUBSCRIPT italic_i = italic_n start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT ∥ italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT - italic_p start_POSTSUBSCRIPT italic_o end_POSTSUBSCRIPT ∥ end_ARG start_ARG ∥ italic_I + italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT roman_Δ italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT ∥ ∥ italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT ∥ end_ARG , italic_p start_POSTSUBSCRIPT italic_o end_POSTSUBSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT . end_CELL end_ROW end_ARRAY (58)

From (58), we can know that the error bound u𝑢uitalic_u of position estimates can be obtained by minimizing the following cost function.

u=minpo3ΔMfai=1napipo+|ΔMffi=na+1npipoI+Mff1ΔMffMff.𝑢subscriptsubscript𝑝𝑜superscript3normΔsubscript𝑀𝑓𝑎superscriptsubscript𝑖1subscript𝑛𝑎normsubscript𝑝𝑖subscript𝑝𝑜delimited-|‖Δsubscript𝑀𝑓𝑓superscriptsubscript𝑖subscript𝑛𝑎1𝑛normsubscript𝑝𝑖subscript𝑝𝑜norm𝐼superscriptsubscript𝑀𝑓𝑓1Δsubscript𝑀𝑓𝑓normsubscript𝑀𝑓𝑓u=\min\limits_{p_{o}\in\mathbb{R}^{3}}\frac{\|\Delta M_{fa}\|\sum\limits_{i=1}% ^{n_{a}}\|p_{i}-p_{o}\|+|\Delta M_{ff}\|\sum\limits_{i=n_{a}\!+\!1}^{n}\|p_{i}% -p_{o}\|}{\|I+M_{ff}^{-1}\Delta M_{ff}\|\|M_{ff}\|}.italic_u = roman_min start_POSTSUBSCRIPT italic_p start_POSTSUBSCRIPT italic_o end_POSTSUBSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT end_POSTSUBSCRIPT divide start_ARG ∥ roman_Δ italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT ∥ ∑ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ∥ italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT - italic_p start_POSTSUBSCRIPT italic_o end_POSTSUBSCRIPT ∥ + | roman_Δ italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT ∥ ∑ start_POSTSUBSCRIPT italic_i = italic_n start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT ∥ italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT - italic_p start_POSTSUBSCRIPT italic_o end_POSTSUBSCRIPT ∥ end_ARG start_ARG ∥ italic_I + italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT roman_Δ italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT ∥ ∥ italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT ∥ end_ARG . (59)

The cost function (59) is a Fermat-Weber location problem, which can be solved by using the method in [21]. Hence, the error bound u𝑢uitalic_u of position estimates will also remain unchanged even if we change the original point of the global coordinate frame or translate the whole network.

The proposed distributed localization algorithm is implemented in a simultaneous way when the noisy matrix barMffbarsubscript𝑀𝑓𝑓\mathrm{bar}M_{ff}roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT is nonsingular. When the noisy matrix barMffbarsubscript𝑀𝑓𝑓\mathrm{bar}M_{ff}roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT is not nonsingular, the free nodes can still be estimated by using a sequential distributed localization protocol shown in the above Algorithm 4, where there are two kinds of localization algorithms, i.e., p^˙i=N(i,j,k,h,l)subscript˙^𝑝𝑖𝑁𝑖𝑗𝑘𝑙\dot{\hat{p}}_{i}\!=\!N(i,j,k,h,l)over˙ start_ARG over^ start_ARG italic_p end_ARG end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = italic_N ( italic_i , italic_j , italic_k , italic_h , italic_l ) (47) and p^˙i=barN(j,i,k,h,l)subscript˙^𝑝𝑖bar𝑁𝑗𝑖𝑘𝑙\dot{\hat{p}}_{i}\!=\!\mathrm{bar}N(j,i,k,h,l)over˙ start_ARG over^ start_ARG italic_p end_ARG end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = roman_bar italic_N ( italic_j , italic_i , italic_k , italic_h , italic_l ) (48).

If μij+μik+μih+μil0subscript𝜇𝑖𝑗subscript𝜇𝑖𝑘subscript𝜇𝑖subscript𝜇𝑖𝑙0\mu_{ij}\!+\!\mu_{ik}\!+\!\mu_{ih}\!+\!\mu_{il}\neq 0italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT ≠ 0, for the localization algorithm p^˙i=N(i,j,k,h,l)subscript˙^𝑝𝑖𝑁𝑖𝑗𝑘𝑙\dot{\hat{p}}_{i}\!=\!N(i,j,k,h,l)over˙ start_ARG over^ start_ARG italic_p end_ARG end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = italic_N ( italic_i , italic_j , italic_k , italic_h , italic_l ) (47), consider a Lyapunov candidate barV=12p^iμijp^j*+μikp^k*+μihp^h*+μilp^l*μij+μik+μih+μil2bar𝑉12superscriptnormsubscript^𝑝𝑖subscript𝜇𝑖𝑗subscriptsuperscript^𝑝𝑗subscript𝜇𝑖𝑘subscriptsuperscript^𝑝𝑘subscript𝜇𝑖subscriptsuperscript^𝑝subscript𝜇𝑖𝑙subscriptsuperscript^𝑝𝑙subscript𝜇𝑖𝑗subscript𝜇𝑖𝑘subscript𝜇𝑖subscript𝜇𝑖𝑙2\mathrm{bar}V=\frac{1}{2}\|{\hat{p}}_{i}-\frac{\mu_{ij}\hat{p}^{*}_{j}+\mu_{ik% }\hat{p}^{*}_{k}+\mu_{ih}\hat{p}^{*}_{h}+\mu_{il}\hat{p}^{*}_{l}}{\mu_{ij}\!+% \!\mu_{ik}\!+\!\mu_{ih}\!+\!\mu_{il}}\|^{2}roman_bar italic_V = divide start_ARG 1 end_ARG start_ARG 2 end_ARG ∥ over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT - divide start_ARG italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT end_ARG start_ARG italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT end_ARG ∥ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , it yields

barV˙=(μij+μik+μih+μil)2p^iμijp^j*+μikp^k*+μihp^h*+μilp^l*μij+μik+μih+μil20.˙bar𝑉absentsuperscriptsubscript𝜇𝑖𝑗subscript𝜇𝑖𝑘subscript𝜇𝑖subscript𝜇𝑖𝑙2superscriptnormsubscript^𝑝𝑖subscript𝜇𝑖𝑗subscriptsuperscript^𝑝𝑗subscript𝜇𝑖𝑘subscriptsuperscript^𝑝𝑘subscript𝜇𝑖subscriptsuperscript^𝑝subscript𝜇𝑖𝑙subscriptsuperscript^𝑝𝑙subscript𝜇𝑖𝑗subscript𝜇𝑖𝑘subscript𝜇𝑖subscript𝜇𝑖𝑙2missing-subexpressionabsent0\begin{array}[]{ll}{\dot{\mathrm{bar}V}}&\!=\!-\!(\mu_{ij}\!+\!\mu_{ik}\!+\!% \mu_{ih}\!+\!\mu_{il})^{2}\|{\hat{p}}_{i}\!-\!\frac{\mu_{ij}\hat{p}^{*}_{j}\!+% \!\mu_{ik}\hat{p}^{*}_{k}\!+\!\mu_{ih}\hat{p}^{*}_{h}\!+\!\mu_{il}\hat{p}^{*}_% {l}}{\mu_{ij}\!+\!\mu_{ik}\!+\!\mu_{ih}\!+\!\mu_{il}}\|^{2}\\ &\leq 0.\end{array}start_ARRAY start_ROW start_CELL over˙ start_ARG roman_bar italic_V end_ARG end_CELL start_CELL = - ( italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ∥ over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT - divide start_ARG italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT end_ARG start_ARG italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT end_ARG ∥ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL ≤ 0 . end_CELL end_ROW end_ARRAY (60)

where p^j*,p^k*,p^h*,p^l*subscriptsuperscript^𝑝𝑗subscriptsuperscript^𝑝𝑘subscriptsuperscript^𝑝subscriptsuperscript^𝑝𝑙\hat{p}^{*}_{j},\hat{p}^{*}_{k},\hat{p}^{*}_{h},\hat{p}^{*}_{l}over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT , over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT , over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT are the estimates of the localized neighbors j,k,h,l𝑗𝑘𝑙j,k,h,litalic_j , italic_k , italic_h , italic_l. Hence, the estimate of node i𝑖iitalic_i will converge to p^i*=μijp^j*+μikp^k*+μihp^h*+μilp^l*μij+μik+μih+μilsubscriptsuperscript^𝑝𝑖subscript𝜇𝑖𝑗subscriptsuperscript^𝑝𝑗subscript𝜇𝑖𝑘subscriptsuperscript^𝑝𝑘subscript𝜇𝑖subscriptsuperscript^𝑝subscript𝜇𝑖𝑙subscriptsuperscript^𝑝𝑙subscript𝜇𝑖𝑗subscript𝜇𝑖𝑘subscript𝜇𝑖subscript𝜇𝑖𝑙\hat{p}^{*}_{i}=\frac{\mu_{ij}\hat{p}^{*}_{j}+\mu_{ik}\hat{p}^{*}_{k}+\mu_{ih}% \hat{p}^{*}_{h}+\mu_{il}\hat{p}^{*}_{l}}{\mu_{ij}\!+\!\mu_{ik}\!+\!\mu_{ih}\!+% \!\mu_{il}}over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = divide start_ARG italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT end_ARG start_ARG italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT end_ARG. Similarly, if μji0subscript𝜇𝑗𝑖0\mu_{ji}\neq 0italic_μ start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT ≠ 0, for the localization algorithm p^˙i=barN(j,i,k,h,l)subscript˙^𝑝𝑖bar𝑁𝑗𝑖𝑘𝑙\dot{\hat{p}}_{i}\!=\!\mathrm{bar}N(j,i,k,h,l)over˙ start_ARG over^ start_ARG italic_p end_ARG end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = roman_bar italic_N ( italic_j , italic_i , italic_k , italic_h , italic_l ) (48), we can know that the estimate of node i𝑖iitalic_i will converge to

p^i*=μji+μjk+μjh+μjlμjip^j*μjkμjip^k*μjhμjip^h*μjlμjip^l*.subscriptsuperscript^𝑝𝑖subscript𝜇𝑗𝑖subscript𝜇𝑗𝑘subscript𝜇𝑗subscript𝜇𝑗𝑙subscript𝜇𝑗𝑖subscriptsuperscript^𝑝𝑗subscript𝜇𝑗𝑘subscript𝜇𝑗𝑖subscriptsuperscript^𝑝𝑘subscript𝜇𝑗subscript𝜇𝑗𝑖subscriptsuperscript^𝑝subscript𝜇𝑗𝑙subscript𝜇𝑗𝑖subscriptsuperscript^𝑝𝑙\hat{p}^{*}_{i}\!=\!\frac{\mu_{ji}\!+\!\mu_{jk}\!+\!\mu_{jh}\!+\!\mu_{jl}}{\mu% _{ji}}\hat{p}^{*}_{j}\!-\!\frac{\mu_{jk}}{\mu_{ji}}\hat{p}^{*}_{k}\!-\!\frac{% \mu_{jh}}{\mu_{ji}}\hat{p}^{*}_{h}\!-\!\frac{\mu_{jl}}{\mu_{ji}}\hat{p}^{*}_{l}.over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = divide start_ARG italic_μ start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_j italic_h end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_j italic_l end_POSTSUBSCRIPT end_ARG start_ARG italic_μ start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT end_ARG over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT - divide start_ARG italic_μ start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT end_ARG start_ARG italic_μ start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT end_ARG over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT - divide start_ARG italic_μ start_POSTSUBSCRIPT italic_j italic_h end_POSTSUBSCRIPT end_ARG start_ARG italic_μ start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT end_ARG over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT - divide start_ARG italic_μ start_POSTSUBSCRIPT italic_j italic_l end_POSTSUBSCRIPT end_ARG start_ARG italic_μ start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT end_ARG over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT . (61)

In Algorithm 4, to implement the localization algorithm p^˙i=N(i,j,k,h,l)subscript˙^𝑝𝑖𝑁𝑖𝑗𝑘𝑙\dot{\hat{p}}_{i}=N(i,j,k,h,l)over˙ start_ARG over^ start_ARG italic_p end_ARG end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = italic_N ( italic_i , italic_j , italic_k , italic_h , italic_l ) or p^˙i=barN(i,j,k,h,l)subscript˙^𝑝𝑖bar𝑁𝑖𝑗𝑘𝑙\dot{\hat{p}}_{i}=\mathrm{bar}N(i,j,k,h,l)over˙ start_ARG over^ start_ARG italic_p end_ARG end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = roman_bar italic_N ( italic_i , italic_j , italic_k , italic_h , italic_l ), node i𝑖iitalic_i requires at least four localized neighbors, i.e., |𝒩il|4subscript𝒩𝑖𝑙4|\mathcal{N}_{il}|\geq 4| caligraphic_N start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT | ≥ 4. Actually, when |𝒩il|=3subscript𝒩𝑖𝑙3|\mathcal{N}_{il}|=3| caligraphic_N start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT | = 3 or 2222, node i𝑖iitalic_i may also be localizable.

  1. (a)

    When |𝒩il|=3subscript𝒩𝑖𝑙3|\mathcal{N}_{il}|=3| caligraphic_N start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT | = 3, node i𝑖iitalic_i has three localized neighbors j,k,h𝑗𝑘j,k,hitalic_j , italic_k , italic_h. The ratio-of-distance matrix among the nodes i,j,k,h𝑖𝑗𝑘i,j,k,hitalic_i , italic_j , italic_k , italic_h can be obtained by the noisy measurements. Based on the ratio-of-distance matrix, we can check whether the nodes i,j,k,h𝑖𝑗𝑘i,j,k,hitalic_i , italic_j , italic_k , italic_h are coplanar or the nodes j,k,h𝑗𝑘j,k,hitalic_j , italic_k , italic_h are non-colinear by Menger determinant method shown in (18) and (23). Note that a network with ratio-of-distance matrix has the same barycentric coordinate as the network with distance matrix. Hence, if the nodes i,j,k,h𝑖𝑗𝑘i,j,k,hitalic_i , italic_j , italic_k , italic_h are coplanar and the nodes j,k,h𝑗𝑘j,k,hitalic_j , italic_k , italic_h are non-colinear, based on the ratio-of-distance matrix, we can obtain the barycentric coordinate {μij,μik,μih}subscript𝜇𝑖𝑗subscript𝜇𝑖𝑘subscript𝜇𝑖\{\mu_{ij},\mu_{ik},\mu_{ih}\}{ italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT , italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT } of node i𝑖iitalic_i with respect to the nodes j,k,h𝑗𝑘j,k,hitalic_j , italic_k , italic_h by Algorithm 2. Thus, the estimate p^i*superscriptsubscript^𝑝𝑖\hat{p}_{i}^{*}over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT of node i𝑖iitalic_i can be obtained by its localized neighbors p^j*,p^k*,p^h*subscriptsuperscript^𝑝𝑗subscriptsuperscript^𝑝𝑘subscriptsuperscript^𝑝\hat{p}^{*}_{j},\hat{p}^{*}_{k},\hat{p}^{*}_{h}over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT , over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT, i.e.,

    p^i*=μijp^j*+μikp^k*+μihp^h*.superscriptsubscript^𝑝𝑖subscript𝜇𝑖𝑗subscriptsuperscript^𝑝𝑗subscript𝜇𝑖𝑘subscriptsuperscript^𝑝𝑘subscript𝜇𝑖subscriptsuperscript^𝑝\hat{p}_{i}^{*}=\mu_{ij}\hat{p}^{*}_{j}+\mu_{ik}\hat{p}^{*}_{k}+\mu_{ih}\hat{p% }^{*}_{h}.over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT = italic_μ start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_i italic_h end_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT . (62)
  2. (b)

    When |𝒩il|=2subscript𝒩𝑖𝑙2|\mathcal{N}_{il}|=2| caligraphic_N start_POSTSUBSCRIPT italic_i italic_l end_POSTSUBSCRIPT | = 2, node i𝑖iitalic_i has two localized neighbors j,k𝑗𝑘j,kitalic_j , italic_k. The ratio of distances dikdijsubscript𝑑𝑖𝑘subscript𝑑𝑖𝑗\frac{d_{ik}}{d_{ij}}divide start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG and djkdijsubscript𝑑𝑗𝑘subscript𝑑𝑖𝑗\frac{d_{jk}}{d_{ij}}divide start_ARG italic_d start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG can be obtained by the noisy measurements. If dikdij+djkdij=1subscript𝑑𝑖𝑘subscript𝑑𝑖𝑗subscript𝑑𝑗𝑘subscript𝑑𝑖𝑗1\frac{d_{ik}}{d_{ij}}+\frac{d_{jk}}{d_{ij}}=1divide start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG + divide start_ARG italic_d start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG = 1, or dijdik+djkdik=1subscript𝑑𝑖𝑗subscript𝑑𝑖𝑘subscript𝑑𝑗𝑘subscript𝑑𝑖𝑘1\frac{d_{ij}}{d_{ik}}+\frac{d_{jk}}{d_{ik}}=1divide start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT end_ARG + divide start_ARG italic_d start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT end_ARG = 1, or dijdjk+dikdjk=1subscript𝑑𝑖𝑗subscript𝑑𝑗𝑘subscript𝑑𝑖𝑘subscript𝑑𝑗𝑘1\frac{d_{ij}}{d_{jk}}+\frac{d_{ik}}{d_{jk}}=1divide start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT end_ARG + divide start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT end_ARG = 1, the nodes i,j,k𝑖𝑗𝑘i,j,kitalic_i , italic_j , italic_k are colinear. Without loss of generility, suppose dikdij+djkdij=1subscript𝑑𝑖𝑘subscript𝑑𝑖𝑗subscript𝑑𝑗𝑘subscript𝑑𝑖𝑗1\frac{d_{ik}}{d_{ij}}+\frac{d_{jk}}{d_{ij}}=1divide start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG + divide start_ARG italic_d start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG = 1, we have

    eik=dikdijeij.subscript𝑒𝑖𝑘subscript𝑑𝑖𝑘subscript𝑑𝑖𝑗subscript𝑒𝑖𝑗e_{ik}=\frac{d_{ik}}{d_{ij}}e_{ij}.italic_e start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT = divide start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT . (63)

    Then, the estimate p^i*superscriptsubscript^𝑝𝑖\hat{p}_{i}^{*}over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT of node i𝑖iitalic_i can be obtained by its localized neighbors p^j*,p^k*subscriptsuperscript^𝑝𝑗subscriptsuperscript^𝑝𝑘\hat{p}^{*}_{j},\hat{p}^{*}_{k}over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT , over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT, i.e.,

    p^i*=dikdjkp^j*+dijdjkp^k*.superscriptsubscript^𝑝𝑖subscript𝑑𝑖𝑘subscript𝑑𝑗𝑘subscriptsuperscript^𝑝𝑗subscript𝑑𝑖𝑗subscript𝑑𝑗𝑘subscriptsuperscript^𝑝𝑘\hat{p}_{i}^{*}=-\frac{d_{ik}}{d_{jk}}\hat{p}^{*}_{j}+\frac{d_{ij}}{d_{jk}}% \hat{p}^{*}_{k}.over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT = - divide start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT end_ARG over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT + divide start_ARG italic_d start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT end_ARG over^ start_ARG italic_p end_ARG start_POSTSUPERSCRIPT * end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT . (64)

IV-E Discussions on the Proposed Method

From Algorithm 2 and (29), we can know any four nodes can form a displacement constraint if they are on the same plane. Hence, 2-D network localizaion with mixed measurements only requires each free node has at least three neighbors rather than four neighbors required for 3-D network. Hence, when the proposed method is applied to 2-D space, the Assumption 1 can be relaxed as

Assumption 2.

No two nodes are collocated. Each anchor node i𝑖iitalic_i has at least two neighboring anchor nodes j,k𝑗𝑘j,kitalic_j , italic_k, where i,j,k𝑖𝑗𝑘i,j,kitalic_i , italic_j , italic_k are mutual neighbors. Each free node i𝑖iitalic_i has at least three neighboring nodes j,k,h𝑗𝑘j,k,hitalic_j , italic_k , italic_h, where i,j,k,h𝑖𝑗𝑘i,j,k,hitalic_i , italic_j , italic_k , italic_h are mutual neighbors and non-colinear.

Remark 7.

From (30), we can know that the graph can be directed if each free node can measure relative positions in its local coordinate frame. In addition, it is possible to apply the proposed method to a switching graph if there exists T𝑇Titalic_T such that for each time instant t1subscript𝑡1{t_{1}}italic_t start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, the union network (𝒢([t1,t1+T]),p)𝒢subscript𝑡1subscript𝑡1𝑇𝑝(\mathcal{G}([t_{1},t_{1}+T]),p)( caligraphic_G ( [ italic_t start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_t start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT + italic_T ] ) , italic_p ) is infinitesimally angle-displacement rigid, where 𝒢([t1,t1+T])={𝒱,t[t1,t1+T](t)}𝒢subscript𝑡1subscript𝑡1𝑇𝒱subscript𝑡subscript𝑡1subscript𝑡1𝑇𝑡\mathcal{G}([t_{1},t_{1}+T])=\{\mathcal{V},\bigcup\limits_{t\in[t_{1},t_{1}+T]% }\mathcal{E}(t)\}caligraphic_G ( [ italic_t start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_t start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT + italic_T ] ) = { caligraphic_V , ⋃ start_POSTSUBSCRIPT italic_t ∈ [ italic_t start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_t start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT + italic_T ] end_POSTSUBSCRIPT caligraphic_E ( italic_t ) } is the union graph during the time interval [t1,t1+T]subscript𝑡1subscript𝑡1𝑇[t_{1},t_{1}+T][ italic_t start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_t start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT + italic_T ].

The existing works consider distributed localization with mixed distance and bearing measurements [13, 14, 15], but [13] is limited to 2-D space and [14, 15] need to know the global coordinate frame. Note that each node in [13, 14, 15] can measure both distances and bearings. The more challenging case is that some nodes can only measure distances or bearings. For this case, Lin develops a distributed algorithm for 2-D network localization, where each node can only measure distances, bearings, or relative positions in its local coordinate frame [16]. Compared with his result [16], the advantages of our work are concluded as follows.

  1. (i)

    The work in [16] only considers 2-D space. The 3-D case cannot be solved by trivially extending the results in [16], but our method can be applied in 3-D space.

  2. (ii)

    The work in [16] only considers three kinds of local relative measurements: local relative position, local relative bearing, and distance, but our work considers five kinds of local relative measurements.

  3. (iii)

    The difference between the Assumption in [16] and our Assumption 2 is that the work in [16] requires the convex hull assumption, i.e., each node lies strictly inside the convex hull spanned by its neighboring nodes, but our work only requires the free node and its neighbors be non-colinear. It is clear that our Assumption 2 is mild.

Refer to caption
Figure 5: 3-D localizable network.

V Simulation

Two numerical examples are given to illustrate the effectiveness of the theoretical findings. A three-dimensional localizable network with mixed types of measurements is shown in Fig. 5, where the 4444 anchor nodes pa=[p1T,,p4T]Tsubscript𝑝𝑎superscriptsuperscriptsubscript𝑝1𝑇superscriptsubscript𝑝4𝑇𝑇p_{a}=[p_{1}^{T},\cdots,p_{4}^{T}]^{T}italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT = [ italic_p start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , ⋯ , italic_p start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT and 23232323 free nodes pf=[p5T,,p27T]Tsubscript𝑝𝑓superscriptsuperscriptsubscript𝑝5𝑇superscriptsubscript𝑝27𝑇𝑇p_{f}=[p_{5}^{T},\cdots,p_{27}^{T}]^{T}italic_p start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT = [ italic_p start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , ⋯ , italic_p start_POSTSUBSCRIPT 27 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT are denoted by large solid dots and small solid dots, respectively. The orientation difference between the local coordinate frame of each node and global coordinate frame is unknown. It can be verified that the network in Fig. 5 is infinitesimally angle-displacement rigid, where the corresponding angle constraints and displacement constraints are constructed by our proposed methods shown in Section IV-B. For example, for the anchor nodes p1subscript𝑝1p_{1}\in\mathcal{R}italic_p start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∈ caligraphic_R, p2o𝒟subscript𝑝2𝑜𝒟p_{2}\in\mathcal{R}o\mathcal{D}italic_p start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ∈ caligraphic_R italic_o caligraphic_D, p3subscript𝑝3p_{3}\in\mathcal{B}italic_p start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ∈ caligraphic_B and free nodes p5subscript𝑝5p_{5}\in\mathcal{R}italic_p start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT ∈ caligraphic_R, p6𝒜,p7𝒟formulae-sequencesubscript𝑝6𝒜subscript𝑝7𝒟p_{6}\in\mathcal{A},p_{7}\in\mathcal{D}italic_p start_POSTSUBSCRIPT 6 end_POSTSUBSCRIPT ∈ caligraphic_A , italic_p start_POSTSUBSCRIPT 7 end_POSTSUBSCRIPT ∈ caligraphic_D shown in Fig. 5, the angle constraints (65) for the anchor nodes are obtained by (5).

e13Te12e31Te32=0,e21Te23=0,formulae-sequencesuperscriptsubscript𝑒13𝑇subscript𝑒12superscriptsubscript𝑒31𝑇subscript𝑒320superscriptsubscript𝑒21𝑇subscript𝑒230e_{13}^{T}e_{12}-e_{31}^{T}e_{32}=0,\ \ e_{21}^{T}e_{23}=0,italic_e start_POSTSUBSCRIPT 13 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT 12 end_POSTSUBSCRIPT - italic_e start_POSTSUBSCRIPT 31 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT 32 end_POSTSUBSCRIPT = 0 , italic_e start_POSTSUBSCRIPT 21 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT 23 end_POSTSUBSCRIPT = 0 , (65)

where

p1=[200,200,0]T,p2=[200,200,0]T,p3=[200,200,0]T.formulae-sequencesubscript𝑝1superscript2002000𝑇formulae-sequencesubscript𝑝2superscript2002000𝑇subscript𝑝3superscript2002000𝑇p_{1}\!=\![-200,-200,0]^{T},p_{2}\!=\![200,-200,0]^{T},p_{3}\!=\![200,200,0]^{% T}.italic_p start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT = [ - 200 , - 200 , 0 ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , italic_p start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT = [ 200 , - 200 , 0 ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , italic_p start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT = [ 200 , 200 , 0 ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT . (66)

For the free node p5subscript𝑝5p_{5}italic_p start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT, since it can measure local relative position e515,e525,e565,e575superscriptsubscript𝑒515superscriptsubscript𝑒525superscriptsubscript𝑒565superscriptsubscript𝑒575e_{51}^{5},e_{52}^{5},e_{56}^{5},e_{57}^{5}italic_e start_POSTSUBSCRIPT 51 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 5 end_POSTSUPERSCRIPT , italic_e start_POSTSUBSCRIPT 52 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 5 end_POSTSUPERSCRIPT , italic_e start_POSTSUBSCRIPT 56 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 5 end_POSTSUPERSCRIPT , italic_e start_POSTSUBSCRIPT 57 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 5 end_POSTSUPERSCRIPT to its neighboring nodes p1,p2,p6,p7subscript𝑝1subscript𝑝2subscript𝑝6subscript𝑝7p_{1},p_{2},p_{6},p_{7}italic_p start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT 6 end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT 7 end_POSTSUBSCRIPT, the displacement constraint (67) among the nodes p1,p2,p5,p6,p7subscript𝑝1subscript𝑝2subscript𝑝5subscript𝑝6subscript𝑝7p_{1},p_{2},p_{5},p_{6},p_{7}italic_p start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT 6 end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT 7 end_POSTSUBSCRIPT are obtained by (30).

e51+e52=0,subscript𝑒51subscript𝑒520e_{51}+e_{52}=0,italic_e start_POSTSUBSCRIPT 51 end_POSTSUBSCRIPT + italic_e start_POSTSUBSCRIPT 52 end_POSTSUBSCRIPT = 0 , (67)

where

p5=[0,200,0]T,p6=[0,200,100]T,p7=[0,0,100]T.formulae-sequencesubscript𝑝5superscript02000𝑇formulae-sequencesubscript𝑝6superscript0200100𝑇subscript𝑝7superscript00100𝑇p_{5}\!=\![0,-200,0]^{T},p_{6}\!=\![0,-200,100]^{T},p_{7}\!=\![0,0,100]^{T}.italic_p start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT = [ 0 , - 200 , 0 ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , italic_p start_POSTSUBSCRIPT 6 end_POSTSUBSCRIPT = [ 0 , - 200 , 100 ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , italic_p start_POSTSUBSCRIPT 7 end_POSTSUBSCRIPT = [ 0 , 0 , 100 ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT . (68)
Refer to caption
Figure 6: Trajectory of estimated position without measurement noise.
Refer to caption
Figure 7: Position estimation error without measurement noise.

When there is no measurement noise, under distributed localization algorithm (46) with randomly generated initial estimate, each free node can estimate its position shown in Fig. 6. The position estimation errors of the free nodes converge to zero globally shown in Fig. 7. In the proposed method, the mixed types of measurements are only used to construct the displacement constraints. Hence, the measurement noises will only influence displacement constraints. For example, when there is measurement noise, the free node p5subscript𝑝5p_{5}italic_p start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT obtain the noisy local relative position measurements bare515,bare525,bare565,bare575barsuperscriptsubscript𝑒515barsuperscriptsubscript𝑒525barsuperscriptsubscript𝑒565barsuperscriptsubscript𝑒575\mathrm{bar}e_{51}^{5},\mathrm{bar}e_{52}^{5},\mathrm{bar}e_{56}^{5},\mathrm{% bar}e_{57}^{5}roman_bar italic_e start_POSTSUBSCRIPT 51 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 5 end_POSTSUPERSCRIPT , roman_bar italic_e start_POSTSUBSCRIPT 52 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 5 end_POSTSUPERSCRIPT , roman_bar italic_e start_POSTSUBSCRIPT 56 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 5 end_POSTSUPERSCRIPT , roman_bar italic_e start_POSTSUBSCRIPT 57 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 5 end_POSTSUPERSCRIPT shown as

bare515=e515[5,5,5]T,bare525=e525+[6,7,8]T,bare565=e565[3,4,4]T,bare575=e575+[10,8,9]T.missing-subexpressionformulae-sequencebarsuperscriptsubscript𝑒515superscriptsubscript𝑒515superscript555𝑇barsuperscriptsubscript𝑒525superscriptsubscript𝑒525superscript678𝑇missing-subexpressionformulae-sequencebarsuperscriptsubscript𝑒565superscriptsubscript𝑒565superscript344𝑇barsuperscriptsubscript𝑒575superscriptsubscript𝑒575superscript1089𝑇\begin{array}[]{ll}&\mathrm{bar}e_{51}^{5}=e_{51}^{5}-[5,5,5]^{T},\ \ \mathrm{% bar}e_{52}^{5}=e_{52}^{5}+[6,7,8]^{T},\\ &\mathrm{bar}e_{56}^{5}=e_{56}^{5}-[3,4,4]^{T},\ \ \mathrm{bar}e_{57}^{5}=e_{5% 7}^{5}+[10,8,9]^{T}.\end{array}start_ARRAY start_ROW start_CELL end_CELL start_CELL roman_bar italic_e start_POSTSUBSCRIPT 51 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 5 end_POSTSUPERSCRIPT = italic_e start_POSTSUBSCRIPT 51 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 5 end_POSTSUPERSCRIPT - [ 5 , 5 , 5 ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , roman_bar italic_e start_POSTSUBSCRIPT 52 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 5 end_POSTSUPERSCRIPT = italic_e start_POSTSUBSCRIPT 52 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 5 end_POSTSUPERSCRIPT + [ 6 , 7 , 8 ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL roman_bar italic_e start_POSTSUBSCRIPT 56 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 5 end_POSTSUPERSCRIPT = italic_e start_POSTSUBSCRIPT 56 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 5 end_POSTSUPERSCRIPT - [ 3 , 4 , 4 ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , roman_bar italic_e start_POSTSUBSCRIPT 57 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 5 end_POSTSUPERSCRIPT = italic_e start_POSTSUBSCRIPT 57 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 5 end_POSTSUPERSCRIPT + [ 10 , 8 , 9 ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT . end_CELL end_ROW end_ARRAY (69)

Then, the displacement constraint with noisy local relative position measurements bare515,bare525,bare565,bare575barsuperscriptsubscript𝑒515barsuperscriptsubscript𝑒525barsuperscriptsubscript𝑒565barsuperscriptsubscript𝑒575\mathrm{bar}e_{51}^{5},\mathrm{bar}e_{52}^{5},\mathrm{bar}e_{56}^{5},\mathrm{% bar}e_{57}^{5}roman_bar italic_e start_POSTSUBSCRIPT 51 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 5 end_POSTSUPERSCRIPT , roman_bar italic_e start_POSTSUBSCRIPT 52 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 5 end_POSTSUPERSCRIPT , roman_bar italic_e start_POSTSUBSCRIPT 56 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 5 end_POSTSUPERSCRIPT , roman_bar italic_e start_POSTSUBSCRIPT 57 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 5 end_POSTSUPERSCRIPT among the nodes p1,p2,p5,p6,p7subscript𝑝1subscript𝑝2subscript𝑝5subscript𝑝6subscript𝑝7p_{1},p_{2},p_{5},p_{6},p_{7}italic_p start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT 6 end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT 7 end_POSTSUBSCRIPT becomes

620161e51+38449380e521103551e56e57=0.620161subscript𝑒5138449380subscript𝑒521103551subscript𝑒56subscript𝑒570\frac{6201}{61}e_{51}+\frac{38449}{380}e_{52}-\frac{1103}{551}e_{56}-e_{57}=0.divide start_ARG 6201 end_ARG start_ARG 61 end_ARG italic_e start_POSTSUBSCRIPT 51 end_POSTSUBSCRIPT + divide start_ARG 38449 end_ARG start_ARG 380 end_ARG italic_e start_POSTSUBSCRIPT 52 end_POSTSUBSCRIPT - divide start_ARG 1103 end_ARG start_ARG 551 end_ARG italic_e start_POSTSUBSCRIPT 56 end_POSTSUBSCRIPT - italic_e start_POSTSUBSCRIPT 57 end_POSTSUBSCRIPT = 0 . (70)

In the simulation, zero-mean Gaussian noises are added to local relative measurements. Based on the noisy local relative measurements, we can obtain the noisy matrices barMffbarsubscript𝑀𝑓𝑓\mathrm{bar}M_{ff}roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT and barMfabarsubscript𝑀𝑓𝑎\mathrm{bar}M_{fa}roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT in (51). The distributed algorithm (49) becomes

p^˙f=barMffp^fbarMfapa.subscript˙^𝑝𝑓barsubscript𝑀𝑓𝑓subscript^𝑝𝑓barsubscript𝑀𝑓𝑎subscript𝑝𝑎\dot{\hat{p}}_{f}=-\mathrm{bar}M_{ff}{\hat{p}}_{f}-\mathrm{bar}M_{fa}p_{a}.over˙ start_ARG over^ start_ARG italic_p end_ARG end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT = - roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_f end_POSTSUBSCRIPT over^ start_ARG italic_p end_ARG start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT - roman_bar italic_M start_POSTSUBSCRIPT italic_f italic_a end_POSTSUBSCRIPT italic_p start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT . (71)

The trajectories of estimated positions and position estimation errors are given in Fig. 8 and Fig. 9, respectively. The estimates of the free nodes can still converge to neighborhoods of the actual positions of the nodes shown if the condition (53) holds.

Refer to caption
Figure 8: Trajectory of estimated position with measurement noises.
Refer to caption
Figure 9: Position estimation error with measurement noises.

VI Conclusion

This paper studies the 3-D network localization with mixed local relative measurements, where each node holds a local coordinate frame without a common orientation and has no knowledge about the global coordinate frame. The main idea is to construct the displacement constraints for the positions of the nodes by using mixed local relative measurements. A linear distributed algorithm is proposed for each free node that can globally estimate its own position if the network is localizable. Our future work is to relax the assumption and evaluate the estimation error given the statistics of measurements noises.

References

  • [1] C. Jiang, Z. Chen, R. Su, and Y. C. Soh, “Group greedy method for sensor placement,” IEEE Transactions on Signal Processing, vol. 67, no. 9, pp. 2249–2262, 2019.
  • [2] X. Li, C. Wen, and C. Chen, “Adaptive formation control of networked robotic systems with bearing-only measurements,” IEEE Transactions on Cybernetics, Publised Online, 2020.
  • [3] Y. Wei and Z. Lin, “Vision-based tracking by a quadrotor on ros,” Unmanned Systems, vol. 7, no. 04, pp. 233–244, 2019.
  • [4] Q. Fan, N. Li, Y. Zhang, and X. Yan, “Zoning search using a hyper-heuristic algorithm,” Science China Information Sciences, vol. 62, no. 9, pp. 1–3, 2019.
  • [5] Z. Chen, Q. Zhu, and Y. C. Soh, “Smartphone inertial sensor-based indoor localization and tracking with ibeacon corrections,” IEEE Transactions on Industrial Informatics, vol. 12, no. 4, pp. 1540–1549, 2016.
  • [6] Y. Diao, Z. Lin, and M. Fu, “A barycentric coordinate based distributed localization algorithm for sensor networks,” IEEE Transactions on Signal Processing, vol. 62, no. 18, pp. 4760–4771, 2014.
  • [7] T. Han, Z. Lin, R. Zheng, Z. Han, and H. Zhang, “A barycentric coordinate based approach to three-dimensional distributed localization for wireless sensor networks,” in 2017 13th IEEE International Conference on Control & Automation (ICCA).   IEEE, 2017, pp. 600–605.
  • [8] P. Barooah and J. P. Hespanha, “Estimation on graphs from relative measurements,” IEEE Control Systems Magazine, vol. 27, no. 4, pp. 57–74, 2007.
  • [9] G. **g, C. Wan, and R. Dai, “Angle-based sensor network localization,” arXiv preprint arXiv:1912.01665, 2019.
  • [10] S. Zhao and D. Zelazo, “Localizability and distributed protocols for bearing-based network localization in arbitrary dimensions,” Automatica, vol. 69, pp. 334–341, 2016.
  • [11] G. Piovan, I. Shames, B. Fidan, F. Bullo, and B. D. Anderson, “On frame and orientation localization for relative sensing networks,” Automatica, vol. 49, no. 1, pp. 206–213, 2013.
  • [12] I. Shames, A. N. Bishop, and B. D. Anderson, “Analysis of noisy bearing-only network localization,” IEEE Transactions on Automatic Control, vol. 58, no. 1, pp. 247–252, 2012.
  • [13] Z. Lin, M. Fu, and Y. Diao, “Distributed self localization for relative position sensing networks in 2d space,” IEEE Transactions on Signal Processing, vol. 63, no. 14, pp. 3751–3761, 2015.
  • [14] T. Eren, “Cooperative localization in wireless ad hoc and sensor networks using hybrid distance and bearing (angle of arrival) measurements,” EURASIP Journal on Wireless Communications and Networking, vol. 2011, no. 1, p. 72, 2011.
  • [15] G. Stacey and R. Mahony, “The role of symmetry in rigidity analysis: A tool for network localization and formation control,” IEEE Transactions on Automatic Control, vol. 63, no. 5, pp. 1313–1328, 2017.
  • [16] Z. Lin, T. Han, R. Zheng, and C. Yu, “Distributed localization with mixed measurements under switching topologies,” Automatica, vol. 76, pp. 251–257, 2017.
  • [17] X. Fang, X. Li, and L. Xie, “Angle-displacement rigidity theory with application to distributed network localization,” IEEE Transactions on Automatic Control, Published Online, 2020.
  • [18] ——, “Technical details of distributed localization,” arXiv preprint arXiv:2007.10672, 2020.
  • [19] K. Cao, Z. Han, X. Li, and L. Xie, “Ratio-of-distance rigidity theory with application to similar formation control,” IEEE Transactions on Automatic Control, vol. 65, no. 6, pp. 2598–2611, 2020.
  • [20] M. J. Sippl and H. A. Scheraga, “Cayley-menger coordinates,” Proceedings of the National Academy of Sciences, vol. 83, no. 8, pp. 2283–2287, 1986.
  • [21] M. H. Trinh, B.-H. Lee, and H.-S. Ahn, “The fermat–weber location problem in single integrator dynamics using only local bearing angles,” Automatica, vol. 59, pp. 90–96, 2015.
iv>