Friday, August 23, 2019

UHSAA Week 2 RPI

As this is my first post on the subject of the "estimated" RPI standings for Utah high school football, I am going to take a minute to introduce myself and the excel model I created to calculate the RPI that will be used for the season.  If you don't care about who I am, why I did this, or why you should trust my model, skip the next few paragraphs.

First, as you can tell from the blog, my name is Skyler Aitken.  I have cared way too much about high school football in Utah since 2004 (aka my sophomore year), and I enjoy trying to follow along each season.  I am a graduate of Dixie High, and I built my excel model just so I could see how Dixie ranks before the UHSAA releases their official RPI standings.

The important part of my introduction is that for my job I am a technology consultant, which means I work in excel a lot.  The idea of trying to recreate the RPI standings in excel seemed like a fun idea.  The information that went into my work can all be found on this page.  The document is pretty thorough, and I only had to make two assumptions so far.  The first is that out of state opponents will be categorized as "Out of state opponents for sports with 6 Classes" or "Out of state opponents for sports with 5 Classes", even if they have fewer classes (Nevada and Hawaii), or more (you could argue California has 7).  The second assumption is that you can't calculate your opponents winning percentage (OWP) or opponents' opponents winning percentage (OOWP) until you have played the opponent.  If that is confusing, let me use an example with Dixie.  Dixie has currently played Springville and Roy, and has yet to play Pine View.  My model will not include Pine View's information into Dixie's score until after the Dixie vs Pine View game is over.

I should also mention that my model hasn't been tested against the official RPI standings (they don't come out for a month), but I am confident in the logic.  If I am off, it won't be by much.  My biggest concerns are about out of state opponents, how they are scored (as I mentioned in the previous paragraph), and tracking the opponents of the out of state opponents.  Unfortunately, tracking the opponents of out of state opponents (about 200 teams) is a very manual process -- my web scraping abilities are only in excel, and the excel web scraping doesn't work well with desnews.com or maxpreps.com.  So if you are hoping I will do this for some other sports, let me just say it won't be happening.

Thanks for your patience, and now to the reason you are here.

6A


Ranking Team MWP OWP OOWP RPI
1 Skyridge 0.351228748 0.4 0.1 0.851229
2 Bingham 0.4 0.2 0.2 0.8
3 Pleasant Grove 0.4 0.4 0 0.8
4 Kearns 0.373913035 0.2 0.215 0.788913
5 American Fork 0.373913035 0.2 0.1 0.673913
6 Northridge 0.2 0.46 0 0.66
7 East 0.2 0.407857 0 0.607857
8 Weber 0.2 0.4 0 0.6
9 Hunter 0.4 0 0.2 0.6
10 Corner Canyon 0.4 0.2 0 0.6
11 Layton 0.2 0.23 0.1 0.53
12 Fremont 0 0.43 0.1 0.53
13 Westlake 0 0.43 0.1 0.53
14 Syracuse 0.2 0.2 0.1 0.5
15 Taylorsville 0 0.4 0.1 0.5
16 West 0.4 0 0.1 0.5
17 Copper Hills 0.4 0 0.1 0.5
18 Riverton 0.2 0.2 0.1 0.5
19 Lone Peak 0.4 0 0.1 0.5
20 Clearfield 0 0.4 0 0.4
21 Cyprus 0 0.4 0 0.4
22 Herriman 0.2 0.2 0 0.4
23 Jordan 0 0.4 0 0.4
24 Roy 0.2 0 0.1 0.3
25 Granger 0 0.2 0.1 0.3
26 Davis 0 0 0.1 0.1
27 West Jordan 0 0 0.1 0.1

5A




Ranking Team MWP OWP OOWP RPI
1 Woods Cross 0.460000023 0.2 0.215 0.875
2 Springville 0.4 0.2645 0.1 0.7645
3 Brighton 0.460000023 0.2 0.1 0.76
4 Farmington 0.430000011 0.2 0.1 0.73
5 Murray 0.430000011 0 0.215 0.645
6 Timpanogos 0 0.43 0.215 0.645
7 Orem 0 0.4 0.2 0.6
8 Box Elder 0.2 0.373913 0 0.573913
9 Provo 0.430000011 0 0.115 0.545
10 Salem Hills 0.430000011 0 0.115 0.545
11 Alta 0.2 0.151229 0.186957 0.538185
12 Olympus 0.430000011 0 0.1 0.53
13 Mountain Ridge 0 0.43 0.1 0.53
14 Payson 0.2 0.23 0.1 0.53
15 Wasatch 0.2 0.2 0.115 0.515
16 Highland 0.373913068 0 0.13225 0.506163
17 Lehi 0.2 0.173913 0.13225 0.506163
18 Timpview 0 0.4 0.1 0.5
19 Maple Mountain 0.2 0.2 0.1 0.5
20 Skyline 0 0.2 0.24725 0.44725
21 Bonneville 0 0.4 0 0.4
22 Bountiful 0.2 0 0.2 0.4
23 Viewmont 0.230000011 0 0.115 0.345
24 Spanish Fork 0.2 0 0.115 0.315
25 Cottonwood 0 0.2 0 0.2
26 Hillcrest 0 0.2 0 0.2

4A




Ranking Team MWP OWP OOWP RPI
1 Mountain View 0.429999967 0.23 0.115 0.775
2 Sky View 0.2 0.4 0.1 0.7
3 Dixie 0.264499975 0.4 0 0.6645
4 Ridgeline 0.464499975 0 0.2 0.6645
5 Canyon View 0 0.46 0.2 0.66
6 Cedar 0.229999967 0.43 0 0.66
7 Park City 0.429999967 0.2 0 0.63
8 Hurricane 0 0.46 0.115 0.575
9 Green Canyon 0.429999967 0 0.1 0.53
10 Ogden 0.2 0.2 0.115 0.515
11 Pine View 0 0.4645 0 0.4645
12 Crimson Cliffs 0 0.2645 0.186957 0.451456
13 Stansbury 0.2 0 0.215 0.415
14 Bear River 0.2 0 0.201957 0.401957
15 Mountain Crest 0 0.23 0.1 0.33
16 Tooele 0 0.23 0.1 0.33
17 Ben Lomond 0 0.2 0.115 0.315
18 Desert Hills 0 0.173913 0.075614 0.249527
19 Logan 0 0.23 0 0.23
20 Uintah 0 0 0.23 0.23
21 Snow Canyon 0.203928344 0 0 0.203928
22 Cedar Valley 0 0 0.1 0.1

3A


Ranking Team MWP OWP OOWP RPI
1 Juab 0.46 0.23 0.215 0.905
2 Richfield 0.4 0.46 0 0.86
3 Delta 0.2 0.4645 0.13225 0.79675
4 North Sanpete 0.4 0.23 0.115 0.745
5 South Summit 0.2 0.4 0.1 0.7
6 Manti 0.494499962 0.2 0 0.6945
7 Union 0.23 0.46 0 0.69
8 Grand County 0 0.46 0.2 0.66
9 Morgan 0.43 0.2 0 0.63
10 San Juan 0.2 0.2645 0.13225 0.59675
11 Emery 0 0.43 0.115 0.545
12 Grantsville 0.23 0.2 0.115 0.545
13 Carbon 0 0.46 0 0.46
14 American Leadership Academy 0.43 0 0 0.43
15 Summit Academy 0.264499962 0 0.1 0.3645
16 Judge Memorial 0 0.23 0.1 0.33
17 Juan Diego 0 0.23 0.1 0.33
18 South Sevier 0 0 0.1 0.1
2A

Ranking Team MWP OWP OOWP RPI
1 Milford 0.43 0.4 0.1 0.93
2 Gunnison Valley 0.2 0.46 0.2 0.86
3 Duchesne 0.4 0.43 0 0.83
4 Beaver 0.4945 0.2 0.1 0.7945
5 Millard 0.46 0 0.1 0.56
6 Enterprise 0.23 0.2 0.1 0.53
7 Parowan 0.2 0.2 0.115 0.515
8 Layton Christian 0.2 0 0.2 0.4
9 North Summit 0.2 0 0.2 0.4
10 Kanab 0.4 0 0 0.4
11 North Sevier 0.23 0 0 0.23
12 Altamont 0 0 0 0
13 Monticello 0 0 0 0
14 Rich 0 0 0 0


Part of the reason the UHSAA won't release their numbers for another month is that two games worth of data isn't much to go on, and could lead to overreaction.  So don't worry if your team doesn't have a high score.

I want to address some misconceptions I heard today while I was watching the Dixie game online.  The first is that the margin of victory has no effect on the RPI score.  So if a team chooses to take a knee near the endzone, they won't be punished for not running up the score.  The second thing is that there aren't bad losses when it comes to losing to a lower class.  For example, 6A Roy lost to 4A Dixie.  Their winning percentage tonight was 0.  They would also have a winning percentage of 0 if they lost to a 6A team or a 2A team.  So tonight's loss wasn't a bad loss in that aspect.  This would be a bad loss for Roy if Dixie lost the rest of their games this season, but that has nothing to do with classification.

This does lead to one other thing I want to mention, and that's about teams playing down.  If you haven't read the UHSAA RPI link from before, let me mention how playing a lower class works.  Each class is 15% apart for their game score.  So in the case of Roy and Dixie, they are two classes apart, so Dixie's win was worth an extra ~30%.  However, if Roy had won they would not have incurred a ~30% penalty, because it was their first game down.  

UHSAA allows each team to play (and win) down one time without the class penalty, which I actually like because it encourages the 6A teams to still play down at least once a year.  Once you win a second game against a lower opponent, that's when your wins are penalized.  I will continue using Roy as an example.  Let's say they played Crimson Cliffs (another 4A school) next week.  Losing to Dixie didn't incur the penalty, so they could beat Crimson Cliffs next week, and it would count the same as a win against a 6A team.  However, if Roy had beat Dixie (again, no penalty for the first win), and then beat Crimson Cliffs, their win would be worth ~30% less than a win against a 6A team.

So going forward, if a team is thinking of playing down once a year they don't need to worry about being penalized.  If a team wants to play down twice in a year, they should make sure to play the lower class opponent first.  If a 6A team beat a 5A team and then a 2A team, they would receive no penalty for the first win and a 43% penalty for the second win.  If the order was switched, and they beat the 2A team and then the 5A team, they would receive no penalty for the first win and only a 15% penalty for the second one. 

The other thing that is key to playing down is to beat good opponents as that account for 40% of the RPI score.  Currently, Juan Diego is near the bottom in 3A, but we all know that's not going to last all season.  By the end of the year they will have a good score, and the teams who have beaten them so far (both 4A schools) will get credit for beating a 4A team (even though Juan Diego is 3A), and will get a good OWP and OOWP from Juan Diego by the end of the season.  This season Juan Diego plays four opponents from higher classifications, which is a trend that will likely continue.  Given their location to bigger schools, their history of winning, and their lower classification, all of the bigger schools in the area who are worried about securing a bye week in the playoffs would be smart to try and get Juan Diego on the schedule as their first (or only) game against a team from a lower classification.

Saturday, August 17, 2019

2019 Draft Review

We had our draft today, and as tradition dictates, I found some post-draft rankings that I will put up here.  Usually, they are pretty good rankings, but this year they are terrible.  Not sure why they were so off this year.

The rankings according to Footballguys from high to low.

Tyler -  http://subscribers.footballguys.com/rate-my-team/team.php?team=3pR2kPyj98VE
Matt - http://subscribers.footballguys.com/rate-my-team/team.php?team=8j4Ww43465ts
Ren - http://subscribers.footballguys.com/rate-my-team/team.php?team=BH263aT3ED5Q
Tommy - http://subscribers.footballguys.com/rate-my-team/team.php?team=eZy2H756P4W3
Brady - http://subscribers.footballguys.com/rate-my-team/team.php?team=3IBjU2h77td8
TJ - http://subscribers.footballguys.com/rate-my-team/team.php?team=2M7jma5CLv98
Rob -  http://subscribers.footballguys.com/rate-my-team/team.php?team=9C8S3b2e9rSw
Brandon - http://subscribers.footballguys.com/rate-my-team/team.php?team=web69q8625Ac
Jordan - http://subscribers.footballguys.com/rate-my-team/team.php?team=85366mtkk4D7
Kyle - http://subscribers.footballguys.com/rate-my-team/team.php?team=296eSbA4HCw7
Trevor - http://subscribers.footballguys.com/rate-my-team/team.php?team=2y57XhwQR2ix
Skyler - http://subscribers.footballguys.com/rate-my-team/team.php?team=43Be3s95cD82

Like I said, they are off this year, even at 4for4.  Tyler is usually in last and I am near the top.  I must have made some typos.  Just in case the names aren't clear, the order is Rob, Tyler, Brandon, Kyle, TJ, Ren, Matt, Brady, Jordan, Skyler, Tommy and Trevor.  The rankings clearly have a bias against me and Trevor.



FantasyPros also has a bug where they like Trevor's team, but leave mine in the dust.  I thought they would have fixed the issue with both of us, but apparently not.  Hopefully, you now know whose team is whose, though there were two name changes (Brandon and Kyle).


This exercise wasn't really informative, but maybe some of you were entertained.  Best of luck to everyone this season.