##Excercice 1 # Q1.1 Ce qui concerne mon intuition pour cette expérience je dirais que la valeur de de l’epèrance s’approchera plus de a tant que que le n tendra vers des grandes valeurs. Puisque tant qu’on augumente le nombre de tirage (n) on aura plus de chance de tomber sur un plus grand nombre qui est plus proche ou même égale à a.

tour=1000
a=10 # nombre choisit par Alice secrètement
n=5 # nombre de tirage dans l'intervalle [0,a]
M = NULL # vecteur où on va stocker le maxi xi de chaque essai
Esp_exp <- function(a){
  for(i in 1:tour){
  x=runif(n, 0, a)
  M=cbind(M,max(x))
  }
return (mean(M))
}


#courbe
x=1:30 #différentes valeurs de a
y=lapply(x,Esp_exp)
plot(x,y, xlab="a", ylab="E[M]")

On répétant l’expérience plusieurs fois avec différentes valeurs de a et en gardant n fixe on constate qu’il s’agit d’une espèrance linéaire en fonction de a c-à-d \(E[M]=k \times a\) Pour trouver \(K\) cette fois-ci nous gardons a fixe et nous varions le n :

#on garde la même fonction mais cette fois avec n en argument
Esp_exp <- function(n){
for(i in 1:tour){
x=runif(n, 0, a)
M=cbind(M,max(x))
}
return (mean(M))
}
x=2:30 #différentes valeurs de a
y=lapply(x,Esp_exp)
plot(x,y, xlab="n", ylab="E[M]")

En regardant cette courbe on déduit que E[M] tend avec une convergence asymptotique vers \(a = 10\) quand n tend vers des plus grand nombre, ce que signifie d’un autre côté que k tend vers 1, alors on aura une valeur de k en fonction de n qui tends vers 1 quand n tend vers l’infini. Personnellement, j’ai essayé de faire une application mathématiques en se basant sur les définitions de l’éspèrance est j’ai trouvé cette expression qui convient à ce que j’ai touvé empiriquement \ \(E(M)=\frac{{a}n}{(n+1)}\)Mon raisonnement était comme le suivant \ On a chacune des variables aléatoires \(X_{n+1},…,X{n}\) suit la loi uniforme sur \([0,a]\), Alors la fonction de répartition sera \(F(x)=P(X≤x)=x/n\) pour x compris entre 0 et a.

\(Max(X_1...X_n )≤x\) implique que \(X_1,X_2 ... ,X_n≤x\) C-à-d la probabilité de ce M doit prendre en compte que toutes les variables aléatoires soient plus petites que x sinon on ne parle pas de maximum. La probabilité de M est donc, l’intersection de toutes les probabilités de \(X_1\) à \(X_n\) et puisque les variables indépandantes le résultats sera égal à leur produits de probabilités. Ce qui fait la fonction de répartition est \(H(x)=(\frac{x}{a})^n\) je l’ai dérivé pour avoir la fonction de densité \(h(x)=H'(x)=(\frac{n}{a})\times (\frac{x}{a})^{n-1}\)

l’espérance mathématique est donc \(E(M)=\int_{0}^a xH′(x)dx\) qui, après calcul \(=\int_{0}^a x (\frac{n}{a})\times (\frac{x}{a})^{n-1}dx\) \(=(\frac{n}{a^n})\times [\frac{x^{n+1}}{n+1}]_{0}^a\) \(=(\frac{n}{a^n})\times [\frac{a^{n+1}}{n+1}]\) j’ai simplifié pour trouvé \(E(M)=\frac{{a}n}{(n+1)}\)

Ensuite en représantant graphiquement mon espèrance théorique j’ai conclue que c’était l’expression correspondante:

Esp_th<-function(n){
  return (a*(n/(n+1)))
}

x=2:20

y=lapply(x,Esp_th)

plot(x,y,xlab="n",ylab="Espèrance théorique")

Si on calcule la limite de l’espèrance quand n tend vers l’infini on trouvera que cette dernière égale à (a). Alors, pour corriger M il faut que Alice et Bob se mettent d’accord sur des grandes valeurs de n. Ce qui prouve mes intuitions.

Pour calculer la variance j’ai repris l’algorithme précédant en se basant sur la définition de de la variance en fonction de l’espèrance ce qui fait j’ai changé la valeur de retour de ma fonction: \(V(M)=E(M^2)-[E(M)]^2\) \

tour=1000
a=10 # nombre choisit par Alice secrètement
n=5 # nombre de tirage dans l'intervalle [0,a]
M = NULL # vecteur où on va stocker le maxi xi de chaque essai
Var_exp <- function(a){
  for(i in 1:tour){
  x=runif(n, 0, a)
  M=cbind(M,max(x))
  }
  return (mean((M-mean(M))**2))
  }

x=1:20 #différentes valeurs de a
y=lapply(x,Var_exp)
plot(x,y,xlab="a",ylab="V[M]")

Notre courbe ressamble à une parabole ce qui fait l’expression de \(V[M]=k'\times a^2\) \ De même comme avant, on fixe a cette fois et on fait varier le n :

tour=1000
a=10 # nombre choisit par Alice secrètement
n=5 # nombre de tirage dans l'intervalle [0,a]
M = NULL # vecteur où on va stocker le maxi xi de chaque essai
Var_exp <- function(n){
  for(i in 1:tour){
  x=runif(n, 0, a)
  M=cbind(M,max(x))
  }
  return (mean((M-mean(M))**2))
  }

x=2:20 #différentes valeurs de a
y=lapply(x,Var_exp)
plot(x,y,xlab="n",ylab="V[M]")

On se trouve à une courbe quasiment Hyberbolique, elle nous permet de déduire que k est sûrement en fonctions de n. J’ai fait là aussi une démonstration mathématiques pour touver l’expression suivante : \ \(V(M)=\frac{n}{(n+2)(n+1)^2}a^2\) \ Selon les formules de cours(dont le théorème de transfert et la défintion de la variance) \ \(V(M)=E(M^2)-[E(M)]^2\) \ \(E(M^2)=\int_{0}^a x^2 H′(x)dx\)\ et \(E(M)^2=(\frac{{a}n}{(n+1)})^2\) \ alors on trouve la variance \(V(M)=a^2(\frac{n}{n+2})-a^2(\frac{n}{n+1})^2\)\ \ Après factorisation par \(a^2\) j’ai eu : \(V(M)=a^2\times(\frac{n}{(n+2)(n+1)^2})\) \ Si on la représente graphiquement on aura :

Var_th <- function(n){
 return ((a**2)*(n/((n+2)*((n+1)**2))))
}

x=2:20
y=lapply(x,Var_th)
plot(x,y,xlab="n",ylab="V[M]")

D’où l’espression de la variance.

#Q1.2 Mon intuition pour cette nouvelle expression d’estimateur de a (M’) c’est que les résultas seront meilleurs que le premier et la probabilité de tomber à une valeur plus proche de a est plus grande(espèrance presque égale à a) que le premier cas avec M. Je me suis basée sur un petit exemple pour des valeur de a, n et xi dont j’ai calculé M et M’. J’ai trouvé alors que (M’) était plus proche de a.

tour=1000
a=10
n=3
M_prime= NULL # vecteur où on va stocker la moitié de la moyenne de xi de chaque essai

Esp2_exp <- function(a){
  for(i in 1:tour){
  x2=runif(n, 0, a)
  M_prime=cbind(M_prime,(mean(x2)*2))
  }
  return (mean(M_prime))
  }

#courbe
x=1:10 #différentes valeurs de a
y=lapply(x,Esp2_exp)
plot(x,y, xlab="a", ylab="E[M']")

Apprement les valeurs sont dispersées mais comme même on conctate qu’ il y a toujours cette proportionnalité entre a et E[M] alors on essaye de faire varier le n pour voir si lespèrance dépand de cette dernière :

Esp2_exp <- function(n){
for(i in 1:tour){
x2=runif(n, 0, a)
M_prime=cbind(M_prime,(mean(x2)*2))
}
return (mean(M_prime))
}

#courbe
x=2:100 #différentes valeurs de n
y=lapply(x,Esp2_exp)
plot(x,y, xlab="n", ylab="E[M']")

A partir de l’expériance on déduit que l’espèrance tend aux alentours de (a), ce qui signifie qu’il n y a pas de dépandance de n d’où on peut conclure empiriquement que : \(E(M')=a\)

#Preuve

\(E(M')=E(\frac{2}{n} \sum_i{X_i}) \ =\frac {2}{n} \sum E(X_i) =\frac{2}{n} \sum(\frac {a}{2}) = \frac{2}{n} \frac{na}{2} = a\)

Estimons la variance maintenant :

tour=1000
a=10
n=3
M_prime= NULL # vecteur où on va stocker la moitié de la moyenne de xi de chaque essai

Var2_exp <- function(a){
  for(i in 1:tour){
  x2=runif(n, 0, a)
  M_prime=cbind(M_prime,(mean(x2)*2))
}
  return (mean((M_prime-mean(M_prime))**2))
}

#courbe
x=1:10 #différentes valeurs de a
y=lapply(x,Var2_exp)
plot(x,y, xlab="a", ylab="V[M']")

De même on fait pour n variante est a fixe

tour=1000
a=10
n=3
M_prime= NULL # vecteur où on va stocker la moitié de la moyenne de xi de chaque essai

Var2_exp <- function(n){
  for(i in 1:tour){
  x2=runif(n, 0, a)
  M_prime=cbind(M_prime,(mean(x2)*2))
}
  return (mean((M_prime-mean(M_prime))**2))
}

#courbe
x=2:10 #différentes valeurs de a
y=lapply(x,Var2_exp)
plot(x,y, xlab="n", ylab="V[M']")

Il y a une parabole en fonction de a et hyperbole en fonction de n comme toute à l’heure, il nous semble comme si cela évolue en 1/n en fonction d’un \(a^2\) mais c’est dur de conclure empiriquement la valeur de V[M’]. Par contre c’est plus facile mathématiquement \(V(M')=V(\frac{2}{n} \sum_i{X_i})\) par priorité sur l’éspèrance nous avons \(=\frac{4}{n^2} V(\sum_i{X_i})\) et puisque les Xi sont indépendant \(\frac{4}{n^2} \sum_i^nV(X_i)\) \(\frac{4}{n^2} \sum_i^n(\frac{a^2}{12})\) \(=\frac{4}{n^2} \times \frac{na^2}{12}\) \ \(V[M']=\frac{a^2}{3n}\) \

Nous constatons ici que la variance est beaucoup plus grande que celle du premier estimateur c-à-d nous sommes devant des valeurs plus dispérsés de la moyenne que dans la première expérience. Je crois alors que le premier estimateur est mieux que le deuxième car plus la variance est petite plus les estimations qu’on fait pour touver a sont plus proche de notre moyenne ce qui fait on est plus proche de notre but. En vrai j’ai cru le contraire, toute au début avant de faire le calcul de la variance.

##Excercice 2

#Q2.3 Dans cette première stratégie le gain de Bob est de 0.1M euros ce n’est pas grand chose comme gains du coup je crois que ce n’est pas une très bonne stratégie ci-dessous le code pour calculer l’espérance empirique de gain sur N parties

tour=1000 #nb répétition 
n=10 # nombre max de tirage dans l'intervalle [0,a]
gains=c() #tous les gains obtenus
for (i in 1:tour) {
  a=runif(1,0,1) # nombre choisi par Alice appartenant à [0,1]
  X=runif(n,0,a) #tirages dans l'intervalle [0,a]
  M=max(X) #Alice annonce le max
   G=0 # gain de chaque tour
   rM=1.1*M
  if(rM <= a) {
    G=rM-M
  }
   gains=c(gains,G) #on rajoute les gains un par un 
}
mean(gains)
## [1] 0.01562375

Ce résultat prouve mon intuition, le gain est très petit.

#Q2.4: Mon intuition cette fois c’est que la probabilité sera plus élevée lorsque a et m sont proches car M est un maximum et elle est plus proche de a Alors pour estimer la valeur de cette probabilité j’ai écris le code suivant :

a=0.3
m=0.2
tour=1000
n=3
gains=c()

for (i in 1:tour){
  A=sample(x=seq(0,a,0.1), 1, T) #tirage entre [0,1]avec un pas de 0,1
  M=max(sample(0:(10*A),n, T)/10 )#alice tire et annoce le max
  gains=cbind(gains,(A==a && M==m))
}

 P=mean(gains) #Estimation de la probabilité 
 P
## [1] 0.083

Estimation de \(P[A=a|M=0.5]\) avec \(M=0.5\) et \(A= a\)

tour=1000
n=3
cpt=0

P2<-function(a){
for (i in 1:tour){
  M=max(sample(size=n, x=seq(0,a,0.1), T)) #alice tire et annoce le max
  if(M==0.5){
      cpt=cpt+1
    }
  }

 return (cpt/tour)
}
 
x=seq(0, 1, 0.1)
y=lapply(x,P2)
plot(x,y,xlab = "A",ylab = "P[A=a|M=0.5]")

On constate que la plus grande probabilité est atteinte en \(A=0.5\). Alors dans le cas où Alice choisit \(M=0.5\), je lui proposerai \(A=0.5\)

#Q2.5 Dans cette question j’ai repris le premier code de la toute première question on créant un vecteut pour les trois valeurs de M que je dois tester et aussi faire varier le \(\alpha\)

Esp_alpha=c()
alpha=c(0.7,0.5,0.3)
n=2
tour=1000
  for (i in 1:3){
    gain=c() #gains obtenus
    for (j in 1:tour){
      A=runif(1,0,1) 
      X=runif(n,0,A) #Alice tire des nombres dans [0,A]
      M=max(X) # quand elle annonce le max
      rM=M^alpha[i] #la nouvelle expression de r selon cette startégie 
      gain=0
      if(rM<=A){ #toujours même condition
        g=rM-M
      }
      gain=c(gain,g) #on ajoute à chaque fois les gains
    }
   Esp_alpha =c(Esp_alpha,mean(gain)) #esperance des trois valeurs alpha
  }
A
## [1] 0.2195138
Esp_alpha
## [1] 0.03156549 0.07630051 0.08782628

On trouve alors l’espèrance de gain correspondantes au trois valeurs de \(\alpha\) et \(n=2\) \ si je compare ce que j’ai eu en mon tableau Esp_alpha avec la valeur de A je trouve que la meilleure valeur est généralement celle eu par \(\alpha=0.5\) Maintenant je refais avec \(n = 10\) ET em même temps pour d’autres valeurs pour cela je vais rajouter une autre boucle pour changer les valeur de n et stocker par la suite les résultats dans une matrice

Esp_alpha=matrix(nrow=9,ncol=3) #car j'ai des valeurs dans [2,10]
alpha=c(0.7,0.5,0.3)
tour=1000
for (n in 2:10){
  for (i in 1:3){
    gain=c() #gains obtenus
    for (j in 1:tour){
      A=runif(1,0,1) 
      X=runif(n,0,A)
      M=max(X) #Alice tire des nombres dans [0,A] et annonce le max
      rM=M^alpha[i]
      gain=0
      if(rM<=A){
        g=rM-M
      }
      gain=c(gain,g) #on ajoute le gain à cette partie dans le vecteur
    }
   Esp_alpha[n-1,i]=mean(gain) #esperance des trois valeurs alpha
  }
}
A
## [1] 0.5448963
Esp_alpha
##              [,1]       [,2]       [,3]
##  [1,] 0.050260941 0.07365332 0.04726916
##  [2,] 0.043515545 0.10013784 0.14114791
##  [3,] 0.028670269 0.09669478 0.07475189
##  [4,] 0.002747842 0.06742611 0.20840927
##  [5,] 0.061712848 0.08255655 0.05902981
##  [6,] 0.064889827 0.09863862 0.17446092
##  [7,] 0.013234891 0.03374334 0.17714673
##  [8,] 0.050708105 0.02942872 0.07630699
##  [9,] 0.035459539 0.09493312 0.01513602

En observant les valeurs que nous avons eu on costate que pour \(\alpha=0.5\) nous n’avons plus des bonne valeurs pour n plus grand de 3. Alors je crois que cette staratégie est efficace pour des valeur de \(n<=2\).

##Excercice 3

#Q3.6 la probabilité que Bob gange dans ce cas est P(succes)= 1/2 pourquoi ? car si Bob répond toujours “oui” cela signifie qu’il a gagné si Alice met pile, sinon si Alice fait Face Bob perds.Alors,le probabilité de succés de Bob est égale à la probabilité que Alice met Pile. C-à-d qu’il y a une chance sur deux qu’il gagne. voilà un code qui nous calcule cette valeur.

N = 100000 # on lance la pièce N fois
Prop= mean(sample(0:1, N, replace = T))
Prop
## [1] 0.50041

Dont la justification de mon intuition.