Is it possible to actually sample from elites? (slash, the archive is not elites?) #445
Replies: 1 comment
-
|
You're reading the code correctly. The current archive implementation is closer to a ranked buffer than a strict MAP-Elites archive. Programs are stored and replaced primarily based on fitness score, and the feature descriptors are tracked but not used as the primary indexing/replacement key the way a textbook MAP-Elites implementation would. A few things that could help you right now:
For a proper fix, we'd want to add a sampling mode that bins programs by their feature coordinates and picks one elite per bin, so you're actually sampling across the feature map. This would be a welcome PR if you're interested in contributing it. The main changes would be in Would be curious to hear what problem domain you're working on where you're seeing the convergence issue, that context could help us prioritize this. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
When using this library, I had been assuming that the 'archive' was the set of MAP-Elites elites, i.e. the best-performing program at each feature coordinate. But it looks like this is not the case, and that instead the archive is just the total set of best-performing programs (e.g. see here, replacement logic appears to be solely based on fitness score )
Am I misunderstanding anything? If not, is there any way to actually sample from the elites (based on the feature map), to try to ensure more diverse parents? I am starting to see the archive filling up with extremely similar parents over time. I thought that sampling from the (feature map based) elites was a part of how the MAP-Elites algorithm promotes search diversity, e.g. this is how it's described here.
It seems like the only 3 current options are sampling from the archive, randomly from the island, or fitness-weighted from the island, but I didn't see that any of those actually utilize the elites feature map. Please let me know if I am missing something though!
Beta Was this translation helpful? Give feedback.
All reactions