摘要:提出并分析比較兩種記憶形成算法。二次方差法對(duì)已獲取的食物點(diǎn)作方差計(jì)算,快速剔除距其他點(diǎn)較遠(yuǎn)的噪聲點(diǎn),獲得食物分布的期望位置。改進(jìn)的均值聚類算法針對(duì)二次方差法的不足,借鑒數(shù)據(jù)挖掘理論,對(duì)噪聲點(diǎn)進(jìn)行更準(zhǔn)確的剔除。根據(jù)不同情況選取適合算法,達(dá)到聚焦器在人工動(dòng)物取食記憶實(shí)現(xiàn)中的有效性。
關(guān)鍵詞: 人工動(dòng)物; 感知聚焦器; 行為記憶; 二次方差; 均值聚類
中圖分類號(hào):TP301.6文獻(xiàn)標(biāo)志碼:A
文章編號(hào):1001-3695(2007)11-0085-03
認(rèn)知是記憶過程中的一個(gè)環(huán)節(jié),又稱再認(rèn),指過去感知過的事物在當(dāng)前重新出現(xiàn)時(shí)仍能認(rèn)識(shí)。現(xiàn)代認(rèn)知心理學(xué)認(rèn)為認(rèn)知過程就是信息的接收、編碼、儲(chǔ)存、提取和使用的過程。基于認(rèn)知的人工動(dòng)物模型結(jié)合人工智能和計(jì)算機(jī)動(dòng)畫技術(shù),在虛擬環(huán)境中對(duì)其進(jìn)行模擬。
認(rèn)知在模型中的重要體現(xiàn)就是行為記憶,其形成主要是聚焦器聚焦的結(jié)果。本文就以取食記憶為例說明人工動(dòng)物[1]中人工魚行為記憶的實(shí)現(xiàn)過程。
1人工動(dòng)物行為模型設(shè)計(jì)
聚焦器是人工動(dòng)物感知系統(tǒng)的核心,即依靠一組在線的虛擬傳感器提供有關(guān)信息,并包括了感知注意機(jī)制,使之能夠按照當(dāng)前任務(wù)需求控制傳感器,過濾掉對(duì)當(dāng)前行為需求無用的感知信息[2]。
對(duì)于人工魚來說,首先對(duì)可能處于的狀態(tài)進(jìn)行抽象,得出了描述狀態(tài)變化的有限自動(dòng)機(jī)模型。聚焦器把收集的信息抽象歸納成兩個(gè)狀態(tài)原語,與當(dāng)前狀態(tài)一起作為自動(dòng)機(jī)的輸入,進(jìn)而得到相應(yīng)的輸出,即下一步人工魚期望處于的狀態(tài)。其中:Hp為饑餓度原語,描述人工魚內(nèi)部狀態(tài);Hd為危險(xiǎn)度原語,描述人工魚外部環(huán)境信息。下一個(gè)時(shí)刻,聚焦器將新生成的狀態(tài)原語反饋回來,對(duì)上一步原語進(jìn)行修正,這樣就實(shí)現(xiàn)了智能化聚焦過程。描述人工魚行為的有限自動(dòng)機(jī)模型如圖1所示。
2行為記憶的實(shí)現(xiàn)
動(dòng)物行為智能化的一個(gè)重要特征就是能夠考慮多種行為及環(huán)境,選擇折中的行動(dòng)。而且,動(dòng)物(包括魚類)的行為過程也是連續(xù)性的,不會(huì)出現(xiàn)兩種行為之間什么都不做的行為空白。也就是說在當(dāng)前行為進(jìn)行過程中,動(dòng)物自身已經(jīng)決定下一步應(yīng)該進(jìn)行什么樣的行為,或者至少有了進(jìn)行該行為的趨勢(shì)、愿望。
行為記憶解決了人工動(dòng)物行為過程的連續(xù)性問題。行為記憶形成后就可以根據(jù)當(dāng)前狀態(tài)按照自己的記憶,去完成諸如取食、擇偶等行為[3~5]。
2.1數(shù)據(jù)結(jié)構(gòu)描述
行為記憶通過鏈?zhǔn)浇Y(jié)構(gòu)存儲(chǔ),也就是記憶鏈。人工動(dòng)物每次取食成功后,將食物點(diǎn)的空間位置信息存入記憶鏈中一個(gè)節(jié)點(diǎn),經(jīng)過一段時(shí)間tm即形成具有一定長度的食物位置記憶。以人工魚為例如圖2所示。
其中:head為記憶鏈頭指針;rear為尾指針;mark為標(biāo)記指針。記憶鏈的容量并不是無限的,因此設(shè)定maxlength=30,表征記憶的容量。
將成功取食的位置記錄下來并不是目的,需要將這些點(diǎn)信息計(jì)算歸納,得出食物分布的期望位置,并存入head節(jié)點(diǎn),這才是期望得到的取食記憶。當(dāng)人工魚再次回到取食狀態(tài)時(shí),該取食記憶為有效,人工魚就會(huì)朝著記憶中的食物分布較為密集的位置游去,使得再次成功取食的幾率大大增加。
2.2算法描述
由于食物空間分布位置的不規(guī)則性,要精確地找出分布中心點(diǎn)對(duì)于人工魚來說是比較困難的。如果單純地用平均值求中心或重心,就會(huì)受到距離大多數(shù)點(diǎn)較遠(yuǎn)的噪聲點(diǎn)的影響,使計(jì)算出的食物分布期望位置與實(shí)際相去甚遠(yuǎn)。
解決辦法是將記憶鏈中的點(diǎn)作為樣本集合,通過去噪處理剔除噪聲點(diǎn)后,再計(jì)算剩下的樣本點(diǎn)的中心或重心。
同時(shí),記憶也是可以更新的。當(dāng)達(dá)到記憶鏈容量時(shí),采用隊(duì)列的FIFO算法,將最先存儲(chǔ)在記憶鏈中的點(diǎn)刪除,同時(shí)鏈入最新得到的點(diǎn)。這樣在保持記憶鏈中樣本點(diǎn)數(shù)量的同時(shí)不斷更新,每更新一次就進(jìn)行一次相應(yīng)的降噪處理,使得對(duì)取食行為的記憶始終保持在最期望的狀態(tài)。
4結(jié)束語
通過對(duì)上述兩種算法的實(shí)驗(yàn)可知,二次方差法計(jì)算量較小,但適用范圍受到一定限制,對(duì)于已經(jīng)呈聚集分布的點(diǎn)降噪效果很差。改進(jìn)的均值聚類算法能精確地將各個(gè)聚類找出,但計(jì)算量很大,其算法復(fù)雜度為樣本點(diǎn)個(gè)數(shù)的平方。
動(dòng)物感知的結(jié)果是反饋給自身的印象,通過認(rèn)知形成的記憶就更加模糊。作為較低等人工動(dòng)物的人工魚來說,其感知范圍較小,感知精度較低,這使得感知聚焦的結(jié)果只能形成一個(gè)大概的印象。要作出十分精確的反應(yīng),如左前方45°距離1 m有食物,即使是作為高等動(dòng)物的人,不借助其他儀器也是很難辦到的。所以,虛擬環(huán)境中的人工魚只要感知到周圍環(huán)境的大致狀況就可以滿足需要,這就使二次方差法以及改進(jìn)的均值聚類算法在行為記憶形成中的應(yīng)用成為可能。
人工動(dòng)物是對(duì)自然界生存動(dòng)物的虛擬實(shí)現(xiàn),因此其種類也是多種多樣的。每個(gè)種類感知能力有所差別,對(duì)于生命周期較短,感知能力較差、個(gè)體較小的種類,二次方差法具有較好的適用條件。對(duì)于生命周期較長、感官較發(fā)達(dá)的種類則可以應(yīng)用改進(jìn)的均值聚類算法。
本文主要討論了在聚焦器基礎(chǔ)上的行為記憶形成算法及其優(yōu)缺點(diǎn)和應(yīng)用范圍,使人工動(dòng)物具有了一定的生命特征,并通過人工魚行為動(dòng)畫實(shí)現(xiàn)驗(yàn)證了理論和方法的有效性。下一步的感知融合,將使感知聚焦器的功能進(jìn)一步完善。屆時(shí),人工動(dòng)物將會(huì)更加逼真,生命特性也會(huì)更加豐富。
參考文獻(xiàn):
[1]LANGTON C G. Artificial life[M]//SFI studies in the science of complexity.Redwood,CA:AddisonWesley, 1998.
[2]涂曉媛.人工魚——計(jì)算機(jī)動(dòng)畫的人工生命方法[M].北京:清華大學(xué)出版社,2001:61-64.
[3]班曉娟,陳泓娟,王昭順,等.人工魚的認(rèn)知建模方法研究[J].計(jì)算機(jī)工程與應(yīng)用,2002,38(8):1315.
[4]班曉娟,曾廣平,涂序彥.基于自學(xué)習(xí)的人工魚感知系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].電子學(xué)報(bào),2004,32(12):2041-2045.
[5]班曉娟.人工魚的高級(jí)行為規(guī)劃和自進(jìn)化方法研究[D].北京:北京科技大學(xué),2003:48-50.
“本文中所涉及到的圖表、注解、公式等內(nèi)容請(qǐng)以PDF格式閱讀原文”