小李想开一家“蛋白设计事务所”,前辈王师傅带他看图纸时说:“设计蛋白质就像设计一栋房子。氨基酸是 20 种建材,序列就是蓝图,而能量函数是结构质检员的评分卡——分数越低,楼越稳。”蛋白质在细胞里自动折叠,就像建好的房子自动定型;序列搜索,是在比宇宙原子还多的建材组合里找到最优蓝图;负样本设计,则是让质检员反复观摩危房照片,练就火眼金睛。今年最火的从头蛋白质设计,就是从一片空地开始:画轮廓、选建材、盖模型、反复改。下面这张“质检评分卡”里藏着哪些门道?我们一层层拆开看。
对 AI 从业者:学完本节,你能读懂 Rosetta 等蛋白设计工具的核心逻辑,理解序列与结构之间的量化关系,为参与抗体工程、酶改造、新功能蛋白设计打下基础。
可视化演示
演示蛋白质能量函数各分量构成、折叠稳定性能量最低化与序列搜索负样本设计,交互切换查看从头蛋白设计核心原理。
本节配有交互动效(进入视口后自动加载,约 3KB)。
能量函数分量分解 键长键角能量项维持共价键几何约束 范德华与静电项驱动疏水核心 packing E_total = E_bond + E_vdw + E_elec 总能量为各物理项加权求和用于评估构象质量
能量函数概述
王师傅把手机递给小李,屏幕上是一个“结构质检评分卡”App:输入一栋楼的蓝图,立刻输出一个数字,数字越低代表楼越稳。在蛋白质世界里,这张评分卡就叫能量函数。能量函数做的是一件事:把“这个蛋白质结构稳不稳”变成一个可比较的数值,数值越低,说明这个三维构象越接近天然状态,蛋白质越容易自发折叠并维持稳定。
设计蛋白质,本质是在不停修改“蓝图”——也就是氨基酸序列,然后用能量函数给修改后的结构重新打分。Rosetta 是行业内最常用的“评分引擎”,它把原子间的各种相互作用拆成多个单项,每项乘一个权重再汇总。分数下降,说明改动让结构更紧实、更少冲突。整个能量景观就像一片山地,天然折叠状态落在最低的谷底,而设计任务就是在这片山地里找出那个最深的谷。
打个比方:质检评分卡不会只看墙厚不厚,还会看地基、防水、电路,每项按重要程度加权,最后汇总成一个总分。能量函数就是蛋白质的这张“汇总评分卡”。
- 总能量整张评分卡的综合分,反映蛋白质当前结构的整体稳定度。
- 求和符号把所有打分项逐个累加。
- 权重第 i 项在总分中的影响力,由软件在已知蛋白上标定。
- 单项能量第 i 项相互作用(如范德华力、氢键)的得分。
能量项构成
王师傅接着解释,质检不能只看一项指标。承重墙的砖块是否贴合,是范德华力;钢梁螺栓是否对准,是氢键;地下室防水做得好不好,是溶剂化;钢筋之间排斥还是吸引,是静电。每一项物理作用都对应能量函数里的一个子项,它们各管一段“受力”。
范德华力在能量函数中常用 Lennard-Jones 势描述:原子太近时会急剧排斥,太远时又缺乏吸引,存在一个最舒服的平衡距离。氢键和静电则决定氨基酸残基之间的方向性配对。溶剂化效应描述疏水残基埋进蛋白质内部、把水分子排开带来的稳定效果。此外还有旋转异构项,约束侧链的扭转角落在常见角度,避免出现拧巴的构象。
这就像砌墙:砖头硬挤会崩裂,离太远又失去支撑。能量函数的每一项,都在描述这种“不能太近、不能太远”的物理分寸。
- 井深两个原子在平衡距离处吸引强度的最大值,ε 越大吸引力越强。
- 当前距离两个原子此刻的实际距离,单位通常是埃。
- 平衡距离两原子最舒适的标准间距,小于它就会撞在一起。
- 排斥项原子靠太近时急剧推开的项,保护原子不重叠。
- 吸引项距离合适时把原子轻轻拉住的项,配 2 倍系数让最优点落在 r0。
折叠稳定性
房子最怕的是什么?散架。一堆建材堆在地上(未折叠态)和一栋定型的大楼(折叠态)之间,存在一个稳定性的差距。蛋白质把这个差距叫折叠自由能,记作 ΔG_fold。只有当它小于零,折叠态比散件状态更“省能量”,蛋白质才会自发折叠并保持住形状。
天然蛋白质的折叠自由能通常在 -5 到 -15 kcal/mol,相当于一个很缓的坡,刚好够用。设计时太弱会塌,太强又会把蛋白锁死。折叠过程还会经过“熔球中间态”——像刚浇筑还没干透的混凝土楼,结构松散、容易塌方。设计者常用突变扫描(如丙氨酸扫描)逐个替换关键残基,看哪个位置一换就塌,从而定位维持稳定性的“承重墙”。
换句话讲,好的设计不是让建材“勉强拼起来”,而是让它们天然就有互相咬合的倾向——一松手就“咔哒”一声卡成整体,风吹雨打也不散。
- 折叠态自由能蛋白完全形成三维结构后的能量状态,对应“定型的楼”。
- 未折叠态自由能肽链散开时的能量状态,对应“一堆建材”。
- 折叠自由能差两者之差,是折叠驱动力的直接度量。
- 小于零判据折叠态能量更低,折叠过程才愿意自动发生。
序列-结构关系
给定一栋建筑的外观,该选哪批建材来盖?答案是:同一栋楼可以有多种建材组合,但有些组合特别结实,有些一推就倒。蛋白质也是如此:给定目标三维结构,合适的氨基酸序列有很多条,但能量越低的序列,落在正确结构的概率越大。
把结构约束转化为序列选择的工具,是玻尔兹曼分布:一条序列放进目标结构里能量越低,被“选中”的概率就指数级上升。设计时用到的“正设计”策略,是让目标结构的能量尽量低;而“逆变换”则是从结构反推序列,检查哪些位置必须用某种氨基酸(保守位点),哪些位置可以灵活替换(可变位点)。序列兼容性越好,结构越不容易走样。
这就好比选建材:砖和水泥的配对越严丝合缝,施工队越愿意采用这套方案;而“差不多能用”的组合虽然也存在,但在长期风化和震动中迟早露馅。
- 条件概率给定目标结构时,出现某条序列的概率。
- 匹配能量该序列装进该结构后的总能量分。
- 指数函数把能量差放大成概率权重,一点点能量优势就能拉开很大差距。
- 热运动尺度k 是玻尔兹曼常数,T 是温度。温度越高,系统越能容忍高能量方案。
- 正比符号所有序列的权重归一化后,就得到真实概率。
序列搜索算法
20 种氨基酸 × 100 个设计位点,就是 10 的 130 次方种组合——比可观测宇宙里的原子总数还要多。小李问:“这不等于大海捞针吗?”王师傅笑了:“所以老工程师从来不全捞,而是凭经验撒网、再逐步收网。”
这就是序列搜索算法要解决的问题。Rosetta 的经典做法是“片段组装”:从已知蛋白结构库里切出小片段,像搭积木一样拼出新的骨架,再在骨架上做序列设计。蒙特卡洛方法随机挑一个位置换掉氨基酸,能量下降就保留,能量升高则大概率撤回。贪心搜索每次都只接受当前最优的改动,速度快但容易卡在局部最优。模拟退火则聪明得多:它在早期用高“温度”容忍差的方案,后期再降温精细打磨,像先大步试错、再小步修正。
设计师改图也是这样:看到一个方案似乎更差,别急着撕掉,拿着它走两步,有时能绕开死胡同,找到一条通往更稳结构的山路。
- 能量差新方案相对当前方案的能量变化,正则更差。
- 温度参数控制随机性的“热度”,高温时敢闯,低温时求稳。
- 接受概率变差越少、温度越高,越容易被试探性接受。
- 决策规则生成随机数,小于该概率就接受新方案。
负样本设计
质检员上岗前要干什么?看大量危房照片,看到吐为止。只看过合格楼的人,分不清“看似能住、实则要塌”的隐患房。在蛋白设计里,这些“危房”叫负样本,英文叫 decoy——它们是和目标结构相似、但能量更高的错误构象。
打分函数要让天然态在能量上“碾压”所有 decoy,形成一张能量漏斗:越往谷底(天然态)走,能量越低,任何偏离都只能往上爬。如果某个 decoy 的能量比天然态还低,说明打分函数出现漏洞,轻则让设计失效,重则筛选出一堆错误折叠。因此负样本设计是打分函数调优的关键环节:生成的 decoy 要“像但错”,越接近天然态的假构象,训练价值越高。
危房照片看得越多,质检员越能一眼挑出隐患。decoy 就是打分函数的“危房训练集”,让它在成千上万相似结构里,稳稳把真正的“合格楼”选出来。
- 诱饵能量一个精心构造的错误构象的能量分。
- 天然态能量目标折叠结构的能量分。
- 能量差距两者相减,度量打分函数对真假结构的区分力。
- 大于零天然态必须始终比所有 decoy 低,设计才算过关。
从头设计流程
最后,王师傅带小李完整走了一遍“从零盖楼”的流程。从头设计蛋白,就像在一块空地上从零开始:先定建筑轮廓,也就是选择或设计目标骨架;再选建材,也就是在骨架上填氨基酸序列;然后盖模型验证,也就是做湿实验;最后根据测试结果反复修改。
实际项目中,Rosetta 通常先在骨架的每个位点上摆放侧链构象,用能量函数挑出低能量组合,再通过蒙特卡洛/模拟退火迭代优化。计算打分筛出候选序列后,进入基因合成、蛋白表达、纯化、圆二色谱和晶体结构测定等湿实验验证。如果结构对不上或稳定性不够,就带着实验结果回到计算端修改。整个过程不是一锤子买卖,而是“计算-实验”的迭代循环。
一张蓝图从第一笔草图到最终交付,中间要经历无数轮“画-算-建-改”。蛋白设计的本质也一样:计算给出方向,实验给出反馈,迭代才能逼近那个真正“稳得住”的答案。
- 流程权重两个子项各自在总评分中的重要程度。
- 折叠稳定性项折叠自由能越负,代表蛋白越容易自发折叠。
- 区分度项天然态与诱饵的能量差越大,说明设计方案越“独一无二”。
- 综合评分两项加权求和,分数越高,方案越值得花钱做实验。
AI 应用场景
抗体 CDR 环区稳定性设计
阶段:序列设计与打分筛选
解决的问题:抗体 CDR 环区柔性大、容易降解,传统方法靠噬菌体展示一轮轮筛,周期长成本高。用能量函数对候选突变体批量打分,能快速锁定位点组合,只把能量最低的序列送去表达验证。
具体案例:某生物技术公司设计抗 PD-L1 纳米抗体时,对 CDR H3 环做丙氨酸扫描结合 Rosetta 能量评估,最终挑选的能量优化变体在 CHO 细胞中表达量提升约 2 倍,且热稳定性明显改善。
工业酶热稳定性改造
阶段:折叠稳定性评估
解决的问题:工业酶在高温反应中容易失活,逐一突变试错成本高。能量函数可以计算每个突变对折叠自由能 ΔG 的影响,优先保留使 ΔG 更负的“加固”突变。
具体案例:某淀粉酶改造项目中,工程师用 FoldX/Rosetta 评估 200 多个候选突变,选出 3 个稳定化突变组合后,酶的熔点 Tm 提高约 15°C,在 70°C 下酶活保持时间延长了 4 倍。
从头设计病毒阻断蛋白
阶段:全流程从头设计
解决的问题:自然界中不存在能紧密结合病毒刺突蛋白的现成蛋白,需要从头设计一个全新蛋白来阻断病毒感染。
具体案例:华盛顿大学团队用 Rosetta 设计出针对 SARS-CoV-2 刺突蛋白的迷你结合蛋白,一轮计算设计加湿实验验证就获得纳摩尔级亲和力,并完成了晶体结构确证,是“计算设计+实验反馈”闭环的经典案例。
Python 演示
import mathimport random AA = list("ACDEFGHIKLMNPQRSTVWY") H = { 'A': 1.8, 'C': 2.5, 'D': -3.5, 'E': -3.5, 'F': 2.8, 'G': -0.4, 'H': -3.2, 'I': 4.5, 'K': -3.9, 'L': 3.8, 'M': 1.9, 'N': -3.5, 'P': -1.6, 'Q': -3.5, 'R': -4.5, 'S': -0.8, 'T': -0.7, 'V': 4.2, 'W': -0.9, 'Y': -1.3} def pocket_score(seq): """模拟疏水核心能量: 疏水残基贡献负能量, 相邻带电残基产生惩罚""" score = 0.0 n = len(seq) for i in range(n): if H[seq[i]] > 2: score -= 0.3 * H[seq[i]] if i > 0 and H[seq[i]] < -3 and H[seq[i-1]] < -3: score += 0.8 return score def design(start_seq, steps=500, temp=0.5): """蒙特卡洛序列搜索: 接受更优方案, 以模拟退火概率接受较差方案""" cur = list(start_seq) cur_e = pocket_score(cur) best = cur[:] best_e = cur_e for _ in range(steps): pos = random.randrange(len(cur)) old = cur[pos] cur[pos] = random.choice(AA) new_e = pocket_score(cur) delta = new_e - cur_e if delta < 0 or random.random() < math.exp(-delta / temp): cur_e = new_e if cur_e < best_e: best_e = cur_e best = cur[:] else: cur[pos] = old return "".join(best), best_e random.seed(42)start = "".join(random.choice(AA) for _ in range(20))best_seq, best_e = design(start, steps=500, temp=0.5) print("初始序列能量:", pocket_score(start))print("优化后序列能量:", best_e)print("优化后序列:", best_seq)
AA = list("ACDEFGHIKLMNPQRSTVWY")定义 20 种标准氨基酸作为“建材库”。score -= 0.3 * H[seq[i]]疏水残基越多,能量越负,模拟疏水核心埋藏带来的稳定效果。delta = new_e - cur_e新旧方案的得分差是接受或拒绝的核心依据。if delta < 0 or random.random() < math.exp(-delta / temp)变差方案也有概率被接受,这就是模拟退火跳出局部陷阱的机制。else: cur[pos] = old被拒绝的突变要回退到原来的氨基酸。best_seq = list(cur_seq)记录搜索历史中能量最低的方案,作为最终设计输出。temp=0.5温度参数越小,程序越保守,后期趋于贪婪精修。
常见误区
误区序列在 Rosetta 里打分很低,设计就肯定能成功表达和折叠。我可是挑了分数最低的那个!
正解能量函数只评估理论稳定度,是必要非充分条件。它告诉你“这栋楼图纸上很稳”,但细胞里能否表达、能否溶解、是否形成正确的二硫键,能量函数覆盖不全。必须做湿实验验证:表达纯化、圆二色谱、晶体结构,一个都不能少。就像质检 App 说楼稳,还得看施工队能不能真盖出来。
为何常见:Rosetta 分数是设计流程中最显眼的数字,新手很自然把“分数低”等同于“成功”。
误区算力足够强的话,把 20 的 n 次方种序列全部算一遍,取能量最低的不就行了?
正解100 个位点就有 10 的 130 次方种组合,远超宇宙原子数。穷举在物理上不可能,必须用启发式搜索——蒙特卡洛、模拟退火、遗传算法等。这些算法不保证全局最优,但能在合理时间内找到“足够好”的候选序列,再交给实验筛选。
为何常见:穷举是程序员面对搜索问题时的直觉反应,但组合爆炸让它在序列设计领域完全不可行。
误区Decoy 就是数据集,多生成几万个随机序列丢进去,打分函数自然越训越好。
正解Decoy 必须“像但错”——与天然态构象相近但能量略高的陷阱构象才有训练价值。完全随机的无意义构象跟天然态差太远,打分函数轻松区分,对提升判别力没有帮助。高质量的 decoy 集合要求精心构造,重在物理合理性而非单纯数量。
为何常见:机器学习里“数据量越大越好”是通用直觉,但 decoy 是有物理约束的构象,不能像图像标注一样堆数量。
误区ΔG 越负,蛋白就越稳定,设计就越成功,最好能到负数无穷大。
正解天然球蛋白的 ΔG 通常只有 -5 到 -15 kcal/mol,说明“刚好够稳”才是常态。过度稳定会让蛋白丧失构象柔性,活性位点被锁死,甚至形成非天然的异常堆积。设计的正确目标是:稳定住目标构象,同时保留功能所需的动态性。
为何常见:把“稳定”想成线性单调的指标,忽略了蛋白质功能依赖构象变化的本质。
面试题
Q1. 蛋白质能量函数的核心作用是什么?
- A.合成蛋白质的实验方法
- B.给结构稳定度打一个分数← 正确答案
- C.直接显示蛋白的三维图像
- D.计算蛋白的氨基酸数量
答案:B。能量函数把物理相互作用折算成数值,分数越低结构越稳定。A 是实验流程,C 是可视化工具,D 是序列统计,都与“评估稳定度”无关。
Q2. 能量函数得分越低,代表蛋白质结构?
- A.越不稳定
- B.越稳定← 正确答案
- C.分子量越大
- D.序列越长
答案:B。能量越低,构象越接近天然态,结构越稳定。分子量和序列长度是序列本身的属性,与构象稳定度无关。
Q3. Lennard-Jones 势能描述哪些现象?
- A.原子贴太近时的强排斥← 正确答案
- B.原子距离合适的弱吸引← 正确答案
- C.蛋白质的氨基酸数量
- D.溶液的酸碱度变化
答案:AB。Lennard-Jones 势包含 r^-12 排斥项和 r^-6 吸引项,描述原子间“太近推开、合适拉住”的范德华作用。C 和 D 与范德华力无关。
Q4. 折叠自由能 ΔG_fold < 0 意味着什么?
- A.蛋白质无法自发折叠
- B.折叠态比未折叠态更稳定← 正确答案
- C.未折叠态能量更低
- D.蛋白质一定会降解
答案:B。ΔG_fold = G_folded - G_unfolded,小于零说明折叠态能量更低、更稳定,蛋白质倾向自发折叠。A、C 说反了,D 与热稳定性而非折叠驱动有关。
Q5. Boltzmann 分布中 exp(-E/kT) 说明什么?
- A.能量越高对应概率越大
- B.能量越低对应概率越大← 正确答案
- C.概率与能量没有关系
- D.温度变化不影响概率
答案:B。指数函数里 E 前有负号,能量越低,指数越大,概率越高。温度 T 在分母上,升高温度会削弱能量差异的影响,并非完全无关。
Q6. 模拟退火中偶尔接受能量升高方案的目的?
- A.让序列长度不断增加
- B.帮助跳出局部能量陷阱← 正确答案
- C.降低程序运行的时间
- D.让蛋白质结构更稳定
答案:B。如果只接受能量降低的方案,搜索会卡在局部极小值。偶尔接受变差方案能翻越能量“山脊”,有机会找到全局最优谷。这与运行时间无关,也不会直接增加序列长度。
Q7. Rosetta 在蛋白设计中的主要角色是?
- A.荧光显微镜的配件
- B.蛋白质建模与设计软件← 正确答案
- C.基因测序的仪器
- D.氨基酸序列数据库
答案:B。Rosetta 是一套集结构预测、序列设计、能量打分于一体的计算蛋白设计软件,被广泛用于从头设计和突变稳定性评估。其他选项都是实验室硬件或数据资源。
Q8. 在 E_vdW = ε[(r0/r)^12 - 2(r0/r)^6] 中,能量最低点出现在?
- A.r 等于平衡距离 r0 处← 正确答案
- B.r 大于 2 倍 r0 处
- C.r 小于一半 r0 处
- D.r 趋近无穷大的位置
答案:A。对 r 求导并令导数为零,可得 r = r0 时势能最低(等于 -ε)。r 无穷大时势能趋近 0,不是最低;r 太近时排斥项急剧上升。该极值性质让 r0 成为最优原子间距。
Q9. 下列哪些属于蛋白质能量函数的常见能量项?
- A.范德华相互作用← 正确答案
- B.氢键与静电作用← 正确答案
- C.网络带宽与延迟
- D.疏水溶剂化效应← 正确答案
答案:ABD。能量函数由物理/经验项构成,包括范德华力、氢键、静电、溶剂化、旋转异构等。C 是计算机网络概念,与分子力场完全无关。
Q10. 关于负样本(decoy)设计的说法,哪些正确?
- A.用来训练更可靠的打分函数← 正确答案
- B.能检验目标结构是否能量最低← 正确答案
- C.随机生成几万个即可无需筛选
- D.应覆盖与天然态相近的陷阱构象← 正确答案
答案:ABD。decoy 是精心构造的“像但错”的构象,用来训练和检验打分函数,确保天然态能量低于所有诱饵。C 忽略了对陷阱构象的质量要求,随机堆积只增数量、不增判别力。