李紀(jì)永,馬學(xué)強(qiáng)
(1.山東師范大學(xué) 信息科學(xué)與工程學(xué)院,山東 濟(jì)南 250014;2.山東省分布式計(jì)算機(jī)軟件新技術(shù)重點(diǎn)實(shí)驗(yàn)室,山東 濟(jì)南 250014)
現(xiàn)代農(nóng)林業(yè)對(duì)植物生長(zhǎng)過(guò)程的研究已經(jīng)越來(lái)越重視,尤其是利用計(jì)算機(jī)對(duì)植物的虛擬研究,其反映了真實(shí)的植物生長(zhǎng)過(guò)程。虛擬植物具有操作靈活、可視性好的特點(diǎn),可以在計(jì)算機(jī)上直觀形象地再現(xiàn)植物的生長(zhǎng)過(guò)程或者虛擬植物農(nóng)場(chǎng)等,較好地克服了實(shí)際農(nóng)林場(chǎng)中植物數(shù)目龐大、生理生長(zhǎng)周期長(zhǎng)和周圍環(huán)境影響等問(wèn)題。虛擬植物的生長(zhǎng)過(guò)程可以用Lindenmayer系統(tǒng) (L系統(tǒng))進(jìn)行植物實(shí)體的可視化建模,L系統(tǒng)是表達(dá)植物拓?fù)浣Y(jié)構(gòu)和生長(zhǎng)規(guī)律的重要手段,是設(shè)計(jì)虛擬植物與模擬植物生長(zhǎng)過(guò)程的重要手段之一。L系統(tǒng)本身可以作為虛擬植物的生長(zhǎng)函數(shù),并且能夠結(jié)合植物的生長(zhǎng)參數(shù)模擬植物的動(dòng)態(tài)生長(zhǎng)過(guò)程,使植物的形態(tài)發(fā)生模型與生態(tài)生理模型較好地融合。
目前,虛擬植物的研究主要是定量化地測(cè)定植物的拓?fù)浣Y(jié)構(gòu),采集大量植物個(gè)體的數(shù)據(jù),在計(jì)算機(jī)上生成植物的可視化效果[1]。但是,這忽視了植物是一個(gè)有機(jī)的整體,缺乏植物連續(xù)性生長(zhǎng)的規(guī)律描述。因此,本文結(jié)合植物生長(zhǎng)方程(如 Logistics方程),在 L系統(tǒng)中實(shí)現(xiàn)虛擬植物參數(shù)與植物生長(zhǎng)特性的有機(jī)結(jié)合,并將隨機(jī)L系統(tǒng)融合進(jìn)來(lái),真正實(shí)現(xiàn)植物生長(zhǎng)過(guò)程中的某種特性(如枝干的長(zhǎng)度)隨著時(shí)間變化而發(fā)生的動(dòng)態(tài)變化,體現(xiàn)了植物連續(xù)生長(zhǎng)和隨機(jī)生長(zhǎng)的特點(diǎn),具有重要的生物學(xué)意義。
L系統(tǒng)是由匈牙利生物學(xué)家LINDENMAYER A于1968年提出[2]的,并且作為虛擬植物生長(zhǎng)的數(shù)學(xué)理論。L系統(tǒng)一般由字符集V、初始狀態(tài)ω和產(chǎn)生式集P組成,即 L系統(tǒng) G=<V,ω,P>。L系統(tǒng)的本質(zhì)是字符串的同步并行重寫,結(jié)合海龜解釋[3]將L系統(tǒng)中的每個(gè)字符賦予特定的含義來(lái)展示植物的拓?fù)浣Y(jié)構(gòu)。
為了表達(dá)植物的形態(tài)特征,首先設(shè)置初始字符串和產(chǎn)生式集,根據(jù)產(chǎn)生式替換規(guī)則對(duì)原字符串進(jìn)行不斷的遞歸迭代操作。例如,初始狀態(tài)ω=F,產(chǎn)生式P為:F→F[-F]F[+F]F。其中,海龜解釋如下:
F:沿著當(dāng)前的方向向前移動(dòng)一步,從原先位置到當(dāng)前位置畫一條線段。
+:把龜形當(dāng)前方向向左旋轉(zhuǎn)規(guī)定的角度。
-:把龜形當(dāng)前方向向右旋轉(zhuǎn)規(guī)定的角度。
[:將龜形的當(dāng)前狀態(tài)壓入堆棧。
]:從堆棧中彈出一個(gè)狀態(tài)作為當(dāng)前狀態(tài)。
經(jīng)過(guò)一次迭代后,產(chǎn)生式為:
F→F[-F]F[+F]F[-F[-F]F[+F]F]F[-F]F[+F]F[+F[-F]F[+F]F]F[-F]F[+F]F
迭代次數(shù)n取不同值時(shí)的植物動(dòng)態(tài)生長(zhǎng)過(guò)程如圖1所示。
通過(guò)以上基本的L系統(tǒng)理論可以看出,植物的生長(zhǎng)是一個(gè)遞歸、迭代的規(guī)律分裂過(guò)程,并且是有固定速率和規(guī)律的生長(zhǎng)。因此,可以將一種植物對(duì)應(yīng)一個(gè)迭代函數(shù)系統(tǒng)[4],通過(guò)生長(zhǎng)方程改變其中的某些參數(shù)值來(lái)模擬植物的生長(zhǎng)過(guò)程。
根據(jù)植物學(xué)基本理論,植物的生長(zhǎng)是植物細(xì)胞按照一定的遺傳規(guī)律不斷發(fā)育、分裂的過(guò)程。因此,植物的生長(zhǎng)方程可以描述為植物的生長(zhǎng)量y(t)隨時(shí)間t變化的數(shù)學(xué)模型。植物的生長(zhǎng)過(guò)程大致呈緩慢生長(zhǎng)、快速生長(zhǎng)、緩慢生長(zhǎng)和停止生長(zhǎng)幾個(gè)階段,生長(zhǎng)量的變化曲線大致呈“s”形。許多研究者將指數(shù)函數(shù)、雙曲線函數(shù)和S-曲線函數(shù)等曲線函數(shù)應(yīng)用于植物生長(zhǎng)量的擬合,用來(lái)描述植物的生長(zhǎng)周期、產(chǎn)量預(yù)測(cè)和葉片生長(zhǎng)等。其中,大多數(shù)S-型曲線方程用于近似擬合植物節(jié)間長(zhǎng)度和葉片尺寸等生長(zhǎng)數(shù)據(jù),這些曲線方程被稱為植物的生長(zhǎng)方程。
不同植物的生長(zhǎng)過(guò)程符合不同的生長(zhǎng)方程,對(duì)此,許多專家學(xué)者都做了不同的研究。鄧紅兵等[5]運(yùn)用天然林中的紅松、長(zhǎng)白落葉松解析木數(shù)據(jù)[6],對(duì)樹(shù)高進(jìn)行了擬合和研究,結(jié)果表明,Richard方程擬合天然林中的紅松最好,Mitseherlieh方程擬合長(zhǎng)白落葉松樹(shù)高比較理想。
Richards方程式如式(1)所示,Mitseherlieh方程式如式(2)所示。
其中,A為植物生長(zhǎng)的最大高度,t為時(shí)間參數(shù),r和c為植物生長(zhǎng)速率參數(shù)。
Logistics方程很好地模擬了紫果云杉的樹(shù)高,其生長(zhǎng)方程為:
其中,A為植物生長(zhǎng)的最大高度,t為時(shí)間參數(shù),m和r為與植物生理生長(zhǎng)有關(guān)的參數(shù)。
瑞典林學(xué)家LUNDQVIST成功地利用Korf方程建立了歐洲赤松和挪威云杉人工林的樹(shù)高生長(zhǎng)模型,其生長(zhǎng)方程為:
其中,A為植物生長(zhǎng)的最大值參數(shù),t為時(shí)間參數(shù),b和c為生長(zhǎng)參數(shù)。
從以上學(xué)者對(duì)植物的研究可以看出,利用生長(zhǎng)方程來(lái)擬合植物枝節(jié)長(zhǎng)度是比較普遍的。利用生長(zhǎng)方程從數(shù)學(xué)方法的角度對(duì)植物或植物一部分的生長(zhǎng)數(shù)據(jù)進(jìn)行系統(tǒng)化描述,建立植物的數(shù)學(xué)模型。通過(guò)記錄植物相關(guān)數(shù)據(jù),然后利用MATLAB軟件對(duì)所要擬合的非線性生長(zhǎng)模型定義M文件,獲取公式參數(shù),最后輸出結(jié)果,從而得到非線性回歸方程,即生長(zhǎng)方程。
根據(jù)植物學(xué)基本理論,在植物生長(zhǎng)初期,植物枝節(jié)的生長(zhǎng)速度緩慢,節(jié)間較短;在植物生長(zhǎng)中期,生長(zhǎng)速度明顯加快,節(jié)間呈指數(shù)增長(zhǎng);在植物生長(zhǎng)后期,生長(zhǎng)速度又會(huì)變慢,最后,節(jié)間基本達(dá)到最大的長(zhǎng)度,符合“s”形生長(zhǎng)特點(diǎn)。結(jié)合L系統(tǒng)基本理論,可以將植物節(jié)間模擬得出的Logistics方程應(yīng)用到L系統(tǒng)的節(jié)間長(zhǎng)度,即海歸的爬行路程,模擬植物在不同時(shí)期的生長(zhǎng)狀況。將Logistics生長(zhǎng)方程融合到確定性L系統(tǒng)、參數(shù)L系統(tǒng)和隨機(jī)L系統(tǒng)中,通過(guò)具體的模擬實(shí)驗(yàn)進(jìn)行對(duì)比觀察,使虛擬植物具有指導(dǎo)生產(chǎn)實(shí)際的重要意義。
對(duì)于確定性L系統(tǒng),植物生長(zhǎng)的每一個(gè)周期都是確定性的變化,即產(chǎn)生式字符串周期替換,每一次的迭代可以看作是植物的周期生長(zhǎng)。但是,根據(jù)植物學(xué)理論,植物生長(zhǎng)的每一年齡階段的生長(zhǎng)速度是不同的,因此,在確定性L系統(tǒng)中把L系統(tǒng)的迭代次數(shù)表示為植物的不同生長(zhǎng)周期,每一生長(zhǎng)周期植物的枝干生長(zhǎng)速度符合植物的生長(zhǎng)規(guī)律。針對(duì)植物枝節(jié)生長(zhǎng)的變化情況,設(shè)計(jì)模擬環(huán)境,只將Logistics生長(zhǎng)方程應(yīng)用于植物節(jié)間生長(zhǎng),隨著時(shí)間的變化,植株節(jié)間也隨Logistics生長(zhǎng)曲線不斷變化,其他的參數(shù)值均不變。設(shè)L系統(tǒng)的初始狀態(tài)為F、產(chǎn)生式為 F→F[-FF][+F][--F]F[++F]F、偏轉(zhuǎn)角度為 22°、線寬為 1、迭代次數(shù)為 3、節(jié)間長(zhǎng)度以 Logistics曲線隨時(shí)間的變化生長(zhǎng)但不長(zhǎng)新枝節(jié)時(shí),設(shè)計(jì)環(huán)境如圖2所示。
在節(jié)間長(zhǎng)度曲線中,橫軸代表時(shí)間,縱軸代表長(zhǎng)度。植物在不同生長(zhǎng)時(shí)期的生長(zhǎng)狀況如圖3所示。
從圖3可以看出,如果植物生長(zhǎng)只是增長(zhǎng)節(jié)間長(zhǎng)度時(shí),植物的總體生長(zhǎng)量變化基本符合Logistics曲線方程的變化規(guī)律,節(jié)間生長(zhǎng)量的變化大致呈“s”形的生長(zhǎng)規(guī)律。
參數(shù)L系統(tǒng)在確定性L系統(tǒng)的基礎(chǔ)上增加了參數(shù),將產(chǎn)生式的參數(shù)看成植物的生長(zhǎng)周期,設(shè)置系統(tǒng)的初始狀態(tài)以及帶參數(shù)的產(chǎn)生式。系統(tǒng)中的第一次迭代表示植物起初的生長(zhǎng)年齡階段,即植物的第一次生長(zhǎng)。根據(jù)生長(zhǎng)周期與生長(zhǎng)方程式中的時(shí)間關(guān)系,可以生成植物的初始狀態(tài)。隨著植物下一次生長(zhǎng)的到來(lái),即植物下一生長(zhǎng)周期開(kāi)始,植物不僅產(chǎn)生新枝而且枝節(jié)也以生長(zhǎng)方程的曲線變化規(guī)律不斷生長(zhǎng)。例如,設(shè)L系統(tǒng)的初始狀態(tài)為F(1)、產(chǎn)生式為 F(n):n<6→F(N+1)[-F(N+1)F(N+1)][+F(N+1)][--F(N+1)]F(N+1)[++F(N+1)]F(N+1)、 偏 轉(zhuǎn) 角 度為 22°、線寬為 1、迭代次數(shù) n為 4,每一次迭代代表植物的一個(gè)生長(zhǎng)周期,與產(chǎn)生式的參數(shù)相關(guān)聯(lián),設(shè)定植物的生長(zhǎng)周期與生長(zhǎng)方程中的時(shí)間關(guān)系為2倍關(guān)系。在一次生長(zhǎng)間隔,即植物的一個(gè)生長(zhǎng)周期內(nèi),節(jié)間長(zhǎng)度以Logistics生長(zhǎng)曲線增長(zhǎng),生長(zhǎng)過(guò)程以L系統(tǒng)產(chǎn)生式的生長(zhǎng)規(guī)律迭代生長(zhǎng),植物的動(dòng)態(tài)生長(zhǎng)過(guò)程如圖4所示。
由圖4可知,在模擬植物的生長(zhǎng)過(guò)程中,節(jié)間不僅以Logistics曲線生長(zhǎng),并且結(jié)合參數(shù)L系統(tǒng),每一次生長(zhǎng)周期產(chǎn)生新枝節(jié),符合植物隨生長(zhǎng)年齡的變化而變化的生長(zhǎng)規(guī)律。
不管是D0L系統(tǒng)還是參數(shù)L系統(tǒng),生成的植物拓?fù)浣Y(jié)構(gòu)都是自相似性的,是有規(guī)律的生長(zhǎng)。隨機(jī)L系統(tǒng)的應(yīng)用使植物新枝的產(chǎn)生并不是按照固定的拓?fù)浣Y(jié)構(gòu)生長(zhǎng),而是以隨機(jī)的概率應(yīng)用產(chǎn)生式,生成不同結(jié)構(gòu)的枝干。隨機(jī)L系統(tǒng)在參數(shù)L系統(tǒng)的基礎(chǔ)上增加了參數(shù)變量π,并且增加了產(chǎn)生式的應(yīng)用個(gè)數(shù)。當(dāng)產(chǎn)生式字符被替代時(shí),需要以一定的概率應(yīng)用不同的產(chǎn)生式,這樣枝節(jié)的生長(zhǎng)具有隨機(jī)性的特點(diǎn)。枝節(jié)的生長(zhǎng)應(yīng)用于Logistics生長(zhǎng)方程中,使枝節(jié)的生長(zhǎng)隨著生長(zhǎng)周期的變化而不斷生長(zhǎng)。例如,L系統(tǒng)的初始狀態(tài)為F(1),隨機(jī)L系統(tǒng)的產(chǎn)生式為:
其中,產(chǎn)生式的應(yīng)用概率分別為 πp1、πp2、πp3,取值分別為0.2、0.2和 0.6,偏轉(zhuǎn)角度為 22°,線寬為 1,迭代次數(shù)為4,節(jié)間長(zhǎng)度以Logistics方程曲線生長(zhǎng)。這樣,植物在不同生長(zhǎng)周期的動(dòng)態(tài)生長(zhǎng)過(guò)程如圖5所示。
從圖5可以看出,將隨機(jī)L系統(tǒng)與參數(shù)L系統(tǒng)結(jié)合,并將Logistics方程應(yīng)用于植物節(jié)間的生長(zhǎng),不僅體現(xiàn)了植物的隨機(jī)性生長(zhǎng)的特點(diǎn),而且體現(xiàn)了植物的動(dòng)態(tài)生長(zhǎng),表現(xiàn)出了植物的真實(shí)性和美觀性。
植物模擬在計(jì)算機(jī)農(nóng)業(yè)、虛擬現(xiàn)實(shí)等技術(shù)領(lǐng)域都有很好的應(yīng)用。本文不僅對(duì)傳統(tǒng)的L系統(tǒng)模型進(jìn)行了改進(jìn),而且將生長(zhǎng)方程應(yīng)用于虛擬植物的節(jié)間生長(zhǎng)。在L系統(tǒng)的改進(jìn)中,尤其是融合了參數(shù)L系統(tǒng)和隨機(jī)L系統(tǒng)以及生長(zhǎng)方程的應(yīng)用來(lái)模擬植物的生長(zhǎng)。將來(lái),生長(zhǎng)方程將主要應(yīng)用于虛擬植物模擬的以下幾個(gè)方面:
(1)生長(zhǎng)方程可以應(yīng)用于基于L系統(tǒng)的植物各器官的模擬,體現(xiàn)植物的動(dòng)態(tài)生長(zhǎng)特性。不僅是植物的枝節(jié)生長(zhǎng),對(duì)于植物葉子的生長(zhǎng)、果實(shí)體積的變化和植物根的長(zhǎng)度變化和植物莖的粗細(xì)變化等,都可以根據(jù)具體的實(shí)驗(yàn)及結(jié)果應(yīng)用植物生長(zhǎng)方程獲得生長(zhǎng)的曲線變化。
(2)植物的生長(zhǎng)建模不僅表現(xiàn)在宏觀方面,也體現(xiàn)在微觀方面。在植物的生長(zhǎng)過(guò)程中,植物器官內(nèi)生長(zhǎng)元素?cái)?shù)量的變化也可以應(yīng)用植物生長(zhǎng)方程的曲線變化。知道了植物的生理變化,就可以由植物的微觀狀態(tài)來(lái)體現(xiàn)植物的宏觀狀態(tài)變化情況。
(3)將生長(zhǎng)方程應(yīng)用于虛擬環(huán)境中,控制其中的植物動(dòng)態(tài)變化情況,體現(xiàn)植物的美觀性與真實(shí)性。
[1]ROOM P M,HANAN J S.PRUSINK IEWICA.Virtual plants:new perspectives for ecologists,pathologists and agricultural scientists[J].Trends in Plant Science,1996,1(1):33-38.
[2]LINDENMAYER A.Mathematical models for cellular interaction in development[J].Joumal of Theoretical Biology,1968(18):280-289.
[3]PRUSINKIEWICZ P,LINDENMAYER A,HANAN J.The algorithmic beauty of plants[M].Berlin:Springer-Verlag,1996.
[4]BAMSLEY M F,DEMKO S.Iterated function systems and the global construction of fractals[J].Proceedings of the Royal Socciety of London,1985,A399(1817):243-275.
[5]朱紹輝,張貴平.Richards生長(zhǎng)函數(shù)在意大利楊樹(shù)無(wú)性系人工林生長(zhǎng)預(yù)測(cè)上的應(yīng)用[J].江蘇林業(yè)科技,2000,27(1):27-30.
[6]鄧紅兵,王慶禮.紅松、長(zhǎng)白落葉松樹(shù)高生長(zhǎng)模型的研究及應(yīng)用[J].遼寧林業(yè)科技,1997(5):24-27.