本帖最后由 Thrimatter三态生物 于 2026-1-6 15:16 编辑
一、背景介绍
1、目的:这篇文章简单来说就是:人怎么用机器,帮自己更快地找药。
分子对接:就像找钥匙配锁。药就是钥匙,人体里的蛋白就是锁。钥匙插得准不准,合不合适,决定了这药有没有用,有没有副作用。这篇文章就是在一大堆钥匙里,找出最可能插进某一把锁的那几个的方法。
2、难点:现在问题出在哪儿呢?钥匙不是死的。它能转,能歪,能换角度。锁也不是死的,有凹有凸。一种钥匙能有成千上万种姿势去试一把锁。要是钥匙多,锁也多,那要试的情况就多得吓人。普通电脑一把一把试,就像用胶头滴管在大海里数水的毫升数,数到天荒地老。
二、建模:

这里解释一下他们的建模依据
依据:自然规律就是“能量越低越稳定” 这是热力学基本原理:万物都趋向能量最低的状态
分子之间也是——两个分子结合时,会自动找到让总能量最低的那个姿势,就像水往低处流。
在药丸子这里:能量越低,说明药和蛋白结合得越紧、越稳,药效就可能越持久、越强。
所以他们认准了:只要我们能找到让 ΔG_Bind 最小的那个原子排布方式,就相当于找到了最有可能在真实中出现的结合姿势。这是整个模型的定海神针。
所以用 ΔGBind这个“能量函数”当目标,是有物理学背书的
[为啥要限制在“对接盒子”(D)里? 这盒子是科学家在蛋白口袋周围画出的一个小方框,大概每边长20-30 Å(比原子大几十倍)
他们相信,药丸子要起作用,其原子肯定不会跑到这个盒子外面去
作用一:大大减少计算量。本来原子能在整个宇宙中找位置,现在只在这个小盒子里找,要试的可能性就少了很多很多
作用二:符合常识。就像找钥匙眼,肯定只在锁头附近摸,不会去摸门框背面]
建模前的隐含前提假设:配体是刚性的 他们假设:药分子在对接过程中形状不变(就像一把硬钥匙)、蛋白口袋也是固定的
为啥?——如果钥匙还会扭动(柔性),计算量就爆炸了
(现实是:其实很多药分子是柔性的,但先假设刚性,问题就简单多了,这是先解决主要矛盾,因为如果分子进行扭动的话,我们计算量在空间上就会数量爆炸。我们知道一切分子的组成都是由原子核+电子组成的,一个药物分子又由不同的原子组成,药物蛋白中的化学键其实是电子在原子核周围形成的概率云,并且海森堡测不准原理意味着在微观尺度上存在固有的不确定性,尽管化学键的量子本质在原理上决定了原子间的相互作用,但在实际研究中,这些小分子的配体形状通常可以通过经典力场(分子力学)进行较好地近似。这是因为在大多数情况下,原子核的运动可以使用玻恩-奥本海默近似与电子运动分离,电子提供的有效势能面可以指导核的运动,从而允许用经典方法处理药分子对接过程,也是就是可以算个大概,后面再微调)
下面拆解建模思路

此处的建模把连续的东西拆成离散化
在真实世界里,分子的位置、角度、距离,全都是连续变化的,理论上有无穷多种可能。可机器算不了无穷。于是他们先做了一件看起来有点粗暴、但很关键的事:把对接空间切成一小格一小格。你可以把它想成把一块地划成棋盘。钥匙只允许放在格点上,不许在缝里乱飘。
本质上:就是把【空间上的匹配好不好】,翻译成【选择哪些点,哪些点不要】,将化学问题转为了排列组合的数学问题
这一刀切下去,问题立刻从“无穷多种姿势”,变成了“有限个候选姿势”。
先用网格点,把蛋白口袋和药物可能出现的位置都标出来。然后假设这样一件事:如果药物的某个原子,落在蛋白口袋里一个“合适的格点附近”,那这是一个加分项。如果它落在不该去的地方,甚至撞进蛋白里,那这是一个扣分项。于是,每一个格点,背后都有一个简单判断。 选它,这个姿势就多一分好感。不选它,什么都不发生。
再往前一步,他们还要防止你乱选。比如你不能同时选两个互相冲突的位置。这时候就引入了“惩罚”的概念。你一旦做了不合逻辑的选择,总分就会被狠狠扣掉。由于还要引入真实世界的物理规则,因此必须加硬规矩进行约束

大盒子(D) 有限个格点(比如N个) “开关”变量:x_{ij} x_{ij} = 1 就表示:药丸子的第 i 个原子,放在了第 j 个格点上。
x_{ij} = 0 就表示:不放。
K_dist:专管“保形状”规矩。谁破坏了分子内部距离,就狠狠罚。
K_mono:专管“一对一”规矩。谁让两个原子撞在一个格点上,就狠狠罚。
每一项公式,翻成白话就是一句话。 如果你选了这个点,就加多少分。 如果你同时选了这两个不该同时选的点,就罚你多少分。 最后把所有加分减分算在一起,总分最低的那一组选择,就是机器眼里“最顺眼”的构象。
所以你看到的那些平方项、交叉项,在物理上你完全可以不理解。你只要知道,它们在逻辑上做的是三件事。 奖励合理匹配。 惩罚不可能的组合。 逼着解落在“看起来像一个完整分子姿势”的区域里。
这套建模,不是化学模型,而是翻译模型。 它做的事,是把人类直觉里的“这个姿势看着顺不顺”,翻译成机器能快速算的“是或否选择题”。
到这一步就知道那个原子应该放在哪个位点上了
接下来是进行摆好药物姿势的操作

算法会巧妙地计算出一个最佳的旋转角度(K_rot),让药丸子模型上所有的原子,在旋转后,与他们各自的目标格点距离的平方和最小。
他们用的这个 Kabsch算法,是个非常经典聪明的法子:
第一步:先找重心:
算出所有指定格点位置的平均中心(b里面那部分)。
也算出药丸子模型原来形状的平均中心。
把药丸子模型整体平移过去,让两个中心重合。这就先对上了“大位置”。
第二步:再找最佳旋转:
现在中心对齐了,但模型可能还是“歪的”。
算法会巧妙地计算出一个最佳的旋转角度(K_rot),让药丸子模型上所有的原子,在旋转后,与他们各自的目标格点距离的平方和最小。
这个“距离平方和”,就是 RMSD(均方根偏差)。RMSD越小,说明你“拧”得越准,摆的姿势和量子计算机指出的理想点位越吻合。
经过上面“一平移、二旋转”的调整,最终得到了:
药丸子每一个原子在三维空间中的最终坐标。这一整套坐标,就是一个完整的、具体的、可以拿来分析的 “对接构象”(Docking Pose)。
那么找好位置后,接下来就会进行摆放位置适配度进行打分,就像对模特所摆的姿势,是否符合最高要求的标准进行打分一样

他们发明了两种算法来算这个 w:
1.GPM(网格点匹配):看的是物理上的“挤不挤”
方法是:在蛋白口袋周围画格子,用经典工具(AutoGrid)提前算好每个格点对各种原子类型(碳、氧、氢等)的“范德华相互作用能”,最后直接查表匹配。
优点:非常物理直观,直接与基本的分子间作用力挂钩
妥协(忽略了静电和溶剂效应):在离散的格点体系中,这些更精细的效应反而容易因“格子太粗”而引入噪声和误差,导致结果更差。所以干脆不要,保核心。这是一种务实的“抓大放小”
2.FAM(特征原子匹配):看的是化学上的“合不合得来”
方法是:把格子变成特征原子(FA),然后计算药丸与这个格子的“投缘度”
优点:非常化学智能,抓住了药物结合中最关键的“氢键相互作用”这一环,用极简的规则描述
而且,因为把成千上万个格点“浓缩”成了少数几个特征原子,所以最终需要确定的变量(x_{ij})大大减少,需要的量子比特数也大大减少(见后面的结果分析)
妥协:完全忽略了范德华力等精细物理作用,只抓主要矛盾
为什么需要两种方法? 为了对比验证:看是“硬物理”方法好,还是“软化学”方法妙。
适应不同场景:GPM更通用精确,FAM更快速轻便。
探索边界:看看在量子计算资源有限的情况下,哪种编码策略更能取得好效果。
(后面会看到,在采样能力上,GPM这个‘硬实力派’确实更接近经典顶尖软件,而FAM这个‘软眼光派’则节省了大量计算资源。两者各有千秋。)
但是,他两因为因为做了大量简化,主要任务是在汪洋大海里快速捞出可能不错的姿势,而不是精确判断哪朵浪花最好看
所以当他们同时又担任上一个打分函数,用来给不同的药丸子姿势(构象)排名次、比高低的时候,就不太准。
这时候就引入经典计算机的构象打分

要打分就得先采样,他们的做法是
第一步:用量子计算机(CIM)构象采样 ,也就是利用QUBO模型(GPM/FAM),快速找出30个(举例)能量最低的可能姿势。
(这件事(NP-hard问题)是组合爆炸,传统计算机算得慢,正好是量子计算机的强项。它只需要一个粗略的打分函数(ΔG'_Bind)来指导搜索方向就行。)
第二步:用经典计算机(CPU/GPU)构象打分 ,也就是对量子计算机采样的30个姿势,用更精确、更复杂的经典打分函数(如AutoDock Vina, Glide等的全套算法)重新计算一遍结合能,然后精确排序。
(这件事计算量相对小,但需要很高的精度。经典计算机上有经过几十年验证的、考虑周全(范德华、静电、溶剂化、熵变…)的成熟打分函数,干这个最拿手。)

三、进行考试
他们用一个叫 CASF-2016 的“标准考题库”(里面是257个已知结构的药-蛋白配对)来考试。
考试题目:已知药丸子最终长什么样(晶体结构),看你的方法能不能“猜中”这个姿势。 评分标准:mRMSD(最小均方根偏差)。这个数越小,说明你猜的姿势和真实答案越像。
评分标准
< 2 Å(埃):就算“高质量”猜中(1埃是一亿分之一厘米,2埃大概比头发丝细几万倍)
> 2 Å:猜得有点走样
考试卷子
“考生”(方法) |
猜对多少题? (高质量案例占比) |
平均差多少? (平均mRMSD) |
最差一回差多少? (最大mRMSD) |
|---|
GPM(硬实力派) |
225/257题 (87.5%) |
1.1 Å |
~5 Å |
FAM(软眼光派) |
173/257题 (67.3%) |
1.8 Å |
~9.4 Å |
Glide SP(传统优等生) |
240/257题 (93.4%) |
1.0 Å |
6.8 Å |
这成绩说明啥? 1.GPM真不赖:作为量子计算的新方法,它猜对题目的能力(87.5%)已经非常接近目前最好的经典软件(93.4%)了。这说明它这个“硬碰硬”的思路很有效
2.FAM有潜力但稍弱:它只关注“氢键投缘”,所以猜中的题目少一些,而且偶尔会“跑偏”得比较厉害(最大误差9.4 Å)。但它已经能解决一大半问题了
结论:GPM这个量子快手找蛋白的本事,已经快赶上最好的经典快手了! 这是巨大的成功,这个发现非常宝贵,它告诉我们:量子计算这条新路本身没走错,瓶颈在于基础的“画格子”精度。 这就指明了未来改进的方向。
为啥考得好?为啥会丢分?(3.2 影响因素) 他们就像老师一样,开始分析:是什么决定了“考生”的分数(mRMSD)?
他们找了三个可能的原因:
药丸子大不大?(配体质量) → 结论:几乎无关。(R² ≈ 0)
用的量子算盘大不大?(量子比特数) → 结论:几乎无关。(R² ≈ 0)
棋盘格子画得粗不粗?(离散化误差) → 结论:关系极大!(R² > 0.9)
结论:丢分的主要原因,不是量子算法不聪明,而是‘画格子’这个基础步骤带来的信息损失。只要格子画得足够密(比如未来计算力更强了),结果就能无限接近完美。
干这活儿费不费劲?(3.3 计算成本)
1. 费不费“量子算盘”(量子比特需求)? GPM:最多需要 13,908 个量子比特。
FAM:最多需要 3,640 个量子比特。
对比:现在实验室里最好的光量子计算机(CIM)已经有约10万个量子比特了!
结论:我们的方法只用了一小部分算力,“大马拉小车”,绰绰有余! 未来还有巨大空间算更复杂的药
2.干得有多快?(运行时间) 基于量子计算机(CIM)的特性,采样时间估计是毫秒级。
这比传统经典计算机快 至少1000倍(3个数量级)。
好比:经典计算机要算一个小时的话,它一秒钟就干完了。
现在能干什么活?(问题规模分析) 因为量子比特需求随原子数平方级增长,所以目前能算的药丸子大小有限制:
GPM:最多算约 156 个原子的分子(大概相当于15个氨基酸的小肽)。
FAM:最多算约 305 个原子的分子(大概相当于30个氨基酸的肽)。
还干不了:蛋白质和蛋白质之间的大对接(那需要几十万个原子,算不了)。
四、小结
整篇论文的结果部分,讲了这么个故事:
我们发明了两种让量子计算机快速‘猜药姿势’的新法子(GPM和FAM)
考得好:特别是GPM法,猜题能力直追世界顶尖软件
人实在:我们发现,没猜准 mainly 是因为“画格子”这步太粗糙,不是量子算法不行。这毛病好改
干得快、省力气:用现有的量子算盘,毫秒之间就能干完经典计算机要干很久的活儿,而且算盘还远远没使上全力
有局限但未来可期:目前只能算小药丸子,算不了大家伙。但随着量子算盘越来越大,能算的药也会越来越大 |