Method and apparatus for symbol measurement and combining
09825693 · 2017-11-21
Assignee
Inventors
- Scott Siegrist (Hermosa Beach, CA, US)
- John M. Trippett (Torrance, CA)
- Yenming Chen (Torrance, CA, US)
- Meina Xu (Temple City, CA, US)
- Christopher W. Walker (Rancho Palos Verdes, CA, US)
- Brandon Rigg (Torrance, CA, US)
Cpc classification
H04K2203/36
ELECTRICITY
H04K3/228
ELECTRICITY
H04B7/0854
ELECTRICITY
H04K3/224
ELECTRICITY
International classification
H04B7/185
ELECTRICITY
Abstract
A method and system of symbol measurement and combining (SMaC) provides near-optimal performance for each user independently by relying on rapid digital beamforming with near-ideal convergence properties. This approach is also provides near-ideal performance without any knowledge of user/jammer location and adapts instantly as those locations change. An iterative joint estimation method is used to determine a covariance matrix R.sub.XX, and a user beamsteering vector, α.
Claims
1. A method for digital beamforming input signals from one or more antennas in a computer processor, comprising the steps of: estimating an initial steering vector based on symbols of interest derived from the input signals from the one or more antennas; estimating an initial covariance matrix from the input signals using dynamic noise loading to control a range of a norm of an inverse of the covariance matrix; generating a set of weights for the input signals from the one or more antennas from the estimated initial steering vector and the initial covariance matrix; iteratively estimating a new weight for each beam until an optimum weight is achieved; and applying the optimum weight to the input signals during digital beamforming.
2. The method of claim 1, wherein the step of estimating an initial steering vector further comprises the steps of: processing each input signal statistically to generate symbols representing each input signal; partitioning the symbols into blocks; determining an estimated alpha (α) value for each block; and determining an estimated alpha (α) value for each beam, wherein α is a steering vector.
3. The method of claim 2, further comprising the steps of: calculating the estimated covariance matrix according to {circumflex over (R)}.sub.XX=1/N XX.sup.H; calculating noise loading (NL) factor nl, adding identity matrix I scaled by NL factor to {circumflex over (R)}.sub.XX, R.sub.XX={circumflex over (R)}.sub.XX+nl I and calculating an initial weight according to w.sub.0=R.sub.XX.sup.−1{circumflex over (α)}.sub.ML, where N is the number of symbols, X represents the input signal and ML indicates Maximum Likelihood.
4. The method of claim 1 wherein the step of iteratively estimating further comprises the steps of: determining z=w.sub.n.sup.HX, where X is a N.sub.beam×N matrix of the received symbols and w.sub.n=w.sub.0 for n=1; determining
5. The method of claim 4 wherein the step of iteratively estimating further comprises additional steps of: determining
6. The method of claim 1, wherein the configuration of the one or more antennas and a location of a signal generating terminal is not known in advance.
7. The method of claim 1, wherein the one or more antennas are elements of multi-beam antenna in a satellite.
8. A method for digital beamforming beams from a frequency hopped multi-beam antenna, said method executed in a computer processor, comprising the steps of: receiving an input signal from each beam of the multi-beam antenna; processing each input signal statistically to generate symbols representing each input signal; estimating an initial steering vector for each beam from the symbols of interest derived from input signal and the generated symbols; estimating an initial covariance matrix from the input signal using direct calculation with dynamic noise loading to control a range of a norm of an inverse of the covariance matrix; generating a set of weights for the beams from the one or more antennas from the estimated initial steering vector and the initial covariance matrix; iteratively estimating a new weight for each beam until an optimum weight is achieved; and normalizing the optimum weight and applying it to the received symbols during digital beamforming.
9. The method of claim 8, wherein the step of estimating an initial steering vector further comprises the steps of: processing each input signal statistically to generate symbols representing each input signal; partitioning the symbols into blocks; determining an estimated alpha (α) value for each block; and determining an estimated alpha (α) value for each beam, wherein α is a steering vector.
10. The method of claim 9, further comprising the steps of: calculating the estimated covariance matrix according to {circumflex over (R)}.sub.XX=1/N XX.sup.H;calculating noise loading (NL) factor nl, adding identity matrix I scaled by the NL factor to {circumflex over (R)}.sub.XX,
R.sub.XX={circumflex over (R)}.sub.XX+nl I and calculating an initial weight according to w.sub.0=R.sub.XX.sup.−1{circumflex over (α)}.sub.ML, where N is the number of symbols, X represents the input signal and ML indicates Maximum Likelihood.
11. The method of claim 8 wherein the step of iteratively estimating further comprises the steps of: determining z=w.sub.n.sup.HX , where X is a N.sub.beam×N matrix of the received symbols and w.sub.n=w.sub.0 for n=1; determining
12. The method of claim 11 wherein the step of iteratively estimating further comprises additional steps of: determining
13. The method of claim 8, wherein the configuration of the one or more antennas and a location of a signal generating terminal is not known in advance.
14. The method of claim 8, wherein the one or more antennas are elements of multi-beam antenna in a satellite.
15. A computer processor apparatus configured to perform a method for digital beamforming input signals from one or more elements of multi-beam antenna, comprising the steps of: estimating an initial steering vector based on symbols of interest derived from the input signals from the one or more antennas; estimating an initial covariance matrix from the input signals using dynamic noise loading to control a range of a norm of an inverse of the covariance matrix; generating a set of weights for the input signals from the one or more antennas from the estimated initial steering vector and the initial covariance matrix; iteratively estimating a new weight for each beam until an optimum weight is achieved; and applying the optimum weight to the input signals during digital beamforming.
16. The computer processor of claim 15, further configured to perform the steps of: processing each input signal statistically to generate symbols representing each input signal; partitioning the symbols into blocks; determining an estimated alpha (α) value for each block; and determining an estimated alpha (α) value for each beam, wherein α is a steering vector.
17. The computer processor of claim 16, further configured to execute the steps of: calculating the estimated covariance matrix according to {circumflex over (R)}.sub.XX=1/N XX.sup.H; calculating noise loading (NL) factor nl, adding identity matrix I scaled by the NL factor to {circumflex over (R)}.sub.XX,
R.sub.XX={circumflex over (R)}.sub.XX+nl I and calculating an initial weight according to w.sub.0=R.sub.XX.sup.−1{circumflex over (α)}.sub.ML, where N is the number of symbols, X represents the input signal and ML indicates Maximum Likelihood.
18. The computer processor of claim 15 wherein the step of iteratively estimating further comprises the steps of: determining z=w.sub.n.sup.HX , where X is a N.sub.beam×N matrix of the received symbols and w.sub.n=w.sub.o for n=1; determining
19. The computer processor of claim 15, wherein the configuration of the one or more elements of multi-beam antenna and a location of a signal generating terminal is not known in advance.
20. The computer processor of claim 15, wherein the one or more antennas are elements of multi-beam antenna in a satellite.
21. A multi-beam antenna system for performing digital beamforming of input signals from one or more antenna elements, the digital beamforming comprising the steps of: estimating an initial steering vector based on symbols of interest derived from the input signals from the one or more antenna elements; estimating an initial covariance matrix from the input signals using dynamic noise loading to control a range of a norm of an inverse of the covariance matrix; generating a set of weights for the input signals from the one or more antenna elements from the estimated initial steering vector and the initial covariance matrix; iteratively estimating a new weight for each beam until an optimum weight is achieved; and applying the optimum weight to the input signals during digital beamforming.
22. The multi-beam antenna system of claim 21, further configured to perform the steps of: processing each input signal statistically to generate symbols representing each input signal; partitioning the symbols into blocks; determining an estimated alpha (α) value for each block; and wherein the step of estimating an initial steering vector, wherein α is a steering vector.
23. The multi-beam antenna system of claim 22, further configured to execute the steps of: calculating the estimated covariance matrix according to {circumflex over (R)}.sub.XX=1/N XX.sup.H; calculating noise loading (NL) factor nl, adding identity matrix I scaled by the NL factor to {circumflex over (R)}.sub.XX,
R.sub.XX={circumflex over (R)}.sub.XX+nl I and calculating an initial weight according to w.sub.0=R.sub.XX.sup.−1{circumflex over (α)}.sub.ML, where N is the number of symbols, X represents the input signal and ML indicates Maximum Likelihood.
24. The multi-beam antenna system of claim 21 wherein the step of iteratively estimating further comprises the steps of: determining z=w.sub.n.sup.HX, where X is a N.sub.beam×N matrix of the received symbols and w.sub.n=w.sub.0 for n=1; determining
25. The multi-beam antenna system of claim 21, wherein a location of a signal generating terminal is not known in advance.
Description
DESCRIPTION OF THE DRAWINGS
(1) Features of example implementations of the invention will become apparent from the description, the claims, and the accompanying drawings in which:
(2)
(3)
(4)
(5)
(6)
(7)
(8)
DETAILED DESCRIPTION
(9) In general, beamforming combines signals from an array of antennas to transmit and receive directional signals using the principles of constructive and destructive interference. Signals detected by each antenna in the array are phased, or weighted, by varying amounts so as to transmit or receive a desired signal from a terminal. This approach is a method for received digital beamforming using a unique algorithm that overcomes the shortfalls of Optimal Combining (OC) methodology which uses a frequency hopped system as the target environment. A frequency-hopped system transmits signals by rapidly switching between different frequency channels. This approach is capable of operating in scenarios including both an AWGN (Additive White Gaussian Noise) and an AWGN with jamming environment. Additionally, this approach can also be used in the presence of non-hostile interference such as that which often occurs in a crowded telecommunications environment.
(10) In an embodiment, the inventive method operates on symbols of a Symmetric Differential Phased Shift Keying (SDPSK) waveform received as part of signals, or beams, received from a plurality of antennas. A symbol is typically described as a pulse representing an integer number of bits. In an embodiment illustrating this method with a Multi-Beam Antenna (MBA) with N.sub.beam beams, the input signal is represented by X given by Equation (1) as the channel model with the received symbols of length N for all beams per hop (a hop consists of N symbols) under the stressed environment,
(11)
(12) where
(13)
and
(14)
are the signal beam steering vector and jammer steering vector respectively, s is the transmitted modulated sequence of length N, J is the jammer vector of length N, and n.sub.i is the AWGN vector of length N for beam i. The beam steering vector, α, indicates relative differences between the plurality of antennas receiving a signal. Likewise, each antenna experiences the jamming signal from a slightly different angle, resulting in the jammer steering vector, β. The covariance matrix R.sub.XX is given by
(15)
where R.sub.ss is the signal covariance matrix containing the signal of interest, R.sub.nn is the noise covariance matrix containing both the jammer signal and AWGN.
(16) Digital beamforming involves applying a weight to the signal received from each antenna to arrive at a coherent result when the beams are combined. While there are several prior art methods of determining weights when beamforming in an unstressed communication environment, the Maximum Ratio Combining (MRC) receiver achieves the best results, with a weight vector given by
(17)
(18) where θ.sub.α is the angle of arrival of the steering vector. Likewise, when operating in a stressed environment, Optimal Combining (OC) is an optimal receiver whose weight vector for the digital beamformer is
w.sub.oc=R.sub.XX.sup.−1α (3)
(19) or
w.sub.oc=R.sub.nn.sup.−1α (4)
(20) where R.sub.XX is the covariance matrix of the received symbols, α is the steering vector of the desired received signal without noise or jamming interference, R.sub.nn is the noise covariance matrix without the presence of signal. Therefore, R.sub.XX.sup.−1α=cR.sub.nn.sup.−1α where c is a constant and multiplying the weights by a constant will not affect the decision space. Use of these equations requires that both the antenna configuration and the location of a desired signal are known in advance or are estimated. The weights are then applied to the received symbols in Equation (1) producing beamformed output, γ
γ=w.sub.oc.sup.HX. (5)
(21) In a preferred embodiment, the inventive method improves on these methods because it works in a system in which neither the antenna configuration nor the terminal location and jammer location are known in advance. In general, locations and other parameters are not known, and must be estimated. Direct calculations of R.sub.XX and standard estimation techniques of α result in extremely poor performance in the presence of strong power jammer; this observation is in the prior art literature without any methods provided for overcoming this problem. Instead, in a preferred embodiment, this approach works by using estimates for R.sub.XX and α that are refined jointly by an iterative substitution method. The initial estimate for R.sub.XX is a direct calculation with dynamic noise loading based on the statistical characteristics of the received symbols to control the range of the norm of R.sub.XX.sup.−1. The initial estimate for α is a combined maximum likelihood estimation and symbol quality evaluation across the received symbols. This method uses information only from the received symbols on a per hop basis on each of the different antenna feeds. The formed beam is optimized at each frequency based on the received symbols for each user. This method does not use any a priori spatial signal information or any history of received symbols.
(22) In general, this method is a Substitution OC method with Dynamic Noise Loading (DNL). It consists of two major building blocks, Maximum Likelihood (ML) Alpha Estimator with Symbol Quality Estimator (SQE) and Substitution OC Method with Dynamic Noise Loading (DNL), shown in
(23) Turning to
(24) Maximum Likelihood (ML) Alpha Estimator
(25) The beam steering vector, α, for a desired signal is calculated by ML Alpha Estimator 104 of
x.sub.i=[x.sub.1,i, . . . , x.sub.N,i],
(26) where N=N.sub.ref+N.sub.data, N.sub.ref is the number of reference symbols and N.sub.data is the number of data symbols. The sequence of received symbols x.sub.i 118 is a vector of X for beam i in equation (1) and
(27) In order to reduce the complexity of calculating an estimate value for α, the data portion of the received symbols is partitioned into blocks 120 of length N.sub.p symbols, as illustrated in
(28)
(29) where x.sub.k,i, k ∈{1, . . . , N.sub.data/2} is a length-N.sub.p or length-2 sequence for partitioned sequence k and beam i. For SDPSK modulation, the four possible symbol constellations are
(30)
Assuming the starting symbol constellation of the SDPSK modulation is at 1, there are 2.sup.Np or 4 pairs of the possible transmitted sequence,
(31)
for each partitioned sequence. At 124, the partitioned sequence is correlated with each pair of the estimated symbols, ŝ, which provides a set of alpha estimates of the partitioned sequence.
(32) Correlators 124 output the alpha estimates of each partitioned sequence as shown in equation (7):
(33)
(34) where k=1, . . . ,N.sub.data/2, j=1, . . . ,2.sup.Np, i is the beam number, N.sub.p=2, and
(35)
Given the known transmitted reference symbols s.sub.ref=[s.sub.ref(1), . . . , s.sub.ref(N.sub.ref)] of length N.sub.ref, the alpha estimate for the received reference sequence is output from correlator 124a as
(36)
(37) A decision metric is calculated by MLEs 126 using equation (9):
d.sub.i,j(k)=sum[{circumflex over (α)}.sub.i,ref, {circumflex over (α)}.sub.i,j(k)]={circumflex over (α)}.sub.i,refI.sub.N.sub.
(38) where
(39)
(40)
and perform ML alpha estimate by choosing the top 3 sums, d.sub.i,j(k)|.sub.j=(1),(2),(3), where j=(1),(2),(3) represent the indices of the 3 possible transmitted sequences that yield the top 3 sum d.sub.i,j(k) for a given partitioned sequence k and beam i. Keeping the top three alpha estimates out of 4 from the decision metric d.sub.i,j(k)|.sub.j=1.sup.4 maximizes the likelihood of good alpha estimate in the presence of jammers. Then each of the top 3 decision metrics are scaled to get the top 3 alpha estimates of the partitioned sequence which are output by MLEs 126 as given by equation (10):
(41)
(42) where N.sub.p is the length of the partitioned sequence. Next, the linear average of the top three alpha estimates of the partitioned sequence is determined to be the alpha estimate for the partitioned sequence k as shown by equation (11):
(43)
(44) The ML alpha estimation operation is repeated for all k and beam i. The alpha estimate for beam i is the output of the Alpha Quality Estimator (AQE) 130, that takes the alpha estimator for the partitioned sequence,
(45)
and the Symbol Quality Estimator (SQE) 102 output, I.sub.sym, as shown in Equation (16) discussed below, with the output
(46)
(47) The alpha estimate for beam i is calculated according to Equation (18) shown below. An example of the ML alpha estimate showing SDPSK 2+40 mode for a given beam i is shown in
d.sub.i,j(k)|.sub.j=1.sup.4={circumflex over (α)}.sub.i,ref+{circumflex over (α)}.sub.i,j(k)|.sub.j=1.sup.4, k=1, . . . ,20
d.sub.i,j(k)|.sub.j=(1),(2),(3)=top 3 of the set d.sub.i,j(k)|.sub.j=1.sup.4,
(48)
(49) Symbol Quality Estimator
(50) Symbol Quality Estimator 102 of
(51) An abnormally high power of a received symbol can indicate either a momentary blip or the presence of a jamming signal. The power adjustment is done on a per hop basis by element 136. For each beam i, the apparatus of
σ.sub.r,i,th.sup.2=med(abs(x.sub.i.sup.2))+γ std(abs(x.sub.i.sup.2)), (13)
(52) where γ is a constant. An alternate approach for calculating the threshold for beam i is
σ.sub.r,i,th.sup.2=E[p.sub.x.sub.
where
(53)
l.sub.80=┌0.8.Math.N┐, l.sub.97=┌0.97.Math.N┐.
(54) The symbol power estimate output by element 133 is compared with the threshold power calculated by element 136. Symbols per beam are chosen by element 134 as shown in equation (14):
(55)
(56) for l=1, . . . , N where N=N.sub.ref+N.sub.data and for beam i, where σ.sub.r(l),i.sup.2=|x.sub.i(l).sup.2| is the symbol power estimate output by element 133.
(57) The symbol selection in element 138 is based on the estimated high quality symbols for all beams and makes a majority rule decision as
(58)
(59) To ensure that reference symbols are chosen, the symbol selection in element 138 is updated as
(60)
(61) where a symbol number l is selected when the indicator function I.sub.sym(l)=1. AQE 130 of
(62)
(63) where
(64)
for
l.sub.odd ∈{1,3, . . . , N.sub.data−1}
(65) The alpha estimator indicator function in Equation (17) shows that alpha estimator number k is selected when I.sub.α(k)=1 where the alpha estimator {circumflex over (α)}.sub.i(k) is given in Equation (11) for
(66)
The alpha estimator for beam i with AQE 130 of
(67)
(68) The ML alpha estimator is therefore
(69)
(70) Substitution OC
(71) Substitution OC element 110 of
w.sub.n+1=f(w.sub.n), for n≧0. (20)
(72) To ensure that the Substitution OC method converges to a near optimal solution, a good starting set of weights is required. The ML Alpha Estimator 104 and SQE 102 of
(73) The initial weights without noise loading are calculated according to equation (21)
w.sub.0 (no noise loading)={circumflex over (R)}.sub.XX.sup.−1{circumflex over (α)}.sub.ML, (21)
where the covariance matrix 106
(74)
of
(75) The dynamic noise loading is done on the diagonal elements of the covariance matrix {circumflex over (R)}.sub.XX, as shown by element 106 of
(76)
(77) where c.sub.nl is a constant. The updated covariance matrix 106 of
R.sub.XX={circumflex over (R)}.sub.XX+nl I , (23)
(78) where I is a N.sub.beam×N.sub.beam identity matrix scaled by noise loading factor nl and N.sub.beam is the number of beams. Given the estimated covariance matrix with DNL, and the ML alpha estimate, {circumflex over (α)}.sub.ML, the initial estimate of weights 108 of
w.sub.0=R.sub.XX.sup.−1{circumflex over (α)}.sub.ML. (24)
(79) A good initial set of weights calculated using ML alpha estimate and covariance matrix with DNL, are used for the iterative Substitution OC Method which further refines the weights for SNR optimization.
(80) The Substitution OC Method 110 of
{circumflex over (α)}=[d(t).sup.Hx(t)]{tilde over (=)}α(1−2SE). (25)
(81) Assuming the transmitted reference symbols s.sub.ref are known, for SDPSK waveforms, for each iteration n=1, . . . ,m, the method uses refined estimates of {circumflex over (α)}, R.sub.ss and R.sub.nn to update the weights as
w.sub.n+1=g(R.sub.ss(n),R.sub.nn(n),{circumflex over (α)}(n),w.sub.n)=R.sub.nn(n).sup.−1{circumflex over (α)}(n), (26)
(82) where
(83)
d.sub.n=[s.sub.ref, d.sub.data(n)], (28)
(84)
(85)
R.sub.ss(n)={circumflex over (α)}(n){circumflex over (α)}(n).sup.H, (31)
R.sub.nn(n)=R.sub.XXR.sub.ss(n), (32)
(86) where X is a N.sub.beam×N matrix of the received samples and n is the iteration number. At the end of iteration m, the weights are normalized by the maximum of the weights magnitude.
(87) The iterative method refines the α estimate, R.sub.nn, thus the beam-combining weights every iteration, converging to a set of optimal weights for a given user while maintaining implementable HW complexity.
(88) Post Iterative Beamformer
(89) Post Iterative Beamformer 112 of
γ=Σ.sub.i=1.sup.N.sup.
(90) where N.sub.beam is the number of beams, x.sub.i is the row vector from beam i of X, w*.sub.i is the beam combining weight for a given hop and γ is the combined beam. Moreover, w.sub.m=[w.sub.1, . . . ,w.sub.Nbeam].sup.1 is the weight vector from the Substitution OC method. The beamformer combines the received symbols with adaptive weights that optimize the user SNR while the impacts of jammer and interference are minimized at the same time. The beamformed output signal γ is clear of jammer impacts and can be demodulated easily.
(91) An implementation of the invention according to a preferred embodiment is shown in
(92) Then, beginning with step 152, a set of m iterations per hop is started, and for each iteration, a series of steps are performed. In a preferred embodiment, 3 iterations give an optimal result, but any number of iterations may be used. The device may also detect an end condition instead of being set to a certain number of iterations.
(93) At step 152, the demodulation z=w.sub.n.sup.HX is computed, where X is a N.sub.beam×N matrix of the received samples and w.sub.n=w.sub.0 for n=1.
(94) At step 154, two decision metrics:
(95)
and d=[s.sub.ref, d.sub.data] are formed where s.sub.ref is a sequence of known reference symbols.
(96) At step 156, an estimated alpha is computed according to
(97)
where l=[1, . . . , 1].sub.1×N.
(98) At step 158, values for R.sub.ss and R.sub.nn are computed in accordance with R.sub.ss={circumflex over (α)}{circumflex over (α)}.sup.H and R.sub.nn =R.sub.XX−R.sub.ss.
(99) Then, in step 160, a weight vector is computed according to w.sub.n+1=R.sub.nn.sup.−1{circumflex over (α)}.
(100) At decision point 162, an end condition for the iterations is checked and, it not met, the process returns to step 152. Otherwise, the process continues to step 162 where the weights are normalized by the maximum of the weights magnitude.
(101) In a preferred embodiment, this approach is developed based on the SDPSK modes of 2+40, 4+80, and 8+160 (number of reference symbols+number of data symbols). It not only performs well under the stressed environment against the full-band noise jammer, partial band jammer, tone jammer and pulse jammer, the performance is near ideal MRC under unstressed environment due to the use of dynamic noise loading. The method is robust in both stressed and unstressed communications.
(102) In an alternative embodiment, a different method is used in place of the Substitution OC method. Instead, a Substitution-SNR method is used to update beamformer weights.
(103) Similarly to the Substitution—OC method, the Substitution—SNR method is a Contraction Mapping type and it has the same iteration implementation with the exception of the weights update. The weights update is done using the SNR equation (34)
(104)
(105) The block diagram of the method is shown in
(106) The implementation of the method includes the following steps:
(107) Compute R.sub.XX.sup.−1, set the initial weight w.sub.0=R.sub.XX.sup.−1{circumflex over (α)}.sub.ML, where R.sub.XX is found using the dynamic noise loading in (23), and {circumflex over (α)}.sub.ML is from (19), ML alpha estimate.
(108) Run m iterations per hop, and for each iteration, perform the following method:
(109) Compute z=w.sub.n.sup.HX, where X is a N.sub.beam×N of the received samples, w=w.sub.0 for n=1.
(110) Compute
(111)
(112) Form d=[s.sub.ref, d.sub.data], where s.sub.ref is a sequence of known reference symbols.
(113) Compute
(114)
where I=[1, . . . , 1].sub.1×N.
(115) Compute R.sub.ss={circumflex over (α)}{circumflex over (α)}.sup.H.
(116) Compute R.sub.nn=R.sub.XX−R.sub.ss and compute
(117)
(118) After an end condition is met, normalize the weights by the maximum of the weights magnitude.
(119) In a further embodiment, a gradient method is used to calculate α. In this embodiment, an SNR gradient is calculated using the SNR estimator equation and the weight gradient ∇.sub.w.Math.SNR is calculated such that
w.sub.n+1=w.sub.n+μ∇.sub.w.Math.SNR (35)
(120) to find the maximum SNR. Since the weights are more sensitive to alpha fluctuation, gradient on alpha would help to get the optimal weights. The alpha gradient ∇.sub.α.Math.SNR is calculated such that
α.sub.n+1=α.sub.n+μ∇.sub.α.Math.SNR =α.sub.n+μ(R.sub.XX.sup.−1).sup.H∇.sub.w.Math.SNR (36)
(121) to find the maximum SNR. Generally, given an initial alpha estimate, for each trial, alpha gradient is calculated and alpha estimate is computed for around 20 iterations. A SNR estimator is used to maximize SNR given the alpha estimate for each iteration, alpha estimate is updated if necessary. At least three trials are needed to get a near-optimal performance. For the second trial and on, a randomly generated α is used to initialize the alpha gradient method. At the end of all trials, the optimal weight is computed as w=R.sub.XX.sup.−1α.sub.best, where α.sub.best is the best alpha from all trials and iterations. Thus, the alpha gradient method requires very intensive computation as well as large iterations for convergence of the optimal weights. Hardware complexity makes it difficult to implement in hop-by-hop basis.
(122)
(123)
(124) The apparatus in one example comprises a plurality of components such as one or more of electronic components, hardware components, and computer software components. A number of such components can be combined or divided in the apparatus. An example component of the apparatus employs and/or comprises a set and/or series of computer instructions written in or implemented with any of a number of programming languages, as will be appreciated by those skilled in the art.
(125) The steps or operations described herein are just for example. There may be many variations to these steps or operations without departing from the spirit of the invention. For instance, the steps may be performed in a differing order, or steps may be added, deleted, or modified.
(126) Although example implementations of the invention have been depicted and described in detail herein, it will be apparent to those skilled in the relevant art that various modifications, additions, substitutions, and the like can be made without departing from the spirit of the invention and these are therefore considered to be within the scope of the invention as defined in the following claims.