CN111796516B - 用于规划轨迹的方法和装置 - Google Patents
用于规划轨迹的方法和装置 Download PDFInfo
- Publication number
- CN111796516B CN111796516B CN201910266620.2A CN201910266620A CN111796516B CN 111796516 B CN111796516 B CN 111796516B CN 201910266620 A CN201910266620 A CN 201910266620A CN 111796516 B CN111796516 B CN 111796516B
- Authority
- CN
- China
- Prior art keywords
- time
- solution
- vector
- updated
- solving
- 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
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/04—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
- G05B13/042—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators in which a parameter or coefficient is automatically adjusted to optimise the performance
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/0088—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
- G06Q10/047—Optimisation of routes or paths, e.g. travelling salesman problem
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Human Resources & Organizations (AREA)
- Automation & Control Theory (AREA)
- Strategic Management (AREA)
- Artificial Intelligence (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Aviation & Aerospace Engineering (AREA)
- Medical Informatics (AREA)
- Game Theory and Decision Science (AREA)
- Evolutionary Computation (AREA)
- Economics (AREA)
- Health & Medical Sciences (AREA)
- Theoretical Computer Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Business, Economics & Management (AREA)
- Tourism & Hospitality (AREA)
- Software Systems (AREA)
- Development Economics (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- Marketing (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本公开的实施例公开了用于规划轨迹的方法和装置。该方法的一具体实施方式包括:开始计时,获取轨迹规划任务和额定计算时间;根据轨迹规划任务构造最优控制问题模型,以及设定时间片段数量,并将解向量设为零向量;若累计计时时间小于额定计算时间,则执行如下求解步骤:将初始的解向量作为初始解,根据时间片段数量和初始解求解最优控制问题模型,得到更新后的解向量和更新后的累计计时时间;若更新后的累计计时时间大于等于额定计算时间且更新后的解向量非零向量,将最近一次的解向量作为最终解输出;若更新后的累计计时时间小于额定计算时间,则增加时间片段数量继续求解。该实施方式能够充分利用全部的计算时间提高求解质量和求解精度。
Description
技术领域
本公开的实施例涉及计算机技术领域,具体涉及用于规划轨迹的方法和装置。
背景技术
自动驾驶车辆是汇集了环境感知、规划决策、控制执行及信息交互的高新技术综合体,其规划决策模块负责生成车辆的行驶行为,是体现车辆智慧水平的关键。规划决策模块包括任务规划、路线规划、行为规划及运动规划等环节。
目前,学术界及产业界的轨迹规划算法有很多,主要包括采样方法、几何方法、运筹学方法以及机器学习方法。但是罕有能够实现任意时间规划的算法。任意时间规划的算法指的是,能够在容许计算时间不同的情况下稳定输出求解质量与该时间相匹配的结果的规划算法。举个例子,如果限定每次用时间规划算法进行路径规划的时间上限是X毫秒,那么这个算法必须每次都能在X毫秒内输出规划结果。在这里,关键在于,即使X很小,仍旧必须输出规划结果,即便结果求解质量不高。另一方面,即使X很大,并且X取值大得较为宽松,时间规划算法应尽量充分利用全部的计算时间,尽可能提高求解质量或者求解精度,而不应仅仅能够X毫秒的一部分时间而不再能够具备提升求解质量的任何余地。这对于算法的计算可控性、鲁棒性有着较高的要求。
发明内容
本公开的实施例提出了用于规划轨迹的方法和装置。
第一方面,本公开的实施例提供了一种用于规划轨迹的方法,包括:开始计时,获取轨迹规划任务和额定计算时间;根据轨迹规划任务构造最优控制问题模型,以及设定时间片段数量,并将初始的解向量设为零向量;若累计计时时间小于额定计算时间,则执行如下求解步骤:将解向量作为初始解,根据时间片段数量和初始解求解最优控制问题模型,得到更新后的解向量和更新后的累计计时时间;若更新后的累计计时时间大于等于额定计算时间且更新后的解向量非零向量,将最近一次的解向量作为最终解输出;若更新后的累计计时时间小于额定计算时间,则增加时间片段数量,以及继续执行上述求解步骤。
在一些实施例中,根据时间片段数量和初始解求解最优控制问题模型,包括:将车辆的运行时间按时间片段数量分成至少一个时间片段;根据至少一个时间片段和初始解将最优控制问题模型中连续的决策变量进行离散化后转化成非线性规划问题;采用梯度优化算法求解非线性规划问题。
在一些实施例中,该方法还包括:若求解完成时,获得收敛的最优解,根据最优解将离散的决策变量恢复为连续的决策变量;增加时间片段数量,将解向量设置为基于连续的决策变量重新采样得到的新的解向量,继续执行上述求解步骤。
在一些实施例中,该方法还包括:若累计计时时间大于等于所述额定计算时间且解向量为零向量,输出求解失败信息。
在一些实施例中,最优控制问题模型还包括连续的状态变量和非连续的状态变量;以及该方法还包括:根据连续的决策变量生成连续的状态变量和非连续的状态变量并输出。
在一些实施例中,初始解包括速度和前轮转角角度。
第二方面,本公开的实施例提供了一种用于规划轨迹的装置,包括:获取单元,被配置成开始计时,获取轨迹规划任务和额定计算时间;构造单元,被配置成根据轨迹规划任务构造最优控制问题模型,以及设定时间片段数量,并将初始的解向量设为零向量;求解单元,被配置成若累计计时时间小于额定计算时间,则执行如下求解步骤:将解向量作为初始解,根据时间片段数量和初始解求解最优控制问题模型,得到更新后的解向量和更新后的累计计时时间;若更新后的累计计时时间大于等于额定计算时间且更新后的解向量非零向量,将最近一次的解向量作为最终解输出;循环单元,被配置成若更新后的累计计时时间小于额定计算时间,则增加时间片段数量,以及继续执行上述求解步骤。
在一些实施例中,求解单元进一步被配置成:将车辆的运行时间按时间片段数量分成至少一个时间片段;根据至少一个时间片段和初始解将最优控制问题模型中连续的决策变量进行离散化后转化成非线性规划问题;采用梯度优化算法求解非线性规划问题。
在一些实施例中,求解单元进一步被配置成:若求解完成时,获得收敛的最优解,根据最优解将离散的决策变量恢复为连续的决策变量;增加时间片段数量,将解向量设置为基于连续的决策变量重新采样得到的新的解向量,继续执行上述求解步骤。
在一些实施例中,该装置还包括输出单元,被配置成:若累计计时时间大于等于所述额定计算时间且解向量为零向量,输出求解失败信息。
在一些实施例中,最优控制问题模型还包括连续的状态变量和非连续的状态变量;以及求解单元进一步被配置成:根据连续的决策变量生成连续的状态变量和非连续的状态变量并输出。
在一些实施例中,初始解包括速度和前轮转角角度。
第三方面,本公开的实施例提供了一种电子设备,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如第一方面中任一的方法。
第四方面,本公开的实施例提供了一种计算机可读介质,其上存储有计算机程序,其中,程序被处理器执行时实现如第一方面中任一的方法。
本公开的实施例提供的用于规划轨迹的方法和装置,通过在有限的时间内,不断迭代求解根据轨迹规划任务构造的最优控制问题模型。能够充分利用全部的计算时间,尽可能提高求解质量和求解精度。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本公开的其它特征、目的和优点将会变得更明显:
图1是本公开的一个实施例可以应用于其中的示例性系统架构图;
图2是根据本公开的用于规划轨迹的方法的一个实施例的流程图;
图3是根据本公开的用于规划轨迹的方法的一个应用场景的示意图;
图4是根据本公开的用于规划轨迹的方法的又一个实施例的流程图;
图5是根据本公开的用于规划轨迹的装置的一个实施例的结构示意图;
图6是适于用来实现本公开的实施例的电子设备的计算机系统的结构示意图。
具体实施方式
下面结合附图和实施例对本公开作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本公开。
图1示出了可以应用本公开的用于规划轨迹的方法或用于规划轨迹的装置的示例性架构100。
如图1所示,系统架构100可以包括服务器101,网络102和车辆103、104、105。网络102用以在服务器101和车辆103、104、105之间提供通信链路的介质。网络102可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
服务器101通过网络102与车辆103、104、105交互,以接收或发送消息等。车辆103、104、105上可以安装有各种用于与服务器101进行交互的通讯客户端应用。
车辆103、104、105包括但不限于轮式移动车辆、履带式移动车辆等等。车辆103、104、105装载了车辆控制系统。车辆控制系统可以是硬件,也可以是软件。当车辆103、104、105为硬件时,可以是具有通信功能且能够控制车辆按照接收到的待行驶路径行驶的各种电子设备。当车辆控制系统为软件时,可以安装在上述所列举的车辆中。其可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。在此不做具体限定。
服务器101可以是提供各种服务的服务器,例如控制车辆103、104、105行驶路径的后台服务器。作为示例,后台服务器可以根据优化目标和约束条件生成各车辆的规划路径,然后向每个车辆发送该车辆的规划路径,以使该车辆按照接收到的规划路径行驶。
服务器101可以是硬件,也可以是软件。当服务器101为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器101为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。在此不做具体限定。
需要说明的是,本公开的实施例所提供的用于规划轨迹的方法一般由服务器101执行,相应地,用于规划轨迹的装置一般设置于服务器101中。
应该理解,图1中的服务器、网络和车辆的数目仅仅是示意性的。根据实现需要,可以具有任意数目的服务器、网络和车辆。
继续参考图2,示出了根据本公开的用于规划轨迹的方法的一个实施例的流程200。该用于规划轨迹的方法,包括以下步骤:
步骤201,开始计时,获取轨迹规划任务和额定计算时间。
在本实施例中,用于规划轨迹的方法的执行主体(例如图1所示的服务器)可以获取轨迹规划任务,轨迹规划任务可包括车辆行驶的起点和终点、状态信息。还可包括障碍物位置信息。这里的障碍物可以是阻碍车辆行驶的行人或物体等。这里的物体可以包括其他车辆、路障、树木等。如果障碍物是静止的,则障碍物位置信息可从地图中获取。如果障碍物是移动的,则可通过车载传感器获得障碍物位置信息,或者通过道路旁边的摄像头拍照、无人机航拍等方式获得障碍物位置信息。状态信息可包括车辆的速度、姿态角等信息。
额定计算时间是完成轨迹规划任务的最大许可时间,必须在该时间内完成轨迹规划任务。
步骤202,根据轨迹规划任务构造最优控制问题模型,以及设定时间片段数量,并将初始的解向量设为零向量。
在本实施例中,需要建立一个最优控制问题模型描述车辆的轨迹规划任务。这个最优控制问题模型包含目标函数及约束条件,其中目标函数可以选择为车辆运动时间最短、曲率平滑性较强、尽量远离障碍物等等代价惩罚项的综合加权多项式。约束条件包括车辆运动学约束、车辆碰撞躲避约束以及边值约束等等。
这个最优控制问题模型因具体问题而异,但具备以下基本特征:
其中,z(t)代表一些被求微分的变量,z(t)能够被微分,意味着z(t)是连续的,因此z(t)往往对应着连续的状态变量,例如车辆质心位置坐标、车头姿态角、车轮转角等:这些变量不会发生突变。y(t)代表其它无需符合连续条件的状态变量,u(t)则代表决策变量,可以是速度、加速度、转角等。此外,J为优化目标函数,车辆运动过程发生于时间区间[t0,tf]上。在t0给定的条件下,求解命题(1)即求解符合约束条件的决策变量u(t)以及tf,使得优化目标函数J取得极值。F和G为约束条件。
可采用数值求解方案对最优控制问题模型进行求解,随后得到路径轨迹即可。求解的结果可包括车辆的后轮轴中点坐标和姿态角。可以采用数值优化的方式求解。需要将决策变量进行离散化,可设定时间片段数量(例如5),并将解向量设为零向量后进行求解。
为了数值求解上述最优控制问题模型,采用数值优化的方式。第一步是对最优控制问题模型进行离散化。仅对连续的决策变量——u(t)进行离散化。可将优化时域[t0,tf]均匀地划分为Nfe段相等的时间片段
在有限元上,对u(t)的采样取值进行描述:
其中为决策变量的离散配置点,通过决定一系列ui取值(以及tf),即可得到一个分段常值的决策变量u(t),根据u(t)可模拟生成相应的y(t)、z(t),至此完成整个轨迹规划任务。
上述离散化过程中,离散化形成的一个非线性规划(Nonlinear Programming,NLP)问题,其中的求解变量包括ui(i=1,...,Nfe)以及tf,如果决策变量维度为Dim,则总共的决策变量数目为Nfe×Dim+1。车辆运动任务中,一般Dim=2,则影响所需求解的问题的规模的关键变量为Nfe,问题规模随着Nfe变化而线性地变化。
上述NLP问题可采用梯度优化算法进行求解,例如常见的IPM(Interior PointMethod,内点法)或者SQP(sequence quadratic program,序列二次规划)算法。
步骤203,若累计计时时间小于额定计算时间,则将解向量作为初始解,根据时间片段数量和初始解求解最优控制问题模型,得到更新后的解向量和更新后的累计计时时间。
在本实施例中,如果到此时累计计时时间小于额定计算时间,求解过程正式开始。首先,根据初始解(首次计算时设为零向量)求解Nfe取值较小的一个的NLP问题,并将获得的结果(即当前Nfe对应的解向量[tf,ui(i=1,...,Nfe)])还原为时间连续的变量u(t),并计算出累计计时时间。
步骤204,若更新后的累计计时时间小于额定计算时间,则增加时间片段数量,以及继续执行步骤203。
在本实施例中,如果额定的轨迹规划求解时间仍旧有剩余,则适当增大Nfe,按照此前获得的tf、Nfe将u(t)重新进行采样,得到针对较大Nfe的ui。随后,以这些采样值为初始解,求解增大Nfe之后的NLP问题。如果在可用的剩余计算时间内,第二个NLP问题能够被成功求解,则模仿上述过程更新u(t)、tf,并尝试继续尝试增大Nfe,继续生成初始解,并继续求解对应的NLP问题。
步骤205,若更新后的累计计时时间大于等于额定计算时间且更新后的解向量非零向量,将最近一次的解向量作为最终解输出。
在本实施例中,如果在剩余的计算时间内,NLP问题未能被成功求解(求解过程会在剩余时间耗尽后被中断,或者求解收敛至局部不可行解,这些都意味着求解失败),输出最近一次记录的有效的u(t)、tf。
步骤206,若累计计时时间大于等于额定计算时间且解向量为零向量,输出求解失败信息。
在本实施例中,如果在累计计时时间大于等于额定计算时间后,仍未求解出u(t)、tf,即解向量为零向量。输出求解失败信息。
继续参见图3,图3是根据本实施例的用于规划轨迹的方法的应用场景的一个示意图。在图3的应用场景中,服务器获取轨迹规划任务(从A点行驶到B点)和额定计算时间100ms。构造最优控制问题模型,并以初始向量0和初始的时间片段数量5求解该问题。基于5个时间片段求解完成时累计计时30ms,还可以继续求解。将时间片段数量增加到10片,即,在原来的分段基础上再插值,根据上一次得到的解向量作为初始解重新求解该问题。基于10个时间片段求解完成时累计计时80ms,还可以增加时间片段数量继续求解。当基于20个时间片段求解时,还未求解完毕,累计计时就已经达到100ms。此时将最近一次求解的结果,即基于10个时间片段求解的结果作为最终结果。
本公开的上述实施例提供的方法,通过在有限的时间内,不断迭代求解根据轨迹规划任务构造的最优控制问题模型。能够充分利用全部的计算时间,尽可能提高求解质量和求解精度。
进一步参考图4,其示出了用于规划轨迹的方法的又一个实施例的流程400。该用于规划轨迹的方法的流程400,包括以下步骤:
步骤401,开始计时,获取轨迹规划任务和额定计算时间。
步骤402,根据轨迹规划任务构造最优控制问题模型,以及设定时间片段数量,并将初始的解向量设为零向量。
步骤403,若累计计时时间小于额定计算时间,则将解向量作为初始解,根据时间片段数量和初始解求解最优控制问题模型,得到更新后的解向量和更新后的累计计时时间。
步骤401-403与步骤201-203基本相同,因此不再赘述。
步骤404,判断求解完成时,是否获得收敛的最优解。
在本实施例中,该最优解是针对当前时间片段数量的最优解。如果没有得到最优解,则说明此次增加时间片段数量的求解过程失败,无需再继续增加时间片段数量。
步骤405,若获得收敛的最优解,根据更新后的解向量恢复时间连续的决策变量u(t)。
在本实施例中,将当前Nfe对应的解向量[tf,ui(i=1,...,Nfe)]还原为时间连续的变量u(t)。
步骤406,将时间片段数量加倍后设置解向量为基于当前u(t),重新采样得到的新的解向量。
在本实施例中,将时间片段数量加倍后,按照此前获得的tf、Nfe将u(t)重新进行采样,得到针对较大Nfe的ui。随后,以这些采样值为初始解,求解增大Nfe之后的NLP问题。如果在可用的剩余计算时间内,第二个NLP问题能够被成功求解,则模仿上述过程更新u(t)、tf,并尝试继续尝试增大Nfe,继续生成初始解,并继续求解对应的NLP问题。
步骤407,若未获得收敛的最优解,检查解向量是否为零向量?
在本实施例中,虽然针对此次时间片段数量的求解过程失败,但之前的时间片段数量可能得到过非零的解向量。
步骤408,如果未获得收敛的最优解,但解向量非零向量,则输出解向量中记录的u(t),模拟生成的z(t)、y(t)。
在本实施例中,输出最近一次记录的有效的u(t)。根据决策变量u(t)可模拟生成相应的非连续的状态变量y(t)、连续的状态变量z(t),至此完成整个轨迹规划任务。
步骤409,如果未获得收敛的最优解且解向量为零向量,则输出求解失败信息。
在本实施例中,通过上述步骤仍无法求解最优控制问题模型,输出求解失败信息。可用于提醒用户重新构造最优控制问题模型,或者增加额定计算时间。
从图4中可以看出,与图2对应的实施例相比,本实施例中的用于规划轨迹的方法的流程400体现了通过决策变量u(t)模拟生成相应的非连续的状态变量y(t)、连续的状态变量z(t)的步骤。提高了求解效率和准确率。
进一步参考图5,作为对上述各图所示方法的实现,本公开提供了一种用于规划轨迹的装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图5所示,本实施例的用于规划轨迹的装置500包括:获取单元501、构造单元502、求解单元503、循环单元504。其中,获取单元501,被配置成开始计时,获取轨迹规划任务和额定计算时间;构造单元502,被配置成根据轨迹规划任务构造最优控制问题模型,以及设定时间片段数量,并将初始的解向量设为零向量;求解单元503,被配置成若累计计时时间小于额定计算时间,则执行如下求解步骤:将解向量作为初始解,根据时间片段数量和初始解求解最优控制问题模型,得到更新后的解向量和更新后的累计计时时间;若更新后的累计计时时间大于等于额定计算时间且更新后的解向量非零向量,将最近一次的解向量作为最终解输出;循环单元504,被配置成若更新后的累计计时时间小于额定计算时间,则增加时间片段数量,以及继续执行上述求解步骤。
在本实施例中,用于规划轨迹的装置500的获取单元501、建立单元502、改造单元503和求解单元504的具体处理可以参考图2对应实施例中的步骤201、步骤202、步骤203、步骤204。
在本实施例的一些可选的实现方式中,求解单元503进一步被配置成:将车辆的运行时间按时间片段数量分成至少一个时间片段;根据至少一个时间片段和初始解将最优控制问题模型中连续的决策变量进行离散化后转化成非线性规划问题;采用梯度优化算法求解非线性规划问题。
在本实施例的一些可选的实现方式中,求解单元503进一步被配置成:若求解完成时,获得收敛的最优解,根据最优解将离散的决策变量恢复为连续的决策变量;增加时间片段数量,将解向量设置为基于连续的决策变量重新采样得到的新的解向量,继续执行上述求解步骤。
在本实施例的一些可选的实现方式中,装置500还包括输出单元(附图中未示出),被配置成:若累计计时时间大于等于额定计算时间且解向量为零向量,输出求解失败信息。
在本实施例的一些可选的实现方式中,最优控制问题模型还包括连续的状态变量和非连续的状态变量;以及求解单元进一步被配置成:根据连续的决策变量生成连续的状态变量和非连续的状态变量并输出。
在本实施例的一些可选的实现方式中,初始解包括速度和前轮转角角度。
下面参考图6,其示出了适于用来实现本公开的实施例的电子设备(例如图1中的服务器)600的结构示意图。图6示出的服务器仅仅是一个示例,不应对本公开的实施例的功能和使用范围带来任何限制。
如图6所示,电子设备600可以包括处理装置(例如中央处理器、图形处理器等)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储装置608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有电子设备600操作所需的各种程序和数据。处理装置601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
通常,以下装置可以连接至I/O接口605:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置606;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置607;包括例如磁带、硬盘等的存储装置608;以及通信装置609。通信装置609可以允许电子设备600与其他设备进行无线或有线通信以交换数据。虽然图6示出了具有各种装置的电子设备600,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。图6中示出的每个方框可以代表一个装置,也可以根据需要代表多个装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置609从网络上被下载和安装,或者从存储装置608被安装,或者从ROM 602被安装。在该计算机程序被处理装置601执行时,执行本公开的实施例的方法中限定的上述功能。需要说明的是,本公开的实施例所述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开的实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开的实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:开始计时,获取轨迹规划任务和额定计算时间;根据轨迹规划任务构造最优控制问题模型,以及设定时间片段数量,并将初始的解向量设为零向量;若累计计时时间小于额定计算时间,则执行如下求解步骤:将解向量作为初始解,根据时间片段数量和初始解求解最优控制问题模型,得到更新后的解向量和更新后的累计计时时间;若更新后的累计计时时间大于等于额定计算时间且更新后的解向量非零向量,将最近一次的解向量作为最终解输出;若更新后的累计计时时间小于额定计算时间,则增加时间片段数量,以及继续执行上述求解步骤。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的实施例的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开的实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括获取单元、构造单元、求解单元和循环单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,获取单元还可以被描述为“获取轨迹规划任务和额定计算时间的单元”。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (12)
1.一种用于规划轨迹的方法,包括:
开始计时,获取轨迹规划任务和额定计算时间;
根据所述轨迹规划任务构造最优控制问题模型,以及设定时间片段数量,并将初始的解向量设为零向量,其中,最优控制问题模型包含目标函数及约束条件,其中,目标函数包括车辆运动时间最短、曲率平滑性较强、尽量远离障碍物,约束条件包括车辆运动学约束、车辆碰撞躲避约束以及边值约束;
若累计计时时间小于所述额定计算时间,则执行如下求解步骤:将所述解向量作为初始解,根据时间片段数量和初始解求解所述最优控制问题模型,得到更新后的解向量和更新后的累计计时时间;若更新后的累计计时时间大于等于所述额定计算时间且更新后的解向量非零向量,将最近一次的解向量作为最终解输出;
若更新后的累计计时时间小于所述额定计算时间,则增加时间片段数量,以及继续执行上述求解步骤;
其中,所述根据时间片段数量和初始解求解所述最优控制问题模型,得到更新后的解向量和更新后的累计计时时间,包括:
将车辆的运行时间按时间片段数量分成至少一个时间片段;
根据所述至少一个时间片段和初始解将所述最优控制问题模型中连续的决策变量进行离散化后转化成非线性规划问题;
采用梯度优化算法求解所述非线性规划问题,得到更新后的解向量,并将获得的解向量还原为时间连续的变量,并计算出累计计时时间。
2.根据权利要求1所述的方法,其中,所述方法还包括:
若求解完成时,获得收敛的最优解,根据所述最优解将离散的决策变量恢复为连续的决策变量;
增加时间片段数量,将解向量设置为基于所述连续的决策变量重新采样得到的新的解向量,继续执行上述求解步骤。
3.根据权利要求1所述的方法,其中,所述方法还包括:
若累计计时时间大于等于所述额定计算时间且解向量为零向量,输出求解失败信息。
4.根据权利要求1所述的方法,其中,所述最优控制问题模型还包括连续的状态变量和非连续的状态变量;以及
所述方法还包括:
根据所述连续的决策变量生成连续的状态变量和非连续的状态变量并输出。
5.根据权利要求1-4之一所述的方法,其中,所述初始解包括速度和前轮转角角度。
6.一种用于规划轨迹的装置,包括:
获取单元,被配置成开始计时,获取轨迹规划任务和额定计算时间;
构造单元,被配置成根据所述轨迹规划任务构造最优控制问题模型,以及设定时间片段数量,并将初始的解向量设为零向量,其中,最优控制问题模型包含目标函数及约束条件,其中,目标函数包括车辆运动时间最短、曲率平滑性较强、尽量远离障碍物,约束条件包括车辆运动学约束、车辆碰撞躲避约束以及边值约束;
求解单元,被配置成若累计计时时间小于所述额定计算时间,则执行如下求解步骤:将所述解向量作为初始解,根据时间片段数量和初始解求解所述最优控制问题模型,得到更新后的解向量和更新后的累计计时时间;若更新后的累计计时时间大于等于所述额定计算时间且更新后的解向量非零向量,将最近一次的解向量作为最终解输出;
循环单元,被配置成若更新后的累计计时时间小于所述额定计算时间,则增加时间片段数量,以及继续执行上述求解步骤;
其中,所述求解单元进一步被配置成:
将车辆的运行时间按时间片段数量分成至少一个时间片段;
根据所述至少一个时间片段和初始解将所述最优控制问题模型中连续的决策变量进行离散化后转化成非线性规划问题;
采用梯度优化算法求解所述非线性规划问题,得到更新后的解向量,并将获得的解向量还原为时间连续的变量,并计算出累计计时时间。
7.根据权利要求6所述的装置,其中,所述求解单元进一步被配置成:
若求解完成时,获得收敛的最优解,根据所述最优解将离散的决策变量恢复为连续的决策变量;
增加时间片段数量,将解向量设置为基于所述连续的决策变量重新采样得到的新的解向量,继续执行上述求解步骤。
8.根据权利要求6所述的装置,其中,所述装置还包括输出单元,被配置成:
若累计计时时间大于等于所述额定计算时间且解向量为零向量,输出求解失败信息。
9.根据权利要求6所述的装置,其中,所述最优控制问题模型还包括连续的状态变量和非连续的状态变量;以及
所述求解单元进一步被配置成:
根据所述连续的决策变量生成连续的状态变量和非连续的状态变量并输出。
10.根据权利要求6-9之一所述的装置,其中,所述初始解包括速度和前轮转角角度。
11.一种电子设备,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-5中任一所述的方法。
12.一种计算机可读介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现如权利要求1-5中任一所述的方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201910266620.2A CN111796516B (zh) | 2019-04-03 | 2019-04-03 | 用于规划轨迹的方法和装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201910266620.2A CN111796516B (zh) | 2019-04-03 | 2019-04-03 | 用于规划轨迹的方法和装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN111796516A CN111796516A (zh) | 2020-10-20 |
| CN111796516B true CN111796516B (zh) | 2024-07-19 |
Family
ID=72804852
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201910266620.2A Active CN111796516B (zh) | 2019-04-03 | 2019-04-03 | 用于规划轨迹的方法和装置 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN111796516B (zh) |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN105093931A (zh) * | 2015-06-08 | 2015-11-25 | 南京航空航天大学 | 一种航空发动机非线性系统控制器设计方法 |
Family Cites Families (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE102004032495A1 (de) * | 2004-07-05 | 2006-01-26 | Siemens Ag | Verfahren und Routenplanungssystem zur dynamischen Routenplanung |
| WO2007089674A2 (en) * | 2006-01-27 | 2007-08-09 | The Arizona Board Of Regents, A Body Corporate Acting On Behalf Of Arizona State University | Methods for generating a distribution of optimal solutions to nondeterministic polynomial optimization problems |
| US8693850B2 (en) * | 2011-06-09 | 2014-04-08 | Xiaoping Zhang | System and method for video summarization and navigation based on statistical models |
| US9564056B1 (en) * | 2015-09-03 | 2017-02-07 | General Electric Company | Flight path optimization using nonlinear programming |
| CN105857306B (zh) * | 2016-04-14 | 2018-07-10 | 中国科学院合肥物质科学研究院 | 一种用于多种泊车场景的车辆自主泊车路径规划方法 |
| EP3242206A1 (de) * | 2016-05-04 | 2017-11-08 | Toll Collect GmbH | Verfahren zur aktualisierung der konfiguration einer fahrzeugeinrichtung, fahrzeugeinrichtung, zentrale datenverarbeitungseinrichtung und mautsystem |
| CN106773716B (zh) * | 2017-01-19 | 2019-06-04 | 福州大学 | 一种用于复合材料压机变速下落的轨迹规划方法 |
| CN108121205B (zh) * | 2017-12-13 | 2021-02-26 | 深圳市航盛电子股份有限公司 | 一种用于多种泊车场景的路径规划方法、系统及介质 |
| CN108345217B (zh) * | 2018-02-12 | 2021-09-10 | 南开大学 | 变绳长起重机系统时间最优轨迹规划方法、装置及系统 |
| CN109343345B (zh) * | 2018-09-28 | 2021-12-03 | 江南大学 | 基于qpso算法的机械臂多项式插值轨迹规划方法 |
| CN109514564B (zh) * | 2019-01-22 | 2021-11-30 | 江西理工大学 | 一种复合二次型多关节机械臂最优控制方法 |
-
2019
- 2019-04-03 CN CN201910266620.2A patent/CN111796516B/zh active Active
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN105093931A (zh) * | 2015-06-08 | 2015-11-25 | 南京航空航天大学 | 一种航空发动机非线性系统控制器设计方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN111796516A (zh) | 2020-10-20 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN111931286B (zh) | 纵向动力学模型的训练方法、装置及设备 | |
| Luan et al. | The paradigm of digital twin communications | |
| EP4009300A1 (en) | Vehicle automatic control method and lane change intention prediction network training method | |
| EP3326114B1 (en) | Continuous control with deep reinforcement learning | |
| CN112677995A (zh) | 一种车辆轨迹规划方法、装置、存储介质及设备 | |
| JP2020170535A (ja) | 強化学習を使用した環境ナビゲーション | |
| CN114771570B (zh) | 自动驾驶车辆的控制方法和装置 | |
| CN113033925A (zh) | 用于控制自动驾驶车辆行驶、装置、电子设备和介质 | |
| CN113534790B (zh) | 路径规划方法、装置、电子设备及计算机可读存储介质 | |
| CN115617051B (zh) | 车辆控制方法、装置、设备和计算机可读介质 | |
| CN112965917A (zh) | 用于自动驾驶的测试方法、装置、设备和存储介质 | |
| CN120297323A (zh) | 智能体的动作决策模型的训练方法、动作决策方法及装置 | |
| CN113593241B (zh) | 车辆交互信息校验方法、装置、电子设备和可读介质 | |
| CN111338339B (zh) | 轨迹规划方法、装置、电子设备及计算机可读介质 | |
| CN111688717B (zh) | 用于控制车辆通行的方法和装置 | |
| CN111796516B (zh) | 用于规划轨迹的方法和装置 | |
| CN118707962B (zh) | 智能体网络的编队控制方法、装置、设备及存储介质 | |
| CN119910642A (zh) | 机械手控制方法、装置及电子设备 | |
| CN112729349A (zh) | 里程计在线标定的方法、装置、电子设备及存储介质 | |
| CN119739158A (zh) | 多机器人协同控制方法及装置 | |
| CN111832142B (zh) | 用于输出信息的方法和装置 | |
| CN114399659B (zh) | 车辆控制信息生成方法、装置、设备和计算机可读介质 | |
| CN113052252B (zh) | 超参数确定方法、装置、深度强化学习框架、介质及设备 | |
| CN118936459A (zh) | 视觉惯性融合定位方法及设备 | |
| CN115047858A (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 |