马尾松收获预估专家系统设计与实现
2015-04-20姚世雄张伟丽
姚世雄,罗 扬 ,张伟丽
(1.黔西南布依族苗族自治州林业局,贵州 兴 义562400;2.贵州省林业科学研究院,贵州 贵 阳550005;3.贵州大秦光伏农业科技有限公司,贵州 兴 义562400)
1 引言
林分生长预估模型是评价林木生长情况、林分经营效益的一种方法,可以为经营者提供最基础的营林数据。马尾松(Pinus massioniana Lamb.)是我国主要的用材树种之一,在国内许多重要林场内都有大范围经营,局部地区也有种植,在国内外木材市场具有重要地位。马尾松的研究起步较早,成果较多[1~3]。专家系统是储存知识的库,是逻辑推理、专家知识、分析判断的有机结合,能够根据用户的需求以及不同的经营情况,对未来林分胸径、树高以及蓄积量等因子作出预估。要对林分进行预估,首先需要获得小班空间属性,比如小班边界、范围、面积以及周长等,组件GIS具备ArcGIS软件中大部分的功能控件[4],这些控件是组成应用程序的基本部件,能够实现地理信息大部分功能。预估结果可以通过数表输出和制图表达清晰的展现出来,并以其作为下一步工作的基础数据。虽然现在地理信息软件较多,但未能跟具体树种相结合,所以缺乏针对性,在空间数据和预估模块上未能形成很好的契合,往往顾此失彼,影响林分预估的准确性和程序的实用性。
本文结合预估函数设计预估功能模块,该系统将解决小班勾绘、修改、渲染、专题图、属性查询、间伐、主伐、轮伐因子以及林分属性表格输出等基础问题,可为优化马尾松经营方案,最大程度发挥林地生产潜力,提高林业生产决策的科学性,提供参考。
2 开发环境简介
组件GIS(ArcGiS Engine)是一个与应用程序相互独立的编程环境,是由美国ESRI公司于2004年发布的一系列可以在ArcGIS桌面版之外使用的GIS组件开发包,它可将二次开发产品嵌入到自定义软件中去[5]。程序采用C#作为编程语言,C#是一款运行于.NET Framework之上,面向对象的现代高级程序设计语言,具有简介易开发的特点,能够最大限度节约开发时间和成本。
3 系统总体功能设计
马尾松收获预估专家系统以遥感数据、地理空间数据、属性数据为基础进行预估。主要包括数据录入、专家系统数据库、专题图、马尾松预估模块等,各个模块呈现一定的独立状态,主导功能不同,相互嵌入,具有联系性。数据录入作为获取数据的最初来源,依靠遥感图像、1∶10000标准图幅地形图以及其它形式的栅格地图进行矢量化,是整个软件的入口,为方便操作,用户需要对这个模块有最基本的认识;专家系统数据库是几何空间数据库、属性数据库、模型知识库的总称,三者缺一不可。空间数据库是地物几何的集合,代表了小班在空间上的表现形式,在GIS中通常以Shape格式储存,也可以存放在地理数据库MDB当中;属性数据库由小班的各项影响因素组成,是许多因子的量化表现形式,是构成一个完整林分不可或缺的一部分,在本系统中属性数据都可以用ACCESS进行建立和修改;模型知识数据库是专家知识的积累,是由马尾松预估模型各个子模块构成,是经过科学试验得出的经验和回归模型。各个模块又有许多子模块,通过这些子模块获得最底层的数据,它们相互协调、配合,然后反馈给用户界面,用户通过人机交互界面对数据进行核对、输出等。系统总体设计如图1所示。
3.1 组件GIS功能设计
GIS功能主要通过ArcGIS Engine 9.3平台进行设计。主界面包括编辑工具、图层目录、视图显示工具、布局显示工具、鹰眼以及实时坐标数据等。编辑功能主要包括输入、修改、切割、添加节点、移动节点、删除节点、设置线方向、长度等。专题图方面,主要有面状专题图、线状专题、点状专题,可以完成一些简单的图层渲染工作,比如根据最终收获量的不同,给预估小班图层施以不一样的颜色,方便把握小班的总体收获情况。视图工具栏里面有对地图的浏览工具,包括全图显示、上一显示、下一显示、缩放、选择、移动、鹰眼视图以及i键查询等功能;布局工具有全图显示布局、1∶1显示以及移动布局等。GIS是系统的基础,基于组件GIS将收获预估情况以表格和图形的形式输出,获得直观的马尾松收获数据。图2为矢量数据编辑工具条。
图1 系统总体设计
3.2 预估功能设计
图2 编辑工具条
通常情况下,林分调查的目的是获得树高、胸径、郁闭度、年龄、起源、树种等因子,这也是系统依赖的基础数据,需要通过大量样地调查获得。但在本系统中,只需要获得林分的立地指数、现实林分平均年龄以及优势木平均高就可以完成预估,程序会根据用户设定的间伐、主伐参数对结果进行模拟,并输出模拟结果。立地因子是预估模型的最基本参数,它直接决定特定林分内优势木平均高、平均胸径以及平均树高数据。林分会发生自然稀疏过程,它影响林分预估精度,如若不引入自然稀疏模型,预估结果将不具有代表性,无法通过回归方程进行模拟,是不正确的。小班的各项因子不同,间伐和主伐也会根据营林方案有所不同,在特定情况下,也可以根据实际需要对它们进行统一赋值。对于普通马尾松产区来说间伐次数主要有1次、2次、3次三种可能,系统分别对这几种情况进行模拟,根据一定的疏伐强度计算出每一次间伐的间伐木树高、胸径,以及间伐后树高、胸径数据,有学者也研究出间伐之后树木的生长情况,用来预估伐后林木的生长情况。几次间伐后剩下的林木株数经过自然稀疏,则为主伐时所保留株数,再计算主伐时树高及胸径,根据二元材积式得出单株材积。
图3 间伐方案设置
如图3是间伐方案设置界面,将小班间伐划分为几种模式,即不间伐、一次间伐、两次间伐以及三次间伐,每个小班只能有一种间伐方式。根据林分年龄划分间伐次数,主要归为四种类型:
(1)当现实林分年龄小于或者等于9年生时,林分具有四种间伐模式,需人工进行选择,且只能选择一种,它们分别是不间伐、1次间伐、2次间伐以及3次间伐,用户必须做出选择,如选择了3次间伐模式,则在随后的运算当中系统会自动匹配三次间伐数据,包括间伐时间、间伐强度等。
(2)当现实林分年龄等于10年生时,系统会给出三种间伐模式,它们分别是不间伐、1次间伐、2次间伐,操作方法同方法(1)。
(3)当现实林分年龄为大于10年以及小于等于18年生时,系统给出两种间伐模式,它们分别是不间伐、1次间伐,操作方法与上述相同。
(4)当现实林分年龄为18年生以上时,系统将自动将这个小班的间伐模式设置为不间伐,这样在后面计算主伐时系统将直接跳过间伐数据而模拟出主伐数据量。
通过上面的方法每一个小班的间伐次数、间伐时间以及间伐强度均被设置成功,系统中考虑了批量赋值的方法,即当需要对小班的间伐参数赋予同一种模式时,直接点击批量赋值按钮即可设置间伐因子。整体上专家系统体现出了一定合理性,随着对软件运行的继续调试,也会根据新需求对间伐设置环节作出调整和变化,以获得最佳运行和实际操作效果。间伐个因子控制主要实现代码如下。
3.3 属性数据库设计
目前有多款数据库软件都能完成基本的属性填写、修改以及删除操作,使用较为广泛的包括ACCESS、SQL以及Oracle等,各具特色,可以根据实际情况选择。本系统采用ACCESS数据对属性字段等进行创建。系统属性主要集中在“预估小班”这个图层上面,该图层属性字段共计79项,包括序号、地籍号、县_区、乡_镇、村、小班号、林地所有权、林木所有权、地类、林种、龄组、起源、森林类别、立地指数、现实平均年龄、现实公顷株数、现实优势木平均高、现实平均胸径、现实公顷断面积、现实平均树高、现实林分优势高生长预测、现实林分株数预测、现实林分胸径生长预测、现实林分树高生长预测、胸径变动系数、间伐次数、一伐因子(共14项)、二伐因子(共14项)、三伐因子(共14项)、主伐时间、主伐时优势高、主伐时平均胸径、主伐时平均树高、主伐时公顷株数、主伐公顷蓄积、每平方木材价格、轮伐期公顷蓄积、轮伐期小班总蓄积、轮伐期小班木材产值、备注等。
4 应用实例分析
以青岩镇143个马尾松小班作为基础数据,因中龄林、近熟林、成熟林等的经营资料与实际多有偏差,很多林分没有造林方案,抚育采伐也比较随意,会造成预估结果误差。而幼龄林多是没有经过抚育间伐,人为干扰较少,仅仅受自然稀疏因素作用,不确定因素相对较少,因此选择的所有小班均为幼龄林,平均年龄为7年,现实林分株数在1 010株/hm2~3 265株/hm2,将全部小班的间伐次数设置为2或3次,株数间伐强度设置为30%或35%。所有小班的优势木平均高的条件平均值为4.4 m,平均胸径条件平均值为3.6 cm,平均树高的条件平均值为3.9 m。对5201110050060017、5201110050050079、5201110050050081三个小班进行定向追踪,分别计算现实林分的各项因子、5年后林分的生长情况、三次间伐时林分生长情况及间伐木蓄积量、主伐时林分收获量以及轮伐期数据。下文仅对间伐和主伐预估数据进行详述。
4.1 第一次间伐
表1 第一次间伐数据
从表1中可以看到,5201110050060017和5201110050050079号小班由于现实林分分别距间伐时3年和4年,因此可以明显看出小班因子发生变化,而5201110050050081变化不多。可以看出,间伐前公顷株数明显较上文现实林分的小,这是自然稀疏发生作用,而间伐木小于林分平均数据,是因为预估模型假设伐掉树干干型较差、长势较慢的林木,这样间伐后林分平均胸径、平均树高则比伐前略大,三个小班间伐蓄积量分别为1.9 m3、1.9 m3、5.1 m3,从这些数据看出林分第一次间伐预估效果良好。
4.2 第二次间伐
表2 第二次间伐数据
第二次间伐如表2所示,三个追踪小班此次间伐数据较上一次变化较大,5201110050060017、5201110050050079、5201110050050081二次间伐前因发生自然稀疏使公顷株数发生明显变化,分别为1 540、1 538以及2 791株,株数明显变少,间伐时间和间伐株数分别为14、20%,14、20%,14、35%,三个小班采伐蓄积差距较大,5201110050050081明显大于其它两个小班,但间伐木胸径和树高差距不大,主要原因是81号小班株数更多,几乎是前两者的两倍,因株数对树高影响较小,所以三者的平均树高并未表现出多少差别,从整体上看预估的效果较好。
4.3 第三次间伐
表3 第三次间伐数据
依表3可知,在第三次间伐时追踪小班只剩下两个,因为81号小班根据间伐方案只需进行2次间伐。经过多次间伐和发生自然稀疏过程,5201110050060017和5201110050050079的公顷株数已经发生巨大变化,分别剩下1 334和1 332株,它们的间伐时间和间伐强度都为19年、20%,从数据中发现,两个小班的间伐各项因子几乎相同,这是因为尽管两个小班现实林分株数相差几十株,但经过几乎相同的间伐措施和自然稀疏后,林分向最优密度发展,因此展现出相同的生产水平。从中可看出,此次间伐效果较好。
4.4 主伐
三次间伐过后,将对林分进行主伐,即一个轮伐期结束,开始下一个轮伐期。案例中将主伐时间设置为25年,此时马尾松林分处于近熟林阶段,树木长势开始呈下降趋势,主伐将获得大量优良木材。到主伐时前一时刻,林分保留株树上下限为734~1 823株,主伐前小班优势木平均高条件平均值为16.6 m,主伐时平均胸径条件平均值为20.7 cm,平均树高条件平均值为15.8 m,主伐时公顷蓄积条件平均值316.3 m3。
表4 主伐数据
对表4进行分析可知,5201110050060017、5201110050050079、5201110050050081三个小班主伐时前一时刻保留株树分别为1 127、1 126、1 823,平均树高相差无几,但平均胸径差距巨大,保留株数多的胸径值明显较小,其它则无明显差别。
4.5 结果分析
143个小班经过一轮预估之后得出最终蓄积预估数据,通过案例中所有小班林木因子平均值的条件平均值来对预估结果作出分析,反映各个预估期林分收获量的变化情况。对三个小班进行定向跟踪,所得结果也令人满意。在获得小班基础数据后,预估过程主要分为三个部分,现实林分计算、间伐预估以及主伐预估。现实林分计算是对现实状况的量化,计算起来相对简便易得,间伐则相对复杂,间伐除了要涉及间伐时间、间伐强度外还要考虑自然稀疏规律的作用,而在第一次间伐时甚至还需要考虑第一次间伐后林木的生长情况,这一直是林木预估的难点,经过对数据的观察,三次间伐的预估效果均较好,达到预估水平;主伐是林分收获量直接体现,从数据上看,25年时主伐的各项因子正常,预估结果合理;主伐完成标志着轮伐期结束,开始新一轮的采伐,轮伐期收获量包括多次间伐量和主伐量,案例结果显示,轮伐期预估数据较合理。
5 结论与讨论
(1)基于ArcGiS Engine 9.3组件平台开发的马尾收获预估专家系统能够实现地理信息功能和马尾松收获预估模块的有机结合。组件GIS主要负责小班绘制、视图浏览以及专题图制作,提供小班面积等基本信息,预估模块在GIS提供可视化界面基础上对预估小班的间伐、主伐等信息进行设计,最后得出收获量。
(2)从预估结果看,系统所选用的马尾松收获预估各个模型函数精度较高,子模块之间衔接良好,模块完整统一,对于实际操作有一定指导和现实意义。
(3)使用幼龄林进行分析避免了因自然灾害、人为因素以及其它不可抗力因素所引起的误差,经过预估多次间伐以及多次自然稀疏获得最后得主伐因子。结果显示,经过2次或者3次间伐后,自然稀疏保留株树、平均胸径以及平均树高数据处于合理范围内,达到预估要求。
(4)本专家系统能实现了地理信息的基本功能,预估模块能够对林分小班进行准确预估,如果将几何校正、空间分析、数据字典等模块添加进来,程序功能将更加完整。
[1]丁贵杰.马尾松人工林生长收获模型系统的研究[J].林业科技,1997,33(Sp.1):57~66.
[2]丁贵杰.贵州马尾松人工建筑材林合理采伐年龄研究[J].林业科学,1998(3):42~48.
[3]张连金,惠刚盈,孙长忠.马尾松人工林首次间伐年龄的研究[J].中南林业科技大学学报,2011(6):22~27.
[4]张忠良.基于ArcGIS Engine的数字校园三维景观系统的开发与应用[D].兰州:兰州大学,2008.
[5]王 佳,熊妮娜,冯仲科,等.基于组件式GIS的林火工程态势图标绘方法[J].北京林业大学学报,2007(S2):139~143.