下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
生產(chǎn)網(wǎng)絡(luò)流最小費(fèi)用問(wèn)題的中期報(bào)告1.問(wèn)題描述:給定一個(gè)有向圖G=(V,E),其中每條邊都有一個(gè)容量(capacity)和一個(gè)費(fèi)用(cost),同時(shí)有一個(gè)源點(diǎn)s和一個(gè)匯點(diǎn)t。需要找到從s到t的一組流量(vertex-capacity),使得流量滿足所有路徑上的容量限制,且費(fèi)用最小。2.算法介紹:網(wǎng)絡(luò)流最小費(fèi)用流的算法有很多,其中常用的有費(fèi)用流推廣版的Dijkstra算法和費(fèi)用流推廣版的Bellman-Ford算法,以及費(fèi)用流推廣版的SPFA算法等。這些算法的具體實(shí)現(xiàn)和優(yōu)化也有很多,比如利用堆優(yōu)化Dijkstra算法的時(shí)間復(fù)雜度,利用SLF(ShortestLabelFirst)或者LLL(LabelLimitingLength)等優(yōu)化Bellman-Ford算法中隊(duì)列的維護(hù),以及應(yīng)對(duì)容易出現(xiàn)負(fù)權(quán)邊的情況的SPFA算法。3.算法實(shí)現(xiàn):針對(duì)生產(chǎn)網(wǎng)絡(luò)流最小費(fèi)用問(wèn)題,在進(jìn)一步的研究和實(shí)驗(yàn)的基礎(chǔ)上,我們選擇了最小費(fèi)用最大流算法中的費(fèi)用流推廣版的Dijkstra算法作為我們的實(shí)現(xiàn)方式。主要原因是該算法在時(shí)間復(fù)雜度和精度上都有很好的表現(xiàn),同時(shí)也便于進(jìn)行后續(xù)的優(yōu)化。算法流程如下:輸入:有向圖G=(V,E),s,t。(u,v)表示從u到v有一條帶有容量和費(fèi)用的邊。輸出:最小費(fèi)用最大流量fwhileTruedo//初始化距離和路徑foreachvinVdod[v]=infp[v]=Noned[s]=0p[s]=(-1,-1)//基于當(dāng)前最短距離的優(yōu)先順序進(jìn)行擴(kuò)展Q=heap()Q.push((0,s))whilenotQ.empty()do(du,u)=Q.pop()ifdu>d[u]thencontinue//對(duì)所有相鄰節(jié)點(diǎn)進(jìn)行更新foreach(u,v,cap,cost)inEdoifcap>0andd[u]+cost<d[v]thend[v]=d[u]+costp[v]=(u,(u,v,cap,cost))Q.push((d[v],v))ifp[t]==Nonethenbreak//根據(jù)增廣路徑更新最大流量和費(fèi)用path_flow=infv=twhilev!=sdo(u,e)=p[v]path_flow=min(path_flow,e[2])v=uf+=path_flowcost+=path_flow*d[t]v=twhilev!=sdo(u,e)=p[v]e[2]-=path_flowE[(v,u)][2]+=path_flowv=u//返回結(jié)果return(f,cost)4.算法的優(yōu)化:由于Dijkstra算法的基本思想是基于節(jié)點(diǎn)距離的優(yōu)先順序進(jìn)行擴(kuò)展,因此算法效率的瓶頸在于如何維護(hù)節(jié)點(diǎn)間距離。針對(duì)此問(wèn)題,我們可以考慮進(jìn)行以下優(yōu)化:4.1堆優(yōu)化:Dijkstra算法中,每次選擇距離最小的節(jié)點(diǎn)進(jìn)行擴(kuò)展,可以利用堆來(lái)維護(hù)節(jié)點(diǎn)的優(yōu)先級(jí),從而避免遍歷整個(gè)節(jié)點(diǎn)集合查找最小距離節(jié)點(diǎn)的時(shí)間復(fù)雜度,從而降低算法的時(shí)間復(fù)雜度。4.2限制擴(kuò)展:如果一個(gè)節(jié)點(diǎn)的最短距離已經(jīng)達(dá)到了最優(yōu)解,則該節(jié)點(diǎn)不必進(jìn)行擴(kuò)展,因?yàn)樗诤罄m(xù)的計(jì)算中并不會(huì)起到作用,因此我們可以設(shè)置一個(gè)是否已經(jīng)更新完成的標(biāo)志,避免重復(fù)進(jìn)行擴(kuò)展,從而減少算法的計(jì)算量。5.結(jié)論:通過(guò)本次實(shí)驗(yàn)和研究,我們選擇了費(fèi)用流推廣版的Dijkstra算法來(lái)解決生產(chǎn)網(wǎng)絡(luò)流最小費(fèi)用問(wèn)題。
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 三農(nóng)田灌溉方案與實(shí)施手冊(cè)
- 人力資源管理勞動(dòng)法律法規(guī)遵守作業(yè)指導(dǎo)書
- 企業(yè)并購(gòu)交易操作指導(dǎo)書
- 統(tǒng)計(jì)學(xué)專業(yè)導(dǎo)論作業(yè)指導(dǎo)書
- 微信朋友圈廣告服務(wù)合同
- 互聯(lián)網(wǎng)行業(yè)云計(jì)算服務(wù)與數(shù)據(jù)存儲(chǔ)方案
- 衛(wèi)生檢驗(yàn)與檢疫技術(shù)作業(yè)指導(dǎo)書
- 網(wǎng)絡(luò)爬蟲開發(fā)與實(shí)戰(zhàn)作業(yè)指導(dǎo)書
- 2025年阿拉善盟道路貨運(yùn)駕駛員從業(yè)資格證考試題庫(kù)完整
- 三年級(jí)上冊(cè)數(shù)學(xué)脫式計(jì)算大全600題及答案
- 計(jì)算機(jī)控制系統(tǒng) 課件 第10章 網(wǎng)絡(luò)化控制系統(tǒng)的分析與設(shè)計(jì)
- 魯教版(五四制)七年級(jí)數(shù)學(xué)上冊(cè)期末考試卷-附帶答案
- 南京大學(xué)儀器分析習(xí)題集
- 空調(diào)維保應(yīng)急預(yù)案
- 小學(xué)六年級(jí)數(shù)學(xué)上冊(cè)解決問(wèn)題專項(xiàng)必考題西師大版
- 2023年高考語(yǔ)文全國(guó)乙卷作文范文及導(dǎo)寫(解讀+素材+范文)課件版
- 模塊建房施工方案
- 多域聯(lián)合作戰(zhàn)
- 美容美發(fā)場(chǎng)所衛(wèi)生規(guī)范
- 《隧道工程》(第二版)課件 第1、2章 緒論、隧道工程勘測(cè)
評(píng)論
0/150
提交評(píng)論