版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
PAGE華南理工大學(xué)化工學(xué)院2001級(jí)博士生課程設(shè)計(jì)超臨界CO2萃取紫蘇油過程的計(jì)算機(jī)模擬設(shè)計(jì)者:文震指導(dǎo)老師:錢宇2001年12月目錄摘要………………………1Abstract…………………2一設(shè)計(jì)背景……………3二設(shè)計(jì)原理……………3BP神經(jīng)網(wǎng)絡(luò)原理……………………3BP神經(jīng)網(wǎng)絡(luò)算法…………………4BP算法程序流程圖…………………6網(wǎng)絡(luò)參數(shù)的選擇……………………6三實(shí)驗(yàn)部分…………61實(shí)驗(yàn)原料……………62實(shí)驗(yàn)試劑與設(shè)備……………………63實(shí)驗(yàn)方法與流程………7四結(jié)果與討論………71神經(jīng)網(wǎng)絡(luò)的訓(xùn)練……………………82網(wǎng)絡(luò)有效性的驗(yàn)證…………………93網(wǎng)絡(luò)預(yù)測(cè)結(jié)果………10結(jié)論………………………11參考文獻(xiàn)…………………12附錄…………13PAGE1-圖1BP神經(jīng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)BPN的學(xué)習(xí)由以下四個(gè)過程組成:學(xué)習(xí)模式輸入神經(jīng)網(wǎng)絡(luò)后,神經(jīng)元的激活值由輸入層經(jīng)隱含層,在輸出層各神經(jīng)元獲得響應(yīng)的“模式順傳播”過程;然后按減小希望輸出與實(shí)際輸出的誤差方向,從輸出層向隱含層再向輸入層逐層修正各連接權(quán)值的“誤差逆?zhèn)鞑ァ边^程;由“模式順傳播”過程與“誤差逆?zhèn)鞑ァ边^程的交替進(jìn)行的網(wǎng)絡(luò)學(xué)習(xí)訓(xùn)練過程;網(wǎng)絡(luò)全局誤差趨向極小的學(xué)習(xí)收斂過程。當(dāng)全局誤差小于設(shè)定值或?qū)W習(xí)次數(shù)大于設(shè)定值時(shí),均應(yīng)停止訓(xùn)練。然后對(duì)訓(xùn)練好的網(wǎng)絡(luò)進(jìn)行性能測(cè)試,即轉(zhuǎn)入網(wǎng)絡(luò)預(yù)測(cè)階段[3,4]。2誤差反向傳播(BP)算法BP學(xué)習(xí)算法適用于層次型神經(jīng)網(wǎng)絡(luò)。圖1即表示一個(gè)三層學(xué)習(xí)網(wǎng)絡(luò),其中包括輸入層、輸出層和兩者之間的隱含層。同層神經(jīng)元間沒有連接,相鄰層間有全連接,由低層指向高層。設(shè)層次網(wǎng)絡(luò)共有m+1層,輸入層為第0層,輸出層為第m層。令Weq\o(\s\up6(n),\s\do6(jk))表示第n+1層中第j神經(jīng)元與第n中第k單元間的連接權(quán),則神經(jīng)元輸出的計(jì)算公式為:Xeq\o(\s\up6(n+1),\s\do6(j))=f(Weq\o(\s\up6(n),\s\do6(jk))Xeq\o(\s\up6(n),\s\do6(k)))n=0,1,…,m(1)式中f表示S型函數(shù)。本文選擇的S型函數(shù)為:f(u)=1/1(1+exp(-u))當(dāng)選取定L個(gè)訓(xùn)練樣本后,調(diào)整Weq\o(\s\up6(n),\s\do6(jk))的目的是使輸出層神經(jīng)元的實(shí)際輸出和應(yīng)有的已知輸出的平方誤差盡可能小,即使得E=(deq\o(\s\up6(p),\s\do6(j))-Xeq\o(\s\up6(pm),\s\do6(j)))2(2)最小,式中:deq\o(\s\up6(p),\s\do6(j))為第p個(gè)樣本輸入時(shí)網(wǎng)絡(luò)中第j個(gè)單元的已知輸出值;Xeq\o(\s\up6(pm),\s\do6(j))為第p個(gè)樣本輸入時(shí),第m層第j個(gè)單元的實(shí)際輸出值。調(diào)整Weq\o(\s\up6(n),\s\do6(jk))的公式為:Weq\o(\s\up6(pn),\s\do6(jk))=Weq\o(\s\up6(p-1n),\s\do6(k))+△Weq\o(\s\up6(pn),\s\do6(jk))(3)為了減小E,采用使E沿梯度方向下降的方式,即使得修正量△Weq\o(\s\up6(pn),\s\do6(jk))與-δ(E)/δ(Weq\o(\s\up6(pn),\s\do6(jk)))成正比。由式(1))、(2)知,對(duì)于p=1,2,…L,可寫出一般式(-δ(E)/δ(Weq\o(\s\up6(pn),\s\do6(jk))))*2(dj-Xeq\o(\s\up6(n+1),\s\do6(j)))(δXeq\o(\s\up6(n+1),\s\do6(j))/δ(Weq\o(\s\up6(pn),\s\do6(jk))))=2(dj-Xeq\o(\s\up6(n+1),\s\do6(j)))(δf/δ)*(δ/δ(Weq\o(\s\up6(pn),\s\do6(jk))))=2(dj-Xeq\o(\s\up6(n+1),\s\do6(j)))*Xeq\o(\s\up6(n+1),\s\do6(j))(1-Xeq\o(\s\up6(n+1),\s\do6(j)))*Xeq\o(\s\up6(n),\s\do6(k))當(dāng)n+1=m時(shí),令δeq\o(\s\up6(m),\s\do6(j))=(dj-Xeq\o(\s\up6(m),\s\do6(j)))Xeq\o(\s\up6(m),\s\do6(j))(1-Xeq\o(\s\up6(m),\s\do6(j)))(4)由于dj已知,于是δeq\o(\s\up6(m),\s\do6(j))可以求出。因△Weq\o(\s\up6(m-1),\s\do6(jk))=ηδeq\o(\s\up6(m),\s\do6(j))Xeq\o(\s\up6(m-1),\s\do6(k)),0≤η≤1(5)此處δeq\o(\s\up6(m),\s\do6(j))是輸出層的誤差。以后各層誤差是將上一層誤差通過網(wǎng)絡(luò)往下傳播而得,即δeq\o(\s\up6(n),\s\do6(j))=Xeq\o(\s\up6(n),\s\do6(j))(1-Xeq\o(\s\up6(n),\s\do6(j)))δeq\o(\s\up6(n+1),\s\do6(k))Weq\o(\s\up6(n),\s\do6(kj))(6)相應(yīng)的Wjk調(diào)整值為△Weq\o(\s\up6(n),\s\do6(jk))=ηδeq\o(\s\up6(n+1),\s\do6(j))Xeq\o(\s\up6(n),\s\do6(k))(7)因此,BP學(xué)習(xí)算法的具體步驟是:1、賦予各Wjk以較小的隨機(jī)非零初始值;2、輸入一個(gè)樣本和它已知的輸出值;3、按公式(1)計(jì)算出實(shí)際的輸出值;4、按公式(4)至(7)修改連接權(quán)值;5、轉(zhuǎn)入第2步,循環(huán)運(yùn)用L個(gè)樣本作為輸入,直至Weq\o(\s\up6(n),\s\do6(jk))均穩(wěn)定為止。3BP算法程序流程圖4網(wǎng)絡(luò)參數(shù)的選定本文采用的BPN由輸入層,一層隱含層,輸出層組成??紤]到壓力與溫度是影響超臨界CO2萃取紫蘇油過程的主要因素,輸入變量為兩個(gè),分別對(duì)應(yīng)壓力與溫度,輸出變量為1個(gè),即此溫度壓力下所對(duì)應(yīng)的溶解度。隱含層的節(jié)點(diǎn)數(shù)根據(jù)全局誤差最小原則確定。二實(shí)驗(yàn)部分1實(shí)驗(yàn)原料紫蘇子:產(chǎn)自貴陽(yáng)花溪,干燥后粉碎至40目2實(shí)驗(yàn)試劑與設(shè)備CO2:貴陽(yáng)都拉綜合廠,食品級(jí),>99.5%超臨界CO2萃取裝置:中科院地化所超臨界中心研制,萃取器:4L1個(gè),分離器:2L1個(gè),系統(tǒng)最高使用壓力32Mpa,裝置如圖2。CO2鋼瓶2-過濾器3-冷機(jī)4-高壓計(jì)量泵5-換熱器6-萃取器7、8-分離器1、29-轉(zhuǎn)子流量計(jì)10-累計(jì)流量計(jì)圖2超臨界CO2萃取裝置流程圖3實(shí)驗(yàn)方法與流程稱取一定量紫蘇子放入萃取罐中,CO2從鋼瓶出來后,經(jīng)冷機(jī)冷凝,由高壓計(jì)量泵加壓至設(shè)定壓力,由底部進(jìn)入萃取器。循環(huán)水加熱預(yù)熱器、萃取器和分離器至所需溫度,調(diào)節(jié)CO2流量進(jìn)行萃取。SC-CO2攜帶著紫蘇油進(jìn)入分離器,升溫減壓后,紫蘇油從SC-CO2中析出,由分離器下部閥門放出,用接受瓶接受。在實(shí)驗(yàn)中,要保持盡可能小的CO2流速,使紫蘇油在SC-CO2中溶解狀態(tài)接近平衡飽和狀態(tài),這種因設(shè)備限制而采取近似的方法來測(cè)定待萃物的溶解度的方法被普遍使用[5]。紫蘇油在SC-CO2中溶解度S按下式計(jì)算:S=M/Δt×FM-Δt時(shí)間內(nèi)從分離器接受紫蘇油的質(zhì)量(g),F(xiàn)-CO2流速(Kg/h)三結(jié)果與討論紫蘇油在SC-CO2中溶解度測(cè)定結(jié)果如表1。由表1可見,溶解度是溫度與壓力的函數(shù),溫度升高,SC-CO2密度下降,溶解度降低,壓力增大,SC-CO2密度增加,溶解度增大。表1紫蘇油在SC-CO2中溶解度(g/Kg)溫度(℃)萃取壓力(Mpa)151821242730350.791.753.02*4.575.736.47450.411.18*2.564.185.496.34550.280.882.103.645.196.08*650.19*0.631.653.254.845.97750.080.431.252.73*4.725.701紫蘇油在SC-CO2中溶解度的神經(jīng)網(wǎng)絡(luò)的訓(xùn)練1.1隱含層節(jié)點(diǎn)數(shù)的確定目前隱含層節(jié)點(diǎn)個(gè)數(shù)的選擇尚無理論規(guī)則,本文利用誤差最小原則來確定節(jié)點(diǎn)數(shù)。網(wǎng)絡(luò)誤差與隱節(jié)點(diǎn)數(shù)的關(guān)系如圖3。圖3網(wǎng)絡(luò)誤差與隱節(jié)點(diǎn)數(shù)的關(guān)系由圖3可以看出,在節(jié)點(diǎn)數(shù)≤5時(shí),網(wǎng)絡(luò)誤差隨節(jié)點(diǎn)數(shù)增加而下降,當(dāng)節(jié)點(diǎn)數(shù)>5時(shí),網(wǎng)絡(luò)誤差變化不大,節(jié)點(diǎn)為9時(shí),誤差反而略為增加,而且節(jié)點(diǎn)數(shù)越多,網(wǎng)絡(luò)計(jì)算量越大,計(jì)算速度越慢,因此,隱含層節(jié)點(diǎn)數(shù)選擇5為宜。1.2迭代次數(shù)的確定我們將試驗(yàn)樣本隨機(jī)地分為訓(xùn)練集與測(cè)試集,其中訓(xùn)練集25組,測(cè)試集5組,測(cè)試集如表1打“*”數(shù)據(jù)。網(wǎng)絡(luò)誤差與迭代次數(shù)的關(guān)系如圖4。圖4網(wǎng)絡(luò)誤差與迭代次數(shù)的關(guān)系圖4顯示:在迭代次數(shù)<2000時(shí),訓(xùn)練集與測(cè)試集的網(wǎng)絡(luò)誤差急劇下降,但隨著訓(xùn)練的繼續(xù)進(jìn)行,迭代次數(shù)增加,網(wǎng)絡(luò)誤差的下降趨勢(shì)變緩,當(dāng)?shù)螖?shù)>4000后,測(cè)試集的誤差反而略有增加。這可能是因?yàn)槌霈F(xiàn)過擬合的緣故,過擬合產(chǎn)生是由于網(wǎng)絡(luò)模型刻意去契合個(gè)別樣本所致,此時(shí),網(wǎng)絡(luò)對(duì)參加學(xué)習(xí)的樣本可以給出較好的擬合,但對(duì)于不參加訓(xùn)練的樣本,擬合偏差反而增大,因此不管此時(shí)訓(xùn)練集的誤差是否繼續(xù)下降,均應(yīng)停止迭代。綜合訓(xùn)練集與測(cè)試集的網(wǎng)絡(luò)誤差考慮,迭代次數(shù)應(yīng)定為5000為宜。2網(wǎng)絡(luò)有效性的驗(yàn)證對(duì)于測(cè)試集,網(wǎng)絡(luò)輸出與理想輸出(實(shí)際值)的對(duì)比如圖5。圖5網(wǎng)絡(luò)輸出與理想輸出的對(duì)比圖5顯示:網(wǎng)絡(luò)的輸出值與實(shí)際值非常接近,最大相對(duì)誤差為9.30%,最小相對(duì)誤差為0.04%,整個(gè)測(cè)試集的誤差僅為3.27%,這說明網(wǎng)絡(luò)具有較好的模擬效果。此外,此時(shí)訓(xùn)練集的平均誤差為5.40%,比測(cè)試集稍大,這是因?yàn)橛?xùn)練集中含有因試驗(yàn)誤差所致的個(gè)別異常點(diǎn),使得網(wǎng)絡(luò)輸出與這些異常值的誤差較大,從而增加了整個(gè)訓(xùn)練集的平均相對(duì)偏差。這也同時(shí)也表明,神經(jīng)網(wǎng)絡(luò)具有一定的泛化能力,個(gè)別異常樣本出現(xiàn)不影響整個(gè)網(wǎng)絡(luò)的預(yù)報(bào)精度,說明紫蘇油溶解度的神經(jīng)網(wǎng)絡(luò)模型是有效的。3網(wǎng)絡(luò)預(yù)測(cè)結(jié)果利用已建立好的網(wǎng)絡(luò)模型,我們對(duì)萃取參數(shù)為壓力15-30Mpa,步長(zhǎng)為1Mpa,溫度為35-75℃下的溶解度進(jìn)行了預(yù)測(cè)。預(yù)測(cè)結(jié)果如圖6。圖6紫蘇油在SC-CO2中的溶解度規(guī)律圖6清楚地顯示了紫蘇油在SC-CO2中的溶解規(guī)律:壓力是主要因素,溫度是次要因素。在壓力較低階段,紫蘇油幾乎不溶于SC-CO2中,在壓力為22-25MPa階段,溶解度的增幅最大,當(dāng)壓力越過25MPa后,這種增幅明顯趨緩。溫度對(duì)溶解度則呈負(fù)影響,即溫度增加,溶解度下降。在較低壓力下,由于溶解度的絕對(duì)值較小,溫度的影響也較小。在壓力影響最顯著階段,溫度的影響也最大,高溫與低溫之間的溶解度差值最大。隨著壓力的繼續(xù)上升,這種差值變小,說明此時(shí)壓力已開始接近轉(zhuǎn)折壓力,整個(gè)萃取過程將轉(zhuǎn)為溫度正效應(yīng)階段。受設(shè)備所限,無法達(dá)到轉(zhuǎn)折壓力(據(jù)文獻(xiàn)報(bào)道,油脂類物質(zhì)的轉(zhuǎn)折壓力在40Mpa左右[6]),但這也表明神經(jīng)網(wǎng)絡(luò)的模擬結(jié)果是符合溶解度變化的實(shí)際規(guī)律的。四結(jié)論利用間歇萃取裝置,采取靜態(tài)法測(cè)定并計(jì)算了紫蘇油在SC-CO2中的溶解度。建立并驗(yàn)證了紫蘇油在SC-CO2中溶解度的神經(jīng)網(wǎng)絡(luò)模型,該模型能較好地?cái)M合實(shí)際溶解度。(3)利用已建立的溶解度模型,并不需要了解物質(zhì)在SC-CO2中的溶解機(jī)理,即可預(yù)測(cè)未知條件下的溶解度,反映溶解規(guī)律,從而可以為萃取工藝的設(shè)計(jì)與優(yōu)化,以及SCFE裝置的工業(yè)放大數(shù)據(jù)的計(jì)算提供理論依據(jù)。參考文獻(xiàn)[1]Liong.K.K.,FosterN.R.andTingS.S.T.,Solubilityoffattyacidestersinsupercriticalcarbondioxide,Ind.Eng.Chem.Res.,1992,31(1):400-404[2]BambergerT.,EricksonJ.C.,CooneyC.L.,etal.,Measurementandmodelpredictionofsolubilitiesofpurefattyacids,puretriglyceridesandmixturesoftriglyceridesinsupercriticalcarbondioxide,J.Chem.Eng.Data.,1988,33(3):327-333.[3]陳念貽,欽佩,陳瑞亮,模式識(shí)別方法在化學(xué)化工中的應(yīng)用,科學(xué)出版社,2000,北京,71-101[4]閻平凡,張長(zhǎng)水,人工神經(jīng)網(wǎng)絡(luò)與模擬進(jìn)化計(jì)算,清華大學(xué)出版社,2000,北京,10-37[5]馬海樂,吳守一,陳均等,小麥胚芽油在超臨界CO2中溶解度的試驗(yàn)研究,中國(guó)糧油學(xué)報(bào),1997,12(1):38-47[6]NilssonW.B.,Ganglitz.Jr.E.J.andHudsonJ.K.,SolubilitiesofmethylOleate,Oleicacid,Oleylglycerols,andOleylglycerolmixturesinsupercriticalcarbondioxide,J.Am.Oilchem.Soc.,1991,68(2):87-91.附錄程序源代碼一、模塊源代碼1、定義變量OptionExplicit'定義輸入輸出的文件名Publicfile_inputAsStringPublicfile_weightAsString'定義輸入和輸出的數(shù)據(jù)個(gè)數(shù)Publicinput_numberAsIntegerPublicoutput_numberAsInteger'定義每層的結(jié)點(diǎn)數(shù)Publicnodes_of_layer0%,nodes_of_layer1%,nodes_of_layer2%Publiclearning_rateAsSingle'輸入數(shù)值和輸出數(shù)值;'原始數(shù)據(jù)Publicinputdata()AsSinglePublicoutputdata()AsSingle'歸一化以后的數(shù)據(jù)Publicnetinput()AsSinglePublicnetoutput()AsSingle'各層權(quán)重Publicweight_10()AsSinglePublicweight_21()AsSingle'各層的輸出值Publiclayer0_out()AsSinglePubliclayer1_out()AsSinglePubliclayer2_out()AsSinglePublicerror1()AsSinglePublicerror2()AsSinglePublicprogram_stateAsStringPublicregulate_inputAsSinglePublicregulate_outputAsSingle2、重新設(shè)置'本子程序的目的:重置所有的數(shù)組,重新開始計(jì)算Subrefresh_net()Dimi%,j%ReDiminputdata(nodes_of_layer0)AsSingleReDimoutputdata(nodes_of_layer0)AsSingleReDimnetinput(nodes_of_layer0)AsSingleReDimnetoutput(nodes_of_layer0)AsSingleReDimweight_10(nodes_of_layer1,nodes_of_layer0)AsSingleReDimweight_21(nodes_of_layer2,nodes_of_layer1)AsSingleReDimlayer0_out(nodes_of_layer0)AsSingleReDimlayer1_out(nodes_of_layer1)AsSingleReDimlayer2_out(nodes_of_layer2)AsSingleReDimerror1(nodes_of_layer1)AsSingleReDimerror2(nodes_of_layer2)AsSingle3、權(quán)重隨機(jī)賦值'給各層的權(quán)重賦隨機(jī)數(shù)RandomizeFori=1Tonodes_of_layer1Forj=1Tonodes_of_layer0weight_10(i,j)=RndNextjNextiFori=1Tonodes_of_layer2Forj=1Tonodes_of_layer1weight_21(i,j)=RndNextjNextiEndSub4、計(jì)算正向輸出結(jié)果'該子程序用于正向計(jì)算輸出結(jié)果Subcaculate()Dimi%,j%DimftempAsSingle'caculatelayer0Fori=1Tonodes_of_layer0layer0_out(i)=netinput(i)Nexti'caculatelayer1Fori=1Tonodes_of_layer1ftemp=0Forj=1Tonodes_of_layer0ftemp=ftemp+weight_10(i,j)*layer0_out(j)Nextjftemp=1/(1+Exp(-ftemp))layer1_out(i)=ftempNexti'caculatelayer2Fori=1Tonodes_of_layer2ftemp=0Forj=1Tonodes_of_layer1ftemp=ftemp+weight_21(i,j)*layer1_out(j)Nextjftemp=1/(1+Exp(-ftemp))layer2_out(i)=ftempNextiEndSub5、調(diào)整網(wǎng)絡(luò)權(quán)重'本子程序的作用是:對(duì)網(wǎng)絡(luò)的權(quán)重進(jìn)行調(diào)整Subadjust()Dimi%,j%DimftempAsSingle'調(diào)整輸出層的權(quán)重Fori=1Tonodes_of_layer2error2(i)=(netoutput(i)-layer2_out(i))*layer2_out(i)*(1-layer2_out(i))NextiFori=1Tonodes_of_layer2Forj=1Tonodes_of_layer1weight_21(i,j)=weight_21(i,j)+learning_rate*error2(i)*layer1_out(j)NextjNexti'調(diào)整隱含層的權(quán)重Fori=1Tonodes_of_layer1ftemp=0Forj=1Tonodes_of_layer2ftemp=ftemp+weight_21(j,i)*error2(j)Nextjerror1(i)=ftemp*layer1_out(i)*(1-layer1_out(i))NextiFori=1Tonodes_of_layer1Forj=1Tonodes_of_layer0weight_10(i,j)=weight_10(i,j)+learning_rate*layer0_out(j)*error1(i)NextjNextiEndSub6、數(shù)據(jù)的保存Subsave_net()Dimi%,j%OnErrorGoTo1000Openfile_weightForOutputAs#1Print#1,input_numberPrint#1,output_numberPrint#1,nodes_of_layer0,nodes_of_layer1,nodes_of_layer2Print#1,learning_ratePrint#1,regulate_inputPrint#1,regulate_outputFori=1Tonodes_of_layer1Forj=1Tonodes_of_layer0Print#1,weight_10(i,j);Nextj,iPrint#1,Fori=1Tonodes_of_layer2Forj=1Tonodes_of_layer1Print#1,weight_21(i,j);Nextj,iClose#1ExitSub1000:Close#1MsgBox"無法寫入配置文件,無法記錄權(quán)值",vbOKOnly,""Err.ClearEndSub7、自定義函數(shù)Functionload_net()AsStringDimi%,j%OnErrorGoTo1000Openfile_weightForInputAs#1Input#1,input_numberInput#1,output_numberInput#1,nodes_of_layer0,nodes_of_layer1,nodes_of_layer2Input#1,learning_rateInput#1,regulate_inputInput#1,regulate_output'重新定義數(shù)組refresh_netFori=1Tonodes_of_layer1Forj=1Tonodes_of_layer0Input#1,weight_10(i,j)Nextj,iFori=1Tonodes_of_layer2Forj=1Tonodes_of_layer1Input#1,weight_21(i,j)Nextj,iClose#1load_net="OK"ExitFunction1000:Close#1MsgBox"無法打開配置文件,重新開始學(xué)習(xí)",vbOKOnly,""Err.ClearEndFunction二、網(wǎng)絡(luò)初始化及參數(shù)設(shè)置源代碼OptionExplicitPrivateSubForm_Load()Text1.Text=nodes_of_layer1Text2.Text=Format(learning_rate,"0.00")UpDown1.Value=Text1.TextText3.Text=input_numberText4.Text=output_numberUpDown2.Value=Text3.TextUpDown3.Value=Text4.TextText5.Text=Form1.learn_timesText6.Text=Form1.max_error*100IfForm1.method=0ThenOption1.Value=TrueElseOption2.Value=TrueEndSubPrivateSubImage2_Click()UnloadMeEndSubPrivateSubImage5_Click()IfText2.Text<=0OrText2.Text>1ThenMsgBox"學(xué)習(xí)效率的數(shù)值只能在0到1之間,請(qǐng)改正",vbOKOnly+vbExclamation,"提示欄!"Text2.SetFocusEndIfForm1.learn_times=Text5.TextForm1.max_error=Text6.Text/100IfOption1.Value=TrueThenForm1.method=0ElseForm1.method=1learning_rate=Text2.TextIfText1.Text<>nodes_of_layer1OrText3.Text<>input_numberOr_Text4.Text<>output_numberThen'Orlearning_rate<>Text2.TextDimresponse%response=MsgBox("網(wǎng)絡(luò)參數(shù)已被改變,是否要重置網(wǎng)絡(luò)?選定后按[返回]鍵返回。",vbYesNo+vbExclamation,"提示欄!")Ifresponse=vbYesThenForm1.total_times=0input_number=Text3.Textoutput_number=Text4.Textnodes_of_layer1=Text1.Text'考慮到閥值的情況IfCheck1.Value=0Thennodes_of_layer0=Text3.Textnodes_of_layer2=Text4.TextEndIfrefresh_netIfForm1.data_okThensave_netEndIfEndIfEndSubPrivateSubImage6_Click()IfForm1.data_ok=TrueThenrefresh_netsave_netEndIfEndSubPrivateSubText5_Change()Option1.Value=TrueEndSubPrivateSubText6_Change()Option2.Value=TrueEndSubPrivateSubUpDown1_Change()Text1.Text=UpDown1.ValueEndSubPrivateSubUpDown2_Change()Text3.Text=UpDown2.ValueEndSubPrivateSubUpDown3_Change()Text4.Text=UpDown3.ValueEndSub三、學(xué)習(xí)訓(xùn)練窗口源代碼OptionExplicitDimarray1()AsSingleDimarray2()AsSingleDimgroups%Publictotal_timesAsLongPublicdata_okAsBooleanPubliclearn_timesAsLongPublicmax_errorAsSinglePublicmethod%PrivateSubForm_Load()nodes_of_layer0=26nodes_of_layer1=8nodes_of_layer2=1input_number=1output_number=1max_error=0.01learn_times=10000method=0learning_rate=0.9EndSubFunctionload_data(file_dAsString,array1()AsSingle,array2()AsSingle)AsIntegerDimi%,j%OnErrorGoTo1000Openfile_dForInputAs#1Dimgroups%,totalAsLongReDimarray1(1000,input_number)ReDimarray2(1000,output_number)groups=1total=0regulate_input=0regulate_output=0DoWhileNotEOF(1)Fori=1Toinput_numberInput#1,array1(groups,i)Ifregulate_input<Abs(array1(groups,i))Thenregulate_input=Abs(array1(groups,i))total=total+1NextiForj=1Tooutput_numberInput#1,array2(groups,j)Ifregulate_output<Abs(array2(groups,j))Thenregulate_output=Abs(array2(groups,j))total=total+1Nextjgroups=groups+1Loop1000:IfEOF(1)Thenregulate_input=regulate_input*2regulate_output=regulate_output*2groups=total/(input_number+output_number)load_data=groupsClose#1ExitFunctionElseClose#1MsgBox"無法打開數(shù)據(jù)文件",vbOKOnly,""Err.ClearEndIfEndFunctionPrivateSubImage1_Click()Ifdata_okThensave_netEndSubPrivateSubImage2_Click()Dimi%,j%Dimx%IfNotdata_okThenMsgBox"請(qǐng)先打開數(shù)據(jù)文件!",vbOKOnly,""ExitSubEndIfDimftempAsSingleSelectCasemethodCase0:Forx=1Tolearn_timesftemp=0Fori=1TogroupsForj=1Toinput_numbernetinput(j)=array1(i,j)/regulate_inputNextjForj=1Tooutput_numbernetoutput(j)=array2(i,j)/regulate_outputNextjcaculateForj=1Tooutput_numberftemp=ftemp+Abs((layer2_out(j)-netoutput(j))/netoutput(j))NextjadjustNextiDoEventsImage5.Visible=Truetotal_times=total_times+1Text2.Text=total_timesftemp=ftemp/(output_number*groups)Text1.Text=Format(ftemp*100,"0.000000000")&"%"NextxCase1:Doftemp=0Fori=1TogroupsForj=1Toinput_numbernetinput(j)=array1(i,j)/regulate_inputNextjForj=1Tooutput_numbernetoutput(j)=array2(i,j)/regulate_outputNextjcaculateForj=1Tooutput_numberftemp=ftemp+Abs((layer2_out(j)-netoutput(j))/netoutput(j))NextjadjustNextiftemp=ftemp/(output_number*groups)Text2.Text=total_timesText1.Text=Format(ftemp*100,"0.000000")&"%"I
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- DB45T 2645-2023 機(jī)載激光雷達(dá)遙感森林參數(shù)建模地面樣地調(diào)查技術(shù)規(guī)程
- 會(huì)計(jì)類實(shí)習(xí)報(bào)告范文合集五篇
- 學(xué)科體系與認(rèn)知體系
- DB45T 2531-2022 高速公路熱拌瀝青混合料超薄磨耗層技術(shù)規(guī)范
- 2024年度連鎖加盟經(jīng)營(yíng)合同(含商標(biāo)使用)
- 小學(xué)六年級(jí)語文教學(xué)工作計(jì)劃
- 2025訂貨合同范本范文
- 2024至2030年中國(guó)冰棍槽行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025房屋自愿贈(zèng)與合同
- 2025綠化工程施工合同
- 自動(dòng)控制原理全套ppt課件(完整版)
- GB 38508-2020 清洗劑揮發(fā)性有機(jī)化合物含量限值
- 吊裝作業(yè)施工方案(模板)
- 初中綜合實(shí)踐課程標(biāo)準(zhǔn)
- 日本江崎格力高歷史
- 初物管理辦法及規(guī)定
- 代扣服務(wù)協(xié)議
- SPSS統(tǒng)計(jì)軟件在考試成績(jī)分析中的應(yīng)用
- 某燃煤采暖鍋爐煙氣除塵系統(tǒng)設(shè)計(jì)1
- 中心試驗(yàn)室標(biāo)準(zhǔn)化管理辦法
- 龍王廟煤礦消防工作匯報(bào)
評(píng)論
0/150
提交評(píng)論