CN109313741A - 用于生成工厂订货单以控制核苷酸序列生产的方法和系统 - Google Patents

用于生成工厂订货单以控制核苷酸序列生产的方法和系统 Download PDF

Info

Publication number
CN109313741A
CN109313741A CN201780035220.XA CN201780035220A CN109313741A CN 109313741 A CN109313741 A CN 109313741A CN 201780035220 A CN201780035220 A CN 201780035220A CN 109313741 A CN109313741 A CN 109313741A
Authority
CN
China
Prior art keywords
sequence
dna
level
order
parameter
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201780035220.XA
Other languages
English (en)
Inventor
B·弗勒旺
A·金博尔
Z·帕尔奇克
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zi Mei Root Co
Original Assignee
Zi Mei Root Co
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zi Mei Root Co filed Critical Zi Mei Root Co
Publication of CN109313741A publication Critical patent/CN109313741A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B25/00ICT specially adapted for hybridisation; ICT specially adapted for gene or protein expression
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0633Workflow analysis
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B15/00Systems controlled by a computer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B30/00ICT specially adapted for sequence analysis involving nucleotides or amino acids
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B35/00ICT specially adapted for in silico combinatorial libraries of nucleic acids, proteins or peptides
    • G16B35/10Design of libraries
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B5/00ICT specially adapted for modelling or simulations in systems biology, e.g. gene-regulatory networks, protein interaction networks or metabolic networks
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B50/00ICT programming tools or database systems specially adapted for bioinformatics
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B50/00ICT programming tools or database systems specially adapted for bioinformatics
    • G16B50/30Data warehousing; Computing architectures
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B99/00Subject matter not provided for in other groups of this subclass

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Biotechnology (AREA)
  • Evolutionary Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Biophysics (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Bioethics (AREA)
  • Databases & Information Systems (AREA)
  • Library & Information Science (AREA)
  • General Physics & Mathematics (AREA)
  • Molecular Biology (AREA)
  • Marketing (AREA)
  • Development Economics (AREA)
  • Operations Research (AREA)
  • Educational Administration (AREA)
  • Quality & Reliability (AREA)
  • Game Theory and Decision Science (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Chemical & Material Sciences (AREA)
  • Biochemistry (AREA)
  • Automation & Control Theory (AREA)
  • General Engineering & Computer Science (AREA)
  • Genetics & Genomics (AREA)
  • Analytical Chemistry (AREA)
  • Proteomics, Peptides & Aminoacids (AREA)
  • Physiology (AREA)
  • Measuring Or Testing Involving Enzymes Or Micro-Organisms (AREA)

Abstract

用以通过基因制备系统控制核苷酸序列生产的工厂订单的生成包含接收表明对序列运算数进行的运算的表达,每个运算数表示至少一种核苷酸序列部分;评估针对序列规范的表达,其中所述序列规范包括包含一或多个第一级运算和一或多个第二级运算的数据结构;以及基于执行所述一或多个第一级运算和所述一或多个第二级运算来生成所述工厂订单。以递归的方式,所述一或多个第一级运算对至少一个第一级序列运算数进行运算,其值通过执行所述第二级运算中的一或多个来解析。接着可以将所述工厂订单提供给所述基因制备系统以将所述序列部分组装成由所述序列规范表示的核苷酸序列。

Description

用于生成工厂订货单以控制核苷酸序列生产的方法和系统
相关申请案的交叉参考
本申请案主张2016年4月27日提交的第15/140,296号美国非临时申请案的优先权,所述申请案的全文通过引用并入本文中,出于所有目的其包含所有实施方式、参考文献、图式和权利要求书。
技术领域
本公开通常涉及高通量微生物基因组工程,并且更具体地涉及用于生成工厂订单以通过基因制备系统控制核苷酸序列生产的方法、系统和数据结构。
背景技术
微生物工程能够生成新颖化学品、高级材料和药物。在一种商业模式中,代表自身或第三方的菌株设计公司可以修饰先前所描述的DNA区段以通过改进输出性质如产量、生产率、理想的生长温度、生长速率和效价来增强微生物宿主的代谢生产。多种传统的努力已经聚焦小批量研究产量。然而,为了实现工业规模的微生物工程,需要存储和分享大量DNA序列信息。多个队伍必须能够分享设计构想,科学家必须能够与生产工程师交流,并且项目管理者必须能够从早期概念阶段到最终评估阶段追踪细节。
经修饰微生物的高通量生产需要高通量菌株设计。机器人能够一次建构数百到数千菌株,并且设计工具必须能够匹配这种能力。大型实验可以通过探查不同组合的相同少数元素或通过尝试多次微小地改变基础设计来想像。理想的存储和交换格式应构造数据以使得这些关系得以保持并且可以在设计、构建或评估的地址域中通过其它软件工具来解释。
具体地说,研发人员面临在DNA部分、DNA总成和工程化细胞系级上的连通设计概念的挑战:(1)菌株设计公司与合作伙伴企业之间以及(2)菌株设计公司内部的研发部门与操作部门之间。
先前努力已经引起针对DNA部分的标准化描述的建议。举例来说,可视化合成生物学开放语言(Synthetic Biology Open Language Visual)(可视化SBOL)是开源图形标记,其使用示意性“图示符”以指定基因部分、装置、模块和系统。也参见BBF RFC 108:合成生物学开放语言(SBOL)(BBF RFC 108:Synthetic Biology Open Language(SBOL))2.0.0版,编者巴特利等人,2015年7月31日,其全文通过引用并入本文中。
SBOL标准的基座是用于DNA级设计的规范的“核心数据模型”。这种SBOL核心限定生物架构基块如DNA组分并使其阶层式组成成为可能,允许指定每个设计组分的子结构和构建体。DNA组分是描述DNA的区域的实体。基本信息是基础DNA序列。装饰所述序列是序列标注(元数据)。序列标注描述所述序列中的核苷酸如启动子的区域和取向。每个序列标注也可以表示为DNA组分。
SBOL核心也提供“集合”数据结构以将DNA组分分组到文库和目录中。参见例如巴特利等人的BBF RFC 108:合成生物学开放语言(SBOL)2.0.0版,5.2、6、7.10章节。
SBOL提供对应于基因序列的结构和函数的一组可视化符号和数据格式。其目标是提供用于连通新颖合成设计的标准化格式。然而,SBOL自身不是用于执行给定基因组或基因序列的特定变化的编程模型。尽管SBOL描述DNA区段的结构和组成部分的功能性行为,但是其不提供用于描述待在DNA序列上进行的运算的紧凑标记。运算必须经过标注DNA序列自身或通过延伸SBOL的XML语言内的数据模型元素来限定。在任一种情况下,这些标注或延伸数据模型元素将专属于定义和插入其的每个组织或用户,使其在任何情况下作为不标准的延伸。将这些标注或数据结构置放于最终DNA输出序列上,其划分产生所述序列的输入序列。由于这种结构,本质上不在数据自身的结构中捕获与序列产生相关的逻辑或物理级运算。
此外,SBOL如基因库和用于连通显式DNA序列的其它文件格式需要用户提供待创建或提出的每个DNA序列的独立的SBOL描述。举例来说,1,000个基因组编辑应通过枚举1,000个变型DNA序列来描述;就基础部分和其各种组合而言无法描述编辑集合。这种格式对于用户直接编辑而无专用工具而言是繁琐的,并且与其它串行化格式(例如二进制格式,如Avro)相比在存储空间方面是低效的。
由特斯拉根生物科技(TeselaGen Biotechnology)提供的j5软件包是多种DNA编辑的安装包的实例,其除了其它特征以外还提供用于限定建构DNA构建体需要何种DNA部分的自动化方法。典型地,这些工具采取信息表作为输入物,在所述表中每一行表示一种待建构的构建体并且每一列含有应参与其建构的片段。随后,工具输出具有关于那些序列应如何用于普通实验室协定中的信息的DNA序列表。
j5系统依赖于大量CSV(电子数据表)文件以构建其输出物。在这些电子数据表中,每一行对应于DNA部分(名称为序列)或其它输出物。不同于SBOL、GHS或其它系统,j5通过在其目标部分级列表文件中参考“组合仓”而准许简洁的组合总成,然而,j5需要科学家具有组装方法的具体知识以按针对组装方法的特定方式使用和编码以及布置所述部分(LHR,吉布森等)。j5不准许解耦DNA的逻辑(句法)变化,所述变化由实现那些变化的物理手段进行。
此外,j5受其固定的基于电子数据表的输入格式限制,j5“脚本”是指定项目列表以级联在一起的电子数据表集合。需要用户指定完整的总成作为一系列单独的部分,j5不准许通过以任意方式(插入、删除、替换等)修饰现存DNA序列进行任意地可挠性编辑(如改变单独的碱基对)。
最后,j5需要使用一组恒定参数以用于组装技术。单个“参数文件”电子数据表提供反应的全局参数(熔融温度、PCR产品尺寸等)以实现全部组装,j5不将参数应用或不同的组装技术考虑到整体组装过程的中间子总成中。
GSL是由阿米瑞斯公司(Amyris,Inc.)出于指定产生新菌株定义的编辑集合的目的所研发的专有语言。GSL允许用户使用提供高级和低级序列编辑运算符的语言来定义编辑。在每种情况下,用户必须明确地撰写出待组合的子序列的组合。GSL不提供允许用户以组合性方式撰写组合输入变量参数或DNA元素的脚本的列表或成环构建体;就所需输出序列的数量而言,脚本自身是O(n)。此外,GSL期望编辑将使用特定的编辑技术集合来进行,所述技术在与供阿米瑞斯使用的特定宿主生物体相关的编辑位点上运行,所述宿主生物体主要集中在待在宿主DNA序列中的已知位点处插入的级联元件上。GSL不可跨越与宿主无关的菌株、质粒或任意的DNA序列或子序列延伸到用户可能希望在将来执行的各种DNA修饰图案中。
Eugene语言通过使用组合性DNA设计的排列()函数而准许所述组合性DNA设计。参见利西亚·比利琴科等人的Eugene-用于指定和限制合成生物部分、装置和系统的领域专用语言(Eugene-A Domain Specific Language for Specifying and ConstrainingSynthetic Biological Parts,Devices,and Systems),公共科学图书馆:综合(PLoSONE),第6卷,第4期,2011年4月29日,(http://journals.plos.org/plosone/article?id= 10.1371/journal.pone.0018882)。这允许更简洁的脚本,就输入部分和组合运算符的数量而非输出物的数量而言,其尺寸是O(n)。因此,其准许生成比GSL或其它系统(例如SBOL)更多的序列。Eugene向用户提供允许对各种性质进行滤波的规则谓词。此外,多种装置可以使用DNA的特性(标注)比对或基于其它性质以各种顺序级联在一起。规则句法使用逻辑编程结构以限定各种限制条件,所述限制条件使用相同风格的限制条件满足语言作为论证语言如PROLOG共同地以仅满足所有规则的顺序将装置结合在一起。规则数量和用于限定其的特异性句法对于缺乏软件工程经历的科学用户而言是繁琐的。谓词逻辑句法特别地需要可以仅对必不可少的语言如Perl语言或Python语言具有合格的熟悉性的用户(可以预期多位微生物学家)以非常具有外来性而无先前计算机科学正式培训的编程风格考虑并键入输入物。
Eugene大体上向基因制备过程提供待制备的核苷酸序列作为输入物。从所述信息可见,静置基因组的组装程序以确定最佳核苷酸部分和工作流程来制备sequenceIn大规模运算,数以千计的序列可以由基因组设计程序如Eugene生成。举例来说,所述程序可以生成10,000个修饰基因组,其应占据约50-100GB存储空间。这种信息应在此时未在典型的存储器中拟合,并且应代替地要求例如较慢的基于磁盘的存取。实施例可以采用例如SBOL来表示输出DNA组分。现用商用计算机系统无法在50-100GB SBOL文件上有效地加载和运算。这类操作可能会崩溃或造成不可接受的处理延迟。因此,期望研发手段以当在计算机系统中实施大规模序列设计时克服在计算机技术中生根的挑战。
发明内容
本发明的实施例提供用于同时引入多种亲代核苷酸序列中的多种突变体来将其转换成一大组突变序列的方法、系统和数据结构。本发明的实施例通过例如缩短核苷酸序列的设计和建构时间并降低其复杂度来改进工业规模的基因组设计和制备。
然而,数据科学在基因组设计和制备中的应用已经产生一定挑战,如上文在背景技术部分中所描述的那些挑战。具体地说,高通量核苷酸序列设计可以引起创建过多用于简单计算机存储器的数据的不可管理数量的输出序列的生成,这需要使用更复杂的存储器管理系统,结合例如基于磁盘的存储。此外,处理大量这类输出序列可能引起不可接受地慢速处理时间或甚至处理故障。本发明的实施例部分地通过提供生成可管理量的序列数据的能力来克服这些技术障碍,所述能力避免了需要复杂的存储器管理方案和设计和制备期间的不可接受的慢速序列数据处理。
本发明的实施例还提供通知开始和中间核苷酸部分的基因制备过程、其它核苷酸序列合成输入物(例如引物、酶、试剂)和环境因素(例如温度)的递归数据结构。数据结构还可以指定所需基因制备过程中的开始和中间步骤的工作流程。这种信息的考虑更好地通知制备过程,由此能够使在大量条件(例如部分和启动子的价格和可获得性、工作流程选择的效率)下进行的制备最佳化,即引起改进产量、可扩展性、处理时间和其它因素以便克服大规模计算机辅助设计和微生物菌株和其它宿主细胞中的基因组制备所具有的挑战。
使用本文中的实施例的特性中的一些或全部,科学家可以定义呈紧凑的编程格式的极大组核苷酸序列(例如百万或百万以上的数量级),同时违反直觉地,也有效控制组装过程的低级、极细微的细节。这种控制的部分提供更加可管理子组的序列的生成以避免以其它方式基于存储容量和处理能力置放于基因组设计和制备系统中的负担。
具体地说,本发明的实施例包含用以通过基因制备系统控制核苷酸序列生产的工厂订单的生成。本文中描述了系统、方法和计算机可读媒体:接收表明对序列运算数进行的运算的表达,每个运算数表示至少一种核苷酸序列部分;评估针对序列规范的表达,其中所述序列规范包括包含一或多个第一级运算和一或多个第二级运算的数据结构;以及基于执行所述一或多个第一级运算和所述一或多个第二级运算来生成所述工厂订单。以递归的方式,所述一或多个第一级运算对至少一个第一级序列运算数进行运算,其值通过执行所述第二级运算中的一或多个来解析。接着可以将所述工厂订单提供给所述基因制备系统以将所述序列部分组装成由所述序列规范表示的核苷酸序列。
在本发明的实施例中,工厂订单可以基于包含于规范数据结构中的参数,所述参数涉及基因制备系统如何使一或多个第一级运算或一或多个第二级运算具体化(物理上实现)。在一些实施例中,参数可以包含第一参数,其待供一或多个第二级运算的第一个第二级运算的具体化中的基因制备系统使用;和第二参数,其不同于第一参数并且表示与第一参数相同类别的参数,待供一或多个第二级运算的第二个第二级运算的具体化中的基因制备系统使用。作为实例,相应地,第一参数可以表明第一组装方法、温度、序列部分源或引物源,并且第二参数可以表明第二不同的组装方法、温度、序列部分源或引物源。
在本发明的实施例中,抽样可以用于通过选择在递归数据结构中的中间级或低级处仅执行子组序列规范例如“子序列规范”来减少对较大存储容量和繁重处理能力的需要,所述“子序列规范”充当用于序列规范的输入物/运算数,即数据结构中的一个更高级。(注意,上文和本文别处提及的序列规范中的“第一级运算”可以不必须地存在于顶级数据结构阶层处,但可以代替地存在于低于顶级子序列规范中。)用于执行的子组序列规范的选择可以基于例如随机抽样,仅选择第一K或最末K规范或加权所述规范。加权可以基于由于先前工厂订单而组装的核苷酸序列的表型性质。可以观察到在先前工厂运行期间组装的序列展现高度所需表型性质。那些序列可能已由指定例如特定启动子的子序列规范生成。这种信息可用于适宜地加权指定那些启动子以增大执行其并将其合并在当前工厂订单中的机会的子规范。
在本发明的实施例中,递归数据结构可用于指定有用的操作如替换与启动子-基因-终止子序列中的基因相关的启动子。举例来说,第一级函数可以是具有运算数的替换函数,所述运算数通过执行定位序列中的启动子的第二级位置-解析函数来解析。具体地说,在此实例中,评估替换/位置-解析表达包括创建表示替换序列的可替换启动子区的序列规范,所述序列包含由第一序列运算数表示的多种启动子-基因-终止子序列,所述第一序列运算数具有由第二序列运算数表示的替换启动子。第一序列运算数的执行识别可替换区域。
在生成工厂订单的过程中,可以遍历递归数据结构以提取用于建构这些设计中的输出菌株或DNA设计以及输入部分和中间部分的集合。在本发明的实施例中,容纳这些输入、中间和最终DNA序列的数据结构指示“工厂建构图”。这种工厂建构图(下文替代地称为“建构图”)可与用于执行DNA序列组装工作的预定工作流程一起使用以产生呈物理形式的所需输出设计。
下文更充分地描述这些和其它实施例。
附图说明
图1说明用于设计、建构、测试和分析核苷酸序列的本发明实施例的实验室信息管理系统。
图2是说明根据本发明实施例的用于设计和建构核苷酸序列的方法的流程图。
图3说明经本发明实施例启用的递归级联函数的实例。
图4说明根据本发明实施例的包含两组启动子、基因和终止子的标注DNA序列的实例。
图5说明根据本发明实施例的施用到图4的序列的启动子调换运算。
图6提供根据本发明实施例的具有替换-定位叉积函数的DNA规范的图形表示。
图7说明可用于实施本发明实施例的计算机系统的实例。
图8说明根据本发明实施例的工厂建构图的实例。
具体实施方式
参考附图进行本发明的实施方式,在附图中展示各种示例性实施例。然而,可以使用多种不同的示例性实施例,并且因此实施方式不应被解释为限于本文所阐述的示例性实施例。相反地,提供这些示例性实施例以使得本公开将是彻底并且完整的。所属领域的技术人员将易于清楚对示例性实施例的各种修改,并且在不脱离本公开的精神和范围的情况下,本文所定义的一般原理可以应用于其它实施例和应用。因此,本公开不意在限于所示实施例,而是被赋予与本文所揭示的原理和特性一致的最广范围。
系统概述
图1是用于设计、建构、测试和分析DNA序列的本发明实施例的实验室信息管理系统(LIMS)200的系统图。图2是相应的流程图。在LIMS的实施例中,一次对输入DNA序列作出一或多种变化,每个变化或变化组产生单个输出序列。为使菌株(例如在高产量情况下有效地产生有机化合物的制备微生物)最佳化,LIMS一次产生多种这类DNA输出序列以使得其可以在相同时间范围内进行分析来确定宿主细胞种类并且因此确定对输入序列的修饰种类,最佳实现所需性质。如下文即将看到,本发明实施例的基因组设计语言提供紧凑的、人类可读取的表达以生成并联的多种基因组设计。
在一些实施例中,系统能够设计多种核苷酸序列构建体(如DNA构建体,如启动子、密码子或基因),每个构建体具有一或多种变化,并且创建工单(通常在本文中被称作“工厂订单”)以向基因制备系统或工厂210发指令,从而建构呈携载构建体的微生物形式的核苷酸序列构建体。根据本发明的实施例,工厂订单可以在工厂建构图以及预定制备执行工作流程中具体化。可以建构的微生物实例包含但不限于宿主,如细菌、真菌和酵母。根据系统,随后测试微生物的性质(例如产量、效价)。以反馈-环路方式,分析结果以在设计前代时迭代地改进来实现更佳的微生物性能。
尽管本公开主要涉及DNA构建体,但是所属领域的技术人员将认识到,本文实施例可以容易地延伸到任何核苷酸序列/核酸序列(例如信使RNA,任何这类IUPAC字母表中的序列)并且不仅仅限于DNA序列。此外,尽管本文主要在微生物基因组修饰的上下文中描述了设计、建构、测试和分析方法,但是所属领域的技术人员将认识到,这种方法可用于任何类型的宿主细胞中的所需基因修饰和表达目标。
更详细地参考图1和2,输入界面202(如运行程序编辑器的计算机)接收用于研发一或多种DNA输出序列设计的程序/脚本的语句(参见图2中的302)。这类基因组设计程序语言在本文中可以被称为由本发明的受让人研发的“密码子”编程语言。本发明实施例的有力特性是在仅具有少数程序语句的相同程序内研发非常大量的DNA序列(例如微生物菌株、质粒)设计的能力。
程序语句可以包括指定运算的关键字和至少一个变量参数、由待调用的函数名称指示的函数调用继之以零个或零个以上变量参数(在评估时随后丢弃其返回值),或者表达或值到可以包含于由变量名称进行的后续表达中的变量的指配。表达是可以评估(解析)到某一值的符号的集合。函数调用可以用作语句或表达。
在此,编辑器使用户能够例如通过使用计算装置上的键盘和鼠标使图形或文本进入或经过菜单或表单而键入和编辑程序,如关于图7所描述。所属领域的技术人员将认识到,可以采用其它输入界面202而不需要直接用户输入,例如输入界面202可以采用应用软件编程界面(API),并且接收包括来自另一个计算装置的程序的文件中的语句。输入界面202可以通过局部或远端连接件与系统的其它元件连通。
解释器或编译器/执行单元204评估本发明实施例的新DNA规范数据结构中的程序语句(304)。数据结构细节将在下文描述。(还可以根据“DNA规范”的数据类型“Dna规范”在本文中提及“DNA规范”。此外,术语“DNA规范”不仅限于DNA序列,但相反地应用于任何核苷酸序列。如本文所使用的“DNA规范”是指如何由输入变量参数和指令如“级联”创建一或多种DNA/核苷酸序列的规范。如果DNA规范得到评估,则其还可以记录其如下文所描述的输出序列。)
术语“解释器”和“编译器/执行单元”应在本文中可互换地使用,因为本发明可以与解释器或编译器一起实施;可以解释或编译程序语句。如果采用编译器,则随后应在本发明的系统中采用执行单元。
典型地,最后,程序脚本将包含标识Dna规范的“创建”语句,其表示待包含在“设计活动”中的程序的最终输出物。设计活动自身是工厂订单的前体以用于产生DNA序列,如下文将描述。可以提供一或多个创建语句;如果使用多个此类语句,则在顶级“列表”规范中将DNA规范集合保持在一起。
解释器204评估创建语句到通过Dna规范数据类型表示的设计活动中的DNA规范变量参数。创建语句自身可以包含通过发订单引擎208(order placement engine 208)读取的指示符(例如标签或其它指示符),这表明创建语句的变量参数待用于生成工厂订单以产生由所述变量参数识别的序列。
在本发明的实施例中,在此阶段,解释器204可以执行由DNA规范指定的运算以使得其数据结构包含经解析输出物。然而,在其它实施例中,解释器204应不执行那些运算,并且输出DNA规范数据结构应不包含已经解析的任何输出物。代替地,如下文所描述,执行引擎207应解析输出物。
在评估表达中,解释器204可以涉及DNA序列数据的一或多个来源,如自定义/本地数据库、公共数据库或用户提供的文件(为方便起见在本文中统称为“库”)。类似于电子电路的设计,合成生物学设计可以由可再用组分库以阶层方式构成。库206可以包含反映DNA序列和微生物的性质的数据(例如标注)。举例来说,库可以包含表示用于大肠杆菌的不同菌株的DNA序列的数据、已知DNA序列内的启动子和终止子的位置和微生物菌株内的基因的位置。库可以例如包含含有数千DNA组分的资料库—其中一些是完整微生物菌株基因组,其中一些是较小的基因部分。密码子语句可以由独特的ID来指代其中的任一个。库206还可以涉及先前密码子评估运行—设计活动或工厂订单的输出物—其都可以以Dna规范数据类型实施。具体地说,库206可以存储由本文所描述的分析阶段产生的基因型-表型相关性数据“库”以容许选择碱基菌株和基因修饰作为候选对象,从而实现所需的表型性质以用于新的工厂运行。
Dna规范还可以由ID指代。根据本发明的实施例,ID可以由解释器204发布在不重叠序列到相似的Dna组分和Dna规范中,因此其可以互换地用作库内的输入物。然而,通过使用独立的查找函数以用于Dna组分和Dna规范,系统和用户可以区分Dna组分和Dna规范,即使相同的ID对于各自类型的集合体内的Dna组分和Dna规范都是有效的标识符。另外,库可以存储可用于密码子脚本中的呈文件(通常FASTA或基因库格式)形式的DNA序列。
在实施例中,执行引擎207可以代替解释器204来执行DNA规范(307)。举例来说,执行引擎207可以执行一或多个由DNA规范指定的运算符,将运算符施用到由DNA规范指定的适当的输入物上。此时,DNA规范数据结构应包含所得经解析输出物以及一或多个运算符和输入物(和下文论述的参数)。这些输出物可以表达为有序的DNA组分(例如下文实例中所描述的叉积元素(cross-product element))列表。
在实施例中,发订单引擎(可替代地称为规范/活动解释器或发工厂订单器(factory order placer))208解释表示设计活动的DNA规范,并确定将生成或需要哪种中间DNA部分作为工厂210的输入物(308)。一般来说,在一些实施例中,发工厂订单器208需要两种输入物:Dna规范和工作流程信息,从而表明建构内容(Dna规范)和用户希望如何建构其(工作流程)。基于那种情况,发工厂订单器208可以使用遵从已知试探法的已知算法和其它性质(例如理想的熔融温度以在普通设备上运行)来计算工作流程所需的中间部分。在本发明的实施例中,序列规范自身可以指定中间输入物以及表明用于开始、中间和最终运算的工作流程和性质的参数。
遍及工厂建构图,发订单引擎208将DNA规范从逻辑规范输送到物理制备过程中。由发订单引擎208以上文所描述的方式识别的工作流程所需的前体和中间部分以及被执行Dna规范中所识别的输出物在称为工厂建构图的数据结构中由发订单引擎208记录。(前体核苷酸序列部分例如引物是核苷酸序列组装过程的起始部分—除中间部分/总成或最终部分/菌株(其对建构图中的其它序列无依赖性)以外的那些部分。)在实施例中,这是定向非循环图(DAG),其中:每个节点表示核苷酸序列部分,如前体序列部分、中间序列部分或最终序列部分或最终菌株;并且边缘用于传达哪种组分是产生特定另外的中间或输出部分的过程的输入物。每个前体或中间部分在制备其一或多种后任部分中的特定“作用”也通过发订单引擎208记录在建构图的每个边缘中(即在表示边缘的数据结构的部分中)。建构图的特定形状由用户提供的工作流程限定,所述工作流程表示在通过一系列变化产生最终所需设计的特定实验室协定中进行的实际物理步骤。发订单引擎208可以根据工作流程必要的作用的先验知识来确定各自作用。
所得工厂订单可以包含一组规定步骤以及用于那些步骤中的每一个的参数、输入物和输出物的组合以用于待构建的每个DNA序列。工厂订单可以包含DNA部分列表,其包含起始微生物碱基菌株、引物列表、向导RNA序列或实行工作流程必要的其它模板组分或试剂规范以及一或多个制备工作流程规范,从而用于DNA规范内的不同运算,如下文进一步所论述。这些初级、中间和最终部分或菌株可以在工厂建构图中具体化;工作流程步骤涉及具有各种作用的建构图的元件。发订单引擎208可以涉及用于上文所论述的信息的库206。此信息用于基于用于核苷酸序列合成的常规技术以及由用户或其他人研发的自定义技术使在工厂210处的呈物理(与计算机模拟(in silico)相反)形式的设计活动操作具体化。
举例来说,假设递归DNA规范具有顶级环化函数并且其输入物是一连串的级联规范。发工厂订单器208可以解释一系列输入物以使得实验室中的人员或机器人可以根据常规技术或由用户研发的自定义/改进技术执行PCR反应以扩增输入物中的每一个,并且随后将其组装成环形质粒。工厂订单可以指定待产生的PCR产品以便进行组装。工厂订单还可以提供应购买的引物以便执行PCR。
在另一个实例中,假设DNA规范规定顶级替换函数。发工厂订单器208可以将这种情况解释为细胞转换(在活细胞中用基因组的另一个部分替换基因组的一个部分的过程)。此外,替换函数的输入物可以包含表明DNA源(例如从另一个质粒中切出,脱离某一其它菌株扩增)的参数。
发订单引擎208可以通过本地或远端连接件将工厂订单连通到工厂210。基于工厂订单,工厂210可以从外部供应商和内部存储仓中获得短DNA部分,并且采用所属领域中已知的技术如吉布森组装协定(Gibson assembly protocol)或金门组装协定(Golden GateAssembly protocol)以对应于输入设计组装DNA序列(310)。如下文关于工厂建构图更详细地论述,分配给图边缘的作用指定待用于各种技术(例如吉布森组装)中的建构图的元件和其在多工化操作中如何组合(如发生在96孔培养板上)。工厂订单自身可以指定在制备的开始、中间和最终阶段期间采用何种技术。举例来说,多种实验室协定包含需要模板序列和两种引物序列的PCR扩增步骤。工厂210可以使用机器人自动化部分或完全实施。
根据本发明的实施例,工厂订单可以指定具有数百或数千DNA构建体的工厂210中的生产,每个构建体具有不同的基因组成。DNA构建体通常进行环化以形成质粒来插入碱基菌株中。在工厂210中,制备碱基菌株以接收随后插入的组装质粒。
在工厂210组装的所得DNA序列使用测试设备212来测试(312)。在测试期间,使微生物菌株经受基于定尺寸和定序方法的质检(QC)评估。接着可以将通过QC的所得经修饰菌株从液体或集落培养物中转移到培养板上。在使生产条件模型化的环境条件下,生长菌株并且随后进行测定以测试性能(例如所需产物浓度)。可以在烧瓶或罐中进行相同的测试方法。
以反馈-环路方式,可以通过分析设备214分析结果以确定哪种微生物展现所期望的表型性质(314)。在分析阶段期间,评估经修饰菌株培养物以确定其性能,即其所期望的表型性质的表达,包含工业规模生产的能力。分析阶段除了其它物质以外使用培养板的影像数据来测量微生物集落生长作为集落健康的指标。使用分析设备214使基因变化与表型性能相关,且将所得基因型-表型相关性数据保存在可以存储于库206中的库中以通知未来的微生物生产。
基于由先前工厂运行所研发的相关性,LIMS以迭代方式进行设计/建构/测试/分析循环。在后续循环期间,单独或配合操作人员的分析设备214可以选择最佳候选对象作为碱基菌株以输回到输入界面202中,使用相关性数据来微调基因修饰以用更精细的粒度实现更佳的表型性能。本发明实施例的实验室信息管理系统以这种方式实施了品质改进反馈环路。
数据结构
不同于用于核苷酸序列组装的一些常规技术,本发明的实施例不需要直接表示所需序列的文字串输入物。编辑器或其它输入界面可以替代地或另外接收以本发明实施例的高级基因组描述语言表达的语句。在本发明的实施例中,如上文所指示,每个高级语句评估为具有数据类型Dna规范的“DNA规范”。DNA规范是表明由至少一个(数据类型Dna输入物的)DNA运算数表示的至少一个DNA部分上的至少一个运算的数据结构。(本文中的DNA“部分”是指DNA序列,例如启动子、基因、终止子或其任何组合。更一般来说,本发明应用于任何核苷酸序列部分。)Dna输入物可以是Dna组分(单个DNA序列的明确表示)或另一个Dna规范。输入物自身可以是从先前脚本的运行/评估中输出的脚本或密码子脚本内的先前密码子语句的输出物,产生描述用于在指定为Dna规范的变量参数的其它Dna输入物上执行的有序组的运算的递归数据结构。
在一些实施例中,DNA规范可以表明待在一种DNA部分上执行的一元运算(例如环化)或待在两种或两种以上DNA部分上进行的二元运算(例如级联、替换)。在一些实施例中,DNA规范描述组合性总成的DNA序列。
简单地说,DNA规范可以提供:
·结构化的DNA组分集合
·紧凑的DNA序列关系表示
·简洁的组合性设计描述
·用于改变细节层和抽象层的嵌套式组织
·DNA总成的设计师与制备者之间的交换格式
在一些实施例中,DNA规范具有三个部分:
·一或多组有序的输入
·一或多个修饰动作
·一组有序的输出
注意,甚至在采取“一元”输入的函数如环化函数的情况下,“一元”输入自身可以是输入列表。在此情况下,执行所述函数应发出环化DNA序列表,每个序列由来自所述系列的单个线性输入序列生成。二元函数(例如级联)可以在两个这类列表上运算,组合如通过函数修改器(DOT(点积)或CROSS(叉积))指定的每个列表的元素,所述修改器指示两个列表的元素是否通过以下来组合:“扣结件”(点积)运算(用于输入列表L和R、所有V、L[i]OP R[i],其中“OP”表示点积运算);或“叉积”运算(用于输入列表L和R、所有“i”、所有“j”、L[i]OP R[j],其中“OP”在此表示叉积运算)。每个列表的结果可以分别视为矢量或矩阵。
在一些实施例中,DNA规范内的DNA运算数可以表示为DNA规范自身或表示为DNA组分,并且DNA组分可以表示具有直接表示核苷酸序列的文字字母数字串的DNA部分。在一些实施例中,如上所述,DNA组分还可以包含描述DNA部分的性质的元数据标注,如标识号、源、分子形式(例如线性、环形)。
值得注意地,如上文所描述,在一些实施例中,DNA规范的DNA运算数可以表示DNA部分列表。这些部分列表可以是DNA组分列表、DNA规范或DNA规范列表。
DNA组分
作为DNA规范的论述的序言,使用dna()函数的DNA组分的实例如下:
序列=“GATACA”
打印“序列是:”+序列
myFirstDna=dna(sequence)
打印“存在Dna组分:”
打印myFirstDna
在此实例中,解释器应返回:
所述序列是:GATACA
存在Dna组分:
Dna组分:
Id:-1
名称:dna字符串
描述:文字:GATACA
分子形式:线性
序列:GATACA
解释器204使用DNA组分能够在脚本中直接指定DNA序列或通过从库中加载其。举例来说,用户可以直接指定dna()函数自身内的短DNA序列,例如
myPrimer=dna("AAGTGTGAC")。
可替代地,用户可以使用dna组分()函数通过DNA组分ID或其名称从库中加载DNA组分:
plasmidBackbone=dnaComponent(13000109030)#由通用ID引用的主链。
anotherBackbone=dnaComponent("my-backbone")#另一个主链,由名称引用。
作为另一个替代方案,用户可以使用dnaForStrain()函数从库中加载表示用于微生物菌株的序列的DNA组分。
aFamousSequence=dnaForStrain(7000000000)#也接受菌株名称作为变量参数。
更一般来说,DNA序列可以从本地源(文件、资料库)中或从公共源(例如NCBI)中明确地识别(即从串中识别)。
DNA规范
参考DNA规范,解释器204也使用户能够识别DNA规范,包含例如通过使用dna规范()函数从库中加载完整DNA规范来进行:
somePrimers=dnaSpecification(18000000000)#变量参数表示DNA规范的标识符。
此最后一个实例返回DNA规范,然而先前实例返回DNA组分。由于这些都表示Dna输入物类型(这两种类型的“超型”)的数据,所以其在DNA-修饰函数中经常可互换。也就是说,程序可以通过引用DNA组分或DNA规范作为变量参数来创建更复杂的用于活动的DNA规范。如本文所论述,甚至对于复杂的规范,但DNA规范提供能够处理和创建大量序列的紧凑的人类可读的数据结构。
注意,Dna输入物值可以是Dna组分(DNA组分;“Dna组分(DnaComp/DnaComponent”在本文中可互换地使用,指代“Dna组分”类型的变量或值)、Dna规范(DNA规范;“Dna规范(DnaSpec/DnaSpecification)”在本文中可互换地使用,指代“Dna规范”类型的变量或值)、本地化Dna规范、列表[Dna组分](DNA组分列表)或列表[Dna规范](DNA规范列表)。
级联函数
基因组设计编程语言和本发明的实施例的运算支持多种不同的函数。作为一个实例,密码子能够级联DNA部分以制备更大的总成。密码子能够用DNA组分函数如dna()、dnaForStrain()和dna组分()规范化单独的序列。作为一个实例,当计算个别(标量)值时,密码子能够如下级联两个标量字符串(使用“+”级联函数):
左=“左侧”
右=“右侧”
组合字符串=左+右
然而,LIMS特别地设计成一次设计、建构、测试和分析多种DNA序列。因此,密码子使用户能够通过例如用函数dna规范()以加载表示多种DNA序列的DNA规范(Dna规范)来操作DNA序列表。程序可以创建通过例如将呈已知基因库或CSV格式形式的文件上载到库中来表示序列表的DNA规范(Dna规范)。
序列表的级联可以以至少两种方式进行。如果列表具有相同长度,则DNA规范可以指定以逐元素方式进行的项目级联。通过解释器204(或在其它实施例中执行引擎207)进行的DNA规范的执行应将[a、b、c]和[d、e、f]级联为ad、be、cf。这种函数指示“点积”。可替代地,DNA规范可以指定具有任何长度的列表通过其笛卡尔叉积产品进行级联以级联所有可能性对。使用相同的实例列表,解释器204(或在其它实施例中执行引擎207)应将叉积输出物级联为ad、ae、af、bd、be、bf、cd、ce和cf。这些输出物可以表达为DNA组分。如本文所描述,如果叉积导致相对于存储器容量而言的非常大量的输出物,则系统200可以采用抽样以减少生成输出物的数量。如下文进一步描述,可以采用不同的抽样技术,包含加权样品组以包含已经在先前建构和测试循环期间经确定以具有已产生或受影响的有益表型性质的基因部分。随后,发订单引擎208基于输出物创建工厂订单输出
密码子以不同方式表示级联函数。concat()函数将采取两个Dna输入物变量参数并连结元素。所述函数包含在函数名称与变量参数列表之间的函数修改器[*]或[×]以表明其是点积还是叉积,如在下文实例中:
左=dna规范(18000000001)
右=dna规范(18000000002)
点积=级联[*](左,右)
叉积=级联[×](左,右)
因为DNA级联是如此类似于字符串级联,所以在某种程度上通常在现代编程语言中使用数学类二元运算符来进行,密码子提供级联简写:直接使用*或×以表明级联,如以下实例中所示。
左=dna规范(18000000001)
右=dna规范(18000000002)
点积=左*右
叉积=左×右
moreDna=dnaSpecification(18000000003)
#您可以使用()以及*或×以表明关联性,其可以影响建构顺序。
大叉积1=左×(右×moreDna)
大叉积2=(左×右)×moreDna
#您也可以用多个语句使关联性清晰明了。注意,默认具有相等优先级的运算符将从左到右进行评估。(例如大叉积2表达默认值。)
#以下等同于大叉积:
复合右侧=右×moreDna
大叉积3=左×复合右侧
递归
参考图3,以下是经本发明的实施例启用的递归级联函数的实施方案的实例。在本文中,递归涉及级或层中的信息或函数的组织,其中对象含有其它类似对象;或涉及取决于评估其它类似子函数的函数评估。
在此实例中,级联函数以及DNA规范是递归的。
在下文的输出物“总体”环化成质粒形式之前,呈线性形式的实例函数可以如下表达:
总体=(p1×p2)×(p3×p4)
总体=α×β,
其中α=p1×p2并且β=p3×p4,并且p1、p2、p3和p4表示启动子。
在本文中,α和β的叉积级联是外函数,其中α和β中的每一个表示两个启动子的内叉积。注意,叉积函数的输入物中的任一个可以是输入列表并且不仅仅是单个输入物。
为实施本发明实施例的编程语言中的这种功能性,输入界面202可以从用户或另一个计算装置中接收以下脚本。(在下文代码中,总体在环化之后重新命名为“我的质粒”,并且α和β分别重新命名为“左侧”和“右侧”。因此,我的质粒=环化(左侧×右侧)。)另外,注意,在本文中,程序代码中的注释可以由“//”或“#”表示。
p1=[dna("AAA"),dna("AAG"),dna("AAT"),dna("AAC")]//启动子列表,在本文中各自由表示三种核苷酸的文字串表示
p2=dna("TT")//表示启动子的单个(标量)字符串
p3=[dna("CCA"),dna("CCC"),dna("CCG"),dna("CCT")]//启动子列表
p4=dna("GG")//单个启动子
setparam"name","left side"//将字符串值“左侧”分配到遵循设定参数(“α”)的DNA规范的名称参数。
setparam"leftTailLen",25//将α的最大左尾部长度设定为25个碱基对以用于工厂处的PCR扩增。
alpha=p1x p2//α是p1和p2的叉积
setparam"name","right side"//分配β以名称“右侧”。
setparam"leftTailLen",50//设定β的左尾部长度为50个碱基对。
beta=p3x p4//β是p3和p4的叉积
setparam"name","my linear seq"//分配总体以名称“我的线性序列”
total=alpha x beta//总体是α和β的叉积,其自身各是叉积
setparam"name","my plasmid"//分配名称值“我的质粒”到环化形式的总体的输出物
out=circularize(total)//将线性总体字符串环化成质粒表示
create out//指定“出”表示设计活动
在此实例中,解释器204应使DNA规范填有函数/运算符、输入物和参数,但应不执行解析输出物的函数。所得DNA规范“我的质粒”遵循下文并且被说明为图3中的树状数据结构350。注意,我的质粒DNA规范数据结构是递归的,包含子DNA规范(“子Dna规范”),并且在此实例中子DNA规范包含表示输入序列运算数的DNA组分。
假设没有进行抽样,执行引擎207应对运算数执行DNA规范叉积运算符以产生以下16个序列(其可以表示为DNA组分)。在本公开中其它地方提供序列表。
AAATTCCAGG <u>SEO ID NO:1</u>
AAATTCCCGG <u>SEO ID NO:2</u>
AAATTCCGGG <u>SEO ID NO:3</u>
AAATTCCTGG <u>SEO ID NO:4</u>
AAGTTCCAGG <u>SEO ID NO:5</u>
AAGTTCCCGG <u>SEO ID NO:6</u>
AAGTTCCGGG <u>SEO ID NO:7</u>
AAGTTCCTGG <u>SEO ID NO:8</u>
AATTTCCAGG <u>SEO ID NO:9</u>
AATTTCCCGG <u>SEO ID NO:10</u>
AATTTCCGGG <u>SEO ID NO:11</u>
AATTTCCTGG <u>SEO ID NO:12</u>
AACTTCCAGG <u>SEO ID NO:13</u>
AACTTCCCGG <u>SEO ID NO:14</u>
AACTTCCGGG <u>SEO ID NO:15</u>
AACTTCCTGG <u>SEO ID NO:16</u>
本发明实施例的有利特性是发订单引擎208可以采用DNA规范数据结构(如上文DNA规范数据结构)以除了仅为工厂210提供输出核苷酸序列以进行生产之外,还通知其的工厂订单生成。如上所述,数据结构呈树状形式,如图3中所说明。发订单引擎208可以从枝叶(例如对应于356、358)朝上遍历树状结构到分枝到起始根节点(例如对应于352)以确定在执行的每一阶段进行的运算以及在每一阶段采用的输入物、工厂工作流程和其它参数。发订单引擎208可以将这种信息并入工厂订单中。(注意,如所属领域的技术人员所认识,本文中的运算的“性能”可以替代地指代通过执行引擎207或解释器204(取决于实施例)进行的运算的计算机模拟执行或基因制备系统中的运算的相应体内物理或体外物理具体化(取决于本文中的论述情况)。举例来说,尽管两种核苷酸序列上的级联运算应通过计算机装置来以逻辑方式执行,但其应通过将工厂中的两种物理序列接合在一起来以物理方式具体化。)
因此,不同于常规的序列设计实施方案,本发明的实施例提供用于序列设计的数据结构,其不仅向发工厂订单器(在本文中发订单引擎208)通知最终的序列输出物,也在设计研发的开始、中间和结束阶段通知运算和情境信息。这种信息的延用减轻工厂210的负担以确定所有开始和中间部分、工作流程和其它参数,因此提高产生所需序列的效率。举例来说,基于DNA规范中的这种信息,发订单引擎208可以确定待修饰的初始碱基菌株,以及待在组装最终所需核苷酸序列过程中的不同中间阶段在工厂210使用的潜在不同的启动子、工作流程、温度设定和引物。举例来说,退火温度的容许范围可以是不同的以用于从基因组DNA中扩增而不是从质粒DNA中扩增。
DNA规范中的设定参数关键字可用于设定任何所产生DNA规范的名称和描述以及管控如何执行工厂操作的其它特质。设定参数语句采取两种变量参数,即参数名称和分配到其的值。一些参数使用单个字符串值;其它参数可以使用单个字符串或字符串列表。“名称”和“描述”参数将设定Dna规范的最显而易见的用户可见性质。以下是可以使用设定参数指定的非穷尽性参数列表:
扩增部分-指定所述部分是否扩增的“真”或“假”布尔值。
组装方法-在工厂使用的用以组装构建体的构建方法。例如“酵母同源重组”、“吉布森”或“LCR”中的一种
描述-分配到Dna规范/活动的描述。
群组名称-分配到由特定Dna规范生成的组装部分集合的名称。可以与扩增部分结合使用。
左尾部长度和右尾部长度-用于扩增的指定用以生产的最大尾部长度的整数值
名称-分配到Dna规范/活动的名称。
备注-用于人类引用的关于活动的较长自由形式的备注这可以是字符串列表。
输出物名称-指定分配给Dna组分的名称的字符串或字符串列表,所述Dna组分由生成有这种参数名称的Dna规范产生,(例如如果您使输入物组环化,则您可以设定参数“输出物名称”、[“我的环化1”、“我的环化2”、……]以命名不同的环化构建体。
引物源-例如“IDT”(整合DNA技术公司(Integrated DNA Technologies,Inc.)或“库”中的一种以指定用于活动的引物源
质粒源-例如“建构体”或“库”中的一种以指定用于活动的质粒源
目标退火温度-待在工厂采用以扩增构建体的所需温度
替换函数
另一个特别切合的函数是替换函数。作为替换位于微生物菌株的DNA序列中的基因之前的启动子的程序的实例,首先引用图4的DNA组分。图4说明标注DNA序列400的实例,其包含两组启动子402A、402B、基因404A、404B和终止子406A、406B(一般“p-g-t”序列),分别是p1(SEQ ID NO:17)-YFG1(SEQ ID NO:18)-tl和p2-YFG2-t2。(显示标注以用于启动子p1(SEO ID NO:17)和基因YFG1(SEO ID NO:18)。)
图5说明施用到图4的p-g-t序列的启动子调换运算500。使用组合性叉积(“×”)运算,程序将生成所有p-g-t序列与经p1'、p2'和p3'逐个替换的原始p-g-t序列中的启动子的所有组合,产生待转换成设计活动的六个输出序列。(前四个输出序列502在所述图中说明。)
用于执行这种运算的程序代码如下。函数的描述在注释中给出。
hostStrain=dnaForStrain(
"e-coli-461")#加载与具有指定Zld或名称的菌株相关的Dna组分
promoters=load("promoter-lib-2-13-2015.gb")#从LIMS库中加载所有通过变量参数中的名称识别的启动子。
genes=locateGenes(hostStrain,"YFG*")#定位通过宿主菌株变量识别的微生物菌株中的开始名称为“YFG”的基因,并且分配这种经定位Dna规范以名称“基因”。(“YFG*”表示“你的心仪基因”,即用于特定应用实例内的用户的优选描述性名称的占位符。)
创建替换启动子[×](基因、启动子)
替换启动子()函数替换标注为调节给定基因的启动子。如由叉积函数调用修改器“×”所指示,替换启动子()在本文中产生由“基因”识别的所有标注(基因组中的位置)的表示和由“启动子”所识别的启动子序列的表示替换的基因的标注启动子的表示。这种创建函数用“替换”函数产生Dna规范,并且产生表明以下的参数:其应在“替换-启动子”模型中执行,一个变量参数列表是启动子,并且其它变量参数列表是经定位Dna规范(在本文中称为“基因”),即其功能是“定位”并且由其启动子经调换的名称指示基因集合的一或多种Dna规范。“创建”函数创建设计活动以用于输入到工厂中来生成DNA序列。
本发明实施例的一个特性是基因组设计语言包含基因组感知的编辑运算。举例来说,解释器204(或在一些实施例中执行引擎207)执行替换启动子()以获得定位标注为调节p-g-t序列中的基因的启动子的知识。通过读取库中的p-g-t序列,解释器204(或在一些实施例中执行引擎207)由基因的DNA组分标注识别每一个基因的适当的启动子,并且随后能够替换启动子。参见BBF RFC 108:合成生物学开放语言(SBOL)2.0.0版,编者巴特利等人,2015年7月31日(标注)。
注意,替换启动子()更多使用启动子标注以定位调节基因的启动子。其从标注启动子的上游端到基因的起始密码子替换全部序列。如果不存在启动子标注以用于目的基因,则将新的启动子插入在基因之前。如果存在与启动子区重叠的标注,则所述方法将警示用户或有时尝试去矫正冲突。
图6提供具有替换[×](定位术语[×](质粒,“插入-位点”),新基因)叉积函数以用于将基因(新基因)602A、602B、602C插入质粒604中的DNA规范的图形表示,所述规范表示其插入区域经指定基因602A、602B、602C替换的质粒的所有三种组合606。函数采取具有质粒插入区域(其可以由标量DNA组分表示)的基因列表的叉积以输出表示经修饰质粒的DNA规范。可替代地,质粒可以表示为DNA组分。函数首先指定待通过命名为定位术语[×](质粒,“插入-位点”)替换的序列在质粒内的位置。可替代地,插入位点可以通过识别选址名称例如定位名称[×](质粒,“MseI切割位点”)来定位。这些函数返回经定位Dna规范。替换函数随后将新基因列表叉积替换到由经定位Dna规范指定的位置中。
上文实例证实本发明实施例的编程语言和数据结构的递归能力的另一个优点。所述语言使用户能够通过指定待在制备的每一阶段使用的运算、输入物和条件来独立地控制序列制备过程的所有阶段(开始、中间和末尾)。在上文实例中,本说明书指定在不同级(节点)的DNA规范树状结构处的叉积运算:在位置解析内函数处的叉积运算,以及在树状结构上方较远处的替换函数外函数处的叉积运算。类似地,用户可以在不同阶段/层级处指定不同的点和叉运算符组合、不同的参数(例如温度和其它环境条件)和不同的输入物(例如启动子)。
非确定性函数
本发明的实施例提供概率性非确定性函数,其中一些反映产生随机结果的实验室方法的现实结果。一般来说,概率性函数以非确定性方式使对核苷酸序列的改变生效。实例是序列的任意位置处的转座因子的插入、序列中的任何位置处的一或多种单核苷酸变化(例如反映化学或UV突变)、编码序列中的任何一个密码子的第三位置处的一种单核苷酸变化(例如通过产生NNK库)、已知位置处的一种或两种核苷酸变化(例如来自具有简并引物的PCR)或通过定向进化进行的一组未知变化。
下文两个实例实施允许在核苷酸序列生成中进行受限随机化的概率函数。
#定义起始序列
enzyme_seq=dnaComponent(13000000000)
sequence_library=mutate(enzyme_seq,“NNK”)#使用NNK图案突变给定序列(即改变每个密码子的第三碱基“K”,并且K限于鸟嘌呤(G)或胸腺嘧啶(T)的随机选择)
#产生简并引物的另一个实例
base_primer=dnaComponent(13000000001)#用于引物组的模板序列
variablejocations=locate(base_primer,[4,9])#随着位置变化来识别位置4和9
degen_primers=degenerate(variable_locations,[“A”,“G”,“C”,“T”])#产生其位置4和9处的碱基可以任意地选自A、G、C或T中的任一个的全组可能性引物
生成质粒
作为另一个实例,以下程序加载一些启动子、一些基因、终止子和质粒主链。所述程序将使用叉积级联函数产生所有可能性启动子和基因(以及终止子)组合,将其每一个卡钩到主链,将其环化成质粒,并且创建表示所有这些设计的活动:
#准备好所述部分:
启动子=dna规范(18000000001)
基因=dna规范(18000000002)#YFG的id
#(由“你的心仪基因(YFG)”指示的基因)在此。
终止子=dna组分(13000000001)
质粒主链=dna组分(13000109030)
#产生P-G-T序列。我们想要所有可能性启动子和基因组合,因此我们使用‘×’(级联叉积)运算符。
#因为我们仅具有一个终止子和一个主链并且我们想要将其施用到所有
序列,所以我们再次使用‘×’:
总成=启动子×基因×终止子
前体质粒=总成×质粒主链
#我们不想要线性DNA,我们想要环化前体质粒以生成环形质粒。
质粒=环化(前体质粒)
#指定‘质粒’Dna规范是最终活动。
#这将使生成Dna规范上载到LIMS。生成质粒
抽样
如上文所论述,合成生物学系统如本发明实施例的合成生物学系统允许在由多种DNA运算数表示的多种DNA部分上进行多种运算。因此,所得设计活动可以包含多种数千DNA序列的表示DNA序列举例来说,所述程序可以生成10,000个修饰基因组,其应占据约50-100GB存储空间。此时,这种信息应不允许典型的常规内存中的有效管理并且替代地需要例如较慢的基于磁盘的存取。现行商用计算机系统无法在表示基因组的50-100GB SBOL文件上进行有效地加载和操作。这类操作可能会崩溃或造成不可接受的处理延迟。
本发明的实施例通过抽样避免这些潜在的存储和处理问题。在一些实施例中,发订单引擎208可以仅选择子组输出以用于并入工厂订单中。这种操作可以采用多种不同的技术例如随机抽样以产生N构建体,或抽样第一个或最后一个K DNA构建体。为降低存储要求,这种方法可以仅存储经抽样输出物以用于并入工厂订单中。
可替代地,在其中执行引擎207执行DNA规范以生成填入DNA规范中的输出物的实施例中,执行引擎207自身可以由解释器204任选地抽样DNA规范以选择子组DNA规范来用于执行。这种方法特别适用于解释器204的较大递归DNA规范输出数据结构内的表示中间运算的DNA规范(例如子DNA规范)。结果,执行引擎207产生仅用于所选的被执行DNA规范的输出物。从执行引擎207的执行解耦解释器204的解释能够进行用于执行的抽样来将输出物的尺寸减小多个数量级,由此减少对非常大的存储容量和繁重处理的需要。
紧接在上文的实施例的抽样操作可以采用多种不同的技术,例如随机抽样或抽样第一个或最后一个K DNA规范以用于执行。另外,执行引擎207可以在执行之前更智能地抽样DNA规范。一种方法是对DNA规范进行加权以用于执行。举例来说,在DNA规范数据结构内,启动子和其它参数化因子可以取决于例如其成本、可获得性或已知的有效性而被分配不同权重。举例来说,假设DNA规范数据结构将级联叉积函数施用到两个输入运算数—基因列表和启动子列表。在此实例中,每个启动子可被分配0与1之间的加权参数(参数),其在执行引擎207的DNA规范选择中通知其以进行执行。列表中的启动子的权重越高,执行引擎207将越有可能执行DNA规范以用于(将级联叉积运算符施用到)这类启动子。
权重自身可以作为DNA规范的参数添加以对其它参数加权。举例来说,子DNA规范(即低于顶级DNA规范)可以包含被分配概率性权重的加权参数,其表达为权重启动子=pi以用于子DNA规范内的单个启动子或表达为权重启动子=[p1、p2、……pN]以用于相同子DNA规范内的启动子列表。参数(例如启动子)权重的总和可以总计为值1,其特别地用于递归DNA规范的阶层式树状结构内的相同级的运算的参数。
另一个策略是采用实验设计方法来智能地仅选择指定数量的可能性启动子-基因组合以便学习每个组合的功效。作为这种实施方案的部分,在一个实施例中,执行引擎207可以执行适当的规范以确保每个启动子在一个组合中至少使用一次,同时限制组合总数。
甚至可以加权DNA组分以导引执行引擎207在DNA组分上执行运算符。举例来说,具有DNA组分列表作为输入物的DNA规范可以包含权向量:权向量=[p1、p2、……pN]以用于DNA组分列表。
高速缓存
在本发明的实施例中,执行引擎207(或在其中解释执行DNA规范的实施例中解释器204)可以采用高速缓存以避免重新计算可以在执行DNA规范期间重复使用的结果。举例来说,规范可以指定叉积级联A×(B×C),其中A、B、C是核苷酸序列长列表。执行引擎207应级联A的每个元素与由叉积B×C产生的所有元素。重新计算B×C输出物以用于与A中的每个项目进行的每个级联是冗余的并且耗时的,因此执行引擎207可以在第一次计算B×C之后替代地高速缓存那些B×C结果,并且随后在与A的元素进行的叉积计算中使用那些结果。因此高速缓存节约处理时间并提高处理速度。
高速缓存不仅仅在相同运行(例如订单生成)内使用,而且在不同的运行中使用。举例来说,用户可以确定,与由先前订单生成的序列相比,更好的或不同的结果是期望的。因此,用户可以再运行程序以发放另一个工厂订单,或许这次导入抽样以选择不同子组的DNA规范来执行。然而,这样一来,脚本可能仍然需要执行相同中间运算中的一些作为先前订单生成运行。参考右侧和左侧启动子的嵌套式级联的本文实例,用户可能想要再运行较高级(总体)级联函数以获得不同的右侧序列输出物,但不改变左侧运算。因此,系统可以在再运行较高级函数期间高速缓存较低级中间左侧结果以便后续使用。一般来说,相比较高级运算的输出物,更反复地需要较低级运算(例如在阶层式树状结构的枝叶处)的输出物,因此如果存储仓受限,则执行引擎207可以先于较高级输出物促进高速缓存较低级输出物。基于前述内容,在本发明的实施例中执行引擎207高速缓存由树状结构内的不同级运算产生的DNA规范以避免在后续运行期间重新执行,因此节省处理时间并提高处理速度。
工厂建构图
工厂建构图以及预定工厂制备工作流程是工厂订单的实施例。发工厂订单引擎208可以接收以抽象形式描述逻辑指令集合的Dna规范来创建一或多种所需DNA设计,通常在微生物或其它宿主细胞内实施。取决于特定所需组装技术或输出设计或细胞宿主上的限制条件所必要的组装技术,将选定特定的制备工作流程(通过发订单引擎208,如或由用户所供应)来执行工作。未在DNA规范中指定的工作流程以及制备参数(例如引物)可以基于工业中已知或研发者专有的物理工作流程来确定,所述工作流程已经通过用于基于给定输入序列来合成中间或最终核苷酸序列的实验研发。这种工作流程与描述工作的一组输入物配对来在每个步骤中执行以制备每个特定的输出设计。
工厂建构图可以采取容纳定向非循环图(DAG)的数据结构的形式(参见附件2)。所述图是两种类型的记录本、节点和边缘以及零个或多个性质的集合。每个节点具有节点ID并追踪出自其的边缘。根据本发明的实施例,每个节点表示核苷酸序列(例如DNA)部分或细胞菌株。这些部分可以是前体(例如第三方设备供应商订购的引物)、中间部分(例如作为级联结果的较长DNA区段或用于整合最终菌株DNA序列中的变化的质粒)或最终DNA序列、菌株或生物体自身。
发订单引擎208从枝叶朝上遍历Dna规范(如上文所描述)并且使用每个接合点作为机会点以计算树的所述级处的中间或最终结果如何由先前依赖性部分产生。发订单器208将这种信息写入DAG的数据结构中。在特定工作流程步骤的情形下记录这种信息,所述步骤用于以物理方式执行运算;因此,除了记录建构图的节点中的步骤的输入物和输出物之外,每个边缘也标注有源节点在构建特定目标中所发挥的“作用”。所述图的数据结构中的节点和边缘也容纳参数化工作流程可能所需要的其它参数(例如用于PCR反应的热循环仪上的温度设定)。
工厂建构图的元素是字面上描述于Dna规范中的序列或子序列以及通过发工厂订单引擎208自身计算的其它序列的组合—例如用于扩增PCR过程中的较长模板序列的特定子序列的引物,如图8中所说明。在这种情况下,发订单器208可以通过所述图的节点表示较长模板序列。发订单器208可以将从此模板序列节点到表示具有如“模板序列”作用的PCR产品的节点标注边缘。发订单器208可以在其它节点中存储计算所得的引物,并且将其边缘标注到具有如“扩增引物”作用的PCR产品。所有这些节点都从边缘向外到表示PCR扩增的子序列的第四节点。
具体地说,图8是示例性工厂建构图的图。为简洁起见,此实例是部分建构图;完整图应含有从所有根部前体到所有最终设计的所有信息。在图8中,节点902表示DNA序列。边缘904通过工厂工作流程方法将节点902的输入DNA序列连接到节点906的输出DNA序列,指定特定输入物902在制备特定输出物906中的作用(在904中,“引物”)。节点906的输出序列包含PCR过程的经扩增序列。其它节点如节点908(通过发订单引擎208计算或由用户提供)可以含有物理或元数据处理节点908的序列所需的另外的参数和信息。附件2提供具有图8中所示出的呈JSON串行化形式的顶部五个节点(节点1 902、节点2 914、节点3 916、节点4906、节点5 912)的数据结构表示的实例。
在图8中,所述图表示待与显示为起质粒主链作用的节点910中的序列级联的起有效载荷区域作用的节点906中的序列,如在出自节点906的边缘上所指示。发订单器208结合这两种输入物与“级联有效载荷区域与质粒主链并环化所得物”的物理制备工作流程,如节点912中所指示。由发订单引擎208支持的运算是当特定前体或中间序列可用于制备待生成作为相同订单的部分的多种所需输出序列时认识的能力。发订单引擎208可以通过所述图中的单个节点表示这类序列(例如普通质粒主链910),并且直接视其而定多个输出边缘产生所有中间序列或最终序列。发订单引擎208可以使用这种信息来计算执行对应于完整订单的制备子工作流程所需的体积、浓度或其它量。节点的向外边缘的数量也可以供发订单引擎208使用以指定不同子工作流程中的相应序列的处理。举例来说,相比仅出现一次的扩增子,高度使用的扩增子可以通过不同的手段处理。另外,建构图中的每个路径经独特地索引并且可以独立地与来自不同的工厂订单建构图的其它路径组合。这种构建允许基因制备系统以与单个工厂订单中指定的特定组的核苷酸序列解耦的方式组装多种核苷酸序列的序列部分。
计算机系统
图7展示根据本发明实施例的可用于执行存储于非瞬时性计算机可读媒体(例如存储器)中的程序代码的计算机系统800的实例。计算机系统包含输入/输出子系统802,其可用于实施输入界面202以视应用而定与人类用户和/或其它计算机系统连接。举例来说,本发明实施例的编辑器可以实施于具有用于从人类用户(例如通过GUI或键盘)接收输入程序语句并且将其展示回给用户的I/O子系统802的系统800上的程序代码中。I/O子系统802可以包含例如键盘、鼠标、图形用户界面、触摸屏或用于输入的其它界面以及例如LED或其它平整屏幕显示器或用于输出的其它介面。本发明实施例的其他元件如发订单引擎208可以是与计算机系统如具有计算机系统800但或许不具有I/O的计算机系统一起实施。
程序代码可以是存储于非瞬时性媒体如永久性存储器810或存储器808或两者中。处理器804从一或多种非暂时性媒体中读取程序代码并执行所述代码以允许计算机系统实现通过本文实施例进行的方法,如由图2的流程图表示的方法。所属领域的技术人员将了解,处理器可以摄入源代码如本发明实施例的高级基因组设计语言中表达的语句,并且将源代码解释或编译成在硬件门级的处理器中可理解的机器代码。总线耦合I/O子系统802、处理器804、周边装置806、存储器808和永久性存储器810。
所属领域的技术人员将了解,本发明实施例的元件中的一些或全部如图1中示出的那些元件(例如解释器、执行引擎、发订单引擎、工厂、测试设备、分析设备)和其随附操作如图2中示出的那些操作可以完全或部分地在一或多种计算机系统上实施,所述计算机系统包含一或多个处理器和一或多个存储器系统如具有计算机系统800的那些存储器系统。一些元件和功能可以在本地实施且其它元件和功能可以以通过不同服务器的网络分布方式(例如用户端-服务器方式)实施。
当本发明特别地关于所说明实施例进行描述时,应了解,各种更改、修改和调适可以基于本公开作出并且意图在本发明的范围内。当本发明与本公开实施例结合进行描述时,应理解,本发明不限于本公开实施例,但相反地旨在覆盖各种修改和包含于权利要求范围内同等配置。
附件1:函数引用
这份附件描述在内置式库中可获得的函数中的一些以用于LIMS中的密码子语言。
环化
circularize(input:Dnalnput)-&gt;DnaSpec
circularize(input:Dnalnput,originShift:Int)-&gt;DnaSpec
返回表示环化形式的一或多种DNA输入物的Dna规范。如果原点位移已指定,则此通过原点位移碱基对将原点向下游(在环绕情况下)位移,
级联
concat[x](left:Dnalnput,right:Dnalnput)-&gt;DnaSpec
级联左、右变量参数。取决于所选运算符修改器用于左*右或左×右的函数-调用同义词。
dna
dna(dnaSeq:String)-&gt;DnaComp
dna(dnaSeq:String,name:String)-&gt;DnaComp
返回囊封由指定字符串表示的DNA序列的Dna组分。您可以任选地指定用于所产生Dna组分的名称。
ecoRV=dna("GATATC")#限定酶结合位点
ecoRV2=dna("GATATC","ecoRV")#...创建经命名Dna组分。
dna组分
dnaComponent(zid:Int)-&gt;DnaComp dnaComponent(name:String)-&gt;DnaComp
连接到LIMS库并加载具有指定ZId或名称的Dna组分。
myDnaComponent=dnaComponent(13 000000001)
dnaForStrain
dnaForStrain(zid:Int)-&gt;DnaComp
dnaForStrain(name:String)-&gt;DnaComp
加载与具有指定ZId或名称的菌株相关的Dna组分。
************
baseStrainDna=dnaForStrain(7000000001)
dna规范
dnaSpecification(zid:Int)-&gt;DnaSpec
dnaSpecification(name:String)-&gt;DnaSpec
连接到LIMS并加载具有指定ZId或名称的Dna规范。
myDnaSpec=dnaSpecification(18000000001)
你好
hello(name:String)-&gt;String
返回友好的问候语到指定名称。如您可能所设想,这主要可用于循环播放。
打印hello("Bob")#打印“你好,鲍勃”到显示屏,
长度
len(list:List[Any])-&gt;Int
len(map:Map[Any])-&gt;Int
len(str:String)-&gt;Int
返回指定列表、地图或字符串的长度。
列表规范
listSpec(lst:List[DnaComp])-&gt;DnaSpec
listSpec(lst:List[DnaSpec])-&gt;DnaSpec
采取Dna组分列表或Dna规范并创建列举这些输入物的Dna规范。也参见:部分列表()
部分列表
partsList(parts:List[DnaInput],groupName:String)-&gt;DnaSpec
partsList(parts:List[DnaInput],groupName:String,leftLen:Int,rightLen:Int)-&gt;DnaSpec创建表示具有指定性质的部分列表的Dna规范。输出Dna规范将具有根据变量参数设定的群组名称性质。如果不提供左、右尾部长度,则其在Dna规范中将设定为零。否则,将使用指定左、右尾部长度。将忽略由任何先前设定参数语句指定的用于群组名称、左尾部长度和右尾部长度的参数。
使用这种函数等同于以下:
myParts=[...]#设定为Dna规范、Dna组分等列表
setparam"amplifyPart","true"
setparam"groupName",myGroupName
setparam"leftTailLen",myLeftLen
setparam"rightTailLen",myRightLen
myPartsList=listSpec(myParts)
clearparams#或以其它方式恢复amplifyPart/groupName/leftTailLen/rightTailLen。
也参见:列表规范()。
toSeq
toSeq(dna:DnaComponent)-&gt;String
返回Dna组分底层的DNA序列作为字符串。
toString
toString(val:Any)-&gt;String
toString(val:Any,recursive:Int)-&gt;String
将指定值转换成字符串。递归变量参数是布尔标签(使用真或假常数)以表明Dna规范结构是否以递归方式查找。
打印toString(foo)#打印'foo'的值到输出物。
打印toString(myDnaSpec,true)#打印完整Dna规范和其子级
proswp
proswp[x](baseStrain:LocatedDnaSpec,promoters:Dnalnput)-&gt;DnaSpec
proswp[x](baseStrain:LocatedDnaSpec,promoters:Dnalnput,allowlnsert:Int)-&gt;DnaSpec恰好在经定位碱基菌株中识别的基因上游进行与插入一或多个指定启动子相关的启动子调换,
替换先前驱动启动子。
如果指定‘允许插入’,则这是‘真’,从而如果现存启动子不驱动指定基因则允许插入启动子,或这是‘假’,从而如果不存在用以替换的驱动启动子,则失败。
替换
replace[x](baseStrain:LocatedDnaSpec,insertions:Dnalnput)-&gt;
在一或多个碱基菌株的一或多个指定位置处,用由‘插入’指定的新序列替换在所述位置中识别的子序列。
您可以在‘插入’中指定多种插入物。取决于选择叉(‘[×]’)或选择点(‘[*]’)运算符,这将在‘碱基菌株’中的每个生成位置置放一个插入物,或将每个插入物施用到每个可能性位置。
替换运算可以指定严格的插入运算,其用替换序列部分“插入’替换空的可替换区域。可替代地,替换运算可以指定严格的删除运算,其用空的替换序列部分替换可替换区域。
定位、定位名称、定位术语
locate(baseStrain:Dnalnput,offset:Int)-&gt;LocatedDnaSpec
locate[x](baseStrain:Dnalnput,offset:List[Int])-&gt;LocatedDnaSpec
locate(baseStrain:Dnalnput,offset:Int,length:String)-&gt;LocatedDnaSpec
locate[x](baseStrain:Dnalnput,offset:List[Int],length:List[String])-&gt;
LocatedDnaSpec
locate(baseStrain:Dnalnput,offset:Int,subseq:String)-&gt;LocatedDnaSpec
locate[x](baseStrain:Dnalnput,offset:List[Int],subseq:List[String])-&gt;
LocatedDnaSpec
locateName(baseStrain:Dnalnput,annotationName:String)-&gt;LocatedDnaSpec
locateName[x](baseStrain:Dnalnput,annotationNames:List[String])-&gt;
LocatedDnaSpec
locateTerm(baseStrain:Dnalnput,annotationTerm:String)-&gt;LocatedDnaSpec
locateTerm[x](baseStrain:Dnalnput,annotationTerms:List[String])-&gt;LocatedDnaSpec
给定一些Dna输入物,返回环绕其的经定位Dna规范。经定位Dna规范含有相同的输出物,但具有在输出参数中返回的关于识别区域的位置信息。所述经定位Dna规范是其函数是定位的Dna规范。区域识别通过Dna规范内的参数地图进行。
位置可以是单个碱基或在多个碱基上方延伸的区域。
位置指定为单个偏移或从‘偏移’延伸到‘偏移+长度’或‘偏移+长度(子序列)’的区域。在后一种情况下,‘子序列’必须是以‘偏移’开始的准确符合条件的DNA序列。
位置也可以作为每个碱基菌株元素中的(独特)名称的标注区域给出。经定位区域是整个延伸长度的标注。
如果给定多种标注或偏移/偏移+长度/偏移+子序列值,则取决于选择点(‘[*]’)或选择叉(‘[×]’)运算符,分别将这些一次一个地施用到‘碱基菌株’的个别元素上,或全部施用到‘碱基菌株’的所有元素上。
基于标注的位置可以指定为或具体标注名称以返回(在此情况下其应根据输入基因组返回单个位置)或标注的序列特性术语名称(在此情况下根据输入基因组可以返回多个位置)。
经定位Dna规范可用作函数如‘插入’、‘替换’和‘删除’的输入物。当从DNA序列中移除碱基(例如以‘替换’和‘删除’方式)时,移除量指定为大量碱基对或具体待移除子序列中的‘定位’的参数。也就是说,完整经定位区域通过‘替换’或‘删除’来移除。
您可以指定空的子序列或长度为0以表明没有删除(例如‘替换()’函数用于纯插入)。
偏移始于1并且上升并且包含‘|DNA序列|’。考虑以下实例:
输入物=dna("AATTCG")
replace[x](locate(input,3,1),dna("A"))//返回"AAATCG"
插入
insert[x](baseStrain:LocatedDnaSpec,insertions:Dnalnput)-&gt;DnaSpec
在碱基菌株的指定位置处,插入指定插入物。
如果‘碱基菌株’或‘插入物’是多种输入物,则以点积或叉积方式根据函数调用修改器插入‘碱基菌株’的元素。
下游插入
insertDownstream[x](baseStrain:LocatedDnaSpec,insertions:Dnalnput)-&gt;DnaSpec
紧接在碱基菌株中指定标注之后,相对于标注的方向,插入由‘插入物’指定的DNA。也就是说,在“正向”标注中,向右插入标注序列(如从5'到3'读取);在反向标注中,向左插入。
如果‘碱基菌株’或‘插入物’Dna输入物表示多种输入物,则根据函数调用修改器以所有‘碱基菌株’实例与所有‘插入物’实例的点积或叉积进行插入。
上游插入
insertUpstream[x](baseStrain:LocatedDnaSpec,insertions:Dnalnput)-&gt;DnaSpec
紧接在碱基菌株中指定标注之前,相对于标注的方向,插入由‘插入物’指定的DNA。也就是说,在“正向”标注中,向左插入标注序列(如从5'到3'读取);在反向标注中,向右插入。
如果‘碱基菌株’或‘插入物’Dna输入物表示多种输入物,则根据函数调用修改器以所有‘碱基菌株’实例与所有‘插入物’实例的点积或叉积进行插入。
附件2:数据结构
此附件提供可以由本发明的实施例采用的数据结构的实例。其涉及可以通过呈Avro规范格式的以下内容指定和串行化的Dna规范和Dna组分、数据结构:(参见http://avro.apache.org/docs/current/spec.html)
以下是具有图8中所示出的呈JSON串行化形式的顶部五个节点(节点1 902、节点2914、节点3 916、节点4 906、节点5 912)的数据结构表示的实例:
序列表
&lt;110&gt; B•弗勒旺
&lt;120&gt; 用于改进地大规模生产工程化核苷酸序列的微生物菌株设计系统和方法
&lt;130&gt; 280716
&lt;140&gt; US 15/140,296
&lt;141&gt; 2016-04-27
&lt;160&gt; 19
&lt;170&gt; PatentIn version 3.5
&lt;210&gt; 1
&lt;211&gt; 10
&lt;212&gt; DNA
&lt;213&gt; 人工序列
&lt;220&gt;
&lt;223&gt; 未知的生物学意义
&lt;400&gt; 1
aaattccagg 10
&lt;210&gt; 2
&lt;211&gt; 10
&lt;212&gt; DNA
&lt;213&gt; 人工序列
&lt;220&gt;
&lt;223&gt; 未知的生物学意义
&lt;400&gt; 2
aaattcccgg 10
&lt;210&gt; 3
&lt;211&gt; 10
&lt;212&gt; DNA
&lt;213&gt; 人工序列
&lt;220&gt;
&lt;223&gt; 未知的生物学意义
&lt;400&gt; 3
aaattccggg 10
&lt;210&gt; 4
&lt;211&gt; 10
&lt;212&gt; DNA
&lt;213&gt; 人工序列
&lt;220&gt;
&lt;223&gt; 未知的生物学意义
&lt;400&gt; 4
aaattcctgg 10
&lt;210&gt; 5
&lt;211&gt; 10
&lt;212&gt; DNA
&lt;213&gt; 人工序列
&lt;220&gt;
&lt;223&gt; 未知的生物学意义
&lt;400&gt; 5
aagttccagg 10
&lt;210&gt; 6
&lt;211&gt; 10
&lt;212&gt; DNA
&lt;213&gt; 人工序列
&lt;220&gt;
&lt;223&gt; 未知的生物学意义
&lt;400&gt; 6
aagttcccgg 10
&lt;210&gt; 7
&lt;211&gt; 10
&lt;212&gt; DNA
&lt;213&gt; 人工序列
&lt;220&gt;
&lt;223&gt; 未知的生物学意义
&lt;400&gt; 7
aagttccggg 10
&lt;210&gt; 8
&lt;211&gt; 10
&lt;212&gt; DNA
&lt;213&gt; 人工序列
&lt;220&gt;
&lt;223&gt; 未知的生物学意义
&lt;400&gt; 8
aagttcctgg 10
&lt;210&gt; 9
&lt;211&gt; 10
&lt;212&gt; DNA
&lt;213&gt; 人工序列
&lt;220&gt;
&lt;223&gt; 未知的生物学意义
&lt;400&gt; 9
aatttccagg 10
&lt;210&gt; 10
&lt;211&gt; 10
&lt;212&gt; DNA
&lt;213&gt; 人工序列
&lt;220&gt;
&lt;223&gt; 未知的生物学意义
&lt;400&gt; 10
aatttcccgg 10
&lt;210&gt; 11
&lt;211&gt; 10
&lt;212&gt; DNA
&lt;213&gt; 人工序列
&lt;220&gt;
&lt;223&gt; 未知的生物学意义
&lt;400&gt; 11
aatttccggg 10
&lt;210&gt; 12
&lt;211&gt; 10
&lt;212&gt; DNA
&lt;213&gt; 人工序列
&lt;220&gt;
&lt;223&gt; 未知的生物学意义
&lt;400&gt; 12
aatttcctgg 10
&lt;210&gt; 13
&lt;211&gt; 10
&lt;212&gt; DNA
&lt;213&gt; 人工序列
&lt;220&gt;
&lt;223&gt; 未知的生物学意义
&lt;400&gt; 13
aacttccagg 10
&lt;210&gt; 14
&lt;211&gt; 10
&lt;212&gt; DNA
&lt;213&gt; 人工序列
&lt;220&gt;
&lt;223&gt; 未知的生物学意义
&lt;400&gt; 14
aacttcccgg 10
&lt;210&gt; 15
&lt;211&gt; 10
&lt;212&gt; DNA
&lt;213&gt; 人工序列
&lt;220&gt;
&lt;223&gt; 未知的生物学意义
&lt;400&gt; 15
aacttccggg 10
&lt;210&gt; 16
&lt;211&gt; 10
&lt;212&gt; DNA
&lt;213&gt; 人工序列
&lt;220&gt;
&lt;223&gt; 未知的生物学意义
&lt;400&gt; 16
aacttcctgg 10
&lt;210&gt; 17
&lt;211&gt; 19
&lt;212&gt; DNA
&lt;213&gt; 人工序列
&lt;220&gt;
&lt;223&gt; 未知的生物学意义
&lt;400&gt; 17
tcgacgtgac tagctacgt 19
&lt;210&gt; 18
&lt;211&gt; 31
&lt;212&gt; DNA
&lt;213&gt; 人工序列
&lt;220&gt;
&lt;223&gt; 未知的生物学意义
&lt;400&gt; 18
gtcagacgta gactgactga tcgacgatca g 31
&lt;210&gt; 19
&lt;211&gt; 10
&lt;212&gt; DNA
&lt;213&gt; 人工序列
&lt;220&gt;
&lt;223&gt; 未知的生物学意义
&lt;400&gt; 19
agctgagtca 10

Claims (21)

1.一种用于生成工厂订单以通过基因制备系统控制核苷酸序列生产的计算机实施的方法,所述方法包括:
在计算装置处接收表明对第一序列运算数和第二序列运算数进行的运算的表达,其中序列运算数表示核苷酸序列部分,所述第一和第二序列运算数各自表示至少一种核苷酸序列部分;
通过计算装置执行评估针对序列规范的表达的指令,其中所述序列规范包括包含以下的数据结构:(a)所述第一和第二序列运算数;(b)待对至少一个第一级序列运算数进行的一或多个第一级运算;和(c)一或多个第二级运算,其执行解析所述至少一个第一级序列运算数的值;以及
通过计算装置基于执行所述第一级运算中的一或多个和所述第二级运算中的一或多个来生成工厂订单,所述工厂订单供所述基因制备系统使用以将序列部分组装成至少一个核苷酸序列。
2.根据权利要求1所述的方法,其中:
所述数据结构进一步包含多个与所述一或多个第一级运算中的至少一个或所述一或多个第二级运算中的至少一个如何通过所述基因制备系统来进行具体化相关的参数;并且
生成工厂订单进一步基于所述多个参数。
3.根据权利要求2所述的方法,其中所述多个参数包含:
供所述基因制备系统在具体化所述一或多个第二级运算的第一第二级运算中使用的第一参数,和
不同于所述第一参数并且表示与所述第一参数相同类别的参数的第二参数,其供所述基因制备系统在具体化所述一或多个第二级运算的第二第二级运算中使用。
4.根据权利要求1到3中任一项所述的方法,其中所述数据结构包含一或多个第二级序列规范,每个第二级序列规范包含所述一或多个第二级序列运算,并且
生成工厂订单包括从所述一或多个第二级序列规范中选择子组第二级序列规范以供执行。
5.根据权利要求4所述的方法,其中选择第二级序列规范基于对所述第二级序列运算数进行加权。
6.根据权利要求4或5所述的方法,其中对所述第二级序列规范进行加权以用于基于其与核苷酸序列的表型性质的联系进行执行,所述核苷酸序列由于在所述工厂订单之前生成的至少一个先前工厂订单而进行组装。
7.根据权利要求1到6中任一项所述的方法,其中定向图用于生成所述工厂订单。
8.一种用于生成工厂订单以通过基因制备系统控制核苷酸序列生产的系统,所述系统包括:
一或多个处理器;以及
一或多个存储器,其与所述一或多个处理器中的至少一个可操作地耦合且其上存储有指令,所述指令在由所述一或多个处理器中的至少一个执行时促使所述系统:
接收表明对第一序列运算数和第二序列运算数进行的运算的表达,其中序列运算数表示核苷酸序列部分,所述第一和第二序列运算数各自表示至少一种核苷酸序列部分;
评估针对序列规范的表达,其中所述序列规范包括包含以下的数据结构:(a)所述第一和第二序列运算数;(b)待对至少一个第一级序列运算数进行的一或多个第一级运算;和(c)一或多个第二级运算,其执行解析所述至少一个第一级序列运算数的值;以及
基于执行所述第一级运算中的一或多个和所述第二级运算中的一或多个生成工厂订单,所述工厂订单供所述基因制备系统使用以将序列部分组装成至少一种核苷酸序列。
9.根据权利要求8所述的系统,其中:
所述数据结构进一步包含多个与所述一或多个第一级运算中的至少一个或所述一或多个第二级运算中的至少一个如何通过所述基因制备系统来进行具体化相关的参数;并且
生成工厂订单进一步基于所述多个参数。
10.根据权利要求9所述的系统,其中所述多个参数包含:
供所述基因制备系统在具体化所述一或多个第二级运算的第一第二级运算中使用的第一参数,和
不同于所述第一参数并且表示与所述第一参数相同类别的参数的第二参数,其供所述基因制备系统在具体化所述一或多个第二级运算的第二第二级运算中使用。
11.根据权利要求8到10中任一项所述的系统,其中所述数据结构包含一或多个第二级序列规范,每个第二级序列规范包含所述一或多个第二级序列运算,并且
生成工厂订单包括从所述一或多个第二级序列规范中选择子组第二级序列规范以供执行。
12.根据权利要求11所述的系统,其中选择所述子组第二级序列规范基于对所述第二级序列运算数进行加权。
13.根据权利要求11或12所述的系统,其中对所述第二级序列规范进行加权以用于基于其与核苷酸序列的表型性质的联系进行执行,所述核苷酸序列由于在所述工厂订单之前生成的至少一个先前工厂订单而进行组装。
14.根据权利要求8到13中任一项所述的系统,其中促使所述系统生成工厂订单的指令包括使用定向图的指令。
15.一种计算机可读媒体,一或多个所述计算机可读媒体存储用于生成工厂订单以通过基因制备系统控制核苷酸序列生产的指令,其中所述指令在由一或多个计算装置执行时促使所述一或多个计算装置中的至少一个:
接收表明对第一序列运算数和第二序列运算数进行的运算的表达,其中序列运算数表示核苷酸序列部分,所述第一和第二序列运算数各自表示至少一种核苷酸序列部分;
评估针对序列规范的表达,其中所述序列规范包括包含以下的数据结构:(a)所述第一和第二序列运算数;(b)待对至少一个第一级序列运算数进行的一或多个第一级运算;和(c)一或多个第二级运算,其执行解析所述至少一个第一级序列运算数的值;以及
基于执行所述第一级运算中的一或多个和所述第二级运算中的一或多个生成工厂订单,所述工厂订单供所述基因制备系统使用以将序列部分组装成至少一种核苷酸序列。
16.根据权利要求15所述的计算机可读媒体,其中:
所述数据结构进一步包含多个与所述一或多个第一级运算中的至少一个或所述一或多个第二级运算中的至少一个如何通过所述基因制备系统来进行具体化相关的参数;并且
生成工厂订单进一步基于所述多个参数。
17.根据权利要求16所述的计算机可读媒体,其中所述多个参数包含:
供所述基因制备系统在具体化所述一或多个第二级运算的第一第二级运算中使用的第一参数,和
不同于所述第一参数并且表示与所述第一参数相同类别的参数的第二参数,其供所述基因制备系统在具体化所述一或多个第二级运算的第二第二级运算中使用。
18.根据权利要求15到17中任一项所述的计算机可读媒体,其中所述数据结构包含一或多个第二级序列规范,每个第二级序列规范包含所述一或多个第二级序列运算,并且
生成工厂订单包括从所述一或多个第二级序列规范中选择子组第二级序列规范以供执行。
19.根据权利要求18所述的计算机可读媒体,其中选择所述子组第二级序列规范基于对所述第二级序列运算数进行加权。
20.根据权利要求18或19所述的计算机可读媒体,其中对所述第二级序列规范进行加权以用于基于其与核苷酸序列的表型性质的联系进行执行,所述核苷酸序列由于在所述工厂订单之前生成的至少一个先前工厂订单而进行组装。
21.根据权利要求15到20中任一项所述的计算机可读媒体,其中促使所述至少一个计算装置生成工厂订单的指令包括使用定向图的指令。
CN201780035220.XA 2016-04-27 2017-04-26 用于生成工厂订货单以控制核苷酸序列生产的方法和系统 Pending CN109313741A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/140,296 2016-04-27
US15/140,296 US11151497B2 (en) 2016-04-27 2016-04-27 Microbial strain design system and methods for improved large-scale production of engineered nucleotide sequences
PCT/US2017/029725 WO2017189784A1 (en) 2016-04-27 2017-04-26 Methods and systems for generating factory order forms to control production of nucleotide sequences

Publications (1)

Publication Number Publication Date
CN109313741A true CN109313741A (zh) 2019-02-05

Family

ID=58672782

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780035220.XA Pending CN109313741A (zh) 2016-04-27 2017-04-26 用于生成工厂订货单以控制核苷酸序列生产的方法和系统

Country Status (7)

Country Link
US (2) US11151497B2 (zh)
EP (1) EP3449404A1 (zh)
JP (2) JP2019520622A (zh)
KR (1) KR20190003578A (zh)
CN (1) CN109313741A (zh)
CA (1) CA3022423A1 (zh)
WO (1) WO2017189784A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111338986A (zh) * 2020-03-13 2020-06-26 北京艾克斯特科技有限公司 一种三维模型数据结构、创建及数据获取方法

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11208649B2 (en) 2015-12-07 2021-12-28 Zymergen Inc. HTP genomic engineering platform
BR112018011503A2 (pt) 2015-12-07 2018-12-04 Zymergen Inc promotores da corynebacterium glutamicum
US9988624B2 (en) 2015-12-07 2018-06-05 Zymergen Inc. Microbial strain improvement by a HTP genomic engineering platform
JP2019519241A (ja) 2016-06-30 2019-07-11 ザイマージェン インコーポレイテッド グルコース透過酵素ライブラリーを生成するための方法およびその使用
WO2018005655A2 (en) 2016-06-30 2018-01-04 Zymergen Inc. Methods for generating a bacterial hemoglobin library and uses thereof
US10319465B2 (en) 2016-11-16 2019-06-11 Seven Bridges Genomics Inc. Systems and methods for aligning sequences to graph references
EP3625351A1 (en) 2017-05-19 2020-03-25 Zymergen Inc. Genomic engineering of biosynthetic pathways leading to increased nadph
CN110914425B (zh) * 2017-06-06 2024-06-25 齐默尔根公司 用于改良刺糖多孢菌的高通量(htp)基因组工程改造平台
EP3635111A1 (en) 2017-06-06 2020-04-15 Zymergen, Inc. High throughput transposon mutagenesis
US20200370058A1 (en) * 2017-06-06 2020-11-26 Zymergen Inc. A htp genomic engineering platform for improving escherichia coli
EP3635112A2 (en) 2017-06-06 2020-04-15 Zymergen, Inc. A htp genomic engineering platform for improving fungal strains
HRP20220615T1 (hr) 2017-06-30 2022-06-24 Inscripta, Inc. Postupci, moduli, instrumenti i sustavi za automatiziranu obradu stanica
EP3687621A4 (en) 2017-09-30 2021-08-11 Inscripta, Inc. CONTINUOUS FLOW ELECTROPORATION INSTRUMENTATION
CN111886330A (zh) 2017-11-09 2020-11-03 齐默尔根公司 基于在较小规模条件下的性能优化在较大规模条件下的有机体性能
US11574153B2 (en) 2017-12-01 2023-02-07 Zymergen Inc. Identifying organisms for production using unsupervised parameter learning for outlier detection
EP3768844A4 (en) 2018-03-20 2021-12-15 Zymergen Inc. HTP PLATFORM FOR GENETIC ENGINEERING OF OVARIAN CELLS FROM CHINESE HAMSTER
JP2021526799A (ja) 2018-06-06 2021-10-11 ザイマージェン インコーポレイテッド 発酵および産生中の真菌の形態を制御するためのシグナル伝達に関与する遺伝子の操作
WO2020092704A1 (en) * 2018-10-31 2020-05-07 Zymergen Inc. Multiplexed deterministic assembly of dna libraries
US11479779B2 (en) 2020-07-31 2022-10-25 Zymergen Inc. Systems and methods for high-throughput automated strain generation for non-sporulating fungi

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101821744A (zh) * 2007-10-09 2010-09-01 阿森尼克斯公司 合成基因设计的计算方法
CN104364789A (zh) * 2012-05-18 2015-02-18 霍夫曼-拉罗奇有限公司 用于产生和使用最佳核苷酸流顺序的系统和方法
CN104661737A (zh) * 2012-07-18 2015-05-27 莱伯曼兹有限公司 自动化溶液分配器
CN104651491A (zh) * 2014-12-23 2015-05-27 中国科学院上海高等研究院 一种dna四面体纳米结构信号探针及其应用

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4899024B2 (ja) 1999-01-18 2012-03-21 コデクシス メイフラワー ホールディングス, エルエルシー 進化シュミレーションにおける使用のためにデータ構造を居住させる方法
JP2002318992A (ja) 2000-12-27 2002-10-31 Olympus Optical Co Ltd 分子計算装置、分子計算計画設計装置、分子計算方法及び分子計算プログラム及び分子計算結果解析プログラム
US7826975B2 (en) 2002-07-10 2010-11-02 The Penn State Research Foundation Method for redesign of microbial production systems
JP2004357502A (ja) * 2003-05-30 2004-12-24 Olympus Corp 核酸分子を使用した情報処理方法
DE602004026338D1 (de) 2003-11-04 2010-05-12 Applied Biosystems Llc Konkatamere ligationsprodukte: zusammensetzungen, verfahren und kits dafür
US10541046B2 (en) 2009-09-02 2020-01-21 Microsoft Technology Licensing, Llc Creating genetic devices
US8332160B1 (en) 2011-11-17 2012-12-11 Amyris Biotechnologies, Inc. Systems and methods for engineering nucleic acid constructs using scoring techniques
US9679104B2 (en) 2013-01-17 2017-06-13 Edico Genome, Corp. Bioinformatics systems, apparatuses, and methods executed on an integrated circuit processing platform

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101821744A (zh) * 2007-10-09 2010-09-01 阿森尼克斯公司 合成基因设计的计算方法
CN104364789A (zh) * 2012-05-18 2015-02-18 霍夫曼-拉罗奇有限公司 用于产生和使用最佳核苷酸流顺序的系统和方法
CN104661737A (zh) * 2012-07-18 2015-05-27 莱伯曼兹有限公司 自动化溶液分配器
CN104651491A (zh) * 2014-12-23 2015-05-27 中国科学院上海高等研究院 一种dna四面体纳米结构信号探针及其应用

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
WILSON, ET AL: "Genotype Specification Language", 《ACS SYNTHETIC BIOLOGY》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111338986A (zh) * 2020-03-13 2020-06-26 北京艾克斯特科技有限公司 一种三维模型数据结构、创建及数据获取方法
CN111338986B (zh) * 2020-03-13 2023-08-04 北京艾克斯特科技有限公司 一种获取三维模型数据结构中数据的方法

Also Published As

Publication number Publication date
JP2022008679A (ja) 2022-01-13
EP3449404A1 (en) 2019-03-06
US11151497B2 (en) 2021-10-19
WO2017189784A8 (en) 2018-07-12
CA3022423A1 (en) 2017-11-02
US20170316353A1 (en) 2017-11-02
US20220076177A1 (en) 2022-03-10
KR20190003578A (ko) 2019-01-09
JP2019520622A (ja) 2019-07-18
WO2017189784A1 (en) 2017-11-02

Similar Documents

Publication Publication Date Title
CN109313741A (zh) 用于生成工厂订货单以控制核苷酸序列生产的方法和系统
EP2577460B1 (en) Generating text manipulation programs using input-output examples
Winkler et al. The LASER database: Formalizing design rules for metabolic engineering
Bailey et al. GAIA: framework annotation of genomic sequence
CN111937075A (zh) 用于规划和执行高通量基因组制造操作的装置无关系统
Bernstein et al. Jupyter notebook-based tools for building structured datasets from the Sequence Read Archive
Jones et al. Create, Analyze, and Visualize Phylogenomic Datasets Using PhyloFisher
Vavpotic et al. An approach for assessment of software development methodologies suitability
Johnston et al. A flexible framework for Web interfaces to image databases: supporting user-defined ontologies and links to external databases
Fajiculay et al. BioSANS: A software package for symbolic and numeric biological simulation
Ali et al. RNA secondary structure analysis using RNAstructure
Yanarella et al. GWAS from spoken phenotypic descriptions: a proof of concept from maize field studies
Malone et al. Developing an application focused experimental factor ontology: embracing the OBO Community
Graves et al. A graph conceptual model for developing human genome center databases
Engelhorn et al. Meta-analysis of genome-wide chromatin data
Goitia et al. PhycoMine: A Microalgae Data Warehouse
Koblitz et al. visualization in metabolic context [version 1; peer review
Mukhin et al. The Web Platform for Storing Biotechnologically Significant Properties of Bacterial Strains
Vos et al. The Bio:: Phylo libraries for phylogenetic data analysis, version 2.0
Webb et al. Importing and Exporting Data
Yamrom et al. Snakeobjects: an object-oriented workflow management system
Shapiro et al. A Pycellerator Tutorial
Nicolas To detect and analyze sequence repeats whatever be their origin
Pontelli et al. Design and implementation of a domain specific language for phylogenetic inference
Allen Computational software for building biochemical reaction network models with differential equations

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40001065

Country of ref document: HK

WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20190205

WD01 Invention patent application deemed withdrawn after publication