![《现代库存管理:模型、算法与Python实现》 课件 第14章-网络库存管理基础_第1页](http://file4.renrendoc.com/view3/M01/39/1A/wKhkFmYncyuAFrl_AAEg83xT7MY292.jpg)
![《现代库存管理:模型、算法与Python实现》 课件 第14章-网络库存管理基础_第2页](http://file4.renrendoc.com/view3/M01/39/1A/wKhkFmYncyuAFrl_AAEg83xT7MY2922.jpg)
![《现代库存管理:模型、算法与Python实现》 课件 第14章-网络库存管理基础_第3页](http://file4.renrendoc.com/view3/M01/39/1A/wKhkFmYncyuAFrl_AAEg83xT7MY2923.jpg)
![《现代库存管理:模型、算法与Python实现》 课件 第14章-网络库存管理基础_第4页](http://file4.renrendoc.com/view3/M01/39/1A/wKhkFmYncyuAFrl_AAEg83xT7MY2924.jpg)
![《现代库存管理:模型、算法与Python实现》 课件 第14章-网络库存管理基础_第5页](http://file4.renrendoc.com/view3/M01/39/1A/wKhkFmYncyuAFrl_AAEg83xT7MY2925.jpg)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
现代库存管理:模型、算法与Python实现第14章网络库存管理基础14.1网络分析基础网络的基本概念与表示方法:供应网络通常是一个有向图,一张图𝒢由一组节点𝒩和一组能够将两个节点相连的边𝒜组成,记为𝒢=(𝒩,𝒜)产品从工厂发出后运输到区域仓RDC,RDC向三个前置仓FDC1,FDC2和FDC3供货14.1网络分析基础使用Python表示图的方法:边的数组:定义一个列表,将网络中的边存储起来每个tuple中的第一个元素表示前任节点,第二个元素表示继任节点这种存储方式不便于快速查找节点相关的边。每次查找时都需要遍历所有边,计算开销较大distribute_edges=[('Factory','RDC'),('RDC','FDC1'),('RDC','FDC2'),('RDC','FDC3')]
print(distribute_edges)[('Factory','RDC'),('RDC','FDC1'),('RDC','FDC2'),('RDC','FDC3')]14.1网络分析基础使用Python表示图的方法:邻接矩阵:表示节点之间相邻关系的矩阵,对于有向图,当图中存在由节点i指向节点j的边时,i行j列的元素值为1,否则为0all_nodes=list(set([nodeforedgeindistribute_edgesfornodeinedge]))
adj_matrix=np.zeros((len(all_nodes),len(all_nodes)))
foriinrange(len(all_nodes)):
forjinrange(len(all_nodes)):
if(all_nodes[i],all_nodes[j])indistribute_edges:
adj_matrix[i,j]=
1
adj_matrix_df=pd.DataFrame(adj_matrix,index=all_nodes,columns=all_nodes)
print(adj_matrix_df)FDC2FactoryRDCFDC3FDC1
FDC20.00.00.00.00.0
Factory0.00.01.00.00.0
RDC1.00.00.01.01.0
FDC30.00.00.00.00.0
FDC10.00.00.00.00.014.1网络分析基础使用Python表示图的方法:邻接数组:以节点为索引的列表数组,其中每个元素是和该节点相邻的节点列表,可以使用字典来实现,字典的key为节点,value为与其连通的节点列表deffind_successors_dict(edges):
all_nodes=set([nodefortuinedgesfornodeintu])
#初始化字典,key为全部节点,value初始化为空列表
succ_dict
={node:[]fornodeinall_nodes}
#遍历所有边,向每个上游节点对应的列表中添加下游节点
for
pred,succ
inedges:
succ_dict[pred].append(succ)
return
succ_dict
deffind_predecessors_dict(edges):
all_nodes=set([nodefortuinedgesfornodeintu])
pred_dict={node:[]fornodeinall_nodes}
#遍历所有边,向每个下游节点对应的列表中添加上游节点
forpred,succinedges:
pred_dict[succ].append(pred)
returnpred_dictfind_predecessors_dict和find_successors_dict获得与每个节点连通的上游和下游节点的字典调用上面两个函数,就可以得到分销网络的邻接数组14.1网络分析基础使用Python表示图的方法:NetworkX:可以用于创建、操作和研究复杂网络的结构、动态和功能,也可以进行图的可视化#建立一个空的有向图
distribute_graph=nx.DiGraph()
#向空的图中添加边
distribute_graph.add_edges_from(distribute_edges)
#定义绘图位置和参数
pos={'Factory':(-1,0),'RDC':(0,0),
'FDC1':(1,0),'FDC2':(1,1),'FDC3':(1,-1)}
options={
'font_size':10,
'node_size':1500,
'node_color':'white',
'edgecolors':'black',
}
#绘制图像
nx.draw_networkx(distribute_graph,pos,**options)
ax=plt.gca()
ax.margins(0.20)
plt.axis('off')
plt.show()NetworkX也实现了一些常见的网络分析算法,例如计算最短路径的Dijkstra、Bellman-Ford算法等14.1网络分析基础常见的供应网络:有向树:定义:任意两个节点中只存在一条路径的无向图称为树,若有向图在不考虑边的方向时是树,即为有向树性质:有向树网络转化为无向图时,网络中不存在环路,可以清楚定义层级结构分类:有向树包含链式、分布式和装配式三类网路链式系统:每个节点都至多有一个上游节点和一个下游节点14.1网络分析基础常见的供应网络:分布式系统:每个节点有至多一个上游节点装配式系统:分布式系统的镜像系统14.1网络分析基础网络库存管理常用算法:
14.1网络分析基础网络库存管理常用算法:累计提前期的计算:节点的累计提前期是指,当其全部上游节点都没有库存时,从向外部供应商订购原材料开始到该节点持有可用库存的最短时间例:计算下图各节点的累计提前期,‘0’节点为虚拟节点除了最上游的C1、C2和C3三个节点,其余节点到‘0’节点有多条通路在多条通路中,提前期之和最长的一条,就是该节点的累计提前期利用节点的拓扑排序逐个计算节点的累计提前期计算下游节点的累计提前期时,上游节点的累计提前期就已经确定14.1网络分析基础defcal_cum_lt(edges,lt_dict):
#筛选出最上游的节点
roots=list(set([ifori,_inedges])-set([jfor_,jinedges]))
#计算拓扑排序
cal_ts=TopologicalSort(edges)
topo_sort=cal_ts()
#将'0'节点插入在排序最前
topo_sort.insert(0,'0')
#找到与每个节点连通的下游节点的字典
succ_dict=find_successors_dict(edges)
#将最上游节点列表添加为'0'节点的下游节点
succ_dict.update({'0':roots})
#初始化累计提前期字典
cum_lt_dict={node:-float('inf')fornodeintopo_sort}
#‘0’节点的提前期为0
cum_lt_dict['0']=
0
fornodeintopo_sort:
iflen(succ_dict[node])>
0:
forsuccinsucc_dict[node]:
#计算在该条边上的累计提前期
temp=cum_lt_dict[node]+lt_dict[succ]
#如果当前累计提前期小于该值,则更新累计提前期字典
ifcum_lt_dict[succ]<temp:
cum_lt_dict[succ]=temp
cum_lt_dict.pop('0')
returncum_lt_dict14.1网络分析基础调用函数cal_sum_lt,计算出累计提前期{'C2':6,'C1':5,'B1':11,'C3':2,'B2':7,'A':14}general_edges=[('C1','B1'),('C2','B1'),('C2','B2'),
('C3','B2'),('B1','A'),('B2','A')]
general_lt_dict={'C1':5,'C2':6,'C3':2,
'B1':5,'B2':1,'A':3}
general_cum_lt_dict=cal_cum_lt(general_edges,general_lt_dict)
print(general_cum_lt_dict){'C2':6,'C1':5,'B1':11,'C3':2,'B2':7,'A':14}14.2随机服务模型与承诺服务模型易混淆变量解释:服务时间:一个节点从接到来自下游的需求订单开始到完成订单交货所需的时间服务水平:一个节点的不缺货概率单级提前期:一个节点的所有上游节点库存都充足并对其需求立即响应时,节点补货所需的时间累计提前期:一个节点的全部上游节点都没有持有库存时,从向外部供应商采购原材料开始到该节点持有可用库存的最短时间实际补货时间:一个节点从上游补货的实际时间,包括上游对其需求的响应时间和其自身补货的单级提前期14.2随机服务模型与承诺服务模型
14.2随机服务模型与承诺服务模型随机服务模型:
14.2随机服务模型与承诺服务模型随机服务模型:
14.2随机服务模型与承诺服务模型
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年05月黑龙江省商务厅所属事业单位2024年公开招考49名工作人员笔试历年高频考点(难、易错点)附带答案详解
- 汽车空调维修与检测毕业论文
- 2024年05月湖南张家界市企事业单位引进急需紧缺人才223名笔试历年高频考点(难、易错点)附带答案详解
- 2024年05月江苏南京师范大学体育教师招考聘用(短期)笔试历年高频考点(难、易错点)附带答案详解
- 2024年05月广西北海仲裁委员会/北海国际仲裁院2024年招考3名仲裁秘书笔试历年高频考点(难、易错点)附带答案详解
- 2024年05月四川省达州市政务服务管理局2024年公开招考2名政府雇员笔试历年高频考点(难、易错点)附带答案详解
- 2024年05月南京医科大学卫生分析检测中心公开招聘56人笔试历年高频考点(难、易错点)附带答案详解
- 2024年秋10月高教自考《合同法》试题含解析
- 2024年10月高教自考《合同法》试题含解析
- 2023年4月自学考试00230合同法部分原题含解析
- 《国有企业采购操作规范》【2023修订版】
- 虫草营销方案
- 生产制造企业会计分录
- 互联网中药材中药材电商实施方案
- 天车司机岗位安全操作规程模版
- 2023年中考冲刺地理淮安卷
- 《石墨类负极材料检测方法 第2部分:吸油值的测定》
- 发动机维修质保书范本
- 遵守社会规则 单元作业设计
- 医院检验科装修改造工程施工组织设计方案
- 水情监测系统施工方案
评论
0/150
提交评论