史庭蔚,吴逸钊,吴剑钟,霍梅梅,蔡建平
(1.浙大城市学院计算机与计算科学学院,杭州310015;2.浙江金洲管道科技股份有限公司,湖州313000)
近年来,停车位的供应无法跟上汽车数量的增长,同时居民小区、办公大楼等场所对停车位的需求时间段不同。在结合实际停车过程中涉及的多种情况后,运用AHP层次分析法和矩阵运算量化多策略,研究寻找周围最合适车位的算法,引导用户完成快捷停车,并通过小程序移动平台实现该设计,在为用户提供多种个性化停车方案的同时,也解决车位需求在时空上的差异,同时系统具备人性化界面和完善的服务体系。实践测试表明:多策略智能停车位推荐算法对于车位有着大量缺口的城市内实现错峰错时停车,具有重要现实意义。
智能停车;多策略;AHP层次分析法;NoSQL;小程序开发
在城市化推进的过程中,国内汽车保有量迅速增加,尤其是近几年,有车家庭换购、增购汽车的需求上升,大量的汽车消费也给城市中停车位的供给带来了极大压力。同时,城市中车位难求以及停车位管理问题也长期存在。根据调查数据显示,一线城市平均停车位缺口率达到了76.3%,同时停车场泊位空置率达到了44.6%,近半数停车位未得到合理利用[1]。实际场景中,城市停车存在明显的潮汐效应,白天大量小区存在车位空闲,办公场所的车位“一位难求”,但到了晚上却呈现出相反的局面。尽管部分车位存在空闲,但因位置偏僻,不易寻找,使车主在前往过程中造成交通拥堵问题。要研究系统的初衷即考虑到小区停车位是一个待充分利用的市场,而错峰错时停车将有效缓解停车供需矛盾,将其在时间上的互补性发挥到最佳。为更好地满足不同用户的需求,本文将难以完全定量的多策略模型和AHP层次分析法相结合,同时利用矩阵运算具体量化,帮助用户更好地寻找车位,并基于与移动端相结合的考虑,开发了一款停车位小程序系统。
从广义的车位共享机制来说,国内的理论体系和社会实际矛盾的解决正处在摸着石头过河的阶段,吉林大学的段满珍等人探讨了基于资源共享和有效利用的模型[2],沈阳航空航天大学的张译戈等人以住宅区周边为例对停车位共享模式可行性进行了研究分析[3],中国城市规划设计研究院上海分院的邹歆等人提出差别停车分区基础上的停车收费标准调整建议[4]。但在车位共享的管理模式上,国内暂时缺乏符合我国国情和各城市综合特点的通用模式。
国外在20世纪后期开始研究车位共停策略,美国城市土地研究所在其编制的《共享式车位网点》中确定了一套共享停车分析的研究路线,并提出了基于非垄断行为的停车共享分析方法,西雅图市议会第119221号决议通过了一项停车政策改革法案,其中重要的一条内容就是业主可以将自己的住宅停车位用于公共用途。Sarangi和Pati等人从误差最小化的角度对自动泊车算法进行了优化[5],Ommeren等学者也对城市停车位供应和停车许可展开了研究[6]。
综上,国内外学界对于智能化共享停车的研究和探讨从未停止,相应的政策和法规也在逐步出台,将AHP层次分析法和矩阵运算量化多策略来帮助用户完成停车的研究较少,智能停车位总体的实践仍在起步阶段。
表1 变量表
我们认为车主对车位的选择是一个相对主观的概念,但同时在车主主观选择的情况下仍然受到附近车位的距离、价格、停放能力、车位评价等方面的影响。因此要对多种策略的影响因素做准确评价时,我们不能仅仅从人的主观感觉考虑,而要对每级指标的重要性做出判断,并建立数学模型求解。我们将这四个主要影响因素作为准则层指标,如图1所示。
(1)建立重要程度标度表
在两个要素进行比较时要对它们之间的重要性进行量化,为此建立重要程度标度表,以便比较出它们的优劣及优劣程度。见2表。
表2 重要程度标度表
在每两个等级之间有一个中间状态,Xi比Xj可分别取值2,4,6,8,为前后两级的折中态。
(2)构造判断矩阵
从层次模型结构的第2层开始,对于从属于上一层每个因素的同一层诸元素,用成对比较法和重要程度标度表构造判断矩阵,只到最下层,格式如表3所示。
表3 判断矩阵表
(3)对判断矩阵进行一致性检验
在对多个元素进行比较时,人们的判断难以保持完全一致性。为了使对影响因素重要性的比较具有逻辑的一致性,要进行一致性检验。对于每一个判断矩阵计算一致性比例,若一致性比例小于0.1,则检验通过;若不通过,需重新构造判断矩阵。
第一步:计算一致性指标CI
将CI作为衡量判断矩阵不一致程度的标准。第二步:查找相应的平均随机一致性指标RI
表4
第三步:计算一致性比例CR
当CR<0.1时,认为判断矩阵是可以接受的;当CR>=0.1时应修改判断矩阵直至达到可接受为止。
(4)利用几何平均法(方根法)计算特征向量W
计算步骤:
①A的元素按行相乘得一新向量;
②将新向量的每个分量开n次方;
③将所得向量归一化即为特征向量W。求解后的评价目标判断矩阵如表5。
表5
λmax=5.07205,CI=0.0180,RI=1.12,CR=0.0161<0.1,通过一致性检验。
综上,在经过AHP层次分析和矩阵运算后,我们可以对车位的价格、评论、距离、停放能力做出定性与定量相结合的评价,且准则层的每项权重分别为0.429、0.230、0.194、0.147,并采用这些权重,帮助我们建立多策略的车位查询。
考虑到我们的系统主要是基于提供停车服务展开,后期在小功能上可能会有部分更新,例如钱包、客服、信誉功能等,同时为了模块化功能更好的实现、达到“高内聚,低耦合”等目的,我们选择了分层体系结构,不仅可以把庞大的系统分层,按各自的功能逐步递进、也有助于更好地支持重用和模块化开发等等。主要的层次分为三层,分别为视觉表现层、业务逻辑层和数据库访问层。
视觉表现层:
在该层中,主要使用了WXML、WXSS和JavaScript等语言实现,由标签内容结合组件、WXS和事件系统,构建出页面的主要结构。同时,我们也运用和改造了vant组件,搭建出风格统一,视觉效果规范美观的页面,在带给用户更好地体验效果的同时也提升了开发的效率。
业务逻辑层:
业务逻辑层的作用是在实现多个系统应用的进程时,为用户处理和准确完成一系列所需要的服务,作为视觉表现层和数据库访问层之间的桥梁,并对逻辑处理后的数据结果反馈到视觉表现层中,在多策略的智能停车位小程序系统中,主要提供完整的附近车位查询、选择车位、管理车位、管理车辆、钱包、问题反馈等功能。数据库访问层:
在数据库访问层中,我们选择了基于NoSQL方案的云开发数据库,所有的数据库、存储、服务端接口调用、HTTPAPI和部分函数均可以部署在云端,使用传统开发模式进行开发时,需要额外引用SDK请求后端,同时还需要对很多后端问题进行处理,NoSQL方案的云开发数据库在使用上更为快速和便捷,同时也提高了开发和运维的效率。
从系统的整体功能上来考虑,我们主要为系统开发和设计了车位管理、车辆管理、附近车位查询、个人功能等功能模块,具体如图2所示。
图2 系统功能模块
(1)车位管理功能
此功能模块的作用是上传用户的闲置车位,在询问用户获取地理位置的权限后,基于wx.getLocation在得到用户所在位置的经度和纬度,同时还提供填写车位名称、车位的空闲时间段、车位的价格,以及上传车位的照片方便用户寻找。在经过业务逻辑层的处理之后车位便可以实时显示在地图上。
(2)车辆管理功能
考虑到一个用户可能有不止一辆车的情况存在,系统为用户提供了添加车辆和车辆管理功能,用户通过填写车牌号、车型号、以及上传车辆照片和管理车辆等功能。
(4)附近车位查询功能
在附近车位查询功能的模块中,首先我们会获取用户当时所在的位置,调用基于腾讯地图的地理位置服务和解决方案,使用qqmapsdk.reverseGeocoder来对经纬度进行解析,接入位置服务,显示距离用户最近范围内的车位信息,并在地图上显示。除此之外,我们结合了基于的AHP层次分析法和矩阵运算提供多种策略的车位查找功能,轮播图中提供特色车位的显示,在心选车位中,用户也可以按照价格偏好策略、距离偏好策略等功能来进行车位选择,方便用户进行停车位的搜寻。
(4)个人功能
用户在系统中有明确的盈利和消费模式,对闲置的车位进行上架,当每一笔订单完成后便可以获得收入,同时也可以完成停车进行消费。假如车位主发现车主的不文明停车行为,可以首先对车主进行联系,如果仍然无法处理的可以进行问题反馈,经过后台人员确认后可以对车主进行信用分的扣除。
该系统的设计遵循了主流的沉浸式设计,并参考了material design的规范,在小程序的顶部导航栏和底部的Tabbar均采用了风格统一色调,使用界面友好,以期带给用户更好的体验。
在车位显示界面,主要的功能页面有地图搜寻车位、特色车位和新选车位列表、车位详情页面、预定车位等。主要显示效果如图3所示。
图3 车位显示界面
在车位及车辆管理界面,主要的功能页面有车辆的添加和管理、车位的添加和管理等。主要显示效果如图4所示。
图4 车位及车辆管理界面
在个人功能界面,主要的功能页面有钱包查看、钱包充值、信用分查看、问题反馈等。主要显示效果如图5所示。
图5 个人功能界面
该系统深入研究了目前车位停放和寻找车位中所存在的部分问题,并采用应用广泛的小程序作为移动端开发平台,方便用户通过手机来发布自己的车位和显示附近的空闲车位。通过使用AHP层次分析法和矩阵运算量化制定多种策略的车位,在提高车位利用率的同时,也能更好地满足用户的不同需求。此外,系统还采用了激励措施和信用分扣除的手段,来更好地规范用户停车,减少不文明停车的行为。综上所述,该系统的使用性和稳定性良好,为人们的出行带来了很大的方便,有较大的应用价值。