IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Probabilités Discussion :

Simulation de variables aléatoires de loi donnée


Sujet :

Probabilités

  1. #1
    Membre averti
    Inscrit en
    Septembre 2006
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 51
    Par défaut Simulation de variables aléatoires de loi donnée
    Je suis novice et voici mon problème : je cherche à simuler sous SAS (sinon sous Matlab) plusieurs variables aléatoires indépendantes (vaiid) de loi par exemple :

    P(X<0)=0
    P(X=0)=0.3
    P(0<X<=0.25)=0.4
    P(0.25<X<=0.5)=0.1
    P(0.5<X<=0.75)=0.2
    P(X>0.75)=0

    quel serait le programme?
    Merci d'avance

  2. #2
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 317
    Par défaut
    Je déplace la discussion dans le forum Algorithme pour l'instant

  3. #3
    Rédacteur
    Avatar de Zavonen
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 772
    Détails du profil
    Informations personnelles :
    Âge : 78
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 772
    Par défaut
    Je suppose que tu disposes d'un générateur uniforme d'entiers paramètrable (genre randint), et d'un générateur de flottants uniforme paramétrable sur un intervalle [a,b] qui s'obtient facilement à partir d'un flottant uniforme sur [0,1]
    Tu procèdes ainsi.
    Générer un entier entre 0 et 1000
    si cet entier est <300 retourner la valeur 0
    si cet entier est entre 300 et 700 retourner un flottant aléatoire uniforme sur [0,25]
    si cet entier est entre 700 et 800 retourner un flottant aléatoire uniforme sur [0.25,0.50]
    Si cet entier est entre 800 et 1000 retourner un flottant aléatoire uniforme sur [0.5, 0.75]
    Au lieu de 1000 tu peux évidemment prendre 10000 100000
    Ce qu'on trouve est plus important que ce qu'on cherche.
    Maths de base pour les nuls (et les autres...)

  4. #4
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Par défaut
    Pour paraphraser maître Zavonen, tu utilises la fonction de répartition comme convertisseur.

    La fonction de répartition à la bonne idée d'être croissante et comprise entre 0 et 1. Tu tires alors une valeur aléatoire uniforme "a" dans [0,1] et tu cherches le plus grand intervalle [x0,x1] telle que R(x0)=R(x1)=a. Tu prend alors une valeurs de x dans cet intervalle.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    P(X<0)=0 -------------> 0
    P(X=0)=0.3 -----------> 0.3
    P(0<X<=0.25)=0.4 -----> 0.7
    P(0.25<X<=0.5)=0.1 ---> 0.8
    P(0.5<X<=0.75)=0.2 ---> 1.0
    P(X>0.75)=0 ----------> 1.0
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    [0,0.3]   -> X=0
    ]0.3,0.7] -> 0<X<=0.25
    ]0.7,0.8] -> 0.25<X<=0.5
    ]0.8,1.0] -> 0.5<X<=0.75
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

Discussions similaires

  1. Simulation de Variables Aléatoires - SAS
    Par alexis0587 dans le forum SAS STAT
    Réponses: 8
    Dernier message: 21/06/2012, 13h30
  2. Simuler un tirage aléatoire sur une loi exponentielle
    Par lobarth dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 27/06/2008, 10h41
  3. Réponses: 4
    Dernier message: 18/04/2007, 11h22
  4. Réponses: 4
    Dernier message: 18/01/2007, 14h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo