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