咱们书接上文,上回书说道了一个30层办公楼只有一个电梯的情况和各种遐想,这次我要说的是实际生活中电梯的分析与优化的空间。 现在的电梯调度算法基本都是有专利的,我只能通过每天的细心观察来探寻一二了,我们办公楼电梯的调度算法可能不是最好用的,不过对于其设计思想的的分析才是最珍贵的。 图1 图2 图3 这次咱们先分析一个实际的例子,就是我们公司办公楼的电梯,如上图所示,图1、图2图、3分别是我们公司办公楼的电梯,电梯的按按键和电梯选中时按键的样子。 我们的办公楼称之为K楼,我们的办公楼也假设为30层另加上一个地下一层,我们办公楼有六个电梯,分别在卫生间的两侧,我们一侧的电梯数为三,我们分别称一边的电梯口为A、B、C口,因为两侧的算法一样,所以先分析一侧。 下面就跟大家讨论一下我的研究成果。 一、K楼的电梯分析 这里有一个核心的要求是一个楼层只能有一个电梯停下(为了防止资源浪费)。 产品 六个电梯(外部构成有上按键、下按键、数码显示屏;内部构成有楼层按键、开门按键、关门按键,语音喇叭) 人物 整栋楼的人员以及外面的访客。 场景 上班时间有用户乘坐电梯; 早午晚饭有用户乘坐电梯; 根据大楼比较重要的楼层自定义停泊区的情况(当然还有各种其他情况,一般这三种情况比较多); 外来人员乘坐电梯。 电梯使用分析 (1)当整栋楼只有一个用户按下按键的时候 当用户按下向上的按键的时候,只有向上运行的电梯且此时向上运行的电梯比用户所在楼层低,或者A、B、C电梯口对应的电梯(未运行状态)离用户所在的楼层近的电梯会响应。这里哪个电梯离用户进则优先级高,就会响应用户按键操作。 当用户按下向下的按键的时候,只有向下运行的电梯且此时向下运行的电梯比用户所在楼层高,或者A、B、C电梯口对应的电梯(未运行状态)离用户所在的楼层近的电梯会响应。这里仍然是哪个电梯离用户进则优先级高,就会响应用户按键操作。 这里还有一种情况要判断,就是用户按下的按键是向上按键还是向下按键,如果两个未响应的电梯离用户所在楼层距离相同,且比另一个运行的电梯距离近,那么如果用户按下的按键是向上按键,则用户所在楼层下面的未响应的电梯会响应用户的按键操作。如果用户按下的按键是向下按键,则用户所在的楼层上面的未响应的电梯会响应用户的按键操作。 相信如果开发同学看到这里应该心里已经有了不止一套算法了。 嗯,我一会将会给出图示,客官一会可以参看图对应着理解哦。(这里的响应指的是:如果某个楼层按键按下后电梯响应了,那么这个电梯到达那个楼层就会停下来开门,下面我都会用到"响应"这个词的) (2)当整栋楼有多个用户按下按键的时候 当一个楼层有人按下电梯按键的时候,遵循向上运行的电梯只响应电梯所在楼层以上的楼层按下按键的响应,向下运行的电梯只响应电梯所在的楼层以下的楼层按下按键的响应。如果有未运行的电梯也要判断一下哪个离用户按下的按键近,同样的,哪个电梯离用户近则哪个电梯会响应用户的按键操作。 这里也要判断用户按下的按键是向上按键还是向下按键,如果两个未响应的电梯离用户所在楼层距离相同且比另一个运行的电梯距离近,那么如果用户按下的按键是向上按键,则用户所在楼层下面的未响应的电梯会响应用户的按键操作。如果用户按下的按键是向下按键,则用户所在的楼层上面的未响应的电梯会响应用户的按键操作。 (3)电梯载重上限问题 在上面的两种情况下还有一种情况不得不考虑,就是当电梯到达载重的上限的时候,怎么判断哪层要停,哪层不要停。我们K楼是这样判断的,当电梯的载重到达上限则外面的一切按键都不响应,只响应电梯里面按键按下的楼层,直到电梯的载重在上限以下的时候才会响应电梯外面按键按下的操作。 (还有我们电梯里的开门按键和关门按键是安慰性质的,就是按下去基本没什么反馈) (4)关于K楼的某些场景化分析 在这里我要说一下我们K楼电梯的一个彩蛋,就是我在《从产品角度分析,电梯的各种可能性(上)》基于场景分析里面提到了一种场景就是——早中晚饭的时间段电梯的逻辑会有些变化。 我们k楼的运行方式和我的想法不谋而合,就是当早午晚饭时间,当电梯空闲的时候自动运行到最高层。而且,电梯向上运行的时候,会直接响应用户中按下按键对应楼层最高的那个楼层的按键操作,直接运行到那,然后才一层层向下运行。这样保证了用户能最快的时间内到达一楼,满足了大多数用户的需求。 (5)地下一层问题 我们这C口有一个-1层,是可以到达地下一层的,当然只有一个口通到-1层是因为我们一楼有个直接能下到地下一层的楼梯,在一个较显眼的位置,所以就只有一个电梯口有-1层。(这一边的电梯在早中晚饭的时候会比两个快到-1层,亲测。) 流程图分析 图片有点不清晰,如果有想要原图的可以去评论区找我要哦。 小结 本篇主要讲了我们K楼的电梯分析,细心的看官应该看出了很多用户痛点与电梯的待优化空间,这里先卖个关子,本篇是要用来引出优化分析的,算是抛砖引玉吧。 今天就先这样,我下面还有很多东西要分析,就不占用一篇来讲了,这篇也算是一个小结吧,下篇我将会针对用户痛点做优化分析,敬请期待吧。 相关阅读 从产品角度分析,电梯的各种可能性(上)