Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD, DEVICE, AND SYSTEM FOR CONTROLLING STATE PARAMETER BY COMMUNICATING DEVICE
Document Type and Number:
WIPO Patent Application WO/2022/259581
Kind Code:
A1
Abstract:
The present disclosure relates to a method (40) for controlling a state parameter by a communicating device (20), referred to as processing device (20), in a set of communicating devices (20), a subset of communicating devices being associated to said processing device, said subset including the processing device and the communicating devices from which the processing device receives data for updating (S42) a local value of the state parameter, the processing device estimating (S41) an aggregated state parameter aggregating the local values of the state parameter of the communicating devices of the subset by using a Kalman filter which applies a process model, an error introduced by the process model being modeled as a process noise, the processing device updating its local value of the state parameter based on the estimated aggregated state parameter; wherein the processing device (20) determines (S44) a convergence level of the local values of the state parameter and modifies (S45) a covariance matrix of the process noise based on the determined convergence level.

Inventors:
BOUTTIER ARNAUD (FR)
Application Number:
PCT/JP2021/047755
Publication Date:
December 15, 2022
Filing Date:
December 16, 2021
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
MITSUBISHI ELECTRIC CORP (JP)
MITSUBISHI ELECTRIC R&D CT EUROPE BV (NL)
International Classes:
G05B13/04
Other References:
TAMJIDI AMIRHOSSEIN ET AL: "Unifying Consensus and Covariance Intersection for Efficient Distributed State Estimation Over Unreliable Networks", IEEE TRANSACTIONS ON ROBOTICS, IEEE SERVICE CENTER, PISCATAWAY, NJ, US, vol. 37, no. 5, 12 April 2021 (2021-04-12), pages 1525 - 1538, XP011880793, ISSN: 1552-3098, [retrieved on 20210930], DOI: 10.1109/TRO.2021.3064102
ANTONIO PETITTI ET AL: "Distributed target tracking for sensor networks with only local communication", CONTROL&AUTOMATION (MED), 2011 19TH MEDITERRANEAN CONFERENCE ON, IEEE, 20 June 2011 (2011-06-20), pages 662 - 667, XP031928035, ISBN: 978-1-4577-0124-5, DOI: 10.1109/MED.2011.5983177
BATTISTELLI GIORGIO ET AL: "Stability of consensus extended Kalman filter for distributed state estimation", AUTOMATICA, PERGAMON, AMSTERDAM, NL, vol. 68, 22 February 2016 (2016-02-22), pages 169 - 178, XP029499018, ISSN: 0005-1098, DOI: 10.1016/J.AUTOMATICA.2016.01.071
D. HAUMANNV. WILLERTA. WAHRBURG: "Kalman filtering in mobile consensus networks", 2012 IEEE INTERNATIONAL SYMPOSIUM ON INTELLIGENT CONTROL, DUBROVNIK, CROATIA, October 2012 (2012-10-01), pages 944 - 950
WEI RENR. W. BEARDD. B. KINGSTON: "Multi-agent Kalman consensus with relative uncertainty", PROCEEDINGS OF THE 2005, AMERICAN CONTROL CONFERENCE, 2005, pages 1865 - 1870, XP010820069
Attorney, Agent or Firm:
SOGA, Michiharu et al. (JP)
Download PDF:
Claims:
[CLAIMS]

[Claim 1]

A method for controlling a state parameter by a communicating device, referred to as processing device, in a set of communicating devices, said processing device storing a local value of the state parameter and exchanging data with other communicating devices to enable all communicating devices to converge towards having a same value of the state parameter, referred to as consensus value, wherein a subset of communicating devices is associated to said processing device, said subset including the processing device and the communicating devices from which said processing device receives data, said method comprising iterating steps of:

- receiving local values of the state parameter from the other communicating devices of the subset associated to the processing device;

- updating its local value of the state parameter based on the received local values of the state parameter, wherein at least some of said received local values are corrupted by an observation noise; transmitting its local value of the state parameter to other communicating devices; wherein the processing device iteratively estimates an aggregated state parameter aggregating the local values of the state parameter of the communicating devices of the subset, based on the received local values of the state parameter, by using a Kalman filter which applies a process model, an error introduced by the process model being modeled as a process noise, said processing device updating its local value of the state parameter based on the estimated aggregated state parameter; wherein the processing device iteratively determines a convergence level of the local values of the state parameter and modifies a covariance matrix of the process noise based on the determined convergence level. [Claim 2]

The method according to claim 1, wherein modifying the covariance matrix of the process noise comprises causing a norm of said covariance matrix of the process noise to decrease as the local values of the state parameter converge. [Claim 3]

The method according to claim 1, wherein the covariance matrix of the process noise is further modified based on a covariance matrix of the observation noise, and wherein modifying the covariance matrix of the process noise comprises causing a ratio between a norm of the covariance matrix of the process noise and the norm of the covariance matrix of the observation noise to decrease as the local values of the state parameter converge.

[Claim 4]

The method according to claim 3, wherein the covariance matrix of the process noise corresponds to the covariance matrix of the observation noise multiplied by a positive weighting factor, and modifying the covariance matrix of the process noise comprises causing the weighting factor to decrease as the local values of the state parameter converge.

[Claim 5]

The method according to any one of claims 1 to 4, wherein determining the convergence level comprises estimating the consensus value and computing a distance between the local values of the state parameter and the estimated consensus value.

[Claim 6]

The method according to any one of claims 1 to 5, wherein determining the convergence level by the processing device at an iteration k comprises computing a distance between two multivariate Gaussian random variables. [Claim 7]

The method according to claim 6, wherein the two multivariate Gaussian variables comprise: a random variable having a mean and a covariance matrix computed based on the local values of the state parameter observed over successive iterations; and a random variable representative of an estimate of the consensus value corrupted by the observation noise.

[Claim 8]

The method according to claim 6 or 7, wherein the distance computed is a Bhattacharyya distance.

[Claim 9]

The method according to any one of claims 1 to 3, wherein the convergence level is determined based on a number of iterations of the updating step.

[Claim 10]

The method according to any one of claims 1 to 9, wherein the processing device dynamically adapts the process model at each iteration to account for packets of data, containing updated local values, that were not received from other communicating devices of the subset.

[Claim 11]

The method according to any one of claims 1 to 10, wherein the process model of the Kalman filter assumes that each communicating device of the subset associated to the processing device receives data only from communicating devices of said subset.

[Claim 12]

A computer program product comprising instructions which, when executed by a communication device comprising a communication unit and a processing circuit, configure said communication device to carry out a method (40) according to any one of claims 1 to 11. [Claim 13]

A computer-readable storage medium comprising instructions which, when executed by a communication device comprising a communication unit and a processing circuit, configure said communication device to carry out a method (40) according to any one of claims 1 to 11.

[Claim 14]

A communication device comprising a communication unit and a processing circuit configured to carry out a method according to any one of claims 1 to 11.

[Claim 15]

A communication system comprising a plurality of communicating devices according to claim 14.

Description:
[DESCRIPTION]

[Title of Invention]

METHOD, DEVICE, AND SYSTEM FOR CONTROLLING STATE PARAMETER BY COMMUNICATING DEVICE [Technical Field]

[0001]

The present disclosure relates to communication systems and relates more specifically to the cooperative control of multiple communicating devices, a.k.a. multi-agent systems (MAS).

[Background Art]

[0002]

Cooperative control algorithms aim at enabling multiple communicating devices to fulfill a common goal.

[0003]

For instance, the consensus algorithm aims at enabling multiple communicating devices to achieve an agreement on a state parameter. In practice, a number of communicating devices exchange data with their neighbors to agree on a value of the state parameter that enable them to work together in a coordinated fashion. When multiple communicating devices agree on the same value of the state parameter, they are said to have reached a consensus.

[0004]

Cooperative control algorithms such as the consensus algorithm or the model predictive control (MPC) algorithm are often applied in formation control problems with applications to mobile robots, unmanned air vehicles (UAVs), autonomous underwater vehicles (AUVs), satellites, aircraft, spacecraft, automated highway systems, etc. Cooperative control algorithms can also be applied to non-formation related problems such as task assignment, payload transport, role assignment, air traffic control, synchronization, etc. [0005]

A typical application of a cooperative control algorithm such as a consensus algorithm can be to measure the average temperature in a geographical area from a set of remote sensors, or to control a platoon of vehicles on a highway in order to e.g. maintain the geometrical arrangement of the vehicles of the platoon substantially constant over time.

[0006]

Typically, the communicating devices exchange their local values of the state parameter. Hence, each communicating device may update its own local value of the state parameter based on local values of the state parameter received from neighbor communicating devices.

[0007]

An issue with the conventional cooperative control algorithms, such as the consensus algorithm, is that they assume that the local values of the state parameter are known perfectly. However, these local values of the state parameter are usually corrupted by e.g. an additive noise which may impact the convergence of the consensus algorithm.

[0008]

In the scientific literature, solutions have been proposed relying on Kalman filter-based state observers for de-noising the observed local values of the state parameter in the context of a consensus algorithm. However, most solutions rely on a global formulation of the consensus algorithm, i.e. they are applicable only when each communicating device receives data from all the other communicating devices. However, in most practical systems, a communicating device can receive data only from some of the other communicating devices, and these solutions relying on a global formulation of the consensus algorithm are therefore not applicable as such. They may be applied by e.g. using multi-hop communications for enabling each communicating device to receive data from all the other communicating devices, as proposed in NPL 1. However, this solution implies that that consensus algorithm will converge more slowly and requires a significant increase of the amount of data exchanged between the communicating devices.

[0009]

Another solution relying on a Kalman filter for de-noising the local values of the state parameter is proposed in NPL 2. In NPL 2, a Kalman filter based state observer may be implemented locally by each communicating device under some assumptions. However, the solution proposed in NPL 2 requires that each communicating device transmits to the other communicating devices, at each iteration of the consensus algorithm, a local covariance matrix of the local value of the state parameter. Hence, each communicating device transmits both its local value of the state parameter and its local covariance matrix, thereby resulting in a significant increase of the amount of data exchanged between the communicating devices.

[0010]

Hence, the existing solutions are not directly applicable to the case where each communicating device receives data only from some of the communicating devices and/or require transmitting additional data which leads to a contradiction since this additional data will also be corrupted by noise.

[Citation List]

[Non Patent Literature]

[0011]

[NPL 1]

D. Haumann, V. Willert and A. Wahrburg, “Kalman filtering in mobile consensus networks”, in 2012 IEEE International Symposium on Intelligent Control, Dubrovnik, Croatia, oct. 2012, p. 944-950.

[NPL 2] Wei Ren, R. W. Beard and D. B. Kingston, “Multi-agent Kalman consensus with relative uncertainty”, in Proceedings of the 2005, American Control Conference, 2005., Portland, OR, USA, 2005, p. 1865-1870.

[Summary of Invention]

[0012]

The present disclosure aims at improving the situation, by overcoming at lease some of the limitations of the prior art discussed above. In particular, the present disclosure aims at proposing a solution for de-noising the observations of the local values of the state parameter when each communicating device receives data only from some of the other communicating devices, without requiring increasing the amount of data to be exchanged.

[0013]

For this purpose, and according to a first aspect, the present disclosure relates to a method for controlling a state parameter by a communicating device, referred to as processing device, in a set of communicating devices, said processing device storing a local value of the state parameter and exchanging data with other communicating devices to enable all communicating devices to converge towards having a same value of the state parameter, referred to as consensus value, wherein a subset of communicating devices is associated to said processing device, said subset including the processing device and the communicating devices from which the processing device receives data, said method comprising iterating steps of: receiving local values of the state parameter from the other communicating devices of the subset;

- updating its local value of the state parameter based on the received local values of the state parameter, wherein at least some of said received local values are corrupted by an observation noise;

- transmitting its local value of the state parameter to other communicating devices; wherein the processing device iteratively estimates an aggregated state parameter aggregating the local values of the state parameter of the communicating devices of the subset, based on the received local values of the state parameter, by using a Kalman filter which relies on a process model (a.k.a. state-space model) that includes a process noise to model the inaccuracy of the process model, said processing device updating its local value of the state parameter based on the estimated aggregated state parameter; and wherein the processing device iteratively determines a convergence level of the local values of the state parameter and controls a covariance matrix of the process noise based on the determined convergence level.

[0014]

In specific embodiments, the method can further comprise one or more of the following features, considered either alone or in any technically possible combination.

[0015]

In specific embodiments, the process model of the Kalman filter assumes that each communicating device of the subset associated to the processing device receives data only from communicating devices of said subset.

[0016]

In specific embodiments, modifying the covariance matrix of the process noise comprises causing a norm of said covariance matrix to decrease as the local values of the state parameter converge.

[0017]

In specific embodiments, the covariance matrix of the process noise is further modified based on a covariance matrix of the observation noise, and modifying the covariance matrix of the process noise comprises causing a ratio between a norm of the covariance matrix of the process noise and the norm of the covariance matrix of the observation noise to decrease as the local values of the state parameter converge.

[0018]

In specific embodiments, the covariance matrix of the process noise corresponds to the covariance matrix of the observation noise multiplied by a positive weighting factor and modifying the covariance matrix of the process noise comprises causing the weighting factor to decrease as the local values of the state parameter converge.

[0019]

In specific embodiments, determining the convergence level comprises estimating the consensus value and computing a distance between the local values of the state parameter and the estimated consensus value.

[0020]

In specific embodiments, determining the convergence level by the processing device at an iteration k comprises computing a distance between two multivariate Gaussian random variables.

[0021]

In specific embodiments, the two multivariate Gaussian variables comprise: a random variable having a mean and a covariance matrix computed based on the local values of the state parameter observed over successive iterations; and a random variable representative of an estimate of the consensus value corrupted by the observation noise.

[0022]

In specific embodiments, the distance computed is a Bhattacharyya distance.

[0023] In specific embodiments, the convergence level is determined based on a number of iterations of the updating step.

[0024]

In specific embodiments, the processing device dynamically adapts the process model at each iteration to account for packets of data, containing updated local values, that were not received from other communicating devices of the subset.

[0025]

According to a second aspect, the present disclosure relates to a computer program product comprising instructions which, when executed by a communication device comprising a communication unit and a processing circuit, configure said communication device to carry out a method according to any one of the embodiments of the present disclosure.

[0026]

According to a third aspect, the present disclosure relates to a computer- readable storage medium comprising instructions which, when executed by a communication device comprising a communication unit and a processing circuit, configure said communication device to carry out a method according to any one of the embodiments of the present disclosure.

[0027]

According to a fourth aspect, the present disclosure relates to a communicating device comprising a communication unit and a processing circuit configured to carry out a method according to any one of the embodiments of the present disclosure.

[0028]

According to a fifth aspect, the present disclosure relates to a communication system comprising a plurality of communicating devices according to any one of the embodiments of the present disclosure. [0029]

The invention will be better understood upon reading the following description, given as an example that is in no way limiting, and made in reference to the figures.

[Brief Description of Drawings]

[0030]

[Fig. 1]

Figure 1 is a schematic representation of a graph representing the communication links between communicating devices.

[Fig. 2]

Figure 2 is a local representation of a consensus algorithm.

[Fig. 3]

Figure 3 is a global representation of a consensus algorithm.

[Fig. 4]

Figure 4 is a local representation of a noisy consensus algorithm.

[Fig. 5]

Figure 5 is a global representation of a noisy consensus algorithm.

[Fig. 6]

Figure 6 is a global representation of a noisy consensus algorithm.

[Fig. 7]

Figure 7 is a global representation of a noisy consensus algorithm.

[Fig. 8]

Figure 8 is a global representation of a noisy consensus algorithm.

[Fig. 9]

Figure 9 is a representation of a Luenberger observer.

[Fig. 10]

Figure 10 is a representation of the successive steps of a Kalman filter. [Fig. 11] Figure 11 is a representation of a Kalman filter-based state observer.

[Fig. 12]

Figure 12 are representations of Kalman filter-based state observers for a noisy consensus algorithm.

[Fig. 13]

Figure 13 is a diagram representing the main steps of an exemplary embodiment of a method for controlling a state parameter.

[Fig. 14]

Figure 14 is a schematic representation of an exemplary embodiment of a communication device.

[Description of Embodiments]

[0031]

In these figures, references identical from one figure to another designate identical or analogous elements. For reasons of clarity, the elements shown are not to scale, unless explicitly stated otherwise.

[0032] .

As indicated above, the present disclosure relates to the cooperative control of a plurality of communicating devices.

[0033]

We first present conventions used in the following description, and how the performance of a cooperative control algorithm may be evaluated.

[0034]

A) Graph theory

It is natural to model data exchange between communicating devices by directed/undirected graphs. A digraph (i.e. a directed graph) consists of a pair where is a finite nonempty set of communicating devices and is a set of ordered pairs of communicating devices, called directed edges is the directed edge or communication link from the communicating device j to the communicating device i ). For simplification purposes, we use in the following “edge” rather than “directed edge” and “graph” rather than “digraph” (the context, i.e. directed or undirected is considered clear).

[0035]

As a comparison, the pairs of communicating devices in an undirected graph are unordered. A directed path is a sequence of ordered edges in a digraph, of the form ..., where i,j, k, l, ... in a digraph. An undirected path in an undirected graph is defined analogously, where implies A digraph is called “strongly connected” if there is a directed path from every communicating device to every other communicating device. An undirected graph is called connected if there is a path between any distinct pair of communicating devices. A directed tree is a digraph in which every communicating device, except the root, has exactly one parent. A spanning tree of a digraph is a directed tree formed by graph edges that connect all the communicating devices of the graph. We say that a graph has (or contains) a spanning tree if there exists a spanning tree that is a subset of the graph. Note that the condition that a digraph has a spanning tree is equivalent to the case that there exists a communicating device having a directed path to all other communicating devices.

[0036]

For a total number n of communicating devices, the adjacency matrix of a deterministic digraph is defined as

1 if where . Setting denotes the fact that a communicating device i does not (i.e. cannot or does not wish to) receive data from a communicating device j. The Laplacian matrix of the digraph is defined as where and i.e.. where is the in-degree matrix (number of communicating devices from which the communicating device i receives data). For an undirected graph, the Laplacian matrix is symmetric positive semi-definite. [0037]

Figure 1 represents an undirected graph with n = 3 communicating devices 20. In this figure, the communicating devices are referred to as 20 -k with 1 ≤ k ≤ n = 3 in order to differentiate the communicating devices 20. The associated adjacency and Laplacian matrices are the following:

[0038]

B) Consensus algorithms

Let be the local value of the state parameter of the i th communicating device. The state parameter represents the parameter that needs be coordinated between communicating devices, by using e.g. a consensus algorithm. The state parameter may be for instance the communicating device’s position, velocity, oscillation phase, etc.

[0039]

A continuous-time single-integrator static consensus algorithm can be summarized as: wherein represents the subset of n i communicating devices whose local values of the state parameter are available to the i-th communicating device at time t (defined by the adjacency matrix ) and α ij (t) denotes a positive possibly time-varying weighting coefficient. In other words, the local control information of each communicating device is driven toward the states of the local control information of its (possibly time-varying) neighbors at each time. It is common to extend the adjacency matrix for a weighted digraph defined as if whe re and otherwise.

[0040]

The continuous-time consensus algorithm can be written in matrix form: wherein is the global aggregated state parameter comprising the local values of the state parameter of all the communicating devices, I m is the identity matrix with size m , the Kronecker matrix product.

[0041]

In the following description, we consider in a non-limitative manner the discrete version of the single-integrator static consensus algorithm. It is assumed that the communicating devices update their local values of the state parameter recurrently in time and transmit in the same time interval the updated values over the communication links. Each communicating device updates its local value of the state parameter according to:

[0042]

In the following description, we consider in a non-limitative manner the case where the consensus algorithm is applied with a single weighting coefficient α for all the communicating devices: [0043]

This system can also be expressed as: wherein:

- is an aggregated state parameter (vector) of the communicating devices in the subset whose local values of the state parameter are available at time k;

[0044]

The corresponding system is depicted in figure 2, and can be viewed as a first-order integrator driven by the command signal u i k built as the weighted superposition of a feedback loop and an exogeneous reference signal bringing the contribution of the other communicating devices.

[0045]

For the global aggregated state parameter, we have: wherein: wherein D n k and L n k are the in-degree and Laplacian matrices corresponding to a non-weighted digraph

[0046]

For the global aggregated state parameter, the system can further be written as:

[0047] The corresponding system for the global aggregated state parameter is depicted on figure 3. Logically, the overall system is endogenous, i.e. it is built as a first order integrator with a feedback loop driven by the global aggregated state parameter and no external reference signal, the controller being here the weighted Laplacian matrix. The command signal is built from the observation of the integrator output.

[0048]

In the case of a deterministic graph, it can be shown that as long as the Laplacian is connected (λ 2 (L n ) > 0 wherein λ 2 (L h ) corresponds to the second smallest eigenvalue of the so-called Laplacian matrix L n ), the system converges if α ≤ 1/deg max where deg max is the maximum degree of the graph, i.e. the maximum number of neighbors a communicating device communicates with. Note that in such a case, the matrix W n k is stochastic, i.e. with rows that sum up to one and with a positive diagonal.

[0049]

To illustrate the behavior of the consensus algorithm, let’s first assume that each communicating device receives a scalar information from all the other communicating devices at all times. Thus, we have: wherein and the all-one vector. Finally, as matrix is idempotent we obtain:

[0050]

The local value of the state parameter of all the communicating devices converges to the same value that is the average of the initial local values. In such a case, we talk about the average consensus. Note that the terminology average is sometimes used to describe all the situations where the consensus converges towards a weighted average of the initial local values. The convergence of the discrete time consensus algorithm can actually be generalized to other matrices W n k . It actually suffices that where v is a column vector.

[0051]

It can be shown that for a directed graph, the discrete-time consensus algorithm achieves consensus asymptotically if and only if the matrix W n has a single unitary eigenvalue associated to the eigenvector 1 n , i.e. λ 2 (W n ) < 1 wherein λ 2 (W n ) corresponds to the second largest eigenvalue of the matrix W n (similarly λ 2 (L n ) > 0 wherein λ 2 (L n ) corresponds to the second smallest eigenvalue of the so-called Laplacian matrix L n with an additional constraint on the weighting coefficient). This results actually means that the digraph has a spanning tree (i.e. there is no two separate graphs in the topology). Then, the consensus algorithm converges towards: wherein satisfies i.e. v is the left row eigenvector of W n associated with eigenvalue 1. This means that the global aggregated state parameter of the communicating devices converges towards the same linear combination of the initial global aggregated state parameter x 0 , not necessarily the mean value. As left and right eigenvalues of a square matrix are the same, every stochastic matrix has, at least, one row eigenvector associated to the eigenvalue 1. In order to obtain an average consensus, i.e., the matrix W n needs only to be doubly stochastic. It is actually known that the discrete-time consensus algorithm can achieve average consensus asymptotically if and only if the directed graph is strongly connected (there is a spanning tree for each communicating device) and degree-balanced (each communicating device has the same number of connections in both directions - the in-degree equals the out-degree). [0052]

For an undirected graph, the discrete-time consensus algorithm can achieve consensus asymptotically if and only if the matrix W n has a single unitary eigenvalue associated to the eigenvector 1 n . From the topology point of view, it means that the graph is connected. If an undirected graph has a spanning tree, then it is necessarily strongly connected and balanced ( W n is symmetric and thus doubly stochastic). The consensus algorithm converges in average.

[0053]

C) Impact of noisy values of the state parameter

Without losing in generality, the consensus algorithm is now described for a scalar state parameter (i.e. m = 1).

[0054]

Multi-agent and more generally control systems are subject to different sources of errors which can be modelled in the control systems as additive noises. These sources of errors are mainly of two types, namely disturbances and observation (or measurement) noises.

[0055]

Typical types of “real” disturbances are gusts of wind or frictions in motors for moving vehicles. If these disturbances cannot be measured to be considered by the controller, the control system may reach different state values for the same command. It is thus important to consider the impact of these disturbances in order to drive the control system to the reference state. This is precisely the advantage of closed-loop controlled systems to be able to cope with disturbances. Disturbances can occur either as the input or the output of the control system. Disturbances can also be somehow “virtual” when designing a controller relying on a model that does not reflect accurately the behavior of the actual system. In the general case of a first-order consensus algorithm, the disturbance can be modelled as follows: wherein q i k is the input additive disturbance that affects the control system. This kind of disturbance is also commonly referred to as a process noise.

[0056]

The present disclosure aims at mitigating the impact of the second source of errors, i.e. the observation (or measurement) noises. In order -to build the command signal of closed-loop systems, it is required to know the value of the system’s state. But the state is often not observed directly but combined with an additive observation noise. Dealing with multi-agent systems, the observation noise can originate from the transmission itself. This would be the case e.g. for signals transmitted using an analogue modulation. Analogue signals are indeed observed with an additive degradation possibly brought by the propagation channel but essentially by the first stages of the receiver (thermal noise). In the general case of a single integrator consensus algorithm, we have for the i-th communicating device: wherein the command signal u i k is built from the state parameter local value x i k of the i-th communicating device and the observation of the neighbor’s state parameter local values Due to the noise, the i-th communicating device does not observe the actual state parameter local values of its neighbors but noisy versions instead: wherein: is an aggregated state parameter observation

(vector) of the n i communicating devices in the subset whose local values of the state parameter are available at time k, y j k being the (noisy) state parameter local value obtained for the y-th communicating device; aggregated vector of the noise values affecting the local values of the state parameter coming from the neighbors of the i -th communicating device, being the noise component added to the local value of the state parameter transmitted from the communicating device to the i-th communicating device.

[0057]

In such a case, the noise is edge-dependent, i.e. the local value of the state parameter coming from a given communicating device is observed by its neighbors with a different noise component.

[0058]

Without applying any method for reducing the impact of the observation noise, the consensus algorithm is built by feeding back the noisy observations. The discrete-time consensus algorithm, as applied by the i-th communicating device, can be expressed as: wherein is the local value of the state parameter of the noisy consensus algorithm for the i-th communicating device. Note that the number of neighbors can change with time according to the status of the transmission, and that it can vary from a communicating device to the other. The corresponding system, as seen by the i-th communicating device, is depicted in figure 4.

[0059]

Modelling the impact of the transmission and edge-dependent noise for the global system, i.e. for the global aggregated state parameter, is not straightforward as the noise component is different over each edge departing from a same communicating device.

[0060]

The global system can be interpreted as shown in figure 5 where the aggregated state parameter is observed over n parallel lines with a different noise component over each line. In this figure, is the row i of the adjacency matrix A n k is the_ vector with size n populated with the noise components in at the positions of the neighbors connected to the i-th communicating device and zero elsewhere. Thus, over each line we have: wherein:

[0061]

The n parallel branches can finally be replaced by a single branch where the state is observed through the matrix as follows: wherein . The corresponding system is depicted in figure 6. The command signal is built from the noiseless observation of the state parameter local values while the second component (neighbors’ contribution) shall be built from the noisy observation introduced above. Without applying any method for reducing the impact of the observation noise, the consensus is built by feeding back the noisy observations:

[0062]

The occurrence of an additive transmission noise component is not so common as multi-agent systems rely most of the time on digital modulations where the transmission impairments result in the information being properly received or not received at all (packet loss). The state parameter local value can nonetheless be degraded by the noise resulting e.g. from the quantization of the local value prior to transmission. The local value can itself be observed with noise, e.g. when the position of the communicating device after being driven by the integrator is refreshed using a positioning technology (e.g. GNSS). In such a case, the noise is communicating device-dependent (and edge-independent), i.e. the same noisy local value is transmitted to all the neighbors of the communicating device. In the case the noise only affects the value transmitted by the communicating device to its neighbors, the situation is like the transmission noise described before. Each communicating device shall build the command signal u i k using the local state value and the noisy observation of the neighbor’s state values : wherein:

- is aggregated vector of the noise values affecting the state parameter local values coming from the neighbors of the i-th communicating device, η j,k being the noise component added to the state parameter local value received by the i-th communicating device (and by all the neighbors) from the j- th communicating device where

[0063]

In the case the local state value is also affected by noise, the i -th communicating device shall build the command signal from the observation: wherein: the aggregated state parameter observation (vector) augmented with the local observation of the state parameter of the i-th communicating device; and:

- is the aggregated vector of the noise values augmented with the noise component affecting the state parameter local value of the i-th communicating device.

[0064] '

In the case the local state value of the i-th communicating device is not affected by noise, the noise component reduces to

[0065]

Dealing with the global system, the two previous Situations simply differ from the way the command signal is built. In both cases, the output of the integrator is directly observed with noise as follows: y k = x k + η k wherein · As shown in figure 7, in the case of the noise component affecting only the state parameter local values transmitted to the neighbors, one part of the command signal is built from the noisy observation while a second one relying on the inner state parameter local value uses the noiseless observation. In the case of the noise component also affecting the inner state parameter local value, the overall command signal is computed from the noisy observation (see figure 8).

[0066]

At this stage, it is important to emphasis on a misleading aspect of the global description of the consensus algorithm. One may notice that as the global aggregated state parameter is available from the first feedback branch in figure 6, this information could be used to compute the contribution of the third branch avoiding the noise. It should not be forgotten that the consensus algorithm is a distributed algorithm. As a matter of fact, the first branch is a diagonal matrix that corresponds to each communicating device’s own local value of the state parameter. The second branch, the adjacency matrix, brings to each communicating device the knowledge of its neighbors’ local values. This second branch is thus the heart of the consensus algorithm.

[0067]

The present disclosure aims at reducing the impact of the observation noise onto the performance of the consensus algorithm. In all the situations introduced above for measurement or observation noise, the noisy consensus algorithm can be modelled as: where the situation differs in the construction of the noise component It can easily be shown that this algorithm can be rewritten as follows: where:

[0068]

The value obtained from the noisy consensus is thus the superposition of the noiseless value (the expected one) superimposed with a correlated and colored noise. As an autoregressive process with order 1, the component c k behaves similarly to a random walk. It results that the noisy consensus algorithm cannot converge to an equilibrium value as such.

[0069]

D) De-noising the consensus algorithm

A possible approach is to mitigate the level of noise onto the observations (a.k.a. de-noising). The most common approach is to rely on stochastic signal processing algorithms where part of or all the variables are described as random processes with some known statistics. As shown in the equations above, the noisy consensus algorithm can be expressed as the superposition of the noiseless consensus value with a colored and correlated noise. This can be viewed as the estimation of the process x k from the noisy observations where the process of interest is described by the linear state-space equations:

[0070]

Assuming Gaussian observations, the problem falls in the framework of the well-known Kalman filtering.

[0071]

E) Kalman filtering

The Kalman filtering is the closed form solution of the more general Bayesian recursive filtering when the measurements and observations are linear Gaussian. Generally, the model is described as follows where:

- x k is the state value to be estimated;

- F k is the n x n state-transition matrix;

- v k is a deterministic control vector;

- B k is the n x n command-input matrix; q k is the process noise (a.k.a. state or system noise) that describes the uncertainty about the model, assumed to be drawn from a zero-mean Gaussian process with covariance matrix Q k ,

- y k is the state observation (or measurement) vector;

- H k is the m x n observation matrix;

- r k is the observation noise that is assumed to be drawn from a zero-mean Gaussian process with covariance matrix R k .

[0072]

The processes r k and q k are assumed uncorrelated with each other. The initial state, and the noise vectors at each step are all assumed to be mutually independent.

[0073]

The Bayesian filter recursively computes the marginal distribution of the state value x k that from the observations y 0 ,y 1 , ... ,y k . ln this specific case, we have a probabilistic state space model where

[0074]

As the distribution is Gaussian, the filtering reduces to the estimation of its mean and covariance matrix where:

[0075]

The Kalman filter is a linear recursive estimator of the unknow state. At each iteration, it produces an estimate of the mean and covariance matrix. The Kalman filter can be written as a single equation but according to the Bayesian methodology, it is most often described as a two-phase algorithm. The prediction phase uses the state estimate from the previous iteration to produce an estimate of the state at the current iteration using the knowledge of the model. This predicted state estimate is also known as the a priori state estimate because, although it is an estimate of the state at the current iteration, it does not include observation information from the current iteration. In the update phase, the current a priori prediction is combined with the current observation information to refine the state estimate. This improved estimate is termed the a posteriori state estimate. The Kalman equations are summarized in Table I below.

[0076]

Table I

[0077]

From the knowledge of the marginal probability density function it is possible to build any estimator of the state. The most common one is the minimum MSE (MMSE). At each iteration, the filter produces the estimate of the state that from the observations y 0, y 1, ... , y k minimizes the mean square error: [0078]

Also note that we have:

[0079]

The Kalman filter is the optimal linear filter in cases where a) the model perfectly matches the real system, b) the entering noise is white (uncorrelated) and c) the covariances of the noise are exactly known. In such a case, the Kalman filter is unbiased and is from that respect the minimum unbiased variance estimator (MVUE) and in this specific case, the best linear unbiased estimator (BLUE). Many variations exist such as the information filter, and the family of the extended Kalman filters designed to deal with non-linear models.

[0080]

As previously explained, the noisy consensus system is compatible with the Kalman filtering for de-noising the underlying consensus value. However, this is not strictly accurate as the noise process c k is not i.i.d. but coloured owing to its autoregressive (AR) structure. Some approaches have been devised for handling such situations starting with a state-augmented algorithm where the colored noise is added to the state to be estimated. However, the state-augmented approach is known to suffer from implementation instability.

[0081]

F) State observer

In the sequel, the notation is replaced by x k to simplify the notations (the value of the noiseless consensus algorithm is no more considered). Kalman filtering can also be used for de-noising systems according to the state-observer principle. Let’s first remind the principle of the state-observer principle in the deterministic linear case. The state of a linear, time-invariant physical discretetime system is assumed to satisfy: where x k is the system’s state, v k its input and y k its output. For control purposes the system state is fed back to the input of the system through a diagonal gain matrix v k = Gx k .

[0082]

For simplicity, it is assumed that the reference is zero As shown in the equations above, the system state is not observed as such but through the observation matrix H. It is thus required to first estimate the state in order to close the loop. This can be done using e.g. the so-called Luenberger observer defined by the equations below:

[0083]

The principle of the Luenberger state observer is graphically depicted in figure 9. Basically, the Luenberger observer makes use of a model of the system driven by an error signal between the true system’s output and the model’s output. It can be shown that the Luenberger observer for this discrete-time system is asymptotically stable (the error on the state converges to 0) when the matrix F — K L H has all the eigenvalues inside the unit circle. Upon appropriately selecting the Luenberger matrix gain K L , it is therefore possible to feed back the output of the observer system to the input of both the observer and the system through the gain matrix Note that the command signal u k = Bv k can be built not only from the estimation of the state x k but also from a partial knowledge of the state as previously described for the noisy consensus. However, it is always required to estimate the state value from noisy observations.

[0084]

The principle of the Luenberger observer can be extended to systems with additive perturbations. It can be noticed that the Luenberger observer closely resembles the Kalman filter. The Kalman filter is itself a dynamic state observer in the case of stochastic additive noises. The model of the system is modified as follows with the insertion of the process and measurement noise contributions: wherein q k is a process noise and r k an observation noise. The process noise shall not be confused with the input noise. The process noise models the relevance of the model while the observation noise models both the input and output noise added to the states before observation. Then, the state may be estimated using the Kalman equations as: where to connect with the Kalman filter notations provided above, we have

[0085]

From the previous equations, it appears that the Kalman filter generates an estimate of the state at iteration k from the measurement obtained at iteration k. This is made possible thanks to the prediction stage of the Kalman filter. [0086]

Dealing with the consensus algorithm, the observation is available with a delay of one iteration, since the respective local values of the neighbors are first updated by said neighbors and transmitted afterwards. To overcome this issue, it is possible to rely on e.g. the output of the prediction stage of the Kalman filter for the current iteration or, in the case of distributed algorithms where the system can be updated sequentially after the Kalman filter, to use the output of the updating stage of the Kalman filter which uses the observations of the previous iteration.

[0087]

Looking at the equations, it can be noticed that the prediction steps at iteration k depend only on the inputs at iteration k — 1 , and can thus be computed at iteration k . On the other hand, the update steps require the knowledge of the observation input y k and matrix H k that will be available with a delay of one iteration. To comply with the constraints, the equations of the Kalman filter are simply re-ordered as shown on figure 10. In figure 10, the part on the left corresponds to the conventional Kalman filter, wherein the iterations k — 1, k and k + 1 correspond to the conventional iterations of the Kalman filter. The part on the right corresponds to the equations of the Kalman filtered arranged according to the iterations k , k - 1- 1 and k + 2 of the consensus algorithm. Basically, the Kalman predictor is used according to the following equations at iteration k :

- prediction of the previous observation:

- estimation of the previous state:

- prediction of the current state:

[0088]

The principle of using the Kalman filter as a state-observer in a closed- loop system is depicted on figure 9 where the system closes the loop with v k = However, it should be noted that other implementations of Kalman filter- based state observers may be used in the present disclosure. For instance, another alternative is simply to use the Kalman gain in the Luenberger observer.

[0089]

G) Application of the state observer to the noisy consensus

As discussed above, the consensus algorithm can be described in different manners according to the nature of the noise, and the present disclosure aims at mitigating the impact of measurement or observation noise. The different situations described above differ on whether the component of the command signal depending on the local values of the state parameter is built from noisy observations and on whether the state parameter local values are observed with noise directly or through an observation matrix. Without losing in generality, the application of the state observer is described here in two situations, for a communicating device dependent noise where the command signal is built entirely from the noisy observation and for a transmission edge-dependent noise. [0090] a) Structure (a) - Communicating device dependent noise

In this structure, the consensus algorithm is modelled as a single integrator which output is directly observed with an additive noise component. As shown in Table II, the integrator shall be controlled by means of a feedback loop built from the state value applied to the Laplacian matrix.

[0091]

Table II

[0092]

A Kalman filter-based state-observer can thus be applied using the model given in Table III (represented in part a) of figure 12).

[0093] Table III

[0094] b) Structure (b) - Transmission and edge-related noise

In this structure, the consensus algorithm is modelled as a single integrator which output is observed through the adjacency matrix with an additive noise component. As shown in Table IV, the integrator shall be controlled by means of a feedback loop built as the difference between the local state value applied to the degree matrix and the neighbor’s state values applied to the adjacency matrix. [0095]

Table IV

[0096]

A Kalman filter-based state-observer can thus be applied using the model given in Table V (represented in part b) of figure 12). [0097]

Table V

[0098]

It is important to note that the Kalman filter needs to reflect the correlation that exists in the observation noise

[0099]

In both cases, the gain matrix G in the feedback loop is the identity matrix.

[0100]

Due to noise, it is not possible to observe the true local values of the state parameter. From the set of equations above, we build an observer of the local values of the state parameter using a Kalman predictor or filter. The true state value is then replaced by its estimation to build the command signal . Ultimately, the communicating devices “simply” implement the standard consensus algorithm where the noisy local values are replaced by their estimate in the command. The issue is here that the system is described by the global state space equations, i.e. by considering the global aggregated state parameter. When implementing the de-noising Kalman filter, the Kalman filter-based state observer does not allow to predict the local value of the state parameter of each communicating device solely from the local values received from its neighbors in the subset Instead, the Kalman filter-based state observer described above requires the knowledge of the local values from all the n communicating devices.

[0101]

H) Method for controlling the state parameter

As discussed above, the present disclosure relates to a method 40 for controlling a state parameter by a communicating device 20 among a set of communicating devices 20. It is emphasized that the controlling method 40 is implemented by each communicating device 20 of the considered set, or by each communicating device 20 except the leader if the cooperative control algorithm uses a leader-follower approach (one communicating device - i.e. the leader - does not update its local value to force the other ones to track its local value). In the sequel the controlling method 40 is assumed to be implemented by the i-th communicating device referred to as 20- i (1 ≤ i ≤ n, wherein n is the total number of communicating devices 20). Each communicating device 20 stores a respective local value of the state parameter, which are typically different, and the communicating devices 20 implement the controlling method 40 in order to have their respective local values of the state parameter converge towards a same value, referred to as “consensus value”. For that purpose, the controlling method 40 uses a cooperative control algorithm such as e.g. the consensus algorithm discussed above.

[0102]

The communicating device 20- i is adapted to receive data from a subset of the other communicating devices 20- j, The subset is assumed to comprise n i other communicating devices 20- j, with Hence, the communicating device 20- i receives recurrently the local values of the state parameter of the n i communicating devices 20- j in the subset and uses the received local values to update its own local value according to e.g. the consensus algorithm. Once it has updated its own local value of the state parameter, it transmits its own updated local value of the state parameter to other communicating devices, for instance to the same communicating devices 20- j of the subset Q; from which it has received local values of the state parameter. [0103]

We denote by the subset of communicating devices which corresponds to the union of the subset with the communicating device 20- i. Hence, the subset comprises n i + 1 < n communicating devices. As discussed above, the controlling method 40 is implemented by each communicating device 20, and n subsets 1 ≤ i ≤ n, are defined, one for each communicating device 20. Of course, the n subsets are not all identical, since each communicating device 20- i receives data from only some ( n i ) of the other n — 1 communicating devices 20.

[0104]

In the sequel, the communicating device 20- i which implements the controlling method 40 is referred to as “processing device 20- i” in order to avoid confusion with the other communicating devices 20.

[0105]

Focusing on the processing device 20- i, we assume in the sequel, in a non-limitative manner, that the associated subset does not vary over time, i.e. from one iteration to another, and that the number n i does not vary over time. However, it also possible, in some cases, to have a number n i that varies due to e.g. a subset that varies over time or e.g. packet losses that may cause the processing device 20- i to receive data from fewer than n i other communicating devices 20- j, in some iterations. In case of a packet loss, a solution consists in setting for this specific iteration the corresponding observation noise variance at a very high value in order not to account for the missing observation replaced by an appropriately selected value.

[0106]

Figure 13 represents schematically the main steps of the method 40 for controlling a state parameter by the processing device 20- i. As can be seen in figure 13, the controlling method 40 comprises several steps that are executed and iterated by the processing device 20- i.

[0107]

As illustrated by figure 13, the controlling method 40 comprises conventional steps of a cooperative algorithm such as the consensus algorithm, executed by the processing device 20- i, which comprise: a step S40 of receiving local values from the other communicating devices 20 of the subset associated to the processing device 20- i; a step S42 of updating its local value of the state parameter based on the received local values of the state parameter, wherein at least some of the received local values are corrupted by an observation noise;

- a step S43 of transmitting its local value of the state parameter to other communicating devices 20.

[0108]

At this stage, it is emphasized that the order of the steps within each iteration, as illustrated in figure 13, is given for illustration purposes only, and said steps may also be executed in a different order. For instance, the step S40 of receiving local values from the other communicating devices 20 in the subset (i.e. from the communicating devices 20 of the subset is executed when said other communicating devices 20 execute the transmitting step S43, after they have executed the updating step S42. Also, the receiving step S40 and the transmitting step S43 can also be executed immediately before executing the updating step S42, in which case the local values received/transmitted correspond to the local values updated during the previous iteration, etc. [0109]

During step S42, the processing device 20 updates its own local value of the state parameter according to a consensus algorithm, based on the updated local values received from the communicating devices 20 of the subset

[0110]

However, since all or part of the received local values are observed with an observation noise, the processing device 20 does not use directly the received local values and implements a Kalman filter-based state observer in order to denoise the observed local values of the state parameter. Hence, as illustrated by figure 13, the controlling method 40 comprises a step S41 of estimating the local values of the subset based on the observations of said local values, by using a Kalman filter-based state observer. More specifically, the Kalman filter-based state observer is used to estimate an aggregated state parameter which aggregates the local values of the communicating devices 20 of the subset (i.e. including the own local value of the state parameter of the processing device 20- i). Then, during the updating step S42, instead of using directly the received (noisy) local values of the state parameter, the processing device 20- i updates its own local value of the state parameter based on the estimated aggregated state parameter. As discussed above, due to the fact that the observations of the communicating devices 20 in the subset are not available immediately, but typically with a delay of one iteration, the estimated aggregated state parameter may correspond to e.g. an a priori estimation (i.e. prediction) of the aggregated state parameter (for e.g. the current iteration) or to e.g. an a posteriori estimation of the aggregated state parameter (for e.g. the previous iteration), etc.

[0111]

The Kalman filter-based state observer applies a process model which assumes that each communicating device 20 of the subset receives data only from communicating devices 20 of said subset Of course, this assumption holds for the processing device 20- i but it does not hold for all the communicating devices 20 in the subset Indeed, each communicating device 20- j in the subset updates its own local value of the state parameter based on the local values received from the communicating devices in its own subset which is typically different from the subset Hence, the process model assumed by the Kalman filter-based state observer is erroneous at least in that it disregards the fact that the communicating devices in the subset update their own local value of the state parameter based on local values that are received from communicating devices 20 which are not in the subset The error introduced by this assumption is modeled in the process model as a process noise. [0112]

In a non-limitative manner, we assume here that the system is affected by a transmission edge-related noise. Using the notations introduced above, we may assume that the processing device 20- i aims at updating its own local value of the state parameter using the consensus algorithm: where:

[0113]

The issue is that the received local values of the state parameter are corrupted by an observation noise:

[0114]

In the sequel, we use the typical Kalman notation Note that we focus here on the processing device 20- i alone. The local values of the state parameter issued by the neighbors are thus directly observed with noise and not through an observation matrix as described above.

[0115]

The Kalman filter-based state observers presented previously may be applied by the processing device 20- i by assuming (erroneously) that there are no other communicating devices 20 but those n i + 1 communicating devices 20 in the subset Hence, the Kalman filter used is restricted to the communicating devices 20 in the subset This Kalman filter, and the process model assumed is therefore local to the processing device 20- i . Accordingly, u i k may be modified as follows: wherein is the aggregated state parameter for the subset

[0116]

In order to build the process model, the update equation of the consensus algorithm is extended to the aggregated state parameter [0117]

Ideally, the system shall be closed using In the present case, it is assumed that the aggregated state parameter is observed with an observation noise:

[0118]

In this expression, the state parameter local value of the processing device 20- i is also assumed in a non-limitative manner to be observed with an observation noise representing the observation noise that affects its local value when observed by the other communicating devices 20 in the subset It is therefore possible to implement a Kalman filter-based state observer in order to feedback the noisy observations but a de-noised estimation of the state parameter

[0119]

As discussed above, this equation assumes that there are no other communicating devices 20 but those n i + 1 communicating devices 20 in the subset This equation is accurate only for the local value x i k of the state parameter of the processing device 20- i as the other local values are actually updated by the communicating devices 20 in the subset Hence, the error introduced is modeled as a process noise: wherein is the process noise representing the error performed in the update equation of the consensus algorithm. It is therefore possible to implement a Kalman filter-based state observer using the process model introduced above, e.g. as follows: with:

[0120] For instance, the process noise and the observation noise may be assumed to be unbiased and Gaussian random variables with respective covariance matrices

[0121]

As illustrated by figure 13, the controlling method 40 comprises also a step S44 of determining, by the 'processing device 20- i, a convergence level of the local values of the state parameter. The convergence level represents whether or not the local values of the communicating devices 20 of the subset are approaching a consensus value. Non-limitative examples for computing the convergence level are provided hereinbelow.

[0122]

As illustrated by figure 13, the controlling method 40 comprises also a step S45 in which the processing device 20 controls the covariance matrix in the Kalman filter based on the estimated convergence level. Indeed, while the process model is not accurate in that it disregards the communicating devices 20 which are not in the subset it can be assumed that the error made will be higher when the communicating devices 20 in the subset are far from reaching a consensus than when they have almost reached a consensus. In other words, if the convergence level indicates that the local values of the state parameter (of the subset are far from having converged, the covariance matrix should have a higher norm than when the convergence level indicates that said local values have almost converged. By controlling the covariance matrix it is possible to increase progressively the influence of the process model in the estimation of the aggregated state parameter as the local values of the state parameter progressively converge towards a consensus value. [0123] For instance, in some embodiments, modifying the covariance matrix of the process noise comprises causing a norm of said covariance matrix to progressively decrease as the local values of the state parameter progressively converge. For instance, the individual coefficients of said covariance matrix can be modified in such a way that the norm of said covariance matrix for instance the Frobenius norm, decreases as the local values of the state parameter converge.

[0124]

Alternatively, or in combination, the covariance matrix of the process noise may be modified in relation with the covariance matrix of the observation noise. For instance, the covariance matrix of the process noise is modified to cause a ratio between the norm of the covariance matrix of the process noise and the norm of the covariance matrix of the observation noise to progressively decrease as the local values of the state parameter progressively converge. Preferably, said ratio should be below one (< 1) when said local values have almost converged, in which case the Kalman filter will favor the process model over the observations for estimating the aggregated state parameter.

[0125]

For instance, the covariance matrix of the process noise may be modified as follows: wherein corresponds to the estimated convergence level and f corresponds to a predetermined function. corresponds to a weighting factor and is for instance a positive scalar value, in which case the covariance matrix is proportional to the covariance matrix If we assume that the convergence level decreases when approaching consensus, then the function f is such that . The ratio between the Frobenius norms of the covariance matrices is equal to in this case.

[0126]

However, the covariance matrix of the process noise may also be similarly modified without using the covariance matrix of the observation noise, for instance as follows:

[0127]

In some embodiments, assuming that the convergence level decreases when approaching consensus, then the function f may be defined as: wherein K 1 is a predefined positive scalar value and K 2 > 0 is a predefined scalar positive value. For instance, K 1 = 1 and K 2 = 2 . However, other definitions of the function f may be used in other embodiments, provided that the function f decreases as the local values of the state parameter converge. [0128]

In some embodiments, the convergence level may be determined based on a number of iterations of the updating step performed from an initial local value of the state parameter. In such cases, the consensus algorithm is assumed to converge as the number of iterations increases. Determining the convergence level comprises obtaining the number k of iterations and said convergence level is for instance given by which yields in the previous example of the function f.

[0129]

Alternatively, the convergence level may be estimated based of the local values of the state parameter of the communicating devices 20 in the subset For instance, it is possible to estimate the consensus value, and to compute a distance between the local values of the state parameter and the estimated consensus value.

[0130]

In some cases, the consensus value may be estimated based on the aggregated state parameter observation (of based on For instance, the estimate μ ί k of the consensus value may be estimated as the average local value computed based on the local values in (or in and the distance may be computed as the variance of the local values in (or in Considering the observed local values of the communicating devices 20 in the subset then we may have:

[0131]

In preferred embodiments, the convergence level may be determined by computing a distance between two multivariate Gaussian random variables, which may be defined as: wherein: is a mean computed based on the local values in the aggregated state parameter observed over successive iterations; is a covariance matrix computed based on the local values in the aggregated state parameter observed over successive iterations;

- wherein x i k is used as an estimate μ i,k of the consensus value; is the covariance matrix of the observation noise, considering only the communicating devices 20 in the subset

[0132]

Hence, we measure the distance between the current observations assumed to be Gaussian with known mean and covariance matrix and the current consensus value assumed to be measured in the observation noise. The mean and covariance matrices are estimated by any appropriate means such as an infinite impulse response (IIR) filter. The distance between the two Gaussian random variables can then be estimated by using the Bhattacharyya distance: wherein

[0133]

Alternate expressions for computing the distance between the multivariate Gaussian random variables may be used, for instance:

[0134]

Then the covariance matrix may be controlled as discussed above, for instance

[0135]

I) Detailed example

We provide below a non-limitative example of detailed implementation of the controlling method 40, assuming in a non-limitative manner that the convergence level is determined by using the Bhattacharyya distance and that

[0136]

We use the same notations as introduced above: is the subset of communicating devices 20 from which the processing device 20 -i receives data at the iteration k.

[0137] a) Initialization (Iteration k = 0)

The initialization may be performed as follows: x i 0 = x i which is transmitted to the other communicating devices 20 during step S43; where is the variance of the communicating devices’ initial local values of the state parameter; β < 1; it is assumed that the covariance matrix of the observation noise is known either using “typical” values or from any appropriate measurements means; a is the control parameter of the consensus algorithm, set to a value ensuring the convergence of the noiseless consensus algorithm with respect to the Laplacian matrix of the system, e.g. α = 1/(2 deg max ).

[0138] b) Iteration k ≥ 1

The observation for the previous iteration may be built based on the local values received from the other communicating devices 20 during step S40:

[0139]

Then the Kalman filter-based state observer may be updated during step S41 as follows:

[0140] corresponds to the a priori estimation of the aggregated state parameter for the current iteration k and corresponds to the a posteriori estimation of the aggregated state parameter for the previous iteration k 1 , which uses the observation which is available at the iteration k.

[0141]

The updating step S42 of the consensus algorithm may be performed as follows:

With

[0142]

The convergence level is estimated during step S44 as follows:

[0143]

And the covariance matrix of the process noise can be updated during step S45 as follows

[0144]

The updated local value x i k is transmitted to the other communicating devices 20 during step S43.

[0145]

J) Communicating device

Figure 14 represents schematically an exemplary embodiment of a communicating device 20 suitable for implementing the controlling method 40. [0146]

In this exemplary embodiment, the communicating device 20 comprises a processing circuit 21 and a communication unit 22, coupled to the processing circuit 21. For instance, the processing circuit 21 comprises one or more processors and storage means (magnetic hard disk, solid-state disk, optical disk, electronic memory, etc.) in which a computer program product is stored in order to be executed by the one or more processors. Alternatively, or in combination thereof, the processing circuit 21 can comprise one or more programmable logic circuits (FPGA, PLD, etc.), and/or one or more specialized integrated circuits (ASIC), and/or a set of discrete electronic components, etc. The communication unit 22 comprises for instance a transceiver circuit comprising components lantenna(s). amnlifier(s), local oscillator(s). mixer(s). analog and/or digital filter(s), etc.) considered known to the skilled person. The communication unit 22 is compatible with one or more wired and/or wireless communication protocols. In general, any communication protocol may be used. In case of a platooning application (i.e. with the communicating devices 20 embedded in respective vehicles of a platoon), the one or more communication protocols may include one or more V2V communication protocols such as those defined by the ITS-G5, IEEE WAVE or 3GPP Cellular-V2X standards, etc.

[0147]

K) Other embodiments

It is emphasized that the present disclosure is not limited to the above exemplary embodiments. Variants of the above exemplary embodiments are also within the scope of the present disclosure.

[0148]

For instance, it has been assumed so far that the number of communicating devices 20 in the subset is fixed equal to which means that the propagation channel is perfect. In practice, the propagation channel impairments can lead to losses of packets. The controlling method 40 can be extended to switching topologies replacing the deterministic versions of the matrices by their switching equivalent setting to 0 the entries corresponding to communication links that suffered a packet loss. Hence, the processing device 20 -i can dynamically adapt the process model at each iteration to account for packets of data, containing updated local values, that were not received from the communicating devices 20 of the subset Similarly, the subset may vary from one iteration to the other and the process model may be updated accordingly by the processing device 20-i. Another solution consists in setting, for a specific iteration during which packets have been lost, the corresponding observation noise variance at a very high value in order not to account for the missing observation replaced by an arbitrary value. [0149]

Also, it is possible in some cases to include in the process noise other sources of errors, for instance an intrinsic process noise. The global covariance matrix of the process noise may be set as the sum of a covariance matrix of the intrinsic process noise and the covariance matrix of the process noise controlled based on the convergence level. Also, a small diagonal component-may be included in some cases in the covariance matrix to cope with cases where e.g. the estimated convergence level would be representative of an almost reached consensus too quickly with respect to the actual convergence of the consensus algorithm.




 
Previous Patent: SLIDE FASTENER ORNAMENT

Next Patent: MACHINE TOOL