Pour faire ce DM, j’ai particulièrement discuté avec Ali EL MUFTI. J’ai également demandé de l’aide à plusieurs personnes de la classe pour la question 2.4.

Graine

set.seed(seed = 12)

Exercice 1 : Question préliminaire à propos d’estimation

Q1.1

n1 = 12
a1 = sample(x=1:50,size=1,replace=T)

X1  = runif(n1,0,a1)
M1 = replicate(1000,max(X1))
E1 = mean(M1)

a1
## [1] 4
E1
## [1] 3.770487

On remarque que E(X) se rapproche bien de a, cette stratégie n’est donc pas mauvaise mais peut être améliorée puisque nous ne sommes pas assez proches pour être surs à 100%.

Je n’ai pas su trouver empiriquement une formule de l’espérance.

Q1.2

n2 = 12
a2 = sample(x=1:50,size=1,replace=T)

X2 = runif(n2,0,a2)
M2 = replicate(1000,(2/n2)*sum(X2))
E2 = mean(M2)

a2
## [1] 20
E2
## [1] 15.93533

Mon intuition était que nous nous approcherons plus de la valeur de a. Or ce n’est pas le cas car nous trouvons parfois une espérance plus élevée que la valeur de a et pas très proche (par exemple a=41 et E(X)=48.84).

Exercice 2 : Un deuxième jeu à base de max

Q2.3

Selon moi, cette stratégie me semble pas optimale. Certes Bob a de grandes chances de gagner, mais il gagne très peu à chaque fois et si jamais il perd, il va perdre beaucoup d’argent. Il faudrait donc qu’il gagne un très grand nombre de fois pour ne pas être déficitaire en cas de défaite, ce qui n’est pas assuré.

fun1 = function(){
  
  n = 10
  nombreA = runif(1,0,1)
  X3 = runif(n,0,nombreA)
  M3 = max(X3)
  strategie = 1.1*M3
  
  if (strategie <= nombreA){
    return(strategie-M3)
  }
  else{
    return(0)
  }
}

G = sample(x=0,size=100,replace=T)
for(i in 1:100){
  G[i] = fun1()
}
E3 = mean(G)

E3
## [1] 0.01477301

En effet les gains G de Bob ne sont pas très élevés et c’est donc selon moi pas une très bonne stratégie.

Q2.4

n = 3

fun2 = function(a,m){
  
  A = sample(x=(0:10)/10,size=1,replace=T)
  X4 = sample(x=(0:(10*A))/10,size=n,replace=T)
  M4 = max(X4)
  return (A==a && M4==m)
  
}

fun3 = function(){
  
  resultats = sample(x=0,size=11,replace=T)
  
  
  for(i in 0:10){
    k=0
    for (j in 0:10){
      resultats[k] = mean(replicate(1000,fun2(i/10,j/10)))
      k = k+1
    }
    print('a=' )
    print(i/10)
    print(resultats)
  }
  return()
}

fun3()
## [1] "a="
## [1] 0
##  [1] 0 0 0 0 0 0 0 0 0 0 0
## [1] "a="
## [1] 0.1
##  [1] 0.072 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
## [1] "a="
## [1] 0.2
##  [1] 0.022 0.061 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
## [1] "a="
## [1] 0.3
##  [1] 0.010 0.035 0.055 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
## [1] "a="
## [1] 0.4
##  [1] 0.004 0.012 0.037 0.045 0.000 0.000 0.000 0.000 0.000 0.000 0.000
## [1] "a="
## [1] 0.5
##  [1] 0.004 0.005 0.014 0.025 0.036 0.000 0.000 0.000 0.000 0.000 0.000
## [1] "a="
## [1] 0.6
##  [1] 0.003 0.004 0.007 0.016 0.018 0.026 0.000 0.000 0.000 0.000 0.000
## [1] "a="
## [1] 0.7
##  [1] 0.003 0.002 0.005 0.012 0.018 0.017 0.031 0.000 0.000 0.000 0.000
## [1] "a="
## [1] 0.8
##  [1] 0.000 0.001 0.004 0.003 0.008 0.021 0.027 0.027 0.000 0.000 0.000
## [1] "a="
## [1] 0.9
##  [1] 0.001 0.001 0.003 0.004 0.007 0.016 0.021 0.020 0.027 0.000 0.000
## [1] "a="
## [1] 1
##  [1] 0.001 0.002 0.000 0.007 0.005 0.011 0.008 0.009 0.025 0.024 0.000
## NULL

A la ligne a=0.5 on constate que l’index correspondant à m=0.5 est plus élevée que pour les autres valeurs de a (0.036). Il faut donc proposer la valeur a=0.5 à Bob.

Exercice 3 : Question BONUS : Un dernier jeu à base de max et de pile ou face

Q3.6

La probabilité que Bob a de gagner est de 1/2. En effet il n’y a que deux issus possibles “pile” ou “face” et les deux sont équiprobables.

On peut vérifier notre intuition avec le code R suivant :

X5 = sample(0:1,size=1000,replace=T)
mean(X5==1)
## [1] 0.513