Hello.
On Thu, 17 Mar 2016 19:11:16 +0300, Семенов Кирилл wrote:
Hi,
I've been using genetic algorithm for some pet projects. And I'd like
to
shed some light on a number of topics.
Thanks for you interest.
Given that there exist Java softwares that seem to provide a more
complete
features set, I'd be interested to know a user's opinion on how the
CM implementation compares with those.
In effect, some time ago we evoked the possibility to drop GA support
altogether since the code seemed little used and a lot of work was
anticipated for making it useful beyond demo applications.
1. Am I correct to think, that now GA is working in a single thread?
Certainly.
Very few CM codes are multi-thread ready. It was one of the task to
be tackled for future versions of the library, but lacking human
resources
it's unlikely to become a reality any time soon.
In
such case, was there any discussions on the subject (I didn't find
within a
quick check of Jira).
There were discussions (cf. "dev" ML archive).
If not, could you provide some API reference. The
subject is important, because the ability to be distributed is one of
the
key features of the GA.
2. Was there talks about implementing Pool for chromosomes? I found
enhancement proposal https://issues.apache.org/jira/browse/MATH-1219
-
which is aimed to solve the same problem - creating an enormous
amount of
chromosomes in each generation. Chromosomes after each generation
hangs in
a heap waiting for GC. Also, object pool can be implemented,
supposing that
chromosome would consist of List<? extends PooledObject>.
If someone would want to start a large overhaul of the GA code, that is
worth considering.
Do you mean using an existing library, or do you suggest implementing
the
functionality specifically for CM?
3. Examples of using getRepresentation method of
AbstractListChromosome
seem misleading. Because getRepresentation is protected method and
writing
classes that implement MutationPolicy/CrossoverPolicy can't use it.
For
rapid development one could implement public overriding method, but
can't
it be defined public in AbstractListChromosome? If one is to write
some
particular policy, he must override getRepresentation method in
CustomChromosome. But if one wants to write some common genetic
policy
(e.g., some reordering crossover), he would face an obstacle
mentioned.
I'd like to create tasks for those in Jira. Just want to make sure,
that
these topics would be useful and gather some information, other
devepoler's
opinions on a matter.
You can always point to lacking features by opening JIRA reports, but
unless
you intend to work on them yourself, I wouldn't bet on having them
fixed
rapidly.
Best regards,
Gilles
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
For additional commands, e-mail: dev-h...@commons.apache.org