Maths : tirer un nombre alétoire selon une loi expo ou poisso

Maths : tirer un nombre alétoire selon une loi expo ou poisso - Sciences - Discussions

Marsh Posté le 27-04-2006 à 20:52:35    

Je sèche un peu sur une question de programmation qui est liée aux maths. Tirer un nombre aléatoirement dans un intervalle c'est tirer un nombre selon une loi uniforme. Jusque là tout va bien.
Mais tirer un nombre selon une loi exponentielle ou selon une loi de poisson je ne vois pas. Je sais ce qu'est une loi exponentielle et une loi de poisson mais je ne vois pas comment on peut tirer un nombre alétoirement à partir de ces lois. Pour exponentielle j'ai un programme de paramètre M qui retourne  
 

Code :
  1. -log((rand()/RAND_MAX)*M)

.
 
Je ne comprends pas pourquoi on fait ça. rand()/RAND_MAX retourne une probabilité entre 0 et 1, et après ... ?

Reply

Marsh Posté le 27-04-2006 à 20:52:35   

Reply

Marsh Posté le 27-04-2006 à 20:54:51    

poste dans le topic maths ;)
 
sinon, pour ton soucis, il faut simuler la loi de poisson a partir d'une loi uniforme (rand()/rand_max)
pour ce faire, on inverse la fonction de repartition (cet inverse va de [0,1] dans IR du coup), et on applique le tirage de loi uniforme en entrée de cet inverse.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed