據美國《連線(xiàn)》雜志網(wǎng)站報道,你是否曾經(jīng)注意過(guò)螞蟻是如何外出覓食的?這樣的問(wèn)題對于一般人而言似乎顯得有些莫名其妙,但是對于生態(tài)學(xué)家和動(dòng)物行為學(xué)家而言這一點(diǎn)卻非常關(guān)鍵和有趣。尤其是在明確知道螞蟻們實(shí)際上并沒(méi)有統一的中央指揮調度系統的前提之下便更是如此。![]() 對蟻群行為的研究正為人類(lèi)社會(huì )的工程學(xué)研究提供啟發(fā) ![]() 通過(guò)簡(jiǎn)單的信息交換,蟻群成功應對不斷變化的外部世界的挑戰。它們采用的網(wǎng)絡(luò )體系可以非常迅速方便的修復,并且可以隨時(shí)擴大或縮減規模 有一點(diǎn)非常讓人感興趣,那就是螞蟻們的組織方式與人類(lèi)社會(huì )所采用的一些工程解決方案之間的高度相似性。其中一個(gè)案例便是所謂的“螞蟻網(wǎng)絡(luò )”(Anternet)。美國斯坦福大學(xué)的一個(gè)研究組發(fā)現沙漠螞蟻們在外出覓食時(shí)采用的組織方式與人類(lèi)社會(huì )在計算機網(wǎng)絡(luò )方面所采用的,旨在規范數據傳輸的TCP協(xié)議之間存在算法方面的高度相似性——螞蟻網(wǎng)絡(luò )和人類(lèi)使用的信息網(wǎng)絡(luò )算法設計都采用了正反饋機制:在TCP傳輸協(xié)議中,一個(gè)數據包的抵達確認信號會(huì )激發(fā)下一個(gè)數據包的發(fā)送開(kāi)始,而一只滿(mǎn)載而歸的螞蟻個(gè)體則會(huì )觸發(fā)下一只覓食的螞蟻個(gè)體出發(fā)繼續覓食的工作。這些研究不禁讓我們驚嘆于螞蟻們的高度智慧——它們竟然能夠發(fā)明出與人類(lèi)相媲美的復雜精妙的系統。但是這種相似性還不是螞蟻網(wǎng)絡(luò )給與我們的最令人興奮的地方,關(guān)鍵的部分在于,還有沒(méi)有哪些是螞蟻們一直在采用的精妙方法,但是我們人類(lèi)卻還沒(méi)有意識到的?換句話(huà)說(shuō),螞蟻們是否能夠給予我們工程學(xué)界未來(lái)的走向以啟迪? 在大約1.3億年的演化歷程中,進(jìn)化的過(guò)程讓螞蟻網(wǎng)絡(luò )經(jīng)受了在不斷變化和嚴苛環(huán)境條件下的考驗。螞蟻們會(huì )利用簡(jiǎn)單的基于簡(jiǎn)短互動(dòng)的網(wǎng)絡(luò )來(lái)達成對不斷變化的網(wǎng)絡(luò )的適應。在整個(gè)螞蟻群體中,單個(gè)的螞蟻都不知道接下來(lái)到底要做什么,去哪里。它們只是機械的按照之前跟另一只螞蟻相互碰觸的觸須,或者地面上留下的信息素執行自己的動(dòng)作并選定路徑。然而正是這種看似簡(jiǎn)單機械的機制確保了螞蟻們的生存,現在全世界有超過(guò)1.1萬(wàn)種螞蟻種類(lèi),幾乎分布于地球表面所有可以生活的地方。因此這樣有效的螞蟻網(wǎng)絡(luò ),必定有一些值得我們學(xué)習借鑒的地方。 如何應對復雜網(wǎng)絡(luò )的高成本? 沙漠螞蟻需要外出采集水分來(lái)源,但是在炙熱的陽(yáng)光下在沙漠中奔走本身也會(huì )耗費大量水分。冒著(zhù)酷熱搬回來(lái)一些含水的食物之后它們便能夠從中攝取水分。蟻群會(huì )評估成本,它們會(huì )比較得失,如果外出的水分成本耗費太高,那么反饋機制將讓它們放棄外出,將食物就留在地面上不去理會(huì ),直到空氣中的濕度條件稍稍合適之后才會(huì )觸發(fā)前往采集。 和這種做法相似,人類(lèi)社會(huì )在計算機TCP數據傳輸協(xié)議中也能找到類(lèi)似的做法:當缺乏足夠帶寬時(shí),協(xié)議會(huì )阻止額外數據包的發(fā)送,因為如果帶寬不足,你所發(fā)送的信息有可能會(huì )丟失,因此總一開(kāi)始就不應當進(jìn)行發(fā)送,除非可以確認其可以抵達目的地。 在過(guò)去的25年間,一個(gè)研究小組一直致力于了解螞蟻網(wǎng)絡(luò )的算法技術(shù)是否會(huì )隨著(zhù)時(shí)間或環(huán)境等條件的改變而發(fā)生相應的變化。他們對超過(guò)300個(gè)螞蟻群落進(jìn)行跟蹤觀(guān)察,并使用基因技術(shù)觀(guān)察哪些蟻群最終能夠產(chǎn)生最多的后代(發(fā)展的最成功)。 蟻群會(huì )在它們的蟻巢里儲備食物作為一種生存策略。25年的研究結果顯示,那些每到天氣太熱就會(huì )放棄外出轉而在蟻巢里避暑的一群獲得了更大的成功。因此規避便成了一種蟻群層面的最佳策略——那就是,在沙漠地區的蟻群中間,要想獲得長(cháng)期的生存,螞蟻們的做法并不是去改變或優(yōu)化它們的系統網(wǎng)絡(luò ),而是選擇在合適的時(shí)機外出而不額外浪費資源。 當面對食物匱乏等不利條件時(shí),螞蟻系統的解決方案精髓是最小化運行成本,而不是立即尋求加大食物的儲備。這種做法對于任何一個(gè)體系而言都是最可以持續的方案——不管具體的對象是沙漠螞蟻群落還是計算機網(wǎng)絡(luò )中的數據包發(fā)送,即達成長(cháng)期意義上的穩定性,并避免造成不必要的浪費。 大型和小型系統 但是如果系統的規模擴大之后,將會(huì )怎樣?正如人類(lèi)的計算機網(wǎng)絡(luò )系統一樣,螞蟻群落系統也必須面對群落規模擴大之后的管理問(wèn)題,這一系統必須可以接受局部的失效。 由于大規模系統必須允許出現一些偏差和錯誤,因此最佳的解決方案便是,讓群體中每一個(gè)個(gè)體產(chǎn)生的貢獻超過(guò)其自身對群體造成的損失以及撫養一個(gè)新生個(gè)體所要付出的成本。因此,在一個(gè)大規模系統中非常關(guān)鍵的一點(diǎn)便是冗余設計以及最小化信息量——在巨大的蟻群中,這種極高效率的選擇是通過(guò)這樣一種方式實(shí)現的,即大量的交流是通過(guò)兩只互相陌生的螞蟻個(gè)體之間簡(jiǎn)單的觸須碰觸實(shí)現的,非常迅速,沒(méi)有額外的信息交流。 在工程領(lǐng)域我們同樣在尋找方法確保產(chǎn)出的可靠性,隨著(zhù)網(wǎng)絡(luò )規模的擴大,我們不斷尋找有效率的,便宜的解決方案,而螞蟻群落的做法給我們的啟示是,有時(shí)候容忍某些不完美可能卻恰恰是通往最佳解決方案的途徑。 先到先得的策略 螞蟻算法的多樣性顯示出進(jìn)化過(guò)程對于不同環(huán)境限制因素的響應。由于蟻群之間存在相互競爭,并且很多時(shí)候它們在覓食時(shí)所選定的目標可能會(huì )是同一個(gè)食物,那么這時(shí)候誰(shuí)先到誰(shuí)就有可能贏(yíng)得先機。 但是在一個(gè)沒(méi)有中央指揮體系的系統中,又該如何達成最先抵達的目標呢?對于這個(gè)問(wèn)題的解決方法是蟻群必須設法在最大的面積上幾乎在任何時(shí)間點(diǎn)都有本蟻群的成員在搜尋,這樣一來(lái),不論在任何地點(diǎn)出現食物,就可以有最大的可能性在其附近有本群的螞蟻成員在巡邏,可以及早發(fā)現。 但是如果沒(méi)有中央統一的調度系統,你又該如何進(jìn)行這樣的統一布置呢?蟻群所采用的一種方案是建立一些永久性的固定巡邏路線(xiàn),就像是我們的手機信號塔,螞蟻們會(huì )固定的沿著(zhù)這些道路進(jìn)行巡視。極具攻擊性的阿根廷蟻在這方面非常擅長(cháng),它們可以及時(shí)找到任何你掉在地上的面包屑。 阿根廷蟻還會(huì )調整自己的巡視路線(xiàn),當身邊還有其它許多同伴時(shí),它們會(huì )采用一種近乎是隨機的路線(xiàn)選擇,從而讓每一只螞蟻對一小塊區域進(jìn)行徹底的搜查,而當處于陌生區域,并且同伴的數量較少時(shí),它們則傾向于采取直行路線(xiàn),從而確保數量較少的蟻群得以覆蓋更大的范圍。就像一個(gè)情報反饋系統,隨著(zhù)每一只螞蟻個(gè)體對局部低點(diǎn)信息情報的反饋,整個(gè)蟻群逐漸掌握有關(guān)整個(gè)體系的完整信息,而在這一過(guò)程中并沒(méi)有任何中央統一調度體系的干預。 對抗安全漏洞和疾病 如前所述,當數以百計的蟻群相互接近,此時(shí)資源就會(huì )顯得緊張,各個(gè)蟻群之間將會(huì )出現對食物等資源的爭奪,這樣做必然就會(huì )導致出現安全問(wèn)題上的顧慮。對此,蟻群相應的進(jìn)化出了對入侵的偵測并對安全漏洞做出響應的機制。 一個(gè)蟻群可能會(huì )盜用或竊取其它蟻群留下的信息,從而找到其它蟻群率先找到的食物,比如它們會(huì )探測其它蟻群留下的化學(xué)蹤跡信息并追蹤這些信息。蟻群對此采取的策略并不是徹底的防止入侵行為的發(fā)生,而是發(fā)展出一套根據入侵規模大小而并與之對應的應對體系。 這種行為對于計算機信息安全領(lǐng)域同樣具有啟發(fā)性,我們或許不應追求完美,我們所要做的應當是在局部范圍內對威脅做出評估并采取行動(dòng)消除入侵。蟻群已經(jīng)找到一種有效途徑,對入侵行為做出響應,而在此過(guò)程中并沒(méi)有更高一級中央調度系統的介入。人類(lèi)社會(huì )目前正在顯現一些運用相似設計思想的安全系統。 另外蟻群還有一整套的危機應對機制,如那些常常在樹(shù)上覓食的螞蟻種類(lèi),有些樹(shù)木的樹(shù)枝非常容易折斷,這樣就會(huì )引起蟻群的損失。為了及時(shí)發(fā)現這種危機并做出響應,蟻群會(huì )以一個(gè)環(huán)圈的形式前行,這樣就會(huì )有兩個(gè)方向的信息流連續的交換。當發(fā)生樹(shù)枝折斷,一個(gè)方向的信息流中斷,蟻群便會(huì )立即意識到危機的發(fā)生并著(zhù)手重建環(huán)圈網(wǎng)絡(luò )。 相似的,早期的光纖通訊網(wǎng)絡(luò )常常會(huì )由于農場(chǎng)或建筑施工等原因被挖斷,這樣的后果是嚴重的,因為它可能導致一個(gè)半局部地區的信息通訊中斷。不過(guò)工程師們很快想出了解決方案,他們參考蟻群的做法,環(huán)圈通訊網(wǎng)絡(luò )將能確保更加迅速和有效地修復損傷。 有一點(diǎn)是可以肯定的,那就是在未來(lái)我們的工程信息網(wǎng)絡(luò )還將繼續演化發(fā)展。工程師們將會(huì )繼續研究蟻群在解決一些重大問(wèn)題時(shí)的方案,它們所使用的算法將會(huì )繼續給予人類(lèi)以改進(jìn)設計的靈感。 通過(guò)簡(jiǎn)單的信息交換,而不是我們目前所采用的復雜反饋體系,蟻群成功應對不斷變化的外部世界的挑戰——比如不定時(shí)出現又隨時(shí)會(huì )消失的食物來(lái)源。它們采用的網(wǎng)絡(luò )體系可以非常迅速方便的修復,并且可以隨時(shí)擴大或縮減規模。 在歷史上,蟻群帶來(lái)的啟示已經(jīng)被廣泛運用于工業(yè)和其它設計領(lǐng)域。盡管單個(gè)的螞蟻可能是懶散的,毫無(wú)思想和徹底愚蠢的,但是一旦置于一個(gè)龐大完整的蟻群體系之下,我們則有必要學(xué)習其組織方式和體系——螞蟻們在漫長(cháng)的演化過(guò)程中已經(jīng)實(shí)現了一種高度的協(xié)同體系,在這一方面我們望塵莫及。(晨風(fēng)) |