交通 | 神奇动物在哪里?Operations Research经典文章

在这里插入图片描述
论文作者:Robert G. Haight, Charles S. Revelle, Stephanie A. Snyder​
论文原文:Robert G. Haight, Charles S. Revelle, Stephanie A. Snyder, (2000) An Integer Optimization Approach to a Probabilistic Reserve Site Selection Problem. Operations Research 48(5):697-708. https://doi.org/10.1287/opre.48.5.697.12411

前言:​

神奇动物在哪里?随着人类生产生活行为的扩张,诸多生物濒危。建立自然保护区是保护濒危生物的有效举措,然而由于生产生活需要(例如耕地、建造城市等),我们不可能将所有的地方都选址为自然保护区。因此,我们亟需定量研究与优化这一选址问题。与此同时,大自然是一个复杂、优美的系统,充满了不确定性,如何在选址优化决策中考虑不确定性是一个重要的课题,也是难题。​
本篇推文解读发表在utd24期刊《Operations Research》的一篇经典文章。第二作者Charles S. Revelle是美国科学院院士,在空间优化、选址等领域产出丰厚,也是著名的集合覆盖问题(Location Set Covering Problem, LSCP)的提出者,其学生也是桃李满天下。通过本文,你将了解到运筹学可以帮助我们解决生物保护这一看似陌生、却很重要的课题。同时,你将了解到考虑不确定性的选址优化决策模型,与一种模型线性化的方法。

1. 背景

随着人类生产生活行为的扩张,诸多生物濒危。据不完全统计,超过900个濒危物种已被列为或即将被列入美国联邦濒危物种法。


图1 美国濒危植物的地理分布。数据来源:Science期刊 [2]

建立自然保护区是保护濒危生物的有效举措。然而决策者需要充分权衡生产生活需要(例如耕地、建造城市等)与建立自然保护区的矛盾。随意划定自然保护区将无法有效保护濒危物种与实现生物多样性目标。因此,定量研究与优化方法亟需被引入来助力自然保护区的选址。

最基本的定量决策方法包括打分排序法、贪心启发式算法等。然而,我们希望更精准、更优的方式辅助我们进行定量决策。从运筹优化的视角,这一问题通常可以被建模为:在一定预算成本的限制下(约束条件),选择一个备选区域集合的子集(决策变量)组建自然保护区,以期实现最大化地保护关注的濒危生物(目标函数)。给定确定性的输入数据,可以应用或改进经典的选址模型来达成目标,例如集合覆盖问题(Location Set Covering Problem, LSCP)[3] 或最大覆盖问题(Maximum Covering Location Problem,MCLP)[4] 。

上述模型认为输入数据是确定性的。然而,大自然是一个复杂的不确定性系统,我们很难确定生物是否一定出现在某个自然保护区,这是一类概率数据。为了考虑这一不确定因素,本文针对性地设计了数学优化模型COMPRES(Covering Model for Probabilistic Reserve Selection)

2. 模型构建

定义一些数学符号:集合 I I I表示被保护生物集合,其中 i ∈ I i\in I iI;集合 J J J表示备选区域集合,其中 j ∈ J j\in J jJ T T T表示自然保护区总面积的上界,其表征了预算成本; A j A_{j} Aj表示备选区域 j j j的面积; N i N_i Ni表示存在生物 i i i的备选区域集合,即生物 i i i在这些区域内出现的概率不为0; P i j P_{ij} Pij表示被保护生物 i i i出现在备选区域 j j j的概率; α i \alpha_i αi表示保护生物 i i i的可靠性阈值;0-1决策变量 X j X_j Xj表示区域 j j j是否被选为自然保护区的一部分,是为1,反之为0;0-1决策变量 Y i Y_i Yi表示生物 i i i是否被所设计的自然保护区以不低于 α i \alpha_i αi的可靠性保护,是为1,反之为0。

所设计的数学模型COMPRES如下:
max ⁡ Z = ∑ i ∈ I Y i \begin{equation} \max Z=\sum\limits_{i\in I}Y_i \end{equation} maxZ=iIYi
s . t . ∑ j ∈ J A j X j ≤ T , ∏ j ∈ N i ( 1 − P i j ) X j ≤ ( 1 − α i ) Y i , ∀ i ∈ I , 1 − ( ∏ j ∈ N i ( 1 − P i j ) X j ) ≥ β i , ∀ i ∈ M , X j , Y i ∈ { 0 , 1 } , ∀ i ∈ I , ∀ j ∈ J . \begin{align} s.t. & \sum\limits_{j\in J}A_jX_j\leq T, \\ & \prod\limits_{j\in N_i}(1-P_{ij})^{X_j}\leq(1-\alpha_i)^{Y_i}, \forall i\in I, \\ & 1-\left(\prod\limits_{j\in N_i}(1-P_{ij})^{X_j}\right)\geq \beta_i, \forall i\in M, \\ & X_j, Y_i\in\{0,1\}, \forall i\in I, \forall j\in J. \end{align} s.t.jJAjXjT,jNi(1Pij)Xj(1αi)Yi,iI,1 jNi(1Pij)Xj βi,iM,Xj,Yi{0,1},iI,jJ.

其中,目标函数(1)旨在最大化“被保护”的生物数量,其中“被保护”指被以不低于 α i \alpha_i αi的可靠性保护;约束条件(2)表示自然保护区的总面积不得超过预算上界 T T T约束条件(3)是本文的一个创新点,表示生物 i i i被集合 N i N_i Ni中区域保护的独立联合概率不小于可靠性阈值 α i \alpha_i αi该约束也可自动推导出0-1决策变量 Y i Y_i Yi的取值,也表征了决策者的风险厌恶(Risk aversion)程度,若 ∏ j ∈ N i ( 1 − P i j ) X j ≤ ( 1 − α i ) \prod\limits_{j\in N_i}(1-P_{ij})^{X_j}\leq(1-\alpha_i) jNi(1Pij)Xj(1αi),且考虑到最大化的目标, Y i Y_i Yi应取值为1;若 ∏ j ∈ N i ( 1 − P i j ) X j > ( 1 − α i ) \prod\limits_{j\in N_i}(1-P_{ij})^{X_j}>(1-\alpha_i) jNi(1Pij)Xj>(1αi),则 Y i Y_i Yi应取值为0,表示生物 i i i无法按期望的可靠性被保护;约束条件(4)是(3)的扩展,其中 M M M表示一些需要被重点保护的生物,其可靠性阈值是一个更为严格的数值 β i \beta_i βi;约束(5)表示了两个0-1决策变量。

初步分析这一模型,这是一个非线性0-1整数规划问题,其中,约束条件(3)和(4)引入了非线性。为了使得模型可以被高效地用求解器求解并分析最优性,本文利用了这两个约束条件良好的结构,引入log算子进行模型线性化

3. 模型线性化

约束条件(3)的构造相对巧妙,具备良好的结构,通过两边同时取log变换进行线性化
∑ j ∈ N i X j ln ⁡ ( 1 − P i j ) ≤ Y i ln ⁡ ( 1 − α i ) , ∀ i ∈ I . \begin{equation} \sum\limits_{j\in N_i}X_j\ln(1-P_{ij})\leq Y_i\ln(1-\alpha_i), \forall i\in I. \end{equation} jNiXjln(1Pij)Yiln(1αi),iI.注意到ln里的数值均为[0, 1]的概率值,因而ln项的值始终为负值,我们可以在等式两边同时乘以-1,并得到
Y i ≤ ∑ J ∈ N i X j ln ⁡ ( 1 − P i j ) ln ⁡ ( 1 − α i ) , ∀ i ∈ I . \begin{equation} Y_i\leq\frac{\sum\limits_{J\in N_i}X_j\ln(1-P_{ij})}{\ln(1-\alpha_i)}, \forall i\in I. \end{equation} Yiln(1αi)JNiXjln(1Pij),iI.

同理,可以对约束(4)进行线性化。通过移项、等式两边乘以-1、取log变换,可以得到
∑ j ∈ N i X j ln ⁡ ( 1 − P i j ) ≤ ln ⁡ ( 1 − β i ) , ∀ i ∈ M . \begin{equation} \sum\limits_{j\in N_i}X_j\ln(1-P_{ij})\leq \ln(1-\beta_i), \forall i\in M. \end{equation} jNiXjln(1Pij)ln(1βi),iM.

通过将原优化问题中的约束条件(3)和(4)替换为式(6)和(8),原优化问题即可被转换为线性0-1整数规划问题。如果没有上述线性化过程,我们要处理一个繁琐的非线性整数规划模型,并应用一些无法得到最优性保证的启发式算法求解。

4. 实验设定、优化求解与决策分析

4.1 实验设定

本文基于苏必利尔国家森林(Superior National Forest)进行的数据进行实验,研究如何为其选址科研自然保护区(Research natural areas, RNAs)。如图2左图所示,苏必利尔国家森林公园位于美国与加拿大的边境地区(黑色区域);如图2右图所示,黑色区域表示备选区域,共33个,带有字母数字标签的阴影区域表示5个亚组,包含125种待研究与保护的生物群落。因而生物出现-不出现(Presence-absence)在备选区域的概率数据矩阵尺度为33×125=4,125。
在这里插入图片描述

图2 苏必利尔国家森林公园(Superior National Forest)

4.2 优化求解

针对模型线性化后得到的线性0-1整数规划模型,本文在IBM300PL计算机上调用GAMS/OSL 2.25(GAMS Development Corporation 1990, Optimization Subroutine Library, FORTRAN-based)求解,内置算法框架为分支定界法**(Branch-and-bound, B&B)**,其中,线性规划松弛问题由原始-对偶预测-校正障碍内点法(Primal-Dual Predictor-Corrector Barrier Interior point algorithm)求解。

4.3 决策分析

对于选址决策者来说,定量优化模型可以助力精准决策,提供更具象的权衡分析(Trade-Off Analysis)。通过所构建的数学模型与优化求解结果,本文提供了四个权衡分析视角,并用三张曲线图直观显示。

视角一(图3):自然保护区总面积与保护生物群落数的权衡。随着自然保护区总面积的减少,所能可靠地保护的生物群落数减少,这也是符合常识的。权衡分析曲线可以进一步量化常识,同时,拐点C也可以辅助决策者给出最为经济的生态保护方案。此外,研究人员发现,由于许多生物群落可能出现在多个备选区域,有可能在不减少所能保护生物群落数的前提下,进一步优化总面积,即点A到点B。

视角二(图3):考虑不同可靠性的自然保护区总面积与保护生物群落数的权衡。考虑拐点C、E,虽然两者对应的总面积一致,但由于拐点E所在曲线的可靠性阈值由100%下降为95%,这种**“宽容度**”,也即较好的**风险厌恶(Risk aversion)**程度使得理论上所能保护的生物群落数更多。
在这里插入图片描述图3 考虑不同可靠性的自然保护区总面积与保护生物群落数的权衡

视角三(图4):不同可靠性阈值与保护生物群落数的权衡。是随着可靠性阈值的不断降低,即决策者态度的不断“宽容”,理论上所能保护的生物群落数更多。另一个现象是曲线上升过程中表现的边际收益(Marginal gains),即前期随着可靠性阈值从100%降低为95%,所能保护的生物群落数增长许多。这可能是由于许多生物群落的对应数值仅在阈值95%下少许造成的。决策者应当注意这一现象并充分把握边际收益,决策出最高效的保护方案。
在这里插入图片描述
图4 不同可靠性阈值与保护生物群落数的权衡

视角四(图5):自然保护区总面积与保护生物群落数的权衡,但考虑需要被重点保护的生物群落。根据图5所示,“80% w/o”表示可靠性阈值为80%但没有重点保护的考虑,“80% w/”表示其中有5个生物群落的保护可靠性阈值为95%。可以看出,两条曲线在前期的走势相近,而随着总面积的减小,在后期出现了分叉,考虑重点保护的一条曲线整体略低于未考虑重点保护的。
在这里插入图片描述
图5 自然保护区总面积与保护生物群落数的权衡,但考虑需要被重点保护的生物群落

5. 总结与讨论

本文针对自然保护区选址这一颇具实际意义的问题,考虑决策中的不确定性与概率数据,设计了非线性0-1整数规划模型COMPRES并进行了模型线性化。通过优化求解这一数学模型,本文为决策者提供了定量研究工具与权衡分析手段。

本文讨论了一些潜在的研究方向。首先,本文求解的案例尚属中小规模,面对潜在的大规模问题场景,我们应定制更高效的求解算法(例如分支定价定切算法、启发式算法等)。其次,概率数据的精准度量与估计是一个值得研究的问题。高质量的输入也有助于输出精准决策结果。输入的概率数据往往需要通过专家评估、打分来确定。专家通过全面考量航空摄影图片、土壤类型、水分状况、实地考察数据等多源信息,给出概率数据的数值。本文作者与美国森林署(U.S. Forest Service)的专家进行沟通讨论。最后,本文提出的COMPRES模型不仅可以应用于自然保护区选址问题,还可以扩展应用于类似的不确定性选址问题,例如警察局的选址(区域犯罪事件频次不确定)或对空监测雷达站的部署(雷达信号对空中目标探测的概率性)等。

保护好生态环境,我们需要拿出更多智慧。让我们用所学的运筹优化知识,更好地回答“神奇动物在哪里”的环境保护之问吧!

参考文献:
[1] Robert G. Haight, Charles S. Revelle, Stephanie A. Snyder, (2000) An Integer Optimization Approach to a Probabilistic Reserve Site Selection Problem. Operations Research 48(5):697-708. https://doi.org/10.1287/opre.48.5.697.12411

[2] Dobson, A. P., Rodriguez, J. P., Roberts, W. M., & Wilcove, D. S. (1997). Geographic distribution of endangered species in the United States. Science, 275(5299), 550-553.

[3] Toregas, C., Swain, R., ReVelle, C., & Bergman, L. (1971). The location of emergency service facilities. Operations Research, 19(6), 1363-1373.

[4] Church, R., & ReVelle, C. (1974, December). The maximal covering location problem. In Papers of the regional science association (Vol. 32, No. 1, pp. 101-118). Berlin/Heidelberg: Springer-Verlag.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/196988.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

解决java在idea运行正常,但是打成jar包后中文乱码问题

目录 比如: 打包命令使用utf-8编码: 1.当在idea中编写的程序,运行一切正常.但是当被打成jar包时,执行的程序会中文乱码.产生问题的原因和解决方案是什么呢? 一.问题分析 分别使用idea和jar包形式打印出System中所有的jvm参数---代码如下: public static…

H5ke11--1登录界面一直保存--用本地localStorage存储

目录 代码详解 localStage优点 :一直保存着 注意事项: storage属性们 代码详解 ke8学校陈老师H5-CSDN博客文章浏览阅读76次。实现H5中新增的三个元素:forEach的使用方法。https://blog.csdn.net/m0_72735063/article/details/134019012即此之后 当然可以分为按…

快速入门:构建您的第一个 .NET Aspire 应用程序

##前言 云原生应用程序通常需要连接到各种服务,例如数据库、存储和缓存解决方案、消息传递提供商或其他 Web 服务。.NET Aspire 旨在简化这些类型服务之间的连接和配置。在本快速入门中,您将了解如何创建 .NET Aspire Starter 应用程序模板解决方案。 …

Postman接收列表、数组参数@RequestParam List<String> ids

示例如下: 接口定义如下: GetMapping(value "/queryNewMoviePath")public List<Map<String, Object>> queryNewMoviePath(RequestParam List<String> ids ) {return service.queryNewMoviePath(ids);}postman中测试如下&#xff1a; http://loc…

MFA多因子认证

什么是多因子认证&#xff08;MFA&#xff09;&#xff1f;为什么需要MFA&#xff1f; 同义词 多因子认证或者多因素验证 [尤其是需要做等级保护测评的时候需要用到] 摘要 多因子认证MFA&#xff08;Multi Factor Authentication&#xff09;是一种安全认证过程&#xff0c;需…

k8s-部署Redis-cluster(TLS)

helm pull bitnami/redis-cluster v8.3.8拉取源码生成证书 git clone https://github.com/redis/redis.git #文档 https://redis.io/docs/management/security/encryption/#getting-started生成你的TLS证书用官网的工具生成 1 Run ./utils/gen-test-certs.sh 生成根CA和服务…

springboot321基于java的校园服务平台设计与开发

交流学习&#xff1a; 更多项目&#xff1a; 全网最全的Java成品项目列表 https://docs.qq.com/doc/DUXdsVlhIdVlsemdX 演示 项目功能演示&#xff1a; ————————————————

【双指针】复写0

复写0 1089. 复写零 - 力扣&#xff08;LeetCode&#xff09; 给你一个长度固定的整数数组 arr &#xff0c;请你将该数组中出现的每个零都复写一遍&#xff0c;并将其余的元素向右平移。 注意&#xff1a;请不要在超过该数组长度的位置写入元素。请对输入的数组 就地 进行上…

python趣味编程-5分钟实现一个益智数独游戏(含源码、步骤讲解)

Puzzle Game In Python是用 Python 编程语言Puzzle Game Code In Python编写的,有一个 4*4 的棋盘,有 15 个数字。然后将数字随机洗牌。 在本教程中,我将教您如何使用Python 创建记忆谜题游戏。 Python Puzzle Game游戏需要遵循以下步骤,首先是将图块数量移动到空的图块空…

软件开发、网络空间安全、人工智能三个方向的就业和前景怎么样?哪个方向更值得学习?

软件开发、网络空间安全、人工智能这三个方向都是当前及未来的热门领域&#xff0c;每个领域都有各自的就业前景和价值&#xff0c;以下是对这三个方向的分析&#xff1a; 1、软件开发&#xff1a; 就业前景&#xff1a;随着信息化的加速&#xff0c;软件开发的需求日益增长。…

重生之我是一名程序员 34

哈喽啊大家晚上好&#xff01; 今天给大家带来的知识是——库函数qsort。首先&#xff0c;给大家介绍一下qsort函数&#xff0c; qsort函数是C标准库中的一种排序函数&#xff0c;用于对数组中的元素进行快速排序。它接受四个参数&#xff1a;待排序数组的基地址&#xff0c;数…

某60区块链安全之重入漏洞实战记录

区块链安全 文章目录 区块链安全重入漏洞实战实验目的实验环境实验工具实验原理实验内容 重入漏洞实战 实验目的 学会使用python3的web3模块 学会以太坊重入漏洞分析及利用 实验环境 Ubuntu18.04操作机 实验工具 python3 实验原理 以太坊智能合约的特点之一是能够调用和…

若依前后端分离版,快速上手

哈喽~大家好&#xff0c;这篇来看看若依前后端分离版&#xff0c;快速上手&#xff08;肝了挺久的&#xff09;。 &#x1f947;个人主页&#xff1a;个人主页​​​​​ &#x1f948; 系列专栏&#xff1a;【Springboot和Vue全栈开发】…

Spring Boot - filter 的顺序

定义过滤器的执行顺序 1、第一个过滤器 import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; impor…

⑩③【MySQL】详解SQL优化

个人简介&#xff1a;Java领域新星创作者&#xff1b;阿里云技术博主、星级博主、专家博主&#xff1b;正在Java学习的路上摸爬滚打&#xff0c;记录学习的过程~ 个人主页&#xff1a;.29.的博客 学习社区&#xff1a;进去逛一逛~ SQL优化 ⑩③【MySQL】了解并掌握SQL优化1. 插…

【C++】类与对象(上)

目录 1. 面向过程和面向对象初步认识 2. 类的引入 3. 类的定义 4. 类的访问限定符及封装 4.1 访问限定符 4.2 封装 5. 类的作用域 6. 类的实例化 7. 类对象模型 7.1 如何计算类对象的大小 7.2 类对象的存储方式猜测 7.3 结构体内存对齐规则 8. this指针 8.1 this指…

大数据毕业设计选题推荐-机房信息大数据平台-Hadoop-Spark-Hive

✨作者主页&#xff1a;IT研究室✨ 个人简介&#xff1a;曾从事计算机专业培训教学&#xff0c;擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Python…

OpenGL 坐标投影与反投影(Qt)

文章目录 一、简介1.1投影1.2反投影二、应用代码三、实现效果参考资料一、简介 在学习OpenGL一段时间之后,我们都会了解坐标的转换过程,如下图所示: 1.1投影 正如图中所述,OpenGL将一个3D坐标投影到一个2D空间主要有以下几个步骤,这也是我们比较熟知的几个步骤: 现实局部…

Java拼图游戏

运行出的游戏界面如下&#xff1a; 按住A不松开&#xff0c;显示完整图片&#xff1b;松开A显示随机打乱的图片。 User类 package domain;/*** ClassName: User* Author: Kox* Data: 2023/2/2* Sketch:*/ public class User {private String username;private String password…

UE 调整材质UV贴图长宽比例

首先&#xff0c;为什么要先减去0.5呢&#xff0c;因为缩放的贴图中心在0,0原点&#xff0c;以这个点缩放效果是这样&#xff1a; 它缩放的图案不会在正中间&#xff0c;因为是以0,0点进行缩放的 以这个图的箭头去缩放图片的&#xff0c;所以不能使得缩放后的图片放在正中心 那…