On May 23, 2017, at 5:18 PM, Xiaomeng Ye <[log in to unmask]> wrote:

> 1.
> It seems the tutorials normally have one tree under one individual. I wonder what are the usages of having multiple trees under one individual. 

There are many reasons to have multiple trees, but one big one is Automatically Defined Functions (ADFs).

> 2.
> Additionally, if we have multiple trees under one individual, do we need to change the parameter file so the crossover happen normally?

Crossover works as follows. First it picks a tree.  Then it picks another tree from among those trees which have the same GPTreeConstraints as the first tree.  These selections are normally random but you can force Crossover to pick specific trees (see its parameter options).  Then it crosses over the two trees.

Since normally all ADF trees have different GPTreeConstraints, they never are crossed over with one another.