sim_fict() simulates a fictitious play of a game

sim_fict(
  game,
  n_samples = 1,
  n_periods = 50,
  lambda = 1,
  init = NULL,
  sigma = 0,
  plot_range_y = NULL,
  plot_id = 1
)

Arguments

game

An object of normal_form class defined by normal_form().

n_samples

A positive integer specifying the number of samples to be simulated.

n_periods

A positive integer specifying how many times the game is played.

lambda

A positive real value representing the players' sensitivity to expected utilities. As lambda gets larger, a small difference in expected utility makes a big difference in choice probability.

init

A list of initial levels of beliefs. The length of the list must be two. Each element must be a vector of values between 0 and 1 representing a player's belief. If init = NULL, which is default, initial beliefs will be randomly assigned.

sigma

A non-negative value determining the level of noise adherent to evaluation of payoffs.

plot_range_y

Choose the range of vertical axis for plots. Available choices are "fixed", "full" and "free". If plot_range_y = "free", the range of y-axis depends on simulation results. If plot_range_y = "full", The range defined in game is used for each player, which can be different between players. With "fixed", the same y-axis is used for both players.

plot_id

An integer between 1 and n_samples to specify for which sample, playing history should be displayed. If plot_id = NULL, plot_B and plot_P will be NULL.

Value

A list containing (1) a data frames of strategies chosen by each player, (2) a single long data frame of (1)'s data frames combined, (3) a list of each player's belief about the opponent's behavior (data frames), (4) a list of probability of each strategy being chosen (data frames), and (5) three plots of simulation result.

Details

Simulate fictitious plays of a normal-form game defined by normal_form().

Author

Yoshio Kamijo and Yuki Yanai yanai.yuki@kochi-tech.ac.jp