# US 12,111,824 B2 · Multi bot architecture for automated data processing

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

- Number: US 12,111,824 B2
- Document ID: US12111824B2
- Status: Granted
- Kind: B2
- Application number: 17/467,704
- Filed: 2021-09-07
- Published: 2022-03-24
- Granted: 2024-10-08
- Earliest claimed: 2020-09-18
- Assignees: Synchrony Bank
- Applicants: Synchrony Bank
- Inventors: Vanitha Vijayan; Kristen Scatola; Edward Zhang
- Web page: https://patentgrep.com/patent/US12111824B2

## CPC

- G06F 16/2386: {Bulk updating operations (data conversion details G06F16/258)}
- H04L 67/10: in which an application is distributed across nodes in the network (software deployment G06F8/60; multiprogramming arrangements G06F9/46)
- G06F 9/466: {Transaction processing}
- G06F 9/5027: {the resource being a machine, e.g. CPUs, Servers, Terminals}
- G06F 9/54: Interprogram communication
- H04L 67/62: Establishing a time schedule for servicing the requests
- 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)

## Abstract

The present disclosure is directed to a system of software robots executed on a plurality of network clients for a secure and automated processing of time sensitive data. In one aspect, a method includes receiving a data set for processing, processing the data set being subject to a time limit; splitting the data set into a plurality of data subsets; assigning each of the plurality of data subsets to one a plurality of network clients each of which is configured to execute at least one software bot to process one or more data subsets of the plurality of data subsets assigned thereto; configuring the plurality of network clients to simultaneously process the one or more data subsets assigned thereto such that the data set is processed within the time limit; configuring each of the plurality of network clients to provide an update on processing status of each of the one or more data subsets assigned thereto; and generating a summary report indicative of a summary of the data set processed.

## Claims

### Claim 1

A method comprising:
receiving a data set for processing;
determining a time limit for the data set, wherein the time limit is associated with an amount of time that data in the data set remains as valid data;
determining a size of the data set;
determining a set of software bots, wherein a size of the set of software bots is determined based on the time limit and the size of the data set;
splitting the data set into a plurality of data subsets;
generating a set of directories associated with a plurality of network clients, wherein the plurality of network clients are configured to execute the set of software bots to process the plurality of data subsets;
associating the plurality of data subsets to the set of directories, wherein associating the plurality of data subsets includes receiving user input to trigger a network client to obtain access to a corresponding data subset within the time limit;
executing the set of software bots on the plurality of network clients to simultaneously process the plurality of data subsets within the time limit;
configuring the plurality of network clients to provide an update on a processing status for the plurality of data subsets;
performing a correction process to fix a processing error associated with a data subset, wherein the correction process includes updating code of a corresponding software bot; and
generating a set of-summary reports, wherein a summary report of the set indicates a summary of the data subset associated with a corresponding directory and the correction process.

### Claim 2 (depends on 1)

The method of claim 1, wherein the splitting is based on a size of the data set and a maximum size of a data subset of the plurality of data subsets.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
determining a number of the plurality of network clients for processing the plurality of data subsets.

### Claim 4 (depends on 1)

The method of claim 1, wherein a number of the plurality of network clients is determined based on a size of the data set, the time limit and an average processing time for available network clients.

### Claim 5 (depends on 1)

The method of claim 1, wherein the update is a notification from one of the plurality of network clients indicative of a processing error for one of the plurality of data subsets.

### Claim 6

A controller comprising:
one or more memories configured to store computer-readable instructions; and
one or more processors configured to execute the computer-readable instructions to:
receive a data set for processing;
determine a time limit for the data set, wherein the time limit is associated with an amount of time that data in the data set remains as valid data;
determine a size of the data set;
determine a set of software bots, wherein a size of the set of software bots is determined based on the time limit and the size of the data set;
split the data set into a plurality of data subsets;
generate a set of directories associated with a plurality of network clients, wherein the plurality of network clients are configured to execute the set of software bots to process the plurality of data subsets;
associate the plurality of data subsets to the set of directories, wherein associating the plurality of data subsets includes receiving user input to trigger a network client to obtain access to a corresponding data subset of the plurality of data subsets within the time limit;
execute the set of software bots on the plurality of network clients to simultaneously process the plurality of data subsets within the time limit;
configure the plurality of network clients to provide an update on a processing status for the plurality of data subsets;
perform a correction process to fix a processing error associated with a data subset, wherein the correction process includes updating code of a corresponding software bot; and
generate a set of-summary reports, wherein a summary report of the set indicates a summary of the data subset associated with a corresponding directory and the correction process.

### Claim 7 (depends on 6)

The controller of claim 6, wherein the one or more processors are configured to execute the computer-readable instructions to split the data set based on a size of the data set and a maximum size of a data subset of the plurality of data subsets.

### Claim 8 (depends on 6)

The controller of claim 6, wherein the one or more processors are further configured to execute the computer-readable instructions to determine a number of the plurality of network clients for processing the plurality of data subsets.

### Claim 9 (depends on 6)

The controller of claim 6, wherein a number of the plurality of network clients is determined based on a size of the data set, the time limit and an average processing time for available network clients.

### Claim 10 (depends on 6)

The controller of claim 6, wherein the update is a notification from one of the plurality of network clients indicative of a processing error for one of the plurality of data subsets.

### Claim 11

One or more non-transitory computer-readable media comprising computer-readable instructions, which when executed by one or more processors of a controller, cause the controller to:
receive a data set for processing;
determine a time limit for the data set, wherein the time limit is associated with an amount of time that data in the data set remains as valid data;
determine a size of the data set;
determine a set of software bots, wherein a size of the set of software bots is determined based on the time limit and the size of the data set;
split the data set into a plurality of data subsets;
generate a set of directories associated with a plurality of network clients, wherein the plurality of network clients are configured to execute the set of software bots to process the plurality of data subsets;
associate the plurality of data subsets to the set of directories, wherein associating the plurality of data subsets includes receiving user input to trigger a network client to obtain access to a corresponding data subset within the time limit;
execute the set of software bots on the plurality of network clients to simultaneously process the plurality of data subsets within the time limit;
configure the plurality of network clients to provide an update on a processing status for the plurality of data subsets;
perform a correction process to fix a processing error associated with a data subset, wherein the correction process includes updating code of a corresponding software bot; and
generate a set of-summary reports, wherein a summary report of the set indicates a summary of the data subset associated with a corresponding directory and the correction process.

### Claim 12 (depends on 11)

The one or more non-transitory computer-readable media of claim 11, wherein the execution of the computer-readable instructions by the one or more processors cause the controller to split the data set based on a size of the data set and a maximum size of a data subset of the plurality of data subsets.

### Claim 13 (depends on 11)

The one or more non-transitory computer-readable media of claim 11, wherein the execution of the computer-readable instructions by the one or more processors cause the controller to determine a number of the plurality of network clients for processing the plurality of data subsets.

### Claim 14 (depends on 11)

The one or more non-transitory computer-readable media of claim 11, wherein a number of the plurality of network clients is determined based on a size of the data set, the time limit and an average processing time for available network clients.

### Claim 15 (depends on 11)

The one or more non-transitory computer-readable media of claim 11, wherein the update is a notification from one of the plurality of network clients indicative of a processing error for one of the one or more plurality of data subsets.
