# US 8,544,036 B2 · Methods and apparatus for scheduling broadcast commercials

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

- Number: US 8,544,036 B2
- Document ID: US8544036B2
- Status: Granted
- Kind: B2
- Application number: 10/389,303
- Filed: 2003-03-14
- Published: 2004-09-16
- Granted: 2013-09-24
- Earliest claimed: 2003-03-14
- Assignees: NBCUniversal Media, LLC
- Applicants: Srinivas Bollapragada; Marc Anthony Garbiras
- Inventors: Srinivas Bollapragada; Marc Anthony Garbiras
- Web page: https://patentgrep.com/patent/US8544036B2

## CPC

- H04H 60/06: Arrangements for scheduling broadcast services or broadcast-related services
- G06Q 10/04: Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem" (market predictions or forecasting for commercial activities G06Q30/0202)
- G06Q 30/02: Marketing; Price estimation or determination; Fundraising
- G06Q 30/0264: {based upon schedule}
- G06Q 30/0273: Determination of fees for advertising
- H04N 7/165: {Centralised control of user terminal (subsequent to an upstream request signal H04N7/17345); Registering at central (by two-way working H04N7/17309)}
- H04N 21/26241: {involving the time of distribution, e.g. the best time of the day for inserting an advertisement or airing a children programme}
- H04N 21/812: {involving advertisement data (advertising per se G06Q30/02)}
- H04H: BROADCAST COMMUNICATION (multiplex communication H04J; pictorial communication aspects of broadcast systems H04N)
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

A method for scheduling broadcast commercials includes receiving a plurality of scheduling criteria, and automatically scheduling a plurality of commercials based on the received criteria.

## Claims

### Claim 1

A method for scheduling broadcast commercials prior to broadcast, the method comprising:
via a computer processing circuit:
receiving a listing of a plurality of commercials;
receiving scheduling criteria;
implementing a goal program for scheduling the plurality of commercials, wherein the goal program weights a first factor of the scheduling criteria greater than a second factor of the scheduling criteria; and
automatically generating a schedule for the plurality of commercials within a list of commercial slots based on at least the goal program and the scheduling criteria, wherein the schedule reduces a plurality of conflicts, and wherein automatically generating the schedule comprises heuristically re-ordering commercials within the list of commercial slots;
wherein the re-ordering comprises re-ordering the plurality of commercials such that a first subset of a client's commercials are in an initial position within a commercial break, a second subset of the client's commercials are in at least one middle position within a commercial break, and a third subset of the client's commercials are in a final position within a commercial break, such that an equitable rotation of the client's commercials from the plurality of commercials may be placed in the initial position, middle position, and the final position; and
wherein the client is a purchaser of at least one commercial slot in the list of commercial slots.

### Claim 2 (depends on 1)

The method of claim 1, wherein the scheduling criteria includes at least one hard constraint that must always be satisfied, and at least one soft constraint that should be met if feasible, comprising a product-conflict constraint or a constraint defined by the client.

### Claim 3 (depends on 1)

The method of claim 1, wherein automatically generating a schedule comprises searching a plurality of commercials within the list of commercial slots for level one swaps, wherein the level one swaps comprise a single commercial swap that resolves a scheduling conflict.

### Claim 4 (depends on 3)

A method in accordance with claim 3 wherein the searching is performed sequentially through the list.

### Claim 5 (depends on 1)

The method of claim 1, wherein the reordering comprises re-ordering the plurality of commercials such that no group of slots forming a single commercial break contains commercials for competing products.

### Claim 6 (depends on 1)

The method of claim 1, wherein the plurality of conflicts includes at least one product conflict, the product conflict comprising two commercials promoting competing products.

### Claim 7 (depends on 1)

The method of claim 1, wherein the goal program is configured to achieve a position percentage goal, the position percentage goal defining a spread of commercial placement in the initial position, middle position, and final position for the client, for other clients, or both.

### Claim 8 (depends on 1)

The method of claim 1, wherein automatically generating a schedule comprises utilizing an integer program.

### Claim 9 (depends on 1)

The method of claim 1, comprising formulating the goal program, wherein the goal program comprises slack variables indicating available slack in certain goals of the goal program and penalty factors associated with the slack variables indicating a priority of meeting the certain goals.

### Claim 10 (depends on 1)

The method of claim 1, wherein the schedule comprises dates and times for broadcast of the commercials.

### Claim 11 (depends on 1)

The method of claim 1, comprising satisfying equitable rotation of the plurality of commercials between the initial position, the middle position, and the final position between the client and other clients.

### Claim 12 (depends on 1)

The method of claim 1, wherein the listing of the plurality of commercials comprises associated clients and product codes, and wherein the schedule for the plurality of commercials is based on at least the goal program, the scheduling criteria, and the associated clients and product codes.

### Claim 13 (depends on 1)

The method of claim 1, wherein the schedule comprises time slots for linear television broadcast.

### Claim 14 (depends on 1)

The method of claim 1, wherein the schedule comprises a live broadcast schedule for a television broadcast network.

### Claim 15

A computer programmed to:
receive a selected list of a plurality of commercials;
receive scheduling criteria for scheduling the plurality of commercials;
generate, prior to displaying the plurality of commercials, a schedule based on a goal program and the scheduling criteria, wherein the goal program weights a first factor of the scheduling criteria greater than a second factor of the scheduling criteria, wherein the plurality of commercials are heuristically ordered, and wherein the schedule reduces a plurality of conflicts; and
re-order the plurality of commercials, prior to displaying the plurality of commercials, such that a first subset of a client's commercials are in an initial position within a commercial break, a second subset of the client's commercials are in at least one middle position within a commercial break, and a third subset of the client's commercials are in a final position within a commercial break, such that an equitable rotation of the client's commercials and other clients' commercials from the plurality of commercials may be placed in the initial position, middle position, and the final position; and
wherein the client and the other clients are purchasers of at least one commercial slot in the list of commercial slots.

### Claim 16 (depends on 15)

The computer of claim 15, further programmed to searching a plurality of commercials within the list of commercial slots for level one swaps, wherein the level one swaps comprise a single commercial swap that resolves a scheduling conflict.

### Claim 17

A non-transitory computer readable medium encoded with a program configured to instruct a computer to:
receive a selection of a plurality of commercials;
receive a plurality of scheduling criteria for scheduling the plurality of commercials;
generate a schedule of the plurality of commercials based on at least the plurality of scheduling criteria, a goal program, and an integer program, wherein the goal program weights a first factor of the scheduling criteria greater than a second factor of the scheduling criteria, and wherein the schedule reduces a plurality of conflicts; and
re-order the plurality of commercials such that a first subset of a client's commercials are in an initial position within a commercial break, a second subset of the client's commercials are in at least one middle position within a commercial break, and a third subset of the client's commercials are in a final position within a commercial break, such that an equitable rotation of the client's commercials and other clients' commercials from the plurality of commercials may be placed in the initial position, middle position, and the final position; and
wherein the client and the other clients are purchasers of at least one commercial slot in the list of commercial slots.

### Claim 18 (depends on 17)

The computer readable medium of claim 17, wherein the program is configured to instruct the computer to heuristically re-order the plurality of commercials within the list of commercial slots.

### Claim 19 (depends on 17)

The computer readable medium of claim 17, wherein the program is configured to instruct the computer to receive a plurality of scheduling criteria including at least one hard constraint that must always be satisfied, and at least one soft constraint that should be met if feasible, comprising a product-conflict constraint or a constraint defined by the client.

### Claim 20 (depends on 17)

The computer readable medium of claim 17, wherein the program is configured to instruct the computer to search the schedule of the plurality of commercials within the list of commercial slots for level one swaps before searching the list for level two swaps, wherein the level one swaps comprise a single commercial swap that resolves a scheduling conflict and the level two swaps comprising two consecutive commercial swaps that resolves the scheduling conflict, wherein at least one of the two consecutive commercial swaps involves a commercial causing the scheduling conflict.

### Claim 21 (depends on 20)

The computer readable medium of claim 20, wherein the program is configured to instruct the computer to search sequentially through the list for level one swaps before searching sequentially through the list for level two swaps.

### Claim 22 (depends on 21)

The computer readable medium of claim 21, wherein the program further configured to instruct the computer to re-order the plurality of commercials such that:
no group of slots forming a commercial break contains commercials for competing products.

### Claim 23 (depends on 17)

The computer readable medium of claim 17, wherein the plurality of conflicts includes at least one product conflict, the product conflict comprising two commercials promoting competing products.

### Claim 24 (depends on 17)

The computer readable medium of claim 17, wherein the goal program is configured to achieve a position percentage goal.
