遗传算法求解最大团问题研究

合集下载

实验六:遗传算法求解TSP问题实验2篇

实验六:遗传算法求解TSP问题实验2篇

实验六:遗传算法求解TSP问题实验2篇第一篇:遗传算法的原理与实现1. 引言旅行商问题(TSP问题)是一个典型的组合优化问题,它要求在给定一组城市和每对城市之间的距离后,找到一条路径,使得旅行商能够在所有城市中恰好访问一次并回到起点,并且总旅行距离最短。

遗传算法作为一种生物启发式算法,在解决TSP问题中具有一定的优势。

本实验将运用遗传算法求解TSP问题,以此来探讨和研究遗传算法在优化问题上的应用。

2. 遗传算法的基本原理遗传算法是模拟自然界生物进化过程的一种优化算法。

其基本原理可以概括为:选择、交叉和变异。

(1)选择:根据问题的目标函数,以适应度函数来评估个体的优劣程度,并按照适应度值进行选择,优秀的个体被保留下来用于下一代。

(2)交叉:从选出的个体中随机选择两个个体,进行基因的交换,以产生新的个体。

交叉算子的选择及实现方式会对算法效果产生很大的影响。

(3)变异:对新生成的个体进行基因的变异操作,以保证算法的搜索能够足够广泛、全面。

通过选择、交叉和变异操作,不断迭代生成新一代的个体,遗传算法能够逐步优化解,并最终找到问题的全局最优解。

3. 实验设计与实施(1)问题定义:给定一组城市和每对城市之间的距离数据,要求找到一条路径,访问所有城市一次并回到起点,使得旅行距离最短。

(2)数据集准备:选择适当规模的城市数据集,包括城市坐标和每对城市之间的距离,用于验证遗传算法的性能。

(3)遗传算法的实现:根据遗传算法的基本原理,设计相应的选择、交叉和变异操作,确定适应度函数的定义,以及选择和优化参数的设置。

(4)实验流程:a. 初始化种群:随机生成初始种群,每个个体表示一种解(路径)。

b. 计算适应度:根据适应度函数,计算每个个体的适应度值。

c. 选择操作:根据适应度值选择一定数量的个体,作为下一代的父代。

d. 交叉操作:对父代进行交叉操作,生成新的个体。

e. 变异操作:对新生成的个体进行变异操作,以增加搜索的多样性。

组合优化问题的高效求解算法研究

组合优化问题的高效求解算法研究

组合优化问题的高效求解算法研究组合优化问题是运筹学中的重要问题之一,它在实际生活中具有广泛的应用。

由于该问题具有N P难度,因此,设计高效的算法是非常需要的。

本文将围绕组合优化问题的高效求解算法展开讨论。

一、组合优化问题的概念及其常见模型组合优化问题的基本定义是,在一定规则和约束下,在给定的一定集合选取或排列一些元素,使得选择或排列后的值最大或最小。

通常,组合优化问题包含以下几个要素:1.可选元素集合;2.可行解的集合(满足约束条件的元素组合);3.目标函数(用来衡量解的优劣);4.优化目标(最大还是最小化目标函数)。

常见的组合优化问题可分为以下几种:1.最大割问题:在一个无向图中,将顶点分为两个集合,使得交界面上的边数最大。

2.旅行商问题:给定一系列城市和每两个城市之间的距离,求解访问每个城市一次的最短路径。

3.最小斯坦纳树问题:给定一个有向图和一个集合,求解一个树,使得这个树包含所给集合中的所有点,且树上的所有边的权值之和最小。

4.最大团问题:在一个无向图中,找一个包含最多顶点的完全子图。

二、组合优化问题的高效算法由于组合优化问题通常为N P难问题,因此,一些已知算法只能在特定条件下运作。

例如,猜测与复杂性理论推论表明,除非P = N P,所有固定规模的完全选择问题都要在指数时间内求解。

下面介绍几种常见的高效求解算法。

1.贪心算法贪心算法是一种直观且快速的求解组合优化问题的方法。

它采用贪心策略,在每一步选择最符合当前条件的解,并根据目标函数进行评价。

贪心算法的时间复杂度通常为O(n)或O(m log m),但并不保证一定得到最优解。

2.动态规划算法动态规划算法也是一种常见的组合优化问题求解方法。

它采用递推式,将大规模的问题分解成若干个子问题,并通过求解子问题的最优解来得到整体最优解。

动态规划算法的时间复杂度一般为O(n^2)或O(nm)。

3.分支定界算法分支定界算法是一种常见的高效求解组合优化问题的算法。

遗传算法求解TSP问题

遗传算法求解TSP问题

实验六遗传算法求解TSP问题一、实验目的熟悉和掌握遗传算法的原理、流程和编码策略,并利用遗传求解函数优化问题,理解求解TSP问题的流程并测试主要参数对结果的影响。

二、实验内容1、参考实验系统给出的遗传算法核心代码,用遗传算法求解TSP的优化问题,分析遗传算法求解不同规模TSP问题的算法性能。

2、对于同一个TSP问题,分析种群规模、交叉概率和变异概率对算法结果的影响。

3、增加1种变异策略和1种个体选择概率分配策略,比较求解同一TSP问题时不同变异策略及不同个体选择分配策略对算法结果的影响。

4、上交源代码。

三、遗传算法求解TSP问题的流程图四、遗传算法求解不同规模的TSP问题的算法性能(1)遗传算法执行方式说明:适应度值计算方法:当前路线的路径长度●个体选择概率分配方法:适应度比例方法●选择个体方法:轮盘赌选择●交叉类型:PMX交叉●变异类型: 两点互换变异(2)实验模拟结果:城市个数时间(ms)5 1692510 1663015 1883320 2259625 2415930 3028935 3523940 3860845 4003250 4375755 4774660 5814365 5994270 6436175 71417图1-1(3)分析由图1-1可知,遗传算法执行时间随着TSP问题规模的增大而增大,并且大致为线性增长。

五、不同参数下的计算结果对比(1)种群规模对算法结果的影响实验次数:10最大迭代步数:100交叉概率:0.85变异概率:0.15如表1-1或3-1-0-9-2-4-8-5-7-6,注意到这是一圈,顺时针或者逆时针都可以。

当种群规模为10,20时,并没有找到最优解。

(2)交叉概率对算法结果的影响实验次数:15种群规模:25最大迭代步数:100变异概率:0.15实验结果:在该情况下,交叉概率过低将使搜索陷入迟钝状态,得不到最优解。

(3)变异概率对算法结果的影响实验次数:10种群规模:25最大迭代步数:100交叉概率:0.85实验结果:又表1-3可知,当变异概率过大或过低都将导致无法得到最优解。

最大团问题MaxClique

最大团问题MaxClique

计算机算法设计与分析最大团问题研究报告目录1. MCP问题描述 (1)1.1 MCP问题基本概念 (1)1.2 MCP问题数学描述 (1)2. MCP问题应用背景 (2)3. 求解MCP问题的常用算法 (2)3.1 顺序贪婪启发式算法 (2)3.2 局部搜索启发式算法 (2)3.3 智能搜索启发式算法 (3)3.3.1 遗传算法 (3)3.3.2 模拟退火算法 (3)3.3.3 禁忌算法 (4)3.3.4 神经网络算法 (4)3.4 改进蚁群算法-AntMCP (4)3.5 其它启发式算法 (5)3.6 回溯法 (6)3.6.1 算法基本思想 (6)3.6.2 算法设计思想 (6)3.6.3 实例分析 (7)3.6.4 程序设计及测试 (8)3.7 分支限界法 (11)3.7.1 算法描述 (11)3.7.2 算法求解流程 (12)3.7.3 优先队列式分支限界法求解MCP问题 (12)3.7.4 实例分析 (13)3.7.5 程序设计及测试 (13)4. 回溯法与分支限界法比较 (18)最大团问题及其求解算法研究最大团问题(Maximum Clique Problem, MCP )是图论中一个经典的组合优化问题,也是一类NP 完全问题,在国际上已有广泛的研究,而国内对MCP 问题的研究则还处于起步阶段,因此,研究最大团问题具有较高的理论价值和现实意义。

最大团问题又称为最大独立集问题(Maximum Independent Set Problem ),在市场分析、方案选择、信号传输、计算机视觉、故障诊断等领域具有非常广泛的应用。

目前,求解MCP 问题的算法主要分为两类:确定性算法和启发式算法。

确定性算法有回溯法、分支限界法等,启发式算法蚁群算法、顺序贪婪算法、DLS-MC 算法和智能搜索算法等。

不管哪种算法,都要求在多项式时间内求得MCP 问题的最优解或近似解。

图分为有向图和无向图,本文主要研究确定性算法求解无向图最大团问题。

遗传算法

遗传算法

2
3 01000
0.22
0
4 10011
1.23
1
交叉
在遗传算法中起着核心的作用。是 个体之间的重新组合以产生新个体。
交叉前: 串1:a1 a2 a3 a4 a5 串2:b1 b2 b3 b4 b5 交叉后: 新串1: a1 a2 b3 b4 b5 新串2: b1 b2 a3 a4 a5
变异
某个字符串某一位的值偶然的(概率很小 的)随机的改变。是一种防止过度成熟而 丢失重要概念的保险策略。在遗传算法中 的作用是第二位的,但却必不可少。
第六章 遗传算法
6.1 什么是遗传算法 6.2 遗传算法的理论基础 6.3 示例及研究动态
6.1 概述
6.1.1 遗传算法的生物遗传学基础 6.1.2 遗传算法的基本操作 6.1.3 遗传算法的特点
6.1.1 遗传算法的生物遗传学基础
遗传算法是根据生物进化的模型提 出的一种优化算法。它的主要因素是: 遗传、变异、选择。
编号
1 2 3 4
适应度 位串(x) f(x) = x2
01101
169110005760100064
10011
361
占总数的 百分比 (%)
14.4 49.2 5.5 30.9
总和
1170
100.0
编号 位串 期望的复 实际得到的复制数 (x) 制数
1 01101
0.58
1
2 11000
1.97
6.1.3 遗传算法主要问题
编码; 适应度函数; 遗传算子,杂交+变异; 迭代次数; 变异率、杂交率。
主要问题
求子集问题:0-1背包,装船。
求子集问题:0-1背包, 装船问题,最大团。

(完整)用遗传算法求解TSP问题

(完整)用遗传算法求解TSP问题

用遗传算法求解TSP问题遗传算法(Genetic Algorithm——GA),是模拟达尔文的遗传选择和自然淘汰的生物进化过程的计算模型,它是由美国Michigan大学的J。

Holland教授于1975年首先提出的。

J.Holland 教授和它的研究小组围绕遗传算法进行研究的宗旨有两个:抽取和解释自然系统的自适应过程以及设计具有自然系统机理的人工系统。

遗传算法的大致过程是这样的:将每个可能的解看作是群体中的一个个体或染色体,并将每个个体编码成字符串的形式,根据预定的目标函数对每个个体进行评价,即给出一个适应度值。

开始时,总是随机的产生一些个体,根据这些个体的适应度,利用遗传算子-—选择(Selection)、交叉(Crossover)、变异(Mutation)对它们重新组合,得到一群新的个体.这一群新的个体由于继承了上一代的一些优良特性,明显优于上一代,以逐步向着更优解的方向进化.遗传算法主要的特点在于:简单、通用、鲁棒性强。

经过二十多年的发展,遗传算法已经在旅行商问题、生产调度、函数优化、机器学习等领域得到成功的应用。

遗传算法是一类可用于复杂系统优化的具有鲁棒性的搜索算法,与传统的优化算法相比,主要有以下特点:1、遗传算法以决策变量的编码作为运算对象.传统的优化算法往往直接决策变量的实际植本身,而遗传算法处理决策变量的某种编码形式,使得我们可以借鉴生物学中的染色体和基因的概念,可以模仿自然界生物的遗传和进化机理,也使得我们能够方便的应用遗传操作算子.2、遗传算法直接以适应度作为搜索信息,无需导数等其它辅助信息。

3、遗传算法使用多个点的搜索信息,具有隐含并行性。

4、遗传算法使用概率搜索技术,而非确定性规则。

遗传算法是基于生物学的,理解或编程都不太难。

下面是遗传算法的一般算法步骤:1、创建一个随机的初始状态初始种群是从解中随机选择出来的,将这些解比喻为染色体或基因,该种群被称为第一代,这和符号人工智能系统的情况不一样;在那里,问题的初始状态已经给定了。

【智能算法】超详细的遗传算法(GeneticAlgorithm)解析和TSP求解代码详解

1) 在喜马拉雅山脉的地图上找到相应的位置坐标,算出海拔高度。(相当于通过自变量求得适应函数的值)然后判读该不该射杀该袋鼠。 2) 可以知道染色体交叉和变异后袋鼠新的位置坐标。
回到3.1中提的求一元函数最大值的问题。在上面我们把极大值比喻为山峰,那么,袋鼠的位置坐标可以比喻为区间[-1, 2]的某一个x坐标 (有了x坐标,再通过函数表达式可以算出函数值 <==> 得到了袋鼠染色体编码,解码得到位置坐标,在喜马拉雅山脉地图查询位置坐标算 出海拔高度)。这个x坐标是一个实数,现在,说白了就是怎么对这个x坐标进行编码。下面我们以二进制编码为例讲解,不过这种情况下以 二进制编码比较复杂就是了。(如果以浮点数编码,其实就很简洁了,就一浮点数而已。)
就像0和1两种碱基,然后将他们串成一条链形成染色体。一个位能表示出2种 状态的信息量,因此足够长的二进制染色体便能表示所有的特征。这便是二进制编码。如下:
1110001010111
它由二进制符号0和1所组成的二值符号集。它有以下一些优点:
image 当指针在这个转盘上转动,停止下来时指向的个体就是天选之人啦。可以看出,适应性越高的个体被选中的概率就越大。
遗传算法的交叉操作,是指对两个相互配对的染色体按某种方式相互交换其部分基因,从而形成两个新的个体。 适用于二进制编码个体或浮点数编码个体的交叉算子: 1. 单点交叉(One-point Crossover):指在个体编码串中只随机设置一个交叉点,然后再该点相互交换两个配对个体的部分染色体。 2. 两点交叉与多点交叉:
(1) 两点交叉(Two-point Crossover):在个体编码串中随机设置了两个交叉点,然后再进行部分基因交换。 (2) 多点交叉(Multi-point Crossover) 3. 均匀交叉(也称一致交叉,Uniform Crossover):两个配对个体的每个基因座上的基因都以相同的交叉概率进行交换,从而形成两 个新个体。 4. 算术交叉(Arithmetic Crossover):由两个个体的线性组合而产生出两个新的个体。该操作对象一般是由浮点数编码表示的个体。 咳咳,根据国际惯例。还是抓一个最简单的二进制单点交叉为例来给大家讲解讲解。 二进制编码的染色体交叉过程非常类似高中生物中所讲的同源染色体的联会过程――随机把其中几个位于同一位置的编码进行交换,产生新 的个体。

基于不同的 DNA 计算模型解决最大团问题

基于不同的 DNA 计算模型解决最大团问题
张喆
【期刊名称】《电子技术与软件工程》
【年(卷),期】2015(000)004
【摘要】本文介绍了最大团的概念,最大团中待解决的问题,国内外学者运用DNA 计算解决最大团的研究成果。

介绍了前人运用质粒、DAE 块、二进制、粘贴模型、K—臂 DNA 分子等方式进行 DNA 计算操作的原理,提出了新的可行的解决方案,并对全文进行了概括与总结,提出了待解决的问题。

【总页数】1页(P185-185)
【作者】张喆
【作者单位】安徽理工大学,安徽省淮南市232001
【正文语种】中文
【中图分类】TP301.6
【相关文献】
1.应用DNA计算解决最大团问题 [J], 李涛
2.图的最大团与最大独立集粘贴DNA计算模型 [J], 范月科;强小利;许进
3.最大团问题的三链DNA计算模型 [J], 陈芳;殷志祥
4.最大团问题的三链DNA计算模型 [J], 陈芳;殷志祥;;
5.最大团问题的可编程的DNA分子系统计算模型 [J], 严洋洋; 殷志祥
因版权原因,仅展示原文概要,查看原文内容请购买。

3最大团问题

清华大学出版社
算法设计与分析
最大团问题
1. 问题描述
给定无向图G=(V,E)。如果UV,且对任意u,vU有(u,v)E, 则称U是G的完全子图。G的完全子图U是G的团当且仅当U不包含在G的 更大的完全子图中。G的最大团是指G中所含顶点数最多的团。 下图G中,子集{1,2}是G的大小为2的完全子图。这个完全子图 不是团,因为它被G的更大的完全子图{1,2,5}包含。{1,2,5}是 G的最大团。{1,4,5}和{2,3,5}也是G的最大团。
清华大学出版社
算法设计与分析
1
2
3
4
5
图1 无向图G
图2 无向图G的补图G'
清华大学出版社
算法设计与分析
清华大学出版社 算法设计与分析 while(i != n+1){//非叶结点 //检查顶点i 与当前团中其他顶点之间是否有边相连 bool OK = ture ; bbnode *B = E ; for ( int j = i-1; j > 0; B = B->parent, j-- ) if ( B-> Lchild && a[i][j] = = 0) { 代 OK = false; 码 break; } if(OK) { // 左儿子结点为可行结点 if ( cn + 1 > bestn ) bestn = cn+1; AddLiveNode( H, cn+1, cn+n-i+1, i+1, E, true );} if (cn + n – i >= bestn ) //右子树可能含最优解 AddLiveNode( H, cn, cn+n-i, i+1, E, false );}

启发式算法求解最大团问题研究

启发式算法求解最大团问题研究
周旭东;王丽爱;陈崚
【期刊名称】《计算机工程与设计》
【年(卷),期】2007(28)18
【摘要】最大团问题(maximum clique problem,MCP)是图论中的一个经典组合优化问题,也是一类NP完全问题,在国际上已有广泛地研究,国内研究刚刚起步.给出了最大团问题的基本定义和其数学描述;阐述了该问题的研究进展;分析和研究了求解该问题的各种典型启发式算法,包括算法的介绍、算法求解最大团问题的基本思路、特点及性能;最后介绍了测试这些启发式算法性能的测试基准图.
【总页数】4页(P4329-4332)
【作者】周旭东;王丽爱;陈崚
【作者单位】扬州大学,信息工程学院计算机中心,江苏,扬州,225009;扬州大学,信息工程学院计算机系,江苏,扬州,225009;扬州大学,信息工程学院计算机中心,江苏,扬州,225009;扬州大学,信息工程学院计算机系,江苏,扬州,225009;南京大学,软件新技术国家重点实验室,江苏,南京,210093
【正文语种】中文
【中图分类】TP18
【相关文献】
1.智能搜索算法求解最大团问题研究 [J], 周旭东;王丽爱;陈崚
2.生物启发式算法求解多模态优化问题研究 [J], 钱乾;芮坤坤;程美英
3.遗传算法求解最大团问题研究 [J], 胡能发;唐为萍
4.启发式算法求解背包问题研究 [J], 黄林峰
5.基于局部有限搜索的无向图近似最大团快速求解算法 [J], 钟茂生; 江超; 陶兰; 何雄; 罗远胜
因版权原因,仅展示原文概要,查看原文内容请购买。

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

摘要
最 大 团 问 题 是 NP难 解 的 , 遗 传 算 法 求 解 的关 键 是 如 何 设 计 有 效 的 评 估 函 数 . 先 从 理 论 上 分 用 首
析 编 码 规 则 及 适 应 函数 对 个 体 进 化 的 影 响 , 出个 体 基 因适 应 函 数 和 个 体 适 应 函数 多 重 评 估 方 法 , 设 计 求 提 并 解算法. 数值 实验 表 明 , 法 具 有 较 好 的 通 用 性 和 较 高 的 性 能 . 算
和 Ros首次 提 出求 解最 大 团问题 的确定 性算 法_ , 随着 问题 复 杂 度 的提 高 , s 2但 ] 确定 性算 法 的缺 点也 越
来 越 明显 , 主要表 现在 算法 所花 费 的运 行 时间过 长 , 多 学 者 开始 采 用启 发 式算 法 求解 最 大 团 问题 , 许 提
第3 3卷 第 2期
21 0 1年 6月
湖 北 大 学学 报 ( 自然 科 学 版 )
J u n l fHu e iest ( t rlS in e o r a o b iUnv riy Nau a ce c )
Vo. No 2 1 33 .
J n ,2 1 u. 01
种 新 的求解 方法 , 该方 法首 先将 最大 团 问题 转换 为求解 其补 图 的最大独 立集 问题 , 然后 采用 遗传 算法 对 其补 图编码 、 化 , 出其 补 图的最 大独立 集 , 而 得到 原 问题 的最优 解 . 值 实验 结 果 表 明 , 方法 能 演 求 从 数 该
有效 地处 理复 杂性很 高 的最大 团 问题 , 且所得 到 的解全 部为精 确解 . 而
( ) E “, .
由以上定 义 可知 , L 是无 向 图 G 的最 大 团 , U是无 向图 G 的最 大 独立集 , 若 , 则 反之 亦然 . 图 1中 如
收 稿 日期 : 0 0—0 —1 21 1 2 基 金 项 目 : 东 省 科 技 计 划 项 目( 0 8 0 0 0 0 8 资 助 广 2 0 B 87 1 1)


定义 1 4 2 称 补 图 G 的某个 体第 i 基 因 的适 应值 为 f ( k i) 其值 为与 i 有相 邻边且 z 取 . . 个 e G ] , r - 具 1 .

定义 1 4 3 称 图 G 的个体 G . . 的适 应值 为 厂( k , 厂 G )一 G )则 ( k
作 者 简 介 : 能发 (9 2一 , , 士 , 教 授 , — i h n n f@ tm.o 胡 16 ) 男 硕 副 E mal u e ga o cm :
第 2 期
胡 能 发 等 : 传 算 法求 解 最 大 团 问题 研 究 遗
( ) () 补 图。 b为 a的
团 圆 团 团
关 键 词 最 大 团 ; 大 独立 集 ; 传 算 法 ; 应 函数 ; 接 表 最 遗 适 邻
中图 分 类 号 T 23 P 7 文献标志码 A
最 大 团问题是 现 实世界 中 的一类 真 实 问题 , 经典 的组 合优 化 问题 之 一 , 于 NP完 全 问题_ , 是 属 l 在 J 实 践 中有非 常广泛 的应 用 , 多不 同领 域 的问题都 可转 化为该 问题 来解 决 , 许 如编码 理论 、 障诊 断 、 算 故 计 机 视觉 、 式 匹配 、 模 信号 传输 、 人工 智能 、 聚类 分析 、 移动 计算 、 息恢 复 、 物信 息学 等 . 9 7年 , rr 信 生 15 Haav
文 章 编 号 :0 0— 3 5 2 1 ) 2— 2 6 0 1 0 2 7 (0 1 0 0 5 — 4
遗传 算 法 求解 最 大 团 问题 研 究
胡 能发 唐 为 萍 ,
(. 山 师范 学 院数 学 与信 息 技 术 系 , 东 潮 州 5 14 ;. 山 师 范 学 院 生物 系 , 东 潮 州 5 14 ) 1韩 广 2012韩 广 2 0 1
由定义 , 显然 有 : ( =F ( + F ( k . . G )= ,G ) 厂 : :G )
若 。 为最 大独 立集精 确解 , 则有 F ( 。G )一 0 F ( ) , 值越 大 , 明独立 集 中顶点存 在公 共边 越多 , 说
即所 对应 的独立 集越 不精 确. 之 , 值越 小 , 对应 的个 体越好 . 果 F ( 达 到最小 值 0 则说 明 , 反 其 所 如 G ) ,
出 了各 种各 样 的启发 式算 法 , 且取得 了很 令人 满 意 的效 果 , 并 如模 拟 退 火 、 禁忌 搜 索 、 人工 智 能 、 蚁群 算
法 等L ] 但这 些方 法往往 不 能得到 问题 的精确 解 , 别是 稠 密 图 的求 解 , 复杂 性 很 高. 文 中提 出一 3. 特 其 本
体 的 适应值为 厂 ) : ( )为了表述方便, 下论述中 i ( 一 [ . ] 在以 用 表示顶点V ,一 1 , i , …, 2 .
定 .称 第条色为 =zz 中 一 义4 图的尼染体G= { . z…, 其
值 不 同的顶 点数 , . G E] 即 ( i)一
28 5
湖北大学学报( 自然 科 学 版 )
第 3 3卷
个 体 的适应 值 _ G ) 厂 越小 , ( 所对 应 的个体 越接 近最优 解 , _ G )一 0 , 当厂 k ( 时 所求个 体 为精确 解. 同时存 但 在 一个 问题 , ( f G )一 0仅 仅说 明 了所 求解 是精 确解 的充分 条件 , 一般 情况 下 , 这个 条件 很 难成 立 , 因此 演 化过 程必 须综 合考 虑 f c )F。G ) F ( 等 函数 的影 响. ( 、 ( 、 :G ) 定 理 1 若 图 G一 ( , )的个 体 G 中与 V 对应 的顶 点 的基 因值 z 一 1 与 对 应 的顶点 的基 因 E ,
定义 1 1 2 称无 向图 G 的完 全 子 图 【 是 G 的一个 团 , . . , 当且 仅 当对 任 意 给定 的图 G 的完 全 子 图
W , U( W . 有 z =
定义 1 1 3 称无 向图 G 的最 大 团为 G 中所 含顶点 数最 多 的团. .. 定 义 1 1 4 称 【 是 无 向 图 G 的空子 图 , .. , 当且 仅 当对 于 任 意给 定 的无 向图 G一 ( E) 若 V, ,
如 图 2所 示 .
1 4 适应 函数 .
对 给定 图的补 图进行 编码 的 目的是 为 了方便 适应 函数表 示最 大 团的精 确解 . 应 函数 适
的主要 功能 是用来 判 断群体 中所 有个 体 质 量 的好 坏 , 描述 了群 体 的状态 . 应 函数 的设 计 以邻 接 表 它 适 ( 2 为依据 , 图 ) 如果 对于 邻接 表 中的表头 结 点 i其 对应 的表结 点 中 的所 有其 他结 点 的 z值 与 之 不 同, , 则 说 明该结点 具有 较好 的适 应度 , 可将 表头 结点 与表结 点不 同 z值 的数量记 录 下来 , 为评 价个 体 中基 因 作 ( 点 i适 应 度 的依 据 , 所 有 的基 因 i 结 ) 将 适应 度 相加 , 即可得 到整个 个 体 的适 应值 . 这里 对 整个 个 体 在 采用 了双重 评价 , 了评价个 体 的适 应度 以外 , 除 还对 个体 中 的每个 基 因进行 了评 价 , 这样 做 的 目的是 为 了加 快演化 的速 度 , 因为选 择 变异算 子 时 , 以优先 选择 变异那 些适 应 度较 差 的基 因. 可 设 表示 由图 G 所 生成 的第 k 染色体 ( 0和 1组成的序列 )记 的第 i 条 由 , 个基 因 的适 应值 为 ( E] , i) 则第 k条染 色
为 独立 集 , 而且这个 结 果是 精确 的. 但此 时并 不 能判 断 。 最 大独立 集 , 只能作 为 是 最 大独立 集 为 它 的必要 条件 . 但从 , G )的取值 发 现 , 果 厂( k (k 如 G )一 0 则 有 F ( , G )一 F ( : G )一 0 因此 , 般情 况下 , , 一
图 1 无 向 图 G 和 G 的 补 图 图 2 图 1 b 的 存 储 结 构 ()
1 2 遗传算 法 求最大 团 问题 的 基本 思 想 遗 传算 法 是 一 种 模仿 生 物 自然 进 化 的概 率 算 法 , 通 过选 . 它 择、 杂交 和变异 等算 子 , 优胜 劣 汰的原 则而 生成 下一代 个体 . 按 遗传 算法 具有 高效 的特 点 , 其关 键 在 于其 遗 传算 子 的设 计. 一 , 其 通过不 同母 体 的杂交 , 能产 生不 同 于母体 的后代 , 后代保 留了母体 的 部分 优 良 其 特征 . 其二 , 以一定 的概率 对个 体 的某些基 因进 行变 异 , 加 了群体 的多样 性 , 增 从而使 算 法不 易 陷入局 部 最优 解. 于最 大 团问题 , 对 首先要 确定 个体 的编 码 , 后对 群体 中所 有个体 进行 适应 度评估 及 遗 传操 作 , 然 从 而最终 得 到优化后 的个 体 , 即为所 求得 的最 大 团. 1 3 编码 设计 对 给定 的无 向 图 G一( E) 先求 其 补 图 G一( E ) 然 后 对 G 的顶 点 集 V 的所有 顶 . , , , , 点按 自然数 顺序 依次 编号 , 为 G所对 应邻 接表 的数 组 的下标 . 作 例如 下标 为 i 的数组 表 示 编号 为 i的结 点, 邻接表 中表 头结 点 由数据 域和链 域构 成 , 中数 据域 的值为 1或 0 1 示对应 顶 点在最 大 团中 , 其 ,表 0 表示 不在最 大 团 中. 链域则 指 向第一 个 与 i 邻 的结点 ; 结 点 由邻 接 点 域 和链 域 构成 , 中邻 接点 域 相 表 其 存放与 i 相邻 的结 点所对 应 的数组 的下 标 , 域则 指 向下一个 与 i 邻 的结点 . 链 相 例如 图 1 b 的存储 结 构 ()
相关文档
最新文档