0%

关于电梯算法的小思考

电梯的算法

  近日乘坐家里的电梯时,忽然想研究一下电梯的运作算法。根据知乎上的大佬分析,每家电梯公司的算法不同。例如知乎用户董Charles的答案说过,电梯的运行方向变更一次,则钢丝绳折弯次数+1。控制上不考虑方向的话,长久来说会影响钢丝绳寿命。

  这里我就不考虑损耗、节能问题,单纯地就用户需求来分析我家的电梯。

  1. (超过一定时间)不运作的电梯停靠1楼。
  2. 当电梯外有乘客时。
    1. 若电梯内没有乘客:
      1. 电梯向乘客所在楼层上升或下降。如果在途中又有外部乘客按下相同方向,则停靠;反之则不停。
    2. 若电梯内有乘客:
      1. 当有外部乘客按下同方向的按钮,电梯停下,载客。
      2. 反之电梯不停靠。

  以我浅显的认知来说,电梯的基础算法如上所述。在外部乘客按下按钮时,两部电梯其中近的一部会优先工作。一些大型的写字楼会实行不一样的电梯法则,例如单号、双号停靠的电梯。以及在上、下班高峰期时,只接受向上、向下的运行方向。算法会根据需求改变。