RFC 20121121: Markets - NAVADMC/ADSM GitHub Wiki

Applies to: Model description v1.0.0

Type of change: New feature, for next minor revision of the software.

Summary: This RFC adds features for markets.

Justification: The existing production type system falls short when trying to capture some behaviors of markets.

Overview: This RFC aims to add markets to ADSM in a way that is consistent with what was built for the experimental “NAADSM 5”.

Key points from that implementation are below:

  • Markets are similar to units in that:

    1. They have a fixed location.
    2. They have a size (number of animals present at once).
    3. They participate in direct and indirect contacts and airborne spread.
    4. Detection may occur at markets.
    5. Quarantine or movement reduction may apply to markets.
    6. Destruction may occur at markets.
    7. They have a “production type”. Allows the modeler to create categories of markets, and specify contact patterns, movement controls, detection probabilities, etc. per category.
  • Markets are different from units in that:

    1. In units, the same animals are together for some time, therefore within­-unit spread is possible. In markets, animals are together for only a brief time. The modeler still has the ability to specify a latent period, a subclinical period, a clinical period, and a prevalence chart, but a market does not have an immune period.

    The modeler has a lot of freedom to create the effects they want. For example, they may choose a 1­-day disease period, or a longer period if they want to model “contamination” that persists a day or two after the infected animals have left. They may choose to set a market as “latent” when infected animals are present, in which case only direct contact spread will be possible and no detection; or they may choose to use the “clinical infectious” state, in which case detection and direct, indirect, and airborne spread will be possible.

    1. The contact rate for a market is allowed to be any probability distribution type (units are restricted to a Poisson distribution).
    2. Markets are not vaccinated.
    3. When a trace investigation leads to a market, the trace continues on without requiring a visit/detection/lab test. In the case of units, it makes sense to do a visit/lab test on a unit found via a trace investigation, to see whether there is reason to believe disease was present on that farm, and to stop tracing there if not (don’t waste resources tracing every contact). However, in the case of a market, it cannot be assumed that the same animals are still there to examine.
    4. The tracing timeframe is modeled differently for markets. When a unit is detected as diseased, the model can attempt to trace that unit’s network of contacts. The tracing timeframe is ‘n’ days back from the current simulation day, up to the current simulation day. With a market, that approach over-reaches: the only contacts that matter are the ones related to the specific market day when disease may have been present. So for markets, the modeler specifies the timeframe relative to the day on which the traced contact happened. For example, the modeler can ask to trace-in all contacts 1 day back and trace-out all contacts 2 days forward from the day of the contact.
    5. The modeler will now have an option to set outgoing contact rates (from units and markets) individually by weekday. See section below.

Contact rates by weekday

Some material reproduced from NAADSM 5 notes to recap how contact rates by weekday work:

Because ADSM follows a cycle in which exposure on day d creates an infected unit on day _d_+1, incoming contacts must happen 1 day before market day.

Market that operates on Mondays:

Market that operates on Mondays and Wednesdays:

Market that operates on Mondays and Tuesdays:

Some of the details of markets in NAADSM 5 cannot be completely reproduced in ADSM.

In NAADSM 5, the probability of disease spread from a market depends on the number of infected animals at the market. The number of infected animals at a market is computed by:

  • summing the number of infected animals in each incoming shipment, and treating all of them as Infectious Clinical
  • running 1 day of within-­unit disease spread.

In ADSM, we do not model shipment sizes or have within­-unit disease spread. We could assume that each incoming shipment contains 1 infectious animal, and set the prevalence at market to (# of incoming shipments)/(market size). Or, we could simply leave it to the modeler to set a fixed probability of adequate exposure on outgoing contacts from a market, as they currently can for any production type.