搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
进化算法时间复杂度分析的理论方法与工具
0.00     定价 ¥ 69.00
图书来源: 浙江图书馆(由浙江新华配书)
此书还可采购25本,持证读者免费借回家
  • 配送范围:
    浙江省内
  • ISBN:
    9787030751522
  • 作      者:
    编者:黄翰//张宇山//郝志峰|责编:郭勇斌//邓新平//方昊圆
  • 出 版 社 :
    科学出版社
  • 出版日期:
    2023-04-01
收藏
内容介绍
本书主要围绕不同的进化算法时间复杂度分析方法展开介绍,包括基于Markov过程的理论、分层估计理论、漂移分析理论、关系模型理论、平均增益理论、带噪声的进化算法的时间复杂度分析理论,并且提供了配套的软件工具辅助读者开展实践。本书对进化算法的理论研究进行了分析、归纳和总结,写作内容严谨易懂,逻辑清晰严密。 本书适合计算机等专业的高校师生及研究人员阅读,也可供对进化算法感兴趣的读者阅读参考。
展开
精彩书摘

第1章进化算法简介
 本书主要讨论进化算法(evolutionary algorithms,EAs)的时间复杂度分析方法。因此,本章将简述进化算法求解的问题类型、进化算法的概念,并介绍几类经典算法,让读者对进化算法有初步认识。由于进化算法所需的问题信息量少、求解速度快且鲁棒性高,所以它常被用于求解黑盒、大规模、带噪声等具有复杂特性的最优化问题。本章先在1.1节简述最优化问题,再在1.2节概述进化算法,接着在1.3节介绍部分经典的进化算法及其伪代码,最后在1.4节进行总结。
  1.1最优化问题
  最优化问题(optimization problem)是科学研究和实际生活中常常需要被解决的问题,包括生产调度、人工智能、物流运输、数据挖掘、经济管理、生物技术、网络通信等。一个最优化问题可以写成最小化问题或最大化问题。以最小化问题为例,其数学模型如式(1-1)所示
  (1-1)
  其中,X=(Xl, ,xn)表示一组决策变量。D是问题的解空间,X是D中的一个可行解。最小化问题是要在解空间中找到可行解X,使得目标函数值最小;相反地,最大化问题则是要在解空间中找到可行解X,使得目标函数值最大。
  一般情况下,根据决策变量而的取值类型,可以将最优化问题分为连续优化问题和离散优化问题两个类别。若最优化问题的决策变量是连续变量,则该问题为连续优化问题;若最优化问题的决策变量均为离散变量,则该问题称为离散优化问题。在实际应用问题中,变量的类型是混合的,即有一部分是连续变量,有一部分是离散变量,因此该最优化问题同时具备连续优化问题和离散优化问题的特性。在连续优化问题中,各个决策变量可能是独立的,也可能是互相关联和互相影响的。由于决策变量是连续值,无法通过穷举每个变量的取值求得最优解。一般情况下,需要借助最优化算法对问题进行求解。离散优化问题主要分为两个类别:①组合优化,其目标是从一个有限集合中找出使得目标函数最优的解;②整数规划,决策变量为整数。最优化问题的求解难度往往随着问题规模增大而大幅增加,使得最优化算法的计算时间呈指数增长,达到上千年甚至上万年(以每秒计算万亿次进行估计)。为了能够在可接受的计算时间内去寻找最优化问题的较优解,学者们基于“优胜劣汰、适者生存”的自然法则设计了一类求解算法,获得了较为满意的结果,这类求解算法称之为进化算法W。
  1.2进化算法的概述
  进化算法通常采用启发式的随机搜索方法在全局决策空间中进行局部搜索。与传统的最优化算法不同的是,进化算法在求解的过程中不需要严格的数学推导,能够在可接受的时间范围内找到全局最优解或者可行解。进化算法具有自适应性和通用性,主要是因为这类算法不依赖问题的特征。进化算法主要以群体为单位进行搜索,利用搜索信息减少了多余或重复的计算代价,将算力投入到更可能存在最优解的区域中,非常适合用于求解大规模问题以及NP难问题。进化算法的鲁棒性极强,具有良好的容错性,能够在不同的初始化环境下搜索和寻找问题的最优解。
  进化算法是一种模拟生物进化和群体智能来解决各类最优化问题的智能算法,通过对群体的交叉、变异等操作产生新的个体,并通过评估选取更优的后代个体。进化算法通过多次迭代来得到最优解,而不仅仅依赖于问题的具体形式。随着工程实际问题变得越来越复杂,传统的精确算法往往具有指数级别的计算复杂性。为了在求解时间和求解精度上取得平衡,学者们提出不同的进化算法,如遗传算法(genetic algorithm,GA)、分布估计算法(estimation of distribution algorithm,EDA)、粒子群优化(particle swarm optimization,PSO)算法、进化规划(evolutionary programming,EP)算法、蚁群优化(ant colony optimization,ACO)算法、Memetic算法、差分进化(differential evolution,DE)算法等。随着进化算法在求解各类复杂最优化问题中发挥日益显著的作用,对进化算法的理论分析也显得愈发重要。进化算法的理论基础主要包括数学基础、生物基础和群体智能基础等,其中数学基础包括Markov过程、统计学习过程、随机过程、稳定性和收敛性等;生物基础包括优胜劣汰、适者生存、自然选择、生物进化、遗传规律等;群体智能基础包括个体竞争机制、群体优化机制、群体协作机制、个体优化机制等。
  1.3常用进化算法
  我们对进化算法的发展历程进行了总结,如图1-1所示。可以看到,进化算法日渐多样化,对每一种进化算法都进行介绍较为困难。因此,我们仅介绍其中较为常用的6种进化算法,包括遗传算法分布估计算法W、粒子群优化算法W、蚁群优化算法、Memetic算法和差分进化算法。本节主要介绍这6种进化算法的原理、伪代码及其适用求解的问题。
  1.3.1遗传算法
  遗传算法模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程,通过模拟自然优胜劣汰的现象,釆用染色体来表示问题的解,然后通过交叉、变异、选择等操作算子来生成下一代种群。通常,每次生成的新种群较上一代种群更优秀,并通过不断地进化,解的质量越来越好。遗传算法的伪代码如算法1-1所示。
  由于遗传算法的整体搜索策略和优化搜索方式在计算时不依赖于梯度信息或其他辅助知识,只需要计算影响搜索方向的目标函数和相应的适应度(又称适应值)函数,所以遗传算法提供了一种求解复杂系统问题的通用框架。由于它通过目标函数计算适应度,不需要附加信息,所以遗传算法对问题依赖性小,能广泛应用于各种领域,包括函数优化、组合优化、生产调度问题、自动控制、图像处理(如图像恢复、图像边缘特征提取等)、遗传编程、机器学习。
  1.3.2分布估计算法
  分布估计算法是一种基于统计学习理论的群体进化算法,通过建立概率模型描述候选解在搜索空间的分布信息,采用统计学习手段从群体宏观的角度建立一个描述解分布的概率模型,然后对概率模型随机采样产生新的种群,如此反复实现种群的进化。因此,分布估计算法属于一种基于统计学原理的随机优化算法。遗传算法采用基于基因的微观层面的模拟进化方式,而分布估计算法采用基于搜索空间的宏观层面的进化方法,具备更强的全局搜索能力和更快的收敛速率。分布估计算法的伪代码如算法1-2所示。
  分布估计算法的重要组成部分是概率模型,针对不同类型的优化问题需要设计不同的概率模型来描述解空间的分布。一个合适的概率模型可以很好地描述变量之间的相互关系。因此,分布估计算法在解决非线性和变量耦合的优化问题时,能够利用问题的结构信息产生更好的个体。分布估计算法通常用于求解函数优化、组合优化、生物信息学、多目标优化、机器学习等应用问题。分布估计算法可以有效地解决大规模问题,降低时间复杂度。与其他进化算法相比,分布估计算法基于群体的宏观进化方式使其可以利用解空间的全局信息和进化过程中的历史信息,具有更强的全局搜索能力和更快的收敛速率。分布估计算法简单、易于实现,
  1.3常用进化算法
  尤其是其对解空间的分布进行估计并采样产生新个体的方法,更容易使其作为一种手段和框架与其他算法混合,增强寻优性能。
  1.3.3粒子群优化算法
  粒子群优化算法是通过模拟鸟群觅食行为而发展起来的一种基于群体协作的随机搜索算法。粒子群优化算法通过设计一种无质量的粒子来模拟鸟群中的鸟,粒子仅具有速度和位置两个属性:速度代表移动的快慢,位置代表移动的方向。每个粒子在搜索空间中单独地搜寻最优解并将其记为当前个体极值,个体极值与整个粒子群里的其他粒子共享,令最优的个体极值作为整个粒子群的当前全局最优解,粒子群中的所有粒子根据自己找到的当前个体极值和整个粒子群共享的当前全局最优解来调整自己的速度和位置。粒子群优化算法的伪代码如算法1-3所示。
  粒子群优化算法不依赖于问题信息,直接以目标函数值作为搜索信息,具有记忆功能,保留局部个体和全局种群的最优信息。粒子群优化算法通过协同搜索,同时利用个体局部信息与群体全局信息,原理简单,容易实现,计算效率高。粒子群优化算法没有交叉变异运算,依靠粒子速度完成搜索且在迭代进化中只有最优的粒子把信息传递给其他粒子,搜索速度快。粒子群优化算法需要调整的参数较少,结构简单,易于工程实现;采用实数编码,直接由问题的解决定,问题解的变量直接作为粒子的维度。但是,粒子群优化算法缺乏速度的动态调节,容易陷入局部最优,导致收敛精度低和不易收敛。
  1.3.4蚁群优化算法
  蚁群优化算法是一种用来寻找优化路径的概率型算法,其灵感来源于蚂蚁在寻找食物过程中发现路径的行为。用蚂蚁的行走路径表示待优化问题的可行解,整个蚂蚁群体的所有路径构成待优化问题的解空间。蚂蚁会在其经过的路径上释放一种名为信息素的物质,蚁群内的蚂蚁对信息素具有感知能力,它们会沿着信息素浓度较高的路径行走,而每只路过的蚂蚁都会在路上留下信息素,这就形成一种类似正反馈的机制。较短的路径上蚂蚁释放的信息素量较多,随着时间的推进,较短的路径上累积的信息素浓度逐渐增高,选择该路径的蚂蚁数量也越来越多。最终,整个蚁群会在正反馈的作用下集中到最佳的路径上,此时对应的便是待优化问题的最优解。经过一段时间后,整个蚁群就会沿着最短路径到达食物源了。蚁群优化算法的伪代码如算法1-4所示。
  蚁群优化算法采用正反馈机制,使得搜索过程不断收敛,最终逼近最优解。每个个体可以通过释放信息素来改变周围的环境,且每个个体能够感知周围环境的实时变化,个体间通过环境进行间接的通信。搜索过程采用分布式计算方式,多个个体并行计算,大大提高了算法的计算能力和运行效率。启发式的概率搜索方式不容易陷入局部最优,易于寻找到全局最优解。蚁群优化算法一般应用于各类组合优化问题,如旅行商问题、指派问题、生产调度问题、车辆路径问题、图着色问题和网络路由问题等。最近几年,蚁群优化算法在网络路由中的应用受到越来越多学者的关注。一些基于蚁群优化算法的路由算法陆续被提出。同传统的路由算法相比,该类算法具有信息分布式性、动态性、随机性和异步性等特点,而这些特点正好能满足网络路由的需要。
  1.3.5Memetic算法……

展开
目录
目录
前言
第1章 进化算法简介 1
1.1 *优化问题 1
1.2 进化算法的概述 2
1.3 常用进化算法 2
1.3.1 遗传算法 3
1.3.2 分布估计算法 4
1.3.3 粒子群优化算法 5
1.3.4 蚁群优化算法 5
1.3.5 Memetic算法 6
1.3.6 差分进化算法 7
1.4 本章小结 8
第2章 进化算法的数学模型 9
2.1 进化算法数学模型与基本理论研究进展 9
2.2 进化算法时间复杂度相关的数学模型 10
2.3 本章小结 17
第3章 基于Markov过程的理论与方法 18
3.1 基于Markov过程的进化算法时间复杂度分析 18
3.1.1 进化算法的Markov过程模型 18
3.1.2 基于Markov性的时间复杂度分析理论 19
3.1.3 简单的EA时间复杂度分析案例 23
3.2 基于Markov过程的进化规划算法时间复杂度分析 26
3.2.1 进化规划算法简介 26
3.2.2 进化规划算法的Markov过程模型 28
3.2.3 进化规划算法时间复杂度分析的基本理论 29
3.2.4 Gauss变异进化规划算法的时间复杂度分析 32
3.3 基于Markov过程的蚁群优化算法时间复杂度分析 35
3.3.1 蚁群优化算法简介 35
3.3.2 蚁群优化算法的Markov过程模型 37
3.3.3 蚁群优化算法时间复杂度分析的基本理论 37
3.3.4 案例分析 40
3.4 本章小结 44
第4章 分层估计理论与方法 45
4.1 分层估计的定义与定理 45
4.1.1 适应度分层的定义 46
4.1.2 分层估计定理的证明 47
4.2 分层估计分析实例 48
4.2.1 对ONEMAX问题的分析 48
4.2.2 对BINVAL问题的分析 49
4.2.3 对NEEDLE问题的分析 51
4.2.4 LEADINGONES问题 51
4.2.5 LONGPATHk问题 52
4.2.6 JUMPk问题 54
4.2.7 线性函数问题 56
4.3 本章小结 59
第5章 漂移分析理论与方法 61
5.1 漂移分析方法框架 61
5.2 加式漂移分析 62
5.3 乘式漂移分析 65
5.4 可变漂移分析 66
5.5 (1+1)EA求解线性函数的时间复杂度分析 68
5.6 本章小结 71
第6章 关系模型理论与方法 73
6.1 等态关系与强/弱态关系模型的理论与方法 73
6.1.1 进化算法的等态关系模型 73
6.1.2 基于等态关系的进化算法收敛性等价分析 76
6.1.3 基于强/弱态关系的进化算法收敛性对比 78
6.1.4 基于等态关系的进化算法收敛判别定理 79
6.1.5 案例分析 80
6.2 等同关系模型的理论与方法 84
6.2.1 期望首达时间的随机过程模型 84
6.2.2 进化算法的等同关系模型 86
6.2.3 性能对比不等式 88
6.2.4 案例分析 89
6.3 本章小结 99
第7章 平均増益理论与方法 100
7.1 连续型(1+1)EA算法的平均增益建模 100
7.1.1问題描述与算法简介 101
7.1.2 连续型(1+1)EA算法的平均增益模型 102
7.2 连续型(1+1)EA算法个案的平均计算时间分析 104
7.2.1 标准正态分布的EA-I算法计算时间分析 105
7.2.2 均匀分布的EA-II算法计算时间分析 106
7.2.3 EA-I算法与EA-II算法的时间复杂度对比分析 107
7.3 基于平均增益模型的连续型进化算法时间复杂度分析 109
7.3.1 连续型进化算法的上鞅与停时模型 109
7.3.2平均增益定理 110
7.4 (1,*)ES在球函数问题上的平均首达时间分析 113
7.5 本章小结 116
第8章 带噪声的进化算法的时间复杂度分析理论与方法 117
8.1 带噪声优化问题与算法的建模分析 117
8.2 噪声对时间复杂度的影响 121
8.3 噪声处理对时间复杂度的影响 126
8.4 本章小结 129
第9章 进化算法时间复杂度估算方法与软件工具 130
9.1 基于平均增益模型的时间复杂度估算方法 130
9.1.1 基本框架 131
9.1.2 实验步骤 131
9.2 时间复杂度估算案例 133
9.2.1 进化策略(1,*) ES的时间复杂度估算 133
9.2.2 进化策略ES和CMA-ES的时间复杂度估算 134
9.2.3 改进CMA-ES的时间复杂度估算 137
9.3 时间复杂度估算软件工具 140
9.4 本章小结 144
参考文献 145
展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证