调度系统核心算法第一篇-交通管制


前言

我自己感觉之前对于算法理论的分析有点太凑合,今天我就彻底分析下我的交通管制是如何做的。

并且把他作为一个单独的篇章,后面关于寻路算法,解锁算法,移车算法等都单独讲一遍

一、交通管制是什么?

我做一个比喻,交通管制就像是一个十字路口,同时有多辆车要经过这个十字路口,这时候开车的人要看红绿灯决定是通行还是停下来,其实我的交通管制理论就是根据思考开车经过红绿灯实现的。

交通管制的理论其实就是我平时在开车的时候摸索出来的。

二、交通管制逻辑分析

1.驾驶员

要实现交通管制就需要车能看的懂红绿灯,谁能看懂红绿灯?肯定是驾驶员。所以这里我引入了一个概念叫驾驶员

驾驶员是什么?驾驶员是一个对象。

驾驶员有哪些功能,有四个主要方法:前进,后退,停止,观察(观察的就是红绿灯)。

2.交通指挥员(红绿灯)

车既然有了驾驶员,驾驶员有一个观察的方法,那么他观察的是什么东西哪?观察的就是红绿灯或者说是交通指挥员 下面简称指挥员

指挥员是一个对象,同时也是事件的创建者,所有的车在进入这篇场地后都需要注册指挥员这个事件,这样指挥员就知道了有多少车每辆车在什么位置。
现在所有的车辆都归指挥员管理了,当车要运动的时候,就需要先告诉指挥员说,我要去1009这个位置,指挥员会去根据你当前的位置到1009的位置所用的时间,是否会跟别的车发生碰撞,是否会死锁等等进行判断,如果判定你可以去,就返回给你1009,如果判定你最多走到1004就需要停止,就返回你1004,如果判断你往前走一步就会出问题,就会让你原地等待。

总结

编程的一切都来源于现实世界,这套理论是我通过十字路口和红绿灯总结出来的,在实际测试中效果是不错的。

  • 0
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值