凯撒大帝3吧 关注:3,554贴子:28,632
  • 20回复贴,共1

全面解析行人行为规律(转)

只看楼主收藏回复

很多人不了解行人规律,我来转一下whisperwind777发表的《全面解析行人行为规律》内容,希望777大师不要告我侵犯版权哈。以下是全文转载(不知道全不全,呵呵):
警告:此贴不是给初学者看的,阅读之前请详细了解CAEASRIII中的行人产生的规则,行人行动的意图。充分理解此贴需要具备算法学基本知识,数据结构基本知识,平面几何基本知识,相当的空间思维能力,以及至少初等数学水平。以下内容不是CAESARIII必要知识,仅供研究行人行动规律用。如果你对算法研究没有兴趣,请直接阅读下划线部分,仍然可以对行人的行走模式有模糊了解。
花了我3天时间寻找资料和撰写,终于完成了这个研究,以后对于任何行人的行走有任何疑问参照此文
首先给出最重要的一个表:
26 27 28 29 30 31 32
33 10 11 12 13 14 34
35 15 1 2 3 16 36
37 17 4 5 6 18 38
39 19 7 8 9 20 40
41 21 22 23 24 25 42
43 44 45 46 47 48 49
左上(数字5指向26的方向)是正北方向
第一部分 名词解释
行人分类:
第2类行人包括工程师,收税员和娱乐场所出发的各种行人;
第3类行人包括从娱乐学校出发的各种行人;
第4类行人包括从各种产地出发的推车人和市场采购者;
第5类行人包括从仓库和谷仓出发的有获取指令的推车人和玩家的士兵以及任何非玩家制造单位;
剩下的全部属于第1类行人。
对于第1、2类行人就是我们通常所说的“随机行人”, 对于第3、4、5类行人就是我们所说的“目的行人”。
道路:普通道路,石子路,铺设广场的路,有水道通过的路,谷仓下面的十字区域,通向高地的台阶都属于道路
路障:门房,仓库的基准点都属于路障
花园:一般情况下属于道路,对于以R模式(下述)行走的行人来说属于路障
路径:一系列道路的**,占据若干连续或不连续的道路格,路径长度=路径包含道路数-1,路径由算法II决定
游程:指某种行走模式的最大路径长度。分为一般游程d时间游程,不同行人具有不同的一般游程,随机行人的一般游程d:
赛马场出发的战车驾驶员为140
**、工程师为43
娱乐场所产生的娱乐人员和收税员为35
其他第1类行人为26
例外:学校学童的游程很短,只有14
时间游程:
为10个月的时间所能经过的路程,比如一般的慢速行人是52*10=520,战车驾驶员等快速行人是52*10*4=2080
基准点:是游戏中计算建筑物之间距离的基本坐标。
建筑物之间的距离为基准点之间的横坐标之差与纵坐标之差的和|x1-x2|+|y1-y2|
建筑物的基准点位于建筑物的正北一格,比如一个2*2的小型神庙,占据表中5,6,8,9的位置,基准点就位于5,3*3的建筑物占据表中5,6,18,8,9,20,23,24,25的位置,基准点也位于5;
目标中心:为行人的潜在目的地,行人选定目标中心后会根据算法I在目标中心附近选择一个道路作为目标道路
对于随机行人来说,对于目标建筑物来说目标中心位于建筑物的几何中心,对于一个占据1~9的3*3的建筑物来说目标中心位于5;对于2*2的建筑相当于占据图中的1,3,7,9格,数字标记为29~46的行与数字标记为37~38的列就不存在了。几何中心仍然在5的位置,这里的几何中心就成为一个点的概念;
目标道路:目标道路才是行人的真正目的地,目标道路由算法I确定。



1楼2012-07-30 10:10回复

    返回的时候,行人的目的地并不一定是产生行人的那一格道路,而将是以目标建筑物的目标中心根据算法I产生的目的道路,此时行人成为一个目的行人,以模式C行动,会穿越路障,直到到达目标道路为止。此时即使到达目标道路需要很远的距离行人也会行动,仅受时间游程限制,这就是我们看到的受迫行人的第一种产生方法。
    如果没有返回的路径,则行人立即转变为R模式行动,如果之前行走距离已经等于或者超过d,则行人消失,反之继续行动直到行走距离到达d后消失。
    由以上分析可以看出,短游程和长游程的产生和过去认为的完全不同,对于长游程而言,具有一个变化的距离,最长可以达到2d-1,而不是通常认为的固定值。
    因为潜在的目标中心共4个并以顺时针方向变化,所以行人的行走路线以4次为一个周期。
    例外:对于学校一次就产生4个学童,分别对应4个潜在目标中心所以不存在4次的周期性;对于分发物资的市场大妈,在市场物资匮乏时也会立即返回。
    对于第2类行人而言,行动规律和第一类行人基本相同,出发后行为采用B模式,所以第2类行人不会出现第1类行人中b的情况,无论到达目标道路之前是否经过了d的距离,只要没有路障阻止,他们会尽力到达目标道路。在到达目标道路之后,如果已经超过了游程d,则他们会被传送回出发建筑物(消失),如果没有,则同第1类行人,以R模式继续行走一个d的距离。利用第2类行人的B模式行走规律,可以使得行人在到达潜在目的地之前行走相当长的距离,这就是我们看到的受迫行人的第二种产生方法。
    对于这种类型的受迫行人,受迫行为的产生是由于潜在目的地,而不是目标建筑物附近的目标道路那样的明确目的地,所以不能穿越门房,而且由于潜在目标中心的周期性变化,同样的受迫路径也要以4次为一个周期。
    对于第3类行人而言,行走模式等同于第一类行人返回出发建筑物的行走模式,即模式C,此时如果根据算法I第一次计算产生的目标道路不可到达,则第三类行人则不会行动,对于娱乐学校表现为不产生行人。
    对于第4类行人而言,达到目的建筑物后还有返回的过程,行走模式等同于2次第3类行人,出发一次,返回一次。返回时候的行走路线和出发时候一样,而不是重新计算路线。对于采购物资的市场大妈,如果目的地不可达则立即返回。对于各种产地出发的推车人,如果目的地不可达则停留在原地,直到目的地变为可达为止。
    对于第5类行人而言,达到目的地是最终宿命,除非在半路被杀或者目的地被隔离于通向罗马的道路之外,否则他们会一直向目的地前进,无论有没有道路连接。
    概括的说
    对于第1类行人的一次出巡,行走模式可能为:
    1、A-R-C
    2、A-C
    3、R-C
    对于第2类行人,行走模式可能为:
    1、B-R-C
    2、B
    3、R-C
    对于第3类行人,行走模式为:
    C
    对于第4类行人,行走模式为:
    C-C
    对于第5类行人,行走模式为:
    D


    3楼2012-07-30 10:10
    收起回复
      2025-08-23 09:37:34
      广告
      不感兴趣
      开通SVIP免广告
      那个重要的表不好排版,发一个图片格式的



      4楼2012-07-30 10:14
      回复
        顶着,帮助很大呀!下午放小假,回家尝试一下。


        IP属地:广东来自手机贴吧5楼2012-09-16 08:22
        回复
          这个太强了。看到后来太阳穴噗噗跳~~


          IP属地:上海6楼2012-09-17 21:54
          回复
            上面说得复杂,其实很简单,可参看“我的和平8”存档,好像是群里存档PH-heping8-016,只看一轮医院行走路线,就全明白了,真相就这么简单。


            8楼2012-09-25 10:28
            回复
              看着头晕,能不能做一个各种职业行走规律和如何受迫呀,实用一点,我们也好提高提高啊


              IP属地:江西11楼2013-03-03 21:24
              收起回复
                第一类是啥


                IP属地:广西13楼2013-05-04 12:10
                收起回复
                  2025-08-23 09:31:34
                  广告
                  不感兴趣
                  开通SVIP免广告
                  跪了


                  IP属地:广西来自iPhone客户端14楼2013-07-25 15:06
                  回复
                    贴吧的老帖子终于慢慢放出来了,凯撒3游戏核心就是行人。行人的规律弄明白了,物品的补给消耗弄明白了,想怎么建设怎么建设....


                    15楼2019-12-16 00:13
                    回复