模拟退火算法思想在求解四色问题中的应用

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2018年24期

应用科技

科技创新与应用

Technology Innovation and Application

模拟退火算法思想在求解四色问题中的应用*

黄仁帅

(百色学院,广西百色533000)

1概述

四色问题又称四色猜想,是世界近代三大数学难题之一。1852年,G.Frederick 在从事地图着色工作时发现的一个现象,即“每幅地图都可以用四种颜色着色,使得有

共同边界的国家被染上不同的颜色”

。四色问题从诞生开始,就因其简单的外表而神秘的内涵,引起无数数学家的研究兴趣。但直至1976年,才由Appel 与Haken 借助计算机给出一个并不十分完善的机器证明[1],期间整整经历了一个多世纪。时至今日,虽然四色问题的正确性已经得到数学界公认,但对其非计算机证明的研究仍不得其解。而正是由于数学家对该问题非计算机证明的不懈探索,发展出了浩瀚的图的染色体理论,极大的促进了图论的发展。

模拟退火算法(Simulated Annea-ling ,SA )的思想来

源于固体退火原理,于1953年由N.Metropolis 等人最先提出。经过半个多世纪的研究改进,目前已在生产调度、

机器学习、信号处理等工程领域中得到了广泛应用。近年来,众多学者围绕四色图问题的数值计算方法展开了研究,得到了许多不同的计算方法[2-4]

。而在众多算法中,模拟退火算法是求解四色图问题的有效算法之一。2算法设计

基于模拟退火算法的思想,针对四色图问题的特殊

性,设计求解四色图问题的快速算法。2.1地图模型的构建以10个连续地区着色问题为例,其简化地图如图1,

每个顶点表示一个地区,每根连线代表这两个地区相邻。

该地图模型还用下述邻接矩阵V 表示:

其中,v ij =1表示第i 个地区和第j 个地区相邻;反之,则表示不相邻。由于每个地区都仅限于4种颜色之一,故可用4个摘

要:四色问题又称四色猜想,是世界近代三大数学难题之一。对四色问题的研究,促进了一系列数学新思维的产生,为推动数

学的发展起到了重要的作用。模拟退火算法是求解复杂工程问题的重要算法之一。文章基于模拟退火算法的思想,结合四色问题的特

殊性,给出了一种求解四色问题的快速算法。

关键词:模拟退火;四色问题;智能算法

中图分类号:O29

文献标志码:A

文章编号:2095-2945(2018)24-0164-02

Abstract :The four-color problem,also known as the four-color conjecture,is one of the three modern mathematical problems in

the world.The research on the four-color problem promotes a series of new mathematical thinking and plays an important role in promoting the development of mathematics.Simulated annealing is one of the most important algorithms for solving complex engineer 鄄

ing problems.Based on the idea of simulated annealing algorithm and the particularity of the four-color problem,a fast algorithm for solving the four-color problem is presented in this paper.

Keywords :simulated annealing;four-color problem;intelligent algorithm

*基金项目:广西高校中青年教师基础能力提升项目(编号:KY2016LX354)

作者简介:黄仁帅(1987-),男,广西贺州人,百色学院教师,

研究方向:应用数学

。图1简化地图

01110000001010100000110111100010100100000110001001V 00110011000010110100000001101100000001010000100110

164--

2018年24期

应用科技

科技创新与应用

Technology Innovation and Application

十进制数字分别表示4种颜色,如表1。这样一来,对于n 个连续地区的着色问题,它的任意一个着色方案,都可用一个字符串表示:

C={c 1,c 2,…,c n },其中,c i ∈{1,2,3,4},i=1,2,…,n 。为判断该着色方案C 是否可行,构造评价函数:

其中,关于矩阵D=(d ij )的元素,有:

即当i 地区和j 地区的颜色不同时,d ij =0;否则d ij =1。显然,若着色方案C 可行,即任意两个相邻区域的颜色都不同,则F (D ,V )=0;否则,F (D ,V )>0。

2.2模拟退火算法下面,基于模拟退火算法的思想,设计求解四色图问题的快速算法,步骤如下:

步骤1.导入数据,初始化相关参数。随机产生初始解C 0={c 1,c 2,…,c n },计算初始解的评价函数值F 0,设置初始温度T 0,终止温度T ,降温速率α∈(0,1);

步骤2.设置内循环迭代次数N=0,最大迭代次数N max ;

步骤3.随机交换当前解C 0与{1,2,3,4}中的任意两个位置的元素产生新解C 1,计算C 1的评价函数值F 1;

步骤4.令ΔF=F 1-F 0,若ΔF<0,则C 0:=C 1,F 0:=F 1,否则,按Metropolis 准则,以e -(ΔF/T 0)

的概率接受新解;步骤5.内循环次数N=N+1,若N ⩽N max ,则转步骤3;步骤6.若F 0=0,即得可行方案,则终止算法,否则,T 0:=αT 0;

步骤7.若T 0>T ,则转步骤2,否则,算法结束,没有得可行解,转到步骤1重新开始。

其中,初始温度T 0,终止温度T ,降温速率α∈(0,1)及

内循环最大迭代次数N max 等参数的设定,与着色问题的规模大小有关。

3实验结果

以图1中10个连续地区地图的邻接矩阵V 为基础,构造邻接矩阵序列:

在MATLAB 下进行编程实验,计算邻接矩阵为V k 时

获得100个可行着色方案的总时间(s ),获得每个可行着

色方案的平均时间(s ),运行结果如下(表2)。

当问题的规模n=160时,计算获得100个可行着色方案需花费大量时间,最后只统计获得一个可行方案的时间。另外,由于算法具有一定的随机性,故上述时间只是一个参考值。

4结束语

本文基于模拟退火算法的思想,设计了一种求解四色图问题新的快速算法,实验表明新算法是可行有效的.同时,随着问题规模的增大,每次计算所花费的时间也在不断的增加,希望在以后的研究中能加以改进。参考文献院

[1]AppelK ,Haken W.The Solution of the Four-color-map Prob -lem[J].Scientific American ,1997,10:108-121.

[2]宋宇航.基于混沌神经网络的四色图解法研究与优化[D].哈尔滨

理工大学,2011.

[3]火善栋.用遗传算法实现四色图问题[J].计算机时代,2015(3):56-57.

[4]王宁.应用模拟退火算法求解四色图问题[J].电脑迷,2016(7):

178.

表1

n

n

ij ij

i 1j 1F D,V d v i j ij i j

1,c c d 0,c c

k 101k 0k 1V 0V 0V V,V ,V ,0V 0V

表2

165--

相关文档
最新文档