-
Notifications
You must be signed in to change notification settings - Fork 128
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
unknown constraint loop usage and "Y_constraint not found in results object" #248
Comments
Can you share the code you are trying to run, and full stack trace of the error? Otherwise it would be very difficult to diagnose |
Here is the code.
Here's the full stack trace Traceback (most recent call last): |
I realized that the "Y_constraint not found" error occurs because after the first optimization run, the results of loop_state does not include the extra_output because there is no extra_output in the run_loop function. Essentially, the reason is that the constraint function is not evaluated in the loop such that the loop_state for constraint is not updated. I am trying modify both the update functions in loop_state and the run_loop function in the outer_loop to include the constraint function. |
I tried to use the UnknownConstraintBayesianOptimizationLoop to optimize my objective function with constraint. However, I have a couple of issues with this loop.
First, when I initialize the loop with two gpy models and try to run it with "run_loop", I found the error "Y_constraint not found in results object". Tracing back to the function, I am wondering is there anything wrong with the create_loop_state function called in UnknownConstraintBayesianOptimizationLoop constructor.
Moreover, since run_loop only takes the objective function as a input, it can only update the objective model. However, from my understanding for the https://arxiv.org/abs/1403.5607 paper, the constraint model should also be updated with each iteration when a new constrained value calculated, but I don't see a implementation on this. Therefore, I am wondering that whether this part has not be implemented yet or I misunderstood it?
The text was updated successfully, but these errors were encountered: