Click here to load reader

Gilles Baechler*, Frederike Dümbgen*, Golnoosh Elhami ... · mn α˜mn dmn αmn ˜y mn > 0 y mn > 0 x˜mn

  • View
    2

  • Download
    0

Embed Size (px)

Text of Gilles Baechler*, Frederike Dümbgen*, Golnoosh Elhami ... · mn α˜mn dmn αmn ˜y mn > 0 y mn >...

  • COMBINING RANGE AND DIRECTION FOR IMPROVED LOCALIZATIONGilles Baechler*, Frederike Dümbgen*, Golnoosh Elhami*, Miranda Kreković*, Robin Scheibler, Adam Scholefield, and Martin Vetterli

    School of Communication and Computer Science, Ecole Polytechnique Fédérale de Lausanne (EPFL)

    Constrained Edge-Kernel, proposed approachProblem Statement

    Coordinate Difference Matrices (CDMs)

    +

    +

    +

    +

    ∆ℓṽi

    vh

    vi

    vkxm

    xp

    xn

    x̃m

    d̃mn

    α̃mndmn

    αmn

    ỹ mn>

    0

    y mn>

    0

    x̃mn < 0

    xmn < 0

    Fig. 1. Localization setup in 2D. The measured distance d̃mn and thedirected angle α̃mn can be be mutually expressed with the vectorṽmn or, equivalently, with the signed projections on the x- and y-axis: x̃mn and ỹmn. Triangle ∆ℓ is such that vi − vh = vk.

    We define the edge vector vmn corresponding to the pair of points(xn,xm) by

    vmn = xm − xn. (1)

    The length of the edge vector is the distance between the points,denoted by

    dmn = ∥xn − xm∥2, (2)

    while d̃mn refers to its noisy measurement. The orientation of thevector is defined with a directed angle, meaning that it lies between0 and 2π with respect to some common reference direction (in thiscase the x-axis). This assumption is realistic because devices areoften equipped with a compass, providing their absolute orientation.Therefore, we can use any off-the-shelf method [17] to measure thedirections of arrival and then convert them into directed angles. Wedenote the noiseless and noisy measured directed angles by αmnand α̃mn, respectively, as depicted in Fig. 1. Then, the coordinatesof edge vectors relate to distances and angles as

    (vmn)x = dmn cosαmn and (vmn)y = dmn sinαmn. (3)

    Our goal is to estimate the points X̂ , given noisy measurementsof distances d̃mn and angles α̃mn.

    3. EDGE-KERNEL BASED SOLUTIONS

    Before describing our constrained edge-kernel approach, we firstsummarize the original edge-kernel method [16].

    3.1. The Edge-Kernel Formulation

    In [16], Macagnano et al. propose a new MDS formulation, referredto as edge multidimensional scaling (E-MDS), which allows a uni-fied processing of angle and range information. In the E-MDS-basedformulation, the entities are the vectors pointing from one point toanother, while the measure of dissimilarity is their inner product.

    To simplify the notation and allow the construction of a matrixwhose elements depend on two edge vectors i and j, we first re-index

    the edges vmn from (1) to vi with i = (m− 1)N − m(m+1)2 + n,where m = 1, . . . , N − 1, n = m + 1, . . . , N , and i = 1, . . . , E,E = N(N−1)2 . If we consider a matrix consisting of elements vmn,this corresponds to flattening the elements of its upper triangle in arow-wise order. Then, we define the edge-kernel KE ∈ RE×E of afully connected point set with E edges and the element (i, j) as

    (KE)ij = ⟨vi,vj⟩ = ⟨xm − xn,xq − xp⟩= dmndpq cos (φij),

    (4)

    where dmn is defined in (2), and φij is the inner angle between vec-tors vi and vj . In matrix form, (4) simplifies to

    KE = V V⊤ = dEd

    ⊤E ◦Ω, (5)

    where V ∈ RE×2 is the matrix of the edges, dE ∈ RE is the vectorof the edge lengths and ◦ represents the Hadamard (entrywise) prod-uct. The elements Ωij of the angle matrix Ω contain the cosines ofthe inner angles between vi and vj . From (5), it is easy to verifythat the rank of the edge kernel is at most 2. Given noisy angle anddistance measurements, the authors in [16] propose to reconstruct adenoised kernel by imposing this low-rank constraint and positive-semidefiniteness:

    V̂ = argminV ∈RE×2

    ∥K̃E − V V ⊤∥F

    = diag(d̃E

    )· [U Ω̃]1:E,1:2 · [ΛΩ̃]

    121:2,1:2 ,

    (6)

    where K̃E = d̃Ed̃⊤E ◦ Ω̃ is the measured edge kernel and U Ω̃ and

    ΛΩ̃ are the matrices of eigenvectors and eigenvalues of Ω̃, respec-tively. Recovering the point set X from V̂ is straightforward oncewe set the translation of X by fixing one point. It consists of solvinga sparse linear system of equations defined in [16].

    3.2. Constrained Edge-Kernel

    The above solution outperforms previous approaches, which includedistance-only techniques [18] as well as methods combining bothdistances and angles [18, 19]. However, it neglects certain geometricconstraints, which means the recovered vectors are not guaranteedto be geometrically consistent. Indeed, imposing the kernel struc-ture ignores triangle equalities of the edge vectors. Therefore, wepropose a new method, which we call constrained edge-kernel, toaddress this limitation.

    To better exploit geometric information for denoising, we intro-duce the novel notion of a triangle constraints matrix M ∈ RC×E .This matrix incorporates the mutual dependencies of edge vectorsforming a triangle, with Mℓi = 1, Mℓk = Mℓj = −1, assumingthat the vectors vi, vj and vk form the triangle ∆ℓ (see Fig. 1).The number of constraints C equals to the number of triangles in thepoint set, C =

    (N3

    ). The problem given in (6) can then be written as

    the rank-constrained optimization,

    K̂E =argminK

    ∥K̃E −K∥F

    subject to K ∈ C and K ∈ R,(7)

    where we introduce the feasibility sets

    R ={X ∈ RE×E : X ≽ 0, rank (X) = 2

    }, (8)

    C ={X ∈ RE×E : MX = 0

    }. (9)

    *The authors have equal contribution to this work and the order is alphabeticalThis work was supported by the Swiss National Science Foundation grant number 20FP-1 151073, “Inverse Problems regularized by Sparsity” and by InnoSuisse, grant number 25579.1 PFES-ES.

    [1] I. Dokmanić, R. Parhizkar, J. Ranieri, and M. Vetterli, “Euclidean Distance Matrices: Essential theory, algorithms, and applications,” IEEE Signal Processing Magazine, vol. 32, no. 6, pp. 12-30, 2015.[2] R. Peng and M. L. Sichitiu, “Angle of arrival localization for wireless sensor networks,” 3rd Annual IEEE Communications Society on Sensor and Ad Hoc Communications and Networks, vol. 1, pp. 374–382, 2006.[3] D. Macagnano, G. Thadeu, F. D. Abreu, and S. Member, “Algebraic Approach for Robust Localization with Heterogeneous Information,” IEEE Transactions on Wireless Communications, vol. 12, no. 10, pp. 5334–5345, 2013.

    Contact: [email protected] for all authors

    Background

    • Goal: multimodal self-localization of nodes in a sensor network• Approach: recover the locations of the nodes given distance and angle

    measurements• Contributions: two algorithms that outperform the state-of-the art

    Distance-based approaches• How to measure distances: time-of-arrival, received signal

    strength

    • Methods: Euclidean distance matrices, MDS [1]

    Angle-based approaches• How to measure angles: antenna arrays, leveraging phase

    differences

    • Methods: angle-of-arrival [2]

    Hybrid approaches• Combination of distances and angles• Method: edge-multidimensional scaling [3]

    Edge-Kernel, prior workComparison of the two methods

    Conclusion

    Comparison with state-of-the-art

    0.01 (0.6◦) 0.5 (28.6◦)σα

    0.01

    0.5

    σd

    -6.6e-05 0.011 0.021 0.03 0.041 0.05 0.063 0.07 0.083 0.094 0.1

    -0.0068 -0.00086 0.0075 0.02 0.032 0.042 0.05 0.063 0.078 0.083 0.095

    -0.012 -0.0093 -0.0019 0.0076 0.018 0.028 0.041 0.052 0.064 0.072 0.092

    -0.02 -0.017 -0.011 -0.0044 0.004 0.017 0.031 0.039 0.054 0.064 0.075

    -0.03 -0.027 -0.025 -0.017 -0.0089 0.0019 0.013 0.024 0.037 0.05 0.063

    -0.038 -0.037 -0.033 -0.028 -0.019 -0.0094 -0.0057 0.0084 0.022 0.038 0.047

    -0.05 -0.051 -0.043 -0.041 -0.033 -0.027 -0.016 -0.01 0.002 0.012 0.027

    -0.066 -0.063 -0.059 -0.058 -0.051 -0.045 -0.029 -0.023 -0.011 -0.0074 0.015

    -0.082 -0.077 -0.074 -0.074 -0.07 -0.058 -0.052 -0.041 -0.027 -0.021 -0.0094

    -0.098 -0.11 -0.1 -0.094 -0.085 -0.077 -0.071 -0.07 -0.058 -0.041 -0.03

    difference CDM - constrained E-MDS

    −0.08

    −0.04

    0.00

    0.04

    0.08

    0.0 0.1 0.2 0.3 0.4 0.5σd[-]

    0.0

    0.1

    0.2

    0.3

    0.4

    0.5

    0.6

    0.7

    0.8

    RMSE

    ”low” angle noise: σα = 0.11 (6.2◦)

    constrained E-MDS

    MDS

    CDM

    E-MDS

    0.0 0.1 0.2 0.3 0.4 0.5σα[rad]

    0.0

    0.1

    0.2

    0.3

    0.4

    RMSE

    constrained E-MDS

    MDS

    CDM

    E-MDS

    0.0 11.5 22.9σα[◦]

    ”low” distance noise: σd = 0.06

    0.0 0.1 0.2 0.3 0.4 0.5σd[-]

    0.0

    0.1

    0.2

    0.3

    0.4

    0.5

    0.6

    0.7

    0.8

    RMSE

    ”high” angle noise: σα = 0.50 (28.6◦)

    0.0 0.1 0.2 0.3 0.4 0.5σα[rad]

    0.0

    0.1

    0.2

    0.3

    0.4

    RMSE

    0.0 11.5 22.9σα[◦]

    ”high” distance noise: σd = 0.17

    • Experiment: measure the RMSE of the reconstructed locations for different noise on distances ( ) or angles ( )

    • Outcome: CDM better for high distance noise, constrained E-MDS better with high angular noise

    Definitions

    Input Incomplete noisy measurements S̃ = (S +Z) �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

    Cost function

    CDM

    Noise matrix

    Mask matrix

    Degree matrix

    S = s1> � 1s>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

    Algorithm

    mins

    ���W � (s1> � 1s> � eS)���2

    FAAAFInicdZNRb9MwEMfTrcAYbGzwyIu1atJA2tQUEPA2CanijTFWNqnuKse5tNYcO7KdbpWXT8Fn4NPwhHhCQnwW7KTVlpZZSnT+3+/s89kXZZxp027/bqysNu/df7D2cP3R443NJ1vbT79qmSsKPSq5VGcR0cCZgJ5hhsNZpoCkEYfT6OKD959OQGkmxYmZZjBIyUiwhFFinDTcusIpE0OLJ0CN1UWBMIfE4GtUKadOoExRtDcnsBSgz7GRGdpHqJzNXZXqZHzJYjCMxzBb+EtRvEBYsdHYLT203eK8M9xqtQ/a5UDLRjgzWsFsHA23V7/hWNI8BWEoJ1r3w3ZmBpYowyiHYh3nGjJCL8gI+s4UJAU9sGWJCrTrlBglUrlPGFSqtyMsSbWeppEjU2LGetHnxf/5+rlJ3g0sE1luQNBqoyTnyEjk641iplwF+NQZhCrmckV0TBShxt1KbZcorZ3BxtqnWj+XpoRDPLBj4BPwPgUCLqlMUyLilzghKePTGBKSc2OxTmamS2sXfRIuC5YgMwbkn0xVCVkJ88oipn3qESBNhEYaFEtqGZyEA+sD/WHrReIj6c43Tu+Q2QJ/Vd3MOnY5usdbzmzK4v2YqIv9kSLTwlb/9sGrN467OWj1qoq+SwVHksf+4iS3rdC9313v8nd7GyeRLunrVnjtEOTmkrsLQxPCc6izQqq0WtrRuMS9tAyd3KKGtlPMSdRZZrs1tnvDdussyyqwbEJOxIiDC6kaR5VTH8mEAIUyJeOcmvoCx0WtJNg/2Ciyx0WxUEEmjqutmLgj4LwsaD3Kt3tRQbG2zu3aOFxs2mWj1zl4fxB+ft063Jn181rwPNgJ9oIweBscBh+Do6AX0OBvo9nYaGw2vzd/NH82f1XoSmMW8yyojeaff9mryLc=AAAFInicdZNRb9MwEMfTrcAYbGzwyIu1atJA2tQUEPA2CanijTFWNqnuKse5tNYcO7KdbpWXT8Fn4NPwhHhCQnwW7KTVlpZZSnT+3+/s89kXZZxp027/bqysNu/df7D2cP3R443NJ1vbT79qmSsKPSq5VGcR0cCZgJ5hhsNZpoCkEYfT6OKD959OQGkmxYmZZjBIyUiwhFFinDTcusIpE0OLJ0CN1UWBMIfE4GtUKadOoExRtDcnsBSgz7GRGdpHqJzNXZXqZHzJYjCMxzBb+EtRvEBYsdHYLT203eK8M9xqtQ/a5UDLRjgzWsFsHA23V7/hWNI8BWEoJ1r3w3ZmBpYowyiHYh3nGjJCL8gI+s4UJAU9sGWJCrTrlBglUrlPGFSqtyMsSbWeppEjU2LGetHnxf/5+rlJ3g0sE1luQNBqoyTnyEjk641iplwF+NQZhCrmckV0TBShxt1KbZcorZ3BxtqnWj+XpoRDPLBj4BPwPgUCLqlMUyLilzghKePTGBKSc2OxTmamS2sXfRIuC5YgMwbkn0xVCVkJ88oipn3qESBNhEYaFEtqGZyEA+sD/WHrReIj6c43Tu+Q2QJ/Vd3MOnY5usdbzmzK4v2YqIv9kSLTwlb/9sGrN467OWj1qoq+SwVHksf+4iS3rdC9313v8nd7GyeRLunrVnjtEOTmkrsLQxPCc6izQqq0WtrRuMS9tAyd3KKGtlPMSdRZZrs1tnvDdussyyqwbEJOxIiDC6kaR5VTH8mEAIUyJeOcmvoCx0WtJNg/2Ciyx0WxUEEmjqutmLgj4LwsaD3Kt3tRQbG2zu3aOFxs2mWj1zl4fxB+ft063Jn181rwPNgJ9oIweBscBh+Do6AX0OBvo9nYaGw2vzd/NH82f1XoSmMW8yyojeaff9mryLc=AAAFInicdZNRb9MwEMfTrcAYbGzwyIu1atJA2tQUEPA2CanijTFWNqnuKse5tNYcO7KdbpWXT8Fn4NPwhHhCQnwW7KTVlpZZSnT+3+/s89kXZZxp027/bqysNu/df7D2cP3R443NJ1vbT79qmSsKPSq5VGcR0cCZgJ5hhsNZpoCkEYfT6OKD959OQGkmxYmZZjBIyUiwhFFinDTcusIpE0OLJ0CN1UWBMIfE4GtUKadOoExRtDcnsBSgz7GRGdpHqJzNXZXqZHzJYjCMxzBb+EtRvEBYsdHYLT203eK8M9xqtQ/a5UDLRjgzWsFsHA23V7/hWNI8BWEoJ1r3w3ZmBpYowyiHYh3nGjJCL8gI+s4UJAU9sGWJCrTrlBglUrlPGFSqtyMsSbWeppEjU2LGetHnxf/5+rlJ3g0sE1luQNBqoyTnyEjk641iplwF+NQZhCrmckV0TBShxt1KbZcorZ3BxtqnWj+XpoRDPLBj4BPwPgUCLqlMUyLilzghKePTGBKSc2OxTmamS2sXfRIuC5YgMwbkn0xVCVkJ88oipn3qESBNhEYaFEtqGZyEA+sD/WHrReIj6c43Tu+Q2QJ/Vd3MOnY5usdbzmzK4v2YqIv9kSLTwlb/9sGrN467OWj1qoq+SwVHksf+4iS3rdC9313v8nd7GyeRLunrVnjtEOTmkrsLQxPCc6izQqq0WtrRuMS9tAyd3KKGtlPMSdRZZrs1tnvDdussyyqwbEJOxIiDC6kaR5VTH8mEAIUyJeOcmvoCx0WtJNg/2Ciyx0WxUEEmjqutmLgj4LwsaD3Kt3tRQbG2zu3aOFxs2mWj1zl4fxB+ft063Jn181rwPNgJ9oIweBscBh+Do6AX0OBvo9nYaGw2vzd/NH82f1XoSmMW8yyojeaff9mryLc=AAAFInicdZNRb9MwEMfTrcAYbGzwyIu1atJA2tQUEPA2CanijTFWNqnuKse5tNYcO7KdbpWXT8Fn4NPwhHhCQnwW7KTVlpZZSnT+3+/s89kXZZxp027/bqysNu/df7D2cP3R443NJ1vbT79qmSsKPSq5VGcR0cCZgJ5hhsNZpoCkEYfT6OKD959OQGkmxYmZZjBIyUiwhFFinDTcusIpE0OLJ0CN1UWBMIfE4GtUKadOoExRtDcnsBSgz7GRGdpHqJzNXZXqZHzJYjCMxzBb+EtRvEBYsdHYLT203eK8M9xqtQ/a5UDLRjgzWsFsHA23V7/hWNI8BWEoJ1r3w3ZmBpYowyiHYh3nGjJCL8gI+s4UJAU9sGWJCrTrlBglUrlPGFSqtyMsSbWeppEjU2LGetHnxf/5+rlJ3g0sE1luQNBqoyTnyEjk641iplwF+NQZhCrmckV0TBShxt1KbZcorZ3BxtqnWj+XpoRDPLBj4BPwPgUCLqlMUyLilzghKePTGBKSc2OxTmamS2sXfRIuC5YgMwbkn0xVCVkJ88oipn3qESBNhEYaFEtqGZyEA+sD/WHrReIj6c43Tu+Q2QJ/Vd3MOnY5usdbzmzK4v2YqIv9kSLTwlb/9sGrN467OWj1qoq+SwVHksf+4iS3rdC9313v8nd7GyeRLunrVnjtEOTmkrsLQxPCc6izQqq0WtrRuMS9tAyd3KKGtlPMSdRZZrs1tnvDdussyyqwbEJOxIiDC6kaR5VTH8mEAIUyJeOcmvoCx0WtJNg/2Ciyx0WxUEEmjqutmLgj4LwsaD3Kt3tRQbG2zu3aOFxs2mWj1zl4fxB+ft063Jn181rwPNgJ9oIweBscBh+Do6AX0OBvo9nYaGw2vzd/NH82f1XoSmMW8yyojeaff9mryLc=

    Decompose the edge vectors V into 1D coordinate differences sx

    and sy

    .

    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

    Compute W 0, S̃0 and ⇤0 by removing the first row and column W , S̃ and ⇤.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

    For each dimension

    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

    d0 = ⇤0(S̃0 �W 0)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

    A0 = I �⇤0W 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

    ŝ = (A0)�1d0 where (A0)�1 has a closed form.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

    Return s =⇥0 ŝ

    ⇤>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

    OutputThe 2D points

    ⇥ŝx

    ŝy

    ⇤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

    �dAAACFnicbVDLSsNAFJ3UV42vqks3Q4vgqiQiqLuCG5cVrC00oUwm03boPMLMpFJCfsKd6L+4Erdu/RVXTtostPXAwOHcc7lnTpQwqo3nfTmVtfWNza3qtruzu7d/UDs8etAyVZh0sGRS9SKkCaOCdAw1jPQSRRCPGOlGk5ti3p0SpakU92aWkJCjkaBDipGxUi/QdMTRIB7UGl7TmwOuEr8kDVCiPah9B7HEKSfCYIa07vteYsIMKUMxI7kbpJokCE/QiPQtFYgTHWbzvDk8tUoMh1LZJwycq783MsS1nvHIOjkyY708K8T/Zv3UDK/CjIokNUTgxaFhyqCRsPg8jKki2LCZJQgrarNCPEYKYWMrcgNBHrHkHIk4C6bWmPf9MAsiyeIijWRZw89z17Vl+cvVrJLOefO66d9dNFr1srUqOAF1cAZ8cAla4Ba0QQdgwMATeAGvzrPz5rw7HwtrxSl3jsEfOJ8/ZVif/Q==AAACFnicbVDLSsNAFJ3UV42vqks3Q4vgqiQiqLuCG5cVrC00oUwm03boPMLMpFJCfsKd6L+4Erdu/RVXTtostPXAwOHcc7lnTpQwqo3nfTmVtfWNza3qtruzu7d/UDs8etAyVZh0sGRS9SKkCaOCdAw1jPQSRRCPGOlGk5ti3p0SpakU92aWkJCjkaBDipGxUi/QdMTRIB7UGl7TmwOuEr8kDVCiPah9B7HEKSfCYIa07vteYsIMKUMxI7kbpJokCE/QiPQtFYgTHWbzvDk8tUoMh1LZJwycq783MsS1nvHIOjkyY708K8T/Zv3UDK/CjIokNUTgxaFhyqCRsPg8jKki2LCZJQgrarNCPEYKYWMrcgNBHrHkHIk4C6bWmPf9MAsiyeIijWRZw89z17Vl+cvVrJLOefO66d9dNFr1srUqOAF1cAZ8cAla4Ba0QQdgwMATeAGvzrPz5rw7HwtrxSl3jsEfOJ8/ZVif/Q==AAACFnicbVDLSsNAFJ3UV42vqks3Q4vgqiQiqLuCG5cVrC00oUwm03boPMLMpFJCfsKd6L+4Erdu/RVXTtostPXAwOHcc7lnTpQwqo3nfTmVtfWNza3qtruzu7d/UDs8etAyVZh0sGRS9SKkCaOCdAw1jPQSRRCPGOlGk5ti3p0SpakU92aWkJCjkaBDipGxUi/QdMTRIB7UGl7TmwOuEr8kDVCiPah9B7HEKSfCYIa07vteYsIMKUMxI7kbpJokCE/QiPQtFYgTHWbzvDk8tUoMh1LZJwycq783MsS1nvHIOjkyY708K8T/Zv3UDK/CjIokNUTgxaFhyqCRsPg8jKki2LCZJQgrarNCPEYKYWMrcgNBHrHkHIk4C6bWmPf9MAsiyeIijWRZw89z17Vl+cvVrJLOefO66d9dNFr1srUqOAF1cAZ8cAla4Ba0QQdgwMATeAGvzrPz5rw7HwtrxSl3jsEfOJ8/ZVif/Q==AAACFnicbVDLSsNAFJ3UV42vqks3Q4vgqiQiqLuCG5cVrC00oUwm03boPMLMpFJCfsKd6L+4Erdu/RVXTtostPXAwOHcc7lnTpQwqo3nfTmVtfWNza3qtruzu7d/UDs8etAyVZh0sGRS9SKkCaOCdAw1jPQSRRCPGOlGk5ti3p0SpakU92aWkJCjkaBDipGxUi/QdMTRIB7UGl7TmwOuEr8kDVCiPah9B7HEKSfCYIa07vteYsIMKUMxI7kbpJokCE/QiPQtFYgTHWbzvDk8tUoMh1LZJwycq783MsS1nvHIOjkyY708K8T/Zv3UDK/CjIokNUTgxaFhyqCRsPg8jKki2LCZJQgrarNCPEYKYWMrcgNBHrHkHIk4C6bWmPf9MAsiyeIijWRZw89z17Vl+cvVrJLOefO66d9dNFr1srUqOAF1cAZ8cAla4Ba0QQdgwMATeAGvzrPz5rw7HwtrxSl3jsEfOJ8/ZVif/Q==

    �↵AAACG3icbVBLS8NAGNz4rPFV9egltAieSiKCeit48VjB2kITypfNtl26j7i7qZSQ3+FN9L94Eq8e/Cue3D4O2jqwMMzMxw4Tp4xq4/tfzsrq2vrGZmnL3d7Z3dsvHxzea5kpTJpYMqnaMWjCqCBNQw0j7VQR4DEjrXh4PfFbI6I0leLOjFMScegL2qMYjJWiUNM+h24ILB1At1z1a/4U3jIJ5qSK5mh0y99hInHGiTCYgdadwE9NlIMyFDNSuGGmSQp4CH3SsVQAJzrKp6UL78QqideTyj5hvKn6+yIHrvWYxzbJwQz0ojcR//M6meldRjkVaWaIwLOPehnzjPQmC3gJVQQbNrYEsKK2q4cHoAAbu5MbCvKIJecgkjwc2WDRCaI8jCVLJm0ky6tBUbiuHStYnGaZNM9qV7Xg9rxar8xXK6FjVEGnKEAXqI5uUAM1EUYP6Am9oFfn2Xlz3p2PWXTFmd8coT9wPn8AhaeiLQ==AAACG3icbVBLS8NAGNz4rPFV9egltAieSiKCeit48VjB2kITypfNtl26j7i7qZSQ3+FN9L94Eq8e/Cue3D4O2jqwMMzMxw4Tp4xq4/tfzsrq2vrGZmnL3d7Z3dsvHxzea5kpTJpYMqnaMWjCqCBNQw0j7VQR4DEjrXh4PfFbI6I0leLOjFMScegL2qMYjJWiUNM+h24ILB1At1z1a/4U3jIJ5qSK5mh0y99hInHGiTCYgdadwE9NlIMyFDNSuGGmSQp4CH3SsVQAJzrKp6UL78QqideTyj5hvKn6+yIHrvWYxzbJwQz0ojcR//M6meldRjkVaWaIwLOPehnzjPQmC3gJVQQbNrYEsKK2q4cHoAAbu5MbCvKIJecgkjwc2WDRCaI8jCVLJm0ky6tBUbiuHStYnGaZNM9qV7Xg9rxar8xXK6FjVEGnKEAXqI5uUAM1EUYP6Am9oFfn2Xlz3p2PWXTFmd8coT9wPn8AhaeiLQ==AAACG3icbVBLS8NAGNz4rPFV9egltAieSiKCeit48VjB2kITypfNtl26j7i7qZSQ3+FN9L94Eq8e/Cue3D4O2jqwMMzMxw4Tp4xq4/tfzsrq2vrGZmnL3d7Z3dsvHxzea5kpTJpYMqnaMWjCqCBNQw0j7VQR4DEjrXh4PfFbI6I0leLOjFMScegL2qMYjJWiUNM+h24ILB1At1z1a/4U3jIJ5qSK5mh0y99hInHGiTCYgdadwE9NlIMyFDNSuGGmSQp4CH3SsVQAJzrKp6UL78QqideTyj5hvKn6+yIHrvWYxzbJwQz0ojcR//M6meldRjkVaWaIwLOPehnzjPQmC3gJVQQbNrYEsKK2q4cHoAAbu5MbCvKIJecgkjwc2WDRCaI8jCVLJm0ky6tBUbiuHStYnGaZNM9qV7Xg9rxar8xXK6FjVEGnKEAXqI5uUAM1EUYP6Am9oFfn2Xlz3p2PWXTFmd8coT9wPn8AhaeiLQ==AAACG3icbVBLS8NAGNz4rPFV9egltAieSiKCeit48VjB2kITypfNtl26j7i7qZSQ3+FN9L94Eq8e/Cue3D4O2jqwMMzMxw4Tp4xq4/tfzsrq2vrGZmnL3d7Z3dsvHxzea5kpTJpYMqnaMWjCqCBNQw0j7VQR4DEjrXh4PfFbI6I0leLOjFMScegL2qMYjJWiUNM+h24ILB1At1z1a/4U3jIJ5qSK5mh0y99hInHGiTCYgdadwE9NlIMyFDNSuGGmSQp4CH3SsVQAJzrKp6UL78QqideTyj5hvKn6+yIHrvWYxzbJwQz0ojcR//M6meldRjkVaWaIwLOPehnzjPQmC3gJVQQbNrYEsKK2q4cHoAAbu5MbCvKIJecgkjwc2WDRCaI8jCVLJm0ky6tBUbiuHStYnGaZNM9qV7Xg9rxar8xXK6FjVEGnKEAXqI5uUAM1EUYP6Am9oFfn2Xlz3p2PWXTFmd8coT9wPn8AhaeiLQ==

    Constrained E-MDS• Our contribution: enforce additional constraints on • Constraints: (1) is PSD and of rank 2 


    (2) the entries of satisfy the triangle equality

    • Solution: lift-and-project, alternative projections onto the sets satisfying constraints (1) and (2)

    Edge-multidimensional scaling (E-MDS) [3]• Edge kernel matrix 



    • Solution: recover via eigenvalue decomposition of

    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

    • We proposed two algorithms for multimodal sensor localization:• Constrained Edge-Kernel improves on the existing Edge-Kernel

    method by adding geometric constraints on triplets of points.• Coordinate Difference Matrices allow us to estimate the sensors’

    coordinates independently for each dimension.• Numerical simulations demonstrate that both proposed methods significantly

    outperform existing distance-based and multimodal localization algorithms.

    State-of-the-art• Distance-only: MDS [1]• Distance + angles: E-MDS [3]Experiment• 6 points chosen uniformly in the unit square• Compute RMSE on reconstructed pointsRMSE vs. angular noise• RMSE vs. angular noise for two representative distance noise levels

    RMSE vs. distance noise• RMSE vs. distance noise for two representative angle noise levels

    Compute W 0, S̃0 and ⇤0 by removing the first row and column W , S̃ and ⇤.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

    Decompose the edge vectors V into 1D coordinate differences sx

    and sy

    .

    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

    Decompose the edge vectors V into 1D coordinate differences sx

    and sy

    .

    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