返回首页

matlab中关于optimization tool

来源:www.ahlulin.com   时间:2023-02-28 00:12   点击:196  编辑:荣娜   手机版

matlab中关于optimization tool

a.打开工具箱。在Solver里选择 ga -Genetic Algorithm

b. 编写fitness function:

建立一个.m文件,比如fitness.m

代码:

function [y] = fitness( x )

y = 0.5*x(1)^2 + x(2)^2 -x(1)*x(2) -2*x(1) -6*x(2);

end

就这么简单就可以了。x表示的是输入值,y是要最小化的值。

c. 在Optimization Tool 里的fitnessfunction : 写上 @fitness

number of variables 里写上2,表示输入向量(注意理解向量)里只有二个值。

A和b分别是线性不等约束条件的矩阵系数A和向量b;Aeq和beq分别是线性等式约束条件的矩阵系数Aeq和向量beq;LB和UB分别为nvars个带求解变量的上下限向量。注意:这里面的向量都是列向量哦!其他参数可以参考matlab的help。

然后点start,结果就跑出来了

(这个y的函数还有上下限,就不写了,如果去matlab上就自己选一个简单点的吧)

如何使用matlab中的工具箱

1、首先给出对应的拟合数据:>> x=1:100;>> y=2*x;一条直线。

2、然后这里先画出这条直线,直观感受下。

3、接着在命令窗口输入:cftool。

4、这时会看到此时,系统会显示cftool工具箱。

5、然后选择拟合的数据,当然这里拟合的是二维数据。只需要输入2个数据源。

6、然后选择拟合的函数类型,可以选择线性,高斯,幂律,等常见的函数类型,此时的数据拟合结果会在左侧显示。

MATLAB自带工具箱

查看方式:

我们首先详细介绍一下MATLAB自带工具箱的使用。

在我们不熟悉一些调用工具箱的命令的时候,我们可以按照如下图所示:

在MATLAB主窗口中,点击左下角start--toolboxes,就会罗列出你的MATLAB已经安装的所有工具箱,可以根据你的需要选择你将要使用的工具箱。我们可以看到有拟合工具箱、金融工具箱、最优化工具箱等等。

调用(打开)方式:

下面我们介绍一下如何打开一个工具箱。

我们以调用拟合工具箱为例,进行详细的示例。

调用方式一:

按照如下图所示的步骤:

点击主窗口左下角start--toolboxes--curve fitting--curve fitting tool 单击,就可以打开拟合工具箱.

调用方式二:

在上一步中,我们在start--toolboxes--curve fitting--curve fitting tool ,到这里的时候,会看到在其后面有一个简写 cftool 如下图,这就是我们的拟合工具箱调用命令函数。在MATLAB主窗口中输入cftool ,回车,同样可以打开拟合工具箱。

工具箱的使用:

拟合工具箱打开之后,如下,我们就可以进行多种曲线拟合了。

关于MATLAB拟合工具箱等,一些工具箱的详细用法,由于篇幅的有限,在我的其他经验中都会陆续给出,有兴趣的可以查看。

非自带工具箱

非自带工具箱,需另外下载,然后按照一定的步骤导入,导入后一般不能像上面工具箱一样,通过界面操作,一般都通过函数使用。由于工具箱的导入有几个小的细节需要注意,所以在我的其他经验中,关于如何导入工具箱,我也进行了详细的介绍。

如果是系统自带的,你可以直接用,如果是外部的或者是自编的你需要先把文件夹拷贝到tools文件夹下,再设置路径。\x0d\x0aMatlab常用工具箱介绍(英汉对照)\x0d\x0aMatlab Main Toolbox――matlab主工具箱\x0d\x0aControl System Toolbox――控制系统工具箱\x0d\x0aCommunication Toolbox――通讯工具箱\x0d\x0aFinancial Toolbox――财政金融工具箱\x0d\x0aSystem Identification Toolbox――系统辨识工具箱\x0d\x0aFuzzy Logic Toolbox――模糊逻辑工具箱\x0d\x0aHigher-Order Spectral Analysis Toolbox――高阶谱分析工具箱\x0d\x0aImage Processing Toolbox――图象处理工具箱\x0d\x0aLMI Control Toolbox――线性矩阵不等式工具箱\x0d\x0aModel predictive Control Toolbox――模型预测控制工具箱\x0d\x0aμ-Analysis and Synthesis Toolbox――μ分析工具箱\x0d\x0aNeural Network Toolbox――神经网络工具箱\x0d\x0aOptimization Toolbox――优化工具箱\x0d\x0aPartial Differential Toolbox――偏微分方程工具箱\x0d\x0aRobust Control Toolbox――鲁棒控制工具箱\x0d\x0aSignal Processing Toolbox――信号处理工具箱\x0d\x0aSpline Toolbox――样条工具箱\x0d\x0aStatistics Toolbox――统计工具箱\x0d\x0aSymbolic Math Toolbox――符号数学工具箱\x0d\x0aSimulink Toolbox――动态仿真工具箱\x0d\x0aSystem Identification Toolbox――系统辨识工具箱\x0d\x0aWavele Toolbox――小波工具箱\x0d\x0a\x0d\x0a例如:控制系统工具箱包含如下功能:\x0d\x0a连续系统设计和离散系统设计\x0d\x0a状态空间和传递函数以及模型转换\x0d\x0a时域响应(脉冲响应、阶跃响应、斜坡响应)\x0d\x0a频域响应(Bode图、Nyquist图)\x0d\x0a根轨迹、极点配置\x0d\x0a\x0d\x0a较为常见的matlab控制箱有:\x0d\x0a\x0d\x0a控制类:\x0d\x0a\x0d\x0a控制系统工具箱(control systems toolbox)\x0d\x0a系统识别工具箱(system identification toolbox)\x0d\x0a鲁棒控制工具箱(robust control toolbox)\x0d\x0a神经网络工具箱(neural network toolbox)\x0d\x0a频域系统识别工具箱(frequency domain system identification toolbox)\x0d\x0a模型预测控制工具箱(model predictive control toolbox)\x0d\x0a多变量频率设计工具箱(multivariable frequency design toolbox)\x0d\x0a\x0d\x0a信号处理类:\x0d\x0a信号处理工具箱(signal processing toolbox)\x0d\x0a滤波器设计工具箱(filter design toolbox)\x0d\x0a通信工具箱(communication toolbox)\x0d\x0a小波分析工具箱(wavelet toolbox)\x0d\x0a高阶谱分析工具箱(higher order spectral analysis toolbox)\x0d\x0a\x0d\x0a其它工具箱:\x0d\x0a统计工具箱(statistics toolbox)\x0d\x0a数学符号工具箱(symbolic math toolbox)\x0d\x0a定点工具箱(fixed-point toolbox)\x0d\x0a射频工具箱(RF toolbox)\x0d\x0a\x0d\x0a1990年,MathWorks软件公司为Matlab提供了新的控制系统模型化图形输入与仿真工具,并命名为Simulab,使得仿真软件进入了模型化图形组态阶段,1992年正式命名为Simulink,即simu(仿真)和link(连接)。matlab7.0里的simulink为6.0版本,matlab6.5里的simulink为5.0版本。\x0d\x0a\x0d\x0aMATLAB的SIMULINK子库是一个建模、分析各种物理和数学系统的软件,它用框图表示系统的各个环节,用带方向的连线表示各环节的输入输出关系。\x0d\x0a 启动SIMULINK十分容易,只需在MATLAB的命令窗口键入“SIMULINK”命令,此时出现一个SIMULINK窗口,包含七个模型库,分别是信号源库、输出库、离散系统库、线性系统库、非线性系统库及扩展系统库。\x0d\x0a 1.信号源库\x0d\x0a 包括阶跃信号、正弦波、白噪声、时钟、常值、文件、信号发生器等各种信号源,其中信号发生器可产生正弦波、方波、锯齿波、随机信号等波形。\x0d\x0a 2.输出库\x0d\x0a 包括示波器仿真窗口、MATLAB工作区、文件等形式的输出。\x0d\x0a 3.离散系统库\x0d\x0a 包括五种标准模式:延迟,零-极点,滤波器,离散传递函数,离散状态空间。\x0d\x0a 4.线性系统库\x0d\x0a 提供七种标准模式:加法器、比例环节、积分环节、微分环节、传递函数、零-极点、状态空间。\x0d\x0a 5.非线性系统库\x0d\x0a 提供十三种常用标准模式:绝对值、乘法、函数、回环特性、死区特性、斜率、继电器特性、饱和特性、开关特性等。\x0d\x0a 6.系统连接库 包括输入、输出、多路转换等模块,用于连接其他模块。\x0d\x0a 7.系统扩展库\x0d\x0a 考虑到系统的复杂性,SIMULINK另提供十二种类型的扩展系统库,每一种又有多种模型供选择。\x0d\x0a 使用时只要从各子库中取出模型,定义好模型参数,将各模型连接起来,然后设置系统参数,如仿真时间、仿真步长、计算方法等。SIMULINK提供了Euler、RungeKutta、Gear、Adams及专用于线性系统的LinSim算法,用户根据仿真要求选择适当的算法。\x0d\x0a\x0d\x0a当然,不同版本的Matlab/Simulink内容有所不同。\x0d\x0a\x0d\x0a另外,Simulink还提供了诸如航空航天、CDMA、DSP、机械、电力系统等专业模块库,给快速建模提供了很大的便利。

顶一下
(0)
0%
踩一下
(0)
0%