海量数据处理大作业实验报告

海量数据处理大作业实验报告

ID:12046499

大小:2.39 MB

页数:13页

时间:2018-07-15

海量数据处理大作业实验报告_第1页
海量数据处理大作业实验报告_第2页
海量数据处理大作业实验报告_第3页
海量数据处理大作业实验报告_第4页
海量数据处理大作业实验报告_第5页
资源描述:

《海量数据处理大作业实验报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、海量数据处理实验报告PancakeTycoon煎饼大亨海量数据处理课程实验报告清华大学计54曹正kevin@goog01清华大学计54杨子redeye@goog01一项目内容简介本项目主题是实现一款模拟经营类游戏。使用hadoop大规模数据处理技术,对店铺、顾客进行模拟,并针对店铺信息等提供可供玩家设置的交互性,从而实现最简单的模拟经营效果。游戏对煎饼摊这一校内常见的经营进行模拟。用户可以设置煎饼摊的数量,不同摊位的详细设置(见后,详细设计部分)。软件根据用户的设置,对每个顾客的消费行为作模拟,最后汇总,返回给用户。用户根据返回的

2、结果,适当调整摊位的设置,力争尽可能多的利润。煎饼摊需要投入经营资金,例如面粉等原料的进货。同时销售则会收入资金。利润由此而来。总体上,单个摊位的模型设置如前所述,可以看到和实际中的煎饼摊位是差不多的。在应对多店铺的情况时,模型有所简化,见详细设计部分。二项目详细设计1总论软件需要与用户交互,以输入店铺参数等信息,同时软件还要能够使用分布式系统,进行hadoop数据处理,最后软件要将结果返回给用户。基于以上功能需求的考虑,软件划分为两个部分:与用户交互、接受输入、反馈结果的客户端,和获得运行所需数据、进行hadoop数据处理、最终

3、汇总结果返回的服务器端。客户端运行在用户机器上,服务器端运行在集群上。双方通过Socket进行通信,以协议的形式设定好双方统一的命令、数据格式。2数学模型如项目概述所述,对于每个店铺,使用类似实际的表达。对于店铺见的关系,软件对模型作了高度简化。对于顾客信息,为了运算的需要,产生对应的参数。13海量数据处理实验报告a店铺信息考察一个实际的煎饼摊位,为了煎饼制作、销售的进行,摊位需要准备如下物资:面粉、果子(薄脆)、葱、酱(这里我们分为甜和咸两种)、鸡蛋。我们对模型作了简化,没有提供榨菜等。这些物资在经营过程中需要玩家给出进货指令来

4、增加。煎饼销售要考虑的问题有售价,以及每套煎饼内使用的面粉、果子(薄脆)、葱、酱、鸡蛋。这里果子(薄脆)和鸡蛋可以按照顾客的需求加入,参见顾客模型。经营过程就是物资的输入输出,收入的获得,成本的支出过程。玩家控制进货,对应的产生指出;经营过程被模拟出来,对应的产生收入。最终的经营效果,包括物资的剩余量和销售收入会提供的玩家,以便作分析进行进货。b顾客信息在店铺信息中已经给出了经营算法。这里考虑每一位顾客是否会购买煎饼。模型被简化,目前每位顾客有买与不买两个选择,但不会买多份。为了考察购买与否,需要给出一个评估函数。该函数以店铺信息

5、中的经营参数,以及顾客信息作为参数。为此,顾客信息模型建立,带有如下参数:喜好的面粉量、葱、酱添加量,加多少果子,加多少鸡蛋。店铺与顾客对应参数相减,取偏差相对喜好的百分比,再相加。使用该值作为评估函数的一部分,另一部分参见顾客调查。定义好评估函数,则每个顾客均参与评估,当达到阈值,如0.5之类,则评估返回为购买,否则即为不购买。将所有顾客遍历,得到汇总信息,归并之后返回给玩家,也就是店铺信息指出的返回值的来源。顾客的数目可以在服务器端的程序中手动进行设置。c多店铺多店铺模型相比开始时的设计有大幅简化。初始设计中,店铺带有坐标信息

6、,对应的顾客也带有坐标信息。取欧氏距离作为计算标准,每位顾客在每一轮经营中会选择最近的一个店铺。后来,取消了坐标的设计。目前的设计是顾客会随意选择一个店铺,然后根据顾客信息中的方式进行评估。店铺的数目和分布可以在客户端的程序中手动进行设置。目前的店铺设置为清华大学地图中的10个店铺位置,如下图所示。其中的数字是服务器端和客户端约定的交流hardcode部分,这些信息替代了原来的坐标信息。13海量数据处理实验报告d顾客调查软件提供给客户一些额外信息,是对购买的顾客作的调查,包括:是否觉得贵,是否认为等待时间过长,是否认为过咸或者过淡

7、,是否认为过甜。为了模拟这些信息,在顾客信息中添加这些成员,并在每轮模拟中计算这些值。计算方法同顾客信息中指出的评估方法。特别地,由于有了顾客调查这部分信息,故让他们也参与到评估中,方法即为在最终的评估结果基础上加上这些数值。值得注意的是,所加的数值是上一轮计算出来的,对应实际中对一个煎饼摊的印象。而后新的顾客调查数值才会被计算出来并在信息中更新。以上所有的数值都是为了参与模拟经营的计算,要返回给玩家时,再进行如下模拟。在店铺信息中指出的汇总过程中,考察每一个顾客。生成一个随机数,如果随机到调查该顾客,则从顾客调查信息中取出数据,

8、否则跳过、轮询下一位顾客。在取出数据后,按照一定阈值,如0.02,对数据作评估,在对应的问卷结果中加入。该过程类似下面的代码。foreveryguest{getarandomnumber;ifthenumberdostn'tfit,continue

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。