專利名稱:一種與模型無關(guān)的自適應(yīng)控制器及其控制方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種自適應(yīng)控制器及其控制方法,尤其涉及一種與模型無關(guān)的 自適應(yīng)控制器及其控制方法。
背景技術(shù):
工業(yè)過程的特點(diǎn)是物理化學(xué)或熱力學(xué)過程十分復(fù)雜, 一般為非線性時(shí)變,難 以建?;螂y以精確建模?,F(xiàn)存的應(yīng)用于工業(yè)過程的控制器一般為基于對(duì)象的或 基于經(jīng)驗(yàn)的,這兩類控制器中,基于對(duì)象的控制器由于上述工業(yè)過程本身的特 點(diǎn),在設(shè)計(jì)控制器方面存在很大的困難,而基于經(jīng)驗(yàn)的控制器的性能很大程度 上取決于專家的經(jīng)驗(yàn)。這兩種控制器都很難實(shí)現(xiàn)對(duì)工業(yè)過程的最優(yōu)控制。在相 關(guān)文獻(xiàn)中,出現(xiàn)過利用神經(jīng)網(wǎng)絡(luò)來實(shí)現(xiàn)自適應(yīng)控制的事例,但所使用的祌經(jīng)網(wǎng) 絡(luò)結(jié)構(gòu)往往是單一的,這種結(jié)構(gòu)存在兩方面的缺陷1、無法精確處理具有時(shí)滯 的工業(yè)過程,控制精度受限;2、單一網(wǎng)絡(luò)內(nèi)部機(jī)構(gòu)復(fù)雜,訓(xùn)練過程較長(zhǎng),系統(tǒng) 響應(yīng)速度慢。
發(fā)明內(nèi)容
本發(fā)明的任務(wù)是提出一種與模型無關(guān)的自適應(yīng)控制器及其控制方法,以提 高控制精度和系統(tǒng)響應(yīng)速度,簡(jiǎn)化網(wǎng)絡(luò)內(nèi)部結(jié)構(gòu)。
為完成上述任務(wù),本發(fā)明針對(duì)工業(yè)過程的特點(diǎn)提出了一種與模型無關(guān)的自 適應(yīng)控制器,該控制器由兩個(gè)前向神經(jīng)網(wǎng)絡(luò)串連而成,前一神經(jīng)網(wǎng)絡(luò)為網(wǎng)絡(luò)控 制器MLPc,后一神經(jīng)網(wǎng)絡(luò)為網(wǎng)絡(luò)模擬器MLPo,網(wǎng)絡(luò)控制器的輸出作為網(wǎng)絡(luò)模擬
器及受控對(duì)象的輸入,受控對(duì)象的輸出和網(wǎng)絡(luò)控制器的輸入之間設(shè)有一閉環(huán)負(fù)反饋,網(wǎng)絡(luò)模擬器的輸出和受控對(duì)象的輸出之間設(shè)置為相減關(guān)系,兩者的差值 誤差用于網(wǎng)絡(luò)模擬器MLPo的再訓(xùn)練過程。
網(wǎng)絡(luò)模擬器MLPo由一個(gè)時(shí)滯的多層感知器(TDMLP)根據(jù)受控對(duì)象的輸入輸 出對(duì)來建模;網(wǎng)絡(luò)控制器MLPc由另一個(gè)時(shí)滯多層感知器(TDMLP)組成,網(wǎng)絡(luò)模 擬器MLPo通過受控對(duì)象的運(yùn)行而獲得訓(xùn)練樣本并進(jìn)行學(xué)習(xí),網(wǎng)絡(luò)控制器MLPc 則根據(jù)設(shè)定的目標(biāo)函數(shù)進(jìn)行學(xué)習(xí)和調(diào)節(jié)自身參數(shù),最終獲得對(duì)受控對(duì)象的最優(yōu) 控制。
所述的網(wǎng)絡(luò)控制器MLPc和網(wǎng)絡(luò)模擬器MLPo均含有一個(gè)輸入層、 一個(gè)隱藏 層和一個(gè)輸出層。
所述的網(wǎng)絡(luò)控制器MLPc和網(wǎng)絡(luò)模擬器MLPo的隱藏層中設(shè)有6—10個(gè)神經(jīng) 元,輸出層均設(shè)有一個(gè)神經(jīng)元。
與上述自適應(yīng)控制器相對(duì)應(yīng),本發(fā)明給出了相應(yīng)的控制方法,該控制方法 步驟如下
a. 系統(tǒng)初始化隨機(jī)初始化網(wǎng)絡(luò)控制器MLPc和網(wǎng)絡(luò)模擬器MLPo,網(wǎng)絡(luò)控 制器MLPc和網(wǎng)絡(luò)模擬器MLPo的網(wǎng)絡(luò)結(jié)構(gòu)可根據(jù)一定的先驗(yàn)知識(shí)確定;'
b. 1<=0時(shí)刻,對(duì)象的輸出為O; *^0時(shí)刻,對(duì)象的輸出為其實(shí)際輸出值,根 據(jù)k時(shí)刻受控對(duì)象的輸出和目標(biāo)函數(shù)的值得到反饋誤差,并將其作為輸入加到 MLPc的輸入層,前向計(jì)算得到控制量為Uk,并將其作為激勵(lì)加到受控對(duì)象和網(wǎng) 絡(luò)模擬器MLPo上;
c. 計(jì)算受控對(duì)象的輸出和網(wǎng)絡(luò)模擬器MLPo的輸出,并據(jù)此得出目標(biāo)函數(shù), 即(l)式;
<formula>formula see original document page 6</formula>d. 根據(jù)下列(l)、 (4)和(5)式更新MLPo的權(quán)值;
<formula>formula see original document page 7</formula>
e. 根據(jù)以下(3)式計(jì)算受控對(duì)象的輸出和目標(biāo)函數(shù)值的差值,得到MLPc的 目標(biāo)函數(shù),即以下(2)式;當(dāng)目標(biāo)函數(shù)的值小于等于額定的誤差值e時(shí)(e二10—2
——10—6),則算法結(jié)束; '
f. 保持網(wǎng)絡(luò)模擬器MLPo的權(quán)值不變,根據(jù)上述(2)、 (4)和(5)式更新網(wǎng)絡(luò) 控制器MLPc的權(quán)值,在此過程中,網(wǎng)絡(luò)模擬器MLPo的作用僅僅是反向傳遞誤 差; .
g. 轉(zhuǎn)到步驟b。
從本發(fā)明的控制器和控制方法可以看出,本發(fā)明的兩個(gè)前向神經(jīng)網(wǎng)絡(luò)連接 得到的控制器與現(xiàn)有的單一網(wǎng)絡(luò)結(jié)構(gòu)控制器相比,單一網(wǎng)絡(luò)結(jié)構(gòu)考慮的仍然只 是誤差的變化,而本發(fā)明考慮了誤差變化的變化,因而本發(fā)明的訓(xùn)練精度更高 一些;關(guān)鍵在于,單一網(wǎng)絡(luò)結(jié)構(gòu)控制器通過神經(jīng)網(wǎng)絡(luò)整定的仍然是PID參數(shù), 也就是說它還是要根據(jù)被控對(duì)象的特征通過神經(jīng)網(wǎng)絡(luò)先獲得PID參數(shù),再用PID 參數(shù)對(duì)真實(shí)工況進(jìn)行控制,這樣訓(xùn)練的周期就比較長(zhǎng),而且對(duì)PID的訓(xùn)練多是離線的。而本發(fā)明對(duì)于被控對(duì)象可以什么都不知道,直接通過神經(jīng)網(wǎng)絡(luò)來訓(xùn)練 權(quán)值,且訓(xùn)練過程都是在線的,控制響應(yīng)時(shí)間短,本發(fā)明的這一特點(diǎn)使得本控 制器可用來控制沒有任何知識(shí)的真實(shí)對(duì)象,或僅對(duì)對(duì)象的動(dòng)態(tài)特性和非線性程 度有粗略的了解(用來確定控制器和對(duì)象動(dòng)態(tài)特性和非線性程度),由于真實(shí)對(duì) 象被看成一個(gè)"黑匣子",且可被具有學(xué)習(xí)能力的網(wǎng)絡(luò)控制器所模擬,所以整個(gè) 控制系統(tǒng)可用于過程控制,即便被控過程是非線性的、時(shí)變的、時(shí)滯的或分布 參數(shù)的。單一網(wǎng)絡(luò)結(jié)構(gòu)控制器若要在線訓(xùn)練,網(wǎng)絡(luò)內(nèi)部的隱藏層中,需要對(duì)積 分、微分節(jié)點(diǎn)進(jìn)行自遞歸反饋設(shè)計(jì),網(wǎng)絡(luò)結(jié)構(gòu)比較復(fù)雜,而本發(fā)明的兩個(gè)基本 結(jié)構(gòu)的前向神經(jīng)網(wǎng)絡(luò)連接得到的控制器,使得每個(gè)神經(jīng)網(wǎng)絡(luò)內(nèi)部結(jié)構(gòu)大為簡(jiǎn)化, 系統(tǒng)構(gòu)建變得簡(jiǎn)單。
圖1所示為設(shè)計(jì)反饋系統(tǒng)控制器的一般做法的框圖2為本發(fā)明的控制器的設(shè)計(jì)框圖30)為網(wǎng)絡(luò)控制器^fc尸e的結(jié)構(gòu)框圖3(。為圖3(力的詳細(xì)的結(jié)構(gòu);
圖4為本發(fā)明控制系統(tǒng)的過程學(xué)習(xí)框圖5(a)為網(wǎng)絡(luò)模擬器MLPo的訓(xùn)練過程示意圖5(^為網(wǎng)絡(luò)控制器網(wǎng)絡(luò)控制器MLPc的訓(xùn)練過程示意圖。
具體實(shí)施例方式
1.本發(fā)明控制器的構(gòu)成
該控制器由兩個(gè)前向神經(jīng)網(wǎng)絡(luò)串連而成,前一神經(jīng)網(wǎng)絡(luò)為網(wǎng)絡(luò)控制器MLPc, 后一神經(jīng)網(wǎng)絡(luò)為網(wǎng)絡(luò)模擬器MLPo,網(wǎng)絡(luò)控制器的輸出作為網(wǎng)絡(luò)模擬器及受控對(duì)象的輸入,受控對(duì)象的輸出和網(wǎng)絡(luò)控制器的輸入之間設(shè)有一閉環(huán)負(fù)反饋,網(wǎng)絡(luò) 模擬器的輸出和受控對(duì)象的輸出之間設(shè)置為相減關(guān)系,兩者的差值誤差用于網(wǎng)
絡(luò)模擬器MLPo的再訓(xùn)練過程。
網(wǎng)絡(luò)模擬器MLPo由一個(gè)時(shí)滯的多層感知器(TDMLP)根據(jù)受控對(duì)象的輸入輸 出對(duì)來建模;網(wǎng)絡(luò)控制器MLPc由另一個(gè)時(shí)滯多層感知器(TDMLP)組成,網(wǎng)絡(luò)模 擬器MLPo通過受控對(duì)象的運(yùn)行而獲得訓(xùn)練樣本并進(jìn)行學(xué)習(xí),網(wǎng)絡(luò)控制器MLPc 則根據(jù)設(shè)定的目標(biāo)函數(shù)進(jìn)行學(xué)習(xí)和調(diào)節(jié)自身參數(shù),最終獲得對(duì)受控對(duì)象的最優(yōu) 控制。網(wǎng)絡(luò)控制器MLPc和網(wǎng)絡(luò)模擬器MLPo均含有一個(gè)輸入層、 一個(gè)隱藏層和 一個(gè)輸出層。網(wǎng)絡(luò)控制器MLPc和網(wǎng)絡(luò)模擬器MLPo的隱藏層中設(shè)有6—10個(gè)神 經(jīng)元,輸出層均設(shè)有一個(gè)神經(jīng)元。 ,
圖1所示為設(shè)計(jì)反饋系統(tǒng)控制器的一般做法,由圖中可以看出,要設(shè)計(jì)一 個(gè)最優(yōu)的控制器,模型與受控對(duì)象間的模擬誤差和控制器的控制誤差都應(yīng)該最 小化,而這些誤差均與系統(tǒng)的輸入輸出有關(guān)。如前所述,多數(shù)工業(yè)過程十分復(fù) 雜以致難以精確建模,而我們又必須對(duì)其進(jìn)行最優(yōu)控制。為解決這個(gè)問題,我 們給受控對(duì)象建立模擬和控制的最優(yōu)目標(biāo)方程,如果這些目標(biāo)方程實(shí)現(xiàn),則說 明模擬器對(duì)對(duì)象進(jìn)行了精確建模,控制器對(duì)對(duì)象實(shí)現(xiàn)了最優(yōu)控制。為達(dá)到這一 目標(biāo),初始時(shí)刻對(duì)受控對(duì)象加以隨機(jī)的控制,得到輸入輸出訓(xùn)練樣本,然后根 據(jù)模擬器和控制器的目標(biāo)方程,使模擬器和控制器能在線自學(xué)習(xí),以便它能自 適應(yīng)受控對(duì)象和環(huán)境的結(jié)構(gòu)和參數(shù)的變化。這時(shí),設(shè)計(jì)控制器時(shí)僅有的知識(shí)是 受控對(duì)象在一個(gè)初始的控制器下的輸入輸出的信息,如圖2所示。
需要注意的是,工業(yè)過程一般是動(dòng)態(tài)過程,因此最優(yōu)控制器也應(yīng)該是動(dòng)態(tài) 的。這正是我們對(duì)模擬器和控制器采用n)^ft尸的原因。圖3(fl)為M丄i^的結(jié)構(gòu)框圖,圖3(6)為其詳細(xì)的結(jié)構(gòu)?;贛L尸的強(qiáng)大學(xué)習(xí)能力,從模型辨識(shí)的角度 看,M丄P。根據(jù)輸入輸出自學(xué)習(xí),以精確的模擬實(shí)際受控對(duì)象;從控制的角度看,
學(xué)習(xí)也能使^&A不斷根據(jù)控制性能和最優(yōu)化的目標(biāo)函數(shù)進(jìn)行自身的調(diào)整,從而
達(dá)到最優(yōu)控制。整個(gè)過程中,M丄尸c是模型無關(guān)的、動(dòng)態(tài)的和自學(xué)習(xí)的,其控制
目標(biāo)是動(dòng)態(tài)的和不斷學(xué)習(xí)調(diào)整中的^ap。,而與實(shí)際對(duì)象的特性無關(guān)。
由圖3(。M(9i^^E控制器的詳細(xì)結(jié)構(gòu)可以看出,雖然真實(shí)對(duì)象可以是未知 的,但是下列四個(gè)參數(shù)仍需要事先給定7^a尸。和7k&7^的動(dòng)態(tài)特性的階數(shù)m和 ",本文稱它們?yōu)闅v史復(fù)雜度,它們分別表示將當(dāng)前時(shí)刻及其之前多少時(shí)刻的控 制量w和誤差e輸入MLP。和M丄尸e; MLP。和MZ/^的非線性程度/2。和/^,本文 稱它們?yōu)榉蔷€性度,它們分別表示^a尸。和7WL尸e的隱層神經(jīng)元的數(shù)目。注意這 里采樣時(shí)間是一個(gè)隱含的參數(shù),它會(huì)影響上述兩對(duì)參數(shù)的選擇。為了滿足非線
性映射的要求,il^尸。和的隱層神經(jīng)元和輸出神經(jīng)元的激勵(lì)函數(shù)需是
s/gmo/d函數(shù)和線性函數(shù)。
2.本發(fā)明控制器的過程學(xué)習(xí)
上一小節(jié),我們討論了怎樣用MOFREE控制器控制工業(yè)過程。本節(jié)將介紹 MLPo和MLPc的學(xué)習(xí)算法。在下面的討論中,Qo和Qc分別指MLPo和MLPc 的參數(shù)集,也就是指它們的權(quán)值集合。最初的階段,假設(shè)我們并未對(duì)真實(shí)對(duì)象 建模,因此我們隨機(jī)選一個(gè)控制器來控制這樣一個(gè)物體,也就是說,MLPo和 MLPc的參數(shù)均是隨機(jī)給出的。雖然初始控制器是隨機(jī)給出的,我們?nèi)匀豢梢愿?據(jù)它的輸出,也就是控制量,來得到受控對(duì)象的一些信息,即輸入輸出對(duì)。這 些信息可被用來調(diào)整MLPo的參數(shù)集Qo,使之更接近于真實(shí)對(duì)象,這時(shí)的目標(biāo) 函數(shù)為MLPo的輸出與受控對(duì)象的輸出的誤差平方和。在此基礎(chǔ)上,MLPc的參數(shù)集Qc被調(diào)整,使得MLPc更適合于控制參數(shù)調(diào)整之后的MLPo,這時(shí)控制器 應(yīng)該滿足的最小化目標(biāo)方程是控制誤差。由于整個(gè)控制器的在線自學(xué)習(xí)和自調(diào) 整是分為MLPo和MLPc兩個(gè)階段,所以我們稱其為過程學(xué)習(xí),學(xué)習(xí)框圖如圖4 所示。
圖4 MOFREE控制系統(tǒng)的過程學(xué)習(xí)框圖。設(shè)真實(shí)對(duì)象的歷史輸出為yj, j= k-p,k-p+l,…,k-l,模擬器的歷史輸出為y,j, j= k-p,k-p+l,…,k-l,當(dāng)前輸出分別 為yj, j二k和y,j, j=k,則更新MLPo的參數(shù)集Qo的準(zhǔn)則是k-l時(shí)刻的參數(shù) 集Qok-l在k時(shí)刻更新為Qok,使得在相同的歷史時(shí)刻上,模擬器和真實(shí)對(duì)象的 輸出之間的誤差最小。訓(xùn)練集表示為{(Ul,yl),' l=k-p+l,...,k}, Ul=(ul,ul-l,...,ul-m)T,由于我們?nèi)〉氖枪潭ù笮〉挠?xùn)練集,所以這里在將k時(shí)刻 的輸入輸出對(duì)加入到訓(xùn)練集中時(shí),為保持訓(xùn)練集大小不變,要將k-p時(shí)刻的輸入 輸出對(duì)從訓(xùn)練集中刪除。注意這里所指的相同的歷史時(shí)刻,與第二節(jié)中的歷史 復(fù)雜度不是一個(gè)概念,這里指的是訓(xùn)練集中用于訓(xùn)練網(wǎng)絡(luò)的輸入輸出對(duì)的多少, 即p,如果受控對(duì)象為時(shí)不變系統(tǒng),則p與受控對(duì)象的特性無關(guān),如果受控對(duì)象 為時(shí)變系統(tǒng),那么p不宜過大,且整個(gè)學(xué)習(xí)過程中p是恒定的。在以下的討論 中,我們針對(duì)于訓(xùn)練集,將輸入輸出對(duì)稱為訓(xùn)練樣本。MLPo目標(biāo)函數(shù)用公式表
示為
緊接著更新控制器,準(zhǔn)則為k-l時(shí)刻的控制器的參數(shù)集Qck-l在k時(shí)刻更 新為Qck,使得在當(dāng)前時(shí)刻及以前的一段時(shí)刻上,真實(shí)對(duì)象輸出同期望輸出之間 的誤差最小。訓(xùn)練集的大小也是p。 MLPc的目標(biāo)函數(shù)用公式表示為其中^用下式表示
<formula>formula see original document page 12</formula>
(3)式中,。+〈可以被認(rèn)為是MLPc的期望輸出,力為MLPc的真實(shí)輸出。 更新控制器的參數(shù)Qck-l為Qck目的就是讓^最小。這就是為什么MLPc的訓(xùn)練 集為((Ej,rj+e,j), j=l,2,...,k}。(可由先前MLPo的學(xué)習(xí)中所得,而〈由上面提 到的MLPo的參數(shù)集Qok所得。
由于MOFREE控制器的學(xué)習(xí)算法基于BP算法,所以其仍有可能收斂于目 標(biāo)函數(shù)的某一個(gè)局部最小值。從模型辨識(shí)的角度來看,這樣的一個(gè)局部最小值 意味著模型不能很好的辨識(shí)真實(shí)對(duì)象,從控制的角度來看,局部極小值意味著 控制性能未能達(dá)到最優(yōu),但仍然達(dá)到了次最優(yōu)。具有參數(shù)集Q的MLP學(xué)習(xí)時(shí)采 用的BP算法,如下兩式所示 .<formula>formula see original document page 12</formula>
和權(quán)值更新算法
<formula>formula see original document page 12</formula>
這里s和"分別是學(xué)習(xí)率和動(dòng)量因子,ijk和ojk是第k層第j個(gè)神經(jīng)元的輸 入和輸出,f(.)相應(yīng)神經(jīng)元的激勵(lì)函數(shù),wijk-l,k是(k-l)層第i個(gè)神經(jīng)元和第 k層第j個(gè)神經(jīng)元之間的連接權(quán)值,網(wǎng)絡(luò)共有M層,第M層的神經(jīng)元的激勵(lì)函 數(shù)為線性函數(shù)。所以這些神經(jīng)元的激勵(lì)函數(shù)的導(dǎo)數(shù)為f'(ijk)=ojk(l-ojk)。
基于上述的BP算法的MLPo和MLPc的過程學(xué)習(xí)算法如下所示。MLPo共 3層,如圖4(a)所示,其目標(biāo)方程為(l)式。因此,M等于3,通過(3)式,可得d3(僅有一個(gè)輸出神經(jīng)元)和dj2。由訓(xùn)練樣本對(duì)((Ul,yl), l=l,2,...,k-l}.,其中 UHul,ul-l,…,ul-m)T,可得d3=yl-y,l禾n —"'V'+' +必《。然而,對(duì)于控制器 的過程學(xué)習(xí),訓(xùn)練樣本對(duì)為((El,ri+e,),卜l,2,…,k),其中,El是輸入訓(xùn)練樣本, rl+e'l是輸出訓(xùn)練樣本,表明作為訓(xùn)練樣本的輸入輸出信號(hào)階次經(jīng)過模擬器和控 制器。由于模擬器的參數(shù)在MOFREE對(duì)象模型學(xué)習(xí)階段已經(jīng)學(xué)習(xí)好了,也就是 說,模擬器更接近于真實(shí)對(duì)象,那么,MLPc僅學(xué)習(xí)前三層的參數(shù)Qc而保持模 擬器的參數(shù)Qo不變,如圖4(b)所示。于是,對(duì)于MOFREE控制器,有M=6, 由(3)式可得d5(僅一個(gè)輸出神經(jīng)元),dj4(j=l,2,...,ho), d3,和dj2(j=l,2,...,hc)。 訓(xùn)練集為KEl,rl+el,),卜l,2,…,k),這里EH;e,l,e,l-l,…,e,l-n)T,使得d5=rl+e'l-y,l, 并且對(duì)訓(xùn)練集(Ei,rl+e,l)有A< —《e''-。
在每一個(gè)采樣期間,需完成整個(gè)過程的學(xué)習(xí),每一部分的學(xué)習(xí)都是一個(gè)循 環(huán)迭代以致最小的過程。由于大多數(shù)的工業(yè)過程是緩慢的,因此我們的MOFREE 控制器有足夠的時(shí)間收斂。
3.本發(fā)明控制系統(tǒng)的控制方法 '.
根據(jù)上面的討論,我們可以總結(jié)出控制系統(tǒng)的自適應(yīng)控制的方法如下
a. 系統(tǒng)初始化隨機(jī)初始化MLPo和MLPc, MLPo和MLPc的網(wǎng)絡(luò)結(jié)構(gòu) 可根據(jù)一定的先驗(yàn)知識(shí)確定;(這里為了簡(jiǎn)化算法,神經(jīng)網(wǎng)絡(luò)只設(shè)一個(gè)隱層,且 隱層神經(jīng)元的個(gè)數(shù)常設(shè)為6—10個(gè));
b. k=0時(shí)刻,對(duì)象的輸出為0; **0時(shí)刻,對(duì)象的輸出為其實(shí)際輸出值。 根據(jù)k時(shí)刻受控對(duì)象的輸出和目標(biāo)函數(shù)的值得到反饋誤差,并將其作為輸入加 到MLPc的輸入層,前向計(jì)算得到控制量為uk,并將其作為激勵(lì)加到受控對(duì)象 禾口MLPo上;c. 計(jì)算受控對(duì)象的輸出和MLPo的輸出,并據(jù)此得出目標(biāo)函數(shù),即(l)式;
d. 根據(jù)(l)、 (4)和(5)式更新MLPo的權(quán)值;
e. 根據(jù)(3)式計(jì)算受控對(duì)象的輸出和目標(biāo)函數(shù)值的差值,得到MLPc的目標(biāo) 函數(shù),艮卩(2)式;當(dāng)目標(biāo)函數(shù)的值小于等于額定的誤差值f (s二10—2——10—6)時(shí), 則算法結(jié)束;
f. 保持MLPo的權(quán)值不變,根據(jù)(2)、 (4)和(5)式更新MLPc的權(quán)值,在此過 程中,MLPo的作用僅僅是反向傳遞誤差;
g. 轉(zhuǎn)到步驟b。
權(quán)利要求
1、一種與模型無關(guān)的自適應(yīng)控制器,其特征在于,該控制器由兩個(gè)前向神經(jīng)網(wǎng)絡(luò)串連而成,前一神經(jīng)網(wǎng)絡(luò)為網(wǎng)絡(luò)控制器MLPc,后一神經(jīng)網(wǎng)絡(luò)為網(wǎng)絡(luò)模擬器MLPo,網(wǎng)絡(luò)控制器的輸出作為網(wǎng)絡(luò)模擬器及受控對(duì)象的輸入,受控對(duì)象的輸出和網(wǎng)絡(luò)控制器的輸入之間設(shè)有一閉環(huán)負(fù)反饋,網(wǎng)絡(luò)模擬器的輸出和受控對(duì)象的輸出之間設(shè)置為相減關(guān)系,兩者的差值誤差用于網(wǎng)絡(luò)模擬器MLPo的再訓(xùn)練過程。
2、 根據(jù)權(quán)利要求l所述的自適應(yīng)控制器,其特征在于,網(wǎng)絡(luò)模擬器MLPo 由一個(gè)時(shí)滯的多層感知器(TDMLP)根據(jù)受控對(duì)象的輸入輸出對(duì)來建模;網(wǎng)絡(luò)控 制器MLPc由另一個(gè)時(shí)滯多層感知器(TDMLP)組成,網(wǎng)絡(luò)模擬器MLPo通過受 控對(duì)象的運(yùn)行而獲得訓(xùn)練樣本并進(jìn)行學(xué)習(xí),網(wǎng)絡(luò)控制器MLPc則根據(jù)設(shè)定的目 標(biāo)函數(shù)進(jìn)行學(xué)習(xí)和調(diào)節(jié)自身參數(shù),最終獲得對(duì)受控對(duì)象的最優(yōu)控制。
3、 根據(jù)權(quán)利要求1或2所述的自適應(yīng)控制器,其特征在于,所述的網(wǎng)絡(luò) 控制器MLPc和網(wǎng)絡(luò)模擬器MLPo均含有一個(gè)輸入層、 一個(gè)隱藏層和一個(gè)輸出 層。
4、 根據(jù)權(quán)利要求3所述的自適應(yīng)控制器,其特征在于,所述的網(wǎng)絡(luò)控制 器MLPc和網(wǎng)絡(luò)模擬器MLPo的隱藏層中設(shè)有6—10個(gè)神經(jīng)元,輸出層均設(shè)有 一個(gè)神經(jīng)元。
5、 一種用于根據(jù)權(quán)利要求l所述的自適應(yīng)控制器的控制方法,其特征在于,該控制方法步驟如下a.系統(tǒng)初始化隨機(jī)初始化網(wǎng)絡(luò)控制器MLPc和網(wǎng)絡(luò)模擬器MLPo,網(wǎng)絡(luò)控制器MLPc和網(wǎng)絡(luò)模擬器MLPo的網(wǎng)絡(luò)結(jié)構(gòu)可根據(jù)一定的先驗(yàn)知識(shí)確定;b. 1<=0時(shí)刻,對(duì)象的輸出為0; A-0時(shí)亥lj,對(duì)象的輸出為其實(shí)際輸出值, 根據(jù)k時(shí)刻受控對(duì)象的輸出和目標(biāo)函數(shù)的值得到反饋誤差,并將賣作為輸入 加到MLPc的輸入層,前向計(jì)算得到控制量為Uk,并將其作為激勵(lì)加到受控對(duì)象和網(wǎng)絡(luò)模擬器MLPo上;c. 計(jì)算受控對(duì)象的輸出和網(wǎng)絡(luò)模擬器MLPo的輸出,并據(jù)此得出目標(biāo)函 數(shù),即(l)式;人=士》;)2^她 (1)d. 根據(jù)下列(l)、 (4)和(5)式更新MLPo的權(quán)值;^士l;w^油 (2)X = / '《)X《+V" ,= M — 1, M — 2,…,2, (3) .△《—"仨-《o,"' + "A《-",= 2,3,…,M (4)e. 根據(jù)以下(3)式計(jì)算受控對(duì)象的輸出和目標(biāo)函數(shù)值的差值,得到MLPc 的目標(biāo)函數(shù),即以下(2)式;當(dāng)目標(biāo)函數(shù)的值小于等于額定的誤差值s時(shí)("10—2——10—6),則算法結(jié)束;一站W(wǎng)^^min (5)~ = 0一^7 =0一(少\一£,乂) = (^+^乂)一少\ (6) 'f.保持網(wǎng)絡(luò)模擬器MLPo的權(quán)值不變,根據(jù)上述(2)、 (4)和(5)式更新網(wǎng) 絡(luò)控制器MLPc的權(quán)值,在此過程中,網(wǎng)絡(luò)模擬器MLPo的作用僅僅是反向傳遞誤差;g.轉(zhuǎn)到步驟b。
全文摘要
本發(fā)明涉及一種與模型無關(guān)的自適應(yīng)控制器,該控制器由兩個(gè)前向神經(jīng)網(wǎng)絡(luò)串連而成,前一神經(jīng)網(wǎng)絡(luò)為網(wǎng)絡(luò)控制器MLPc,后一神經(jīng)網(wǎng)絡(luò)為網(wǎng)絡(luò)模擬器MLPo,網(wǎng)絡(luò)控制器的輸出作為網(wǎng)絡(luò)模擬器及受控對(duì)象的輸入,受控對(duì)象的輸出和網(wǎng)絡(luò)控制器的輸入之間設(shè)有一閉環(huán)負(fù)反饋,網(wǎng)絡(luò)模擬器的輸出和受控對(duì)象的輸出之間設(shè)置為相減關(guān)系。網(wǎng)絡(luò)模擬器由一個(gè)時(shí)滯多層感知器(TDMLP)組成,用來對(duì)工業(yè)過程進(jìn)行模擬;網(wǎng)絡(luò)控制器也是一個(gè)TDMLP,在考慮到模型估計(jì)誤差的前提下,用于對(duì)模擬器進(jìn)行最優(yōu)的控制。本發(fā)明具有控制精度高、系統(tǒng)響應(yīng)速度快,網(wǎng)絡(luò)內(nèi)部機(jī)構(gòu)簡(jiǎn)化的優(yōu)點(diǎn)。
文檔編號(hào)G05B13/02GK101452258SQ200710195299
公開日2009年6月10日 申請(qǐng)日期2007年12月6日 優(yōu)先權(quán)日2007年12月6日
發(fā)明者張軍英, 張宏怡 申請(qǐng)人:西安電子科技大學(xué)