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

matlab求解下面的线性规划和整数规划[通俗易懂]matlab求解下面的线性规划和整数规划  本篇博客主要讲了用matlab实际求解整数规划问题,目前还没有时间去自己实现整数规划算法,只能通过调用MATLAB的函数去实现。题目代码第一小题%线性规划代码%authorCanlongf=[-3,-2];A=[2,3;1,0.5];b=[14;4.5];C=[];d=[];xm=[0;0];xM=1e+10*[…

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

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

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

题目

这里写图片描述

代码

第一小题

%线性规划代码
%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
第二小题

%整数规划代码
%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.net/157931.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • aliddns ipv6_Python实现阿里云域名DDNS支持ipv4和ipv6-阿里云开发者社区

    aliddns ipv6_Python实现阿里云域名DDNS支持ipv4和ipv6-阿里云开发者社区前言然后你的IP必须是公网IP,不然解析了也没用。本文章讲怎样通过阿里云的SDK来添加修改域名解析,检查本机IP与解析的IP是否一致,不一致自动修改解析,达到动态解析的目的,主要用于家庭宽带这些动态IP的地方。安装阿里云SDK和其他第三方库pipinstallaliyun-python-sdk-core-v3pipinstallaliyun-python-sdk-domainpipins…

    2022年5月30日
    31
  • SystemUI.apk文件反编译初次尝试

    SystemUI.apk文件反编译初次尝试瘟疫期期间,闲来无事,从手机系统中提取了SystemUI.apk文件,打开查看发现乱码,于是尝试反编译apk。准备工作:0.首先确保使用java1.8或以上1.下载运行脚本并重命名为apkto

    2022年7月3日
    28
  • 简单操作去除PDF文件[通俗易懂]

    简单操作去除PDF文件[通俗易懂]简单操作去除PDF加,密文件

    2022年10月15日
    0
  • SQL之视图与索引[通俗易懂]

    SQL之视图与索引[通俗易懂]SQL之视图与索引视图的定义、修改、使用索引的创建、查看视图人们在使用数据库时,并不是直接对数据源表进行操作,通常人们只关心源表的部分数据,因此为了使得用户在查询时方便,用不着在每次查询时都编写复杂的代码(比如连接等),可以事先将用户要使用的查询结果通过视图定义在数据库中,这样人们在进行查询时只需查看视图即可,简化了用户的操作,同时使得数据同源数据分离,提高了安全性。1.视图的创建语法:

    2022年7月22日
    8
  • c++中数组下标越界输出什么_C语言数组的越界和溢出

    c++中数组下标越界输出什么_C语言数组的越界和溢出引言最近突然想到当数组array有2个元素,而访问其array[2]时会不会编译错误的问题,答案是编译的时候不报错,只有运行的时候才报错。感悟以下是我测试用的代码,程序可以正常编译,且编译正确,只是在运行的时候出现程序崩溃。chararray[2]={‘2′,’3’};std::cout<<array[2]<<std::endl;//编译正常,运行的时候出现问题基于上述现象,说明程序在编译的时候没有进行下标越界的检查,当一个程序生成可执行文件的时候

    2022年10月2日
    0
  • html 简单表格代码「建议收藏」

    html 简单表格代码「建议收藏」&lt;!DOCTYPEhtml&gt;&lt;html&gt; &lt;head&gt; &lt;title&gt;&lt;/title&gt; &lt;/head&gt; &lt;body&gt; &lt;tablestyle="withd:600px"border="1"&gt; &lt;capti

    2022年8月11日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号