跳转至

模型参数

多主体模型的参数配置分为多组:

config 文件夹下的 config.yaml 文件中,按如下格式配置:

配置组:
  配置名: 配置值

Tip

技术上利用 hydra (1.3 version) 从配置文件组中获取 YAML 语法预设的参数和情景配置。

数据集配置

配置名 配置数据类型 对应数据 解释说明
mete 字典 气象资料 数据路径与读取配置
soil 字典 遥感数据 数据路径与读取配置
cities 字典 水资源管理主体 数据路径与读取配置
irr_area 字符串 遥感数据 数据路径
irr_wui 字符串 统计数据 数据路径
irr_area_ha 字符串 统计数据 数据路径
agents_num 字符串 统计数据 数据路径
quotas 字符串 统计数据 数据路径
water_prices 字符串 数据路径
crop_prices 字典 农作物市场价格数据

实验配置

配置名 配置数据类型 解释说明
name 字符串 实验名称
repeats 整数 单次实验的模型重复次数
num_process 整数 单次实验调用的线程数

日志配置

配置名 配置数据类型 解释说明
name 字符串 日志文件名
level 字符串:DEBUG, INFO, WARNING, ERROR, CRITICAL 日志记录的等级

模拟时间配置

配置名 配置数据类型 解释说明 示例
start 字符串 模型开始模拟的时间 "1980-01-01"
end 字符串 模型结束模拟的时间 "2010-01-01"
years 整数 单次模拟时间向前推进的年份 1
## 省级配置
配置名 配置数据类型 解释说明 默认值
--------- --------- ---------------- ----
n_scale 浮点数 [0-1] 村庄数量到主体数量之间的换算系数 1
l_p 浮点数 [0-1] 省内灌溉主体建立联系的概率 0.05
l_c 浮点数 [0-1] 地级市内灌溉主体建立联系的概率 0.05

配置示例

```yaml

province: n_scale: 0.2 l_p: 0.05 l_c: 0.05

灌溉主体配置

配置名 配置数据类型 解释说明 默认值
irr_method 整数 [0-5] 农业灌溉主体的灌溉策略 0
mutation_rate 浮点数 [0-1] 农业灌溉主体随机改变决策的概率 0.05
s_enforcement_cost 浮点数 [0-1] 计算[[func|社会收益]]时代表beta1的参数 0.26
s_reputation 浮点数 [0-1] 计算[[func|社会收益]]时代表beta2的参数 0.55
forced_since 整数 [[分水制度]]强制实施的年份 1998

[!example] 配置示例 ```yaml farmer: irr_method: 4 mutation_rate: 0.05 s_enforcement_cost: 0.26 # Grid = 1 - S-enforcement-cost s_reputation: 0.55 # Group = S-reputation forced_since: 1998

AquaCrop 配置

In progress

该文档仍在积极开发中。

irr_method: 4
# ----- 灌溉管理策略 -----
IrrigationManagement:
  # When IrrMethod = 1, this parameter will be applied:
  SMT:
    - 100  # emergence stage
    - 100  # canopy_growth
    - 100  # max_canopy
    - 100  # senescence
  # When IrrMethod = 2:
  IrrInterval: 3  # 每三天灌溉一次
  # 灌溉方法3,用特定的 pd.DataFrame 里的日期进行浇灌
  Schedule: None
  # 灌溉方案4
  NetIrrSMT: 80  # 灌溉目标是保持土壤水保持在田间持水量的 80%
  # 灌溉方案5
  depth: 0  # mm constant depth apply on each day

  # ---- 其它灌溉参数参数
  WetSurf: 100.0  # 灌溉完全覆盖田地
  AppEff: 80  # 灌溉效率 80%
  MaxIrr: 25  # 每天最多灌溉 mm
  MaxIrrSeason: 10_000  # 每个生长季最多灌溉多少毫米

# ----- 田间管理策略 -----
FieldMngt:
  mulches: False
  bunds: True
  curve_number_adj: False
  sr_inhb: False
  mulch_pct: 50
  f_mulch: 0.5
  z_bund: 0
  bund_water: 0
  curve_number_adj_pct: 0