Simulation of Agricultural Production and Climate Change
Title: Simulation of Agricultural Production and Climate Change
Author: Josef Vyskočil
Method: Agent-based model
Tool: NetLogo
Contents
Introduction and problem definition
Climate change poses a critical threat to agriculture, affecting farmers, food security, and economies globally. The Simulation of Agricultural Production and Climate Change (SAPCC) project employs NetLogo for agent-based modeling to address this challenge. Its primary aim is to assist farmers, scientists, and policymakers in understanding and preparing for the impact of climate change on agriculture.
SAPCC focuses on modeling how climate variables, such as temperature, precipitation, and soil conditions, influence crop yields and soil fertility over time. Users can explore various climate scenarios and assess adaptation strategies within the simulation. By analyzing real-world data on crop types, soil conditions, precipitation patterns, temperature fluctuations, and irrigation methods, SAPCC provides insights into how climate changes affect crop cultivation and agriculture's long-term sustainability. This project aims to offer actionable insights for sustainable food production in a changing climate.
Environment
This simulation creates a dynamic model reflecting the intricate balance between climate change and agricultural productivity. At its core, the simulation analyzes the interplay between soil fertility, crop yield, and irrigation methods under varying climatic conditions.
Features
Crops: A variety of crops including grains, vegetables, and fruits are modeled to evaluate their growth and yield under different environmental conditions.
Soil Conditions: Soil fertility is a fluctuating factor, influenced by temperature, precipitation, and agricultural practices, represented by a spectrum of values that can be visualized in real-time.
Climate Factors: Both temperature and rainfall are variable factors in the model, changing over time to simulate the effects of climate change.
Irrigation Methods: Several irrigation strategies, from traditional to adaptive techniques, are assessed for their efficiency and impact on soil and crop yield.
Simulation Controls
Temperature: Starting at a base of 9°C, with an increase of 1.5°C per 100 years, alongside a variability factor.
Rainfall: Set at a baseline of 600mm, with a variability of 20mm to simulate precipitation changes.
Soil pH: A crucial factor for crop growth, starting at 6.5 with a variability of 0.2.
Humidity: Set at 75% with a 1% variability to model different levels of atmospheric moisture.
Agents
Fields: The core components of this agricultural simulation are the fields, each endowed with distinct characteristics that determine their crop production capacity. These attributes include soil fertility, crop yield, and the type of crop being cultivated. Each field agent serves as a unique microcosm within the simulation, reflecting the diverse conditions and challenges of real-world agriculture.
The update-fields procedure is pivotal in simulating the dynamic nature of soil fertility as it is influenced by climatic conditions and irrigation practices. Within this subroutine, each field agent assesses and adjusts its soil fertility based on a set of environmental factors and agricultural techniques.
to update-fields
ask fields [ let temp-effect 0 let rain-effect 0 let pH-effect 0 let humidity-effect 0
let watering-effect 1
ifelse watering_method = "no" [ set watering-effect 0.9 ] [ ifelse watering_method = "adaptive" [ set watering-effect 1.2 ] [ ifelse watering_method = "floating" [ set watering-effect 1.1 ] [ ifelse watering_method = "drip" [ set watering-effect 1.15 ] [ if watering_method = "sprinkled" [ set watering-effect 1 ] ] ] ] ]
if temperature > 30 [ set temp-effect -5 ] if temperature < 30 [ set temp-effect 0.1 ]
if rainfall > 800 [ set rain-effect -10 ] if rainfall < 800 [ set rain-effect 0.1 ]
if pH > 8 or pH < 5 [ set pH-effect -10 ]
if humidity < 30 or humidity > 85 [ set humidity-effect -5 ]
let total-effect (temp-effect + rain-effect + pH-effect + humidity-effect) * (watering-effect * 2) set soil-fertility soil-fertility + total-effect if soil-fertility < 0 [ set soil-fertility 0 ] if soil-fertility > 100 [ set soil-fertility 100 ] set pcolor scale-color green soil-fertility 0 100 ]
end
Possible future improvements
Results
NetLogo File
Sources
https://openknowledge.worldbank.org/entities/publication/a4373f71-f7b9-57c3-a66d-cf3f6a121c73