Problem-based optimization: Initial guess for only one variable
3 次查看(过去 30 天)
显示 更早的评论
Hello,
I have a optimization problem with the problem-based approach and I am defining a few variables
A = ones(50,10);
a = optimvar("a",size(A),"Type","integer","LowerBound",0,"UpperBound",2);
b = optimvar("b",size(a),"Type","integer","LowerBound",0,"UpperBound",2);
c = optimvar("c",size(a),"Type","integer","LowerBound",0,"UpperBound",2);
Now I want to make an initial guess for only a, because I can't guess values for b and c. I tried it like this, but it doesn't work:
initial_guess = ...;
x0 = struct('a', initial_guess, 'b', [], 'c', []);
...
solution = solve(prob, x0);
It says, that b and c can't be empty. But I don't know how to implemnt it in another way.
Is there a possibilty to make a guess for only one variable?
(If I am defining b and c e.g. as zeros, the guess is infeasable)
2 个评论
Fabio Freschi
2023-10-25
Why don't you set your b and c variables in the middle of the range? In your case 1?
回答(1 个)
Walter Roberson
2023-10-25
there are only 3^3 different possibilities. Run them each in turn hardcoding one particular a, b, c possibility. Take the best of the 27 results as the solution.
2 个评论
另请参阅
类别
在 Help Center 和 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!