Spatio-temporal signal monitoring

09660693 ยท 2017-05-23

Assignee

Inventors

Cpc classification

International classification

Abstract

A spatio-temporal signal monitoring system includes a sampler configured to receive a radio frequency signal and obtain first compressive sensing measurements of said received signal at a first resolution level, and a signal detector configured to identify at least one signal of interest based on said first compressive sensing measurements and perform second compressive sensing measurements on said at least one signal of interest at a second resolution level, said second resolution level being higher than said first resolution level. The received signal may be analyzed as an array or image having two or more dimensions, based on frequency and on at least one other parameter, such as angle-of arrival, and may be analyzed at a higher level of resolution at the frequencies and angles corresponding to a signal of interest (SOI). Estimates of the frequency and/or the at least one other parameter may be generated by the system. The system may be used to monitor a wideband RF spectrum and/or track signals, such as frequency-hopping signals.

Claims

1. A spatio-temporal signal monitoring system comprising: a sampler configured to: receive a radio frequency signal in a first frequency band, said radio frequency signal covering a first range of at least one other parameter of the radio frequency signal; and obtain first compressive sensing measurements of said received signal at a first resolution level, wherein the received signal has an angle of arrival at a third resolution; and a signal detector configured to: identify a first signal of interest based on said first compressive sensing measurements; determine a second frequency band corresponding to a said first signal of interest within the received radio signal, the second frequency band being narrower than the first frequency band, and a second range of the at least one other parameter corresponding to the said first signal of interest, said second range being narrower than said first range; the sampler being further configured to obtain second compressive sensing measurements of said received signal at a second resolution level, said second compressive sensing measurements corresponding to solely said second frequency band and said second range of said at least one other parameter, and said second resolution level being higher than said first resolution level; and determine an angle of arrival of said received signal at a fourth resolution, wherein the fourth resolution is more accurate than the third resolution.

2. The system of claim 1, wherein said signal detector is further configured to: identify a second signal of interest based on said second compressive sensing measurements; determine a third frequency band corresponding to the second signal of interest and a third range of said at least one other parameter corresponding to said second signal of interest, said third frequency band being narrower than said second frequency band and said third range being narrower than said second range; and obtain third compressive sensing measurements of said received signal at a third resolution level, said third compressive sensing measurements corresponding to said third frequency range and said third range, and said third level of resolution being higher than said second level of resolution.

3. The system of claim 1, wherein the signal detector is configured to output an estimate of said at least one other parameter of the second signal of interest, based on said second range.

4. The system of claim 1, wherein the signal detector is configured to output an estimate of the at least one other parameter of the first signal of interest.

5. The system of claim 1, configured to continue obtaining first compressive sensing measurements of the radio frequency signal in the first frequency band to track the said first signal of interest, where said first signal of interest is a frequency-hopping signal.

6. The system of claim 2, wherein the signal detector is configured to output an estimate of said at least one other parameter of a subsequently identified signal of interest within said second signal of interest, based on a subsequently determined range of said at least one other parameter, said subsequently determined range being narrower than said second range.

7. The system of claim 3, wherein said at least one other parameter comprises an angle-of-arrival.

8. A spatio-temporal signal monitoring method comprising: receiving a radio frequency signal, said received radio frequency signal covering a first frequency band; obtaining first compressive sensing measurements of said received radio frequency signal at a first resolution level, wherein the received signal has an angle of arrival at a third resolution; identifying at least one signal of interest based on said first compressive sensing measurements, wherein said identifying at least one signal of interest comprises determining a second frequency band corresponding to the at least one signal of interest, the second frequency band being narrower than the first frequency band; and performing second compressive sensing measurements solely on said at least one signal of interest on said second frequency band at a second resolution level, said second resolution level being higher than said first resolution level; and determining an angle of arrival of said at least one signal of interest at a fourth resolution, wherein the fourth resolution is more accurate than the third resolution.

9. The method of claim 8, wherein: said received radio frequency signal covers a first range of at least one other parameter of the radio frequency signal than the frequency band; said identifying at least one signal of interest comprises determining a second range of the at least one other parameter corresponding to the at least one signal of interest, said second range being narrower than said first range; and said second compressive sensing measurements correspond to said second range of said other parameter.

10. The method of claim 8, comprising: continuing to obtain first compressive sensing measurements of the radio frequency signal in the first frequency band to track the signal of interest, where said signal of interest is a frequency-hopping signal.

11. The method of claim 9, wherein the signal detector is configured to output an estimate of said at least one other parameter of the second signal of interest, based on said second range.

12. The method of claim 9, further comprising: identifying a second signal of interest based on said second compressive sensing measurements; determining a third frequency band corresponding to the second signal of interest and a third range of said at least one other parameter corresponding to said second signal of interest, said third frequency band being narrower than said second frequency band and said third range being narrower than said second range; and obtaining third compressive sensing measurements of said received signal at a third resolution level, said third compressive sensing measurements corresponding to said third frequency range band and said third range, and said third level of resolution being higher than said second level of resolution.

13. The method of claim 9, wherein said at least one other parameter comprises an angle-of-arrival.

14. The method of claim 12, further comprising: outputting an estimate of said at least one parameter of a subsequently identified signal of interest within said second signal of interest, based on a subsequently determined range of said at least one other parameter, said subsequently determined range being narrower than said second range.

Description

BRIEF DESCRIPTION OF THE DRAWINGS

(1) Example embodiments will now be described with reference to the following drawings, of which:

(2) FIG. 1 is an overview of a signal detection system according to an example embodiment;

(3) FIG. 2 is a block diagram of signal detection apparatus in the system of FIG. 1;

(4) FIG. 3 is an overview of signal processing and analysis performed by the apparatus of FIG. 2;

(5) FIG. 4 is a flowchart of an example procedure for initializing an interference removal process using the apparatus of FIG. 2;

(6) FIG. 5 depicts a hierarchical foveated measurements scheme for signal analysis and processing in an example embodiment;

(7) FIG. 6 is a flowchart of an example signal analysis process using the apparatus of FIG. 2 and the scheme of FIG. 5;

(8) FIG. 7 depicts a computer system that can be used to implement at least part of the apparatus of FIG. 2; and

(9) FIG. 8 depicts examples of data storage devices that may be used with the computer system of FIG. 7.

DETAILED DESCRIPTION

(10) FIG. 1 depicts the architecture of a signal monitoring system 1 according to an embodiment. A sensor, such as an antenna array 2, is arranged to detect radio frequency signals x(t) within a frequency band W.

(11) A RF signal x(t) is received by an antenna array 2. The received signal x(t) is then processed, the processing including random mixing 3, compressive sensing filtering 4 and Sub-Nyquist sampling 5 as shown in FIG. 1. A reconstruction 6 of the received signal, based on the samples, is then made, from which a determination 7 of parameters such as center frequency of the signal, angle-of-arrival and time-of-arrival can be made. Analysis of the samples can also be used to identify a signal of interest SOI within the received signal x(t), for example by utilizing an autocorrelation spectrogram 8 and/or energy detection 9 on the sub-Nyquist samples. Frequency information and/or angle-of-arrival information for the SOI can be provided to the antenna array so that the SOI can be tracked, shown at 10 in FIG. 1.

(12) FIG. 2 depicts a signal detection apparatus 11 in the system of FIG. 1. The apparatus 11 has an interference removal stage 12, which includes a power divider 13, a narrowband receiver 14, a mixer 15, and a multiplexer 16. The apparatus 11 also includes a modulator 17, a sampler 18, configured to perform compressive sensing measurements, and a signal detector 19, configured to perform signal analysis and provide control signals and feedback to the interference removal stage 12. The sampler 18 and/or the signal detector 19 be provided in the form of a computer processor or microprocessor or using hardware.

(13) FIG. 3 depicts signal processing and analysis process that may be performed by the apparatus of FIG. 2. In this process, compressive sensing measurements 20 are taken and used for signal processing 21, such as the interference removal procedure described below, and signal analysis 22. The signal analysis 22 provides information on a SOI 23, which is used to obtain further compressive sensing measurements 20 on the residual signal x.sub.R(t).

(14) A procedure for initializing an interference removal process performed by the apparatus 11 will now be described with reference to FIGS. 1, 2 and 4.

(15) Starting at step S40, the power divider 13 receives the signal x(t) received by the antenna array 2 (step S41). The bandwidth W covered by the system 1 is divided into N frequency bands. It is assumed that the received signal x(t) includes multiple narrowband signals s.sub.0-s.sub.N-1 within the N frequency bands, where multiple signals in the same frequency band are treated as one signal. If, at most, M of the N frequency bands (M<N) are occupied simultaneously at any given moment, the received signal x(t) may be approximated as:

(16) x ( t ) = .Math. k = - N 2 N 2 - 1 s k - t ( 2 k + 1 ) W / N , ( Equation 1 )

(17) The interference removal stage 12 of FIG. 2 uses an iterative process, utilizing feedback from the signal detector to produce the residual signal x.sub.R(t) by subtracting interference from the signal x(t). However, at the start of the interference removal process, such feedback is not yet available and so the residual signal x.sub.R(t) initially corresponds to the received signal x(t).

(18) The modulator 17 modulates the residual signal x.sub.R(t) with a pseudo-random signal p(t) 3 (step S42) by the sampler 18. In this particular example, the pseudo-random signal p(t) has the following format:

(19) p ( t ) = p n , t [ n w , n + 1 w ) , n = 1 , 2 , .Math. , N ( Equation 2 )
where p.sub.n is a sequence of numbers that take a value of +1 or 1 randomly and N is the number of frequency bands used to approximate the input signal x(t), as described above.

(20) The sampler 18 performs compressive sensing measurements 4 (step S43) and generates samples y[N] of the modulated residual signal x.sub.R(t) 5, which can be expressed in matrix format as:
y=HDFs(Equation 3)

(21) where H, D and F are matrices:

(22) H = [ 11 .Math.1 11 .Math.1 .Math. 11 .Math.1 ] , ( Equation 4 )
D=diag(p.sub.n)(Equation 5),

(23) and

(24) F = [ - j n ( 2 k + 1 ) / N ] n , k , ( Equation 6 )
and

(25) y = [ y 1 y 2 .Math. y N ] and s = [ s 1 s 2 .Math. s N ] are vectors , for n = 0 , .Math. , N - 1 and k = - N / 2 , - N / 2 + 1 , .Math. , N / 2 - 1.

(26) The signal detector 19 then identifies the strongest of the N narrowband signals as indicated by the samples of the modulated residual signal x.sub.R(t) (step S44). The strongest narrowband signal is determined by first multiplying y with the conjugate transpose of HDF: s=F*D*H*y. The signal detector 19 then locates a center frequency of the frequency band that includes the strongest narrowband signal s.sub.1(t), corresponding to the largest energy: argmin.sub.j|s.sub.j|.

(27) The result of this determination is sent to the narrowband receiver 14. From this point on, the narrowband receiver filters the strongest signal s.sub.1(t) from the received signal x(t) (step S45) and the mixer 15 subtracts that strongest signal s.sub.1(t), and any other previously identified strongest signals, from received signal x(t) (step S46), to produce the residual signal x.sub.R(t) (step S47).

(28) If further interference removal is required (step S48), then steps S43 to S48 are repeated to make compressive sensing measurements of the modulated residual signal x.sub.R(t) (steps S43, S44), identify the next strongest signal (step S45), and filter the next strongest signal x.sub.2(t) from x(t) (step S46). The next strongest narrowband signal s.sub.2(t) is then combined with the previously identified strongest narrowband signal s.sub.1(t) or signals using the multiplexer 16 and subtracted from the received signal x(t) by the mixer 15 (step S47) until M narrowband signals s.sub.1(t) to s.sub.M(t) have been detected and are being subtracted from x(t) (steps S48, S49).

(29) Compressive sensing measurements 20 of the modulated residual signal x.sub.R(t) 4, 5 taken by the sampler 18 may be used in reconstruction of the signal x(t) 6 by the signal detector 19 The samples y[N] of detected narrowband signals are used to reconstruct and refine the measurements of the received signal x(t) using a foveated compressed sensing (FCS) technique, informing both the processing 21 and analysis 22 of the received signal x(t), as shown in FIG. 3.

(30) Compressed sensing theory is based on an assumption that signals are sparse in a discrete transform domain. However, real-world analog signals are, typically, not supported on a discretized grid, but are sparse in a continuous transform domain. The reconstruction technique described in the following is based on non-uniform sampling of the signal of interest, to allow for such characteristics of real-world signals. FCS techniques were developed for use in imaging, utilizing a small number of measurements to detect a region of interest (ROI) in an image d for reconstruction. In the present embodiment, a FCS technique is used for spatiotemporal monitoring of non-visual data, to detect an unknown signal in a wideband or ultra-wideband RF spectrum. An assumption is made that the unknown signal is sparse in that spectrum.

(31) The reconstruction technique is based on an assumption that the signal of interest, y, is a linear combination of k tones, as follows:
y(t)=.sub.l=1.sup.ka.sub.l.Math.e.sup.i2f.sup.l.sup.t,(Equation 7),
where:
f.sub.l[0,N],a.sub.lcustom character, for tcustom character(Equation 8).

(32) The reconstruction scheme includes an iterative process in which the signal detector 19 estimates the largest signal in the spectrum using a convex L1 minimization, such as:
custom character=argmincustom charactercustom characterDFcustom character.sub.2.sup.2+custom character.sub.1,(Equation 9),

(33) where D is a diagonal matrix associated with the non-uniform time samples, F is the inverse Fourier matrix and is a tuning parameter with a value that is greater than 0.

(34) The estimated frequencies f.sub.l from Equation (8) are used as initial values for solving the following minimization problem in the continuous domain by Newton's method:
min.sub.f.sub.1.sub.,f.sub.2.sub., . . . ,f.sub.k.sub.[0,N].sub.j=1.sup.My.sub.j.sub.l=1.sup.ka.sub.le.sup.i2f.sup.l.sup.t.sup.j.sub.2.sup.2(Equation 10).

(35) Once the frequencies f.sub.l of components of the signal are obtained, their respective amplitudes a.sub.l can be determined, for example, by a least squares method.

(36) These minimization steps, based on Equations (9) and (10), are repeated for further narrowband signals as they are detected by the signal detector 19.

(37) While the above example is described with reference to Fourier transforms, the signal reconstruction technique is more general and can be used with other types of transformations.

(38) The compressive sensing process will now be described in more detail, with reference to FIGS. 5 and 6.

(39) In FIG. 5, a hierarchy of two dimensional images 24, 25, 26 is used to represent the narrowband signals in a monitored wideband RF spectrum. In each of these example images, frequency f of the narrowband signals is indicated by the x-axis and the angle-of-arrival AoA is indicated by the y-axis. The first image 24 represents the modulated residual signal x.sub.R(t), across the monitored wideband RF spectrum and a first, widest, range of angles-of-arrival AoA. The shaded regions represent SOIs 24a, 24b, etc. within the modulated residual signal x.sub.R(t). Subsequent images 25, 26 represent the SOIs 24a, 24b at a higher resolution than that provided by the first image 24.

(40) Starting at step S60, compressed measurements of the modulated residual signal x.sub.R(t) are taken at a sub-Nyquist rate 5 by the sampler 18 (step S61). The samples y[N] are then analyzed by the signal detector 19 to identify the strongest of the narrowband signals of x.sub.R(t) as a SOI 24a (step S62). In this particular example, the strongest signal is identified using the technique described above in relation to step S44 in FIG. 4.

(41) The strongest signal is then estimated and the frequencies f.sub.l used to reconstruct the SOI 24a are obtained (step S63), for example, by using an iterative process based on Equations (9) and (10) as described above.

(42) Once the frequencies f.sub.l have been obtained, the amplitudes a.sub.l for use in reconstructing the SOI 24a are then determined (step S64), for example, by using a least-squares method.

(43) If further narrowband signals are to be analyzed (step S65), then the next strongest narrowband signal of x.sub.R(t) is identified as a SOI 24b (step S62) and estimated, and the frequencies f.sub.l and amplitudes a.sub.l for reconstructing that SOI 24b are determined (steps S63, S64), until each SOI 24a, 24b has been analyzed (step S65).

(44) Information 23 such as the frequency f and angle of arrival AoA of the identified SOIs 24a, 24b etc., is then used to control the antenna array 2 to monitor signals in the frequency bands f and having the angles-of-arrival AoA corresponding to those of one or more of the SOIs 24a, 24b etc. (step S66). Compressed sensing measurements y of the SOIs 24a, 24b are then made by the sampler 18 (step S67), where:
y=Md(Equation 11)
where d is the two-dimensional image 24, is a compressed sensing matrix, e.g. =HD and M is a mask defining at least one SOI 24a, 24b.

(45) If the image d has a sparse representation in a dictionary , e.g. =F, that is, where d=x and x is sparse, the SOIs 24a, 24b can be reconstructed accurately (step S68), for example, by using the following minimization:
min.sub.xMxy.sub.2+x.sub.1(Equation 12)

(46) If higher resolution frequency and/or angle-of-arrival information is required (step S69), then further SOIs 25a, 26a can be identified within the SOIs 24a, 24b. Information regarding the newly identified SOIs 25a, 25b, 26a, 26b is then used to control the antenna array 2 to make further measurements of the SOIs 25a, 25b, 26a, 26b (step S66). Foveated compressed measurements y of the SOIs 25a, 26a are made (step S67) and analyzed, and further SOIs are identified (step S68). In this manner, measurements of the modulated residual signal x.sub.R(t) and SOIs are made at different resolutions according to their level in the hierarchy of images 24, 25, 26.

(47) The process of identifying and processing further SOIs (steps S66 to S69) may be repeated until a required frequency resolution and, in this example, angle-of-arrival resolution, is reached (step S69). If required, frequency and angle-of-arrival information for one or more of the SOIs identified in the process is output 7, 23 (step S70).

(48) The system may continue monitoring the wideband RF spectrum (step S71) for other signals or to track signals based on frequency f and angle-of-arrival AoA information of one or more of the identified SOIs 24a, 24b etc. For example, if an identified SOI 24a corresponds to a frequency hopping signal, that signal may be tracked by continuing to monitor at least part of the wideband RF spectrum.

(49) The process ends at step S72.

(50) In the present technique, the processing of the received signal d is adapted to prioritize analysis of SOIs 24a, 24b, 25a, 25b, 26a, 26b by directing the processing resources of the system to those parts of the received signal x(t). A hierarchy of images d, corresponding to signals having a frequency f and angle-of-arrival AoA within selected ranges are analyzed at various resolutions, based on whether a SOI is present. Through prioritizing analysis of such SOIs, the technique may be used to provide fast, wideband, continuous RF spectrum sensing and, optionally, high-resolution AoA estimation, even where the SOI is a frequency hopping signal. The inclusion of AoA estimation in the signal detection process can provide the capability of handling correlated signals, allowing the technique to be used to detect and track multipath signals.

(51) The reduced processing requirements of the present technique may allow a faster detection speed to be achieved, when compared with earlier systems using spectrum sweeping to cover a wide bandwidth, thereby improving signal tracking ability. Also, the use of a FCS technique can improve signal-to-noise ratio by reducing gridding error because measurements are allocated toward detected narrowband signals and allows the use of processing resources to be adapted according to requirements of the task at hand.

(52) Use of compressive sensing (CS) can reduce, or even avoid, the need for channelizers to cover wide bandwidth. Also, since high-level signal analysis is used to identify and prioritize a SOI, the present embodiment can avoid unnecessary data collection and processing for parts of a monitored spectrum that do not include a SOI. This can decrease the amount of processing required to detect and analyze a signal and, therefore, reduced cost when compared with systems utilizing channelizers. Also, with the exception of the assumption that the signal d is sparse, the present embodiment avoids assuming characteristics of the signal and so is not limited to a specific class of signals.

(53) Some embodiments may be extended to include parameter estimation without requiring additional measurements. For example, in the above embodiment, AoA is estimated and simultaneous reconstruction where there are multiple unknown variablese.g. temporal hopping frequency and angle of arrival, may be performed in an efficient way. Alternatively, or additionally, higher dimensional reconstructions can be made using such a technique.

(54) As noted above, at least some parts of the apparatus 11 shown in FIG. 2 may be implemented by a computer system. For example, one or more of the compressive sensing measurements made by the sampler 18, the analysis of the samples y[N] to identify the strongest narrowband signals and signal reconstruction by the signal detector 19 and the control of the antenna array 2 may be performed using a computer system. An exemplary computer system 27 in accordance with an embodiment is shown in FIG. 7.

(55) Exemplary computer system 27 is configured to perform calculations, processes, operations, and/or functions associated with a program or algorithm. In one embodiment, certain processes and steps discussed herein are realized as a series of instructions, e.g. software program, that reside within computer readable memory units and are executed by one or more processors of exemplary computer system 27. When executed, the instructions cause exemplary computer system 27 to perform specific actions and exhibit specific behavior, such as described herein.

(56) Exemplary computer system 27 may include an address/data bus 28 that is configured to communicate information. Additionally, one or more data processing units, such as processor 29, are coupled with address/data bus 28. Processor 29 is configured to process information and instructions. In an example embodiment, processor 29 is a microprocessor. Alternatively, processor 29 may be a different type of processor such as a parallel processor, or a field programmable gate array.

(57) Exemplary computer system 27 is configured to utilize one or more data storage units 30, 31. Exemplary computer system 27 may include a volatile memory unit 30, e.g., random access memory (RAM), static RAM, dynamic RAM, etc., coupled with address/data bus 28, wherein volatile memory unit 30 is configured to store information and instructions for processor 29. Exemplary computer system 27 further may include a non-volatile memory unit 31, such as read-only memory (ROM), programmable ROM (PROM), erasable programmable ROM (EPROM), electrically erasable programmable ROM EEPROM), flash memory, etc., coupled with address/data bus 28, wherein non-volatile memory unit 31 is configured to store static information and instructions for processor 29.

(58) Alternatively, or additionally, exemplary computer system 27 may execute instructions retrieved from an online data storage unit such as in Cloud computing. In an embodiment, exemplary computer system 27 also may include one or more interfaces, such as interface 32, coupled with address/data bus 28. The one or more interfaces are configured to enable exemplary computer system 27 to interface with other electronic devices and computer systems. The communication interfaces implemented by the one or more interfaces 32 may include wireline communication technology, such as serial cables, modems, network adaptors, etc., and/or wireless communication technology, such as wireless modems, wireless network adaptors, etc.

(59) In one embodiment, exemplar computer system 27 may include an input device 33 coupled with address/data bus 28, wherein input device 33 is configured to communicate information and command selections to processor 29. In accordance with one embodiment, input device 33 is an alphanumeric input device, such as a keyboard, that may include alphanumeric and/or function keys. Alternatively, input device 33 may be an input device other than an alphanumeric input device.

(60) Alternatively, or additionally, exemplar computer system 27 may include a cursor control device 34 coupled with address/data bus 28, wherein cursor control device 34 is configured to communicate user input information and/or command selections to processor 28. In an embodiment, cursor control device 1270 is implemented using a device such as a mouse, a track-ball, a track-pad, an optical tracking device, or a touch screen. The foregoing notwithstanding, in an embodiment, cursor control device 34 is directed and/or activated via input from input device 33, such as in response to the use of special keys and key sequence commands associated with input device 33. In an alternative embodiment, cursor control device 34 is configured to be directed or guided by voice commands.

(61) In an embodiment, exemplary computer system 27 further may include one or more optional computer usable data storage devices, such as storage device 35, coupled with address/data bus 28. Storage device 35 is configured to store information and/or computer executable instructions. In one embodiment, storage device 35 is a storage device such as a magnetic or optical disk drive, such as a hard disk drive (HDD), floppy diskette, compact disk read only memory (CD-ROM), or digital versatile disk (DVD). Example storage devices 35, in the form of floppy diskettes 35a and CD-ROMs 35b, are shown in FIG. 8.

(62) Pursuant to one embodiment, a display device 36 is coupled with address/data bus 28, wherein display device 36 is configured to display video and/or graphics. In an embodiment, display device 36 may include a cathode ray tube (CRT), liquid crystal display (LCD), field emission display (FED), plasma display or any other display device suitable for displaying video and/or graphic images and alphanumeric characters recognizable to a user.

(63) Exemplary computer system 27 is presented herein as an exemplary computing environment in accordance with an embodiment. However, exemplary computer systems that can be used to implement the techniques discussed above are not strictly limited to computer systems per se. For example, an embodiment provides that exemplary computer system 27 represents a type of data processing analysis that may be used in accordance with various embodiments described herein. Moreover, other computing systems may also be implemented. Indeed, the spirit and scope of the present technology is not limited to any single data processing environment. Thus, in an embodiment, one or more operations of various embodiments of the present technology may be controlled or implemented using computer-executable instructions, such as program modules, being executed by a computer. In one exemplary implementation, such program modules include routines, programs, objects, components and/or data structures that are configured to perform particular tasks or implement particular abstract data types. In addition, an embodiment provides that one or more aspects of the present technology are implemented by utilizing one or more distributed computing environments, such as where tasks are performed by remote processing devices that are linked through a communications network, or such as where various program modules are located in both local and remote computer-storage media including memory-storage devices.

(64) Other modifications and variations to the above embodiment will be apparent to persons skilled in the art, and the method steps described above might be interchangeable with other steps to achieve the same result. It is intended that the scope of the disclosure be interpreted with reference to the claims appended hereto and their equivalents.

(65) Reference to an element in the singular hereinabove is not intended to mean one and only one unless explicitly so stated, but rather one or more. Moreover, no element, component or method step in the present disclosure is intended to be dedicated to the public, regardless of whether the element, component or method step is explicitly recited in the accompanying claims. No claim element herein is to be construed under the provisions of 35 U.S.C. 112, sixth paragraph, unless the element is expressly recited using the phrase means for . . . .