人工智能二——遗传算法的基本概念&遗传算法的基本算法(编码&群体设定&适应度函数&选择&交叉&变异&遗传算法步骤)&解决带约束的函数优化问题&多目标的遗传算法&遗传算法的改进算法

  • 遗传算法的基本概念
    • 遗传算法的产生与发展
    • 遗传问题求解过程
      • 编码
      • 形成初始群体(随机生成)
      • 计算适应度
      • 复制(将表中适应度小的完全替换为适应度大的)
      • 交叉(让适应度高的个体进行杂交,替换掉染色体中的某些部位)
      • 变异(会有事先给定的变异概率,随机改变字符串个体字符的某些部位)
      • 终止
  • 遗传算法的基本算法
    • 编码
      • 1、位串编码
        • (1)二进制编码
        • (2)GrayGrayGray编码(interestinginterestinginteresting)
      • 2、实数编码
      • 3、多参数级联编码
    • 群体设定
      • 初始种群产生
        • 确定最优解范围
        • 使初始群体个数达一定规模
      • 种群规模的确定(过大过小都不好)
    • 适应度函数
      • 适应度函数的尺度变换
    • 选择(复制)
      • 个体选择概率分配方法
        • 适应度比例法(蒙特卡罗法)
        • 排序方法
          • 线性排序
          • 非线性排序
      • 选择个体方法
        • 轮盘赌选择(与适应度比例和随机数相结合)
        • 锦标赛选择方法
        • 最佳个体保存方法
    • 交叉
      • 一点交叉
      • 两点交叉
    • 变异
    • 遗传算法步骤
  • 解决带约束的函数优化问题
    • 协同进化
      • 评价函数的构建——罚函数法
  • 多目标的遗传算法
    • 聚合函数法
    • 向量评价遗传算法
  • 遗传算法的改进算法
    • 双倍体遗传算法
    • 双种群遗传算法
    • 自适应遗传算法

遗传算法的基本概念

遗传算法的产生与发展

通过选择、交叉、变异等操作机制使种群个体的适应性不断提高。

遗传问题求解过程

编码

形成初始群体(随机生成)


计算适应度


复制(将表中适应度小的完全替换为适应度大的)

交叉(让适应度高的个体进行杂交,替换掉染色体中的某些部位)


变异(会有事先给定的变异概率,随机改变字符串个体字符的某些部位)

终止

遗传算法的基本算法

编码

1、位串编码

(1)二进制编码



(2)GrayGrayGray编码(interestinginterestinginteresting)

GrayGrayGray编码:将二进制编码通过一个变换进行转换得到的编码



GrayGrayGray编码的特点:任意两个连续的两个整数的编码值之间只有一个位是不同的,其他位都完全相同。克服了二进制编码的HammingHammingHamming悬崖问题

2、实数编码

3、多参数级联编码

群体设定

初始种群产生

确定最优解范围

使初始群体个数达一定规模

种群规模的确定(过大过小都不好)

群体规模太小,遗传算法的优化性能不太好,易陷入局部最优解
群体规模太大,计算复杂

适应度函数

适应度函数的尺度变换


选择(复制)

个体选择概率分配方法

适应度比例法(蒙特卡罗法)

排序方法

线性排序

非线性排序

选择个体方法

轮盘赌选择(与适应度比例和随机数相结合)

锦标赛选择方法

最佳个体保存方法

交叉

一点交叉

两点交叉

变异

遗传算法步骤

  • 生成初始种群
  • 计算每个染色体适应值
  • 满足条件停止,否则构建新的种群
  • 以一定概率交叉产生新的染色体,得到一个新的种群
  • 以较小的概率使染色体发生变异,形成新的种群,重新计算适应度

解决带约束的函数优化问题

协同进化

评价函数的构建——罚函数法



多目标的遗传算法

聚合函数法

向量评价遗传算法

遗传算法的改进算法

双倍体遗传算法


双种群遗传算法

自适应遗传算法

【人工智能】人工智能二——遗传算法的基本概念遗传算法的基本算法(编码群体设定适应度函数选择交叉变异遗传算法步骤)解决带约束的函数优化问题多目标的遗传算法遗传算法的改进算法相关推荐

  1. c语言实现多目标优化,MOPSO 多目标例子群优化算法

    近年来,基于启发式的多目标优化技术得到了很大的发展,研究表明该技术比经典方法更实用和高效.有代表性的多目标优化算法主要有NSGA.NSGA-II.SPEA.SPEA2.PAES和PESA等.粒子群优化 ...

  2. 遗传算法的基本概念和实现,附Java实现案例!

    本文经机器之心(微信公众号:almosthuman2014)授权转载,禁止二次转载 作者:MallawaarachchiFollow 原文:https://medium.com/towards-dat ...

  3. 人工智能学习笔记:基本遗传算法及其改进算法

    文章目录 1 引言 2 基本思想及发展历史 3 基本遗传算法详细步骤 3.1 编码 3.2 初始群体设定 3.3 设计适应度函数 3.4 遗传操作 3.4.1 选择 3.4.2 交叉 3.4.3 变异 ...

  4. Java实现一元函数遗传算法_遗传算法的基本概念和实现,附Java实现案例!

    基因遗传算法是一种灵感源于达尔文自然进化理论的启发式搜索算法.该算法反映了自然选择的过程,即最适者被选定繁殖,并产生下一代.本文简要地介绍了遗传算法的基本概念和实现,希望能为读者展示启发式搜索的魅力. ...

  5. java 遗传算法_遗传算法的基本概念和实现(附 Java 实现案例)

    基因遗传算法是一种灵感源于达尔文自然进化理论的启发式搜索算法.该算法反映了自然选择的过程,即最适者被选定繁殖,并产生下一代.本文简要地介绍了遗传算法的基本概念和实现,希望能为读者展示启发式搜索的魅力. ...

  6. a*算法路径规划matlab_【优化求解】基于栅格地图——遗传算法的机器人最优路径规划...

    采用栅格对机器人的工作空间进行划分,再利用优化算法对机器人路径优化,是采用智能算法求最优路径的一个经典问题.目前,采用蚁群算法在栅格地图上进行路径优化取得比较好的效果,而利用遗传算法在栅格地图上进行路 ...

  7. Python遗传算法工具箱的使用(一)求解带约束的单目标优化

    加了个小目录~方便定位查看~ 前言 正文 一. 基础术语: 二. 遗传算法基本算子: 三.完整实现遗传算法: 四.后记: 前言 网上有很多博客讲解遗传算法,但是大都只是"点到即止" ...

  8. 遗传算法的交叉变异详解

    转载:OMEGAXYZ 注:仅作学习笔记用,版权归OMEGAXYZ所有,侵权请删 文章目录 交叉 二进制编码交叉 单点交叉 两点交叉 多点交叉 均匀交叉 均匀两点交叉 适合浮点数编码的交叉算子 离散交 ...

  9. 【多目标优化】2. 非支配排序遗传算法 —(NSGA、NSGA-II)

    [多目标优化]1. 多目标优化的相关基本概念 [多目标优化]2. 非支配排序遗传算法 -(NSGA.NSGA-II) [多目标优化]3. 基于分解的多目标进化算法 -(MOEAD) 1. 非支配排序遗 ...

  10. 求解多目标旅行商问题的遗传算法参数研究(2017的ieee)

    摘要 本文的目的是利用遗传算法(GA)解决多目标优化问题.通常,多目标问题的目标(最小化成本.最大化性能.减少碳排放.最大化利润)相互冲突,阻碍了每个目标的并行优化.将旅行商问题的双目标传统组合优化称 ...

最新文章

  1. BZOJ 2138 stone(霍尔定理推论,线段树)【BZOJ 修复工程】
  2. js设置div高度低于滚动高度时固定
  3. php 字符串分割成两段,php 两个字符串分割合并的简单示例
  4. html5距离底部的距离代码,如何使距离为HTML5
  5. 地址栏引用PHP中变量,PHP 读取地址栏 参数
  6. C# 图像编程 (1) 准备工作; 你好,空姐; 为空姐照片添加特效
  7. 不支持给定路径的格式_【国考那些事】2021国/省考,申论答题格式,建议收藏!...
  8. 快讯:永中集成Office的核心技术落入谁的手?
  9. java实现高德地图经纬度转换成百度地图
  10. 一个人如何开发一款app?(2020修改版)
  11. mac:系统存在两个Macintosh HD是怎么回事
  12. Axure实战——实现登录注册功能
  13. nacos 安装包下载 linux+windows
  14. 一个SQL tvp+.net的例子
  15. 【公告】淘宝 npm 域名即将切换 npmmirror 重构升级
  16. 门急诊排队叫号系统demo的基本实现
  17. 【论文阅读及复现】(1998)无网格线探索布线算法 + Python代码实现
  18. HTML+JS实现浏览器前端下载图片
  19. python将英文翻译为中文_Python使用百度翻译开发平台实现英文翻译为中文功能示例...
  20. lisp写标高线_cad自动写标高lisp

热门文章

  1. 天池大数据竞赛 阿里流行音乐艺人热度预测
  2. c语言程序流程图模板word,《流程图模板》word版.doc
  3. python步态识别算法_步态识别
  4. gyp node.lib下载失败_洛雪音乐助手下载-洛雪音乐助手手机官方版下载
  5. ant design loading 使用
  6. 手把手教你使用XUI的正确姿势
  7. 数据结构(四):KD树
  8. 读npy、pck、nii格式数据集
  9. php校园一卡通系统
  10. 注册reg.html是什么,reg命令如何修改注册表?reg命令作用介绍