虽然不懂计算机,我们也可以看看运算量有多大:
大温地区一共有多少个公交站?夸张一点,按照5位数的极限,那就是 100,000 个
可是大温地区一共只有 3 个 zone,在计算芯片里面运算匹配,最多也就运算 300,000 次(这部分完全可以上车拍卡的时候算好,然后把所在zone信息存好)
当然,到达的目的地还需要计算芯片再来运算匹配一次,也算 300,000 次吧
所以最多经过 600,000次运算,就能肯定确认出发地和目的地了,然后再算价格,无非就是 3 个 zone 之间的排列组合,最多也就 9 次运算
所以最坏的情况,600,009 次 5位数以内的匹配运算,请懂计算机的来说说普通的芯片要算多长时间?
个人猜想:十进制的99999对应的二进制是11000011010011111,共17位,就算18位吧。18位乘以600,009次,等于10,800,162位次,相当于约10milliion 位次。普通手机的CPU芯片约1GHz,这样算来岂不是要 10 毫秒,也就是 0.01秒的时间?
运算从来都不是技术瓶颈. 2014年translink的报告说了问题出现在读卡器上.
按照设计, 读卡器读卡的响应时间应该在0.3秒, 而实际测试响应时间是其十几二十倍. 而且还存在很高的漏拍现象.
就像一个就算是配置当前最快CPU的电脑, 其外设使用的是USB2.0接口, 进行数据处理读取存回的速度依然不会快.
而这个问题涉及到读卡器, 卡片等诸多外设, 要找出问题并提高速度并不那么容易.
估计translink和cubic的人也都非常意外, 为何在芝加哥运行好好的系统, 到温哥华这个规模小得多的城市居然就有问题了呢.
目前的问题主要发生在bline99等几个高客流量的线路, 普通线路因为没那么拥挤, 问题就相对没那么严重, 在可用范围.
在分段计费后, zone的概念就不存在了, 以前跨区的相邻站需要多付1.25, 以后就不用了. 正是很多人诟病分
区计费不合理, 才搞分段计费.
但下车拍卡这个也存在漏洞,比如, 有人提前拍卡, 但不下车. 就和现在有人坐19路只买一区票而跨区一样, 都是完全要靠乘客自己来自觉了.