Method and apparatus for DNA channel emulation and encoding optimization
By establishing a DNA channel simulation model to simulate channel error characteristics, optimize coding design and channel parameters, the problem of lack of fast and low-cost verification of coding design in DNA information storage is solved, and efficient coding optimization and redundancy design are achieved.
Patent Information
- Application Number
- CN202111307148.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-11-05
- Publication Date
- 2026-03-03
- Estimated Expiration
- 2041-11-05
AI Technical Summary
In existing technologies, the coding design for DNA information storage lacks rapid and low-cost verification methods and systematic adjustment and optimization methods, making it difficult to iteratively optimize the coding design through repeated experiments.
By establishing a DNA channel simulation model, simulating channel error characteristics, analyzing simulation sequencing results, optimizing coding design and channel parameters, a fast and low-cost coding optimization method is provided. The channel simulation model is used to verify the feasibility of the coding scheme and adjust the redundancy.
It enables rapid and low-cost verification of the feasibility of the encoding scheme, reduces decoding failures and storage space waste, provides optimal redundancy design, and meets the encoding design requirements for DNA information storage.
Smart Images

Figure CN114023374B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of information storage technology, and in particular to a method and apparatus for DNA (Deoxyribonucleotide) channel simulation and coding optimization. Background Technology
[0002] In the era of data explosion, traditional information storage methods are struggling to meet the rapidly growing demand for data storage: the amount of information generated on Earth each year is growing exponentially, and it is estimated that by 2040, the world will need one million tons of silicon-based chips to store the data generated that year. As a molecule that stores biological genetic information, DNA has many advantages for information storage: high storage density, low energy consumption, and long storage period, especially with a storage density that can reach 10-1. 19 bit / cm 3 Theoretically, only one kilogram of DNA is needed to store the current total amount of information in the world, making it a highly attractive information storage medium.
[0003] DNA is composed of deoxyribonucleotides containing four different bases (A, T, G, C), and theoretically, one nucleotide site can store two bits of data. In practice, the data to be stored is encoded into multiple DNA strands. The DNA carrying the information is synthesized using a DNA synthesizer, and after a series of steps including sampling and PCR amplification, it is sequenced and read using a DNA sequencer to recover the stored data. Because this channel is not perfect, various errors can be introduced during storage, including intra-strand errors such as base substitution, loss, and addition, as well as whole-strand errors. To perfectly recover stored data from erroneous sequencing information, appropriate error-correcting codes are needed, adding a certain amount of redundancy during encoding to combat noise in the channel.
[0004] In related technologies, the academic community has proposed solutions for DNA encoding using RS codes, fountain codes, and LDPC codes. However, designing a suitable encoding method for DNA storage and systematically determining the appropriate amount of redundancy remain technical challenges in this field. According to Shannon coding theory, finding the optimal encoding method and redundancy requires introducing redundancy in a suitable way to combat the specific noise structure of a particular channel. However, current technology still faces limitations such as high cost and long experimental cycles in conducting DNA storage experiments, making it difficult to iteratively optimize the encoding design through repeated experiments.
[0005] Therefore, coding designs for DNA information storage still lack fast and low-cost verification methods, as well as system adjustment and optimization methods, which urgently need to be addressed.
[0006] Application content
[0007] This application provides a DNA channel simulation and coding optimization method and apparatus to solve the problem that coding design for DNA information storage still lacks a fast and low-cost verification method, as well as a system adjustment and optimization method.
[0008] The first aspect of this application provides a DNA channel simulation and coding optimization method, comprising the following steps: establishing a channel simulation model for storage conditions based on given storage links and parameters; inputting the encoded DNA sequence into the channel simulation model to obtain simulated sequencing results, and determining the decoding status based on the simulated sequencing results; obtaining coding optimization data through statistical analysis of the simulated sequencing results and the corresponding decoding status, and optimizing the channel coding design and channel parameter design using the coding optimization data.
[0009] Optionally, in one embodiment of this application, the step of inputting the encoded data into the channel simulation model to obtain the simulated sequencing results includes: inputting the encoded DNA sequence into the channel simulation model to obtain the sequencing sequence and the sequence presence status of each intermediate stage; and obtaining the simulated sequencing results based on the sequencing sequence and the sequence presence status of each intermediate stage.
[0010] Optionally, in one embodiment of this application, after obtaining the simulated sequencing results, the method further includes: extracting channel error features based on the simulated sequencing results, and using the channel error features to analyze and adjust the coding optimization data to obtain the optimal coding optimization data.
[0011] Optionally, in one embodiment of this application, the step of obtaining the coding optimization data from the statistical analysis of the simulated sequencing results and the corresponding decoding results includes: obtaining one or more of the following based on the simulated sequencing results: the distribution of intra-strand errors, the distribution of copy numbers of each strand, the number of sequence loss and erroneous sequences, and the proportion of data recovery during decoding; and obtaining the coding optimization data from one or more of the following: the distribution of intra-strand errors, the distribution of copy numbers of each strand, the number of sequence loss and erroneous sequences, and the proportion of data recovery during decoding.
[0012] Optionally, in one embodiment of this application, obtaining the encoding optimization data from the statistical analysis of the simulated sequencing results and the corresponding decoding situation further includes: determining the optimal balance point between information storage density and successful recovery probability by calculating the relationship between redundancy, information storage density, and successful recovery probability based on the principle of redundancy and error matching.
[0013] A second aspect of this application provides a DNA channel simulation and coding optimization apparatus, comprising: a setup module for establishing a channel simulation model for storage conditions based on given storage steps and parameters; a simulation module for inputting the encoded DNA sequence into the channel simulation model to obtain simulated sequencing results, and determining the decoding status based on the simulated sequencing results; and an optimization module for obtaining coding optimization data through statistical analysis of the simulated sequencing results and the corresponding decoding status, and optimizing the channel coding design and channel parameter design using the coding optimization data.
[0014] Optionally, in one embodiment of this application, the simulation module includes: a generation unit, configured to input the encoded DNA sequence into the channel simulation model to obtain the sequencing sequence and the sequence presence status of each intermediate stage; and a first acquisition unit, configured to acquire the simulated sequencing result based on the sequencing sequence and the sequence presence status of each intermediate stage.
[0015] Optionally, in one embodiment of this application, the optimization module includes: a second acquisition unit, configured to obtain one or more of the following based on the simulated sequencing results: distribution of intra-strand errors, distribution of copy number of each strand, number of sequence loss and erroneous sequences, and proportion of data recovery during decoding; and a third acquisition unit, configured to obtain the encoded optimization data from one or more of the following: distribution of intra-strand errors, distribution of copy number of each strand, number of sequence loss and erroneous sequences, and proportion of data recovery during decoding.
[0016] A third aspect of this application provides an electronic device, including: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the DNA channel simulation and coding optimization method as described in the above embodiments.
[0017] A fourth aspect of this application provides a computer-readable storage medium storing computer instructions for causing the computer to perform the DNA channel simulation and coding optimization method as described in the above embodiments.
[0018] This application allows users to quickly create simulation models of specific DNA channels, analyze channel error characteristics at extremely low experimental costs, and verify the feasibility of specific coding schemes. This saves significant time and money. Furthermore, it provides a systematic redundancy adjustment scheme to obtain the optimal redundancy design for a specific coding system, helping to reduce the possibility of decoding failures and wasted storage space, effectively meeting the coding design requirements for DNA information storage. Therefore, it solves the problem of the lack of fast and low-cost verification methods and system adjustment and optimization methods for coding designs for DNA information storage.
[0019] Additional aspects and advantages of this application will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of this application. Attached Figure Description
[0020] The above and / or additional aspects and advantages of this application will become apparent and readily understood from the following description of the embodiments taken in conjunction with the accompanying drawings, wherein:
[0021] Figure 1 This is a flowchart of a DNA channel simulation and coding optimization method provided according to an embodiment of this application;
[0022] Figure 2 This is a schematic diagram illustrating the principle of a DNA channel simulation and coding optimization method according to a specific embodiment of this application;
[0023] Figure 3 This is a schematic diagram illustrating the simulation model construction method of a DNA channel simulation and coding optimization method according to an embodiment of this application;
[0024] Figure 4 This is a schematic diagram of the simulation results of a DNA channel simulation and coding optimization method according to an embodiment of this application;
[0025] Figure 5 This is a schematic diagram illustrating the parameter optimization process of a DNA channel simulation and coding optimization method according to an embodiment of this application;
[0026] Figure 6 This is a schematic diagram of the user interface of a DNA channel simulation and coding optimization method according to an embodiment of this application;
[0027] Figure 7 This is an example diagram of a DNA channel simulation and coding optimization apparatus according to an embodiment of this application;
[0028] Figure 8 This is a schematic diagram of the structure of an electronic device according to an embodiment of this application. Detailed Implementation
[0029] The embodiments of this application are described in detail below. Examples of these embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and intended to explain this application, and should not be construed as limiting this application.
[0030] The following description, with reference to the accompanying drawings, outlines a DNA channel simulation and coding optimization method, apparatus, electronic device, and storage medium according to embodiments of this application. Addressing the aforementioned background issue of the lack of rapid and low-cost verification methods and system adjustment and optimization methods for coding designs aimed at DNA information storage, this application provides a DNA channel simulation and coding optimization method. This method allows users to quickly create simulation models of specific DNA channels, analyze channel error characteristics at extremely low experimental costs, and verify the feasibility of specific coding schemes. This saves significant time and money. Furthermore, it provides a systematic redundancy adjustment scheme to obtain the optimal redundancy design for a specific coding system, helping to reduce the possibility of decoding failures and wasted storage space, effectively meeting the coding design requirements for DNA information storage. Therefore, it solves the problem of the lack of rapid and low-cost verification methods and system adjustment and optimization methods for coding designs aimed at DNA information storage.
[0031] Specifically, Figure 1 This is a flowchart illustrating a DNA channel simulation and coding optimization method provided in an embodiment of this application.
[0032] like Figure 1 As shown, the DNA channel simulation and coding optimization method includes the following steps:
[0033] In step S101, a channel simulation model for storage conditions is established based on the given storage links and parameters.
[0034] It is understandable that, such as Figure 2 As shown, firstly, based on given storage stages and parameters, this application establishes a channel simulation model for storage conditions. The channel simulation model can be constructed through modular cascading, allowing simulation results to be generated through random simulation or analysis in the following steps, which will be described in detail below.
[0035] For example, such as Figure 3 As shown, this embodiment of the application uses a modular cascading approach to quickly build a channel simulation model. It can use two basic modules, Error Increase (E) and Distribution Transformation (D), to simulate two fundamental changes: newly introduced intra-strand errors, strand copy number changes, and whole-strand loss. By combining these two basic modules with additional special modules, simulation models for each major experimental stage, such as DNA synthesis, decay, PCR amplification, sampling, and DNA sequencing, are constructed. By combining the pre-built simulation models according to the actual experimental steps taken, a complete channel model for a specific channel is obtained. Through this modular construction method, users can quickly customize specific channel models and also allow users to expand new modules according to experimental needs.
[0036] In addition, experimental parameters can be determined in the following ways: using system default parameters from the references; using actual measured instrument parameters and experimentally measured instrument parameters; or providing actual data obtained under specific experimental settings, and fitting the parameters of the channel by minimizing the difference between the simulated data and the actual data. No specific restrictions are imposed here.
[0037] The simulation model in this application simulates the random process of error generation and changes in the copy distribution of each chain at each stage through random simulation. Some parts can also be approximated using analytical solutions to accelerate the simulation speed and further meet the usage requirements.
[0038] In step S102, the encoded DNA sequence is input into the channel simulation model to obtain the simulation sequencing results, and the decoding status is determined by the simulation sequencing results.
[0039] It is understandable that, such as Figure 2 As shown, in this embodiment, the encoded data can be input into the established channel simulation model to obtain the simulation sequencing results, and the feasibility of the encoding design can be verified by decoding.
[0040] Optionally, in one embodiment of this application, inputting the encoded data into a channel simulation model to obtain simulated sequencing results includes: inputting the encoded DNA sequence into the channel simulation model to obtain the sequencing sequence and the sequence presence status of each intermediate stage; and obtaining simulated sequencing results based on the sequencing sequence and the sequence presence status of each intermediate stage.
[0041] For example, in this embodiment of the application, the data input to the channel simulation model is N DNA sequences, and the data output by the simulation model is the simulated actual sequencing data. By adopting an input and output format similar to that of actual experiments, the realism and versatility of the model are ensured.
[0042] In addition, in one embodiment of this application, after obtaining the simulated sequencing results, the method further includes: extracting channel error features based on the simulated sequencing results, and using the channel error features to analyze and adjust the coding optimization data to obtain the optimal coding optimization data.
[0043] In other words, the channel simulation model of this application accepts the encoded DNA sequence as input, and while providing the simulated final sequencing sequence as the simulation output, it can also provide the sequence existence status of each intermediate stage for further analysis of channel error characteristics. That is to say, in addition to the final sequencing data, the simulation model can also provide information such as the existence status of intermediate DNA links to deepen the understanding of the target channel.
[0044] In step S103, coding optimization data is obtained by statistical analysis of the simulation sequencing results and the corresponding decoding results, and the channel coding design and channel parameter design are optimized using the coding optimization data.
[0045] It is understandable that, such as Figure 2 As shown, in conclusion, this embodiment of the application aims to optimize the coding design by matching redundancy with error rate, with the goal of seeking information storage density and successful recovery probability.
[0046] Optionally, in one embodiment of this application, encoding optimization data is obtained from the statistical analysis of the simulated sequencing results and the corresponding decoding results, including: obtaining one or more of the following based on the simulated sequencing results: distribution of intra-strand errors, distribution of copy number of each strand, number of sequence loss and erroneous sequences, and proportion of data recovery during decoding; encoding optimization data is obtained from one or more of the following: distribution of intra-strand errors, distribution of copy number of each strand, number of sequence loss and erroneous sequences, and proportion of data recovery during decoding.
[0047] In actual implementation, the statistical analysis content of this application embodiment may include, but is not limited to, the distribution of errors within the chain, the distribution of copy number of each chain, the number of sequence loss and sequences containing errors, and the proportion of data recovery during decoding.
[0048] Furthermore, in one embodiment of this application, encoding optimization data is obtained from the statistical analysis of the simulated sequencing results and the corresponding decoding situation, which further includes: based on the principle of redundancy and error matching, determining the optimal balance point between information storage density and successful recovery probability by calculating the relationship between redundancy, information storage density, and successful recovery probability.
[0049] Those skilled in the art should understand that the coding optimization method of this application embodiment is based on the principle of redundancy and error matching, and determines the optimal balance point between information storage density and successful recovery probability by calculating the relationship between redundancy, information storage density, and successful recovery probability.
[0050] For example, step S103 in this embodiment includes:
[0051] Step S1031: Run the simulation and decoding process multiple times to obtain the error distribution (including the distribution of the number of copies of each chain, the distribution of errors within the chain, the distribution of the number of lost sequences, and the distribution of the number of sequences with errors after voting) and the decoding redundancy requirement distribution (the distribution of the redundancy required to complete the decoding under certain error conditions).
[0052] Step S1032: Based on the distribution obtained in step S1031, calculate the relationship between information storage density, successful recovery probability and redundancy, and recommend a suitable redundancy design based on actual needs.
[0053] In short, the embodiments of this application include establishing a channel simulation model for storage conditions given storage links and parameters, inputting the encoded data into the established channel simulation model to obtain simulated sequencing results, attempting to decode and verify the feasibility of the encoding design, and performing statistical analysis on the simulation data and decoding results to derive a systematic encoding optimization scheme. This allows users to quickly build DNA channel models, verify the feasibility of specific encoding schemes at extremely low experimental costs, and obtain the optimal redundancy design for specific channels through systematic adjustment methods, which helps reduce the possibility of decoding failures, storage space waste, and other problems.
[0054] The following examples illustrate the DNA channel simulation and coding optimization method of this application.
[0055] Combination Figure 1 and Figure 2 As shown, in one embodiment of this application, a simulation model is established for a specific DNA channel under certain experimental conditions, and the encoding verification and redundancy optimization of the DNA fountain code are realized based on the simulation model. It should be particularly noted that the embodiments of this application are merely exemplary. Except for the target channel and encoding method used in the example, this application can be applied to the simulation of various channel conditions and the optimization of various encoding methods. This embodiment should not be construed as a limitation of this application.
[0056] Specifically, DNA fountain coding is a commonly used encoding method in the field of DNA information storage. Its encoding principle is as follows: During encoding, binary data is divided into N segments, and the fountain algorithm is used to linearly combine these segments to generate (1+α)N "droplets." A droplet of length L is then added to each droplet. RS The RS code is then converted into a DNA sequence. During DNA transmission, some DNA sequences may be lost, and errors such as base deletions, additions, and substitutions may occur within the DNA sequence itself. During decoding, each DNA sequence is converted into binary, and the RS code is used to correct errors within the strand. If there are too many errors to correct, the strand is discarded. The remaining error-free "droplets" are used to solve for the original data. When the number of remaining "droplets" is slightly greater than N, the original data can be recovered. α and L RS A higher redundancy setting increases redundancy and strengthens the ability to combat channel noise, but it also reduces information density. Therefore, a suitable value needs to be selected based on the channel's noise characteristics. This embodiment demonstrates the process of establishing a channel simulation model using the method described in this application, simulating actual storage experiments to verify the coding scheme, and systematically adjusting the redundancy.
[0057] Step S1: Given the storage components and parameters, establish a channel simulation model for the storage conditions.
[0058] In some embodiments, the experimenter anticipates using primer pool chip synthesis technology to synthesize DNA and then performing PCR amplification on the synthesized DNA pool. Data is stored in the DNA pool for a certain period. To retrieve the data, a small amount of solution is taken from the DNA pool, PCR amplified, and then sequenced using the Illumina next-generation sequencing platform. Based on the experimental procedure used, the corresponding DNA channel model is constructed by sequentially combining DNA synthesis, PCR amplification, DNA decay, sampling, PCR amplification, and DNA sequencing modules. The parameters for the synthesis and sequencing stages refer to publicly available measurement data from the corresponding platform, while the parameters used in the PCR and other stages remain consistent with the actual experiment.
[0059] Step S2: Input the encoded data into the established channel simulation model to obtain the simulation sequencing results, and attempt to decode and verify the feasibility of the encoding design.
[0060] In some embodiments, fountain codes are used to encode the Lena.jpg file. Based on the limitations of the synthesis and sequencing platform on DNA length, the length of a single DNA sequence is set to L = 104 bp, according to α = 0.5, L... RS =4 sets redundancy, resulting in 2076 encoded DNA sequences. Simulation was performed using a given channel to obtain simulated sequencing results. Decoding the obtained DNA sequences yielded 2612 "droplets" whose errors could be corrected by RS codes. The redundancy setting was significantly higher than the channel noise level, allowing for decoding and recovery of Lena.jpg.
[0061] In addition to verifying the feasibility of the decoding scheme, the simulation model in this method can also be used to obtain the changes in copy number distribution and in-chain error distribution at various stages. Figure 4 .a) The DNA sequence corresponds to morphological changes in copies at various stages. Figure 4 .b), the result of voting on multiple sequencing data of a single DNA sequence ( Figure 4 c) By adjusting parameters such as sequencing depth and sampling depth, information such as the trend of error number changes can be obtained to gain a comprehensive and systematic understanding of the error characteristics of the target channel, which can help guide the proposal of new coding methods.
[0062] Step S3: Perform statistical analysis on the simulation data and decoding results to derive a systematic coding optimization scheme.
[0063] In some embodiments, the redundancy of the fountain code is optimized to achieve a high information storage density with the least possible redundancy while obtaining an ideal decoding success rate.
[0064] First, determine the RS encoding length L within the chain. RS Optimization is performed. Based on the distribution data of the chain containing k errors obtained from simulation, the L values for different chains are estimated according to the following formula.RS Given the information density, select L to achieve the highest information density. RS :
[0065]
[0066] Based on the calculated D(k), L RS =2 is optimal, achieving an estimated information density of 76%, therefore L is chosen. RS =2.
[0067] Then, α is optimized. In this embodiment, the decoding failure probability p is calculated. fail The functional relationship with α is used to select an appropriate α based on the successful decoding probability required for the experiment. Where p fail (α) can be obtained from the relationship between the number of lost chains and the number of chains required for decoding: The two distributions can be obtained by running the simulation and decoding process multiple times, and then fitting the obtained data to a specific prior distribution. The prior distribution can be determined through theoretical derivation or experimental methods, such as... Figure 5 As shown, in this application example, the distribution of the number of lost records uses a Possion distribution, and the distribution of the number of decoded chains follows a Gumbel distribution (e.g., ...). Figure 5 b). Based on the obtained p fail (α) curve: To achieve a 99% decoding success rate, α can be set to 0.25-0.28. (e.g., Figure 5 .c).
[0068] In the above embodiments, this application achieves the analysis of target channel error characteristics and the verification of coding methods through low-cost computer simulation, which can save a lot of experimental costs; and obtains the optimal redundancy design through system optimization, which helps to avoid problems such as decoding failure and storage space waste.
[0069] The DNA channel simulation and coding optimization method proposed in the embodiments of this application allows users to quickly create simulation models of specific DNA channels, analyze channel error characteristics at extremely low experimental costs, verify the feasibility of specific coding schemes, save a lot of time and money, and provide a systematic redundancy adjustment scheme to obtain the optimal redundancy design for a specific coding system. This helps reduce the possibility of decoding failures, storage space waste, and other problems, effectively meeting the coding design requirements for DNA information storage.
[0070] Next, the DNA channel simulation and coding optimization apparatus proposed according to the embodiments of this application is described with reference to the accompanying drawings.
[0071] Figure 7 This is a block diagram of the DNA channel simulation and coding optimization device according to an embodiment of this application.
[0072] like Figure 7 As shown, the DNA channel simulation and coding optimization device 10 includes: a setup module 100, a simulation module 200, and an optimization module 300.
[0073] Specifically, module 100 is established to build a channel simulation model for storage conditions based on given storage links and parameters.
[0074] The simulation module 200 is used to input the encoded DNA sequence into the channel simulation model, obtain the simulated sequencing results, and determine the decoding status based on the simulated sequencing results.
[0075] The optimization module 300 is used to obtain coding optimization data from the statistical analysis of the simulation sequencing results and the corresponding decoding results, and to optimize the channel coding design and channel parameter design using the coding optimization data.
[0076] Optionally, in one embodiment of this application, the simulation module 200 includes a generation unit and a first acquisition unit.
[0077] The generation unit is used to input the encoded DNA sequence into the channel simulation model to obtain the sequencing sequence and the sequence existence status of each intermediate stage.
[0078] The first acquisition unit is used to acquire the simulated sequencing results based on the sequencing sequence and the sequence presence status of each intermediate stage.
[0079] Optionally, in one embodiment of this application, the optimization module 300 includes a second acquisition unit and a third acquisition unit.
[0080] The second acquisition unit is used to obtain one or more of the following based on the simulated sequencing results: distribution of intrastrand errors, distribution of copy number of each strand, number of sequence loss and erroneous sequences, and proportion of data recovery during decoding.
[0081] The third acquisition unit is used to obtain encoded optimization data from one or more of the following: the distribution of errors within the chain, the distribution of copy numbers in each chain, the number of sequences that are lost or contain errors, and the proportion of data recovered during decoding.
[0082] Optionally, in one embodiment of this application, the simulation module 200 is further configured to extract channel error features based on the simulation sequencing results after obtaining the simulation sequencing results, and use the channel error features to analyze and adjust the coding optimization data to obtain the optimal coding optimization data.
[0083] Optionally, in one embodiment of this application, the optimization module 300 is further used to determine the optimal balance point between information storage density and successful recovery probability by calculating the relationship between redundancy, information storage density, and successful recovery probability based on the principle of redundancy and error matching.
[0084] It should be noted that the foregoing explanation of the DNA channel simulation and coding optimization method embodiment also applies to the DNA channel simulation and coding optimization device of this embodiment, and will not be repeated here.
[0085] The DNA channel simulation and coding optimization apparatus proposed in the embodiments of this application allows users to quickly create simulation models of specific DNA channels, analyze channel error characteristics at extremely low experimental costs, verify the feasibility of specific coding schemes, save a lot of time and money, and provide a systematic redundancy adjustment scheme to obtain the optimal redundancy design for a specific coding system. This helps reduce the possibility of decoding failures, storage space waste, and other problems, effectively meeting the coding design requirements for DNA information storage.
[0086] Figure 8 A schematic diagram of the structure of an electronic device provided in an embodiment of this application. The electronic device may include:
[0087] The memory 801, the processor 802, and the computer program stored on the memory 801 and capable of running on the processor 802.
[0088] When the processor 802 executes the program, it implements the DNA channel simulation and coding optimization method provided in the above embodiments.
[0089] Furthermore, electronic devices also include:
[0090] Communication interface 803 is used for communication between memory 801 and processor 802.
[0091] The memory 801 is used to store computer programs that can run on the processor 802.
[0092] The memory 801 may include high-speed RAM memory, and may also include non-volatile memory, such as at least one disk storage device.
[0093] If the memory 801, processor 802, and communication interface 803 are implemented independently, then the communication interface 803, memory 801, and processor 802 can be interconnected via a bus to complete communication between them. The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus, etc. Buses can be divided into address buses, data buses, control buses, etc. For ease of representation, Figure 8 The bus is represented by a single thick line, but this does not mean that there is only one bus or one type of bus.
[0094] Optionally, in a specific implementation, if the memory 801, processor 802, and communication interface 803 are integrated on a single chip, then the memory 801, processor 802, and communication interface 803 can communicate with each other through an internal interface.
[0095] The processor 802 may be a central processing unit (CPU), an application specific integrated circuit (ASIC), or one or more integrated circuits configured to implement the embodiments of this application.
[0096] This embodiment also provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the DNA channel simulation and coding optimization method described above.
[0097] In the description of this specification, the references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of this application. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples. Moreover, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification, as well as the features of different embodiments or examples.
[0098] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of that feature. In the description of this application, "N" means at least two, such as two, three, etc., unless otherwise explicitly specified.
[0099] Any process or method described in the flowchart or otherwise herein can be understood as representing a module, segment, or portion of code comprising one or more N executable instructions for implementing custom logic functions or processes, and the scope of the preferred embodiments of this application includes additional implementations in which functions may be performed not in the order shown or discussed, including substantially simultaneously or in reverse order depending on the functions involved, as should be understood by those skilled in the art to which embodiments of this application pertain.
[0100] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as a sequenced list of executable instructions for implementing logical functions, and can be embodied in any computer-readable medium for use by, or in conjunction with, an instruction execution system, apparatus, or device (such as a computer-based system, a processor-included system, or other system that can fetch and execute instructions from, an instruction execution system, apparatus, or device). For the purposes of this specification, "computer-readable medium" can be any means that can contain, store, communicate, propagate, or transmit programs for use by, or in conjunction with, an instruction execution system, apparatus, or device. More specific examples (a non-exhaustive list) of computer-readable media include: an electrical connection having one or more wires (electronic device), a portable computer disk drive (magnetic device), random access memory (RAM), read-only memory (ROM), erasable and editable read-only memory (EPROM or flash memory), fiber optic devices, and portable optical disc read-only memory (CDROM). Alternatively, the computer-readable medium may be paper or other suitable media on which the program can be printed, since the program can be obtained electronically, for example, by optically scanning the paper or other medium, followed by editing, interpreting, or otherwise processing as necessary, and then stored in a computer memory.
[0101] It should be understood that the various parts of this application can be implemented using hardware, software, firmware, or a combination thereof. In the above embodiments, the N steps or methods can be implemented using software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware as in another embodiment, it can be implemented using any one or a combination of the following techniques known in the art: discrete logic circuits having logic gates for implementing logical functions on data signals, application-specific integrated circuits (ASICs) having suitable combinational logic gates, programmable gate arrays (PGAs), field-programmable gate arrays (FPGAs), etc.
[0102] Those skilled in the art will understand that all or part of the steps of the methods in the above embodiments can be implemented by a program instructing related hardware. The program can be stored in a computer-readable storage medium, and when executed, the program includes one or a combination of the steps of the method embodiments.
[0103] Furthermore, the functional units in the various embodiments of this application can be integrated into a processing module, or each unit can exist physically separately, or two or more units can be integrated into a module. The integrated module can be implemented in hardware or as a software functional module. If the integrated module is implemented as a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium.
[0104] The storage medium mentioned above can be a read-only memory, a disk, or an optical disk, etc. Although embodiments of this application have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting this application. Those skilled in the art can make changes, modifications, substitutions, and variations to the above embodiments within the scope of this application.
Claims
1. A method for DNA channel emulation and coding optimization, characterized by, The method comprises the following steps: a channel simulation model for a storage condition is established based on given storage links and parameters; a channel simulation model is quickly established in a module cascade manner, the channel simulation model uses two basic modules of error increase and distribution transformation to construct simulation models of each main experimental link of DNA synthesis, decay, PCR amplification, sampling and DNA sequencing; the pre-constructed simulation models are combined according to actual experimental steps to obtain a complete channel model for a specific channel; a coded deoxyribonucleotide DNA sequence is input into the channel simulation model to obtain a simulation sequencing result, and a decoding condition is determined from the simulation sequencing result, wherein the input of the coded data into the channel simulation model to obtain the simulation sequencing result comprises: input of the coded DNA sequence into the channel simulation model to obtain a sequencing sequence and a sequence existence state at each intermediate stage; and the simulation sequencing result is obtained from the sequencing sequence and the sequence existence state at each intermediate stage; and the coding optimization data is obtained from statistical analysis of the simulation sequencing result and the corresponding decoding condition, and the coding optimization data is used to optimize channel coding design and channel parameter design, which comprises: one or more of the following are obtained based on the simulation sequencing result: distribution of intra-chain errors, distribution of copy numbers of each chain, number of sequence loss and sequence containing errors, and proportion of data recovery during decoding; the coding optimization data is obtained from one or more of the following: distribution of intra-chain errors, distribution of copy numbers of each chain, number of sequence loss and sequence containing errors, and proportion of data recovery during decoding; based on the principle of matching between redundancy and error, the best balance point of information storage density and successful recovery probability is determined by calculating the relationship among redundancy, information storage density and successful recovery probability.
2. The method of claim 1, wherein, After the simulation sequencing result is obtained, the following steps are further included: channel error features are extracted based on the simulation sequencing result, and the coding optimization data is analyzed and adjusted using the channel error features to obtain optimal coding optimization data.
3. A DNA channel emulation and coding optimization apparatus, characterized by, It comprises: a module is established to establish a channel simulation model for a storage condition based on given storage links and parameters; a channel simulation model is quickly established in a module cascade manner, the channel simulation model uses two basic modules of error increase and distribution transformation to construct simulation models of each main experimental link of DNA synthesis, decay, PCR amplification, sampling and DNA sequencing; the pre-constructed simulation models are combined according to actual experimental steps to obtain a complete channel model for a specific channel; a simulation module is used to input a coded DNA sequence into the channel simulation model to obtain a simulation sequencing result, and to determine a decoding condition from the simulation sequencing result; the coded DNA sequence is input into the channel simulation model to obtain a sequencing sequence and a sequence existence state at each intermediate stage; the simulation sequencing result is obtained from the sequencing sequence and the sequence existence state at each intermediate stage, which comprises: a generation unit is used to input the coded DNA sequence into the channel simulation model to obtain a sequencing sequence and a sequence existence state at each intermediate stage; a first obtaining unit, configured to obtain the simulation sequencing result according to the sequencing sequence and the sequence existing state of each intermediate stage; and an optimization module, configured to obtain encoding optimization data by statistical analysis of the simulation sequencing result and corresponding decoding condition, and optimize channel encoding design and channel parameter design by using the encoding optimization data, wherein the encoding optimization data comprises: a second obtaining unit, configured to obtain one or more of the following from the simulation sequencing result: distribution of intra-chain errors, distribution of each chain copy number, number of sequence loss and error-containing sequences, and proportion of data recovery during decoding; a third obtaining unit, configured to obtain the encoding optimization data from one or more of the following: distribution of intra-chain errors, distribution of each chain copy number, number of sequence loss and error-containing sequences, and proportion of data recovery during decoding; based on the principle of redundancy and error matching, by calculating the relationship among redundancy, information storage density and successful recovery probability, the best balance point of information storage density and successful recovery probability is determined.
4. An electronic device, comprising: comprise: a memory, a processor and a computer program stored in the memory and executable on the processor, the processor executing the program to implement the DNA channel simulation and encoding optimization method according to any one of claims 1-2.
5. A computer-readable storage medium having stored thereon a computer program, characterized in that, The program is executed by the processor to implement the DNA channel simulation and encoding optimization method according to any one of claims 1-2.