本研究展示了一种将水质模型与基于进化算法的优化组件相结合的方法,用于求解在特定水质改善目标下农业保护措施的最优(最低成本)布局方案。该方法采用多目标优化途径生成解决方案,能够明确量化各项权衡关系。
需要JoVE订阅才能观看此内容。 请登录或开始免费试用
本研究展示了一种将水质模型与基于进化算法的优化组件相结合的方法,用于求解在特定水质改善目标下农业保护措施的最优(最低成本)布局方案。该方法采用多目标优化途径生成解决方案,能够明确量化各项权衡关系。
寻找成本效益高的(即,以最低成本实现全流域特定水质目标的保护措施投资方案,在流域管理中至关重要。在流域背景下,采用传统经济学方法寻找最低成本解决方案(例如,5,12,20)假设异地影响可以准确地表示为现场污染产生量的一个比例。这类方法不太可能真实反映流域内实际的污染过程,因为在流域中,污染源的影响通常由复杂的生物物理过程所决定。采用现代基于物理机制、空间分布的水文模拟模型,能够在过程表征方面提供更高的真实性,但需要构建一个模拟-优化耦合框架,使模型成为优化过程的有机组成部分。
进化算法似乎是一种特别有用的优化工具,能够应对流域模拟-优化问题的组合特性,并允许使用完整的水质模型。进化算法将流域中特定空间分布的保护措施配置视为候选解,并利用一组(种群)候选解,迭代地应用选择、重组和变异等随机算子,以在优化目标方面寻找改进方案。本案例中的优化目标是,在最小化流域非点源污染的同时,最小化保护措施的成本。近年来,越来越多的研究尝试采用类似方法,将水质模型与广义定义的进化优化方法相结合3,4,9,10,13-15,17-19,22,23,25。在本应用中,我们展示了一个遵循Rabotyagov等人方法的程序,该程序将现代且广泛使用的SWAT水质模型7与多目标进化算法SPEA226相结合,并整合用户指定的一组保护措施及其成本,用于搜索保护措施成本与用户指定水质目标之间的完整权衡前沿。这些前沿通过呈现与各种水质改善目标相关联的全部成本范围,量化了流域管理者所面临的权衡关系。该程序支持选择能够实现特定水质改善目标的流域配置,并生成保护措施优化布局的地图。
1. 准备流域模型并提供优化所需的输入数据
候选方案的总成本是应用于流域单元(“水文响应单元”,或HRU)的保护措施成本之和。优化程序考虑在流域内每个农田HRU中,从特定的保护措施集合中选择一种保护措施进行最优分配。分配给HRU的可能保护措施集合称为等位集合。
2. 选择优化参数

图 1. 设置优化目标和参数。
需选择的优化参数:
预设: 选择要优化的流域。点击“应用”将从预设文件“watershed presets.csv”中选择条目,以填充此屏幕上的控制值。
输出变量: 选择用于优化的环境目标。如选定(出水口氮、出水口磷),则定义了一个三维目标函数:在出口处5年平均的氮(有机氮 + NO₃ + NH₄ + NO₂)、在出口处5年平均的磷(有机磷 + 矿物磷),以及保护措施的总成本。请注意,这将生成一个三维权衡前沿。也可选择其他输出变量,此时多目标优化问题为最小化({输出变量},总成本)。
种群规模: 设置初始种群规模,该参数决定初始候选解的数量。当选择“使用每个等位基因进行初始化”选项时,系统首先生成代表将等位基因集中指定的每种保护措施均匀应用于流域内所有农田水文响应单元(HRU)的候选解。其余候选解则通过从等位基因集中随机分配保护措施至农田水文响应单元而生成。选择“使用每个等位基因进行初始化”选项时,需确保初始种群规模至少等于等位基因集中等位基因的数量(本示例中为23个)。
代数:为优化运行设置所需的代数(迭代次数)(注意:运行可重新启动)。
交叉概率:当选择两个候选解以生成新的候选解时,交叉概率指定了生成不同新解的概率(本演示中设为 1)。
临时种群大小:此值决定了生成的新候选解的数量。当该数值为处理器线程数的整数倍时(本示例中为16),处理器资源的利用效率最高。
突变概率:指定将水文响应单元(HRU)随机更改为等位基因集合中另一项保护措施的概率。(本演示中该值设为 0.03)。
线程数:选择使用的处理器或线程数量。本演示中使用 16 个线程。
曲线编号 校准因子:由 SWAT 模型校准提供。
将种群保存至文本文件:如果希望在完成指定迭代次数后重新启动优化运行,则必须选择此选项。勾选此选项后,将生成一个文本文件,其中包含每个存活候选解(个体)中每个HRU的等位基因值。该文件可被重新读取,以重启并继续运行。
二次优化参数
第一年:必须设置为历史天气信息开始年份之后的某一年,且不晚于本数据截止日期前7年。
玉米价格:结合产量损失方程,用于估算减施肥料所导致的成本。
评分方法:SPEA2 归档。评分用于确定存活个体被选中进行交叉的概率。
清除方法:被支配法。在全部3个维度上均较差的个体将被视为被支配并予以清除。
集水区代码来源:设置为“指定位置”,表示使用以下字段“流域集水区代码(Watershed HUC)”中的值“7100006”来在集水区代码区域表中查找对应行。该值“07100006”是浣熊河流域(Raccoon watershed)的八位集水区代码。
成本来源:设置为“县(HRU 位置代码)”以表明除 CRP 以外的成本将由上述实践成本表中的县 FIPS 代码确定。
成本来源 CRP:设置为“1 个地点”,表示 CRP 成本将由上述实践成本表中的县 FIPS 代码确定。
SWAT 版本:SWAT2005
3. 典型结果
GeneticiSWAT.exe 会生成一个日志文件,显示所有候选解(个体)的设置和结果,以及一个“保存”文件,该文件编码了最终算法迭代的结果,可用于重新启动优化运行。
此时,可以通过执行以下步骤来可视化所有帕累托有效解的集合(权衡前沿):

图 2. 创建三维前沿可视化“快照”的截图。
输出为一系列文件,可通过使用 POV-RAY 程序并选择“渲染”,然后选择“文件队列”,一次性将这些文件渲染为图像文件。这些图像可单独使用,也可合并生成展示算法运行过程的视频。

图 3. 权衡前沿的静态可视化。
如有需要,可通过运行“Framescanner.exe”并按照以下步骤操作,生成展示算法运行过程的视频:
前沿中的每个点代表一种流域配置(即在景观上分配特定保护措施的方案)。通过执行以下步骤,可以查看整个前沿的这些配置地图:

图 4. 创建最终边界内每个个体地图的截图。
导出感兴趣的特定流域配置(个体)。
通常,一个感兴趣的问题是选择能够实现特定水质目标的特定流域配置(个体)。例如,可能希望找到前沿中相对于基准负荷氮减少30%、磷减少20%的个体。MapSWAT允许用户在前沿中搜索距离指定目标欧几里得距离最小的个体。可通过以下步骤实现:

图 5. 基于水质目标在前沿区域中搜索特定个体的截图。

图 6. 搜索结果截图

图 7. 前沿区域中选定个体样本地图的截图。 点击此处查看大图。
通过执行以下步骤,可导出地图数据以进行进一步分析:
| 程序名称 | 来源 | 描述 |
| Rotator | CARD | 为流域创建并填充包含土壤、气象和管理数据的 i_SWAT 数据库。 |
| Swat2005GA.exe | USDA 草地、土壤与水资源研究实验室 | 流域模拟模型 |
| i_SWAT.exe | CARD | SWAT 数据库接口 |
| GeneticISWAT.exe | CARD | 进化算法 SWAT 控制器。整合了来自 http://lancet.mit.edu/ga/ 的 GALib。 |
| MapSWAT.exe | CARD | 读取 i_SWAT 数据库和 shapefile 文件,生成各代及个体的图像。 |
| POV-Ray | Povray.org | 视觉持久性光线追踪器。 |
| Framescanner.exe | Todd Campbell | PNG 图像转 AVI 格式转换工具 |
| Windows Live Movie Maker | Microsoft | 用于将 AVI 压缩为 WMV 格式 |
表1. 所需程序列表。
| 文件名称 | 类型 | 描述 |
| Raccoon GA.mdb | Access 数据库 | Raccoon 流域的结构与管理描述文件,由 GeneticiSWAT 和 MapSWAT 读取。 |
| watershed presets.csv | 文本 | GeneticiSWAT.exe 和 MapSWAT 的预设配置文件。 |
| Alleles.csv | 文本 | 进化算法所用等位基因集合的列表。 |
| Raccoon Allele HRU.txt | 文本 | 由 GeneticISWAT 生成的文件,列出被判定为耕地的等位基因,供 MapSWAT 读取。 |
| Practice costs by subbasin Josh.mdb | Access 数据库 | 按管理措施和县划分的成本数据。 |
| Terrace Zones.mdb | Access 数据库 | 表 [HUC Data] 包含该流域的梯田和产量分区编号。 |
| NRI Budgets.mdb | Access 数据库 | GeneticISWAT.exe 读取的作物与机械表格,但本次运行中未使用。 |
| phucrp 2008-12-15.dat | 文本 | 植物热量单位查询表,本次运行中未使用。 |
| Management.mdb | Access 数据库 | 轮作查询表,本次运行中未使用。 |
| Raccoon GA 2011-09-28 1313.log, Raccoon GA 2011-09-29 0732.log, Raccoon GA 2011-10-07 0644.log | 文本 | GeneticISWAT 运行的日志文件。 |
| Raccoon GA.wmv | 动画 | 按世代展示个体的三维显示。 |
| Subbasin.shp | ESRI Shapefile | 流域内子流域的边界轮廓。 |
| Raccoon Map.wmv | 动画 | 展示前沿中每个个体在各子流域的优势等位基因分布。 |
表2. 所需样本文件列表。
访问受限。请登录或开始试用以查看此内容。
我们构建了一个集成的模拟-优化框架,用于搜索流域配置的帕累托有效集,该配置涉及实现不同流域尺度营养物减排目标下成本最低的农业保护措施组合及其选址方案。图8展示了该模拟-优化系统的概念示意图。流域模拟(包括农业保护措施对水质影响的模拟)由水文模型 SWAT2005 完成,并与基于 Windows 的数据库控制系统 i_SWAT6,8 耦合。优化模块作用于 SWAT 模型的水文响应单元(HRUs),采用进化算法26的逻辑,寻找在最小化营养物负荷(氮、磷或两者同时)的同时也最小化保护措施成本的措施分配方案。当算法迭代终止后,保留下来的个体集合即代表近似的权衡前沿。由于同时考虑两种营养物(硝态氮和总磷),我们得到一个三维的权衡前沿。权衡前沿上的每一个个体点都对应一套特定的保护措施配置方案,适用于流域内每个决策单元(耕地型 HRU)。为了确定选择了哪些保护措施,我们需要设定营养物减排目标,然后在权衡前沿中搜索满足该营养物减排标准的个体配置方案。所选保护措施的位置和组合可回映至流域内田块尺度的空间决策单元(若创建 HRU 时具备相应数据)。我们的方法通过明确保护措施的具体...
访问受限。请登录或开始试用以查看此内容。
未声明任何利益冲突。
本研究部分资金来自美国环境保护局流域重点资助项目(项目编号:WS97704801)、美国国家科学基金会自然与人类系统耦合动态项目(项目编号:DEB1010259-CARD-KLIN)以及美国农业部国家食品与农业研究所协调农业项目(项目编号:20116800230190-CARD)的支持。
访问受限。请登录或开始试用以查看此内容。
访问受限。请登录或开始试用以查看此内容。