Print

Print


Interesting approach.  I was thinking more along the lines of my primitives
being "move-randomly" "drop-pheromone" "pickup-food" "move-towards-home"
where my functions would be like "if-food-here" or "if-carrying-food" or
"move-to-adjacent-food-else".  I'll put some thought into what you said
though, thanks.  If I were to model it like above, doubleData wouldn't make
a lot of sense,w ould it?

On Sun, Mar 28, 2010 at 1:48 PM, Claes Gyllenswärd <[log in to unmask]>wrote:

> DoubleData are basically doubles, that will do for now.
> Basically, you could copy another two-paramter function (such as +-*/)
> and rename it goto. It will then accept two doubles, which is fine. No
> need to change that. You probably wanna make goto return a double
> aswell, as you will get things like goto(goto(x,y), z) which won't
> make sense otherwise.
>
> 2010/3/28 cheese mokney <[log in to unmask]>:
> > Huge thanks for the reply.  You've been very helpful and it's
> appreciated.
> >  Finally, in tutorial 4, you evaluate terminals as "DoubleData".  What
> would
> > be a suitable replacement for my program?  This particuliar mapping seems
> > like it should be easy but it's not quite clicking.
> > Thanks
> >
> > On Sun, Mar 28, 2010 at 12:49 PM, Claes Gyllenswärd <[log in to unmask]
> >
> > wrote:
> >>
> >> It still sounds like tutorial 4 is the starting place.
> >>
> >> I would start like this:
> >> Reduce the logic to very shortest and simplest function that you can
> >> measure a fitness on.
> >> Say a random walking direction. No food < lots of food, ofc.
> >> This is easy to describe as goto(x, y). Write each program to a file
> >> from the evaluator, and run your program, read and interpret your
> >> program, and return the fitness.
> >> Rinse and repeat with more functions to enable more complicated
> behaviour.
> >>
> >> 2010/3/28 cheese mokney <[log in to unmask]>:
> >> > Thanks for the reply.  To be more specific, I have a program with a
> >> > bunch of
> >> > ants trying to eat food from food piles placed across the map.  From
> >> > their
> >> > home base, they move randomly until finding a food pile.  They take a
> >> > piece
> >> > of food and move it back to home.  On the way home, they drop
> >> > "pheromones"
> >> > which guide other ants to the food pile.  If an ant sense pheromone,
> it
> >> > follows it instead of moving randomly so it can be guided to home.
> >> > As you can see, a lot of that is logic guided and I'd like to use a GP
> >> > to
> >> > run it instead.
> >> >
> >> > On Sun, Mar 28, 2010 at 9:05 AM, Claes Gyllenswärd <
> [log in to unmask]>
> >> > wrote:
> >> >>
> >> >> What are doing is a bit more complex than that, but I think tutorial
> 4
> >> >> is what you are looking for.
> >> >> You should be able to start there and expand from it. If not, try to
> >> >> be more specific about your problem
> >> >>
> >> >> 2010/3/28 cheese mokney <[log in to unmask]>:
> >> >> > Hi all,
> >> >> > I have created a simple simulation with a GUI and programmed the
> >> >> > logic
> >> >> > rules
> >> >> > in and tested the simulation.  Now, instead of programming hte
> logic
> >> >> > rules
> >> >> > in, I want to give the rules and conditions as functions and
> >> >> > terminals
> >> >> > to a
> >> >> > GP and have the program be run via GP.  How can I implement ECJ's
> gp
> >> >> > modules
> >> >> > in my project?  How might I set this up?  Is there a decent example
> I
> >> >> > can be
> >> >> > pointed to?
> >> >> > Thanks!
> >> >
> >> >
> >
> >
>