Consider a set of \(K\) items. Let the items be nodes in a graph and let there be a directed edge \((i, j)\) when \(i\) has won against \(j\) at least once. We call this the comparison graph of the data, and denote it by \(G_W\). Assuming that \(G_W\) is fully connected, the Bradley-Terry model states that the probability that item \(i\) beats item \(j\) is
$$p_{ij} = \frac{\pi_i}{\pi_i + \pi_j},$$
where \(\pi_i\) and \(\pi_j\) are positive-valued parameters representing the skills of items \(i\) and \(j\), for \(1 \le i, j, \le K\).
The expected, or fitted, values under the Bradley-Terry model are therefore:
$$m_{ij} = n_{ij}p_{ij},$$
where \(n_{ij}\) is the number of comparisons between item \(i\) and item \(j\).
If there are values on the diagonal in the original btdata$wins
matrix, then these appear as the values on the diagonal of the fitted matrix. These values do not appear in the data frame if the as_df
argument is set to TRUE
.
The function btfit
is used to fit the Bradley-Terry model. It produces a "btfit"
object that can then be passed to fitted.btfit
to obtain the fitted values \(m_{ij}\). Note that the Bradley-Terry probabilities \(p_{ij}\) can be calculated using btprob
.
If \(G_W\) is not fully connected, then a penalised strength parameter can be obtained using the method of Caron and Doucet (2012) (see btfit
, with a > 1
), which allows for a Bradley-Terry probability of any of the \(K\) items beating any of the others. Alternatively, the MLE can be found for each fully-connected component of \(G_W\) (see btfit
, with a = 1
), and the probability of each item in each component beating any other item in that component can be found.