Poisson sampling methodology for EET#1065
Draft
m-richards wants to merge 6 commits intoActivitySim:explicit_error_termsfrom
Draft
Poisson sampling methodology for EET#1065m-richards wants to merge 6 commits intoActivitySim:explicit_error_termsfrom
m-richards wants to merge 6 commits intoActivitySim:explicit_error_termsfrom
Conversation
- restructure to avoid order reshuffling
4c9cf9d to
2f00240
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
In discussing with @timveitch and @janzill, we thought it would be useful to contribute back a version of the EET implemented for testing with the VITM 2 activitysim model for DTP Victoria against the rebased EET branch.
Our scope was to get EET into a state where we could run tests on the Victorian model, so the changes here are with that goal in mind, we're well aware it's not in a ready to merge state - it's not as general, well tested or flexible as you might want to integrate. That said, our approach has some substantial improvements over EET as it currently stands (though I believe some of this is addressed in the Outer Loop PR):
As far as we see there are no real downsides to changing the sampling approach, with a significant runtime benefit. There's a theoretical concern that if your sample size is too small, the poisson approach might fail to generate any alternatives on the first try (which can lead to random numbers not being held constant between base and project) but for a well specified model with appropriate sampling rates this is unlikely to come up in practice. One other thing to be aware of is how the
pick_countcorrection factor appears in the expression csvs - under this approach pick_count will always be one. That should be fine, but because this factor lives in the utility expressions and not in the code that's a bit harder to assert globally.