TWI787926B - 基於機器學習補償回授控制的系統及其控制方法 - Google Patents
基於機器學習補償回授控制的系統及其控制方法 Download PDFInfo
- Publication number
- TWI787926B TWI787926B TW110128017A TW110128017A TWI787926B TW I787926 B TWI787926 B TW I787926B TW 110128017 A TW110128017 A TW 110128017A TW 110128017 A TW110128017 A TW 110128017A TW I787926 B TWI787926 B TW I787926B
- Authority
- TW
- Taiwan
- Prior art keywords
- control
- state
- compensation
- output
- feedback
- Prior art date
Links
Images
Landscapes
- Feedback Control In General (AREA)
- Control Of Electric Motors In General (AREA)
Abstract
本發明提供一種基於機器學習補償回授控制的系統與控制方法。本發明取得控制對象的狀態資料,透過補償控制器基於狀態資料及機器學習模型執行補償處理來獲得補償輸出,透過回授控制器基於狀態資料及回授參數執行回授控制處理以獲得回授輸出,並基於補償輸出及回授輸出來計算用來控制操作裝置的控制輸出。本發明不需仰賴專家進行參數設定,並可排除狀態響應延遲,實現精準的狀態控制。
Description
本發明係與回授控制有關,特別是有關於一種基於機器學習補償回授控制的系統及其控制方法。
於目前的自動狀態控制方法中,大多採用開關控制或PID(比例-積分-微分)控制的回授控制方法。
以應用於自動溫度控制為例,開關控制方法由於僅有開(on)與關(off)兩種輸出,而使得加熱器僅有0%與100%兩種輸出,這導致目標的溫度會不斷地在設定溫度附近振盪,而無法穩定維持在設定溫度。
PID控制方法可使加熱器輸出可以在0-100%之間調變,透過調整比例增益(Proportional Gain)、積分增益(Integral Gain)和微分增益(Derivative Gain)可以適應不同的使用場域。然而,PID控制器不適用較複雜的系統(不易找到最佳參數組合),且PID參數必需仰賴專家進行設定。
是以,現有回授控制方法存在上述問題,而亟待更有效的方案被提出。
本發明之主要目的,係在於提供一種基於機器學習補償回授控制的系統及其控制方法,可對回授控制的結果進行即時補償。
於一實施例中,一種基於機器學習補償回授控制的控制方法,包括以下步驟:取得一控制對象的一狀態資料,其中該狀態資料包括一感測狀態與一目標狀態之間的一狀態誤差;基於該狀態誤差及一機器學習模型執行一補償處理來獲得一補償輸出,其中該機器學習模型是基於過去時序的多個狀態誤差及多個補償輸出所訓練而成;基於該狀態誤差及一回授參數執行一回授控制處理以獲得一回授輸出;及,基於該補償輸出及該回授輸出來計算一控制輸出,並基於該控制輸出控制一操作裝置來改變該控制對象的該感測狀態。
於一實施例中,一種基於機器學習補償回授控制的系統,包括一感測裝置、一操作裝置及連接該感測裝置及該操作裝置的一控制系統。該感測裝置用以取得一控制對象的一感測狀態。該操作裝置用以改變該控制對象的該感測狀態。該控制系統被設定來取得該控制對象的一狀態資料,該狀態資料包括該感測狀態與一目標狀態之間的一狀態誤差,基於一補償輸出及一回授輸出來計算一控制輸出,並基於該控制輸出控制該操作裝置。該控制系統包括一補償控制器與一回授控制器。該補償控制器被設定來基於該狀態誤差及一機器學習模型執行一補償處理來獲得該補償輸出,該機器學習模型是基於過去時序的多個狀態誤差及多個補償輸出所訓練而成。該回授控制器被設定來基於該狀態誤差及一回授參數執行一回授控制處理以獲得該回授輸出。
本發明不需仰賴專家進行參數設定,並可排除狀態響應延遲,實現精準的狀態控制。
1:控制系統
10:補償控制器
100:補償處理器
101:機器學習處理器
102:補償儲存器
11:回授控制器
110:回授處理器
111:訊號處理器
112:回授儲存器
12:儲存裝置
120:目標狀態
121:回授參數
122:機器學習模型
13:通訊介面
20:感測裝置
21:操作裝置
22:控制對象
30:調整運算
31:加總運算
400:感測控制模組
401:輸出計算模組
402:操作控制模組
403:循環控制模組
404:補償模組
405:訓練模組
406:經驗回放處理模組
407:回授模組
408:比例控制模組
409:微分控制模組
410:積分控制模組
50:Actor網路
51:Critic網路
52:比例控制器
53:積分控制器
54:微分控制器
55:作用在控制對象
60:加總運算
61:調整運算
62:加總運算
I-VI:控制階段
S10-S14:第一控制步驟
S20-S28:第二控制步驟
S30-S32:訓練資料取得步驟
S40-S41、S50-S51:訓練步驟
S60-S63:回授步驟
圖1為本發明一實施例的系統的架構圖。
圖2為本發明一實施例的控制系統的架構圖。
圖3為本發明一實施例的控制系統的架構圖。
圖4為本發明一實施例的控制方法的流程圖。
圖5為本發明一實施例的控制方法的流程圖。
圖6為本發明一實施例的補償處理的流程圖。
圖7為本發明一實施例的訓練處理的流程圖。
圖8為本發明一實施例的回授處理的流程圖。
圖9為本發明一實施例的計算控制輸出的示意圖。
圖10為本發明一實施例的多階段控制的示意圖。
圖11為本發明一實施例的PID控制的效能曲線圖。
圖12為本發明一實施例的PI控制結合RL補償的效能曲線圖。
茲就本發明之一較佳實施例,配合圖式,詳細說明如後。
本發明是提出一種基於機器學習補償回授控制的系統及其控制方法,是設置補償控制器來補償回授控制器的輸出,以提升狀態控制的精準度與穩定性。
更進一步地,本發明的一目的為藉由機器學習(尤其是強化學習)來對既存的回授控制器(例如是PID控制器)進行補償,藉以克服回授控制器在複雜系統中表現較差的問題。
並且,本發明透過機器學習進行補償,可以克服響應延遲與停滯時間對系統造成的影響。以應用於溫度控制為例,前述的響應延遲與停滯時間可例如是感測延遲檢測、裝置延遲傳熱和熱容量(無效時間(dead time))的影響等。
此外,一般回授控制實際上為「觀察結果後再進行修正的控制」,而具有易受外部環境干擾的缺點。本發明透過機器學習進行補償,可以對外部環境干擾進行學習與適應。
請參閱圖1,為本發明一實施例的系統的架構圖。
本發明的基於機器學習補償回授控制的系統主要包括感測裝置20、操作裝置21與連接上述裝置的控制系統1。
感測裝置20,用以取得控制對象22的感測狀態。操作裝置21,用以改變控制對象22的感測狀態。
於一實施例中,當感測狀態為物理狀態(即狀態誤差為物理狀態誤差)時,感測裝置20可包括物理狀態感測器(例如是溫度計、濕度計或濃度計等),而可感測溫度、濕度或濃度等物理狀態。並且,操作裝置21可包括物理狀態調節器(例如是加熱器、製冷器、加濕器、除濕器或濃度調節裝置),而可調節控制對象22的物理狀態。透過本發明的控制系統1,可使控制對象22的物理狀態穩定維持在預先設定的目標狀態(例如是設定溫度、設定濕度或設定濃度等)。
更進一步地,當應用於溫度控制時,前述溫度計可為熱電偶、熱敏電阻、熱像儀等接觸式或非接觸式溫度感測器,前述加熱器可為電阻加熱器、電磁式加熱器、雷射式加熱器或脈衝加熱器。
於一實施例中,當感測狀態為運動狀態(即狀態誤差為運動狀態誤差)時,感測裝置20可包括運動狀態感測器(例如是一方向感測器、速度計、
加速度計、轉速計、振動感測器或追蹤裝置等),而可感測方向、速度、加速度、轉速、振動、軌跡等運動狀態。並且,操作裝置21可包括用以移動控制對象22的運動驅動器(例如是透過馬達)或振動抑制裝置(例如是透過主動式阻尼)。
更進一步地,當用於移動控制時,透過本發明的控制系統1,可精準控制馬達或轉向裝置使控制對象22的運動狀態穩定維持在預先設定的目標狀態(例如是設定速度、設定加速度、設定轉速或設定方向等)。
當用於振動抑制時,透過本發明的控制系統1,可精準控制主動式阻尼來降低振動,而使振動程度持續逼近目標狀態。
當用於追跡控制時,透過本發明的控制系統1,可精準參考控制對象22(例如是影像標記或磁性標記)的位置來調整自動導引車(Automated Guided Vehicle)的轉向與速度來對控制對象22進行精準追蹤,而使偏移程度逼近目標狀態(例如是偏移閾值)。
控制系統1主要包括補償控制器10與回授控制器11。
補償控制器10與回授控制器11可以設置在同一控制器中,或分離設置(例如是透過積體匯流排電路(I2C)、序列週邊介面(SPI)或平行埠(Parallel Interface,或稱Line Printer Terminal)連接),不加以限定。
於一實施例中,控制系統1還可包括電性連接補償控制器10與回授控制器11的儲存裝置12,儲存裝置12用來儲存資料,例如是目標狀態120、應用於回授控制器11的回授參數,與應用於補償控制器10的機器學習模型122。
於一實施例中,前述機器學習模型可為強化學習(Reinforcement Learning,RL)模型,如Actor-Critic網路、深度Q網路(Deep Q-Network,DQN)等。
於一實施例中,前述機器學習模型是基於過去時序(例如是過去的多個控制循環)的多個狀態資料(尤其是狀態誤差)及多個補償輸出(即對應的操作動作)所訓練而成。
於本發明中,感測裝置20可對控制對象22執行感測動作來獲得控制對象22的狀態資料,並將狀態資料提供至控制系統1。
控制系統1基於狀態資料產生控制輸出,並基於控制輸出控制操作裝置21來執行操作動作來改變控制對象22的狀態,即感測裝置20接下來取得的狀態資料會改變。藉由不斷執行上述回授控制動作,可以使控制對象22的狀態趨向設定的狀態(如後述之目標狀態)進行變化。
請一併參閱圖2,為本發明一實施例的控制系統的架構圖。
於本實施例的控制系統1中,補償控制器10可產生補償輸出,回授控制器11可產生回授輸出。
補償輸出經過調整運算30調整大小後,可與回授輸出進行加總運算31以對回授輸出進行補償來修正回授輸出的缺點,藉此產生最佳的控制輸出,並通過通訊介面13(例如是匯流排或網路介面)傳送至操作裝置21。
於一實施例中,補償控制器10可包括相互連接的補償處理器100、機器學習處理101與補償儲存器102。補償處理器100(例如是微控制器)用以管理補償控制器10,機器學習處理101(例如是GPU或其他適合機器學習演算法之浮點運算處理器),補償儲存器102用以儲存資料,例如是機器學習模型122、後述之經驗回放集及/或接收到的狀態資料。
補償控制器10與回授控制器11可分別設置專屬的儲存裝置12(例如是內建儲存器),以提升存取效率。
於一實施例中,回授控制器11可包括相互連接的回授處理器110、訊號處理器111與回授儲存器112。回授處理器110(例如是微控制器)用以
管理回授控制器11,訊號處理器111(例如是數位訊號處理器(DSP)、場可程式邏輯閘陣列(FPGA),回授儲存器112用以儲存資料,例如是回授參數及/或接收到的狀態資料。
請參閱圖3,為本發明一實施例的控制系統的架構圖。於本實施例中,控制系統1包括模組400-410。這些模組400-410分別被設定來實做不同的功能。
以下模組400-403可由補償控制器10實現、由回授控制器11實現或控制系統1的其他處理器實現,不加以限定。
感測控制模組400,被設定來自感測裝置20取得感測狀態,並計算感測狀態與當前的目標狀態之間的狀態誤差。
輸出計算模組401,被設定來計算控制輸出,例如是基於預設的補償係數調整補償輸出,並對回授輸出與調整後的補償輸出執行相加處理來獲得最終的控制輸出。
操作控制模組402,被設定來基於控制輸出控制操作裝置21來使控制對象執行操作動作。
循環控制模組403,被設定來識別各控制循環與各控制循環的多個控制階段的開始與結束,並可取得各控制階段的目標狀態。
以下模組404-406可由補償控制器10實現。
補償模組404,被設定來輸入循環中所取得的多個狀態資料(狀態)與多個補償輸出(動作)至機器學習模型以獲得新的補償輸出(新動作)。接著,控制系統1可依據新的補償輸出對回授輸出進行補償獲得新的控制輸出,並使用新的控制輸出來控制操作裝置21對控制對象執行調整的操作動作(新操作動作),而使得控制對象的狀態資料產生對應的變化(例如是更為接近目標狀
態)。接著,補償模組404可取得變化後的狀態資料作為獎勵,前述獎勵即反應新的補償輸出所帶來的實際作用效果。
訓練模組405,被設定來於控制循環結束後,基於循環中獲得的訓練資料對機器學習模型執行訓練處理來更新機器學習模型。
經驗回放處理模組406,被設定來於各控制循環中將所取得的資料暫存於暫存經驗回放集以節省儲存時間,並於控制循環結束後將暫存經驗回放集的資料轉存至訓練經驗回放集以進行訓練。
以下模組407-410可由回授控制器11實現。
回授模組407,被設定來基於回授參數執行回授控制處理。
比例控制模組408,被設定來控制比例控制器52來基於輸入資料(例如是狀態誤差)與所設定的比例參數(例如是比例增益)執行比例動作來獲得與狀態誤差成比例的回授輸出。
積分控制模組410,被設定來基於輸入資料(例如是狀態誤差)與所設定的積分參數(例如是積分增益)執行積分動作來抵消回授輸出的穩態誤差。
微分控制模組409,被設定來基於輸入資料(例如是狀態誤差)與所設定的微分參數(微分增益)執行微分動作來降低回授輸出的變動幅度。
值得一提的是,於PID控制器中,當微分增益越大,所產生的雜訊也越大,並且,由於微分增益與濾波器處理是互斥的,微分增益過大所產生的雜訊並無法透過濾波器濾除。
為了避免上述雜訊,於本發明的一實施例中,是將微分參數設定為不執行微分動作(例如是將微分增益設定為零),即令PID控制器僅具有比例-積分功能,並透過強化學習來取代微分動作,以提供更好的輸出補償。
前述模組400-410是相互連接(例如是電性連接與資訊連接),並可為硬體模組(例如是電子電路模組、積體電路模組、SoC等等)、軟體模組(例如是韌體、作業系統或應用程式)或軟硬體模組混搭,不加以限定。
值得一提的是,當前述模組為軟體模組(例如是韌體、作業系統或應用程式)時,儲存裝置(如圖1的儲存裝置12或圖2的補償儲存器102與回授儲存器112)可包括非暫態電腦可讀取記錄媒體(圖未標示),前述非暫態電腦可讀取記錄媒體儲存有電腦程式,電腦程式記錄有電腦可執行之程式碼,當處理器(例如是補償控制器10與回授控制器11)執行前述程式碼後,可實做對應模組之功能。
本發明各實施例的控制方法可應用於圖1-3、9所示的任一系統。
請參閱圖4,為本發明一實施例的控制方法的流程圖。本實施例的控制方法包括以下步驟S10-S14。
步驟S10:於任一控制循環中,控制系統1透過感測控制模組400取得控制對象22的狀態資料,前述狀態資料可包括控制對象22的感測狀態與預設的目標狀態之間的狀態誤差。
步驟S11:補償控制器10透過補償模組404基於狀態誤差及機器學習模型122執行補償處理來獲得補償輸出。
步驟S12:回授控制器11透過回授模組407基於狀態誤差及預設的回授參數121執行回授控制處理以獲得回授輸出。步驟S13:控制系統1透過輸出計算模組401基於補償輸出及回授輸出來計算控制輸出。
步驟S14:控制系統1透過操作控制模組402基於控制輸出控制操作裝置21來改變控制對象22的狀態。
本發明透過機器學習進行補償,不需仰賴專家進行回授控制的參數設定。並且,由於機器學習可對未來誤差進行預測,本發明可排除狀態響應延遲,實現更為精準的狀態控制。
請參閱圖5,為本發明一實施例的控制方法的流程圖。本實施例的控制方法包括以下步驟S20-S28。
步驟S20:控制系統1透過循環控制模組403執行初始化處理,例如是初始化機器學習模型122,初始化訓練經驗回放集。
步驟S21:控制系統1透過循環控制模組403識別開始新的控制循環,並透過感測控制模組400持續取得控制對象22的感測狀態。
於一實施例中,控制系統1還可透過循環控制模組403於每次開始新的控制循環時,初始化新的暫存經驗回放集。
於一實施例中,控制系統1還可透過補償模組404使用過去時序的多筆狀態資料與補償輸出來輸出當下的補償輸出,且此補償輸出會根據時間延遲來做自動調整。
步驟S22:補償控制器10透過補償模組404執行補償處理以產生補償輸出。
於一實施例中,補償控制器10可輸入當下與過去時序的多筆狀態資料(例如是感測狀態與狀態誤差,可為目前控制循環中的多筆資料,或包括已結束的控制循環的資料)至機器學習模型122來透過機器學習計算補償輸出。藉此,本發明可有效消除輸出延遲與感測器的雜訊。
步驟S23:回授控制器11透過回授模組407執行回授控制處理來獲得回授輸出。
於一實施例中,回授控制器11可將輸入當下與過去時序的多筆狀態資料至PID控制器,來基於目前的回授參數(例如是比例參數、積分參數與微分參數)計算回授輸出。
步驟S24:控制系統1透過輸出計算模組401基於補償輸出對回授輸出進行補償,來獲得控制輸出。
於一實施例中,本發明可透過下述方程式計算控制輸出:u out =u PID +α.u ML
其中,u out 為控制輸出;u PID 為回授輸出;u ML 為補償輸出;α為補償係數,介於0-100%,用來調整補償輸出的影響力。
值得一提的是,於剛開始執行控制(例如是第一個控制循環或前10個控制循環等)時,由於機器學習模型訓練尚未成熟,此時的補償輸出將有較高誤差,故可透過將補償係數調小來降低補償輸出的影響,進而降低誤差的影響。
於執行控制一段時間後(例如是第二個控制循環之後或10個控制循環之後等)時,由於機器學習模型訓練尚未成熟,此時的補償輸出誤差極小,故可透過將補償係數調大來提升補償輸出的影響,進而提升控制輸出的精確性,並充分補償回授輸出的誤差。
於一實施例中,本發明可透過機器學習來進行前述補償係數的設定,例如是透過對過去時序的補償係數與誤差狀態之間的變化關係進行學習,來找出最佳的補償係數的設定,例如是透過機器學習獲得補償係數於各控制循環或各控制階段的最佳值。
步驟S25:控制系統1透過操作控制模組402基於控制輸出控制操作裝置21對控制對象22執行操作動作來改變控制對象22的狀態。
步驟S26:控制系統1透過循環控制模組403判斷目前的控制循環是否結束,例如是是否完成一連串的操作動作(例如是完成所有焊接動作),或控制對象22達到預設的完成狀態(例如是抵達目的地)。
若目前的控制循環尚未結束,則再次執行步驟S22-S26來持續回授控制,並對回授控制進行補償,來使控制對象22的狀態趨向目標狀態變化。
步驟S27:於控制循環結束後,補償控制器10透過訓練模組405基於控制循環中獲得的資料(例如是多個狀態誤差與對應的多個補償輸出)對機器學習模型122執行訓練處理來更新機器學習模型122的演算法,並提升機器學習模型122精確度。
步驟S28:控制系統1判斷是否結束訓練或停止控制,例如是用戶關閉系統等。
若結束訓練或停止控制,則結束控制方法。否則,在次執行步驟S21-S27已開啟新的控制循環。
於一實施例中,本發明於不同的多個控制循環是針對相同類型的不同的多個控制對象依序進行狀態控制。由於這些控制對象是相同類型的,具有相同的物理特性。因此,本發明透過學習前面的控制循環的經驗回放集(即前面的控制對象的控制經驗),可以有效調整控制後面的控制循環(即後面的控制對象的控制經驗),並使後面的控制循環的效能越來越好。
於一實施例中,本發明的各控制循環還可以包括多個控制階段,這些控制階段是對應同一控制循環的不同的操作動作或時間點,並可對應相同或不同的目標狀態,例如是至少二控制階段是對應不同的目標狀態。
並且,於前述步驟S21-S26中,控制系統1可透過循環控制模組403識別目前的控制循環,取得對應的目標狀態,並計算對應的狀態誤差。
請參閱圖10,為本發明一實施例的多階段控制的示意圖。圖10是以焊接的溫度控制為例,來說明本發明的多個控制階段是分別對應不同的操作動作。
於控制階段I中,控制系統1控制焊接頭(操作裝置21)加熱至待機溫度(第一目標狀態)。
於控制階段II中,控制系統1控制焊接頭加熱至第一工作溫度(第二目標狀態)。
於控制階段III中,控制系統1控制焊接頭維持第一工作溫度(第三目標狀態),並開始焊接動作。
於控制階段IV中,控制系統1控制焊接頭提升至更高的第二工作溫度(第四目標狀態)。
於控制階段V中,控制系統1控制焊接頭維持至第二工作溫度(第五目標狀態),並持續焊接動作。
於控制階段VI中,控制系統1控制焊接頭降溫至完成溫度(第六目標狀態),並結束焊接動作。
值得一提的是,於多控制階段的回授控制,由於目標狀態會不斷改變而造成系統複雜,僅依靠回授控制器11(例如是PID控制器)並無法實現精準控制,故本發明透過學習補償輸出,可使用於更為複雜的系統。
請一併參閱圖4-6,圖6為本發明一實施例的補償處理的流程圖。於本實施例中,機器學習模型122採用Actor-Critic演算法,即包括Actor網路與Critic網路。Actor網路是用來產生補償輸出,而Critic網路是用來更新Actor網路。
具體而言,本實施例的補償處理(步驟S11、S22)可包括以下步驟S30-S32。
步驟S30:補償控制器10透過補償模組404輸入過去時序的多個狀態資料與多個補償輸出與當下的狀態資料至Actor網路以獲得新的補償輸出。
步驟S31:補償控制器10透過補償模組404取得新的補償輸出所對應的獎勵,前述獎勵可用來表示本次補償輸出所造成的實際作用效果。
步驟S32:補償控制器10透過經驗回放處理模組32將所取得的狀態資料、(新的)補償輸出及獎勵暫時儲存於暫存經驗回放集(可規劃於緩衝記憶體,buffer)。
本發明由於每次輸出結束後不需訓練模型,只需儲存資料於暫存經驗回放集中,故可以提升輸出頻率(例如是提升至100Hz或更高)。
舉例來說,若是在輸出結束後才開始訓練模型,受限於訓練模型所需的時間,控制器的執行頻率為20Hz,但透過本發明的補償方式,可使輸出頻率提升為100Hz。
請一併參閱圖4-7,圖7為本發明一實施例的訓練處理的流程圖。本實施例的訓練處理(步驟S22)可包括以下步驟S40-S41、S50-S51。
步驟S40:補償控制器10透過經驗回放處理模組32將暫存經驗回放集的資料儲存至訓練經驗回放集。
於一實施例中,補償控制器10是將暫存經驗回放集的資料整理成符合馬可夫決策過程(Markov Decision Processes,MDP)的定義,再存入訓練經驗回放集。
步驟S41:補償控制器10透過訓練模組405基於訓練經驗回放集對機器學習模型122執行訓練處理。
於一實施例中,訓練處理可包括以下步驟S50-S51。
步驟S50:補償控制器10透過訓練模組405將訓練經驗回放集的狀態誤差、補償輸出及獎勵輸入至Critic網路來獲得一總獎勵期望值(total
expected reward)。前述總獎勵期望值是用來評價目前的Actor網路。前述總獎勵期望值的計算可參考現有機器學習演算法(尤其是Actor-Critic網路的強化學習),本發明主是將總獎勵期望值應用於不同領域的回授控制之補償。
步驟S51:補償控制器10透過訓練模組405輸入總獎勵期望值至Actor網路來更新Actor網路,以提升Actor網路的精準度。
藉此,本發明可於控制循環中快速收集訓練資料並產生輸出,並於控制循環結束後執行機器學習模型122的訓練。上述做法可避免在傳統強化學習的訓練過程中需要等待系統響應的時間,同時可考量溫度系統響應速度較慢的特性,整理出合適的訓練資料,避免補償控制器10因為錯誤的訓練資料導致無法收斂。
請一併參閱圖4至圖8,圖8為本發明一實施例的回授處理的流程圖。本實施例的回授控制器11可直接應用既存的PID控制器(如圖9所示,可包括比例控制器52、積分控制器53與微分控制器54),回授控制處理(步驟S12、S23)可包括以下步驟S60-S63。
步驟S60:回授控制器11透過比例控制模組408基於狀態誤差與比例參數控制比例控制器52執行比例動作來計算與狀態誤差成比例的比例輸出。
步驟S61:回授控制器11透過積分控制模組410基於狀態誤差與積分參數控制積分控制器53執行積分動作來獲得抵消穩態誤差的積分輸出。
步驟S62:回授控制器11透過微分控制模組409基於狀態誤差與微分參數控制微分控制器54執行微分動作來獲得降低變動幅度微分輸出。
於一實施例中,微分參數可被設定為不執行微分動作,即不會產生微分輸出或微分輸出為零。
步驟S60:回授控制器11透過回授模組407基於比例輸出、積分輸出與微分輸出生成回授輸出。
請參閱圖9,為本發明一實施例的計算控制輸出的示意圖。本實施例中,補償控制器10執行Actor網路50與Critic網路51。
本實施例中,回授控制器11包括比例控制器52、積分控制器53與微分控制器54,三種控制器52-54分別對應目前誤差、過去累計誤差及誤差微分。
本實施例中,目標狀態(+,以正數表示)與感測狀態(-,以負數表示)經過加總運算60(即透過正數加上負數來實現減法運算)可產生狀態誤差。
狀態誤差分別被輸入至Actor網路50與回授控制器11的比例控制器52、積分控制器53與微分控制器54。
接著,Actor網路50產生補償輸出,經過調整運算61(例如是乘上前述之補償係數)後輸入至加總運算62。
比例控制器52、積分控制器53與微分控制器54的比例輸出、積分輸出與微分輸出作為回授輸出,被輸入至加總運算62。
經過加總運算62,產生控制輸出,並對控制對象進行作用55。
於作用後,對應的獎勵可被輸入至Critic網路51來計算本次的總獎勵期望值,並以此總獎勵期望值來更新Actor網路50。
此外,於作用後,控制對象的新的感測狀態(-)被輸入至加總運算60以進行下一次的輸出控制。
透過不斷重複上述操作,本發明即可實現連續回授控制與補償。
請同時參閱圖11、12,圖11為本發明一實施例的PID控制的效能曲線圖,圖12為本發明一實施例的PI控制結合RL補償的效能曲線圖。圖11、12
所示為為同一控制循環的多控制階段的溫度控制,並是以三個控制階段,三個控制階段的目標狀態分別為350℃、450℃與550℃)。
如圖11所示,在僅使用回授控制器(例如是PID控制器)的情況下,於所有的控制階段中,工作週期(Duty Cycle)跳動範圍始終相當大,且感測溫度有明顯的過衝量(overshoot)與追逐現象(hunting)。
如圖12所示,在對回授控制器(例如是PI控制器)進行補償後,經過初步的機器學習,僅有第一控制階段的工作週期跳動範圍稍微明顯,第二控制階段與第三控制階段都能夠保持穩定,且感測溫度都能夠穩定地隨設定溫度變化。
此外,若經過更多次的學習(即經過更多控制循環的訓練),後續的控制循環的所有控制階段(例如是第一控制階段)將能夠學習先前的控制循環的對應控制階段(例如是第一控制階段)的經驗,而比圖12所示更為穩定。
以上所述僅為本發明之較佳具體實例,非因此即侷限本發明之申請專利範圍,故舉凡運用本發明內容所為之等效變化,均同理皆包含於本發明之範圍內,合予陳明。
S10-S14:第一控制步驟
Claims (19)
- 一種基於機器學習補償回授控制的控制方法,包括:a)取得一控制對象的一狀態資料,其中該狀態資料包括一感測狀態與一目標狀態之間的一狀態誤差;b)基於該狀態誤差及一機器學習模型執行一補償處理來獲得一補償輸出,其中該機器學習模型是基於過去時序的多個狀態誤差及多個補償輸出所訓練而成;c)基於該狀態誤差及一回授參數執行一回授控制處理以獲得一回授輸出;及d)基於該補償輸出及該回授輸出來計算一控制輸出,並基於該控制輸出控制一操作裝置來改變該控制對象的該感測狀態,其中該感測狀態包括物理狀態與運動狀態的至少其中之一,以及該狀態誤差包括物理狀態誤差與運動狀態誤差的至少其中之一;其中,該步驟d)包括控制該操作裝置來改變該控制對象的該物理狀態或該運動狀態。
- 如請求項1所述之控制方法,更包括:e)重複執行該步驟a)至該步驟d)來持續計算該控制輸出並持續控制該操作裝置來使該控制對象的該感測狀態趨向該目標狀態變化,直到判斷當前的控制循環結束。
- 如請求項2所述之控制方法,更包括:f)於該控制循環結束後,基於該控制循環中獲得的該多個狀態誤差與該多個補償輸出對該機器學習模型執行一訓練處理來更新該機器學習模型。
- 如請求項3所述之控制方法,其中該機器學習模型包括一Actor網路及一Critic網路;該步驟b)包括:b1)輸入目前的該控制循環中取得的該多個狀態資料與該多個補償輸出至該Actor網路以獲得新的該補償輸出;b2)取得新的該補償輸出所對應的一獎勵;及b3)將該狀態資料、新的該補償輸出及該獎勵儲存於一暫存經驗回放集。
- 如請求項4所述之控制方法,其中該步驟f)包括:f1)將該暫存經驗回放集的資料儲存至一訓練經驗回放集;及f2)基於該訓練經驗回放集對該機器學習模型執行該訓練處理;其中,該訓練處理包括:g1)將對應的該狀態誤差、該補償輸出及該獎勵輸入至該Critic網路來獲得一總獎勵期望值;及g2)輸入該總獎勵期望值至該Actor網路來更新該Actor網路。
- 如請求項1所述之控制方法,其中該回授參數包括一比例參數;該步驟c)包括:c1)基於該狀態誤差與該比例參數執行一比例動作來獲得與該狀態誤差成比例的該回授輸出。
- 如請求項6所述之控制方法,其中該回授參數更包括一積分參數;該步驟c)包括:c2)基於該狀態誤差、該比例參數及該積分參數執行該比例動作與一積分動作來獲得與該狀態誤差成比例且抵消穩態誤差的該回授輸出。
- 如請求項1所述之控制方法,其中該回授參數包括一比例參數、一微分參數及一積分參數;該步驟c)包括以下步驟: c3)將該微分參數設定為不執行一微分動作;c4)將該狀態誤差輸入至一PID控制器來基於該比例參數執行一比例動作,並基於該微分參數執行一微分動作,來獲得與該狀態誤差成比例且抵消穩態誤差的該回授輸出。
- 如請求項1所述之控制方法,更包括對相同類型的該多個控制對象分別執行多個控制循環,各該控制循環是對各該控制對象重複執行該步驟a)至該步驟d);其中該步驟d)包括:d1)基於一補償係數調整該補償輸出,並對該回授輸出與調整後的該補償輸出執行一相加處理來獲得該控制輸出,其中第一個該控制循環的該補償係數是小於中間或最後的該控制循環的該補償係數;及d2)基於該控制輸出控制該操作裝置來改變該控制對象的狀態。
- 如請求項1所述之控制方法,其中該步驟a)至該步驟d)是於一控制循環中被重複執行;該控制循環包括多個控制階段,至少二該控制階段是對應不同的該目標狀態;該步驟a)包括識別當前的該控制階段,並取得該感測狀態與當前的該控制階段所對應的該目標狀態之間的該狀態誤差。
- 一種基於機器學習補償回授控制的系統,包括:一感測裝置,用以取得一控制對象的一感測狀態,其中該感測狀態包括物理狀態與運動狀態的至少其中之一;一操作裝置,用以改變該控制對象的該感測狀態;及一控制系統,連接該感測裝置及該操作裝置,該控制系統被設定來取得該控制對象的一狀態資料,該狀態資料包括該感測狀態與一目標狀態之間的一狀 態誤差,以及該狀態誤差包括物理狀態誤差與運動狀態誤差的至少其中之一,其中該控制系統基於一補償輸出及一回授輸出來計算一控制輸出,並基於該控制輸出控制該操作裝置,以改變該控制對象的該物理狀態或該運動狀態,該控制系統包括;一補償控制器,被設定來基於該狀態誤差及一機器學習模型執行一補償處理來獲得該補償輸出,其中該機器學習模型是基於過去時序的多個狀態誤差及多個補償輸出所訓練而成;及一回授控制器,被設定來基於該狀態誤差及一回授參數執行一回授控制處理以獲得該回授輸出。
- 如請求項11所述之系統,其中該控制系統被設定來對相同類型的該多個控制對象分別執行多個控制循環,該控制系統包括:一循環控制模組,被設定來識別各該控制循環與各該控制循環的多個控制階段的開始與結束;一感測控制模組,被設定來於各該控制階段中持續取得該感測狀態與當前的該控制階段所對應的一目標狀態之間的該狀態誤差,其中各該控制循環的該多個控制階段分別對應該多個目標狀態;一輸出計算模組,被設定來於各該控制循環中持續計算該控制輸出;及一操作控制模組,被設定來於各該控制循環中持續基於該控制輸出控制該操作裝置來使該控制對象的該感測狀態趨向該目標狀態變化。
- 如請求項12所述之系統,其中該機器學習模型包括一Actor網路及一Critic網路;該補償控制器包括:一補償模組,被設定來輸入目前的該控制循環中取得的該多個狀態資料與該多個補償輸出至該Actor網路以獲得新的該補償輸出,並取得新的該補償輸出所對應的一獎勵; 一訓練模組,被設定來於該控制循環結束後,基於該控制循環中獲得的該多個狀態誤差與該多個補償輸出對該機器學習模型執行一訓練處理來更新該機器學習模型,該訓練模組更被設定來於該訓練處理中將一訓練經驗回放集的該狀態誤差、該補償輸出及該獎勵輸入至該Critic網路來獲得一總獎勵期望值,並輸入該總獎勵期望值至該Actor網路來更新該Actor網路;及一經驗回放處理模組,被設定來於各該控制循環中將所取得的該狀態資料、該補償輸出及該獎勵儲存於一暫存經驗回放集,並於該控制循環結束後將該暫存經驗回放集的資料儲存至該訓練經驗回放集。
- 如請求項11所述之系統,其中該回授控制器包括:一比例控制模組,用以基於該狀態誤差與該比例參數執行一比例動作來獲得與該狀態誤差成比例的該回授輸出。
- 如請求項14所述之系統,其中該回授控制器更包括:一積分控制模組,用以基於該狀態誤差及一積分參數執行一積分動作來抵消該回授輸出的穩態誤差。
- 如請求項15所述之系統,其中該回授控制器更包括:一微分控制模組,被設定來基於該狀態誤差及一微分參數執行一微分動作來降低該回授輸出的變動幅度;其中,該微分參數被設定為不執行該微分動作;其中,該回授控制器更包括一PID控制器。
- 如請求項11所述之系統,其中該控制系統被設定來對相同類型的該多個控制對象分別執行多個控制循環;其中,該補償控制器更包括: 一輸出計算模組,被設定來基於一補償係數調整該補償輸出,並對該回授輸出與調整後的該補償輸出執行一相加處理來獲得該控制輸出,其中第一個該控制循環的該補償係數是小於中間或最後的該控制循環的該補償係數。
- 如請求項11所述之系統,其中該感測裝置包括一物理狀態感測器,用以感測該控制對象的該物理狀態,並作為該感測狀態的至少一部分;其中,該操作裝置包括一物理狀態調節器,用以調節該控制對象的該物理狀態;其中該物理狀態感測器包括溫度計、濕度計與濃度計的至少其中之一,該物理狀態調節器包括加熱器、製冷器、加濕器、除濕器與濃度調節裝置的至少其中之一。
- 如請求項11所述之系統,其中該感測裝置包括一運動狀態感測器,用以感測該控制對象的該運動狀態,並作為該感測狀態的至少一部分;其中,該操作裝置包括用以移動該控制對象的一運動驅動器與用以抑制該控制對象的振動的一振動抑制裝置的至少其中之一;其中該運動狀態感測器包括速度計、加速度計、轉速計與追蹤裝置的至少其中之一,該運動驅動器包括馬達與主動式阻尼的至少其中之一。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW110128017A TWI787926B (zh) | 2021-07-30 | 2021-07-30 | 基於機器學習補償回授控制的系統及其控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW110128017A TWI787926B (zh) | 2021-07-30 | 2021-07-30 | 基於機器學習補償回授控制的系統及其控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI787926B true TWI787926B (zh) | 2022-12-21 |
TW202305524A TW202305524A (zh) | 2023-02-01 |
Family
ID=85795127
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW110128017A TWI787926B (zh) | 2021-07-30 | 2021-07-30 | 基於機器學習補償回授控制的系統及其控制方法 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI787926B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI847733B (zh) * | 2023-05-30 | 2024-07-01 | 龍華科技大學 | 利用深度q網路優化電力系統發電機組調度的方法及系統 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040267680A1 (en) * | 2003-06-24 | 2004-12-30 | Palo Alto Research Center Incorporated | Feedback control of problem solving |
CN104756519A (zh) * | 2012-10-17 | 2015-07-01 | 沃尔夫冈·克利佩尔 | 用于控制电声转换器的方法及装置 |
TWI709922B (zh) * | 2018-12-21 | 2020-11-11 | 財團法人工業技術研究院 | 基於模型之機器學習系統 |
-
2021
- 2021-07-30 TW TW110128017A patent/TWI787926B/zh active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040267680A1 (en) * | 2003-06-24 | 2004-12-30 | Palo Alto Research Center Incorporated | Feedback control of problem solving |
CN104756519A (zh) * | 2012-10-17 | 2015-07-01 | 沃尔夫冈·克利佩尔 | 用于控制电声转换器的方法及装置 |
TWI709922B (zh) * | 2018-12-21 | 2020-11-11 | 財團法人工業技術研究院 | 基於模型之機器學習系統 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI847733B (zh) * | 2023-05-30 | 2024-07-01 | 龍華科技大學 | 利用深度q網路優化電力系統發電機組調度的方法及系統 |
Also Published As
Publication number | Publication date |
---|---|
TW202305524A (zh) | 2023-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6774637B2 (ja) | 制御装置及び制御方法 | |
JP6513015B2 (ja) | 機械の動作を制御する方法、および機械の動作を反復的に制御する制御システム | |
US8412357B2 (en) | Process control systems and methods having learning features | |
CN108803324A (zh) | 多关节工业机械臂反步有限时间滑模控制方法 | |
TW202113634A (zh) | 馬達控制裝置及馬達控制方法 | |
CN108803348B (zh) | 一种pid参数的优化方法及pid参数的优化装置 | |
TWI787926B (zh) | 基於機器學習補償回授控制的系統及其控制方法 | |
CN110383187B (zh) | 基于具有滞后的速率限制中继及正弦注入的系统参数识别方法 | |
KR101234797B1 (ko) | 로봇 및 산출된 공분산을 이용한 로봇의 위치 추정 방법 | |
CN111830822A (zh) | 配置与环境交互的系统 | |
CN110023857B (zh) | 伺服控制装置 | |
CN109743002B (zh) | 伺服系统控制器、前馈控制信号确定方法、惯量辨识方法 | |
Abouheaf et al. | Real-time measurement-driven reinforcement learning control approach for uncertain nonlinear systems | |
CN111531543B (zh) | 基于生物启发式神经网络的机器人自适应阻抗控制方法 | |
CN108897221B (zh) | 一种军用电源机箱风机转速控制方法 | |
CN106033189A (zh) | 飞行机器人位姿神经网络预测控制器 | |
CN115685738A (zh) | 基于机器学习补偿反馈控制的系统及其控制方法 | |
CN116394258A (zh) | 一种机械臂轨迹跟踪方法、系统及电子设备 | |
CN118355336A (zh) | 学习过程中鲁棒反馈控制的多面体策略优化的系统和方法 | |
JP7469476B2 (ja) | 制御支援装置、制御システム及び制御支援方法 | |
JP7381751B2 (ja) | 制御支援装置、制御装置及び制御支援方法 | |
JP2009193192A (ja) | モデル予測制御方法およびモデル予測制御装置 | |
CN114193458A (zh) | 一种基于高斯过程在线学习的机器人控制方法 | |
JP7143796B2 (ja) | 制御装置、制御方法および制御プログラム | |
Zhang et al. | An event-triggered predictive control for weight control system |