<DIV>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%"><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB">Hallo </SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%"><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB"> <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%"><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB"> I have little experience with C++. I have the problem of integrating the GA in a part of a program that does GA and other things. Taking ex9 as acase study I have derived a function called getvalue and within this function. This I call this function in my program.as seen at the end this massage. In this sollution I have ignored the argc and argv and this part. The sollution seems to be OK.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%"><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB">for(int ii=1; ii<BR><ARGC; ii++) {>if(strcmp(argv[ii++],"seed") == 0) {<BR>seed = atoi(argv[ii]);<BR>}<BR>}<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%"><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB">What should I do for not ignoring them.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%"><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB"> <o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%"><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB">Thank you in advance<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%"><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB"> <o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%"><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB"> <o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%"><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB"> <o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%"><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB">float objective(GAGenome &);<BR>int getvalue();<BR>int main()<BR>{<BR> getvalue();</SPAN></P><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB"></SPAN></DIV>
<DIV><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB">// here are the other parts of the program
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%">//</P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%">//</P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%">//<BR> return 0;<BR>}<BR>int getvalue()<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%"><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB">{<BR> cout << "Example 9\n\n";<BR> cout << "This program finds the maximum value in the function\n";<BR> cout << " y = - x1^2 - x2^2\n";<BR> cout << "with the constraints\n";<BR> cout << " -5 <= x1 <= 5\n";<BR> cout << " -5 <= x2 <= 5\n";<BR> cout << "\n\n"; cout.flush();<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%"><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB">// See if we've been given a seed to use (for testing purposes). When you<BR>// specify a random seed, the evolution will be exactly the same each time<BR>// you use that seed number.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%"><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB"> unsigned int seed = 0;<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%"><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB">// Declare variables for the GA parameters and set them to some default values.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%"><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB"> int popsize = 30;<BR> int ngen = 100;<BR> float pmut = 0.01;<BR> float pcross = 0.6;<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%"><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB">// Create a phenotype for two variables. The number of bits you can use to<BR>// represent any number is limited by the type of computer you are using. In<BR>// this case, we use 16 bits to represent a floating point number whose value<BR>// can range from -5 to 5, inclusive. The bounds on x1 and x2 can be applied<BR>// here and/or in the objective function.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%"><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB"> GABin2DecPhenotype map;<BR> map.add(16, -5, 5);<BR> map.add(16, -5, 5);<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%"><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB">// Create the template genome using the phenotype map we just made.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%"><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB"> GABin2DecGenome genome(map, objective);<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%"><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB">// Now create the GA using the genome and run it. We'll use sigma truncation<BR>// scaling so that we can handle negative objective scores.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%"><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB"> </SPAN><SPAN style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial">GASimpleGA ga(genome);<BR> GASigmaTruncationScaling scaling;<BR> ga.populationSize(popsize);<BR> ga.nGenerations(ngen);<BR> ga.pMutation(pmut);<BR> ga.pCrossover(pcross);<BR> ga.scaling(scaling);<BR> ga.scoreFilename("bog.dat");<BR> ga.scoreFrequency(10);<BR> ga.flushFrequency(50);<BR> ga.evolve(seed);<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%"><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB">// Dump the results of the GA to the screen.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%"><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB"> genome = ga.statistics().bestIndividual();<BR> cout << "the ga found an optimum at the point (";<BR> cout << genome.phenotype(0) << ", " << genome.phenotype(1) << ")\n\n";<BR> cout << "best of generation data are in '" << ga.scoreFilename() << "'\n";<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%"><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB"> return 0;<BR>}<BR> <o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: 121%"><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB">// This objective function tries to maximize the value of the function<BR>//<BR>// y = -(x1*x1 + x2*x2)<BR>//<BR>float<BR>objective(GAGenome & c)<BR>{<BR> GABin2DecGenome & genome = (GABin2DecGenome &)c;<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 12pt; LINE-HEIGHT: 121%"><SPAN lang=EN-GB style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 121%; FONT-FAMILY: Arial; mso-ansi-language: EN-GB"> float y;<BR> y = -genome.phenotype(0) * genome.phenotype(0);<BR> y -= genome.phenotype(1) * genome.phenotype(1);<BR> return y;<BR>}<o:p></o:p></SPAN></P></DIV><p>
                <hr size=1>Do you Yahoo!?<br>
The <a href="http://my.yahoo.com">all-new My Yahoo!</a> – What will yours do?