本文基于之前所讲的线性规划模型,对一些具体案例做一些实现,如果对于线性规划模型理论不太清楚的小伙伴可以看看这篇文章https://blog.csdn.net/qq_55041016/article/details/122450498
案例一:在满足各种营养物质的需求下,求出最低成本首先,我们看到这个案例,我们需要去找到线性规划的核心三要素:决策变量、目标函数、约束条件
决策变量:、
、
、
、
目标函数:
约束关系:
至此,我们已经找到所有解决问题所需要的信息,接下来就是代码环节:
c = [0.02, 0.07, 0.04, 0.03, 0.05];
A = [0.03, 2, 1, 0.6, 1.8;
0.1, 0.05, 0.02, 0.2, 0.05;
0.05, 0.1, 0.02, 0.2, 0.08];
b = [70; 3; 9.1];
lb = zeros(1,5);
[x, fmin] = linprog(c,-A,-b,[],[],lb)
案例二:(这个案例比案例一难度大不少)
虽然难了一点,但我们从原理上来分析也是可以很容易的解决这个问题的,这个问题我们可以看成有12个变量
即:
决策变量:~
目标函数:
约束关系:
找出所有要素之后,我们又到了熟悉的代码环节:
c = [7 6 6 8 10 11 8 7 7 8 10 11];
Aeq = [1 1 1 1 1 1 0 0 0 0 0 0;
0 0 0 0 0 0 1 1 1 1 1 1;
1 0 0 1 0 0 1 0 0 1 0 0;
0 1 0 0 1 0 0 1 0 0 1 0;
0 0 1 0 0 1 0 0 1 0 0 1];
Beq = [600 500 450 350 300]';
lb = zeros(1,12);
[x, fmin] = linprog(c,[],[],Aeq,Beq,lb)
案例二想的可能稍微复杂一点,但理清关系之后,还是能很快的算出结果的,我的思路对你能有帮助,有更好的想法和思路也欢迎留言交流分享