2. 激活与抑制关系的基本概念
做药物靶点建模,最绕不开的就是「激活」和「抑制」这两个概念。说白了,它们描述的是药物分子怎么跟靶点蛋白打交道——是让靶点干活(激活),还是让靶点歇着(抑制)。我个人习惯先把这两个词的定义掰扯清楚,不然后面写方程、调参数时容易糊涂。
2.1 激活效应:让靶点“动起来”
激活,就是药物分子结合到靶点上,让靶点的活性增强。比如一些 G 蛋白偶联受体(GPCR)的激动剂,它们能模拟天然配体,把受体的开关拨到“ON”位置。
我在项目中遇到过一种情况:某个候选分子在酶活测试里表现出激活作用,但后面做细胞实验却无效。后来排查才发现,那个分子激活的是靶点的非活性构象,而不是功能构象——嗯,这里要注意,并不是所有“结合并增强信号”都算真正的功能激活。
2.2 抑制效应:让靶点“停下来”
抑制正好相反。药物结合后把靶点的活性降下来,甚至完全关掉。最常见的抑制剂类型有竞争性、非竞争性和反竞争性。分辨它们其实不难,关键看抑制剂是跟底物抢同一个结合位点,还是跑到别的地方去搞事。
我曾经犯过一个低级错误:以为某个抑制剂是竞争性的,结果动力学数据画出来的Lineweaver-Burk图交叉点在纵轴上——这才反应过来,它是非竞争性抑制。从那以后,我养成了一个习惯:拿到数据先画双倒数图,肉眼判断个大概,再跑拟合。
2.3 激活与抑制的建模本质
在数学模型里,激活和抑制其实都可以用“配体-靶点复合物的状态概率”来描述。我把它归纳成三个核心要素:
- 结合状态: 配体是否占据结合位点(以解离常数Kd表示)。
- 活性状态: 靶点是否处于功能构象(以efficacy参数表示)。
- 信号转换: 活性状态到下游效应的映射(线性或Hill型函数)。
你想想看,一个激活剂其实就是让靶点从非活性态向活性态偏移,而抑制剂则是反向作用或者干脆固定住非活性态。
核心公式记忆点:
激活效应:E = Emax × [L] / (EC50 + [L])
抑制效应:E = E0 - (E0 × [I] / (IC50 + [I]))
其中EC50/IC50都代表半效浓度,但意义完全相反。
2.4 一张图理清关系框架
下面这张SVG图我把激活/抑制的基本关系、分类和建模方法糅在一起了。我平时讲课或写方案时经常拿它当框架图看。
2.5 一个极易混淆的例子:部分激动剂 vs 低效价全激动剂
刚入行那阵子,我经常把部分激动剂(Partial Agonist)和低效价的全激动剂(Low efficacy Full Agonist)搞混。这里有个关键的判断点:
| 特征 | 部分激动剂 | 低效价全激动剂 |
|---|---|---|
| 最大效应 (Emax) | 低于天然配体 | 可达到天然配体水平 |
| 亲和力 | 可能高可能低 | 通常较低 |
| 有无拮抗性 | 高浓度下可拮抗全激动剂 | 无拮抗作用 |
| 常见建模参数 | Emax < 1, α < 1 | EC50 高但 τ 大 |
为什么会造成这种混淆?因为两者的剂量-效应曲线形状有时候长得像。我自己的做法是:先做饱和浓度测试,看Emax能不能追平参考激动剂。追不平?那就按部分激动剂处理,再用Schild回归验证。
2.6 抑制常数与IC50的换算陷阱
很多人以为IC50就是Ki(抑制常数),其实不是。IC50跟底物浓度、酶浓度都有关。Cheng-Prusoff公式就是用来把IC50转成Ki的:
Ki = IC50 / (1 + [S] / Km)
适用于竞争性抑制。
非竞争性抑制的公式更复杂:
Ki = IC50 / (1 + [S] / Km) * (Ki')
要谨慎选择公式。
我踩过的坑:用竞争性抑制的Cheng-Prusoff公式算非竞争性抑制的Ki,结果发了文章后被审稿人直接点名批评。嗯,从那以后我每次跑拟合前都会先确定抑制类型。
2.7 在实际建模中,我要关注哪些参数?
不管你是用ODE模拟动态系统,还是用稳态近似做虚拟筛选,这几个参数必须盯紧:
- Kd / Ki: 亲和力的核心指标,越小结合越强。
- Emax: 激活剂的最大效应,抑制剂的残余活性(通常是0)。
- EC50 / IC50: 半效应浓度,体现效价。注意EC50和IC50往往不等于Kd。
- Hill系数 (nH): 反映协同性。nH > 1 可能存在正协同,nH < 1 可能有负协同。
2.8 一个最简单的实践:写个激活-抑制参数表
假设你手头有一组体外数据,怎么快速整理成建模可用的参数?我一般先列成下面的结构,然后导入R或Python拟合:
# 示例:激活剂数据的参数表(拟写作)
compound | target | type | EC50 (nM) | Emax (%) | Hill
---------------------------------------------------------------
A | GPCR_A | full_agonist| 12.3 | 100 | 1.2
B | GPCR_A | partial_ag | 8.7 | 45 | 0.9
C | GPCR_A | inverse_ag | 250 | -80 | 1.5
D | GPCR_A | antagonist | 320 (IC50)| 0 | 1.0
你想想看,这种表建好之后,后续做定量药理学模型(比如Turn模型、Black-Leff模型)就方便多了。参数直接往里填。
- 确认效应类型(激活/抑制)及子类型。
- 收集至少5-8个浓度点的效应数据,避开Hill系数陷阱。
- 用Cheng-Prusoff或Ligand等效法转成Ki。
- 写进参数表,标注置信区间。
这一章的内容就到这儿。激活与抑制的概念看来简单,但实际操作中各种细节和歧义层出不穷。把这些基本关系理清了,后面的章节才能进行得更顺——嗯,至少我自己是这样一路走过来的。