协同优化算法

协同优化算法的原理是将一复杂的目标函数分解成简单的子目标函数，然后再将这些子目标函数进行协同优化。具体说来，协同优化是在优化每一子目标函数同时综合考虑其它子目标函数的结果，使子目标函数之间的优化结果能够一致。优化结果一致是指使每一变量的值在每一子目标函数的优化结果中能够一致。一般来说，可以证明，如果变量的值一致则为最优解。协同优化算法没有局部最优问题同时具有非常良好的收敛特性。 它很好地解决了许多实际中非线性优化及组合优化难题。 如果目标函数是一n个变量的函数 E ( x 1 , x 2 , … , x n ) {\displaystyle E(x_{1},x_{2},\ldots ,x_{n})} ,简写成 E ( x ) {\displaystyle E(x)} ,协同优化算法先将它分解成n个简单的子目标函数: E ( x ) = E 1 ( x ) + E 2 ( x ) + … + E n ( x ) {\displaystyle E(x)=E_{1}(x)+E_{2}(x)+\ldots +E_{n}(x)} . 如果单独优化每一子目标函数,则它们的结果很难达到一致。例如,变量 x i {\displaystyle x_{i}} 在包含它的子目标函数中的最优解值很难相同。对于 i = 1 , 2 , … , n {\displaystyle i=1,2,\ldots ,n} ,如果我们取 E i ( x ) {\displaystyle E_{i}(x)} 的最优解中 x i {\displaystyle x_{i}} 的值作为该变量的值，表示成 x ~ i {\displaystyle {\tilde {x}}_{i}} , x ~ i = arg ⁡ min x i min X i ∖ x i E i ( x ) {\displaystyle {\tilde {x}}_{i}=\arg \min _{x_{i}}\min _{X_{i}\setminus x_{i}}E_{i}(x)} ，这里， X i {\displaystyle X_{i}} 是 E i ( x ) {\displaystyle E_{i}(x)} 的变量集， X i ∖ x i {\displaystyle X_{i}\setminus x_{i}} 指变量集 X i {\displaystyle X_{i}} 除去元素 x i {\displaystyle x_{i}} ， ( x ~ 1 , x ~ 2 , … , x ~ n ) {\displaystyle ({\tilde {x}}_{1},{\tilde {x}}_{2},\ldots ,{\tilde {x}}_{n})} 则很难为原目标函数 E ( x ) {\displaystyle E(x)} 的最优解。 为了使子目标函数之间的优化结果能够一致，协同优化算法在优化每一子目标函数 E i ( x ) {\displaystyle E_{i}(x)} 同时考虑其它子目标函数的结果, Ψ j ( x j ) = min X j ∖ x j E j ( x ) {\displaystyle \Psi _{j}(x_{j})=\min _{X_{j}\setminus x_{j}}E_{j}(x)} 。 具体做法是利用其它子目标函数的优化结果通过数值加权修正每一个子目标函数如下, ( 1 − λ ) E i ( x ) + λ k ∑ j w i j Ψ j ( x j ) {\displaystyle \left(1-\lambda \right)E_{i}(x)+\lambda _{k}\sum _{j}w_{ij}\Psi _{j}(x_{j})} ，这里， λ k , w i j {\displaystyle \lambda _{k},w_{ij}} 为加权系数，满足 0 ≤ λ k , w i j ≤ 1 {\displaystyle 0\leq \lambda _{k},w_{ij}\leq 1} 。 然后对修正后的子目标函数进行优化，优化结果再叠代放入修正的子目标函数中。协同优化算法的叠代方程如下, Ψ i ( k ) ( x i ) = min X i ∖ x i ( ( 1 − λ k ) E i ( x ) + λ k ∑ j w i j Ψ j ( k − 1 ) ( x j ) ) , f o r i = 1 , 2 , … , n . {\displaystyle \Psi _{i}^{(k)}(x_{i})=\min _{X_{i}\setminus {x_{i}}}\left(\left(1-\lambda _{k}\right)E_{i}(x)+\lambda _{k}\sum _{j}w_{ij}\Psi _{j}^{(k-1)}(x_{j})\right),\quad for\;i=1,2,\ldots ,n.} 协同优化结果使每一变量的值在每一子目标函数的优化结果中达到一致。如果一致，则子目标函数的优化解既为最优解。 现代优化理论中最重要的未解难题是发现通用的全局最优化条件。由于没有全局最优化条件，我们不知道哪里可以找到最优解，也不知道现有解是不是最优解. 因此,我们不知道如何更有效地组织优化过程及何时及时中断搜索。任何全局最优化条件既有理论意义和实用价值。协同优化算法基于一种全新的优化原理解决了这一重要问题。 从协同优化算法可以推导出薛定谔方程。 假设目标能量函数为 E ( x 1 , x 2 , … , x n ) = ∑ i = 1 n ( e i ( x i ) + ∑ j :   j > i n e i j ( x i , x j ) ) , w h e r e e i j ( x i , x j ) = e j i ( x j , x i ) . {\displaystyle E(x_{1},x_{2},\ldots ,x_{n})=\sum _{i=1}^{n}\left(e_{i}(x_{i})+\sum _{j:~j>i}^{n}e_{ij}(x_{i},x_{j})\right),\quad where\;e_{ij}(x_{i},x_{j})=e_{ji}(x_{j},x_{i}).} 协同优化算法在半环 ( C , + , × ) {\displaystyle (C,+,\times )} 上的形式为 ψ i ( x i , t + Δ t ) = 1 Z i ( t + Δ t ) ψ i ( x i , t ) e − ( Δ t / ℏ ) e i ( x i ) ∏ j , j ≠ i ∫ d x j e − ( Δ t / ℏ ) e i j ( x i , x j ) | ψ j ( x j , t ) | 2 , {\displaystyle \psi _{i}(x_{i},t+\Delta t)={\frac {1}{Z_{i}(t+\Delta t)}}\psi _{i}(x_{i},t)e^{-(\Delta t/\hbar )e_{i}(x_{i})}\prod _{j,j\not =i}\int dx_{j}\;e^{-(\Delta t/\hbar )e_{ij}(x_{i},x_{j})}\left|\psi _{j}(x_{j},t)\right|^{2},} 如果让 Δ t → 0 + {\displaystyle \Delta t\rightarrow 0^{+}} 及用高斯函数平滑 ψ i ( x i , t ) {\displaystyle \psi _{i}\left(x_{i},t\right)} ,则上式收敛后变成薛定谔方程如下: E i ψ i ( x i , t ) = ( − ℏ 2 2 m i ∇ i 2 + V i ( x i ) ) ψ i ( x i , t ) ; {\displaystyle E_{i}\psi _{i}(x_{i},t)=\left(-{\frac {\hbar ^{2}}{2m_{i}}}\nabla _{i}^{2}+V_{i}(x_{i})\right)\psi _{i}(x_{i},t);} 这里 V i ( x i ) = e i + ∑ j , j ≠ i ∫ d x j   e i j | ψ j ( x j , t ) | 2 . {\displaystyle V_{i}(x_{i})=e_{i}+\sum _{j,j\not =i}\int dx_{j}~e_{ij}|\psi _{j}(x_{j},t)|^{2}.} 薛定谔方程是物理学中最基本的方程。因此，我们可以对自然界中一般分子及蛋白分子如何形成这一非线性优化问题从全局优化的角度有进一步更深的认识。 X. Huang, “Deriving the Normalized Min-Sum Algorithm from Cooperative Optimization”, accepted by IEEE Information Theory Workshop, Chengdu, China, 2006 (网上下载[永久失效連結]). X. Huang, ``The cooperative optimization metaheuristic: Inspiration from nature and applications, Computational Intelligence, ICIC 2005, Springer-Verlag, LNAI 4114, 2006, pp. 1246--1251. X. Huang, ``A general extension of constraint propagation for constraint optimization, Principles of Practice of Constraint Programming - CP 2004, Spinger-Verlag, LNCS 3258, 2004, pp. 737--741. X. Huang, ``Near perfect decoding of LDPC codes, Proceedings of IEEE International Symposium on Information Theory (ISIT), 2005, pp. 302--306 (网上下载[永久失效連結]). X. Huang, “A New Kind of Hopfield Networks for Finding Global Optimum”, International Joint Conference on Neural Networks, Montreal, Canada, 2005, pp.764-769 (网上下载[永久失效連結]). X. Huang, ``Cooperative optimization for solving large scale combinatorial problems, Theory and Algorithms for Cooperative Systems, Series on Computers and Operations Research, World Scientific, 2004, pp. 117--156 (ISBN 981-256-020-3). X. Huang, ``Image segmentation by cooperative optimization, IEEE International Conference on Image Processing (ICIP), Singapore, 2004, pp. 945--948. X. Huang, ``Cooperative optimization for energy minimization in computer vision: A case study of stereo matching, Pattern Recognition, 26th DAGM Symposium, Springer-Verlag, LNCS 3175, 2004, pp. 302--309. X. Huang, ``A general framework for constructing cooperative global optimization algorithms, Frontiers in Global Optimization, Nonconvex Optimization and Its Applications, Kluwer Academic Publishers, 2004, pp. 179--221 (ISBN 1-4020-7699-1). X. Huang, “A Polynomial Time Algorithm for Solving NP-hard Problems in Practice”, ACM SIGACT Volume 34, Issue 1, March 2003, pp. 101-108. X. Huang, “A Cooperative Search Approach for Global Optimization”, Oral Presentation at the First International Conference on Optimization Methods and Software, Hangzhou, China, 2002. 黄晓非,丁溯泉,杨知行,吴佑寿,"GF(q)域上的低密度校验(LDPC)码的译码及其在深空通讯中的应用",飞行器测控学报",第25卷,第2期,2006年4月.