《进化优化》第3章 遗传算法

news2024/10/6 10:29:30

文章目录

  • 3.1 遗传学的历史
  • 3.2 遗传学
  • 3.3 遗传学的历史
  • 3.4 一个简单的二进制遗传算法
    • 3.4.1 用于机器人设计的遗传算法
    • 3.4.2 选择与交叉
    • 3.4.3 变异
    • 3.4.5 遗传算法参数调试
  • 3.5 简单的连续遗传算法

遗传算法模仿自然选择来解决优化问题。
为研究遗传算法,得遵守自然选择的一些基本性质:

  • (1)一个生物系统包含个体的一个种群,许多个体具有繁殖的能力。
  • (2)个体的寿命有限。
  • (3)种群中有差异。
  • (4)生存能力和繁殖能力正相关。

3.1 遗传学的历史

3.2 遗传学

个体的每个特性或特征,由一对基因控制。

3.3 遗传学的历史

3.4 一个简单的二进制遗传算法

3.4.1 用于机器人设计的遗传算法

(1)编码:
电机的类型和伏数
在这里插入图片描述
电源的类型和伏数:
在这里插入图片描述

(2)定义适应度函数
在这里插入图片描述
关于问题的适应度函数的定义没有硬性规则,它取决于遗传算法设计者能否充分理解问题从而给出适应度函数的一个合理的定义。

随机生成个体:
在这里插入图片描述

3.4.2 选择与交叉

在这里插入图片描述

轮盘赌选择:
在这里插入图片描述
在这里插入图片描述
生成同等规模子代:
在这里插入图片描述
生成子代:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.4.3 变异

在这里插入图片描述

3.4.5 遗传算法参数调试

在这里插入图片描述
终止准则:

  • 预先给定遗传算法运行的代数。
  • 让遗传算法一直运行到最好的个体的适应度好过由用户定义的某个阈值。
  • 一直运行直到个体适应度不再有改进。

指定参数:

  • 将问题的解映射到位串的编码方案。
  • 将问题的解映射到适应度值的适应度函数。
  • 种群规模。
  • 选择方法。
  • 变异率。
  • 适应度的缩放。
  • 交叉的类型。
  • 物种/近亲。

在这里插入图片描述
编码:
在这里插入图片描述
编码方案是在准确的和复杂度之间的一个平衡。

随机生成初始种群:
在这里插入图片描述

求适应度值:
在这里插入图片描述
使适应度全部大于0:
在这里插入图片描述

确定适应度值所占比例:
在这里插入图片描述

交叉:
在这里插入图片描述
在这里插入图片描述

3.5 简单的连续遗传算法

在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1084999.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

微软10月补丁 | 修复103个漏洞,包括2个零日漏洞,13个严重漏洞

近日,微软发布了2023年10月的补丁更新,解决了其软件中的103个漏洞。 在这103个漏洞中,有13个的评级为严重漏洞,90个被评为重要漏洞。自9月12日以来,谷歌已经解决了基于chrome的Edge浏览器的18个安全漏洞。 这两个零日…

ATFX汇市:美国9月CPI数据来袭,机构预期年率增速将继续回落

ATFX汇市:今日20:30,美国劳工部将公布9月未季调CPI年率增速,前值为3.7%,预期值3.6%;9月未季调核心CPI年率,同一时间公布,前值为4.3%,预期值4.1%。无论是名义CPI增速还是核心CPI增速&…

深入理解强化学习——标准强化学习和深度强化学习

分类目录:《深入理解强化学习》总目录 强化学习的历史 早期的强化学习,我们称其为标准强化学习。最近业界把强化学习与深度学习结合起来,就形成了深度强化学习(Deep ReinforcemetLearning)。因此,深度强化…

基于YOLO算法的单目相机2D测量(工件尺寸和物体尺寸)三

1.简介 1.1 2D测量技术 基于单目相机的2D测量技术在许多领域中具有重要的背景和意义。 工业制造:在工业制造过程中,精确测量是确保产品质量和一致性的关键。基于单目相机的2D测量技术可以用于检测和测量零件尺寸、位置、形状等参数,进而实…

腾讯云国际站-阿里云OSS如何迁移到腾讯云COS?腾讯云cos迁移教程

下面小编将介绍当源对象存储部署在阿里云国际版OSS 时,如何配置全托管迁移任务和半托管迁移任务,实现顺利迁移数据至腾讯云国际版COS。 准备工作 阿里云对象存储 OSS 创建 RAM 子账号并授予相关权限: 登录 RAM 控制台。选择人员管理 > …

吃瓜神奇!企查查、天眼查、天眼销,到底哪家强?

最近,我发现很多人在讨论查企业信息的工具,什么企查查、天眼查、天眼销等,到底哪家强呢? 首先,我们来简单了解一下这些工具。企查查是一款可以帮助用户查询企业信息的工具,通过输入关键词,可以搜…

VPN基础

1.VPN简介 VPN即虚拟专用网,泛指通过VPN技术在公用网络上构建的虚拟专用网络。VPN用户在此虚拟网络中传输私网流量,在不改变网络现状的情况下实现安全、可靠的连接。 专用:VPN网络是专门供VPN用户使用的网络,对于VPN用户&#xf…

Redis魔法:点燃分布式锁的奇妙实现

分布式锁是一种用于在分布式系统中控制对共享资源的访问的锁。它与传统的单机锁不同,因为它需要在多个节点之间协调以确保互斥访问。 本文将介绍什么是分布式锁,以及使用Redis实现分布式锁的几种方案。 一、前言 了解分布式锁之前,需要先了…

太顶了!文心大模型落地文旅行业不仅能业生成潮玩、还可补文物残卷!

10月11日,文化和旅游部公布了2023年文化和旅游数字化创新示范十佳案例和优秀案例。百度文心大模型创新文化产品生产方式入选十佳案例,也是唯一一个入选的大模型应用案例。文心大模型获奖类型为运用数字化工具助力艺术创作生产,促进文化机构数…

产品升级!全球尺度下原核基因组关键基因共进化无标题

微生物是群落型的生存方式,高通量测序时代到来后,掀起了针对微生物群落整体研究的高潮,比如基于功能基因/16S/ITS/扩增子、宏基因组等进行群落多样性分析。但是,我们基于分离培养等方法获得单菌落,针对单菌开展基因组、…

xxx.ko 驱动模块加载报错 “unknown symbol in module or invalid parameter”

一、问题 在对单独驱动模块进行测试时,我们要进行动态编译,生成对应驱动的.ko模块。然后进行手动加载和卸载。但是在进行驱动模块加载时遇到了unknown symbol in module or invalid parameter问题,对此进行排查解决。 二、解决 首先进行dmes…

IEJoin: 提高 Databend range join 性能

作者:王旭东 Databend 研发工程师 xudong963 (xudong.w) GitHub IEJoin 算法可以高效的处理时序场景中的 Range(ASOF) Join。 Join conditions Equi condition 在 下面 SQL 中 SELECT * FROM employee JOIN department ON employee.DepartmentID department.D…

Spring 方法升级 在hellospring接口里面

1.现在实现类Hellojava写一个构造方法 2.去配置文件那里 3.测试 就留下第一步 看下面测试情况 我们在这里并没有去getbean它 但是我们new了 那就说明 只要我们newl它该对象就已经创建好了

如何把电脑上的游戏串流助手设置为开机自启动?

注意:想要直接将 游戏串流助手 扔进“启动”文件夹里面,是没有用的,重启电脑根本打不开游戏串流助手! 步骤一:每次双击 游戏串流助手之后,都会弹出这个用户账户控制,我们第一步就是要把这个禁用…

uniapp小程序实现绘制内容,生成海报并保存截图(Painter和Canvas两种方式举例)

一、Painter方法 Painter插件传送门 1.下载资源包 2.将资源包的如下部分 3.使用页面引入组件 ui样式 <paintercustomStyle=margin-left: 40rpx; height: 1000rpx;palette="{{palette}}"bind:imgOK="onImgOK"/>data 中数据(绘制内容,替换区域) pai…

深圳想要开低佣金开户?怎么开股票账户佣金最低?

深圳想要开低佣金开户&#xff1f;怎么开股票账户佣金最低&#xff1f; 炒股开户的方法一般有两种&#xff1a; 在线开户&#xff1a;通过证券公司的官网或手机APP进行在线开户。具体流程一般为填写个人信息、进行身份认证、签署相关协议并上传相关材料&#xff0c;最后等待审…

【C语言】文件的操作与文件函数的使用(详细讲解)

前言&#xff1a;我们在学习C语言的时候会发现在编写一个程序的时候&#xff0c;数据是存在内存当中的&#xff0c;而当我们退出这个程序的时候会发现这个数据不复存在了&#xff0c;因此我们可以通过文件把数据记录下来&#xff0c;使用文件我们可以将数据直接存放在电脑的硬盘…

Pytorch深度学习—FashionMNIST数据集训练

文章目录 FashionMNIST数据集需求库导入、数据迭代器生成设备选择样例图片展示日志写入评估—计数器模型构建训练函数整体代码训练过程日志 FashionMNIST数据集 FashionMNIST&#xff08;时尚 MNIST&#xff09;是一个用于图像分类的数据集&#xff0c;旨在替代传统的手写数字…

各种小程序/PC/移动端修改代码/文件后, 不热重载问题修复

各种框架有各种的配置,首先检查是否配置了热更新, 打个比方,taro中底版本中配置热更新是在配置文件中开启mini.hot,高版本中,终端执行打包命令的时候,添加–watch参数, 如果以上检查都没有问题,依旧还是没有热更新,那么很有可能是依赖出了问题,可以通过以下方法,重新…

Spring 趣玩

1、修改控制台启动显示的图案 在SpringBoot项目的resources目录下新建一个banner.txt文本文件&#xff0c;然后将启动Banner粘贴到此文本文件中&#xff0c;启动项目即可。 在线制作banner ①、http://patorjk.com/software/taag/ ②、https://www.bootschool.net/ascii ③、ht…