APP下载

基于Android平台的行为分析系统研究

2016-05-09徐昕军苏剑臣

计算机应用与软件 2016年4期
关键词:监护人轨迹聚类

徐昕军 袁 媛 苏剑臣 杨 峰

基于Android平台的行为分析系统研究

徐昕军 袁 媛 苏剑臣 杨 峰

(中国矿业大学(北京)机电与信息工程学院 北京 100083)

针对中小学生上课玩手机下课去网吧的现象屡禁不止的问题,设计并研发了一种基于Android平台的行为分析系统。系统基于监护人客户端、服务器和被监护人客户端的三层架构设计,综合运用百度地图API、自适应DBSCAN聚类算法和专家系统等关键技术,实现了短信、通话、流量和软件使用情况实时查看、轨迹聚类分析、专家系统分析等多项功能,使得监护人可以直观地了解到被监护人的行为动态和问题并采用科学有效的方法进行教育和引导,解决了学生过度使用手机、上网成瘾、沉迷游戏等问题,给作为监护人的家长和老师带来很大方便。

Android 专家系统 百度地图 行为分析

0 引 言

互联网、博客、手机等是学生常常接触的新媒体,以其独特的功能和魅力强烈吸引着最易接受新生事物的学生群体,特别是手机具有便捷性、及时性、多功能性的特点,已成为当前学生必备的工具和最重要的伙伴[1]。Android手机以其独特的魅力占据全球市场份额的60%以上,位居全球第一,大有垄断中国市场的态势。并且随着无线通信技术和计算机网络技术的快速发展,通过移动手持设备快速有效地接入互联网成为广大用户的迫切需求,了解和分析手机用户的行为模式也显得十分必要。中小学生拥有手机的现象已非常普遍,然而中小学生没有成年,处在朦胧的认知阶段和接受阶段,缺乏辨别是非的能力,有些学生还在上课时收发短信、上网甚至打游戏,因此手机对学生的生活和学习产生了负面影响[2-4]。针对这个问题,学校和家长往往采用禁止学生使用手机等强制性措施,但这反而容易激起正值叛逆期学生强烈的反抗情绪,并不能从根本上解决问题。因此,构建一个针对中小学生手机使用的行为分析系统成为目前教育领域的迫切需求。

本文针对这种现状,首次提出并实现了一种基于Android平台下的手机行为分析系统。此系统综合运用了MVC(Model-View-Controller)、数据库、GPS等多种先进技术,通过软硬件集成开发,具备了短信数据分析,通话数据分析、流量数据分析、应用数据分析、轨迹数据分析等多项功能。其突出特点为数据全面、功能丰富、实用性和扩展性强。此外系统还整合了国内教育学和心理学专家根据大量实验数据得出的诊断结果和引导意见,形成专家系统,方便监护人对被监护人进行教育和引导。手机行为分析系统可部署于操作系统为Android2.3.3及以上的手机和平板电脑,有助于监护人全面掌握被监护人的实时动态与行为特点,从而为被监护人的学习引导、兴趣培养等提供合理化建议。

1 系统结构

基于Android平台的行为分析系统采用三层架构设计[5],分别为被监护人客户端,监护人客户端和服务器端。系统体系结构图如图1所示。

图1 系统体系结构图

被监护人客户端程序是由Service写成的后台服务程序,程序主要由数据采集模块、定位模块和数据发送模块组成。数据采集模块负责收集被监护人手机中的数据,包括短信数据、通话数据、流量数据、应用数据和轨迹数据。定位模块利用移动定位技术定位出用户的坐标,为数据采集模块提供轨迹数据。数据发送模块调用服务器提供的WebService接口,通过WiFi或3G将数据采集模块采集到的数据发送到服务器。

监护人客户端程序包括数据接收模块、统计结果显示模块和专家建议模块。数据接收模块通过WiFi或3G网络从服务器获取被监护人的实时数据和历史数据[6]。统计结果显示模块将被监护人各个时间段内的统计结果显示出来,包括短信统计、通话统计、流量统计、应用统计和轨迹聚类分析。专家建议模块给出由服务器端专家系统的分析结果和相应的引导意见。

服务器端由WebService接口、数据库和专家系统三部分组成。WebService接口为客户端程序提供数据交互服务。数据库用于数据存储,保证用户数据的准确性和安全性。专家系统对用户数据进行综合分析和评定,最终给出判定结果和专家意见。

该系统的处理流程包括以下步骤:

1) 被监护人客户端程序每隔一段时间将采集到的短信、通话、流量、应用和轨迹数据发送到服务器。

2) 服务器将被监护人客户端发送的数据存储到数据库中,然后统计数据作为输入进入专家系统进行统计分析与综合判定,最后将判定结果存入数据库。

3) 监护人客户端从服务器端获取统计结果和专家意见,显示在相应的模块中。

2 关键技术

2.1 手机地图技术

(1) 被监控端定位技术

百度地图Android定位SDK是为Android移动端应用提供的一套简单易用的LBS定位服务接口,通过使用百度定位SDK,可为应用程序实现智能、精准、高效的定位功能[7]。本系统中被监护人客户端集成了百度地图Android定位SDK,每隔一段时间定位SDK的接口向百度定位服务请求用户的位置信息,并调用本系统中服务器提供的WebService接口将相关信息发送到服务器。其中定位模块采用GPS定位、基站定位、Wi-Fi定位三种定位方式相结合的集成定位方式,会根据设备当前的实际情况,如是否开启GPS,是否连接网络,是否扫描到Wi-Fi信息等,来智能选择定位策略。本系统为定位模块共设计了三种定位策略,分别为高精度模式,低功耗模式和仅用设备模式。高精度模式会同时使用网络定位和GPS定位,优先返回最高精度的定位结果;低功耗模式不会使用GPS,只会使用Wi-Fi和基站定位;仅用设备模式不需要连接网络,只使用GPS进行定位,这种模式下不支持室内环境的定位。

(2) 监控端地图显示

百度地图 Android SDK是一套基于Android 2.1及以上版本设备的应用程序接口,通过调用地图SDK接口,可以访问百度地图服务和数据,开发适用于Android系统移动设备的地图类应用程序[8]。本系统中监护人客户端嵌入了百度地图 Android SDK,轨迹显示模块调用本系统中服务器提供的WebService接口获取的进过聚类处理后的坐标集,并标记在地图上,方便监护人查看被监护人在不同时间所在的位置。为了便于在不同移动终端上的应用,本系统采用LinearLayout、FrameLayout和RelativeLayout的混合布局模式,并利用Android中的Graphical Layout编写了main.xml布局文件[9]。轨迹显示模块涵盖了普通地图、卫星图和实时交通图等多种图层,并支持通过手势控制来实现地图的点击、双击、长按、缩放、旋转、改变视角等操作。其中坐标标记功能充分利用百度地图SDK支持多种地图覆盖物的优势,灵活使用自定义地图标注将被监护人的位置醒目地显示在地图上。

2.2 DBSCAN自适应聚类算法

实验发现,如果轨迹分析功能的轨迹点不经过处理,在地图上显示会过于密集,为监护人查看被监护人位置带来很多不便和干扰,这极大降低了用户体验。而且监护人关心的往往是被监护人都去过哪些地方,即停留点,并不需要全部的轨迹。所以本系统使用聚类算法提取出被监护人的停留点,监护人客户端的轨迹分析模块会根据地图缩放比例智能调节停留点的显示个数,使得查看被监护人不同时间所在地点变得简单明了。

传统的DBSCAN聚类算法对用户定义的参数很敏感,细微的不同都可能导致差别很大的结果,而参数的选择无规律可循,只能靠经验确定[10]。本系统中是根据轨迹点的经纬度计算点之间的距离,然后根据选定的Eps和MinPts两个参数进行聚类。在不同缩放级别的地图上要显示不同密度的点,这就需要Eps和MinPts两个参数能根据数据集的特点进行自适应调节。鉴于此,本系统采用一种通过分析数据集的统计特性来自适应确定Eps 和MinPts 的改进DBSCAN聚类算法,以实现聚类过程的全自动化[11]。MinPts的计算公式为:

(1)

其中,pi为点i的Eps领域内点的个数。Eps的计算公式为:

(2)

其中,xi为第i个距离值。

笔者对传统DBSCAN算法和改进的自适应DBSCAN算法进行了对比实验,对算法的评价以其有效性和对聚类结果的好坏来衡量。首先选定了一组790个轨迹点的小数据集分别应用两种算法进行实验。对传统DBSCAN算法采用控制变量法选择Eps和MinPts两个参数进行聚类,而自适应DBSCAN算法根据数据集自动生成参数进行聚类。然后再选定一组13 954个轨迹点的大数据集进行同样的实验。得到的结果如表1所示。

表1 自适应DBSCAN与DBSCAN算法聚类准确性比较

从表1可以看出,改进后的自适应DBSCAN聚类算法在处理坐标点的聚类时准确度上确实优于传统的DBSCAN聚类算法。这是由于传统DBSCAN 算法进行聚类时根据经验选择的固定的参数对结果的准确度产生影响,自适应DBSCAN算法会根据数据集的特征对Eps 和MinPts 参数进行自动生成而不是取固定值,因此相对而言进行聚类所得到结果的准确度较高。

2.3 专家系统

专家系统是一类具有专门知识和经验的程序系统,通过对人类专家的问题求解能力的建模,采用人工智能中的知识表示和知识推理技术来模拟通常由专家才能解决的复杂问题,达到具有与专家同等解决问题能力的水平[12]。为了充分利用专家的丰富资源,令监护人有效及时地掌握被监护人的行为动态,实现对被监护人正确的教育和培养,建立了基于手机数据的行为分析专家系统。行为分析专家系统可以根据用户手机的短信使用情况、通话情况、流量使用情况、软件使用情况以及用户轨迹分析出用户的行为特点和性格特征等,并进一步给出专家意见,从而解决一些需要教育学和心理学专家才能解决的对学生教育和心理辅导的问题。专家系统的总体结构包括数据提取模块、知识获取模块、行为分析知识库、分析推理模块和解释模块。专家系统的结构如图2所示。

图2 行为分析专家系统结构图

数据提取模块负责与服务器端存储手机行为数据的数据库进行交互,提取所需要的数据,存入分析结果和专家意见;知识获取模块是为通过数据提取模块不断补充、修改、完善行为分析知识库提供的手段;行为分析知识库作为专家系统的核心,主要用来存储工作过程中的流程控制知识、行为分析知识、模型和方法知识、诊断原则等教育学和心理学领域专家知识;分析推理模块是专家系统的执行关键,它根据行为数据提取模块的输入数据或信息,利用知识库按一定的推理策略分析行为特点,实现手机行为分析的智能化;解释模块负责对分析推理模块的分析过程和结果进行说明,并给出专家的教育和引导意见。

3 系统演示

3.1 演示环境

手机行为分析系统是基于Android移动设备的应用系统,其手机客户端程序以Java作为开发语言,并结合Android平台提供的组件,使用Eclipse作为开发工具进行开发。本系统的服务器端程序以C#作为开发语言,并结合.net平台下的MVC开发框架,使用Microsoft Visual Studio 2010作为开发工具进行开发。

监护人客户端部署设备为魅族MX,4英寸屏幕,960x640分辨率,主频1.4 GHz,双核,运行内存1 GB,操作系统为Android 4.1。被监护人客户端部署设备为三星SCH-I829,主频1.2 GHz,双核,运行内存1 GB,操作系统为Android 4.1。服务器端程序部署在戴尔2U服务器上,内存容量为2 GB ECC DDR3,硬盘容量为300 GB,服务器操作系统为Windows 2008 Server。

3.2 演示内容

(1) 轨迹聚类分析

将被监护人客户端程序部署完毕后,在开启GPS的情况下进行了户外测试,同时在部署了监护人客户端的测试机上查看被监护人的轨迹。在没使用自适应聚类算法的情况下,被监护人的轨迹过于密集,很难体现出用户的停留点,如图3、图4所示。在使用了聚类算法以后,聚类结果清晰地表明用户去过的三个主要地点。

图3 聚类前轨迹图 图4 聚类后停留点图

(2) 分析数据查看

在监护人客户端可以查看到被监护人的流量使用情况、应用程序使用情况、通话情况、短信使用情况等,在每个模块以列表的形式展现出在不同时段用户的手机使用情况。以查看应用程序使用情况为例,如图5所示,每一个列表项给出了该款应用在这个时间下的使用时间和使用次数。

(3) 专家意见

服务器端的专家系统进过对被监护人手机数据的综合分析后会得出分析结果,并给出专家的教育和引导意见,在监护人手机进行显示。如图6所示。

图5 应用分析模块 图6 专家系统分析结果

4 结 语

本文设计的基于Android平台的行为分析系统融合了移动地图技术、自适应DBSCAN聚类算法和专家系统等技术,实现了短信使用统计、通话情况统计、流量使用统计、软件使用统计、轨迹聚类分析和专家系统分析等多项功能,为教师和家长对学生的教育和引导提供了有力的信息支持。该系统创建了一种对学生的新型教育模式,使得监护人在对被监护人的培养和教育过程中从被动变得主动,方法更加科学和有针对性。

[1] 谷大海,赵海洲,项勋,等.手机对大学生课堂学习影响的研究[J].大学教育,2013(14):130-131.

[2] 张文国.对学校管理学生手机行为的法律分析[J].思想理论教育,2012(16):45-49.

[3] 柳国华,谢璨,英春.基于短信的社会网络行为分析[J].计算机应用与软件,2011,28(6):220-224.

[4] 胡俊华,魏芳,平金玉.3G无线网络条件下的用户行为分析[J].计算机应用与软件,2012,29(3):144-148.

[5] 黄冬梅,张喆昱,赵丹枫,等.SmartMS:Android平台下灵活的海监执法取证及分析系统[J].计算机研究与发展,2013,50(S1):389-393.

[6] 刘宇,徐伟佳,李鹏,等.基于Android平台的远程工业监控系统[J].计算机测量与控制,2014,22(4):1087-1089.

[7] Baidu.Android locating SDK[EB/OL].http://developer.baidu.com/map/geosdk-android.htm,2014-02-20/2014-06-14.

[8] Baidu.Android SDK documentation[EB/OL].http://developer.baidu.com/map/sdk-android.htm,2014-06-05/2014-06-14.

[9] 任克强,曹宏强.基于Android和H.264的实时视频监控系统[J].计算机测量与控制,2013,21(9):2448-2450.

[10] Chowdhury A K M R,Mollah M E,Rahman M A.An efficient method for subjectively choosing parameter ‘k’automatically in VDBSCAN (Varied Density Based Spatial Clustering of Applications with Noise) algorithm[C]//Computer and Automation Engineering (ICCAE),2010 The 2nd International Conference on.IEEE,Singapore,2010(1):38-41.

[11] 周红芳,王鹏.DBSCAN算法中参数自适应确定方法的研究[J].西安理工大学学报,2012,28(3):289-292.

[12] 史忠植,王文杰.人工智能[M].北京:国防工业出版社,2007.

RESEARCH ON BEHAVIOUR ANALYSIS SYSTEM BASED ON ANDROID PLATFORM

Xu Xinjun Yuan Yuan Su Jianchen Yang Feng

(SchoolofMechanicalElectronicandInformationEngineering,ChinaUniversityofMiningandTechnology(Beijing),Beijing100083,China)

Aiming at the problem that the phenomenon of pupils playing mobile phone in class and going to internet cafes after school is a constant resurgence after repeated prohibitions, we designed and developed an Android platform-based behaviour analysis system. The system is based on a three-tier architecture design which consists of the guardian client, the wards client and the server. It employs comprehensively the key technologies such as Baidu map API, self-adaptive DBSCAN clustering algorithm and expert system, etc., and realises multiple functions of real-time examining the usages of SMS, calls, traffic and app, track clustering analysis, expert system analysis and so on, which enables the guardians to intuitively understand the behaviours and moving as well as questions of the wards, and adopts scientific and effective method in education and guidance, thus solves the problems of pupils in overusing mobile phone, addicting to internet access and obsessing in playing games, etc., this brings great convenience for parents and teachers as the guardians.

Android Expert system Baidu map Behaviour analysis

2014-12-25。国家重大科学仪器设备开发专项(2012 YQ030126);“十二五”国家科技支撑计划项目(2011BAK06B01-06)。徐昕军,硕士生,主研领域:物联网技术。袁媛,硕士生。苏剑臣,硕士生。杨峰,教授。

TP3

A

10.3969/j.issn.1000-386x.2016.04.052

猜你喜欢

监护人轨迹聚类
石狮市妇联依职权申请撤销监护人资格
轨迹
轨迹
监护人责任之探究
基于K-means聚类的车-地无线通信场强研究
轨迹
进化的轨迹(一)——进化,无尽的适应
基于高斯混合聚类的阵列干涉SAR三维成像
基于Spark平台的K-means聚类算法改进及并行化实现
一种层次初始的聚类个数自适应的聚类方法研究