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

Age base hint SFTs #32

Merged
merged 14 commits into from
Jan 23, 2024
Merged

Age base hint SFTs #32

merged 14 commits into from
Jan 23, 2024

Conversation

YeChen-IDM
Copy link
Collaborator

@YeChen-IDM YeChen-IDM commented Dec 11, 2023

SFTs for AgeBasedHINT:

 demog.AddAgeDependentTransmission( 
            Age_Bin_Edges_In_Years = [0, 5, 20, 60, -1],
            TransmissionMatrix = [
                [2,1,0.5,0.1],
                [2,1,0.5,0.1],
                [2,1,0.5,0.1],
                [2,1,0.5,0.1]
            ]
        )

Here is a example configuration for AgeBasedHINT:

{"Age_Bin_Edges_In_Years":[0,5,20,60,-1],
"Property":"Age_Bin",
"TransmissionMatrix":{
  "contact":{
    "Matrix":[[2,1,0.5,0.1],[2,1,0.5,0.1],[2,1,0.5,0.1],[2,1,0.5,0.1]]},
    "environmental":{
      "Matrix":[[2,1,0.5,0.1],[2,1,0.5,0.1],[2,1,0.5,0.1],[2,1,0.5,0.1]]}}}

Some ad hoc testing:
https://comps2.idmod.org/#explore/Simulations?filters=Owner=yechen&offset=0&mode=chart&orderby=DateCreated+desc&count=100&selectedId=c00a0f28-5698-ee11-92fe-f0921c167864&resizer=492C842C0
image

Anther example of the AgeBasedHINT that targeting Younger individuals:
image
Compared to Baseline:

image

2 Sets of SFTs in this PR:

Copy link

@YeChen-IDM
Copy link
Collaborator Author

YeChen-IDM commented Dec 11, 2023

Jenkins pipeline: https://jenkins.apps.idmod.org/view/Emodpy/job/Emodpy-Typhoid-Pipelines/job/Emodpy-Typhoid-Pipeline-for-testing/
The multi branches pipeline does the same thing as the above pipeline: https://jenkins.apps.idmod.org/job/Emodpy-Typhoid%20Multibranch%20Pipeline/job/PR-32/.

Other open issues besides the 3 issues in the description of this PR: #33, #34 and #35.

@YeChen-IDM
Copy link
Collaborator Author

Here is the commands to install the dependencies:

pip3 install -r requirements_2018.txt --index-url=https://packages.idmod.org/api/pypi/pypi-production/simple
pip3 install -e .

If you want to run the SFT tests locally, you will need to install the idm_test package:
pip3 install idm-test>=0.1.2 --index-url=https://packages.idmod.org/api/pypi/pypi-production/simple

@jonathanhhb
Copy link
Collaborator

I will try to find time to run these locally and then merge. Thanks so much for getting this done. These tests look lovely.

…e sense. Without the sampling rate, the test passes
Copy link

Copy link

github-actions bot commented Jan 9, 2024

@YeChen-IDM
Copy link
Collaborator Author

YeChen-IDM commented Jan 9, 2024

Fixed the test_vax_rollout_coverage SFT to have a dynamic tolerance for vaccine coverage check, this SFT passed is the latest build

@YeChen-IDM
Copy link
Collaborator Author

Age bin hint SFT failed with the latest Emod with this assertion:
Assertion failure, (contagionDecayRatesByRoute.size()), is false in file Eradication/MultiRouteTransmissionGroups.cpp at line 111
Intellectual Ventures(R)/EMOD Disease Transmission Kernel 2.11.4047.0
Built on Dec 8 2023 by luser from fix_ageased_hint_mr(9649109) checked in on 2023-12-08 11:42:17 -0800

https://comps2.idmod.org/#explore/Simulations?mode=list&orderby=DateCreated+desc&count=100&offset=0&resizer=392C282C0&selectedId=0d592f6d-35af-ee11-92ff-f0921c167860

Copy link

github-actions bot commented Jan 9, 2024

@YeChen-IDM
Copy link
Collaborator Author

Age bin hint SFT failed with the latest Emod with this assertion: Assertion failure, (contagionDecayRatesByRoute.size()), is false in file Eradication/MultiRouteTransmissionGroups.cpp at line 111 Intellectual Ventures(R)/EMOD Disease Transmission Kernel 2.11.4047.0 Built on Dec 8 2023 by luser from fix_ageased_hint_mr(9649109) checked in on 2023-12-08 11:42:17 -0800

https://comps2.idmod.org/#explore/Simulations?mode=list&orderby=DateCreated+desc&count=100&offset=0&resizer=392C282C0&selectedId=0d592f6d-35af-ee11-92ff-f0921c167860

fixed with emod_api == 1.31.0.dev5

@YeChen-IDM
Copy link
Collaborator Author

@jonathanhhb , could you take a look at this PR and see if it's Okay to merge it? Thanks.

…ealistically old people. Added symlink to run_all_sft_tests as optional tool for linux.
Copy link

Copy link

Copy link

…c to use commented out code that does integer age bin boundaries not decimal.
Copy link

@jonathanhhb jonathanhhb merged commit 99a597a into main Jan 23, 2024
3 of 4 checks passed
@jonathanhhb jonathanhhb deleted the AgeBaseHINT_test branch January 23, 2024 20:28
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