Skip to content

WangNian64/CarDispatch-Unity3D

Repository files navigation

CarDispatch-Unity3D

系统介绍

  本系统是一个演示程序,用于解决环形轨道上多个穿梭车在接收到取货和卸货任务后,如何保证多个小车的执行任务时间最短的问题。并且要考虑小车之间的碰撞、等待时间。

系统Ver 1.0

已完成

1、实现了一个仿真的环穿车和轨道模型
2、实现了在不考虑碰撞的前提下,针对多个任务,计算出最佳的任务分配方案并执行任务(其实是因为碰撞的代码还没有调试好)

接下来要实现

1、考虑碰撞对于任务总时间的计算
2、小车运行时同样加上碰撞检测(使用Unity中自带的碰撞检测)
3、解决可能存在的BUG
  1)小车连续执行任务会出Bug吗?
  2)小车在曲线上运行时,对应的累计角度angled需要实时保存到carMessage中,
否则当小车停止后再次接受任务,可能会出现angled初值错误的情况


系统Ver 2.0:

已完成

1、解决了1.0系统存在的逻辑和语法错误
2、添加了任务点根据小车颜色进行实时染色的功能,对于任务的动态分配更加直观
3、修改了之前对于小车碰撞(实际是当小车距离过近就是碰撞)的处理,这里采用表驱动方法,需要同时考虑两个小车的状态以及小车的前后位置关系,进行综合处理 4、编写了更多的测试用例,全部通过

接下来要实现

1、将核心算法剥离出来,不再依赖Unity
2、根据当前的小车轨道模型构造一个输入数据的大集合,用于构造测试用例,每次只需要从输入数据集合中拿出随机的数据,组合即可产生输入,然后丢入算法就能得一个测试数据,按此方法可产生大量的测试数据
3、将2中产生的大量测试数据放入合适的深度学习网络中,让其进行训练,理想情况下经过大量数据的训练,只要输入一组任务和小车数据,该网络即可快速产生最优的任务分配方案,通过和深度学习结合可以大大提高该全局算法的效率,提升物流企业的效率

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages