Clear Filters
Clear Filters

Problem-based optimization: Initial guess for only one variable

3 views (last 30 days)
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 Comments
Fabio Freschi
Fabio Freschi on 25 Oct 2023
Why don't you set your b and c variables in the middle of the range? In your case 1?
b999
b999 on 25 Oct 2023
Because I have a lot of constraints besides the variables, which are not fulfilled then.

Sign in to comment.

Answers (1)

Walter Roberson
Walter Roberson on 25 Oct 2023
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 Comments
b999
b999 on 25 Oct 2023
It is an easy example to show my problem. The Size of the Variables could be 50x10 or more and there are more than three variables. The a,b and c is just an example. I can't try taht many possibilities

Sign in to comment.

Categories

Find more on Get Started with Optimization Toolbox in Help Center and File Exchange

Products


Release

R2021b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!