查看: 690|回复: 0
打印 上一主题 下一主题

【QQ餐厅】QQ餐厅效率的算法攻略

[复制链接]
跳转到指定楼层
1楼:楼主大人
高加索 发表于 2010-11-17 15:20:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?加入会员

x
口号:犍为宝贝出品,必属精品
  本文阅读难度较大,对绝大数人都不适用。但我敢保证,你搜遍百度、谷歌也休想找到类似对餐厅效率算法的解析,对对此问题感兴趣的朋友来说,绝对是难得的参考。足可以以此发表一篇学术论文。本想认真写好这篇文章,让更多的人理解这个理论,但又觉得“一切都是浮云”。写好了,又有什么意义呢?又有几个人会认真去看,又有几个人能看懂呢?
  本文旨在阐述QQ餐厅游戏画面中的那个小时钟的算法,让你知道如何才能达到高效率。绝大数人会说,“这还不简单,随便怎么摆,只要把网上那张表拿过来看,显示的蹭饭时间达到满效率所对应的时间不就可以了吗?”没有错。但是如果你只是停留在这个层面,那么你不适合于继续读下去。不解释。
  好了,开始。
  餐厅的速度共受4个速度上限的限制,分别为:
    顾客流量上限;
    厨师的做菜速度上限;
    服务员的服务速度上限;
    桌椅摆放的速度上限。
  取这4个速度上限中最小的那个作为整个餐厅的主菜销售速度。换句话说:不论何种情况,主菜的售出速度必然是上面四个速度上限中的其中之一
  对于顾客流量上限,似乎不需要多说,它仅仅由玩家的等级决定。这个大家都懂的,正是网上那张表上的数据。比如30级的顾客流量上限为:870人/小时,25级是804。其中1个人最多只吃1份主菜。
  厨师的做菜速度上限,仅受厨师数量影响。1个厨师的做菜速度是450份/小时,2个厨师的做菜速度是900份/小时。可见现今所有等级(34级以下)均最多用2个厨师即可。
  服务员的服务速度上限同时受服务员数量、厨房到桌椅的距离影响。
  桌椅摆放速度上限同时受桌椅数量、厨房到餐桌的距离、门到餐椅的距离三方面因素共同影响。
  首先必须掌握服务员端菜位置的概念。服务员端菜时总是站在靠近橱柜的第一行从左数起的第3到第8个位置。举例,假如第一行第2、4、5三个位置摆有桌椅或装饰,那么服务就只能站在第3、6、7、8这四个位置。第1、2以及第9以后的所有位置服务员都是不能在那端菜的。
  厨房到餐桌的距离是指:从服务员端菜位置到最远的餐桌所经历的格子数。由于服务员可能有多个端菜位置、餐桌也有多个,所以具体的算法比较难以讲解。假设有A、B、C三张餐桌,有X、Y、Z三个服务员端菜位置。首先选定一张餐厅,比如A,尝试找出从服务员端菜位置最左边的那个(X)到A的最短路径,如果X不能到达A,再尝试找出接下来可能端菜位置(Y)到A的最短路径。直到第一次找到能够到达A的最短路径。找到这个路径后,数出它所经过的格子数,即为餐厅A到厨房的距离。同样的方法,再计算B到厨房的距离,C到厨房的距离。A、B、C的三个距离中最大的那个即为“厨房到餐桌的距离”。
  门到餐椅的距离是指:从大门到最远的餐椅的距离。大门只有一个,餐椅可能有多个。与上面的计算相似,找出所有餐椅到大门路径经历格子数中最大的那个,即为门到餐厅的距离。
  三种速度上限的计算公式如下,单位是“份/小时”。









厨师的做菜速度上限 = 450 * 厨师数量

服务员的服务速度上限 =  9000 / (7 * 厨房到餐桌的距离 + 5) * 服务员数量

桌椅摆放速度上限 = 36000 / ( 21 *厨房到餐桌的距离 + 7 * 门到餐椅的距离 + 250 ) * 桌椅总数





  举个简单的例子,隐身卡位摆法,2厨2服。此时,所有服务员到餐桌的最大距离是2格,套用公式:服务员的服务速度上限 = 9000 / ( 7 * 2 + 5) * 2 = 947 份/小时。
  有了这一理论,我们可以解释几乎所有有关装修、桌椅摆放、厨师服务员的问题。比如为什么隐身传菜法是最有效率的摆法;比如为什么扩建可能会使同样的摆法效率降低;比如为什么厨师最多只需要雇佣1个;比如为什么到了一定级别就必须至少要用14张桌椅;比如……
  还有些细节也没有完全描述,否则将会变得更为晦涩难懂。比如“厨房到餐桌的距离”在某些特殊情况下(主要是指不可达)会转为计算厨房到餐椅的距离。这是解释背靠背摆法的基础。再比如服务器与客户端在判断有效桌椅时有较大的不同。太多了,无法一一列举。
  第一次到Q吧发帖回帖就是在餐厅吧,大概是7月初,算算已经整整了4个月了。在这里,认识了不少朋友,学到了不少东西,也一步步成长,慢慢“无所不知”,开始习惯于回复别人的问题。最后,就变得有些厌倦了,以一句“不轻易发表评论”搪塞了无数新手的提问。我想改变这种生活方式,以后来Q吧就少了,不会再经常看到我的身影。本文算是近期给大家最后的“作品”。

为了更好地理解距离的算法,下面再用一个图来说明。红色数字表示门到餐的距离(15格),蓝色数字表示厨房到餐的距离(4格)。红色的数字应该较易理解,是从门到最远的那张餐所经历的格子数。
  厨房到餐厅的距离就没那么容易,关键是要确定服务员的端菜位置。服务员只能站在第一排的第3到第8个位置。请认真查看图中我用黄色椭圆标注的地方,那是其中一个厨师的上菜位,总共有6个(第3到第8)。服务员只能站在这几个位置前等候。由于这几个位置已经被第一排的桌椅占住了一部分,所以服务务能端菜的位置只有从左数起的第4、7、8三个位置了。按(从左到右的)顺序,首先尝试从第4个位置(刚好在图中蓝色数字“1”的位置)走遍所有的餐桌,发现均能走通,最远的餐桌,格子数为4格。这表示厨房到餐的距离是4格。


                               
登录/注册后可看大图


  运用公式:桌椅摆放速度上限 = 36000 / ( 21 *厨房到餐桌的距离 + 7 * 门到餐椅的距离 + 250 ) * 桌椅总数
  即 桌椅摆放速度上限 = 36000 / (21 * 4 + 7 * 15 + 250 )  * 6 = 492.0 份/小时。同样的道理,我们再计算其他的速度上限。服务员服务速度上限  = 9000 / ( 7 * 4 + 5) * 2 = 545 份/小时,厨师做菜速度 = 450 * 2 = 900份/小时。(厨师和服务员数量均为2。)在加上一个大家最为熟知的该等级客流量上限738(所谓的“满效率”)。在这四个速度中,选择最小的那个,即492.0份/小时,即为整个餐厅的卖菜速度。
下面用下图来验证,(3074 + 3074)/12.5 = 491.9 份/小时,(在误差允许范围内)与理论计算完全相符。


                               
登录/注册后可看大图


  应部分朋友要求,列出了各等级为达到满效率所必需的最大距离。此“距离”仅指厨房到餐桌的距离,而不包括门到餐厅的距离。因为后者显得没有那么重要(证明略)。总是假设雇佣满了所有雇员,而且厨师只有2个(厨师为何只要2个,见正文)






15至16级,不超过12格

17级,不超过10格

18至20级,不超过12格

21至26级,不超过13格

27至50级,不超过14格





下面再给出一个复杂一点的满效率摆法。


                               
登录/注册后可看大图


  红色路径是几条较为典型的长路径,此路径为厨房到餐桌的路径。蓝色数字给出了几个有代表性的格子数。可以看出,最远的距离是14格,根据上表中的结论,容易做到满效率。
  有人或许要问为什么服务员端菜位置是鱼缸旁边那个位置,而不是最左下角的那两个之一呢?看了正文就知道,服务员只可能站在第3到第8个位置端菜。
您需要登录后才可以回帖 登录 | 加入会员

本版积分规则

哪里找我们
Metro Theme for MYWEET
关于我们

浪漫部落,建立于2007年7月15日,是第一家以腾讯游戏为主题,以腾讯产品交流为核心的互动娱乐社区!在这里,所有人都是腾讯的爱者好,我们对腾讯新产品体验有着与众不同的见解和想法!欢迎加入我们,一起体验腾讯带来的精彩在线生活。

如果您有任何疑问和建议,请联系我们!

小黑屋|手机版|Archiver|浪漫部落 - 浪漫森林 ( 桂ICP备06016749号-1 ) |

GMT+8, 2024-5-3 16:29 , Processed in 0.557808 second(s), 24 queries , Gzip On.

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表