大尺度区域国土空间监测指标设计及实现
2020-07-28鲁小丫牛牧楠巫雨洋文学虎
鲁小丫,牛牧楠,巫雨洋,文学虎
(1. 西南民族大学计算机科学与技术学院,四川成都 610041;2. 武汉大学资源与环境科学学院,湖北 武汉 430079;3. 中国地质大学(武汉)地理与信息工程学院,湖北 武汉 430074;4.自然资源部第三地理信息制图院,四川成都 610100)
2019 年5 月,中共中央国务院发布《关于建立国土空间规划体系并监督实施的若干意见》,意见指出,建立国土空间规划体系并监督实施,将主体功能区规划、土地利用规划、城乡规划等空间规划融合为统一的国土空间规划,实现“多规合一”,强化国土空间规划对各专项规划的指导约束作用,加快形成绿色生产方式和生活方式、推进生态文明建设、建设美丽中国[1].
大尺度区域国土空间监测指标体系是响应“多规合一”战略部署,增强国土资源供给能力,推动区域可持续发展的关键一步.国土空间监测指标体系囊括了水、土、气、生态等自然要素和社会经济要素,可揭示国土空间变化过程、自然人文响应、功能演变机制以及国土空间系统优化调控机理[2-3],为坚持生态优先、绿色发展的战略定位,加强顶层设计与统筹规划提供理论与数据支撑[4].
目前,相关学者围绕国土空间监测与规划管控开展了一系列研究:司劲松等吸收国土空间规划的国际经验,提出明确各类空间性规划的定位和相互之间的关系,形成相互支撑、和谐有序的规划体系[5];张衍毓等面向全国国土空间监测网络建设优选出的34 个县域监测样点,实现了较少的样本数量对主要国土空间类型的全面覆盖[6];吴晓萍等使用地理空间信息技术,建立统一的数据标准基础,进行了多源异构数据集成与国土空间开发适宜性评价[7].但上述研究更关注国土空间监测的理论研究及方法改进,对大尺度区域下大数据量、全要素、全领域的空间指标计算问题的研究尚有不足.
在实际生产中,某省一年的地表覆盖图斑数据记录可高达上千万条,即使使用专业软件也无法高效完成该级别数据的检索与多监测指标的计算.有学者建立分布式系统以加快计算效率,取得了较好的实验效果[8],但分布式系统对软硬件要求高、开发难度大以及灵活性不足的问题使现阶段无法很好地推广应用.
本文针对大尺度区国土空间规划需要,以景观生态学评价方法[9]为基础,建立了一套国土空间监测指标体系,并针对多源数据整理、空间几何量算、大数据量的复杂空间计算等进行研究,设计开发的计算系统实现了数据预处理、加工与分析、成果计算及输出等功能.
1 研究区域及研究体系
1.1 研究区域概述
本文研究区域为长江经济带全域,如图1 所示,盖11 个省市,面积约205 万平方千米,人口和经济总量超过全国40%,经济带动作用强、辐射范围广,是全球重要的内河经济带,在我国发展大局中具有举足轻重的战略地位[10-11].
图1 长江经济带范围Fig.1 Scope of Yangtze River economic belt
1.2 国土空间监测指标体系
利用现有基础地理国情普查和监测数据,整合自然环境数据、社会经济数据和规划管控数据,从国土空间格局与发展、自然资源与生态保护修复、社会经济协同与进步以及沿江岸线保护等四个维度,设计了包括省、市、县3 个层级、290 个指标因子的多尺度、多层次、持续性的指标体系.四个维度的建设思路如下:
(1)国土空间格局与发展从地表覆盖格局及变化、总体用地格局及变化、城镇农业生态等用地格局、国土空间与社会经济等方面构成指标体系,反映用地类型及其空间发展变化、国土空间的建设投入、产出及成效.
(2)自然资源与生态保护修复从用地初级生产力、自然资源景观格局、河湖湿地活力与调节、生态修复状况等方面构成指标体系[12],充分遵循了 “活力-组织-恢复”框架,表征自然生态空间生产力、景观空间组织、自我调节与恢复等方面.
(3)社会经济协同与进步侧重于从人口经济与社会发展、资源禀赋与农业生产、环境压力、基本公共设施发展等方面构成指标体系,充分考虑国土空间开发利用中有的社会经济因素.
(4)沿江岸线保护从沿江开发利用状况、沿江生态本底和沿江生态修复三个方面建立评价指标体系,着重反映经济带内的长江流域空间发展水平及生态保护现状.国土空间监测指标体系框架如图2 所示.
图2 国土空间监测指标体系框架图Fig. 2 Framework of land and space monitoring index system
1.3 国土空间监测数据集
国土空间监测指标体系涉及数据包括:地理国情普查和监测数据、生态环境监测与评价结果、区域各行业专题资料、统计年鉴等.上述数据的数据格式、规划的时序、语义类型、空间参考、规划指标、比例尺等各不相同,种类繁杂[13].
国土空间监测数据集是将上述专题数据按空间信息与属性信息进行分类. 即通过制定统一的标准,经过格式转换、坐标转换、合并等数据预处理过程,以区县为空间基本单元,按国土空间、规划管控、自然环境、社会经济四个主题范围命名空间数据表后采用统一的ArcGIS 文件地理数据库进行集成管理.
2 计算系统
面向省级区域10 亿余条数据记录及5 万余项指标的计算需求,指标计算系统遵循指标计算松耦合、高速并行处理、稳定不崩溃的原则,设计了监测数据预处理、空间基本单元构建、区域指标整体输出等模块.
数据预处理包括两部分:首先将监测指标体系按“何时+何地+何专题+何要求”进行语义解读,形成空间、时间、图层与条件四种配置文件,以控制指标计算过程与输出结果.其次将所有空间数据按图层划分线程,进行椭球体面积及测地线长度计算,减小空间几何计算误差.
空间基本单元包括行政区、岸线功能区空间基本单元,由其行政区代码或功能区编号作为主键,由各项监测指标值组成主键值.以行政区空间基本单元为例,其监测指标值的计算过程为:由国土空间、自然环境、社会经济专题分别提取各基本单元地表覆盖数据(如:地理国情普查和监测数据)、地表覆盖栅格数据(如:建设用地二值化栅格影像)、自然环境栅格数据(如:夜间灯光强度栅格)、社会经济专题数据(如:国民生产总值),通过数学统计(总计、平均、最大和最小)、数学形态学计算(膨胀、腐蚀、开启和闭合)、景观指数计算(平均斑块面积、分维数、破碎度)等生成各单元的矢量监测指标、栅格监测指标与社会经济监测指标,部分复杂指标需在此基础上通过矢栅转换,空间关系判断等进一步计算得到.
区域指标整体输出是根据指标体系的输出规定,借助XML 文件指定输出数据集的各数据表及字段值,对空间基本单元按其构建顺序依次排序后,将各存储各监测指标值填入对应数据位置.
3 关键技术分析
3.1 大容量空间数据管理机制
为了满足指标体系的计算,需对大数据量的国土空间监测数据集进行重新组织,解决基于ArcGIS 平台的灵活性与自主性不足的问题. 为此,采用多种开源地理空间技术建立大容量空间数据管理机制:主要包括数据库操作工具,矢量——栅格数据转换与计算工具、空间几何计算工具.
数据库操作工具是根据File GDB API 定制开发生成的.File GDB API 是由ESRI 提供的一套创建、打开、删除、修改ArcGIS 文件地理数据库及其子对象的库文件.它的可操作性的对象包括数据库、数据表、图层、记录等,能够完成大尺度区域范围下监测数据集的图斑级精细化管理.
矢量——栅格数据转换与计算工具针对 File GDB API 的空间关系处理能力较弱,使用GDAL/OGR库以支持栅格数据,矢量数据以及空间网络数据的数据处理.OGR 主要用于空间要素矢量矢量数据的解析,GDAL 主要用于空间栅格数据的读写[14]. 该工具功能特点主要体现在两方面:为空间数据构建OGR几何对象,使用空间关系判断函数Contain(包含),InterSect(相交)等将地类图斑矢量数据分类至空间基本单元;使用GDAL 的栅格数据分块处理接口,按空间基本单元几何边界将大尺度区域栅格划分为各子栅格数据块,避免了多次处理大尺度栅格.
空间几何计算工具由PROJ.4 开发得到.PROJ.4根据Karney 提出的测地线计算方法,解决了基于空间多边形经纬度信息的椭球体面积及测地线长度的计算问题,适用于大尺度区域下的空间几何计算过程[15].空间几何计算工具通过OGR 工具解析图斑级要素空间点坐标并组成经纬度数组;结合相应椭球体参数输入至PROJ 库得到空间几何信息.
3.2 监测指标高效计算机制
计算系统不仅需要进行大容量的国土空间数据管理,更需要针对复杂的监测指标体系建立高速、准确的计算机制.主要使用到Map 关联容器和并行化计算策略.
Map 关联容器是 C + + 标准模板库(Standard Template Library,STL)中容器的一种,其主存储形式是以一个关键主键对应一个键值来存储的,因此关键主键不可以进行重复输入[16]. Map 关联容器能进行基于关联键值高效检索元素值,大小可变并提供双向迭代器来访问其元素.指标计算系统构建的Map 关联容器如图3 所示.
图3 计算系统中Map 关联容器组织方式及结构Fig. 3 Organization and structure of map Association container in computing system
指标计算系统以县域行政区编码作为Map 子对象的关键主键(Key),以县域内各具体监测指标值的集合作为各键值(Value);各键值对之间结构相同但互不影响,通过指针相互连结. 将县域空间基本单元按其所属省市统计得到包含省市级国土空间监测指标值的空间单元.在检索输出时,首先获得Map 容器的大小及所有主键,根据主键构建迭代器;移动迭代器,依次遍历Map 所有主键,根据主键查找对应的监测指标值进行输出.
传统的串行计算是CPU 使用一系列指令解决问题,但其中只有一条指令可提供随时的使用. 多任务并行处理将一个序列中依次发生的事件转化为同时发生的、复杂相关的线程事件,针对每个线程,多任务处理使用的开销更小;同时线程内部可以共享资源以充分使用CPU 空间[17].
计算系统的多任务并行处理表现在两个方面:数据集中所有要素的椭球体面积并行计算、指标体系中的各项景观生态学指标(如:空间破碎度,紧凑度)涉及斑块大小变异系数,空间边界长度等较高时间复杂度的数学计算.
4 结果及效率分析
为评估计算系统的计算效率,选取研究区域内某省三年的国土空间监测数据集(总数据量为235G)为研究数据,以构建该省国土空间监测指标体系(行政区指标共28 548 个,岸线功能区指标共3 195 个)为计算目标,采用逐项计算、ArcGIS Python 命令行批处理与指标计算系统三种方式进行计算,其耗时与正确率对比见表1.
表1 不同处理方式的计算效率对比Table 1 Calculation efficiency comparison of different treatment methods
由于采用了多线程并行化的计算策略,本文构建的指标计算系统相较于ArcGIS Python 命令行处理的计算方式,计算速度提升了200% -300%;同时,可对计算过程的指标体系进行配置,提高了系统的容错率,使计算正确率提升了3% -10%.
5 结论
国土空间监测指标体系构建及计算系统开发提供了一种覆盖全域国土空间、多层次、立体化监测思路.通过国土空间监测指标体系能够定量掌握从微观到宏观的国土资源开发利用与保护、自然生态空间自我调节与修复、社会经济发展情况;能够有效实现资源整合、促进信息共享,极大提高了长江经济带国土空间监测的工作效率. 未来,在进一步提高指标体系计算效率与监测成果可视化方向值得深入研究.