資源簡介
遺傳算法源代碼,希望對大家有幫助

代碼片段和文件信息
#include?
#include?
#include?
#include?
#include?
#include?
#ifndef?RAND_MAX
#define?RAND_MAX?32767
#endif;
#ifndef?MAX_NUMBER
#define?MAX_NUMBER?0xffffff
#endif;
struct?Solution{
int?*a;
int?*Z;
int?*ZDelta;
double?F;
double?**SF;
double?**SFDelta;
double?*WCV;
double?**C;
int?num;
double?TWCV;
double?TWCVDelta;
double?**d;
double?e;
int?*change;
double?*dmax;
double?*dmin;
int?*kmin;
int?*kmax;
double?*dsum;
int?used;
};
void?FGKA();
void?Init();
void?Selection();
void?Mutation();
void?KMO();
void?Eval(int);
void?AccumulateUpdate(int?int?int?int);
void?IncrementalUpdate(int);
void?CopySolution(struct?Solution?*?struct?Solution?*);
double*?gather(double*int);
int?Distribution(double*?int);
char*?getline(FILE*);
int?LoadData?(const?char*);
int?Export(const?char*);
int*?match1;
int*?match2;
double?**X;?//Pattern
struct?Solution?*S;
struct?Solution?SO;
int?K?=?0;?//?Cluster?number
int?N?=?0;?//?Pattern?number
int?D?=?0;?//?Feature?number
int?M?=?0;?//?Population?number
double?TWCV;
double?TWCVMax;
int?G?=?0;??//?Maximum?number?of?Generation
float?mp;???//mutation?Probability
int?*origin;
FILE*?outputfile;
void?main(int?argcchar?**argv)
{
char?filename[30];
printf(“\nPlease?input?the?file?name?for?processing:?“);
scanf(“%s“?filename);
strcat(filename“\0“);
printf(“\nPlease?enter?the?number?of?Clusters:?“);
scanf(“%d“&K);
printf(“\nPlease?enter?the?number?of?Populations:?“);
scanf(“%d“&M);
printf(“\nPlease?enter?the?number?of?maximum?generations:?“);
scanf(“%d“&G);
printf(“\nPlease?enter?the?mutation?probability:?“);
scanf(“%f“&mp);
if?(?LoadData(filename)?==?-1?)?exit(1);
// for(i=0;?i<10;?i++)
????????FGKA();
Export(filename);
free(X);
}
void?FGKA()
{
int?tim1?tim2;
int?n?i?m;
tim1?=?time(0);
SO.TWCV?=?MAX_NUMBER;
Init();
for(i=0;?i {
Selection();
Mutation();
KMO();
for(m=0;?m {
if(SO.TWCV?>?S[m].TWCV)
{
SO.TWCV?=?S[m].TWCV;
for(n=0;?n SO.a[n]?=?S[m].a[n];
}
}
tim2?=?time(0);
printf(“iteration?%d\t%f\t%d\n“i?SO.TWCV?tim2?-?tim1);
}
// fprintf(outputfile“%f\n“?SO.TWCV);
// printf(“TWCV:?%f\t%f\n“?Twcv(SO.a)?SO.TWCV);
tim2?=?time(0);
printf(“%d“?tim2?-?tim1);
free(S);
}
void?Init()
{
int?n?m?k?d;
TWCVMax?=?0;
S?=?(struct?Solution*)malloc((size_t)M*sizeof(struct?Solution));
match1?=?(int*)malloc((size_t)M*sizeof(int));
match2?=?(int*)malloc((size_t)M*sizeof(int));
// srand(?(unsigned)time(?NULL?));
srand(100);
for(m?=?0;?m? {
SO.a?=?(int*)malloc((size_t)N*sizeof(int));
S[m].a?=?(int*)malloc((size_t)N*sizeof(int));
S[m].Z?=?(int*)malloc((size_t)K*sizeof(int));
S[m].ZDelta?=?(int*)malloc((size_t)K*sizeof(int));
S[m].WCV?=?(double*)malloc((size_t)K*sizeof(d
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????4270??1996-05-30?14:50??遺傳算法\源代碼\新建文件夾\BP.C
?????文件????????155??2005-03-01?16:24??遺傳算法\源代碼\新建文件夾\AVERAGE.C
?????文件???????2435??1996-05-30?14:52??遺傳算法\源代碼\新建文件夾\CROSSOVE.C
?????文件???????1842??1996-03-08?01:32??遺傳算法\源代碼\新建文件夾\DRAWBP.C
?????文件???????5554??1995-08-29?04:52??遺傳算法\源代碼\新建文件夾\EGAVGA.BGI
?????文件???????2071??1996-05-30?14:53??遺傳算法\源代碼\新建文件夾\FITNESS.C
?????文件??????13081??1996-05-30?15:29??遺傳算法\源代碼\新建文件夾\GA.C
?????文件??????94624??1996-05-30?15:30??遺傳算法\源代碼\新建文件夾\GA.EXE
?????文件??????38056??1996-05-30?15:02??遺傳算法\源代碼\新建文件夾\GA.IDE
?????文件????????257??1996-02-23?11:52??遺傳算法\源代碼\新建文件夾\GAUSSIAN.C
?????文件???????1063??1996-05-30?14:57??遺傳算法\源代碼\新建文件夾\GETW.C
?????文件????????579??1996-03-05?11:59??遺傳算法\源代碼\新建文件夾\INITIALI.C
?????文件??????12461??1996-02-22?14:10??遺傳算法\源代碼\新建文件夾\IRISGA.DAT
?????文件????????156??2000-10-29?12:45??遺傳算法\源代碼\新建文件夾\IRISGA.RUN
?????文件????????240??1996-03-05?11:59??遺傳算法\源代碼\新建文件夾\MAIN.C
?????文件????????198??1996-03-05?12:00??遺傳算法\源代碼\新建文件夾\MAXIMUM.C
?????文件????????170??1996-03-05?12:01??遺傳算法\源代碼\新建文件夾\MINIMIAL.C
?????文件???????1039??1996-05-30?14:58??遺傳算法\源代碼\新建文件夾\MUTATE.C
?????文件????????717??1996-05-30?14:58??遺傳算法\源代碼\新建文件夾\ONECROSS.C
?????文件???????9739??2000-10-29?12:46??遺傳算法\源代碼\新建文件夾\OUTPUT.TXT
?????文件???????2500??1996-05-30?14:59??遺傳算法\源代碼\新建文件夾\SELECTIO.C
?????文件????????919??1996-05-30?14:59??遺傳算法\源代碼\新建文件夾\TWOCROSS.C
?????文件????????687??1996-05-30?15:00??遺傳算法\源代碼\新建文件夾\UNICROSS.C
?????文件????????495??1996-02-26?15:45??遺傳算法\源代碼\新建文件夾\VARIANCE.C
?????文件????????407??2000-10-29?12:46??遺傳算法\源代碼\新建文件夾\WEIGHTS.TXT
?????文件??????16493??2005-03-04?16:45??遺傳算法\源代碼\IGKA\IGKA.c
?????文件????????666??2005-03-04?16:45??遺傳算法\源代碼\IGKA\chodata.txt
?????目錄??????????0??2007-10-03?16:47??遺傳算法\源代碼\新建文件夾
?????目錄??????????0??2007-10-03?16:47??遺傳算法\源代碼\IGKA
?????目錄??????????0??2007-10-03?16:47??遺傳算法\源代碼
............此處省略4個文件信息
- 上一篇:HScan_v1.2漢化
- 下一篇:The Tao fr
amework 2.1.0
評論
共有 條評論