Hello, today I have a question regarding what I can achieve with Open Mole. I have a specific job to do, I’m translating it in a genetic friendly problem here

I can be resumed by : is it possible to mix PSE and NSGA2 algorithm in a workflow ?

Here is what I want to do :

Let’s say we have two elements : an animal specie in a natural environment. They are both represented with different parameters, for example :

The animals have a reproduction rate and an indicator of individual sociability, respectively parameters A and B.

The environment is represented by a temperature and a ratio water/land, parameters C and D.

The model output, given A, B, C and D, the probability of not survival of the specie, named P, it has to be minimized.

The point is, I doesn’t make sense to run a PSE on A, B, C and D, I need to run a PSE on C and D, and a NSGA2 on A and B.

It means that I want:

1 - Given an environment C-D, find the best parameters A,B for the animals to survive.

2 - Explore the environment configurations given by C-D in order to see if there is a single super optimized specie able to survive in all environment or several genetic variations each adapted to a specific environment configuration.

The expected result is that only a few genetic variations (A, B) of the specie is needed in order for it to survive in any environment. But I need to find as much quadruplets (A, B, C, D) as I can.

Conclusion : I hope to run a NSGA2 with input (A, B) and output P and a PSE with input (C, D) and output the optimized (A, B), does it seem possible ? It may want to do something like :

nsga2 =

NSGA2(

mu = 100,

genome = Seq(A in (0.0, 1.0), B in (0.0, 1.0)),

objectives = Seq§

),

pse =

PSE (

genome = Seq(C in (0.0, 1.0), D in (0.0, 1.0)),

objectives = Seq(A in (0.0, 1.0), B in (0.0, 1.0)),

stochastic = Stochastic(seed = seed)

)

val optimization =

SteadyStateEvolution(

algorithm = nsga2,

evaluation = task,

parallelism = 10,

termination = 100

)

val evolution =

SteadyStateEvolution(

algorithm = PSE,

evaluation = optimization,

parallelism = 10,

termination = 100

)

Please let me know if all of this make no sense

Léonard