陸培軍
基于Agent的森林生態環境的構建
陸培軍
(南通大學,江蘇 南通 226000)
針對現社會森林生態環境遭破壞尤其是病蟲害加劇的現象,本研究構建了一種基于Agent的森林生態環境,通過建立森林生態系統模型并進行仿真實驗得到相關數據,從而對復雜的森林生態進行有效的分析研究,是實現蟲害管理的必要手段。針對不同環境條件設定相應的仿真參數,可以得到恰當的害蟲種群演化結果,有助于森林生態管理的科學決策。
森林;生態環境;Agent;蟲害;仿真
森林是人類生存與發展的很重要的一個資源,在陸地中占有很大的比例,它是屬于自然生態系統中的一種。森林資源的特點是結構比較復雜、類型豐富多彩、穩定性比較強、現存量很大、具有很高的生產力等等。除此之外,森林是一種可再生的資源,在陸地的生態系統中占有很大的比例,同時在人類的發展進程中有很大的作用。森林可以為人類的生活提供物質保證,還可以幫助人類凈化空氣、供養水分、防止風沙、保護環境、給土壤保肥以及改善生活的環境,除此之外,還有維護生態系統的平衡,保證生態系統多樣性的特點。但是,因為我國人口數量增加的速度太快,使森林資源使用的速度過快,從而造成了一系列的環境問題。現在全世界都在關注的話題就是怎么保護森林資源并維持它的可持續發展。
森林要想持久的發展,就必須保護森林資源以及森林環境。森林都在自然的狀態下朝向多樣化的方向發展,而且變得更加的復雜以及越來越完善;所謂的森林的生態環境健康發展,就是指森林能夠在接下來的一段時間內持續發展,而且可以從不好的環境中自我調節,使功能以及結構都達到相對穩定的狀態,這樣才能保證生物的多樣化發展以及讓生態系統達到平衡,這才是一個最佳的狀態。要想使一個森林系統達到健康的狀態,就要保證社會以及經濟、生態共同發展,主要滿足以下幾個條件:(1)保證森林資源可持續發展,達到自然生態的要求;(2)保持一個穩定的生產力,主要是在木材以及林副產品、經濟的有效統一;(3)能夠確保森林所要的多種生態環境;(4)保證森林系統的穩定,讓它能夠平穩發展[1]。
Agent通常指的是在一定的計算領域,在系統中能夠發揮合理性作用的統稱[2],其一般具有以下幾個特征:
(1)反應性。Agent可以認知外界的環境,像是一些物理的世界,用戶操作的系統的界面或是其他一些方面。它可以對這類事件作出相應的反應。像是模擬飛機的Agent就可以對用戶的每個操作作出相應的回應。
(2)自主性。Agent可以自主的根據自身的一些資源和局部的行為而控制用戶的行為,如果沒有外界的控制,那么可以根據自身的一些條件對系統作出相應的反應,這些都是可以進行控制的。像是SNMP[3]中的agent就可以在一定的基礎上進行獨立自主的操作,而不需要收到外界的控制。
(3)交互性。Agent可以跟Agent或是人使用Agent所特有的語言進行溝通,這種交互性可以有效的與其他用戶進行相似的工作。像是Internet的使用者就可以根據Agent語言與其他的用戶進行溝通,可以闡述自身的某些需要。
(4)主動性。Agent可以主動的作出一些行為,這些行為都是具有一定的目標性的。像是Internet可以提供自動的服務Agent,如果獲取信息之后,可以根據約定把相關條款傳遞給其他用戶;或是負責工作管理的Agent,可以把每天的最新工作情況反饋給工作人員。這樣的計算實體就是一個線程或是系統、機器人等等。
早在90年代期間,Agent技術就是一個熱門的技術,一些文獻都認為這在軟件的領域都是一個很大的突破。主要的原因是它是以計算機網絡技術為基礎的,在不久的將來會有很大的發展空間,也會有越來越大的作用。第一,Agent技術可以解決現在出現的許多分布式的問題;第二,Agent技術創造了一個數學模型,這個模型是根據計算機的特點而制造的。
Agent理論從20世紀的80年代開始,就從各個方面與相關技術有效的結合在一起,像是分布式的人工智能以及分布的計算或是人工智能方面。人們總想嘗試將理論與技術有效的結合在一起,這樣才能為用戶創造出更多的價值,而且在過程中還起到了高智能以及高靈活度等特點。特別是在人工智能的領域,工作人員一直都想把它作為一種技術,以此來推動人工智能的發展,像是開發自主學習以及自主決策等等,但是實際的問題往往更加的復雜,一般都是多Agent系統所解決不了的。
關于Agent的理論探究在20世紀的90年代初就有了很多的成果展示。人們根據Agent理論以及它的特點和組成成分,分析了Agent研究的原理以及相關規律、Agent彼此之間的交流與合作。所有的這些研究成果都是Agent自主研發的,只是為它們準備了一些驗證所需要的工具以及相關的手段等等,這些都為Agent的發展起到了及其重要的作用。所以根據理論研究的基礎,人們就開始對Agent技術作出深入的探究和分析。像是人們根據Agent軟件的應用結構開發出了BDI體系的結構以及混合式體系結構、反應式體系的結構,保證了以上結構的順利實施;創造了在Agent軟件基礎上的工具以及相關軟件的開發,工作人員對這些技術應用的十分熟練。所有以上的研究成果都使得業界的認識關注Agent理論以及它的衍生領域,像是微軟、FUJITSU、IBM以及Toshiba、Tryllian、Agent Oriented Software等等,這些企業都參與到這項活動中來,并通過與學術界的合作,開發了一些軟件和相關的產品。最主要的是,許多國際組織都開始了Agent技術的研究,并制定了一些相關的Agent的技術標準,這其中包括了一些工具語言的使用,而且還從很大的程度上研究了技術與應用軟件之間存在的一些可以操作的工具,這些都從某些范圍以及應用上對Agent技術做了詳細的解釋。
由于我國有豐富的土地資源,豐富的生物物種,伴隨著國家的迅速發展,一些有害的生物種類也在迅速的增多,這就使森林發生災害的面積在一點點地擴大,從最初的每年只有一百畝變成當前的一億畝而且還在不斷的增長之中,在這其中主要的有害生物也從幾種擴大到200多種,其中的增長速度可見一般。
有害物種進入我國,其中最大的受害者就是林業。現在我國主要的危險就是森林的病蟲害,而且這些都是由于外來的物種造成的。根據國家的統計得知,每年都會有將近2000萬畝地收到森林病蟲害的影響,是每年的森林減少量都超過了1 680萬m3;而由松材線蟲到來的災害就到了116萬hm2的森林破壞;由飛機草帶來的災害面積更是達到了1 005萬hm2以上,這其中的威力還在不斷的上升之中。
根據之前的統計可知,我國的森林的害蟲發生的面積是100萬hm2,而這只是在50年代左右,在60年代期間,上升到了180萬hm2,90年代后超過1200萬hm2,其中的增長頻率達到了25%,由森林病蟲害造成的損失超過48億元人民幣。現在,全國每年的病蟲害都占總規模的7.9%,在人工森林方面達到了25.8%,這是限制我國森林業可持續發展的一個很重要的因素。
森林的病蟲害給我國帶來的經濟損失幾乎每年超過十億元,而對生態系統的破話更是難以估計。在我國發生的病蟲害主要有以下幾個特點:第一,發生病蟲害的森林面積在不斷的擴大,而且還沒有下降的趨勢;第二,一旦發生森林病蟲害,就會涉及到很大的范圍,造成了難以估計的損失;第三,這些病蟲害會迅速的擴散,對我們國家的森林資源造成很嚴重的損失以及巨大的威脅。第四,這些害蟲在一些地方迅速增加,而且變成為主要的害蟲,而且更為嚴重的是,病蟲的數量以及種類都在不斷的增加;第五,森林的病蟲害嚴重,造成了很大的經濟損失,限制了我國山區經濟的迅速發展,為農民脫貧造成了一定的困難[5]。
(1) 人工森林面積不斷變大。中國的森林大約有14310萬公頃,大約65%的天然森林,是8500萬公頃所用。而最近幾年病蟲害在不斷地上升,這就使人工森林的面積變得越來越大。而就在1950與1980年期間,人工森林的面積就翻了一番,當然病蟲害也是增加了一半,這使得兩者保持相同的增長速度。然而現在種的數目品種又很單一,這使得森林的系統妨害能力很低,一旦有有害生物入侵,就會造成大規模的損害,從而使我國的經濟受到很大的損失。
(2) 天然林在不斷的被砍伐之中。因我國的木材發展還是較好,這就要求比較多的木材,所以說林業的快速發展就使得我國的天然樹林的數量以及質量出現大幅度的下降,這就破壞了我國森林的多樣性以及生態系統的多樣性。天然樹林在不同程度上遭到了很嚴重的破壞,還導致了森林病蟲害的流行,主要使我國的森林面積變得越來越少。
(3)國內外的交流使得病蟲害的危險性變得更加嚴重,主要使病蟲雜草的數量在不斷的上升。像是美國的白蛾、圓蚧、松材的線蟲以及松針的褐斑病等等,這些都是在病蟲害的流行中不斷從國外而引進的。國內的現象是:由于人為的活動就會使病蟲害發生的區域迅速擴大。
(4)由于不合理的使用化學的農藥使病蟲害爆發。在使用農藥的時候就會讓植物一再的依賴化學的農藥,這就造成了很大的危險,主要是生物可以產生抗藥的性能,進一步的會讓森林環境的遭到破壞。話句話說,根據一些相關的防治手段限制森林病蟲害的產生,這樣就可以預防工作中出現一些客觀要求,但是還是缺少一些器材,使工作的效率沒有達到讓人滿意的效果。
(5) 工作人員的各種工作總是處于一種被動的狀態。像是我國最近幾十年的森林病蟲害的預防工作都是在救災,而不是進行本質的處理,預防其發生。一旦發生了病蟲害,就是大量的人與錢財投入到災區。也就是說,只重視救災,而沒有在意防災,這是一個很不好的現象。
CA模型的基礎是時間、空間以及變量三者的有效組合。一般情況下,細胞排列成為規則的一維、二維或是三維的高維空間[6],在這期間要限定細胞的數目和狀態,往往把他們設置為布爾變量。參與探究的細胞都在一定的規則中由一個已知的狀態變化為另一個時間段。細胞的每個狀態都是由上個階段的細胞經過一定時間的演變而進入自己的下一個狀態,從而進入另外一個時間段。所以通常而言,都是假設每個細胞的狀態都是由上一個細胞的狀況和相鄰的狀況而決定的,也就是每兩個細胞之間都是有一定間隔的,都會伴隨著周圍細胞的變化而發生變化。因此,每個細胞都在進行著相同的變化,只是時間有前后而已,現在將半徑為3的Moore[7]圖形展示在圖1。

圖1 半徑為3的Moore領域Fig. 1 Moore field of radius being equal to 3
根據鄰域,我們知道一個模型到底是全部的還是局部的信息,但是這都局限在幾何空間上。在一般情況下,所有的狀態都假設只受到時間的限制,所以說信息在時間上也是有局限性的。現在所假定的狀態都是之前所有的時刻所決定的,只有無限大的時間狀態才能夠滿足信息的所有要求。所以,通常來講,細胞的每個模型都是在一個自然的狀態下才滿足要求的,那就會特比適合對一些局部信息的模擬。然而只用一些簡單的狀態和時間作為參照還是比較簡單的,所以說就可以把每個時間的細胞都進行設計,使他們成為一個Agent,這樣他們就會有自己獨特的狀態和所需要的演化規則。
主要的思想就是將一些生態系統進行網格化分布,用一些二維的表格表示農田的局部生態系統,而每個單元格就是一些植物的生長空間,當然他們也可能是昆蟲的一些棲息地。但是不同的是每個單元格只能被一種動物所占領,所以說這就把一塊農田分為了許多個小的細胞,這些細胞的組合就構成了一個細胞的空間模型。
因為在模型中主要涉及了三個不同的Agent,他們是農田以及農作物、昆蟲Agent,當然他們之間是存在一定關系的,像是農田就是昆蟲的生長以及演化的環境;又可以把昆蟲劃分為天地或是害蟲Agent,所以模型中的一些相互關系可以參考圖2進行相關分析。

圖2 每個模型中Agents的相互關系Fig.2 Agents’ relationship in each model
昆蟲的生存需要仰仗環境,這是因為它們要從環境中獲得一些能量以及營養,而最主要的食物來源就是農作物,而它們天敵的來源就是害蟲,如果沒有能量存在,就說明它們的主體即將消失。
所有昆蟲的行為都要受到環境的控制,但是它們的運動都會遵守一定的規則。在這個模型中,每個昆蟲都是有一定的生存空間,由于它們具有一定的視野,所以它們知道周圍的一切情況。現在主要研究的是有一定半徑限制的Moore鄰域,把它作為昆蟲的運動視野,而且所有昆蟲的活動都是由它們視野內的環境所控制的,這就使不同的昆蟲有著不同的視野空間。而我把害蟲R設置為參數1,把天敵R設置為參數3。
所有昆蟲之間的相互關系都是局部的,它們被限制發生在一定的區域內。但是所有的動態都是每天被更新的,這保證了信息的高效性。其中的一些屬性主要有以下幾個方面:
(1)所處的位置(z,y)。這可以確定主體的運動狀態,這些狀態都可以由相關坐標而顯示出來(z,y)。
(2)所具有的能量(agentEnergy)。判斷能量的多少主要是看他們具有多少的資源,并且是否能夠達到一個最大值。如果能量小于等于零的話,那么這個生物體就不在存在。
(3)生物體的年齡(agentAge)。主要的判斷方法就是它們存活的天數。
(4)顏色(color)。可以做一些相關標記,這樣能夠看出它們演化的過程。
昆蟲的生命周期中有一些固定不變的屬性,被稱為靜態屬性,它主要包括以下幾個方面:
(1)生命最開始具有的能量(agentInitEnergy),這是從最本質的能量;
(1)能量的最大值(agentMaxEnergy)。這是主體所具有的最大的能量,如果超過了這個能量,那么就會不再攝入新的能量;
(2)視野(FOV)范圍。視野范圍的確定主要是由于所處空間的半徑的大小,如果視野變大,那么它周圍的環境作用的效果就越強。而當視野的半徑為3的時候,就可以看到周圍的48個細胞,相關情況請看圖一;
(3)新陳代謝的速率(agentMetab)。這個主要是每天所耗的能的大小;
(4)繁殖力(agentReproEnergy)的大小。這個主要是指最小的能量;
(5)生命周期(agentMaxLife)的長短。主要是指最長的周期,一旦超過這個周期,就將消失;
(6)繁殖年齡(agentReproAge)。這主要代表主體的年齡,它是有具有的資源而控制的,資源越多,則年齡越大,但是會達到一個極限值。
4.2.1 作物
所謂的作物就是指在CA的基礎上所定義的Agent的代表,它是用來模擬農作物的成長。主要是由n×n的網格所構成的,同樣的每個網格都是一個細胞,它可以代表每個植株以及它相關的屬性。每個不同的時間都會由于環境的不同而發生相應的變換,這是在模仿生物的不同周期。每個作物Agent生長可以分為三個不同的階段,主要是:幼苗以及分蘗期、成熟期,不同時期就會對生物有著不同的作用范圍,除此之外他們抵抗害蟲的能力也不盡相同,有著強以及弱之分。像是幼苗期的植物都會被害蟲占據兩次,發生一定的病變;而在分蘗期的植物會被占據一次,也會發生一定的病變;但是成熟期的植物就不會發生任何的病變。它也同樣具有一定的屬性,主要是以下幾個方面:
有效的積溫(1evelOfEAT)是作物當前生長的環境;
環境的溫度(1evelOfTemperature)是要在運行模型前設置好的;
環境的濕度(1evelOfHumidity)在運行模型前設置好的;
4.2.2 害蟲
環境的溫度以及濕度都會影響害蟲的生長以及相應的繁殖[8],當然天地也是會受到抑制作用的。當環境的有效積溫(EAT)的增大時,作物也會繁殖成長,但是一旦達到一個最大值就會死亡。它們只是在局部的范圍內受到影響,之外就不會受到任何的局部作用。
在不同的時間段害蟲的變化情況:
Rule 1:觀察
If 周圍存在天敵
Then goto Rule 2
Else goto Rule 3
Rule 2:躲避
If 反方向的網格是空的
Then 移向該網格
Else goto Rule 4
Rule 3:尋找食物
If 周圍的網格有植物
Then 向該網格移動
Else goto Rule 4
Rule 4:轉換位置
If 網格是空的
Then向該網格移動
Else不動
4.2.3 天敵
天敵都是按照規則的變化而發生相應的位置變化:
Rule 1:探測情況
If 周圍的網格是空的 并且 讓其他同伴占據
Then 不動
Else goto Rule 2
Rule 2:尋找食物
If 周圍的網格中有害蟲
Then 移向該網格
Else goto Rule 3
Rule 3:移向該表格
If 周圍的網格是空
Then移向該網格
Else 不動
使用Java語言編寫程序,把用戶設置為面向所有對象,在個人電腦上進行對害蟲的模擬演化的實驗,相關的結果可以用圖形表示。Java就是要實現將Agent擬合為一個整體。Java語言是有獨特的性質,可以對相關數據進行處理。

表1 模型CROPLAND的相關結構Table 1 The structure of model CROPLAND
相關的模型構造主要見表1,這里的Main文件主要的核心文件,涉及的方法以及屬性如下所示:
InitSwarm(),模型初始化;
buildObjects(),建立模型以及初始頁面的設置;
buildActions(),調用建立列表;
activateIn(),進行仿真處理;
go(),運行模型;
drop(),返回初始狀態。
主要有兩個模型文件:java以及Jpest Model Swarm,根據不同的要求采用不同的模型,相關方法以及功能如下所示:
buildObjects(),建立對象;
buildActions(),設置不同的列表;
activateln(),建立運行環境。
JpestModelSwarm.java還有以下幾個方面:
pest Death(),pest Birth(),count Pests(),getAanedLit()和getPstist(),這些都可以進行處理以及最后數據的輸出。
根據建立的模型進行模擬實驗[9]。主要考慮害蟲的防治問題,所以說在一開始就可以引進害蟲的天敵,這樣就可以構建一個捕食與被捕食的模型。
在實驗中,使用100×100的網格模型。相關狀態圖請看圖3,參數的設置如表2以及表3所示。

圖3 系統的狀態圖Fig. 3 The state diagram of the system

表2 參數的設置1Table 2 Parameter settings 1

表3 參數的設置2Table 3 Parameter settings 2
本實驗所采用的模型是一個比較經典的模型,這是在20世紀時由A J Lotka以及V Volterra提出的,相關公式如下:

這里, x,y前的系數是一個常量,b1和c2是影響密度的因素;c2和b2是影響種群的因素;a1和b2是種群的增長率。在捕食與被捕食這個關系中,一個種群可以被另一個種群所食用。
在某一種特定的環境下,被捕食的種群Insect 1都會在最初始時快速增長,但是一旦到達一個最大值后,就會開始下降甚至是在逐漸的消失;而相反的是:捕食的種群Insect 2最開始是增長緩慢,但是一旦種群Insect 1出現下降的趨勢時,種群Insect 2就開始增快,但是如果達到了環境的最大容納力之后就會變得穩定起來。所以也就是說,在種群的演變中,就是要有效的控制害蟲這個種群。
本研究主要把計算機的仿真模型和細胞的自動機處理模型有效的結合在一起,創建一個人工的生態系統,根據害蟲捕捉食物的這個現象進行了模擬的實驗。主要的思想即采用一個自下而上的模型,利用Agent的相關連接的規則,創建一個整體的模型。這樣通過該模型進行一些實驗,得到較為真實的數據,通過這些數據,研究專家可以對森林系統作出一些合理的分析,而這些研究可以作為防害蟲的理論依據。不同的環境會有不同的參數,根據這些參數可以得到一些種群在演化過程中的結果[10],通過這個結就可以幫助森林進行可持續發展的研究。但是從某種程度上講,森林的可持續發展這個理論可以應用于森林妨害的整個過程中,而且還會對之后的森林管理以及經營都帶來一個有效的保證。只有這樣才能一步步的實現以下的情景:把生態學作為基礎,把森林技術作為一種主要的防蟲手段,這樣就可以結合森林技術對森林的有害生物進行預防以及處理,從本質上保證森林生態環境的可持續發展。
[1] 王瑞燕, 趙庚星, 周 偉. 土地利用對生態環境脆弱性的影響評價[J].農業工程學報, 2008, 24(12): 215-220.
[2] 常志明, 毛新軍,齊治昌.基于Agent的網構軟件構件模型及其實現[J]. 軟件學報, 2008, 19(5): 1113-1124.
[3] 區海平,壽國礎.基于MIB定義的SNMP分析系統及實現[J].計算機應用, 2009, 29(1): 38-41.
[4] 李德毅, 肖俐平.網絡時代的人工智能[J].中文信息學報,2008,22(2):3-9.
[5] 劉嫦娥. 山區經濟包容性增長策略研究[J]. 現代管理科學,2011, (12): 43-44.
[6] 張軍旗,周向東,王 梅.基于聚類分解的高維度量空間索引B+-Tree[J].軟件學報, 2008, 19(6).
[7] 席政軍, 王 鑫, 李永明. 量子Mealy自動機和量子Moore自動機的等價[J].計算機研究與發展, 2009, 46(9): 1523-1529.
[8] 王 兵,魯紹偉.中國經濟林生態系統服務價值評估[J].應用生態學報, 2009, 20(2): 417-425.
[9] 劉 丹,唐紹均.論農村社會保障制度與森林生態環境保護[J]. 科技管理研究, 2008, 28(5): 48-50.
[10] 王金良, 李慧鳳. Logistic種群演化模型的漸近加權周期性[J]. 應用數學學報, 2011, 34(3): 496-501.
Construction of forest ecological environment based on Agent
LU Pei-jun
(Nantong University, Nantong 226000, Jiangsu, China)
In accordance with the phenomenon that at present time, forest ecological environment suffers from destructions by nature disaster, human conduct, especially, by intensifying diseases and insect pests, a forest ecological environment based on Agent technique has been built up, with which the forest ecological system model was set up and the simulation experiments were carried out in orde to obtaim some relative data; on the basis of the studying, the more complex analysis and study can be effectively conducted. By taking into account different environment factors, the simulation parameters were accordingly set; thus obtaining the evolution results of pest populations, and being helpful in scientific desision-making for forest ecological management.
forest; ecological environment; Agent; insect pest;simulation
S711
A
1673-923X(2012)08-0075-06
2012-01-24
江蘇省高校自然基金項目(10KJB510022);南通市科技計劃項目(K2010065)
陸培軍(1975—),江蘇南通人,南通大學計算機科學與技術學院講師;電話:13962916892
[本文編校:吳 彬]