基于代理和备份技术的多人协同任务保障方法转让专利

申请号 : CN202211729341.3

文献号 : CN116011991B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张红旗周子豪曹锐程五四吴钱昊郭磊

申请人 : 中国电子科技集团公司第三十八研究所

摘要 :

本发明提供了一种基于代理和备份技术的多人协同任务保障方法,涉及软件技术领域。在目标客户端与服务器断开连接后,将服务器内的预先训练的目标模型用于模拟目标客户端的用户的操作,以对虚拟设备的参数信息进行更新,从而保障了多人协同任务的顺利、高效进行。同时,基于协同客户端的反馈信息以及服务器的确认操作,判断所选择预先训练的目标模型输出的模型结果是否正确,进而验证虚拟设备更新后的参数信息的可行性,避免在多人协同任务进行过程中发生偏差。(56)对比文件Sheng Shen 等.From distributedmachine learning to federated learning:In the view of data privacy andsecurity.Concurrency Computat Practiceand Experience.2020,第34卷(第16期),1-19.甄希金 等.基于VR技术的多人协同船舶消防系统开发及应用.船舶工程.2020,第42卷(第03期),15-18,151.

权利要求 :

1.一种基于代理和备份技术的多人协同任务保障系统,其特征在于,所述系统包括服务器、目标客户端和协同客户端,其中:所述服务器,用于在确定与所述目标客户端断开连接后,获取虚拟设备的参数信息,作为第一参数信息;将所述第一参数信息输入至预先训练的目标模型,获取所述预先训练的目标模型输出的多个模型结果;获取所述多个模型结果中优先级最高的模型结果,作为第一模型结果,将所述第一模型结果发送至所述协同客户端;其中,任一客户端的用户分别对应一个所属用户自身的预先训练的模型;所述目标模型表示所属目标客户端的用户的模型;所述虚拟设备表示多人协同任务的处理对象;模型结果的数量为第一预设数值;

所述协同客户端,用于基于接收到的第一模型结果,对所述协同客户端内的本地模型进行更新,并获取更新结果;基于所述更新结果,向所述服务器发送反馈信息;其中,所述本地模型与所述服务器内的虚拟设备的结构、参数信息均保持一致,所述反馈信息包括赞同意见和反对意见;

所述服务器,用于判断接收到的反馈信息中赞同意见的占比量是否超过第二预设数值;若是,则基于所述第一模型结果对所述虚拟设备中的参数信息进行更新,得到更新后的参数信息,作为第二参数信息;基于所述第二参数信息,服务器确认所述第一模型结果是否正确;若是,则向协同客户端发送确认信息,继续进行所述多人协同任务。

2.一种基于代理和备份技术的多人协同任务保障方法,其特征在于,所述多人协同任务保障方法应用于基于代理和备份技术的多人协同任务保障系统的服务器,所述系统还包括目标客户端和协同客户端,所述方法包括:在确定与所述目标客户端断开连接后,获取虚拟设备的参数信息,作为第一参数信息;

其中,所述虚拟设备表示多人协同任务的处理对象;

将所述第一参数信息输入至预先训练的目标模型,获取所述预先训练的目标模型输出的多个模型结果;其中,任一客户端的用户分别对应一个所属用户自身的预先训练的模型;

所述目标模型表示所属目标客户端的用户的模型;模型结果的数量为第一预设数值;

获取所述多个模型结果中优先级最高的模型结果,作为第一模型结果,并将所述第一模型结果发送至所述协同客户端,以使所述协同客户端基于接收到的第一模型结果,对所述协同客户端内的本地模型进行更新,并获取更新结果;基于所述更新结果,向所述服务器发送反馈信息;其中,所述本地模型与所述服务器内的虚拟设备的结构、参数信息均保持一致,所述反馈信息包括赞同意见和反对意见;

判断接收到的反馈信息中赞同意见的占比量是否超过第二预设数值;若是,则基于所述第一模型结果对所述虚拟设备中的参数信息进行更新,得到更新后的参数信息,作为第二参数信息;

基于所述第二参数信息,确认所述第一模型结果是否正确;

若是,则向协同客户端发送确认正确信息,继续进行所述多人协同任务。

3.根据权利要求2所述的多人协同任务保障方法,其特征在于,在判断接收到的反馈信息中赞同意见的占比量是否超过第二预设数值之后,所述方法还包括:若否,则向所述协同客户端发送撤销指令,以使所述协同客户端撤销对本地模型进行更新的操作;

基于模型结果的优先级顺序,逐次选择模型结果对所述第一模型结果进行替换,并发送至所述协同客户端,以使所述协同客户端基于接收到的替换后的模型结果,重新对所述本地模型进行更新,并获取更新结果,进而基于所述更新结果,重新向所述服务器发送反馈信息;

若某一模型结果替换所述第一模型结果之后,所述服务器接收到的反馈信息中赞同意见的占比量超过第二预设数值,则基于所述替换后的模型结果对所述虚拟设备中的参数信息进行更新,重新得到更新后的参数信息,作为第二参数信息;

若预先训练的目标模型输出的全部模型结果对所述第一模型结果替换完成后,所述服务器接收到的反馈信息中赞同意见的占比量均未超过第二预设数值时,则中止进行所述多人协同任务,发送确认进行指令至所述协同客户端,以使所述协同客户端判断所述多人协同任务是否继续进行。

4.根据权利要求2~3任一所述的多人协同任务保障方法,其特征在于,所述确定与所述目标客户端断开连接的方法包括:基于心跳机制,服务器确定与目标客户端断开连接;

或者,接收到所述目标客户端发送的断开连接指令。

5.根据权利要求2所述的多人协同任务保障方法,其特征在于,所述方法还包括:

当用户初次加入所述多人协同任务时,获取所述用户的用户数据信息,并构建所述用户的用户对象;其中,不同用户的用户对象具备执行所述多人协同任务的不同权限范围;目标用户对象表示所述目标客户端的用户对象、协同用户对象表示所述协同客户端的用户对象;

将构建后的用户对象进行备份,作为备份用户对象,并将所述备份用户对象发送至其余客户端;其中,所述服务器包含备份目标用户对象和备份协同用户对象、所述目标客户端包含目标用户对象和备份协同对象、所述协同客户端包括协同用户对象和备份目标用户对象;

当服务器与目标客户端未断开连接时,接收目标客户端发送的操作指令,作为第一操作指令;

基于所述第一操作指令,对虚拟设备的参数进行更新,得到更新后的参数信息,作为第三参数信息;

基于所述第三参数信息,判断所述第一操作指令是否正确;

若是,将所述第三参数信息和所述第一操作指令存入至服务器内的数据库中,并将所述第一操作指令发送至目标客户端和协同客户端,以使所述目标客户端和所述协同客户端对第一操作指令进行存储,并基于所述第一操作指令对本地模型进行更新。

6.根据权利要求5所述的多人协同任务保障方法,其特征在于,在基于所述第三参数信息,判断所述第一操作指令是否正确之后,所述方法还包括:若否,则服务器撤销基于所述第一操作指令对虚拟设备的参数进行更新的操作;

向所述目标客户端发送确认错误信息,以使所述目标客户端对所述第一操作指令进行调整,并重新向服务器发送调整后的第一操作指令。

7.根据权利要求2所述的多人协同任务保障方法,其特征在于,所述方法还包括:

与目标客户端重新连接后,接收所述目标客户端发送的重新连接指令;其中,所述重新连接指令包括多人协同任务的任务ID,以及断开连接前所述目标客户端发送的最后一条操作指令的操作序号;

基于所述任务ID和操作序号,服务器将在所述任务ID中位于所述操作序号之后的全部操作信息同步至所述目标客户端。

8.一种基于代理和备份技术的多人协同任务保障装置,其特征在于,所述装置应用于基于代理和备份技术的多人协同任务保障系统的服务器,所述系统还包括目标客户端和协同客户端,所述装置包括:第一获取模块,用于在确定与所述目标客户端断开连接后,获取虚拟设备的参数信息,作为第一参数信息;所述虚拟设备表示多人协同任务的处理对象;

第二获取模块,用于将所述第一参数信息输入至预先训练的目标模型,获取所述预先训练的目标模型输出的多个模型结果;其中,任一客户端的用户分别对应一个所属用户自身的预先训练的模型;所述目标模型表示所属目标客户端的用户的模型;

第三获取模块,用于获取所述多个模型结果中优先级最高的模型结果,作为第一模型结果,并将所述第一模型结果发送至所述协同客户端,以使所述协同客户端基于接收到的第一模型结果,对所述协同客户端内的本地模型进行更新,并获取更新结果,基于所述更新结果,向所述服务器发送反馈信息;其中,所述本地模型与所述服务器内的虚拟设备的结构、参数信息均保持一致,所述反馈信息包括赞同意见和反对意见;模型结果的数量为第一预设数值;

第一判断模块,用于判断接收到的反馈信息中赞同意见的占比量是否超过第二预设数值;若是,则基于所述第一模型结果对所述虚拟设备中的参数信息进行更新,得到更新后的参数信息,作为第二参数信息;

第一确认模块,用于基于所述第二参数信息,确认所述第一模型结果是否正确;

第一发送模块,用于确认所述第一模型结果正确后,向协同客户端发送确认正确信息,继续进行所述多人协同任务。

9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;

存储器,用于存放计算机程序;

处理器,用于执行存储器上所存放的程序时,实现权利要求2‑7任一所述的方法步骤。

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求2‑7任一所述的方法步骤。

说明书 :

基于代理和备份技术的多人协同任务保障方法

技术领域

[0001] 本发明涉及软件技术领域,具体涉及一种基于代理和备份技术的多人协同任务保障方法。

背景技术

[0002] 随着新一代信息技术和制造技术的发展,数字孪生技术作为智能制造的未来趋势,日益体现出在工业产业中的战略价值。其中,数字孪生技术的典型应用场景之一便是多人协同配合,即多人对利用数字化仿真技术构建的虚拟装备模型进行操作,包括装配或维修训练指导教学、工厂设备多人配合维修、产线设备多工种协同组装等多个具体技术实践中。例如,针对工厂中包含多个设备的复杂系统,需多位技术工种人员协同进行检修。可以先基于数字孪生技术,将该复杂系统在服务器的虚拟空间中进行映射,得到对应的虚拟设备。然后,不同的检修人员利用自身的客户端与服务器进行连接,多人协同对该虚拟设备进行检修操作,得到该虚拟设备的检修结果,作为实际工作中对复杂系统的检修结果。
[0003] 在上述多人协同任务的进行过程中,当遭遇网络资源紧张或客户端设备突发故障等情况,将导致一个或多个用户无法继续参与该多人协同任务,使得多人协同任务中断,延误了多人协同任务的完成时间。
[0004] 因此,亟需一种多人协同任务的保障方法,以解决上述问题。

发明内容

[0005] (一)解决的技术问题
[0006] 针对现有技术的不足,本发明提供了一种基于代理和备份技术的多人协同任务保障方法,解决了当一个或多个用户无法继续参与多人协同任务,导致多人协同任务中断,延误了多人协同任务的完成时间的问题。
[0007] (二)技术方案
[0008] 为实现以上目的,本发明通过以下技术方案予以实现:
[0009] 在本发明的第一方面,提供了一种基于代理和备份技术的多人协同任务保障系统,所述系统包括服务器、目标客户端和协同客户端,其中:
[0010] 所述服务器,用于在确定与所述目标客户端断开连接后,获取虚拟设备的参数信息,作为第一参数信息;将所述第一参数信息输入至预先训练的目标模型,获取所述预先训练的目标模型输出的多个模型结果;获取所述多个模型结果中优先级最高的模型结果,作为第一模型结果,将所述第一模型结果发送至所述协同客户端;其中,任一客户端的用户分别对应一个所属用户自身的预先训练的模型;所述目标模型表示所属目标客户端的用户的模型;所述虚拟设备表示多人协同任务的处理对象;模型结果的数量为第一预设数值;
[0011] 所述协同客户端,用于基于接收到的第一模型结果,对所述协同客户端内的本地模型进行更新,并获取更新结果;基于所述更新结果,向所述服务器发送反馈信息;其中,所述本地模型与所述服务器内的虚拟设备的结构、参数信息均保持一致,所述反馈信息包括赞同意见和反对意见;
[0012] 所述服务器,用于判断接收到的反馈信息中赞同意见的占比量是否超过第二预设数值;若是,则基于所述第一模型结果对所述虚拟设备中的参数信息进行更新,得到更新后的参数信息,作为第二参数信息;基于所述第二参数信息,服务器确认所述第一模型结果是否正确;若是,则向协同客户端发送确认信息,继续进行所述多人协同任务。
[0013] 在本发明的第二方面,提供了一种基于代理和备份技术的多人协同任务保障方法,所述方法应用于基于代理和备份技术的多人协同任务保障系统的服务器,所述系统还包括目标客户端和协同客户端,所述方法包括:
[0014] 在确定与所述目标客户端断开连接后,获取虚拟设备的参数信息,作为第一参数信息;其中,所述虚拟设备表示多人协同任务的处理对象;
[0015] 将所述第一参数信息输入至预先训练的目标模型,获取所述预先训练的目标模型输出的多个模型结果;其中,任一客户端的用户分别对应一个所属用户自身的预先训练的模型;所述目标模型表示所属目标客户端的用户的模型;
[0016] 获取所述多个模型结果中优先级最高的模型结果,作为第一模型结果,并将所述第一模型结果发送至所述协同客户端,以使所述协同客户端基于接收到的第一模型结果,对所述协同客户端内的本地模型进行更新,并获取更新结果;基于所述更新结果,向所述服务器发送反馈信息;其中,所述本地模型与所述服务器内的虚拟设备的结构、参数信息均保持一致,所述反馈信息包括赞同意见和反对意见;模型结果的数量为第一预设数值;
[0017] 判断接收到的反馈信息中赞同意见的占比量是否超过第二预设数值;若是,则基于所述第一模型结果对所述虚拟设备中的参数信息进行更新,得到更新后的参数信息,作为第二参数信息;
[0018] 基于所述第二参数信息,确认所述第一模型结果是否正确;
[0019] 若是,则向协同客户端发送确认正确信息,继续进行所述多人协同任务。
[0020] 可选的,在判断接收到的反馈信息中赞同意见的占比量是否超过第二预设数值之后,所述方法还包括:
[0021] 若否,则向所述协同客户端发送撤销指令,以使所述协同客户端撤销对本地模型进行更新的操作;
[0022] 基于模型结果的优先级顺序,逐次选择模型结果对所述第一模型结果进行替换,并发送至所述协同客户端,以使所述协同客户端基于接收到的替换后的模型结果,重新对所述本地模型进行更新,并获取更新结果,进而基于所述更新结果,重新向所述服务器发送反馈信息;
[0023] 若某一模型结果替换所述第一模型结果之后,所述服务器接收到的反馈信息中赞同意见的占比量超过第二预设数值,则基于所述替换后的模型结果对所述虚拟设备中的参数信息进行更新,重新得到更新后的参数信息,作为第二参数信息;
[0024] 若预先训练的目标模型输出的全部模型结果对所述第一模型结果替换完成后,所述服务器接收到的反馈信息中赞同意见的占比量均未超过第二预设数值时,则中止进行所述多人协同任务,发送确认进行指令至所述协同客户端,以使所述协同客户端判断所述多人协同任务是否继续进行。
[0025] 可选的,所述确定与所述目标客户端断开连接的方法包括:
[0026] 基于心跳机制,服务器确定与目标客户端断开连接;
[0027] 或者,接收到所述目标客户端发送的断开连接指令。
[0028] 可选的,所述方法还包括:
[0029] 当用户初次加入所述多人协同任务时,获取所述用户的用户数据信息,并构建所述用户的用户对象;其中,不同用户的用户对象具备执行所述多人协同任务的不同权限范围;目标用户对象表示所述目标客户端的用户对象、协同用户对象表示所述协同用户端的用户对象;
[0030] 将构建后的用户对象进行备份,作为备份用户对象,并将所述备份用户对象发送至其余客户端;其中,所述服务器包含备份目标用户对象和备份协同用户对象、所述目标客户端包含目标用户对象和备份协同对象、所述协同客户端包括协同用户对象和备份目标用户对象;
[0031] 当服务器与目标客户端未断开连接时,接收目标客户端发送的操作指令,作为第一操作指令;
[0032] 基于所述第一操作指令,对虚拟设备的参数进行更新,得到更新后的参数信息,作为第三参数信息;
[0033] 基于所述第三参数信息,判断所述第一操作指令是否正确;
[0034] 若是,将所述第三参数信息和所述第一操作指令存入至服务器内的数据库中,并将所述第一操作指令发送至目标客户端和协同客户端,以使所述目标客户端和所述协同客户端对第一操作指令进行存储,并基于所述第一操作指令对本地模型进行更新。
[0035] 可选的,在基于所述第三参数信息,判断所述第一操作指令是否正确之后,所述方法还包括:
[0036] 若否,则服务器撤销基于所述第一操作指令对虚拟设备的参数进行更新的操作;
[0037] 向所述目标客户端发送确认错误信息,以使所述目标客户端对所述第一操作指令进行调整,并重新向服务器发送调整后的第一操作指令。
[0038] 可选的,所述方法还包括:
[0039] 与目标客户端重新连接后,接收所述目标客户端发送的重新连接指令;其中,所述重新连接指令包括多人协同任务的任务ID,以及断开连接前所述目标客户端发送的最后一条操作指令的操作序号;
[0040] 基于所述任务ID和操作序号,服务器将在所述任务ID中位于所述操作序号之后的全部操作信息同步至所述目标客户端。
[0041] 在本发明的第三方面,提供了一种基于代理和备份技术的多人协同任务保障装置,所述装置应用于基于代理和备份技术的多人协同任务保障系统的服务器,所述系统还包括目标客户端和协同客户端,所述装置包括:
[0042] 第一获取模块,用于在确定与所述目标客户端断开连接后,获取虚拟设备的参数信息,作为第一参数信息;所述虚拟设备表示多人协同任务的处理对象;
[0043] 第二获取模块,用于将所述第一参数信息输入至预先训练的目标模型,获取所述预先训练的目标模型输出的多个模型结果;其中,任一客户端的用户分别对应一个所属用户自身的预先训练的模型;所述目标模型表示所属目标客户端的用户的模型;
[0044] 第三获取模块,用于获取所述多个模型结果中优先级最高的模型结果,作为第一模型结果,并将所述第一模型结果发送至所述协同客户端,以使所述协同客户端基于接收到的第一模型结果,对所述协同客户端内的本地模型进行更新,并获取更新结果;基于所述更新结果,向所述服务器发送反馈信息;其中,所述本地模型与所述服务器内的虚拟设备的结构、参数信息均保持一致,所述反馈信息包括赞同意见和反对意见;模型结果的数量为第一预设数值;
[0045] 第一判断模块,用于判断接收到的反馈信息中赞同意见的占比量是否超过第二预设数值;若是,则基于所述第一模型结果对所述虚拟设备中的参数信息进行更新,得到更新后的参数信息,作为第二参数信息;
[0046] 第一确认模块,用于基于所述第二参数信息,确认所述第一模型结果是否正确;
[0047] 第一发送模块,用于确认所述第一模型结果正确后,向协同客户端发送确认正确信息,继续进行所述多人协同任务。
[0048] 在本发明的第四方面,提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
[0049] 存储器,用于存放计算机程序;
[0050] 处理器,用于执行存储器上所存放的程序时,实现任一所述的多人协同任务保障方法步骤。
[0051] 在本发明的第五方面,提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现任一所述的多人协同任务保障方法步骤。
[0052] (三)有益效果
[0053] 本发明提供了一种基于代理和备份技术的多人协同任务保障方法。与现有技术相比,具备以下有益效果:
[0054] 服务器,用于在确定与所述目标客户端断开连接后,获取虚拟设备的参数信息,作为第一参数信息;将第一参数信息输入至预先训练的目标模型,获取预先训练的目标模型输出的多个模型结果;获取多个模型结果中优先级最高的模型结果,作为第一模型结果,将第一模型结果发送至所述协同客户端;协同客户端,用于基于接收到的第一模型结果,对协同客户端内的本地模型进行更新,并获取更新结果;基于更新结果,向服务器发送反馈信息;服务器,用于判断接收到的反馈信息中赞同意见的占比量是否超过第二预设数值;若是,则基于第一模型结果对所述虚拟设备中的参数信息进行更新,得到更新后的参数信息,作为第二参数信息;基于第二参数信息,服务器确认第一模型结果是否正确;若是,则向协同客户端发送确认信息,继续进行所述多人协同任务。
[0055] 在目标客户端与服务器断开连接后,将服务器内的预先训练的目标模型用于模拟目标客户端的用户的操作,以对虚拟设备的参数信息进行更新,从而保障了进行多人协同任务的顺利、高效进行。同时,基于协同客户端的反馈信息以及服务器的确认操作,判断所选择预先训练的目标模型输出的模型结果是否正确,进而验证了虚拟设备更新后的参数信息的可行性,避免了在多人协同任务进行过程中发生偏差。

附图说明

[0056] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0057] 图1为本发明实施例提供的一种基于代理和备份技术的多人协同任务保障系统的示意图;
[0058] 图2为本发明实施例提供的一种基于代理和备份技术的多人协同任务保障方法的交互图;
[0059] 图3为本发明实施例提供的一种多人协同机制的示意图;
[0060] 图4为本发明实施例提供的一种多人协同机制的时序图;
[0061] 图5为本发明实施例提供的一种基于代理和备份技术的多人协同任务保障装置的结构图;
[0062] 图6为本发明实施例提供的一种电子设备的结构图。

具体实施方式

[0063] 为使本发明实施例的目的、技术方案和优点更加清楚,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0064] 本发明实施例通过提供一种基于代理和备份技术的多人协同任务保障方法,解决了一个或多个用户无法继续参与该多人协同任务,导致多人协同任务中断的问题,保障了多人协同任务的顺利、高效进行。
[0065] 本发明实施例中的技术方案为解决上述技术问题,总体思路如下:
[0066] 多人协同技术的两大核心问题是网络性能和同步机制。网络性能决定在进行多人协同任务的多个客户端间数据同步的速度、任务效率以及操作体验;同步机制则直接决定进行多人协同操作的多用户间对于虚拟设备的操作是否能准确反映,即不同用户看到虚拟设备的状态是否一致和不同用户是否能正确进行配合操作。多人协同任务的进行是基于互联网进行数据传输,网络性能取决于网络服务提供商,往往不能人为进行过多干预和改变。但同步机制需要在每个具体的应用场景下进行人为定制,需要保证数据的实时同步,又尽量节约网络带宽资源。
[0067] 目前虚拟设备模型多人协同操作的场景下,同步机制往往基于网络传输条件良好的情况下进行设计,未考虑网络资源紧张或设备突发故障等情况。如遇上述特殊的情况,极有可能延误多人协同任务,甚至导致多人协同任务重做,对人力、物力产生了极大的浪费。
[0068] 为解决上述问题,本发明提供的技术方案在目标客户端与服务器断开连接后,将服务器内的预先训练的目标模型用于模拟目标客户端的用户的操作,以对虚拟设备的参数信息进行更新,从而保障了进行多人协同任务的顺利、高效进行。同时,基于协同客户端的反馈信息以及服务器的确认操作,判断所选择预先训练的目标模型输出的模型结果是否正确,进而验证了虚拟设备更新后的参数信息的可行性,避免了在多人协同任务进行过程中发生偏差。
[0069] 为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。
[0070] 首先,对本发明中所涉及的概念进行简要介绍。
[0071] 在执行多人协同任务之前,基于数字孪生技术,对于包含一个或多个设备的复杂系统,在服务器的虚拟空间中进行映射,得到存储于服务器内的虚拟系统。其中,该虚拟系统中包含一个或多个虚拟设备,与原有复杂系统中的设备一一对应。
[0072] 当虚拟系统构建完成后,多个操作人员(即,本发明中客户端的用户)开启执行多人协同任务。首先,多个操作人员将各自的客户端分别与服务器建立连接。然后,基于自身的客户端,每个操作人员通过自身的用户对象依次下发操作指令至服务器,对虚拟系统的虚拟设备进行操作。其中,参与多人协同任务的每一个用户中均对应一个所属的客户端。虚拟设备表示多人协同任务的处理对象。
[0073] 多人协同任务的系统中包括服务器和多个客户端。在本发明的实施例中,正在对虚拟设备进行操作的客户端作为目标客户端;除目标客户端之外的其余客户端作为协同客户端。为了防止多个用户对象同时对虚拟设备进行操作时彼此之间互相影响,进而导致虚拟设备的参数信息变化发生混淆,因此当某一用户对虚拟设备进行操作时,其他的用户对象不可以同时对该虚拟设备进行操作。可以理解的是,目标客户端的数量为1个,但目标客户端并非某一固定的客户端,而是基于不同客户端在执行多人协同任务的先后顺利进行不断调换的。协同客户端的数量为1个或多个,不做具体限定,以参与多人协同任务的客户端数量为准。
[0074] 当目标客户端与服务器断开连接后,目标客户端中的操作指令无法传输至服务器,使得服务器无法基于操作指令对虚拟设备进行操作,导致多人协同任务执行中断,大大延长了多人协同任务的完成时间。
[0075] 为解决上述问题,本发明实施例提供了一种基于代理和备份技术的多人协同任务保障系统。参见图1,图1为本发明实施例提供的一种基于代理和备份技术的多人协同任务保障系统的示意图。该系统包括服务器101、目标客户端102和多个协同客户端(包括协同客户端1031、协同客户端1032)。图中仅以包含二个协同客户端为例进行说明,实际的系统中包含的协同客户端的数目并不限于此。
[0076] 其中:服务器101,用于在确定与目标客户端102断开连接后,获取虚拟设备的参数信息,作为第一参数信息;将第一参数信息输入至预先训练的目标模型,获取预先训练的目标模型输出的多个模型结果;获取多个模型结果中优先级最高的模型结果,作为第一模型结果,将第一模型结果发送至所述协同客户端1031、1032。
[0077] 其中,任一客户端的用户分别对应一个所属用户自身的预先训练的模型;目标模型表示所属目标客户端102的用户的模型;虚拟设备表示多人协同任务的处理对象;模型结果的数量为第一预设数值。
[0078] 协同客户端1031、1032,用于基于接收到的第一模型结果,分别对各自客户端内的本地模型进行更新,并获取更新结果;基于更新结果,向服务器101发送反馈信息。
[0079] 其中,本地模型与服务器内的虚拟设备的结构、参数信息均保持一致,反馈信息包括赞同意见和反对意见。
[0080] 服务器101,用于判断接收到的反馈信息中赞同意见的占比量是否超过第二预设数值;若是,则基于第一模型结果对所虚拟设备中的参数信息进行更新,得到更新后的参数信息,作为第二参数信息;基于第二参数信息,服务器101确认第一模型结果是否正确;若是,则向协同客户端1031、1032发送确认正确信息,继续进行多人协同任务。
[0081] 在上述技术方案中,虚拟设备表示为多人协同任务的处理对象。具体的,该虚拟设备可以位于虚拟系统中,数量为1个或多个;或者,该虚拟设备的数量为一个,该虚拟设备即为虚拟系统。
[0082] 基于相同的发明构思,本发明实施例还提供了一种基于代理和备份技术的多人协同任务保障方法,该方法可以应用于基于代理和备份技术的多人协同任务保障系统中服务器、目标客户端和协同客户端。其中,该系统中包括一个服务器、一个目标客户端以及一个或多个协同客户端。
[0083] 参见图2,图2为本发明实施例提供的一种基于代理和备份技术的多人协同任务保障方法的交互图,该方法包括以下步骤:
[0084] S201、服务器在确定与目标客户端断开连接后,获取虚拟设备的参数信息,作为第一参数信息。
[0085] 其中,虚拟设备表示多人协同任务的处理对象。
[0086] S202、服务器将第一参数信息输入至预先训练的目标模型,获取预先训练的目标模型输出的多个模型结果。
[0087] 其中,任一客户端的用户分别对应一个所属用户自身的预先训练的模型;目标模型表示所属目标客户端的用户的模型;模型结果的数量为第一预设数值。
[0088] S203、服务器获取多个模型结果中优先级最高的模型结果,作为第一模型结果。
[0089] S204、服务器将第一模型结果发送至协同客户端。
[0090] S205、协同客户端基于接收到的第一模型结果,对协同客户端内的本地模型进行更新,并获取更新结果。
[0091] 其中,本地模型与服务器内的虚拟设备的结构、参数信息均保持一致。
[0092] S206、基于更新结果,协同客户端向服务器发送反馈信息。
[0093] 其中,反馈信息包括赞同意见和反对意见。
[0094] S207、服务器判断接收到的反馈信息中赞同意见的占比量是否超过第二预设数值;若是,则基于第一模型结果对虚拟设备中的参数信息进行更新,得到更新后的参数信息,作为第二参数信息。
[0095] S208、基于第二参数信息,服务器确认第一模型结果是否正确。
[0096] S209、若是,服务器向协同客户端发送确认正确信息,继续进行所述多人协同任务。
[0097] 基于上述处理,在目标客户端与服务器断开连接后,将服务器内的预先训练的目标模型用于模拟目标客户端的用户的操作,以对虚拟设备的参数信息进行更新,从而保障了进行多人协同任务的顺利、高效进行。同时,基于协同客户端的反馈信息以及服务器的确认操作,判断所选择预先训练的目标模型输出的模型结果是否正确,进而验证了虚拟设备更新后的参数信息的可行性,避免了在多人协同任务进行过程中发生偏差。
[0098] 在一些实施例中,基于代理和备份技术的多人协同任务保障方法还包括以下内容:
[0099] 当用户初次加入所述多人协同任务时,服务器构建该用户的用户对象。
[0100] 用户初次加入多人协同任务时,该用户使用的客户端作为初次客户端。用户通过该初次客户端向服务器发送自身的用户数据信息,并申请注册用户对象。
[0101] 其中,用户对象中包含所述用户的用户数据信息。用户数据信息包括用户的职位、工号、用户对象名称、联系方式等内容。用户对象表示为执行多人协同任务的本地用户角色。
[0102] 当服务器确认用户数据信息无误后,构建该用户的用户对象,并基于用户数据信息赋予该用户相应的权限范围。其中,基于用户数据信息中的工号,服务器确认用户数据信息的真实性;基于用户的工号和职位,服务器赋予用户对象不同的权限范围。
[0103] 例如,基于用户数据信息中的工号和职位,确定用户为多人协同任务的监管人员,则该用户对象拥有查看、修改虚拟系统中全部设备的操作权限;基于用户的工号和职位,确定用户为多人协同任务中车床设备的操作人员,则该用户对象仅具备对虚拟系统中虚拟车床设备的操作权限。
[0104] 基于上述处理,规范了不同的用户对象的权限范围,并且由于不同用户拥有不同的权限范围,减少了不同用户之间的操作影响,在保证多人协同任务的安全性的同时,降低了用户的操作行为的差错。
[0105] 此外,用户初次加入多人协同任务的时间点,可以是多人协同任务开启阶段,或者是在多人协同任务的处理过程中,此处不作限定。
[0106] 当用户对象创建成功后,服务器向初次客户端发送一条owner信息,使得该用户在该初次客户端内拥有对该用户对象的操作权限。在本发明的实施例中,目标用户对象表示目标客户端的用户对象、协同用户对象表示协同用户端的用户对象。
[0107] 若用户加入多人协同任务时,用户的用户对象已构建完成,则基于该用户通过客户端向服务器发送自身的用户数据信息,服务器唤醒用户对象。然后,服务器向该客户端发送一条owner信息,使得该用户在上述客户端内拥有对该用户对象的操作权限。
[0108] 当用户对象构建完成后,服务器对构建后的用户对象进行备份,作为备份用户对象,并将备份用户对象发送至其余客户端。
[0109] 基于备份用户对象中的用户数据信息,不同客户端的用户可以查询到其他用户的联系方式,便于不同用户在进行多人协同任务的过程中进行沟通。
[0110] 在本发明提供的实施例中,服务器包含备份目标用户对象和备份协同用户对象、目标客户端包含目标用户对象和备份协同对象、协同客户端包括协同用户对象和备份目标用户对象。
[0111] 参见图3,图3为本发明实施例提供的一种多人协同机制的示意图。如图3所示,多人协同服务器(即,本发明的服务器)中包含多个备份用户对象,分别为用户1的用户对象A、用户2的用户对象B、用户3的用户对象C。
[0112] 用户1客户端中包含用户对象A、用户对象B、用户对象C,其中,用户对象A为用户1客户端的本地用户角色,用户对象B、用户对象C为备份用户角色。用户1客户端具备用户对象A的操作权限,在用户1客户端与多人协同服务器连接后,用户1根据用户对象A的权限范围对多人协同任务中的虚拟设备进行操作。
[0113] 同理,用户2客户端中包含用户对象A、用户对象B、用户对象C,且用户对象B为用户2客户端的本地用户角色,用户对象A、用户对象C为备份用户角色;用户3客户端中包含用户对象A、用户对象B、用户对象C,且用户对象C为用户3客户端的本地用户角色,用户对象A、用户对象B为备份用户角色。
[0114] 在一些实施例中,当服务器与目标客户端未断开连接时,该保障方法包括以下内容:
[0115] 步骤一、服务器接收目标客户端发送的操作指令,作为第一操作指令。
[0116] 步骤二、基于第一操作指令,服务器对虚拟设备的参数进行更新,得到更新后的参数信息,作为第三参数信息。
[0117] 步骤三、基于第三参数信息,服务器判断第一操作指令是否正确。
[0118] 步骤四、若是,将第三参数信息和所述第一操作指令存入至服务器内的数据库中,并将第一操作指令发送至目标客户端和协同客户端,以使目标客户端和协同客户端对第一操作指令进行存储,并基于所述第一操作指令对本地模型进行更新。
[0119] 具体的,在进行多人协同任务的过程中,当用户在目标客户端完成一次操作后,将该次操作将以操作指令的形式由目标客户端发送至服务器。其中,操作指令中包含本次操作用户的用户对象ID、操作的虚拟设备ID、操作的零件ID、操作类型(如:位置移动、温度调节等)、操作相关数据(如某一零件的位移量、虚拟系统中温度的调节值等)等信息。
[0120] 服务器接收目标客户端发送的操作指令,作为第一操作指令。根据第一操作指令,服务器对虚拟系统中的虚拟设备的参数信息进行更新,即得到更新后的参数信息,作为第三参数信息。
[0121] 其中,虚拟设备的参数信息包括:虚拟设备ID、虚拟设备所在空间位置坐标、虚拟设备所在环境温度、虚拟设备工作时长、虚拟设备运行状态、虚拟设备噪音值、虚拟设备的零件数量、零件1ID、零件1相对坐标、零件1对应旋转角度、零件1形变数据、零件1状态等信息。
[0122] 针对步骤三,基于第三参数信息,服务器判断第一操作指令是否正确。一种实现方式中,在多人协同任务的进行过程中提前设置某一用户为服务器的管理员,由该管理员根据得到的第三参数信息判断第一操作指令是否可行。或者,服务器判断获取到的第三参数信息是否符合预设的任务要求。例如,多人协同任务的任务要求中包含虚拟设备的运行温度区间要求,该运行温度区间要求为0℃~30℃。若服务器获取到的第三参数信息中,温度值为40℃,则表明该第三参数信息不符合预设的任务要求,即,第一操作指令不正确。
[0123] 一种实现方式中,在基于所述第三参数信息,判断所述第一操作指令是否正确之后,所述保障方法还包括:
[0124] 若否,则服务器撤销基于所述第一操作指令对虚拟设备的参数进行更新的操作。
[0125] 向所述目标客户端发送确认错误信息,以使所述目标客户端对所述第一操作指令进行调整,并重新向服务器发送调整后的第一操作指令。
[0126] 针对步骤四,服务器将第一操作指令解析为结构化数据,并将该结构化数据和更新后的参数信息共同存入至服务器中的多人协同操作数据库中。具体的,操作指令对应的结构化数据以字段的形式存储在数据表中,并根据用户对象ID对不同的操作指令进行分类。
[0127] 服务器将确认结果、第一操作指令对应的结构化数据和虚拟设备的参数信息的更新记录等多个数据发送至其余客户端(包括目标客户端和协同客户端)。
[0128] 当接收上述数据后,其余客户端对客户端中虚拟系统的本地模型进行更新。客户端的前端页面上显示第一操作指令对应的操作记录,同时在客户端上的多人协同操作记录文件中加入该条记录,以便用户在该客户端上进行查询。具体的,多人协同操作记录文件表示为txt格式日志文件。
[0129] 基于上述处理,服务器将每个客户端发送的操作指令以及虚拟设备的参数变化等信息均同步至全部客户端,不仅将上述信息进行备份,保证了多人协同任务中数据的实时同步。也便于当某一用户在对虚拟设备进行操作时,可以通过客户端实时查询到其他用户的全部操作指令以及虚拟设备的参数变化,为用户下发的操作指令提供了参考。
[0130] 针对步骤S201,虚拟设备的参数信息和用户对象的操作指令均以sql记录存储在服务器中的多人协同数据库中。服务器获取虚拟设备的参数信息的过程包括:基于多人协同任务的任务ID,服务器获取多人协同数据库中对应虚拟设备的参数信息,作为第一参数信息。
[0131] 针对步骤S202,服务器将上述第一参数信息输入至预先训练的目标模型,获取到预先训练的目标模型输出的多个模型结果。其中,目标模型输出的模型结果的表现形式为三元组向量,该三元组向量具体为包含问题定位位置、操作类型、操作相关数据的排序向量。问题定位位置表示虚拟系统中的被调整虚拟设备或者虚拟零件的零件ID编号和位置坐标;操作类型表示不同的操作种类,如零件移动、按钮操作、线缆连接、零件焊接等;操作相关数据表示对虚拟设备或虚拟零件进行调整的具体数值。
[0132] 此外,模型结果的数量为第一预设数值,第一预设数值的大小可由用户提前进行设置,可以为2、3、5等,此处不作具体限定。
[0133] 针对不同客户端对应模型的训练,以本发明实施例中目标客户端的目标模型为例。目标模型为循环神经网络中的LSTM模型。服务器基于目标用户对象的对象ID,获取数据表中对象ID下的第一操作指令,以及获取基于每一条第一操作指令操作后对应的虚拟设备的参数信息,作为LSTM模型的训练样本。通过上述训练样本,对LSTM模型进行训练和迭代,优化目标模型的参数。
[0134] 当上述训练样本未积累到一定数量时,可采用数据增强算法进一步增加训练样本的数量。例如,在零件1左偏1cm的情况下,用户的操作指令为将零件1向右调整1cm,则可以得出另一训练样本为:零件1左偏2cm,对应用户的操作指令为向右调整2cm。
[0135] 由于每个用户下发的操作指令不同,使得每个用户对象的LSTM模型的训练样本不同,因此每个用户对象的LSTM模型训练后的模型参数也不相同,即每个用户的用户角色均对应各自的LSTM模型。
[0136] 针对步骤S203,服务器确定多个模型结果中优先级最高的模型结果,作为第一模型结果。
[0137] 然后,服务器将第一模型结果发送至协同客户端,以使协同客户端基于接收到的第一模型结果,对协同客户端内的本地模型进行更新,并获取更新结果,基于更新结果,向服务器发送反馈信息。
[0138] 其中,本地模型与服务器内的虚拟设备的结构、参数信息均保持一致,反馈信息包括赞同意见和反对意见。
[0139] 由于本地模型与服务器内的虚拟设备的结构、参数信息均保持一致,任一客户端的用户便可以通过本地模型的现状,实时观察虚拟设备的最新状态,即,客户端无需通过网络传输方可观察虚拟设备的最新状态,进而无需占用过多的网络带宽,有效保障了多人协同任务中客户端与服务器之间的传输速率。
[0140] 针对步骤S207,服务器判断接收到的反馈信息中赞同意见的占比量是否超过第二预设数值;若是,则基于第一模型结果对虚拟设备中的参数信息进行更新,得到更新后的参数信息,作为第二参数信息。其中,该第二预设数值的范围是0~1,具体数值可以根据多人协同任务的重要程度进行调整。
[0141] 若赞同意见的占比量超过第二预设数值,则表明目标模型的输出结果得到协同客户端的认可。
[0142] 若多人协同任务的重要程度较高,则可以提高第二预设数值,以保证通过的输出结果得到较多用户的认可,从而降低多人协同任务执行过程中的偏差。若多人协同任务的重要程度较低,则可以降低第二预设数值,以满足当用户的赞同意见较少时也可以继续进行该多人协同任务,进而提升多人协同任务的处理效率,缩短任务完成时间。实际工作中,第二预设数值可以为2/3、3/5等,此处不作具体限定。
[0143] 针对步骤S208,服务器基于第二参数信息,确认第一模型结果是否正确。
[0144] 若是,则服务器向协同客户端发送确认正确信息,继续进行所述多人协同任务。
[0145] 在判断接收到的反馈信息中赞同意见的占比量是否超过第二预设数值之后,所述方法还包括:
[0146] 若否,则服务器向协同客户端发送撤销指令,以使协同客户端撤销对本地模型进行更新的操作。
[0147] 基于模型结果的优先级顺序,逐次选择模型结果对第一模型结果进行替换,并发送至协同客户端,以使协同客户端基于接收到的替换后的模型结果,重新对本地模型进行更新,并获取更新结果;基于更新结果,重新向所述服务器发送反馈信息;
[0148] 若某一模型结果替换所述第一模型结果之后,所述服务器接收到的反馈信息中赞同意见的占比量超过第二预设数值,则基于所述替换后的模型结果对所述虚拟设备中的参数信息进行更新,重新得到更新后的参数信息,作为第二参数信息。
[0149] 若预先训练的目标模型输出的全部模型结果对所述第一模型结果替换完成后,所述服务器接收到的反馈信息中赞同意见的占比量均未超过第二预设数值时,则中止进行所述多人协同任务,发送确认进行指令至所述协同客户端,以使所述协同客户端判断所述多人协同任务是否继续进行。
[0150] 可以理解的是,在基于第二参数信息,确认所述第一模型结果或替换后的第一模型结果是否正确之后,若不正确时,服务器撤销对虚拟设备中的参数信息进行更新的操作,并且向协同客户端发送撤销指令,以使协同客户端撤销对本地模型进行更新的操作。服务器并重新基于模型结果的优先级顺序,逐次选择模型结果对第一模型结果进行替换,并发送至协同客户端,以使协同客户端基于接收到的替换后的模型结果,重新对本地模型进行更新,并获取更新结果;基于更新结果,重新向服务器发送反馈信息。
[0151] 实际工作中,当目标客户端与服务器断开连接后,服务器向协同客户端发起确认投票,由多人协同任务中的其余用户参与确认。若同意服务器内目标模型的操作的用户占总人数的2/3及以上,则该操作通过。若上述操作没被通过,则由服务器撤销当前的操作,并选择在分类结果集中排序第二的操作(即目标模型的输出结果)进行执行,并再次发起确认投票,直至该操作通过确认。
[0152] 若连续三次的操作执行完毕后依然没有通过,则服务器内的目标模型不再自动执行操作,由当前多人协同任务中的其他用户决定下一步处理。其中,下一步处理包括:继续进行多人协同任务、中断多人协同任务或全部退出多人协同任务。
[0153] 在一些实施例中,当目标客户端与服务器重新连接后,所述保障方法还包括以下步骤:
[0154] 步骤一、服务器与目标客户端重新连接后,服务器接收目标客户端发送的重新连接指令。其中,重新连接指令包括多人协同任务的任务ID,以及断开连接前所述目标客户端发送的最后一条操作指令的操作序号。
[0155] 步骤二、基于任务ID和操作序号,服务器将在任务ID中操作序号之后的全部操作信息同步至所述目标客户端。
[0156] 实际工作中,若用户重连多人协同任务时,若该多人协同任务还在进行状态下,则用户向服务器申请用户对象的权限回归,并将服务器上用户对象的控制权转移至用户,以使该用户继续参与当前多人协同任务。
[0157] 在用户在重新获取权限后,该用户的客户端将自动向服务器发送当前多人协同任务的任务ID,以及上次参与多人协同任务时用户的最后一条操作记录的操作序号。服务器在接受到上述信息后,将该条操作后的所有新操作数据信息推送至客户端,用户可在系统当前页面上获取并查看历史操作记录。
[0158] 在一些实施例中,服务器确定与目标客户端断开连接的方法包括:
[0159] 基于心跳机制,服务器确定与目标客户端断开连接;
[0160] 或者,接收到所述目标客户端发送的断开连接指令。
[0161] 一种实现方式中,在多人协同任务开启时,服务器与各个客户端分别构建心跳连接。例如,客户端每隔3s通过长连接通道发送一个心跳请求到服务器。若客户端发送心跳请求的行为连续失败5次,则表明该客户端与服务器已断开连接。
[0162] 一种实现方式中,当用户面临突发事故,无法继续参与该多人协同任务时,用户可以利用客户端主动向服务器发送断开连接指令。当服务器接收到客户端的发送来的断开连接指令后,则可以直接确认该客户端已断开连接。
[0163] 为保证多人协同任务的安全性,在客户端与服务器断开连接之前,需由用户主动选择是否可以由客户端对应的模型代替用户继续执行多人协同任务。
[0164] 基于上述处理,当用户发生网络断线或硬件故障而非正常退出时,且对非正常退出情况预先设置由客户端对应的模型代替用户;或者用户临时有其他任务需处理,可以主动选择由客户端对应的模型代替用户。
[0165] 在上述两种场景下,用户对象的操作权限将自动让渡给服务器,服务器根据预先训练好且与用户对象对应的算法模型,在需要该用户进行操作处理时进行自动操作。当用户重新连接到多人协同任务时,服务器会判断用户身份信息,自动匹配该用户的用户对象,并把用户对象的权限再次转移给用户本身,并继续记录每次用户的操作指令和对应的虚拟设备的参数信息变化。
[0166] 在一些实施例中,当某一协同客户端与服务器断开连接后,服务器中的操作指令等信息无法传输至该协同客户端,多人协同任务正常进行。待该协同客户端重新连接后,由服务器将相关信息同步至该协同客户端。若该协同客户端转化为目标客户端时,仍未与服务器重新进行连接,则基于上述技术方案进行处理。
[0167] 此外,当目标客户端与服务器断开连接后,已断开连接的协同客户端则无法提供反馈信息,服务器则不考虑该协同客户端的反馈信息。
[0168] 参见图4,图4为本发明实施例提供的一种多人协同机制的时序图,对应的工作流程如下:
[0169] 1、用户利用所使用的客户端(即,用户客户端)向服务器发送连接请求;
[0170] 2、当服务器与用户客户端连接成功后,用户客户端接收到服务器发送的连接成功响应;
[0171] 3、用户客户端向服务器发送用户的对象数据信息;
[0172] 4、若用户为首次连接,服务器则建立该用户对象,并返回对象创建成功回执信息和Owner授权信息。若用户非首次连接,则服务器唤醒该用户已有的用户对象;
[0173] 5、服务器发送上述用户对象的数据信息至协同客户端;
[0174] 6、协同客户对接收到的用户对象进行备份,用于记录上述用户的操作数据;
[0175] 7、协同用户端向服务器返回用户对象已创建完成信息;
[0176] 8、用户通过用户客户端对服务器内的虚拟设备进行操作,并发送操作数据到服务器;
[0177] 9、服务器接收操作数据,记录至数据库中,并同步发送至协同客户客户端;
[0178] 10、协同客户端在本地客户端完成上述用户的用户操作更新,向服务器返回确认信息;
[0179] 11、用户异常掉线或主动退出并切换为AI代理(即,本发明中由训练完成的目标模型代替用户),用户权限转移至服务器;
[0180] 12、根据已存在的用户模型,预测对应场景下的用户操作,并发送至协同客户端;
[0181] 13、根据本发明中投票机制,其他用户发起投票,若超过2/3用户同意则更新操作并把该操作记录在操作数据库,否则操作无效。
[0182] 14、协同客户端将投票结果返回给服务器,服务器根据投票结果与虚拟设备的当前状态做下一步预测;
[0183] 15、当用户重新上线,申请用户对象权限回归。
[0184] 基于相同的发明构思,本发明实施例还提供了一种基于代理和备份技术的多人协同任务保障装置,该装置应用于基于代理和备份技术的多人协同任务保障系统的服务器,该系统还包括目标客户端和协同客户端,参见图5,图5为本发明实施例提供的一种基于代理和备份技术的多人协同任务保障装置的结构图,该装置包括:
[0185] 第一获取模块501,用于在确定与所述目标客户端断开连接后,获取虚拟设备的参数信息,作为第一参数信息。
[0186] 其中,所述虚拟设备表示多人协同任务的处理对象。
[0187] 第二获取模块502,用于将第一参数信息输入至预先训练的目标模型,获取所述预先训练的目标模型输出的多个模型结果。
[0188] 其中,任一客户端的用户分别对应一个所属用户自身的预先训练的模型;所述目标模型表示所属目标客户端的用户的模型。
[0189] 第三获取模块503,用于获取所述多个模型结果中优先级最高的模型结果,作为第一模型结果,并将所述第一模型结果发送至所述协同客户端,以使所述协同客户端基于接收到的第一模型结果,对所述协同客户端内的本地模型进行更新,并获取更新结果,并基于所述更新结果,向所述服务器发送反馈信息。
[0190] 其中,所述本地模型与所述服务器内的虚拟设备的结构、参数信息均保持一致,所述反馈信息包括赞同意见和反对意见;模型结果的数量为第一预设数值。
[0191] 第一判断模块504,用于判断接收到的反馈信息中赞同意见的占比量是否超过第二预设数值;若是,则基于所述第一模型结果对所述虚拟设备中的参数信息进行更新,得到更新后的参数信息,作为第二参数信息。
[0192] 第一确认模块505,用于基于所述第二参数信息,确认所述第一模型结果是否正确。
[0193] 第一发送模块506,用于确认所述第一模型结果正确后,向协同客户端发送确认正确信息,继续进行所述多人协同任务。
[0194] 本发明实施例还提供了一种电子设备,如图6所示,包括处理器601、通信接口602、存储器603和通信总线604,其中,处理器601,通信接口602,存储器603通过通信总线604完成相互间的通信,
[0195] 存储器603,用于存放计算机程序;
[0196] 处理器601,用于执行存储器603上所存放的程序时,实现上述任一基于代理和备份技术的多人协同任务保障方法。
[0197] 上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral Component Interconnect,PCI)总线或扩展工业标准结构(Extended Industry  Standard Architecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0198] 通信接口用于上述电子设备与其他设备之间的通信。
[0199] 存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non‑Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
[0200] 上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field‑Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
[0201] 在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一基于代理和备份技术的多人协同任务保障方法步骤。
[0202] 在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一基于代理和备份技术的多人协同任务保障方法。
[0203] 在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本公开实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
[0204] 综上所述,与现有技术相比,具备以下有益效果:
[0205] 1、本发明提供的技术方案在目标客户端与服务器断开连接后,将服务器内的预先训练的目标模型用于模拟目标客户端的用户的操作,以对虚拟设备的参数信息进行更新,从而保障了进行多人协同任务的顺利、高效进行。同时,基于协同客户端的反馈信息以及服务器的确认操作,判断所选择预先训练的目标模型输出的模型结果是否正确,进而验证了虚拟设备更新后的参数信息的可行性,避免了在多人协同任务进行过程中发生偏差。
[0206] 2、基于上述处理,规范了不同的用户对象的权限范围,由于不同用户的权限范围不同,减少了不同用户之间的操作影响,在保证多人协同任务的安全性的同时,降低了用户操作行为的差错。
[0207] 需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0208] 以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。