1.一种基于图压缩的序列到图比对方法,其特征在于,包括以下步骤:S1、获取基因组图和测序序列;
S2、基因组图图压缩:遍历基因组图中的所有结点,获取只有一个前驱结点和一个后继结点的结点为待合并结点,如果存在若干个待合并结点拥有共同的前驱结点和后继接结点,则若干个待合并结点为可合并结点,将基因组图中所述可合并结点进行合并,生成合并结点,对基因组图进行更新后得到压缩图;
S3、编码:基于四位二进制标记位对压缩图中的合并结点和非合并结点中的碱基进行编码,得到编码后的压缩图;
基于四位二进制标记位对测序序列中的每个碱基进行编码,得到编码后的测序序列;
S4、序列到图比对:对编码后的压缩图进行拓扑排序,与编码后的测序序列进行偏序比对,基于比对结果、预先设定的匹配罚分和不匹配罚分引入碱基置换罚分,基于引入的碱基置换罚分分别得到线性罚分、仿射罚分和双仿射罚分模式下的比对分数,基于比对分数确定编码后的压缩图拓扑排序后最末端的结点和编码后的测序序列中最末端碱基的比对分数为最佳比对分数;
所述引入的碱基置换罚分,计算公式为:
,
其中, 为编码后的压缩图拓扑排序后第i位的结点 和编码后的测序序列中第j个碱基 的碱基置换罚分, 为用户输入的匹配罚分, 为用户输入的不匹配罚分, 为位与函数;
所述基于引入的碱基置换罚分得到线性罚分模式下的比对分数,具体为:,
其中, 为编码后的压缩图拓扑排序后第i位的结点 和编码后的测序序列中第j个碱基 的比对分数, 为结点 的所有的前驱结点 和编码后的测序序列中第j‑1个碱基 的比对分数, 为结点 的所有的前驱结点 和序列中第j个碱基 的比对分数, 为结点 和序列中第j‑1个碱基 的比对分数, 为缺失罚分, 为插入罚分, 为编码后的压缩图拓扑排序后第i位的结点 和编码后的测序序列中第j个碱基 的碱基置换罚分,结点为结点的前驱结点, 为结点 的前驱结点集合,max为取最大值;
所述基于引入的碱基置换罚分得到仿射罚分模式下的比对分数,具体为:,
其中,M为未进行罚分的状态,X为进行缺失罚分的状态,Y为进行插入罚分的状态,为拓扑排序第i位的结点 和编码后的测序序列中第j个碱基 的M状态下的分数, 为结点 的所有的前驱结点 和编码后的测序序列中第j‑1个碱基在M状态下的比对分数, 为结点 的所有的前驱结点 和编码后的测序序列中第j‑1个碱基在X状态下的比对分数, 为结点 的所有的前驱结点 和编码后的测序序列中第j‑1个碱基在Y状态下的比对分数, 为编码后的压缩图拓扑排序后第i位的结点 和编码后的测序序列中第j个碱基 的碱基置换罚分,结点为结点的前驱结点, 为结点 的前驱结点集合; 为拓扑排序第位的结点 和编码后的测序序列中第j个碱基 的X状态下的比对分数, 和 分别为结点的所有的前驱结点 和序列中第j个碱基 的M状态下和X状态下分数, 为第一个空位的缺失罚分, 为延伸缺失罚分; 为拓扑排序第i位的结点 和编码后的测序序列中第j个碱基的Y状态下的比对分数, 和 分别为结点 和序列中第j‑1个碱基 的M状态下和Y状态下的比对分数, 为第一个空位的插入罚分, 为延伸插入罚分, 为编码后的压缩图拓扑排序后第i位的结点 和编码后的测序序列中第j个碱基 的比对分数,max为取最大值;
所述引入碱基置换罚分后双仿射罚分模式下的比对分数计算,具体为:,
其中,M为未进行罚分的状态, 为进行第一种仿射罚分的缺失罚分状态, 为进行第二种仿射罚分的缺失罚分状态, 为进行第一种仿射罚分的插入罚分状态, 为进行第二种仿射罚分的插入罚分状态, 为拓扑排序第i位的结点 和编码后的测序序列中第j个碱基 的M状态下的分数, 为结点 的所有的前驱结点 和编码后的测序序列中第j‑1个碱基在M状态下的比对分数, 、 分别为结点的所有的前驱结点和编码后的测序序列中第j‑1个碱基在X1、X2状态下的比对分数,、 分别为结点 的所有的前驱结点 和编码后的测序序列中第j‑1个碱基在Y1、Y2状态下的比对分数, 为编码后的压缩图拓扑排序后第i位的结点 和编码后的测序序列中第j个碱基 的碱基置换罚分,结点为结点 的前驱结点, 为结点 的前驱结点集合; 、 分别为拓扑排序第i位的结点 和编码后的测序序列中第j个碱基 在X1、X2状态下的比对分数, 和、 分别为结点 的所有的前驱结点 和序列中第j个碱基 的M状态下和X1、X2状态下分数, 、 分别为X1、X2状态下第一个空位的缺失罚分, 、 分别为X1、X2状态下的延伸缺失罚分; 、分别为拓扑排序第位的结点和编码后的测序序列中第j个碱基 的Y1、Y2状态下的比对分数, 和 、 分别为结点 和序列中第j‑1个碱基的M状态下和Y1、Y2状态下的比对分数, 、 分别为Y1、Y2状态下第一个空位的插入罚分, 、 分别为Y1、Y2状态下的延伸插入罚分,为编码后的压缩图拓扑排序后第i位的结点 和编码后的测序序列中第j个碱基的比对分数,max为取最大值;
S5、基于所述比对分数构建二维方向的回溯矩阵,基于最佳比对分数位置确定回溯起点,基于回溯起点依次在其相邻位置中选择其比对分数来源方向作为回溯方向进行回溯,得到最佳比对路径,基于最佳比对路径进行序列到图的比对。
2.根据权利要求1所述的基于图压缩的序列到图比对方法,其特征在于,所述S5中基于回溯起点依次在其相邻位置中选择其比对分数来源方向作为回溯方向进行回溯,具体为:在线性罚分中:
如果 ,那么 ,
如果 ,那么 ,
如果 ,那么 ,
在仿射罚分中:
如果 ,那么 ,
如果 ,那么 ,
如果 ,那么 ,
在双仿射罚分中:
如果 ,那么 ,
如果 ,那么 ,
如果 ,那么 ,
如果 ,那么 ,
如果 ,那么 ,
其中, 为编码后的压缩图拓扑排序后第i位的结点 和编码后的测序序列中第j个碱基 的比对分数, 为结点 的所有的前驱结点 和编码后的测序序列中第j‑1个碱基 的比对分数, 为结点 的所有的前驱结点 和序列中第j个碱基 的比对分数, 为结点 和序列中第j‑1个碱基 的比对分数,为缺失罚分, 为插入罚分, 为编码后的压缩图拓扑排序后第i位的结点 和编码后的测序序列中第j个碱基 的碱基置换罚分, 为编码后的压缩图拓扑排序后第i位结点 和编码后的测序序列中第j个碱基 对应得分矩阵单元的回溯方向, 为前驱结点 的次序, 为拓扑排序第i位的结点 和编码后的测序序列中第j个碱基 的M状态下的分数, 、 、 分别为拓扑排序第i位的结点 和编码后的测序序列中第j个碱基 的X、X1、X2状态下的比对分数,、 、 分别为拓扑排序第i位的结点 和编码后的测序序列中第j个碱基的Y、Y1、Y2状态下的比对分数。
3.根据权利要求1所述的基于图压缩的序列到图比对方法,其特征在于,所述S2中获取只有一个前驱结点和一个后继结点的结点为待合并结点后,还包括:将待合并结点的一组前驱结点和后继结点作为哈希表的键,同时将待合并结点的ID作为值存入哈希表,遍历哈希表,如果键对应的值列表长度大于1,则判断对应的若干个待合并结点拥有共同的前驱结点和后继接结点,为可合并结点。
4.根据权利要求1所述的基于图压缩的序列到图比对方法,其特征在于,所述S3中基于四位二进制标记位对压缩图合并结点和非合并结点进行碱基编码,为:如果标记位为1,表示合并前的合并结点和非合并结点存在该碱基;如果标记位为0,表示合并前的合并结点和非合并结点不存在该碱基。
5.一种基于图压缩的序列到图比对系统,其特征在于,包括:数据获取模块:用于获取基因组图和测序序列;
图压缩模块:用于遍历基因组图中的所有结点,获取只有一个前驱结点和一个后继结点的结点为待合并结点,如果存在若干个待合并结点拥有共同的前驱结点和后继接结点,则若干个待合并结点为可合并结点,将基因组图中所述可合并结点进行合并,生成合并结点,对基因组图进行更新后得到压缩图;
编码模块:用于基于四位二进制标记位对压缩图中的合并结点和非合并结点中的碱基进行编码,得到编码后的压缩图;基于四位二进制标记位对测序序列中的每个碱基进行编码,得到编码后的测序序列;
序列到图比对模块:用于对编码后的压缩图进行拓扑排序,与编码后的测序序列进行偏序比对,基于比对结果、预先设定的匹配罚分和不匹配罚分引入碱基置换罚分,基于引入的碱基置换罚分分别得到线性罚分、仿射罚分和双仿射罚分模式下的比对分数,基于比对分数得到编码后的压缩图拓扑排序后最末端的结点和编码后的测序序列中最末端碱基的比对分数为最佳比对分数;
所述引入的碱基置换罚分,计算公式为:
,
其中, 为编码后的压缩图拓扑排序后第i位的结点 和编码后的测序序列中第j个碱基 的碱基置换罚分, 为用户输入的匹配罚分, 为用户输入的不匹配罚分, 为位与函数;
回溯模块:基于所述比对分数构建二维方向的回溯矩阵,基于最佳比对分数位置确定回溯起点,基于回溯起点依次在其相邻位置中选择其比对分数来源方向作为回溯方向进行回溯,得到最佳比对路径,基于最佳比对路径进行序列到图的比对。
6.一种基于图压缩的序列到图比对装置,其特征在于,包括处理器和存储器,其中,所述处理器执行所述存储器中保存的计算机程序时实现如权利要求1‑4中任一项所述的基于图压缩的序列到图比对方法。
7.一种计算机可读存储介质,其特征在于,用于存储计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1‑4中任一项所述的基于图压缩的序列到图比对方法。