求用MATLAB编写的层次分析法程序

求用MATLAB编写的层次分析法程序,第1张

%层次分析法的matlab程序

1、disp('请输入判断矩阵A(n阶)');

A=input('A=');

[n,n]=size(A);

x=ones(n,100);

y=ones(n,100);

m=zeros(1,100);

m(1)=max(x(:,1));

y(:,1)=x(:,1);

x(:,2)=Ay(:,1);

m(2)=max(x(:,2));

y(:,2)=x(:,2)/m(2);

p=00001;i=2;k=abs(m(2)-m(1));

while k>p

i=i+1;

x(:,i)=Ay(:,i-1);

m(i)=max(x(:,i));

y(:,i)=x(:,i)/m(i);

k=abs(m(i)-m(i-1));

disp('权向量');disp(w);

disp('最大特征值');disp(t);

2、y(:,i)=x(:,i)/m(i);

k=abs(m(i)-m(i-1));

end

a=sum(y(:,i));

w=y(:,i)/a;

t=m(i);

disp('权向量');disp(w);

disp('最大特征值');disp(t);

%以下是一致性检验

扩展资料:

Matlab是一个高级的矩阵/阵列语言,它包含控制语句、函数、数据结构、输入和输出和面向对象编程特点。用户可以在命令窗口中将输入语句与执行命令同步,也可以先编写好一个较大的复杂的应用程序(M文件)后再一起运行。

新版本的MATLAB语言是基于最为流行的C++语言基础上的,因此语法特征与C++语言极为相似,而且更加简单,更加符合科技人员对数学表达式的书写格式。使之更利于非计算机专业的科技人员使用。而且这种语言可移植性好、可拓展性极强,这也是MATLAB能够深入到科学研究及工程计算各个领域的重要原因。

参考资料来源:百度百科-MATLAB

哈哈哈,冬瓜把网址也给了,谢谢宣传。

来个实际例子

混凝土的抗压强度随养护时间的延长而增加,现将一批混凝土作成12个试块,记录了养护日期x(日)及抗压强度y(kg/cm2)的数据:

养护时间x 2 3 4 5 7 9 12 14 17 21 28 56

抗压强度y 35+r 42+r 47+r 53+r 59+r 65+r 68+r 73+r 76+r 82+r 86+r 99+r

建立非线性回归模型,对得到的模型和系数进行检验。

注明:此题中的+r代表加上一个[-05,05]之间的随机数

%模型为:y=a+k1exp(mx)+k2exp(-mx);

clc;clear;

x=[2 3 4 5 7 9 12 14 17 21 28 56];

r=rand(1,12)-05;

y1=[35 42 47 53 59 65 68 73 76 82 86 99];

y=y1+r

myfunc=inline('beta(1)+beta(2)exp(beta(4)x)+beta(3)exp(-beta(4)x)','beta','x');

beta=nlinfit(x,y,myfunc,[05 05 05 05]);

a=beta(1),k1=beta(2),k2=beta(3),m=beta(4)

%test the model

xx=min(x):max(x);

yy=a+k1exp(mxx)+k2exp(-mxx);

plot(x,y,'o',xx,yy,'r')

结果:

a = 875244

k1 = 00269

k2 = -634591

m = 01083

图形见:

>

1理解连续系统时域分析方法

2学习利用matlab对连续系统进行时域分析的方法

3掌握单位冲激响应和单位阶跃响应一般求解方法和基本特征,学习利用matlab求此响应的方法。

4掌握单位冲激响应与系统稳定性、因果性之间的关系。

二、实验器材

计算机、MATLAB软件

三、实验原理

对于单输入-单输出系统的输入激励为 f (t),输出响应为y(t),则描述连续LTI系统的数学模型为n阶次的常系数线性微分方程,形式如下

[上传失败(image-82e2d0-1639285196529)] (3-1)

式子中, a i = 0,1,n,和b i =0,1,m均为常数。

由信号与系统的分析理论值,如果描述系统的微分方程、激励和初始状态已知,我们可用经典时域求解法求出其解。但对于高阶系统,手工计算十分的繁琐,甚至很困难,这时可以用matlab工具求解。

Matlab里提供了求(3-1)解用到的函数,常用的是impluse()、step()、lism()、conv()、dsolve()。下面我们分别介绍这几个函数。

1连续时间系统冲激响应和阶跃响应的求解

连续LTI系统的冲激响应和阶跃响应,分别用impluse和step求解。其调用格式为

impluse (b,a) y=impluse(sys,t)

step (b,a) y=step(sys,t)

式中,t表示计算系统响应的抽样点向量,sys是LTI系统模型,它表示 微分方程,差分方程或状态方程 。其调用格式

sys = tf (b,a)

式中,b和a分别是微分方程的右端和左端系数向量。例如

[上传失败(image-63fd93-1639285196529)]

用a=[a3,a2,a1,a0] ; b=[b3,b2,b1,b0] ,sys = tf (b,a) 获得其LTI模型。

例1:已知描述某连续系统的微分方程为

[上传失败(image-954b31-1639285196529)]

试利用matlab绘出该系统的单位冲激响应和单位阶跃响应的时域波形,并根据单位冲激响应判断系统的稳定性和因果性。`1

matlab程序如下

a=[1 1 6];

b=[1];

subplot(2,1,1)

impulse(b,a)

subplot(2,1,2)

step(b,a)

程序运行后,其图形如下3-1所示。

[上传失败(image-8ac458-1639285196530)]

图3-1 系统的冲激响应和阶跃响应图

从图3-1所示的系统的单位冲激响应的时域波形可以看出,当时间t<0时系统的单位冲激响应h(t)=0,所以该系统为因果系统;同时h(t)随着时间的增长而衰减,当t趋于无穷大时时,h(t)趋于零,所以系统也是一个稳定的系统。

2连续时间系统零输入响应的求解

在MATLAB中,initial是求连续系统的零输入响应函数,其调用形式为

initial(sys,x0)

[y,x,t]=initial(sys,x0)

initial函数可计算出连续时间线性系统由于初始状态所引起的响应(故而称零输入响应)。当不带输出变量引用函数时,initial函数在当前图形窗口中直接绘制出系统的零输入响应。

例2:已知描述某连续系统的微分方程为

[上传失败(image-15bccf-1639285196529)]

y(0)=1,y’(0)=2, 用matlab求其零输入响应

程序如下:

a=[1 1 6];

b=[1];

sys=tf(b,a);

sys1=ss(sys); % 转成状态变量表示

x0=[1,2]

initial(sys1,x0)

运行结果如图3-2所示

[上传失败(image-f08768-1639285196530)]

图3-2 系统的零输入响应图

3连续时间系统零状态响应的数值计算----- lism()

求解微分方程零状态响应的数值解。其调用格式主要有两种。

lism(sys,f,t) y=lism(sys,f,t)

其中,f是输入信号在向量t定义的时间点上的采样值,t是输入信号时间范围向量,sys是LTI系统模型

例3: 已知描述某连续系统的微分方程为

[上传失败(image-4a9e83-1639285196529)]

试利用matlab求出该系统当激励信号为[上传失败(image-5ad649-1639285196529)] 时,系统的响应[上传失败(image-348322-1639285196529)] ,并会出其波形。

matlab程序如下

a=[1 2 1];

b=[1 2];

sys=tf(b,a); %定义系统函数对象

p=001; %定义采样时间间隔

t=0:p:5;

f=exp(-2t);

lsim(sys,f,t); %对系统输出信号进行仿真

程序运行后,其图形如图3-3所示。

[上传失败(image-3950ed-1639285196529)]

图3-3 连续系统的响应仿真

4微分方程的符号解的函数dsolve()

在MATLAB中,dsolve()是求解微分方程的符号解的函数,其调用形式为

r=dsolve(‘eq1,eq2,…’,’cond1,cond2,…’,’v’)

或r=dsolve(‘eq1’,eq2’,…,’cond1’,’cond2’,…,’v’)

其中cond1、cond2…是初始条件(如没有给出初始条件,则默认为求通解),v为自变量变量。D表示一阶微分,D2为二阶微分……。函数dsolve把D后的变量当成因变量,默认为这些变量对自变量的求导。

例4:求二阶系统[上传失败(image-9ca77c-1639285196529)] 在初始条件[上传失败(image-ae497b-1639285196529)] 下的零输入响应的解、零状态响应的解及全解

matlab程序如下

yzi=dsolve('D2y+5 Dy+4 y=0','y(0)=0,Dy(0)=1')

yzs=dsolve('D2y+5 Dy+4 y=exp(-3t)','y(0)=0,Dy(0)=0')

y=dsolve('D2y+5 Dy+4 y=exp(-3t)','y(0)=0,Dy(0)=1')

运行结果如下

yzi =

-1/3 exp(-4 t)+1/3exp(-t)

yzs =

1/3 exp(-4 t)+1/6 exp(-t)-1/2 exp(-3t)

y =

1/2 exp(-t)-1/2 exp(-3t)

即 [上传失败(image-8a13eb-1639285196529)]

[上传失败(image-9036d5-1639285196529)]

[上传失败(image-fa7bd7-1639285196529)]

四、实验内容

1验证实验原理中所述的相关程序

2已知描述某连续系统的微分方程为

[上传失败(image-d41f06-1639285196529)]

(1) 试利用matlab绘出该系统的冲激响应和阶跃响应的时域波形,并根据冲激响应判断系统的稳定性。

a=[1,3,2];

b=[1,2];

subplot(2,1,1)

impulse(b,a);

subplot(2,1,2)

step(b,a);

wending

(2) 当激励信号为[上传失败(image-e16660-1639285196529)] 时,系统的零状态响应[上传失败(image-5beb2d-1639285196529)] ,并绘出响应的波形。

a=[1,3,2];

b=[1,2];

sys=tf(b,a)

t=0:001:5;

f=exp(-2t);

lsim(sys,f,t)

3求三阶系统[上传失败(image-a71fa6-1639285196529)] 在初始条件[上传失败(image-40502a-1639285196529)] 下的零输入响应的解、零状态响应的解及全解。

yzi=dsolve('D2y+5Dy+y=0','y(0)=0,Dy(0)=1')

yzs=dsolve('D2y+5 Dy+y=exp(-3 t)','y(0)=0,Dy(0)=0')

y=dsolve('D2y+5 Dy+y=exp(-3 t)','y(0)=0,Dy(0)=1')

五、实验报告要求

1实验内容中详细说明用连续系统时域分析法的步骤与原理。

2写出其对应的matlab程序。

3上机调试程序的方法及实验中的心得体会。

a = -1725 (-11520,8066)

b= -001162 (-00794, 005615)

c= 1746 (-8049, 11540)

e+004是科学计数法,表示10的4次方

- MATLAB中用遗传算法求解约束非线性规划问题 Solution of optimization with nonliear constraints programming by genetic alogorithm in MATLAB 作者:王勇, 期刊-核心期刊 哈尔滨商业大学学报(自然科学版)JOURNAL OF HARBIN UNIVERSITY OF COMMERCE(NATURAL SCIENCES EDITION) 2006年 第04期

- 约束优化问题的遗传算法求解 Genetic algorithm solution for constrained optimization 作者:宋松柏,蔡焕杰,康艳, 期刊-核心期刊 西北农林科技大学学报(自然科学版)JOURNAL OF NORTHWEST SCI-TECH UNIVERSITY OF AGRICULTURE AND FORESTRY(NATURAL SCIENCE EDITION) 2005年 第01期

- 约束优化问题的遗传算法求解 Genetic algorithm solution for constrained optimization 作者:宋松柏,蔡焕杰,康艳, 期刊-核心期刊 西北农林科技大学学报(自然科学版)JOURNAL OF NORTHWEST SCI-TECH UNIVERSITY OF AGRICULTURE AND FORESTRY(NATURAL SCIENCE EDITION) 2005年 第01期

- 非线性规划问题求解的遗传算法设计与实现 Design and Realization of Genetic Algorithm for Solving Nonlinear Programming Problem 作者:刘雪梅,李国民,李景文,毕义明, 期刊-核心期刊 系统工程与电子技术SYSTEMS ENGINEERING AND ELECTRONICS 2000年 第02期

- 解非线性约束规划问题的新型多目标遗传算法 New multi-objective genetic algorithm for nonlinear constraint programming problem 作者:刘淳安,LIU Chun-an, 期刊-核心期刊 计算机工程与设计COMPUTER ENGINEERING AND DESIGN 2006年 第05期

- 解非线性约束规划问题的新型多目标遗传算法 New multi-objective genetic algorithm for nonlinear constraint programming problem 作者:刘淳安, 期刊-核心期刊 计算机工程与设计COMPUTER ENGINEERING AND DESIGN 2006年 第05期

- 基于Matlab遗传工具箱的高强混凝土配合比优化 Mixtures Optimal Design of High-strength Concrete Based on GA Toolbox of MATLAB 作者:陆海标,郑建壮,徐旭岭, 期刊 浙江水利水电专科学校学报JOURNAL OF ZHEJIANG WATER CONSERVANCY AND HYDROPOWER COLLEGE 2007年 第03期

- 遗传算法求解约束非线性规划及Matlab实现 The Solution of Optimization with Nonliear Constraints Programming with Genetic Algorithm and Demonstration by Matlab 作者:倪金林, 期刊-核心期刊 大学数学COLLEGE MATHEMATICS 2005年 第01期

-

- 基于遗传算法的非线性多目标规划及其在油田开发规划中的应用 作者:张晓东, 李树荣, 熊福力, 会议 第二十二届中国控制会议第二十二届中国控制会议论文集(上) 2003年

- 区间非线性规划问题的确定化描述及其递阶求解 Deterministic Interpretation of Interval Nonlinear Programming and Its Hierarchical Optimization Solutions 作者:蒋峥,戴连奎,吴铁军, 期刊-核心期刊 系统工程理论与实践SYSTEMS ENGINEERING-THEORY & PRACTICE 2005年 第01期

- 区间非线性规划问题的确定化描述及其递阶求解 Deterministic Interpretation of Interval Nonlinear Programming and Its Hierarchical Optimization Solutions 作者:蒋峥,戴连奎,吴铁军, 期刊-核心期刊 系统工程理论与实践SYSTEMS ENGINEERING-THEORY & PRACTICE 2005年 第01期

- 一种新的求解非线性规划的混合遗传算法 作者:李丰兵, 会议 第八届中国青年运筹信息管理学者大会第八届中国青年运筹信息管理学者大会论文集 2006年

- 一种启发式算法求解有交易成本组合投资问题 作者:安智宇, 会议 第三届不确定系统年会第三届不确定系统年会论文集 2005年

- 基于遗传算法的设计地震反应谱标定方法 Calibrating Method of Seismic Response Spectrum Based on Genetic Algorithm 作者:夏江,陈清军, 期刊-核心期刊 力学季刊CHINESE QUARTERLY OF MECHANICS 2006年 第02期

- 具有线性不等式约束非线性规划问题的降维算法 Descending Dimension Algorithm of Nolinear Programming Problem with Linear Inequality Constraints 作者:杨懿,张守贵, 期刊-核心期刊 重庆大学学报(自然科学版)JOURNAL OF CHONGQING UNIVERSITY(NATURAL SCIENCE EDITION) 2007年 第10期

- 改进DNA遗传算法求解非线性多约束规划研究 Refined DNA-GA for solving nonlinear multi-constrained programming 作者:王淑超,王乘, 期刊-核心期刊 华中科技大学学报(自然科学版)JOURNAL OF HUAZHONG UNIVERSITY OF SCIENCE AND TECHNOLOGY(NATURE SCIENCE EDITION) 2004年 第06期

- 改进DNA遗传算法求解非线性多约束规划研究 Refined DNA-GA for solving nonlinear multi-constrained programming 作者:王淑超,王乘, 期刊-核心期刊 华中科技大学学报(自然科学版)JOURNAL OF HUAZHONG UNIVERSITY OF SCIENCE AND TECHNOLOGY(NATURE SCIENCE EDITION) 2004年 第06期

- 序列无约束极小化技术和遗传算法在非线性规划中的应用 On the Application of SUMT and GA to Solving Constrained Nonlinear Programming Problem 作者:刘道建,黄天民, 期刊 邵阳高等专科学校学报JOURNAL OF SHAOYANG COLLEGE 2001年 第04期

- 序列无约束极小化技术和遗传算法在非线性规划中的应用 On the Application of SUMT and GA to Solving Constrained Nonlinear Programming Problem 作者:刘道建,黄天民, 期刊 邵阳高等专科学校学报JOURNAL OF SHAOYANG COLLEGE 2001年 第04期

MATLAB中用遗传算法求解约束非线性规划问题

Solution of optimization with nonliear constraints programming by genetic alogorithm in MATLAB

<<哈尔滨商业大学学报(自然科学版)>>2006年 第22卷 第04期

作者: 王勇

约束非线性规划问题的求解往往是运筹学中的NP问题,利用MATLAB中的遗传算法工具箱中的函数方便、快捷的求得了两个实例的最优解,进一步指出了遗传算法与传统的最优化算法的区别

关键词: 遗传算法, 约束非线性规划, MATLAB, | 全部关键词

最优化技术方法及MATLAB的实现

编 号: 86755

著 作 者: 1600

出 版 社: 化学工业出版社

书 号: 9787502563837

出版日期: 2005-1-1

内容包括线性规划与MATLAB的实现,即非线性规划、整数规划、动态规划、多目标规划与MATLAB的实现及图与网络分析技术等。为方便读者学习,本书安排了大量最优化方法在工程中的应用实例,根据需要逐个编写了解决这些问题的相应数学模型,应用MATLAB程序,通过简洁的运算给出了较为复杂问题的解。

本书可作为最优化技术方法或MATLAB优化工具箱应用的入门教材,供高职高专或本科院校管理、经济类专业的师生使用,也可供广大爱好者学习参考。

随着计算机科学的发展和应用,应用最优化方法解决问题的领域在不断扩大,最优化的理论和方法也得到普及和发展。线性规划、非线性规划、整数规划、动态规划和多目标规划以及图与网络技术作为最优化方法的主要内容已经成为工程技术人员和经济管理人员所必备的基础知识,目前,最优化方法课程已经开始作为高等院校的普及课程。

在“高等数学”中学习的极值理论、线性代数、向量、矩阵、泰勒公式等概念为学习“最优化方法”奠定了基础。在“最优化方法”中,这些知识的重要价值将在工程应用中得到充分体现。

在最优化方法的应用过程中,要将所学知识直接应用于解决实际问题,中间往往还有一段距离。有时,面对需要建立的复杂数学模型,尤其是繁复的数学计算问题,往往难以入手,因此,人们总是希望能够找到具有通用性和广泛性的方法,用类似于日常使用计算器的手段,解决较为复杂的计算问题。在本书中,将“最优化方法”与“MATLAB工具箱”连接起来学习,就能够在一定程度上弥补这一缺陷。

MATLAB是一个很不错的计算软件,它给数学计算带来了许多的便利和可能性,它提供了几十个工具箱,利用这些工具箱,可以解决不同领域的许多问题。

本书简明扼要、叙述清楚、文字流畅,既可作为工程学科、管理及经济学科的专、本科学生的“最优化方法”教材,也可作为应用“MATLAB工具箱”入门参考教材使用。

本书是编者根据多年的教学经验,为适应新的教学需要而编写的,所有工程应用实例均经过了MATLAB6�5的运行。

本书由曹卫华、郭正编写,其中第1章、第2章、第5章、第6章由曹卫华编写,第3章、第4章、第7章由郭正编写。本书在定稿前曾听取苏金明教授、李旭宇博士等专家的许多宝贵意见,谨在此表示感谢,并感谢其他支持和关心本书出版的领导和同行。

由于本人水平有限,书中错误和不足之处在所难免。有不妥之处,望批评指正。

1概述�

1�1引言�

1�2最优化问题及其工程背景�

1�2�1线性规划问题�

1�2�2非线性规划问题�

1�2�3整数规划问题�

1�2�4多目标规划问题�

1�2�5动态规划问题�

1�2�6图论与网络流�

1�3MATLAB6�5优化工具箱及工程应用简介�

2线性规划与MATLAB实现�

2�1线性规划基本理论�

2�1�1线性规划问题及其数学模型�

2�1�2线性规划问题解的几何意义及图解法�

2�1�3线性规划的基本原理�

2�2求解线性规划问题的基本方法�

2�2�1单纯形法�

2�2�2大�M�法�

2�3线性规划问题的灵敏度分析�

2�4线性规划问题的MATLAB6�5辅助计算及工程应用实例�

2�4�1MATLAB优化工具箱函数选用�

2�4�2工程应用实例�

习题�

3非线性规划与MATLAB实现�

3�1非线性规划基本概念及分类�

3�2无约束非线性规划�

3�2�1最优性条件�

3�2�2一维搜索�

3�2�2�1平分法�

3�2�2�2黄金分割法(0�618法)�

3�2�2�3牛顿法�

3�2�3无约束非线性规划的MATLAB6�5辅助计算及工程应用

实例�

3�2�3�1MATLAB优化工具箱函数选用�

3�2�3�2工程应用实例�

3�3有约束非线性规划�

3�3�1最优性条件�

3�3�2惩罚函数法�

3�3�3约束非线性规划的MATLAB6�5辅助计算及工程应用

实例�

3�3�3�1MATLAB优化工具箱函数选用�

3�3�3�2工程应用实例�

3�3�4二次规划及其MATLAB实现�

3�3�4�1二次规划�

3�3�4�2MATLAB优化工具箱函数选用�

3�3�4�3应用实例�

习题�

4整数规划�

4�1概述�

4�2整数规划的图解法�

4�3分支定界法�

4�3�1分支定

以上就是关于求用MATLAB编写的层次分析法程序全部的内容,包括:求用MATLAB编写的层次分析法程序、MATLAB的曲线拟合具体实例、MATLAB实验等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10109130.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存