1 / 25

自主望远镜调度算法探索

自主望远镜调度算法探索. 李建 lijian@lamost.org 2011-11-12 贵阳. Outline. 关于调度系统. 调度系统是自主望远镜的重要部分 决定“自主化的程度” 观测任务安排;资源分配均衡 观测任务调度过程中,最小调度单元称为作业( job ). 影响望远镜调度的因素. 外部因素 内部因素. 影响望远镜调度的因素. 外因:观测时影响观测质量的客观因素 天气:雨、雪、雾、风 角度:纬度越高,穿过大气层的路径越小,大气层产生的散射和变形越小,观测结果最佳 月相 ……. 影响望远镜调度的因素.

Télécharger la présentation

自主望远镜调度算法探索

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 自主望远镜调度算法探索 李建 lijian@lamost.org 2011-11-12 贵阳

  2. Outline

  3. 关于调度系统 • 调度系统是自主望远镜的重要部分 • 决定“自主化的程度” • 观测任务安排;资源分配均衡 • 观测任务调度过程中,最小调度单元称为作业(job)

  4. 影响望远镜调度的因素 • 外部因素 • 内部因素

  5. 影响望远镜调度的因素 • 外因:观测时影响观测质量的客观因素 • 天气:雨、雪、雾、风 • 角度:纬度越高,穿过大气层的路径越小,大气层产生的散射和变形越小,观测结果最佳 • 月相 • ……

  6. 影响望远镜调度的因素 • 内因:影响作业队列顺序的内部因素主要是“效率”和“政策” • “效率”因素:优先处理天体目标在相同天区的观测任务,合并相似的观测任务,只执行一次观测计划,以减少望远镜的回转时间 • “政策”因素:包括允许管理员绕过作业队列,并优先得到望远镜的观测响应

  7. 调度方法分类 • 四个不同的调度类型( Thomas Granzer 2004): • 1)queue scheduling 队列调度 • 每个观测阶段为一个jobs清单,由robot顺序执行。 • 不可预知的延迟(如聚焦时间、快速定向时间、天气因素)就会使jobs丢失观测。 • 不能实时插入jobs,不能改写剩余的调度队列。

  8. 调度方法分类 • 2)Critical Path Scheduling 关键路径调度 • 这是一个尊重所有job依赖关系的调度方式,确保最少的依赖的job先调度,多依赖的job后调度。天文观测很少有这样的依赖关系,很少使用这种方法,这不是一个合适的调度方法。 • 3)Optimal Scheduling 优化调度 • 这种方法需要大量的计算,来建立一个合适的时间表,以创造一个最好的调度方式。但是,预先算好的调度表还是不能对不可预知的变化作出反应。

  9. 调度方法分类 • 4)Dispatch Scheduling 分配调度 • 这种类型的调度器为每个作业(job)计算出一个分数(score),放在调度池(pool)中,每次选择分数最高的执行。 • 这种方法解决了不可预知的因素所带来的影响,因为调度不是固定的。 • 然而,由于调度的不固定,预知robot下一步要做什么是很困难的。而且需要一个能够改变优先级的评分算法(scoring algorithm)。

  10. 调度方法分类 • Liverpool Telescope、STELLA、BRT项目采取了“分配调度”的方法 • Hubble telescope 由于有一个更好的可以预见的环境,使用了“优化调度”的方法 • 改进的调度方式: • 环状队列,双队列,多种调度方式结合

  11. 分配调度程序需求 • 分配调度程序应满足以下要求: • 所有等待处理的job,必须进行每隔几分钟进行评估、定分 • 每个job必须结合多种因素(factor)的评价、计算出唯一的一个分数 • 因素有加权值,反应因素的重要程度。允许管理员控制每个因素的加权值 • 软件以模块化的方式来编写,这样在新增因素、删除旧的因素时scheduler能及时响应

  12. 分配调度程序需求 • 当robot要求job时,scheduler不能有延迟-job必须立刻准备好 • 在调度池内,设置为immediate标志的job,必须优先考虑分配望远镜时间,不论其分数有多少 • scheduler应该准许手动模式加入特殊事件,系统管理员将分配job的观测时间。

  13. 需要进行评分的因素(Score Factors) • Score Factors • 一些被确定为影响job的总体评分的因素:• job目标达到天空中最高点的时刻• job目标落入地平的时刻• job间的相对距离(是否可以和其它观测任务合并)• job预先设置的优先级值• job要求的观测时间• job一直在等待观测的时间量

  14. Score Factor的计算公式

  15. Score Factor的计算公式

  16. Window merit(观测窗口因素值)

  17. 一个计算score的示例

  18. 布尔测试 • 对一个job执行scheduling算法以前,可以执行一系列布尔测试,可以减少计算时间 • 计算出目标的高度和方位角,是否满足? • Job是否过了观测时间? • 目标是否符合相机的操作范围? • 是否以正常(非特殊事件)的模式工作?

  19. 分配调度流程示例 上一次观测任务完成 选取最高分的任务执行 Y 从request pool提取一条任务请求 完成所有请求? N N Scheduler 通过bool测试? 分数加权求和 Y 第1个评分模块 第2个评分模块 第N个评分模块

  20. 小结 • 考虑到上述所有因素,调度过程是一项复杂的任务。完全考虑到所有的因素,和它们之间的冲突是不实际的; • Scheduler是保证资源公平的分配一个最优化的解决方案; • 是各方面因素的妥协的结果。 • 普通望远镜,由人来决策 • 自主望远镜,由计算机“决策”

  21. 一个实际的实现的例子 • BOOTES 4 • RTS2 (Remote Telescope System, 2nd Version) • 采用遗传算法最优化选取 • 分布式调度

  22. Thank You !

More Related