我们知道普通的graph中,一条边只能连接两个点,而边实际上是用来表示两点间有邻接关系的一种符号。而超图(hyper graph)中的边可能会关联(或者说包含)两个以上的点,即在同一边中的点均邻接。

如下图(图片来自网络,下图中e指边,v指点):

hypergraph is a generalization of a graph in which an edge can join any number of vertices

在数学上,超图泛指边可以关联任意数量点的图。确切地说,超图是一种点-边对(pair),表示为H=(X,E),其中X是点的集合,E是边(下称超边)的集合。超图中的边不像普通graph的边一样有实体,而只是它所包含的点的集合。所以E实际上是X的非空子集。另外,一个点也可能在多条超边中。

超图是一种高维的对于数据的图形展示,弥补了普通graph方式信息丢失的缺陷,专用于描述具有成对的组合关系(点与超边)的体系。

如果点v在超边e中,则称超边e与点v关联(hyper edge e is incident with node v)。

如果 v∈ e ,w∈ e,则称v与w邻接( neighborhood relationships)。

以下定义暂不考虑权重:

上图中,第一行是对关联矩阵 H ∈R |V|×|E|的定义,类比普通graph中的关联矩阵,还是比较容易理解的。

类似于普通graph中对于点的度的定义,我们可以得到超图中超边与点的度的定义:

第二行是关于超边e的度 δ(e),|e|即e中的点个数。如果δ(e)=r(r>0)对于所有的超边都成立,则称该超图为r-uniform超图(额,不会翻译)。这样一来,普通的graph实际上就是2-uniform的超图。

第三行是关于点v的度d(v),其中E(v)指与v关联的边的个数。

于是我们得到了对角边度矩阵(the diagonal hyperedge degree matrix),De ∈R|E|×|E|;

以及对角点度矩阵(the diagonal vertex degree matrix ) ,Dv  ∈R|V|×|V| 。

本文参考了https://www.sciencedirect.com/topics/mathematics/hypergraph等网站中的内容。

对于超图(hypergraph)的一些理解及部分概念相关推荐

  1. c# 添加中文描述 给enum_理解C# 核心概念 – C# 程序集本地化

    在之前几讲中,老白给大家介绍了C#中module和Assembly的生成和使用.在这一篇中,老白将更加深入的介绍下Assembly其中的一个知识点--本地化(Localization). 什么是本地化 ...

  2. 理解 Keystone 核心概念 - 每天5分钟玩转 OpenStack(18)

    作为 OpenStack 的基础支持服务,Keystone 做下面这几件事情: 管理用户及其权限 维护 OpenStack Services 的 Endpoint Authentication(认证) ...

  3. 十分钟带你理解Kubernetes核心概念

    原文地址:http://www.dockone.io/article/932 十分钟带你理解Kubernetes核心概念 本文将会简单介绍Kubernetes的核心概念.因为这些定义可以在Kubern ...

  4. 从构建区块链理解区块链概念

    从构建区块链理解区块链概念 import hashlib import json from datetime import time from urllib.parse import urlparse ...

  5. 通过插画理解kubernetes基本概念

    ========== 第一篇 ========== 转自:https://www.cnblogs.com/kouryoushine/articles/8007648.html 插画版Kubernete ...

  6. 一张图理解AOP关键概念

    一张图理解AOP关键概念 Aspect(切面) Joint Point(连接点) Advice(通知) Pointcut(切入点) Weaving(织入) 这里以跟踪方法调用为例,Calculate为 ...

  7. 深入理解CRM的概念

    深入理解CRM的概念 什么是CRM CRM(Customer Relationship Management),即客户关系管理.CRM概念最初由美国Gartner Group集团于1980年提出,而在 ...

  8. 用工厂流水线的方式来理解RxJava的概念

    现在有很多的 RxJava 入门教程,但是大多数都是示例代码,并不能让人很快理解 RxJava 的原理和方法,这篇文章就用流水线来比喻 RxJava 的开发方式,看完这篇文章后你就能理解 RxJava ...

  9. [原创]理解泛函的概念和能量…

    原文地址:[原创]理解泛函的概念和能量泛函的梯度下降流 作者:小腹黑zju 对本篇文章进行转载需说明出处: 1. 泛函的概念             函数y=f(x)是一个变量x∈R到y∈R的一个映射 ...

最新文章

  1. Nginx的upstream目前支持5种分配方式
  2. 达摩院三周年,当初立的flag都实现了吗?
  3. CSS3文本居中显示、圆形圆角绘制、立体阴影效果设置实例演示
  4. OpenGL Cube Map立方体贴图的实例
  5. 一直在纠结怎样取出 combox 控件elect的文字
  6. AspectJ基于xml和基于注解
  7. 线程创建-结束-回收 教程
  8. 第22天:如何使用OpenAI Gym和Universe构建AI游戏机器人
  9. Ubuntu系统初识-常用命令和软件安装
  10. 14003.xilinx系统移植
  11. 云计算架构师分享:容器云在金融企业的落地方案 | 周末送资料(原题:某保险公司容器云PaaS平台建设实践经验分享)
  12. jquery-1.10.2_d88366fd.js和jquery-3.1.0.min.js 在用touch事件时候, event.changedTouches[0]报错的问题。...
  13. 面向深度学习的多模态融合技术研究综述
  14. 在LINLUX下面建立GPRS无线MODEM拨号
  15. 函数的支集、支撑集、support、supp
  16. 微信小程序 使用cookie
  17. 三线制接近开关原理及接线图
  18. 跟着清风学建模——拟合算法介绍及mathlab代码实现
  19. 程序员高管修炼之道!
  20. js字符串基本数据类型

热门文章

  1. 如何如何申請Flickr API Key
  2. 味尚食品|味尚拉面一款不容错过的半干面
  3. C#委托之如何理解委托面试常见题:
  4. 亿格名片 | 亿格云牵手“共享充电宝行业龙头公司“怪兽充电
  5. 高性能的连接管理和数据路由组件,OceanBase 生态工具 ODP 详解
  6. RGB生成颜色c语言,C++实现RGB和HSL颜色转换代码
  7. Twisted 入门 教程
  8. 对比Tornado和Twisted
  9. 段码液晶屏的信号响应时间为多少好?
  10. js 的 sort 函数