CN110262879B - 一种基于平衡探索与利用的蒙特卡洛树搜索方法 - Google Patents
一种基于平衡探索与利用的蒙特卡洛树搜索方法 Download PDFInfo
- Publication number
- CN110262879B CN110262879B CN201910414594.3A CN201910414594A CN110262879B CN 110262879 B CN110262879 B CN 110262879B CN 201910414594 A CN201910414594 A CN 201910414594A CN 110262879 B CN110262879 B CN 110262879B
- Authority
- CN
- China
- Prior art keywords
- node
- task
- value
- stage
- selecting
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9027—Trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
Abstract
本发明公开了一种基于平衡探索与利用的蒙特卡洛树搜索方法,包括:S01:选择阶段:从搜索树的根结点开始,根据节点的uct值向下寻找未扩展完全的节点;S02:扩展阶段:从就绪队列中随机选择一个任务,选择可以执行的处理器,以此作为扩展节点;S03:模拟阶段:从扩展节点开始,随机从就绪队列中选择任务,贪心地选择处理器,直到就绪队列中任务为空为止;S04:回传阶段:根据模拟阶段获得的makespan值,回传更新从根节点到新的扩展节点之间的所有节点;S05:重复上述步骤S01‑S04,直到满足迭代次数限制或时间限制,最终返回一个最小的makespan值。本发明实质性效果为:在实际的树搜索中加速寻找到较优的makespan值,使搜索树加速收敛,有效地降低了时间开销,提升了系统效率。
Description
技术领域
本发明属于任务调度系统技术领域,涉及一种基于平衡探索与利用的蒙特卡洛树搜索方法。
背景技术
在分布式异构计算系统中,各种计算资源与高速网络互连以支持计算密集型并行和分布式应用程序。高效的任务调度对于提高系统性能至关重要。如何将并行计算任务调度到异构计算系统中高效执行是系统研究领域的热点问题。面向大数据和人工智能等应用领域的并行计算任务通常以DAG(有向无环图)任务图模型表示任务间的数据依赖和并行关系。异构计算系统中的DAG任务调度是计算机体系结构研究的经典问题。DAG任务调度模型如下:
应用程序通常被描述为一个有向无环图(DAG),G=(V,E)。其中V={v1,v2,…,vn}表示任务节点的集合,E={e1,e2,…,en}表示边的集合。每个节点vi∈V表示一个具体的执行任务,每条边e(i,j)∈E表示两个任务之间的通信开销。计算开销矩阵W=V×P,其中V表示任务节点集合,P={p1,p2,…,pq}表示处理器集合,wi,j表示任务vi调度到处理器pj上的执行时间。ci,j作为边e(i,j)上的权值用来表示任务vi和任务vj之间的通信开销,当任务vi和任务vj分配在同一处理器上执行时,两者间通信开销为0。最早开始时间ESTi,j表示节点vi在处理器pj上可以开始执行的最早时间,最早完成时间EFTi,j表示任务vi在处理器pj上的最早完成时间,EFTi,j=ESTi,j+Wi,j。调度长度(makespan)表示DAG中最后一个任务的完成时间。
异构计算系统下的DAG任务调度是一个NP完全问题,并且在实际调度系统中更加复杂。许多启发式算法已经被提出,例如列表调度算法,基于遗传和进化的随机搜索算法,基于任务复制的算法等等。这些方法大多是启发式的,在不同应用场景下缺乏通用性。随着软硬件环境的更新迭代,传统的依赖专家经验设计的启发式调度方法很难普遍适用于新型的应用场景,导致传统调度方法在新应用和新硬件系统中不能充分发挥系统效率。
授权公告号CN106169188B的发明提供了一种基于蒙特卡洛树搜索的对象跟踪方法,属于计算机视觉、图形图像技术领域。首先通过背景建模和前景提取方法,获取视频监控范围内各个车辆的图像区域,通过初始化蒙特卡洛树和预测轨迹的起始节点,并获取一段时间的视频图像,然后通过多次的节点选择、扩展、模拟和相似度计算来生成和评价预测轨迹,并据此更新树节点权重,然后将树中具有最大节点权重和的路径作为目标轨迹,完成对车辆的定位,进而实现车辆跟踪。
基于蒙特卡洛树搜索的DAG任务调度方法已经被提出,但是蒙特卡洛树搜索方法无法平衡探索与利用的关系,从而导致无法快速找到较优的makespan值,进而搜索时间花销增加。
发明内容
针对现有技术无法平衡探索与利用的关系,从而导致无法快速找到较优的makespan值,进而导致搜索时间花销增加的问题,本发明提供了一种基于平衡探索与利用的蒙特卡洛树搜索方法,有效的平衡了探索与利用的关系,从而加速寻找到较优的makespan值,使搜索树加速收敛,有效地降低了时间开销,提升了系统效率。
以下是本发明的技术方案。
一种基于平衡探索与利用的蒙特卡洛树搜索方法,包括以下步骤:S01:选择阶段:从搜索树的根结点开始,根据节点的uct值向下寻找未扩展完全的节点;S02:扩展阶段:从就绪队列中随机选择一个任务,选择可以执行的处理器,以此作为扩展节点;S03:模拟阶段:从扩展节点开始,随机从就绪队列中选择任务,贪心地选择处理器,直到就绪队列中任务为空为止;S04:回传阶段:根据模拟阶段获得的makespan值,回传更新从根节点到新的扩展节点之间的所有节点;S05:重复上述步骤S01-S04,直到满足迭代次数限制或时间限制,最终返回一个最小的makespan值。
作为优选,所述步骤S01还包括:若树节点已经扩展完全,则根据UCT公式计算出最大的UCT值作为搜索路径中新的节点。
其中,c是一个常量参数,主要用于再平衡探索和利用间的权重;Q(v')表示当前任务节点的累积回报;N(v')表示当前任务节点的访问次数;N(v)表示当前任务节点的父亲节点的访问次数;V(s)表示当前节点在t次模拟时访问了s次的方差再加上其中Xt表示t次模拟时的平均Q(v')值,表示总的平均Q(v')值。
作为优选,所述步骤S02还包括:扩展节点时需对该节点进行初始化,设置Q(v')=0,N(v')=0。
作为优选,所述步骤S04包括:更新任务节点访问次数以及任务节点累计回报值。
作为优选,所述任务节点访问次数N(v')的更新方式为N(v')=N(v')+1,任务节点累计回报Q(v')的更新方式为:Q(v')=Q(v')+makespan。
本发明的实质性效果为:在实际的树搜索中加速寻找到较优的makespan值,使搜索树加速收敛,有效地降低了时间开销,提升了系统效率。
附图说明
图1为本发明实施例的流程图;
图中:1-选择阶段、2-扩展阶段、3-模拟阶段、4-回传阶段。
具体实施方式
以下结合说明书附图对本技术方案作进一步阐述。
实施例:
如图1所示的一种基于平衡探索与利用的蒙特卡洛树搜索的方法,包括如下步骤:
选择阶段1:从搜索树的根结点开始,根据节点的uct值向下寻找未扩展完全的节点。若树节点已经扩展完全,则根据UCT公式计算出最大的UCT值作为搜索路径中新的节点。UCT的计算按如下公式计算求出。
其中,c是一个常量参数,主要用于再平衡探索和利用间的权重;Q(v')表示当前任务节点的累积回报;N(v')表示当前任务节点的访问次数;N(v)表示当前任务节点的父亲节点的访问次数;V(s)表示当前节点在t次模拟时访问了s次的方差再加上其中Xt表示t次模拟时的平均Q(v')值,表示总的平均Q(v')值。
扩展阶段2:从就绪队列中随机选择一个任务,然后选择可以执行的处理器,以此作为扩展的新叶子节点。扩展到新的叶子节点时需对该节点进行初始化,设置Q(v')=0,N(v')=0。
模拟阶段3:从扩展节点开始,随机从就绪队列中选择任务,贪心地选择处理器,直到就绪队列中任务为空为止。
回传阶段4:根据模拟阶段获得的makespan值,回传更新从根节点到新的扩展节点之间的所有节点。任务节点访问次数的更新方式为N(v')=N(v')+1,任务节点累计回报的更新方式为:Q(v')=Q(v')+makespan。
最后重复执行步骤(1-4)直到满足迭代次数限制或时间限制。最终返回一个最小的makespan值。
应当说明的是,该具体实施例仅用于对技术方案的进一步阐述,不用于限定该技术方案的范围,任何基于此技术方案的修改、等同替换和改进等都应视为在本发明的保护范围内。
Claims (4)
1.一种基于平衡探索与利用的蒙特卡洛树搜索方法,其特征在于,包括以下步骤:
S01:选择阶段:从搜索树的根结点开始,根据节点的uct值向下寻找未扩展完全的节点;
S02:扩展阶段:从就绪队列中随机选择一个任务,选择可以执行的处理器,以此作为扩展节点;
S03:模拟阶段:从扩展节点开始,随机从就绪队列中选择任务,贪心地选择处理器,直到就绪队列中任务为空为止;
S04:回传阶段:根据模拟阶段获得的makespan值,回传更新从根节点到新的扩展节点之间的所有节点;
S05:重复上述步骤S01-S04,直到满足迭代次数限制或时间限制,最终返回一个最小的makespan值;
所述步骤S01还包括:若树节点已经扩展完全,则根据UCT公式计算出最大的UCT值作为搜索路径中新的节点;
所述UCT值的计算按如下公式计算求出,
2.根据权利要求1所述的一种基于平衡探索与利用的蒙特卡洛树搜索方法,其特征在于,所述步骤S02还包括:扩展节点时需对该节点进行初始化,设置Q(v')=0,N(v')=0。
3.根据权利要求1或2所述的一种基于平衡探索与利用的蒙特卡洛树搜索方法,其特征在于,所述步骤S04包括:更新任务节点访问次数以及任务节点累计回报值。
4.根据权利要求3所述的一种基于平衡探索与利用的蒙特卡洛树搜索方法,其特征在于,所述任务节点访问次数N(v')的更新方式为N(v')=N(v')+1,任务节点累计回报Q(v')的更新方式为:Q(v')=Q(v')+makespan。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910414594.3A CN110262879B (zh) | 2019-05-17 | 2019-05-17 | 一种基于平衡探索与利用的蒙特卡洛树搜索方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910414594.3A CN110262879B (zh) | 2019-05-17 | 2019-05-17 | 一种基于平衡探索与利用的蒙特卡洛树搜索方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110262879A CN110262879A (zh) | 2019-09-20 |
CN110262879B true CN110262879B (zh) | 2021-08-20 |
Family
ID=67913386
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910414594.3A Active CN110262879B (zh) | 2019-05-17 | 2019-05-17 | 一种基于平衡探索与利用的蒙特卡洛树搜索方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110262879B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112230659A (zh) * | 2020-10-16 | 2021-01-15 | 深圳裹动智驾科技有限公司 | 精准规划运动轨迹的方法、智能控制设备及自动驾驶车辆 |
CN112436971B (zh) * | 2020-11-25 | 2023-02-03 | 中国人民解放军军事科学院评估论证研究中心 | 基于蒙特卡洛树搜索的全域指控网络协作拓扑生成方法 |
CN113760553B (zh) * | 2021-09-09 | 2024-04-26 | 中山大学 | 一种基于蒙特卡洛树搜索的混部集群任务调度方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1799054A (zh) * | 2003-09-30 | 2006-07-05 | 东京毅力科创株式会社 | 用基本原理仿真辅助半导体制造过程的系统和方法 |
CN103208041A (zh) * | 2012-01-12 | 2013-07-17 | 国际商业机器公司 | 使用上下文信息进行蒙特卡罗规划的方法和系统 |
CN107122231A (zh) * | 2017-03-24 | 2017-09-01 | 国家电网公司 | 一种基于蒙特卡络模拟法的数据流调度优化方法 |
CN108304929A (zh) * | 2018-02-01 | 2018-07-20 | 北京理工大学 | 一种点格棋最佳招法的确定方法及系统 |
CN108810139A (zh) * | 2018-06-12 | 2018-11-13 | 电子科技大学 | 一种基于蒙特卡洛树搜索辅助的无线缓存方法 |
CN109002893A (zh) * | 2018-07-17 | 2018-12-14 | 东北大学 | 一种序贯同步时序蒙特卡洛搜索算法 |
CN109190278A (zh) * | 2018-09-17 | 2019-01-11 | 西安交通大学 | 一种基于蒙特卡洛树搜索的透平转子动叶片的排序方法 |
CN109522106A (zh) * | 2018-10-22 | 2019-03-26 | 广东工业大学 | 一种基于协同计算的风险价值模拟动态任务调度方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102256369B (zh) * | 2011-06-28 | 2014-05-21 | 武汉理工大学 | 基于能量和通信开销的无线传感器网格任务调度方法 |
US20130226535A1 (en) * | 2012-02-24 | 2013-08-29 | Jeh-Fu Tuan | Concurrent simulation system using graphic processing units (gpu) and method thereof |
US20160132787A1 (en) * | 2014-11-11 | 2016-05-12 | Massachusetts Institute Of Technology | Distributed, multi-model, self-learning platform for machine learning |
CN108595253A (zh) * | 2017-12-29 | 2018-09-28 | 哈尔滨航天恒星数据系统科技有限公司 | 基于原子节点业务集的时变路径QoS保障调度方法及装置 |
-
2019
- 2019-05-17 CN CN201910414594.3A patent/CN110262879B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1799054A (zh) * | 2003-09-30 | 2006-07-05 | 东京毅力科创株式会社 | 用基本原理仿真辅助半导体制造过程的系统和方法 |
CN103208041A (zh) * | 2012-01-12 | 2013-07-17 | 国际商业机器公司 | 使用上下文信息进行蒙特卡罗规划的方法和系统 |
CN107122231A (zh) * | 2017-03-24 | 2017-09-01 | 国家电网公司 | 一种基于蒙特卡络模拟法的数据流调度优化方法 |
CN108304929A (zh) * | 2018-02-01 | 2018-07-20 | 北京理工大学 | 一种点格棋最佳招法的确定方法及系统 |
CN108810139A (zh) * | 2018-06-12 | 2018-11-13 | 电子科技大学 | 一种基于蒙特卡洛树搜索辅助的无线缓存方法 |
CN109002893A (zh) * | 2018-07-17 | 2018-12-14 | 东北大学 | 一种序贯同步时序蒙特卡洛搜索算法 |
CN109190278A (zh) * | 2018-09-17 | 2019-01-11 | 西安交通大学 | 一种基于蒙特卡洛树搜索的透平转子动叶片的排序方法 |
CN109522106A (zh) * | 2018-10-22 | 2019-03-26 | 广东工业大学 | 一种基于协同计算的风险价值模拟动态任务调度方法 |
Non-Patent Citations (1)
Title |
---|
"基于马尔科夫理论的不确定性规划和感知问题研究";柏爱俊;《中国博士学位论文全文数据库 信息科技辑》;20150615(第06期);第I140-6页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110262879A (zh) | 2019-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110262879B (zh) | 一种基于平衡探索与利用的蒙特卡洛树搜索方法 | |
CN107193639B (zh) | 一种支持联合作战的多核并行仿真引擎系统 | |
CN105956021B (zh) | 一种适用于分布式机器学习的自动化任务并行的方法及其系统 | |
Almezeini et al. | Task scheduling in cloud computing using lion optimization algorithm | |
Izakian et al. | A novel particle swarm optimization approach for grid job scheduling | |
CN109857532B (zh) | 基于蒙特卡洛树搜索的dag任务调度方法 | |
CN113627871B (zh) | 一种基于多目标粒子群算法的工作流调度方法、系统及存储介质 | |
CN114281104B (zh) | 一种基于改进蚁群算法的多无人机协同调控方法 | |
CN104636204A (zh) | 一种任务调度方法与装置 | |
CN111209095B (zh) | 一种dag并行任务调度中基于树搜索的剪枝方法 | |
CN110688219A (zh) | 基于反向混沌布谷鸟搜索的自适应权重负载均衡算法 | |
CN110609736B (zh) | 一种云环境下截止期约束的科学工作流调度方法 | |
CN113238873B (zh) | 一种用于航天器资源优化配置的方法 | |
CN114625493B (zh) | 基于改进天牛须智能方法的Kubernetes集群资源调度方法 | |
CN110928253B (zh) | 自动制造系统的动态加权启发式调度方法 | |
CN114327876A (zh) | 一种无人机辅助移动边缘计算的任务卸载方法和装置 | |
Rahmani et al. | A file group data replication algorithm for data grids | |
CN114090239A (zh) | 一种基于模型的强化学习的边缘资源调度方法和装置 | |
CN111882234B (zh) | 科学工作流任务管理方法及装置 | |
Nasonov et al. | Metaheuristic coevolution workflow scheduling in cloud environment | |
CN113312329B (zh) | 数据文件的调度方法、装置及设备 | |
CN116450308A (zh) | 一种基于多策略学习的自适应dag任务调度方法 | |
Mohsin et al. | An Integrated Grey Wolf Optimizer with Nelder-Mead Method for Workflow Scheduling Problem | |
CN116991878A (zh) | 基于Q-learning生成分布式执行计划的方法及系统 | |
Talha et al. | Check for updates An Enhanced Artificial Hummingbird Algorithm for Workflow Scheduling in Cloud |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |