<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Performance Analysis of Collaborative Positioning Method in Automated Car Driving</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Shuo Li</string-name>
          <email>shuo.li.chn@gmail.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Nikolay Mikhaylov</string-name>
          <email>Nikolay.Mikhaylov@de.bosch.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Florian Schiegg</string-name>
          <email>Florian.Schiegg@de.bosch.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Yichen Liu</string-name>
          <email>yichen.liu@tum.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Robert Bosch GmbH</institution>
          ,
          <addr-line>Robert-Bosch-Straße 200, Hildesheim</addr-line>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Automated car driving is a complex project involving many technologies, and it is essential to obtain vehicles' accurate position information by using Global Navigation Satellite System (GNSS) technology. However, in many scenarios, such as urban canyon, it is difficult for vehicles to acquire accurate positioning results through stand-alone Single Point Positioning (SPP) due to obstruction and lacking visible satellites. With the rapid development of GNSS technology and Vehicle to Everything (V2X) communication, the GNSS Collaborative Positioning (CoPos) is becoming possible. CoPos requires vehicles to share GNSS raw measurements with their neighbors through V2X communication and to measure the local ranges between vehicles. In this paper, basic GNSS pseudorange and local range observation equations, Extended Kalman Filter (EKF) positioning algorithm and a Non-Line-of-Sight (NLOS) detection algorithm for CoPos are presented. A simulation framework based on vehicle dynamics simulator CarMaker and GNSS simulator Spirent is designed. Performance analysis of CoPos is offered in terms of a defined Collaborative Dilution of Precision (CDOP) value and positioning results compared with SPP. The results of the NLOS detection algorithm are given too. It is shown that the developed CoPos and NLOS-detection algorithms provide better positioning results than standard stand-alone SPP.</p>
      </abstract>
      <kwd-group>
        <kwd>1 GNSS</kwd>
        <kwd>V2X</kwd>
        <kwd>Collaborative Positioning</kwd>
        <kwd>Extended Kalman Filter</kwd>
        <kwd>Multipath Detection</kwd>
        <kwd>Simulation Framework</kwd>
        <kwd>CarMaker</kwd>
        <kwd>Spirent</kwd>
        <kwd>Performance Analysis</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>Global Navigation Satellite System (GNSS) refers to a constellation of satellites that provides
autonomous geo-spatial positioning with global coverage and it has been widely used in various fields
such as transportation, navigation, surveying and rescue, etc. An automated driving system is a complex
combination of various technologies and a fully autonomous vehicle needs an accurate, reliable,
redundant and continuous positioning solution from GNSS. However, facing occlusions and multipath
effects in urban canyons, tunnels forests and other challenging environments, the positioning
performance would be affected severely and up to now, there are no good solutions in these scenarios
for stand-alone Single Point Positioning (SPP) [1]. To overcome it, with the development of
communication and ranging technology, many positioning methods have been proposed with the
assumption that the positions of some base stations are known. For example, base stations can transmit
corrections to a moving vehicle, the vehicle can fix the positioning result with higher accuracy by
utilizing these corrections. However, it is difficult to set a large network of base stations, and as a result,
the coverage of the base stations is limited, compared with GNSS [2].</p>
      <p>Driven by the development of Vehicle to Everything (V2X) communication technology,
Collaborative Positioning (CoPos) provides an alternative solution to solve this problem. CoPos refers
to a group of users sharing their raw GNSS measurements and measuring the local ranges with their
neighboring users to accomplish positioning. CoPos can improve the positioning performance such as
availability, continuity, and accuracy [3, 4]. GNSS has global coverage, therefore it can resolve the
coverage issue of wireless sensor networks. Apart from GNSS measurement, a precise local range
measurement is essential to achieve a better performance of CoPos. For almost a decade, multi-sensors
have been available in vehicles, for example, a prototype of a fully autonomous vehicle is proposed in
[5] using 3D laser scanners to obtain an accurate position of the surrounding environment. Different
sensors have their advantages and disadvantages and an intelligent strategy is to do the data fusion,
combining the measurements from different sensors and from V2X messages, such as the collective
perception message currently being standardized by the European Telecommunications Standards
Institute [6], in order to obtain a more precise local range measurement.</p>
      <p>Several multipath mitigation methods are introduced in [7], they can be classified as antenna-based,
receiver-based and post-receiver. The antenna-based method can attenuate reflected signals, but it has
a little effect on positioning errors caused by Non-Line-of-Sight (NLOS) signals, moreover, advanced
antennas are bulky and expensive. Receiver-based techniques can reduce the positioning errors
significantly by sharpening the peak of the code correlation function, but it does not affect NLOS signal
reception. Post-receiver technology compares measurements in different frequencies or code and phase
measurements to detect NLOS signals.</p>
      <p>In this work, a combination of GNSS and V2X technology to obtain vehicles’ positioning solution
is introduced. A CoPos algorithm in [8] is extended by Extended Kalman Filter (EKF) and a defined
Collaborative Dilution of Precision (CDOP) based on [9] are presented. In section 3, a multipath
detection algorithm proposed in [10] is modified for EKF-based CoPos. The used simulation framework
based on the simulator TEPLITS [11,12] is described in section 4, section 5 gives the performance
analysis of CoPos compared with SPP. Finally, the conclusions are given in the section 6.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Collaborative Positioning</title>
      <p>Figure 1 shows a typical collaborative positioning of a multi-user application scenario. In an urban
environment, satellite visibility could be bad because of building blockage, and the multipath effect is
strong. As shown in Figure 1, the vehicle located in the middle tracks less than four satellites because
GNSS signals are blocked by the tall building. As a result, the basic requirement to perform SPP is not
fulfilled. However, the considered vehicle communicates with the other two vehicles through V2X.
Each of the other two vehicles tracks four satellites and transmits GNSS raw measurements as well as
pre-processed data via V2X messages. The considered vehicle in the middle receives messages from
other vehicles and measures local range to the other two vehicles.</p>
      <p>
        The basic pseudorange observation equation of user  and satellite  can be expressed as
!" = !" + ! − " + !",
(
        <xref ref-type="bibr" rid="ref1">1</xref>
        )
where !" is pseudorange measurement, !" is true range between user  and satellite ,  is speed of
light, ! and " are receiver clock bias and satellite clock bias respectively, !" includes atmospheric
delay, multipath, receiver noise and satellite orbital errors.
      </p>
      <p>The local range observation equation is given by</p>
      <p>#,% = #,% + #,%,
where #,% is local range measurement, #,% is the true range from user  to user  and #,% is local range
measurement noise. In general, #,% depends on the ranging technology and the changing user
environment. Typically, a meter level accuracy of local range measurements can be achieved and for
some high accuracy ranging technologies or through data fusion, a centimeter-level accuracy can be
obtained.</p>
      <p>Based on the aforementioned pseudorange and local range observation equations, a CoPos algorithm
using EKF is implemented. The EKF produces firstly estimates of the current state variables, along with
their uncertainties, once the next measurement is observed, these estimates are updated using a weighted
average. The algorithm is divided into four steps.</p>
      <p>
        • Set initial state vector and covariance matrix
The initial state vector 6&amp;,' of user 1 can be set as
(
        <xref ref-type="bibr" rid="ref2">2</xref>
        )
(
        <xref ref-type="bibr" rid="ref3">3</xref>
        )
(
        <xref ref-type="bibr" rid="ref4">4</xref>
        )
(
        <xref ref-type="bibr" rid="ref5">5</xref>
        )
(
        <xref ref-type="bibr" rid="ref6">6</xref>
        )
(
        <xref ref-type="bibr" rid="ref7">7</xref>
        )
(
        <xref ref-type="bibr" rid="ref8">8</xref>
        )
6&amp;,' = 7', ̇', ', ̇', ', '̇, ', ̇'&lt;,
where ', ', ' are the user’s position, ̇', ̇', '̇ are the user’s velocity and ', ̇' are clock bias
and clock bias drift of user 1. The over dots denote the time derivative. Consider the number of users
in a group is , the initial state vector 6&amp; is the combination of the state vectors of all users and it is a
8 × 1 matrix
*
6&amp; = 76&amp;,', 6&amp;,( , … , 6&amp;,) &lt; .
      </p>
      <p>The initial error covariance matrix &amp; indicates the degree of trust in the current state, and a relatively
small value is generally set in order to obtain a fast convergence speed. The initial &amp; matrix can be set
as an 8 × 8 identity matrix
• Prediction
The prediction of state vector and covariance matrix can be expressed as
where 6,+ , ,+ are the predicted state vector and error covariance of current epoch , 6+, ', +, ' are the
state vector and error covariance of previous epoch  − 1,  is a 8 × 8 state transition matrix, it is a
block diagonal matrix of the form
where -./0 is state transition matrix of one user. Based on a simple constant velocity model and
assuming there is no coupling between , ,  and , -./0 is formed by</p>
      <p>-./0
 = P ⋮

⋯
⋱
⋯

⋮ R,
-./0
⎡-./
-./0 = ⎢ 
⎢ 
⎣</p>
      <p>-./




-./



⎤
⎥ ,
 ⎥
0⎦
where</p>
      <p>
        -./ = 0 = Z10 ∆1\. (
        <xref ref-type="bibr" rid="ref9">9</xref>
        )
 is covariance matrix of the process noise, the smaller value in  matrix indicates the higher degree
of trust in the predicted state. On the contrary, the larger value in  represents the higher confidence in
the measurements. The process covariance matrix -./0 of one user is a block diagonal matrix with
three identical submatrices for the position-velocity pairs and one submatrix for the clock-clock drift
pair. The forming of -./0 matrix assumes that the states are uncorrelated with each other outside of
the pairs and statistically coupled only in pairs
      </p>
      <p>⎡
-./0 = ⎢ 
⎢ 
⎣ 
-./</p>
      <p>-./




-./</p>
      <p>⎤
 ⎥.
 ⎥
0⎦</p>
      <p>We follow work [13] to set -./ and 0. A white noise spectral density which represents random
walk velocity error can be defined as -(./ , and each position-velocity pair has two variance terms and
one covariance term, which describes a submatrix
-./ = -(./ ⎢ 3
⎢∆(
⎡
∆1
⎡ 2∆ +
0 = ⎢
⎢
⎣
3∆(
3∆1
3
∆(</p>
      <p>⎤
2 ⎥.</p>
      <p>⎥
∆ ⎦
3∆(</p>
      <p>⎤
2 ⎥ .</p>
      <p>⎥
3∆ ⎦
⎣ 2</p>
      <p>A clock-clock drift pair has two variance terms and one covariance term as well. Two components
of clock phase error 2, the white noise spectral density leading to random walk velocity error and 3,
the white noise spectral density leading to a random walk clock frequency error plus white noise clock
drift form another submatrix together</p>
      <p>2</p>
      <p>The process noise covariance matrix  is a 8 × 8 matrix and it is the combination of -./0 of all
users
• Compute Kalman gain
After predicting, the next step is to compute the Kalman gain +</p>
      <p>-./0
 = P ⋮

⋯
⋱
⋯

⋮ R.</p>
      <p>
        -./0
+ = ,+ *(,+ * + ), ',
(
        <xref ref-type="bibr" rid="ref10">10</xref>
        )
(
        <xref ref-type="bibr" rid="ref11">11</xref>
        )
(
        <xref ref-type="bibr" rid="ref12">12</xref>
        )
(
        <xref ref-type="bibr" rid="ref13">13</xref>
        )
(
        <xref ref-type="bibr" rid="ref14">14</xref>
        )
(
        <xref ref-type="bibr" rid="ref15">15</xref>
        )
where  is geometry matrix of the observation model,  is measurement error covariance matrix. 
matrix can be expanded as
 = c4d ,
5
the construction of submatrices 4 and 5 are based on the observation equations (
        <xref ref-type="bibr" rid="ref1">1</xref>
        ) and (
        <xref ref-type="bibr" rid="ref2">2</xref>
        ). Since the
pseudorange and local range observation equations are nonlinear in the receiver position coordinates, a
Taylor series expansion is applied. The geometry matrix of pseudorange 4 can be built by
4,'
4 = P ⋮

⋯
⋱
⋯

⋮ R
4,)
      </p>
      <p>'
'
4,' = P ⋮
'"!
where 4,' is geometry matrix of user 1, ' is the number of pseudorange measurements of user 1, ''
is given by
where ', ', ' describe the position of satellite 1. The geometry matrix of local range 5 can be built
by
'' = f
' − ' , 0, ' − ' , 0,
'' ''
' − '
''</p>
      <p>, 0g,
',(
⎡
5 = ⎢',1
⎢ ⋮
⎣',)
−',(

⋮</p>
      <p>−',1
⋮

…

⋮

…
…
⋮
…
',( = f
' − ( , 0, ' − ( , 0,
',( ',(
' − (
',(

 ⎤</p>
      <p>⎥ ,
⋮ ⎥
−',) ⎦
, 0, 0, 0g .</p>
      <p>(
4,','
(
4,' = P ⋮
0
⋯
⋱
⋯
0
⋮
(
4,',"!</p>
      <p>R ,
(
where 4,',' is pseudorange measurement error square of satellite 1 tracked by user 1.
•</p>
      <p>
        Update
(
        <xref ref-type="bibr" rid="ref16">16</xref>
        )
(17)
(18)
(19)
(21)
(22)
(23)
where
Assuming the number of pseudorange measurements of the user group is ,  is a ( +  − 1) × 8
matrix.
      </p>
      <p>The determination of the  matrix is related to the noise of the measurements. 4 and 5 are
submatrices of  matrix, representing measurement error of pseudorange and local range respectively
4 
 = c d . (20)
 5
The pseudorange measurement errors come from various sources, so it is difficult to get the probability
distribution of the measurement errors. However, the standard deviation of pseudorange measurement
error 4 can be calculated using the measured carrier-to-noise-density ratio (/0). In [14], a stochastic
SIGMA − ∆ model is proposed</p>
      <p>4( = C6 ∙ 10, (8/:&amp;)/'&amp;,
where m indicates the L6 signal (L' or L( ) and the effect of the oscillator stability on the phase
variances is considered negligible. C6 consists of the carrier loop noise bandwidth and a conversion
term from cycle to meter which includes the L6 wavelength. Under the assumption that the
pseudorange measurement errors are uncorrelated with each other, the 4 is a  ×  diagonal matrix.
The local range measurement error 5 depends on sensor error models. Assuming the local range
measurement errors are independent, the 5 is a ( − 1) × ( − 1) diagonal matrix as well
(
4,'
4 = P ⋮

⋯
⋱
⋯

⋮ R
4(,)</p>
      <p>(
5,',(
5 = P ⋮
0
⋯
⋱
⋯
0
⋮ R,
5(,',)
where 5,',( is error square of local range measurement from user 1 to user 2, 4(,' is a block diagonal
(
matrix of the form</p>
      <p>The last step is to update the estimated state vector and error covariance
6+ = 6,+ + +(+ − 6,+ )</p>
      <p>+ = ,+ − +,+ ,
where + is pseudorange and local range measurements. In this step, the estimated user state vector and
error covariance matrix will be updated and they can be set as the initials for the next measurement
epoch.</p>
      <p>
        There are many factors that affect the satellite positioning accuracy and it makes the theoretical
performance analysis difficult. Therefore, a Dilution of Precision (DOP) is used to simplify the analysis
process. DOP is an important factor used to determine the positioning accuracy, but it only depends on
the geometry of the satellites. To analyze the impact of both satellite geometry and user geometry, a
CDOP is proposed in [9]. A collaborative weight coefficient matrix  can be computed by using
geometry matrix defined in (
        <xref ref-type="bibr" rid="ref15">15</xref>
        ).
      </p>
      <p>= (*), '.</p>
      <p>Matrix  contains the contributions from the number of users in a user group, user distributions,
visible satellites from each user and satellite geometries. The diagonal elements of matrix  are the
variances of estimated users’ position and clock bias, the off-diagonal elements indicate the degree of
correlation. It can be expanded as
(24)
(25)
(26)
(27)
(28)
(29)
where ' is the collaborative weight coefficient matrix for the user 1. The Collaborative Geometric
Dilution of Precision (CGDOP) of user 1 is defined as</p>
      <p>' = | ℎ','' + ℎ',(( + ℎ',11 + ℎ',&lt;&lt; ,
where ℎ','' is the first diagonal elements of '. In order to get Collaborative East Dilution of Precision
(CEDOP) and Collaborative North Dilution of Precision (CNDOP), the current
earth-centered-earthfixed coordinate should be transformed to east–north–under coordinate system by an orthogonal
rotation matrix [15].</p>
      <p>' = | ℎ=',''
' = | ℎ=',(( ,
where ℎ=','' represent the first diagonal elements of ' after transformation.</p>
    </sec>
    <sec id="sec-3">
      <title>3. Multipath Detection</title>
      <p>As mentioned in [10], NLOS and multipath-contaminated measurements produce a less consistent
navigation solution than direct Line-of-Sight (LOS) measurements. Multipath detection aims to identify
the set of measurements, which are affected by multipath and to either discard them or reduce their
weight in (20) when calculating the position of users. Therefore, the multipath detection algorithm can
be merged into the EKF after the prediction step.</p>
      <p>
        A new vector "! combining pseudorange measurements and local range measurements of user 1
'
can be defined according to (
        <xref ref-type="bibr" rid="ref1">1</xref>
        ) and (
        <xref ref-type="bibr" rid="ref2">2</xref>
        )
 = v( ,'
      </p>
      <p>⋮
'
) ,'
',(
(</p>
      <p>⋮
) ,(
⋯
…
⋱
⋯
',)
( ,) w,</p>
      <p>⋮
)
'"! = f'"! g
',)</p>
      <p>(
'"! = f '"! g + =∆6=+, + Z'\ + f4(5,,''g + Z"!\,</p>
      <p>',)  
where ',( is the first six elements of ',( in (19). Since the components constructing "! are
=
'
independent and considering the pseudorange measurements and the local range measurements are
independent as well, the distribution of the vector '"! is expressed as
where
(30)
(31)
(32)
(33)
(34)
(35)
∆6=+, = [∆+=, , 0, ∆+=, , 0, ∆+=, , 0]*</p>
      <p>*
= = 7'', … , '"!, '=,( , … , '=,) &lt; .</p>
      <p>'"!~(, ),
 = f '"! g + Z'\ + Z"!\
',)</p>
      <p>(
 = ==* + f4,'


5</p>
    </sec>
    <sec id="sec-4">
      <title>4. Simulation Framework</title>
      <p>To analyze the performance of CoPos, a Matlab-based simulation framework is set up according to
the TEPLITS simulator, that is based on the dedicated vehicle dynamic simulator CarMaker and the
GNSS simulator Spirent.</p>
      <p>• Carmaker</p>
      <p>CarMaker, developed by IPG Automotive, is an advanced software package for model-based design,
testing, and development in the field of vehicle dynamics. It provides powerful and real-time capable
The covariance matrix  of predicted state error ∆6=+, is diagonal matrix. By comparing the /0 to
the preset threshold, the vector "! can be divided into two groups, one contains ' possible NLOS
'
measurements and the other has ( LOS measurements and local range measurements in total. The
measurements in group 1 and group 2 can be approximated by a Gaussian distribution
the size of ', ( , '', '( , (' and (( are ' × 1, ( × 1, ' × ', ' × ( , ( × ' and ( ×
( respectively. If there is no NLOS delay in group 1, the conditional variable &gt;!| &gt;" should have a
conditional Gaussian distribution [16] with mean &gt;! and variance &gt;!
Therefore, a normalized detection variable &gt;! is defined to check if the pseudorange measurements in
group 1 are corrupted by NLOS delays. &gt;! is the square of the Mahalanobis distance (MD)
&gt;! = &gt;! − &gt;!*,&gt;! &gt;! − &gt;!.</p>
      <p>If the detection statistics has a noncentral ( distribution with degree of freedom of ' , the
pseudorange measurements in group 1 contain NLOS delay. Otherwise, there is no NLOS delay in
group 1. However, &gt;! is only the sum of MD squares of all measurements in group 1. In order to
distinguish which measurement is corrupted by NLOS delay, the presented multipath detection
algorithm should be applied to each measurement individually. If one measurement has delay caused
by NLOS, the corresponding variance of pseudorange measurement error in (22) should be changed to
reduce the weight of this measurement in positioning.
models for vehicles, roads, drivers and traffic. Using CarMaker, real-world test scenarios including the
entire surrounding environment can be modeled accurately. When running the simulation, it is possible
to visualize real-time quantities of vehicle model, trailer, brake system, powertrain, driving maneuver,
etc. by IPG-Control. Vehicle motion parameters including position, velocity and acceleration can be
recorded into user motion files, which can be used as input for Spirent simulator to generate GNSS
measurements. Besides, an ideal local range measurement can be computed by using the reference
coordinates in the user motion files of every two vehicles. Measurements of sensors are accessible as
well. The fused sensor distance measurement can be later used as a local range measurement for CoPos.
• Spirent</p>
      <p>Spirent GNSS simulator is widely used to simulate the GNSS constellations, transmitted signals and
received signals by a static or dynamic receiver. It enables receiver performance test in a controlled
laboratory setting that is otherwise impossible with live GNSS signals. Spirent GSS7000 simulator
takes vehicle motion or vehicle reference coordinates as input, simulates GNSS signals to be received
by a GNSS receiver. The simulator can generate atmospheric delay in measurements and can
incorporate receiver clock bias if a real receiver is not available in the simulation. The Spirent GSS7000
simulator provides several observable types of different systems. Satellite constellation, atmospheric
model, antenna pattern, scenario can be easily specified to meet demands of research and development.
In addition, a real receiver makes it possible to simulate multipath and more realistic signals via an
external receiver port.</p>
      <p>The whole simulation procedure is shown in Figure 3. CarMaker is used to generate the user motion
files, which are used as input to the Spirent simulator to get RINEX files (observation and navigation).
For each simulation epoch, one extracts GNSS measurements from RINEX observation files, computes
the satellites’ position and velocity and calculates local ranges from vehicles’ reference position in user
motion files. Finally, the EKF is used to compute the position of each vehicle as described above.
• Ray Tracing Software</p>
      <p>The raytracing is performed according to geometrical considerations. Since the true position of every
vehicle as well as position of every satellite are known precisely in the simulation environment, the line
of sight rays can be determined. The echoes (the reflected rays) are subsequently determined by the
mutual geometry of satellites, reflectors and receivers. The reflecting buildings are modelled as
concrete, with the corresponding permittivity and conductivity. After the reflected rays are determined,
the corresponding signal parameters, namely path delay, the reflection loss and Doppler offset are
calculated for each reflected ray. The signals with the calculated parameters are simulated by Spirent
and processed by a GNSS receiver.</p>
      <p>The above method allows ray tracing of complicated reflection surfaces. Figure 5 shows an example
of a reflecting surface (a wall) used in the simulation. The height profile of the walls is generated from
a Rician distribution with a certain mean height and standard deviation, given values are typically, 12m
and 3m, as buildings of approximately 3-4 stories in the city.</p>
      <p>It should be noted that the environment simulated corresponds to harsh environment with severe
multipath and low share of line of sight GNSS signals. Table 1 below provides an overview of the
statistics of signal types in both scenarios.</p>
    </sec>
    <sec id="sec-5">
      <title>5. Performance Analysis</title>
      <p>In this section, the influence of user geometry and number of users are given to analyze the
positioning results of CoPos and SPP of one ego vehicle. The positioning results of SPP are given by
EKF using pseudorange measurements of the ego vehicle.</p>
      <p>• Influence of user geometry</p>
      <p>A scenario with five vehicles moving in a straight line with a constant velocity of 30km/h is
simulated in CarMaker. Two vehicles follow the ego vehicle and the other two vehicles move in parallel
with the ego vehicle in an open-sky environment (see Figure 6). The local ranges between every vehicle
to its neighbors are about 30 meters. The duration of the simulation is 120 seconds. As shown in Figure
6, different vehicle combinations are selected to do CoPos and the positioning accuracy of the ego
vehicle in North-South and East-West directions is analyzed by comparing the positioning results
obtained by SPP and CoPos with its reference position obtained by CarMaker. The GDOP of SPP and
CGDOP of CoPos are compared with each other as well.</p>
      <p>One can see clearly from this scenario that after the initial convergence of the solution caused by
EKF, the accuracy of CoPos is superior to the SPP in both East-West and North-South directions. The
increasing position error over time is because of the changing of satellite geometry. Different
geometries of vehicle group have different performances. In geometry 1, two vehicles are located in the
west direction of the ego vehicle, the positioning result has a significant improvement in East-West
direction, however, in North-South direction which keeps almost unchanged. The local range
measurements in East-West direction are additional measurements for the ego vehicle other than the
satellite measurements, which can decrease the CGDOP in that direction. The lower value of CGDOP
means the better confidence in positioning solution, as a result, the positioning accuracy can be
improved in the direction of the local range component. The geometry 2 contains three vehicles and
two of them are in the north of the ego vehicle. The performance of CoPos is opposite to geometry 1.
The local range measurements are in the North-South direction therefore the improvement of
positioning accuracy is mainly in the North-South direction and the performance of CGDOP provides
a consistent result. All the five vehicles in geometry 3 participate in CoPos and the positioning accuracy
of the ego vehicle is improved by about 0.5 meter in both East-West and North-South directions. The
CGDOP of geometry 3 also has a minimum value in two directions. The results indicate that the CoPos
performance is influenced by user geometry and the positioning accuracy will increase corresponding
to the direction of local range measurement.</p>
      <p>• Influence of the number of users</p>
      <p>By using CarMaker, a scenario with fifteen vehicles moving around a rectangle is built. The length
and width of this rectangle are 80 meters and 70 meters, respectively. Vehicles are distributed one by
one in an open-sky environment. The average velocity of each vehicle is about 20km/h, it will slow
down when turning and speed up after entering the straight road. The duration of the whole simulation
is 120 seconds. In this scenario, different numbers of vehicles are selected to do CoPos and the
positioning results of the ego vehicle that is marked by a green circle are presented in Figure 7.</p>
      <p>It is obvious that SPP error, the dark blue curve, is larger than CoPos ones. The positioning results
of CoPos have a wavy performance, the maximum value of each curve occurs when the local ranges
are basically in the same direction. Since the geometry of vehicle group changes with time, the
positioning results have the corresponding trend. The wavy performance becomes weaker as the number
of vehicles increases which means the local ranges are in almost all directions. The small ups and downs
of the curves are because of the changing of velocity when vehicles enter the crossroads. With
measurements from other fourteen vehicles, the positioning error of the ego vehicle is greatly decreased
to about 1.3 meters, compared with SPP accuracy 2 meters. It indicates the accuracy of CoPos increases
with the growing number of measurements.</p>
      <p>• Multipath mitigation</p>
      <p>As shown above, user geometry influences the positioning of users in CoPos. Figure 8 shows three
different constellations of five cars used for simulation of multipath scenarios.</p>
      <p>In the Figures 9 - 14 below the results of simulation of different user geometries for two scenarios
are given. The first scenario is movement in a square in urban canyon, the second one is movement in
a straight line with two walls parallel to the street. It is clear from the Figures 9 - 14 that CoPos provides
better positioning results than SPP, however, only a combination of multipath mitigation algorithm with
CoPos provides positioning significantly better than SPP. The following abbreviations are used in
Figures 9 - 14: CP for CoPos, ND for NLOS detection.</p>
      <p>(b) ND-SPP
(c) CP
(d) ND-CP</p>
    </sec>
    <sec id="sec-6">
      <title>6. Conclusions</title>
      <p>In this paper, observation models of pseudorange and local range and a collaborative positioning
method are presented. A simulation framework based on CarMaker and Spirent is developed. The
performance of CoPos is analyzed by using the defined CDOP and the positioning results. The
simulation in two scenarios verifies that the positioning accuracy of CoPos is better than SPP and two
factors affect its performance: the user geometry and the number of users. The user geometry in
different directions will improve the positioning accuracy in the corresponding directions and more
dispersed users taking part in CoPos can improve the positioning accuracy significantly.</p>
      <p>The multipath mitigation in CoPos is considered too. It is shown with simulations that combination
of CoPos and multipath mitigation improves the positioning results significantly even for the scenarios
of harsh urban canyon environment.</p>
      <p>However, the effect of more vehicles making use of the V2X channel may lead to trade-off, as
messages are more likely to be dropped. This problem along with realistic communication channel
simulation is subject to future work.</p>
    </sec>
    <sec id="sec-7">
      <title>7. Acknowledgements</title>
      <p>Authors would like to express their great appreciation to professor Urs Hugentobler (Technical
University of Munich) for his patience, enthusiastic encouragement and useful critiques of this research
work.</p>
    </sec>
    <sec id="sec-8">
      <title>8. References</title>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>G.</given-names>
            <surname>Seco-Granados</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Lopez-Salcedo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Jimenez-Banos</surname>
          </string-name>
          and
          <string-name>
            <given-names>G.</given-names>
            <surname>Lopez-Risueno</surname>
          </string-name>
          .
          <article-title>"Challenges in indoor global navigation satellite systems: Unveiling its core features in signal processing</article-title>
          .
          <source>" IEEE Signal Processing Magazine 29.2</source>
          (
          <year>2012</year>
          ):
          <fpage>108</fpage>
          -
          <lpage>131</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>N.</given-names>
            <surname>Patwari</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.O.</given-names>
            <surname>Hero</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Perkins</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N. S.</given-names>
            <surname>Correal</surname>
          </string-name>
          , and
          <string-name>
            <surname>R. J.</surname>
          </string-name>
          <article-title>O'dea. "Relative location estimation in wireless sensor networks</article-title>
          .
          <source>" IEEE Transactions on Signal Processing 51.8</source>
          (
          <year>2003</year>
          ):
          <fpage>2137</fpage>
          -
          <lpage>2148</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>N.</given-names>
            <surname>Patwari</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.N.</given-names>
            <surname>Ash</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Spyros</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.O.</given-names>
            <surname>Hero</surname>
          </string-name>
          , L. Randolph, Moses, and
          <string-name>
            <given-names>N.S.</given-names>
            <surname>Correal</surname>
          </string-name>
          .
          <article-title>"Locating the nodes: Cooperative localization in wireless sensor networks</article-title>
          .
          <source>" IEEE Signal Processing Magazine 22.4</source>
          (
          <year>2005</year>
          ):
          <fpage>54</fpage>
          -
          <lpage>69</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>A. I.</given-names>
            <surname>Mourikis</surname>
          </string-name>
          and
          <string-name>
            <surname>S. I. Roumeliotis.</surname>
          </string-name>
          <article-title>"Performance analysis of multirobot cooperative localization</article-title>
          .
          <source>" IEEE Transactions on Robotics 22.4</source>
          (
          <year>2006</year>
          ):
          <fpage>666</fpage>
          -
          <lpage>681</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>F. de Ponte</given-names>
            <surname>Müller</surname>
          </string-name>
          .
          <article-title>"Survey on ranging sensors and cooperative techniques for relative positioning of vehicles</article-title>
          .
          <source>" Sensors 17.2</source>
          (
          <year>2017</year>
          ):
          <fpage>271</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>ETSI</given-names>
            <surname>TR</surname>
          </string-name>
          <article-title>103 562. "Intelligent Transport Systems (ITS); Vehicular Communications; Basic Set of Applications; Analysis of the Collective Perception Service (CPS); Informative Report for the Collective Perception Service." European Telecommunications Standards Institute (ETSI</article-title>
          ),
          <year>2019</year>
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>P.D.</given-names>
            <surname>Groves</surname>
          </string-name>
          and
          <string-name>
            <given-names>Z.</given-names>
            <surname>Jiang</surname>
          </string-name>
          .
          <article-title>"Height aiding, C/N 0 weighting and consistency checking for GNSS NLOS and multipath mitigation in urban areas."</article-title>
          <source>The Journal of Navigation 66.5</source>
          (
          <year>2013</year>
          ):
          <fpage>653</fpage>
          -
          <lpage>669</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>B.</given-names>
            <surname>Huang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Z.</given-names>
            <surname>Yao</surname>
          </string-name>
          ,
          <string-name>
            <given-names>X.</given-names>
            <surname>Cui</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Lu</surname>
          </string-name>
          and
          <string-name>
            <given-names>J.</given-names>
            <surname>Guo</surname>
          </string-name>
          .
          <article-title>"GNSS collaborative positioning and performance analysis." 2014 27th International Technical Meeting of The Satellite Division of the Institute of Navigation (ION GNSS+</article-title>
          <year>2014</year>
          ), Florida, USA,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>B.</given-names>
            <surname>Huang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Z.</given-names>
            <surname>Yao</surname>
          </string-name>
          ,
          <string-name>
            <given-names>X.</given-names>
            <surname>Cui</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Lu</surname>
          </string-name>
          .
          <article-title>"Dilution of precision analysis for GNSS collaborative positioning</article-title>
          .
          <source>" IEEE Transactions Vehicular Technology 65.5</source>
          (
          <year>2015</year>
          ):
          <fpage>3401</fpage>
          -
          <lpage>3415</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>H.</given-names>
            <surname>Ko</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Kim</surname>
          </string-name>
          , and
          <string-name>
            <given-names>S.H.</given-names>
            <surname>Kong</surname>
          </string-name>
          .
          <article-title>"GNSS multipath-resistant cooperative navigation in urban vehicular networks</article-title>
          .
          <source>" IEEE Transactions Vehicular Technology 64.12</source>
          (
          <year>2015</year>
          ):
          <fpage>5450</fpage>
          -
          <lpage>5463</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>F. A.</given-names>
            <surname>Schiegg</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Li</surname>
          </string-name>
          ,
          <string-name>
            <given-names>and N.</given-names>
            <surname>Mikhaylov</surname>
          </string-name>
          .
          <article-title>"TEPLITS: A comprehensive Test Platform for Intelligent Transportation Systems</article-title>
          .
          <article-title>" 2020 IEEE 90th Vehicular Technology Conference (VTC2020-Spring)</article-title>
          , Antwerp, Belgium,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>F. A.</given-names>
            <surname>Schiegg</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Krost</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Jesenski</surname>
          </string-name>
          and
          <string-name>
            <given-names>J.</given-names>
            <surname>Frye</surname>
          </string-name>
          .
          <article-title>"A Novel Simulation Framework for the Design</article-title>
          and
          <source>Testing of Advanced Driver Assistance Systems." 2019 IEEE 90th Vehicular Technology Conference (VTC2019-Fall)</source>
          , Honolulu,
          <string-name>
            <surname>HI</surname>
          </string-name>
          , USA,
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>R.</given-names>
            <surname>Brown</surname>
          </string-name>
          and P. Hwang,
          <article-title>Introduction to random signals and applied Kalman filtering</article-title>
          , Wiley, New York, NY,
          <year>1992</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>F. K.</given-names>
            <surname>Brunner</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Hartinger</surname>
          </string-name>
          , and
          <string-name>
            <given-names>L.</given-names>
            <surname>Troyer</surname>
          </string-name>
          .
          <article-title>"GPS signal diffraction modelling: the stochastic SIGMA-Δ model</article-title>
          .
          <source>" Journal of Geodesy 73.5</source>
          (
          <year>1999</year>
          ):
          <fpage>259</fpage>
          -
          <lpage>267</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>J. J.</given-names>
            <surname>Spiker</surname>
          </string-name>
          ,
          <source>The Global Positioning System: Theory and Application</source>
          , American Institute of Aeronautics and Astronautics: Washington, DC, USA,
          <year>1996</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>A.</given-names>
            <surname>Papoulis</surname>
          </string-name>
          , Probability,
          <string-name>
            <given-names>Random</given-names>
            <surname>Variables</surname>
          </string-name>
          , and Stochastic Processes, 3rd ed.,
          <string-name>
            <surname>McGraw-Hill</surname>
          </string-name>
          , New York, NY,
          <year>1991</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>