数模参考资料
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
6 1 7 9 0 5 1 2 5 0 3 9 1 3 0 4 6 2 4 0 3 9 6 3 0
距离矩阵
w=[0 2 1 8 inf inf inf inf; 2 0 inf 6 1 inf inf inf; 1 inf 0 7 inf inf 9 inf; 8 6 7 0 5 1 2 inf; inf 1 inf 5 0 3 inf 9; inf inf inf 1 3 0 4 6; inf inf 9 2 inf 4 0 3; inf inf inf inf 9 6 3 0];
网络最短树 生长法1
方法步骤
①从图上任选一点υi,令
S1 { i }
S 1 V S1
②从Sk中的各点到Sk中各点的边中选权数
最小的边,设为[υi,υj],则
i S , j S
生长法2
若这样的边不存在,则原图没有最短部分树。 ③令
S k 1 S k { j }
v3 v 4 7 v1 8 3 v2 0 5 v3 5 0 v4
返回
树的概念回顾
一个没有圈的图称为一个无圈图或称为林。 一个连通的无圈图则称为树,一个林的每个连通子图都是一 个树。 定理 以下关于树的六种不同描述是等价的: ①无圈连通图。 ②无圈,q=p-1。 ③连通,q=p-1。 ④无圈,但增加一条边,则可得到一个且仅有一个圈。 ⑤连通,但若舍弃一条边,图便不连通。 ⑥每一对顶点之间有一条且仅有一条链。
G
G[{v1,v4,v5}]
G[{e1,e2,e3}]
返回
关联矩阵
对无向图G,其关联矩阵M=(mij ) ,其中:
mij 1 0
若vi 与e j 相关联 若vi 与e j 不关联
e1 1 M= 1 0 0
注:假设图为简单图
e 2 e3 e 4 e5 0 0 0 1 v1 1 0 1 0 v2 0 1 1 0 v3 1 1 0 1 v4
方法示例 v2 2 v3 6 3 3
v2 2 v1 6 v3 8 9 5
取S={v1}, 则S到其余点的距离在距离矩阵中第一行
S1 V2 S2
v4 ∞ 8 8
v4
v5 ∞ 9 9
3
v6 ∞ ∞ ∞
3
v6
1
3 v5
生长法4
方法示例
1 2 3 4 5 6 0 2 6 2 0 3 8 9 L 6 3 0 5 3 8 5 0 3 9 3 0 1 3 1 0
对有向图G,其关联矩阵M=(mij ) ,其中:
1 mij 1 0
若vi 是e j的起点 若vi 是e j的终点 若vi 与e j 不关联
返回
邻接矩阵
对无向图G,其邻接矩阵 A (aij ) ,其中:
aij 1 0
若vi 与v j 相邻 若vi 与v j 不相邻
破圈法
方法步骤
①在网络图中寻找一个圈,若已经无圈则转③。 ②在圈中选取权数最大的边,从网络图中截去该 边,对新的网络,转①。 ③若q=p-1,则已找到最短树,否则网络图不连 通,无最短树。
破圈法
方法示例: 例5-4 对图中
v2 2 8 9 5 1 v4 3
的网络, 用破
圈法求最短树。
v1
6
3
v6 3 v5
(e1 ) v1v2 , (e2 ) v1v3 , (e3 ) v1v4 , (e4 ) v1v4 , (e5 ) v3v3 .
G 的图解如图.
V={v 1 ,v 2 , v3 , v4 }, E={e1 , e2 , e3 , e4, e5 },
定义 在图 G 中,与 V 中的有序偶(vi, vj)对应的边 e,称为图的有向
n=size(w,1); w1=w(1,:);
W
0 2 1 8
2 0 6
1 7
0
1
9
6 1 7 9 0 5 1 2 5 0 3 9 1 3 0 4 6 2 4 0 3 9 6 3 0
网络最短树 破圈法原理
方法原理 如果网络图中无圈并且q=p-1,则已经是树; 如果网络图中有圈,则截去该圈中权数最大的边;这 样,并不影响网络图的连通性,且能使边数减少一个; 经过一定次数的截边,网络图中将再也没有圈,成 为无圈图; 如果此时的网络满足q=p-1,则已经是树; 由于每次截去的边在圈中具有最大的权数,因此获 得的树也是最短的树。
(1) 若 V1 V,E E,且当 E1 时, 1 (e)= e 1
特别的,若 V1=V,则 G1 称为 G 的生成子图. (e),则称 G1 是 G 的子图.
(2) 设 V1 V,且 V1 ,以 V1 为顶点集、两个端点都在 V1 中的 图 G 的边为边集的图 G 的子图,称为 G 的由 V1 导出的子图,记为 G[V1]. (3)设 E1 E,且 E1 ,以 E1 为边集,E1 的端点集为顶点集的图 G 的子图, 称为 G 的由 E1 导出的子图,记为 G[E1].
3、子图
二、 图 的 矩 阵 表 示
1、 关联矩阵
2、 邻接矩阵
返回
图的定义
定义 有序三元组G=(V,E, )称为一个图. [1] V= {v1 , v 2 , , v n } 是有穷非空集,称为顶点集,
其中的元素叫图 G 的顶点. [2] E 称为边集,其中的元素叫图 G 的边. [3] 是从边集 E 到顶点集 V 中的有序或无序的元素 偶对的集合的映射,称为关联函数. 例1 设 G=(V ),其中 ,E,
边(或弧) ,而与 V 中顶点的无序偶 vivj 相对应的边 e,称为图 的无向边.每一条边都是无向边的图,叫无向图;每一条边都是 有向边的图,称为有向图;既有无向边又有有向边的图称为混 合图.
定义 若将图 G 的每一条边 e 都对应一个实数 w(e),称 w(e)为边的权,
并称图 G 为赋权图.
规定用记号 和 分别表示图的顶点数和边数.
3
8 5 5 ∞ 5 3 3
9 3 3
∞ ∞ ∞ 1 1
下图所示为9块稻田。现需要给稻田灌水准备插秧。问至少 挖开几条田埂才能够使每一块稻田罐上水? 如果各个田埂宽度不相同,问应挖开那些田埂最节省劳力?
B B A A F F G G
C C
E E
D D
I I
H H
将每块稻田视为一个点,两块稻田相邻则画一条边。那么 得到如下的图: 5 2 A 3 5 4 F 8 B 5
C
8 D 3 8
6 E 6 8 H I
5
G
5
7
将田埂宽度视为权重,则问题演化为求图的最小树。
破圈法求最短树
5 2 A 3 5 4 F 8 B 5
C
8 D 3 8
6 E 6 8 H I
5
G
5
7
2 A 3 5
B
5
5 4
8
F
5
C 6 8 8 D 6 3
I 5
E
2 A
B 4
5
C
6 E H I
8
H
3
D
3
F 5
v2 2 v1 6 v3 3 5 1 3 v5 9
8
v4 3 v6
S k 1 S k { j }
若S=V,则已找到 最短树,否则②,
生长法3
1 2 3 4 5 6 0 2 6 2 0 3 8 9 L 6 3 0 5 3 8 5 0 3 9 3 0 1 3 1 0
d (v4 ) 4
d (v4 ) 2 d (v4 ) 3 d (v4 ) 5
定理1
vV ( G )
d (v) 2 (G)
推论1 任何图中奇次顶点的总数必为偶数.
例 在一次聚会中,认识奇数个人的人数一定是偶数。
返回
子图
定义 设图 G=(V,E, ),G1=(V1,E1, 1 )
1 2 9 3
u5
9 6 u8 3
8
7 1 u3
u6
4 u7
u2
1 5 1 2 9
u5 3 6 u6 9 u8 3
2
u1 u4 8
6
7
1 u3
W 0 2 1 8 2 0 6 1 7 8
4
u7
0
1
9
v3
网络最短树
方法原理
生长法原理
类似于自然界中植物生长的过程,结合就近生长和避 免构成圈的要求,逐步生长直到所有的点都已经被包含。 如果原网络不连通,则在生长过程中会出现某些点不 能被生长 ,则结束。 避圈的原理是已经被包含在生长过的树中的点不再被 生长。 由于在每次生长时都采用就近生长的方法,生成的树 一定是最短树。
对有向赋权图G,其邻接矩阵 A (aij ) ,其中:
wij aij 0
若(vi , v j ) E , 且wij 为其权 若i j 若(vi , v j ) E
无向赋权图的邻接矩阵可类似定义.
v1 v 2 0 2 A= 2 0 8 7 3
注:假设图为简单图
v4 v1 v2 v 3 v 4
v1 v 2 v3 0 1 0 1 A= 1 0 1 1 0 1 0 1 1 1 1 0
对有向图G=(V,E) ,其邻接矩阵A (aij ) ,其中:
aij 1 0
若(vi,v j) E 若(vi,v j) E
数学建模与数学实验 最短路问题
后勤工程学院数学教研室
实验目的
1、了解最短路的算法及其应用 2、会用Matlab软件求最短路
实验内容
1、图 论 的 基 本 概 念
2、最 短 路 问 题 及 其 算 法
3、最 短 路 的 应 用
4、建模案例:最优截断切割问题
5、实验作业
图论的基本概念
一、 图 的 概 念 1、图的定义 2、顶点的次数
8
%赋初值 %求v* while k<n lv=inf; for i=1:n ll=l; % 更新 l(v) 和 z(v) for i=1:n l(i)=w1(i); for i=1:n for i=1:n if ll(i)<lv z(i)=1; for j=1:k for j=1:k lv=ll(i); end if i~=s(j) if i~=s(j) v=i; s=[]; ll(i)=ll(i); if l(i)>l(u)+w(u,i) end s(1)=1; else l(i)=l(u)+w(u,i); end u=s(1); ll(i)=inf; z(i)=u; lv; k=1; end end v; l; end end z; end end s(k+1)=v; end k=k+1; l; u=s(k); z; end l z l=
G
5
G
7
C
B A F G
E
D
I
H
网络最短路线问题
最短路线问题的一般提法是:欲寻找网络中从起点υ1 到终点υn 的最短路线,即寻求连接这两点的边的总 长度为最小的通路,最短路线中的网络大都是有向 网络,也可以是无向网络。
最短路问题的算法 1.狄克斯拉算法
使用条件 lij≥0
u1
u2
2 u4 6
1 5
常用术语: (1) 端点相同的边称为环. (2) 若一对顶点之间有两条以上的边联结,则这些边称为重边. (3) 有边联结的两个顶点称为相邻的顶点,有一个公共端点的边 称为相邻的边. (4) 边和它的端点称为互相关联的. (5) 既没有环也没有平行边的图,称为简单图. (6) 任意两顶点都相邻的简单图,称为完备图,记为 Kn,其中 n 为顶点的数目. ( 7)若 V=X Y,X Y= ,X 中任两顶点不相邻,Y 中任两顶 点不相邻,称 G 为二元图;若 X 中每一顶点皆与 Y 中一切顶点 相邻,称为完备二元图,记为 Km,n,其中 m,n 分别为 X 与 Y 的顶 点数目.
S1
V2
v2 2
v3 6 3
v4 ∞ 8
v5 ∞ 9
v6 ∞ ∞
S2
V3 S3
3
8
5 5
9
3 3
∞
∞ ∞
V5
S4
∞
5
1
1
V6
S5
3
3
生长法5
S1 V2
v2 2 8 9 5 1 v4 3
v2 2
v3 6 3
v4 ∞ 8
v5 ∞ 9
v6 ∞ ∞
v1
6
3
v6 3 v5
v3
S2 V3 S3 V5 S4 V6 S5
返回
顶点的次数
定义 (1)在无向图中,与顶点 v 关联的边的数目(环算两次) 称为 v 的次数,记为 d(v). (2)在有向图中,从顶点 v 引出的边的数目称为 v 的出度, 记为 d+(v),从顶点 v 引入的边的数目称为的入度,记为 d-(v), d(v)=d+(v)+d-(v)称为 v 的次数.