66、蛋白质折叠晶格模型近似算法与顶点覆盖近似实验研究

蛋白质折叠晶格模型近似算法与顶点覆盖近似实验研究

蛋白质折叠晶格模型相关研究

在蛋白质折叠的研究中,我们采用了近似完全多项式随机近似方案(Almost FPRAS)来处理晶格模型。

自测试算法

自测试算法(Self - test)是其中的关键部分,其具体步骤如下:

Algorithm 3 Selftest
Require: ϵα, δ, λ, s[0 . . . N], ˜αn−1, ˜β−1
1 , . . . , ˜β−1
n−1;
1: ˜αn := EstimateAlpha(ϵα, δ, λ, s, ˜αn−1, ˜β1, . . . , ˜βn−1);
2: if ˜α−1
n (1 −ϵα) > g(n) then
3:
    output ”Warning: conjecture fails!”;
4: end if

该算法运行时间在 $N$、$\epsilon^{-1}$ 和 $\ln\delta^{-1}$ 上是多项式的,且概率至少为 $1 - \delta$。并且,在 $i < n$ 时未发出警告信息的前提下,它具有以下性质:
- 若 $\alpha^{-1} n\leq g(n)$,则算法以至少 $1 - \delta$ 的概率输出可靠数值答案(即 $\tilde{\beta}^{-1}_n$ 和 $\tilde{c}_n$ 满足相应概率条件)。
- 若 $\alpha^{-1}_n > \frac{1 + \epsilon
{\alpha}}{1 - \epsilon_{\alpha}}g(n)$,则算法以至少 $1 - \delta$ 的概率输出警告信息。
- 若 $g(n) < \alpha^{-1} n\leq\frac{1 + \epsilon {\alpha}}{1 - \epsilon_{\alpha}}g(n)$,则算法要么输出警告信息,要么输出可靠数值答案。

HP 模型与晶格选择

我们选择 HP 模型是因其简单性,且该模型被广泛认为能捕捉折叠过程的许多重要特性。在 HP 模型中,构象空间被限制为晶格上的自回避行走,晶格点用字母 H 和 P 标记。根据参数 $\lambda$ 的不同,能量势(即权重函数)能反映疏水氨基酸形成疏水核心的倾向($\lambda > 1$ 时)或不形成($\lambda < 1$ 时)。对于行走 $w$,其权重为 $\lambda^{h(w)}$,其中 $h(w)$ 计算形成拓扑接触的疏水性氨基酸数量。

在晶格选择方面,传统的 HP 模拟常采用方形晶格,但方形晶格存在严重问题,即若两个氨基酸之间的字符串长度为奇数,它们不能处于相邻晶格点。因此,我们选择面心立方(FCC)晶格,它在模拟真实蛋白质方面更准确,且不存在立方晶格的奇偶问题。FCC 晶格是紧密堆积结构,沿 (1 1 1) 方向观察时,由六边形层堆叠而成,其节点可视为 $\mathbb{R}^3$ 中所有坐标为整数且坐标和为偶数的点,即 $FCC = {x\in\mathbb{Z}^3:\sum_{i = 1}^{3}x_i\text{ 是偶数}}$。

数值结果

我们的实验主要针对两个序列 $w_1 = HPPHPHPHPHPH…$ 和 $w_2 = PHPHPHPPPPHPHPHPPHPHPHPPPPHPHPHPP$ 进行,得到了两方面结果:近似配分函数 $c_N$ 和对猜想 1 的测试。

以下是通过 EstimateBeta 过程计算的配分函数表:
| $n$ | $c_n$($w_1$,$\lambda = 0.5$) | $c_n$($w_2$,$\lambda = 0.5$) | $c_n$($\lambda = 1$) | $\beta^{-1}_n$($w_1$) | $\beta^{-1}_n$($w_2$) |
| — | — | — | — | — | — |
| 2 | 132 | 123.901 | 132 | 10.3251 | 11 |
| 3 | 1403.55 | 1323.18 | 1326.17 | 10.6793 | 10.0467 |
| 4 | 14704.2 | 12897.9 | 13953.6 | 9.74764 | 10.5217 |
| 5 | 152489 | 134510 | 134065 | 10.4288 | 9.60794 |
| 6 | 1.57441e + 06 | 1.28339e + 06 | 1.39607e + 06 | 9.54126 | 10.4134 |
| 7 | 1.61775e + 07 | 1.3307e + 07 | 1.43855e + 07 | 10.3686 | 10.3042 |
| 8 | 1.65642e + 08 | 1.25837e + 08 | 1.47305e + 08 | 9.45641 | 10.2399 |
| 9 | 1.69321e + 09 | 1.29758e + 09 | 1.50843e + 09 | 10.3117 | 10.2401 |
| 10 | 1.72806e + 10 | 1.22262e + 10 | 1.50833e + 10 | 9.422 | 9.99936 |
| 11 | 1.76098e + 11 | 1.25874e + 11 | 1.54251e + 11 | 10.2955 | 10.2266 |
| 12 | 1.79192e + 12 | 1.17901e + 12 | 1.46706e + 12 | 9.36657 | 9.51087 |

从表中可以观察到,$\beta^{-1} n$ 的值非常接近 $\lambda = 1$ 时的对应极限值 $\mu=\lim {n\rightarrow\infty}c_n^{1/n}$,该极限值约为 10.0364。

对于猜想 1,我们得到了非常有前景的结果。量 $\alpha_N:=\min_{j,k,j + k\leq N}\frac{c_{j + k}}{c_jc_k}$ 对于无权行走有自然解释,在我们的情况下,猜想 1 对应于底层晶格的一种性质:长度为 $j$ 和 $k$ 的两个自回避行走(SAWs)的连接以相当高的概率形成更长的 SAW,且其权重与长度为 $j + k$ 的行走的平均权重相差不大。结果显示,$\alpha^{-1}_n$ 似乎几乎与 $\lambda$ 和序列的疏水性模式无关,且随 $n$ 增长缓慢,这让我们相信猜想 1 是正确的,从而可以轻松选择自测试过程中所需的合适多项式 $g$。

顶点覆盖近似问题研究

顶点覆盖问题是计算机科学中的经典 NP 完全问题,目前已知的最佳最坏情况近似比约为 2。我们采用了一系列简单的约简方法,每个约简保证近似比为 $\frac{3}{2}$,以寻找各种来源的测试图的近似顶点覆盖。

图约简的基本原理

我们的主要方法是分治法,通过将图划分为更小、更简单的子问题来解决顶点覆盖问题。为此,有以下重要引理:
引理 1 :假设我们有一个图 $G=(V,E)$ 和顶点划分 $V = V_1\cup V_2\cup…\cup V_k$,设 $G_i=(V_i,E_i)$ 是由 $V_i$ 诱导的子图,且 $\forall i,E_i\neq\varnothing$。若对于每个 $G_i$ 都有一个顶点覆盖 $VC_{approx}^i$,且 $VC_{approx}=\cup_iVC_{approx}^i$ 是 $G$ 的顶点覆盖,设 $VC_{opt}$ 是 $G$ 的最优顶点覆盖,则 $\frac{|VC_{approx}|}{|VC_{opt}|}\leq\max_{i}\frac{|VC_{approx}^i|}{|VC_{opt}\cap V_i|}$。

基于此引理,我们可以通过迭代地为原始图的小部分找到近似顶点覆盖,最终得到整个图的近似顶点覆盖。

同时,我们定义了两种图约简:
- 最优图约简 :从图 $G=(V,E)$ 到图 $G’=(V’,E’)$ 的映射,若有 $G’$ 的最优顶点覆盖,则可找到 $G$ 的最优顶点覆盖。
- $\rho$-近似图约简 :从图 $G=(V,E)$ 到图 $G’=(V’,E’)$ 的映射,若有 $G’$ 的最优顶点覆盖,则可找到 $G$ 的 $\rho$-近似顶点覆盖。我们使用 $\rho\leq\frac{3}{2}$ 的最优图约简和 $\rho$-近似图约简。

另外,顶点收缩是我们广泛使用的操作,即将一组顶点 $v_1,…,v_k$ 收缩为一个新顶点 $v$,删除被移除顶点之间的所有边,并用 $(v,u)$ 替换每条边 $(v_i,u)$,同时将相邻顶点集合并。

最优图约简
  • 零度和一度顶点
    • 零度顶点不在最优顶点覆盖中。
    • 一度顶点 $u$ 的邻居 $w$ 一定在最优顶点覆盖中,而 $u$ 不在。
  • 二度顶点
    • 若二度顶点 $u$ 的邻居 $v$ 和 $w$ 相邻,则存在一个包含 $v$ 和 $w$ 但不包含 $u$ 的最优顶点覆盖。
    • 若二度顶点 $u$ 的邻居 $v$ 和 $w$ 不相邻,可将 $u$、$v$ 和 $w$ 收缩为一个新顶点 $z$,若 $G’$ 的顶点覆盖近似比为 $\rho$,则可找到 $G$ 的近似比为 $\rho$ 的顶点覆盖,若 $G’$ 的顶点覆盖是最优的,则可找到 $G$ 的最优顶点覆盖。
  • 网络流方法 :顶点覆盖问题可表述为整数规划问题,通过求解其线性规划松弛问题,可得到部分顶点覆盖解。定义 $P = {u\in V|x_u>0.5}$,$Q = {u\in V|x_u = 0.5}$ 和 $R = {u\in V|x_u<0.5}$,存在一个包含 $P$ 且与 $R$ 不相交的最优顶点覆盖,因此可移除对应解变量值不等于 $\frac{1}{2}$ 的所有顶点,该问题可作为网络流问题求解。
  • 扩展网络流方法 :网络流算法常得到许多变量值为 $\frac{1}{2}$ 的解决方案,为找到更多非半解变量,我们先求解网络流问题,移除值不等于 $\frac{1}{2}$ 的变量,然后尝试将值为 $\frac{1}{2}$ 的变量设为 1 并重新求解,若目标值不变则保留新值,否则恢复原值。该方法在稀疏图中,当最优顶点覆盖大小接近顶点数的一半时效果良好。

以下是这些约简的流程图:

graph TD;
    A[输入图 G] --> B{是否有零度或一度顶点};
    B -- 是 --> C[应用零度和一度顶点约简];
    B -- 否 --> D{是否有二度顶点};
    D -- 是 --> E{邻居是否相邻};
    E -- 是 --> F[应用二度相邻顶点约简];
    E -- 否 --> G[应用二度不相邻顶点约简];
    D -- 否 --> H{是否使用网络流方法};
    H -- 是 --> I[应用网络流方法];
    I --> J{是否使用扩展网络流方法};
    J -- 是 --> K[应用扩展网络流方法];
    J -- 否 --> L[结束];
    C --> D;
    F --> D;
    G --> D;

蛋白质折叠晶格模型近似算法与顶点覆盖近似实验研究

近似图约简

近似图约简能帮助我们在处理复杂图时取得进一步进展,下面详细介绍几种常见的近似图约简方法:
- 三度顶点约简
- 操作步骤 :找到一个三度顶点 $u$,其邻居 $v$、$w$ 和 $z$ 互不相邻,将 $u$、$v$、$w$ 和 $z$ 收缩为一个新顶点 $q$,得到新图 $G’$。
- 性质 :新顶点 $q$ 是 $\frac{3}{2}$ - 近似顶点。若 $G’$ 有最优顶点覆盖 $VC^ $,则可确定 $u$、$v$、$w$ 和 $z$ 中哪些在 $G$ 的 $\frac{3}{2}$ - 近似顶点覆盖中。该约简会从图中移除四个常规顶点和至少三条边,同时创建一个 $\frac{3}{2}$ - 近似顶点。
-
三角形约简
-
操作步骤 :若顶点 $v$、$u$ 和 $w$ 构成一个三角形,将这三个顶点都包含在顶点覆盖中。
-
性质 :对于任何顶点覆盖,三角形中至少两个顶点必须在其中,所以将三个顶点都包含进去可得到 $\frac{3}{2}$ - 近似。此约简会从图中移除三个顶点及其所有相邻边,且不会创建近似顶点。
-
四循环约简
-
操作步骤 :对于无弦的四循环,顶点为 $v_1$、$v_2$、$v_3$ 和 $v_4$,将 $v_1$ 和 $v_3$ 收缩为新顶点 $z_1$,将 $v_2$ 和 $v_4$ 收缩为新顶点 $z_2$,得到新图 $G’$。
-
性质 :若 $G’$ 有最优顶点覆盖 $VC^ $,则可找到 $G$ 的 $\frac{4}{3}$ - 近似顶点覆盖。该约简会移除四个常规顶点和至少三条边,但会创建两个 $\frac{4}{3}$ - 近似顶点。
- 六循环约简
- 操作步骤 :对于长度为六的无弦循环,顶点为 $v_1$、$v_2$、…、$v_6$,将 $v_1$、$v_3$ 和 $v_5$ 收缩为新顶点 $z_1$,将 $v_2$、$v_4$ 和 $v_6$ 收缩为新顶点 $z_2$,保持其他顶点和边不变,得到新图 $G’$。
- 性质 :若 $G’$ 有最优顶点覆盖 $VC^*$,则可找到 $G$ 的 $\frac{3}{2}$ - 近似顶点覆盖。此约简会移除六个常规顶点和至少五条边,同时创建两个 $\frac{3}{2}$ - 近似顶点。

这些近似图约简的特点总结如下表:
| 约简类型 | 移除顶点数 | 移除边数 | 创建近似顶点数 | 近似比 |
| — | — | — | — | — |
| 三度顶点约简 | 4 | 至少 3 | 1 | $\frac{3}{2}$ |
| 三角形约简 | 3 | 所有相邻边 | 0 | $\frac{3}{2}$ |
| 四循环约简 | 4 | 至少 3 | 2 | $\frac{4}{3}$ |
| 六循环约简 | 6 | 至少 5 | 2 | $\frac{3}{2}$ |

以下是这些近似图约简的流程图:

graph TD;
    A[输入图 G] --> B{是否有三度顶点};
    B -- 是 --> C[应用三度顶点约简];
    B -- 否 --> D{是否有三角形};
    D -- 是 --> E[应用三角形约简];
    D -- 否 --> F{是否有四循环};
    F -- 是 --> G[应用四循环约简];
    F -- 否 --> H{是否有六循环};
    H -- 是 --> I[应用六循环约简];
    H -- 否 --> J[结束];
    C --> D;
    E --> F;
    G --> H;
实验结果

为了测试这些约简方法的效果,我们收集了互联网上和以往工作中的所有可用图,并专门生成了对顶点覆盖问题具有挑战性的图。原则上,这些约简方法并不能保证一定能找到近似顶点覆盖,但实际情况是,仅使用这些约简方法,我们就能在几秒内为每个图找到 $\frac{3}{2}$ - 近似顶点覆盖。对于已知最小顶点覆盖大小的图,实际近似比通常远低于 $\frac{3}{2}$,在许多情况下,我们找到的顶点覆盖要么是最优的,要么非常接近最优。

总结

  • 在蛋白质折叠晶格模型的研究中,我们采用自测试算法和选择合适的 HP 模型与晶格,对配分函数进行了近似计算,并对猜想 1 进行了验证,得到了有前景的结果,为进一步研究蛋白质折叠问题提供了有力的支持。
  • 在顶点覆盖近似问题的研究中,我们通过分治法,利用最优图约简和近似图约简,成功地为各种图找到近似顶点覆盖,且实际效果良好。这些方法的组合利用了图的不同性质,相互作用产生了强大的效果,为解决 NP 完全问题提供了一种新的思路和方法。

未来,我们可以进一步探索这些方法在更复杂问题中的应用,例如研究如何优化这些约简方法,以提高计算效率和近似精度;也可以尝试将这些方法应用到其他相关领域的问题中,拓展其应用范围。

基于STM32 F4的永磁同步电机无位置传感器控制策略研究内容概要:本文围绕基于STM32 F4的永磁同步电机(PMSM)无位置传感器控制策略展开研究,重点探讨在不依赖物理位置传感器的情况下,如何通过算法实现对电机转子位置和速度的精确估计控制。文中结合嵌入式开发平台STM32 F4,采用如滑模观测器、扩展卡尔曼滤波或高频注入法等先进观测技术,实现对电机反电动势或磁链的估算,进而完成无传感器矢量控制(FOC)。同时,研究涵盖系统建模、控制算法设计、仿真验证(可能使用Simulink)以及在STM32硬件平台上的代码实现调试,旨在提高电机控制系统的可靠性、降低成本并增强环境适应性。; 适合人群:具备一定电力电子、自动控制理论基础和嵌入式开发经验的电气工程、自动化及相关专业的研究生、科研人员及从事电机驱动开发的工程师。; 使用场景及目标:①掌握永磁同步电机无位置传感器控制的核心原理实现方法;②学习如何在STM32平台上进行电机控制算法的移植优化;③为开发高性能、低成本的电机驱动系统提供技术参考实践指导。; 阅读建议:建议读者结合文中提到的控制理论、仿真模型实际代码实现进行系统学习,有条件者应在实验平台上进行验证,重点关注观测器设计、参数整定及系统稳定性分析等关键环节。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值