异同点 模拟退火 遗传算法 邻域搜索_遗传算法与模拟退火算法比较
一、遗传算法与模拟退火算法比较
分析模拟退火算法的基本原理可以看出,模拟退火算法是
通过温度的不断下降渐进产生出最优解的过程,
是一个列马尔科
夫链序列,在一定温度下不断重复
Metropolis
过程,目标函数值
满足
Boltzmann
概率分布。在温度下降足够慢的条件下,
Boltzmann
分布收敛于全局最小状态的均匀分布,从而保证模拟
退火算法以概率为
1
收敛到全局最优。另外,不难看出,模拟退
火算法还存在计算结构简单、
通用性好以及鲁棒性强等优点。
但
是,模拟退火算法存在如下缺陷:
1.
尽管温度参数下降缓慢时理论上可以保证算法以概率为
1
地收敛到最优值,但是需要的时间过长加之误差积累与时间长
度的限制,难以保证计算结果为最优;
2.
如果降温过程加快,很可能得不到全局最优解,因此,温
度的控制是一个需要解决的问题;
3.
在每一种温度下什么时候系统达到平衡状态,即需要多少
次
Metropolis
过程不易把握,
从而影响模拟退火算法的最终结果。
与模拟退火算法相比较,遗传算法具有如下典型特征:
这两种算法的相同点是都采用进化控制优化的过程。
主要不
同点是模拟退火是采用单个个体进行进化,
遗传算法是采用种群
进行进化。
模拟退火一般新解优于当前解才接受新解,
并且还需
要通过温度参数进行选择,
并通过变异操作产生新个体。
而遗传
算法新解是通过选择操作进行选择个体,
并通过交叉和变异产生
新个体。具体说来,遗传算法具有如下特点:
(
1
)
与自然界相似,
遗传算法对求解问题的本身一无所知,
对搜索空间没有任何要求(如函数可导、光滑性、连通性等),
只以决策编码变量作为运算对象并对算法所产生的染色体进行
评价,
可用于求解无数值概念或很难有数值概念的优化问题,
应
用范围广泛;
(
2
)
搜索过程不直接作用到变量上,
直接对参数集进行编
码操作,
操作对象可以是集合、
序列、
矩阵、
树、
图、
链和表等;
(
3
)搜索过程是一组解迭代到另一组解,采用同时处理群
体中多个个体的方法,因此,算法具有并行特性;
异同点 模拟退火 遗传算法 邻域搜索_遗传算法与模拟退火算法比较相关推荐
- 异同点 模拟退火 遗传算法 邻域搜索_智能算法浅介----模拟退火,遗传算法,禁忌搜索,神经网络等...
本文讲的过于笼统,如果想真正理解,请参考: 智能算法浅介----By cooler 一个比方 在工程实践中,经常会接触到一些比较"新颖的算法"如模拟退火,遗传算法,禁忌搜索,神经网 ...
- 遗传算法 python包_遗传算法 (Genetic Algorithm)
遗传算法( Genetic Algorithm )又叫基因进化算法,或进化算法.属于启发式搜索算法一种,这个算法比较有趣,并且弄明白后很简单,写个 100-200 行代码就可以实现.在某些场合下简单有 ...
- python遗传算法排课表_遗传算法与Python图解
import matplotlib.pyplot as plt import numpy as np import random import pandas as pd 遗传算法求函数最值 遗传算法的 ...
- python遗传算法八皇后_遗传算法之:八皇后问题
八皇后问题: 在8×8格的国际象棋上摆放8个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行.同一列或同一斜线上,问有多少种摆法.正确的解有很多个,遗传算法并不直接计算一共有多少个解,而是寻找满 ...
- python 遗传算法 排课_遗传算法实现自动排课
暑期带了几个学生做自动排课系统.系统以高校为假想服务对象,要求安排好一所高校一学期的课表,包括公共必修课.专业必修课.公共选修课.专业选修课.系统要求在满足教室.老师.学生各自不存在冲突.教室资源符合 ...
- python遗传算法计算实例_遗传算法python简单例子(详解)
# -*-coding:utf-8 -*- #目标求解sin(x)最大值 import random import math import matplotlib.pyplot as plt #初始化种 ...
- 广度优先搜索_计算机入门必备算法——广度优先遍历搜索
1. 序言 又很久没有学习了,上次学到哈希表又称散列表的相关知识,这次我们学习一种新的数据结构来建立网络模型.这种数据结构被称作图.首先,我们先应该先了解一下什么是图,其次学习第一种图的算法,这种图 ...
- 代码 | 自适应大邻域搜索系列之(2) - ALNS算法主逻辑结构解析
00 前言 在上一篇推文中,教大家利用了ALNS的lib库求解了一个TSP问题作为实例.不知道你萌把代码跑起来了没有.那么,今天咱们再接再厉.跑完代码以后,小编再给大家深入讲解具体的代码内容.大家快去 ...
- 随机邻域嵌入_诠释数据降维算法:一文讲尽t-分布邻域嵌入算法(t-SNE)如何有效利用-阿里云开发者社区...
(文中所有截图,都有华丽的动态效果,详情请点击原文:http://distill.pub/2016/misread-tsne/ 查看) t-分布领域嵌入算法(t-SNE, t-distributed ...
最新文章
- 人工智能治理需用好“人工”
- 【平行驾驶】王飞跃 | 人工智能与智能汽车:在CPSS中驶向第三轴心时代
- 第一章 为什么使用单元测试
- [导入]24小时第六季 剧情
- 贝叶斯 定理_贝叶斯定理实际上是一个直观的分数
- 使用kibana客户端工具操作ElasticSearch(增删改查一)
- 浏览器的两种模式quirks mode 和strict mode
- sqlalchemy mysql教程_SQLAlchemy 教程 —— 基础入门篇
- 802.11 monitor模式
- 活动目录的物理结构逻辑结构
- 计算机网络 ——网络原理之初识
- 设计模式在项目中的应用案例_案例|P6软件在水电项目施工管理中的应用
- 速卖通热卖产品推荐—2021年速卖通家居行业厨房用品热卖产品趋势
- 计算机术语 gc 是什么意思,gc是什么意思的缩写
- Freemarker - 根据模板动态生成word文档
- 达达O2O后台架构演进实践:从0到4000高并发请求背后的努力
- runC 严重漏洞,使用容器的快打补丁;辩论界人机大战,人类获胜
- Lesson 52 A pretty carpet 漂亮的地毯
- UML活动图与状态图
- PowerBI-日期和时间函数-EOMONTH
热门文章
- (推荐)(提供下载)ORACLE常见问题一千问(不怕学不成、就怕心不诚!)
- Linux 命令(92)—— locate 命令
- 不用加号实现两整数相加
- 什么是Java线程池
- LightOJ 1245 - Harmonic Number (II)
- ionic 侧栏菜单用法
- 编程序常用英语单词是什么
- 【MVC5】对MySql数据库使用EntityFramework
- Dynamics CRM2013 Server2012R2下IFD部署遇到There is already a listener on IP endpoint的解决方法...
- 在线VLOOKUP数据查找工具