equinor / everest

GNU General Public License v3.0
4 stars 5 forks source link

Reporting constraint violations #2

Open verveerpj opened 2 months ago

verveerpj commented 2 months ago

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.