Marche aléatoire

Fermé
simsim92 Messages postés 2 Date d'inscription lundi 23 juin 2014 Statut Membre Dernière intervention 23 juin 2014 - 23 juin 2014 à 15:46
 simsim92 - 23 juin 2014 à 20:54
Bonjour,


je suis débutant en c++ et j'ai un exercie
"on souhaiteOn considère ici la partie du plan E = [?1, 1] × [?1, 1].

On souhaite étudier des marches aléatoires dans cet espace, et notamment le temps de sortie de E.

Modélisez la marche aléatoire en C++, de façon à conserver tout l'historique du processus.

Le temps de sortie est donc le nombre d'itérations nécessaires pour que l'on sorte de E.

Une simulation sera composée de nombreuses marches aléatoires (N) avec des paramêtres identiques.

On suppose partir en un point (x, y) de E.

Dans une première version, il n'existe que quatre directions possible celle des quatre plus proches voisins dont le choix

se fait selon la loi uniforme. L'amplitude du déplacement suit une loi gaussienne.

Dans une deuxième version, il y a huit directions possibles uniformément réparties.

Effectuez une simulation de 1000 marches aléatoires en utilisant des gaussiennes N(0, 0.1).

Calculez la moyenne et l'écart type du temps de sortie de l'échantillon."

je ne sais pas parquoi commencer et comment

pourriez vous m'aider s'il vous plait

3 réponses

ElementW Messages postés 4816 Date d'inscription dimanche 12 juin 2011 Statut Contributeur Dernière intervention 5 octobre 2021 1 225
23 juin 2014 à 15:59
'lut, on ne fait pas les exercices à la place des autres, dis nous ce que tu as eu comme idées et/ou comme code déjà commencé pour qu'on puisse t'aider à partir de là. Et à défaut de pouvoir fournir un des deux, zou, au boulot!
0
simsim92 Messages postés 2 Date d'inscription lundi 23 juin 2014 Statut Membre Dernière intervention 23 juin 2014
23 juin 2014 à 16:08
Bonjour
justement je n'arrive pas à démarrer, je ne sais pas par quoi commencer
faut il faire des générateurs aléatoires gaussiens et uniform?
0
ElementW Messages postés 4816 Date d'inscription dimanche 12 juin 2011 Statut Contributeur Dernière intervention 5 octobre 2021 1 225
23 juin 2014 à 16:15
Ça dépend; tu utilises quel compilateur? Si il supporte le C++11, tu as a ta disposition normal_distribution pour la distribution Gaussienne et uniform_int_distribution pour la distribution linéaire.
Sinon, on a seulement le droit à
rand
dont la répartition dépend totalement de l'implémentation, différente selon le système, donc il faudra utiliser Boost, qui possède les même classes que C++11 (d'ailleurs le C++11 est très inspiré de cette librairie).
0
je vous remercie
0