论文部分内容阅读
现代微阵列技术能够产生大量基因表达数据,这些数据可能包含几千个基因在几百个不同实验条件下的表达水平。为了从这些数据集中更加有效、高效地发现新的、有用的知识,必须开发出更高效的数据挖掘算法。双聚类是微阵列基因表达数据分析中很实用的一种数据挖掘技术,它是一种同时对微阵列基因和条件进行聚类的一种方法,用来挖掘基因子集在条件子集下体现出很强相关性的最大子矩阵。由于双聚类需要考虑多个相互冲突的目标,所以采用多目标优化算法是一种自然的选择。自然启发式算法是通过模拟自然界的现象来解决优化问题的元启发式算法,比如粒子群优化(Particle Swarm Optimization, PSO)算法和模拟退火(SimulatedAnnealing, SA)算法都是典型的自然启发式算法。他们已经被成功应用到包括双聚类问题等多目标优化问题中。不同的元启发式算法有不同的特点,比如他们可能有不同的局部求精能力和不同的全局求解能力。为了结合PSO算法和SA算法的优点,本文对PSO算法和SA算法的混合及其在基因表达数据的双聚类中的应用进行了研究,同时还对基于PSO算法的并行混合多目标SA算法进行了研究,主要研究内容包括:为了加强PSO算法的局部求精能力,利用SA算法具有更强的局部求精能力的特点,本文提出了一个结合SA算法思想的混合多目标PSO双聚类算法。具体地,我们使用SA算法的metropolis准则来决定是接受或者拒绝粒子速度和位置的更新,这样,更好的解总能被接受,而劣质解也能以一定的概率被接受,这种策略能更有效地平衡算法的局部求精能力和全局求解能力。其次,本文提出了基于PSO算法的混合多目标SA算法。传统的SA算法采用随机采样,造成其收敛速度很慢,最近在函数优化问题上的研究表明,基于学习的采样能够有效地提高SA算法的收敛速度。而PSO算法的速度和位置更新方程体现了很强的学习能力。为了提高SA算法的采样效率,本文使用PSO算法的运动方程来为SA算法产生候选解,这样,混合SA算法具有自适应的邻域结构,能够对解空间做更精细的搜索。SA算法的内在串行性使其并行实现的并行效率严重依赖于所求解问题的可并行性,本文提出的混合多目标SA算法是一种基于种群的优化算法,其本质上是并行的,本文对并行混合多目标SA算法在处理基因表达数据聚类分析时的性能进行了研究。总体而言,本文对基于PSO算法和SA算法的混合多目标优化双聚类算法进行了比较深入的研究,提出了两种不同的混合策略以充分利用PSO算法和SA算法各自的优点,同时,我们实现了并行混合多目标SA算法,在两个微阵列基因表达数据集上对提出的算法进行了测试,仿真结果表明所提出的算法具有良好的性能。