IP Library Granted Patent US 10,719,856
Granted Patent B2
US 10,719,856 · App. 15/378,359 · Granted Jul 21, 2020

Systems and methods for resolving advertisement placement conflicts

Inventor: Samuel Meyer (Boston, MA)
Assignee: ROVI GUIDES, INC.
G06Q30/0277G06Q30/0241G06Q30/0243
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,719,856
App. No.
15/378,359
Granted
Jul 21, 2020
Kind
B2
Abstract

Systems and methods are described herein for resolving advertisement placement conflicts. Specifically, a number of parameters may be entered into a system in order to distribute advertisements into advertisement slots. In many instances, a combination of these parameters causes a conflict in the system where all the parameters cannot be applied in order to place advertisements into advertisement slots. The conflict may be resolved by using an advertisement assignment model to determine which parameters may be relaxed in order to arrive at an optimal solution that violates a smallest number of parameters having the least priority. When such a solution is found, the advertisement assignment model may be modified and advertisements may be placed into advertisement slots based on the modified advertisement assignment model.

Claims (107)

1. A method for resolving advertisement placement conflicts, the method comprising:

receiving an advertisement assignment model that includes a plurality of parameters that define how a plurality of advertisements should be assigned to a plurality of advertisement slots;

simulating an assignment of the plurality of advertisements to the plurality of advertisement slots based on the plurality of parameters;

determining, based on the simulating, that there is a conflict that prevents assigning the plurality of advertisements to the plurality of advertisement slots without violating a parameter of the plurality of parameters;

in response to the determining, retrieving a respective parameter score for each parameter of the plurality of parameters, wherein each parameter score indicates an importance of the corresponding parameter;

calculating a total parameter score for the advertisement assignment model based on the retrieved parameter scores;

selecting at least one parameter to remove from the advertisement assignment model by:

generating a plurality of different configurations of the plurality of parameters by iteratively removing or modifying one or more parameters using a feasibility relaxation algorithm for mixed integer linear programs;

determining at least one conflict parameter whose removal from the advertisement assignment model causes the conflict to be resolved;

calculating a plurality of different total parameter scores based on the plurality of different configurations of the plurality of parameters in the advertisement assignment model, wherein each calculated different total parameter score is based on the removal from the advertisement assignment model, or modification within the advertisement model, of different ones of the at least one conflict parameter;

determining, based on the different total parameter scores, a first configuration of the plurality of parameters from the different configurations that violates the smallest number of parameters having the least priority, minimizes a change to the total parameter score and minimizes a number of conflict parameters removed from the advertisement assignment model;

generating for simultaneous display both the first configuration and an option that enables a user to choose different configurations of the plurality of configurations that resolve the conflict;

in response to a user selection of the option, generating for display the plurality of different configurations; and

in response to a user selection of one of the plurality of different configurations or the first configuration, modifying the advertisement assignment model according to the selected configuration; and

assigning the plurality of advertisements to the plurality of advertisement slots based on the modified advertisement assignment model.

2. The method of claim 1 , wherein retrieving the parameter score for each parameter of the plurality of parameters comprises:

generating a first subset of parameters in the plurality of parameters, wherein each parameter in the first subset of parameters has an associated user-defined parameter score and a system parameter score;

determining, for each parameter in the first subset of parameters, whether the system parameter score can be overridden by the user-defined parameter score;

generating a second subset of parameters that includes parameters from the first subset of parameters with system parameter scores that can be overridden;

generating a third subset of parameters that includes parameters from the first subset of parameters with system parameter scores that can not be overridden; and

retrieving user-defined parameter scores for the second subset and system parameter scores for the third subset.

3. The method of claim 1 , wherein determining, based on the different total parameter scores, the configuration of the plurality of parameters from the different configurations comprises executing a feasibility relaxation algorithm for mixed integer linear programs.

4. The method of claim 1 , wherein determining the at least one conflict parameter whose removal from the advertisement assignment model causes the conflict to be resolved comprises:

ranking each parameter of the plurality of parameters based on a respective parameter score, wherein the highest-ranked parameter is associated with a lowest parameter score and the lowest-ranked parameter is associated with the highest parameter score;

selecting a second plurality of parameters by removing the highest-ranked parameter from the plurality of parameters;

comparing the second plurality of parameters with parameters of each configuration of the different configurations;

determining, based on comparing the second plurality of parameters with parameters of each configuration of the different configurations, whether the second plurality of parameters matches any configuration of the different configurations; and

in response to determining that the second plurality of parameters matches a configuration of the different configurations, determining that the at least one conflict parameter is the highest-ranked parameter.

5. The method of claim 4 , further comprising:

in response to determining that the second plurality of parameters does not match any configuration of the different configurations, selecting a third plurality of parameters by removing the second highest-ranked parameter from the first plurality of parameters;

comparing the third plurality of parameters with parameters of each configuration of the different configurations;

determining, based on comparing the third plurality of parameters with parameters of each configuration of the different configurations, that the third plurality of parameters does not match any configuration of the different configurations;

comparing a fourth plurality of parameters with parameters of each of the different configurations, wherein the fourth plurality of parameters comprises the first plurality of parameters without both the highest-ranked parameter and the second highest-ranked parameter; and

in response to determining that parameters of any configuration of the different configurations matches the fourth plurality of parameters, determining that the at least one conflict parameter includes the highest-ranked parameter and the second highest-ranked parameter.

6. The method of claim 1 , wherein determining the configuration of the plurality of parameters from the different configurations that minimizes the change to the total parameter score and minimizes the number of conflict parameters removed from the advertisement assignment model comprises:

selecting, from the different configurations, a set of configurations with the lowest change to the total parameter score;

determining, for each configuration in the set of configurations, a number of removed conflict parameters; and

selecting a configuration from the set of configurations with the smallest number of removed conflict parameters.

7. The method of claim 1 , wherein determining the configuration of the plurality of parameters from the different configurations that minimizes the change to the total parameter score and minimizes the number of conflict parameters removed from the advertisement assignment model comprises:

selecting, from the different configurations, a set of configurations with a smallest number of removed conflict parameters;

determining, for each configuration in the set of configurations, a change in a respective total parameter score; and

selecting a configuration from the set of configurations with a smallest change in the respective total parameter score.

8. The method of claim 1 , wherein determining the at least one conflict parameter whose removal from the advertisement assignment model causes the conflict to be resolved comprises:

ranking each parameter of the plurality of parameters based on a respective parameter score, wherein the highest-ranked parameter is associated with a lowest parameter score and the lowest-ranked parameter is associated with the highest parameter score;

splitting the highest-ranked parameter into a first sub-parameter and a second sub-parameter;

generating a set of parameters that includes the plurality of parameters without the highest-ranked parameter;

simulating the assignment of the plurality of advertisements to the plurality of advertisement slots based on set of parameters and the first sub-parameter;

determining, based on simulating the assignment of the plurality of advertisements to the plurality of advertisement slots based on a set of parameters and the first sub-parameter that there is no conflict that prevents assigning the plurality of advertisements to the plurality of advertisement slots without violating at least one of the first sub-parameter and the set of parameters; and

determining that removal of the highest-ranked parameter and addition of the first sub-parameter resolves the conflict.

9. The method of claim 8 , further comprising determining whether the highest-ranked parameter can be split into multiple sub-parameters by:

determining whether the highest-ranked parameter is associated with a plurality of advertisers and a plurality of advertisement slots;

simulating splitting the highest-ranked parameter into a plurality of sub-parameters, wherein each sub-parameter of the plurality of sub-parameters is associated with one advertiser and at least one advertisement slot; and

in response to successfully simulating the splitting, determining that the highest-ranked parameter can be split into multiple parameters.

10. A system for resolving advertisement placement conflicts, the system comprising:

communications circuitry; and

control circuitry configured to:

receive, using the communications circuitry, an advertisement assignment model that includes a plurality of parameters that define how a plurality of advertisements should be assigned to a plurality of advertisement slots;

simulate an assignment of the plurality of advertisements to the plurality of advertisement slots based on the plurality of parameters;

determine, based on the simulating, that there is a conflict that prevents assigning the plurality of advertisements to the plurality of advertisement slots without violating a parameter of the plurality of parameters;

in response to the determining, retrieve a respective parameter score for each parameter of the plurality of parameters, wherein each parameter score indicates an importance of the corresponding parameter;

calculate a total parameter score for the advertisement assignment model based on the retrieved parameter scores;

select at least one parameter to remove from the advertisement assignment model by:

generating a plurality of different configurations of the plurality of parameters by iteratively removing, modifying, or removing and modifying one or more parameters using a feasibility relaxation algorithm for mixed integer linear programs;

determining at least one conflict parameter whose removal from the advertisement assignment model causes the conflict to be resolved;

calculating a plurality of different total parameter scores based on the plurality of different configurations of the plurality of parameters in the advertisement assignment model, wherein each calculated different total parameter score is based on the removal from the advertisement assignment model, or modification within the advertisement model, of different ones of the at least one conflict parameter;

determining, based on the different total parameter scores, a first configuration of the plurality of parameters from the different configurations that violates the smallest number of parameters having the least priority, minimizes a change to the total parameter score and minimizes a number of conflict parameters removed from the advertisement assignment model;

generating for simultaneous display both the first configuration and an option that enables a user to choose different configurations of the plurality of configurations that resolve the conflict;

in response to a user selection of the option, generating for display the plurality of different configurations; and

in response to a user selection of one of the plurality of different configurations or the first configuration, modifying the advertisement assignment model according to the selected configuration; and

assign the plurality of advertisements to the plurality of advertisement slots based on the modified advertisement assignment model.

11. The system of claim 10 , wherein the control circuitry is configured, when retrieving the parameter score for each parameter of the plurality of parameters, to:

generate a first subset of parameters in the plurality of parameters, wherein each parameter in the first subset of parameters has an associated user-defined parameter score and a system parameter score;

determine, for each parameter in the first subset of parameters, whether the system parameter score can be overridden by the user-defined parameter score;

generate a second subset of parameters that includes parameters from the first subset of parameters with system parameter scores that can be overridden;

generate a third subset of parameters that includes parameters from the first subset of parameters with system parameter scores that can not be overridden; and

retrieve user-defined parameter scores for the second subset and system parameter scores for the third subset.

12. The system of claim 10 , wherein the control circuitry configured, when determining, based on the different total parameter scores, the configuration of the plurality of parameters from the different configurations, to execute a feasibility relaxation algorithm for mixed integer linear programs.

13. The system of claim 10 , wherein the control circuitry is configured, when determining the at least one conflict parameter whose removal from the advertisement assignment model causes the conflict to be resolved, to:

rank each parameter of the plurality of parameters based on a respective parameter score, wherein the highest-ranked parameter is associated with a lowest parameter score and the lowest-ranked parameter is associated with the highest parameter score;

select a second plurality of parameters by removing the highest-ranked parameter from the plurality of parameters;

compare the second plurality of parameters with parameters of each configuration of the different configurations;

determine, based on comparing the second plurality of parameters with parameters of each configuration of the different configurations, whether the second plurality of parameters matches any configuration of the different configurations; and

in response to determining that the second plurality of parameters matches a configuration of the different configurations, determine that the at least one conflict parameter is the highest-ranked parameter.

14. The system of claim 13 , wherein the control circuitry is further configured:

in response to determining that the second plurality of parameters does not match any configuration of the different configurations, select a third plurality of parameters by removing the second highest-ranked parameter from the first plurality of parameters;

compare the third plurality of parameters with parameters of each configuration of the different configurations;

determine, based on comparing the third plurality of parameters with parameters of each configuration of the different configurations, that the third plurality of parameters does not match any configuration of the different configurations;

compare a fourth plurality of parameters with parameters of each of the different configurations, wherein the fourth plurality of parameters comprises the first plurality of parameters without both the highest-ranked parameter and the second highest-ranked parameter; and

in response to determining that parameters of any configuration of the different configurations matches the fourth plurality of parameters, determine that the at least one conflict parameter includes the highest-ranked parameter and the second highest-ranked parameter.

15. The system of claim 10 , wherein the control circuitry is configured, when determining the configuration of the plurality of parameters from the different configurations that minimizes the change to the total parameter score and minimizes the number of conflict parameters removed from the advertisement assignment model, to:

select, from the different configurations, a set of configurations with the lowest change to the total parameter score;

determine, for each configuration in the set of configurations, a number of removed conflict parameters; and

select a configuration from the set of configurations with the smallest number of removed conflict parameters.

16. The system of claim 10 , wherein the control circuitry is configured, when determining the configuration of the plurality of parameters from the different configurations that minimizes the change to the total parameter score and minimizes the number of conflict parameters removed from the advertisement assignment model, to:

select, from the different configurations, a set of configurations with a smallest number of removed conflict parameters;

determine, for each configuration in the set of configurations, a change in a respective total parameter score; and

select a configuration from the set of configurations with a smallest change in the respective total parameter score.

17. The system of claim 10 , wherein the control circuitry is configured, when determining the at least one conflict parameter whose removal from the advertisement assignment model causes the conflict to be resolved, to:

rank each parameter of the plurality of parameters based on a respective parameter score, wherein the highest-ranked parameter is associated with a lowest parameter score and the lowest-ranked parameter is associated with the highest parameter score;

split the highest-ranked parameter into a first sub-parameter and a second sub-parameter; generate a set of parameters that includes the plurality of parameters without the highest-ranked parameter;

simulate the assignment of the plurality of advertisements to the plurality of advertisement slots based on set of parameters and the first sub-parameter;

determine, based on simulating the assignment of the plurality of advertisements to the plurality of advertisement slots based on a set of parameters and the first sub-parameter that there is no conflict that prevents assigning the plurality of advertisements to the plurality of advertisement slots without violating at least one of the first sub-parameter and the set of parameters; and

determine that removal of the highest-ranked parameter and addition of the first sub-parameter resolves the conflict.

18. The system of claim 17 , wherein the control circuitry is further configured to determine whether the highest-ranked parameter can be split into multiple sub-parameters by:

determining whether the highest-ranked parameter is associated with a plurality of advertisers and a plurality of advertisement slots;

simulating splitting the highest-ranked parameter into a plurality of sub-parameters, wherein each sub-parameter of the plurality of sub-parameters is associated with one advertiser and at least one advertisement slot; and

in response to successfully simulating the splitting, determining that the highest-ranked parameter can be split into multiple parameters.

Assignments (7)
CHANGE OF NAME Recorded Oct 2, 2024
From: ROVI GUIDES, INC.
To: ADEIA GUIDES INC.
Reel/Frame 069086/0199 →
RELEASE OF SECURITY INTEREST Recorded Jun 5, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS, INC.; VEVEO, INC.
Reel/Frame 053481/0790 →
RELEASE OF SECURITY INTEREST Recorded Jun 5, 2020
From: HPS INVESTMENT PARTNERS, LLC
To: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS, INC.; VEVEO, INC.
Reel/Frame 053458/0749 →
SECURITY INTEREST Recorded Jun 1, 2020
From: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS INC.; VEVEO, INC.; INVENSAS CORPORATION; INVENSAS BONDING TECHNOLOGIES, INC.; TESSERA, INC.; TESSERA ADVANCED TECHNOLOGIES, INC.; DTS, INC.; PHORUS, INC.; IBIQUITY DIGITAL CORPORATION
To: BANK OF AMERICA, N.A.
Reel/Frame 053468/0001 →
PATENT SECURITY AGREEMENT Recorded Nov 25, 2019
From: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS, INC.; VEVEO, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 051110/0006 →
SECURITY INTEREST Recorded Nov 22, 2019
From: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS, INC.; VEVEO, INC.
To: HPS INVESTMENT PARTNERS, LLC, AS COLLATERAL AGENT
Reel/Frame 051143/0468 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 14, 2016
From: MEYER, SAMUEL
To: ROVI GUIDES, INC.
Reel/Frame 040733/0723 →
Continuity (2)
Provisional Application 62407759 · Oct 13, 2016
Related Publication 20180108052A1 · Apr 19, 2018