|
APBRmetrics The statistical revolution will not be televised.
|
View previous topic :: View next topic |
Author |
Message |
gravityandlevity
Joined: 03 Aug 2009 Posts: 24
|
Posted: Tue Sep 28, 2010 6:17 pm Post subject: What does it mean to "simulate" a basketball game? |
|
|
I have a painfully naive question, so please forgive my ignorance. But I don't understand what it means to "simulate" a basketball game. If this question has already been covered somewhere else on this forum, feel free to just send me a link and ignore everything below.
It's actually probably more correct to say that I don't understand why one needs to simulate a basketball game. In my mind, "simulating" means "repeatedly drawing random numbers from a given probability density function" (PDF). But, as far as I can tell, the PDF must be part of the input to the simulation (you, the programmer, must tell the computer how likely different things are). So why not just work analytically with the PDF's? What does the simulation tell you that you didn't know at the time of writing it?
To be concrete, I can imagine a simple "simulation" of a game between the Timberwolves and the Lakers. I might know (or hypothesize) that the Timberwolves' scoring is a Gaussian distribution with mean 90 and standard deviation 5, and that the Lakers scoring is also Gaussian with mean 100 and standard deviation 7. I could then "simulate" the game by randomly drawing from both distributions and seeing how many times the Timberwolves had the larger score. But this doesn't tell me anything I didn't know already: I could have just calculated the probability of the T-Wolves winning from what I assumed about the PDFs at the beginning. (In this simple example, it's just over 12%).
Am I misunderstanding something?
Or is it just a matter of terrible analytical complexity when you have a very detailed description of what's relevant in a basketball game? I can imagine that if you're trying to describe the net outcome of 100 individual possessions, then analytically you would have to chain together 100 conditional PDFs. So maybe that's too unwieldy to work with, as opposed to just drawing lots of random numbers in succession. Is that the basic idea?
Thanks for your help. |
|
Back to top |
|
|
Ryan J. Parker
Joined: 23 Mar 2007 Posts: 711 Location: Raleigh, NC
|
Posted: Tue Sep 28, 2010 6:34 pm Post subject: Re: What does it mean to "simulate" a basketball g |
|
|
gravityandlevity wrote: | Or is it just a matter of terrible analytical complexity when you have a very detailed description of what's relevant in a basketball game? I can imagine that if you're trying to describe the net outcome of 100 individual possessions, then analytically you would have to chain together 100 conditional PDFs. So maybe that's too unwieldy to work with, as opposed to just drawing lots of random numbers in succession. Is that the basic idea? |
Instead of saying something wrong, it's probably best to just refer you to a good Monte Carlo methods text (or consider why you might want to simulate in other problems, like the stuff in this Wiki page). But the quote above is relevant. _________________ I am a basketball geek. |
|
Back to top |
|
|
gravityandlevity
Joined: 03 Aug 2009 Posts: 24
|
Posted: Tue Sep 28, 2010 6:48 pm Post subject: |
|
|
Thanks Ryan.
I'm actually pretty familiar with Monte Carlo methods. Usually, Monte Carlo calculations are used when the "set of all possible outcomes" is so enormously large that you have no hope of evaluating them all analytically. Is that the motivation for using them in basketball? (Naively, it would seem to me that a basketball game is much more limited in its possibilities than, say, the configuration of a large galaxy).
Successful Monte Carlo calculations also usually have some strong heuristic built into them (in my experience). For example, there might be a rule to preferentially explore configurations with lower energy (like the Metropolis algorithm ). Otherwise, exploring the set of all possibilities can be unwieldy even as a process of pulling random numbers.
Is there some equivalent "rule of thumb" for simulations of basketball games? |
|
Back to top |
|
|
Ryan J. Parker
Joined: 23 Mar 2007 Posts: 711 Location: Raleigh, NC
|
Posted: Tue Sep 28, 2010 6:54 pm Post subject: |
|
|
I thought you might be.
So basically I view the game as probably most of the members of this forum do: complex enough to be unwieldly for an analytical solution.
But if you come up with something better, do let me know. _________________ I am a basketball geek. |
|
Back to top |
|
|
bchaikin
Joined: 27 Jan 2005 Posts: 689 Location: cleveland, ohio
|
Posted: Tue Sep 28, 2010 6:56 pm Post subject: |
|
|
I don't understand why one needs to simulate a basketball game...
for the purpose of performing what-if scenarios...
What does the simulation tell you that you didn't know...?
the outcome of a potential real-life scenario such you don't have to actually perform that real-life scenario...
To be concrete, I can imagine a simple "simulation" of a game between...
what if one of the team's star players, who had played in all their games up to the point of you running your sim, slips on a bar of soap and is out before that next game you are about to simulate?...
as opposed to just drawing lots of random numbers in succession...
random number generators work great...
it would seem to me that a basketball game is much more limited in its possibilities than, say, the configuration of a large galaxy...
correct - your typical large spiral galaxy has upwards of 100-500 billion stars if not more, with large elliptical galaxies even more. there are far fewer variables in nba hoops... |
|
Back to top |
|
|
Ed Küpfer
Joined: 30 Dec 2004 Posts: 785 Location: Toronto
|
Posted: Tue Sep 28, 2010 7:32 pm Post subject: Re: What does it mean to "simulate" a basketball g |
|
|
gravityandlevity wrote: | I can imagine that if you're trying to describe the net outcome of 100 individual possessions, then analytically you would have to chain together 100 conditional PDFs. So maybe that's too unwieldy to work with, as opposed to just drawing lots of random numbers in succession. Is that the basic idea? |
Pretty much this. _________________ ed |
|
Back to top |
|
|
gravityandlevity
Joined: 03 Aug 2009 Posts: 24
|
Posted: Tue Sep 28, 2010 9:02 pm Post subject: |
|
|
Thanks everyone. I'm glad to know that I roughly understand the problem.
My curiosity turns now to what, exactly, gets simulated. Bob, I particularly appreciate you taking time to answer questions, since I understand you're a serious expert in the field.
I understand your point about the power of simulating "what if" scenarios, but one's ability to predict such scenarios depends on knowledge of various statistical distributions describing the player and the plays. Without giving away any trade secrets, can you give me a sense of what sort of assumptions (hopefully justified by data) have to go into "simulating a basketball game"?
When people say that they're "simulating a game", what do they generally mean? Are they simulating each individual possession? Are they simulating each individual shot, rebound, foul, etc? |
|
Back to top |
|
|
bchaikin
Joined: 27 Jan 2005 Posts: 689 Location: cleveland, ohio
|
Posted: Tue Sep 28, 2010 10:10 pm Post subject: |
|
|
can you give me a sense of what sort of assumptions (hopefully justified by data)...
hopefully...
When people say that they're "simulating a game", what do they generally mean? Are they simulating each individual possession? Are they simulating each individual shot, rebound, foul, etc?
i can't speak for people, but i simulate every shot, pass that has an opportunity to be an assist, FT, foul (both aosf and nsf), rebound, steal, turnover, blocked shot, etc based on player's real life abilities. basically every player touch other than passes that do not have an opportunity to be an assist (backcourt passes without any defense nearby, handoffs, basically any pass where had the player receiving the pass shot and scored an assist would not have been awarded)...
the sim does not (yet) account for technicals, double fouls, things that occur only rarely (but does account for team turnovers)...
there's an old thread here entitled "shouldn't possession usage count all potential assists" that goes into some of the thinking behind the sim... |
|
Back to top |
|
|
acollard
Joined: 22 Sep 2010 Posts: 56 Location: MA
|
Posted: Tue Sep 28, 2010 10:11 pm Post subject: |
|
|
Speaking of simulating a basketball game, occasionally when I am reading an old APBR site or article, I see a reference to a free download of the B-BALL simulation software. However, I notice that it is no longer available from bballsports.com. Is it still available anywhere on the internet, for free or otherwise? I think it would be exceedingly fun to play around with. |
|
Back to top |
|
|
bchaikin
Joined: 27 Jan 2005 Posts: 689 Location: cleveland, ohio
|
Posted: Tue Sep 28, 2010 10:17 pm Post subject: |
|
|
However, I notice that it is no longer available from bballsports.com...
correct...
Is it still available anywhere on the internet, for free or otherwise?
there was an old DOS version available at the old yahoo APBR or APBR analysis site in the files section, but i don't know if that is still there... |
|
Back to top |
|
|
haralabob
Joined: 11 Apr 2007 Posts: 26
|
Posted: Wed Sep 29, 2010 6:20 pm Post subject: Re: What does it mean to "simulate" a basketball g |
|
|
gravityandlevity wrote: |
It's actually probably more correct to say that I don't understand why one needs to simulate a basketball game. In my mind, "simulating" means "repeatedly drawing random numbers from a given probability density function" (PDF). But, as far as I can tell, the PDF must be part of the input to the simulation (you, the programmer, must tell the computer how likely different things are). So why not just work analytically with the PDF's? What does the simulation tell you that you didn't know at the time of writing it?
To be concrete, I can imagine a simple "simulation" of a game between the Timberwolves and the Lakers. I might know (or hypothesize) that the Timberwolves' scoring is a Gaussian distribution with mean 90 and standard deviation 5, and that the Lakers scoring is also Gaussian with mean 100 and standard deviation 7. I could then "simulate" the game by randomly drawing from both distributions and seeing how many times the Timberwolves had the larger score. But this doesn't tell me anything I didn't know already: I could have just calculated the probability of the T-Wolves winning from what I assumed about the PDFs at the beginning. (In this simple example, it's just over 12%).
Thanks for your help. |
In addition to performing what if scenarios (trades an acquisitions) another benefit to proper simulation is that it should tell you WHY one team is better than the other team (rebounding etc). |
|
Back to top |
|
|
mtamada
Joined: 28 Jan 2005 Posts: 377
|
Posted: Wed Sep 29, 2010 10:28 pm Post subject: Re: What does it mean to "simulate" a basketball g |
|
|
gravityandlevity wrote: | To be concrete, I can imagine a simple "simulation" of a game between the Timberwolves and the Lakers. I might know (or hypothesize) that the Timberwolves' scoring is a Gaussian distribution with mean 90 and standard deviation 5, and that the Lakers scoring is also Gaussian with mean 100 and standard deviation 7. I could then "simulate" the game by randomly drawing from both distributions and seeing how many times the Timberwolves had the larger score. But this doesn't tell me anything I didn't know already: I could have just calculated the probability of the T-Wolves winning from what I assumed about the PDFs at the beginning. (In this simple example, it's just over 12%). |
That's pretty much what DeanO was doing with his "bell curve" model of basketball games many years ago (although he added a covariance term, not just mean and std dev). And sure, that stuff can be calculated analytically.
But that was simply DeanO's way of upgrading the Pythagorean formula for team wins and losses. It wasn't a basketball simulation.
Because a deep analysis, or for that matter a shallow analysis, of basketball games and basketball teams looks at more than just wins and losses. It looks at what were the shooting percentages, the rebounding percentages, etc. -- and more importantly, it does this for each of the individual players, not just the teams. So if say 20 players total played in a game, each with stats for shooting, assists, blocks, etc. -- well you can start to see the complexity.
One could of course bring over the Gaussian/bell curve idea and model each of those 20 players with Gaussian distributions (or any other PDF you like) for their shooting, assists, etc. But what you've then got is a bunch of random number generators, not a basketball simulation. Because you haven't simulated any of the reality of a basketball game. E.g. a missed shot almost inevitably leads to a rebound; if the shooter was your teammate, then that rebound can only be an offensive rebound and never a defensive rebound; your blocked shots will depend on how many FGAs the other team attempts; and a zillion more examples of how one basketball event is dependent on the preceding basketball event.
Quite a contrast to the standard statistical assumptions of independence, or of interactions which are simply modelled with covariance terms.
The problem with simulations, and for that matter all existing (that I know of) basketball models is that it is extremely difficult to come up with a realistic model of what does happen in a basketball game. It's easy enough to take a player's shooting%, TO%, OffRebd%, etc. and stick them into a computer program with 9 other players' percentages and calculate the resulting probabilities and simulate a game (or several thousands of games, in doing a Monte Carlo simulation).
But is it valid to assume that those percentages will stay the same, throughout a game (or season), when a player's opponents and teammates are constantly changing?
Will David Robinson have the same Rebd% when Tim Duncan gets added to the Spurs? Will Norm Nixon have the same Asst% when Magic Johnson gets added to the Lakers? Will Dwayne Wade have the same FG% (and for that matter the same shot selection) when LeBron and Bosh get added to the Heat? Will Amare Stoudemire's TS% remain the same without Nash as a teammate, and on a less efficient (though still fast-paced) offense? Will a player's efficiency remain the same when his usage goes up?
If basketball were played 1-on-1, it could be modeled quite simply, using (suitably adjusted) Gaussian or bell curve models. But 1-on-1 is a lot like Isaac Newton's two-body gravitational model.
Basketball in reality is a 10-body problem -- except solar systems don't have substitutes or fatigue, and basketball teams do. And the bodies in a a solar system follow constant rules of motion, but basketball players change their moves depending on what the other bodies are doing (and equally important, what they are capable of doing, e.g. you're more likely to settle for the jumper instead of going for the layin, if Yao Ming is lurking in the lane). And we don't know how they change their moves.
Because of these obstacles and unknowns, I remain sceptical of the usefulness of basketball simulations, so in that sense your question is apt. But those same obstacles and unknowns hinder all of our attempts to model basketball.
That is why to me the Holy Grail of basketball analysis has always been, and remains, figuring out how players' behavior (and their resulting stats) vary when their context changes: mainly their teammates, but also their opponents, and also coaching strategies (7 seconds or less, Thibodeau defensive schemes, etc.) |
|
Back to top |
|
|
Kevin Pelton Site Admin
Joined: 30 Dec 2004 Posts: 979 Location: Seattle
|
Posted: Wed Sep 29, 2010 10:34 pm Post subject: Re: What does it mean to "simulate" a basketball g |
|
|
mtamada wrote: | Basketball in reality is a 10-body problem -- except solar systems don't have substitutes or fatigue, and basketball teams do. And the bodies in a a solar system follow constant rules of motion, but basketball players change their moves depending on what the other bodies are doing (and equally important, what they are capable of doing, e.g. you're more likely to settle for the jumper instead of going for the layin, if Yao Ming is lurking in the lane). And we don't know how they change their moves. |
This randomly reminded me of one of the most interesting pieces of basketball analysis I recall seeing. It described an offense in gravitational terms.
The ball has a certain weight because defenses have to pay attention to it. Shooters have weight on the perimeter because they keep their defenses honest. Meanwhile, non-shooters have high gravity around the rim because of the possibility of putbacks, but it drops near zero when they move out of the paint. I loved that way of thinking about players. I can't remember where I read it, however. |
|
Back to top |
|
|
bchaikin
Joined: 27 Jan 2005 Posts: 689 Location: cleveland, ohio
|
Posted: Wed Sep 29, 2010 11:24 pm Post subject: |
|
|
...those same obstacles and unknowns hinder all of our attempts to model basketball...
not quite all.... |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|