Géométrie - Répartition aléatoire de points dans rectangle
Réponses à toutes vos questions après le Bac (Fac, Prépa, etc.)
-
pilatchou
- Messages: 2
- Enregistré le: 29 Oct 2010, 19:48
-
par pilatchou » 29 Oct 2010, 20:29
Bonjour,
Soit ax et ay 2 nombres aléatoire tel que 0<=ax<1 et 0<=ay<1;
Et soit ABCD un rectangle.
A l'aide de ax et ay, je souhaite placer aléatoirement un point P à l'intérieur du rectangle.
Jusque la, pas de problème :
xP=ax*(largeur)+xA
yP=ay*(hauteur)+yA
Mais ca se complique...
Si je répète l'opération, je souhaite que les points soient répartis aléatoirement dans le rectangle ; mais qu'il y ait une plus forte concentration au centre.
C'est à dire qu'il doit y en avoir beaucoup au centre, puis de mois en mois, plus on s'éloigne du centre.
Et j'ai beau me creuser la tête, je n'ai pas pour l'instant trouvé de méthode fiable.
Quelqu'un pourrait-il m'aider SVP?
Une idée ? Un conseil ?
D'avance, merci
-
Pythales
- Habitué(e)
- Messages: 1162
- Enregistré le: 05 Déc 2005, 14:54
-
par Pythales » 29 Oct 2010, 21:02
Sans trop réfléchir, peut-être en posant
^3+\frac12)
et en appliquant tes formules avec

au lieu de

-
Sylviel
- Membre Transcendant
- Messages: 6466
- Enregistré le: 20 Jan 2010, 12:00
-
par Sylviel » 29 Oct 2010, 21:08
il suffit de concentrer ton tirage aléatoire plutôt que de le faire uniforme. Par défaut une répartition gaussienne (attention à tronquer les extrêmités) me semble le plus simple à implémenter.
Merci de répondre aux questions posées, ce sont des indications pour vous aider à résoudre vos exercices.
-
Pythales
- Habitué(e)
- Messages: 1162
- Enregistré le: 05 Déc 2005, 14:54
-
par Pythales » 29 Oct 2010, 22:20
Plus généralement, si un nombre

varie aléatoirement entre

et

, on peut introduire une concentration autour du milieu (

) en associant à chaque valeur de

la valeur
La concentration est d'autant plus grande que

est élevé.
-
pilatchou
- Messages: 2
- Enregistré le: 29 Oct 2010, 19:48
-
par pilatchou » 30 Oct 2010, 13:10
Merci à tous les deux pous vos réponses ;
J'ai utilisé la méthode proposée par Sylviel, c'est à dire que j'ai implémenté une répartition gaussienne, en tronquant les extrémités.
Celà fonctionne à merveille et ca a été facile à réaliser en JAVA à l'aide de Random.nextGaussian()
Merci; bonne journée!
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 47 invités