Les posteurs les plus actifs de la semaine
lili33
 
gg
 
Eric Wajnberg
 
FannyM
 
stdenis90
 
solenef
 


Exercice base sur des probabilites

Aller en bas

Exercice base sur des probabilites

Message par Philae le Lun 5 Fév 2018 - 14:56

Bonjour a tous,

Dans le cadre d'un projet personnel, j'ai besoin de pouvoir simuler de facon assez simplifiee un resultat d'un match de basket entre deux equipes E1 et E2: en ayant en entree trois parametres plus l'intervention du hasard:

1/ Chacune des deux equipes ne peut marquer qu' un nombre de points variant entre 50 et 110

2/ La somme cumulee des points des deux equipes ne peut varier qu' entre 120 et 200 avec une moyenne statistique a 160

3/ Considerant qu'une des deux equipes et plus forte que l'autre elle a une probabilite de l'emporter plus importante, mettons pour l'exemple que l'equipe E1 a p= 55% de chances de gagner, et l'equipe E2 1-p= 45%

En termes partiques ca veut dire que: appelons v1 le nombre de points de E1 et v2 celui de E2

1/ v1 est dans la tranche{50,110}
v2 est dans la tranche{50,110}

2/ v1 + v2 est dans la tranche {120,200}

3/ v1 > v2 dans 55% des simulations.
v2 > v1 dans 45% des simulations.
En cas d'egalite v1 = v2 le match est rejoue.

J'ai essaye de mettre en place un algorithme qui me simulerait un resultat de ce type que j'expose ci-dessous:

Algorithme a écrit:
Debut Algorithme

p = 0.55 //probabilite vis a vis de v1 = 55%
r1 = nombre aleatoire: soit 1 soit 2 //  si 1 je calcule v1 avant v2, sinon je calcule v2 avant v1
r2 = nombre aleatoire entre 0 et 1

Si r1 = 1//- je calcule v1 d'abord
...Si r2 < p
......v1 est un nombre choisit aleatoirement entre 80 et 110
...Sinon
......v1 est un nombre choisit aleatoirment entre 50 et 80
...Fin Si

// Ensuite, je calcule v2 en respectant le fait que :
// v2 + v1 soit compris entre 120 et 200
// v2 soit compris entre 50 et 110

v2 est un nombre choisit aleatoirement entre Max(50,120 - v1) et  Min(110,200-v1)

Sinon // ca signifie que r1 = 2 donc je calcule v2 d'abord avec la probabilite 1-p
...Si r2 < 1-p
......v2 est un nombre choisit aleatoirement entre 80 et 110
...Sinon
......v2 est un nombre choisit aleatoirment entre 50 et 80
...Fin Si

// Ensuite, je calcule v1 en respectant le fait que :
// v2 + v1 soit compris entre 120 et 200
// v1 soit compris entre 50 et 110

v1 est un nombre choisit aleatoirement entre Max(50,120 - v2) et  Min(110,200-v2)

Fin Algorithme

J'ai implemente cet algorithme en vba en utilisant la fonction rnd() pour les nombres aleatoires, puis j'ai fais une boucle pour creer 1.000.000 simulations.
Lorsque p=0.50 ca marche correctement, sur les 1.000.000 cas l'equipe 1 a gagne 50.01% des cas (v1 > v2 dans 50.01% des cas, apres suppression des cas v1=v2)

En revanche plus on s'eloigne des 50% plus l'ecart entre la probabilite p donnee en entree et la realite sur les 1.000.000 simulations est importante.
J'ai realise l'exercice avec p = 0.0723 (ce qui signifie que v1 devrait etre superieur a v2 dans seulemnt 7.23% des cas) et je me retrouve avec l'equipe 1 gagnant 19% des duels...

Pourriez-vous m'aider a comprendre ou peut etre mon erreur dans mon algo qui expliquerait cet ecart?
Merci d'avance

Philae

Nombre de messages : 1
Date d'inscription : 05/02/2018

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum