2026-10-17

Introduction

Chess is a two-player game where two players attempt to capture the opponents King piece. White always moves first.

  • The first move may give White a significant advantage over Black.
  • This study will analyze game results playing both White and Black to see if White results in better outcomes.

Stats

This study uses a dataset with 20,058 games from Lichess.org, which provides a few important fields that are relevant to this study.

winner: The result of every game, which can end in a White Win, Black Win or Draw white_rating: ELO rating of player using White. black_rating: ELO rating of player using Black.

The purpose of using these fields is to be able to compare games between Black and White players with similar ELO ratings and compare their outcomes.

Analysis

  • With testing, we will test whether White has a significant advantage over Black with the first move.
  • We will first calculate the ratio of games won between Black and White, as well as the draws. We will use games in which Black and White have similar ELO ratings to reduce large skill differences. From this, we can see whether White has an advantage over Black as a result from the first move advantage.

Mathematics (Hypothesis Testing)

Null Hypothesis: White does not have a significant advantage over Black, meaning that the average score is 50%. \[ H_0: \mu_W = 0.5 \] Hypothesis: White does have a significant advantage over Black, meaning the average score is greater than 50%. \[ H_1: \mu_W > 0.5 \]

Mathematics (Testing)

We will utilize a t-test to see if White has an advantage over Black

\[ t = \frac{\bar{x} - \mu}{s/\sqrt{n}} \] \(\bar{x}\) = the Average score for White

\(\mu\) = Game score with the null hypothesis score (0.5)

\(s\) = Standard deviation of scores for games played with White

\(n\) = Total number of games analyzed

\(\alpha = 0.05\)

R Code

chess_f <- chess %>% filter(abs(white_rating - black_rating) <= 100)
chess_f$white_score <- ifelse(
chess_f$winner == "white", 1, ifelse(chess_f$winner == "draw", 0.5, 0)
)

Visualization 1

This plot visualizes the outcome of games between players with differences in ELO rating less than or equal to 100. The graph shows that White won more games than Black despite similar ELO ratings.

Visualization 2

This graph shows the percentage of games won by White, Black or ended in draws between players of similar ELO ratings, which shows how frequently these outcomes occur.

Visualization 3

This graph compares ELO rating differences across different outcomes, such as White winning, Black winning or a draw. The purpose of this is to show out comes vary depending on the ELO differences.

Plotly

This graph compares ELO rating differences across different outcomes. This graph is interactive, and allows us to look closely at specific values.

Final Results

Now we will utilize a t-test to determine if White has a significant advantage over Black.

## 
##  One Sample t-test
## 
## data:  chess_f$white_score
## t = 3.6105, df = 9161, p-value = 0.0001536
## alternative hypothesis: true mean is greater than 0.5
## 95 percent confidence interval:
##  0.509982      Inf
## sample estimates:
## mean of x 
## 0.5183366

We will compare the p value that we calculated with \(\alpha = 0.05\) to determine if we should reject the null. As 0.0001536 < 0.05, we reject the null meaning that White has a significant advantage over Black.

Conclusion

This study analyzed chess games between players with similar ELO ratings to show that playing as White has a significant advantage over Black.

  • White had an average score of 51.83%, which was greater than the expected score of 50%.
  • We achieved a p value of 0.0001536, below the significance level of 0.05

This shows that White has a significant advantage over Black despite similar ELO ratings.