1. 首页
  2. 考试认证
  3. 其它
  4. multi tasking elevator simulation电梯多任务模拟

multi tasking elevator simulation电梯多任务模拟

上传者: 2024-10-29 02:43:12上传 ZIP文件 9.17KB 热度 10次

另一个挑战介绍

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

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

  • elevator.py: 电梯类,代表电梯的属性和行为

  • controller.py: 控制器类,负责管理建筑内所有电梯的运作

  • task.py: 代表乘客从当前楼层到达目标楼层的任务

实现要求:

  1. 任务管理与调度:让电梯承担多项任务,统一gettersetter方法。

  2. 多线程调度:通过多线程处理任务请求,优化调度性能。

  3. 效率指标:设计一个指标来反映电梯的效率,以便对模拟效果进行量化。

模拟和测试:

  • 任务分布:尝试不同的任务到达分布,观察电梯的响应。

  • 任务过期:让任务在一定时间后过期(例如,乘客不耐烦选择走路),提升模拟的现实感。

迭代二:电梯多任务支持

在第二次迭代中,每部电梯能够承担多个任务。

  • 假设:每台电梯最多可以同时处理10项任务。

  • 调度原则:每部电梯在沿途会停在任务队列不为空的楼层,按同一方向接收任务,逐步完成所有任务请求。

实现方法

采用多线程技术进行任务调度,优化资源利用率,让电梯根据任务负荷合理安排停靠和任务承接,从而实现电梯高效运行。

下载地址
用户评论