一个简单的线性规划问题,使用Matlab的linprog解决
假定有n种煤,各种煤的配比为x1,x2,x3,…… 首先需要满足下列两个约束条件, 即 x1+x2+x3……+xn=1 x1≥0, x2≥0,x3≥0,……,xn≥0 煤种 全水分 空干基水分 收到基灰分 收到基低位发热值 1 33.6 15.43 19.07 2958 2 13.4 2.58 43.49 3860 3 17.5 2.84 23.35 4400 4 13.7 4.27 24.37 4486 5 11.2 2.72 36.05 3879 6 8.7 2.57 36.41 3939 约束条件: 全水分<=15 空干基水分<=4 收到基灰分<=30 3850<=低位热值<=4300 问:x1,x2,x3,……如何分配 %目标函数为x1+2*x2+3*x3+4*x4+5*x5+6*x6 ,求其最小值 %目标函数 f=[1 2 3 4 5 6]'; %不等式约束 A= [0.0336 0.0134 0.0175 0.0137 0.0112 0.0087 0.0154 0.0026 0.0028 0.0043 0.0027 0.0026 0.0191 0.0435 0.0234 0.0244 0.0360 0.0364 2.9580 3.8600 4.4000 4.4860 3.8790 3.9390 -2.9580 -3.8600 -4.4000 -4.4860 -3.8790 -3.9390]*1e3; b=[15 4 30 4300 -3850]'; %边界 lb=zeros(6,1); %等式约束 Aeq=[1 1 1 1 1 1]; beq=1; %调用linprog函数 x=linprog(f,A,b,Aeq,beq,lb)
运行结果如下:
Optimization terminated. x = 0.0000 0.3124 0.3668 0.3208 0.0000 0.0000
|
请发表评论