轮盘赌选择法

2023-05-16

遗传学基本术语

  • 基因型(genotype):性状染色体的内部表现; 表现型(phenotype):染色体决定性状的外部表现,或者说,根据基因型形成的个体;
  • 进化(evolution):逐渐适应生存环境,品质不断得到改良。生物的进化是以种群的形式进行的。
  • 适应度(fitness):度量某个物种对于生存环境的适应程度。
  • 选择(selection):以一定的概率从种群中选择若干个个体。一般,选择过程是一种基于适应度的优胜劣汰的过程。
  • 复制(reproduction):细胞分裂时,遗传物质DNA通过复制而转移到新产生的细胞中,新细胞就继承了旧细胞的基因。
  • 交叉(crossover):两个染色体的某一相同位置处DNA被切断,前后两串分别交叉组合形成两个新的染色体。也称基因重组或杂交;
  • 变异(mutation):复制时可能(很小的概率)产生某些复制差错,变异产生新的染色体,表现出新的性状。
  • 编码(coding):DNA中遗传信息在一个长链上按一定的模式排列。 遗传编码可看作从表现型到基因型的映射。
  • 解码(decoding):基因型到表现型的映射。
    • 个体(individual):指染色体带有特征的实体;
  • 种群(population):个体的集合,该集合内个体数称为种群的大小;

轮盘赌选择法概念

轮盘赌选择法又称比例选择方法.其基本思想是:各个个体被选中的概率与其适应度大小成正比.
具体操作如下:
(1)计算出群体中每个个体的适应度f(i=1,2,…,M),M为群体大小;
(2)计算出每个个体被遗传到下一代群体中的概率;在这里插入图片描述

(3)计算出每个个体的累积概率;
在这里插入图片描述

(4)在[0,1]区间内产生一个均匀分布的伪随机数r;
(5)若r<q[1],则选择个体1,否则,选择个体k,使得:q[k-1]<r≤q[k] 成立;
(6)重复(4)、(5)共M次

一个简单的实例

  1. 产生初始种群

    s1= 13 (01101)

    s2= 24 (11000)

    s3= 8 (01000)

    s4= 19 (10011)

  2. 计算适应度

    假定适应度为f(s)=s^2 ,则

    f (s1) = f(13) = 13^2 = 169

    f (s2) = f(24) = 24^2 = 576

    f (s3) = f(8) = 8^2 = 64

    f (s4) = f(19) = 19^2 = 361

  3. 选择

    染色体的选择概率为:
    在这里插入图片描述
    染色体的累计概率为:
    在这里插入图片描述
    根据上面的式子,可得到:
    在这里插入图片描述
    例如设从区间[0, 1]中产生4个随机数:

     r1 = 0.450126,    r2 = 0.110347 
    
      r3 = 0.572496,    r4 = 0.98503 
    

在这里插入图片描述

代码实现

//按设定的概率,随机选中一个个体
// P[i]表示第i个个体被选中的概率
int RWS()
{
	m =0;
	r =Random(0,1); //r为0至1的随机数
	for(i=1;i<=N; i++)
	{
		//产生的随机数在m~m+P[i]间则认为选中了i
		//因此i被选中的概率是P[i]
		m = m + P[i];
		if(r<=m) return i;
	}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

轮盘赌选择法 的相关文章

  • 刷题_34:收件人列表 and 养兔子

    一 收件人列表 题目链接 xff1a 收件人列表 题目描述 xff1a NowCoder每天要给许多客户写电子邮件 正如你所知 xff0c 如果一封邮件中包含多个收件人 xff0c 收件人姓名之间会用一个逗号和空格隔开 xff1b 如果收件
  • 刷题_35:年会抽奖

    一 年会抽奖 题目链接 xff1a 年会抽奖 题目描述 xff1a 今年公司年会的奖品特别给力 xff0c 但获奖的规矩却很奇葩 xff1a 首先 xff0c 所有人员都将一张写有自己名字的字条放入抽奖箱中 xff1b 待所有字条加入完毕
  • 常见命令执行的一些绕过方式

    文章目录 一 命令执行二 绕过技巧1 常见管道符2 空格过滤3 黑名单绕过4 绕过长度限制5 ls命令6 各种读文件命令 一 命令执行 1 php调用外部程序常用的函数 xff1a system 执行shell命令也就是向dos发送一条指令
  • 以TM32最小系统核心板(STM32F103C8T6)为主,实现led流水灯

    文章目录 题目要求一 GPIOx端口的各寄存器地址和详细参数二 用C语言 寄存器方式编程实现1 新建文件2 代码写入2 1 启动代码2 1 1 介绍启动代码2 1 2 添加启动代码 2 2 写入代码 三 编译调试1 编译2 调试 总结 题目
  • 阿尔法点亮LED灯(一)汇编语言

    文章目录 前言一 GPIO介绍1 MX6U IO 复用2 MX6U IO 配置3 GPIO 配置4 GPIO 时钟使能5 61 61 GPIO的使用步骤 61 61 二 程序编写1 使能 GPIO1 时钟2 设置 GPIO1 IO03 的复
  • ubuntu20.4遇到GNU GRUB问题

    开启ubuntu遇到GNU GRUB问题 参考链接 xff1a Boot drops to a initramfs prompts busybox Ask Ubuntu 解决GNU GRUB问题步骤 xff1a 1 xff0e 首先ente
  • Pycharm terminal激活虚拟环境

    Pycharm terminal激活虚拟环境 xff0c 首先需要保证系统完成了conda的安装 xff0c 并在Powershell中完成虚拟环境的创建 xff08 操作创建的虚拟环境名称为deep pool xff0c 这个虚拟环境在接
  • xftp成功安装但连接Ubuntu失败

    Xftp连接Ubuntu失败 1 查看主机的IP地址是否填写正确 xff0c 如何查看Ubuntu的IP地址 xff1a 在terminal中输入ifconfig xff0c 如果Ubuntu ifconfig失败 xff0c 原因是未安装
  • skynet中给日志关键字加上颜色

    skynet中给控制台日志关键字加上颜色 控制文本颜色的ANSI转义序列 通用的控制文本颜色的转义序列格式如下 xff1a CSI n1 n2 m 其中CSI全称为 控制序列引导器 xff08 Control Sequence Introd
  • Ubuntu20.4安装docker

    在线安装docker xff08 确保curl已经安装 xff09 curl fsSL https get docker com o get docker sh sudo sh get docker sh 离线安装docker 参考资料ht
  • ubuntu20.4搭建本地地图服务(本地OSRM)

    下载地图数据文件 xff08 xxx osm pbf xff09 xff0c 下载网址http download geofabrik de xff0c 例如下载Asia下的China的文件 xff08 China osm pbf xff09
  • Ubuntu20.4输入ifconfig之后只有ens33,没有具体的ip地址

    出现的问题 xff1a Ubuntu20 4输入ifconfig之后只有ens33 loc docker xff08 这是自己安装的docker分配的端口 xff09 xff0c 发现ens33没有具体的ip地址 解决方法 xff1a 1
  • 使用anaconda创建虚拟环境

    方法一 xff1a 使用anaconda navigator 打开anacodna navigator 选择environments xff0c 点击Create xff0c 填写环境名 选择python版本 方法二 xff1a 使用ana
  • 日常问题——电脑相机灰色带斜杠打不开

    电脑相机灰色带斜杠 xff1f xff1f xff1f 解决方法 OK xff01 xff01 xff01 xff01 xff01 xff01 xff01 xff01 xff01 xff01
  • 云计算课程-Ubuntu系统搭建jenkins服务

    博客内容是云计算课程搭建DevOps流水线的步骤之一 xff0c 即搭建jenkins服务 可以单独运用于jenkins服务的搭建 也可以作为搭建dev ops中jenkins server主机的步骤之一 使用的实验环境为 xff1a Ub
  • 蓝桥杯单片机-静态数码管

    该板子为共阳数码管 Y7C控制每个数码管的内容 xff0c Y6C控制显示数码管的位置 只需要先通过Y6C打开需要显示的数码管 xff0c 即让对应的数码管com口为1 xff0c 再通过Y7C向该数码管写入内容即可 include 34
  • Linux系统(Ubuntu20.04)安装Anaconda及报错解决

    1 错误 2 解决 错误原因 xff1a 现有的文件的md5与真实的md5值不匹配 xff08 现有的文件是在win10系统上下载 xff0c 直接通过FileZilla软件传输 xff0c 得到的文件被修改 xff09 链接 xff1a
  • Ubuntu下的SD卡分区操作(制作Linux启动文件)

    最近在使用SD卡制作Linux启动文件时 xff0c 要进行SD卡的分区操作 总结了主要的流程 xff0c 操作步骤如下 xff1a 1 插入SD卡并挂载到Ubuntu下 xff0c 输入以下命令查看SD卡挂载信息 sudo fdisk l
  • STM32程序正常烧录后不能运行的可能原因(关于新旧CUBE的型号问题)

    STM32程序正常烧录后不能运行的可能原因 xff1a 1 没有勾选Mirco Lib xff1b 2 没有在烧写选项里勾选reset and run xff0c 然后自己也没有手动复位 xff0c 把自己吓到了 xff1b 3 对于使用H

随机推荐

  • vim退出插入模式

    vim退出插入模式其实很简单的 xff0c 直接按键盘Esc键就可以了 xff0c 但是Esc键在键盘上布局位置比较远 xff0c 取而代之的还有另外一种方式就是Ctrl 43
  • 常见的几种数据加密算法

    常见的数据加密算法 一 xff0c 数据加密的含义 数据加密 xff08 Data Encryption xff09 指将一个信息 xff08 或称明文 xff0c plain text xff09 经过加密钥匙 xff08 Encrypt
  • Proxmox 实现存储复制及高可用HA

    proxmox存储复制 和 HA故障切换 存储复制 命令行工具pvesr用于管理Proxmox VE存储复制框架 存储复制能够提高使用本地存储的客户机的冗余性 xff0c 同时降低客户机迁移时间 该工具能够将客户机的虚拟磁盘复制到其他节点
  • 如何利用起家里的旧电脑当个人网盘使?这里有半小时教程(逐步)

    旧电脑这种东西啊 xff0c 扔也不得 xff0c 不扔又不知道怎么利用 xff0c 实乃头疼之事 网盘这种东西啊 xff0c 我们需要的是什么 xff1f 容量 隐私性对吧 xff1f xff08 隐私性你懂的 xff09 xff08 这
  • Docker入门程序

    1 编写Dockerfile文件 创建一个空的Docker工作目录dockerspace 进入该目录 xff0c 并使用sudo vim Dockerfile指令新建并打开一个Docker文件 xff0c 然后向该文件中编写内容 2 编写外
  • Ubuntu 系统中网络总是断掉重新连接

    Ubuntu 系统中网络总是断掉重新连接 xff0c 让人很烦恼 xff0c 在网上寻找多种方法后还是无法解决 xff0c 因此在经过团队成员的不断尝试 xff0c 最终将解决办法总结如下 xff1a 在设置完ip DNS和网关后 xff0
  • 数据结构之顺序表

    目录 前言 一 顺序表的结构 二 顺序表各接口函数及实现 1 顺序表的初始化 2 顺序表的打印 3 顺序表的插入函数 顺序表头部插入函数 顺序表尾部插入函数 任意位置插入函数 4 顺序表的删除函数 头部删除函数 尾部删除函数 任意位置删除
  • WSL2配置代理 记录下遇到的所有坑

    第一步 开放windows对wsl2的防火墙 大家都知道wsl2和wsl1不一样 wsl2基本上就是一个虚拟机 虚拟了一个linux的系统 主机之间是有防火墙的 现在我们要关闭它 打开powershell7以管理员身份运行 PS C spa
  • 三、共阳数码管的静态显示

    目录 1 数码管的电路分析 2 代码 8个数码管分别单独依次显示0 9的值 xff0c 然后所有数码管一起同时显示0 F的值 xff0c 如此往复 1 数码管的电路分析 共阳数码管 xff1a xff08 接低 61 亮 xff09 0 1
  • 十四、基础技能综合实训案例解析

    目录 自己实现有问题的部分 xff1a 跑马管 xff08 左到右依次点亮数码管的所有段码 xff08 怎么实现数码管全亮 xff1f xff09 xff0c 再依次从左 到右熄灭 xff09 独立按键 xff1a 按下按键 xff0c 灯
  • lua os.time与os.date的简单用法

    local start 61 os time year 61 2016 month 61 2 day 61 1 hour 61 20 min 61 0 sec 61 0 local finish 61 os time year 61 201
  • python opencv 调用摄像头失败问题的解决 Windows

    省流 xff1a 内含 Python Opencv 双目相机拍照代码 xff08 手动 or 自动 xff09 xff0c 可自取 xff1b 如果你的 cv2 VideoCapture 函数卡住但不报错 xff0c 打开 Windows
  • 使用PCtoLCD2002字模提取软件

    一 PCtoLCD2002基本介绍 PCtoLCD2002是专业的取字模软件 xff0c 采用C语言和汇编语言两种格式 xff0c 支持逐行 逐列 行列 列行四种取模方式 xff0c 还可以选择字体 大小 文字的长宽 xff0c 自动生成你
  • Java——打印出所有的水仙花数(两种方法实现)

    目录 概念介绍 代码实现 结果展示 概念介绍 34 水仙花数 34 是指一个三位数 xff0c 其各位数字立方和等于该数本身 例如 xff1a 153是一个 34 水仙花数 34 xff0c 因为153 61 1的三次方 xff0b 5的三
  • 虚拟机mac已连接以太网但是依旧没网络解决方法

    提供以下解决方案 1 关闭虚拟机 xff0c 在虚拟机网络适配器中更改 xff0c 每台电脑体质不一样 xff0c 桥接不行就net xff0c 再不行就选择主机 xff0c 不能一棵树吊死 xff0c 往往都是这个问题 xff0c 百度找
  • Debian 10服务器安全优化脚本

    vim anquanjiaoben sh bin bash echo 34 服务器安全脚本 34 echo 34 系统更新 34 sudo apt get update y sudo apt get upgrade y echo 34 ip
  • VS2017报错 class “Cxxxx“没有成员“GetContextMenuManager“ “GetContextMenuManager“:不是“Cxxxx“的成员

    项目场景 xff1a 系统 xff1a WIN 10 软件 xff1a VS 2017 问题描述 看B站MFC教学视频 xff0c 一直看到一个完整项目的搭建 xff0c 按照视频步骤来发现会报一个错误 xff1a class Cxxxx
  • 用户回调期间遇到未经处理的异常

    项目场景 xff1a 系统 xff1a WIN10 软件 xff1a VS 2017 问题描述 按照视频教学 xff0c 编译通过但是调试失败 提示错误为 xff1a 0x0FD7FD71 mfc140u dll SaleSystem ex
  • 无法打开源文件stdafx.h

    在VS 2019中使用Strcpy函数会报错 xff0c 大意是说该函数不安全 xff0c 建议使用 34 strcpy s 34 函数 百度发现 strcpy s 34 函数需要include stdafx h 然后编译器就说无法打开源文
  • 轮盘赌选择法

    遗传学基本术语 基因型 genotype xff1a 性状染色体的内部表现 xff1b 表现型 phenotype xff1a 染色体决定性状的外部表现 xff0c 或者说 xff0c 根据基因型形成的个体 xff1b 进化 evoluti