another challenge实现多任务电梯调度优化

inevitable86035 1 0 zip 2024-10-29 02:10:12

另一个挑战介绍

要执行该程序,请运行python main.py最新版本位于根目录中,每个名为iterationX的文件夹表示旧版本。

代码结构

  • main.py:模拟电梯和控制器运行的主程序

  • elevator.py:电梯类,代表电梯的运作逻辑

  • controller.py:控制器类,管理建筑内所有电梯

  • task.py:任务类,表示一个人想从当前楼层前往目标楼层的请求

优化任务

  1. 多任务管理:让电梯承担多项任务,并统一管理getter和setter。

  2. 多线程调度:尝试引入多线程以实现更高效的任务分配。

  3. 效率指标:设置一个指标来评估电梯的效率。

  4. 模拟测试:运行模拟程序测试电梯在不同任务分布下的表现。

  5. 任务过期处理:让任务在一定时间后过期(模拟人们变得不耐烦而选择走路)。

第二次迭代

  • 多任务分配:每部电梯在每一步可承担多项任务(最多10项),每部电梯最初执行单项任务。

  • 沿途任务停靠:电梯会在沿途接取同方向任务,优先响应空队列楼层的请求。

用户评论
请输入评论内容
评分:
暂无评论