论文部分内容阅读
优化算法是当今的重要研究课题,能够从海量数据中获得所需最优解,也是极具挑战的工作。优化算法可定义如下:给定某一待解问题,求该问题的最优解,此问题一般以N元变量方程形式给出。若N远大于1,则该方程在N维空间中解的个数并不唯一,甚至是无穷个解。为获得所需方程评价标准最大值或最小值所使用的计算机方法即为优化算法,评价标准是所求问题解的集合。现实生活、生产和研究中优化算法应用相当广泛,可解决各个领域面临的诸多寻优问题,比如全球物流路径选择合理化、日程安排最优化和生产成本最小化等等。前人对优化算法的研究已久,虽然算法目标是求得最优解,但对大规模数据却无法全局收敛,只可逼近最优解。最优算法种类繁多,有解析法、直接法、数值计算法和各种启发式搜索算法等等。其中大规模数据优化问题启发式搜索算法效果最佳,所以该方向也是研究热点与难点。启发式搜索算法目前主要包括模拟退火算法、遗传算法和粒子群算法等等。但这些算法无法解决所有问题,尤其是多峰值问题处理不佳,运算速度慢等,需要一种新算法来弥补这些缺陷。本文根据天文学的星云盘模型提出一种新型启发式搜索算法:引力场算法,并应用该模型到生物信息学的诸多领域,具体内容如下:⑴星云盘模型描述行星形成过程:宇宙中暗星云通过各种形式组合在一起成为恒星,而宇宙灰尘则被恒星排出,在引力作用下不断凝聚并最终形成行星。将此模型通过数学建模并创新提出了引力场算法。引力场算法主要包含四个步骤,分别为灰尘初始化、灰尘分组、移动算子和吸收算子。在灰尘初始化阶段,首先要考虑解空间的维度和形式,比如求两点间距离,则两点编号所组成向量作为引力场算法灰尘,再比如求某一矩阵行列式的值,则该矩阵作为引力场算法的灰尘。然后,在灰尘的每一个维度都随机赋予一个值,但要使该分量符合解空间范围。灰尘分组算子是引力场算法的核心问题之一,分组策略较多。解空间维度是1时,可采用平均法和随机法。平均法是每一组的取值范围都相同但组内数据皆连续,随机法是指每一组取值范围不等但组内数据皆连续。当解空间维度为2时,可以采用最大公约数法和随机法。最大公约数法是将二维空间面积分解为该面积值的两个最大公约数的乘积,每一个子块成为一组。随机法只考虑其中一维数据作为分组标准,方法与一维随机法相同,另一维不作为分组标准。当解空间维度大于2时,可采用随机法和扩展随机法。随机法与二维随机法相同,只考虑其中一维数据作为分组标准,其他维不作为分组标准。扩展随机法将每一个灰尘随机赋给任意一组,每组内灰尘数据可不连续,每组灰尘数量也各不相等。扩展随机法也可用于一维和二维数据灰尘分组。移动算子是引力场算法另一个重要内容。分组结束后,计算每组内所有灰尘质量函数值并比较所有值大小,从而确定中心灰尘。每组内周围灰尘向中心灰尘方向移动,移动步伐采用两灰尘间距离乘以黄金分割数的1/10。在移动过程中,每一个周围灰尘都要受到自转系数的影响。自转是一种从中心灰尘向周围灰尘的排斥力,自转系数是发生自转的概率,自转系数随两灰尘间距离减小而增大。吸收算子指中心灰尘和周围灰尘间距离足够小时,将周围灰尘删除。若算法满足结束条件,则直接得出中心灰尘及其相应质量函数值,否则所有中心灰尘降为周围灰尘并重新分组。引力场算法通过全局极值和多极值两种方式验证,并与其他算法进行比较,结果证实引力场算法具有很高的执行效率。⑵引力场算法已应用于基因表达聚类算法中。聚类算法所采用数据是离散形式,需要将引力场算法修改。首先,质量函数需采用两基因间距离。然后,在灰尘初始化阶段,采用待求距离的两基因编号组成的二元向量作为灰尘随机初始化值。最后,在移动算子部分,根据中心灰尘和周围灰尘相应二元素的基因编号大小关系确定周围灰尘移动方式,与连续值移动不同的是每次移动只将编号加1或减1。同时该基因对标记为使用过,因为使用过的基因对不会产生连续数据那样的非预期值,所以使用过的基因对不再计算。聚类算法通过层次聚类和非层次聚类两种聚类方式进行测试。将引力场算法结果与其他算法结果进行比较,结果证实引力场算法具有很高的执行效率。⑶引力场算法已应用于基因调控网络构建算法中。数学模型采用微分方程模型,取值范围采用奇异值分解方法确定。奇异值分解是将基因表达值矩阵在广义逆矩阵定义下分解为三个矩阵的乘积,并以此求出网络权值矩阵的特解,进一步可求出所有可能的权值矩阵的通解。引力场算法中,最小二乘方公式作为质量函数进行优化。在灰尘初始化阶段用权值矩阵作为灰尘进行随机赋值,赋值结果需通过通解验证,若未通过需重新随机赋值。在移动算子部分,需对周围灰尘和中心灰尘N×T个对应元素进行比较,若元素值不相等,则周围灰尘元素值向中心灰尘元素值移动。得到新灰尘值后将其进行通解验证,若不能通过则重新移动,若能通过进行下一步移动。网络构建算法通过模拟数据和真实数据验证。实验证实引力场算法在基因调控网络构建算法中具有极高的执行效率。⑷引力场算法已应用于基因表达数据的模拟算法中。通过无标度网络重连接构建算法模拟基因调控网络。通过计算得到候选父节点,以概率r选定该节点,若未选定以概率1-r选定该节点的祖先节点作为父节点,即强调中心控制节点的作用。用引力场算法模拟基因表达数据,通过奇异值分解获得表达值的解空间。灰尘采用矩阵形式,并随机初始化。在移动算子部分,周围灰尘的每个元素均向中心灰尘相应元素方向移动。用底数图验证重连接方法准确性,用三种网络构建工具包来验证引力场算法准确性。实验证实网络构建准确,引力场算法执行效率高。综上所述,本文提出的引力场算法是一种运算速度快,执行效率高的新型启发式搜索算法。此算法可应用于生物信息学的诸多领域,包括基因表达聚类,基因调控网络构建和基因数据模拟等,执行效果良好。也可将引力场算法应用于其他领域,发展空间很大。