版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
現(xiàn)代庫存管理:模型、算法與Python實(shí)現(xiàn)第14章網(wǎng)絡(luò)庫存管理基礎(chǔ)14.1網(wǎng)絡(luò)分析基礎(chǔ)網(wǎng)絡(luò)的基本概念與表示方法:供應(yīng)網(wǎng)絡(luò)通常是一個有向圖,一張圖??由一組節(jié)點(diǎn)??和一組能夠?qū)蓚€節(jié)點(diǎn)相連的邊??組成,記為??=(??,??)產(chǎn)品從工廠發(fā)出后運(yùn)輸?shù)絽^(qū)域倉RDC,RDC向三個前置倉FDC1,F(xiàn)DC2和FDC3供貨14.1網(wǎng)絡(luò)分析基礎(chǔ)使用Python表示圖的方法:邊的數(shù)組:定義一個列表,將網(wǎng)絡(luò)中的邊存儲起來每個tuple中的第一個元素表示前任節(jié)點(diǎn),第二個元素表示繼任節(jié)點(diǎn)這種存儲方式不便于快速查找節(jié)點(diǎn)相關(guān)的邊。每次查找時都需要遍歷所有邊,計(jì)算開銷較大distribute_edges=[('Factory','RDC'),('RDC','FDC1'),('RDC','FDC2'),('RDC','FDC3')]
print(distribute_edges)[('Factory','RDC'),('RDC','FDC1'),('RDC','FDC2'),('RDC','FDC3')]14.1網(wǎng)絡(luò)分析基礎(chǔ)使用Python表示圖的方法:鄰接矩陣:表示節(jié)點(diǎn)之間相鄰關(guān)系的矩陣,對于有向圖,當(dāng)圖中存在由節(jié)點(diǎn)i指向節(jié)點(diǎn)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網(wǎng)絡(luò)分析基礎(chǔ)使用Python表示圖的方法:鄰接數(shù)組:以節(jié)點(diǎn)為索引的列表數(shù)組,其中每個元素是和該節(jié)點(diǎn)相鄰的節(jié)點(diǎn)列表,可以使用字典來實(shí)現(xiàn),字典的key為節(jié)點(diǎn),value為與其連通的節(jié)點(diǎn)列表deffind_successors_dict(edges):
all_nodes=set([nodefortuinedgesfornodeintu])
#初始化字典,key為全部節(jié)點(diǎn),value初始化為空列表
succ_dict
={node:[]fornodeinall_nodes}
#遍歷所有邊,向每個上游節(jié)點(diǎn)對應(yīng)的列表中添加下游節(jié)點(diǎn)
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}
#遍歷所有邊,向每個下游節(jié)點(diǎn)對應(yīng)的列表中添加上游節(jié)點(diǎn)
forpred,succinedges:
pred_dict[succ].append(pred)
returnpred_dictfind_predecessors_dict和find_successors_dict獲得與每個節(jié)點(diǎn)連通的上游和下游節(jié)點(diǎn)的字典調(diào)用上面兩個函數(shù),就可以得到分銷網(wǎng)絡(luò)的鄰接數(shù)組14.1網(wǎng)絡(luò)分析基礎(chǔ)使用Python表示圖的方法:NetworkX:可以用于創(chuàng)建、操作和研究復(fù)雜網(wǎng)絡(luò)的結(jié)構(gòu)、動態(tài)和功能,也可以進(jìn)行圖的可視化#建立一個空的有向圖
distribute_graph=nx.DiGraph()
#向空的圖中添加邊
distribute_graph.add_edges_from(distribute_edges)
#定義繪圖位置和參數(shù)
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也實(shí)現(xiàn)了一些常見的網(wǎng)絡(luò)分析算法,例如計(jì)算最短路徑的Dijkstra、Bellman-Ford算法等14.1網(wǎng)絡(luò)分析基礎(chǔ)常見的供應(yīng)網(wǎng)絡(luò):有向樹:定義:任意兩個節(jié)點(diǎn)中只存在一條路徑的無向圖稱為樹,若有向圖在不考慮邊的方向時是樹,即為有向樹性質(zhì):有向樹網(wǎng)絡(luò)轉(zhuǎn)化為無向圖時,網(wǎng)絡(luò)中不存在環(huán)路,可以清楚定義層級結(jié)構(gòu)分類:有向樹包含鏈?zhǔn)?、分布式和裝配式三類網(wǎng)路鏈?zhǔn)较到y(tǒng):每個節(jié)點(diǎn)都至多有一個上游節(jié)點(diǎn)和一個下游節(jié)點(diǎn)14.1網(wǎng)絡(luò)分析基礎(chǔ)常見的供應(yīng)網(wǎng)絡(luò):分布式系統(tǒng):每個節(jié)點(diǎn)有至多一個上游節(jié)點(diǎn)裝配式系統(tǒng):分布式系統(tǒng)的鏡像系統(tǒng)14.1網(wǎng)絡(luò)分析基礎(chǔ)網(wǎng)絡(luò)庫存管理常用算法:
14.1網(wǎng)絡(luò)分析基礎(chǔ)網(wǎng)絡(luò)庫存管理常用算法:累計(jì)提前期的計(jì)算:節(jié)點(diǎn)的累計(jì)提前期是指,當(dāng)其全部上游節(jié)點(diǎn)都沒有庫存時,從向外部供應(yīng)商訂購原材料開始到該節(jié)點(diǎn)持有可用庫存的最短時間例:計(jì)算下圖各節(jié)點(diǎn)的累計(jì)提前期,‘0’節(jié)點(diǎn)為虛擬節(jié)點(diǎn)除了最上游的C1、C2和C3三個節(jié)點(diǎn),其余節(jié)點(diǎn)到‘0’節(jié)點(diǎn)有多條通路在多條通路中,提前期之和最長的一條,就是該節(jié)點(diǎn)的累計(jì)提前期利用節(jié)點(diǎn)的拓?fù)渑判蛑饌€計(jì)算節(jié)點(diǎn)的累計(jì)提前期計(jì)算下游節(jié)點(diǎn)的累計(jì)提前期時,上游節(jié)點(diǎn)的累計(jì)提前期就已經(jīng)確定14.1網(wǎng)絡(luò)分析基礎(chǔ)defcal_cum_lt(edges,lt_dict):
#篩選出最上游的節(jié)點(diǎn)
roots=list(set([ifori,_inedges])-set([jfor_,jinedges]))
#計(jì)算拓?fù)渑判?/p>
cal_ts=TopologicalSort(edges)
topo_sort=cal_ts()
#將'0'節(jié)點(diǎn)插入在排序最前
topo_sort.insert(0,'0')
#找到與每個節(jié)點(diǎn)連通的下游節(jié)點(diǎn)的字典
succ_dict=find_successors_dict(edges)
#將最上游節(jié)點(diǎn)列表添加為'0'節(jié)點(diǎn)的下游節(jié)點(diǎn)
succ_dict.update({'0':roots})
#初始化累計(jì)提前期字典
cum_lt_dict={node:-float('inf')fornodeintopo_sort}
#‘0’節(jié)點(diǎn)的提前期為0
cum_lt_dict['0']=
0
fornodeintopo_sort:
iflen(succ_dict[node])>
0:
forsuccinsucc_dict[node]:
#計(jì)算在該條邊上的累計(jì)提前期
temp=cum_lt_dict[node]+lt_dict[succ]
#如果當(dāng)前累計(jì)提前期小于該值,則更新累計(jì)提前期字典
ifcum_lt_dict[succ]<temp:
cum_lt_dict[succ]=temp
cum_lt_dict.pop('0')
returncum_lt_dict14.1網(wǎng)絡(luò)分析基礎(chǔ)調(diào)用函數(shù)cal_sum_lt,計(jì)算出累計(jì)提前期{'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隨機(jī)服務(wù)模型與承諾服務(wù)模型易混淆變量解釋:服務(wù)時間:一個節(jié)點(diǎn)從接到來自下游的需求訂單開始到完成訂單交貨所需的時間服務(wù)水平:一個節(jié)點(diǎn)的不缺貨概率單級提前期:一個節(jié)點(diǎn)的所有上游節(jié)點(diǎn)庫存都充足并對其需求立即響應(yīng)時,節(jié)點(diǎn)補(bǔ)貨所需的時間累計(jì)提前期:一個節(jié)點(diǎn)的全部上游節(jié)點(diǎn)都沒有持有庫存時,從向外部供應(yīng)商采購原材料開始到該節(jié)點(diǎn)持有可用庫存的最短時間實(shí)際補(bǔ)貨時間:一個節(jié)點(diǎn)從上游補(bǔ)貨的實(shí)際時間,包括上游對其需求的響應(yīng)時間和其自身補(bǔ)貨的單級提前期14.2隨機(jī)服務(wù)模型與承諾服務(wù)模型
14.2隨機(jī)服務(wù)模型與承諾服務(wù)模型隨機(jī)服務(wù)模型:
14.2隨機(jī)服務(wù)模型與承諾服務(wù)模型隨機(jī)服務(wù)模型:
14.2隨機(jī)服務(wù)模型與承諾服務(wù)模型
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年農(nóng)行個人貸款合同模板2篇
- 二零二五年度體育場館租賃與賽事場地標(biāo)識系統(tǒng)建設(shè)合同
- 2025年度綠色生態(tài)農(nóng)業(yè)園建設(shè)與管理合同4篇
- 二零二五年度個性化廚具安裝與整體廚房設(shè)計(jì)合同3篇
- 二零二五年度溫泉度假村大理石地暖鋪設(shè)合同4篇
- 二零二五年度存量房買賣合同合同糾紛處理流程與期限(2024版)4篇
- 2025年度農(nóng)業(yè)耕地租賃合同環(huán)境保護(hù)與修復(fù)規(guī)范4篇
- 2025年度臨時用工勞動關(guān)系解除合同3篇
- 2025年度個人旅游服務(wù)合同標(biāo)準(zhǔn)范本3篇
- 二零二五版木材廠土地租賃合同與林業(yè)科技創(chuàng)新合作4篇
- 2025年度部隊(duì)食堂食材采購與質(zhì)量追溯服務(wù)合同3篇
- 消防產(chǎn)品目錄(2025年修訂本)
- 地方性分異規(guī)律下的植被演替課件高三地理二輪專題復(fù)習(xí)
- 繪本 課件教學(xué)課件
- 光伏項(xiàng)目風(fēng)險控制與安全方案
- 9.2提高防護(hù)能力教學(xué)設(shè)計(jì) 2024-2025學(xué)年統(tǒng)編版道德與法治七年級上冊
- 催收培訓(xùn)制度
- 牧場物語-礦石鎮(zhèn)的伙伴們-完全攻略
- ISO 22003-1:2022《食品安全-第 1 部分:食品安全管理體系 審核與認(rèn)證機(jī)構(gòu)要求》中文版(機(jī)翻)
- 農(nóng)業(yè)生產(chǎn)質(zhì)量安全風(fēng)險評估與監(jiān)控方案
- 人教版六年級上冊解方程練習(xí)300道及答案
評論
0/150
提交評論