ECJ-INTEREST-L Archives

August 2005

ECJ-INTEREST-L@LISTSERV.GMU.EDU

Options: Use Proportional Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
Allan de Brueker <[log in to unmask]>
Reply To:
ECJ Evolutionary Computation Toolkit <[log in to unmask]>
Date:
Wed, 24 Aug 2005 13:35:30 +0200
Content-Type:
text/plain
Parts/Attachments:
text/plain (133 lines)
Actually it is int2c who does int <- float, float, and smallerorequal
and greater or equal both go from comparing floats to an integer
value(instead of a normal boolean like value but integers allows for
easier further operations). It's a typo here.

Regards,
A.

On 8/23/05, Sean Luke <[log in to unmask]> wrote:
> On Aug 17, 2005, at 6:48 PM, Allan de Brueker wrote:
>
> > I'm trying to go from arrays of FP numbers to single FP numbers to
> > integers
> > I would like to have operators on integers (+,-,*,/), operators on
> > floats(+,-,*,/),  have declared them in seperate java files, two
> > operators
> > to switch between float and int (<=, >=) and I would like for my root
> > to
> > return an integer.
>
> Let's see if I have this correct.  Your functions are (I made up some
> names like i+):
>
> int   <- i+(int,int)
> int   <- i*(int,int)
> int   <- i-(int,int)
> int   <- i/(int,int)
> float <- f+(float, float)
> float <- f*(float, float)
> float <- f-(float, float)
> float <- f/(float, float)
> int   <- <=(float)
> float <- >=(int)
> float <- gene()
>
> That's what it sounds like from your description above, yet your <= and
>  >= functions are quite different below.  You're introducing a third
> type, 'nil', though it appears you only have two types (notionally the
> names 'int' and 'float').  So what's up with the constraint called
> 'int2c'?  What kind of function prototype is it trying to represent?
>
> Sean
>
>
> > So Far I have got  the following:
> >
> > #return type of the tree
> >
> > gp.tc.0.returns = int
> >  gp.tc.0.init = ec.gp.build.Uniform
> >  gp.tc.0.init.min-size = 5
> >  gp.tc.0.init.max-size = 15
> >
> > #3 atomic types
> > gp.type.a.size = 3
> > gp.type.a.0.name = float
> > gp.type.a.1.name = int
> > gp.type.a.2.name = nil
> >
> > #different constraints set with the different atomic types
> > gp.nc.size = 6
> >
> > gp.nc.0 = ec.gp.GPNodeConstraints
> > gp.nc.0.name = gene0
> > gp.nc.0.return = float
> > gp.nc.0.size = 0
> >
> > gp.nc.1 = ec.gp.GPNodeConstraints
> > gp.nc.1.name = gene1
> > gp.nc.1.return = nil
> > gp.nc.1.size = 1
> > gp.nc.1.child.0 = nil
> >
> >
> > gp.nc.2 = ec.gp.GPNodeConstraints
> > gp.nc.2.name = float2
> > gp.nc.2.return = float
> > gp.nc.2.size = 2
> > gp.nc.2.child.0 = float
> > gp.nc.2.child.1 = float
> >
> > gp.nc.3 = ec.gp.GPNodeConstraints
> > gp.nc.3.name = int2c
> > gp.nc.3.return = float
> > gp.nc.3.size = 2
> > gp.nc.3.child.0 = nil
> > gp.nc.3.child.1 = nil
> >
> > gp.nc.4 = ec.gp.GPNodeConstraints
> > gp.nc.4.name = int2
> > gp.nc.4.return = int
> > gp.nc.4.size = 2
> > gp.nc.4.child.0 = int
> > gp.nc.4.child.1 = int
> >
> >
> > # We have ... functions in the function set.  They are:
> > gp.fs.0.size = 11
> >
> > gp.fs.0.func.0 = ec.app.simpleclassifier.func.GetGeneFloat
> > gp.fs.0.func.0.nc = gene0
> >
> > gp.fs.0.func.1 = ec.app.simpleclassifier.func.Add
> > gp.fs.0.func.1.nc = float2
> >
> > gp.fs.0.func.2 = ec.app.simpleclassifier.func.Sub
> > gp.fs.0.func.2.nc = float2
> >
> > gp.fs.0.func.3 = ec.app.simpleclassifier.func.Mult
> > gp.fs.0.func.3.nc = float2
> >
> > gp.fs.0.func.4 = ec.app.simpleclassifier.func.Div
> > gp.fs.0.func.4.nc =float2
> >
> > gp.fs.0.func.5 = ec.app.simpleclassifier.func.SmallerOrEqual
> > gp.fs.0.func.5.nc = int2c
> >
> > gp.fs.0.func.6 = ec.app.simpleclassifier.func.GreaterOrEqual
> > gp.fs.0.func.6.nc = int2c
> >
> > gp.fs.0.func.7 = ec.app.simpleclassifier.func.AddInt
> > gp.fs.0.func.7.nc = int2
> >
> > gp.fs.0.func.8 = ec.app.simpleclassifier.func.SubInt
> > gp.fs.0.func.8.nc = int2
> >
> > gp.fs.0.func.9 = ec.app.simpleclassifier.func.MultInt
> > gp.fs.0.func.9.nc = int2
> >
> > gp.fs.0.func.10 = ec.app.simpleclassifier.func.DivInt
> > gp.fs.0.func.10.nc = int2
>

ATOM RSS1 RSS2