The invention relates to the technical field of set-membership state estimation techniques.
The invention deals with a method of estimating a constrained zonotope containing a state representing motion of at least one mobile target governed by a nonlinear model.
Unmanned vehicles have seen a considerable rise in their level of autonomy over the last years, leading up to present on-going efforts to integrate unmanned aircraft systems (UAS) into the national airspaces and of autonomous cars into the general traffic. It has been known for quite some time that cooperative motion strategies can unlock a number of benefits with considerable economic potential. Automatic platooning of ground vehicles can increase highway capacity, avoid traffic jams and reduce consumption of individual vehicles. Tight formation flight has been demonstrated to enable significant aircraft range enhancements. The most prominent examples include range improvements thanks to the exploitation of wake vortex effects in tight aircraft formations and automatic in-air refueling. To execute these cooperative motion strategies in a safe and efficient manner, relative positions of vehicles need to be estimated with decimeter level, if not centimeter level accuracy.
For tight formation flight, as standalone positioning based on Global Navigation Satellite Systems (GNSS) does not provide the necessary accuracy, a variety of differential positioning techniques has been proposed in the past. Numerous sensor fusion approaches can be found in the literature of the last decades, employing inertial measurement units, differential GNSS with or without exploiting the phase information, machine vision or combinations of both. More recently, inexpensive, decimeter-precision Ultra-Wideband (UWB) ranging sensors have been successfully shown to improve the robustness of airborne Real Time Kinematics (RTK) solutions.
Common among these existing approaches is their reliance on probabilistic filtering techniques such as the Unscented (UKF) or the Extended Kalman Filter (EKF). As is well known, many practical nonlinear estimation problems violate the underlying assumption of both the UKF and the EKF, notably the key assumption of distributions of process model and observation model uncertainties being known. In reality, typically only approximations of the stochastic properties of both sources of uncertainty are available. In spite of this inherent and well-known issue, both EKF and UKF have been demonstrated to work well in practice, providing accurate mean state estimates.
However, when it comes to safe cooperative motion of multiple agents in close proximity, the consistent computation of filter state uncertainty is of even more crucial importance than accurate point estimates. Due to the approximations involved (the linearization steps performed by the EKF and the unscented transform of the UKF), guaranteeing filter consistency is an open problem for nonlinear estimation problems when employing the EKF or UKF. However, we consider algorithms that can compute guaranteed enclosures of vehicle states a key element for the further safe integration of autonomous vehicles into heterogeneous environments such as mixed air traffic and common road traffic.
Set-membership state estimation techniques offer an interesting alternative to probabilistic frameworks in this regard. Set-membership estimators rely on a set-valued process model, assuming that observation and process model uncertainties are contained in known compact sets, e.g. intervals. No assumptions about the error distribution within these sets are required. The exact set-membership estimation problem is usually computationally intractable for nonlinear systems. Research is directed at finding implementable but tight outer approximations of the involved set operations. Numerous algorithms have been proposed over the last decades, employing set shapes such as ellipsoids or intervals. The common challenge all set-membership estimators are facing consists of finding a tradeoff between conservatism—the degree of over-approximation introduced by representing complex sets by simpler, computationally tractable ones—and computational effort.
In spite of the merits of set-membership approaches, their application to relative agent localization has received little attention. A cooperative set-membership localization algorithm for ground vehicles based on the Set Inversion Via Interval Analysis algorithm (SIVIA) has been proposed. SIVIA and related nonlinear set inversion algorithms provide tight enclosures when applied to state estimation algorithms, with their degree of approximation only limited by available computing resources. However, the complexity of these algorithms increases however typically fast with the number of states, limiting their usefulness beyond 2D ground vehicle localization applications.
Ellipsoids provide good computational performance thanks to their constant complexity and have been successfully applied to relative agent localization in simulation. Recently, zonotopes have received increased attention for guaranteed state estimation. Zonotopes provide more flexibility than ellipsoids, their complexity being a design parameter. One inherent problem of zonotopes is their symmetry, which introduces additional conservatism whenever actual state sets exhibit strong asymmetries. A second problem is that the intersection of two zonotopes does not always result in a zonotope, thus, as it is the case for ellipsoids, outer approximations of intermediate sets must be computed at each filter recursion, potentially involving solving a convex optimization problem.
The invention aims at solving or at least mitigating both of these deficiencies.
A first aspect of the invention is the method of claim 1.
The a priori zonotope used in the method of claim 1 is a constrained zonotope. This class of zonotopes allows to better approximate asymmetrical set shapes. As an additional advantage, they are closed under intersection and closed under the Minkowski sum operation.
The method according to the first aspect of the invention may comprise the following optional features.
The element at which the nonlinear transition model is linearized may be a center of a smallest interval enclosure containing the first constrained zonotope.
The method may further comprise linearizing a nonlinear observation model at an element of the first constrained zonotope or the a priori zonotope, so as to produce a linear observation model, wherein the observation model used at step e) is the linear observation model produced.
The element at which the nonlinear observation model is linearized may be a center of a smallest interval enclosure containing the a priori zonotope.
The method may further comprise:
The observation data of the mobile target may have been acquired at a third moment different from the second moment, and the method may further comprises:
The method may further comprise
The method may further comprise using the a posteriori constrained zonotope as first constrained zonotope and using the second moment as first moment in a subsequent execution of steps a) to e) defined in claim 1.
The method may further comprise
The observation data may comprise at least one of the following data acquired by a GNSS receiver: a pseudo-range, a carrier phase acquired, a range between the mobile target and another mobile target.
The motion data may include motion data of the mobile target relative to another mobile target.
The first constrained zonotope may be computed using a Vector Set Inverter Via Interval Analysis algorithm.
A second aspect of the invention is a computer program product comprising instructions which, when the program is executed by a computer, cause the computer to carry out the method of the first aspect of the invention.
The following description is structured as follows: After defining notations (section 1) and recalling the problem of set-membership state estimation (section 2), a computationally efficient state set estimation method based on constrained zonotopes (C-zonotopes) will be described (section 3). Then three practical applications of the method will be given as examples:
To accommodate this complexity, the notation x(tl) familiar from continuous-time estimation theory will be used hereinafter. The discrete nature of filter execution is captured by indexing the time. Specifically, tk designates the time for which a priori and a posteriori state sets are computed by the processing unit. For a vector x(t), the time t indicates the time of validity of this vector.
Correspondingly, a set Z(tk) is valid at time tk, i.e. x(t)∈Z(tk) if t=tk. If the time of validity is an interval [tk], the set is valid for all times in this interval, i.e. x(t)∈Z(tk) if t∈[tk].
Besides, a matrix Jn×m denotes a matrix of n rows and m columns where all elements are one. The identity matrix of size n is denoted by In and a square zero matrix of size n by 0n.
The dot product of two vectors a, b is denoted <a,b>.
Interval matrices are denoted by [M]=[M,
Where additive errors are assumed, it can be more convenient to write interval matrices in center-range notation as [M]=mid(M)+[−rad(M),rad(M)], where mid(M) is the center point of [M] and the interval radius matrix is given by rad(M)=
As C-zonotopes are not closed under nonlinear transforms, first order Taylor approximations of nonlinear system equations are used in the following, see sections 3.2 and 3.3. To ensure that these approximations do not compromise the consistency of the resulting state enclosures, the concept of linear inclusion is used, as do other set estimation approaches, see e.g. “A nonlinear set-membership filter for online applications”, by E. Scholte et al. A linear inclusion of a nonlinear function is a set-valued linear function that is guaranteed to contain the solution of the nonlinear function over a certain input set. As an example, consider the function
y=h(x) (1)
With x∈X, i.e. x is contained in some compact set X. A linear function
ŷ=y
0
+Hx+ϵ (2)
is a linear inclusion of equation 1 if
y∈y
0
+Hx+[ϵ] (3)
for all x∈X, i.e. the set-valued solution [ŷ] of the linear set valued function always contains the nonlinear solution.
A motion of a mobile target can be described by a motion state comprising motion data. The motion data may for instance include: a position of the target, a speed of the target, an acceleration of the target, other data, or a combination thereof. The motion state evolves over time when the mobile target moves.
In the following, the mobile target 1 may be referred to as the “system”, and the motion state as the “state” for the sake of simplicity.
Referring to
The processing unit 2 is configured to execute a computer program comprising code instructions implementing an estimation method that will be described hereinafter. This computer program will be referred to as the “CZESMF filter” (Constrained Zonotope Extended Set-membership Filter) or “the filter” hereinafter since it actually acts like a filter.
The filter is configured to use a predetermined transition model (also referred to as “propagation model” or “dynamics model” hereinafter) and a predetermined observation model.
The processing unit 2 is configured to operate at different processing moments, such that different sets enclosing the motion state of the mobile target at said different moments can be estimated.
The processing unit 2 can be of any type: one or more processor, one or more microprocessor, FPGA, ASIC, etc.
The observation unit 4 comprises at least one sensor configured to observe the mobile target. The observation unit 4 is therefore configured to output observation data related to the mobile target. The observation unit is also configured to operate at different observation moments, such that different observations can be acquired at said different moments.
The purpose of set-membership state estimation is computing a region X(t)⊂n in which the state x(t) of the system is guaranteed to reside at a time t.
In discrete state estimation, it is often assumed that the system state dynamics are governed by a static model of the type
x(tk)=f(x(tk−1), u(tk−1))+q(tk−1) (4)
with the previous state x(tk−1)∈n, the system input u(tk−1)∈p, the propagation model error q(tk−1)∈(tk−1)⊆n, and a constant sampling time TS=tk−k−1.
In practice, irregular observation times lead to irregular sampling times, i.e. propagation horizons in the filter. Depending on the sampling time, different propagation models may yield state enclosures of differing tightness. A practical example from navigation is inertial dead-reckoning localization, where the double integration of observed accelerations yields very tight short-term position enclosures, but sensor biases lead to quadratic growth of position enclosures in the long term. In contrast, a simple velocity-norm bound model of vehicle dynamics (see section 5 for an example) leads to linear growth of position enclosures over time, thus possibly providing tighter enclosures for longer propagation horizons.
Another example is treated in section 6, where tight relative position propagations using time differential GNSS phase observations are available only at the GNSS receiver's sampling times, while in between GNSS observations only a crude velocity-norm bound propagation model is available.
We accommodate multiple propagation models by assuming a very general time-varying state dynamics model that is a nonlinear map n×p××→n
x(tk)=f(x(tk−1),u(tk−1),tk−1,tk)+q(tk−) (5)
The arguments tk and tk−1 indicate that the model performs a propagation of the system state over the time horizon from tk−1 to tk as well as the time-varying nature of f( ). Thanks to the propagation model being allowed to be time-varying, the filter can employ the least conservative one from a bank of available models at each propagation step 102 (see
In practice, observations made by the observation unit 4 are often nor perfectly synchronous nor perfectly periodic. As a further complication, the observation times may only be approximately known, e.g. due to lack of hard-real-time communication protocols.
Observation time uncertainty leads to a subtle but serious issue not addressed by existing set-membership state estimation schemes. Propagated state enclosures are guaranteed to contain the state only at the selected propagation time tk. We call this the time of validity of a given state enclosure {circumflex over (Z)}x(tk) . Since an observation corresponds to some unknown time within an interval, updating the a priori enclosure with this observation leads to a state enclosure that is not guaranteed to be valid at any time, even if tk falls within the observation time interval. This is simply due to the fact that {circumflex over (Z)}x(tk) and the state space constraints corresponding to the observation do not concern the same point in time. Neglecting observation time uncertainty so leads to invalid state enclosures after only one update. A remedy for this issue is presented hereinafter.
The observations are assumed to be governed by the nonlinear map n×p×→m(t)+1
Where y(t)∈m(t) is a vector of sensor observations, w(t)∈W is the corresponding measurement error, {circumflex over (t)}y(t) is the observed observation time stamp, wt(t)∈[Wt] is the observation time error and t is the true observation time. The observation time stamp error wt(t) covers not only timing jitter but also communication delays e.g. due to package encoding/decoding delay over a digital data link. All times are wallclock time.
Note that no assumptions are made about the measurement model error other than its being contained in some known set W(t). As such, it covers hardware noise, biases and modeling errors. Note also that both the observation model h( . . . ) and the size m(t) of the observation vector can be time-varying.
While y(t) denotes observations provided by the model, actual measurements received from sensors are denoted by z(t).
The most popular computationally efficient set representations used in set state estimation are linear transformations of basic geometric entities, such as ellipsoids—transformed unit hyperballs—and zonotopes—transformed unit hypercubes. The inherent symmetry of both the hyperball and the hypercube limits both the ellipsoid's and the zonotope's ability to tightly approximate asymmetric or generally irregularly shaped sets. Further aggravating the situation, both are not closed under the intersection operation of the filter update. As a consequence, outer approximations of the result of each intersection need to be computed. Constrained zonotopes mitigate both of these issues. They are linear transformations of a constrained unit hypercube and as such can be asymmetric. They are closed under intersection, i.e. the intersection of two C-zonotopes is another C-zonotope, although of higher complexity.
A C-zonotope Z={G, c, A, b}⊂n is defined by its generator matrix G, its center c and the constraint parameters A, b of the unit hypercube, and describes the set:
Z={Gξ+c|∥ξξ
∞≤1,Aξ=b} (8)
Each constraint represents a plane intersecting the unit hypercube. The resulting intersection is then projected via the generator matrix G and finally translated by the center vector c.
C-zonotopes are an alternative parameterization of convex polytopes. Besides, C-zonotopes are a superset of regular zonotopes, as each C-zonotope without constraints is a regular zonotope. For briefness and in accordance with the existing literature, the C-zonotope representation of a convex polytope is denoted as G-rep. and their half-space representation as H-rep.
The interval enclosure of a C-zonotope Z is denoted by [Z] and the G-rep. of an interval [a] by Z ([a]).
Referring to
The a posteriori C-zonotope enclosing the state x at the time tk and taking into account all observations up to and including tk is denoted as
Z′
x(tk)={G′x(tk),c′,x(tk),A′,x(tk),b′,x(tk)} (9)
While the a priori C-zonotope enclosing the state x at the time tk, before performing the update, is denoted by
{circumflex over (Z)}
x(tk)={Ĝx(tk),ĉx(tk),Âx(tk),{circumflex over (b)}x(tk)} (10)
It will be detailed below that the propagation step 102 and the update step 104 may use a linear transition model and a linear observation model, respectively, said linear models being obtained by linearizing nonlinear models at specific points.
Moreover, the method may further comprise a reduction step 106 wherein the filter converts the a posteriori C-zonotope Z′x(tk) into another C-zonotope Zx(tk) of lower complexity but containing the C-zonotope Z′x(tk).
The propagation step 102, the update step 104 and the reduction step 106 are repeated recursively. More precisely, the method comprises multiple recursions, each recursion performing the propagation step 102, the update step 104 and the reduction step 106.
The very first recursion of the method is preceded by an initialization step 100 wherein the initial C-zonotope {circumflex over (Z)}x(tk) is determined.
Steps 100, 102, 104 and 106 will now be described in detail.
The initial state is known to be contained in some C-zonotope {circumflex over (Z)}x(tk), the first a priori state enclosure.
At the propagation step 102, executed for k>1, the filter computes the a priori state set {circumflex over (Z)}x(tk). It is guaranteed to contain the state at time tk>tk−1, given the preceding a posteriori state set Zx(tk−1).
As a particularity of uncertain observations, the question of how to choose the time for which to compute the a priori C-zonotope arises. It can even lie in the future at the time when a filter recursion is started, to compensate for filter execution time. Depending on the execution time of the recursion (propagation and update), it can however make more sense to set tk close to the observation time and perform a final propagation to compensate for execution time.
Some options are a nominal, periodic observation time, if observations are nominally periodic, or the center of observation time intervals. As a beneficial effect of the first choice, filter results become periodic, hiding the observation time uncertainty inside the filter.
Since C-zonotopes are not closed under nonlinear maps, we start, analogous to an Extended Kalman Filter (EKF), by forming a first order Taylor approximation of the state dynamics model equation (5) about an operating point {circumflex over (x)}(tk−), û(tk−1). The centers of the interval enclosure of the preceding a posteriori state and input enclosures are chosen as operating point:
{circumflex over (x)}(tk−1)=mid([Zx(tk−1)]) (11)
û(tk−1)=mid([Zu(tk−1)]) where Zu={Gu, cu, Au, bu} (12)
Since C-zonotope centers do not even necessarily lie within their C-zonotope, this choice tends to lead to smaller, but does not minimize linearization errors.
Linearization leads us to the familiar first order Taylor expansion
Where the linearization error is ϵf(tk)∈[ϵf(tk)] and with
The corresponding linear inclusion being given by
x(tk)∈F(tk−1)Zx(tk−1)+B(tk−1)+Zq(tk−1)+Zq(tk−1)+Z([ϵf(tk−1)])+Z([cf(tk−1)] (18)
a propagation from time tk−1 to time tk is then performed as
{circumflex over (Z)}
x(tk)=F(tk−1)Zx(tk−1)+B(tk−1)Zu(tk−1)+Zq(tk−1)+Z([ϵf(tk−1)])+Z([cf(tk−1)] (18)
The matrix multiplication and sum operations in equation 18 are the set operations on C-zonotopes defined in “Constrained zonotopes: A new tool for set-based estimation and fault detection”, by J. K. Scott et al. The linearization error and the model uncertainty of the nonlinear state dynamics model are enclosed by Zq(tk−1) and Zu(tk−1) is a C-zonotope enclosure of any uncertain input. The propagation uncertainty term q(tk) actually corresponds to the process noise of an EKF, and the C-zonotope Zq(tk) corresponds to the process noise covariance matrix Q of an EKF.
[ϵf(tk)] can be regarded as a set of transition linearization errors at different elements of C-zonotope Zx(tk−1). A transition linearization error at a given element of Zx(tk−1) is a difference between an output resulting from applying the nonlinear transition model to the given element and an output resulting from applying the linear transition model to the given element.
Besides, the expression Zq(tk−1)+Z([ϵf(tk−1)])+Z([cf(tk−1)] above mentioned may be regarded as a C-zonotope that contains all the linearization errors. Moreover, the expression F(tk−1)Zx(tk−1)+B(tk−1)Zu(tk−1) can be regarded as a C-zonotope resulting from applying the linear transition model to Zx(tk−1). The a posteriori zonotope is the sum of both expressions.
In recursive filtering schemes, the purpose of the propagation step 102 is to obtain a state enclosure that is valid at the time—or in our case close to—the time when observation about the system's state are made.
In the present method, there are two situations where a propagation does not need to be performed, reducing filter run time.
The first situation occurs when performing updates 104 over a sequence of synchronous vector observations. In this case, the a posteriori C-zonotope resulting from the update 104 with the first vector element can be re-used as a priori C-zonotope for the following sequential updates with the remaining elements of the observation vector.
Besides, when observations arrive close in time, instead of performing a propagation, it can be acceptable (in terms of added conservatism), to inflate the observation interval (see section 3.3.1) more, to extend the observation's time of validity over that of the preceding a posteriori C-zonotope. To accommodate this condition, a threshold
Algorithm 1 below illustrates how a conditional propagation can be implemented in practice: (see also
To perform the update, the nonlinear observation equation is linearized to form a linear inclusion of it. By evaluating the remainder (i.e. the linearization error) by Interval Arithmetic (IA), it is guaranteed to be valid over the a priori state enclosure. Each element of the observation vector then defines a strip in state space. The a priori C-zonotope can either be intersected with all these strips at once or sequentially. Popular set formalisms such as ellipsoids and zonotopes are not closed under intersection with a strip, and as such require an outer approximation of each intersection result, which renders the sequential intersection suboptimal. On the other hand, with sequential updates, re-linearization of the observation equation after each intersection can lead to significantly tighter updates due to tightened linearization error intervals. The result of these two opposing effects depends on the degree of nonlinearity of the observations involved and as such is application-dependent.
As an unique feature of C-zonotopes, they are closed under intersection with a strip. In consequence, updating with the whole observation vector at once or sequentially with each scalar element are equivalent operations. As a consequence, using C-zonotopes we can benefit from both effects: the simplicity of sequential updates without loss of intersection optimality and the tightening effect of re-linearization.
Without loss of generality, scalar observations are therefore considered in the following. Vectors of synchronous observations are converted into a sequence of scalar observations with identical timestamps before running the filter recursion. Thus, in the following, the simpler scalar observation equation is taken as an example:
Where ty,k is the true observation time of observation k and {circumflex over (t)}t,k is the apparent observation time subject to timing error.
Assuming interval-valued errors, a first-order approximation of the nonlinear observation map valid at time ty,k has the form
where ϵh(tk)=ϵh,x(tk)+ϵ[ϵh(tk)] is the linearization error over the a priori states {circumflex over (Z)}x and inputs Zu. Note that tk is the time of validity of the a priori C-zonotope. The corresponding linear inclusion is then given by
y(tk)∈H(tk)Zx(tk)+B(tk−1)Zu(tk)+Zq(tk)+Z([ϵh(tk)])+Z([ch(tk)] (26)
In fact, a linear observation equation and a set that contains the error of this linear equation for all states that are in the a priori C-zonotope are computed here. This error has multiple components:
To perform the update two sets are intersected. The first one is given by the a priori C-zonotope (equation 18). The second one (see equation 35) is defined by the observation. Since we know that the observation z(ty,k) is contained in the right side of equation 26, we can replace y(ty,k) by z(ty,k) in equation 26 to form equation 35. For a scalar observation, equation 35 then represents a strip in state space, see
Note that while the linearized system equations are an approximation, the corresponding linear inclusions are guaranteed to contain the corresponding nonlinear solutions.
Recall that the true observation time is known with bounded uncertainty, i.e. is known to fall within an interval [ty,k]. In other words, the observation is valid somewhere within this time interval. Since the times of validity of the observations and the a priori C-zonotope are not guaranteed to coincide, the update may not be performed.
As a simple approach to remedy this situation, the observation error interval [ϵt
[Δtk]=tk−[ty,k] (27)
With a state increment interval
[Δx(tk)] (28)
that satisfies
x(t)∈{circumflex over (Z)}x(tk)+Z[Δx(tk)] (29)
if
t∈t
k
+[t
y,k] (30)
we can compute an extended linear inclusion
y(ty,k)∈H(tk)Zx(tk)+D(tk)Zu(tk)+Zq(tk)+Z([ϵh(tk)]+Z([ch(tk)]+Z(H(tk)[Δx]) (31)
The main objective of the inflation step is to solve the following problem: the time of validity of the observations is not guaranteed to coincide with the time of validity of the a priori C-zonotope. The basic idea to solve it is to inflate the observation error interval to ensure that its time of validity includes the time of validity of the a priori C-zonotope. This is obtained by computing an upper bound of the state variation (equation 28) between the observation time and the time of validity (equation 27) of {circumflex over (Z)}x(tk). Then all known terms are grouped together into one inflated observation error interval leading to equation 32, which can be used by the filter in the update step 104 (equation 36).
All known terms are lumped together into one inflated observation error interval, simplifying to
y(ty,k)∈H(tk)Zx(tk)+Z([ϵ′]) (32)
where ([ϵ′])=D(tk)[Zu(tk)]+[ϵh(tk)]+[ch(tk)]+H(tk)[Δx])
Note that the linearization error ∈h(tk) now needs to be computed over the inflated a priori state set {circumflex over (Z)}x(tk)+Z[Δx(tk)]. For implementation, ∈h(tk) can be evaluated over the interval enclosure [{circumflex over (Z)}x]+[Δx] to be able to use interval arithmetic. This is generally faster than choosing the alternative interval {circumflex over (Z)}x+Z[Δx] due to the increase in C-zonotope complexity involved in the C-zonotope sum operation.
With the scalar observation z(ty,k) we then have
z(ty,k)∈H(tk)Zx(tk)+Z([ϵ′]) (33)
and
H(tk)iZx(tk)∈z(ty,k)−Z([ϵ′]) (34)
∈Z([ϵ]) (35)
with [∈]=z−[∈′] and where Z([∈])={rad([∈]), mid([∈]), 0,0} is the G-rep. of the interval [∈].
Z′
x(tk)={circumflex over (Z)}x(tk)∩HZ([ϵ]) (36)
={G′x(tk),c′x(tk),A′hd x(tk),b′x(tk)} (37)
With
See
As can be seen from equations 36-41, each update increases the complexity—i.e. the number of generators ng and the number of constraints nc—of the state C-zonotope. To control computational complexity and memory footprint, the filter performs a reduction after the update if the complexity of Zx(tk) exceeds a certain chosen complexity threshold defined by
Algorithm 2 below illustrates how the reduction step 106 can be implemented in practice:
Algorithms 3, 4 below illustrate the different steps performed by the filter according to an embodiment.
4. 1D application
In this first example, we consider a target device (or agent) whose motion is confined to the x axis of a Cartesian frame, see
The dynamics of the state x=(p ν)T are governed by
wherein TS=tk−tk−1 and α(t) is the acceleration.
Range observations are governed by
r(ty,k)=√{square root over (d2+p2(ty,k))}+wk (43)
with wk∈[w]=[−0.224, 0.168] m.
We assume that initially the target's position and velocity are confined to
With target accelerations being bounded by
an inclusion for x(tk) is given by
with Zq(tk−1)=QZ([a]).
Since the inclusion equation 46 is already linear, we obtain the a priori C-zonotope directly as
{circumflex over (Z)}
x(tk)=FZx(tk−1)+Zq(tk−1) (47)
4.3. Update
Since observations times are without uncertainty in this example, tk=ty,k, i.e. we propagate the state enclosure to the observations' time of validity. From equation 43 is formed the linear inclusion
r(tk)∈H(tk)Zx(tk)+Z([w])+Z([∈h])+ch(tk) (48)
with
When computing an enclosure of the linearization error, the generic approach of evaluating the Lagrange remainder by interval arithmetic often leads to overly conservative enclosures due to dependencies. Evaluating ∈h explicitly can provide tighter enclosures, even more so when exploiting monotonicity. An explicit expression of the linearization error is
∈h=√{square root over (d2+p2)}−Hpp−ch(tk) (53)
To check for monotonicity, consider the derivative
To compute a tight inclusion of ∈h over the interval enclosure of the a priori C-zonotope {circumflex over (Z)}x(tk), we then only need to evaluate its vertices as well as the possible inflection point given by
The update is then performed according to equation 36.
Snapshots of the propagation step 102, update step 104 and reduction step 106 are displayed in
In this example we consider a target device moving on a field with two static ranging beacons (see
The target's position x=(x1 x2)T is governed by
x(tk)=x(tk−1)+q(tk−1) (57)
where
|q(tk)|≤
with the target's maximum velocity
The target device regularly receives ranging observations to both beacons situated at the uncertain positions
The ranging observation to each beacon ik is governed by
These two observations are nominally synchronous at a frequency of 1 Hz. Imperfect synchronization of the ranging sensor with wall clock time causes the bounded timing jitter wt(t)∈[−10−2 10−2]s. That is to say, a pair of ranging observations arrives approximately every second, but not exactly.
To obtain periodic state enclosures, the filter recursion is triggered at the upper bound of the observation time intervals, i.e. (t1, t2, t3, t4, . . . )=(0.01 s, 0.01 s, 1.01 s, 1.01 s,. . . ).
The target device is initially inside the field. This allows the computation of a C-zonotope that corresponds to an interval covering the field. This extremely conservative initial enclosure leads however to extremely conservative filter solutions. A tighter enclosure of the initial state is therefore computed with VSIVIA. This one-time step is not very computationally expensive in two dimensions (0.8 s and 233 processed boxes with ϵ=0.1 m). For estimation problems in higher state dimensions, it might be preferable to couple VSIVIA with constraint propagation to compute a sufficiently tight initial state enclosure in an acceptable time.
The C-zonotope corresponding to the interval enclosure of the subpaving (denoted as “solution” and “undefined” in
The state dynamics are already linear in the state. The propagation can thus be directly performed by
{tilde over (Z)}
x(tk)=Zx(tk−1)+Zs(tk−1) (63)
The state dynamics uncertainty ball defined by equation 58 is outer approximated by a C-zonotope (see Appendix A below) to obtain Zs(tk−1). An example of the resulting a priori C-zonotope is displayed in
It simplifies things to perform each update in the nominal frame of the corresponding ranging beacon ik. The a priori C-zonotope in the beacon frame being given by
{circumflex over (Z)}
x
b(tk)={circumflex over (Z)}x(tk)−pbig (64)
each ranging observation is then governed by
r(tk)=∥x(tk)−∈b∥+wr,k (65)
To simplify further, we absorb the small beacon uncertainty into the observation error wr,k by virtue of
∥x∥−∥ϵb∥≥∥x−ϵb∥≤∥x∥+∥ϵb∥ (66)
leading to
r(tk)=∥x(tk)∥+w′t,k (67)
with w′r,k∈[w′r,n]=[wr]+[−rad([ϵb]),rad([ϵb])].
From equation 67 we form the linear inclusion
5.3.1. Observation Interval Inflation
Before compensating for timing jitter, the state increment interval [Δx(tk)] is obtained from the velocity norm bound
and the inflated observation inclusion is computed as follows
r(ty,k)∈H(tk)Zxb(tk)+Z([w′r])+Z([ϵh])+ch(tk)+H(tk)Z([Δx]) (72)
After computing the a posteriori C-zonotope Zxb(tk) in the beacon frame with eqs. 36-41, the a posteriori C-zonotope is translated back to the navigation frame
Z
x(tk)=Zxb(tk)+pbig (73)
The full state enclosure trajectory is displayed in
In this example, the state of interest is the relative position between two agents, such as unmanned aircraft in close formation flight. Numerous aerospace applications require guaranteed relative positioning, such as aerial refueling, energy efficient formation flight and nanosatellite swarms. In this example, raw GNSS code and carrier phase observations as well as UWB peer-to-peer ranging observations are obtained. Both kinds of sensors are inexpensive, of very low mass—tens of grams—and readily available as Commercial-Off-The-Shelf (COTS) components. We show how the CZESMF can be applied to this localization problem of high practical relevance and evaluate its conservatism in a realistic simulation benchmark in comparison to existing set-membership state estimation schemes.
In the following time indices are dropped wherever unambiguously possible to improve readability.
Due to the high degree of linearity of the GNSS code phase double difference observations, the filter can simply be initialized with a very conservative guess about the initial relative position.
We propagate the guaranteed relative position x set between two vehicles A and B
x=p
B
−p
A
Set-valued dynamic vehicle models of moderate conservatism are rarely available, mostly due to the absence of established set-theoretic system identification methods. A vehicle-agnostic propagation model is therefore highly desirable. Set-membership inertial navigation is one option worthy of further research, but not further explored here. We instead rely on time-differenced GNSS carrier-phase double difference observations, when available, and a rough velocity norm constraint model at times without GNSS observations. Standalone time-differenced carrier phase observations have received originally introduced for precise flight trajectory reconstruction. Building thereon, Time-Differenced Double phase Difference (T3D) observations have first been proposed recently for tight set-valued relative trajectory tracking. The millimeter-level carrier noise allows to compute very narrow enclosures of position increments between GNSS observations. Applied to relative position estimation, propagated state sets are less conservative, leading to smaller linearization error sets in the update step and finally to less conservative a posteriori state sets.
Forming single differences of carrier phase observations removes the majority of atmospheric errors and the satellite clock error.
Single difference carrier phase observations for two receivers A and B and a satellite S are then given by
ΔΦ(pA,pB,pS)=∥pA−pS∥−∥pB−pS∥+ΔNλ+ϵΔΦ+ΔTc (75)
where ϵΔΦ captures residual errors due to hardware noise and multipath, ΔT is the differential receiver clock error, c the speed of light, λ is the carrier wavelength and ΔN the differential carrier cycle ambiguity.
Using dS=pA−pS and pB=pA+x we write more compactly
ΔΦ(x,dS)+∥dS∥−∥dS+x∥+ΔNλ+ϵΔΦ+ΔTc (76)
The differential receiver clock error is removed by forming double differences with respect to a reference satellite R
∇Φ(x,dS,dR)=∥dS∥−∥dS+x∥−∥dR∥+∥dR+x∥+ϵ∇Φ+∇Nλ (77)
Double difference carrier phase observations are thus a nonlinear function of the relative position of receivers A and B and the vectors between absolute receiver positions and satellite orbit positions.
Assuming that the receiver maintains phase lock over two subsequent epochs, the ambiguities are a constant that is eliminated by forming the difference of two subsequent double difference observations, forming the T3D observation
Δ∇Φ(tk)=∇Φ(tk)−∇Φ(tk−1) (78)
In the following we show how we can compute a C-zonotope that encloses the position increment Δx=x(tk)−x(tk−1).
Linearizing (using equation 78) directly and computing an interval enclosure of the Laplace remainder using interval arithmetic as proposed in “A nonlinear set-membership filter for online applications”, by E. Scholte et al. yields very large over-approximation due to heavy dependencies.
This issue is overcome by instead linearizing the single difference equation 76.
The Lagrange remainder is then evaluated using IA and the resulting interval is added to the hardware error interval ϵmΔΦ.
To simplify the computation of the necessary Jacobian and Hessian it is convenient to write equation 76 as
with the augmented state vector
z=(dSTxT)T (82)
and
E
1
=[I
303],E2=[I3I3], s=[1 −1] (83)
The Jacobian and Hessian of equation 81 can then conveniently be formed as
Interval bounds on the observation model error due to linearization and parametric uncertainty (uncertain orbit position of the satellite) can thus be obtained by evaluating
We proceed to forming the linear single difference observation
ΔΦ=ΔΦ(mid([dS]), mid([x])) (88)
+pdvΔΦx(x−mid([x]))+RΔΦ+ΔNλ+ΔTc (89)
As [RΔΦ] is generally very narrow, of the order of millimeters, for small separations we can linearize about x=0 and have the more compact form
ΔΦ=HSx+∈′ΔΦ+ΔNλ+ΔTc (90)
familiar from the RTK literature, with ϵ′ΔΦ=ϵΔΦ+RΔΦ+pdνΔΦx(x−mid([x])). We can then form a linear double difference observation model that is free of dependencies
where ϵ′
Taking the difference of two consecutive carrier phase observations with observation times tk−1 and tk respectively, the constant ambiguity terms are eliminated. Introducing Δx(tk)=x(tk)−x(tk−1), the T3D observation is given by
with
ϵ′Δ∇Φ(tk)∈[ϵ′Δ∇Φ(tk)] (97)
[ϵ′Δ∇Φ(tk)]=[ϵ∇Φ(tk)]−[ϵ∇Φ(tk−1)]−[ΔH∇(tk)][x(tk−1)] (98)
We exploit here the fact that the geometry matrix H∇ changes very little between two consecutive time steps due to the large distance between receiver and satellites, leading to a very narrow incremental term ΔH∇(j). We obtain an observation that is linear in the incremental displacement between two time steps. We take advantage of this observation to compute very accurate enclosures of the incremental displacement as follows. Lumping together terms, we write equation 96 as the linear inclusion
Δ∇Φ∈H∇Δx+[ϵ] (99)
The T3D observation Δ∇Φ constrains Δx to a polytope P whose half-space representation is given by
The corresponding C-zonotope ZΔX(tk) is then given by Theorem 1 disclosed in “Constrained zonotopes: a new tool for set-based estimation and fault detection”, by J. K. Scott et al. This is used in the filter propagation by setting F(tk−1)=I3, B(tk−1)=I3, ZΔx(tk), Zq(tk−1)=0.
In this application example, inter-vehicle ranging observations are not synchronized with GNSS observations and arrive at a higher rate. To perform the necessary propagation before updating with a ranging observation, we use a crude model based on norm-bounded relative velocity. For a propagation horizon tk−tk−1 the norm-bound νmax defines a sphere with radius r=νmax(tk−tk−1). We outer-approximate this sphere by a symmetric C-zonotope, ZS of user-defined complexity. The propagation is then performed by setting
F(tk−1)=I3, B(tk−1)=I3, Zu(tk−1)=0, Zq(tk−1)=ZS.
GNSS code phase single difference observations are governed by
Δρ(pA,pJ,pS)−οpA−pS∥−∥pB−pS∥+ϵΔρ+Tc (102)
where ϵΔρ captures residual errors due to hardware noise and residual atmospheric errors, ΔT is the differential receiver clock error and c is the speed of light.
Using dS=pA−pS and pB=pA+x we write more compactly
Δρ(x,dS)=μdS∥−∥dS∥+x∥+ϵΔρ+ΔTc (103)
The differential receiver clock error is removed by forming double differences with respect to a reference satellite R
∇ρ(x,dS,dR)=∥dS∥−∥dS+x∥−∥dR∥+∥dR+x∥+ϵ∇ρ (104)
Just like carrier phase double differences, double difference code phase observations are thus a nonlinear function of the relative position of A and B and the vectors between absolute vehicle positions and satellite orbit positions. We follow the same strategy as for carrier phase observations to form a linear inclusion for code phase double differences, leading to
∇ρ∈H∇Zx+Z([ϵ′∇ρ]) (105)
allowing for an update of the state enclosure.
6.3.2. Ranging Update
The inter-vehicle ranging observations are given by
r=∥x+R
A
r
A
−R
B
r
B
∥+ŵ
r,k (106)
with the positions τA, τB of the UWB ranging antenna centers with respect to the GNSS antenna centers in the respective body frame and the device hardware measurement noise ŵτ∈[ŵτ]. Equation 106 is subject to parametric uncertainties due to uncertainty in the attitudes RA,RB of both UAS as well as uncertain antenna positions τA, τB.
In the following we assume that τA, τB are small, i.e. the ranging antennas are close to the GNSS antennas, and that interval bounds of their additive effect on the range observation have been determined and lumped into a combined range error wr:
t=∥x∥+w
r (107)
To linearize equation 107, we first write range observations as
r=(xTx)1/2+wr (108)
The first order interval Taylor expansion of equation 108 follows in the same vein as for GNSS carrier phase observations
with the Jacobian and Hessian
Geometrically, this linearized range observation corresponds to the relative position vector projected on the gradient vector
while the nonlinear slant range corresponds to a sphere. Although a good approximation at large distances, the increasing curvature of the sphere introduces larger linearization errors as vehicles get closer to one another, rendering tight enclosures even more crucial.
Applying the generic approach of evaluating the Lagrange remainder term of equation 109 using Interval Arithmetic provides large over-approximation due to the multiple dependencies in x.
The wider the linearization error interval, the less likely it is that the linearized observations can contribute to contracting the guaranteed state set.
In the following we show that by explicitly evaluating the error between the nonlinear observation equation 107 and its linearization, exploiting monotonicity, tighter bounds can be obtained.
The explicit linearization error interval is given by
To verify monotonicity of equation 111 with respect to [x], consider the interval-valued gradient
Geometrically, this is the difference between two unit vectors. The expression (111) is thus piecewise monotonic, since the signs of the elements of (112) are constant over subintervals of [x]. Since x∈3, the number of these subintervals is at most 23, corresponding to at most 27 unique vertices. By evaluating equation (111) for each of these vertices, an exact enclosure of [ϵτ] can be computed. To quantify the benefit of exploiting piecewise monotonicity, we compute the interval with both approaches and compare their respective radii.
Note that the generic scheme yields interval radii up to four times as large as the scheme exploiting piecewise monotonicity, which in turn closely approximates the interval obtained by sampling.
We evaluated the filter on a benchmark UAS maneuver. It consists of two UAS, a leader and a follower. The follower changes its relative position from the right to the left of the x axis on a circular trajectory, see
In all three scenarios, the CZESMF filter provides smaller set volumes than both the IESMF (Iterated Extended Set-membership Filter) and VSIVIA (Vector implementation of SIVIA algorithm). We also evaluated the benefit of using T3D observations for propagation, compared to the coarse velocity norm-bound model. As
The achievable size and shape of relative position enclosures depend on the baseline-satellite geometry, as captured by the familiar Dilution of Precision (DOP) accuracy measure. It is thus of interest to know whether the relative conservativeness of the presented set-membership filters is robust with respect to variation in satellite constellations. We performed simulations of the benchmark maneuver over a set of randomly selected GPS orbit records. Satellite positions have been computed from a spline fit of the first two minutes of each orbit record.
The set state estimation method described above for nonlinear systems based on C-zonotopes robustly outperforms (in terms of set volumes) a nonlinear offline set estimator based on VSIVIA as well as a recent fast ellipsoidal set state estimator in a simulation scenario.
The proposed filter can be applied to a wide variety of estimation problems, including Simultaneous Localization And Mapping (SLAM), an exciting perspective in light of the current interest in safe visual localization of road vehicles.
Appendix A: Approximating a 2-Dimensional or 3-Dimensional Ball with a C-Zonotope
To approximate a ball of radius r centered at c, we compute an approximation in H-rep and convert it to a C-zonotope.
Given a vector of angles θ=(θ1, θ2, . . . , θl) evenly spaced in the interval
and ϕ=(ϕ1, ϕ2, . . . , ϕl) evenly spaced on [0, 2π] wherein θ is the zenith angle and ϕ is the azimuth angle and l is a complexity parameter, we compute for each combination of angles (θi, ϕj) a corresponding normal vector
Each of these normal vectors define a half-space. We can then readily write the corresponding polytope in H-rep
and convert it to G-rep. using the method given in “Constrained zonotopes: A new tool for set-based estimation and fault detection”, by J. K. Scott et al.
In two dimensions, the same approach is performed over a single set of angles θ=(θ1, θ2, . . . , θl) evenly spaced on [0, 2π].
Number | Date | Country | Kind |
---|---|---|---|
19305582.9 | May 2019 | EP | regional |
This application is a U.S. National stage of International Patent Application No. PCT/EP2020/062748 filed May 7, 2020, which claims the benefit of priority of European Patent Application No. 19305582.9 filed May 7, 2019, the respective disclosures of which are each incorporated herein by reference in their entireties.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/EP2020/062748 | 5/7/2020 | WO |