自動(dòng)控制理論基礎(chǔ)

搞控制有三撥人:電工出身的,化工出身的,和應(yīng)用數(shù)學(xué)出身的。在卡爾曼之前,電工出身的占主導(dǎo)地位,數(shù)學(xué)家們好在象牙塔里打轉(zhuǎn)轉(zhuǎn),化工出身則還對(duì)控制理論懵 里懵懂,還在“實(shí)干” 呢??柭?,一大批數(shù)學(xué)出身的人,利用對(duì)數(shù)學(xué)工具的熟悉,轉(zhuǎn)攻控制理論。一時(shí)間,控制理論的數(shù)學(xué)化似乎成了“天下大勢,順我者 昌,逆我者亡”了。在狀態(tài)空間的框架下,多變量沒有太多的問題好研究,于是最優(yōu)化成為控制理論的新時(shí)尚。
對(duì) 于一根給定的曲線,求一階導(dǎo)數(shù)為零的點(diǎn),就是這個(gè)曲線的極點(diǎn);在對(duì)這一極點(diǎn)球二階導(dǎo)數(shù),大于零就是最小點(diǎn),小于零就是最大點(diǎn)。這時(shí)牛頓老爺子就整明白的東 東,現(xiàn)在高中或大一人人都學(xué)過的東西。但是動(dòng)態(tài)系統(tǒng)是一個(gè)微分方程,對(duì)微分方程求一階導(dǎo)數(shù)為零,就導(dǎo)致變分法和所謂歐拉方程。但這個(gè)東西用起來不方便。實(shí) 際的最優(yōu)控制不大直接使用變分。
俄 羅斯是一個(gè)奇怪的地方。老毛子們要么蔫蔫的,要么瘋狂的。俄羅斯的悲劇電影看得你也郁悶得想去自殺。但是老毛子要是搭錯(cuò)筋整出一個(gè)喜劇呢?那你要么跟著瘋 狂,要么被逼瘋狂。就是這么一個(gè)地方,除了無數(shù)托爾斯泰、柴可夫斯基、普希金、屠格涅夫等文藝巨璧外, 俄羅斯也盛產(chǎn)數(shù)學(xué)家,其中兩個(gè)是龐特里亞京和河里學(xué) 控制的人老惦記著的李亞普諾夫。
龐 特里亞京的極大值原理聽起來嚇人,其實(shí)說白了很簡單。看見那山嗎?山頂就是最高點(diǎn)
(切,這還用你說嗎?);看見那山坡嗎?要是在山腰劃一道線,從山下往上 爬,盡管山坡還在繼續(xù)往上延伸,但是到線為止,不得逾越,那山腰上那道三八線就是最高點(diǎn)(切,這還用說?)。這就是龐特里亞京的極大值原理。當(dāng)然啦,龐特 里亞京是用精巧、深?yuàn)W的數(shù)學(xué)語言表述的,要不然他在數(shù)學(xué)界里也別混了。不過呢,意思就是這么一個(gè)意思。
龐 特里亞京極大值原理的一個(gè)典型應(yīng)用就是所謂最速控制問題,或者叫時(shí)間最優(yōu)控制 (time optimal control)問題,簡單地說,就是給定最大馬力和最大剎車功率,怎么開汽車能夠最快地從 A 點(diǎn)開到 B 點(diǎn)(什么轉(zhuǎn)彎、上下坡、紅綠燈,這種瑣碎的事情也要 拿來煩人?一點(diǎn)品味都沒有?。?。你可以用優(yōu)美但繁瑣的數(shù)學(xué)求證,或者用膝蓋想想,最快的方法,就是一上來就加足馬力,全速前進(jìn);然后在不到終點(diǎn)的某一地 點(diǎn),全力剎車,使慢下來的汽車在到達(dá)終點(diǎn)時(shí)正好停下來。這時(shí)最快的方法,不可能比這更快了。稍微發(fā)揮一點(diǎn)想象力,可以想象“梆”的一下,控制量的油門板一 腳到底,再是“梆”的一下,剎車板一腳到底,控制任務(wù)就完成了。所以最速控制也叫“梆-梆”控制(Bang-Bang control)。
最 速控制在理論上是一個(gè)很有趣的問題,解法也是簡潔、優(yōu)美,但在實(shí)際中直接使用的例子實(shí)在是鳳毛麟角,一般都是開始時(shí)用“梆-梆”,或者勻速上升到最大控 制,以緩和控制的沖擊力;到終點(diǎn)附近時(shí),改用 PID 作閉環(huán)微調(diào),以克服“梆-梆”的系統(tǒng)模型誤差十分敏感的缺點(diǎn)。電梯控制就是這樣一個(gè)例子。從一樓到四 樓,電動(dòng)機(jī)很快勻速上升到最高轉(zhuǎn)速,一過三樓, 電動(dòng)機(jī)就勻速下降到較低的轉(zhuǎn)速,然后根據(jù)電梯實(shí)際位置和樓面之差,有控制地減速,直至停下來。要是控制參數(shù) 調(diào)得好的話,一下子就穩(wěn)穩(wěn)當(dāng)當(dāng)?shù)赝O聛?;要是調(diào)的不夠好,會(huì)在停下來之前上下晃蕩幾下。
最 速控制問題是較早的最優(yōu)控制問題,它提供了一個(gè)很有趣的思路,但這顆樹上開花結(jié)果不多。相比之下,最優(yōu)控制的另外一支枝繁葉茂,有生氣得多了。這一支就是 線型二次型最優(yōu)控制(linear quadratic control)。數(shù)學(xué)是有趣的,但數(shù)學(xué)也是盲目的。在數(shù)學(xué)上,最優(yōu)化問題就是一個(gè)在曲面上尋找凸點(diǎn)的問題,只要你能把一個(gè)物理問題表述成一個(gè)曲面,數(shù)學(xué) 是不理會(huì)姓無姓資的。既然如此,控制偏差的平方在時(shí)間上的累積就是很自然的選擇,二次型就是平方在線性代數(shù)里的說法。線型系統(tǒng)的偏差平方有很好的性質(zhì),這 山峰是一個(gè)饅頭山,沒有懸崖峭壁,沒有溝坎,容易爬;一山只有一峰,不用擔(dān)心找錯(cuò)地方。不過這山峰不能只包含控制偏差,還要包含控制量,原因有三個(gè):
1、如果不包括控制量,那最優(yōu)控制的解是沒有意義的,因?yàn)闊o窮大的控制量可以使累計(jì)平方偏差為最小,但無窮大的控制量是不現(xiàn)實(shí)的。
2、控制量的大小通常和能量、物料的消耗連在一起,實(shí)際控制問題一般是“在最小能量、物料消耗小達(dá)到最高的控制精度”,所以在“山峰”中同時(shí)包含控制偏差和控制量是很自然的
3、系統(tǒng)模型總是有誤差的,誤差“總是”在高頻、大幅度控制作用下最突出,所以為了減低系統(tǒng)對(duì)模型誤差的敏感性,也有必要限制控制量的大小。
所 以線性二次型最優(yōu)控制的“目標(biāo)函數(shù)”(也就是定義山峰形狀的數(shù)學(xué)表述)是一個(gè)控制偏差和控制量各自平方的加權(quán)和的積分。積分當(dāng)然就是“在時(shí)間上的累積” 了,加權(quán)和其實(shí)就是在控制偏差的平方項(xiàng)和控制量的平方相前分別乘以比例因子,然后再相加。兩個(gè)比例因子的相對(duì)大小決定了誰更重要。運(yùn)用矩陣微分和線型代數(shù) 工具,不難導(dǎo)出線性二次型控制律—一個(gè)基本的狀態(tài)反饋控制律!只是反饋增益矩陣是按最優(yōu)化的要求計(jì)算出來的。
線型二次型最優(yōu)控制開創(chuàng)了一整個(gè)新的控制領(lǐng)域,很快從狀態(tài)空間走出來,進(jìn)入其他領(lǐng)域,子孫繁衍,人丁興旺。這一支是當(dāng)今最優(yōu)控制在應(yīng)用中的主體。
線 性二次型控制具有各種各樣的優(yōu)點(diǎn),但是,線性二次型沒有回答一個(gè)最基本的控制問題: 這個(gè)閉環(huán)系統(tǒng)是不是穩(wěn)定。這里,我們的飽受牽記的李亞普諾夫同志出場 了。李亞普諾夫也
是一個(gè)腦子搭錯(cuò)筋的人,一百多年前,玩微分方程玩出了癮,整出兩個(gè)穩(wěn)定性(或者叫收斂性) 的定理,前一個(gè)沒有什么太了不起的,把非線性系 統(tǒng)線性化,就是把一根曲線用很多一小段、一小段的直線近似,然后按直線來分析。后一個(gè)就有點(diǎn)邪門了。老李琢磨出一個(gè)定理,說是對(duì)? 于任意一個(gè)系統(tǒng),如果能找 到一個(gè)自我耗散的能量函數(shù)(數(shù)學(xué)說法是正定函數(shù)),也就是其
數(shù)值永遠(yuǎn)為正,但隨時(shí)間漸進(jìn)地趨向零,或者說這個(gè)能量函數(shù)對(duì)時(shí)間的導(dǎo)數(shù)永遠(yuǎn)為負(fù),那這個(gè)系統(tǒng)就 是穩(wěn)定的。據(jù)說定理的證明是一個(gè)天才的杰作,我等凡人只有頻頻點(diǎn)頭的份。不過想想也對(duì),系統(tǒng)的能量耗散沒了,系統(tǒng)不也就安分下來了嗎?當(dāng)然就穩(wěn)定嘍。
李 亞普諾夫比卡爾曼還要數(shù)學(xué)家,他的定理只給出“如果存在……就……”,怎么找這個(gè)自我耗散的能量函數(shù)他沒說,這個(gè)函數(shù)一般是什么樣他也沒說。這難不倒搞自 動(dòng)控制的廣大革命群眾。不是要正定函數(shù)嗎?不是沒有限制什么形式的正定函數(shù)嗎?那就用控制偏差的平方吧。說干就干,但是干著干著,好玩的事情出現(xiàn)了,對(duì)偏 差平方(或二次型)的求導(dǎo),導(dǎo)出了和線性二次型最優(yōu)控制推導(dǎo)過程中同樣出現(xiàn)的一個(gè)所謂黎卡蒂方程(Riccati equation),感情這
是殊途同歸呀。換句話說,線性二次型控制總是穩(wěn)定的。這是線性二次型控制的一個(gè)重要貢獻(xiàn): 把最優(yōu)性和穩(wěn)定性連到一起。
再扯一句李亞普諾夫,他的第二個(gè)定理非常威猛,但是有點(diǎn)像一個(gè)奇形怪狀的大錘,到現(xiàn)在人們還在找合適的釘子,好用這把大錘砸?guī)紫?。線性二次型控制是已知的僅有的幾個(gè)釘子之一, 另一個(gè)是變結(jié)構(gòu)控制,也可以用李亞普諾夫方法,這是題外話了。
都 說瓦特的蒸汽機(jī)后,計(jì)算機(jī)是影響人類進(jìn)程最大的發(fā)明,計(jì)算機(jī)當(dāng)然也對(duì)自動(dòng)控制帶來深刻的影響。如前所述,控制理論基本上都是圍繞微分方程轉(zhuǎn)的,所以在“本 質(zhì)”上是連續(xù)的。但是數(shù)字計(jì)算機(jī)是離散的,也就是說,數(shù)字控制器的眼睛不是一直盯著被控對(duì)象看的,而是一眨一眨的。數(shù)字控制器的“手腳”也不是一刻不停地 連續(xù)動(dòng)作的,而是一頓一頓的。這是數(shù)字計(jì)算
機(jī)的天性使然。于是,傳統(tǒng)的控制理論全部“翻譯”到離散時(shí)間領(lǐng)域,微分方程變成了差分方程, 所有方法、結(jié)論都有 了連續(xù)、離散兩套,不盡相同,但是大同小異。
要 是數(shù)字控制就是簡單的連續(xù)系統(tǒng)離散化,計(jì)算機(jī)控制也就沒有什么了不起。離散控制帶來了一些連續(xù)控制所不可能具備的新特點(diǎn),這就是:差分方程用清晰界定的時(shí) 刻之間的關(guān)系來描述動(dòng)態(tài)過程。回到洗熱水澡的例子,如果熱水龍頭不在跟前,而是在村外一里地的小鍋爐房里,你只能用電話遙控,那水溫可以表示為
下一分鐘水溫=0.7*現(xiàn)在水溫+0.2*上一分鐘水溫+0.1*再上一分鐘水溫+0.4*(5 分鐘前鍋爐房龍頭開度-6 分鐘前鍋爐房龍頭開度)
顯 然,下一分鐘的水溫受現(xiàn)在水溫的影響比上一分鐘和再上一分鐘的水溫的影響要大,但鍋爐房龍頭開度要是不變,現(xiàn)在、上一分鐘、再上一分鐘水溫都一樣的話,下 一分鐘的水溫也應(yīng)該和現(xiàn)在的水溫一樣。為什么用 5 分鐘前鍋爐房的龍頭開度呢?那是因?yàn)闊崴畯拇逋饬鞯较丛璺恳幸欢ǖ臅r(shí)間,這個(gè)時(shí)間就是滯后。要是把時(shí)間 向前推,那現(xiàn)在的龍頭開度就會(huì)影響
5 分鐘后的水溫。這說明了離散模型的一個(gè)重要特質(zhì):預(yù)估能力。所有預(yù)報(bào)模型都是建立在離散模型的這個(gè)預(yù)估能力上,不管是 天氣預(yù)報(bào),還是經(jīng)濟(jì)預(yù)測,還是自動(dòng)控制里對(duì)有滯后的過程的控制。
數(shù) 字控制的另一特質(zhì)是可以實(shí)施一些不可能在連續(xù)時(shí)間實(shí)現(xiàn)的控制規(guī)律。工業(yè)上常有控制量的變化需要和當(dāng)前的實(shí)際值有關(guān)的情況。比如對(duì)于不同的產(chǎn)品,反應(yīng)器的轉(zhuǎn) 化率總是大體在88-92%之間,沒有太大的變化,但是催化劑可以在 0.5 到 35ppm 之間變化,采用常規(guī)的 PID 的話,增益就非常難設(shè),對(duì)一個(gè)情況合適了,對(duì)另一個(gè)情況就不合適。所以催化劑需要按百分比變化率調(diào)整,而不 是簡單地按偏差比例調(diào)整。比如說,轉(zhuǎn)化率偏離 1%時(shí),催化劑要是在0.5ppm,應(yīng)該調(diào)整 0.05ppm;但是在 15ppm 的時(shí)候,就應(yīng)該是 1.5ppm。這樣,控制律就可以表示為:
當(dāng)前的控制量=上一步的控制量*(設(shè)定值/當(dāng)前的測量值)
也就是說,在被控變量高于設(shè)定值 10%的情況下,控制量也增加 10%;測量值和設(shè)定值一樣時(shí),控制量不再變化。實(shí)際使用時(shí),誰除以誰要根據(jù)測量值上升你是要控制量上升還是下降來決定,控制律也要稍微修改一下,成為
當(dāng)前的控制量=上一步的控制量*(當(dāng)前的測量值/設(shè)定值)^k
k? 次方是用來調(diào)整控制律對(duì)“偏差”(這是已經(jīng)不是差值,而是比值了,嚴(yán)格地說,應(yīng)該叫“偏比”?)的靈敏度,相當(dāng)于比例增益。這個(gè)控制律實(shí)際上相當(dāng)于對(duì)數(shù)空 間的純積分控制,要是有興趣,對(duì)很多常見的非線性過程有相當(dāng)不錯(cuò)的效果,實(shí)現(xiàn)也簡單。然而,這是一個(gè)本質(zhì)離散的控制律,在連續(xù)時(shí)間里無法實(shí)現(xiàn)。
離散控制可以“看一步、走一步”的特性,是連續(xù)控制很難模仿的,也是在實(shí)際中極其有用的。
形 形色色的控制理論再牛,沒有被控過程的數(shù)學(xué)模型,照樣抓瞎。前面的洗澡水溫就是一個(gè)數(shù)學(xué)模型。這個(gè)模型是杜撰的,當(dāng)然可以很容易地給它所有模型參數(shù)。但在 實(shí)際中,模型參數(shù)不會(huì)從天上掉下來。多少科學(xué)家畢生致力于建立某一特定的物理、生物、化學(xué)或別的學(xué)科的數(shù)學(xué)模型,基本機(jī)制已經(jīng)清楚的模型都不容易建立,更 不用說很多過程的基本機(jī)制或深層機(jī)制并不清楚。所以靠機(jī)理推導(dǎo)被控過程的數(shù)學(xué)模型是可能的,但對(duì)日常的控制問題來說,并不實(shí)際。這就是控制理論的另一個(gè)分 支—辨識(shí)—一顯身手的地方了。
如 果給定一個(gè)模型,也就是一個(gè)數(shù)學(xué)公式,給它一組輸入數(shù)據(jù),模型就可以計(jì)算出對(duì)應(yīng)的輸出數(shù)據(jù)。比如說,給定模型 y=2*x+1,再給出 x=1,2,3,4, 那 y 就等于 3,5,7,9,就這么很簡單。辨識(shí)的問題反過來,先給定一個(gè)模型結(jié)構(gòu),在這里就是 y=a*x +b,已知輸入-輸出數(shù)據(jù)是 x=1,2 時(shí) y=3,5,要求計(jì)算出 a 和 b。顯然,這是一個(gè)二元一次方程,誰都會(huì)解。在實(shí)際中,輸入-輸出的觀察數(shù)據(jù)含有測量 噪聲,這對(duì)參數(shù)估計(jì)的精度不利;但通常積累觀察的數(shù)據(jù)量遠(yuǎn)遠(yuǎn)超過未知參數(shù)的個(gè)數(shù),不說數(shù)學(xué),感覺上這就應(yīng)該對(duì)克服測量噪聲有利,關(guān)鍵是怎么利用這“多余” 的數(shù)據(jù)。一個(gè)辦法是把數(shù)據(jù)組兩兩配對(duì),借眾多的二元一次方程,然后對(duì)解
出來的 a 和 b 作平均。還有一個(gè)辦法就是有名的最小二乘法了,說穿了,就是以 a 和 b 為 最優(yōu)化的“控制量”,使模型輸出和實(shí)際觀測值之間的累積平方誤差為最小。
實(shí) 際工業(yè)過程大多有多年的運(yùn)行經(jīng)驗(yàn),大量的數(shù)據(jù)不成問題。對(duì)于大多數(shù)常見過程,模型的基本結(jié)構(gòu)和定性性質(zhì)也可以猜一個(gè)八九不離十,有了如此有力的數(shù)學(xué)“大 錘”,那么應(yīng)該可以砸開一切建模的硬核桃啦。且慢,世上沒有真正的“神奇子彈”,一個(gè)問題解決了,另一個(gè)同等難度的問題又會(huì)出現(xiàn)。對(duì)于辨識(shí)來說,問題有好 幾個(gè)。
第 一個(gè)問題是工業(yè)數(shù)據(jù)的閉環(huán)性。大多數(shù)重要參數(shù)都有閉環(huán)回路控制。如果沒有閉環(huán)回路控制,那要么就是過程特性實(shí)在太復(fù)雜,簡單回路控制不了;要么就是這個(gè)參 數(shù)其實(shí)不重要, 飄移一點(diǎn)沒人在乎。然而,一旦閉環(huán),系統(tǒng)地輸入和輸出就是相關(guān)的了。這一相關(guān)不要緊,輸入-輸出數(shù)據(jù)之間的因果性就全亂了:輸出通過被控過 程本身和輸入相關(guān)(這是好的,辨識(shí)就是要測算出這個(gè)相關(guān)關(guān)系,輸出要是和輸入不相關(guān),也沒有控制或辨識(shí)什么事了),輸入通過
反饋和輸出相關(guān);輸入-輸出成 為一個(gè)閉合系統(tǒng),你可以用任意多條定理或方法證明同樣的事: 由于因果不分,閉環(huán)辨識(shí)是不可能的,除非另外加入“新鮮”的激勵(lì),比如使勁變?cè)O(shè)定值,或者
在閉 環(huán)回路里額外施加獨(dú)立于輸入、輸出的激勵(lì)信號(hào),比如“莫名其妙” 地把閥門動(dòng)幾下。弄到最后,工業(yè)數(shù)據(jù)到底能用多少,就不是一個(gè)簡單的回答。有的過程常年穩(wěn)定操作,像乙烯裝置,只有小范圍的微調(diào)。這倒不是人家懶或者不求 上進(jìn),而是這些裝置早已高度優(yōu)化,常年操作的極其接近極限的位置,但原料和產(chǎn)品單一,所以工藝狀況不怎么大變。這種系統(tǒng)的閉環(huán)數(shù)據(jù)用起來很吃力,常常必須 做一定的開環(huán)試驗(yàn)。有的過程經(jīng)常在不同的狀態(tài)之間轉(zhuǎn)換
(transition),或者由于不同的原料,如“吃”得很雜的煉油廠,或者由于不同的產(chǎn)品,如聚 乙烯裝置,這實(shí)際上就是“使勁變?cè)O(shè)定值”,是新鮮的激勵(lì)。這種系統(tǒng)的閉環(huán)數(shù)據(jù)比較好用,但又別的問題,下面要談到。
第 二個(gè)問題是動(dòng)態(tài)和穩(wěn)態(tài)。動(dòng)態(tài)模型的作用有兩個(gè):一是描述需要多少時(shí)間輸出才能達(dá)到某一數(shù)值;二是輸出最終能夠達(dá)到什么數(shù)值。用股票市場舉一個(gè)例子,你需要 知道兩件事:一是這支股票最后會(huì)升到多少,二是需要多少時(shí)間才能升到那里,只知道其中一個(gè)對(duì)你并沒有太大的用處。當(dāng)然為了簡化,這里假定這支股票一路飆 升,不來忽升忽降火跌買漲賣的名堂。這就要求輸入-輸出數(shù)據(jù)必須包含充分的動(dòng)態(tài)和穩(wěn)態(tài)信息,過于偏頗其中一方面對(duì)另一方面會(huì)不利。所以,長期穩(wěn)定運(yùn)行的過 程中可能包含足夠的穩(wěn)態(tài)數(shù)據(jù),但動(dòng)態(tài)不足;常年不怎么穩(wěn)定的過程可能包含足夠的動(dòng)態(tài)數(shù)據(jù),但穩(wěn)態(tài)不足。用 PID 控制打比方,精確的穩(wěn)態(tài)數(shù)據(jù)有助于計(jì)算正確 的比例控制增益,精確的動(dòng)態(tài)數(shù)據(jù)有助于計(jì)算正確的積分和微分增益,顯然,把比例增益整對(duì)了更為重要。為了獲得精確的穩(wěn)態(tài),在辨識(shí)中常常需要等過程開環(huán)穩(wěn)定 下來才進(jìn)行下一步,但是問題是,司機(jī)過程有時(shí)時(shí)間常數(shù)很長,幾個(gè)精餾塔一串聯(lián),時(shí)間常數(shù)幾個(gè)小時(shí)是客氣的,一、兩天都是可能的。這樣一來,一個(gè)不太大的模 型,十來個(gè)變量,開環(huán)試驗(yàn)一做就是一、兩個(gè)星期。要是一個(gè)裝置能夠兩個(gè)星期開環(huán),那也不需要什么控制了。
第 三個(gè)問題是激勵(lì)的信噪比。都說人類活動(dòng)是二氧化碳和溫室效應(yīng)的主要原因,但要是你去生一堆篝火,再去高空大氣層去測一測二氧化碳和溫室效應(yīng),肯定什么也測 不出來,本來多少,現(xiàn)在還是多少。為什么呢?不是因?yàn)檫@堆篝火沒有效果,而是環(huán)境中的自然的變化遠(yuǎn)遠(yuǎn)超過了篝火的作用,換句話說,就是噪聲遠(yuǎn)遠(yuǎn)超過了信 號(hào)。工業(yè)測試也是一樣,信號(hào)一定要有一定的強(qiáng)度,否則是白耽誤工夫。信號(hào)強(qiáng)度應(yīng)該使過程達(dá)到嚴(yán)重失穩(wěn)的邊緣,這樣才好獲得在大范圍內(nèi)都精確的模型,以便控 制器不光在“風(fēng)平浪靜”的情況下可以正常工作,在“驚濤駭浪” 的情況下也能使系統(tǒng)恢復(fù)穩(wěn)定。然而,工廠以生產(chǎn)為主,在一切都“斤斤計(jì)較”的今天,如此大范 圍的測試所帶來的產(chǎn)品損失甚至對(duì)設(shè)備的可能的危害,都是工廠極不愿意見到的。理論家們?cè)O(shè)計(jì)了一個(gè)偽隨機(jī)信號(hào),用一連串寬窄不等的方波信號(hào),作為激勵(lì)過程的 輸入,在理論上可以是過程參數(shù)的平均值不致偏離設(shè)定值太多,但 ISO9000 不僅要求產(chǎn)品質(zhì)量的平均值要保
證,產(chǎn)品質(zhì)量的一致性也要保證。再說,偽隨機(jī)信號(hào)的脈寬不好確定,太窄了,穩(wěn)態(tài)數(shù)據(jù)不夠; 太寬了,和常規(guī)的階 躍信號(hào)也沒有什么兩樣。所以偽隨機(jī)信號(hào)在實(shí)際上用得很少。
第 四個(gè)問題是輸入的相關(guān)性。實(shí)際工業(yè)過程到了要用辨識(shí)來確定模型的時(shí)候,都是單回路對(duì)付不了了,所以都是多變量過程。在理論上,多個(gè)輸入變量可以同時(shí)變化, 只要輸入變量的變化是相互獨(dú)立的,數(shù)學(xué)上容許多個(gè)輸入變量同時(shí)變化,而辨識(shí)可以正確地辨別模型。然而, 在使用實(shí)際過程的歷史數(shù)據(jù)時(shí),常常遇到多個(gè)輸入變量 并不相互獨(dú)立的問題。比如說,在制作巧克力的過程中,香草巧克力比較“苦”,或者說不太甜,而牛奶巧克力比較甜。問題是做牛奶巧克力時(shí),不光加糖,還要加 牛奶(廢話,不加牛奶那還是牛奶巧克力嗎?)由于兩者總是同時(shí)出現(xiàn),在甜度模型里,就難以辨別甜度是由于加糖的關(guān)系,還是由于加牛奶的關(guān)系。有的時(shí)候可以 根據(jù)對(duì)具體過程的認(rèn)識(shí),人工地限制辨識(shí)的過程,來消除這種影響,有的時(shí)候, 就不太容易了,只好不用歷史數(shù)據(jù),專門做試驗(yàn),用各自獨(dú)立的輸入,便是模型。
第 五個(gè)問題是模型結(jié)構(gòu)。模型結(jié)構(gòu)包括兩個(gè)方面,一是模型的階數(shù),二是剔除在物理上不可能的模型。辨識(shí)的模型歸根結(jié)蒂還是差分方程,這就有一個(gè)如何預(yù)設(shè)階數(shù)的 問題。數(shù)學(xué)上有很多驗(yàn)前和驗(yàn)后的檢驗(yàn)方法,在工業(yè)上,人們偷一個(gè)懶,改用費(fèi)參數(shù)模型,也就是用一條響應(yīng)曲線而不是一個(gè)方程來表述一個(gè)模型,這樣就可以繞過 階數(shù)的問題。但是剔出不現(xiàn)實(shí)的模型還是一個(gè)手工活,需要對(duì)每一個(gè)模型仔細(xì)研究,以確定模型所描述的動(dòng)態(tài)關(guān)系是否合理。數(shù)學(xué)方法還是不夠可靠。
在 搞模型的人中間,常常會(huì)聽到黑箱、白箱和灰箱的說法。黑箱模型就是不理會(huì)實(shí)際過程的物理、化學(xué)等性質(zhì),純粹從數(shù)學(xué)出發(fā),假設(shè)一個(gè)模型結(jié)構(gòu),然后用種種數(shù)學(xué) 方法找出一個(gè)最好的模型。白箱反其道而行之,從物理、化學(xué)等性質(zhì)出發(fā),建立機(jī)理模型。黑箱模型的好處是
“放之四海而皆準(zhǔn)”,不需要對(duì)具體過程有深入的了 解。黑箱模型是一種削足適履的作法,但是如果履本身就做得比較好,具有相當(dāng)?shù)撵`活性和適應(yīng)性,就并不需要削足。由于黑箱模型可以自由假設(shè)模型結(jié)構(gòu),黑箱模 型的處理和使用都比較方便。黑箱模型是經(jīng)驗(yàn)主義的,數(shù)據(jù)里沒有包含的情況,黑箱模型無法預(yù)測。白箱模型則是“量身度造”的,反映了過程的物理、化學(xué)等性 質(zhì),對(duì)實(shí)際過程的數(shù)據(jù)沒有太大的依賴,對(duì)數(shù)據(jù)中不包含的情況也能可靠地預(yù)測。但是白箱模型的結(jié)構(gòu)有具體問題決定,得出的模型不一定容易使用。在實(shí)際中,人 們經(jīng)常在假設(shè)一個(gè)模型結(jié)構(gòu)的時(shí)候考慮進(jìn)大大簡化的過程機(jī)理,所以模型結(jié)構(gòu)不是憑空拍腦袋出來,而是粗略地抓住了過程的基本特質(zhì),然后再用黑箱方法的“數(shù)據(jù) 絞肉機(jī)”,將簡化模型沒有能夠捕捉的細(xì)微末節(jié)一網(wǎng)打盡。這種模型結(jié)合了黑箱和白箱的特點(diǎn),所以稱為灰箱。實(shí)際建模中,純粹黑箱或白箱的成功例子很少,灰箱 的成功機(jī)會(huì)就要多得多。
不 管什么箱,最后還是有一個(gè)如何辨識(shí)實(shí)際過程的問題。閉環(huán)辨識(shí)的好處不用多說了,問題是如何從閉環(huán)辨識(shí)中獲得有用的模型。工業(yè)上有一個(gè)辦法,沒有一個(gè)“官 名”,但實(shí)際上是一個(gè)開環(huán)-反饋過程。具體做法是這樣的:先用粗略的過程知識(shí)構(gòu)造一個(gè)簡單的多變量控制器,其任務(wù)不是精確控制被控過程,而是將被控變量為 此在極限之內(nèi),一旦逼近或超過極限,就采取動(dòng)作將其“趕”回極限內(nèi);但只要在極限內(nèi),就按部就班地坐階躍擾動(dòng),測試過程特性。測試的結(jié)果用來改進(jìn)控制器的 模型,然后再來一遍。幾遍(一般兩遍就夠了)之后,模型精度應(yīng)該很不錯(cuò)了。這個(gè)方法比較好地解決了辨識(shí)精度和過程穩(wěn)定性的要求。
西游記里最好看的打斗是孫悟空大戰(zhàn)二郎神那一段。孫悟空打不過就變,二郎神則是“敵變我變”,緊追不舍,最后把個(gè)無法無天的頑皮猴子擒拿歸案。用控制理論的觀點(diǎn)看,這“敵變我變” 的本事就是自適應(yīng)控制控制器結(jié)構(gòu)根據(jù)被控過程的變化自動(dòng)調(diào)整、自動(dòng)優(yōu)化。