最短路问题的数学模型

Download Report

Transcript 最短路问题的数学模型

第四章 运筹学模型
本章重点:
线性规划基础模型、目标规划模型、运输模型
及其应用、图论模型、最小树问题、最短路问题
1.营养配餐问题的数学模型
min Z  C1x1  C2 x 
Cn xn
a11 x1  a12 x 2    a1n x n  b1 ,

a 21 x1  a 22 x 2    a 2 n x n  b2 ,

st 
  
a x  a x    a x  b ,
m2 2
mn n
m
 m1 1
 x j  0( j  1,2,  , n)
上式可更简洁的写为
min Z 
n
C x
j 1
j
j
n
 aij x j  bi
 j 1
s t  
 x  0 (i  1,2,, m)
 j
j  1,2,, n
其中的常数 C j表示第j种食品的市场价格,aij表示第j种
食品含第i种营养的数量,bi表示人或动物对第i种营养
的最低需求量.
2.合理配料问题的数学模型
有m种资源B1,B2,…,Bm,可用于生产n种代
号为A1,A2,…,An的产品.单位产品Aj需用资源
Bi的数量为aij,获利为Cj单位,第i种资源可供给总
量为bi个单位.问如何安排生产,使总利润达到最大?
设生产第j种产品xj个单位(j=1,2,…,n),则
有
max z 
n
C
j 1
j
xj
n
 aij x j  bi
 j 1
st 
 x  0  i  1,2,  , m 
 j  1,2,  , n 
 j



3.运输问题模型
运输问题也是一种线性规划问题,只是决策变量
设置为双下标变量.假如问题具有m个产地和n个销地,
第i个产地用Ai表示,其产量为ai(i=1,2,…,m),第j个
销地用Bj表示,其销量为bj (j=1,2,…,n),从Ai运往Bj
 a  表示产销平衡.
b
的运价为cij, 而
m
i 1
n
i
j 1
j
那么产销平衡运输问题的一般模型可以写成为
m
n
min Z   cij xij
i 1 j 1
 n
 xij  ai
 j 1

m
s  t   xij  b j
 i 1

 i  1,2,  , m 


 xij  0

 j  1,2,  , n 

4.目标规划模型
某工厂生产代号为Ⅰ、Ⅱ的两种产品,这两种产
品都要经甲、乙两个车间加工,并经检验与销售两部
门处理.已知甲、乙两车间每月可用生产工时分别为120
小时和150小时,每小时费用分别为80元和20元,其它
数据如下表
项目
数据
产品
甲车间加
工(时/件)
乙车间加
工(时/件)
检验销
售(元/件)
利润
(元/件)
Ⅰ
2
1
50
100
Ⅱ
1
3
30
75
工厂领导希望给出一个可行性生产方案,使生产销售
及检验等方面都能达标
问题分析与模型假设
经与工厂总经理交谈,确定下列几条:
p1: 检验和销售费每月不超过4600元;
p2: 每月售出产品I不少于50件;
p3: 两车间的生产工时充分利用(重要性权系数按两
车间每小时费用比确定);
p4:甲车间加班不超过20小时;
p5:每月售出产品Ⅱ不少于80件;
p6:两车间加班总时数要有控制(对权系数分配参
照第三优先级).
模型建立


min z  p1d1  p2 d 2  p3 (4d3  d 4 )  p4 d5  p5 d 6  p6 (4d 3  d 4 )
50x1  30x 2  d1  d1



x

d

d

1
2
2



2
x

x

d

d
1
2
3
3


st 
x1  3 x 2  d 4  d 4




d

d

d
3
5
5


x 2  d 6  d 6

 x1 , x 2  0, d l , d l  0
 4600
 50
 120
 150
 20
 80
(l  1,2,  ,6)
5.最小树问题
一个图中若有几个顶点及其边的交替序列形成闭回
路,我们就说这个图有圈;若图中所有连顶点间都有边
相接,就称该图是连通的;若两个顶点间有不止一条边
连接,则称该图具有多重边.
一个图被称为是树意味着该图是连通的无圈的简单
图.
在具有相同顶点的树中,总赋权数最小的树称为最
小树.最小树的求法有两种,一种称为“避圈法”,一种是
“破圈法”,两法各具优缺点,它们具有共同的特征——
去掉图中的圈并且每次都是去掉圈中边权较大的边.
6.最短路问题的数学模型
最短路问题一般描述如下:在一个图(或者说网
络)中,给定一个始点vs和一个终点vt,求vs到vt的一
条路,使路长最短(即路的各边权数之和最小).
狄克斯屈(E.D.Dijkstra)双标号法
该法亦称双标号法,适用于所有权数均为非负(即
一切 wij表示顶点vi与vj的边的权数)的网络,能够求出
网络的任一点vs到其它各点的最短路,为目前求这类网
络最短路的最好算法.
该法在施行中,对每一个点vj都要赋予一个标号,
并分为固定标号P(vj)和临时标号T(vj)两种,其含
义如下:
P(vj)——从始点vs到vj的最短路长;
T(vj)——从始点vs到vj的最短路长上界.
开始先给始点vs标上P标号0,然后检查点vs,对其
一切关联边(vs, vj)的终点vj,给出vj的T标号wij;再
在网络的已有T标号中选取最小者,把它改为P标
号.以后每次都检查刚得到P标号那点,按一定规则修
改其一切关联边终点的T标号,再在网络的所有T标号
中选取最小者并把它改为P标号.这样,每次都把一个
T标号点改为P标号点,因为网络中总共有n个结点,故
最多只需n-1次就能把终点vt改为P标号.这意味着已求
得了vs到vt的最短路.
狄克斯屈标号法的计算步骤如下:
1. 令S={vs}为固定标号点集, S  V \ {vs }为临时标号
点集,再令 P(vi )  0 , vt
S
2. 检查点vi,对其一切关联边(vi,vj)的终点 v j
计算并令
min{T (v j ), P(vi )  wij }  T (v j )
S
狄克斯屈标号法的计算步骤如下:
3. 从一切中选取并令
min{T (v j )}  T (vr )  T (vr )
选取相应的弧(vi, vr).再令
S  {vr }  S , S \ {vr }  S
4. 若 S   ,则停止,P(v j )即vs到vj的最短路长,特别
P(vt ) 即vs到vt的最短路长,而已选出的弧即给出vs到
各点的最短路;否则令 vr  vi ,返2.
5. 若r = t则结束,P(vr )即为所求最短路长;否则令
vr  vi ,返2.