论文部分内容阅读
TSP问题(Traveling Salesman Problem),即旅行商问题,是数学领域里面组合优化问题中被广泛研究的著名问题之一。TSP问题在学术研究和实际生产需求中十分重要,同时在物理学、生物学和计算机科学等领域有着广泛的应用。TSP问题是NP-完全问题中很有挑战性的一个问题。目前对于TSP问题的研究多是在单一物理机上使用顺序执行的启发式算法求得近似解,也有少量研究初步在Hadoop平台上基于MapReduce模型实现了一些诸如遗传算法和蚁群算法等新型启发式算法,但都仍然存在不能保证算法的质量、运行不稳定等问题。本论文探索通过并行MapReduce模型高效解决TSP问题。根据以上存在的问题,本文提出基于MapReduce模型的并行化迭代K-OPT算法:首先,本文提出一种基于MapReduce模型并行化求解最小生成树算法,并用于构造TSP初始化路径;该算法充分应用MapReduce模型中可以很容易对数据进行排序的特点对图中的所有边的权重进行排序,结合并行化的克鲁斯卡尔算法求得最小生成树;再将其作为Christofides算法输入求得一条可以用于迭代求解TSP问题算法的初始化路径,其中Christofides算法是目前TSP问题中最好的近似算法之一,其近似比为1.5-opt。其次,以初始路径为基础,提出一种基于MapReduce模型并行化的KOPT算法,算法利用MapReduce模型可以充分并行化运算的特点,将map函数用于路径的分发和图的读取,reduce函数用于问题的求解,从集群中多节点求得的不同迭代解中筛选出最优解,将其作为下一次迭代的输入。然后,通过对节点数规模较小的完全图进行基于MapReduce模型所有路径的穷举和对一些TSPLIB中的实例进行基于MapReduce模型的大规模随机路径生成以及并行化去冗余操作,然后进行一定的统计和特征分析,本文首次提出了截断广义Beta分布Truncated Generalized Beta distribution(TGB)作为TSP问题中最优路径的概率密度函数,并以此证明了迭代KOPT算法的近似比,在不断增加迭代次数的情况下,可获得接近优化的结果。最后,通过大量实例测试验证了本文所提算法的性能。