Skip to content

Add delay in testing and planned migration #466

@DavidKerkmann

Description

@DavidKerkmann

The current implementation of testing only considers tests which are immediately evaluated.
This might be reasonable for AG Tests, but PCR tests usually take a couple of hours or days to have their result.
To change this, tests should have a time (or distribution of times) of the duration until the result is available.
With this, persons should save their test results of the recent past, so that they can go to events when they have a recent negative result. We can also include in a testing scheme the option to include the recovered state as a way to be allowed to enter a location without having to test.

Notice that not only the testing procedure has to be changed, but also the migration: For example it doesn't make sense for people to wait 10 hours for a negative PCR result and then go to work. Required tests would have to be performed early enough for someone to go to a location in time. This has to be in line with the way migrations work and especially how migrations are planned by each agent.

Ideas for the implementation:

  • Add a time range to each type of test that determines the time it takes until the result is ready. Also add a time of validity to each test type.
  • Save the test results of each individual test of the past X days. It might be sensible to only consider the most recent test result of each type. In that case, one could add a CustomIndexArray with the Test Type as a parameter to each person.
  • Add a migration plan (maybe optional) for each person for the next X days, so that tests can be performed ahead of time to have the result ready when the migration is supposed to happen. (Here, take the maximum time it takes until the result is ready and subtract that from the planned time of migration.)
  • Add a small struct that resembles a test result. This should include: Time of testing, test type, result (bool).

Metadata

Metadata

Labels

class::featureA feature to be implemented for some part of the softwareloc::backendThis issue concerns the C++ backend implementation.model::abmThis issue concerns any kind of agent-based model.prio::moderateThe priority of this task is moderate.

Type

No type

Projects

Status

Done (Total) 💯

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions