#------------DM ALI EL MUFTI------------------#
#Devoir Maison fait après discussion avec Rim El Jraidi, William Nelson, Gloria Nguena, Gabriel Mannisadjian
set.seed(6584)
#Question 1.1
#D'après les tests que j'ai pu faire, plus n est grand, plus on a de chance que
#que la moyenne soit proche de a
options("digits" = 2)
a = runif(1,1,10000)
n =100
p= 1000
X = runif(n,1,a)
M =replicate(p, max(runif(n,1,a)),1)
Moyenne1 = mean(M)
variance = var(M)
Moyenne1
## [1] 5376
#Question 1.2
#Formule générale pour les test :
a1 = trunc(runif(1,1,10000))
n1 =trunc(runif(1,2,10000))
p1= 1000
X1 = runif(n1,0,a1)
M1 =replicate(p1, (sum(X1))*(2/n1),1)
Moyenne2 = mean(M1)
Moyenne2
## [1] 7030
#Pour A = 10
#Pour N =100
a2 = 10
n2 =100
p2= 1000
X2 = runif(n2,1,a2)
M2 =replicate(p2, (sum(runif(n2,1,a2)))*(2/n2),1)
Moyenne2 = mean(M2)
variance2 = var(M2)
Moyenne2
## [1] 11
variance2
## [1] 0.26
#Pour A = 100
#Pour N = 2000
a3 = 100
n3 =2000
p3= 1000
X3 = runif(n3,1,a3)
M3 =replicate(p3, (sum(X3))*(2/n3),1)
Moyenne2 = mean(M3)
Moyenne2
## [1] 101
#Pour A = 1000
#Pour N = 10000
a4 = 1000
n4 =10000
p4= 1000
X4 = runif(n4,1,a4)
M4 =replicate(p, (sum(X4))*(2/n4),1)
Moyenne2 = mean(M4)
Moyenne2
## [1] 1003
## Justification
#D'après les trois tests précédemment fait,
#on remarque que la moyenne se rapproche énormement de la valeur de a.
#Notre hypothese sera donc, a = Moyenne2
#Afin de pouvoir comparer les deux formules utilisées,
#nous allons comparer les variances de chacunes.
#pour la premiere, nous avons une variance de : 2895
#pour la deuxieme, nous avons une variance de : 0.2
#Sachant que la variance de la deuxieme est plus petite, alors la
#deuxieme option est la meilleure, même si la valeur de la première variance
#parait grotesque
variance
## [1] 2895
variance2
## [1] 0.26
#Exercice 2
#Question 2.3
#D'après moi, Bob va probablement gagner très peu d'argent
#car il ne prend pas énormement de risque en ne prenant que 0,1 de a
#en soit sa stratégie se rapporche plus d'une sorte de "peu de risque
#pour peu de gain"
N= 100
Gains = sample(0, N, replace = T)
Resultats = sample(0,N,replace = T)
for (i in 1:N){
a = runif(1,0,1)
n =10
X = runif(n,0,a)
M = max(X)
rM = 1.1* M
if(a - rM > 0){
Gains[i] = a - rM
Resultats[i] = 1
}
}
G = mean(Gains)
R = mean(Resultats)
G
## [1] 0.011
#D'après les résultats que nous avons obtenu, nous remarquons que
#Bob va gagner très peu d'argent comme ce que j'avais proposé dans
#l'hypothèse
#Question 2.4
#Afin de pouvoir faire cette question, j'ai pensé que la manière la plus optimisée
#était de faire deux for imbriqués et de pouvoir remplir chaque donnée
#de la matrice avec une moyenne de 1000 lancés pour savoir combien de fois
#la condition de réussite allait s'appliquer pour chacune des possibilité
n = 3
k = 1
Mat = matrix(nrow = 10, ncol = 10)
for(i in 1:10){
for(j in 1:10){
Results = sample(0,1000,replace = T)
for(p in 1:1000){
a=sample(x=(0:10)/10, 1);
X=sample(x=(0:(10*a))/10, n, replace=TRUE)
M=max(X);
if(i/10 == a && j/10 == M)
Results[k] = 1
k = k+1
}
k =0
Mat[i,j] = mean(Results)
}
}
Mat
## [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
## [1,] 0.072 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
## [2,] 0.024 0.055 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
## [3,] 0.008 0.021 0.054 0.000 0.000 0.000 0.000 0.000 0.000 0.000
## [4,] 0.008 0.008 0.029 0.033 0.000 0.000 0.000 0.000 0.000 0.000
## [5,] 0.001 0.010 0.011 0.028 0.051 0.000 0.000 0.000 0.000 0.000
## [6,] 0.001 0.006 0.014 0.011 0.024 0.024 0.000 0.000 0.000 0.000
## [7,] 0.002 0.003 0.010 0.020 0.025 0.020 0.034 0.000 0.000 0.000
## [8,] 0.000 0.003 0.005 0.007 0.009 0.016 0.021 0.037 0.000 0.000
## [9,] 0.000 0.000 0.006 0.005 0.009 0.015 0.017 0.030 0.025 0.000
## [10,] 0.000 0.001 0.003 0.002 0.005 0.012 0.011 0.014 0.017 0.018
#On sait que P(A|B) = P(A inter B)/ P(B)
#Sachant que sur la matrice que nous avons généré, les abscisses
#representent M et les ordonnées A, on peut directement lire sur
#la matrice que la valeur est de a = 0,5
#Le gros problème de cette representation matricielle est la
#fioriture de la matrice, en effet, nous n'utilisons que la
#moitié de la matrice car M ne peut pas dépasser A.
#Question 2.5
#D'après moi ce n'est pas vraiment la meilleure stratégie à avoir,
#et cela même si les bornes sont correctes car contrairement à la
#technique du "peu de risque peu de gains" celle ci prend énormement
#de risque a mon avis ( Avis donné sans avoir fait les calculs au préalable)
Alpha = 0.3
Alpha1 = 0.5
Alpha2 = 0.7
n =2
#Pour cette question nous allons tout d'abbord définir une fonction
TALPHA = function(alpha,n){
Gains = sample(0, N, replace = T)
Resultats = sample(0,N,replace = T)
a = runif(1,0,1)
X = runif(n,0,a)
M = max(X)
rM = M^(Alpha2)
if(a - rM > 0){
Gains = a - rM
return(Gains)
}
else return(0)
}
resultat = mean(replicate(1000,TALPHA(Alpha,n)))
resultat1 = mean(replicate(1000,TALPHA(Alpha1,n)))
resultat2 = mean(replicate(1000,TALPHA(Alpha2,n)))
resultat
## [1] 0.089
resultat1
## [1] 0.096
resultat2
## [1] 0.087
n=10
resultat = mean(replicate(1000,TALPHA(Alpha,n)))
resultat1 = mean(replicate(1000,TALPHA(Alpha1,n)))
resultat2 = mean(replicate(1000,TALPHA(Alpha2,n)))
resultat
## [1] 0.012
resultat1
## [1] 0.012
resultat2
## [1] 0.011
#D'après les résultats que j'ai obtenu, alpha = 0,5 est le meilleur
#alpha que l'on peut avoir
#D'après moi, plus le N est grand, moins on aura de gains
#Pour n = 10 il s'agit de alpha = 0 ,3
#Exercice 3
#Question 3.6
#Si BOB répond oui tout le temps sa probabilité de gagner
#sera de 1/2, on peut d'ailleurs schématiser cela suivant un
#arbre : Soit Alice donne la plus grande soit elle donne la plus petite
#Dans ces deux issues possibles Bob dit soit non soit oui, donc on se retrouve avec
#1 chance sur deux de réussite pour bob.