This question llegó en el momento adecuado, ya que estoy luchando con la optimización también. Soy consciente de las diferentes rutinas de optimización "normales" en R, y conozco paquetes paralelos como nieve, nevadas, Rmpi y similares. Sin embargo, no logré obtener una optimización en paralelo en mi computadora.optimización paralela en R
Algunos código de juguete para ilustrar:
f <- function(x) sum((x-1:length(x))^2)
a <- 1:5
optim(a,f)
nlm(f,a)
Lo que yo quiero hacer, es poner en paralelo la función Optim() (o la función de la NLM(), que hace básicamente lo mismo). Mi función real f() es mucho más complicada, y una ronda de optimización dura aproximadamente media hora. Si quiero ejecutar una simulación de 100 muestras, esa toma años. Me gustaría evitar escribir mi propio algoritmo de Newton-como para la computación en paralelo, por lo que espero que alguien me podría dar algunas pistas sobre el uso de la computación en paralelo para problemas de optimización complejos en R.
Creo que este el problema es de una naturaleza diferente a la de la pregunta relacionada. Mi solicitud está dirigida específicamente a la computación paralela, no una alternativa más rápida para optim.
Si su función es mucho más complicada, ¿podría paralelizarla en lugar de 'optim'? –
@Joshua: thx, de hecho hay un poco de paralelización posible. Sin embargo, me gustaría usar algún método de enjambre para la optimización también, ya que tengo que aumentar la velocidad al menos otras diez veces para que el modelo sea viable en simulaciones. –