ROS2多线程执行器上DAG任务的优先级分配方法  被引量:2

Priority Assignment Method of DAG Task on ROS2 Multithreaded Executor

在线阅读下载全文

作  者:纪东 魏阳杰 李宇溪 王义 Ji Dong;Wei Yangjie;Li Yuxi;Wang Yi(School of Computer Science and Engineering,Northeastern University,Shenyang 110819;Key Laboratory of Intelligent Computing in Medical Image(Northeastern University),Ministry of Education,Shenyang 110819)

机构地区:[1]东北大学计算机科学与工程学院,沈阳110819 [2]医学影像智能计算教育部重点实验室(东北大学),沈阳110819

出  处:《计算机研究与发展》2023年第5期1086-1098,共13页Journal of Computer Research and Development

基  金:国家自然科学基金项目(61973059);中央高校基本科研业务费专项资金(N2116006)。

摘  要:随着机器人操作系统(robot operating system, ROS)的日益普及,系统也变得更加复杂,这类系统的计算平台正逐渐转变为多核心平台.在ROS中,任务执行的顺序取决于底层任务调度策略和分配给任务的优先级,而最大限度地缩短所有任务的执行时间是并行系统任务调度的一个重要目标.受强化学习在解决各种组合优化问题的最新研究成果的启发,在考虑ROS2多线程执行器的调度机制和执行约束的前提下,提出了一种基于强化学习的任务优先级分配方法,该方法提取了基于有向无环图形式表示的任务集的时间和结构特征,通过策略梯度和蒙特卡洛树搜索(Monte Carlo tree search, MCTS)方法有效地学习ROS2调度策略并给出合理的优先级设置方案,最终达到最小化并行任务的最大完工时间的目的.通过模拟平台环境下随机生成的任务图以评估所提方法,结果表明所提方法明显优于基准方法.作为一种离线分析方法,所提方法可以很容易地扩展到复杂的ROS中,在可接受的时间内找到接近最优的解决方案.With the growing popularity of the robot operating system(ROS),these systems are becoming increasingly complex,and the computing platforms they run on are transforming into multi-core platforms.In ROS,the order of task execution is determined by the underlying task scheduling strategy and the priorities assigned to the tasks.Minimizing the execution time of all tasks is a crucial goal in task scheduling for parallel systems.To address this challenge,we propose a reinforcement learning-based task priority assignment method,inspired by recent achievements in using reinforcement learning for handling various combinatorial optimization problems and considering the scheduling mechanisms and execution constraints of ROS2 multi-threaded executors.This method extracts the temporal and structural features of the task set,which is represented in the form of a directed acyclic graph(DAG),and efficiently learns the ROS2 scheduling policy through a combination of policy gradient and Monte Carlo tree search(MCTS)methods,providing a reasonable priority setting scheme.The goal of minimizing the completion time of DAG parallel tasks is achieved through this method.The proposed method is evaluated by simulating randomly generated task graphs in a simulation platform environment.The results show that it outperforms the benchmark methods.As an off-line analysis method,the proposed method can be easily extended to more complex ROS and can find a near-optimal solution in an acceptable amount of time.

关 键 词:机器人操作系统 强化学习 DAG任务 优先级分配 蒙特卡洛树搜索 

分 类 号:TP399[自动化与计算机技术—计算机应用技术]

 

参考文献:

正在载入数据...

 

二级参考文献:

正在载入数据...

 

耦合文献:

正在载入数据...

 

引证文献:

正在载入数据...

 

二级引证文献:

正在载入数据...

 

同被引文献:

正在载入数据...

 

相关期刊文献:

正在载入数据...

相关的主题
相关的作者对象
相关的机构对象