RTI实用Matlab案例

RTI实用Matlab案例
RTI实用Matlab案例

User story

RTI International and University of Pennsylvania Model the Spread of Epidemics Using MATLAB and MathWorks Parallel Computing Tools

Public health officials often struggle to determine how best to prevent the spread of infectious disease. For livestock, they can institute quarantines or culling policies; for humans, they can issue travel advisories and provide immunizations. Until recently, offi-cials relied on research based on heuristics and trial-and-error approaches to decide when and where to implement these policies. Today, sophisticated mathematical models make use of data from past outbreaks. University of Pennsylvania (Penn) researchers use MATLAB? to develop models of epidemics among animals. Research Triangle Institute (RTI) extends those models to simulate infectious disease to build discrete-time, discrete-space, sto-chastic models, which could be adapted to simulate the spread of other diseases. They MATLAB simulation of an avian influenza epidemic.

Accelerating the pace of engineering and science

tions and fine-tuned the contagiousness parameters until the results approximated an actual epidemic. He then simulated epi-demics starting at other locations and tested the effectiveness of culling, vaccinations, and other control policies.

“We used MATLAB to create movies that revealed patterns in how an epidemic devel-

ops and that helped nontechnical audiences visualize our findings,” says Rorres.

Rorres adapted the foot-and-mouth disease model to simulate the spread of avian influenza. Working with a MathWorks consultant, RTI researchers used Parallel Computing Toolbox to parallelize Rorres’ model and used MATLAB Distributed Computing Server? to execute the simu-lations on their computer cluster.

Diglio Simoni, senior computational scien-tist at RTI, found that under some initial conditions and parameter settings the epi-demics died out very quickly, while under other conditions they were prolonged. To solve the load-balancing problem this trend created, RTI researchers wrote MATLAB scripts to programmatically identify the simulations that were likely to require rela-tively few computational https://www.360docs.net/doc/fc7812231.html,ing the National Science Foundation’s TeraGrid infrastructure, RTI is now developing an agent-based model for

MIDAS to simulate the spread of an

epidemic—naturally occurring or released in a bioterrorist attack—throughout the U.S. population.

The ReSulTS

■ Code reused, reducing development

time. RTI reduced development time for the

MIDAS model by 80% because researchers were able to reuse MATLAB code created by Rorres for previous animal models.

■ Simulations completed 250 times

faster. “What would have taken months in

C, we did in just a few days with Parallel Computing Toolbox,” says Simoni. “We parallelized the application with a few lines of code, enabling us to complete epidemic simulations 250 times faster than before.”

■ Public health application demon-strated. “One of our veterinary graduate

students developed a standalone MATLAB application showing what an epidemic in poultry populations in Lancaster County, Pennsylvania, might look like,” says Rorres. “Emergency response personnel used the application to analyze what-if sce-narios and evaluate policies.”

Learn more about RTI: https://www.360docs.net/doc/fc7812231.html, Learn more about the University of Pennsylvania: https://www.360docs.net/doc/fc7812231.html,

appliCaTion aReaS

■ Biotech ■ Academia

■ Algorithm development ■ Statistics and data analysis ■ Parallel computing

pRoduCTS uSed

■ MATLAB?

■ Parallel Computing Toolbox?

■ MATLAB Distributed Computing Server?

91705v00 04/09

https://www.360docs.net/doc/fc7812231.html,

? 2009 The MathWorks, Inc. MATLAB and Simulink are registered trademarks of The MathWorks, Inc. See https://www.360docs.net/doc/fc7812231.html,/trademarks for a list of additional trademarks. Other product or brand names may be trademarks or registered trademarks of their respective holders.

Matlab图形绘制经典案例

Matlab图形绘制经典案例 1、 三维曲线 >> t=0:pi/50:10*pi; >> plot3(sin(2*t),cos(2*t),t) >> axis square >> grid on

2、一窗口多图形>> t=-2*pi:0.01:2*pi; >> subplot(3,2,1)

>> plot(t,sin(t)) >> subplot(3,2,2) >> plot(t,cos(t)) >> subplot(3,2,3) >> plot(t,tan(t)) >> axis([-pi pi -100 100]) >> subplot(3,2,4) >> plot(t,cot(t)) >> axis([-pi pi -100 100]) >> subplot(3,2,5) >> plot(t,atan(t)) >> subplot(3,2,6) >> plot(t,acot(t))

3、图形样式、标注、题字(也可以利用菜单直接Insert) >> x=0:pi/20:2*pi;

>> plot(x,sin(x),'b-.') >> hold on >> plot(x,cos(x),'r--') >> hold on >> plot(x,sin(x)-1,'g:') >> hold on >> plot(x,cos(x)-1) >> xlabel('x'); >> xlabel('x轴'); >> ylabel('y轴'); >> title('图形样式、标注等'); >> text(pi,sin(pi),'x=\pi'); >> legend('sin(x)','cos(x)','sin(x)-1','cos(x)-1'); >> [x1,y1]=ginput(1) %利用鼠标定位查找线上某点的值x1 = 2.0893 y1 = -0.5000 >> gtext('x=2.5') %鼠标定位放置所需的值在线上

MATLAB统计分析与应用:40个案例分析

MATLAB统计分析与应用:40个案例分析 ISBN:9787512400849 分类号:C819 /115 出版社:北京航空航天大学出版社 【内容简介】 本书从实际应用的角度出发,以大量的案例详细介绍了MA TLAB环境下的统计分析与应用。 本书主要内容包括:利用MA TLAB制作统计报告或报表;从文件中读取数据到MA TLAB;从MA TLAB中导出数据到文件;数据的平滑处理、标准化变换和极差归一化变换;生成一元和多元分布随机数;蒙特卡洛方法;参数估计与假设检验;Copula理论及应用实例;方差分析;基于回归分析的数据拟合;聚类分析;判别分析;主成分分析;因子分析;图像处理中的统计应用等。 本书可以作为高等院校本科生、研究生的统计学相关课程的教材或教学参考书,也可作为从事数据分析与数据管理的研究人员的参考用书。 【目录】 第1章利用MA TLAB生成Word和Excel文档 1.1 组件对象模型(COM) 1.1.1 什么是CoM 1.1.2 CoM接口 1.2 MA TLAB中的ActiveX控件接口技术 1.2.1 actxcontrol函数 1.2.2 actxcontrollist函数 1.2.3 actxcontrolselect函数 1.2.4 actxserver函数 1.2.5 利用MA TLAB调用COM对象 1.2.6 调用actxserver函数创建组件服务器 1.3 案例1:利用MA TLAB生成Word文档 1.3.1 调用actxserver函数创建Microsoft Word服务器 1.3.2 建立Word文本文档 1.3.3 插入表格 1.3.4 插入图片 1.3.5 保存文档 1.3.6 完整代码 1.4 案例2:利用MA TLAB生成Excel文档 1.4.1 调用actxserver函数创建Microsoft Excel服务器 1.4.2 新建Excel工作簿 1.4.3 获取工作表对象句柄 1.4.4 插入、复制、删除、移动和重命名工作表 1.4.5 页面设置 1.4.6 选取工作表区域 1.4.7 设置行高和列宽 1.4.8 合并单元格 1.4.9 边框设置 1.4.10 设置单元格对齐方式

MATLAB-智能算法30个案例分析-终极版(带目录)

MATLAB 智能算法30个案例分析(终极版) 1 基于遗传算法的TSP算法(王辉) 2 基于遗传算法和非线性规划的函数寻优算法(史峰) 3 基于遗传算法的BP神经网络优化算法(王辉) 4 设菲尔德大学的MATLAB遗传算法工具箱(王辉) 5 基于遗传算法的LQR控制优化算法(胡斐) 6 遗传算法工具箱详解及应用(胡斐) 7 多种群遗传算法的函数优化算法(王辉) 8 基于量子遗传算法的函数寻优算法(王辉) 9 多目标Pareto最优解搜索算法(胡斐) 10 基于多目标Pareto的二维背包搜索算法(史峰) 11 基于免疫算法的柔性车间调度算法(史峰) 12 基于免疫算法的运输中心规划算法(史峰) 13 基于粒子群算法的函数寻优算法(史峰) 14 基于粒子群算法的PID控制优化算法(史峰) 15 基于混合粒子群算法的TSP寻优算法(史峰) 16 基于动态粒子群算法的动态环境寻优算法(史峰) 17 粒子群算法工具箱(史峰) 18 基于鱼群算法的函数寻优算法(王辉) 19 基于模拟退火算法的TSP算法(王辉) 20 基于遗传模拟退火算法的聚类算法(王辉) 21 基于模拟退火算法的HEV能量管理策略参数优化(胡斐)

22 蚁群算法的优化计算——旅行商问题(TSP)优化(郁磊) 23 基于蚁群算法的二维路径规划算法(史峰) 24 基于蚁群算法的三维路径规划算法(史峰) 25 有导师学习神经网络的回归拟合——基于近红外光谱的汽油辛烷值预测(郁磊) 26 有导师学习神经网络的分类——鸢尾花种类识别(郁磊) 27 无导师学习神经网络的分类——矿井突水水源判别(郁磊) 28 支持向量机的分类——基于乳腺组织电阻抗特性的乳腺癌诊断(郁磊) 29 支持向量机的回归拟合——混凝土抗压强度预测(郁磊) 30 极限学习机的回归拟合及分类——对比实验研究(郁磊) 智能算法是我们在学习中经常遇到的算法,主要包括遗传算法,免疫算法,粒子群算法,神经网络等,智能算法对于很多人来说,既爱又恨,爱是因为熟练的掌握几种智能算法,能够很方便的解决我们的论坛问题,恨是因为智能算法感觉比较“玄乎”,很难理解,更难用它来解决问题。 因此,我们组织了王辉,史峰,郁磊,胡斐四名高手共同写作MATLAB智能算法,该书包含了遗传算法,免疫算法,粒子群算法,鱼群算法,多目标pareto算法,模拟退火算法,蚁群算法,神经网络,SVM等,本书最大的特点在于以案例为导向,每个案例针对一

Copula理论及MATLAB应用实例

%-------------------------------------------------------------------------- % Copula理论及应用实例 %-------------------------------------------------------------------------- %******************************读取数据************************************* % 从文件hushi.xls中读取数据 hushi = xlsread('hushi.xls'); % 提取矩阵hushi的第5列数据,即沪市的日收益率数据 X = hushi(:,5); % 从文件shenshi.xls中读取数据 shenshi = xlsread('shenshi.xls'); % 提取矩阵shenshi的第5列数据,即深市的日收益率数据 Y = shenshi(:,5); %****************************绘制频率直方图********************************* % 调用ecdf函数和ecdfhist函数绘制沪、深两市日收益率的频率直方图 [fx, xc] = ecdf(X); figure; ecdfhist(fx, xc, 30); xlabel('沪市日收益率'); % 为X轴加标签 ylabel('f(x)'); % 为Y轴加标签 [fy, yc] = ecdf(Y); figure; ecdfhist(fy, yc, 30); xlabel('深市日收益率'); % 为X轴加标签 ylabel('f(y)'); % 为Y轴加标签 %****************************计算偏度和峰度********************************* % 计算X和Y的偏度 xs = skewness(X) ys = skewness(Y) % 计算X和Y的峰度 kx = kurtosis(X) ky = kurtosis(Y) %******************************正态性检验*********************************** % 分别调用jbtest、kstest和lillietest函数对X进行正态性检验 [h,p] = jbtest(X) % Jarque-Bera检验 [h,p] = kstest(X,[X,normcdf(X,mean(X),std(X))]) % Kolmogorov-Smirnov检验 [h, p] = lillietest(X) % Lilliefors检验

MATLAB智能算法30个案例分析

MATLAB 智能算法30个案例分析 智能算法是我们在学习中经常遇到的算法,主要包括遗传算法,免疫算法,粒子群算法,神经网络等,智能算法对于很多人来说,既爱又恨,爱是因为熟练的掌握几种智能算法,能够很方便的解决我们的论坛问题,恨是因为智能算法感觉比较“玄乎”,很难理解,更难用它来解决问题。 因此,我们组织了王辉,史峰,郁磊,胡斐四名高手共同写作MATLAB智能算法,该书包含了遗传算法,免疫算法,粒子群算法,鱼群算法,多目标pareto算法,模拟退火算法,蚁群算法,神经网络,SVM等,本书最大的特点在于以案例为导向,每个案例针对一个实际问题,给出全部程序和求解思路,并配套相关讲解视频,使读者在读过一个案例之后能够快速掌握这种方法,并且会套用案例程序来编写自己的程序。本书作者在线,读者和会员可以向作者提问,作者做到有问必答。 本书和目录如下: 1 基于遗传算法的TSP算法(王辉) TSP (旅行商问题—Traveling Salesman Problem),是典型的NP完全问题,即其最坏情况下的时间复杂性随着问题规模的增大按指数方式增长,到目前为止不能找到一个多项式时间的有效算法。遗传算法是一种进化算法,其基本原理是仿效生物界中的“物竞天择、适者生存”的演化法则。遗传算法的做法是把问题参数编码为染色体,再利用迭代的方式进行选择、交叉以及变异等运算来交换种群中染色体的信息,最终生成符合优化目标的染色体。实践证明,遗传算法对于解决TSP问题等组合优化问题具有较好的寻优性能。 2 基于遗传算法和非线性规划的函数寻优算法(史峰) 遗传算法提供了求解非线性规划的通用框架,它不依赖于问题的具体领域。遗传算法的优点是将问题参数编码成染色体后进行优化,而不针对参数本身,从而不受函数约束条件的限制;搜索过程从问题解的一个集合开始,而不是单个个体,具有隐含并行搜索特性,可大大减少陷入局部最小的可能性。而且优化计算时算法不依赖于梯度信息,且不要求目标函数连续及可导,使其适于求解传统搜索方法难以解决的大规模、非线性组合优化问题。 3 基于遗传算法的BP神经网络优化算法(王辉) BP模型被广泛地应用于模式分类、模式识别等方面.但BP算法收敛速度慢,且很容易陷入局部极小点,而遗传算法具有并行搜索、效率高、不存在局部收敛问题等优点而被广泛应用.遗传算法的寻优过程带有一定程度的随机性和盲从性,多数情况下只能收敛到全局次优解,且有过早收敛的现象.为了克服遗传算法寻优过程的盲从性,将有监督学习的BP算法与之结合以达到优势互补、提高算法的稳定性和全局搜索能力的目的。 4 设菲尔德大学的MATLAB遗传算法工具箱(王辉) Matlab 遗传算法(Genetic Algorithm)优化工具箱是基于基本操作及终止条件、二进制和十进制相互转换等操作的综合函数库。其实现步骤包括:通过输入及输出函数求出遗传算法主函数、初始种群的生成函数,采用选择、交叉、变异操作求得基本遗传操作函数。以函数仿真

Matlab经典案例

M a t l a b经典案例-CAL-FENGHAI-(2020YEAR-YICAI)_JINGBIAN

1、三维曲线 >> t=0:pi/50:10*pi; >> plot3(sin(2*t),cos(2*t),t) >> axis square >> grid on 2、一窗口多图形 >> t=-2*pi::2*pi; >> subplot(3,2,1) >> plot(t,sin(t)) >> subplot(3,2,2) >> plot(t,cos(t)) >> subplot(3,2,3) >> plot(t,tan(t)) >> axis([-pi pi - 100 100]) >> subplot(3,2,4) >> plot(t,cot(t)) >> axis([-pi pi - 100 100]) >> subplot(3,2,5) >> plot(t,atan(t)) >> subplot(3,2,6) >> plot(t,acot(t)) 3、图形样式、标注、题字 (也可以利用菜单直接Insert) >> x=0:pi/20:2*pi; >> plot(x,sin(x),'b-.') >> hold on

>> plot(x,cos(x),'r--') >> hold on >> plot(x,sin(x)-1,'g:') >> hold on >> plot(x,cos(x)-1) >> xlabel('x'); >> xlabel('x轴'); >> ylabel('y轴'); >> title('图形样式、标注等'); >> text(pi,sin(pi),'x=\pi'); >> legend('sin(x)','cos(x)','sin(x)-1','cos(x)-1'); >> [x1,y1]=ginput(1) %利用鼠标定位查找线上某点的值x1 = y1 = >> gtext('x=') %鼠标定位放置所需的值在线上 4、 >> fplot('[sin(x),cos(x),sqrt(x)-1]',[0 2*pi]) M文件: 内容如下: function y=myfun(x) y(:,1)=sin(x); y(:,2)=cos(x); y(:,3)=x^(1/2)-1; 再运行:>> fplot('myfun',[0 2*pi]) 同样可以得到右图 5、 >> [x,y]=fplot('sin',[0 2*pi]); >> [x1,y1]=fplot('cos',[0 2*pi]); >> plot(x,y,'-r',x1,y1,'') >> legend('y=sinx','y=cosx')

MATLAB应用实例分析

Matlab 应用例题选讲 仅举一些运用MATLAB 的例子,这些问题在数学建模中时常遇到,希望能帮助同学们在短时间内方便、快捷的使用MATLAB 解决数学建模中的问题,并善用这一工具。 常用控制命令: clc :%清屏; clear :%清变量; save :%保存变量; load :%导入变量 一、利用公式直接进行赋值计算 本金P 以每年n 次,每次i%的增值率(n 与i 的乘积为每年增值额的百分比)增加,当增加到r ×P 时所花费的时间T 为:(利用复利计息公式可得到下式) ) 01.01ln(ln )01.01(i n r T i P P r nT += ?+=?(12,5.0,2===n i r ) MATLAB 的表达形式及结果如下: >> r=2;i=0.5;n=12; %变量赋值 >> T=log(r)/(n*log(1+0.01*i)) 计算结果显示为: T = 11.5813 即所花费的时间为T=11.5813 年。 分析:上面的问题是一个利用公式直接进行赋值计算问题,实际中若变量在某个范围变化取很多值时,使用MATLAB ,将倍感方便,轻松得到结果,其绘图功能还能将结果轻松的显示出来,变量之间的变化规律将一目了然。 若r 在[1,9]变化,i 在[0.5,3.5]变化;我们将MATLAB 的表达式作如下改动,结果如图1。 r=1:0.5:9; i=0.5:0.5:3.5; n=12; p=1./(n*log(1+0.01*i)); T=log(r')*p; plot(r,T) xlabel('r') %给x 轴加标题 ylabel('T') %给y 轴加标题 q=ones(1,length(i)); text(7*q-0.2,[T(14,1:5)+0.5,T(14,6)-0.1,T(14,7)-0.9],num2str(i')) r T 图1

MATLAB应用实例分析例分析

MATLAB应用实例分析例分析 Matlab应用例题选讲 仅举一些运用MATLAB的例子,这些问题在数学建模中时常遇到,希望能帮助同学们在短时间内方 便、快捷的使用MATLAB 解决数学建模中的问题,并善用这一工具。常用控制命令: clc:%清屏; clear:%清变量; save:%保存变量; load:%导入变量 一、利用公式直接进行赋值计算 本金P以每年n次,每次i%的增值率(n与i的乘积为每年增值额的百分比)增加,当增加到r×P 时所花费的时间T为:(利用复利计息公式可得到下式) lnrnT() r,P,P(1,0.01i),T,r,2,i,0.5,n,12nln(1,0.01i) MATLAB 的表达形式及结果如下: >> r=2;i=0.5;n=12; %变量赋值 >> T=log(r)/(n*log(1+0.01*i)) 计算结果显示为: T = 11.5813 即所花费的时间为T=11.5813 年。 分析:上面的问题是一个利用公式直接进行赋值计算问题,实际中若变量在某个范围变化取很多值时, 使用MATLAB,将倍感方便,轻松得到结果,其绘图功能还能将结果轻松的显示出来,变量之间的变化 规律将一目了然。 若r在[1,9]变化,i在[0.5,3.5]变化;我们将MATLAB的表达式作如下改动,结果如图1。 r=1:0.5:9;

i=0.5:0.5:3.5; n=12; p=1./(n*log(1+0.01*i)); T=log(r')*p; plot(r,T) xlabel('r') %给x轴加标题 ylabel('T') %给y轴加标题 q=ones(1,length(i)); text(7*q-0.2,[T(14,1:5)+0.5,T(14,6)-0.1,T(14,7)-0.9],num2str(i')) 40 350.530 25 20T 115 1.510 2 2.55 3 3.50123456789r 图1 1 从图1中既可以看到T随r的变化规律,而且还能看到i的不同取值对T—r 曲线的影响(图中的六条曲线分别代表i的不同取值)。 二、已知多项式求根 65432已知多项式为,求其根。 h,x,10x,31x,10x,116x,200x,96 分析:对多项式求根问题,我们常用roots()函数。MATLAB 的表达形式及结果如下: >> h=roots([1 -10 31 -10 -116 200 -96]) %中括号内为多项式系数由高阶到常数。计算结果显示为(其中i为虚数单位): h =

MATLAB-智能算法30个案例分析-终极版(带目录)

MATLAB 智能算法30 个案例分析(终极版)1基于遗传算法的TSP算法(王辉) 2 基于遗传算法和非线性规划的函数寻优算法(史峰) 3基于遗传算法的BP神经网络优化算法(王辉) 4设菲尔德大学的MATLAB遗传算法工具箱(王辉) 5基于遗传算法的LQR空制优化算法(胡斐) 6 遗传算法工具箱详解及应用(胡斐) 7 多种群遗传算法的函数优化算法(王辉) 8 基于量子遗传算法的函数寻优算法(王辉) 9多目标ParetO最优解搜索算法(胡斐) 10基于多目标ParetO的二维背包搜索算法(史峰) 11 基于免疫算法的柔性车间调度算法(史峰) 12 基于免疫算法的运输中心规划算法(史峰) 13 基于粒子群算法的函数寻优算法(史峰) 14 基于粒子群算法的PID 空制优化算法(史峰) 15基于混合粒子群算法的TSP寻优算法(史峰) 16 基于动态粒子群算法的动态环境寻优算法(史峰) 17 粒子群算法工具箱(史峰) 18 基于鱼群算法的函数寻优算法(王辉) 佃基于模拟退火算法的TSP算法(王辉) 20 基于遗传模拟退火算法的聚类算法(王辉) 21基于模拟退火算法的HEV能量管理策略参数优化(胡斐)

22蚁群算法的优化计算一一旅行商问题(TSP优化(郁磊) 23 基于蚁群算法的二维路径规划算法(史峰) 24 基于蚁群算法的三维路径规划算法(史峰) 25 有导师学习神经网络的回归拟合——基于近红外光谱的汽油辛烷值预测(郁磊) 26 有导师学习神经网络的分类——鸢尾花种类识别(郁磊) 27 无导师学习神经网络的分类——矿井突水水源判别(郁磊) 28 支持向量机的分类——基于乳腺组织电阻抗特性的乳腺癌诊断 (郁磊) 29 支持向量机的回归拟合——混凝土抗压强度预测(郁磊) 30 极限学习机的回归拟合及分类——对比实验研究(郁磊) 智能算法是我们在学习中经常遇到的算法,主要包括遗传算法,免疫算法,粒子群算法,神经网络等,智能算法对于很多人来说,既爱又恨,爱是因为熟练的掌握几种智能算法,能够很方便的解决我们的论坛问题,恨是因为智能算法感觉比较“玄乎” ,很难理解,更难用它来解决问题。 因此,我们组织了王辉,史峰,郁磊,胡斐四名高手共同写作 MATLAB智能算法,该书包含了遗传算法,免疫算法,粒子群算法,鱼群算法,多目标pareto 算法,模拟退火算法,蚁群算法,神经网络,SVM 等,本书最大的特点在于以案例为导向,每个案例针对一个实际问题,给出

MATLAB智能算法30个案例分析

MATLAB 智能算法30个案例分析 第1 章 1、案例背景 遗传算法(Genetic Algorithm,GA)是一种进化算法,其基本原理是仿效生物界中的“物竞天择、适者生存”的演化法则。遗传算法的做法是把问题参数编码为染色体,再利用迭代的方式进行选择、交叉以及变异等运算来交换种群中染色体的信息,最终生成符合优化目标的染色体。 在遗传算法中,染色体对应的是数据或数组,通常是由一维的串结构数据来表示,串上各个位置对应基因的取值。基因组成的串就是染色体,或者叫基因型个体( Individuals) 。一定数量的个体组成了群体(Population)。群体中个体的数目称为群体大小(Population Size),也叫群体规模。而各个个体对环境的适应程度叫做适应度( Fitness) 。 2、案例目录: 1.1 理论基础 1.1.1 遗传算法概述 1. 编码 2. 初始群体的生成 3. 适应度评估 4. 选择 5. 交叉 6. 变异 1.1.2 设菲尔德遗传算法工具箱 1. 工具箱简介 2. 工具箱添加 1.2 案例背景 1.2.1 问题描述 1. 简单一元函数优化 2. 多元函数优化 1.2.2 解决思路及步骤 1.3 MATLAB程序实现 1.3.1 工具箱结构 1.3.2 遗传算法中常用函数 1. 创建种群函数—crtbp 2. 适应度计算函数—ranking 3. 选择函数—select 4. 交叉算子函数—recombin 5. 变异算子函数—mut 6. 选择函数—reins 7. 实用函数—bs2rv 8. 实用函数—rep

1.3.3 遗传算法工具箱应用举例 1. 简单一元函数优化 2. 多元函数优化 1.4 延伸阅读 1.5 参考文献 3、主程序: 1. 简单一元函数优化: clc clear all close all %% 画出函数图 figure(1); hold on; lb=1;ub=2; %函数自变量范围【1,2】 ezplot('sin(10*pi*X)/X',[lb,ub]); %画出函数曲线 xlabel('自变量/X') ylabel('函数值/Y') %% 定义遗传算法参数 NIND=40; %个体数目 MAXGEN=20; %最大遗传代数 PRECI=20; %变量的二进制位数 GGAP=0.95; %代沟 px=0.7; %交叉概率 pm=0.01; %变异概率 trace=zeros(2,MAXGEN); %寻优结果的初始值 FieldD=[PRECI;lb;ub;1;0;1;1]; %区域描述器 Chrom=crtbp(NIND,PRECI); %初始种群 %% 优化 gen=0; %代计数器 X=bs2rv(Chrom,FieldD); %计算初始种群的十进制转换 ObjV=sin(10*pi*X)./X; %计算目标函数值 while gen

最新Matlab绘图经典案例

M a t l a b绘图经典案例

1、 三维曲线 >> t=0:pi/50:10*pi; >> plot3(sin(2*t),cos(2*t),t) >> axis square >> grid on 2、一窗口多图形 >> t=-2*pi:0.01:2*pi; >> subplot(3,2,1) >> plot(t,sin(t)) >> subplot(3,2,2) >> plot(t,cos(t)) >> subplot(3,2,3) >> plot(t,tan(t)) >> axis([-pi pi -100 100]) >> subplot(3,2,4) >> plot(t,cot(t)) >> axis([-pi pi -100 100]) >> subplot(3,2,5)

>> plot(t,atan(t)) >> subplot(3,2,6) >> plot(t,acot(t)) 3、图形样式、标注、题字 (也可以利用菜单直接Insert) >> x=0:pi/20:2*pi; >> plot(x,sin(x),'b-.') >> hold on >> plot(x,cos(x),'r--') >> hold on >> plot(x,sin(x)-1,'g:') >> hold on >> plot(x,cos(x)-1) >> xlabel('x'); >> xlabel('x轴'); >> ylabel('y轴'); >> title('图形样式、标注等'); >> text(pi,sin(pi),'x=\pi'); >> legend('sin(x)','cos(x)','sin(x)-1','cos(x)-1'); >> [x1,y1]=ginput(1) %利用鼠标定位查找线上某点的值

Malmquist-Luenberger 指数及matlab应用:一个案例分析

Malmquist -Luenberger 指数及matlab 应用算例分析 一、Malmquist -Luenberger 基本知识 当被评价 DMU 的数据为包含多个时间点的观测值的面板数据时,就可以对生产率的变动情况以及变动的分解因素进行分析。DEA 模型的计算结果是技术效率,是一种相对效率,它不能用来动态地分析生产率的变化。这是因为它在每个时间点构造一个生产前沿,DMU 在不同时间点参考的生产前沿不一样。Malmquist 全要素生产率(Total Factor Productivity, TFP )指数就是常用来动态地分析生产率的变动情况,并对技术效率和技术进步各自对生产率变动所起的作用进行分析。 Malmquist 全要素生产率指数的概念最早源于 Malmquist (1953)。F?re 等人(1992)最早采用 DEA 的方法计算 Malmquist 指数,并将 Malmquist 指数(MI )分解为被评价 DMU 在两个时期内的技术效率变化(Technical Efficiency Change , EC )和生产技术的变化(Technological Change ,TC ),其中生产技术的变化反映的是生产前沿的变动,技术效率的变化反映的是向生产前沿的移动程度。 Chung 等(1997)将包含坏产出的方向距离函数应用于 Malmquist 模型,并将得出的 Malmquist 指数称为 Malmquist -Luenberger 指数。通常使用两个 Malmquist -Luenberger 生产率指数的几何平均值得到以t 期为基期到t +1期的全要素生产率的变化。 11 1112()++++=?=?t t t t t i i i i i ML ML ML MLTECH MLEFFCH Malmquist -Luenberger 生产率被拆分为两部分:技术进步率1+t i MLTECH 和技术效率变化1+t i MLEFFCH 。Malmquist -Luenberger 生产率指数值等于1表示,生产率没有发生变化; 大于1或小于1时,分别表示生产率增长或生产率衰退。技术进步率1+t i MLTECH 指数测度环境生产前沿面从t 到t+1时期的移动。如果1+t i TECH 指数值大于(小于)1,表示从t 到t + 1时期环境生产前沿朝“更多(少)的好产出,更少(多)的坏产出”方向移动。出现了技术进步(技术退步)。技术效率变化1+t i MLEFFCH 指数测度从t 到t + 1时期每个观察个体的实际生产与环境生产前沿面所示的最大可能产出迫近(Catching -up)程度的变化。如果1+t i EFFCH 指数值大于(小于) 1,表示从t 到t + 1时期出现了效率提高(效率损失)。Malmquist -Luenberger 生产率指数求解过程中需要借助线形规划计算,具体公式以及其他说明可以见相关文献。 二、实例分析 三个投入、一个期望产出、二个非期望产出,30个个体,10年数据,具体见Malmquist. xls 数据说明,可以在百度云库下载。 下面这个程序可以计算规模不变的Malmquist -Luenberger 指数,包括技术进步率1+t i MLTECH 和技术效率变化1+t i MLEFFCH 。该程序可以计算多投入、多产出,包括多个非期望产出的Malmquist -Luenberger 指数。 该程序可以计算的Malmquist -Luenberger 指数应该可以处理基本的相关问题。 注意:对于matlab 调用excel 时,投入指标、期望产出和非期望产出指标的排放,具体可以

最新用matlab解析实际案例

Matlab大作业 专业:东凌经济管理学院 班级: 小组成员: 2012年5月

1成员分工: **(组长):第一题模型一建立,文档编写 ***:第一题模型二建立,文档编写 ***:第二题模型建立 2第一题 某小型超市出售某一品牌八宝粥,其需求量与消费者平均收入和商品价格密切相关,根据近期几个月每一个月的消费记录以及消费者收入市场调查,统计如下表。现在在一个地区新建一所同样的超市,出售同样一款八宝粥,该超市附近消费者平均收入为4000元,超市经理想知道八宝粥定价6元时,进多少货才会比较合适。 需求量100 75 80 70 50 65 90 100 110 60 收入4000 2400 4800 2000 1200 1600 5200 4400 5200 1200 价格 5 7 6 6 8 7 5 4 3 9 2.1 基本假设 1)假设该品牌八宝粥的超市库存量与需求量一致,不存在多余库存。 2)假设超市每个月就进一次货。 3)假设超市之前调查的数据充分准确。 4)假设在新超市,人群收入以及商品价格对需求量的影响与之前规律类似。 5)假设该品牌八宝粥的需求量除了与消费者收入和商品价格有关,其他因素影响很小,可以忽略不计。

2.2 符号设定 :消费者收入向量。)(income I :商品价格向量。)(price P :商品需求向量。)(t requiremen R 2.3 模型建立 2.3.1 模型分析: 因为有商品价格P 和消费者收入I 两个参数对商品需求量R 产生影响,所以我们选择采用回归模型解决这个问题。 模型一:多元二项式回归模型 222211210P I P I R βββββ++++= Matlab 程序: I=[4000 2400 4800 2000 1200 1600 5200 4400 5200 1200]; P=[5 7 6 6 8 7 5 4 3 9]; R=[100 75 80 70 50 65 90 100 110 60]; f=[I' P']; rstool(f,R','purequadratic')

BP神经网络matlab实例(简单而经典)

p=p1';t=t1'; [pn,minp,maxp,tn,mint,maxt]=premnmx(p,t); %原始数据归一化 net=newff(minmax(pn),[5,1],{'tansig','purelin'},'traingdx');%设置网络,建立相应的BP网络net.trainParam.show=2000; % 训练网络 net.trainParam.lr=0.01; net.trainParam.epochs=100000; net.trainParam.goal=1e-5; [net,tr]=train(net ,pn,tn); %调用TRAINGDM算法训练BP 网络 pnew=pnew1'; pnewn=tramnmx(pnew,minp,maxp); anewn=sim(net,pnewn); %对BP网络进行仿真 anew=postmnmx(anewn,mint,maxt); %还原数据 y=anew'; 1、BP网络构建 (1)生成BP网络 = net newff PR S S SNl TF TF TFNl BTF BLF PF (,[1 2...],{ 1 2...},,,) PR:由R维的输入样本最小最大值构成的2 R?维矩阵。 S S SNl:各层的神经元个数。 [ 1 2...] { 1 2...} TF TF TFNl:各层的神经元传递函数。 BTF:训练用函数的名称。 (2)网络训练 [,,,,,] (,,,,,,) = net tr Y E Pf Af train net P T Pi Ai VV TV (3)网络仿真 = [,,,,] (,,,,) Y Pf Af E perf sim net P Pi Ai T {'tansig','purelin'},'trainrp'

matlab30个案例分析案例5代码

%% 清空环境变量 clc clear %% 下载数据 load data1 input output %% 权重初始化 k=rand(1,2000); [m,n]=sort(k); %训练样本 input_train=input(n(1:1900),:)'; output_train=output(n(1:1900),:)'; %测试样本 input_test=input(n(1901:2000),:)'; output_test=output(n(1901:2000),:)'; %样本权重 [mm,nn]=size(input_train); D(1,:)=ones(1,nn)/nn; %训练样本归一化 [inputn,inputps]=mapminmax(input_train); [outputn,outputps]=mapminmax(output_train); K=10; for i=1:K %弱预测器训练 net=newff(inputn,outputn,5); net.trainParam.epochs=20; net.trainParam.lr=0.1; net=train(net,inputn,outputn); %弱预测器预测 an1=sim(net,inputn); BPoutput=mapminmax('reverse',an1,outputps); %预测误差 erroryc(i,:)=output_train-BPoutput; %测试数据预测

inputn1=mapminmax('apply',input_test,inputps); an2=sim(net,inputn1); test_simu(i,:)=mapminmax('reverse',an2,outputps); %调整D值 Error(i)=0; for j=1:nn if abs(erroryc(i,j))>0.2 %较大误差 Error(i)=Error(i)+D(i,j); D(i+1,j)=D(i,j)*1.1; else D(i+1,j)=D(i,j); end end %计算弱预测器权重 at(i)=0.5/exp(abs(Error(i))); %D值归一化 D(i+1,:)=D(i+1,:)/sum(D(i+1,:)); end %% 强预测器预测 at=at/sum(at); %% 结果统计 %强分离器效果 output=at*test_simu; error=output_test-output; plot(abs(error),'-*') hold on for i=1:8 error1(i,:)=test_simu(i,:)-output; end plot(mean(abs(error1)),'-or') title('强预测器预测误差绝对值','fontsize',12) xlabel('预测样本','fontsize',12) ylabel('误差绝对值','fontsize',12) legend('强预测器预测','弱预测器预测')

matlab典型例子(吐血整理)

一、在同一坐标系内,分别用红色实线和蓝色点划线绘制曲线y1(t)=e0.1sin(0.3πt)和y2(t)=2e -0.5cos(0.6πt),其中t ∈[0, 3],并用星号标记出两条曲线的交叉点。请写出实现上述功能的M 文件程序代码,并给出每条语句注释说明。 t=0:0.01:3%t 取值[0,3]步长为0.01 y1=exp(0.1)*sin(0.3*pi*t)%写出公式y1(t)=e0.1sin(0.3πt) plot(t,y1,'r-')%显示该图形 hold on%继续显示 y2=2*exp(-0.5)*cos(0.6*pi*t)%写出公式y2(t)=2e -0.5cos(0.6πt) plot(t,y2,'b-.') %显示该图形 r0=abs(y2-exp(0.1)*sin(0.3*pi*t))<=0.015%设定差值的绝对值<=0.015 yy=r0.*y1;xx=r0.*t;plot(xx(r0~=0),yy(r0~=0),'r*')%用*标记交叉点 结果如下: 00.51 1.52 2.53 -1.5 -1 -0.5 0.5 1 1.5 二、求解多项式3x4-8x2+x -10除以多项式x2+x+3;计算方程3x4-8x2+x -10=0的解。请编写实现上述运算的M 程序代码,并给出每条语句注释说明。 a=[3 0 -8 1 -10]% 3x4-8x2+x -10的系数矩阵 b=[1 1 3]% x2+x+3的系数矩阵 [q,r]=deconv(a,b)%求根和余。q 为根,r 为余 结果如下: q = 3 -3 -1 4 r = 0 0 0 24 32

matlab编程实例100例

1-32是:图形应用篇 33-66是:界面设计篇 67-84是:图形处理篇 85-100是:数值分析篇 实例2:三角函数曲线(2) function shili02 h0=figure('toolbar','none',... 'position',[200 150 450 350],... 'name','实例02'); x=-pi:0.05:pi; y=sin(x)+cos(x); plot(x,y,'-*r','linewidth',1); grid on xlabel('自变量X'); ylabel('函数值Y'); title('三角函数'); 实例3:图形的叠加 function shili03 h0=figure('toolbar','none',... 'position',[200 150 450 350],... 'name','实例03'); x=-pi:0.05:pi; y1=sin(x); y2=cos(x); plot(x,y1,... '-*r',... x,y2,... '--og'); grid on xlabel('自变量X'); ylabel('函数值Y'); title('三角函数'); 实例4:双y轴图形的绘制function shili04

h0=figure('toolbar','none',... 'position',[200 150 450 250],... 'name','实例04'); x=0:900;a=1000;b=0.005; y1=2*x; y2=cos(b*x); [haxes,hline1,hline2]=plotyy(x,y1,x,y2,'semilogy','plot'); axes(haxes(1)) ylabel('semilog plot'); axes(haxes(2)) ylabel('linear plot'); 实例6:图形标注 function shili06 h0=figure('toolbar','none',... 'position',[200 150 450 400],... 'name','实例06'); t=0:pi/10:2*pi; h=plot(t,sin(t)); xlabel('t=0到2\pi','fontsize',16); ylabel('sin(t)','fontsize',16); title('\it{从0to2\pi 的正弦曲线}','fontsize',16) x=get(h,'xdata'); y=get(h,'ydata'); imin=find(min(y)==y); imax=find(max(y)==y); text(x(imin),y(imin),... ['\leftarrow最小值=',num2str(y(imin))],... 'fontsize',16) text(x(imax),y(imax),... ['\leftarrow最大值=',num2str(y(imax))],... 'fontsize',16) 实例7:条形图形 function shili07 h0=figure('toolbar','none',... 'position',[200 150 450 350],... 'name','实例07'); tiao1=[562 548 224 545 41 445 745 512]; tiao2=[47 48 57 58 54 52 65 48]; t=0:7; bar(t,tiao1) xlabel('X轴');

相关文档
最新文档