# US 11,030,272 B1 · System for automating the creation and evaluation of website variations to improve user engagement

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

- Number: US 11,030,272 B1
- Document ID: US11030272B1
- Status: Granted
- Kind: B1
- Application number: 16/571,346
- Filed: 2019-09-16
- Granted: 2021-06-08
- Earliest claimed: 2019-01-03
- Assignees: Capital One Services, LLC
- Applicants: Capital One Services, LLC
- Inventors: Austin Walters; Jeremy Goodsitt; Ahn Truong; Reza Farivar; Mark Watson; Fardin Abdi Taghi Abad
- Web page: https://patentgrep.com/patent/US11030272B1

## CPC

- G06F 16/9577: {Optimising the visualization of content, e.g. distillation of HTML documents}
- G06F 8/22: {Procedural}
- G06F 8/38: for implementing user interfaces
- G06F 8/77: Software metrics
- G06F 11/3438: {monitoring of user actions (tracking the activity of the user H04L67/535)}
- G06F 11/3672: {Test management}
- G06F 11/3684: {for test design, e.g. generating new test cases}
- G06F 11/3692: {for test results analysis}
- G06F 16/9535: Search customisation based on user profiles and personalisation
- G06F 16/9536: Search customisation based on social or collaborative filtering
- G06F 16/958: Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
- G06N 3/126: Evolutionary algorithms, e.g. genetic algorithms or genetic programming
- G06F 11/3419: {by assessing time}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS

## Abstract

Described is a system (and method) for automating the process of generating variations of a website that may be continually evaluated to improve a user interaction flow. The process may be based on a genetic algorithm that creates improving generations of websites. For example, the system may automate the creation of different layouts for a website and evaluate the effectiveness of each layout based on a particular user interaction goal. The most effective (e.g., top performing) layouts may be determined and then “bred” as part of an iterative improvement process.

## Claims

### Claim 1

A method for automatically generating variations of a website, the method comprising:
determining a performance metric for each website of a set of websites, the performance metric reflecting one or more user interactions with each website;
wherein set of websites that include one or more variations of a website layout, each variation of the website layout including a different value provided for an element defined within source code of the set of websites, the different values selected from an initial set of values;
wherein the performance metric includes an amount of time for a user to perform an action on the website;
ranking websites based on the performance metrics for the set of websites;
wherein ranking websites based on the performance metrics includes ranking each website from a least amount of time for the user to perform the action to a greatest amount of time for the user to perform the action;
identifying one or more websites from the set of websites satisfying a threshold performance metric;
wherein identifying one or more websites from the set of websites based on the determined performance metric includes identifying one or more highest ranking websites within a predetermined number of highest ranking websites or a predetermined percentage of highest ranking websites; and
publishing a subsequent generation of websites by updating the source code of the set of websites with one or more subsequent values selected from the one or more websites.

### Claim 2 (depends on 1)

The method of claim 1, wherein selecting the subsequent values includes randomly selecting values from amongst the values provided for the element of the identified web sites.

### Claim 3 (depends on 1)

The method of claim 1, wherein the element includes a CSS (Cascading Style Sheet) element.

### Claim 4 (depends on 3)

The method of claim 3, wherein the values provided for the element define a color, alignment, text, or text size associated with the element.

### Claim 5 (depends on 1)

The method of claim 1, wherein
the performance metric includes whether a user performs a particular action on the website, and
identifying one or more websites from the set of websites based on the determined performance metric includes identifying one or more websites in which the user performs the particular action.

### Claim 6 (depends on 1)

The method of claim 1, further comprising publishing each website of the set of websites to a subset of users based at least in part on user demographics, user account information, or both.

### Claim 7 (depends on 1)

The method of claim 1, wherein the action comprises one or more interactions with respective one or more elements of each the one or more variations of the website layout.

### Claim 8 (depends on 1)

The method of claim 1, further comprising updating the source code of the set of web sites with one or more subsequent values selected from each respective set of one or more web sites;
wherein each respective set of one or more websites from the set of websites are identified for each of a respective threshold performance metric.

### Claim 9 (depends on 1)

The method of claim 1, wherein generating the subsequent values further includes:
reassigning, based on a predetermined percentage, one or more of the subsequent values with a random value selected from amongst the initial set of values.

### Claim 10 (depends on 1)

The method of claim 1, further comprising:
determining a performance weighting for each identified website based on a ranking of the performance metric of each identified website; and
wherein selecting the subsequent values includes selecting values from amongst the values provided for the element of the identified websites using a probability based on the performance weighting.

### Claim 11 (depends on 1)

The method of claim 1, further comprising:
receiving user interaction data for each website of the set of websites; and
parsing the source code of the identified websites to determine the values provided for the element of the identified websites.

### Claim 12 (depends on 1)

The method of claim 1, wherein the steps of determining, identifying, generating, and publishing the subsequent generation of websites are repeated one or more times for each subsequent generation of websites.

### Claim 13 (depends on 1)

The method of claim 1, further comprising mapping changes between the initial set of values and the subsequent values for a testing configuration file.

### Claim 14

A system for automatically generating variations of a website, comprising:
one or more processors; and
a memory coupled to the one or more processors, the memory storing instructions, which when executed by the one or more processors, cause the one or more processors to perform operations comprising:
determining a performance metric for each website of the set of websites;
wherein set of websites that include one or more variations of a website layout, each variation of the website layout including a different value provided for an element defined within source code of the set of websites, the different values selected from an initial set of values;
wherein determining the performance metric for each website of the set of websites includes measuring an amount of time for a user to perform an action on the website;
ranking the set of websites based on the determined performance metric;
wherein ranking the set of websites based on the determined performance metric includes ranking each website from a least amount of time for the user to perform the action to a greatest amount of time for the user to perform the action;
identifying one or more websites satisfying a threshold performance metric; and
publishing a subsequent generation of websites by updating the source code of the set of websites with one or more subsequent values selected from the one or more web sites.

### Claim 15 (depends on 14)

The system of claim 14, further comprising publishing each website of the set of websites to a subset of users based at least in part on user demographics, user account information, or both.

### Claim 16 (depends on 14)

The system of claim 14, wherein selecting the subsequent values includes randomly selecting values from amongst the values provided for the element of the identified web sites.

### Claim 17

A non-transitory computer-readable medium storing instructions which, when executed by one or more processors of a system, cause the system to perform operations comprising:
determining a performance metric for each website of a set of websites, the performance metric reflecting one or more user interactions with the website;
wherein set of websites that include one or more variations of a website layout, each variation of the website layout including a different value provided for an element defined within source code of the set of websites, the different values selected from an initial set of values;
wherein the performance metric includes an amount of time for a user to perform an action on each website;
identifying one or more websites from the set of websites satisfying a threshold performance metric;
wherein identifying one or more websites from the set of websites includes:
i) ranking each website of the set of websites from a least amount of time for the user to perform the action to a greatest amount of time for the user to perform the action; and
ii) identifying one or more highest ranking websites within a predetermined number of highest ranking websites or a predetermined percentage of highest ranking websites; and
publishing a subsequent generation of websites by updating the source code of the set of websites with one or more subsequent values selected from the one or more websites.

### Claim 18 (depends on 17)

The non-transitory computer-readable medium of claim 17, wherein the values provided for the element define a color, alignment, text, or text size associated with the element.

### Claim 19 (depends on 17)

The non-transitory computer-readable medium of claim 17, further comprising publishing each web site of the set of web sites to a subset of users based at least in part on user demographics, user account information, or both.

### Claim 20 (depends on 17)

The non-transitory computer-readable medium of claim 17, wherein randomly selecting the subsequent values further includes:
reassigning, based on a predetermined percentage, one or more of the subsequent values with a random value selected from amongst the initial set of values.
