poisson

poisson — Générateur de nombres aléatoires de distribution de Poisson (valeurs positives seulement).

Description

Générateur de nombres aléatoires de distribution de Poisson (valeurs positives seulement). C'est un générateur de bruit de classe x.

Syntaxe

ares poisson klambda
ires poisson klambda
kres poisson klambda

Exécution

ares, kres, ires - nombre d'évènements se produisant (toujours un entier).

klambda - le nombre attendu d'évènements par intervalle d'échantillonnage.

Adapté de Wikipédia :

En théorie des probabilités et en statistiques, la distribution de Poisson est une distribution de probabilité discrète. Elle exprime la probabilité d'apparition d'un certain nombre d'évènements pendant une période de temps fixée si ces évènements se produisent avec un taux moyen connu et indépendamment du temps écoulé depuis le dernier évènement.

La distribution de Poisson décrivant la probabilité qu'il y ait exactement k évènements (k étant un nombre non négatif, k = 0, 1, 2, ...) est :

[L'équation de la distribution de Poisson.]

où :

  • λ est un nombre réel positif, égal au nombre attendu d'évènements se produisant durant l'intervalle donné. Par exemple, si les évènements se produisent en moyenne toutes les 4 minutes, et que l'on est intéressé par le nombre d'évènements se produisant dans un intervalle de 10 minutes, on utilisera comme modèle une distribution de Poisson avec λ = 10/4 = 2,5. Ce paramètre se nomme klambda dans les opcodes poisson.
  • k fait référence au nombre de i-, k- ou a- périodes écoulées.

La distribution de Poisson apparaît aussi avec les processus de Poisson. Elle s'applique à différents phénomènes de nature discrète (c-à-d, ceux qui peuvent se produire 0, 1, 2, 3, ... fois durant une période de temps donnée ou dans un espace donné) chaque fois que la probabilité du phénomène se produisant est constante dans le temps ou dans l'espace. Parmi les exemples qui peuvent être modélisés par une distribution de Poisson, on trouve :

  • Le nombre d'automobiles passant devant un repère sur une route (suffisamment éloigné des feux de circulation) pendant un intervalle de temps donné.
  • Le nombre de fautes de frappe que l'on fait lorsque l'on tape une page.
  • Le nombre d'appels par minute dans un centre d'appel téléphonique.
  • Le nombre d'accès par minute à un serveur web.
  • Le nombre d'animaux écrasés par unité de longueur sur une route.
  • Le nombre de mutations dans un brin d'ADN après une certaine quantité de radiations.
  • Le nombre de noyaux instables qui a diminué pendant une période de temps donnée dans un morceau de substance radioactive. Comme la radioactivité de la substance diminue avec le temps, l'intervalle de temps total utilisé dans le modèle doit être significativement inférieur à la durée de vie moyenne de la substance.
  • Le nombre de pins par unité de surface dans une forêt hétérogène.
  • Le nombre d'étoiles dans une région donnée de l'espace.
  • La distribution des cellules réceptrices de la vision dans la rétine de l'oeil humain.
  • Le nombre de virus qui peuvent infecter une cellule dans une culture de cellules.

[Un diagramme montrant la distribution de Poisson.]

Un diagramme montrant la distribution de Poisson.

Pour des explications plus détaillées sur ces distributions, consulter :

  1. C. Dodge - T.A. Jerse 1985. Computer music. Schirmer books. pp.265 - 286

  2. D. Lorrain. A panoply of stochastic cannons. In C. Roads, ed. 1989. Music machine . Cambridge, Massachusetts: MIT press, pp. 351 - 379.

Exemples

Voici un exemple de l'opcode poisson. Il utilise le fichier poisson.csd. Il est écrit pour des systèmes *NIX et génèrera des erreurs sur Windows.

Exemple 700. Exemple de l'opcode poisson.

Voir les sections Audio en Temps Réel et Options de la Ligne de Commande pour plus d'information sur l'utilisation des options de la ligne de commande.

<CsoundSynthesizer>
<CsOptions>
; Select audio/midi flags here according to platform
; Audio out   Audio in
-odac           -iadc    ;;;RT audio I/O
; For Non-realtime ouput leave only the line below:
; -o poisson.wav -W ;;; for file output any platform
</CsOptions>
<CsInstruments>

; Initialize the global variables.
sr = 44100
ksmps = 441  ;ksmps set deliberately high to have few k-periods per second
nchnls = 1

; Instrument #1.
instr 1
  ; Generates a random number in a poisson distribution.
  ; klambda = 1

  i1 poisson 1

  print i1
endin

instr 2

kres poisson p4
printk (ksmps/sr),kres ;prints every k-period
endin


</CsInstruments>
<CsScore>

; Play Instrument #1 for one second.
i 1 0 1
i 2 1 0.2 0.5
i 2 2 0.2 4   ;average 4 events per k-period
i 2 3 0.2 20  ;average 20 events per k-period
e


</CsScore>
</CsoundSynthesizer>


Voir aussi

seed, betarand, bexprnd, cauchy, exprand, gauss, linrand, pcauchy, trirand, unirand, weibull

Crédits

Auteur : Paris Smaragdis
MIT, Cambridge
1995