[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Input on choice of programing language
From: |
gepr |
Subject: |
Re: Input on choice of programing language |
Date: |
Thu, 17 Oct 2002 08:02:06 -0700 |
address@hidden writes:
> 1) Has anyone of you done genetic programming in SWARM? Is it apt for that
> task?
For the first question, in addition to what Riccardo, Marcus, and Nick
suggested, you might also take a look at what Rob Kewley did with
Swarm:
The paper "Fuzzy-Genetic decision Optimization for Positioning of
Military Combat Units" available from Professor Embrechts' site.
http://www.rpi.edu/locker/82/001182/
But, I'd like to throw some words at the second part of that question.
Swarm is only good as a GP platform in itself, under certain conditions:
1) You expect your individuals to be "agents" or, at least, "objects"
in some sense.
2) You have a multi-modal, multi-scale, or some other kind of complex
environment in which your individuals will "live" or be evaluated.
3) You want to implement some kind of multi-level evolution, e.g.
a genetically specified population evolving at one level composes
a higher-level, genetically specified population evolving at that
higher level.
There might be other cases; but I think these cover it well enough.
If any ONE of those holds, then it's a good idea to use a multi-scale,
multi-modal system like Swarm.
For example, you might think you're in a (2) situation where the
individuals you're evolving are not objects or agents at all, but
compose an inference process inside some agent (like a tech trader in
a market).
If it's just a simple composition like that, the best bet would not
be to use Swarm as the GP system; but, to use a more natural GP
platform and feed the individual algorithms into a running Swarm
for evaluation in a complex simulation.
However, if your situation (2) is such that the individuals you're
composing have to be selected for/against in a *concurrent* way
(as opposed to the lock-step synchronized way of most GAs), then
you are sitting on the border between the above approach (where both
the GP system and the simulation-as-objective-function are concurrent
processes and they communicate with each other in a live way) and
a more tightly integrated approach where the evolutionary operators
get called on a more ad-hoc or dynamically-defined schedule or timeline.
For example, in a more realistic market scenario, some trading agents
inherit traits very quickly (based on high frequency indicators) and
some very slowly. And both are haphazard... for the big company, it
might be because they hired a new CFO and for the individual it might
be because they just started using some new trading dashboard instead
of the wall street journal. The complexity of the schedules for
the various mutation and cross-over operators could get interesting.
At which point, you might actually want to manage this with a system
like Swarm. (And this is all assuming that the agents are at the
same level... e.g. companies aren't composed of individuals... that's
situation (3) above and is a different order of complexity altogether.)
There are similar spectra for modeling problems of type (1) or (3).
Bottom line is that Swarm can be used in any and all of these ways;
but, you should look deeply at what you're actually trying to achieve
via evolution. It could simplify the system significantly.
glen
--
glen e. p. ropella =><= Hail Eris!
H: 831.335.4950 http://www.ropella.net/~gepr
M: 831.247.7901 http://www.tempusdictum.com
==================================
Swarm-Modelling is for discussion of Simulation and Modelling techniques
esp. using Swarm. For list administration needs (esp. [un]subscribing),
please send a message to <address@hidden> with "help" in the
body of the message.
==================================