Journal : Ma vie] Le squash et markov
Posté par alenvers () le 29 septembre 2006
Puisque c'est la mode de raconter sa vie. J'y vais de ma couche ;-)
Hier, je m'ennuyais en attendant le soir et l'interclub de squash et je me posais depuis un certain temps un question d'ordre théorique vis-à-vis du squash.
Un petit résumé des règles (européennes) de calcul des points du squash :
- On gagne un point uniquement quand on a le service sinon le service change de joueur
- On joue jusqu'à 9 (excepté pour le cas ci dessous)
- si on arrive à 8-8 le joueur qui n'a pas le service choisi soit de jouer jusqu'à 9 ou 10 points (il n'y a pas de règles de 2 points d'écart comme au ping-pong)
Ma question étant vaut-il mieux choisir 9 ou 10 points à 8-8 ?
Pour calculer tout ça, je me suis dit ça c'est un truc pour Mr Markov ( http://en.wikipedia.org/wiki/Andrey_Markov ) et ses fameuses chaînes :/ Hé oui, je m'ennuyais vraiment. J'ai ajouté une hypothèse qui me semblait plausibe :
- Un joueur avec le service à 60% de chance de gagner (sans 40%)
Modélisons tout ça sous la forme d'un graphe, les états représentants le tuple (score,service) noté par
Pour le cas, je vais jusqu'à 9, nous avons :
Numérotons les états,
3) 9S-8
1) 8S-8
2) 8-8S
4) 8-9S
On obtiens donc la matrice de transition ( http://fr.wikipedia.org/wiki/Cha%C3%AEne_de_Markov ) suivante :
En partant de l'état 1, on a le vecteur initial :
Voyons, donc ce que devient ce vecteur en lui appliquant beaucoup de fois A (Pas envie d'étudier ça plus précisément, c'est fatiguant les valeurs propres, jordan et tout ça), c-à-d :
A^n X_0 = X_n
pour n grand.
Oh, miracle cela semble converger (bien oui semble, pas en vie de le prouver) :
A^n X_0 =~ (0 0 0,714 0,286)^T <--- ^T indique le vecteur transposé
On a donc ~29% de chance de gagner pour le cas jusqu'à 9.
Si on fait la même chose pour le cas 10 (le graphe est plus grand donc on va pas détailler, on obtient ~37% de chance de gagner.
La conclusion, il vaut mieux toujours choisir les 2 points.
PS: Désolé pour les < >, ils semblent complètements buggués
PS2: Pas de bol, je me suis fait écrasé hier au squash, donc pas de mise en pratique, je me suis retrouvé contre un ancien joueur (anciennement bien classé) qui recommence
PS3: Mon calcul est sûrement complètement faut car markov c'est très loin dans ma tête
Hier, je m'ennuyais en attendant le soir et l'interclub de squash et je me posais depuis un certain temps un question d'ordre théorique vis-à-vis du squash.
Un petit résumé des règles (européennes) de calcul des points du squash :
- On gagne un point uniquement quand on a le service sinon le service change de joueur
- On joue jusqu'à 9 (excepté pour le cas ci dessous)
- si on arrive à 8-8 le joueur qui n'a pas le service choisi soit de jouer jusqu'à 9 ou 10 points (il n'y a pas de règles de 2 points d'écart comme au ping-pong)
Ma question étant vaut-il mieux choisir 9 ou 10 points à 8-8 ?
Pour calculer tout ça, je me suis dit ça c'est un truc pour Mr Markov ( http://en.wikipedia.org/wiki/Andrey_Markov ) et ses fameuses chaînes :/ Hé oui, je m'ennuyais vraiment. J'ai ajouté une hypothèse qui me semblait plausibe :
- Un joueur avec le service à 60% de chance de gagner (sans 40%)
Modélisons tout ça sous la forme d'un graphe, les états représentants le tuple (score,service) noté par
8S-8 = score 8 à 8 service au joueur 1
Pour le cas, je vais jusqu'à 9, nous avons :
0,4
0,6 /---------->---------\ 0,6
9S-8 ----------<--------- 8S-8 | | 8-8S ---------->--------- 8-9S
/ \ \----------<---------/ / \
->- 0,4 ->-
1 1
Numérotons les états,
3) 9S-8
1) 8S-8
2) 8-8S
4) 8-9S
On obtiens donc la matrice de transition ( http://fr.wikipedia.org/wiki/Cha%C3%AEne_de_Markov ) suivante :
| 0 0,4 0 0 |
| 0,4 0 0 0 |
| 0,6 0 1 0 | = A
| 0 0,4 0 1 |
En partant de l'état 1, on a le vecteur initial :
| 1 |
| 0 |
| 0 | = X_0
| 0 |
Voyons, donc ce que devient ce vecteur en lui appliquant beaucoup de fois A (Pas envie d'étudier ça plus précisément, c'est fatiguant les valeurs propres, jordan et tout ça), c-à-d :
A^n X_0 = X_n
pour n grand.
Oh, miracle cela semble converger (bien oui semble, pas en vie de le prouver) :
A^n X_0 =~ (0 0 0,714 0,286)^T <--- ^T indique le vecteur transposé
On a donc ~29% de chance de gagner pour le cas jusqu'à 9.
Si on fait la même chose pour le cas 10 (le graphe est plus grand donc on va pas détailler, on obtient ~37% de chance de gagner.
La conclusion, il vaut mieux toujours choisir les 2 points.
PS: Désolé pour les < >, ils semblent complètements buggués
PS2: Pas de bol, je me suis fait écrasé hier au squash, donc pas de mise en pratique, je me suis retrouvé contre un ancien joueur (anciennement bien classé) qui recommence
PS3: Mon calcul est sûrement complètement faut car markov c'est très loin dans ma tête
> Lire le journal (21 commentaires, moyenne: 2,2).
Vous avez demandé le commentaire #759907.



Démonstration
Si on joue jusqu'à 9, on trouve que le joueur qui a le service a la probabilité de gagner : 0,6+0,4^2x0,6+0,4^4*0,6+... soit après calcul 5/7, ce qui laisse 2/7 pour l'autre joueur, ce qui fait bien environ 29%.
Si on joue jusqu'à 10, le calcul est un peu plus chanmé, mais on arrive à 215/343 et 128/343 ce qui fait bien environ 37,3%, et qui confirme tes conclusions.
Reste maintenant à généraliser ça à d'autres hypothèses de départ que 40-60, pour voir si par hasard, dans certains cas, il ne serait pas plus avantageux de choisir de jouer jusqu'à 9.
[^]Re: Démonstration
Effectivement, il serait intéressant de faire la totalité de manière symbolique. Probabilité, P en livrant et q = 1 - p sans. En étudiant, la fonction en p, on doit arriver à déterminer l'influence de cette hypothèse.
[^]Re: Démonstration
Bon, voila. Si on appelle x la probabilité que le joueur qui n'a pas le service gagne le point (dans ton exemple, x=0,4) : on a 0<x<1 (si x=0 ou 1, le problème se règle facilement). La probabilité que le joueur qui n'est pas au service gagne le jeu s'il décide d'aller jusqu'à 9 est x/(1+x) (dans ton exemple cela donne 2/7). S'il décide d'aller jusqu'à 10, cette probabilité devient x(2+x+x^2)/(1+x)^3 (ce qui donne 128/343 dans ton exemple). On compare ces deux fonctions assez facilement, et il apparaît qu'il est toujours préférable pour le joueur qui n'a pas le service d'aller jusqu'à 10, quelle que soit la valeur de x.
Généralisation suivante : que se passe t-il si la valeur de x n'est pas la même pour les deux joueurs (il faudrait donc un x et un y); mais là je crois que je vais avoir la flemme.
[^]Re: Démonstration
>Généralisation suivante : que se passe t-il si la valeur de x n'est pas
>la même pour les deux joueurs (il faudrait donc un x et un y);
J'y avais pensé mais ça ne marche pas car
Si x gagne 60% de ses services alors y gagne 40% de ses retours
Si x gagne 40% de ses retours alors y gagne 60% de ses services
Les variables sont liées. Je me suis fait avoir également. C'est évident quand on sort des math et qu'on l'interprète intuitivement par : mon pourcentage de réussite au service dépend de mon adversaire
[^]Re: Démonstration
Non, il existe bien 2 variables indépendantes : le taux de réussite du joueur x quand il sert, et son taux de réussite quand il reçoit. Dans ton exemple, x pourrait très bien être plus fort que y : il pourrait alors gagner 60% des points quand il sert, mais aussi 50% des points quand il reçoit.
Mais bon, ces 2 valeurs ne peuvent pas être très différentes, sans quoi la probabilité d'arriver au score de 8-8 devient très faible.
[^]Re: Démonstration
C'est le seul cas où il est intéressant de demander à ce que le jeu s'arrête à 9 : si tu es beaucoup plus faible que l'adversaire. (je sais dans ce cas là tu te retrouve rarement à 8-8 mais bon ... on peut imaginer que tu te sois tordu la cheville pendant le match)
si ta probabilité de gagner contre l'adversaire (au service et en réception) est de 0.2
à ce moment là tu as plus de chances de gagner en s'arrêtant à 9.
je laisse la démonstration à d'autres ;)
conclusion, si tu es blessé à la fin du match. choisis 9 tu as plus de chances de gagner.