目录索引

  • 目录索引
  • 写在前面的话
  • 子图同构定义
  • 子图同构的映射关系
  • Reference
  • 写在后面的话


写在前面的话

谨以此片献给 my best love, grandpa.

时光匆匆流逝,我们永远无能为力,我能做的就是脚踏实地,变成你的骄傲~和你在一起的时光,是我所有的宝藏。从你身上继承的美好品质,我要努力把它变得更加迷人。如果时空真的可以扭转,我希望有个奇点,我们可以一直在一起不分开。



1.子图同构定义

我使用的定义是来自这篇参考文献:
http://theory.stanford.edu/~virgi/cs267/lecture1.pdf

假设有两个图 H=(VH,EH)H = (V_{H}, E_{H}) 和图 G=(V,E)G = (V,E) 子图 同构即从H到G存在这样一个函数 f:VH→Vf : V_{H}\rightarrow V 并且 (u,v)∈EH(u,v) \in E_ {H} 使得 (f(u),f(v))∈E(f(u),f(v))\in E 同样成立 f f 叫做子图同构的一个映射。

不过我觉得wiki讲的更好,子图同构定义
是英文的,如果你看英文不成问题的话,可以仔细看。
我觉得看英文的这个还是很锻炼的,毕竟我们不是native speaker.



2.子图同构的映射关系

说明,在这里的图,我们考虑的是没有标签的图。只有顶点序号的图。
如下图,左图与右图子图同构:

我们看一下他们存在的一种映射关系:

我们把左边的图叫做图 AA,把右边的图叫做图 BB

用 MA,MB MA, MB分别表示左图 A,A, 和右图 BB 的对应的邻接矩阵,其中MA[i][j]=1 MA[i][j]=1表示顶点viv_{i}与vjv_{j}存在一条边,A[i][j]=0A[i][j]=0 表示无边. M' M′表示映射g从MAMA到MBMB的映射矩阵,M'[i][j]=1M′[i][j]=1 表示 AA中第ii个顶点vivi对应到MBMB 中的第jj个顶点,否则为0表示没有对应

根据我们上面的例子,我们来描述一下在Ullmann algorithm 算法中的一个定理


定理1:
如果图AA关于映射ff子图同构与图BB,令

MC=M′(M′MB)T

MC = M^{'} (M^{'}MB)^{T}
其中T表示的是矩阵的转置。

则有:

在A矩阵中是1的地方在C矩阵中也要为1


根据定理一 MC=M′(M′MB)TMC = M^{'} (M^{'}MB)^{T} 我们可以计算得到MC的矩阵值:

所以我们找到的映射矩阵M′M^{'}是一个满足图AA 和图 BB子图同构的矩阵。



下面我们来亲自实践一遍这个过程:

由于这两个图的子图同构的映射比较好找出来,刚才我们就找出来一组,就是这个例子,

那我我们可以很容易的构建出子图同构的映射矩阵 M'M′。



下面我们要做的事情就是看有没有这样一个MC 满足我们的定理1。

我们找的映射矩阵完全满足我们的要求能构造出我们的MC,其实MC对应的就是我们的矩阵MB当中的一块,如果你仔细观察可以发现:

我们发现其实第4列和第1列是完全一致的,这个时候调换一下位置,可以发现下面的规律:

这个时候我们可以找到另外一种映射关系,如下图所示:

那么,这个时候问题就来了,有没有下面这种可能呢:

那么它对应的映射矩阵就是下面这个样子的:

我们来亲自实践一下:



这个时候我们发现我们找到的MC是满足定理1的,那就是我们找的映射矩阵是其中的一个同构映射。

其实根据图论中的子图同构的定义,我们发现,只要点对点,边对边是一致的,那么这两个图就是子图同构,他是NPC(NP complete)问题。

如果我们的图是没有被设置标签的,标签就是图中的A,B,C这些,在有的时候如果我们的图已经被设置了标签,那就要求两个比较的图的点对点,边对边,标签对标签要形成双射,也就是单射和满射。

如果这样的情况,就像下面两个博客说的一样是存在两个映射,如果这个图的点或者是边没有被设置标签,那么和图AA它同构的子图就要很多我们可以在图BB中找到。

http://www.cnblogs.com/huadongw/p/4154295.html
http://blog.csdn.net/luo123n/article/details/49787183

并不是只有两个子图同构的映射,这两个图中有很多的子图同构的映射。



Reference

http://www.cnblogs.com/huadongw/p/4154295.html



今天写这个花了两个小时,手已经抓了





写在后面的话

我望着碧海蓝天 看云朵在兜圈
慢慢兜成你的淘气鬼脸 忽近忽远

微风在摇手轻吹 阳光睡在我的右侧脸
我笑着脸去迎接 你给的誓~言
YA~~~~~~~

没发现 紫外线 太强烈 我爱你没有防备
等你牵手带着我漫游世界 幸福快乐瞬间一起体会

没发现 紫外线 太强烈 后知后觉的逃远
我们躲在秘密的空中花园 爱情蝴蝶也和我们相约

眼圈熬成黑看你更深邃
只怕还不够爱 Time’s going by












子图同构问题与Ullmann Algorithm 算法(一)相关推荐

  1. 子图同构问题Ullmann 算法(二)

    #目录索引 文章目录 **写在前面的话** **1.1背景知识** **1.2 数学定义和描述** **写在后面的话** 写在前面的话 以上的内容均出自这篇论文ullmann algorithm,所有 ...

  2. CPU-MIC异构并行架构下基于大规模频繁子图挖掘的药物发现算法

    CPU-MIC异构并行架构下基于大规模频繁子图挖掘的药物发现算法 彭绍亮1,牛琦1,李肯立1,邹权2 1 湖南大学信息科学与工程学院,湖南 长沙 410082 2 电子科技大学基础与前沿研究院,四川 ...

  3. 《Algorithm算法》笔记:元素排序(2)——希尔排序

    <Algorithm算法>笔记:元素排序(2)--希尔排序 Algorithm算法笔记元素排序2希尔排序 希尔排序思想 为什么是插入排序 h的确定方法 希尔排序的特点 代码 有关排序的介绍 ...

  4. Algorithm:【Algorithm算法进阶之路】之十大经典排序算法

    Algorithm:[Algorithm算法进阶之路]之十大经典排序算法 相关文章 Algorithm:[Algorithm算法进阶之路]之数据结构二十多种算法演示 Algorithm:[Algori ...

  5. Algorithm:【Algorithm算法进阶之路】之算法中的数学编程相关习题(时间速度、进制转换、排列组合、条件概率、斐波那契数列)

    Algorithm:[Algorithm算法进阶之路]之算法中的数学编程相关习题(时间速度.进制转换.排列组合.条件概率.斐波那契数列) 目录 时间速度 排列组合 进制转换 条件概率 斐波那契数列 时 ...

  6. Algorithm:【Algorithm算法进阶之路】之数据结构基础知识

    Algorithm:[Algorithm算法进阶之路]之数据结构基础知识 相关文章 Algorithm:[Algorithm算法进阶之路]之数据结构二十多种算法演示 Algorithm:[Algori ...

  7. Algorithm:【Algorithm算法进阶之路】之数据结构二十多种算法演示

    Algorithm:[Algorithm算法进阶之路]之数据结构二十多种算法演示 目录 一.数据结构算法 1.顺序表 2.链表 3.栈和队列 4.串的模式匹配 5.稀疏矩阵 6.广义表 7.二叉树 8 ...

  8. OpenCV均值漂移meanshift algorithm算法的实例(附完整代码)

    OpenCV均值漂移meanshift algorithm算法的实例 OpenCV均值漂移meanshift algorithm算法的实例 OpenCV均值漂移meanshift algorithm算 ...

  9. OpenCV-细化算法(thinning algorithm)算法详解——提取二值图的骨架

    昨天不是说同学问我怎么绘制出轮廓的中心线.然后我上网查了一下其实这个有专门的算法叫做细化算法.用专业术语去描述绘制出轮廓的中心线叫做(提取图像的骨架).然后这一篇博客呢是我对这个细化算法的解读与实操~ ...

最新文章

  1. Nginx最新版安装教程(Windows+Linux)
  2. Angularjs集成第三方js插件之Uploadify
  3. kibana一直弹出来报错?
  4. sts (eclipse)安装配置lombok
  5. mysql手工注入——盲注
  6. ECharts - 嵌套环形图
  7. 微信录音滑动撤销 html5,微信中这个被取消的功能悄悄上线了,将语音上滑即可转换成文字...
  8. mysql profile使用(转)
  9. (二) js + Vue 写扫雷
  10. 琪歌实验2:Wireshark 实验
  11. 一个商品SKU是怎么生成的
  12. java程序员月薪一万很难?(要到什么程度)
  13. 第八章 linux系统引导过程及引导修复
  14. matlab分段函数的表达_使用matlab表示“段数不确定”的分段函数
  15. 关于.NET报表中图表控件线条颜色和粗细设置
  16. Android WebView使用及苏宁易付宝支付相关问题
  17. torchvision的使用(transforms用法介绍)
  18. (17)雅思屠鸭第十七天:小作文完整攻略
  19. 6款新电脑必装优质软件,一个比一个更好用
  20. Meta官方吐槽大会?Connect 2022卡马克演讲全文回顾

热门文章

  1. JAVA中字符集详解
  2. DDD领域驱动设计 — 贫血模型与充血模型
  3. 漫画:最长公共子序列
  4. 【从单体架构到分布式架构】(二)请求增多,单点变集群(1):负载均衡
  5. 人人都能看懂的 6 种限流实现方案!(纯干货)
  6. 漫画:臭长臭长的高频贪心面试题
  7. 今日头条”入局搜索:流量巨头的生存空间之战!
  8. leangoo领歌工作台增加卡片动态功能
  9. 使用Leangoo玩转故事地图
  10. Linux执行可执行文件提示No such file or directory的解决方法