1stopt简单应用教程_第1页
1stopt简单应用教程_第2页
1stopt简单应用教程_第3页
1stopt简单应用教程_第4页
1stopt简单应用教程_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、04.07.2020,.,1,1stopt使用简介,04.07.2020,.,2,第1章1stopt概述,04.07.2020,.,3,1stOpt是七维高科有限公司(7D-SoftHighTechnologyInc.)独立开发,拥有完全自主知识产权的一套数学优化分析综合工具软件包。在非线性回归,曲线拟合,非线性复杂模型参数估算求解,线性/非线性规划等领域傲视群雄,首屈一指,居世界领先地位。,概述,04.07.2020,.,4,1.11stOpt应用范围,1)模型自动优化率定2)参数估算3)任意模型公式线性,非线性拟合,回归4)非线性连立方程组求解5)常微分方程及方程组,初值及边值问题6)任意

2、维函数,隐函数极值求解7)隐函数根求解,作图,求极值8)线性,非线性及整数规划9)组合优化问题10)高级计算器,概述,04.07.2020,.,5,1.21stOpt特长,1)功能强劲,是目前唯一能以任何初始值而求得美国国家标准与技术研究院(NIST)非线性回归测试题集最优解的软件包。2)可广泛用于水文水资源及其它工程模型优化计算。内镶VB及Pascal语言,可帮助描述处理复杂模型。3)可连接由任何语言(C+,Fortran,Basic,Pascal)编译而成的外部目标函数动态连接库或命令行可执行文件。4)非线性曲线拟合可处理任意类型模型公式,任意多数目的待求参数及变量,批量数据拟合、权重拟合

3、、带约束拟合、缺失变量拟合。,概述,04.07.2020,.,6,1.31stOpt特长,5)模型自动率定时可同时处理多个数据文件。6)可非常容易处理一些特殊的参数,如降雨径流模型中的流域初期土壤含水量。7)可同时处理多个输出量。8)实时显示计算结果。9)可直接读存Excel,CSV等格式文件。10)界面简单友好,使用方便。11)自带有上百个实例,覆盖范围包括几乎所有优化方面。通过不同类型实例,用户可轻松掌握1stOpt的用法。,概述,04.07.2020,.,7,1.41stopt界面,文件浏览窗口,代码本,算法设置,结果显示,代码本表格,属性编辑器,概述,04.07.2020,.,8,1.

4、51stOpt应用的优化算法,1)通用全局优化算法(UniversalGlobalOptimization-UGO)2)下山単体法(SimplexMethod-SM)3)差分进化法(DifferentialEvolution-DE)4)最大继承法(MaxInheritOptimization-MIO)5)遗传算法(GeneticAlgorithms-GA)6)模拟退火(SimulatedAnnealing-SA)7)离子群法(ParticleSwarmOptimization-PSO)8)自组织群移法(Self-OrganizingMigratingAlgorithms-SOMA)9)禁忌搜索

5、法(TabuSearch-TS)10)单纯线性规划法(SimplexLinearProgram),概述,04.07.2020,.,9,核心优化算法,除去简单易用的界面,其计算核心是基于七维高科有限公司科研人员十数年的革命性研究成果【通用全局优化算法】(UniversalGlobalOptimization-UGO)。该算法之最大特点是克服了当今世界上在优化计算领域中使用迭代法必须给出合适初始值的难题,即用户勿需给出参数初始值,而由1stOpt随机给出,通过其独特的全局优化算法,最终找出最优解。,概述,04.07.2020,.,10,优化算法设定,非线性回归、曲线拟合问题、方程及方程组求解、无约

6、束函数优化:1)通用全局优化算法2)下山単体法+通用全局优化算法3)差分进化法4)最大继承法有约束函数优化问题:1)下山単体法+通用全局优化算法2)差分进化法3)通用全局优化算法4)最大继承法,概述,04.07.2020,.,11,线性规划问题:1)单纯线性规划法2)下山単体法+通用全局优化算法3)差分进化法优化组合问题:1)最大继承法2)禁忌搜索法3)模拟退火4)遗传算法,优化算法设定,概述,04.07.2020,.,12,对90以上的问题,缺省优化设置均可满足要求。,优化算法设定窗口,概述,04.07.2020,.,13,1.61stopt编程的主要关键词,有定义参数以及参数取值范围;定义

7、变量、定义常量、定义函数;定义数据文件、定义优化方法;定义求和、求积、循环符;画函数图、画参数方程函数图等。详见使用手册P4P5。1stOpt支持几十种的数学函数,详见P6P8。,概述,04.07.2020,.,14,1.71stOpt快捷组合键,关键字快捷输入窗口组合键:在代码本中按“Ctrl+K”窗口弹出后,按顺序输入关键字字母,可快速查找并输入所需关键字数学函数快捷输入窗口组合键:在代码本中按“Ctrl+M”窗口弹出后,按顺序输入数学函数字母,可快速查找并输入所需数学函数代码表格、代码本快捷输入窗口组合键:在代码本中按“Ctrl+J”窗口弹出后,可选择所需代码表格或代码本。恢复上一次执行

8、的代码:在代码本中按“Ctrl+Shift+T”有时或许由于代码输错,或许由于其它不明原因,当输完代码按计算命令时,1stOpt出错而退出,如果先前没有进行保存,该如何恢复刚才输入的代码呢?重新启动1stOpt,开启一新代码本,在代码本中按“Ctrl+Shift+T”即可恢复上一次执行的代码。,概述,04.07.2020,.,15,1.8数据处理电子表格,1stOpt附带有类似与Excel的电子表格,多表单,支持公式,直接输入输出到Excel和文本文件(.txt,.csv),树型表单管理,直观并可分类,可方便用于数据前、后处理。,概述,04.07.2020,.,16,1.91stopt基本语法

9、,每一句代码以;号作结束符。如Parametera,b,c,d;Constantp1=1,p2=4,p3=5;在同一代码本中可写多个不同问题的代码,由关键词“NewDivision”来区分。可同时开启多个代码编辑本。一代码文件中还可加入富文本如图,表,公式等,也可把不同格式的文件添付进来。,概述,04.07.2020,.,17,1.10执行计算,因为1stOpt的初始值通常是随机产生,一次计算不成功,并非意味下次亦同样不成功,反之亦然。按快捷键”F9”执行计算,“F10“中止计算。,概述,04.07.2020,.,18,第2章1stopt应用,04.07.2020,.,19,2.1求任意形式,

10、任意维数,约束或非约束的函数最优值,应用,约束函数即可以是不等式也可以是等式。,2.1.1求下列一维函数最小值,函数f=xsin(x)+sin(x)其中,x3,31stOpt代码:Parameterx=-3*pi,3*pi;MinFunctionx*sin(x)+sin(x);结果:f=-5.7976,x=4.8808,04.07.2020,.,20,下列代码可以画出图来Parameterx=-3*pi,3*pi,y;plotfunction;functiony=x*sin(x)+sin(x);,应用,04.07.2020,.,21,2.1.2求下列多维函数最小值,其中,X30,30,n=20

11、1stOpt代码:Constantn=20;Parameterx(1:n)=-30,30;MinFunctionSum(i=1:n-1)(3*(Cos(2*xi)+Sin(2*xi+1)+Sqrt(xi+12+xi2);结果:f=-51.7695,例如:函数,应用,1stopt还可求隐函数的最优值、针状函数的全局最优等。,04.07.2020,.,22,2.1.3线性规划问题,1stOpt算法中含有专门的线性算法单纯性算法,可高效求解线性规划问题。不同于Lingo等优化软件包,在1stOpt中,各待求参数的缺省设置范围是正负无穷。线性规划实例-1,应用,04.07.2020,.,23,1stO

12、pt代码:Parameterx(1:3)0,;MaxFunction2*x1+3*x2+x3;x1+3*x2+x3=15;2*x1+3*x2-x3=18;x1-x2+x3=3;=结果=迭代数:125计算用时(时:分:秒:毫秒):00:00:01:78计算中止原因:达到收敛判定标准优化算法:麦夸特法(Levenberg-Marquardt)+通用全局优化法函数表达式:2*x1+3*x2+x3目标函数值(最大):19.9999998856399x1:4.99999988563987x2:3.00000005515308x3:0.999999948900893,应用,04.07.2020,.,24,

13、2.1.4非线性规划问题,非线性混合整数规划问题实例-1,1stOpt代码:Parametersx1-20,20,x2-20,20,x3-10,10,0;MinFunction1.5*(x1-sin(x1-x2)2+0.5*x22+x32-x1*x2-2*x1+x2*x3;结果:目标函数值(最小):-10.961821657691x1:4.99963280998717x2:9.73414801760973x3:-5,应用,04.07.2020,.,25,2.1.5排列组合优化问题,1stOpt亦可用与解决组合优化问题。自行开发的最大继承法(MIO)在解决该类问题时,比其它诸如遗传算法,模拟退火

14、及禁忌算法等表现更优。TSP问题:是非常著名的组合优化问题:有个城市,从某一城市出发,每个城市访问一次,最后回到起始城市,试求最短距离的访问路线。具体实例见使用手册P21P24.,应用,04.07.2020,.,26,2.2非线性拟合,1stOpt的非线性拟合功能强于目前任何已知软件包,如著名的SPSS,SAS,Matlab,Origin,Systat,DataFit等。其最大特点是,在绝大多数情况下,不需要使用者提供(猜测)任何初始值,仅依靠自身的全局搜索能力,从任意随机值出发,既可求得最优解。美国国家标准与技术研究院(NIST)提供有一套27道非线性拟合测试题,世界上几乎所有著名的数据分析

15、软件包都以能通过该套测试题集为验证标准。经对比测试,1stOpt是目前唯一不依赖使用NIST提供的初始值,而能以任意随机初始值就可求得全部最优解的软件包(如果使用NIST提供的初始值,则更可轻易求得最优解)。由于在实际应用当中,选择确定合理的初始值组是一件非常困难的事,尤其是在参数量比较多的情况下。从此意义而言,1stOpt的实用能力达业界领先水平。,应用,04.07.2020,.,27,1stOpt的曲线拟合均为自定义拟合。“Function”、“Data/RowData/DataFile”为必须的两个关键字;可选择关键字有“Variable”、”Parameter”、“QuickReg”等

16、。对二维曲线拟合,缺省自变量名为x,因变量名为y;对三维有两种缺省方式,一为自变量名为x1和x2,因变量名为y,第二种为自变量名为x和y,因变量名为z;对多维,缺省自变量名为x1,x2,x3,因变量名为y;当数据较长,为了节省代码本空间,可考虑将数据以行的形式给出,即用关键字“RowData”取代“Data”,同时数据形式亦做相应改动,每行数据以“;”号结束。,应用,04.07.2020,.,28,数据也可存为文件形式,用关键字“DataFile”调用,文件格式包括标准文本格式和Excel文件格式。如Excel数据如下图并存为“c:test1.xls”,调用形式如下。Variablex,y;F

17、unctiony=b1*(x2+x*b2)/(x2+x*b3+b4);DataFileC:test1.xlsSheet1B4:C14;注意使用“DataFile”时,关键字“Variable”不能省略。,应用,04.07.2020,.,29,共享模式拟合;缺少变量值的特殊拟合;批处理拟合;权重拟合;带约束拟合;带积分的拟合;最小一乘及其它特殊拟合;隐函数拟合;公式自动搜索拟合;设定拟合初始取值范围;,应用,1stopt可完成以下方式的拟合,04.07.2020,.,30,公式自动搜索例,1stOpt代码Data;150.489300.427450.373600.327750.285900.25

18、01050.2181200.1911350.1674950.005,点击“开始”,可得到具有最优拟合的函数式。如下页所示。,应用,04.07.2020,.,31,应用,04.07.2020,.,32,2.3方程及方程组求解,1stOpt可求解任意形式的线性、非线性方程或方程组,其关键字是“Function”,2.3.1一般方程组求解例如:1stopt代码Parameterx,y,z;Function(x-0.3)yz+x/y/z-x*y*sin(z)+(x+y-z)cos(x-1)=1;(y-0.2)zx+y/z/x-y*z*sin(x)+(y+z-x)cos(y-2)=2;(z-0.1)xy

19、+z/x/y-z*x*sin(y)+(z+x-y)cos(z-3)=3;,应用,=结果=x:0.793906344084337y:0.902585377881761z:1.21622367653983,04.07.2020,.,33,1stopt还可完成,2.3.2循环方程求解2.3.3循环递归方程求解2.3.4整数方程求解,应用,04.07.2020,.,34,2.4常微分方程数值求解,2.4.1常微分方程初值问题2.4.2隐式常微分方程及方程组2.4.3变系数常微分方程2.4.4高阶常微分方程及方程组2.4.5常微分方程边值问题,应用,04.07.2020,.,35,2.5其它应用,2.5

20、.1隐函数作图2.5.2参数函数作图2.5.3作为高级计算器使用其它,应用,04.07.2020,.,36,第3章1stOpt的编程模式,04.07.2020,.,37,1stOpt的快捷模式直观、简单、明了、易于掌握,可以解决大部分优化问题。但对于一些复杂的问题,如目标函数或约束函数无法用简单的表达式来表述计算,而是通过复杂的逻辑判断、循环运算等来表达计算,快捷模式则无能为力,此时可用1stOpt的编程模式来解决。1stOpt直接支持Basic和Pascal两种语言。从理论上来说,编程模式可以处理解决全部快捷模式下的问题。,04.07.2020,.,38,编程模式的主要关键字:,1)Star

21、tProgram:定义编程模式的起始行“StartProgramBasic”表示用Basic语言“StartProgramPascal”或“StartProgram”表示用Pascal语言2)EndProgram:定义编程模式的终止行在“StartProgram”和“EndProgram”间按标准的Delphi/Pascal或Basic语言编写。3)ObjectiveResult:定义目标函数,仅可有一次。4)ConstrainedResult:定义约束函数,可有多个。,04.07.2020,.,39,3.3运输问题,有三节铁路货车车厢,其最大允许载重量均为分別位7,9,19吨,现欲用这三节车

22、厢运输16个箱子。下表列出了这些箱子的重量w=3.4,0.6,0.8,1.7,1.6,0.5,1.3,2.1,2.5,3.1,1.4,1.3,3.3,0.9,2.5,2.5,单位为吨。应如何将箱子分配到各个车厢上,使装载量最大的车厢的装载量最小?同时每节车厢实际载重均不超过最大允许载重。这类问题无法用快捷模式求解,只能用编程模式解决。,04.07.2020,.,40,Basic代码:,Algorithm=SM230;Constantw=3.4,0.6,0.8,1.7,1.6,0.5,1.3,2.1,2.5,3.1,1.4,1.3,3.3,0.9,2.5,2.5;Constantc=7,9,19

23、;IntParameterp(16)=1,3;PassParameterv(3);Minimum;StartProgramBasic;SubMainModeldimiasintegerdimww(3)asdoublefori=1to3ww(i)=0nextfori=1to16ifp(i)=1thenww(1)=ww(1)+w(i)elseifp(i)=2thenww(2)=ww(2)+w(i)elseifp(i)=3thenww(3)=ww(3)+w(i)endifnextfori=1to3v(i)=ww(i)nextObjectiveResult=ww(3)ConstrainedResult

24、=for(i=1:3)(ww(i)=c(i)EndSubEndProgram;,04.07.2020,.,41,Pascal代码:,Algorithm=SM230;Constantw=3.4,0.6,0.8,1.7,1.6,0.5,1.3,2.1,2.5,3.1,1.4,1.3,3.3,0.9,2.5,2.5;Constantc=7,9,19;IntParameterp(16)=1,3;PassParameterv(3);Minimum;StartProgramPascal;ProcedureMainModel;vari:integer;ww:array1.3ofdouble;Beginfori:=1to3dowwi:=0;fori:=1to16doifpi=1thenww1:=ww1+wielseifpi=2thenww2:=ww2+wielseifpi=3thenww3:=ww3+wi;f

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论