MigrateIndividuals

The MigrateIndividuals intervention class is used to force migration and is separate from the normal migration system. However, it does require that human migration is enabled.

Note

Parameters are case-sensitive. For Boolean parameters, set to 1 for true or 0 for false. JSON does not permit comments, but you can add “dummy” parameters to add contextual information to your files.

The table below describes all possible parameters with which this class can be configured. The JSON example that follows shows one potential configuration.

Parameter Data type Minimum Maximum Default Description Example
Duration_At_Node_Exponential_Period float 0 3.40E+3 6 The period (1/rate) to use for an exponential distribution for the amount of time spent at the destination node when Duration_At_Node_Distribution_Type is set to EXPONENTIAL_DURATION.
{
    "Duration_At_Node_Distribution_Type": "EXPONENTIAL_DURATION",
    "Duration_At_Node_Exponential_Period": 4
}
Duration_At_Node_Fixed float 0 3.40E+3 6 The value to use for a fixed distribution for the amount of time spent at the destination node when Duration_At_Node_Distribution_Type is set to FIXED_DURATION.
{
    "Duration_At_Node_Distribution_Type" : "FIXED_DURATION",
    "Duration_At_Node_Fixed": 10
}
Duration_At_Node_Gausian_Mean float 0 3.40E+3 6 The mean value to use for a Gaussian distribution for the amount of time spent at the destination node when Duration_At_Node_Distribution_Type is set to GAUSSIAN_DURATION.
{
    "Duration_At_Node_Distribution_Type": "GAUSSIAN_DURATION",
    "Duration_At_Node_Gausian_Mean": 9.0,
    "Duration_At_Node_Gausian_StdDev": 2.0
}
Duration_At_Node_Gausian_StdDev float 0 3.40E+3 1 The standard deviation to use for a Gaussian distribution for the amount of time spent at the destination node when Duration_At_Node_Distribution_Type is set to GAUSSIAN_DURATION.
{
    "Duration_At_Node_Distribution_Type": "GAUSSIAN_DURATION",
    "Duration_At_Node_Gausian_Mean": 9.0,
    "Duration_At_Node_Gausian_StdDev": 2.0
}
Duration_At_Node_Poisson_Mean float 0 3.40E+3 6 The mean to use for a Poisson distribution for the amount of time spent at the destination node when Duration_At_Node_Distribution_Type is set to POISSON_DURATION.
{
    "Duration_At_Node_Distribution_Type": "POISSON_DURATION",
    "Duration_At_Node_Poisson_Mean": 4
}
Duration_At_Node_Distribution_Type enum NA NA NOT_INITIALIZED

The shape of the distribution for the amount of time spent at the destination node for intervention-based migration. Possible values are:

NOT_INITIALIZED
No distribution set.
FIXED_DURATION
A constant duration.
UNIFORM_DURATION
A uniform random draw for the duration.
GAUSSIAN_DURATION
Duration of the active period is defined by the mean and standard deviation of the Gaussian distribution. Negative values are truncated at zero.
EXPONENTIAL_DURATION
The active period is the mean of the exponential random draw.
POISSON_DURATION
The active period is the mean of the random Poisson draw.
LOG_NORMAL_DURATION
The active period is a log normal distribution defined by a mean and log width.
BIMODAL_DURATION
The distribution is bimodal, the duration is a fraction of the active period for a specified period of time and equal to the active period otherwise.
PIECEWISE_CONSTANT
The distribution is specified with a list of years and a matching list of values. The duration at a given year is that specified for the nearest previous year.
PIECEWISE_LINEAR
The distribution is specified with a list of years and matching list of values. The duration at a given year is a linear interpolation of the specified values.
WEIBULL_DURATION
The duration is a Weibull distribution with a given scale and shape.
DUAL_TIMESCALE_DURATION
The duration is two exponential distributions with given means.
{
    "Duration_At_Node_Distribution_Type": "GAUSSIAN_DURATION"
}
Duration_At_Node_Uniform_Max float 0 3.40E+3 0 The maximum value to use for a uniform distribution for the amount of time spent at the destination node when Duration_At_Node_Distribution_Type is set to UNIFORM_DURATION.
{
    "Duration_At_Node_Distribution_Type": "UNIFORM_DURATION",
    "Duration_At_Node_Uniform_Max": 75,
    "Duration_At_Node_Uniform_Min": 45
}
Duration_At_Node_Uniform_Min float 0 3.40E+3 0 The minimum value to use for a uniform distribution for the amount of time spent at the destination node when Duration_At_Node_Distribution_Type is set to UNIFORM_DURATION.
{
    "Duration_At_Node_Distribution_Type": "UNIFORM_DURATION",
    "Duration_At_Node_Uniform_Max": 75,
    "Duration_At_Node_Uniform_Min": 45
}
Duration_Before_Leaving_Exponential_Period float 0 3.40E+3 6 The period (1/rate) to use for an exponential distribution of the number of days to wait before migrating to the destination node when Duration_Before_Leaving_Distribution_Type is set to EXPONENTIAL_DURATION.
{
    "Duration_Before_Leaving_Distribution_Type": "EXPONENTIAL_DURATION",
    "Duration_Before_Leaving_Exponential_Period": 4
}
Duration_Before_Leaving_Fixed float 0 3.40E+3 6 The value to use for a fixed distribution of the number of days to wait before migrating to the destination node when Duration_Before_Leaving_Distribution_Type is set to FIXED_DURATION.
{
    "Duration_Before_Leaving_Distribution_Type": "FIXED_DURATION",
    "Duration_Before_Leaving_Fixed": 4
}
Duration_Before_Leaving_Gausian_Mean float 0 3.40E+3 6 The mean value to use for a Gaussian distribution of the number of days to wait before migrating to the destination node when Duration_Before_Leaving_Distribution_Type is set to GAUSSIAN_DURATION.
{
    "Duration_Before_Leaving_Distribution_Type": "GAUSSIAN_DURATION",
    "Duration_Before_Leaving_Gausian_Mean": 9.0,
    "Duration_Before_Leaving_Gausian_StdDev": 2.0
}
Duration_Before_Leaving_Gausian_StdDev float 0 3.40E+3 1 The standard deviation to use for a Gaussian distribution of the number of days to wait before migrating to the destination node when Duration_Before_Leaving_Distribution_Type is set to GAUSSIAN_DURATION.
{
    "Duration_Before_Leaving_Distribution_Type": "GAUSSIAN_DURATION",
    "Duration_Before_Leaving_Gausian_Mean": 9.0,
    "Duration_Before_Leaving_Gausian_StdDev": 2.0
}
Duration_Before_Leaving_Poisson_Mean float 0 3.40E+3 6 The mean to use for a Poisson distribution of the number of days to wait before migrating to the destination node when Duration_Before_Leaving_Distribution_Type is set to POISSON_DURATION.
{
    "Duration_Before_Leaving_Distribution_Type": "POISSON_DURATION",
    "Duration_Before_Leaving_Poisson_Mean": 3.0,
}
Duration_Before_Leaving_Distribution_Type enum NA NA NOT_INITIALIZED

The shape of the distribution of the number of days to wait before migrating to the destination node for intervention-based migration. Possible values are:

NOT_INITIALIZED
No distribution set.
FIXED_DURATION
A constant duration.
UNIFORM_DURATION
A uniform random draw for the duration.
GAUSSIAN_DURATION
Duration of the active period is defined by the mean and standard deviation of the Gaussian distribution. Negative values are truncated at zero.
EXPONENTIAL_DURATION
The active period is the mean of the exponential random draw.
POISSON_DURATION
The active period is the mean of the random Poisson draw.
LOG_NORMAL_DURATION
The active period is a log normal distribution defined by a mean and log width.
BIMODAL_DURATION
The distribution is bimodal, the duration is a fraction of the active period for a specified period of time and equal to the active period otherwise.
PIECEWISE_CONSTANT
The distribution is specified with a list of years and a matching list of values. The duration at a given year is that specified for the nearest previous year.
PIECEWISE_LINEAR
The distribution is specified with a list of years and matching list of values. The duration at a given year is a linear interpolation of the specified values.
WEIBULL_DURATION
The duration is a Weibull distribution with a given scale and shape.
DUAL_TIMESCALE_DURATION
The duration is two exponential distributions with given means.
{
    "Duration_Before_Leaving_Distribution_Type": "FIXED_DURATION"
}
Duration_Before_Leaving_Uniform_Max float 0 3.40E+3 0 The maximum value to use for a uniform distribution of the number of days to wait before migrating to the destination node when Duration_Before_Leaving_Distribution_Type is set to UNIFORM_DURATION.
{
    "Duration_Before_Leaving_Distribution_Type": "UNIFORM_DURATION",
    "Duration_Before_Leaving_Uniform_Max": 14,
    "Duration_Before_Leaving_Uniform_Min": 0,
}
Duration_Before_Leaving_Uniform_Min float 0 3.40E+3 0 The minimum value to use for a uniform distribution of the number of days to wait before migrating to the destination node when Duration_Before_Leaving_Distribution_Type is set to UNIFORM_DURATION.
{
    "Duration_Before_Leaving_Distribution_Type": "UNIFORM_DURATION",
    "Duration_Before_Leaving_Uniform_Max": 14,
    "Duration_Before_Leaving_Uniform_Min": 0,
}
Is_Moving boolean NA NA 0 Set to true (1) to indicate the individual is permanently moving to a new home node for intervention-based migration.
{
    "Is_Moving": 1
}
NodeID_To_Migrate_To integer 0 2.15E+0 0 The destination node ID for intervention-based migration.
{
    "NodeID_To_Migrate_To": 26
}
Dont_Allow_Duplicates boolean NA NA 0 If an individual’s container has an intervention, set to true (1) to prevent them from receiving another copy of the intervention. Supported by all intervention classes.
{
    "Dont_Allow_Duplicates": 0
}
Disqualifying_Properties string NA NA NA A list of IndividualProperty key:value pairs that cause an intervention to be aborted (persistent interventions will stop being distributed to individuals with these values). See NodeProperties and IndividualProperties parameters for more information. Generally used to control the flow of health care access. For example, to prevent the same individual from accessing health care via two different routes at the same time.
{
    "Disqualifying_Properties": [
        "InterventionStatus:LostForever"
    ]
}
Intervention_Name string NA NA NA The optional name used to refer to this intervention as a means to differentiate it from others that use the same class.
{
    "Intervention_Name":"Diagnostic_Sample"
}
New_Property_Value string NA NA NA An optional IndividualProperty key:value pair that will be assigned when the intervention is distributed. See NodeProperties and IndividualProperties parameters for more information. Generally used to indicate the broad category of health care cascade to which an intervention belongs to prevent individuals from accessing care through multiple pathways. For example, if an individual must already be taking a particular medication to be prescribed a new one.
{
    "New_Property_Value": "InterventionStatus:None"
}
{
    "Use_Defaults": 1,
    "Events": [
        {
            "class": "CampaignEvent",
            "Start_Day": 5,
            "Nodeset_Config": {
                "class": "NodeSetNodeList",
                "Node_List": [ 1 ]
            },
            "Event_Coordinator_Config": {
                "class": "StandardInterventionDistributionEventCoordinator",
                "Target_Residents_Only": 1,
                "Target_Demographic": "Everyone",
                "Demographic_Coverage": 1.0,
                "Intervention_Config": {
                    "class": "MigrateIndividuals",
                    "NodeID_To_Migrate_To": 2,
                    "Duration_Before_Leaving_Distribution_Type": "FIXED_DURATION",
                    "Duration_Before_Leaving_Fixed": 0,
                    "Duration_At_Node_Distribution_Type": "FIXED_DURATION",
                    "Duration_At_Node_Fixed": 999,
                    "Is_Moving": 0
                }
            }
        }
    ]
}