1、1“拍照赚钱”的任务定价模型摘要本题要求分析“ 拍照赚钱”任务的服务模式,研究其定价规律,并设计新的任务定价方案,结合实际情况,修改定价模型,最终对新项目设计任务定价方案,并评价方案的实施效果。求解的具体流程如下:针对问题一:为了研究项目的定价规律,分析任务未完成的原因,利用附件一的信息,在地图上定位所有坐标的位置,发现任务集中在广东、东莞、佛山、深圳四市,分别标明每个城市的成功任务和失败任务。以深圳为例,对深圳市任务进行聚类分析,结果分成 5 类,由相应任务的定价可以得出,人口密集处定价较低,人口稀少处定价较高的定价规律。将附件二的位置信息同理在地图上定位,分别计算任务周围的会员数,分析其与
2、定价的联系。针对问题二:由问题一结果可知,任务定价与任务周围人数和任务周围人口密度等因素有关。利用网络爬虫爬取广州、东莞、佛山、深圳四市医院,学校,小区,超市四种人口密度较大场所的经纬度,统计成功任务周围十公里人口密集场所。用 RBF 神经网络模型,从而确定新的定价方案。将此方案与原方案进行比较,得出两种定价方案的差异。针对问题三:为了解决用户争相选择位置集中任务等问题,可将多个任务联合打包,以便用户更好得执行任务。利用问题二中 RBF 神经网络模型求出新的定价方案下的任务定价;同问题一,求任意两个任务之间的距离。当两个任务之间的距离小于一定值时,便可将这两个任务种做打包处理。对于打包的任务,
3、可将每个任务的定价结合附近会员的信息求出最终定价;对于未打包的任务,任务定价不变。 针对问题四:为了对新项目设计定价方案,并评价方案的实施效果,将新项目中任务的位置定位于地图上,可以发现任务集中分布于两个区域,且两个区域距离较远,可认为互不影响。结合前面问题的分析,可知任务定价与区域的经济发展情况和用户到任务的距离有关。对用户而言,用户将优先选择距离较近且定价较高的任务,因此,可以使用灰度关联分析的方法,建立不同任务对会员的吸引力,从而对定价方案做出评价。关键词:聚类分析、RBF 神经、灰色关联分析法、网络爬虫2一、问题重述“拍照赚钱”是移动互联网下的一种自助式服务模式。用户下载 APP,注册
4、成为APP 的会员,然后从 APP 上领取需要拍照的任务(比如上超市去检查某种商品的上架情况) ,赚取 APP 对任务所标定的酬金。 APP 是该平台运行的核心,而 APP 中的任务定价又是其核心要素。如果定价不合理,有的任务就会无人问津,而导致商品检查的失败。1. 研究附件一中项目的任务定价规律,分析任务未完成的原因。2. 为附件一中的项目设计新的任务定价方案,并和原方案进行比较。3. 实际情况下,多个任务可能因为位置比较集中,导致用户会争相选择,一种考虑是将这些任务联合在一起打包发布。在这种考虑下,如何修改前面的定价模型,对最终的任务完成情况又有什么影响?4. 对附件三中的新项目给出你的任
5、务定价方案,并评价该方案的实施效果。二、模型假设1.会员对任务没有主观偏好,不会因为自身原因不完成任务;2.各个任务难度相等,不影响会员的选择;3.假设会员与任务间的距离都是直线距离,不受道路、河流等的影响;4.问题中所有数据都真实有效。三、符号说明符号 含义地球半径两地之间的球面距离, 两地的纬度两地的经度差P 打包后总价四、问题分析4.1 问题一分析问题一要求研究附件一中项目的定价规律,并分析任务未完成的原因。首先应在地3图中找出附件一中所有任务的位置,确定任务的分布规律,同时将附件二中会员的位置定位于地图。观察出这些数据集中分布在广东、东莞、佛山、深圳四个城市。以深圳市为例,对深圳的任务
6、进行聚类分析,分析聚类结果,从而得出项目的定价规律。分别计算每个任务与所有会员之间的距离,结合每个任务周围十公里的会员数与任务的定价,确定任务未完成的原因。4.2 问题二分析问题一可明显看出任务价格与任务周围人数和任务所在地区人口密度等有关。利用网络爬虫爬取广州等四市医院、学校、小区、超市等人口密度大的场所,统计成功任务方圆十公里内的人口密度大的场所个数。使用 RBF 神经网络分析,用所获得的数据训练神经网络,从而确定新的任务定价方案。将新的任务定价方案与附件一中的任务定价做出比较,说明两种定价方案的不同情况。4.3 问题三分析问题三要求将任务打包发布并设计新的定价方案,以解决用户争相选择等问
7、题。利用问题二中 RBF 神经网络模型求出新的定价方案下的任务的定价;利用问题一中两点经纬度坐标求出两点距离的计算方法求出每个任务与其他任务之间的距离,当两个任务之间的距离小于一定值时,便可将这两个任务种做打包处理。对于打包的任务,可将每个任务的定价结合附近会员的信息求出最终定价;对于未打包的任务,任务定价不变。 4.4 问题四分析问题四要求对一个新项目设计定价方案,并评价该方案的实施效果,将附件三中的任务的地理位置定位于地图上,可以发现任务集中分布于两个区域。通过前面的问题分析可知,任务定价与地区经济发展水平和会员距离有关。对会员而言,可以从任务的难易程度和会员到任务的距离两个方面判断会员对
8、任务的偏好,从而使用灰度关联分析对的方法,建立不同任务对会员吸引力的模型,便可以对这种方案的实施效果做出分析。五、模型建立与求解5.1 问题一模型利用地图定位将附件一中经度纬度定位到地图中,发现这些数据集中分布在广东,东莞,佛山和深圳四个城市中。分别分析四个城市的价格规律,以深圳市为例。考虑到城市内部存在区的划分,因此对数据进行聚类分析,猜测聚类结果呈区域块状分布,结果同样验证猜测。这是价格的分布规律,其内部原因是受每个任务周围会员数量的影响。分别求出任务方圆每十公里会员人数,分析任务周围的会员数与任务定价的关4系,从而确定任务未完成的原因。5.1.1 模型建立此题采用 Q 型聚类法建立模型并
9、求解。Step1. 距离表 5.1.1 数据观测值变量样本 1 2 1 11 12 12 21 22 2 n 1 2 设 为第 i 个样本的第 k 个指标,数据观测值如上表所示。在表中,每个样本有 p 个变量,故每个样本可以看作 中的一个点,n 个样本就是 中的 n 个点。在 中需要定义某种距离,第 i 个样本与第 j 个样本之间的距离记为 ,在聚类过程 中距离较近的点倾向于归为一类,距离较远的点应属于不同类。所定义的距离满足如下 4 个条件:(1) ,对一切 ;0 ,(2) ,当且仅当第 i 个样本与第 j 个样本的各个变量值相等;=0(3) ,对一切 ;= ,(4) ,对一切的 。+ ,最
10、常用的几种距离:(1) Minkowski(闵可夫斯基)距离, q0()=1()1对于 q=1 时,对应的是绝对值距离(2) 绝对值距离(1)=1|()|对于 q=2 时,对应的是 Euclid 距离(3) Euclid(欧几里得)距离(2)=1()2Step2. 数据标准化标准化变换:= ,=1,2,;=1,2,其中,均值:5=1=1方差:= 11=1()2变换后的数据均值为 0,标准差为 1,而且标准化后的数据与变量的量纲无关。Step3. 系统聚类系统聚类法(hierarchical clustering method)是聚类分析诸多方法中用的最多的一种,其基本思想是:开始将 n 个样本
11、各自为一类,并规定样本之间的距离和类与类之间的距离,然后将距离最近的两类合并成一个新类,计算新类与其它类的距离;重复进行两个最近类的合并,每次减少一类,直到所有样本合并为一类。以下用 表示第 i 个样本与第 j 个样本的距离, , ,表示类, 表示 1 2 与 的距离。下面所介绍的系统聚类法中,所有的方法开始时每个样本自成一类,类与类之间的距离与样本之间的距离相同,即 ,所以最初的距离矩阵全=部相同,记为 。(0)=()常用的系统聚类法:(1)重心法类与类之间的距离定义为它们重心(均值)之间的 Euclid 距离。设 与 的 重心分别为 和 ,则 和 之间的平方距离为: 2=2=()()这种系
12、统聚类方法称为重心法(centroid hierarchical method) 。它的递推公式为:2=2+222重心法在处理异常值方面比其它系统聚类法更稳健,但是其他方面却不如离差平方和法的效果好。(2)离差平方和法(Ward 方法)离差平方和法基于方差分析的思想,如果分类分得正确,则同类样本之间的离差平方和应当较小,不同类样本之间的离差平方和应当较大。设类 与 合并成新的类,则 , , 的离差平方和分别为: =()()6=()()=()()其中 , 和 分别是 , 和 的重心。所以 , 和 反应各自类内样本 的分散程度。如果 和 这两类相距较近,则合并后所增加的离差平方和应较小;否则,应较
13、大。于是定义 和 之间的平方距离为: 2=这种系统聚类法称为离差平方和法或 Ward 方法(Wards minimum variance method ) 。它的递推公式为:2=+2+2 +2和 之间的平方距离也可以写成2=()()由上述分析可见,这个距离与重心法给出的距离只差一个常数倍。重心法的类间距与两样本的样本数无关,而离差平方和法的类间距与两类的样本数有关。两个大类倾向于有较大的距离,因而不易合并,这更符合对聚类的实际要求。离差平方和法在很多场合下优于重心法,是一种较好的系统聚类法,但它对异常值很敏感。Step4. 已知两地经纬度求两地距离 和 分别是两地的纬度,北纬记为正; 是两地的
14、经度差, 是地球半径。忽略各 地海拔高度差异,认为地球是理想的球面。设 是两地的距离(地球的一条弦长) , 是 两地的球面距离(沿地球表面的弧长) 。则:= ()2+()2+()2=可求得:=212分别计算出以每个任务位置为中心,半径为十公里的区域(即为方圆每十公里)内会员的人数与相应的任务定价,通过成功任务和失败任务每十公里内的会员人数比较即可得出任务失败的原因。5.1.2 模型求解Step1. 基本数据处理清洗数据,对于有明显错误的数据给予改正,例如将附件二中的“113.13148 723.031824”改为 “23.031824 113.13148”。对于附件一和附件二中的任务与会员坐标
15、,使用 XGeocoding 解析出每个坐标所对应的地理位置,得出任务与会员集中分布于广东,东莞,佛山和深圳,则可删除极少的处于其他市的任务与会员,得到模型中使用的有效数据。表 5.1.2 城市中的任务数与会员数城市 任务数量 会员数广州市 322 665深圳市 161 629佛山市 173 216东莞市 179 351Step2. 确定定价规律(以深圳市为例)利用 BDP 在线数据分析软件将任务信息在地图上标出,将深圳市中的任务聚类分析,聚类后分成了五类 1,2,3,4 和 5。其中每一类任务在地图上的分布如下图:图 5.1.1 深圳市任务分类图表 5.1.3 每一类中个数和定价的均值聚类的
16、类别 个数 定价均值1 35 67.685712 45 66.477783 12 68.54 62 66.088715 7 76.85714显然,这很符合实际,人口密集区任务定价偏低,如类别 4 所在区域为人口密集区,人口密度较小,相应任务定价较低;偏远地区定价高,而且明显高过其他类别,如类别 5 所在区域,任务分布很广,但任务定价为所有类别中最高。同理可得出东莞,8佛山,深圳三市的任务与价格分布。这就是项目的任务定价规律。Step3. 分析任务未完成原因通过 Matlab 编写程序分别求出每个任务方圆十公里内的会员人数,分析方圆十公里内的会员人数与任务是否完成的关系。从附件一中统计可得,共有
17、 522 个成功任务,313 个失败的任务。首先求出每个成功任务与每个会员的距离,然后筛选出任务方圆十公里内的会员人数。同理可以求得失败任务方圆十公里内的会员人数。画出其统计直方图,如下图所示:图 5.1.2 成功任务频数分布直方图9图 5.1.3 失败任务频数分布直方图从图中可以看出,大部分成功任务方圆十公里内的会员人数在 150 人以下,在方圆每十公里少于 100 人之前,随着方圆十公里内人数的增加,成功任务总数增加;在方圆每十公里大于 100 人之后,随着方圆十公里内人数的增加,成功任务总数减少。失败任务方圆十公里内人数分布比较均匀,但总体也呈先增加后递减的规律。失败任务频数分布直方图显
18、示虽然有一部分任务方圆每十公里会员很多,但任务仍然失败。这可能和会员的活跃度有关,导致会员总数虽多,但活跃会员很少。实际情况中,如果有任务未完成,可分为有人执行任务但失败,无人执行任务两种情况。在第一种情况下,即有人执行任务但执行失败时,可能的原因有,任务本身过于困难,超出会员的能力,或任务时间过短,在规定时间内无法完成;第二种情况时,任务已在软件发布,但无人愿意执行该任务,可能的原因有任务地点与会员所在地距离过远,会员不愿意花费过多的时间;任务定价过低或过于困难,会员认为本身的劳动价值高于任务价值;任务发布的时间过短,导致无人可执行。附件二中给出了会员的信誉度,信誉度较高的会员越优先开始挑选
19、任务,配额也就越大。由失败任务的直方图可以得到,任务方圆十公里的会员数很多,任务失败仍有一定的比例,推测可得,会员信誉度与任务完成情况有关,会员信誉度越高,任务完成的概率越大;反之,会员的信誉度越低,接收任务后无法完成的可能性越大。5.2 问题二模型从问题一中发现,任务价格除了与任务周围的会员人数有关,也与其所在地区的人口密度和地理位置等有关。运用 RBF 神经网络进行训练学习确定新的任务定价方案。将设计出的定价方案与附件一中的定价方案进行比较,即可得到双方各自的优缺点。105.2.1 模型建立Step1. RBF 神经网络(径向基神经网络)(1)网络参数确定RBF 神经网络由输入层,隐含层和
20、输出层组成,其隐含层基函数常为高斯函数。最常用的函数为:()=exp(|222),=1,10其中, 为径向基函数的扩展常数,反应函数图像的宽度。X 为输入向量, 为基 函数的中心向量,与 X 有相同维数的向量; 为向量 的范式,通常表示 X| 与 之间的距离; 在 处有唯一的最大值,随着 的增大, 迅速衰减 () | ()到 0。在本题中,任务的输入样本共有 10 个,即输入层的输入为 ;输出=1,2,10为任务定价,即实际输出为 Y ,建立多输入、单输出的三层网络结构。 RBF 网络=输入层与隐含层直接连接,相当于直接将输入变量输入到隐含层。对于给定的输入,只有小部分靠近 X 的中心被激活。当确定了 RBF 网络的聚类中心 、扩展常数 与隐 含层到输出层的权值以后,就可求出给定某一输入时,网络对应的输出值。 X9X2X1X1 0中心 X1中心 X2中心 X9中心 X1 0输出 输入层隐含层输出层图 5.2.1 RBF 神经网络建模结构(2)样本数据训练学习在 RBF 神经网络中,需要通过学习和训练确定基函数的扩展常数,基函数中心向量与隐含层到输出层的权值。一般分为步进行:确定基函数的中心向量