# US 10,482,430 B2 · Limiting candidate playlists in multi-shot scheduling system

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

- Number: US 10,482,430 B2
- Document ID: US10482430B2
- Status: Granted
- Kind: B2
- Application number: 15/272,794
- Filed: 2016-09-22
- Published: 2017-01-12
- Granted: 2019-11-19
- Earliest claimed: 2011-10-07
- Assignees: iHeartMedia Management Services, Inc.
- Applicants: iHeartMedia Management Services, Inc.
- Inventors: Nigel Attwell; Chris Bean
- Web page: https://patentgrep.com/patent/US10482430B2

## CPC

- G06F 16/41: Indexing; Data structures therefor; Storage structures
- G06F 16/2228: {Indexing structures}
- G06F 16/24578: {using ranking}
- G06F 16/4387: {by the use of playlists}
- G06Q 10/1093: Calendar-based scheduling for persons or groups
- H04H 60/06: Arrangements for scheduling broadcast services or broadcast-related services
- H04N 21/26258: {for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list (retrieval of multimedia data based on playlists G06F16/40)}
- H04N 21/84: Generation or processing of descriptive data, e.g. content descriptors {(systems specially adapted for using meta-information in broadcast systems H04H60/73)}
- H04H 60/47: for recognising genres
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- 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
- H04H: BROADCAST COMMUNICATION (multiplex communication H04J; pictorial communication aspects of broadcast systems H04N)
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

A Multi-Shot Scheduling System chooses from multiple candidate playlists of positions to select a broadcast playlist. Candidate playlists are generated based upon scoring and selecting content items for the positions through the use of index values. Various embodiments of the Multi-Shot Scheduling System can select broadcast playlists for multiple groups of content and can provide different methods of controlling scheduling performance by restricting the range of candidate playlists from which the best playlist can be selected. the number of candidate playlists to be considered can be determined based on the number of positions in each playlist and a restriction requirement that sets a maximum index value assignable to playlist positions.

## Claims

### Claim 1

A method for use in an automated media scheduling system, the method comprising:
determining, by a processing device:
a number of positions to be included in a shot;
a maximum index value specified by a restriction rule, wherein the maximum index value indicates a maximum relative ranking of a media item permitted to be assigned to a position, and wherein a relative ranking of the media item is determined based on a score of the media item relative to scores of other media items;
a specific number of shots to be generated based on the number of positions and the maximum index value;
generating, by the processing device, the specific number of shots, by assigning media items to each of the number of positions in each of the specific number of shots;
determining, by the processing device for each of the specific number of shots, aggregate scores of the media items assigned to each of the number of positions; and
scheduling, by the processing device, a best-scoring shot for transmission based on the aggregate scores.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
determining a maximum sum of all index values assigned to all positions in an individual shot based on a second restriction rule.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
determining, based on a second restriction rule, a maximum number of positions in at least one particular shot eligible to be assigned an index value outside of a predetermined range of index values.

### Claim 4 (depends on 1)

The method of claim 1, further comprising:
determining, based on a second restriction rule for at least one particular shot, one or more specific positions eligible to be assigned an index value exceeding the maximum index value.

### Claim 5 (depends on 1)

The method of claim 1, further comprising:
determining the maximum index value based, at least in part, on an estimated time required to generate the specific number of shots.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
determining the specific number of shots according to the following formula:
number of shots=(N+1)K
where N=the maximum index value, and K=the number of positions.

### Claim 7 (depends on 1)

The method of claim 1, wherein generating the specific number of shots further comprises:
generating a currently-best-scoring shot;
generating a comparison shot;
selecting a higher-scoring slot from the currently-best-scoring shot and the comparison shot; and
using the higher-scoring slot as the currently-best-scoring shot in a subsequent comparison.

### Claim 8

A device implementing an automated media scheduling system, the device comprising:
processing circuitry;
memory operably associated with the processing circuitry, the processing circuitry and memory operable to:
determine:
a number of positions to be included in a candidate playlist;
a maximum index value specified by a restriction rule, wherein the maximum index value indicates a maximum relative ranking of a media item permitted to be assigned to a position, and wherein a relative ranking of the media item is determined based on a score of the media item relative to scores of other media items;
generate a specific number of candidate playlists, the specific number of candidate playlists based on the number of positions and the maximum index value;
determine, for each of the specific number of candidate playlists, aggregate scores of media items assigned to each of the number of positions; and
selecting a candidate playlist for broadcast based on the aggregate scores.

### Claim 9 (depends on 8)

The device of claim 8, the processing circuitry and memory further operable to:
determine a maximum sum of index values assigned to all positions in an individual candidate playlist based on a second restriction rule.

### Claim 10 (depends on 8)

The device of claim 8, the processing circuitry and memory further operable to:
determine, for individual candidate playlists, a maximum number of positions eligible to be assigned an index value outside of a predetermined range of index values based on a second restriction rule.

### Claim 11 (depends on 8)

The device of claim 8, the processing circuitry and memory further operable to:
determine, for individual candidate playlists, one or more specific positions eligible to be assigned an index value exceeding the maximum index value.

### Claim 12 (depends on 8)

The device of claim 8, the processing circuitry and memory further operable to:
determine the maximum index value based, at least in part, on an estimated time required to generate the specific number of candidate playlists.

### Claim 13 (depends on 8)

The device of claim 8, the processing circuitry and memory further operable to:
determine the specific number of candidate playlists according to the following formula:
number of candidate playlists=(N+1)K
where N=the maximum index value, and K=the number of positions.

### Claim 14 (depends on 8)

The device of claim 8, the processing circuitry and memory further operable to generate the specific number of candidate playlists by:
generating a currently-best-scoring candidate playlist;
generating a comparison candidate playlist;
selecting a higher-scoring slot from the currently-best-scoring candidate playlist and the comparison candidate playlist; and
using the higher-scoring slot as the currently-best-scoring candidate playlist in a subsequent comparison.

### Claim 15

A method for use in an automated media scheduling system, the method comprising:
determining, by a processing device:
a number of positions to be included in each of a plurality of candidate playlists;
a maximum index value specified by a restriction rule, wherein the maximum index value indicates a maximum ranking of a media item permitted to be assigned to each position in each of the plurality of candidate playlists;
a specific number of candidate playlists to be generated based on the number of positions and the maximum index value;
generating, by the processing device, the specific number of candidate playlists, by assigning media items to each of the number of positions to be included in each of the specific number of candidate playlists;
determining, by the processing device for each of the specific number of candidate playlists, aggregate scores of the media items; and
scheduling, by the processing device, a best-scoring candidate playlist for transmission to a broadcast device based on the aggregate scores.

### Claim 16 (depends on 15)

The method of claim 15, further comprising:
determining a maximum sum of all index values assigned to positions of each individual candidate playlist based on a second restriction rule.

### Claim 17 (depends on 15)

The method of claim 15, further comprising:
determining, based on a second restriction rule, a maximum number of positions in any particular candidate playlist eligible to be assigned an index value outside of a predetermined range of index values.

### Claim 18 (depends on 15)

The method of claim 15, further comprising:
determining, for at least one particular candidate playlist based on a second restriction rule, one or more specific positions eligible to be assigned an index value exceeding the maximum index value.

### Claim 19 (depends on 15)

The method of claim 15, further comprising:
determining the maximum index value based, at least in part, on an estimated time required to generate the specific number of candidate playlists.

### Claim 20 (depends on 15)

The method of claim 15, further comprising:
determining the specific number of candidate playlists according to the following formula:
number of candidate playlists=(N+1)K
where N=the maximum index value, and K=the number of positions.
