Header Image - PICK LIKE THE PROS

bpender

Why Use a Lineup Optimizer?

Uncategorized by bpender 0 Comments

We first started experimenting with DFS optimization just a few years after Fanduel, and thus Daily Fantasy Sports, hit the scene. The original question was simple, but hard to solve:

Given a salary cap, how can I squeeze the most points possible into one lineup?

This problem required some thought, but before sinking our teeth into this math problem we decided to take a step back and ask a different question:

Does optimization really matter?

By now I’m sure you aren’t surprised to hear us say a resounding YES. Lineup optimizers are a foundational tool for successful daily fantasy players. But how did we arrive at this conclusion?

Enter the Knapsack Problem.

When studying algorithm development, the Knapsack Problem is a well known & well taught mathematics / computer science problem. It is considered a ‘classical algorithm’. The original knapsack problem goes like this: You have a backpack (knapsack) with a certain weight capacity and several objects to choose from. Each object has a value and a weight. The goal is to fill your backpack with the right combination of items to maximize the total value, without exceeding the weight limit.

In Daily Fantasy the weight limit is your salary cap, the weight of each player is their salary, and the value of each player is their projected point value.

nba-knapsack.jpg
This is what a lineup optimizer does.

The DFS lineup optimization problem is very similar but with a few key differences:

  1. In DFS, you must select items from defined categories (player positions).
  2. In DFS, we aren’t entirely sure of the values of the items (projected points).
  3. In DFS, there are many rules controlling your final lineup (think stacking rules and the like).

Lets talk about the second bullet, the unknown value of each player. Now if we know each item’s value with certainty, then we know exactly what we are getting in the end. But in DFS, each player’s value is estimated. Their value is their projected fantasy point value.

So does lineup optimization help us if we aren’t 100% sure about each player’s value? Does a lineup optimizer benefit me at all?

Absolutely.

We optimize our lives every day using estimations. When you use Google maps for directions the system uses an algorithm to determine the best path given many uncertain values. Namely, traffic. We cannot always predict traffic with 100% accuracy, but we can make some damn good guesses given historical data. Has Google ever sent you straight into a traffic jam? Yes. Do you throw your cell phone out the window and say I’m doing this manually from now on! Of course not.

(The thought may have crossed your mind but we all know that using an algorithm, even if based on estimations, is still better than using just our poor ol’ human brains.)

Just like traffic, in sports there are unpredictable events. Injuries, weather, emotions, a bird flying directly into a 99mph pitch, and more. But by using historical data and incorporating the variables of that day, we can come up with some very good predicted values for each player. This is what a great daily fantasy sports projector does. And if we optimize those projections we can create a significant competitive advantage. In daily fantasy sports, finding an edge when constructing lineups is paramount.

bird-optimizer.gif
Lineup Lab does not backtest for bird strikes.

Great projections need great optimization, and vice versa. This is why we decided to partner with the best projection providers in the industry instead of generating projections ourselves. Great projections require great attention to detail and the guys who do it best, love their respective sports. (Like Razzball for MLB, 4for4 for NFL, and DFSR for NBA)

Think about the variables that go into MLB projections (wind, pitcher stats, hitter stats, park factors, umpire bias, lefty/righty matchups, platoon splits, etc). Are these components even remotely similar to the ones that go into NFL projections? Of course not! Unless the baseball guy also lives and breathes football (and yes, those guys exist!) he’s going to be far better in one sport vs the other. Honda and Ford both make cars, but which shop are you going to take your Honda to? (cheesy, I know… but accurate!)

The same is very true in DFS. We let our projection providers focus on the sport that they love and know, while we focus on the lineup optimization algorithms. Together, this is how you create a top-notch daily fantasy lineup optimizer for ALL sports.

We’re not quite finished! Lets look at the final math to see why a daily fantasy lineup optimizer is important.

Take me back to the Lineup Lab homepage -> https://www.lineuplab.com

Reduce Risk and Boost DFS Tournament Winnings with "Limits"

Uncategorized by bpender 0 Comments

Often times, daily fantasy lineup optimizers will generate results that are overly dominated by certain players. If one of those players has a bad day, many of your lineups can quickly go bust. See how to boost your bankroll & reduce player-exposure using the ‘limits’ feature. One of the most helpful but underused features on Lineup Lab!

You can find the limits field for each player on the right hand side of the optimizer. This is what it looks like:

limits-1.png

Essentially what this does is limit the number of results that a player can show up in. So if we put a 5 here, that player would show up in no more than 5 results. The 6th result would use a different player. Easy! But lets go through a real example to show you some tips and tricks.

First, lets run a default calculation to see what our results look like today.

limits-2.png

Once I have my results, I am going to click “Download” and then click “Importable”.

limits-3.png

This is the csv that we would normally take to Fanduel or Draftkings to easily import multiple lineups. But more importantly, we can use it to quickly see if any of our positions are being dominated by a certain player.

limits-4.png

Yep, clearly a few players are dominating certain positions. Today is a Colorado day, which would explain some of these players. I want to mix things up a bit and reduce my exposure to some of these players. So lets click the blue ‘Go Back’ button.

limits-5.png

If we want to limit Lance McCullers to 5 lineups, we would simply enter a ‘5’ in his limit field.

limits-6.png

But since pitching is so important, I am going to take this a step further and show you what I would typically do. First, I am going to remove all of the pitchers I am not interested in today, and then apply a limit to pitchers I AM interested in. So lets say I want a mix of these 3 pitchers:

limits-8.png

As you can see, I applied a limit to each of them. This is how I want these players to be disbursed across my 10 results.
So now, if I take a look at my results, I can see that the system followed my rules for the pitcher position.

limits-9.png

And thats really it! If we want to drill down into other positions and limit other players, we can easily do so by just entering a number in their limit field.

If we are ready to submit these, we can hop over to our favorite Fanduel or Draftkings tournament and upload our CSV. For Fanduel, click on the "Upload Lineups from CSV" link.

limits-10.png

Then just select ‘choose file’ and find the csv you downloaded. Once you click upload, your lineups will be submitted, making life much easier!

limits-11.png

There you have it. You are now ready to generate optimized but diverse Fanduel and Draftkings lineups using the "Limits" feature!

Here is a short 4 minute video explaining the above:

Take me back to the Lineup Lab homepage -> https://www.lineuplab.com