IP Library Patent Application 16051395
Patent Application
App. No. 16/051,395

METHOD OF ITERATIVE SCHEDULING AND SYSTEM OF THE SAME

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 None
App. No.
16/051,395
Abstract

A decision support engine for dynamically scheduling interactions between a first party and a second party includes: a processor and a memory coupled to the processor. The memory having stored therein instructions, that, when executed by the processor, cause the processor to: receive an inputted target file including a target number of first channel interactions and a target number of second channel interactions; receive an inputted date period; receive calendar data of the first party; distribute the first and second channel interactions over the date period; compare the date of a first one of the assigned first channel interactions with the corresponding date of the first party's calendar data, and when the calendar data indicates there is a conflict, shifting the first one of the assigned first channel interactions by one day and comparing the new date with the corresponding date of calendar data.

Claims (51)

1 . A decision support engine for dynamically scheduling interactions between a first party and a second party, the decision support engine being in communication with an external electronic device, the decision support engine comprising:

a processor; and

a memory coupled to the processor, the memory having stored therein instructions, that, when executed by the processor, cause the processor to:

receive an inputted target file comprising a target number of first channel interactions between the first and second parties and a target number of second channel interactions between the first and second parties, the target number of first channel interactions and the target number of second channel interactions being integer values;

receive an inputted date period;

receive calendar data of the first party;

distribute the first channel interactions over the date period by:

dividing an integer value of the date period by the integer value of the target number of first channel interactions to provide a days per first channel interaction value result; and

assigning a first channel interaction on every date of the date period that is an integer multiple of the days per first channel interaction value result;

distribute the second channel interactions over the date period by:

dividing the integer value of the date period by the integer value of the target number of second channel interactions to provide a days per second channel interaction value result; and

assigning a second channel interaction on every date of the date period that is an integer multiple of the days per second channel interaction value result;

compare the date of a first one of the assigned first channel interactions with the corresponding date of the first party's calendar data, and when the calendar data indicates there is a conflict, shifting the first one of the assigned first channel interactions by one day to a new date and comparing the new date of the assigned first one of the first channel interactions with the corresponding date of calendar data;

estimate availability of the second party on the date of the first one of the assigned first channel interactions based on prior scheduled interactions with the first party determined from the calendar data, and when it is determined that the first and second party have not previously interacted on a day of week corresponding to the date of the first one of the assigned first channel interactions, shifting the first one of the assigned first channel interactions by one day to a new date and estimating availability of the second party on the new date of the first one of the assigned first channel interactions; and

output the date or the new date of the first one of the assigned first channel interactions and a date of the first one of the assigned second channel interactions to the external electronic device.

2 . The decision support engine of claim 1 , wherein the date period comprises a calendar state date and a calendar end date.

3 . The decision support engine of claim 1 , wherein the date period comprises a calendar start date and a date range as an integer value.

4 . The decision support engine of claim 1 , wherein the first channel is in-person, and the second channel is e-mail.

5 . The decision support engine of claim 1 , wherein the calendar data of the first party is received from the external electronic device via the Internet.

6 . The decision support engine of claim 1 , comprising further instructions, that, when executed by the processor, cause the processor to:

receive location data of the first party;

receive location data of the second party; and

determine a linear distance between the first party and the second party based on the received location data of the first party and the received location data of the second party.

7 . The decision support engine of claim 6 , wherein the location data of the first party comprises latitude and longitude coordinates, and the location data of the second party comprises latitude and longitude coordinates.

8 . The decision support engine of claim 1 , comprising further instructions, that, when executed by the processor, cause the processor to:

determine whether the first one of one of the first channel interactions occurred;

when it is determined that the first one of one of the first channel interactions did not occur:

shift the first one of the first channel interactions by one day to a second new date and comparing the second new date of the first one of the first channel interactions with the corresponding date of calendar data; and

output the second new date of the first one of one of the first channel interactions to the external electronic device.

9 . The decision support engine of claim 8 , wherein the decision support engine determines the first one of one of the first channel interactions did not occur based on an input from the external electronic device.

10 . The decision support engine of claim 8 , wherein the decision support engine determines the first one of one of the first channel interactions did not occur based on location data received from the external electronic device.

11 . A decision support engine for dynamically scheduling interactions between a first party and a plurality of third parties, the decision support engine comprising:

a processor; and

a memory coupled to the processor, the memory having stored therein instructions, that, when executed by the processor, cause the processor to:

receive a target file comprising a target number of interactions between the first party each of the third parties, the target number of interactions between the first party and each of the third parties being an integer value;

receive a date range as an integer value and a start date corresponding to a calendar data;

receive calendar data of the first party;

receive location data of the first party;

receive location data of each of the third parties;

distribute the interactions over a date period, the date period being determined from the date range and the start date, by:

dividing the integer value of the date range by the integer value of the target number of interactions for each of the third parties to provide a days per interaction value result for each of the third parties;

assigning an interaction on every date of the date period that is an integer multiple of the days per interaction value result for each of the third parties;

when a plurality of interactions are assigned on a first date:

determining linear distances between the first party and each of the third parties having interactions on the first date;

assigning the interaction with the nearest of the third parties to the location of the first party to a first time slot on the first date;

determining linear distances between the location of the third party assigned to the first time slot and each of the remaining third parties having interactions on the first date; and

assigning the interaction with the nearest of the third parties to the third party assigned to the first time slot to a second time slot on the first date; and

output the assigned interactions during the date period to an electronic device from which the calendar data was received.

12 . The decision support engine of claim 11 , wherein the calendar data and the location data of the first party are received from the electronic device via the Internet.

13 . The decision support engine of claim 12 , wherein the assigned interactions are output to the electronic device via the Internet.

14 . The decision support engine of claim 11 , wherein the location data of the first party comprises latitude and longitude coordinates, and the location data of each of the third parties comprises latitude and longitude coordinates.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 3, 2025
From: AKTANA, INC.
To: PHARMAFORCEIQ, INC.
Reel/Frame 073482/0293 →
RELEASE OF SECURITY INTEREST Recorded Oct 23, 2025
From: CANADIAN IMPERIAL BANK OF COMMERCE
To: AKTANA, INC.
Reel/Frame 072660/0678 →
CORRECTIVE ASSIGNMENT TO CORRECT THE NAME OF RECEIVING PARTY PREVIOUSLY RECORDED ON REEL 047097 FRAME 0320. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jul 1, 2021
From: FLINT, ROBERT; HUANG, JIN; CHOY, DEREK; EHRLICH, DAVID
To: AKTANA, INC.
Reel/Frame 056750/0953 →
SECURITY INTEREST Recorded Jun 14, 2021
From: AKTANA, INC.; AKTANA INTERNATIONAL LLC
To: INNOVATUS LIFE SCIENCES LENDING FUND I, LP
Reel/Frame 056530/0967 →
SECURITY INTEREST Recorded Jul 23, 2019
From: AKTANA, INC.
To: CANADIAN IMPERIAL BANK OF COMMERCE
Reel/Frame 049828/0338 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 8, 2018
From: FLINT, ROBERT; HUANG, JIN; CHOY, DEREK; EHRLICH, DAVID
To: AKTANA
Reel/Frame 047097/0320 →