Ingress中的几何:从多重控制场说开来去

Posted on

多重控制场(nested field)是Ingress中由于field计算方式导致的一个奇妙的bug,并且这种link的方法每过一两个月就要重新被人在Ingress玩家社群里面提出来一次,然后得到好多的share和+1,话说老人带新人出去刷的时候都不告诉新人的么…… =。=

触发的条件是:

如题图,最后一条一定要从顶点link去中心,才能得到4个field的AP。



下面给大家转载一篇某复旦大触的paper,论证了

被凸n边形link包围的m个portal,最多且必然可连出3m+n-2个field

ingress最大化field构造研究 - 付晨昱

被凸n边形link包围的m个portal,最多且必然可连出3m+n-2个field

这句听起来有点拗口的话,实际上回答了一个问题:当地图上有乱七八糟一堆portal时

a

最多能从中连出多少个field?计算方法是:

  1. 先将最外面一圈的点连起来,数一下有多少个顶点(n)

b

2. 数一下内部围住了多少个点(m)

c

  1. 代入公式

其实相同的结论这里已经得出来了,不过是英文的,而且没有证明过程,所以下面就试着证明一下吧。
一个三角形内部有一个点时可以做4个field,这个相信大家已经很熟悉了吧

d

当三角形内有2个点时,可以任意选取一个点将大三角形分成3个小三角形,则剩下的一个点必然落在某个小三角形内,从而可以再用以上的方法分成3个三角形。

e
那么当三角形内有若干点的时候,可以反复用以上的方法划分,也就是说三角形内每有一个点,可以多做出3个field。

e1

用这种方法可以保证连出最多的field,因为他实际是一个Appolonian Network (wiki),其特性之一就是拥有最多的内部三角形数。并且点的分布方式和选择顺序不会影响最终形成的三角形总数——这也很容易理解,因为点不管落在哪个三角形内,效果都是将其一分为三

但是ingress中要建立重复区域实际是有一些限制的,比如不能从field中间往外建link,并且建立link的先后顺序有一定要求,是不是对于任意分布的点一定能建成理论上限的field数呢?答案是肯定的,下面给出一种必然可行的策略:

  1. 随便连一条大三角形的底边

f

2. 在三角形内部选一个点与底边连成三角形,使构成的三角形内没有其他点(一定做得到)
g

3.以新连成的边为底边,在他们各自的小三角形内重复做以上事情
h

4. 全部做好以后应该是这样的
i

5. 然后从顶点到每个小三角形的顶点来一发(注意顺序)
j

实际情况下多数其实没这么复杂,只要稍微注意一下做link的顺序就行了。
以上讨论了三角形内部的情况,对于n边形来说,总是可以通过连接顶点将其分割为n-2个三角形

k
对于任意分布的点来说,这个多边形是唯一的,并且一定是凸多边形;分割的方法同样不影响最终形成的field数,因为多边形内部的任意点必然最终落在某一个三角形中。所以内部的点(m)能够做出的field数为3m,加上分割多边形形成的n-2个field,最终能够做出的field数为3m+n-2。

几个推论:

  1. 多边形内部的点每个价值为3个field,边上的点每个价值 为1个field
  2. n=3时就是三角形,是这个结论的一个特例,能够在portal数相同的情况下做出最多的field
  3. 完美连接的情况下,用掉的key数量为 多边形的边数+分割多边形的link数+内部点数*3=n+(n-3)+3m=3m+2n-3
  4. 当边数很少,内部点数很多的时候,field数与link数之比趋近于1,也就是每一把key几乎都能做出一个field

那么就请大家多多利用以上的结论,利用有限的portal刷出更多的ap吧

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.