> Hi,
> 
> Are there any libraries for manipulating algebraic expression trees?
> In particular, take an expression tree and simplify it down.
> 
> I'm working up the next release of PyGene, the genetic programming and
> genetic algorithms library.
> 
> Part of PyGene works with trees holding algebraic expressions. For
> example, the expression:
>   f = x**2 + sqrt(y) + 7
> is represented as the tree:
> 
>   +
>      **
>          x
>          2
>      +
>          sqrt
>              y
>          7
> 
> My GP code is successfully evolving expression trees to solve problems,
> however they're often full of redundancies, eg adding y in one part then
> subtracting y later on.

I have seen this sort of evolution strategy in the past and it's very wrong to 
attempt to simplify outside the genetic framework. The implication is that you 
know better than the overall fitness requirement. The additional expressions 
and 
redundancies allow for extra mutation and combination possibilities which is a 
good thing for the whole population. If you must, add the requirement to the 
target ie give extra fitness points to organisms which perform efficiently.
-- 
Robin Becker

-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to