U.S. patent application number 14/204424 was filed with the patent office on 2014-12-11 for system and method for predicting a criteria of interest.
This patent application is currently assigned to ZIH Corp.. The applicant listed for this patent is ZIH Corp.. Invention is credited to Jill Stelfox, Cynthia Traeger.
Application Number | 20140365415 14/204424 |
Document ID | / |
Family ID | 52004990 |
Filed Date | 2014-12-11 |
United States Patent
Application |
20140365415 |
Kind Code |
A1 |
Stelfox; Jill ; et
al. |
December 11, 2014 |
SYSTEM AND METHOD FOR PREDICTING A CRITERIA OF INTEREST
Abstract
A method for predicting a criteria of interest based upon tag
location data, derived tag location data, statistical data or the
like corresponding to an object. The method may include receiving
an input that defines one or more objects and one or more criteria
of interest. Further, the method may include accessing tag location
data, derived tag location data or the like for the object. The
method may also include generating a prediction for a criteria of
interest for at least one of the one or more criteria of interest
for at least one of the one or more objects, wherein the a
prediction for a criteria of interest is generated based on at
least one of tag location data, derived tag location data or the
like for the one or more objects related to the one or more
criteria of interest. An associated apparatus, computer program
product and system are also provided.
Inventors: |
Stelfox; Jill; (San Jose,
CA) ; Traeger; Cynthia; (Fairfax, VA) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
ZIH Corp. |
Lincolnshire |
IL |
US |
|
|
Assignee: |
ZIH Corp.
Lincolnshire
IL
|
Family ID: |
52004990 |
Appl. No.: |
14/204424 |
Filed: |
March 11, 2014 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
61831990 |
Jun 6, 2013 |
|
|
|
Current U.S.
Class: |
706/21 |
Current CPC
Class: |
A63B 2024/0028 20130101;
G05B 15/02 20130101; G08C 17/02 20130101; A63B 2225/54 20130101;
G06Q 90/00 20130101; G09B 19/0038 20130101; G06K 7/10366 20130101;
H04B 1/1036 20130101; A41D 2600/10 20130101; H04L 43/04 20130101;
H04B 1/719 20130101; A63B 71/0686 20130101; G06K 9/00342 20130101;
A42B 3/30 20130101; G06F 16/9537 20190101; G06K 7/10227 20130101;
G06F 16/9554 20190101; H04Q 9/00 20130101; H04W 4/029 20180201;
A41D 1/04 20130101; A63B 2024/0056 20130101; G06F 16/955 20190101;
G16H 50/50 20180101; A63B 2220/40 20130101; G16H 50/30 20180101;
A41D 1/005 20130101; H04B 1/71635 20130101; G06N 7/005 20130101;
A63B 2220/836 20130101; H04B 1/7097 20130101; G16H 40/67 20180101;
H04W 4/02 20130101; G06F 16/951 20190101; G06K 7/10297 20130101;
A41D 1/002 20130101; G06N 5/02 20130101; H04B 1/71637 20130101;
A63B 24/0021 20130101; A63B 2225/50 20130101; A63B 24/00 20130101;
A63B 2024/0025 20130101; A63B 2220/12 20130101; G06K 7/10306
20130101 |
Class at
Publication: |
706/21 |
International
Class: |
G06N 5/02 20060101
G06N005/02 |
Claims
1-30. (canceled)
31. A method comprising: receiving an input that defines one or
more objects and one or more criteria of interest; receiving tag
location data or derived tag location data for the one or more
objects measured during an event; generating, using a processor, a
prediction for a criteria of interest for at least one of the one
or more criteria of interest for at least one of the one or more
objects, wherein the prediction for a criteria of interest is
generated based on at least one of tag location data or derived tag
location data for the one or more objects related to the one or
more criteria of interest; and causing the predictive analytic data
to at least one of be displayed on an interface or transmitted to a
remote device.
32. The method of claim 31, further comprising: aggregating
historical statistical data; and generating a model describing the
aggregated historical statistical data, wherein the historical
statistical data is usable to generate the prediction for a
criteria of interest by comparing the historical statistical data
to the statistical data.
33. The method of claim 31, wherein the predictive analytic data to
at least one of be displayed on an interface or transmitted to a
remote device in real time.
34. (canceled)
35. The method of claim 31, further comprising: combining the tag
location data or derived tag location data for the one or more
objects to generate aggregated data.
36. The method of claim 33, wherein the object data is generated at
least in part based on tag data generated by a tag that is
attachable to each of the one or more objects.
37. The method of claim 36 wherein the tag comprises an
ultra-wideband (UWB) transmitter.
38. The method of claim 37 wherein the UWB transmitter is
configured to transmit a plurality of time differences of arrival
(TDOA) timing pulses.
39-94. (canceled)
95. An apparatus comprising: at least one processor; and at least
one memory including computer program code, the at least one memory
and the computer program code configured to, with the at least one
processor, cause the apparatus to at least: receive an input that
defines one or more objects and one or more criteria of interest;
receive tag location data or derived tag location data for the one
or more objects measured during an event; generate a prediction for
a criteria of interest for at least one of the one or more criteria
of interest for at least one of the one or more objects, wherein
the prediction for a criteria of interest is generated based on at
least one of tag location data or derived tag location data for the
one or more objects related to the one or more criteria of
interest; and cause the predictive analytic data to at least one of
be displayed on an interface or transmitted to a remote device.
96. The apparatus according to claim 95, wherein the at least one
memory including the computer program code is further configured
to, with the at least one processor, cause the apparatus to:
aggregate historical statistical data; and generate a model
describing the aggregated historical statistical data, wherein the
historical statistical data is usable to generate the prediction
for a criteria of interest by comparing the historical statistical
data to the statistical data.
97. The apparatus according to claim 95, wherein the predictive
analytic data to at least one of be displayed on an interface or
transmitted to a remote device in real time.
98. (canceled)
99. The apparatus according to claim 95, wherein the at least one
memory including the computer program code is further configured
to, with the at least one processor, cause the apparatus to:
combine the tag location data or derived tag location data for the
one or more objects to generate aggregated data.
100. The apparatus according to claim 97, wherein the object data
is generated at least in part based on tag data generated by a tag
that is attachable to each of the one or more objects.
101. The apparatus according to claim 100, wherein the tag
comprises an ultra-wideband (UWB) transmitter.
102. The apparatus according to claim 101, wherein the UWB
transmitter is configured to transmit a plurality of time
differences of arrival (TDOA) timing pulses.
103-158. (canceled)
159. A computer program product comprising: at least one computer
readable non-transitory memory medium having program code
instructions stored thereon, the program code instructions which
when executed by an apparatus cause the apparatus at least to:
receive an input that defines one or more objects and one or more
criteria of interest; receive tag location data or derived tag
location data for the one or more objects measured during an event;
generate a prediction for a criteria of interest for at least one
of the one or more criteria of interest for at least one of the one
or more objects, wherein the prediction for a criteria of interest
is generated based on at least one of tag location data or derived
tag location data for the one or more objects related to the one or
more criteria of interest; and cause the predictive analytic data
to at least one of be displayed on an interface or transmitted to a
remote device.
160. The computer program product of claim 159, further comprising
program code instructions which when executed by the apparatus
further cause the apparatus at least to: aggregate historical
statistical data; and generate a model describing the aggregated
historical statistical data, wherein the historical statistical
data is usable to generate the prediction for a criteria of
interest by comparing the historical statistical data to the
statistical data.
161. The computer program product of claim 159, wherein the
predictive analytic data to at least one of be displayed on an
interface or transmitted to a remote device in real time.
162. (canceled)
163. The computer program product of claim 159, further comprising
program code instructions which when executed by the apparatus
further cause the apparatus at least to: combine the tag location
data or derived tag location data for the one or more objects to
generate aggregated data.
164. The computer program product of claim 161, wherein the object
data is generated at least in part based on tag data generated by a
tag that is attachable to each of the one or more objects.
165. The computer program product of claim 164, wherein the tag
comprises an ultra-wideband (UWB) transmitter and wherein the UWB
transmitter is configured to transmit a plurality of time
differences of arrival (TDOA) timing pulses.
166-192. (canceled)
Description
CROSS-REFERENCE TO RELATED APPLICATION
[0001] This application claims priority from and the benefit of the
filing date of U.S. Provisional Patent Application No. 61/831,990
filed Jun. 6, 2013, the contents of which is incorporated by
reference in its entirety herein.
TECHNOLOGICAL FIELD
[0002] An example embodiment of the present invention generally
relates to predictive analytics and more particularly, to a
prediction system configured to provide users with analytics based
upon tag location data, derived tag location data or the like.
BACKGROUND
[0003] Location based services allow for a user to identify the
location of a particular user, tag, and/or object. In addition,
various analytics may be determined based upon location data of an
object, such as an athlete's location during a game. Predicting
future athletic performances based upon past athletic performances
has been difficult as prior art systems have lacked particular
performance and/or tag location data. Through applied effort,
ingenuity and innovation, Applicant has solved many of these
identified problems by developing a solution that is embodied by
the present invention, which is described in detail below.
BRIEF SUMMARY
[0004] A method, apparatus, computer program product, and system
therefore provide for predicting analytics and providing tag
location data based upon tag location data, derived tag location
data, statistical data or the like corresponding to an object. As
is described in more detail herein, some example embodiments are
configured to generate or otherwise receive tag location data,
derived tag location data or the like for a particular object. The
object may be associated with one or more entities, such as a
title, role, a team, an opponent and/or the like. The object may
also be related to one or more statistical outcomes received from
an external source or generated based on the tag location data,
derived tag location data or the like. As such, based upon the
object, the characteristics of the object, associations of the
object, one or more statistical outcomes for the object and/or the
like, a model may be trained or a set or rules developed. Such a
model or set of rules, in some example embodiments, may be used to
provide one or more predictions of object future performance or
indications of how an object should have performed for a given
criteria of interest.
BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS
[0005] Having thus described example embodiments of the present
disclosure in general terms, reference will now be made to the
accompanying drawings, which are not necessarily drawn to scale,
and wherein:
[0006] FIG. 1 illustrates a schematic representation of a system
configured to provide tag location data according to an example
embodiment of the present invention;
[0007] FIG. 2A illustrates a schematic representation of a radio
frequency locating system useful for determining the location of an
object according to an example embodiment of the present
invention;
[0008] FIG. 2B illustrates an exemplary object carrying tags and
sensors that may provide information in accordance with some
embodiments of the present invention;
[0009] FIG. 3 illustrates a flow chart detailing operations
performed by a system configured to generate tag location data,
derived tag location data or the like according to an example
embodiment of the present invention;
[0010] FIG. 4 illustrates a flow chart detailing operations
performed by a system configured to provide tag location data
according to an example embodiment of the present invention;
[0011] FIGS. 5 and 6 illustrate flow charts detailing operations
performed by a system configured to provide a prediction for a
criteria of interest according to an example embodiment of the
present invention; and
[0012] FIG. 7 illustrates an interface configured to display tag
location data provided by a system according to an example
embodiment of the present invention.
DETAILED DESCRIPTION
[0013] Some embodiments of the present invention will now be
described more fully hereinafter with reference to the accompanying
drawings, in which some, but not all embodiments of the invention
are shown. Indeed, various embodiments of the invention may be
embodied in many different forms and should not be construed as
limited to the embodiments set forth herein. Like reference
numerals refer to like elements throughout.
[0014] As used herein, the terms "data," "content," "information"
and similar terms may be used interchangeably to refer to data
capable of being transmitted, received and/or stored in accordance
with embodiments of the present invention. Moreover, the term
"exemplary", as may be used herein, is not provided to convey any
qualitative assessment, but instead merely to convey an
illustration of an example. Thus, use of any such terms should not
be taken to limit the spirit and scope of embodiments of the
present invention.
[0015] The term "computer-readable medium" as used herein refers to
any medium configured to participate in providing information to a
processor, including instructions for execution. Such a medium may
take many forms, including, but not limited to a non-transitory
computer-readable storage medium (e.g., non-volatile media,
volatile media), and transmission media. Transmission media
include, for example, coaxial cables, copper wire, fiber optic
cables, and carrier waves that travel through space without wires
or cables, such as acoustic waves and electromagnetic waves,
including radio, optical and infrared waves. Signals include
man-made transient variations in amplitude, frequency, phase,
polarization or other physical properties transmitted through the
transmission media. Examples of non-transitory computer-readable
media include a magnetic computer readable medium (e.g., a floppy
disk, hard disk, magnetic tape, any other magnetic medium), an
optical computer readable medium (e.g., a compact disc read only
memory (CD-ROM), a digital versatile disc (DVD), a Blu-Ray disc, or
the like), a random access memory (RAM), a programmable read only
memory (PROM), an erasable programmable read only memory (EPROM), a
FLASH-EPROM, or any other non-transitory medium from which a
computer can read. The term computer-readable storage medium is
used herein to refer to any computer-readable medium except
transmission media. However, it will be appreciated that where
embodiments are described to use a computer-readable storage
medium, other types of computer-readable mediums may be substituted
for or used in addition to the computer-readable storage medium in
alternative embodiments.
[0016] Additionally, as used herein, the term `circuitry` refers to
(a) hardware-only circuit implementations (for example,
implementations in analog circuitry and/or digital circuitry); (b)
combinations of circuits and computer program product(s) comprising
software and/or firmware instructions stored on one or more
computer readable memories that work together to cause an apparatus
to perform one or more functions described herein; and (c)
circuits, such as, for example, a microprocessor(s) or a portion of
a microprocessor(s), that require software or firmware for
operation even if the software or firmware is not physically
present. This definition of `circuitry` applies to all uses of this
term herein, including in any claims. As a further example, as used
herein, the term `circuitry` also includes an implementation
comprising one or more processors and/or portion(s) thereof and
accompanying software and/or firmware.
[0017] As indicated above, some embodiments of the present
invention may be employed in methods, apparatuses, systems and
computer program products configured to advantageously provide a
prediction for a criteria of interest for one or more objects, one
or more groups of objects or the like. In some examples, a
prediction for a criteria of interest may be generated from or
otherwise be a function of tag location data, derived tag location
data, statistical data or the like. For example, embodiments of the
present invention may advantageously provide for predicting a
prediction for a criteria of interest (i.e., predicting potential
performance metrics or the like) for an object, such as a football
player, based upon tag location data, derived tag location data,
statistical data or the like corresponding to the object and/or one
or more potential outcomes for the object.
[0018] In one example embodiment, a system may advantageously
provide a prediction for a criteria of interest of a future
performance, such as a football player's future performance (or
data on a how a player should have performed) based upon data
corresponding to the football player's past performances,
performances of other players similar to the football player,
characteristics of the opposition, climate characteristics,
contextual data, tag location data, derived tag location data,
statistical results of the player or similar players, the player's
health history data, player equipment characteristic data, and/or
any data that may have a material effect on the player's
performance and the like. For example, data corresponding to a
football player's past performance against a particular team at a
particular location may be used to determine the player's
performance against the same or similar team at the same or similar
location. Additionally, performance of a player with similar
characteristics (e.g., height, weight, speed, strength or the like)
may also be used to provide predictive analytics for how a
particular object might perform. Accordingly, embodiments described
herein may provide a prediction for a criteria of interest based
upon previous tag location data, derived tag location data,
statistical data or the like corresponding to a particular
object.
[0019] In some example embodiments and in order to provide
predictive analytics, the methods, apparatus, systems and computer
program products may be configured to generate or otherwise access
information relating to a particular object. Object information may
include, but is not limited to, organization, name, role, title,
statistics, protective equipment, years of experience, college,
location, hometown and the like. The object information, in some
examples, may be filtered based on external factors such as, but
not limited to, time of year, climate, opponent or the like or may
include, but is not limited to, impact data, route running data,
movement data, speed data, acceleration data, body pose data and/or
the like.
[0020] Statistical data may be generated by combining a portion or
all of the tag location data for one or more objects or may be
received from one or more users. In some example embodiments, a
portion of the statistical data may be used to train and/or test a
model in conjunction with tag location data and derived tag
location data (e.g. one or more particular types of tag location
data). For example, the model may be configured to determine one or
more patterns that are suggestive of a particular result. In some
examples, patterns may be generated or otherwise detected based on
characteristics, external factors, associations and/or the
like.
[0021] In some examples, training the model may include historical
statistical model and may further include defining relationships
between two or more fields of statistical data in a database, date
store or the like. In other words, the model may be defined such
that an outcome field is dependent (e.g., dependent variable) on
one or more other fields (e.g. independent variables). For example,
a play outcome (e.g., play outcome data) could be not targeted,
targeted, or caught. Independent variables could vary at each time
epoch, and could include statistical data or derived tag location
data (e.g., formation, play, relative position to ball, relative
position to quarterback, relative position to adversary, speed,
velocity, acceleration, height and/or the like). In some examples,
derived tag location data may be based on a single time epoch where
other examples the derived tag location data may be based on two or
more time epochs.
[0022] As such, derived location data, such as velocity, can be
compared to play outcome data, such as a catch, to determine
whether a pattern exists. If so, the model may be trained to look
for such a pattern and apply the pattern to future velocity
measurements for a particular object.
[0023] In some example embodiments, criteria of interest may be
established for the purpose of evaluating the tag location data,
derived tag location data, statistical data or the like as a basis
for generating data prediction. For example, criteria of interest
(e.g., type of outcome to be predicted) may include certain
performance related items, such as targeted, not targeted, catches,
drops, play outcomes (e.g., the result of a particular play, a
catch, a drop, a run, a pass or the like) in the form of play
outcome data, the longest run, the fastest player, the longest
throw, predicted completion percentage or the like for a particular
game, group of games or a season.
[0024] According to some example embodiments, criteria of interest
may include information corresponding to an athlete with the
ability to start moving and stop moving the quickest, vertical
jump, sprint times, an athlete with the ability to perform at a
specific level in certain climate and/or environmental conditions
and/or an athlete with the ability to perform at a specific level
despite a predicted loss of ability to perform at the specified
level (e.g., a player able to still score points commensurate with
a high stamina level even when the player has a low stamina level,
a player able to run at a particular speed even though injured,
etc.). In some example embodiments, statistical data, tag location
data or the derived tag location data may be used and/or tracked in
real time and the related or applied predictive mode may be used
for informative purposes, to enable decisions to be made and/or to
make or alter predictions related to an object or group of
objects.
[0025] In further example embodiments, criteria of interest and
object information may be used as inputs to the trained model. As
such, based on the object and particular criteria, the model may
provide a prediction of a particular statistical output or play
outcome. For example, the model may provide a prediction of a
running back's total rushing yards in an upcoming game or an
indication of a probability of rushing yards for an object in a
particular game exceeding 100 yards. Alternatively or additionally,
in other examples, the model may be configured to measure an
object/participant's performance (e.g., speed) for the current play
and using that as an independent variable to predict play outcome
(e.g., catch, drop, etc.). In other examples, the model may be used
to predict particular results as a function of the arm strength of
a quarterback, 40-yard dash speed of a linebacker or the like, such
as based on a combine, tryout or the like.
[0026] One example may comprise:
TABLE-US-00001 Tag Location Play Data Role Play Outcome Object ID 1
10 WR Targeted A1 2 11 WR Catch A1 3 8 WR Not targeted A1 4 10 WR
Catch A1
[0027] In some examples, play outcomes (or play outcome data) may
be aggregated in the form of performance data (e.g., plays 4,
targeted 3, catch 2 using the above referenced table). In some
examples, the system and method described herein may use particular
tag location data or derived tag location data to generate a
prediction. For example, tag location data equal to 8 may suggest
that the likelihood a play occurred is 100%, object was targeted
75% and catch 50%. Whereas tag location data equal to or greater
than 10 may suggest that the likelihood a play occurred is 100%,
object was targeted 100% and catch 67%. Event predictions may also
be made (e.g., total plays 28, targeted 21, catch 14 and/or the
like)
[0028] FIG. 1 illustrates a system configured to determine tag
location data for an object. In this regard, the system 100 may
include an example communication architecture, which may include
one or more devices and/or sub-systems that are configured to
implement the example embodiments discussed herein. For example, an
object or participant may possess a tag 102, such as an ultra-wide
band tag, a near-field communication tag, a sensor (e.g.,
thermometer, accelerometer, proximity sensor, etc.), a GPS tracking
device and/or other tracking devices, or the like configured to
communicate with at least one receiver 106. The tag 102 may be
configured to communicate with the at least one receiver on an
ultra-wide band (UWB) frequency. Although FIG. 1 illustrates a
single tag, one of ordinary skill in the art may appreciate in
light of this disclosure that an object may possess any number of
tags. Further, the system 100 may be configured to predict a
particular criteria of interest of any number of objects possessing
any number of tags. In addition, the at least one tag 102 may be
configured to communicate with the at least one receiver(s) 106
wirelessly, as described in greater detail herein and with respect
to FIG. 2A. The at least one receiver(s) 106 may be configured to
communicate with a receiver hub 108, which is configured to output
at least object location data for a particular object to processor
155 of a receiver processing and distribution system 110, as
discussed in further detail below. According to some embodiments,
the receiver hub 108 may be configured to receive an input from the
at least one of the receiver(s) 106 corresponding to at least
object location data for a particular object.
[0029] The receiver processing and distribution system 110
illustrated in FIG. 2A may include a predictive data engine 112.
The receiver processing and distribution system 110 and/or the
predictive data engine 112 may include, for example, a processor
155, a memory 158, storage 160 (e.g., tag location data, derived
tag location data, play outcome data and/or the like), at database
162A, 162Z, an object information data storage 170, at least one
object information database 172A, 172Z, and statistical data
180.
[0030] The predictive data engine 112 may take the form of any
suitable network server and/or other processing device, such as a
computer, tablet computer, smartphone, and/or the like. The at
least one database 162A and the at least one object information
database 172A can be any suitable network database configured to
store tag location data, derived tag location data or the like and
association data respectively. In addition, the database 162A
and/or the object information database 172A may be configured to
store data corresponding to a relationship between at least one
object and at least one association. For example, the tag location
data, derived tag location data or the like database and/or the
association data database may also be configured to store data
corresponding to a relationship between at least one object and at
least one association/correlation, such as a relationship between a
football player and the player's current team, a football player
and the player's past teams, a football player and the opposing
team of a current football game, a football player and the opposing
team in past games, and the like. According to some embodiments,
the tag location data, derived tag location data or the like
database and/or the association data database may be configured to
store data corresponding to a relationship between at least one
object and at least one association, such as the relationship
between the football player and a particular climate, environment,
using particular equipment, playing on a particular day and/or
time, and/or the like. In some example embodiments, statistics
(e.g., total yards, total catches, number of touchdowns, and/or the
like) for a particular object may be stored in the statistical data
180. In some examples, statistical data may be historical
statistical data whereas in other examples statistical data is real
time statistical data or near real time statistical data. In
further examples, statistical data may be limited to data that
describes one or more known metrics that track the performance of a
player on the field as captured by a human, whereas in other
examples statistical data may be derived from tag location data or
the derived tag location data.
[0031] Although some embodiments described herein relate to a
system for predicting analytics for American Football, such as for
a football player, based upon tag location data, derived tag
location data, statistical data or the like, one of ordinary skill
in the art may appreciate the system may be employed for predicting
analytics based upon any type of tag location data, derived tag
location data, statistical data or the like. For example, the
system may be employed for predicting analytics corresponding to
other sports based upon aggregate data. In another embodiment, the
system may be employed for predicting analytics corresponding to
agricultural needs based upon aggregate data. For example, the
system may be used to predict analytics, such as a cow's ability to
produce milk, based upon aggregate data, such as the cow's past
milk production, the cow's movement, the climate, the environment,
the cow's diet, and/or the like.
[0032] Although FIG. 1 illustrates multiple databases, one of skill
in the art may appreciate that a single database may be employed
that may be configured to store the tag location data, derived tag
location data or the like, association data and/or the statistical
data. According to some embodiments, the database(s) may employ a
structured storage feature, which may provide a mechanism for
storage and retrieval of data that transcends the constraints of a
traditional relational database, such as a database that allows for
the use of SQL-like query language. In some embodiments, the
database(s) illustrated in FIG. 1 may include a NoSQL database.
Additionally and/or alternatively, the database(s) of FIG. 1 may be
deployed as a series of separate, but related, storage units that
may be spread across geographically dispersed storage and
processing devices (e.g., storage units displaced by a distance
from one another such as a first storage unit in the vicinity of
San Francisco, Calif. and another in the vicinity of Detroit,
Mich.). In this regard, the predictive data engine 112 may include,
for example, at least one backend data server, network database,
cloud computing device, among other things. According to some
embodiments, the predictive data engine 112 may include, for
example, a Hadoop-like file system and/or software framework, which
may consist of data intensive distributed applications, distributed
files, and/or structured storage. In addition, the receiver
processing and distribution system 110 may be configured to
communicate with a user interface 190, which may be configured to
display a prediction for a criteria of interest of an object
determined by the predictive data engine 112. In some examples, the
predictive analytic data may be displayed or otherwise transmitted
to another device in real time or in near real time (e.g., before a
next play, etc.).
[0033] As shown in FIG. 2A, an object, such as a football player,
may possess a tag 102, such as a tag 102 illustrated in FIG. 1. The
football player may have a tag 102 incorporated into the player's
equipment, such as a helmet, protective gear, clothing, and/or the
like. In addition, an environment, such as a football field
illustrated in FIG. 2A, may include a plurality of receivers 106
configured to communicate with the plurality of tags 102 associated
with each of the respective objections (e.g., players,
participants, referees, the ball and/or the like). In some
embodiments, a plurality of receivers 106 may also be configured to
communicate with a reference tag 204. Accordingly, the receivers
may be configured to communicate with a receiver hub 108, which may
be configured to communicate with a receiver processing and
distribution system 110. In some embodiments, the receiver
processing and distribution system 110 may include a prediction for
criteria of interest system, such as the predictive data engine 112
illustrated in FIG. 1.
[0034] As such, the predictive data engine 112, as illustrated in
FIG. 1, may be configured to receive tag location data
corresponding to a particular object that may be provided by the
plurality of receivers. Although FIGS. 1 and 2A illustrate a
predictive data engine configured to receive tag location data
corresponding to a location of a tag, one of ordinary skill in the
art may appreciate that any number and types of sensors may be
utilized to capture tag location data or other real time or near
real time metrics that correspond to the object, such as heart rate
monitors, accelerometers, gyroscopes, pedometers, thermometers
and/or the like.
[0035] Referring to FIG. 2A, FIG. 2A illustrates a radio frequency
locating system useful for determining the location of an object
(e.g. a football player on a football field) by determining RF
location tag 102 (e.g., a ultra-wide band (UWB) location tag)
location information at each receiver 106 (e.g., UWB reader, etc.);
a timing reference clock to synchronize the frequency of counters
within each receiver 106; and, in some examples, a reference tag
104, preferably a UWB transmitter, positioned at known coordinates
to enable phase offset between counters to be determined. The
systems described herein may be referred to as either
"multilateration" or "geolocation" systems; terms which refer to
the process of locating a signal source by solving for the
mathematical intersection of multiple hyperbolae determined by the
difference of arrival times of a signal received at multiple
receivers.
[0036] In some examples, the system comprising at least the tags
102 and the receivers 106 is configured to provide two dimensional
and/or three dimensional precision localization (e.g., subfoot
resolutions), even in the presence of multipath interference, due
in part to the use of short nanosecond duration pulses whose
time-of-flight can be accurately determined using detection
circuitry, such as in the receivers 106, which can trigger on the
leading edge of a received waveform. In some examples, this short
pulse characteristic allows necessary data to be conveyed by the
system at a higher peak power, but lower overall power levels, than
a wireless system configured for high data rate communications, yet
still operate within local regulatory requirements which may limit
overall power levels.
[0037] The tag signal transmitted from RF location tag 102 to
receiver 106 may include "blink data" as it is transmitted at
selected intervals. This "blink rate" may be set by the tag
designer or the system designer to meet application requirements.
In some embodiments it is consistent for one or all tags; in some
embodiments it may be data dependent. Blink data includes
characteristics of the tag signal that allow the tag signal to be
recognized by the receiver 106 so the location of the RF location
tag 102 may be determined by the locating system. Blink data may
also comprise one or more tag data packets. Such tag data packets
may include any data from the tag 102 that is intended for
transmission such as, for example in the depicted embodiment, a tag
UID, tag data, and a tag-individual correlator. In the case of TDOA
systems, the blink data may be or include a specific pattern, code,
or trigger that the receiver 106 (or downstream receiver processing
and analytics system) detects to identify that the transmission is
from a RF location tag 102 (e.g., a UWB tag).
[0038] In some examples, the tags 102 may operate with an
instantaneous -3 dB bandwidth of approximately 400 MHz and an
average transmission rate below a 187.5 kHz regulatory cutoff. In
such examples, the predicted maximum range of the system, operating
at 6.0 GHz, is roughly 311 meters. Such a configuration
advantageously satisfies constraints applied by regulatory bodies
related to peak and average power densities (e.g., effective
isotropic radiated power density), while still optimizing system
performance related to range and interference. In further examples,
tag transmissions with a -3 dB bandwidth of approximately 400 MHz
yields, in some examples, an instantaneous pulsewidth of roughly
2.5 nanoseconds which enables a resolution to better than 30
centimeters.
[0039] Referring again to FIG. 2A, the object to be located has an
attached RF location tag 102, preferably a tag having a UWB
transmitter, that transmits a signal comprising a burst (e.g., 72
pulses at a burst rate of 1 Mb/s), and optionally, a burst having a
tag data packet that may include tag data elements that may
include, but are not limited to, a tag unique identification number
(tag UID), other identification information, a sequential burst
count, stored tag data, or other desired information for object or
personnel identification, inventory control, etc. In some
embodiments, the tag data packet may include a tag-individual
correlator that can be used to associate a specific individual
(e.g., participant) with a specific tag. In some examples, the
sequential burst count (e.g., a packet sequence number) from each
tag 102 may be advantageously provided in order to permit, at a
receiver hub 108, correlation of time of arrival (TOA) measurement
data from various receivers 106.
[0040] In some examples, the RF location tag 102 may employ UWB
waveforms (e.g., low data rate waveforms) to achieve extremely fine
resolution because of their extremely short pulse (i.e.,
sub-nanosecond to nanosecond, such as a 2 ns (1 ns up and 1 ns
down)) durations. As such, the tag data packet may be of a short
length (e.g., 72-112 bits in some example embodiments), that
advantageously enables a higher throughput and higher transmission
rates. In some examples, higher throughput and/or higher
transmission rates may result in larger datasets for filtering to
achieve a more accurate location estimate. In some examples, rates
of up to approximately 2600 updates per second can be accommodated
without exceeding regulatory requirements. Alternatively or
additionally, in some examples, the length of the tag data packets,
in conjunction with other system functionality, may also result in
a longer battery life (e.g., a 3.0 v 1 A-hr lithium cell battery
may result in a tag battery life in excess of 3.8 years).
[0041] In some examples, one or more other tags, such as a
reference tag 104, may be positioned within and/or about a
monitored area or zone, such as monitored area 100 illustrated
herein as a football field. In some examples, the reference tag 104
may be configured to transmit a signal that is used to measure the
relative phase (e.g., the count of free-running counters) of
non-resettable counters within the receivers 106.
[0042] One or more (preferably four or more) receivers 106 are also
at locations with predetermined coordinates within and/or around
the monitored area 100. In some examples, the receivers 106 may be
connected in a "daisy chain" fashion to advantageously allow for a
large number of receivers 106 to be interconnected over a
significant monitored area in order to reduce and simplify cabling,
reduce latency, provide power and/or the like. Each of the
receivers 106 includes a receiver for receiving transmissions, such
as UWB transmissions, and preferably, a packet decoding circuit
that extracts a time of arrival (TOA) timing pulse train,
transmitter ID, packet number and/or other information that may
have been encoded in the tag transmission signal (e.g., material
description, personal information, etc.) and is configured to sense
signals transmitted by the tags 102 and one or more reference tags
104 (if present).
[0043] Each receiver 106 includes a time measuring circuit that
measures time differences of arrival (TDOA) of tag bursts. The time
measuring circuit is phase-locked (e.g., phase differences do not
change and therefore respective frequencies are identical) with a
common digital reference clock signal distributed via cable
connection from a receiver hub 108 having a central timing
reference clock generator. The reference clock signal establishes a
common timing reference for the receivers 106. Thus, multiple time
measuring circuits of the respective receivers 106 are synchronized
in frequency, but not necessarily in phase. While there typically
may be a phase offset between any given pair of receivers in the
receivers 106, the offset is readily determined through use of a
reference tag 104. Alternatively or additionally, each receiver may
be synchronized wirelessly via virtual synchronization without a
dedicated physical timing channel.
[0044] In some example embodiments, the receivers 106 are
configured to determine various attributes of the received signal.
Since measurements are determined at each receiver 106, in a
digital format, rather than analog, measurements are transmittable
to the receiver hub 108. Advantageously, because packet data and
measurement results can be transferred at high speeds to a receiver
memory, the receivers 106 can receive and process tag (and
corresponding object) locating signals on a nearly continuous
basis. As such, in some examples, the receiver memory allows for a
high burst rate of tag events (i.e., tag data packets) to be
captured.
[0045] Data cables or wireless transmissions may convey measurement
data from the receivers 106 to the receiver hub 108 (e.g., the data
cables may enable a transfer speed of 2 Mbps). In some examples,
measurement data is transferred to the receiver hub at regular
polling intervals.
[0046] As such, the receiver hub 108 determines or computes tag
location (i.e., object location) by processing TDOA measurements
related to multiple data packets detected by the receivers 106. In
some example embodiments, the receiver hub 108 may be configured to
resolve the coordinates of a tag using nonlinear optimization
techniques. The receiver hub 108 may also be referred to herein as
a locate engine or a receiver hub/locate engine.
[0047] In some examples, the system described herein may be
referred to as an "over-specified" or "over-determined" system. As
such, the receiver hub 108 may then calculate one or more valid
(i.e., most likely) locations based on a set of measurements and/or
one or more incorrect (i.e., less likely) locations. For example, a
location may be calculated that is impossible due the laws of
physics (e.g., a tag on a football player that travels more than
100 yards in 1 second) or may be an outlier when compared to other
locations. As such one or more algorithms or heuristics may be
applied to minimize such error.
[0048] One such algorithm for error minimization, which may be
referred to as a time error minimization algorithm, may be
described as:
= j = 1 N k = j + 1 N { ( t j - t k ) - 1 c [ [ ( x - x j ) 2 + ( y
- y j ) 2 + ( z - z j ) 2 ] 1 2 - [ ( x - x k ) 2 + ( y - y k ) 2 +
( z - z k ) 2 ] 1 2 ] } 2 ##EQU00001##
[0049] where N is the number of receivers, c is the speed of light,
x.sub.j,k, y.sub.j,k and z.sub.j,k are the coordinates of the
receivers and t.sub.j,k are the arrival times received at each of
the receivers. Note that only time differences may be evaluated at
hub 108 in some example embodiments. The starting point for the
minimization may be obtained by first doing an area search on a
coarse grid of x, y and z over an area defined by the user and
followed by a localized steepest descent search.
[0050] Another or second algorithm for error minimization, which
may be referred to as a distance error minimization algorithm, may
be defined by:
= j = 1 N [ [ ( x - x j ) 2 + ( y - y j ) 2 + ( z - z j ) 2 ] 1 2 -
c ( t j - t 0 ) ] 2 ##EQU00002##
[0051] where time and location differences are replaced by their
non-differential values by incorporating an additional unknown
dummy variable, t.sub.0, which represents an absolute time epoch.
The starting point for this algorithm is fixed at the geometric
mean position of all active receivers. No initial area search is
needed, and optimization proceeds through the use of a
Davidon-Fletcher-Powell (DFP) quasi-Newton algorithm in some
examples. In other examples, a steepest descent algorithm may be
used.
[0052] In order to determine the coordinates of a tag (T), in some
examples and for calibration purposes, a reference tag (e.g.,
reference tag 104) is positioned at a known coordinate position
(x.sub.T, y.sub.T, z.sub.T).
[0053] In further example embodiments, a number N of receivers
{R.sub.j: j=1, . . . , N} (e.g., receivers 106) are positioned at
known coordinates (x.sub.R.sub.j, y.sub.R.sub.j, z.sub.R.sub.j),
which are respectively located at distances, such as:
d.sub.Rj= {square root over
((x.sub.Rj-x.sub..tau.).sup.2+(y.sub.Rj-y.sub..tau.).sup.2+(z.sub.Rj-z.su-
b..tau.).sup.2)}{square root over
((x.sub.Rj-x.sub..tau.).sup.2+(y.sub.Rj-y.sub..tau.).sup.2+(z.sub.Rj-z.su-
b..tau.).sup.2)}{square root over
((x.sub.Rj-x.sub..tau.).sup.2+(y.sub.Rj-y.sub..tau.).sup.2+(z.sub.Rj-z.su-
b..tau.).sup.2)}
from a reference tag.
[0054] Each receiver R.sub.j utilizes, for example, a synchronous
clock signal derived from a common frequency time base, such as
clock generator. Because the receivers are not synchronously reset,
an unknown, but constant offset O.sub.j exists for each receiver's
internal free running counter. The value of the offset O.sub.j is
measured in terms of the number of fine resolution count increments
(e.g., a number of nanoseconds for a one nanosecond resolution
system).
[0055] The reference tag is used to calibrate the radio frequency
locating system as follows:
[0056] The reference tag emits a signal burst at an unknown time
.tau..sub.R. Upon receiving the signal burst from the reference
tag, a count N.sub.R.sub.j as measured at receiver R.sub.j is given
by
N.sub.i.sub.j=.beta..tau..sub.r+O.sub.j+.beta.d.sub.R.sub.j/c
[0057] where c is the speed of light and .beta. is the number of
fine resolution count increments per unit time (e.g., one per
nanosecond). Similarly, each object tag T.sub.i of each object to
be located transmits a signal at an unknown time .tau..sub.i to
produce a count
N.sub.i.sub.j=.beta..tau..sub.i+O.sub.j+.beta.d.sub.i.sub.j/c
[0058] at receiver R.sub.j where d.sub.i.sub.j is the distance
between the object tag T.sub.i and the receiver at receiver
R.sub.j. Note that .tau..sub.i is unknown, but has the same
constant value for receivers of all receivers R.sub.j. Based on the
equalities expressed above for receivers R.sub.j and R.sub.k and
given the reference tag information, differential offsets expressed
as differential count values are determined as follows:
N R j - N R k = ( O j - O k ) + .beta. ( d R i c - d R k c )
##EQU00003## or ( O j - O k ) = ( N R j - N R k ) - .beta. ( d R j
c - d R k c ) = .DELTA. j k ##EQU00003.2##
[0059] .DELTA..sub.jk is constant as long as d.sub.Rj-d.sub.Rk
remains constant, (which means the receivers and tag are fixed and
there is no multipath situation) and .beta. is the same for each
receiver. Note that .DELTA..sub.j.sub.k is a known quantity, since
N.sub.R.sub.j, N.sub.R.sub.k, .beta., d.sub.R.sub.j/c, and
d.sub.R.sub.k/c are known. That is, the differential offsets
between receivers R.sub.j and R.sub.k may be readily determined
based on the reference tag transmissions. Thus, again from the
above equations, for an object tag (T.sub.i) transmission arriving
at receivers R.sub.j and R.sub.k:
N.sub.i.sub.j-N.sub.i.sub.k=(O.sub.j-O.sub.k)+.beta.(d.sub.i.sub.j/c-d.s-
ub.i.sub.k/c)=.DELTA..sub.j.sub.k+.beta.(d.sub.i.sub.j/c-d.sub.i.sub.k/c)
or,
d.sub.i.sub.j-d.sub.i.sub.k=(c/.beta.)[N.sub.i.sub.j-N.sub.i.sub.k-.DELT-
A..sub.j.sub.k],
[0060] The process further includes determining a minimum error
value E.sub.i, for each object tag T.sub.i, according to the
functional relationship:
E i = min ( x , y , z ) j k > j [ ( d i j - d i k ) - ( dist ( T
x , y , z , R j ) - dist ( T x , y , z , R k ) ) ] 2 ##EQU00004##
where dist ( T x , y , z , R j ) = ( x R j - x ) 2 + ( y R j - y )
2 + ( z R j - z ) 2 ##EQU00004.2##
[0061] is the Euclidean distance between point (x,y,z) and the
coordinates of the j.sup.th receiver R.sub.j. The minimization
solution (x',y',z') is the estimated coordinate location for the
i.sup.th tag at t.sub.0.
[0062] In an example algorithm, this proceeds according to:
= j = 1 N [ [ ( x - x j ) 2 + ( y - y j ) 2 + ( z - z j ) 2 ] 1 2 -
c ( t j - t 0 ) ] 2 ##EQU00005##
[0063] where each arrival time, t.sub.j, is referenced to a
particular receiver (receiver "1") as follows:
t j = 1 .beta. ( N j - N 1 - .DELTA. j k ) ##EQU00006##
and the minimization is performed over variables (x,y,z,t.sub.0) to
reach a solution (x',y',z',t.sub.0').
[0064] In some example embodiments, the location of a tag 102 may
then be output to a receiver processing and distribution system 110
for further processing of the location data to advantageously
provide visualizations, predictive analytics, statistics and/or the
like.
[0065] The exemplary radio frequency locating system of FIGS. 1 and
2A may be used in providing predictions for a criteria of interest
in accordance with some example embodiments of the present
invention. In the environment of FIG. 2A, tag location data may be
captured and analyzed, such as during a sporting event to identify
events, statistics, and other data useful to a sports team, league,
viewer, licensee, or the like. In some embodiments, tag location
(e.g., a sport team may use the events and statistics for future
games, training, teaching or the like), league (e.g., a league may
publish statistical data, license data to media outlets or the
like), viewer (e.g., may use the events and statistics to enrich a
viewing experience, fantasy football, wagering or the like),
licensee (e.g., a third party company may license the use of the
statistics and/or events to enrich a game cast, enrich an
application that provides other statistical and event data, may be
used to generate news articles and/or the like), or the like. In
some embodiments, data associated with a number of objects (e.g.,
players, officials, balls, game equipment, etc.) on a playing
field, such as monitored region 200, may be generated and provided
to a predictive analytics system, such as predictive data engine
112. As such, as further discussed in connection with FIG. 2B
below, each object may have one or more attached (such as to
equipment worn by a player) tags 102 to provide, to the predictive
analytics system, useful data about the object, location and derive
tag location data such as change of location, speed, or the like.
In some embodiments, additional sensors, such as accelerometers,
gyroscopes, health sensors, temperature sensors, moisture sensors,
light sensors, or the like, may be attached to each object to
provide further data to the predictive analytics system. Such
additional sensors may provide data to the tag 102, either through
a wired or wireless connection, to be transmitted to the receivers
106 or the sensors may be configured to transmit data directly to
receivers.
[0066] In some embodiments, multiple tags 102 (as well as other
sensors) may be attached to the equipment worn by an object, such
as an individual player or official. The receiver processing and
distribution system 110 may use a database to associate the tag
unique identification number (tag UID) of each tag 102 with each
player, official, or other object and correlate the tag location
data and/or other data for multiple tags 102 that are associated
with a particular player, official, or other object.
[0067] FIG. 2B illustrates an exemplary object that may provide
information to a predictive analytics system in accordance with
some embodiments of the present invention. FIG. 2B illustrates a
player 252 (e.g., a football player) wearing equipment having
attached tags 102 in accordance with some embodiments. In
particular, the depicted player 252 is wearing shoulder pads having
tags 102 affixed to opposite sides thereof. This positioning
advantageously provides an elevated broadcast position for each tag
102 thereby increasing its communication effectiveness.
[0068] Additional sensors 254 may be attached to equipment worn by
player 252, such as accelerometers, health monitoring sensors
(e.g., blood pressure sensors, heart monitors, respiration sensors,
moisture sensors, temperature sensors), gyroscopes, light sensors,
or the like. The additional sensors 254 may be affixed to shoulder
pads, the helmet, the shoes, rib pads, elbow pads, the jersey, the
pants, a bodysuit undergarment, gloves, arm bands, wristbands, and
the like.
[0069] Sensors 254 may be configured to communicate with receivers
(106 of FIG. 1) directly or indirectly through tags 102 or other
transmitters. For example, in one embodiment, a sensor 254 may be
connected, wired (e.g., perhaps through wires sewn into a jersey or
bodysuit undergarment) or wirelessly, to tags 102 to provide sensor
data to tags 102, which is then transmitted to the receivers 106.
In another embodiment, a plurality of sensors (not shown) may be
connected to a dedicated antenna or transmitter, perhaps positioned
in the helmet, which may transmit sensor data to one or more
receivers.
[0070] FIG. 3 illustrates a flowchart of an exemplary process for
predicting a criteria of interest, using a locating system in
accordance with some embodiments of the present invention. An
exemplary method, such as process 300, may be executed by one or
more devices (some examples of which are discussed in connection
with FIGS. 1 and 2A). The process may start at 302, where tag
location data is received for one or more of the tags 102.
Additionally, in some embodiments, other sensor data, such as from
sensors 204, may be received. The tags 102 (and sensors 204) may be
attached to objects, such as to players, officials, balls, field
markers, penalty flags, other game equipment, and reference markers
on a field of play (e.g., boundary defining reference markers). In
one embodiment, each object may be associated with one or more tags
102 (e.g., multiple tags 102 may be attached to an individual
player's equipment, such as to provide more accurate location and
multi-dimensional location or orientation data).
[0071] At 304, a filter, such as a filter in the receiver
processing and distribution system 110 or the predictive data
engine 112 may process the tag location data to identify tags 102
that are associated and/or otherwise correlated with a given object
(e.g., multiple tags attached to a player, a ball, an official,
etc.). The filter may correlate the tag location data associated
with multiple tags 102 where the multiple tags 102 are associated
with the same object (e.g., player or official), such as to provide
more accurate data regarding the activities of the object.
[0072] At 306, the predictive data engine may compare the tag
identifier (e.g., a tag ID, tag UID or the like) to a database of
player roles to determine the associated player (e.g., a player
profile) and role. In some example embodiments, the predictive data
engine may use the tag location data, the player role data for each
individual player (e.g., object information such as quarterback or
center fielder), and player dynamics/kinetics models to determine
player dynamics (e.g., multi-dimensional player location
information) for each player, such as location. In other examples,
the player dynamics/kinetics models may be used to generate derived
tag location data, such as change in location, orientation, speed,
velocity, acceleration, deceleration, or the like.
[0073] At 308, the predictive data engine may determine the
likelihood that an event has occurred (e.g., particular play has
formed, a play has started, a play is in progress, or a play has
ended). In some embodiments, the predictive data engine may also
receive an indication of the actions of game officials to further
improve play determination accuracy. In some embodiments, the
predictive data engine may also receive tag-derived data associated
with a ball, a sideline, and/or the like to assist in generating
play data.
[0074] At 310, predictive data engine may generate a stream of tag
location data, derived tag location data, play outcome data, events
and statistics for the game, the players, and the teams or the like
to perform analytics, operations, or the like.
[0075] FIG. 4 illustrates a method for generating predictive data
for a criteria of interest according to some embodiments of the
present invention. An exemplary method, such as process 400, may be
executed by one or more devices (some examples of which are
discussed in connection with FIGS. 1 and 2A). At 402, a prediction
for a criteria of interest system, such as the predictive analytics
data engine 112, may receive tag location data, derived tag
location data or the like, such as the tag location data, derived
tag location data or the like generated with respect to FIG. 3.
[0076] In some embodiments, an object, such as a football player,
may possess a tag 102, as illustrated in FIG. 2B. The tag location
data may be suggestive of an object behavior, an object movement,
the participation of an object with respect to a particular event
(e.g. a play), the proximity of one or more objects (e.g. a player
and a ball), a play outcome and/or the like. For example, the tag
location data may be usable to calculate the distance that a
particular player carried the ball, the result of a particular play
or the like. In other example embodiments, the tag location data,
derived tag location data or the like may be suggestive of a
distance traveled by an object, number of knock downs, location
comparisons between opponents, location of an object in comparison
to another object, path of travel of an object based on a
predetermined path in a playbook or the like, speed of travel after
a play and/or other metrics not otherwise tracked via conventional
statistics. In other examples, other data, such as data from an
accelerometer or a gyroscope may be indicative of a collision that
may affect the object. In further examples, derived tag location
data may include statistical data that changes over time, such as
speed over the length of the game, elapsed time to return to a
huddle, velocity of a movement, distance after contact or the
like.
[0077] A predictive data engine may receive, in some examples,
additional object information at 402 that corresponds to the
object. In some embodiments, at 402, the predictive data engine may
be configured to receive object information corresponding to an
object name, object type or role, object information, object
equipment, and/or the like. For example, a user may manually input
object information via a user interface, such as the user interface
190 shown in FIG. 1, which corresponds to the object. According to
one embodiment, a user may provide object information, such as a
football player's name, the football player's location, the
equipment the football player uses and/or wears, the football
player's height, the football player's weight, the number of years
the football player has played in a league, the name of the
football player's college team, and/or the like. Additional
information relating to registration of object data (e.g., a player
to a particular tag) can be found in U.S. Provisional Patent
Application No. 60/831,990 filed Jun. 6, 2013. Accordingly, the
predictive data engine may be configured to receive object
information corresponding to any number of characteristics
associated with the object.
[0078] At 404, the predictive data engine may be configured to
generate derived tag location data. At 406, the predictive data
engine may be configured to define and/or determine associations
for an object. Example associations include, but are not limited
to, an association between the football player and the player's
team, conference, division, and/or the like. In some embodiments,
the predictive data engine may be configured to determine a
relationship between objects using the tag location data, such as a
relationship between the football player's location throughout the
game and the football player's team, the opposing team, and/or the
like. In other examples, associations may be determined based on
derived tag location data (e.g. distance between an object and an
opposing object, such as a defender). or other adversary.
[0079] At 408, the predictive data engine may be configured to
define or otherwise receive at least one criteria of interest. The
criteria of interest may include any number of metrics associated
with the object. In some embodiments, the criteria of interest may
include metrics corresponding to the performance of the object or
similar objects, such as total yards traveled, number of plays,
time on the field, or the like. In another example, the criteria of
interest may be defined by performance metrics, such as a football
player's performance (e.g., total rushing yards, total catches
and/or the like). In another embodiment, the predictive data engine
may be configured to define a plurality and/or a combination of
various criteria of interest. For example, the criteria could be
defined as number of plays, total yards traveled, total
completions, time on the field and/or the like.
[0080] In some example embodiments, a user interface, such as the
user interface 190 of FIG. 1, may be configured to receive an
indication corresponding to a selection of one or more criteria of
interest. According to some example embodiments, the user interface
may be configured to provide a graphical representation of the
data, a video enhanced with or combined with a data presentation, a
graphical overlay of data onto a video and/or image, and/or the
like (e.g., a video may show a distance between a receiver and a
quarterback and a quarterback head position and highlight the
receiver as a potential target based on a model). Accordingly,
example embodiments may provide a system configured to define any
number of criteria of interest that may correspond to any suitable
metric or characteristic associated with the object.
[0081] At 410, the predictive data engine may be configured to
predict criteria of interest. In some example embodiments, the
predictive data engine may be configured to utilize a model, such
as the model described with respect to FIGS. 5 and/or 6, to
determine a prediction for a criteria of interest corresponding to
the football player.
[0082] At 412, the predictive data engine may be configured to
cause the prediction for a criteria of interest to be displayed on
an interface, such as the user interface 190 shown in FIG. 1 and/or
transmitted to another device for viewing. In some embodiments, a
user interface configured to display tag location data may be
displayed on a display 700, as illustrated in FIG. 7. Although FIG.
7 illustrates tag location data 702 displayed on a radar graph, the
user interface may be configured to display tag location data in
any suitable manner, such as heat maps, bar graphs, scatter plots,
data listings and/or the like. In some embodiments, the graphical
representation of the tag location data may be displayed as an
avatar, a graphical representation of the data, a video enhanced
with or combined with a data presentation, a graphical overlay of
data onto a video and/or image, and/or the like.
[0083] FIG. 5 illustrates a method for generating a prediction for
a criteria of interest according to some example embodiments of the
present invention. An exemplary method, such as process 500, may be
executed by one or more devices (some examples of which are
discussed in connection with FIGS. 1 and 2A). At 502, tag location
data for an object or a set of objects may be captured, such as by
the predictive data engine. At 504, derived tag location data,
statistical data, play outcome data or the like may be generated or
otherwise accessed for the particular object or set of objects.
[0084] At 506, the tag location data, derived tag location data or
the like for the object may be compared to a model that comprises
tag location data, derived tag location data and/or the like and
various play outcomes. Specifically, the predictive data engine may
be configured to compare a tag location data, derived tag location
data or the like for objects of a certain type (e.g., quarterbacks
in the league) and a particular outcome against the tag location
data, derived tag location data or the like for a particular object
(e.g., quarterback for the current play) and the actual outcome.
Such a comparison may generate an indication of how a particular
object performed in comparison to all objects of that type. An
example of such a comparison is further shown with respect to tag
location data, derived tag location data or the like 708 for an
object and tag location data, derived tag location data,
statistical data or the like 704 for one or more objects of that
type of FIG. 7.
[0085] At 508, a prediction for the criteria of interest is
generated as a function of the comparison. For example, using the
tag location data, derived tag location data, statistical data or
the like, the performance of a current object can be predicted. In
one example, if a player (e.g., quarterback) had played in a
certain number of plays and was on the field for a particular
amount of time, a certain performance, such as number of
completions (or completion percentage) could be predicted.
Alternatively, in overtime, the player may have played worse than
what was predicted, thus indicating a conditioning issue that could
be addressed. According to some embodiments, a predictive analytic
value may be generated for a specific quarterback based at least in
part on a comparison of tag location data, derived tag location
data or the like corresponding to the specific quarterback's
performance in a game and tag location data, derived tag location
data, statistical data or the like corresponding to the
performances of all quarterbacks in all games within the league. In
some embodiments, tag location data, derived tag location data,
statistical data or the like may provide a component or an
indication for determining a prediction for the criteria of
interest. For example, if the tag location data, derived tag
location data, statistical data or the like details an event (e.g.,
the quarterback threw a touchdown pass) occurred 100 times in 100
games, then the tag location data, derived tag location data,
statistical data or the like may provide an indication and/or a
component for determining a predictive analytic value corresponding
to whether or not the quarterback will throw a touchdown in an
upcoming game. In this regard, the tag location data, derived tag
location data, statistical data or the like may provide an
indication of a high probability that a particular event will occur
in other games. Conversely, if the tag location data, derived tag
location data, statistical data or the like details an event (e.g.,
the quarterback threw a touchdown pass) occurred 100 times in
10,000 games, then the tag location data, derived tag location
data, statistical data or the like may provide an indication of a
very low probability that the event will occur in other games. An
example of such a value is further shown with respect to the a
prediction for a criteria of interest 706 of FIG. 7.
[0086] As is shown in FIG. 6, some embodiments of the present
invention may provide a method for training a model and then
executing the model to generate a prediction for a criteria of
interest. An exemplary method, such as process 600, may be executed
by one or more devices (some examples of which are discussed in
connection with FIGS. 1 and 2A). At block 602, the predictive data
engine 112 may be configured to receive a dataset comprising tag
location data, derived tag location data or the like. In further
example embodiments, statistical data may also be optionally
associated with the object. For example, the number of touchdowns,
the number of completions, the number of knock downs, the number of
sacks or the like may be associated with a particular object. As
such, the tag location data, derived tag location data or the like
may be compared to the statistical output or historical outcomes to
determine one or more patterns that are suggestive of a particular
outcome. In other examples, the tag location data, may be compared
to the derived tag location data, statistical data or the like to
determine one or more patterns that are suggestive of a particular
outcome. In further example embodiments, data may be compared to
any data collected, maintained and/or sourced that may correlate
with any statistic, such as climate data, public sentiment data
(i.e., the general public's sentiment towards a particular object),
and/or gaming data, such as gambling data, fantasy football data,
and/or the like. In some examples, statistical data alone may be
used to generate the model.
[0087] At block 604, according to some embodiments, a pattern
recognition algorithm may be used to process the input dataset in
order to determine tag location, derived tag location data or the
like, play outcomes for criteria of interest and/or metrics. In
some example embodiments, determining may include classifying tag
location data, derived tag location data or the like or the like as
effecting or otherwise informative of a particular result (e.g.,
correlating independent variables to dependent variables). In some
example embodiments, the model may additionally or alternatively be
trained so that it may estimate a value of a particular criteria of
interest and/or metric based on the tag location data, derived tag
location data or the like and/or relationships between aggregated
tag location data, derived tag location data or the like.
[0088] Cluster analysis and classification algorithms are two
examples of pattern recognition algorithms that may be used to
process the input dataset. In cluster analysis, an input dataset
may be classified into one of several groups (clusters) of
patterns. Patterns within the same cluster are likely to be more
similar to each other than they are similar to patterns assigned to
different clusters. A classification algorithm (i.e., classifier)
maps an input dataset into one of several clusters within which the
pattern is most likely similar. As such, one or more patterns in
the tag location data, derived tag location data or the like may be
determined, such patterns suggestive of a particular statistical
outcome.
[0089] Machine learning is often used to develop a particular
pattern recognition algorithm (i.e., a process for recognizing a
particular pattern) that may be used for statistical inference. For
example, a set of clusters may be developed using unsupervised
learning, in which the number and respective sizes of the clusters
are determined using calculations of similarity between features of
the patterns for a previously collected training set of patterns.
In another example, a classifier representing a particular
categorization problem may be developed using supervised learning
on a training set of patterns including known categorizations. Each
training pattern is input to the classifier, and the difference
between the output categorization and the known categorization is
calculated. This difference calculated by the classifier is used to
adjust the classifier coefficients to more accurately categorize
the patterns. A classifier that is developed using supervised
learning may also be known as a trainable classifier.
[0090] In some embodiments, predictive analysis includes data
predictive classifier that takes tag location data, derived tag
location data or the like as an input and produces an output that
categorizes the particular tag location data, derived tag location
data or the like in such a way to predict one or more statistical
outcomes (e.g., prediction for a criteria of interest). In some
examples, the model may be configured to generate a particular
quantitative result, whereas in other example embodiments a range
or threshold may be reported, whereas in further examples a
particular play outcome may be predicted.
[0091] As is shown in block 606, tag location data, derived tag
location data and/or object information may be provided along with
particular criteria of interest. In some embodiments, the
predictive data engine may be configured to determine tag location
data associated with the object and the at least one criteria of
interest based upon additional data that is not associated with the
at least one criteria of interest. For example, the criteria of
interest may be the number of rushing yards a player has accrued
per game played at Denver, Colo., while the predictive data engine
may be configured to determine a prediction for a criteria of
interest from tag location data, derived tag location data,
statistical data or the like associated with the number of rushing
yards the player accrued per game at Miami, Fla. In this
embodiment, the predictive data engine may be configured to
determine a prediction for a criteria of interest using contextual
data (i.e., such as the elevation relative to sea level at Miami,
Fla.) associated with particular tag location data, derived tag
location data or the like (i.e., the average number of rushing
yards the football player accrued per game at Miami, Fla.) to
determine a prediction for a criteria of interest (i.e., the
predicted number of rushing yards the football player will amass
during a game in Denver, Colo.) that corresponds with the
particular criteria of interest.
[0092] In some embodiments, the predictive data engine may be
configured to determine a predicted criteria of interest (e.g., to
predict a fantasy football outcome), such as events, actions, and
the like that created in a virtual and/or fantasy environment, but
may also be analyzed against actual tag location data, derived tag
location data or the like, such as a football player's performance.
For example, fantasy data may correspond to a virtual
player/athlete who is not an actual athlete, but is one who only
exists within a fantasy environment. The fantasy data may
correspond to actual data, events, actions, and the like, and may
further include abilities and/or performance characteristics
associated with actual player data, even though the virtual player
does not exist and never acquired those abilities and/or
performance characteristics. As such, the predictive data engine
may be configured to determine a prediction for a criteria of
interest using hypothetical and/or fantasy data for a virtual
player (e.g., a fantasy football representation of an actual
player, a video game representation or the like). In some
embodiments, hypothetical and/or fantasy data may be applied to an
actual player to predict how certain training stresses may increase
a player's abilities and/or the like. were created in a virtual
and/or fantasy environment. In some embodiments, the predictive
analytic data engine may be configured to determine predictive
analytic data using either or both actual object data, such as the
football player's total yardage, and fantasy data, such as a video
game statistic.
[0093] As shown in block 608, the tag location data, the derived
tag location and/or the play outcome data may be provided to the
model determined respect to block 604. In some example embodiments,
one or more criteria of interest may also be provided to the model.
The model then may compare received tag location data, derived tag
location data or the like to its determined model, the comparison
generating at least one predicted criteria of interest data for a
particular object based on tag location data, derived tag location
data or the like, and/or a relationship between the tag location
data, derived tag location data or the like and at least one
association.
[0094] In FIG. 7, the tag location data 702 may include a
prediction for a criteria of interest 706. As described herein, the
predictive data engine may be configured to determine a prediction
for a criteria of interest based upon tag location data, derived
tag location data, statistical data or the like. In addition, the
predictive data engine may be configured to display, on a user
interface, predictions corresponding to any number of criteria of
interest. In one instance, the criteria of interest for a
particular football quarterback may include the average number of
plays per game in which the player participates, the player's
performance score (e.g., quarterback rating, completion percentage,
touchdowns vs. interceptions or the like), the average amount of
time the player spends on the field during a game, the average
number of turnovers the player has committed, and the average
number of yards the player has thrown during the season. As shown
in FIG. 7, tag location data 702 may further comprise tag location
data, derived tag location data or the like 708 corresponding to
the object.
[0095] In addition, although not shown in FIG. 7, the predictive
data engine may be configured to cause a user interface to display
the tag location data, derived tag location data or the like
according to a criterion of interest. For example, the tag location
data, derived tag location data or the like 708 illustrated in FIG.
7 may correspond to all tag location data, derived tag location
data or the like collected for the particular player. In another
instance, the tag location data, derived tag location data or the
like 708 may correspond to tag location data, derived tag location
data or the like collected for the particular player, such as all
tag location data, derived tag location data or the like collected
for the particular player in games against a particular opponent.
In one example, tag location data, derived tag location data or the
like 708 may correspond to tag location data, derived tag location
data or the like collected for the particular player in all home
games. In some embodiments, tag location data, derived tag location
data or the like 708 may include data corresponding to players
having similar characteristics, title, roles, titles, biometrics
and/or the like.
[0096] Analytic data 702 may further comprise tag location data
corresponding to tag location data, derived tag location data,
statistical data or the like 704. For example, tag location data,
derived tag location data, statistical data or the like 704 may
comprise tag location data, derived tag location data or the like
that corresponds to all objects in a system. Referring to FIG. 7,
which illustrates tag location data corresponding to a football
player, tag location data, derived tag location data, statistical
data or the like 704 may correspond to tag location data, derived
tag location data or the like corresponding to performances of
other players having the same title or role as a football player of
interest. In some instances, tag location data, derived tag
location data, statistical data or the like 704 may correspond to
tag location data, derived tag location data or the like
corresponding to the average past performances of other players
having the same title or role as the football player against the
particular opponent analyzed in the a prediction for a criteria of
interest 706.
[0097] According to some embodiments, the tag location data 702 may
further comprise a prediction for a criteria of interest 706, which
may correspond to a particular predictive performance for an
object, such as a football player. For example, a prediction for a
criteria of interest 706 may detail how a particular football
player may perform or should have performed against a particular
opponent based upon tag location data previously received by the a
prediction for a criteria of interest system. In one instance, tag
location data, derived tag location data or the like corresponding
to a particular football player may be associated, not only with
the football player's current team, but may also be associated with
an opposing team. As such, the predictive data engine may be
configured to determine tag location data, such as the a prediction
for a criteria of interest 706, based upon tag location data,
derived tag location data or the like associated with various
associations, such as an opposing team. As such, the predictive
data engine may be configured to cause a user interface to display
a prediction for a criteria of interest 706 corresponding to an
object (i.e., the football player) based at least upon the object's
past performance associated with a particular association (i.e., an
opposing team). In other words, the predictive data engine may be
configured to receive data corresponding to a quarterback's
performance against a particular opponent to determine and predict
the quarterback's performance in an upcoming game against the
particular opponent or how the quarterback should have
performed.
[0098] Additionally and/or alternatively, the predictive data
engine may be configured to determine and predict tag location data
corresponding to a particular object based upon additional tag
location data, derived tag location data or the like. For example,
a prediction for a criteria of interest 706 may be based, not only
on the tag location data, derived tag location data or the like 708
corresponding to a football player's past performances against the
particular opponent, but may also be based upon additional tag
location data, derived tag location data or the like, such as the
football player's most recent performances against other opponents,
the performance of other players having a similar title or role,
the performance of other players against the particular opponent,
and/or the like.
[0099] Referring again to FIG. 1, the receiver and distribution
system 110 may comprise circuitry that may include various means,
such as a processor 155, memory 158, user interface 190, the
predictive data engine 112 and/or the like.
[0100] As referred to herein, "module" includes hardware, software
and/or firmware configured to perform one or more particular
functions. In this regard, the means of circuitry as described
herein may be embodied as, for example, circuitry, hardware
elements (e.g., a suitably programmed processor, combinational
logic circuit, and/or the like), a computer program product
comprising computer-readable program instructions stored on a
non-transitory computer-readable medium (e.g., memory 158) that is
executable by a suitably configured processing device (e.g.,
processor 155), or some combination thereof.
[0101] Processor 155 may, for example, be embodied as various means
including one or more microprocessors with accompanying digital
signal processor(s), one or more processor(s) without an
accompanying digital signal processor, one or more coprocessors,
one or more multi-core processors, one or more controllers,
processing circuitry, one or more computers, various other
processing elements including integrated circuits such as, for
example, an ASIC (application specific integrated circuit) or FPGA
(field programmable gate array), or some combination thereof.
Accordingly, although illustrated in FIG. 1 as a single processor,
in some embodiments, processor 155 comprises a plurality of
processors. The plurality of processors may be embodied on a single
computing device or may be distributed across a plurality of
computing devices collectively configured to function as circuitry.
The plurality of processors may be in operative communication with
each other and may be collectively configured to perform one or
more functionalities of circuitry as described herein. In an
example embodiment, processor 155 is configured to execute
instructions stored in memory 158 or otherwise accessible to
processor 155. These instructions, when executed by processor 155,
may cause circuitry to perform one or more of the functionalities
of circuitry as described herein.
[0102] Whether configured by hardware, firmware/software methods,
or by a combination thereof, processor 155 may comprise an entity
capable of performing operations according to embodiments of the
present invention while configured accordingly. Thus, for example,
when processor 155 is embodied as an ASIC, FPGA or the like,
processor 155 may comprise specifically configured hardware for
conducting one or more operations described herein. As another
example, when processor 155 is embodied as an executor of
instructions, such as may be stored in memory 158, the instructions
may specifically configure processor 155 to perform one or more
algorithms and operations described herein.
[0103] Memory 158 may comprise, for example, volatile memory,
non-volatile memory, or some combination thereof. Although
illustrated in FIG. 1 as a single memory, memory 158 may comprise a
plurality of memory components. The plurality of memory components
may be embodied on a single computing device or distributed across
a plurality of computing devices. In various embodiments, memory
158 may comprise, for example, a hard disk, random access memory,
cache memory, flash memory, a compact disc read only memory
(CD-ROM), digital versatile disc read only memory (DVD-ROM), an
optical disc, circuitry configured to store information, or some
combination thereof. Memory 158 may be configured to store
information, data, applications, instructions, or the like for
enabling circuitry to carry out various functions in accordance
with example embodiments discussed herein. For example, in at least
some embodiments, memory 158 is configured to buffer input data for
processing by processor 155. Additionally or alternatively, in at
least some embodiments, memory 158 may be configured to store
program instructions for execution by processor 155. Memory 158 may
store information in the form of static and/or dynamic information.
This stored information may be stored and/or used by circuitry
during the course of performing its functionalities.
[0104] Communications module 192 may be embodied as any device or
means embodied in circuitry, hardware, a computer program product
comprising computer readable program instructions stored on a
computer readable medium (e.g., memory 158) and executed by a
processing device (e.g., processor 155), or a combination thereof
that is configured to receive and/or transmit data from/to another
device, such as, for example, a second circuitry and/or the like.
In some embodiments, communications module 192 (like other
components discussed herein) can be at least partially embodied as
or otherwise controlled by processor 155. In this regard,
communications module 192 may be in communication with processor
155, such as via a bus. Communications module 192 may include, for
example, an antenna, a transmitter, a receiver, a transceiver,
network interface card and/or supporting hardware and/or
firmware/software for enabling communications with another
computing device. Communications module 192 may be configured to
receive and/or transmit any data that may be stored by memory 158
using any protocol that may be used for communications between
computing devices. Communications module 192 may additionally or
alternatively be in communication with the memory 158 and/or any
other component of circuitry, such as via a bus
[0105] Predictive analytics data engine 112 may also or instead be
included and configured to perform the functionality discussed
herein related to facilitating the determination of a prediction
for a criteria of interest corresponding to an object, as discussed
above. In some embodiments, some or all of the functionality
related facilitating the determination of a prediction for a
criteria of interest corresponding to an object may be performed by
processor 155. In this regard, the example processes and algorithms
discussed herein can be performed by at least one processor 155
and/or predictive analytics data engine 112. For example,
non-transitory computer readable storage media can be configured to
store firmware, one or more application programs, and/or other
software, which include instructions and other computer-readable
program code portions that can be executed to control processors of
the components of the receiver processing and distribution system
110 to implement various operations, including the examples shown
above. As such, a series of computer-readable program code portions
may be embodied in one or more computer program products and can be
used, with a computing device, server, and/or other programmable
apparatus, to produce the machine-implemented processes discussed
herein.
[0106] Any such computer program instructions and/or other type of
code may be loaded onto a computer, processor or other programmable
apparatuses circuitry to produce a machine, such that the computer,
processor or other programmable circuitry that executes the code
may be the means for implementing various functions, including
those described herein.
[0107] The illustrations described herein are intended to provide a
general understanding of the structure of various embodiments. The
illustrations are not intended to serve as a complete description
of all of the elements and features of apparatus, processors, and
systems that utilize the structures or methods described herein.
Many other embodiments may be apparent to those of skill in the art
upon reviewing the disclosure. Other embodiments may be utilized
and derived from the disclosure, such that structural and logical
substitutions and changes may be made without departing from the
scope of the disclosure. Additionally, the illustrations are merely
representational and may not be drawn to scale. Certain proportions
within the illustrations may be exaggerated, while other
proportions may be minimized. Accordingly, the disclosure and the
figures are to be regarded as illustrative rather than
restrictive.
[0108] The above disclosed subject matter is to be considered
illustrative, and not restrictive, and the appended claims are
intended to cover all such modifications, enhancements, and other
embodiments, which fall within the true spirit and scope of the
description. Thus, to the maximum extent allowed by law, the scope
is to be determined by the broadest permissible interpretation of
the following claims and their equivalents, and shall not be
restricted or limited by the foregoing detailed description.
* * * * *