Abstract:
The present invention enables efficient storage and retrieval of signal-strength measurements and geometry-of-arrival measurements for estimating the location of a wireless terminal. A database is populated with signal-strength measurements and geometry-of-arrival measurements for each of a plurality of locations. Subsequent queries to the database enable rapid retrieval of the signal-strength measurements and geometry-of-arrival measurements, and thus enable a computationally-efficient estimate of the location of a wireless terminal based on these measurements. By supplementing signal-strength measurements with geometry-of-arrival measurements, the illustrative embodiment enables a more accurate estimate of location to be made than could be achieved with either the signal-strength measurements or the geometry-of-arrival measurements alone.

Description:
CROSS-REFERENCE TO RELATED APPLICATION  
       [0001]    This application claims the benefit of:  
         [0002]    (i) U.S. provisional application Serial No. 60/461,219, filed Apr. 8, 2003, entitled “Location Estimation of Wireless Terminals Based on Combinations of Signal-strength measurements, Angle-of-Arrival Measurements, and Time-Difference-of-Arrival Measurements,” (Attorney Docket: 465-005us)  
         [0003]    (ii) U.S. provisional application Serial No. 60/449,560, filed Feb. 24, 2003, entitled “Location Estimation of Wireless Terminals Based on Combinations of Signal-strength measurements, Angle-of-Arrival Measurements, and Time-Difference-of-Arrival Measurements,” (Attorney Docket: 465-007us),  
         [0004]    (iii) U.S. provisional application Serial No. 60/488,855, filed Jul. 19, 2003, entitled “Location Estimation of Wireless Terminals Based on Combinations of Signal-strength measurements, Angle-of-Arrival Measurements, and Time-Difference-of-Arrival Measurements,” (Attorney Docket: 465-008us), all of which are incorporated by reference.  
         [0005]    The underlying concepts, but not necessarily the nomenclature, of the following applications are incorporated by reference:  
         [0006]    (i) U.S. Pat. No. 6,269,246, issued 31 Jul. 2001;  
         [0007]    (ii) U.S. Pat. No. 6,393,294, issued 21 May 2002;  
         [0008]    (iii) U.S. patent application Ser. No. 09/532,418, filed 22 Mar. 2000;  
         [0009]    (iv) U.S. patent application Ser. No. 10/128,128, filed 22 Apr. 2002; and  
         [0010]    (v) U.S. patent application Ser. No. 10/299,398, filed 18 Nov. 2002; and  
         [0011]    (vi) U.S. patent application Ser. No. 10/357,645, filed 4 Feb. 2003, attorney docket 465-004us, entitled “Location Estimation of Wireless Terminals Though Pattern Matching of Signal Strength Differentials”. 
     
    
     
       FIELD OF THE INVENTION  
         [0012]    The present invention relates to telecommunications in general, and, more particularly, to a technique for estimating the location of a wireless terminal.  
         BACKGROUND OF THE INVENTION  
         [0013]    A wireless terminal measures and reports the signal strength of its serving cell and some number of neighboring cells as part of the handoff process. The frequency of these reports, the number of neighboring cells monitored by the wireless terminal, and the reporting criteria depend on the air interface protocol of the cellular network (e.g., IS-136, GSM, IS-95 CDMA, etc.). Since each cell in the network transmits a constant control signal, the strength of this signal at the wireless terminal is an indication of the distance from the cell&#39;s antenna to the wireless terminal. Thus, it is possible to derive an estimate of the location of the wireless terminal from the strength of the signals that it reports by comparing the reported signal strengths to a model of the signal environment.  
           [0014]    The accuracy of the location estimates that can be obtained from reported signal-strength measurements depends on many factors that can vary from location to location and include, for example:  
           [0015]    the number of signal-strength measurements reported;  
           [0016]    the accuracy with which the wireless terminal can measure signal strength;  
           [0017]    the accuracy with which the wireless terminal can report signal-strength values to the switching center (i.e., quantization);  
           [0018]    the accuracy of the signal strength model of the environment; and  
           [0019]    local attenuation caused by obstructions (e.g., terrain, vehicles, trees, etc.).  
           [0020]    In addition, the accuracy of location estimates based on signal-strength measurements also depends on the sensitivity of the signal environment to changes in location. For example, if there is a region in which received signal strength is relatively insensitive to changes in location, then reported signal-strength measurements at a wireless terminal in that region could result in a relatively inaccurate location estimate, even if the model of the signal environment were perfect. Consequently, estimates based on signal-strength measurements alone might not be sufficiently accurate for a specific location-based application at all locations within a service area.  
         SUMMARY OF THE INVENTION  
         [0021]    The present invention enables efficient storage and retrieval of signal-strength measurements and geometry-of-arrival measurements for estimating the location of a wireless terminal. For the purposes of this specification, geometry-of-arrival measurements are defined to comprise:  
           [0022]    i. angle-of-arrival measurements, each of which corresponds, for example, to a respective signal transmitted by the wireless terminal,  
           [0023]    ii. time-of-arrival measurements, each of which corresponds, for example, to a respective signal transmitted by, or received by, the wireless terminal, and  
           [0024]    iii. time-difference-of-arrival measurements, each of which corresponds to the difference of two time-of-arrival measurements with respect to a common signal event.  
           [0025]    In the illustrative embodiment of the present invention, a database is populated with signal-strength measurements and geometry-of-arrival measurements for each of a plurality of locations. Subsequent queries to the database enable rapid retrieval of the signal-strength measurements and geometry-of-arrival measurements, and thus enable a computationally-efficient estimate of the location of a wireless terminal based on these measurements. By supplementing signal-strength measurements with geometry-of-arrival measurements, the illustrative embodiment enables a more accurate estimate of location to be made than could be achieved with either the signal-strength measurements or the geometry-of-arrival measurements alone.  
           [0026]    As noted above, a time-difference-of-arrival measurement may be formed when a signal transmitted by the wireless terminal is received at two spatially distinct receivers or when two time-tagged signals transmitted by two spatially distinct transmitters are received by the wireless terminal (the Global Positioning System [GPS] is an example of the latter). The differencing operation eliminates any timing errors that are common to both time-of-arrival measurements. Thus, time-difference-of-arrival is technically not a separate type of measurement, but rather a calculation based on two time-of-arrival measurements.  
           [0027]    The illustrative embodiment is a database comprising: a signal-strength value for a first signal for each of a plurality of locations; and a geometry-of-arrival value for a second signal for each of the plurality of locations. 
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0028]    [0028]FIG. 1 depicts a map of a portion of a wireless telecommunications system.  
         [0029]    [0029]FIG. 2 depicts a map of the illustrative embodiment of the present invention.  
         [0030]    [0030]FIG. 3 depicts a block diagram of the salient components of location system  212 .  
         [0031]    [0031]FIG. 4 depicts a broad overview of the salient operations performed by the illustrative embodiment in ascertaining the location of wireless terminal  201  in geographic region  200 .  
         [0032]    [0032]FIG. 5 depicts a flowchart of the tasks performed in Operation  401 .  
         [0033]    [0033]FIG. 6 depicts a map of how geographic region  200  is partitioned into 221 grid squares in accordance with the illustrative embodiment of the present invention.  
         [0034]    [0034]FIG. 7 depicts a flowchart of the tasks performed in Operation  403 .  
         [0035]    [0035]FIG. 8 illustrates the selection of the subset of grid locations of the geographic region that are relevant to a specific serving cell.  
         [0036]    [0036]FIG. 9 depicts a flowchart of the steps performed in Task  703 .  
         [0037]    [0037]FIG. 10 illustrates the use of serving areas and neighbor areas in reducing the number of candidate grid points.  
         [0038]    [0038]FIG. 11 illustrates the measurement likelihood function resulting from a pair of time-of-arrival sensors in the illustrative embodiment.  
         [0039]    [0039]FIG. 12 illustrates the measurement likelihood function resulting from an angle-of-arrival sensor in the illustrative embodiment. 
     
    
     DETAILED DESCRIPTION  
       [0040]    [0040]FIG. 1 depicts the elements of a wireless telecommunications system that provides wireless telecommunications service to wireless terminals (e.g., wireless terminal  101 , etc.) within geographic region  100 . The hub of the telecommunications system is wireless switching center  111 , which might also be known as a mobile switching center (“MSC”) or a mobile telephone switching office (“MTSO”).  
         [0041]    Typically, wireless switching center  111  is connected to a plurality of base stations (e.g., base stations  102 - 1 ,  102 - 2 , and  102 - 3 ), which are dispersed throughout the geographic area serviced by the system. Each base station has one or more cells (e.g., cells  103 - 1 ,  103 - 2 A,  103 - 2 B,  103 - 2 C, and  103 - 3 ) each corresponding to a specific antenna and serving a specific portion of the geographic region  100 . As shown in FIG. 1, a cell may be omni-directional (e.g.,  103 - 1  and  103 - 3 ) or may be limited to a specific angular sector (e.g.,  103 - 2 A,  103 - 2 B, and  103 - 2 C). It is well known that operation of a wireless communications system requires some amount of overlap in the areas served by the various cells. Cells whose coverage regions overlap are separated in frequency in IS-136 and GSM networks and by pilot code in CDMA networks. In FIG. 1, cell  103 - 2 B at base station  102 - 2  is serving wireless terminal  101 .  
         [0042]    As is well known to those skilled in the art, wireless switching center  111  is responsible for, among other things, establishing and maintaining calls between wireless terminals and between a wireless terminal and a wireline terminal (which is connected to the system via the local or long-distance networks, or both, and which are not shown in FIG. 1).  
         [0043]    Overview—FIG. 2 depicts a map of the illustrative embodiment of the present invention, which comprises: wireless switching center  211 , location system  212 , base stations  202 - 1 ,  202 - 2 , and  202 - 3 , angle-of-arrival sensors  210 - 1  and  210 - 2 , time-of-arrival sensors  220 - 1  and  220 - 2 , and wireless terminal  201 , interconnected as shown.  
         [0044]    The illustrative embodiment operates in accordance with the Global System for Mobile Communications (formerly known as the Groupe Speciale Mobile) protocol, which is ubiquitously known as “GSM.” After reading this disclosure, however, it will be clear to those skilled in the art how to make and use embodiments of the present invention that operate in accordance with other protocols, such as the Universal Mobile Telephone System (“UMTS”), CDMA-2000, and IS-136 TDMA.  
         [0045]    Wireless switching center  211  is a switching center as is well-known to those skilled in the art in most respects, but is different in that it is capable of communicating with location system  212  and geometry-of-arrival sensors  210  and  220  in the manner described below. After reading this disclosure, it will be clear to those skilled in the art how to create appropriate additional interfaces to wireless switching center  211 .  
         [0046]    Base stations  202 - 1 ,  202 - 2 , and  202 - 3  are well-known to those skilled in the art and communicate with wireless switching center  211  through cables and other equipment (e.g., base station controllers, etc.) that are not shown in FIG. 2. As shown in FIG. 2, base station  202 - 1  is associated with omni-directional cell  203 - 1 ; base station  202 - 2  is associated with angular sector cells  203 - 2 A,  203 - 2 B, and  203 - 2 C; base station  202 - 3  is associated with omni-directional cell  203 - 3 ; and wireless terminal  201  is serviced by cell  203 - 2 B at base station  202 - 2 . Although the illustrative embodiment comprises three base stations, it will be clear to those skilled in the art how to make and use embodiments of the present invention that use information from any number of base stations, each with one or more cells.  
         [0047]    Angle-of-arrival sensors  210 - 1  and  210 - 2  receive a signal transmitted by wireless terminal  201 , as is well-known in the art, and report the respective directions from which the signal was received to wireless switching center  211 . Although in FIG. 2 angle-of-arrival sensors  210 - 1  and  210 - 2  are not collocated with base stations (e.g., sensor  210 - 1  mounted at base station  202 - 3  and sensor  210 - 2  mounted at base station  202 - 2 , etc.), in some embodiments it might be advantageous to do so.  
         [0048]    Time-of-arrival sensors  220 - 1  and  220 - 2  receive a signal transmitted by wireless terminal  201 , as is well-known in the art, and report the respective times at which the signal was received to wireless switching center  211 . Again, although in FIG. 2 time-of-arrival sensors  220 - 1  and  220 - 2  are not collocated with base stations (e.g., sensor  220 - 1  mounted at base station  202 - 1  and sensor  220 - 2  mounted at base station  202 - 2 , etc.), in some embodiments it might be advantageous to do so.  
         [0049]    Wireless terminal  201  is a standard GSM wireless terminal as is currently manufactured and used throughout the world. Wireless terminal  201 , as directed by its serving cell  203 - 2 B, measures and reports to wireless switching center  211  the signal strength of signals from various nearby cells (e.g., cells  203 - 1  and  203 - 3  at base stations  202 - 1  and  202 - 3 , respectively, and non-serving cells  203 - 2 A and  203 - 2 C at base station  202 - 2 ) in well-known fashion.  
         [0050]    As is well-known in the art, wireless terminal  201  transmits signals (e.g., voice signals directed to its serving cell  203 - 2 B, etc.) via a wireless transmitter. In addition, wireless terminal  201  might be equipped with a Global Positioning System (GPS) receiver for receiving one or more satellite navigation signals, as is depicted in FIG. 2 and is also well-known in the art.  
         [0051]    In accordance with the illustrative embodiment of the present invention, all of the specific portions of the radio frequency spectrum fall within the same band that wireless terminal  201  uses to communicate with cells at base stations  202 - 1 ,  202 - 2 , and  202 - 3 . In some alternative embodiments of the present invention, however, some or all of the specific portions of the radio frequency spectrum are outside the band that wireless terminal  201  uses to communicate with base stations  202 - 1 ,  202 - 2 , and  202 - 3 . In any case, it will be clear to those skilled in the art how to make and use wireless terminal  201 .  
         [0052]    Location system  212  is a computer system that is capable of estimating the location of wireless terminal  201 , as described in detail below. Although the illustrative embodiment depicts location system  212  as estimating the location of only one wireless terminal, it will be clear to those skilled in the art that location system  212  is capable of estimating the location of any number of wireless terminals serviced by wireless switching center  211 .  
         [0053]    Furthermore, although location system  212  is depicted in FIG. 2 as a distinct entity from wireless switching center  211 , this is done principally to highlight the distinction between the functions performed by wireless switching center  211  and the functions performed by location system  212 . It will be clear to those skilled in the art how to make and use embodiments of the present invention in which location system  212  resides within or without wireless switching center  211 .  
         [0054]    Furthermore, although wireless switching center  211 , location system  212 , base stations  202 - 1 ,  202 - 2 , and  202 - 3 , angle-of-arrival sensors  210 - 1  and  210 - 2 , and time-of-arrival sensors  220 - 1  and  220 - 2  are depicted in FIG. 2 as being within geographic region  200  (i.e., the region of candidate locations for wireless terminal  201 ), this is not necessarily so, and it will be clear to those skilled in the art how to make and use embodiments of the present invention in which some or all of these elements are not within the region of location estimation.  
         [0055]    Furthermore, although in the illustrative embodiment geometry-of-arrival measurements from sensors  210  and  220  are reported to wireless switching center  211  and subsequently sent to location system  212 , it will be clear to those skilled in the art how to make and use embodiments of the present invention in which some or all of the geometry-of-arrival sensors report their measurements directly to location system  212 .  
         [0056]    Furthermore, although in the illustrative embodiment location system  212  reports the estimated location of wireless terminal  201  to wireless switching center  211 , it will be clear to those skilled in the art how to make and use embodiments of the present invention in which location system  212  reports the estimated location of wireless terminal  201  directly to a third party consumer. In addition, it will be clear to those skilled in the art how to make and use embodiments of the present invention in which location system  212  receives a request for the location estimate directly from a third party provider of location-based services, rather than from wireless switching center  211 .  
         [0057]    [0057]FIG. 3 depicts a block diagram of the salient components of location system  212  in accordance with the illustrative embodiment. As shown in FIG. 3, location system  212  comprises: real-time processor  301 , predicted signature database  302 , input interface  303 , output interface  304 , and offline processor  305 , which are interconnected as shown.  
         [0058]    Input interface  303  receives information from wireless switching center  211 , as disclosed below and with respect to FIG. 4, and forwards this information to processor  302 . It will be clear to those skilled in the art that this interface function could be implemented as a part of the real-time processor  301 .  
         [0059]    Real-time processor  301  is a general-purpose processor as is well-known in the art that is capable of performing the operations described below and with respect to FIG. 4. Real-time processor  301  receives measurements from input interface  303  and sends the location estimate to output interface  304  in well-known fashion. It uses values from the predicted signature database  302  in its computation.  
         [0060]    Predicted signature database  302  stores predicted signal-strength values and predicted geometry-of-arrival values as described below and with respect to FIG. 4.  
         [0061]    Output interface  304  receives location estimate from real-time processor  301  and transmits this output to the location consumer in well-known fashion. Depending on the application, the location consumer may be wireless switching center  211  or some other designated recipient. It will be clear to those skilled in the art that this interface function could be implemented as a part of the real-time processor  301 .  
         [0062]    Offline processor  305  performs all of calculations needed to create and maintain predicted signature database  302 . Although it is shown in FIG. 3 as a separate computer from the real-time processor  301 , it will be clear to those skilled at the art that these functions could be implemented on the same physical computer.  
         [0063]    Location System—FIG. 4 depicts a broad overview of the salient operations performed by location system  211  in estimating the location of wireless terminal  201  in geographic region  200 . In summary, the functions performed by the illustrative embodiment can be grouped for ease of understanding into four operations:  
         [0064]    i. the population of predicted signature database  302 ;  
         [0065]    ii. the receipt of signal strength and time-of-arrival measurements from wireless terminal  201 ; angle-of-arrival measurements from sensors  210 - 1  and  210 - 2 ;  
         [0066]    and time-of-arrival measurements from sensors  220 - 1  and  220 - 2 .  
         [0067]    iii. the estimation of the location of wireless terminal  201 ; and  
         [0068]    iv. the delivery of the estimated location of wireless terminal  201  to the designated recipient.  
         [0069]    The details of each of these operations are described briefly below and in detail afterwards with respect to FIGS.  5  though  12 . It should be noted, however, that the first operation is performed only occasionally (first when the location system  212  is initialized and later when changes in the configuration of the wireless network or changes in the physical environment cause changes in the signal environment), but the last three operations are performed each time the location of a wireless terminal  201  is requested.  
         [0070]    At Operation  401 , the database builder  302  associates a tuple of predicted signal-strength values and predicted geometry-of-arrival values with each one of a specified set of locations within geographic region  200 . The tuple includes one predicted signal-strength value for each signal the wireless terminal  201  might be required to monitor in geographic region  200 . The tuple also includes one geometry-of-arrival value for each of the geometry-of-arrival sensors selected for inclusion in the database for geographic region  200 . Operation  401  is generally complex and potentially expensive, but because the signal environment exploited by this invention is relatively stable, this operation needs to be performed only occasionally. The details of Operation  401  and the criteria for determining which of the geometry-of-arrival sensors to include in predicted signature database  302  are described in detail below and with respect to FIG. 5.  
         [0071]    At Operation  402 , location system  212  receives all relevant measurements from the wireless switching center  211 . In a system based on signal strength alone, the location system  212  receives (i) n signal-strength measurements R 1  . . . R n  as made by wireless terminal  201 , where n is a positive integer. In a system based on both signal strength and geometry-of-arrival, location system  212  also receives any combination of the following: (ii) m time-of-arrival measurements G 1  . . . G m  as received by wireless terminal  201 , where m is a positive integer, (iii) k angle-of-arrival measurements A 1  . . . A k  as received, respectively, by sensors  210 - 1  through  210 - k , where k is a positive integer (k=2 in FIG. 2), and (iv) r time-of-arrival measurements T 1  . . . T r  as received, respectively, by sensors  220 - 1  through  220 - r , where r is a positive integer (r=2 in FIG. 2).  
         [0072]    As is well known to those skilled in the art, the wireless terminal  201  periodically or sporadically provides measurements R 1  . . . R n  and G 1  . . . G m  to wireless switching center  211 . In the illustrative embodiment, geometry-of-arrival sensors  210  and  220  also periodically or sporadically provide measurements A 1  . . . A k  and T 1  . . . T r , respectively, to the wireless switching center  211 . Measurements received by wireless switching center  211  may be forwarded to location system  212  either as a complete set or one-by-one as received by the wireless switching center. Although all of the measurements to be used in the location estimate must be made during the time period of interest, it is not necessary that they all be made at the same times or at the same rates. The only requirement is that location system  212  knows the time at which each measurement was made.  
         [0073]    At Operation  403 , the location system  212  estimates the location of wireless terminal  201  based on received signal-strength measurements, R 1 , . . . R n , predicted signature database  302 , time-of-arrival measurements G 1  . . . G m  (if available), angle-of-arrival measurements A 1  . . . A k  (if available), and time-of-arrival measurements T 1  . . . T r  (if available). The details of Operation  403  are described in detail below and with respect to FIG. 7.  
         [0074]    At Operation  404 , location system  212  transmits the location estimated in Operation  403  to the designated entity (not shown) for use in an application. (For the E911 application, for example, the designated entity is the Public Safety Answering Point [PSAP] specified for the serving cell of the wireless call.) It is well known in the art how to use the estimated location of a wireless terminal in an application.  
         [0075]    At this point, Operations  401  and  403  are described in detail. Operations  402  and  404  (receiving the measurements and sending the location estimate, respectively) are straightforward, and no additional detail is required.  
         [0076]    Operation  401 : Populate Predicted Signature Database  302 —FIG. 5 provides a flowchart of the tasks performed in Operation  401 .  
         [0077]    Task  501 : At Task  501 , geographic region  200  is partitioned into a plurality of tessellated grid squares. In the illustrative embodiment of the present invention, geographic region  200  is a rectangular area 650 meters by 850 meters. After reading this specification, it will be clear to those skilled in the art how to make and use embodiments of the present invention that operate with geographic regions of other sizes and shapes.  
         [0078]    As shown in FIG. 6, in the illustrative embodiment, geographic region  200  is partitioned into an array of 221 grid squares 50 meters on a side whose centers are grid points (x 1 ,y 1 ) through (X 17 ,y 13 ). The spatial resolution of the database  302  defines the highest resolution with which the illustrative embodiment can locate a wireless terminal. In other words, the illustrative embodiment can only estimate the location of a wireless terminal to within one grid square (i.e., 50 by 50 meters in the illustrative embodiment). If greater resolution is desired, for example 25 meters, then geographic region  200  would need to be partitioned into 25 meter grid squares. In this case, there would be 884 grid squares, which is considerably more than the 221 used in the illustrative embodiment. It will be clear to those skilled in the art that the region could be partitioned into a variety of other non-overlapping shapes (e.g., rectangles, hexagons, etc.).  
         [0079]    While the number of grid squares into which geographic location  200  is partitioned is arbitrary, selection of an appropriate grid resolution is based on three factors. First, as the size of each grid square decreases, the resolution of the embodiment increases, and, all other things being equal, the accuracy of the location estimate increases. Second, as the size of each grid square decreases, the size of the database increases, and, consequently, the computation time for Operation  403  increases. Third, if the grid resolution is so fine that many neighboring grid squares have the same predicted signal-strength values, Operation  403  will have to perform many unnecessary computations. It will be clear to those skilled in the art how to consider these three factors when deciding how to partition a geographic region.  
         [0080]    Task  502 : At Task  502 , predicted signal-strength values are determined for each grid point in geographic region  200  and stored in predicted signature database  302 . In accordance with the illustrative embodiment, the signal used from each cell is the control channel because it is broadcast at a constant power. In some embodiments the signal strength portion of the database might be organized by cell, while in some other embodiments the signal strength portion of the database might be organized by control channel. It is well-known in the art how to calculate predicted signal strength per channel from predicted signal strength per cell.  
         [0081]    In some embodiments, when the total number of cells is relatively small (such as in FIG. 2, where there are only five cells), each of the cells might be assigned a different control channel, in which case predicted signature database  302  is the same whether organized by cell or by channel. In a wireless system with a relatively large number of cells, however, the limited number of channels available to the wireless system might require control channel re-use (i.e., two or more cells are assigned to the same control channel.) As is well-known in the art, in a well-designed wireless system cells using the same control channel are located far enough apart so that they would not interfere with each other.  
         [0082]    In a GSM network, the decision whether to organize predicted signature database  302  by channel or by cell is primarily an issue of database size, since a GSM wireless terminal  201  only reports signals when it can decode the BSIC (Base Station Identity Code). Within a limited area, the combination of the channel and the BSIC allow the location system to determine the unique cell whose control channel signal strength has been reported.  
         [0083]    In contrast, in an IS-136 network the decision whether to organize predicted signature database  302  by channel or by cell is also a computational issue, because an IS-136 wireless terminal reports the control channel signal strength without attempting to decode the DVCC (Digital Verification Color Code). Thus, if predicted signature database  302  stores predicted signal strength for an IS-136 network on a cell-by-cell basis, then location system  212  must calculate per-channel predicted signal strengths as part of Operation  403 .  
         [0084]    Because there are five cells in the illustrative embodiment, each with a different control channel, a tuple of five predicted signal-strength values must be specified for each grid point. In accordance with the illustrative embodiment, the tuple of five signal-strength measurements for each grid point are determined through a combination of:  
         [0085]    (i) a theoretical radio-frequency propagation model, and  
         [0086]    (ii) empirical signal strength calibration measurements.  
         [0087]    It will be clear to those skilled in the art how to accomplish this.  
         [0088]    When the signal strength tuples for each location in geographic region  200  have been determined, they are stored in predicted signature database  302  in a data structure that associates each location with the tuple for that location. The data structure is then stored in predicted signature database  302 .  
         [0089]    Task  503 : In Task  503 , predicted measurement-values for a selected portion of the geometry-of-arrival sensors are calculated and stored in predicted signature database  302 . For measurements that vary significantly over time, storing predicted values in the database is not practical. For example, the time required for a signal to travel from a GPS satellite to wireless terminal  201  depends on the location of the satellite, which is constantly changing as the satellite moves in its orbit. For geometry-of-arrival measurements involving stationary sensors, the decision to include the predicted measurements in the database or calculate them in real-time in Operation  403  is a tradeoff between storage and real-time computational load.  
         [0090]    As in the case of predicted signal-strength values, a tuple of predicted geometry-of-arrival measurement values is calculated and stored in predicted signature database  302  for each grid square in geographic region  200 . As is well-known in the art, the augmented signal measurement database might associate additional information with each location, such as an identifier, coordinates (e.g., latitude/longitude, etc.), altitude, etc. In the illustrative embodiment, the calculations for determining the predicted measurement values are performed in Operation  403 , described below, while in some other embodiments, these calculations might instead be performed in Operation  401  above.  
         [0091]    Database Structure: In some embodiments, predicted signature database  302  might be a relational database that stores the contents of this data structure in one or more tables, as is well-known in the art. In some other embodiments, database  302  might be another kind of database (e.g., object-oriented database, hierarchical database, etc.); it will be clear to those skilled in the art how to store the contents of the data structure in such databases. In still some other embodiments, database  302  might store the predicted measurement values in multi-dimensional arrays corresponding directly to the signal strength and geometry-of-arrival maps of geographic region  200 . As is well-known in the art, predicted signature database  302  might associate additional information with each location, such as an identifier, coordinates (e.g., latitude/longitude, etc.), altitude, etc.  
         [0092]    Operation  403 : Estimate Location of Wireless Terminal  201 —FIG. 7 depicts a flowchart of Operation  403 . Note that Tasks  701 - 704  and  707  are the operations required when the location estimate is based only on signal-strength measurements (i.e., the baseline location system). Tasks  705  and  706  must be added when supplementary geometry-of-arrival measurements are also available. Although it is not necessary that the signals strength measurements and the geometry-of-arrival measurements be made at exactly the same time, the illustrative embodiment assumes that they are. From U.S. Pat. No. 6,393,294, it will be obvious to anyone practiced in the art how to extend this description to the case where the measurements are not made at the same time.  
         [0093]    Task  701 : At Task  701 , the relevant portion of the predicted signature database  302  is retrieved. For example, if the geographic area  200  covered by the database were 20 kilometers on a side, the area where the reported serving cell could possibly act as a serving cell would be much smaller than the entire geographic area covered by the database. Restricting the subsequent computations to a smaller area containing all the viable candidates for the location of the wireless terminal  201  significantly reduces the amount of computation needed to estimate that location. This concept is illustrated in FIG. 8.  
         [0094]    Task  702 : At Task  702 , the location system  212  determines the a priori location probability distribution (i.e., the probability distribution before any of the actual measurement values are considered). The simplest approach would be to assume that all of the grid points in the area extracted in Task  701  are equally likely, so that the a priori probability of each grid point&#39;s being the actual location would be 1/(number of grid points in relevant area). However, other approaches might also be used. For example, if one part of the relevant area were densely populated and the other part were not, it might be appropriate to assign the grid points in the heavily populated portion a higher a priori probability than those in the unpopulated portion. Another approach would be to use the historical pattern of previous location requests to create the a priori probability distribution.  
         [0095]    Task  703 : At Task  703 , the location system  212  calculates the measurement likelihood for the reported signal-strength measurements at each point in the relevant area (i.e., the probability that the reported measurements would have been received if the wireless terminal  201  really were in that grid square). This process is described in more detail below and with respect to FIG. 9.  
         [0096]    Step  901 : In Step  901 , the location system  212  uses a variety of information to reduce the number of grid points for which the subsequent calculations must be performed and to modify the final measurement likelihood that will be calculated for others. The various factors used in this search area reduction procedure are described below:  
         [0097]    Serving Cell Area: Based on its predicted signal strength and those of nearby cells, each cell has an area where it might be able to act as the serving cell for a wireless call. An illustrative example of such areas is shown in FIG. 10. This area is obviously much larger than the so-called “best server area”, since for a variety of reasons (including network load balancing, system hysteresis, etc.), a cell often acts as a serving cell when it is not the strongest signal at that location. Only points where the reported serving cell could act as a serving cell are considered as candidates for further computation.  
         [0098]    Neighbor Cell Area: The illustrative example of FIG. 10 depicts exemplary neighbor areas in addition to serving cell areas. In GSM, the wireless terminal  201  is given a list of channels to monitor by the serving cell, and it only reports the signal strength for one or more of these channels when it is able to decode the BSIC (Base Station Identity Code) on that channel. Only grid points where the signal-to-interference ratio is such that the BSIC for a reported neighbor could reasonably be expected to be decoded are considered as candidates for further computation. In older protocols, such as IS-136, the wireless terminal  201  is not required to decode the signal in order to report a signal-strength value. In these cases, this test is not applicable.  
         [0099]    Timing Advance: In time-division multiplexed systems such as GSM or IS- 136 , the serving cell instructs the wireless terminal  201  to advance its responses by a certain amount so that its uplink signal will arrive back at the base station at approximately the same time it would if the wireless terminal were located at zero range from the base station. This insures that the uplink signal arrives at the base station in the correct time-slot. The timing advance that the wireless terminal is instructed to use gives an indication of the distance of the terminal from the serving cell. However, the quantization of the timing advance values in current wireless systems make this only a rough indication of distance. Nonetheless, the timing advance can also be used to eliminate candidate grid points for which the reported timing advance is very unlikely.  
         [0100]    Un-Reported Neighbors: In GSM, if the wireless terminal  201  is able to decode the BSIC for more than 6 of the channels it has been instructed to monitor, it reports only the 6 strongest of these (subject to some additional requirements in dual-band systems). Thus, a grid point where the predicted signal strength of a neighbor that was not reported is significantly higher than those of the neighbors that were reported may be eliminated from further consideration.  
         [0101]    Maximum Signal Strength: To eliminate the effects of unknown signal strength bias between the predicted signal strength database and the wireless terminal  201 , the location estimate is based on relative signal strength. Nevertheless, in some cases, the absolute signal strength can be used to reduce the number of candidate grid points. The location system  212  can reasonably eliminate from consideration grid points where the predicted signal strength is significantly higher or significantly lower than the reported signal strength on a channel, where this test must include a margin for model errors, measurements errors, systematic biases, and the possibility of local signal fading. When a time series of measurements is available, the maximum and minimum signal strength reported over the entire time interval can be used to reduce the sensitivity of this test to local fading.  
         [0102]    It will be clear to those skilled in the art how to determine and use factors for measurement errors and systematic bias in the tests described above.  
         [0103]    Step  902 : At Step  902 , the location system  212  determines which of the signal-strength measurements reported by the wireless terminal  201  are valid for use in calculating the measurement likelihoods. Because the wireless terminal reports the signal strengths to the switching center in a fixed length binary word (6 bits for GSM and 5 bits for IS-136), a fixed number of signal-strength values may be reported (64 values for GSM and 32 values for IS-136). As a result, when the wireless terminal  201  reports the highest reportable value (−47 dBm for GSM and −51 dBm for IS-136), it really means that value or higher, and when it reports the lowest reportable value (−110 dBm for GSM and −113 dBm for IS-136), it really means that value or lower. In either case, using these saturated values to calculate the measurement likelihoods could lead to significant errors. For example, if a GSM wireless terminal were at a location where the signal strength for a particular channel was −37 dBm, it would still report at most a value of −47 dBm, and forcing the location algorithm to choose instead a location where the predicted signal strength was −47 dBm could lead to a substantial location error. Thus, measurements that are at either the minimum or maximum allowable signal strength are eliminated from the measurement likelihood calculation at this task.  
         [0104]    Step  903 : At Step  903 , the location system  212  computes the signal strength differentials for those reported channels whose signal-strength measurements are not at the reporting limits. In particular, for n reported signals, S 1 , S 2 , . . . S n , that are not at the maximum or minimum reportable signal strength, n−1 signal strength differentials are computed where:  
         Δ S   k   =S   k   −S   1    
         [0105]    for k=2, 3, . . . n, wherein ΔS k  is the k th  signal strength differential, S k  is the reported signal strength of Signal k, and S 1  is the reported signal strength of Signal  1 . This illustrative embodiment computes the signal strength differentials as the difference between Signal  2 , Signal  3 , . . . , Signal n and Signal  1 . It will be apparent to anyone skilled in the art that any arrangement that results in n−1 independent differential pairs is informationally equivalent. For example, the same location estimate would result from an embodiment that used S 1 −S 2 , S 2 −S 3 , S 3 −S 4 , etc.  
         [0106]    Step  904 : At Step  904 , location system  212  computes the predicted signal strength differentials for only those locations that were not eliminated from consideration in Step  902 . In particular, for the n reported signals that are not at the maximum or minimum reportable signal strength, n−1 predicted signal strength differentials are computed where:  
         Δ R   k ( x,y )= R   k ( x,y )− R   1 ( x,y )  
         [0107]    for k=2, 3, . . . n, where ΔR k (x,y) is the k th  predicted signal strength differential for location (x,y), R k (x,y) is the predicted signal strength of Signal k at location (x,y) in predicted signature database  302 , and R 1 (x,y) is the reported predicted signal strength of Signal  1  at location (x,y) in predicted signature database  302 . Obviously, the differencing scheme used in Step  904  must be consistent with that adopted for Step  903 .  
         [0108]    Step  905 : At Step  905 , the signal differentials calculated in Step  903  and the predicted signal differentials calculated in Step  904  are combined to give the measurement likelihood at each of the candidate grid points (i.e., the probability that the reported signals would have been measured if the wireless terminal really had been at that grid point). The first step is to generate the error differentials at each candidate grid point according to:  
         Δe        (     x   ,   y     )       =       [             Δe   2          (     x   ,   y     )                   Δe   3          (     x   ,   y     )               .           .           .               Δe   n          (     x   ,   y     )             ]     =     [             ΔS   2     -       ΔR   2          (     x   ,   y     )                     ΔS   3     -       ΔR   3          (     x   ,   y     )                 .           .           .               ΔS   n     -       ΔR   n          (     x   ,   y     )               ]                             
 
         [0109]    Although it is reasonable to assume that the errors in each component of the measurement are independent, those of the measurement differentials are not. For example S 2 −S 1  and S 3 −S 1  both involve S 1  and, therefore, cannot be said to be statistically independent. For the differencing scheme used in the illustrative embodiment, the error covariance associated with the error differential is:  
       M   =         [           -   1         1       0       0       .       .       .       0             -   1         0       1       0       .       .       .       0             -   1         0       0       1                                           0           .       .       .                   .                                               .       .       .                               .                                   .       .       .                                           .                         -   1         0       0       0                                           1         ]          [           σ   2         0       0       0       .       .       .       0           0         σ   2         0       0       .       .       .       0           0       0         σ   2         0       .       .       .       0           0       0       0         σ   2                                             0           .       .       .                   .                                               .       .       .                               .                                   .       .       .                                           .                       0       0       0       0                                             σ   2           ]            
     [           -   1           -   1           -   1         .       .       .         -   1             1       0       0       .       .       .       0           0       1       0       .       .       .       0           0       0       1                                           0           .       .                   .                                               .       .                               .                                   .       .                                           .                       0       0       0                                           1         ]             M   =       [         2       1                   1                   .       .       .       1           1       2                   1                   .       .       .       1           1       1                   2                   .                               .           .       .       .                               .                                               .       .                   .                               .                   1           .       .                               .                               .                       1       1       .       .       .                   1                   2         ]          σ   2                             
 
         [0110]    where σ is the measurement error standard deviation.  
         [0111]    In the illustrative embodiment the error statistics are the same for all of the measurements; in some other embodiments, however, the error statistics might not be the same in each component. It will be clear to those skilled in the art, after reading this specification, how to extend the illustrative embodiment accordingly for unequal error statistics.  
         [0112]    Since the signal strength variations are well-known to be log normal, the measurement likelihood at grid point (x, y) is given by:  
           L ( x,y )= e   −1/2Δe(x,y)     T     M     −1     Δe(x,y)    
         [0113]    Note that because the differencing operation has made the components of the differential error vector statistically dependent, the “fit” of the measured to predicted signal strengths at each candidate grid point cannot be separated into “goodness of fit” terms that depend on a single component of the error differential vector.  
         [0114]    Task  704 : At Task  704  the location system  212  combines the a priori location probability distribution from Task  702  and the measurement likelihoods from Task  703  to obtain the location probability distribution based on a priori information and signal strength information. This calculation is performed by multiplying the a priori probability by the measurement likelihood at each grid point in the relevant area and then dividing this value by the sum of these values over all of the grid points in the relevant area.  
           p     LOCATION   -     SIGNAL                 STRENGTH              (     x   ,   y     )       =           L     SIGNAL                 STRENGTH            (     x   ,   y     )              p     LOCATIOON   -     A                 PRIORI              (     x   ,   y     )             ∑     (     x   ,   y     )                           L     SIGNAL                 STRENGTH            (     x   ,   y     )              p     LOCATION   -     A                 PRIORI              (     x   ,   y     )                                   
 
         [0115]    This normalization insures that the result is still a probability distribution (i.e., the sum of all of the location probabilities equals one).  
         [0116]    Task  705 : At Task  705 , the location system  212  calculates the measurement likelihoods for the geometry-of-arrival measurements at each point in the relevant area. These calculations are summarized below.  
         [0117]    Time-of-Arrival Measurements: In general, time-of-arrival measurements are of the form:  
         t   R     =       t   T     +             (       x   T     -     x   R       )     2     +       (       y   T     -     y   R       )     2     +       (       z   T     -     z   R       )     2         c     +     Δt   clock                             
 
         [0118]    where t R  is the time the signal was received according to the receiver clock, t T  is the time the signal was sent according to the transmitter clock, the square root is the distance from the transmitter to the receiver, c is the speed of light, and Δt clock  is the error between the transmitter and receiver clocks. Obviously, if the clocks were perfectly synchronized and the time-of-arrival were measured perfectly, this equation would define a sphere centered at the transmitter. The intersection of this sphere with the surface of the earth would define a line of possible locations in the geographic area  302 . However, errors in clock synchronization of time-of-arrival measurements will transform this line into a band of possible locations. Typically, the clock error is a much more serious problem than the measurement errors.  
         [0119]    If the predicted measurement values for a particular time-of-arrival sensor were pre-computed and stored in the predicted signature database  302 , the quantity actually stored would be t R −t r  under the assumption that Δt clock =0.  
         [0120]    If the time-of-arrival of a signal from the wireless terminal  201  is measured by two different receivers whose clocks are synchronized, subtracting one measurement from the other will eliminate the clock error at the expense of introducing a second time-of-arrival measurement error. Similarly if the wireless terminal  201  measures the time-of-arrival of two signals from two different receivers whose clocks are synchronized, and one measurement is subtracted from the other, the clock error is again eliminated at the expense of introducing a second measurement error. This latter case is the principle behind the GPS system.  
         [0121]    The time-difference-of-arrival created by either of these cases creates a different, but well-defined, band of candidate locations in the relevant area from Task  701 . If we account for the statistical properties of the time-of-arrival measurement errors, then the likelihood associated with the candidate points will be different in the center of the band than at the edge of the band. For example, if the measurement error were modeled as a zero mean gaussian random variable, the measurement likelihood at any grid point  x =(x, y, z) would be:  
         L        (     x   _     )       =     exp        {     -         (       t     R   1       -     t     R   2       -       h   1          (     x   _     )       +       h   2          (     x   _     )         )     2       4        σ   2           }                             
 
         [0122]    where the time required for the signal to travel from the transmitter to receiver k is given by:  
           h   k          (     x   _     )       =             (       x     T   k       -   x     )     2     +       (       y     T   k       -   y     )     2     +       (       z     T   k       -   z     )     2         c                           
 
         [0123]    and σ is the standard deviation of the time-of-arrival measurement error. This expression ignores the normalization factor for the gaussian distribution since it is the same at every point. With this expression, the measurement likelihood would be highest at the center of the band and would fall off gradually for points further and further from the center of the band. Each independent pair of such time-of-arrival measurements will thus create a measurement likelihood value at each grid point in the relevant area. An example of the measurement likelihood for the difference of two time-of-arrival measurements is shown in FIG. 11.  
         [0124]    Angle-of-Arrival Measurements Similarly, a perfect ground-based angle-of-arrival measurement would define a line at that angle from the sensor across the relevant area. Under the assumption that the wireless terminal  201  and the angle-of-arrival sensor  210  are at the same altitude (so that z T =z R ), the angle-of-arrival of a signal from the wireless terminal is given by:  
         α=tan −1 {( y   T   −y   R )/( x   T   −x   R )} 
         [0125]    where (x T , y T , z T ) is the location of the wireless terminal and (x R , y R , z R ) is the location of the sensor (receiver).  
         [0126]    A simple model of angle measurement error would create a wedge, and a more sophisticated model (e.g., gaussian) would create a likelihood function that is highest along the line defined by the measured values and falls of gradually with angular distance from that line. Under the latter assumption, the measurement likelihood for a single angle-of-arrival measurement at grid point  x =(x, y) is given by:  
         L        (     x   _     )       =     exp        {     -         (     α   -     g        (   x   )         )     2       2        σ   A   2           }                             
 
         [0127]    where the predicted angle-of-arrival value at the grid point is:  
           g (   x   )=tan −1 {( y−y   R )/( x−x   R )} 
         [0128]    Each independent angle-of-arrival measurement will thus create a measurement likelihood value at each grid point in the relevant area. An example of the measurement likelihood for an angle-of-arrival measurement is shown in FIG. 12.  
         [0129]    If the predicted measurement values for a particular angle-of-arrival sensor were pre-computed and stored in the predicted signature database  302 , the quantity stored would be g( x ).  
         [0130]    Geometry-of-Arrival Measurement Likelihood: The total measurement likelihood at each grid point in the relevant area is simply the product of the measurement likelihoods calculated for all of the independent angle-of-arrival measurements and independent pairs of time-of-arrival measurements:  
           L     GEOMETRY   -   OF   -   ARRIVAL            (     x   _     )       =       {       ∏     k   =   1     n                       L     ANGLE   -   OF   -     ARRIVAL   k              (     x   _     )         }     ×     {       ∏     j   =   1     n                       L     TIME   -   DIFFERENCE   -   OF   -     ARRIVAL   j              (     x   _     )         }                             
 
         [0131]    The likelihood function for dependent pairs of time-of-arrival measurements must be calculated jointly in exactly the same fashion that the likelihood function for dependent pairs of signal-strength measurements was calculated in Task  703 .  
         [0132]    Task  706 : At Task  706 , location system  212  combines the location probability distribution based on a priori information and signal-strength measurements from Task  704  and the geometry-of-arrival measurement likelihoods from Task  705  to obtain the location probability distribution based on a priori information and all of the measurements. As in Task  704 , this calculation is performed by multiplying the previously calculated location probability by the measurement likelihood at each grid point in the relevant area and then dividing this value by the sum of these values over all of the grid points in the relevant area.  
           p   LOCATION          (     x   ,   y     )       =           L     GEOMETRY   -   OF   -   ARRIVAL            (     x   ,   y     )              p     LOCATION   -     SIGNAL                 STRENGTH              (     x   ,   y     )             ∑     (     x   ,   y     )                           L     GEOMETRY   -   OF   -   ARRIVAL            (     x   ,   y     )              p       LOCATION   -     SIGNAL                 STRENGTH                           (     x   ,   y     )                                   
 
         [0133]    Task  707 : At Task  707 , location system  212  estimates the location of wireless terminal  201  based on the location probability distribution generated in Task  706 . At each grid point in the geographic region  200 , the value of the probability distribution represents the probability that the wireless terminal  201  is within the grid square associated with that grid point. In accordance with the illustrative embodiment, location system  212  estimates the location of wireless terminal  201  based on the mean of the probability distribution. After reading this specification, however, it will be clear to those skilled in the art how to make and use embodiments of the present invention that estimate the location of wireless terminal  201  based on a different function of the probability distribution, such as the maximum likelihood function.  
         [0134]    Any of these calculations provides an estimate of the location of the wireless terminal  201  relative to the origin of the local Cartesian coordinate system (i.e., relative to the reference location shown in FIG. 6). With the latitude and longitude of this reference location, it is straightforward to transform the location estimate from the local Cartesian coordinate frame to latitude and longitude. It should be noted that the calculations performed in this task are independent of the number and type of measurements that were used to form the location probability distribution. From Task  707 , control passes to operation  404  in FIG. 4.  
         [0135]    It is to be understood that the above-described embodiments are merely illustrative of the present invention and that many variations of the above-described embodiments can be devised by those skilled in the art without departing from the scope of the invention. It is therefore intended that such variations be included within the scope of the following claims and their equivalents.