Bojan, I'm not exactly positive what you're asking for here.  I *think* what you're doing is asking if you can simultaneously evolve rules and also combinations of those rules.  It's not clear though.

Lacking clarity, here are some kinds of things ECJ can do that might be relevant to you.

1. ECJ supports multiple subpopulations, and also coevolution.  There's no reason you can't evolve rules in one subpopulation and combinations of those rules in another subpopulation.

2. ECJ supports a number of forms of coevolution, and hooks to construct your own.

3. ECJ supports island models, allowing you to construct an injection island model for evolving rules and then injecting them into a later population to be grouped together.

4. ECJ has a rules package which is very general: you'll have to write your own interpreter though.  It also has an extensive GP package, including typing.  Note that these packages can't be used at the same time because they both rely on custom Initializers to store stuff and you can only have one Initializer.  That's something I can fix for you however; it's long overdue.  Also you could use ECJ's list facilities to hold your rules and that's totally compatible with the GP package.

5. ECJ is entirely self-contained.  You can make ECJ processes which evaluate individuals and as part of that procedure fire up other ECJ processes to do meta-evolution.


On Jan 15, 2013, at 7:14 AM, Bojan Janisch wrote:

> Hello everyone,
> my problem is that I want to use a hierarchical GP engine. 
> So is it possible with ecj to solve a GP-problem in a 
> GP-problem?
> Background:
> I want to combine a rulebased method with GP to create and 
> extend rules automatically. The Problem is that I'm using 
> hierarchical rules, means rules that are based on other rules.
> To solve this I must first calculate the non-based rules to a 
> best fit and than calculate the combination of these rules 
> to find the best rulebased rules.
> So is ECJ capable of this?
> In worst case I maybe have to write my own GP engine, that is 
> using ECJ for non-based rules, to find the best solution in 
> rulebased-rules.
> Greets from Germany
> Bojan