Offer 驾到,掘友接招!我正在参与2022春招打卡活动,点击查看活动详情。”
@TOC
前言
Hello!小伙伴! 非常感谢您阅读海轰的文章,倘若文中有错误的地方,欢迎您指出~ 自我介绍 ଘ(੭ˊᵕˋ)੭ 昵称:海轰 标签:程序猿|C++选手|学生 简介:因C语言结识编程,随后转入计算机专业,有幸拿过一些国奖、省奖...已保研。目前正在学习C++/Linux/Python 学习经验:扎实基础 + 多做笔记 + 多敲代码 + 多思考 + 学好英语! 机器学习小白阶段 文章仅作为自己的学习笔记 用于知识体系建立以及复习 知其然 知其所以然!
往期文章
【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(1):集合与映射
【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(2):线性空间定义及其性质
【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(3):线性空间的基与坐标
【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(4):基变换与坐标变换
【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(5):线性子空间
【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(6):子空间的交与和
【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(7):欧氏空间
【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(8):标准正交基与Gram-Schmidt过程
【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(9):正交补与投影定理
【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(10):线性变换定义
【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(11):线性变换的矩阵表示
【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(12):相似形理论
【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(13):Hamliton-Cayley定理、最小多项式
【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(14):向量范数及其性质
【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(15):矩阵的范数
【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(16):向量和矩阵的极限
【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(17):函数矩阵的微分和积分
【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(18):方阵的幂级数
【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(19):不定积分(补充知识)
【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(20):方阵函数
【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(21):常用方阵函数的一些性质
【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(22):方阵函数在微分方程组中的应用
【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(23):常数项级数的概念和性质(补充知识)
【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(24):常数项级数的审敛法(补充知识))
【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(25):幂级数(补充知识)
5.2 匹配基本定理
对称差
AΔB=(A∪B)−(A∩B)
记忆:先去掉
A、B都有的元素,然后再合并
A、B的其他元素
5.2.1 Berge定理
定理 5.1
M是
G的最大匹配的充要条件是
G不含
M可增长路径
证明
证必要性:
M是
G的最大匹配
⇒
G不含
M可增长路径
使用反证法
假设
G中含有
M可增长路径
P=v0v1v2...v2m+1
令
M′=MΔE(P)
显然
M′是
G的一个匹配,且
∣M∣′=∣M∣+1
与
M是最大匹配相矛盾 ,故假设不成立
说明
G不含
M可增长路径
证充分性:
G不含
M可增长路径
⇒
M是
G的最大匹配
使用反证法
假设
G不含
M可增长路径,但
M不是最大匹配
设
M′是
G的一个最大匹配,则有
∣M∣′>∣M∣
令
H=G[MΔM′]
可以得到
H中每个顶点在
H中的次数只能是
1或2
为了理解上述:
H中每个顶点在
H中的次数只能是
1或2
可以举一个例子帮助理解
定义一个最大匹配
M′如下 再定义一个匹配
M,其中满足
∣M∣<∣M′∣
得到
MΔM′为
MΔM′可以简单理解为:去掉两者重复的,保留两者没有重复的
再令
H=G[MΔM′]
这里
H是
G的边子图(只要
G含有
[MΔM′]边的部分) 事先假设
G中都存在这些边
可以发现
H中每一个连通分支有两种可能
- 一条边在
M和
M′中交错的偶圈(上图左半部分)
- 一条边在
M和
M′中交错的路径(上图右半部分)
所有可以得到
H中每个顶点在
H中的次数只能是
1或2
因为
∣M′∣>∣M∣
所以一定有一个连通片中含有一条路径
P,始边和终边都属于
M′
且
P的两个端点是
M非渗透点(上图右半部分含有这样的两个端点)
从而得出
P是
M可增长路径
与假设
G中无增长路径矛盾
故假设不成立,
M是
G的最大匹配
5.2.2 Hall定理
定义 5.4
设
S⊆V(G),
V(G)中与
S的顶点相邻的所有顶点构成之集合称为
S的领域,记为
NG(S)
定理 5.2
设
G是二部图,其划分为
(X,Y),则
G有渗透
X每个顶点的匹配的充要条件是:
∀S⊆X,恒有
∣NG(S)∣≥∣S∣
证明
证必要性:
G有渗透
X每个顶点的匹配
⇒
∀S⊆X,恒有
∣NG(S)∣≥∣S∣
因为
G有渗透
X每个顶点的匹配
所以对于
∀S⊆X,可以得到
S中每一个顶点在
Y中都可以找到对应的匹配点
故有
∣NG(S)∣≥∣S∣
证充分性:
∀S⊆X,恒有|N_G(S)| \geq |S|$$\Rightarrow
G有渗透
X每个顶点的匹配
假设
G中没有渗透
X每个顶点的匹配
令
M∗为
G的一个最大匹配,则
M∗不能渗透
X
取
X中
M∗非渗透点
u
令
Z是由
u出发可由
M∗交错路径到达的顶点集
因
M∗是最大匹配,由
Berge定理,得
u是
Z中仅有的未被
M∗配对的顶点
如果还存在
u之外的一个顶点在
Z中,那么就存在一条
M交错路径的起点和终点都是非渗透点 则
M为可增长路径 但由
Berge定理知:最大匹配无可增长路径 故只能存在一个非渗透点,即
u是
Z中仅有的未被
M∗配对的顶点
我们取
S=Z∩X,T=Z∩Y
显然,
S−{u}中的顶点在
M∗中与
T中的顶点配对
除了
u外,
S与
T中的顶点都存在匹配关系
有
∣T∣=∣S∣−1,N(S)=T
得到
∣S∣=∣T∣+1=∣N(S)∣+1
与
∣N(S)∣≥∣S∣相矛盾
故假设不成立
推论5.2.1
若
G是
k−正则二部图
(k>0),则
G有一个理想匹配
证明
设
G的二部图划分为
(X,Y),则有
k∣X∣=k∣Y∣
从
X引出的边的数量 等于 从
Y引出的边的数量 (利用边的恒等性)
得到
∣X∣=∣Y∣
也就是
∣X∣和
∣Y∣中的顶点个数相同
令
则有
E1⊆E2或∣E1∣≤∣E2∣
E1是与
S中顶点相关联的边集,且
E1两个端点中另一个端点一定是在
N(S)中 所以
E1是
E2的一个子集
又因为
{∣E1∣=k∣S∣∣E2∣=k∣N(S)∣
得到
k∣N(S)∣>k∣S∣
即
∣N(S)∣>∣S∣
由
Hall定理知,
G中一定含有渗透
X中所有顶点的匹配
M
又因为
∣X∣=∣Y∣
所以
M为理想匹配
X中每个顶点都渗透了,又因为
X中每个顶点的的匹配点一定是在
Y中,故
Y中所有顶点也被渗透了
推论 5.2.2(
t条件)
设
G是划分为
(X,Y)的二部图,若存在整数
t>0,使得
-
X中的每个顶点
xi,都有
d(xi)≥t
-
Y中的每个顶点
yi,都有
d(yi)≤t
则
G中必有渗透
X的匹配
证明
令
S是
X中任意一个非空子集
再设
则有
E1⊆E2或∣E1∣≤∣E2∣
E1是与
S中顶点相关联的边集,且
E1两个端点中另一个端点一定是在
N(S)中 所以
E1是
E2的一个子集
再分别计算
∣E1∣、∣E2∣
∣E1∣=∑x∈Sd(x)≥t∣S∣
∣E2∣=∑y∈N(S)d(y)≤t∣N(S)∣
得到
t∣N(S)∣≥∣E2∣≥∣E2∣≥t∣S∣
即
∣N(S)∣>∣S∣
由
Hall定理知,
G中一定有渗透
X的匹配
5.2.3 Konig定理
定义5.5
设
G=(V,E),K⊆V
(1)若
G的每条边至少有一个端点属于
K,则称
K是
G的一个覆盖
(2)若
K是
G的一个覆盖,
∀v∈V,K−{v}不是覆盖,则称
K为极小覆盖
(3)若
K是
G的一个覆盖,但无覆盖
K′,使得
∣K′∣<∣K∣,则称
K为最小覆盖,用
α(G)表示
G中最小覆盖的顶点数,
α(G)称为
G的覆盖数
Note
- 一般最小覆盖必定是极小覆盖
- 但极小覆盖却不一定是最小覆盖
覆盖:顶点覆盖图中所有边,即若
K是覆盖,则
G−K为无边图
若
K是
G的覆盖,
M是
G的匹配
则
K要覆盖
M,至少需要
∣M∣个顶点,因此有
∣K∣≥∣M∣
从而
α(G)≥∣M∣
引理 5.2.1
设
K与
M分别是
G的覆盖与匹配,则
∣M∣≤∣K∣
引理 5.2.2
若
G存在匹配
M和覆盖
K,使得
∣M∣=∣K∣
则
M是最大匹配,
K是最小覆盖
证明
设
K~,M∗分别是
G的最小覆盖和最大匹配,则有
∣K∣≥∣K~∣≥∣M∗∣≥∣M∣
一般的覆盖数肯定是大于等于最小覆盖数 最大匹配数大于一般的匹配数 最小覆盖数大于等于最大匹配(可以由引理5.2.1推出)
又因为
∣k∣=∣M∣
得到
∣K∣=∣K~∣=∣M∗∣=∣M∣
综上
定理 5.3 (Konig定理)
设
G是二部图,
M∗是
G的最大匹配,
K~是
G的最小覆盖,则
∣M∗∣=∣K~∣=α(G)
若
G是一般图,则为
∣M∗∣≤∣K~∣ 若
G是二部图,则为
∣M∗∣=∣K~∣
证明
设
G是二部图,其划分为
(X,Y)
若
M∗渗透
X的所有顶点,则有
∣M∗∣=∣X∣
∣M∗∣表示匹配的数量(两个顶点间有匹配边算一个匹配)
这时,显然
X是一个最小覆盖,有
∣X∣=∣K~∣
二部图
G在这个应该是连通图
X中顶点关联的边都与
Y中顶点相连 所以
X是一个最小覆盖
综上有
∣M∗∣=∣K~∣=α(G)
若在
X中存在非渗透点
令
U是
X中的
M∗非渗透点的集合,如下图所示
设
Z是由
M∗交错路径与
U中顶点相连通的顶点之集合
令
-
S=Z∩X
-
T=Z∩Y
有
N(S)=T
又令
K~=(X−S)∪T
则
G中每一条边至少都有一端在
K~中
若有一条边的一端在
S中,另一个端点在
Y−T中,这与
N(S)=T产生矛盾
说明
K~是
G的一个覆盖,且
∣M∗∣=∣K~∣
根据引理 5.3.2得
K~是
G的一个最小覆盖
5.2.4 Tutte定理
定义 5.6
图的顶点数为奇数的连通片称为齐片,顶点数为偶数的连通片为偶片
用
0(G)表示
G中齐片的个数
定理 5.4(Tutte定理)
图
G中有理想匹配的充要条件是对于一切
S⊆V,有
0(G−S)≤∣S∣
证明
推论 5.4
每个无割边的3-正则图有理想匹配
结语
说明:
- 参考于 课本《图论》
- 配合书中概念讲解 结合了自己的一些理解及思考
文章仅作为学习笔记,记录从0到1的一个过程
希望对您有一点点帮助,如有错误欢迎小伙伴指正