资源

详细信息部分的示例代码(lsod01)

/**********************************************************************//*                                                                    *//*S A S S A M P L E L I B R A R Y*//*                                                                    *//*名称:lsod01*//*标题:详细信息部分的示例代码(lsod01)*//*产品:或*//*系统:所有*//*关键字:或*//*项目:FCMP、OPTLSO*//*数据:*//*                                                                    *//*支持:更新:*//*参考:*//*MISC:PROC OPTLSO详细信息部分的各种代码*//*本地搜索优化手册的第章*//*这段代码在一起没有意义,但*//*包含在此示例文件中,以便于复制*//*并粘贴部分代码并在此基础上进行构建*//*                                                                    *//**********************************************************************//**********************************************************************//*                                                                    *//*在“详细信息:变量数据集”部分中找到的示例代码*//*                                                                    *//**********************************************************************/数据变量数据;输入_ id _$_ lb _ ub_类型_$;数据线;x10 1000摄氏度x2 0 0.001摄氏度x3 0 4英寸;数据变量数据;输入_ id _$_ lb _ ub_类型_$_ scale;数据线;x1 0 1000摄氏度1000x2 0 0.001摄氏度0.5x30 4我2;/**********************************************************************//*                                                                    *//*在Details:Describing the Objective Function中找到的示例代码*//*截面*//*                                                                    *//**********************************************************************/proc fcmp outlib=sasuser.myfuncs.mypkg;功能六峰(x1,x2);返回((4-2.1*x1**2+x1**4/3)*x1**2+x1*x2+(-4+4*x2*2)*x2**2);endsub;运行;数据对象;输入_id_$_function_$_sense_$;数据线;f最小六峰;数据对象;长度函数10美元;输入_ id _$函数_$传感器_$;数据线;f1六峰1。六峰2。f3六峰新最小值;proc fcmp outlib=sasuser.myfuncs.mypkg;功能六峰1(x1,x2);返回(4-2.1*x1**2+x1**4/3);endsub;函数六峰2(x1,x2);返回(-4+4*x2**2);endsub;函数sixhumpNew(x1,x2,f1,f2);返回(f1*x1**2+x1*x2+f2*x2**2);endsub;运行;数据Abdata;输入id _$a1 a2 a3 a4 a5 b;数据线;第1 1 2 3 4 5 6行第2 7 8 9 10 11 12行第3 13 14 15 16 17 18行;proc fcmp outlib=sasuser.myfuncs.mypkg;功能axbi(x1、x2、x3、x4、x5、a1、a2、a3、a4、a5、b);数组x[5];数组a[5];di=-b;do j=1至5;di=di+a[j]*x[j];结束;返回(di*di);endsub;函数onenorm(x1,x2,x3,x4,x5);数组x[5];f2=0;do j=1至5;f2=f2+abs(x[j]);结束;返回(f2);endsub;功能组合(f1、f2);返回(sqrt(f1)+f2);endsub;运行;数据lsqobj1;输入_ id _$函数_$传感器_$数据集_$;数据线;f1轴比。阿卜杜塔一个标准。f联合收割机最小值。;数据xvar;输入id_$@@;数据线;x1 x 2 x 3 x 4 x 5;选项cmplib=sasuser.myfuncs;程序optlso变量=xvar目标=lsqobj1;运行;proc fcmp outlib=sasuser.myfuncs.mypkg;功能组合2(x1、x2、x3、x4、x5、f1);数组x[5];f2=0;do j=1至5;f2=f2+abs(x[j]);结束;返回(sqrt(f1)+f2);endsub;运行;数据lsqobj2;输入_ id _$函数_$传感器_$数据集_$;数据线;f1轴比。阿布达塔f组合2分钟。;选项cmplib=sasuser.myfuncs;程序optlso变量=xvar目标=lsqobj2;运行;/**********************************************************************//*                                                                    *//*Details:Describing Linear Constraints中的示例代码*//*截面*//*                                                                    *//**********************************************************************/数据元数据;输入_ id _$_ lb_ x1-x3 _ ub_;数据线;a1-1 2 0-4 15a2 1-3 7 0 13a3 11 1 1 11;/**********************************************************************//*                                                                    *//*Details:Describing Nonlinear Constraints中的示例代码*//*截面*//*                                                                    *//**********************************************************************/proc fcmp outlib=sasuser.myfuncs.mypkg;功能con1(x1、x2、x3);return(x1*x2*x3+sin(x2));endsub;功能con2(x1、x2、x3);返回(x1*x2+x1*x3+x3*x3);endsub;运行;数据条件;输入_ id$_ lb_ ub_;数据线;连接器1-1 1连接器11;/**********************************************************************//*                                                                    *//*在详细信息中找到的示例代码:指定并返回试用*//*“点”部分*//*                                                                    *//**********************************************************************/数据popin;低=-5.0;upp=10.0;数量=30;尺寸=5;do_sol_=1到numpoints;do i=1至dim;_id=压缩(“x”| | put(i,4.0));_value_=低+(up-low)*ranuni(2);产出;结束;结束;保留sol值;运行;