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

Track Sprint 3 Configuration Changes #9

Merged
merged 20 commits into from
Nov 21, 2024
Merged

Track Sprint 3 Configuration Changes #9

merged 20 commits into from
Nov 21, 2024

Conversation

DavidOry
Copy link
Collaborator

@DavidOry DavidOry commented Jul 8, 2024

@i-am-sijia, @vivverma9

Let's use this branch to keep track of the configuration changes we are making in support of the sprint 3 runtime improvements.

  • Config cleaning
  • Warmstart updates
  • Highway assignment relative gaps specific to global iteration
  • Transit journey level changes
  • Highway reliability changes
  • Transit assignment relative gaps and max iterations specific to global iteration
  • OpenPaths compatible

@i-am-sijia
Copy link
Collaborator

The config changes we are going to track here will require different PRs of tm2py. E.g., the journey level changes require (I suppose) BayAreaMetro/tm2py#153. The relative gap changes require BayAreaMetro/tm2py#156. We do not have a single version of code right now that can test these config as is. It's ok, just requires a bit more manual tracking, like when I use config from here, I will need to comment out the journey level pieces. If we separate out the config changes into different branches, we can test them with their respective tm2py PRs.

@DavidOry
Copy link
Collaborator Author

DavidOry commented Jul 9, 2024

The config changes we are going to track here will require different PRs of tm2py. E.g., the journey level changes require (I suppose) BayAreaMetro/tm2py#153. The relative gap changes require BayAreaMetro/tm2py#156. We do not have a single version of code right now that can test these config as is. It's ok, just requires a bit more manual tracking, like when I use config from here, I will need to comment out the journey level pieces. If we separate out the config changes into different branches, we can test them with their respective tm2py PRs.

Right. I think the idea is once the all the PRs have been merged and we have a new release of tm2py, we'll want to have a record of the configuration file we use for the sprint 3 model run. But yes, this does not replace the testing of the individual PRs.

@i-am-sijia i-am-sijia marked this pull request as ready for review July 30, 2024 23:33
@i-am-sijia i-am-sijia marked this pull request as draft July 31, 2024 14:12
@i-am-sijia
Copy link
Collaborator

i-am-sijia commented Sep 22, 2024

Ready for sprint 3 test run. Changed settings in sprint 3:

  • Reliability is set to TRUE, which makes highway assignment run twice in glob iter 0 and 1, and once in glob iter 2 and 3. Reliability skims remain unchanged after glob iter 1.
  • Highway assignment relative gap is set to 0.05 for glob iter 0-2, and 0.0005 for glob iter 3.
  • Transit assignment is set to run 2 (instead of 10) max iterations for AM and PM in glob iter 1.
  • Transit assignment journey_levels is using manual specification with 2 levels.
  • num_processors is set to MAX-1 instead of a hardcoded int

@i-am-sijia i-am-sijia marked this pull request as ready for review September 22, 2024 18:10
@DavidOry
Copy link
Collaborator Author

Ready for sprint 3 test run. Changed settings in sprint 3:

  • Reliability is set to TRUE, which makes highway assignment run twice in glob iter 0 and 1, and once in glob iter 2 and 3. Reliability skims remain unchanged after glob iter 1.
  • Highway assignment relative gap is set to 0.05 for glob iter 0-2, and 0.0005 for glob iter 3.
  • Transit assignment is set to run 2 (instead of 10) max iterations for AM and PM in glob iter 1.
  • Transit assignment journey_levels is using manual specification with 2 levels.
  • num_processors is set to MAX-1 instead of a hardcoded int

@i-am-sijia: please use 0.05 for the last highway assignment global iteration. And set max transit iterations to three for global iteration 2 and five for global iteration 3.

thanks.

@AshishKuls
Copy link
Collaborator

@DavidOry Why are we doing 0.05 relative gap for even the last global iteration. Did we not decide to use a tighter gap for final one?

@DavidOry
Copy link
Collaborator Author

@DavidOry Why are we doing 0.05 relative gap for even the last global iteration. Did we not decide to use a tighter gap for final one?

I think there are some use cases in which you would want a tighter assignment for the last global iteration, e.g., when comparing this run against another with a relatively modest roadway change. But there are lots of situations in which this would not be necessary, e.g., transit studies, comparing very different regional scenarios. I think it's useful to know the runtime for when a tight assignment is not needed.

@DavidOry DavidOry merged commit 53911bf into main Nov 21, 2024
@DavidOry DavidOry deleted the sprint_03_runtime branch November 21, 2024 14:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants