




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、 人工智能的主要內(nèi)容和方法人工智能(ArtificialIntelligence,簡稱AI)是50年代興起的一門新興邊緣學(xué)科,二十世紀(jì)七十年代以來被稱為世界三大尖端技術(shù)之一(空間技術(shù)、能源技術(shù)、人工智能),也被認(rèn)為是二十一世紀(jì)三大尖端技術(shù)之一(基因工程、納米科學(xué)、人工智能).廣義的講,人工智能是關(guān)于人造物的智能行為,而智能行為包括知覺、推理、學(xué)習(xí)、交流和在復(fù)雜環(huán)境中的行為。人工智能的一個(gè)長期目標(biāo)是發(fā)明出可以像人類一樣或能更好地完成以上行為的機(jī)器;另一個(gè)目標(biāo)是理解這種智能行為是否存在于機(jī)器、人類或其他動(dòng)物中。目前能夠用來研究人工智能的主要物質(zhì)手段以及能夠?qū)崿F(xiàn)人工智能技術(shù)的機(jī)器就是計(jì)算機(jī),人工智能
2、的發(fā)展歷史是和計(jì)算機(jī)科學(xué)與技術(shù)的發(fā)展史聯(lián)系在一起的。除了計(jì)算機(jī)科學(xué)以外,人工智能還涉及信息論、控制論、自動(dòng)化、仿生學(xué)、生物學(xué)、心理學(xué)、數(shù)理邏輯、語言學(xué)、醫(yī)學(xué)和哲學(xué)等多門學(xué)科。一、AI的主要內(nèi)容人工智能研究的主要內(nèi)容包括:知識(shí)表示、自動(dòng)推理和搜索方法、機(jī)器學(xué)習(xí)和知識(shí)獲取、知識(shí)處理系統(tǒng)、自然語言理解、計(jì)算機(jī)視覺、智能機(jī)器人、自動(dòng)程序設(shè)計(jì)等方面。知識(shí)表示是人工智能的基本問題之一,推理和搜索都與表示方法密切相關(guān)。常用的知識(shí)表示方法有:邏輯表示法、產(chǎn)生式表示法、語義網(wǎng)絡(luò)表示法和框架表示法等。常識(shí),自然為人們所關(guān)注,已提出多種方法,如非單調(diào)推理、定性推理就是從不同角度來表達(dá)常識(shí)和處理常識(shí)的.問題求解中的自
3、動(dòng)推理是知識(shí)的使用過程,由于有多種知識(shí)表示方法,相應(yīng)地有多種推理方法。推理過程一般可分為演繹推理和非演繹推理。謂詞邏輯是演繹推理的基礎(chǔ)。結(jié)構(gòu)化表示下的繼承性能推理是非演繹性的.由于知識(shí)處理的需要,近幾年來提出了多種非演繹的推理方法,如連接機(jī)制推理、類比推理、基于示例的推理、反繹推理和受限推理等。搜索是人工智能的一種問題求解方法,搜索策略決定著問題求解的一個(gè)推理步驟中知識(shí)被使用的優(yōu)先關(guān)系??煞譃闊o信息導(dǎo)引的盲目搜索和利用經(jīng)驗(yàn)知識(shí)導(dǎo)引的啟發(fā)式搜索。啟發(fā)式知識(shí)常由啟發(fā)式函數(shù)來表示,啟發(fā)式知識(shí)利用得越充分,求解問題的搜索空間就越小。典型的啟發(fā)式搜索方法有A*、AO*算法等.近幾年搜索方法研究開始注意那
4、些具有百萬節(jié)點(diǎn)的超大規(guī)模的搜索問題。機(jī)器學(xué)習(xí)是人工智能的另一重要課題.機(jī)器學(xué)習(xí)是指在一定的知識(shí)表示意義下獲取新知識(shí)的過程,按照學(xué)習(xí)機(jī)制的不同,主要有歸納學(xué)習(xí)、分析學(xué)習(xí)、連接機(jī)制學(xué)習(xí)和遺傳學(xué)習(xí)等。知識(shí)處理系統(tǒng)主要由知識(shí)庫和推理機(jī)組成。知識(shí)庫存儲(chǔ)系統(tǒng)所需要的知識(shí),當(dāng)知識(shí)量較大而又有多種表示方法時(shí),知識(shí)的合理組織與管理是重要的.推理機(jī)在問題求解時(shí),規(guī)定使用知識(shí)的基本方法和策略,推理過程中為記錄結(jié)果或通信需設(shè)數(shù)據(jù)庫或采用黑板機(jī)制。如果在知識(shí)庫中存儲(chǔ)的是某一領(lǐng)域(如醫(yī)療診斷)的專家知識(shí),則這樣的知識(shí)系統(tǒng)稱為專家系統(tǒng)。為適應(yīng)復(fù)雜問題的求解需要,單一的專家系統(tǒng)向多主體的分布式人工智能系統(tǒng)發(fā)展,這時(shí)知識(shí)共享、
5、主體間的協(xié)作、矛盾的出現(xiàn)和處理將是研究的關(guān)鍵問題。二、AI的研究方法既為人工智能的最終研究目標(biāo)打好基礎(chǔ),又能創(chuàng)造出短期效益,這是選擇人工智能研究最佳方法的標(biāo)準(zhǔn)。盡管人工智能已經(jīng)創(chuàng)造了一些實(shí)用系統(tǒng),但這些遠(yuǎn)未達(dá)到人類的智能水平。在過去的幾十年里涌現(xiàn)出了大量的方法,大致可分為兩大類。第一類包括符號(hào)處理的方法。它們基于Newell和Simon的物理符號(hào)系統(tǒng)的假說。大多數(shù)被稱為“經(jīng)典的人工智能”均在其指導(dǎo)之下。這類方法中,突出的方法是將邏輯操作應(yīng)用于說明性知識(shí)庫。這種風(fēng)格的人工智能運(yùn)用說明語句來表達(dá)問題域的“知識(shí),這些語句基于或?qū)嵸|(zhì)上等同于一階邏輯中的語句,采用邏輯推理可推導(dǎo)這種知識(shí)的結(jié)果。這種方法有
6、許多變形,包括那些強(qiáng)調(diào)對(duì)邏輯語言中定義域的形式公理化的角色的變形。當(dāng)遇到“真正的問題”,這一方法需要掌握問題域的足夠知識(shí),通常就稱作基于知識(shí)的方法。在大多數(shù)符號(hào)處理方法中,對(duì)需求行為的分析和為完成這一行為所做的機(jī)器合成要經(jīng)過幾個(gè)階段。最高階段是知識(shí)階段,機(jī)器所需知識(shí)在這里說明。接下來是符號(hào)階段,知識(shí)在這里以符號(hào)組織表示(例如:列表可用列表處理語言LISP來描述),同時(shí)在這里說明這些組織的操作。接著,在更低級(jí)的階段里實(shí)施符號(hào)處理.多數(shù)符號(hào)處理采用自上而下的設(shè)計(jì)方法,從知識(shí)階段向下到符號(hào)和實(shí)施階段.第二類包括所謂的“子符號(hào)”方法。它們通常采用自下而上的方式,從最低階段向上進(jìn)行。在最低層階段,符號(hào)的
7、概念就不如信號(hào)這一概念確切了。在子符號(hào)方法中突出的方法是“Animatapproach”。偏愛這種方式的人們指出,人的智能經(jīng)過了在地球上十億年或更長時(shí)間的進(jìn)化過程,認(rèn)為為了制造出真正的智能機(jī)器,我們必須沿著這些進(jìn)化的步驟走。因此,我們必須集中研究復(fù)制信號(hào)處理的能力和簡單動(dòng)物如昆蟲的支配系統(tǒng),沿著進(jìn)化的階梯向上進(jìn)行。這一方案不僅能在短期內(nèi)創(chuàng)造實(shí)用的人造物,又能為更高級(jí)智能的建立打好堅(jiān)實(shí)的基礎(chǔ)。第二類方法也強(qiáng)調(diào)符號(hào)基礎(chǔ)。在物理基礎(chǔ)假說中,一個(gè)agent不采用集中式的模式而運(yùn)用其不同的行為模塊與環(huán)境相互作用來進(jìn)行復(fù)雜的行為。機(jī)器與環(huán)境的相互作用產(chǎn)生了所謂的“自然行為(emergentbehavior
8、)”.一個(gè)agent的功能可視作該系統(tǒng)與動(dòng)態(tài)環(huán)境密切相互作用的自然屬性。agent本身對(duì)其行為的說明并不能解釋它運(yùn)行時(shí)所表現(xiàn)的功能;相反,其功能很大程度上取決于環(huán)境的特性。不僅要?jiǎng)討B(tài)的考慮環(huán)境,而且環(huán)境的具體特征也要運(yùn)用于整個(gè)系統(tǒng)之中.由子符號(hào)派制造的著名樣品機(jī)器包括“神經(jīng)網(wǎng)絡(luò)(Neuralnetwork)。根據(jù)模擬生物進(jìn)化方面的進(jìn)程,一些有意思的機(jī)器應(yīng)運(yùn)而生,包括:Sexualcrossover、Mutation和Fitness-proportionalreproduction。其他自下而上,含animat風(fēng)格的方法是基于控制理論和動(dòng)態(tài)系統(tǒng)地分析。介于自上而下和自下而上之間的方法是一種“環(huán)境
9、自動(dòng)機(jī)(situatedautomata)”的方法。Kaelbling和Rosenschein建議編寫一種程序設(shè)計(jì)語言來說明agent在高水平上所要求的行為,并編寫一編譯程序,以從這種語言編寫的程序中產(chǎn)生引發(fā)行為的線路.RBF網(wǎng)絡(luò)RBF網(wǎng)絡(luò) 徑向基函數(shù)神經(jīng)網(wǎng)絡(luò)MATLAB仿真一、RBF網(wǎng)絡(luò)的工作原理徑向基函數(shù)神經(jīng)網(wǎng)絡(luò)(RadialBasisFunctionNeuralNetwork,RBF)是種前饋神經(jīng)網(wǎng)絡(luò),一般為三層結(jié)構(gòu),如下圖:b0叩x-c1|)蟻x-ch|)bm上圖所示為nhm結(jié)構(gòu)的RBF網(wǎng)絡(luò),即網(wǎng)絡(luò)具有n個(gè)輸入,h個(gè)隱節(jié)點(diǎn),m個(gè)輸出。其中x=(Xx2,Xn)TERn為網(wǎng)絡(luò)輸入矢量,We
10、Rnxm為輸出權(quán)矩陣,b0.bm為輸出單元偏移,y=(yy2.ym)T為網(wǎng)絡(luò)輸出,:(*)為第i個(gè)隱節(jié)點(diǎn)的激活函數(shù)。圖中輸出層節(jié)點(diǎn)中的工表示輸出層神經(jīng)元采用線性激活函數(shù)(輸出神經(jīng)元也可以采用其他非線性激活函數(shù),如Sigmoidal函數(shù))。RBF網(wǎng)絡(luò)的最顯著的特點(diǎn)是隱節(jié)點(diǎn)的基函數(shù)采用距離函數(shù)(如歐式距離),并使用徑向基函數(shù)(如Gaussian高斯函數(shù))作為激活函數(shù)。徑向基函數(shù)關(guān)于n維空間的一個(gè)中心點(diǎn)具有徑向?qū)ΨQ性,而且神經(jīng)元的輸入離該中心點(diǎn)越遠(yuǎn),神經(jīng)元的激活程度就越低。隱節(jié)點(diǎn)的這個(gè)特性常被稱為“局部特性。因此RBF網(wǎng)絡(luò)的每個(gè)隱節(jié)點(diǎn)都具有一個(gè)數(shù)據(jù)中心,上圖中c.就是網(wǎng)絡(luò)中第ii個(gè)隱節(jié)點(diǎn)的數(shù)據(jù)中心值
11、,丨丨*I丨則表示歐式范數(shù)。徑向基函數(shù).(*)可以取多種形式:Gaussian函數(shù)(t)=e-t22iReflectedsigmoidal函數(shù)(t)=1/(1+et22)i逆Multiquadric函數(shù)(t)=1/(t2+2)a,a0ii以上三式中的J稱為該基函數(shù)的擴(kuò)展常數(shù)(Spread)或?qū)挾取o@然片越小,徑向基函數(shù)的寬度就越小,基函數(shù)就越具有選擇性.與輸出節(jié)點(diǎn)相連的隱層第i個(gè)隱節(jié)點(diǎn)的所有參數(shù)可用三元組(c.8.3)i,i,i表示。每個(gè)隱層神經(jīng)元都對(duì)輸入x產(chǎn)生一個(gè)響應(yīng)(|x-cII),且響應(yīng)特性成徑i.向?qū)ΨQ(即是一個(gè)個(gè)同心圓),而神經(jīng)網(wǎng)絡(luò)的輸出則是所有這些響應(yīng)的加權(quán)和,因此第k個(gè)輸出可表示
12、為y=*3(|x-cII)kii.=1由于每個(gè)神經(jīng)元具有局部特性,最終整個(gè)RBF網(wǎng)絡(luò)也呈現(xiàn)“局部映射特性,即RBF網(wǎng)絡(luò)是一種局部相應(yīng)神經(jīng)網(wǎng)絡(luò)。這意味著如果神經(jīng)網(wǎng)絡(luò)有較大的輸出,必定激活了一個(gè)或多個(gè)隱節(jié)點(diǎn)。二、RBF網(wǎng)絡(luò)的聚類學(xué)習(xí)算法RBF網(wǎng)絡(luò)的學(xué)習(xí)算法應(yīng)該解決以下問題:結(jié)構(gòu)設(shè)計(jì),即如何確定網(wǎng)絡(luò)隱節(jié)點(diǎn)數(shù)h;確定各徑向基函數(shù)的數(shù)據(jù)中心c.及擴(kuò)展常數(shù)5.;輸出權(quán)值修正。ii如果知道了網(wǎng)絡(luò)的隱節(jié)點(diǎn)數(shù)、數(shù)據(jù)中心和擴(kuò)展常數(shù),RBF網(wǎng)絡(luò)從輸入到輸出就成了一個(gè)線性方程組,此時(shí)權(quán)值學(xué)習(xí)可采用最小二乘法。RBF網(wǎng)絡(luò)最常用的學(xué)習(xí)算法有聚類方法、梯度訓(xùn)練方法及OLS優(yōu)選算法。下面將詳細(xì)介紹最經(jīng)典的RBF網(wǎng)絡(luò)學(xué)習(xí)算法一
13、聚類方法,并進(jìn)行MATLAB仿真。聚類方法的思路是先用無監(jiān)督學(xué)習(xí)(用kmeans算法對(duì)樣本輸入進(jìn)行聚類)方法確定RBF網(wǎng)絡(luò)中h個(gè)隱節(jié)點(diǎn)的數(shù)據(jù)中心,并根據(jù)各數(shù)據(jù)中心之間的距離確定隱節(jié)點(diǎn)的擴(kuò)展常數(shù),然后用有監(jiān)督學(xué)習(xí)(梯度法)訓(xùn)練各隱節(jié)點(diǎn)的輸出權(quán)值.假設(shè)X,x2,.Xn為樣本輸入,相應(yīng)的樣本輸出(教師信號(hào))為y,y2,.疋網(wǎng)絡(luò)中第j個(gè)隱節(jié)點(diǎn)的激活函數(shù)為j(*)。k為迭代次數(shù),第k次迭代時(shí)的聚類中心為c1(k),c2(k),ch(k),相應(yīng)的聚類域?yàn)?(k),2(k),h(k)。k一means聚類算法確定RBF網(wǎng)絡(luò)數(shù)據(jù)中心c.和擴(kuò)展常數(shù),的步驟如h.下:算法初始化:選擇h個(gè)不同的初始聚類中心,并令k=
14、l.初始聚類中心的方法很多,比如,從樣本輸入中隨機(jī)選取,或者選擇前h個(gè)樣本輸入,但這h個(gè)初始數(shù)據(jù)中心必須取不同值。計(jì)算所有樣本輸入與聚類中心的距離IIXc.(k)II,i=1,2,TOC o 1-5 h zj.h,j=1,2,,N.對(duì)樣本輸入Xj按最小距離原則對(duì)其進(jìn)行分類:即當(dāng).(xj)=m.nIjjiIXc.(k)II,i=1,2,h時(shí),X.即被歸為第i類,即X.eo.(k)。j.jj.(4)重新計(jì)算各類的新的聚類中心:c(k+1)=Yx,i=1,2,hiNixwj(k)式中,N.為第i個(gè)聚類域3(k)中包含的樣本數(shù).ii(5)如果c.(k+1)HCj(k),轉(zhuǎn)到步驟(2),否則聚類結(jié)束,轉(zhuǎn)
15、到步驟(6)。(6)根據(jù)各聚類中心之間的距離確定各隱節(jié)點(diǎn)的擴(kuò)展常數(shù)。隱節(jié)點(diǎn)的擴(kuò)展常數(shù)取&.=kd.,其中d為第i個(gè)數(shù)據(jù)中心與其他最近的數(shù)據(jù)中心之間的距iii離,即d.=minIlcc.(k)|,K稱重疊系數(shù).i一旦各隱節(jié)點(diǎn)的數(shù)據(jù)中心和擴(kuò)展常數(shù)確定了,輸出權(quán)矢量3=(3,32,.,3h)T就可以用有監(jiān)督學(xué)習(xí)方法(如梯度法)訓(xùn)練得到,但更簡潔的方法是使用最小二乘方法(LMS)直接計(jì)算。假定當(dāng)輸入為X,i=1,2,N時(shí),第ji個(gè)隱節(jié)點(diǎn)的輸出如下式所示:h二(llx-cII)ijjij則隱層輸出陣為H=hij則HWRNxho如果RBF網(wǎng)絡(luò)的當(dāng)前權(quán)值為3=(332,3h)T(待定),則對(duì)所有樣本,網(wǎng)絡(luò)輸
16、出矢量為y=h令e=|y-J;II為逼近誤差,則如果給定了教師信號(hào)y=(yy2.ym)T并確定了H,便可通過最小化下式求出網(wǎng)絡(luò)的輸出權(quán)值:e=lly-站II=lly-HII通常3可用最小二乘法求得w=H+y式中,h+為H的偽逆,即AAaAH+=(HtH)-iHt三、RBF網(wǎng)絡(luò)MATLAB仿真實(shí)例題目:基于聚類方法的y=sinx函數(shù)逼近解:RBF網(wǎng)絡(luò)隱層采用標(biāo)準(zhǔn)Gaussian徑向基函數(shù),輸出層采用線性激活函數(shù),即f(u)=u。數(shù)據(jù)中心和擴(kuò)展常數(shù)用聚類方法得到,輸出權(quán)值和偏移采用廣義逆方法求解。隱節(jié)點(diǎn)數(shù)(即聚類數(shù))取10,初始聚類中心取前10個(gè)訓(xùn)練樣本。MATLAB程序:訓(xùn)練樣本數(shù)%測(cè)試樣本數(shù)樣
17、本輸入維數(shù)%隱節(jié)點(diǎn)(聚類樣本)數(shù)%隱節(jié)點(diǎn)重疊系數(shù)Kfunctionmain()SamNum=200;TestSamNum=201InDim=1;ClusterNum=10;Overlap=l。0;根據(jù)目標(biāo)函數(shù)獲得樣本輸入輸出rand(state,sum(l00clock);resetsthegeneratortoadifferentstateeachtime且state不同產(chǎn)生的偽隨機(jī)序列順序不同SamIn=l4rand(l,SamNum)7;SamOut=sin(SamIn);TestSamIn=-7:0.07:7;7-(7)/0。07+l=20l個(gè)樣本TestSamOut=sin(Test
18、SamIn);figureholdongridplot(SamIn,SamOut,b+)plot(TestSamIn,TestSamOut,k-)繪制目標(biāo)函數(shù)曲線xlabel(Inputx);ylabel(Outputy);title(基于聚類的RBF網(wǎng)絡(luò)對(duì)函數(shù)y=sinx的逼近曲線),Centers=SamIn(:,1:ClusterNum);初始聚類中心取前10個(gè)訓(xùn)練樣本NumberInClusters=zeros(ClusterNum,1);各類中的樣本數(shù),初始化為0IndexInClusters=zeros(ClusterNum,SamNum);各類所含樣本的索引號(hào)while1,Num
19、berInClusters=zeros(ClusterNum,1);IndexInClusters=zeros(ClusterNum,SamNum);按最小距離原則對(duì)所有樣本進(jìn)行分類fori=1:SamNumAllDistance=dist(Centers,SamIn(:,i);%求歐幾里德距離MinDist,Pos=min(AllDistance);NumberInClusters(Pos)=NumberInClusters(Pos)+1;%求各類樣本的個(gè)數(shù)IndexInClusters(Pos,NumberInClusters(Pos)=i;end%報(bào)存舊的聚類中心OldCenters=C
20、enters;%重新計(jì)算各類的聚類中心fori=1:ClusterNumIndex=IndexInClusters(i,1:NumberInClusters(i);Centers(:,i)=mean(SamIn(:,Index)end%判斷新舊聚類中心是否一致,如果是,則聚類結(jié)束EqualNum=sum(sum(Centers=OldCenters);%新舊聚類中心一致的個(gè)數(shù)ifEqualNum=InDim*ClusterNum,break,endend%計(jì)算各隱節(jié)點(diǎn)的擴(kuò)展常數(shù)(寬度)Si=Kdi,其中di是CjCi(k)的最小歐式距離AllDistances=dist(Centers,Cen
21、ters);Maximum=max(max(AllDistances);fori=1:ClusterNumAllDistances(i,i)=Maximum+1;endSpreads=Overlapmin(AllDistances);%求隱節(jié)點(diǎn)數(shù)據(jù)中心間的距離(矩陣)%找出其中最大的一個(gè)距離某一類的中心到自身的歐式距離是0,但要找隱節(jié)點(diǎn)間的最小距離,%因此將對(duì)角線上的0替換為較大的值%以隱節(jié)點(diǎn)間的最小距離作為擴(kuò)展常數(shù)計(jì)算各隱節(jié)點(diǎn)的輸出權(quán)值Distance=dist(Centers,SamIn);SpreadsMat=repmat(Spreads,1,SamNum);計(jì)算各樣本輸入離各數(shù)據(jù)中心的
22、距離%repmat徑向基函數(shù)j(.)HiddenUnitOut=radbas(Distance。/SpreadsMat);%計(jì)算隱節(jié)點(diǎn)輸出陣HiddenUnitOutEx=HiddenUnitOutones(SamNum,1);%考慮偏移%求廣義輸出權(quán)值.pinv求偽逆W2Ex=SamOutpinv(HiddenUnitOutEx);W2=W2Ex(:,1:ClusterNum);B2=W2Ex(:,ClusterNum+1);W2B2測(cè)試TestDistance=dist(Centers,TestSamIn);TestSpreadsMat=repmat(Spreads,1,TestSamNu
23、m);TestHiddenUnitOut=radbas(TestDistance./TestSpreadsMat);TestNNOut=W2TestHiddenUnitOut+repmat(B2,1,TestSamNum);plot(TestSamIn,TestNNOut,r)四、輸出結(jié)果當(dāng)隱節(jié)點(diǎn)重疊系數(shù)K為1時(shí),W2=Columns1through8-0.97591。19561.24020。95091。39990.03110。135909232Columns9through100.79130.1700B2=-0。8289呂IIIII8-6-J-202468Inputk當(dāng)隱節(jié)點(diǎn)重疊系數(shù)K為2時(shí)
24、,W2=Columns1through81。7.6555-1.73260.01560.081511。83861。01880。78535740Columns9through109.31491.0047B2=1.30425.基于.聚類的R3F網(wǎng)貉對(duì)函歎尸刑x的逼近曲線15|I-6-4-202468Inputx五、結(jié)果分析RBF網(wǎng)絡(luò)的學(xué)習(xí)過程與BP網(wǎng)絡(luò)的學(xué)習(xí)過程類似,兩種網(wǎng)絡(luò)中隱節(jié)點(diǎn)的非線性變換作用都是把線性不可分問題轉(zhuǎn)化為線性可分問題,因此均可用于函數(shù)逼近和分類。兩者的主要區(qū)別在于各使用不同的激勵(lì)函數(shù),BP網(wǎng)絡(luò)中隱層節(jié)點(diǎn)使用的是Sigmoid函數(shù),其值在輸入空間中無限大的范圍內(nèi)為非零值,因而是一種
25、全局逼近的神經(jīng)網(wǎng)絡(luò);而RBF網(wǎng)絡(luò)中的激勵(lì)函數(shù)是Gaussian函數(shù),是一種局部逼近的神經(jīng)網(wǎng)絡(luò),其對(duì)于輸入空間的某個(gè)局部區(qū)域只有少數(shù)幾個(gè)連接權(quán)影響網(wǎng)絡(luò)的輸出,因而與BP網(wǎng)絡(luò)相比,RBF網(wǎng)絡(luò)學(xué)習(xí)速度更快.聚類方法的優(yōu)點(diǎn)是能根據(jù)各聚類中心之間的距離確定各隱節(jié)點(diǎn)的擴(kuò)展常數(shù),缺點(diǎn)是確定數(shù)據(jù)中心時(shí)只用到了樣本輸入信息,而沒有用到樣本輸出信息;另外聚類方法也無法確定聚類的數(shù)目(RBF網(wǎng)絡(luò)的隱節(jié)點(diǎn)數(shù))。遺傳算法 遺傳算法MATLAB仿真一、遺傳算法(GA)的基本思想基于達(dá)爾文進(jìn)化論中的適者生存、優(yōu)勝劣汰的基本原理,按生物學(xué)的方法將問題的求解表示成“種群(Population)(用計(jì)算機(jī)編程時(shí),一般使用二進(jìn)制碼
26、串表示),從而構(gòu)造出一群包括N個(gè)可行解的種群,將它們置于問題的“環(huán)境中,根據(jù)適者生存原則,對(duì)該種群按照遺傳學(xué)的基本操作,不斷優(yōu)化生成新的種群,這樣一代代地不斷進(jìn)化,最后收斂到一個(gè)最適應(yīng)環(huán)境的最優(yōu)個(gè)體上,求得問題的最優(yōu)解。遺傳算法可以形式化的描述如下:GA=(P(0),N,l,s,g,p,f,t)其中,P(0)=(P0),P2(0),Pn(0),表示初始種群;N表示種群中含有個(gè)體的個(gè)數(shù);l表示二進(jìn)制串的長度;s表示選擇策略;g表示遺傳算子,通常它包括有選擇(繁殖)算子Qr、雜交算子Qc和變異算子Qm;p表示遺傳算子的操作概率,它包括選擇概率P、P和變異概率P;f是適應(yīng)度rcm函數(shù);t是終止準(zhǔn)則。
27、二、Holland遺傳算法(SGA)該算法的操作對(duì)象是一群被稱為種群的二進(jìn)制位串(稱為染色體、個(gè)體).這里的每個(gè)染色體都對(duì)應(yīng)求解問題的一個(gè)解。SGA的基本思想是:從初始種群出發(fā),采用基于適應(yīng)度比例的選擇策略在當(dāng)前種群中選擇個(gè)體,使用雜交和變異來產(chǎn)生下一代種群。如此一代代演化下去,直至滿足期望的終止條件為止。執(zhí)行一個(gè)簡單的遺傳算法時(shí),需要做以下的準(zhǔn)備工作:(1)根據(jù)問題的要求選取設(shè)計(jì)變量(即明確需要優(yōu)化的參數(shù)或方案),變量的取值范圍構(gòu)成問題的解空間。這是一個(gè)具體問題的數(shù)學(xué)抽象的過程。(2)確定變量的約束條件。(3)確定編碼方案。遺傳算法求解問題不是直接作用在問題的解空間上,而是利用解的某種編碼表
28、示。通常解(變量)空間中的一個(gè)解(變量)被編碼成一個(gè)串,它是由組成這個(gè)解(變量)的一系列有效信息組成。(4)確定適應(yīng)度函數(shù)。適應(yīng)度值是對(duì)解的質(zhì)量的度量,它是遺傳算法對(duì)種群中的個(gè)體執(zhí)行各種遺傳操作的唯一的依據(jù)。(5)確定選擇策略。個(gè)體的適應(yīng)度值是策略中的主要依據(jù),該步驟使適應(yīng)度值大的解在下一代有較大的存活概率。這種輪盤賭的選擇策略具有正反饋特征,在自然界中也屢屢出現(xiàn)這樣的現(xiàn)象,最后的結(jié)局是可怕的。實(shí)際設(shè)計(jì)中還可以選擇錦標(biāo)賽選擇策略或者排序選擇策略等。(6)確定控制參數(shù)。它主要包括種群規(guī)模、執(zhí)行不同遺傳操作的概率以及其它一些輔助性控制參數(shù)。(7)設(shè)計(jì)遺傳算子。進(jìn)化算法中的遺傳算子包括繁殖(選擇)、
29、雜交變異等操作。(8)確定算法的條件終止準(zhǔn)則。三、Holland遺傳算法流程圖Y是否滿足停止準(zhǔn)則N結(jié)束Yi:=迭代次數(shù)?N交叉復(fù)制變異依概率選擇遺傳操作將兩個(gè)后代插入新種群計(jì)算每個(gè)個(gè)體的適應(yīng)值產(chǎn)生初始種群選擇一個(gè)個(gè)體選擇一個(gè)個(gè)體選擇兩個(gè)個(gè)體執(zhí)行變異GEN:=GEN+1插入到新種群執(zhí)行復(fù)制復(fù)制到新種群i:=0i:=i+1執(zhí)行雜交指定結(jié)果GEN:=0開始/*i:=i+1四、遺傳算法MATLAB仿真實(shí)例例:求下列函數(shù)的最大值f(x)=10*sin(5x)+7*cos(4x),x0,10o其中將x的值用一個(gè)10位的二值形式表示。解:分為八個(gè)部分:1初始化(編碼)initpop.m函數(shù)的功能是實(shí)現(xiàn)群體的
30、初始化,popsize表示群體的大小,chromlength表示染色體的長度(二值數(shù)的長度),長度大小取決于變量的二進(jìn)制編碼的長度(在本例中取10位).子程序文件名:initpop。m初始化functionpop=initpop(popsize,chromlength)pop=round(rand(popsize,chromlength);%rand隨機(jī)產(chǎn)生每個(gè)單元為0,1行數(shù)為popsize,列數(shù)為chromlength的矩陣,%round對(duì)矩陣的每個(gè)單元進(jìn)行取整.產(chǎn)生初始種群。2。計(jì)算目標(biāo)函數(shù)值(1)將二進(jìn)制串b9b8b0轉(zhuǎn)化為相應(yīng)的十進(jìn)制,即()=(b-2i)=x9802i10i=0子程
31、序文件名:decodebinary。m%產(chǎn)生2An2A(n1).1的行向量,然后求和,將二進(jìn)制轉(zhuǎn)化為十進(jìn)制functionpop2=decodebinary(pop)px,py=size(pop);%求pop行和例數(shù)fori=1:pypopl(:,i)=24(py-l)。*pop(:,i);py=py1;endpop2=sum(pop1,2);%求pop1的每行之和找到相應(yīng)的實(shí)數(shù)x,即10 x=0.0+x2io-1其中0。0為區(qū)間0,10的左邊界,10為區(qū)間長度.decodechrom.m函數(shù)的功能是將染色體(或二進(jìn)制編碼)轉(zhuǎn)換為十進(jìn)制,參數(shù)spoint表示待解碼的二進(jìn)制串的起始位置(對(duì)于多個(gè)
32、變量而言,如有兩個(gè)變量,采用20位表示,每個(gè)變量10位,則第一個(gè)變量從1開始,另一個(gè)變量從11開始本例為1),參數(shù)length表示所截取的長度(本例為10)。子程序文件名:decodechrom.m%將二進(jìn)制編碼轉(zhuǎn)換成十進(jìn)制functionpop2=decodechrom(pop,spoint,length)pop1=pop(:,spoint:spoint+length1);pop2=decodebinary(pop1);計(jì)算目標(biāo)函數(shù)值calobjvalue。m函數(shù)的功能是實(shí)現(xiàn)目標(biāo)函數(shù)的計(jì)算.子程序文件名:calobjvalue。m實(shí)現(xiàn)目標(biāo)函數(shù)的計(jì)算functionobjvalue=calob
33、jvalue(pop)temp1=decodechrom(pop,1,10);%將pop每行轉(zhuǎn)化成十進(jìn)制數(shù)x=templ*10/(2T01);%將二值域中的數(shù)轉(zhuǎn)化為變量域的數(shù)objvalue=10sin(5x)+7*cos(4x);計(jì)算目標(biāo)函數(shù)值計(jì)算個(gè)體的適應(yīng)值子程序文件名:calfitvalue。m%計(jì)算個(gè)體的適應(yīng)值functionfitvalue=calfitvalue(objvalue)globalCmin;Cmin=0;px,py=size(objvalue);fori=1:pxifobjvalue(i)+Cmin0temp=Cmin+objvalue(i);elsetemp=0.0;
34、endfitvalue(i)=temp;endfitvalue=fitvalue;4。選擇復(fù)制選擇或復(fù)制操作是決定哪些個(gè)體可以進(jìn)入下一代。程序中采用輪盤賭式選擇法進(jìn)行選擇,這種方法較易實(shí)現(xiàn)。根據(jù)方程pi=fi/工fi=fi/fsum,選擇步驟:在第t代,由上式計(jì)算fsum和pi產(chǎn)生0,1的隨機(jī)數(shù)rand(.),求s=rand(.)*fsum求pi上s中最小的k,則第k個(gè)個(gè)體被選中進(jìn)行N次2)、3)操作,得到N個(gè)個(gè)體,成為第t=t+1代種群子程序文件名:selection.m%選擇復(fù)制functionnewpop=selection(pop,fitvalue)totalfit=sum(fitva
35、lue);求適應(yīng)值之和fitvalue=fitvalue/totalfit;單個(gè)個(gè)體被選擇的概率fitvalue=cumsum(fitvalue);如fitvalue=1234,則cumsum(fitvalue)=13610px,py=size(pop);ms=sort(rand(px,1);%從小到大排列fitin=1;newin=1;whilenewin=pxif(ms(newin)fitvalue(fitin)newpop(newin,:)=pop(fitin,:);newin=newin+1;elsefitin=fitin+1;endend5交叉交叉(crossover),群體中的每個(gè)
36、個(gè)體之間都以一定的概率pc交叉,即兩個(gè)個(gè)體從各自字符串的某一位置,(一般是隨機(jī)確定)開始互相交換,這類似生物進(jìn)化過程中的基因分裂與重組例如,假設(shè)2個(gè)父代個(gè)體xl,x2為:xl=0100110;x2=1010001。從每個(gè)個(gè)體的第3位開始交叉,交叉后得到2個(gè)新的子代個(gè)體yl,y2分別為:yl=0100001;y2=1010110。這樣2個(gè)子代個(gè)體就分別具有了2個(gè)父代個(gè)體的某些特征。利用交叉我們有可能由父代個(gè)體在子代組合成具有更高適合度的個(gè)體。事實(shí)上交叉是遺傳算法區(qū)別于其它傳統(tǒng)優(yōu)化方法的主要特點(diǎn)之一.子程序文件名:crossover.m%交叉functionnewpop=crossover(pop
37、,pc)px,py=size(pop);newpop=ones(size(pop);fori=1:2:px1if(randpc)cpoint=round(randpy);newpop(i,:)=pop(i,1:cpoint)pop(i+1,cpoint+1:py);newpop(i+1,:)=pop(i+1,1:cpoint)pop(i,cpoint+1:py);elsenewpop(i,:)=pop(i,:);newpop(i+1,:)=pop(i+1,:);endend6變異變異(mutation),基因的突變普遍存在于生物的進(jìn)化過程中變異是指父代中的每個(gè)個(gè)體的每一位都以概率pm翻轉(zhuǎn),即由“1”變?yōu)椤?,或由“0”變?yōu)椤?”。遺傳算法的變異特性可以使求解過程隨機(jī)地搜索到解可能存在的整個(gè)空間,因此可以在一定程度上求得全局最優(yōu)解。子程序文件名:mutation。m變異functionnewpop=mutation(pop,pm)px,py=size(pop);newpop=ones(size(pop);fori=1:pxif(randpm)mpoint=round(rand*py);ifmpoint=0mpoint=1;endn
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 【復(fù)習(xí)大串講】【中職專用】高二語文上學(xué)期期末綜合測(cè)試題(三)(職業(yè)模塊)(原卷版)
- 單位員工招聘合同范本
- 獸醫(yī)聘用勞務(wù)合同范本
- 光催化課題申報(bào)書
- 會(huì)所物資出售合同范本
- 廚具采買合同范本寫
- 吊裝合同范例簡易版本
- 醫(yī)院雇傭合同范本
- 企業(yè)各類合同范本
- 吊車及場(chǎng)地合作合同范本
- 中班美工區(qū)角活動(dòng)教案10篇
- SJG 103-2021 無障礙設(shè)計(jì)標(biāo)準(zhǔn)-高清現(xiàn)行
- 皇冠假日酒店智能化系統(tǒng)安裝工程施工合同范本
- 路面工程重點(diǎn)、關(guān)鍵、和難點(diǎn)工程的施工方案(技術(shù)標(biāo))
- 合肥市城市大腦·數(shù)字底座白皮書2020
- 機(jī)電預(yù)留預(yù)埋工程施工組織設(shè)計(jì)方案
- 2022年三八婦女節(jié)婦女權(quán)益保障法律知識(shí)競(jìng)賽題庫及答案(共290題)
- 引水罐的設(shè)計(jì)計(jì)算
- Of studies原文譯文及賞析
- 安全閥基本知識(shí)講義
- 不銹鋼排煙風(fēng)管施工實(shí)施方案
評(píng)論
0/150
提交評(píng)論