一种基于位置服务的用户行为分析和信息推送系统的制作方法

xiaoxiao2021-2-23  121

一种基于位置服务的用户行为分析和信息推送系统的制作方法
【技术领域】
[0001] 本发明设及一种基于位置服务的用户行为分析和信息推送系统,设及用户的位置 及信息推送技术领域。
【背景技术】
[0002] 随着移动互联网的飞速发展,移动互联网使用者暴露在网络上的信息量越来越 大,信息类型也越来越多,如何从海量的用户信息中提取有用信息进行建模分析,从而得到 用户的喜好,并据此向用户提供必要的服务,是如今大数据背景下大多数移动互联网商家 所关屯、的。具体来说,结合位置服务化ocation Based Service,LBS)所提供的用户位置信 息进行信息推送是一种常见的用户服务方式。近年来,很多LBS服务范例都是基于用户发起 的,即由用户向远端服务器提出请求,然后由服务器返回检索结果。比如生活中我们经常使 用百度地图、美团等软件都是基于运种模型,由用户输入检索内容,如"最近的美食",服务 器通过用户所在的位置返回离用户最近的美食店铺位置。
[0003] 在基于用户发起的LBS服务中,服务器只在用户发起服务要求时才向其推送信息。 但实际上,从用户体验角度来说,运种模式无法完全满足用户的需求。随着终端计算能力的 显著提高,目前也出现了基于服务器发起的LBS,在运种模式中,服务器主动向用户推送与 用户所在位置相关的服务信息,即当用户处于某些特定位置时,服务器会向用户推送该位 置相关的信息。运种模式虽然无需用户发起服务要求就能收到推送信息,但缺乏针对性,即 没有考虑到用户是否对该信息具有需求。
[0004] 除此之外,如百度地图等大多数LBS服务都是基于GPS定位结果实现的。但当用户 处于特定的商场或教学楼等室内环境时,由于存在建筑物、墙壁、人员的遮挡,使得接收到 的GI^信号极其微弱,无法从中获得定位信息。

【发明内容】

[0005] 本发明的目的是提供一种基于位置服务的用户行为分析和信息推送系统,W实现 一套完整的用户行为分析和信息推送系统,通过对特定室内场景下用户位置信息的建模分 析来提取用户的行为模式,据此有针对性的向用户推送其感兴趣的信息。
[0006] 本发明为解决上述技术问题采取的技术方案是:
[0007] -种基于位置服务的用户行为分析和信息推送系统,所述系统包括客户端、服务 器、客户端数据存储部分和服务器数据存储部分;
[000引客户端通过WLA姆妾入的智能手机移动终端,客户端包括信息传输模块、客户端定 位模块和信息显示模块,
[0009] 在信息传输模块中,用户可配置与其通信的服务器端的IP地址及端口号,W实现 客户端和服务器的信息交互,
[0010] 客户端定位模块采用基于WLAN的自主采集定位来实现,包括指纹图采集建立子模 块和实时定位子模块,指纹图采集建立子模块通过采集AP信号形成的指纹图,实时定位子 模根据所述指纹图对客户端进行定位,实时定位子模块还将定位结果传递给信息传输模 块,从而向服务器实时发送用户位置信息,
[0011] 信息显示模块用于显示客户端所在位置周边地图W及服务器推送来的信息,所述 信息与客户的位置兴趣有关,
[0012] 所述指纹图和客户端所在位置周边地图通过客户端数据存储部分进行存储;
[0013] 服务器包括历史位置接收模块、聚类分析模块和信息推送模块,
[0014] 历史位置接收模块用于接收客户端传送来的用户位置信息,并通过本地的服务器 数据存储部分进行数据存储,服务器数据存储部分存储的大量用户位置信息作为用户历史 位置信息用于聚类分析,
[0015] 聚类分析模块通过对本地存储的用户历史位置信息聚类得到用户的位置兴趣点 (化int of interest,P0I),并根据聚类分析结果将位置兴趣点坐标在服务器端地图上加 W显不;
[0016] 信息推送模块为服务器端和其使用者的交互界面,服务器端使用者可根据服务器 端地图上显示的客户端位置兴趣点,键入与位置兴趣点相关的推送信息,同时当用户在线 时,持续判断客户端当前位置是否处于P0I范围内,如果是则进行信息推送,否则继续判断。
[0017] 所述聚类分析模块采用DBSCAN算法实现聚类分析。
[0018] 所述信息传输模块采用UDP套接字进行信息传输。
[0019] 服务器的历史位置接收模块、信息推送模块均采用UDP套接字进行信息传输。
[0020] 所述系统采用Amlroid语言进行开发。
[0021] 本发明的有益效果是:
[0022] 本发明所述系统的推送成功率、响应时延、定位精度运几个指标均较好,优于现有 技术的相应指标。利用本发明时,当用户P0I位置网络环境好时,系统可用性较好,信息成功 推送的概率大。参见本发明效果验证部分。
【附图说明】
[0023] 图1是本发明的整体结构框图;图2是客户端各模块相互关系的结构框图;图3是客 户端定位模块的实现界面图,图中:(a)为离线采集界面,(b)为定位界面;图4为客户端信息 传输模块的UDP配置界面图;图5为客户端信息显示模块的推送信息界面图;图6是服务器各 模块相互关系的结构框图;图7是服务器端的实现界面图;图8是本发明的UDP通信流程图; 图9是推送成功率与AP信号强度关系图,图10是响应时延累计概率分布图;图11是K-means 聚类结果图,12是Birch聚类结果图,图13是DBSCAN聚类结果图;图14是P0I半径和FAP及FDP 关系曲线图。
【具体实施方式】
【具体实施方式】 [0024] 一:如图1~8所示,本实施方式所述的基于位置服务的用户行为分 析和信息推送系统,所述系统包括客户端、服务器、客户端数据存储部分和服务器数据存储 部分;
[0025] 客户端通过WLA姆妾入的智能手机移动终端,客户端包括信息传输模块、客户端定 位模块和信息显示模块,
[0026] 在信息传输模块中,用户可配置与其通信的服务器端的IP地址及端口号,W实现 客户端和服务器的信息交互,
[0027] 客户端定位模块采用基于WLAN的自主采集定位来实现,包括指纹图采集建立子模 块和实时定位子模块,指纹图采集建立子模块通过采集AP信号形成的指纹图,实时定位子 模根据所述指纹图对客户端进行定位,实时定位子模块还将定位结果传递给信息传输模 块,从而向服务器实时发送用户位置信息,
[0028] 信息显示模块用于显示客户端所在位置周边地图W及服务器推送来的信息,所述 信息与客户的位置兴趣有关,
[0029] 所述指纹图和客户端所在位置周边地图通过客户端数据存储部分进行存储;
[0030] 服务器包括历史位置接收模块、聚类分析模块和信息推送模块,
[0031] 历史位置接收模块用于接收客户端传送来的用户位置信息,并通过本地的服务器 数据存储部分进行数据存储,服务器数据存储部分存储的大量用户位置信息作为用户历史 位置信息用于聚类分析,
[0032] 聚类分析模块通过对本地存储的用户历史位置信息聚类得到用户的位置兴趣点 (化int of interest,P0I),并根据聚类分析结果将位置兴趣点坐标在服务器端地图上加 W显不;
[0033] 信息推送模块为服务器端和其使用者的交互界面,服务器端使用者可根据服务器 端 地图上显示的客户端位置兴趣点,键入与位置兴趣点相关的推送信息,同时当用户在线 时,持续判断客户端当前位置是否处于P0I范围内,如果是则进行信息推送,否则继续判断。
【具体实施方式】 [0034] 二:本实施方式中,所述聚类分析模块采用DBSCAN算法实现聚类分 析。其它步骤与一相同。
【具体实施方式】 [0035] Ξ:本实施方式中,所述信息传输模块采用UDP套接字进行信息传 输。其它步骤与一或二相同。
【具体实施方式】 [0036] 四:本实施方式中,服务器的历史位置接收模块、信息推送模块均采 用UDP套接字进行信息传输。其它步骤与一或二相同。
【具体实施方式】 [0037] 五:本实施方式中,所述系统采用Amlroid语言进行开发。其它步骤 与一、二、Ξ或四相同。
【具体实施方式】 [0038] 六:本实施方式给出基于本发明开发的软件或立品的使用过程:
[0039] 步骤一:在具有局域网的室内环境下,在配有安卓系统的移动客户端和服务器端 分别安装本发明的服务器端程序及客户端程序;
[0040] 步骤二:打开客户端的Wifi接入,启动客户端程序,在定位界面首先对所处局域网 环境进行离线的自主采集,得到的数据采集结果存储到客户端本地,供WLAN定位所使用。若 已进行过离线采集步骤,即本地存有该环境下的离线采集数据,可不必进行此步骤;
[0041 ]步骤;:在UDP配置界面,配置与服务器端的UDP连接,同时在服务器端程序中单击 历史位置接收按钮,建立与客户端的通信连接;
[0042] 步骤四:客户端回到定位界面,开始进行WLAN定位,定位数据作为用户的历史位置 信息实时传送回服务器。服务器端可随时对W接收到的用户历史位置信息进行行为分析, 单击程序界面中的DBSCAN按钮即可分析得到用户P0I;
[0043] 步骤五:服务器端根据用户P0I位置,可在信息推送框中输入要推送的文本信息, 单击信息推送按钮进行信息推送;
[0044] 步骤六:当持有客户端的用户再次经过其感兴趣位置时,将接收到服务器推送来 的与其兴趣位置相关的信息,至此整个用户行为分析和信息推送过程完成。
[0045] W上所述,仅为本发明较佳的【具体实施方式】,但本发明的保护范围并不局限于此, 任何熟悉本技术领域的技术人员在本发明掲露的技术范围内,根据本发明的技术方案及其 发明构思加 W等同替换或改变,都应涵盖在本发明的保护范围之内。
[0046] 针对本发明进行如下阐述:
[0047] 由于本系统(方法)的使用场景是室内,针对GPS定位效果差的缺点,本方法通过 WLAN定位来获取用户的位置信息。在具有局域网的室内环境下,通过设计得到由该方法所 构成的系统整体功能结构图如图1所示。由该图可看出系统从客户端、服务器W及数据存储 Ξ个层次上展开设计,每个层次包含了不同的功能模块,具体来说主要是客户端和服务器 两个层次上的功能结构设计。
[004引本系统中客户端为可W使用WiFi接入的智能手机移动终端,由信息显示、信息传 输W及客户端定位Ξ个功能模块构成,均采用Amlroid语言进行开发。信息显示模块用于显 示客户端所在位置周边地图W及服务器推送来的信息;信息传输模块是一个客户端与用户 的交互界面,由用户配置与客户端通信的服务器端IP地址及端口号;定位模块采用基于 WLAN的室内定位技术,通过采集AP信号形成的指纹图对客户端定位,因此定位模块分为指 纹图采集建立和实时定位两个部分。定位所得到的客户端位置会显示在地图上,同时也作 为用户位置信息传递给服务器端并在服务器端进行存储。图2显示了客户端各功能模块间 交互的具体过程。图3至图5为实现后的客户端用户界面。
[0049] 服务器端由历史位置接收、聚类分析和信息推送Ξ个功能模块构成,均采用化va 开发。历史位置接收模块用于接收客户端传送来的用户位置信息,并在本地进行存储;聚类 分析模块通过对本地存储的用户历史位置信息聚类得到用户的位置兴趣点(Point of interest,P0I),并根据聚类结果可将POI坐标在服务器端地图上加 W显示;信息推送模块 为服务器端和使用者的交互界面,使用者可根据服务器地图上显示的客户端P0I位置,键入 与P0I相关的推送信息。同时当用户在线时,持续判断客户端当前位置是否处于P0I范围内, 当判断为真时进行信息推送。比如在商场的模拟场景下,分析得到客户端P0I为Nike运动店 铺,那么当用户再次到达该店铺附近时,服务器端进行信息推送,推送的信息可W为"Nike 夏季新款运动鞋上市"或"附近发现Nike折扣店"等。图6展示了服务器端Ξ个功能模块和服 务器本地数据存储间的具体交互流程。图7给出了实现后服务器端的用户界面。
[0050] 在服务器端聚类分析模块中,本方法共提供了Ξ种不同的聚类分析算法K-means、 Birch和DBSCAN来计算用户P0I。由于Ξ种算法的聚类原理各不相同,因此可针对不同场景 下的地图来选择不同的聚类算法对用户信息进行分析。
[0051] 系统通过实时判断用户位置是否处于P0I附近来决定是否进行信息推送,不需要 等待用户发出服务请求,运区别于传统的用户主动请求推送模式。信息的传输方式采用局 域网下的UDP协议,具有时延小的优势,适合于实时业务的系统。具体应用于本系统的UDP通 信流程如图8所示。当所使用的推送信息确定后,在服务器端已与客户端建立了 Socket套接 字传输通道情况下,也就是在服务器端实时接收客户端位置的情况下,单击程序中的信息 推送按钮,程序将推送信息发送给用户。
[0052] 服务器端所推送的信息内容可由W下两种方式获得,一种是由使用者针对用户的 P0I手动输入,其好处是便于对推送信息进行修改,缺点是每次启动程序时都要重新键入推 送信息;另一种是将带推送的信息直接写入Socket套接字发送,其好处是不必每次都重新 键入推送信息,缺点是不便于修改。
[0053] 对本发明效果进行验证:
[0054] 为评价由本发明所设计实现的系统效果及性能,本文给出推送成功率、响应时延、 定位精度W及用户体验四个指标并对其进行测定。测试环境为满足系统要求的具有局域网 的室内环境,实验设备为处于同一局域网下,配置有该系统的客户端及服务器端。其各自的 定义方法和测试过程如下。
[0055] (1)推送成功率111
[0056]
(1)
[0057] 推送成功率是当用户位于P0I范围内时,客户端成功接收到服务器端推送信息的 概率。其中,nsum为总推送次数,nsuccess为推送成功次数。正常网络状态下,系统应具有较高 的推送成功率W保证本信息推送系统能够投入使用。
[0058] 由图9可得,当客户端接收到AP信号强度在-85地W上时,推送成功率在95% W上; 当接收到AP信号强度小于-85地时,推送成功率会随着信号强度的减弱而明显降低。当用户 P0I位置网络环境好时,系统可用性较好,信息成功推送的概率大;当用户P0I位置网络环境 较差时,系统可用性较差,信息成功推送概率较小。
[0059] (2)响应时延τ
[0060]
(2)
[0061] 该指标描述的是从服务器发出推送信息直至用户接收到推送信息所花费的时间。 为保证推送信息能够被用户即时接收,系 统应具备较小的响应时延。
[0062] 对实验数据求累积概率分布并绘图如图10所示。由实验数据的累计概率分布图可 得出系统响应时延在9msW内,且有80%的概率在5ms W内,说明系统响应时延较小,当客户 端处于P0I范围内时,可及时接收到推送信息,满足系统设计需求。
[0063] (3)定位精度
[0064] 影响本推送系统性能的关键在于客户端定位,它是位置信息服务的基础,因此,本 系统中的定位模块须有较高的定位精度。测试时主要使用定位误差1来衡量系统的定位精 度,1即为测试坐标与真实坐标之差。经测试得到该系统有60%的置信概率为2m的定位误 差。由于本系统中的Radio map离线采集过程是由客户端自主完成的,用户只对周围环境进 行一次采样即开始进行定位,因此相对于非自主采集建立Radio map方法,自主采集方法在 定位精度上有一定的损失;但带来了即插即用,对地图不敏感,定位方便等诸多好处。
[0065] (4)用户体验
[0066] 从用户角度出发,除W上Ξ种指标外,另一个重要的评价标准为系统对用户行为 模式的提取是否准确,在本方法中即为系统分析所得用户P0I位置是否准确,而运恰恰取决 于聚类分析算法的选择。
[0067] 图11-图13分别给出了在具有局域网的室内环境下,W不同教室模拟某一层商场 的不同店铺,并使用上述系统的客户端进行历史位置信息采样,进一步对采样数据使用本 方法所提供的Ξ种聚类分析算法的聚类效果图。通过对比可发现,在该测试地图下,K-means和Birch算法的聚类结果无论是在聚类数或是准确度上都比较差。但由于DBSCAN是基 于密度连接来对数据点进行聚类的,因此它能够发现任意形状的类簇,不仅仅局限于球形 簇,故由DBSCAN得到的聚类结果都是位置相近的坐标点聚成一类,对运些点取均值时自然 会使聚类中屯、位于用户可达位置上;另一方面,DBSCAN算法在执行密度可达判断操作时会 自动将密度不可达点,也就是噪声点去除,因此在图13中少了一些分布较稀疏的噪声点。运 种对噪声点不敏感的优势使DBSCAN算法在聚类时只关注用户行为密集的区域,也就是只关 注POI位置附近,自动忽略用户在不同店铺之间的行走轨迹,是最切合本系统中寻找POI位 置运一任务的聚类算法。
[0068] 在确定用户行为分析所采用算法的前提下,进一步将用户体验指标具体化为漏发 概率(化130 Dismissal Probability,抑P)和虚发概率(化130 Alarm Probability,FAP)。
[0069] 漏发概率是指当用户处于POI位置范围内时,应该收到服务器的信息推送却没收 到的概率,计算公式如式(3)。
[0070]
锁 [0071 ]其中Md为推送信息漏发次数,η为总共试验次数。
[0072] 虚发概率是指当用户并未处于Ρ0Ι位置范围内,但仍收到了推送信息的概率,计算 公式如式(4)。
[0073]
巧)
[0074] 其中nfa是推送信息虚发次数,η为总共试验次数。
[0075] 由于用户的Ρ0Ι范围是由服务器端所规定的,因此漏发概率和虚发概率都与系统 设定的Ρ0Ι半径相关。为寻找它们之间的关系,我们在系统设定不同Ρ0Ι半径的情况下对FDP 和FAP进行测试,得到的测试结果及Ξ者间的关系图如图14所示。
[0076] 由图14可得出系统的虚发概率高于漏发概率,并且随着Ρ0Ι半径的增大,虚发概率 和漏发概率都逐渐变小,漏发概率减小的速度更快。上述情形是由系统定位误差所导致的, 当服务器端设定的Ρ0Ι半径比较小时,由于系统定位误差较大,导致信息出现虚发和漏发的 概率较大;而当Ρ0Ι半径变大时,系统定位误差可W与其相比拟甚至比其更小,信息推送就 会更准确,虚发概率和漏发概率相应的都会降低。相应地,用户体验会得到提高。
【主权项】
1. 一种基于位置服务的用户行为分析和信息推送系统,其特征在于:所述系统包括客 户端、服务器、客户端数据存储部分和服务器数据存储部分; 客户端通过WLAN接入的智能手机移动终端,客户端包括信息传输模块、客户端定位模 块和信息显示模块, 在信息传输模块中,用户可配置与其通信的服务器端的IP地址及端口号,以实现客户 端和服务器的信息交互, 客户端定位模块采用基于WLAN的自主采集定位来实现,包括指纹图采集建立子模块和 实时定位子模块,指纹图采集建立子模块通过采集AP信号形成的指纹图,实时定位子模根 据所述指纹图对客户端进行定位,实时定位子模块还将定位结果传递给信息传输模块,从 而向服务器实时发送用户位置信息, 信息显示模块用于显示客户端所在位置周边地图以及服务器推送来的信息,所述信息 与客户的位置兴趣有关, 所述指纹图和客户端所在位置周边地图通过客户端数据存储部分进行存储; 服务器包括历史位置接收模块、聚类分析模块和信息推送模块, 历史位置接收模块用于接收客户端传送来的用户位置信息,并通过本地的服务器数据 存储部分进行数据存储,服务器数据存储部分存储的大量用户位置信息作为用户历史位置 信息用于聚类分析, 聚类分析模块通过对本地存储的用户历史位置信息聚类得到用户的位置兴趣点(Pointofinterest,POI),并根据聚类分析结果将位置兴趣点坐标在服务器端地图上加 以显不; 信息推送模块为服务器端和其使用者的交互界面,服务器端使用者可根据服务器端地 图上显示的客户端位置兴趣点,键入与位置兴趣点相关的推送信息,同时当用户在线时,持 续判断客户端当前位置是否处于P0I范围内,如果是则进行信息推送,否则继续判断。2. 根据权利要求1所述一种基于位置服务的用户行为分析和信息推送系统,其特征在 于:所述聚类分析模块采用DBSCAN算法实现聚类分析。3. 根据权利要求1或2所述一种基于位置服务的用户行为分析和信息推送系统,其特征 在于:所述信息传输模块采用UDP套接字进行信息传输。4. 根据权利要求3所述一种基于位置服务的用户行为分析和信息推送系统,其特征在 于:服务器的历史位置接收模块、信息推送模块均采用UDP套接字进行信息传输。5. 根据权利要求1或2所述一种基于位置服务的用户行为分析和信息推送系统,其特征 在于:所述系统采用Android语言进行开发。
【专利摘要】一种基于位置服务的用户行为分析和信息推送方法,涉及用户的位置及信息推送技术领域,本发明通过对特定室内场景下用户位置信息的建模分析来提取用户的行为模式,据此有针对性的向用户推送其感兴趣的信息。所述系统包括客户端、服务器、客户端数据存储部分和服务器数据存储部分;客户端为具备WLAN接入功能的智能手机移动终端,包括信息传输模块、客户端定位模块和信息显示模块,服务器包括历史位置接收模块、聚类分析模块和信息推送模块;通过以上各模块,客户端可在其感兴趣的位置范围内收到服务器推送来的信息,所述信息与客户的位置兴趣有关。本发明所述系统响应时延较小,当客户端处于POI范围内时,可及时接收到推送信息,满足系统设计需求。
【IPC分类】H04L12/58
【公开号】CN105490926
【申请号】CN201511023134
【发明人】孟维晓, 张晗, 韩帅
【申请人】哈尔滨工业大学
【公开日】2016年4月13日
【申请日】2015年12月30日

最新回复(0)