基于matlab的動(dòng)態(tài)規(guī)劃逆序算法的實(shí)現(xiàn)

基于matlab的動(dòng)態(tài)規(guī)劃逆序算法的實(shí)現(xiàn)

ID:9216987

大小:148.35 KB

頁數(shù):4頁

時(shí)間:2018-04-23

基于matlab的動(dòng)態(tài)規(guī)劃逆序算法的實(shí)現(xiàn)_第1頁
基于matlab的動(dòng)態(tài)規(guī)劃逆序算法的實(shí)現(xiàn)_第2頁
基于matlab的動(dòng)態(tài)規(guī)劃逆序算法的實(shí)現(xiàn)_第3頁
基于matlab的動(dòng)態(tài)規(guī)劃逆序算法的實(shí)現(xiàn)_第4頁
資源描述:

《基于matlab的動(dòng)態(tài)規(guī)劃逆序算法的實(shí)現(xiàn)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫

1、第15卷第1期紡織高?;A(chǔ)科學(xué)學(xué)報(bào)Vol.15,No.12002年3月BASICSCIENCESJOURNALOFTEXTILEUNIVERSITIESMarch,2002基于MATLAB的動(dòng)態(tài)規(guī)劃逆序算法的實(shí)現(xiàn)孫曉君(東華大學(xué)應(yīng)用數(shù)學(xué)系,上海200051)摘要:運(yùn)用MATLAB編程實(shí)現(xiàn)動(dòng)態(tài)規(guī)劃逆序算法.數(shù)值舉例驗(yàn)證了該實(shí)現(xiàn)方法的有效性,同時(shí)表明該程序?qū)η蠼鈩?dòng)態(tài)規(guī)劃的多類典型應(yīng)用問題是通用的,提供了求解各種動(dòng)態(tài)規(guī)劃問題的有效工具,豐富了MATLAB優(yōu)化工具箱.關(guān)鍵詞:MATLAB;動(dòng)態(tài)規(guī)劃;逆序算法中圖分類號(hào)

2、:O221.3;TP31文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1006-8341(2002)01-0038-04[1]動(dòng)態(tài)規(guī)劃(DynamicProgramming)是求解決策過程最優(yōu)化的有效數(shù)學(xué)方法.它是根據(jù)“最優(yōu)決策的任何截?cái)嗳允亲顑?yōu)的”這一原理,通過將多階段決策過程轉(zhuǎn)化為一系列單階段問題,逐個(gè)求解的優(yōu)化求解方法.自1957年R.E.Bellman教授出版動(dòng)態(tài)規(guī)劃的經(jīng)典專著“DynamicProgramming”以來,動(dòng)態(tài)規(guī)劃已在經(jīng)濟(jì)管理、生產(chǎn)調(diào)度、工程技術(shù)和最優(yōu)控制等領(lǐng)域得到廣泛的應(yīng)用.逆序算法是動(dòng)態(tài)[2]規(guī)劃計(jì)算的

3、重要算法.MATLAB是美國MathWorks公司80年代中期推出的數(shù)學(xué)軟件,其中的優(yōu)化工具箱已被許多設(shè)計(jì)研究部門和科研工作者使用,成為決策系統(tǒng)的優(yōu)化計(jì)算和設(shè)計(jì)的有力工具,但該工具箱中尚無動(dòng)態(tài)規(guī)劃計(jì)算的程序文檔.1動(dòng)態(tài)規(guī)劃簡(jiǎn)介(1)階段整個(gè)問題的解決可分為若干個(gè)相互聯(lián)系的階段依次進(jìn)行.描述階段的變量稱為階段變量,記為k.(2)狀態(tài)狀態(tài)表示每個(gè)階段開始所處的自然狀況或客觀條件,它描述了研究問題過程的狀況.各階段狀態(tài)通常用狀態(tài)變量描述.用xk表示第k階段狀態(tài)變量,n個(gè)階段決策過程有n+1個(gè)狀態(tài).(3)決策從一確定

4、的狀態(tài)作出各種選擇從而演變到下一階段某一狀態(tài),這種選擇手段稱為決策.描述決策的變量稱為決策變量,決策變量限制的取值范圍稱為允許決策集合.用uk(xk)表示第k階段處于狀態(tài)xk時(shí)的決策變量,它是xk的函數(shù),用Dk(xk)表示xk的允許決策的集合.(4)策略每個(gè)階段的決策按順序組成的集合稱為策略.由第k階段的狀態(tài)xk開始到終止?fàn)顟B(tài)的后部子過程的策略記為{uk(xk),uk+1(xk+1),...,un(xn)}.可供選擇的策略的范圍稱為允許策略*集合,允許策略集合中達(dá)到最優(yōu)效果的策略稱為最優(yōu)策略.從初始狀態(tài)x1(

5、=x1)出發(fā),過程按照最優(yōu)***策略和狀態(tài)轉(zhuǎn)移方程演變所經(jīng)歷的狀態(tài)序列{x1,x2,?,xn+1}稱為最優(yōu)軌線.(5)狀態(tài)轉(zhuǎn)移方程如果第k個(gè)階段狀態(tài)變量為xk,作出的決策為uk,那么第k+1階段的狀X收稿日期:2001-12-14作者簡(jiǎn)介:孫曉君(1965-),女,浙江省杭州市人,東華大學(xué)副教授,主要從事決策規(guī)劃與應(yīng)用,隨機(jī)分析與應(yīng)用等方面的研究.X第1期基于MATLAB的動(dòng)態(tài)規(guī)劃逆序算法的實(shí)現(xiàn)39態(tài)變量xk+1也被完全確定.用狀態(tài)轉(zhuǎn)移方程表示這種演變規(guī)律,記為xk+1=Tk(xk,uk).(6)指標(biāo)函數(shù)和最

6、優(yōu)值函數(shù)指標(biāo)函數(shù)是系統(tǒng)執(zhí)行某一策略所產(chǎn)生結(jié)果的數(shù)量表示,是衡量策略優(yōu)劣數(shù)量指標(biāo),它定義在全過程和所有后部子過程上.過程在某階段j的階段指標(biāo)函數(shù)是衡量該階段決策優(yōu)劣數(shù)量指標(biāo),取決于狀態(tài)xj和決策uj,用vj(uj,xj)表示.指標(biāo)函數(shù)的最優(yōu)值稱為最優(yōu)函數(shù).2逆序算法及其MATLAB程序2.1逆序算法的基本方程[3]下面的遞歸方程在動(dòng)態(tài)規(guī)劃逆序算法中起著本質(zhì)的作用:fk(xk)=min{g(vk(xk,uk(xk)),fk+1(xk+1))?uk∈Dk(xk)},(1)fn+1(xn+1)=vk+1,xk+1=T

7、k(xk,uk),k=n,n-1,?,1.方程(1)稱為動(dòng)態(tài)規(guī)劃逆序求解的基本方程.2.2動(dòng)態(tài)規(guī)劃逆序算法的MATLAB程序自由始段和終端的動(dòng)態(tài)規(guī)劃,求指標(biāo)函數(shù)最小值的逆序(或后向)算法遞歸計(jì)算程序:function[popt,fval]=dynprog(x,DecisFun,SubObjFun,TransFun,ObjFun)其中x是狀態(tài)變量,一列代表一個(gè)階段狀態(tài);M-函數(shù)DecisFun(k,x)由階段k的狀態(tài)變量x求出相應(yīng)的允許決策變量;M-函數(shù)SubObjFun(k,x,u)是階段指標(biāo)函數(shù),M-函數(shù)T

8、ransFun(k,x,u)是狀態(tài)轉(zhuǎn)移函數(shù),其中x是階段k的某狀態(tài)變量,u是相應(yīng)的決策變量;M-函數(shù)ObjFun(v,f)是第k階段至最后階段指標(biāo)函數(shù),當(dāng)ObjFun(v,f)=v+f時(shí),輸入ObjFun可以省略.輸出popt由4列構(gòu)成,popt=[序號(hào)組;最優(yōu)策略組;最優(yōu)軌線組;指標(biāo)函數(shù)值組];fval是一個(gè)列向量,各元素分別表示popt各最優(yōu)策略組對(duì)應(yīng)始端狀態(tài)x的最優(yōu)函數(shù)值;~k=length(

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。