PonyGE / PonyGE2

PonyGE2: grammatical evolution and variants in Python
GNU General Public License v3.0
153 stars 90 forks source link

Multi-objective optimisation is slow #163

Open jmmcd opened 2 years ago

jmmcd commented 2 years ago

Our MOO implementation (NSGA2) is slow!

It tries to minimise MSE and number of nodes in the tree.

I'm not sure, but maybe it's creating a derivation tree for every individual... this shouldn't be necessary if we aren't using tree-oriented operators. Could we just minimise number of used_codons, which is available for free without creating a tree, and is equivalent.

dvpfagan commented 2 years ago

Probably we just need to make the MOO smarter to take in to account how ponyge is being run, as you said codon count is a good alternative but we can also run it as purely tree based from memory.

Mike any thoughts on this?

Dave

On Thu, 4 Aug 2022 at 20:49, James McDermott @.***> wrote:

Our MOO implementation (NSGA2) is slow!

It tries to minimise MSE and number of nodes in the tree.

I'm not sure, but maybe it's creating a derivation tree for every individual... this shouldn't be necessary if we aren't using tree-oriented operators. Could we just minimise number of used_codons, which is available for free without creating a tree, and is equivalent.

— Reply to this email directly, view it on GitHub https://github.com/PonyGE/PonyGE2/issues/163, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAHTHORRZJ2XZS5DQ3GWPDDVXQNFNANCNFSM55TW3C4Q . You are receiving this because you are subscribed to this thread.Message ID: @.***>