Algorithme pour générer une loi Béta

Discutez d'informatique ici !
ThT12
Messages: 7
Enregistré le: 25 Fév 2009, 12:10

Algorithme pour générer une loi Béta

par ThT12 » 25 Fév 2009, 12:21

Bonjour à tous !

Voilà mon problème : J'ai besoin d'écrire un script (C++) qui me permette de générer une loi Beta(a,b). Après quelque recherche j'ai trouvé un méthode simple qui fonctionne bien :

il suffit de générer 2 loi X1=gamma(a,1) et X2=gamma(b,1) et ainsi en faisant X1/(X1+X2) j'obtiens un nombre tirée dans la loi Beta(a,b)

Et pour générer les loi gamma(x,1) il suffit de faire le log de x fois le produit d'une loi uniforme. C'est donc impect tant que a et b sont supérieur à 1 !

En gros tout mon soucie est là a et b doivent être supérieur à 1 : moi je voudrais générer une loi beta(0.5,0.5), par exemple. Dans ce cas l'algorithme ci dessus ne fonctionne plus du tout !

J'ai beau eu chercher j'ai rien trouvé! Quelqu'un se serait-il déjà penché sur le problème et/ou à une solution ?

Merci beaucoup! :we:
ThT12

Edit : La méthode de rejet peut-elle être utiliser dans ce cas ?



ThT12
Messages: 7
Enregistré le: 25 Fév 2009, 12:10

par ThT12 » 26 Fév 2009, 13:43

Personne n'a une petite idée ?

Merci! :zen:

ThT12
Messages: 7
Enregistré le: 25 Fév 2009, 12:10

par ThT12 » 27 Fév 2009, 13:10

Bon, finalement la méthode du rejet est applicable et cela fonctionne !

Merci à ceux qui on eu la patience de me lire ;)

ThT12

 

Retourner vers ϟ Informatique

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 13 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite