aims-umich / neorl

NeuroEvolution Optimization with Reinforcement Learning
MIT License
49 stars 18 forks source link

Objective function memoization #5

Open deanrp2 opened 2 years ago

deanrp2 commented 2 years ago

Many algorithms may require multiple identical evaluations of the objective functions due to members of a population remaining the same between generations. Consider looking into automatic cacheing of objective function calls. See here for an example.

mradaideh commented 2 years ago

Thank you @deanrp2 for your suggestion. This idea should definitely accelerate the optimization by avoiding to evaluate redundant individuals. However, currently, we have two major concerns related to parallelization that may be impacted by these caching tools, or the ability to losing track of the individuals if the user is postprocessing inside his/her objective function. Will keep this issue open for now, feel free to propose ideas, and I will be happy to review and merge!

Great suggestion!