MATLAB Answers

Get coefficients of variables in constraints (solver-based approach)

2 views (last 30 days)
nhavt
nhavt on 18 Jul 2021
Commented: nhavt on 18 Jul 2021
Hi there, I am currently using the Optimization Toolbox to solve a large mixed-integer linear programing problem (ILP). So, I formulated my problem using a problem-based approach. However, the current MATLAB solver "intlinprog" is quite slow for my problem. Therefore, I am switching to CPLEX solver (version 12.10). For this, I need to formulate my problem using a solver-based approach. In particurlar, I am trying to get coefficients of variables in several constraints formulated using optimizationExpression. For example, I have a following constraint,
x = optimvar('x',[10,1]);
w = 1:10
constraint1 = w*x
So, I would like to get the coefficients of variables x in constraint1 (which is w in this simple case). Would it be possible to achieve this? Thanks very much in advance!

Accepted Answer

Matt J
Matt J on 18 Jul 2021
Edited: Matt J on 18 Jul 2021
Yes, you can use prob2struct or prob2matrices:
S=prob2matrices({x},'Constraints',w*x<=0)
  1 Comment
nhavt
nhavt on 18 Jul 2021
yes, this is wondeful! I didnot know this funtion. Thanks for developing this great tool!

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!

Translated by