论文部分内容阅读
蚁群算法(Ant Colony Algorithm)是一种新型的求解复杂优化问题的模拟进化算法,它是由意大利学者M.Dorigo等人受到自然界中真实蚁群集体行为的启发而首先提出来的。大量实验结果表明,它在解决许多组合优化问题时都能表现出较好的求解能力,经过了许多国内外学者不断地对其进行扩展和改进,蚁群算法正经历着一个不断发展和完善的过程。大量模拟实验表明,对于中小规模的应用问题,蚁群算法一般能够在许可的时间范围内获得满意解,而对于大规模或超大规模的求解任务,简单的串行蚁群算法则力不从心。另外,简单串行蚁群算法在应用过程中一个比较突出的问题是它容易产生早熟现象,这主要是因为在搜索初期,众多蚂蚁个体的运动较为随机,所以蚂蚁很难在较短时间内从复杂无章的路径中找出一条较好的路径。但是如果一味加快收敛速度容易出现停滞现象,即搜索进行到一定程度后,所有个体所发现的解完全一致,不能对解空间进一步地搜索。这些缺点将严重地影响蚁群算法的应用。因此,人们利用蚁群算法固有的并行特性,将并行技术与传统的蚁群算法相结合,从而来提高蚁群算法的效率和减少蚁群算法早熟现象的发生。本文在分析蚁群算法的原理及性能的基础上,指出了影响并行蚁群算法性能的关键因素为:确定信息交流的对象、交流的内容和交流周期,给出了优化这三个因素的具体策略,在此基础上提出了自适应的并行蚁群算法。在确定信息交流对象方面,为了克服传统并行蚁群算法中处理机无规律地选择信息交流对象的缺点,我们提出了基于适应度排序、基于子种群的收敛系数等策略。在信息交流内容方面,我们提出了新的交流策略,使得处理机之间除了交流局部最优解之外,可以交流具有较高信息素的超顶点,还可以交流信息素矩阵,以利用子群体上信息素的正负反馈作用来改变子群体的进化环境。在确定信息交流周期方面,我们提出了根据解的多样性和收敛系数来自适应地调节信息交流周期的策略,以增强算法的搜索能力。这些不同的信息交流策略将形成不同的并行策略,从而得到不同的并行蚁群算法。本文将这些自适应的并行蚁群算法应用于频率分配问题、二次分配问题、旅行商问题;并采用MPI绑定C语言进行编程,对实验得到的数据进行了比较和分析,证明了我们所提出的自适应并行蚁群算法能够在解的多样性和收敛速度之间取得很好的平衡,具有较强的优化能力、更快的处理速度,适合于解决大规模的、复杂的优化问题。