Generazione di numeri casuali distribuiti in modo non uniforme [duplicato]

1

Diciamo che devo generare un numero casuale da 1 a 100, tuttavia, la probabilità di ciascun numero non è 1/100, ma una probabilità predefinita.

Come generare quel numero? Io uso Ruby / Python.

    
posta Yoga 10.09.2014 - 09:41
fonte

1 risposta

4

l'algoritmo stesso è semplice: crea un array con la somma cumulativa di tutti i pesi. Dopo di che generi un numero casuale uniforme di [0-1) e solo una ricerca binaria quel numero moltiplicato con la somma dei pesi e l'indice sarà il numero che dovrai generare.

    
risposta data 10.09.2014 - 09:52
fonte

Leggi altre domande sui tag