导航:首页 > 五金知识 > maple优化工具箱

maple优化工具箱

发布时间:2021-11-10 17:32:25

『壹』 maple的技术特征

★ 内置超过5000个符号和数值计算命令,覆盖几乎所有的数学领域,如微积分,线性代数,方程求解,积分和离散变换,概率论和数理统计,物理,图论,张量分析,微分和解析几何,金融数学,矩阵计算,线性规划,组合数学,矢量分析,抽象代数,泛函分析,数论,复分析和实分析,抽象代数,级数和积分变换,特殊函数,编码和密码理论,优化等。
★ 各种工程计算:优化,统计过程控制,灵敏度分析,动力系统设计,小波分析,信号处理,控制器设计,集总参数分析和建模,各种工程图形等。
★ 提供世界上最强大的符号计算和高性能数值计算引擎,包括世界上最强大的微分方程求解器(ODEs,PDEs,高指数DAEs)。
★ 智能自动算法选择。
★ 强大、灵活、容易使用的编程语言,让您能够开发更复杂的模型或算法。
★ 与多学科复杂系统建模和仿真平台MapleSim紧密集成。 ★ 大量易学易用的工具和特征,提供“数学版office”工作环境,用户即使没有任何语法知识也可以完成大量数学问题的计算,显著地缩短学习时间。
★技术文件界面组合文字、数学、图形、声音、建模、科学计算等您所有的工作。
★ 大量的绘图和动画工具,包括超过150种图形类型。基于OpenGL的可视化技术,可定义相机轨迹。图片输出格式包括:BMP、DXF、EPS、GIF、等等。
★ 数据输入和输出格式:ASCII、CSV、MATLAB、Excel、等。
★ 各种文件处理工具,如页眉页脚、段落、幻灯片等;各种图元件,刻度盘、滑动条、按钮等,可在图元件中添加程序,实现交互式仿真操作。 ★ Maple是您所有数学工作的理想环境,您所想象的数学就是您在Maple中做数学的方式。
★ 多种格式(1D、2D)输入数学内容,如教科书一样地显示和操作数学和文字。
★ 工作过程包括最初的草稿、计算、深度分析、演示报告、共享,以及重用。
★ 专业出版工具包括文件处理工具,可输出Maple文件为PDF、HTML、XML、Word、LaTeX、和MathML格式文件。
★ 特有的教育功能包,包含特定主题的计算方法信息和Step-by-Step求解步骤。
★ 使用MapleNET发布交互式内容到web上,将您的工作交互式呈现给您的同事、学生、和同行。 无缝集成到您现有的工具链中
★ OpenMaple API - 在外部程序中使用Maple作为计算引擎,或者通过External calling,在Maple中使用外部程序,如C/Java/Fortran。
★ Maple - CAD系统双向连接:通过CAD Link为CAD系统增加重要的分析功能,如统计、优化、单位和公差计算等,结果在CAD模型中自动更新,目前支持SolidWorks,NX,和 Autodesk Inventor。
★Excel:Excel数据的输入和输出;通过加载项,在Excel内使用Maple计算命令。
★ 专业出版工具包括文件处理工具,可输出Maple文件为PDF、HTML、XML、Word、LaTeX、和MathML格式文件。
★ 数据库:对大型数据集完成分析和可视化。
★MATLAB连接:您可以使用MATLAB Link在Maple中调用MATLAB完成计算,以及利用MATLAB代码生成和转换的功能;另一个选择是Maple Toolbox for Matlab工具箱,Maple-Matlab双向连接,共享数据、变量等。
★ Simulink:输入和输出Simulink模块,添加Maple的分析和优化功能到Simulink模块。 MapleSim:高性能、多领域复杂系统建模和仿真
Global Optimization Toolbox:全局优化工具箱
MapleSim Simulink Connector:MapleSim-Simulink接口工具箱
MapleSim Control Design Toolbox:MapleSim控制设计工具箱
MapleSim Tire Component Library:MapleSim轮胎元件模型库
MapleSim LabVIEW Connector:MapleSim-LabVIEW接口工具箱
Maple Toolbox for MATLAB:Maple-MATLAB双向接口工具箱
Maple T.A.:在线考试和自动评估系统

『贰』 maple和mathematics哪个更擅长符号运算

Matlab、Mathematica、Maple、MathCAD 几个专业数学处理软件相比较,

Maple 更擅长符号运算


有个德国人对几大数学软件做过很精确的比较。一共60多页的文档,从6个大项100多个小项目进行了详细的比较(见PDF文档)。几十个表格,数千行代码,而且为了保证同样的算法的代码质量,Mathematica的代码由Wolfram Research的人来写,Matlab代码由MathWorks的人来写。不得不佩服德国人做事的严谨。

最后评分结果:

Maple 51.13%

Mathematica 71.05%

Matlab 69.58%


总的来说:

Matlab适合工程界,尤其是工具箱、快速代码,还有和第三方软件的很多集成,比如优化工具箱,其中最明显的第三方就是comsol
Mathematica语法优秀,优秀到几乎带有所有的编程范式
Maple符号计算最强,也出了仿真的Maplesim


『叁』 evalf在maple中什么意思

内容Maple系统内置高级技术解决建模和仿真中的数学问题,包括世界上最强大的的符号计算、无限精度数值计算、创新的互联网连接、强大的4GL语言等,内置超过5000个计算命令,数学和分析功能覆盖几乎所有的数学分支,如微积分、微分方程、特殊函数、线性代数、图像声音处理、统计、动力系统、等。
Maple不仅仅提供编程工具,更重要的是提供数学知识。Maple是教授、研究员、科学家、工程师、学生们必备的科学计算工具,从简单的数字计算到高度复杂的非线性问题,Maple都可以帮助您快速、高效地解决问题。用户通过Maple产品可以在单一的环境中完成多领域物理系统建模和仿真、符号计算、数值计算、程序设计、技术文件、报告演示、算法开发、外部程序连接等功能,满足各个层次用户的需要,从高中学生到高级研究人员。Maple 主要技术特征1. 强大的求解器:数学和分析软件的领导者★ 内置超过5000个符号和数值计算命令,覆盖几乎所有的数学领域,如微积分,线性代数,方程求解,积分和离散变换,概率论和数理统计,物理,图论,张量分析,微分和解析几何,金融数学,矩阵计算,线性规划,组合数学,矢量分析,抽象代数,泛函分析,数论,复分析和实分析,抽象代数,级数和积分变换,特殊函数,编码和密码理论,优化等。
★ 各种工程计算:优化,统计过程控制,灵敏度分析,动力系统设计,小波分析,信号处理,控制器设计,集总参数分析和建模,各种工程图形等。
★ 提供世界上最强大的符号计算和高性能数值计算引擎,包括世界上最强大的微分方程求解器(ODEs,PDEs,高指数DAEs)。
★ 智能自动算法选择。
★ 强大、灵活、容易使用的编程语言,让您能够开发更复杂的模型或算法。
★ 与多学科复杂系统建模和仿真平台MapleSim紧密集成。2. 技术文件环境:重新定义数学的使用性★ 大量易学易用的工具和特征,提供“数学版office”工作环境,用户即使没有任何语法知识也可以完成大量数学问题的计算,戏剧性缩短学习曲线。
★ 技术文件界面组合文字、数学、图形、声音、建模、科学计算等您所有的工作。
★ 大量的绘图和动画工具,包括超过150种图形类型。基于OpenGL的可视化技术,可定义相机轨迹。图片输出格式包括:BMP、DXF、EPS、GIF、等等。
★ 数据输入和输出格式:ASCII、CSV、MATLAB、Excel、等。
★ 各种文件处理工具,如页眉页脚、段落、幻灯片等;各种图元件,刻度盘、滑动条、按钮等,可在图元件中添加程序,实现交互式仿真操作。3. 知识捕捉:不仅是工具,更是知识★ Maple是您所有数学工作的理想环境,您所想象的数学就是您在Maple中做数学的方式。
★ 多种格式(1D、2D)输入数学内容,如教科书一样地显示和操作数学和文字。
★ 工作过程包括最初的草稿、计算、深度分析、演示报告、共享,以及重用。
★ 专业出版工具包括文件处理工具,可输出Maple文件为PDF、HTML、XML、Word、LaTeX、和MathML格式文件。
★ 特有的教育功能包,包含特定主题的计算方法信息和Step-by-Step求解步骤。
★ 使用MapleNET发布交互式内容到web上,将您的工作交互式呈现给您的同事、学生、和同行。4. 外部程序连接无缝集成到您现有的工具链中
★ OpenMaple API - 在外部程序中使用Maple作为计算引擎,或者通过External calling,在Maple中使用外部程序,如C/Java/Fortran。
★ Maple - CAD系统双向连接:通过CAD Link为CAD系统增加重要的分析功能,如统计、优化、单位和公差计算等,结果在CAD模型中自动更新,目前支持SolidWorks,NX,和 Autodesk Inventor。
★ Excel:Excel数据的输入和输出;通过加载项,在Excel内使用Maple计算命令。
★ 专业出版工具包括文件处理工具,可输出Maple文件为PDF、HTML、XML、Word、LaTeX、和MathML格式文件。
★ 数据库:对大型数据集完成分析和可视化。
★ MATLAB连接:您可以使用MATLAB Link在Maple中调用MATLAB完计算,以及利用MATLAB代码生成和转换的功能;另一个选择是Maple Toolbox for Matlab工具箱,Maple-Matlab双向连接,共享数据、变量等。
★ Simulink:输入和输出Simulink模块,添加Maple的分析和优化功能到Simulink模块。其他附加产品MapleSim:高性能、多领域复杂系统建模和仿真
Global Optimization Toolbox:全局优化工具箱
MapleSim Simulink Connector:MapleSim

『肆』 有人知道怎么解整数最优化吗我要用数学软件(matlab, maple等)解一个多项二次函数整数最优化问题,谢谢

% 下面举例说明遗传算法 %
% 求下列函数的最大值 %
% f(x)=10*sin(5x)+7*cos(4x) x∈[0,10] %
% 将 x 的值用一个10位的二值形式表示为二值问题,一个10位的二值数提供的分辨率是每为 (10-0)/(2^10-1)≈0.01 。 %
% 将变量域 [0,10] 离散化为二值域 [0,1023], x=0+10*b/1023, 其中 b 是 [0,1023] 中的一个二值数。 %
% %
%--------------------------------------------------------------------------------------------------------------%
%--------------------------------------------------------------------------------------------------------------%

% 编程
%-----------------------------------------------
% 2.1初始化(编码)
% initpop.m函数的功能是实现群体的初始化,popsize表示群体的大小,chromlength表示染色体的长度(二值数的长度),
% 长度大小取决于变量的二进制编码的长度(在本例中取10位)。
%遗传算法子程序
%Name: initpop.m
%初始化
function pop=initpop(popsize,chromlength)
pop=round(rand(popsize,chromlength)); % rand随机产生每个单元为 {0,1} 行数为popsize,列数为chromlength的矩阵,
% roud对矩阵的每个单元进行圆整。这样产生的初始种群。
% 2.2 计算目标函数值
% 2.2.1 将二进制数转化为十进制数(1)
%遗传算法子程序
%Name: decodebinary.m
%产生 [2^n 2^(n-1) ... 1] 的行向量,然后求和,将二进制转化为十进制
function pop2=decodebinary(pop)
[px,py]=size(pop); %求pop行和列数
for i=1:py
pop1(:,i)=2.^(py-i).*pop(:,i);
end
pop2=sum(pop1,2); %求pop1的每行之和
% 2.2.2 将二进制编码转化为十进制数(2)
% decodechrom.m函数的功能是将染色体(或二进制编码)转换为十进制,参数spoint表示待解码的二进制串的起始位置
% (对于多个变量而言,如有两个变量,采用20为表示,每个变量10为,则第一个变量从1开始,另一个变量从11开始。本例为1),
% 参数1ength表示所截取的长度(本例为10)。
%遗传算法子程序
%Name: decodechrom.m
%将二进制编码转换成十进制
function pop2=decodechrom(pop,spoint,length)
pop1=pop(:,spoint:spoint+length-1);
pop2=decodebinary(pop1);
% 2.2.3 计算目标函数值
% calobjvalue.m函数的功能是实现目标函数的计算,其公式采用本文示例仿真,可根据不同优化问题予以修改。
%遗传算法子程序
%Name: calobjvalue.m
%实现目标函数的计算
function [objvalue]=calobjvalue(pop)
temp1=decodechrom(pop,1,10); %将pop每行转化成十进制数
x=temp1*10/1023; %将二值域 中的数转化为变量域 的数
objvalue=10*sin(5*x)+7*cos(4*x); %计算目标函数值
% 2.3 计算个体的适应值
%遗传算法子程序
%Name:calfitvalue.m
%计算个体的适应值
function fitvalue=calfitvalue(objvalue)
global Cmin;
Cmin=0;
[px,py]=size(objvalue);
for i=1:px
if objvalue(i)+Cmin>0
temp=Cmin+objvalue(i);
else
temp=0.0;
end
fitvalue(i)=temp;
end
fitvalue=fitvalue';
% 2.4 选择复制
% 选择或复制操作是决定哪些个体可以进入下一代。程序中采用赌轮盘选择法选择,这种方法较易实现。
% 根据方程 pi=fi/∑fi=fi/fsum ,选择步骤:
% 1) 在第 t 代,由(1)式计算 fsum 和 pi
% 2) 产生 {0,1} 的随机数 rand( .),求 s=rand( .)*fsum
% 3) 求 ∑fi≥s 中最小的 k ,则第 k 个个体被选中
% 4) 进行 N 次2)、3)操作,得到 N 个个体,成为第 t=t+1 代种群
%遗传算法子程序
%Name: selection.m
%选择复制
function [newpop]=selection(pop,fitvalue)
totalfit=sum(fitvalue); %求适应值之和
fitvalue=fitvalue/totalfit; %单个个体被选择的概率
fitvalue=cumsum(fitvalue); %如 fitvalue=[1 2 3 4],则 cumsum(fitvalue)=[1 3 6 10]
[px,py]=size(pop);
ms=sort(rand(px,1)); %从小到大排列
fitin=1;
newin=1;
while newin<=px
if(ms(newin))<fitvalue(fitin)
newpop(newin)=pop(fitin);
newin=newin+1;
else
fitin=fitin+1;
end
end
% 2.5 交叉
% 交叉(crossover),群体中的每个个体之间都以一定的概率 pc 交叉,即两个个体从各自字符串的某一位置
% (一般是随机确定)开始互相交换,这类似生物进化过程中的基因分裂与重组。例如,假设2个父代个体x1,x2为:
% x1=0100110
% x2=1010001
% 从每个个体的第3位开始交叉,交又后得到2个新的子代个体y1,y2分别为:
% y1=0100001
% y2=1010110
% 这样2个子代个体就分别具有了2个父代个体的某些特征。利用交又我们有可能由父代个体在子代组合成具有更高适合度的个体。
% 事实上交又是遗传算法区别于其它传统优化方法的主要特点之一。
%遗传算法子程序
%Name: crossover.m
%交叉
function [newpop]=crossover(pop,pc)
[px,py]=size(pop);
newpop=ones(size(pop));
for i=1:2:px-1
if(rand<pc)
cpoint=round(rand*py);
newpop(i,:)=[pop(i,1:cpoint),pop(i+1,cpoint+1:py)];
newpop(i+1,:)=[pop(i+1,1:cpoint),pop(i,cpoint+1:py)];
else
newpop(i,:)=pop(i);
newpop(i+1,:)=pop(i+1);
end
end
% 2.6 变异
% 变异(mutation),基因的突变普遍存在于生物的进化过程中。变异是指父代中的每个个体的每一位都以概率 pm 翻转,即由“1”变为“0”,
% 或由“0”变为“1”。遗传算法的变异特性可以使求解过程随机地搜索到解可能存在的整个空间,因此可以在一定程度上求得全局最优解。
%遗传算法子程序
%Name: mutation.m
%变异
function [newpop]=mutation(pop,pm)
[px,py]=size(pop);
newpop=ones(size(pop));
for i=1:px
if(rand<pm)
mpoint=round(rand*py);
if mpoint<=0
mpoint=1;
end
newpop(i)=pop(i);
if any(newpop(i,mpoint))==0
newpop(i,mpoint)=1;
else
newpop(i,mpoint)=0;
end
else
newpop(i)=pop(i);
end
end
% 2.7 求出群体中最大得适应值及其个体
%遗传算法子程序
%Name: best.m
%求出群体中适应值最大的值
function [bestindivial,bestfit]=best(pop,fitvalue)
[px,py]=size(pop);
bestindivial=pop(1,:);
bestfit=fitvalue(1);
for i=2:px
if fitvalue(i)>bestfit
bestindivial=pop(i,:);
bestfit=fitvalue(i);
end
end
% 2.8 主程序
%遗传算法主程序
%Name:genmain05.m
clear
clf
popsize=20; %群体大小
chromlength=10; %字符串长度(个体长度)
pc=0.6; %交叉概率
pm=0.001; %变异概率
pop=initpop(popsize,chromlength); %随机产生初始群体
for i=1:20 %20为迭代次数
[objvalue]=calobjvalue(pop); %计算目标函数
fitvalue=calfitvalue(objvalue); %计算群体中每个个体的适应度
[newpop]=selection(pop,fitvalue); %复制
[newpop]=crossover(pop,pc); %交叉
[newpop]=mutation(pop,pc); %变异
[bestindivial,bestfit]=best(pop,fitvalue); %求出群体中适应值最大的个体及其适应值
y(i)=max(bestfit);
n(i)=i;
pop5=bestindivial;
x(i)=decodechrom(pop5,1,chromlength)*10/1023;
pop=newpop;
end
fplot('10*sin(5*x)+7*cos(4*x)',[0 10])
hold on
plot(x,y,'r*')
hold off
[z index]=max(y); %计算最大值及其位置
x5=x(index)%计算最大值对应的x值
y=z
【问题】求f(x)=x 10*sin(5x) 7*cos(4x)的最大值,其中0<=x<=9
【分析】选择二进制编码,种群中的个体数目为10,二进制编码长度为20,交叉概率为0.95,变异概率为0.08
【程序清单】
%编写目标函数
function[sol,eval]=fitness(sol,options)
x=sol(1);
eval=x 10*sin(5*x) 7*cos(4*x);
%把上述函数存储为fitness.m文件并放在工作目录下
initPop=initializega(10,[0 9],'fitness');%生成初始种群,大小为10
[x endPop,bPop,trace]=ga([0 9],'fitness',[],initPop,[1e-6 1 1],'maxGenTerm',25,'normGeomSelect',...
[0.08],['arithXover'],[2],'nonUnifMutation',[2 25 3]) %25次遗传迭代
运算借过为:x =
7.8562 24.8553(当x为7.8562时,f(x)取最大值24.8553)
注:遗传算法一般用来取得近似最优解,而不是最优解。
遗传算法实例2
【问题】在-5<=Xi<=5,i=1,2区间内,求解
f(x1,x2)=-20*exp(-0.2*sqrt(0.5*(x1.^2 x2.^2)))-exp(0.5*(cos(2*pi*x1) cos(2*pi*x2))) 22.71282的最小值。
【分析】种群大小10,最大代数1000,变异率0.1,交叉率0.3
【程序清单】
%源函数的matlab代码
function [eval]=f(sol)
numv=size(sol,2);
x=sol(1:numv);
eval=-20*exp(-0.2*sqrt(sum(x.^2)/numv)))-exp(sum(cos(2*pi*x))/numv) 22.71282;
%适应度函数的matlab代码
function [sol,eval]=fitness(sol,options)
numv=size(sol,2)-1;
x=sol(1:numv);
eval=f(x);
eval=-eval;
%遗传算法的matlab代码
bounds=ones(2,1)*[-5 5];
[p,endPop,bestSols,trace]=ga(bounds,'fitness')
注:前两个文件存储为m文件并放在工作目录下,运行结果为
p =
0.0000 -0.0000 0.0055
大家可以直接绘出f(x)的图形来大概看看f(x)的最值是多少,也可是使用优化函数来验证。matlab命令行执行命令:
fplot('x 10*sin(5*x) 7*cos(4*x)',[0,9])
evalops是传递给适应度函数的参数,opts是二进制编码的精度,termops是选择maxGenTerm结束函数时传递个maxGenTerm的参数,即遗传代数。xoverops是传递给交叉函数的参数。mutops是传递给变异函数的参数。
【问题】求f(x)=x+10*sin(5x)+7*cos(4x)的最大值,其中0<=x<=9
【分析】选择二进制编码,种群中的个体数目为10,二进制编码长度为20,交叉概率为0.95,变异概率为0.08
【程序清单】
%编写目标函数
function[sol,eval]=fitness(sol,options)
x=sol(1);
eval=x+10*sin(5*x)+7*cos(4*x);
%把上述函数存储为fitness.m文件并放在工作目录下
initPop=initializega(10,[0 9],'fitness');%生成初始种群,大小为10
[x endPop,bPop,trace]=ga([0 9],'fitness',[],initPop,[1e-6 1 1],'maxGenTerm',25,'normGeomSelect',...
[0.08],['arithXover'],[2],'nonUnifMutation',[2 25 3]) %25次遗传迭代
运算借过为:x =
7.8562 24.8553(当x为7.8562时,f(x)取最大值24.8553)
注:遗传算法一般用来取得近似最优解,而不是最优解。
遗传算法实例2
【问题】在-5<=Xi<=5,i=1,2区间内,求解
f(x1,x2)=-20*exp(-0.2*sqrt(0.5*(x1.^2+x2.^2)))-exp(0.5*(cos(2*pi*x1)+cos(2*pi*x2)))+22.71282的最小值。
【分析】种群大小10,最大代数1000,变异率0.1,交叉率0.3
【程序清单】
%源函数的matlab代码
function [eval]=f(sol)
numv=size(sol,2);
x=sol(1:numv);
eval=-20*exp(-0.2*sqrt(sum(x.^2)/numv)))-exp(sum(cos(2*pi*x))/numv)+22.71282;
%适应度函数的matlab代码
function [sol,eval]=fitness(sol,options)
numv=size(sol,2)-1;
x=sol(1:numv);
eval=f(x);
eval=-eval;
%遗传算法的matlab代码
bounds=ones(2,1)*[-5 5];
[p,endPop,bestSols,trace]=ga(bounds,'fitness')
注:前两个文件存储为m文件并放在工作目录下,运行结果为
p =
0.0000 -0.0000 0.0055
大家可以直接绘出f(x)的图形来大概看看f(x)的最值是多少,也可是使用优化函数来验证。matlab命令行执行命令:
fplot('x+10*sin(5*x)+7*cos(4*x)',[0,9])
evalops是传递给适应度函数的参数,opts是二进制编码的精度,termops是选择maxGenTerm结束函数时传递个maxGenTerm的参数,即遗传代数。xoverops是传递给交叉函数的参数。mutops是传递给变异函数的参数。
matlab遗传算法工具箱函数及实例讲解
核心函数:
(1)function [pop]=initializega(num,bounds,eevalFN,eevalOps,options)--初始种群的生成函数【输出参数】
pop--生成的初始种群【输入参数】
num--种群中的个体数目
bounds--代表变量的上下界的矩阵
eevalFN--适应度函数
eevalOps--传递给适应度函数的参数
options--选择编码形式(浮点编码或是二进制编码)[precision F_or_B],如
precision--变量进行二进制编码时指定的精度
F_or_B--为1时选择浮点编码,否则为二进制编码,由precision指定精度)
(2)function [x,endPop,bPop,traceInfo] = ga(bounds,evalFN,evalOps,startPop,opts,...
termFN,termOps,selectFN,selectOps,xOverFNs,xOverOps,mutFNs,mutOps)--遗传算法函数【输出参数】
x--求得的最优解
endPop--最终得到的种群
bPop--最优种群的一个搜索轨迹【输入参数】
bounds--代表变量上下界的矩阵
evalFN--适应度函数
evalOps--传递给适应度函数的参数
startPop-初始种群
opts[epsilon prob_ops display]--opts(1:2)等同于initializega的options参数,第三个参数控制是否输出,一般为0。如[1e-6 1 0]
termFN--终止函数的名称,如[\'maxGenTerm\']
termOps--传递个终止函数的参数,如[100]
selectFN--选择函数的名称,如[\'normGeomSelect\']
selectOps--传递个选择函数的参数,如[0.08]
xOverFNs--交叉函数名称表,以空格分开,如[\'arithXover heuristicXover simpleXover\']
xOverOps--传递给交叉函数的参数表,如[2 0;2 3;2 0]
mutFNs--变异函数表,如[\'boundaryMutation multiNonUnifMutation nonUnifMutation unifMutation\']
mutOps--传递给交叉函数的参数表,如[4 0 0;6 100 3;4 100 3;4 0 0]注意】matlab工具箱函数必须放在工作目录下【问题】求f(x)=x+10*sin(5x)+7*cos(4x)的最大值,其中0<=x<=9
【分析】选择二进制编码,种群中的个体数目为10,二进制编码长度为20,交叉概率为0.95,变异概率为0.08
【程序清单】
%编写目标函数
function[sol,eval]=fitness(sol,options)
x=sol(1);
eval=x+10*sin(5*x)+7*cos(4*x);
%把上述函数存储为fitness.m文件并放在工作目录下
initPop=initializega(10,[0 9],\'fitness\');%生成初始种群,大小为10
[x endPop,bPop,trace]=ga([0 9],\'fitness\',[],initPop,[1e-6 1 1],\'maxGenTerm\',25,\'normGeomSelect\',...
[0.08],[\'arithXover\'],[2],\'nonUnifMutation\',[2 25 3]) %25次遗传迭代运算借过为:x =
7.8562 24.8553(当x为7.8562时,f(x)取最大值24.8553)

注:遗传算法一般用来取得近似最优解,而不是最优解。遗传算法实例2

【问题】在-5<=Xi<=5,i=1,2区间内,求解
f(x1,x2)=-20*exp(-0.2*sqrt(0.5*(x1.^2+x2.^2)))-exp(0.5*(cos(2*pi*x1)+cos(2*pi*x2)))+22.71282的最小值。【分析】种群大小10,最大代数1000,变异率0.1,交叉率0.3
【程序清单】
%源函数的matlab代码
function [eval]=f(sol)
numv=size(sol,2);
x=sol(1:numv);
eval=-20*exp(-0.2*sqrt(sum(x.^2)/numv)))-exp(sum(cos(2*pi*x))/numv)+22.71282;
%适应度函数的matlab代码
function [sol,eval]=fitness(sol,options)
numv=size(sol,2)-1;
x=sol(1:numv);
eval=f(x);
eval=-eval;
%遗传算法的matlab代码
bounds=ones(2,1)*[-5 5];
[p,endPop,bestSols,trace]=ga(bounds,\'fitness\')
注:前两个文件存储为m文件并放在工作目录下,运行结果为
p =
0.0000 -0.0000 0.0055
大家可以直接绘出f(x)的图形来大概看看f(x)的最值是多少,也可是使用优化函数来验证。matlab命令行执行命令:
fplot(\'x+10*sin(5*x)+7*cos(4*x)\',[0,9])
evalops是传递给适应度函数的参数,opts是二进制编码的精度,termops是选择maxGenTerm结束函数时传递个maxGenTerm的参数,即遗传代数。xoverops是传递给交叉函数的参数。mutops是传递给变异函数的参数。

『伍』 求分享一个 maple 2017破解版

软件介绍:

maple 2017是一款有着非常强大的数值计算能力、符号运算能力以及图形处理能力的专业数学工程计算软件,同时它也是四大商数学软件之一。该软件它拥有非常强大的符号计算、无限精度数值计算、强大的4GL语言以及创新的互联网连接等等功能。

所需工具:点击下载 maple 2017中文破解版


maple 2017安装破解教程

1、在本站下载好软件,你会得到两个安装包,解压其中一个安装包,你会得到一个程序,一个文件夹,运行程序“Maple2017.0WindowsX64Installer.exe”。

2、开始安装软件,点击“next”。

3、勾选“I accept the agreement”,点击“next”。

4、选择安装目录,建议不要修改,默认的安装目录为“C:Program FilesMaple 2017”,点击“next”。

5、是否常见快捷桌面,点击“yes”。

6、选择“Single User License”。

7、连续多次点击“next”确认安装信息。

8、安装需要一小会,请稍微等待一会。

9、安装完成,取消页面中的勾选,点击“finish”,完成安装。

10、下面开始破解软件,打开安装包的内“patch”文件夹,将里面的破解补丁“license.dat”复制到软件的安装目录license文件夹下(默认的复制地址为:C:Program FilesMaple 2017license)。

11、再将“patch”文件夹下面的“maple.dll”破解补丁复制到软件安装目录的“bin.X86_64_WINDOWS”文件夹下,覆盖原文件。(默认的复制地址为:C:Program FilesMaple 2017in.X86_64_WINDOWS)

12、然后打开软件,你会发现maple 2017已经破解完成,点击“帮助”—“关于”,可以看到软件已经永久授权,以后我们就都可以免费使用了!

新功能介绍

1、Maple的功率扩展用户创建的包

现在给你的瞬间,一个丰富的用户套餐,延伸Maple的能力无缝的访问,甚至通知你当有可用的更新。

2、构建复杂的情节甚至很容易

在Maple2017小区建设者有了一个新的设计使得它可以定制各种各样的情节更容易,简单,不知道一个单一的绘图命令。

3、解决更多的问题

Maple2017,你可以找到更多的偏微分方程与边界条件的精确解,找到新的限制,解决更多的积分,执行新的图论计算,计算多组属性,新的超几何函数的工作,和更多。

4、保护你的工作

现在你可以使用密码保护的工作表,同时仍然允许访问所包含的程序,所以你可以分享你的工作而不共享你的IP。

5、扩大你的世界观

新的地图可视化工具和地理数据库让你探索和了解世界的数据在一个高度可视化的方式。

6、陈述你的假设

你可以给Maple更多的关于你的问题的信息,和Maple会更计算把这些假设的考虑,消除的解决方案,你不需要和适当简化结果。

7、添加一个新图层的信息到您的情节

在Maple2017,您可以添加动态图的注释,会出现当你的鼠标悬停在特定的点或曲线,所以你可以在你的图形传达更多的信息。

8、在解决工程问题的开端

工程师的Maple叶门,它提供了常见的工程任务的一个起点,现在涵盖了许多主题,包括更多的例子,并提供了示例应用程序来帮助你成为生产力的迅速。

9、开发自己的算法和解决方案

从核心功能的性能改进,以更灵活的调试,新的工具,简化包装的制作和分发,Maple2017给你一切你需要自己开发更复杂的算法和解决方案。

10、了解你的数据

统计和数据分析,包括新的和改进的可视化的增强支持,新的数据分析工具,并扩大支持数据帧在Maple,所以你可以从你的数据中学习。

软件特色

一、强大的求解器

1、内置超过5000个符号和数值计算命令,覆盖几乎所有的数学领域,如微积分,线性代数,方程求解,积分和离散变换,概率论和数理统计,物理,图论,张量分析,微分和解析几何,金融数学,矩阵计算,线性规划,组合数学,矢量分析,抽象代数,泛函分析,数论,复分析和实分析,抽象代数,级数和积分变换,特殊函数,编码和密码理论,优化等。

2、各种工程计算:优化,统计过程控制,灵敏度分析,动力系统设计,小波分析,信号处理,控制器设计,集总参数分析和建模,各种工程图形等。

3、提供世界上最强大的符号计算和高性能数值计算引擎,包括世界上最强大的微分方程求解器(ODEs,PDEs,高指数DAEs)。

4、智能自动算法选择。

5、强大、灵活、容易使用的编程语言,让您能够开发更复杂的模型或算法。

6、与多学科复杂系统建模和仿真平台MapleSim紧密集成。

二、技术文件环境

1、大量易学易用的工具和特征,提供“数学版office”工作环境,用户即使没有任何语法知识也可以完成大量数学问题的计算,显著地缩短学习时间。

2、术文件界面组合文字、数学、图形、声音、建模、科学计算等您所有的工作。

3、大量的绘图和动画工具,包括超过150种图形类型。基于OpenGL的可视化技术,可定义相机轨迹。图片输出格式包括:BMP、DXF、EPS、GIF、等等。

4、数据输入和输出格式:ASCII、CSV、MATLAB、Excel、等。

5、各种文件处理工具,如页眉页脚、段落、幻灯片等;各种图元件,刻度盘、滑动条、按钮等,可在图元件中添加程序,实现交互式仿真操作。

三、知识捕捉

1、maple 2017是您所有数学工作的理想环境,您所想象的数学就是您在Maple中做数学的方式。

2、多种格式(1D、2D)输入数学内容,如教科书一样地显示和操作数学和文字。

3、工作过程包括最初的草稿、计算、深度分析、演示报告、共享,以及重用。

4、专业出版工具包括文件处理工具,可输出Maple文件为PDF、HTML、XML、Word、LaTeX、和MathML格式文件。

5、特有的教育功能包,包含特定主题的计算方法信息和Step-by-Step求解步骤。

6、使用MapleNET发布交互式内容到web上,将您的工作交互式呈现给您的同事、学生、和同行。

四、外部程序连接—无缝集成到您现有的工具链中

1、OpenMaple API - 在外部程序中使用Maple作为计算引擎,或者通过External calling,在Maple中使用外部程序,如C/Java/Fortran。

2、Maple - CAD系统双向连接:通过CAD Link为CAD系统增加重要的分析功能,如统计、优化、单位和公差计算等,结果在CAD模型中自动更新,目前支持SolidWorks,NX,和 Autodesk Inventor。

3、xcel:Excel数据的输入和输出;通过加载项,在Excel内使用Maple计算命令。

4、专业出版工具包括文件处理工具,可输出Maple文件为PDF、HTML、XML、Word、LaTeX、和MathML格式文件。

5、数据库:对大型数据集完成分析和可视化。

6、ATLAB连接:您可以使用MATLAB Link在Maple中调用MATLAB完成计算,以及利用MATLAB代码生成和转换的功能;另一个选择是Maple Toolbox for Matlab工具箱,Maple-Matlab双向连接,共享数据、变量等。

7、Simulink:输入和输出Simulink模块,添加Maple的分析和优化功能到Simulink模块。

『陆』 maple中_Z是什么意思

_Z是一种占位符,即用一个变量表示方程的所有根。高阶多项式的显式解可能很长,所以Maple可能使用RootOf表达式作为占位符返回解。在无法用一个变量表示出非代数方程的显式解时,Maple也会使用RootOf表达式作为占位符。例如:

2013年已经更新到Maple17

『柒』 Maple与Matlab联合应用的问题

一、关于在MATLAB中使用Maple,类似的问题http://..com/question/391916191171959045
二、直接在Maple中优化:
Maple中优化分两种,1是默认主程序的优化算法,它提供多种算法或适用对象,如求解局部最小值、最大值,求解线性系统最优值、求解最小二乘问题、求解非线性系统最优值、求解二次规划问题等。函数包为Optimization。
2是额外的Maple全部优化工具箱,它是Maple的官方附加产品,提供三种全局优化算法。

『捌』 maple啥意思

软件名称:Maple
开发商:Maplesoft
Maple : 通用的数学和工程软件,是世界上最值得信赖、最完整的数学软件之一,被高等院校、研究机构和公司广泛应用,用户渗透超过97%的世界主要高校和研究所,超过81%的世界财富五百强企业。
Maple提供世界上最强大的符号计算,无与伦比的数值计算,支持用户界面开发和网络发布,内置丰富的数学求解库,覆盖几乎所有的数学分支,所有的操作都是在一个所见即所得的交互式技术文档环境中完成,完成计算的同时也生成了专业技术文件和演示报告。
Maple不仅仅提供编程工具,更重要的是提供数学知识。Maple是教授、研究员、科学家、工程师、学生们必备的科学计算工具,从简单的数字计算到高度复杂的非线性问题,Maple都可以帮助您快速、高效地解决问题。用户通过Maple产品可以在单一的环境中完成多领域物理系统建模和仿真、符号计算、数值计算、程序设计、技术文件、报告演示、算法开发、外部程序连接等功能,满足各个层次用户的需要,从高中学生到高级研究人员。
Maple 有三个比较特出的技术特征:数学引擎,开放性、操作简单。
数学引擎:Mathematics=Maplesoft !做数学工作时,世界上没有任何其他软件比Maple更完整、更好。
开放性:Maple 的程序可以自动转换为其他语言代码,如Java/C/Fortran/VB/MATLAB,解决了多种开发环境不相容的问题。Maple能够与MATLAB/Simulink, NAG,EXCEl,数据库等工具连接。另外Maple可与CAD系统连接,可通过参数传输完成对CAD模型的数学分析,如统计分析、优化、经验公式计算、公差和单位计算,并自动在CAD系统中完成更新。 通过专业工具箱,Maple可与数值计算软件Matlab共享命令、变量等。
操作简单:Maple人性化的界面让用户只需要按几个键就可以解决大量复杂的计算问题,Maple的文件模式界面可以创建多样化的、专业级的技术文件,并可以自由转换为其他格式的文件,如Latex / Html / Word等。
现已经推出 Maple 12 Professional 版本
一款韩国网游的简称 全称为maplestory 中国大陆的名称为冒险岛,

『玖』 我的MATLAB装上后,图像处理工具箱不能用

MATLAB
开放分类: 自然科学、数学、数学软件、仿真

MATLAB是矩阵实验室(Matrix Laboratory)之意。除具备卓越的数值计算能力外,它还提供了专业水平的符号计算,文字处理,可视化建模仿真和实时控制等功能。

MATLAB的基本数据单位是矩阵,它的指令表达式与数学,工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完相同的事情简捷得多.在新的版本中也加入了对C,FORTRAN,c++ ,JAVA的支持.可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用,非常的方便。

MATLAB的基础是矩阵计算,但是由于他的开放性,并且mathwork也吸收了像maple等软件的优点,使MATLAB成为一个强大的数学软件

当前流行的MATLAB 6.5/7.0包括拥有数百个内部函数的主包和三十几种工具包(Toolbox).工具包又可以分为功能性工具包和学科工具包.功能工具包用来扩充MATLAB的符号计算,可视化建模仿真,文字处理及实时控制等功能.学科工具包是专业性比较强的工具包,控制工具包,信号处理工具包,通信工具包等都属于此类.

开放性使MATLAB广受用户欢迎.除内部函数外,所有MATLAB主包文件和各种工具包都是可读可修改的文件,用户通过对源程序的修改或加入自己编写程序构造新的专用工具包.

Matlab的官方网站:http://www.mathworks.com

Matlab的优势和特点

(1)友好的工作平台和编程环境
MATLAB由一系列工具组成。这些工具方便用户使用MATLAB的函数和文件,其中许工具采用的是图形用户界面。包括MATLAB桌面和命令窗口、历史命令窗口、编辑器和调试器、路径搜索和用于用户浏览帮助、工作空间、文件的浏览器。随着MATLAB的商业化以及软件本身的不断升级,MATLAB的用户界面也越来越精致,更加接近Windows的标准界面,人机交互性更强,操作更简单。而且新版本的MATLAB提供了完整的联机查询、帮助系统,极大的方便了用户的使用。简单的编程环境提供了比较完备的调试系统,程序不必经过编译就可以直接运行,而且能够及时地报告出现的错误及进行出错原因分析。

(2)简单易用的程序语言
Matlab一个高级的距阵/阵列语言,它包含控制语句、函数、数据结构、输入和输出和面向对象编程特点。用户可以在命令窗口中将输入语句与执行命令同步,也可以先编写好一个较大的复杂的应用程序(M文件)后再一起运行。新版本的MATLAB语言是基于最为流行的C++语言基础上的,因此语法特征与C++语言极为相似,而且更加简单,更加符合科技人员对数学表达式的书写格式。使之更利于非计算机专业的科技人员使用。而且这种语言可移植性好、可拓展性极强,这也是MATLAB能够深入到科学研究及工程计算各个领域的重要原因。

(3)强大的科学计算机数据处理能力
MATLAB是一个包含大量计算算法的集合。其拥有600多个工程中要用到的数学运算函数,可以方便的实现用户所需的各种计算功能。函数中所使用的算法都是科研和工程计算中的最新研究成果,而前经过了各种优化和容错处理。在通常情况下,可以用它来代替底层编程语言,如C和C++ 。在计算要求相同的情况下,使用MATLAB的编程工作量会大大减少。MATLAB的这些函数集包括从最简单最基本的函数到诸如距阵,特征向量、快速傅立叶变换的复杂函数。函数所能解决的问题其大致包括矩阵运算和线性方程组的求解、微分方程及偏微分方程的组的求解、符号运算、傅立叶变换和数据的统计分析、工程中的优化问题、稀疏矩阵运算、复数的各种运算、三角函数和其他初等数学运算、多维数组操作以及建模动态仿真等。

『拾』 maple Global Optimization Toolbox 全局优化工具箱

maple自己有一个局部优化的Optimization包,一般这个就行了
with(Optimization)
你要的那个得花钱的,网上下不来,中文参考地址(就算个广告页):
http://www.cca-es.com/cn/maple/got/
除非你有特殊的用途,不然买个那东西干啥?

阅读全文

与maple优化工具箱相关的资料

热点内容
外置轮胎检测装置 浏览:828
电动工具的执行标准是什么 浏览:487
机械键盘键位不灵怎么解决 浏览:820
学机械类用什么文具 浏览:337
大棚自动喷水手机控制装置 浏览:142
制冷专业工资低什么原因 浏览:60
为什么机械表掉螺丝 浏览:791
轴承与轴距间隙多少合适 浏览:683
暖气片冷怎么调阀门 浏览:732
求自动吸自动放装置 浏览:609
丘型阀门怎么开 浏览:274
浙江医疗设备吸塑外壳哪里有销售 浏览:297
贱人工具箱cad2008加载 浏览:329
dn50水铜阀门厂 浏览:460
牛身上哪个部位绑定设备 浏览:636
加气阀门紧 浏览:660
移动通讯器材包括哪些 浏览:157
地暖气片5阀门 浏览:211
电工电子综合实验装置能做什么实验 浏览:886
水电自动装置检修工txt下载 浏览:875