前言
最近跟老师在做数字孪生的问题,里面涉及到了要去求解规划问题,主要涉及了鲁棒性优化 [Robust Optimization] 和 整数规划。在这个过程中,了解到了很多利用matlab与python的求解器平台,比如Cplex
,Xprog
,Yalmip
,Gurobi
…
Gurobi整数规划代码实例
function [x,y]=Gurobi_LP
clc;
clear;
yalmip('clear');
% 定义变量
cons=[];
% 决策变量
x=sdpvar(1,3);
% 目标函数
y=2*x(1)+3*x(2)+x(3);
% 约束条件
cons=[cons,x(1)+4*x(2)+2*x(3)>=8];
cons=[cons,3*x(1)+2*x(2)>=6];
cons=[cons,x(1)>=0];
cons=[cons,x(2)>=0];
cons=[cons,x(3)>=0];
% 求解
ops = sdpsettings('solver','gurobi','showprogress',1);
optimize(cons,y,ops);
% 结果
x=double(x);
y=double(y);
end
ops = sdpsettings