Skip to content
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

Randomisations - swapping algorithm - very slow convergence for large data sets #103

Closed
GoogleCodeExporter opened this issue Mar 27, 2015 · 2 comments

Comments

@GoogleCodeExporter
Copy link

If a user specifies the rand_structured randomisation with a
richness_multiplier of 1 and richness_addition of 0 then the system will
attempt to match the existing richness patterns exactly. A consequence of
this is that it is extremely unlikely to be able to allocate labels across
groups that will exactly match the patterns.  This is where the swap
algortihm comes in, whereby labels are swapped in and out of groups until
the targets are met.  

However, the current swapping algorithm is inefficient and often diverges
instead of converging.  This is most noticable with large data sets (e.g.
with 20,000 groups and 600 labels).

The algorithm needs to be adjusted.  

Original issue reported on code.google.com by shawnlaffan on 7 Mar 2010 at 12:19

@GoogleCodeExporter
Copy link
Author

Fix implemented in revision 1572.  Now swaps in a more targeted manner, such 
that
labels that can be allocated to an unfilled group are swapped first.


Original comment by shawnlaffan on 7 Mar 2010 at 12:20

  • Changed state: Fixed
  • Added labels: ****
  • Removed labels: ****

@GoogleCodeExporter
Copy link
Author

This also has flow-on effects on issue #76, as spatially structured 
randomisations
will have more need of swapping for strict richness targets.

Original comment by shawnlaffan on 7 Mar 2010 at 12:22

  • Added labels: Performance
  • Removed labels: ****

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants