Fantasy Team Optimization Using Linear Solver

For fantasy baseball drafts, leagues have a choice between a traditional draft in which teams choose players in order, or an auction draft so that each team can bid on every player. With a $260 budget, the goal is to maximize the number of valuable players while choosing a player at every necessary position.

Regardless of whether you calculated values or took them from somewhere (for example, baseballmonster.com), let’s say you have estimated dollar values and the average price for each player. How do you choose who to target?

To get a good approximation, create a spreadsheet with a row for each: player, his position, his value, his market price, and a blank row. The blank row is a representation of whether the player goes on your team or not. So the only numbers in it are binary, 0 and 1.  After that the steps are, well, it might be easier to take a look at the spreadsheet.

player value vs market

Set it up similarly so that you can play with adding/dropping players from your team. Then you can set up solver with the conditions as shown below. They ensure that you

1) maximize your estimated dollar value

2)choose the players on your team to do so

3) choose only the same number of players at each position as indicated.

FANTASY solver

Looks like I can get $480 of estimated value on a budget of just $260.

One caveat to note is that this does not account for UTIL players which can be from any position. This assumes a  OF spots, there are decent values there for cheap. I also set arbitrary #s for the pitchers. I prefer having 4 closers to lock up saves usually, but may go for 5 if it doesn’t sacrifice other position depth.

Remember, follow solver’s optimization only as a guide, you should be flexible given that each draft will diverge from the average draft in many different ways. Get your targets early on and save money for when your opponents have run out of money. Cheers.

This entry was posted in fantasy baseball. Bookmark the permalink.

Leave a comment