nylongems: What is the best nylon?

Ever since I started playing basketball I was into looking for the best net. I was convinced that it had an impact on my performance (granted I was 8 years old when I believed that).  When I grew up and took statistics I realized this was not true, but I still had a preference in terms of feel when the ball went through the net. You know like the splash brothers. With my friends we never settled the debate and after all these years I never forgot about it. So I decided to create nylongems, a Python-based website that allows basketball fans to vote their choice between two randomly chosen nylons. I had 8 different net types, several from the European courts of the 90s, including my personal favorite, the one with the knitters – which as you will see I might be the only one who likes it.

Bradly-Terry pairwise comparisons

So nylogens provided me with a set of pairwise comparisons and the users choices. For example, I know that nets n_i and n_j were shown to a user and the user chose n_i. Bradley-Terry (BT) model uses these comparisons between objects to identify the ability \beta_i for each object i. Once these abilities are identified, then the probability that object i will be chosen over object j is given by:

\Pr[i \succ j | \beta_i, \beta_j] = \frac{1}{1+e^{-(\beta_i-\beta_j)}}


Given nylon-specific features \mathbf{z}_i (e.g., chain or no, elastisity of the net etc.), the ability of each object can be further expressed as:

\beta_i = \alpha_0 + \sum_{r=1}^d \alpha_r \cdot z_{ir} + U,~~~U\sim N(0,\sigma^2)

This – theoretically – would allow one to truly design a nylon that everyone would like, since we would be able to estimate how a given feature would correlated with the nylon’s ability or gem score as I termed it. Since we do not have similar features we simply estimate the ability of each net, i.e., a number for each one of them. I collected 285 pairwise comparisons (feel free to contribute more data by visiting nylongems and I will update the results), and following are the gem scores for each nylon:

Screen Shot 2019-07-22 at 1.29.03 AM

Unfortunately, my personal favorite is ranked last, while me second favorite (the one with score -0.48) does not rank any better.

There are certainly more advanced pairwise-comparisson models but Bradley-Terry model is used in a variety of settings, including sports analytics, social sciences etc. For example, we use a similar framework to understand how people perceive biking safety and what street features increase the (perceived) safety.

You can find all the code (for the flask app and the data analysis) on my github.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s