Sorry for troubling you with a newbie question on ECJ.
My problem is similar to common GP problems. Say, finding a
solution like 'A+B*C/D'. One thing special is that valid individuals need
to satisfy two constraints:
1) Certain variables can only appear in the individual if certain other
variables appear. For example, X can appear in the individual if only Y
appears. Then 'X+A/Y' and "C-Y" are valid individuals, while 'B+X' is not.
2) An individual shall always be monotonic with respect to each
variable. For example, "X/Y + X" is a valid individual because it is
monotonic to both X and Y, while "(X+1)/(X+2)" is not a valid individual
because it is not monotonic to X.
I have searched the archieve of this mailing list and find an old post
called "Scope constraints". The type-based solution provided in this
post, however, is insufficient to implement these two constraints in my
understanding. I have also thought about using fitness value to
penalize invalid individuals in order to discourage them from being bred,
but I wonder whether this will really mess with ECJ and hurt its
Any suggestion is highly appreciated.