当前位置: 首页 > news >正文

NICE Seminar(2023-07-16)|演化算法的理论研究到底有什么用?(南京大学钱超教授)

模式定理(Schema Theorem)

模式定理(Schema Theorem)是遗传算法(Genetic Algorithm, GA)的重要理论基础,由约翰·霍兰德(John Holland)在1975年提出。它描述了具有特定模式(schema)的基因片段在遗传算法中如何传播和保留的过程。以下是模式定理的详细介绍:

1. 模式(Schema)

模式是一种模板,表示在某些位置上具有相似性的字符串子集。模式用“*”符号表示可以是任何值。例如:

  • 模式1*0*表示所有长度为4的二进制字符串,这些字符串以1开头,第三位是0,第二位和第四位可以是0或1。
2. 模式定理的公式

模式定理的数学表达式如下:

3. 定理的含义

模式定理揭示了以下几方面的内容:

  • 适应度的影响:高适应度模式的个体数量在下一代中将会增加。
  • 定义长度的影响:定义长度较短的模式在交叉过程中更容易保留下来。
  • 突变率的影响:低突变率有助于模式的保留。
4. 应用场景
  • 优化问题:模式定理解释了遗传算法在优化问题中效果显著的原因,说明高适应度基因片段会在种群中传播。
  • 算法改进:理解模式定理有助于设计更有效的遗传算法,优化选择、交叉和突变操作,以更好地保留和传播有利模式。
  • 机器学习:在机器学习中的特征选择和模型优化过程中,模式定理提供了理论支持。

例子

假设在一个二进制遗传算法中,一个长度为10的个体有一个模式101*0*1*01,这个模式具有较高的适应度,并且定义长度较短。在这种情况下,根据模式定理,这个模式在下一代中会被更多地保留和传播,从而提高种群整体的适应度。

模式定理通过描述模式的保留和传播,解释了遗传算法如何通过选择、交叉和突变操作,在进化过程中逐步逼近最优解。

d m y  表示解的目标值

没有免费午餐定理(No Free Lunch Theorems, NFL)

是由Wolpert和Macready在1997年提出的,它是计算复杂性理论中的一个重要概念,特别是在演化算法和机器学习领域。没有免费午餐定理指出,没有任何一种算法能够在所有可能的问题上普遍优于其他所有算法。

以下是定理的主要内容:

定理的基本观点

  • 算法的普遍性能:NFL定理表明,如果我们考虑所有可能的问题(包括所有可能的输入和目标函数),那么所有算法的期望性能是相同的。换句话说,没有任何算法能够在所有问题上都表现得更好。
  • 特定问题上的性能:尽管在所有可能的问题上的平均性能是相同的,但在特定问题上,一些算法可能会比其他算法表现得更好。

定理的含义

  • 算法选择:NFL定理意味着在选择算法时,必须考虑特定问题的特性。没有一种算法是通用的,最好的算法取决于问题的性质。
  • 偏差与适应性:NFL定理强调了算法设计中的偏差与适应性之间的权衡。一个算法可能在某些问题上表现良好,但这是因为它对这些特定类型的问题有适应性(或偏差)。

定理的推论

  • 优化困难:NFL定理表明,优化是一个困难的问题,因为没有一种单一的方法可以保证在所有情况下都能找到最优解。
  • 问题特定算法:对于特定类型的问题,可以设计出比通用算法更有效的算法。

实际应用

  • 算法设计:在设计算法时,了解问题的特定属性是非常重要的,这样可以为特定类型的问题定制算法。
  • 性能评估:在评估算法性能时,应该在相关的问题集上进行,而不是在所有可能的问题上进行。

限制

  • 实际意义:虽然NFL定理在理论上是正确的,但在实际应用中,我们通常只关注特定类型的问题,这使得某些算法在实际情况下比其他算法更有效。
  • 假设条件:NFL定理基于一些假设,例如所有问题都是等可能的,这在现实世界中并不总是成立。

没有免费午餐定理是对算法设计和性能评估的一种哲学上的提醒,它强调了算法与问题之间的相互作用,以及在设计和选择算法时应考虑的问题特定性。 

目标空间与决策空间

在优化问题中,目标空间和决策空间是两个核心概念,它们分别描述了优化问题的不同方面。

决策空间(Decision Space)

决策空间是指所有可能的决策变量值的集合。它定义了优化问题中可以探索的解的范围。决策空间中的每一个点都对应于问题的一个潜在解。

  • 特性

    • 通常由一组变量 x_1, x_2, ..., x_nx1​,x2​,...,xn​ 定义,这些变量可以是连续的或离散的。
    • 决策空间的维度等于决策变量的数量。
    • 决策空间的边界可能由变量的物理限制或问题的约束条件决定。
  • 例子

    • 在线性规划问题中,决策空间可能是所有线性不等式约束下的解集合。
    • 在工程设计问题中,决策空间可能包括所有可能的设计参数值。

目标空间(Objective Space)

目标空间是指所有可能的目标函数值的集合。它是决策空间中每个点通过目标函数映射后形成的空间。在多目标优化问题中,目标空间通常是多维的,每个维度对应一个目标函数。

  • 特性

    • 由目标函数 f(x)f(x) 的输出定义,其中 xx 是决策空间中的一个点。
    • 目标空间可以是单维的(单一目标优化问题)或多维的(多目标优化问题)。
    • 目标空间中的点通常表示优化问题的某种性能或质量指标。
  • 例子

    • 在单目标优化问题中,目标空间可能是一维的,表示成本或收益的值。
    • 在多目标优化问题中,目标空间是多维的,可能表示多个相互冲突的目标,如成本、质量、时间等。

关系

  • 映射:决策空间中的每个点通过目标函数映射到目标空间中的一个点或一组点。
  • 优化:优化问题的目标是找到决策空间中的点,使得在目标空间中的对应点满足某些优化准则,如最小化或最大化目标函数。
  • 约束:在优化问题中,决策空间通常受到约束条件的限制,这些约束条件进一步限制了目标空间的形状和范围。

理解目标空间与决策空间的关系对于设计优化算法和解释优化结果至关重要。在多目标优化中,这种区分尤为重要,因为在目标空间中寻找Pareto前沿是问题的核心。理论证明了解的质量有保障!!!!!

相关文章:

NICE Seminar(2023-07-16)|演化算法的理论研究到底有什么用?(南京大学钱超教授)

模式定理(Schema Theorem) 模式定理(Schema Theorem)是遗传算法(Genetic Algorithm, GA)的重要理论基础,由约翰霍兰德(John Holland)在1975年提出。它描述了具有特定模式…...

优盘驱动器未格式化?数据恢复全攻略

在数字时代,优盘作为便携的数据存储工具,广泛应用于日常生活与工作中。然而,当遇到“优盘驱动器未被格式化”的提示时,无疑给许多人带来了不小的困扰。这一状况往往意味着优盘的文件系统出现了问题,导致系统无法正确识…...

(超全)Kubernetes 的核心组件解析

引言 在现代软件开发和运维的世界中,容器化技术已经成为一种标志性的解决方案,它为应用的构建、部署和管理提供了前所未有的灵活性和效率。然而,随着应用规模的扩大和复杂性的增加,单纯依靠容器本身来管理这些应用和服务已不再足够…...

前端常用的【设计模式】和使用场景

设计原则 最重要的:开放封闭原则 对扩展开放对修改封闭 工厂模式 用一个工厂函数,来创建实例,隐藏 new 如 jQuery 的 $ 函数,React 的 createElement 函数 单例模式 全局唯一的实例(无法生成第二个) 如 Vuex 和 Redux 的 store…...

QT下载问题:Download from your IP address is not allowed

问题 Download from your IP address is not allowed 解决 https://download.csdn.net/download/baidu_34971492/89608794...

自建数据库VS云数据库

自建数据库VS云数据库 什么是自建数据库?自建数据库方案自建数据库的优点自建数据库的缺点什么是云数据库?自建数据库的缺点什么是云数据库? 云数据库方案云数据库的优点云数据库的缺点适用场景比较总结 【纪录片】中国数据库前世今生 在数字…...

【大数据开发语言Scala的入门教程】

🎥博主:程序员不想YY啊 💫CSDN优质创作者,CSDN实力新星,CSDN博客专家 🤗点赞🎈收藏⭐再看💫养成习惯 ✨希望本文对您有所裨益,如有不足之处,欢迎在评论区提出指正,让我们共同学习、交流进步! 🪁Scala 🪡Scala是一种功能丰富且具有强大表达能力的静态类型…...

docker部署kkfileview文件在线预览服务

kkfileview文件在线预览服务部署使用 免费开源,功能强大,几乎支持日常见到的所有文件类型在线预览 目前支持的文件类型如下 支持 doc, docx, xls, xlsx, xlsm, ppt, pptx, csv, tsv, dotm, xlt, xltm, dot, dotx,xlam, xla 等 Office 办公文档支持 wp…...

朱锐 | 生命图像中的时间和意识

本文载于《科学・经济・社会》2023 年第 41 卷第 2 期第 37~61 页 作者简介: 朱锐(1968年10月—2024年8月1日),中国人民大学哲学院杰出学者、特聘教授,美国德州州立大学客座教授,主要从事神经哲学、心灵哲…...

pytorch: cpu,cuda,tensorRt 推理对比学习

0:先看结果 针对resnet模型对图片做处理 原图结果 分别使用cpu,cuda,TensorRt做推理,所需要的时间对比 方法时间cpu13s594mscuda711mstensorRt 113ms 项目地址: GitHub - july1992/Pytorch-vily-study: vily 学…...

android 音频播放器,(一)SoundPool音频播放实例

1. Apk内&#xff0c;预定义按键与触发按键&#xff1a; layout 按键定义: <Button android:id"id/start" android:layout_width"match_parent" android:layout_height"wrap_content" android:textAllC…...

AVL解析

本节主要看板书 概念 AVL树&#xff08;Adelson-Velsky and Landis tree&#xff09;是一种自平衡二叉查找树&#xff0c;用于在动态集合中进行高效的插入、删除和查找操作。它保持树的高度接近最小可能值&#xff0c;从而确保这些操作的时间复杂度始终保持在O(log n)。AVL树…...

用C#和WinForms打造你的专属视频播放器:从多格式支持到全屏播放的完整指南

使用 C# 和 WinForms 创建一个功能齐全的视频播放器&#xff0c;支持 MP4 和 AVI 格式&#xff0c;并具有文件夹导入、多视频播放、全屏切换、视频列表管理等功能&#xff0c;是一个相对复杂的项目。下面我会给出一个基本的实现方案&#xff0c;包括所需的关键功能和相关代码示…...

Spring security学习笔记

目录 1. 概要2. spring security原理2.1 DelegatingFilterProxy2.2 FilterChainProxy2.3 SecurityFilterChain2.4 Spring Security 作用机制 3.Spring Security快速入门4.高级自定义配置5. Spring Security 结合 JWT使用 1. 概要 Spring Security是一个用于在Java应用程序中实…...

MySQL:基础增删查改

MySQL&#xff1a;基础增删查改 插入插入冲突 查询distinctwhereorder bylimit 删除deletetruncate 更新 插入 基本插入语法&#xff1a; insert [into] 表名 (列1, 列2 ...) values (值1, 值2 ...);into可以省略(列1, 列2 ...)与后面的(值1, 值2)一一对应如果插入时数据完全…...

Apache DolphinScheduler 1.3.4升级至3.1.2版本过程中的踩坑记录

因为在工作中需要推动Apache DolphinScheduler的升级&#xff0c;经过预研&#xff0c;从1.3.4到3.1.2有的体验了很大的提升&#xff0c;在性能和功能性有了很多的改善&#xff0c;推荐升级。 查看官方的升级文档&#xff0c;可知有提供升级脚本&#xff0c;如果只是跨小版本的…...

最后一块石头的重量(超级妙的背包问题)

1049. 最后一块石头的重量 II 有一堆石头&#xff0c;用整数数组 stones 表示。其中 stones[i] 表示第 i 块石头的重量。 每一回合&#xff0c;从中选出任意两块石头&#xff0c;然后将它们一起粉碎。假设石头的重量分别为 x 和 y&#xff0c;且 x < y。那么粉碎的可能结果…...

如何评估和提升审查者在前端代码审查中的专业技能?

评估和提升审查者在前端代码审查中的专业技能可以通过以下步骤&#xff1a; 技能评估&#xff1a; 定期进行技能评估&#xff0c;了解审查者在前端开发各方面的能力&#xff0c;包括但不限于HTML、CSS、JavaScript、框架使用、代码规范等。 代码审查实践&#xff1a; 通过实…...

C++(区别于C的)基础内容总结

参考&#xff1a; C 教程 | 菜鸟教程 (runoob.com) 简介 C 被认为是一种中级语言&#xff0c;它综合了高级语言和低级语言的特点。 C 是由 Bjarne Stroustrup 于 1979 年在新泽西州美利山贝尔实验室开始设计开发的。C 进一步扩充和完善了 C 语言&#xff0c;最初命名为带类的C&…...

实现代码灵活性:用Roslyn动态编译和执行存储在数据库中的C#代码

在许多现代应用程序中&#xff0c;动态编译和执行代码是提升灵活性和功能的一种强大技术。本文将介绍如何使用Roslyn编译器平台动态编译和执行存储在数据库中的C#代码&#xff0c;并结合实际公司案例来说明这些技术的应用场景。 1. 引言 在很多应用场景中&#xff0c;我们可能…...

探索哈希表:C++中的实现与操作详解【Map、Set、数据结构】

探索哈希表&#xff1a;C中的实现与操作详解 介绍 哈希表&#xff08;Hash Table&#xff09;是一种常见的数据结构&#xff0c;它提供了一种高效的键值对存储方式&#xff0c;能够快速进行插入、删除和查找操作。在这篇博客中&#xff0c;我们将详细介绍哈希表的概念、在C中的…...

Python酷库之旅-第三方库Pandas(062)

目录 一、用法精讲 241、pandas.Series.view方法 241-1、语法 241-2、参数 241-3、功能 241-4、返回值 241-5、说明 241-6、用法 241-6-1、数据准备 241-6-2、代码示例 241-6-3、结果输出 242、pandas.Series.compare方法 242-1、语法 242-2、参数 242-3、功能 …...

python学习之旅(基础篇看这篇足够了!!!)

目录 前言 1.输入输出 1.1 输入 1.2 输出 2. 变量与常量 2.1 变量 2.2 常量 2.3 赋值 2.4格式化输出 3. 数据类型 4. 四则运算 5.“真与假” 5.1 布尔数 5.2 比较运算和逻辑运算 5.3 布尔表达式 6.判断语句 6.1 基本的if语句 6.2 if-else语句 6.3 if-elif-el…...

Azure OpenAI Embeddings vs OpenAI Embeddings

题意&#xff1a;Azure OpenAI 嵌入与 OpenAI 嵌入的比较 问题背景&#xff1a; Is anyone getting different results from Azure OpenAI embeddings deployment using text-embedding-ada-002 than the ones from OpenAI? Same text, same model, and the results are cons…...

重生奇迹MU职业成长三步走

在重生奇迹MU游戏中&#xff0c;转职是最重要的玩法之一。每个职业在转职后都会发生巨大的变化&#xff0c;经过三次转职后&#xff0c;你才有资格成为该游戏中最强大的冒险者。 一转&#xff0c;一切才刚刚开始 玩家完成第一次转职任务后&#xff0c;标志着我们成功度过了游…...

2024年中国数据中台行业研究报告

数据中台丨研究报告 核心摘要&#xff1a; 数据中台是企业数字化建设的重要构成&#xff0c;其通过整合企业基础设施和数据能力&#xff0c;实现数据资产化和服务复用&#xff0c;降低运营成本&#xff0c;支撑业务创新。受宏观经济影响&#xff0c;部分企业减少了对数据中台等…...

MySQL——数据表的基本操作(一)创建数据表

数据库创建成功后,就需要创建数据表。所谓创建数据表指的是在已存在的数据库中建立新表。需要注意的是&#xff0c;在操作数据表之前&#xff0c;应该使用 “ USE 数据库名 ” 指定操作是在哪个数据库中进行&#xff0c;否则会抛出 “ No database selected ” 错误。创建数据表…...

EPLAN EDZ 文件太大导入很慢如何解决?

目前各个品牌都在提供 EPLAN EDZ部件库文件,但是一般都是一个总的EDZ文件,导入过程中,因为电脑配置和其他问题,导致导入过程中EPLAN会崩溃或者长时间不动。 我们分析下EDZ文件的构成,这是个压缩文件,换了个壳而已。用压缩软件把edz打开,这里不是解压,直接右键,用解压…...

刷题——缺失的第一个正整数

缺失的第一个正整数_牛客题霸_牛客网 我选择了一个我比较能看懂的&#xff0c; int minNumberDisappeared(vector<int>& nums) {// write code heremap<int, int>hash;int n nums.size();//哈希表记录数组中出现的每个数字for(int i 0; i < n; i)hash[n…...

代理设置--一些库的代理设置

首先最好能获取一个免费代理&#xff0c;来继续下面的阅读和实验 也可以在本机设置代理&#xff0c;具体流程由于比较敏感&#xff0c;请自行搜索 代理设置成功后的测试网站是 http://www.httpbin.org/get , 访问该链接可以得到请求相关的信息&#xff0c;返回结果中的 ori…...

眉山网站定制/新野seo公司

本篇主要是为初次部署windows server 2008的朋友做图文指导,希望对您的提高能够有所帮助.步骤如下.1 放入windows server 2008 安装光盘后,重新启动计算机设置biso启动顺序(注意设置bios启动顺序为光盘启动),再启动后,出现如下安装画面.选择语言后点击下一步;<?xml:namespa…...

建设公众号官方网站/永久观看不收费的直播

一、 外设 LED 介绍LED小灯 即发光二极管&#xff0c;发光二极管为二极管中的一种&#xff0c;二极管中有阳极和阴极&#xff0c;电流从正极流向负极导通&#xff0c;反向阻断。其中贴片发光二极管&#xff0c;正向导通电压在1.8V — 2.2V之间&#xff0c;靠电流驱动&#xff0…...

潼关县住房和城乡建设局网站/优化神马网站关键词排名价格

早期的计算机是用来进行军事上枪炮的弹道计算和火力表的测试的&#xff0c;计算机俗称电脑&#xff0c;是一种用于高速计算的电子计算机器&#xff0c;可以进行数值计算&#xff0c;又可以进行逻辑计算&#xff0c;还具有存储记忆功能。计算机是能够按照程序运行&#xff0c;自…...

wordpress首页表单/搜索引擎营销的内容和层次有哪些

9月8日下午消息&#xff0c;淘宝确认与微软达成一项基于微软Silverlight技术的合作项目&#xff0c;该项目能为淘宝卖家提供更多样化的店铺展示方式。另外&#xff0c;淘宝网还将为微软IE8浏览器提供淘宝定制版本。 据悉&#xff0c;这是淘宝与微软总部首次直接达成的合作。之前…...

wordpress支持中文用户名/今日头条指数查询

"The secret of change is to focus all of your energy, not on fighting the old but on building the new.—— Dan Millman"请问视图是什么&#xff1f;视图相关语句有哪些&#xff1f;视图在什么场景下使用&#xff1f;夺命三连更多精彩文章请关注公众号『Pytho…...

山东地产网站建设/最近军事新闻

【按】本文最早发表于2008年8月刊的《软件世界》(目前已经更名为《软件和集成电路》)最近两年我论述过SaaS的四个阶段&#xff1a;SaaS1.0&#xff1a;软件在线化阶段&#xff1b;SaaS2.0&#xff1a;服务在线化阶段&#xff1b;SaaS3.0&#xff1a;能力在线化阶段&#xff1b;…...