Jump to content

Championship on the Line

#1 Baylor and #3 Tennesseee face off this Saturday for the National Championship Game

We're Talkin' Playoffs?

The Titans and the Browns face each other in the Wildcard Round this week

Join Here

Need a team?

Firstly... welcome to the SimFBA! If you are new to the site, and need a team, make sure you head over to the new users section and view the available teams list. You will also be able to fill out your job application there! See you on the field, Coach!

Read more

Basketball Season is Upon Us

Sign up by September 2nd for our 4th Season of College Basketball and NBA!

Join Here

[2022] AI Recruiting


tsweezy

Recommended Posts

Hello all. As I am not a dev this is not a dev diary and will be much less organized, but this is a little run-down of how AI recruiting is going to work this season

 

AI teams will be recruiting from their own specific pool of players which can be viewed here:

AI Pool

 

There are currently X number of AI teams and semi-AI teams (schools which had users take over very late in the process and will be supplemented). These schools and how many recruits they can sign are found below:

link

 

To decide which recruits go to which school, I am simulating a 20-week recruiting cycle. This should also act as a proof of concept for eventually folding AI recruiting against users in for future seasons.

 

I broke down the task into 4 sub-tasks

  1. Selecting recruits to pursue and setting up the teams recruiting board
  2. Deciding how to allocate points among those players
  3. Updating point spends each week depending on other teams actions
  4. Updating point spends once recruits start signing.

 

Part 1: Setting up team boards

What recruits to offer?

The ideal here is to end up with (for each recruit in the pool) a numeric
overall recruit score (
ORS)
that determines how much each school should pursue each recruit. This score is comprised of 2 parts: how much value that recruit brings to the school, the Recruit Desired Score (
RDS) -
(obviously a 5-star is going to help the team more than a 1-star), and the Recruit Signing Likelihood (
RSL) -
How likely the team is to get that recruit (Cincinnati is much less likely to sign a 5-star from California with 2 non-matching affinities than a 1-star from Ohio with 2 matching affinity).

RDS Calculation:

  1. To quantify how much a recruit benefits a school we first convert the teams current roster to numeric overalls for the next 3 seasons. For example, a 2022 freshman B overall 5 star with A potential would be a
    44
    in 2022, a
    50
    in 2023, a
    56
    in 2024 and a
    62
    in 2025 (of course exact numbers will vary). We do this with every team roster, removing players as they graduate (so the 2025 roster will only have 2022 freshman projected out with 3 off-seasons of progression).

  2. For each recruit, project their overall for the 2023, 2024, and 2025 season. For example, a 5 star B overall A potential recruit would be
    44
    in 2023,
    50
    in 2024 and
    56
    in 2025

  3. For each school, recruit, year combination: find how much additional value that recruit would bring. For example, 2023 Alabama has a hypothetical 65 overall QB, but in 2024 only has a 42 and in 2025 a 45. A hypothetical QB recruit with 2023-2025 overalls of 44, 50, 56 would give Alabama 19 points of cumulative improvement so gets an RDS of 19. (0 is used as a lower bound so not being a starter as a freshman does not count against his RDS).

  4. These RDS scores for each recruit will be different between each school, and will be weighted further according to the table below (as a 5-point improvement at QB is probably more valuable to pursue than a 7 point improvement at P).
    Suggestions on table weighting is welcome

 

QBRBWROTOGCFBTEDTDEOLBILBCBFSSSPK
Weighting1.250.850.50.80.80.750.30.50.90.910.80.70.60.60.20.5

 

RSL calculation:

  1. To quantify how likely a school is to sign a recruit. This section is very loose and could be modified with test AI cycles if they focus too heavily on 1-stars or 5-stars. We start with each recruit at a baseline of 0

  2. The star value adds a base % likelihood. 5 stars add 2.5%, 4-stars = 7.5%, 3-stars = 15%, 2-stars = 17.5%, 1-stars = 20%

  3. Each matching affinity (excluding close to home) adds 20% chance

  4. Each affinity that doesn't match (including close to home): subtract 15% chance

  5. If close to home matches: add 25% chance

  6. If in state (without close to home): add 15% chance

  7. If in-region (without close to home) add 5% chance

  8. After combining all of that, each recruit will have a final percentage between -.275 and .8: the
    RSL

ORS = RDS*RSL

Now we have the overall recruit score for each recruit for each school, and each school should value each recruit differently. Future work could involve a 5% jiggler in this value for each school to further differentiate school targets.

How to distribute points?

Now that we have a nice score for what priority recruits have, we need to distribute the 50 points. There will be a different process for the initial 50 than each subsequent week so this will be for the initial point spreads.

When looking at team boards ordered by ORS, it winds up being filled with the same positions at the top (if a team really needs a QB, their top-10 ORS recruits will mostly be... QBs). Of course we don't want schools signing 7 QB recruits (@subsequent ). So for each position we calculate a Position Desire Score (
PDS
). the PDS is the average of the top-3 ORS values at each position and so gives a better look at which positions the AI really wants to recruit.

Based on PDS, divide up the 50 initial points by position so more points are allocated to positions with more high-scoring recruits. An example of what this looks like is shown below:

 

PositionInitial PointsOGILBOLBDECBCPFSRBOTSSFBDTKTEWRQB
Alabama50432820051017016001

 

After rounding, and capping the max at 20, this is a baseline of how many points will be spent for each position initially. (there is also an unrounded PDS that will be used later).

 

Each team will also have a strategy for how to allocate those position points (we don't necessarily want Alabama to spend all 17 on one SS target). Potential strategies are below:

 

All inAll points on top target
All plusAll points on top target, with 1 on backup 2nd target
Even 2Divide between top-2 targets
Even 3divide between top-3 targets (only possible for certain positions: RB, WR, OT, OG, DE, DT, OLB, ILB, CB, FS, SS)
ScatterDivide between 4 targets (only possible for certain positions: CB, WR, DE)

 

Now we have a longer table showing more specific point breakdowns

1667267469783.png.0381a0bdbc197660110cc72ca9005797.png

Lastly, we go through and apply those point spends to that teams #1, #2, etc.. at each position as ordered by the ORS

This concludes our Week 1 Recruiting strategy!

Part 2 will come when I have some more time to sit down and type, but will involve logic for how schools adjust point spends for weeks 2-20, but will utilize many of the same core PDS / ORS concepts.

 

As a special treat if you read all of this text, [here] is a link to a first pass at what week 1 AI submissions would look like before going back and tweaking anything. Let me know what your initial impressions are!

 

  • Like 3
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...