09.05.2013 Views

Algoritmos y Programación en Pascal

Algoritmos y Programación en Pascal

Algoritmos y Programación en Pascal

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

490 Apéndice A. Aspectos complem<strong>en</strong>tarios<br />

15. Mediante el método de la transformada inversa, desarrolle un dado trucado que<br />

dé las cantidades 1 a 6 con probabilidades arbitrarias dadas como dato.<br />

16. Defina una función que g<strong>en</strong>ere una variable aleatoria a partir de una función de<br />

distribución arbitraria F definida sobre el intervalo [a, b].<br />

A.4 Refer<strong>en</strong>cias bibliográficas<br />

Este apartado se ha c<strong>en</strong>trado <strong>en</strong> el uso del azar, suponi<strong>en</strong>do que las herrami<strong>en</strong>tas<br />

necesarias están incorporadas <strong>en</strong> nuestro l<strong>en</strong>guaje de programación, lo que es el caso<br />

habitual. Sin embargo, el desarrollo de bu<strong>en</strong>os g<strong>en</strong>eradores de números aleatorios no<br />

es una tarea fácil, e incluso es frecu<strong>en</strong>te <strong>en</strong>contrar <strong>en</strong> el mercado y <strong>en</strong> libros de texto<br />

g<strong>en</strong>eradores con defectos importantes. En [Yak77, PM88, Dan89, War92], <strong>en</strong>tre otras<br />

refer<strong>en</strong>cias, se estudian los principios de su diseño, explicando el g<strong>en</strong>erador más difundido<br />

actualm<strong>en</strong>te (el de Lehmer) y examinando algunos de los errores de diseño más<br />

frecu<strong>en</strong>tes; <strong>en</strong> [War92, Sed88] se describ<strong>en</strong> dos pruebas de calidad (el test espectral y el<br />

de la chi-cuadrado).<br />

La simulación de variables aleatorias no uniformes se estudia <strong>en</strong> multitud de textos.<br />

El método de la transformada inversa se puede estudiar <strong>en</strong> [Yak77, Mor84, PV87],<br />

<strong>en</strong>tre otros textos, junto con otros métodos g<strong>en</strong>erales (el del “rechazo” y el de la “composición”).<br />

Algunos métodos particulares para la simulación de la normal se pued<strong>en</strong><br />

<strong>en</strong>contrar <strong>en</strong> las dos últimas refer<strong>en</strong>cias. En [Dew85a] se vincula la simulación de variables<br />

aleatorias con algunas aplicaciones de los algoritmos no deterministas a través<br />

de am<strong>en</strong>os ejemplos y situaciones. De esta última refer<strong>en</strong>cia se ha tomado el método<br />

del acontecimi<strong>en</strong>to crítico, y otras aplicaciones prácticas de la simulación se pued<strong>en</strong><br />

<strong>en</strong>contrar <strong>en</strong> [PV87].<br />

Finalm<strong>en</strong>te, debemos indicar que <strong>en</strong> el apartado 20.5 se introduc<strong>en</strong> otras aplicaciones<br />

de los algoritmos no deterministas.<br />

En este apéndice hemos tocado muy superficialm<strong>en</strong>te la posibilidad de que los<br />

parámetros de los subprogramas sean subprogramas a su vez. Esta posibilidad es ampliam<strong>en</strong>te<br />

explotada <strong>en</strong> otros modelos de programación como el funcional, por lo que el lector<br />

interesado puede consultar cualquer refer<strong>en</strong>cia sobre el mismo, por ejemplo [BW89].<br />

Los cierto es que, <strong>en</strong> programación imperativa, este mecanismo se usa <strong>en</strong> muy contadas<br />

ocasiones.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!