Information Technology Reference
In-Depth Information
Mixed problem Integer Continuous Discrete Case B
New Ideas in Optimization Table 9 : Allowable spring steel wire diameters
for the coil spring design problem
discrete 0 0.009; discrete 1 0.0095; discrete 2 0.0104; discrete 3 0.0118;
discrete 4 0.0128; discrete 5 0.0132; discrete 6 0.014; discrete 7 0.015;
discrete 8 0.0162; discrete 9 0.0173; discrete 10 0.018; discrete 11 0.020;
discrete 12 0.023; discrete 13 0.025; discrete 14 0.028; discrete 15 0.032;
discrete 16 0.035; discrete 17 0.041; discrete 18 0.047; discrete 19 0.054;
discrete 20 0.063; discrete 21 0.072; discrete 22 0.080; discrete 23 0.092;
discrete 24 0.105; discrete 25 0.120; discrete 26 0.135; discrete 27 0.148;
discrete 28 0.162; discrete 29 0.177; discrete 30 0.192; discrete 31 0.207;
discrete 32 0.225; discrete 33 0.244; discrete 34 0.263; discrete 35 0.283;
discrete 36 0.307; discrete 37 0.331; discrete 38 0.362; discrete 39 0.394;
discrete 40 0.4375; discrete 41 0.500;
Fig. 7.3. C++ DSH code
#include <stdlib.h>
int tempval,MachineJob[25],Cmatrix[5][5];
int loop1,loop2;
//in C language is [0][0] the first item of defined field i.e. [1][1] of
normaly defined matrix
MachineJob[0]=5;MachineJob[1]=7;MachineJob[2]=4;MachineJob[3]=3;MachineJob[4]=6;
MachineJob[5]=6;MachineJob[6]=5;MachineJob[7]=7;MachineJob[8]=6;MachineJob[9]=7;
MachineJob[10]=7;MachineJob[11]=8;MachineJob[12]=3;MachineJob[13]=8;MachineJob[14]=5;
MachineJob[15]=8;MachineJob[16]=6;MachineJob[17]=5;MachineJob[18]=5;MachineJob[19]=8;
MachineJob[20]=4;MachineJob[21]=4;MachineJob[22]=8;MachineJob[23]=7;MachineJob[24]=3;
for(loop1=0;loop1<25;loop1++)
{
tempval=MachineJob[loop1];
MachineJob[loop1]=MachineJob[getIntPopulation(0,Individual)];
MachineJob[getIntPopulation(0,Individual)]=tempval;
};
//Competition time for all jobs on machine 1
Cmatrix[0][0]=MachineJob[0];
Cmatrix[0][1]=MachineJob[0]+MachineJob[1];
Cmatrix[0][2]=MachineJob[0]+MachineJob[1]+MachineJob[2];
Cmatrix[0][3]=MachineJob[0]+MachineJob[1]+MachineJob[2]+MachineJob[3];
Cmatrix[0][4]=MachineJob[0]+MachineJob[1]+MachineJob[2]+MachineJob[3]+MachineJob[4];
//Competition time jobs 1 on all machines
Cmatrix[1][0]=MachineJob[0]+MachineJob[5];
Cmatrix[2][0]=MachineJob[0]+MachineJob[5]+MachineJob[10];
Cmatrix[3][0]=MachineJob[0]+MachineJob[5]+MachineJob[10]+MachineJob[15];
Cmatrix[4][0]=MachineJob[0]+MachineJob[5]+MachineJob[10]+MachineJob[15]+
MachineJob[20];
for(loop1=1;loop1<5;loop1++)
for(loop2=1;loop2<5;loop2++)
Cmatrix[loop1][loop2]=max(Cmatrix[loop1-1][loop2],Cmatrix[loop1][loop2-1])+
MachineJob[5*loop1+loop2];
CostValue=Cmatrix[4][4];
Fig. 7.4. DSH FSS example
that field. A more complex example from FSS is now described in Fig 7.4. Discrete set
has the name MachineJob and contains different values. Individuals again serve like
an index.
More interesting applications of DSH can be found in genetic programming like
techniques.
Search WWH ::




Custom Search