有人注意到市民似乎不会呼叫最近的服务设施吗?解释一下刚刚的发现
我在原本的A区有各式各样的设施(EX:消防局),后来新建了一个B区,也放了消防局
但A区跟B区还没用道路连接起来B区就有房屋失火了,此时我看B的消防局还有很多空车
但B消防局并没有派出车辆就让房子烧毁了,他们在附近而已
后来A区跟B区连接起来了,又有房子失火了,此时A区消防局有派车来,火也顺利扑灭了
,但比较近的B区消防局反而派车去支援A区,A区也有空车阿@@
问题:房子失火时似乎不会呼叫最近的消防局给予服务,似乎是在某个范围内随机呼叫的
,也没有检验道路是否有通,这样在交通顺畅的情况下问题不大,但若以刚刚的情况下,
万一A区塞车的话,B区又要有房子烧毁了,而该房子附近明明就有消防局
以下是假设性问题,字多,可直接end:
若我观察到的不是偶然而是经常发生的话,我会认为是一个非常小的bug,虽然我们还是
要将设施分散建设,防止该设施群产生过多的车流影响彼此,但当我们希望某个设施
尽量服务附近区域时,就会有问题了
解法也不难:
在呼叫服务的时候从最近的设施开始呼叫就可以了,也许有人会认为这样会消耗太多运
算资源,但我们可以注意到,建造服务设施时会有绿绿的服务范围,这个服务范围根据
官方的说法是有将道路远近方向大小考虑进去的,这个绿绿的服务范围运作起来是很顺
畅的,显然算法不错,不会增加太多运算量,事实上以我学算法的经验来看,在一
个graph里面找最近的neighbor的确也是很快的
大家有发现吗?还是只有我而已XD