Information Technology Reference
In-Depth Information
int apsModel(double d[])
{
const double ROUNDING_THRESHOLD = 0.5;
double dblTemp = 0.0;
dblTemp = (((((d[3]+d[1])*d[3])*(d[2]-d[1]))-
((d[0]*d[3])+d[0]))+d[3]);
return (dblTemp >= ROUNDING_THRESHOLD ? 1:0);
}
(4.19)
So, in terms of the classification rules evolved by the GEP-MO system, it
is also necessary to combine the three sub-models above - programs (4.17),
(4.18), and (4.19) - and by representing them, respectively, by y 1 , y 2 , and y 3 ,
the following classification rules are obtained:
IF ( y 1 = 1 AND y 2 = 0 AND y 3 = 0) THEN setosa ;
IF ( y 1 = 0 AND y 2 = 1 AND y 3 = 0) THEN versicolor ;
IF ( y 1 = 0 AND y 2 = 0 AND y 3 = 1) THEN virginica ;
(4.20)
which classify correctly 148 out of 150 plants and, therefore, has a classifi-
cation error of 1.333% and a classification accuracy of 98.667%. Thus, this
model is slightly worse than the model (4.14) designed with the three-step
approach.
4.3 Logic Synthesis and Parsimonious Solutions
In this section we are going to analyze a different kind of symbolic regression,
one that is used in logic synthesis or, in other words, in the design of logical
functions. And the design of logical functions is intricately connected with
finding the most parsimonious solutions to a problem, as this is fundamental
for the creation of even faster machines. And we will see in this section that
gene expression programming is the ideal tool for finding these parsimonious
solutions.
On the one hand, gene expression programming handles all logical sys-
tems the same way, that is, it works as efficiently with the classical Boolean
system of NOTs, ANDs, and ORs gates, as with less intuitive systems such
as the NAND system, the NOR system, the MUX system, the Reed-Muller
system, or whatever system one wants to experiment with. The reason for
this plasticity is that gene expression programming does not rely on logical
Search WWH ::




Custom Search