介绍
动态规划是运筹学的一个分支,是求解多阶段决策问题的最优方法。例如:最短路线问题、库存管理、资源分配、设备更新等问题,用动态规划方法求解更方便。
Sparse创建稀疏矩阵
例子1:根据i、j 和 v 三元组生成1500 x 1500 的稀疏矩阵
i = [900 1000];
j = [900 1000];
v = [10 100];
S = sparse(i, j, v, 1500, 1500)
S =
(900,900) 10
(1000,1000) 100
权重矩阵
例子2:手动输入权重矩阵
>> w = zeros(4);
>> w(1,2) = 2; %w(起点,终点) = 权重值
>> w(1,3) = 3;
>> w(1,4) = 8;
>> w(2,3) = 6;
>> w(2,4) = 6;
>> G = sparse(w)
G =
(1,2) 2
(1,3) 3
(2,3) 6
(1,4) 8
(2,4) 6
例子3:直接录入权重值
>> %G = sparse([起点集合],[对应终点集合],[对应权重集合])
>> G = sparse([3 2 3 4 1],[1 2 2 3 4],[1 2 3 4 5]);
>> s = sparse(G)
s =
(3,1) 1
(2,2) 2
(3,2) 3
(4,3) 4
(1,4) 5
求有向图最短路径
所用函数为graphallshortestpaths
语法:
[dist] = graphallshortestpaths(G)
参数:G:稀疏矩阵
例子4:创建并查看具有6个节点和11个边的有向图
biograph函数在2022版已经无法使用,BUG暂时还没有得到解决!
以后学懂matlab再回来继续学习
数学建模学习(15):动态规划模型之求图的所有最短路径最详讲解,讲解不易只求三连!_统筹学动态规划的一个图示模型_川川菜鸟的博客-CSDN博客