❶ 如何連結神經元
一種用於實時過程的神經網路在線自學習逆控制演算法
發布時間:2004.11.10 閱覽次數:2280 作者:彭一江 單位:長沙天海分析檢測自動化有限公司
摘 要: 本文探討了神經網路控制應用於實時過程的實現問題,提出一種網路訓練與控制分離並行的演算法。該演算法在對過程的逆模型進行實時在線自學習的同時,對過程實施逆控制,實現對復雜對象的自學習、自適應控制功能。文中還給出了一個計算機模擬實例的結果。
關鍵詞:實時過程;神經網路;在線自學習;逆控制。
ONE NEURAL NETWORK INVERSE CONTROL ALGORITHM
WITH ON-LINE SELF-LEARNING FOR REAL-TIME PROCESSES Abstract : In this paper , the study on the realization of application of neural network control to the real-time process is made and the algorithm with separated and parallel method for neural network training and control is advanced . Useing this algorithm,the on-line learning to the inverse model of real-time process can be performed, and concurrently , the inverse control can be performed in the process. It can realize functions of self-learning and adaptive control to complex processes.The result of one example of the computer simulation of the system is presented .
Key words: real-time process ; neural network ; on-line self-learning ; inverse control.
1 引言
近年來,人工神經網路 (簡稱神經網路或NN) 越來越多地應用於工業自動化控制領域。由於神經網路能夠充分逼近任意復雜的非線性關系和能夠學習與適應嚴重不確定性系統的動態特性,因此,採用基於NN人工智慧控制方法,引入自學習、自適應功能而構成的實時系統,在處理那些實時性要求高且難於用模型或規則描述、隨機性事件多、非線性嚴重、存在多個不同類型輸入和輸出的實時過程方面,顯示了極大的優越性。眾所周知,由於神經網路的學習需要耗費較長的時間,其實時應用策略仍是控制領域研究的熱點。
通常,神經網路在過程式控制制中用作控制器模仿器或過程模仿器,構成基於神經網路的控制系統。目前,這種控制系統常採用軟體方法實現。然而,神經網路的學習過程是一個慢過程,而作為一個實時系統,其主要目標是保證系統響應的及時性,必須同時滿足邏輯正確性和時間約束兩個條件。因此,對於快速有時甚至是慢速的實時過程,特別是對於有強實時任務(即要求該任務在時限內完成,否則其結果將失去可用性的任務)的過程,神經網路的學習慢速性是NN實時控制演算法實現的難點。一般採用NN離線學習與在線控制相結合的方法。在線學習與控制的方法大多局限於在一個控制周期內串列完成的演算法。本文在NN軟體實現上結合中斷處理技術,使網路的學習與控制分離和並行嵌套,提出一種用於實時過程的神經網路在線自學習逆控制演算法,用以處理難於建立對象模型 (包括快速和強實時) 的過程。
2 基於NN的實時過程式控制制原理
實時過程式控制制系統是指該系統實時地從外界獲得被控系統的當前狀態,進行預定的處理,並根據處理結果對外界被控系統進行及時控制,使其處於要求的狀態下。實時過程式控制制系統的模型是一個反饋環結構。如圖 1 所示。
2.1 系統NN基本結構
採用具有非線性特性函數的神經元及多層非循環連接模式的神經網路(NN)和反向傳播(B-P)學習演算法。
根據一般實時過程的特點,設神經網路輸入層共取n個神經元,分別代表輸入端x1,x2,···xi···xn。完成將外部各工藝參數輸入神經網路的功能;中間層取1∽2 層共設2n+m個神經元,代表神經網路的感知層;輸出層取m 個神經元,代表過程的輸出參數y1,y2,···yj,···ym。從外部特性看,網路相當於一個n輸入m輸出的多變數傳遞函數。而其內部特性卻充分反應了對象的動力學特性。系統NN基本結構如圖 2 所示。其中:(a)網路連接模型, (b)神經元模型。
在圖2所示的神經網路中,某一個神經元的結構如圖2(b)所示。其中Xi為輸入信息,Wi為權值,θi 為閾值,F是表示神經元活動的特性函數,F刻劃了神經元輸入信號與
輸出信息之間對應的關系 。
2.2 網路權值學習演算法
神經元特性函數取S型函數,即:
F(X)= 1/(1+e-x) (2-1)
網路採用的B-P演算法是前向計算輸出與反向傳播誤差相結合的進行權值調整的過程。
設網路中第i層某個神經元與後一層第j層的連接權值為W[ij],輸入為X[j] ,輸出為X[i]'。由圖3可得:
Xi '=F(Xi )=1/(1+e-Xi+θi) (2-2)
Xi =∑Wij ·Xj (2-3)
誤差反傳採用改進的Delta權值調整公式[4] :
Wij(n+1)=Wij(n)+ΔWij(n+1) (2-4)
ΔWij(n+1)=η·δj·X'i+α(ΔWij(n)) (2-5)
式中:
η為學習率(取η=0.1~0.9);
α為動量系數(取α=0.1~0.8);
δj為神經元輸出誤差。
採用基於系統誤差梯度的方法調整權值 [4] ,即:
當 j 為輸出層時:
δj=-( Xi '-Xj)·X'j·(1-X'j) (2-6)
當j為中間層時:
δj=(∑δk·Wjk)·X'j·(1-X'j) (2-7)
2.3 NN在線學習控制結構
系統以過程輸出量Y為控制對象,以Y=Ysr(給定常數)為控制目標,以 U過程式控制制量,以事先離線進行過權值初始化訓練、並且在生產過程中不斷進行在線學習的神經網路系統辯識模型NN為控制模型,並由此辯識模型計算某一時刻所需控制量U值。構成基於神經網路的實時控制系統,實現對Yr的自動跟蹤。系統控制原理框圖如圖3所示。圖3中,P為實時過程的實際模型;BP為輸出誤差向網路內部連接權值反傳調整權值的演算法。S為網路權值傳送軟體開關。
2.4 過程模型在線自學習
系統首先採用離線訓練的方式形成網路的連接權值矩陣初始值,包括建立各種不同神經網路模型結構參數,以提高在線學習速度。
系統投入實時控制後,程序在一定條件下啟動NN自學習功能,將實時採集的工藝參數通過特定處理後,作為訓練樣本輸入網路,進行連接權值的調整。由於NN模型不需要知道對象的任何先驗知識,在限定NN拓撲下,其連接權值不僅規定了模型的參數,同時也規定了模型的結構性質,因此,用這種方式訓練出來的的神經網路模型,可以充當對象的模仿器[1]。系統不斷地根據生產過程中的各種相關參數,反復調整網路權值,在線建立過程逆模型。
2.5 模型逆控制
過程模型模仿網路NN2投入實時控制前經過離線訓練,使系統在投入控制後的初始階段有較好的穩定性並使NN2能較快地完成以後的在線學習。在NN2不斷學習和NN1調節控制量的過程中,NN2輸入輸出特性能夠越來越准確地模擬實際過程模型的輸入輸出特性。經若干個模型學習周期,NN2 學習誤差達到期望值,NN2 的連接權值暫時固定下來。當過程輸出與系統設定的偏差大於期望值時,NN2的連接權值傳送給調節器模仿器NN1,作為調節器計算新的控制量,同時,啟動在線學習開關 S,NN2開始進行新的學習。當系統產生控制中斷而進入控制周期,系統先對過程狀態參數進行一次實時檢測,根據當前的過程狀態由NN1對控制量進行調節,完成一次在特定工藝狀態參數下的控制量的動態設定。
當NN充分接近實際模型,即:NN2=P-1時,由於NN1=NN2,NN1·P=P-1·P=1,則Y=Ysr,即系統可實現對給定目標值的跟蹤。
3 軟體實現
對實時控制系統而言,軟體設計應著重考慮NN學習演算法、樣本形成、網路推理之間的時序問題。系統採用內部中斷與外部中斷相結合的方式處理時序問題。軟體設計兩個中斷處理子程序,其中一個為定時與采樣中斷處理子程序,
採用修改機器內部定時中斷向量的方法,另一個為實時控制及樣本提取中斷處理子程序。採用外部脈沖信號產生中斷申請的響應方法。網路學習則在主程序的大循環中進行。
系統投運前,NN通過離線訓練獲初始知識。離線訓線的樣本可以利用工藝過程中的歷史數據產生,或由該領域專家的知識形成。
實時控制中NN以在線學習方式運行。學習是一個的大循環,不斷以樣本子集緩沖區的實時樣本對網路進行訓練。而樣本緩沖區的實時樣本的刷新是由外部中斷服務子程序根據樣本提取邏輯進行的,系統實時地將實際過程中產生的新樣本替換樣本緩沖區中最先前的樣本。同時,一旦時間達到某一設定的周期,系統將樣本緩沖區的樣本存入硬碟作為歷史樣本供以後使用。內部中斷服務子程序採集的現場數據供顯示用,並且提供樣本提取邏輯所需的計時信息。採用這種大循環進行NN學習;內部時鍾定時中斷進行數據採集與處理並提供樣本獲取和控制時序邏輯;外部中斷請求進行樣本提取和實時控制的程序結構,充分利用了CPU的大量空閑時間,即照顧了學習的耗時性,又滿足了數據採集的及時性和控制的適時性。實時控制流程及中斷服務子程序見圖4。
其中:(a) 實時控制主模塊; (b) 實時數據採集及定時中斷處理子程序;(c)控制輸出及樣本提取中斷處理子程序。
4 計算機模擬實例結果
計算機模擬實驗程序用C++編制,在486微機上運行。
系統模擬所用數學模型為螺紋鋼筋軋後控冷工藝過程的一個多輸入單輸出 (根據生產實際數據產生的回歸分析模型)[5,6]:
Ts= -4.1·Qy -156.8·t -4.6·Tw +29.3·Φ+0.21·Tf +50·C +850 ( 4-1)
其中過程輸出為Y = Ts ,目標值Yr = 620 。
設NN輸入 X= { t , Tw , Φ , Tf , C , Ts } ;NN輸出U = Qy 。
網路為6×12×12×1結構,運行前離線訓練重復次數為7000次,學習時間為8分鍾,網路輸出總誤差為0.00005。經過訓練的NN用於模擬運行,模擬在線自學習控制,學習 時間小於0.5秒。模擬運行結果見表1。表中數據經歸一化處理,以保證網路輸出值在(0,1) 區間內;其中Qy、Ts為初始值,Qy'、Ts'為執行的結果值。
由表1可知,系統能夠在鋼筋終軋溫度Tf變化時,自動改變水量設定值Qy,使其自回火溫度穩定在目標值Tsr=602℃ (誤差小於1℃)左右。模擬結果表明,這種基於NN模型自學習的逆控制方法,有較強的自學習、自適應能力。在處理一般非線性、隨機性、時變及多變數輸入輸出的實時過程方面,有較好的開發應用前景。
參 考 文 獻
[1] 周節其,徐建閩. 神經網路控制系統的研究與展望. 控制理論與應用,1992,9(6):569∽575
[2]焦李成. 神經網路的應用與實現. 西安:西安電子科技大學大學出版社.1995,261~264
[3] 袁曾任,郭新鋼. 基於B-P演算法的神經網路作為離散時間非線性對象的逆控制, 電氣自動化,1994,(4):39~41
[4]包約翰著. 自適應模式識別與神經網路. 馬頌德等譯. 北京:科學出版社.1992,109~125
[5] 張泰山,彭一江. 基於神經網路的鋼筋軋後冷卻自學習控制系統 .中國有色金屬學報,1995 ,Vol.5, Suppl.4, 380~384
[6] 彭一江. 基於神經網路的鋼筋軋後冷卻智能控制系統 .中南工業大學碩士學位論文. 長沙. 1996
❷ 輸入循環的三種主要控制方式
1.查詢方式、2.中斷方式、3.DMA方式。
循環神經網路(RNN/recurrentneuralnetwork)是一類人工神經網路,其可以通過為網路添加額外的權重來在網路圖(networkgraph)中創建循環,以便維持一個內部狀態。為神經網路添加狀態的好處是它們將能在序列預測問題中明確地學習和利用背景信息(context)。
這類問題包括帶有順序或時間組件的問題。在這篇文章中,你將踏上了解用於深度學習的循環神經網路的旅程。在讀完這篇文章後,你將了解:用於深度學習的頂級循環神經網路的工作方式,其中包括LSTM、GRU和NTM、頂級RNN與人工神經網路中更廣泛的循環(recurrence)研究的相關性。
RNN研究如何在一系列高難度問題上實現了當前最佳的表現。注意,我們並不會覆蓋每一種可能的循環神經網路,而是會重點關注幾種用於深度學習的循環神經網路(LSTM、GRU和NTM)以及用於理解它們的背景。
那就讓我們開始吧!概述我們首先會設置循環神經網路領域的場景;然後,我們將深入了解用於深度學習的LSTM、GRU和NTM;之後我們會花點時間介紹一些與用於深度學習的RNN相關的高級主題。