CN112417748A - 一种调度自动驾驶仿真任务的方法、系统、设备及介质 - Google Patents
一种调度自动驾驶仿真任务的方法、系统、设备及介质 Download PDFInfo
- Publication number
- CN112417748A CN112417748A CN202011307166.XA CN202011307166A CN112417748A CN 112417748 A CN112417748 A CN 112417748A CN 202011307166 A CN202011307166 A CN 202011307166A CN 112417748 A CN112417748 A CN 112417748A
- Authority
- CN
- China
- Prior art keywords
- value
- current
- task
- current evaluation
- historical
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000004088 simulation Methods 0.000 title claims abstract description 52
- 238000011156 evaluation Methods 0.000 claims abstract description 99
- 239000002245 particle Substances 0.000 claims abstract description 67
- 230000004044 response Effects 0.000 claims abstract description 23
- 238000004364 calculation method Methods 0.000 claims abstract description 15
- 238000003860 storage Methods 0.000 claims abstract description 14
- 238000009826 distribution Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 6
- 238000005457 optimization Methods 0.000 abstract description 6
- 230000006870 function Effects 0.000 description 15
- 238000013515 script Methods 0.000 description 12
- 238000004422 calculation algorithm Methods 0.000 description 8
- 238000012360 testing method Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000006073 displacement reaction Methods 0.000 description 2
- 230000013016 learning Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000002068 genetic effect Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 230000009326 social learning Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/25—Design optimisation, verification or simulation using particle-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/06—Multi-objective optimisation, e.g. Pareto optimisation using simulated annealing [SA], ant colony algorithms or genetic algorithms [GA]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种调度自动驾驶仿真任务的方法、系统、设备和存储介质,方法包括:计算在当前粒子下执行所有任务的当前评价值,并判断当前评价值是否小于历史最优值;响应于当前评价值小于历史最优值,用当前评价值更新历史最优值,并判断当前评价值是否小于总体历史最优值;响应于当前评价值小于总体历史最优值,用当前评价值更新总体历史最优值;基于历史最优值和总体历史最优值更新当前粒子的位置和速度,并返回再次计算当前评价值直到达到最大计算次数;以及根据总体历史最优值确定每个任务分配的节点,并根据结果对任务进行分配。本发明通过使资源的利用率最高及成本最低,并基于粒子群算法对min‑max函数进行求解,来提高资源的执行效率。
Description
技术领域
本发明涉及自动驾驶领域,更具体地,特别是指一种调度自动驾驶仿真任务的方法、系统、计算机设备及可读介质。
背景技术
对于自动驾驶来说,仿真测试是技术验证、支撑系统培训、测试和验证的基础技术,按照理论计算,要想对自动驾驶汽车的安全性进行验证并最终实现量产,需要积累数百亿英里的自动驾驶测试里程,这需要企业在未来10年内部署至少300万辆自动驾驶车辆进行里程测试,这对任何一家整车制造企业、大型互联网公司和新兴造车势力来说都是不现实的,所以需要自动驾驶仿真来支持庞大的里程测试及百万级场景测试。而大规模的仿真测试消耗的资源和时间非常大,如何合理地利用和分配资源,使仿真任务消耗的时间缩短到最小,对于大规模仿真测试具有极高的现实意义。
对于任务调度的常用算法包括先来先服务法、轮转法、短作业优先法、遗传算法等,但是目前自动驾驶仿真任务还大多处在单机单任务服务状态,随着自动驾驶的发展,大规模仿真任务必不可少,而直接用于仿真任务调度的方法很少。目前缺少专门应用于自动驾驶大规模仿真任务的调度方法,一些先来先服务法、轮转法、短作业优先法等算法较为简单,对于大规模仿真任务的调度不能最大化提高资源的利用效率。
发明内容
有鉴于此,本发明实施例的目的在于提出一种调度自动驾驶仿真任务的方法、系统、计算机设备及计算机可读存储介质,通过任务调度模型,即min-max函数,考虑到影响仿真任务所需计算资源的多种因素,优化目标使资源的利用率最高及成本最低,并基于粒子群算法对min-max函数进行求解,来提高资源的执行效率,最后通过自动化脚本将各任务分配给各节点的启动脚本中,全部实现自动化,节省人力,提高效率。
基于上述目的,本发明实施例的一方面提供了一种调度自动驾驶仿真任务的方法,包括如下步骤:计算在当前粒子下执行所有任务的当前评价值,并判断所述当前评价值是否小于历史最优值;响应于所述当前评价值小于历史最优值,用所述当前评价值更新所述历史最优值,并判断所述当前评价值是否小于总体历史最优值;响应于所述当前评价值小于总体历史最优值,用所述当前评价值更新所述总体历史最优值;基于所述历史最优值和所述总体历史最优值更新当前粒子的位置和速度,并返回再次计算当前评价值直到达到最大计算次数;以及根据所述总体历史最优值确定每个任务分配的节点,并根据结果对任务进行分配。
在一些实施方式中,所述计算在当前粒子下执行所有任务的当前评价值包括:按照当前粒子对应的排列方式将所有任务分配到所有节点中,并根据当前的分配方式计算当前评价值。
在一些实施方式中,所述根据当前的分配方式计算当前评价值包括:计算所有任务执行的最小总成本和在最小总成本下的最大总效率,并根据所述最小总成本和所述最大总效率计算当前评价值。
在一些实施方式中,所述计算所有任务执行的最小总成本和在最小总成本下的最大总效率包括:根据每个任务在消耗的资源和节点的满意度计算所有任务执行的最小总成本。
在一些实施方式中,所述根据当前的分配方式计算当前评价值包括:分别给所述最小总成本和所述最大总效率分配第一权重和第二权重,并计算分配权重后的当前评价值。
在一些实施方式中,所述按照当前粒子对应的排列方式将所有任务分配到所有节点中包括:按照当前粒子对应的排列方式依次判断每个任务分配到对应节点上的资源消耗是否小于或等于所述任务对计算资源的需求量;以及响应于所述任务分配到对应节点上的资源消耗大于所述任务对计算资源的需求量,将所述任务重新分配。
在一些实施方式中,所述根据所述总体历史最优值确定每个任务分配的节点包括:依次判断每个任务分配到对应节点的分配值是否为预定值;以及响应于所述任务分配到对应节点的分配值为预定值,将所述任务分配到所述对应节点。
本发明实施例的另一方面,还提供了一种调度自动驾驶仿真任务系统,包括:计算模块,配置用于计算在当前粒子下执行所有任务的当前评价值,并判断所述当前评价值是否小于历史最优值;第一更新模块,配置用于响应于所述当前评价值小于历史最优值,用所述当前评价值更新所述历史最优值,并判断所述当前评价值是否小于总体历史最优值;第二更新模块,配置用于响应于所述当前评价值小于总体历史最优值,用所述当前评价值更新所述总体历史最优值;第三更新模块,配置用于基于所述历史最优值和所述总体历史最优值更新当前粒子的位置和速度,并返回再次计算当前评价值直到达到最大计算次数;以及分配模块,配置用于根据所述总体历史最优值确定每个任务分配的节点,并根据结果对任务进行分配。
本发明实施例的又一方面,还提供了一种计算机设备,包括:至少一个处理器;以及存储器,所述存储器存储有可在所述处理器上运行的计算机指令,所述指令由所述处理器执行时实现如上方法的步骤。
本发明实施例的再一方面,还提供了一种计算机可读存储介质,计算机可读存储介质存储有被处理器执行时实现如上方法步骤的计算机程序。
本发明具有以下有益技术效果:通过任务调度模型,即min-max函数,考虑到影响仿真任务所需计算资源的多种因素,优化目标使资源的利用率最高及成本最低,并基于粒子群算法对min-max函数进行求解,来提高资源的执行效率,最后通过自动化脚本将各任务分配给各节点的启动脚本中,全部实现自动化,节省人力,提高效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
图1为本发明提供的调度自动驾驶仿真任务的方法的实施例的示意图;
图2为本发明提供的调度自动驾驶仿真任务的计算机设备的实施例的硬件结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
基于上述目的,本发明实施例的第一个方面,提出了一种调度自动驾驶仿真任务的方法的实施例。图1示出的是本发明提供的调度自动驾驶仿真任务的方法的实施例的示意图。如图1所示,本发明实施例包括如下步骤:
S1、计算在当前粒子下执行所有任务的当前评价值,并判断当前评价值是否小于历史最优值;
S2、响应于当前评价值小于历史最优值,用当前评价值更新历史最优值,并判断当前评价值是否小于总体历史最优值;
S3、响应于当前评价值小于总体历史最优值,用当前评价值更新总体历史最优值;
S4、基于历史最优值和总体历史最优值更新当前粒子的位置和速度,并返回再次计算当前评价值直到达到最大计算次数;以及
S5、根据总体历史最优值确定每个任务分配的节点,并根据结果对任务进行分配。
本发明实施例提出了任务调度模型,建立min-max多目标函数。对于仿真任务来说,主要消耗的资源是计算资源,每个任务对计算资源的需求量分别记作Ri(i=1,2,3…,M),假设用户提交的任务数量M大于计算节点数N,每个任务在不同的计算节点上消耗的资源相同,则第i个任务分配到第j个节点上的资源消耗为Qij=Ri。
对于计算资源的消耗,其主要影响因素是仿真任务中仿真场景的地图、交通参与者。假设这两个因素的每单位使用成本为c1、c2,通过线性加权函数来给出资源消耗与影响因素的关系,并加以比重wa、wb,因此第i个任务分配到第j个节点上的资源消耗为其中r1是仿真场景地图大小,r2是仿真场景交通参与者数量。
根据以上分析,为了让仿真任务更快更高效地完成,建立min-max函数,min-max函数如下:
F(T)表示所有任务执行的总成本,E(T)表示所有任务执行的总效率,式(2)是在式(1)条件下使所有任务调度执行的效率最大。
粒子群算法中每个优化问题的解都是搜索空间中的一个被抽象成没有大小和质量的“粒子”,所有的粒子都有自己在空间中的位置和适应值,以及有一个速度来决定飞翔的方向,粒子们会跟随当前的最优粒子在求解空间中搜索,初始化为一群随机粒子,然后通过迭代找到最优解。在每次迭代中,粒子通过跟踪最优的2个极值来更新自己,第一个就是粒子本身所找到的最优解,这个解是个体极值Pbest,第二个是整个粒子群所找到的最优解,这个解是全局极值Gbest。
粒子群算法应用到min-max函数模型需要做相应的初始化设定,粒子位置由向量X表示,定义X为X={x1,x2,…,xn},n=1,2,…M,其中1≤xi≤N表示任务i分配在节点xi上,不同的任务分配到同一节点上的调度顺序采用短作业优先法,即作业时间短的任务优化执行,这种方法可以有效降低作业的平均等待时间,提高系统吞吐量。速度由Vx位向量表示Vx={vx1,vx2,…vxn},n=1,2,…M,其中-N≤vxi≤N,初始化粒子位置xi为(1~N)之间的整数,粒子的速度随机取-(N-1)~(N-1)之间的整数。
计算在当前粒子下执行所有任务的当前评价值,并判断当前评价值是否小于历史最优值。初始化粒子群,初始化X和Vx,按短作业优先调度同一节点上的任务,通过评价函数来评价所有粒子。
在一些实施方式中,所述计算在当前粒子下执行所有任务的当前评价值包括:按照当前粒子对应的排列方式将所有任务分配到所有节点中,并根据当前的分配方式计算当前评价值。
在一些实施方式中,所述按照当前粒子对应的排列方式将所有任务分配到所有节点中包括:按照当前粒子对应的排列方式依次判断每个任务分配到对应节点上的资源消耗是否小于或等于所述任务对计算资源的需求量;以及响应于所述任务分配到对应节点上的资源消耗大于所述任务对计算资源的需求量,将所述任务重新分配。资源分配的约束条件:Qij≤Rj,i=1,2,…M;j=1,2,…N。表示用户提交任务需要的计算资源在某一节点上必须得到满足,这是分配的必要条件。同时,也需要满足表示M个任务必须全部分配到N个节点上。
在一些实施方式中,所述根据当前的分配方式计算当前评价值包括:计算所有任务执行的最小总成本和在最小总成本下的最大总效率,并根据所述最小总成本和所述最大总效率计算当前评价值。也即是计算min{F(T)}和max{E(T)},并将计算结果代入评价函数中计算当前评价值。
在一些实施方式中,所述计算所有任务执行的最小总成本和在最小总成本下的最大总效率包括:根据每个任务在消耗的资源和节点的满意度计算所有任务执行的最小总成本。本发明实施例设置了满意度,满意度公式如下:
式(3)是某个任务在某一节点上的满意度,在计算总成本时加入该项是考虑到节点的负载均衡问题,表示该节点已经执行过的任务越多,则再分配任务时成本会增大。
在一些实施方式中,所述根据当前的分配方式计算当前评价值包括:分别给所述最小总成本和所述最大总效率分配第一权重和第二权重,并计算分配权重后的当前评价值。通过评价函数min{w1F(T)+w2/E(T)}来评价所有粒子,w1、w2根据具体场景中成本和效率的重要性来取值。
响应于当前评价值小于历史最优值,用当前评价值更新历史最优值,并判断当前评价值是否小于总体历史最优值。将初始化评价值作为个体历史最优解Pi,并寻找总体最优解来作为总体历史最优解Pg。判断当前粒子的当前评价值是否优于其历史最优值,如果当前粒子的当前评价值优于历史最优值,则记当前评价值为该粒子历史最优值,同时记当前位置为该粒子历史最优位置Pi。
响应于当前评价值小于总体历史最优值,用当前评价值更新总体历史最优值。从这些个体历史最优解中寻找总体最优解,若存在个体历史最优值优于总体历史最优值则用该历史最优值更新总体历史最优解Pg。
基于历史最优值和总体历史最优值更新当前粒子的位置和速度,并再次计算当前评价值直到达到最大计算次数。粒子的迭代公式为:
vt+1=wvt+C1random(0,1)(Pbest-xt)+C2random(0,1)(Gbest-xt) (4)
xt+1=xt+vt+1 (5)
式(4)是粒子群算法的速度更新公式,vt表示迭代t次的粒子速度,式(5)是位移更新公式,xt表示迭代t次的粒子位移,w为惯性因子,w较大时全局寻优能力强,较小时局部寻优能力强,t表示迭代次数,C1、C2是学习因子,前者是每个粒子的个体学习因子,后者是每个粒子的社会学习因子,通常设置为常数2,random(0,1)表示区间[0,1]上的随机数。
根据总体历史最优值确定每个任务分配的节点,并根据结果对任务进行分配。
在一些实施方式中,所述根据所述总体历史最优值确定每个任务分配的节点包括:依次判断每个任务分配到对应节点的分配值是否为预定值;以及响应于所述任务分配到对应节点的分配值为预定值,将所述任务分配到所述对应节点。当迭代终止后,获得最优解Pg,也即是得到了一组分配方式Pij,通过自动化脚本方式遍历Pij,当Pij=1时,将第i个任务写入到第j个节点的启动脚本中。
如下所示是脚本中关于各节点仿真启动脚本中的任务分配相关代码,<ScenarioList>参数一栏中表示所要运行的仿真任务,通过自动化脚本会在这一栏中自动写入需要执行的仿真场景,例如下面所示的启动脚本表示要先后运行Crossing8Demo和PassingAnimal两个仿真任务。
<Project projectName="SampleProject">
<ScenarioList>
<Scenario name="Crossing8Demo.xml"/>
<Scenario name="PassingAnimal.xml"/>
</ScenarioList>
</Project>
每个节点都会得到一个启动脚本,将这些脚本传送给相应的节点,通过这些启动脚本开始仿真。
通过本发明实施例将20个不同的仿真任务调度到4个计算节点上,从一开始到仿真任务全部结束大约花费70秒时间,而如果人为来进行分配,那么人为分配的时间大约占有30秒,仿真运行时间大约占有80秒,总共花费110秒,如果任务数量更多的情况下人为分配的时间会大大增加,并且得到的分配方法也并非最优方案。
本发明设计了任务调度模型,针对自动驾驶大规模仿真任务的资源消耗大、耗时长等主要问题,结合自动驾驶仿真任务自身的一些影响因素,构建min-max函数,实现资源利用率和执行效率的最优化,使计算资源能得到最大化使用;同时基于粒子群算法对min-max函数进行求解,一方面节省人为分配的时间和精力,另一方面可以更快更准确地得到最优解,实现资源最优分配的目标;最后基于自动化脚本将全部任务根据最优解自动进行分配,节省人力,提高效率。
需要特别指出的是,上述调度自动驾驶仿真任务的方法的各个实施例中的各个步骤均可以相互交叉、替换、增加、删减,因此,这些合理的排列组合变换之于调度自动驾驶仿真任务的方法也应当属于本发明的保护范围,并且不应将本发明的保护范围局限在实施例之上。
基于上述目的,本发明实施例的第二个方面,提出了一种调度自动驾驶仿真任务的系统,包括:计算模块,配置用于计算在当前粒子下执行所有任务的当前评价值,并判断所述当前评价值是否小于历史最优值;第一更新模块,配置用于响应于所述当前评价值小于历史最优值,用所述当前评价值更新所述历史最优值,并判断所述当前评价值是否小于总体历史最优值;第二更新模块,配置用于响应于所述当前评价值小于总体历史最优值,用所述当前评价值更新所述总体历史最优值;第三更新模块,配置用于基于所述历史最优值和所述总体历史最优值更新当前粒子的位置和速度,并返回再次计算当前评价值直到达到最大计算次数;以及分配模块,配置用于根据所述总体历史最优值确定每个任务分配的节点,并根据结果对任务进行分配。
在一些实施方式中,所述计算模块配置用于:按照当前粒子对应的排列方式将所有任务分配到所有节点中,并根据当前的分配方式计算当前评价值。
在一些实施方式中,所述计算模块配置用于:计算所有任务执行的最小总成本和在最小总成本下的最大总效率,并根据所述最小总成本和所述最大总效率计算当前评价值。
在一些实施方式中,所述计算模块配置用于:根据每个任务在消耗的资源和节点的满意度计算所有任务执行的最小总成本。
在一些实施方式中,所述计算模块配置用于:分别给所述最小总成本和所述最大总效率分配第一权重和第二权重,并计算分配权重后的当前评价值。
在一些实施方式中,所述计算模块配置用于:按照当前粒子对应的排列方式依次判断每个任务分配到对应节点上的资源消耗是否小于或等于所述任务对计算资源的需求量;以及响应于所述任务分配到对应节点上的资源消耗大于所述任务对计算资源的需求量,将所述任务重新分配。
在一些实施方式中,所述分配模块配置用于:依次判断每个任务分配到对应节点的分配值是否为预定值;以及响应于所述任务分配到对应节点的分配值为预定值,将所述任务分配到所述对应节点。
基于上述目的,本发明实施例的第三个方面,提出了一种计算机设备,包括:至少一个处理器;以及存储器,存储器存储有可在处理器上运行的计算机指令,指令由处理器执行以实现如下步骤:S1、计算在当前粒子下执行所有任务的当前评价值,并判断当前评价值是否小于历史最优值;S2、响应于当前评价值小于历史最优值,用当前评价值更新历史最优值,并判断当前评价值是否小于总体历史最优值;S3、响应于当前评价值小于总体历史最优值,用当前评价值更新总体历史最优值;S4、基于历史最优值和总体历史最优值更新当前粒子的位置和速度,并返回再次计算当前评价值直到达到最大计算次数;以及S5、根据总体历史最优值确定每个任务分配的节点,并根据结果对任务进行分配。
在一些实施方式中,所述计算在当前粒子下执行所有任务的当前评价值包括:按照当前粒子对应的排列方式将所有任务分配到所有节点中,并根据当前的分配方式计算当前评价值。
在一些实施方式中,所述根据当前的分配方式计算当前评价值包括:计算所有任务执行的最小总成本和在最小总成本下的最大总效率,并根据所述最小总成本和所述最大总效率计算当前评价值。
在一些实施方式中,所述计算所有任务执行的最小总成本和在最小总成本下的最大总效率包括:根据每个任务在消耗的资源和节点的满意度计算所有任务执行的最小总成本。
在一些实施方式中,所述根据当前的分配方式计算当前评价值包括:分别给所述最小总成本和所述最大总效率分配第一权重和第二权重,并计算分配权重后的当前评价值。
在一些实施方式中,所述按照当前粒子对应的排列方式将所有任务分配到所有节点中包括:按照当前粒子对应的排列方式依次判断每个任务分配到对应节点上的资源消耗是否小于或等于所述任务对计算资源的需求量;以及响应于所述任务分配到对应节点上的资源消耗大于所述任务对计算资源的需求量,将所述任务重新分配。
在一些实施方式中,所述根据所述总体历史最优值确定每个任务分配的节点包括:依次判断每个任务分配到对应节点的分配值是否为预定值;以及响应于所述任务分配到对应节点的分配值为预定值,将所述任务分配到所述对应节点。
如图2所示,为本发明提供的上述调度自动驾驶仿真任务的计算机设备的一个实施例的硬件结构示意图。
以如图2所示的装置为例,在该装置中包括一个处理器301以及一个存储器302,并还可以包括:输入装置303和输出装置304。
处理器301、存储器302、输入装置303和输出装置304可以通过总线或者其他方式连接,图2中以通过总线连接为例。
存储器302作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本申请实施例中的调度自动驾驶仿真任务的方法对应的程序指令/模块。处理器301通过运行存储在存储器302中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例的调度自动驾驶仿真任务的方法。
存储器302可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据调度自动驾驶仿真任务的方法的使用所创建的数据等。此外,存储器302可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器302可选包括相对于处理器301远程设置的存储器,这些远程存储器可以通过网络连接至本地模块。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置303可接收输入的用户名和密码等信息。输出装置304可包括显示屏等显示设备。
一个或者多个调度自动驾驶仿真任务的方法对应的程序指令/模块存储在存储器302中,当被处理器301执行时,执行上述任意方法实施例中的调度自动驾驶仿真任务的方法。
执行上述调度自动驾驶仿真任务的方法的计算机设备的任何一个实施例,可以达到与之对应的前述任意方法实施例相同或者相类似的效果。
本发明还提供了一种计算机可读存储介质,计算机可读存储介质存储有被处理器执行时执行如上方法的计算机程序。
最后需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,调度自动驾驶仿真任务的方法的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,程序的存储介质可为磁碟、光盘、只读存储记忆体(ROM)或随机存储记忆体(RAM)等。上述计算机程序的实施例,可以达到与之对应的前述任意方法实施例相同或者相类似的效果。
以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。
上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。
Claims (10)
1.一种调度自动驾驶仿真任务的方法,其特征在于,包括以下步骤:
计算在当前粒子下执行所有任务的当前评价值,并判断所述当前评价值是否小于历史最优值;
响应于所述当前评价值小于历史最优值,用所述当前评价值更新所述历史最优值,并判断所述当前评价值是否小于总体历史最优值;
响应于所述当前评价值小于总体历史最优值,用所述当前评价值更新所述总体历史最优值;
基于所述历史最优值和所述总体历史最优值更新当前粒子的位置和速度,并返回再次计算当前评价值直到达到最大计算次数;以及
根据所述总体历史最优值确定每个任务分配的节点,并根据结果对任务进行分配。
2.根据权利要求1所述的方法,其特征在于,所述计算在当前粒子下执行所有任务的当前评价值包括:
按照当前粒子对应的排列方式将所有任务分配到所有节点中,并根据当前的分配方式计算当前评价值。
3.根据权利要求2所述的方法,其特征在于,所述根据当前的分配方式计算当前评价值包括:
计算所有任务执行的最小总成本和在最小总成本下的最大总效率,并根据所述最小总成本和所述最大总效率计算当前评价值。
4.根据权利要求3所述的方法,其特征在于,所述计算所有任务执行的最小总成本和在最小总成本下的最大总效率包括:
根据每个任务在消耗的资源和节点的满意度计算所有任务执行的最小总成本。
5.根据权利要求3所述的方法,其特征在于,所述根据当前的分配方式计算当前评价值包括:
分别给所述最小总成本和所述最大总效率分配第一权重和第二权重,并计算分配权重后的当前评价值。
6.根据权利要求2所述的方法,其特征在于,所述按照当前粒子对应的排列方式将所有任务分配到所有节点中包括:
按照当前粒子对应的排列方式依次判断每个任务分配到对应节点上的资源消耗是否小于或等于所述任务对计算资源的需求量;以及
响应于所述任务分配到对应节点上的资源消耗大于所述任务对计算资源的需求量,将所述任务重新分配。
7.根据权利要求1所述的方法,其特征在于,所述根据所述总体历史最优值确定每个任务分配的节点包括:
依次判断每个任务分配到对应节点的分配值是否为预定值;以及
响应于所述任务分配到对应节点的分配值为预定值,将所述任务分配到所述对应节点。
8.一种调度自动驾驶仿真任务的系统,其特征在于,包括:
计算模块,配置用于计算在当前粒子下执行所有任务的当前评价值,并判断所述当前评价值是否小于历史最优值;
第一更新模块,配置用于响应于所述当前评价值小于历史最优值,用所述当前评价值更新所述历史最优值,并判断所述当前评价值是否小于总体历史最优值;
第二更新模块,配置用于响应于所述当前评价值小于总体历史最优值,用所述当前评价值更新所述总体历史最优值;
第三更新模块,配置用于基于所述历史最优值和所述总体历史最优值更新当前粒子的位置和速度,并返回再次计算当前评价值直到达到最大计算次数;以及
分配模块,配置用于根据所述总体历史最优值确定每个任务分配的节点,并根据结果对任务进行分配。
9.一种计算机设备,其特征在于,包括:
至少一个处理器;以及
存储器,所述存储器存储有可在所述处理器上运行的计算机指令,所述指令由所述处理器执行时实现权利要求1-7任意一项所述方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-7任意一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011307166.XA CN112417748B (zh) | 2020-11-19 | 2020-11-19 | 一种调度自动驾驶仿真任务的方法、系统、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011307166.XA CN112417748B (zh) | 2020-11-19 | 2020-11-19 | 一种调度自动驾驶仿真任务的方法、系统、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112417748A true CN112417748A (zh) | 2021-02-26 |
CN112417748B CN112417748B (zh) | 2022-06-21 |
Family
ID=74774345
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011307166.XA Active CN112417748B (zh) | 2020-11-19 | 2020-11-19 | 一种调度自动驾驶仿真任务的方法、系统、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112417748B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114610575A (zh) * | 2022-03-14 | 2022-06-10 | 北京百度网讯科技有限公司 | 应用于计算分支的更新峰值的方法、装置、设备和介质 |
CN115526453A (zh) * | 2022-08-19 | 2022-12-27 | 北京百度网讯科技有限公司 | 车辆调度方法、装置、设备、存储介质及计算机程序产品 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140165070A1 (en) * | 2012-12-06 | 2014-06-12 | Hewlett-Packard Development Company, L.P. | Ranking and scheduling of monitoring tasks |
CN107133095A (zh) * | 2017-04-07 | 2017-09-05 | 北京科技大学 | 一种云环境下的任务调度方法 |
CN110020831A (zh) * | 2019-03-29 | 2019-07-16 | 北京工业大学 | 基于粒子群算法的新高考排课算法 |
CN110287018A (zh) * | 2019-07-04 | 2019-09-27 | 中国工商银行股份有限公司 | 批量任务编排方法及装置 |
-
2020
- 2020-11-19 CN CN202011307166.XA patent/CN112417748B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140165070A1 (en) * | 2012-12-06 | 2014-06-12 | Hewlett-Packard Development Company, L.P. | Ranking and scheduling of monitoring tasks |
CN107133095A (zh) * | 2017-04-07 | 2017-09-05 | 北京科技大学 | 一种云环境下的任务调度方法 |
CN110020831A (zh) * | 2019-03-29 | 2019-07-16 | 北京工业大学 | 基于粒子群算法的新高考排课算法 |
CN110287018A (zh) * | 2019-07-04 | 2019-09-27 | 中国工商银行股份有限公司 | 批量任务编排方法及装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114610575A (zh) * | 2022-03-14 | 2022-06-10 | 北京百度网讯科技有限公司 | 应用于计算分支的更新峰值的方法、装置、设备和介质 |
CN114610575B (zh) * | 2022-03-14 | 2024-05-14 | 北京百度网讯科技有限公司 | 应用于计算分支的更新峰值的方法、装置、设备和介质 |
CN115526453A (zh) * | 2022-08-19 | 2022-12-27 | 北京百度网讯科技有限公司 | 车辆调度方法、装置、设备、存储介质及计算机程序产品 |
CN115526453B (zh) * | 2022-08-19 | 2023-08-25 | 北京百度网讯科技有限公司 | 车辆调度方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112417748B (zh) | 2022-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Ayoubi et al. | An autonomous IoT service placement methodology in fog computing | |
CN109947567A (zh) | 一种多智能体强化学习调度方法、系统及电子设备 | |
Kaur et al. | Deep‐Q learning‐based heterogeneous earliest finish time scheduling algorithm for scientific workflows in cloud | |
CN109669452A (zh) | 一种基于并行强化学习的云机器人任务调度方法和系统 | |
CN112417748B (zh) | 一种调度自动驾驶仿真任务的方法、系统、设备及介质 | |
CN106055395A (zh) | 一种基于蚁群优化算法的云环境中截止时间约束工作流调度方法 | |
CN111314120A (zh) | 基于迭代QoS模型的云软件服务资源自适应管理框架 | |
CN107656799B (zh) | 一种多云环境下考虑通信和计算代价的工作流调度方法 | |
US11861643B2 (en) | Reinforcement learning method for driver incentives: generative adversarial network for driver-system interactions | |
CN112416585A (zh) | 面向深度学习的gpu资源管理与智能化调度方法 | |
CN109634742A (zh) | 一种基于蚁群算法的时间约束科学工作流优化方法 | |
CN109039428B (zh) | 基于冲突消解的中继卫星单址天线调度随机搜索方法 | |
CN117909044A (zh) | 面向异构计算资源的深度强化学习协同调度方法及装置 | |
CN114567560B (zh) | 基于生成对抗模仿学习的边缘节点动态资源分配方法 | |
CN115587688A (zh) | 一种基于bim的装配式建筑构件的调度方法及系统 | |
Moazeni et al. | Dynamic resource allocation using an adaptive multi-objective teaching-learning based optimization algorithm in cloud | |
AlOrbani et al. | Load balancing and resource allocation in smart cities using reinforcement learning | |
CN113568747B (zh) | 基于任务分类与时序预测的云机器人资源调度方法及系统 | |
CN114064235A (zh) | 多任务教与学优化方法、系统及设备 | |
Choi et al. | AQ‐Learning‐based method applied to stochastic resource constrained project scheduling with new project arrivals | |
CN113220466A (zh) | 一种基于长短期记忆模型的云服务负载通用预测方法 | |
CN114217944A (zh) | 一种神经网络的针对模型并行的动态负载均衡方法 | |
CN112213956A (zh) | 一种自动驾驶仿真任务调度方法、装置、设备及可读介质 | |
CN113238873B (zh) | 一种用于航天器资源优化配置的方法 | |
CN110377769A (zh) | 基于图数据结构的建模平台系统、方法、服务器及介质 |
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 |