一种机器人竞赛规则管理系统的制作方法

文档序号:16544320发布日期:2019-01-08 20:44阅读:213来源:国知局
一种机器人竞赛规则管理系统的制作方法

本发明涉及机器人竞赛技术领域,具体为一种机器人竞赛规则管理系统。



背景技术:

机器人竞赛反映了一个国家信息与自动化领域基础研究和高技术发展的水平,它的目的是促使研究人员研究各项相关技术,得到更好的解决方案,从而促进技术的发展,在机器人竞赛过程中,竞赛规则的设计与管理是一件非常重要的工作,它直接关系着竞赛的公平性和公正性,也关系着竞赛本身的影响力。

传统上,竞赛的规则的判断主要靠人工来进行,裁判根据规则和赛场的实际情况来判断竞赛参赛队伍是否得分、是否犯规、是否需要惩罚、是否取得竞赛胜利等等,随着机器人竞赛的发展,越来越多的人参与到了这个领域,尤其是随着互联网的发展,有些竞赛可以直接通过互联网进行,这使得传统靠人工的竞赛规则评判的方式越来越变得无法满足要求。

近些年也出现一些自动化的规则评判管理系统,这些系统能够自动收集比赛产生的数据,根据预设的规则对竞赛过程进行评判,极大的提高了竞赛的效率和准确性,但是与此同时,这种自动化的规则管理系统带来了很多新的问题,比如数据的透明性、争议的处理等,这些问题仍然需要有效的解决才能使得机器人竞赛能够正常进行。

当前现有的自动化的规则管理系统基本都是竞赛组织方提供的系统,这种由单一组织方提供的系统会带来很多问题:

1、中立性,如何保证竞赛组织方提供的系统是中立的,没有偏袒竞赛的部分参与者;

2、透明性,如何保证竞赛组织方提供的系统是透明的,让大家都能看到系统是如何运行的,是不是严格按预设的规则进行判断的,有没有运行错误;

3、可追溯,竞赛参与方有异议时,如何回溯比赛过程产生的数据和规则判断过程,能够让竞赛参与方充分验证结果产生的过程;

4、数据不可篡改,如何保证竞赛过程产生的所有数据都不可篡改,保证系统的公平。



技术实现要素:

为了克服现有技术方案的不足,本发明提供一种机器人竞赛规则管理系统,为机器人竞赛提供了公平公正的竞赛环境,保证了竞赛信息的公开透明,且能有效的解决背景技术提出的问题。

本发明解决其技术问题所采用的技术方案是:

一种机器人竞赛规则管理系统,包括若干个代表不同竞赛参与方的评判节点,每个评判节点均具有各自独立的投票资格,每个评判节点的硬件部分包括进行人机交互功能的界面层、用于业务逻辑处理的业务层和实时收集机器人竞赛数据的数据采集层,所述业务层一端与数据采集层连接,另一端与界面层连接,所述界面层包括数据可视化模块和系统管理模块,所述业务层包括身份管理模块、共识管理模块和智能合约模块,所述数据采集层包括若干个数据采集模块。

进一步地,所述身份管理模块负责识别系统各个评判节点是否合法,通过x.509证书机制保证用户身份的真实性。

进一步地,所述共识管理模块负责投票决策,每个评判节点仅有一票。

进一步地,所述智能合约模块负责执行具体的评判规则。

进一步地,该管理系统的评判方法包括:

步骤100、每个评判节点对应的竞赛参与方部署配置各自服务器,包括业务层的三个模块;

步骤200、每个评判节点的数据采集模块开始对机器人竞赛数据进行采集,并根据采集的机器人竞赛数据和智能合约模块执行的评判规则来对机器人竞赛进行评判;

步骤300、每个评判节点对采集的机器人竞赛数据和按照评判规则得到的评判结果用各自独立的证书进行签名,然后把签名后的组合数据广播到网络中;

步骤400、每个评判节点的共识管理模块在接收到广播后对组合数据签名的合法性进行验证;

步骤500、所有评判节点均根据各自签名合法的组合数据来投票得出一个最终的评判结果;

步骤600、所有评判节点将各自的投票选出的评判结果保存到本地的数据库中。

进一步地,所述步骤200中,所述智能合约模块通过多传感信息融合技术对数据采集模块采集的机器人竞赛数据进行处理分析,且多传感信息融合技术采用混合式的体系结构。

进一步地,所述数据采集模块包括设置在机器人上的用于采集机器人位置信息的位置传感器、用于采集机器人速度信息的测速传感器和用于采集机器人方向信息的角度传感器。

进一步地,所述共识管理模块内设置有用于实现投票决策的在线投票系统,所述在线投票系统包括前台投票部分和后台管理部分,所述前台投票部分包括验证裁判身份管理模块、确认裁判身份后的投票模块、限制或不限制裁判的ip,并且在规定的时间内是否允许反复投票的投票管理模块和投票结果查看模块,所述后台管理部分包括管理员身份信息管理模块、投票标题管理模块和针对每个投票标题的投票项管理模块,其中所述投票标题管理模块中进行投票标题的添加时还包括了投票方式的设定以及投票时间的限制。

进一步地,所述身份管理模块保证用户身份真实性的具体工作流程包括如下步骤:

s101、证书的制作颁发:

(1)用户申请,服务器对用户提交的申请进行审核,对通过审核的用户颁发x.509证书,ca认证中心生成数字证书,数字证书包含用户身份信息以及证书持有者的公钥;

(2)用户向服务器提交id和口令pw,服务器记录用户usbkey的硬件pin码,即序列号,个体服务器生成随机数r,取得当前系统时间t,计算计算其中用r,n,hk(),r,t初始化usbkey,服务器将数字证书和用户私钥存储在usbkey中颁发给用户,生成最终用户持有的usbkey;

s102、登陆服务器验证身份:

(1)用户登陆服务器后插入usbkey设备,服务器自动检测所插入设备的硬件pin码是否合法,若不合法,提示错误信息,退出服务器;若pin码通过验证,则进入下一步;

(2)服务器取得用户输入的id和pw、存放在usbkey中的r和t,计算然后通过得到用带密钥k的哈希函数计算与n进行比较,若不相等,则拒绝本次登陆,服务器报警并记录到服务器,同时退出服务器;若相等,服务器同意usbkey向其发送认证请求,则进行下一步;

s103、服务器验证身份过程:

(1)usbkey生成一个随机数r2,并用其内部存储的用户私钥p对认证请求消息(r2,tc,d)签名,生成签名消息:m={r2,tc,d},其中tc是当前时间标记,d为身份数据信息,usbkey将认证请求信息m发送给服务器;

(2)服务器接受到认证请求后,检查服务器是否是消息接收者,若是,则获取用户的证书,并验证证书的有效性,获取当前时间标记ts,计算△t=ts-tc,若ts等于tc或者△t1>△t,则拒绝此次登陆请求,△t1表示时间延迟的有效时间间隔;

(3)从用户的证书中提取公钥0,去验证用户的数字签名,即解密身份认证请求m,d=0(p{r2,tc,d}),这样便可获得usbkey使用者的身份信息,若在此过程中出现错误或usbkey被拔出,该身份管理模块立即报警,并在服务器上做记录并退出验证系统。

进一步地,所述步骤400中,所述共识管理模块在接收到广播后对组合数据签名的合法性验证是通过采用的数字签名格式来实现的。

与现有技术相比,本发明的有益效果是:

本发明建立了一套分布式环境下实现竞赛规则判定的解决方案,每个机器人参赛方可以独立保存竞赛数据、执行竞赛规则,当执行结果不一致的时候,可以通过投票决策的方式来评判最终的结果,整个竞赛过程都是平等的,竞赛产生的数据信息都是公开透明的,且都是经过数字签名的,保证了数据的不可篡改性,提高了机器人竞赛的公平性。

附图说明

图1为本发明的系统结构图;

图2为本发明的业务流程图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

如图1和图2所示,本发明提供了一种机器人竞赛规则管理系统,包括若干个代表不同竞赛参与方的评判节点,每个评判节点均具有各自独立的投票资格,每个评判节点的硬件部分包括进行人机交互功能的界面层、用于业务逻辑处理的业务层和实时收集机器人竞赛数据的数据采集层,所述业务层一端与数据采集层连接,另一端与界面层连接,所述界面层包括数据可视化模块和系统管理模块,所述业务层包括身份管理模块、共识管理模块和智能合约模块,所述数据采集层包括若干个数据采集模块。

所述身份管理模块负责识别系统各个评判节点是否合法,通过x.509证书机制(x.509证书是由可信的第三方权威机构ca颁发的符合x.509规范的公钥证书,证书包含用户身份信息、公钥信息、颁发证书的ca的身份信息和ca对证书的签名信息,通过x.509证书绑定了用户身份和密钥对,并通过ca签名确保了证书的可信性)保证用户身份的真实性,避免机器人竞赛过程中产生的数据被篡改,保证了机器人竞赛的公平。

所述共识管理模块负责投票决策,每个评判节点仅有一票。

所述智能合约模块负责执行具体的评判规则(评判规则是根据机器人所参与的某项竞赛项目(例如足球、篮球等)的评分标准与办法制定的),智能合约是一种旨在以信息化方式传播、验证或执行合同的计算机协议,智能合约允许在没有第三方的情况下进行可信交易,这些交易可追踪且不可逆转。

该管理系统的评判方法包括:

步骤100、每个评判节点对应的竞赛参与方部署配置各自服务器,包括业务层的三个模块;

步骤200、每个评判节点的数据采集模块开始对机器人竞赛数据进行采集,并根据采集的机器人竞赛数据和智能合约模块执行的评判规则来对机器人竞赛进行评判;

步骤300、每个评判节点对采集的机器人竞赛数据和按照评判规则得到的评判结果用各自独立的证书进行签名(目的是附加在数据单元上一些数据,或是对数据单元所作的密码变换,这种数据和变换允许数据单元的接收者用以确认数据单元来源和数据三元的完整性,并保护数据,防止他人(例如接收者)进行伪造),然后把签名后的组合数据广播到网络中,使得人们可通过智能终端设备(手机、电脑、网络电视等)实时观看,保证了信息的公开性和透明度;

步骤400、每个评判节点的共识管理模块在接收到广播后对组合数据签名的合法性进行验证;

步骤500、所有评判节点均根据各自签名合法的组合数据来投票得出一个最终的评判结果;

步骤600、所有评判节点将各自的投票选出的评判结果保存到本地的数据库中,便于后续竞赛过程的回放追溯。

进一步解释的是,步骤300中,数字签名的基本流程为:签名过程和验证签名过程。

(1)签名的实现过程:输入:原文、私钥;输出:签名值

1、将原文做hash(hash(hashhouseharriers),一般翻译做“散列”,也有直接音译为“哈希”的,就是把任意长度的输入(又叫做预映射pre-image)通过散列算法变换成固定长度的输出,该输出就是散列值,这种转换是一种压缩映射,也就是,散列值的空间通常小于输入的空间,不同的输入可能会散列成相同的输出,所以不可能从散列值来确定唯一的输入值,简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数);

2、将hash用私钥加密,结果就是签名值。

(2)验证签名的实现过程:输入:签名值、原文、公钥;输出:是否验证通过

1、将原文做hash1;

2、将签名值用公钥解密,取得hash2;

3、将第1步的hash1与第2步的hash2做比较,两个hash一样就验证通过,否则不通过。

所述步骤200中,所述智能合约模块通过多传感信息融合技术(多传感器信息融合,就是利用计算机技术将来自多传感器或多源的信息和数据,在一定的准则下加以自动分析和综合,以完成所需要的决策和估计而进行的信息处理过程)对数据采集模块采集的机器人竞赛数据进行处理分析,且多传感信息融合技术采用混合式的体系结构,多传感信息融合技术的体系机构有三种:分布式、集中式和混合式,其中混合式集中了前两种的优点,较多被使用,比如在机器人足球竞赛中的避障问题,就是用超声波和视觉两部分结合,既有视觉集中式的信息整合,又有视觉和超声波的分布式融合。

所述数据采集模块包括设置在机器人上的用于采集机器人位置信息的位置传感器、用于采集机器人速度信息的测速传感器和用于采集机器人方向信息的角度传感器,能够实现对机器人竞赛过程中,机器人的位置、状态以及速度进行实时监测,保证机器人竞赛过程的稳定可靠性。

所述共识管理模块内设置有用于实现投票决策的在线投票系统,所述在线投票系统包括前台投票部分和后台管理部分,所述前台投票部分包括验证裁判(评判节点)身份管理模块、确认裁判身份后的投票模块、限制或不限制裁判的ip,并且在规定的时间内是否允许反复投票的投票管理模块和投票结果查看模块,所述后台管理部分包括管理员身份信息管理模块、投票标题管理模块和针对每个投票标题的投票项管理模块,其中所述投票标题管理模块中进行投票标题的添加时还包括了投票方式的设定以及投票时间的限制,防止裁判重复投票,有失公正。

该在线投票系统在实现功能的同时,注意了如何使得投票裁判更方便快捷地清楚如何投票,简单易懂,实现和加强了裁判对系统的易操作性;对于裁判投票,而裁判是由管理员在后台操作,用限制ip的形式来达到防止反复投票的虚假行为,调查的准确性大大提高;裁判投票前后都可以查看投票结果,在投票结果页面可以详细的看到每项投票的票数,投票的票数以数字和图形两种形式显示,这样对于裁判以及人们得到信息的反馈更加明了。

所述身份管理模块保证用户身份真实性的具体工作流程包括如下步骤:

s101、证书的制作颁发:

(1)用户申请,服务器对用户提交的申请进行审核,对通过审核的用户颁发x.509证书,ca认证中心生成数字证书,数字证书包含用户身份信息以及证书持有者的公钥;

(2)用户向服务器提交id和口令pw,服务器记录用户usbkey的硬件pin码,即序列号,个体服务器生成随机数r,取得当前系统时间t,计算计算其中用r,n,hk(),r,t初始化usbkey,服务器将数字证书和用户私钥存储在usbkey中颁发给用户,生成最终用户持有的usbkey;

s102、登陆服务器验证身份:

(1)用户登陆服务器后插入usbkey设备,服务器自动检测所插入设备的硬件pin码是否合法,若不合法,提示错误信息,退出服务器;若pin码通过验证,则进入下一步;

(2)服务器取得用户输入的id和pw、存放在usbkey中的r和t,计算然后通过得到用带密钥k的哈希函数计算与n进行比较,若不相等,则拒绝本次登陆,服务器报警并记录到服务器,同时退出服务器;若相等,服务器同意usbkey向其发送认证请求,则进行下一步;

s103、服务器验证身份过程:

(1)usbkey生成一个随机数r2,并用其内部存储的用户私钥p对认证请求消息(r2,tc,d)签名,生成签名消息:m={r2,tc,d},其中tc是当前时间标记,d为身份数据信息,usbkey将认证请求信息m发送给服务器;

(2)服务器接受到认证请求后,检查服务器是否是消息接收者,若是,则获取用户的证书,并验证证书的有效性,获取当前时间标记ts,计算△t=ts-tc,若ts等于tc或者△t1>△t,则拒绝此次登陆请求,△t1表示时间延迟的有效时间间隔;

(3)从用户的证书中提取公钥0,去验证用户的数字签名,即解密身份认证请求m,d=0(p{r2,tc,d}),这样便可获得usbkey使用者的身份信息,若在此过程中出现错误或usbkey被拔出,该身份管理模块立即报警,并在服务器上做记录并退出验证系统。

补充解释的是,电子钥匙usbkey是由智能卡技术发展而来的,结合了现代密码学技术、智能卡技术和usb技术,usbkey的芯片和芯片操作可以提供私钥生成、安全存储和公钥密码算法等功能,由于其具有独立的数据处理能力和良好的安全性,usbkey成为数字证书和签名私钥的安全载体,进行数字签名时,用来签名的私钥能在usbkey中产生并保存,任何情况不能读出,签名的过程也在usbkey中完成,比传统方式下载主机端实现更安全可靠。

所述步骤400中,所述共识管理模块在接收到广播后对组合数据签名的合法性验证是通过采用的数字签名格式来实现自验证的,是一种数字签名格式,可用来验证二进制软件的来源和完整性,authenticode是基于公开密钥加密标准(pkcs)#7来签名数据,并使用x.509证书来绑定经过数字签发的二进制程序与其信息发布者的身份的联系,该签名可以保证信息来源以及信息的未修改性。

对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1