Codigo Busqueda Tabu

Producción en máquinas en serie con tiempos dependientes de la secuencia Pág. 1 ANEXO B.- Programación en C B.1.Progr

Views 192 Downloads 18 File size 128KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

Producción en máquinas en serie con tiempos dependientes de la secuencia

Pág. 1

ANEXO B.- Programación en C

B.1.Programación en C del Algoritmo No Exhaustivo de Descenso (ANED).....................2 B.2.

Programación en C del Recocido Simulado (SA).......................................................9

B.3.

Programación en C de la Búsqueda Tabú (TS)........................................................20

Pág. 2

Anexo B

B.1. Programación en C del Algoritmo No Exhaustivo de Descenso (ANED) #include #include #include #include #include #define D_max 100 #define N_max 100 #define M_max 10 #define F_max 10 #define ITER_MAX 4615380 #define alfa 0.999999 #define T_inicial 100 typedef int lista_tabu[D_max][N_max]; typedef double ret_vec[N_max]; typedef int secuencia[N_max]; typedef int matrizNM[N_max][M_max]; typedef int matrizMFF[M_max][F_max][F_max]; typedef int vec[N_max][N_max]; int SolucionTabu(secuencia s,lista_tabu re_ta,int d_lis,int n); void GenerarVecindario(secuencia const sec,vec v,int n); void GenerarVecino(secuencia const sec,secuencia s_vecina,int n,int a1,int a2); double CalcularRetrasoMedio(secuencia sec,secuencia f_venc,secuencia fam,matrizMFF prep,matrizNM proc,int n,int m); double FUP(double z_c,double z_v,double t); void main (void){ int k,t,a,b,aux,rep; long int tiempo1,tiempo2; double z_curs,z_mejor,z_vec; int n_ejemplares,n_ejemplar,ejem;

secuencia s,s_curs,f_vencimiento,familia,s_vec,s_mejor; matrizNM proceso,salida; matrizMFF preparacion; int p,t2,t3,N,M,F;

Producción en máquinas en serie con tiempos dependientes de la secuencia

/*INICIO LECTURA DE DATOS*/ scanf("%d",&p); n_ejemplares=p; printf("ANED\n"); printf("numero de iteraciones =%d\n",ITER_MAX); ejem=1; while(ejem