Q1.1

On considère que :

1 = Pierre 2 = Papier 3 = Ciseau

A_joue = function() {
  tirage = runif(1,0,1)
  if (tirage < (1/4)) {
    1
  } else if (tirage <= 2*(1/4)) {
    2
  } else {
    3
  }

}

B_joue = function() {
  tirage = runif(1,0,1)
  if (tirage < (1/4)) {
    1
  } else if (tirage <= 2*(1/4)) {
    2
  } else {
    3
  }

}


nb_matchs = 10000
JoueurA_gagne = 0
JoueurB_gagne = 0

for (i in 1:nb_matchs) {
  JoueurA = A_joue()
  JoueurB = B_joue()
  
  if (JoueurA == 1 && JoueurB == 2) {
    JoueurB_gagne = JoueurB_gagne + 1
    JoueurA_gagne = JoueurA_gagne - 1
  } else if (JoueurA == 1 && JoueurB == 3) {
    JoueurA_gagne = JoueurA_gagne + 1
    JoueurB_gagne = JoueurB_gagne - 1
  } else if (JoueurA == 2 && JoueurB == 1) {
    JoueurA_gagne = JoueurA_gagne + 1
    JoueurB_gagne = JoueurB_gagne - 1
  } else if (JoueurA == 2 && JoueurB == 3) {
    JoueurB_gagne = JoueurB_gagne + 1
    JoueurA_gagne = JoueurA_gagne - 1
  } else if (JoueurA == 3 && JoueurB == 1) {
    JoueurB_gagne = JoueurB_gagne + 1
    JoueurA_gagne = JoueurA_gagne - 1
  } else if (JoueurA == 3 && JoueurB == 2) {
    JoueurA_gagne = JoueurA_gagne + 1
    JoueurB_gagne = JoueurB_gagne - 1
  }
  
}

Nous avons fait 10 000 parties, le joueur A et B on respectivement fait un score de :

print(JoueurA_gagne)
## [1] 55
print(JoueurB_gagne)
## [1] -55

Les deux résultats suivants correspondent à JoueurA_gagne/nb_matchs et JoueurB_gagne/nb_matchs.

print(JoueurA_gagne/nb_matchs)
## [1] 0.0055
print(JoueurB_gagne/nb_matchs)
## [1] -0.0055

On remarque donc que c’est extrèmement proche de 0, on estime donc l’espérence de gain du joueur B contre le joueur A lorsque P(B) = (1/4,1/4,1/2) est donc égale à 0. Le jeu est equilibré.

Q 1.2

A_joue = function() {
  tirage = runif(1,0,1)
  if (tirage < (1/4)) {
    1
  } else if (tirage <= 2*(1/4)) {
    2
  } else {
    3
  }

}

# for (i in 1:10000) {
#   test[i] = A_joue()
# }
# 
# papier = 0
# ciseau = 0
# pierre = 0
# for (i in 1:100000) {
#   if (test[i]==1) {
#     pierre = pierre+1
#   } else if (test[i] == 2) {
#     papier = papier + 1
#   } else {
#     ciseau = ciseau + 1
#   }
# }
# 
# print (pierre/100000)
# print (papier/100000)
# print (ciseau/100000)

B_joue = function() {
  tirage = floor(runif(1,0,1)*3)+1
  tirage
}
# test = c()
# for (i in 1:10000) {
#   test[i] = B_joue()
# }
# hist(test)

nb_matchs = 10000
JoueurA_gagne = 0
JoueurB_gagne = 0

for (i in 1:nb_matchs) {
  JoueurA = A_joue()
  JoueurB = A_joue()
  
  if (JoueurA == 1 && JoueurB == 2) {
    JoueurB_gagne = JoueurB_gagne + 1
    JoueurA_gagne = JoueurA_gagne - 1
  } else if (JoueurA == 1 && JoueurB == 3) {
    JoueurA_gagne = JoueurA_gagne + 1
    JoueurB_gagne = JoueurB_gagne - 1
  } else if (JoueurA == 2 && JoueurB == 1) {
    JoueurA_gagne = JoueurA_gagne + 1
    JoueurB_gagne = JoueurB_gagne - 1
  } else if (JoueurA == 2 && JoueurB == 3) {
    JoueurB_gagne = JoueurB_gagne + 1
    JoueurA_gagne = JoueurA_gagne - 1
  } else if (JoueurA == 3 && JoueurB == 1) {
    JoueurB_gagne = JoueurB_gagne + 1
    JoueurA_gagne = JoueurA_gagne - 1
  } else if (JoueurA == 3 && JoueurB == 2) {
    JoueurA_gagne = JoueurA_gagne + 1
    JoueurB_gagne = JoueurB_gagne - 1
  }
  
}

Including Plots

You can also embed plots, for example:

Note that the echo = FALSE parameter was added to the code chunk to prevent printing of the R code that generated the plot.