Inscription / Connexion Nouveau Sujet
Niveau énigmes
Partager :

La puce zérophile

Posté par
verdurin
19-12-25 à 20:22

C'est un problème que je me suis posé et que je ne sais pas résoudre.

La puce zérophile se déplace au hasard sur l'ensemble des entiers relatifs. Elle se repose enfin en arrivant à zéro.
À chaque saut elle se dirige vers 0 avec une probabilité 1/2 et dans la direction opposée avec la même probabilité.
Mais quand elle saute vers 0 elle se déplace de k cases (k>1) et d'une case dans la direction opposée.
Ce qui l'amène éventuellement à dépasser 0. Par exemple si k=3 est qu'elle est en -1 elle arrive  en 2 si elle saute vers 0.

Le problème est de trouver en fonction de k et de sa position de départ combien il lui faudra de sauts, en moyenne, pour qu'elle arrive à de reposer en zéro.

Posté par
Imod
re : La puce zérophile 20-12-25 à 11:10

Bonjour Verdurin

Il me semble que posé comme ça le problème est extrêmement complexe . Une première chose à remarquer , on peut tout à fait supposer que l'abscisse de la puce est repérée par un entier naturel car le problème est clairement symétrique par rapport à 0 . Une deuxième chose , les probabilités élémentaires étant toutes les mêmes , il « suffirait » de compter , pour une case donnée , le nombre de trajets pouvant conduire la case initiale à 0 en un nombre donné de pas pour répondre au problème . Mais on tombe très vite sur un casse-tête car les deux mouvements possibles sont différents dans leur forme  et quand l'abscisse augmente le nombre de possibilités explose .

Je suis peut-être trop pessimiste

Imod    

Posté par
carpediem
re : La puce zérophile 20-12-25 à 13:25

salut

si on note s(n) = \pm 1 le signe de n et u_n sa position après le n-ième saut alors on peut peut-être formaliser ainsi :

u_{n + 1} = \left\lbrace\begin{matrix} u_n - s(u_n) k\\ u_n + s(u_n) \end{matrix}\right.

chacun des deux cas ayant lieu avec la même probabilité 1/2

on peut alors écrire un script permettant de simuler la situation ...

car s(n) n'est autre que s(n) = \dfrac n {|n|} pour n non nul

Posté par
verdurin
re : La puce zérophile 20-12-25 à 16:45

Bonsoir,
oui le problème est complexe et on peut se limiter à rn prenant la valeur absolue de (position - k).
J'ai fait quelles simulations avec différentes valeurs de k et différentes positions de départ.

Pour k=2 on trouve, pour les départs de 1 à 15
E1=8.5,  E2=6.6,  E3=11.1,  E4=11.4,  E5=14.3,  E6=15.6,  E7=18.2,  E8=20.0,  E9= 22.39, E10=24.2,  E11=25.9,  E12=27.9,  E13=30.1, E14=31.9,  E15=33.8
La précision est de l'ordre de 0,2 pour les premiers tirages.

Posté par
Imod
re : La puce zérophile 20-12-25 à 18:38

Pour k donné j'ai regardé dans l'autre sens comment remonter vers l'ensemble des entiers . Par exemple avec k=5 , on a une chaine simple 1->2>3>4>... qu'il faut combiner avec ...->15->10->5->0 mais aussi des éléments perturbateurs 1->4 ou 6->1 , 7->2 qui vont générer de nouvelles possibilités . En bref c'est un véritable capharnaüm , mais le problème est amusant et il y a peut-être des questions plus simples qui peuvent être intéressantes . J'en propose deux avec k et n donnés :

1°) Quel est le plus petit entier pouvant arriver à 0 en n étapes ( exactement ) ?

2°) Quel est le plus petit entier au delà duquel on ne pourra jamais atteindre 0 en n étapes ( ou moins ) ?

Je sais que je détourne un peu la question initiale et on peut ne pas s'y intéresser , on peut aussi ajouter ses propres interrogations

Imod

Posté par
candide2
re : La puce zérophile 20-12-25 à 19:28

Bonjour,

@verdurin,

Tu écris : "et quand l'abscisse augmente le nombre de possibilités explose . "

Oui mais le nombre de sauts moyens ne grandit pas très vite.

A partir de tes exemples : k = 2
Le saut "moyen" est (-2 * 1/2 + 1 * 1/2) = -0,5

Donc par exemple en partant de la case 100, on revient vers 0 en 200 sauts et puis on se retrouve dans les cases proches de 0 et donc sur le début de ta liste
Donc E100 doit être un peu plus grand que 200 ...et une simulation informatique sur 1000000 tests répétés donnent E100 = 204 en moyenne.

En recommençant pour E50, on estime donc qu'il doit être un peu plus grand que 2*50 = 100 ...et une simulation informatique sur 1000000 tests répétés donnent E50 = 204 en moyenne.

Il n'empêche que trouver une "formule" mathématique pour le nombre moyens de sauts pour toutes cases de départ et toutes valeur de k semble bien ardu.




Posté par
candide2
re : La puce zérophile 20-12-25 à 19:29

Zut erreur de copier-coller, dans mon message précédent, lire :

En recommençant pour E50, on estime donc qu'il doit être un peu plus grand que 2*50 = 100 ...et une simulation informatique sur 1000000 tests répétés donnent E50 = 104 en moyenne.

Posté par
verdurin
re : La puce zérophile 20-12-25 à 21:35

Bonsoir candide2.
Je n'ai jamais écris « quand l'abscisse augmente le nombre de possibilités explose » bien que se soit évidement vrai.
Si on part de la case n avec n grand devant k il est clair que l'on a le résultat que tu signales : l'espérance est à peu près 2n/(k-1)+constante.

On peut aussi remarquer que l'on peut calculer toutes les espérances pour k donné à partir de E(k) et E(k+1).
C'est ce qui me laisse espérer que le problème est résoluble.

Posté par
jandri Correcteur
re : La puce zérophile 20-12-25 à 22:43

Bonjour,
je me suis intéressé d'abord au cas k=2.
Je note e_n l'espérance du nombre de sauts pour atteindre 0 en partant de n.
A l'aide d'une relation de récurrence on peut calculer e_n en fonction de n et de e_1 :
e_n=2n+4+(e_1-6)F_n-4F_{n-1}(F_n) est la suite de Fibonacci (avec F_1=F_2=1).

Il reste à calculer e_1 mais si on veut e_n\approx 2n+4 il faut poser e_1=4+2\sqrt5.

Cela donne finalement pour le cas k=2 : e_n=2n+4-4\left(\dfrac{1-\sqrt5}2\right)^n

Posté par
verdurin
re : La puce zérophile 21-12-25 à 16:49

Bravo jandri !
En te lisant j'ai vu que j'avais raté que E(k+1) s'exprime en fonction de E(k).

Pour les valeurs de k plus grande que 2 on va certainement avoir une formule du même genre, mais il faut résoudre x^{k+1}=2x^k-1 qui a bien 1 comme racine évidente mais dont les autres racines semble compliquées.

Merci.

Posté par
candide2
re : La puce zérophile 21-12-25 à 19:27

Bonjour,

x^{k+1} = 2.x^k - 1

pour k >= 2 :

1 solution x = 1
1 solution comprise dans ]2k/(k+1) ; 2[ qu'on peut trouver par approximations successives

Et si k est pair seulement, une 3éme solution comprise dans ]-1 ; -0,6[

Posté par
verdurin
re : La puce zérophile 21-12-25 à 21:11

Bonsoir candide2.
Les seules solutions qui nous intéressent ont un module strictement inférieur à 1.
Le raisonnement que tu as donné montre que la croissance de l'espérance  n'est pas exponentielle.
Mais on ne peut pas négliger les racines complexes.
Il suffit de regarder le cas k=3 pour s'en convaincre.

Posté par
jandri Correcteur
re : La puce zérophile 21-12-25 à 21:13

Dans le cas général on a x^{k+1}-2x^k+1=(x-1)(x^k-x^{k-1}-\dots-1) polynôme qui a pour racines 1 et les r_1,r_2,\dots,r_k avec r_1>1 et |r_i|<1 pour i\neq1 (ces r_i sont des complexes).

On en déduit e_n=\dfrac{2n}{k-1}+C+\sum_{i=1}^kc_ir_i^n
Comme e_n est de l'ordre de n on a nécessairement c_1=0 d'où e_n=\dfrac{2n}{k-1}+C+u_n avec \lim u_n=0.

Dans le cas k=3 on a r_1\approx 1,839286755 et C=r_1^2+r_1+2\approx 7,222262523

De plus |r_2|=|r_3|=\dfrac1{\sqrt{r_1}}\approx 0,74 donc u_n tend assez rapidement vers 0.



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !