1. Field of the Invention
The present invention relates generally to adaptive networks, such as sensor networks, and particularly to a least mean square method for estimation in sparse adaptive networks.
2. Description of the Related Art
Least mean squares (LMS) algorithms are a class of adaptive filters used to mimic a desired filter by finding the filter coefficients that relate to producing the least mean squares of the error signal (i.e., the difference between the desired and the actual signal). The LMS algorithm is a stochastic gradient descent method, in that the filter is only adapted based on the error at the current time.
In an adaptive network having N nodes, where the network has a predefined topology, for each node k, the number of neighbors is given by Nk, including the node k itself. In the normalized (NLMS) algorithm, at each iteration i, the output of the system at each node is given by dk(i)=uk(i)w0+vk(i), where uk(i) is a known regressor row vector of length M, w0 is an unknown column vector of length M, and vk(i) represents noise. The variable i is a time index. The output and regressor data are used to produce an estimate of the unknown vector, given by wk(i). If the estimate at any time instant i of w0 is denoted by the vector wk(i) then the estimation error is given by ek(i)=dk(i)−uk(i)wk(i). The NLMS algorithm is defined by the calculation of wk(i) through the iteration
where the superscript “T” represents the transpose of uk(i) and “∥ ∥” represents the Euclidean norm. Further, μk represents a step size, defined in the range 0<μk<2.
The use of the l0-norm in compressed sensing problems has been shown to perform better than the l2-norm in sparse environments. Since the use of the l0-norm is not feasible, an approximation can be used instead (such as the l1-norm). The Reweighted Zero Attracting LMS (RZA-LMS) algorithm is based on an approximation of the l0-norm. In the RZA-LMS algorithm, the output vector wk(i) for each node k is given as:
where ρ and o′ are unitless, positive control parameters and “sgn” represents the signum (or “sign”) function. The RZA-LMS algorithm performs better than the standard LMS algorithm in sparse systems.
In the Incremental LMS (ILMS) algorithm, an output vector w(i) is introduced and is used as an intermediate vector for calculation of the estimate of the unknown vector w0, the intermediate estimate at each node being denoted as ψk(i). The ILMS algorithm is an iterative algorithm over the time index i. The ILMS algorithm includes the following steps: (a) establishing an adaptive network having N nodes, where N is an integer greater than one, and then establishing a Hamiltonian cycle among the nodes so that each node is connected to two neighboring nodes, one from which it receives data and one to which it transmits data; (b) establishing an integer i and initially setting i=1; (c) establishing an estimate of an output vector for each node k at iteration i, ψk(i), and an output vector at iteration i, w(i), such that ψ0(i)=w(i−1); (d) calculating an output of the adaptive network at each node k as dk(i)=uk(i)w0+vk(i), where uk(i) represents a known regressor row vector of length M, w0 represents an unknown column vector of length M and vk(i) represents noise in the adaptive network, where M is an integer; (e) calculating an error value ek(i) at each node k as ek=dk−uk(i)ψk-1(i); (f) calculating the estimate of the output vector ψk(i) for each node k as ψk(i)=ψk-1(i)+μkukTek(i), where μk is a constant step size; (g) if k=N, then setting w(i)=ψN(i); (h) if ek(i) is greater than a selected error threshold, then setting i=i+1 and returning to step (d); otherwise, (i) storing the set of output vectors w(i).
In the Diffusion LMS (DLMS) algorithm, the output vector w(i) is replaced in the calculation of the estimate of the unknown vector w0 with an output vector defined at each node k, wk(i). The DLMS algorithm is also an iterative algorithm over the time index i. The DLMS algorithm includes the following steps: (a) establishing an adaptive network having N nodes, where N is an integer greater than one, and for each node k, a number of neighbors of node k is given by Nk, including the node k, where k is an integer between one and N; (b) establishing an integer i and initially setting i=1; (c) establishing an estimate of an output vector for each node k at iteration i, ψk(i), such that
where clk represents a weight of the estimate shared by node l for node k; (d) calculating an output of the adaptive network at each node k as dk=uk(i)w0+vk(i), where uk(i) represents a known regressor row vector of length M, w0 represents an unknown column vector of length M and vk(i) represents noise in the adaptive network, where M is an integer; (e) calculating an error value ek(i) at each node k as ek(i)=dk(i)−uk(i)ψk(i); (f) calculating the estimate of the output vector ψk(i) for each node k as ψk(i)=ψk(i)+μkukTek(i), where μk is a constant step size; (g) if ek(i) is greater than a selected error threshold, then setting i=i+1 and returning to step (d); otherwise, (h) storing the set of output vectors wk(i).
The incremental and diffusion LMS algorithms are very effective in adaptive networks, such as adaptive sensor networks. However they do not have the efficiency and effectiveness of the RZA-LMS algorithm when it comes to application to estimation in sparse networks.
Thus, a least mean square method for estimation in sparse adaptive networks solving the aforementioned problems is desired.
The least mean square method for estimation in sparse adaptive networks is based on the RZA-LMS algorithm, but uses the incremental LMS approach to provide estimation for each node in the adaptive network, and a step-size at each node determined by the error calculated for each node. The least mean square method for estimation in sparse adaptive networks is given by the following steps: (a) establishing a network having N nodes, where N is an integer greater than one, and establishing a Hamiltonian cycle among the nodes such that each node k is connected to two neighboring nodes, wherein the node receives data from one of the neighboring nodes and transmits data to the other one of the neighboring nodes; (b) establishing an integer i and initially setting i=1; (c) establishing an estimate of an output vector for each node k at iteration i, ψk(i), and an output vector at iteration i, w(i), such that ψ0(i)=w(i−1); (d) calculating an output of the network at each node k as dk(i)=uk(i)w0+vk(i), where uk(i) represents a known regressor row vector of length M, w0 represents an unknown column vector of length M and vk(i) represents noise in the adaptive network, where M is an integer; (e) calculating an error value ek(i) at each node k as ek(i)=dk(i)−uk(i)wk-1(i); (f) calculating the estimate of the output vector wk(i) for each node k as:
where ρ and ε are unitless, positive control parameters, μk is a constant step size and “sgn” represents the signum (or “sign”) function; (g) if ek(i) is greater than a selected error threshold, then setting i=i+1 and returning to step (d); otherwise, (h) storing the set of output vectors w(i) in non-transitory computer readable memory.
In an alternative embodiment, the least mean square method for estimation in sparse adaptive networks is also based on the RZA-LMS algorithm, but uses the diffusion LMS approach to provide estimation for each node in the adaptive network, and a step-size at each node determined by the error calculated for each node. Thus, in the alternative embodiment, the least mean square method for estimation in sparse adaptive networks is given by the following steps: (a) establishing an adaptive network having N nodes, where N is an integer greater than one, and for each node k, a number of neighbors of node k is given by Nk, including the node k, where k is an integer between one and N; (b) establishing an integer i and initially setting i=1; (c) establishing an estimate of an output vector for each node k at iteration i, ψk(i), and an output vector for each node k at iteration i, wk(i), such that
where clk represents a weight of the estimate shared by node l for node k; (d) calculating an output of the adaptive network at each node k as dk(i)=uk(i)w0+vk(i), where uk(i) represents a known regressor row vector of length M, w0 represents an unknown column vector of length M and vk(i) represents noise in the adaptive network, where M is an integer; (e) calculating an error value ek(i) at each node k as ek(i)=dk(i)−uk(i)ψk(i); (f) calculating the estimate of the output vector ψk(i) for each node k as:
where ρ and ε are unitless, positive control parameters, μk is a constant step size and “sgn” represents the signum (or “sign”) function; (g) if ek(i) is greater than a selected error threshold, then setting i=i+1 and returning to step (d); otherwise, (h) storing the set of output vectors wk(i) in non-transitory computer readable memory.
These and other features of the present invention will become readily apparent upon further review of the following specification.
Similar reference characters denote corresponding features consistently throughout the attached drawings.
The least mean square method for estimation in sparse adaptive networks is based on the RZA-LMS algorithm, but uses the incremental LMS approach to provide estimation for each node in the adaptive network, and a step-size at each node determined by the error calculated for each node. The present incremental RZA-LMS (IRZA-LMS) method is obtained by incorporating the extra penalty term from the RZA-LMS algorithm into the incremental scheme.
The least mean square method for estimation in sparse adaptive networks is given by the following steps: (a) establishing a network having N nodes, where N is an integer greater than one, and establishing a Hamiltonian cycle among the nodes such that each node k is connected to two neighboring nodes, wherein the node receives data from one of the neighboring nodes and transmits data to the other one of the neighboring nodes; (b) establishing an integer i and initially setting i=1; (c) establishing an estimate of an output vector for each node k at iteration i, ψk(i), and an output vector at iteration i, w(i), such that ψ0(i)=w(i−1); (d) calculating an output of the network at each node k as dk(i)=uk(i)w0+vk(i), where uk(i) represents a known regressor row vector of length M, w0 represents an unknown column vector of length M and vk(i) represents noise in the adaptive network, where M is an integer; (e) calculating an error value ek(i) at each node k as ek(i)=dk(i)−uk(i)ωk-1(i); (f) calculating the estimate of the output vector ψk(i) for each node k as:
where ρ and ε are unitless, positive control parameters, μk is a constant step size and “sgn” represents the signum (or “sign”) function; (g) if ek(i) is greater than a selected error threshold, then setting i=i+1 and returning to step (d); otherwise, (h) storing the set of output vectors w(i) in non-transitory computer readable memory.
In an alternative embodiment, the least mean square method for estimation in sparse adaptive networks is also based on the RZA-LMS algorithm, but uses the diffusion LMS approach to provide estimation for each node in the adaptive network, and a step-size at each node determined by the error calculated for each node. The diffusion RZA-LMS (DRZA-LMS) method is also obtained by incorporating the extra penalty term from the RZA-LMS algorithm directly into the diffusion scheme. However, it should be noted that, for the above incremental method, the estimate for node k was updated using the estimate from node (k−1). For the diffusion method, the estimate of the same node is used, but from the previous iteration.
Thus, in the alternative embodiment, the least mean square method for estimation in sparse adaptive networks is given by the following steps: (a) establishing an adaptive network having N nodes, where N is an integer greater than one, and for each node k, a number of neighbors of node k is given by Nk, including the node k, where k is an integer between one and N; (b) establishing an integer i and initially setting i=1; (c) establishing an estimate of an output vector for each node k at iteration i, ψk(i), and an output vector for each node k at iteration i, wk(i), such that
where clk represents a weight of the estimate shared by node l for node k; (d) calculating an output of the adaptive network at each node k as dk(i)=uk(i)w0+vk(i), where uk(i) represents a known regressor row vector of length M, w0 represents an unknown column vector of length M and vk(i) represents noise in the adaptive network, where M is an integer; (e) calculating an error value ek(i) at each node k as ek(i)=dk(i)−uk(i)ψk(i); (f) calculating the estimate of the output vector ψk(i) for each node k as:
where ρ and ε are unitless, positive control parameters, μk is a constant step size and “sgn” represents the signum (or “sign”) function; (i) if ek(i) is greater than a selected error threshold, then setting i=i+1 and returning to step (d); otherwise, (j) storing the set of output vectors wk(i) in non-transitory computer readable memory.
The processor 12 may be associated with, or incorporated into, any suitable type of computing device, for example, a personal computer or a programmable logic controller. The display 16, the processor 12, the memory 14, the user interface 18, network interface 20 and any associated computer readable media are in communication with one another by any suitable type of data bus, as is well known in the art. Additionally, other standard components, such as a printer or the like, may interface with system 10 via any suitable type of interface.
Examples of computer readable media include non-transitory computer readable memory, a magnetic recording apparatus, an optical disk, a magneto-optical disk, and/or a semiconductor memory (for example, RAM, ROM, etc.). Examples of magnetic recording apparatus that may be used in addition to memory 14, or in place of memory 14, include a hard disk device (HDD), a flexible disk (FD), and a magnetic tape (MT). Examples of the optical disk include a DVD (Digital Versatile Disc), a DVD-RAM, a CD-ROM (Compact Disc-Read Only Memory), and a CD-R (Recordable)/RW.
In order to examine the effectiveness of both the IRZA-LMS method and the alternative DRZA-LMS method, mean and steady-state analyses for the present IRZA-LMS and DRZA-LMS methods have been performed. Considering the diffusion case first, the performance of each node will be affected by its neighbors. Thus, the whole network must be analyzed as a whole. The node equation set can be transformed into a global equation set using the following transformations:
The global set of equations can thus be formed as follows:
Ψ(i+1)=Gw(i), (1)
w(i+1)=Ψ(i+1)+DUT(i)(d(i)−U(i)Ψ(i+1)), (2)
where G=CIM, C is an N×N weighting matrix, where {C}lk=clk, and
is the Kronecker product. The weight-error vector is then given by:
The mean of the weight-error vector is given by:
and z(i)={tilde over (w)}(i)−ò(i). This leads to:
z(i+1)=A(i)Gz(i)−DB(i)Gò(i)−Pp(i)+DUT(i)v(i), (5)
where A(i)=(I−DUT(i)U(i)), B(i)=(UT(i)U(i)−E[UT(i)U(i)]) and p(i)=a(i)−E[a(i)].
The mean-square deviation (MSD) is given by E└|z(i)2|┘. Solving for z(i) from equation (5), one can see that the mean-square stability depends on E[AT(i)A(i)]. This expectation value has been solved for the diffusion LMS algorithm. Further, since the regressor vectors are independent of each other, the resultant matrix is block diagonal. Thus, each node can be treated separately in this case. Such a solution is already well known, and this mean-square stability analysis has now been shown to hold true for adaptive networks as well.
A similar result can also be shown for the incremental scheme. For mean-square stability, therefore, the limit for the step-size μ is defined by:
where λk,max denotes the maximum eigenvalue for node k.
Simulations were performed in order to study the effectiveness of the present methods. In the simulations, two separate scenarios were considered. In each scenario, the present methods were compared against a non-cooperative Least Mean Square (No Coop LMS) algorithm, the Diffusion Least Mean Square (DLMS) algorithm, the Incremental Least Mean Square (ILMS) algorithm, and a non-cooperative RZA-LMS algorithm (No Coop RZA-LMS). In
In the first simulated scenario, the unknown system was represented by a 16-tap finite impulse response (FIR) filter. For the first 500 iterations, only one tap, chosen at random, was non-zero. For the next 500 iterations, all of the odd-indexed taps were set to “1”. For the last 500 iterations, the odd-indexed taps remained “1”, while the remaining taps were set to “4”. As a result, the sparsity of the unknown system varied during the estimation process. A network of 20 nodes was chosen. From the mean square stability, as given above, the step-size was determined to be less than 0.111 for this case. Thus, the step-size was set to 0.05 for the non-cooperation and diffusion cases, and 0.0025 for the incremental algorithms. Different step-sizes were set to ensure the same convergence speed.
The value for Q was set to 5×10−4 and c was set to 10 for all algorithms. The results were simulated for signal-to-noise ratio (SNR) values of 20 dB and 30 dB. The results were averaged over 100 experiments. As can be seen in
The second experimental simulation was performed with the unknown system represented by a 256-tap FIR filter, of which 16 taps, chosen randomly, were non-zero. The network size was chosen to be 20 nodes, once again. The step-size was determined to be less than 0.0078 in this scenario. Thus, the step-size was set to 5×10−3 for the non-cooperation and diffusion algorithms, and 2.5×10−4 for the incremental algorithms. The value for c was kept the same. The value for p was set to 1×10−5 for all algorithms. The results were averaged over 100 experiments. The results were simulated for SNR values of 20 dB and 30 dB. As shown in
In order to study the strength of the present methods, a further experiment was performed. Using the unknown system from the second experimental simulation (i.e., the 256-tap filter), the network size was varied to see how the various algorithms would perform at steady-state. Results were simulated for SNR values of 20 dB and 30 dB. The results are shown in
Another similar experiment was performed to test the strength in performance of the present methods. The steady-state MSD value was fixed at −30 dB. The SNR value was varied from 10 dB to 30 dB in steps of 5 dB. For each algorithm, the size of the network was increased until the steady-state MSD became equal to or less than −30 dB. As can be seen in
It is to be understood that the present invention is not limited to the embodiments described above, but encompasses any and all embodiments within the scope of the following claims.