KR102418617B1 - 염기 비율과 연속적 발생을 제한하는 dna 저장 부호화 방법, 프로그램 및 장치 - Google Patents

염기 비율과 연속적 발생을 제한하는 dna 저장 부호화 방법, 프로그램 및 장치 Download PDF

Info

Publication number
KR102418617B1
KR102418617B1 KR1020200132149A KR20200132149A KR102418617B1 KR 102418617 B1 KR102418617 B1 KR 102418617B1 KR 1020200132149 A KR1020200132149 A KR 1020200132149A KR 20200132149 A KR20200132149 A KR 20200132149A KR 102418617 B1 KR102418617 B1 KR 102418617B1
Authority
KR
South Korea
Prior art keywords
dna
guanine
cytosine
ratio
randomization
Prior art date
Application number
KR1020200132149A
Other languages
English (en)
Other versions
KR20220048831A (ko
Inventor
박성준
이용우
노종선
박호성
Original Assignee
서울대학교산학협력단
전남대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 서울대학교산학협력단, 전남대학교산학협력단 filed Critical 서울대학교산학협력단
Priority to KR1020200132149A priority Critical patent/KR102418617B1/ko
Priority to PCT/KR2021/014134 priority patent/WO2022080863A1/ko
Publication of KR20220048831A publication Critical patent/KR20220048831A/ko
Application granted granted Critical
Publication of KR102418617B1 publication Critical patent/KR102418617B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B30/00ICT specially adapted for sequence analysis involving nucleotides or amino acids
    • G16B30/10Sequence alignment; Homology search
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B99/00Subject matter not provided for in other groups of this subclass

Abstract

본 발명은 DNA 저장 부호화 방법에 관한 것으로, 가공되지 않은 입력 데이터를 압축하는 소스 코딩 단계, 구아닌과 사이토신의 비율을 50 ± α % 이내가 되도록 DNA 염기 서열을 랜덤화 하는 단계, 같은 염기의 반복 최대 회수가 m 이하가 되도록 랜덤화 된 DNA 염기서열 데이터를 치환하는 단계 및 치환된 DNA 염기서열 데이터의 구아닌과 사이토신의 비율이 50 ± α % 이내를 만족하는지 검증하는 단계를 포함한다.
"본 발명은 삼성전자 미래기술육성센터의 지원을 받아 수행된 연구임 (과제번호 SRFC-IT1802-09)"

Description

염기 비율과 연속적 발생을 제한하는 DNA 저장 부호화 방법, 프로그램 및 장치 {DNA storage encoding methods, programs and devices that limit base ratio and successive occurrences}
본 발명은 DNA 저장 부호화 방법, 프로그램 및 장치에 관한 것으로, 특히 염기 비율과 연속적 발생을 제한하는 DNA 저장 부호화 방법, 프로그램 및 장치 에 관한 것이다.
현대 사회에서는 스마트 기기들의 보급, SNS 사용량의 증가 및 IoT 시스템의 보급 등으로 인해 디지털 데이터가 기하급수적으로 증가하고 있다. 2025년에는 175 제타바이트의 데이터가 생성된다고 추측되고 있다.
이와 같이, 많은 양의 데이터는 일반적으로 하드웨어 장치 자체, 외장 하드 및 웹 하드 등 많은 저장 장치를 이용하여 곳곳에 데이터를 보관하고 있다. 급속도로 증가하는 데이터를 처리하고 저장하기 위해서는 새로운 저장 장치의 필요성이 요구된다. 새로운 저장 장치는 높은 저장 밀도, 긴 저장 시간, 낮은 에너지 비용을 필요로 한다. 하지만 기존의 저장 장치인 자기 테이프, 하드 디스크 드라이브, SDD는 새로운 저장 장치에 적합하지 않다.
이에 따라 DNA 스토리지 기술이 새로운 저장 장치의 매개체로 떠오르고 있다. DNA 스토리지 기술이란, DNA의 염기를 0과 1로 치환하여 디지털 데이터를 저장하는 방식으로서, DNA에 유전이 아닌 디지털 데이터를 저장한다면 1g의 DNA에 4550억 GB 정도의 데이터를 저장할 수 있게 되며, 이는 1TB 하드디스크보다 215,000배 더 많은 데이터 저장 능력인 것이다. 따라서 최근, 각 디지털 데이터를 DNA 데이터로 인코딩 하는 방법과 DNA 데이터를 디지털 데이터로 복호화하는 디코딩 방법에 대한 연구가 계속해서 이루어지고 있다.
한편 DNA 염기서열 판독은 핵산의 염기서열(DNA의 뉴클레오타이드의 순서)을 결정하는 과정이다. DNA 염기서열 판독은 아데닌, 구아닌, 사이토신, 티아닌 4가지의 순서를 결정하는 어떠한 방법이나 기술을 포함한다. 빠른 DNA 시퀀싱 방법의 출현은 생물학적, 의학적 연구의 개발을 크게 가속화했다.
DNA 염기서열은 기초적인 생물학적 연구와, 의학적 진단, 생명공학, 법의생물학, 바이러스학, 계통분류학 등의 여러 분야에서 필수적인 개념이 되었다.
정상적인 DNA 염기서열과 변형된 DNA 염기서열의 비교를 통해 다양한 암을 포함한 여러 질병을 진단하고, 항체 목록을 특징짓고, 환자를 치료하는데 지표가 될 수 있다.
이에 따라, DNA 시퀀스를 빠르게 하는 기술이 개발된다면, 더 빠르고 개별적인 의학적 치료를 운영하고, 보다 많은 유기체들을 식별하고 분류할 수 있게 한다.
이러한 DNA 시퀀스를 통한 DNA 저장 장치의 구현에 있어서 오류율을 제어하는 것이 최근의 과제이다. DNA 저장 장치의 오류율은 DNA의 생화학적 구조에 영향을 많이 받는 것으로 알려져있다. DNA를 합성하고 이를 저장하고 읽는 과정에서 두 가지 중요한 제한이 있다. 첫번째는 DNA 내에서 구아닌과 사이토신 의 비율이 50%에 가까울 때이고, 두번째는같은 염기서열이 연속적으로 여러 개 반복되는 경우로 해당 조건에서 DNA 합성 오류가 많이 생기는 문제점이 있다. 따라서 이러한 오류 요소들을 제한하면서, 데이터를 가장 효율적으로 DNA로 치환하는 방법들이 연구되고 있다.
대한민국 공개특허공보 제 10-2012-0120448호
상술한 바와 같은 문제점을 해결하기 위한 본 발명은 DNA 합성에 있어서,
구아닌과 사이토신의 비율을 타겟 범위내로 맞추고, 연속적으로 같은 염기가 생성되는 총 개수를 타겟 기준 이하가 되도록 직접 설계함으로써 에러율을 저감할 수 있는 DNA 저장 부호화 방법, 프로그램 및 장치를 제공하고자 한다.
본 발명이 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상술한 과제를 해결하기 위한 본 발명의 일 실시예에 따른 DNA 저장 부호화 방법은,
가공되지 않은 입력 데이터를 압축하는 소스 코딩 단계, 구아닌과 사이토신의 비율을 50 ± α % 이내가 되도록 DNA 염기 서열을 랜덤화 하는 단계, 같은 염기의 반복 최대 회수가 m 이하가 되도록 랜덤화 된 DNA 염기서열 데이터를 치환하는 단계, 및 치환된 DNA 염기서열 데이터의 구아닌과 사이토신의 비율이 50 ± α % 이내를 만족하는지 검증하는 단계를 포함한다.
상기 검증하는 단계 이후에,
치환된 DNA 염기서열 데이터의 구아닌과 사이토신의 비율이 50 ± α %를 만족하지 못하는 경우, 다시 랜덤화 단계로 돌아가 부호화를 재수행하는 단계를 포함할 수 있다.
상기 소스 코딩 단계는, 입력 데이터를 2진법화 시킨 후, 하나의 부호 정보에 k 비트가 대응되도록 소스 코딩을 수행하는 단계이다.
상기 소스 코딩 단계는, 허프만 부호를 이용하여 소스 코딩을 수행하는 단계이다.
상기 소스 코딩 단계는 하기의 수학식을 만족하는 단계이다.
[수학식 1]
Figure 112020108087965-pat00001
여기에서
Figure 112020108087965-pat00002
는 압축 효율을 나타내고,
Figure 112020108087965-pat00003
은 입력 데이터를 2진법화한 길이를 나타내고,
Figure 112020108087965-pat00004
는 소스 코딩 후의 입력 데이터의 길이를 나타낸다.
상기 랜덤화 하는 단계는 하기의 수학식을 만족하는 반복 횟수 i만큼 반복되는 단계이다.
[수학식 2]
Figure 112020108087965-pat00005
여기에서,
Figure 112020108087965-pat00006
는, i번의 반복 횟수이내에 구아닌과 사이토신의 비율이 맞을 확률을,
Figure 112020108087965-pat00007
는 구아닌과 사이토신의 비율 범위를 나타내고,
Figure 112020108087965-pat00008
는 구아닌 및 사이토신의 염기 비율을 나타내고,
Figure 112020108087965-pat00009
는 확률을 나타낸다.
상기 반복 횟수 i는 다음의 수학식을 만족한다.
[수학식 3]
Figure 112020108087965-pat00010
여기에서, i는 랜덤화 반복 회수를 나타내고,
Figure 112020108087965-pat00011
는 구아닌과 사이토신의 비율 범위를 나타내고,
Figure 112020108087965-pat00012
는 확률을 나타내고,
Figure 112020108087965-pat00013
은 DNA의 길이를 나타낸다.
상기 소스 코딩 단계는, 입력 데이터를 2진법화 시키는 단계이고, 상기 염기서열 데이터를 치환하는 단계는, 2진법 데이터를 바탕으로 랜덤화된 데이터를
Figure 112020108087965-pat00014
진 데이터로 치환하는 단계이다.
상기 염기서열 데이터를 치환하는 단계는, 압축률이
Figure 112020108087965-pat00015
을 만족하는 단계이다.
상기 검증하는 단계는, 데이터의 선택적 복호화를 위해, 복호화에서 제외되어야 하는 프라이머를 포함하는 염기 서열이 치환된 데이터에 포함된 경우 다시 랜덤화 단계로 돌아가 부호화를 재수행하는 단계이다.
또한, 상술한 과제를 해결하기 위한 본 발명의 다른 실시예에 따른 DNA 저장 부호화 프로그램은, 컴퓨터인 하드웨어와 결합되어, 상기 방법 중 어느 하나의 방법을 실행하기 위해 매체에 저장된다.
상술한 과제를 해결하기 위한 본 발명의 다른 실시예에 따른 DNA 저장 장치는,
가공되지 않은 입력 데이터를 압축하는 소스 코딩부, 구아닌과 사이토신의 비율을 50 ± α % 이내가 되도록 DNA 염기 서열을 랜덤화하는 랜덤화부, 같은 염기의 반복 최대 회수가 m 이하가 되도록 랜덤화 된 DNA 염기서열 데이터를 치환하는 치환부 및 치환된 DNA 염기서열 데이터의 구아닌과 사이토신의 비율이 50 ± α % 이내를 만족하는지 검증하는 검증부를 포함한다.
상기 검증부는 치환된 DNA 염기서열 데이터의 구아닌과 사이토신의 비율이 50 ± α %를 만족하지 못하는 경우, 다시 랜덤화 단계로 돌아가 부호화를 재수행하는 DNA 저장 장치.
상기 소스 코딩부는, 입력 데이터를 2진법화 시킨 후, 하나의 부호 정보에 k 비트가 대응되도록 소스 코딩을 수행한다.
상기 소스 코딩부는, 허프만 부호를 이용하여 소스 코딩을 수행한다.
상기 소스 코딩부는 하기의 수학식을 만족하도록 입력 데이터를 압축한다.
[수학식 1]
Figure 112020108087965-pat00016
여기에서
Figure 112020108087965-pat00017
는 압축 효율을 나타내고,
Figure 112020108087965-pat00018
은 입력 데이터를 2진법화한 길이를 나타내고,
Figure 112020108087965-pat00019
는 소스 코딩 후의 입력 데이터의 길이를 나타낸다.
상기 랜덤화부는 하기의 수학식을 만족하는 반복 횟수 i만큼 랜덤을 반복 수행한다.
[수학식 2]
Figure 112020108087965-pat00020
여기에서,
Figure 112020108087965-pat00021
는, i번의 반복 횟수이내에 구아닌과 사이토신의 비율이 맞을 확률을,
Figure 112020108087965-pat00022
는 구아닌과 사이토신의 비율 범위를 나타내고,
Figure 112020108087965-pat00023
는 구아닌 및 사이토신의 염기 비율을 나타내고,
Figure 112020108087965-pat00024
는 확률을 나타낸다.
상기 반복 횟수 i는 다음의 수학식을 만족한다.
[수학식 3]
Figure 112020108087965-pat00025
여기에서, i는 랜덤화 반복 회수를 나타내고,
Figure 112020108087965-pat00026
는 구아닌과 사이토신의 비율 범위를 나타내고,
Figure 112020108087965-pat00027
는 확률을 나타내고,
Figure 112020108087965-pat00028
은 DNA의 길이를 나타낸다.
상기 소스 코딩부는, 입력 데이터를 2진법화 시키고, 상기 치환부는, 2진법 데이터를 바탕으로 랜덤화된 데이터를
Figure 112020108087965-pat00029
진 데이터로 치환한다.
상기 치환부는, 압축률이
Figure 112020108087965-pat00030
되도록 치환을 수행한다.
이 외에도, 본 발명을 구현하기 위한 다른 방법, 다른 시스템 및 상기 방법을 실행하기 위한 컴퓨터 프로그램을 기록하는 컴퓨터 판독 가능한 기록 매체가 더 제공될 수 있다.
상기와 같은 본 발명에 따르면,
구아닌과 사이토신의 비율을 타겟 범위내로 맞추고, 연속적으로 같은 염기가 생성되는 총 개수를 타겟 기준 이하가 되도록 직접 설계함으로써 에러율을 저감할 수 있다.
본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 일 실시예에 따른 염기 비율과 연속적 발생을 제한하는 DNA 저장 부호화 방법을 설명하기 위한 흐름도이다.
도 2는 본 발명의 다른 실시예에 따른 염기 비율과 연속적 발생을 제한하는 DNA 저장 부호화 방법을 설명하기 위한 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 염기 비율과 연속적 발생을 제한하는 DNA 저장 장치의 구성을 나타내는 도면이다.
도 4는 본 발명의 일 실시예에 따른 염기 비율과 연속적 발생을 제한하는 DNA 저장 부호화 프로그램이 수행하는 알고리즘을 나타내는 도면이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 제한되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야의 통상의 기술자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 명세서 전체에 걸쳐 동일한 도면 부호는 동일한 구성 요소를 지칭하며, "및/또는"은 언급된 구성요소들의 각각 및 하나 이상의 모든 조합을 포함한다. 비록 "제1", "제2" 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다.
설명에 앞서 본 명세서에서 사용하는 용어의 의미를 간략히 설명한다. 그렇지만 용어의 설명은 본 명세서의 이해를 돕기 위한 것이므로, 명시적으로 본 발명을 한정하는 사항으로 기재하지 않은 경우에 본 발명의 기술적 사상을 한정하는 의미로 사용하는 것이 아님을 주의해야 한다.
도 1은 본 발명의 일 실시예에 따른 염기 비율과 연속적 발생을 제한하는 DNA 저장 부호화 방법을 설명하기 위한 흐름도이다.
도 1을 참조하면, 본 발명에 따른 DNA 저장 부호화 방법은 가공되지 않은 입력 데이터를 압축하는 소스 코딩 단계(S100), 구아닌과 사이토신의 비율을 50 ± α % 이내가 되도록 DNA 염기 서열을 랜덤화 하는 단계(S200), 같은 염기의 반복 최대 회수가 m 이하가 되도록 랜덤화 된 DNA 염기서열 데이터를 치환하는 단계(S300), 및 치환된 DNA 염기서열 데이터의 구아닌과 사이토신의 비율이 50 ± α % 이내를 만족하는지 검증하는 단계(S400)를 포함한다.
소스 코딩 단계(S100)는, 가공되지 않은 입력 데이터를 압축하는 단계로, 입력 데이터를 2진법화 시킨 후, 하나의 부호 정보에 k 비트가 대응되도록 소스 코딩을 수행할 수 있다. 이때, k 값이 클수록 하나의 부호에 많은 비트가 담기는 것으로 압축률이 높다. 본 소스 코딩 단계(S100)는, 허프만 부호(Huffman Coding)를 이용하여 소스 코딩을 수행할 수 있다.
허프만 부호화(Huffman coding)는 무손실 압축에 쓰이는 엔트로피 부호화의 일종으로, 데이터 문자의 등장 빈도에 따라서 다른 길이의 부호를 사용하는 알고리즘이다. 허프만 부호화는 문자들의 빈도로부터 접두 부호(어떤 한 문자에 대한 부호가 다른 부호들의 접두어가 되지 않는 부호)를 만들어 내는 알고리즘으로, 적게 나오는 문자일수록 더 긴 부호를 쓰고 많이 나올수록 더 짧은 부호를 쓴다. 허프만 부호화는 주어진 빈도에 대해서 최적의 접두 부호를 만들어 내며, 이 과정은 빈도가 정렬되어 있을 경우 O(n)만에 가능하다. 각 문자들의 빈도가 2의 거듭제곱 꼴이거나 모두 같을 경우 이 접두 부호는 간단한 이진 블록 부호와 동일하다.
소스 코딩 단계(S100)는 하기의 수학식을 만족하는 단계이다.
Figure 112020108087965-pat00031
여기에서
Figure 112020108087965-pat00032
는 압축 효율을 나타내고,
Figure 112020108087965-pat00033
은 입력 데이터를 2진법화한 길이를 나타내고,
Figure 112020108087965-pat00034
는 소스 코딩 후의 입력 데이터의 길이를 나타낸다.
DNA 염기 서열을 랜덤화 하는 단계(S200)는 구아닌과 사이토신의 비율을 50 ± α % 이내가 되도록 수행한다.
본 랜덤화 하는 단계(S200)는 하기의 수학식을 만족하는 반복 횟수 i만큼 반복되는 단계이다.
Figure 112020108087965-pat00035
여기에서,
Figure 112020108087965-pat00036
는, i번의 반복 횟수이내에 구아닌과 사이토신의 비율이 맞을 확률을,
Figure 112020108087965-pat00037
는 구아닌과 사이토신의 비율 범위를 나타내고,
Figure 112020108087965-pat00038
는 구아닌 및 사이토신의 염기 비율을 나타내고,
Figure 112020108087965-pat00039
는 확률을 나타낸다.
상기 반복 횟수 i는 다음의 수학식을 만족한다.
Figure 112020108087965-pat00040
여기에서, i는 랜덤화 반복 회수를 나타내고,
Figure 112020108087965-pat00041
는 구아닌과 사이토신의 비율 범위를 나타내고,
Figure 112020108087965-pat00042
는 확률을 나타내고,
Figure 112020108087965-pat00043
은 DNA의 길이를 나타낸다.
상기 수학식 2 및 3을 만족하는 i를 구함으로써 원하는 DNA 염기서열을 얻기위한 최소의 랜덤화 과정 반복 회수를 획득할 수 있다.
본 조건을 통해 일반적인 DNA 저장 장치에서 만족하는 랜덤화 반복회수를 예시적으로 구해보겠다.
일반적인 DNA 저장 장치는
Figure 112020108087965-pat00044
의 범위를 가지며, 염기서열 길이 n은 1000 이상을 만족한다. 이러한 조건을 바탕으로
Figure 112020108087965-pat00045
,
Figure 112020108087965-pat00046
일때, i=4로 위의 식을 만족하는 확률
Figure 112020108087965-pat00047
을 구한다면,
Figure 112020108087965-pat00048
에 불과하므로, 확률
Figure 112020108087965-pat00049
는 1에 근접하므로 4번의 반복 이내에는 일반적인 DNA 저장 장치의 조건을 만족한다고 볼 수 있다. 이러한 수학식 2 와 수학식 2을 타겟 DNA 조건에 따라 설정하고 만족하는 i의 최소값을 연산함으로써 데이터가 충분히 랜덤화 되고, 구아닌과 사이토신의 비율이 의도하는 구간에 포함되는 제한 조건을 만족시킬 수 있다.
본 소스 코딩 단계(S300)는, 입력 데이터를 2진법화 시킨 후, 전술한
Figure 112020108087965-pat00050
진법 데이터로 치환하는 단계이다.
같은 염기의 반복 최대 회수가 m 이하가 되도록 랜덤화 된 DNA 염기서열 데이터를 치환하는 단계(S300)는 m 진법표를 이용하여 같은 염기가 m번 초과로 반복되는 것을 방지해 준다.
본 단계(S300)를 통해 압축률이 늘어난다. 구체적으로는, 하나의 염기서열에서 같은 염기가 반복되는 최대 횟수 m이라 할때, m의 크기에 따라 압축률이 달라진다.
길이가 m인 DNA 염기서열을 상정할 때, 서열은 아데닌(A), 사이토신(C), 구아닌(G), 티민(T) 4가지 중 하나로 이루어져 있으므로, 가능한 염기서열의 경우의 수는
Figure 112020108087965-pat00051
에 해당한다. 이 중, 같은 염기가 최대 m-1까지만 반복될 수 있고, m개까지는 반복되지 않는 서열의 개수는,
Figure 112020108087965-pat00052
개이다. 이 개수는 서로 인접한 두 염기서열의 위치를 i, j(j=i+1)이라 할 때,
Figure 112020108087965-pat00053
개의 염기서열 중 i와 j의 염기가 서로 상이한 총 경우의 수가
Figure 112020108087965-pat00054
에 해당한다.
이를 바탕으로, 길이 m까지 반복되지 않는 경우의 수를 0부터
Figure 112020108087965-pat00055
까지 각기 대응될 수 있도록
Figure 112020108087965-pat00056
진법을 도입한다. 그리고 각각의 진법의 수는 개의 DNA 염기서열로 치환이 되고, 압축률은
Figure 112020108087965-pat00057
을 만족한다.
치환된 DNA 염기서열 데이터의 구아닌과 사이토신의 비율이 50 ± α % 이내를 만족하는지 검증하는 단계(S400)는, 치환 과정에서 최종적 DNA 염기서열이 다시 구아닌과 사이토신 비율이 타겟 구간에서 벗어나는 지 여부를 검증한다.
이하 본 발명에 따른 실시예에 따른 DNA 저장 부호화 방법의 실험 결과를 통한 발명의 효과를 후술한다.
참조 제1
비교예
제2
비교예
제3
비교예
제4
비교예
제5 비교예 본 발명
텍스트 256X256
이미지
512X512
이미지
텍스트 256X256이미지 512X512
이미지
압축률 1.90 1.92 1.98 2.14 2.41 2.09 2.31 4.41 2.64 2.38
표 1을 참조하면, 본 발명에 따른 DNA 저장 부호화 방법을 제1 비교예 내지 제5 비교예에 따른 종래 방법과 비교한 압축률 결과가 도시된다. 제1 비교예는 Song et al에 따른 부호화 방법을, 제2 비교예는 Wang et al에 따른 부호화 방법을, 제3 비교예는 Erlich et al에 따른 부호화 방법을, 제4 비교예는 Dimopoulou et al에 따른 부호화 방법을, 제5 비교예는 Mishraet al에 따른 부호화 방법을 따른다.
실험 결과, 본 발명은 텍스트 파일, 흑백 사진 256*256과 512*512에 대하여 각각 4.41 bit/nt, 2.64 bit/nt, 2.38bit/nt의 압축률을 보였고, 동일 조건에 대해서 수행한 제5 비교예의 2.41 bit/nt, 2.09 bit/nt, 2.31 bit/nt 보다 각각 압축률이 82.98%, 26.31%, 3.03% 우수한 것을 확인할 수 있다.
제1 비교예의 경우 압축률이 1.90 bit/nt, 제2 비교예의 경우 압축률이 1.92 bit/nt, 제3 비교예의 경우 압축률이 1.98 bit/nt, 제4 비교예의 경우 압축률이 2.14 bit/nt로 본 발명에 따른 압축률보다 낮은 것을 확인할 수 있다.
α 텍스트 파일 이미지 파일
256 X 256 512 X 512
0.05 0 0 0
0.03 0 0 0
0.015 1 0 0
0.007 2 0 0
0.001 16 1 1
여기에서, 표 2는 α 에 따른, 입력값 r에 대한 것으로, r = i - 1 을 의미하는바, 표 2는 α의 값이 매우작더라도, 적은 반복으로도 구아닌과 사이토신의 타겟 비율을 용이하게 맞출 수 있음을 의미한다.
Figure 112020108087965-pat00058
텍스트 파일 이미지 파일
Figure 112020108087965-pat00059
Figure 112020108087965-pat00060
256 X 256 512 X 512
Figure 112020108087965-pat00061
Figure 112020108087965-pat00062
Figure 112020108087965-pat00063
Figure 112020108087965-pat00064
2 1 1.830065 1 1.833316 1 1.833325
4 1.220423 2.3229807 1.079224 1.978565 1.017236 1.864931
6 1.130334 2.067511 1.029799 1.887938 1.005295 1.843031
8 1.193128 3.493761 1.188975 2.179738 1.071207 1.963879
10 1.439060 2.634409 1.094070 2.005769 1.046987 1.919467
12 1.802299 3.299663 1.212843 2.223500 1.117525 2.048788
14 1.857820 3.402778 1.206488 2.211850 1.124041 2.060735
16 2.422744 4.414414 1.444013 2.647277 1.301015 2.385187
표 2 및 3을 참조하면, 본 발명에 따른 DNA 저장 부호화 방법은, 텍스트 파일이나 이미지 파일 입력 데이터를 기준으로 원하는
Figure 112020108087965-pat00065
를 맞춤에 있어서 α의 설정이 유연하며 매우 적은 α값(예를 들어, 0.001)에 대해서도 이미지 파일을 기준으로 1번의 반복만으로 만족할 수 있음(예를 들어, i=1)을 확인할 수 있다.
도 2는 본 발명의 다른 실시예에 따른 염기 비율과 연속적 발생을 제한하는 DNA 저장 부호화 방법을 설명하기 위한 흐름도이다.
도 2를 참조하면, 치환 과정에서 최종적 DNA 염기서열이 다시 구아닌과 사이토신 비율이 타겟 구간에서 벗어나는 경우에 다시 랜덤화 단계(S200)로 돌아가 부호화를 재수행함으로써 에러율을 저감한 DNA 부호화가 가능하는 단계(S410) 및 데이터의 선택적 복호화를 위해, 복호화에서 제외되어야 하는 프라이머를 포함하는 염기 서열이 치환된 데이터에 포함된 경우 다시 랜덤화 단계로 돌아가 부호화를 재수행하는 단계(S420)를 포함할 수 있다.
부호화를 재수행함으로써 에러율을 저감한 DNA 부호화가 가능하는 단계(S410)는, 치환 과정에서 최종적 DNA 염기서열이 다시 구아닌과 사이토신 비율이 타겟 구간에서 벗어나는 경우에 다시 랜덤화 단계(S200)로 돌아가 부호화를 재수행함으로써 에러율을 저감한 DNA 부호화가 가능하도록 한다.
복호화에서 제외되어야 하는 프라이머를 포함하는 염기 서열이 치환된 데이터에 포함된 경우 다시 랜덤화 단계로 돌아가 부호화를 재수행하는 단계(S420)는, 데이터의 선택적 복호화를 위해 회피해야 하는 특정 프라이머가 최종 염기서열에 포함되지 않도록 재부호화를 수행한다.
예를들어 DNA 저장 장치의 경우, 하나의 풀에 여러 데이터를 저장할 수 있고, 원하는 데이터만 선택적으로 복호화 하고자 하기 위해서는 별도의 프라이머(primer)가 요구된다. 프라이머는, 각각의 데이터 앞뒤에 붙어있는 염기서열로, 데이터마다 모두 다른 염기서열을 가져야만 원하는 데이터만 선택적으로 복호화할 수 있게 된다.
선택적 복호화가 필요한 경우에 서로 다른 염기서열에 동일한 프라이머가 있을 경우 DNA 복호화 과정에서 큰 오류가 발생할 수 있으므로, 안정성 상승을 위해서는 동일한 프라이머를 가지지 않도록 DNA 부호화를 수행해야 한다.
이러한 경우, 피하고자 하는 염기서열을 추가 검증의 조건으로 선정하고, 최종 염기서열에서 해당 염기서열이 존재한다면 다시 랜덤화 과정으로 돌아가 반복적으로 부호화를 시킴으로써 선택적 부호화, m개 미만의 동일 연속 염기서열 제한, 구아닌 및 사이토신의 타겟 비율 제한을 모두 만족시킬 수 있다.
도 3은 본 발명의 일 실시예에 따른 염기 비율과 연속적 발생을 제한하는 DNA 저장 장치(100)의 구성을 나타내는 도면이다.
DNA 저장 장치(100)는, 가공되지 않은 입력 데이터를 압축하는 소스 코딩부(110), 구아닌과 사이토신의 비율을 50 ± α % 이내가 되도록 DNA 염기 서열을 랜덤화하는 랜덤화부(120), 같은 염기의 반복 최대 회수가 m 이하가 되도록 랜덤화 된 DNA 염기서열 데이터를 치환하는 치환부(130) 및 치환된 DNA 염기서열 데이터의 구아닌과 사이토신의 비율이 50 ± α % 이내를 만족하는지 검증하는 검증부(140)를 포함한다.
이상으로 설명한 본 발명의 실시예에 따른 DNA 저장 장치(100)는 도 1 내지 도 2를 통해 설명한 DNA 저장 부호화 방법과 발명의 카테고리만 다를 뿐, 동일한 내용이므로 중복되는 설명, 예시는 생략하도록 한다.
도 4는 본 발명의 일 실시예에 따른 염기 비율과 연속적 발생을 제한하는 DNA 저장 부호화 프로그램이 수행하는 알고리즘을 나타내는 도면이다.
이상에서 전술한 본 발명의 일 실시예에 따른 방법은, 하드웨어인 서버와 결합되어 실행되기 위해 프로그램(또는 어플리케이션)으로 구현되어 매체에 저장될 수 있다.
상기 전술한 프로그램은, 상기 컴퓨터가 프로그램을 읽어 들여 프로그램으로 구현된 상기 방법들을 실행시키기 위하여, 상기 컴퓨터의 프로세서(CPU)가 상기 컴퓨터의 장치 인터페이스를 통해 읽힐 수 있는 C, C++, JAVA, 기계어 등의 컴퓨터 언어로 코드화된 코드(Code)를 포함할 수 있다. 이러한 코드는 상기 방법들을 실행하는 필요한 기능들을 정의한 함수 등과 관련된 기능적인 코드(Functional Code)를 포함할 수 있고, 상기 기능들을 상기 컴퓨터의 프로세서가 소정의 절차대로 실행시키는데 필요한 실행 절차 관련 제어 코드를 포함할 수 있다. 또한, 이러한 코드는 상기 기능들을 상기 컴퓨터의 프로세서가 실행시키는데 필요한 추가 정보나 미디어가 상기 컴퓨터의 내부 또는 외부 메모리의 어느 위치(주소 번지)에서 참조되어야 하는지에 대한 메모리 참조관련 코드를 더 포함할 수 있다. 또한, 상기 컴퓨터의 프로세서가 상기 기능들을 실행시키기 위하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 통신이 필요한 경우, 코드는 상기 컴퓨터의 통신 모듈을 이용하여 원격에 있는 어떠한 다른 컴퓨터나 서버 등과 어떻게 통신해야 하는지, 통신 시 어떠한 정보나 미디어를 송수신해야 하는지 등에 대한 통신 관련 코드를 더 포함할 수 있다.
상기 저장되는 매체는, 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로는, 상기 저장되는 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있지만, 이에 제한되지 않는다. 즉, 상기 프로그램은 상기 컴퓨터가 접속할 수 있는 다양한 서버 상의 다양한 기록매체 또는 사용자의 상기 컴퓨터상의 다양한 기록매체에 저장될 수 있다. 또한, 상기 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장될 수 있다.
본 발명의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.
이상, 첨부된 도면을 참조로 하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야의 통상의 기술자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며, 제한적이 아닌 것으로 이해해야만 한다.
100: DNA 저장 장치
110 : 소스 코딩부 120 : 랜덤화부
130 : 치환부 140 : 검증부

Claims (20)

  1. 가공되지 않은 입력 데이터에서 k 비트를 하나의 부호로 정하여 2진법으로 압축하는 소스 코딩 단계;
    구아닌과 사이토신의 비율을 50 ± α % 이내가 되도록 DNA 염기 서열을 랜덤화 하는 단계-상기 α는 상기 구아닌과 사이토신의 비율 범위를 나타냄-;
    상기 2진법 데이터를 바탕으로 같은 염기의 반복 최대 회수가 m 이하가 되도록 상기 랜덤화 된 DNA 염기서열 데이터를
    Figure 112021148079208-pat00100
    진 데이터로 치환하는 단계; 및
    상기 치환된 DNA 염기서열 데이터의 구아닌과 사이토신의 비율이 50 ± α % 이내를 만족하는지 검증하는 단계;를 포함하는 DNA 저장 부호화 방법.
  2. 제 1 항에 있어서,
    상기 검증하는 단계 이후에,
    상기 치환된 DNA 염기서열 데이터의 구아닌과 사이토신의 비율이 50 ± α %를 만족하지 못하는 경우, 다시 랜덤화 단계로 돌아가 부호화를 재수행하는 단계;를 더 포함하는 DNA 저장 부호화 방법.
  3. 삭제
  4. 제 1 항에 있어서,
    상기 소스 코딩 단계는,
    허프만 부호를 이용하여 소스 코딩을 수행하는 단계인 DNA 저장 부호화 방법.
  5. 제 1 항에 있어서,
    상기 소스 코딩 단계는 하기의 수학식을 만족하도록 상기 입력 데이터를 압축하는 단계인 DNA 저장 부호화 방법.
    [수학식 1]
    Figure 112021148079208-pat00066

    여기에서
    Figure 112021148079208-pat00067
    는 압축 효율을 나타내고,
    Figure 112021148079208-pat00068
    은 입력 데이터를 2진법화한 길이를 나타내고,
    Figure 112021148079208-pat00069
    는 소스 코딩 후의 입력 데이터의 길이를 나타낸다.
  6. 제 1 항에 있어서,
    상기 랜덤화 하는 단계는, 하기의 수학식을 만족하는 랜덤화 반복 횟수 i만큼 상기 랜덤화를 반복 수행하는 단계인 DNA 저장 부호화 방법.
    [수학식 2]
    Figure 112021148079208-pat00070

    여기에서,
    Figure 112021148079208-pat00071
    는, i번의 랜덤화 반복 횟수 이내에 구아닌과 사이토신의 비율이 맞을 확률을,
    Figure 112021148079208-pat00072
    는 구아닌과 사이토신의 비율 범위를 나타내고,
    Figure 112021148079208-pat00073
    는 구아닌 및 사이토신의 염기 비율을 나타내고,
    Figure 112021148079208-pat00074
    는 상기 랜덤화를 반복 수행해도 상기 구아닌과 사이토신이 상기 비율 범위를 벗어날 확률을 나타낸다.
  7. 제 6 항에 있어서,
    상기 랜덤화 반복 횟수 i는 다음의 수학식을 만족하는 DNA 저장 부호화 방법.
    [수학식 3]
    Figure 112021148079208-pat00075

    여기에서, i는 랜덤화 반복 횟수를 나타내고,
    Figure 112021148079208-pat00076
    는 구아닌과 사이토신의 비율 범위를 나타내고,
    Figure 112021148079208-pat00077
    는 상기 랜덤화를 반복 수행해도 상기 구아닌과 사이토신이 상기 비율 범위를 벗어날 확률을 나타내고,
    Figure 112021148079208-pat00078
    은 DNA의 길이를 나타낸다.
  8. 삭제
  9. 제 1 항에 있어서,
    상기 염기서열 데이터를 치환하는 단계는, 압축률이
    Figure 112020108087965-pat00080
    을 만족하는 단계인 DNA 저장 부호화 방법.
  10. 제 1 항에 있어서,
    상기 검증하는 단계는, 데이터의 선택적 복호화를 위해, 복호화에서 제외되어야 하는 프라이머를 포함하는 염기 서열이 치환된 데이터에 포함된 경우 다시 랜덤화 단계로 돌아가 부호화를 재수행하는 것인 DNA 저장 부호화 방법.
  11. 컴퓨터인 하드웨어와 결합되어, 제1항, 제2항, 제4항 내지 제7항, 제9항 및 10항 중 어느 한 항의 방법을 실행하기 위해 컴퓨터 판독 가능 기록매체에 저장된, DNA 저장 부호화 프로그램.
  12. 가공되지 않은 입력 데이터에서 k 비트를 하나의 부호로 정하여 2진법으로 압축하는 소스 코딩부;
    구아닌과 사이토신의 비율을 50 ± α % 이내가 되도록 DNA 염기 서열을 랜덤화하는 랜덤화부-상기 α는 상기 구아닌과 사이토신의 비율 범위를 나타냄-;
    상기 2진법 데이터를 바탕으로 같은 염기의 반복 최대 횟수가 m 이하가 되도록 상기 랜덤화 된 DNA 염기서열 데이터를
    Figure 112021148079208-pat00101
    진 데이터로 치환하는 치환부; 및
    상기 치환된 DNA 염기서열 데이터의 구아닌과 사이토신의 비율이 50 ± α % 이내를 만족하는지 검증하는 검증부;를 포함하는 DNA 저장 장치.
  13. 제 12 항에 있어서,
    상기 검증부는, 상기 치환된 DNA 염기서열 데이터의 구아닌과 사이토신의 비율이 50 ± α %를 만족하지 못하는 경우, 다시 랜덤화 단계로 돌아가 부호화를 재수행하는 DNA 저장 장치.
  14. 삭제
  15. 제 12 항에 있어서,
    상기 소스 코딩부는,
    허프만 부호를 이용하여 소스 코딩을 수행하는 DNA 저장 장치.
  16. 제 12 항에 있어서,
    상기 소스 코딩부는, 하기의 수학식을 만족하도록 상기 입력 데이터를 압축하는 DNA 저장 장치.
    [수학식 1]
    Figure 112021148079208-pat00081

    여기에서
    Figure 112021148079208-pat00082
    는 압축 효율을 나타내고,
    Figure 112021148079208-pat00083
    은 입력 데이터를 2진법화한 길이를 나타내고,
    Figure 112021148079208-pat00084
    는 소스 코딩 후의 입력 데이터의 길이를 나타낸다.
  17. 제 12 항에 있어서,
    상기 랜덤화부는, 하기의 수학식을 만족하는 랜덤화 반복 횟수 i만큼 상기 랜덤화를 반복 수행하는 DNA 저장 장치.
    [수학식 2]
    Figure 112021148079208-pat00085

    여기에서,
    Figure 112021148079208-pat00086
    는, i번의 랜덤화 반복 횟수 이내에 구아닌과 사이토신의 비율이 맞을 확률을,
    Figure 112021148079208-pat00087
    는 구아닌과 사이토신의 비율 범위를 나타내고,
    Figure 112021148079208-pat00088
    는 구아닌 및 사이토신의 염기 비율을 나타내고,
    Figure 112021148079208-pat00089
    는 상기 랜덤화를 반복 수행해도 상기 구아닌과 사이토신이 상기 비율 범위를 벗어날 확률을 나타낸다.
  18. 제 17 항에 있어서,
    상기 랜덤화 반복 횟수 i는 다음의 수학식을 만족하는 DNA 저장 장치.
    [수학식 3]
    Figure 112021148079208-pat00090

    여기에서, i는 랜덤화 반복 횟수를 나타내고,
    Figure 112021148079208-pat00091
    는 구아닌과 사이토신의 비율 범위를 나타내고,
    Figure 112021148079208-pat00092
    는 상기 랜덤화를 반복 수행해도 상기 구아닌과 사이토신이 상기 비율 범위를 벗어날 확률을 나타내고,
    Figure 112021148079208-pat00093
    은 DNA의 길이를 나타낸다.
  19. 삭제
  20. 제 12 항에 있어서,
    상기 치환부는, 압축률이
    Figure 112020108087965-pat00095
    되도록 치환을 수행하는 DNA 저장 장치.
KR1020200132149A 2020-10-13 2020-10-13 염기 비율과 연속적 발생을 제한하는 dna 저장 부호화 방법, 프로그램 및 장치 KR102418617B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020200132149A KR102418617B1 (ko) 2020-10-13 2020-10-13 염기 비율과 연속적 발생을 제한하는 dna 저장 부호화 방법, 프로그램 및 장치
PCT/KR2021/014134 WO2022080863A1 (ko) 2020-10-13 2021-10-13 염기 비율과 연속적 발생을 제한하는 dna 저장 부호화 방법, 프로그램 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200132149A KR102418617B1 (ko) 2020-10-13 2020-10-13 염기 비율과 연속적 발생을 제한하는 dna 저장 부호화 방법, 프로그램 및 장치

Publications (2)

Publication Number Publication Date
KR20220048831A KR20220048831A (ko) 2022-04-20
KR102418617B1 true KR102418617B1 (ko) 2022-07-07

Family

ID=81208480

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200132149A KR102418617B1 (ko) 2020-10-13 2020-10-13 염기 비율과 연속적 발생을 제한하는 dna 저장 부호화 방법, 프로그램 및 장치

Country Status (2)

Country Link
KR (1) KR102418617B1 (ko)
WO (1) WO2022080863A1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102138864B1 (ko) 2018-04-11 2020-07-28 경희대학교 산학협력단 Dna 디지털 데이터 저장 장치 및 저장 방법, 그리고 디코딩 방법

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130124413A (ko) 2007-10-26 2013-11-13 퀄컴 인코포레이티드 최적화된 비터비 디코더 및 gnss 수신기
CN104520864B (zh) * 2012-06-01 2017-09-05 欧洲分子生物学实验室 Dna中数字信息的高容量存储
CA3039689A1 (en) * 2016-10-11 2018-04-19 Genomsys Sa Method and system for storing and accessing bioinformatics data
KR102082843B1 (ko) * 2018-02-13 2020-02-28 동명대학교산학협력단 예측오차 확장과 히스토그램 쉬프팅 기반의 가역성 dna 정보은닉 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102138864B1 (ko) 2018-04-11 2020-07-28 경희대학교 산학협력단 Dna 디지털 데이터 저장 장치 및 저장 방법, 그리고 디코딩 방법

Also Published As

Publication number Publication date
WO2022080863A1 (ko) 2022-04-21
KR20220048831A (ko) 2022-04-20

Similar Documents

Publication Publication Date Title
JP4224022B2 (ja) イナクティブ化によって連鎖反応符号を復号化するためのシステムおよび処理
US20180089369A1 (en) Systems and methods for sequence encoding, storage, and compression
CN112582030B (zh) 一种基于dna存储介质的文本存储方法
CN112100982B (zh) Dna存储方法、系统和存储介质
Li et al. DNA-COMPACT: DNA COM pression Based on a P attern-A ware C ontextual Modeling T echnique
Kracht et al. Insertion and deletion correcting DNA barcodes based on watermarks
Welzel et al. DNA-Aeon provides flexible arithmetic coding for constraint adherence and error correction in DNA storage
Korodi et al. DNA sequence compression-based on the normalized maximum likelihood model
KR102418617B1 (ko) 염기 비율과 연속적 발생을 제한하는 dna 저장 부호화 방법, 프로그램 및 장치
Holmes Modular non-repeating codes for DNA storage
Cheng et al. Compression of multiple DNA sequences using intra-sequence and inter-sequence similarities
Selva et al. SRComp: short read sequence compression using burstsort and Elias omega coding
US11244742B2 (en) System for generating genomics data, with adjusted quality scores, and device, method, and software product for use therein
Silva et al. The value of compression for taxonomic identification
CN110915140B (zh) 用于编码和解码数据结构的质量值的方法
US11250064B2 (en) System and method for generating filters for K-mismatch search
Tapia et al. DNA barcoding through quaternary LDPC codes
Wang et al. Streamlined genome sequence compression using distributed source coding
Quah et al. DNA data storage, sequencing data-carrying DNA
EP4318479A2 (en) Method for the compression of genome sequence data
KR20240049911A (ko) 염기서열의 반복 배치를 방지하기 위한 이진 데이터 섞는 방법
US7843365B2 (en) Data encoding and decoding methods and computer readable medium thereof
CN109714061B (zh) 一种Turbo乘积码的译码方法、装置和计算机可读存储介质
Bierman et al. Influence of dictionary size on the lossless compression of microarray images
Wei et al. An Encoding Scheme to Enlarge Practical DNA Storage Capacity by Reducing Primer-Payload Collisions

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant