Optimal Positions for NBA Players

I was thinking about how one can use the NBA’s new SportVU system to figure out optimal positions for players on the court. One of the interesting things about the SportVU system is that it tracks player (x,y) coordinates on the court. Presumably, it also keeps track of whether or not a player located at (x,y) makes a shot or misses it. Let us denote a player making a shot by 1, and a player missing a shot by 0. Then, one essentially will have data in the form (x,y, \text{1/0}).

One can then use a logistic regression to determine the probability that a player at position (x,y) will make a shot:

p(x,y) = \frac{\exp\left(\beta_0 + \beta_1 x + \beta_2 y\right)}{1 +\exp\left(\beta_0 + \beta_1 x + \beta_2 y\right)}

The main idea is that the parameters \beta_0, \beta_1, \beta_2 uniquely characterize a given player’s probability of making a shot.

As a coaching staff from an offensive perspective, let us say we wish to position players as to say they have a very high probability of making a shot, let us say, for demonstration purposes 99%. This means we must solve the optimization problem:

\frac{\exp\left(\beta_0 + \beta_1 x + \beta_2 y\right)}{1 +\exp\left(\beta_0 + \beta_1 x + \beta_2 y\right)} = 0.99

\text{s.t. } 0 \leq x \leq 28, \quad 0 \leq y \leq 47

(The constraints are determined here by the x-y dimensions of a standard NBA court).

This has the following solutions:

x = \frac{-1. \beta _0-1. \beta _2 y+4.59512}{\beta _1}, \quad \frac{-1. \beta _0-28. \beta _1+4.59512}{\beta _2} \leq y

with the following conditions:

constraints1

One can also have:

x = \frac{-1. \beta _0-1. \beta _2 y+4.59512}{\beta _1}, \quad y \leq 47

with the following conditions:

constraints2

Another solution is:

x = \frac{-1. \beta _0-1. \beta _2 y+4.59512}{\beta _1}

with the following conditions:

constraints3

The fourth possible solution is:

x = \frac{-1. \beta _0-1. \beta _2 y+4.59512}{\beta _1}

with the following conditions:

constraints4

In practice, it should be noted, that it is typically unlikely to have a player that has a 99% probability of making a shot.

To put this example in more practical terms, I generated some random data (1000 points) for a player in terms of (x,y) coordinates and whether he made a shot from that distance or not. The following scatter plot shows the result of this simulation:

bballoptim5

In this plot, the red dots indicate a player has made a shot (a response of 1.0) from the (x,y) coordinates given, while a purple dot indicates a player has missed a shot from the (x,y) coordinates given (a response of 0.0).

Performing a logistic regression on this data, we obtain that \beta_0 = 0, \beta_1 = 0.00066876, \beta_2 = -0.00210949.

Using the equations above, we see that this player has a maximum probability of 58.7149 \% of making a shot from a location of (x,y) = (0,23), and a minimum probability of 38.45 \% of making a shot from a location of (x,y) = (28,0).

Optimal Strategies for the Clinton/Trump Debate

Consider modelling the Clinton/Trump debate via a static game in which each candidate can choose between two strategies: \{A,P\}, where A denotes predominantly “attacking” the other candidate, while P denotes predominantly discussing policy positions.

Further, let us consider the mixed strategies \sigma_1 = (p,1-p) for Clinton, and \sigma_2 = (q,1-q) for Trump. That is, Clinton predominantly attacks Trump with probability p, and Trump predominantly attacks Clinton with probability q.

Let us first deal with the general case of arbitrary payoffs, thus, generating the following payoff matrix:

\left( \begin{array}{cc} \{a,b\} & \{c,d\} \\ \{e,f\} & \{g,h\} \\ \end{array} \right)

That is, if Clinton attacks Trump and Trump attacks Clinton, the payoff to Clinton is a, while the payoff to Trump is b. If Clinton attacks Trump, and Trump ignores and discusses policy positions instead, the payoff to Clinton is c, while the payoff to trump is d. If Clinton discusses policy positions while Trump attacks, the payoff to Clinton is e, while the payoff to Trump is f, and if both candidates discuss policy positions instead of attacking each other, the payoff to them both will be g and h respectively.

With this information in hand, we can calculate the payoff to Clinton as:

\pi_c(\sigma_1, \sigma_2) = a p q+c p (1-q)+e (1-p) q+g (1-p) (1-q)

while the payoff to Trump is:

\pi_t(\sigma_1,\sigma_2) = b p q+d p (1-q)+f (1-p) q+h (1-p) (1-q)

With these payoff functions, we can compute each candidate’s best response to the other candidate by solving the following equations:

\hat{\sigma}_1 \in \text{argmax}_{\sigma_1} \pi_1(\sigma_1,\sigma_2)

\hat{\sigma}_{2} \in \text{argmax}_{\sigma_2} \pi_2(\sigma_1,\sigma_2)

where \hat{\sigma}_{1,2} indicates the best response strategy to a fixed strategy for the other player.

Solving these equations, we obtain the following:

If

latex-image-32
then,

Clinton’s best response is to choose p = 1/2.

If

latex-image-33

then,

Clinton’s best response is to choose  p = 1.

Otherwise, her best response is to choose p = 0.

 

While for Trump, the best responses are computed as follows:

If

latex-image-34

Trump’s best response is to choose q = 1/2.

If

latex-image-35

Trump’s best response is to choose q = 1.

Otherwise, Trump’s best response is to choose q = 0.

To demonstrate this, let us work out an example. Assume (for this example) that the payoffs for each candidate are to sway independent voters / voters that have not made up their minds. Further, let us assume that these voters are more interested in policy positions, and will take attacks negatively. Obviously, this is not necessarily true, and we have solved the general case above. We are just using the following payoff matrix for demonstration purposes:

\left( \begin{array}{cc} \{-1,-1\} & \{-1,1\} \\ \{1,-1\} & \{1,1\} \\ \end{array} \right)

 

Using the above equations, we see that if 0 \leq q \leq 1, Clinton’s best response is to choose p=0. While, if 0 \leq p \leq 1, Trump’s best response is to choose q =0. That is, no matter what Trump’s strategy is, it is always Clinton’s best response to discuss policy positions. No matter what Clinton’s strategy is, it is always Trump’s best response to discuss policy positions as well. The two candidates’ payoff functions take the following form:

payofffuncs

What this shows for example is that there is a Nash equilibrium of:

(\sigma_1^{*}, \sigma_{2}^{*}) = (0,0).

The expected payoffs for each candidate are evidently

\pi_c = \pi_t = 1.

Let us work out an another example. This time, assume that if Clinton attacks Trump, she receives a payoff of +1, while if Trump attacks Clinton, he receives a payoff of -1. While, if Clinton discusses policy, while being attacked by Trump, she receives a payoff of +1, while Trump receives a payoff of -1. On the other hand, if Trump discusses policy while being attacked by Clinton, he receives a payoff +1, while Clinton receives a payoff of -1. If Clinton discusses policy, while Trump discusses policy, she receives a payoff of +1, while Trump receives a payoff of -1. The payoff matrix is evidently:

\left( \begin{array}{cc} \{1,-1\} & \{1,-1\} \\ \{1,-1\} & \{1,-1\} \\ \end{array} \right)

In this case, if 0 \leq q \leq 1, then Clinton’s best response is to choose p = 1/2. While, if 0 \leq p \leq 1, then Trump’s best response is to choose q = 1/2. The Nash equilibrium is evidently

(\sigma_1^{*}, \sigma_{2}^{*}) = (1/2,1/2).

The expected payoffs for each candidate are evidently

\pi_c = 1, \pi_t = -1.

In this example,  even though it is the optimal strategy for each candidate to play a mixed strategy of 50% attack, 50% discuss policy, Clinton is expected to benefit, while Trump is expected to lose.

Let us also consider an example of where the audience is biased towards Trump. So, every time Trump attacks Clinton, he gains an additional point. Every time Trump discusses policy, while Clinton does the same he gains an additional point. While, if Clinton attacks while Trump discusses policy positions, she will lose a point, and he gains a point. Such a payoff matrix can be given by:

\left( \begin{array}{cc} \{1,2\} & \{-1,1\} \\ \{0,1\} & \{0,1\} \\ \end{array} \right)

Solving the equations above, we find that if q = 1/2, Clinton’s best response is to choose p =1/2. If 1/2 < q \leq 1, Clinton’s best response is to choose p = 1. Otherwise, her best response is to choose p = 0. On the other hand, if p = 0, Trump’s best response is to choose q = 1/2. While, if 0 < p \leq 1, Trump’s best response is to choose q = 1. Evidently, there is a single Nash equilibrium (as long as 1/2 < p \leq 1):

 (\sigma_1^{*}, \sigma_{2}^{*}) = (1,1).

Therefore, in this situation, it is each candidate’s best strategy to attack one another. It is interesting that even in an audience that is heavily biased towards Trump, Clinton’s best strategy is still to attack 100% of the time.

The interested reader is invited to experiment with different scenarios using the general results derived above.

Will Donald Trump’s Proposed Immigration Policies Curb Terrorism in The US?

In recent days, Donald Trump proposed yet another iteration of his immigration policy which is focused on “Keeping America Safe” as part of his plan to “Make America Great Again!”. In this latest iteration, in addition to suspending visas from countries with terrorist ties, he is also proposing introducing an ideological test for those entering the US. As you can see in the BBC article, he is also fond of holding up bar graphs of showing the number of refugees entering the US over a period of time, and somehow relates that to terrorist activities in the US, or at least, insinuates it.

Let’s look at the facts behind these proposals using the available data from 2005-2014. Specifically, we analyzed:

  1. The number of terrorist incidents per year from 2005-2014 from here (The Global Terrorism Database maintained by The University of Maryland)
  2. The Department of Homeland Security Yearbook of Immigration Statistics, available here . Specifically, we looked at Persons Obtaining Lawful Permanent Resident Status by Region and Country of Birth (2005-2014) and Refugee Arrivals by Region and Country of Nationality (2005-2014).

Given these datasets, we focused on countries/regions labeled as terrorist safe havens and state sponsors of terror based on the criteria outlined here .

We found the following.

First, looking at naturalized citizens, these computations yielded:

Country

Correlations

Percent of Variance Explained 

Afghanistan

0.61169

0.37416

Egypt

0.26597

0.07074

Indonesia

-0.66011

0.43574

Iran

-0.31944

0.10204

Iraq

0.26692

0.07125

Lebanon

-0.35645

0.12706

Libya

0.59748

0.35698

Malaysia

0.39481

0.15587

Mali

0.20195

0.04079

Pakistan

0.00513

0.00003

Phillipines

-0.79093

0.62557

Somalia

-0.40675

0.16544

Syria

0.62556

0.39132

Yemen

-0.11707

0.01371

In graphical form:

The highest correlations are 0.62556 and 0.61669 from Syria and Afghanistan respectively. The highest anti-correlations were from Indonesia and The Phillipines at -0.66011 and -0.79093 respectively. Certainly, none of the correlations exceed 0.65, which indicates that there could be some relationship between the number of naturalized citizens from these particular countries and the number of terrorist incidents, but, it is nowhere near conclusive. Further, looking at Syria, we see that the percentage of variance explained / coefficient of determination is 0.39132, which means that only about 39% of the variation in the number of terrorist incidents can be predicted from the relationship between where a naturalized citizen is born and the number of terrorist incidents in The United States.

Second, looking at refugees, these computations yielded:

Country

Correlations

Percent of Variance Explained

Afghanistan

0.59836

0.35803

Egypt

0.66657

0.44432

Iran

-0.29401

0.08644

Iraq

0.49295

0.24300

Pakistan

0.60343

0.36413

Somalia

0.14914

0.02224

Syria

0.56384

0.31792

Yemen

-0.35438

0.12558

Other

0.54109

0.29278

In graphical form:

We see that the highest correlations are from Egypt (0.6657), Pakistan (0.60343), and Afghanistan (0.59836). This indicates there is some mild correlation between refugees from these countries and the number of terrorist incidents in The United States, but it is nowhere near conclusive. Further, the coefficients of determination from Egypt and Syria are 0.44432 and 0.31792 respectively. This means that in the case of Syrian refugees for example, only 31.792% of the variation in terrorist incidents in the United States can be predicted from the relationship between a refugee’s country of origin and the number of terrorist incidents in The United States.

In conclusion, it is therefore unlikely that Donald Trump’s proposals would do anything to significantly curb the number of terrorist incidents in The United States. Further, repeatedly showing pictures like this:

at his rallies is doing nothing to address the issue at hand and is perhaps only serving as yet another fear tactic as has become all too common in his campaign thus far.

(Thanks to Hargun Singh Kohli, Honours B.A., LL.B. for the initial data mining and processing of the various datasets listed above.)

Note, further to the results of this article, I was recently made aware of this excellent article from The WSJ, which I have summarized below:

Game 2 of CLE vs GSW Breakdown

As usual, here is the post-game breakdown of Game 2 of the NBA Finals between Cleveland and Golden State. Using my live-tracking app to track the relevant factors (as explained in previous posts) here are the live-captured time series:


Computing the correlations between each time series above and the Golden State Warriors point difference, we obtain:


One sees once again that the most relevant factors to GSW’s point difference in the game was CLE’s personal fouls during the game, GSW’s personal fouls during the game, and not far behind, GSW 3-point percentage during the game. What is interesting is that one can see the importance of these variables played out in real time matching the two graphs above.

In fact, looking at the personal fouls vs. GSW point difference in real time (essentially taking a subset of the time series graph above), we obtain:

graph_1gswgme2

Breakdown of Game 7 between OKC and GSW

Here is the collection of time series of relevant predictor variables captured live during Game 7 of the Western Conference Finals between The Oklahoma City Thunder and The Golden State Warriors:

Another video animation:

Many commentators are making a point to mention how many three point shots The Warriors made, suggesting that that was the main reason why the Warriors won the game. However, the time series above show otherwise. As can be seen above, OKC’s loss of the lead in the game directly corresponds to GSW’s increase in 2PT %. This can be further confirmed by computing the correlations between OKC’s point difference and all of the other predictor variables plotted above:


One can see from these calculations that OKC’s point difference is strongly negatively correlated with the amount of personal fouls they committed during the game, the amount of personal fouls GSW committed during the game, and GSW 2PT% during the game.

Metrics for GSW vs. OKC Game 6 Second Half

Continuing with the live metrics employed yesterday, here is an analysis of the second half of the Warriors-Thunder Game 6. 

Here is a plot of the various time series of relevant statistical variables: 


One can see from this plot for example, the exact point in time when OKC loses control of the game. 

Further, here are the correlation coefficients of the variables above: 


One sees there is a tremendously strong anti-correlation between OKC’s lead and GSW 3PT%, while there is a somewhat strong correlation between OKC’s lead and their 2PT%. This perhaps means that for Game 7, OKC’s 3PT defense needs to greatly improve along with maintaining their 2PT%, which, as can be seen from the plot above, dropped off towards the end of the game.