{
  "modelName": "AgriNudgex Participation \u0026 Persistence ABM",
  "modelVersion": "2.0.0",
  "modelStatus": "current",
  "codeVersion": "40177a25d7a0ff4b6056582704ac5a33c138b0b4",
  "dataOrigin": "SYNTHETIC",
  "dataOriginStatement": "All farmer data are SYNTHETIC agents generated by the AgriNudgex simulation model. They do not represent real farmers, observed behaviour, or empirical measurements. Results are model outputs conditional on stated assumptions and are not evidence of real-world effectiveness.",
  "experimentId": 1,
  "createdUtc": "2026-10-30T20:56:12.8924969",
  "completedUtc": "2026-10-30T20:56:32.3377585",
  "configurationHash": "1577c81c6de912eaf3cf71de25b23710ed69b4c3be83bddf9e11f564d3a2524c",
  "reproduction": "Submit \u0027configuration\u0027 unchanged. It declares modelVersion 2.0.0 and is executed by that model\u0027s engine; installations that do not support this version reject it.",
  "configuration": {
    "name": "Example: v2 quick demonstration (olive ground cover)",
    "description": "Small expenditure-matched comparison on SYNTHETIC olive growers.",
    "masterSeed": 20270205,
    "periods": 12,
    "repetitions": 20,
    "populationSizes": [
      100
    ],
    "budgetLevels": [
      {
        "label": "Uncapped",
        "budgetPerFarmer": 0,
        "uncapped": true
      }
    ],
    "sensitivityLevels": [
      {
        "label": "Medium",
        "betaR": 1.5
      }
    ],
    "mechanisms": [
      "S0",
      "S1",
      "S2",
      "S3",
      "S3R"
    ],
    "budgetAllocation": "PerPeriodWithCarryOver",
    "behavior": {
      "betaB": 2,
      "betaC": 1.5,
      "experienceEffect": 0.1,
      "monetaryReference": 100
    },
    "population": {
      "initialAdoptionRate": 0.1,
      "baselinePropensity": {
        "mean": -2,
        "sd": 1,
        "min": -6,
        "max": 2
      },
      "perceivedBenefit": {
        "mean": 0.5,
        "sd": 0.15,
        "min": 0,
        "max": 1
      },
      "adoptionCost": {
        "mean": 80,
        "sd": 25,
        "min": 10,
        "max": 200
      },
      "incentiveSensitivity": {
        "mean": 1,
        "sd": 0.25,
        "min": 0.1,
        "max": 2
      },
      "baselinePerformance": {
        "mean": 0.35,
        "sd": 0.1,
        "min": 0.05,
        "max": 0.8
      },
      "performanceGainPotential": {
        "mean": 0.3,
        "sd": 0.1,
        "min": 0.05,
        "max": 0.6
      }
    },
    "performance": {
      "improvementRate": 0.35,
      "decayRate": 0.25,
      "verificationNoiseSd": 0.02
    },
    "mechanismSettings": {
      "fixedReward": 100,
      "fixedRewardMinimumPerformance": 0,
      "performanceRate": 333.3333333333333,
      "performanceRewardCap": 200,
      "tiers": [
        {
          "threshold": 0.45,
          "reward": 50
        },
        {
          "threshold": 0.55,
          "reward": 100
        },
        {
          "threshold": 0.65,
          "reward": 150
        }
      ]
    },
    "modelVersion": "2.0.0",
    "v2": {
      "protocol": "Frontier",
      "practice": {
        "crop": "Olive orchards (Olea europaea), Mediterranean rain-fed conditions",
        "practice": "Maintained inter-row ground cover (sown cover crop or managed spontaneous vegetation) during the erosion-risk season, instead of bare soil kept by tillage or herbicide",
        "periodUnit": "One agricultural season (one year)",
        "decision": "Whether to maintain inter-row ground cover in the coming season (binary, taken once per season)",
        "performanceIndicator": "Verified inter-row ground-cover fraction during the erosion-risk season (0\u20131); a single observable indicator, not an aggregate sustainability score",
        "reversibility": "Reversible-seasonal: participation can start or stop every season; cover quality builds up over consecutive seasons and degrades towards the conventional level after stopping",
        "verification": "Assumed remote sensing or field inspection; participation verified without error, ground-cover fraction with Gaussian measurement error"
      },
      "persistenceStrength": 2,
      "expectationHorizon": 3,
      "expectationDiscount": 0.9,
      "initialPayoutExpectation": 1,
      "initialParticipantPerformanceSteps": 1,
      "heterogeneityScale": 1,
      "costBaselineCorrelation": 0,
      "sustainedSpellLength": 4,
      "bootstrapResamples": 1000,
      "relativeTiers": [
        {
          "threshold": 0.1,
          "reward": 50
        },
        {
          "threshold": 0.2,
          "reward": 100
        },
        {
          "threshold": 0.3,
          "reward": 150
        }
      ],
      "rewardScales": [
        0.25,
        0.5,
        0.75,
        1,
        1.25,
        1.5,
        2,
        2.5,
        3
      ],
      "spendingTargets": [
        100,
        200,
        300,
        400
      ],
      "primarySpendingTarget": 200,
      "sensitivity": {
        "points": 64,
        "seed": 20270101,
        "rewardScales": [
          0.5,
          1,
          1.5,
          2,
          3
        ],
        "factors": [
          {
            "factor": "BetaR",
            "min": 0.5,
            "max": 3,
            "isInteger": false
          },
          {
            "factor": "CostMean",
            "min": 40,
            "max": 120,
            "isInteger": false
          },
          {
            "factor": "BenefitMean",
            "min": 0.3,
            "max": 0.7,
            "isInteger": false
          },
          {
            "factor": "PropensityMean",
            "min": -3,
            "max": -1,
            "isInteger": false
          },
          {
            "factor": "Persistence",
            "min": 0,
            "max": 4,
            "isInteger": false
          },
          {
            "factor": "ImprovementRate",
            "min": 0.15,
            "max": 0.55,
            "isInteger": false
          },
          {
            "factor": "DecayRate",
            "min": 0.1,
            "max": 0.5,
            "isInteger": false
          },
          {
            "factor": "InitialPayoutExpectation",
            "min": 0.5,
            "max": 1,
            "isInteger": false
          },
          {
            "factor": "ExpectationHorizon",
            "min": 1,
            "max": 5,
            "isInteger": true
          },
          {
            "factor": "HeterogeneityScale",
            "min": 0.5,
            "max": 1.5,
            "isInteger": false
          },
          {
            "factor": "CostBaselineCorrelation",
            "min": -0.5,
            "max": 0.5,
            "isInteger": false
          }
        ]
      }
    }
  }
}