Oggi i metodi di generazione maggiormente usati sono i
cosiddetti metodi congruenziali, così chiamati perchè si
basano sulla nozione di congruenza.
Dati tre numeri interi x, y, z si dice che
"x è congruo ad y modulo z" e si scrive
se x è la parte intera del resto della divisione tra y e z.
Per generare numeri casuali, si distinguono tre tipi di metodi congruenziali:
dove ri, a, b,
m sono interi non negativi e ri
è compreso tra 0 ed m.
Vengono chiamati: a moltiplicatore, b
incremento e m modulo, mentre ro,
valore iniziale della sequenza, è detto seme.
Tutti questi metodi danno origine a sequenze periodiche,
con periodo minore o al più uguale ad m.
Se si desiderano numeri casuali razionali nell'intervallo [0,1), questi si ottengono facilmente mediante la divisione:
ui=ri/m
Per ciò che riguarda il periodo, si cerca sempre di
scegliere m in modo tale da assicurarsi una
sequenza abbastanza lunga; in ogni caso, la lunghezza del periodo
deve essere superiore alla quantità di numeri casuali richiesti
per la soluzione del problema che interessa.
Quando la lunghezza del periodo è uguale ad m, si
dice che il generatore ha periodo pieno.
Oltre a dar luogo ad un periodo sufficientemente lungo, è auspicabile che il generatore possegga un'alta velocità di generazione, vale a dire che sia in grado di effettuare il calcolo dell'espressione, ad esempio, (ari+b)(mod m) il più rapidamente possibile.