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

文章目录

  • 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.mzph.cn/news/102359.shtml

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

相关文章

医疗产品方案|智能蓝牙血压计方案

智能蓝牙血压计主要测量指标分别为脉率,收缩压和舒张压。血压和脉率是临床医疗上血液动力学分析的重要指标。 智能蓝牙血压计整个方案采用SIC32F911RET6作为整机血压测量显示的控制芯片,通过单片机程序开发设计而成,主要组成结构是传感器、充…

进来了解实现官网搜索引擎的三种方法

做网站的目的是对自己的品牌进行推广,让越来越多的人知道自己的产品,但是如果只是做了一个网站放着,然后等着生意找上门来那是不可能的。在当今数字时代,实现官网搜索引擎对于提升用户体验和推动整体性能至关重要。搜索引擎可以帮…

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

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

代理IP、Socks5代理与网络工程:解析技术世界的无限可能

在当今数字化的世界中,网络工程师不仅需要保证网络的稳定性,还要应对多样的技术挑战。代理IP和Socks5代理技术已经成为网络工程师工具箱中不可或缺的利器,在跨界电商、爬虫、出海、网络安全、游戏等领域发挥关键作用。本文将深入探讨这两项技…

试图带你一文搞懂transformer注意力机制(Self-Attention)的本质

这篇文章主要想搞懂以下几个问题: 1、什么是自注意力(Self-Attention) 2、Q,K,V是什么 好了废话不多说,直接进入正题 Q,K,V分别代表query,key和value,这很容易让人联想到python的字典数据结构&#xff…

记一个带批注、表头样式的导入导出excel方法(基于easyexcel)

技术栈:easyexcel-2.2.10,poi-4.1.2,lombok,hutool-5.8.19;公司自用导入导出方法,可能不是那么的优雅,但胜在稳定实用。 /*** Author 955* Date 2023-10-10 11:52* Description 错误批注信息对…

superset支持Kylin4.0.0(兼容处理日期分组功能)

问题总结 1. superset默认不支持kylin数据源 安装kylinpy pip install kylinpy 2. 安装kylin驱动后,无法连接kylin地址 修改site-packages/kylinpy/sqla_dialect.py文件 2.1 注释一下内容 #def _compose_select_body(self, text, select, inner_columns, froms, byfrom, …

Ghidra101再入门(上?)-Ghidra架构介绍

Ghidra101再入门(上?)-Ghidra架构介绍 最近有群友问我,说:“用了很多年的IDA,最近想看看Ghidra,这应该怎么进行入门?“这可难到我了。。 我发现,市面上虽然介绍Ghidra怎么用的文章和书籍很多&…

C++ 使用Windows的API CreateDirectory 创建多层级文件夹

简介 使用Windows的API创建多层级文件夹 效果 代码 #include <windows.h> #include <direct.h> #include <iostream> #include <string> #include <sstream> #include <vector> //创建多层级文件夹 bool CreateDir(const std:…

【算法-动态规划】0-1 背包问题

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kuan 的首页,持续学…

APT攻击与零日漏洞

APT攻击 当谈到网络安全时&#xff0c;APT&#xff08;高级持续性威胁&#xff09;攻击是最为复杂和难以检测的攻击类型之一。APT攻击通常涉及到高度的技术和策略性&#xff0c;而且它们的目标是深入地渗透和长时间地隐藏在目标网络中。 1. 什么是APT攻击&#xff1f; 高级持续…

【思维构造】Element Extermination—CF1375C

Element Extermination—CF1375C 参考文章 思路 若 a 1 < a n a_1<a_n a1​<an​&#xff0c; 初始时 a 2 , . . . , a n − 1 a_2, ..., a_{n-1} a2​,...,an−1​ 这 n − 2 n-2 n−2 个元素中大于 a 1 a_1 a1​ 中的元素都能通过 a 1 a_1 a1​ 而被删除&…

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

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

云原生Docker容器管理

目录 docker容器的管理 容器创建 查看容器的运行状态 启动容器 创建并启动容器 终止容器运行 删除容器 容器的进入 查看容器详细信息 复制到容器中 从容器复制文件到主机 容器的导出与导入 导出 导入 相当于一个进程&#xff0c;性能接近于原生&#xff0c;几乎没有损…

.net也能写内存挂

最近在研究.net的内存挂。 写了很久的c,发现c#写出来的东西实在太香。 折腾c#外挂已经有很长时间了。都是用socket和c配合。 这个模式其实蛮成功的&#xff0c;用rpc调用的方式加上c#的天生await 非常好写逻辑 类似这样 最近想换个口味。注入托管dll到非托管进程 这样做只…

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

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

计算机毕业设计选什么题目好?springboot网上选课系统

✍✍计算机编程指导师 ⭐⭐个人介绍&#xff1a;自己非常喜欢研究技术问题&#xff01;专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目&#xff1a;有源码或者技术上的问题欢迎在评论区一起讨论交流&#xff01; ⚡⚡ Java实战 |…

为什么棋牌类APP不能做

1.首先&#xff0c;目前棋牌类APP已经被政府明令禁止了&#xff0c;所有开发和发布类似的APP是不被允许的。 其次&#xff0c;某信小游戏平台关于游戏类目选择的规范&#xff0c;明确的规定&#xff1a;棋牌类、捕鱼以及角色类目的游戏暂不对个人开发者开放&#xff01; 也就…

python - excel 设置样式

文章目录 前言python - excel 设置样式1. 准备2. 示例2.1. 给单元格设置样式"等线"、大小为24磅、斜体、红色颜色和粗体2.2. 给第二行设置样式"宋体"、大小为16磅、斜体、红色颜色和粗体2.3. 给第三行数据设置垂直居中和水平居中2.4. 给第四行设置行高为30…

Unity基础课程之物理引擎7-物理运动应该在FixedUpdate执行

在第2章里提到过FixedUpdate&#xff0c;当时解释它是物理更新&#xff0c;会保证稳定的时间间隔。所谓Fixed的意思就是“固定的、稳定的”。获取两次Update之间的时间间隔用Time.deltaTime&#xff0c;获取两次FixedUpdate之间的时间间隔用Time.fixedDeltaTime。当设备运行不流…