迭代學習控制到底是什麼?


實際控制中存在一類軌跡跟蹤問題,它的控制任務是尋找控制律,使得被控對象輸出在有限時間周期上沿著整個期望軌跡實現零誤差軌跡跟蹤。這列跟蹤問題是具有挑戰性的控制問題。

人們在處理實際場合中的重複操作任務時,往往依據對象的可重複動態行為與期望行為的差距來調整決策。通過重複操作,使得對象行為與期望行為的配合達到要求。這時,衡量動態行為的指標是某種滿意指標。

迭代學習控制(ILC,Iterative
Learning Control)的思想最初由日本學者Uchiyama於1978年提出[23],於1984年由Arimoto等人[24]做出了開創性的研究。這些學者借鑒人們在重複過程中追求滿意指標達到期望行為的簡單原理,成功地使得具有強耦合非線性多變數的工業機器人快速高精度地執行軌跡跟蹤任務。其基本做法是對於一個在有限時間區間上執行軌跡跟蹤任務的機器人,利用前一次或前幾次操作時測得的誤差信息修正控制輸入,使得該重複任務在下一次操作過程中做得更好。如此不斷重複,直至在整個時間區間上輸出軌跡跟蹤上期望軌跡。

迭代學習控制適合於具有重複運動性質的被控對象,通過迭代修正達到某種控制目標的改善。迭代學習控制方法不依賴於系統的精確數學模型,能在給定的時間範圍內,以非常簡單的演算法實現不確定性高的非線性強耦合動態系統的控制,並高精度跟蹤給定期望軌跡,因而一經推出,就在運動控制領域得到了廣泛的運用。

迭代學習控制方法具有很強的工程背景,這些背景包括:執行諸如焊接、噴塗、裝配、搬運等重複任務的工業機器人;指令信號為周期函數的伺服系統;數控機床;磁碟光碟驅動系統;機械製造中使用的坐標測量機等。

由於迭代學習控制模擬了人腦學習和自我調節的功能,因而是一種典型的智能控制方法[25]。經歷了三十多年的發展,迭代學習控制已成為智能控制中具有嚴格數學描述的一個分支。目前,迭代學習控制在學習演算法、收斂性、魯棒性、學習速度及工程應用研究上取得了很大的進展。

以前做過一點這個方面的東西,為了光刻機的項目,具體可以郵件諮詢。


控制是數的反饋。迭代學習控制在叔的反饋的上層,加了函數的反饋~


傳統的控制系統,設計控制器,主要是分成兩步,第一步,對系統進行建模,第二步,依據所建立的模型進行控制器設計。這其中,控制器設計對模型的精確度要求比較高,也就是說,控制器是面向模型設計的。

迭代學習控制,是面向輸入輸出設計控制器,即,它不會對模型有嚴格要求,它只看你輸出和輸入,然後依據上一次的控制量,和誤差情況,對下一次控制進行修正,這就是說,由於使用了上一次的控制信息,以往的控制經驗被得到了利用,所以這也就是所謂迭代、學習的由來。

u_{k+1}(t)=u_{k}(t)+U(e_{k}(t),t)

e_{k}(t)=y_{d}(t)-y_{k}(t)

公式里u_{k}(t)項就體現了迭代學習,是之前的積累下來的經驗,去掉這一項,之前的控制經驗就不會被利用,就退化成傳統的控制方法了。


迭代學習控制(Iterative Learning Control, ILC)應用在重複任務下, 比如工業機器人一直重複的取放動作 (pick and place)。 ILC屬於前饋控制,可以理解為有自我更新(或學習)能力的一種特殊前饋控制, 目的是通過記錄學習前面任務的追蹤誤差(tracking error)來減少後面接下來的追蹤誤差(tracking error)。 從optimization角度考慮可以通過梯度下降法(gradient decent)來確定時域(time-window)ILC參數以保證下一次tracking error最小。

在滿足tracking error單調收斂的前提下存在追蹤性能tracking performance, 學習速度learning speed 和偶然擾動抑制disturbance rejection等之間的 tradeoff。

碩士階段整理過基本的概念, 有興趣可以看一下

https://drive.google.com/file/d/0B43RmJ987p4tMVAxMHJxNlpjNHc/view?usp=sharing

如果想要推薦的文獻系統了解ILC包括advanced topics, 可以參考我同事的網站:

Iterative Learning Control Review Papers


推薦閱讀:

建築電氣與智能化學生,就業朝哪個方向好?(強電、弱電or建築?)?
自動化和電氣工程自動化 哪個專業好?
自家的小菜地,一個小型的自動灌溉系統怎麼實現?
實際的機器人、無人機等工程或產品中,還有什麼未解決乃至亟待解決的控制/估計問題?
有什麼好的學習PLC的網路資源推薦以及推薦理由?

TAG:自動化 | 自動控制 | 數字控制 | 數控系統 | 數控機床 |