Exploration and visualization of laboratory data

CN118098379BActive Publication Date: 2026-10-16EMERALD CLOUD LAB INC
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202311307821.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2015-06-30
Filing Date
2016-06-30
Publication Date
2026-10-16
Estimated Expiration
2036-06-30

AI Technical Summary

Technical Problem

这样做的另一个后果在于无法将实验协议信息和产生的实验数据连接在一起,因此无法实现将实验连接在一起的高效、可靠和可扩展的通用框架

Benefits of technology

[0010] This disclosure provides, in some embodiments, systems, methods, computer-readable media, modules, and apparatuses for implementing integrated systems for the design, tuning, scheduling, compilation, execution, analysis, visualization, verification, and sharing of laboratory experiments. Such systems are adaptable to different types of samples running on different types of instruments. Furthermore, different samples, experiments, and instruments are integrated to allow information from different entities to be shared, thereby benefiting the design, verification, and analysis of experiments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118098379B_ABST
    Figure CN118098379B_ABST
Patent Text Reader

Abstract

A system for analyzing data obtained from laboratory experiments, comprising a processor, a memory, and program code, the program code causing the system to perform: storing values of experimental parameters used to perform an experiment; storing results from the experiment; storing information about an instrument running the experiment; storing environmental conditions under which the experiment was run; placing a protocol object or protocol information representing the experiment, a sample running the experiment, and instructions for performing the experiment in a queue; responsive to the experiment being performed, removing the protocol object or protocol information from the queue; linking the instructions to the sample, the instrument, a sensor, and a tracking device; and responsive to any change in the sample, the instrument, the sensor, or the tracking device, dynamically changing the generated updated instructions by a computer; selecting a visual representation of the stored results based on reference data points selected from a group consisting of the values of the experimental parameters or one or more adjusted values of the experimental parameters, the information about the instrument, and the environmental conditions.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This application is a divisional application of the application filed on June 30, 2016, with application number 201680049795.2 and invention title "Exploration and Visualization of Laboratory Data".

[0002] Cross-reference to related applications

[0003] This application claims priority to U.S. Provisional Application Serial Nos. 62 / 186,928 and 62 / 186,936, both filed June 30, 2015, under 35 U.S.SC §119(e), the entire contents of which are incorporated herein by reference. Background Technology

[0004] Data visualization and analysis are essential tools in life science research. Data visualization is the application of computer graphics, scientific visualization, and information visualization to interpreting and exploring experimental data. Examples include visualization of HPLC curves, gel electrophoresis images, DNA and protein sequences, genomes, alignments, phylogenetic data, macromolecular structures, systems biology data, microscopy, and magnetic resonance imaging data. Software tools used to assist in data visualization and analysis often require importing data from diverse sources and cannot integrate this data with additional information useful for visualization and analysis.

[0005] Life science research projects typically involve numerous, lengthy steps, each potentially requiring different instruments and varying input and output samples. For example, screening siRNA may involve siRNA synthesis, purification, validation and quantification, cell-free assays, and in vitro testing. No single instrument is designed to perform such a diverse range of experiments, and currently, there are no systems or methods for flexibly specifying and automating such multi-technology, multi-instrument, multi-platform research projects. In fact, many skilled in the art consider a universal experimental platform impossible due to the potentially almost exponential number of technology combinations and countless specific parameters that can vary with each technology. While some claim flexibility, the reality in the field is that functional systems focus on automating or electronically representing a small, restricted, well-defined set of experiments centered on a specific task, such as high-throughput screening of ligands for a particular enzyme. This restrictive approach “solves” the problem by completely avoiding the exponential scale of a universal problem and therefore does not provide the technological basis for constructing truly flexible, universal experimental systems as presented herein.

[0006] One reason is that existing electronic systems used to manage, store, and view experimental data lack specified experimental protocols in a machine-readable format suitable for computerized analysis and reasoning. Therefore, even if a computer can access the raw experimental data, a rich understanding of the experiments that generated it is lacking. For example, in the Indigo Electronic Lab Notebook (“ELN”), the experimental protocols are simply free text. See, for example, EPAM LifeSciences, Indigo ELN User Guide Version 1.2. Figure 18 (See the bottom right image.) Therefore, information regarding experimental setups in Indigo ELN is not machine-resolvable and cannot be programmatically verified or correlated with other information stored in the system, even though the experimental protocol information is implemented in free text. As observed in many fields, one consequence of this is the impossibility of verifying the integrity of experimental protocol information contained in free text. Another consequence is the inability to link experimental protocol information with the generated experimental data, thus hindering the development of an efficient, reliable, and scalable general framework for connecting experiments. Summary of the Invention

[0007] In some embodiments, this disclosure provides systems and methods for data analysis of experimental data. This analysis may include reference data not directly generated from the experiment, which may be values ​​of experimental parameters provided by a user, calculated by the system using user input, or calculated by the system without any input from the user. Another example of such reference data may be information about the instrument, such as the instrument's calibration method.

[0008] In one embodiment, a system for analyzing data obtained from laboratory experiments is provided, comprising a processor, memory, and program code including an experimental module configured to store values ​​of experimental parameters for performing the experiment; a data module configured to store results from the experiment; an instrument module configured to store information about the instruments used to run the experiment; an environment module configured to store environmental conditions for running the experiment; and a data visualization module configured to display a visual representation of the results stored in the data module, wherein the visual representation further includes a representation of one or more reference data points selected from the group consisting of: values ​​of experimental parameters, information about the instruments, and environmental conditions.

[0009] Another embodiment provides a system for analyzing data obtained from laboratory experiments, including a processor, memory, and program code, comprising: an experimental module configured to display identifiers of samples used in the experiments, identifiers of instruments used in the experiments, identifiers of datasets generated from the experiments, and identifiers of environmental records including measurements of environmental conditions at the time and location of the experiments; a data module configured to display data extraction or visualization to represent datasets, identify the experiments that generated the datasets, and identify analyses performed on the datasets; an instrument module configured to display a list of experiments performed on instruments, a list of control experiments run on the instruments, and maintenance records of the instruments; an analysis module configured to display identification of the datasets being analyzed and analytical summaries or graphs representing the analysis results; and an environment module. The system is configured to display the environmental conditions of the time and location of the experiment, wherein the system enables the user to explore information related to the experiment while presenting the experiment panel displayed by the experiment module: (1) allowing the user to click on the identifier of the dataset generated by the experiment on the experiment panel to call the data module to display the identifier of the analysis performed on the dataset on the data panel, which allows the user to click on the identifier of the analysis performed on the dataset to call the analysis module to display an analysis summary or graph representing the analysis results on the analysis panel; (2) allowing the user to click on the identifier of the environmental record to call the environment module to display the environmental conditions of the time and location of the experiment; (3) allowing the user to click on the identifier of the instrument used to conduct the experiment to call the instrument module to display a list of control experiments run on the instrument on the instrument panel, as well as maintenance records of the instrument related to the experiment.

[0010] This disclosure provides, in some embodiments, systems, methods, computer-readable media, modules, and apparatuses for implementing integrated systems for the design, tuning, scheduling, compilation, execution, analysis, visualization, verification, and sharing of laboratory experiments. Such systems are adaptable to different types of samples running on different types of instruments. Furthermore, different samples, experiments, and instruments are integrated to allow information from different entities to be shared, thereby benefiting the design, verification, and analysis of experiments.

[0011] The integration of systems in some embodiments of this disclosure can be advantageous in at least several ways. For example, after a user inputs one or more parameters for an experiment, the system can validate the parameters, suggest alternative or optimal parameters, adjust other parameters accordingly, or fill in other parameters not provided by the user. Thus, even without limited input from the user, the system can generate a complete set of instructions and parameters for performing an experiment, resulting in high predictability and reproducibility. Such instructions can be itemized, linearized, parallelized, otherwise optimized, and provide explicit commands for conducting the experiment.

[0012] Another advantage is that the integrated system allows users to perform analyses within a single interface that specifies the experiments that generate data, receives the generated data, and / or facilitates the design of additional experiments after data generation. Although not always visible, in some embodiments, the system generates a complete set of specified parameters for a single experiment.

[0013] The disclosed invention differs from conventional techniques in that it employs free, unstructured entries for information that is difficult to classify or quantify. In one embodiment, this technology provides support for a programming language within a user interface that simultaneously supports structured input of expected actions (e.g., experiments) and data. Compared to the numerous free text input systems available in the art, the use of a programming language allows for the correlation of experimental specifications, the actual execution of experiments, the resulting data, and analysis within a linear process within an environment. Furthermore, this advancement, and the elements of the overall advancement, are machine-readable and can be subjected to explicit computational processing.

[0014] According to one embodiment of this technology, the system guarantees each step during experimental design, which is practically impossible in a segmented system. This guarantee means that the description of the experimental protocol is complete, including all the information required to conduct the experiment. Furthermore, the guarantee lies in the automatic linking of the experimental protocol to detailed logs documenting the actual experimental run, control logs, output samples, and generated data. In some embodiments, the linking is used to associate one experimental protocol with another. Instead of simply copying and pasting the original experimental protocol and then specifying only what the user wants to accomplish differently (e.g., different sample inputs, different temperatures, etc.), users can directly reference the original experiment and then specify only what they want to accomplish differently (e.g., different sample inputs, different temperatures, etc.). This advantageously allows for very compact and easy-to-read code without sacrificing completeness, accuracy, or reproducibility. According to one embodiment of this technology, the system is configured to guarantee that when a user copies an experimental protocol, a rerun with new parameters or inputs can be adjusted and verified accordingly.

[0015] Another embodiment of this disclosure relates to providing reasonable default settings for experiments in a programmatic manner. The user only needs to specify which settings are different. This would be impossible if the experiment were not represented in a machine-computable form (e.g., free text). Furthermore, default settings greatly improve usability by not forcing the user to input every parameter required for the experiment. In another embodiment, the experiment is automatically associated with logistical information about the materials used in the experiment, such as the year of the stock solution used.

[0016] Another advantage of certain embodiments of this technology is that the analysis module can automatically understand the output of the experiment because the system is aware of the definition of the output from the context in a pre-specified experiment. Attached Figure Description

[0017] The figures in the accompanying drawings illustrate the provided embodiments by way of example only, wherein:

[0018] Figure 1 A user interface is shown for selecting the type of experiment to run on the system disclosed herein;

[0019] Figure 2 The interface for selecting samples is shown to the user after selecting the experiment type;

[0020] Figure 3 The interface shows the user selecting the samples to run in the experiment;

[0021] Figure 4 The samples selected for the experiment are shown;

[0022] Figure 5 A user interface is shown that allows users to adjust experimental parameters;

[0023] Figure 6A This shows some experimental parameters that the user has adjusted;

[0024] Figure 6B This shows the warnings given by the system when evaluating the input values ​​of the parameters;

[0025] Figure 7 This shows that the system has confirmed that the experiment has been successfully specified by the user and successfully received and activated by the system;

[0026] Figure 8 The interface of the data module is shown;

[0027] Figure 9 The interface of the experimental module is shown;

[0028] Figure 10 The interface of the instrument module is shown;

[0029] Figure 11 An example is shown where multiple objects are interconnected via links on their interface, allowing users to explore related information;

[0030] Figures 12A to 12C It displays a visual panel and various icons that can be included in the interface of the analysis or reporting module;

[0031] Figure 13 This demonstrates how the system integrates different elements of laboratory research projects that can be performed on the system;

[0032] Figures 14-17 Several examples of interconnected objects generated or used for data exploration and mining are shown;

[0033] Figure 18 The overall system design is shown;

[0034] Figure 19 A system according to an embodiment of this disclosure is shown; and

[0035] Figure 20A -G illustrates a system according to some embodiments of this disclosure.

[0036] Some or all of the accompanying drawings are illustrative examples; therefore, they do not necessarily depict the actual relative dimensions or positions of the elements shown. The drawings are presented for the purpose of illustrating one or more embodiments, and it is clearly understood that they are not intended to limit the scope or meaning of the appended claims. Detailed Implementation

[0037] This disclosure provides systems and methods for guiding and managing integrated laboratory experiments. The system may include various laboratory instruments connected to or interconnected with one or more computers. The computer may be local or remote relative to the individual instruments it controls, sending commands to each individual instrument and receiving output. The computer may operate independently or as part of a larger group of computers, such as a data center. To facilitate communication between users, instruments, and computers, a system based on data from Wolfram Research (Champaign, IL) has been developed. The language is a computer language package called "Symbolic Lab Language" (SLL). SLL scripts and syntax are presented for the purpose of illustrating conceptual aspects of one or more embodiments, and it should be clearly understood that they are not intended to limit the scope or meaning of the appended claims. Furthermore, user interfaces (e.g., graphical user interfaces, web interfaces, Windows or Mac interfaces, or mobile interfaces) can be created to enable users unfamiliar with computer languages ​​to effectively use the system.

[0038] User interface for experiment design and management

[0039] Figure 1-7A computer user interface is shown for a user to design a laboratory experiment (or simply "experiment") to be run by an embodiment of the system of this disclosure. As used herein, the term "experiment" refers to a process involving the use of biological or chemical samples or reagents to make discoveries, test hypotheses, or demonstrate facts. It will be appreciated that an experiment can be as simple as a single step and does not require a biological or chemical reaction (e.g., examining the absorbance of a sample at 260 nm). It should also be understood that an experiment does not need to make conclusive findings or support or refute hypotheses as completely as possible. As used herein, the term "technique" refers to a specialized procedure and method for performing or implementing a particular task, particularly a scientific procedure. For clarity of this disclosure, the term "technique" should be used to refer to individual steps that can be combined to perform an experiment. However, this is purely for clarity and does not limit the scope and definition of the term "experiment" as used herein; for example, a technique is also an experiment. Finally, as used herein, the term "scheme" refers to a plan for a scientific experiment. Like "technique," this term is used for clarity of the text and is not intended to limit the definition or scope of the term "experiment," for example, the term "experiment" in the context may refer to the scheme of the experiment.

[0040] exist Figure 1In this document, interface 100 includes a menu area 101, a main panel 102, and a computer scripting panel 103, sometimes referred to herein as a “notebook,” “laboratory notebook,” or “electronic laboratory notebook.” The term “script” as used herein refers to instructions written in a computer programming or scripting language that can be executed either previously compiled into a machine language program or uncombably. The computer scripting panel is configured to interactively display and process instructions written in a programming or scripting language, and optionally may also be configured to display and process plain text, data, images, and other media. Panels may also be embedded within other panels. For example, in some embodiments, the scripting panel is configured to include data, experiments, visualizations, and other panels disclosed herein. These panels can be invoked via a graphical user interface or by entering script commands within the scripting panel. Similarly, modules may be embedded within other panels and modules, as discussed elsewhere in this disclosure. The menu area includes a list of menu options 104 from which the user can select at any point during use of the interface. The menu item “Projects” allows the user to organize experiments, including experimental formats recorded in the notebook, and to create, view, modify, delete, share, or experiment with projects. The "Samples" menu allows users to add, modify, annotate, select, delete, or inspect samples. Since samples can be provided by the user from a remote location, the "Samples" menu also allows users to check the sample's reception status, quantity, and condition. The "Models" menu item enables users to access various conceptual frameworks, ontological entities, controlled terms, controlled taxonomy, or other knowledge representation schemes, parameterizing the physical properties that may be associated with the samples, as well as conceptual placeholders for physical objects. "Reports" displays reports generated by the system during or after experiments, allowing users to generate visualizations, extract or manipulate data, and examine experimental processes and conditions. Not limited to this, another menu item, "Data," provides access to raw data, processed data, organized data, or extracted data. The menu options that can be presented in the menu area, or other available menu options, are not limited to the examples above. Figure 1 The menu options are shown below. For example, additional menu options may include, but are not limited to, “Experiment,” “Plot,” “Simulate,” “Analyze,” and “Search.”

[0041] When a new project is created, the main panel 102 will display relevant information to the user and allow the user to enter appropriate input. For example, such as... Figure 1As shown, from a plurality of commands (105), the user selects “Compile Experiment,” and in response, the interface displays a list of available experiment types in 106. A compile experiment refers to the process of writing or validating a script that defines the experiment, including validating specified parameters (including samples), deriving values ​​for unspecified parameters, generating computer objects required to execute the script, and optionally conducting the experiment in a laboratory, sending results and / or analyzing results. In some embodiments, the term “execute” is used synonymously with compile, particularly concerning parameter validation in a laboratory, object generation, and optional variations of the experiment. Finally, although Figure 1 One embodiment has been described, but other layouts and panel groups may also be used.

[0042] Experiment type

[0043] Unlike the computer systems and software packages that come with typical commercial laboratory instruments, the systems and software of this disclosure are capable of integrating different types of laboratory instruments. Therefore, this system can remotely run a variety of experiments, including combinations of sequential experiments in series or parallel, both individually and in any compatible combination. This capability is embodied in the interface. The systems and software of this disclosure can be advantageously configured to refuse to run physically meaningless or dangerous combinations, such as creating a solid material and then attempting to manipulate it with a liquid handling device. The types of experiments and techniques listed in this disclosure are intended to illustrate the functionality of one or more embodiments, and it is expressly understood that they are not intended to limit the scope or meaning of the appended claims.

[0044] Therefore, in one embodiment, the list of experimental techniques includes at least two of the following types: synthesis, purification, amplification, quantification, and cell culture. In one aspect, the list includes at least synthesis and purification. In another aspect, the list includes at least amplification and quantification. In yet another aspect, the list includes at least purification and cell culture.

[0045] In some embodiments, the list may further include techniques other than quantification (non-quantitative techniques). Non-quantitative techniques may include, for example, chromatography, microscopy, electrophoresis, spectroscopy, and volumetric or gravimetric analysis. In specific examples, the list may include at least nucleic acid or protein synthesis, nucleic acid or protein analysis, and nucleic acid amplification. Furthermore, the experimental techniques may fall into multiple categories; for example, high-performance liquid chromatography (HPLC) is both a purification and quantification technique.

[0046] "Synthesis" refers to the production of organic or biomolecules from starting materials without the use of cells. Organic synthesis can be total synthesis or semi-synthesis. Total synthesis is the chemical synthesis of complex organic molecules from simple, commercially available, or natural precursors. Total synthesis can be performed using linear or convergent methods. In linear synthesis, several steps are performed one after another until the molecule is complete. The compounds produced in each step are called synthetic intermediates. For more complex molecules, different approaches may be preferred: convergent synthesis involves the separate preparation of several "fragments" (key intermediates) and then combining them to form the desired product. Semi-synthesis, or partial chemical synthesis, is a type of chemical synthesis that uses compounds isolated from natural sources (such as plant material or bacterial or cell cultures) as starting materials. These natural biomolecules are often large and complex molecules. This is the opposite of total synthesis, where large molecules are synthesized by the stepwise combination of small molecules and inexpensive (often petrochemical) structural units.

[0047] In one aspect, synthesis is the synthesis of biomolecules (e.g., nucleic acids or peptides). Nucleic acid synthesis is the chemical synthesis of relatively short fragments of nucleic acids having a defined chemical structure (sequence). Sometimes, this process is carried out using phosphoramidite synthesis and solid-phase synthesis using phosphoramidite structural units derived from protected 2'-deoxynucleosides (dA, dC, dG, and T), ribonucleosides (A, C, G, and U), or chemically modified nucleosides (e.g., LNA or BNA). Other methods are also available. Peptides can be synthesized by coupling the carboxyl group or C-terminus of one amino acid to the amino or N-terminus of another amino acid. Protecting groups are usually required due to the possibility of unexpected reactions. Chemical peptide synthesis can be liquid-phase or solid-phase synthesis, and is not limited to these. Non-limiting examples of molecular synthesis include DNA / RNA synthesis, organic synthesis (milligram to gram scale), and peptide synthesis.

[0048] "Purification" refers to methods for increasing the concentration of desired substances (such as cells, compounds, nucleic acids, or peptide molecules) in a sample, which typically involves removing substances considered impurities. Non-limiting examples of purification experiments include genomic DNA preparation, centrifugation, flow cytometry, rapid protein liquid chromatography (FPLC), rapid chromatography, HPLC (ion exchange), HPLC (reversed phase), RNA extraction, cDNA preparation, protein extraction, solid-phase extraction (TLC), thin-layer chromatography (TLC), agarose gel electrophoresis, capillary electrophoresis, cross-flow filtration (TFF), dialysis (preparative), fluorescence-activated cell sorting (FACS), HPLC (normal phase), HPLC (preparative), immunoprecipitation, gas chromatography, gas chromatography-mass spectrometry (GC-MS), liquid-liquid extraction, and supercritical fluid chromatography (SFC).

[0049] The term "amplification" used in this article refers to the process of increasing the copy number of nucleic acid fragments in a sample. The most well-known amplification method is polymerase chain reaction (PCR), including quantitative real-time PCR (qPCR) and digital droplet PCR.

[0050] "Quantification" refers to the process of determining the amount of biological substances, particularly protein or nucleic acid molecules. Non-limiting examples include total protein quantification, rapid protein liquid chromatography (FPLC), HPLC (ion-exchange), HPLC (reversed-phase), thin-layer chromatography (TLC), UV / Vis spectroscopy, Western blot, microarray analysis, flow cytometry, HPLC (normal-phase), and HPLC (preparative).

[0051] "Cell culture" includes experiments on cultured cells to grow cells or to perform experiments, such as protein expression, apoptosis assays, mammalian cell culture, transfection, bacterial cell culture, yeast cell culture, colony collection, and electroporation.

[0052] "Non-quantitative analysis" refers to any experiment other than quantitative analysis that reveals certain characteristics (such as molecular weight, molecular identity, sequence, size, purity, pH, kinetics, charge, melting point, glycosylation state). Examples of non-quantitative analysis include, but are not limited to, analytical balance readings, fluorescence microscopy, rapid protein liquid chromatography (FPLC), rapid chromatography, fluorescence kinetics, fluorescence polarization, fluorescence spectroscopy, fluorescence thermodynamics, HPLC (ion exchange), HPLC (reverse), optical microscopy, MALDI mass spectrometry, pH readings, polyacrylamide gel electrophoresis (PAGE), thermometer readings, thin-layer chromatography (TLC), UV / Visual (Vis) kinetics, UV / Vis spectroscopy, UV / Vis thermodynamics, and Western blotting. blot, volumetric analysis, agarose gel electrophoresis, atomic absorption spectrometry, atomic emission spectrometry, atomic force microscopy, capillary electrophoresis, circular dichroism (CD), confocal microscopy, dialysis (equilibration), differential scanning calorimetry (DSC), DNA sequencing (next-generation), DNA sequencing (Sanger), dynamic light scattering (DLS), electron microscopy, electrospray ionization (ESI) mass spectrometry, enzyme-linked immunosorbent assay (ELISA), HPLC (normal phase), HPLC (preparative), fluorescence in situ hybridization (FISH), gas chromatography, gas chromatography-mass spectrometry. Spectroscopy methods include GC-MS, inductively coupled plasma mass spectrometry (ICP-MS), infrared spectroscopy, isothermal titration calorimetry (ITC), liquid chromatography-mass spectrometry (LC-MS), melting point determination, microarray analysis, nuclear magnetic resonance (2D / structure), nuclear magnetic resonance (carbon), nuclear magnetic resonance (proton), patch clamp recording, photoluminescence (PSL), supercritical fluid chromatography (SFC), refractive indexing, scanning tunneling microscopy, solubility testing, surface plasmon resonance (SPR), tandem mass spectrometry (MS-MS), total internal reflection fluorescence microscopy (TIRF), and X-ray crystallography.

[0053] In some respects, the list further includes one or more of the following experiments: autoclaving, buffer preparation, liquid handling, lyophilization, rotary evaporation, speedvac concentration, vacuum filtration, virus preparation, Arabidopsis thaliana studies, bioreactors, bomb calorimetry, Caenorhabditis elegans studies, crystallization, Drosophila studies, flow chemistry, plasmid construction, sonication, tissue homogenization, ultracentrifugation, microwave reaction, and molecular cloning.

[0054] Conversion and display scripts

[0055] On interface 100, users can give instructions to the system, such as by making desired selections in the main area 102. Figure 2As shown, the instructions are for performing a "Western Blot" experiment. These instructions are translated into computer code to instruct the corresponding instruments to conduct the experiment. In some embodiments, the computer code is in the form of a scripting language. In one instance, the scripting language is Symbolic Laboratory Language (SLL).

[0056] SLL is based on Language development. Besides... Beyond its user-friendly syntax and comprehensive data manipulation and visualization capabilities, SLL includes functions, objects, and knowledge representations specifically designed for the life sciences. As used herein, unless otherwise stated, "object" refers to data structures and / or functions without further modification. Equally important, the modules have been built to interface with a wide range of laboratory instruments for efficient instrument management and data communication.

[0057] SLL can be supported on a wide variety of databases with various performance trade-offs. As used herein, the term "database" refers to a structured dataset stored in a computer, specifically a structured dataset that can be accessed in various ways. Non-limiting examples of database types include relational databases, graph databases, probabilistic databases, XML, SQL, XQuery, and NoSQL. Non-limiting examples of databases include PostgreSQL, MySQL, Oracle Relational DBMS, MongoDB, DB2, and Cassandra.

[0058] SLL provides an objective system for querying, manipulating, and displaying experimental results. The results of each experiment, including data points involved in plotting (e.g., chromatography or spectroscopy), images (e.g., gels, blots, and microscope slides), and metadata (e.g., the date of the experiment, reagents used in the experiment, the instrument used to perform the experiment, etc.), are represented as objects, processed, inserted into a database, and linked together. In one embodiment, this is achieved through pointers or "keys" that can be used to access such related but conceptually distinct information. This is particularly powerful when an object is associated with multiple heterogeneous experiments; for example, an instrument object is associated with all experiments utilizing that instrument, regardless of the precise experimental technique, sample type, etc.

[0059] This setup allows scientists to easily and compactly share data across multiple notebooks and teams without losing quantitative accuracy or any relevant details.

[0060] Furthermore, by giving people the ability to write scripts that process these objects as input and process them algorithmically, the computational system for each SLL data object allows people to abstractly process large sets of experimental data.

[0061] To more clearly illustrate SLL and some concepts of the disclosed invention as exemplified by SLL implementations, the following are non-limiting examples of SLL objects, functions, and their use.

[0062] Examples of data objects: `data[index, <type>]`, for example, `data[44,NMR]` could point to the 44th nuclear magnetic resonance (NMR) experiment performed in the laboratory, and `data[1023,MALDI]` could refer to the result of the 1023rd matrix-assisted laser desorption / ionization (MALDI) experiment performed. The exact indexing scheme is not important—neither chronological order nor any specific symbolic identifier is required; for example, a user-defined string can be used to identify an object, as long as the system can reliably determine the expected object.

[0063] Example of a function:

[0064] `info[]` retrieves information about a data object, such as `info[data[44,NMR]]`, which connects to a database and then returns a list of all data related to that experiment. In some embodiments, `info` is configured to cache the data locally, such that further calls to `info[]` will automatically reference a locally cached copy (for faster execution) instead of connecting to the database; and

[0065] inform[] - A report that calls a list of all data associated with the experiment in the form of replacement rules: It checks whether the data has been inserted into the database. If so, it returns the previously inserted data[] object; otherwise, it inserts the data into the database and returns a new data[] pointer to that object.

[0066] SLL also includes the ability to track and query the complete historical record of laboratory samples. Examples of tracking information include: information about raw materials; preoperative information obtained from the processes involved in their creation; their current properties, such as the experiments used; quality assurance (QA) information; information about their properties, such as volume, concentration, and pH; information about their inherent properties, such as chemical composition; and their physical location in the laboratory or facility.

[0067] Other examples of objects:

[0068] An object representing a physical sample: sample["sample name", <type>], for example, sample["nearest neighbor chain 4", "DNA"]. This encapsulates information about the sample, such as the raw materials used in its creation, the experimental results and dates of the production experiments involved, sample attributes such as volume, pH value, concentration, and its physical location in the laboratory (where it is stored); or

[0069] `group["set name"]`, for example, `group["nearest neighbor chain"]` refers to the set of samples you want to process in batches. A group can refer to a set of samples of any size, and a sample can be a member of multiple groups.

[0070] Protocol objects are generated based on the execution of experimental functions. For example, executing the command: ExperimentHPLC[sample[“Rough Nearest Neighbor Sequence 5”], Method->Ion Exchange, FlowRate->3 mL / min] will generate a protocol object procotol[12345, HPLC], which the system uses to guide and coordinate the generation of new physical samples (and corresponding sample objects) resulting from the purification of rough nearest neighbor sequence 5 by running a preparative ion exchange HPLC at a flow rate of 3 mL / min. In this way, experimental functions are used to guide physical activities within the laboratory from within the lab notebook. In a preferred embodiment, this is mediated by a protocol object, but other objects can also be configured. Furthermore, in a preferred embodiment, the protocol object is returned to the user.

[0071] In a preferred embodiment, the protocol object representing the experiment is placed in a queue to await processing into commands and actual actions within the actual research facility. Initially, executing any experimental function from within the notebook begins by adding the samples and instructions involved in the processing to the processing queue. The processing queue is a queue of experiments awaiting physical execution within the laboratory. In some embodiments, the management of the processing queue is performed by a human, while in other embodiments, it is managed by a computer algorithm or jointly by human and algorithmic decisions. Once an experiment is removed from the queue and executed, the user who initially initiated the experiment is notified that the experiment is complete and receives results from the experiment (samples and / or data). In a preferred embodiment, the user receives a computer object representing the samples and / or data, which allows the user to access relevant information about the results.

[0072] Furthermore, when a protocol object is retrieved from the queue and processed by the orchestration module, actual instructions for performing the specified experiment (commonly referred to in the art as an experimental protocol, and therefore as a "protocol object") are generated. The orchestration module can reside in the laboratory where the experiment is to be conducted, on a remote server, or elsewhere, as long as it can communicate with the laboratory. When an operator performs a given experiment in the laboratory, relevant aspects of the generated instructions are presented to them as a dynamic, interactive list on a computer, tablet, smartphone, or other remote device capable of sharing information. As the operator performs this process, these lists display fields marking the completion of each step, filenames from the instructions, standard observations, and even detailed notes in case of unexpected difficulties during execution. Partly due to the programmed connection of the generated instructions with experimental parameters, physical sample inputs, environmental sensors, and other contextual information, preferred embodiments also support integration with specific instrument programs and physical tracking devices (e.g., barcodes or RFID tags) for tracking source materials used during the experiment and automatically linking this information to output samples and any result data. Furthermore, the generated instructions themselves can dynamically change in response to information received from the laboratory. Those skilled in the art will readily recognize that certain steps assigned to humans by the programming module can also be assigned to the robotic system, either alone or in cooperation with humans, and these variations also require protection.

[0073] Once an instruction received at user interface 100 is converted into a computer script, the script can be displayed in script panel 103. Such a display serves multiple purposes. First, the user can confirm the instruction by comparing the script with the user's command through the graphical interface on the left. Second, users unfamiliar with scripting languages ​​(such as SLL) can familiarize themselves with the language by viewing dynamically generated scripts based on user input in the graphical user interface. Third, users can directly input scripts in the script panel or modify existing scripts. Giving users direct access to scripts further enhances their rights, as direct script writing provides greater flexibility and control. In a preferred embodiment, the script panel is part of an interpreted development environment, such as that found in Mathematica, and the script is written in an interpreted computer language (such as the SLL-based Wolfram language). Other embodiments support other interpreted and compiled languages, such as SciPy and NumPy, and compiled and interpreted development environments.

[0074] In some respects, when a user directly enters script commands in the script panel or modifies existing script commands, the additions or changes can be reflected in panel 102. For example, if the user changes the script shown in panel 103 from "experiment [protein blotting]" to "experiment [transfection]", instead of prompting the user to select protein and antibody samples, the interface will prompt the user to identify DNA and cell samples.

[0075] Sample selection

[0076] Once the experiment type is selected in step 106, the system will determine the required sample type and prompt the user to select the appropriate sample. For example, in... Figure 2 In the example, the user clicks "WesternBlot," and the system determines that such an experiment requires both protein and antibody samples, displaying two input areas, 201 and 202, respectively, for the user to identify the samples. In some embodiments, the system will determine the sample type and other parameters only when attempting to execute the function.

[0077] Samples created from scratch or identified from a data source on a computer can be sent to the facility as samples already existing in the system. When creating a sample (or entering a new sample into a data source), the user has annotation options to specify values ​​for various sample attributes, such as concentration, volume, purity, creation date, and / or the name of the laboratory or technician who prepared the sample, but is not limited thereto. In a preferred embodiment, the system is configured to require annotations of certain characteristics, such as information necessary to ensure that possible subsequence experiments can be performed.

[0078] Depending on the type of sample or experiment, the experimental design may require certain characteristics of the sample. For example, an HPLC experiment may require the pH value and concentration of a protein sample. If the user does not provide the pH value and concentration, the system will need to process the missing data accordingly. For example, the system could add a step to determine the sample's pH and concentration and then adjust them to optimal values ​​as needed. In the absence of such a determination or before such a determination, the system can use predetermined default values. The system can also prompt the user to enter missing sample attribute values.

[0079] In some respects, the system sets up deterministic steps for critical parameters (e.g., pH, concentration, volume) regardless of whether the user provides such information for the sample. This is useful if the information provided by the user is inaccurate or has changed, for example, during transport. The system can also cross-check related parameters or dependent properties to ensure internal consistency.

[0080] When selecting samples for experiments, such as Figure 3As shown, users can simply highlight the desired sample from menu 301 and drag and drop it into the appropriate area (201 or 202). As mentioned above, such sample selection will trigger the generation of the corresponding computer script, which will be displayed in the script panel 103.

[0081] In some embodiments not shown in the accompanying drawings, the user can choose to select a sample first, followed by the experiment type. In this case, when presenting the experiment types to the user, the system can filter the list of experiment types based on the sample type. For example, if a DNA sample is selected, Western blotting will not be included in the list. Users can also directly enter scripts without graphical assistance.

[0082] Experimental parameter adjustment

[0083] Once the experiment type and sample are identified, the system will present an interface to the user to set the experiment parameters (see example...). Figure 5 (Panel 501 in the diagram). It should be noted that the exact experimental parameters used for user input and / or adjustment depend not only on the type of experiment but also on the selected sample.

[0084] When presenting experimental parameters for user input or adjustment, the system can also determine a subset of parameters where the user input is preferred, desired, or necessary. For example, in Western blotting experiments, the system can determine that staining and washing times are best determined by the user compared to other parameters. Therefore, these two items may be highlighted to draw the user's attention.

[0085] In some embodiments, in addition to experimental parameters, the system also includes one or more desired experimental results determined by the user. In one aspect, the desired result is the desired concentration, desired purity, or desired weight (or copy number) of the product produced from the experiment. Once the interface receives input from the user regarding such desired results, the system can calculate appropriate experimental parameters to achieve the desired results. The desired experimental result can also be a parameter.

[0086] Parameter parsing

[0087] In some cases, the system disclosed herein ensures that all parameters of an experiment are determined (or “resolved”) and saved for future reference before the experiment is actually conducted. Such an effort has at least three advantages. First, once the experimental parameters are resolved, the user has confidence that the experiment will proceed as expected without requiring further user input, adjustments, or corrections (affected by serious malfunctions such as sample damage during transport). Second, experimental results will be reproducible because parameter resolution eliminates any parametric ambiguity for experimental execution, thus eliminating a major source of experimental inconsistency. Third, future experiments can replicate or utilize samples and underlying parameters, making data and samples generated in the distant past serve as a basis for further experimental research, such as data and samples generated yesterday, because the contextual knowledge about the experiment is not lost. In other words, this technique can achieve high predictability and reproducibility in laboratory experiments, as further illustrated below. Furthermore, it is worth noting that such procedural identification and experimental parameter resolution can only be performed within an integrated electronic system; without a machine-readable definition of the given experiment, the computer will not understand what is being requested and therefore cannot assist in determining whether the request is well-formed and adequate.

[0088] Non-reproducibility has long plagued the scientific community, particularly in the life sciences. One type of non-reproducibility stems from scientists' efforts to replicate an experiment reported in a scientific journal. For example, in efforts to quantify this non-reproducibility, experiments are conducted to determine the root causes of the problem (Vasilevsky et al., Peer J, 2013, 5 September; 1: e148). It is speculated that some inconsistencies arise from a lack of “identifiability” in the reagents, tools, and model systems used. The report found that 54% of these resources were not uniquely identifiable, making it difficult for peers to reproduce accurate test conditions.

[0089] Another type of non-reproducibility arises when someone replicates an experiment conducted earlier by the same person or another person in the same laboratory or organization. For example, it has recently been reported that "more than 70% of researchers attempting to replicate another scientist's experiment were unsuccessful, and more than half of researchers failed to reproduce their own experiments" (Nature 533, 452-454 (May 26, 2016)). This high non-reproducibility is at least partly due to ambiguity in setting and / or recording experimental parameters or conditions. In contrast, in some embodiments of the techniques disclosed herein, all experimental parameters or conditions (sometimes referred to as "options") are resolved before the experiment is performed. This process may be referred to as "option resolution" or "parameter resolution."

[0090] One aspect of parameter parsing involves parameter identification, i.e., determining which parameters and conditions need to be identified before conducting an experiment. Another aspect involves determining these parameters and conditions, including which ones can be obtained from the user. Yet another aspect involves, upon receiving user input, examining the input and providing suggestions, warnings, or automatic adjustments as needed. Each of these aspects will be described in more detail below.

[0091] The parameters and conditions determined before an experiment are typically more extensive than when similar experiments are performed routinely. Take HPLC as an example. In a routine HPLC experiment, the technician can determine the type of column, sample concentration and volume, buffer solution, and flow rate before starting the experiment. However, other parameters or conditions remain largely undecided or are part of the unrecorded knowledge of the person actually performing the experiment. Furthermore, recording parameters is crucial in scientific research because people often don't know what will be important or influential in the future, so selective or arbitrary recording carries a high risk of missing valuable knowledge.

[0092] One type of parameter typically not specified in conventional experiments is instrument preparation or calibration. For example, in the HPLC example, the parameter "rinse frequency," which specifies the frequency at which additional rinse runs are inserted between samples, is often determined by the tradition of a particular laboratory or the habits or training of its technicians. Again, this important information is not recorded or captured in a way that is relevant to a particular experiment, even though it could have a significant impact. For instance, internal experiments may have shown that certain rinse frequencies can introduce enough variability in a single experiment to render the resulting data useless, but this important piece of information is not recorded in conventional systems. Another such example is "post-rinse standard," which determines whether a standard is run after each additional rinse run. Yet another example is the amplifier gain on the photodiode in a flow cytometer; this parameter is typically set after the instrument is initially installed and then forgotten, despite its significant impact on experimental observations. However, in one embodiment of this disclosure, these instrument preparation or calibration parameters need to be identified and their values ​​determined during the experimental design step.

[0093] Another type of parameter that is often undefined in conventional experiments is post-experiment care. An example of this is the shutdown method or cleaning and rinsing procedure for an HPLC experiment. In one embodiment of this disclosure, such instrument post-experiment care parameters need to be identified and their values ​​determined during the experimental design phase.

[0094] Another set of parameters not typically determined in routine experiments are those parameters of the operations or analyses that can be performed during the experiment. Some operations or analyses may depend on certain outputs of the experiment. For example, in HPLC experiments, various partial collection parameters (e.g., start time, end time, collection mode, maximum collection volume) can be specifically determined or adjusted. However, in one embodiment of this disclosure, parameters can be determined before sample loading. For example, the user can be prompted to input criteria (e.g., a peak initiation threshold defining a signal threshold for detecting a peak) and then used to determine the partial collection parameters.

[0095] It is common for users to be unfamiliar with many of the parameters that the system sets for resolution. Therefore, in some embodiments, the system of this disclosure assists the user by including or presenting recommended values ​​for parameters. In one embodiment, recommended values ​​for parameters are predetermined in the system. For example, for analytical HPLC, the system defaults to an injection volume of 1 nanomolar without explicit user instruction; for preparative HPLC, the system defaults to an injection volume of 50 nanomolars. In another example, the system dynamically defaults to a temperature parameter of 45 degrees Celsius or 25 degrees Celsius depending on the user's selection of reversed-phase or ion-exchange HPLC. Like other parameters, the temperature value selected by the system can be overridden by the user. In a preferred embodiment, the system only requires the user to specify parameters that the system cannot resolve on its own or parameters that the user wishes to override the system's own resolution values, thereby allowing for very compact scripts. For example, the HPLC experimental functions in SLL have 43 parameters: report, accept, options, scale, selected fragment, injection volume, rinse frequency, post-rinse standard, injection volume, column, instrument, type, buffer A, buffer B, buffer C, batch standard injection volume, batch standard sample, batch standard method, rinse method, shut-off method, gradient standard, gradient standard injection volume, temperature, flow rate, detection wavelength, gradient B, gradient C, gradient start, gradient end, gradient duration, equilibration settling time, rinse time, gradient method, partial collection start time, partial collection end time, partial collection mode, maximum volume, absolute threshold, maximum slope, maximum slope duration, maximum collection time period, peak termination threshold, and partial collection method. All of these can be parsed by the system. Therefore, in a preferred embodiment, users who do not wish to override any system-recommended settings can simply input:

[0096] ExperimentHPLC [“Sample 1”]

[0097] Instead of being clumsy and terrifying:

[0098] ExperimentHPLC [“Sample 1”, Report -> User Value, Accept -> User Value, Options -> User Value, Scale -> User Value, Select Fragment -> User Value, Injection Volume -> User Value, Rinse Frequency -> User Value, Post-Rinse Standard -> User Value, Injection Volume -> User Value, Column -> User Value, Instrument -> User Value, Type -> User Value, Buffer A -> User Value, Buffer B -> User Value, Buffer C -> User Value, Batch Standard Injection Volume -> User Value, Batch Standard Sample -> User Value, Batch Standard Method -> User Value, Rinse Method -> User Value, Shutdown Method -> User Value, Gradient Standard -> User Value, Gradient Standard Injection Volume -> User Value, Temperature -> User Value, Flow Rate] The parameters are defined as follows: ->User value, Detection wavelength->User value, Gradient B->User value, Gradient C->User value, Gradient start->User value, Gradient end->User value, Gradient duration->User value, Equilibrium settling time->User value, Rinse time->User value, Gradient method->User value, Partial collection start time->User value, Partial collection end time->User value, Partial collection mode->User value, Maximum part volume->User value, Absolute threshold->User value, Maximum slope->User value, Maximum slope duration->User value, Maximum collection period->User value, Peak termination threshold->User value, and Partial collection method->User value]; where "User value" indicates the parameter values ​​that the user will specify. Importantly, regardless of whether the parameters are determined by the system or the user, all parameter values ​​will be saved for future reference. This means that users can easily rerun the exact same experiment in the future because the saved parameter values ​​can be simply copied. This can be done automatically by the system or manually by the user. The ability to flexibly specify all parameters of an experiment in an easily readable script (which is compact and computationally complete) represents a significant advancement in the field.

[0099] In another embodiment, the recommended value for the parameter depends on another parameter. For example, in one embodiment, once the system resolves the sample type, it can determine a suitable detection wavelength. For a sample identified as DNA, the system recommends setting the detection wavelength parameter to 260 nm; for a sample identified as protein, the system recommends a detection wavelength of 280 nm.

[0100] In another embodiment, the recommended values ​​for the parameters are not fixed values, but rather formulas or functions derived from inputs of another experiment or another part of the same experiment. In this case, it should be noted that in some embodiments, the system is configured to monitor the performance of the experiment, and the information collected during monitoring can be used to help determine or adjust experimental parameters in another experiment or another part of the experiment.

[0101] In one scenario, the information used to determine or adjust one or more experimental parameters is, for example, historical information from samples from earlier / upstream experiments. For instance, when the sample is a cell sample and the system has data relating to the growth rate of the cell types in the sample, historical growth rate information can be used to adjust experimental parameters to ensure the cells grow at an appropriate rate.

[0102] In another scenario, the information used to determine or adjust one or more experimental parameters is the instrument's historical information. Instruments can be calibrated periodically. Calibration results can be used to guide the adjustment of experimental parameters. Results from other experiments conducted on the instrument can also be used to adjust and optimize parameters.

[0103] In one embodiment, recommended values ​​for the parameters can be used to automatically set these parameters without further user input. This auto-filled value... Figure 5 As shown in the diagram. However, even if the system may impose certain limitations, users can still adjust any parameters as needed. Figure 6A For example, the user selects to adjust the values ​​of SampleVolume, SeparationTime, and SeparationVoltage for a selected protein blotting experiment. Once these values ​​are received, in one embodiment, the system evaluates the validity of these values. In some embodiments, only a subset of the parameters is presented to the user for consideration.

[0104] Given that some parameters are dependent on other parameters, in some embodiments, the system checks the validity of values ​​in the order in which such dependencies are observed. For example, regarding... Figure 6A The system can first check whether the values ​​of SampleVolume, AntibodyVolume, LuminalVolume, and PeroxideVolume are within the optimal, recommended, or acceptable ranges for the three parameters adjusted in the system. Therefore, it is important to note that when the system determines the recommended values ​​for a parameter, it can also determine the optimal, recommended, and acceptable ranges for that parameter.

[0105] Furthermore, the resolution of some parameters depends on the values ​​of other parameters that themselves need to be resolved. Various parameters can be resolved based on formulas or functions, thus the full resolution can depend on the resolution of a complex series of interrelated functions. It is important to note that, in a preferred embodiment, the logic used for this is not necessarily explicitly programmed into the system; instead, resolution is naturally handled by a chosen sequential resolution, similar to the resolution of recursive function calls in computer science.

[0106] Then, the system evaluates the values ​​of Separation Time, Separation Voltage, Stacking Time, and Stacking Voltage to ensure they are suitable for this specific experiment, provided it has the values ​​of SampleVolume, AntibodyVolume, LuminalVolume, and PeroxideVolume that were evaluated in the previous step. Figure 6B In the example shown, the system determines that the user-supplied Separation Voltage is too high, and therefore displays a warning in the right panel.

[0107] According to certain embodiments of this disclosure, after the user completes the design of the experiment (e.g., clicks...), Figure 6A After clicking the "Execute Experiment" button on the interface of 6B, no further user input is required to complete the experiment. In one embodiment, input refers to information concerning sample manipulation. In one embodiment, input refers to information about reagent selection. In one embodiment, input refers to information about instrument adjustment, preparation, setup, or calibration. In one embodiment, input refers to information about collecting output samples from the experiment. In one embodiment, input refers to information about further processing of output samples from the experiment. In one embodiment, input refers to information about setting environmental parameters for the experiment. In one embodiment, input refers to information about storing or displaying experimental results.

[0108] Receive and load samples

[0109] Because the currently available systems enable the computational description of experiments, experiments can be performed remotely via machines or a combination of machines and humans, thus realizing a version of the cloud experiment concept. Therefore, in some embodiments, in addition to working through a computer interface, users only need to send samples to the location of the system's instruments (i.e., the laboratory) without taking any other physical action.

[0110] Samples can be sent before or after information about the sample is entered into the system. However, typically, at least some basic information about each sample is already present before it is received by the laboratory. For example, each sample is given a name or identification number, and the preferred sample type (e.g., DNA sample, protein sample, cell line). In some cases, other information, such as concentration, pH value, preparation data, molecular weight, etc., is also entered into the system.

[0111] Once a sample is received in the laboratory, it can be examined before being placed in storage or loaded into an instrument. Examinations may include, but are not limited to, measurements of concentration, temperature, volume, weight, and / or pH. Adjustments can be made if user-provided information differs, or the quality or storage properties of the sample can be labeled.

[0112] In some embodiments, experimental parameters used for experiments are adjusted based on such measurements. In one case, the measurement results differ from those provided by the user on the interface. This could be due to, for example, sample degradation or moisture loss during transport. In another case, the system may use default values ​​in the experimental design when certain parameters are not set by the user.

[0113] Composite Experiment

[0114] The capabilities of the laboratory system disclosed herein are reflected not only in its ability to automate a large number of simple and complex experiments, but also in its ability to design and execute composite experiments. A “composite experiment” refers to an experiment comprising at least two component experiments, where the output of one component experiment is the input sample of the other. Furthermore, the two component experiments may be of different types, such as molecular synthesis, purification, amplification, quantification, cell culture, and analysis. In some embodiments, a composite experiment comprises at least three different types of experiments. In some embodiments, the system is capable of supporting composite experiments with any number of different experiments, limited only by available resources. Parts of a composite experiment may occur over time, as one part depends on the output or result of another part. Parts of a composite experiment may be performed in series or in parallel. The execution of a part of a composite experiment may depend on the user first reviewing the results of the other part of the composite experiment and adjusting the composite experiment as needed. A composite experiment does not need to be fully specified before execution begins; for example, the user can create or extend a composite experiment by adding additional component experiments over time. In practice, certain embodiments are capable of reproducing the overall experiments comprised of analytical chemistry, cell biology, and / or molecular biology techniques detailed in any life science publication.

[0115] One example of a complex experiment includes nucleic acid synthesis (synthesis), followed by nucleic acid purification (purification), nucleic acid quantification (quantification), then nucleic acid amplification (amplification), and finally sequencing (analysis). In another example, a complex experiment includes protein expression (cell culture), followed by protein purification (purification) and ELISA (quantification).

[0116] Once one component experiment in a complex experiment is completed, the system collects an appropriate output sample from that component experiment, which can optionally be followed by suitable sample analysis. For example, for a polynucleotide example, concentration and volume can be checked. Concentration, dilution, pH adjustment, etc., can be performed if needed. The output sample is then transferred to the instrument for the next component experiment. The experimental parameters for the next component experiment can also be adjusted immediately based on sample analysis and subsequent adjustments.

[0117] A composite experiment may further include one or more component experiments that "branch in" or "branch out" from the basic compound experiment. The branch-in component experiment generates samples or data, which, together with the output samples and / or data or the second component experiment, form the input to the third component experiment. In contrast, the branch-out component experiment shares the input samples or data generated from the third component experiment with the second component experiment. Data collected in each component experiment can be used to automatically or based on user input to adjust the experimental parameters of any other component experiment.

[0118] Parameter analysis when designing composite experiments may require considering the relationships between individual experiments within the composite experiment. Please refer to the following example of a composite experiment with seven techniques:

[0119] Phase I:

[0120] 1) Experiment DNA Synthesis => Generate DNA Sample

[0121] 2) Experiment HPLC (ion exchange) => Purification of the sample generated in (1)

[0122] 3) AnalyzePeaks => Analyze the peaks generated in (2) and select a portion of the sample for stage II based on these peaks:

[0123] Now, take a portion of the samples selected in (3) and execute the following four experiments in parallel, or in any order required by the user. Each experiment will generate data for further analysis:

[0124] 4) Experiment HPLC (Analytical HPLC experiments)

[0125] 5) Experiment PAGE

[0126] 6) Experiment Mass Spectrometry

[0127] 7) Experiment Absorbance Quantification

[0128] Phase III:

[0129] Perform any one or more analyses in any order:

[0130] 8) AnalyzePeaks

[0131] 9) PlotPAGE (PAGE curve)

[0132] 10) Plot Mass Spectrometry (quality analysis curve)

[0133] 11) Analyze Absorbance Quantification

[0134] In this example, a particular consideration for parameter resolution is that the ExperimentHPLC experiment in step (4) can inherit many parameters from the ExperimentHPLC run in step (2). Therefore, once the parameters of step (1) are resolved, the user involved in step (4) requires little or no input. Advantageously, this also reduces the chance of errors due to unintentional changes in parameter values ​​between (1) and (4), which could occur in manual settings where many parameter values ​​were not explicitly considered or recorded. Furthermore, after processing and analyzing the above steps, one or more of the following experiments can be performed on the output sample:

[0135] 12) Experiment Absorbance Thermodynamics

[0136] 13) Experiment Fluorescence Kinetics

[0137] 14) Experiment Transfection

[0138] Please note that the aforementioned composite experiment was not pre-configured by a professional; users can modify it in any way, or do entirely other things. Any physically permissible combination can be performed on the disclosed invention, which differs from, for example, high-throughput screening systems. The difference in capability is analogous to that between a general-purpose computer and a calculator; the flexibility and generality of the disclosed embodiments allow for capabilities that were previously impossible. As another example, the following is excerpted from the methods section of an article published in *Nature Biotechnology*: "*Escherichia coli* K-12 strain BW25113 (genotype: F-, Δ(araD-araB)567, ΔlacZ4787(::rrnB-3), λ-, rph-1, Δ(rhaD-rhaB)568, hsdR514) was used to generate proteomic maps for all 22 conditions. Mutants with missing rimL, rimJ, or rimI genes were extracted from the KEIO set. The correctness of the deletions was detected by PCR. Furthermore, proteomic analyses of glucose and LB conditions were performed on strains MG1655 (genotype: F-, λ-, rph-1) and NCM3722 (genotype: F+)." Alexander Schmidt et al., *The quantitative and condition-dependent Escherichia coli proteome*, *Nature Biotechnology*. Biotechnology, 34, 104-110 (December 7, 2015). This can be represented in SLL as:

[0139] strain

[0140] baseLine = model["BW25113", cell];

[0141] rimLLine = model["BW25113ΔrimL", cell];

[0142] rimJLine = model["BW25113ΔrimJ", cell];

[0143] rimILine = model["BW25113ΔrimI", cell];

[0144] altCellLines = {model["MG1655", cell], model["NCM3722", cell]};

[0145] Primers

[0146] rimLFowardPrimer = model["rimLFoward", oligomer];

[0147] rimLReversePrimer = model["rimLReverse", oligomer];

[0148] rimLBeacon = model["rimLBeacon", oligomer];

[0149] rimJFowardPrimer = model["rimJFoward", oligomer];

[0150] rimJReversePrimer = model["rimJReverse", oligomer];

[0151] rimJBeacon = model["rimJBeacon", oligomer];

[0152] rimIFowardPrimer = model["rimIFoward", oligomer];

[0153] rimIReversePrimer = model["rimIReverse", oligomer];

[0154] rimIBeacon = model["rimIBeacon", oligomer];

[0155] experiment

[0156] ExperimentcDNAPrep[{rimLLine,rimJPrimerSet,rimIPrimerSet},

[0157] PBSSample->model["PBS",storage solution],LysisSolutionSample-

[0158] >model["ABIcDNAPrepLysis",Chemistry],MediaVolume->150 µL

[0159] Wash Volume: 100 microliters, Anealing Temperature: 45 degrees Celsius

[0160] protocol[123123,cDNAPrep]

[0161] lysisSamples=SamplesOut / .Info[cellPrep]

[0162] {sample[12451,Lysate],sample[12452,Lysate],sample[12453,Lysate]}

[0163] ExperimentqPCR[lysisSamples,FowardPrimers->{rimLFowardPrimer,

[0164] rimJFowardPrimer,rimIFowardPrimer},ReversePrimers->{rimLReversePrimer,

[0165] rimJReversePrimer,rimIReversePrimer},Beacons->{rimLBeacon,rimJBeacon,

[0166] rimIBeacon}, TemplateVolume->2 μL, ForwardConcentration->0.5 μmol,

[0167] Reverse Concentration: 0.5 micromoles; Beacon Concentration: 250 nanomoles.

[0168] Denaturation Temperature: 95 degrees Celsius; Denaturation Time: 15 seconds

[0169] AnnealingTemperature->60 degrees Celsius, AnnealingTime->30 seconds, NumberOfCycles->50

[0170] protocol[123141, qPCR]

[0171] qPCRData=Data / .Info[protocol[123141,qPCR]]

[0172] {data[124584,qPCR],data[124608,qPCR],data[124602,qPCR]}

[0173] PlotObject[qPCRData].

[0174] The example curve generated by this command is in Figure 12C As shown in the image.

[0175] Note that the invention disclosed herein is not specifically designed to perform the experiments described herein. Instead, the system's flexibility is highlighted by its ability to reconstruct any experiment utilizing any technology it supports, such as the experiments described herein. Furthermore, note that several parameters specified in the aforementioned SLL script were ambiguous in the source file, and were clearly resolved by using the SLL script in conjunction with other aspects of the invention disclosed herein. Additionally, if the same experiment needs to be rerun in the future, the user only needs to refer to the experiment-related object, such as protocol[123141, qPCR], to extract the exact parameters used in the experiment, thus enabling retrieval of a truly complete description of all steps taken in the experiment. Moreover, while the function calls to the qPCR experiment functions are complete, they are very compact: for example, ExperimentqPCR requires 42 parameters, but only 12 are specified by the user, in this example overriding the default values ​​resolved by the system to match the description herein. The system still retains the values ​​for all 42 parameters, whether user-specified or system-specified.

[0176] Furthermore, the remainder of the experiments disclosed herein could also be represented using SLL scripts, but this is not done for the sake of brevity. The inventors are unaware of any system capable of such flexibility and scale. The fundamental point is that the invention disclosed herein possesses a high degree of flexibility, enabling the representation and execution of a wide variety of experiments for extensive scientific research, including basic research and development.

[0177] Generation of experimental protocols

[0178] In some embodiments, once the experimental design is completed and submitted by the user, the system generates an experimental protocol object based on the design, which may include the results of parameter parsing. In some embodiments, given the completeness of parameter parsing, the protocol object may also be considered computationally complete, i.e., requiring no further user input to describe the expected experiment, and serving as a series of instructions to instruments (and optionally, technicians) to conduct the experiment.

[0179] To generate experimental protocols for use in a laboratory, in some embodiments, the system processes a protocol object and resolves correlations between steps, samples, reagents, and / or task scheduling (e.g., parallelism, equipment availability, potential bottlenecks, physical distances between instruments in the laboratory, location of relevant samples, etc.) to generate an experimental protocol to be followed in the laboratory. This resolution may require information unavailable to the system portion that created the protocol object (e.g., the user's local computer). The experimental protocol may include machine code for controlling robots and / or instruments, including API (Application Programming Interface) calls, and individual instructions to be executed by a person as needed. In some embodiments, the experimental protocol is generated and included in the protocol object when it is created. In a preferred embodiment, the experimental protocol is created when the protocol object is processed by an orchestration module associated with a specific laboratory. The creation of the protocol object can occur on any computer, such as the user's computer, a remote computer server, or a computer located in the laboratory. The processing of the protocol object can also occur on any computer, such as the user's computer, a remote computer server, or a computer located in the laboratory.

[0180] In some embodiments, a user interface can be used in the laboratory to present instructions that may require a technician to perform certain steps, such as retrieving reagents from a warehouse. Therefore, in some embodiments, a list of instructions may be presented sequentially to the technician, and optionally, the system receives confirmation upon completion of each instruction. The technician may perform confirmation (e.g., by scanning a barcode on the reagent packaging) or automatically from an instrument (e.g., the instrument senses that a sample has been loaded).

[0181] Protocol objects serve to coordinate the design, execution, and data recording of experiments. As provided, protocol objects are generated based on the execution of experimental functions. Protocol objects can guide and coordinate the generation of new physical samples, including the generation of corresponding sample objects. Furthermore, protocol objects can interact directly or indirectly with instruments and / or technicians to perform experiments, monitor the experimental process, and record the data generated.

[0182] Execution of the experiment

[0183] The system disclosed herein can be configured according to the needs of its users. In some embodiments, the system includes interconnected or individually connected computers (in...) to a central server. Figure 18 (As shown in the diagram, a workstation). The data source (such as a database) may reside on one of the computers, but is preferably located on a remote server (such as a computer in a data center).

[0184] The system may also include one or more laboratories equipped with scientific instruments (in Figure 18(Illustrated as a laboratory); each laboratory and its instruments communicate electronically with one or more computers in the system. In one aspect, the system includes at least one laboratory instrument for each type of experiment (e.g., synthesis, purification, amplification, quantification, cell culture, and analysis). In one aspect, the system includes at least laboratory instruments for purification, amplification, and quantification. In one aspect, the system includes at least laboratory instruments for purification, quantification, and cell culture. In one aspect, the system includes at least laboratory instruments for purification, analysis, and cell culture.

[0185] In some aspects, the laboratory equipment is configured to perform at least HPLC, PCR, and incubation. In other aspects, the system also includes a liquid handling station, flow cytometer, centrifuge, DNA synthesizer, pH meter, and microscope.

[0186] In some aspects, the system also includes various sensors for monitoring the experimental environment and an HVAC (heating, ventilation, and air conditioning) system for controlling the environment. In one aspect, the system includes at least a temperature sensor, a pressure sensor, a humidity sensor, and / or a light sensor, each of which is connected to the system's computer. Relatedly, sensor data is recorded in correlation with experimental data before, during, and / or after the experiment for future data analysis and troubleshooting.

[0187] The program code, compiler, and parser can be stored on one or more computers that enable instrument operation, monitoring, data collection, and analysis. In some aspects, the program code configures the system to present a graphical user interface, allowing users to design experiments, monitor experiments, and review and analyze experimental results, as illustrated in the accompanying figures. The program code, parser, or compiler does not need to be stored locally on any computer executing any aspect of the system.

[0188] Data integration module

[0189] Figure 8-10 This section displays some data visualization interfaces generated by the system. Such interfaces are implemented by various objects, programs, and functions (also referred to herein as "modules") within the SLL system. Non-limiting examples of objects and functions include "Experiment," "Data," "Analysis," "Sample," "Instrument," "Control," "Inventory," "Maintenance," "Operator," "Company," "Model," "Report," "Calibration," "Container," "Method," "Model," "Component," "Product," "Program," "Sensor," "Simulation," and "Environment." In many cases, a term can be associated with both an object and a function; for example, an experimental object and an experimental function can coexist.

[0190] The "Experiments" module is configured to display information about experiments. For example... Figure 9 As shown, the "Experiment Panel" 901 may include an optional image 902 for easy identification of the experiment type (e.g., flow cytometry). Furthermore, the information displayed on the panel may include (column 903 represents the information type, and column 905 provides details):

[0191] -Operator: Experiment Operator

[0192] -Instrument: The instrument used for conducting experiments.

[0193] -Samples In: Samples used in the experiment

[0194] -Data: Data generated from the experiment

[0195] -Environmental: An identifier for environmental records that display measured environmental data (such as temperature, air pressure, and humidity in a laboratory).

[0196] -Date: The date and time of the experiment.

[0197] - Other information for this type of experiment, such as flow rate and channel.

[0198] It's important to note that each of these information categories can embed links or other computational mechanisms to other modules. For example, when a user clicks on instrument row 905, the instrument module (details below) will be invoked and a new panel will be displayed, showing information about the instruments used in the experiment.

[0199] The “Data” module, also known as the “Analysis” or “Graphing” module, is configured to display a visual representation of at least a portion of the data generated from the experiment on the panel (e.g., Figure 8 (Data panel 801 in the example). For any dataset, there are typically multiple methods to extract relevant data for analysis, as well as various methods to analyze and visualize the data. In one embodiment, the data module is configured to automatically determine appropriate data extraction, analysis, and visualization methods, while still allowing the user to employ other available methods.

[0200] For example, recognizing Figure 8 The data is taken from a flow cytometry dataset, and the data module generates a scatter plot 802 by default at an appropriate scale immediately determined for that specific dataset. Note that this functionality typically depends on accurate parameter resolution. For some more complex experimental data, multiple data entries can be generated (e.g., displayed as multiple entries on the Experiment module panel), each guiding the user to a different data analysis or visualization panel.

[0201] Similar to the Experiment panel, the "Data" panel includes information related to the data (see column 803 for information types and column 804 for details):

[0202] - Experiment: An experiment from which data is generated.

[0203] -Figures: Graphics generated by the instruments during the experiment or graphics derived from the data.

[0204] -Analysis: Analysis of the available data

[0205] -Date: The date and time of the experiment.

[0206] - Additional information specific to this type of data, such as gating and clustering.

[0207] Each of these information categories can embed a link to another module or other computational mechanism. For example, when a user clicks on experiment row 805, the experiment module will be invoked and information related to the experiment will be displayed.

[0208] The "Analysis" module displays data analysis and related visualizations, such as:

[0209] -Source Data: Data used to generate the analysis.

[0210] -Processed Data: Data that is processed for analysis.

[0211] -Figures: Graphics generated for analysis

[0212] -Date: The date and time of the analysis.

[0213] - Other information specific to the analysis, such as technical details of the analysis (e.g., for cluster analysis, the K-means used for clustering and the Euclidean distance used for similarity measurement).

[0214] Each of these information categories can embed links to other modules or other computational methods. For example, when a user clicks on Source Data, the system will cause the data module to display information related to the data used for analysis.

[0215] The "Sample" module is configured to display information about samples, which can be samples provided by the customer, samples provided by the supplier, or samples generated from experiments and received in the laboratory. This information may include, for example:

[0216] - Supplier: The person or company that provides the sample.

[0217] -Experiment: An experiment conducted on a sample.

[0218] -Source Experiment: The experiment that generates samples.

[0219] -Container / Location: Identifier of the container and / or location where the sample is stored.

[0220] -Model: The entity type of the sample and its related domain, parameters, etc. (e.g., chemical structure, protein sequence, cell type).

[0221] -Control: Identify suitable control samples

[0222] -Date: The date and time the sample was generated or received.

[0223] - Other sample-specific information, such as type, solvent, and concentration.

[0224] Each of these information categories can embed a link to another module or other computational methods. For example, when a user clicks the Source Experiment field, the system will invoke the Experiment module to display information related to the experiment that generated the sample.

[0225] The "Instruments" module is configured to display information about the instruments. For example... Figure 10 As shown, the information displayed on panel 1001 may include, for example, the instrument shown in Figure 1002:

[0226] - Model (see column 1003): Instrument manufacturer model (see column 1004) (Do not confuse with the general concept of a model or model object in SLL)

[0227] -Experiments: Lists the experiments that have already been run on the instrument.

[0228] -Maintenance: Lists the maintenance performed on the instrument.

[0229] -Controls: Control experiments / samples run on the instrument.

[0230] -Data: Datasets generated from experiments run on the instrument.

[0231] -Date of Installation: The date and time the instrument was installed.

[0232] -Visualization: Images of the instrument

[0233] -Manual: Manual file

[0234] - Other instrument-specific information, such as serial number and software.

[0235] Each of these information categories can embed links to other modules or other computational methods. For example, when a user clicks on an experiment listed under Experiments, the system will invoke the Experiments module to display information related to the experiment running on the instrument. Due to the linking nature of the objects, it is easy to run highly flexible and unique queries, such as viewing all samples that appeared in the experiment (protocol[123,Western][SamplesIn] or similarly SamplesIn / .Info[protocol[123,Western]]) or viewing all peak acquisition analyses performed on Western spectroscopy (protocol[123,Western][Data][PeaksSourceSpectra] or similarly PeaksSourceSpectra / .Info[Data / .Info[protocol[123,Western]]]).

[0236] The "Control" module is configured to display information related to control experiments performed with one or more samples on the instrument for calibration and / or quality control purposes. In some embodiments, the Control module is an experimental module that displays control experiments. The information that the Control module may present includes, for example:

[0237] -Sample: The sample used for the control experiment.

[0238] -Instrument: The instrument used for conducting control experiments.

[0239] -Result: Indicates whether the control experiment passed.

[0240] -Data: Data generated from the control experiment

[0241] - Expected Values: The expected values ​​or ranges of values ​​for certain data points in the results.

[0242] - Visualization: Data visualization derived from data

[0243] -Date: The date and time the control experiment was run.

[0244] - Additional information specific to control experiments, such as the type of control.

[0245] Each of these information categories can embed a link to another module or other computational method. For example, when a user clicks on an instrument, the system will invoke the instrument module to display information related to the instrument.

[0246] The "Inventory" module is configured to display information about sample lists, experiments, and / or data of users within a user group (e.g., a company). The information that the Inventory module can provide includes, for example:

[0247] -Samples: Lists samples provided or generated by users or user groups.

[0248] -Experiments: Lists experiments designed or run by users or user groups.

[0249] -Data: Data generated from the listed experiments.

[0250] -User: A user or user group (e.g., a company).

[0251] - Additional list-specific information, such as the last edit time.

[0252] Each of these information categories can embed a link to another module or other computational method. For example, when a user clicks on a sample, the system will invoke the sample module to display information related to the sample.

[0253] The "Environment" module (sometimes also called the "Sensor" module) is configured to display environmental information collected during experiments. It is understood that environmental factors such as temperature and air pressure within the laboratory can affect experiments. Nevertheless, these environmental factors are often not considered when designing, executing, and recording experiments, perhaps due to a lack of appropriate integration systems or an understanding of their importance. In this technique, environmental variables are strictly controlled, and their details are recorded for post-experiment analysis. Non-limiting examples of environmental factors include temperature, air pressure, people, brightness, and air purity (e.g., PM2.5). An environment module according to one embodiment of this disclosure is configured to display measurements of any one or more environmental factors and correlate them with the ongoing experiment. Factors may be general or local, such as the temperature in the laboratory versus the temperature near a specific liquid processor.

[0254] In addition to this, the system also includes the following modules: a "Maintenance" module for displaying instrument maintenance information, a "Model" module for displaying entity information of a specific sample (e.g., chemical structure for a chemical sample, protein sequence for a protein sample, cell type for a cell sample), a "Report" module for displaying aggregate information related to any substance in the system (e.g., literature related to the model), an "Operator" module for displaying information about the operator performing the experiment (e.g., loading a sample into the system), and a "Company" module for displaying information about the company (e.g., the instrument supplier).

[0255] Data mining and visualization

[0256] The integrated laboratory system and data integration module enable users to mine any experiment-related data collected by the system in a user-friendly manner. Figure 14-17 Some examples are shown below. The following examples are presented in a manner that requires user interaction via a graphical user interface. On the graphical user interface, users can view certain displayed information about modules and interact with the system by clicking links or through other input mechanisms. However, such examples are for illustrative purposes only, as those skilled in the art will readily understand that data mining within a system does not necessarily require visualization, let alone graphical visualization. Furthermore, navigation through different modules does not require mechanical action from the user and can be performed using only machine-readable code or instructions. Therefore, a click in the following examples can be understood as calling a function or executing a command.

[0257] exist Figure 14 In this context, when a user opens the panel to invoke the project's experiment module via a command (such as clicking or entering an appropriate script), the experiment module displays information related to the experiment in the project on the panel. In this example, the experiment is a flow cytometry experiment (top box, see also...). Figure 9 On the panel, users can click on links embedded in text indicating the data generated by the experiment (see...). Figure 9 (The second to last line), and invoke the data module to display a new panel (data panel, see also...). Figure 8 ).

[0258] In addition to the text information links in columns 803 and 804, the data panel displayed by the data module also shows an optional graph 802. This graph does not need to represent all the data generated from the experiment. Furthermore, in some respects, its generation does not require user input because the graph provides an overview of the data. Therefore, in some aspects, the system automatically selects data extraction / transformation and visualization techniques to present the data. For example, for flow cytometry data, the data module automatically selects a scatter plot and scales it to accommodate at least 95% of the available data points.

[0259] Like the Experiments panel, the Data panel also contains links to other modules / panels. For example, link 805 directs the user back to the Experiments panel.

[0260] Because datasets can be analyzed in multiple ways, the data panel can also include links to multiple instances of the analysis module (in...). Figure 14 (Shown as two analysis module blocks). Here, one analysis is used for gating, and the other for clustering. When invoked, the analysis module can display the source data, details of the analysis method, and analysis results, but is not limited to these.

[0261] In addition to generating analysis panels from datasets produced by experiments with little or no user input, the system can also create a report from the analysis results. Externally, when a user clicks the report link on any analysis panel, a panel displaying the report will appear in the reporting module.

[0262] On one hand, the report panel displays a collection of information related to the experiment. Similar to the analysis panel but unlike traditional reports, the report panel can be dynamic because it is supported by an integrated data source and connected to laboratory instruments.

[0263] For example, Figure 12A A dynamic graph that can be included in the analysis and reporting panel is shown. Here, a time-dependent concentration curve (1204) for enzyme kinetic simulation is presented, which can be used for comparison with actual experiments. Above the curve, there are three movable bars (1203), allowing the user to change them and see the simulation results of these changes instantly. Even on the curve, if the user moves the cursor to a specific point (e.g., 1205), the user will be able to adjust the curve to suit their needs. It can also be seen that script 1201 is used to generate the visualization, and any changes to the script can result in an update or regeneration of the visualization.

[0264] Figure 15 Another scenario is illustrated where the user can check the instruments used in the experiment by clicking on the experiment panel, and then control the experiment performed on the instrument. The control example can be the most recent control experiment before the actual experiment, or the experiment closest to (and after) the actual experiment. In some respects, if the instrument is capable of handling different types of samples and experiments, the control experiment can be of the same type as the actual experiment.

[0265] exist Figure 16In the system, when a user clicks the link for a sample (cell sample) used in an experiment (flow cytometry), the user can check another experiment (cell staining) performed on the sample. Then, by displaying a panel showing the staining experiments, the user can view different samples used for staining (e.g., chemical samples). Through the sample panel, the user can access the model panel, which displays the chemical structure, supplier (again, supplier information on the company panel), and other information related to the chemical entity of the chemical sample (e.g., mass spectrometry data available for the chemical entity). Additionally, from both the chemical sample panel and the model panel, the user can click the data and control links to view NMR data for relevant control samples and chemicals of that chemical entity.

[0266] Figure 16 The example in the text emphasizes the system's ability to correlate different experiments using ordinary samples, while Figure 17 The example in the text demonstrates the system's ability to perform complex experiments.

[0267] exist Figure 17 In this study, cell sample 20943 was run in a flow cytometry experiment. Cells collected after the flow cytometry experiment were then subjected to a cell staining experiment, which identified certain cells (19423) as outputs. These output cells were subsequently run in a cell division experiment, which generated data and data analysis. The identified samples were intended to be of a specific type (Model 21). If users are interested in learning more about cell types, they can find literature information by clicking the report link on the model panel.

[0268] All these abilities and other abilities are partially represented in Figure 11 In the diagram, each dashed line represents a connection that allows users to navigate between connected panels via links presented on their interface. The interconnectivity of the system can be summarized as follows: Figure 3 middle.

[0269] Figure 12B and Figure 12C Two graphs are shown, illustrating the advantages of this technology compared to traditional technologies. Figure 12BIn the PlotMassSpectrometry graph, the vertical straight line (indicated by the arrow) indicates where the system estimates the peak should be. This is only possible through the integration of experimental design, execution, and analysis. The PlotMassSpectrometry function accesses a data object containing the raw mass spectrometry data entering the graph, unlinks it to the sample object associated with that data object, then unlinks it to the model object associated with the sample (which includes the putative nucleic acid sequence of the sample), and then calculates the molecular weight of the sample based on the information in the model object, as well as the molecular weights of the n-1, n-2, and n-3 truncated versions of the sample. For example, if the model indicates the sample is ATGCATATGC, it calculates the molecular weights of ATGCATATGC, ATGCATATG, ATGCATAT, and ATGCATA. This is helpful because it is expected that the synthesis process will sometimes terminate prematurely, so the sample should have a peak corresponding to its shorter chain. For visualization purposes, the PlotMassSpectrometry function then centers the graph around the calculated expected molecular weight of the sample. For example, such integration is advantageous if someone wants to view the base sequence of a measured sample several years from now and then resynthesize the same sample for their own experiments. This is very difficult and impossible in the art, but can be done without hindrance by the disclosed invention; it can be done with a single-line script, such as data[38913, mass spectrometry][SamplesIn][Model][Strand], or similarly, Strand / .Info[Model / .Info[SamplesIn / .Info[data[38913, mass spectrometry]]]], which retrieves the sequence and can then be input into a new synthesis experiment.

[0270] This advantage stems from an embodiment of the tightly integrated system disclosed herein, where the analysis functions can trace data all the way back to the functions that generated the data and queried the experimental settings. Parameter checks on the experiment side of the user interface ensure that all necessary information is specified when the experiment is set up. This integration helps ensure the execution of experiments, and also ensures the accuracy of analysis results data, leveraging this assurance to support a more robust analysis experience.

[0271] Another example highlighting the advantages of integration is Figure 12C The PlotQuantificationCycle curve is shown below. Here, to determine the upper limit of the visualization, the plotting function accesses the experimental protocol to obtain the number of cycles specified for the experiment, and then sets the upper and lower limits (indicated by arrows) based on the actual number of cycles executed. The remaining data can be considered spurious, as the function knows that only n cycles have run. Discarding spurious data improves the automatic calculation of appropriate inflection points (circles).

[0272] Therefore, in one embodiment, the data analysis method of this disclosure needs to include reference data that is not directly generated from the experiment in the analysis of the experiment (this experiment). An example of such reference data could be values ​​of experimental parameters provided by the user, calculated by the system using input from the user, or calculated by the system without using any input from the user. Another example of such reference data could be information about the instrument, such as the instrument calibration method.

[0273] Another example of such reference data could be the environmental conditions under which this experiment was conducted, including but not limited to temperature, brightness, and humidity. Importantly, in yet another example, the reference data is derived from any information relating to experiments preceding this one and is preferably associated with this experiment. Such preceding experiments could be those that produced the samples used in this experiment, analyzed the samples in this experiment, or revealed the limitations of this experiment. In some embodiments, the reference data imposes limitations on the interpretation of this experiment, cleanses the results of this experiment (e.g., eliminates irrelevant, invalid, or less important portions of the data), or serves as a standard or control for this experiment. In some embodiments, data from previous experiments are used to interpret the results of this experiment.

[0274] In one embodiment, this disclosure provides a system for developing scientific experiments. The system may include memory, a processor, instrumentation, and certain software environments and modules. Figure 19 As shown, system 1900 can conceptually be divided into two parts: some modules reside on the client computer (1901), while others can be considered more directly related to the laboratory setup (1902). They can be connected via a database (1903) on a remote server. As will be readily understood by those skilled in the art, Figure 19 The configurations shown are for illustrative purposes only and do not limit how the system can be configured.

[0275] In one embodiment, the system includes an experimental module (1904), a parameter parsing module (1905), and a user interface module (1906). In some embodiments, two or more experimental modules are included in the system's software-based development environment, each of which includes one or more parameters and one or more criteria for each parameter, and is configured to generate instructions for performing experimental techniques using one or more parameters.

[0276] Experiment module 1904 communicates with user interface module 1906, which can present a user interface (1907) on which the system can receive commands from the user to execute two or more experimental techniques. Each command may include input values ​​for one or more parameters for one of the experimental techniques. These input values ​​can be referenced in parameter parsing module (1905) for parameter parsing. For example, for each parameter that receives an input value, the parameter parsing module determines whether the input value is valid based on at least one criterion for the parameter. Such determination can also be obtained from the experiment module. Furthermore, for each parameter that does not receive an input value but whose input value can be calculated, the parameter parsing module calculates the value based on at least one criterion for the parameter. Subsequently, if at least one parameter lacks an input value, the parameter parsing module can generate a warning.

[0277] After parameter parsing, experiments can be saved and executed, or in some implementations, two or more experimental techniques can be saved and executed. Information can be stored in a database (1903) that can be retrieved by other parts of the system. The execution of experiments can be coordinated by an orchestration module (1909) that interacts with technicians (1910) to perform (and verify) certain steps of the experiment (e.g., sample positioning). The orchestration module can also instruct sensor modules (1908) to monitor various experimental and environmental conditions. The execution of experiments can be controlled by an execution module (1911) that calls upon various instruments (1913) in the laboratory, sending data or reports to a reporting module (1912). Each of these modules can interact directly or indirectly with the orchestration module.

[0278] like Figure 19The system shown can be adapted to perform two or more experimental techniques, or three or more, four or more, or five or more experimental techniques. In some embodiments, experimental techniques selected from the group consisting of: analytical equilibrium readings, apoptosis assays, autoclaving, buffer preparation, centrifugation, DNA / RNA synthesis, epifluorescence microscopy, rapid protein liquid chromatography (FPLC), rapid chromatography, flow cytometry, fluorescence kinetics, fluorescence polarization, fluorescence spectroscopy, fluorescence thermodynamics, genomic DNA preparation, HPLC (ion exchange), HPLC (reversed phase), optical microscopy, liquid handling, lyophilization, MALDI mass spectrometry, mammalian cell culture, pH readings, polyacrylamide gel electrophoresis (PAGE), polymerase chain reaction (PCR), protein extraction, and quantitative analysis. qPCR, RNA extraction / cDNA preparation, rotary evaporation, solid-phase extraction, vacuum centrifugation and evaporation concentration, thermometer reading, thin-layer chromatography (TLC), total protein quantification, transfection, UV / Vis kinetics, UV / Vis spectroscopy, UV / Vis thermodynamics, vacuum filtration, virus preparation, quantity checking, Western blotting, agarose gel electrophoresis, Arabidopsis thaliana research, atomic absorption spectrometry, atomic emission spectrometry, atomic force microscopy, bacterial cell culture, bioreactors, bomb calorimetry, C. nematode research, capillary electrophoresis, circular dichroism (CD), colony picking, confocal microscopy, cross-flow filtration (TFF), crystallization. Dialysis (equilibrium), dialysis (preparative), differential scanning calorimetry (DSC), digital droplet PCR, DNA sequencing (next-generation), DNA sequencing (dideoxygenation), Drosophila research, dynamic light scattering (DLS), electron microscopy, electroporation, electrospray ionization (ESI) mass spectrometry, enzyme-linked immunosorbent assay (ELISA), flow chemistry, fluorescence activated cell sorting (FACS), fluorescence in situ hybridization (FISH), gas chromatography, gas chromatography-mass spectrometry (GC-MS), HPLC (normal phase), HPLC (preparative), immunoprecipitation, inductively coupled plasma mass spectrometry (ICP-MS), infrared spectroscopy, isothermal titration. Thermal chromatography (ITC), liquid chromatography-mass spectrometry (LC-MS), liquid-liquid extraction, melting point determination, microarray analysis, microwave reaction, molecular cloning, NMR (2D / structure), NMR (carbon), NMR (proton), organic synthesis (mcg to gram), patch-clamp recording, peptide synthesis, photoluminescence (PSL), plasmid construction, refractive index determination, scanning tunneling microscopy, solubility testing, sonication, supercritical fluid chromatography (SFC), surface plasmon resonance (SPR), tandem mass spectrometry (MS-MS), tissue homogenization, total internal reflection fluorescence microscopy (TIRF), ultracentrifugation, X-ray crystallography, and yeast cell culture.

[0279] In some embodiments, one of the conditions is that no warning is generated. In some embodiments, one of the conditions is that only a non-critical warning is generated.

[0280] In some embodiments, the execution module is further configured to generate an object reflecting the received command. In some embodiments, the execution module is further configured to utilize the generated object in the physics laboratory to perform the experimental technique specified by the received command.

[0281] In some embodiments, the system further includes a module for receiving data generated by executing received commands. In some embodiments, the system further includes a module for displaying a portion of the received data in a software-based development environment. In some embodiments, the system further includes a module for analyzing a portion of the received data in a software-based development environment. In some embodiments, the system further includes a module for generating graphical elements based on the analysis of the received data. In some embodiments, the system further includes a module for receiving one or more additional executable commands from a user after the data is received.

[0282] In some embodiments, the software-based development environment includes graphical elements for selecting executable commands. In some embodiments, the software-based development environment includes functionality for graphically displaying received data.

[0283] Another embodiment of this disclosure provides a system for analyzing data obtained from laboratory experiments. The system may include a processor, memory, and program code comprising one or more modules as described below. Some example systems are... Figure 20A As shown in -G.

[0284] For example, in Figure 20A In this implementation, the user activates the plotting module (2008) and accesses a data object (2004) containing data generated from a specific experiment. The plotting module accesses links within the data object to a protocol object (2002) to identify and retrieve the necessary information from the protocol object. Similarly, the plotting module accesses links from the data object to analysis objects (2003) and sample objects (2005) to identify and retrieve the necessary information from these objects. The plotting module also accesses links within the sample object to identify and retrieve the necessary relevant information from the model object (2001). Additionally, the plotting module (2007) can receive information from the environment module (2006). The plotting module returns information about the desired plot to the user interface (2008). In one embodiment, instead of the environment module, the environment object is accessed via a similar linking mechanism.

[0285] Figure 20B-G describes similar operations used during the execution of the analysis (2009) and simulation modules. In a preferred embodiment, the plotting, analysis, and simulation module (2010) accesses links only as needed; for example, if the module already has sufficient information to parse the parameters, it may optionally not access potentially relevant links, even if they exist within the object. Those skilled in the art will readily recognize that, in addition to the links described herein, additional links to additional objects may exist and may be accessed by the module as needed using the same set of actions described herein. For example, a data object may point to multiple sample objects from which the analysis module can identify and retrieve information.

[0286] Additionally, in some embodiments, a module can work with another module. For example, the analysis module can call the plotting module to plot the output of the analysis module.

[0287] In some embodiments, system 2000 includes one or more experimental modules configured to store values ​​of experimental parameters for performing experiments. Each experimental module may represent an experiment (or experimental technique), and thus multiple experimental modules may represent multiple experiments, which may be interconnected. Alternatively, an experimental module may represent more than one experiment.

[0288] Additionally, a data module may be included in the system and configured to store results from experiments. In some embodiments, data stored in the data module may also be retrieved or used by the experiment module. In one embodiment, the system further includes an instrument module configured to store information about the instruments used to run the experiment. An experiment may use more instruments, which may be represented by one or more instrument modules.

[0289] In another embodiment, the system includes an environment module configured to store the environmental conditions for running experiments. Examples of environmental conditions have been described above.

[0290] The system may also include data analysis, exploration, or visualization modules. These modules are configured to analyze and / or visualize experimental data. In one embodiment, the analysis or visualization is based on results stored in a data module, but may further include one or more reference data points or their representations from other data sources. Examples of such data sources are experimental modules, data modules, instrument modules, or environmental modules. For data visualization, the reference data points can be displayed alongside the experimental results on the user interface.

[0291] In some embodiments, reference data points are results from a second experiment related to the experiment being analyzed. In some embodiments, the relationship is that the reference data points impose limitations on the interpretation of the results. For example, reference data points may help eliminate a portion of the results that are irrelevant to the data analysis, verify or invalidate the results, or serve as a standard or control for the results.

[0292] In another embodiment, this disclosure provides a system for analyzing data obtained from laboratory experiments, comprising a processor, memory, and program code including an experimental module configured to display identifiers of samples used in the experiment, identifiers of instruments used in the experiment, identifiers of data sets generated from the experiment, and identifiers of environmental records including measurements of environmental conditions at the time and place of the experiment; a data module configured to display identifiers of data extraction or visualization to represent datasets, identifiers of experiments that generated datasets, and identifiers of analyses performed on datasets; an instrument module configured to display a list of experiments performed on instruments, a list of control experiments run on instruments, and instrument maintenance records; and an analysis module configured to display identifiers of datasets being analyzed and analysis summaries or graphs representing the analysis results; and The environment module is configured to display the environmental conditions at the time and location of the experiment, wherein the system enables the user to explore information related to the experiment while presenting the experiment panel displayed by the experiment module to the user: (1) allowing the user to click on the identifier of the dataset generated by the experiment on the experiment panel to call the data module to display the identifier of the analysis performed on the dataset on the data panel, which allows the user to click on the identifier of the analysis performed on the dataset to call the analysis module to display an analysis summary or graph representing the analysis results on the analysis panel; (2) allowing the user to click on the identifier of the environment record to call the environment module to display the environmental conditions at the time and location of the experiment; (3) allowing the user to click on the identifier of the instrument used to conduct the experiment to call the instrument module to display a list of controlled experiments running on the instrument on the instrument panel, as well as maintenance records of the instrument related to the experiment.

[0293] In some embodiments, the program code further includes a sample module configured to display identifiers of a first experiment from which the sample is generated and a second experiment performed on the sample.

[0294] In some embodiments, the analysis summary or graph displayed on the analysis panel allows users to adjust and access the dataset from which the analysis summary or graph was generated.

[0295] In some embodiments, the system allows users to click on the experiment list on the instrument panel to view one or more other experiments being performed on the instrument for comparison.

[0296] While the above discussion may involve the specific order and composition of method steps, it should be understood that the order of these steps may differ from the order described. For example, two or more steps may be performed simultaneously or partially simultaneously. Moreover, some steps performed as discrete steps may be combined, steps performed simultaneously or sequentially may be separated into discrete steps, the order of certain processes may be reversed or changed, and the nature or number of discrete processes may be altered or varied. The order or sequence of any element or device may be changed or substituted according to alternative embodiments. Therefore, all such modifications are intended to be included within the scope of the invention. Such variations will depend on the chosen software and hardware system and the designer's choice. It should be understood that all such variations are within the scope of the invention. Similarly, the software and network implementation of the invention can be accomplished using standard programming techniques and logic to perform various database search steps, correlation steps, comparison steps, and decision steps.

[0297] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention pertains.

[0298] The invention described illustratively herein can be suitably practiced without any one or more elements or limitations, which are not specifically disclosed herein. For example, the terms “comprising,” “including,” “containing,” etc., should be interpreted broadly and not as limiting. Furthermore, the terms and expressions used herein have been used as descriptive terms rather than as limitations; therefore, the use of these terms and expressions does not imply the exclusion of any equivalents of the features shown and described or portions thereof. Rather, it should be recognized that various modifications can be made within the scope of the claimed invention.

[0299] Similarly, although the invention has been specifically disclosed through preferred embodiments and optional features, skilled readers will understand modifications, improvements, and variations of the subject matter implemented herein. These modifications, improvements, and variations are considered to be within the scope of the invention.

[0300] The invention has been described broadly and generally herein. Each narrower class and subgeneral group falling within the general disclosure also constitutes part of the invention. This includes the general description of the invention, as well as any incidental or negative limitations on the subject matter removed from the appendices, regardless of whether the removed material is specifically described.

[0301] In the case of describing features or aspects of the invention by reference to the Markush Group, the invention is also thereby described as any single member or subgroup member of the Markush Group.

[0302] All publications, patent applications, patents, and other references mentioned herein are expressly incorporated in their entirety by reference as if each were incorporated individually. In case of any conflict, this specification (including definitions) shall prevail.

[0303] Although the invention has been described in conjunction with the foregoing embodiments, the foregoing description and examples are intended to illustrate and not limit the scope of this disclosure. Other aspects, advantages, and modifications within the scope of this disclosure will be apparent to those skilled in the art to which this disclosure pertains.

Claims

1. A system for analyzing data obtained from laboratory experiments, comprising a processor, memory, and program code, said program code causing the system to perform the following when executed by the processor: Stores the values ​​of experimental parameters used to perform the experiment; Store the results from the experiment; Store information about the instruments used to run the experiment; Environmental conditions for storing and running experiments; Place the protocol object or protocol information representing the experiment, the sample for running the experiment, and the instructions for executing the experiment in the queue; In response to the execution of the experiment, the protocol object or the protocol information is removed from the queue; Link the instructions to the sample, the instrument, the sensor, and the tracking device; as well as In response to any change in the sample, the instrument, the sensor, or the tracking device, the generated updated instructions are dynamically modified by a computer. A visual representation of the stored results is selected based on reference data points chosen from the group consisting of the values ​​of the experimental parameters or one or more adjusted experimental parameters, information about the instrument, and the environmental conditions. The program code also causes the system to execute: Update the visual representation of the result based on the reference data points. The reference data points indicate information that is not directly generated from the experiment, and The update includes selectively representing the results by eliminating portions of the results that are determined to be irrelevant, invalid, or unimportant based on a comparison of the results with the reference data points.

2. The system of claim 1, wherein the reference data points further include results from a second experiment.

3. The system according to claim 1, wherein the reference data point is used as a standard or reference for the result.

4. The system according to any one of claims 1 to 3, wherein the program code further causes the system to configure at least one aspect of the visual representation as follows: Estimate the parameters of the sample and one or more estimated parameters corresponding to one or more truncated or alternative sample versions; Based on the estimated parameters of the sample and one or more estimated parameters corresponding to one or more truncated or alternative sample versions, an estimate of one or more peaks is expressed; and Center the graph around one or more of the estimated parameters.

5. The system of claim 4, wherein the parameter includes the molecular weight of the sample.

6. The system of claim 1, wherein storing information about the instrument includes storing a list of experiments performed on the instrument, a list of control experiments run on the instrument, and maintenance records of the instrument.

7. The system of claim 1, wherein the protocol object or protocol information is generated by resolving the correlation between one or more samples or one or more instruments.

8. The system of claim 7, wherein resolving correlation is based on the relative position and physical distance between one or more samples or one or more instruments.

9. The system of claim 7, wherein resolving dependencies includes the order of execution steps of resolving instructions.

10. The system of claim 7, wherein the resolution of correlation is based on the availability of the instrument.

11. The system of claim 7, wherein resolving correlations includes the step of determining experiments to be performed in parallel based on instrument availability.

12. The system of claim 1, wherein the protocol object or protocol information guides and coordinates the generation of new physical samples.

Citation Information

Patent Citations

  • Laboratory experiment data exploration and visualization

    CN110300980A