1.本发明描述了一种计算机实现的、用于创建用于对交通参与者进行计算机模拟的算法的方法、一种计算机实现的、用于训练至少一个用于机动车的控制设备的算法的方法、一种计算机程序产品以及一种机动车。
背景技术:2.在现有技术中公开了本文开头所述类型的用于创建用于对交通参与者进行计算机模拟的算法的方法、用于训练至少一个用于机动车的控制设备的算法的方法、计算机程序产品以及机动车。
3.近年来,部分自动行驶的第一机动车(相应于按照sae j3016的sae2级)已经可以批量生产。自动行驶(相应于按照sae j3016的sae>=3级)或自主行驶(相应于按照sae j3016的sae4/5级)的机动车必须能够按照多种多样的预设定例如行驶目标和遵守常见的交通规则以最大的安全性对于未知的交通状况自动地做出反应。由于其他交通参与者、特别是其他人类交通参与者行为的不可预测性,交通现实是高度复杂的,因此,人们认为几乎不可能利用传统的方法并且基于人为的规则来编程机动车的相应的控制算法和控制设备。
4.此外,为了借助于计算机解决高度复杂的问题,公知的是:利用机器学习或人工智能方法或通过自学习神经网络来研发算法。这种算法一方面可以比传统算法更适当地对复杂的交通状况做出反应。另一方面,借助于人工智能原则上可以在研发过程期间并且在日常生活中通过持续的学习进一步研发并连续地改善该算法。替换地,该算法的状态在研发过程中的训练阶段和制造商验证结束之后可以被冻结并投入到机动车中的相应的控制单元中使用。
5.已知方法的缺点是,到目前为止,模拟是利用遵守规则的交通参与者实施的。相反,实际上常常出现的是:交通参与者不遵守规则,例如开得太快、似乎毫无理由地越过车道标线、注意力不集中、在右边超车或在不接近的轨迹上移动,等等。因此,仅仅利用遵守交通规则的其他交通参与者训练的算法对于人类的驾驶行为准备不足。这导致配备有被相应训练的算法的机动车的驾驶行为不自然,因为该机动车不太灵活地反应并且当该算法不能正确地预计其他交通参与者的行为时会导致危急情况。
6.由jp 2009 019920a公开了一种交通模拟,其基于行人行为或自行车骑行者行为的预测生成实际的路线。该路线从行人或自行车骑行者的角度进行了优化并且也包含与陌生车辆碰撞的风险,可能还有另外的参数,例如天气。由此产生的模型根据整体风险整合了大量路线,利用这些路线模拟真实交通状况。
7.由此,描述了一种状况,在该状况下,行人或自行车骑行车对于另外的参数做出反应。然而,该路线是基于模拟数据。其缺点是,由此产生的路线不能模拟真正交通参与者的行为。
技术实现要素:8.因此,本发明的任务是本文开头所述类型的计算机实现的、用于训练至少一个用于机动车的控制设备的算法的方法、计算机程序产品以及机动车,进一步研发本文开头所述类型的用于创建用于对交通参与者进行计算机模拟的算法的方法、计算机实现的、用于训练至少一个用于机动车的控制设备的算法的方法、计算机程序产品以及机动车,使得它们更好地设置用于反映真实的交通状况。
9.所述任务通过根据权利要求1的计算机实现的、用于创建交通参与者算法以对交通参与者进行计算机模拟的方法、根据并列权利要求6的计算机实现的、用于训练至少一个用于机动车的控制设备的算法的方法、根据并列权利要求9的计算机程序产品以及根据并列权利要求10的机动车解决。另外的构型和拓展方案是从属权利要求的主题。
10.下面描述一种计算机实现的、用于创建交通参与者算法以对交通参与者进行计算机模拟的方法,其中所述交通参与者属于被不力地保护的类别的交通参与者,其中在真实的交通环境中借助于安置在所述交通参与者上的传感器在实施至少一个任务期间检测该类别的交通参与者中多个不同的、真实存在的交通参与者的数据,其中由所述数据求取所述交通参与者的运动轨迹,其中由所述运动轨迹计算出所述任务的平均运动轨迹和偏离平均运动轨迹的带宽。
11.被不力地保护的交通参与者是指其被动安全设备没有提供任何保护,或提供很少的保护的交通参与者,例如通过安全服和/或穿戴式保护器和/或头盔保护。属于该类别的例如有行人、滑板者、轮滑者、自行车骑行者、摩托车骑行者、四轮车骑行者、滑板车骑行者、轮椅骑行者和诸如此类。
12.所述任务主要可以是给真实存在的交通参与者提出的任务或者该任务可以从数据推导出,所述数据从交通参与者的运动数据获得,该交通参与者没有明确任务地在共同的起点或起点区域与共同的终点或终点区域之间运动。相应的任务也可以更复杂地制定,例如采取多个可能的路线中的一条路线,或者它可以有中间目标。
13.可能的来源例如可以是位置记录设备例如移动电话或智能手表。很多交通参与者随身携带移动电话,该移动电话通常适于记录相应的数据。
14.理想地,交通参与者的数量如此之高,以至于由此获得的轨迹数据具有统计学意义,从而能够可靠地推断轨迹并且推导出带宽。从15个交通参与者起可以认为具有统计学意义。
15.所述带宽可以例如覆盖95或99%的各单个轨迹,从而仅仅排除那些距离平均轨迹非常远的轨迹。
16.平均值可以按照已知的各种平均值方法来求取,例如作为几何平均数。
17.由此,相应的交通参与者算法可以在该带宽之内对于给定的任务产生不同的轨迹,该任务比针对相同任务的固定轨迹更接近交通参与者的真实行为。在一个可能的构型中,这些不同可以通过各种参数实现。
18.在第一进一步构型中,交通参与者算法可以如此构成,以至于它在所述带宽之内产生随机化的轨迹。这种随机化的轨迹在一个借助于相同算法模拟的模拟之内的不同训练周期或不同交通参与者中导致不同的行为模式。由此,结果是可以持续产生新的且不可预测的状况,这些状况比以相同方式重复的状况更接近实际情况。
19.在另一进一步构型中可以设置的是,交通参与者是给定的、被不力地保护的车辆类别的车辆,其中分别将用于检测数据的至少一个传感器安置在该车辆上或者分配给该车辆,其中所述数据由所述交通参与者算法评估。
20.对于交通参与者是由人类控制的车辆的情况,常常在相应的机动车上或中反正已经布置有传感器,例如加速度传感器。如果评估由此产生的数据,则可以降低附加所需的传感器的数量或者可以完全避免附加的传感器。
21.根据一个拓展方案,在由交通参与者算法评估数据之前,所述数据可以被变换和/或换算,从而可以由传感器原始数据例如电压值产生可更好地使用的传感器数据例如加速度。
22.在一个进一步构型中可以设置的是,布置在交通参与者或车辆上的所述至少一个传感器是摄像机、gps传感器、加速度传感器、激光雷达传感器和/或雷达传感器。
23.借助于fps传感器可以检测绝对位置,从该绝对位置可以推导出运动模式和轨迹。借助于加速度传感器可以求取相对运动数据。摄像机、激光雷达传感器或雷达传感器可以用于检测环境并且因此可以基于已知的起始点产生轨迹或者至少进行可信度验证。这可以是富有帮助的,用于识别:确定的轨迹包含针对固定的或运动的障碍物做出反应的避让运动。然后,可以将这种轨迹相应地进行分类。
24.在另一进一步构型中可以设置的是,在交通环境中布置至少一个检测交通参与者的传感器,其中数据被评估并且被引入到交通参与者算法中。
25.布置在基础设施中的传感器例如可以是静止的、例如是交通监测摄像机,它可以检测整个交通事件并且从而提供附加的数据以验证交通参与者行为的可信度。由此,特别是可以推导出相关交通参与者的预期行为。
26.在另一进一步构型中可以设置的是,提供自学习神经网络,其中将数据提供给该自学习神经网络,其中交通参与者算法由该自学习神经网络训练。
27.借助于自学习神经网络可以提供一种交通参与者算法,其能够以类似于人类的方式对未知状况做出反应。因此,可能的是,对于交通模拟提供一种可万能采用的算法,借助于该算法可以产生相应交通参与者的模拟,该交通参与者属于被不力地保护的类别。
28.第一独立主题涉及一种计算机实现的、用于训练至少一个用于机动车的控制设备的算法的方法,其中该控制设备设置用于通过基于输入数据在使用所述至少一个算法的情况下干预机动车的总成实现自动化的或自主的行驶功能,其中该算法通过自学习神经网络训练,该方法包括以下步骤:
29.a)提供用于自动化或自主行驶功能的计算机程序产品模块,其中该计算机程序产品模块包含要训练的所述算法和所述自学习神经网络;
30.b)提供具有模拟参数的模拟环境,其中该模拟环境包含真实存在的应用领域的地图数据、机动车以及至少一个另外的、模拟的交通参与者作为代理人,其中至少一个另外的交通参与者的行为通过按照上述方式产生的交通参与者算法来确定;
31.c)提供用于机动车的任务;和
32.d)实施该任务并且训练该算法。
33.由于控制设备的算法是借助于代理人训练的,该代理人比以传统方式编程的代理人模拟被不力地保护的类别的交通参与者如行人、自行车骑行者、摩托车骑行者、或诸如此
类的更自然的行为,因此可以给出更加自然的模拟环境,从而相应的算法在纯模拟中已经可以达到很高的成熟度。
34.在第一进一步构型中可以设置的是,另外的、模拟的交通参与者中的至少一个产生轨迹,该轨迹随机化地或随机地经历参数变化。
35.在每个模拟中,在原地重新产生随机化地或随机地经历参数变化的轨迹,从而相应交通参与者或代理人的行为不是事先确定的。这对于要训练的算法导致特别复杂的挑战并且导致更鲁棒的算法。
36.在另一进一步构型中可以设置的是,提供多个另外的、模拟的交通参与者,它们至少部分地沿着所述平均轨迹部分地在所述带宽之内运动。
37.如果交通参与者表现出不同的行为,即一些做出“正常”行为并且另一些做出不正常行为,则由此可以提供大量代理人,它们能够模拟非常真实的交通事件。
38.另一独立的主题涉及一种用于创建交通参与者算法以对交通参与者进行计算机模拟的装置,其中所述交通参与者属于被不力地保护的类别的交通参与者,其中在该类别的交通参与者中的多个不同的真实存在的交通参与者上安置传感器,利用所述传感器能够在真实的交通环境中在实施至少一个任务期间检测数据,其中设置有用于从所述数据求取运动轨迹的器件,其中所述器件设置用于从所述运动轨迹计算出所述任务的平均运动轨迹和偏离平均运动轨迹的带宽。
39.在另一进一步构型中可以设置的是,交通参与者是给定的、被不力地保护的车辆类别的车辆,其中分别将用于检测数据的至少一个传感器安置在该车辆上或者分配给该车辆,其中所述交通参与者算法构造用于评估该至少一个传感器的数据。
40.在另一进一步构型中可以设置的是,布置在交通参与者或车辆上的所述至少一个传感器是摄像机、gps传感器、加速度传感器、激光雷达传感器和/或雷达传感器。
41.在另一进一步构型中可以设置的是,在交通环境中布置至少一个检测交通参与者的传感器,其中,设置用于评估数据并且将其引入到交通参与者算法中的器件。
42.在另一进一步构型中可以设置的是,提供自学习神经网络,其中将数据提供给该自学习神经网络,其中该自学习神经网络设置用于训练所述交通参与者算法。
43.另一独立主题涉及一种用于训练至少一个用于机动车的控制设备的算法的装置,其中该控制设备设置用于通过基于输入数据在使用所述至少一个算法的情况下干预机动车的总成实现自动化的或自主的行驶功能,其中,设置用于训练该算法的自学习神经网络,其中:
44.a)提供用于自动化或自主行驶功能的计算机程序产品模块,其中该计算机程序产品模块包含要训练的所述算法和所述自学习神经网络;
45.b)提供具有模拟参数的模拟环境,其中该模拟环境包含真实存在的应用领域的地图数据、机动车以及至少一个另外的、模拟的交通参与者作为代理人,其中该至少一个另外的交通参与者的行为通过按照上述方式产生的交通参与者算法来确定;
46.c)提供用于机动车的任务;和
47.d)设置用于实施该任务并且训练该算法的器件。
48.在第一进一步构型中可以设置的是,设置用于使所述另外的、模拟的交通参与者中的至少一个交通参与者的轨迹的参数随机化地或随机地变化的器件。
49.在另一进一步构型中可以设置用于提供多个另外的、模拟的交通参与者的器件,所述另外的交通参与者设置用于至少部分地沿着所述平均轨迹部分地在所述带宽之内运动。
50.另一独立主题涉及一种计算机程序产品,其具有计算机可读存储介质,在该计算机可读存储介质上嵌入指令,当所述指令被至少一个计算单元实施时,所述指令引起该至少一个计算单元被设置用于实施上述类型的方法。
51.该方法可以在一个或多个计算单元上分布地实施,从而确定的方法步骤在该一个计算单元上并且其他的方法步骤在至少一个另外的计算单元上实施,其中如有必要,计算出的数据可以在这些计算单元之间传输。
52.另一独立主题涉及一种机动车,其具有上述类型的计算机程序产品。
附图说明
53.另外的特征和细节从下面的说明中得出,在该说明中(必要时参照附图)详细描述了至少一个实施例。描述的和/或图示的特征自身或者以任意的、有意义的组合形成所述主题,必要时与权利要求无关,并且特别是附加地也形成一个或多个独立的申请的主题。相同、类似和/或功能相同的部件设有相同的附图标记。在此,示意性地:
54.图1示出机动车,其被设置用于自主行驶;
55.图2示出用于图1中的机动车的计算机程序产品;
56.图3示出具有图1中的机动车和其他交通参与者的地点;
57.图4示出被不力地保护的类别的交通参与者的代表;
58.图5示出一个方法的流程图;
59.图6示出另一方法的流程图;
60.图7示出生成虚拟代理人的原理图;以及
61.图8示出生成用于控制图1中的机动车的机动车控制设备的算法的原理图。
具体实施方式
62.图1示出机动车2,其被设置用于自主行驶。
63.该机动车2具有机动车控制设备4,该机动车控制设备具有计算单元6和存储器8。在存储器8中存储计算机程序产品,该计算机程序产品在后面特别是结合图2、图3和图8详细描述。
64.机动车控制设备4一方面与一系列环境传感器连接,所述环境传感器允许检测机动车2的当前位置以及相应的交通状况。属于此的有位于机动车2前部的环境传感器10、12、位于机动车2尾部的环境传感器14、16、摄像机18以及gps模块20。根据构型而定,可以设置另外的传感器,例如车轮转速传感器、加速度传感器等,它们与机动车控制设备4连接。
65.在机动车2运行期间,计算单元6载入存放在存储器8中的计算机程序产品并且实施该计算机程序产品。基于算法和输入信号,计算单元6决定对机动车2的控制,计算单元6可以通过干预分别与机动车控制设备4连接的转向装置22、发动机控制装置24以及制动器26实现该控制。
66.图2示出具有计算机程序产品模块30的计算机程序产品28。
67.计算机程序产品30具有自学习神经网络32,该自学习神经网络训练算法34。自学习神经网络32按照强化学习方法进行学习,也就是说,神经网络32试图通过改变所述算法34根据一个或多个标准或尺度获得用于改进的行为的收益,即改进该算法34。但是,替换地,也可以使用已知的监督学习方法和无监督学习方法以及这些学习方法的组合。
68.算法34可以基本上由具有值矩阵(通常称为权重)的复杂滤波器组成,所述值定义一个滤波器函数,该滤波器函数根据在此通过环境传感器10至20采集的输入参量确定所述算法34的行为并且生成用于控制机动车2的控制信号。
69.算法34的品质的监测由另一计算机程序产品模块36进行,该另一计算机程序产品模块监测输入参量和输出参量,从中确定指标并根据该指标检查功能是否符合所述品质。同时,该计算机程序产品模块36可以为神经网络32提供负面和正面的收益。
70.图3示出地点36。
71.机动车2在街道38上行驶,该街道与街道40在街道交叉口42交叉。
72.多个摩托车骑行者、如图3所示的摩托车骑行者44具有的任务50是,从街道40上的起点46行驶到街道38上的目标点48。该路线要求从街道40转入街道38。摩托车骑行者44在该任务50期间行驶确定的轨迹52.1。
73.该任务50由不同的摩托车骑行者多次重复,所述摩托车骑行者全都具有从起点46行驶到目标点48的任务。实际中,所述起点和目标点可以定义为区域或走廊,例如定义为两维区域或定义为起始线和目标线。
74.在此,其他摩托车骑行者骑出其他轨迹52.2、52.3和52.4,所述轨迹分别相互不同并且其原因一方面在于相应交通参与者的驾驶行为,另一方面在于分别存在的不同交通条件或具体状况。
75.借助于这里描述的用于产生用于摩托车骑行者类别的交通参与者算法,由此产生平均轨迹54以及带宽边界56.1、56.2,它们描述常见行为以及与平均轨迹54的常见偏差。
76.带宽边界56.1、56.2在每个区段中覆盖行驶过的轨迹中的大多数,也就是说,所述轨迹52.1、52.2的各单个轨迹不需要在带宽边界56.1、56.2内完全地从起点到终点。
77.此外,在街道交叉口42处可以设置固定安置的交通监测摄像机58,其观察交通事件并且从而记录摩托车骑行者44的行为和其行驶的轨迹52.1以及其他交通事件例如行人60的运动。
78.之后,如后面描述的那样,在地点36的模拟中训练用于机动车2的控制设备4的算法34,其中,摩托车骑行者44的模拟作为代理人进行,该代理人在模拟的框架内可以具有相同的任务50。
79.图4示出摩托车骑行者44。
80.摩托车骑行者44具有gps传感器62,该gps传感器连续地检测关于摩托车骑行者44的位置的数据。该gps传感器62例如可以安装在由摩托车骑行者44携带的移动电话中。
81.此外,设置控制装置64,该控制装置例如可以控制摩托车骑行者44的摩托车65并且可以检测数据。
82.此外,摄像机66与控制装置64连接,该摄像机记录摩托车骑行者44前面的交通事件。此外,控制装置64可以检测关于摩托车的数据,例如节气门姿态、挂入的挡位、速度、倾斜角度和诸如此类。
83.图5示出用于产生交通参与者算法的流程图。
84.在第一步骤中提供软件。
85.接着提供神经网络和算法。
86.之后确定任务,例如图3中所示的任务50,作为摩托车骑行者从起点46行驶到目标点48。
87.然后,由该摩托车骑行者44和其他摩托车骑行者分别检测传感器数据,例如由gps传感器62、控制装置64以及摄像机66和交通监测摄像机58。将传感器数据馈送到神经网路中,在那里求取平均轨迹和带宽。
88.接着,添加随机模块,借助于该随机模块可以使所述模拟中的轨迹随机变化。
89.由此产生并且输出算法,该算法可以在另一交通模拟中使用。
90.图6示出用于训练该算法34的流程图。
91.在第一步骤中提供要训练的、用于机动车2的控制设备4的计算机程序产品模块(软件)。
92.在随后的步骤中提供地点38的地图数据。
93.接着定义用于该算法34的任务,例如作为机动车2在确定的交通状况中从起始地点到达目标地点。
94.在该交通状况中存在其他交通参与者,例如摩托车骑行者。为此,定义和提供虚拟对象和代理人。这些代理人中的至少一个按照图5中产生的算法做出行为。相关的代理人可以具有任务50。
95.然后,模拟具有所述虚拟对象和代理人的一个或多个不同的交通状况。
96.然后,在机动车的控制设备中基于所提出的状况训练该算法。
97.通过观察要训练的车辆和与模拟环境的反馈,可使用相应的信息以影响该模拟。
98.借助于这里描述的方法可以反映大量不同的交通参与者,例如汽车、卡车、摩托车、自行车骑行者、行人。同样,可以显示真实的基础设施,例如路牌、交通灯、街道符号、交通标线等。
99.借助于该方法,复杂的交通演习可以在合作流动的框架内被真实地研究,例如在具有多个交通参与者和交通参与者之间有交流的路口行驶,以便例如不危及交通参与者。
100.图7示出生成代理人70的另一原理图,在此模拟摩托车骑行者44。
101.在此,出发点是,代理人50通过借助于自学习方法完善的算法72产生。给在计算机74中运行的该算法74提供gps传感器62、控制装置64、摄像机66以及交通监测摄像机58的数据。
102.自学习神经网络76通过改变该算法并且给出一个算法72
′
来优化该算法62并且检验修改后的算法72
′
是否比原始算法72更好地工作。一旦满足一定的质量指标,就冻结算法72并且借助于编译器78提供虚拟代理人70,该虚拟代理人可以在模拟环境中使用。
103.图8示出模拟环境80。
104.该模拟环境80通过地点34的地图数据以及模拟机动车2和其他交通参与者如行人60以及虚拟代理人70来提供。
105.然后,设立任务,控制机动车2的算法34应实施该任务。这(例如结合图7所描述的那样)由神经网络32处理,该神经网络改变所述算法34,直到满足一定的质量标准。
106.然后,借助于编译器82产生用于机动车2的控制设备4的计算机程序产品模块30。
107.尽管通过实施例详细地图示和阐述了该主题,然而本发明不限于所公开的例子并且本领域技术人员从中可以推导出其他变型方案。因此,显然可以存在大量变型可能性。而且,示例性描述的实施方式显然表达的仅仅是例子,它们不以任何方式理解为例如保护范围、应用可能性或发明配置的限制。相反,前面的说明和附图说明可以使本领域技术人员能够具体地实施示例性的实施方式,其中本领域技术人在知晓所公开的发明思想的情况下可以例如在各单个在示例性的实施方式中提及的元件的功能和布置方面进行多种多样的改变,而不脱离通过权利要求书及其(例如在说明书中进一步解释的)法律上的等同物所限定的保护范围。
108.附图标记列表
[0109]2ꢀꢀꢀ
机动车
[0110]4ꢀꢀꢀ
控制设备
[0111]6ꢀꢀꢀ
计算单元
[0112]8ꢀꢀꢀ
存储器
[0113]
10
ꢀꢀ
环境传感器
[0114]
11
ꢀꢀ
环境传感器
[0115]
12
ꢀꢀ
环境传感器
[0116]
13
ꢀꢀ
环境传感器
[0117]
14
ꢀꢀ
摄像机
[0118]
15
ꢀꢀ
gpa模块
[0119]
16
ꢀꢀ
车轮转速传感器
[0120]
18
ꢀꢀ
加速度传感器
[0121]
20
ꢀꢀ
踏板传感器
[0122]
22
ꢀꢀ
转向装置
[0123]
24
ꢀꢀ
马达控制装置
[0124]
26
ꢀꢀ
制动器
[0125]
28
ꢀꢀ
计算机程序产品
[0126]
30
ꢀꢀ
计算机程序产品模块
[0127]
32
ꢀꢀ
神经网络
[0128]
34,34
′ꢀ
算法
[0129]
36
ꢀꢀ
地点
[0130]
38
ꢀꢀ
街道
[0131]
40
ꢀꢀ
街道
[0132]
42
ꢀꢀ
街道交叉口
[0133]
44
ꢀꢀ
摩托车骑行者
[0134]
46
ꢀꢀ
起点
[0135]
48
ꢀꢀ
目标点
[0136]
50
ꢀꢀ
任务
[0137]
52.1-52.4 轨迹
[0138]
54
ꢀꢀ
平均轨迹
[0139]
56.1,56.2 带宽边界
[0140]
58
ꢀꢀ
交通监测摄像机
[0141]
60
ꢀꢀ
行人
[0142]
62
ꢀꢀ
gps传感器
[0143]
64
ꢀꢀ
控制装置
[0144]
65
ꢀꢀ
摩托车
[0145]
66
ꢀꢀ
摄像机
[0146]
70
ꢀꢀ
虚拟代理人
[0147]
72,72
′ꢀ
算法
[0148]
72
′ꢀ
修改后的算法
[0149]
74
ꢀꢀ
计算机
[0150]
76
ꢀꢀ
自学习神经网络
[0151]
78
ꢀꢀ
编译器
[0152]
80
ꢀꢀ
模拟环境
[0153]
82
ꢀꢀ
编译器。