一种去中心化自治组织自适应概率加权投票方法

文档序号:31331363发布日期:2022-08-31 07:09阅读:199来源:国知局
一种去中心化自治组织自适应概率加权投票方法

1.本发明属于区块链技术领域,涉及一种去中心化自治组织自适应概率加权投票方法。


背景技术:

2.投票是dao(去中心化自治组织)中间实现去中心化治理的重要技术手段,是dapp用户层面的共识机制,投票机制承载了dao平台的治理决定权、利润权等。基于区块链技术和智能合约的高可编程性,仅仅数年dao就发展出多种投票治理机制。
3.目前dao投票机制发展迅速,但不同的投票机制只能解决垂直场景的问题,分析得出目前投票机制的主要需解决的问题如下:
4.(1)投票权限扩大与减少的矛盾。投票参与权限设置的矛盾在于,当权限设置得太高时,可参与人数较少会降低提案的可信度;而当权限设置得太低时,会遇到参与人数较多决策的专业性降低,可能会导致dao策略短视,并且通常这两种情况会同时发生。需要设计更灵活的投票许可和投票权重分配,以提高社区治理的准确性。
5.(2)投票注意力攻击。如果提案的数量没有限制,任何人都可以通过向系统发送大量提案稀释选民的注意力,导致优质的提案无法被注意到。同时如果投票只按照时间排列,无法提取重点社区提案。需要控制用户的投票权限,并有效控制用户的注意力在优质提案上。
6.(3)二次投票机制存在抱团投票攻击缺陷。二次函数x2不收敛,x趋近于∞时没有极限。并且该机制中犯罪成本与参与人数二次相关,人数增加犯罪成本显著降低,存在财团撮合垄断投票的风险。需要更安全的投票方式平衡投票公平性和话语权的关系。
7.(4)最后一分钟投票攻击。盒型投票有明确的投票结算时间,最后一分钟攻击模式是用户利用提案快结束时,进行大量投票影响提案结果。需要通过投票权重设计提高用户最后一分钟投票攻击的成本。


技术实现要素:

8.针对现有投票方案存在的缺陷,本发明提供了一种去中心化自治组织自适应概率加权投票方法。
9.本发明采用的技术方案如下:
10.一种去中心化自治组织自适应概率加权投票方法,包括如下内容:
11.(1)设置用户权限、用户账户信息和投票参数。
12.本投票机制拥有用户权限模块。用户权限模块是为了让系统满足不同组织的使用需求,平衡不同的去中心化组织治理中对权限分散与集中的不同要求。用户权限模块可以根据dao组织需要进行个性化拓展,但必须包含:用户权限列表、提案投票权限设置功能和提案的专家权限分类设置功能。
13.本投票机制拥有资金模块。dao组织拥有公共资金池为投资相关dao提供资产管理
功能。用户拥有个人资产账户,用户可以互相交易,也可以将资金投入公共资金池。资金模块可以根据dao组织需要进行个性化拓展,但必须包含用户账户、公共资金池账户和转账功能。
14.投票参数数据包含重要提案注意力系数、专家投票影响力系数、投票时间衰减系数、提案基本通过比和金融提案最低通过比。通过设置投票参数使投票更符合多种组织治理场景。
15.(2)设置提案类型。在决策提案、金融提案三种提案类型中选择需要发布的类型,然后设定可投票用户权限和专家加权参数,最后设定投票截止日期。这些参数的设定将会影响票数计算权重和投票通过概率。可投票用户权限默认普通用户只能选择发起全部人参与的投票,只有支持有某种权限认证的用户可以在发起投票时限定可参与投票用户的权限类型,这种设计可以将不同项目组和不同部门的投票划分开,提高用户的投票垂直度。专家加权参数设置将决定专家用户投票的影响力,用户可以设置自身拥有的权限为本次投票的专家类型,提案默认没有专家加权。
16.(3)添加提案内容并发布。用户根据选择的提案类型完善提案内容,提案具体内容设置根据dao组织需求扩展。另外,用户根据提案类型不同添加对应的提案选项。
17.(3.1)决策提案负责dao内权限分配和重要发展方向投票。该提案只有通过和否决两种投票结果。可以选择设定提案通过后可执行的智能合约完成dao治理,投票参数也可通过决策合约调整。
18.(3.2)金融提案负责dao内融资相关场景,通过投票决定投资策略。该提案同样只包含通过和否定两种投票结果。金融提案可以添加本次投资需要的资金数量并指定用户收款地址。金融提案资金来源分为dao资金池和用户私人投资两种,提案通过难度将根据资金来源浮动,私人投资越多提案通过难度越低。提案通过后将调用资金模块将资金打包成交易发送给收款地址,收款用户可体现账户资金完成投资策略。
19.(4)用户为提案投票。用户浏览提案列表,对提案进行投票。提案分为重要提案和普通提案两类,设计重要提案是为了节省用户注意力,让主要提案能及时被发现。用户还可以根据类型筛选提案有针对性的浏览提案信息。
20.(5)用户为项目投资。如果提案类型为金融提案,则在投票时可以使用个人账户追加资金提高提案通过几率。金融提案将记录本次交易的参与人和投资数据存证在区块链上,交易记录为后续投资回报提供可信凭证。
21.(6)记录用户投票时间。投票完成后将存储本次投票的区块交易时间,投票时间是用户投票权重参数,建立投票时间和提案持续时间的关系式,实现越晚投票其票的权重越低,从而抵抗最后一分钟投票攻击。
22.(7)记录提案重要度。记录投票热度,用户参与投票人数越多则热度投票热度越高,当热度符合进入重要提案的筛选条件时提案将从普通提案列表转移至重要提案列表。热度判别难度数值和当前重要提案列表内提案数量正相关,该机制可将用户注意力控制在一定范围内。
23.(8)计算提案投票结果。在决策提案和金融提案投票中,根据投票人数、投票时间、个人出资金额、用户类型等参数计算投票结果。
24.(9)执行合约完成提案。如果提案投票结果为通过并且有待执行合约,则执行对应
治理合约并记录提案结果;如果没有待执行合约则直接记录提案结果。
25.本发明可以根据投票类型设置不同投票概率,并为投票设置注意力加权、时间加权和角色加权为票数赋予不同的权重,在对抗投票攻击的同时满足更丰富的投票场景并提高投票有效性和决策准确性。本投票机制不设置参与度参数,因为参与度控制可变相地由设置可投票人权限实现,从扁平化角度考虑,不应该再设置复杂的人数控制参数,提高dao沟通效率。
附图说明
26.图1为本发明的时间影响力权重系数示意图。
27.图2(a)传统扁平化矩阵式组织架构示意图。
28.图2(b)去中心化的矩阵式组织架构示意图。
29.图3为本发明的自适应概率加权投票流程图。
具体实施方式
30.以下结合附图和技术方案,进一步说明本发明的具体实施方式。
31.实施例1:相关算法的说明
32.一种去中心化自治组织自适应概率加权投票方法,包含三种机制:提案注意力机制、加权投票机制和基于金融差的弹性提案判断机制。
33.(1)提案注意力机制
34.为提高用户对热门项目的关注度,减少注意力稀释,将提案列表分为重要提案列表和一般提案列表两类。所有提案初始为普通提案,每次投票结束计算提案热度,被关注度较高的提案将被转移至重要提案列表。提案重要程度判别式为:
[0035][0036]
其中,l
imp
为已有重要提案数、α为转移难度系数、vn为当前提案中用户总投票值。其中α>1,机制对当前重要提案数量p
imp
的依赖确保了对稀释选民注意力的防御能力。dao组织可以通过调节α控制重要投票列表数量针对不容社群容量和社群目的设置合适的社区注意力管理。
[0037]
(2)加权投票机制投票基础计算方法一般分为一通证一票(一元一票)、一人一票和二次投票三种。一元一票过度集中特权利益,存在严重的垄断风险。目前较为流行的二次投票中犯罪成本与参与人数二次相关,人数增加犯罪成本显著降低,存在财团撮合垄断投票的风险。本投票机制将在一人一票(1t1v)机制基础上增加加权和弹性概率的设计,平衡权力集中和分散的矛盾,并利用可调整参数适应不同的dao使用场景。
[0038]
一人一票机制可以保证权利的绝对分散,但实际使用中会因为权利过渡分散导致决策准确性降低。本投票算法利用加权投票机制控制每个票数的影响力权重从而弹性控制每个人的投票影响力。
[0039]
投票设计专家投票影响力,对每个人投票的重要性进行弹性控制提高提案中专家对决策的影响力;设计时间影响力,对参与投票的时间进行控制解决最后一分钟投票问题。并且,两个影响力权重算法均提供调节参数,不同dao组织可通过调节参数控制影响力的重要程度从而适应不同组织场景。
[0040]
定义用户投票数值vi初始为1,专家投票影响力权重系数为w
pf
。发起提案时可设置本提案需要的专家用户权限类别,通过权限模块判断不同用户。当用户权限为专家时默认值为1.25,当用户权限为普通用户时赋值为1,其中专家权限数值(大于等于1)可根据dao投票修改,这样可以适应不同dao场景对专家决策的依赖程度。
[0041]
时间影响力权重系数w
t
计算方法由常数方程和椭圆标准方程复合构成,如图1所示,其公式为:
[0042][0043]
公式中tn为本次投票的上链确认时间,td为提案截止时间,φ,(0<φ≤1)为投票时间衰减系数默认值为0.5,代表提案截止时间过半时开始,投票重要性随逐渐降低。其中第二段函数由长轴为y的椭圆标准方程推导得出。投票时间衰减系数为可变参数,通过dao投票改变投票时间衰减系数可以调整组织对投票时间的宽容度。综述上,每次用户投票数值vi的计算方法为:
[0044]vi
=w
pf
·wt
ꢀꢀꢀ
(3)
[0045]
(3)基于金融差的弹性提案判断机制
[0046]
本提案判断机制适用于金融提案和决策提案,通过公式(4)判断提案是否通过。公式中vn表示当前用户总投票值,是个人投票值vi的和。u
all
表示本提案所有可投票人数。p
pass
表示提案基本通过比率,默认值为0.5,表示所有提案需要50%的可投票人同意才有效。p
base
表示提案最小通过比率,默认值为0.2,表示在有私人投资的情况下,提案至少有20%可投票人同意才有效。f
goal
表示在金融提案中本次提案需要投资的金额。f
private
表示在金融提案中私有投资的比率(f
private
小于f
goal
),公式中f
private
越大则提案通过难度越低。判断机制中f
*
为0时可用于决策提案的有效性判断。
[0047][0048]
其中,p
pass
和p
base
的差值表示金融提案的金融差。金融差表示用户私人投资对提案通过概率的影响程度,主要影响金融提案通过概率。其目的在于保证投票公平的同时提高私人投资提案后的通过率,从而使金融提案在兼顾公平的同时也给私人投资留下了一定的弹性商议空间。参数p
pass
和p
base
为可调整参数,通过dao投票可以更改参数值,更改数值可以变相改变组织的提案通过难度和私人投资对提案的影响力。
[0049]
实施例2:投票系统示范
[0050]
根据本专利提出的投票模型,给出一个具体的应用示范说明。本应用示范包含权限模块、资金模块和投票模块。
[0051]
权限模块。
[0052]
权限模块构建是为了让系统满足不同组织的使用需求,平衡不同的去中心化组织建设社区时对权限分散与集中的不同要求。权限模块给用户发放不同权限实现dao组织成员管理,根据不同组织的业务构成可以生成适应不同去中心化组织的形式。
[0053]
矩阵组织架构能改进垂直职能划分下横向联系差、结构缺乏弹性的缺点,在垂直组织系统基础上增加一种横向的领导系统而形成的一种组织形式。这种组织结构机动、灵
活,可随项目的开发与结束进行组织或解散,非常适合dao自由加入退出的人员管理需求。
[0054]
如图1所示,权限模块的结构参考管理学中扁平化公司架构的矩阵式组织架构模式,通过改进设计去中心化的矩阵式组织架构。基于公司型扁平化矩阵式组织,改进去中心化矩阵式组织架构。在改进中,去掉原结构中ceo和项目负责人两种领导职位,并新增无职务成员权限类型用于表示在dao中没有加入领域但属于组织的成员。权限分为领域权限和项目权限两种,领域权限表示用户在本组织中加入的具体部门,根据dao建设规则不同可以设立需要的领域数量;项目权限表示组织建设的项目组。根据不同dao规则的设计,用户可以加入多个领域也可以同时参与多个项目,另外成员也可以完全不属于任何一个领域或项目。
[0055]
通过设置不同的权限规划成员活动规则,dao系统内事务会根据权限实现不同的准入限制。领域权限的作用范围比项目权限大,两种权限都可以用于控制提案可投票的用户外,领域权限还可以控制哪些用户能参与社区规则制定。如果dao系统没有设定社区规则制定的控制权限,则修改社区规则必须所有用户共同参与投票共识才能更改社区规则。
[0056]
所有人都可以发起任何类型提案,但在发起提案中设置持有什么权限的用户能够参与本次提案的投票时,可以选择的权限范围会根据提案发起人持有的权限不同有所改变。用户发起一个事务提案或决策提案时可以选择可以参与投票成员的权限范围,可以选择所有人参与的提案,或者可以选择用户持有的权限类型中的某些同权限类型成员参与本次提案。发起判断用户是否能加入或退出某领域的决策提案时,投票人只能是对应权限内成员或是社区全体成员;其他权限成员不可以单独投票评判用户是否获取另外一个权限。
[0057]
本模块参与的相关事务有:
[0058]
设定可以发布公告信息的领域权限类型;
[0059]
设定可以对一般事务提案和决策提案投票的领域权限和项目权限;
[0060]
(可选类)设定允许对投资提案投票的领域权限类型;
[0061]
(可选类)设定可以对用户加入组织的准入条件进行投票的领域权限类型;
[0062]
(可选类)设定可以对新增权限类型提案进行投票的领域权限类型;
[0063]
(可选类)设定可以对更改组织治理参数提案进行投票的领域权限类型;
[0064]
上述可选类型的权限设置如果为空,则默认要进行相关操作只能通过全局提案的方式由社区所有成员共识投票修改。
[0065]
权限模块包括的关键数据字段为领域权限字段和项目权限字段。
[0066]
权限模块包含的功能有:
[0067]
(1)新增领域/项目权限。
[0068]
(2)设定用户领域/项目权限。
[0069]
(3)取消用户领域/项目权限。
[0070]
(4)查询某领域/项目权限内所有用户。
[0071]
(5)判断用户是否有某权限。
[0072]
(6)查看某用户的权限矩阵。
[0073]
(7)查看组织的所有权限矩阵类型。
[0074]
资金模块:
[0075]
dao组织拥有公共资金池为投资相关dao提供资产管理功能。用户拥有个人资产账
户,用户可以互相交易,也可以将资金投入公共资金池。公共资金池资产归dao内成员所有。公共资金投资决策通过发起金融提案由社群成员共同参与完成,在dao规则中可以设置能参与金融提案的用户权限类。资产交易在公链dao中通常由主链通证货币作为流通凭证,还有些dao允许发放内部通证货币通过主链通证货币质押赋予内部货币流通价值,但这些方案不适用于联盟链场景。系统设计使用链下资产预言机与dao内通证货币紧绑定方式稳定数字通证的价值,杜绝金融做市风险。
[0076]
使用erc20协议实现虚拟财产管理,模块包含的功能如下:
[0077]
(1)用户现金充值到账户。
[0078]
(2)用户将账户资金取出并清零代币。
[0079]
(3)用户转账到私有账户。
[0080]
(4)用户转账到公共资金池账户。
[0081]
(5)查看我的账户信息。
[0082]
(6)智能合约调用转账-公有账户投票通过转账到指定账户。
[0083]
(7)智能合约调用转账-公有账户多签名转账到指定账户。
[0084]
投票模块:
[0085]
投票模块承担dao发展决策和社区事务治理功能,社区通过提案投票完成共识决定组织的发展策略,投票模块的设计决定着dao的公平性和可用性,是dao架构的核心部分。用户使用本模块完成发起多类型提案、投票和执行投票结果等事务,模块内实现权限判断、投票记录、决策判断功能,此外还提供投票参数调节接口可以通过发起提案调节投票机制的通过概率,进一步拓展投票的适应场景。
[0086]
传统提案计算只对投票事务做出是否的单向决策提案,用于直接的推动社区发展行为。公有链上昂贵的交易费用使得合约设计尽可能的简单,投票模式单一,较为复杂的投票则使用链下方式实现存在作弊空间。本投票模块基于私有链,链上治理成本低,通过合约设计实现批量修改进一步减少交易成本。
[0087]
投票模块在功能上实现单向决策提案、金融提案、事务处理提案三总提案方式。模块结合当前多种投票机制的优势并分析目前投票的不足,提出自适应概率加权投票,实现交易可灵活设置的多参数共识决策,该方法提升了投票的可选择性、有效性和抗攻击性。模块包含的功能如下:
[0088]
(1)发布提案。
[0089]
(2)查看所有提案。
[0090]
(3)查看提案内容。
[0091]
(4)用户投票。
[0092]
(5)用户查看投票。
[0093]
(6)设定投票控制参数。
[0094]
投票机制在本应用示范的投票流程如图3所示,具体步骤如下:
[0095]
(1)设置本应用场景所示的权限模块中用户权限、资金模块中用户账户信息和投票模块中投票参数。
[0096]
(2)设置提案类型。本环节需要在决策提案、金融提案三种提案类型中选择你需要发布的类型,然后设定可投票用户权限和专家加权参数,最后设定投票截止日期。这些参数
的设定将会影响票数计算权重和投票通过概率。可投票用户权限默认普通用户只能选择发起全部人参与的投票,只有支持有某种权限认证的用户可以在发起投票时限定可参与投票用户的权限类型,这种设计可以将不同项目组和不同部门的投票划分开,提高用户的投票垂直度。专家加权参数设置将决定专家用户投票的影响力,用户可以设置自身拥有的权限为本次投票的专家类型,提案默认没有专家加权。
[0097]
(3)添加提案内容并发布。本环节用户需要根据选择的提案类型完善对应提案内容。首先用户需要填写所有提案类型都包含的提案标题、提案描述、提案附加文件(可选)。其中提案标题和描述保存在将发布的交易区块中,提案附加文件的原文件内容发送至ipfs模块并将文件索引hash保存至交易区块中,提案附加文件是对提案的拓展,保存的文件具有不可篡改和鉴权认证等属性。下一步,根据提案类型不同添加对应的提案选项。
[0098]
(3.1)事务提案负责dao内常见复杂事务决策,该提案有单选和多选两种事务模式;该类型提案结果以列表形式展现,展现用户投票参与度和投票数据。事务提案表示dao内日常事务处理,所以没有提案是否通过选项,而其他两种投票表示dao组织发展决策所以会计算提案是否通过。
[0099]
(3.2)决策提案负责dao内权限分配和重要发展方向投票。该提案只有通过和否决两种投票结果。可以选择设定提案通过后可执行的智能合约,从而调整dao内参数。智能合约执行可调用权限模块调整用户参数,如:新增部门权限、新增项目权限、修改用户权限;也可调用本模块内合约事件更改投票计算参数。决策提案将智能合约执行用调用的方式实现,为dao复杂合约投票提供了扩展接口,提高了提案执行合约时的多样性和可扩展性。
[0100]
(3.3)金融提案负责dao内融资相关场景,通过投票决定组织投资策略。该提案同样只包含通过和否定两种投票结果。金融提案可以添加本次投资需要的资金数量并指定用户收款地址。金融提案资金来源分为dao资金池和用户私人投资两种,提案通过难度将根据资金来源浮动,私人投资越多提案通过难度越低。提案通过后将调用资金模块将资金打包成交易发送给收款地址,收款用户可体现账户资金完成投资策略。
[0101]
(4)用户为提案投票。本环节用户浏览提案列表,对提案进行投票。提案分为重要提案和普通提案两类,设计重要提案是为了节省用户注意力,让主要提案能及时被发现。用户还可以根据类型筛选提案有针对性的浏览提案信息。
[0102]
(5)用户为项目投资。如果提案类型为金融提案,则在投票时可以使用个人账户追加资金提高提案通过几率。金融提案将记录本次交易的参与人和投资数据存证在区块链上,交易记录为后续投资回报提供可信凭证。
[0103]
(6)记录用户投票时间。投票完成后将存储本次投票的区块交易时间,投票时间是用户投票权重参数,建立投票时间和提案持续时间的关系式,实现越晚投票其票的权重越低,从而抵抗最后一分钟投票攻击。
[0104]
(7)记录提案重要度。本环节记录投票热度,用户参与投票人数越多则热度投票热度越高,当热度符合进入重要提案的筛选条件时提案将从普通提案列表转移至重要提案列表。热度判别难度数值和当前重要提案列表内提案数量正相关,该机制可将用户注意力控制在一定范围内。
[0105]
(8)计算提案投票结果。在决策提案和金融提案投票中,根据投票人数、投票时间、个人出资金额、用户类型等参数计算投票结果;在事务提案投票中,根据投票内容和用户类
型展示投票结果,事务提案负责处理日常型投票,其结果没有提案有效性判断参数。
[0106]
(9)执行合约完成提案。如果提案投票结果为通过并且有待执行合约,则执行对应治理合约并记录提案结果;如果没有待合约则直接记录提案结果。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1