差分进化简介及实现
算子课上我讲的PPT,主题是查分演化计算,用到了变异算子,交叉算子和选择算子。复盘分析差分进化与遗传算法相似,这一点,对遗传算法稍微了解的人都会有这样的疑问。该PPT未对二者的区别和联系进行分析。我对二者都有一定的了解,并做过二者的简单实现,理应在这方面做出思考。遗憾的是,演讲结束后,老师问到这个问题,我没有做出较好的回答。介绍完算法的原理后,举了一个非凸函数寻优的例子,并且展示了函数的3D图像和最优函数值演变曲线,这一点很好。介绍图像时,首先要介绍坐标轴的含义和单位,这一点没有照顾好。很明显的一个缺陷是: 缺少该算法在工业上的应用实例。让人感觉该算法只存在于纸面上,却无实际应用价优化问题和近似最优解差分演化算法CONTENTS引言ρ优化问题是一种以数学为基础,用于求解各种工程问题基本原理的应用技术。应用实例优缺点ρ绝大多数的工程问题的求解都可以转换为优化问题,算法改进但是部分问题属于NP问题,很难找到解析解,比如:0研完点1背包、组合优化问题、任务指派等。某些情况下,退而求其次,找到近似最优解即可。针对优化问题的近似解求解,目前已成为了当前一个热点研究方向,催生出一系列的智能算法。智能算法的研究差分演化算法CONTENTS◎1975年: J Holland根据生物进化过程提出了遗传算引言法基本原理ρ1982年: Kirkpatrick模拟冶金学的退火过程提出了模拟应用实例退火算法。优缺点算法改进◎1991年: dorigo.M根据蚂蚁觅食的群体行为提出了蚁研完点群算法。◎1995年: Kennedy根据鸟类觅食的群体行为提出了粒子群算法。ρ1997年: Rainer storr和 Kenneth price.在遗传算法等进化思想的基础上,提出了差分进化算法( DifferentialEvolution, DE差分进化算法简介差分演化算法CONTENTS引言由 Rainer storn和 Kenneth price在1997年为求解切比雪基本原理夫多项式而提出。应用实例优缺点◎是一种随机的并行直接搜索算法,它可以对非线性、不算法改进可微、连续空间函数进行最小化,以其易用性、稳健性研完点和强大的全局寻优能力在多个领域取得成功。◎应用:在约東优化计算、聚类优化计算、飞线性优化控制、神经网络优化、滤波器设计、阵列天线方向图综合等参考文献差分演化算法CONTENTSE Storn, Rainer and Price, Kenneth. Differential evolution引言a simple and efficient heuristic for global optimization over基本原理continuous spaces. Journal of global optimization, 1997应用实例优缺点国杨启文,蔡亮,薛云灿.差分进化算法综述.模式识别与人算法改进工智能,2008研完点圖王培崇,钱旭,王月,虎晓红.差分进化计算研究综述.计算机工程应用,2009E Das, Swagatam and Suganthan, Ponnuthurai Nagaranam. Differential evolution: a survey of the state-of-the-artEvolutionary Computation, IEEE Transactions on, 2011优化问题表示差分演化算法左图是两个参数的函右侧是最优化问题的形式化CONTENTS数的3D图像,可以描述。第一行是目标函数,引基本原理将xy平面的矩形作为表示求函数极小值;然后是应用实例解空间,优化问题就约束条件。优缺点是从解空间中搜索最算法改进大最小值研完点min f(x1, x2st.x;∈[L;,U1≤j≤算法框架差分演化算法迭代过程CONTENTS引种群初始化变异交叉选择基本原理应用实例优缺点种群初始化在解空间中随机、均匀地产生M个个体,每算法改进个个体由n个染色体组成,作为第0代种群,标记为研完点X(0)=(x;1(0),x12(00i=1.2..…,M◎变异、交叉、选择三步操作迭代执行,直到算法收敛。第g次迭代的第i个个体标记为X(g)=(x;1(g),x;2(g),…,x1n(g)1.2.M种群初始化差分演化算法在n维空间里随机产生满足约束条件的M个染色体,第i个染色体的第个维取值方式如下rand(0,1)产生0到1的均匀分布CONTENTS的随机数):引基本原理;(0)=L+mnd(0,1)(U,-L)应用实例M优缺点算法改进研完点均匀分布随机分布聚群分布变异算子差分演化法在第8次迭代中,对个体X(g)=(x18,x12(g),…,xn(g),从种群中随机选择3个个体Xn1(g),X12(g),Xp3(g),且p1≠p2≠CONTENTS13≠i,则引H(g)=Xn1(g)+F.(Xn2(g)-X3)基本原理应用实例其中△p2,n3(8)=Ⅹn2(g)-X(8)是差分向量;F是缩放因子,优缺点用于控制差分向量的影响力算法改进研完点F(xm-x,:)0
- 2021-05-07下载
- 积分:1
K60的中文资料
此文档介绍了K60单片机的一些结构功能,纯中文。K60P144M1OOSF2RM. pdfK60 Sub-Family Reference Manual, Rev. 6. Nov 201夲部分讲解如何配置芯片上的嵌套向量中断控制器。完整信息清参阅htp/www.arm.com。InterruptsModulePPBNested VectoredModuleInterrupt Controller(NVIC)Module图32嵌套向量中断控制器题日相关模块参考链接套问量中断控制器http://www.arm.com系统内存映System memory map时钟Clock distribution电源管理Power management专用外设总线ARM Cortex-M4核心 ARM Cortex-M43.22.1中断优先级器件支持16级中断优先级,因此在嵌套向量中断控制器中,每一个中断源在优先级控制寄存器IP中都有4个位。例如IPRO中3302928a7262524232221a019181716|151413121110976543210R0000006000600000W3.22.2非可屏蔽中断非可屏蔽中断的中断源来自于外部的NM引脚。此引脚是多路复用引脚,必须要配置他的功能,使其成为外部不可屏蔽中断功能引脚。322.3中断分配中断默认按照下表分配向量号:当中断使用时,此值储存在栈中。IRQ号:非核心中断源,对应的编号为终端号减16。IRQ号在ARM的NVC文档中有描述表34中断号分配址址中断编号IRQ号非优先级编中断伏先溟模块描述(1)号(2)级编号(3)ARM核心中析源0x00000000ARM内核切始牟栈指针0x00000004ARM内核初始程序计数器Editbylie:soonli@qq.comK60P144M100SF2RM. pdfK60 Sub-Family Reference Manual, Rev. 6 NoV 2010x00000082AHM内核非可屏蔽中断x00000c3ARM内核哽件故障0x000000101ARM内核存储控制器故障0x0000145ARM内核总线故障0x000000186ARM内核用故障0x000001C70x00002080x0000219x00028100x000002C11ARM内核管理程序调入0x000003012ARM内核周试监控0x000034130x0000003814ARM内核0x0000315ARM内核系统往拍定时器非核心中新源0x00000040160DMADA通道0发送完成0x000000141DMADMA通道⊥发送完成0×00004818DMAD)MA通道2发送完成000401DMA通道3发送完成0x0000020DA通道4发送完成0300052DMA通道5发送完成0x00000582DMADMA通道6发送完成0x000_005C2sDMADMA通道7发送完成0x0000006021DMA通道8发送完成0x0000006425DMADMA通道9发送完成0x0000006826⊥0DMADMA通道10发送完成0x000006C27DMADMA通道11发送完成0x00007028DMA通道12发送完成0x000007429DMA通道13发送完成0x0000087314DMA通道1发送完成0x00007C3IMA通道15发送完成0x00000803216DMADMA通道0-15故障0x00000081MCM0x00000883184闪存命令执行完成0x000008C35闪存读取冲突0x0000009036模式控制掉电中断,电检测低澌喚醒单兀注意:在需要使用低漏检测0x00000094370低漏唤醒|的时候不要禁止这个中断0x000009838看门狗看门狗中断0x0000009c39230x00000A441IICIEditbylie:soonli@qq.com4K60P144M100SF2RM. pdfK60 Sub-Family Reference Manual, Rev. 6 NoV 2010x0000A84SPD所有中断源使用一个向量x0000AC4SPI1所有中断源使用一个向量0x000000B014SPI2所有中断源使用一个向量CR’ ed Message bufi0x000000B44529CANO(0-15)0x00000846CAND总线关闭0x0000BC47错误0x000000C048CANO发送报警x00000C449CANO接收报整0x000000C850CAND唤帼0x00000CC50x0000000520x000000D1537CAN⊥5)0x000000D8CANI总线关闭0x00000DC5CAN⊥错误0x000000E05610发送报警0x0000C457接收报警0x0000E858唤醒0x0000EC59100x0000F06011l⊥0000F461JJARTO串口0状态中新源0x00000F862UARTO串口0错误中新源0y000000FC11UARTI串口1状态中断源0x00010064UARTI串口1错昃中源x0000010465UART2串口2状态中新源000001085650UART2串口2错昃中粉溴0x000067UaRT串口3状态中新源0x000011068UART串口3错误中析源0x0001146gUART4串口4状态中析源00011870UART串口4错误中析源0x0000011C715513UART串口5状态中新源0x0000120721111111UART5串5错误中析源0x00001247370x000128740x00012c75CMPO0x00003076CMPI0x000013476115CMP20x000001387815FTM0所有中断源使一个向量0x000013C7963FTM1所有中断源使用一个向量0x00001408064FTM2所有中断源使用一个向量000014481160x0000014816报警中断Editbylie:soonli@qq.comK60P144M100SF2RM. pdfK60 Sub-Family Reference Manual, Rev. 6 NoV 2010x00014C8x0001508PITPIT通道00x000001518517PITPIT通道10x0000015886017PITPIT通道20x0000015C81PITPIT通道30x0000160882180x000016489USB OTx001689074充电检测0x0000016C|91Ethernet macIEEE1588定时器中断0x000017092Ethernet mac发送中断0x0000017497719Ethernet mac接收中断0x00001789EtherneL mac错误和其他中断0x00017C950x00000180|96SDH0x00184978120DACO0x000001889DACI0x0001899TsT所有中断源使用一个向量0x0000901008120x0000194101低功耗定时器00001981020x000019c10321引因控制模块PORTA引脚中断000001A0104引却控制模块PORTB引脚中断00004105引脚控制模块PORTC引脚中断0x0001AB106引閎控制模块PORTD引脚中断0x00000⊥AC10791引脚控制模块P0RTE引脚中断0×001B01080x000011090×00010701094软中断软件中断(4)(1)表示嵌套向量中断控制器的中断源号(2)表示嵌套向量中断控制器对于响应中断的ISER,ⅠCER,ISPR,ICPR和IABR寄存器的值,计算方法是IRQ的值除以32。(3〕表示嵌套向量中断控制器对于响应中断的IPR寄存器的值,计算方法是IRQ的值狳以4(4)此中断只能被NVC寄存器置位或者清零。3.2.2.3.1确定位域和寄存器的位置,来配置一个特定的中断如果你需要配置低功耗寄存器中断,下面的表格自“中断号分配”地址中断编号1RQ号非优先级编中断优先源模块描述号(2)级编号(3)0x0000019410」2⊥低功耗定时器译者注:下面角标的注解没有被列出,请看上表末尾。1)在NⅥC寄存器中,你需要配置关于中断的信息Editbylie:soonli@qq.comK60P144M100SF2RM. pdfK60 Sub-Family Reference Manual, Rev. 6 NoV 201· NVICISER2NVICICER2· NVICISPR2· NVICICPE2NVICIABR2NVICIPR212)确定特定中淅在相对应的寄存器中的特定位域(汗,这句话怎么这么别扭)。NVICISER2, NVICICER2, NVICISPR2, NVICICPR2, NVICIABR2 7位置=IRQ/32=21NⅥCIPR21位域的起始地址=8*(IRQ/4)+4=12因为 NVICIPR的位域的4位宽,所以 NVICIPR21的范围是12-15。因此,下列的位域的位是用来配置低功耗定时器的中断的。NVICISER2[21]NVICICER2[21NVICISPR2(21NVICICPR2[21NVICIABR2[211NVICIPR21[15: 123.2.3异步唤醒中断的配置夲节概述如何配置芯片中的相应模垬。在AM的文档中有更加完整的描述信息www.armcomClock logicWake-upquesynchronousModuleWake-up InterruptController(AWIC)Module图3-3异步唤醒单元主题相关模块参考链接系统存储映射System memory mat时钟Clock distribution电源管理Powcr managcmcnt嵌套向量中断控制器NVIC唤醒请求AWIC wake-up sources3.2.3.1唤醒源器件使用一下的内部或者外部异步唤醒输入模块Editbylie:soonli@qq.comK60P144M100SF2RM. pdfK60 Sub-Family Reference Manual, Rev. 6 NoV 201唤醒源描述可用的系统复位复位引脚和看门狗(当使用LPO时钟源吋),JTAG接口低电压检测模块控制器低电压警告模块控制器引脚中断引脚控制模块,任何一个中断使能的引胭都可以吹醒系统ADC「当使用内部时钟源的时候可是实现这个功能CMP由于没有系统时钟可以使用,所以此时是无效的LIC地址匹配唤醒接收眺变唤醒USB唤醒功能唤醒低功耗定时器在Stop/ⅥPS模式下有效实时时钟在Stop/ⅦLPS模式卜有效以太网魔法包唤醒SDIIC唤陧功能唤醒IIS唤醒功能唤醒1588时钟唤醒功能唤醒TSICAN3.2.3JTAG控制器配置本节概述如何配置芯片中的相应模块。在后面专门的章节中有更全面的介绍。JTAG controller图3-4JTAG控制器表38相关信息的参考链接题相关模块参考链接仝面介绍JT△GCJTAGC信号传输设置引脚控制Signal multiplexing3.3系统模块3.3.1系统集成控制模块(SIM)配置Editbylie:soonli@qq.comK6OP144M100SF2RM. pdf K60 Sub-Family Reference Manual, Rev. 6 Nov 201本节概述如何配置芯片中的相应模块。在后面专门的章节中有更全面的介绍PeripheralbridgeegisteracceSSResetsMode controller图35系统集成控制模块表39相关信息的参考链接主题相关模块参考链接全面介绍系统集成控制模块系统存储映射Systcm memory maj时钟Clock distribution电源管理Power management3.3.2模式控制器模块本节概述如何配置芯片中的相应模块。在后面专门的章节中有更全面的介绍。PeripheralbridgeRegistResetsMode controller图3-6模式控制模块表3-10相关信息的参考链接题相关模块参考链接全面介绍模式控制模块Mode controllerEditbylie:soonli@qq.comK60P144M100SF2RM. pdfK60 Sub-Family Reference Manual, Rev. 6 NoV 201系统存储映射System memory map电源管理Power management电源管理控制器PMO3.3.3电源管理控制模块本节概述如何配置芯片中的相应模块。在后面专门的章节中有更仝面的介绍PeriphebridgeRegisteraccessPower managementcontroller(PMC)图37电源管理控制模块表3-11相关信息的参考链接主题相关模块参考链接全面介绍PMCPMC系统存储映射System memory map电源管理Powcr managcmcnt面介绍Mode controller低漏唤醒单元LLWU3.3.4低漏唤醒单元节概述如何配置芯片中的相应模块。在后面专门的章节中有更全面的介绍。Editbylie:soonli@qq.com
- 2020-12-03下载
- 积分:1