library(StratTourn)
library(xtable)
library(ggplot2)
library(reshape2)
library(googleVis)
library(StratTourn)
library(xtable)
library(Shiny)
setwd("D:/libraries/StratTourn")

setwd("D:/libraries/StratTourn/studies")

tourn.name = "Tourn_Noisy_PD_20141110_054429"
tourn = load.tournament(paste0(tourn.name,".tou"))
# Data for each match
md = tourn$dt
md = add.other.var(md,c("strat","u"))
md$delta.u = md$u - md$other.u
# Names of all strategies
strats = unique(md$strat)

# Data for each round
file = tourn$rs.file
rd = fread(file)
rd = as.tbl(as.data.frame(rd))
rd = add.other.var(rd,c("strat","u"))

rank.dt = strat.rank.from.matches(md)

# Names of all strategies
strats = unique(rd$strat)

# Perhaps select a subset of strategies
used.strats = strats
used.strats = c("mystrategy.knallhart",  "coop1_duoinfernale",  "noisesafe.tit.for.tat", "paranoid" ,             "prof.strat", "erstertest1")
ard = rd

if (!identical(used.strats,strats)) {
  rows = rd$strat %in% used.strats & rd$other.strat %in% used.strats
  rd = ard[rows,]
}
end.t = 50
start.t = 1
cumd = mutate(group_by(rd,strat,other.strat,match.id), cum.u=cumsum(u), cum.other.u=cumsum(other.u))

td = summarise(group_by(cumd,strat,other.strat,t), u.diff=mean(cum.u-cum.other.u), num.obs = length(t))

t.seq = 1:min(max(td$t),end.t)
tsd = do(group_by(td, strat, other.strat),
         get.smoothed.vals(.,xout=t.seq, xvar="t",yvar="u.diff", wvar="num.obs", spar=0.2))

# Order strategies according to their rank
rank.strats = rank.dt$strat
tsd$strat = factor(tsd$strat, rank.strats, ordered=TRUE)
tsd$other.strat = factor(tsd$other.strat, rank.strats, ordered=TRUE)


qplot(data=tsd, x=t, y=u.diff, color=strat, group=strat, size=I(1), geom="line") + facet_grid(other.strat~strat) + geom_hline(yintercept=0, size=0.5, col="black",alpha=0.5)
cat("\n")

The plot shows the expected aggregated payoff difference from period 1 to period t of the column strategy against the row strategy.



skranz/StratTourn documentation built on May 30, 2019, 2:02 a.m.