-
Notifications
You must be signed in to change notification settings - Fork 56
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
use R*-Tree for Pareto frontier #107
Conversation
- minimal Julia version that compiles BBO+SpatialIndexing correctly - minimal SpatialIndexing version that exposes necessary API
Very nice. Please tell me when you feel it is stable enough to eval and merge. |
best_candidate should also be updated when its index coincides with the eps-progressed candidate. In that case aggregated fitness may become slightly worse because of the difference in eps-progress and aggscore metrics. But this is required for correctness and convergence.
I was running it for a while with 24x parallel evaluator. It looks stable. It also reduces Pareto front update bottleneck, although that requires more benchmarking. JuliaLang/julia#30122 type intersection bug was fixed in 1.0.3/1.1.0/master, so for merging this PR we have to wait until any of these versions are released. |
Ok, great, let's wait for at least 1.0.3 then. Did you need to do anything in particular for running he parallel evaluator or is this now well enough supported on master? Would be great if you can add some relevant examples/code for this just to help people get started. |
this version is no longer maintained and has known bugs that affect BBO
Julia 1.0.3 is released, so this PR should be fine for evaluation
I was testing with async parallel evaluator from #46 (should be better for Borg). It works for me, but I'm hesitating a bit about about merging and promoting it, because it uses a strange/ugly mix of locks/semaphores and |
I've started SpatialIndexing.jl package (implements R*-tree), and this PR uses R*-tree as the container for the Pareto frontier in
EpsBoxArchive
as discussed in #82. Unfortunately, at the moment I'm hitting some internal Julia error JuliaLang/julia#30122. So either that would be fixed or I'll find some workaround to proceed further.