复合形法C语言程序
(8页)
本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!
11.9 积分
现代设计理论与方法实验一、实验名称:复合形法参考程序上机实验二、实验目的:1:掌握复合形法优化问题的寻优策略 2:能读懂程序并应用程序计算一些目标函数的最优解三、实验流程:1、题目:求如下约束优化问题的最优解 ()=S.t. 已知:N=2,取k=4,。 2、编写黄金分割法的C语言程序代码; 3、利用visual c程序运行C程序代码;#include "math.h"#include "stdio.h"#include "stdlib.h"#define E1 0.001#define ep 0.00001#define n 2#define k 4double af;int i, j;double X0[n],XX[n],X[k][n],FF[k];double a[n],b[n];double rm=2657863.0;double F(double C[n]){ double F; F=pow(C[0]-3,2)+pow(C[1]-4,2); return F;}int cons(double D[n]){ if((D[0]>=0)&&(D[1]>=0)&&(D[0]<=6)&&(D[1]=0)&&((5-D[0]-D[1])>=0)) return 1; else return 0;}void bou(){ a[0]=0;b[0]=6; a[1]=0;b[1]=8;}double r(){ double r1,r2,r3,rr; r1=pow(2,35);r2=pow(2,36);r3=pow(2,37);rm=5*rm; if(rm>=r3){rm=rm-r3;} if(rm>=r2){rm=rm-r2;} if(rm>=r1){rm=rm-r1;} rr=rm/r1; return rr;}void produce(double A[n],double B[n]){ int jj;double S;sl: for(i=0;i
天天文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。