專(zhuān)利名稱(chēng):一種自適應(yīng)的工業(yè)過(guò)程最優(yōu)控制系統(tǒng)及方法
技術(shù)領(lǐng)域:
本發(fā)明涉及工業(yè)過(guò)程最優(yōu)控制領(lǐng)域,尤其是一種自適應(yīng)的工業(yè)過(guò)程最優(yōu)控制系 統(tǒng)。
背景技術(shù):
任何一個(gè)工業(yè)過(guò)程,從嚴(yán)格意義上說(shuō),均是一個(gè)動(dòng)態(tài)的過(guò)程,即描述過(guò)程的狀態(tài)變 量(如流量、溫度、壓力、液位等)隨時(shí)間的演進(jìn)、空間的轉(zhuǎn)移而發(fā)生改變。動(dòng)態(tài)過(guò)程由微分 方程或差分方程描述,稱(chēng)為動(dòng)態(tài)模型。最優(yōu)控制就是對(duì)動(dòng)態(tài)模型中的操作變量實(shí)施控制,使 得過(guò)程的性能指標(biāo)達(dá)到最優(yōu)。目前的一些最優(yōu)控制問(wèn)題求解方法,雖然能夠找到工業(yè)過(guò)程最優(yōu)控制問(wèn)題的解, 但是往往出現(xiàn)收斂緩慢和不穩(wěn)定問(wèn)題,還可能陷入局部最優(yōu),很難既保證所得解的全局最 優(yōu)性,又使得最優(yōu)控制問(wèn)題的求解穩(wěn)定、快速。
發(fā)明內(nèi)容
為了克服已有的工業(yè)過(guò)程最優(yōu)控制系統(tǒng)和方法很難既準(zhǔn)確又快速地找到最優(yōu)解、 適用性差的不足,本發(fā)明提供了一種能夠準(zhǔn)確找到全局最優(yōu)解且求解高效、適用性廣的自 適應(yīng)的工業(yè)過(guò)程最優(yōu)控制系統(tǒng)及方法。本發(fā)明解決其技術(shù)問(wèn)題所采用的技術(shù)方案是一種自適應(yīng)的工業(yè)過(guò)程最優(yōu)控制系統(tǒng),包括與工業(yè)過(guò)程對(duì)象連接的現(xiàn)場(chǎng)智能儀 表、DCS系統(tǒng)和上位機(jī),所述工業(yè)過(guò)程對(duì)象、智能檢測(cè)儀表、DCS系統(tǒng)和上位機(jī)依次相連,所 述的上位機(jī)包括初始化模塊,用于初始參數(shù)的設(shè)置,優(yōu)化變量ζ (t)的離散化和初始賦值,具體步 驟如下(3. 1)將時(shí)間域[tQ,tf]平均分成 η 小段[tQ,tj,[t1 t2],…,[tn_1 tn],其中tn = tf ;每個(gè)時(shí)間段的長(zhǎng)度為h = (tf-O/n,其中、表示起始時(shí)刻,tf表示 終止時(shí)刻;(3.2)對(duì)優(yōu)化變量ζ⑴在(3. 1)所述時(shí)間分段上進(jìn)行離散化,將ζ⑴替換為由η 個(gè)分段常值組成的變量ζ,并選取任意常數(shù)作為決策變量的初始值;(3.3)設(shè)置判斷迭代優(yōu)化是否終止的收斂精度值ζ,當(dāng)優(yōu)化目標(biāo)值迭代誤差小于 ζ時(shí),停止迭代;取迭代次數(shù)k初值為0;(3. 4)設(shè)置迭代搜索的初始步長(zhǎng)α 0 ;約束轉(zhuǎn)換模塊,用于通過(guò)中間變量處理優(yōu)化過(guò)程中的控制變量邊界約束,采用以 下轉(zhuǎn)換方程u (t) = 0. 5 (Umax-Umin) X {cos [z (t) ] +1} +Umin(1)將帶有邊界約束Umin ^ u (t) Ufflax的控制變量u (t)替換為不受邊界約束的中間變量 z (t)的三角函數(shù)表達(dá)式,其中下標(biāo)mirumax分別表示最小值和最大值,umin、umax分別對(duì)應(yīng)控
6制變量的下界和上界,并將ζ (t)作為優(yōu)化變量進(jìn)行求解;自適應(yīng)求解模塊,用于求解工業(yè)過(guò)程最優(yōu)控制問(wèn)題的常微分方程組,為迭代尋優(yōu) 模塊的梯度計(jì)算提供狀態(tài)變量和協(xié)態(tài)變量信息,也為收斂判斷模塊的收斂條件判斷提供目 標(biāo)函數(shù)信息,采取以下步驟來(lái)完成(4.1)求解狀態(tài)方程組 其中f表示微分函數(shù)變量,χ (t)為m個(gè)狀態(tài)變量組成的變量,Xi (t)表示第i個(gè)狀 態(tài)變量,Xi0為狀態(tài)變量Xi在初始時(shí)刻、的值;
(4. 2)求解協(xié)態(tài)方程組 (3)其中,$ 、ψ分別是給定的目標(biāo)函數(shù)
的非積
分項(xiàng)和定積分項(xiàng),λ Jt)為第i個(gè)協(xié)態(tài)變量,λ (t)為m個(gè)協(xié)態(tài)變量組成的變量,λ Jtf)為 協(xié)態(tài)變量λ i在終端時(shí)刻tf的值;(4. 3)由所得的狀態(tài)變量和決策變量計(jì)算出目標(biāo)函數(shù)值 迭代尋優(yōu)模塊,用以搜尋使目標(biāo)函數(shù)J最優(yōu)的決策變量ζ *,采取以下步驟來(lái)完成, 上標(biāo)k均表示迭代次數(shù),初始賦值為零(5. 1)調(diào)用自適應(yīng)求解模塊,保存所得的狀態(tài)變量、協(xié)態(tài)變量及目標(biāo)函數(shù)值,所述 目標(biāo)函數(shù)值為當(dāng)前目標(biāo)值Jk;(5. 2)計(jì)算當(dāng)前梯度gk,上標(biāo)T表示變量或矩陣的轉(zhuǎn)置,即迭代優(yōu)化的搜索方向 (5. 3)保存當(dāng)前迭代點(diǎn)zk及梯度信息gk ;(5. 4)若k = 0,則搜索步長(zhǎng)α k取為初始值,即α k = α 0,轉(zhuǎn)步驟(5. 6)否則,用迭代當(dāng)前點(diǎn)和前一點(diǎn)的信息來(lái)確定步長(zhǎng)因子Ik
6)其中,Sk-1表示當(dāng)前迭代點(diǎn)與前一迭代點(diǎn)的誤差,計(jì)算式為Sk-1 = Zk-Zk-1(7)yH表示當(dāng)前迭代點(diǎn)與前一迭代點(diǎn)的梯度誤差,計(jì)算式為
yH = gk-gH(8)(5. 5)取最佳步長(zhǎng) 其中,D為系數(shù)取整數(shù)值;(5. 6)計(jì)算下一個(gè)迭代點(diǎn)zk+1 = Zk- α k · gk(10)(5. 7)把新的迭代點(diǎn)zk+1傳給自適應(yīng)求解模塊以計(jì)算新的目標(biāo)函數(shù)值Jk+1,然后進(jìn) 入收斂判斷模塊;收斂判斷模塊用于判斷迭代尋優(yōu)模塊所得的目標(biāo)結(jié)果是否滿(mǎn)足收斂條件|jk-jk+1| ^ ζ(11)其中,Jk和Jk+1分別表示第k次和第k+Ι次迭代計(jì)算得到的目標(biāo)函數(shù)值,若上式 (11)成立,表明當(dāng)前迭代得到的目標(biāo)值與前一次迭代所得目標(biāo)值的誤差絕對(duì)值不超過(guò)設(shè)定 的收斂精度ζ,則停止迭代優(yōu)化計(jì)算,Zk+1就是最優(yōu)決策變量z* ( = zk+1),Jk+1就是最優(yōu)目標(biāo) 值Jl = Jk+1),將A J*以及相應(yīng)迭代次數(shù)(k+Ι)保存到結(jié)果輸出模塊;若上式(11)不成 立,則保存目標(biāo)值Jk+1,取k = k+Ι,然后返回迭代尋優(yōu)模塊進(jìn)行新一輪的迭代求解。作為優(yōu)選的一種方案所述的上位機(jī)還包括信息采集模塊,用于設(shè)定采樣時(shí)間,采 集由現(xiàn)場(chǎng)智能儀表上傳的工業(yè)過(guò)程對(duì)象的動(dòng)態(tài)信息。進(jìn)一步,所述上位機(jī)還包括結(jié)果輸出模塊,用于將迭代尋優(yōu)模塊得到的最優(yōu)決策 軌線(xiàn)通過(guò)式(1)轉(zhuǎn)化為最優(yōu)控制軌線(xiàn)u* (t),最優(yōu)決策軌線(xiàn)z*(t)由變量z*分時(shí)段表 示,然后將傳輸給DCS系統(tǒng),并在DCS系統(tǒng)中顯示所得到的優(yōu)化結(jié)果信息。一種自適應(yīng)的工業(yè)過(guò)程最優(yōu)控制方法,所述的最優(yōu)控制方法包括以下步驟1)在DCS系統(tǒng)中指定狀態(tài)變量和控制變量,根據(jù)實(shí)際生產(chǎn)環(huán)境的條件和操作限制 的條件設(shè)定控制變量的上下邊界umax、Ufflin和DCS的采樣周期,并將DCS數(shù)據(jù)庫(kù)中相應(yīng)各變 量的歷史數(shù)據(jù),控制變量上下邊界值umax、Ufflin傳送給上位機(jī);2)通過(guò)中間變量處理優(yōu)化過(guò)程中的控制變量邊界約束,采用以下轉(zhuǎn)換方程
u(t) = 0. 5 (Umax-Umin) X {cos [z (t) ] +1} +Umin(1)將帶有邊界約束Umin ^u(t) ^ Ufflax的控制變量u(t)替換為不受邊界約束的中間 變量z(t)的三角函數(shù)表達(dá)式,其中下標(biāo)min、max分別表示最小值和最大值,Umin、Umax分別 對(duì)應(yīng)控制變量的下界和上界,并將z (t)作為優(yōu)化變量進(jìn)行求解;3)對(duì)模塊初始參數(shù)進(jìn)行設(shè)置,并對(duì)DCS系統(tǒng)輸入的數(shù)據(jù)進(jìn)行初始化處理,按照以 下步驟完成(3.1)將時(shí)間域[tQ,tf]平均分成 η 小段[Vt1],[t1;t2],…,[t^,tn],其中 tn =tf ;每個(gè)時(shí)間段的長(zhǎng)度為h = (tf-tj/n,其中、表示起始時(shí)刻,tf表示終止時(shí)刻;(3. 2)對(duì)優(yōu)化變量z⑴在(3. 1)所述時(shí)間分段上進(jìn)行離散化,將z (t)替換為由η 個(gè)分段常值組成的變量z,并選取任意常數(shù)作為決策變量的初始值;(3. 3)設(shè)置判斷迭代優(yōu)化是否終止的收斂精度值ζ,當(dāng)優(yōu)化目標(biāo)值迭代誤差小于 ζ時(shí),停止迭代;取迭代次數(shù)k初值為0;(3. 4)設(shè)置迭代搜索的初始步長(zhǎng)α 0 > 0 ;4)將當(dāng)前迭代步驟的優(yōu)化變量ζ = Zk代入自適應(yīng)求解模塊,迭代次數(shù)k為0時(shí),ζ = z°,求出當(dāng)前狀態(tài)變量、協(xié)態(tài)變量,并得出相應(yīng)的當(dāng)前目標(biāo)值Jk,實(shí)現(xiàn)步驟如下(4. 1)求解狀態(tài)方程組 其中f表示微分函數(shù)變量,χ (t)為m個(gè)狀態(tài)變量組成的變量,Xi (t)表示第i個(gè)狀 態(tài)變量,Xi0為狀態(tài)變量Xi在初始時(shí)刻、的值;(4. 2)求解協(xié)態(tài)方程組
其中V/) Ψ分別是給定的目標(biāo)函數(shù)J = φ[χ( ,)] + {/ W[x(t),z(t), 的非積 Ψ 、J 0
分項(xiàng)和定積分項(xiàng),λ Jt)為第i個(gè)協(xié)態(tài)變量,λ (t)為m個(gè)協(xié)態(tài)變量組成的變量,λ Jtf)為
協(xié)態(tài)變量λ i在終端時(shí)刻tf的值;(4. 3)由所得的狀態(tài)變量和決策變量計(jì)算出目標(biāo)函數(shù)值 5)由自適應(yīng)求解模塊得出的狀態(tài)變量和協(xié)態(tài)變量信息,計(jì)算出迭代優(yōu)化的搜索方 向和步長(zhǎng),求解使目標(biāo)函數(shù)J更接近最優(yōu)的決策變量z,實(shí)施迭代尋優(yōu)的步驟如下,上標(biāo)k均 表示迭代次數(shù),初始賦值為零(5. 1)調(diào)用步驟4)的計(jì)算結(jié)果,保存所得的狀態(tài)變量、協(xié)態(tài)變量及目標(biāo)函數(shù)值,所 述目標(biāo)函數(shù)值為當(dāng)前目標(biāo)值Jk;(5. 2)計(jì)算當(dāng)前梯度gk,上標(biāo)T表示變量或矩陣的轉(zhuǎn)置,即迭代優(yōu)化的搜索方向
(5)(5. 3)保存當(dāng)前迭代點(diǎn)zk及梯度信息gk ;(5. 4)若k = 0,則搜索步長(zhǎng)α k取為初始值,即α k = α 0,轉(zhuǎn)步驟(5. 6)否則,用迭代當(dāng)前點(diǎn)和前一點(diǎn)的信息來(lái)確定步長(zhǎng)因子Ik
其中,Sk-1表示當(dāng)前迭代點(diǎn)與前一迭代點(diǎn)的誤差,計(jì)算式為
/-1
S =Z-Z
k-1
(7)yH表示當(dāng)前迭代點(diǎn)與前一迭代點(diǎn)的梯度誤差,計(jì)算式為yH = gk-gH(8)(5. 5)取最佳步長(zhǎng) V=min( n π ( k、, Α
其中,D為系數(shù)取整數(shù)值;(5. 6)計(jì)算下一個(gè)迭代點(diǎn)zk+1 = Zk- α k · gk(10)(5. 7)把新的迭代點(diǎn)zk+1傳給步驟(5. 4)以計(jì)算新的目標(biāo)函數(shù)值Jk+1,然后進(jìn)入收 斂判斷模塊;6)判斷收斂條件I Jk-,11彡ζ是否滿(mǎn)足,中Jk和Jk+1分別表示第k次和第k+1 次迭代計(jì)算得到的目標(biāo)函數(shù)值,若不滿(mǎn)足,則保存目標(biāo)值Jk+1,取k = k+Ι,再轉(zhuǎn)入步驟4),進(jìn) 行新一輪的迭代尋優(yōu);若滿(mǎn)足,則終止迭代計(jì)算,zk+1就是最優(yōu)決策變量,Jk+1就是最優(yōu)目標(biāo) 值,保存Ζ、·Τ及迭代次數(shù)(k+Ι)到結(jié)果輸出模塊。進(jìn)一步,所述步驟1)中,將現(xiàn)場(chǎng)智能儀表所采集的工業(yè)過(guò)程對(duì)象的數(shù)據(jù)傳送到 DCS系統(tǒng)的實(shí)時(shí)數(shù)據(jù)庫(kù)中,在每個(gè)采樣周期從DCS系統(tǒng)的數(shù)據(jù)庫(kù)得到的最新數(shù)據(jù)輸出到上 位機(jī),并在上位機(jī)的初始化模塊進(jìn)行初始化處理。再進(jìn)一步,所述步驟6)中,得到的最優(yōu)決策變量z *將通過(guò)結(jié)果輸出模塊轉(zhuǎn)換為最 優(yōu)控制曲線(xiàn)u* (t),并在上位機(jī)的人機(jī)界面上顯示u* (t)和最優(yōu)目標(biāo)值J* ;同時(shí),最優(yōu)控制曲 線(xiàn)U*(t)將通過(guò)通訊接口傳給DCS系統(tǒng),并在DCS系統(tǒng)中顯示所得到的優(yōu)化結(jié)果信息。本發(fā)明的有益效果主要表現(xiàn)在能夠?qū)ふ业焦I(yè)過(guò)程非線(xiàn)性系統(tǒng)最優(yōu)控制問(wèn)題的 解,而且具有很高的求解效率,收斂穩(wěn)定性好,因此在工業(yè)過(guò)程動(dòng)態(tài)仿真和最優(yōu)控制的各個(gè) 領(lǐng)域都具有廣泛的應(yīng)用前景。
圖1是本發(fā)明所提供的工業(yè)過(guò)程最優(yōu)控制系統(tǒng)的硬件結(jié)構(gòu)圖;圖2是本發(fā)明上位機(jī)實(shí)現(xiàn)最優(yōu)控制方法的原理結(jié)構(gòu)圖。
具體實(shí)施例方式
下面根據(jù)附圖具體說(shuō)明本發(fā)明。實(shí)施例1參照?qǐng)D1、圖2,一種自適應(yīng)的工業(yè)過(guò)程最優(yōu)控制系統(tǒng),包括與工業(yè)過(guò)程對(duì)象1連接 的現(xiàn)場(chǎng)智能儀表2、DCS系統(tǒng)以及上位機(jī)6,所述的DCS系統(tǒng)由總線(xiàn)接口 3、操作站4、數(shù)據(jù)庫(kù) 5構(gòu)成;現(xiàn)場(chǎng)智能儀表2、DCS系統(tǒng)、上位機(jī)6通過(guò)現(xiàn)場(chǎng)總線(xiàn)依次相連,所述的上位機(jī)包括初始化模塊9,用于初始參數(shù)的設(shè)置,優(yōu)化變量z (t)的離散化和初始賦值,具體步 驟如下(3. 1)將時(shí)間域[t0,tf]平均分成 η 小段[tQ,tJ,[t1;t2],…,[V1,tn],其中 tn =tf ;每個(gè)時(shí)間段的長(zhǎng)度為h = (tf-t0)/n ;(3.2)對(duì)優(yōu)化變量z (t)在(3. 1)所述時(shí)間分段上進(jìn)行離散化,將z (t)替換為由η 個(gè)分段常值組成的變量ζ (即決策變量),并選取任意常數(shù)作為決策變量的初始值;(3. 3)設(shè)置判斷迭代優(yōu)化是否終止的收斂精度值ζ (當(dāng)優(yōu)化目標(biāo)值迭代誤差小于 ζ時(shí),停止迭代);取迭代次數(shù)k初值為0;(3. 4)設(shè)置迭代搜索的初始步長(zhǎng)α 0 ;約束轉(zhuǎn)換模塊8 通過(guò)中間變量處理優(yōu)化過(guò)程中的控制變量邊界約束,采用以下轉(zhuǎn)換方程u (t) = 0. 5 (Umax-Umin) X {cos [ζ (t) ] +1} +Umin(1)將帶有邊界約束Umin ^u(t) ^ Ufflax的控制變量u(t)替換為不受邊界約束的中間 變量Z(t)的三角函數(shù)表達(dá)式,其中下標(biāo)min、max分別表示最小值和最大值,Umin、Umax分別 對(duì)應(yīng)控制變量的下界和上界,并將ζ (t)作為優(yōu)化變量進(jìn)行求解。自適應(yīng)求解模塊10,用于求解工業(yè)過(guò)程最優(yōu)控制問(wèn)題的常微分方程組,為迭代尋 優(yōu)模塊11的梯度計(jì)算提供狀態(tài)變量和協(xié)態(tài)變量信息,也為收斂判斷模塊12的收斂條件判 斷提供目標(biāo)函數(shù)信息,采取以下步驟來(lái)完成(4. 1)求解狀態(tài)方程組 其中,f表示微分函數(shù)變量,x(t)為m個(gè)狀態(tài)變量組成的變量,Xi (t)表示第i個(gè) 狀態(tài)變量,Xi0為狀態(tài)變量Xi在初始時(shí)刻、的值,由狀態(tài)變量初始值Xitl通過(guò)正向積分求出 狀態(tài)變量在每個(gè)離散時(shí)刻的值Xi (t),i = l,2,...,m;(4· 2)求解協(xié)態(tài)方程組 (3) 其中、Ψ分別是給定的目標(biāo)函數(shù)·/=襯x(i/)]+丨。論的非積分項(xiàng)
和定積分項(xiàng),λ i(t)為第i個(gè)協(xié)態(tài)變量,λ (t)為m個(gè)協(xié)態(tài)變量組成的變量,λ i(tf)為協(xié)態(tài) 變量λ i在終端時(shí)刻tf的值,由協(xié)態(tài)變量終端值λ i (tf)通過(guò)反向積分求出協(xié)態(tài)變量在每個(gè) 離散時(shí)刻的值Xi(t),i = 1,2,...,m;(4. 3)由所得的狀態(tài)變量和決策變量計(jì)算出目標(biāo)函數(shù)值
(4)迭代尋優(yōu)模塊11,用于搜尋使目標(biāo)函數(shù)J最優(yōu)的決策變量ζ *,采取以下步驟來(lái)完 成,上標(biāo)k均表示迭代次數(shù),初始賦值為零(5. 1)調(diào)用自適應(yīng)求解模塊10,保存所得的狀態(tài)變量、協(xié)態(tài)變量及目標(biāo)函數(shù)值(即 當(dāng)前目標(biāo)值Jk)(5. 2)計(jì)算當(dāng)前梯度gk(上標(biāo)T表示變量或矩陣的轉(zhuǎn)置),即迭代優(yōu)化的搜索方 向 (5. 3)保存當(dāng)前迭代點(diǎn)Zk及梯度信息gk ;(5.4)若k = 0,則搜索步長(zhǎng)Cik取為初始值,S卩α15 = αΟ,轉(zhuǎn)步驟(5.6);否則,利用迭代當(dāng)前點(diǎn)和前一點(diǎn)的信息來(lái)確定步長(zhǎng)因子Ik
其中,J—1表示當(dāng)前迭代點(diǎn)與前一迭代點(diǎn)的誤差,計(jì)算式為Sh = Zk-Zlrf(7)yH表示當(dāng)前迭代點(diǎn)與前一迭代點(diǎn)的梯度誤差,計(jì)算式為yH = gk-gH(8)(5. 5)取最佳步長(zhǎng) 其中D為系數(shù)取整數(shù)值;(5.6)計(jì)算下一個(gè)迭代點(diǎn)zk+1 = Zk- α k · gk (10)(5. 7)把新的迭代點(diǎn)zk+1傳給自適應(yīng)求解模塊以計(jì)算新的目標(biāo)函數(shù)值Jk+1,然后進(jìn) 入收斂判斷模塊12 ;收斂判斷模塊12 用于判斷迭代尋優(yōu)模塊11所得的目標(biāo)結(jié)果是否滿(mǎn)足收斂條 件|jk-jk+1| ^ ζ(11)其中Jk和Jk+1分別表示第k次和第k+Ι次迭代計(jì)算得到的目標(biāo)函數(shù)值。若上式 (11)成立,表明當(dāng)前迭代得到的目標(biāo)值與前一次迭代所得目標(biāo)值的誤差絕對(duì)值不超過(guò)設(shè)定 的收斂精度ζ,則停止迭代優(yōu)化計(jì)算,Zk+1就是最優(yōu)決策變量= zk+1),Jk+1就是最優(yōu)目 標(biāo)值Jl = Jk+1),將A J*以及相應(yīng)迭代次數(shù)(k+Ι)保存到結(jié)果輸出模塊13;若上式(11) 不成立,則保存目標(biāo)值Jk+1,取k = k+Ι,然后返回迭代尋優(yōu)模塊11進(jìn)行新一輪的迭代求解。所述的上位機(jī)還包括信息采集模塊7,用于設(shè)定采樣時(shí)間,采集由現(xiàn)場(chǎng)智能儀表上 傳的工業(yè)過(guò)程對(duì)象的動(dòng)態(tài)信息;以及結(jié)果輸出模塊13,用于將迭代尋優(yōu)模塊得到的最優(yōu)決 策軌線(xiàn)Z (t)(由變量z *分時(shí)段表示)通過(guò)式(1)轉(zhuǎn)化為最優(yōu)控制軌線(xiàn)u* (t),然后將u* (t) 傳輸給DCS系統(tǒng),并在DCS系統(tǒng)中顯示所得到的優(yōu)化結(jié)果信息。本實(shí)施案例的系統(tǒng)硬件結(jié)構(gòu)圖如附圖1所示,所述的最優(yōu)控制系統(tǒng)核心包括帶人 機(jī)界面的上位機(jī)6中的約束轉(zhuǎn)換模塊8、初始化模塊9、自適應(yīng)求解模塊10、迭代尋優(yōu)模塊 11、收斂判斷模塊12等5大功能模塊,此外還包括現(xiàn)場(chǎng)智能儀表2、DCS系統(tǒng)和現(xiàn)場(chǎng)總線(xiàn)。 所述的DCS系統(tǒng)由總線(xiàn)接口 3、操作站4、數(shù)據(jù)庫(kù)5組成;工業(yè)過(guò)程對(duì)象1、現(xiàn)場(chǎng)智能儀表2、 DCS系統(tǒng)、上位機(jī)6通過(guò)現(xiàn)場(chǎng)總線(xiàn)依次相連,實(shí)現(xiàn)信息流的上傳和下達(dá),上位機(jī)與底層系統(tǒng) 及時(shí)進(jìn)行信息交換,實(shí)現(xiàn)系統(tǒng)的在線(xiàn)優(yōu)化。實(shí)施例2參照?qǐng)D1和圖2,一種自適應(yīng)的工業(yè)過(guò)程最優(yōu)控制方法,所述的最優(yōu)控制方法按照 以下步驟實(shí)施1)在DCS系統(tǒng)中指定狀態(tài)變量和控制變量,根據(jù)實(shí)際生產(chǎn)環(huán)境的條件和操作限制 的條件設(shè)定控制變量的上下邊界umax、Ufflin和DCS的采樣周期,并將DCS數(shù)據(jù)庫(kù)5中相應(yīng)各 變量的歷史數(shù)據(jù),控制變量上下邊界值umax、Ufflin傳送給上位機(jī)6。2)在上位機(jī)的約束轉(zhuǎn)換模塊8中,通過(guò)三角函數(shù)代換,將受邊界約束的控制變量
12u(t) e [Ufflin, UfflaJ轉(zhuǎn)化為另一無(wú)約束變量Z (t)的函數(shù)表達(dá)式,即U (t) =0.5 (Umax-Umin) X {cos [ζ (t) ] +1} +Umin(1)然后,將z(t)作為優(yōu)化變量進(jìn)行優(yōu)化求解,最終求得的ζ (t)代入(1)式,即得到 相應(yīng)的u(t)。3)在上位機(jī)的初始化模塊9中,對(duì)上位機(jī)各模塊初始參數(shù)進(jìn)行設(shè)置,并對(duì)DCS系統(tǒng) 輸入的數(shù)據(jù)進(jìn)行初始化處理,按照以下步驟完成(3. 1)設(shè)置最優(yōu)控制的時(shí)間域[^tf],以及時(shí)間分段數(shù)n,將時(shí)間域平均分成η小 段[t。,、],[ti; t2],…,[V1,tn],每個(gè)時(shí)間段的長(zhǎng)度為 h= (Vt0)/η;(3. 2)對(duì)優(yōu)化變量ζ (t)在(3. 1)所述時(shí)間分段上進(jìn)行離散化,使用由η個(gè)分段常 值組成的變量Z (即決策變量)來(lái)表示Z (t),并選取決策變量的初始值z(mì)°,可取為簡(jiǎn)單的常 數(shù);(3. 3)在上位機(jī)的收斂判斷模塊12,根據(jù)實(shí)際的求解精度要求設(shè)置收斂精度ζ 值,一般取為10_6即可滿(mǎn)足要求。設(shè)置優(yōu)化迭代次數(shù)k初始計(jì)數(shù)為0 ;(3. 4)設(shè)置迭代搜索的初始步長(zhǎng)α 0 > 0 ;4)將當(dāng)前迭代步驟的優(yōu)化變量ζ = Zk (迭代次數(shù)k為0時(shí),ζ = ζ°)代入自適應(yīng)求 解模塊,求出當(dāng)前狀態(tài)變量、協(xié)態(tài)變量,并得出相應(yīng)的當(dāng)前目標(biāo)值Jk。實(shí)現(xiàn)步驟如下(4. 1)數(shù)值求解狀態(tài)方程組 其中,f表示微分函數(shù)變量,x(t)為m維狀態(tài)變量,Xi(t)表示第i個(gè)狀態(tài)變量,Xitl 為狀態(tài)變量Xi在初始時(shí)刻、的值;(4. 2)求解協(xié)態(tài)方程組 其中、ψ分別是給定的目標(biāo)函數(shù)
的非積分項(xiàng)
和定積分項(xiàng),為第i個(gè)協(xié)態(tài)變量,λ (t)為m個(gè)協(xié)態(tài)變量組成的變量,Xi(tf)為第i 個(gè)協(xié)態(tài)變量λ i在終端時(shí)刻tf的值;(4. 3)由所得的狀態(tài)變量和決策變量計(jì)算出目標(biāo)函數(shù)值
(4)5)由自適應(yīng)求解模塊10得出的狀態(tài)變量和協(xié)態(tài)變量信息,計(jì)算出迭代優(yōu)化的搜 索方向和步長(zhǎng),用以搜尋使目標(biāo)函數(shù)J最優(yōu)的決策變量ζ *,采取以下步驟來(lái)完成,上標(biāo)k均 表示迭代次數(shù),初始賦值為零(5. 1)調(diào)用步驟4)的計(jì)算結(jié)果,保存所得的狀態(tài)變量、協(xié)態(tài)變量及目標(biāo)函數(shù)值,所 述目標(biāo)函數(shù)值為當(dāng)前目標(biāo)值Jk;(5.2)計(jì)算當(dāng)前梯度gk,即迭代優(yōu)化的搜索方向(其中,x(t)和λ (t)分別為求解 得出的當(dāng)前狀態(tài)變量和協(xié)態(tài)變量,上標(biāo)T表示變量或矩陣的轉(zhuǎn)置
(5. 3)保存當(dāng)前迭代點(diǎn)zk及梯度信息gk ;(5.4)若k = 0,則搜索步長(zhǎng)Cik取為初始值,即Qk= α 0,轉(zhuǎn)步驟(5.6);否則,利用迭代當(dāng)前點(diǎn)和前一點(diǎn)的信息來(lái)確定步長(zhǎng)因子Ik 其中,J—1表示當(dāng)前迭代點(diǎn)與前一迭代點(diǎn)的誤差,計(jì)算式為 yH表示當(dāng)前迭代點(diǎn)與前一迭代點(diǎn)的梯度誤差,計(jì)算式為yH = gk-gH(8)(5. 5)取最佳步長(zhǎng)= min[ η π ( 一](9)其中,D為系數(shù)取整數(shù)值;(5. 6)計(jì)算下一個(gè)迭代點(diǎn)zk+1 = Zk- α k · gk(10)(5. 7)把新的迭代點(diǎn)zk+1傳給傳給自適應(yīng)求解模塊10,由步驟(5. 4)以計(jì)算新的 目標(biāo)函數(shù)值Jk+1,然后進(jìn)入收斂判斷模塊12 ;6)收斂判斷模塊12判斷收斂條件|jk-jk+1|彡是否滿(mǎn)足(其中Jk和Jk+1分別表示 第k次和第k+Ι次迭代計(jì)算得到的目標(biāo)函數(shù)值),若不滿(mǎn)足,則保存目標(biāo)值Jk+1,取k = k+1, 再轉(zhuǎn)入步驟4),進(jìn)行新一輪的迭代尋優(yōu);若滿(mǎn)足,則終止迭代計(jì)算,zk+1就是最優(yōu)決策變量 (表示為Z = zk+1),Jk+1就是最優(yōu)目標(biāo)值(表示為^ = Jk+1),保存ζ*、·Τ及迭代次數(shù)(k+1) 到結(jié)果輸出模塊13。系統(tǒng)投運(yùn)A.利用定時(shí)器,設(shè)置好每次數(shù)據(jù)檢測(cè)和采集的時(shí)間間隔;B.現(xiàn)場(chǎng)智能儀表2檢測(cè)工業(yè)過(guò)程對(duì)象1的數(shù)據(jù)并傳送至DCS系統(tǒng)的實(shí)時(shí)數(shù)據(jù)庫(kù)5 中,得到最新的變量數(shù)據(jù);C.在上位機(jī)6的約束轉(zhuǎn)換模塊8中,對(duì)控制變量邊界約束進(jìn)行處理,將處理的結(jié)果 作為初始化模塊9的輸入;D.在上位機(jī)6的初始化模塊9中,根據(jù)實(shí)際生產(chǎn)需求和操作限制條件對(duì)各模塊相 關(guān)參數(shù)和變量進(jìn)行初始化處理,將處理的結(jié)果作為迭代尋優(yōu)模塊11的輸入;E.上位機(jī)6的自適應(yīng)求解模塊10,根據(jù)迭代尋優(yōu)模塊11輸入的初始決策變量或 者迭代決策變量求解,所得的狀態(tài)變量、協(xié)態(tài)變量和目標(biāo)值再傳回迭代尋優(yōu)模塊11 ;F.上位機(jī)6的迭代尋優(yōu)模塊11,依據(jù)約束轉(zhuǎn)換模塊8的變量代換關(guān)系和自適應(yīng)求 解模塊10得出的變量信息進(jìn)行梯度計(jì)算,并根據(jù)收斂判斷模塊12的判定結(jié)果實(shí)施迭代優(yōu) 化,優(yōu)化的結(jié)果傳給結(jié)果輸出模塊13 ;
14
G.上位機(jī)6的收斂判斷模塊12,根據(jù)收斂條件判定是否終止迭代優(yōu)化,所得的結(jié) 果傳給迭代尋優(yōu)模塊11和結(jié)果輸出模塊13。上位機(jī)6的人機(jī)界面上顯示工業(yè)過(guò)程最優(yōu)控制的結(jié)果信息,上位機(jī)6將所得到的 最優(yōu)控制曲線(xiàn)傳給DCS系統(tǒng),并在DCS系統(tǒng)的操作站4顯示所得到的優(yōu)化結(jié)果信息,同時(shí)通 過(guò)DCS系統(tǒng)和現(xiàn)場(chǎng)總線(xiàn)將所得到的優(yōu)化結(jié)果信息傳輸?shù)浆F(xiàn)場(chǎng)工作站進(jìn)行顯示,并由現(xiàn)場(chǎng)工 作站來(lái)執(zhí)行最優(yōu)操作。上述實(shí)施例用來(lái)解釋說(shuō)明本發(fā)明,而不是對(duì)本發(fā)明進(jìn)行限制,在本發(fā)明的精神和 權(quán)利要求的保護(hù)范圍內(nèi),對(duì)本發(fā)明作出的任何修改和改變,都落入本發(fā)明的保護(hù)范圍。
權(quán)利要求
一種自適應(yīng)的工業(yè)過(guò)程最優(yōu)控制系統(tǒng),包括與工業(yè)過(guò)程對(duì)象連接的現(xiàn)場(chǎng)智能儀表、DCS系統(tǒng)和上位機(jī),所述工業(yè)過(guò)程對(duì)象、智能檢測(cè)儀表、DCS系統(tǒng)和上位機(jī)依次相連,其特征在于所述的上位機(jī)包括初始化模塊,用于初始參數(shù)的設(shè)置,優(yōu)化變量z(t)的離散化和初始賦值,具體步驟如下(3.1)將時(shí)間域[t0,tf]平均分成n小段[t0,t1],[t1,t2],…,[tn-1,tn],其中tn=tf;每個(gè)時(shí)間段的長(zhǎng)度為h=(tf-t0)/n,其中t0表示起始時(shí)刻,tf表示終止時(shí)刻;(3.2)對(duì)優(yōu)化變量z(t)在(3.1)所述時(shí)間分段上進(jìn)行離散化,將z(t)替換為由n個(gè)分段常值組成的變量z,并選取任意常數(shù)作為決策變量的初始值z(mì)0;(3.3)設(shè)置判斷迭代優(yōu)化是否終止的收斂精度值ζ,當(dāng)優(yōu)化目標(biāo)值迭代誤差小于ζ時(shí),停止迭代;取迭代次數(shù)k初值為0;(3.4)設(shè)置迭代搜索的初始步長(zhǎng)α0;約束轉(zhuǎn)換模塊,用于通過(guò)中間變量處理優(yōu)化過(guò)程中的控制變量邊界約束,采用以下轉(zhuǎn)換方程u(t)=0.5(umax-umin)×{cos[z(t)]+1}+umin (1)將帶有邊界約束umin≤u(t)≤umax的控制變量u(t)替換為不受邊界約束的中間變量z(t)的三角函數(shù)表達(dá)式,其中下標(biāo)min、max分別表示最小值和最大值,umin、umax分別對(duì)應(yīng)控制變量的下界和上界,并將z(t)作為優(yōu)化變量進(jìn)行求解;自適應(yīng)求解模塊,用于求解工業(yè)過(guò)程最優(yōu)控制問(wèn)題的常微分方程組,為迭代尋優(yōu)模塊的梯度計(jì)算提供狀態(tài)變量和協(xié)態(tài)變量信息,也為收斂判斷模塊的收斂條件判斷提供目標(biāo)函數(shù)信息,采取以下步驟來(lái)完成(4.1)求解狀態(tài)方程組 <mrow><mfrac> <mrow><mi>dx</mi><mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo></mrow> </mrow> <mi>dt</mi></mfrac><mo>=</mo><mi>f</mi><mo>[</mo><mi>x</mi><mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo></mrow><mo>,</mo><mi>z</mi><mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo></mrow><mo>,</mo><mi>t</mi><mo>]</mo><mo>,</mo> </mrow>xi(t0)=xi0(i=1,2,,m)(2)其中f表示微分函數(shù)變量,x(t)為m個(gè)狀態(tài)變量組成的變量,xi(t)表示第i個(gè)狀態(tài)變量,xi0為狀態(tài)變量xi在初始時(shí)刻t0的值;(4.2)求解協(xié)態(tài)方程組 <mrow><mfrac> <mrow><msub> <mi>dλ</mi> <mi>i</mi></msub><mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo></mrow> </mrow> <mi>dt</mi></mfrac><mo>=</mo><mo>-</mo><mfrac> <mrow><mo>∂</mo><mi>ψ</mi><mo>[</mo><mi>x</mi><mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo></mrow><mo>,</mo><mi>z</mi><mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo></mrow><mo>,</mo><mi>t</mi><mo>]</mo> </mrow> <msub><mrow> <mo>∂</mo> <mi>x</mi></mrow><mi>i</mi> </msub></mfrac><mo>-</mo><msub> <mi>λ</mi> <mi>i</mi></msub><mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo></mrow><mo>·</mo><mfrac> <mrow><mo>∂</mo><mi>f</mi><mo>[</mo><mi>x</mi><mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo></mrow><mo>,</mo><mi>z</mi><mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo></mrow><mo>,</mo><mi>t</mi><mo>]</mo> </mrow> <msub><mrow> <mo>∂</mo> <mi>x</mi></mrow><mi>i</mi> </msub></mfrac><mo>,</mo> </mrow>i=1,2,...,m (3)其中,ψ分別是給定的目標(biāo)函數(shù)的非積分項(xiàng)和定積分項(xiàng),λi(t)為第i個(gè)協(xié)態(tài)變量,λ(t)為m個(gè)協(xié)態(tài)變量組成的變量,λi(tf)為協(xié)態(tài)變量λi在終端時(shí)刻tf的值;(4.3)由所得的狀態(tài)變量和決策變量計(jì)算出目標(biāo)函數(shù)值迭代尋優(yōu)模塊,用以搜尋使目標(biāo)函數(shù)J最優(yōu)的決策變量z*,采取以下步驟來(lái)完成,上標(biāo)k均表示迭代次數(shù),初始賦值為零(5.1)調(diào)用自適應(yīng)求解模塊,保存所得的狀態(tài)變量、協(xié)態(tài)變量及目標(biāo)函數(shù)值,所述目標(biāo)函數(shù)值為當(dāng)前目標(biāo)值Jk;(5.2)計(jì)算當(dāng)前梯度gk,上標(biāo)T表示變量或矩陣的轉(zhuǎn)置,即迭代優(yōu)化的搜索方向 <mrow><msup> <mi>g</mi> <mi>k</mi></msup><mo>=</mo><msub> <mrow><mo>{</mo><mfrac> <mrow><mo>∂</mo><mi>ψ</mi><mo>[</mo><mi>x</mi><mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo></mrow><mo>,</mo><mi>z</mi><mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo></mrow><mo>,</mo><mi>t</mi><mo>]</mo> </mrow> <mrow><mo>∂</mo><mi>z</mi><mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo></mrow> </mrow></mfrac><mo>+</mo><mi>λ</mi><msup> <mrow><mo>(</mo><mi>t</mi><mo>)</mo> </mrow> <mi>T</mi></msup><mo>·</mo><mfrac> <mrow><mo>∂</mo><mi>f</mi><mo>[</mo><mi>x</mi><mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo></mrow><mo>,</mo><mi>z</mi><mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo></mrow><mo>,</mo><mi>t</mi> </mrow> <mrow><mo>∂</mo><mi>z</mi><mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo></mrow> </mrow></mfrac><mo>}</mo><mo>|</mo> </mrow> <mrow><mi>z</mi><mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo></mrow><mo>=</mo><msup> <mi>z</mi> <mi>k</mi></msup><mo>,</mo><mi>t</mi><mo>=</mo><msub> <mi>t</mi> <mi>j</mi></msub> </mrow></msub><mo>,</mo> </mrow>j=0,1,2,...,n(5)(5.3)保存當(dāng)前迭代點(diǎn)zk及梯度信息gk;(5.4)若k=0,則搜索步長(zhǎng)αk取為初始值,即αk=α0,轉(zhuǎn)步驟(5.6);否則,用迭代當(dāng)前點(diǎn)和前一點(diǎn)的信息來(lái)確定步長(zhǎng)因子lk <mrow><msup> <mi>l</mi> <mi>k</mi></msup><mo>=</mo><mfrac> <mrow><msup> <mrow><mo>(</mo><msup> <mi>s</mi> <mrow><mi>k</mi><mo>-</mo><mn>1</mn> </mrow></msup><mo>)</mo> </mrow> <mi>T</mi></msup><mo>·</mo><msup> <mi>y</mi> <mrow><mi>k</mi><mo>-</mo><mn>1</mn> </mrow></msup> </mrow> <msup><mrow> <mo>|</mo> <mo>|</mo> <msup><mi>y</mi><mrow> <mi>k</mi> <mo>-</mo> <mn>1</mn></mrow> </msup> <mo>|</mo> <mo>|</mo></mrow><mn>2</mn> </msup></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow> <mo>(</mo> <mn>6</mn> <mo>)</mo></mrow> </mrow>其中,sk-1表示當(dāng)前迭代點(diǎn)與前一迭代點(diǎn)的誤差,計(jì)算式為sk-1=zk-zk-1 (7)yk-1表示當(dāng)前迭代點(diǎn)與前一迭代點(diǎn)的梯度誤差,計(jì)算式為yk-1=gk-gk-1 (8)(5.5)取最佳步長(zhǎng) <mrow><msup> <mi>α</mi> <mi>k</mi></msup><mo>=</mo><mi>min</mi><mrow> <mo>(</mo> <mfrac><mi>π</mi><mrow> <mi>D</mi> <mo>·</mo> <mi>max</mi> <mrow><mo>(</mo><msup> <mi>g</mi> <mi>k</mi></msup><mo>)</mo> </mrow></mrow> </mfrac> <mo>,</mo> <msup><mi>l</mi><mi>k</mi> </msup> <mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow> <mo>(</mo> <mn>9</mn> <mo>)</mo></mrow> </mrow>其中,D為系數(shù)取整數(shù)值;(5.6)計(jì)算下一個(gè)迭代點(diǎn)zk+1=zk-αk·gk (10)(5.7)把新的迭代點(diǎn)zk+1傳給自適應(yīng)求解模塊以計(jì)算新的目標(biāo)函數(shù)值Jk+1,然后進(jìn)入收斂判斷模塊;收斂判斷模塊用于判斷迭代尋優(yōu)模塊所得的目標(biāo)結(jié)果是否滿(mǎn)足收斂條件|Jk-Jk+1|≤ζ (11)其中,Jk和Jk+1分別表示第k次和第k+1次迭代計(jì)算得到的目標(biāo)函數(shù)值,若上式(11)成立,表明當(dāng)前迭代得到的目標(biāo)值與前一次迭代所得目標(biāo)值的誤差絕對(duì)值不超過(guò)設(shè)定的收斂精度ζ,則停止迭代優(yōu)化計(jì)算,zk+1就是最優(yōu)決策變量z*(=zk+1),Jk+1就是最優(yōu)目標(biāo)值J*(=Jk+1),將z*、J*以及相應(yīng)迭代次數(shù)(k+1)保存到結(jié)果輸出模塊;若上式(11)不成立,則保存目標(biāo)值Jk+1,取k=k+1,然后返回迭代尋優(yōu)模塊進(jìn)行新一輪的迭代求解。FDA0000022891330000022.tif,FDA0000022891330000023.tif,FDA0000022891330000024.tif,FDA0000022891330000025.tif
2.根據(jù)權(quán)利要求1所述的一種自適應(yīng)的工業(yè)過(guò)程最優(yōu)控制系統(tǒng),其特征在于所述的 上位機(jī)還包括信息采集模塊,用于設(shè)定采樣時(shí)間,采集由現(xiàn)場(chǎng)智能儀表上傳的工業(yè)過(guò)程對(duì) 象的動(dòng)態(tài)信息。
3.根據(jù)權(quán)利要求1或2所述的一種自適應(yīng)的工業(yè)過(guò)程最優(yōu)控制系統(tǒng),其特征在于所 述上位機(jī)還包括結(jié)果輸出模塊,用于將迭代尋優(yōu)模塊得到的最優(yōu)決策軌線(xiàn)z*(t)通過(guò)式(1) 轉(zhuǎn)化為最優(yōu)控制軌線(xiàn)u*(t),最優(yōu)決策軌線(xiàn)Z*(t)由變量分時(shí)段表示,然后將u*(t)傳輸 給DCS系統(tǒng),并在DCS系統(tǒng)中顯示所得到的優(yōu)化結(jié)果信息。
4.一種如權(quán)利要求1所述的一種自適應(yīng)的工業(yè)過(guò)程最優(yōu)控制系統(tǒng)實(shí)現(xiàn)的最優(yōu)控制方 法,其特征在于所述的最優(yōu)控制方法包括以下步驟1)在DCS系統(tǒng)中指定狀態(tài)變量和控制變量,根據(jù)實(shí)際生產(chǎn)環(huán)境的條件和操作限制的條 件設(shè)定控制變量的上下邊界u_、ufflin和DCS的采樣周期,并將DCS數(shù)據(jù)庫(kù)中相應(yīng)各變量的 歷史數(shù)據(jù),控制變量上下邊界值umax、ufflin傳送給上位機(jī);2)通過(guò)中間變量處理優(yōu)化過(guò)程中的控制變量邊界約束,采用以下轉(zhuǎn)換方程u (t) = 0. 5 (umax-umin) X {cos [z (t) ] +1} +umin (1)將帶有邊界約束umin ^u(t) ^ ufflax的控制變量u(t)替換為不受邊界約束的中間變量 Z (t)的三角函數(shù)表達(dá)式,其中下標(biāo)mirumax分別表示最小值和最大值,umin、Uniax分別對(duì)應(yīng)控 制變量的下界和上界,并將z (t)作為優(yōu)化變量進(jìn)行求解;3)對(duì)模塊初始參數(shù)進(jìn)行設(shè)置,并對(duì)DCS系統(tǒng)輸入的數(shù)據(jù)進(jìn)行初始化處理,按照以下步 驟完成(3. 1)將時(shí)間域[tQ,tf]平均分成 n 小段[tQ,tj,[t1 t2],…,[tn_!, tn],其中 tn = tf ;每個(gè)時(shí)間段的長(zhǎng)度為h = (tf-tj/n,其中、表示起始時(shí)刻,tf表示終止時(shí)刻;(3. 2)對(duì)優(yōu)化變量z(t)在(3. 1)所述時(shí)間分段上進(jìn)行離散化,將z(t)替換為由n個(gè)分 段常值組成的變量z,并選取任意常數(shù)作為決策變量的初始值;(3.3)設(shè)置判斷迭代優(yōu)化是否終止的收斂精度值(,當(dāng)優(yōu)化目標(biāo)值迭代誤差小于( 時(shí),停止迭代;取迭代次數(shù)k初值為0 ;(3. 4)設(shè)置迭代搜索的初始步長(zhǎng)a 0 > 0 ;4)將當(dāng)前迭代步驟的優(yōu)化變量z= zk代入自適應(yīng)求解模塊,迭代次數(shù)k為0時(shí),z = z°,求出當(dāng)前狀態(tài)變量、協(xié)態(tài)變量,并得出相應(yīng)的當(dāng)前目標(biāo)值Jk,實(shí)現(xiàn)步驟如下(4. 1)求解狀態(tài)方程組 其中f表示微分函數(shù)變量,x(t)為m個(gè)狀態(tài)變量組成的變量,Xi(t)表示第i個(gè)狀態(tài)變 量,xi0為狀態(tài)變量Xi在初始時(shí)刻、的值;(4. 2)求解協(xié)態(tài)方程組 其中V/) v分別是給定的目標(biāo)函數(shù) 論的非積分項(xiàng) r 、J 0和定積分項(xiàng),入Jt)為第i個(gè)協(xié)態(tài)變量,A (t)為m個(gè)協(xié)態(tài)變量組成的變量, (tf)為協(xié)態(tài)變量、i在終端時(shí)刻tf的值;(4. 3)由所得的狀態(tài)變量和決策變量計(jì)算出目標(biāo)函數(shù)值 5)由自適應(yīng)求解模塊得出的狀態(tài)變量和協(xié)態(tài)變量信息,計(jì)算出迭代優(yōu)化的搜索方向和 步長(zhǎng),求解使目標(biāo)函數(shù)J更接近最優(yōu)的決策變量z,實(shí)施迭代尋優(yōu)的步驟如下,上標(biāo)k均表示 迭代次數(shù),初始賦值為零(5. 1)調(diào)用步驟4)的計(jì)算結(jié)果,保存所得的狀態(tài)變量、協(xié)態(tài)變量及目標(biāo)函數(shù)值,所述目標(biāo)函數(shù)值為當(dāng)前目標(biāo)值Jk;(5. 2)計(jì)算當(dāng)前梯度gk,上標(biāo)T表示變量或矩陣的轉(zhuǎn)置,即迭代優(yōu)化的搜索方向 (5. 3)保存當(dāng)前迭代點(diǎn)zk及梯度信息gk ;(5.4)若k = 0,則搜索步長(zhǎng)a k取為初始值,即ak= aO,轉(zhuǎn)步驟(5.6); 否則,用迭代當(dāng)前點(diǎn)和前一點(diǎn)的信息來(lái)確定步長(zhǎng)因子lk 其中,sk—1表示當(dāng)前迭代點(diǎn)與前一迭代點(diǎn)的誤差,計(jì)算式為Sk-1 = zk-zk-i(7)yH表示當(dāng)前迭代點(diǎn)與前一迭代點(diǎn)的梯度誤差,計(jì)算式為yH = gk-gH (8)(5. 5)取最佳步長(zhǎng)°^=mm( n,(9)D max(g )其中,D為系數(shù)取整數(shù)值;(5. 6)計(jì)算下一個(gè)迭代點(diǎn) (5.7)把新的迭代點(diǎn)zk+1傳給步驟(5.4)以計(jì)算新的目標(biāo)函數(shù)值Jk+1,然后進(jìn)入收斂判 斷模塊;6)判斷收斂條件| Jk-Jk+11彡(是否滿(mǎn)足,中Jk和Jk+1分別表示第k次和第k+1次迭 代計(jì)算得到的目標(biāo)函數(shù)值,若不滿(mǎn)足,則保存目標(biāo)值Jk+1,取k = k+1,再轉(zhuǎn)入步驟4),進(jìn)行新 一輪的迭代尋優(yōu);若滿(mǎn)足,則終止迭代計(jì)算,zk+1就是最優(yōu)決策變量,Jk+1就是最優(yōu)目標(biāo)值,保 存Z*、J*及迭代次數(shù)(k+1)到結(jié)果輸出模塊。
5.如權(quán)利要求4所述的最優(yōu)控制方法,其特征在于所述步驟1)中,將現(xiàn)場(chǎng)智能儀表 所采集的工業(yè)過(guò)程對(duì)象的數(shù)據(jù)傳送到DCS系統(tǒng)的實(shí)時(shí)數(shù)據(jù)庫(kù)中,在每個(gè)采樣周期從DCS系 統(tǒng)的數(shù)據(jù)庫(kù)得到的最新數(shù)據(jù)輸出到上位機(jī),并在上位機(jī)的初始化模塊進(jìn)行初始化處理。
6.如權(quán)利要求4或5所述的最優(yōu)控制方法,其特征在于所述步驟6)中,得到的最優(yōu)決 策變量z *將通過(guò)結(jié)果輸出模塊轉(zhuǎn)換為最優(yōu)控制曲線(xiàn)u*(t),并在上位機(jī)的人機(jī)界面上顯示 U*(t)和最優(yōu)目標(biāo)值同時(shí),最優(yōu)控制曲線(xiàn)u*(t)將通過(guò)通訊接口傳給DCS系統(tǒng),并在DCS 系統(tǒng)中顯示所得到的優(yōu)化結(jié)果信息。
全文摘要
一種自適應(yīng)的工業(yè)過(guò)程最優(yōu)控制系統(tǒng),包括與工業(yè)過(guò)程對(duì)象連接的智能檢測(cè)儀表、DCS系統(tǒng)和上位機(jī),所述工業(yè)過(guò)程對(duì)象、智能檢測(cè)儀表、DCS系統(tǒng)和上位機(jī)依次相連,所述的上位機(jī)包括信息采集模塊、初始化模塊、約束轉(zhuǎn)換模塊、自適應(yīng)求解模塊、迭代尋優(yōu)模塊、收斂判斷模塊和結(jié)果輸出模塊。本發(fā)明還提供了一種自適應(yīng)的工業(yè)過(guò)程最優(yōu)控制方法。本發(fā)明能夠準(zhǔn)確、穩(wěn)定地找到非線(xiàn)性工業(yè)過(guò)程最優(yōu)控制問(wèn)題的最優(yōu)解,優(yōu)化求解效率高,是一種具有廣泛適用性的最優(yōu)控制系統(tǒng)和方法。
文檔編號(hào)G05B13/04GK101887239SQ20101021388
公開(kāi)日2010年11月17日 申請(qǐng)日期2010年6月30日 優(yōu)先權(quán)日2010年6月30日
發(fā)明者劉興高, 陳瓏 申請(qǐng)人:浙江大學(xué)