Search

US-12618931-B2 - Stateful post-location adjustments

US12618931B2US 12618931 B2US12618931 B2US 12618931B2US-12618931-B2

Abstract

Apparatus, methods, and computer program products for providing location to a device are provided. An example method may include receiving a location request associated with a device. The example method may further include determining a current raw location and a device history associated with the device. The example method may further include determining, based on the current raw location and the device history, at least one processing algorithm. The example method may further include determining an adjusted location based on the current raw location, the device history, and the at least one processing algorithm. The example method may further include transmitting, for the device, a location response including the adjusted location.

Inventors

  • Joel Morrin
  • George Wilcox RESOR
  • Satyanarayana YARRAMSETTY
  • Samia ZAMAN
  • Larry Vincent DODDS

Assignees

  • QUALCOMM INCORPORATED

Dates

Publication Date
20260505
Application Date
20230818

Claims (20)

  1. 1 . An apparatus at a location server, comprising: at least one memory; and at least one processor coupled to the at least one memory and, based at least in part on information stored in the at least one memory, the at least one processor is configured to: receive a location request associated with a device; determine a current raw location and a device history associated with the device; determine, based on the current raw location and the device history, at least one processing algorithm; calculate a smoothed latitude and a smoothed longitude; determine an adjusted location based on the current raw location, the device history, and the at least one processing algorithm, wherein the adjusted location is further based on the smoothed latitude and the smoothed longitude and at least one of: a time elapsed between the current raw location and a last updated location exceeds a time threshold, a distance between the current raw location and the last updated location exceeds a distance threshold, the current raw location is outside of a prior area of uncertainty, the last updated location is outside of a current area of uncertainty, or a change of standard deviation associated with the smoothed latitude and the smoothed longitude being higher than a standard deviation threshold; and transmit, for the device, a location response including the adjusted location.
  2. 2 . The apparatus of claim 1 , wherein the at least one processing algorithm comprises an accuracy enhancement algorithm, and wherein to determine the adjusted location, the at least one processor is configured to: determine whether a change of precision associated with a comparison of the current raw location and the last updated location exceeds an upper bound or a lower bound; and determine, based on the change of precision exceeding the upper bound, the adjusted location to be equal to the last updated location; determine, based on the change of precision exceeding the lower bound, the adjusted location to be equal to the current raw location; or calculate, based on the change of precision not exceeding the upper bound or the lower bound, the smoothed latitude and the smoothed longitude and determine the adjusted location based on the smoothed latitude and the smoothed longitude.
  3. 3 . The apparatus of claim 1 , wherein the at least one processing algorithm comprises a noise reduction algorithm.
  4. 4 . The apparatus of claim 1 , wherein the at least one processing algorithm comprises an outlier filtering algorithm, and wherein to determine the adjusted location, the at least one processor is configured to: calculate at least one rate of change limit associated with the current raw location and the last updated location; determine the adjusted location to be equal to the current raw location based on the at least one rate of change associated with the current raw location and the last updated location being smaller than the at least one rate of change limit; or determine the adjusted location to be equal to the last updated location based on the at least one rate of change associated with the current raw location and the last updated location being larger than the at least one rate of change limit.
  5. 5 . The apparatus of claim 1 , wherein the at least one processor is further configured to: receive a second location request associated with the device; determine a second current raw location and a second device history associated with the device; determine, based on the second current raw location and the second device history, at least one second processing algorithm, wherein the second device history and the device history are associated with a same maximum data size; determine a second adjusted location based on the second current raw location, the second device history, and the at least one second processing algorithm; and transmit, for the device, a second location response including the second adjusted location.
  6. 6 . The apparatus of claim 1 , wherein the location request comprises a first state token and the adjusted location is included in a second state token.
  7. 7 . The apparatus of claim 6 , wherein the first state token comprises information regarding one or more of: a most recent location associated with the device, a most recent serving cell associated with the device, an observation variance associated with the device, a location history associated with the device, one or more uncertainties associated with a calculated location, one or more confidence metrics associated with the device, historical scan data associated with the device, or one or more state machine values associated with the device.
  8. 8 . The apparatus of claim 6 , wherein the second state token comprises information regarding one or more of: a most recent location associated with the device, a most recent serving cell associated with the device, an observation variance associated with the device, a location history associated with the device, one or more uncertainties associated with a calculated location, one or more confidence metrics associated with the device, historical location related measurements associated with the device, or one or more state machine values associated with the device.
  9. 9 . The apparatus of claim 6 , further comprising at least one of a transceiver or an antenna coupled to the at least one processor, wherein to transmit the location response, the at least one processor is configured to transmit the location response via at least one of the transceiver or the antenna, wherein the first state token comprises a state identifier (ID), and wherein the state ID is based on a prior location response before the location response.
  10. 10 . The apparatus of claim 9 , wherein the at least one processor is further configured to: generate the second state token comprising a second state ID; maintain the second state ID and the second state token before transmission of the location response; and delete the state ID after generation of the second state ID.
  11. 11 . An apparatus associated with a device, comprising: at least one memory; and at least one processor coupled to the at least one memory and, based at least in part on information stored in the at least one memory, the at least one processor is configured to: obtain a current raw location and a device history associated with the device; determine, based on the current raw location and the device history, at least one processing algorithm; calculate a smoothed latitude and a smoothed longitude; and determine an adjusted location based on the current raw location, the device history, and the at least one processing algorithm, wherein the adjusted location is further based on the smoothed latitude and the smoothed longitude and at least one of: a time elapsed between the current raw location and a last updated location exceeds a time threshold, a distance between the current raw location and the last updated location exceeds a distance threshold, the current raw location is outside of a prior area of uncertainty, the last updated location is outside of a current area of uncertainty, or a change of standard deviation associated with the smoothed latitude and the smoothed longitude being higher than a standard deviation threshold.
  12. 12 . The apparatus of claim 11 , wherein to obtain the current raw location, the at least one processor is configured to: transmit, to a server, a location request for the current raw location; and receive, from the server based on the location request, the current raw location.
  13. 13 . The apparatus of claim 11 , wherein to obtain the current raw location, the at least one processor is configured to: determine, based on a global navigation satellite system (GNSS) or a sensor, the current raw location.
  14. 14 . The apparatus of claim 11 , wherein the at least one processing algorithm comprises an accuracy enhancement algorithm, and wherein to determine the adjusted location, the at least one processor is configured to: determine whether a change of precision associated with a comparison of the current raw location and the last updated location exceeds an upper bound or a lower bound; and determine, based on the change of precision exceeding the upper bound, the adjusted location to be equal to the last updated location; determine, based on the change of precision exceeding the lower bound, the adjusted location to be equal to the current raw location; or calculate, based on the change of precision not exceeding the upper bound or the lower bound, the smoothed latitude and the smoothed longitude and determine the adjusted location based on the smoothed latitude and the smoothed longitude.
  15. 15 . The apparatus of claim 11 , wherein the at least one processing algorithm comprises an accuracy enhancement algorithm.
  16. 16 . The apparatus of claim 11 , wherein the at least one processing algorithm comprises a noise reduction algorithm, and wherein to determine the adjusted location, the at least one processor is configured to: calculate at least one rate of change limit associated with the current raw location and the last updated location; determine the adjusted location to be equal to the current raw location based on the at least one rate of change associated with the current raw location and the last updated location being smaller than the at least one rate of change limit; or determine the adjusted location to be equal to the last updated location based on the at least one rate of change associated with the current raw location and the last updated location being larger than the at least one rate of change limit.
  17. 17 . The apparatus of claim 11 , further comprising at least one of a transceiver or an antenna coupled to the at least one processor, wherein to obtain the current raw location and the device history, the at least one processor is configured to obtain the current raw location and the device history via at least one of the transceiver or the antenna, wherein the at least one processor is further configured to: determine a second current raw location and a second device history associated with the device; determine, based on the second current raw location and the second device history, at least one second processing algorithm, wherein the second device history and the device history are associated with a same maximum data size; and determine a second adjusted location based on the second current raw location, the second device history, and the at least one second processing algorithm.
  18. 18 . A method performed by a location server, comprising: receiving a location request associated with a device; determining a current raw location and a device history associated with the device; determining, based on the current raw location and the device history, at least one processing algorithm; calculating a smoothed latitude and a smoothed longitude; determining an adjusted location based on the current raw location, the device history, and the at least one processing algorithm, wherein the adjusted location is further based on the smoothed latitude and the smoothed longitude and at least one of: a time elapsed between the current raw location and a last updated location exceeds a time threshold, a distance between the current raw location and the last updated location exceeds a distance threshold, the current raw location is outside of a prior area of uncertainty, the last updated location is outside of a current area of uncertainty, or a change of standard deviation associated with the smoothed latitude and the smoothed longitude being higher than a standard deviation threshold; and transmitting, for the device, a location response including the adjusted location.
  19. 19 . The method of claim 18 , wherein the at least one processing algorithm comprises an accuracy enhancement algorithm, and wherein determining the adjusted location comprises: determining whether a change of precision associated with a comparison of the current raw location and the last updated location exceeds an upper bound or a lower bound; and determining, based on the change of precision exceeding the upper bound, the adjusted location to be equal to the last updated location; determining, based on the change of precision exceeding the lower bound, the adjusted location to be equal to the current raw location; or calculating, based on the change of precision not exceeding the upper bound or the lower bound, the smoothed latitude and the smoothed longitude and determine the adjusted location based on the smoothed latitude and the smoothed longitude.
  20. 20 . The method of claim 18 , wherein the at least one processing algorithm comprises a noise reduction algorithm.

Description

TECHNICAL FIELD The present disclosure relates generally to communication systems, and more particularly, to wireless communication systems with a location server that may be providing location service to devices. INTRODUCTION Wireless communication systems are widely deployed to provide various telecommunication services such as telephony, video, data, messaging, and broadcasts. Typical wireless communication systems may employ multiple-access technologies capable of supporting communication with multiple users by sharing available system resources. Examples of such multiple-access technologies include code division multiple access (CDMA) systems, time division multiple access (TDMA) systems, frequency division multiple access (FDMA) systems, orthogonal frequency division multiple access (OFDMA) systems, single-carrier frequency division multiple access (SC-FDMA) systems, and time division synchronous code division multiple access (TD-SCDMA) systems. These multiple access technologies have been adopted in various telecommunication standards to provide a common protocol that enables different wireless devices to communicate on a municipal, national, regional, and even global level. An example telecommunication standard is 5G New Radio (NR). 5G NR is part of a continuous mobile broadband evolution promulgated by Third Generation Partnership Project (3GPP) to meet new requirements associated with latency, reliability, security, scalability (e.g., with Internet of Things (IoT)), and other requirements. 5G NR includes services associated with enhanced mobile broadband (eMBB), massive machine type communications (mMTC), and ultra-reliable low latency communications (URLLC). Some aspects of 5G NR may be based on the 4G Long Term Evolution (LTE) standard. There exists a need for further improvements in 5G NR technology. These improvements may also be applicable to other multi-access technologies and the telecommunication standards that employ these technologies. The improvements may also be applicable to devices based on wired communications. BRIEF SUMMARY The following presents a simplified summary of one or more aspects in order to provide a basic understanding of such aspects. This summary is not an extensive overview of all contemplated aspects. This summary neither identifies key or critical elements of all aspects nor delineates the scope of any or all aspects. Its sole purpose is to present some concepts of one or more aspects in a simplified form as a prelude to the more detailed description that is presented later. In an aspect of the disclosure, a method, a computer-readable medium, and an apparatus at a device are provided. The apparatus may include at least one memory and at least one processor coupled to the at least one memory. Based at least in part on information stored in the at least one memory, the at least one processor, individually or in any combination, is configured to obtain a current raw location and a device history associated with the device. Based at least in part on information stored in the at least one memory, the at least one processor, individually or in any combination, is configured to determine, based on the current raw location and the device history, at least one processing algorithm. Based at least in part on information stored in the at least one memory, the at least one processor, individually or in any combination, is configured to determine an adjusted location based on the current raw location, the device history, and the at least one processing algorithm. In some aspects, based at least in part on information stored in the at least one memory, the at least one processor, individually or in any combination, is configured to cause a screen at the apparatus to render the adjusted location. In another aspect of the disclosure, a method, a computer-readable medium, and an apparatus at a location server are provided. The apparatus may include at least one memory and at least one processor coupled to the at least one memory. Based at least in part on information stored in the at least one memory, the at least one processor, individually or in any combination, is configured to receive a location request associated with a device. Based at least in part on information stored in the at least one memory, the at least one processor, individually or in any combination, is configured to determine a current raw location and a device history associated with the device. Based at least in part on information stored in the at least one memory, the at least one processor, individually or in any combination, is configured to determine, based on the current raw location and the device history, at least one processing algorithm. Based at least in part on information stored in the at least one memory, the at least one processor, individually or in any combination, is configured to determine an adjusted location based on the current raw location, the device history, and the at least one process