IP Library Granted Patent US 10,693,996
Granted Patent B2
US 10,693,996 · App. 16/687,022 · Granted Jun 23, 2020

System and method for improving efficiency of a remote computing device

Inventors: Victor Gao (New York, NY); David Klein (New York, NY)
Assignee: Click Therapeutics, Inc.
H04L67/325H04L67/125H04L67/303
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 10,693,996
App. No.
16/687,022
Granted
Jun 23, 2020
Kind
B2
Abstract

The present disclosure discusses system and methods for improving the efficiency of a remote computing device. The system and methods include generate a profile and delivery schedule for the remote computing device. The system can dynamically update the delivery schedule of future requests the system transmits to the remote computing device based on responses to current request.

Claims (78)

1. A method, comprising:

maintaining, by a server including one or more processors, a profile associated with a user of an application executing on a remote computing device, the profile identifying a plurality of performance metrics for a corresponding plurality of routines specifying actions performed by the user, each performance metric of the plurality of performance metrics indicating a degree of efficacy of a corresponding action in addressing a condition associated with the user;

transmitting, by the server, responsive to receiving data from the application of the remote computing device, first instructions to the remote computing device to cause the remote computing device to present a first prompt for the user to perform a first action specified by a first routine;

receiving, by the server, from the remote computing device, a response relating to the first action specified by the first routine;

logging, by the server, on an activity log for the user associated with the profile, an entry identifying the first routine, the response relating to the first action specified by the first routine, and a timestamp corresponding to a time at which the response was transmitted or received;

updating, by the server, using the entry identifying the first routine, a performance metric for the first routine identified in the profile;

selecting, by the server, using the updated performance metric of the first routine and a second performance metric of a second routine specifying a second action, the second routine to provide to the remote computing device responsive to receiving subsequent data from the application of the remote computing device; and

transmitting, by the server, second instructions to the remote computing device to cause the remote computing device to present a second prompt for the user to perform the second action specified by the second routine.

2. The method of claim 1 , further comprising:

determining, by the server, that the first routine is ineffective in addressing the condition associated with the user based on the performance metric for the first routine; and

restricting, by the server, selection of the first routine from the plurality of routines for the user, responsive to determining that the first routine is ineffective for the user in addressing the condition.

3. The method of claim 1 , further comprising:

determining, by the server, that the first routine is effective in addressing the condition associated with the user based on the performance metric for the first routine; and

maintaining, by the server, for repeat selection, the first routine in the plurality of routines for the user responsive to determining that the first routine is effective for the user in addressing the condition.

4. The method of claim 1 , further comprising:

establishing, by the server, a routine selection model for selecting one of the plurality of routines to be performed via the remote computing device based on a training dataset for the condition, the training dataset including sample responses from a plurality of users to the plurality of routines and an indication of one of success or failure for each of the responses to one or more of the plurality of routines, and

applying, by the server, responsive to receiving the subsequent data, the routine selection model to the profile updated using the response to determine the plurality of performance metric for the corresponding plurality of routines, and

wherein selecting the second routine further comprises selecting the second routine from the plurality of performance metrics based on the plurality of performance metrics determined from applying the routine selection module.

5. The method of claim 1 , further comprising:

ranking, by the server, the plurality of routines based on a comparison of the corresponding plurality of performance metrics each indicating the degree of effectiveness of the corresponding action in addressing the condition associated with the user;

selecting, by the server, the first routine from the plurality of routines based on the ranking of the plurality of routines by the corresponding plurality of performance metrics; and

wherein transmitting the first instructions further comprises transmitting the first instructions to cause the remote computing device to present the first prompt for the user to perform the first action specified by the first routine selected from the ranking.

6. The method of claim 1 , further comprising:

identifying, by the server, responsive to receiving the data identifying a time at which to provide one of the plurality of routines, at least one of a time of day corresponding to a time, an environmental factor affecting the user at the time, a type of condition to be addressed, a behavior factor relating to the user at the time, or a location of the user at the time; and

selecting, by the server, the first routine from the plurality of routines based on at least one of the time of day, the environmental factor, the type of condition, the behavior factor, or the location of the user, and

wherein transmitting the first instructions further comprises transmitting the first instructions to present the first prompt for the user to perform the first action specified by the first routine selected based on at least one of the time of day, the environmental factor, the type of condition, the behavior factor, or the location of the user.

7. The method of claim 1 , wherein selecting the second routine from the plurality of routines further comprises selecting the second routine from the plurality of routines to provide at a time based on at least one of a time of day corresponding to the time, a routine type of the first routine previously provided to the user, an environmental factor affecting the user at the time, a type of the condition to be addressed, a behavioral factor relating to the user at the time, or a location of the user at the time.

8. The method of claim 1 , further comprising:

providing, by the server, prior to receiving the data, instructions to the remote computing device to cause the remote computing device to present a third prompt for the user to input information for the profile;

identifying, by the server, the condition associated with the user to be addressed from the information input via the third prompt, the condition including at least one of smoking, a diet, exercise, hygiene, or psychosis; and

determining, by the server, the plurality of performance metrics for the corresponding plurality of routines based on the input information, and

wherein maintaining the profile further comprises generating the profile using the condition and the plurality of metrics determined from the input information.

9. The method of claim 1 , further comprising providing, by the server, instructions to the remote computing device to cause the remote computing device to present a third prompt for the user to input an indication of success or failure in addressing the condition by performing the first action specified by the first routine, and

wherein updating the performance metric for the first routine further comprises updating the performance metric for the first routine based on the indication of success or failure inputted via the third prompt.

10. A system, comprising:

at least one server including one or more processors, configured to:

maintain a profile associated with a user of an application executing on a remote computing device, the profile identifying a plurality of performance metrics for a corresponding plurality of routines specifying actions performed by the user, each performance metric of the plurality of performance metrics indicating a degree of efficacy of a corresponding action in addressing a condition associated with the user;

transmit, responsive to receiving data from the application of the remote computing device, first instructions to the remote computing device to cause the remote computing device to present a first prompt for the user to perform a first action specified by a first routine;

receive, from the remote computing device, a response relating to the first action specified by the first routine;

log, on an activity log for the user associated with the profile, an entry identifying the first routine, the response relating to the first action specified by the first routine, and a timestamp corresponding to a time at which the response was transmitted or received;

update, using the entry identifying the first routine, a performance metric of the first routine identified in the profile;

select, using the updated performance metric of the first routine and a second performance metric of a second routine specifying a second action, the second routine to provide to the remote computing device responsive to receiving subsequent data from the application of the remote computing device; and

transmit second instructions to the remote computing device to cause the remote computing device to present a second prompt for the user to perform the second action specified by the second routine.

11. The system of claim 10 , wherein the at least one server is further configured to:

determine that the first routine is ineffective in addressing the condition associated with the user based on the performance metric for the first routine; and

restrict selection of the first routine from the plurality of routines for the user, responsive to determining that the first routine is ineffective for the user in addressing the condition.

12. The system of claim 10 , wherein the at least one server is further configured to:

determine that the first routine is effective in addressing the condition associated with the user based on the performance metric for the first routine; and

maintain, for repeat selection, the first routine in the plurality of routines for the user responsive to determining that the first routine is effective for the user in addressing the condition.

13. The system of claim 10 , wherein the at least one server is further configured to:

establish a routine selection model for selecting one of the plurality of routines to be performed via the remote computing device based on a training dataset for the condition, the training dataset including sample responses from a plurality of users to the plurality of routines and an indication of one of success or failure for each of the responses to one or more of the plurality of routines, and

apply, responsive to receiving the subsequent data, the routine selection model to the profile updated using the response to determine the plurality of performance metric for the corresponding plurality of routines, and

select the second routine from the plurality of performance metrics based on the plurality of performance metrics determined from applying the routine selection module.

14. The system of claim 10 , wherein the at least one server is further configured to:

rank the plurality of routines based on a comparison of the corresponding plurality of performance metrics each indicating the degree of effectiveness of the corresponding action in addressing the condition associated with the user;

select the first routine from the plurality of routines based on the ranking of the plurality of routines by the corresponding plurality of performance metrics; and

transmit the first instructions to cause the remote computing device to present the first prompt for the user to perform the first action specified by the first routine selected from the ranking.

15. The system of claim 10 , wherein the at least one server is further configured to:

identify, responsive to receiving the data identifying a time at which to provide one of the plurality of routines, at least one of a time of day corresponding to a time, an environmental factor affecting the user at the time, a type of condition to be addressed, a behavior factor relating to the user at the time, or a location of the user at the time; and

select the first routine from the plurality of routines based on at least one of the time of day, the environmental factor, the type of condition, the behavior factor, or the location of the user; and

transmit the first instructions to present the first prompt for the user to perform the first action specified by the first routine selected based on at least one of the time of day, the environmental factor, the type of condition, the behavior factor, or the location of the user.

16. The system of claim 10 , wherein the at least one server is further configured to select the second routine from the plurality of routines to provide at a time based on at least one of a time of day corresponding to the time, a routine type of the first routine previously provided to the user, an environmental factor affecting the user at the time, a type of the condition to be addressed, a behavioral factor relating to the user at the time, or a location of the user at the time.

17. The system of claim 10 , wherein the at least one server is further configured to:

provide, prior to receiving the data, instructions to the remote computing device to cause the remote computing device to present a third prompt for the user to input information for the profile;

identify the condition associated with the user to be addressed from the information input via the third prompt, the condition including at least one of smoking, diet, exercise, hygiene, or psychosis; and

determine the plurality of performance metrics for the corresponding plurality of routines based on the input information, and

generate the profile using the condition and the plurality of metrics determined from the input information.

18. The system of claim 10 , wherein the at least one server is further configured to:

provide instructions to the remote computing device to cause the remote computing device to present a third prompt for the user to input an indication of success or failure in addressing the condition by performing the first action specified by the first routine, and

update the performance metric for the first routine based on the indication of success or failure inputted via the third prompt.

19. A non-transitory computer readable storage medium having computer executable instructions stored thereon, which when executed by one or more processors, causes the one or more processors to:

maintain a profile associated with a user of an application executing on a remote computing device, the profile identifying a plurality of performance metrics for a corresponding plurality of routines specifying actions performed by the user, each performance metric of the plurality of performance metrics indicating a degree of efficacy of a corresponding action in addressing a condition associated with the user;

transmit, responsive to receiving data from the application of the remote computing device, first instructions to the remote computing device to cause the remote computing device to present a first prompt for the user to perform a first action specified by a first routine;

receive, from the remote computing device, a response relating to the first action specified by the first routine;

log, on an activity log for the user associated with the profile, an entry identifying the first routine, the response relating to the first action specified by the first routine, and a timestamp corresponding to a time at which the response was transmitted or received;

update, using the entry identifying the first routine, a performance metric of the first routine identified in the profile;

select, using the updated performance metric of the first routine and a second performance metric of a second routine specifying a second action, the second routine to provide to the remote computing device responsive to receiving subsequent data from the application of the remote computing device; and

transmit second instructions to the remote computing device to cause the remote computing device to present a second prompt for the user to perform the second action specified by the second routine.

Assignments (3)
RELEASE OF SECURITY INTEREST Recorded Apr 25, 2022
From: ANKURA TRUST COMPANY, LLC
To: CLICK THERAPEUTICS, INC.
Reel/Frame 059702/0407 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Nov 20, 2020
From: CLICK THERAPEUTICS, INC.
To: ANKURA TRUST COMPANY, LLC, AS COLLATERAL AGENT
Reel/Frame 054486/0306 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 7, 2020
From: GAO, VICTOR; KLEIN, DAVID BENSHOOF
To: CLICK THERAPEUTICS, INC.
Reel/Frame 051752/0727 →
Continuity (4)
Continuation 16544575 · Aug 19, 2019
Continuation 15348777 · Nov 10, 2016
Provisional Application 62253470 · Nov 10, 2015
Related Publication 20200106854A1 · Apr 2, 2020
Cited By (1)
US 12,236,451