bbopt / nomad

NOMAD - A blackbox optimization software
https://nomad-4-user-guide.readthedocs.io/
GNU Lesser General Public License v3.0
110 stars 24 forks source link

Evaluation fails for X0 #168

Open ctribes opened 2 months ago

ctribes commented 2 months ago

When Nomad fails to evaluate the provided X0 it will stops immediately with a message that will look like that

BBE ( SOL ) OBJ CONS_H

1   (   5          5          5          5          5          5          5          5          5          5        )   inf inf

X0 evaluation failed for X0 = ( 5 5 5 5 5 5 5 5 5 5 )

A termination criterion is reached: No termination (all). Problem with starting point evaluation (Algo) No more points to evaluate

This can happen when using the batch mode with a standalone blackbox code. In that case, it is recommended to first check the outputs given by the blackbox outside of a Nomad run (put X0 coordinates in a text file and run the blackbox as ./bb.exe X0.txt). The number of outputs must match the outputs as described in the BB_OUTPUT_TYPE parameter.

If the number of outputs produced by the blackbox matches the BB_OUTPUT_TYPE size it is possible that the outputs total length exceeds the evaluator's buffer. This will not happen in most case with a few blackbox outputs considered.

A patch is available in the develop branch (not master). With the patched code, during execution a more explicit message will be provided if X0 fails to evaluate. The message also suggest to change the buffer maximum size in the $NOMAD_HOME/src/Util/defines.hpp if necessary.