R: Ошибка библиотеки MonteCarlo - «Размер сетки очень большой. Если вы все еще хотите запустить симуляцию, измените max_grid». - PullRequest
0 голосов
/ 12 апреля 2019

Чтобы решить вопрос ниже относительно суммы карт в колоде, я хочу запустить MonteCarlo Simulations, но получаю сообщение об ошибке **.

Вопрос: ** Определите, происходит ли сигнал «преимущества»если совокупное количество карт в колоде возрастает строго выше 5. Используйте симуляцию Монте-Карло с размером репликации 1 000 000, чтобы оценить вероятность того, что случайно перемешанная колода карт создаст сигнал «преимущества» в первых 30 сыгранных картах.Сигнал генерируется, если в любой точке в пределах первых 30 карт совокупное количество карт превышает 5. Между каждой итерацией убедитесь, что вы перетасовываете колоду. Команда «cumsum» окажется очень полезной вэта задача."cumsum" вычисляет совокупную сумму вектора, которая в точности соответствует количеству накопленных карт.Вырежьте и вставьте код, который выполняет Монте-Карло, вместе с окончательной оценочной вероятностью.

CARDS <- paste(
  rep(c("ACE","2","3","4","5","6","7","8","9","10","J","Q","K"),rep(4,13)),
  rep(c("H","C","D","S"),13),sep="_")
set.seed(19900209)
my.deck <- sample(CARDS)
cardvalues <- c("ACE","2","3","4","5","6","7","8","9","10","J","Q","K")
cardcounts <- c(-1,0.5,1,1,1.5,1,0.5,0,-0.5,-1,-1,-1,-1)
new.my.deck<-gsub("_.*","",my.deck)
table.new <- cbind(cardvalues,cardcounts)
match(new.my.deck,cbind(cardvalues,cardcounts),nomatch=NA_integer_)
library(MonteCarlo)
card.test<-function(CARDS,cardvalues,cardcounts){
    # generate sample:
  set.seed(19900209)
  my.deck <- sample(CARDS)
  new.my.deck<-gsub("_.*","",my.deck)
  card.count <- match(new.my.deck,cbind(cardvalues,cardcounts),nomatch=NA_integer_)
  card.sum <-cumsum(card.count)
  # get test decision:
  descision <- as.numeric(card.sum)>5
    # return result:
  return(list("advantage attained"=descision))
}

Ошибка - Размер сетки очень большой.Если вы все еще хотите запустить симуляцию, измените max_grid.>

...