最后编辑:1周前
[MD]
1. 运筹学
1.1 运输问题
伏格尔算法
谁用完,划掉谁
- 计算行和列中的次小值和最小值的差(有两个最小值时, 差为0),填入行差、列差
- 在所有的行差、列差中找最大差值
- 在最大差值所对应的行(列)中,定位最小值所在单元格
- 在供应量和需求量里选较小的与上一步定位的单元格相乘
- 分配完的行(列)划掉,不再参与计算
- 重复步骤1~5,直至表格内的供求量均为0
- 此时所有乘数为运输的数量方案,总价为剩余单元格的值之和
1.2 指派问题
匈牙利算法
- 以本单元格的数值–本行最小值代替本单元格数值
- 以本单元格的数值–本列最小值代替本单元格数值
- 减去的所有值之和为最短用时
- 0为可以安排的位置
- 划掉安排好的行或列
1.3 动态规划
1.3.1 最短路径
标号法
- 将开始节点S标记为0
- 节点k的标记=紧前节点的标记+MIN(紧前节点到节点k的所有路径)
- 直至标记到结束节点E
- 此时如果标记值−路径=紧前标记值,则该路径在最短路径上
- 连通E到S得到的路径为最短路径
1.3.2 最小生成树
扩圈法
- 找一个闭合路径
- 去掉一个最大边
- 重复步骤直至没有闭合路径
1.3.3 图与网络图
- 如果有表,表转图,不能同时进行的活动相连
- 数奇点个数:
- 奇点个数为0:任意点到任意点
- 奇点个数为2:一个奇点到另一个奇点
- 找出能一笔画的起点和终点
- 计算所有边之和
- 如果要求回到起点:
- 奇点个数为0:无需操作
- 奇点个数为2:再加上两个奇点之间的最短距离
1.3.4 最大流量
- 在起点至终点选一条通路
- 删除此通路最短的边,该边的权值为此路径的最大流量ai
- 剩下的边权值−ai
- 重复操作,直至起点到终点的权值为0
- ∑i=1n(ai)
1.3.5 资源分配
1.4 线性规划
- 解方程组,问什么设什么,注意约束条件
- 般有两个未知数X,Y以及其它条件,写多个(2~N)不等式,考虑X=0或Y=0的情况,求最值的第三个方程为: Z=aX+bY+c
2. 决策分析
2.1 不确定型决策
2.1.1 乐观决策法
每个方案ai取结果状态最大值MAX(θ),在最后选择出最大值MAX(MAX(θ))所在的方案当选
2.1.2 悲观决策法
每个方案ai取结果状态最小值MIN(θ),在最后选择出最大值MAX(MIN(θ))所在的方案当选
2.1.3 平均值决策法
每个方案ai取结果状态平均数θ,在最后选择出最大值MAX(θ)所在的方案当选
2.1.4 悔值决策法
- 求出方案a1的所有悔值:
方案a1的悔值θ1=MAX(θ1)−方案a1的结果状态θ1
方案a1的悔值θ2=MAX(θ2)−方案a1的结果状态θ2
…
方案a1的悔值θj=MAX(θj)−方案a1的结果状态θj
- 在方案a1的悔值θ中,选出最大值MAX(方案a1的悔值θ)
- 继续求出方案a2~ai的所有悔值:
方案a2的悔值θ1=MAX(θ1)−方案a2的结果状态θ1
…
方案ai的悔值θj=MAX(θj)−方案ai的结果状态θj
- 得出最大悔值:MAX(方案a1的悔值θ),MAX(方案a2的悔值θ),…,MAX(方案ai的悔值θ)
- 选出最大悔值中的最小值MIN(MAX(方案ai的悔值θ)),该方案当选
2.2 风险型决策
2.2.1 期望值决策法
- 求方案ai的期望:
E(a1)=∑j=1n(方案a1的结果状态θj的概率×方案a1的结果状态θj)
…
E(ai)=∑j=1n(方案ai的结果状态θj的概率×方案ai的结果状态θj)
- 在所有方案的期望中选最大值MAX(E(ai))
2.2.2 最小悔值与期望值决策法
- 求出方案a的所有悔值:
方案a1的悔值θ1=MAX(θ1)−方案a1的结果状态θ1
方案a1的悔值θ2=MAX(θ2)−方案a1的结果状态θ2
…
方案a1的悔值θj=MAX(θj)−方案a1的结果状态θj
方案a2的悔值θ1=MAX(θ1)−方案a2的结果状态θ1
…
方案ai的悔值θj=MAX(θj)−方案ai的结果状态θj
- 求出方案ai的悔值期望ER(ai):
ER(a1)=∑j=1n(方案a1的结果状态θj的概率×方案a1的结果状态θj的悔值)
…
ER(ai)=∑j=1n(方案ai的结果状态θj的概率×方案ai的结果状态θj的悔值)
- 取最小值MIN(ER(ai))的方案当选
3. 进度类
3.1 单代号网络图(PDM、前导图、紧前关系绘图法)
- 活动在方框内
- 关系类型:SS、SF、FF、FS(常用)
关键路径法(六标时图)
ES |
工期 |
EF |
活动名称 |
LS |
总浮动时间(总时差) |
LF |
假设活动1为第一个活动,活动n为最后一个活动:
- 总浮动时间(总时差)=LF−EF=LS−ES
- 关键路径的总浮动时间为0
- ES1=LS1=总浮动时间1=0
- 活动i的最早开始时间为它的紧前活动们的最早完成时间的最大值:ESi=MAX(EF←i)
- 活动i的最迟完成时间为它的紧后活动们的最迟开始时间的最小值:LFi=MIN(LSi→)
- LFn=EFn
- LS=ES+工期
- 自由浮动时间i=MIN(ESi→)−EFi
3.2 双代号网络图(ADM、AOA、箭线图)
- 活动在线上
- 节点为事件,用圆圈表示
- 虚活动不消耗时间和资源
3.3 双代号时标网络图
波形线表示活动与紧后活动的自由浮动时间(自由时差),虚线表示虚活动
- 总工期:终点与起点的时间差
- 关键路径︰自始至终无波形线的线路(1条及以上)。关键活动(关键工作):关键路径上的活动
- 总时差: MIN(从本工作起经过的所有波形线之和)。自由时差:该工作上的波形线长度
3.4. 进度的三点估算
3.4.1 三角分布
Te=3(To+Tm+Tp)
3.4.2 β分布
Te=6(To+4Tm+Tp)
3.4.3 进度三点估算的概率
- 计算期望 μ=Te
- 计算标准差 σ=6Tp−To
- 项目的期望(T)、标准差(σ)、方差(σ2)均为项目所有活动之和,即T=∑i=1n(ti)、σ=∑i=1n(σi)、σ2=∑i=1n(σi2)
P(x≤μ−3σ)≈0.1%
P(μ−3σ≤x≤μ−2σ)≈2.1%
P(μ−2σ≤x≤μ−σ)≈13.6%
P(μ−σ≤x≤μ)≈34.1%
P(μ≤x≤μ+σ)≈34.1%
P(μ+σ≤x≤μ+2σ)≈13.6%
P(μ+2σ≤x≤μ+3σ)≈2.1%
P(x≥μ+3σ)≈0.1%
3.5 进度压缩
- 并行
- 压缩关键路径上的活动。
- 考虑间接成本
- 关键路径可能不止一条
- 每压缩一次就要考虑关键路径是否变化。时间=工作量/人数
- 考虑人手或者资金不足导致的停工
- 压缩优先顺序∶①价格②关键路径上的共同活动