截集算法
❶ 怎么样求网络的最大流和最小截集
首先是网络流中的一些定义:
V表示整个图中的所有结点的集合.
E表示整个图中所有边的集合.
G = (V,E) ,表示整个图.
s表示网络的源点,t表示网络的汇点.
对于每条边(u,v),有一个容量c(u,v) (c(u,v)>=0),如果c(u,v)=0,则表示(u,v)不存在在网络中。相反,如果原网络中不存在边(u,v),则令c(u,v)=0.
对于每条边(u,v),有一个流量f(u,v).
一个简单的例子.网络可以被想象成一些输水的管道.括号内右边的数字表示管道的容量c,左边的数字表示这条管道的当前流量f.
网络流的三个性质:
1、容量限制: f[u,v]<=c[u,v]
2、反对称性:f[u,v] = - f[v,u]
3、流量平衡: 对于不是源点也不是汇点的任意结点,流入该结点的流量和等于流出该结点的流量和。
只要满足这三个性质,就是一个合法的网络流.
最大流问题,就是求在满足网络流性质的情况下,源点 s 到汇点 t 的最大流量。
求一个网络流的最大流有很多算法 这里首先介绍 增广路算法(EK)
学习算法之前首先看了解这个算法中涉及到的几个图中的定义:
**残量网络
为了更方便算法的实现,一般根据原网络定义一个残量网络。其中r(u,v)为残量网络的容量。
r(u,v) = c(u,v) – f(u,v)
通俗地讲:就是对于某一条边(也称弧),还能再有多少流量经过。
Gf 残量网络,Ef 表示残量网络的边集.
这是上面图的一个残量网络。残量网络(如果网络中一条边的容量为0,则认为这条边不在残量网络中。
r(s,v1)=0,所以就不画出来了。另外举个例子:r(v1,s) = c(v1,s) – f(v1,s) = 0 – (-f(s,v1)) = f(s,v1) = 4.
其中像(v1,s)这样的边称为后向弧,它表示从v1到s还可以增加4单位的流量。
但是从v1到s不是和原网络中的弧的方向相反吗?显然“从v1到s还可以增加4单位流量”这条信息毫无意义。那么,有必要建立这些后向弧吗?
显然,第1个图中的画出来的不是一个最大流。
但是,如果我们把s -> v2 -> v1 -> t这条路径经过的弧的流量都增加2,就得到了该网络的最大流。
注意到这条路径经过了一条后向弧:(v2,v1)。
如果不设立后向弧,算法就不能发现这条路径。
**从本质上说,后向弧为算法纠正自己所犯的错误提供了可能性,它允许算法取消先前的错误的行为(让2单位的流从v1流到v2)
注意,后向弧只是概念上的,在程序中后向弧与前向弧并无区别.
**增广路
增广路定义:在残量网络中的一条从s通往t的路径,其中任意一条弧(u,v),都有r[u,v]>0。
如图绿色的即为一条增广路。
看了这么多概念相信大家对增广路算法已经有大概的思路了吧。
**增广路算法
增广路算法:每次用BFS找一条最短的增广路径,然后沿着这条路径修改流量值(实际修改的是残量网络的边权)。当没有增广路时,算法停止,此时的流就是最大流。
**增广路算法的效率
设n = |V|, m = |E|
每次增广都是一次BFS,效率为O(m),而在最坏的情况下需要(n-2增广。(即除源点和汇点外其他点都没有连通,所有点都只和s与t连通)
所以,总共的时间复杂度为O(m*n),所以在稀疏图中效率还是比较高的。
hdoj 1532是一道可以作为模板题目练手。
模板代码:
[cpp] view plain print?
#include <cstdio>
#include <cstring>
#include <iostream>
#include <string>
#include <algorithm>
#include <map>
#include <vector>
using namespace std;
const int N = 1100;
const int INF = 0x3f3f3f3f;
struct Node
{
int to;//终点
int cap; //容量
int rev; //反向边
};
vector<Node> v[N];
bool used[N];
void add_Node(int from,int to,int cap) //重边情况不影响
{
v[from].push_back((Node){to,cap,v[to].size()});
v[to].push_back((Node){from,0,v[from].size()-1});
}
int dfs(int s,int t,int f)
{
if(s==t)
return f;
used[s]=true;
for(int i=0;i<v[s].size();i++)
{
Node tmp = v[s][i]; //注意
if(used[tmp.to]==false tmp.cap>0)
{
int d=dfs(tmp.to,t,min(f,tmp.cap));
if(d>0)
{
tmp.cap-=d;
v[tmp.to][tmp.rev].cap+=d;
return d;
}
}
}
return 0;
}
int max_flow(int s,int t)
{
int flow=0;
for(;;){
memset(used,false,sizeof(used));
int f=dfs(s,t,INF);
if(f==0)
return flow;
flow+=f;
}
}
int main()
{
int n,m;
while(~scanf("%d%d",n,m))
{
memset(v,0,sizeof(v));
for(int i=0;i<n;i++)
{
int x,y,z;
scanf("%d%d%d",x,y,z);
add_Node(x,y,z);
}
printf("%d\n",max_flow(1,m));
}
}
❷ 网络流的资料
编辑本段定义
图论中的一种理论与方法,研究网络上的一类最优化问题 。1955年 ,T.E. 哈里斯在研究铁路最大通量时首先提出在一个给定的网络上寻求两点间最大运输量的问题。1956年,L.R. 福特和 D.R. 富尔克森等人给出了解决这类问题的算法,从而建立了网络流理论。所谓网络或容量网络指的是一个连通的赋权有向图 D= (V、E、C) , 其中V 是该图的顶点集,E是有向边(即弧)集,C是弧上的容量。此外顶点集中包括一个起点和一个终点。网络上的流就是由起点流向终点的可行流,这是定义在网络上的非负函数,它一方面受到容量的限制,另一方面除去起点和终点以外,在所有中途点要求保持流入量和流出量是平衡的。如果把下图看作一个公路网,顶点v1…v6表示6座城镇,每条边上的权数表示两城镇间的公路长度。现在要问 :若从起点v1将物资运送到终点v6去 ,应选择那条路线才能使总运输距离最短�这样一类问题称为最短路问题 。 如果把上图看作一个输油管道网 , v1 表示发送点,v6表示接收点,其他点表示中转站 ,各边的权数表示该段管道的最大输送量。现在要问怎样安排输油线路才能使从v1到v6的总运输量为最大。这样的问题称为最大流问题。
最大流理论是由福特和富尔克森于 1956 年创立的 ,他们指出最大流的流值等于最小割(截集)的容量这个重要的事实,并根据这一原理设计了用标号法求最大流的方法,后来又有人加以改进,使得求解最大流的方法更加丰富和完善 。最大流问题的研究密切了图论和运筹学,特别是与线性规划的联系,开辟了图论应用的新途径。
目前网络流的理论和应用在不断发展,出现了具有增益的流、多终端流、多商品流以及网络流的分解与合成等新课题。网络流的应用已遍及通讯、运输、电力、工程规划、任务分派、设备更新以及计算机辅助设计等众多领域。
网络流算法
一、网络流的基本概念
先来看一个实例。
现在想将一些物资从S运抵T,必须经过一些中转站。连接中转站的是公路,每条公路都有最大运载量。如下图:
每条弧代表一条公路,弧上的数表示该公路的最大运载量。最多能将多少货物从S运抵T?
这是一个典型的网络流模型。为了解答此题,我们先了解网络流的有关定义和概念。
若有向图G=(V,E)满足下列条件:
1、 有且仅有一个顶点S,它的入度为零,即d-(S) = 0,这个顶点S便称为源点,或称为发点。
2、 有且仅有一个顶点T,它的出度为零,即d+(T) = 0,这个顶点T便称为汇点,或称为收点。
3、 每一条弧都有非负数,叫做该边的容量。边(vi, vj)的容量用cij表示。
则称之为网络流图,记为G = (V, E, C)
譬如图5-1就是一个网络流图。
1.可行流
对于网络流图G,每一条弧(i,j)都给定一个非负数fij,这一组数满足下列三条件时称为这网络的可行流,用f表示它。
1、 每一条弧(i,j)有fij≤cij。
2、 除源点S和汇点T以外的所有的点vi,恒有:
该等式说明中间点vi的流量守恒,输入与输出量相等。
3、 对于源点S和汇点T有:
这里V(f)表示该可行流f的流量。
例如对图5-1而言,它的一个可行流如下:
流量V(f) = 5。
2.可改进路
给定一个可行流f=。若fij = cij,称<vi, vj>为饱和弧;否则称<vi, vj>为非饱和弧。若fij = 0,称<vi, vj>为零流弧;否则称<vi, vj>为非零流弧。
定义一条道路P,起点是S、终点是T。把P上所有与P方向一致的弧定义为正向弧,正向弧的全体记为P+;把P上所有与P方向相悖的弧定义为反向弧,反向弧的全体记为P-。
譬如在图5-1中,P = (S, V1, V2, V3, V4, T),那么
P+ = {<S, V1>, <V1, V2>, <V2, V3>, <V4, T>}
P- = {<V4, V3>}
给定一个可行流f,P是从S到T的一条道路,如果满足:
那么就称P是f的一条可改进路。(有些书上又称:可增广轨)之所以称作“可改进”,是因为可改进路上弧的流量通过一定的规则修改,可以令整个流量放大。具体方法下一节会重点介绍,此不赘述。
3.割切
要解决网络最大流问题,必须先学习割切的概念和有关知识。
G = (V, E, C)是已知的网络流图,设U是V的一个子集,W = V\U,满足S U,T W。即U、W把V分成两个不相交的集合,且源点和汇点分属不同的集合。
对于弧尾在U,弧头在W的弧所构成的集合称之为割切,用(U,W)表示。把割切(U,W)中所有弧的容量之和叫做此割切的容量,记为C(U,W),即:
例如图5-1中,令U = {S, V1},则W = {V2, V3, V4, T},那么
C(U, W) = <S, V2> + <V1, V2> + <V1, V3>+<V1, V4>=8+4+4+1=17
定理:对于已知的网络流图,设任意一可行流为f,任意一割切为(U, W),必有:V(f) ≤ C(U, W)。
通俗简明的讲:“最大流小于等于最小割”。这是“流理论”里最基础最重要的定理。整个“流”的理论系统都是在这个定理上建立起来的,必须特别重视。
下面我们给出证明。
网络流、可改进路、割切都是基础的概念,应该扎实掌握。它们三者之间乍一看似乎风马牛不相干,其实内在联系是十分紧密的。
二、求最大流
何谓最大流?首先它必须是一个可行流;其次,它的流量必须达到最大。这样的流就称为最大流。譬如对图5-1而言,它的最大流如下:
下面探讨如何求得最大流。
在定义“可改进路”概念时,提到可以通过一定规则修改“可改进路”上弧的流量,可以使得总流量放大。下面我们就具体看一看是什么“规则”。
对可改进路P上的弧<vi, vj>,分为两种情况讨论:
第一种情况:<vi, vj>∈P+,可以令fij增加一个常数delta。必须满足fij + delta ≤ cij,即delta ≤ cij – fij。
第二种情况:<vi, vj>∈P-,可以令fij减少一个常数delta。必须满足fij - delta ≥ 0,即delta ≤ fij
根据以上分析可以得出delta的计算公式:
因为P+的每条弧都是非饱和弧,P-的每条弧都是非零流弧,所以delta > 0。
容易证明,按照如此规则修正流量,既可以使所有中间点都满足“流量守恒”(即输入量等于输出量),又可以使得总的流量有所增加(因为delta > 0)。
因此我们对于任意的可行流f,只要在f中能找到可改进路,那么必然可以将f改造成为流量更大的一个可行流。我们要求的是最大流,现在的问题是:倘若在f中找不到可改进路,是不是f就一定是最大流呢?
答案是肯定的。下面我们给出证明。
定理1 可行流f是最大流的充分必要条件是:f中不存在可改进路。
证明:
首先证明必要性:已知最大流f,求证f中不存在可改进路。
若最大流f中存在可改进路P,那么可以根据一定规则(详见上文)修改P中弧的流量。可以将f的流量放大,这与f是最大流矛盾。故必要性得证。
再证明充分性:已知流f,并且f中不存在可改进路,求证f是最大流。
我们定义顶点集合U, W如下:
(a) S∈U,
(b) 若x∈U,且fxy<cxy,则y∈U;
若x∈U,且fyx>0,则y∈U。
(这实际上就是可改进路的构造规则)
(c) W = V \ U。
由于f中不存在可改进路,所以T∈W;又S∈U,所以U、W是一个割切(U, W)。
按照U的定义,若x∈U,y∈W,则fxy = cxy。若x∈W,y∈U,则fxy = 0。
所以,
又因 v(f)≤C(U,W)
所以f是最大流。得证。
根据充分性证明中的有关结论,我们可以得到另外一条重要定理:
最大流最小割定理:最大流等于最小割,即max V(f) = min C(U, W)。
至此,我们可以轻松设计出求最大流的算法:
step 1. 令所有弧的流量为0,从而构造一个流量为0的可行流f(称作零流)。
step 2. 若f中找不到可改进路则转step 5;否则找到任意一条可改进路P。
step 3. 根据P求delta。
step 4. 以delta为改进量,更新可行流f。转step 2。
step 5. 算法结束。此时的f即为最大流。
三、最小费用最大流
1.问题的模型
流最重要的应用是尽可能多的分流物资,这也就是我们已经研究过的最大流问题。然而实际生活中,最大配置方案肯定不止一种,一旦有了选择的余地,费用的因素就自然参与到决策中来。
图5-8是一个最简单的例子:弧上标的两个数字第一个是容量,第二个是费用。这里的费用是单位流量的花费,譬如fs1=4,所需花费为3*4=12。
容易看出,此图的最大流(流量是8)为:fs1 = f1t = 5, fs2 = f2t = 3。所以它的费用是:3*5+4*5+7*3+2*3 = 62。
一般的,设有带费用的网络流图G = (V, E, C, W),每条弧<Vi, Vj>对应两个非负整数Cij、Wij,表示该弧的容量和费用。若流f满足:
(a) 流量V(f)最大。
(b) 满足a的前提下,流的费用Cost(f) = 最小。
就称f是网络流图G的最小费用最大流。
2.算法设计
我们模仿求最大流的算法,找可改进路来求最小费用最大流。
设P是流f的可改进路,定义 为P的费用(为什么如此定义?)。如果P是关于f的可改进路中费用最小的,就称P是f的最小费用可改进路。
求最小费用最大流的基本思想是贪心法。即:对于流f,每次选择最小费用可改进路进行改进,直到不存在可改进路为止。这样的得到的最大流必然是费用最小的。
算法可描述为:
step 1. 令f为零流。
step 2. 若无可改进路,转step 5;否则找到最小费用可改进路,设为P。
step 3. 根据P求delta(改进量)。
step 4. 放大f。转step 2。
step 5. 算法结束。此时的f即最小费用最大流。
至于算法的正确性,可以从理论上证明。读者可自己思考或查阅有关运筹学资料。
2.最小费用可改进路的求解
求“最小费用可改进路”是求最小费用最大流算法的关键之所在,下面我们探讨求解的方法。
设带费用的网络流图G = (V, E, C, W),它的一个可行流是f。我们构造带权有向图B = (V’, E’),其中:
1、 V’ = V。
2、 若<Vi, Vj>∈E,fij<Cij,那么<Vi, Vj>∈E’,权为Wij。
若<Vi, Vj>∈E,fij>0,那么<Vj, Vi>∈E’,权为-Wij。
显然,B中从S到T的每一条道路都对应关于f的一条可改进路;反之,关于f的每条可改进路也能对应B中从S到T的一条路径。即两者存在一一映射的逻辑关系。
故若B中不存在从S到T的路径,则f必然没有可改进路;不然,B中从S到T的最短路径即为f的最小费用可改进路。
现在的问题变成:给定带权有向图B = (V’, E’),求从S到T的一条最短路径。
考虑到图中存在权值为负数的弧,不能采用Dijkstra算法;Floyd算法的效率又不尽如人意——所以,这里采用一种折衷的算法:迭代法。
设Short[k]表示从S到k顶点的最短路径长度;从S到顶点k的最短路径中,顶点k的前趋记为Last[k]。那么迭代算法描述如下:(为了便于描述,令n = |V’|,S的编号为0,T的编号为n+1)
step 1. 令Short[k] +∞(1≤k≤n+1),Short[0] 0。
step 2. 遍历每一条弧<Vk, Vj>。若Short[k] + <k, j> < Short[j],则令Short[j] Short[k] + <k, j>,同时Last[j] k。倘不存在任何一条弧满足此条件则转step 4。
step 3. 转step 2.
step 4. 算法结束。若Short[n + 1]= +∞,则不存在从S到T的路径;否则可以根据Last记录的有关信息得到最短路径。
一次迭代算法的时间复杂度为O(kn2),其中k是一个不大于n的变量。在费用流的求解过程中,k大部分情况下都远小于n。
3.思维发散与探索
1)可改进路费用:“递增!递增?”
设f从零流到最大流共被改进了k次,每i次选择的可改进路的费用为pi,那么会不会有p1≤p2≤p3≤……≤pk呢?
2)迭代法:“小心死循环!嘿嘿……”
迭代法会出现死循环吗?也就是说,构造的带权有向图B中会存在负回路吗?
3)费用:“你在乎我是负数吗?”
网络流图中的费用可以小于零吗?
4)容量:“我管的可不仅是弧。”
网络流图中的“容量”都是对弧而言的,但若是给每个顶点也加上一个容量限制:即通过此顶点的流量的上限;任务仍然是求从S到T的最小费用最大流。你能解决吗?
四、有上下界的最大流
上面讨论的网络流都只对每条弧都限定了上界(其实其下界可以看成0),现在给每条弧<Vi, Vj>加上一个下界限制Aij(即必须满足Aij≤fij)。
例如图5-9:
弧上数字对第一个是上界,第二个是下界。若是撇开下界不看,此图的最大流如图5-10(a)所示,流量是6;但若是加入了下界的限制,它的最大流量就只有5了,具体方案见图5-10(b)。
那么有上下界的网络最大流怎么求呢?
一种自然的想法是去掉下界,将其转化为只含上界的网络流图。这种美好的愿望是可以实现的。具体方法如下:
设原网络流图为G = (V, E, C, A),构造不含下界的网络流图G’ = (V’, E’, C’):
1、 V’ = V∪{S’, T’}
2、 对每个顶点x,令 ,若h-(x)≠0,就添加一条弧<S’, x>,其上界为h-(x)。
3、 对每个顶点x,令 ,若h+(x)≠0,就添加一条弧<x, T’>,其上界为h+(x)。
4、 对于任何<Vi, Vj>∈E,都有<Vi, Vj>∈E’,其上界C’ij = Cij – Aij。
5、 新增<T, S>∈E’,其上界CTS = +∞。
在G’中以S’为源点、T’为汇点求得最大流f’。若f’中从S’发出的任意一条弧是非饱和弧,则原网络流图没有可行流。否则可得原图的一个可行流f = f’ + A,即所有的fij = f’ij + Aij。(其正确性很容易证明,留给读者完成)
然后再求可改进路(反向弧<Vi, Vj>必须满足fij≥Aij,而非fij≥0),不断放大f,直到求出最大流。
我们看到,上几节所讨论的一种可行网络流实际上是{Aij = 0}的一种特殊网络流,这里提出的模型更一般化了。解决一般化的复杂问题,我们采取的思路是将其转化为特殊的简单问题,加以研究、推广,进而解决。这是一种重要的基本思想:化归——简单有效。基于这种思想,请读者自行思考解决:
1、 有上下界的最小流。
2、 有上下界的最小费用最大流。
五、多源点、多汇点的最大流
已知网络流图有n个源点S1、S2、……、Sn,m个汇点T1、T2、……、Tm,,求该图的最大流。这样的问题称为多源点、多汇点最大流。
它的解决很简单:
1、 增设一个“超级源”S’,对每个源点Si,新增弧<S’, Si>,容量为无穷大。
2、 增设一个“超级汇”T’,对每个汇点Ti,新增弧<Ti, T’>,容量为无穷大。
3、 以S’为源点、T’为汇点求最大流f。
4、 将f中的S’和T’去掉,即为原图的最大流。
算法正确性显然。
六、顶点有容量限制的最大流
上一节已经提出了这个问题,即对于进出每个顶点的流量也规定一个上限,这样的最大流如何求?
既然我们已经解决了“边限制”问题,现在何不把“点限制”问题转化为“边限制”呢?具体办法如下:
1、 对除源点和汇点之外的每个顶点i拆分成两个顶点i’和i’’。新增一条弧<i’, i’’>,其容量为点i的流量限制。
2、 对于原图中的弧<i, j>,我们将其变换成<i’’, j’>。
3、 对变换后的图求最大流即可。
这里我们又一次运用到了化归的思想:将未知的“点限制”问题转化为已知的“边限制”问题。
七、网络流与二部图的匹配
{二部图和匹配的定义可参见本书专门介绍二部图匹配的章节}
设二部图为G = (X, Y, E)。
增设点S’,对于所有i∈X,新增弧<S’, Xi>,容量为1;增设点T’,对于所有i∈Y,新增一条弧<Yi, T’>,容量也为1。原图中所有的弧予以保留,容量均为+∞。对新构造出来的网络流图以S’为源点、T’为汇点求最大流:流量即为最大匹配数;若弧<Xi, Yj>(i∈X,j∈Y)的流量非零,它就是一条匹配边。
二部图最大匹配问题解决。
那么二部图的最佳匹配问题又如何?
仍然按照上述方法构图。同时令原图中弧的费用保持不变;新增弧的费用置为0。然后以S’为源点、T’为汇点求最小费用最大流即可。最大流的费用即为原二部图最佳匹配的费用。
复制的我快吐了~
❸ 如何求模糊等价矩阵,MATLAB程序
”模糊等价矩阵”;英文对照
fuzzy equivalence matrix;
”模糊等价矩阵”;在学术文献中的解释
1、R满足自反性、对称性,且满足:(3)传递性min(r*k,r助)镇r.j’称为模糊等价矩阵,根据任意指定的闭值(0耳入蕊1),将R‘载为普通等价矩阵R‘,‘人
文献来源
2、这一矩阵称为模糊等价矩阵.用平方自合成法可以构造出等价矩阵,方法如下:R.R==R.R.R.=R.若R=R.则R为模糊等价矩阵
基于模糊等价关系的模糊聚类分析 收藏
假设R是X上的模糊等价关系,则对任意的a,R的a-截集是X上的普通等价关系,因此,可以根据X上的模糊关系,对X进行模糊分类。当取不同的a值,则可以得到不同的分类结果,即分类是动态的。
实际操作中,一般情况下,我们所获得是一系列样本,假设有N个,每个样本可以看作是M维空间中的一个点。可以表示如下,论域: ,对第i个元素有
1.数据预处理
考虑到不同的数据可能有不同的量纲,因此,再处理之前,有必要对数据进行相当的变换。常用的变换标准差变换和极差变换:
标准差变换:
经过变换后,每个变量的均值为0,标准差为1,并可以消除量纲的影响,但值不一定在0和1之间。
极差变换:
经过变换后,消除了量纲的影响,并且值在0和1之间。
2 模糊相似矩阵的建立
由已知的数据,可以建立论域上的模糊关系矩阵,其目的是为构造模糊等价矩阵提供数据。
计算模糊关系矩阵由很多方法,如夹角余弦法,相关系数法,算术平均法,几何平均法,最大最小法,以夹角余弦为例,可用下述公式计算:
3 用传递闭包法求模糊等价矩阵
由以上过程所建立的矩阵一般仅具有自反性和对称性,不满度传递性,必须进行变换转换为模糊等价矩阵。常采用传递闭包法,即从上述R矩阵出发,求R^2-->R^4-->R^8...,直到第一次出现R^k × R^k=R^k,这时表明R以具有传递性。
4 根据模糊等价矩阵和某以a得到分类结果。
部分代码实现:
'**********************************数据的标准差变化****************************
'
'过 程 名: Norm_Diff
'参 数: Data() - Double ,待变换的二维数组
'说 明: 执行改函数后数组中了保存变换的数据
'作 者:
'修 改 者: laviepbt
'修改日期: 2006-11-1
'
'**********************************数据的标准差变化****************************
Public Sub Norm_Diff(ByRef Data() As Double)
Dim m As Integer, N As Integer, i As Integer, j As Integer
Dim Ave As Double, s As Double
N = UBound(Data, 1): m = UBound(Data, 2) 'n样品数,m变量数
For j = 1 To m
Ave = 0
For i = 1 To N
Ave = Ave + Data(i, j)
Next
Ave = Ave / N 'ave是平均值
s = 0
For i = 1 To N
s = s + (Data(i, j) - Ave) ^ 2 's是标准差
Next
s = Sqr(s / N)
For i = 1 To N
Data(i, j) = (Data(i, j) - Ave) / s
Next
Next
End Sub
'**********************************数据的极差变换****************************
'
'过 程 名: Extre_Diff
'参 数: Data() - Double ,待变换的二维数组
'说 明: 执行改函数后数组中了保存变换的数据
'作 者:
'修 改 者: laviepbt
'修改日期: 2006-11-1
'
'**********************************数据的极差变换****************************
Public Sub Extre_Diff(ByRef Data() As Double)
Dim m As Integer, N As Integer, i As Integer, j As Integer
Dim Max As Double, Min As Double, d As Double
N = UBound(Data, 1): m = UBound(Data, 2) 'N样品数,M变量数
For j = 1 To m
Max = -10000000000#: Min = 10000000000#
For i = 1 To N
If Data(i, j) > Max Then Max = Data(i, j)
If Data(i, j) < Min Then Min = Data(i, j)
Next
d = Max - Min 'd是极差
For i = 1 To N
Data(i, j) = (Data(i, j) - Min) / d '极差标准化变换
Next
Next
End Sub
'**********************************夹角余弦法****************************
'
'过 程 名: Angle_Cos
'参 数: Data() - Double ,二维数组数据
' R() - Double, 相似矩阵
'说 明:
'作 者:
'修 改 者: laviepbt
'修改日期: 2006-11-1
'
'**********************************夹角余弦法****************************
Public Sub Angle_Cos(ByRef Data() As Double, ByRef R() As Double)
Dim m As Integer, N As Integer, i As Integer, j As Integer, k As Integer
Dim S1 As Double, Si2 As Double, Sj2 As Double
N = UBound(Data, 1): m = UBound(Data, 2) 'N样品数,M变量数
For i = 1 To N
For j = 1 To N
If i = j Then
R(i, j) = 1
Else
S1 = 0: Si2 = 0: Sj2 = 0
For k = 1 To m
S1 = S1 + Data(i, k) * Data(j, k)
Si2 = Si2 + Data(i, k) ^ 2
Sj2 = Sj2 + Data(j, k) ^ 2
Next
R(i, j) = Int((S1 / Sqr(Si2 * Sj2)) * 1000 + 0.5) / 1000
End If
Next
Next
End Sub
'**********************************相关系数法****************************
'
'过 程 名: Correlation
'参 数: Data() - Double ,二维数组数据
' R() - Double, 相似矩阵
'说 明:
'作 者:
'修 改 者: laviepbt
'修改日期: 2006-11-1
'
'**********************************相关系数法****************************
Public Sub Correlation(ByRef Data() As Double, ByRef R() As Double)
Dim m As Integer, N As Integer, i As Integer, j As Integer, k As Integer
Dim Xia As Double, Xja As Double
Dim S1 As Double, Si2 As Double, Sj2 As Double
N = UBound(Data, 1): m = UBound(Data, 2) 'N样品数,M变量数
For i = 1 To N
For j = 1 To N
If i = j Then
R(i, j) = 1
Else
Xia = 0: Xja = 0
For k = 1 To m
Xia = Xia + Data(i, k)
Xja = Xja + Data(j, k)
Next
Xia = Xia / m
Xja = Xja / m
S1 = 0: Si2 = 0: Sj2 = 0
For k = 1 To m
S1 = S1 + Abs((Data(i, k) - Xia) * (Data(j, k) - Xja))
Si2 = Si2 + (Data(i, k) - Xia) ^ 2
Sj2 = Sj2 + (Data(j, k) - Xja) ^ 2
Next
R(i, j) = Int((S1 / Sqr(Si2 * Sj2)) * 1000 + 0.5) / 1000
End If
Next
Next
End Sub
'**********************************传递闭包法****************************
'
'过 程 名: TR
'参 数: R() - Double ,相似矩阵
' RR() - Double, 模糊乘积矩阵
'说 明:
'作 者:
'修 改 者: laviepbt
'修改日期: 2006-11-1
'
'**********************************传递闭包法****************************
Public Sub TR(ByRef R() As Double, ByRef RR() As Double)
Dim N As Integer, l As Integer
Dim i As Integer, j As Integer, k As Integer
Dim i1 As Integer, j1 As Integer
Dim dMax As Double
N = UBound(R, 1)
ReDim dMin(1 To N) As Double
l = 0
100:
l = l + 1
If l > 100 Then
MsgBox "已进行100次自乘,仍然没有获得传递性", vbCritical, "错误"
Exit Sub
End If
For i = 1 To N
For j = 1 To N
For k = 1 To N
If R(i, k) <= R(k, j) Then
dMin(k) = R(i, k)
Else
dMin(k) = R(k, j)
End If
Next
dMax = dMin(1) '模糊矩阵的乘法,取小取大
For k = 1 To N
If dMin(k) > dMax Then dMax = dMin(k)
Next
RR(i, j) = dMax
Next
Next
For i = 1 To N
For j = 1 To N
'判断是否式模糊等价矩阵,若非则继续做
If R(i, j) <> RR(i, j) Then
For i1 = 1 To N
For j1 = 1 To N
R(i1, j1) = RR(i1, j1)
Next
Next
GoTo 100
End If
Next
Next
End Sub
全部代码可参考《模糊数学基础及实用算法》一书。
处理结果:以一下数据为例:选用极差法预处理数据,夹角余弦法计算相似矩阵
数据 模糊等价矩阵
部分分析结果:
********************************
入值:0.908
第1类:U1 U2 U3 U4
第2类:U5 U6
第3类:U7 U8
F效验值: 6.099
显着性为.2的临界值:2.259
显着性为.1的临界值:3.78
结论:在给定的临界值下,该分类效果特别显着.^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
********************************
入值:0.894
第1类:U1 U2 U3 U4
第2类:U5 U6 U7 U8
F效验值: 7.634
显着性为.2的临界值:2.073
显着性为.1的临界值:3.776
结论:在给定的临界值下,该分类效果特别显着.^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
********************************
入值:0.888
第1类:U1 U2 U3 U4 U5 U6 U7 U8
F效验值: ********
显着性为.2的临界值:********
显着性为.1的临界值:********
结论:在给定的临界值下,该分类效果不显着.
********************************
显然对于不同lamda值,由不同得聚集效果,可以考虑使用F检验方法刷掉一些不合理得分类。详见《模糊数学基础及实用算法》一书。
❹ 求下图中vs到vt的最大流和最小截图旁边的数字是c
如下:
至于截集,定义为:给定网络D=(V,A,C),若点集V被分割成两个非空集合V1和V2,使得V=V1+V2,V1∩
V2=φ(空集),且vs∈V1,vt∈V2,则把始点在V1,终点在V2的弧的集合称为分离vs和vt的一个截集
然后,网络流算法最重要的增广链,正式定义为:
设 f = {Fij}是网络D=(V,A,C)上的一个可行流,u 是从 Vs到 Vt的一条链,若u 满足下列条件:
(1)在弧 (vi,vj)∈μ+上,即 u+中的每一条弧都是非饱和弧;
(2)在弧 (vi,vj)∈μ-上,即u- 中的每一条弧都是非零流弧。则称 是关于 的一条增广链。
❺ 怎么样求网络的最大流和最小截集
怎样求最大流:
用增广路算法。
怎样求最小截集:
求最大流,然后从源点DFS。
❻ 运筹学中标号法求最大流的问题
1)对于标号法,第一次选择3 或者5 都可以,但选择3的话,括号里的数字比选择5大。不是必须选择哪个,也没有太大的影响。
2)根据最小截集和截量的定义:最小截集的截量等于从该集合连接到剩余集合的边上的能力之和。
❼ 我现在要对图像进行量化,第一步就是从图像中选出C种颜色聚类,请问这一步怎么实现,颜色怎么表示啊
%%%%%%%%%%%%%%%%%%
clear;
load F:\从0开始\数据\data.txt;
INPUTDATA=data;
%--------原始数据标准化-------%
disp('请选择原始数据标准化方式: ');
disp('<1-总和标准化|2-标准差标准化|3-极大值标准化|4-极差标准化>');
wayforstand=input('请输入: ');
switch wayforstand
case 1,
DATAFORCLUS=standard_use_sum(INPUTDATA);
case 2,
DATAFORCLUS=standard_use_std(INPUTDATA);
case 3,
DATAFORCLUS=standard_use_max(INPUTDATA);
case 4,
DATAFORCLUS=standard_use_jc(INPUTDATA);
otherwise
error('您的输入不符合要求->执行结束!!!');
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%基于模糊等价关系的模糊聚类%%%%%%%%%%%%%%%%%%%%%%
%----------构造相似关系-----------%
numrows=size(DATAFORCLUS,1);
numcols=size(DATAFORCLUS,2);
disp('请选择对象之间相似性统计量的方式: ');
disp('<1-相关系数法|2-夹角余弦法|3-指数相似系数法|4-绝对值指数法|5-算术平均最小法|6-最大最小值法|7-绝对值差数法|8-数量积法>');
wayforr_ij=input('请输入: ');
switch wayforr_ij
case 1, %-----------------------------------相关系数法
for i=1:numrows,
for j=1:numrows,
meani=mean(DATAFORCLUS(i,:));meanj=mean(DATAFORCLUS(j,:));
simiR(i,j)=sum((DATAFORCLUS(i,:)-meani).*(DATAFORCLUS(j,:)-meanj))/...
(sqrt(sum((DATAFORCLUS(i,:)-meani).^2))*sqrt(sum((DATAFORCLUS(j,:)-meanj).^2)));
end
end
case 2, %-----------------------------------夹角余弦法
for i=1:numrows,
for j=1:numrows,
simiR(i,j)=sum(DATAFORCLUS(i,:).*DATAFORCLUS(j,:))/...
(sqrt(sum(DATAFORCLUS(i,:).*DATAFORCLUS(i,:)))*sqrt(sum(DATAFORCLUS(j,:).*DATAFORCLUS(j,:))));
end
end
case 3, %-----------------------------------指数相似系数法
case 4, %-----------------------------------绝对值指数法
case 5, %-----------------------------------算术平均最小法
case 6, %-----------------------------------最大最小值法
case 7, %-----------------------------------绝对值差数法
case 8, %-----------------------------------数量积法
otherwise
error('您的输入不符合要求->执行结束!!!');
end
%-------改造成等价关系----------%
sign=0;
numselfmul=1;
simiRk=eye(numrows);
equi_tem=simiR;
while sign==0,
for i=1:numrows,
for j=1:numrows,
for c=1:numrows,
rij_temp(c)=min([equi_tem(i,c) equi_tem(c,j)]);
end
simiRk(i,j)=max(rij_temp);
end
end
%--------------%
if sum(sum(simiRk-equi_tem,1))~=0,
numselfmul=numselfmul+1;
equi_tem=simiRk;
else
sign=1;
break
end
%--------------%
end
if sign==1,
disp('从相似矩阵到等价矩阵改造成功!!!');
else
disp('从相似矩阵到等价矩阵改造失败!!!');
end
equiR=simiRk;
numclass=input('请输入聚类数: ');
%---------在不同的截集水平进行聚类--------------%
clasc=0;
comp_vec(1,1:numrows)=0;
index=0;
clasc=0;
tip=0;
alpha=0;
temnumeachclass=0;
while (tip==0),
%alpha=input('请输入进行分类的截集水平λ: ');
%alpha=0.5; %调试
if (alpha<0 || alpha>1),
error('您输入的截集水平λ不符合分类要求->执行结束!!!');
end
comp_arr=ones(numrows)*alpha;
result_arr=(equiR>=comp_arr); %--------------------result_arr判断矩阵
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%捡菜算法
for i=1:numrows,
if sum(comp_vec(1,:)==result_arr(i,:))<numrows, %-----------说明没有归类
temnumeachclass=0;
%numeachclass(clasc)=index-temnumeachclass;
temsave=result_arr(i,:);
for j=1:numrows,
if sum(result_arr(j,:)==temsave)==numrows,
index=index+1;
class(index)=j;
result_arr(j,:)=0; %--------------------说明已经被归类
temnumeachclass=temnumeachclass+1;
end
end
clasc=clasc+1;
nec(clasc)=temnumeachclass;
else
continue;
end
end
if clasc>=numclass,
tip=1; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%当模糊分类的数目小于等于所给出的类数时退出循环体
disp('成功!!!');
else
clear class;
clear numeachclass;
clear nec;
clasc=0;
index=0;
temnumeachclass=0;
alpha=alpha+0.01;
end
end
%----取聚类结果----%
num=0;
n=0;
for i=1:clasc,
for j=1:nec(i),
num=num+1;
n=n+1;
CLUS(n,:)=INPUTDATA(class(num),:);
end
n=n+1;
CLUS(n,:)=inf;
end
%format single(CLUS)
lenexport=size(CLUS,1);
for i=1:lenexport,
RESULT(i,:)=sprintf('%15.2f',CLUS(i,:));
end
RESULT
❽ 运筹学中截集的含义
运筹学(Operations Research,在台湾有时又被称作作业研究),是一应用数学和形式科学的跨领域研究,利用统计学、数学模型和算法等方法,去寻找复杂问题中的最佳或近似最佳的解答。运筹学经常用于解决现实生活中的复杂问题,特别是改善或优化现有系统的效率。 研究运筹学的基础知识包括实分析、矩阵论、随机过程、离散数学和算法基础等。而在应用方面,多与仓储、物流、算法等领域相关。因此运筹学与应用数学、工业工程、计算机科学等专业密切相关。[1-2]
1955年我国从“运筹帷幄之中,决策千里之外”(见《史记》)这句话摘取“运筹”二字,将O.R.正式译作运筹学。
在中国古代文献中就有记载,如田忌赛马、丁渭主持皇宫修复等。说明在已有的条件下,经过筹划、安排,选择一个最好的方案,就会取得最好的效果。可见,筹划安排是十分重要的。
普遍认为,运筹学是近代应用数学的一个分支,主要是将生产、管理等事件中出现的一些带有普遍性的运筹问题加以提炼,然后利用数学方法进行解决。前者提供模型,后者提供理论和方法。
运筹学的思想在古代就已经产生了。敌我双方交战,要克敌制胜就要在了解双方情况的基础上,做出最优的对付敌人的方法,这就是“运筹帷幄之中,决胜千里之外”的说法。
但是作为一门数学学科,用纯数学的方法来解决最优方法的选择安排,却是晚多了。也可以说,运筹学是在二十世纪三十年代才开始兴起的一门分支。
运筹学主要研究经济活动和军事活动中能用数量来表达的有关策划、管理方面的问题。当然,随着客观实际的发展,运筹学的许多内容不但研究经济和军事活动,有些已经深入到日常生活当中去了。运筹学可以根据问题的要求,通过数学上的分析、运算,得出各种各样的结果,最后提出综合性的合理安排,以达到最好的效果。
运筹学作为一门用来解决实际问题的学科,在处理千差万别的各种问题时,一般有以下几个步骤:确定目标、制定方案、建立模型、制定解法。
虽然不大可能存在能处理极其广泛对象的运筹学,但是在运筹学的发展过程中还是形成了某些抽象模型,并能应用解决较广泛的实际问题。
随着科学技术和生产的发展,运筹学已渗入很多领域里,发挥了越来越重要的作用。运筹学本身也在不断发展,线性规划;非线性规划;整数规划;组合规划等)、图论、网络流、决策分析、排队论、可靠性数学理论、库存论、博弈论、搜索论、模拟等等。
运筹学有广阔的应用领域,它已渗透到诸如服务、经济、库存、搜索、人口、对抗、控制、时间表、资源分配、厂址定位、能源、设计、生产、可靠性等各个方面。
运筹学是软科学中“硬度”较大的一门学科,是系统工程学和现代管理科学中的一种基础理论和不可缺少的方法、手段和工具。运筹学已被应用到各种管理工程中,在现代化建设中发挥着重要作用。
❾ 模糊控制理论与工程应用的目录
第1章绪论1.1模糊理论的产生 1.2模糊控制理论的创立、现状和发展趋势 1.2.1模糊控制理论的创立 1.2.2模糊控制理论的研究和应用状况 1.2.3模糊控制理论的发展趋势 1.3本书的基本结构和内容安排第1篇模糊控制理论的数学基础
第2章模糊数学基础知识 2.1模糊现象及模糊概念 2.2模糊集合论基础 2.2.1经典集合论概述 2.2.2模糊集合的定义及表示方法 2.2.3模糊集合的运算 2.2.4隶属函数的确定原则及基本确定方法 2.2.5λ—截集 2.3模糊集合的基本定理 2.3.1模糊集合的分解定理 2.3.2模糊集合的扩展原理 2.4模糊关系、模糊矩阵和模糊变换 2.4.1模糊关系及运算 2.4.2模糊矩阵 2.4.3模糊关系的合成运算及性质 2.4.4模糊变换 2.5模糊逻辑 2.5.1模糊逻辑概述 2.5.2模糊命题 2.5.3模糊逻辑公式 2.6模糊语言 2.6.1模糊语言的组成要素及语法规则 2.6.2语言值及其运算法则 2.6.3语言变量 2.7模糊推理 2.7.1模糊语句概述 2.7.2模糊条件语句 2.7.3模糊推理第2篇模糊控制理论
第3章模糊控制系统与模糊控制器概论 3.1模糊控制系统的基本结构及控制原理 3.1.1一般模糊控制系统的基本结构 3.1.2一般模糊控制系统的工作原理- 3.2一般模糊控制器的基本结构 3.2.1一般模糊控制器的基本结构 3.2.2一般模糊控制器各主要环节的功能 3.3模糊控制器的基本类型 3.3.1按输入、输出量分 3.3.2按模糊控制器的本质分 3.3.3按模糊控制器的控制功能分 3.3.4按模糊控制器的智能化程度分 3.4一般模糊控制器设计中的几个突出问题3.4.1模糊化 3.4.2数据库 3.4.3规则库 3.4.4清晰化基本算法
第4章基本模糊控制器设计 4.1精确量的模糊化处理 4.1.1模糊控制器的语言变量 4.1.2语言变量值的选取 4.1.3语言变量论域上的模糊子集的确定原则 4.1.4语言变量的赋值表 4.1.5一个确定精确量的模糊化 4.2基本模糊控制器的模糊规则设计 4.2.1双输入单输出模糊控制器的基本规则 4.2.2基于手动控制策略的模糊控制规则集 4.3模糊控制状态表及模糊关系 4.3.1模糊控制状态表 4.3.2反应控制规则的模糊关系 4.4模糊推理方法 4.5输出信息的模糊判决 4.5.1模糊判决方法 4.5.2待判决模糊集合形状的分析 4.6建立查询表 4.7基本模糊控制器设计举例 4.7.1被控对象的特点和控制任务 4.7.2模糊控制器设计
第5章模糊一PID控制器设计 5.1模糊一PI(比例积分)控制器 5.1.1模糊一PI双模控制 5.1.2比例一模糊一PI控制 5.1.3模糊积分引入方式 5.2模糊一比例微分(PD)控制器 5.2.1模糊一PD控制结构 5.2.2模糊一PD控制器的设计 5.2.3数值仿真 5.3模糊一比例积分微分(PID)控制器 5.3.1自整定模糊一PID控制器的结构 5.3.2自整定设计思想 5.3.3模糊一PID参数控制算法 5.3.4仿真结果 5.4模糊一PID控制系统实例 5.4.1模糊一PID控制器的结构组成 5.4.2模糊自整定PID参数控制算法 5.4.3模糊自整定PID参数控制系统软件实现 5.4.4实验结果分析 5.5常规PID与模糊一PID控制器的比较分析 5.5.1控制系统结构 5.5.2,控制器设计和参数整定 5.5.3模糊切换方法设计 5.5.4仿真实例
第6章多变量模糊控制6.1多变量模糊控制基本理论概述 6.1.1分层多变量模糊控制 6.1.2自学习模糊控制器 6.1.3基于模型的多变量模糊控制方法 6.1.4多变量模糊解耦 6.2双输入双输出模糊控制器的结构 6.3递阶多变量模糊控制器的设计 6.4多变量模糊控制器的应用实例 6.4.1多变量温度模糊控制 6.4.2板球系统的T—S模糊多变量控制
第7章自适应模糊控制 7.1自适应模糊控制系统 7.2直接型和间接型自适应模糊控制器 7.2.1直接型和间接型自适应模糊控制器的区别 7.2.2第一类和第二类自适应模糊控制器 7.2.3直接型自适应模糊控制器的结构 7.3基于模型参考的自适应模糊控制器 7.3.1基于模型参考的自适应模糊控制器 7.3.2基于模型参考的自适应模糊控制器的设计 7.4自校正模糊控制器 7.5基于监督控制的自适应模糊控制器的设计 7.5.1间接型自适应模糊监督控制器设计 7.5.2直接型自适应模糊监督控制器设计 7.6基于基本参数调整的自适应模糊控制器 7.6.1基于基本参数调整的自适应模糊控制器概述 7.6.2论域自调整模糊控制器 7.7基于智能算法的自适应模糊控制器
第8章神经网络模糊控制 8.1神经网络基础 8.1.1神经元 8.1.2人工神经网络 8.1.3向后传播网络 8.2传统的神经网络控制概述 8.2.1神经网络的逼近能力 8.2.2神经控制的基本思想 8.2.3神经网络在控制中的作用 8.2.4传统的神经网络控制 8.3神经网络模糊控制 8.3.1神经网络和模糊逻辑相结合的方式 8.3.2结构等价的神经网络模糊控制器 8.4基于神经网络的自适应模糊控制器 8.4.1控制器结构 8.4.2学习算法 8.4.3仿真实验 8.5基于单层神经网络的多变量自适应模糊控制器 8.6模糊逻辑、神经网络与混沌控制概述 8.6.1混沌及混沌控制简介 8.6.2混沌系统的模糊控制 8.6.3混沌系统的神经网络控制
第9章模糊控制系统的稳定性分析9.1连续模糊控制系统的稳定性分析 9.1.1连续模糊控制系统 9.1.2连续模糊控制系统的稳定性定理 9.1.3仿真实例 9.2离散模糊控制系统的稳定性分析 9.2.1离散模糊控制系统 9.2.2离散模糊控制系统的稳定性定理 9.3基于模糊动态线性模型T—S的稳定性分析
❿ 北京邮电大学研究生考试科目中的管理基础指的是哪些具体课程教材是哪些拜托各位了。
《管理学》 高等教育出版社(第二版)周三多主编
《运筹学教程》 清华大学出版社(第二版)胡运权主编
考试大纲
一、管理学部分
第一章、管理活动与管理理论
一、管理的定义、职能、角色与属性
二、中外早期的管理思想
三、管理理论的形成与发展
四、企业道德与社会责任
五、社会责任的具体体现
六、管理流派及当代管理学的发展趋势
第二章、信息获取与决策
一、信息的定义、评估与特征
二、信息系统
三、决策的依据、类型
四、决策的相关理论
五、决策过程与决策方法
第三章、计划与组织
一、计划的类型与编制过程
二、企业远景与使命
三、战略环境分析与选择
四、目标管理、滚动计划法和网络计划技术
五、组织设计的任务、原则及影响因素
六、组织的部门化与层级化
七、人力资源计划与绩效评估
八、组织变革的动因、类型、目标、内容
九、组织文化及其发展
第四章、领导与控制
一、领导的内涵、类型与领导方式
二、激励原理、激励的内容理论、过程理论与强化理论
三、激励的一般形式和实务
四、沟通原理、冲突管理、有效沟通的障碍及其实现
五、组织冲突与谈判
六、控制类型、控制过程、有效控制与控制方法
第五章、管理创新
一、创新的类别与特征
二、创新职能的基本内容
三、创新过程和创新活动的组织
四、企业创新的内涵和贡献
五、技术创新的源泉
六、创新的过程和组织
七、技术创新战略及创新选择
八、企业制度创新与企业层级结构创新
九、企业文化的功能、特点和企业文化创新
二、运筹学部分
第一章线线规划与单纯形法
1.1 线性规划问题和数学模型
1.2 线性规划图解法
1.3 线性规划解的概念和单纯行法
1.4 单纯行法的一些具体问题
第二章对偶理论与灵敏度分析
2.1 线性规划问题的对偶及其变换
2.2 线性规划的对偶定理
2.3 对偶单纯行法
2.4 线性规划的灵敏度分析
第三章运输问题
3.1 运输问题的数学模型的特点及其求解
3.2 运输问题迭代计算中的具体问题
第四章整数规划
4.1 整数规划问题数学模型的特点及其求解思路
4.2 任务分配问题及其求解方法
第五章动态规划
5.1 动态规划模型的最优性原理及其算法基本思路
5.2 离散型动态规划模型特点及其求解
5.3 连续型动态规划模型特点及其求解
第六章图与网络分析
6.1 图和网络的基本概念
6.2 树图和最小生成树
6.3 最短路径问题的求解
6.4 网络最大流、最小截集的求解
第七章随机服务理论概述
7.1 随机服务系统的基本组成
7.2 负指数分布定义和特点
7.3 泊松输入定义和特点
7.4 生灭过程的概念及其稳态解
第八章生灭服务系统
8.1 M/M/n 损失制系统特点及其计算
8.2 M/M/n 等待制系统特点及其计算
第九章存储理论
9.1 确定型存储模型求解基本思路和计算
9.2 随机存储模型求解基本思路和计算
第十章决策理论
10.1 不确定型决策
10.2 风险型决策