一种汉字基因编、解码方法及系统与流程

文档序号:14727218发布日期:2018-06-19 11:52阅读:383来源:国知局

本发明涉及一种编、解码方法及系统,特别是涉及一种汉字基因编、解码方法及系统。



背景技术:

基因(遗传因子)是产生一条多肽链或功能RNA(Ribonucleic Acid,核糖核酸)所需的全部核苷酸序列。基因支持着生命的基本构造和性能。储存着生命的种族、血型、孕育、生长、凋亡等过程的全部信息。环境和遗传的互相依赖,演绎着生命的繁衍、细胞分裂和蛋白质合成等重要生理过程,生物体的生、长、衰、病、老、死等一切生命现象都与基因有关。因此,不论是动物界还是植物界,基因是一切生命的基础。

植物界品种繁多,很多相似的品种的种系往往难以区别,随着人类对基因的认识的深入,逐步采用基因对植物界的品种种系进行鉴别。然而,在植物界中使用基因进行鉴别时,常常由于样品的混样等问题,往往造成难以准确地、快速、高效地进行种系识别的问题。因此,现有技术中常常将外源碱基序列信息导入生物,以更好地利用基因进行品种种系的鉴别以及追踪。将外源导入的碱基序列信息导入生物,就像为商品打上铭牌一样,将使追踪、鉴别变得非常容易。

然而,事实上,由于生物的遗传变异,在很多情况下,外源碱基序列很可能产生变化但确不知,这样将导致基因的鉴别与追踪容易出现错误,未及时发现则有可能造成很大的损失,一种高容错的基因编码方案就变得非常有必要,因此,本发明提出一种技术手段,以实现将汉字编码作为一种有效的外源信息,将汉字使用基因编码,且能高容错地在基因复制中保证能高容错的解码,进而实现生物学信息准确高效地追踪和鉴定。



技术实现要素:

为克服上述现有技术存在的不足,本发明之目的在于提供一种汉字基因编、解码方法及系统,以实现将汉字编码作为一种有效的外源信息,将常用汉字信息存储于生物基因中,并可在基因复制中保证高容错的解码,以用于生物信息的标识、追踪,提高植物生物学信息追踪、鉴定的精准性和高效性,从而节省大量的分析、鉴定时间。

为达上述及其它目的,本发明提出一种汉字基因编码方法,包括如下步骤:

对待编码信息根据预先建立的汉字基因编码字典库获得编码信息,形成信息体;

使用定位区编码方法,于所述信息体的前后制作信息头的定位区和信息尾的定位区;

于所述信息头的定位区前制作信息头的装饰区,于所述信息尾的定位区后制作信息尾的装饰区。

进一步地,对待编码信息根据预先建立的汉字基因编码字典库获得编码信息,将获得的编码信息重复N次后作为所述信息体。

进一步地,所述使用定位区编码方法,于所述信息体的前后制作信息头的定位区和信息尾的定位区的步骤进一步包括:

挑取一个或几个汉字,对其使用散列算法生成散列值;

对生成的散列值截取部分或全部,采用基因基本编码方法将其各字节转换为碱基作为头或尾定位区编码;

将所述头或尾定位区编码利用所述汉字基因编码字典库测试及随机串测试,于测试通过后作为信息头和信息尾的定位区。

进一步地,所述于所述信息头的定位区前制作信息头的装饰区,于所述信息尾的定位区后制作信息尾的装饰区的步骤中,将所述信息尾的定位区信息重复若干次作为信息头的装饰区信息,将所述信息头的定位区信息重复若干次作为所述信息尾的装饰区信息。

进一步地,所述编码方法还包括如下步骤:

将汉字编码转换为四进制并与碱基进行映射建立汉字基因编码字典库。

进一步地,所述将汉字编码转换为四进制并与碱基进行映射建立汉字基因编码字典库的步骤具体包括:

将常用汉字进行编码,生成二进制字节;

将所述二进制字节转换为四进制;

将基因的碱基与四进制的0,1,2,3进行映射。

为达到上述目的,本发明还提供一种汉字基因编码系统,包括:

信息体生成单元,用于对待编码信息根据预先建立的汉字基因编码字典库获得编码信息,形成信息体;

定位区生成单元,用于使用定位区编码方法,于所述信息体的前后分别制作信息头的定位区和信息尾的定位区;

装饰区生成单元,用于于所述信息头的定位区前制作所述信息头的装饰区,于所述信息尾的定位区后制作所述信息尾的装饰区。

为达到上述目的,本发明还提供一种汉字基因解码方法,包括如下步骤:

利用字符串匹配搜索待解码消息体,找到所述待解码消息体的信息头与信息尾的定位区;

删除所述待解码消息体中信息头定位区及前面的碱基以及信息尾定位区及后面的碱基,得到信息体;

对所述信息体进行解码。

进一步地,所述对所述信息体进行解码的步骤进一步包括:

对得到的信息体查找最大重复子串;

若查到的最大重复子串的长度正好为整个串长度的1/编码重复倍数,则使用与基因基本编码方法相反的基本解码方法对该最大重复子串进行解码;否则对所述信息体进行容错解码。

为达到上述目的,本发明还提供一种汉字基因解码系统,包括:

定位区查找单元,用于利用字符串匹配搜索待解码消息体,找到所述待解码消息体的信息头与信息尾的定位区;

信息体提取单元,用于根据查找结果删除所述待解码消息体中信息头定位区及前面的碱基以及信息尾定位区及后面的碱基,得到信息体;

解码单元,用于对所述信息体进行解码。

与现有技术相比,本发明一种汉字基因编、解码方法及系统通过将汉字使用基因编码,并采用保护编码以及冗余编码,实现了将常用汉字信息存储于生物基因中,同时通过高容错的解码方法使得其可高容错地在基因复制中保证高容错的解码,以用于生物信息的标识、追踪,提高了植物生物学信息追踪、鉴定的精准性和高效性,从而节省了大量的分析、鉴定时间。

附图说明

图1为本发明一种汉字基因编码方法的步骤流程图;

图2为本发明具体实施例中基因基本编码方法的流程图;

图3为本发明具体实施例中信息头/信息尾的定位区的制作流程图;

图4为本发明具体实施例中建立的完整的消息体的结构图;

图5为本发明一种汉字基因编码系统的系统架构图;

图6为本发明具体实施例中定位区生成单元的细部结构图;

图7为本发明一种汉字基因解码方法的步骤流程图;

图8为本发明一种汉字基因解码系统的系统架构图。

具体实施方式

以下通过特定的具体实例并结合附图说明本发明的实施方式,本领域技术人员可由本说明书所揭示的内容轻易地了解本发明的其它优点与功效。本发明亦可通过其它不同的具体实例加以施行或应用,本说明书中的各项细节亦可基于不同观点与应用,在不背离本发明的精神下进行各种修饰与变更。

图1为本发明一种汉字基因编码方法的步骤流程图。如图1所示,本发明一种汉字基因编码方法,包括如下步骤:

步骤S1,对待编码信息根据预先建立的汉字基因编码字典库获得编码信息,形成信息体。在本发明具体实施例中,所述汉字基因编码字典库采用基因基本编码方法形成,其建立汉字与基因碱基(ATGC/AUCG)的对应关系。

优选地,为保护信息体不受损,于步骤S1中,将获得的编码信息重复N次(较佳地,N为3)后,作为所述信息体,即通过冗余编码以达到高容错的目的。

步骤S2,使用定位区编码方法,于信息体的前后制作信息头的定位区和信息尾的定位区。在本发明具体实施例中,为了能准确地找到作为基本编码区的信息体,需要制作用于定位的识别头区(信息头的定位区)及识别尾区(信息尾的定位区)。具体地,步骤S2进一步包括如下步骤:

步骤S201,选取一个或几个汉字,对它们使用散列(hash)算法(例如MD5)生成散列值。以取'农'字的MD5码为例:

$echo'农'|md5

67cd0dc1c7be9f499fe105db4f4a1f1f

步骤S202,对生成的散列值截取部分或全部,采用基因基本编码方法将其各字节转换为碱基作为头或尾定位区编码。在本发明具体实施例中,所采用的基因基本编码方法具体如下:

将生成的散列值转换为对应的二进制;

再将二进制转换为四进制;

将四进制的将0,1,2,3映射为碱基TCAG/UCAG,例如0->T/U,1->C,2->A,3->G,即实现了将字节转换为碱基目的。

在本发明具体实施例中,以步骤S201中‘农’生成的散列值67cd0dc1c7be9f499fe105db4f4a1f1f进行上述基因基本编码,得到GCAGCGGTCGACTGTTGTACATGGTCGTCGAGGATAGTAGGTGACAGCTGACGACGTGCACCGTCGTTGCCGTACATAGCTGTGCAACATCGTCGTGCATGACA,

在本实施例中,取该串的若干字符(例如24个字符),做为头/尾定位区编码。

步骤S203,将头或尾定位区编码利用汉字基因编码字典库测试及随机串测试,于测试通过后作为信息头和信息尾的定位区。具体地,首先将头或尾定位区编码于汉字基因编码字典库中,随机抽取30个汉字做随机组合,检验上述头或尾定位区编码的最小编辑距离,通过若干次(例如10万次以上)的检验,使其编辑距离达到最小,如果达不到期望的编辑距离,则需要换标记汉字,再进行验证测试,于汉字基因编码字典库测试验证通过后,采用随机碱基信息对头或尾定位区编码进行检验,于达到期望编辑距离时,验证通过,将该头或尾定位区编码作为信息头或信息尾的定位区,否则,需要更换标记文字重新制作。这样,一是证明了信息头和尾在信息原文中出现的可能性是不存在的;二是证明有足够的容错性。

在本发明具体实施例中,以信息头的定位区为例,经步骤S202编码,

取该串的前24字符为:'GCAGCGGTCGACTGTTGTACATGG',在汉字基因编码字典库中,测试的最小编辑距离为:8;

取第25到48:TCGTCGAGGATAGTAGGTGACAGC的最小编辑距离为7;

取第49到72:TCGTCGAGGATAGTAGGTGACAGC的最小编辑距离为9;

选择最小编辑距离为9的串做为候选串;

对候选串再通过随机碱基信息验证后,如果编辑距离大于6,则将其作为信息头的定位区;

即信息头的定位串为:TCGTCGAGGATAGTAGGTGACAGC。

采用同样的方法,可使用'业'字的md5码:60344a3cde98febdfc12ad5a810b07e7,得到信息尾的定位区编码为:

GCAGTTGTGGCTGCTGTTGACGAT。

步骤S3,于信息头的定位区前制作信息头的装饰区,于信息尾的定位区后制作信息尾的装饰区。为了保护信息头和信息尾的定位区,还需要制作保护编码,称为信息头的装饰区和信息尾的装饰区,即在信息头的定位区前制作信息头的装饰区,在信息尾的定位区后制作信息尾的装饰区,这样,当这段基因前后受损时,只要信息头、尾足够大,就可以保证真正有用信息的编码区不受损。在本发明具体实施例中,信息头的装饰区信息采用信息尾的定位区信息,信息尾的装饰区信息采用信息头的定位区信息。优选地,将信息尾的定位区信息重复若干次(较佳地例如3次)作为信息头的装饰区信息,将信息头的定位区信息重复若干次(较佳地例如3次)作为信息尾的装饰区信息,例如信息尾的定位区编码为24bp,信息头的使用信息尾的定位区信息,且将24bp重复3次,即72bp,同样,信息尾的装饰区使用信息头的定位区信息,也是重复3次,即增加72bp,这是为了容错目前在基因植入时常见的首尾50bp缺失的技术问题。

例如,在本发明具体实施例中,通过步骤S2得到信息头的定位串为:TCGTCGAGGATAGTAGGTGACAGC。

将它加倍后,即TCGTCGAGGATAGTAGGTGACAGCTCGTCGAGGATAGTAGGTGACAGC将做为信息尾的装饰区;

信息尾的定位串为:

GCAGTTGTGGCTGCTGTTGACGAT

这样,信息头的装饰区编码为:GCAGTTGTGGCTGCTGTTGACGATGCAGTTGTGGCTGCTGTTGACGAT。

优选地,于步骤S1之前,还包括如下步骤:

步骤S0,通过将汉字转换为四进制并与碱基进行映射建立的汉字基因编码字典库。具体地,步骤S0进一步包括:

步骤S01,将常用汉字进行编码,生成二进制字节。在本发明具体实施例中,将常用汉字使用Unicode的UTF-8编码方案,生成二进制字节;在本发明具体实施例中,选用GB3212-80编码中的一级汉字,共3755个字。这些字使用UTF-8编码后,一个汉字对应3个字节;

步骤S02,将字节转换为4进制;

步骤S03,将基因的碱基(ATGC/AUCG)与4进制的0,1,2,3进行映射;

这样,通过以上步骤,即可以将汉字编码为基因的碱基,一个常用汉字对应UTF-8的3个字节,则编码为碱基为12碱基。

以下将“汉字”的“汉”字,转换为基因编码示例如下:

该\"汉\"字的UTF-8编码为(十六进制):E6B189,其代表:0xE6,0xB1,0x89的三个十六进制字节。

其对应的二进制是:111001101011000110001001

将转换为四进制是:321223012021

将四进制的0,1,2,3映射为碱基的TCAG,例如0->T,1->C,2->A,3->G,

则上面的四进制就变成了:

GACAAGTCATAC

这样,一个汉字的基本基因编码就完成了:即一个汉字被编码为了12个碱基长的字符串,使用上面的基本编码方案,对常用汉字制作成所述汉字基因编码字典库。以GB2312中一级字库(常用字)为例,共有汉字3755个,则制作的汉字基因编码字典库对应的碱基数为45060个(即一个汉字对应12个碱基)。

以下将通过一具体实施例来进一步说明本发明的编码过程:

一、如图2所示,建立汉字基因编码字典库:取常用汉字,将其转成二进制,例如使用Unicode的UTF-8编码方案,生成二进制字节;将二进制字节转为四进制;将四进制的0,1,2,3与碱基的TCAG映射,建立所述汉字基因编码字典库;

二、对待编码信息根据预先建立的汉字基因编码字典库获得编码信息(可称为载体信息),将其重复若干次,形成信息体,例如,根据汉字于汉字基因编码字典库中匹配得到如下碱基:

“GACCAGATAGATGACGACCTAAATGACAAGTCATACGACCAAGCACCGGACCACGGAGAAGACCACAGAATTGACGAGGTACCAGACGAATTATTCGACAACCAAGACGACAAATCATAT”

将它重复3次,就得到了信息体的全部编码。由于该段区域内容出错率低,所以采用简单的三次重复,即可以达到高容错的解码的目的;

三、如图3所示,制作信息头/信息尾的定位区:设定特征信息,例如挑取特别的一些标记汉字;对特征信息采用散列(hash)算法(如MD5)生成散列值;随机抽取若干个字节(例如六个字节),将其转换为四进制;将四进制的0,1,2,3与碱基的TCAG映射获得信息头/信息尾定位区编码;将信息头/信息尾定位区编码利用汉字基因编码字典库进行检验,例如从一级字库中,随机抽取30汉字做随机组合,检验上述定位区编码的最小编辑距离,通过10万次以上的检验,使最小编辑距离达到最小;如果达不到期望的编辑距离,则需要换标记汉字,再进行验证测试;验证通过后利用随机信息碱基编码进行检验,即进行随机验证,如果编辑距离大于6,则认为验证通过,将该定位区编码确定为最终的定位区编码,否则需要更换标记文字重新进行验证测试;

四、制作信息头/信息尾的装饰区:信息头的装饰区信息采用信息尾的定位区信息,信息尾的装饰区信息采用信息头的定位区信息。在本发明具体实施例中,将信息尾的定位区信息重复3次作为信息头的装饰区信息,将信息头的定位区信息重复3次作为信息尾的装饰区信息。

可见,本发明编码所建立的完整的消息体的结构如图4所示,本实施例完整的编码示例如下:

GCAGTTGTGGCTGCTGTTGACGATGCAGTTGTGGCTGCTGTTGACGAT(信息头装饰区)

TCGTCGAGGATAGTAGGTGACAGC(信息头定位区)

GACCAGATAGATGACGACCTAAATGACAAGTCATACGACCAAGCACCGGACCACGGAGAAGACCACAGAATTGACGAGGTACCAGACGAATTATTCGACAACCAAGACGACAAATCATAT(载体信息重复一)

GACCAGATAGATGACGACCTAAATGACAAGTCATACGACCAAGCACCGGACCACGGAGAAGACCACAGAATTGACGAGGTACCAGACGAATTATTCGACAACCAAGACGACAAATCATAT(载体信息重复二)

GACCAGATAGATGACGACCTAAATGACAAGTCATACGACCAAGCACCGGACCACGGAGAAGACCACAGAATTGACGAGGTACCAGACGAATTATTCGACAACCAAGACGACAAATCATAT(载体信息重复三)

GCAGTTGTGGCTGCTGTTGACGAT(信息尾定位区)

TCGTCGAGGATAGTAGGTGACAGCTCGTCGAGGATAGTAGGTGACAGC(信息尾装饰区)

图5为本发明一种汉字基因编码系统的系统架构图。如图5所示,本发明一种汉字基因编码系统,包括:

信息体生成单元50,用于对待编码信息根据预先建立的汉字基因编码字典库获得编码信息,形成信息体。在本发明具体实施例中,所述汉字基因编码字典库采用基因基本编码方法形成,其建立汉字与基因碱基(ATGC/AUCG)的对应关系。

优选地,为保护信息体不受损,信息体生成单元50将获得的编码信息重复N次(较佳地,N为3)后,作为所述信息体,即通过冗余编码以达到高容错的目的。

定位区生成单元51,用于使用定位区编码方法,于信息体的前后分别制作信息头的定位区和信息尾的定位区。在本发明具体实施例中,为了能准确地找到作为基本编码区的信息体,需要制作用于定位的识别头区(信息头的定位区)及识别尾区(信息尾的定位区)。具体地,如图6所示,定位区生成单元51进一步:

特征信息生成单元510,用于挑取特别的一些标记汉字,对它们使用散列(hash)算法(例如MD5)生成散列值;

碱基转换单元511,用于对生成的散列值截取部分或全部,采用基因基本编码方法将其各字节转换为碱基作为头或尾定位区编码。

验证单元512,用于将头或尾定位区编码利用汉字基因编码字典库测试及随机串测试,于测试通过后作为信息头和信息尾的定位区。具体地,首先将头或尾定位区编码于汉字基因编码字典库中,随机抽取30汉字做随机组合,检验上述头或尾定位区编码的最小编辑距离,通过若干次(例如10万次以上)的检验,使最小编辑距离达到最小,如果达不到期望的编辑距离,则需要换标记汉字,再进行验证测试,于汉字基因编码字典库测试验证通过后,采用随机碱基信息对头或尾定位区编码进行检验,于达到期望编辑距离时,验证通过,将该头或尾定位区编码作为信息头或信息尾的定位区,否则,需要更换标记文字重新制作。

装饰区生成单元52,用于于信息头的定位区前制作信息头的装饰区,于信息尾的定位区后制作信息尾的装饰区。为了保护信息头和信息尾的定位区,还需要制作保护编码,称为信息头的装饰区和信息尾的装饰区,即在信息头的定位区前制作信息头的装饰区,在信息尾的定位区后制作信息尾的装饰区,这样,当这段基因前后受损时,只要信息头、尾足够大,就可以保证真正有用信息的编码区不受损。在本发明具体实施例中,信息头的装饰区信息采用信息尾的定位区信息,信息尾的装饰区信息采用信息头的定位区信息。优选地,将信息尾的定位区信息重复若干次(较佳地例如3次)作为信息头的装饰区信息,将信息头的定位区信息重复若干次(较佳地例如3次)作为信息尾的装饰区信息,

优选地,本发明之汉字基因编码系统还包括:

字典库建立单元,通过将汉字转换为四进制并与碱基进行映射建立的汉字基因编码字典库。具体地,字典库建立单元进一步包括:

二进制生成单元,用于将常用汉字进行编码,生成二进制字节。在本发明具体实施例中,将常用汉字使用Unicode的UTF-8编码方案,生成二进制字节;在本发明具体实施例中,选用GB3212-80编码中的一级汉字,共3755个字。这些字使用UTF-8编码后,一个汉字对应3个字节;

四进制转换单元,用于将二进制字节转换为4进制;

碱基映射单元,用于将基因的碱基(ATGC/AUCG)与4进制的0,1,2,3进行映射。这样,通过以上步骤,即可以将汉字编码为基因的碱基,一个常用汉字对应UTF-8的3个字节,则编码为碱基为12碱基。

图7为本发明一种汉字基因解码方法的步骤流程图。如图7所示,本发明一种汉字基因解码方法,包括如下步骤:

步骤701,利用字符串匹配搜索待解码消息体,找到消息体的信息头与信息尾的定位区;在本发明具体实施例中,可根据编码时生成的信息头定位区或信息尾定位区的字符串对待解码消息体进行匹配,对信息头和信息尾的定位区进行定位;这里需说明的是,如果使用信息头定位编码查找时,若没有查到,或查到的位置,起始位置距离离尾部的距离小于72,则表明在信息头定位区有差错,此时继续采用brute-force算法继续匹配,即,使用编辑距离查找,如果还找不到,则继续增大编辑距离查找,编辑距离最大值为4,brute-force算法具体说明如下:

设串S(source)为:AGC,串T(target)为ATTGCT

以使用编辑距离为1进行查找为例,使用循环的方法,每次移一个字符,在T中查找与S同长的字符串,然后计算编辑距离:

第一次,从T中取ATT,与AGC的编辑距离为2,大于1,不符合;继续查找;

第二次,从T中取TTG,这个与AGC的编辑距离为2,大于1,不符合;继续查找;

第三次,从T中取TGC,这个与AGC的编辑距离为1,符合要求,查询结束。

步骤702,删除消息体中信息头定位区及前面的碱基以及信息尾定位区及后面的碱基,得到信息体。

步骤703,对信息体进行解码。

具体地,步骤703进一步包括:

对得到的信息体查找最大重复子串;

若查到的最大重复子串的长度正好为整个串长度的1/编码重复倍数,则表明该最大重复子串为正确的,则使用基本解码方法对该最大重复子串进行解码,这里的基本解码方法与基因基本编码方法相反;若查到的最大重复子串的长度不为整个串长度的1/编码重复倍数,则对信息体进行容错解码。

具体地,所述基本解码方法具体包括:

将该最大重复子串的碱基映射为四进制的0,1,2,3;

将0,1,2,3做为4进制转换为2进制;

将2进制字节作为信息的utf-8编码,得到相应表示的汉字信息。

具体地,对信息体进行容错解码也可采用brute-force算法实现,其具体过程如下:

从1开始,即将编辑距离先设置为1,制作含有编辑距离的最大子串查询;

如果查到的子串长度不到整个串长度的1/3,则增加编辑距离,每次增加1,直至查询到的最大重复子串的长度为整个长度的1/3。

优选地,如当编辑距离为3时,查到最大重复子串长度为整个长度的1/3,则可以认为,这个串出错了,最小出错为3,并根据这个编辑距离长度,算出可能的出错率,如e0,对此串进行解码,之后在汉字基因编码字典库中查找,如果错误率超过e0,则可以推测,不是发生了碱基原位变化,而是发生了前后位置的偏移,此时将舍弃第一个碱基,重复上述操作,直至整个错误率小于等于e0,通过上述操作,将能得到最大的原有信息。

以如下载体信息:

GACCAGATAGATGACGACCTAAATGACAAGTCATACGACCAAGCACCGGACCACGGAGAAGACCACAGAATTGACGAGGTACCAGACGAATTATTCGACAACCAAGACGACAAATCATAT为例,它解出的信息为:“常用汉字基因编码方案”

而假设前3个碱基错了,如GAC变成为TCG,则解出来的信息为:

“用汉字基因编码方案”

前者,共有120个碱基,错了3个碱基,碱基错误率为2.5%;由于汉字与碱基是1比12的关系,所以,我们得到e0=12*2.5%=30%。在正确的情况下,120个碱基应该解出10个汉字;而目前解出了9个汉字;不过,这9个汉字,在常用汉字字典中,均能找到。即原信息(汉字)的出错率为:10%,这个错误率小于e0(30%),所以,是可以接受的。这就正确地、最大程序地还原了编码的信息。

如果不是前3个碱基错误,而是缺失,即最大重复串缺了前3个碱基,变为:

CAGATAGATGACGACCTAAATGACAAGTCATACGACCAAGCACCGGACCACGGAGAAGACCACAGAATTGACGAGGTACCAGACGAATTATTCGACAACCAAGACGACAAATCATAT

它对应解出的信息为“n.9媹bykeg蹯9蠹yb”,这个信息,在常用汉字字典中,找到0个,由于117/12=9.75,按4舍5入的原则,仍应该还原为10个汉字,而目前,还原正常汉字数为0,错误率为100%,这个大于e0=30%,所以,我们可以推断,是发生了Indel,即位置有偏移。这时,应重复舍去前面的碱基,重复上面的计算:

再删除一个碱基,就可以得到解码信息为:“用汉字基因编码方案”,即错误率又回到了10%,可以接受的一个错误率。

图8为本发明一种汉字基因解码系统的系统架构图。如图8所示,本发明一种汉字基因解码系统,包括:

定位区查找单元801,用于利用字符串匹配搜索待解码消息体,找到所述待解码消息体的信息头与信息尾的定位区;在本发明具体实施例中,定位区查找单元801可根据编码时生成的信息头定位区或信息尾定位区的字符串对待解码消息体进行匹配,对信息头和信息尾的定位区进行定位;这里需说明的是,如果使用信息头定位编码查找时,若没有查到,或查到的位置,起始位置距离离尾部的距离小于72,则表明在信息头定位区有差错,这时,则需要使用带编辑距离地查找,如果还找不到,则继续增大编辑距离查找,编辑距离最大值为4;

信息体提取单元802,用于根据查找结果删除所述待解码消息体中信息头定位区及前面的碱基以及信息尾定位区及后面的碱基,得到信息体;

解码单元803,用于对所述信息体进行解码。

具体地,解码单元803具体用于:

对得到的信息体查找最大重复子串;

若查到的最大重复子串的长度正好为整个串长度的1/编码重复倍数,则表明该最大重复子串为正确的,则使用基本解码方法对该最大重复子串进行解码,这里的基本解码方法与基因基本编码方法相反;若查到的最大重复子串的长度不为整个串长度的1/编码重复倍数,则对信息体进行容错解码。

具体地,对信息体进行容错解码具体过程如下:

从1开始,即将编辑距离先设置为1,制作含有编辑距离的最大子串查询;

如果查到的子串长度不到整个串长度的1/3,则增加编辑距离,每次增加1,直至查询到的最大重复子串的长度为整个长度的1/3。

优选地,如当编辑距离为3时,查到最大重复子串长度为整个长度的1/3,则可以认为,这个串出错了,最小出错为3,并根据这个编辑距离长度,算出可能的出错率,如e0,则对此串进行解码,之后在汉字基因编码字典库中查找,如果错误率超过e0,则可以推测,不是发生了碱基原位变化,而是发生了前后位置的偏移,此时将舍弃第一个碱基,重复上述操作。直至整个错误率小于等于e0。通过上述操作,将能得到最大的原有信息。

可见,本发明一种汉字基因编、解码方法及系统通过将汉字使用基因编码,并采用保护编码以及冗余编码,实现了将常用汉字信息存储于生物基因中,同时通过高容错的解码方法使得其可高容错地在基因复制中保证高容错的解码,以用于生物信息的标识、追踪,提高了植物生物学信息追踪、鉴定的精准性和高效性,从而节省了大量的分析、鉴定时间。

任何本领域技术人员均可在不违背本发明的精神及范畴下,对上述实施例进行修饰与改变。因此,本发明的权利保护范围,应如权利要求书所列。

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