tag:blogger.com,1999:blog-46446668315372895812024-03-04T21:24:36.397-08:00The Tempo-Free GridironWhere tempo-free stats meet football.Justinhttp://www.blogger.com/profile/13472829033626429617noreply@blogger.comBlogger2502125tag:blogger.com,1999:blog-4644666831537289581.post-14765720730270588232022-01-11T03:07:00.001-08:002022-01-11T03:07:00.230-08:00Formula One Rating System Walk-Through, Part II<p>
This is the second part of the deep dive into my Formula One model.
<a href="https://www.tfgridiron.com/2022/01/formula-one-rating-system-walk-through.html">Part I</a>
provided a high-level overview of the approach. Today's post will go into the
details of the implementation, how the model calculates reliability and
performance for both teams and drivers, and allocates results to each. Future
posts will outline how the knobs are tuned, evaluate its predictive power, and
walk through how the predictive ratings are aggregated into backwards-looking
"resume" ratings like the ones used in the 2021 preview.
</p>
<h3>Calculating Reliability</h3>
<p>
As stated in the previous post, the goal of our reliability model is to
predict the odds of failure in an average kilometer for each car and for each
driver. The model tracks reliability in five buckets:
</p>
<ol>
<li>Per-driver reliability (ability to not crash);</li>
<li>Aggregate reliability of all drivers in the field;</li>
<li>Per-team reliability;</li>
<li>Aggregate reliability of "mature" teams in the field; and</li>
<li>Aggregate reliability of "new" teams in the field.</li>
</ol>
<p>
These are measured in terms of “success kilometers” and “failure kilometers”.
The probability of per-kilometer success of a car or driver is simply
[(success kilometers) / (total kilometers)]. Since the probability of success
each kilometer is independent of the previous kilometer, the probability of a
car not suffering a mechanical DNF in an
<strong>X</strong>-km race is the per-kilometer car success probability raised
to the <strong>X</strong>th power; the same calculation is also done using the
driver per-kilometer success probability. Since driver-related DNFs are
independent of car-related DNFs, the probability of an entrant successfully
completing the whole race distance is (car success probability * driver
success probability).
</p>
<p>
We separate out the "new" team reliability from the "mature" team reliability
due to the chaotic nature of the early days of Formula One. There have been
just shy of 500 unique teams to take part in F1 over the decades. Of those,
around 300 joined in the 1950s, another 100 joined in the 1960s, and the rest
started their lineage in 1970 or later. While there is a big gap between
today's "haves" and "have-nots", the gap was noticably larger in the early
days of the sport. For example, the 1953 German Grand Prix alone had more
one-race teams-slash-privateers-as-constructors (<a href="https://www.motorsportmagazine.com/database/teams/dora-greifzu/" target="_blank">Dora Greifzu</a>,
<a href="https://www.motorsportmagazine.com/database/teams/emw/" target="_blank">Rennkollektiv EMW</a>,
<a href="https://www.motorsportmagazine.com/database/teams/ernst-loof/" target="_blank">Ernst Loof</a>,
<a href="https://www.motorsportmagazine.com/database/teams/erwin-bauer/" target="_blank">Erwin Bauer</a>, <a href="https://www.motorsportmagazine.com/database/teams/gunther-bechem/" target="_blank">Gunther Bechem</a>, <a href="https://www.motorsportmagazine.com/database/teams/oswald-karch/" target="_blank">Oswald Karch</a>, and <a href="https://www.motorsportmagazine.com/database/teams/rodney-nuckey/" target="_blank">Rodney Nuckey</a>) than truly new teams have joined Formula One in the last 20 years
(Toyota, Super Aguri, HRT,
<a href="https://en.wikipedia.org/wiki/Team_Lotus_(2010%E2%80%9311)" target="_blank">Team Lotus</a>, Virgin, and Haas).
</p>
<p>
For each entrant there are three possible outcomes in an
<strong>X</strong> kilometers long race. If the entrant:
</p>
<ol>
<li>
completes the entire race distance, we update the number of success
kilometers for four buckets -- the first three buckets plus one for either
the "new" or "mature' team -- by <strong>X</strong>;
</li>
<li>
completes <strong>Y</strong> kilometers but then suffers a mechanical DNF,
we:
</li>
<ol>
<li>
add <strong>Y</strong> success kilometers to those four buckets; and
</li>
<li>
add a small constant in the range [0, 1] to the number of failure
kilometers for the two relevant team-related buckets
(<strong>team_reliability_failure_constant</strong>);
</li>
</ol>
<li>
completes <strong>Z</strong> kilometers but then suffers a driver-attributed
DNF, we:
</li>
<ol>
<li>
add <strong>Z</strong> success kilometers to the four relevant buckets;
and
</li>
<li>
add a small constant in the range [0, 1] to the number of failure
kilometers for the two driver-related buckets
(<strong>driver_reliability_failure_constant</strong>).
</li>
</ol>
</ol>
<p>
The <strong>driver_reliability_failure_constant</strong> and
<strong>team_reliability_failure_constant</strong> parameters allow us to hone
in on the best ratios to predict driver and car failure.
</p>
<p>
Before adding the results of the current race to any of the buckets, we apply
a decay factor to the existing data (<strong>driver_reliability_decay</strong>
or <strong>team_reliability_decay</strong>) to gradually age out existing
data.
</p>
<p>
Before the first race of each season we regress the aggregate "new" team reliability
back to the "mature" team reliability by a certain amount. Before the first
race a driver or team participates in in a new season, we regress their
reliability back to the mean by a fixed percent (<strong>driver_reliability_regress</strong>
and <strong>team_reliability_regress</strong>). Whether we regress the team to
the "new" or "mature" bucket depends on the number of races in which the team
has participated. At this point we also cap the total kilometers in their
reliability data set to a fixed multiple of an average race distance (<strong>driver_reliability_lookback</strong>
and <strong>team_reliability_lookback</strong>). This makes the reliability
metrics slightly more sensitive to change during the earlier stages of the
season.
</p>
<p>
When a new driver or team appears for the first time, we give them the default
reliability rate of the entire field.
</p>
<p>
While we could use an existing implementation of a
<a href="https://en.wikipedia.org/wiki/Kaplan%E2%80%93Meier_estimator">Kaplan-Meier survival estimator</a>
or an
<a href="https://en.wikipedia.org/wiki/Survival_function#Exponential_survival_function">exponential survival model</a>
in something like
<a href="https://pypi.org/project/scikit-survival/">Scikit</a> or
<a href="https://lifelines.readthedocs.io/en/latest/">Lifelines</a>, these
approaches are heavyweight and did not produce a statistically superior
predictor. Additionally, they increased the runtime of our model from ~90
seconds to 30 minutes (Kaplan-Meier) or 180 minutes (exponential survival).
</p>
<h3>Calculating Performance</h3>
<p>
Performance is calculated using a hybrid Elo model, in which drivers and teams
are modeled independently and then combined for each entrant. Elo ratings are
updated for each entrant after each qualifying session, and in races only if
an entrant does not suffer a driver-related or car-related DNF.
</p>
<p>
New drivers start with <strong>driver_elo_initial</strong> points, and new
teams with <strong>team_elo_initial</strong> points.
</p>
<h4>Car vs Driver</h4>
<p>
The combined entrant rating and K-Factors are calculated using a weighted
average of the driver Elo information and the car (team) Elo information. This
weighting can change over time, and is specified by the
<strong>team_share_spec</strong> parameter. The parameter is specified as
<strong>[InitialTeamShare]_[YearWidth]_[StepHeight]</strong>, where
<strong>InitialTeamShare</strong> is the percent of the entrant Elo
information coming from the car in 1950 (the first season), and then every
<strong>YearWidth</strong> seasons that number will increase by
<strong>StepHeight</strong> percent. For example, a spec of
<strong>50_4_1</strong> means that from 1950 through 1953, the team
contributes 50% of the Elo information to the entrant Elo information, then
from 1954 through 1957 it contributes 51%, 1958 through 1961 is 52%, and so
on. A spec of <strong>[N]_0_0</strong> signals a constant share of
<strong>N</strong>% throughout the history of Formula One. This allows us to
empirically test the hypothesis that the share of overall results due to the
car has steadily increased over time, without risking overfitting on a
per-season basis.
</p>
<p>
We apply this weighted average between car and driver to both the Elo rating
and K-Factor when creating the combined Elo information. For example, in a
season where the car accounts for 60% of the outcome, a combination of the
following car and driver would produce these combined Elo and K-Factor
ratings:
</p>
<table class="rank-table">
<colgroup>
<col width="80"/ >
<col width="40"/>
<col width="60"/ >
<col width="140"/>
</colgroup>
<tbody>
<tr class="tfg">
<td> </td>
<th>Car</th>
<th>Driver</th>
<th>Combined</th>
</tr>
<tr class="oddRow">
<td class="teamName">Elo</td>
<td class="bigrank">1260</td>
<td class="bigrank">1560</td>
<td class="bigrank">756 + 624 = 1380</td>
</tr>
<tr class="evenRow">
<td class="teamName">K-Factor</td>
<td class="bigrank">13</td>
<td class="bigrank">18</td>
<td class="bigrank">7.8 + 7.2 = 15.0</td>
</tr>
</tbody>
</table>
<p>This gives us the basic combined Elo rating and K-Factor of the entrant.</p>
<h4>Starting Position Advantage</h4>
<p>
For races (but not qualifying) we must also take into account starting
position on the grid. The model treats starting position much like home field
advantage, in that it will give the driver closer to the front of the grid a
boost in their Elo ratings for that one head-to-head prediction. It is likely
that this advantage is non-linear, meaning that at some point there is no
significant difference between starting <strong>N</strong> positions ahead of
another entrant versus <strong>N+1</strong> positions ahead; e.g., there may
be a noticeable difference between having a 2 space advantage versus a 5 space
advantage, but less difference between 12 spaces and 15 space. It is also
possible that the base advantage of a single grid spot has increased over
time, contributing to the sense that
<a
href="https://jalopnik.com/you-werent-imagining-it-f1-was-a-parade-this-year-1821019853"
>Formula One races are glorified parades</a
>.
</p>
<p>We model this advantage through a combination of two parameters:</p>
<ul>
<li>
<strong>position_base_spec</strong>: formatted the same as
<strong>team_share_spec</strong>, this allows us to vary the number of Elo
points a single grid spot confers as an advantage over time; and
</li>
<li>
<strong>position_base_factor</strong>: a value used as the ratio for a
geometric sum, mapping the number of grid positions to a multiplier of the
base spec for that year.
</li>
</ul>
<p>
Plugging all this into the geometric sum formula, the Elo advantage
<strong>E</strong><sub>A</sub> conferred by <strong>G</strong> grid positions
in a season with a base Elo grid advantage of <strong>E</strong><sub>B</sub> and a factor of <strong>F</strong> is:
</p>
<p align="center">
<strong>E<sub>A</sub> = E<sub>B</sub> * [(1 - F<sup>G</sup>) / (1 - F)]</strong>
</p>
<p>
The values of the base advantage and the base factor control the shape of the
curve for this advantage. Values of <strong>F</strong> closer to 1 create a
more linear shape, while lesser values create a flatter shape.
</p>
<div class="separator" style="clear: both; text-align: center;">
<a
href="https://blogger.googleusercontent.com/img/a/AVvXsEiqHu0iSHlLe5ccOM4pp2O0EUku5xMFuT02PNDaCeQDv1edW_QY7alJ6UbAQWBkCq_IOT31RWIk1QFeEbxQ0d-0Q66TqJFmfJqbwHLCYHcuivTFLJPLIwjbaeNbm6vEq-B2oUVsd7naLo0GQX1HVAqRQ2PaaGBQs5oH9Gpd3Xcf1Xsye4GRHPkJov9lHg=s960"
style="margin-left: 1em; margin-right: 1em;"
><img
border="0"
data-original-height="640"
data-original-width="960"
height="427"
src="https://blogger.googleusercontent.com/img/a/AVvXsEiqHu0iSHlLe5ccOM4pp2O0EUku5xMFuT02PNDaCeQDv1edW_QY7alJ6UbAQWBkCq_IOT31RWIk1QFeEbxQ0d-0Q66TqJFmfJqbwHLCYHcuivTFLJPLIwjbaeNbm6vEq-B2oUVsd7naLo0GQX1HVAqRQ2PaaGBQs5oH9Gpd3Xcf1Xsye4GRHPkJov9lHg=w640-h427"
width="640"
/></a>
</div>
<br />
<h4>Predicting Performance Outcomes</h4>
<p>
Once we have the combined Elo rating and (for races) the start position
advantage, we can then use these numbers to predict the probability that one
entrant will finish in front of another entrant (assuming both finish) using
the
<a href="https://en.wikipedia.org/wiki/Elo_rating_system#Mathematical_details">expected score logistic equation</a>.
</p>
<p>
For this equation, though, we need to determine the correct denominator. From
the Wiki page, a denominator of 400 means that “<em
>for each 400 rating points of advantage over the opponent, the expected
score is magnified ten times in comparison to the opponent's expected
score</em
>”. Or, in terms of odds, a denominator of <strong>X</strong> means that an
Elo rating advantage of <strong>X</strong> points represents a 10-to-1
favorite, whereas a rating advantage of <strong>2X</strong> points represents
a 100-to-1 favorite.
</p>
<p>
Since qualifying is shorter and has less variance, we may expect that the same
performance difference in qualifying would yield greater odds of winning than
the same performance difference in a race. The model allows us to specify
<strong>elo_exponent_denominator_qualifying</strong> and
<strong>elo_exponent_denominator_race</strong> separately in order to keep the
Elo rating constant between event types, but still capture the differences in
these types.
</p>
<h3>Combined Head-to-Head Model</h3>
<p>
Putting this all together the probability that driver A in car X finishes
(entrant E) ahead of driver B in car Y (entrant F) is:
</p>
<p></p>
<ul style="text-align: left;">
<li>
the probability that entrant E finishes the race but F does not (the car and
driver reliability calculations); plus
</li>
<li>
the probability that entrant E does not finish the race but completes more
laps than F (per-lap reliability calculations); plus
</li>
<li>
conditional on both E and F completing the race, the probability that E
outperforms F (performance calculations).
</li>
</ul>
<p>Of those, the second is the most complex to calculate, but contributes the least to the final probability.</p>
<p>
If both entrants complete the race (or participate in the qualifying session)
we must reallocate Elo points. The K-Factor used for any transfer of points is
the average of the combined K-Factor for each entrant. The Elo rating for each
entrant is the combined Elo rating of each entrant, plus the starting position
advantage points for whichever entrant starts first.
</p>
<p>
For example, let's say that there are four entrants which complete a race, two
teams of two drivers each. In this year the car accounts for 60% of the
performance, the base Elo advantage for one grid spot is 20 points, and the
position factor is 0.75.
</p>
<p>The two teams:</p>
<table class="rank-table">
<colgroup>
<col width="80"/ >
<col width="40"/>
<col width="90"/ >
<col width="110"/ >
</colgroup>
<tbody>
<tr class="tfg">
<th>Team</th>
<th>Elo</th>
<th>K-Factor</th>
<th>Reliability</th>
</tr>
<tr class="oddRow">
<td class="teamName">X</td>
<td class="bigrank">1400</td>
<td class="bigrank">16</td>
<td class="bigrank">93%</td>
</tr>
<tr class="evenRow">
<td class="teamName">Y</td>
<td class="bigrank">1350</td>
<td class="bigrank">20</td>
<td class="bigrank">91%</td>
</tr>
</tbody>
</table>
<p>The four drivers:</p>
<table class="rank-table">
<colgroup>
<col width="80"/ >
<col width="40"/>
<col width="90"/ >
<col width="110"/ >
</colgroup>
<tbody>
<tr class="tfg">
<th>Driver</th>
<th>Elo</th>
<th>K-Factor</th>
<th>Reliability</th>
</tr>
<tr class="oddRow">
<td class="teamName">A</td>
<td class="bigrank">1400</td>
<td class="bigrank">12</td>
<td class="bigrank">98%</td>
</tr>
<tr class="evenRow">
<td class="teamName">B</td>
<td class="bigrank">1300</td>
<td class="bigrank">20</td>
<td class="bigrank">90%</td>
</tr>
<tr class="oddRow">
<td class="teamName">C</td>
<td class="bigrank">1525</td>
<td class="bigrank">10</td>
<td class="bigrank">95%</td>
</tr>
<tr class="evenRow">
<td class="teamName">D</td>
<td class="bigrank">1350</td>
<td class="bigrank">16</td>
<td class="bigrank">91%</td>
</tr>
</tbody>
</table>
<p>The four entrants, in grid order:</p>
<table class="rank-table">
<colgroup>
<col width="90"/ >
<col width="40"/>
<col width="90"/ >
<col width="110"/ >
<col width="40"/>
</colgroup>
<tbody>
<tr class="tfg">
<th>Entrant</th>
<th>Elo</th>
<th>K-Factor</th>
<th>Reliability</th>
<th>Grid</th>
</tr>
<tr class="oddRow">
<td class="teamName">E: A+X</td>
<td class="bigrank">1400</td>
<td class="bigrank">14.4</td>
<td class="bigrank">91.1%</td>
<td class="bigrank">1</td>
</tr>
<tr class="evenRow">
<td class="teamName">G: C+Y</td>
<td class="bigrank">1420</td>
<td class="bigrank">16.0</td>
<td class="bigrank">86.4%</td>
<td class="bigrank">2</td>
</tr>
<tr class="oddRow">
<td class="teamName">H: D+Y</td>
<td class="bigrank">1350</td>
<td class="bigrank">18.4</td>
<td class="bigrank">82.8%</td>
<td class="bigrank">3</td>
</tr>
<tr class="evenRow">
<td class="teamName">F: B+X</td>
<td class="bigrank">1360</td>
<td class="bigrank">17.6</td>
<td class="bigrank">83.7%</td>
<td class="bigrank">4</td>
</tr>
</tbody>
</table>
<p>The head-to-head performance-only probabilities, assuming an Elo denominator of 240:</p>
<table class="rank-table">
<colgroup>
<col width="50"/ >
<col width="40"/>
<col width="50"/ >
<col width="50"/>
<col width="40"/>
<col width="80"/ >
</colgroup>
<tbody>
<tr class="tfg">
<th colspan=3>Entrant 1</th>
<th colspan=2>Entrant 2</th>
<th colspan=1>E1</th>
</tr>
<tr class="tfg">
<th>Name</th>
<th>Elo</th>
<th>Grid</th>
<th>Name</th>
<th>Elo</th>
<th>WinProb</th>
</tr>
<tr class="oddRow">
<td class="teamName">E</td>
<td class="bigrank">1400</td>
<td class="bigrank">20</td>
<td class="teamName">G</td>
<td class="bigrank">1420</td>
<td class="bigrank">50.0%</td>
</tr>
<tr class="evenRow">
<td class="teamName">E</td>
<td class="bigrank">1400</td>
<td class="bigrank">35</td>
<td class="teamName">H</td>
<td class="bigrank">1350</td>
<td class="bigrank">69.3%</td>
</tr>
<tr class="oddRow">
<td class="teamName">E</td>
<td class="bigrank">1400</td>
<td class="bigrank">46</td>
<td class="teamName">F</td>
<td class="bigrank">1360</td>
<td class="bigrank">69.5%</td>
</tr>
<tr class="evenRow">
<td class="teamName">G</td>
<td class="bigrank">1420</td>
<td class="bigrank">20</td>
<td class="teamName">H</td>
<td class="bigrank">1350</td>
<td class="bigrank">70.3%</td>
</tr>
<tr class="oddRow">
<td class="teamName">G</td>
<td class="bigrank">1420</td>
<td class="bigrank">35</td>
<td class="teamName">F</td>
<td class="bigrank">1360</td>
<td class="bigrank">71.3%</td>
</tr>
<tr class="evenRow">
<td class="teamName">H</td>
<td class="bigrank">1350</td>
<td class="bigrank">20</td>
<td class="teamName">F</td>
<td class="bigrank">1360</td>
<td class="bigrank">52.4%</td>
</tr>
</tbody>
</table>
<p>
Note that without the one spot grid advantage for <b>E</b> over <b>G</b>,
<b>G</b> would be the slight favorite, whereas on performance now it's a dead heat.
</p>
<p>The probabilities above are also conditional on both entrants finishing. Digging into the <b>E</b> vs <b>G</b> matchup a bit more, there are the following scenarios, along with the probability that <b>E</b> finishes ahead of <b>G</b>:</p>
<table class="rank-table">
<colgroup>
<col width="100"/ >
<col width="120"/>
<col width="120"/ >
<col width="120"/>
</colgroup>
<tr class="tfg">
<th>Scenario</th>
<th>P(happening)</th>
<th>P(E wins) if<br>this happens</th>
<th>P(E wins) total</th>
</tr>
<tr class="oddRow">
<td class="teamName">Both finish</td>
<td>78.7%</td>
<td>50.0%</td>
<td>39.4%</td>
</tr>
<tr class="evenRow">
<td class="teamName"><b>E</b> finishes<br/><b>G</b> DNFs</td>
<td>12.4%</td>
<td>100.0%</td>
<td>12.4%</td>
</tr>
<tr class="oddRow">
<td class="teamName"><b>E</b> DNFs<br/><b>G</b> finishes</td>
<td>7.7%</td>
<td>0.0%</td>
<td>0.0%</td>
</tr>
<tr class="evenRow">
<td class="teamName">Double DNF</td>
<td>1.2%</td>
<td>50%</td>
<td>0.6%</td>
</tr>
<tr class="tfg"><th colspan=4> </th></tr>
<tr class="oddRow">
<td class="teamName">Overall</td>
<td> </td>
<td> </td>
<td>52.4%</td>
</tr>
</table>
<p>
Putting it all together, a much quicker driver becomes the slight underdog
against an average-yet-reliable driver in a solid-but-slightly-more-reliable
car who's managed to qualify on pole.
</p>
<h3 style="text-align: left;">Coming up...</h3>
<p>
Part III will discuss its predictive performance. Part IV will discuss how
predictions get aggregated into metrics which span one or more year.
</p>
Justinhttp://www.blogger.com/profile/13472829033626429617noreply@blogger.comtag:blogger.com,1999:blog-4644666831537289581.post-70609942315616990082022-01-03T05:27:00.002-08:002022-01-03T05:27:58.785-08:00Formula One Rating System Walk-Through, Part I<p style="text-align: left;">
New year, new energy to write up some content about the model at the heart of
my Formula One ranking and prediction system. This is the model used in a few
posts on FiveThirtyEight, including the
<a href="https://fivethirtyeight.com/features/in-formula-one-does-the-driver-or-car-matter-more/" target="_blank">2021 season preview</a> and (brief)
<a href="https://fivethirtyeight.com/features/formula-ones-2021-season-was-as-close-and-controversial-as-advertised/" target="_blank">season retrospective</a>. It's also an evolution of the model used in the 2018 "<a href="https://fivethirtyeight.com/features/formula-one-racing/" target="_blank">Best Formula One Driver of All Time</a>" article, which was the target of
<a href="https://www.motorsportmagazine.com/articles/single-seaters/f1/can-moneyball-be-used-to-find-the-best-ever-f1-driver" target="_blank">some (reasonable) criticism</a>.
</p>
<p style="text-align: left;">
Over the next few posts I'll go into the conceptual parts of the model,
describe how it's implemented, outline how the knobs are tuned, evaluate its
predictive power, and walk through how the predictive ratings are aggregated
into backwards-looking "resume" ratings like the ones used in the 2021
preview.
</p>
<h3 style="text-align: left;">Overview</h3>
<p style="text-align: left;">
At its heart the objective of this system is to predict the answer to “<b><i>will driver A in car X be in front of driver B in car Y at the end of the
event?</i></b>” It attempts to optimize this predictive model for both qualifying sessions
and races, equally taking into account all eras of Formula One (1950 -
present). From this basic formulation we can assemble higher-level
predictions, such as who will get pole position, win a race, or finish on the
podium.
</p>
<p style="text-align: left;">
This walk-through provides an overview of the model formulation, its
parameters, and the approach to tuning those parameters. In general this model
attempts to contain the minimum set of parameters and assumptions to generate
the highest quality of predictions across the history for Formula One, with a
specific set of metrics to ensure high-quality and well-calibrated predictions
for drivers and teams at the front of the field.
</p>
The system accounts for two types of entities and two components of their
performance. The entities are <b>cars</b> (or <b>teams</b>) and <b>drivers</b>.
Together a car/driver pair in a single event (race or qualifying session) is
referred to as an <b>entrant</b>. For each entity in the data set the system
attempts to quantify and predict:<br />
<ul style="text-align: left;">
<li>
<b>Reliability</b>: the ability of a car or driver to make it to the end of
a given race distance.
</li>
<ul>
<li>
A failure of car reliability is a mechanical failure or some other issue
which -- through no fault of the driver -- causes the entrant to not make
it to the end of the race distance.
</li>
<li>
A failure of driver “reliability” is a crash or other driver mistake which
causes the entrant to not make it to the end of the race distance.
</li>
</ul>
<li>
<b> Performance</b>: the speed of the car or driver, separate from their
reliability.
</li>
</ul>
<p>
It is possible for a car or driver to be
<a href="https://en.wikipedia.org/wiki/Ferrari_F1/87" target="_blank">incredibly quick but unreliable</a>, or
<a href="https://en.wikipedia.org/wiki/Tyrrell_DG016" target="_blank">relatively reliable but slow</a>.
</p>
<h4 style="text-align: left;">Reliability</h4>
<p>
Reliability is, in effect, an attempt to create a survival model for both car
and driver over the course of the race distance: “<b><i>What is the probability a car or driver fails after X kilometers?</i></b>”
</p>
<p>For example, in a 3 kilometer race with 36 drivers, let us say that:</p>
<ul>
<li>in the first kilometer, 4 cars and 2 drivers fail;</li>
<li>in the second kilometer, 3 cars and 2 drivers fail; and</li>
<li>in the third kilometer, 3 cars and 2 drivers fail.</li>
</ul>
<div align="center">
<table class="rank-table">
<colgroup>
<col width="70" />
<col width="110" />
<col width="110"/ >
</colgroup>
<tbody>
<tr class="tfg">
<th rowspan=2> </th>
<th colspan=2>Failure Rate</th>
</tr>
<tr class="tfg">
<th>Car</th>
<th>Driver</th>
</tr>
<tr class="oddRow">
<td class="teamName">KM 1</td>
<td class="bigrank">4/36 (0.111)</td>
<td class="bigrank">3/36 (0.083)</td>
</tr>
<tr class="evenRow">
<td class="teamName">KM 2</td>
<td class="bigrank">3/29 (0.103)</td>
<td class="bigrank">2/29 (0.069)</td>
</tr>
<tr class="oddRow">
<td class="teamName">KM 3</td>
<td class="bigrank">3/24 (0.125)</td>
<td class="bigrank">2/24 (0.083)</td>
</tr>
</tbody>
</table>
</div>
<p>
Note that the probability of failure in a given kilometer only considers those
entrants still left at the start of that kilometer. There is certainly a
possibility of simultaneous failure of both car and driver, but in practice we
consider that outcome to be so small as to not be worth quantifying (plus it’s
not in the data).
</p>
<p>
We do not attempt to create a survival model for qualifying sessions for a
number of reasons:
</p>
<ol>
<li>failure data and reasons are generally not available;</li>
<li>
the “distance” of qualifying varies widely both over time and over the
field, and is not recorded anywhere;
</li>
<li>
some entrants may take only five or six laps to get a qualifying position,
while others may take dozens of laps;
</li>
<li>
the final effect of qualifying results on the model is less than that of
races in general, so the effect of unexpected failures is overall relatively
small.
</li>
</ol>
<p>
The question then becomes how to create these survival models. With a few
exceptions back in the 50s and 60s, race distances are 300 - 305km. The chart
below displays failure rates for the first 300km of race distance, meaning
that this data captures the vast majority of mechanical and driver related
did-not-finishes (DNFs). Failures are bucketed per 3km in order to de-clutter
the chart.
</p>
<p>The chart shows:</p>
<ul>
<li>
the percent of cars still in the race which fail during that bucket (the
yellow-boxed scatterplot);
</li>
<li>
the percent of drivers still in the race which crash during that bucket (the
blue-starred scatterplot); and
</li>
<li>the linear regression of those values and the R2 of the fit (lines).</li>
</ul>
<p>
<span id="docs-internal-guid-1e1baed9-7fff-0a94-0619-34b10ed353dc"><span style="font-family: Arial; font-size: 11pt; font-variant-east-asian: normal; font-variant-numeric: normal; vertical-align: baseline; white-space: pre-wrap;"><span style="border: none; display: inline-block; height: 416px; overflow: hidden; width: 624px;"><img height="416" src="https://lh4.googleusercontent.com/6w78TtWUHvMeplY7Wx2HizaR08EbQ95KcbWaLktvybL_kq0wtxDcR5yBwc3v6eXbw387xz5UfQDqmUphRhyygglQ3Vc0sbjqbLGRbSpAULPeF7QCwuispBG1ZcT_ZSwhwcX1Mplz" style="margin-left: 0px; margin-top: 0px;" width="624" /></span></span></span>
</p>
<p>
Two things jump out: the rate of failures are higher for cars than drivers,
and the rate of failures is relatively constant throughout the race. Given the
small R2 for each regression, this indicates that over a long horizon failure
is essentially equally random at any given point in time.
</p>
<p>
<a href="https://f1metrics.wordpress.com/2017/09/27/do-drivers-influence-mechanical-reliability/" target="_blank">Other analysis of car and driver failures</a>
also indicates that there is no interaction between driver and car
reliability. In other words, the driver cannot drive in a way which either
improves or reduces mechanical failure, at least compared to their peers
(with, perhaps,
<a href="https://en.wikipedia.org/wiki/Alain_Prost" target="_blank">one exception</a>).
</p>
<p>
If these are true, then we can treat each kilometer traveled as essentially an
independent roll of the dice to see if the car fails or the driver crashes.
The goal of our model, then, is to predict the odds of failure in an average
kilometer for each car and for each driver.
</p>
<h4 style="text-align: left;">Performance</h4>
<p>
Performance, contingent on finishing the race, is a proxy for speed. There are
several challenges.
</p>
<ul>
<li>
“speed” is a direct combination of both driver skill and car (or team)
technical performance;
</li>
<li>
there tend to be correlations in that the best drivers are more likely to
sign with the best teams, and the best teams have better success at hiring
the best drivers; and
</li>
<li>
the relative contribution of the car to the overall performance has likely
gone up over time, as aerodynamics have played a greater role in overall
performance.
</li>
</ul>
<p>
Unlike reliability, we can predict raw performance for both races and
qualifying. In fact, qualifying has some advantages over races in that
everyone competes against everyone else more-or-less equally, and everyone
finishes, or at least has a finishing position. This allows us to get a full
pairwise comparison of all drivers and cars in a single session.
</p>
<p>
However, we also take into account three differences between qualifying and
races:
</p>
<ul>
<li>
qualifying is shorter in both time and distance, meaning there is less
variance. This means that:
<ul>
<li>
the same difference in raw speed has more impact on the outcome than in
races;
</li>
<li>
there is less information to be gained in qualifying than in a race, so
we will exchange fewer Elo points between entrants; and
</li>
</ul>
</li>
<li>
the structure of qualifying gives no specific structural advantage to one
entrant over another, while races have a starting grid which gives an
advantage to drivers at the front.
</li>
</ul>
<p>Our model must attempt to quantify each of those factors.</p>
<h4 style="text-align: left;">Other Considerations</h4>
<p>
Like many other models which evaluate data over sequential events, we
incorporate common methods, including:
</p>
<ul>
<li>
regressing per-driver and per-team metrics back to the mean slightly between
seasons;
</li>
<li>adding small amounts of uncertainty at the start of each season;</li>
<li>gradually decaying/aging out old data points over time; and</li>
<li>limiting the “lookback” window (in addition to aging out the data).</li>
</ul>
<h3 style="text-align: left;">Coming up...</h3>
<p>
Part II will go into the details of the model implementation. Part III will
discuss its predictive performance. Part IV will discuss how predictions get
aggregated into metrics which span one or more year.
</p>
Justinhttp://www.blogger.com/profile/17781135191466051281noreply@blogger.comtag:blogger.com,1999:blog-4644666831537289581.post-45243048760913139272021-06-02T11:20:00.005-07:002021-06-02T11:20:47.261-07:00Hello, analytics community!<p> If you've stumbled across this site because of a <a href="https://fivethirtyeight.com/features/in-formula-one-does-the-driver-or-car-matter-more/">FiveThirtyEight</a> or <a href="https://www.motorsportmagazine.com/articles/single-seaters/f1/can-moneyball-be-used-to-find-the-best-ever-f1-driver">Motorsport Magazine</a> article, or a <a href="https://businessradio.wharton.upenn.edu/wharton-moneyball/">Wharton Moneyball podcast</a>, you've come to the right place.</p><p>Analytics is my hobby, and the pandemic robbed me of a bit of my free time. I apologize for the lack of recent content here, but this site is still live and I hope to get at least some semi-regular updates flowing again during this F1 season.</p><p>Until then, I'm a bit more active on Twitter and you can find me at <a href="https://twitter.com/tfgridiron">@tfgridiron</a>.</p><p>Thanks!</p>Justinhttp://www.blogger.com/profile/13472829033626429617noreply@blogger.comtag:blogger.com,1999:blog-4644666831537289581.post-65383128034498248672019-12-14T08:35:00.000-08:002020-01-15T11:18:05.097-08:00Week 17: Saturday Predictions<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg3"><span class="rank"> 26</span></td><td class="tfg3" width="175"><span class="teamName">Navy</span></td><td class="tfg3"><span class="score">31</span></td>
</tr>
<tr>
<td><span class="rank"> 59</span></td><td><span class="teamName">Army</span></td><td><span class="score">26</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
</table>
<br/>
<!-- Table contains 1 games -->
<table class="pred-key">
<tr><th colspan=8>Key</th></tr>
<tr>
<td rowspan=2 align="center">Close<br>game</td>
<td class="tfg1"> </td>
<td class="tfg2"> </td>
<td class="tfg3"> </td>
<td class="tfg4"> </td>
<td class="tfg5"> </td>
<td class="tfg6"> </td>
<td rowspan=2 align="center">Certain<br>victory</td>
</tr>
<tr>
<td class="rba1"> </td>
<td class="rba2"> </td>
<td class="rba3"> </td>
<td class="rba4"> </td>
<td class="rba5"> </td>
<td class="rba6"> </td>
</tr>
</table>
<br />
<br />
<i>Follow us on Twitter at <a href="http://twitter.com/TFGridiron">@TFGridiron</a> and <a href="http://twitter.com/TFGLiveOdds">@TFGLiveOdds</a>.</i>Justinhttp://www.blogger.com/profile/13472829033626429617noreply@blogger.comtag:blogger.com,1999:blog-4644666831537289581.post-81473513781540415522019-12-09T07:30:00.000-08:002020-01-15T11:18:06.923-08:00Week 17: Top 25 — TFG<div><i>Mouse over column headers for definitions, or see <a href="/2009/10/under-hood.html">this page</a></i></div>
<table class="rank-table">
<tr class="tfg">
<th valign="bottom" rowspan="2">Rank</th>
<th valign="bottom" rowspan="2">+/-</th>
<th valign="bottom" rowspan="2">Team</th>
<th valign="bottom" rowspan="2"><span title="Expected winning percent if they were to play a schedule of 0.500 opponents.">WinPct</span></th>
<th valign="bottom" rowspan="2" colspan="2"><span title="Average expected winning percentage of the opponents this team has played.">SoS</span></th>
<th colspan="6">Adjusted</th>
</tr>
<tr class="tfg">
<th colspan="2"><span title="Points per 100 plays this team has scored, adjusted for strength of their opponents. Includes points from all sources, including offense, defense (e.g., pick-6s), and special teams.">Off.</span></th>
<th colspan="2"><span title="Points per 100 plays this team has allowed, adjusted for strength of their opponents. Includes points from all sources, including offense, defense (e.g., pick-6s), and special teams.">Def.</span></th>
<th colspan="2"><span title="Average number of plays per game, adjusted for pace of opponent. Includes all plays: e.g., offense, defense, kickoffs, extra points, etc, etc.">Pace</span></th>
</tr>
<tr class="oddRow">
<td class="bigrank">1</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Clemson<span class="rank"> ( 12 - 0 )</span></td>
<td class="stats">0.974</td>
<td class="stats">0.470</td>
<td class="subRank">72</td>
<td class="stats">28.0</td>
<td class="subRank">5</td>
<td class="stats">7.2</td>
<td class="subRank">1</td>
<td class="stats">163.0</td>
<td class="subRank">95</td>
</tr>
<tr class="evenRow">
<td class="bigrank">2</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Ohio State<span class="rank"> ( 13 - 0 )</span></td>
<td class="stats">0.966</td>
<td class="stats">0.661</td>
<td class="subRank">10</td>
<td class="stats">34.2</td>
<td class="subRank">1</td>
<td class="stats">9.7</td>
<td class="subRank">5</td>
<td class="stats">172.9</td>
<td class="subRank">38</td>
</tr>
<tr class="oddRow">
<td class="bigrank">3</td>
<td class="changeGood bigrank">+1</td>
<td class="teamName">Alabama<span class="rank"> ( 9 - 2 )</span></td>
<td class="stats">0.934</td>
<td class="stats">0.622</td>
<td class="subRank">16</td>
<td class="stats">32.4</td>
<td class="subRank">2</td>
<td class="stats">12.0</td>
<td class="subRank">14</td>
<td class="stats">162.5</td>
<td class="subRank">98</td>
</tr>
<tr class="evenRow">
<td class="bigrank">4</td>
<td class="changeBad bigrank">-1</td>
<td class="teamName">Georgia<span class="rank"> ( 10 - 2 )</span></td>
<td class="stats">0.929</td>
<td class="stats">0.657</td>
<td class="subRank">11</td>
<td class="stats">21.7</td>
<td class="subRank">23</td>
<td class="stats">8.3</td>
<td class="subRank">2</td>
<td class="stats">159.5</td>
<td class="subRank">112</td>
</tr>
<tr class="oddRow">
<td class="bigrank">5</td>
<td class="changeGood bigrank">+3</td>
<td class="teamName">LSU<span class="rank"> ( 12 - 0 )</span></td>
<td class="stats">0.923</td>
<td class="stats">0.686</td>
<td class="subRank">7</td>
<td class="stats">32.0</td>
<td class="subRank">3</td>
<td class="stats">12.6</td>
<td class="subRank">15</td>
<td class="stats">171.7</td>
<td class="subRank">45</td>
</tr>
<tr class="evenRow">
<td class="bigrank">6</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Wisconsin<span class="rank"> ( 10 - 3 )</span></td>
<td class="stats">0.920</td>
<td class="stats">0.697</td>
<td class="subRank">6</td>
<td class="stats">26.4</td>
<td class="subRank">6</td>
<td class="stats">10.5</td>
<td class="subRank">8</td>
<td class="stats">154.1</td>
<td class="subRank">126</td>
</tr>
<tr class="oddRow">
<td class="bigrank">7</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Michigan<span class="rank"> ( 9 - 3 )</span></td>
<td class="stats">0.912</td>
<td class="stats">0.684</td>
<td class="subRank">9</td>
<td class="stats">25.6</td>
<td class="subRank">7</td>
<td class="stats">10.6</td>
<td class="subRank">9</td>
<td class="stats">165.2</td>
<td class="subRank">81</td>
</tr>
<tr class="evenRow">
<td class="bigrank">8</td>
<td class="changeBad bigrank">-3</td>
<td class="teamName">Utah<span class="rank"> ( 10 - 2 )</span></td>
<td class="stats">0.902</td>
<td class="stats">0.524</td>
<td class="subRank">59</td>
<td class="stats">23.7</td>
<td class="subRank">13</td>
<td class="stats">10.3</td>
<td class="subRank">6</td>
<td class="stats">154.4</td>
<td class="subRank">125</td>
</tr>
<tr class="oddRow">
<td class="bigrank">9</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Penn State<span class="rank"> ( 9 - 2 )</span></td>
<td class="stats">0.899</td>
<td class="stats">0.649</td>
<td class="subRank">13</td>
<td class="stats">21.4</td>
<td class="subRank">27</td>
<td class="stats">9.4</td>
<td class="subRank">4</td>
<td class="stats">168.8</td>
<td class="subRank">61</td>
</tr>
<tr class="evenRow">
<td class="bigrank">10</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Auburn<span class="rank"> ( 8 - 3 )</span></td>
<td class="stats">0.884</td>
<td class="stats">0.750</td>
<td class="subRank">1</td>
<td class="stats">22.3</td>
<td class="subRank">19</td>
<td class="stats">10.4</td>
<td class="subRank">7</td>
<td class="stats">177.6</td>
<td class="subRank">16</td>
</tr>
<tr class="oddRow">
<td class="bigrank">11</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Florida<span class="rank"> ( 8 - 2 )</span></td>
<td class="stats">0.881</td>
<td class="stats">0.655</td>
<td class="subRank">12</td>
<td class="stats">24.6</td>
<td class="subRank">10</td>
<td class="stats">11.6</td>
<td class="subRank">13</td>
<td class="stats">158.8</td>
<td class="subRank">113</td>
</tr>
<tr class="evenRow">
<td class="bigrank">12</td>
<td class="changeGood bigrank">+2</td>
<td class="teamName">Oregon<span class="rank"> ( 10 - 2 )</span></td>
<td class="stats">0.876</td>
<td class="stats">0.556</td>
<td class="subRank">46</td>
<td class="stats">23.5</td>
<td class="subRank">14</td>
<td class="stats">11.3</td>
<td class="subRank">11</td>
<td class="stats">172.1</td>
<td class="subRank">44</td>
</tr>
<tr class="oddRow">
<td class="bigrank">13</td>
<td class="changeBad bigrank">-1</td>
<td class="teamName">Notre Dame<span class="rank"> ( 10 - 2 )</span></td>
<td class="stats">0.866</td>
<td class="stats">0.544</td>
<td class="subRank">54</td>
<td class="stats">22.0</td>
<td class="subRank">20</td>
<td class="stats">10.9</td>
<td class="subRank">10</td>
<td class="stats">171.3</td>
<td class="subRank">47</td>
</tr>
<tr class="evenRow">
<td class="bigrank">14</td>
<td class="changeBad bigrank">-1</td>
<td class="teamName">Iowa<span class="rank"> ( 9 - 3 )</span></td>
<td class="stats">0.857</td>
<td class="stats">0.622</td>
<td class="subRank">17</td>
<td class="stats">17.2</td>
<td class="subRank">58</td>
<td class="stats">8.8</td>
<td class="subRank">3</td>
<td class="stats">160.2</td>
<td class="subRank">110</td>
</tr>
<tr class="oddRow">
<td class="bigrank">15</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Oklahoma<span class="rank"> ( 11 - 1 )</span></td>
<td class="stats">0.809</td>
<td class="stats">0.584</td>
<td class="subRank">34</td>
<td class="stats">29.3</td>
<td class="subRank">4</td>
<td class="stats">17.0</td>
<td class="subRank">57</td>
<td class="stats">161.8</td>
<td class="subRank">101</td>
</tr>
<tr class="evenRow">
<td class="bigrank">16</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Appalachian State<span class="rank"> ( 11 - 1 )</span></td>
<td class="stats">0.799</td>
<td class="stats">0.384</td>
<td class="subRank">108</td>
<td class="stats">21.6</td>
<td class="subRank">25</td>
<td class="stats">12.8</td>
<td class="subRank">18</td>
<td class="stats">166.7</td>
<td class="subRank">69</td>
</tr>
<tr class="oddRow">
<td class="bigrank">17</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Washington<span class="rank"> ( 6 - 5 )</span></td>
<td class="stats">0.770</td>
<td class="stats">0.575</td>
<td class="subRank">39</td>
<td class="stats">20.7</td>
<td class="subRank">30</td>
<td class="stats">13.2</td>
<td class="subRank">20</td>
<td class="stats">164.1</td>
<td class="subRank">90</td>
</tr>
<tr class="evenRow">
<td class="bigrank">18</td>
<td class="changeGood bigrank">+7</td>
<td class="teamName">FL-Atlantic<span class="rank"> ( 9 - 3 )</span></td>
<td class="stats">0.765</td>
<td class="stats">0.454</td>
<td class="subRank">76</td>
<td class="stats">21.7</td>
<td class="subRank">24</td>
<td class="stats">13.9</td>
<td class="subRank">25</td>
<td class="stats">176.1</td>
<td class="subRank">21</td>
</tr>
<tr class="oddRow">
<td class="bigrank">19</td>
<td class="changeGood bigrank">+1</td>
<td class="teamName">Memphis<span class="rank"> ( 11 - 1 )</span></td>
<td class="stats">0.760</td>
<td class="stats">0.490</td>
<td class="subRank">69</td>
<td class="stats">24.8</td>
<td class="subRank">8</td>
<td class="stats">16.1</td>
<td class="subRank">46</td>
<td class="stats">173.2</td>
<td class="subRank">37</td>
</tr>
<tr class="evenRow">
<td class="bigrank">20</td>
<td class="changeBad bigrank">-2</td>
<td class="teamName">Baylor<span class="rank"> ( 10 - 2 )</span></td>
<td class="stats">0.759</td>
<td class="stats">0.554</td>
<td class="subRank">47</td>
<td class="stats">19.6</td>
<td class="subRank">41</td>
<td class="stats">12.7</td>
<td class="subRank">16</td>
<td class="stats">176.4</td>
<td class="subRank">20</td>
</tr>
<tr class="oddRow">
<td class="bigrank">21</td>
<td class="changeBad bigrank">-2</td>
<td class="teamName">Minnesota<span class="rank"> ( 9 - 2 )</span></td>
<td class="stats">0.756</td>
<td class="stats">0.564</td>
<td class="subRank">43</td>
<td class="stats">24.7</td>
<td class="subRank">9</td>
<td class="stats">16.2</td>
<td class="subRank">47</td>
<td class="stats">156.4</td>
<td class="subRank">121</td>
</tr>
<tr class="evenRow">
<td class="bigrank">22</td>
<td class="changeGood bigrank">+1</td>
<td class="teamName">Boise State<span class="rank"> ( 11 - 1 )</span></td>
<td class="stats">0.755</td>
<td class="stats">0.401</td>
<td class="subRank">103</td>
<td class="stats">21.9</td>
<td class="subRank">21</td>
<td class="stats">14.3</td>
<td class="subRank">28</td>
<td class="stats">164.8</td>
<td class="subRank">86</td>
</tr>
<tr class="oddRow">
<td class="bigrank">23</td>
<td class="changeBad bigrank">-2</td>
<td class="teamName">UCF<span class="rank"> ( 8 - 3 )</span></td>
<td class="stats">0.751</td>
<td class="stats">0.426</td>
<td class="subRank">85</td>
<td class="stats">23.9</td>
<td class="subRank">11</td>
<td class="stats">15.8</td>
<td class="subRank">40</td>
<td class="stats">187.5</td>
<td class="subRank">1</td>
</tr>
<tr class="evenRow">
<td class="bigrank">24</td>
<td class="changeBad bigrank">-2</td>
<td class="teamName">Texas A&M<span class="rank"> ( 6 - 5 )</span></td>
<td class="stats">0.728</td>
<td class="stats">0.701</td>
<td class="subRank">4</td>
<td class="stats">20.1</td>
<td class="subRank">36</td>
<td class="stats">13.9</td>
<td class="subRank">26</td>
<td class="stats">164.9</td>
<td class="subRank">84</td>
</tr>
<tr class="oddRow">
<td class="bigrank">25</td>
<td class="changeBad bigrank">-1</td>
<td class="teamName">Air Force<span class="rank"> ( 9 - 2 )</span></td>
<td class="stats">0.711</td>
<td class="stats">0.442</td>
<td class="subRank">82</td>
<td class="stats">22.3</td>
<td class="subRank">18</td>
<td class="stats">15.9</td>
<td class="subRank">43</td>
<td class="stats">150.3</td>
<td class="subRank">130</td>
</tr>
</table>
<div><i>Rankings through games of 2019-12-08</i><br/>
<br />
New entries: none.<br />
<br />
Dropped out: none.<br />
<br />
<br />
<i>Follow us on Twitter at <a href="http://twitter.com/TFGridiron">@TFGridiron</a> and <a href="http://twitter.com/TFGLiveOdds">@TFGLiveOdds</a>.</i>
</div>Justinhttp://www.blogger.com/profile/13472829033626429617noreply@blogger.comtag:blogger.com,1999:blog-4644666831537289581.post-89276301031286930272019-12-09T07:00:00.000-08:002020-01-15T11:18:07.505-08:00Week 17: Full Rankings — TFGBiggest jumps: FL-Atlantic (0.064); Oregon (0.036); LSU (0.022); Miami-OH (0.021); Boise State (0.018)<br>
<br>
Biggest drops: UAB (-0.071); Hawaii (-0.024); Utah (-0.024); Tennessee (-0.021); Georgia (-0.019)<br>
<br>
Full rankings after the jump.<br>
<a href="https://www.tfgridiron.com/2019/12/week-17-full-rankings-tfg.html#more">Read more »</a>Justinhttp://www.blogger.com/profile/13472829033626429617noreply@blogger.comtag:blogger.com,1999:blog-4644666831537289581.post-83552717918457682972019-12-09T06:30:00.000-08:002020-01-15T11:18:05.697-08:00Week 17: Top 25 — RBA<div><i>Mouse over column headers for definitions, or see <a href="/2009/10/under-hood.html">this page</a></i></div>
<table class="rank-table">
<tr class="rba">
<th valign="bottom" rowspan="2">Rank</th>
<th valign="bottom" rowspan="2">+/-</th>
<th valign="bottom" rowspan="2">Team</th>
<th valign="bottom" rowspan="2"><span title="Expected winning percent if they were to play a schedule of 0.500 opponents.">WinPct</span></th>
<th valign="bottom" rowspan="2" colspan="2"><span title="Average expected winning percentage of the opponents this team has played.">SoS</span></th>
<th colspan="6">Adjusted</th>
</tr>
<tr class="rba">
<th colspan="2"><span title="Points per 100 plays this team has scored, adjusted for strength of their opponents. Includes points from all sources, including offense, defense (e.g., pick-6s), and special teams.">Off.</span></th>
<th colspan="2"><span title="Points per 100 plays this team has allowed, adjusted for strength of their opponents. Includes points from all sources, including offense, defense (e.g., pick-6s), and special teams.">Def.</span></th>
<th colspan="2"><span title="Average number of plays per game, adjusted for pace of opponent. Includes all plays: e.g., offense, defense, kickoffs, extra points, etc, etc.">Pace</span></th>
</tr>
<tr class="oddRow">
<td class="bigrank">1</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Ohio State<span class="rank"> ( 13 - 0 )</span></td>
<td class="stats">0.929</td>
<td class="stats">0.536</td>
<td class="subRank">45</td>
<td class="stats">30.3</td>
<td class="subRank">2</td>
<td class="stats">7.2</td>
<td class="subRank">1</td>
<td class="stats">163.8</td>
<td class="subRank">109</td>
</tr>
<tr class="evenRow">
<td class="bigrank">2</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Wisconsin<span class="rank"> ( 10 - 3 )</span></td>
<td class="stats">0.929</td>
<td class="stats">0.536</td>
<td class="subRank">44</td>
<td class="stats">23.8</td>
<td class="subRank">8</td>
<td class="stats">7.8</td>
<td class="subRank">5</td>
<td class="stats">160.0</td>
<td class="subRank">125</td>
</tr>
<tr class="oddRow">
<td class="bigrank">3</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Clemson<span class="rank"> ( 12 - 0 )</span></td>
<td class="stats">0.897</td>
<td class="stats">0.540</td>
<td class="subRank">36</td>
<td class="stats">25.2</td>
<td class="subRank">5</td>
<td class="stats">7.7</td>
<td class="subRank">4</td>
<td class="stats">169.9</td>
<td class="subRank">47</td>
</tr>
<tr class="evenRow">
<td class="bigrank">4</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Penn State<span class="rank"> ( 9 - 2 )</span></td>
<td class="stats">0.894</td>
<td class="stats">0.539</td>
<td class="subRank">37</td>
<td class="stats">22.1</td>
<td class="subRank">17</td>
<td class="stats">7.6</td>
<td class="subRank">2</td>
<td class="stats">165.8</td>
<td class="subRank">86</td>
</tr>
<tr class="oddRow">
<td class="bigrank">5</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Alabama<span class="rank"> ( 9 - 2 )</span></td>
<td class="stats">0.892</td>
<td class="stats">0.553</td>
<td class="subRank">10</td>
<td class="stats">28.9</td>
<td class="subRank">3</td>
<td class="stats">10.2</td>
<td class="subRank">13</td>
<td class="stats">158.3</td>
<td class="subRank">126</td>
</tr>
<tr class="evenRow">
<td class="bigrank">6</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Oregon<span class="rank"> ( 10 - 2 )</span></td>
<td class="stats">0.878</td>
<td class="stats">0.533</td>
<td class="subRank">51</td>
<td class="stats">23.8</td>
<td class="subRank">7</td>
<td class="stats">8.7</td>
<td class="subRank">7</td>
<td class="stats">178.0</td>
<td class="subRank">3</td>
</tr>
<tr class="oddRow">
<td class="bigrank">7</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Iowa<span class="rank"> ( 9 - 3 )</span></td>
<td class="stats">0.875</td>
<td class="stats">0.529</td>
<td class="subRank">54</td>
<td class="stats">19.7</td>
<td class="subRank">30</td>
<td class="stats">7.7</td>
<td class="subRank">3</td>
<td class="stats">163.1</td>
<td class="subRank">116</td>
</tr>
<tr class="evenRow">
<td class="bigrank">8</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">LSU<span class="rank"> ( 12 - 0 )</span></td>
<td class="stats">0.870</td>
<td class="stats">0.559</td>
<td class="subRank">7</td>
<td class="stats">28.6</td>
<td class="subRank">4</td>
<td class="stats">9.9</td>
<td class="subRank">11</td>
<td class="stats">160.7</td>
<td class="subRank">121</td>
</tr>
<tr class="oddRow">
<td class="bigrank">9</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Georgia<span class="rank"> ( 10 - 2 )</span></td>
<td class="stats">0.858</td>
<td class="stats">0.547</td>
<td class="subRank">28</td>
<td class="stats">23.1</td>
<td class="subRank">10</td>
<td class="stats">7.8</td>
<td class="subRank">6</td>
<td class="stats">160.0</td>
<td class="subRank">124</td>
</tr>
<tr class="evenRow">
<td class="bigrank">10</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Florida<span class="rank"> ( 8 - 2 )</span></td>
<td class="stats">0.840</td>
<td class="stats">0.562</td>
<td class="subRank">4</td>
<td class="stats">21.2</td>
<td class="subRank">22</td>
<td class="stats">9.8</td>
<td class="subRank">10</td>
<td class="stats">160.4</td>
<td class="subRank">123</td>
</tr>
<tr class="oddRow">
<td class="bigrank">11</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Notre Dame<span class="rank"> ( 10 - 2 )</span></td>
<td class="stats">0.835</td>
<td class="stats">0.564</td>
<td class="subRank">2</td>
<td class="stats">22.4</td>
<td class="subRank">13</td>
<td class="stats">10.3</td>
<td class="subRank">14</td>
<td class="stats">165.3</td>
<td class="subRank">91</td>
</tr>
<tr class="evenRow">
<td class="bigrank">12</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Michigan<span class="rank"> ( 9 - 3 )</span></td>
<td class="stats">0.821</td>
<td class="stats">0.553</td>
<td class="subRank">13</td>
<td class="stats">22.9</td>
<td class="subRank">11</td>
<td class="stats">10.1</td>
<td class="subRank">12</td>
<td class="stats">164.0</td>
<td class="subRank">104</td>
</tr>
<tr class="oddRow">
<td class="bigrank">13</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Utah<span class="rank"> ( 10 - 2 )</span></td>
<td class="stats">0.819</td>
<td class="stats">0.501</td>
<td class="subRank">66</td>
<td class="stats">22.8</td>
<td class="subRank">12</td>
<td class="stats">9.7</td>
<td class="subRank">9</td>
<td class="stats">166.7</td>
<td class="subRank">80</td>
</tr>
<tr class="evenRow">
<td class="bigrank">14</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Auburn<span class="rank"> ( 8 - 3 )</span></td>
<td class="stats">0.816</td>
<td class="stats">0.563</td>
<td class="subRank">3</td>
<td class="stats">22.2</td>
<td class="subRank">16</td>
<td class="stats">9.7</td>
<td class="subRank">8</td>
<td class="stats">162.4</td>
<td class="subRank">119</td>
</tr>
<tr class="oddRow">
<td class="bigrank">15</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Oklahoma<span class="rank"> ( 11 - 1 )</span></td>
<td class="stats">0.816</td>
<td class="stats">0.543</td>
<td class="subRank">34</td>
<td class="stats">30.5</td>
<td class="subRank">1</td>
<td class="stats">13.7</td>
<td class="subRank">36</td>
<td class="stats">171.8</td>
<td class="subRank">25</td>
</tr>
<tr class="evenRow">
<td class="bigrank">16</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Iowa State<span class="rank"> ( 6 - 5 )</span></td>
<td class="stats">0.795</td>
<td class="stats">0.549</td>
<td class="subRank">22</td>
<td class="stats">24.4</td>
<td class="subRank">6</td>
<td class="stats">12.3</td>
<td class="subRank">23</td>
<td class="stats">171.1</td>
<td class="subRank">30</td>
</tr>
<tr class="oddRow">
<td class="bigrank">17</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Missouri<span class="rank"> ( 5 - 6 )</span></td>
<td class="stats">0.773</td>
<td class="stats">0.520</td>
<td class="subRank">59</td>
<td class="stats">19.3</td>
<td class="subRank">32</td>
<td class="stats">12.4</td>
<td class="subRank">25</td>
<td class="stats">174.4</td>
<td class="subRank">11</td>
</tr>
<tr class="evenRow">
<td class="bigrank">18</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">UCF<span class="rank"> ( 8 - 3 )</span></td>
<td class="stats">0.758</td>
<td class="stats">0.471</td>
<td class="subRank">85</td>
<td class="stats">22.2</td>
<td class="subRank">15</td>
<td class="stats">13.7</td>
<td class="subRank">37</td>
<td class="stats">167.3</td>
<td class="subRank">76</td>
</tr>
<tr class="oddRow">
<td class="bigrank">19</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Washington<span class="rank"> ( 6 - 5 )</span></td>
<td class="stats">0.743</td>
<td class="stats">0.545</td>
<td class="subRank">31</td>
<td class="stats">21.5</td>
<td class="subRank">20</td>
<td class="stats">12.4</td>
<td class="subRank">24</td>
<td class="stats">167.5</td>
<td class="subRank">72</td>
</tr>
<tr class="evenRow">
<td class="bigrank">20</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Texas<span class="rank"> ( 7 - 5 )</span></td>
<td class="stats">0.720</td>
<td class="stats">0.537</td>
<td class="subRank">42</td>
<td class="stats">22.3</td>
<td class="subRank">14</td>
<td class="stats">15.2</td>
<td class="subRank">50</td>
<td class="stats">171.6</td>
<td class="subRank">26</td>
</tr>
<tr class="oddRow">
<td class="bigrank">21</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">TCU<span class="rank"> ( 4 - 7 )</span></td>
<td class="stats">0.712</td>
<td class="stats">0.503</td>
<td class="subRank">65</td>
<td class="stats">19.8</td>
<td class="subRank">28</td>
<td class="stats">12.0</td>
<td class="subRank">21</td>
<td class="stats">170.8</td>
<td class="subRank">34</td>
</tr>
<tr class="evenRow">
<td class="bigrank">22</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Duke<span class="rank"> ( 4 - 7 )</span></td>
<td class="stats">0.709</td>
<td class="stats">0.527</td>
<td class="subRank">57</td>
<td class="stats">21.1</td>
<td class="subRank">23</td>
<td class="stats">15.1</td>
<td class="subRank">49</td>
<td class="stats">169.6</td>
<td class="subRank">49</td>
</tr>
<tr class="oddRow">
<td class="bigrank">23</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Michigan State<span class="rank"> ( 6 - 6 )</span></td>
<td class="stats">0.704</td>
<td class="stats">0.553</td>
<td class="subRank">11</td>
<td class="stats">16.1</td>
<td class="subRank">67</td>
<td class="stats">10.9</td>
<td class="subRank">15</td>
<td class="stats">165.7</td>
<td class="subRank">89</td>
</tr>
<tr class="evenRow">
<td class="bigrank">24</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Cincinnati<span class="rank"> ( 10 - 3 )</span></td>
<td class="stats">0.703</td>
<td class="stats">0.492</td>
<td class="subRank">72</td>
<td class="stats">18.1</td>
<td class="subRank">42</td>
<td class="stats">11.7</td>
<td class="subRank">17</td>
<td class="stats">170.3</td>
<td class="subRank">40</td>
</tr>
<tr class="oddRow">
<td class="bigrank">25</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Boise State<span class="rank"> ( 11 - 1 )</span></td>
<td class="stats">0.677</td>
<td class="stats">0.459</td>
<td class="subRank">101</td>
<td class="stats">19.0</td>
<td class="subRank">34</td>
<td class="stats">13.8</td>
<td class="subRank">38</td>
<td class="stats">169.6</td>
<td class="subRank">50</td>
</tr>
</table>
<div><i>Rankings through games of 2019-12-08</i><br/>
<br />
New entries: none.<br />
<br />
Dropped out: none.<br />
<br />
<br />
<i>Follow us on Twitter at <a href="http://twitter.com/TFGridiron">@TFGridiron</a> and <a href="http://twitter.com/TFGLiveOdds">@TFGLiveOdds</a>.</i>
</div>Justinhttp://www.blogger.com/profile/13472829033626429617noreply@blogger.comtag:blogger.com,1999:blog-4644666831537289581.post-71500839372379828702019-12-09T06:00:00.000-08:002020-01-15T11:18:06.350-08:00Week 17: Full Rankings — RBABiggest jumps: <br>
<br>
Biggest drops: <br>
<br>
Full rankings after the jump.<br>
<a href="https://www.tfgridiron.com/2019/12/week-17-full-rankings-rba.html#more">Read more »</a>Justinhttp://www.blogger.com/profile/13472829033626429617noreply@blogger.comtag:blogger.com,1999:blog-4644666831537289581.post-80117959119948078142019-12-07T08:35:00.000-08:002020-01-15T11:21:37.284-08:00Week 16: Saturday Predictions<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg3"><span class="rank"> 16</span></td><td class="tfg3" width="175"><span class="teamName">Appalachian State</span></td><td class="tfg3"><span class="score">28</span></td>
</tr>
<tr>
<td><span class="rank"> 30</span></td><td><span class="teamName">LA-Lafayette</span></td><td><span class="score">25</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg4"><span class="rank"> 23</span></td><td class="tfg4" width="175"><span class="teamName">Boise State</span></td><td class="tfg4"><span class="score">36</span></td>
</tr>
<tr>
<td><span class="rank"> 60</span></td><td><span class="teamName">Hawaii</span></td><td><span class="score">30</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg1"><span class="rank"> 82</span></td><td class="tfg1" width="175"><span class="teamName">Central Michigan</span></td><td class="tfg1"><span class="score">29</span></td>
</tr>
<tr>
<td><span class="rank"> 95</span></td><td><span class="teamName">Miami-OH</span></td><td><span class="score">28</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg6"><span class="rank"> 1</span></td><td class="tfg6" width="175"><span class="teamName">Clemson</span></td><td class="tfg6"><span class="score">35</span></td>
</tr>
<tr>
<td><span class="rank"> 35</span></td><td><span class="teamName">Virginia</span></td><td><span class="score">22</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg4"><span class="rank"> 25</span></td><td class="tfg4" width="175"><span class="teamName">FL-Atlantic</span></td><td class="tfg4"><span class="score">30</span></td>
</tr>
<tr>
<td><span class="rank"> 75</span></td><td><span class="teamName">UAB</span></td><td><span class="score">24</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank"> 8</span></td><td width="175"><span class="teamName">LSU</span></td><td><span class="score">30</span></td>
</tr>
<tr>
<td class="tfg3"><span class="rank"> 3</span></td><td class="tfg3"><span class="teamName">Georgia</span></td><td class="tfg3"><span class="score">31</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg2"><span class="rank"> 20</span></td><td class="tfg2" width="175"><span class="teamName">Memphis</span></td><td class="tfg2"><span class="score">32</span></td>
</tr>
<tr>
<td><span class="rank"> 31</span></td><td><span class="teamName">Cincinnati</span></td><td><span class="score">28</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg1"><span class="rank"> 15</span></td><td class="tfg1" width="175"><span class="teamName">Oklahoma</span></td><td class="tfg1"><span class="score">35</span></td>
</tr>
<tr>
<td><span class="rank"> 18</span></td><td><span class="teamName">Baylor</span></td><td><span class="score">31</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank"> 6</span></td><td width="175"><span class="teamName">Wisconsin</span></td><td><span class="score">29</span></td>
</tr>
<tr>
<td class="tfg3"><span class="rank"> 2</span></td><td class="tfg3"><span class="teamName">Ohio State</span></td><td class="tfg3"><span class="score">36</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
</table>
<br/>
<!-- Table contains 9 games -->
<table class="pred-key">
<tr><th colspan=8>Key</th></tr>
<tr>
<td rowspan=2 align="center">Close<br>game</td>
<td class="tfg1"> </td>
<td class="tfg2"> </td>
<td class="tfg3"> </td>
<td class="tfg4"> </td>
<td class="tfg5"> </td>
<td class="tfg6"> </td>
<td rowspan=2 align="center">Certain<br>victory</td>
</tr>
<tr>
<td class="rba1"> </td>
<td class="rba2"> </td>
<td class="rba3"> </td>
<td class="rba4"> </td>
<td class="rba5"> </td>
<td class="rba6"> </td>
</tr>
</table>
<br />
<br />
<i>Follow us on Twitter at <a href="http://twitter.com/TFGridiron">@TFGridiron</a> and <a href="http://twitter.com/TFGLiveOdds">@TFGLiveOdds</a>.</i>Justinhttp://www.blogger.com/profile/13472829033626429617noreply@blogger.comtag:blogger.com,1999:blog-4644666831537289581.post-17913829486399141292019-12-06T13:30:00.000-08:002020-01-15T11:21:36.772-08:00Week 16: Friday Predictions<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank"> 14</span></td><td width="175"><span class="teamName">Oregon</span></td><td><span class="score">25</span></td>
</tr>
<tr>
<td class="tfg3"><span class="rank"> 5</span></td><td class="tfg3"><span class="teamName">Utah</span></td><td class="tfg3"><span class="score">29</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
</table>
<br/>
<!-- Table contains 1 games -->
<table class="pred-key">
<tr><th colspan=8>Key</th></tr>
<tr>
<td rowspan=2 align="center">Close<br>game</td>
<td class="tfg1"> </td>
<td class="tfg2"> </td>
<td class="tfg3"> </td>
<td class="tfg4"> </td>
<td class="tfg5"> </td>
<td class="tfg6"> </td>
<td rowspan=2 align="center">Certain<br>victory</td>
</tr>
<tr>
<td class="rba1"> </td>
<td class="rba2"> </td>
<td class="rba3"> </td>
<td class="rba4"> </td>
<td class="rba5"> </td>
<td class="rba6"> </td>
</tr>
</table>
<br />
<br />
<i>Follow us on Twitter at <a href="http://twitter.com/TFGridiron">@TFGridiron</a> and <a href="http://twitter.com/TFGLiveOdds">@TFGLiveOdds</a>.</i>Justinhttp://www.blogger.com/profile/13472829033626429617noreply@blogger.comtag:blogger.com,1999:blog-4644666831537289581.post-926034761839097792019-12-02T07:30:00.000-08:002020-01-15T11:21:38.918-08:00Week 16: Top 25 — TFG<div><i>Mouse over column headers for definitions, or see <a href="/2009/10/under-hood.html">this page</a></i></div>
<table class="rank-table">
<tr class="tfg">
<th valign="bottom" rowspan="2">Rank</th>
<th valign="bottom" rowspan="2">+/-</th>
<th valign="bottom" rowspan="2">Team</th>
<th valign="bottom" rowspan="2"><span title="Expected winning percent if they were to play a schedule of 0.500 opponents.">WinPct</span></th>
<th valign="bottom" rowspan="2" colspan="2"><span title="Average expected winning percentage of the opponents this team has played.">SoS</span></th>
<th colspan="6">Adjusted</th>
</tr>
<tr class="tfg">
<th colspan="2"><span title="Points per 100 plays this team has scored, adjusted for strength of their opponents. Includes points from all sources, including offense, defense (e.g., pick-6s), and special teams.">Off.</span></th>
<th colspan="2"><span title="Points per 100 plays this team has allowed, adjusted for strength of their opponents. Includes points from all sources, including offense, defense (e.g., pick-6s), and special teams.">Def.</span></th>
<th colspan="2"><span title="Average number of plays per game, adjusted for pace of opponent. Includes all plays: e.g., offense, defense, kickoffs, extra points, etc, etc.">Pace</span></th>
</tr>
<tr class="oddRow">
<td class="bigrank">1</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Clemson<span class="rank"> ( 11 - 0 )</span></td>
<td class="stats">0.973</td>
<td class="stats">0.459</td>
<td class="subRank">73</td>
<td class="stats">26.8</td>
<td class="subRank">5</td>
<td class="stats">7.0</td>
<td class="subRank">1</td>
<td class="stats">161.8</td>
<td class="subRank">101</td>
</tr>
<tr class="evenRow">
<td class="bigrank">2</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Ohio State<span class="rank"> ( 12 - 0 )</span></td>
<td class="stats">0.966</td>
<td class="stats">0.618</td>
<td class="subRank">20</td>
<td class="stats">34.4</td>
<td class="subRank">1</td>
<td class="stats">9.8</td>
<td class="subRank">6</td>
<td class="stats">171.9</td>
<td class="subRank">42</td>
</tr>
<tr class="oddRow">
<td class="bigrank">3</td>
<td class="changeGood bigrank">+1</td>
<td class="teamName">Georgia<span class="rank"> ( 10 - 1 )</span></td>
<td class="stats">0.948</td>
<td class="stats">0.613</td>
<td class="subRank">24</td>
<td class="stats">23.0</td>
<td class="subRank">16</td>
<td class="stats">7.7</td>
<td class="subRank">2</td>
<td class="stats">159.2</td>
<td class="subRank">112</td>
</tr>
<tr class="evenRow">
<td class="bigrank">4</td>
<td class="changeBad bigrank">-1</td>
<td class="teamName">Alabama<span class="rank"> ( 9 - 2 )</span></td>
<td class="stats">0.934</td>
<td class="stats">0.618</td>
<td class="subRank">19</td>
<td class="stats">32.4</td>
<td class="subRank">2</td>
<td class="stats">12.0</td>
<td class="subRank">14</td>
<td class="stats">162.6</td>
<td class="subRank">97</td>
</tr>
<tr class="oddRow">
<td class="bigrank">5</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Utah<span class="rank"> ( 10 - 1 )</span></td>
<td class="stats">0.926</td>
<td class="stats">0.486</td>
<td class="subRank">68</td>
<td class="stats">24.5</td>
<td class="subRank">11</td>
<td class="stats">9.5</td>
<td class="subRank">5</td>
<td class="stats">153.4</td>
<td class="subRank">126</td>
</tr>
<tr class="evenRow">
<td class="bigrank">6</td>
<td class="changeGood bigrank">+1</td>
<td class="teamName">Wisconsin<span class="rank"> ( 10 - 2 )</span></td>
<td class="stats">0.924</td>
<td class="stats">0.641</td>
<td class="subRank">11</td>
<td class="stats">26.7</td>
<td class="subRank">6</td>
<td class="stats">10.4</td>
<td class="subRank">8</td>
<td class="stats">152.9</td>
<td class="subRank">128</td>
</tr>
<tr class="oddRow">
<td class="bigrank">7</td>
<td class="changeBad bigrank">-1</td>
<td class="teamName">Michigan<span class="rank"> ( 9 - 3 )</span></td>
<td class="stats">0.913</td>
<td class="stats">0.688</td>
<td class="subRank">6</td>
<td class="stats">25.7</td>
<td class="subRank">7</td>
<td class="stats">10.6</td>
<td class="subRank">9</td>
<td class="stats">165.4</td>
<td class="subRank">80</td>
</tr>
<tr class="evenRow">
<td class="bigrank">8</td>
<td class="changeGood bigrank">+5</td>
<td class="teamName">LSU<span class="rank"> ( 11 - 0 )</span></td>
<td class="stats">0.901</td>
<td class="stats">0.657</td>
<td class="subRank">9</td>
<td class="stats">30.6</td>
<td class="subRank">3</td>
<td class="stats">13.3</td>
<td class="subRank">19</td>
<td class="stats">171.6</td>
<td class="subRank">43</td>
</tr>
<tr class="oddRow">
<td class="bigrank">9</td>
<td class="changeBad bigrank">-1</td>
<td class="teamName">Penn State<span class="rank"> ( 9 - 2 )</span></td>
<td class="stats">0.900</td>
<td class="stats">0.652</td>
<td class="subRank">10</td>
<td class="stats">21.5</td>
<td class="subRank">24</td>
<td class="stats">9.4</td>
<td class="subRank">4</td>
<td class="stats">169.0</td>
<td class="subRank">61</td>
</tr>
<tr class="evenRow">
<td class="bigrank">10</td>
<td class="changeGood bigrank">+2</td>
<td class="teamName">Auburn<span class="rank"> ( 8 - 3 )</span></td>
<td class="stats">0.887</td>
<td class="stats">0.748</td>
<td class="subRank">2</td>
<td class="stats">22.5</td>
<td class="subRank">17</td>
<td class="stats">10.4</td>
<td class="subRank">7</td>
<td class="stats">177.7</td>
<td class="subRank">16</td>
</tr>
<tr class="oddRow">
<td class="bigrank">11</td>
<td class="changeBad bigrank">-1</td>
<td class="teamName">Florida<span class="rank"> ( 8 - 2 )</span></td>
<td class="stats">0.886</td>
<td class="stats">0.660</td>
<td class="subRank">8</td>
<td class="stats">24.9</td>
<td class="subRank">9</td>
<td class="stats">11.5</td>
<td class="subRank">12</td>
<td class="stats">158.9</td>
<td class="subRank">114</td>
</tr>
<tr class="evenRow">
<td class="bigrank">12</td>
<td class="changeBad bigrank">-1</td>
<td class="teamName">Notre Dame<span class="rank"> ( 10 - 2 )</span></td>
<td class="stats">0.871</td>
<td class="stats">0.551</td>
<td class="subRank">49</td>
<td class="stats">22.3</td>
<td class="subRank">19</td>
<td class="stats">10.9</td>
<td class="subRank">10</td>
<td class="stats">171.4</td>
<td class="subRank">44</td>
</tr>
<tr class="oddRow">
<td class="bigrank">13</td>
<td class="changeBad bigrank">-4</td>
<td class="teamName">Iowa<span class="rank"> ( 9 - 3 )</span></td>
<td class="stats">0.858</td>
<td class="stats">0.625</td>
<td class="subRank">16</td>
<td class="stats">17.3</td>
<td class="subRank">59</td>
<td class="stats">8.8</td>
<td class="subRank">3</td>
<td class="stats">160.3</td>
<td class="subRank">110</td>
</tr>
<tr class="evenRow">
<td class="bigrank">14</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Oregon<span class="rank"> ( 9 - 2 )</span></td>
<td class="stats">0.841</td>
<td class="stats">0.516</td>
<td class="subRank">60</td>
<td class="stats">21.7</td>
<td class="subRank">23</td>
<td class="stats">11.6</td>
<td class="subRank">13</td>
<td class="stats">170.9</td>
<td class="subRank">48</td>
</tr>
<tr class="oddRow">
<td class="bigrank">15</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Oklahoma<span class="rank"> ( 10 - 1 )</span></td>
<td class="stats">0.803</td>
<td class="stats">0.571</td>
<td class="subRank">42</td>
<td class="stats">29.4</td>
<td class="subRank">4</td>
<td class="stats">17.4</td>
<td class="subRank">62</td>
<td class="stats">161.8</td>
<td class="subRank">100</td>
</tr>
<tr class="evenRow">
<td class="bigrank">16</td>
<td class="changeGood bigrank">+2</td>
<td class="teamName">Appalachian State<span class="rank"> ( 10 - 1 )</span></td>
<td class="stats">0.797</td>
<td class="stats">0.360</td>
<td class="subRank">114</td>
<td class="stats">20.7</td>
<td class="subRank">29</td>
<td class="stats">12.3</td>
<td class="subRank">15</td>
<td class="stats">165.3</td>
<td class="subRank">81</td>
</tr>
<tr class="oddRow">
<td class="bigrank">17</td>
<td class="changeGood bigrank">+2</td>
<td class="teamName">Washington<span class="rank"> ( 6 - 5 )</span></td>
<td class="stats">0.779</td>
<td class="stats">0.581</td>
<td class="subRank">38</td>
<td class="stats">21.1</td>
<td class="subRank">28</td>
<td class="stats">13.1</td>
<td class="subRank">18</td>
<td class="stats">164.1</td>
<td class="subRank">90</td>
</tr>
<tr class="evenRow">
<td class="bigrank">18</td>
<td class="changeGood bigrank">+6</td>
<td class="teamName">Baylor<span class="rank"> ( 10 - 1 )</span></td>
<td class="stats">0.771</td>
<td class="stats">0.518</td>
<td class="subRank">57</td>
<td class="stats">20.0</td>
<td class="subRank">39</td>
<td class="stats">12.7</td>
<td class="subRank">16</td>
<td class="stats">176.4</td>
<td class="subRank">20</td>
</tr>
<tr class="oddRow">
<td class="bigrank">19</td>
<td class="changeBad bigrank">-2</td>
<td class="teamName">Minnesota<span class="rank"> ( 9 - 2 )</span></td>
<td class="stats">0.758</td>
<td class="stats">0.568</td>
<td class="subRank">43</td>
<td class="stats">24.8</td>
<td class="subRank">10</td>
<td class="stats">16.1</td>
<td class="subRank">46</td>
<td class="stats">156.5</td>
<td class="subRank">121</td>
</tr>
<tr class="evenRow">
<td class="bigrank">20</td>
<td class="changeGood bigrank">+1</td>
<td class="teamName">Memphis<span class="rank"> ( 10 - 1 )</span></td>
<td class="stats">0.758</td>
<td class="stats">0.477</td>
<td class="subRank">69</td>
<td class="stats">25.0</td>
<td class="subRank">8</td>
<td class="stats">16.3</td>
<td class="subRank">49</td>
<td class="stats">170.9</td>
<td class="subRank">46</td>
</tr>
<tr class="oddRow">
<td class="bigrank">21</td>
<td class="changeGood bigrank">+2</td>
<td class="teamName">UCF<span class="rank"> ( 8 - 3 )</span></td>
<td class="stats">0.747</td>
<td class="stats">0.422</td>
<td class="subRank">86</td>
<td class="stats">23.7</td>
<td class="subRank">13</td>
<td class="stats">15.8</td>
<td class="subRank">42</td>
<td class="stats">187.7</td>
<td class="subRank">1</td>
</tr>
<tr class="evenRow">
<td class="bigrank">22</td>
<td class="changeBad bigrank">-6</td>
<td class="teamName">Texas A&M<span class="rank"> ( 6 - 5 )</span></td>
<td class="stats">0.737</td>
<td class="stats">0.698</td>
<td class="subRank">4</td>
<td class="stats">20.4</td>
<td class="subRank">34</td>
<td class="stats">13.8</td>
<td class="subRank">23</td>
<td class="stats">165.1</td>
<td class="subRank">83</td>
</tr>
<tr class="oddRow">
<td class="bigrank">23</td>
<td class="changeBad bigrank">-3</td>
<td class="teamName">Boise State<span class="rank"> ( 10 - 1 )</span></td>
<td class="stats">0.736</td>
<td class="stats">0.395</td>
<td class="subRank">104</td>
<td class="stats">22.2</td>
<td class="subRank">21</td>
<td class="stats">15.1</td>
<td class="subRank">36</td>
<td class="stats">166.2</td>
<td class="subRank">74</td>
</tr>
<tr class="evenRow">
<td class="bigrank">24</td>
<td class="changeGood bigrank">NA</td>
<td class="teamName">Air Force<span class="rank"> ( 9 - 2 )</span></td>
<td class="stats">0.711</td>
<td class="stats">0.444</td>
<td class="subRank">80</td>
<td class="stats">22.2</td>
<td class="subRank">20</td>
<td class="stats">15.8</td>
<td class="subRank">40</td>
<td class="stats">150.1</td>
<td class="subRank">130</td>
</tr>
<tr class="oddRow">
<td class="bigrank">25</td>
<td class="changeGood bigrank">NA</td>
<td class="teamName">FL-Atlantic<span class="rank"> ( 8 - 3 )</span></td>
<td class="stats">0.701</td>
<td class="stats">0.461</td>
<td class="subRank">72</td>
<td class="stats">20.4</td>
<td class="subRank">33</td>
<td class="stats">14.8</td>
<td class="subRank">32</td>
<td class="stats">175.5</td>
<td class="subRank">22</td>
</tr>
</table>
<div><i>Rankings through games of 2019-12-01</i><br/>
<br />
New entries: Air Force, FL-Atlantic.<br />
<br />
Dropped out: Iowa State, Navy.<br />
<br />
<br />
<i>Follow us on Twitter at <a href="http://twitter.com/TFGridiron">@TFGridiron</a> and <a href="http://twitter.com/TFGLiveOdds">@TFGLiveOdds</a>.</i>
</div>Justinhttp://www.blogger.com/profile/13472829033626429617noreply@blogger.comtag:blogger.com,1999:blog-4644666831537289581.post-58899040461150480412019-12-02T07:00:00.000-08:002020-01-15T11:21:39.469-08:00Week 16: Full Rankings — TFGBiggest jumps: Central Michigan (0.079); Northwestern (0.066); Baylor (0.061); Ohio (0.059); Georgia Southern (0.057)<br>
<br>
Biggest drops: Illinois (-0.100); Louisville (-0.074); Army (-0.068); Kansas (-0.065); Miami-FL (-0.060)<br>
<br>
Full rankings after the jump.<br>
<a href="https://www.tfgridiron.com/2019/12/week-16-full-rankings-tfg.html#more">Read more »</a>Justinhttp://www.blogger.com/profile/13472829033626429617noreply@blogger.comtag:blogger.com,1999:blog-4644666831537289581.post-78323885348908549552019-12-02T06:30:00.000-08:002020-01-15T11:21:37.803-08:00Week 16: Top 25 — RBA<div><i>Mouse over column headers for definitions, or see <a href="/2009/10/under-hood.html">this page</a></i></div>
<table class="rank-table">
<tr class="rba">
<th valign="bottom" rowspan="2">Rank</th>
<th valign="bottom" rowspan="2">+/-</th>
<th valign="bottom" rowspan="2">Team</th>
<th valign="bottom" rowspan="2"><span title="Expected winning percent if they were to play a schedule of 0.500 opponents.">WinPct</span></th>
<th valign="bottom" rowspan="2" colspan="2"><span title="Average expected winning percentage of the opponents this team has played.">SoS</span></th>
<th colspan="6">Adjusted</th>
</tr>
<tr class="rba">
<th colspan="2"><span title="Points per 100 plays this team has scored, adjusted for strength of their opponents. Includes points from all sources, including offense, defense (e.g., pick-6s), and special teams.">Off.</span></th>
<th colspan="2"><span title="Points per 100 plays this team has allowed, adjusted for strength of their opponents. Includes points from all sources, including offense, defense (e.g., pick-6s), and special teams.">Def.</span></th>
<th colspan="2"><span title="Average number of plays per game, adjusted for pace of opponent. Includes all plays: e.g., offense, defense, kickoffs, extra points, etc, etc.">Pace</span></th>
</tr>
<tr class="oddRow">
<td class="bigrank">1</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Ohio State<span class="rank"> ( 12 - 0 )</span></td>
<td class="stats">0.929</td>
<td class="stats">0.536</td>
<td class="subRank">45</td>
<td class="stats">30.3</td>
<td class="subRank">2</td>
<td class="stats">7.2</td>
<td class="subRank">1</td>
<td class="stats">163.8</td>
<td class="subRank">109</td>
</tr>
<tr class="evenRow">
<td class="bigrank">2</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Wisconsin<span class="rank"> ( 10 - 2 )</span></td>
<td class="stats">0.929</td>
<td class="stats">0.536</td>
<td class="subRank">44</td>
<td class="stats">23.8</td>
<td class="subRank">7</td>
<td class="stats">7.8</td>
<td class="subRank">6</td>
<td class="stats">160.0</td>
<td class="subRank">124</td>
</tr>
<tr class="oddRow">
<td class="bigrank">3</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Clemson<span class="rank"> ( 11 - 0 )</span></td>
<td class="stats">0.897</td>
<td class="stats">0.540</td>
<td class="subRank">36</td>
<td class="stats">25.2</td>
<td class="subRank">5</td>
<td class="stats">7.7</td>
<td class="subRank">4</td>
<td class="stats">169.9</td>
<td class="subRank">47</td>
</tr>
<tr class="evenRow">
<td class="bigrank">4</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Penn State<span class="rank"> ( 9 - 2 )</span></td>
<td class="stats">0.894</td>
<td class="stats">0.539</td>
<td class="subRank">37</td>
<td class="stats">22.1</td>
<td class="subRank">17</td>
<td class="stats">7.6</td>
<td class="subRank">2</td>
<td class="stats">165.8</td>
<td class="subRank">87</td>
</tr>
<tr class="oddRow">
<td class="bigrank">5</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Alabama<span class="rank"> ( 9 - 2 )</span></td>
<td class="stats">0.892</td>
<td class="stats">0.553</td>
<td class="subRank">10</td>
<td class="stats">28.9</td>
<td class="subRank">3</td>
<td class="stats">10.2</td>
<td class="subRank">13</td>
<td class="stats">158.3</td>
<td class="subRank">126</td>
</tr>
<tr class="evenRow">
<td class="bigrank">6</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Oregon<span class="rank"> ( 9 - 2 )</span></td>
<td class="stats">0.878</td>
<td class="stats">0.533</td>
<td class="subRank">51</td>
<td class="stats">23.8</td>
<td class="subRank">8</td>
<td class="stats">8.7</td>
<td class="subRank">7</td>
<td class="stats">178.0</td>
<td class="subRank">3</td>
</tr>
<tr class="oddRow">
<td class="bigrank">7</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Iowa<span class="rank"> ( 9 - 3 )</span></td>
<td class="stats">0.875</td>
<td class="stats">0.529</td>
<td class="subRank">54</td>
<td class="stats">19.7</td>
<td class="subRank">30</td>
<td class="stats">7.7</td>
<td class="subRank">3</td>
<td class="stats">163.1</td>
<td class="subRank">116</td>
</tr>
<tr class="evenRow">
<td class="bigrank">8</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">LSU<span class="rank"> ( 11 - 0 )</span></td>
<td class="stats">0.870</td>
<td class="stats">0.559</td>
<td class="subRank">7</td>
<td class="stats">28.6</td>
<td class="subRank">4</td>
<td class="stats">9.9</td>
<td class="subRank">11</td>
<td class="stats">160.7</td>
<td class="subRank">121</td>
</tr>
<tr class="oddRow">
<td class="bigrank">9</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Georgia<span class="rank"> ( 10 - 1 )</span></td>
<td class="stats">0.858</td>
<td class="stats">0.547</td>
<td class="subRank">28</td>
<td class="stats">23.1</td>
<td class="subRank">10</td>
<td class="stats">7.8</td>
<td class="subRank">5</td>
<td class="stats">160.0</td>
<td class="subRank">125</td>
</tr>
<tr class="evenRow">
<td class="bigrank">10</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Florida<span class="rank"> ( 8 - 2 )</span></td>
<td class="stats">0.840</td>
<td class="stats">0.562</td>
<td class="subRank">4</td>
<td class="stats">21.2</td>
<td class="subRank">22</td>
<td class="stats">9.8</td>
<td class="subRank">10</td>
<td class="stats">160.4</td>
<td class="subRank">123</td>
</tr>
<tr class="oddRow">
<td class="bigrank">11</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Notre Dame<span class="rank"> ( 10 - 2 )</span></td>
<td class="stats">0.835</td>
<td class="stats">0.564</td>
<td class="subRank">2</td>
<td class="stats">22.4</td>
<td class="subRank">13</td>
<td class="stats">10.3</td>
<td class="subRank">14</td>
<td class="stats">165.3</td>
<td class="subRank">92</td>
</tr>
<tr class="evenRow">
<td class="bigrank">12</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Michigan<span class="rank"> ( 9 - 3 )</span></td>
<td class="stats">0.821</td>
<td class="stats">0.553</td>
<td class="subRank">13</td>
<td class="stats">22.9</td>
<td class="subRank">11</td>
<td class="stats">10.1</td>
<td class="subRank">12</td>
<td class="stats">164.0</td>
<td class="subRank">105</td>
</tr>
<tr class="oddRow">
<td class="bigrank">13</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Utah<span class="rank"> ( 10 - 1 )</span></td>
<td class="stats">0.819</td>
<td class="stats">0.501</td>
<td class="subRank">66</td>
<td class="stats">22.8</td>
<td class="subRank">12</td>
<td class="stats">9.7</td>
<td class="subRank">8</td>
<td class="stats">166.7</td>
<td class="subRank">80</td>
</tr>
<tr class="evenRow">
<td class="bigrank">14</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Auburn<span class="rank"> ( 8 - 3 )</span></td>
<td class="stats">0.816</td>
<td class="stats">0.563</td>
<td class="subRank">3</td>
<td class="stats">22.2</td>
<td class="subRank">16</td>
<td class="stats">9.7</td>
<td class="subRank">9</td>
<td class="stats">162.4</td>
<td class="subRank">119</td>
</tr>
<tr class="oddRow">
<td class="bigrank">15</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Oklahoma<span class="rank"> ( 10 - 1 )</span></td>
<td class="stats">0.816</td>
<td class="stats">0.543</td>
<td class="subRank">34</td>
<td class="stats">30.5</td>
<td class="subRank">1</td>
<td class="stats">13.7</td>
<td class="subRank">35</td>
<td class="stats">171.8</td>
<td class="subRank">24</td>
</tr>
<tr class="evenRow">
<td class="bigrank">16</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Iowa State<span class="rank"> ( 6 - 5 )</span></td>
<td class="stats">0.795</td>
<td class="stats">0.549</td>
<td class="subRank">21</td>
<td class="stats">24.4</td>
<td class="subRank">6</td>
<td class="stats">12.3</td>
<td class="subRank">23</td>
<td class="stats">171.1</td>
<td class="subRank">30</td>
</tr>
<tr class="oddRow">
<td class="bigrank">17</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Missouri<span class="rank"> ( 5 - 6 )</span></td>
<td class="stats">0.773</td>
<td class="stats">0.520</td>
<td class="subRank">59</td>
<td class="stats">19.3</td>
<td class="subRank">32</td>
<td class="stats">12.4</td>
<td class="subRank">25</td>
<td class="stats">174.4</td>
<td class="subRank">10</td>
</tr>
<tr class="evenRow">
<td class="bigrank">18</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">UCF<span class="rank"> ( 8 - 3 )</span></td>
<td class="stats">0.758</td>
<td class="stats">0.471</td>
<td class="subRank">85</td>
<td class="stats">22.2</td>
<td class="subRank">15</td>
<td class="stats">13.7</td>
<td class="subRank">37</td>
<td class="stats">167.3</td>
<td class="subRank">75</td>
</tr>
<tr class="oddRow">
<td class="bigrank">19</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Washington<span class="rank"> ( 6 - 5 )</span></td>
<td class="stats">0.743</td>
<td class="stats">0.545</td>
<td class="subRank">31</td>
<td class="stats">21.5</td>
<td class="subRank">20</td>
<td class="stats">12.4</td>
<td class="subRank">24</td>
<td class="stats">167.5</td>
<td class="subRank">71</td>
</tr>
<tr class="evenRow">
<td class="bigrank">20</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Texas<span class="rank"> ( 7 - 5 )</span></td>
<td class="stats">0.720</td>
<td class="stats">0.537</td>
<td class="subRank">42</td>
<td class="stats">22.3</td>
<td class="subRank">14</td>
<td class="stats">15.2</td>
<td class="subRank">50</td>
<td class="stats">171.6</td>
<td class="subRank">26</td>
</tr>
<tr class="oddRow">
<td class="bigrank">21</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">TCU<span class="rank"> ( 4 - 7 )</span></td>
<td class="stats">0.712</td>
<td class="stats">0.503</td>
<td class="subRank">65</td>
<td class="stats">19.8</td>
<td class="subRank">28</td>
<td class="stats">12.0</td>
<td class="subRank">20</td>
<td class="stats">170.8</td>
<td class="subRank">33</td>
</tr>
<tr class="evenRow">
<td class="bigrank">22</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Duke<span class="rank"> ( 4 - 7 )</span></td>
<td class="stats">0.709</td>
<td class="stats">0.527</td>
<td class="subRank">57</td>
<td class="stats">21.1</td>
<td class="subRank">23</td>
<td class="stats">15.1</td>
<td class="subRank">49</td>
<td class="stats">169.6</td>
<td class="subRank">49</td>
</tr>
<tr class="oddRow">
<td class="bigrank">23</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Michigan State<span class="rank"> ( 6 - 6 )</span></td>
<td class="stats">0.704</td>
<td class="stats">0.553</td>
<td class="subRank">11</td>
<td class="stats">16.1</td>
<td class="subRank">67</td>
<td class="stats">10.9</td>
<td class="subRank">15</td>
<td class="stats">165.7</td>
<td class="subRank">88</td>
</tr>
<tr class="evenRow">
<td class="bigrank">24</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Cincinnati<span class="rank"> ( 10 - 2 )</span></td>
<td class="stats">0.703</td>
<td class="stats">0.492</td>
<td class="subRank">72</td>
<td class="stats">18.1</td>
<td class="subRank">43</td>
<td class="stats">11.7</td>
<td class="subRank">18</td>
<td class="stats">170.3</td>
<td class="subRank">40</td>
</tr>
<tr class="oddRow">
<td class="bigrank">25</td>
<td class="changeNone bigrank">--</td>
<td class="teamName">Boise State<span class="rank"> ( 10 - 1 )</span></td>
<td class="stats">0.677</td>
<td class="stats">0.459</td>
<td class="subRank">101</td>
<td class="stats">19.0</td>
<td class="subRank">34</td>
<td class="stats">13.8</td>
<td class="subRank">38</td>
<td class="stats">169.6</td>
<td class="subRank">50</td>
</tr>
</table>
<div><i>Rankings through games of 2019-12-01</i><br/>
<br />
New entries: none.<br />
<br />
Dropped out: none.<br />
<br />
<br />
<i>Follow us on Twitter at <a href="http://twitter.com/TFGridiron">@TFGridiron</a> and <a href="http://twitter.com/TFGLiveOdds">@TFGLiveOdds</a>.</i>
</div>Justinhttp://www.blogger.com/profile/13472829033626429617noreply@blogger.comtag:blogger.com,1999:blog-4644666831537289581.post-27959325246971651852019-12-02T06:00:00.000-08:002020-01-15T11:21:38.370-08:00Week 16: Full Rankings — RBABiggest jumps: <br>
<br>
Biggest drops: <br>
<br>
Full rankings after the jump.<br>
<a href="https://www.tfgridiron.com/2019/12/week-16-full-rankings-rba.html#more">Read more »</a>Justinhttp://www.blogger.com/profile/13472829033626429617noreply@blogger.comtag:blogger.com,1999:blog-4644666831537289581.post-85462929147239047912019-11-30T08:35:00.000-08:002020-01-15T11:22:10.533-08:00Week 15: Saturday Predictions<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg2"><span class="rank"> 32</span></td><td class="tfg2" width="175"><span class="teamName">Air Force</span></td><td class="tfg2"><span class="score">28</span></td>
</tr>
<tr>
<td><span class="rank"> 44</span></td><td><span class="teamName">Wyoming</span></td><td><span class="score">25</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg4"><span class="rank"> 52</span></td><td class="tfg4" width="175"><span class="teamName">Arizona State</span></td><td class="tfg4"><span class="score">33</span></td>
</tr>
<tr>
<td><span class="rank"> 98</span></td><td><span class="teamName">Arizona</span></td><td><span class="score">27</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank"> 12</span></td><td width="175"><span class="teamName">Auburn</span></td><td><span class="score">26</span></td>
</tr>
<tr>
<td class="tfg3"><span class="rank"> 3</span></td><td class="tfg3"><span class="teamName">Alabama</span></td><td class="tfg3"><span class="score">34</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg4"><span class="rank">109</span></td><td class="tfg4" width="175"><span class="teamName">Coastal Carolina</span></td><td class="tfg4"><span class="score">30</span></td>
</tr>
<tr>
<td><span class="rank">124</span></td><td><span class="teamName">Texas State</span></td><td><span class="score">26</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank"> 92</span></td><td width="175"><span class="teamName">Duke</span></td><td><span class="score">24</span></td>
</tr>
<tr>
<td class="tfg4"><span class="rank"> 38</span></td><td class="tfg4"><span class="teamName">Miami-FL</span></td><td class="tfg4"><span class="score">30</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank">115</span></td><td width="175"><span class="teamName">East Carolina</span></td><td><span class="score">29</span></td>
</tr>
<tr>
<td class="tfg3"><span class="rank"> 77</span></td><td class="tfg3"><span class="teamName">Tulsa</span></td><td class="tfg3"><span class="score">36</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg3"><span class="rank"> 31</span></td><td class="tfg3" width="175"><span class="teamName">FL-Atlantic</span></td><td class="tfg3"><span class="score">31</span></td>
</tr>
<tr>
<td><span class="rank"> 62</span></td><td><span class="teamName">Southern Miss.</span></td><td><span class="score">27</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg5"><span class="rank"> 10</span></td><td class="tfg5" width="175"><span class="teamName">Florida</span></td><td class="tfg5"><span class="score">33</span></td>
</tr>
<tr>
<td><span class="rank"> 60</span></td><td><span class="teamName">Florida State</span></td><td><span class="score">23</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg2"><span class="rank"> 75</span></td><td class="tfg2" width="175"><span class="teamName">Georgia Southern</span></td><td class="tfg2"><span class="score">32</span></td>
</tr>
<tr>
<td><span class="rank"> 94</span></td><td><span class="teamName">Georgia State</span></td><td><span class="score">29</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank">105</span></td><td width="175"><span class="teamName">Georgia Tech</span></td><td><span class="score">17</span></td>
</tr>
<tr>
<td class="tfg6"><span class="rank"> 4</span></td><td class="tfg6"><span class="teamName">Georgia</span></td><td class="tfg6"><span class="score">34</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank"> 73</span></td><td width="175"><span class="teamName">Hawaii</span></td><td><span class="score">27</span></td>
</tr>
<tr>
<td class="tfg2"><span class="rank"> 47</span></td><td class="tfg2"><span class="teamName">Army</span></td><td class="tfg2"><span class="score">30</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank"> 67</span></td><td width="175"><span class="teamName">Houston</span></td><td><span class="score">28</span></td>
</tr>
<tr>
<td class="tfg3"><span class="rank"> 25</span></td><td class="tfg3"><span class="teamName">Navy</span></td><td class="tfg3"><span class="score">33</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg3"><span class="rank"> 54</span></td><td class="tfg3" width="175"><span class="teamName">Illinois</span></td><td class="tfg3"><span class="score">28</span></td>
</tr>
<tr>
<td><span class="rank"> 96</span></td><td><span class="teamName">Northwestern</span></td><td><span class="score">24</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank"> 99</span></td><td width="175"><span class="teamName">Kansas</span></td><td><span class="score">25</span></td>
</tr>
<tr>
<td class="tfg5"><span class="rank"> 24</span></td><td class="tfg5"><span class="teamName">Baylor</span></td><td class="tfg5"><span class="score">34</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank"> 35</span></td><td width="175"><span class="teamName">Kansas State</span></td><td><span class="score">27</span></td>
</tr>
<tr>
<td class="tfg2"><span class="rank"> 22</span></td><td class="tfg2"><span class="teamName">Iowa State</span></td><td class="tfg2"><span class="score">30</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg1"><span class="rank"> 53</span></td><td class="tfg1" width="175"><span class="teamName">Kentucky</span></td><td class="tfg1"><span class="score">30</span></td>
</tr>
<tr>
<td><span class="rank"> 66</span></td><td><span class="teamName">Louisville</span></td><td><span class="score">29</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg5"><span class="rank"> 29</span></td><td class="tfg5" width="175"><span class="teamName">LA-Lafayette</span></td><td class="tfg5"><span class="score">36</span></td>
</tr>
<tr>
<td><span class="rank">104</span></td><td><span class="teamName">LA-Monroe</span></td><td><span class="score">27</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg4"><span class="rank">116</span></td><td class="tfg4" width="175"><span class="teamName">Liberty</span></td><td class="tfg4"><span class="score">35</span></td>
</tr>
<tr>
<td><span class="rank">125</span></td><td><span class="teamName">New Mexico State</span></td><td><span class="score">28</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg5"><span class="rank"> 69</span></td><td class="tfg5" width="175"><span class="teamName">LA Tech</span></td><td class="tfg5"><span class="score">35</span></td>
</tr>
<tr>
<td><span class="rank">121</span></td><td><span class="teamName">UTSA</span></td><td><span class="score">25</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg3"><span class="rank"> 13</span></td><td class="tfg3" width="175"><span class="teamName">LSU</span></td><td class="tfg3"><span class="score">36</span></td>
</tr>
<tr>
<td><span class="rank"> 16</span></td><td><span class="teamName">Texas A&M</span></td><td><span class="score">30</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg2"><span class="rank"> 61</span></td><td class="tfg2" width="175"><span class="teamName">Marshall</span></td><td class="tfg2"><span class="score">28</span></td>
</tr>
<tr>
<td><span class="rank"> 86</span></td><td><span class="teamName">FIU</span></td><td><span class="score">25</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank"> 6</span></td><td width="175"><span class="teamName">Michigan</span></td><td><span class="score">29</span></td>
</tr>
<tr>
<td class="tfg3"><span class="rank"> 2</span></td><td class="tfg3"><span class="teamName">Ohio State</span></td><td class="tfg3"><span class="score">35</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg5"><span class="rank"> 42</span></td><td class="tfg5" width="175"><span class="teamName">Michigan State</span></td><td class="tfg5"><span class="score">29</span></td>
</tr>
<tr>
<td><span class="rank">112</span></td><td><span class="teamName">Maryland</span></td><td><span class="score">21</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank"> 17</span></td><td width="175"><span class="teamName">Minnesota</span></td><td><span class="score">27</span></td>
</tr>
<tr>
<td class="tfg4"><span class="rank"> 7</span></td><td class="tfg4"><span class="teamName">Wisconsin</span></td><td class="tfg4"><span class="score">32</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg1"><span class="rank">114</span></td><td class="tfg1" width="175"><span class="teamName">Nevada</span></td><td class="tfg1"><span class="score">30</span></td>
</tr>
<tr>
<td><span class="rank">117</span></td><td><span class="teamName">UNLV</span></td><td><span class="score">28</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank">120</span></td><td width="175"><span class="teamName">New Mexico</span></td><td><span class="score">25</span></td>
</tr>
<tr>
<td class="tfg5"><span class="rank"> 72</span></td><td class="tfg5"><span class="teamName">Utah State</span></td><td class="tfg5"><span class="score">34</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank">103</span></td><td width="175"><span class="teamName">North Carolina State</span></td><td><span class="score">27</span></td>
</tr>
<tr>
<td class="tfg4"><span class="rank"> 51</span></td><td class="tfg4"><span class="teamName">North Carolina</span></td><td class="tfg4"><span class="score">33</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank">100</span></td><td width="175"><span class="teamName">North Texas</span></td><td><span class="score">26</span></td>
</tr>
<tr>
<td class="tfg2"><span class="rank"> 74</span></td><td class="tfg2"><span class="teamName">UAB</span></td><td class="tfg2"><span class="score">30</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank"> 34</span></td><td width="175"><span class="teamName">Oklahoma State</span></td><td><span class="score">32</span></td>
</tr>
<tr>
<td class="tfg3"><span class="rank"> 15</span></td><td class="tfg3"><span class="teamName">Oklahoma</span></td><td class="tfg3"><span class="score">39</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank">123</span></td><td width="175"><span class="teamName">Old Dominion</span></td><td><span class="score">26</span></td>
</tr>
<tr>
<td class="tfg4"><span class="rank"> 91</span></td><td class="tfg4"><span class="teamName">Charlotte</span></td><td class="tfg4"><span class="score">32</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg5"><span class="rank"> 14</span></td><td class="tfg5" width="175"><span class="teamName">Oregon</span></td><td class="tfg5"><span class="score">38</span></td>
</tr>
<tr>
<td><span class="rank"> 88</span></td><td><span class="teamName">Oregon State</span></td><td><span class="score">26</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg6"><span class="rank"> 8</span></td><td class="tfg6" width="175"><span class="teamName">Penn State</span></td><td class="tfg6"><span class="score">38</span></td>
</tr>
<tr>
<td><span class="rank">127</span></td><td><span class="teamName">Rutgers</span></td><td><span class="score">14</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg1"><span class="rank"> 64</span></td><td class="tfg1" width="175"><span class="teamName">Pittsburgh</span></td><td class="tfg1"><span class="score">28</span></td>
</tr>
<tr>
<td><span class="rank"> 78</span></td><td><span class="teamName">Boston College</span></td><td><span class="score">26</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank"> 68</span></td><td width="175"><span class="teamName">Purdue</span></td><td><span class="score">27</span></td>
</tr>
<tr>
<td class="tfg3"><span class="rank"> 30</span></td><td class="tfg3"><span class="teamName">Indiana</span></td><td class="tfg3"><span class="score">32</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg1"><span class="rank"> 59</span></td><td class="tfg1" width="175"><span class="teamName">SDSU</span></td><td class="tfg1"><span class="score">25</span></td>
</tr>
<tr>
<td><span class="rank"> 63</span></td><td><span class="teamName">BYU</span></td><td><span class="score">23</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank">102</span></td><td width="175"><span class="teamName">SJSU</span></td><td><span class="score">32</span></td>
</tr>
<tr>
<td class="tfg2"><span class="rank"> 76</span></td><td class="tfg2"><span class="teamName">Fresno State</span></td><td class="tfg2"><span class="score">35</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank"> 50</span></td><td width="175"><span class="teamName">SMU</span></td><td><span class="score">35</span></td>
</tr>
<tr>
<td class="tfg1"><span class="rank"> 46</span></td><td class="tfg1"><span class="teamName">Tulane</span></td><td class="tfg1"><span class="score">37</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank"> 49</span></td><td width="175"><span class="teamName">South Carolina</span></td><td><span class="score">19</span></td>
</tr>
<tr>
<td class="tfg6"><span class="rank"> 1</span></td><td class="tfg6"><span class="teamName">Clemson</span></td><td class="tfg6"><span class="score">35</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank"> 80</span></td><td width="175"><span class="teamName">Stanford</span></td><td><span class="score">21</span></td>
</tr>
<tr>
<td class="tfg6"><span class="rank"> 11</span></td><td class="tfg6"><span class="teamName">Notre Dame</span></td><td class="tfg6"><span class="score">33</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank"> 93</span></td><td width="175"><span class="teamName">Syracuse</span></td><td><span class="score">29</span></td>
</tr>
<tr>
<td class="tfg2"><span class="rank"> 65</span></td><td class="tfg2"><span class="teamName">Wake Forest</span></td><td class="tfg2"><span class="score">32</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg6"><span class="rank"> 57</span></td><td class="tfg6" width="175"><span class="teamName">Temple</span></td><td class="tfg6"><span class="score">36</span></td>
</tr>
<tr>
<td><span class="rank">128</span></td><td><span class="teamName">Connecticut</span></td><td><span class="score">20</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg5"><span class="rank"> 45</span></td><td class="tfg5" width="175"><span class="teamName">Tennessee</span></td><td class="tfg5"><span class="score">31</span></td>
</tr>
<tr>
<td><span class="rank">119</span></td><td><span class="teamName">Vanderbilt</span></td><td><span class="score">22</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg1"><span class="rank"> 81</span></td><td class="tfg1" width="175"><span class="teamName">UCLA</span></td><td class="tfg1"><span class="score">27</span></td>
</tr>
<tr>
<td><span class="rank"> 82</span></td><td><span class="teamName">California</span></td><td><span class="score">26</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg6"><span class="rank"> 5</span></td><td class="tfg6" width="175"><span class="teamName">Utah</span></td><td class="tfg6"><span class="score">33</span></td>
</tr>
<tr>
<td><span class="rank"> 87</span></td><td><span class="teamName">Colorado</span></td><td><span class="score">19</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank">126</span></td><td width="175"><span class="teamName">UTEP</span></td><td><span class="score">24</span></td>
</tr>
<tr>
<td class="tfg3"><span class="rank">118</span></td><td class="tfg3"><span class="teamName">Rice</span></td><td class="tfg3"><span class="score">31</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg4"><span class="rank"> 37</span></td><td class="tfg4" width="175"><span class="teamName">Western Kentucky</span></td><td class="tfg4"><span class="score">30</span></td>
</tr>
<tr>
<td><span class="rank"> 95</span></td><td><span class="teamName">Middle Tenn.</span></td><td><span class="score">24</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
</table>
<br/>
<!-- Table contains 46 games -->
<table class="pred-key">
<tr><th colspan=8>Key</th></tr>
<tr>
<td rowspan=2 align="center">Close<br>game</td>
<td class="tfg1"> </td>
<td class="tfg2"> </td>
<td class="tfg3"> </td>
<td class="tfg4"> </td>
<td class="tfg5"> </td>
<td class="tfg6"> </td>
<td rowspan=2 align="center">Certain<br>victory</td>
</tr>
<tr>
<td class="rba1"> </td>
<td class="rba2"> </td>
<td class="rba3"> </td>
<td class="rba4"> </td>
<td class="rba5"> </td>
<td class="rba6"> </td>
</tr>
</table>
<br />
<br />
<i>Follow us on Twitter at <a href="http://twitter.com/TFGridiron">@TFGridiron</a> and <a href="http://twitter.com/TFGLiveOdds">@TFGLiveOdds</a>.</i>Justinhttp://www.blogger.com/profile/13472829033626429617noreply@blogger.comtag:blogger.com,1999:blog-4644666831537289581.post-79475519559848966932019-11-29T13:30:00.000-08:002020-01-15T11:22:10.005-08:00Week 15: Friday Predictions<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank">110</span></td><td width="175"><span class="teamName">Arkansas</span></td><td><span class="score">25</span></td>
</tr>
<tr>
<td class="tfg4"><span class="rank"> 56</span></td><td class="tfg4"><span class="teamName">Missouri</span></td><td class="tfg4"><span class="score">33</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg1"><span class="rank"> 83</span></td><td class="tfg1" width="175"><span class="teamName">Ball State</span></td><td class="tfg1"><span class="score">30</span></td>
</tr>
<tr>
<td><span class="rank"> 89</span></td><td><span class="teamName">Miami-OH</span></td><td><span class="score">28</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg6"><span class="rank"> 58</span></td><td class="tfg6" width="175"><span class="teamName">Buffalo</span></td><td class="tfg6"><span class="score">36</span></td>
</tr>
<tr>
<td><span class="rank">129</span></td><td><span class="teamName">Bowling Green</span></td><td><span class="score">21</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg1"><span class="rank"> 97</span></td><td class="tfg1" width="175"><span class="teamName">Central Michigan</span></td><td class="tfg1"><span class="score">33</span></td>
</tr>
<tr>
<td><span class="rank">101</span></td><td><span class="teamName">Toledo</span></td><td><span class="score">31</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank">106</span></td><td width="175"><span class="teamName">Colorado State</span></td><td><span class="score">25</span></td>
</tr>
<tr>
<td class="tfg5"><span class="rank"> 20</span></td><td class="tfg5"><span class="teamName">Boise State</span></td><td class="tfg5"><span class="score">37</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg2"><span class="rank"> 90</span></td><td class="tfg2" width="175"><span class="teamName">Eastern Michigan</span></td><td class="tfg2"><span class="score">31</span></td>
</tr>
<tr>
<td><span class="rank">108</span></td><td><span class="teamName">Kent State</span></td><td><span class="score">28</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg1"><span class="rank"> 21</span></td><td class="tfg1" width="175"><span class="teamName">Memphis</span></td><td class="tfg1"><span class="score">31</span></td>
</tr>
<tr>
<td><span class="rank"> 28</span></td><td><span class="teamName">Cincinnati</span></td><td><span class="score">29</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank"> 48</span></td><td width="175"><span class="teamName">Nebraska</span></td><td><span class="score">21</span></td>
</tr>
<tr>
<td class="tfg5"><span class="rank"> 9</span></td><td class="tfg5"><span class="teamName">Iowa</span></td><td class="tfg5"><span class="score">28</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank">122</span></td><td width="175"><span class="teamName">South Alabama</span></td><td><span class="score">24</span></td>
</tr>
<tr>
<td class="tfg5"><span class="rank"> 79</span></td><td class="tfg5"><span class="teamName">Arkansas State</span></td><td class="tfg5"><span class="score">32</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg3"><span class="rank"> 40</span></td><td class="tfg3" width="175"><span class="teamName">TCU</span></td><td class="tfg3"><span class="score">31</span></td>
</tr>
<tr>
<td><span class="rank"> 84</span></td><td><span class="teamName">West Virginia</span></td><td><span class="score">26</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg2"><span class="rank"> 33</span></td><td class="tfg2" width="175"><span class="teamName">Texas</span></td><td class="tfg2"><span class="score">34</span></td>
</tr>
<tr>
<td><span class="rank"> 55</span></td><td><span class="teamName">Texas Tech</span></td><td><span class="score">31</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank"> 85</span></td><td width="175"><span class="teamName">Troy</span></td><td><span class="score">26</span></td>
</tr>
<tr>
<td class="tfg5"><span class="rank"> 18</span></td><td class="tfg5"><span class="teamName">Appalachian State</span></td><td class="tfg5"><span class="score">35</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg5"><span class="rank"> 23</span></td><td class="tfg5" width="175"><span class="teamName">UCF</span></td><td class="tfg5"><span class="score">38</span></td>
</tr>
<tr>
<td><span class="rank">111</span></td><td><span class="teamName">South Florida</span></td><td><span class="score">25</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank"> 41</span></td><td width="175"><span class="teamName">Virginia</span></td><td><span class="score">28</span></td>
</tr>
<tr>
<td class="tfg2"><span class="rank"> 26</span></td><td class="tfg2"><span class="teamName">Virginia Tech</span></td><td class="tfg2"><span class="score">30</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg3"><span class="rank"> 19</span></td><td class="tfg3" width="175"><span class="teamName">Washington</span></td><td class="tfg3"><span class="score">35</span></td>
</tr>
<tr>
<td><span class="rank"> 36</span></td><td><span class="teamName">Washington State</span></td><td><span class="score">32</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
</table>
<br/>
<!-- Table contains 15 games -->
<table class="pred-key">
<tr><th colspan=8>Key</th></tr>
<tr>
<td rowspan=2 align="center">Close<br>game</td>
<td class="tfg1"> </td>
<td class="tfg2"> </td>
<td class="tfg3"> </td>
<td class="tfg4"> </td>
<td class="tfg5"> </td>
<td class="tfg6"> </td>
<td rowspan=2 align="center">Certain<br>victory</td>
</tr>
<tr>
<td class="rba1"> </td>
<td class="rba2"> </td>
<td class="rba3"> </td>
<td class="rba4"> </td>
<td class="rba5"> </td>
<td class="rba6"> </td>
</tr>
</table>
<br />
<br />
<i>Follow us on Twitter at <a href="http://twitter.com/TFGridiron">@TFGridiron</a> and <a href="http://twitter.com/TFGLiveOdds">@TFGLiveOdds</a>.</i>Justinhttp://www.blogger.com/profile/13472829033626429617noreply@blogger.comtag:blogger.com,1999:blog-4644666831537289581.post-35322264453529863992019-11-28T13:30:00.000-08:002020-01-15T11:22:11.033-08:00Week 15: Thursday Predictions<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td class="tfg1"><span class="rank"> 39</span></td><td class="tfg1" width="175"><span class="teamName">Mississippi State</span></td><td class="tfg1"><span class="score">29</span></td>
</tr>
<tr>
<td><span class="rank"> 43</span></td><td><span class="teamName">Mississippi</span></td><td><span class="score">28</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
</table>
<br/>
<!-- Table contains 1 games -->
<table class="pred-key">
<tr><th colspan=8>Key</th></tr>
<tr>
<td rowspan=2 align="center">Close<br>game</td>
<td class="tfg1"> </td>
<td class="tfg2"> </td>
<td class="tfg3"> </td>
<td class="tfg4"> </td>
<td class="tfg5"> </td>
<td class="tfg6"> </td>
<td rowspan=2 align="center">Certain<br>victory</td>
</tr>
<tr>
<td class="rba1"> </td>
<td class="rba2"> </td>
<td class="rba3"> </td>
<td class="rba4"> </td>
<td class="rba5"> </td>
<td class="rba6"> </td>
</tr>
</table>
<br />
<br />
<i>Follow us on Twitter at <a href="http://twitter.com/TFGridiron">@TFGridiron</a> and <a href="http://twitter.com/TFGLiveOdds">@TFGLiveOdds</a>.</i>Justinhttp://www.blogger.com/profile/13472829033626429617noreply@blogger.comtag:blogger.com,1999:blog-4644666831537289581.post-20456591963602445322019-11-28T08:40:00.000-08:002020-01-15T11:22:16.793-08:00Week 15 TFG Projections: SEC,Pac-12,Mountain West,Sun Belt<b>Projected conference champions</b>
<ul>
<li><b>Mountain West</b>: Boise State</li>
<li><b>Pac-12</b>: Utah</li>
<li><b>SEC</b>: Georgia</li>
<li><b>Sun Belt</b>: Appalachian State</li>
</ul>
<div>Full projected conference standings after the jump.</div>
<br>
<a href="https://www.tfgridiron.com/2019/11/week-15-tfg-projections-secpac.html#more">Read more »</a>Justinhttp://www.blogger.com/profile/13472829033626429617noreply@blogger.comtag:blogger.com,1999:blog-4644666831537289581.post-78473610719896767582019-11-28T08:10:00.000-08:002020-01-15T11:22:13.132-08:00Week 15 RBA Projections: SEC,Pac-12,Mountain West,Sun Belt<b>Projected conference champions</b>
<ul>
<li><b>Mountain West</b>: Boise State</li>
<li><b>Pac-12</b>: Oregon</li>
<li><b>SEC</b>: LSU</li>
<li><b>Sun Belt</b>: Appalachian State</li>
</ul>
<div>Full projected conference standings after the jump.</div>
<br>
<a href="https://www.tfgridiron.com/2019/11/week-15-rba-projections-secpac.html#more">Read more »</a>Justinhttp://www.blogger.com/profile/13472829033626429617noreply@blogger.comtag:blogger.com,1999:blog-4644666831537289581.post-24438063424215111282019-11-27T08:40:00.000-08:002020-01-15T11:22:16.226-08:00Week 15 TFG Projections: Big Ten,Big XII,Mid-American,Independents<b>Projected conference champions</b>
<ul>
<li><b>Big Ten</b>: Ohio State</li>
<li><b>Big XII</b>: Oklahoma</li>
<li><b>Independents</b>: BYU</li>
<li><b>Mid-American</b>: Western Michigan</li>
</ul>
<div>Full projected conference standings after the jump.</div>
<br>
<a href="https://www.tfgridiron.com/2019/11/week-15-tfg-projections-big-tenbig.html#more">Read more »</a>Justinhttp://www.blogger.com/profile/13472829033626429617noreply@blogger.comtag:blogger.com,1999:blog-4644666831537289581.post-9390265119610775052019-11-27T08:10:00.000-08:002020-01-15T11:22:12.578-08:00Week 15 RBA Projections: Big Ten,Big XII,Mid-American,Independents<b>Projected conference champions</b>
<ul>
<li><b>Big Ten</b>: Ohio State</li>
<li><b>Big XII</b>: Oklahoma</li>
<li><b>Independents</b>: BYU</li>
<li><b>Mid-American</b>: Western Michigan</li>
</ul>
<div>Full projected conference standings after the jump.</div>
<br>
<a href="https://www.tfgridiron.com/2019/11/week-15-rba-projections-big-tenbig.html#more">Read more »</a>Justinhttp://www.blogger.com/profile/13472829033626429617noreply@blogger.comtag:blogger.com,1999:blog-4644666831537289581.post-31661612438944224752019-11-26T13:30:00.000-08:002020-01-15T11:22:11.512-08:00Week 15: Tuesday Predictions<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank">131</span></td><td width="175"><span class="teamName">Akron</span></td><td><span class="score">22</span></td>
</tr>
<tr>
<td class="tfg6"><span class="rank"> 70</span></td><td class="tfg6"><span class="teamName">Ohio</span></td><td class="tfg6"><span class="score">37</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
<table border=0 cellpadding=0 cellspacing=0>
<tr><td>
<table class="pred-table">
<tr>
<td><span class="rank">107</span></td><td width="175"><span class="teamName">Northern Ill.</span></td><td><span class="score">27</span></td>
</tr>
<tr>
<td class="tfg3"><span class="rank"> 71</span></td><td class="tfg3"><span class="teamName">Western Michigan</span></td><td class="tfg3"><span class="score">32</span></td>
</tr>
</table>
</td><td>
</td></tr>
</table>
<br />
</table>
<br/>
<!-- Table contains 2 games -->
<table class="pred-key">
<tr><th colspan=8>Key</th></tr>
<tr>
<td rowspan=2 align="center">Close<br>game</td>
<td class="tfg1"> </td>
<td class="tfg2"> </td>
<td class="tfg3"> </td>
<td class="tfg4"> </td>
<td class="tfg5"> </td>
<td class="tfg6"> </td>
<td rowspan=2 align="center">Certain<br>victory</td>
</tr>
<tr>
<td class="rba1"> </td>
<td class="rba2"> </td>
<td class="rba3"> </td>
<td class="rba4"> </td>
<td class="rba5"> </td>
<td class="rba6"> </td>
</tr>
</table>
<br />
<br />
<i>Follow us on Twitter at <a href="http://twitter.com/TFGridiron">@TFGridiron</a> and <a href="http://twitter.com/TFGLiveOdds">@TFGLiveOdds</a>.</i>Justinhttp://www.blogger.com/profile/13472829033626429617noreply@blogger.comtag:blogger.com,1999:blog-4644666831537289581.post-8752690280098489592019-11-26T08:40:00.000-08:002020-01-15T11:22:15.347-08:00Week 15 TFG Projections: ACC,American Athletic,Conference-USA<b>Projected conference champions</b>
<ul>
<li><b>ACC</b>: Clemson</li>
<li><b>American Athletic</b>: Memphis</li>
<li><b>Conference-USA</b>: FL-Atlantic</li>
</ul>
<div>Full projected conference standings after the jump.</div>
<br>
<a href="https://www.tfgridiron.com/2019/11/week-15-tfg-projections-accamerican.html#more">Read more »</a>Justinhttp://www.blogger.com/profile/13472829033626429617noreply@blogger.comtag:blogger.com,1999:blog-4644666831537289581.post-38360094288529507742019-11-26T08:10:00.000-08:002020-01-15T11:22:12.021-08:00Week 15 RBA Projections: ACC,American Athletic,Conference-USA<b>Projected conference champions</b>
<ul>
<li><b>ACC</b>: Clemson</li>
<li><b>American Athletic</b>: Cincinnati</li>
<li><b>Conference-USA</b>: FL-Atlantic</li>
</ul>
<div>Full projected conference standings after the jump.</div>
<br>
<a href="https://www.tfgridiron.com/2019/11/week-15-rba-projections-accamerican.html#more">Read more »</a>Justinhttp://www.blogger.com/profile/13472829033626429617noreply@blogger.comtag:blogger.com,1999:blog-4644666831537289581.post-30372579603616401772019-11-26T07:30:00.000-08:002020-01-15T11:22:18.440-08:00Week 15: Undefeated ... but for how long? — TFG<!-- Min odds = 0.659 -->
<script src="https://www.google.com/jsapi" type="text/javascript"></script>
<script type="text/javascript">
google.load("visualization", "1", {packages:["treemap"]});
google.setOnLoadCallback(drawChart);
function drawChart() {
// Create and populate the projected table.
var projected20191124tfgundefeated = new google.visualization.DataTable();
projected20191124tfgundefeated.addColumn('string', 'Team');
projected20191124tfgundefeated.addColumn('string', 'Parent');
projected20191124tfgundefeated.addColumn('number', 'Number of Projected Wins');
projected20191124tfgundefeated.addRows([
["Odds of remaining undefeated",null,0],
["Ohio State","Odds of remaining undefeated",103],
["LSU","Odds of remaining undefeated",100],
["Clemson","Odds of remaining undefeated",146] ]);
// Create and draw the projectedvisualization.
var tree = new google.visualization.TreeMap(document.getElementById('projected20191124tfgundefeatedvisualization'));
tree.draw(projected20191124tfgundefeated, {
minColor: '#f00',
midColor: '#ddd',
maxColor: '#0d0',
headerHeight: 15,
fontColor: 'black',
fontFamily: 'Verdana',
showScale: false});
}
</script>
<div id="projected20191124tfgundefeatedvisualization" style="height: 252px; width: 625px;"></div>
<i>Odds as of games through 2019-11-24</i><br><br>
<a href="https://www.tfgridiron.com/2019/11/week-15-undefeated-but-for-how-long-tfg.html#more">Read more »</a>Justinhttp://www.blogger.com/profile/13472829033626429617noreply@blogger.com