驾驶控制指令生成方法、异构计算方法、相关装置及系统制造方法及图纸

技术编号:35280306 阅读:14 留言:0更新日期:2022-10-22 12:22
本申请涉及汽车领域,特别涉及自动驾驶领域,具体公开一种驾驶控制指令生成的方法,应用于自动驾驶系统,该自动驾驶系统包括一个或多个业务节点集,每个业务节点集包括一个或多个业务功能集,每个业务功能集包括一个或多个基础算法集,包括:确定目标业务节点;根据当前驾驶场景从一个或多个业务功能集中调用目标业务节点对应的目标业务功能;调用目标业务功能对应的基础算法。通过采用本申请提供了业务节点、业务功能和基础算法单元分层模型的软件框架,在构建软件框架的整个过程中,使得业务开发人员的主要工作聚焦在业务的思维逻辑上,减少开发工作量和开发复杂度。减少开发工作量和开发复杂度。减少开发工作量和开发复杂度。

【技术实现步骤摘要】
驾驶控制指令生成方法、异构计算方法、相关装置及系统


[0001]本申请涉及自动驾驶领域,尤其涉及一种自动驾驶控制指令生成方法、异构计算方法、相关装置、车辆和程序开发系统。

技术介绍

[0002]在自动驾驶算法的开发中,将算法分成多个不同的业务节点,分别处理不同的业务功能,比如感知节点、定位节点、决策节点、规控节点,每个节点通常单独部署在一个进程。要开发一个算法处理的业务节点,从一个进程的main函数开始到算法完成,开发人员需要完成这些任务:规划多线程,规划与外部的通信,规划线程间的同步、通信机制,规划不同的单元、处理步骤的时序,规划算法的子模块分解。这些过程工作量大,需要较资深编程经验的开发人员才能胜任;并且开发过程难度大,耗时长,问题多。算法开发人员经常在此就耗费了大量精力,无法聚焦在真正算法的开发上。

技术实现思路

[0003]本申请提供一种自动驾驶控制指令生成方法、异构计算方法、相关装置、车辆和程序开发系统,采用本申请提供的分层模型,业务开发人员不需要从一个进程的main函数开始到算法完成,只需要在基于分层模型构建软件框架,然后在该框架下的基础算法单元中编写程序代码,有利于在进行程序开发时减少业务开发人员的开发工作量和开发复杂度;基于程序的基础算法构建可执行实体,并根据可执行实体的类型使用对应的类型的执行器来执行该可执行实体,从而实现充分利用多个异构计算单元的计算能力,且使得异构计算单元的负载更加均衡。
[0004]第一方面,本申请提供一种生成自动驾驶控制指令的方法,应用于自动驾驶系统,该自动驾驶系统包括一个或多个业务节点集,每个业务节点集包括一个或多个业务功能集,每个业务功能集包括一个或多个基础算法集,包括:确定目标业务节点;根据当前驾驶场景从一个或多个业务功能集中调用目标业务节点对应的目标业务功能;调用目标业务功能对应的基础算法。
[0005]业务节点集包括一个或多个业务节点,每个业务节点集包括包括一个或多个业务功能,每个基础算法集包括一个或多个基础算法每个业务节点包括一个或多个业务功能,每个业务功能包括一个或多个基础算法,因此可以看成业务节点集包括一个或多个业务功能集,每个业务功能集包括一个或多个基础算法集。目标业务节点为业务节点集中的一个业务节点
[0006]其中,上述目标业务功能可以包括同一业务节点中的一个或多个业务功能,或可包括不同业务节点中的一个或多个业务功能。可选地,不同的业务节点或者业务功能中可以包括相同的基础算法,比如对于不同业务节点或业务功能中相同的算法,可以采用相同的基础算法处理,从而实现基础算法的复用。
[0007]一种可能的实施方式,基础算法可由用户自定义,划分基础算法颗粒度的大小可
由用户根据业务需求控制;一种可能的实施方式,基础算法的划分可由计算框架提供。
[0008]需要说明的是,合理的基础算法的划分有利于提高基础算法的复用机会;通过业务功能层级可以提高基础算法组合的灵活性;通过业务节点的划分,可以实现多个业务功能打包进入一个进程中计算的效果。
[0009]通过采用本申请提供的基于业务节点集、业务功能集和基础算法分层模型的软件框架,软件框架逻辑清晰,复杂度低,使得业务开发人员可以先设计一些基本的算法,然后通过这些基本单元的组合,通过工具的拖拽方式,完成完整的业务逻辑建模。在构建软件框架的整个过程中,业务开发人员的主要工作聚焦在业务的思维逻辑上,不需要考虑软件具体功能的实现细节,减少开发工作量,提升开发易用性;在构建好软件框架后,业务开发人员只需要在基础算法中编写最核心算法的逻辑代码,从而减轻业务开发人员构建基础代码框架的负担。
[0010]一种可能的实施方式,根据当前驾驶场景从一个或多个业务功能集中调用目标业务节点对应的目标业务功能之前,本方法还包括:
[0011]根据感知数据获取当前驾驶场景。
[0012]一种可能的实施方式,根据当前驾驶场景从一个或多个业务功能集中调用目标业务节点对应的目标业务功能之前,本方法还包括:
[0013]获取用户选择的第一驾驶场景;根据感知数据获取第二驾驶场景;判断第一驾驶场景与第二驾驶场景是否一致;若第一驾驶场景与第二驾驶场景不一致,获取第一驾驶场景作为当前驾驶场景。
[0014]一种可能的实施方式,根据感知数据获取当前驾驶场景,包括:
[0015]获取用户选择的第一驾驶场景;根据感知数据获取第二驾驶场景;判断第一驾驶场景与第二驾驶场景是否一致;若第一驾驶场景与第二驾驶场景不一致,获取第一驾驶场景作为当前驾驶场景。
[0016]对于驾驶场景的识别可以通过对感知数据的分析来实现,也即通过感知数据来判断当前车辆所处的驾驶场景;一种可能的实施方式,对于场景的识别可以通过驾驶员或乘员的选择来确定。一种可能的实施方式,当用户(比如驾驶员或乘员)选择的驾驶场景与通过感知数据识别的驾驶场景不一致时,以驾驶员或乘员选择的驾驶场景为当前驾驶场景。一种可能的实施方式,当驾驶员或乘员选择的驾驶场景与通过感知数据识别的驾驶场景不一致时,以通过感知数据识别的驾驶场景为当前驾驶场景。
[0017]针对业务功能的切换场景,比如高速行驶的靠边停车功能与城市道路的路边停车功能,由于这两个场景的功能不同,而导致算法实现上有一定差异。业务算法开发人员可以在构建软件框架时将这两种场景的功能定义为两个不同的业务功能;在自动驾驶程序被执行期间,根据感知数据进行场景的识别,运行不同的业务功能,整个过程简单快捷,不需要考虑自动驾驶程序实现逻辑上的线程设置、条件分支的处理,互斥、同步等问题。
[0018]一种可能的实施方式,调用目标业务功能对应的基础算法,包括:
[0019]根据待处理数据和第一基础算法获得第一可执行实体,第一可执行实体被送入等待队列,第一基础算法为目标业务功能对应的基础算法中的一个。
[0020]其中,可执行实体包括可执行的算法代码(即基础算法)及待处理数据。
[0021]一种可能的实施方式,自动驾驶系统还包括至少一个传感器,在根据待处理数据
和第一基础算法获得第一可执行实体之前,本方法还包括:
[0022]从前级消息队列获取待处理数据,待处理数据是由至少一个传感器采集,或待处理数据为第二可执行实体被执行后获得的调度消息,第二可执行实体在第一可执行实体之前被执行。
[0023]一种可能的实施方式,在第一可执行实体被送入等待队列之后,本方法还包括:
[0024]根据预设调度策略将第一可执行实体由等待队列送入就绪队列。
[0025]需要说明的是,预设的调度策略可以根据实际业务需求调整,以充分利用异构计算资源。一种可能的实施方式,当连续时刻输入的感知数据所依次生成的可执行实体均在等待队列中时,可以经调度实现并行计算:例如,当连续时刻t1、t2、t3的感知数据所对应的具有相同类型的可执行实体R1

、R1”、R1
”’
都处于等待队列时,三个可执行实体可被调度进入该类型执行器对应本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种驾驶控制指令生成方法,应用于自动驾驶系统,其特征在于,所述自动驾驶系统包括一个或多个业务节点集,每个所述业务节点集包括一个或多个业务功能集,每个所述业务功能集包括一个或多个基础算法集,包括:确定目标业务节点;根据当前驾驶场景从所述一个或多个业务功能集中调用所述目标业务节点对应的目标业务功能;调用所述目标业务功能对应的基础算法。2.根据权利要求1所述的方法,其特征在于,所述根据当前驾驶场景从所述一个或多个业务功能集中调用所述目标业务节点对应的目标业务功能之前,所述方法还包括:根据感知数据获取所述当前驾驶场景。3.根据权利要求1或2所述的方法,其特征在于,所述根据当前驾驶场景从所述一个或多个业务功能集中调用所述目标业务节点对应的目标业务功能之前,所述方法还包括:获取用户选择的第一驾驶场景;根据感知数据获取第二驾驶场景;判断所述第一驾驶场景与所述第二驾驶场景是否一致;若所述第一驾驶场景与所述第二驾驶场景不一致,获取所述第一驾驶场景作为所述当前驾驶场景。4.根据权利要求1至3任一项所述的方法,其特征在于,所述调用所述目标业务功能对应的基础算法,包括:根据待处理数据和第一基础算法获得第一可执行实体,所述第一可执行实体被送入等待队列,所述第一基础算法为所述目标业务功能对应的基础算法中的一个。5.根据权利要求4所述的方法,其特征在于,所述自动驾驶系统还包括至少一个传感器,在所述根据待处理数据和第一基础算法获得第一可执行实体之前,所述方法还包括:从前级消息队列获取所述待处理数据,所述待处理数据是由所述至少一个传感器采集,或所述待处理数据为第二可执行实体被执行后获得的调度消息,所述第二可执行实体在所述第一可执行实体之前被执行。6.根据权利要求4或5所述的方法,其特征在于,在所述第一可执行实体被送入所述等待队列之后,还包括:根据预设调度策略将所述第一可执行实体由所述等待队列送入就绪队列。7.根据权利要求6所述的方法,其特征在于,所述方法包括:执行所述就绪队列中的所述第一可执行实体。8.根据权利要求7所述的方法,其特征在于,所述自动驾驶系统还包括至少一种执行器,所述根据预设调度策略将所述第一可执行实体由所述等待队列送入就绪队列,还包括:根据所述第一可执行实体的类型,将所述第一可执行实体送入与其类型相对应的子就绪队列;所述就绪队列包括至少一个所述子就绪队列,所述至少一个所述子就绪队列与所述至少一种执行器一一对应。9.根据权利要求7或8所述的方法,其特征在于,所述执行所述就绪队列中的所述第一可执行实体,还包括:
生成调度消息,所述调度消息被送入所述前级消息队列。10.一种自动驾驶系统,其特征在于,所述自动驾驶系统包括一个或多个业务节点集,每个业务节点集包括一个或多个业务功能集,每个业务功能集包括一个或多个基础算法集,所述自动驾驶系统还包括:调度器,所述调度器用于确定目标业务节点,并根据当前驾驶场景从所述一个或多个业务功能集中调用所述目标业务节点对应的目标业务功能,所述调度器还用于调用所述目标业务功能对应的基础算法并获得该基础算法对应的可执行实体;以及,至少一种执行器,所述至少一种执行器用于执行所述可执行实体。11.根据权利要求10所述的自动驾驶系统,其特征在于,还包括:驾驶场景获取模块,用于根据感知数据获取所述当前驾驶场景。12.根据权利要求10或11所述的自动驾驶系统,其特征在于,所述驾驶场景获取模块还用于:获取用户选择的第一驾驶场景;根据感知数据获取第二驾驶场景;判断所述第一驾驶场景与所述第二驾驶场景是否一致;若所述第一驾驶场景与所述第二驾驶场景不一致,获取所述第一驾驶场景作为所述当前驾驶场景。13.根据权利要求10至12任一项所述的自动驾驶系统,其特征在于,所述调度器还用于调用所述目标业务功能对应的基础算法并获得该基础算法对应的可执行实体,还包括:所述调度器根据待处理数据和第一基础算法获得所述第一可执行实体,所述调度器将所述第一可执行实体送入等待队列,其中,所述第一基础算法为所述目标业务功能对应的基础算法中的一个。14.根据权利要求13所述的自动驾驶系统,其特征在于,所述自动驾驶系统还包括至少一个传感器,在所述调度器根据待处理数据和第一基础算法获得第一可执行实体之前,还包括:所述调度器从前级消息队列获取所述待处理数据,所述待处理数据是由所述至少一个传感器采集,或所述待处理数据为第二可执行实体被执行后获得的调度消息,所述第二可执行实体在所述第一可执行实体之前被执行。15.根据权利要求13或14所述的自动驾驶系统,其特征在于,在所述调度器将所述第一可执行实体送入所述等待队列之后,还包括:所述调度器根据预设调度策略将所述第一可执行实体由所述等待队列送入就绪队列。16.根据权利要求15所述的自动驾驶系统,其特征在于,所述至少一种执行器用于执行所述可执行实体,包括:所述至少一种执行器执行用于执行所述就绪队列中的所述可执行实体。17.根据权利要求16所述的自动驾驶系统,其特征在于,所述调度器根据预设调度策略将所述可执行实体由所述等待队列送入就绪队列,还包括:所述调度器根据所述可执行实体的类型,将所述可执行实体送入与其类型相对应的子就绪队列;
所述就绪队列包括至少一个所述子就绪队列,所述至少一个所述子就绪队列与所述至少一种执行器一一对应。18.根据权利要求16或17所述的自动驾驶系统,其特征在于,所述至少一种执行器执行所述就绪队列中的所述可执行实体,还包括:所述至少一种执行器生成调度消息,所述调度消息被送入所述前级消息队列。19.一种车辆,所述车辆具有自动驾驶系统,其特征在于,所述自动驾驶系统可以执行如权利要求1至9任一项所述的方法。20.一种车辆,其特征在于,所述车辆具有如权利要求10至18任一项所述的自动驾驶系统。21.一种计算方法,应用于异构计算系统,其特征在于,所述异构计算系统包括一个或多个业务节点集,每个业务节点集包括一个或多个业务功能集,每个业务功能集包括一个或多个基础算法集,所述计算方法包括:确定目标业务节点;根据当前应用场景从一个或多个业务功能模块中调用所述目标业务节点对应的目标业务功能模块;调用所述目标业务功能模块对应的基础算法。22.根据权利要求21所述的方法,其特征在于,所述根据当前应用场景从所述一个或多个业务功能集中调用所述目标业务节点对应的目标业务功能之前,所述方法还包括:根据采集数据获取所述当前应用场景。23.根据权利要求21或22所述的方法,其特征在于,所述根据当前应用场景从所述一个或多个业务功能集中调用所述目标业务节点对应的目标业务功能之前,所述方法还包括:获取用户选择的第一应用场景;根据所述采集数据获取第二应用场景;判断所述第一应用场景与所述第二应用场景是否一致;若所述第一应用场景与所述第二应用场景不一致,获取所述第一应用场景作为所述当前应用场景。24.根据权利要求21至23任一项所述的方法,其特征在于,所述调用所述目标业务功能模块对应的基础算法,包括:根据待处理数据和第一基础算法获得第一可执行实体,所述第...

【专利技术属性】
技术研发人员:马继彬余小安梁琦徐奇超王永建段小祥
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1