Sunteți pe pagina 1din 16

Nmeros rectangulares Para la siguiente actividad necesitaremos una hoja cuadriculada y algunas lentejas.

Con las lentejas trataremos de formar rectngulos de la siguiente manera: Escoge un nmero entre 1 y 100 Toma la misma cantidad de lentejas que el nmero que elegiste.

Sobre tu cuadricula acomoda las puedes formar estos rectngulos:

lentejas de manera que

puedas formar un rectngulo Por ejemplo, si escogiste el nmero 12

El rectngulo formado por 3 renglones y 4 columnas

El rectngulo formado por 2 renglones y 6 columnas

Se podrn formar ms rectngulos con el nmero 12? Lo que has hecho es escribir al nmero 12 como una multiplicacin, 3 x 4 = 12 2 x 6 =12 Qu pasar si escogemos el nmero 15? Cuntos rectngulos se formarn? Elige otros nmeros: Para que no te pierdas puedes apuntar tus resultados en una tabla como esta No. renglones 3 2 . . . . . . . . . de No. columnas 4 6 . . . . . . . . . de

Nmero 12 12 . . . . . . . . .

Multiplicacin 3 x 4 = 12 2 x 6 = 12 . . . . . . . . .

Hay algunos nmeros con los que slo se pueden formar dos rectngulos, por ejemplo pensemos en el nmero 13. Cules rectngulos se pueden formar con l?

El de 1 rengln y 13 columnas, o sea, 1x13

y el de 13 renglones y 1 columna, o sea 13x1

y con este nmero no se pueden hacer ms rectngulos.

Estos nmeros se llaman nmeros primos. Un nmero primo solamente es mltiplo de 1 y de l mismo.

Nmero pseudo-aleatorio Un nmero pseudo-aleatorio es un nmero generado en un proceso que parece producir nmeros al azar, pero no lo hace realmente. Las secuencias de nmeros pseudo-aleatorios no muestran ningn patrn o regularidad aparente desde un punto de vista estadstico, a pesar de haber sido generadas por un algoritmo completamente determinista, en el que las mismas condiciones iniciales producen siempre el mismo resultado. Los mecanismos de generacin de nmeros aleatorios que se utilizan en la mayora de los sistemas informticos son en realidad procesos pseudoaleatorios.

Generacin de Nmeros Aleatorios Una parte fundamental con el trabajo de algoritmos genticos es la generacin de nmeros al azar que son usados para crear los algoritmos y mutarlos. Como estoy programando en Visual C++ 6.0, he usado la funcin rand( ) con que viene este lenguaje. Debo tener en cuenta que un generador

de nmeros pseudo-aleatorios (porque no es azar puro) debe ser inicializado apropiadamente y tiene un periodo: la secuencia de nmeros pseudoaleatorios se repite despus de N nmeros generados, el objetivo es tener un N muy grande.

Para la inicializacin, la semilla es seleccionada segn la hora exacta de la mquina y para evitar perodos cortos, cada cierto nmero de veces de generacin o mutacin de algoritmos genticos, vuelve y se inicializa la semilla con otro valor (hora exacta de la mquina en segundos). Sin embargo, como tengo un nuevo PC y algoritmo rpidos, al tratar de inicializar la semilla con la hora exacta de la mquina me top con el problema que no pasaba ni un solo segundo entre inicializaciones, por lo tanto, el generador de nmeros pseudo-aleatorios siempre arrancaba con la misma secuencia (algo que no es recomendable en simulacin). Forc que el tiempo entre inicializaciones al menos fuera de un segundo pero eso hizo que el algoritmo se tornara lento. Cambi la inicializacin usando como semilla un numero generado al azar por el mismo generador. Sin embargo, esta idea no me gust porque no se si hay una distribucin uniforme estadstica en la generacin de los nmeros pseudo-aleatorios y tampoco se el tamao del periodo. Buscando generadores de nmeros aleatorios En Internet existen variados algoritmos para la generacin de nmeros pseudo-aleatorios. Llama la atencin: el MT19937 de Makoto Matsumoto y Takuji Nishimura, es un algoritmo de libre uso (GNU), tiene un perodo muy largo: 2^19937 y ha pasado las pruebas mas fuertes en distribucin uniforme

y segn se lee en su pgina Web es ms rpido que la funcin rand ( ) de Visual C++ 6.0. El MT19937 es tambin conocido como un generador "Mersenne Twister". Por que usar perodos muy largos? El nuevo motor requiere generar 10 nmeros pseudo-aleatorios por cada instruccin del algoritmo gentico, si cada algoritmo gentico tiene como mximo 150 instrucciones, se requieren 10*150 = 1500 nmeros pseudo-aleatorios, si la simulacin generara 10 millones de algoritmos genticos, requerira de 15.000 millones. Es decir un perodo sera excelente si superara los 15.000 millones o 2^34, y el algoritmo MT19937 supera dramticamente esta cifra. Para la siguiente actualizacin, el nuevo motor tendr este generador de nmeros pseudo-aleatorios.

Mtodo de Monte Carlo Mtodo no determinstico o estadstico numrico usado para aproximar expresiones matemticas complejas y costosas de evaluar con exactitud. El mtodo se llam as en referencia al Casino de Montecarlo (Principado de Mnaco) por ser la capital del juego de azar, al ser la ruleta un generador simple de nmeros aleatorios. El nombre y el desarrollo

sistemtico de los mtodos de Monte Carlo datan aproximadamente de 1944 y se mejoraron enormemente con el desarrollo de la computadora. El uso de los mtodos de Monte Carlo como herramienta de investigacin, proviene del trabajo realizado en el desarrollo de la bomba atmica durante la segunda guerra mundial en los lamos. Este trabajo conllevaba la simulacin de problemas probabilsticos de hidrodinmica concernientes a la difusin de neutrones en el material de fusin, la cual posee un comportamiento eminentemente aleatorio. En la actualidad es parte fundamental de los algoritmos de trazado de rayos para la generacin de imgenes sintticas. En la primera etapa de estas investigaciones, John von Neumann y Stanislaw Ulam refinaron esta ruleta rusa y los mtodos "de divisin" de tareas. Sin embargo, el desarrollo sistemtico de estas ideas tuvo que esperar el trabajo de Harris y Herman Kahn en 1948. Aproximadamente en el mismo ao, Enrico Fermi, Metropolis y Ulam obtuvieron estimadores para los valores caractersticos de la ecuacin de Schrdinger para la captura de neutrones a nivel nuclear usando este mtodo. El mtodo de Monte Carlo proporciona soluciones aproximadas a una gran variedad de problemas matemticos posibilitando la realizacin de experimentos con muestreos de nmeros pseudoaleatorios en una computadora. El mtodo es aplicable a cualquier tipo de problema, ya sea estocstico o determinista. A diferencia de los mtodos numricos que se basan en evaluaciones en N puntos en un espacio M-dimensional para producir una solucin aproximada, el mtodo de Monte Carlo tiene un error

absoluto de la estimacin que decrece como lmite central.

en virtud del teorema del

Ejemplo de la Aplicacin del Mtodo usando La variable aleatoria


Se denomina variable aleatoria, a una variable X que puede tomar un conjunto de valores {x0, x1, x2, ... xn-1}, con probabilidades {p0, p1, p2, ... pn-1}. Por ejemplo, en la experiencia de lanzar monedas, los posibles resultados son {cara, cruz}, y sus probabilidades son {1/2, 1/2}. En la experiencia de lanzar dados, los resultados posibles son {1, 2, 3, 4, 5, 6} y sus probabilidades respectivas son {1/6, 1/6, 1/6, 1/6, 1/6, 1/6}. Realicemos ahora la experiencia de hacer girar una ruleta y apuntar el nmero del sector que coincide con la flecha. En la ruleta de la izquierda de la figura los resultados posibles son {0, 1, 2, 3, 4, 5, 6, 7}, y la probabilidad de cada resultado es 1/8. En la ruleta de la derecha de la figura los posibles resultados son {0, 1, 2, 3}, y las probabilidades respectivas {1/4, 1/2, 1/8, 1/8}, proporcionales al ngulo del sector.

En los tres primeros ejemplos, la variable aleatoria X se dice que est uniformemente distribuida, ya que todos los resultados tienen la misma probabilidad. Sin embargo, en el ltimo ejemplo, la variable aleatoria X, no est uniformemente distribuida. El problema crucial de la aplicacin de los mtodos de Montecarlo es hallar los valores de una variable aleatoria (discreta o continua) con una distribucin de probabilidad dada por la funcin p(x) a partir de los valores de una variable aleatoria uniformemente distribuida en el intervalo [0, 1), proporcionada por el ordenador o por una rutina incorporada al programa. Para simular un proceso fsico, o hallar la solucin de un problema matemtico es necesario usar gran cantidad de nmeros aleatorios. El mtodo mecnico de la ruleta sera muy lento, adems cualquier aparato fsico real genera variables aleatorias cuyas distribuciones difieren, al menos ligeramente de la distribucin uniforme ideal. Tambin, se puede hacer uso de tablas de cifras aleatorias uniformemente distribuidas, comprobadas minuciosamente en base a pruebas estadsticas especiales. Se emplean solamente cuando los clculos correspondientes a la aplicacin del mtodo de Montecarlo se realiza a mano, lo que en estos tiempos resulta inimaginable. En la prctica, resulta ms conveniente emplear los

denominados nmeros pseudoaleatorios, se trata de nmeros que se obtienen a partir de un nmero denominado semilla, y la aplicacin reiterada de una frmula, obtenindose una secuencia {x0, x1, x2, ... xn} de nmeros que imitan los valores de una variable uniformemente distribuida en el intervalo [0, 1). Variable aleatoria discreta Para simular la ruleta situada a la derecha de la figura, se procede del siguiente modo: se hallan las probabilidades de cada resultado, proporcionales al ngulo de cada sector y se apuntan en la segunda columna, la suma total debe de dar la unidad. En la tercera columna, se escriben las probabilidades acumuladas. Resultado Probabilidad P. acumulada 0 1 2 3 0.25 0.5 0.125 0.125 0.25 0.75 0.875 1

Se sortea un nmero aleatorio g uniformemente distribuido en el intervalo [0, 1), el resultado del sorteo se muestra en la figura. En el eje X se sitan los distintos resultados que hemos nombrado x0, x1, x2, x3 . En el eje vertical las probabilidades en forma de segmentos verticales de longitud igual a la probabilidad pi de cada uno de los resultados, dichos segmentos se ponen unos a continuacin de los otros, encima su respectivo resultado xi. Se obtiene as una funcin escalonada. Cuando se sortea una variable aleatoria g, se traza una recta horizontal cuya ordenada sea g. Se busca el resultado cuya abscisa sea la interseccin de dicha recta horizontal y del segmento

vertical, tal como se seala con flechas en la figura. Si el nmero aleatorio g est comprendido entre 0.25 y 0.75 se obtiene el resultado denominado x1.

La tabla describe el sorteo de una variable discreta, siendo g una variable aleatoria uniformenente distribuda en el intervalo [0,1). Condicin 0<=g<0.25 0.25<=g<0.75 0.75<=g<0.875 0.875<=g<1 Resultado 0 1 2 3

Una vez visto un caso particular, el problema general puede formularse del siguiente modo: Si X es una variable aleatoria discreta cuyos posible resultados son {x0, x1, x2 , ... xn-1} y sean {p0, p1, p2, ... pn} sus respectivas probabilidades. Al sortear un nmero aleatorio g, uniformemente distribuido en el intervalo [0, 1), se obtiene el resultado xi, si se verifica la siguiente condicin

(1)

Variable aleatoria continua


Comprendido el concepto de transformacin de una variable discreta, y el procedimiento para obtener un resultado cuando se efecta el sorteo de una variable aleatoria uniformemente distribuida, no reviste dificultad el estudio de la variable continua. Si X es una variable aleatoria continua, y p(x) es la probabilidad de cada resultado x, construimos la funcin que se representa en la figura.

(2) El resultado del sorteo de una variable g uniformemente distribuida en el intervalo [0 ,1) se obtiene a partir de la ecuacin.

(3) Grficamente, se obtiene trazando una recta horizontal de ordenada g. La abscisa x del punto de corte con la funcin es el resultado obtenido. En la figura se seala mediante flechas.

Un ejemplo sencillo es la transformacin de una variable aleatoria que est uniformemente distribuida en el intervalo [a, b) si

Integrando (2) obtenemos la funcin

que es una lnea recta, que vale cero cuando x=a, y uno cuando x=b, tal como puede verse en la figura inferior. Utilizando la frmula (3) de la transformacin de la variable aleatoria continua y despejando x, se obtiene

Generador de nmeros aleatorios Existen varias frmulas para obtener una secuencia de nmeros aleatorios, una de las ms sencillas es la denominada frmula de congruencia: se trata de una frmula iterativa, en la que el resultado de una iteracin se utiliza en la siguiente.
x=(a*x+c)%m;

donde a, c, m, son constantes cuyos valores elige el creador de la rutina, as por ejemplo tenemos a=24298 c=99491 m=199017 a=899 c=0 m=32768

Repblica Bolivariana de Venezuela Ministerio de Educacin Superior Instituto Universitario de Tecnologa Industrial Rodolfo Loero Arismendi Extensin Valera

Terry Casique C.I. 11.323.106 Valera, Abril 2007

S-ar putea să vă placă și