General and robust distributed linear filtering and prediction with optimal gain
View Patent ↗In one aspect of the invention, there is a computer-implemented method including: detecting, by a processor set of a first sensor agent, sensor data from one or more sensors comprised in the first sensor agent; determining, by the processor set, an own series of estimates, based on the sensor data; transmitting, by the processor set, the own series of estimates; receiving, by the processor set, at least one additional series of estimates from additional sensor agents; restoring, by the processor set, in response to detecting that a second sensor agent of the additional sensor agents has become disconnected and then re-connected, the transmitting of the series of estimates to the second sensor agent and the receiving of the series of estimates from the second sensor agent; and outputting, by the processor set, based on the own series of estimates and the additional series of estimates, a series of consensus estimates.
1 . A method, comprising:
detecting, by a processor set of a first sensor agent in a distributed processing system for making predictions about a random dynamical system, sensor data from one or more sensors comprised in the first sensor agent;
determining, by the processor set, an own series of estimates associated with the random dynamical system using a distributed estimation algorithm, based on the sensor data;
transmitting, by the processor set, the own series of estimates;
receiving, by the processor set, at least one additional series of estimates associated with the random dynamical system from one or more additional sensor agents in the distributed processing system;
restoring, by the processor set, in response to detecting that a second sensor agent of the one or more additional sensor agents has become disconnected and then re-connected, the transmitting of the own series of estimates to the second sensor agent and the receiving of the at least one additional series of estimates from the second sensor agent;
re-positioning, by the processor set, the first sensor agent in response to detecting that the second sensor agent of the one or more additional sensor agents has become disconnected; and
outputting, by the processor set, based on the own series of estimates and the additional series of estimates, a series of consensus estimates of the random dynamical system.
2 . The method of claim 1 , further comprising relaying a transmission of the at least one series of estimates from the one or more additional sensor agents.
3 . The method of claim 1 , wherein the re-positioning the first sensor agent comprises re-positioning the first sensor agent toward a last detected position of the second sensor agent.
4 . The method of claim 3 , wherein the re-positioning the first sensor agent further comprises re-positioning the first sensor agent while remaining within connectivity of at least one other sensor agent of the one or more additional sensor agents.
5 . The method of claim 1 , further comprising, in response to the detecting that the second sensor agent of the one or more additional sensor agents has become re-connected, re-positioning the first sensor agent.
6 . The method of claim 5 , wherein the re-positioning the first sensor agent comprises re-positioning the first sensor agent away from a detected present position of the second sensor agent.
7 . The method of claim 5 , wherein the re-positioning the first sensor agent comprises re-positioning the first sensor agent to a position that increases a local homogeneity of distribution of the first sensor agent, the second sensor agent, and the one or more additional sensor agents.
8 . The method of claim 1 , wherein the own series of estimates comprises a time series of filter estimates of observed states, based on the sensor data, and a time series of prediction estimates of predicted future states, based on the sensor data and on predictive modeling.
9 . The method of claim 8 , wherein the determining the own series of estimates comprises performing a distributed estimation algorithm to generate prediction updates and filtering updates.
10 . The method of claim 9 , wherein the determining the own series of estimates further comprises performing error analysis, wherein performing error analysis comprises:
determining a predictor error and a filter error for the first sensor agent;
determining local innovations and local innovation noise for the first sensor agent; and
performing recursive updates of the evolution of covariances, wherein a spectral radius of a dynamics matrix of error is less than 1,
wherein the first sensor agent and the one or more additional sensor agents form a distributed estimator that converges to consensus estimates,
wherein the consensus estimates have bounded mean-squared error (MSE) and the filter error is asymptotically stable.
11 . The method of claim 1 , wherein determining the own series of estimates further comprises performing an optimal gain design, wherein performing the optimal gain design comprises applying Gauss-Markov theorem, thereby generating gain matrices.
12 . The method of claim 11 , wherein the performing an optimal gain design further comprises:
using an optimal distributed filter that performs optimal fusion of estimates under unknown correlations by a Semidefinite Programming (SDP) relaxation, which is pre-computed and stored on the first sensor agent; and
determining a recursive iteration of a filter error covariance matrix which comprises a distributed version of a discrete algebraic Riccati equation for the distributed estimation algorithm.
13 . The method of claim 1 , further comprising using the outputted series of consensus estimates for at least one application selected from among the group of: multi-agent control, positioning, navigation, state estimation in electrical power grid infrastructure, spatio-temporal environment monitoring, spatio-temporal field monitoring, connected vehicular network for traffic balancing and collision avoidance, wildlife monitoring, and collaborative object tracking.
14 . A computer program product comprising one or more computer readable storage media having program instructions collectively stored on the one or more computer readable storage media, the program instructions executable to:
detect sensor data from one or more sensors comprised in a first sensor agent in a distributed processing system for making predictions about a random dynamical system;
determine an own series of estimates associated with the random dynamical system using a distributed estimation algorithm, based on the sensor data;
transmit the own series of estimates;
receive at least one additional series of estimates associated with the random dynamical system from one or more additional sensor agents in the distributed processing system;
restore, in response to detecting that a second sensor agent of the one or more additional sensor agents has become disconnected and then re-connected, the transmitting of the own series of estimates to the second sensor agent and the receiving of the at least one additional series of estimates from the second sensor agent;
re-position the first sensor agent, in response to detecting that the second sensor agent of the one or more additional sensor agents has become disconnected, wherein the re-positioning the first sensor agent comprises re-positioning the first sensor agent toward a last detected position of the second sensor agent, while remaining within connectivity of at least one other sensor agent of the one or more additional sensor agents; and
output, based on the own series of estimates and the additional series of estimates, a series of consensus estimates of the random dynamical system.
15 . The computer program product of claim 14 , wherein the program instructions are further executable to:
relay a transmission of the at least one series of estimates from the one or more additional sensor agents;
determine, based on the own series of estimates and the additional time series of estimates, a series of consensus estimates.
16 . The computer program product of claim 14 , wherein the program instructions are further executable to:
in response to the detecting that the second sensor agent of the one or more additional sensor agents has become re-connected, re-positioning the first sensor agent, wherein the re-positioning the first sensor agent comprises re-positioning the first sensor agent away from a detected present position of the second sensor agent, to a position that increases a local homogeneity of distribution of the first sensor agent, the second sensor agent, and the one or more additional sensor agents.
17 . A system comprising:
a processor set, one or more computer readable storage media, and program instructions collectively stored on the one or more computer readable storage media, the program instructions executable to:
detect sensor data from one or more sensors comprised in a first sensor agent in a distributed processing system for making predictions about a random dynamical system;
determine an own series of estimates associated with the random dynamical system using a distributed estimation algorithm, based on the sensor data;
transmit the own series of estimates;
receive at least one additional series of estimates associated with the random dynamical system from one or more additional sensor agents in the distributed processing system;
restore, in response to detecting that a second sensor agent of the one or more additional sensor agents has become disconnected and then re-connected, the transmitting of the series of own estimates to the second sensor agent and the receiving of the at least one additional series of estimates from the second sensor agent;
re-position the first sensor agent, in response to detecting that the second sensor agent of the one or more additional sensor agents has become disconnected; and
output, based on the own series of estimates and the additional series of estimates, a series of consensus estimates of the random dynamical system.
18 . The system of claim 17 , wherein the program instructions are further executable to:
relay a transmission of the at least one series of estimates from the one or more additional sensor agents;
determine, based on the own series of estimates and the additional time series of estimates, a series of consensus estimates.
19 . The system of claim 17 , wherein the program instructions are further executable to:
in response to the detecting that the second sensor agent of the one or more additional sensor agents has become re-connected, re-positioning the first sensor agent, wherein the re-positioning the first sensor agent comprises re-positioning the first sensor agent away from a detected present position of the second sensor agent, to a position that increases a local homogeneity of distribution of the first sensor agent, the second sensor agent, and the one or more additional sensor agents.
20 . The system of claim 17 , wherein the re-positioning the first sensor agent comprises re-positioning the first sensor agent toward a last detected position of the second sensor agent, while remaining within connectivity of at least one other sensor agent of the one or more additional sensor agents.