基于Web GIS平台的社区垃圾分类辅助系统

2021-11-16 11:03陶申澳周述鹏高演辰
智能城市 2021年19期
关键词:服务器端西安市志愿者

张 浡 陶申澳 周述鹏 高演辰

(西北农林科技大学,陕西咸阳 712100)

地理信息系统(GIS)是一个以计算机为基础的管理和研究空间数据的技术系统。Web GIS指基于Internet平台进行地理信息发布、数据共享、交流协作,是运行于Internet的地理信息系统。

经济人口的增长和城市化进程的加快,使得垃圾产量快速增长,也使我国面临着“垃圾围城”的问题。当前推行的垃圾分类制度,关系到我国的生活垃圾是否能够实现减量化、资源化和无害化。我国的北京市、上海市、西安市等城市已经分别进行了垃圾分类工作的推广,但就目前来看,各大城市的社区垃圾分类却普遍存在垃圾投放点数量设置不合理、定时投放时长设置不科学、志愿者招募信息传播性不强等投放监督未实现常态化的问题。应用于垃圾分类的Web系统较多,但多数辅助系统更多着眼于如何辅助将生活垃圾分成相应类别的具体环节,少有关注社区管理人员与志愿者在生活垃圾分类中起到的重要作用。

本文针对西安市社区垃圾分类过程中有待提升的问题,通过借鉴上海垃圾分类实施方案中“生活垃圾定时定点分类投放”和志愿者于投放点指导分类的方法,尝试构建基于Web GIS平台的西安市社区垃圾分类辅助系统,一方面,利用已有的数据构建合适的垃圾预测模型,智能化辅助决策社区垃圾投放点数量;另一方面,基于Web GIS的平台简化社区招募垃圾分类志愿者的相关流程,提高社区垃圾分类的监督效率。

1 系统总体设计

基于Web GIS平台的西安市社区垃圾分类辅助系统采用客户机/服务器端(C/S)结构。

该系统的客户端采用HTML(超文本标记语言)、CSS(层叠样式表)和JavaScript(网络脚本语言)分别编写网页的内容、样式和动作行为,逐次实现从系统的UI设计,到框架搭建、功能模块制作,最后到界面的合成美化。

本系统的地图服务开发使用ArcGIS API for JavaScript技术,通过JavaScript将ArcGIS Server提供的地图资源和其他资源(如ArcGIS Online)嵌入Web应用[1]。根据系统需要在底图上实现定位、平移、放缩、查询等基本功能。还可以使用ArcGIS API for JavaScript技术调用ArcGIS Server提供的地理处理服务(Geoprocessing Service),将ArcGIS提供的丰富的工具和数据按照一定顺序串联[2],结合系统的志愿者匹配相关的技术路线,为社区的管理员和志愿者提供最优的匹配方案。

系统总体设计如图1所示。

图1 系统总体设计

Web服务器端是沟通用户与数据库之间的桥梁。本系统后端采用的主要技术有JSP、Servlet、Ajax等。基于服务器端的网络GIS体系结构,也称为胖服务器/瘦客户机的网络GIS,其主要功能在服务器端实现,客户机的浏览器主要是发送请求和显示结果。

执行过程可分为四步:

(1)用户通过本机的浏览器发出请求从Internet发送给服务器端。

(2)服务器端收到请求,对接受的参数进行分析再通过读取数据库获得相应的数据并处理请求。

(3)分析处理包含地图的网页页面,并发送给客户端生成结果。

(4)客户端的浏览器显示最终分析处理后的网页页面,将结果展示给客户[3]。

2 功能实现

基于Web GIS平台的西安市社区垃圾分类辅助系统按照功能可分为注册登录、数据预测、志愿者匹配、地图显示、互动交流五大模块。针对不同的功能模块进行设计,确保各个块完成各自功能,也能够互相调用,形成一个功能完整协调的信息系统。

2.1 注册登录

前台Web页面采用JSP技术实现。JSP是基于Java Servlet及整个Java体系的Web开发技术,可以构建安全的、跨平台的动态Web站点,同时JSP具有Java语言的优势“一次编写,各处运行”,能够满足系统的需求[4]。用户注册时,通过浏览器调用部署于服务器的JSP脚本,服务器获取请求信息之后解析相应的注册信息,并通过JDBC技术调用SQL语言对数据库进行相应的存储操作,将用户的注册信息存储到相应的表格中。用户登录时,通过JSP技术可以分别针对不同类别的用户显示不同的页面。

系统功能设计如图2所示。

图2 系统功能设计

2.2 数据预测

依照2010~2019年西安市统计年鉴提供的原型数据的主要特征,通过模型与原型数据的相似关系建立数学模型。选用了时间序列、回归分析、灰色预测、马尔科夫等不同的预测模型,对年鉴数据进行数据处理,将通过模型运算社区垃圾清理量的理论结果与在社区实地采集的数据进行比较、检验分析和精度测算,在每个基础模型模块中选取预测标准误差最小的预测数据作为单元模块数据。再选取权重归一化的方式对模型进行进一步的优化处理,选用4种模型的最佳权重配比进行垃圾数量预测。在Web前端中,将数据预测模型的逻辑运算通过JavaScript技术实现,无须前后端的数据交互,在用户界面可以快速高效地获取结果。例如,社区管理人员在界面指定位置输入本社区住户数量等信息,通过计算模型,可以得出建议摆放的各类垃圾桶数量、建议垃圾投放时长、志愿者需求数量结果。

2.3 志愿者匹配

社区管理员更新志愿者实际需求量后,系统的Web服务器依托Servlet技术和JDBC技术将数据存储到数据库中。系统的空间分析功能依托ArcGIS API for JavaScript技术,结合社区的空间位置、志愿者实际需求量,将志愿者需求量线性转换为距离,作为点缓冲区的半径。获取志愿者的位置信息后,通过几何分析调用Esri在sampleserver6.arcgisonline.com上提供的几何服务,获取志愿者距离各个圆形缓冲区的直线距离,并以此参数为排序依据,为志愿者推荐距离较近、需求量较大的社区志愿服务地点,达到合理分配各个社区的志愿者数量的目的。

志愿者还可以通过系统查看志愿服务地点的推荐路线,系统后台通过调用ArcGIS Server指定路由提供的Route Task方法即可实现相关功能。

2.4 地图网络服务

地图网络服务是海量的地理空间数据,以分布式存储、服务集中管理的方式,通过服务器存储、管理、发布以及更新。基于客户端,用户能够在不受空间与时间的限制的情况下,实现对地理空间数据的在线游览、搜索分析、处理、下载,并以动态或缓存的方式显示[5]。基于Web GIS平台的西安市社区垃圾分类辅助系统的底图通过ArcGIS Server整合了ArcGIS Online的公开资源,在此底图上添加社区图层,对各社区垃圾分类回收点进行标注。地图显示模块还可以依托ArcGIS API for JavaScript技术,将社区的志愿者需求量缓冲区、推荐路线等空间分析处理后的数据渲染地图的图层中,增强相关信息的可视化表达。

2.5 互动交流

系统通过Servlet技术和Java EE技术,为志愿者和社区管理员设计并制作了可以进行留言交流的平台。用户的留言信息由SQL 数据库存储管理,并且与空间位置绑定,用户通过创建空间信息标识点来创建和提交评论,留言功能为用户提供了信息反馈的窗口[6]。志愿者可以通过留言的方式向社区管理员就志愿服务细节问题进行询问,并线上提交申请;社区管理员回答志愿者的疑问,在线审核申请者信息,线上录用。志愿服务完成后,社区管理员通过系统上传志愿者的服务时长等信息。

3 结语

随着城市的发展,我国各大中心城市的垃圾分类问题愈发突出,解决垃圾分类过程中出现的问题十分必要。Web GIS能够将空间分析与可视化表达集成到Web应用中,对于解决城市的垃圾分类问题具有突出优势。目前诸多辅助系统缺乏对实际问题的调查与分析,难以被城市管理机构采纳。基于Web GIS平台的西安市社区垃圾分类辅助系统从实际问题展开功能设计,将分散的数据结合到空间信息中,借助互联网进行数据交互,高效简洁地实现了一系列辅助功能。

猜你喜欢
服务器端西安市志愿者
志愿者
我是志愿者
亲子创意美工展
Linux环境下基于Socket的数据传输软件设计
西安市第四医院
为志愿者加油
123的几种说法
我是小小志愿者
浅析异步通信层的架构在ASP.NET 程序中的应用
基于Qt的安全即时通讯软件服务器端设计