一种基于双向拍卖理论和智能合约的数据共享方法

文档序号:26395429发布日期:2021-08-24 16:05阅读:74来源:国知局
一种基于双向拍卖理论和智能合约的数据共享方法

本发明属于数据共享技术领域,具体涉及一种基于双向拍卖理论和智能合约的数据共享方法。



背景技术:

随着物联网的日益普及,传感器和智能设备等物联网设备的数量以惊人的速度增长。海量的物联网设备将产生海量的物联网数据,但是这些海量的物联网数据,由于缺乏信任以及利益分配等问题,多以孤立数据中心的形式存储,无法被同样需要的其他人共享。区块链技术的出现和发展为p2p的物联网海量数据共享提供了一种可行的共享方案。

基于区块链的数据共享系统大体分为两类。一类是第三方共享(交易)平台直接参与,负责整个区块链网络运营,并以尽可能获取利益为主要目的,此类数据共享系统从结构上仍然不是完全的p2p组织系统,中心化平台弊端没有完全避免。另一类是利用区块链来构建一个信任环境,将区块链作为数据共享(交易)中不可篡改、不可删除的数据凭证,通过诚实可信环境进行用户共享激励,并通过代币来进行经济激励,进一步刺激数据共享。虽然没有第三方直接参与,然而代币生态需要有人运营维护,没有从根本上摆脱运营方,且从经济学角度考虑,一味的补贴方案无法长久运营。



技术实现要素:

本发明的目的在于提供一种基于双向拍卖理论和智能合约的数据共享方法。

本发明的目的通过如下技术方案来实现:包括以下步骤:

步骤1:一组数据请求者r={r1,r2,…,rm}向智能合约提交他们自己的请求数据类型信息,包含单位任务评估值;一组数据提供者s={s1,s2,…,sn}向智能合约提交他们自己的数据信息,包含单位数据成本与质量;智能合约根据区块链存储的历史提交数据质量预估本次数据质量,并将其添加到相应的数据信息中;其中,一个请求者ri只能提交一个任务ti,一个数据提供者sj只能接受一项任务;

步骤2:智能合约选择数据请求者集合r的一个子集作为获胜数据请求者,选择数据提供者集合s的一个子集作为获胜数据提供者;

获胜数据请求者选择:选择单位任务评估值最大的数据请求者;重复这样的选择过程,直到数据请求者数量达到了数据共享网络能够一次处理的最大交易量,或者每一个数据请求者都被选择;

获胜数据提供者选择:选择单位数据成本低、质量高的数据提供者;在每次迭代中,选择数据提供者中数据成本与历史质量比值最小的一个作为获胜者;重复这样的选择过程,直到数据提供者数量达到了数据共享网络能够一次处理的最大交易量,或者每一个数据提供者都被选择;其中,β是一个可调参数值,用于调整在cj和λj之间对获胜者选择的影响权重;

步骤3:如果获胜数据请求者数量与获胜数据提供者数量匹配,即一个数据请求者对应一个数据提供者,则执行步骤4;否则,执行步骤5;

步骤4:根据贪婪算法,为每个数据请求者匹配到一个数据提供者;如果最终匹配矩阵计算得到的数据请求者效用、数据提供者效用、区块链网络效用均为非负值,则匹配成功,执行步骤6,否则执行步骤7;

每次迭代中,将还没有匹配的拥有最大单位任务评估值的获胜数据请求者和拥有最小比值的获胜数据提供者匹配;

步骤5:对数量较多的一方进行修剪,如果是获胜数据请求者较多,则根据单位任务评估值排序,从单位任务评估值最低的开始剔除,直到剩余获胜数据请求者数量与获胜数据提供者数量一致;如果是获胜数据提供者较多,则根据最低单位数据成本以及历史数据质量进行综合评定,选择数据成本与历史质量比值最高的进行淘汰,直到剩余获胜数据提供者与获胜数据请求者数量一致;修剪后,检查预算平衡是否成立,即是不是所有的参与者和数据共享区块链网络都能得到正效用,如果成立,则开始匹配过程,执行步骤6;

步骤6:根据匹配结果,进行利益分配;为每个获胜数据请求者计算需要支付的费用qi,并为每个数据提供者计算收益pj;获胜数据请求者根据计算好的费用将相应价值的虚拟货币提交给智能合约,智能合约将虚拟货币按照计算好的收益付给获胜数据提供者,获胜数据提供者将数据提交给匹配的获胜数据请求者,获胜数据请求者将收到的数据进行真实数据质量反馈,智能合约根据收到的本次数据评价结合历史数据质量进行综合计算,计算新的数据质量预估值,存入区块链。

其中,对于qi和pj的计算,使用单位任务评估值和比值从而使qi和pj成为保证真实性的关键值;

步骤7:一次交易完成,返回步骤1,进行下一次交易。

本发明的有益效果在于:

本发明提供了一种基于双向拍卖理论和智能合约的数据共享方法,该方法可应用于无运营方的海量数据共享联盟区块链系统长期自运行,具有更高的参与者效用、区块链网络效用和系统社会福利,可以在没有运营方参与情况下进行分布式的长期海量数据共享。

附图说明

图1是本发明中数据共享联盟区块链系统的模型图。

图2是本发明的流程示意图。

具体实施方式

下面结合附图对本发明做进一步描述。

本发明涉及应用于无运营方的海量数据共享联盟区块链系统长期自运行的一种基于双向拍卖理论和智能合约的数据共享方法。

数据共享方法作为一种通过交易双方选择、利益均衡分配来提高用户参与积极性和系统长期稳定运行的方法,目标就是要做到所有的参与者都可以获得较高利益,且数据共享系统可以持续运营。传统的数据共享方法过于关注支撑数据共享系统运营的第三方平台收益,实际参与共享双方效用较低,共享积极性不足,共享范围较小。本发明提供一种基于双向拍卖理论和智能合约的数据共享方法,该方法使得在长期的竞争环境中具有更高的参与者效用、区块链网络效用和系统社会福利,可以利用它在没有运营方参与情况下进行分布式的长期海量数据共享。本发明包括以下步骤:

步骤1)一组数据请求者向智能合约提交他们自己的请求数据类型信息,其中包含最大任务评估、截止时间等。类似地,一组数据提供者向智能合约提交他们自己的数据信息,该信息包含他们的成本值,智能合约根据区块链存储的历史提交数据质量预估本次数据质量,并将其添加到相应的数据信息中;

步骤2)智能合约根据一定规则选择数据请求者的一个子集作为获胜请求者,数据提供者的一个子集作为获胜工作者;

如果获胜的数据请求者数量与数据提供者数量匹配,即一个数据请求者对应一个数据提供者,转到步骤3),否则转步骤4);

步骤3)根据贪婪算法,为每个数据请求者匹配到一个数据提供者;

如果最终匹配矩阵计算得到的数据请求者效用、数据提供者效用、区块链网络效用均为非负值则匹配成功,转到步骤4),否则转步骤6);

步骤4)对数量较多的一方进行修剪,如果是数据请求者较多,则根据单位数据评估价值排序,从单位数据评估价值最低的开始剔除,直到剩余人数与数据提供者数量一致;如果是数据提供者较多,则根据最低单位数据成本以及历史数据质量进行综合评定,选择成本与历史质量比最高的进行淘汰,直到剩余人数与数据请求者数量一致;

步骤5)根据匹配结果,进行利益分配;

步骤6)一次交易完成。

附图1描述了基于区块链的数据共享业务模型。它说明了如何通过信息交互和资本流动来实现数据共享和收入分配。数据提供者持有各种类型的数据,当数据请求者提出数据请求时,数据提供者在区块链网络上共享他们的数据。一般来说,数据在上传前会被加密,以保护隐私。数据请求者获取数据后支付费用,费用最终被分配给提供相关数据的数据提供者和促进信息交互的区块链挖掘节点。本发明利用智能合约来自动控制收入分配。智能合约可以被视为执行支付条款和管理资金流的可信中介。在这种商业模式下,随着新的收入流入联盟,参与者将不断获得报酬。这种形式的收入分配似乎更合理,因为它激励参与者对合作的结果负责。

数据共享系统由一个区块链网络,一组m个数据请求者(数据购买者)r={r1,r2,…,rm},一组n个数据提供者(数据卖方)s={s1,s2,…,sn}。物联网设备或用户既可以是请求者,也可以是基于区块链的数据共享系统数据提供者。为简单起见,假设一个请求者ri只能提交一个任务ti,一个数据提供者sj只能接受一项任务。在现实世界的数据共享系统中,假设一个区块链网络同时处理任务请求的能力是有限的。在提出的激励合约中,数据共享(交易)的过程是一种双重拍卖的形式,数据请求者(数据提供者)相互竞争,被选为获胜的数据请求者(数据提供者),完成交易,具体附图2所示。

1)获胜数据请求者选择:选择单位任务评估值大的数据请求者,重复这样的选择过程,直到数据请求者数量达到了数据共享网络能够一次处理的最大交易量,或者每一个数据请求者都被选择。

2)获胜数据提供者选择:选择那些任务价值低、数据质量高的数据提供者。在每次迭代中,选择数据提供者中数据成本与历史质量比值最小的一个作为获胜者,β是一个可调参数值,用于调整在cj和λj之间对获胜者选择的影响权重。通过使用该比率,它试图选择一个数据质量高且成本低的数据提供者。重复这样的选择过程,直到数据提供者数量达到了数据共享网络能够一次处理的最大交易量,或者每一个数据提供者都被选择。

3)在匹配数据请求者和数据提供者之前,智能合约自动检查数据请求者和数据提供者是否可以一对一匹配,如果两个集合大小不一致,通过运行修剪方法来替换数据请求者和数据提供者获胜集合,在修剪方法中,对步骤1)和步骤2)返回的获胜者集合进行微调,使获胜数据请求者集合和数据提供者集合具有相同的大小,修剪后,检查预算平衡是否成立,即是不是所有的参与者和数据共享区块链网络都能得到正效用,如果成立,则开始匹配过程。

3)匹配:迭代地将获胜数据请求者与获胜数据提供者匹配,将还没有匹配的拥有最大单位任务估值的获胜数据请求者和拥有最小比值的获胜数据提供者匹配,通过这样的匹配标准,将一个具有较高数据请求任务费用的数据请求者与一个具有较低成本且较高数据质量的数据提供者进行匹配。

4)在匹配过程之后,为每个获胜数据请求者计算需要支付的费用qi,并为每个数据提供者计算收益pj。对于qi和pj的计算,使用单位任务评估值和比值从而使qi和pj成为保证请求者真实性的关键值。

5)数据请求者根据计算好的费用将相应价值的虚拟货币提交给智能合约,智能合约将虚拟货币按照计算好的收益付给数据提供者,数据提供者将数据提交给匹配的数据请求者,数据请求者将收到的数据进行真实数据质量反馈,智能合约根据收到的本次数据评价结合历史数据质量进行综合计算,计算新的数据质量预估值,存入区块链。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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