Método de Montecarlo
El método de Montecarlo[1] és un método no determinista o estadístic numèric, usat per a aproximar expressions matemàtiques complexes i costoses d'evaluar en exactitut. El método es va cridar aixina en referència al Cassino de Montecarlo (Mónaco) per ser “la capital del joc d'encert”, en ser la ruleta un generador simple de números aleatoris. El nom i el desenroll sistemàtic dels métodos de Montecarlo daten aproximadament de 1944 i es varen millorar enormement en el desenroll de la computadora o ordenador.
L'us dels métodos de Montecarlo en l'investigació científica es va originar durant el desenroll de la bomba atòmica en la Segona Guerra Mundial, dins del Laboratori Nacional dels Àlbers en els Estats Units. En eixe context, els investigadors varen amprar simulacions provabilístiques per a estudiar fenomens d'hidrodinàmica relacionats en la difusió de neutrons en materials de fissió, un procés de comportament inherentemente aleatori.
Actualment, els métodos de Montecarlo s'apliquen en una àmplia varietat de camps, des de la física nuclear i l'estadística computacional fins a la computació gràfica, a on constituïxen la base de numerosos algoritmes de ray tracing utilisats per a la generació realista d'imàgens tridimensionals.
En la primera etapa d'estes investigacions, John von Neumann i Stanislaw Ulam varen refinar esta ruleta i els métodos de divisió de tasques. No obstant, el desenroll sistemàtic d'estes idees va tindre que esperar al treball d'Harris i Herman Kahn en 1948. Aproximadament en el mateix any, Enrico Fermi, Nicholas Metropolis i Ulam varen obtindre estimadors per als valors característics de l'equació de Schrödinger para la captura de neutrons a nivell nuclear usant este método.
El método de Montecarlo proporciona solucions aproximades a una gran varietat de problemes matemàtics possibilitant la realisació d'experiments en mostrejos de números pseudoaleatorios en una computadora. El método és aplicable a qualsevol tipo de problema, ya siga estocàstic o determinista. A diferència dels métodos numèrics que es basen en evaluacions en N punts en un espai M-dimensional per a produir una solució aproximada, el método de Montecarlo té un error absolut de l'estimació que decreix com en virtut del teorema del llímit central.
Orígens del método
[editar | editar còdic]L'invenció del método de Montecarlo s'assigna a Stanislaw Ulam i a John von Neumann. Ulam ha explicat cóm se li va ocórrer l'idea mentres jugava un solitari durant una malaltia en 1946. Va advertir que resulta molt més simple tindre una idea del resultat general del solitari fent proves múltiples en les cartes i contant les proporcions dels resultats que computar totes les possibilitats de combinació formalment. Se li va ocórrer que esta mateixa observació devia aplicar-se al seu treball d'Els Àlbers sobre difusió de neutrons, per a la qual resulta pràcticament impossible solucionar les equacions íntegre-diferencials que governen la dispersió, l'absorció i la fissió. Segons les seues paraules, «l'idea consistia en provar en experiments mentals les mils de possibilitats, i en cada etapa, determinar per casualitat, per un número aleatori distribuït segons les provabilitats, qué succeiria i totalisar totes les possibilitats i tindre una idea de la conducta del procés físic».
Podien utilisar-se màquines de computació, que començaven a estar disponibles, per a efectuar les proves numèriques i en efecte reemplaçar l'aparat experimental del físic. Durant una de les visites de von Neumann als Àlbers en 1946, Ulam li va mencionar el método. Despuix de cert escepticisme inicial, von Neumann es va entusiasmar en l'idea i pronte va començar a desenrollar les seues possibilitats en un procediment sistemàtic. Ulam va expressar que el método Montecarlo «va començar a tindre forma concreta i va escomençar a desenrollar-se en totes els seus fallos de teoria rudimentària en acabant de que li'l vaig propondre a Johnny».
A principis de 1947 Von Neumann va enviar una carta a Richtmayer als Àlbers. En ella va expondre tal volta el primer informe per escrit del método de Montecarlo. La seua carta va ser encuadernada junt en la resposta de Richtmyer com un informe dels Àlbers i distribuïda entre els membres del laboratori. Von Neumann sugeria aplicar el método per a rastrejar la generació isótropo de neutrons des d'una composició variable de material actiu a lo llarc del radi d'una esfera. Sostenia que el problema era adequat per a el ENIAC i estimava que duria cinc hores calcular l'acció de cent neutrons a través d'un curs de cent colisions cada u.
Ulam estava particularment interessat en el método Montecarlo per a evaluar integrals múltiples. Una de les primeres aplicacions d'este método a un problema determinista va ser portada a terme en 1948 per Enrico Fermi, Ulam i von Neumann quan varen considerar els valors singulars de l'equació de Schrödinger.
Eixemples
[editar | editar còdic]Els programes de disseny assistit per ordenador (CAD) poden determinar ràpidament el volum de models molt complexos. Estos models, en general, no tenen una expressió analítica per a determinar el seu volum (per eixemple, per a un prisma, àrea de la base multiplicada per l'altura), i l'única solució és dividir el model en un conjunt de menuts submodelos (teselación) el volum dels quals puga determinar-se (per eixemple, dividir el model en mils de tetraedres). No obstant, açò consumix molts recursos, tant per a la teselación com per al càlcul del volum de cada u dels elements. Per això utilisen métodos de Montecarlo, més robusts i eficients.
Com el software sí que coneix l'expressió analítica de la geometria del model (posició dels nodos, arestes i superfícies) pot determinar si un punt està dins del model o està fòra en un cost molt menor que el de determinar un volum.
- En primer lloc el software coloca el model dins d'un volum conegut (per eixemple, dins d'una gaveta d'1 m³ de volum).
- A continuació, genera un punt aleatori de l'interior del volum conegut, i registra si el punt "ha caigut" dins o fòra del model. Açò es repetix un gran número de voltes (mills o millons), conseguint un registre molt gran de quants punts han quedat dins i quants fora.
- Com la provabilitat de que caiga dins és proporcional al volum del model, la proporció de punts que han caigut dins sobre el total de punts generats és la mateixa proporció de volum que ocupa el model dins de la gaveta d'1 m³.
Si el 50% dels punts han caigut dins, el model ocupa el 50% el volum total, és dir, 0,5 m³. Evidentment, quants més punts genere el software, menor serà l'error de l'estimació del volum.
Càlcul de per Montecarlo
[editar | editar còdic]Este método està prop de l'experiment d'agulla de Buffon, plantejada pel naturaliste francés Georges-Louis Leclerc de Buffon.
Considerem al círcul unitari inscrit en el quadrat de costat 2 centrat en l'orige. Ya que el cocient de les seues àrees és Plantilla:Sfrac, el valor de pot aproximar-se usant Montecarlo d'acort al següent método:[3][2]
- Dibuixa un círcul unitari, i al quadrat de costat 2 que lo inscriu.
- Llança un número de punts aleatoris uniformes dins del quadrat.
- Conta el número de punts dins del círcul, i.i. punts la distància dels quals a l'orige és menor que 1.
- El cocient dels punts dins del círcul dividit entre és un estimat de, Plantilla:Sfrac. Multiplica el resultat per 4 per a estimar .
En este càlcul es tenen que fer dos consideracions importants:
- Si els punts no estan uniformemente distribuïts, el método és inválido.
- L'aproximació serà pobra si solament es llancen uns pocs punts. En promig, l'aproximació millora conforme s'aumenta el número de punts.
Eixemple realisat en java:
import java.awt.geom.Point2D;
import java.util.Random;
public class MyClass {
public static void main(String args[]) {
int n=10000000;
int insideCircle = 0;
for(int i = 1; i <= n; i++){
Random rand = new Random();
double x = rand.nextDouble(2) -1d;
double i = rand.nextDouble(2) -1d;
if(isInsideCircle(x,i)){
insideCircle++;
}
}
System.out.println("pi value: " + 4*(double)insideCircle/(double)n);
}
public static boolean isInsideCircle(
double x1,
double i1) {
return Point2D.distance(x1, i1, 0, 0) <= 1;
}
}
Vore també
[editar | editar còdic]- [[Archiu:{{#switch:Matemàtica|20px|Vore el portal sobre Matemàtica]] Portal:Matemàtica. Contingut relacionat en Matemàtica.
- Algoritme de Montecarlo
- Algoritme de Las Vegas
- Algoritme Fisher-Yates
- Encert
- Cadena de Márkov
- Estocàstic
- Generador de números aleatoris
- Integració de Montecarlo
Referències
[editar | editar còdic]- ↑ Penya Sánchez de Rivera, Daniel (2001). «Deducció de distribucions: el método de Mont Carlo», en Fonaments d'Estadística. Madrit: Aliança Editorial. ISBN 84-206-8696-4.
- ↑ 2,0 2,1 «Calcule de per mig de Mont Carlo».
- ↑ Kalos y Whitlock, 2008.
Referències
[editar | editar còdic]
- Este artícul conté una traducció derivada de «Método de Montecarlo» de Wikipedia en castellà publicada baix la Llicència de documentació lliure de GNU i la Llicència Creative Commons Reconeiximent-CompartirIgual 4.0 Internacional.