IP Library Granted Patent US 12,641,392
Granted Patent B2
US 12,641,392 · App. 18/537,377 · Granted May 26, 2026

Systems and methods for assigning user device movement states

Inventors: Howard Mizes (Salem, SC); Basavaraj Sharana Patil (Concord, NC); Kaiss K. Alahmady (Plano, TX); Daniel Jacob Abreu (San Jose, CA)
Assignee: Verizon Patent and Licensing Inc.
H04W4/021H04W4/027
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,641,392
App. No.
18/537,377
Granted
May 26, 2026
Kind
B2
Abstract

In some implementations, a device may obtain a set of one or more communication events associated with a user device, where the set of one or more communication events indicates respective values of one or more communication parameters. The device may determine, for each communication event, whether one or more rules are applicable to that communication event based on a comparison of values of the one or more communication parameters of that communication event and values of the one or more communication parameters of a previous communication event to that communication event in time. The device may assign, for each communication event, a movement state for that communication event based on whether a score for that communication event satisfies a threshold, where the score is a summation of one or more weights of respective rules applicable to that communication event.

Claims (77)

1 . A method, comprising:

obtaining, by a device, a set of one or more communication events associated with a user device,

wherein the set of one or more communication events indicates respective values of one or more communication parameters and respective location estimates that are based on the values of the one or more communication parameters;

performing, by the device, one or more preprocessing operations to filter the set of one or more communication events;

determining, by the device and for each communication event in the set of one or more communication events, whether one or more rules are applicable to that communication event based on a comparison of values of the one or more communication parameters of that communication event and values of the one or more communication parameters of a previous communication event to that communication event in time,

wherein an applicability of the one or more rules is indicative of movement of the user device, and

wherein the one or more rules are associated with respective weights; and

assigning, by the device and for each communication event in the set of one or more communication events, a movement state for that communication event based on whether a score for that communication event satisfies a threshold,

wherein the score is a summation of one or more weights of respective rules, of the one or more rules, applicable to that communication event.

2 . The method of claim 1 , wherein the movement state is either a stationary state or a moving state.

3 . The method of claim 1 , further comprising:

obtaining, by the device, training data that includes one or more training communication events indicating respective movement state labels;

assigning, by the device and for each training communication event in the training data, a movement state for that training communication event using the one or more rules; and

determining, by the device, rule parameters for respective rules of the one or more rules based on a classification performance evaluation using the movement state and the respective movement state labels,

wherein the rule parameters include at least one of a weight or a rule threshold.

4 . The method of claim 1 , wherein the one or more rules are associated with one or more sets of rule parameters, and

wherein the one or more sets of rule parameters are associated with respective geographic locations or respective communication environments.

5 . The method of claim 1 , wherein the one or more communication parameters include at least one of:

a base station identifier,

a cell identifier,

a timing advance parameter,

a signal strength parameter, or

a signal quality parameter.

6 . The method of claim 1 , further comprising:

determining one or more periods of time during which the user device is stationary based on the movement state of a quantity of communication events, in the set of one or more communication events, being a stationary state.

7 . The method of claim 1 , wherein performing the one or more preprocessing operations comprises:

performing, by the device, an interpolation operation to regularize a time series of the set of one or more communication events from an original time series to a regular time series;

performing, by the device, a median filtering operation to filter the set of one or more communication events using the regular time series to obtain a filtered set of one or more communication events; and

performing, by the device, a resampling operation of the filtered set of one or more communication events using the original time series.

8 . The method of claim 1 , wherein a rule, of the one or more rules, is associated with a rule threshold and a communication parameter of the one or more communication parameters, and wherein determining whether the one or more rules are applicable comprises:

determining, for each communication event, whether a difference between a first value of the communication parameter and a second value of the communication parameter satisfies the rule threshold,

wherein the first value is indicated by that communication event and the second value is indicated by the previous communication event to that communication in time, and

wherein the rule is applicable to that communication event if the difference satisfies the rule threshold.

9 . A device, comprising:

one or more processors configured to:

obtain a set of one or more communication events associated with a user device,

wherein the set of one or more communication events indicate respective values of one or more communication parameters and respective location estimates that are based on the one or more communication parameters;

determine, for each communication event in the set of one or more communication events, whether one or more rules are applicable to that communication event based on a comparison of values of the one or more communication parameters of that communication event and values of the one or more communication parameters of another communication event,

wherein the one or more rules are associated with respective weights; and

assign, for each communication event in the set of one or more communication events, a movement state for that communication event based on whether a score for that communication event satisfies a threshold,

wherein the score is a summation of one or more weights of respective rules, of the one or more rules, applicable to that communication event.

10 . The device of claim 9 , wherein the one or more processors are further configured to:

perform one or more preprocessing operations to filter the set of one or more communication events.

11 . The device of claim 10 , wherein the one or more preprocessing operations include a one-dimensional filtering operation.

12 . The device of claim 9 , wherein the one or more rules are associated with at least one of:

a criterion for at least one communication parameter of the one or more communication parameters,

a rule threshold for a comparison of values of at least one communication parameter of the one or more communication parameters, or

a distance threshold for a comparison of locations of that communication event and the other communication event.

13 . The device of claim 9 , wherein the one or more processors are further configured to:

determine that the user device is stationary at a point of interest based on the movement state of a quantity of communication events, in the set of one or more communication events, being a stationary state; and

determine a dwell time at the point of interest based on a first time of a first communication event in the quantity of communication events and a second time of a last communication event in the quantity of communication events.

14 . The device of claim 9 , wherein the one or more processors are further configured to:

identify a quantity of communication events, in the set of one or more communication events, having the movement state being a stationary state;

determine an amount of time associated with the quantity of communication events based on a first communication event in the quantity of communication events and a second time of a last communication event in the quantity of communication events; and

determine that the user device is stationary based on the amount of time satisfying a time threshold.

15 . The device of claim 9 , wherein changes of values of the one or more communication parameters are indicative of a movement of the user device.

16 . A non-transitory computer-readable medium storing a set of instructions, the set of instructions comprising:

one or more instructions that, when executed by one or more processors of a device, cause the device to:

obtain a set of one or more communication events associated with a user device,

wherein the set of one or more communication events indicate respective values of one or more communication parameters and respective location estimates that are based on the one or more communication parameters; and

assign, for each communication event in the set of one or more communication events, a movement state for that communication event based on whether a score for that communication event satisfies a threshold,

wherein the score is a summation of one or more weights of respective rules, of one or more rules, that are applicable to that communication event.

17 . The non-transitory computer-readable medium of claim 16 , wherein the one or more instructions further cause the device to:

determine, for each communication event in the set of one or more communication events, whether the one or more rules are applicable to that communication event based on a comparison of first values of the one or more communication parameters of that communication event and second values of the one or more communication parameters of a previous communication event to that communication in time.

18 . The non-transitory computer-readable medium of claim 16 , wherein the one or more instructions further cause the device to:

obtain training data that includes one or more training communication events indicating respective movement state labels;

assign, for each training communication event in the training data, a movement state for that training communication event using the one or more rules; and

determine rule parameters for respective rules of the one or more rules based on a classification performance evaluation using the movement state and the respective movement state labels,

wherein the rule parameters include at least one of a weight or a rule threshold.

19 . The non-transitory computer-readable medium of claim 16 , wherein the one or more instructions further cause the device to:

determine a communication environment in which the set of one or more communication events occurred; and

determine a set of rule parameters for respective rules of the one or more rules based on the communication environment.

20 . The non-transitory computer-readable medium of claim 16 , wherein the one or more communication parameters include at least one of:

a base station identifier,

a cell identifier,

a timing advance parameter,

a signal strength parameter.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 13, 2023
From: MIZES, HOWARD; PATIL, BASAVARAJ SHARANA; ALAHMADY, KAISS K.; ABREU, DANIEL JACOB
To: VERIZON PATENT AND LICENSING INC.
Reel/Frame 065861/0062 →
Continuity (2)
Continuation In Part 18145955 · Dec 23, 2022
Related Publication 20240214772A1 · Jun 27, 2024
References Cited (33)
US 9400190B2 · Nortrup · 2016 [cited by examiner]
US 9766080B1 · Ortiz · 2017 [cited by examiner]
US 9843902B1 · Skudlark · 2017 [cited by examiner]
US 10474955B1 · Santhanam · 2019 [cited by examiner]
US 20120011137A1 · Sheha · 2012 [cited by examiner]
US 20130072226A1 · Thramann · 2013 [cited by examiner]
US 20130090089A1 · Rivere · 2013 [cited by examiner]
US 20130252633A1 · Liang · 2013 [cited by examiner]
US 20130267197A1 · Ahtisaari · 2013 [cited by examiner]
US 20140378159A1 · Dolbakian · 2014 [cited by examiner]
US 20150106011A1 · Nesbitt · 2015 [cited by examiner]
US 20160006852A1 · Gray · 2016 [cited by examiner]
US 20160042367A1 · Vastbinder, Jr. · 2016 [cited by examiner]
US 20160148164A1 · Luk · 2016 [cited by examiner]
US 20160189186A1 · Fabrikant · 2016 [cited by examiner]
US 20170213007A1 · Moturu · 2017 [cited by examiner]
US 20170339235A1 · Chin · 2017 [cited by examiner]
US 20170372267A1 · Soffer · 2017 [cited by examiner]
US 20180014161A1 · Warren · 2018 [cited by examiner]
US 20180112996A1 · Montell · 2018 [cited by examiner]
US 20180253654A1 · Van Osten · 2018 [cited by examiner]
US 20180314740A1 · Van Osten · 2018 [cited by examiner]
US 20190182195A1 · Avital · 2019 [cited by examiner]
US 20200045164A1 · Kwatra · 2020 [cited by examiner]
US 20200142914A1 · Hui · 2020 [cited by examiner]
US 20200211053A1 · Shishkin · 2020 [cited by examiner]
US 20210209645A1 · Shishkin · 2021 [cited by examiner]
US 20220272158A1 · Naujok · 2022 [cited by examiner]
US 20230276207A1 · Sood · 2023 [cited by examiner]
US 20230304800A1 · Pottier · 2023 [cited by examiner]
US 20230410016A1 · Vertsel · 2023 [cited by examiner]
US 20240146747A1 · Zaytsev · 2024 [cited by examiner]
US 20240152596A1 · Papadopoulos · 2024 [cited by examiner]