# US 11,909,843 B2 · Location and behavior based prefetch and caching of remote data

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,909,843 B2
- Document ID: US11909843B2
- Status: Granted
- Kind: B2
- Application number: 18/123,865
- Filed: 2023-03-20
- Published: 2023-11-09
- Granted: 2024-02-20
- Earliest claimed: 2020-05-26
- Assignees: Meta Platforms, Inc.
- Applicants: Meta Platforms, Inc.
- Inventors: Louis Feng
- Web page: https://patentgrep.com/patent/US11909843B2

## CPC

- G06F 16/9574: {of access to content, e.g. by caching}
- H04L 67/5681: Pre-fetching or pre-delivering data based on network characteristics
- G06F 16/172: Caching, prefetching or hoarding of files
- G06F 16/9535: Search customisation based on user profiles and personalisation
- H04W 4/029: Location-based management or tracking services
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)

## Abstract

A method for prefetching and caching data onto a device is disclosed. An association of a user with a travel to a destination location is determined. Data network availability in at least a portion of a likely future travel path from a current location of the user to the destination location is analyzed. Based on the analysis of the data network availability, a segment of the likely future travel path where data network is likely unreliable is identified. Data likely desired by the user when the user travels in the identified segment is predicted. A device of the user is caused to obtain and cache the predicted data.

## Claims

### Claim 1

A method, comprising:
identifying a likely future travel path from a current location of a user to a destination location based at least in part on online search patterns associated with the user;
determining data network coverage and network quality in at least a portion of the likely future travel path by collecting and analyzing network availability data from many users on many devices, wherein the many users are connected to a server via the many devices for different online activities, wherein the collected data network availability data comprises metrics that indicate the data network coverage and network quality, wherein a metric of the metrics is associated with a set of attributes comprising one or more of a location, time or a type of wireless networking technology, and the likely future travel path is further based at least in part on online activities and behaviors of the user, which indicate that the user is likely planning to travel to the destination location;
based on the determined data network coverage and network quality, identifying a segment of the likely future travel path where data network is likely unreliable;
predicting data likely desired by the user when the user travels in the identified segment, wherein the data likely desired by the user is predicted to include facilities and services located at the identified segment based on the user having previously searched for the facilities and services located in the identified segment, according to the online search patterns associated with the user; and
causing a device of the user to obtain and cache the predicted data.

### Claim 2 (depends on 1)

The method of claim 1, comprising:
identifying the likely future travel path from the current location of the user to the destination location based at least in part on online search of transportation bookings to the destination location.

### Claim 3 (depends on 1)

The method of claim 1, comprising:
identifying the likely future travel path from the current location of the user to the destination location based at least in part on online search of hotel bookings at the destination location.

### Claim 4 (depends on 1)

The method of claim 1, comprising:
identifying the likely future travel path from the current location of the user to the destination location based at least in part on online search of tourist attractions at the destination location.

### Claim 5 (depends on 1)

The method of claim 1, comprising:
identifying the likely future travel path from the current location of the user to the destination location based at least in part on the user's online activities and behaviors, and wherein the user's online activities and behaviors comprise the user's online activities and behaviors on social media, including online chats and posts on social media by the user, which indicate that the user is likely planning to travel to the destination location.

### Claim 6 (depends on 1)

The method of claim 1, comprising:
identifying the likely future travel path from the current location of the user to the destination location based at least in part on the user providing a notification or confirmation that he is planning to travel to the destination location.

### Claim 7 (depends on 1)

The method of claim 1, comprising:
identifying the likely future travel path from the current location of the user to the destination location based at least in part on the user's GPS (global positioning system) locations that indicate that the user travels to the destination location as a regular routine.

### Claim 8 (depends on 1)

The method of claim 1, comprising:
determining the data network coverage and network quality by collecting data network availability data from many users on many devices, wherein the many users are connected to a server via the many devices for different online activities.

### Claim 9 (depends on 8)

The method of claim 8, wherein the collected data network availability data comprises metrics that indicate the data network coverage and network quality, wherein a metric is associated with a set of attributes, wherein the set of attributes comprises one or more of the following: a location, a time, or a type of wireless networking technology.

### Claim 10 (depends on 8)

The method of claim 8, further comprising:
collecting data network availability data from mobile carriers or third-party evaluators.

### Claim 11 (depends on 1)

The method of claim 1, further comprising:
periodically updating the likely future travel path from the current location of the user to the destination location.

### Claim 12 (depends on 1)

The method of claim 1, further comprising:
predicting a time when the user reaches the segment of the likely future travel path; and
identifying the segment of the likely future travel path where data network is likely unreliable based on the time when the user reaches the segment of the likely future travel path.

### Claim 13 (depends on 1)

The method of claim 1, further comprising:
predicting the data likely desired by the user when the user travels in the identified segment further based on the user's online activities and behaviors on social media, wherein the user's online activities and behaviors on social media comprise online chats and posts on social media by the user.

### Claim 14 (depends on 1)

The method of claim 1, further comprising:
causing the device of the user to obtain and cache the predicted data after the user has begun to travel but before the user arrives at the identified segment, wherein a timing of the obtaining and caching of the predicted data is based on one or more of the following: a GPS location of the user, an estimated distance of the user from the segment, a time period before the user reaches the segment, an amount of traffic from the user to the segment, a driving speed estimate when traveling to the segment, a connection speed when traveling to the segment, or a size of the predicted data.

### Claim 15

A system for prefetching and caching data onto a device, comprising:
a processor; and
a memory coupled with the processor, wherein the memory is configured to provide the processor with instructions which when executed cause the processor to:
identify a likely future travel path from a current location of a user to a destination location based at least in part on online search patterns associated with the user;
determine data network coverage and network quality in at least a portion of the likely future travel path by collecting and analyzing network availability data from many users on many devices, wherein the many users are connected to a server via the many devices for different online activities, wherein the collected data network availability data comprises metrics that indicate the data network coverage and network quality, wherein a metric of the metrics is associated with a set of attributes comprising one or more of a location, time or a type of wireless networking technology, and the likely future travel path is further based at least in part on online activities and behaviors of the user, which indicate that the user is likely planning to travel to the destination location;
based on the determined data network coverage and network quality, identify a segment of the likely future travel path where data network is likely unreliable;
predict data likely desired by the user when the user travels in the identified segment, wherein the data likely desired by the user is predicted to include facilities and services located at the identified segment based on the user having previously searched for the facilities and services located in the identified segment, according to the online search patterns associated with the user; and
cause a device of the user to obtain and cache the predicted data.

### Claim 16 (depends on 15)

The system recited in claim 15, wherein the memory is configured to provide the processor with instructions which when executed cause the processor to:
identify the likely future travel path from the current location of the user to the destination location based at least in part on online search of transportation bookings to the destination location.

### Claim 17 (depends on 15)

The system recited in claim 15, wherein the memory is configured to provide the processor with instructions which when executed cause the processor to:
identify the likely future travel path from the current location of the user to the destination location based at least in part on online search of hotel bookings at the destination location.

### Claim 18 (depends on 15)

The system recited in claim 15, wherein the memory is configured to provide the processor with instructions which when executed cause the processor to:
identify the likely future travel path from the current location of the user to the destination location based at least in part on online search of tourist attractions at the destination location.

### Claim 19

A computer program product for prefetching and caching data onto a device, the computer program product being embodied in a non-transitory tangible computer readable storage medium and comprising computer instructions for:
identifying a likely future travel path from a current location of a user to a destination location based at least in part on online search patterns associated with the user;
determining data network coverage and network quality in at least a portion of the likely future travel path by collecting and analyzing network availability data from many users on many devices, wherein the many users are connected to a server via the many devices for different online activities, wherein the collected data network availability data comprises metrics that indicate the data network coverage and network quality, wherein a metric of the metrics is associated with a set of attributes comprising one or more of a location, time or a type of wireless networking technology, and the likely future travel path is further based at least in part on online activities and behaviors of the user, which indicate that the user is likely planning to travel to the destination location;
based on the determined data network coverage and network quality, identifying a segment of the likely future travel path where data network is likely unreliable;
predicting data likely desired by the user when the user travels in the identified segment, wherein the data likely desired by the user is predicted to include facilities and services located at the identified segment based on the user having previously searched for the facilities and services located in the identified segment, according to the online search patterns associated with the user; and
causing a device of the user to obtain and cache the predicted data.

### Claim 20 (depends on 19)

The computer program product of claim 19, comprising computer instructions for:
identifying the likely future travel path from the current location of the user to the destination location based at least in part on online search of transportation bookings to the destination location.
