图论算法简介

图论起源于哥尼斯堡七桥问题

要求从以点出发走过所有的路径。
图论 (Graph theory) 以图为研究对象, 研究顶点和边组成的图形的数学理论和方法。
图论中的图是由若干给定的顶点及连接两顶点的边所构
成的图形。
图论中的图通常用来描述某些事物之间的某种特定关系,用顶点代表事物,用边表示相应两个事物间的关系。

概念、算法

图(无向图)的构成

图的构成: 顶点集 边集 关联函数
顶点集V(G): 图G中所有顶点的集合
边集E(G): 图G中所有边的集合
关联函数φG φG:E(G)→V(G)
环: 端点重合为一点的边。
连杆: 端点不重合的边。
重边: 具有相同的两个端点的边。

上图就可以描述成:
 V(G)={u,v,w,x,y}
 E(G)={a,b,c,d,e,f,g,h}
  φG(e)=vx或xv(无向)
 b为环
 a为连杆
 d、f为重边
有向图和无向图差别就在路线上是否有箭头。

图(有向图)的构成

有向图构成: 顶点 弧集 关联函数
顶点集V(G): 图 G 中所有顶点的集合。
弧集 A(G): 图 G 中所有弧的集合。
关联函数 φG φG : A(a) →V(G)
上图就可以描述成:
 V(G)={u,v,w,x,y}
 A(G)={a,b,c,d,e,f,g,h}
  φG(a)=uv
子图: 在原图上去掉一些边和节点的图。
完全图: 图中任意两点都有边相连。
完全二分图: 节点可以被分为两部分,它们之间任意两个节点都有边相连。
星图: 为完全二分图演化出来的,当其中一个集合中只有一个节点的时候,就是星图。
**连通图:**点与点直接可以通过若干边就能到达。
**不连通图:**点与点之间存在无法通过边到达的情况。

图与网络的数据结构

无向图关联矩阵/邻接矩阵


关联矩阵 M = (mve), mve ∈{0,1,2}表示边 e 与顶点 v 关联的次数。

邻接矩阵 A = (auv), auv 表示是否存在从顶点 u 到 v 的弧。

有向图关联矩阵/邻接矩阵


关联矩阵 M = (mva), mva∈(1,−1,0)分表示弧 a 与顶点 v关联的关系(尾、头、其它)。

邻接矩阵 A = (auv), auv表示是否存在从顶点 u 到 v 的弧。

顶点的度和中心度

度dG(v): G 中 与 v 关 联 的 边 数,dG(v) = d-(v) + d+(v)。
出度d-(v) : 以 v 为弧尾,起始于该点的弧数。
入度 d+(v): 以 v 为弧头,终止于该点的弧数。

这里d-(v)= 3;d+(v)=2。
点度中心度
接近中心度
一个顶点到其他所有顶点的距离和的倒数

中间中心度
作为最短路径中间节点的频率

特征向量中心度

matlab中包含的与图论相关的一些函数

函数名 功能
graphallshortestpaths 求图中所有顶点对之间的最短距离
graphconnredcomp 找无 (有) 向图的 (强/弱) 连通分支
graphisreddag 测试有向图是否含有圈
graphisomorphism 确定一个图是否有生成树
graphmaxflow 计算有向图的最大流
graphminspantree 在图中找最小生成树
graphpred2path 把前驱顶点序列变成路径的顶点序列
graphshortestpath 求指定一对顶点间的最短距离和路径
graphtopoorder 执行有向无圈图的拓扑排序
graphtraverse 求从一顶点出发, 所能遍历图中的顶点

调用这些函数/工具箱前的准备

无向图做一个下三角矩阵即可


可以看到写成的矩阵含有很多的0,因此也可以改写成稀疏矩阵

两种矩阵类型可以通过full和sparse函数相互转化。

网络分析工具箱

不是自带的,好像需要下载

函数名 功能
degrees 求图中所有顶点的度,入度和出度
ave_neighbor_deg 求图中所有顶点的相邻顶点平均度
closeness 求图中所有顶点的接近中心度
node_betweenness_faster 求图中所有顶点的中间中心度
edge_betweenness 求图中所有边的中间中心度
eigencentrality 求图中所有顶点的特征向量中心度
clust_coeff 求图中所有顶点的集聚系数

教程中大概讲了一个赈灾巡查的案例,提到了使用启发式算法和图论模型结合优化方案。感觉这是一个比较好的例子,同时对于我来说也比较复杂,我会单独写一篇对这个案例算法优化的讨论。

matlab图论模型和算法相关推荐

  1. 图论模型Floyd算法

    图论模型Floyd算法 一.简介 二.MATLAB执行代码 一.简介 二.MATLAB执行代码 tulun2.m a= [ 0,50,inf,40,25,10;50,0,15,20,inf,25;in ...

  2. 数学建模:图论模型-Floyd算法

    紧接着来介绍一下图论模型的另一种算法--Floyd算法,然后介绍其在MATLAB中的实现方法: Floyd算法:Floyd算法是一个经典的动态规划算法.用通俗的语言来描述的话,首先我们的目标是寻找从点 ...

  3. 【数学建模】图论模型-Floyd算法(最优化)

    文章目录 一.算法介绍 二.适用问题 三.算法总结 1. 步骤 四.应用场景举例 五.MATLAB代码 六.实际案例 七.论文案例片段(待完善) Floyd算法主要针对数学建模问题中的一些小的子问题进 ...

  4. 【数学建模】图论模型-dijkstra算法(最优化)

    文章目录 一.算法介绍 1. 带权邻接矩阵 二.适用问题 三.算法总结 1. 步骤 四.应用场景举例(待完善) 五.MATLAB代码 六.实际案例 七.论文案例片段(待完善) dijkstra算法主要 ...

  5. matlab klobuchar模型,区域似大地水准面精化模型算法的优选

    区域似大地水准面精化模型算法的优选 第20卷第1期 2011年2月 ENGINEERING 测 绘 工 程 Vol.20l.1OFSURVEYINGANDMAPPING Feb.,2011 区域似大地 ...

  6. 异步电机无传感器矢量控制的算法,matlab,仿真模型,采用转子磁链定向控制算法,转子磁链观测器采用电压模型+电流模型补偿算法。

    异步电机无传感器矢量控制的算法,matlab,仿真模型,采用转子磁链定向控制算法,转子磁链观测器采用电压模型+电流模型补偿算法. 异步电机无传感器矢量控制的算法,matlab,仿真模型,采用转子磁链定 ...

  7. 各种图论模型及其解答(转)

    原文转自Jelline blog http://blog.chinaunix.net/uid-9112803-id-411340.html 摘要: 本文用另一种思路重新组织<图论及其应用> ...

  8. matlab 投票法_SVM算法原理及其Matlab应用

    <SVM算法原理及其Matlab应用>由会员分享,可在线阅读,更多相关<SVM算法原理及其Matlab应用(18页珍藏版)>请在人人文库网上搜索. 1.SVM 算法及其 Mat ...

  9. matlab中x从0到5不含0,关于MATLAB的数学建模算法学习笔记

    关于MATLAB的数学建模算法学习笔记 目录 线性规划中应用: (3) 非线性规划: (3) 指派问题;投资问题:(0-1问题) (3) 1)应用fmincon命令语句 (3) 2)应用指令函数:bi ...

最新文章

  1. 深度学习在锦囊细选上的应用
  2. swift菜鸟入门视频教程-03-字符串和字符
  3. Fast Stone超好用的截图工具,可截取长图,带滚动条的页面
  4. nginx有10个以上参数rewrite的处理
  5. VTK:可视化之DepthSortPolyData
  6. 【转】【UML】使用Visual Studio 2010 Team System中的架构师工具(设计与建模)
  7. 1001. A+B Format
  8. 深度学习在CTR预估中的应用 文献收藏
  9. (转贴)正则表达式学习心得体会(5)
  10. mac下mysql忘记root密码的解决办法
  11. github git clone ssh协议 clone超慢解决方案,提高Github Clone速度
  12. 西北工业大学计算机专业课考什么,西北工业大学西工大计算机考研经验
  13. php判断当前浏览器是否微信浏览器
  14. 将List类型数据转为json
  15. 多频子量子计算机,量子计算机研究:纠错和容错计算
  16. ipone5 无法安装ipa软件
  17. 常用的绩效管理系统应该具备哪些功能呢?
  18. ISO8583包[详细说明]
  19. mockjs的安装使用
  20. VBA破解Excel表格保护密码

热门文章

  1. 华为设备配置通过VLANIF实现同VLAN不同网段通信
  2. Linux安装RabbitMQ详细教程Java使用
  3. html计数器自动编号,如何使用CSS计数器自动为元素进行编排
  4. 微信公众号直播的玩法须知(下)
  5. php输出10!的值,大侠求助!Thinkphp 如何输出指定值数据
  6. 图集:人类史上信息储存技术重要里程碑回顾
  7. rocketmq设置instanceName
  8. 了解Dijkstra算法
  9. aliyun maven远程镜像库 mirror配置
  10. 计算机等级考试一级MS Office考试大纲真题及答案