"Early Stop" feature and API call for terminating running experiment


I was wondering if there is an “early stop” feature for the SigOpt optimization: something that would stop the Experiment once a user provided value for a given metric is satisfied (ie. if our metric is ‘time’, then the experiment would stop before it runs out of budget, as soon as any of it’s run achieves a ‘time’ metric below a defined value.)
I looked at the API Reference documentation and didn’t find any similar feature so I started working on a separate python script that sends a query to the API and pulls the best runs from the given experiment (via the use of sigopt.get_experiment(experiment_id).get_best_runs() method).
From there it is easy to write custom logic based on the pulled data, however I cannot find an elegant way to close the Experiment (if I find the best run data to be good enough). The only way I was able to pull it off is via the use of sigopt.archive_experiment([experiment ID]). This will cause an error in the currently running optimization job, as the sigopt won’t be able to log any run data to an archived experiment (that’s ok - this is the behaviour I’m looking for), however it also means that the Experiment is moved to the archived section (not great, would prefer to keep it in the main view). If there was an API call to just close the given experiment (without moving it to archive) it would be great!
Is there any missing API call that I missed that would enable such functionality?


At present, we do not support any sense of “stopping” or “closing” an experiment beyond archival. Depending on how you are running you may be able to modify the experiment budget to match the current number of completed runs (which would then have the effect of treating the experiment as completed). We would recommend using the get_best_runs command that you are referencing to enforce the logic that you suggest here.

Beyond that, we will take your feedback under consideration for future product improvements. Thanks for contributing to the SigOpt community.