机械优化设计复合形方法及源程序文件.doc
《机械优化设计复合形方法及源程序文件.doc》由会员分享,可在线阅读,更多相关《机械优化设计复合形方法及源程序文件.doc(7页珍藏版)》请在课桌文档上搜索。
1、. 机械优化设计复合形方法与源程序(一) 题目:用复合形法求约束优化问题;的最优解。基本思路:在可行域中构造一个具有K个顶点的初始复合形。对该复合形各顶点的目标函数值进行比较,找到目标函数值最大的顶点(即最坏点),然后按一定的法则求出目标函数值有所下降的可行的新点,并用此点代替最坏点,构成新的复合形,复合形的形状每改变一次,就向最优点移动一步,直至逼近最优点。(二) 复合形法的计算步骤1) 选择复合形的顶点数k,一般取,在可行域构成具有k个顶点的初始复合形。2) 计算复合形个顶点的目标函数值,比较其大小,找出最好点xL、最坏点xH、与此坏点xG.3) 计算除去最坏点xH以外的(k-1)个顶点的
2、中心xC。判别xC是否可行,若xC为可行点,则转步骤4);若xC为非可行点,则重新确定设计变量的下限和上限值,即令,然后转步骤1),重新构造初始复合形。4) 按式计算反射点x,必要时改变反射系数的值,直至反射成功,即满足式。然后x以取代x,构成新的复合形。5) 若收敛条件得到满足,计算终止。约束最优解为:。(三) 复合形法程序框图见以下图:是否否否否是是是是否求反射点计算各顶点的目标函数值f(xj)(j=1,2,k)一次坏点xG代替最坏点xH结 束xR可行?xC可行?计算出去xH后的各顶点中心将各定点的目标函数值和坐标按目标函数值的大小排序形成初始复合形的k个顶点xj(j=1,2,k)输入 n
3、,k,开 始(四) 源程序如下:/*输入值选择n=2,k=3,本程序可以处理n为2或3,k为3或4的情况*/#include #include #include #include #define E0 1e-5 /*复合形法收敛控制精度*/double *apply(int,int); /*申请矩阵空间*/double f(double *); /*目标函数*/double *g(double *); /*约束函数*/bool judge(double *); /*可行点的判断*/int main()int n,k;int i,j,k1;int l;double temporary;doubl
4、e restrain; /*收敛条件*/double reflect; /*反射系数*/srand(unsigned)time(NULL);printf(请输入目标函数的维数n:); /*输入已知数据*/scanf(%d,&n);printf(请输入复合形的顶点数k:);scanf(%d,&k);double *x=apply(k,n); /*存放复合形顶点*/double *y=(double *)calloc(k,sizeof(double); /*存放目标函数值*/double *p=(double *)calloc(3,sizeof(double); /*存放约束函数值*/double
5、 *a=(double *)calloc(n,sizeof(double); /*存放设计变量的下限*/double *b=(double *)calloc(n,sizeof(double); /*存放设计变量的上限*/double *x_c=(double *)calloc(n,sizeof(double); /*存放可行点中心*/double *x_r=(double *)calloc(n,sizeof(double); /*存放最坏点的反射点*/printf(本程序中的所有输入,两个数之间用空格隔开,然后按enter键时不要长时间的按,否则,可能会出错n); printf(请输入选定的第
6、一个可行点x1(包含%d个数):,n);for(i=0;in;i+)scanf(%lf,*x+i);printf(请输入初选变量的下限a(包含%d个数):,n);for(i=0;in;i+)scanf(%lf,a+i);printf(请输入初选变量的上限b(包含%d个数):,n);for(i=0;in;i+)scanf(%lf,b+i);printf(输出输入结果为:nn=%d,k=%d,x1=(,n,k); /*输出已知数据*/for(i=0;in-1;i+)printf(%.5lf ,*(*x+i);printf(%.5lf)na=(,*(*x+n-1);for(i=0;in-1;i+)p
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 机械 优化 设计 复合 方法 源程序 文件

链接地址:https://www.desk33.com/p-10556.html