icaros-usc / pyribs

A bare-bones Python library for quality diversity optimization.
https://pyribs.org
MIT License
205 stars 31 forks source link

Use NumPy SeedSequence in emitters #431

Closed btjanaka closed 7 months ago

btjanaka commented 7 months ago

Description

This PR uses SeedSequence to seed the optimizer in emitters, rather than drawing integers from the current RNG. The ideal method would be to use rng.spawn (https://numpy.org/doc/stable//reference/random/generated/numpy.random.Generator.spawn.html#numpy.random.Generator.spawn) to create a child RNG, but this feature is only in NumPy 1.25, which only supports Python 3.9+ (we use 3.8+).

TODO

Questions

Status