用于自主驾驶模拟的时间规整的制作方法
2021-02-03 16:02:14|282|起点商标网
相关申请的交叉引用本申请要求2018年7月31日提交的美国申请专利序列号16/050,731的优先权和权益,其中,美国申请专利序列号16/050,731是2018年6月26日提交的美国申请专利序列号16/019,291的部分继续申请,美国申请专利序列号16/019,291是2018年5月31日提交的国际专利申请序列号pct/us2018/035455的继续申请,上述文献的全部公开内容通过引用而并入于此。本申请涉及自主运载工具,包括用于模拟自主驾驶的方法、设备、系统和非暂时性计算机可读介质。
背景技术:
:增加自主运载工具的使用为通过运输网络的乘客和货物的更高效移动创造了可能性。此外,自主运载工具的使用可以得到改进的运载工具安全性以及运载工具之间的更有效通信。然而,诸如在自主驾驶模拟中,关键的是,自主运载工具可以检测静态对象以及/或者预测其它附近动态对象的轨迹,以规划轨迹,使得自主运载工具可以安全地穿过运输网络并避开这类对象。技术实现要素:这里公开了用于远程支持运载工具的自主操作的方面、特征、元素和实现。这些实现支持将现有路线扩展到目的地处的可选终点的远程操作。所公开的实现的一方面是模拟自主驾驶的方法。所述方法包括:从记录自主运载工具即记录av接收记录驾驶数据,所述记录驾驶数据包括:使用第一决策算法生成的决策数据、感测数据、以及包括所述记录av的位置的移动数据;通过从所述记录驾驶数据中排除所述决策数据来从所述记录驾驶数据获得模拟数据;以及由模拟av使用所述模拟数据来模拟第二决策算法。模拟所述第二决策算法包括:确定所述模拟av在第一时间的第一位置;以及基于所述第一位置和所述记录av的位置中的在所述第一时间的第二位置之间的差来调整所述模拟数据的重放速率。所公开的实现的一方面是用于模拟自主驾驶的设备,所述设备包括存储器和处理器。所述处理器被配置为执行所述存储器中所存储的模拟自主运载工具即模拟av的指令以:从记录av接收记录驾驶数据,所述记录驾驶数据包括:使用第一决策算法生成的决策数据、感测数据、以及包括所述记录av的位置的移动数据;通过从所述记录驾驶数据中排除所述决策数据来从所述记录驾驶数据获得模拟数据;以及使用所述模拟数据来模拟第二决策算法。模拟所述第二决策算法包括:确定所述模拟av在第一时间的第一位置;以及基于所述第一位置和所述记录av的位置中的在所述第一时间的第二位置之间的差来调整所述模拟数据的重放速率。所公开的实现的另一方面是模拟自主驾驶的方法。所述方法包括:从记录自主运载工具即记录av接收记录驾驶数据,所述记录av使用第一决策算法;以及由模拟av使用所述记录驾驶数据中的至少一些来模拟第二决策算法。模拟所述第二决策算法包括基于所述模拟av在第一时间的第一位置和所述记录av的位置中的在所述第一时间的第二位置之间的差来调整所述记录驾驶数据中的至少一些的重放速率。在以下对实施例、所附权利要求书和附图的详细描述中,公开了本发明的这些和其它方面。附图说明当结合附图阅读时,根据以下详细描述最好地理解所公开的技术。应当强调,根据惯例,附图的各个特征可以不按比例。相反,为了清楚起见,各个特征的尺寸可以被任意地扩大或缩小。此外,在整个附图中,除非另有说明,否则相同的附图标记指代相同的元素。图1是可以实现这里公开的方面、特征和元素的运载工具的一部分的示例的图。图2是可以实现这里公开的方面、特征和元素的运载工具运输和通信系统的一部分的示例的图。图3是根据本发明的实现的可预测响应的情形的图。图4是根据本发明的实现的自主运载工具所用的系统的组件的示例。图5是根据本发明的实现的自主运载工具所用的轨迹规划器的层的示例。图6是根据本发明的实现的粗驾驶线级联的示例的图。图7是根据本发明的实现的确定策略性速率规划的示例。图8是根据本发明的实现的用于确定可驾驶区域和离散时间速率规划的处理的流程图。图9是根据本发明的实现的确定可驾驶区域和离散时间速率规划的图。图10~12是根据本发明的实现的针对静态对象调整可驾驶区域的示例。图13是根据本发明的用于确定静态边界的处理的流程图。图14~16是根据本发明的实现的确定动态边界的示例。图17示出根据本发明的实现的轨迹规划的附加示例。图18是根据本发明的用于对象避开的处理的流程图。图19是根据本发明的实现的针对现实世界对象的假设的示例的图。图20包括根据本发明的用于世界建模的处理的流程图和使用世界模型的处理的流程图。图21是根据本发明的实现的创建和维持假设的示例。图22是根据本发明的实现的轨迹预测的示例。图23是根据本发明的实现的将传感器观察与现实世界对象相关联的示例。图24是根据本发明的实现的更新假设的状态的示例。图25是根据本发明的用于自主运载工具(av)的世界对象跟踪和预测的处理的流程图。图26是根据本发明的实现的预测轨迹的示例。图27是根据本发明的用于预测轨迹的处理的流程图。图28是根据本发明的用于规划自主运载工具的轨迹的处理的流程图。图29是根据本发明的实现的用于自主驾驶模拟的时间规整的系统的示例。图30是根据本发明的实现的记录驾驶数据的示例。图31是根据本发明的实现的模拟数据的示例。图32示出时间t处的记录av的位置和模拟av的位置的示例。图33是根据本发明的实现的用于模拟自主驾驶的处理的流程图。图34是根据本发明的实现的用于确定重放速率调整的比例积分微分(pid)控制器的框图。具体实施方式诸如自主运载工具或半自主运载工具等的运载工具可以穿过运载工具运输网络的一部分。运载工具运输网络可以包括诸如建筑物等的一个或多个不可导航区域;诸如停泊区域(例如,停泊场、停泊空间等)等的一个或多个部分可导航的区域;诸如道路(其包括车道、中线、交叉路口等)等的一个或多个可导航区域;或其组合。运载工具可以包括一个或多个传感器。穿过运载工具运输网络可以包括传感器生成或捕获传感器数据(诸如与运载工具的操作环境相对应的数据或其一部分)。例如,传感器数据可以包括与一个或多个外部对象(或简单地,对象)相对应的信息。外部对象可以是静态对象。静态对象是静止的且预期不会在接下来的几秒内移动的对象。静态对象的示例包括没有骑手的单车、冷车、空车、道路标志、墙、建筑物、坑洼等。外部对象可以是停止对象。停止对象是静止的、但可能在任意时间移动的对象。停止对象的示例包括在交通灯处停止的运载工具以及道路边上具有乘员(例如,驾驶员)的运载工具。在一些实现中,停止对象被视为静态对象。外部对象可以是诸如行人、远程运载工具、摩托车、自行车等的动态(即,移动)对象。动态对象可能正在(朝向运载工具)迎面而来,或者可能正在沿着与运载工具相同的方向移动。动态对象可能正在相对于运载工具纵向或横向移动。静态对象可以变为动态对象,并且反之亦然。一般来说,穿过运载工具运输网络(例如,在运载工具运输网络内驾驶)可被视为机器人行为。也就是说,可以预料运载工具对某些情形(例如,交通或道路情形)的可预测响应。例如,交通情形的观察者可以预料运载工具在未来几秒内的响应将是什么。也就是说,例如,虽然驾驶环境(即,运载工具运输网络、道路)可能是动态的,但可以预测/预料诸如运载工具(即,由人驾驶、远程操作等)对道路状况的响应。可以预测响应,这是因为穿过运载工具运输网络受道路规则(例如,左转弯的运载工具必须为迎面而来的交通让路,运载工具必须在车道线之间驾驶)、社会惯例(例如,在停车标志处,右侧的驾驶员被让路)和物理限制(例如,静止对象不会瞬间横向移动到运载工具的通行权内)管制。针对图3示出可预测响应的附加示例。根据本发明的实现通过检测(例如,感测、观察等)静态对象的存在并预料(即,预测)运载工具运输网络的其它用户(例如,道路用户、动态对象)的轨迹来确定自主运载工具的轨迹。根据本发明的实现可以准确且高效地规划动态对象(例如,其它道路用户)的轨迹,从而有助于自主运载工具的平滑控制(例如,停止、等待、加速、减速、合并等)和自主运载工具的社会可接受行为(例如,操作)。如下文进一步所述,根据本发明的轨迹规划器的实现可以例如通过以下操作来生成自主运载工具(av)从源位置到目的地位置的平滑轨迹:接收hd地图数据、遥操作数据和其它输入数据;纵向拼接(例如,融合、连接等)输入数据以确定从源位置到目的地位置的路径的速率分布(例如,用于指定沿着从源位置到目的地位置的路径的不同段,av可以驾驶得有多快的速率分布);以及在离散的时间点(例如,每几毫秒)使轨迹规划器处理与基于av的传感器数据而观察到的静态对象和动态对象相关的约束以生成下一个时间窗(例如,6秒的前瞻时间)的av的平滑轨迹。轨迹规划器可以从模块(例如,世界模型模块)接收运载工具运输网络的其它用户(这里也称为现实世界对象)的预料(即,预测)轨迹。对于各检测到的动态对象(例如,现实世界对象,诸如运载工具、行人和自行车等),世界模型模块可以维持(例如,预测和更新)与现实世界对象的可能意图有关的一个或多个假设。意图(例如,假设)的示例包括停止、右转弯、左转弯、直行、通过和停泊。可能性与各假设相关联。可能性基于从传感器数据接收到的观察而更新。现实世界对象是基于接收到的传感器数据(这里也称为测量或传感器观察)而检测到的。世界模型模块维持(即,关联且随时间更新)与现实世界对象相关联的各假设(例如,意图)的状态。以下进一步描述状态。例如,在给定假设的意图的情况下,状态包括相关现实世界对象的预测位置。世界模型模块持续接收观察(例如,传感器数据)。对于给定观察,世界模型模块确定与观察相关联的现实世界对象。如果找到相关联的现实世界对象,则基于观察来更新与现实世界对象相关联的各假设的状态。也就是说,例如,基于从现实(例如,物理)世界接收到的观察来更新现实世界对象的预测位置。注意,传感器观察可能有噪声。噪声可能是由于感测能力和/或传感器设置的限制而导致的。例如,传感器可能具有有限的视野,具有有限的感测范围,提供误报和/或漏报的读数,提供具有较大不确定性的观察,以及/或者提供错误的对象分类。另外,自主运载工具所使用的不同传感器类型可以提供不同、部分和/或冲突的观察(例如,分类、位置等)。正因如此,不确定性程度与世界模型模块所接收到的传感器数据相关联。自主运载工具可以使用(例如,融合)来自多种类型的传感器(例如,照相机、lidar、雷达等)的数据,以估计自主运载工具外部的现实世界对象的速度、姿势(位置和航向)、轨迹和类别等中至少之一。根据本发明的实现,世界模型模块可以通过将来自多个传感器的信息融合在一起并考虑传感器特性,来提供对现实世界对象(即,道路用户)的当前状况的最佳估计。总之,由于av不知道其它道路用户的意图,因此av预测并跟踪道路用户可能做什么的多个可能意图(即,假设),以使得av(例如,av的轨迹规划器)可以基于道路用户的预测意图来规划平滑轨迹。在给定来自传感器数据的观察的情况下,根据本发明的实现,世界模型模块跟踪和估计观察对象(即,现实世界对象)的状态,并以概率的方式预测具有多个假设的现实世界对象的未来状态。也就是说,世界模型模块可以提供对现实世界中的对象的改进跟踪。世界模型模块预测现实世界对象的可能轨迹的多个假设。也就是说,例如,如以下进一步描述的,世界模型模块可以预测对象正去往哪里、对象是否正停止、或者对象是否正停泊等。根据以下描述可以明显看出,世界模型模块可以提供多个益处,包括:(1)跟踪持续的(例如,对象姿势、速度、几何形状等)和离散的(例如,对象分类、意图等)对象状态;(2)估计和跟踪具有相关概率(例如,可能性)的多个对象状态假设(例如,意图);(3)根据对象状态、地图和/或环境信息来生成和跟踪抽象对象意图;(4)预测可变时间长度内的具有多个假设的未来对象状态;以及(5)对来自各种传感器(例如,lidar、雷达、照相机等)的数据进行实时处理和融合。这里的教导可以适用于广泛的对象和道路用户(包括但不限于汽车、单车和行人)。尽管这里参考自主运载工具进行了描述,但这里描述的方法和设备可以在能够进行自主或半自主操作的任何运载工具中实现。尽管参考运载工具运输网络进行了描述,但这里描述的方法和设备可以包括运载工具可导航的任何区域内操作的自主运载工具。根据本发明的实现也可以使用来自自主运载工具(即,记录自主运载工具或记录av)的记录数据(即,记录驾驶数据)来模拟自主驾驶。模拟自主驾驶可以意味着使用模拟av在虚拟的三维世界中四处驾驶,其中虚拟的三维世界包括与模拟av进行交互的虚拟的其它道路用户(例如,行人、自行车、宠物、其它运载工具等)。自主驾驶的模拟可以是测试的关键部分,例如轨迹规划、决策、对象检测和分类、以及/或者与自主驾驶相关的其它方面。例如,模拟可以用于在将改进决策算法用在在现实世界道路上驾驶并遇到现实世界对象(例如,其它道路用户)的现实自主运载工具中之前对该改进决策算法进行测试(例如,验证,发现缺陷等)。可以理解,与现实世界测试相比,进行模拟的成本较低,更重要地,在模拟中不会由于例如错误的决策算法而发生损伤。模拟测试可以基于模拟世界对象或所记录的道路上驾驶。在模拟的世界对象场景中,模拟中所使用的其它道路用户可以是计算机生成的对象。正因如此,模拟被认为是以完美的感知进行的。完美的感知可以意味着,可以知道其它道路用户各自的位置、分类、速度、姿势、更多、更少或其它的方面(例如,性质、特性、测量等),而没有不确定性。也就是说,完美的感知可以意味着,可以知道相对于各其它道路用户的地面真值。然而,如上所述,传感器数据可能有噪声。至少部分地由于噪声,记录av(即,在现实世界中导航的av)被认为具有不完美的感知。由于决策算法需要对不完美感知具有期望的鲁棒性,因此使用完美感知(例如,通过使用计算机生成的其它道路用户)来测试(例如,模拟)决策算法是不令人满意的,因为例如,虽然模拟av在完美感知下可以生成一个结果(例如,最优决策)集,但当在记录av的不完美感知下(例如,在现实世界中)使用相同的决策算法时,可能生成并非最优的决策(例如,导致碰撞的决策)。在所记录的道路上驾驶场景中,使用av(即,记录av)来在现实世界中四处驾驶。驾驶可被记录并在模拟期间被重放。对驾驶进行记录可以包括以一定的采样速率对记录驾驶数据进行记录。例如,采样速率可以是每秒10个记录数据点。然而,这里的公开内容不限于此,并且可以使用其它采样速率(例如,每秒更多或更少的记录数据点)。在示例中,记录驾驶数据可以包括在各采样时间处由记录av观察到(例如,经由视觉传感器“看到”或检测到和/或经由听觉传感器听到)的对象(例如,这里被称为其它道路用户和/或现实世界对象)、观察对象的位置、采样时间处的记录av的场所(例如,位置)、以及记录av的感测区域的一个或多个图像。感测区域可被定义为记录av的传感器可以观察到的现实世界的区域。记录驾驶数据可用于进行模拟。也就是说,例如,模拟av可以使用来自记录av的观察数据作为模拟期间的其它道路用户的观察。也就是说,代替从物理传感器接收传感器信息,可以使用记录驾驶数据(其包括记录av的物理传感器所捕获的感测数据)。正因如此,模拟可以在不完美的感知下进行(因为记录驾驶数据是在记录av的不完美感知下捕获的,如上所述)。然而,使用记录驾驶数据进行自主驾驶模拟可能对时间同步提出挑战。时间同步挑战可能归因于记录av的位置(即,场所)和模拟av的位置(即,场所)之间的偏移。也就是说,例如,记录数据中的时间t处的记录av的第一位置可能与同一时间t处的模拟av的第二位置不同。在一些情形中,并且如下文进一步所述,第一位置和第二位置之间的偏移(例如,距离)可能足够大,使得模拟av无法如下文进一步所述地及时接收记录驾驶数据中的至少一些,从而导致不是基于(由记录av)观察到的其它道路用户的决策。重申一下,虽然模拟av和记录av可以在相同的精确位置处开始模拟,但模拟av和记录av可能在位置(例如,空间中的场所)方面彼此偏移。多个源可能促成记录av和模拟av之间的位置偏移。例如,偏移可能由操作员干预引起。在典型场景中,av(即,记录av)用于在现实世界中四处行驶。av可以包括例如能够超控av的决策和/或规划轨迹的操作员(例如,人类驾驶、遥操作员)。例如,操作员可以加速、减速和/或停止以避开另一道路用户;操作员可以在记录av转弯时握住和/或转动方向盘,从而超控记录av的转向角度;或者操作员可以变换车道,而记录av本将停留在同一车道中。在另一示例中,模拟av和记录av可以使用不同的运动模型(例如,运动控制模型、运动学运动模型等)。运动模型可以对应用于av的电量、av的轮胎动力学、av的更少、更多或其它的方面进行描述(例如,建模)。在示例中,在模拟运动控制不是模拟的对象的情况下,与记录av所使用的运动控制模型相比,模拟av可以使用更简单的运动控制模型,从而促成位置偏移。在另一示例中,模拟av和记录av可以使用不同的决策算法。例如,模拟av的决策算法可以是记录av的决策算法的改进版本。正因如此,偏移可能是由于记录av和模拟av的决策算法进行不同的自主驾驶决策而引起的。无论偏移的来源和/或原因如何,并且如上所述,可以在自主驾驶模拟中使用记录驾驶数据,以例如评价模拟av的决策算法。然而,期望使记录av和模拟av的位置同步,使得模拟av可以使用记录av所观察到的所有数据来进行其决策。注意,使模拟av和记录av的位置同步并不意味着调整记录av和模拟av中的任一个或两者的位置。相反,使模拟av和记录av的位置同步意味着如下文进一步所述基于相同时间点处的模拟av的第一位置和记录av的第二位置之间的差来调整(例如,持续调整)模拟数据(其可能是记录驾驶数据)的重放速率。也就是说,例如,使用模拟期间的时间t处的模拟av的第一位置和记录驾驶的时间t处的记录av的第二位置之间的距离来确定重放速率。通过调整重放速率,记录av所捕获的所有其它道路用户(可通过感测数据获得,如下文进一步所述)可以通过模拟av的决策算法来使用。也就是说,通过调整记录数据的重放速率,模拟av可以使用记录av在执行其决策算法时所使用的相同数据来执行模拟av的决策算法。根据本发明的实现可以克服上述的、基于模拟世界对象和/或所记录的道路上驾驶数据的自主驾驶模拟的局限性。通过改变记录av的记录驾驶数据的重放速率以与模拟av的位置相匹配,可以使用不完美感知并且在不存在忽略记录观察的风险的情况下模拟自主驾驶(诸如以评价模拟av的决策算法)。因此,当模拟av的位置相对于记录av的位置偏移时,模拟av不会忽略记录av所记录的观察(例如,测量)。为了更详细地描述这里所述的一些实现,首先参考可以实现本发明的环境。图1是可以实现这里公开的方面、特征和元素的运载工具100的一部分的示例的图。运载工具100包括底盘102、动力总成104、控制器114、轮132/134/136/138,并且可以包括运载工具的任何其它元件或元件组合。尽管为了简单起见,运载工具100被示出为包括四个轮132/134/136/138,但是可以使用诸如推动器或踏面等的任何其它推进装置。在图1中,诸如动力总成104、控制器114和轮132/134/136/138等的线路互连元件表示诸如数据或控制信号等的信息、诸如电力或扭矩等的动力、或者信息和动力这两者可以在相应元件之间通信。例如,控制器114可以从动力总成104接收动力,并与动力总成104、轮132/134/136/138或这两者进行通信以控制运载工具100,这可以包括对运载工具100进行加速、减速、转向或以其它方式进行控制。动力总成104包括动力源106、发送单元108、转向单元110、运载工具致动器112,并且可以包括动力总成的任何其它元件或元件组合(诸如悬架、驱动轴、轮轴或排气系统等)。尽管单独示出,但是轮132/134/136/138可以包括在动力总成104中。动力源106可以是可操作地提供诸如电能、热能或动能等的能量的任何装置或装置组合。例如,动力源106包括诸如内燃机、电动马达、或内燃机和电动马达的组合等的引擎,并且可操作地向轮132/134/136/138中的一个或多个提供动能作为原动力。在一些实施例中,动力源106包括潜在能量单元,例如:诸如镍镉(nicd)电池、镍锌(nizn)电池、镍氢(nimh)电池、锂离子(li离子)电池等的一个或多个干电池;太阳能电池;燃料电池;或能够提供能量的任何其它装置。发送单元108从动力源106接收诸如动能等的能量,并将能量发送至轮132/134/136/138以提供原动力。发送单元108可以由控制器114、运载工具致动器112或这两者控制。转向单元110可以由控制器114、运载工具致动器112或这两者控制,并控制轮132/134/136/138以使运载工具转向。运载工具致动器112可以接收来自控制器114的信号,并且可以致动或控制动力源106、发送单元108、转向单元110或其任何组合以操作运载工具100。在所示实施例中,控制器114包括定位单元116、电子通信单元118、处理器120、存储器122、用户接口124、传感器126和电子通信接口128。尽管被示出为单个单元,但控制器114的任何一个或多个元件可以集成到任何数量的单独物理单元中。例如,用户接口124和处理器120可以集成在第一物理单元中,并且存储器122可以集成在第二物理单元中。尽管在图1中未示出,但控制器114可以包括诸如电池等的动力源。尽管被示出为单独元件,但是定位单元116、电子通信单元118、处理器120、存储器122、用户接口124、传感器126、电子通信接口128或其任何组合可以集成在一个或多个电子单元、电路或芯片中。在一些实施例中,处理器120包括现有的或随后开发的能够操纵或处理信号或其它信息的任何装置或装置组合,例如光学处理器、量子处理器、分子处理器或其组合。例如,处理器120可以包括一个或多个专用处理器、一个或多个数字信号处理器、一个或多个微处理器、一个或多个控制器、一个或多个微控制器、一个或多个集成电路、一个或多个专用集成电路、一个或多个现场可编程门阵列、一个或多个可编程逻辑阵列、一个或多个可编程逻辑控制器、一个或多个状态机或其任何组合。处理器120可以可操作地与定位单元116、存储器122、电子通信接口128、电子通信单元118、用户接口124、传感器126、动力总成104或其任何组合耦接。例如,处理器可以可操作地经由通信总线130与存储器122耦接。处理器120可被配置为执行指令。这种指令可以包括可用于从包括操作中心的远程位置操作运载工具100的远程操作指令。远程操作指令可以存储在运载工具100中,或者从诸如交通管理中心等的外部源或者可包括基于云的服务器计算装置的服务器计算装置接收。在提交于2018年2月21日并且标题为“remoteoperationextendinganexistingroutetoadestination”的美国临时专利申请序列号62/633,414中介绍了远程操作。存储器122可以包括任何有形的非暂时性计算机可用或计算机可读介质,其例如能够包含、存储、通信或传输机器可读指令或与其相关联的任何信息以供处理器120或结合处理器120使用。存储器122可以包括例如一个或多个固态驱动器、一个或多个存储卡、一个或多个可移除介质、一个或多个只读存储器(rom)、一个或多个随机存取存储器(ram)、一个或多个寄存器、一个或多个低功耗双倍数据速率(lpddr)存储器、一个或多个高速缓存存储器、一个或多个盘(包括硬盘、软盘或光盘)、磁卡或光卡、或适合存储电子信息的任何类型的非暂时性介质、或其任何组合。电子通信接口128可以是如图所示的无线天线、有线通信端口、光通信端口、或者能够与有线或无线电子通信介质140接合的任何其它有线或无线单元。电子通信单元118可被配置为经由有线或无线电子通信介质140(诸如经由电子通信接口128等)来发送或接收信号。尽管在图1中没有明确示出,但电子通信单元118被配置为经由任何有线或无线通信介质(诸如射频(rf)、紫外光(uv)、可见光、光纤、有线线路或其组合)来进行发送、接收或这两者。尽管图1示出单个电子通信单元118和单个电子通信接口128,但是可以使用任何数量的通信单元和任何数量的通信接口。在一些实施例中,电子通信单元118可以包括专用短距离通信(dsrc)单元、无线安全单元(wsu)、ieee802.11p(wifi-p)或其组合。定位单元116可以确定运载工具100的地理位置信息,包括但不限于经度、纬度、高度、行进方向或速率。例如,定位单元包括全球定位系统(gps)单元,诸如广域增强系统(waas)启用的国家海洋电子协会(nmea)单元、无线电三角测量单元或其组合。定位单元116可以用于获得表示例如运载工具100的当前航向、运载工具100在二维或三维中的当前位置、运载工具100的当前角取向或其组合的信息。用户接口124可以包括能够被人用作接口的任何单元,包括虚拟键盘、物理键盘、触摸板、显示器、触摸屏、扬声器、麦克风、摄像机、传感器和打印机中的任何一个。如图所示,用户接口124可以可操作地与处理器120或者与控制器114的任何其它元件耦接。尽管被示出为单个单元,但是用户接口124可以包括一个或多个物理单元。例如,用户接口124包括用于与人进行音频通信的音频接口、以及用于与人进行基于视觉和触摸的通信的触摸显示器。传感器126可以包括能够可操作地提供可用于控制运载工具的信息的一个或多个传感器(诸如传感器阵列等)。传感器126可以提供与运载工具的当前操作特性或其周围有关的信息。传感器126例如包括速率传感器、加速度传感器、转向角传感器、牵引力相关传感器、制动相关传感器或者任何传感器或传感器组合,其可操作地报告与运载工具100的当前动态情形的某些方面有关的信息。在一些实施例中,传感器126包括可操作地获得与运载工具100周围的物理环境有关的信息的传感器。例如,一个或多个传感器检测道路几何形状和障碍物(诸如固定障碍物、运载工具、骑行者和行人等)。传感器126可以是或者包括现在已知的或随后开发的一个或多个摄像机、激光感测系统、红外感测系统、声感测系统或者任何其它合适类型的车载环境感测装置或装置组合。传感器126和定位单元116可以组合。尽管没有单独示出,但是运载工具100可以包括轨迹控制器。例如,控制器114可以包括轨迹控制器。轨迹控制器可以可操作地获得用于描述运载工具100的当前状态和针对运载工具100规划的路线的信息,并基于该信息来确定和优化运载工具100的轨迹。在一些实施例中,轨迹控制器输出可操作地控制运载工具100以使得运载工具100遵循轨迹控制器所确定的轨迹的信号。例如,轨迹控制器的输出可以是优化轨迹,该优化轨迹可被供给至动力总成104、轮132/134/136/138或这两者。优化轨迹可以是诸如转向角的集合等的控制输入,其中各转向角与时间点或位置相对应。优化轨迹可以是一个或多个路径、线路、曲线或其组合。轮132/134/136/138中的一个或多个可以是:在转向单元110的控制下枢转至转向角度的转向轮;在发送单元108的控制下扭转以推动运载工具100的推动轮;或者用于对运载工具100进行转向和推动的转向推动轮。运载工具可以包括图1中未示出的单元或元件,诸如外壳、蓝牙模块、调频(fm)无线电单元、近场通信(nfc)模块、液晶显示器(lcd)显示单元、有机发光二极管(oled)显示单元、扬声器或其任何组合。图2是可以实现这里公开的方面、特征和元素的运载工具运输和通信系统200的一部分的示例的图。运载工具运输和通信系统200包括运载工具202(诸如图1所示的运载工具100等)以及一个或多个外部对象(诸如外部对象206等),该外部对象可以包括任何运输形式(诸如图1所示的运载工具100、行人、骑行者等)以及任何结构形式(诸如建筑物等)。运载工具202可以经由运输网络208的一个或多个部分行进,并且可以经由电子通信网络212的一个或多个来与外部对象206进行通信。尽管在图2中没有明确示出,但是运载工具可以穿过没有明确或完全包括在运输网络中的区域(诸如越野区域等)。在一些实施例中,运输网络208可以包括一个或多个运载工具检测传感器210(诸如感应环路传感器等),该运载工具检测传感器210可以用于检测运输网络208上的运载工具的移动。电子通信网络212可以是在运载工具202、外部对象206和操作中心230之间提供诸如语音通信、数据通信、视频通信、消息传送通信或其组合等的通信的多址系统。例如,运载工具202或外部对象206可以经由电子通信网络212从操作中心230接收诸如表示运输网络208的信息等的信息。操作中心230包括控制器设备232,该控制器设备232包括图1所示的控制器114的一些或所有特征。控制器设备232可以监视和协调运载工具(包括自主运载工具)的移动。控制器设备232可以监视诸如运载工具202等的运载工具和诸如外部对象206等的外部对象的状态或条件。控制器设备232可以接收包括以下各项中任一项的运载工具数据和基础设施数据:运载工具速度;运载工具位置;运载工具操作状态;运载工具目的地;运载工具路线;运载工具传感器数据;外部对象速度;外部对象位置;外部对象操作状态;外部对象目的地;外部对象路线;以及外部对象传感器数据。此外,控制器设备232可以建立对诸如运载工具202等的一个或多个运载工具或者诸如外部对象206等的外部对象的远程控制。以这种方式,控制器设备232可以从远程位置遥操作运载工具或外部对象。控制器设备232可以经由诸如无线通信链路226等的无线通信链路或诸如有线通信链路228等的有线通信链路来与诸如运载工具202、外部对象206或服务器计算装置234等的运载工具、外部对象或计算装置交换(发送或接收)状态数据。服务器计算装置234可以包括一个或多个服务器计算装置,这些服务器计算装置可以经由电子通信网络212来与包括运载工具202、外部对象206或操作中心230的一个或多个运载工具或计算装置交换(发送或接收)状态信号数据。在一些实施例中,运载工具202或外部对象206经由有线通信链路228、无线通信链路214/216/224或者任何数量或类型的有线或无线通信链路的组合来进行通信。例如,如图所示,运载工具202或外部对象206经由地面无线通信链路214、经由非地面无线通信链路216或经由其组合来进行通信。在一些实现中,地面无线通信链214包括以太网链路、串行链路、蓝牙链路、红外(ir)链路、紫外(uv)链路或能够进行电子通信的任何链路。诸如运载工具202等的运载工具或诸如外部对象206等的外部对象可与另一运载工具、外部对象或操作中心230进行通信。例如,主机或主体运载工具202可以经由直接通信链路224或经由电子通信网络212来从操作中心230接收诸如基本安全消息(bsm)等的一个或多个自动化运载工具间消息。例如,操作中心230可以将该消息广播到诸如300米等的定义广播范围内的主机运载工具,或者广播到定义地理区域。在一些实施例中,运载工具202经由诸如信号中继器(未示出)或另一远程运载工具(未示出)等的第三方来接收消息。在一些实施例中,运载工具202或外部对象206基于诸如100毫秒(ms)等的定义间隔来定期地发送一个或多个自动化运载工具间消息。运载工具202可以经由接入点218来与电子通信网络212进行通信。可包括计算装置的接入点218被配置为经由有线或无线通信链路214/220来与运载工具202、与电子通信网络212、与操作中心230或与其组合进行通信。例如,接入点218是基站、基站收发台(bts)、节点b、增强型节点b(enode-b)、家庭节点b(hnode-b)、无线路由器、有线路由器、集线器、中继器、交换机或任何类似的有线或无线装置。尽管被示出为单个单元,但是接入点可以包括任何数量的互连元件。运载工具202可以经由卫星222或其它非地面通信装置来与电子通信网络212进行通信。可包括计算装置的卫星222可被配置为经由一个或多个通信链路216/236来与运载工具202、与电子通信网络212、与操作中心230或与其组合进行通信。尽管被示出为单个单元,但是卫星可以包括任何数量的互连元件。电子通信网络212可以是被配置为提供语音、数据或任何其它类型的电子通信的任何类型的网络。例如,电子通信网络212包括局域网(lan)、广域网(wan)、虚拟专用网(vpn)、移动或蜂窝电话网、因特网或任何其它电子通信系统。电子通信网络212可以使用诸如传输控制协议(tcp)、用户数据报协议(udp)、因特网协议(ip)、实时传输协议(rtp)、超文本传输协议(http)或其组合等的通信协议。尽管被示出为单个单元,但是电子通信网络可以包括任何数量的互连元件。在一些实施例中,运载工具202经由电子通信网络212、接入点218或卫星222来与操作中心230进行通信。操作中心230可以包括一个或多个计算装置,这些计算装置能够与诸如运载工具202等的运载工具、包括外部对象206的外部对象、或者诸如服务器计算装置234等的计算装置交换(发送或接收)数据。在一些实施例中,运载工具202识别运输网络208的一部分或状况。例如,运载工具202可以包括一个或多个车载传感器204(诸如图1所示的传感器126等),该一个或多个车载传感器204包括速率传感器、轮速传感器、照相机、陀螺仪、光学传感器、激光传感器、雷达传感器、声传感器、或能够确定或识别运输网络208的一部分或状况的任何其它传感器或装置或其组合。运载工具202可以使用经由电子通信网络212通信的信息(诸如表示运输网络208的信息、一个或多个车载传感器204所识别的信息、或其组合等)来穿过运输网络208的一个或多个部分。外部对象206可以能够进行以上针对运载工具202所述的所有或一些通信和动作。为了简单起见,图2示出作为主机运载工具的运载工具202、外部对象206、运输网络208、电子通信网络212和操作中心230。然而,可以使用任何数量的运载工具、网络或计算装置。在一些实施例中,运载工具运输和通信系统200包括图2中未示出的装置、单元或元件。尽管运载工具202被示出为经由电子通信网络212来与操作中心230进行通信,但是运载工具202(和外部对象206)可以经由任何数量的直接或间接通信链路来与操作中心230进行通信。例如,运载工具202或外部对象206可以经由诸如蓝牙通信链路等的直接通信链路来与操作中心230进行通信。尽管为了简单起见,图2示出一个运输网络208和一个电子通信网络212,但是可以使用任何数量的网络或通信装置。外部对象206被示出为图2中的第二个远程运载工具。外部对象不限于其它运载工具。外部对象可以是任何基础设施元素,例如,具有将数据发送至操作中心230的能力的栅栏、标志、建筑物等。数据可以例如是来自基础设施元素的传感器数据。图3是根据本发明的实现的可预测响应的情形300的图。情形300包括可以预测自主运载工具(av)302的响应并规划轨迹的情形310~360。情形300表示道路用户的可预测情形和响应的示例。情形以缓慢的时间尺度进行(例如,发生、出现等)。也就是说,即使av302可能正以高速(例如,60英里/小时(mph))前行,但是由于av302的计算能力(例如,处理器(诸如图1的处理器120)和/或控制器(诸如图1的控制器114)的计算能力),预测外部对象的响应并确定自主运载工具的轨迹可以在经过时间的亚秒内完成,因此情形310~360可被认为是缓慢的场景。av302可以包括世界建模模块,该世界建模模块至少可以跟踪一些检测到的外部对象。世界建模模块可以预测至少一些被跟踪对象中的各被跟踪对象的一个或多个潜在假设(即,轨迹或路径等)。av302可以包括轨迹规划系统(或简称为轨迹规划器),该轨迹规划系统可以由处理器执行以(考虑到初始状态、期望动作以及具有预测轨迹的至少一些被跟踪对象而)生成避免碰撞、守法、舒适的响应(例如,轨迹、路径等)。在情形310中,av302检测到(即,通过跟踪组件检测到)道路一侧的停泊汽车304(即,静态对象)。如下文进一步所述,av302(即,av302的轨迹规划器)可以规划路径(即,轨迹),该路径在停泊汽车304周围导航av302,如轨迹306所示。情形320是av302检测到另一静态对象的另一种情形。检测到的静态对象是坑洼322。av302可以规划轨迹324,使得av302以av302的轮胎都不会驶入坑洼322中的方式驾驶通过坑洼322。在情形330中,av302检测到迎面而来的运载工具332以及位于与迎面而来的运载工具332相同的道路侧的停泊运载工具334。迎面而来的运载工具332正在移动。正因如此,迎面而来的运载工具332是动态对象。迎面而来的运载工具332正在沿着与av302相同(或至少大致相同)的纵向方向移动。正因如此,迎面而来的运载工具332可被分类为纵向约束,如下文进一步所述。迎面而来的运载工具332正在沿着与av302相反的方向移动。正因如此,迎面而来的运载工具332可被分类为迎面而来的纵向约束。停泊运载工具334是静态对象。av302可以以超过阈值的一定的确定性程度预测为(即,通过预测组件预测为)迎面而来的运载工具332可能遵循轨迹336以避开(例如,绕过)停泊运载工具334。轨迹336与道路的中心线337重叠。为了与迎面而来的运载工具332保持安全距离,av302的轨迹规划器可以规划包括位置339处的弯曲的轨迹338。也就是说,预料到迎面而来的运载工具332的路线,av302的规划轨迹使av302向右移动。在情形340中,av302的跟踪组件可以检测到停泊运载工具342(即,静态对象)和正移动的自行车344(即,作为纵向约束的动态对象)。预测组件可以以一定的确定性程度判断为自行车344将遵循轨迹346以绕过停泊运载工具342。正因如此,av302确定(即,规划、计算、选择、生成或以其它方式确定)轨迹348,使得av302减慢以允许自行车344通过停泊运载工具342。在另一示例中,av302可以确定多于一个的可能轨迹。例如,av302可以确定如上所述的第一轨迹、在自行车344通过停泊汽车之前av302加速通过自行车344的第二轨迹、以及在自行车344正在通过停泊运载工具342时av302绕过自行车344的第三轨迹。然后,轨迹规划器选择所确定的可能轨迹其中之一。在情形350中,av302的跟踪组件检测到迎面而来的运载工具352、第一停泊运载工具356和第二停泊运载工具357。av302的预测组件判断为迎面而来的运载工具352正在遵循轨迹354。av302选择轨迹358,使得av302通过第一停泊运载工具356,在第一停泊运载工具356和第二停泊运载工具357之间等待,直到迎面而来的运载工具352通过为止,然后继续通过第二停泊运载工具357。在情形360中,av302的预测组件判断为大卡车362最有可能右转弯。轨迹规划器(例如,基于大卡车的运动模型)而判断为:由于大卡车需要大的转弯半径,因此大卡车362很可能遵循轨迹364。由于轨迹364干扰av302的路径,因此av302的轨迹规划器确定av302的轨迹366,使得av302停止,直到大卡车362不挡道为止。图4是根据本发明的实现的自主运载工具所用的系统400的组件的示例。系统400表示自主运载工具(诸如图1的运载工具100等)的软件流水线。系统400包括世界模型模块402、路线规划模块404、决策模块406、轨迹规划器408和反应性轨迹控制模块410。系统400的其它示例可以包括更多、更少或其它的模块。在一些示例中,模块可以组合;在其它示例中,模块可以分割为一个或多个其它模块。世界模型模块402诸如从图1的传感器126接收传感器数据,并从传感器数据中确定(例如,转换为、检测到、等等)对象。也就是说,例如,世界模型模块402从所接收到的传感器数据中确定道路用户。例如,世界模型模块402可以将从光检测和测距(lidar)传感器(即,传感器126中的传感器)接收到的点云转换为对象。来自多个传感器的传感器数据可以融合在一起,以确定对象(例如,猜测对象的身份)。对象的示例包括自行车、行人、运载工具等。世界模型模块402可以接收传感器信息,该传感器信息允许世界模型模块402计算和维持至少一些被检测的对象的附加信息。例如,世界模型模块402可以维持至少一些所确定的对象的状态。例如,对象的状态可以包括速度、姿势、几何形状(诸如宽度、高度和深度等)、分类(例如,自行车、大卡车、行人、道路标志等)以及位置中的零个或多个。正因如此,对象的状态包括离散状态信息(例如,分类)和连续状态信息(例如,姿势和速度)。世界模型模块402融合传感器信息,跟踪对象,维持至少一些动态对象的假设列表(例如,对象a可能正在直行、右转弯或左转弯),创建和维持针对各假设的预测轨迹,并维持各假设的可能性估计(例如,考虑到对象姿势/速度和轨迹姿势/速度,对象a有90%的概率正在直行)。在示例中,世界模型模块402使用轨迹规划器的实例,该实例生成针对至少一些动态对象的各对象假设的参考驾驶线。例如,可以使用轨迹规划器的一个或多个实例来生成针对运载工具、自行车和行人的参考驾驶线。在另一示例中,可以使用轨迹规划器的实例来生成针对运载工具和自行车的参考驾驶线,并且可以使用不同的方法来生成针对行人的参考驾驶线(例如,参考路径)。世界模型模块402所维持的对象可以包括静态对象和/或动态对象,如针对图3所述。路线规划模块404确定道路级规划,诸如针对道路级规划412所示。例如,在给定起始位置和目的地位置的情况下,路线规划模块404确定从起始位置到目的地位置的路线。例如,路线规划模块404可以确定av所要遵循以从起始位置导航到目的地位置的道路列表(即,道路级规划)。路线规划模块404所确定的道路级规划和世界模型模块402所维持的对象(和相应状态信息)可被决策模块406用来确定沿道路级规划的离散级决策。针对离散决策414示出离散级决策中所包括的决策的示例。离散级决策的示例可以包括:在道路a和道路b之间的交互处停止,缓慢向前移动,加速到一定速率限制,合并到最右边的车道等。轨迹规划器408可以接收离散级决策、世界模型模块402所维持的对象(和相应状态信息)以及来自世界模型模块402的外部对象的预测轨迹和可能性。轨迹规划器408可以使用至少一些接收到的信息来确定自主运载工具的详细规划轨迹。例如,如针对详细规划轨迹416所示,轨迹规划器408确定接下来的几秒的轨迹。正因如此,并且在接下来的几秒是接下来的6秒(即,6秒的前瞻时间)的示例中,轨迹规划器408确定在接下来的6秒内自主运载工具的轨迹和位置。例如,轨迹规划器408可以确定(例如,预测、计算等)自主运载工具在数个时间间隔处(例如,每四分之一秒或一些其它时间间隔)的预期位置。如例如针对图3所述,轨迹规划器408可以基于其它道路用户的可预测响应来确定详细规划轨迹。反应性轨迹控制模块410可以处理自主运载工具可能遇到、但不可被轨迹规划器408预测到(例如,不能被轨迹规划器408处理)的情形。这种情形包括轨迹规划器408的详细规划轨迹基于对象的误分类的情形和/或很少发生的未预料到的情形。例如,反应性轨迹控制模块410可以响应于判断为自主运载工具左侧的静态对象被误分类而修改详细规划轨迹。例如,对象可能已被分类为大卡车;然而,新的分类判断为它是静态的路障墙。在另一示例中,反应性轨迹控制模块410可以响应于自主运载工具的突然轮胎爆裂而修改详细规划轨迹。未预料到的情形的其它示例包括其它运载工具(例如,由于过迟决定驶往公路匝道或轮胎爆炸而)突然转向到av的车道以及行人或其它对象突然从遮挡物后面出现。图5是根据本发明的实现的自主运载工具所用的轨迹规划器500的层的示例。轨迹规划器500可以是图4的轨迹规划器408,或者可以是图4的轨迹规划器408的一部分。轨迹规划器500可以接收驾驶目标501。轨迹规划器500可以接收驾驶目标501的序列,这些驾驶目标501的序列可以例如表示使第一位置与第二位置相连的一系列车道选择和速率限制。例如,驾驶目标501中的驾驶目标可以是“从位置x开始,在具有特定标识符的车道(具有等于a123的标识符的车道)上行进,同时遵守速率限制y”。轨迹规划器500可用于生成完成驾驶目标501的序列的轨迹。轨迹规划器500包括驾驶线数据层502、参考轨迹生成层504、对象避开层506和轨迹优化层508。轨迹规划器500生成优化轨迹。轨迹规划器500的其它示例可以包括更多、更少或其它的层。在一些示例中,层可以组合;在其它示例中,层可以分割为一个或多个其它层。驾驶线数据层502包括可以由轨迹规划器500使用的输入数据。驾驶线数据可以(例如,由参考轨迹生成层504)用于确定(即,生成、计算、选择或以其它方式确定)从第一位置到第二位置的粗驾驶线。驾驶线可被认为是当av沿道路移动时av的纵轴重合的道路中的线。正因如此,驾驶线数据是可用于确定驾驶线的数据。驾驶线在该点处是粗糙的,并且可以包含横向不连续,诸如当指向相邻车道之间的横向过渡时。该点处的驾驶线也尚未针对av所遇到的对象进行调整,如下文进一步所述。在示例中,驾驶线数据层502可以包括高清晰度(hd)地图数据510、遥操作地图数据512、记录路径数据514、在前运载工具数据516、停泊场数据518和感知路径数据520中的一个或多个。hd地图数据510是来自可供自主运载工具使用的高清晰度(即,高精度)地图的数据。hd地图数据510可以包括与运载工具运输网络有关的准确到几厘米内的信息。例如,hd地图数据510可以包括与道路车道、道路分隔栏、交通信号、交通标志和速率限制等有关的详细信息。遥操作地图数据512可以包括相对短的驾驶线数据。例如,遥操作地图数据512可以是100米至200米长的驾驶线数据。然而,遥操作地图数据512不必限于此。遥操作地图数据512可以由遥操作员响应于或预料到av不能自动处理的异常情形而手动生成。驾驶线可以实时创建。为了例示实时地创建驾驶线,现在提供了示例。遥操作员可以正在远程观察av原始传感器数据。例如,遥操作员可以(诸如在远程监视器上)看到(例如,av的照相机所捕获的)施工场地塔架,并绘制av通过施工区的路径。然后,遥操作员可以看到指挥人物向av提供放行信号,此时遥操作员可以使av沿着所绘制的路径前进。为了减少在av到达先前遇到的异常情形时手动绘制路径的处理时间,还可以将驾驶线数据远程存储并根据需要发送至av。记录路径数据514可以包括与自主运载工具先前遵循的路径有关的数据。在示例中,自主运载工具的操作员(例如,驾驶员或远程操作员)可能已经记录了从街道进入家的车库的路径。在前运载工具数据516可以是从沿着与自主运载工具大致相同的轨迹在自主运载工具之前的一个或多个运载工具接收到的数据。在示例中,自主运载工具和在前运载工具可以经由无线通信链路进行通信,诸如针对图2所述。正因如此,自主运载工具可以经由无线通信链路从在前运载工具接收轨迹和/或其它信息。在前运载工具数据516也可以被感知(例如,跟随)而无需显式通信链路。例如,av可以跟踪在前运载工具,并且可以基于跟踪结果来估计在前运载工具的运载工具驾驶线。停泊场数据518包括与停泊场的位置和/或停泊空间有关的数据。在示例中,停泊场数据518可用于预测其它运载工具的轨迹。例如,如果停泊场入口靠近另一运载工具,则该另一运载工具的预测轨迹其中之一可以是该另一运载工具将进入停泊场。在一些情形中,针对运载工具运输网络的部分可能无法获得地图(例如,hd地图)信息。正因如此,感知路径数据520可以表示不存在先前绘图信息的驾驶线。作为替代,av可以使用与车道标记、路缘石和道路限制相比更少、更多或不同的车道标记、路缘石和道路限制来实时检测驾驶线。在示例中,可以基于从一种地形类型(例如,路面)到其它地形类型(例如,砾石或草)的过渡来检测道路限制。可以使用其它方法来实时检测驾驶线。参考轨迹生成层504可以包括驾驶线级联模块522、策略性速率规划模块524和驾驶线合成模块526。参考轨迹生成层504将粗驾驶线提供给离散时间速率规划模块528。图6示出参考轨迹生成层504的操作的示例。注意,路线规划模块404可以生成车道id序列,该车道id序列用于从第一位置行进至第二位置,从而对应于(例如,提供)驾驶目标501。正因如此,驾驶目标501可以例如是相距100米,这取决于车道的长度。在hd地图数据510的情况下,例如,参考轨迹生成层504可以使用驾驶目标501序列中的位置(例如,gps位置、3d笛卡尔坐标等)和车道(例如,车道的标识符)的组合来生成被表示为av的一系列姿势的(例如,hd地图510中的)高分辨率驾驶线。各姿势可以在预定距离处。例如,姿势可以是相距一到两米。姿势可以通过更多、更少或其它的量定义为坐标(x,y,z)、侧倾角、俯仰角和/或横摆角。如上所述,驾驶线数据可用于确定(例如,生成、计算等)粗驾驶线。驾驶线级联模块522对驾驶线数据层502的输入数据进行拼接(例如,链接、融合、合并、连接、整合或以其它方式拼接),以确定沿纵向方向(例如,沿自主运载工具的路径)的粗驾驶线。例如,为了从位置a(例如,工作)到位置d(例如,家),为了确定粗驾驶线,驾驶线级联模块522可以使用来自停泊场数据518的输入数据来确定从工作位置停泊场离开到主道路的离开位置,可以使用来自hd地图数据510的数据来确定从主道路到家的路径,并且可以使用来自记录路径数据514的数据来导航到家中的车库。粗驾驶线不包括速率信息。然而,在一些示例中,粗驾驶线可以包括速率限制信息,该速率限制信息可以从hd地图数据510使用(例如,提取)。策略性速率规划模块524确定沿粗驾驶线的不同部分的特定速率。例如,策略性速率规划模块524可以判断为,在粗驾驶线的第一个直线段上,自主运载工具的速率可被设置为该第一个直线段的速率限制;以及在粗驾驶线的随后的第二个弯曲段上,自主运载工具的速率将被设置为较慢的速率。正因如此,策略性速率规划模块524考虑到av的当前状态(例如,速率和加速度)、但不考虑其它道路用户或静态对象来计算粗驾驶线的守法(例如,遵守速率限制和停止线)、舒适(例如,身体上和情感上)和物理可实现的速率分布(例如,沿驾驶线的速率与距离)。一旦策略性速率规划模块524确定了策略性速率规划,驾驶线合成模块526可以横向调整粗驾驶线。考虑到策略性速率分布和具有横向不连续的粗驾驶线,驾驶线合成模块526确定车道变换的起始和结束位置,并合成连接这两个位置的驾驶线。车道变换的长度可能取决于速率。驾驶线合成模块526可以合成联接粗驾驶线中的横向不连续位置的驾驶线。例如,假定hd地图数据510包括粗驾驶线的第一段,该第一段位于道路的第一车道上,但粗驾驶线的第二段位于同一道路的第二车道上。正因如此,在粗驾驶线中存在横向不连续。驾驶线合成模块526首先确定av应从第一车道过渡到第二车道的过渡距离(或等效地,起始位置和结束位置)。也就是说,起始位置是控制自主运载工具从第一车道开始向第二车道移动的道路位置。结束位置是自主运载工具完成车道变换时的道路位置。然后,横向连续模块生成将第一车道中的起始位置联接到第二车道中的结束位置的新的驾驶线数据。驾驶线合成模块526所确定的过渡可以取决于速率。例如,与av正以较高速率移动时相比,当av正以较慢的速率移动时,av从第一车道过渡到第二车道可能需要较短的过渡距离。例如,在自主运载工具正以较慢的速率(例如,15mph)行进的繁忙交通情形中,过渡可能需要20码;然而,如果自主运载工具正以较高速率(例如,65mph)行进,则过渡距离可以是100码。正因如此,驾驶线合成模块526可以根据av的速率来确定过渡位置。驾驶线合成模块526的输出被提供给对象避开层506。驾驶线合成模块526的输出包括粗驾驶线和策略性速率规划。对象避开层506生成中期、离散时间的速率规划以及对粗驾驶线的横向约束。对于离散的未来时间点(或等效地,在沿av的路径的离散位置处),离散时间速率规划模块528确定(即,计算)av的相应期望速率。在对象避开层506处,并且如下文进一步所述,对象避开层506使用粗驾驶线、附近的静态对象和附近的动态对象及其预测轨迹来确定(例如,提取)av可以安全地操作的可驾驶区域。确定(后述的)各分箱的左边界和右边界。在给定av的当前速率的情况下,可以生成实时速率规划。实时速率规划可用于估计av的未来位置。可以对照动态对象的未来预料(例如,预测)位置来评价av的未来位置。调整av的可驾驶区域以去除可驾驶区域中的与动态对象的位置相对应(例如,重叠)的区域。在对象避开层506处,针对对象评价和/或调整粗驾驶线。对象可以是av外部和近端的对象。正因如此,对象可以是针对图4的世界模型模块402所描述的对象。正因如此,在给定av的当前速率的情况下,对象避开层506生成实时速率规划。使用实时速率规划,对象避开层506可以估计av在离散的未来时间点处的未来位置。可以对照对象(即,世界模型的对象)的位置来评价未来位置,以针对av提供(例如,生成)平滑驾驶。如下文进一步所述,提供平滑驾驶(即,平滑轨迹)可以是迭代处理。总之,首先生成粗驾驶线;然后根据粗驾驶线生成速率规划;并且在给定粗驾驶线和速率规划的情况下,鉴于av的世界模型中所维持的其它对象来优化轨迹,以提供优化期望轨迹。在调整后的可驾驶区域中优化轨迹。从默认可驾驶区域中去除不可驾驶区域(即,由于其它对象而无法安全驾驶av的区域),以提供调整后的可驾驶区域。图6是根据本发明的实现的粗驾驶线级联的示例600的图。示例600是图5的参考轨迹生成层504的操作的示例。在视图610中,av611位于包括车道612~614的三车道道路的最右侧车道614中。注意,视图610是左侧交通系统的示例(即,车道612~614中的交通从图6的底部朝向顶部移动)。诸如路线规划模块404等的路线规划器可能已基于诸如图5的hd地图数据510等的hd地图数据而判断为av611将右转弯至单车道道路的车道615中。hd地图可以为各车道提供中心线(未示出)。在一些情形中,av的驾驶线可能与车道或道路的中心线不重合。例如,车道615可以是超宽的,以容纳沿车道615的左侧的停泊空间。在另一示例中,可以发现,大多数驾驶员更喜欢稍微向中心线的左侧驾驶。正因如此,av611的驾驶线将被设置在车道615的中心线的左侧。正因如此,驾驶线级联模块522确定车道的几何形状,以确定在给定车道几何形状(例如,车道宽度)的情况下的驾驶线。例如,当粗驾驶线中存在转弯时,驾驶线级联模块522基于车道的宽度、转弯方向(例如,右或左)、转弯角度和/或转弯速率来确定驾驶线要移动至(即,偏离车道中心线)的位置。也就是说,驾驶线级联模块522基于hd地图中心线来设置av的驾驶线。在示例中,可以基于车道宽度来设置驾驶线。为了设置av的驾驶线,驾驶线级联模块522确定沿粗驾驶线的车道的几何形状。在示例中,驾驶线级联模块522确定沿粗驾驶线的一定距离(例如,100米、200米、300米等)的几何形状。为了确定几何形状,驾驶线级联模块522可以确定诸如沿粗驾驶线的多边形616等的多边形,该多边形可用于定义车道边界。视图620示出基于车道的宽度621来确定驾驶线(即,粗驾驶线)。av611正行进所沿的车道的右边缘624、左边缘622和中心线626可以从hd地图获得。驾驶线级联模块522基于宽度621来确定驾驶线628(即,粗驾驶线)。正因如此,驾驶线628相对于中心线626偏移。视图630示出使用诸如针对图5的遥操作地图数据512所述的遥操作数据来确定驾驶线。如上所述,虽然hd地图数据是静态数据,但遥操作数据可以基于道路状况和/或异常情形来提供实时驾驶线。例如,沿着av611的驾驶线632存在施工区。该施工区由诸如塔架636等的障碍物界定,这些障碍物包围施工项目634。正因如此,驾驶线级联模块522如下文进一步所述使用遥操作数据所提供的实时驾驶线将驾驶线632调整为驾驶线638(即,粗驾驶线)。视图640示出取决于速率的车道变换。如上所述,通过图5的驾驶线合成模块526来实现取决于速率的车道变换。在示例中,图4的决策模块406规定,沿着车道642行进的av611例如由于车道642结束或av611将左转弯而接着将位于车道644中。正因如此,av611将在某一点处从车道642移动至车道644。由于hd地图可能不提供车道过渡信息,因此av611的参考轨迹生成层504确定车道过渡时间。如上所述,过渡可能取决于速率。在示例中,(参考轨迹生成层504为一层的)轨迹规划器500可以判断为在沿着粗驾驶线的点x处,av611将正在以(如由策略性速率规划模块524确定的)速率y移动。在av611正以低速率(例如,35mph)移动的情况下,驾驶线合成模块526可以判断为过渡可以是缓慢的。因此,从车道642移动到车道644的路径可以如由路径646所示。另一方面,如果av611正以高速率(例如,65mph)行进,则切换车道的路径需要较长距离,如路径648所示。遵循路径646和648所需的时间可以是相同的。然而,距离是不同的。av611正以第一速率行进时的车道过渡所需的距离长于av611正以比第一速率慢的第二速率行进时所需的距离。车道变换率可用于确定取决于速率的车道变换。也就是说,车道变换率可用于在两个相邻车道(诸如视图640中的车道642和车道644)之间创建连接。车道变换率可以用“米/米”定义:在纵向移动一米时,路径横向移动了多少米?如上文所述,目标是识别使得在目标时间量内完成车道变换的车道变换率:如果av(例如,在密集的高峰时段交通期间)正在缓慢行进,则车道变换率很高,并且发生在短距离(例如,约几十米)内;如果av正在(例如,以公路速率)快速行进,则车道变换率是缓慢的,并且发生在长距离(例如,约几百米)内。图7是根据本发明的实现的确定策略性速率规划的示例700。示例700示出可由图5的策略性速率规划模块524使用以确定策略性速率规划714的输入的示例。在一些实现中,策略性速率规划模块524可以使用更多、更少或其它的输入来确定策略性速率规划。在示例700中,可以使用速率限制输入和加速度限制输入。速率限制可以包括道路速率限制702、弯曲速率限制704和无缝自主移动(sam)数据706其中至少之一。加速度限制可以包括运载工具加速度限制710和舒适度限制712。速率限制和/或加速度限制可以包括更多、更少或其它的输入。道路速率限制702可以是道路速率限制,诸如在速率限制标志上标示的速率限制(例如,20mph、65mph等)。在示例中,道路速率限制702可以从hd地图获得。弯曲速率限制704可以是使运载工具速率与转弯(诸如av沿着粗驾驶线的转弯等)的曲率相关的数据。可选地,弯曲速率限制704只能提供道路曲率信息(例如,曲线的转弯半径)。弯曲速率限制704可以是对av的横向加速度的限制。正因如此,当av弯曲时,速率规划可以包括与弯曲速率限制704一致的降低的av速率。sam数据706可以是从运载工具(自主的或以其它方式)收集(诸如在基于云的系统中)的数据。该数据可以使得运载工具(包括av)能够在道路上安全且平滑地操作。在示例中,sam数据706可以包括从沿着道路的一部分的运载工具收集到的振动数据。振动数据可以使道路的不同部分的振动级和速率相关联。在示例中,振动数据可以指示对于某个道路位置当运载工具正以高于一定速率的速率行进时(例如,由于道路部分的减速带而导致)的不可接受的振动级。正因如此,为了最大限度地减少振动的影响,av将在道路的一部分处减慢(低于一定速率)。在示例中,av可以从中央服务器(诸如操作中心230、服务器计算装置234或某个其它网络装置等)接收sam数据706。在示例中,sam数据706可以是在自主运载工具到达该位置的特定时间段(例如,1分钟、10分钟、20分钟等)内从其它运载工具累积的数据。在示例中,av可以提取sam数据706。在另一示例中,可以基于av将其位置报告给提供sam数据706的服务器来向该av推送sam数据706。道路速率限制702、弯曲速率限制704和sam数据706可以组合以提供原始速率限制708。在示例中,对于沿粗驾驶线的特定位置中的各位置(例如,每5米、10米等),使用该位置处的道路速率限制702的速率、该位置处的弯曲速率限制704的速率以及该位置处的sam数据706的速率中的最小值作为该位置处的原始速率限制708的速率。运载工具加速度限制710可以是由于av的扭矩和功率的av加速度限制。舒适度限制712包括与加速有关的人体舒适度限制,诸如:av的乘员希望av加速到多快?参考轨迹生成层504的策略性速率规划模块524可以组合原始速率限制708、运载工具加速度限制710和舒适度限制712,以提供作为平滑速率规划的策略性速率规划714。如上所述,在沿粗驾驶线的位置处,道路速率限制702、弯曲速率限制704和无缝自主移动sam数据706中的最小值可以用作av的速率限制。运载工具加速度限制710和舒适度限制712使加速度与速率相关。正因如此,并且在示例中,运载工具加速度限制710和舒适度限制712可以通过求出两个最大曲线(舒适度、速率)中的最小值来进行组合。正因如此,在低速率处,舒适度可以限制av的最大加速度;而在高速率处,av的加速度限制(例如,功率)可以限制av的加速度。通过求解满足对速率的约束(沿着驾驶线的任何给定位置处的速率限制)和对加速度的约束(任何给定速率处的加速度限制)的沿着粗驾驶线的最快速率分布,可以生成速率分布。除上述输入之外的输入也可用于计算策略性速率规划714。例如,可以使用道路mu、最小巡航时间、邻域类型或其它输入中的一个或多个。道路mu与诸如由于冰、雨、斜坡等引起的道路滑度相关。最小巡航时间与av的速率可被设置为恒定速率的最小时间长度相关。例如,假定道路的一段长500米,并且该段的速率限制为45mph。另外,假定在给定av的运动模型的情况下,av需要250米才能从停止位置达到45mph的速率限制,并且在给定45mph的当前速率的情况下,av需要250米才能停止。如果av在路段开始时处于停止位置、并且av将在路段结束时再次停止,则av一达到45mph的速率限制,就将必须开始减速。这种速率分布可能不是av的乘员所期望的和/或自然的。正因如此,最小巡航时间可以例如指示:在av可以开始减速(或加速)之前,必须在最小巡航时间(例如,3秒)内维持速率。正因如此,可以提供更自然的速率分布。邻域类型可用于对正常人类驾驶行为进行建模,这可以取决于av正穿过的邻域的类型。例如,人类驾驶员可以在(例如,可能观察到小孩在街道上玩耍的)住宅邻域中以低于标示速率限制的速率驾驶,而在工业邻域中至少以标示限制驾驶,尽管这两个邻域可能具有相同的标示速率限制。图8是根据本发明的实现的用于确定可驾驶区域和离散时间速率规划的处理800的流程图。处理800的一些或所有方面可以在运载工具(包括图1所示的运载工具100和图2所示的运载工具202)中实现,或者在计算设备(包括图2所示的控制器设备232)中实现。在实现中,处理800的一些或所有方面可以在结合本发明中所描述的一些或所有特征的系统中实现。例如,处理800可以由图5的对象避开层506利用。参考图9来解释处理800。图9是根据本发明的实现的确定可驾驶区域和离散时间速率规划的图。图9示出生成可驾驶区域(横向约束)和以离散时间表示的约束速率分布。可驾驶区域可以例如是运载工具运输网络中的可以驾驶自主运载工具的区域。最初(例如,在处理800开始时),可驾驶区域可以包括av不能被预测为安全驾驶的区域。处理800调整可驾驶区域(例如,从可驾驶区域中切出av不能被预测为安全驾驶的区域)。处理800得到调整后的可驾驶区域。在操作810处,处理800识别av附近的对象。在示例中,附近对象可以是世界模型模块402所维持的至少一些外部对象。在示例中,附近对象可以是世界模型模块402所维持的所有对象。在另一示例中,附近对象可以是世界模型模块402所维持的对象的子集。例如,附近对象可以是距av预定距离内的对象、av的预测到达时间内的对象或满足用于识别对象的子集的其它标准的对象。例如,并且参考图9的视图910,针对av912,识别静态运载工具920、静态运载工具914、迎面而来的动态运载工具918和动态运载工具916。在实现中,如针对图10~12所述,操作810识别表示对象的点(即,边界点)和/或点组。在操作820处,处理800提取可驾驶区域。可驾驶区域可以是av912可以(例如,合法地和/或物理地)被驾驶的区域。在示例中,可驾驶区域可以从粗驾驶线中提取。例如,可驾驶区域可以是沿着粗驾驶线(例如,在纵向方向上)距av的预定距离。图9的视图930中的可驾驶区域932是可驾驶区域的示例。在示例中,可驾驶区域932可以是由中线934和路肩936界定(即,在横向方向上界定)的区域。在示例中,可以基于av912的当前位置从hd地图中提取可驾驶区域。可驾驶区域可以由av912所在的车道(或道路或某个其它区域)的左边界和右边界界定。在示例中,可驾驶区域可以跨越道路的中心线。也就是说,在可驾驶区域中可以包括相反方向的交通车道。正因如此,在视图930中,如果中线934不存在,则可驾驶区域可以是可驾驶区域938。处理800继续从可驾驶区域中去除不能(例如,安全地)驾驶av的部分。这里使用术语“调整后的可驾驶区域”来指代在已从可驾驶区域中去除区域以考虑如这里所述的静态和/或动态对象之后的可驾驶区域。如果没有静态和/或动态对象干扰av的轨迹,则调整后的可驾驶区域与可驾驶区域相同。在操作830处,处理800针对静态对象调整可驾驶区域。也就是说,处理800从可驾驶区域中去除(例如,切出等)静态对象所在的可驾驶区域的一些部分。这是因为av将被控制以在静态对象周围导航(例如,驾驶)。图9的视图940示出从可驾驶区域中切出一部分。为了避开静态运载工具914,处理800从可驾驶区域932中切出切口942。切出区域的大小可以基于对静态对象的大小的估计来确定。切出区域的大小可以包括余隙区域,使得av不会驾驶得太靠近静态对象。以下针对图10~12来进一步描述针对静态对象调整可驾驶区域的示例。以下针对图13来描述用于针对静态对象调整可驾驶区域的处理的示例。在操作840处,处理800针对静态对象调整离散时间速率规划。例如,在没有障碍物或其它道路用户的情况下,离散时间速率规划遵循策略性速率分布。例如,在考虑到静态对象、调整后的可驾驶区域包含窄通道的情况下,代替遵循原样呈现(即,如策略性分布中所设置)的策略性分布(即,使用策略性分布的速率),处理800调整离散时间速率规划以将av的速率降低至舒适的速率。例如,在考虑到静态对象、调整后的可驾驶区域包含静态阻塞的情况下,处理800调整离散时间速率规划,使得av在静态阻塞之前的规定距离处停下来。在操作850处,处理800识别(例如,预测、计算、生成、接收或以其它方式识别)附近的各动态对象的相应路径。在示例中,可以在世界模型(诸如图4的世界模型模块402)中维持至少一些动态对象的相应路径(即,轨迹)的预测。正因如此,处理800可以从世界模型接收(例如,请求、读取或以其它方式接收)相应路径。例如,处理800预测(例如,接收预测或以其它方式预测)迎面而来的动态运载工具918将遵循路径922以绕过静态运载工具920,并且动态运载工具916将在经过静态运载工具914之后遵循路径924。在实现中,操作820使用处理800的实例(即,执行处理800)以识别动态对象的路径。在示例中,当预测动态对象的路径时,处理800将av从动态对象的附近对象的列表中排除。在示例中,预测动态对象的路径可以基于其它动态对象的相应速率以及动态对象之间的通行权的估计。在通行权的估计的示例中,如果第二运载工具正在跟随车道中的第一运载工具(即,在第一运载工具之后),则在存在第二运载工具的情况下模拟第一运载工具(即,针对第一运载工具预测路径);但在不存在第一运载工具的情况下模拟第二运载工具。正因如此,轨迹规划器500的实例可以专用于包括轨迹规划器500的自主运载工具,并且轨迹规划器500的一个或多个其它实例可被自主运载工具使用以预测对自主运载工具可见的动态对象(例如,世界模型模块402所维持的动态对象)的轨迹。在操作860处,处理800针对动态对象调整可驾驶区域。也就是说,处理800基于各动态对象的相应预测轨迹来从可驾驶区域切出部分。处理800使用与各动态对象的位置有关的定时信息来从可驾驶区域切出附加部分。针对动态对象的可驾驶区域中的切口是通过将现在考虑了静态对象(如针对操作840所述)的离散时间速率规划所生成的定时与动态对象的预测的定时进行比较而生成的。也就是说,处理800可以针对动态对象并且基于动态对象的预测轨迹来预测动态对象在不同的离散时间点处相对于av在相同离散时间点处的位置而所处的位置。以下针对图14~16进一步描述了针对动态对象调整可驾驶区域的示例。以下针对图18描述了用于针对动态对象调整可驾驶区域的处理的示例。动态对象的位置与av的预测位置相匹配,以确定切出部分。如上所述,av的预测位置是基于如在操作840处调整(即,考虑静态对象)的离散时间速率规划。切口可能与动态对象的当前位置不对应。相反,切口可以基于av和动态对象被预测为相遇的位置。如果动态对象的预测轨迹不干扰可驾驶区域,则针对动态对象不会切出可驾驶区域的部分。如果动态对象的预测轨迹确实干扰了可驾驶区域,则切出可驾驶区域的一个或多个部分,以避免与动态对象发生潜在碰撞。图9的视图950示出针对动态对象调整可驾驶区域(即,操作860)。处理800预测到,迎面而来的动态运载工具918将遵循路径922,以绕过(例如,避开)静态运载工具920。处理800进一步预测到,如果av912继续沿其当前轨迹,则av912和迎面而来的动态运载工具918将会在位置954周围相遇。正因如此,处理800从可驾驶区域932中切出切口956。在操作870处,处理800针对动态对象调整离散时间速率规划。在调整后的可驾驶区域(考虑了该点处的静态对象和动态对象这两者)包含沿与av相同的方向行进的动态对象的情况下,动态对象被标记为纵向约束,并且离散时间速率规划被调整为使得av以舒适的速率和距离跟随阻塞对象。图9的视图960示出针对动态对象调整离散时间速率规划(即,操作870)。处理800判断为,动态运载工具916在av912的调整后的可驾驶区域中,并且av912通过动态运载工具916是不安全的,这是因为例如在动态运载工具916的边缘和调整后的可驾驶区域的边界之间不存在安全间隙。正因如此,av912将跟随在动态运载工具916之后。如果动态运载工具916正在以比策略性速率规划慢的速率移动,则调整离散时间速率规划以使得av以舒适的速率和距离跟随动态运载工具916。视图960还示出av912的例如基于切口956的轨迹962。在另一示例中,假定动态运载工具916本身被判断为具有纵向约束。例如,第二运载工具(未示出)可能在动态运载工具916的前面。正因如此,第二运载工具本身也可被认为是av912的另一纵向约束。正因如此,可以基于动态运载工具916确定av912的第一离散时间速率规划(例如,第一减速度规划),并且可以确定av912的第二离散时间速率规划(例如,第二减速度规划)。第一离散时间速率规划和第二离散时间速率规划中与较高减速度相对应的一个可被选择为av的离散时间速率规划。更一般地,被判断为约束av的约束的对象本身可被视为av的约束。调整后的可驾驶区域964示出由处理800的操作得到的调整后的可驾驶区域。图10~12是根据本发明的实现的针对静态对象调整可驾驶区域的示例1000、1100、1200。示例1000、1100、1200示出确定可驾驶区域的静态边界。也就是说,图10~12是如针对图8的操作830所述的针对静态对象调整可驾驶区域的示例。也就是说,示例1000、1100和1200示出沿着av的粗驾驶线确定参考静态对象可以驾驶av的位置。在图10的示例1000中,av1002的粗驾驶线由粗驾驶线1004表示。这里粗驾驶线1004也被称为粗驾驶线。如针对图5的参考轨迹生成层504所述,可以确定(例如,计算、生成等)粗驾驶线1004。示例1000示出用于确定av1002的可驾驶区域的横向边界的操作830的示例。也就是说,示例1000示出确定例如av1002的可驾驶区域的左边界和右边界以考虑静态对象。如上所述,确定可驾驶区域(即,未调整的、未切出的可驾驶区域,诸如图9的可驾驶区域932等)。在示例中,可驾驶区域可以具有默认宽度。默认宽度可以基于av的当前车道或当前道路。默认宽度可以由预定义宽度(例如,8米)定义。正因如此,可驾驶区域可以越过道路的中心线。注意,默认可驾驶区域可以受到可能位于中线中的屏障(例如,混凝土屏障)的限制。这种屏障是静态对象,并且限制了可驾驶区域。av1002的可驾驶区域被分割为分箱。各分箱具有中心点,诸如中心点1006等。中心点可以是等间隔的。例如,中心点可以相距约两米。各分箱的左边界和右边界可以与粗驾驶线1004的航向相关。右边界1018和左边界1020示出分箱1022的边界。诸如边界点1008等的边界点源于静态对象。例如,边界点可以从来自lidar传感器、激光指示器、雷达或任何其它传感器(诸如图1的传感器126等)的数据推导出。边界点可以表示被占用或以其它方式禁止av进入的(x,y)坐标。与静态对象相对应的各边界点被分配给包含该边界点的分箱。例如,边界点1008被分配给分箱1022。相邻边界点(诸如在分箱内或跨越分箱边界)可以与一个或多个静态对象相对应。各分箱的左边界和右边界可以基于被分配给分箱的边界点来定义(即,设置)。例如,由于分箱1024不包括边界点,分箱1024的右边界1016和左边界1010与(未调整的)可驾驶区域对准。另一方面,分箱1026的左边界1012与可驾驶区域不对准,这是因为切口1028从可驾驶区域中排除;而分箱1026的右边界1014与可驾驶区域不对准,这是因为切口1030从可驾驶区域中排除。调整后的可驾驶区域的边界由分段线1032和分段线1034表示,其中分段线1032形成调整后的可驾驶区域的左边界,分段线1034形成调整后的可驾驶区域的右边界。为了例示的清楚起见,分段线1032、1034被示出为偏离现实边界。也就是说,例如,虽然分段线1032与边界1010和边界1012重叠,但为了清楚起见,分段线1032被示出为略微偏离边界1010和边界1012。分段线1032是调整后的可驾驶区域的计算出的左边界。分段线1034是调整后的可驾驶区域的计算出的右边界。计算出的右边界和左边界用于判断av1002是否可以继续沿着粗驾驶线1004。av1002可以前进(实际上或计算上,而不是物理上)到各分箱的中心,以判断(在给定计算边界的情况下的)分箱的宽度是否使得av1002可以安全地适合通过该分箱。例如,针对分箱1022,av1002不能安全地通过分箱的左边界(即,计算出的左边界)。正因如此,并且如下文进一步所述,将改变av1002的轨迹。例如,av1002的轨迹可能无需调整,因为av1002可能需要停止,或者av1002的轨迹可以以其它方式改变。图11示出根据本发明的实现的确定静态边界并识别在调整离散时间速率规划时考虑的阻塞的示例1100。在示例1100中,粗驾驶线1103是av1102的粗驾驶线。av1102的默认可驾驶区域由左边界1104和右边界1106定义。在示例1100中,示出包括av1102的车道的左车道边界1108和右车道边界1110。在示例1100中,可驾驶区域限于av1102的车道(即,由左车道边界1108及右车道边界1110界定的车道)。正因如此,针对静态对象调整车道的左边界和右边界。左边界1104和右边界1106可以定义最大可能可驾驶区域(即,最大边界)。然而,由于优选将av1102保持在其车道内,因此左车道边界1108和右车道边界1110定义可驾驶区域的边界。在示例中,如果av1102不能在其本身的车道内(例如,在左车道边界1108与右车道边界1110之间)安全驾驶,则可以评价av1102是否可以在车道边界外但在最大边界内驾驶。扩展可驾驶区域可被称为“扩展可驾驶区域检查”。右车道边界1110包括部分1112。部分1112被示出为虚线,因为如下文进一步所述,可驾驶区域的该部分将被调整。如针对图10所述,av1102的可驾驶区域被分割为分箱,并且与静态对象相对应的边界点被分配至相应的分箱,诸如分箱1116、1118等。由于分箱1116、1118的边界点似乎对应于大的矩形对象,因此对象可以(例如,通过图4的世界模型模块402)被分类为“卡车”。与对象(静态或动态对象)相对应(即,基于对象定义)的边界可被称为硬边界。硬边界使得,如果规划轨迹要越过硬边界,则可能与另一对象发生碰撞。另一方面,车道和/或道路标记可被称为软边界,并表示合法或逻辑边界。软边界使得,如果规划轨迹要越过还不是硬边界的软边界,则av的运动可能是不合法的和/或不可被社会接受的,但av可能是安全的。如图11所示,例如,左边界1104(即,左可驾驶区域边界)定义左硬边界,而左车道边界1108定义左软边界。右硬边界包括右边界1106(即,右可驾驶区域边界)和边界1114;右软边界由右车道边界1110和边界1114定义。可以进行详细的检查,以判断在给定分箱的右硬边界和左硬边界之间的距离的情况下是否存在路径。边界1114和左车道边界1108之间的距离1120被判断为太窄,以致av1102无法驾驶(即,适合)通过。正因如此,与分箱1116相对应的位置1122被标记为静态阻塞。正因如此,av1102不能通过分箱1116、1118的边界点所表示的对象。因此,av1102将在与位置1122相对应的静态阻塞之前停止。因此,模块530可以调整离散时间速率规划,使得av在静态阻塞之前停下来。在另一示例中,代替由于静态阻塞而停止,轨迹规划器确定通过间隙1124的轨迹,使得可驾驶区域至少针对分箱1116和1118跨越左车道边界1108而扩展。例如,如果左车道边界1108是道路的中心,则轨迹规划器可以判断为不存在迎面而来的动态对象,因此跨越车道边界是安全的。在另一示例中,在不存在足以使av在静态阻塞之前停止的距离的情况下,离散时间速率规划将只能使av减慢,正因如此,可以确定这样的轨迹,使得av可以越过左软边界以避免越过右硬边界并撞击静态对象。因此,通过维持对硬边界和软边界这两者的意识,轨迹规划器在大多数状况下可以生成合法和社会可接受的驾驶的轨迹,并在紧急状况下无缝地过渡到对象避开机动。在示例中,可以基于分箱内的对象(例如,边界点组)的状况来调整分箱的边界。例如,可以随时间跟踪分箱内的边界点。如果判断为分箱内的边界点组略微移动(即,小于阈值移动水平),则可能需要更大的余隙水平。也就是说,如果边界点正在移动,则av1102可被驾驶得进一步远离边界点。另一方面,如果边界点是稳定的(即,没有正在移动),则av1102可被驾驶得更靠近边界点。正因如此,可以根据分箱内的边界点的移动水平随时间调整分箱的边界(例如,边界1114)。在示例中,如果在时间t检测到边界点的移动,则这些边界点被认为随后(即,在稍后的时间t+x)移动,而无论该边界点是否继续移动。基于分箱内的边界点的移动随时间调整分箱边界可被称为滤波后的横向限制。在该上下文中,“滤波”意味着横向限制(例如,分箱边界)可以随时间变化。图12是根据本发明的实现的确定静态边界的另一示例、即示例1200。在示例1200中,粗驾驶线1203是av1202的粗驾驶线。av1202的默认可驾驶区域由左车道边界1204和右车道边界1206定义。切口1208和切口1210被从可驾驶区域中切出。在该示例中,切口1210位于可驾驶区域的中间。切出区域的边界是否扩展到默认可驾驶区域的边界可以取决于切出区域与默认可驾驶区域的边界之间的距离。例如,如果与切口1210的右边缘和右车道边界1206之间的间隙1216相对应的距离低于阈值距离,则切口1210可以由从切口1210的左边界1217扩展到右车道边界1206的区域定义。在示例中,阈值距离可以与av1202的宽度相关。例如,阈值距离可以是av1202的宽度的1.5倍、2.0倍等。类似地,还确定分箱的边界点的集群(例如,集群1209)和车道边界(例如,右车道边界1206)之间的间隙(例如,间隙1207)。在间隙1207的情况下,由于间隙1207被判断为小于阈值距离(使得av1202不能通过该间隙),因此切口1208扩展到右车道边界1206。av1202的轨迹规划器可以判断为距离1212使得av1202可以通过与距离1212相对应的间隙。由于切口1210与粗驾驶线1203重叠,因此av1202的轨迹规划器进行详细检查以确定(例如,求出)到切口1210的左侧或右侧的间隙,使得av1202可以通过该间隙。如果由于详细检查未发现间隙,则av1202可被认为是阻塞的,并且必须停止。在示例1200中,间隙1214和间隙1216都使得av1202可以通过间隙1214、1216中的任一个。在示例中,随机选择间隙1214、1216其中之一。在另一示例中,轨迹规划器选择间隙1214(即,切口1210左侧的间隙),因为轨迹规划器已经选择了向左的方向来通过切口1208。在给定针对第二对象的两个可能路径(例如,关于对象的左路径和右路径)、并且给定针对第一对象的第一路径(例如,右侧或左侧)的情况下,“多假设跟踪”是指确定针对第二对象的第二路径(例如,轨迹)。图13是根据本发明的用于确定静态边界的处理1300的流程图。处理1300的一些或所有操作可以在处理800的操作830处进行。在操作1310处,处理1300将边界点组织在沿粗驾驶线的分箱中。如针对图10~12所描述的,边界点被组织到沿粗驾驶线的分箱中。在操作1320处,处理1300对照粗驾驶线检查分箱的边界。对照粗驾驶线检查分箱的边界以判断是否存在间隙以使得av可以通过至少一个间隙。在示例中,操作1320可以通过操作1320_2~1320_12来进行。操作1320基于诸如针对例如图10的分箱1026的左边界1012和右边界1014所述的分箱边界点,来调整可驾驶区域的分箱的右边界和左边界。在操作1320_2处,处理1300估计实际驾驶线。例如,如针对切口1208所述,处理1300确定切口1208左侧的实际驾驶线。在操作1320_4处,处理1300识别可通过间隙。也就是说,处理1300识别可通过间隙的数量。例如,在给定图11的分箱1116的右边界和左边界的情况下,处理1300判断av1102是否可以通过距离1120所定义的间隙。如果av1102可以通过距离1120所定义的间隙,则识别一个间隙。类似地,处理1300判断av1202是否可以通过图12的距离1212所定义的间隙。在操作1320_6处,如果识别了单个(即,一个)间隙,则处理1300在1320_12处终止。也就是说,允许轨迹通过该间隙。如果在操作1320_4处识别了多于一个间隙,则处理1300进入操作1320_8。例如,针对av1202和切口1210,处理1300识别两个间隙,即切口1210右侧的间隙和左侧的间隙。在操作1320_8处,处理1300进行详细检查以判断其它间隙是否可用,诸如针对图12的间隙1214、1216所述。例如,如果间隙1214被判断为太小以致av1202无法在切口1210的左侧通过,则处理1300可以测试av1202是否可以通过间隙1216。在操作1320_8处,处理1300选择在左侧或在右侧通过,并且如果两者都不可能,则处理1300判断为存在静态阻塞。在操作1320_10处,如果前瞻距离被完全检查,则处理1300在操作1320_12处终止;否则,处理1300返回操作1320_2以检查附加障碍物。前瞻距离可以随av的速率而变化。例如,根据av的速率,前瞻距离可以变化以减少计算时间,同时仍然保证在检测到前方的阻塞或横向约束的情况下有足够的时间使av停止或舒适地(例如,安全地)转向。例如,在需要4秒前瞻时间的情况下,如果av正以每秒12米的速率行进,则适当的前瞻距离将是48米。如果av正以每秒30米的速率行进(例如,在公路上行进时),则适当的距离将是120米。再次参考图5,离散时间速率规划模块528可以根据参考轨迹生成层504(更具体地,策略性速率规划模块524)所确定的策略性速率规划来生成目标速率和加速度。离散时间速率规划模块528可以根据(例如,基于)纵向约束来生成目标速率和加速度。在示例中,纵向约束可以包括(后述的)停止线、(后述的)虚拟停止线、静态障碍物(即,静态对象)和/或动态障碍物(即,动态对象)。离散时间速率规划模块528迭代地计算目标速率和加速度。针对前瞻时间(即,未来时间范围)计算目标速率和加速度。在示例中,前瞻时间可以是6秒。停止线表示法律要求av在继续之前停止的线。在示例中,停止线可以用道路上的涂画标记。在另一示例中,停止线可以基于交叉路口结构和停止标志位置来推断。虚拟停止线可以被av用来表示av预期、但不被法律要求停止以检查十字路口信息的关键位置。例如,在左转弯处,在交叉路口的中间可以使用虚拟停止线,以使av停止并为十字路口的交通让路。离散时间速率规划模块528计算纵向约束(即,在av的纵向方向上的静态或动态对象)的相应目标速率和/或纵向约束的相应目标距离。离散时间速率规划模块528可以为至少一些静态和/或动态对象设置(即,选择、确定或以其它方式设置)跟踪模式。例如,跟踪模式可以是“缩小间隙”、“维持间隙”、“开放间隙”、“制动”和“跟随”其中之一。例如,针对图9的动态运载工具916,离散时间速率规划模块528可以确定“缩小间隙”的跟踪模式。例如,针对图11的分箱1116中的对象,跟踪模式可被确定为“制动”。可用跟踪模式可以包括更少、更多或其它的跟踪模式。跟踪模式可用于选择离散时间速率规划模块528所使用的调谐参数的集合。调谐参数可以包括目标加速度、迟滞参数和其它调谐参数。现在提供示例来示出离散时间速率规划模块528的操作。如果没有发现纵向约束,则离散时间速率规划模块528可以基于(如参考轨迹生成层504所确定的)策略性速率规划来判断为可以操作av。另一方面,如果(例如,针对图11的分箱1116中的对象)发现纵向约束(其中跟踪模式被确定为“制动”),则离散时间速率规划模块528计算速率分布以使av停止。也就是说,计算减速速率分布以使av停止。在示例中,速率分布使用av的当前速率以及到纵向约束的距离来计算减速速率分布,以在纵向约束之前使av停止。图14~16是根据本发明的实现的确定动态边界的示例1400、1500和1600。也就是说,图14~16是如针对图8的操作850所述的针对动态对象调整可驾驶区域的示例。也就是说,示例1400、1500和1600示出沿着av的粗驾驶线确定参考动态对象可以驾驶av的位置。各动态对象可被分类为多个可用类中至少之一。在示例中,可用类包括“横向约束”、“纵向约束”、“迎面而来的横向约束”和“迎面而来的纵向约束”。可使用其它类。被分类为“横向约束”的动态对象影响av的路径、但不影响速率。例如,动态对象可以正在一般与av的方向正交的方向上移动。也就是说,动态对象可以正从av的左侧或右侧移动,而不会阻碍(即,妨碍)av的路径。正因如此,诸如图5的轨迹规划器500等的轨迹规划器可能需要调整av的轨迹以避开动态对象。也就是说,av可能需要移动(在左侧或在右侧)以避免与动态对象碰撞。被分类为“纵向约束”的动态对象影响av的速率、但不影响路径。例如,动态对象可以正在一般与av相同的方向上移动,并且可以在av的路径中。也就是说,在av的当前速率下,纵向约束对象阻碍(即,妨碍)av的路径。正因如此,av的轨迹规划器可能无需调整av的轨迹,但可能需要(诸如通过轨迹规划器的离散时间速率规划模块528来)调整av的速率以避免与动态对象碰撞。纵向约束的示例是图9的动态运载工具916。也就是说,纵向约束对象可以是在av前面并且正以比av慢的速率移动的运载工具。正因如此,av将减慢,以避免追尾动态对象。迎面而来的横向约束对象与横向约束对象类似,其区别在于迎面而来的横向约束对象在与av的方向相反的方向上移动。图9中的迎面而来的动态运载工具918是迎面而来的横向约束对象的示例。在这种情况下,av可以移动(诸如针对图9的轨迹962所述)而无需减慢。迎面而来的纵向约束对象与纵向约束对象类似,其区别在于迎面而来的纵向约束对象在与av的方向相反的方向上移动。在这种情况下,并且如针对图16进一步所述,av停止。正因如此,图5的对象避开层506的模块532基于动态对象的分类来约束(即,施加约束至)av的离散速率规划。例如,阻塞av的轨迹的迎面而来的动态对象可被视为车道内(即,在与av相同的车道中)的静态对象。例如,领先动态对象(即,在av的前面并正在与av相同的方向上移动的动态对象)可被视为离散时间速率规划中的纵向约束。例如,靠近av的规划驾驶线的动态对象可被视为横向约束。在图14的示例1400中,av1402正沿着粗驾驶线1403移动。未发现静态对象。因此,作为如关于图10~12所述的针对静态对象调整可驾驶区域的计算边界的左边界1417和右边界1418与可驾驶区域的边界重合。运载工具1404被预测为从道路的右路肩(或从包括av1402的车道右侧的车道)沿着路径1420移动到av的路径中。正因如此,运载工具1404最初被分类为横向约束。运载工具1404的预测路径是粗驾驶线1403附近(例如,与粗驾驶线1403相邻)的路径1420。正因如此,模块532继续将运载工具1404分类为横向约束。模块532可以确定(例如,预测)av1402在不同离散时间点的位置。也就是说,模块532确定在不同时间点沿着粗驾驶线1403的到达位置。例如,在时间t处(例如,在一秒内),av1402被预测为处于位置1406处;在时间t+1处(例如,在两秒内),av1402被预测为处于位置1408处;并且在时间t+2处(例如,在3秒内),av1402被预测为处于位置1410处。虽然针对示例1400、1500和1600示出未来3秒(即,3秒的时间窗)处的位置,但是在给定预定时间窗的情况下,可以确定(例如,预测、计算等)更多或更少的位置。在示例中,时间窗为6秒。预测位置的频率也可能不同。在示例中,时间窗可以是6秒,并且可以每半秒确定位置。正因如此,预测了12个位置。如上所述,轨迹规划器的第二实例可以是跟踪运载工具1404(例如,预测运载工具1404的轨迹)。正因如此,第二轨迹规划器的模块532可以确定(例如,预测)运载工具1404的位置。例如,在时间t处(例如,在一秒内),运载工具1404被确定为处于位置1412处;在时间t+1处(例如,在两秒内),运载工具1404被确定为处于位置1414处;并且在时间t+2时(例如,在3秒内),运载工具1404被确定为处于位置1416处。在示例中,相同的时间窗和预测频率对于av的所有实例化轨迹规划器可以是相同的。然而,无需是这种情况。时间窗和频率可以取决于动态对象的类型(例如,自行车、行人、跑车、轿车、大卡车等)。调整av1402的可驾驶区域,以去除与运载工具1404的位置相对应的那些区域。在图14的示例1400中,判断为运载工具1404和av1402在相同时间大致处于相同位置。正因如此,诸如通过设置与路径1422相对应的分箱的边界(在本示例中为右边界),从av1402的可驾驶区域切出与路径1422相对应的部分。如针对图12的距离1212所述,如果距离1424使得av1402可以适合通过距离1424所定义的间隙,则av1402的驾驶线被调整通过该间隙(即,av1402被推送至左侧)。在图15的示例1500中,av1502正沿着粗驾驶线1503移动。未发现静态对象。因此,不针对静态对象调整可驾驶区域的左边界1517和右边界1518。然而,运载工具1504被预测为沿着路径1520从道路的右路肩(或从包括av1502的车道右侧的车道)移动到av1502的路径中。最初,例如,当运载工具1504被首次检测到时,其可被分类为横向约束。正因如此,如针对图14的运载工具1404所述,可以针对运载工具1504施加横向约束。如针对图15所述,av1502在时间t、t+1和t+2处的位置被分别预测为位置1506、1508和1510;并且运载工具1504在时间t、t+1和t+2处的位置被分别预测为1512、1514和1516。正因如此,运载工具1504的轨迹(即,路径1520)被预测为与av1502的粗驾驶线1503重叠。因此,运载工具1504然后被分类为纵向约束。正因如此,运载工具1504的分类从“横向约束”改变为“纵向约束”。正因如此,轨迹规划器无需改变av1502的轨迹以使得av1502向左移动(如上文针对图14所述);相反,离散时间速率规划模块528可以对av1502的粗驾驶线1503施加纵向约束。也就是说,离散时间速率规划模块528使用运载工具1504作为领先运载工具来计算离散时间速率规划。离散时间速率规划模块528可以设置“跟随”的跟踪模式,使得av1502跟随在运载工具1504之后。离散时间速率规划模块528还可以确定离散时间速率规划,以例如使av1502减速,使得av1502不会在运载工具1504之前到达位置1506。在图16的示例1600中,av1602正沿着粗驾驶线1603向东移动,而运载工具1604正向西移动。运载工具1604被预测为遵循路径1609,以避开停泊的运载工具1606。av1602沿粗驾驶线1603在时间t、t+1和t+2处的位置被分别预测为位置1610、1612和1614。运载工具1604沿路径1609在时间t、t+1和t+2处的位置被分别预测为1616、1618和1620。轨迹规划器判断为,av1602和运载工具1604被预测为在相同时间(即,在时间t+2处)大致处于相同位置(即,与位置1612、1618相对应的交叉位置)。正因如此,如果av1602继续沿着粗驾驶线1603,其最可能与运载工具1604碰撞。尽管在图16中未示出,但如针对图9的视图950中的切口956所述,调整(即,切出)示例1600的可驾驶区域。也就是说,调整av1602的可驾驶区域,以诸如通过设置与路径1609相对应(即重叠)的分箱的边界(在本示例中为左边界)来去除与运载工具1604的位置相对应的那些区域。在交叉位置(即,1612、1618)处,轨迹规划器可以评价交叉点与可驾驶区域的边缘之间的可驾驶区域的宽度。也就是说,轨迹规划器评价距离1622以判断距离1622所定义的间隙是否足够大以使得av1602可以通过。如上所述,距离1622是包括交叉点的分箱1608的计算边界之间的距离。在距离1622被判断为不够大(即,间隙太小)的情况下,轨迹规划器确定av1602可以通过运载工具1604的位置。在示例中,对于av1602的至少一些预测位置,从交叉点(例如,时间t+x处的位置,其中x是正整数)开始并在时间上回溯(例如,时间t+x-1、t+x-2、...、t-1、t处的至少一些位置),轨迹规划器判断在该位置处,av1602是否可以通过运载工具1604。在示例1600中,轨迹规划器判断为在位置1610处av1602可以通过运载工具1604。在另一示例中,对于运载工具1604的至少一些预测位置,从交叉点(例如,时间t+x处的位置,其中x是正整数)开始并在时间上向前(例如,时间t+x+1、t+x+2、...、t+x+n处的至少一些位置),轨迹规划器判断在该位置处,av1602是否可以通过运载工具1604。轨迹规划器判断为,当运载工具1604处于位置1620时,av1602可以通过运载工具1604。正因如此,轨迹规划器(更具体地,模块530)在位置1624处设置静态阻塞。然后,轨迹规划器(更具体地,离散时间速率规划模块528)确定速率和/或减速度分布,以使av1602在位置1624处停止。正因如此,av1602在位置1624处停止,直到运载工具1604到达位置1624为止,此时av1602可以沿着粗驾驶线1603前进。在距离1622被判断为足够大的情况下,轨迹规划器可以调整粗驾驶线1603,使得av1602向左移动以在交叉位置处避开运载工具1604,诸如如针对图9的视图960中的轨迹962所示。正因如此,在示例中,对象避开层506系统地处理对象。如果对象不是约束,则对象避开层506可以忽略该对象。如果对象是静态对象并且调整后的可驾驶区域是可通过的(例如,av可以视情况通过可驾驶区域或调整后的可驾驶区域中的一个或多个间隙),则模块530可以施加静态约束(例如,横向约束)来确定调整后的可驾驶区域,如例如针对图12的距离1212所述。如果对象是静态对象并且可驾驶区域(或调整后的可驾驶区域)是不可通过的,则离散时间速率规划模块528可以调整离散时间速率分布,如例如针对图11的位置1122所述。如果对象是动态对象并且对象是横向约束,则模块532可以调整可驾驶区域(或调整后的可驾驶区域),如例如针对图15所述。如果对象是动态对象并且该对象是纵向约束,则离散时间速率规划模块528可以调整离散时间速率分布,如例如针对图16所述。在给定约束的情况下,离散时间速率规划模块528可以生成针对未来窗的离散时间速率规划(例如,针对未来6秒的速率规划)。返回图5,轨迹优化层508进行诸如约束操作等的优化操作,以基于约束来确定av的最优轨迹。轨迹优化层508可以使用(即,作为优化操作的输入)av的运动模型(例如,运动学运动模型)、粗驾驶线(例如,图10的粗驾驶线1004、图11的粗驾驶线1103、图14的粗驾驶线1403等)和/或沿粗驾驶线的分箱的中心点(例如,中心点1006)以及调整后的可驾驶区域(例如,调整后的可驾驶区域的左边界和右边界),以计算(例如,确定、生成等)av的最优轨迹。正因如此,最优轨迹考虑了粗驾驶线以及沿粗驾驶线(在给定静态对象和动态对象的情况下)的左边界和右边界。图17示出根据本发明的实现的轨迹规划的附加示例1700。在以下的各示例中,诸如图5的轨迹规划器500等的一个或多个轨迹规划器可以在自主运载工具内执行。轨迹规划器的第一实例确定自主运载工具本身的轨迹。第二轨迹规划器实例预测至少一个外部动态对象的相应参考驾驶线。为了简化解释,这里使用“轨迹规划器”来指代第一实例和/或第二实例。在第一示例中,av1702的轨迹规划器预测到,迎面而来的运载工具1704将遵循轨迹1706以避开静态对象1705。轨迹规划器进一步判断为,如针对图16所述,av1702不能在迎面而来的运载工具1704的轨迹和可驾驶区域的右边界之间的间隙中通过。正因如此,轨迹规划器确定如下的速率规划,该速率规划使av1702在静态阻塞1708处停止,直到迎面而来的运载工具1704经过静态阻塞1708为止。在第二示例中,av1710判断为(即,通过av的轨迹规划器判断为)动态对象1712将遵循路径1714。轨迹规划器判断为av1710不能在没有跨越道路的中心线的情况下通过动态对象1712,其中中心线可以是可驾驶区域的左硬边界(如针对图9的可驾驶区域932所述)。正因如此,av1710的轨迹规划器确定使av1710在静态阻塞1716处停止的速率规划。在另一示例中,av1710没有停止在静态阻塞1716处;相反,av1710减慢到足以允许动态对象1712通过。在第三示例中,av1720判断为迎面而来的动态对象1722将遵循轨迹1724。av1720进一步确定av1720的轨迹1730,使得av1720沿着轨迹1730导航至第一静态对象1726和第二静态对象1728之间,其中av1720将在静态阻塞1732处等待计算出的秒数,然后前进。计算出的秒数是足够用于迎面而来的动态对象1722通过静态阻塞1732的位置的时间,诸如针对图16的位置1624所述。在第四示例中,av1734判断为大的动态对象1736正在右转弯。av1734的轨迹规划器使用大的动态对象1736的运动模型确定为大的动态对象1736需要大的转弯半径,正因如此,大的动态对象1736将遵循轨迹1738。因此,确定(例如,计算、生成等)av1734的速率规划,使得av1734在静态阻塞1740处停止,直到大的动态对象1736通过av1734的路径为止。总之,根据本发明的轨迹规划器(例如,轨迹规划器的驾驶线数据层)可以确定(例如,生成、计算、选择等)参考(即,粗)驾驶线。轨迹规划器可以将多个输入数据融合在一起,以确定粗驾驶线。正因如此,粗驾驶线可被称为多源的(即,来自多种类型的输入数据)。输入数据可以包括hd地图数据、遥操作数据、记录路径数据、在前运载工具数据、停泊场数据和局部感知数据。轨迹规划器可以使用更少、更多或其它的输入。轨迹规划器(例如,轨迹规划器的粗驾驶线级联层)可以生成(例如,确定、计算等)沿粗驾驶线的包括特定速率值的策略性速率规划。轨迹规划器可以使用道路曲率、道路mu、运载工具速率和/或加速度限制、最小巡航时间、邻域类型以及更多、更少或其它的输入中至少之一来生成策略性速率规划。轨迹规划器(例如,轨迹规划器的粗驾驶线级联层)基于硬边界(其基于静态和/或动态对象而设置)、软边界(例如,车道标记)、滤波后的横向限制、多假设跟踪、可扩展可驾驶区域检查和动态对象分类(例如,将对象分类为迎面而来的运载工具、领先运载工具或横向约束)中的至少一个或多个,来确定av的调整后的可驾驶区域。轨迹规划器(例如,轨迹规划器的离散时间速率规划模块)使用例如自然加速度分布(例如,av的运动模型)、领先运载工具加速度分布以及限制纵向约束的判断来确定(例如,计算)离散时间速率规划。轨迹规划器(例如,轨迹规划器的优化期望轨迹层)使用例如约束优化操作来生成(例如,计算、确定等)av的优化轨迹。在示例中,优化操作可以基于或可以包括二次罚函数。在示例中,优化操作可以基于或可以包括对数障碍函数。例如,二次罚函数可以与软约束一起使用。例如,对数障碍函数可以与硬约束一起使用。图18是根据本发明的用于对象避开的处理1800的流程图。处理1800可以由轨迹规划器(诸如图5的轨迹规划器500)执行。在操作1810处,处理1800检测沿着av的可驾驶区域的粗驾驶线的第一对象。在示例中,检测第一对象可以意味着检测与对象相对应的边界点,诸如图10的边界点1008。在示例中,检测对象可以意味着(例如,通过询问)从世界模型(诸如针对图4的世界模型模块402所述)接收对象。粗驾驶线可以例如如针对图10的粗驾驶线1004、图11的粗驾驶线1103和图12的粗驾驶线1203等所述。可驾驶区域可以如针对图9的可驾驶区域932所述。在操作1820处,处理1800接收第一对象的预测路径。在示例中,处理1800基于第一对象的分类和第一对象的运动模型来确定第一对象的预测路径。在另一示例中,处理1800从预测第一对象的路径的轨迹规划器接收第一对象的预测路径。预测路径可以如针对图3的轨迹336、轨迹346、轨迹354和轨迹364、图14的路径1420、图15的路径1520以及图16的路径1609所述。在操作1830处,处理1800基于第一对象的预测路径来确定调整后的可驾驶区域。在示例中,并且如上所述,可以从可驾驶区域中切出部分以生成调整后的可驾驶区域。在另一示例中,诸如在第一对象既不是横向约束也不是纵向约束的情况下,如上所述,调整后的可驾驶区域可以与可驾驶区域相同。在操作1840处,处理1800确定av通过调整后的可驾驶区域的轨迹。轨迹可以如针对图5的轨迹优化层508所述地确定。在示例中,基于第一对象的预测路径确定调整后的可驾驶区域可以包括将粗驾驶线的至少一部分分割为分箱,将第一对象分配给分箱中的一个分箱,以及基于该一个分箱来确定调整后的可驾驶区域。分箱可以例如如针对图10所述。基于该一个分箱确定调整后的可驾驶区域可以包括确定(例如,计算)至少针对该一个分箱的边界,诸如上文所述。在示例中,基于第一对象的预测路径确定调整后的可驾驶区域可以包括确定第一对象在离散时间间隔处的相应对象位置,确定av在离散时间间隔处的相应av位置,以及基于相应对象位置和相应av位置来确定调整后的可驾驶区域。第一对象的相应对象位置、av位置以及确定调整后的可驾驶区域可以如针对图14~16所述。在示例中,处理1800可以包括对第一对象进行分类。在另一示例中,处理1800可以诸如从世界模型模块402等接收对第一对象的分类。在第一对象被分类为迎面而来的纵向约束的情况下,确定av通过调整后的可驾驶区域的轨迹可以包括使av停止直到第一对象的对象位置与av的av位置相遇的第一时间之后的第二时间为止,诸如针对图16所述。在第一对象被分类为纵向约束的情况下,确定av通过调整后的可驾驶区域的轨迹可以包括使av减慢以在第一对象后驾驶,诸如针对图15所述。在示例中,处理1800还可以包括将第一对象分类为横向约束、纵向约束、迎面而来的横向约束或迎面而来的纵向约束。在示例中,确定av通过调整后的可驾驶区域的轨迹可以包括判断为第一对象是静态阻塞并且使av停止,诸如针对图16所述。图19是根据本发明的实现的针对现实世界对象的假设的示例1900的图。示例1900包括示例1910、1930、1940、1950和1960,其中预测观察到的现实世界对象的假设(即,意图)。示例1910示出av1912。av1912(更具体地,av1912的世界模型模块)检测到迎面而来的动态对象1914。av1912预测到,迎面而来的动态对象1914可以遵循路径1918或路径1920以使得迎面而来的动态对象1914可以避开停泊运载工具1916。正因如此,av1912可以将第一假设(例如,与路径1918相对应的“停止”)和第二假设(例如,与路径1920相对应的“从左侧绕过”)与迎面而来的动态对象1914相关联。第一假设表示,迎面而来的动态对象1914要在停泊运载工具1916之后停止。第二假设表示,迎面而来的动态对象1914阻碍av1912的轨迹。正因如此,如果如上所述,轨迹规划器接收路径1920作为迎面而来的动态对象1914的预测路径,则轨迹规划器将迎面而来的动态对象1914分类为迎面而来的纵向约束。av1912可以将可能性与路径1918、1920中的每一个相关联。在示例中,可以向路径1918分配0.2的可能性,并且可以向路径1920分配0.8的可能性。正因如此,迎面而来的动态对象1914有20%的几率将继续向前直行并在到达停泊运载工具1916之前停止和/或减慢;并且迎面而来的动态对象1914有80%的几率将绕过停泊运载工具1916。示例1930示出av1932。av1932(更具体地,av1932的世界模型模块)检测相邻对象1933。相邻对象1933可被分类为大卡车。使用地图数据(如下文进一步所述),av1932判断为在位置1934处存在道路交叉。正因如此,av1932可以将第一假设(例如,与路径1938相对应的“直行”)和第二假设(例如,与路径1936相对应的“右转弯”)与相邻对象1933相关联。如下文进一步所述,可以使用正在右转弯的大卡车的处理模型(例如,运动模型)来预测路径1936的轨迹。av1932可以将可能性与第一假设和第二假设中的每一个相关联。在示例中,可以向第一假设分配0.6的可能性,并且可以向第二假设分配0.4的可能性。正因如此,卡车有60%的几率在交叉处继续向前移动,并且卡车有40%的几率在交叉处右转弯。如下文进一步解释,各假设的可能性可以基于状态信息来确定。在简单的示例中,如果相邻对象1933似乎没有随时间减慢,则第二假设(即,“右转弯”)的可能性降低。示例1940示出av1942。av1942检测到自行车1946。也就是说,av1942检测到被分类为“自行车”的对象。av1942还检测到停泊运载工具1944。正因如此,av1932可以将第一假设(例如,与路径1948相对应的“绕过”)与自行车1946相关联。正因如此,如上所述,自行车1946可以由轨迹规划器分类为横向约束或纵向约束。由于仅一个假设与自行车1946相关联,因此可以向该一个假设分配1(例如,100%)的可能性。示例1950示出av1952。av1952检测到运载工具1954。也就是说,av1952检测到被分类为“运载工具”的对象。av1952可以(例如,基于地图数据)判断为道路包括两个车道(即,车道1953a和车道1953b)。正因如此,av1932可以将第一假设(例如,与路径1958相对应的“直行”,使得运载工具1954留在车道1953b)和第二假设(例如,与路径1956相对应的“变换为左车道”,使得运载工具1954移动到车道1953a)相关联。av1952可以将可能性与第一假设和第二假设中的每一个相关联。在示例中,可以向第一假设分配0.3的可能性,并且可以向第二假设分配0.7的可能性。正因如此,运载工具1954有30%的几率留在车道1953b中,并且运载工具1953有70%的几率将移动到车道1953a。如下文进一步解释,各假设的可能性可以基于状态信息来确定。示例1960示出av1962。av1962检测到运载工具1964。也就是说,av1962检测到被分类为“运载工具”的对象。av1962可以(例如,使用地图数据)将第一假设(例如,与运载工具1964右转弯到车道1963a上以遵循路径1966相对应的“右转弯”)和第二假设(例如,与运载工具1964左转弯到车道1963b上以遵循路径1968相对应的“左转弯”)与运载工具1964相关联。在示例中,第一假设可被分配0.2的可能性,并且第二假设可被分配0.8的可能性。正因如此,运载工具1964有20%的几率将右转弯,并且运载工具1964有80%的几率将左转弯。图20包括根据本发明的用于世界建模的处理2000的流程图。处理2000包括后述的操作2002~2012。处理2000可以由世界模型模块(诸如图4的世界模型模块402)实现。处理2000可被存储在存储器(诸如图1的存储器122)中,作为可由av(诸如图1的运载工具100)的处理器(诸如图1的处理器120)执行的指令。处理2000维持针对现实世界对象(诸如上述的动态对象)的一个或多个假设。处理2000可以使至少一些现实世界对象的至少一些假设维持在相应状态(例如,与相应状态相关联)。在给定先前测量(例如,接收到的传感器观察)的情况下,针对各假设,处理2000估计相关现实世界对象的状态并预测未来对象状态。处理2000维持(例如,计算、确定或以其它方式维持)各假设的可能性,并在接收到新的传感器观察时更新该可能性。处理2000可以将一个或多个假设、所检测到的对象和相关状态维持在数据存储部(诸如数据存储部2014)中。数据存储部2014可以存储在存储器(诸如图1的存储器122)中。数据存储部2014可以例如是诸如关系数据库等的数据库、文件存储部或任何适当的数据存储部。可以在新的传感器测量可用时、按调度(诸如每几毫秒)、这两者的组合的方式、或在其它条件下执行处理2000。可以使用基于粒子滤波的算法、作为基于粒子滤波的算法或作为基于粒子滤波的算法的步骤来实现处理2000中的一些步骤。粒子滤波是用于基于对象状态的观察来跟踪(例如,预测)对象状态的技术。在示例中,可以使用rao-blackwellized粒子滤波器(rbpf)方法。处理2000可以使用粒子来表示假设。rbpf使用被分配给粒子的权重。正因如此,假设的可能性可以用作表示假设的粒子的权重。正因如此,由于多个假设可以与现实世界对象相关联,因此现实世界对象可以由一组加权粒子组成(各加权粒子对应于现实世界对象的假设)。处理2000可以接收输入2001。输入2001可以包括传感器数据(即,传感器观察),诸如来自一个或多个传感器126的测量。传感器数据可用于检测现实世界对象。也就是说,例如,传感器数据可用于判断为在av的视野内存在现实世界对象。在示例中,处理2000使用传感器数据来确定所检测到的对象的姿势和速度。处理2000可以使用传感器数据来确定(例如,分配)对所检测到的对象的分类。处理2000可以使用传感器数据来确定(例如,计算、估计)所检测到的对象的几何形状。在示例中,可以使用来自一个或多个照相机的数据来确定所检测到的对象的类。类的非限制性示例包括“汽车”、“跑车”、“轿车”、“大卡车”、“行人”和“自行车”。在另一示例中,可以基于随时间的运动或随时间的lidar数据(例如,lidar点云)来分配分类。在示例中,神经网络(诸如卷积神经网络)可以用于所检测到的对象的对象识别(例如,分类)。其它方法可用于确定与对象相关联的传感器数据的分类。注意,不同的传感器数据可以提供不同的对象分类。例如,可以基于lidar数据来确定第一分类“自行车”,并且可以基于照相机数据来确定第二分类“慢跑者”。因此,可以概率性地确定对象的分类(例如,第一分类和第二分类中的哪一分类更有可能)。正因如此,将不同传感器数据融合在一起以确定分类。由于分类是概率性的,因此对象的分类可以随时间改变。在一些实现中,处理2000可以针对至少一些可能分类维持假设。在实现中,处理2000接收所检测到的对象的姿势和速度作为输入。在实现中,处理2000接收所检测到的对象的几何形状和分类中的一个或多个作为附加输入。正因如此,分类可以作为输入被接收到,而不是由处理2000确定。输入2001也可以包括地图信息。地图信息可以是hd地图数据(诸如针对图5的hd地图数据510所述)、感知路径数据(诸如针对图5的感知路径数据520所述)、其它地图信息或其组合。地图信息可以包括地图车道结构(这里也称为道路结构)。给定车道的地图车道结构可以包括后继车道信息、前导车道信息和同辈车道信息。图19现用于提供说明性示例。车道1953a和车道1953b是同辈车道。车道1963a和车道1963b是车道1970的可能后继车道。正因如此,地图车道结构包括与道路的车道如何连接有关的信息。地图车道结构可用于确定所检测到的对象可采取(例如,遵循)的可能车道组合。也就是说,地图车道结构可用于确定所检测到的对象的可能路径。输入2001还可以包括环境信息。环境信息可以包括与av正行进的运载工具运输网络的不可导航区域有关的信息。例如,环境信息可以包括停泊场的位置,诸如针对图5的停泊场数据518所述。环境信息可用于为所检测到的对象添加(例如,创建)一个或多个假设。例如,如果停泊场在所检测到的对象的预定距离内,则可以为所检测到的对象添加“进入停泊场”假设。如上所述,处理2000针对假设维持相应的状态信息。也就是说,例如,对于各所观察到的(例如,所检测到的)对象(例如,运载工具、自行车),处理2000维持针对对象状态的一个或多个假设。对于各假设,处理2000可以维持对象状态(即,基于历史测量的当前状态)以及对未来对象状态的预测。如上所述,对象状态可以包括离散对象状态信息和连续对象状态信息。离散对象状态信息可以包括分类(例如,“汽车”、“自行车”、“行人”等)和意图(例如,“向右”、“左转弯”等)。离散对象状态信息可以包括更多、更少或附加的信息。连续对象状态信息在给定先前测量的情况下提供连续状态的估计。连续对象状态信息可以包括与作为动态(例如,速度、加速度)、运动学(例如,姿势、位置、取向)、几何形状(例如,对象的界定框的长度、宽度和/或高度)或外观状态的更多、更少或其它的连续状态相关的估计。外观可以包含对象的颜色。在示例中,如果当前颜色被确定为黑色并且稍后接收到的传感器观察指示红色,则这样的信息可用于判断传感器观察是否与对象相关联。诸如“红色”等的颜色可以作为标记来跟踪。颜色可以作为诸如红色、绿色和蓝色(rgb)值等的一组颜色值来跟踪。在示例中,当前外观状态可以指示颜色值(255,0,0),该颜色值(255,0,0)基于接收到的传感器观察而被更新为(254.37,0,0)。正因如此,外观是连续变量。可以针对指定结束时间提供对未来对象状态的预测。例如,处理2000可以针对各假设预测与假设相关联的对象的相应轨迹,并预测对象沿着该轨迹在直到指定结束时间的离散时间点处的状态。预测状态包括预测位置、预测速度、预测航向等。然而,为了便于解释,描述了预测位置。例如,指定结束时间可以是6秒,并且处理2000可以预测对象在直到6秒的每0.5秒增量处的位置。正因如此,可以预测对象的12个位置。在示例中,位置可以由对象的(x,y)坐标定义。该位置可以相对于av的当前位置。如上所述,处理2000可以为各假设分配(例如,计算、确定或以其它方式分配)可能性。为了说明上述情况,现在给出由处理2000针对汽车(即,被分类为“汽车”的所检测到的对象)维持的假设的示例。假设包括假设1和假设2。假设1包括离散对象状态信息:分类=“汽车”和意图=“在下一个交叉路口直行”。连续对象状态信息包括位置=(10,25)(即,av前方10米和右侧25米)以及速度=65mph。假设1还可以包括针对汽车在接下来的n秒(即,指定结束时间)内的位置的预测。正因如此,假设1包括从t=t(即,当前时间)到t=t+n的对象状态。另外,汽车有60%的可能性将遵循假设1的意图(即,“在下一个交叉路口直行”)。假设2包括离散对象状态信息:分类=“汽车”和意图=“在下一个交叉路口右转弯”。连续对象状态信息包括位置=(10,25)和速度=45mph。假设2还可以包括对汽车在接下来的n秒(即,指定结束时间)内的位置的预测。正因如此,假设2包括从t=t(即,当前时间)到t=t+n的对象状态。另外,汽车有40%的可能性将遵循假设2的意图(即,“在下一个交叉路口右转弯”)。注意,当对象被首次创建时,为对象创建的任何假设可以具有相同的初始位置和速度。然而,当跟踪对象(例如,更新与对象相关联的假设的状态)时,与不同假设相关联的位置和/或速度可能不同。在操作2002处,处理2000创建并维持针对至少一些检测到的现实世界对象的假设。这些假设可以维持在数据存储部2014中。由于现实世界对象的位置变化(例如,如下文针对接收到的传感器观察进一步所述),因此与现实世界对象相关联的一个或多个假设可能变化。例如,一些假设可能变得无效(例如,不可能或具有非常低的可能性)。例如,如果现实世界对象左转弯(或几乎肯定左转弯),则与意图“在下一个交叉路口右转弯”相关联的假设变为无效。一些附加假设可能需要基于现实世界对象左转弯来创建。如上所述,使用地图信息(例如,hd地图数据、感知地图数据等)、环境信息数据和/或其它地图信息来创建和维持假设。图21是根据本发明的实现的创建和维持假设的示例2100。示例2100描绘了运载工具2102(即,由执行处理2000的av检测到的现实世界对象)穿过运载工具运输网络的一部分、即道路2104。视图2110示出运载工具2102在时间t=0处的位置。在t=0处,运载工具2102在道路2104的岔口2112之前。正因如此,使用从地图信息中获得的地图车道结构,处理2000可以判断为,一旦运载工具2102到达岔口2112,运载工具2102就可以“向左”(对应于标记为“1”的路径)、“直行”(对应于标记为“2”的路径)或“向右”(对应于标记为“3”的路径)。正因如此,处理2000可以(诸如在数据存储部2014中)为运载工具2102创建三个假设;即分别对应于标记为1、2和3的路径的假设1、假设2和假设3。如上所述,针对各假设确定(例如,计算、设置或以其它方式确定)状态信息。视图2120示出运载工具2102在时间t=1处的位置。在t=1处,由于运载工具2102不能再“向左”,因此假设1(诸如从数据存储部2014中)去除。如果av遵循“直行”意图(即,假设2),则处理2000可以使用地图信息判断为运载工具2102可以“直行”(对应于标记为“4”的路径)或“向右”(对应于标记为“5”的路径)。正因如此,在运载工具2102到达岔口2122处之后,处理2000将假设2替换为分别对应于标记为“4”和“5”的路径的假设4和假设5。如果av遵循“向右”意图(即,假设3),则处理2000可以使用地图信息判断为运载工具2102在到达岔口2124后可以“向左”(对应于标记为“6”的路径)、“直行”(对应于标记为“7”的路径)或“向右”(对应于标记为“8”的路径)。正因如此,处理2000将假设3替换为分别对应于标记为“6”、“7”和“8”的路径的假设6、假设7和假设8。在示例中,处理2000可以基于包括运载工具2102的姿势、速度和位置的因素判断为运载工具2102的假设不再可行(或以可忽略不计的可能性可行)。可忽略的可能性可以是低于阈值可能性的可能性。可以使用更多、更少或其它的因素来确定假设的可行性。在示例中,阈值可能性可以是小于10%的阈值。例如,在t=t1处,由于运载工具2102的取向被估计为一般向东北,并且可能正以45mph的估计速度行进,因此运载工具2102仍然可以遵循假设1的意图的可能性可忽略不计。视图2130示出运载工具2102在时间t=2处的位置。在t=2处,由于运载工具2102不能再遵循假设4和5的意图,因此假设4和5(诸如从数据存储部2014中)去除。去除假设可以意味着从数据存储部2014中删除该假设。去除假设可以意味着将该假设设置为非活动状态以使得该假设不再被处理2000的操作使用。维持假设6、7和8。维持假设可以包括更新假设的可能性。在简单的示例中,如果假设4、5、6、7和8是同样可能的,则假设4、5、6、7和8中的每一个将具有20%的可能性。假定假设6、7和8在假设4和5被去除后仍然同样有可能,则假设6、7和8中的每一个将具有33%的可能性。再次参考图20,在操作2004处,处理2000预测现实世界对象的轨迹。也就是说,处理2000针对现实世界对象的各假设预测相关轨迹。在操作2004处,处理2000可以确定(例如,从数据存储部2014中读取或提取)现实世界对象的假设,针对各假设生成(或使用)参考驾驶线,并针对各参考驾驶线生成预测轨迹。轨迹规划器的一个或多个实例(诸如图5的轨迹规划器500)可用于生成参考驾驶线。针对图22进一步描述操作2004。如上所述,与现实世界对象相关联的假设包括意图和状态信息,其中状态信息包括分类。在示例中,基于对象的分类的运动模型可用于预测意图的轨迹。图22是根据本发明的实现的轨迹预测的示例。示例2200示出操作2004。示例2200示出运载工具2202(即,现实世界对象)。处理2000(诸如在数据存储部2014中)维持针对运载工具2202的两个假设,即假设1(即,与“直行”意图相对应的假设2204)和假设2(即,与“右转弯”意图相对应的假设2206)。对于至少一些假设,处理2000(在操作2004处)可以首先确定参考驾驶线。例如,在可以无需参考驾驶线而预测轨迹的情况下,可以不针对假设确定参考驾驶线。例如,在参考驾驶线生成器(例如,轨迹规划器或某个其它参考驾驶线生成器)不可用的情况下,可以不针对参考驾驶线确定参考驾驶线。各假设的参考驾驶线可以例如是与假设的意图相对应的车道中心。正因如此,针对运载工具2202的假设1预测参考驾驶线2208,并且针对运载工具2202的假设2预测参考驾驶线2210。对于各参考驾驶线,处理2000确定(例如,计算、预测)轨迹(例如,诸如针对图5的轨迹规划器500所述的平滑轨迹)。与假设相关联的状态可用于确定该假设的轨迹。正因如此,轨迹2212被预测为使得运载工具2202预期从其当前位置导航到参考驾驶线2208上(例如,与参考驾驶线2208合并),以使运载工具2202遵循参考驾驶线2208;并且轨迹2214被预测为使得运载工具2202预期从其当前位置导航到参考驾驶线2210上,以使运载工具2202遵循参考驾驶线2210。在另一示例中,操作2004可以使用操作2016所生成的参考驾驶线。在这种情况下,操作2004使用操作2016所生成的参考驾驶线来确定轨迹。操作2016可以是与处理2000分开执行的异步处理。再次参考图20,在操作2004处,处理2000将接收到的传感器观察与现实世界对象相关联。处理2000接收新的传感器观察。传感器观察可以例如与从多个传感器读数融合的数据相对应。传感器观察可以指示所观察到的对象的位置。处理2000判断传感器观察与维持(诸如在数据存储部2014中)的哪个现实世界对象(如果存在的话)相对应。如果传感器观察被判断为不与任何维持的现实世界对象相对应,则处理2000可以(例如,在数据存储部2014中)创建与传感器观察相对应的新的现实世界对象,如下文针对操作2012进一步所述。处理2000可以通过以下步骤将接收到的传感器观察与现实世界对象相关联:定义各观察周围的门控(gating)区域;计算测量可能性矩阵;以及确定对象状态与测量的关联(或等效地,假设与测量的关联)。针对图23进一步描述操作2004。图23是根据本发明的实现的将传感器观察与现实世界对象相关联的示例2300。视图2310示出,在时间t=t处,处理2000接收传感器观察2320、2322和2324。观察是对物理世界的新测量。在操作2004处,处理2000尝试针对各观察回答以下问题:观察与哪个现实世界对象相对应(即,观察与哪个现实世界对象相关联)?如上所述,处理2000预测各假设的未来状态(包括位置)。当处理2000接收到传感器观察时,处理2000基于从物理世界接收到的观察来更新预测。可以通过根据预测状态和传感器观察计算(例如,测算)更新状态来更新预测。下表i示出与视图2310相对应并由处理2000在t=t(即,处理2000接收到传感器数据的时间)处维持的假设。在时间t=t处,处理2000维持了四个假设,即假设1、2、3和4。为了便于参考,表i的假设按顺序编号。然而,例如将假设2读取为“与对象2相关联的第一假设”并将假设3读取为“与对象2相关联的第二假设”可以更加准确。现实世界对象假设意图预测位置对象1假设1“直行”2312对象2假设2“直行”2314对象2假设3“右转弯”2316对象3假设4“直行”2318表i假设1与“对象1”(例如,汽车)的“直行”意图相对应,其预测为对象1在时间t=t时处于位置2312。假设2和3是针对同一对象“对象2”(例如,摩托车)维持的两个假设。假设2与“对象2”的“直行”意图相对应,其预测为对象2在时间t=t时处于位置2314。假设3与“对象2”的“右转弯”意图相对应,其预测为对象2在时间t=t时处于位置2318。假设4与“对象3”(例如,卡车)的“直行”意图相对应,其预测为对象3在时间t=t时处于位置2318。示例2300的视图2330示出定义门控区域。为了减少图23中的杂乱,在视图2330中省略了视图2310和2330的同位图形实体(即,位置和传感器观察)的数字。在示例中,门控区域是所接收到的各观察周围的门控区域。观察周围的门控区域定义了传感器观察附近(即,近端)的现实世界对象的搜索区域。更具体地,观察周围的门控区域定义了如下的搜索区域,该搜索区域包括现实世界对象的预测位置。也就是说,观察周围的门控区域定义了如下的区域,该区域可以包括基于预测位置的现实世界对象(例如,数据存储部2014中所维持的对象)并且可能与观察相关联。门控区域用作用以滤除(即,排除)由于距离传感器观察太远因而不太可能与传感器观察相关联的对象(或更具体地,假设)的第一个通道。对于与传感器观察相关联的对象,对象(即,对象的预测位置)预期接近传感器观察。在示例中,观察周围的门控区域可以是圆形。正因如此,视图示出以传感器观察2320为中心的门控区域2332、以传感器观察2324为中心的门控区域2334、以及以传感器观察2322为中心的门控区域2336。在示例中,门控圆的半径可以是10米。视图2330示出,对象1和对象3很可能与传感器观察2320相关联,因为对象1和对象3在时间t=t处的预测位置被门控区域2332包含;对象2的假设2和3与对象3很可能与传感器观察2324相关联,因为假设2和3下的对象2的预测位置被门控区域2334包含;并且对象2(即,假设2和3)也很可能与传感器观察2322相关联,因为对象2(在假设2和3下)的预测位置被门控区域2336包含。在另一示例中,可以在现实世界对象的预测位置周围、而不是在观察周围绘制(未示出)门控区域。预测位置周围的门控区域的大小(例如,半径)可以取决于现实世界对象的状态。例如,假设下的对象状态的速度和位置(例如,连续状态信息)可用于确定半径。例如,半径可以基于从时间t=t-1(例如,接收先前传感器观察的时间)到t=t(例如,当前时间)的最大可能行进距离来设置。操作2006现在可以计算传感器观察与现实世界对象之间的关联的可能性。操作2006可以确定可能关联的可能性值。现实世界对象的动力学可以用来计算可能性。例如,可以使用与速度、位置、姿势、行进方向和几何形状相比更多、更少或不同的动力学(例如,对象状态信息)。例如,如果对象在假设下被分类为“汽车”、并且传感器观察指示相关对象是大对象(例如,指示卡车),则观察不太可能与该对象相关联。例如,如果对于给定假设,对象状态包括对象正以65mph的速率“直行”,则在对象的预测位置之后20米处的传感器观察不太可能与给定假设相关联。在示例中,操作2006计算测量可能性矩阵。表ii示出测量可能性矩阵的示例。表ii中的值是对象的假设和传感器观察之间的可能性的加权和。例如,假定(对象2的)假设2的权重为0.75并且(对象2的)假设3的权重为0.25,并且进一步假定假设2和传感器观察2322之间的测量可能性(如下文所述地计算)为0.1并且假设3和传感器观察2322之间的测量可能性为0.3,则对象2和传感器观察2322之间的测量可能性值可被计算为(0.1×0.25)+(0.3×0.75)=0.25。也就是说,对象2和传感器观察2322之间的测量可能性等于(假设2和传感器观察2322之间的测量可能性)×(假设2的权重)+(假设3和传感器观察2322之间的测量可能性)×(假设3的权重))。传感器观察2320传感器观察2322传感器观察2324对象10.6对象20.250.7对象30.30.15表ii如上所述,使用门控区域,确定五个有可能(可能)的关联。正因如此,表ii包括每个可能的关联的相应可能性。然而,也如上文所指示的,基于对现实世界对象的预测或估计动力学,一些可能性可能不会被计算或可能设置为零。表ii示出,对象1有0.6的可能性与传感器观察2320相关联;对象2有0.25的可能性与传感器观察2322相关联;对象2有0.7的可能性与传感器观察2324相关联;对象3有0.3的可能性与传感器观察2320相关联;并且对象3有0.15的可能性与传感器观察2324相关联。如下文进一步解释,由于噪声,因此传感器观察和预测状态(例如,预测位置)可能不准确。如上所述,预测状态包括预测位置、预测速度、预测航向等。但是,为了便于解释,描述了预测位置。正因如此,传感器观察位置(xo,yo)和预测位置(xp,yp)可以各自被绘制为高斯分布。传感器观察可被建模为在(xo,yo)处具有不确定性和均值的高斯分布(即,观察分布)。与传感器测量相关联的不确定性可被给出为测量模型(例如,由测量模型定义)。传感器的测量模型对从传感器接收到的测量的特性(例如,噪声)进行建模。传感器观察可被建模为在(xp,yp)处具有不确定性和均值的高斯分布(即,预测分布)。两个高斯分布可以组合,以确定预测位置是观察位置的可能性。在示例中,可以基于最高可能性来判断关联。正因如此,对象1被判断为与传感器观察2320相关联(如关联2338所示);并且对象2被判断为与传感器观察2324相关联(分别如针对假设2和假设3的关联2340和关联2342所示)。正因如此,对象3不与任何传感器观察相关联,并且传感器观察2322不与处理2000所维持的任何现实世界对象相关联。可以使用式(1)来计算测量可能性:在式(1)中,μx是预测分布的均值,σx是预测分布的标准偏差,μm是观察分布的均值,以及σm是观察分布的标准偏差。再次参考图20,在操作2008处,处理2000更新一些假设的可能性。处理2000更新在操作2006处被发现为与接收到的传感器观察相关联的假设(或等效地,对象)的可能性。也就是说,处理2000基于与对象相关联的新传感器观察来判断对象是更可能还是较不可能遵循假设的意图。如针对表ii所述的测量可能性可用于在操作2008处更新假设的可能性。也就是说,测量可能性可用于更新粒子的权重。如前所述,粒子的权重与粒子所表示的假设的可能性相对应。粒子的权重可以使用式(2)来计算:p(p,t=t+dt)=(t=t+dt处的测量可能性)*p(p,t=t)(2)也就是说,通过使时间t+dt处的测量可能性(即,传感器观察与时间t+dt处的粒子/假设相关联的可能性)与假设的最后计算概率(即,前一时间t=t处的假设的可能性)相乘,来给出时间t+dt(即,接收到新传感器观察的时间)处的粒子p(即,假设)的概率(即,可能性)。然后,可以使时间t=t+dt处的各对象的假设的计算概率归一化,使其相加为1。例如,假定2个粒子与现实世界对象相关联,并且这2个粒子在时间t=t处具有相应概率0.5和0.5。进一步假定在t=t+dt处,使用式(2),概率被分别计算为0.4和0.3。在计算时间t=t+dt处的概率后,概率被分别归一化为(0.4/(0.4+0.3))和(0.3/(0.4+0.3))、或0.57和0.43。在操作2010处,处理2000更新与在操作2006处被发现为与接收到的传感器观察相关联的那些假设相关联的状态。虽然可以使用rbpf作为处理2000中的用以维持粒子的步骤的一般框架,但rbpf没有具体说明粒子例如如何移动(例如,在操作2004处)或粒子的状态如何更新(例如,在操作2010处)。扩展卡尔曼滤波器(ekf)可用于预测(即,操作2004的预测)和更新(即,操作2010的更新)。如上所述,在给定意图的情况下,对象的运动模型可用于预测对象的未来状态。也就是说,例如,运动模型可用于预测粒子(即,假设)如何从时间t演变到时间t+1。运动模型根据分类和其它状态参数(例如,速度、姿势)来对对象的动力学进行建模。当接收到(即,在操作2010处接收到)指示对象位置的新传感器测量时,可以使用(即,在操作2010处使用)ekf以将使用运动模型生成的预测状态与新测量融合(例如,组合、调和、合并或以其它方式融合)以生成(例如,计算、确定或以其它方式生成)更新状态。式(3)可用于更新对象状态。在式(3)中,x′t为时间t处的预测状态,yt为时间t处的传感器观察状态,为时间t处的更新状态,p′t为时间t处的预测状态的协方差,jh为测量模型的雅可比矩阵(jacobian),rt为测量模型的测量噪声协方差,以及为时间t处的更新状态的协方差。重申一下,处理2000可以启动rbpf以跟踪对象(例如,现实世界对象)。处理2000跟踪和预测数据存储部2014中的至少一些对象的轨迹。正因如此,处理2000可以运行rbpf的集合来跟踪和预测对象。rbpf用于预测相应对象的连续状态,更新相应对象的连续状态,以及更新相应粒子的权重。图24是根据本发明的实现的更新假设的状态的示例2400。示例2400示出操作2008和2010。如上所述,根据与对象相关联的假设的对象的位置是假设(或等效地,对象)的状态的一部分。根据假设1的对象1的位置2312被更新为位置2402,根据假设2的对象2的位置2314被更新为位置2404,并且根据假设3的对象2的位置2316被更新为位置2406。在示例中,位置被更新为与观察的位置重合。也就是说,例如,对象1的假设1的状态位置在时间t=t处被更新为传感器观察2320的位置,而不是位置2312;对象2的假设2的状态位置在时间t=t处被更新为传感器观察2324的位置,而不是位置2314;并且对象3的假设3的状态位置在时间t=t处被更新为传感器观察2324的位置,而不是位置2316。在示例中,考虑预测位置中的噪声(例如,不确定性)以及与传感器测量相关联的噪声来更新位置。预测位置(例如,位置2312~2318)是基于预测路径计算(例如,生成、预测、估计或以其它方式计算)的。预测路径是使用与对象分类相关联的运动模型生成的。正因如此,一些噪声(例如,不确定性)可能与预测路径相关联。类似地,噪声(例如,不确定性)也可能与传感器观察相关联。例如,传感器观察可以指示对象处于某个位置处,而实际上,对象在左侧2米处。正因如此,处理2000可以将噪声预测与噪声传感器观察合并,以生成更新位置。在示例中,更新位置可以是传感器观察与相关预测位置之间的中点。正因如此,位置2402在传感器观察2320和位置2312的中间;位置2404在传感器观察2324和位置2314的中间;以及位置2406在传感器观察2324和位置2316的中间。使用测量可能性(参见上面的表ii)、姿势、速度、位置、更少、更多或其它的状态信息,处理2000可以更新假设的可能性。例如,由于假设1是与对象1相关联的唯一假设,因此假设1的可能性可以维持不变(例如,1.0)。例如,由于传感器观察2324距离假设3的预测状态(即,位置2316)比距离假设2的预测状态(即,位置2314)更近,因此假设3的可能性增加(例如,从0.5增加到0.8),并且假设2的可能性减少(例如,从0.5减少至0.2)。再次参考图20,在操作2012处,处理2000创建新对象。例如,如上所述,没有假设(或等效地,对象)与传感器观察2322相关联。正因如此,传感器观察2322可以与处理2000先前未维持的新对象相对应。正因如此,处理2000可以创建新对象以与传感器观察2322相对应。处理2000还可以如上所述为新对象分配(例如,创建)一个或多个假设。在示例中,在基于传感器观察创建新对象之前,新传感器观察必须满足特定标准。如果传感器观察不满足标准,则处理2000可以忽略传感器观察,并且不创建对象。在示例中,标准可以与传感器观察的大小(例如,界定框、几何形状等)相关。例如,如果传感器观察被判断为与各尺寸为0.25米的对象相对应,则该对象被认为太小,并且忽略传感器观察。在这种情况下,传感器观察可能是由于传感器测量中的噪声。操作2002修改(即,通过创建和维持来修改)粒子。操作2002可以添加和/或去除粒子。例如,在时间t=0时,操作2002可以创建与图21的视图2110的“向左”、“直行”和“向右”假设相对应的三个粒子。如上所述,对象的状态(表示为x)可以分为离散状态信息(表示为xd)和连续状态信息(表示为xc)。正因如此,x={xc,xd}。如上所述,离散状态信息xd和连续状态信息xc各自可以包括一个或多个量。离散状态信息xd可用于确定(例如,选择、使用或以其它方式确定)对象的运动模型。运动模型也可被称为状态过渡模型或处理模型。运动模型(例如,作为数学、算法或其它模型)描述了在给定特定标准的情况下对象如何移动、机动、或表现等。例如,在给定“右转弯”的意图的情况下,被分类为“汽车”的对象的运动模型可以指示汽车在转弯之前减慢,并且被分类为“卡车”的对象的运动模型可以指示卡车减慢并进行大范围的右转弯。作为另一示例,在给定“直行”的意图的情况下,被分类为“汽车”的对象的运动模型可以指示汽车保持其当前速度(如连续状态信息xc中所指示)。运动模型可以通过对象分类获得。对象分类可以包括驾驶风格。例如,分类可以是“激进型驾驶汽车”和“悠闲型驾驶汽车”。在示例中,驾驶风格可以与分类分开。也就是说,驾驶风格可被维持为与分类分开的状态变量。正因如此,运动模型可以基于多个状态变量。对于离散状态值的各组合,可以生成一个粒子,以使用与离散状态值的组合相关联的运动模型来估计连续状态。也就是说,运动模型定义(并且可用于确定)对于给定假设,对象的当前状态如何改变为未来状态。对于离散的未来时间点(例如,在接下来的6秒内每0.5秒),使用运动模型预测未来状态。操作2004对应于回答如下问题:粒子去往哪里?更具体地,操作2004回答如下问题:基于假设的意图以及与假设相关联的当前已知和/或预测状态,假设的现实世界对象被预测为在哪里?如上文所述,操作2004通过预测粒子的轨迹来回答该问题。对于至少一些所维持的假设中的各假设,操作2004预测轨迹。粒子(即,表示假设)也可以在操作2006处用于确定传感器观察和假设之间的关联的可能性。粒子也可以在操作2008处用于更新假设的可能性。也就是说,新的传感器观察用于更新粒子(即,假设)的可能性。在操作2010处,处理2000估计(例如,计算)接收到的传感器观察时的粒子的状态(例如,位置)。数据存储部2014中所维持的传感器观察和现实世界对象之间的关联不是先验已知的。如上文针对图23~24所述,传感器观察和现实世界对象之间的关联是推导出的。图20还包括根据本发明的使用世界模型的处理2050的流程图。如图4的系统400所示,决策模块406和轨迹规划器408使用来自世界模型模块402的数据和/或决策作为输入。正因如此,可以响应于例如来自决策模块406、轨迹规划器408、系统400的其它模块或运载工具100的使用现实世界模型的其它模块的查询而执行处理2050。响应于查询,在操作2052处,处理2050从数据存储部2014提取(例如,获取、检索、读取或以其它方式提取)现实世界对象。在操作2054处,处理2000预测(或更新)直到某个未来时间范围(例如,6秒)的提取对象的轨迹。在操作2056处,处理2050向请求模块提供现实世界对象和预测轨迹。图25是根据本发明的用于自主运载工具对世界对象跟踪和预测的处理2500的流程图。世界对象如上文针对现实世界对象所述。处理2500的一些或所有方面可以在运载工具(包括图1所示的运载工具100和图2所示的运载工具202)中实现,或者在计算设备(包括图2所示的控制器设备232)中实现。在实现中,处理2500的一些或所有方面可以在结合本发明中所描述的一些或所有特征的系统中实现。例如,处理2500可以由图4的世界模型模块402利用。在操作2502处,处理2500从av的传感器接收第一观察数据(即,第一传感器观察)。第一观察数据可以如针对图20的操作2006所述地接收。在操作2504处,处理2500将第一观察数据与第一世界对象相关联。第一观察数据可以与如针对图20的操作2006所述的第一世界对象相关联。在操作2506处,处理2500确定第一世界对象的假设。假设与第一世界对象的意图相对应。在示例中,假设可以附加地或替代地与第一世界对象的分类相对应。意图可以与第一世界对象的可能路径相对应。假设可以例如如针对图20的操作2002所述地确定。在操作2508处,处理2500确定各假设的相应假设可能性。假设可能性指示第一世界对象遵循意图(例如,按照意图前进)的可能性。假设可能性可以例如如针对图20的操作2008所述地确定。在操作2510处,处理2500针对假设中的至少一个假设确定相应状态。状态包括第一世界对象的预测位置。状态可以例如如针对图20的操作2010所述地确定。在示例中,状态可以包括与估计当前位置、速度和几何形状以及相关不确定性(例如,可能性)相比更多、更少和不同的信息。在该上下文中,术语“当前”意味着“最后更新”。例如,如果第一对象在时间t=t0处最后更新(例如,当接收到传感器观察时),则第一对象的最新状态(例如,位置)是在时间t=t0处确定的状态,并且第一对象的预测状态在时间t=t0+dt处开始;如果第二对象在时间t=t1处最后更新,则第二对象的最新状态是在时间t=t1处确定的状态,并且第二对象的预测状态在时间t=t1+dt处开始。基于传感器观察和预测状态序列来确定(例如,更新、预测或以其它方式确定)状态。预测状态可以包括预测位置、预测速度、预测几何形状及其相关联的预测不确定性(例如,可能性)。在操作2512处,处理2500响应于查询基于各假设的相应假设可能性来提供假设中的一个假设。处理2500可以如针对图20的处理2050所述提供假设。在示例中,可以使用诸如hd地图数据、感知地图数据或其它类型的地图数据等的地图信息来确定假设中的一个假设。在示例中,处理2500可以包括从av的传感器接收第二观察数据,将第二观察数据与第一世界对象相关联,并基于第二观察数据来更新状态。在示例中,可以使用扩展卡尔曼滤波来进行状态更新。在示例中,处理2500可以包括基于第一世界对象的运动模型来预测至少一些假设的相应轨迹。在示例中,预测假设的相应轨迹可以进一步基于与假设的分类、意图和参考驾驶线相比更多、更少或不同的因素。如上文针对图20的操作2004所述,可以预测相应轨迹。在示例中,预测相应轨迹可以包括确定第一世界对象的参考驾驶线,以及基于运动模型预测相应轨迹,使得第一世界对象的当前预测路径与参考驾驶线重合,如例如针对图22所述。在示例中,处理2500可以包括从av的传感器接收第二观察数据,并将第二观察数据与第一世界对象和第二世界对象其中之一相关联。将第二观察数据与第一世界对象和第二世界对象其中之一相关联可以如针对图23所述。正因如此,将第二观察数据与第一世界对象和第二世界对象其中之一相关联可以包括使用与第二观察数据有关的门控区域来确定门控区域内的世界对象;并且在第一世界对象在门控区域内的情况下,确定第二观察数据与第一世界对象相对应的关联可能性。在示例中,处理2500还包括:基于关联可能性来更新各假设的相应假设可能性(例如,如针对式(2)所述),以及更新第一世界对象的状态(例如,如针对ekf所述)。在示例中,处理2500还包括从av的传感器接收第二观察数据;在第二观察数据满足标准的条件下,将第二观察数据与第二世界对象相关联;以及在第二观察数据不满足标准的条件下,忽略第二观察数据。图26是根据本发明的实现的预测轨迹的示例2600。示例2600示出图20的操作2004的示例。示例2600包括现实世界对象2602。现实世界对象2602可以是图22的运载工具2202。现实世界对象2602示出运载工具2202在时间t=t0(例如,要确定轨迹的时间)处的位置。示例2600还包括沿着参考驾驶线(诸如图22的参考驾驶线2208)的参考位置(诸如参考位置2604)。示例2600还包括沿着预测轨迹(诸如图22的轨迹2212)的位置(诸如预测位置2606)。预测轨迹由未来时间点(例如,时间戳)处的预测对象状态和协方差的序列组成。预测状态包括未来时间点处的相应预测位置。示例2600示出以下时间处的四个预测状态(包括位置):时间t=t0+δt处的预测状态、时间t=t0+2δt处的预测状态、时间t=t0+3δt处的预测状态和时间t=t0+4δt处的预测状态(即,预测位置2606)。δt表示时间步长(例如,半秒、一秒等)。沿着预测轨迹的预测位置被示出为具有不同的大小和形状。大小和形状示出预测状态的位置(例如,(x,y)坐标)协方差。如上所述,预测状态可以包括示例2600中未示出的速度和几何形状。图27是根据本发明的用于预测轨迹的处理2700的流程图。处理2700可以通过图20的操作2004实现。使用起始状态(即,时间t=t0处的现实世界对象2602的状态)和参考驾驶线(即,沿参考驾驶线的参考位置,诸如参考位置2604),处理2700确定(例如,测算、计算或以其它方式确定)收敛于参考驾驶线的预测轨迹(诸如图22的轨迹2212)。处理2700接收(例如,使用)参考驾驶线作为输入。参考驾驶线由对象(即,现实世界对象)的参考状态组成,这些参考状态指示对象在指定时间戳(即,未来时间点)处的期望状态。处理2700可以使用时间长度(例如,接收时间长度作为输入、使用默认时间长度或以其它方式使用时间长度)来进行预测。如上所述,预测轨迹由特定时间戳(即,未来时间点)处的预测状态组成。处理2700迭代,直到计算出(各自在相应的时间戳处的)所有预测状态为止。在处理2700的第一次迭代时,起始状态被设置为时间t=t0处的状态。在操作2702处,在给定起始状态的情况下,处理2700从参考驾驶线中查找(例如,计算、测算或以其它方式查找)参考状态。在操作2704处,处理2700使用起始状态和参考状态来确定(例如,计算、测算等)预测状态。操作2704可以使用式(4)来确定预测状态。在式(4)中,是时间t处的起始状态,是时间t处的参考状态,δt是预测步长大小,x′t+δt是时间t+δt处的预测状态,是时间t处的起始状态的协方差,jf是正在预测轨迹的对象的运动模型的jacobian,qt是运动模型噪声协方差,以及p′t+δt是时间t+δt处的预测状态的协方差。在操作2706处,处理2700判断是否满足预测长度。也就是说,处理2700判断是否已计算出针对所有期望未来时间点的相应预测状态。如果已计算出针对所有期望未来时间点的相应预测状态,则处理2700在2708处终止;否则进入操作2710。在操作2710处,处理2700将起始状态设置为操作2704处的预测状态。然后,处理2700进入操作2702以预测下一状态。图28是根据本发明的用于规划自主运载工具的轨迹的处理2800的流程图。处理2800可以在自主运载工具(av)(诸如图1所示的运载工具100或图2所示的运载工具202)中实现或由自主运载工具(av)实现。av可以是半自主运载工具或实现自主驾驶的任何其它运载工具。av被配置为穿过运载工具运输网络的一部分。处理2800可以由轨迹规划器(诸如图5的轨迹规划器500)实现。处理2800确定从第一位置到第二位置的粗驾驶线,确定粗驾驶线的策略性速率规划,去除粗驾驶线中的横向不连续以生成调整后的粗驾驶线,并基于观察对象来生成调整后的粗驾驶线周围的横向约束以及离散时间速率规划。然后可以根据离散时间速率规划来操作av。在示例中,可以根据优化轨迹来操作av,诸如针对图5的轨迹优化层508所述。在操作2802处,处理2800确定从第一位置到第二位置的粗驾驶线。第一位置和第二位置可以是如针对图5的驾驶目标501所述的位置。粗驾驶线可以是由驾驶线级联模块(诸如图5的驾驶线级联模块522等)确定的粗驾驶线。正因如此,可以如针对图5的驾驶线级联模块522所述地确定粗驾驶线。粗驾驶线可能不包括速率信息。然而,在一些示例中,粗驾驶线可以包括速率限制信息。粗驾驶线可以包括不连续。在实现中,确定粗驾驶线可以包括对诸如来自驾驶线数据层502的输入数据进行拼接(例如,链接、融合、合并、连接、集成或以其它方式拼接),以确定沿纵向方向(例如,沿自主运载工具的路径)的粗驾驶线,如针对图5的驾驶线级联模块522所述。例如,为了从位置a(例如,工作)到位置d(例如,家),为了确定粗驾驶线,驾驶线级联模块522可以使用来自停泊场数据518的输入数据来确定从工作位置停泊点到主道路的路径,可以使用来自hd地图数据510的数据来确定从主道路到家的路径,并且可以使用来自记录路径数据514的数据来从主道路导航到家中的车库。在实现中,确定粗驾驶线可以包括:获得驾驶线数据,该驾驶线数据包括与从第一位置到第二位置的第一段相关的第一数据以及与从第一位置到第二位置的第二段相关的第二数据;以及将第一数据和第二数据级联,如针对图5的策略性速率规划模块524所述。在示例中,第一数据可以是hd地图数据,诸如针对图5的hd地图数据510所述。在示例中,第二数据可以是记录路径数据,诸如针对图5的路径数据514所述。在示例中,第一数据或第二数据可以包括hd地图数据(诸如针对图5的hd地图数据510所述)和遥操作数据(诸如针对图5的遥操作地图数据512所述)。在一些示例中,第一数据和/或第二数据可以包括hd地图数据510、遥操作地图数据512、记录路径数据514、在前运载工具数据516、停泊场数据518和感知路径数据520的任意组合。在操作2804处,处理2800确定粗驾驶线的策略性速率规划。策略性速率规划可以是由策略性速率规划模块(诸如图5的策略性速率规划模块524)确定的策略性速率规划。正因如此,策略性速率规划模块524确定沿粗驾驶线的不同部分的特定速率。在示例中,确定策略性速率规划可以包括诸如针对图7所述的使用速率限制和加速度限制,以确定策略性速率规划。速率限制可以包括道路速率限制(诸如针对图7的道路速率限制702所述)、弯曲速率限制(诸如针对图7的弯曲速率限制704所述)和无缝自主移动数据(诸如针对图7的sam数据706所述)中至少之一。如上所述,无缝自主移动数据可以是从其它运载工具收集到的数据。在示例中,可以在av处从网络服务器接收无缝自主移动数据。在示例中,加速度限制可以包括运载工具加速度限制(诸如针对图7的运载工具加速度限制710所述)和舒适度限制(诸如针对图7的舒适度限制712所述)中至少之一。在操作2806处,处理2800基于策略性速率规划来去除粗驾驶线中的横向不连续,以生成调整后的粗驾驶线。粗驾驶线可以包括两个或更多个段(例如,称为粗驾驶线)。处理2800合成粗驾驶线以去除粗驾驶线中的横向不连续。也就是说,处理2800可以基于策略性速率规划和目标横向速率来合成连接粗驾驶线中的横向不连续的粗驾驶线。考虑到具有横向不连续的粗驾驶线以及策略性速率分布,操作2806确定车道变换的起始位置和结束位置,并合成连接这两个位置的驾驶线。驾驶线可以由驾驶线合成模块(诸如图5的驾驶线合成模块526)合成。正因如此,去除粗驾驶线中的横向不连续可以包括合成用于从第一车道合并到第二车道的驾驶线。正因如此,去除横向不连续可以包括确定用于从第一车道合并到第二车道的合并速率规划。在操作2808处,处理2800基于观察对象来生成调整后的粗驾驶线周围的横向约束以及离散时间速率规划。所生成的离散时间速率规划是无碰撞的离散时间速率规划。也就是说,所生成的离散时间速率规划使得av可被操作为(诸如通过停止、让路、减速、加速等来)避免与观察对象的碰撞。处理2800可以生成横向约束和离散时间速率规划,如针对图5的对象避开层506所述。正因如此,在示例中,生成横向约束可以包括基于静态对象来确定可驾驶区域的边界,诸如针对图5的模块530所述。在示例中,生成离散时间速率规划可以包括基于动态对象的分类来施加纵向约束,如针对图5的模块532和图8的操作830所述。图29是根据本发明的实现的用于自主驾驶模拟的时间规整的系统2900的示例。系统2900包括记录av2902和模拟av2904。在示例中,记录av可以是在现实世界中驾驶的自主运载工具。当正在驾驶记录av2902时,记录模块2906记录与驾驶相关的数据(即,记录驾驶数据2908)。在示例中,操作员可以使记录模块2906启动和停止记录驾驶数据的记录。然而,其它手段可用于启动和停止记录驾驶数据2908的记录。例如,记录模块2906可以在记录av处于预定起始位置时开始记录,并且可以在记录av处于预定停止位置时停止记录。记录驾驶数据2908可被存储在记录av2902的存储器(诸如图1的存储器122)中。记录驾驶数据2908可以在其被记录时、在间歇时间处、在驾驶完成后或通过其组合的方式发送至基于网络的位置,诸如基于云的位置。无论记录驾驶数据2908的存储位置如何,记录驾驶数据2908都可以用于模拟av2904。在一些示例中,模拟av2904可以使用模拟数据2910(其可以是记录驾驶数据2908的子集)来模拟自主驾驶。在示例中,记录av2902可以是图1的运载工具100或图2的运载工具202。记录av2902可以如这里所述地配置。也就是说,例如,记录av2902可以包括针对图4的系统400所述的组件中的一个或多个。例如,记录av2902可以包括轨迹规划器(诸如图4的轨迹规划器408)、世界模型模块(诸如图4的世界模型模块402)、决策模块(诸如图4的决策模块406)、路线规划器(诸如图4的路线规划模块404)、反应性轨迹控制模块(诸如图4的反应性轨迹控制模块410)、更少、更多或其它的模块;例如,记录av2902可以进行这里所述的更多、更少或其它的处理,诸如用于确定可驾驶区域和离散时间速率规划的处理(诸如针对图8所述)、用于确定静态边界的处理(诸如针对图13所述)、用于对象避开的处理(诸如针对图18所述)、用于世界建模的处理(诸如针对图20所述)、用于世界对象跟踪和预测的处理(诸如针对图25所述)以及用于预测轨迹的处理(诸如针对图26所述)。然而,无需是这种情况。也就是说,记录av2902无需如这里所述地配置。在示例中,模拟av2904可以包括针对图4的系统400所述的组件中的一个或多个。例如,模拟av2904可以包括轨迹规划器(诸如图4的轨迹规划器408)、世界模型模块(诸如图4的世界模型模块402)、决策模块(诸如图4的决策模块406)、路线规划器(诸如图4的路线规划模块404)、反应性轨迹控制模块(诸如图4的反应性轨迹控制模块410)、更少、更多或其它的模块;例如,模拟av2904可以进行这里所述的更多、更少或其它的处理,诸如用于确定可驾驶区域和离散时间速率规划的处理(诸如针对图8所述)、用于确定静态边界的处理(诸如针对图13所述)、用于对象避开的处理(诸如针对图18所述)、用于世界建模的处理(诸如针对图20所述)、用于世界对象跟踪和预测的处理(诸如针对图25所述)以及用于预测轨迹的处理(诸如针对图26所述)。模拟av2904的组件和/或模块无需与记录av2902的组件和/或模块相同。例如,并且对于其它模块、组件和/或处理类似地,虽然记录av2902可以包括第一决策模块并且模拟av可以包括第二决策模块,但是第一决策模块和第二决策模块的实现、算法、决策类型、更多、更少或其它的方面可以有所不同。图30是根据本发明的实现的记录驾驶数据3000的示例。如上所述,在自主驾驶的模拟中模拟av可以使用来自记录av的记录驾驶数据(或其子集)。记录驾驶数据3000可以是图29的记录驾驶数据2908。正因如此,记录驾驶数据3000可以由诸如图29的记录模块2906等的记录模块记录。为了便于解释,记录驾驶数据3000以表格格式示出。然而,记录驾驶数据3000可以以任何其它合适的格式捕获(例如,存储、组织等)。记录驾驶数据3000包括(以下进一步解释的)数据条目,诸如记录条目3002a~e。在示例中,各记录条目可以包括记录条目的时间3004、记录条目的类型3006、记录av在记录条目被记录的时间3004时的位置3008、记录av在时间3004时所维持的对象3010、一个或多个图像3012、以及其它数据3014。时间3004可以是从记录驾驶数据的记录开始时间起的相对时间。记录状态时间可以是正在记录的驾驶的开始或记录开始(例如,启动)的时间。正因如此,时间3004的值的示例包括“从记录开始起的10秒”、“从记录开始起的20秒”等。时间3004可以是绝对时间(例如,时钟时间)。时间3004可以是采样编号(例如,序列编号)。例如,第一记录数据条目的时间可以具有时间1,并且第二记录数据条目的时间可以具有时间2,依此类推。类型3006指示数据条目的类型。在示例中,记录驾驶数据3000可以包括不同类型的条目。例如,诸如条目3002a和3004c等的“位置”条目是根据预定义采样速率记录的数据条目。例如,采样速率可以是每10毫秒记录1个条目、每20毫秒记录1个条目、每1秒记录1个条目。可使用任何其它采样速率。记录驾驶数据3000可以包括用于记录事件的条目,其中这些事件可能被认为是有趣的,因此值得记录。例如,与“操作员”类型条目相对应的条目3002d记录了,在时间t17.3处,操作员通过按下制动(如其它数据3014中的“减慢”所示)来超控记录av的决策(例如,以一定速率前进的决策)。与条目类型“观察”相对应的条目3002指示记录av在时间t11.1处接收到新的传感器观察。新的传感器观察可以由av接收,如针对图25的2502、2504或其组合所述。与决策(即,由记录av的决策算法确定并由记录av执行的决策)相对应的条目3002e指示记录av在时间t11.8处“切换到右车道”。位置3008可以是记录av在数据条目中的相应时间(时间3004)处的全球定位位置(gps)。位置3008可以是或者可以包括数据,使得记录av的纵向位置和横向位置中至少之一可以由位置3008确定。对象3010可以是或可以包括针对图4的世界模型模块402所述的对象的列表。也就是说,对象3010可以包括世界模型模块402在记录数据条目的时间3004处所维持的对象的列表。图像3012可以包括记录av在记录数据条目的时间3004处的感测区域的一个或多个图像。其它数据3014可以针对记录驾驶数据3000的至少一些数据条目包括其它条目类型特定的且有用的信息。在示例中,记录驾驶数据可以包括时间3004、位置3008、对象3010和图像3012。在另一示例中,记录驾驶数据可以包括时间3004、位置3008和对象3010。在又一示例中,记录驾驶数据可以包括时间3004、位置3008和图像3012。如上所述,记录驾驶数据3000包括当记录av在道路上驾驶时的记录av的感测数据、移动数据和决策数据。感测数据对应于对象和/或原始传感器观察,诸如针对对象3010、图像3012或其组合所述。移动数据对应于记录av随时间的位置信息序列,诸如针对位置3008所述。决策数据例如对应于类型“决策”的条目,如上所述。在实现中,可以使用类型“观察”的数据条目来影响模拟av;可以使用类型“位置”的数据条目来调节(即,通过加快或减慢来调整)记录驾驶数据的重放速率(如下所述);并且模拟av不能使用类型“决策”的数据条目。图31是根据本发明的实现的模拟数据3100的示例。模拟数据3100可以是图29的模拟数据2910。模拟数据3100对应于记录驾驶数据(诸如图30的记录驾驶数据3000)的子集,该子集对于进行自主驾驶模拟是有用的。在示例中,可以从记录驾驶数据3000中提取模拟数据3100。也就是说,例如,模拟数据3100可被提取到与记录驾驶数据3000分开的另一数据结构、另一数据存储位置等、或其组合。在另一示例中,模拟数据3100可以是对记录驾驶数据3000的适当滤波(例如,逻辑视图)。在要对模拟av的决策算法进行测试的情况下,记录驾驶数据中与决策相关的任何数据条目都不包括在模拟数据3100中。不包括与决策相关的数据(如果有的话),因为它是模拟av在模拟期间生成的数据。类似地,与操作员干预相关的任何数据也不包括在模拟数据3100中。模拟数据3100包括移动数据(即,记录av的位置)和感测数据(即,如针对图30所述的对象和/或图像)。模拟av使用了感测数据和移动数据。模拟av基于感测数据和移动数据(例如,使用决策算法或模块)作出决策。决策算法基于当前感测到的内容(例如,当前感测和识别出的对象)来决定接下来或未来的步骤(例如,机动、加速、减速、停止等)。例如,并且如上文所述,感测数据可用于创建和维持针对感测范围内的至少一些识别对象的假设,并因此确定(例如,计算)轨迹。正因如此,为了通过模拟av的决策算法进行决策的目的,移动数据和感测数据可被视为不可分离的数据。记录av(更具体地,记录av的传感器)使用传感器的视线来感测其它道路用户。视线由记录av的位置确定(例如,约束、定义、限制)。为了使模拟av使用记录av的感测数据(例如,记录驾驶数据的条目),模拟av在模拟期间的位置必须与记录av在感测数据时的位置同步,使得感测数据在模拟av的感测范围内。如果感测数据不在模拟av的感测范围内,则可能使用模拟av的环境的不完整数据和/或不准确视图来作出模拟av的决策算法的一个或多个决策。也就是说,模拟av的世界视图(例如,其它道路用户的实际集合)可能是不完整的。这是不期望的,因为在模拟中使用记录驾驶数据的目的是在与记录av的条件相同的条件下测试(例如,观察)模拟av的决策。参考图31,在时间线3102上示出模拟数据3100。时间线3102包括省略号3104和3106,以示出模拟数据3100可以包括比所示时间早和/或晚的附加模拟数据。为了便于参考,各模拟数据(诸如模拟数据3108)用编号框示出。各模拟数据包括感测和移动信息。由于模拟数据3100可以是图30的记录驾驶数据3000或者可以从图30的记录驾驶数据3000中推导出,因此模拟数据3100可以具有与记录驾驶数据3000相同的采样速率。时间线3102示出相距δt个时间单位的每两个时间点之间有五个模拟数据点。然而,采样速率可以是任何采样速率。图32示出时间t处的记录av的位置3200和模拟av的位置的示例。位置3200包括示例3210、示例3220和示例3230。示例3210、3220、3230各自包括记录av3214(诸如图29的记录av2902)以及模拟av3216(诸如图29的模拟av2904)。箭头3202示出记录av2902和模拟av2904的假定行进方向。示例3210、3220、3230示出模拟av3216相对于记录av3214的感测范围3212的位置。感测范围3212与记录av3214的传感器的视场相对应。可以相对于记录av的眼点(例如,可被认为是所有传感器的中心的点)测量感测范围3212。在示例中,视场可以在记录av的各纵向方向(例如,前面和后面)的50~100米的范围内,并且在各横向方向(例如,右侧和左侧)的10~50米的范围内。示例3210、3220、3230各自还包括位于记录av3214的传感器范围内的另一道路用户3218。由于如针对图30~31所述,模拟av3216使用可能是来自记录av3214的记录驾驶数据的子集的模拟数据,因此假设模拟av3216的感测范围与记录av3214的感测范围重合。可被视为理想情形的示例3212示出模拟av3216维持在记录av3214的感测范围3212内的情形。正因如此,在时间t处的模拟av3216的位置和记录av的位置之间不会发生偏移(或至少没有显著偏移)。模拟av3216使用模拟数据(诸如图31的模拟数据3100),以进行决策并规划轨迹。在与模拟数据的采样速率相对应的采样时间处,相应的模拟数据被提供至这里所述的决策算法和/或其它模块(或等效地,由这里所述的决策算法和/或其它模块访问或检索)。在示例3212中,记录av3214和模拟av3216保持在记录av的感测范围3212内的相同位置。正因如此,模拟数据(例如,图31的模拟数据3100)的各模拟数据可被认为对模拟av3216“有意义”。这是因为记录av3214和模拟av3216可以“看到”相同的其它世界对象(诸如另一道路用户3218),并且模拟av3216的决策算法可以相应地作出决策。例如,如果记录av检测到迎面而来的运载工具(诸如图3的迎面而来的运载工具302),则在记录驾驶数据中记录该迎面而来的运载工具(或其表示);并且经由模拟数据使迎面而来的运载工具对模拟av可见。因此,模拟av可以根据模拟av3216的决策、轨迹规划和/或其它处理和模块与迎面而来的运载工具的表示进行(视觉)交互。示例3220和3230示出记录av3214和模拟av3216的位置已偏移的情形。示例3220和3230示出未应用用于自主驾驶模拟的时间规整的情形。示例3220和3230示出根据本发明的实现的记录av3214和模拟av3216的位置不同步的情形。也就是说,在示例3220和3230中,在记录av3214捕获到记录驾驶数据的相同时间步骤处向模拟av3216呈现模拟数据。也就是说,例如,无论记录av和模拟av的位置是否已偏移,模拟av都在模拟的两个时间点之间使用记录驾驶的相同的这两个时间点之间(例如,图31的(t+2δt)和(t+3δt)之间)所记录的相同记录数据点(例如,图31的模拟数据11~15)。示例3220示出模拟av3216在时间t处滞后于记录av3214的情况。“滞后于”可以意味着,在时间t处,并且根据记录驾驶数据,记录av3214(例如,在纵向方向上并且沿着行进轨迹)的位置位于模拟av3216在模拟时间t处的位置之前。偏移可能是由于上述的一个或多个原因或任何其它原因。注意,时间t处的模拟数据包括另一道路用户3218。由于在时间t处,另一道路用户3218在模拟av3216(给定其位置)的感测范围外,因此模拟av3216的处理或模块“看不到”该另一道路用户3218。例如,在模拟av3216的世界模型模块(诸如图4的世界模型模块402)中可能不维持该另一道路用户3218。仍然参考示例3220。为了简化解释,假定另一道路用户3218是静止的,并进一步假定在晚于t的时间t’处,记录av3214的位置使得记录av3214不再看到(即,感测到)另一道路用户3218。正因如此,在时间t’处,记录av3214的世界模型不包括另一道路用户3218,因此,时间t’处的记录数据将不包括另一道路用户3218。进一步假定,在时间t’处,模拟av3216的位置在示例3230所示的感测范围3212内。正因如此,在时间t’处,即使模拟av3216应当“看到”另一道路用户3218,模拟av3216也接收到不包括另一道路用户3218的模拟数据(对应于时间t’处的记录数据)。正因如此,虽然模拟av3216应当考虑到另一道路用户3218来作出决策,但模拟av3216好像模拟av3216正在穿过空世界(即,好像另一道路用户3218不存在)一样作出决策。正因如此,在诸如上文针对示例3220所述的“滞后情况”中,来自记录av3214的传感器消息(例如,模拟数据)被认为接收得太早,以致模拟av3216无法响应。示例3230示出模拟av3216领先于记录av3214的情况,这可以意味着,在时间t处,并且根据记录驾驶数据,记录av3214(例如,在纵向方向上并且沿着行进轨迹)的位置位于模拟av3216在模拟时间t处的位置之后。时间t处的模拟数据包括另一道路用户3218。仍然参考示例3230。假定在早于时间t的时间t”处,模拟av3216在感测范围3212的区域内,并且记录av滞后。模拟av在时间t”处的位置用虚线的模拟av3216’示出,并且记录av在时间t”处的位置用虚线的记录av3214’示出。由于另一道路用户3218在虚线的记录av3214’的感测范围外,因此与时间t”相对应的记录驾驶数据不包括另一道路用户3218。正因如此,模拟av在时间t”处没有接收到另一道路用户3218,而实际上,模拟av应当接收到另一道路用户3218。正因如此,虽然模拟av3216’应当考虑到另一道路用户3218来作出决策,但模拟av3216’好像模拟av3216正在穿过空世界一样作出决策。正因如此,在诸如上文针对示例3230所述的“领先情况”中,来自记录av3214的传感器信息(例如,模拟数据)被认为接收得太晚,以致模拟av3216无法响应(在这种情况下,无法响应于另一道路用户3218的存在)。另外,在时间t处,当实际上,模拟av3216可能正在穿过空世界时,模拟av3216接收到包括另一道路用户3218的模拟数据,因为该另一道路用户3218包括在与时间t相对应的记录驾驶数据中,正因如此,模拟av3216可以好像另一道路用户3218在模拟av3216的传感器范围内一样作出决策,然而实际上,另一道路用户3218不在模拟av3216的传感器范围内时。为了克服与在自主驾驶的模拟中使用记录驾驶数据相关联的问题(诸如针对示例3220和3230所述的问题),根据本发明的实现对可能是从记录av接收到的记录驾驶数据的子集的模拟数据进行时间规整,以用于模拟av的自主驾驶模拟。这些问题可能是由于(如在记录驾驶数据中捕获的)记录av的位置和(如由模拟av的决策算法确定的)模拟av的位置的偏移而引起的。可以通过在必要时连续改变模拟数据的速率来完成对模拟数据的时间规整,使得关于感测到(例如,观察到并作出反应)与记录av基本上相同的其它道路用户,模拟av的位置与记录驾驶数据中所捕获的记录av的位置相匹配。也就是说,通过改变模拟数据的重放速率,模拟av接收到与其它道路用户有关的、同其它道路用户的位置和模拟av的位置一致的数据。模拟数据的时间规整可被概括如下。当模拟av和记录av基本上是相同位置时,维持模拟数据的重放速率。例如,当模拟av在记录av的传感器范围内时,维持重放速率。例如,当模拟av在记录av的阈值距离内时,维持重放速率。当模拟av滞后于记录av(诸如针对示例3220所述)时,模拟数据的重放速率减慢,使得与其它道路用户有关的感测数据不会接收得太迟以致模拟av无法处理(例如,“看到”并作出反应)。换句话说,模拟数据的重放被减慢,从而允许模拟av赶上。在示例中,模拟av是否滞后于记录av可以基于模拟av与记录av之间的距离是否超过阈值距离并且模拟av(按位置)是否在记录av之后来判断。当模拟av领先于记录av(诸如针对示例3230所述)时,模拟数据的重放速率加快,使得与其它道路用户有关的感测数据不会接收得太早以致模拟av无法处理(例如,“看到”并作出反应)。换句话说,模拟数据的重放被加快,从而允许记录av赶上。在示例中,模拟av是否领先于记录av可以基于模拟av与记录av之间的距离是否超过阈值距离并且模拟av(按位置)是否在记录av之前来判断。在时间t处模拟av是否在记录av的传感器范围内可以使用记录av在时间t处的位置(可在模拟数据中获得)、记录av的传感器范围的边界、以及模拟av在时间t处的位置如由模拟av的处理和模块(例如,轨迹规划器、决策模块等)中至少之一来确定。在时间t’处模拟av是否在记录av的阈值距离之内可以使用记录av在时间t’处的位置以及模拟av在时间t’处的位置来确定。阈值距离可以是1米、2米、10米、更长距离、或更短距离。在示例中,阈值距离可以与记录av的感测范围相关。例如,如果感测范围在纵向方向上达到x米,则阈值距离可以是大于x的值或与x相关的某个其它值(例如,0.75×x)。感测范围与记录av中可用的传感器(诸如图1的传感器126)的能力相关。在示例中,传感器范围可以在各纵向方向上达到100米(例如,记录av的前面100米以及记录av的后面100米)。然而,如上所述,根据传感器能力,其它值是可能的。图33是根据本发明的实现的用于模拟自主驾驶的处理3300的流程图。通过模拟av来模拟自主驾驶。在实现中,模拟av可被配置为包括针对图4所述的模块中的一个或多个。在模拟av包括用于规划轨迹的模块的实现中,模拟av可以包括针对图5所述的模块中的一个或多个。在实现中,模拟av可以包括本发明中所描述的模块的任意组合以及/或者执行本发明中所描述的处理的任意组合,这些模块和处理用于进行自主驾驶。然而,模拟av不限于这里所公开的处理和模块。由于处理3300的自主驾驶是模拟,因此模拟av不包括物理传感器(诸如图1的传感器126)。正因如此,与包括传感器的自主运载工具不同,模拟av接收包括物理传感器所收集的数据的记录驾驶数据(例如,数字数据)。模拟av可以由包括存储器和处理器的设备执行。处理器可被配置为执行存储在存储器中以模拟自主驾驶(包括处理3300)的指令。在3310处,处理3300从记录av接收记录驾驶数据。记录驾驶数据可以如针对图29的记录驾驶数据2908所述。记录av可以如针对图29的记录av2902所述。正因如此,记录驾驶数据可以包括使用第一决策算法(即,记录av的决策算法)生成的决策数据、感测数据(即,与由记录av观察、分类等的其它世界对象相关的数据等)以及记录av的移动数据。移动数据包括记录av的位置。在示例中,记录驾驶数据可以如针对图30的记录驾驶数据3000所述,或者可以与针对图30的记录驾驶数据3000所述类似。如上所述,感测数据包括使用记录av的传感器获得的其它道路用户的表示(例如,描述其它道路用户的数据)。在3320处,处理3300从记录驾驶数据获得模拟数据。模拟数据可以如针对图29的模拟数据2910所述地获得。正因如此,从记录驾驶数据获得模拟数据可以包括从记录驾驶数据中排除决策数据。如在该上下文中所使用的,“排除”意味着忽略、滤除、不复制、不使用或以任何其它方式排除。在记录驾驶数据还包括操作员数据的情况下,获得模拟数据可以包括从记录驾驶数据中排除操作员数据。针对图31提供了模拟的示例。在3330处,处理3300使用模拟数据来模拟第二决策算法。也就是说,模拟av使用模拟数据来执行与自主驾驶相关的一个或多个处理。一个或多个处理可以包括第二决策算法(其可以由模拟av的决策模块(诸如图4的决策模块406)执行)。正因如此,模拟第二决策算法包括通过第二决策算法接收其它道路用户的表示。在非限制性示例中,响应于接收到其它道路用户的表示,模拟av可以进行处理2000的一个或多个操作,诸如用以预测其它道路用户(即,现实世界对象)的轨迹的操作2004。在实现中,第一决策算法和第二决策算法是相同的。例如,假定记录驾驶数据包括用于指示行人(例如,另一世界对象)的存在的第一记录驾驶数据、以及用于指示操作员(例如,记录av的人类后备驾驶员)在记录av检测到行人之前或之后不久使av停止的第二记录驾驶数据。通过使用相同的决策算法,在从模拟数据中排除第二记录驾驶数据的同时,可以观察到在没有人类干预的情况下模拟av如何进行(以及因此,记录av将如何进行)。也就是说,可以测试决策算法,以判断记录av的决策算法的决策是会使得记录av与行人碰撞还是会使得记录av避开行人。在实现中,第一决策算法和第二决策算法是不同的。也就是说,第一决策算法和第二决策算法可以基于相同的条件(例如,所观察到的相同的其它道路用户)确定不同的动作过程(即,决策)。模拟第二决策算法可以包括用于确定模拟av在第一时间的第一位置的操作3332以及用于基于第一位置和记录av的位置中的在第一时间的第二位置之间的差来调整模拟数据的重放速率的第二操作3334。如前所述,模拟av可以包括轨迹规划器。正因如此,可以基于轨迹规划器所确定的轨迹来确定模拟期间的任意时间点处的模拟位置。正因如此,模拟av在第一时间的第一位置是模拟av在第一时间在所确定的轨迹上的位置(即,场所)。如上文所述,记录av在第一时间的第二位置可以在作为记录驾驶数据的一部分的移动数据中获得。可以测量记录av和模拟av的相应同位眼点之间的距离。眼点与av上的位置相对应。眼点可被认为是av的所有传感器的中心点。在示例中,眼点可以是av的后轮轴的中心。正因如此,该距离可以是在第一时间在模拟av的后轮轴的中心与记录av的后轮轴的中心之间测量到的距离。在示例中,该距离可以是模拟av和记录av的相应后轮轴的中心之间的欧几里得距离。也就是说,该距离可以是相应后轮轴的中心之间的直线长度。在另一实现中,该距离只能在纵向方向(即模拟av和记录av的行进方向)上测得。在实现中,调整模拟数据的重放速率可以包括响应于第一位置在记录av的感测范围之外而调整模拟数据的重放速率。调整重放速率可以具有如下的效果,即:使第一位置和第二位置在记录av的感测范围内。在实现中,调整模拟数据的重放速率可以包括响应于第一位置和第二位置之间的距离超过阈值距离而调整模拟数据的重放速率。如前所述,调整重放速率可以具有如下的效果,即:使第一位置和第二位置在记录av的感测范围内。可以使用比例积分微分(pid)控制器来确定重放速率的调整量。pid控制器可以使用第一位置和第二位置之间的距离作为误差值。图34是根据本发明的实现的用于确定重放速率调整的比例积分微分(pid)控制器3400的框图。由于pid控制器是本领域技术人员熟知的,因此省略了pid控制器3400的详细描述。距离3402用作pid控制器3400的输入。距离3402是时间t处的模拟av的第一位置和记录av的位置中的第二位置之间的差。距离3402是有符号的值,以指示模拟av在时间t上是滞后于记录av还是领先于记录av。pid控制器的输出3404指示对重放速率的调整量。如上所述,如果距离3402(在绝对值方面)不超过阈值距离,则pid控制器3400可被配置为不调整重放速率。阈值距离可以是1米、2米或某个其它阈值距离。重放速率3406指示模拟av将在下一个时间窗中处理的记录数据点的数量。再次参考图31以示出诸如通过pid控制器3400来调整重放速率。假定当前模拟时间为时间t。在记录av与模拟av之间的距离不超过阈值距离的情况下,模拟av实时地处理模拟数据点。也就是说,模拟av以与记录av记录模拟数据点相同的速率处理模拟数据点。例如,并且参考图31,如果记录av在t和t+δt之间记录了被标记为1~5的模拟数据点(或更准确地,从中推导出模拟数据点的记录驾驶数据点),则模拟av在模拟时间t和t+δt之间以相同的速率处理数据点1~5。也就是说,模拟av在模拟时间t和t+δt之间处理编号为1~5的模拟数据。另一方面,如果距离超过阈值距离并指示模拟av领先于记录av,则pid控制器3400可以(经由输出3404)指示重放速率3406应当增加至例如实时速率的140%。正因如此,在模拟时间t和t+δt之间,模拟av处理模拟数据点1~7(对应于140%×(针对各时间窗的数据点的数量)=140%×5=接下来的7个模拟数据点)。接着假定,距离超过阈值距离并指示模拟av滞后于记录av,并且pid控制器3400(经由输出3404)指示重放速率3406应当降低至实时速率的例如60%。正因如此,在模拟时间t+δt和t+2δt之间,模拟av将处理标记为8~10的模拟数据点(对应于60%×(针对各时间窗的数据点的数量)=60%×5=接下来的3个模拟数据点)。在一些实现中,仅针对模拟的一部分调整重放速率。例如,模拟的目的可能是在模拟中测试另一道路用户与模拟av之间的交互。例如,模拟数据可以是针对长度为l的记录驾驶,其包括在记录驾驶的从时间t1处开始并在时间t2处结束的间隔内在记录av与道路用户之间的交互。例如,记录驾驶可能具有20分钟的长度,并且记录av可能在进入记录驾驶的10分钟30秒处遇到行人。正因如此,可以调整重放速率,直到模拟的时间t1。在模拟的时间t1和t2之间,不调整重放速率。在实现中,用于模拟自主驾驶的处理可以包括从使用第一决策算法的记录自主运载工具(av)接收记录驾驶数据;以及由模拟av使用至少一些记录驾驶数据来模拟第二决策算法。模拟第二决策算法可以包括基于模拟av在第一时间的第一位置和记录av的位置中的在第一时间的第二位置之间的差来调整至少一些记录驾驶数据的重放速率。为了简化解释,处理800、1300、1800、2000、2050、2500、2700、2800和3300分别被描绘和描述为一系列操作。然而,根据本发明的操作可以以各种顺序和/或同时地发生。另外,可以使用这里未介绍和描述的其它步骤或操作。此外,可能并非需要所有图示操作来实现根据所公开的主题的技术。如这里所使用的,术语“驾驶员”或“操作员”可以互换使用。如这里所使用的,术语“制动”或“减速”可以互换使用。如这里所使用的,术语“计算机”或“计算装置”包括能够进行这里所公开的任何方法或其任何部分的任何单元或单元组合。如这里所使用的,术语“指令”可以包括用于进行这里所公开的任何方法或其任何部分的指导或表示,并且可以在硬件、软件或其任何组合中实现。例如,指令可被实现为存储器中所存储的诸如计算机程序等的信息,该信息可以由处理器执行以进行如这里所述的相应方法、算法、方面或其组合中的任一个。在一些实现中,指令或其一部分可被实现为专用处理器或电路,该专用处理器或电路可以包括用于执行如这里所述的方法、算法、方面或其组合中的任一个的专用硬件。在一些实现中,指令的一部分可以跨单个装置或者可直接地或跨诸如局域网、广域网、因特网或其组合等的网络进行通信的多个装置上的多个处理器分布。如这里所使用的,术语“示例”、“实施例”、“实现”、“方面”、“特征”或“元素”表示用作示例、实例或例示。除非明确指示,否则任何示例、实施例、实现、方面、特征或元素是彼此独立的示例、实施例、实现、方面、特征或元素,并且可以与任何其它示例、实施例、实现、方面、特征或元素结合使用。如这里所使用的,术语“确定”和“识别”或其任何变形包括无论如何以任何方式使用这里所示和所述的一个或多个装置选择、查明、计算、查找、接收、确定、建立、获得或者以其它方式识别或确定。如这里所使用的,术语“或”意指包容性“或”而不是排他性“或”。也就是说,除非另有规定或者上下文另有明确指示,否则“x包括a或b”意在指示其自然包容性排列中的任一个。如果x包括a;x包括b;或者x包括a和b这两者,则在上述任何情况下,都满足“x包括a或b”。另外,除非另有规定或者根据上下文清楚知道针对单数形式,否则本申请和所附权利要求中所使用的冠词“a”和“an”一般应被理解为“一个或多个”。此外,为了简化解释,尽管这里的图和描述可以包括操作或阶段的序列或一系列操作或阶段,但是这里所公开的方法的元素可以以不同的顺序或同时地出现。另外,这里公开的方法的元素可以与这里没有明确呈现和描述的其它元素一起发生。此外,可能并非需要这里描述的方法的所有元素来实现根据本发明的方法。尽管这里以特定组合描述了方面、特征和元素,但是各方面、特征或元素可以单独使用,或者可以以具有或不具有其它方面、特征和/或元素的各种组合使用。虽然已经结合某些实施例描述了本发明,但是应当理解,本发明不限于所公开的实施例,而是意在涵盖所附权利要求的范围内所包括的各种修改和等同布置,该范围应被给予法律所允许的最广泛解释,以包含所有这类修改和等同布置。当前第1页1 2 3 
起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。
此文章来源于网络,如有侵权,请联系删除
相关标签:
热门咨询
tips