mapSolution broken in R2019b?
显示 更早的评论
In R2019a, the following code works as intended,
%% Define the variables
x=optimvar('x',{'x1','x2'},'LowerBound',[-100,-200]);
y=optimvar('y',1,3,'LowerBound',[0 0 0],'UpperBound',[+300,+400,+500]);
%% Define some constraints
C.inequ=2*sum(y)+sum(x)<=1000;
C.equ=5*sum(x)==100;
prob=optimproblem('Constraints',C,'Objective',sum(x)+sum(y));
idx=mapSolution(prob,1:5)
resulting in the output,
idx =
struct with fields:
x: [1 2]
y: [1 2 3]
Something must have been changed in R2019b/R2020a, however, because I instead get an error:
Not enough input arguments.
Error in optim.internal.problemdef.ProblemImpl/mapSolution
Error in test (line 12)
idx=mapSolution(prob,1:5)
Were there any intentional changes in the behavior of the mapSolution function, and if so how do I get the code above to work in current Matlab?
3 个评论
Walter Roberson
2020-8-15
编辑:Matt J
2020-8-16
shows a number of mandatory inputs
Matt J
2020-8-16
Walter Roberson
2020-8-16
Darn, it is a .p file so we can't read it.
采纳的回答
更多回答(1 个)
1 个评论
Walter Roberson
2020-8-25
Internal code does not do detailed argument checking for performance reasons.
类别
在 帮助中心 和 File Exchange 中查找有关 Get Started with Optimization Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!