Cuándo usar y no usar ningún método particular de maximización depende en gran medida del tipo de datos que tenga. nlmfuncionará bien si la superficie de probabilidad no es particularmente "rugosa" y es diferenciable en todas partes. nlminbproporciona una manera de restringir los valores de los parámetros a cuadros delimitadores particulares. optim, que es probablemente el optimizador más utilizado, proporciona algunas rutinas de optimización diferentes; por ejemplo, BFGS, L-BFGS-B y recocido simulado (a través de la opción SANN), el último de los cuales podría ser útil si tiene un problema de optimización difícil. También hay varios optimizadores disponibles en CRAN. rgenoud, por ejemplo, proporciona un algoritmo genético para la optimización.DEoptimutiliza una rutina de optimización genética diferente. Los algoritmos genéticos pueden ser lentos para converger, pero generalmente se garantiza que convergerán (a tiempo) incluso cuando haya discontinuidades en la probabilidad. No lo sé DEoptim, pero rgenoudestá configurado para usarse snowen procesamiento paralelo, lo que ayuda un poco.
Entonces, una respuesta probablemente algo insatisfactoria es que debe usar nlmo cualquier otro optimizador si funciona para los datos que tiene. Si tiene una probabilidad de buen comportamiento, cualquiera de las rutinas proporcionadas por optimo nlmle dará el mismo resultado. Algunos pueden ser más rápidos que otros, lo que puede o no importar, dependiendo del tamaño del conjunto de datos, etc. En cuanto a la cantidad de parámetros que estas rutinas pueden manejar, no lo sé, aunque probablemente sean bastantes. Por supuesto, cuantos más parámetros tenga, más probabilidades tendrá de tener problemas de convergencia.