Matlab~30个算法

matlab算法

第01章 MATLAB 线性规划



一、线性规划解决什么问题?

利用现有资源来安排生产,以取得最大经济
效益的问题

二、解决方案

1.单纯形法

这里不再过多解释,普通的画图工具即可完成,这里推荐Geogebra

2.MATLAB实现

在这里插入图片描述

基本函数形式为 linprog(c,A,b),它的返回值是向量 x 的值。还有其它的一些函数调用形式(在 Matlab 指令窗运行 help linprog 可以看到所有的函数调用形式),如:
[x,fval]=linprog(c,A,b,Aeq,beq,LB,UB,X0,OPTIONS)
这里 fval 返回目标函数的值,LB 和 UB 分别是变量 x 的下界和上界,x0 是 x 的初始值,OPTIONS 是控制参数。

三、常见问题

eg 1 线性规划

案例1
Step 1
编写M文件

c=[2;3;-5];
a=[-2,5,-1;1,3,1]; b=[-10;12];
aeq=[1,1,1];
beq=7;
x=linprog(-c,a,b,aeq,beq,zeros(3,1)) %第一项取得是min,如果求max可以填个符号,第二、三项取得是<的一边,这样比较容易整,zeros(3,1)构造维度好习惯
value=c.*x   %也可以用'*操作符
&也可以这样处理
[x,y] = linprog(-c,a,b,aeq,beq,zeros(3,1)) ; %这样操作取得的是凸点y的负值
x; vaule = -y 


.* 和 * 的区别

在进行数与数之间的运算时“.”和“”是没有区别的,都是表示普通的乘法运算。例:m = 2,n = 4,m.n = 8, mn = 8。
在进行矩阵之间的运算时“.”和“”的意义就有所不同了。假设a,b表示两个矩阵,a*b表示矩阵a与矩阵b进行矩阵相乘,a.*b表示矩阵a中的元素与矩阵b中的元素按位置依次相乘,得到的结果将作为新矩阵中相同位置的元素。

Step 2
存盘、命名

Step 3
运行

eg 2 运输问题(产销平衡)

数学模型:

在这里插入图片描述
其约束条件的系数矩阵相当特殊,可用比较简单的计算方法,习惯上称为表上作业法(由康托洛维奇和希奇柯克两人独立地提出,简称康—希表上作业法)。
采用表上作业法即可,产销平衡和产销不平衡问题的链接放上: 运输问题表上作业法步骤.

eg 3 指派问题

拟分配n 人去干n项工作,每人干且仅干一项工作,若分配第i人去干第j项工作,需花费Cij单位时间,问应如何分配工作才能使工人花费的总时间最少?

数学模型:
在这里插入图片描述
在这里插入图片描述
可以发现指派问题可以转化为特殊的运输问题

独特解法

1.求解指派问题的匈牙利算法
这里有篇文章写的很好,小菜鸡就不写了,链接放上: 匈牙利算法解决指派问题清晰流程.

eg 4 对偶理论与灵敏度分析

知道有这回事就行,遇上再说[doge]
指的是问题矩阵的转置有解求原矩阵的最优解
链接放上:运筹学中应该如何理解互补松弛性。这条性质又该如何运用?

eg 5 投资的收益和风险

涉及数学建模,MATLAB方面的反而不多,需要建模原型的留言

总结

1.MATLAB中LP问题的矩阵处理,linprog函数
2.表上作业法
3.五个问题

  • 6
    点赞
  • 56
    收藏
  • 打赏
    打赏
  • 0
    评论
说明: 十大算法MATLAB程序,可用于数学建模,算法和程序相对应 十大算法 十大算法\dijkstra 十大算法\dijkstra\dijk.txt 十大算法\Floyd算法 十大算法\Floyd算法\floyd.txt 十大算法\Floyd算法\中国数学建模-数学工具-Floyd最短路算法MATLAB程序.txt 十大算法\免疫算法.txt 十大算法\分治算法 十大算法\分治算法\c程序.txt 十大算法\分治算法\中国数学建模-编程交流-分治算法_1.txt 十大算法\分治算法\中国数学建模-编程交流-分治算法_2.txt 十大算法\动态规划 十大算法\动态规划\中国数学建模-编程交流-动态规划算法_1.txt 十大算法\动态规划\中国数学建模-编程交流-动态规划算法_2.txt 十大算法\动态规划\中国数学建模-编程交流-动态规划算法_3.txt 十大算法\图论 十大算法\图论\哈密尔顿回路 十大算法\图论\哈密尔顿回路\Desktop_.ini 十大算法\图论\哈密尔顿回路\TSP模拟退火 十大算法\图论\哈密尔顿回路\TSP模拟退火\accept.m 十大算法\图论\哈密尔顿回路\TSP模拟退火\annealing.m 十大算法\图论\哈密尔顿回路\TSP模拟退火\calculate.m 十大算法\图论\哈密尔顿回路\TSP模拟退火\cost.mat 十大算法\图论\哈密尔顿回路\TSP模拟退火\cost_sum.m 十大算法\图论\哈密尔顿回路\TSP模拟退火\Desktop_.ini 十大算法\图论\哈密尔顿回路\TSP模拟退火\exchange2.m 十大算法\图论\哈密尔顿回路\TSP模拟退火\exchange3.m 十大算法\图论\哈密尔顿回路\TSP模拟退火\说明.txt 十大算法\图论\哈密尔顿回路\三边交换简单算法 十大算法\图论\哈密尔顿回路\三边交换简单算法\bianquan.m 十大算法\图论\哈密尔顿回路\三边交换简单算法\cost_sum.m 十大算法\图论\哈密尔顿回路\三边交换简单算法\Desktop_.ini 十大算法\图论\哈密尔顿回路\三边交换简单算法\jiaohuan3.m 十大算法\图论\哈密尔顿回路\三边交换简单算法\哈密尔顿回路.rar 十大算法\图论\哈密尔顿回路\三边交换简单算法\说明.txt 十大算法\图论\图论.ppt 十大算法\图论\图论1.pdf 十大算法\图论\图论及其应用.doc 十大算法\图论\最短路f_d.doc 十大算法\图论\用计算机实现图论中的最短路径程序 十大算法\图论\用计算机实现图论中的最短路径程序\Algo7-1.c 十大算法\图论\用计算机实现图论中的最短路径程序\Algo7-2.c 十大算法\图论\用计算机实现图论中的最短路径程序\Algo7-3.c 十大算法\图论\用计算机实现图论中的最短路径程序\Algo7-4.c 十大算法\图论\用计算机实现图论中的最短路径程序\Algo7-5.c 十大算法\图论\用计算机实现图论中的最短路径程序\Algo7-6.c 十大算法\图论\用计算机实现图论中的最短路径程序\Algo7-7.c 十大算法\图论\用计算机实现图论中的最短路径程序\BO7-1.C 十大算法\图论\用计算机实现图论中的最短路径程序\Bo7-2.c 十大算法\图论\用计算机实现图论中的最短路径程序\Bo7-3.c 十大算法\图论\用计算机实现图论中的最短路径程序\Bo7-4.c 十大算法\图论\用计算机实现图论中的最短路径程序\c1.h 十大算法\图论\用计算机实现图论中的最短路径程序\C7-1.H 十大算法\图论\用计算机实现图论中的最短路径程序\C7-2.H 十大算法\图论\用计算机实现图论中的最短路径程序\C7-3.H 十大算法\图论\用计算机实现图论中的最短路径程序\C7-4.H 十大算法\图论\用计算机实现图论中的最短路径程序\F7-1.DAT 十大算法\图论\用计算机实现图论中的最短路径程序\MAIN7-1.c 十大算法\图论\用计算机实现图论中的最短路径程序\Main7-2.c 十大算法\图论\用计算机实现图论中的最短路径程序\Main7-3.c 十大算法\图论\用计算机实现图论中的最短路径程序\Main7-4.c 十大算法\搜索算法 十大算法\搜索算法\中国数学建模-编程交流-搜索算法基础.txt 十大算法\概率算法 十大算法\概率算法\中国数学建模-编程交流-概率算法简介.txt 十大算法\模拟退火算法 十大算法\模拟退火算法\中国数学建模-编程交流-模拟退火算法.txt 十大算法\模拟退火算法\模拟退火算法.txt 十大算法\模拟退火,禁忌搜索,遗传算法,神经网络-MATLAB程序合集 十大算法\模拟退火,禁忌搜索,遗传算法,神经网络-MATLAB程序合集\简单函数优化的遗传算法程序 十大算法\模拟退火,禁忌搜索,遗传算法,神经网络-MATLAB程序合集\简单函数优化的遗传算法程序\cro.m 十大算法\模拟退火,禁忌搜索,遗传算法,神经网络-MATLAB程序合集\简单函数优化的遗传算法程序\ft.m 十大算法\模拟退火,禁忌搜索,遗传算法,神经网络-MATLAB程序合集\简单函数优化的遗传算法程序\ga.m 十大算法\模拟退火,禁忌搜索,遗传算法,神经网络-MATLAB程序合集\简单函数优化的遗传算法程序\init.mat 十大算法\模拟退火,禁忌搜索,遗传算法,神经网络-MATLAB程序合集\简单函数优化的遗传算法程序\main.m 十大算法\模拟退火,禁忌搜索,遗传算法,神经网络-MATLAB程序合集\简单函数优化的遗传算法程序\mut.m 十大算法\模拟退火,禁忌搜索,遗传算法,神经网络-MATLAB程序合集\简单函数优化的遗传算法程序\n2to10.m 十大算法\模拟退火,禁忌搜索,遗传算法,神经网络-MATLAB程序合集\简单函数优化的遗传算法程序\objf.m 十大算法\模拟退火,禁忌搜索,遗传算法,神经网络-MATLAB程序合集\简单函数优化的遗传算法程序\pro.m 十大算法\模拟退火,禁忌搜索,遗传算法,神经网络-MATLAB程序合集\简单函数优化的遗传算法程序\sel.m 十大算法\灰色预测 十大算法\灰色预测\灰色预测.pdf 十大算法\灰色预测\灰色预测MATLAB程序.txt 十大算法\灰色预测\灰色预测法.doc 十大算法\神经网络 十大算法\神经网络\matlab15.pdf 十大算法\神经网络\matlab16.pdf 十大算法\穷举法求解0-1整数规划的matlab程序.txt 十大算法\类比法 十大算法\类比法\数学建模中的类比方法.pdf 十大算法\组合算法 十大算法\组合算法\中国数学建模-编程交流-组合算法概论.txt 十大算法\网上matlab 十大算法\网上matlab\提高matlab运算速度.files 十大算法\网上matlab\提高matlab运算速度.files\index.files 十大算法\网上matlab\提高matlab运算速度.files\index.files\bg.gif 十大算法\网上matlab\提高matlab运算速度.files\index.files\icon_menu_05.gif 十大算法\网上matlab\提高matlab运算速度.files\index.files\icon_menu_06.gif 十大算法\网上matlab\提高matlab运算速度.files\index.files\icon_menu_07.gif 十大算法\网上matlab\提高matlab运算速度.files\index.files\icon_menu_08.gif

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:游动-白 设计师:我叫白小胖 返回首页
评论

打赏作者

IceBear19

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值