4 votos

Aproximadamente invirtiendo las funciones con los métodos de Monte Carlo

Tengo el siguiente problema: Dejar f:RnRm con n>m ser una función suave. Quiero encontrar vectores de entrada xRn que dan un resultado determinado yRm así que f(x)=y . Mi idea era empezar en un vector aleatorio x0Rn y tratar de disminuir iterativamente la L2 -norma de las diferencias, de modo que para cualquier n tenemos ||f(xn+1)y)||2<||f(xn)y)||2 . ¿Sería esto posible con algún tipo de enfoque de Monte Carlo? ¿O hay algún enfoque existente que pueda ser utilizado para abordar este problema? ¡Gracias de antemano!

3voto

littleO Puntos 12894

Un enfoque es resolver el problema de la optimización minimize12f(x)y22. La variable de optimización es xRn . Este problema de optimización podría ser resuelto con un método como el descenso de gradiente o el método de Newton o Levenberg-Marquardt. El descenso de gradiente es una forma sencilla de hacerlo.

El derivado de la función objetivo F(x)=12f(x)y22 es F(x)=(f(x)y)Tf(x). El m×n matriz f(x) también es llamado el jacobino de f en x . Si usamos la convención de que el gradiente de F es un vector de la columna, entonces \begin {alinear} \nabla F(x) &= F'(x)^T \\ &= f'(x)^T (f(x) - y). \end {alinear} La iteración del descenso del gradiente es xk+1=xktF(xk). Si el tamaño del paso t>0 es lo suficientemente pequeño entonces los iterados xk convergerán en un minimizador local de F . Existe el peligro de que nos quedemos atrapados en un mínimo local, pero si la suposición inicial x0 es lo suficientemente bueno entonces tenemos una buena oportunidad de converger a un valor de x que satisface f(x)=y .

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X