姜素霞,樊繼輝,耿盛濤,楊飛飛
(鄭州輕工業(yè)大學(xué) 電氣信息工程學(xué)院,鄭州 450002)
膜計(jì)算(membrane computing,MC)[1]是生物計(jì)算領(lǐng)域的1個(gè)重要分支,旨在從活細(xì)胞的結(jié)構(gòu)與機(jī)理,以及組織和器官等細(xì)胞群的協(xié)作中,抽象出新的計(jì)算模型和算法。經(jīng)過(guò)二十多年的快速發(fā)展,膜計(jì)算展現(xiàn)出了較好的計(jì)算性能和特點(diǎn),如分布式、并行性、可擴(kuò)展性、可編程性等,取得了大量的理論及應(yīng)用研究成果。膜系統(tǒng)又叫P系統(tǒng),是一種分布式并行計(jì)算模型,它主要有3種類型:類細(xì)胞P系統(tǒng)[2]、類組織P系統(tǒng)[3]和脈沖神經(jīng)P系統(tǒng)[4]。其中,脈沖神經(jīng)膜系統(tǒng)(spiking neural P systems,SNP)是受神經(jīng)網(wǎng)絡(luò)中神經(jīng)元之間利用脈沖傳遞和處理信息的生物現(xiàn)象啟發(fā)而提出的一種分布式并行計(jì)算模型。通常,脈沖神經(jīng)膜系統(tǒng)被看作1個(gè)有向圖,每個(gè)神經(jīng)元作為有向圖的節(jié)點(diǎn),神經(jīng)元之間的突觸作為有向圖中的弧線。每個(gè)神經(jīng)元產(chǎn)生的脈沖通過(guò)突觸傳遞,并在一定時(shí)間延遲后到達(dá)目標(biāo)神經(jīng)元,從而實(shí)現(xiàn)神經(jīng)元之間的信息交互。每個(gè)神經(jīng)元中含有若干個(gè)激發(fā)規(guī)則和遺忘規(guī)則,每條規(guī)則的使用都會(huì)消耗1個(gè)時(shí)間單元,也稱為規(guī)則的運(yùn)行時(shí)間。因此,脈沖神經(jīng)膜系統(tǒng)內(nèi)部存在1個(gè)用于標(biāo)記計(jì)算過(guò)程中時(shí)間單元的全局時(shí)鐘,在1個(gè)時(shí)間單元內(nèi),系統(tǒng)中任意神經(jīng)元內(nèi)部只要存在可以使用的規(guī)則,這些規(guī)則都將并行執(zhí)行。激發(fā)規(guī)則和遺忘規(guī)則的使用主要是通過(guò)檢查神經(jīng)元中脈沖數(shù)量是否滿足規(guī)則要求的正則表達(dá)式關(guān)聯(lián)的語(yǔ)言集合,最終系統(tǒng)以輸出神經(jīng)元輸出到環(huán)境中的前2個(gè)脈沖的時(shí)間間隔作為計(jì)算結(jié)果。
受不同生物特性或生物現(xiàn)象啟發(fā),已經(jīng)提出了多種脈沖神經(jīng)膜系統(tǒng)變體。例如:作為任意自然數(shù)的產(chǎn)生與識(shí)別裝置的脈沖神經(jīng)膜系統(tǒng)[5-6],多數(shù)被證明是計(jì)算通用的;作為語(yǔ)言產(chǎn)生裝置的脈沖神經(jīng)膜系統(tǒng)是計(jì)算通用的[7-9];作為函數(shù)計(jì)算裝置的脈沖神經(jīng)膜系統(tǒng)是計(jì)算通用的[10],脈沖神經(jīng)膜系統(tǒng)還被證明是生成二進(jìn)制和字符串語(yǔ)言的強(qiáng)大計(jì)算裝置[11-12]。近年來(lái),研究者又提出了結(jié)構(gòu)可塑的SNP系統(tǒng)[13]、類細(xì)胞的SNP系統(tǒng)[14]、請(qǐng)求應(yīng)答模式下的SNP系統(tǒng)[15]、脈沖耦合P系統(tǒng)[16]等具有新型拓?fù)浣Y(jié)構(gòu)的脈沖神經(jīng)膜系統(tǒng)。除此之外,脈沖神經(jīng)膜系統(tǒng)在數(shù)學(xué)[17]、理論計(jì)算科學(xué)[18]、圖 像 處 理[19]、系 統(tǒng) 仿 真[20]、機(jī) 器 人 控制[21]、電力故障診斷[22,23]模型仿真[24]、解決NP完全問(wèn)題[25-26]等方面有著廣泛的應(yīng)用[27-28]。
2016年,吳庭芳等[29]提出了帶電荷的脈沖神經(jīng)膜系統(tǒng)(簡(jiǎn)稱PSN P systems),該系統(tǒng)的規(guī)則控制機(jī)制不再通過(guò)檢查神經(jīng)元內(nèi)部的脈沖數(shù)量匹配正則表達(dá)式,而是通過(guò)判斷神經(jīng)元的帶電荷狀態(tài)(0,-,+)是否滿足當(dāng)前的格局轉(zhuǎn)換條件,只有滿足電荷條件時(shí)規(guī)則才能被觸發(fā)。帶電荷的脈沖神經(jīng)膜系統(tǒng)中標(biāo)準(zhǔn)的脈沖規(guī)則形式記為α/ac→a;β,其中 α,β∈{+,-,0},ac→a表示c個(gè)脈沖a被消耗,1個(gè)脈沖a被產(chǎn)生。文獻(xiàn)[29]證明了帶電荷的脈沖神經(jīng)膜系統(tǒng)作為任意自然數(shù)的產(chǎn)生和接收裝置是計(jì)算通用的,并給出了具有164個(gè)神經(jīng)元的小通用計(jì)算函數(shù)裝置。
文獻(xiàn)[29]所構(gòu)造的帶電荷脈沖神經(jīng)膜系統(tǒng),規(guī)則的運(yùn)行是在神經(jīng)元內(nèi)部執(zhí)行。受生物反射弧現(xiàn)象啟發(fā),根據(jù)神經(jīng)元可以向相鄰神經(jīng)元傳遞不同極性的生物電荷脈沖,從而實(shí)現(xiàn)不同部位精準(zhǔn)動(dòng)作的生物特性,文獻(xiàn)[30]提出了突觸帶規(guī)則的脈沖神經(jīng)膜系統(tǒng)(簡(jiǎn)稱SN-RS P systems)。因此,如果將突觸規(guī)則的運(yùn)行機(jī)制引入帶電荷脈沖神經(jīng)膜系統(tǒng)中,通過(guò)利用神經(jīng)元所帶電荷極性來(lái)激發(fā)突觸上的規(guī)則運(yùn)行,就可以使神經(jīng)元內(nèi)部只保留激發(fā)物質(zhì)(脈沖),不再包含觸發(fā)規(guī)則。與文獻(xiàn)[29]相比,本文所構(gòu)造的脈沖神經(jīng)膜系統(tǒng)在某一時(shí)刻神經(jīng)元只能向相鄰神經(jīng)元傳遞同一種極性電荷,系統(tǒng)運(yùn)行方式得以改進(jìn),神經(jīng)元可以向相鄰神經(jīng)元傳遞不同極性能夠?qū)崿F(xiàn)。
本文將突觸上帶極性觸發(fā)的脈沖規(guī)則引入脈沖神經(jīng)膜系統(tǒng),提出了一種基于突觸擴(kuò)展規(guī)則的帶電荷脈沖神經(jīng)膜系統(tǒng)(spiking neural P systems with polarizations and rules on synapses,PSNRSP)。該系統(tǒng)的突觸擴(kuò)展規(guī)則形式記為 α/ac→ap;β,其中c≥p,α,β∈{+,-,0},ac→ap表示c個(gè)脈沖a被消耗,產(chǎn)生p個(gè)脈沖a。在PSNRS P系統(tǒng)中,以神經(jīng)元細(xì)胞所帶電荷狀態(tài)作為觸發(fā)方式的擴(kuò)展脈沖規(guī)則,被放置在神經(jīng)元的突觸上,而該規(guī)則的使用由神經(jīng)元中脈沖的個(gè)數(shù)和神經(jīng)元細(xì)胞的電荷狀態(tài)共同決定,不再檢查神經(jīng)元中的脈沖數(shù)目是否滿足正則表達(dá)式。本文證明了PSNRSP系統(tǒng)在產(chǎn)生模式和識(shí)別模式下可以計(jì)算任意圖靈可計(jì)算函數(shù),具有與圖靈機(jī)等價(jià)的計(jì)算能力。該研究不僅簡(jiǎn)化了文獻(xiàn)[29]的證明過(guò)程,減少了計(jì)算過(guò)程中因規(guī)則執(zhí)行方式造成的資源消耗,同時(shí)解決了文獻(xiàn)[29]所提到的一個(gè)公開(kāi)問(wèn)題。
1個(gè)度為m(m≥1)的基于突觸擴(kuò)展規(guī)則的帶電荷脈沖神經(jīng)膜系統(tǒng)形式化定義為:
其中:
1)O={a}是1個(gè)字母表,符號(hào)a表示脈沖;
2)σ1,σ2,σ3,…,σm表示系統(tǒng)有m個(gè)神經(jīng)元,形式為:σi=(αi,ni),1≤i≤m,其中:αi∈{+,-,0},表示神經(jīng)元σi的初始電荷狀態(tài);ni表示神經(jīng)元αi在初始格局時(shí)包含的脈沖數(shù)目;
3)syn∈{1,2,3,…,m}×{1,2,3,…,m},表示神經(jīng)元上突觸的集合,每個(gè)突觸用1個(gè)二元組表示,形式為:((i,j),R(i,j)),其中:(i,j)表示連接神經(jīng)元 σi和神經(jīng)元 σj的突觸,i,j∈{1,2,3,…,m},i≠j;R(i,j)表示存在于突觸(i,j)上的規(guī)則集合,有以下2種形式:
① α/ac→ap;β(擴(kuò)展激發(fā)規(guī)則),其中c≥p,α,β∈{+,-,0},α表示當(dāng)前神經(jīng)元擁有的極性電荷,β表示當(dāng)前神經(jīng)元發(fā)送到相鄰神經(jīng)元的極性電荷;
② α/ac→λ;β(遺忘規(guī)則),其中c≥1,α,β∈{+,-,0},α表示當(dāng)前神經(jīng)元所帶電荷的極性,β表示當(dāng)前神經(jīng)元發(fā)送到相鄰神經(jīng)元的電荷極性;
4)in,out∈{1,2,3,…,m},分別表示輸入神經(jīng)元σin和輸出神經(jīng)元σout。
在PSNRSP系統(tǒng)中,為了規(guī)則能夠正常使用,神經(jīng)元中的脈沖數(shù)量不能少于使用規(guī)則所消耗的脈沖數(shù)量。此外,當(dāng)遺忘規(guī)則可以使用時(shí),神經(jīng)元會(huì)發(fā)送無(wú)用信號(hào)和電荷極性給相鄰神經(jīng)元。
擴(kuò)展激發(fā)規(guī)則的激發(fā)條件為:在某一時(shí)刻,如果神經(jīng)元σi包含k個(gè)脈沖并且?guī)в笑岭姾桑é痢剩?,-,0},k≥c),則規(guī)則 α/ac→ap;β被使用,此時(shí)神經(jīng)元σi內(nèi)消耗c個(gè)脈沖,產(chǎn)生p個(gè)脈沖,同時(shí),p個(gè)脈沖和β電荷通過(guò)突觸通道(i,j)被發(fā)送給神經(jīng)元σj。
遺忘規(guī)則的激發(fā)條件為:在神經(jīng)元σi中至少存在c個(gè)脈沖,規(guī)則使用后,神經(jīng)元σi中的c個(gè)脈沖被移除,β電荷通過(guò)突觸通道(i,j)被發(fā)送給神經(jīng)元σj。需要注意的是,不同突觸上的規(guī)則使用彼此互不影響,神經(jīng)元所有突觸上的規(guī)則,根據(jù)規(guī)則形式可以發(fā)送不同的電荷到不同的相鄰神經(jīng)元。
特別指出:在1個(gè)時(shí)間單元,神經(jīng)元內(nèi)如果只有1條規(guī)則滿足使用條件,則該規(guī)則必須被使用;如果同時(shí)有多條規(guī)則都滿足使用條件,則從其中非確定地選擇1條使用。另外,系統(tǒng)中同1個(gè)突觸上的規(guī)則按照串行方式運(yùn)行,不同突觸上的規(guī)則按照并行方式運(yùn)行。當(dāng)從同1個(gè)神經(jīng)元發(fā)出的多個(gè)突觸上均帶有可以使用的規(guī)則時(shí),所有規(guī)則使用時(shí)所消耗的脈沖都來(lái)自給定神經(jīng)元,即給定神經(jīng)元中的脈沖數(shù)量必須滿足所有可用規(guī)則的使用條件。
神經(jīng)元帶電荷狀態(tài)的變化條件為:
1)當(dāng)神經(jīng)元σi帶中性電荷(0),只收到1個(gè)負(fù)電荷(-)或者1個(gè)正電荷(+)時(shí),神經(jīng)元σi的電荷相應(yīng)變成負(fù)電荷(-)或者正電荷(+);當(dāng)接收的電荷是中性電荷(0)時(shí),神經(jīng)元σi保持原有的電荷狀態(tài)。
2)當(dāng)神經(jīng)元σi帶中性電荷(0),收到2個(gè)不同神經(jīng)元發(fā)送的1個(gè)負(fù)電荷(-)和1個(gè)正電荷(+)時(shí),神經(jīng)元σi保持原有的電荷狀態(tài)。
3)當(dāng)神經(jīng)元σi帶中性電荷(0),可以接收2個(gè)以上不同神經(jīng)元發(fā)送的不同電荷狀態(tài)。例如:當(dāng)神經(jīng)元σi同時(shí)從其他神經(jīng)元接收2個(gè)正電荷和1個(gè)負(fù)電荷時(shí),2個(gè)正電荷會(huì)使神經(jīng)元帶正電荷,因?yàn)橥瑫r(shí)收到1個(gè)負(fù)電荷,所以神經(jīng)元σi仍保持原有的電荷狀態(tài)。
對(duì)于突觸上使用擴(kuò)展規(guī)則的帶電荷的脈沖神經(jīng)膜系統(tǒng),在某一時(shí)刻的格局定義為以下形式:<C1/t1,C2/t2,…Cm/tm>,其中,Ci表示神經(jīng)元 σi在此步所包含的脈沖個(gè)數(shù),ti表示神經(jīng)元達(dá)到開(kāi)放狀態(tài)所需要的步數(shù)1≤i≤m。系統(tǒng)的初始格局表示為C0=<C1/0,C2/0,…Cm/0>,系統(tǒng)從某1個(gè)格局Ci轉(zhuǎn)移到下1個(gè)格局Cj表示為Ci?Cj,這一過(guò)程被稱為系統(tǒng)的格局轉(zhuǎn)移。從初始格局開(kāi)始,所進(jìn)行的一系列格局轉(zhuǎn)移稱為系統(tǒng)∏的計(jì)算過(guò)程。當(dāng)系統(tǒng)從某1個(gè)格局轉(zhuǎn)移到1個(gè)無(wú)規(guī)則可用的格局時(shí),表明計(jì)算停止。最終,以輸出到環(huán)境的前2個(gè)脈沖的時(shí)間間隔作為系統(tǒng)的計(jì)算結(jié)果。
為了清楚說(shuō)明本文所構(gòu)造的脈沖神經(jīng)膜系統(tǒng)的計(jì)算過(guò)程,下面構(gòu)造1個(gè)簡(jiǎn)單的突觸擴(kuò)展規(guī)則的帶電荷脈沖神經(jīng)膜系統(tǒng),來(lái)產(chǎn)生集合{2n+1|n≥1}中的任意自然數(shù)。
如圖1所示,該系統(tǒng)包含1、2、out等3個(gè)神經(jīng)元。初始狀態(tài)下,神經(jīng)元2帶正電荷,神經(jīng)元1和out帶中性電荷;神經(jīng)元1中含有2個(gè)脈沖,神經(jīng)元2和out中為空。假設(shè)初始時(shí)刻為t,此時(shí)只有神經(jīng)元1被激發(fā),可以通過(guò)突觸(1,2)和(1,out)向相應(yīng)的神經(jīng)元發(fā)送脈沖。由圖1可知,突觸(1,2)上的2條規(guī)則觸發(fā)條件相同,非確定地選擇其中1條規(guī)則使用,該步消耗2個(gè)脈沖并發(fā)送2個(gè)脈沖和相應(yīng)的電荷極性給神經(jīng)元2;同步地,突觸(1,out)上的規(guī)則0/a2→a;-被激發(fā),消耗2個(gè)脈沖并發(fā)送1個(gè)脈沖和1個(gè)負(fù)電荷給神經(jīng)元out。如果在第t時(shí)刻,突觸(1,2)上的規(guī)則0/a2→a2;+被使用,神經(jīng)元2中積累2個(gè)脈沖仍帶正電荷。下一時(shí)刻t+1,神經(jīng)元2通過(guò)使用突觸(2,out)上的規(guī)則+/a2→a2;+,將2個(gè)脈沖和1個(gè)正電荷送入神經(jīng)元out,此時(shí)1個(gè)正電荷遇到1個(gè)負(fù)電荷,神經(jīng)元out將變?yōu)橹行噪姾刹?個(gè)脈沖。在t+2時(shí)刻,神經(jīng)元out通過(guò)使用規(guī)則0/a3→a2;0,向環(huán)境輸出2個(gè)脈沖。值得注意的是,若突觸(1,2)上的規(guī)則0/a2→a2;+被重復(fù)使用,系統(tǒng)將每2個(gè)時(shí)間單元向環(huán)境發(fā)送2個(gè)脈沖。假設(shè)在t+2n+2時(shí)刻,突觸(1,2)上的規(guī)則0/a2→a2;-被使用,神經(jīng)元2收到2個(gè)脈沖并帶中性電荷;此外,在同一時(shí)刻,神經(jīng)元1發(fā)送1個(gè)脈沖給神經(jīng)元out。因此,在t+2n+3時(shí)刻,突觸(2,out)上只有規(guī)則0/a2→λ;0可以被使用,神經(jīng)元2中的脈沖被移除;同時(shí),神經(jīng)元out帶負(fù)電荷,發(fā)送1個(gè)脈沖到環(huán)境中,計(jì)算停止。因此,這樣一個(gè)簡(jiǎn)單的PSNRS P系統(tǒng)可生成(t+2n+3)-(t+2)中的任意一個(gè)自然數(shù),即該系統(tǒng)可以產(chǎn)生{2n+1|n≥1}所代表的任意自然數(shù)集合。
本文將突觸擴(kuò)展規(guī)則的帶電荷脈沖神經(jīng)膜系統(tǒng)所產(chǎn)生的任意自然數(shù)集族記為其中,符號(hào)syn表示突觸上帶擴(kuò)展規(guī)則,α∈{2,acc}表示系統(tǒng)的工作模式,∏2表示工作在產(chǎn)生模式,以輸出到環(huán)境中前2個(gè)脈沖的時(shí)間間隔作為計(jì)算結(jié)果;∏acc表示識(shí)別模式,以接收神經(jīng)元σin從環(huán)境接收脈沖總數(shù)為n作為計(jì)算結(jié)果。字母n表示每條突觸上存在的規(guī)則數(shù)不超過(guò)n條;字母m表示系統(tǒng)含有m個(gè)神經(jīng)元,當(dāng)神經(jīng)元的數(shù)目和突觸上的規(guī)則數(shù)沒(méi)有限制時(shí),則用符號(hào)*代替。
本節(jié)構(gòu)造一個(gè)PSNRS P系統(tǒng)Π′,證明其作為產(chǎn)生數(shù)集的裝置是計(jì)算通用的,即可以產(chǎn)生圖靈可計(jì)算的自然數(shù),方法是通過(guò)模擬注冊(cè)機(jī)。注冊(cè)機(jī)M由一個(gè)5元組構(gòu)成M=(m,H,l0,lh,I),其中m為注冊(cè)機(jī)的個(gè)數(shù),H表示指令標(biāo)簽的集合,l0表示開(kāi)始指令,lh表示停止指令,I表示指令集合。注冊(cè)機(jī)中的指令有3種形式:①加法指令(使注冊(cè)器r中存儲(chǔ)的數(shù)增加1,并轉(zhuǎn)下一指令);② 減法指令(如果注冊(cè)器r非空,使注冊(cè)器r中存儲(chǔ)的數(shù)減1,并轉(zhuǎn)下一指令,如果注冊(cè)器為空,則直接轉(zhuǎn)另一不同的指令);③ 停止指令(終止注冊(cè)機(jī)的計(jì)算,并將注冊(cè)器1中的數(shù)字作為計(jì)算結(jié)果)。特別規(guī)定:在計(jì)算停止時(shí),除注冊(cè)器1以外的注冊(cè)器都為空,且注冊(cè)器1不執(zhí)行減法指令,即PSNRSP系統(tǒng)Π′用于模擬注冊(cè)器1的神經(jīng)元中脈沖數(shù)目不會(huì)減少。
證明:根據(jù)Turing-Church理論,僅需證明關(guān)系式成立。下面構(gòu)造PSNRS P系統(tǒng)Π′,用來(lái)模擬注冊(cè)機(jī)M。
系統(tǒng)Π′由加法模塊、減法模塊和停止模塊構(gòu)成。在各個(gè)模塊中,當(dāng)神經(jīng)元σr中增加2個(gè)脈沖時(shí),相當(dāng)于對(duì)應(yīng)的注冊(cè)器r中增加1;同理,神經(jīng)元σr中減少2個(gè)脈沖時(shí),相當(dāng)于對(duì)應(yīng)的注冊(cè)器r減1。當(dāng)停止模塊中的神經(jīng)元σlh激發(fā)時(shí),系統(tǒng)停止,并以輸出神經(jīng)元σout向環(huán)境發(fā)送的前2個(gè)脈沖的時(shí)間間隔作為系統(tǒng)的輸出結(jié)果。
加法模塊如圖2所示,用于模擬加法指令li=(ADD(r),lj,lk)。相當(dāng)于將注冊(cè)器r中的數(shù)值增加1,且非確定性選擇lj或lk作為下一時(shí)刻的執(zhí)行指令。
假設(shè)系統(tǒng)∏′在某時(shí)刻t,開(kāi)始模擬加法指令li,神經(jīng)元 σli從環(huán)境中接受2個(gè)脈沖,突觸(li,r)上的規(guī)則0/a2→a2;0激發(fā),神經(jīng)元 σli發(fā)送2個(gè)脈沖和中性電荷到神經(jīng)元σr,意味著注冊(cè)器r加1。同時(shí),突觸(li,C1)上的2條規(guī)則0/a2→a2;-和0/a2→a2;+將非確定性地選擇其中1條使用,下面分2種情況討論:
1)若規(guī)則0/a2→a2;-被使用,神經(jīng)元 σli發(fā)送2個(gè)脈沖和1個(gè)負(fù)電荷進(jìn)入神經(jīng)元C1。在t+1步,帶負(fù)電荷的神經(jīng)元C1中有2個(gè)脈沖,則突觸(C1,C2)上的規(guī)則-/a2→a2;0和突觸(C1,C5)上的規(guī)則-/a2→a2;-被激發(fā),2個(gè)脈沖被分別發(fā)送到神經(jīng)元C2和C5中;不同的是帶正電荷的神經(jīng)元C5接收1個(gè)負(fù)電荷后,神經(jīng)元電荷變成中性,神經(jīng)元C2仍保持中性電荷。在t+2步,規(guī)則0/a2→a2;0被激發(fā),2個(gè)脈沖沿著突觸(C5,lk)進(jìn)入到神經(jīng)元lk中,表示接下來(lái)執(zhí)行指令lk。同時(shí),神經(jīng)元C2中2個(gè)脈沖通過(guò)突觸(C2,C5)上的遺忘規(guī)則+/a2→λ;+被移除,同時(shí)1個(gè)正電荷發(fā)送到神經(jīng)元C5,使神經(jīng)元C5恢復(fù)初始狀態(tài)。
2)若規(guī)則0/a2→a2;+被使用,神經(jīng)元 σli發(fā)送2個(gè)脈沖和1個(gè)正電荷進(jìn)入神經(jīng)元C1。在t+1步,通過(guò)使用規(guī)則+/a2→a2;+,神經(jīng)元C4接收1個(gè)正電荷和2個(gè)脈沖,電荷狀態(tài)變?yōu)橹行裕煌瑫r(shí),神經(jīng)元C3接收1個(gè)中性電荷和2個(gè)脈沖,仍保持中性電荷。在t+2步,神經(jīng)元C4通過(guò)使用突觸(C4,lj)上的激發(fā)規(guī)則0/a2→a2;0,神經(jīng)元lj接收到2個(gè)脈沖,表示接下來(lái)執(zhí)行指令lj。同時(shí),神經(jīng)元C3通過(guò)使用突觸(C3,C4)上的遺忘規(guī)則-/a2→λ;-,2個(gè)脈沖被移除,并發(fā)送1個(gè)負(fù)電荷給神經(jīng)元C4,使C4的電荷狀態(tài)恢復(fù)為初始狀態(tài)。
綜上可知,加法模塊能正確模擬注冊(cè)機(jī)的加法指令li=(ADD(r),lj,lk),將注冊(cè)器r中的脈沖數(shù)目增加1,并且非確定性地選擇執(zhí)行l(wèi)j或lk指令。
減法模塊如圖3所示,用于模擬減法指令li=(SUB(r),lj,lk)。減法指令中,注冊(cè)器中的數(shù)值有空和非空等2種狀態(tài),如果注冊(cè)器r中的數(shù)值不為空,則將其減去1,執(zhí)行指令lj,否則直接執(zhí)行指令lk。
假設(shè)系統(tǒng)Π′在某一時(shí)刻t,從環(huán)境中接收到2個(gè)脈沖,神經(jīng)元σli通過(guò)相應(yīng)的突觸規(guī)則分別向神經(jīng)元C1,r,C2發(fā)送1個(gè)脈沖,此刻C1,C2的電荷狀態(tài)保持不變,但是神經(jīng)元r接收到1個(gè)正電荷從而帶正電。在減法模塊中,注冊(cè)器r中的數(shù)值對(duì)應(yīng)神經(jīng)元r中的脈沖數(shù)2n(n=0orn≥1),根據(jù)神經(jīng)元r中的脈沖數(shù)不同,有以下2種不同的運(yùn)算過(guò)程:
1)當(dāng)神經(jīng)元r中脈沖數(shù)量為非空時(shí)2n(n≥1),在t+1時(shí)刻,神經(jīng)元r為正電荷,突觸(r,C3)上的激發(fā)規(guī)則+/a3→λ;+被使用,則神經(jīng)元r中的3個(gè)脈沖被移除(相當(dāng)于注冊(cè)器r中的數(shù)值減1)。同時(shí)由于突觸(C1,r)上的規(guī)則-/a→λ;-也被激發(fā),神經(jīng)元r又接收到1個(gè)負(fù)電荷,從而變?yōu)橹行噪姾?;同一時(shí)刻,在突觸(C2,C3)上的規(guī)則+/a→a;-被使用,神經(jīng)元C3接收1個(gè)負(fù)電荷和正電荷,仍保持中性電荷,并包含1個(gè)脈沖;突觸(r,C4)上的激發(fā)規(guī)則+/a3→a2;+被使用,神經(jīng)元r發(fā)送2個(gè)脈沖和1個(gè)正電荷給神經(jīng)元C4;在t+2時(shí)刻,神經(jīng)元C4中含有2個(gè)脈沖,突觸(C4,lj)上的規(guī)則+/a2→a;0被激發(fā),神經(jīng)元lj接收到1個(gè)脈沖和1個(gè)中性電荷;同一時(shí)刻,突觸(C3,lj)上的規(guī)則0/a→a;0被使用,神經(jīng)元C3中的1個(gè)脈沖被消耗,神經(jīng)元lj接收到1個(gè)脈沖。因此,神經(jīng)元lj中含有2個(gè)脈沖,下一步將執(zhí)行指令lj。
2)當(dāng)神經(jīng)元r中脈沖數(shù)量為空時(shí)2n(n=0),在t+1時(shí)刻,突觸(C1,r)上的規(guī)則-/a→λ;-被使用,神經(jīng)元接收1個(gè)負(fù)電荷,其電荷狀態(tài)變?yōu)橹行?。同時(shí),突觸(C2,C3)上的規(guī)則+/a→a;-被使用,神經(jīng)元C3接收到1個(gè)脈沖和1個(gè)負(fù)電荷,從而帶負(fù)電;在t+2時(shí)刻,突觸(C3,C5)上的規(guī)則-/a→a;-被使用,神經(jīng)元C3發(fā)送1個(gè)脈沖和1個(gè)負(fù)電荷給神經(jīng)元C5,神經(jīng)元C5的電荷狀態(tài)仍為負(fù);在t+3時(shí)刻,神經(jīng)元C5含有1個(gè)脈沖并帶負(fù)電荷,突觸(C5,r)上的規(guī)則-/a→a;-和突觸(C5,C6)上的規(guī)則-/a→a;+均被激發(fā),神經(jīng)元r接收到1個(gè)脈沖和1個(gè)負(fù)電荷,從而含有2個(gè)脈沖并帶負(fù)電荷,神經(jīng)元C6接收到1個(gè)脈沖和1個(gè)正電荷,電荷狀態(tài)保持不變;在t+4時(shí)刻,神經(jīng)元r中含有2個(gè)脈沖,突觸(r,C7)上的規(guī)則-/a2→a2;-被激發(fā),神經(jīng)元發(fā)送2個(gè)脈沖和1個(gè)負(fù)電荷給神經(jīng)元C7。此刻,突觸(C6,C3)上的規(guī)則+/a→λ;+和(C6,r)上的規(guī)則+/a→λ;+均可以使用,神經(jīng)元C6中的1個(gè)脈沖被消耗,并分別向神經(jīng)元C3和r發(fā)送1個(gè)正電荷,使神經(jīng)元C3和r的電荷恢復(fù)初始狀態(tài);在t+5時(shí)刻,規(guī)則-/a2→a2;0被激發(fā),2個(gè)脈沖沿突觸(C7,lk)進(jìn)入神經(jīng)元lk,表示下一步將執(zhí)行指令lk。
因此,減法模塊能正確模擬注冊(cè)機(jī)的減法指令li=(SUB(r),lj,lk)。
停止模塊如圖4所示,主要用于停止計(jì)算并輸出計(jì)算結(jié)果,計(jì)算結(jié)果儲(chǔ)存在注冊(cè)器1中,并且注冊(cè)器1與減法指令無(wú)關(guān)。
假設(shè)系統(tǒng)Π′在某一時(shí)刻t,神經(jīng)元從環(huán)境接收到2個(gè)脈沖,執(zhí)行停止指令lh=HALT。神經(jīng)元lh分別向神經(jīng)元C1,C2和神經(jīng)元1發(fā)送1個(gè)脈沖,神經(jīng)元C2接收1個(gè)中性電荷,神經(jīng)元C1和神經(jīng)元1各自接收1個(gè)正電荷。在t+1時(shí)刻,突觸(C2,C3)上的規(guī)則0/a→a;0被激發(fā),神經(jīng)元C3接收1個(gè)脈沖,電荷狀態(tài)保持不變。此刻,神經(jīng)元1中包含2n+1(n≥1)個(gè)脈沖,突觸(1,C1)和(1,C4)上的規(guī)則+/a3→a;+被激發(fā),神經(jīng)元1中的3個(gè)脈沖被消耗,產(chǎn)生1個(gè)脈沖分別發(fā)送給神經(jīng)元C1和C4,神經(jīng)元C1和C4的電荷狀態(tài)維持不變。同時(shí),突觸(C1,1)上的規(guī)則+/a→a;0和突觸(C1,C4)上的規(guī)則+/a→a;-也被激發(fā),神經(jīng)元C1分別給神經(jīng)元1和C4發(fā)送1個(gè)脈沖,神經(jīng)元1電荷狀態(tài)保持不變,神經(jīng)元C4因收到1個(gè)負(fù)電荷而變?yōu)橹行?;在t+2時(shí)刻,神經(jīng)元C4含有2個(gè)脈沖帶中性電荷,通過(guò)使用突觸(C4,C5)上的規(guī)則0/a2→λ;0,神經(jīng)元C4中的2個(gè)脈沖被移除。同時(shí),突觸(C3,out)上的規(guī)則0/a→a;0被使用,神經(jīng)元out接收到1個(gè)脈沖,電荷狀態(tài)保持不變;在t+3時(shí)刻,由于神經(jīng)元out中含有1個(gè)脈沖,規(guī)則0/a→a;0被激發(fā),第一個(gè)脈沖被發(fā)送到環(huán)境。需要注意的是,突觸(1,C1)和(C1,1)上的規(guī)則在每一個(gè)時(shí)間單元都會(huì)被使用,直到t+n時(shí)刻,神經(jīng)元1中最后的2個(gè)脈沖被消耗。在t+n+1時(shí)刻,神經(jīng)元C1發(fā)送1個(gè)脈沖和1個(gè)負(fù)電荷到神經(jīng)元C4;在t+n+2時(shí)刻,C4可通過(guò)使用規(guī)則-/a→a;0分別向神經(jīng)元C5和out發(fā)送1個(gè)脈沖;在t+n+3時(shí)刻,神經(jīng)元C5通過(guò)使用規(guī)則0/a→λ;-分別向神經(jīng)元和C1發(fā)送1個(gè)負(fù)電荷,使神經(jīng)元和C1的電荷狀態(tài)恢復(fù)初始狀態(tài)。同時(shí),神經(jīng)元out可以通過(guò)使用規(guī)則0/a→a;0發(fā)送第二個(gè)脈沖到環(huán)境中。因此,系統(tǒng)向環(huán)境發(fā)送2次脈沖的時(shí)間間隔為(t+n+3)-(n+3)=n,這個(gè)數(shù)正好等于注冊(cè)機(jī)M停止時(shí)注冊(cè)器1中存儲(chǔ)的數(shù)。
綜上所述,PSNRS P系統(tǒng)Π′能夠正確地模擬注冊(cè)機(jī)M,即N2(Π′)=N(M),定理1得證。在定理1的證明過(guò)程中,系統(tǒng)Π′在產(chǎn)生模式下總共使用了173個(gè)神經(jīng)元。
工作在識(shí)別模式下的PSNRSP系統(tǒng)增加了用于接收來(lái)自環(huán)境脈沖的輸入模塊,取消了停止模塊。當(dāng)輸入模塊從環(huán)境中接收到前2個(gè)脈沖的時(shí)間間隔為n時(shí),數(shù)n作為系統(tǒng)計(jì)算的結(jié)果。
證明:根據(jù)Turing-Church理論,僅需證明關(guān)系式成立。下面構(gòu)造PSNRS P系統(tǒng)Π″,用來(lái)模擬注冊(cè)機(jī)M,包括輸入模塊、加法模塊和減法模塊,其中減法模塊與產(chǎn)生模式下的減法模塊原理相同,這里不再累述。
輸入模塊如圖5所示。在初始時(shí)刻,輸入模塊中所有神經(jīng)元都為空。假設(shè)在t時(shí)刻,神經(jīng)元in接收來(lái)自環(huán)境的第一個(gè)脈沖,神經(jīng)元in被激活,分別向神經(jīng)元in1,in3,in4,in5,in6發(fā)送1個(gè)脈沖,神經(jīng)元in5和in6接收負(fù)電荷而帶負(fù)電,其他神經(jīng)元保持原有電荷狀態(tài)不變。在t+1時(shí)刻,神經(jīng)元in1使用規(guī)則0/a→a;0,通過(guò)突觸(in1,in2)發(fā)送1個(gè)脈沖到神經(jīng)元in2。同時(shí),神經(jīng)元in5和in6相互連接的突觸規(guī)則-/a→a;0都將被激發(fā),并且突觸(in5,1)和(in6,1)上的規(guī)則-/a→a;0被使用,神經(jīng)元接收2個(gè)脈沖;從t+1時(shí)刻開(kāi)始,神經(jīng)元in5和in6在每一個(gè)時(shí)間單元內(nèi)互換1個(gè)脈沖,神經(jīng)元1在每一個(gè)時(shí)間單元內(nèi)接接收2個(gè)脈沖,意味著注冊(cè)器1在每個(gè)時(shí)間單元增加數(shù)1。直到t+n-1時(shí)刻,神經(jīng)元in接收來(lái)自環(huán)境的第2個(gè)脈沖,神經(jīng)元in發(fā)送第2個(gè)脈沖到神經(jīng)元in1,in3,in4,in5,in6中。在t+n時(shí)刻,神經(jīng)元in3,in4使用突觸(in3,in5)和(in4,in6)上的規(guī)則+/a2→λ;+,分別向神經(jīng)元in5,in6發(fā)送1個(gè)正電荷,神經(jīng)元in5,in6帶的負(fù)電荷遇到正電荷后,神經(jīng)元in5和in6帶中性電荷。值得注意的是,在t+n時(shí)刻,神經(jīng)元1仍接收2個(gè)脈沖,最終神經(jīng)元1積累2n個(gè)脈沖,對(duì)應(yīng)注冊(cè)器1存儲(chǔ)數(shù)n;在同一時(shí)間單元,神經(jīng)元in1使用突觸規(guī)則0/a→a;0沿著突觸(in1,in2)發(fā)送1個(gè)脈沖到神經(jīng)元in2。在t+n+1時(shí)刻,神經(jīng)元in5,in6中的2個(gè)脈沖通過(guò)規(guī)則0/a2→λ;0的使用被移除;此外,在同一時(shí)刻神經(jīng)元in2發(fā)送第2個(gè)脈沖到神經(jīng)元l0,意味著開(kāi)始模擬注冊(cè)機(jī)M的l0指令。
相較于產(chǎn)生模式,接收模式下的加法指令更簡(jiǎn)單,即確定性指令li=(ADD(r),lj),如圖6所示。
接收模式下系統(tǒng)Π″的減法模塊與產(chǎn)生模式下的減法模塊相同。停止模塊被移除,只保留了一個(gè)沒(méi)有任何規(guī)則可用的神經(jīng)元lh。當(dāng)注冊(cè)機(jī)M執(zhí)行指令lh時(shí),表示模擬注冊(cè)機(jī)M結(jié)束,系統(tǒng)Π″停止運(yùn)行。定理2得證。在定理2的證明過(guò)程中,系統(tǒng)Π″在識(shí)別模式下總共使用了129個(gè)神經(jīng)元。
本文提出了一種新型脈沖神經(jīng)膜系統(tǒng)變體“基于突觸上帶擴(kuò)展規(guī)則的帶電荷脈沖神經(jīng)膜系統(tǒng)”。研究了該系統(tǒng)工作在產(chǎn)生模式和識(shí)別模式下的計(jì)算通用性問(wèn)題。具體地,在產(chǎn)生模式下構(gòu)造了含有173個(gè)神經(jīng)元的PSNRSP系統(tǒng)Π′,證明了該系統(tǒng)能夠產(chǎn)生任何圖靈可計(jì)算自然數(shù)集合;進(jìn)一步,在識(shí)別模式下構(gòu)造了含有129個(gè)神經(jīng)元的PSNRSP系統(tǒng)Π″,證明其具有與圖靈機(jī)等價(jià)的計(jì)算能力。
本文所構(gòu)造的基于突觸擴(kuò)展規(guī)則的通用帶電荷脈沖神經(jīng)膜系統(tǒng)使用的是擴(kuò)展規(guī)則。如果使用標(biāo)準(zhǔn)規(guī)則,基于突觸規(guī)則的帶電荷脈沖神經(jīng)膜系統(tǒng)的計(jì)算通用性也值得進(jìn)一步研究。此外,構(gòu)造相應(yīng)的基于突觸規(guī)則的帶電荷脈沖神經(jīng)膜系統(tǒng)作為語(yǔ)言產(chǎn)生裝置,或者考慮系統(tǒng)工作在異步或局部同步的方式下,系統(tǒng)的計(jì)算通用性問(wèn)題,都是需要繼續(xù)研究和探討的問(wèn)題。