一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种面向强化学习模型的容器化测试方法与系统与流程

2021-10-24 08:56:00 来源:中国专利 TAG:计算机软件 容器 模型 强化 面向


1.本发明属于计算机软件技术领域,具体涉及一种面向强化学习模型的容器化测试方法与系统。


背景技术:

2.强化学习是一种更接近现实中生命体的学习方式,与“深度学习”技术不同,它不利用预先标注的数据,而是通过代理与环境进行交互获得的奖赏来指导行为,目标是使代理获得尽可能多的来自环境的奖励,学习最优策略。强化学习的测试需要依赖于强化学习的环境。从原理上来讲,强化学习与深度学习的区别在于前者需要与测试环境在线实时交互,基于环境反馈产生相应的行为,继而进行相关的判断和评估;而后者对测试环境的依赖性不强,仅根据模型本身的结构以及最后的输出层得到预测结果。
3.传统的强化学习模型测试,需要测试服务器中搭建测试环境,并把测试对象接入测试服务器中,这种做法的问题在于:首先,从测试环境的要求来看,强化学习模型的测试过程严重依赖于测试环境及其配置文件,且一般对测试环境要求较高;其次,测试的隔离性来看,传统的测试将测试对象与测试的软硬件环境紧紧绑定在一起,测试过程的隔离性较差,测试过程中一旦需要更换测试环境,则会产生搭建测试环境的重复工作量。
4.目前在传统的强化学习模型的测试中,被测的强化学习模型严重依赖于测试环境的问题以及由软硬件环境依赖导致的测试公平性问题。


技术实现要素:

5.针对现有技术中存在的问题,本发明的目的在于提供一种面向强化学习模型的容器化测试方法与系统,本发明将测试环境、强化学习模型(代理)分别封装到不同的docker容器中,在测试执行的过程中,测试方服务器分别调用测试环境和强化学习模型的docker镜像文件,通过测试平台的上述机制实现了测试环境与强化学习模型在软硬件环境上的解耦,从而达到测试方和被测方在测试过程中测试行为的分离。
6.在测试过程中测试方服务器进行cpu、gpu、内存、网卡等硬件资源调配及并发数控制。
7.测试平台可以实时展示测试过程,被测方可对测试结果实时监控;测试任务完成后,测试方可进行测试结果的对比,并形成测试方对于该项测试任务的测试基准。
8.在下载被测方更新的代理docker镜像文件后,测试方服务器将代理docker镜像的评估模块和回调模块重新封装至代理的docker镜像文件中,实现了基于代理docker的强化学习评估机制创新。
9.在本发明中,测试方是指对于强化学习模型进行测试与评估的主体,测试方为强化学习模型的测试提供包含测试环境、测试代理模板(强化学习模型)等的docker镜像文件,运行强化学习模型并得出测试结果;测试平台是进行强化学习模型测试的管理平台,用于创建并管理测试项目、实时显示测试过程、展示测试结果,进行被测方和测试方的分割,
用以实现测试环境和被测代理的解耦;被测方是指针对具体测试任务提供强化学习模型的主体;代理是指针对具体测试任务的强化学习模型。
10.为了解决上述问题,第一方面,本发明提出了一种面向强化学习模型的容器化测试方法,包括以下步骤:
11.步骤1:测试方根据待建的测试任务制作测试环境docker镜像,依据测试任务设计评估指标和代理docker镜像及其对应的连接模块、回调模块、评估模块,并将连接模块封装到代理docker镜像文件模板;可选的,测试方也可将评估模块封装到代理docker镜像文件模板中;
12.步骤2:测试方在测试平台上新建测试任务,上传代理docker镜像文件模板至测试方服务器的docker私有镜像仓库,同时上传相应的测试环境docker镜像到测试方服务器的测试环境docker镜像仓库中;
13.步骤3:被测方在测试平台查看测试任务,当有与本地待训练代理相关的测试任务时从测试方服务器下载docker镜像文件(包含测试环境docker镜像和代理docker镜像),在本地利用测试环境docker镜像训练代理,把训练好的代理集成到代理docker镜像中,再将集成后的代理docker镜像上传至测试方服务器的docker私有镜像仓库;
14.步骤4:测试方服务器动态监控测试方服务器的硬件资源调配情况,评估是否能够运行新的测试任务;若硬件资源满足测试任务的运行条件,则进入步骤5;若硬件资源不满足,则由测试方服务器持续监控硬件资源;
15.步骤5:测试方服务器实时监控docker私有镜像仓库,如果发现有步骤3新上传的代理docker镜像文件,测试方服务器从测试环境docker镜像仓库和docker私有镜像仓库中分别下载测试环境docker镜像文件和步骤3新上传的代理docker镜像文件,向代理docker镜像文件添加或替换回调模块和评估模块,并对其进行重新封装制作;在新的代理docker镜像制作完成后,开始运行相关测试任务;
16.步骤6:测试方服务器将测试过程数据实时传回测试平台,被测方通过测试平台实时监控测试过程并进行测试任务的管理;
17.步骤7:测试完成后,测试方服务器分析得到测试结果,将测试结果返回至测试平台后存储至测试平台的数据库中,并释放测试方服务器的硬件资源;被测方通过测试平台查看相关的测试结果;
18.步骤8:测试方通过测试平台查看所有测试任务的测试结果,并根据测试指标设置测试基准以及进行测试任务的管理。
19.进一步的,步骤1具体为:
20.步骤1.1:测试方根据强化学习模型想要处理的任务,构造测试环境,并制作测试环境docker镜像;
21.步骤1.2:测试方根据测试任务设计评估指标和代理docker镜像对应的连接模块、回调模块、评估模块等,连接模块用于代理连接测试环境docker镜像、进行数据交互等;评估模块用于评估指标的计算;回调模块用于向测试平台回传评估结果;
22.步骤1.3:将连接模块封装到代理docker镜像文件模板;可选的,还可以将评估模块打包到代理docker镜像文件模板中。
23.进一步的,步骤2具体为:
24.步骤2.1:测试方在测试平台上新建测试任务,保存到测试平台的数据库中;
25.步骤2.2:测试方根据步骤2.1新建的测试任务,上传步骤1.3制作的代理docker镜像文件模板到测试方服务器的docker私有镜像仓库;
26.步骤2.3:测试方上传步骤1.1制作的测试环境docker镜像至测试环境docker镜像仓库中。
27.进一步的,步骤3具体为:
28.步骤3.1:被测方在测试平台查看步骤2.2创建的测试任务,选择加入与自己代理相关的测试任务,从测试方服务器的docker私有镜像仓库下载测试任务相应的代理docker镜像文件模板,从测试方服务器的测试环境docker镜像仓库中下载测试任务相应的测试环境docker镜像文件;
29.步骤3.2:被测方基于测试任务的docker镜像文件模板,在本地利用测试环境docker镜像训练代理,经测试无误后,将训练好的代理集成到代理docker镜像文件中;
30.步骤3.3:被测方上传步骤3.2里制作好的代理docker镜像文件到测试方服务器的docker私有镜像仓库。这里的代理docker镜像文件至少包含了连接模块和代理。
31.进一步的,步骤4具体为:
32.测试方服务器的监听器针对测试方服务器的cpu、gpu、内存、网卡等的资源负载、资源剩余量、资源使用阈值情况进行持续监听,并通过设置最大并发数控制测试环境容器的并行运行实例。
33.当测试方服务器评估硬件资源满足测试任务的运行条件时,进入步骤5;当测试方服务器评估硬件资源不满足测试任务的运行条件时,测试方服务器的监听器则持续监听硬件资源。
34.进一步的,步骤5具体为:
35.步骤5.1:测试方服务器的监听器以固定频率实时监控docker私有镜像仓库,是否有新的代理docker镜像文件上传;如果有,则进入步骤5.2;
36.步骤5.2:测试方服务器的后端将新上传的代理docker镜像文件和测试环境docker镜像文件下载到测试方服务器的后端;
37.步骤5.3:测试方服务器的后端对下载的代理docker镜像进行重新封装,即在代理docker镜像文件中添加评估模块和回调模块,如果步骤3.3的代理docker镜像文件已经包含了评估模块,则用新添加的评估模块替换步骤3.3代理docker镜像中的评估模块;将重新封装的代理docker镜像保存到docker私有镜像仓库中;重新封装的代理docker镜像文件包括连接模块、评估模块、回调模块、代理等;
38.步骤5.4:测试方服务器根据分配的硬件资源和端口资源,按先后顺序运行测试环境docker镜像和代理docker镜像,继而运行相关测试任务;
39.在测试任务执行过程中,代理docker容器的连接模块连接代理和测试环境进行周期性的数据交互。具体地,从测试环境中获取实时环境状态数据,并将实时环境状态数据反馈给代理;同时,代理docker容器的连接模块将代理的行动指令传输回测试环境。
40.需要说明的是,对于存储在docker镜像仓库中的静态文件称之为docker镜像文件,对于已经运行的docker文件称之为容器。
41.进一步的,步骤6具体为:
42.步骤6.1:测试平台的远程服务模块实时监控测试方服务器的后端,如发现有新的测试任务,则进入步骤6.2;
43.步骤6.2:测试方服务器的后端读取实时测试数据,通过代理docker镜像的回调模块将测试结果发送至测试平台的后端;实时测试数据包括但不限于实时的代理运行状态数据、环境状态数据、测试指标、代理运行的视频流等;
44.步骤6.3:测试平台的前端从后端读取实时测试数据,并展示在前端页面上;
45.优选的,代理运行状态数据包括运行状态、运行起始时间、运行终止时间、运行时长等信息,以表格形式展示;环境状态数据和测试指标以文本形式实时刷新展示;视频流以超链接形式展示,点击超链接即可弹出窗口观看实时视频;
46.步骤6.4:被测方可以通过测试平台的前端页面实时监控测试过程;在测试任务执行完成后,进入步骤7;
47.优选的,如果被测方需要对运行中的测试任务的管理,则进入步骤6.5;运行中的测试任务的管理包括测试任务的终止等;
48.步骤6.5:测试平台的前端收到测试终止的指令,将测试终止的指令传输至测试平台的后端;
49.步骤6.6:测试平台的后端将测试终止的指令通过代理docker镜像的回调模块传输至测试方服务器的后端;
50.步骤6.7:测试方服务器的后端接收到测试终止的指令,停止运行代理容器和测试环境容器,测试任务终止,进入步骤7。
51.进一步的,步骤7具体为:
52.步骤7.1:测试过程中,测试方服务器的后端持续收集和保存测试数据;
53.步骤7.2:测试完成后,测试方服务器的后端使用代理docker镜像的评估模块对于测试数据进行分析和计算,并与步骤1.2设计的测试任务评估指标进行对比,得到本次测试任务的测试结果,并保存到测试结果数据记录文件中;
54.步骤7.3:测试方服务器的后端读取测试结果数据记录文件,通过代理docker镜像的回调模块将测试结果数据记录文件发送至测试平台的后端,由测试平台的后端存储到测试平台的数据库中;
55.步骤7.4:测试完成后,测试方服务器的监听器释放测试环境容器和代理容器的硬件资源和端口。
56.步骤7.5:测试平台的前端从测试平台的数据库中读取测试结果数据记录文件,并展示在测试平台的前端页面上,被测方通过测试平台的前端查看相关的测试结果;
57.进一步的,步骤8具体为:
58.步骤8.1:测试方可以查看测试平台中所有测试任务的信息,这些信息包括每次提交的镜像标签信息、运行起始时间、运行结束时间、运行日志信息及评估结果等,同时可以设置某个测试结果在排行榜中显示或者隐藏;
59.步骤8.2:测试方可根据测试指标从若干个测试结果中选择一个测试指标结果作为测试任务的测试指标基准,并利用该基准对测试结果进行对比;
60.步骤8.3:测试方可进行测试项目的管理,包括在测试项目管理中查看测试任务的历史数据、对比多个测试任务的测试结果、删除测试任务等。
61.第二方面,本发明提出了一种面向强化学习模型的容器化测试系统,包括测试平台、测试方服务器,其中:
62.测试平台包括前端、后端、数据库、远程管理模块;其中:
63.前端用于测试任务的发布和测试结果的展示;
64.后端用于平台的后端服务,以及代理docker镜像回调模块的调用;
65.数据库用于存储和管理测试平台的测试任务、测试结果、注册用户(包括测试方和被测方)等;
66.远程管理模块用于监控测试方服务器的后端;
67.测试平台中几个模块的连接关系为:前端与后端之间使用应用层网络传输协议进行数据请求和交互,以实现任务新建、任务管理、结果展示等;后端与数据库之间使用应用层网络传输协议进行数据请求和交互,以实现数据的保存和读取;远程管理模块与测试方服务器之间使用传输层协议,以实现测试任务监控、任务管理等;前端与终端之间,使用通讯层协议,用于终端展示和用户交互。
68.测试方服务器包括docker私有镜像仓库、测试环境docker镜像仓库、后端、数据结果文件库、监听器;
69.docker私有镜像仓库用于存储测试方的docker镜像文件模板,以及含有测试对象的docker镜像文件;
70.测试环境docker镜像仓库用于存储测试方的测试环境docker镜像文件模板;
71.后端的功能是:1)与监听器通讯,接收下载代理docker镜像文件和测试环境docker镜像文件的指令;2)从docker私有镜像仓库中下载并运行代理docker镜像文件和测试环境docker镜像文件;3)通过代理docker镜像的回调模块与测试平台连接,传输测试结果等;
72.监听器的功能是:1)以固定频率监听docker私有镜像仓库是否有新的docker镜像文件上传,如果有,立刻下载新的docker镜像文件至后端;2)负责gpu、cpu、内存、网卡等资源调配及并发数控制;3)负责代理镜像和环境镜像的端口分配和回收;
73.数据结果文件库用于存储实时测试过程数据以及多个代理的测试结果数据记录文件;
74.测试方服务器几个模块之间的连接关系为:后端与数据结果文件库之间使用应用层网络传输协议进行数据请求和交互,以实现数据结果文件的保存和读取;监听器与docker私有镜像仓库、测试环境docker镜像仓库之间使用传输层协议,以实现私有镜像仓库的监听、镜像拉取等;监听器与后端直接使用传输层协议,以实现运行任务的管理、硬件资源调配及回收、测试执行等。
75.本发明的优点如下:
76.(1)由于强化学习模型在执行过程中需要实时调用环境,本发明使用了docker技术,将测试环境和强化学习模型分别封装在不同的docker容器中,在运行中分别调用测试环境和强化学习模型,实现了测试环境与测试硬件的分离,摆脱了强化学习模型严重依赖于测试环境的问题;
77.(2)cpu、gpu、内存等硬件资源调配及并发数控制,防止资源利用枯竭导致的测试方服务器崩溃无响应情况;
78.(3)将docker镜像文件模板保存在测试方服务器的docker私有镜像文件仓库,保证了测试对象的安全性和隐私性;
79.(4)将代理docker镜像的评估模块和回调模块重新封装到代理docker镜像文件中,保证了测试的公平性。
80.(5)在测试过程中,使用代理docker镜像的回调模块传输实时测试数据及代理运行的视频流,实现了测试过程和结果可视化。
附图说明
81.图1为本发明的方法流程图。
82.图2为本发明面向强化学习模型的容器化测试系统图。
具体实施方式
83.下面结合附图对本发明进行进一步详细描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
84.在本实施例中,将自动驾驶中的无人车决策控制算法作为测试代理(强化学习模型)。测试方是指对于无人车决策控制算法进行测试与评估的主体,为无人车决策控制算法的测试提供包含测试环境、测试代理模板(无人车决策控制算法)等的docker镜像文件,运行无人车决策控制算法并得出测试结果;测试平台是进行无人车决策控制算法测试的管理平台,用于创建并管理测试项目、实时显示测试过程、展示测试结果,进行被测方和测试方的分割,用以实现测试环境和被测代理的解耦;被测方是指针对自动驾驶测试任务提供无人车决策控制算法的主体;代理是指针对自动驾驶测试任务的无人车决策控制算法。
85.第一方面,本发明提出了一种面向强化学习模型的容器化测试方法,包括以下步骤:
86.步骤1:测试方根据待建的测试任务制作测试环境docker镜像,依据测试任务设计评估指标和对应的连接模块、回调模块、评估模块,将代理docker镜像的连接模块封装到代理docker镜像文件模板;可选的,测试方也可将代理docker镜像的评估模块封装到代理docker镜像文件模板中;
87.步骤2:测试方在测试平台上新建自动驾驶测试任务,上传代理docker镜像文件模板至测试方服务器的docker私有镜像仓库,同时上传相应的测试环境docker镜像到测试环境docker镜像仓库中;
88.步骤3:被测方在测试平台查看自动驾驶测试任务,下载docker镜像文件(包含测试环境docker镜像和代理docker镜像文件模板),在本地利用测试环境docker镜像训练代理,把训练好的代理集成到代理docker镜像中,再将集成后的代理docker上传至测试方服务器的docker私有镜像仓库;
89.步骤4:测试方服务器动态监控测试方服务器的硬件资源调配情况,评估是否能够运行新的自动驾驶测试任务;若硬件资源满足自动驾驶测试任务的运行条件,则进入步骤5;若硬件资源不满足,则由测试方服务器持续监控硬件资源;
90.步骤5:测试方服务器实时监控docker私有镜像仓库,如果发现有步骤3新上传的代理docker镜像文件,测试方服务器从测试环境docker镜像仓库和docker私有镜像仓库中
下载测试环境docker镜像文件和步骤3新上传的代理docker镜像文件,向代理docker镜像文件添加或替换回调模块和评估模块,并对其进行重新封装制作;在新的代理docker镜像制作完成后,开始运行相关自动驾驶测试任务;
91.步骤6:测试方服务器将测试过程数据实时传回测试平台,被测方通过测试平台实时监控测试过程并进行自动驾驶测试任务的管理;
92.步骤7:测试完成后,测试方服务器分析得到测试结果,将测试结果返回至测试平台后存储至测试平台的数据库中,并释放测试方服务器的硬件资源;被测方通过自动驾驶测试平台查看相关的测试结果;
93.步骤8:测试方通过测试平台查看所有自动驾驶测试任务的测试结果,并根据测试指标设置测试基准以及进行测试任务的管理。
94.进一步的,步骤1具体为:
95.步骤1.1:测试方根据强化学习模型想要处理的任务,构造测试环境,并制作测试环境docker镜像;具体的,构造测试环境可以包含天气、光照、路况、正负障碍等场景,行人的漫游、穿越人行横道等行为,其他车辆的漫游行为;
96.步骤1.2:测试方根据测试任务设计评估指标和代理docker镜像对应的连接模块、回调模块、评估模块等,连接模块用于代理连接测试环境docker镜像、进行数据交互等;评估模块用于评估指标的计算;回调模块用于向测试平台回传评估结果;
97.步骤1.3:将连接模块打包形成代理docker镜像文件模板;可选的,还可以将评估模块打包到代理docker镜像文件模板中。
98.进一步的,步骤2具体为:
99.步骤2.1:测试方在测试平台上新建自动驾驶测试任务,保存到测试平台的数据库中;自动驾驶测试任务的数据可以是自动驾驶的开始时间、结束时间、任务说明、提交限制、评估标准、数据测试集下载链接、提交说明等;
100.步骤2.2:测试方根据步骤2.1新建的自动驾驶测试任务,上传步骤1.3制作的代理docker镜像文件模板到测试方服务器的docker私有镜像仓库;
101.步骤2.3:测试方上传步骤1.1制作的测试环境docker镜像至测试环境docker镜像仓库中。
102.进一步的,步骤3具体为:
103.步骤3.1:被测方在测试平台查看步骤2.2创建的自动驾驶测试任务,选择加入自动驾驶测试任务,从测试方服务器的docker私有镜像仓库下载自动驾驶测试任务相应的代理docker镜像文件模板,从测试方服务器的测试环境docker镜像仓库中下载测试任务相应的测试环境docker镜像文件;
104.步骤3.2:被测方基于自动驾驶测试任务的docker镜像文件模板,在本地利用测试环境docker镜像训练代理,经测试无误后,将训练好的代理集成到代理docker镜像文件中;
105.步骤3.3:被测方上传步骤3.2里制作好的代理docker镜像文件到测试方服务器的docker私有镜像仓库。这里的代理docker镜像文件至少包含了连接模块和代理。
106.进一步的,步骤4具体为:
107.测试方服务器的监听器针对测试方服务器的cpu、gpu、内存、网卡等资源负载、资源剩余量、资源使用阈值情况进行持续监听,并通过设置最大并发数控制测试环境容器的
并行运行实例。
108.例如,设置测试方服务器的监听器允许容器运行实例的最大并发数为4,对gpu资源进行持续监听,控制测试环境容器最多同时运行4个的测试任务。
109.当测试方服务器评估硬件资源满足测试任务的运行条件时,进入步骤5;当测试方服务器评估硬件资源不满足测试任务的运行条件时,测试方服务器的监听器则持续监听硬件资源。
110.进一步的,步骤5具体为:
111.步骤5.1:测试方服务器的监听器以固定频率实时监控docker私有镜像仓库,是否有新的代理docker镜像文件上传;如果有,则进入步骤5.2;
112.步骤5.2:测试方服务器的后端将步骤3.3新上传的代理docker镜像文件和测试环境docker文件下载到测试方服务器的后端;
113.步骤5.3:测试方服务器的后端对下载的代理docker镜像进行重新封装,即在代理docker镜像文件中添加评估模块和回调模块,如果步骤3.3的代理docker镜像文件已经包含了评估模块,则用新添加的评估模块替换步骤3.3的评估模块;将重新封装的代理docker镜像保存到docker私有镜像仓库中;重新封装的代理docker镜像文件包括连接模块、评估模块、回调模块、代理等;
114.步骤5.4:测试方服务器根据分配的硬件资源和端口资源,按先后顺序运行测试环境docker镜像和代理docker镜像,继而运行相关测试任务;
115.在一实施例中,自动驾驶测试任务执行时,代理docker容器的连接模块连接代理和测试环境进行周期性的数据交互。具体的,从测试环境中获取实时环境状态数据,并将实时环境状态数据反馈给代理;同时,代理docker容器的连接模块将代理的行动指令传输回测试环境。
116.需要说明的是,对于存储在docker镜像仓库中的静态文件称之为docker镜像文件,对于已经运行的docker文件称之为容器。
117.进一步的,步骤6具体为:
118.步骤6.1:测试平台的远程服务模块实时监控测试方服务器的后端,如发现有新的测试任务,则进入步骤6.2;
119.步骤6.2:测试方服务器的后端读取实时测试数据,通过代理docker镜像的回调模块将测试结果发送至测试平台的后端;实时测试数据包括但不限于实时的代理运行状态数据、环境状态数据、测试指标、代理运行的视频流等;
120.步骤6.3:测试平台的前端从后端读取实时测试数据,并展示在前端页面上;
121.优选的,代理运行状态数据包括运行状态、运行起始时间、运行终止时间、运行时长等信息,以表格形式展示;环境状态数据和测试指标以文本形式实时刷新展示;视频流以超链接形式展示,点击超链接即可弹出窗口观看实时视频;
122.步骤6.4:被测方可以通过测试平台的前端页面实时监控测试过程;在测试任务执行完成后,进入步骤7;
123.具体的,基于自动驾驶测试任务的前端页面上实时展示的内容包括但不限于以下内容:
124.路线id、任务状态;
125.评估指标:碰撞静态物体、碰撞行人次数、碰撞车辆次数、偏离路线、闯红灯、违停、路线超时、交通堵塞、航线偏移等;
126.视频流:上帝视角俯瞰实时视频、第一视角实时展示视频流等。
127.优选的,如果被测方需要对运行中的测试任务的管理,则进入步骤6.5;运行中的测试任务的管理包括测试任务的终止等;
128.步骤6.5:测试平台的前端收到测试终止的指令,将测试终止的指令传输至测试平台的后端;
129.步骤6.6:测试平台的后端将测试终止的指令通过代理docker镜像的回调模块传输至测试方服务器的后端;
130.步骤6.7:测试方服务器的后端接收到测试终止的指令,停止运行代理容器和测试环境容器,测试任务终止,进入步骤7。
131.进一步的,步骤7具体为:
132.步骤7.1:测试过程中,测试方服务器的后端持续收集和保存测试数据;
133.步骤7.2:测试完成后,测试方服务器的后端对于测试数据进行分析和计算,并与步骤1.2设计的测试任务评估指标进行对比,得到本次测试任务的测试结果,并保存到测试结果数据记录文件中;
134.步骤7.3:测试方服务器的后端读取测试结果数据记录文件,通过代理docker镜像的回调模块将测试结果数据记录文件发送至测试平台的后端,由测试平台的后端存储到测试平台的数据库中;
135.步骤7.4:测试完成后,测试方服务器的监听器释放测试环境容器和代理容器的硬件资源和端口。
136.步骤7.5:测试平台的前端从测试平台的数据库中读取测试结果数据记录文件,并展示在测试平台的前端页面上,被测方通过测试平台的前端查看相关的测试结果;
137.具体的,基于自动驾驶测试任务的结果展示页面上展示的内容包括但不限于以下内容:
138.路线id、任务状态;
139.评估指标:碰撞静态物体、碰撞行人次数、碰撞车辆次数、偏离路线、闯红灯、违停、路线超时、交通堵塞、航线偏移等;
140.排行榜得分:航程得分、违法得分、测试总得分。
141.进一步的,步骤8具体为:
142.步骤8.1:测试方可以查看测试平台中所有测试任务的信息,这些信息包括每次提交的镜像标签信息、运行起始时间、运行结束时间、运行日志信息及评估结果等,同时可以设置某个测试结果在排行榜中显示或者隐藏;
143.步骤8.2:测试方可根据测试指标从若干个测试结果中选择一个测试指标结果作为测试任务的测试指标基准,并利用该基准对测试结果进行对比;
144.步骤8.3:测试方可进行测试项目的管理,包括在测试项目管理中查看测试任务的历史数据、对比多个测试任务的测试结果、删除测试任务等。
145.第二方面,本发明提出了一种面向强化学习模型的容器化测试系统,包括测试平台、测试方服务器,其中:
146.测试平台包括前端、后端、数据库、远程管理模块;其中:
147.前端用于测试任务的发布和测试结果的展示;
148.后端用于平台的后端服务,以及代理docker镜像回调模块的调用;
149.数据库用于存储和管理测试平台的测试任务、测试结果、注册用户(包括测试方和被测方)等;
150.远程管理模块用于监控测试方服务器的后端;
151.测试平台中几个模块的连接关系为:前端与后端之间使用应用层网络传输协议进行数据请求和交互,例如http协议,以实现任务新建、任务管理、结果展示等;后端与数据库之间使用应用层网络传输协议进行数据请求和交互,例如http协议,以实现数据的保存和读取;远程管理模块与测试方服务器之间使用传输层协议,例如tcp或rpc协议,以实现测试任务监控、任务管理等;前端与终端之间,使用通讯层协议,用于终端展示和用户交互。
152.测试方服务器包括docker私有镜像仓库、测试环境docker镜像仓库、后端、数据结果文件库、监听器;
153.docker私有镜像仓库用于存储测试方的docker镜像文件模板,以及含有测试对象的docker镜像文件;
154.测试环境docker镜像仓库用于存储测试方的测试环境docker镜像文件模板;
155.后端的功能是:1)与监听器通讯,接收下载代理docker镜像文件和测试环境docker镜像文件的指令;2)从docker私有镜像仓库中下载并运行代理docker镜像文件和测试环境docker镜像文件;3)通过代理docker镜像的回调模块与测试平台连接,传输测试结果等;
156.监听器的功能是:1)以固定频率监听docker私有镜像仓库是否有新的docker镜像文件上传,如果有,立刻下载新的docker镜像文件至后端;2)负责gpu、cpu、内存、网卡等资源调配及并发数控制;3)负责代理镜像和环境镜像的端口分配和回收;
157.数据结果文件库用于存储实时测试数据以及多个代理的测试结果数据记录文件;
158.测试方服务器几个模块之间的连接关系为:后端与数据结果文件库之间使用应用层网络传输协议进行数据请求和交互,例如http协议,以实现数据结果文件的保存和读取;监听器与docker私有镜像仓库、测试环境docker镜像仓库之间使用传输层协议,例如tcp或rpc协议,以实现私有镜像仓库的监听、镜像拉取等;监听器与后端直接使用传输层协议,例如tcp或rpc协议,以实现运行任务的管理、硬件资源调配及回收、测试执行等。
159.尽管为说明目的公开了本发明的具体实施例,其目的在于帮助理解本发明的内容并据以实施,本领域的技术人员可以理解:在不脱离本发明及所附的权利要求的精神和范围内,各种替换、变化和修改都是可能的。因此,本发明不应局限于最佳实施例所公开的内容,本发明要求保护的范围以权利要求书界定的范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜