Not enough input arguments for multivariable function when using bayesopt.
이전 댓글 표시
I want bayesopt to minimize two variables in a particular function. This piece of code works with one function (just var,) but the second I try to add var1 and its corresponding y input into the function all I get is "not enough input arguments." The error sites the "fun = ..." line as the one with the error.
Here is my code and its corresponding error:
var = optimizableVariable('theta',[1,10],'Type','real');
var1 = optimizableVariable('alpha',[1,10],'Type','real');
fun = @(x,y)objfunxx(x.theta, y.alpha); %Create Function Handles
results = bayesopt(fun,[var,var1]);
function f = objfunxx(x,y)
f=y*sin(x);
end
답변 (1개)
Walter Roberson
2023년 9월 13일
0 개 추천
fun accepts x, a 1-by-D table of variable values, and returns objective, a real scalar representing the objective function value fun(x).
You on the other hand are expecting the function to be passed two objects
카테고리
도움말 센터 및 File Exchange에서 Statistics and Machine Learning Toolbox에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

