1 Introduction

Since the last century, the global navigation satellite system (GNSS) and its applications have developed rapidly. As an important infrastructure to ensure people's livelihood and economy, the GNSS is widely used in electric power, agriculture, water conservancy, transportation and other livelihood fields to provide users with positioning, navigation and timing (PNT) service (Liu et al. 2018). However, due to the weak received power of satellite signals, even simple jamming can interfere with the GNSS. With the increasing GNSS reliance, providing secure and trustworthy satellite navigation will be an important future challenge (Hein 2020). For this reason, China and the United States have successively proposed the concept of resilient PNT (Yang et al. 2020, Yang 2018, U.S. Department of Security Homeland 2020) to improve the reliability and safety of applications in key fields such as sea, land, air, and space. Therefore, research on GNSS augmentation and alternative backup systems is becoming increasingly important as a link in resilient PNT. Alternative backup systems for GNSS include navigation systems using inertial measurement units (IMUs), airborne augmentation systems, ground-based radio navigation systems, and pseudolite systems. A pseudolite system can not only serve as an independent backup system to provide users with PNT services (Liu et al. 2022) but can also be used to improve the accuracy and redundancy of user positioning in areas where satellite navigation signals are blocked (Lee et al. 2005; Fan et al. 2022). At the same time, because a pseudolite system is much closer to the ground than satellites and has the ability to control the signal transmission power, it can be used as an anti-jamming system to provide PNT services for areas that cannot receive GNSS signals due to interference (Kim et al. 2014).

Of course, as an alternative system, the frequency of pseudolite may coincide with the GNSS frequency, moreover, because the signal power of pseudolite is stronger than the GNSS signal, the pseudolite signal may interfere with the GNSS signal. In addition, because the signal power of pseudolite received by the distant receiver is weak, and the signal power received by the nearer receiver is strong, there is also a near-far problem for receivers (Cobb HS 1997). For these problems, we use pulse signals, which can cope with the above problems appropriately with a proper duty cycle, and have been successfully applied in the GPS pseudolite systems (Farley and Carlson 1998). The details of pulse signal design can be found in O'Driscoll et al. 2011 and O'Driscoll et al. 2014, and will not be the focus of this research.

Pseudolite systems can be divided into ground-based and airborne systems according to their location. Because ground-based pseudolite systems are located on the surface of the Earth and their positions are stationary, they are easily blocked by terrain, so the service range of ground-based pseudolite systems is relatively small (Kyuman et al. 2015, Huang et al. 2019 and J.Liu et al. 2021). Therefore, ground-based pseudolite systems are generally used as indoor positioning or as a complement to GNSS satellite positioning to enhance the user's positioning performance (Guo et al. 2018, Sun et al. 2021 and Sun 2022). Compared with ground-based systems, airborne pseudolite platforms are higher and more flexible, which can overcome the above shortcomings. Airplanes, airships or balloons can be used to configure airborne pseudolite systems (Wang 2002). Byungwoon et al. 2008 showed the feasibility of a regional navigation system using aircraft and a pseudolite system, and a military navigation system with anti-jamming capability using unmanned aerial vehicles (UAVs) was demonstrated by Tuohino et al. (2000). With the development of UAV technology, the camera, autonomous flight and path planning capabilities of UAVs can facilitate the construction of airborne-based pseudolite systems, and the simplicity of operation can meet the demand for ready-to-use systems, moreover, the cheap price makes system construction more desirable. In general, the use of UAVs as a carrier platform for airborne-based pseudolite systems is a trend in research development.

The use of UAVs with pseudolites allows flexible deployment of pseudolite locations, but as an independent backup navigation system, the specific location of the pseudolite needs to be optimized in order to meet user positioning requirements. According to Reid et al. 2018, position error is the product of two factors, namely, geometry and range errors, which can be expressed as \(\sigma { = }GDOP \cdot \sigma_{URE}\), where \(\sigma\) is the user root-mean-square (RMS) positioning error, the geometric dilution of precision (GDOP) factors are derived from terms related to the user-satellite geometry, and the URE is the uncertainty in the ranging signal. The geometric distribution of pseudolite systems with independent networking can directly affect user positioning accuracy. The pros and cons of a pseudolite deployment scheme can be directly mapped to user positioning results, as a large user GDOP can amplify the user ranging error into the positioning error (Meng et al. 2004 and Teng et al. 2016). Moreover, considering the different measurements accuracy and variance of satellites, especially of those belonging to different constellations, there is also weighted GDOP (Teng et al. 2018). But GDOP has special geometric properties and when constructing an airborne pseudolite system to provide services independently, there is only one constellation, so our method focuses mainly on GDOP.

One way to deploy pseudolite systems is to optimize their specific positions based on empirical methods, such as Wei et al. (2009), She-Sheng et al. (2013), Jiang et al. (2017) and Feng et al. (2014). The empirical methods in there mean the deployment of pseudolites using some classical configurations such as a regular triangular pyramid. Specifically, Wei et al. (2009) proposed an empirical proposal for four pseudolite systems, in which one pseudolite system is located at the top of the positioning center with a height of the maximum flyable height of an aircraft, and the remaining three pseudolite systems evenly distributed in an equilateral triangle configuration at the minimum flyable height. The optimized layout of five pseudolite systems (She-Sheng et al. 2013) was realized by adding a pseudolite system to the Wei et al. (2009) scheme, locating it directly above the center position but at the lowest altitude. By deploying pseudolite systems through empirical methods, a deployment plan can be obtained quickly, but there is no specific theoretical derivation process for empirical methods, so these methods may have good results in specific application situations, but most lack universality and robustness.

Another common method is using optimization algorithms to determine the specific positions of pseudolite systems, such as Jiancai et al. (2016), Duan (2012), Tiwary et al. (2013) and Song et al. (2016), which use adaptive genetic algorithms or improved adaptive genetic algorithms to determine locations. Moreover, Li et al. (2021) used the non-dominant sorting genetic algorithm II (NSGA-II) to optimize the GNSS pseudolite system layout. A particle swarm optimization (PSO)-based method was used by Wang et al. (2017), while an artificial neural network (ANN) method was used by Zhao et al. (2021). Optimization algorithms can often obtain results that users are satisfied with, but they also have a common flaw, that is, they take a long time to obtain the result; moreover, the result is always random. This feature seriously limits the maneuverability of airborne pseudolite system platforms and cannot satisfy the requirement of being ready-to-use at the point of demand.

In the following sections, we propose a rapidly deployable pseudolite system layout optimization method. Moreover, we analyze the effectiveness of the proposed method in detail using mathematical geometry and function polarization methods, and verify the feasibility of the method through subsequent simulations and experimental measurements using UAV.

1.1 Optimization goals for regional users

One of the prerequisites for a pseudolite system to become a backup navigation system is the ability to provide users with at least four or more satellite signals. The pseudolite system layout optimization problem is similar to constellation optimization, such as the Low Earth orbit (LEO) constellation optimization problems in Ma et al. (2020) and Guan et al. (2020). When providing positioning and timing services for users in a specific area, it is necessary to ensure the number and geometric distribution of visible satellites for users. We assume that there are \(M\) users who are evenly distributed in the area that needs to be served, and they are represented by \(P_{i} ,i = 1,2,...,M\) in Fig. 1.

Fig. 1
figure 1

Diagram of airborne pseudolite system signal coverage

To ensure the overall performance of user positioning in an area, we need to minimize the mean and mean squared error GDOP values for users; therefore, the specific optimization objectives of the pseudolite system can be expressed as follows:

(1) The average GDOP of users in the area is the smallest, which is

$$ \min \frac{{\sum\nolimits_{i = 1}^{M} {GDOP_{i} } }}{M} $$
(1)

where \(GDOP_{i}\) indicates the GDOP value of the i-th user in the target region.

(2) The standard deviation (STD) of the GDOP value is the smallest, which is

$$ \min S = \sqrt {\frac{1}{M - 1}\sum\nolimits_{i = 1}^{M} {(GDOP_{i} - \overline{GDOP} )^{2} } } $$
(2)

where \(\overline{GDOP}\) represents the average GDOP of \(M\) users in the target area.

We specifically explain the expression and geometric meaning of GDOP here. When receiving a pseudolite signal, a receiver uses the pseudolite measurements to solve the positioning equation, and the positioning error covariance matrix (Arlagadda et al. 2000) is

$$ {\mathbf{G}} = ({\mathbf{H}}^{T} {\mathbf{H}})^{ - 1} = \left[ {\begin{array}{*{20}c} {g_{11} } & {g_{12} } & {g_{13} } & {g_{14} } \\ {g_{21} } & {g_{22} } & {g_{23} } & {g_{24} } \\ {g_{31} } & {g_{32} } & {g_{33} } & {g_{34} } \\ {g_{41} } & {g_{42} } & {g_{43} } & {g_{44} } \\ \end{array} } \right] $$
(3)

where \(g_{ij}\) is the element of the i-th row and the j-th column of the \({\mathbf{G}}\), and \({\mathbf{H}}\) is the observation matrix in the navigation solution equation.

The GDOP value is expressed as

$$ \begin{gathered} GDOP = \sqrt {{\text{g}}_{11} + g_{22} {\text{ + g}}_{33} + g_{44} } \\ = \sqrt {Tr({\mathbf{H}}^{T} {\mathbf{H}})^{ - 1} } \\ = \sqrt {\frac{{Tr[adj({\mathbf{H}}^{T} {\mathbf{H}})]}}{{\det ({\mathbf{H}}^{T} {\mathbf{H}})}}} \\ \end{gathered} $$
(4)

where \(( \cdot )^{T}\) represents the conjugate transpose of a matrix, \(adj( \cdot )\) represents the conjugate of a matrix,\(Tr\left( \cdot \right)\) represents the trace of a matrix, and \(\det ( \cdot )\) represents the determinant of a matrix.

The geometry of quadruple coverage, for example, is shown in Fig. 2.

Fig. 2
figure 2

Geometry of GDOP values

According to Hsu (1994) and Massatt et al. (1990), the GDOP is related to a ratio, whose denominator represents the volume of simplex ABCD enclosed by each vertex.

1.2 Solution space of pseudolite system positioning

According to the size of the area that the signal needs to cover and the placement height range of the UAV, the solution space of the pseudolite system positions can be determined. We assume that the elevation cutoff angle of the receivers is \(\theta\) and the height of a pseudolite system is \(h\), as shown in Fig. 3. Moreover, the area that the signal needs to cover is a circle of radius \(r\). The center of the circle is the origin of the coordinate system we use for analysis, and the location of the pseudolite system \(SatPos\) is expressed as \((x,y,z)\).

Fig. 3
figure 3

Pseudolite system position solution space

Before optimizing the pseudolite system position, it is necessary to determine its possible solution space. The solution space means that only when pseudolite systems are located in this space can they be guaranteed to be received by all users in the area. Afterward, we can optimize the pseudolite system position in this solution space. When the pseudolite system signal can be received by users whose cutoff angle is \(\theta\), the circle formed by the intersection of the XOY plane and the cone whose vertex is the pseudolite system and whose slope is \(\theta\) must be able to contain the coverage area, so the pseudolite system location solution space shown in Fig. 3 can be expressed as

$$ \left\{ {\begin{array}{*{20}c} {x^{2} + y^{2} \le (\frac{z}{\tan (\theta )} - r)^{2} } \\ {h_{\min } \le z \le h_{\max } } \\ \end{array} } \right. $$
(5)

where \(h_{\min }\) is the lowest altitude at which the pseudolite system can be deployed and \(h_{\max }\) indicates the maximum altitude. When the pseudolite system signal can cover the target area, the pseudolite system position \({\text{SatPos}}\) must belong to the solution space \({\mathbf{V}}\), which can be written as \(SatPos \in {\mathbf{V}}\).

1.3 Location layout method

When the system provides positioning services for users in an area, there must be a user in the area whose GDOP is the smallest among all users. The core idea of the algorithm is to ensure that the user in the center of the area obtains the best positioning accuracy, that is, the GDOP of the user in the center of area is the smallest. When the GDOP value at the center has the minimum value, the GDOP around the center increases gradually. Based on the above thinking, it is necessary to determine what condition \({\mathbf{H}}\) should be satisfied so the GDOP has the minimum value.

The problem of finding the minimum value of the GDOP is essentially a problem of finding the extremum of a function. From the previous section, we can see that the value of the GDOP is related to the volume of the simplex. Therefore, the problem of finding the minimum value of the GDOP can be equivalent to finding the maximum volume of the simplex (Hsu 1994 and Kihara et al. 1984). Different numbers of pseudolite systems have different simplex structures. Therefore, we introduce layout methods with four, five and more than five pseudolite systems.

1.3.1 Four pseudolite systems with quadruple coverage

First, we discuss how to form quadruple signal coverage in the target area when there are only 4 UAVs. To find the largest simplex volume is to find the maximum volume of the tetrahedron enclosed by the endpoints of each unit line-of-sight vector, shown in Fig. 2. Moreover, each endpoint is located on the spherical surface of a unit sphere.

Defining the height angle \(\vartheta \in (0^{^\circ } ,90^{^\circ } )\) of the boundary value of the solution space as

$$ \vartheta = \arctan \left( {\frac{h}{{\frac{h}{\tan (\theta )} - r}}} \right) $$
(6)

when assuming that

$$ f(h) = \frac{h}{{\frac{h}{\tan (\theta )} - r}} $$
(7)

where \(\theta\) is the elevation cutoff angle given by the receivers, and is a constant, so taking the derivative of \(h\) with \(f(h)\), we obtain

$$ f^{\prime}(h) = - \frac{{r \cdot \tan (\theta )^{2} }}{{(h - r \cdot \tan (\theta ))^{2} }} $$
(8)

Equation (8) shows that \(f(h)\) is monotonically decreases as \(h\) increases, as does \(\vartheta\). According to the (5), when the condition \(SatPos \in {\mathbf{V}}\) is satisfied, only when the triangular pyramid ABCD is distributed in the upper half of the unit sphere can it be ensured that all users in the target area can receive a pseudolite signal. Assuming that \(z_{0}\) is

$$ \vartheta_{0} = \arctan \left( {\frac{{h_{\max } }}{{\frac{{h_{\max } }}{\tan (\theta )} - r}}} \right) $$
(9)
$$ z_{0} = \sin (\vartheta_{0} ) $$
(10)

Therefore, when the condition \(1 \ge z \ge z_{0}\) is satisfied, all users can receive a pseudolite signal.

The triangle formed by any three points of ABCD must be the inscribed triangle of the circular section of the sphere. Moreover, the inscribed triangle with the largest area must be an equilateral triangle, and the larger the radius of the circumscribed circle is, the larger the area. Here, we assume that the triangle formed by ABC is the base of tetrahedron ABCD. When finding the maximum volume of ABCD, the area of the bottom surface \(\Delta\) ABC and the distance from vertex D to the bottom surface \(\Delta\) ABC should be the largest. Therefore, \(\Delta\) ABC is an equilateral triangle in the \(z = z_{0}\) plane because the radius of the section circle is the largest when \(z = z_{0}\). Moreover, when the height of ABCD is the largest, OD is perpendicular to \(\Delta\) ABC, which is shown in Fig. 4.

Fig. 4
figure 4

GDOP geometry of quadruple coverage considering the elevation cutoff angle

If the matrix \({\mathbf{H}}\) of the user at the origin is \({\mathbf{H}}_{0}\), then \({\mathbf{H}}_{0}\) in this case can be expressed as

$$ \begin{aligned} H_{0} &= \left[ {\begin{array}{*{20}c} 0 & 0 & 1 & { - 1} \\ 0 & { - \sqrt {1 - z_{0}^{2} } } & {z_{0} } & { - 1} \\ { - \frac{\sqrt 3 }{2}\sqrt {1 - z_{0}^{2} } } & {\frac{1}{2}\sqrt {1 - z_{0}^{2} } } & {z_{0} } & { - 1} \\ {\frac{\sqrt 3 }{2}\sqrt {1 - z_{0}^{2} } } & {\frac{1}{2}\sqrt {1 - z_{0}^{2} } } & {z_{0} } & { - 1} \\ \end{array} } \right] \\& = \left[ {\begin{array}{*{20}l} {{\vec{e}}_{0}^{ 1}} \hfill & { - 1} \hfill \\ {{\vec{e}}_{0}^{ 2} } \hfill & { - 1} \hfill \\ {{\vec{e}}_{0}^{ 3} } \hfill & { - 1} \hfill \\ {{\vec{e}}_{0}^{ 4} } \hfill & { - 1} \hfill \\ \end{array} } \right] \\ \end{aligned} $$
(11)

where \({\vec{e}}_{0}^{ - i}\) is the direction vector of the i-th pseudolite. According to (11), the pseudolite system position at this time can be assumed to be

$$ {\mathbf{Pos}} = \left[ {\begin{array}{*{20}c} 0 & 0 & {l_{1} } \\ 0 & { - \sqrt {1 - z_{0}^{2} } l_{2} } & {z_{0} l_{2} } \\ { - \frac{\sqrt 3 }{2}\sqrt {1 - z_{0}^{2} } l_{3} } & {\frac{1}{2}\sqrt {1 - z_{0}^{2} } l_{3} } & {z_{0} l_{3} } \\ { - \frac{\sqrt 3 }{2}\sqrt {1 - z_{0}^{2} } l_{4} } & {\frac{1}{2}\sqrt {1 - z_{0}^{2} } l_{4} } & {z_{0} l_{4} } \\ \end{array} } \right] $$
(12)

where \(l_{i}\) represents the distance between the i-th pseudolite system and the origin, so the pseudolite system locations can be shown in detail as in Fig. 5.

Fig. 5
figure 5

The relationship between the pseudolite system direction vector and position

Because the height angle (6) of the solution space boundary value is monotonically decreasing, when \(\vartheta = \vartheta_{0}\), there is only one point of intersection between the lines \(e_{0}^{i} ,i = 2,3,4\) and the solution space

$$ l_{2} = l_{3} = l_{4} = \frac{{h_{\max } }}{{z_{0} }} $$
(13)

Therefore, the pseudolite system position can be expressed as

$$ {\mathbf{Pos}} = \left[ {\begin{array}{*{20}c} 0 & 0 & \zeta \\ 0 & { - R^{\prime}} & {h_{\max } } \\ { - \frac{\sqrt 3 }{2}R^{\prime}} & {\frac{1}{2}R^{\prime}} & {h_{\max } } \\ {\frac{\sqrt 3 }{2}R^{\prime}} & {\frac{1}{2}R^{\prime}} & {h_{\max } } \\ \end{array} } \right] $$
(14)
$$ R^{\prime} = \frac{{h_{max} }}{\tan (\theta )} - r $$
(15)

where \(\zeta\) is the altitude of the first pseudolite system, which represents an unknown quantity to be optimized.

The matrix \({\mathbf{H}}\) of the user whose location is \((r\cos \varphi ,r\sin \varphi ,0)\) can be expressed as

$$ {\mathbf{H}} = \left[ {\begin{array}{*{20}c} {\frac{ - r\cos \varphi }{{q_{1} }}} & {\frac{ - r\sin \varphi }{{q_{1} }}} & {\frac{\varsigma }{{q_{1} }}} & { - 1} \\ {\frac{ - r\cos \varphi }{{q_{2} }}} & {\frac{{R^{\prime} - r\sin \varphi }}{{q_{2} }}} & {\frac{{h_{\max } }}{{q_{2} }}} & { - 1} \\ {\frac{{ - \frac{\sqrt 3 }{2}R^{\prime} - r\cos \varphi }}{{q_{3} }}} & {\frac{{ - \frac{1}{2}R^{\prime} - r\sin \varphi }}{{q_{3} }}} & {\frac{{h_{\max } }}{{q_{3} }}} & { - 1} \\ {\frac{{\frac{\sqrt 3 }{2}R^{\prime} - r\cos \varphi }}{{q_{4} }}} & {\frac{{ - \frac{1}{2}R^{\prime} - r\sin \varphi }}{{q_{4} }}} & {\frac{{h_{\max } }}{{q_{4} }}} & { - 1} \\ \end{array} } \right] $$
(16)
$$ q_{1} = \sqrt {r^{2} + \zeta^{2} } $$
(17)
$$ q_{2} = \sqrt {( - r\cos \varphi )^{2} + (R^{\prime} - r\sin \varphi )^{2} + h_{\max }^{2} } $$
(18)
$$ q_{3} = \sqrt {( - \frac{\sqrt 3 }{2}R^{\prime} - r\cos \varphi )^{2} + ( - \frac{1}{2}R^{\prime} - r\sin \varphi )^{2} + h_{\max }^{2} } $$
(19)
$$ q_{4} = \sqrt {(\frac{\sqrt 3 }{2}R^{\prime} - r\cos \varphi )^{2} + ( - \frac{1}{2}R^{\prime} - r\sin \varphi )^{2} + h_{\max }^{2} } $$
(20)

Assuming that the function of \(f(\zeta ,\varphi )\) is

$$ f(\zeta ,\varphi ) = \det ({\mathbf{H^{\prime}H}}) $$
(21)

Taking the partial derivative of \(f(\zeta ,\varphi )\) with the respect to \(\varphi\), we have

$$ f^{\prime}_{\varphi } (\zeta ,\varphi ) = \frac{\partial f(\zeta ,\varphi )}{{\partial \varphi }} $$
(22)

It can be obtained that when \(\varphi\) equals to \(\frac{\pi }{6}\),\(\frac{\pi }{2}\),\(\frac{5\pi }{6}\),\(\frac{7\pi }{6}\),\(\frac{3\pi }{2}\),\(\frac{11\pi }{6}\),

$$ f^{\prime}_{\varphi } (\zeta ,\varphi ) = 0 $$
(23)

Equation (23) shows that when \(\varphi\) is at these points, regardless of the value of \(\zeta\), \(f^{\prime}_{\varphi } (\zeta ,\varphi )\) is always equal to 0, and

$$ f\left(\zeta ,\frac{\pi }{6}\right) = f\left(\zeta ,\frac{5\pi }{6}\right) = f\left(\zeta ,\frac{3\pi }{2}\right) $$
(24)
$$ f\left(\zeta ,\frac{\pi }{2}\right) = f\left(\zeta ,\frac{7\pi }{6}\right) = f\left(\zeta ,\frac{11\pi }{6}\right) $$
(25)

Suppose the functions \(g_{1} (\zeta )\) and \(g_{2} (\zeta )\) are

$$ g_{1} (\zeta ) = f\left(\zeta ,\frac{\pi }{6}\right) $$
(26)
$$ g_{2} (\zeta ) = f\left(\zeta ,\frac{\pi }{2}\right) $$
(27)

The derivatives of \(\zeta\) for these two functions have the following characteristics

$$ g^{\prime}_{1} (\zeta ) = g^{\prime}_{2} (\zeta ) $$
(28)

The derivatives of these two functions are equal, so we assume that

$$ g^{\prime}(\zeta ) = g^{\prime}_{1} (\zeta ) = g^{\prime}_{2} (\zeta ) $$
(29)

When (29) is equal to 0,

$$ g^{\prime}(\zeta ) = 0 $$
(30)

There exists (31),

$$ \begin{aligned}\zeta = \delta_{0} = \frac{1}{{h_{\max } }}\left(R^{\prime}r - r^{2} \right.\\ \left.+ \frac{{\frac{3}{2}R^{\prime}r}}{{\sqrt {h_{{\max^{2} }} + R^{{\prime}{2}} + R^{\prime}r + r^{2} } - \sqrt {h_{{\max^{2} }} + R^{{\prime}{2}} - 2R^{\prime}r + r^{2} } }}\right)\end{aligned} $$
(31)

Moreover,

$$ \left\{ {\begin{array}{*{20}c} {\zeta \le \delta_{0} ,g^{\prime}(\zeta ) \le 0} \\ {\zeta > \delta_{0} ,g^{\prime}(\zeta ) > 0} \\ \end{array} } \right. $$
(32)

According to (32), it can be seen that the function change trend is decreasing first and then increasing.

From the previous analysis, the value range of \(\zeta\) is \(h_{\min } \le \zeta \le h_{\max }\). Therefore, when \(h_{\min } \ge \delta_{0}\), \(\det ({\mathbf{H^{\prime}{\rm H}}})\) increases with increasing \(\zeta\), and when \(\zeta_{0} = h_{\max }\), it has the max value of \(\det ({\mathbf{H^{\prime}{\rm H}}})\); when \(h_{\max } \le \delta_{0}\), \(\det ({\mathbf{H^{\prime}{\rm H}}})\) decreases as \(\zeta\) increases, when \(\zeta_{0} = h_{\min }\), it has the max value of \(\det ({\mathbf{H^{\prime}{\rm H}}})\); and when \(h_{\min } < \delta_{0} < h_{\max }\), if \(\zeta_{0}\) satisfies that \(f(\zeta_{0} ,\frac{\pi }{6}) = \mathop {\max }\limits_{{\zeta_{0} \in [h_{\min } ,h_{\max } ]}} {\mkern 1mu} [f(h_{\min } ,\frac{\pi }{6}),f(h_{\max } ,\frac{\pi }{6})]\), \(\det ({\mathbf{H^{\prime}{\rm H}}})\) has the maximum value, \([h_{\min } ,h_{\max } ]\) is a binary set. According to the (28), the same property is satisfied when \(\varphi\) is equal to \(\frac{\pi }{2}\),\(\frac{5\pi }{6}\),\(\frac{7\pi }{6}\),\(\frac{3\pi }{2}\),\(\frac{11\pi }{6}\) respectively.

From the above analysis, it is clear that when \(\varphi\) is \(\frac{\pi }{6}\) or \(\frac{\pi }{2}\), either \(h_{\min }\) maximizes \(\det ({\mathbf{H^{\prime}{\rm H}}})\) or \(h_{\max }\), so for \(\zeta\) we take the value of one with the smallest GDOP value among these two, assuming that

$$ {\rm K}(h) = GDOP\left(h,\frac{\pi }{6}\right) + GDOP\left(h,\frac{\pi }{2}\right) $$
(33)
$$ {\rm K}(\zeta_{0} ) = \mathop {\min }\limits_{{\zeta_{0} \in [h_{\min } ,h_{\max } ]}} {\mkern 1mu} [{\rm K}(h_{\min } ),{\rm K}(h_{\max } )] $$
(34)

Equation (34) means that \(\zeta_{0}\) takes the value in the binary set \([h_{\min } ,h_{\max } ]\) that has the smallest \({\rm K}\).

Based on the conclusions above, the pseudolite system positions are optimized as

$$ {\mathbf{Pos}} = \left[ {\begin{array}{*{20}c} 0 & 0 & {\zeta_{0} } \\ 0 & { - R^{\prime}} & {h_{\max } } \\ { - \frac{\sqrt 3 }{2}R^{\prime}} & {\frac{1}{2}R^{\prime}} & {h_{\max } } \\ {\frac{\sqrt 3 }{2}R^{\prime}} & {\frac{1}{2}R^{\prime}} & {h_{\max } } \\ \end{array} } \right] $$
(35)

where \(\zeta_{0}\) and \(R^{\prime}\) are expressed by (34) and (15) respectively.

1.3.2 Five pseudolite systems with fivefold coverage

When there are 5 pseudolite systems that can form a quintuple coverage of the signal in an area, by analogy with quadruple coverage, the layout of the fivefold coverage is optimized. The geometry whose five vertices are inscribed in the unit sphere is shown in Fig. 6. When the volume of geometry ABCDE is the largest, base ABCD is a square inscribed in a circle \(z = z_{0}\) of the cross-section of a unit hemisphere, and OE is perpendicular to base ABCD.

Fig. 6
figure 6

GDOP geometry of fivefold coverage considering the elevation cutoff angle

The matrix \({\mathbf{H}}\) of the user at the origin is \({\mathbf{H}}_{0}\), where

$$ {\mathbf{H}}_{0} = \left[ {\begin{array}{*{20}c} 0 & 0 & 1 & { - 1} \\ 0 & { - \sqrt {1 - z_{0}^{2} } } & {z_{0} } & { - 1} \\ 0 & {\sqrt {1 - z_{0}^{2} } } & {z_{0} } & { - 1} \\ {\sqrt {1 - z_{0}^{2} } } & 0 & {z_{0} } & { - 1} \\ { - \sqrt {1 - z_{0}^{2} } } & 0 & {z_{0} } & { - 1} \\ \end{array} } \right] $$
(36)

In the same way, the lines whose unit direction vectors are \(e_{2} ,\;e_{3} ,\;e_{4} ,\;e_{5}\) are also tangent to the space \({\mathbf{V}}\), and there is only one point of intersection.

Therefore, the pseudolite system positions can be expressed as

$$ {\mathbf{Pos}} = \left[ {\begin{array}{*{20}c} 0 & 0 & \zeta \\ 0 & {R^{\prime}} & {h_{\max } } \\ 0 & { - R^{\prime}} & {h_{\max } } \\ {R^{\prime}} & 0 & {h_{\max } } \\ { - R^{\prime}} & 0 & {h_{\max } } \\ \end{array} } \right] $$
(37)

where \(\zeta\) indicates the altitude of the first pseudolite.

Assuming that the unit direction vector between the users \((r\cos \varphi ,r\sin \varphi ,0)\) and the pseudolites constitute a matrix \({\mathbf{H}}\). When \(\varphi\) is equals to \(0,\;\frac{\pi }{4},\;\frac{\pi }{2},\;\frac{3\pi }{4},\;\pi ,\;\frac{3\pi }{2},\;\frac{7\pi }{4},\;2\pi\) respectively, (23) is satisfied.

By analogy with the derivation process of quadruple coverage, we can obtain

$$ {\rm K}(h) = GDOP(h,0) + GDOP\left(h,\frac{\pi }{4}\right) $$
(38)
$$ {\rm K}(\zeta_{0} ) = \mathop {\min }\limits_{{\zeta_{0} \in [h_{\min } ,h_{\max } ]}} {\mkern 1mu} [{\rm K}(h_{\min } ),{\rm K}(h_{\max } )] $$
(39)

Therefore, the layout optimization location for pseudolite systems can be expressed as

$$ {\mathbf{Pos}} = \left[ {\begin{array}{*{20}c} 0 & 0 & {\zeta_{0} } \\ 0 & { - R^{\prime}} & {h_{\max } } \\ 0 & {R^{\prime}} & {h_{\max } } \\ { - R^{\prime}} & 0 & {h_{\max } } \\ {R^{\prime}} & 0 & {h_{\max } } \\ \end{array} } \right] $$
(40)

where \(\zeta_{0}\) in (40) is expressed by (39).

1.3.3 More than five pseudolite systems

1.3.3.1 Six pseudolite systems with sixfold coverage

If there are 6 available pseudolite systems, they can not only be used to form sixfold signal coverage to the target user but can also be used to form signal coverage through splicing and assembling, which is illustrated in the next section. First, we analyze the optimal position of the pseudolite systems when there are six pseudolite systems that can form a sixfold signal coverage of a target area. When the number of visible satellites is 6, the geometry formed by the vertices of the direction vectors of the pseudolite systems and the satellites can have three situations, which are shown in Fig. 7.

Fig. 7
figure 7

GDOP geometry of sixfold coverage considering the elevation cutoff angle

The Fig. 7a shows a pinledge whose upper and lower bases are equilateral triangles inscribed in a circle. It is assumed that the radius of the upper circle is \(R_{1}\), the radius of the lower circle is \(R_{2}\), and the height is \(h\). Figure 7b represents a cone whose bottom is a regular pentagon inscribed in a circle, the radius of the circle is \(R_{1}\), and the height is \(h\). Figure 7c represents a quasi-cylinder, whose bottom is a square inscribed in a circle, the radius of the circle is \(R_{1}\), EF is the diameter of a section circle, and the height is \(h\).

The volume of the geometry shown in (a) \(V_{1}\) is

$$ V_{1} = \frac{\sqrt 3 }{4}h(R_{1}^{2} + R_{1} R_{2} + R_{2}^{2} ) $$
(41)

and the volume of the geometry shown in (b) \(V_{2}\) is

$$ V_{2} = \frac{5}{6}h\sin \left(\frac{2\pi }{5}\right)R_{1}^{2} $$
(42)

while the volume of the geometry shown in (c) \(V_{3}\) is

$$ V_{3} = \frac{h}{3}(2R_{1}^{2} + \sqrt 2 R_{1} R_{2} ) $$
(43)

In which

$$ R_{1} = \sqrt {1 - z_{0}^{2} } $$
(44)
$$ R_{2} = \sqrt {1 - (z_{0} + h)^{2} } ,0 < h \le 1 - z_{0} $$
(45)

When taking the maximum value of the volume of the geometric body inscribed in the unit sphere in the three different cases (a), (b) and (c), we can obtain Fig. 8.

Fig. 8
figure 8

GDOP geometry of sixfold coverage considering the elevation cutoff angle

From Fig. 8, it can be seen that among these three geometries, the volume of the cone is the largest, as shown in Fig. 8b, whose \({\mathbf{H}}_{0}\) is

$$ {\mathbf{H}}_{0} = \left[ {\begin{array}{*{20}c} 0 & 0 & 1 & { - 1} \\ {\sqrt {1 - z_{0}^{2} } } & 0 & {z_{0} } & { - 1} \\ {\sqrt {1 - z_{0}^{2} } \cos (\frac{2\pi }{5})} & {\sqrt {1 - z_{0}^{2} } \sin (\frac{2\pi }{5})} & {z_{0} } & { - 1} \\ {\sqrt {1 - z_{0}^{2} } \cos (\frac{4\pi }{5})} & {\sqrt {1 - z_{0}^{2} } \sin (\frac{4\pi }{5})} & {z_{0} } & { - 1} \\ {\sqrt {1 - z_{0}^{2} } \cos (\frac{8\pi }{5})} & {\sqrt {1 - z_{0}^{2} } \sin (\frac{8\pi }{5})} & {z_{0} } & { - 1} \\ { - \sqrt {1 - z_{0}^{2} } } & 0 & {z_{0} } & { - 1} \\ \end{array} } \right] $$
(46)

And the layout optimization expression for pseudolite systems is

$$ {\mathbf{Pos}} = \left[ {\begin{array}{*{20}c} 0 & 0 & {x_{0} } \\ {R^{\prime}} & 0 & {h_{\max } } \\ {R^{\prime}\cos (\frac{2\pi }{5})} & {R^{\prime}\sin (\frac{2\pi }{5})} & {h_{\max } } \\ {R^{\prime}\cos (\frac{4\pi }{5})} & {R^{\prime}\sin (\frac{4\pi }{5})} & {h_{\max } } \\ {R^{\prime}\cos (\frac{8\pi }{5})} & {R^{\prime}\sin (\frac{8\pi }{5})} & {h_{\max } } \\ { - R^{\prime}} & 0 & {h_{\max } } \\ \end{array} } \right] $$
(47)

Similarly,

$$ {\rm K}(h) = GDOP\left(h,\frac{\pi }{5}\right) + GDOP\left(h,\frac{3\pi }{5}\right) $$
(48)
$$ {\rm K}(\zeta_{0} ) = \mathop {\min }\limits_{{\zeta_{0} \in [h_{\min } ,h_{\max } ]}} {\mkern 1mu} [{\rm K}(h_{\min } ),{\rm K}(h_{\max } )] $$
(49)

Equation (47) shows the optimization results of six pseudolite systems with sixfold coverage.

1.3.3.2 Assembling pseudolite systems

However, when the multiplicity of coverage is greater than 6, the effect of improving the GDOP value is not obvious, so rather than allowing all users in an area to receive signals from all satellites at the same time, it is recommended to ensure the positioning performance of users in the area by splicing and assembling quadruple or quintuple coverage configurations, as shown in Fig. 9

Fig. 9
figure 9

Diagram of the assembly of more than six pseudolite systems

One assembly of the quadruple coverage group adds two pseudolite systems, and stitching the fivefold coverage group adds three pseudolite systems. Therefore, if there are 6 pseudolite systems, the assembly method can also be used; specifically, a "4 + 2" combination can be formed for 6 pseudolite systems. Furthermore, 8 pseudolite systems can form a "5 + 3" combination. Assembling pseudolite systems can effectively expand their coverage, as shown in Fig. 10, but the minimum GDOP value of users in the area cannot decrease. The assembly method can better balance the positioning performance of all users in an area; that is, it can reduce the standard deviation of the GDOP value.

Fig. 10
figure 10

Stitching pseudolite systems to extend the coverage area

When using a quadruple pseudolite system configuration for assembly, it is necessary to satisfy

$$ R^{\prime} \le \frac{{h_{max} }}{2\tan (\theta )} $$
(50)

Condition (50) can ensure that the junction area covered by the two sets of spliced pseudolite systems cannot have a singular point with a particularly large GDOP.

For the assembly of a fivefold coverage configuration, the condition is

$$ R^{\prime} \le \frac{{h_{max} }}{(1 + \sqrt 2 )\tan (\theta )} $$
(51)

Condition (51) can ensure that the junction area cannot have a singular point.

UAV without hover.

The method above requires the UAVs carrying the pseudolite systems stay at a point for a long time, that is, they hover at the best position, but for many UAVs, they do not have a hovering function. For this type of pseudolite system, it is possible to circle around a sweet spot, as shown in Fig. 11.

Fig. 11
figure 11

Pseudolite systems without hover

Suppose the hovering radius of a UAV is \(r_{a}\). The same method can be used to directly find the center point of each UAV's orbiting flight, but the \(R^{\prime}\) of the center point is

$$ R^{\prime} = \frac{{h_{\max } }}{\tan (\vartheta )} - r_{a} $$
(52)

For the surrounding UAV, when \(R^{\prime}\) is

$$ R^{\prime} = \frac{{h_{\max } }}{\tan (\vartheta )} - 2r_{a} $$
(53)

The GDOP value of the user is the worst. If the worst-case GDOP value of the central user is too large, the proposed method will no longer be applicable.

1.4 Preliminary experimental results

1.4.1 Simulation results

In this section, we assume that there is a pseudolite system that needs to be deployed. Because of the limitations of flight conditions, the space height range of the pseudolite system is limited between \(5\) and \(10\) kilometers above the ground.

1.4.2 Four pseudolite systems with quadruple coverage

Supposing that the number of UAVs is 4, we use four methods to optimize the pseudolite system positions at first, which include two optimization algorithms, the NSGA-II method (Li et al. 2021) and the GA method (Tiwary et al. 2013), both of which are often used not only to optimize constellations of pseudolite systems, but also to optimize constellations of satellites (Chang et al. 2020, Dawei et al. 2016 and Guan et al. 2020), an empirical method (Wei et al. 2009) which can obtain results quickly but may not be applicable in some scenarios, and the proposed method. In detail, the NSGA-II algorithm is a multi-objective optimization algorithm whose specific optimization objectives are (1) and (2) respectively, whereas the GA algorithm is a single-objective optimization algorithm, so the sum of (1) and (2) is taken as the optimization objective of the GA algorithm. These four methods were first used for different area radius with an elevation cut-off angle of 5 degrees, and then for different elevation cut-off angles with an area radius of 50 km. The statistical results of the user GDOP values are shown in Figs. 12 and 13 respectively and the average time length of a single computation is listed in Table 1.

Fig. 12
figure 12

Statistical results under the condition of different area radii for four pseudolites

Fig. 13
figure 13

Statistical results under the condition of different elevation cutoff angles for four pseudolites

Table 1 The average time length of a single computation for four pseudolites

The Fig. 12 shows the statistical results of the four methods under the condition of different area radius, and Fig. 13 shows the result under the condition of different receiver cutoff angles, to ensure the integrity of the lines, we have placed the legend at the top of the figures. The mean GDOP and STD GDOP represent the overall GDOP performance of users, while the GDOP maximum value represents the worst performance in the region and the minimum value represents the best performance of users. It can be seen from the figures that regardless of how the radius of the target area and the elevation cutoff angle change, the average, the STD, the maximum and the minimum GDOP values obtained by the proposed method are the smallest among these four methods. Moreover, according to Table 1, NSGA-II takes on average more than 17 min for a single calculation, and GA takes about 47 min, while the proposed method only needs less than 1 s.

According to the (15), it can be seen that the larger the radius of the target area, or the larger the elevation cut-off angle of the user, the smaller the pseudolite location solution space \({\mathbf{V}}\). Under these conditions, it is less likely to obtain a pseudolite deployment solution that can meet the user's requirement, hence we define this kind of condition as a harsh condition. Figures 12 and 13 illustrate that when the radius of the area is greater than 30 km and the elevation cut-off angle is greater than 3 degrees, the results obtained by the empirical method show particularly large singularities in the GDOP, indicating that the method is no longer applicable to these scenarios. The results of NSGA-II are also no longer applicable when the area radius is greater than 50 km and the elevation cut-off angle is greater than 5 degrees.

In order to better show the details of the results, specific results are given for an area radius of 50 km. Moreover, we also give the global optimization result for the four pseudolites to better compare the performance of the methods. It is worth noting that the global optimization result is obtained after searching the pseudolite position solution space expressed by the (5) with a \(5 \times 5 \times 2.5{\text{ km}}\) grid. The CPU we use is an Intel(R) Core(TM) i7-7600U with a quad-core drive. All five results were calculated using MATLAB software. The computing time of the proposed method was below 1 s which was only 0.03 s, while that of the NSGA-II method was 760 s, and of the GA method was 624 s. When using the search method to solve the global optimization result, there are 709 possible locations for each pseudolite, which means that \(C_{709}^{4} \approx 10^{10}\) searches are required, and it would take approximately 241 days using the same computer mentioned above, which is too long, so three high-performance computers with 32-core drive are used in searching the global optimization results.

The Fig. 14 represents the positions of pseudolites obtained by these five results, and different markers indicated different methods. As can be seen in the figure, three pseudolites of the empirical method are very close to each other, resulting in almost identical directions of arrival of some users in the region and leading to the appearance of singularities with high GDOP. The GDOP values of the users are shown in Fig. 15 without the empirical method, because the result of the empirical method appears singularities and is no longer applicable. Furthermore, the statistical results are presented in Table 2, the mean GDOP and the STD of the global optimization method are the minimum, which are 5.77 and 2.90 respectively, while the proposed method is similar to the results of global optimization, being only 0.12 and 0.24 larger respectively. The minimum GDOP of the proposed method is the smallest, which is 1.93. The maximum GDOP of the proposed method is 13.42, while that of the NSGA-II method is 25.30, and of the GA method is 15.32.

Fig. 14
figure 14

The pseudolite positions obtained by the global optimization, the proposed method, the empirical method, the NSGA-II method, and the GA method

Fig. 15
figure 15

GDOP values for users based on four different methods

Table 2 GDOP statistical results of 4 pseudolite systems when the radius is 50 km
1.4.2.1 Five pseudolite systems with fivefold coverage

When 5 pseudolite systems can work at the same time, if global optimization results are required, a single optimization search would take 100 times longer than four pseudolites, which is almost impossible on our computing platforms, so in this section, we only use four methods to simulate the user GDOP values under the condition of different radius regions and different receiver elevation cutoff angles, the purpose of which is to verify the robustness of the proposed method with five pseudolites.

The Fig. 16 shows the statistical results of the four methods under the condition of different area radius, and Fig. 17 shows the result under the condition of different receiver elevation cutoff angles. The average computing time is shown in Table 3, which shows that NSGA-II takes more than 54 min, and GA takes more than 29 min. Moreover, it can be seen from the figures that the mean and STD GDOP are almost the smallest, except at some points where it is slightly higher than the GA method. The performance of the proposed method is significantly better than the empirical method and the NSGA-II method, and slightly better than the GA method, but the average computation time using the proposed method does not exceed 1 s, which means that the proposed method is able to achieve better performance in the shorter time. In addition, the robustness of the proposed method is also the strongest; for example, when the radius is greater than 50 km, the empirical method is unable to produce usable layout recommendations. When the radius is larger than 50 km, the GDOP of the NSGA-II method is too large to be applicable, but the proposed method is still available and the results are smaller than the GA method.

Fig. 16
figure 16

Statistical results under the condition of different area radii for five pseudolites

Fig. 17
figure 17

Statistical results under the condition of different elevation cutoff angles for five pseudolites

Table 3 The average time length of single computation for five pseudolites
1.4.2.2 More than five pseudolite systems

In this section, we suppose that there are six available pseudolite systems, which need to form signal coverage for users whose elevation cutoff angle is 5°.

We optimized the specific positions of the pseudolite systems using the method of forming sixfold signal coverage, the method of using fourfold coverage configuration to perform one assembly, the NSGA-II method and the GA method. The results are shown in Fig. 18. It is difficult to determine which method offers better performance, because slightly better results are obtained by the GA and NSGA-II methods when the area radius is less than 50 km, but when the radius is over 50 km, either six-fold or assembling can offer better performance. It indicates that when the radius is small, there are several combinations of positions in the solution space that are better than the proposed method. When the radius of the target area increases, the proportion of combinations in the solution space decreases, and it is not easy to be searched by the optimal search algorithm.

Fig. 18
figure 18

Statistical results under the condition of different area radii for six pseudolites

Moreover, when the area radius is less than 40 km, the results obtained by the assembling method are not good. Figure 19 shows the GDOP of the assembling method when the radius of the target area is 30 km. From Fig. 19, it can be seen that the reason for the poorer performance of the assembling method is that when the radius is small, the GDOP values in the spliced overlapping area are too large to affect the overall GDOP performance. So when there are six pseudolites and the area radius is relatively small, it is recommended to use the six-fold coverage method to ensure the user's GDOP performance, and for better GDOP performance without calculating time constraints, the GA or NSGA-II method is recommended, as GA needs about 52 min and NSGA-II needs about 21 min as shown in Table 4.

Fig. 19
figure 19

GDOP values of the assembling method when the radius is 30 km

Table 4 The average time length of single computation for six pseudolites

1.5 Experimental results

Because of air resistance and other effects, there may be errors between the real-time position of the UAV and the ideal position. To verify the performance of the proposed method, we use a UAV for testing. The main purpose of the flight test is to verify the influence of the UAV control system on the performance of the proposed method. The real-time position of the UAV is recorded using a differential positioning receiver. The UAV we used for flight testing is a multirotor UAV powered by electricity, as shown in Fig. 20.

Fig. 20
figure 20

UAV used for the test

Due to aviation control reasons, the predetermined maximum flight height of the UAV in this experiment is 40 m, the minimum flight height is 20 m, and the service range is a circle with a radius of 100 m.

After the UAV hovers at the ideal position calculated using the proposed method, real-time position data recording of the UAV is performed. The real-time position of each pseudolite system and the ideal position calculated using the proposed method are shown in Fig. 21. The average position error of the UAV in the X-, Y-, and Z-axis directions when hovering is within 1 m.

Fig. 21
figure 21

Real-time and ideal position of the UAV with hover

The GDOP statistics of users in the experiment and the ideal GDOP statistics of users when the pseudolite systems are located at ideal positions are shown in Fig. 22. As seen in Fig. 22, there is little difference between the experimental statistics results and the ideal results, which is approximately 0.02. The reason why the average GDOP result and the STD result of the experiment are both smaller than the ideal statistical result is that the actual height of the UAV in the experiment is slightly larger than the ideal height, and therefore, the GDOP value of the user in the center position does not reach the ideal minimum value.

Fig. 22
figure 22

GDOP statistics of the UAV with hover

It is important to note that when the UAV uses the hover function to provide services in the target region, because of the instability of the UAV's position when hovering, the proposed method requires some redundancy for the pseudolites location in practical use except the pseudolite located above the center of the region. For example, if the UAV’s instability in the horizontal direction when hovering is 1 m, the positions of pseudolites expect the central pseudolite should be drawn 1 m closer to the center. The reason for this is that the locations of these pseudolites obtained by the proposed method are at the edge of the solution space \({\mathbf{V}}\) and the instability of the UAV's flight may result in some users not receiving enough pseudolites signals.

Next, we use the UAV to circle around the ideal position. The maximum circling radius of the UAV in this section is below 30 m. The real-time location record of the UAV and the ideal position circled by the UAV are shown in Fig. 23. The GDOP statistics of users during this period are shown in Fig. 24, which also shows the ideal worst result when the condition (53) is satisfied. The reason why the experimental GDOP statistic value is worse than the ideal worst-case GDOP statistic value is that the height of the UAV at some points is lower than the ideal height when circling, the minimum of which can reach 38 m.

Fig. 23
figure 23

The real-time position of the UAV circling around the ideal position

Fig. 24
figure 24

GDOP statistics of the circling UAV

Comparing Figs. 22 and 24, it can be seen that when the UAV is circling around, the user GDOP value is worse than the value when the UAV is hovering. The maximum value of the GDOP is over 6.2, while it is 5.2 in Fig. 22. Moreover, when the UAV is circling, the fluctuation of the user GDOP value is obvious, however, although the fluctuation of the user positioning accuracy is more obvious, they are all acceptable for users.

2 Conclusions

We first introduce the related concepts of a UAV pseudolite navigation system. When used as a backup navigation system, a UAV pseudolite navigation system needs to provide navigation services for local users independently, and the performance of the GDOP provided by the system can directly affect the user positioning accuracy. Therefore, we assume that the system service area is a circular plane and there are \(M\) users uniformly distributed in the target area, and propose a layout optimization method that can quickly obtain the specific deployment location. Since different numbers of pseudolite systems have different configurations, the proposed method is classified in detail. One of the characteristics of the proposed method is strong robustness; another is that the GDOP average and the STD after optimization are small and the computation time is very short. To illustrate the performance of the method, we verify it through simulation and experiments and have the following conclusions.

(1) When four pseudolite systems are used to form quadruple signal coverage, the user GDOP average, the STD values, the maximum and the minimum values obtained using the proposed method are the smallest compared with an empirical method, an NSGA-II method, and a GA method. Moreover, the GDOP performance of the proposed method is similar to the global optimization result. The proposed method only takes less than 1 s to compute once, while the NSGA-II method needs more than 17 min, GA method needs 47 min.

(2) When five pseudolite systems can achieve fivefold signal coverage, regardless of how the area radius and user elevation cutoff angle change, the GDOP average and the STD values obtained using the proposed method are almost the smallest, except at some points where it is slightly higher than the GA method, while the empirical approach and the NSGA-II method are no longer applicable under harsh conditions, which verifies the effectiveness and robustness of the proposed method.

(3) When there are more than five pseudolite systems, we simulate the situation of six pseudolite systems. The GA and NSGA-II methods perform better when the area radius is small. The six-fold and assembling method performs better when the area radius is larger. When the area radius is small, the six-fold signal coverage method is more suitable. If better GDOP performance is desired and there is no time constraint, GA or NSGA-II is more suitable.

(4) By manipulating the UAV to obtain the real-time position, we verify the effectiveness of the proposed method in practical applications. The experimental results show that the results when the UAV hovers are not much different from the simulation results. Although the results when the UAV circles are slightly worse than when it hovers, it is still acceptable for users. In practical applications, because of the instability of the UAV, a certain amount of redundancy needs to be left for the optimized position in order to avoid users not receiving signals.

In summary, both simulation and experimental results prove the effectiveness of the method, but there still have limitations. When the system is served by four or five pseudolites, the proposed method has significant advantages in terms of both computation time and GDOP performance, while when there are six or more pseudolites, the advantages of the proposed method in terms of GDOP performance are no longer significant. However, when this method is applied in practice, the airborne-based pseudolite system will have a ready-to-use capability and once the whole research of the system has been accomplished including this work, the positioning accuracy of users can be given in the future.