前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >matlab求解下面的线性规划和整数规划[通俗易懂]

matlab求解下面的线性规划和整数规划[通俗易懂]

作者头像
全栈程序员站长
发布2022-09-14 11:08:01
4110
发布2022-09-14 11:08:01
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

matlab求解下面的线性规划和整数规划

  本篇博客主要讲了用matlab实际求解整数规划问题,目前还没有时间去自己实现整数规划算法,只能通过调用MATLAB的函数去实现。

题目
这里写图片描述
这里写图片描述
代码

第一小题

代码语言:javascript
复制
%线性规划代码
%author Canlong
f=[-3,-2];
A=[2,3;1,0.5];
b=[14;4.5];
C=[];
d=[];
xm=[0;0];
xM=1e+10*[1;1];
x0=[0,0];
%f,代表目标函数系数,A自变量系数矩阵,b,右边的目标值矩阵,xm自变量最小值,
%xM自变量最大值,x0初值。
 [x,y]=linprog(f,A,b,C,d,xm,xM,x0)

运行得到x1=3.25,x2=2.5 。y=14.75 第二小题

代码语言:javascript
复制
%整数规划代码
%author Canlong
f=[-3,-2];
A=[2,3;1,0.5];
b=[14;4.5];
C=[];
d=[];
xm=[0;0];
xM=1e+10*[1;1];
x0=[0;0];
%intlinprog 函数,用于进行整数规划和整数非整数的混合规划
[x,y,flag]=intlinprog(f,[1,2],A,b,C,d,xm,xM)

运行得到,x1=4,x2=1,y=14 这里需要说明一下的是,matlab较新的版本中才会有intlinprog。编者在这里用的MATLAB 7.0.

总结

  用MATLAB求解整数规划的函数为intlinprog,求解线性规划的函数是linprog.不过在实验中,在得到y的值的时候,要注意求解得到的y的值是原来应该求解y 的值的负值,因为原来求解的是最大值。一不小心这个细节方面的问题很容易就会出错。然后整数规划中的intlinprog函数要注意的主要是第二个参数是intcon,代表的是intcon的意义为整数约束变量的位置。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/157931.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年7月1,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • matlab求解下面的线性规划和整数规划
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档