一种融合区块链技术的演化方法技术

技术编号:29676400 阅读:22 留言:0更新日期:2021-08-13 21:58
本发明专利技术提供了一种融合区块链技术的演化方法,该方法包括:S1将DNA遗传算法放在区块链上,通过智能合约运行DNA遗传算法;S2对DNA遗传算法中的种群进行交叉与突变处理,并通过区块链获取DNA遗传算法中所需的随机数;S3获取下一代种群;S4对下一代种群进行评价,并输出最优解;S5下一次调用智能合约时,从S2开始迭代。本发明专利技术具备了区块链技术的安全性、公开性、透明性与可追溯性,解决了现有技术中算力不够,租买算力不够安全的问题,且使演化过程可以更接近自然演化,为DNA遗传算法与区块链的深度融合打下基础。除此之外,通过用户自身对花费与回报的判断来决定算法的迭代次数,能够使得算法的收敛可以自然停止在花费与回报基本平衡的位置。

【技术实现步骤摘要】
一种融合区块链技术的演化方法
本专利技术涉及区块链应用
,尤其涉及一种融合区块链技术的演化方法。
技术介绍
演化算法(evolutionaryalgorithms,简称EAs),它不是一个具体的算法,而是一个“算法簇”。演化算法的产生的灵感借鉴了大自然中生物的进化操作,它一般包括基因编码,种群初始化,交叉变异算子,经营保留机制等基本操作。与传统的基于微积分的方法和穷举方法等优化算法相比,演化计算是一种成熟的具有高鲁棒性和广泛适用性的全局优化方法,具有自组织、自适应、自学习的特性,能够不受问题性质的限制,有效地处理传统优化算法难以解决的复杂问题(比如NP难优化问题)。但是现有技术中演化算法的应用存在算力不够,租借算力安全性差的问题。
技术实现思路
针对上述技术问题,本专利技术提供一种融合区块链技术的演化方法,有效平衡了行为识别模型的准确率和参数量,且能够适配轻量级应用,更有利于应用于实际场景。为实现上述目的,本专利技术采取的技术方案为:本专利技术提供的一种融合区块链技术的演化方法,该方法包括以下步骤:S1将DNA遗传算法放在区块链上,通过智能合约运行DNA遗传算法;S2对DNA遗传算法中的种群进行交叉与突变处理,并通过区块链获取DNA遗传算法中所需的随机数;S3获取下一代种群;S4对下一代种群进行评价,并输出最优解;S5下一次调用智能合约时,从S2开始迭代。具体地,所述S1包括:S11将需要求解的问题进行DNA编码;S12随机选取n条DNA链作为初始种群;S13调用智能合约执行DNA遗传算法。具体地,所述S2为:调用交叉算子和变异算子对当前种群进行交叉与突变处理,在处理过程中通过获得当前区块链的最新一条记录中的一个字符或字段,以此生成DNA遗传算法需要的随机数,来获取真随机数。具体地,所述S3为:调用选择算子获取下一代种群。上述技术方案具有如下优点或者有益效果:本专利技术提供的一种融合区块链技术的演化方法,具备了区块链技术的安全性、公开性、透明性与可追溯性,且区块链元素的加入,使演化过程可以更接近自然演化,减少人为设计的成分,达到由市场来对演化算法本身进行演化的效果,为DNA遗传算法与区块链的深度融合打下基础。除此之外,通过用户自身对花费与回报的判断来决定算法的迭代次数,能够使得算法的收敛可以自然停止在花费与回报基本平衡的位置,以满足个性化应用所需的算法优化精度。附图说明通过阅读参照以下附图对非限制性实施例所作的详细描述,本专利技术及其特征、外形和优点将会变得更加明显。在全部附图中相同的标记指示相同的部分。并未刻意按照比例绘制附图,重点在于示出本专利技术的主旨。图1是本专利技术实施例1提供的一种融合区块链技术的演化方法的简要流程图。具体实施方式下面结合附图和具体的实施例对本专利技术作进一步的说明,但是不作为本专利技术的限定。实施例1:本专利技术提供的融合区块链技术的演化方法,主要将区块链技术应用于evolutionaryalgorithms上。在本方法中,可依据具体的问题采用不同的编码方式对带求解的问题进行编码,在此提供的遗传算法的计算逻辑不与其中的算子固有相关。本专利技术不针对任何特定的遗传算法算子,任何算子都可以实现在此描述的本
技术实现思路
。例如模仿生物遗传中碱基密码子决定氨基酸的过程。在算法中,一个问题的自变量由3个碱基编码,通过密码子与氨基酸的对照表,得到该密码子对应的氨基酸,在解码时同样通过查表进行。或者还可使用一定长度的碱基串来表示问题的一个自变量,然后将四种碱基转换为0、1、2、3四个数字,每一种碱基对应一个数字,从而把一个碱基串转换为一个四进制数字串。在本实施例1中,以后一种为例:随机选取n条DNA链作为初始种群popt=X1,X2,...,Xn,其中每条DNA链由m个碱基组成Xi=[xi1,xi2,...,xim],每个碱基有四种可能,xij∈{0,1,2,3},分别表示腺嘌呤(A),鸟嘌呤(G),胞嘧啶(C)和胸腺嘧啶(T)。接着设计一个用于评价DNA链优劣的评价函数并调用智能合约执行DNA遗传算法,以利用区块链的智能合约技术与token的激励机制来实现促进参与者的参与提供更多演化计算的算力,以及在提供算力的基础上通过智能合约实现推动演化算法框架继续工作。接着,为了使演化过程可以更接近自然演化,减少人为设计的成分,达到由市场来对演化算法本身进行演化的效果,调用交叉算子与变异算子,其中交叉算子为对于选中的用于繁殖的每一对DNA链,将其中部分内容进行互换,通过交叉产生新的DNA链。交叉方式有单点交叉和多点交叉等,比如多点交叉可以为:cross(Xa,Xb)=[xa1,xa2,...,xam,xbm+1,...,xb11];变异算子为对于选中的DNA链,将某一基因位上的碱基突变为另一种碱基,或者将某一组碱基倒转等。如mutation(Xa)=[xa1,xa2…,x′am,...,xa11],通过设定恰当的交叉概率、变异概率,以及随机产生变异位、交叉位等,得到中间种群Qt,在进行随机过程时,通过获得当前区块链的最新一条记录中的一个字符或字段,以此生成需要的随机数,来获取真随机数。得到中间种群Qt后,根据具体问题采用合适的选择算子从中间种群Qt中选出下一代种群popt+1=sel(popt,Qt),并采用评价函数对popt+1=sel(popt,Qt)中的所有个体进行评价,输出popt+1=sel(popt,Qt)中的最优解。接着由用户判断当前的解是否需要更多的计算,若还需进一步计算则再次调用智能合约,并从调用交叉算子和变异算子处开始迭代,由于每调用一次智能合约,则使用一次Token激励机制,使用的Token越多,则算法计算次数越多,所产生的解也越好。当计算次数增加带来的更优解无法超过投入Token的价值,则不会再继续计算。此时,算法便可达到使用者认为的花费与回报平衡的位置。以上对本专利技术的较佳实施例进行了描述;需要理解的是,本专利技术并不局限于上述特定实施方式,其中未尽详细描述的设备和结构应该理解为用本领域中的普通方式予以实施;任何熟悉本领域的技术人员,在不脱离本专利技术技术方案作出许多可能的变动和修饰,或修改为等同变化的等效实施例,这并不影响本专利技术的实质内容;因此,凡是未脱离本专利技术技术方案的内容,依据本专利技术的技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均仍属于本专利技术技术方案保护的范围内。本文档来自技高网
...

【技术保护点】
1.一种融合区块链技术的演化方法,其特征在于,该方法包括以下步骤:/nS1将DNA遗传算法放在区块链上,通过智能合约运行DNA遗传算法;/nS2对DNA遗传算法中的种群进行交叉与突变处理,并通过区块链获取DNA遗传算法中所需的随机数;/nS3获取下一代种群;/nS4对下一代种群进行评价,并输出最优解;/nS5下一次调用智能合约时,从S2开始迭代。/n

【技术特征摘要】
1.一种融合区块链技术的演化方法,其特征在于,该方法包括以下步骤:
S1将DNA遗传算法放在区块链上,通过智能合约运行DNA遗传算法;
S2对DNA遗传算法中的种群进行交叉与突变处理,并通过区块链获取DNA遗传算法中所需的随机数;
S3获取下一代种群;
S4对下一代种群进行评价,并输出最优解;
S5下一次调用智能合约时,从S2开始迭代。


2.如权利要求1所述的一种融合区块链技术的演化方法,其特征在于,所述S1包括:
S11将需要求解的问题进行D...

【专利技术属性】
技术研发人员:刘峰王晗阳齐佳音周爱民李志斌
申请(专利权)人:上海对外经贸大学华东师范大学
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1