资源简介
个人搜集的解决带约束问题的优化算法。其中等式约束问题最难解决,本人也在这些基础上研究解决自己问题的方法。
代码片段和文件信息
/*************************************************/
#include “stdio.h“
#include “math.h“
#include “stdlib.h“
#include “time.h“
/**************************************************/
#define POPUNUM 30
#define Pm 0.03
#define Pc 0.85
#define MAXTASK 12
#define MAXTEAM 3
#define MAXGEN 500
#define EPSL 0.001
/**************************************************/
int popu[2*POPUNUM][3][MAXTASK];
int fit[2*POPUNUM];
double ave_fit;
int handle_time[MAXTASK]={242436361212};
static int MM[12][12]={000000000000
000000000000
000000000000
000000000000
100000000000
010000000000
001000000000
000100000000
000010000000
000001000000
000000100000
000000010000};
int gen;
/**************************************************/
void ini();
void repare();
void cross();
void mutation();
void select();
void cacu_fit();
main()
{
int ij;
double prev_ave_fit=0.0;
ini();
gen=0;
while(1/*gen {
ave_fit=0.0;
cross();
mutation();
repare();
cacu_fit();
printf(“GEN=%d;\tave_fit=%f\n“genave_fit);
if(fabs(prev_ave_fit-ave_fit) {
select();
break;
}
prev_ave_fit=ave_fit;
select();
gen++;
}
printf(“TOTAL_GEN=%d;\n“gen);
for(i=0;i {
switch(i)
{
case 0:
printf(“task_array=%d;\n“i);
break;
case 1:
printf(“team_number=%d;\n“i);
break;
case 2:
printf(“task_team=%d;\n“i);
break;
default:
break;
}
for(j=0;j {
printf(“%d\t%d\t%d\t%d\n“popu[0][i][j]popu[0][i][j+1]popu[0][i][j+2]popu[0][i][j+3]);
}
}
}
void ini()
{
int tempijm;
srand( (unsigned)time( NULL ) );
/* srand(1);*/
/*------------------------------
初始化任务串 popu[][0][]
-------------------------------*/
for(m=0;m {
for(i=0;i {
// printf(“i:%d\t“i);
temp = (int)floor(1.*rand()/RAND_MAX*(MAXTASK-1));
if(i!=0)
{
for(j=0;j {
if(popu[m][0][j]==temp)
{
// printf(“!!!!\t%d\t%d\t%d\n“popu[m][0][j]jtemp);
temp = (temp+1) % MAXTASK;
j=-1;
}
}
}
popu[m][0][i]=temp;
// printf(“%d\n“popu[m][0][i]);
}
}
/*------------------------------
初始化任务分配串 popu[][1][]
-------------------------------*/
/* for(m=0;m {
for(i=0;i {
temp = (int)floor(1.*rand()/RAND_MAX*(MAXTEAM));
popu[m][1][i]=temp;
// printf(“%d\n“popu[m][1][i]);
}
}
*/
/*------------------------------
初始化任务组别 popu[][2][]
-------------------------------*/
for(m=0;m {
for(i=0;i {
if(popu[m][0][i]<4 && popu[m][0][i]>=0)
p
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 5123 2013-08-20 10:49 69491720optimization-method\惩罚函数算法.txt
文件 1206 2002-08-07 02:34 109991moga2\moga2\moga2\aleatorio.h
文件 1153 2002-08-07 08:31 109991moga2\moga2\moga2\Makefile
文件 934 2004-12-04 18:43 109991moga2\moga2\moga2\Makefile.win
文件 7963 2002-08-07 08:25 109991moga2\moga2\moga2\malla-adaptativa.cpp
文件 149871 2004-12-04 17:28 109991moga2\moga2\moga2\malla-adaptativa.o
文件 14104 2004-12-04 18:05 109991moga2\moga2\moga2\moga2.cpp
文件 3389 2004-12-26 17:00 109991moga2\moga2\moga2\moga2.dsp
文件 533 2004-12-26 17:01 109991moga2\moga2\moga2\moga2.dsw
文件 3470 2002-08-07 02:34 109991moga2\moga2\moga2\moga2.h
文件 41984 2016-10-13 17:07 109991moga2\moga2\moga2\moga2.ncb
文件 16524 2004-12-04 18:05 109991moga2\moga2\moga2\moga2.o
文件 48640 2016-10-13 17:07 109991moga2\moga2\moga2\moga2.opt
文件 1270 2004-12-26 17:00 109991moga2\moga2\moga2\moga2.plg
文件 1255 2004-12-04 16:20 109991moga2\moga2\moga2\Project1.dev
文件 589195 2004-12-04 18:05 109991moga2\moga2\moga2\Project1.exe
文件 348 2004-12-04 18:44 109991moga2\moga2\moga2\Project1.layout
文件 1881 2002-04-26 14:18 547833遗传算法源代码\源代码\ChildFrm.cpp
文件 1451 2002-04-26 14:18 547833遗传算法源代码\源代码\ChildFrm.h
文件 4635 2002-05-01 12:37 547833遗传算法源代码\源代码\Faction.cpp
文件 5536 2002-05-01 23:18 547833遗传算法源代码\源代码\Faction.dsp
文件 537 2002-04-26 14:18 547833遗传算法源代码\源代码\Faction.dsw
文件 376832 2002-05-21 15:27 547833遗传算法源代码\源代码\Faction.exe
文件 1367 2002-04-26 14:18 547833遗传算法源代码\源代码\Faction.h
文件 132096 2004-07-08 15:04 547833遗传算法源代码\源代码\Faction.ncb
文件 58880 2004-07-08 15:04 547833遗传算法源代码\源代码\Faction.opt
文件 3167 2004-07-08 15:03 547833遗传算法源代码\源代码\Faction.plg
文件 26204 2002-05-02 07:07 547833遗传算法源代码\源代码\Faction.rc
文件 1841 2002-05-01 11:54 547833遗传算法源代码\源代码\FactionDoc.cpp
文件 1547 2002-05-01 11:55 547833遗传算法源代码\源代码\FactionDoc.h
............此处省略600个文件信息
评论
共有 条评论