【智能控制】年末总结,模糊控制,神经网络控制,专家控制,遗传算法
关注作者了解更多
我的其他CSDN专栏
毕业设计
求职面试
大学英语
过程控制系统
工程测试技术
虚拟仪器技术
可编程控制器
工业现场总线
数字图像处理
智能控制
传感器技术
嵌入式系统
复变函数与积分变换
单片机原理
线性代数
大学物理
热工与工程流体力学
数字信号处理
光电融合集成电路技术
电路原理
模拟电子技术
高等数学
概率论与数理统计
数据结构
C语言
模式识别原理
自动控制原理
数字电子技术
关注作者了解更多
资料来源于网络,如有侵权请联系编者
目录
第一章 绪论
1.1 学习智能控制的意义
1.2 智能控制的产生和发展
1.3 智能控制的定义和特点
1.4 智能控制的主要形式
以模糊系统理论为基础的模糊控制
基于脑模型的神经网络控制
基于知识工程的专家控制系统
基于规则的仿人智能控制
1.5 智能控制的现状和发展趋势
第二章 模糊控制的数学基础
2.1 概述
2.3 模糊集合
2.5 模糊关系
小结
第三章 模糊控制
3.1 模糊控制的工作原理
3.2 模糊控制器的结构和设计
3.2.1 模糊化接口
3.2.2 规则库
3.2.3 模糊推理
3.2.4 清晰化接口
3.2.6 模糊控制器的设计内容
第四章 神经网络基本理论
4.1 人工神经元模型
4.2 神经网络的定义和特点
4.4 神经网络的构成和分类
4.4 多层前向BP神经网络
第七章 专家控制技术
7.3 专家系统的推理机制
第八章 遗传算法
8.1.1 遗传算法的由来
8.1.2 遗传算法的基本操作
8.1.3 遗传算法的特点
智能控制理论及应用
第一章 绪论
1.1 学习智能控制的意义
《智能控制》在自动化课程体系中的位置
《智能控制》是一门控制理论课程,研究如何运用人工智能的方法来构造控制系统和设计控制器。与《自动控制原理》和《现代控制原理》一起构成了自动控制课程体系的理论基础。
《智能控制》在控制理论中的位置
《智能控制》是目前控制理论的最高级形式,代表了控制理论的发展趋势,能有效地处理复杂的控制问题。其相关技术可以推广应用于控制之外的领域:金融、管理、土木、设计等等。
1.2 智能控制的产生和发展
产生的背景
智能控制的两个发展方向
智能控制的三个发展阶段
1)萌芽期(1960-1970)
2)形成期(1970-1980)
3)发展期(1980- )
1.3 智能控制的定义和特点
智能控制的定义
IEEE定义:智能控制必须具有模拟人类学习和自适应的能力。
一般来说,一个智能控制系统要具有对环境的敏感,进行决策和控制的功能,根据其性能要求的不同.可以有各种人工智能的水平。
智能控制的特点
1.4 智能控制的主要形式
基于信息论的分级递阶智能控制
以模糊系统理论为基础的模糊控制
基于脑模型的神经网络控制
人工神经网络采用仿生学的观点与方法来研究人脑和智能系统中的高级信息处理。
基于知识工程的专家控制系统
专家控制可定义为:具有模糊专家智能的功能,采用专家系统技术与控制理论相结合的方法设计控制系统。
基于规则的仿人智能控制
仿人智能控制的核心思想是在控制过程中,利用计算机模拟人的控制行为功能,最大限度地识别和利用控制系统动态过程提供的特征信息,进行启发和直觉推理,从而实现对缺乏精确模型的对象迸行有效的控制。其基本原理是模仿人的启发式直觉推理逻辑,即通过特征辩识判断系统当前所处的特怔状态,确定控制的策略,进行多模态控制。
1.5 智能控制的现状和发展趋势
目前的主要研究方向和内容
发展趋势
第二章 模糊控制的数学基础
2.1 概述
模糊数学(模糊集)是模糊控制的数学基础,它是由美国加利福尼亚大学Zadeh教授最先提出的。他将模糊性和集合论统一起来,在不放弃集合的数学严格性的同时,使其吸取人脑思维中对于模糊现象认识和推理的优点。
“模糊”,是指客观事物彼此间的差异在中间过渡时,界限不明显,呈现出的“亦此亦彼”性。“模糊”是相对于“精确”而言的。
“精确”:“老师”、“学生”、“工人”
“模糊”:“高个子”、“热天气”、“年轻人”
模糊数学并不是让数学变成模模糊糊的东西,而是用数学工具对模糊现象进行描述和分析。模糊数学是对经典数学的扩展,它在经典集合理论的基础上引入了“隶属函数”的概念,来描述事物对模糊概念的从属程度。
2.3 模糊集合
(1)模糊集合的定义:
给定论域E中的一个模糊集 A,是指任意元素x∈E,都不同程度地属于这个集合,元素属于这个集合的程度可以用隶属函数 UA(x) ∈[0,1]来表示。
例2.3.1 论域为15到35岁之间的人,模糊集 表示“年轻人”,则模糊集的隶属函数可定义为
则年龄为30岁的人属于“年轻人”的程度为:
(2) 模糊集合的表示法:
1) Zadeh表示法 当论域上的元素为有限个时,定义在该论域上的模糊集可表示为:
注意:式中的“+”和“/”,仅仅是分隔符号,并不代表“加”和“除”。
例2.3.2 假设论域为5个人的身高,分别为172cm、165cm、175cm、180cm、178cm,他们的身高对于“高个子”的模糊概念的隶属度分别为0.8、0.78、0.85、0.90、0.88。则模糊集“高个子”可以表示为
2)序偶表示法 当论域上的元素为有限个时,定义在该论域上的模糊集还可用序偶的形式表示为:
对于上例的模糊集“高个子”可以用序偶法表示为
高个子
3)隶属函数描述法
论域U上的模糊子集可以完全由其隶属函数表示。
假设年龄的论域为U=[15,35],则模糊集“年轻”可用隶属函数表征为:
该隶属函数的形状如图
2.5 模糊关系
模糊关系
人和人之间关系的“亲密”与否? 儿子和父亲之间长相的“相像”与否? 家庭是否“和睦”?
这些关系就无法简单的用“是”或“否”来描述,而只能描述为“在多大程度上是”或“在多大程度上否“。这些关系就是模糊关系。我们可以将普通关系的概念进行扩展,从而得出模糊关系的定义。
① 模糊关系的定义
模糊关系常常用矩阵的形式来描述。假设x∈U,y∈V ,则U到V的模糊关系可以用矩阵描述为
则上例中的模糊关系又可以用矩阵描述为:
例2.5.3 已知
解:根据模糊关系的运算规则得:
小结
模糊集理论是模糊控制的数学基础,是描述模糊性概念的有效的数学工具。模糊集合理论是普通集合理论的拓展,它通过引入隶属函数的概念达到了对模糊概念描述的目的。
本章详细地介绍了模糊集合、模糊关系的概念及其与普通集合、普通关系之间的关系、并给出了如何从人类自然语言规则中提取其蕴涵的模糊关系的方法,介绍了如何根据模糊关系进行模糊推理。
第三章 模糊控制
3.1 模糊控制的工作原理
模糊控制的基本思想
将人类专家对特定对象的控制经验,运用模糊集理论进行量化,转化为可数学实现的控制器,从而实现对被控对象的控制。
人类专家的控制经验是如何转化为数字控制器的 ?
模仿人类的调节经验,可以构造一个模糊控制系统来实现对热水器的控制。
模糊控制器的基本工作原理
3.2 模糊控制器的结构和设计
3.2.1 模糊化接口
模糊化就是通过在控制器的输入、输出论域上定义语言变量,来将精确的输入、输出值转换为模糊的语言值。
模糊化接口的设计步骤事实上就是定义语言变量的过程,可分为以下几步:
1) 语言变量的确定
针对模糊控制器每个输入、输出空间,各自定义一个语言变量。
2)语言变量论域的设计
为了提高实时性,模糊控制器常常以控制查询表的形式出现。该表反映了通过模糊控制算法求出的模糊控制器输入量和输出量在给定离散点上的对应关系。为了能方便地产生控制查询表,在模糊控制器的设计中,通常就把语言变量的论域定义为有限整数的离散论域。
3) 定义各语言变量的语言值
档级多,规则制定灵活,规则细致,但规则多、复杂,编制程序困难,占用的内存较多; 档级少,规则少,规则实现方便,但过少的规则会使控制作用变粗而达不到预期的效果。 因此在选择模糊状态时要兼顾简单性和控制效果。
4)定义各语言值的隶属函数
隶属函数的类型
正态分布型(高斯基函数 )
三角型
梯型
隶属函数确定时需要考虑的几个问题
隶属函数曲线形状对控制性能的影响。
3.2.2 规则库
规则库的描述
规则库由若干条控制规则组成,这些控制规则根据人类控制专家的经验总结得出,按照 IF …is …AND …is …THEN …is…的形式表达。
规则库也可以用矩阵表的形式进行描述。
例如在模糊控制直流电机调速系统中,模糊控制器的输入为E(转速误差)、EC(转速误差变化率),输出为U(电机的力矩电流值)。
在E、EC、U的论域上各定义了7个语言子集:{PB,PM,PS,ZO,NS,NM,NB} 对于E、EC可能的每种取值,进行专家分析和总结后,则总结出的控制规则为:
3.2.3 模糊推理
根据模糊输入和规则库中蕴涵的输入输出关系,通过第二章描述的模糊推理方法得到模糊控制器的输出模糊值
3.2.4 清晰化接口
由模糊推理得到的模糊输出值C*是输出论域上的模糊子集,只有其转化为精确控制量u,才能施加于对象。我们实行这种转化的方法叫做清晰化/去模糊化/模糊判决。
3.2.6 模糊控制器的设计内容
第四章 神经网络基本理论
4.1 人工神经元模型
人工神经元是对人或其它生物的神经元细胞的若干基本特性的抽象和模拟。
生物神经元模型
生物神经元主要由细胞体、树突和轴突组成,树突和轴突负责传入和传出信息,兴奋性的冲动沿树突抵达细胞体,在细胞膜上累积形成兴奋性电位;相反,抑制性冲动到达细胞膜则形成抑制性电位。两种电位进行累加,若代数和超过某个阈值,神经元将产生冲动。
人工神经元模型
模仿生物神经元产生冲动的过程,可以建立一个典型的人工神经元数学模型
常用的激发函数f 的种类 :
1)阈值型函数
2)饱和型函数
3)双曲函数
4)S型函数
5)高斯函数
4.2 神经网络的定义和特点
定义
神经网络系统是由大量的神经元,通过广泛地互相连接而形成的复杂网络系统。
特点
(1)非线性映射逼近能力。任意的连续非线性函数映射关系可由多层神经网络以任意精度加以逼近。
(2)自适应性和自组织性。神经元之间的连接具有多样性,各神经元之间的连接强度具有可塑性,网络可以通过学习与训练进行自组织,以适应不同信息处理的要求。
(3) 并行处理性。网络的各单元可以同时进行类似的处理过程,整个网络的信息处理方式是大规模并行的,可以大大加快对信息处理的速度。
(4)分布存储和容错性。信息在神经网络内的存储按内容分布于许多神经元中,而且每个神经元存储多种信息的部分内容。网络的每部分对信息的存储具有等势作用,部分的信息丢失仍可以使完整的信息得到恢复,因而使网络具有容错性和联想记忆功能。
(5)便于集成实现和计算模拟。神经网络在结构上是相同神经元的大规模组合,特别适合于用大规模集成电路实现。
4.4 神经网络的构成和分类
分类
(1)从结构上划分
通常所说的网络结构,主要是指它的联接方式。神经网络从拓扑结构上来说,主要分为层状和网状结构。
①层状结构:网络由若干层组成,每层中有一定数量的神经元,相邻层中神经元单向联接,一般同层内神经元不能联接。
前向网络:只有前后相邻两层之间神经元相互联接,各神经元之间没有反馈。每个神经元从前一层接收输入,发送输出给下一层。
②网状结构:网络中任何两个神经元之间都可能双向联接。
反馈网络:从输出层到输入层有反馈,每一个神经元同时接收外来输入和来自其它神经元的反馈输入,其中包括神经元输出信号引回自身输入的自环反馈。
混合型网络:前向网络的同一层神经元之间有互联的网络。
(2)从激发函数的类型上划分
高斯基函数神经网络、小波基函数神经网络、样条基函数神经网络等等
(3)从网络的学习方式上划分
①有导师学习神经网络 为神经网络提供样本数据,对网络进行训练,使网络的输入输出关系逼近样本数据的输入输出关系。
②有导师学习神经网络 不为神经网络提供样本数据,学习过程中网络自动将输入数据的特征提取出来。
(4)从学习算法上来划分:
基于BP算法的网络、基于Hebb算法的网络、基于竞争式学习算法的网络、基于遗传算法的网络。
4.4 多层前向BP神经网络
最早由werbos在1974年提出的,1985年由Rumelhart再次进行发展。
多层前向神经网络的结构
多层前向神经网络由输入层、隐层(不少于1层)、输出层组成,信号沿输入——>输出的方向逐层传递。
第七章 专家控制技术
7.1 概述
专家系统是一个具有大量专门知识与经验的程序系统,根据某个领域的专家提供的知识和经验进行推理和判断,模拟人类专家的决策过程。
一般专家系统由知识库、数据库、推理机、解释器及知识获取器五个部分组成。
(1) 知识库。知识库用于存取和管理所获取的专家知识和经验,供推理机利用,具有知识存储、检索、编辑、增删、修改和扩充等功能。
(2) 数据库。用来存放系统推理过程中用到的控制信息、中间假设和中间结果。
(3) 推理机。用于利用知识进行推理,求解专门问题,具有启发推理、算法推理;正向、反向或双向推理;串行或并行推理等功能。
(4) 解释器。解释器用于作为专家系统与用户之间的“人-机”接口,其功能是向用户解释系统的行为。
(5) 知识获取。知识获取是专家系统与专家的“界面”。知识库中的知识一般都是通过“人工移植”方法获得,“界面”就是知识工程师(专家系统的设计者),采用“专题面谈”、“口语记录分析”等方式获取知识,经过整理以后,再输入知识库。
具有专家水平的知识:必须表现专家的技能和高度的技巧以及足够的鲁棒性。系统的鲁棒性是指不管数据正确与否,都能够得到正确的结论或者指出错误。
能进行有效的推理:能够运用专家的经验和知识进行搜索、推理。
具有透明性:在推理时,不仅能够得到答案,而且还能给出推理的依据 具有灵活性:知识的更新和扩充灵活方便
复杂性:人类的知识可以定性或定量的表示,专家系统经常表现为定性推理和定量计算的混合形式,比较复杂
1)规则库
该库存放了若干规则,每条产生式规则是一个以“如果满足这个条件,就应当采取这个操作”形式表示的语句。各条规则之间相互作用不大。规则可有如下形式
2) 数据库
数据库是产生式规则的中心,每个产生式的左边表示在启用这一规则之前数据库内必须准备好的条件。执行产生式规则的操作会引起数据库的变化,这就使得其它产生式规则的条件可能被满足。
3) 控制器
其作用是说明下一步应该选用什么规则,也就是如何运用规则。通常从选择规则到执行规则分成三步:匹配、冲突解决和操作。
① 匹配。把数据库和规则的条件部分相匹配。如果两者完全匹配,则把这条规则称为触发规则。当按规则的操作部分去执行时,这条规则称为被启用规则。
② 冲突解决。当有一个以上的规则条件和当前数据库相匹配时,就需要决定首先使用哪一条规则,这称为冲突解决。
③ 操作。操作就是执行规则的操作部分,经过操作以后,当前数据库将被修改。然后,其他的规则有可能被使用。
7.3 专家系统的推理机制
根据问题求解的推理过程中推理的方向,知识推理方法可分为正向推理、反向推理和正反向混合推理三类。
(1) 正向推理。正向推理是由原始数据出发,按照一定策略,运用知识库中专家的知识,推断出结论的方法。这种推理方式,由于是由数据到结论,也叫数据驱动策略。
(2) 反向推理。反向推理是先提出假设(结论),然后去找支持这个结论的证据的方法。这种由结论到数据的策略称为目标驱动策略。
(3)正反向混合推理。运用正向推理帮助系统提出假设,然后运用反向推理寻找支持该假设的证据。
第八章 遗传算法
遗传算法(Genetic Algorithm,简称GA)作为一种解决复杂问题的优化搜索方法,是由美国密执安大学的John Holland教授首先提出来的(Holland,1975)。遗传算法是以达尔文的生物进化论为启发而创建的,是一种基于进化论中优胜劣汰、自然选择、适者生存和物种遗传思想的优化算法。
遗传算法广泛应用于人工智能、机器学习、知识工程、函数优化、自动控制、模式识别、图像处理、生物工程等众多领域。目前,遗传算法正在向其它学科和领域渗透,正在形成遗传算法、神经网络和模糊控制相结合,从而构成一种新型的智能控制系统整体优化的结构形式。
8.1.1 遗传算法的由来
GA的基本思想来源于Darwin的进化论和Mendel的遗传学说。Darwin的进化论认为每一物种在不断的发展过程中都是越来越适应环境。物种的每个个体的基本特征被后代所继承,但后代又不完全同于父代,这些新的变化,若适应环境,则被保留下来。在某一环境中也是那些更能适应环境的个体特征能被保留下来,这就是适者生存的原理。
遗传算法的出发点是一个简单的群体遗传模型,该模型基于如下假设:
(1)染色体(基因型)由一固定长度的字符串组成,其中的每一位具有有限数目的等位基因。
(2)群体由有限数目的基因型组成。
(3)每一基因型有一相应的适应度(Fitness),表示该基因型生存与复制的能力。适应度为大于零的实数,适应度越大表示生存能力越强。
8.1.2 遗传算法的基本操作
8.1.2.2 交叉(Crossover) 复制(又称繁殖),是从一个旧种群( old population)中选择生命力强的个体位串(或称字符串)产生新种群的过程。或者说,复制是个体位串根据其目标函数(即适应度函数)拷贝自己的过程。根据位串的适应度值拷贝位串意味着,具有较高适应度值的位串更有可能在下一代中产生一个或多个后代。显然,这个操作是模仿自然选择现象,将达尔文的适者生存理论应用于位串的复制,适应度值是该位串被复制或被淘汰的决定因素。
8.1.2.2 交叉(Crossover)交叉是在两个基因型之间进行的,指其中部分内容进行了互换。 A = a1a2…al 和 B = b1b2…bl 若在位置i交换,则产生两个新的串 A′=a1…albi+1…bl 和 B′=b1…blai+1…al
8.1.2.3 变异(Mutation) 若基因型中某个或某几个位置上的等位基因从一种状态跳变到另一种状态(0变为1或1变为0),则称该基因型发生了变异。其中变异的位置也是随机的。
遗传算法的基本步骤
8.1.3 遗传算法的特点
1)GA是对问题参数的编码(染色体)进行操作,而不是参数本身。
(2)GA计算简单,便于计算机编程,功能强。
(3)GA是从问题解的串集开始搜索,而不是从单个解开始,更有利于搜索到全局最优解。
(4)GA使用对象函数值(即适应值)这一信息进行搜索,而不需导数等其它信息。
(5)GA的复制、交叉、变异这三个算子都是由概率决定的,而非确定性的。
(6)GA算法具有隐含的并行性,因而可通过大规模并行计算来提高计算速度。
(7)GA更适合大规模复杂问题的优化,但解决简单问题效率并不高。
相关文章:
【智能控制】年末总结,模糊控制,神经网络控制,专家控制,遗传算法
关注作者了解更多 我的其他CSDN专栏 毕业设计 求职面试 大学英语 过程控制系统 工程测试技术 虚拟仪器技术 可编程控制器 工业现场总线 数字图像处理 智能控制 传感器技术 嵌入式系统 复变函数与积分变换 单片机原理 线性代数 大学物理 热工与工程流体力学 …...
Linux系统 C/C++编程基础——使用make工具和Makefile实现自动编译
ℹ️大家好,我是练小杰,今天周二了,距离除夕只有6天了,新的一年就快到了😆 本文是有关Linux C/C编程的make和Makefile实现自动编译相关知识点,后续会不断添加相关内容 ~~ 回顾:【Emacs编辑器、G…...
kafka学习笔记7 性能测试 —— 筑梦之路
kafka 不同的参数配置对 kafka 性能都会造成影响,通常情况下集群性能受分区、磁盘和线程等影响因素,因此需要进行性能测试,找出集群性能瓶颈和最佳参数。 # 生产者和消费者的性能测试工具 kafka-producer-perf-test.sh kafka-consumer-perf-t…...
C#与AI的共同发展
C#与人工智能(AI)的共同发展反映了编程语言随着技术进步而演变,以适应新的挑战和需要。自2000年微软推出C#以来,这门语言经历了多次迭代,不仅成为了.NET平台的主要编程语言之一,还逐渐成为构建各种类型应用程序的强大工具。随着时…...
multus使用教程
操作步骤如下: 1.在vmware vsphere上配置所有主机使用的端口组安全项 Forged transmits 设置为: Accept Promiscuous Mode 设置为:Accept Promiscuous Mode(混杂模式)和Forged Transmits(伪传输)…...
用JAVA写算法之输入输出篇
本系列适合原来用C语言或其他语言写算法,但是因为找工作或比赛的原因改用JAVA语言写算法的同学。当然也同样适合初学算法,想用JAVA来写算法题的同学。 常规方法:使用Scanner类和System.out 这种方法适用于leetcode,以及一些面试手…...
场馆预定平台高并发时间段预定实现V2
🎯 本文档介绍了场馆预订系统接口V2的设计与实现,旨在解决V1版本中库存数据不一致及性能瓶颈的问题。通过引入令牌机制确保缓存和数据库库存的最终一致性,避免因服务器故障导致的库存错误占用问题。同时,采用消息队列异步处理库存…...
(1)STM32 USB设备开发-基础知识
开篇感谢: 【经验分享】STM32 USB相关知识扫盲 - STM32团队 ST意法半导体中文论坛 单片机学习记录_桃成蹊2.0的博客-CSDN博客 USB_不吃鱼的猫丿的博客-CSDN博客 1、USB鼠标_哔哩哔哩_bilibili usb_冰糖葫的博客-CSDN博客 USB_lqonlylove的博客-CSDN博客 USB …...
Spring Boot 整合 ShedLock 处理定时任务重复执行的问题
🌷 古之立大事者,不惟有超世之才,亦必有坚忍不拔之志 🎐 个人CSND主页——Micro麦可乐的博客 🐥《Docker实操教程》专栏以最新的Centos版本为基础进行Docker实操教程,入门到实战 🌺《RabbitMQ》…...
缓存之美:万文详解 Caffeine 实现原理(上)
由于社区最大字数限制,本文章将分为两篇,第二篇文章为缓存之美:万文详解 Caffeine 实现原理(下) 大家好,我是 方圆。文章将采用“总-分-总”的结构对配置固定大小元素驱逐策略的 Caffeine 缓存进行介绍&…...
PHP语言的网络编程
PHP语言的网络编程 网络编程是现代软件开发中不可或缺的一部分,尤其是在日益发展的互联网时代。PHP(Hypertext Preprocessor)是一种广泛使用的开源脚本语言,专门用于Web开发。它的灵活性、易用性以及强大的社区支持使得PHP在网络…...
【技巧】优雅的使用 pnpm+Monorepo 单体仓库构建一个高效、灵活的多项目架构
单体仓库(Monorepo)搭建指南:从零开始 单体仓库(Monorepo)是一种将多个相关项目集中管理在一个仓库中的开发模式。它可以帮助开发者共享代码、统一配置,并简化依赖管理。本文将通过实际代码示例࿰…...
算法项目实时推流
1、搭建流媒体服务器 下载mediamtx 2、视频流直推 ffmpeg -stream_loop -1 -i DJI_20250109112715_0002_W.MP4 -r 30 -c:v libx264 -preset ultrafast -f flv rtmp://192.168.100.20:1935/live/test_chengdu1 3、硬件加速 如果硬件支持,可以使用硬件加速编码器&am…...
软件测试—— 接口测试(HTTP和HTTPS)
软件测试—— 接口测试(HTTP和HTTPS) HTTP请求方法GET特点使用场景URL结构URL组成部分URL编码总结 POST特点使用场景请求结构示例 请求标头和响应标头请求标头(Request Headers)示例请求标头 响应标头(Response Header…...
PCL K4PCS算法实现点云粗配准【2025最新版】
目录 一、算法原理1、算法概述2、算法流程3、参考文献二、 代码实现1、原始版本2、2024新版三、 结果展示本文由CSDN点云侠原创,原文链接,首发于:2020年4月27日。如果你不是在点云侠的博客中看到该文章,那么此处便是不要脸的抄袭狗。 博客长期更新,本文最近一次更新时间为…...
Docker 学习总结(85)—— docker cp 使用总结
前言 在现代软件开发中,Docker 已成为一种流行的容器化技术。无论是在开发、测试还是生产环境中,管理容器内的文件都是一项常见且重要的任务。本文将详细介绍如何使用 docker cp 命令在 Docker 容器与宿主机之间拷贝文件和目录,并结合一些实际使用场景,帮助您更高效地管理…...
《FMambaIR:一种基于混合状态空间模型和频域的方法用于图像恢复》学习笔记
paper:(PDF) FMambaIR: A Hybrid State Space Model and Frequency Domain for Image Restoration 目录 摘要 一、引言 二、相关工作 1、图像恢复 2、频率学习 3、状态空间模型(SSM) 三、框架 1、基本知识 2、整体框架 3、F-Mamba…...
PyQt5 超详细入门级教程上篇
PyQt5 超详细入门级教程 上篇:1-3部分:PyQt5基础与常用控件 第1部分:初识 PyQt5 和安装 1.1 什么是 PyQt5? PyQt5 是 Python 的图形用户界面 (GUI) 框架,它基于强大的 Qt 库。Qt 是一个跨平台的 C 框架,用…...
通信协议—WebSocket
一、WebSocket编程概念 1.1 什么是WebSocket WebSocket 是一种全双工通信协议,允许在客户端(通常是浏览器)和服务器之间建立持久连接,以实现实时的双向通信。它是 HTML5 标准的一部分,相比传统的 HTTP 请求ÿ…...
FFmpeg音视频采集
文章目录 音视频采集音频采集获取设备信息录制麦克风录制声卡 视频采集摄像机画面采集 音视频采集 DirectShow(简称DShow)是一个Windows平台上的流媒体框架,提供了高质量的多媒体流采集和回放功能,它支持多种多样的媒体文件格式&…...
【微机原理与接口技术】定时控制接口
文章目录 8253的引脚和工作方式内部结构和引脚工作方式方式0:计数结束中断方式1:可编程单稳脉冲方式2:周期性负脉冲输出方式3:方波发生器方式4:软件触发的单次负脉冲输出方式5:硬件触发的单次负脉冲输出各种…...
AG32 FPGA 的 Block RAM 资源:M9K 使用
1. 概述 AG32 FPGA 包含了 4 个 M9K 块,每个 M9K 块的容量为 8192 bits,总计为 4 个 M9K(4K bytes)。这使得 AG32 的内部存储非常适合嵌入式应用,能够有效地利用片上资源。 M9K 参数 参考自《AGRV2K_Rev2.0.pdf》。…...
第3天:阿里巴巴微服务解决方案概览
一、阿里巴巴微服务解决方案概述 阿里巴巴在微服务领域贡献了多个开源项目,形成了完整的微服务解决方案,广泛应用于分布式系统开发。其中,Spring Cloud Alibaba 是基于 Spring Cloud 构建的一站式微服务解决方案,集成了多个阿里巴…...
在Ubuntu上安装RabbitMQ教程
1、安装erlang 因为rabbitmq是基于erlang开发的,所以要安装rabbitmq,首先需要安装erlang运行环境 apt-get install erlang执行命令查是否安装成功:erl,疯狂 Ctrlc 就能退出命令行 2、安装rabbitmq 1、查看erlang与rabbitmq版本…...
WPF 引发类型为“System.Windows.Forms.AxHost+InvalidActiveXStateException”的异常 解决办法
本章讲述:引发类型为“System.Windows.Forms.AxHostInvalidActiveXStateException”的异常 解决办法。 这几天在做一个WPF功能时,因为引用了第三方的OCX控件,一般来说一个对象只要实例化就行了, 但是在引用这个控件时就报引发类型为“System.…...
Vue 3中导航守卫(Navigation Guard)结合Axios实现token认证机制
在Vue 3中,导航守卫(Navigation Guard)用于拦截路由的变化,可以在用户访问页面前进行检查。结合Axios进行token认证机制时,我们可以通过导航守卫在路由跳转时,检查用户的认证状态,确保用户有有效…...
代码随想录算法【Day28】
Day28 122.买卖股票的最佳时机 II 最终利润是可以分解的 假如第 0 天买入,第 3 天卖出,那么利润为:prices[3] - prices[0]。 相当于(prices[3] - prices[2]) (prices[2] - prices[1]) (prices[1] - prices[0])。 所以把利润分解为每天…...
【21】Word:德国旅游业务❗
目录 题目 NO1.2.3 NO4 NO5.6 NO7 NO8.9.10.11 题目 NO1.2.3 F12:另存为布局→页面设置→页边距:上下左右选中“德国主要城市”→开始→字体对话框→字体/字号→文本效果:段落对话框→对齐方式/字符间距/段落间距 NO4 布局→表对话框…...
基于 MDL 行情插件的中金所 L1 数据处理最佳实践
本文介绍了如何通过 DolphinDB 的 MDL 插件订阅并处理中金所 Level 1 实时数据。首先,文章简要介绍了 MDL 插件的功能和作用。它是基于 MDL 官方提供的行情数据服务 C SDK(即 TCP 版本 MDL )实现,提供了实时数据获取和处理的能力。…...
在 vscode + cmake + GNU 工具链的基础上配置 JLINK
安装 JLINK JLINK 官网链接 下载安装后找到安装路径下的可执行文件 将此路径添加到环境变量的 Path 中。 创建 JFlash 项目 打开 JFlash,选择新建项目 选择单片机型号 在弹出的窗口中搜索单片机 其他参数根据实际情况填写 新建完成: 接下来设置…...
靶机复现-pikachu靶机文件包含漏洞
本篇文章旨在为网络安全渗透测试靶机复现学习。通过阅读本文,读者将能够对渗透pikachu靶场文件包含漏洞复现有一定的了解 原文学习链接 CSDN博主:One_Blanks主页地址 靶机资源下载 PHPStudy pikachu 一、前言 文件包含漏洞是编程中的一种安全隐患&a…...
如何写出优秀的提示词?ChatGPT官方的六种方法
使用ChatGPT时,提示词(Prompt)的质量直接影响到生成结果的好坏。ChatGPT官方文档中提供了六种优化提示词的方法,这些方法能够帮助用户更好地利用ChatGPT,提升其生成内容的准确性和实用性。本文将结合中文习惯和新的示例…...
【数据结构】顺序表和链表
线性表 线性表是n个具有相同特性的数据元素的有限序列。 线性表是一种在实际中广泛使用的数据结构,常见的线性表:顺序表、链表、栈、队列、字符串… 线性表在逻辑上是线性结构,也就说是连续的一条直线。但是在物理结构上并不一定是连续的,线…...
StarRocks强大的实时数据分析
代码仓库:https://github.com/StarRocks/starrocks?tabreadme-ov-file StarRocks | A High-Performance Analytical Database 快速开始:StarRocks | StarRocks StarRocks 是一款高性能分析型数据仓库,使用向量化、MPP 架构、CBO、智能物化…...
20250121在Ubuntu20.04.6下使用Linux_Upgrade_Tool工具给荣品的PRO-RK3566开发板刷机
sudo upgrade_tool uf update.img 20250121在Ubuntu20.04.6下使用Linux_Upgrade_Tool工具给荣品的PRO-RK3566开发板刷机 2025/1/21 11:54 百度:ubuntu RK3566 刷机 firefly rk3566 ubuntu upgrade_tool烧写详解 https://wiki.t-firefly.com/Core-3566JD4/03-upgrad…...
python学opencv|读取图像(四十一 )使用cv2.add()函数实现各个像素点BGR叠加
【1】引言 前序已经学习了直接在画布上使用掩模,会获得彩色图像的多种叠加效果,相关文章链接为: python学opencv|读取图像(四十)掩模:三通道图像的局部覆盖-CSDN博客 这时候如果更进一步,直接…...
150 Linux 网络编程6 ,从socket 到 epoll整理。listen函数参数再研究
一 . 只能被一个client 链接 socket例子 此例子用于socket 例子, 该例子只能用于一个客户端连接server。 不能用于多个client 连接 server socket_server_support_one_clientconnect.c /* 此例子用于socket 例子, 该例子只能用于一个客户端连接server。…...
学习ASP.NET Core的身份认证(基于JwtBearer的身份认证9)
测试数据库中只有之前记录温湿度及烟雾值的表中数据较多,在该数据库中增加AppUser表,用于登录用户身份查询,数据库表如下所示: 项目中安装SqlSugarCore包,然后修改控制器类的登录函数及分页查询数据函数ÿ…...
【数据分析(二)】初探 Pandas
目录 引言1. 基本数据结构1.1. Series 的初始化和简单操作1.2. DataFrame 的初始化和简单操作1.2.1. 初始化与持久化1.2.2. 读取查看1.2.3. 行操作1.2.4. 列操作1.2.5. 选中筛查 2. 数据预处理2.0. 生成样例表2.1. 缺失值处理2.2. 类型转换和排序2.3. 统计分析 3. 数据透视3.0.…...
大数据与AI驱动的商业查询平台:企业市场拓展的变革引擎
在竞争白热化的商业环境里,企业对准确市场信息的高效获取能力,直接关系到业务拓展的成败。商业查询平台借助大数据和人工智能技术,为企业提供精准客户筛选、市场拓展分析以及风险评估服务,正逐渐成为企业市场开拓的得力助手。本文…...
k8s namespace绑定节点
k8s namespace绑定节点 1. apiserver 启用准入控制 PodNodeSelector2. namespace 添加注解 scheduler.alpha.kubernetes.io/node-selector3. label node 1. apiserver 启用准入控制 PodNodeSelector vim /etc/kubernetes/manifests/kube-apiserver.yaml spec:containers:- co…...
ChatGPT被曝存在爬虫漏洞,OpenAI未公开承认
OpenAI的ChatGPT爬虫似乎能够对任意网站发起分布式拒绝服务(DDoS)攻击,而OpenAI尚未承认这一漏洞。 本月,德国安全研究员Benjamin Flesch通过微软的GitHub分享了一篇文章,解释了如何通过向ChatGPT API发送单个HTTP请求…...
2024微短剧行业生态洞察报告汇总PDF洞察(附原数据表)
原文链接: https://tecdat.cn/?p39072 本报告合集洞察从多个维度全面解读微短剧行业。在行业发展层面,市场规模与用户规模双增长,创造大量高收入就业岗位并带动产业链升级。内容创作上,精品化、品牌化趋势凸显,题材走…...
【JavaSE】(8) String 类
一、String 类常用方法 1、构造方法 常用的这4种构造方法:直接法,或者传参字符串字面量、字符数组、字节数组。 在 JDK1.8 中,String 类的字符串实际存储在 char 数组中: String 类也重写了 toString 方法,所以可以直…...
算法竞赛之差分进阶——等差数列差分 python
目录 前置知识进入正题实战演练 前置知识 给定区间 [ l, r ],让我们把数组中的[ l, r ] 区间中的每一个数加上c,即 a[ l ] c , a[ l 1 ] c , a[ l 2] c , a[ r ] c; 怎么做?很简单,差分一下即可 还不会的小伙伴点此进入学习 进入正题 …...
细说STM32F407单片机电源低功耗StopMode模式及应用示例
目录 一、停止模式基础知识 1、进入停止模式 2、停止模式的状态 3、退出停止模式 4、SysTick定时器的影响 二、停止模式应用示例 1、示例功能和CubeMX项目配置 (1)时钟 (2)RTC (3)ADC1 …...
LeetCode hot 力扣热题100 二叉树的中序遍历(非递归)
以下是代码中每行的详细注释以及整体思路: class Solution { public:vector<int> inorderTraversal(TreeNode* root) {// 定义存储结果的向量,用于存储中序遍历结果vector<int> result;// 定义一个栈,存储节点和访问状态。pair的…...
Flink底层架构与运行流程
这张图展示了Flink程序的架构和运行流程。 主要组件及功能: Flink Program(Flink程序): 包含Program code(程序代码),这是用户编写的业务逻辑代码。经过Optimizer / Graph Builder(…...
人工智能之深度学习_[4]-神经网络入门
文章目录 神经网络基础1 神经网络1.1 神经网络概念1.1.1 什么是神经网络1.1.2 如何构建神经网络1.1.3 神经网络内部状态值和激活值 1.2 激活函数1.2.1 网络非线性因素理解1.2.2 常见激活函数1.2.2.1 Sigmoid 激活函数1.2.2.2 Tanh 激活函数1.2.2.3 ReLU 激活函数1.2.2.4 SoftMa…...
ASP.NET Blazor部署方式有哪些?
今天我们来说说Blazor的三种部署方式,如果大家还不了解Blazor,那么我先简单介绍下Blazor Blazor 是一种 .NET 前端 Web 框架,在单个编程模型中同时支持服务器端呈现和客户端交互性: ● 使用 C# 创建丰富的交互式 UI。 ● 共享使用…...