概述
- 图分析的应用领域
- 编译器的优化
- 操作系统的任务调度
- 数据库应用
- 自然语言处理
- 计算几何
- 社交网络分析
- 分布式的图
- 多核CPU,多指令多数据(Multiple Instruction Multiple Data,MIMD)
- GPU,单指令多线程(Single Instruction Multiple Thread,SIMT)
- 分布式系统
- 编写图分析的算法
- (抽象程度低)使用原生语言(比如C、CUDA),以及底层库
- (抽象程度中)使用框架
- (抽象程度高)使用领域专用语言(Domain Specific Language,DSL)
- DSL的例子
- Web应用 –> HTML、CSS、JavaScript
- 数据库应用 –> SQL
- 硬件设计语言 –> VHDL、Verilog
- 科学计算 –> Matlab
图的例子
- 网页对应于点,链接对应于边
- 道路网络
- 图的直径很大
- 图的顶点度数很小
- 导航的寻路算法是一种图的算法
- 随机图
- 图的点是固定的
- 图的边是随机的,可以增加和删除
- 类似于神经网络的dropout
- 社交网络
- 图的直径很小,小世界现象(Small-World Phenomenon)
- 图的顶点度数可能很大(比如一个人拥有大量关注者),满足幂律分布(Power-Law Distribution)