自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

逝年的博客

但知行好事,莫要问前程。

  • 博客(76)
  • 收藏
  • 关注

原创 无约束一维极值——进退法

前言在求解目标函数的极小值的过程中,若对设计变量的取值范围不加限制,称这种最优化问题为无约束优化问题。尽管对于机械的优化设计问题,多数是有约束的,但无约束最优化方法仍然是最优化设计的基本组成部分。因为约束最优化问题可以通过对约束条件的处理,转化为无约束最优化问题来求解。无约束一维极值问题求解时一般采用一维搜索法,其中方法包括多种。线性搜索包括黄金分割、斐波那契法、牛顿法等,非线性搜索包括抛物线法和三次插值法。1.无约束算法基础...

2021-07-03 15:05:27 1752

原创 遗传算法求解非线性规划

通常非线性整数规划是一个具有指数复杂度的NP问题。如果约束较为复杂,MATLAB优化工具箱和一些优化软件如lingo等,常常无法应用,即使能应用也不能给出一个较为令人满意的解。这时就需要针对问题设计专门的优化算法。将遗传算法应用于非线性规划,是提高最优化质量改善收敛效果的有效途径。下述遗传算法在非线性规划中的具体应用,设计并实现求解非线性规划问题的遗传算法。...

2021-07-01 22:52:41 4319 8

原创 遗传算法的求解优化

多极值点函数具有多个极值,对此问题,传统的优化技术很容易陷人局部最优解,求得全局优化解的概率不高,可靠性低;为此,建立尽可能大概率的求解全局优化解算法是求解函数优化的一个重要问题。在MATLAB中,可以使用遗传算法接近标准优化算法无法解决或者很难解决的优化问题。遗传算法的搜索能力主要由选择算子及交叉算子赋存,变异算子尽可能保证算法达到全局最优,避免陷入局部最优。在使用遗传算法求解优化的时候,经常会用到工具箱globaloptimdemos内的绘制函数图形的函数plotobective。例1使用 MA

2021-06-29 23:22:36 4782 6

原创 vs code导入python模块

解决vc code上出现的错误ModuleNotFoundError: No module named ‘beautifulsoup4’1.没有在系统变量上面添加pip路径的可以先添加一下要不然会出现错误,找不到pip,这个问题很容易忽略2.打开vs code新建终端,先进入python路径下的Scripts文件中,注意是python安装的路径下,不是vs code路径下然后输入.\pip install 模块名即可添加模块这就表示安装成功了...

2021-06-28 22:39:34 1398

原创 遗传算法在TSP中的应用

旅行商问题( traveling salesman problem, TSP),也称货郎担问题,是数学领域中的著名问题之一。TSP 问题已经被证明是一个NP-hard问题,由于TSP问题代表一类组合优化问题,因此对其近似解的研究一直是算法设计的一个重要问题。TSP问题从描述。上来看是一个非常简单的问题,给定n个城市和各城市之间的距离,寻找一条遍历所有城市且每个城市只被访问一次的路径,并保证总路径距离最短。其数学描述如下:...

2021-06-27 12:49:40 757

原创 利用遗传算法求解函数极值

1.利用遗传算法求解函数极值例1 利用遗传算法求函数f(x) = 11sin(6x) + 7cos(5x),x∈[- π,π]的最大值点。解:在MATLAB中编制绘制函数曲线的代码,运行得到题中函数的曲线图如下图所示。从下图中可以看出,该函数有多个极值点,如果使用其他的搜寻方法,很容易陷人局部最小点,而不能搜寻到真正的全局最小点,但遗传算法可以较好地弥补这个缺陷。遗传算法的具体实现如下。问题分析在本题中,设定自变量x为个体的基因组,即用二进制编码表示x;设定函数值f(x)为个体的适应度,

2021-06-26 17:23:36 9923 4

原创 遗传算法的GUI实现

对于不擅长编程的用户,可以利用GUI实现遗传算法的编程。GUI实现遗传算法的方法。在MATLAB命令行窗口输人optimtool,可以打开如图所示的界面。遗传算法工具箱GUI窗口只包括File和Help两个菜单项。前者用于算法的数据处理,后者用于获取使用帮助。File 菜单项如图其中, Reset Optimization Tool:重置工具箱GUI参数。Clear Problem Fields:清空问题变量,包含适应度函数、变量个数和算法参数等。Import Options:导人遗传算法

2021-06-24 21:23:20 812

原创 遗传算法matlab工具箱及其应用

前言为了省略艰深难懂的遗传算法数学理论和降低程序开发的难度,MATLAB软件已经将遗传算法命令进行了封装,做成专门的遗传算法工具箱(GA Toolbox),方 便用户调用

2021-06-24 20:49:25 5181

原创 遗传算法设计实例

1.程序设计随机初始化种群P(t)={xr.p…x.),计算P(t)中个体的适应值。其MATLAB程序的基本格式如下:Begint-0初始化P(t)计算P(t)的适应值;while (不满足停止准则) do begin t=t+1 从P(t+1)中选择P(t) 重组P(t) 计算P(t)的适应值end例1 求函数 f(x) =9*sin(5x) + cos(4x),x∈[0,15]的最大值解:初始化(编码)在这里插入代码片...

2021-06-23 21:58:54 5221 2

原创 遗传算法原理介绍

前言遗传算法( genetic algorithm,GA)是模拟自然界生物进化机制的一种算法,即遵循适者生存、优胜劣汰的法则,也就是寻优过程中有用的保留无用的则去除。在科学和生产实践中表现为在所有可能的解决方法中找出最符合该问题所要求的条件的解决方法,即找出一个最优解。1.1遗传算法的基本概念遗传算法是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解的方法。遗传算法最初由美国Michigan大学Holland教授首先提出来的,并出版了颇有影响的

2021-06-22 22:32:47 7889

原创 matlab非线性规划

1.非线性规划基础

2021-06-20 19:53:34 6743 1

原创 matlab线性规划

1.线性规划概念线性规划模型首先是列出约束条件及目标函数,然后画出约束条件所表示的可行域,最后在可行域内求目标函数的最优解及最优值。线性规划模型求解流程图如图所示

2021-06-18 21:52:05 4014 1

原创 matlab编写关于离散的傅里叶变换

1.傅里叶级数和傅里叶变换描述周期现象最简单的周期函数是物理学上所说的谐波函数,它是由正弦或者余弦函数来表示y(t) = Acos(wt + φ)利用三角公式,上式可以写成y(t) = Acosφcoswt 一 Asinφsint,由于φ是常数,令a= Acosφ,b= 一Asinφ,那么可以得到y(t) = acoswt十bsinwt,式中A=√a2+b2,φ=arctan(-a/b),从这里可以看出:一个带初相位的余弦函数可以看成是一个不带初相位的正弦函数与一个不带初相位的余弦函数的合成。谐波函数是

2021-06-12 18:39:25 11789 2

原创 matlab编写信号的变换

前言信号与系统的分析方法中,除了时域分析方法外,还有变换域分析的方法。连续时间信号与系统的变换域分析方法主要是傅里叶变换和拉普拉斯变换。离散时间信号的Z变换是分析线性时不变离散时间系统问题的重要工具,在数字信号处理、计算机控制系统等领域有着广泛的应用。学习目标:(1)了解、熟悉Z变换的概念与性质;(2)理解Z反变换的相关内容;(3)掌握离散系统中的Z域描述方法;(4)了解、熟悉傅里叶级数与变换;(5)理解离散傅里叶变换及其性质;(6)实现频率域采样和快速傅里叶变换;(7)熟悉实现离散余弦

2021-06-12 14:34:46 1747

原创 matlab编写关于离散时间信号的基础运算

1.离散时间系统离散时间系统是将输人序列x(n)(通常称做激励)变换成输出序列y(n)(通常称做响应)的一种运算,变换过程用T[ ]描述。因此,一个离散时间系统可以表示为y(n) = T[x(n)]离散时间系统还可分成线性和非线性两种。同时具有叠加性和齐次性(均匀性)的系统,通常称为线性离散系统。当若干个输入信号同时作用于系统时,总的输出信号等于各个输人信号单独作用时所产生的输出信号之和,这个性质称为叠加性。线性系统(linear system):满足叠加原理的系统。线性系统用数学语言描述如下:若

2021-06-11 23:04:15 4546

原创 matlab编写连续时间系统的时域分析

1.连续时间系统的时域的零状态响应与零输入响应的求解分析对于低阶系统,一般可以通过解析的方法得到响应,但是,对于高阶系统,手工计算就比较困难,这时MATLAB强大的计算功能就比较容易确定系统的各种响应,如冲激响应、阶跃响应.零状态响应、全响应等。连续时间系统可以用常系数微分方程来描述,其完全响应由零输人响应和零状态响应组成。MATLAB符号工具箱提供了dsolve函数,可以实现对常系数微分方程的符号求解,其调用格式为dsolve( ‘eq1, eq2, … .’, ‘cond1, cond2, …’,

2021-06-10 20:20:51 4173

原创 matlab编写关于信号波形的产生

信号波形的产生前言在MATLAB中,对基本信号的产生提供了许多相应的函数,下面将对一些基本的函数进行介绍。1.线性调频函数与方波函数在MATLAB中,产生线性调频扫频信号函数chirp调用格式如下;y=chirp(t,f0,t1,fl):产生一个线性(频率随时间线性变化)信号,其时间轴设置由数组t定义。时刻0的瞬间频率为f0,时刻t1的瞬间频率为f1.默认情况,f0 = 0Hz,tl=1,f1 = 100Hz。y= chirp(t,f0,t1,f1, ‘method’);指定改变扫频的方法。可用

2021-06-08 20:22:45 5892

原创 matlab编写信号的基本运算

信号的基本运算1.序列相加与相乘信号相加的表达式为x(n)=x1(n)+x2(n),信号相乘,即两个序列的乘积(或者点乘),表达式为x(n)=x1(n)·x2(n),即x=x1+x2 ; x=x1.*x2 这里就不放代码了,大概步骤就是生成两个序列,然后单独画图,再把运算后的序列显示出来。2.序列累加与序列值乘积序列累加就是求序列x(n)两点n1和n2之间的所有序列值之和,序列累加可以利用sum函数实现。序列值的乘积是求x(n)两点n1和n2之间所有序列值的乘积可以用prod函数实现。注意序

2021-06-07 19:51:53 4116 6

原创 matlab编写离散时间序列

1.单位采样序列单位采样序列定义为其中单位采样序列德尔塔n的特点就是n=0时值为1,n取其他值,序列值为0代码如下:(产生单位采样序列德尔塔n和德尔塔(n-10))clear all;n= 50;x= zeros(1,n);%产生n点的单位采样序列x(1)=1;xn=0:n- 1;subplot(121);stem(xn,x);grid onaxis([-1 51 0 1.1]);title('单位采样序列δ(n)')ylabel('δ(n)');xlabel('n');k

2021-06-06 18:02:22 4648 4

原创 matlab学习基础(离散信号,采样信号)

时光荏苒,青春不在,唯一值得怀恋的就是学习时光的那一段刻骨铭心的日子,经过一年的朝七夜十一的日子,即将踏入新的研究生阶段,入学前夕,闲来用matlab记录这段经历,因为专业的原因,计划学 习matlab信号处理,matlab图像处理,matlab优化算法,matlab智能算法,即参考书目。

2021-06-06 16:41:02 3758 2

原创 matlab 实现图像找不同

clc;close all;clear all;file_path='文件路径';img_path_list=dir(strcat(file_path,'*jpg'));%获取文件img_num = length(img_path_list); %获取图像总数量I=cell(1,img_num);if img_num > 0 %判断符合条件的图像 for j=1:img_num

2020-05-09 19:20:31 3735 18

原创 智能汽车发展

一. 5G车联网对自动驾驶技术发展的影响基于专用短程通信(Dedicated Short RangeCommunications, DSRC)的车联网技术存在一些不足之处,基于 5G 网络的车联网技术可以提供更快的传输速率,对自动驾驶的发展具有很好的助推作用。车联网的定义是:借助新一代信息和通信技术,实现车内、车与车、车与路、车与人、车与服务平台的 V2X(Vehicle to Everyt...

2019-12-20 18:40:59 1208 3

原创 序列检测器

[例1] 一个简单的状态机设计--序列检测器序列检测器的逻辑功能描述:序列检测指的就是将一个指定的序列从数字码流中识别出来。本例中,我们将设计一个“10010”序列的检测器。设X为数字码流输入,Z为检出标记输出,高电平表示“发现指定序列”,低电平表示“没有发现指定序列”。考虑码流为“ 110010010000100101…” 则有下表:在时钟2-6,码流X中出现指定序列“10010”,对应...

2019-12-13 18:21:46 2770

原创 设计练习

前言:通过一个多月的学习和复习,现在对FPGA又有一个认识,在以前的基础上又更上了一步,个人认为夏宇闻讲的这本书,对于初学者学习还是有些难度的,幸好以前有些基础,不然看起来还是有些吃力的。在前面学习的基础上,通过练习,一定能逐步掌握 Verilog HDL 设计的要点。我们可以先理解样板模块中每一条语句的作用,然后对样板模块进行综合前和综合后仿真,再独立完成每一阶段规定的练习。当十个阶段的练习...

2019-12-11 16:40:48 517 2

原创 RISC CPU结构

什么是CPU?CPU 即中央处理单元的英文缩写,它是计算机的核心部件。计算机进行信息处理可分为两个步骤:将数据和程序(即指令序列)输入到计算机的存储器中。从第一条指令的地址起开始执行该程序,得到所需结果,结束运行。CPU的作用是协调并控制计算机的各个部件执行程序的指令序列,使其有条不紊地进行。因此它必须具有以下基本功能:a)取指令:当程序已在存储器中时,首先根据程序入口地址取出一条程序...

2019-12-09 17:10:07 4059 1

原创 状态机的置位与复位

1.状态机的异步置位与复位异步置位与复位是与时钟无关的.当异步置位与复位到来时它们立即分别置触发器的输出为1或0,不需要等到时钟沿到来才置位或复位。把它们列入always块的事件控制括号内就能触发always块的执行,因此,当它们到来时就能立即执行指定的操作。状态机的异步置位与复位是用always块和事件控制实现的。先让我们来看一下事件控制的语法:事件控制语法@( <沿关键词 时钟信...

2019-12-07 14:39:06 3231

原创 时序逻辑电路设计实例

时序逻辑电路设计实例:[例1]触发器设计实例module dff( q, data, clk); output q; input data, clk; reg q; always @( posedge clk ) begin q = data; endendmodule[例2]. 电平敏感型锁存器设计实例之一module latch1( q, data, clk)...

2019-12-05 19:06:31 2505

原创 可综合风格的Verilog HDL模块实例

可综合风格的Verilog HDL模块实例:1. 组合逻辑电路设计实例[例1] 八位带进位端的加法器的设计实例(利用简单的算法描述)module adder_8(cout,sum,a,b,cin); output cout; output [7:0] sum; input cin; input[7:0] a,b; assign {cout,sum}=a+b+cin;//位拼接en...

2019-12-05 17:13:04 670

原创 用Verilog HDL语言设计可综合的状态机的指导原则

用Verilog HDL语言设计可综合的状态机的指导原则:因为大多数FPGA内部的触发器数目相当多,又加上独热码状态机( one hot state machine)的译码逻辑最为简单, 所以在设计采用FPGA实现的状态机时往往采用独热码状态机(即每个状态只有一个寄存器置位的状态机)。建议采用case,casex,或casez语句来建立状态机的模型, 因为这些语句表达清晰明了,可以方便地从当前...

2019-12-05 16:26:42 845

原创 有限状态机和可综合风格的Verilog HDL

有限状态机有限状态机是由寄存器组和组合逻辑构成的硬件时序电路,其状态(即由寄存器组的1和0的组合状态所构成的有限个状态)只可能在同一时钟跳变沿的情况下才能从一个状态转向另一个状态,究竟转向哪一状态还是留在原状态不但取决于各个输入值,还取决于当前所在状态。(这里指的是米里Mealy型有限状态机,而莫尔Moore型有限状态机究竟转向哪一状态只决于当前状态。)Mealy状态机:时序逻辑的输出不仅取...

2019-11-26 15:47:57 355

原创 基本运算逻辑和它们的Verilog HDL 模型

4.多路器多路选择器(Multiplexer)简称多路器,它是一个多输入、单输出的组合逻辑电路,在数字系统中有着广泛的应用。它可以根据地址码的不同,从多个输入数据中选取一个,让其输出到公共的输出端。在算法电路的实现中多路器常用来根据地址码来调度数据。我们可以很容易地写出一个有两位地址码,可以从四组输入信号线中选出一组通过公共输出端输出的功能表。如;module Mux_8( add...

2019-11-20 22:20:47 844 1

原创 基本运算逻辑和它们的Verilog HDL 模型

前言:复杂的算法数字逻辑电路是由基本运算逻辑、数据流动控制逻辑和接口逻辑电路所构成的,对基本运算逻辑的深入了解是设计复杂算法逻辑系统电路结构的基本功。这部分知识应该是数字系统和计算机结构课程讲述的内容,为了能熟练地把学过的基础知识运用到设计中去,有必要在这里把提高加法器、乘法器速度的电路结构原理和方法简单地复习一下,并把流水线设计的概念也在这其中引入。1.加法器在数字电路课程里我已学习过一位...

2019-11-14 18:00:28 1100

原创 Verilog 语法知识3

Verilog 语法知识311.结构体说明语句,Verilog语言中的任何过程模块都从属于以下四种结构的说明语句。initial说明语句always说明语句task说明语句function说明语句注意:initial和always说明语句在仿真的一开始即开始执行。initial语句只执行一次。相反,always语句则是不断地重复执行,直到仿真过程结束。在一个模块中,使用initia...

2019-11-13 16:15:52 2446

原创 Verilog 语法知识2

veirlog 语法知识25.顺序块(关键字begin and)顺序块有以下特点:块内的语句是按顺序执行的。每条语句的延迟时间是相对于前一条语句的仿真时间而言的。直到最后一条语句执行完,程序流程控制才跳出该语句块。如:begin a = b; c = a; //c的值为b的值。end即第一条赋值语句先执行,a的值更新为b的值,然后程序流程控制转到第二条赋值语句,c的值更...

2019-11-12 21:47:00 1235

原创 Verilog 语法知识1

学习的参考资料是夏宇闻的《veirlog经典教程》第三版,可能刚看这本书有点迷糊,但我觉得有从语言基础的同学学起来还是能看懂的。这里我列举了自己学习觉得应该注意的地方。veirlog HDL的基本语法 11.变量:变量即在程序运行过程中其值可以改变的量,在Verilog HDL中变量的数据类型有很多种wire型wire型数据常用来表示用于以assign关键字指定的组合逻辑信号。Veril...

2019-11-11 20:08:51 709

原创 Fpga小白报道

FPGA 小白来报道了,时光易逝,作为一个大四学生再来重新的学习fpga系列,应该不算晚吧。自2016年入学以来,到现在2019年11月10号,时间如此匆匆晃过,回忆起大学的学习和过程,期间充满着兴趣和乐趣,对fpga也一直念念不忘啊,总归时间没有充分利用,现在想想还是有点可惜的,那么现在我想通过写博客的这种方式去记录我的学习过程,我想这也是一种锻炼自己学习能力和写文案的能力吧。简单的聊一下我...

2019-11-10 17:32:54 322

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除