Curso: Métodos de Monte Carlo. Unidad 2, Sesión 3: Estimación de volúmenes

Curso: M´ etodos de Monte Carlo. Unidad 2, Sesi´ on 3: Estimaci´ on de vol´ umenes Departamento de Investigaci´ on Operativa Instituto de Computaci´ o

21 downloads 62 Views 121KB Size

Recommend Stories


UNIDAD DE MUESTRA UNIDAD 3
UNIDAD 2 UNIDAD 3 UNIDAD 4 Escuchar, hablar, leer y escribir Escucha y habla La muerte burlada Lee y escribe Escuchar, hablar, leer y escribir

Unidad 2. Componentes de LibreOffice. CURSO: Introducción LibreOffice
Unidad 2 Componentes de LibreOffice CURSO: Introducción LibreOffice Ud02 1 Introducción Como hemos dicho, LibreOffice es una suite ofimática, es

SIMULACIÓN MONTE CARLO DE UNA GEOMETRÍA DE IRRADIACIÓN DE CULTIVOS CELULARES
SIMULACIÓN MONTE CARLO DE UNA GEOMETRÍA DE IRRADIACIÓN DE CULTIVOS CELULARES Berenguer R, Rivera M, Núñez A, Gutiérrez M, Sabater S, Villas V. Servici

Story Transcript

Curso: M´ etodos de Monte Carlo. Unidad 2, Sesi´ on 3: Estimaci´ on de vol´ umenes Departamento de Investigaci´ on Operativa Instituto de Computaci´ on, Facultad de Ingenier´ıa Universidad de la Rep´ ublica, Montevideo, Uruguay dictado semestre 1 - 2010

Contenido: 1. Introducci´ on y definiciones. 2. Estimaci´ on de vol´ umenes. 3. Ejemplo. 4. Ejercicio.

Curso “M´etodos de Monte Carlo” - Facultad de Ingenier´ıa, Universidad de la Rep´ ublica (Uruguay)

1

Monte Carlo para estimar vol´ umenes e integrales Esta unidad introduce los problemas b´asicos que surgen al aplicar el m´etodo de Monte Carlo para resolver el conjunto de problemas encontrados con mayor frecuencia en el ´area del c´alculo num´erico. En su forma m´as simple, el problema consiste en evaluar el volumen de una regi´on acotada en un espacio euclidiano multi-dimensional. Una formulaci´ on m´as general consiste en la evaluacion de la integral de una funci´ on en una regi´ on de este estilo. El m´etodo de Monte Carlo con frecuencia es una manera competitiva de resolver este problema (m´as a´ un, muchas veces es la u ´nica forma pr´actica para lograrlo). Las ventajas del m´etodo surgen cuando la forma de la regi´on de inter´es hace imposible resolver el problema por m´etodos anal´ıticos, y, en el caso general de la integracion de funciones, cuando las propiedades de suavidad Curso “M´etodos de Monte Carlo” - Facultad de Ingenier´ıa, Universidad de la Rep´ ublica (Uruguay)

2

y de variaci´ on del integrando son desconocidas o impiden la aplicaci´on de t´ecnicas de evaluaci´ on num´erica cl´asicas.

Curso “M´etodos de Monte Carlo” - Facultad de Ingenier´ıa, Universidad de la Rep´ ublica (Uruguay)

3

Definiciones Esta unidad se centra en los problemas relacionados a la obtenci´on de estimadores puntuales y de estimadores de intervalo bajo forma de intervalos de confianza. • Estimador puntual: denota una expresi´ on matem´atica que transforma un conjunto de datos (derivados de una muestra obtenida experimentalmente) en un u ´nico n´ umero, conocido como estimaci´ on puntual, que sirve como aproximaci´ on para el valor exacto (pero desconocido) del volumen (o m´as generalmente de la integral) de inter´es. • Estimador de intervalo o Intervalo de confianza: denota una expresi´ on matem´atica que transforma un conjunto de datos (derivados de una muestra obtenida experimentalmente) para calcular un intervalo num´erico que, con una probabilidad especificada, contiene el valor exacto del volumen. Curso “M´etodos de Monte Carlo” - Facultad de Ingenier´ıa, Universidad de la Rep´ ublica (Uruguay)

4

• En la pr´actica, en general se emplea un intervalo de confianza para complementar y servir como indicaci´ on del error potencial cometido por un estimador puntual. • Un punto central en todo m´etodo de Monte Carlo es el n´ umero de sorteos independientes o replicaciones que deben realizarse para garantizar una cierta cota del error. Este n´ umero es llamado tama˜ no de muestra, y depende del error aceptable en cada estudio, de las caracter´ısticas del problema (y del tiempo computacional disponible). • Muchas veces es posible (eventualmente empleando algo de informaci´on previamente conocida) calcular antes del muestreo, un tama˜ no de muestra de peor caso que garantiza que, si se emplea al menos este n´ umero de experimentos, el estimador puntual resultante tendr´a un error de acuerdo a las especificaciones deseadas. En general el tama˜ no de muestra de peor caso resulta en un esfuerzo computacional mayor que el estrictamente necesario, pero conocierlo con anticipaci´ on puede ser u ´til en varios contextos. Por un lado, si no Curso “M´etodos de Monte Carlo” - Facultad de Ingenier´ıa, Universidad de la Rep´ ublica (Uruguay)

5

hay limitaciones en tiempo de c´alculo, el usuario puede emplear este tama˜ no de muestra para asegurarse la calidad del resultado. Si por el contrario el tiempo de c´alculo es una limitaci´ on importante, es posible emplear el conocimiento previo del tama˜ no de muestra de peor caso para varias alternativas como forma de elegir aquella m´as conveniente, y tambi´en para estudiar como mejorar la eficiencia computacional del m´etodo. • En algunos casos tambi´en es posible calcular a priori tama˜ no de muestra de mejor caso, que dan una cota inferior por debajo de la cu´al es seguro que no puede alcanzarse las especificaciones de error requeridas. La relaci´ on entre el tama˜ no de muestra de mejor y peor caso sirven como indicadores de que tan pesimista es esta segunda medida.

Curso “M´etodos de Monte Carlo” - Facultad de Ingenier´ıa, Universidad de la Rep´ ublica (Uruguay)

6

Estimaci´ on de vol´ umenes • Sea R una regi´ on de volumen desconocido λ(R), en el hipercubo unitario m-dimensional J m = [0, 1]m = [0, 1] × · · · × [0, 1]. • Si R fuera de tama˜ no arbitrario (pero acotada), supondremos que es posible transformarla para que quede incluida en J m. • Supongamos que R est´a definida por un conjunto de desigualdades y de relaciones impl´ıcitas entre las variables espaciales 0 ≤ xi ≤ 1, i = 1, . . . , m, y que la forma de R es tal que el c´alculo exacto de λ(R) es intratable. • Si disponemos de un procedimiento que genera una secuencia de puntos (j) (j) Xm,n = {x(j) = (x1 , . . . , xm ∈ J m; j = 1, . . . , n}, es posible ¯ aproximar λ(R) a trav´es de λ(R) calculada por el algoritmo que sigue: Curso “M´etodos de Monte Carlo” - Facultad de Ingenier´ıa, Universidad de la Rep´ ublica (Uruguay)

7

Procedimiento Volumen (region R, entero n) Entrada: region R, n tama˜ no de la muestra ¯ Salida: λ(R) 1. S = 0; /* Inicializaci´ on */ 2. For j = 1, . . . , n do 2.1 Generar x(j) de Xm,n; 2.2 If x(j) ∈ R then φ(x(j)) = 1 else φ(x(j)) = 0; 2.3 S = S + φ(x(j)); /* Acumular*/ ¯ 3. λ(R) = S/n;

¯ • La exactitud de λ(R) depender´a directamente de las propiedades de R y de Xm,n. Por ejemplo, una forma sencilla es generar n puntos de evaluaci´ on en la malla m − dimensional: Xm,n = {x = (x1 , . . . , xm ) : xi = (zi + 1/2)/k; zi = 0, 1, . . . , k − 1; i = 1, . . . , m, n = k

Curso “M´etodos de Monte Carlo” - Facultad de Ingenier´ıa, Universidad de la Rep´ ublica (Uruguay)

m

)

8

1

                  



                  



                  



                  



                  



                   



0



                 







             

               

x_1





0



x_2



x_2



1 

1



• En este caso, cada uno de los n puntos en Xm,n es el centro de un hipercubo de m dimensiones y volumen 1/k m = 1/n, y de esta forma S/n, el volumen total de cada uno de los S m-cubos con centros en R, ser´a una aproximaci´ on de λ(R).

x_1

1

Figure 1: Ejemplo de una superficie a estimar, y la estimaci´on a partir de la malla 2-dimensional. Curso “M´etodos de Monte Carlo” - Facultad de Ingenier´ıa, Universidad de la Rep´ ublica (Uruguay)

9

• La figura 1 presenta un ejemplo en 2 dimensiones (en el que el volumen es en realidad una superficie), con la malla correspondiente y la estimaci´ on que surge de la misma (figura a la derecha). Es claro que se cometen errores de dos tipos, por un lado 2-cubos (cuadrados) que estan parcialmente fuera de la figura, por otro partes de la figura que no ¯ son cubiertas por ning´ un 2-cubo. El error total, λ(R) − λ(R), es la diferencia de estos dos errores. • En el caso 2-dimensional, sea s(R) el largo de la frontera de R. Entonces el error absoluto tiene la siguiente cota superior: ¯ |λ(R) − λ(R)| ≤ s(R)/k. Este error surge de considerar que los errores pueden agruparse en un rect´angulo que tiene, en el peor caso, largo s(R), y ancho 1/k (el ancho de cada 2-cubo de la malla), y de usar el ´area de este rect´angulo como cota del error en el peor caso. • En general, si s(R) es la “superficie” (en n − 1 dimensiones) de R, la Curso “M´etodos de Monte Carlo” - Facultad de Ingenier´ıa, Universidad de la Rep´ ublica (Uruguay)

10

misma f´ ormula sigue siendo v´alida: ¯ |λ(R) − λ(R)| ≤ s(R)/k. Dado que n = k m, podemos expresar esta misma f´ormula as´ı: ¯ |λ(R) − λ(R)| ≤ s(R)/n1/m, lo que demuestra que la tasa de convergencia del error disminuye al aumentar la dimensi´ on m del problema. En particular, para garantizar un error absoluto de a lo sumo  ∈ (0, 1), es necesario tomar una malla (de dimensi´ on m) con al menos n(m, ) = d[s(R)/]me puntos (notaci´ on: dxe = ceiling(x), menor entero mayor o igual a x). • Por lo tanto, si tuvi´eramos una secuencia de regiones de dimensi´on creciente e igual volumen, para obtener igual precisi´on  necesitar´ıamos un n´ umero de puntos que crece exponencialmente con la dimensi´on m. Curso “M´etodos de Monte Carlo” - Facultad de Ingenier´ıa, Universidad de la Rep´ ublica (Uruguay)

11

Estimaci´ on de volumen por Monte Carlo • La forma m´as sencilla de aplicar Monte Carlo para resolver este problema consiste en usar el mismo algoritmo anterior, con la u ´nica modificaci´ on consistente en sustituir el empleo de la secuencia determin´ıstica Xm,n = (x(1), . . . , x(n)) por una muestra aleatoria (j) (j) independiente (X(1), . . . , X(n)) donde cada X(j) = (X1 , . . . , Xm ) se sortea de acuerdo a la distribuci´ on uniforme en J m. • Si X = X1, . . . , Xm es uno de estos puntos, su p.d.f. tiene la forma siguiente (donde x = (x1, . . . , xm)):  fX (x) =

1 si 0 ≤ xi ≤ 1 para todo i = 1, . . . , m, 0 si no.

Esto corresponde a tener distribuciones U (0, 1) independientes para cada una de las componentes del vector X; por lo tanto, para sortear un Curso “M´etodos de Monte Carlo” - Facultad de Ingenier´ıa, Universidad de la Rep´ ublica (Uruguay)

12

valor del mismo, alcanza con sortear de manera uniforme cada uno de los valores Xi. • El siguiente seudoc´ odigo describe este m´etodo de Monte Carlo. Procedimiento MonteCarlo-Volumen (region R, entero n) Entrada: region R, n tama˜ no de la muestra, ¯ ¯ Salida: λ(R) estimaci´ on del volumen, V [λ(R)] estimaci´on de la varianza 1. S = 0; /* Inicializaci´ on */ 2. For j = 1, . . . , n do 2.1 Sortear X(j) con distribuci´ on uniforme en J m; 2.2 If X(j) ∈ R then φ(X(j)) = 1 else φ(X(j)) = 0; 2.3 S = S + φ(X(j)); /* Acumular*/ ¯ 3. λ(R) = S/n; /*Estimador puntual de λ(R)*/ ¯ 4. V [λ(R)] = (S/n)(1 − S/n)/(n − 1); /*Estimador puntual de la  ¯ ¯ varianza Var λ(R) del estimador puntual λ(R)*/

Curso “M´etodos de Monte Carlo” - Facultad de Ingenier´ıa, Universidad de la Rep´ ublica (Uruguay)

13

• Se puede ver que en el seudoc´ odigo precedente utilizamos una f´ormula para estimar la varianza distinta de la discutida en la Unidad 02. Esta nueva f´ ormula se basa en propiedades de v.a. de Bernoulli (v.a. discretas que toman valores 0 y 1 exclusivamente). Para el problema de estimar vol´ umenes (y en general para los problemas donde se acumulan v.a. Bernoulli), ambas f´ ormulas son equivalentes. • Derivamos la f´ ormula empleada ahora. Comenzamos observando que φ(X(j)) es una v.a. que toma dos valores, 0 o 1; la probabilidad de que φ(X(j)) = 1 es la probabilidad de que X(j) ∈ R, que es igual a λ(R), y la probabilidad de que valga 0 es su complemento, 1 − λ(R). • Por lo tanto, φ(X(j)) es una v.a. e Bernouilli con par´ametro λ(R), y su varianza se puede calcular facilmente, resultando igual a λ(R)(1 − λ(R)). • Usando la independencia entre los X(j), y propiedades de la varianza de una combinaci´ on lineal de v.a. independientes, sabemos que el Curso “M´etodos de Monte Carlo” - Facultad de Ingenier´ıa, Universidad de la Rep´ ublica (Uruguay)

14

¯ estimador λ(R) = S/n tendr´a varianza n   X  1 1 (j) ¯ Var λ(R) = 2 Var (S) = 2 Var φ(X ) = n n j=1

=

1 1 nλ(R)(1 − λ(R)) = λ(R)(1 − λ(R)). 2 n n

• Aunque no conocemos el valor exacto de λ(R)(1 − λ(R)) , podemos estimarlo. Para esto, observamos que  1  1 2 E ((S/n)(1 − S/n)) = E (S/n) − S /n ) = E (S) − 2 E S = n n 2

2

1 1 = E (S)− 2 (Var (S)+(E (S))2) = λ(R)−λ(R)(1−λ(R)/)n−λ(R)2 = n n (n − 1)λ(R) − (n − 1)λ(R)2 (n − 1)λ(R)(1 − λ(R)) = . = n n Curso “M´etodos de Monte Carlo” - Facultad de Ingenier´ıa, Universidad de la Rep´ ublica (Uruguay)

15

Por lo tanto, 



λ(R)(1 − λ(R)) (S/n)(1 − S/n) =E , n (n − 1) y entonces (S/n)(1 − S/n)/(n − 1) es un estimador insesgado de la varianza.

Curso “M´etodos de Monte Carlo” - Facultad de Ingenier´ıa, Universidad de la Rep´ ublica (Uruguay)

16

Ejemplo Problema: Supongamos que tenemos un c´ırculo con centro en el punto (x1, x2) = (0.3, 0.2) y radio 0.4, y queremos calcular la superficie de la intersecci´ on de este c´ırculo con el cuadrante positivo (es decir, x1 ≥ 0, x2 ≥ 0). 1

r=0.4

(0.3, 0.2) 0

1

Figure 2: Ejemplo de una superficie a estimar. Curso “M´etodos de Monte Carlo” - Facultad de Ingenier´ıa, Universidad de la Rep´ ublica (Uruguay)

17

Si aplicamos Monte Carlo, sortearemos una cantidad n de puntos independientes y uniformemente distribuidos en (0, 1) × (0, 1), y usaremos como estimador del ´area a calcular la cantidad de puntos que cayeron dentro de la misma sobre el total de puntos sorteados. La siguiente tabla muestra el resultado de n = 10 sorteos independientes. Dado que de 10 sorteos s´ olo 3 puntos cayeron en la figura R cuya ´area se ¯ desea calcular, nuestra estimaci´ on es λ(R) = 0.30. La estimaci´on de la ¯ ¯ varianza es λ(R)(1 − λ(R))/(n − 1) = (0.3)(0.7)/9 = 0.0233, y la estimaci´ on de la desviaci´ on est´andar es la ra´ız cuadrada de este valor, aproximadamente 0.153.

Curso “M´etodos de Monte Carlo” - Facultad de Ingenier´ıa, Universidad de la Rep´ ublica (Uruguay)

18

x1 0.12 0.85 0.25 0.59 0.45 0.44 0.25 0.09 0.87 0.13

x2 0.94 0.92 0.73 0.43 0.53 0.91 0.20 0.57 0.37 0.73

Pertenece a R 0 0 0 1 1 0 1 0 0 0

Table 1: Una simulaci´ on detallada con n = 10 experimentos.

La figura siguiente muestra la ubicaci´ on de los 10 puntos sorteados. Curso “M´etodos de Monte Carlo” - Facultad de Ingenier´ıa, Universidad de la Rep´ ublica (Uruguay)

19

1

0

1

Figure 3: Ejemplo de sorteo de 10 puntos uniformemente distribuidos en (0, 1) × (0, 1).

Curso “M´etodos de Monte Carlo” - Facultad de Ingenier´ıa, Universidad de la Rep´ ublica (Uruguay)

20

Una implementaci´ on C de Monte Carlo para resolver este problema se encuentra disponible en la siguiente direcci´ on: http://www.fing.edu.uy/inco/cursos/mmc/codigoC/circulo.c

Dicho c´ odigo genera puntos independientes y uniformemente distribuidos en (0, 1) × (0, 1), y controla si su distancia al centro del c´ırculo es menor o mayor que el radio del mismo (lo que equivale a preguntar si est´an en su interior o en su exterior).

Curso “M´etodos de Monte Carlo” - Facultad de Ingenier´ıa, Universidad de la Rep´ ublica (Uruguay)

21

Preguntas para auto-estudio • ¿Cu´al es la diferencia entre un estimador puntual y un estimador de intervalo? • Si tenemos una secuencia de regiones de igual volumen pero dimensi´on m creciente, y queremos estimar este volumen con una cierta precisi´on prefijada : ¿cu´al es el comportamiento computacional de un m´etodo de aproximaci´ on cl´asico y de un m´etodo Monte Carlo en funci´on de m? • Dar el seudoc´ odigo del M´etodo de Monte Carlo para calcular la medida de una regi´ on arbitraria incluida dentro de J m = [0, 1]m. • Explicar c´ omo se calcula la varianza en el caso de experimentos basados en sumas de variables aleatorias de Bernoulli.

Curso “M´etodos de Monte Carlo” - Facultad de Ingenier´ıa, Universidad de la Rep´ ublica (Uruguay)

22

Ejercicio Problema: se desea estimar el volumen de una region R de [0, 1]4 definida por todos los puntos de la hiper-esfera de centro (0.3, 0.2, 0.7, 0.8) y radio 0.50, que adem´as cumplan las restricciones siguientes: 5x1 + 10x2 ≤ 4; x3 + x4 ≤ 1; 2x1 − 3x2 ≥ 0. Ejercicio 3.1: • Parte a: implementar un programa que reciba como par´ametro la cantidad de replicaciones n a realizar, y emplee Monte Carlo para calcular (e imprimir) la estimaci´ on del volumen de R, y la desviaci´on est´andar de este estimador. Incluir c´ odigo para calcular el tiempo de c´alculo empleado por el programa. Utilizar el programa con n = 106 para estimar el volumen de R. • (en la sesi´ on 5 se continuar´a este ejercicio). Fecha entrega: ver calendario en pagina web. Curso “M´etodos de Monte Carlo” - Facultad de Ingenier´ıa, Universidad de la Rep´ ublica (Uruguay)

23

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.