matlab数学问题非常规解法求解.ppt
2023/11/8,高等应用数学问题的MATLAB求解东北大学信息学院,1,第 1 0 章数学问题的非传统解法,薛定宇、陈阳泉著高等应用数学问题的MATLAB求解,清华大学出版社2004CAI课件开发:薛定宇、刘莹莹,2023/11/8,2,高等应用数学问题的MATLAB求解,本章主要内容,模糊逻辑与模糊推理神经网络及其在数据拟合中的应用遗传算法及其在最优化问题中的应用小波变换及其在数据处理中的应用粗糙集理论与应用分数阶微积分学及其应用本章要点简介,2023/11/8,3,高等应用数学问题的MATLAB求解,10.1 模糊逻辑与模糊推理,10.1.1 经典集合论和模糊集10.1.2 隶属度与模糊化10.1.3 模糊推理系统建立10.1.4 模糊规则与模糊推理,2023/11/8,4,高等应用数学问题的MATLAB求解,经典集合论及其 MATLAB 求解,集合论是现代数学的基础集合:一些事物的全体,而其中每一个事物均称为集合中的一个元素。可枚举集合:该集合中的所有元素均可以一一列出的集合,2023/11/8,5,高等应用数学问题的MATLAB求解,集合表示举例,2023/11/8,6,高等应用数学问题的MATLAB求解,MATLAB 下的集合运算函数,2023/11/8,7,高等应用数学问题的MATLAB求解,【例10-1】已知,对这些集合进行各种运算,并验证,2023/11/8,8,高等应用数学问题的MATLAB求解,2023/11/8,9,高等应用数学问题的MATLAB求解,【例10-2】,试验证结合律,2023/11/8,10,高等应用数学问题的MATLAB求解,交集:,并集:,验证结合律:,2023/11/8,11,高等应用数学问题的MATLAB求解,模糊集合,经典集合:一个事物a 要么就属于集合A,要么就不属于集合A美国控制论专家 Lotfi A Zadeh 教授,1965Zadeh 教授指出,当问题的复杂性增加时,精确的描述将失去意义,而有意义的描述将失去精度。,2023/11/8,12,高等应用数学问题的MATLAB求解,2023/11/8,13,高等应用数学问题的MATLAB求解,10.1.2 隶属度与模糊化,钟形隶属度函数,数学函数:,MATLAB 求解函数:,2023/11/8,14,高等应用数学问题的MATLAB求解,【例10-3】绘制出不同参数组合下的钟形隶属度 函数曲线。,2023/11/8,15,高等应用数学问题的MATLAB求解,Gauss 隶属度函数,数学函数:,MATLAB 求解函数:,2023/11/8,16,高等应用数学问题的MATLAB求解,【例10-5】绘制不同参数下 Gauss 隶属度,2023/11/8,17,高等应用数学问题的MATLAB求解,Sigmoid 型隶属度函数,数学函数:,MATLAB 求解函数:,2023/11/8,18,高等应用数学问题的MATLAB求解,【例10-6】绘制 Sigmoid 隶属度函数,2023/11/8,19,高等应用数学问题的MATLAB求解,隶属度函数的图形编辑界面,用界面编辑隶属度函数修改隶属度参数添加隶属度函数,2023/11/8,20,高等应用数学问题的MATLAB求解,10.1.3 模糊推理系统建立,建立新模糊推理系统:,添加新变量:,2023/11/8,21,高等应用数学问题的MATLAB求解,2023/11/8,22,高等应用数学问题的MATLAB求解,2023/11/8,23,高等应用数学问题的MATLAB求解,10.1.3 模糊规则与模糊推理,模糊化模糊规则解模糊,2023/11/8,24,高等应用数学问题的MATLAB求解,10.2 神经网络及其在数据拟合中的应用,10.2.1 神经网络基础知识10.2.2 神经网络界面,2023/11/8,25,高等应用数学问题的MATLAB求解,单个人工神经元的数学表示形式,2023/11/8,26,高等应用数学问题的MATLAB求解,【例10-9】常用传输函数曲线,2023/11/8,27,高等应用数学问题的MATLAB求解,BP 神经网络结构示意图,2023/11/8,28,高等应用数学问题的MATLAB求解,2023/11/8,29,高等应用数学问题的MATLAB求解,【例10-10】,2023/11/8,30,高等应用数学问题的MATLAB求解,10.2.1.2 神经网络的训练与泛化,神经网络训练函数目标值曲线函数神经网络泛化,2023/11/8,31,高等应用数学问题的MATLAB求解,【例10-11】由例8-25中的数据进行曲线拟合,2个隐层,隐层节点选择为5,2023/11/8,32,高等应用数学问题的MATLAB求解,2023/11/8,33,高等应用数学问题的MATLAB求解,2023/11/8,34,高等应用数学问题的MATLAB求解,选择隐层15个节点:,2023/11/8,35,高等应用数学问题的MATLAB求解,【例10-12】二元函数的拟合,2023/11/8,36,高等应用数学问题的MATLAB求解,2023/11/8,37,高等应用数学问题的MATLAB求解,2023/11/8,38,高等应用数学问题的MATLAB求解,2023/11/8,39,高等应用数学问题的MATLAB求解,10.2.2 神经网络界面,启动神经网络界面 nntool【例10-13】重新求解一元函数拟合,2023/11/8,40,高等应用数学问题的MATLAB求解,10.3 遗传算法及其在最优化问题中的应用,遗传算法是基于进化论,在计算机上模拟生命进化机制而发展起来的一门新学科,它根据适者生存、优胜劣汰等自然进化规则搜索和计算问题的解。美国 Michigen 大学的 John Holland 于 1975 年提出的。遗传算法最优化工具箱MATLAB 7.0的遗传算法与直接搜索工具箱,2023/11/8,41,高等应用数学问题的MATLAB求解,遗传算法的基本思想,从一个代表最优化问题解的一组初值开始进行搜索,这组解称为一个种群,这里种群由一定数量的、通过基因编码的个体组成,其中每一个个体称为染色体,不同个体通过染色体的复制、交叉或变异又生成新的个体,依照适者生存的规则,个体也在一代一代进化,通过若干代的进化最终得出条件最优的个体。,2023/11/8,42,高等应用数学问题的MATLAB求解,简单遗传算法的一般步骤,选择 n 个个体构成初始种群,并求出种群内各个个体的函数值。设置代数为 i=1,即设置其为第一代。计算选择函数的值,所谓选择即通过概率的形式从种群中选择若干个个体的方式。通过染色体个体基因的复制、交叉、变异等创造新的个体,构成新的种群。i=i+1,若终止条件不满足,则继续进化。,2023/11/8,43,高等应用数学问题的MATLAB求解,遗传算法和传统优化算法比较,不同于从一个点开始搜索最优解的传统的最优化算法,遗传算法从一个种群开始对问题的最优解进行并行搜索,所以更利于全局最优化解的搜索。遗传算法并不依赖于导数信息或其他辅助信息来进行最优解搜索。遗传算法采用的是概率型规则而不是确定性规则,所以每次得出的结果不一定完全相同,有时甚至会有较大的差异。,2023/11/8,44,高等应用数学问题的MATLAB求解,10.3.2 遗传算法在求解最优化问题中的应用举例,GAOT 工具箱MATLAB 7.0GA工具箱界面,gatool(),2023/11/8,45,高等应用数学问题的MATLAB求解,【例10-14】,2023/11/8,46,高等应用数学问题的MATLAB求解,不同初值得出不同“最优解”,2023/11/8,47,高等应用数学问题的MATLAB求解,2023/11/8,48,高等应用数学问题的MATLAB求解,最优化搜索结果列表,2023/11/8,49,高等应用数学问题的MATLAB求解,2023/11/8,50,高等应用数学问题的MATLAB求解,【例10-15】求最大值,2023/11/8,51,高等应用数学问题的MATLAB求解,2023/11/8,52,高等应用数学问题的MATLAB求解,GAOT 的最优化函数,可以设置其他参数n为最大允许代数,2023/11/8,53,高等应用数学问题的MATLAB求解,【例10-16】求最大值,2023/11/8,54,高等应用数学问题的MATLAB求解,2023/11/8,55,高等应用数学问题的MATLAB求解,2023/11/8,56,高等应用数学问题的MATLAB求解,【例10-14】求下面的最优化问题,2023/11/8,57,高等应用数学问题的MATLAB求解,2023/11/8,58,高等应用数学问题的MATLAB求解,遗传算法优化中间结果,2023/11/8,59,高等应用数学问题的MATLAB求解,10.3.3 遗传算法在有约束最优化问题中的应用,不能直接用于有约束最优化问题求解可以令不满足约束的目标函数为小值仍采用 gaopt()或 ga()函数求解,2023/11/8,60,高等应用数学问题的MATLAB求解,【例10-18】,2023/11/8,61,高等应用数学问题的MATLAB求解,2023/11/8,62,高等应用数学问题的MATLAB求解,建议求解方法:用 GA 找出全局最优解的大致位置,以其为初值调用最优化函数求精确解。,2023/11/8,63,高等应用数学问题的MATLAB求解,10.4 小波变换及其在数据处理中的应用,10.4.1 小波变换及基小波波形 小波:均值为零的一族波形10.4.2 小波变换技术在信号处理中的应用10.4.3 小波问题的程序界面,2023/11/8,64,高等应用数学问题的MATLAB求解,10.4.1 小波变换及其在数据处理中的应用,连续小波变换,2023/11/8,65,高等应用数学问题的MATLAB求解,【例10-19】,2023/11/8,66,高等应用数学问题的MATLAB求解,小波反变换函数,2023/11/8,67,高等应用数学问题的MATLAB求解,【例10-20】,2023/11/8,68,高等应用数学问题的MATLAB求解,离散小波变换,2023/11/8,69,高等应用数学问题的MATLAB求解,【例10-22】,2023/11/8,70,高等应用数学问题的MATLAB求解,小波工具箱中提供的基小波函数显示基小波类型小波分析函数,2023/11/8,71,高等应用数学问题的MATLAB求解,【例10-22】绘制 Daubechies 6 基小波波形,2023/11/8,72,高等应用数学问题的MATLAB求解,【例10-23】试绘制出常用基小波波形,2023/11/8,73,高等应用数学问题的MATLAB求解,10.4.2 小波变换技术在信号处理中的应用,2023/11/8,74,高等应用数学问题的MATLAB求解,一维信号的小波分解提取近似系数 cA 和细节系数 cD信号重建,2023/11/8,75,高等应用数学问题的MATLAB求解,【例10-24】,2023/11/8,76,高等应用数学问题的MATLAB求解,2023/11/8,77,高等应用数学问题的MATLAB求解,【例10-24】,2023/11/8,78,高等应用数学问题的MATLAB求解,10.4.3 小波问题的程序界面,可以键入 wavemenu 命令,2023/11/8,79,高等应用数学问题的MATLAB求解,10.5 粗糙集理论与应用,粗糙集(rough set)是波兰数学家 Z Pawlak 为开发自动规则生成系统及研究软计算问题于 1982 年提出的。粗糙集理论是一种处理不精确、不确定与不完全数据的新的数学方法。能有效地分析和处理不精确、不一致、不完整等各种不完备信息,并从中发现隐含的知识,揭示潜在的规律。,2023/11/8,80,高等应用数学问题的MATLAB求解,下近似集:肯定属于 X 的最大的集合上近似集:可能属于 X 的最大集合集合边界区若 Bnd(X)非空,则 X 为关于 R 的粗糙集。,2023/11/8,81,高等应用数学问题的MATLAB求解,【例10-26】,可见,可以写出,2023/11/8,82,高等应用数学问题的MATLAB求解,10.5.1.3 信息决策系统,信息决策系统,2023/11/8,83,高等应用数学问题的MATLAB求解,【例10-26】,2023/11/8,84,高等应用数学问题的MATLAB求解,信息决策系统表,2023/11/8,85,高等应用数学问题的MATLAB求解,近似集的 MATLAB 求解,【例10-28】,2023/11/8,86,高等应用数学问题的MATLAB求解,信息决策表,2023/11/8,87,高等应用数学问题的MATLAB求解,10.5.3 基于粗糙集的约简及处理,约简:不含多余属性并保证分类正确的最小条件属性集核集:所有不可约去的关系,2023/11/8,88,高等应用数学问题的MATLAB求解,10.5.2.2 粗糙集理论在信息约简中的应用举例,【例10-29】,找出不必要的数码管,2023/11/8,89,高等应用数学问题的MATLAB求解,2023/11/8,90,高等应用数学问题的MATLAB求解,【例10-30】SARS 诊断,2023/11/8,91,高等应用数学问题的MATLAB求解,2023/11/8,92,高等应用数学问题的MATLAB求解,2023/11/8,93,高等应用数学问题的MATLAB求解,10.5.2.3 粗糙集约简的 MATLAB 程序界面,rsdav3,2023/11/8,94,高等应用数学问题的MATLAB求解,10.6 分数阶微积分学,n=1/2,微分是什么?300 年前的问题应用领域,包括分数阶控制,2023/11/8,95,高等应用数学问题的MATLAB求解,本节主要内容,10.6.1 分数阶微积分的定义与性质10.6.2 分数阶微分的计算方法10.6.3 分数阶微分方程求解,2023/11/8,96,高等应用数学问题的MATLAB求解,10.6.1 分数阶微积分的定义与性质,分数阶 Cauchy 积分公式,2023/11/8,97,高等应用数学问题的MATLAB求解,Riemann-Liouville 分数阶积分公式分数阶微分定义,2023/11/8,98,高等应用数学问题的MATLAB求解,Caputo 分数阶微分定义Caputo 分数阶积分定义为,2023/11/8,99,高等应用数学问题的MATLAB求解,分数阶微积分有如下各条性质,线性交换律,2023/11/8,100,高等应用数学问题的MATLAB求解,分数阶微积分的积分变换,积分的 Laplace 变换微分的 Laplace 变换零初始条件Fourier 变换,2023/11/8,101,高等应用数学问题的MATLAB求解,10.6.2 分数阶微积分的计算,利用 Fourier 级数计算周期函数的分数阶微积分,其中,2023/11/8,102,高等应用数学问题的MATLAB求解,正弦、余弦函数微分,同样适用于分数阶 利用Fourier级数,2023/11/8,103,高等应用数学问题的MATLAB求解,实现该算法的 MATLAB 函数,2023/11/8,104,高等应用数学问题的MATLAB求解,【例10-31】,求解该函数的分数阶微积分,2023/11/8,105,高等应用数学问题的MATLAB求解,2023/11/8,106,高等应用数学问题的MATLAB求解,不同阶次的分数阶微积分,2023/11/8,107,高等应用数学问题的MATLAB求解,【例10-32】,求取该函数的分数阶微积分,2023/11/8,108,高等应用数学问题的MATLAB求解,2023/11/8,109,高等应用数学问题的MATLAB求解,2023/11/8,110,高等应用数学问题的MATLAB求解,2023/11/8,111,高等应用数学问题的MATLAB求解,2023/11/8,112,高等应用数学问题的MATLAB求解,分数阶微分的数值算法函数,2023/11/8,113,高等应用数学问题的MATLAB求解,【例10-33】,2023/11/8,114,高等应用数学问题的MATLAB求解,绘制微分曲面,2023/11/8,115,高等应用数学问题的MATLAB求解,【例10-34】,比较不同算法得出的 0.75 阶微分,Caputo 算法结果,2023/11/8,116,高等应用数学问题的MATLAB求解,分数阶微积分的 Fourier 变换算法,Fourier 变换分数阶微分的 Fourier 变换,2023/11/8,117,高等应用数学问题的MATLAB求解,离散 Fourier 变换函数分数阶导数可以表示成计算方法,先用 FFT,再乘以频率加权,再进行 FFT 反变换求解,2023/11/8,118,高等应用数学问题的MATLAB求解,分数阶微积分的滤波算法,连续滤波算法:Oustaloup 算法,其中:,2023/11/8,119,高等应用数学问题的MATLAB求解,MATLAB 函数,2023/11/8,120,高等应用数学问题的MATLAB求解,【例10-35】的 0.5 阶微分,2023/11/8,121,高等应用数学问题的MATLAB求解,不同滤波器阶次与参数对滤波修改影响,2023/11/8,122,高等应用数学问题的MATLAB求解,FIR 滤波器,2023/11/8,123,高等应用数学问题的MATLAB求解,【例10-36】,2023/11/8,124,高等应用数学问题的MATLAB求解,IIR 滤波器算法,变换函数 连分式算法,2023/11/8,125,高等应用数学问题的MATLAB求解,2023/11/8,126,高等应用数学问题的MATLAB求解,【例10-37】0.5 阶微分算子,2023/11/8,127,高等应用数学问题的MATLAB求解,2023/11/8,128,高等应用数学问题的MATLAB求解,用 Pade 近似代替连分式,2023/11/8,129,高等应用数学问题的MATLAB求解,【例10-38】试构造更高阶的滤波器,2023/11/8,130,高等应用数学问题的MATLAB求解,10.6.3 分数阶微分方程的求解方法,分数阶线性微分方程的解法非线性分数阶微分方程近似解法,2023/11/8,131,高等应用数学问题的MATLAB求解,10.6.3.1 分数阶线性微分方程的解法,分数阶线性微分方程分数阶传递函数,2023/11/8,132,高等应用数学问题的MATLAB求解,2023/11/8,133,高等应用数学问题的MATLAB求解,分数阶线性微分方程的数值解法,2023/11/8,134,高等应用数学问题的MATLAB求解,2023/11/8,135,高等应用数学问题的MATLAB求解,【例10-39】求解下面的分数阶微分方程,2023/11/8,136,高等应用数学问题的MATLAB求解,10.6.3.2 非线性分数阶微分方程近似解法,利用 Oustaloup 滤波器近似,可以构造出 Simulink 模块c10mfode.mdl模块可以直接应用与建模,2023/11/8,137,高等应用数学问题的MATLAB求解,2023/11/8,138,高等应用数学问题的MATLAB求解,【例10-40】重新求解分数阶线性微分方程,选择:,变换:,模型:,c10mfode1.mdl,2023/11/8,139,高等应用数学问题的MATLAB求解,【例10-41】求解分数阶非线性微分方程,模型:c10mfode2.mdl,2023/11/8,140,高等应用数学问题的MATLAB求解,本章主要内容,本章有关函数一览表,2023/11/8,141,高等应用数学问题的MATLAB求解,2023/11/8,142,高等应用数学问题的MATLAB求解,2023/11/8,143,高等应用数学问题的MATLAB求解,2023/11/8,144,高等应用数学问题的MATLAB求解,本章介绍了经典集合论问题的 MATLAB 语言求解方法,然后引入模糊集合的概念,并介绍基于 MATLAB 语言的模糊集合与模糊推理的实现方法。,2023/11/8,145,高等应用数学问题的MATLAB求解,引入人工神经网络的数学表示及反馈时神经网络结构,介绍由 MATLAB 语言进行神经网络结构设置、训练及网络泛化的全过程,利用 MATLAB 神经网络工具箱直接求解数拟合问题的方法。介绍了遗传算法的基本概念及 MATLAB 求解,并介绍了遗传算法最优化工具箱中的关键函数gaopt()及其使用方法,通过例子演示了该函数的各种调用方法和参数设置等,注意,和传统最优化工具箱函数不同,遗传算法最优化工具箱中应该将目标函数定义成最大值。本章还介绍了随着 MATLAB 7.0 版本推出的遗传算法与直接搜索工具箱及其应用。,2023/11/8,146,高等应用数学问题的MATLAB求解,小波分析与变换是目前信号处理及图像处理领域很常用的方法,该方法利用比传统 Fourier 变换更具优势的小波信号对原始信号进行近似与分解。本章介绍了连续、离散小波变换的概念及 MATLAB 求解,介绍了各种基小波波形,还介绍了小波分解与小波重建问题,演示了小波分析技术在信号处理与降噪中的应用。,2023/11/8,147,高等应用数学问题的MATLAB求解,粗糙集理论是近 20 年内才首次提出的理论,本章首先简要介绍了粗糙集理论及要点,引入信息系统决策表的概念与建立,侧重介绍粗糙集理论问题的 MATLAB 求解并举例介绍了该理论在条件约简中的应用,本章还介绍了基于粗糙集理论的图形用户界面程序。,2023/11/8,148,高等应用数学问题的MATLAB求解,本章引入了分数阶微积分的各种定义及求解方法,给出了这些方法的 MATLAB 实现,并给出了未知信号的滤波器设计算法,还分别提出了分数阶线性及非线性微分方程的数值求解方法,为使用分数阶微积分理论解决实际问题打下了一定的基础。,2023/11/8,149,高等应用数学问题的MATLAB求解,结束语学习 MATLAB 语言的方法,“三十字”学习方法:带着问题学,活学活用,学用结合,急用先学,立竿见影,要在“用”字上狠下功夫。,