jueves, 18 de noviembre de 2010

Números Pseudoaleatorios.

Hola a todos, en esta entrada les hablaré un poco acerca de los números pseudoaleatorios.

Los números pseudoaleatorios son una sucesión de números en el intervalo [0,1], el cual tiene las mismas propiedades estadísticas que una sucesión de números aleatorios. La forma de obtener números pseudoaleatorios es a partir de una conjunto de n números  y aplicar una función.

Estos números son necesarios cuando se utiliza un modelo de simulación, para así obtener observaciones aleatorias a través de distribuciones de probabilidad.
Los números aleatorios que se generan mediante una computadora, normalmente son números aleatorios enteros. Estos números generados por la computadora no se deben de llamar números aleatorios, ya que son predecibles, por ello algunas veces se les llama números pseudoaleatorios.

Se le llama generador de números aleatorios al procedimiento utilizado por una computadora para generar números aleatorios. Un generador de números aleatorios es un algoritmo que produce secuancias de números y tienen apariencia de que son aleatorios.

Esta secuencia de números generados debe cumplir con lo siguiente:
  • Tener una distribución uniforme
  • Ser independientes (no correlacionados)
  • Además también son importantes estos aspectos:
  • Las subsecuencias también deben cumplir con lo mencionado anteriormente
  • Las secuencias deben de ser largas y sin huecos
  • Tener algoritmos rápidos y que no ocupen demasiada memoria


Bueno en C, para obtener números aleatorios se utiliza la función rand(). Esta función, cada vez que la llamamos, nos devuelve un número entero aleatorio entre 0 y el RAND_MAX (un número muy grande). 

¿Y si queremos un número aleatorio con decimales?.  Para esto existe la función drand48(), la cual nos devuelve un número aleatorio con decimales entre 0.0 (incluido, puede salir el 0,0) y 1.0 (no incluyendo el 1.0). 

En el caso de Java,  con Random(), se pueden obtener números aleatorios.

Bueno esto es todo, espero que les haya ayudado, saludos a todos:)

1 comentario:

  1. Uno podría generar números pseudoaleatorios en cualquier intervalo finito. En realidad, muchos de los generadores operan con puros enteros. Con aritmética también podemos transformar números pseudoaleatorios de un tipo a otro. A veces se requiere distribuciones que no son uniformes sino por ejemplo exponenciales o normales. Buen tema. Seis puntos para el lab.

    ResponderEliminar