BTdecay: Bradley-Terry Model with Exponential Decayed weighted...

Description Usage Arguments Details Value Examples

View source: R/BTdecay.R

Description

Exponential decay rate is applied to the likelihood function to achieve a better track of current abilities. When "decay.rate" is setting as 0, this is a standard Bradley-Terry Model whose estimated parameters are equivalent to package "BradleyTerry2". Further detailed description is attached in BTdecayLasso.

Usage

1
BTdecay(dataframe, ability, decay.rate = 0, fixed = 1, iter = 100)

Arguments

dataframe

Generated using BTdataframe given raw data.

ability

A column vector of teams ability, the last row is the home parameter. The row number is consistent with the team's index shown in dataframe. It can be generated using BTdataframe given raw data.

decay.rate

The exponential decay rate. Usually ranging from (0, 0.01), A larger decay rate weights more importance to most recent matches and the estimated parameters reflect more on recent behaviour.

fixed

A teams index whose ability will be fixed as 0. The worstTeam's index can be generated using BTdataframe given raw data.

iter

Number of iterations used in L-BFGS-B algorithm.

Details

The standard Bradley-Terry Model defines the winning probability of i against j,

P(Y_{ij}=1)=\frac{\exp(τ h_{ij}^{t_{k}}+μ_{i}-μ_{j})}{1+\exp(τ h_{ij}^{t_{k}}+μ_{i}-μ_{j})}

τ is the home parameter and μ_{i} is the team i's ability score. h_{ij} takes 1 if team i is at home, -1 otherwise. Given, a complete tournament's result. The objective likelihood function with an exponential decay rate is,

∑_{k=1}^{n}∑_{i<j}\exp(-α t_{k})\cdot(y_{ij}(τ h_{ij}^{t_{k}}+μ_{i}-μ_{j})-\log(1+\exp(τ h_{ij}^{t_{k}}+μ_{i}-μ_{j})))

where n is the number of matches, α is the exponential decay rate and y_{ij} takes 0 if i is defeated by j, 1 otherwise. t_{k} is the time lag (time until now). This likelihood function is optimized using L-BFGS-B method with package optimr and summary() function with S3 method can be applied to view the outputs.

Value

List with class "BT" contains estimated abilities and convergent code, 0 stands for convergence reaches, 1 stands for convergence not reaches. If 1 is returned, we suggest that decay rate should be set lower. Bradley-Terry model fails to model the situation when a team wins or loses in all matches. If a high decay rate is considered, a team who only loses or wins 1 matches long time ago will also causes the same problem.

ability

Estimated ability scores

convergence

0 stands for convergent, 1 stands for not convergent

decay.rate

Decay rate of this model

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
##Initializing Dataframe
x <- BTdataframe(NFL2010)

##Standard Bradley-Terry Model optimization
y <- BTdecay(x$dataframe, x$ability, decay.rate = 0, fixed = x$worstTeam)
summary(y)

##Dynamic approximation of current ability scores using exponential decayed likelihood.
##If we take decay.rate = 0.005
##Match happens one month before will weight exp(-0.15)=0.86 on log-likelihood function
z <- BTdecay(x$dataframe, x$ability, decay.rate = 0.005, fixed = x$worstTeam)
summary(z)

Example output

decay.rate:

0

Bradley-Terry Estimates:

                     score
Atlanta Falcons      3.836
Baltimore Ravens     3.768
Cleveland Browns     1.635
Denver Broncos       0.480
Detroit Lions        1.804
Green Bay Packers    2.924
Houston Texans       1.312
Indianapolis Colts   2.220
Kansas City Chiefs   1.861
New England Patriots 4.611
New Orleans Saints   2.954
New York Jets        3.389
Philadelphia Eagles  2.505
San Francisco 49ers  0.985
Seattle Seahawks     1.263
Washington Redskins  1.458
Arizona Cardinals    0.602
Buffalo Bills        1.351
Chicago Bears        3.015
Cincinnati Bengals   1.236
Jacksonville Jaguars 1.626
Miami Dolphins       2.208
Oakland Raiders      1.493
Pittsburgh Steelers  3.759
St. Louis Rams       1.157
Tampa Bay Buccaneers 2.629
Carolina Panthers    0.000
Dallas Cowboys       1.436
Minnesota Vikings    1.740
New York Giants      2.345
San Diego Chargers   1.735
Tennessee Titans     1.278
at.home              0.322
decay.rate:

0.005

Bradley-Terry Estimates:

                     score
Atlanta Falcons      3.785
Baltimore Ravens     3.722
Cleveland Browns     1.519
Denver Broncos       0.245
Detroit Lions        2.014
Green Bay Packers    2.976
Houston Texans       1.015
Indianapolis Colts   2.103
Kansas City Chiefs   1.647
New England Patriots 4.736
New Orleans Saints   2.951
New York Jets        3.290
Philadelphia Eagles  2.386
San Francisco 49ers  0.946
Seattle Seahawks     1.122
Washington Redskins  1.309
Arizona Cardinals    0.372
Buffalo Bills        1.466
Chicago Bears        3.089
Cincinnati Bengals   1.192
Jacksonville Jaguars 1.414
Miami Dolphins       2.040
Oakland Raiders      1.416
Pittsburgh Steelers  3.670
St. Louis Rams       1.054
Tampa Bay Buccaneers 2.612
Carolina Panthers    0.000
Dallas Cowboys       1.476
Minnesota Vikings    1.774
New York Giants      2.284
San Diego Chargers   1.654
Tennessee Titans     0.937
at.home              0.296

BTdecayLasso documentation built on May 1, 2019, 8:24 p.m.