搞非線性的試著答一波...這是非線性控制方法論vs頻域方法論的大順風局,是說明非線性方法論可提供更深刻直覺的絕佳領域,看了看沒人推那我一定要試著推一推。什麽是極點?什麽是零點?左右半平面零極點到底意味著啥?為什麽要求系統最小相位?相信學本科控制系統的朋友都痛苦過
這時候頻域老哥就會說了,極點往下拐,零點往上拐,最小相系統可以畫出唯一bode圖..(這還是我碩士入學面試題…)簡直比抽象更抽象。在頻域裏來回浸潤的同誌對著bode圖可以一頓「直觀理解」,很容易忘記這一切都是馴化的觀點,所謂的直觀也只是在所構建工具之上的直觀,僅限於線性+SISO,不容易跟真實物件建立物理對應,所獲得的直覺性觀點也少之又少。真做了工程師,站在真實系統面前也只知道掃個頻看個頻譜...誠然電力電子/通訊領域,頻域的故事講得很漂亮,但電氣化的大航海時代早就結束了,現在是造高達的時代,更廣闊的控制領域,不敢說頻域害人不淺,也只能說過於rookie level了。
實際上就是害人不淺,你可以聽到很多高精尖領域裏的人聲稱還是用頻域這一套,有的時候團隊帶頭人是懂非線性的,他只是照顧成員用老一套來講故事罷了…(當然不排除有些高精尖領域高精尖在裝備上而不是演算法上,用線性SISO就夠了。)為了跟行內人士打交道,學校不得不教,學生不得不學,學完了已經對進階的東西毫無興趣了..實際上所謂進階的東西一開始就學也不會有什麽問題。國內高校懂的人也不太多,做控制的海龜又難拿教職,這何嘗不是一種新式技術封鎖?其實這事兒跳出線性SISO系統可能反而更直觀,否則能舉的例子太少了。如果說整個大系統是由一堆小系統互聯的,每個小系統都有自己的動態(或說狀態/微分方程式因變量),那麽:
這裏和可觀性有緊密關聯。測不到的動態就是觀測及其導數的核空間,線性情況下就是observability Gramian,非線性下會復雜很多,不過道理相通,我們可以線上性MIMO下建立insight:
你會發現壓根就沒有所謂的「零點過程」、「極點過程」,系統就在那裏,都是ODE的特征值,一個動態對應零點還是極點取決於視角。本科的時候納悶既然零/極點會確定性地對應bode圖,那應該對應著不同的物理過程。為什麽閉環以後零點沒變,但又會翻到分母上改變極點?進而改變所謂的特征方程式?大部份課程都會告訴你特征方程式決定系統效能,但他不會告訴你這實際上是一種妥協..研究它是因為這是輸出真正能測的部份,零點對應的動態我們壓根測不到,只能期望它是漸進穩定的(即頻域法的大前提,也是缺陷之一——最小相位)
拿搖晃酒杯舉例,視手上施的力為輸入,酒杯位移為輸出,可用輸出及其導數測得的是酒杯位移/速度/加速度,這些動態對應著極點(一個二階系統);但是酒的狀態不能透過輸出測得,就對應著零點了。如果你一定建立成傳遞函數,會發現它有左半平面的零點,這是因為水的波動是耗散、漸進穩定的。
酒杯位移作為輸出往往不是選擇,而是不得不接受的事實..比如領導讓你用工業機械臂拿水杯,沖咖啡什麽的。控制杯子位移精準很簡單,反饋+高增益控制就可以;但要保證酒不灑出來,就要對輸入及其導數進行限幅,對應的是小增益控制/飽和控制。
前面說零/極點取決於視角,怎麽理解呢?
機械臂的力還是輸入,但加了一個網絡攝影機,這樣輸出就變成杯子和水的位移了,杯子+水就變成了串聯質素,此時系統沒有「零點」,只不過變成了SIMO系統,不能用傳遞函數理解。線性化從狀態空間看的話,系統一直都是四個特征值,只不過從兩個不可觀/兩個可觀變成了全都可觀。
另外,我們說的「輸出」是指我們最關心的指標、最想跟蹤的軌跡,並不一定非得是可測得的量,特別是跟蹤問題,有一個因果關系在。比如藤原拓海運豆腐,如果他只關註跑的安全跑得快,那豆腐就是零點;如果他一邊看著車一邊用屁股測力關心著豆腐,那車和豆腐都是極點,但是車輛動態會影響豆腐的平衡點,沒法提前規劃。另外,即使用內模觀點構造成一個誤差鎮定問題,那也成兩個模型兩個insight了;但事實上我們想要一個模型好多insight——既然目的是汽車安全下山,同時鎮定豆腐在汽車狀態決定的平衡點附近(並不能提前求得),我們需要透過把汽車軌跡設為輸出來說明:僅做輸出反饋是不夠的,用屁股做個狀態反饋吧。再聊一個作者領域的例子——液壓機械臂軌跡跟蹤,液壓油可壓縮會產生不小的形變(也對應不同的壓力),這顯然是個零點,因為你並不能確定位移是泵入液壓油導致的還是壓縮導致的;但我們的目的是跟蹤位置軌跡而不是跟蹤壓力軌跡,即便加壓力傳感器,也不能把壓力視為「系統輸出」。這是一個常見錯誤。
延伸出來,零/極點可以舉出特別特別多的現例項子。極點沒太有必要舉,因為只要能測它都可以對應極點...nontrivial的東西是零點。零點在非線性控制裏叫zero dynamics,即零動態。沒有零動態/零點的性質在非線性裏叫平坦性,是一類可以直接高增益壓住的系統。而包含零動態的系統有:
再舉幾個身邊的例子:
讀者可能已經意識到,首先零極點精確對消是件多麽荒唐的事,它只是因為頻域沒有對應響應而把對應物理物件都刪掉了,但是老師除了說「這樣不魯棒」之外,幾乎不會跟你講清楚為什麽(比如大樓的風阻尼器就是零極點對消,但有用不代表真的可以消掉,把樓當剛體怎麽算阻尼器發熱?)。在看了以上例子之後,讀者也能發現零動態穩定性決定了系統能不能鎮定,直接說結論:
零動態的故事大概就是這樣了,相信你也理解了極點和零點是什麽。如果讀者學完了線性控制、多少接觸過非線性,一定聽說過Isidori老爺子,老爺子關註的topic之一就是零動態(根據上面的舉例,讀者應該不會低估這個方向的潛力吧),提出了isidori標準型,清清楚楚地分離出了零動態;用他自己的話說是「a long,painful but eventually successful story」 [2] 。回頭再看老爺子的書,你也許就理解系統分解為什麽如此重要;而如果你多少知道一點Lie理論,也就能明白為什麽要用幾何觀點:系統分解的必要步驟-非線性換元法(座標變換)是要用到微分幾何的;哪有什麽高處不勝寒,一切的努力都是希望我們看到系統的數學形式時,就像看到「單車把上掛個購物袋」一樣那麽直觀——用正確的語言講故事是多麽重要。也許你也能理解當這一切都用正確的語言講明白之後,大佬們攀上高峰的空虛,以及為什麽「control is dead」是一句充滿驕傲的宣言。
但作為學生又能怎麽辦呢?頻域還是要學的。畢竟考研/保研面試要考啊。
參考
- ^ Kalman, Rudolf Emil. "Mathematical description of linear dynamical systems." Journal of the Society for Industrial and Applied Mathematics, Series A: Control 1.2 (1963): 152-192. https://epubs.siam.org/doi/abs/10.1137/0301010
- ^ isidori talk, 2017 https://www.youtube.com/watch?v=zcvnVCH7IcY&t=2593s