目录
·整数规划的简单介绍
根据决策变量是否完全为整数将整数规划划分为纯整数规划和混合整数规划,根据整数规划中的决策变量是否完全为0-1时可以将整数规划再次划分为纯0-1整数规划,混合0-1整数规划。
·整数规划的Lingo求解
在求解整数规划方面,Lingo更胜一筹,因此在这里采用了Lingo求解
Lingo只需在最后对决策变量使用@GIN函数就能对解进行整数限制,使用@BIN函数就能对解进行0-1限制。
1.Lingo的简单使用
例:
Lingo求解:
sets:
n/1..2/:x;
endsets
max = 3*x(1)-x(2);
3*x(1)-2*x(2)<=3;
5*x(1)+4*x(2)>=10;
2*x(1)+x(2)<=5;
@for(n:@gin(x));
end
代码分析:
Lingo程序大致由三部分sets,data,min/max组成
其中sets是设置变量的个数,如例1:n/1..2/:x; 表示设置一个n类型向量,其中向量名词为x,向量中元素个数为2。
data为数据集,对设置的变量进行赋值,当语句较多的时候使用。
min/max为目标函数段,其包括目标函数及其约束条件。
其中for循环意义不变多讲,gin函数是将决策变量约束为整数,bin函数将决策变量约束为0-1
运行结果:
运行