• 欢迎光临~

每日一题【20200722】

开发技术 开发技术 2022-10-10 次浏览

title: 每日一题【20200722】
excerpt: 第一天建模打卡
tags: [数学建模, 线性规划, linprog]
categories:

  • [学习, 数学建模]
    index_img: https://picture-store-repository.oss-cn-hangzhou.aliyuncs.com/PicGo/20201129201333.jpg
    banner_img: https://picture-store-repository.oss-cn-hangzhou.aliyuncs.com/PicGo/20201129201333.jpg
    date: 2020-07-22 11:11:11
    comment: true
    math: true

线性规划问题

求解下列线性规划问题。

$$max z =2x_1+3x_2-5x_3 $$
$$ x_1+x_2+x_3=7$$
$$2x_1-5x_2+x_3geq10$$
$$ x_1+3x_2+x_3leq12$$
$$ x_1,x_2,x_3geq0$$

解题思路:

  • 根据函数的使用要求;
  • 求最大值,首先要把目标函数转化为最小值,即
    $$min z = - (2x_1+3x_2-5x_3)$$
    要把大于等于转换为小于等于,即在有 “≥” 符号式子两边同时乘以-1;
matlab代码:
c=[2 3 -5]
a=[-2 5 -1;1 3 1]
b=[-10;12]
aeq=[1 1 1]
beq=[7]
lb=zeros(3,1)
ub=[]
[x,fval]=linprog(-c,a,b,aeq,beq,lb,ub) ; %是求最大值而不是最小值,注意这里是"-c"而不是"c"
x,fval=-fval
matlab结果:
x =
    6.4286
    0.5714
         0
fval =
   14.5714

参考

程序员灯塔
转载请注明原文链接:每日一题【20200722】
喜欢 (0)