Problem-based optimization: Initial guess for only one variable

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

Why don't you set your b and c variables in the middle of the range? In your case 1?
Because I have a lot of constraints besides the variables, which are not fulfilled then.

Sign in to comment.

Answers (1)

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

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
Is there a possibilty to make a guess for only one variable?
NO.

Sign in to comment.

Products

Release

R2021b

Asked:

on 25 Oct 2023

Commented:

on 26 Oct 2023

Community Treasure Hunt

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

Start Hunting!