# US 9,751,010 B2 · System and method for virtual team assembly

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

- Number: US 9,751,010 B2
- Document ID: US9751010B2
- Status: Granted
- Kind: B2
- Application number: 15/268,457
- Filed: 2016-09-16
- Published: 2017-03-23
- Granted: 2017-09-05
- Earliest claimed: 2015-09-18
- Assignees: Fantasy Sports Company
- Applicants: Fantasy Sports Company
- Inventors: Peter Groset; Erik Groset; William Switzer
- Web page: https://patentgrep.com/patent/US9751010B2

## CPC

- A63F 13/35: Details of game servers
- A63F 13/79: involving player-related data, e.g. identities, accounts, preferences or play histories
- A63F 13/828: Managing virtual sport teams
- A63F 13/92: Video game devices specially adapted to be hand-held while playing
- G06F 16/9535: Search customisation based on user profiles and personalisation
- G06F 16/9537: Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
- G06F 16/9538: Presentation of query results
- G06Q 50/00: Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism (healthcare informatics G16H)
- H04L 67/10: in which an application is distributed across nodes in the network (software deployment G06F8/60; multiprogramming arrangements G06F9/46)
- H04L 67/125: involving control of end-device applications over a network
- H04L 67/131: Protocols for games, networked simulations or virtual reality
- H04L 67/52: specially adapted for the location of the user terminal
- H04L 67/566: Grouping or aggregating service requests, e.g. for unified processing
- A63F: CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- 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
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A collection of data corresponding to a player is assembled at a server from a data provider. A base value of the player based on at least the primary data is added as an attribute to an internal object stored at the server. A modifier is mapped to a second attribute of the internal object. The modifier is based on at least a portion of the secondary data and the tertiary data. A projected value is generated from the base value by applying a modifier and a rule converting the modified second attribute to a projected value. Internal objects are generated according to constraints including having a sum of limiting factors of the internal objects that does not exceed a maximum factor and a sum of projected values a maximum, subject to the first constraint. The server transmits application data including a list representing the internal objects.

## Claims

### Claim 1

A method comprising:
monitoring, by a server, a data provider for a change to a type of data associated with a player of a game, the type of data also determining, in part, a projected value of the player as calculated by an automated projection engine, the calculation comprising:
maintaining an approximately constant computational time when executing a number of iterations randomizing column positions of a column-based list comprising a number of rows having entries of decreasing projected values of a plurality of players in a lineup,
the maintaining of the approximately constant computational time based on limiting the number of iterations to be inversely proportional to the number of rows,
the generation of the lineup further comprising sequentially selecting a single entry from each row to be added to the lineup, subject to a first constraint comprising a sum of limiting factors of the lineup that not exceeding a maximum factor;
converting, by the server, the change to an update of a current value of a player based on at least one rule also used by the automated projection engine to calculate the projected value;
transmitting the update to a mobile application running on a mobile device, the transmitting causing the mobile device to initiate modification of a graphical display at the mobile device indicating the updated current value of the player; and
displaying, at the graphical display of the mobile device,
a vertical band having a length based on a standard deviation of an actual point value corresponding to one of the plurality of players in the lineup, the standard deviation calculated from the primary data over a historical window;
a first graphical element at a first location collinear with the vertical band and based on the projected point value of the corresponding one of the plurality of players in the lineup; and
a second graphical element at a second location collinear with the vertical band and based on the actual point value corresponding to an event that the one of the plurality of players in the lineup is associated with.

### Claim 2 (depends on 1)

The method of claim 1, wherein the change represents an instant event that occurred in the game in which the player is currently participating.

### Claim 3 (depends on 1)

The method of claim 1, further comprising transmitting the projected value to the mobile application for simultaneous display with the current value.

### Claim 4 (depends on 1)

The method of claim 1, the monitoring further comprising:
reading, from the data provider, textual or visual representations of the change;
interpreting, by a text-parsing program or an image-recognition program, the textual or visual representation of the change to identify a feature of the change; and
associating the feature with the update; and
the transmitting further comprising transmitting the feature to the mobile application.

### Claim 5 (depends on 4)

The method of claim 4, wherein the feature is at least one of a name of the player, an identification of an instant event that causes the change, and a time corresponding to the instant event.

### Claim 6 (depends on 5)

The method of claim 5, further comprising initiating, at a graphical user interface of the mobile device, displaying textual or graphical representations of an imminent event for the player, the current value for each player in a lineup, a total value of all players in the lineup, the feature corresponding to the update, a value change to the current value based on the update, and the time of the update.

### Claim 7

A computer program product comprising a non-transient, machine-readable medium storing instructions which, when executed by at least one programmable processor, cause the at least one programmable processor to perform operations comprising:
monitoring, by a server, a data provider for a change to a type of data associated with a player of a game, the type of data also determining, in part, a projected value of the player as calculated by an automated projection engine, the calculation comprising:
maintaining an approximately constant computational time when executing a number of iterations randomizing column positions of a column-based list comprising a number of rows having entries of decreasing projected values of a plurality of players in a lineup,
the maintaining of the approximately constant computational time based on limiting the number of iterations to be inversely proportional to the number of rows,
the generation of the lineup further comprising sequentially selecting a single entry from each row to be added to the lineup, subject to a first constraint comprising a sum of limiting factors of the lineup that not exceeding a maximum factor;
converting, by the server, the change to an update of a current value of a player based on at least one rule also used by the automated projection engine to calculate the projected value;
transmitting the update to a mobile application running on a mobile device, the transmitting causing the mobile device to initiate modification of a graphical display at the mobile device indicating the updated current value of the player; and
displaying, at the graphical display of the mobile device,
a vertical band having a length based on a standard deviation of an actual point value corresponding to one of the plurality of players in the lineup, the standard deviation calculated from the primary data over a historical window;
a first graphical element at a first location collinear with the vertical band and based on the projected point value of the corresponding one of the plurality of players in the lineup; and
a second graphical element at a second location collinear with the vertical band and based on the actual point value corresponding to an event that the one of the plurality of players in the lineup is associated with.

### Claim 8 (depends on 7)

The computer program product of claim 7, wherein the change represents an instant event that occurred in the game in which the player is currently participating.

### Claim 9 (depends on 7)

The computer program product of claim 7, further comprising transmitting the projected value to the mobile application for simultaneous display with the current value.

### Claim 10 (depends on 7)

The computer program product of claim 7, the monitoring further comprising:
reading, from the data provider, textual or visual representations of the change;
interpreting, by a text-parsing program or an image-recognition program, the textual or visual representation of the change to identify a feature of the change; and
associating the feature with the update; and
the transmitting further comprising transmitting the feature to the mobile application.

### Claim 11 (depends on 10)

The computer program product of claim 10, wherein the feature is at least one of a name of the player, an identification of an instant event that causes the change, and a time corresponding to the instant event.

### Claim 12 (depends on 11)

The computer program product of claim 11, further comprising initiating, at a graphical user interface of the mobile device, displaying textual or graphical representations of an imminent event for the player, the current value for each player in a lineup, a total value of all players in the lineup, the feature corresponding to the update, a value change to the current value based on the update, and the time of the update.

### Claim 13

A system comprising:
at least one programmable processor; and
a non-transient machine-readable medium storing instructions which, when executed by the at least one programmable processor, cause the at least one programmable processor to perform operations comprising:
monitoring, by a server, a data provider for a change to a type of data associated with a player of a game, the type of data also determining, in part, a projected value of the player as calculated by an automated projection engine, the calculation comprising:
maintaining an approximately constant computational time when executing a number of iterations randomizing column positions of a column-based list comprising a number of rows having entries of decreasing projected values of a plurality of players in a lineup,
the maintaining of the approximately constant computational time based on limiting the number of iterations to be inversely proportional to the number of rows,
the generation of the lineup further comprising sequentially selecting a single entry from each row to be added to the lineup, subject to a first constraint comprising a sum of limiting factors of the lineup that not exceeding a maximum factor;
converting, by the server, the change to an update of a current value of a player based on at least one rule also used by the automated projection engine to calculate the projected value;
transmitting the update to a mobile application running on a mobile device, the transmitting causing the mobile device to initiate modification of a graphical display at the mobile device indicating the updated current value of the player; and
displaying, at the graphical display of the mobile device,
a vertical band having a length based on a standard deviation of an actual point value corresponding to one of the plurality of players in the lineup, the standard deviation calculated from the primary data over a historical window;
a first graphical element at a first location collinear with the vertical band and based on the projected point value of the corresponding one of the plurality of players in the lineup; and
a second graphical element at a second location collinear with the vertical band and based on the actual point value corresponding to an event that the one of the plurality of players in the lineup is associated with.

### Claim 14 (depends on 13)

The system of claim 13, wherein the change represents an instant event that occurred in the game in which the player is currently participating.

### Claim 15 (depends on 13)

The system of claim 13, further comprising transmitting the projected value to the mobile application for simultaneous display with the current value.

### Claim 16 (depends on 13)

The system of claim 13, the monitoring further comprising:
reading, from the data provider, textual or visual representations of the change;
interpreting, by a text-parsing program or an image-recognition program, the textual or visual representation of the change to identify a feature of the change; and
associating the feature with the update; and
the transmitting further comprising transmitting the feature to the mobile application.

### Claim 17 (depends on 16)

The system of claim 16, wherein the feature is at least one of a name of the player, an identification of an instant event that causes the change, and a time corresponding to the instant event.

### Claim 18 (depends on 17)

The system of claim 17, further comprising initiating, at a graphical user interface of the mobile device, displaying textual or graphical representations of an imminent event for the player, the current value for each player in a lineup, a total value of all players in the lineup, the feature corresponding to the update, a value change to the current value based on the update, and the time of the update.
