Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
SYSTEMS, METHODS, AND MEDIA FOR SELECTING ANTENNAS AND BEAMFORMERS
Document Type and Number:
WIPO Patent Application WO/2012/149576
Kind Code:
A1
Abstract:
Systems that: (a) select a current antenna subset; (b) receive signals in response to a transmission of pi lot symbols using the current antenna subset: (c) determine a current objecti ve function for the current antenna subset; (d) replace an antenna in the current antenna subset with another antenna not. in the current antenna subset, to form a next antenna subset; (e) receive signals in response to a transmission of pilot symbols using the next antenna subset; (f) determines a next objective function for the current antenna subset; (g) determines whether the next objective function is better than the current objective function, and if so creates a corresponding next occupation probability vector entry; and (h) determines whether the value for the corresponding next occupation probability vector entry is larger than a value for an optimal occupation probability vector entry, and if so sets the second antenna subset as the optimal antenna subset.

Inventors:
WANG XIAODONG (US)
Application Number:
PCT/US2012/035899
Publication Date:
November 01, 2012
Filing Date:
April 30, 2012
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
UNIV COLUMBIA (US)
WANG XIAODONG (US)
International Classes:
H04M1/00
Foreign References:
US20090296650A12009-12-03
US20100266002A12010-10-21
US20110069774A12011-03-24
Other References:
See also references of EP 2702750A4
Attorney, Agent or Firm:
BYRNE, Matthew, T. et al. (11 Broadway Suite 81, New York NY, US)
Download PDF:
Claims:
What is claimed is:

1. A system for selecting antennas comprising:

at least one hardware processor that:

(a) selects a current antenna subset of a plurality of transmit antennas and receive antennas;

(b) receives signals in response to a transmission of pilot symbols using the current antenna subset;

(c) determines a current objective function for the current antenna subset based on the signals received using the current antenna subset;

(d) replaces an antenna in the current antenna subset with another antenna not in the current antenna subset to form a next antenna subset;

(e) receives signals in response to a transmission of pilot symbols using the next antenna subset;

(f) determines a next objective function for the current antenna subset based on the signals received using the next antenna subset;

(g) determines whether the next objective function is better than the current objective function, and if so creates a next occupation probability vector entry having a value corresponding to the next antenna subset; and

(h) determines whether the value for the next occupation probability vector entry is larger than a value for an optimal occupation probability vector entry, and if so sets the second antenna subset as the optimal antenna subset.

2. The system of claim l, wherein the at least one hardware processor also: designates the next antenna subset as the current antenna subset;

designates the next objective function as the current objective function; and repeats (d)-(h)-

3. The system of claim J , wherein the at least one hardware processor also:

causes ¾ RF chains to be coupled to transmit antennas of the current antenna subset; and

selects a transmit beamformer that is used to transmit pilot symbols that is equal to a length n* column vector of all zeros except for a kth entry which is one.

4. The system of claim 1 , wherein the at least one hardware processor also:

causes nr RF chains to be coupled to receive antennas of the current antenna subset; and

selects a receive beamformer that is used to receive pilot symbols that is equal to a length n, column vector of all ones divided by the square root of r

5. The system of claim 1, wherein the signals received using the current antenna subset are scalar values output from a receive beamformer.

6. The system of claim t, wherein the at least one hardware processor also iterattvely selects a transmit beamformer and a receive beamformer by applying perturbation vectors to the transmit beamformer and the receive beamformer and evaluates power received using the perturbed transmit beamformer and the perturbed receive beamformer.

7. A method for selecting antennas comprising:

(a) selecting a current antenna subset of a plurality of transmit antennas and receive antennas;

(b) receiving signals in response to a transmission of pilot symbols using the current antenna subset;

(c) determining a current objective function for the current antenna subset based on the signals received using the current antenna subset;

(d) replacing an antenna in the current antenna subset with another antenna not in the current antenna subset to form a next antenna subset;

(e) receiving signals in response to a transmission of pilot symbols using the next antenna subset;

{0 determining a next objective function for the current antenna subset based on the signals received using the next antenna subset;

(g) determining whether the next objective function is better than the current objective function, and if so creating a next occupation probability vector entry having a value corresponding to the next antenna subset; and

(h) determining whether the value for the next occupation probability vector entry is larger than a value for an optimal occupation probability vector entry, and if so setting the second antenna subset as the optimal antenna subset.

8. The method of claim 7, further comprising:

designating the next antenna subset as the current antenna subset; designating the next objective function as the current objective function; and repeating (d)-(h).

9. The method of claim 7, further comprising:

causing nt RF chains to be coupled to transmit antennas of the current antenna subset; and

selecting a transmit beamformer that is used to transmit pilot symbols that is equal to a length nt column vector of all zeros except for a kth entry which is one. 10. The method of claim 7, further comprising:

causing nr RF chains to be coupled to receive antennas of the current antenna subset; and

selecting a receive beamformer that is used to receive pilot symbols that is equal to a length nr column vector of all ones divided by the square root of nr. 11. The method of claim 7, wherein the signals received using the current antenna subset are scalar values output from a receive beamformer.

12. The method of claim 7, further comprising iteratively selecting a transmit beamformer and a receive beamformer by applying perturbation vectors to the transmit beamformer and the receive beamformer and evaluating power received using the perturbed transmit beamformer and the perturbed receive beamformer.

13. A non-transitory computer-readable medium containing computer-executable instructions that, when executed by a processor, cause the processor to perform a method for selecting antennas, the method comprising:

(a) selecting a current antenna subset of a plurality of transmit antennas and receive antennas;

(b) receiving signals in response to a transmission of pilot symbols using the current antenna subset;

(c) determining a current objective function for the current antenna subset based on the signals received using the current antenna subset;

(d) replacing an antenna in the current antenna subset with another antenna not in the current antenna subset to form a next antenna subset;

(e) receiving signals in response to a transmission of pilot symbols using the next antenna subset;

(f) determining a next objective function for the current antenna subset based on the signals received using the next antenna subset;

(g) determining whether the next objective function is better than the current objective function, and if so creating a next occupation probability vector entry having a value corresponding to the next antenna subset; and

(h) determining whether the value for the next occupation probability vector entry is larger man a value for an optimal occupation probability vector entry, and if so setting the second antenna subset as the optimal antenna subset.

14. The non-transitory computer-readable medium of claim J 3, wherein die method further comprises:

designating the next antenna subset as the current antenna subset; designating the next objective function as the current objective function; and repeating (d)-(h).

15. The non-transitory computer-readable medium of claim 13, wherein the method further comprises:

causing nr RF chains to be coupled to transmit antennas of the current antenna subset; and

selecting a transmit beamformer mat is used to transmit pilot symbols that is equal to a length nt column vector of all zeros except for a kth entry which is one.

1 . The non-transitory computer-readable medium of claim 13, wherein the method further comprises:

causing nr RF chains to be coupled to receive antennas of the current antenna subset; and

selecting a receive beamformer that is used to receive pilot symbols that is equal to a length n, column vector of all ones divided by the square root of n<,

17. Hie non-transitory computer-readable medium of claim 13, wherein die signals received using the current antenna subset are scalar values output from a receive beamformer.

18. The non-transitory computer-readable medium of claim J 3, wherein die method further comprises iteratively selecting a transmit beamformer and a receive beamformer by applying perturbation vectors to the transmit beamformer and the receive beamformer and evaluating power received using the perturbed transmit beamformer and the perturbed receive beamformer.

Description:
SYSTEMS, METHODS, AND MEDIA

FOR SELECTING ANTENNAS AND BEAM FORMERS

[0001] The application claims the benefit of United States Provisional Patent Application No. 61/480,121 , filed April 28, 2011 , which is hereby incorporated by reference herein in its entirety.

[0002] Systems, methods, and media for selecting antennas and beamformers are provided.

Background

[0003] Certain high giga-Hertz communications techniques, such as 60GHz millimeter wave communications, have received significant recent attention and are considered as promising technologies for short-range broadband wireless transmission with data rates up to multi-giga bits/sec. Wireless communications at such frequencies can possess several advantages including a huge clean unlicensed bandwidth (up to 7GHz), a compact size of transceiver due to the short wavelength, and less interference brought by high atmospheric absorption. Standardization activities have been ongoing for 60GHz Wireless Personal Area Networks (WPAN) (i.e., IEEE 802.15) and Wireless Local Area Networks (WLAN) (i.e., IEEE 802.11). The key physical-layer characteristics of this system include a large-scale MIMO system (e.g., 32 x32) and the use of both transmit and receive beamforming techniques. [0004] To reduce hardware complexity, typically the number of radio-frequency (RF) chains (which can include amplifiers, AD/DA converters, mixers, etc.) employed is smaller than the number of antenna elements, and an antenna selection technique is used to fully exploit the beamforrning gain afforded by the large-scale MIMO antennas. Although various schemes for antenna selection exist in the literature, they all assume mat the MIMO channel matrix is known or can be estimated. In some such systems, however, the receiver may have no access to such a channel matrix, for example, because the received signals may be combined in the analog domain prior to digital baseband due to an analog beamformer or phase shifter. Instead, in such cases, the receiver may only have access to the scalar output of the receive beamformer. Hence, it has been a challenging problem to devise an antenna selection method based on such a scalar only rather than the channel matrix.

[0005] Accordingly, new systems, methods, and media for selecting antennas and oeamformers are desirable.

Summary

[0006] Systems, methods, and media for selecting antennas and beamformers are provided. In some embodiments, systems for selecting antennas are provided, the systems comprising: at least one hardware processor that: (a) selects a current antenna subset of a plurality of transmit antennas and receive antennas; (b) receives signals in response to a transmission of pilot symbols using the current antenna subset; (c) determines a current objective function for the current antenna subset based on die signals received using the current antenna subset; (d) replaces an antenna in the current antenna subset with another antenna not in the current antenna subset to form a next antenna subset; (e) receives signals in response to a transmission of pilot symbols using the next antenna subset; (f) determines a next objective function for the current antenna subset based on the signals received using the next antenna subset; (g) determines whether the next objective function is better than the current objective function, and if so creates a next occupation probability vector entry having a value

corresponding to the next antenna subset; and (h) determines whether the value for the next occupation probability vector entry is larger than a value for an optimal occupation probability vector entry, and if so sets the second antenna subset as the optimal antenna subset.

[0007] In some embodiments, methods for selecting antennas are provided, the methods comprising: (a) selecting a current antenna subset of a plurality of transmit antennas and receive antennas; (b) receiving signals in response to a transmission of pilot symbols using the current antenna subset; (c) determining a current objective function for the current antenna subset based on the signals received using the current antenna subset; (d) replacing an antenna in the current antenna subset with another antenna not in the current antenna subset to form a next antenna subset; (e) receiving signals in response to a transmission of pilot symbols using the next antenna subset; (f) determining a nexT objective function for the current antenna subset based on the signals received using the next antenna subset; (g) determining whether the next objective function is better than the current objective function, and if so creating a next occupation probability vector entry having a value corresponding to the next antenna subset; and (h) determining whether the value for the next occupation probability vector entry is larger than a value for an optimal occupation probabiLIty vector entry, and if so setting the second antenna subset as the optimal antenna subset

[0008] In some embodiments, non-transitory computer-readable media containing computer-executable instructions that, when executed by a processor, cause the processor to perform a method for selecting antennas are provided, the method comprising: (a) selecting a current antenna subset of a plurality of transmit antennas and receive antennas; (b) receiving signals in response to a transmission of pilot symbols using the current antenna subset; (c) determining a current objective function for the current antenna subset based on the signals received using the current antenna subset; (d) replacing an antenna in the current antenna subset with another antenna not in the current antenna subset to form a next antenna subset; (e) receiving signals in response to a transmission of pilot symbols using the next antenna subset; (f determining a next objective function for the current antenna subset based on the signals received using the next antenna subset; (g) determining whether the next objective function is better than the current objective function, and if so creating a next occupation probability vector entry having a value corresponding to the next antenna subset; and (h) determining whether the value for the next occupation probability vector entry is larger than a value for an optimal occupation probability vector entry, and if so setting the second antenna subset as the optimal antenna subset.

Brief Description of the Drawings

[0009] FIG. 1 is a diagram illustrating an example of hardware in accordance with some embodiments.

[0010] FIG. 2 is a diagram illustrating an example of line of sight (LOS) and non-LOS components in signal propagation in accordance with some embodiments.

[0011] FIG. 3 is a diagram illustrating an example of a process for selecting antennas in accordance with some embodiments. [0012] FIG.4 is a diagram illustrating an example of a process for selecting beamformers in accordance with some embodiments.

[0013) FIG. 5 is a diagram illustrating an example of a process for selecting backup antennas in accordance with some embodiments.

[0014] By exploiting the strong line-of-sight property of high giga-Hertz channels, such as 60GHz channels, an iterative antenna selection process based on discrete stochastic approximation, that can quickly lock onto a near-optimal antenna subset, can be provided.

Moreover, given a selected antenna subset, an adaptive transmit and receive beamforming selection process based on the stochastic gradient method, that can make use of a low-rate feedback channel to inform the transmitter about the selected beams, can also be provided.

[0015] As shown in FIG. I, in some embodiments, a MIMO system 100 with a transmitter 102 with N, (e.g., 32) transmit antennas 104 and a receiver 106 with N r (e.g. ,0) receive antennas 108 can be provided. Transmitter 102 may also include RF chains 110, an antenna selection and beamforming controller 112, and an RF switch 114. Receiver 106 may also include RF chains 116, an antenna selection and beamforming controller 118, and an RF switch 120.

[0016] Antennas 104 and 108 can be any suitable antennas, such as antennas having an omni-directional antenna pattern and a 20 dBi gain and vertical linear polarization.

[00171 chains 110 and 116 may be any suitable RF chains, and may include any suitable components, such as amplifiers, AD/DA converters, mixers, etc. Any suitable number of RF chains 110 and 116, such as ten each, can be provided in some embodiments. [0018] Antenna selection and beamforming controllers 112 and 118 may be any suitable logic, gate arrays, hardware processors, computers, etc. for performing any suitable portion of antenna selection and beamforming processes as described herein.

[0019] switches 114 and 118 may be any suitable devices for switching RF signals between selected antennas 104 and 108, respectively, and RF chains 110 and 116, respectively.

[0020] Although a transmitter 102 and a receiver 106 are illustrated in FIG. 1 for clarity, the transmitter and the receiver can be part of or operations of a transceiver that is also capable of receiving and transmitting, respectively in some embodiments. Such transceivers can be any suitable transceivers such as IEEE 802.15.3c or 802.1 lad transceivers in some embodiments.

[0021 En some embodiments, when operating in certain high giga-Hertz frequency bands, such as the 60 GHz band, radio waves in such systems can propagate with strong line-of- sight (LOS) components as well as multi-cluster multipath components because of high path loss and inability of diffusion. Due to such near-optical propagation characteristics, a 3-D ray tracing technique can be used for channel modeling of these systems in some embodiments.

[0022] For example, as shown in FIG. 2, when operating in a room 200, such a 3-D ray tracing technique can be illustrated. The transceivers in such an example can be located in any suitable locations within room 200. For each location, possible rays in the LOS path and up to the second order reflections from walls, ceiling and floor can be traced for the links between the transmit antennas 204 and the receive antennas 208. For example, the impulse response for one link can be given by the following equation (I): where are the inter-cluster parameters for the amplitude, the delay,

the departure azimuth, die departure elevation, the arrival azimuth, and the arrival elevation, respectively, of ray cluster and

denotes the cluster constitution by rays therein, where are the

intra-cluster parameters for A* ray in cluster .

[0023J In an OFDM-based system, which can be used in some embodiments, the narrowband subchannels can be assumed to be flat-fading. In such cases, the equivalent channel matrix between the transmitter and the receiver can be given by

for i = 1, 2, ... ,N r and = 1, 2, ... ,JV ( , where: the entry hy denotes the channel response between transmitter j and receiver i by aggregating all N rays . traced rays between them at the delay of the

LOS component, r ; and is the amplitude of V¾h ray in the corresponding link. Analytically, the channel matrix in (3) can be be further separated into ffios and fimm accounting for the LOS and non-LOS components, respectively

where the Rician /f-facior indicates the relative strength of the LOS component.

|0024] In some embodiments, the numbers of available transmit and receive antennas, N t and N r , can be large and the numbers of available radio-frequency (RF) chains at the transmitter and receiver ti f and n r can be such that n t «N t and/or n r « N t Accordingly, mechanisms for selecting a subset of n, * rt r transmit and receive antennas out of the available N, N r antennas in a MIMO system can be provided.

[0025) In such mechanisms, ω can be used to denote the set of indices corresponding to the selected n t transmit antennas and n r receive antennas, and Η ω can be used to denote the submatrix of the original MIMO channel matrix H corresponding to the selected antennas. For data transmission over a chosen MIMO system H m , a transmit beamformer w -

with M\ ~ I , can be used in some embodiments. The received signal can then be given by:

where: s is the transmitted data symbol; is the system signal-to-noise ratio (SNR) at

each receive antenna; E and > are the symbol energy and noise power density, respectively; and n ~ CJf(0 f I is an additive white Gaussian noise vector. At the receiver, a receive beamformer it , with can be applied to the received signal r, to obtain:

[0026] For a given antenna subset ω and known channel matrix Η , the optimal transmit beamformer w and receive beamformer «, in the sense of maximum received SNR, can be given respectively by the right and left singular vectors of H m corresponding to the principal singular value ff \ {H (u ). The optimal antenna subset ω can then be given by the antennas whose corresponding channel submatrix has the largest principal singular value as follows:

where S is a set different combinations of n, transmit antennas and n r receive antennas.

[0027] In accordance with some embodiments, a discrete stochastic approximation algorithm process can be used to perform antenna selection to find S3. By setting the transmit and receive beam formers to some specific values, this process can compute a bound on the principal singular value of M m corresponding to the current antenna subset ω, and then iteratively update to until it converges. Once the antenna subset ω has been selected, the transmit and receive beamformers w and « can be updated using a stochastic gradient algorithm process in some embodiments. At each iteration of this process, feedback bits can be transmitted from the receiver to the transmitter via a feedback channel to inform the transmitter about the updated transmit beamformer.

[0028] In some embodiments, a function that is an unbiased estimate of can be used to solve for ω as follows:

In accordance with some embodiments, a stochastic approximation process can be used to solve equation (8). In some embodiments of this process, a sequence of estimates of the optimal antenna subset can be generated, where each new estimate is based on the previous one by moving a small step in a good direction towards the global optimizer. Through iterations of the process, the global optimizer can be found by means of maintaining an occupation probability vector π, which indicates an estimate of the occupation probability of one state (i.e., antenna subset). Under certain conditions, such an algorithm converges to the state which has the largest occupation probability in «.

[0029] An example 300 of such a process in accordance with some embodiments is shown in FIG. 3. In some embodiment, mis process can be controlled by a hardware processor in a receiver (such as in controller 118 of FIG. 1 ) and the actions of a remote transmitter can controlled and synchronized via any suitable feedback. [0030] As illustrated, after process 300 begins at 302, at 304, the process can set initial values for antenna subset to l> , can set the occupation probability vector - [ω° I] 1 (which can have only one element with the first entry serving as the index of the antenna subset, and the other entry indicating the corresponding occupation probability), can set the optimal antenna subset ώ = w fl \ and can set the transmit beamformer (w) and receive beamfbrmer (u) as follows:

where e*. is a length-n t column vector of all zeros, except for the k-th entry which is one; and 1 is a length-iv column vector of all ones. The initial set of transmit antennas can be fed back to the transmitter via a feedback signal at 304 in some embodiments.

[0031] Next, at 306, M (e.g., 20) pilot signals (which can be set as s=l) can be transmitted from the selected transmit antennas and signals

received via the selected receive antennas.

[0032] Then, at 308, the ob]ective function <K<*> 0) ) or the initial antenna subset can be calculated. This objective function can be calculated in any suitable way. For example, in some embodiments, the objective function φ(ω 1 ) can be estimated as being:

wherein

[0033 j At 310, iteration and sub-iteration counters n and k, respectively, can both be set to one, and then at 312 the kth element in <o(n) can be replaced with a randomly selected antenna not in o> ia) to obtain ω^.

[0034 Pilot signals can then be transmitted and the signal received at 314. if the new, randomly selected antenna is a transmit antenna, this can be achieved by feeding back the identity of the new transmit antenna to the transmitter, causing the transmitter to transmit pilot signals from die new antenna, and obtaining the received signals { (k) im m=l , ... , M} at the receiver. If the new, randomly selected antenna is a receive antenna, this can be achieved by instructing the transmitter to sequentially transmit pilot signals from all transmit antennas, and obtaining the received signals.

[0035| Next, at 316, the objective function ^(δ ^) for the current antenna subset can be calculated. This objective function can be calculated in any suitable way, such as described above, in some embodiments.

[0036J Then, at 318, the objective functions of a n and ώ (η) can be compared, and if the objective function for G n) is better than the objective function for co B> , then: o n) can be set equal to ω* η> and to (n> can be fed back to the transmitter (if any transmit antennas affected) at 320; and it can be determined at 322 if «3 W is in and, if not, a column [δί^,Ο] 7 can be added to « at 324.

[0037J If it is determined at.318 mat the objective function for is not better than the objective function for ω <η) , or after determining that ω*" is in n or completing 324, process 300 can perform adaptive filtering to set ίΐ* η) and τί Ώ) at 326. This can be performed in any suitable manner. For example, in some embodiments, a forgetting factor μίη+1^1/(η+1) can be set, JT* can be set equal to [1-μ(η+ 1)]^, and ^" "') can be set equal to j^なto° μίη-Η). [0038j At 328, it can be determined if k^n&n^ and, if not, k can be incremented at 330 and process 300 can loop back to 312. Otherwise, at 332, process 300 can next determine if jt <a V n) ) is greater than JP Q*\ and, if so, set ώ (α) equal to (o io) at 334.

[0039J 1 f it is determined at 332 that ' ω^) is not greater than n (1,} (£} { * or aJfter completing 334, then process 300 can set ω*" * equal to o (n) and π^'* equal to »' η> at 336.

[0040] Then, at 338, process 300 can determine whether the process is done. If not, the process can then increment n at 340 and loop back to 312. Otherwise, the process can terminate at 342. The process can determine if it is done in any suitable manner. For example, in some embodiments, process 300 can be done when n reaches a given number, such as 100 for example. Once done, the last selected subset can be considered to be the global (sub)optimizer.

[0041 \ In some embodiments, rather than using only one receive beamformer

as described above, r receive beamformers {« j u, } (which are columns of a «,■■*«,■ unitary matrix) can be used for each transmit beamformer ¾, k - Ϊ, ... , Using such beamformers, an approximation of the objective function can be given by:

or its smoother version

where

and |0042| Once the antenna subset H M has been chosen, the transmit and receive beamformers w and n can be computed in some embodiments, w and can be chosen to maximize the received SN , or alternatively, to maximize the power of the receive beam former output in (6),

[00431 accordance with some embodiments, a stochastic gradient method process can be used for updating the beamformers. An example 400 of such a process in accordance with some embodiments is shown in FIG.4.

[0044| As illustrated, after process 400 begins at 402, beamformers H ,<0) and *f ( ) can be initialized and iteration counter n can be set to zero at 404.

[0045] Any suitable initial beamformers w and u can be used in some embodiments. For example, in some embodiments, these initial beamformers can be randomly selected. As another example, in some embodiments, a non-random initialization can be used to speed up the convergence of process 400. Because the channel can consist of a deterministic LOS component Hws and a random component, when the K factor is high, the LOS component mostly determines the largest singular mode. Hence, the transmit and receive beamformers can be initialized as the right and left singular vectors of HUM, respectively, in some embodiments.

[0046] Next, at 406, given a set of current beamformers (w,u) t K, perturbation vectors can be generated for the transmit beamformer, and K r perturbation vectors can be generated for the receive beamformer, Then for each

of the normalized perturbed transmit-receive beamformer pairs: where β is a step-size parameter- the corresponding received output power \ 2 can be measured and the effective channel gain can be used as a performance metric independent of

transmit power at 408. The transmitter can then be informed at 410 of the selected perturbation vector by a feedback message from the receiver. Then, at 412, the beam formers can be updated using the perturbation vector pair that gives the largest output power at the receiver. 0047| At 414, process 400 can determine if it is done, and if not, the process can branch to 416 to increment n and then loop back to 406. Otherwise, process 400 can terminate at 418. Process 400 can determine whether it is done in any suitable manner. For example, in some embodiments, the process can be determined as being done when the effective channel gain fluctuates below a tolerance threshold.

[0048} In some embodiments, instead of switching to different receive beamformers and making KtK r transmissions, Κ,- parallel receiver beamformers can be set up to obtain K, receiver outputs simultaneously and only AT, transmissions performed for each iteration.

[0049J In some embodiments, rather than generating all candidate Kj + K r beamformers anew at each iteration, the best transmit and receive beamformers from the previous iteration can be kept and AT, ~ 1 new transmit beamformers and K r ~ 1 new receive beamformers can be generated for the current iteration.

f005GJ In some embodiments, an obstacle can block a I )S signal and therefore attenuate the received power corresponding to that signal. A metric of diffraction ratio matrix (DRM) can be used in some embodiments to model the blockage impact to an entire antenna array from a wave propagation point of view. More particularly, the metric diffraction ratio can be used to indicate the blockage impact on a single radio link as follows'. where:

E (j is the incident electric at the / receive antenna from the j transmit antenna as:

where _な is the electric at the y ' th transmit antenna, r is the distance between antennas and and K lf can be computer using Huygen's law iteratively

upon each obstacle plane; and

y is the incident electric at the i receive antenna from the. transmit antenna in free space.

[005 J \ The obstacle impact alters the wireless channel matrix by means of DRM, namely J = such that

where * is Hadamard product operator.

[0052J In some embodiments, when an obstacle blocks the LOS transmission from the transmitter to the receiver, a backup antenna subset can be chosen as a substitution for the primary antenna subset which may be attenuated by the obstacle.

[0053] When the obstacle is detected and the primary antenna subset is blocked, members in the antenna subset selection history can be re-evaluated using a scoring function and the member with highest score can be chosen as the backup antenna subset.

[0054] In some embodiments, a scoring function can be set as:

where;

J{(o) is the objective function with respect to the antenna subset o in free space channel; and D t e, is a sub-matrix of D whose entries are selected by the indices in antenna subset ω.

[0055 An example 500 of a process for selecting a backup antenna subset in accordance with some embodiments is shown in FIG. 5. In some embodiment, this process can be controlled by a hardware processor in a receiver and the actions of a remote transmitter can controlled and synchronized via any suitable feedback.

[00561 As illustrated, after process 500 begins at 502, at 504, the process can set initial values for antenna subset a l can set the optimal antenna subset Q = ω^, can sei the number of visits JC(ft ) (lJ jF l , can set the cumulated objective function∑(ω (1} )=0, and can set the transmit beamformer (w) and receive beamformer («) as follows:

where et is a Iength-n t column vector of all zeros, except for the k-th entry which is one; and 1 is a length-n- column vector of ail ones. The initial set of transmit antennas can be fed back to the transmitter via a feedback signal at 504 in some embodiments.

f0057| Next, at 506, M (e.g., 20) pilot signals (which can be set as s= 1 ) can be transmitted from the selected transmit antennas and signals

received via the selected receive antennas.

[0058] Then, at 508, the objective function φ(ω (Ι> ) for the initial antenna subset can be calculated. This objective function can be calculated in any suitable way. For example, in some embodiments, the objective function φ(ω 0) ) can be estimated as being:

wherein

[0059} At 510, iteration and sub-iteration counters n and k, respectively, can both be set to one, and then at 512 the kth element in ω(η) can be replaced with a randomly selected antenna not in ω <0) to obtain ω ί0) . Pilot signals can then be transmitted and the signal received at 514. If the new, randomly selected antenna is a transmit antenna, this can be achieved by feeding back the identity of the new transmit antenna to the transmitter, causing the transmitter to transmit pilot signals from the new antenna, and obtaining the received signals at the receiver. If the new, randomly selected antenna is a receive antenna, this can be achieved by instructing the transmitter to sequentially transmit pilot signals from all transmit antennas, and obtaining the received signals.

[0060) Next, at 516, the objective function for the current antenna subset can be

calculated. This objective function can be calculated in any suitable way, such as described above, in some embodiments.

[006 J Then, at 518, the objective functions of ω π> and can be compared, and if the objective function for is better than the objective function for <¾» ί0) , then can be set equal to can be set equal to the objective function of ω^, and can be fed back to

the transmitter (if any transmit antennas affected) at 520.

[0062J Otherwise, if it is determined at 518 that the objective function for SS^ is not better than the objective function for ω ίη, ϊ then, at 522, a " * x> can be set equal to ω ίη) , and ηφ can be set equal to the objective function of <o <n> . [0063 j Next, at 524, process 500 can increment the number of visits

an cumulate the objective function and can

calculate the average objective function

|0064| Then at 526, the process can determine whether the number of visits is greater than th, the minimum number of visits that are reliable, AND whether the cumulated objective function is greater than J{<3), the objective function of the optimal antenna

subset. If so, then process 500 can push the selected subset to history as Q=[Q £3] and ω=

[0065] If it is determined at 526 that K or after completing 528, process 500 can determined if a transmission is blocked at 530. This determination can be made in any suitable manner. For example, this determination can be made if the received transmission power significantly drops over a short period of time. If it is determined at 530 that the transmitter is blocked, then at 532, process 500 can acquire DRM D using (17), score each member of the history in Q using the scoring function (1 ), and switch to the backup with the highest score if the current antenna subset is significantly attenuated.

[0066} If it is determined at 530 that the transmitter is not blocked or after completing 532, then at 534, process 500 can determine if b=nfrn^ If not, process 500 can branch to 536, where k can be incremented and then can loop back to 512. Otherwise, at 538, process 500 can determine whether the process is done. If not, the process can then increment n at 540 and loop back to 512. Otherwise, tide process can terminate at 542. The process can determine if it is done in any suitable manner. For example, in some embodiments, process 500 can be done when n reaches a given number, such as 100 for example.

[0067) The mechanisms and processes described herein for selecting antennas and beamfonners can be implemented in any suitable hardware that is part of or connected to a receiver and/or a transmitter, such as controllers 112 and 118 (FIG. I ), in some embodiments. For example, these mechanisms and/or processes can be implemented in any of a general purpose device such as a computer or a special purpose device such as dedicated logic, a gate array, a client, a server, mobile terminal (e.g., mobile phone), etc. Any of these general or special purpose devices can include any suitable components such as a hardware processor (which can be a microprocessor, digital signal processor, a controller, etc.), memory, communication interfaces, display controllers, input devices, etc.

£0068] In some embodiments, any suitable computer readable media can be used for storing instructions for performing the mechanisms and/or processes described herein. For example, in some embodiments, computer readable media can be transitory or non-transitory. For example, non-transitory computer readable media can include media such as magnetic media (such as hard disks, floppy disks, etc.), optical media (such as compact discs, digital video discs, Blu-ray discs, etc.), semiconductor media (such as Hash memory, electrically programmable read only memory (EPROM), electrically erasable programmable read only memory (EEPROM), etc.), any suitable media that is not fleeting or devoid of any semblance of permanence during transmission, and or any suitable tangible media. As another example, transitory computer readable media can include signals on networks, in wires, conductors, optical fibers, circuits, any suitable media that is fleeting and devoid of any semblance of permanence during transmission, and/or any suitable intangible media.

[0069J Although the invention has been described and illustrated in the foregoing illustrative embodiments, it is understood that the present disclosure has been made only by way of example, and that numerous changes in the details of implementation of the invention can be made without departing from the spirit and scope of the invention, which is limited only by the claims that follow. Features of the disclosed embodiments can be combined and rearranged in various ways.