Reporting constraint violations
Issue
Everest does currently not monitor and handle constraint violations properly, in particular output constraints. Currently only the optpp_q_newton algorithm seems to monitor output constraint violations, via a merit function approach. This appears to be a Dakota feature, that does not even seem to be supported fully by all Dakota algorithms. It is unlikely that this approach can be generalized to other algorithms.
It is possible that optimization algorithms produce intermediate results that violate some constraints. These are currently reported as feasible solutions even when they may be infeasible.
The ropt package that runs the optimization currently tracks and reports 'hard' constraint violations using a threshold approach. This information should be made available to Everest and used to mark infeasible results.
Definition of done When constraint violations are detected and reported properly.