games (version 1.0-4)

egame123: Strategic model with 3 players, 4 terminal nodes

Description

Fits a strategic model with three players and four terminal nodes, as in the game illustrated below in "Details".

Usage

egame123(formulas, data, subset, na.action, link=c("probit", "logit"),
    type=c("agent", "private"), startvals=c("sbi", "unif", "zero"),
    fixedUtils, sdformula, sdByPlayer=FALSE, boot=0, bootreport=TRUE,
    profile, method="BFGS", ...)

Arguments

formulas
a list of eight formulas, or a Formula object with eight right-hand sides. See "Details" and "Examples".
data
a data frame.
subset
an optional logical vector specifying which observations from data to use in fitting.
na.action
how to deal with NAs in data. Defaults to the na.action setting of options. See na.omit
link
whether to use a probit (default) or logit link structure,
type
whether to use an agent-error ("agent", default) or private-information ("private") stochastic structure.
startvals
whether to calculate starting values for the optimization from statistical backwards induction ("sbi", default), draw them from a uniform distribution ("unif"), or to set them all to 0 ("zero")
fixedUtils
numeric vector of values to fix for u11, u13, u15, u16, u23, u25, u26, and u36. NULL (the default) indicates that these should be estimated with regressors, not fixed.
sdformula
an optional list of formulas or a Formula containing a regression equation for the scale parameter. See egame12 for details.
sdByPlayer
logical: if scale parameters are being estimated (i.e., sdformula or fixedUtils is non-NULL), should a separate one be estimated for each player? This option is ignored unless fixedUtils or sdform
boot
integer: number of bootstrap iterations to perform (if any).
bootreport
logical: whether to print status bar during bootstrapping.
profile
output from running profile.game on a previous fit of the model, used to generate starting values for refitting when an earlier fit converged to a non-global maximum.
method
character string specifying which optimization routine to use (see maxLik)
...
other arguments to pass to the fitting function (see

Value

  • An object of class c("game", "egame123"). See egame12 for a description of the game class.

Details

The model corresponds to the following extensive-form game: . 1 . /\ . / \ . / \ 2 . u11 /\ . / \ . / \ . u13 \ 3 . u23 /\ . / \ . / \ . u15 u16 . u25 u26 . 0 u36

For additional details on any of the function arguments or options, see egame12. The only difference is that the right-hand side of formulas must have eight components (rather than four) in this case.

Ways to specify the dependent variable in egame123:

  • Numeric vectorycontaining 4 unique values, corresponding to the outcomes (in order from left to right) as labeled in the game tree above.
  • Factory, whereyhas four levels, corresponding in order to the outcomes as labeled above.
  • Indicator variablesy1 + y2 + y3, wherey1indicates whether Player 1 moves left or right,y2indicates Player 2's move, andy3indicates Player 3's move. Non-observed values ofy2andy3(where the game ended before the move could be made) should be set to0,notNA, to ensure that observations are not dropped whenna.action = na.omit.

Examples

Run this code
data(data_123)

## the formula:
f1 <- y ~ x1 + x2 | 0 | x3 | x4 + x5 | 0 | x6 | x7 | x8
##    ^   ^^^^^^^   ^   ^^   ^^^^^^^   ^   ^^   ^^   ^^
##    y     u11    u13  u15    u16    u23  u25  u26  u36

m1 <- egame123(f1, data = data_123, link = "probit", type = "private")
summary(m1)

## dummy specification of the dependent variable
f2 <- update(Formula(f1), a1 + a2 + a3 ~ .)
m2 <- egame123(f2, data = data_123, link = "probit", type = "private")
summary(m2)

Run the code above in your browser using DataCamp Workspace