RICM4 - PS DM1

Alexandre SALMON

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

Question 1.1

Intuitivement, j’ai tendance à penser que M sous-estime la valeur réelle de a. Le maximum des X1 sera au mieux égal à 1 et souvent inférieur, sous-estimant la valeur réelle de a.

La moyenne de M dans vers a quand n grandi. Ce qui est logique car plus n est grands plus il est probable qu’un Xi soit proche de a.

Sa variance, elle, réduit avec n qui grandit.

a = sample(1:100, 1)
n = 10
m = max(sample(1:a, n, T))

Em = c();
a = 100
for (i in 1:50)
  Em[i] = mean(replicate(100, max(sample(1:a, i, T))))
plot(Em, type='l')

Vm = c();
for (i in 1:50)
  Vm[i] = var(replicate(100, max(sample(1:a, i, T))))
plot(Vm, type='l')

Question 1.1

Cet estimateur M’ me semble plus interessant que M car son espérence est de a. On sait que X est réparti uniformément sur [0;a], donc E(X) = a/2 et 2*E(X) = a. Cependant sa précision varie en fonction de n: un grand n permettra une meilleure précision.

a = sample(1:1000, 1)
n = 10
m = 2*mean(sample(1:a, n, T))

Em = c();
a = 100
for (i in 1:200)
  Em[i] = mean(replicate(100, 2 * mean(sample(1:a, i, T))))
plot(Em, type='l')

Vm = c();
for (i in 1:200)
  Vm[i] = var(replicate(100, 2 * mean(sample(1:a, i, T))))
plot(Vm, type='l')

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

Question 1.1

L’intuition de Bob me semble plutot juste, cependant 1,1 n’est sans doute pas le meilleur facteur, l’idéal serait d’avoir un facteur variant en fonction de n comme par exemple 1 + 1/n. On sait que plus n est grand, plus M est proche de A, ce facteur 1,1 qui pour un n faible permet de jouer la sécurité devient un paris risqué pour un n plus grand.

a = runif(1, 0, 1)
n = 10
m = max(runif(n, 0, a))
rm = 1.1 * m

gain = function(rm, a) {
  if (rm > a) {
    g = 0
  } else {
    g = rm - m
  }
  return(g)
}

gain(rm, a)
## [1] 0
a = 1
n = 10
mean(replicate(1000, gain(1.1 * max(runif(n, 0, a)), a)))
## [1] 0.1988936

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

A priori je dirai qu’il a une probabilité de 0.5 d’avoir raison.

On peut applique la stratégie quivante: répondre oui seulement si la valeur donnée est supérieure à 0,5. Ce qui pour des valeurs a1 = 0,4 et a2 = 0,6 assure la victoire.

Avec a1 et a2 tirs unifomréments sur 0, 1 on obtient on probabilité de victoire de 0,75

getA = function() {
  return (sort(c(runif(1, 0, 1), runif(1, 0, 1))))
}

guess = function(a) {
  return (a > 0.5)
}

pick = function(a) {
  return (a[sample(1:2, 1, FALSE)])
}

simulate = function() {
  A = getA()
  a = pick(A)
  g = guess(a)
  if (g) {
    return (a == A[2])
  } else {
    return (a != A[2])
  }
}

mean(replicate(10000, simulate()))
## [1] 0.7544