下一场软件革命 生物细胞的编程
日期:2020-02-18 16:28

(单词翻译:单击)

 MP3点击下载

The second half of the last century was completely defined by a technological revolution: the software revolution.
上世纪后半叶,全然是一个被科学革命所定义的时代:软件革命。
The ability to program electrons on a material called silicon
在一种硅半导体材料上对电子进行编程的能力,
made possible technologies, companies and industries that were at one point unimaginable to many of us,
使得我们许多人曾无法想象的科技、公司和行业变为可能,
but which have now fundamentally changed the way the world works.
这如今已彻底改变了世界运作的方式。
The first half of this century, though, is going to be transformed by a new software revolution: the living software revolution.
不过,本世纪上半叶将要被一个崭新的软件革命所转化:生物软件革命。
And this will be powered by the ability to program biochemistry on a material called biology.
在一种名为生物的材料上对生物化学进行编程的能力将会支持这一革命。
And doing so will enable us to harness the properties of biology to generate new kinds of therapies,
如此一来,我们将能够利用生物特征去开发新型疗法,
to repair damaged tissue, to reprogram faulty cells or even build programmable operating systems out of biochemistry.
去修复受损组织,去重编缺陷细胞,甚至利用生物化学构建一个可编程的操作系统。
If we can realize this -- and we do need to realize it
如果我们能实现它--而且我们确实需要实现它,
its impact will be so enormous that it will make the first software revolution pale in comparison.
其影响将会如此巨大,以至于第一个软件革命,相比之下,会变得微不足道。
And that's because living software would transform the entirety of medicine, agriculture and energy,
这是因为生物软件可以变革整个医疗、农业和能源领域,
and these are sectors that dwarf those dominated by IT.
以及那些被IT人员掌控的部门。
Imagine programmable plants that fix nitrogen more effectively or resist emerging fungal pathogens,
想象一下可编程植物:能够更有效进行固氮,或可以抵御新型真菌病原体,
or even programming crops to be perennial rather than annual so you could double your crop yields each year.
甚至能够将农作物编程为多年生而非一年生,使你的年产量可以翻倍。
That would transform agriculture and how we'll keep our growing and global population fed.
这会改变农业,同时改变全球不断增长的粮食需求的方法。
Or imagine programmable immunity,
或想象可编程的免疫力,
designing and harnessing molecular devices that guide your immune system to detect, eradicate or even prevent disease.
设计并利用能够指导你免疫系统的分子设备去检测、根除,甚至预防疾病。
This would transform medicine and how we'll keep our growing and aging population healthy.
这将改变医疗,同时改变我们试图保持不断增长且老龄化的人口健康的方法。
We already have many of the tools that will make living software a reality.
我们已经拥有很多能让生物软件成为现实的工具。
We can precisely edit genes with CRISPR. We can rewrite the genetic code one base at a time.
我们能使用CRISPR技术精确编辑基因。我们能每次重写一个遗传密码。
We can even build functioning synthetic circuits out of DNA.
我们甚至能利用DNA开发一个合成电路。
But figuring out how and when to wield these tools is still a process of trial and error.
但是摸索出如何且何时使用这些工具依旧是一个试错的过程。
It needs deep expertise, years of specialization.
它要求极高的专业性和多年的领域专精。
And experimental protocols are difficult to discover and all too often, difficult to reproduce.
而且实验方法难以发现,往往更是难以复制。
And, you know, we have a tendency in biology to focus a lot on the parts,
在生物领域,我们倾向仅专注于局部,
but we all know that something like flying wouldn't be understood by only studying feathers.
但我们都知道有些东西,例如飞行,单就羽毛进行研究,是无法理解其原理的。
So programming biology is not yet as simple as programming your computer.
所以生物编程还未能像电脑编程那样简单。
And then to make matters worse, living systems largely bear no resemblance to the engineered systems that you and I program every day.
更糟糕的是,生物系统和你我每天编写的工程系统几乎毫无相似之处。
In contrast to engineered systems, living systems self-generate, they self-organize, they operate at molecular scales.
相比工程系统,生物系统能自我生产、自我组织,并以分子规模运作。
And these molecular-level interactions lead generally to robust macro-scale output. They can even self-repair.
这些分子层级的相互作用通常会导致稳健的宏观规模输出,它甚至可以自我修复。
Consider, for example, the humble household plant, like that one sat on your mantelpiece at home that you keep forgetting to water.
试想家中一盆不起眼的植物,比如你家壁炉台上的那盆你老是忘记浇水的植物。
Every day, despite your neglect, that plant has to wake up and figure out how to allocate its resources.
尽管你会忘记,那盆植物每天都需要醒来并思考如何分配它所有的资源。
Will it grow, photosynthesize, produce seeds, or flower?
它是生长、进行光合作用、产生种子,还是开花?
And that's a decision that has to be made at the level of the whole organism.
这是这盆植物所需要做出的决定。
But a plant doesn't have a brain to figure all of that out. It has to make do with the cells on its leaves.
但一盆植物没有大脑来弄清这件事。这需要其叶片上细胞的帮助。
They have to respond to the environment and make the decisions that affect the whole plant.
它们需要针对环境做出反应,并且做出影响整盆植物的决定。
So somehow there must be a program running inside these cells,
所以在那些叶片细胞中必定要有一个运行的程序,
a program that responds to input signals and cues and shapes what that cell will do.
一个能响应输入信号与提示,以及调整细胞行为的程序。
And then those programs must operate in a distributed way across individual cells,
之后,那些程序必须以分布式运行,覆盖每一个细胞单元,
so that they can coordinate and that plant can grow and flourish.
从而进行协作让植物茁壮成长。
If we could understand these biological programs, if we could understand biological computation,
如果我们能够了解那些生物程序,如果我们能够明白那些生物计算,
it would transform our ability to understand how and why cells do what they do.
这将会转变我们对细胞的行为方式和行为原因的理解能力。
Because, if we understood these programs, we could debug them when things go wrong.
因为,如果我们了解那些程序,当出现问题时,我们可以为它们排错。
Or we could learn from them how to design the kind of synthetic circuits that truly exploit the computational power of biochemistry.
或我们可以向它们学习如何设计这样能充分利用生物化学计算能力的合成电路。
My passion about this idea led me to a career in research at the interface of maths, computer science and biology.
我对这个想法的热情,让我进入了数学、计算机科学和生物学的交叉领域。
And in my work, I focus on the concept of biology as computation.
工作中,我专注于一个概念:生物学计算。
And that means asking what do cells compute, and how can we uncover these biological programs?
这代表着不断询问细胞在计算什么,以及我们如何能解开这些生物程序的奥秘?
And I started to ask these questions together with some brilliant collaborators at Microsoft Research and the University of Cambridge,
我开始和微软研究院与剑桥大学的一些出色的合作人士一起询问这些问题,
where together we wanted to understand the biological program running inside a unique type of cell: an embryonic stem cell.
我们想要了解在一种独特细胞中运行的生物程序:胚胎干细胞(ES细胞)。
These cells are unique because they're totally naïve.
这些细胞很独特,因为它们非常稚嫩(即未高度分化)。
They can become anything they want: a brain cell, a heart cell, a bone cell, a lung cell, any adult cell type.
它们能够分化为它们想要变成的东西:一个脑细胞,一个心脏细胞,一个骨细胞,一个肺细胞,任何一种成熟细胞。
This naïvety, it sets them apart, but it also ignited the imagination of the scientific community,
这一稚嫩状态让这些细胞变得与众不同,但也激发了科学界的想象力,
who realized, if we could tap into that potential, we would have a powerful tool for medicine.
科学家们意识到,如果我们能挖掘这一特性的潜力,我们将会拥有一个强大的医疗工具。
If we could figure out how these cells make the decision to become one cell type or another,
如果我们能搞清这些细胞是如何决定自己要发育为何种细胞的,
we might be able to harness them to generate cells that we need to repair diseased or damaged tissue.
我们或许能够利用ES细胞的这一能力,生成我们需要的细胞,来修复携带疾病的或受损的组织。
But realizing that vision is not without its challenges,
但这一愿景的实现存在着挑战,
not least because these particular cells, they emerge just six days after conception. And then within a day or so, they're gone.
不仅是因为这些特定细胞在受孕的6天后才出现,之后大约在1天内,就会消失。
They have set off down the different paths that form all the structures and organs of your adult body.
它们走上了不同的道路,共同形成成年人体的所有结构和器官。
But it turns out that cell fates are a lot more plastic than we might have imagined.
但事实证明,细胞的命运比我们所想象的更具有可塑性。
About 13 years ago, some scientists showed something truly revolutionary.
大概在13年前,一些科学家们展示了一些极具革命性的东西:
By inserting just a handful of genes into an adult cell,
通过把少量基因导入成熟细胞,
like one of your skin cells, you can transform that cell back to the naïve state.
例如你的一个皮肤细胞,你可以把这个成熟细胞转化回未分化状态。
And it's a process that's actually known as "reprogramming," and it allows us to imagine a kind of stem cell utopia,
这一过程被称为“重编程”,这让我们联想到“干细胞乌托邦”,
the ability to take a sample of a patient's own cells, transform them back to the naïve state
这种能力可以采集患者自身的细胞样本,将其转化回未分化的原始形态,
and use those cells to make whatever that patient might need, whether it's brain cells or heart cells.
并使用那些细胞制造患者可能需要的细胞,不论是脑细胞,还是心脏细胞。
But over the last decade or so, figuring out how to change cell fate, it's still a process of trial and error.
但在过去的10年,搞清楚如何改变细胞命运仍然是一个试错的过程。
Even in cases where we've uncovered successful experimental protocols,
即使是在那些我们已经发现了成功实验方法的情况下,
they're still inefficient, and we lack a fundamental understanding of how and why they work.
它们仍旧低效,而且我们缺少关于它们如何以及为何运作的基本理解。
If you figured out how to change a stem cell into a heart cell,
如果你能摸清如何把一个干细胞诱导为一个心脏细胞,
that hasn't got any way of telling you how to change a stem cell into a brain cell.
你依然不知道如何把一个干细胞诱导为一个脑细胞。
So we wanted to understand the biological program running inside an embryonic stem cell,
所以我们想要了解在ES细胞中运行的生物程序,
and understanding the computation performed by a living system starts with asking a devastatingly simple question:
而且,了解该生物系统中所运行的计算始于提出一个极为简单的问题:
What is it that system actually has to do?
这个系统到底需要做什么?
Now, computer science actually has a set of strategies for dealing with what it is the software and hardware are meant to do.
计算机科学实际上已有一套策略来执行软件和硬件的功能。
When you write a program, you code a piece of software, you want that software to run correctly.
当你编写程序时,你用代码编写了一个软件,你希望这个软件能够正确运行。
You want performance, functionality. You want to prevent bugs. They can cost you a lot.
你希望它具备完善的功能与性能。你希望它能防止错误,做到这些的成本很高。
So when a developer writes a program, they could write down a set of specifications. These are what your program should do.
所以当一个开发者编写程序时,他们能编写出一套技术规范。这些是你的程序应该做的“工作”。
Maybe it should compare the size of two numbers or order numbers by increasing size.
或许它能比较两个数的大小,或将数字进行正序排序。

下一场软件革命 生物细胞的编程

Technology exists that allows us automatically to check whether our specifications are satisfied,
这样的技术存在允许我们自动检查我们的代码是否符合技术规范,
whether that program does what it should do.
程序是否在完成它的本职工作。
And so our idea was that in the same way, experimental observations, things we measure in the lab,
于是我们的想法很类似,实验观察值,也就是我们在实验室中测量的东西,
they correspond to specifications of what the biological program should do.
符合生物编程本职工作中怎样的技术规范?
So we just needed to figure out a way to encode this new type of specification.
所以我们只需要找到一个方法来编译这个新型的技术规范。
So let's say you've been busy in the lab and you've been measuring your genes
比方说,你在实验室忙活了很久,你一直在测量基因,
and you've found that if Gene A is active, then Gene B or Gene C seems to be active.
发现如果基因A是活跃的,那么基因B或C也会看似活跃。
We can write that observation down as a mathematical expression if we can use the language of logic: If A, then B or C.
如果我们能用一种逻辑语言,就可以将这种观察编写为一种数学表达:如果A,那么B或C。
Now, this is a very simple example, OK. It's just to illustrate the point.
这是一个非常简单的例子。只是为了解释清楚我的意思。
We can encode truly rich expressions
我们可以编译很多丰富的表达,
that actually capture the behavior of multiple genes or proteins over time across multiple different experiments.
在多个不同的实验中,随着时间的推移,这些表达可以捕捉多种基因或蛋白质的行为。
And so by translating our observations into mathematical expression in this way,
运用这种方法,把我们的观察值编译为一种数学表达,
it becomes possible to test whether or not those observations can emerge from a program of genetic interactions.
现在有可能测试这些观察结果是否可以从基因相互作用的程序中得到。
And we developed a tool to do just this.
我们开发了一个工具来实现这个目的。
We were able to use this tool to encode observations as mathematical expressions,
我们能用这个工具将观察值编译为数学表达,
and then that tool would allow us to uncover the genetic program that could explain them all.
该工具能让我们发现可以解释所有原因的遗传程序。
And we then apply this approach to uncover the genetic program running inside embryonic stem cells
之后,我们运用这个方法来揭示ES细胞中运行的遗传程序,
to see if we could understand how to induce that naïve state.
来看看我们是否能理解如何诱导未分化状态的细胞。
And this tool was actually built on a solver that's deployed routinely around the world for conventional software verification.
这个工具实际上是建立在经常被部署在世界各地用于传统的软件验证的解算器上的。
So we started with a set of nearly 50 different specifications that we generated from experimental observations of embryonic stem cells.
我们从一套将近有50个不同的技术规范开始,这些是我们从对ES细胞的实验观察值中得出的。
And by encoding these observations in this tool, we were able to uncover the first molecular program that could explain all of them.
利用这个工具,通过编译这些观察值,我们能够揭开第一个能够解释所有分子的程序。
Now, that's kind of a feat in and of itself, right?
这本身听着是一种壮举,是吧?
Being able to reconcile all of these different observations is not the kind of thing you can do on the back of an envelope,
将所有的观察值协调到一起,不是那种你可以在信封背面做的事情,
even if you have a really big envelope.
即使你有一个很大的信封。
Because we've got this kind of understanding, we could go one step further.
因为我们有着这样的理解,我们能够再进一步。
We could use this program to predict what this cell might do in conditions we hadn't yet tested.
我们能够用这个程序在尚未测试的条件下,来预测这个细胞可能会做什么。
We could probe the program in silico.
我们能够在硅上探索该程序。
And so we did just that: we generated predictions that we tested in the lab, and we found that this program was highly predictive.
所以我们行动了起来:我们依据实验室检测值生成了预测,并发现该程序非常具有可预测性。
It told us how we could accelerate progress back to the naïve state quickly and efficiently.
它告诉我们如何能够加速细胞返回未分化状态的过程,使之快速且有效。
It told us which genes to target to do that, which genes might even hinder that process.
它告诉我们可以针对哪些基因进行操作,又有哪些基因会阻碍这一过程。
We even found the program predicted the order in which genes would switch on.
我们甚至发现了一个能够预测基因开启顺序的程序。
So this approach really allowed us to uncover the dynamics of what the cells are doing.
这个方法让我们得以揭秘细胞行为的动态。
What we've developed, it's not a method that's specific to stem cell biology.
我们开发的不只是一种仅限于干细胞生物的方法。
Rather, it allows us to make sense of the computation being carried out by the cell in the context of genetic interactions.
相反,这能帮助我们理解在遗传相互作用的环境下细胞内在的计算程序。
So really, it's just one building block.
所以这其实只是拼图中的一块。
The field urgently needs to develop new approaches to understand biological computation more broadly and at different levels,
该领域急需开发新方法来更广泛地在不同层次上了解生物计算,
from DNA right through to the flow of information between cells.
从DNA到细胞间的信息流。
Only this kind of transformative understanding will enable us to harness biology in ways that are predictable and reliable.
只有这样的变革性理解才能够使我们以可预测和可靠的方式利用生物学。
But to program biology, we will also need to develop the kinds of tools and languages
但是对于编程生物学,我们也将需要开发工具和语言
that allow both experimentalists and computational scientists to design biological function
这些工具和语言是允许实验人员和计算科学家使用来设计生物函数的,
and have those designs compile down to the machine code of the cell, its biochemistry, so that we could then build those structures.
并将这些设计编译成细胞的机器代码,也就是它的生物化学,这样我们就可以构建这些结构。
Now, that's something akin to a living software compiler,
这就类似于一个活的生物软件编译器,
and I'm proud to be part of a team at Microsoft that's working to develop one.
我非常自豪能成为微软开发此类软件团队的一员。
Though to say it's a grand challenge is kind of an understatement,
尽管,说这是一个很大的挑战有点轻描淡写,
but if it's realized, it would be the final bridge between software and wetware.
但如果能实现,这将会成为软件和湿件最后的桥梁。
More broadly, though, programming biology is only going to be possible if we can transform the field into being truly interdisciplinary.
但更广泛地说,如果我们能够将其转变为真正的跨学科领域,编程生物学才会变成可能。
It needs us to bridge the physical and the life sciences,
这需要我们搭建起物理与生命科学的桥梁,
and scientists from each of these disciplines need to be able to work together with common languages and to have shared scientific questions.
来自相关学术背景的科学家们需要能够利用共同语言进行合作,并分享共同的科学问题。
In the long term, it's worth remembering that many of the giant software companies and the technology that you and I work with every day
长远来看,值得记住的是,我们如今每天都需要打交道的那些大型软件公司和技术,
could hardly have been imagined at the time we first started programming on silicon microchips.
当我们第一次开始在硅微芯片上编程的时候,几乎无法想象有一天会出现。
And if we start now to think about the potential for technology enabled by computational biology,
如果我们现在开始思考由计算生物学支持的科技潜能,
we'll see some of the steps that we need to take along the way to make that a reality.
我们将会看到为实现这一目标一路上需要做出的努力。
Now, there is the sobering thought that this kind of technology could be open to misuse.
如今存在一种令人警醒的想法:这种科技可能会被滥用。
If we're willing to talk about the potential for programming immune cells,
如果我们愿意探讨编程免疫细胞的潜力,
we should also be thinking about the potential of bacteria engineered to evade them.
我们也应该考虑到改造后的细菌成功躲避那些免疫细胞的可能。
There might be people willing to do that.
可能有些人打算从事这方面的研究。
Now, one reassuring thought in this is that -- well, less so for the scientists -- is that biology is a fragile thing to work with.
关于这个话题也存在一个令人欣慰的想法--科学家大概不这么认为--生物太脆弱,在工作中难以把控。
So programming biology is not going to be something you'll be doing in your garden shed.
所以编程生物学不会进入你的生活。
But because we're at the outset of this, we can move forward with our eyes wide open.
但因为我们才刚起步,所以我们可以大胆且谨慎的往前走。
We can ask the difficult questions up front,
我们可以事先提出难题,
we can put in place the necessary safeguards and, as part of that, we'll have to think about our ethics.
我们可以采取必要的保护措施,同时,作为其中的一部分,还需要思考我们的道德标准。
We'll have to think about putting bounds on the implementation of biological function.
我们将需要思考那些生物函数实行的界限。
So as part of this, research in bioethics will have to be a priority.
所以其中的生物伦理学研究将被优先考虑。
It can't be relegated to second place in the excitement of scientific innovation.
在令人激动的科学创新中,这个话题不能屈居第二。
But the ultimate prize, the ultimate destination on this journey, would be breakthrough applications and breakthrough industries
但我们这场旅行的最终目的地将会是突破性的应用以及突破性行业,
in areas from agriculture and medicine to energy and materials and even computing itself.
从农业、医疗,到能源和材料,甚至计算机技术本身。
Imagine, one day we could be powering the planet sustainably on the ultimate green energy
试想,有一天,我们能使用终极绿色能源为地球提供可持续的动力,
if we could mimic something that plants figured out millennia ago:
因为我们已经能够模仿植物在千年前发现的东西:
how to harness the sun's energy with an efficiency that is unparalleled by our current solar cells.
如何利用我们现有太阳能电池无法比拟的效率来利用太阳能。
If we understood that program of quantum interactions that allow plants to absorb sunlight so efficiently,
如果我们能理解让植物高效吸收太阳光的量子相互作用的程序,
we might be able to translate that into building synthetic DNA circuits that offer the material for better solar cells.
我们或许能将其编译为能够为太阳能电池提供更好材料的合成DNA电路。
There are teams and scientists working on the fundamentals of this right now,
现在有一些团队和科学家正着手于解决这个课题的基本问题,
so perhaps if it got the right attention and the right investment, it could be realized in 10 or 15 years.
如果这个课题能获得足够的关注和正确的投资,在未来的10或15年内,或许就有可能实现。
So we are at the beginning of a technological revolution.
我们正处在科技革新的开端。
Understanding this ancient type of biological computation is the critical first step.
了解这种古老的生物计算类型是关键的第一步。
And if we can realize this, we would enter in the era of an operating system that runs living software. Thank you very much.
如果我们能意识到这件事,就将进入一个拥有能够运行生物软件的操作系统的时代。非常感谢。

分享到