IP Library Granted Patent US 12,373,705
Granted Patent B2
US 12,373,705 · App. 17/433,724 · Granted Jul 29, 2025

Method, system, and computer program product for controlling genetic learning for predictive models using predefined strategies

Inventors: Theodore David Harris (San Francisco, CA); Tatiana Korolevskaya (Mountain View, CA); Yue Li (Sunnyvale, CA); Craig O'Connell (Foster City, CA)
Assignee: Visa International Service Association
G06N3/126G06N5/04
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,373,705
App. No.
17/433,724
Granted
Jul 29, 2025
Kind
B2
Abstract

Methods for controlling genetic learning for predictive models using predefined strategies may include, for each of a plurality of agents, selecting a type of predictive model. A strategy may be selected from predefined strategies. Candidate genomes may be generated and may include a plurality of genes. Each gene may be associated with a feature of the agent predictive model. A fit of each candidate genome to the agent strategy may be determined. A candidate genome may be selected based on the fit. For each of a plurality of epochs, a plurality of training iterations may be performed for each agent. A fitness of each agent predictive model may be determined. A subset of agents with a highest fitness may be determined. For each agent of the subset, at least one new agent may be generated. The genomes of the new agents may be merged with some genomes of the subset.

Claims (185)

1. A method for controlling genetic learning for predictive models using predefined strategies, comprising:

loading, with at least one processor, a master template comprising a number of agents of a plurality of agents, wherein the master template further comprises goal data associated with at least one condition;

for each agent of the plurality of agents:

selecting, with at least one processor, a type of predictive model from a plurality of types of predictive models as an agent predictive model;

selecting, with at least one processor, a strategy from a plurality of predefined strategies as an agent strategy;

generating, with at least one processor, a plurality of candidate genomes, each candidate genome comprising a plurality of genes, each gene associated with a respective feature of the agent predictive model;

determining, with at least one processor, a fit of each candidate genome of the plurality of candidate genomes to the agent strategy; and

selecting, with at least one processor, a candidate genome from the plurality of candidate genomes as the agent genome based on the fit of the candidate genome;

for each epoch of a plurality of epochs:

for each agent of the plurality of agents:

performing, with at least one processor, a plurality of training iterations based on the agent predictive model and the agent genome; and

determining, with at least one processor, a fitness of the agent predictive model after the plurality of training iterations;

determining, with at least one processor, a first subset of agents with a highest fitness;

for each agent of the first subset of agents:

generating, with at least one processor, at least one new agent to add to the plurality of agents; and

merging, with at least one processor, a genome of the at least one new agent with the agent genome of at least one agent of the first subset of agents; and

determining, with at least one processor, whether the at least one agent predictive model of the plurality of agents satisfies the at least one condition associated with the goal data; and

terminating, with at least one processor, the plurality of epochs based on determining the at least one agent predictive model of the plurality of agents satisfies the at least one condition associated with the goal data.

2. The method of claim 1 , wherein the master template further comprises a plurality of agent templates, wherein selecting the type of predictive model comprises selecting, with at least one processor, the type of predictive model based on a subset of the plurality of types of predictive models associated with a respective agent template of the plurality of agent templates for each agent.

3. The method of claim 1 , further comprising, for each epoch of the plurality of epochs:

determining, with at least one processor, a second subset of agents with a lowest fitness.

4. The method of claim 3 , further comprising, for each epoch of the plurality of epochs:

filtering, with at least one processor, the at least one new agent based on the second subset of agents.

5. The method of claim 1 , wherein generating the at least one new agent comprises generating, with at least one processor, at least three new agents.

6. A method for controlling genetic learning for predictive models using predefined strategies, comprising:

loading, with at least one processor, a master template comprising a number of agents of a plurality of agents, wherein the master template further comprises goal data associated with at least one condition;

for each agent of the plurality of agents:

selecting, with at least one processor, a type of predictive model from a plurality of types of predictive models as an agent predictive model;

selecting, with at least one processor, a strategy from a plurality of predefined strategies as an agent strategy;

generating, with at least one processor, a plurality of candidate genomes, each candidate genome comprising a plurality of genes, each gene associated with a respective feature of the agent predictive model;

determining, with at least one processor, a fit of each candidate genome of the plurality of candidate genomes to the agent strategy; and

selecting, with at least one processor, a candidate genome from the plurality of candidate genomes as the agent genome based on the fit of the candidate genome;

for each epoch of a plurality of epochs:

for each agent of the plurality of agents:

performing, with at least one processor, a plurality of training iterations based on the agent predictive model and the agent genome; and

determining, with at least one processor, a fitness of the agent predictive model after the plurality of training iterations;

determining, with at least one processor, a first subset of agents with a highest fitness;

for each agent of the first subset of agents:

generating, with at least one processor, at least one new agent to add to the plurality of agents; and

merging, with at least one processor, a genome of the at least one new agent with the agent genome of at least one agent of the first subset of agents,

wherein the master template further comprises a plurality of agent templates, wherein selecting the type of predictive model comprises selecting, with at least one processor, the type of predictive model based on a subset of the plurality of types of predictive models associated with a respective agent template of the plurality of agent templates for each agent,

wherein each agent template of the plurality of agent templates further comprises at least one predictive model template, wherein selecting the type of predictive model comprises selecting, with at least one processor, one of the at least one predictive model template based on the respective agent template for each agent.

7. A method for controlling genetic learning for predictive models using predefined strategies, comprising:

for each agent of a plurality of agents:

selecting, with at least one processor, a type of predictive model from a plurality of types of predictive models as an agent predictive model;

selecting, with at least one processor, a strategy from a plurality of predefined strategies as an agent strategy;

generating, with at least one processor, a plurality of candidate genomes, each candidate genome comprising a plurality of genes, each gene associated with a respective feature of the agent predictive model;

determining, with at least one processor, a fit of each candidate genome of the plurality of candidate genomes to the agent strategy; and

selecting, with at least one processor, a candidate genome from the plurality of candidate genomes as the agent genome based on the fit of the candidate genome;

for each epoch of a plurality of epochs:

for each agent of the plurality of agents:

performing, with at least one processor, a plurality of training iterations based on the agent predictive model and the agent genome; and

determining, with at least one processor, a fitness of the agent predictive model after the plurality of training iterations;

determining, with at least one processor, a first subset of agents with a highest fitness;

for each agent of the first subset of agents:

generating, with at least one processor, at least one new agent to add to the plurality of agents; and

merging, with at least one processor, a genome of the at least one new agent with the agent genome of at least one agent of the first subset of agents,

wherein generating the at least one new agent comprises generating, with at least one processor, at least three new agents,

wherein the at least three new agents comprise a first new agent, a second new agent, and a third new agent, and wherein merging the genome of the at least one new agent with the agent genome of at least one agent of the first subset of agents comprises:

merging, with at least one processor, the genome of the first new agent with the agent genome of a first agent of the first subset of agents having a most different strategy;

merging, with at least one processor, the genome of the second new agent with the agent genome of a second agent of the first subset of agents having a highest fitness; and

merging, with at least one processor, the genome of the third new agent with the agent genome of a third agent of the first subset of agents having a most similar winning strategy.

8. A system for controlling genetic learning for predictive models using predefined strategies, comprising:

at least one processor; and

at least one non-transitory computer-readable medium including one or more instructions that, when executed by at least one processor, cause the at least one processor to:

load a master template comprising a number of agents of a plurality of agents, wherein the master template further comprises goal data associated with at least one condition;

for each agent of the plurality of agents:

select a type of predictive model from a plurality of types of predictive models as an agent predictive model;

select a strategy from a plurality of predefined strategies as an agent strategy;

generate a plurality of candidate genomes, each genome comprising a plurality of genes, each gene associated with a respective feature of the agent predictive model;

determine a fit of each candidate genome of the plurality of candidate genomes to the agent strategy; and

select a candidate genome from the plurality of candidate genomes as the agent genome based on the fit of the candidate genome;

for each epoch of a plurality of epochs:

for each agent of the plurality of agents:

perform a plurality of training iterations based on the agent predictive model and the agent genome; and

determine a fitness of the agent predictive model after the plurality of training iterations;

determine a first subset of agents with a highest fitness;

for each agent of the first subset of agents:

generate at least one new agent to add to the plurality of agents; and

merge a genome of the at least one new agent with the agent genome of at least one agent of the first subset of agents; and

determine whether the at least one agent predictive model of the plurality of agents satisfies the at least one condition associated with the goal data; and

terminate the plurality of epochs based on determining the at least one agent predictive model of the plurality of agents satisfies the at least one condition associated with the goal data.

9. The system of claim 8 , wherein the master template further comprises a plurality of agent templates, wherein selecting the type of predictive model comprises selecting the type of predictive model based on a subset of the plurality of types of predictive models associated with a respective agent template of the plurality of agent templates for each agent.

10. The system of claim 8 , wherein the one or more instructions, when executed by the at least one processor, further cause the at least one processor to, for each epoch of the plurality of epochs:

determine a second subset of agents with a lowest fitness.

11. The system of claim 10 , wherein the one or more instructions, when executed by the at least one processor, further cause the at least one processor to, for each epoch of the plurality of epochs:

filter the at least one new agent based on the second subset of agents.

12. The system of claim 8 , wherein generating the at least one new agent comprises generating at least three new agents.

13. A system for controlling genetic learning for predictive models using predefined strategies, comprising:

at least one processor; and

at least one non-transitory computer-readable medium including one or more instructions that, when executed by at least one processor, cause the at least one processor to:

load a master template comprising a number of agents of a plurality of agents;

for each agent of the plurality of agents:

select a type of predictive model from a plurality of types of predictive models as an agent predictive model;

select a strategy from a plurality of predefined strategies as an agent strategy;

generate a plurality of candidate genomes, each genome comprising a plurality of genes, each gene associated with a respective feature of the agent predictive model;

determine a fit of each candidate genome of the plurality of candidate genomes to the agent strategy; and

select a candidate genome from the plurality of candidate genomes as the agent genome based on the fit of the candidate genome;

for each epoch of a plurality of epochs:

for each agent of the plurality of agents:

perform a plurality of training iterations based on the agent predictive model and the agent genome; and

determine a fitness of the agent predictive model after the plurality of training iterations;

determine a first subset of agents with a highest fitness;

for each agent of the first subset of agents:

generate at least one new agent to add to the plurality of agents; and

merge a genome of the at least one new agent with the agent genome of at least one agent of the first subset of agents,

wherein the master template further comprises a plurality of agent templates, wherein selecting the type of predictive model comprises selecting the type of predictive model based on a subset of the plurality of types of predictive models associated with a respective agent template of the plurality of agent templates for each agent,

wherein each agent template of the plurality of agent templates further comprises at least one predictive model template, wherein selecting the type of predictive model comprises selecting one of the at least one predictive model template based on the respective agent template for each agent.

14. A system for controlling genetic learning for predictive models using predefined strategies, comprising:

at least one processor; and

at least one non-transitory computer-readable medium including one or more instructions that, when executed by at least one processor, cause the at least one processor to:

for each agent of a plurality of agents:

select a type of predictive model from a plurality of types of predictive models as an agent predictive model;

select a strategy from a plurality of predefined strategies as an agent strategy;

generate a plurality of candidate genomes, each genome comprising a plurality of genes, each gene associated with a respective feature of the agent predictive model;

determine a fit of each candidate genome of the plurality of candidate genomes to the agent strategy; and

select a candidate genome from the plurality of candidate genomes as the agent genome based on the fit of the candidate genome;

for each epoch of a plurality of epochs:

for each agent of the plurality of agents:

perform a plurality of training iterations based on the agent predictive model and the agent genome; and

determine a fitness of the agent predictive model after the plurality of training iterations;

determine a first subset of agents with a highest fitness;

for each agent of the first subset of agents:

generate at least one new agent to add to the plurality of agents; and

merge a genome of the at least one new agent with the agent genome of at least one agent of the first subset of agents,

wherein generating the at least one new agent comprises generating at least three new agents,

wherein the at least three new agents comprise a first new agent, a second new agent, and a third new agent, and wherein merging the genome of the at least one new agent with the agent genome of at least one agent of the first subset of agents comprises:

merging the genome of the first new agent with the agent genome of a first agent of the first subset of agents having a most different strategy;

merging the genome of the second new agent with the agent genome of a second agent of the first subset of agents having a highest fitness; and

merging the genome of the third new agent with the agent genome of a third agent of the first subset of agents having a most similar winning strategy.

15. A computer program product for controlling genetic learning for predictive models using predefined strategies, the computer program product comprising at least one non-transitory computer-readable medium including one or more instructions that, when executed by at least one processor, cause the at least one processor to:

load a master template comprising a number of agents of a plurality of agents, wherein the master template further comprises goal data associated with at least one condition;

for each agent of the plurality of agents:

select a type of predictive model from a plurality of types of predictive models as an agent predictive model;

select a strategy from a plurality of predefined strategies as an agent strategy;

generate a plurality of candidate genomes, each genome comprising a plurality of genes, each gene associated with a respective feature of the agent predictive model;

determine a fit of each candidate genome of the plurality of candidate genomes to the agent strategy; and

select a candidate genome from the plurality of candidate genomes as the agent genome based on the fit of the candidate genome;

for each epoch of a plurality of epochs:

for each agent of the plurality of agents:

perform a plurality of training iterations based on the agent predictive model and the agent genome; and

determine a fitness of the agent predictive model after the plurality of training iterations;

determine a first subset of agents with a highest fitness;

for each agent of the first subset of agents:

generate at least one new agent to add to the plurality of agents; and

merge a genome of the at least one new agent with the agent genome of at least one agent of the first subset of agents; and

determine whether the at least one agent predictive model of the plurality of agents satisfies the at least one condition associated with the goal data; and

terminate the plurality of epochs based on determining the at least one agent predictive model of the plurality of agents satisfies the at least one condition associated with the goal data.

16. A computer program product for controlling genetic learning for predictive models using predefined strategies, the computer program product comprising at least one non-transitory computer-readable medium including one or more instructions that, when executed by at least one processor, cause the at least one processor to:

for each agent of a plurality of agents:

select a type of predictive model from a plurality of types of predictive models as an agent predictive model;

select a strategy from a plurality of predefined strategies as an agent strategy;

generate a plurality of candidate genomes, each genome comprising a plurality of genes, each gene associated with a respective feature of the agent predictive model;

determine a fit of each candidate genome of the plurality of candidate genomes to the agent strategy; and

select a candidate genome from the plurality of candidate genomes as the agent genome based on the fit of the candidate genome;

for each epoch of a plurality of epochs:

for each agent of the plurality of agents:

perform a plurality of training iterations based on the agent predictive model and the agent genome; and

determine a fitness of the agent predictive model after the plurality of training iterations;

determine a first subset of agents with a highest fitness;

for each agent of the first subset of agents:

generate at least one new agent to add to the plurality of agents; and

merge a genome of the at least one new agent with the agent genome of at least one agent of the first subset of agents,

wherein generating the at least one new agent comprises generating at least three new agents comprising a first new agent, a second new agent, and a third new agent, and wherein merging the genome of the at least one new agent with the agent genome of at least one agent of the first subset of agents comprises:

merging the genome of the first new agent with the agent genome of a first agent of the first subset of agents having a most different strategy;

merging the genome of the second new agent with the agent genome of a second agent of the first subset of agents having a highest fitness; and

merging the genome of the third new agent with the agent genome of a third agent of the first subset of agents having a most similar winning strategy.

17. A computer program product for controlling genetic learning for predictive models using predefined strategies, the computer program product comprising at least one non-transitory computer-readable medium including one or more instructions that, when executed by at least one processor, cause the at least one processor to:

load a master template comprising a number of agents of a plurality of agents, wherein the master template further comprises goal data associated with at least one condition;

for each agent of the plurality of agents:

select a type of predictive model from a plurality of types of predictive models as an agent predictive model;

select a strategy from a plurality of predefined strategies as an agent strategy;

generate a plurality of candidate genomes, each genome comprising a plurality of genes, each gene associated with a respective feature of the agent predictive model;

determine a fit of each candidate genome of the plurality of candidate genomes to the agent strategy; and

select a candidate genome from the plurality of candidate genomes as the agent genome based on the fit of the candidate genome;

for each epoch of a plurality of epochs:

for each agent of the plurality of agents:

perform a plurality of training iterations based on the agent predictive model and the agent genome; and

determine a fitness of the agent predictive model after the plurality of training iterations;

determine a first subset of agents with a highest fitness;

for each agent of the first subset of agents:

generate at least one new agent to add to the plurality of agents; and

merge a genome of the at least one new agent with the agent genome of at least one agent of the first subset of agents,

wherein the master template further comprises a plurality of agent templates, wherein selecting the type of predictive model comprises selecting the type of predictive model based on a subset of the plurality of types of predictive models associated with a respective agent template of the plurality of agent templates for each agent,

wherein each agent template of the plurality of agent templates further comprises at least one predictive model template, wherein selecting the type of predictive model comprises selecting one of the at least one predictive model template based on the respective agent template for each agent.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 25, 2021
From: HARRIS, THEODORE DAVID; KOROLEVSKAYA, TATIANA; LI, YUE; O'CONNELL, CRAIG
To: VISA INTERNATIONAL SERVICE ASSOCIATION
Reel/Frame 057283/0364 →
Continuity (1)
Related Publication 20220051108A1 · Feb 17, 2022
References Cited (16)
US 10635978B2 · Andoni · 2020 [cited by examiner]
US 10657447B1 · McDonnell · 2020 [cited by examiner]
US 20040254901A1 · Bonabeau · 2004 [cited by examiner]
US 20050131790A1 · Benzschawel et al. · 2005 [cited by applicant]
US 20070005522A1 · Wren · 2007 [cited by examiner]
US 20080077544A1 · Sureka · 2008 [cited by examiner]
US 20080154808A1 · Grieco · 2008 [cited by examiner]
US 20080208548A1 · Metzger et al. · 2008 [cited by applicant]
US 20090070281A1 · Solomon · 2009 [cited by examiner]
US 20170220943A1 · Duncan · 2017 [cited by examiner]
US 20170228639A1 · Hara et al. · 2017 [cited by applicant]
US 20180253649A1 · Miikkulainen · 2018 [cited by examiner]
US 20180300630A1 · Andoni · 2018 [cited by examiner]
US 20180314938A1 · Andoni · 2018 [cited by examiner]
US 20210042661A1 · St-Onge · 2021 [cited by examiner]
Oron et al “A new crossover mechanism for genetic algorithm with rank-based selection method,” 2018 5th International Conference on Business and Industrial Research (ICBIR) Bangkok, Thailand, 2018, pp. 83-88, doi: 10.11… [cited by examiner]