#1492 closed doubt (fixed)
Error con NonLinGloOpt
Reported by: | Pedro Gea | Owned by: | Víctor de Buen Remiro |
---|---|---|---|
Priority: | high | Milestone: | Mantainance |
Component: | Kernel | Version: | 3.1 |
Severity: | critical | Keywords: | |
Cc: |
Description
Al hacer una optimización de unas previsiones con el paquete NonLinGloOpt encuentro el siguiente mensaje de error:
[nlopt] 1 evaluation of TARGET EvalTarget 795013132.290491 ERROR: [1] [NonLinGloOpt::CppTools::optimize] The proccess has failed in the first evaluaiton. [Call stack] [5] Real engine::engine::run (Matrix x0, Real verboseEach) [4] Real method::run (Matrix x0, Real verboseEach) [3] Real pipeLine::run (Real void) [2] Real pipeLine::optimize (Real forzeFeasible_) [1] Real mainObject::optStrategy::optStrategyNLO::Execute (Real void) [NonLinGloOpt::@PipeLine::run] step 1 NLOPT.LN_COBYLA found optimal value =795013132.2904912 after 1 target evaluations in 24.50945100000001 seconds Stop reason: FAILURE
¿Alguna idea de qué se puede tratar? o ¿qué puedo hacer para averguarlo?
Como nota añado que si insisto y vuelvo a ejecutar:
Real pipeLine::optimize(1);
la optimización continua sin dar erorres.
Change History (5)
comment:1 Changed 13 years ago by
comment:3 Changed 13 years ago by
Dada una instancia @Problem problem
el método
Set sca = problem::select_compatible_algorithms(?);
devuelve una tabla con la información relativa a los algoritmos compatibles con la definición del problema.
Es necesario usar NonLinGloOpt.5.3
o superior.
comment:5 Changed 13 years ago by
El error saltaba al no poder completarse la primera evaluación en el tiempo máximo establecido.
El error se mostraba pues la optimización se detenía en la primera evaluación sin alcanzar el criterio de parada establecido por valor tope.
La librería NLOPT no da apenas información en caso de error.
Normalmente se debe a que el método no sirve para ese problema pero no hay forma de saber que método valdrá.
Todo lo que sé de este paquete está en el wiki.
Voy a actualizar el paquete para incluir un método que devuelva los algoritmos compatibles con un problema dado para facilitar la tarea de buscar uno adecuado.
Sin más informacion no puedo ser más concreto.