数学建模-动态规划(美赛运用)

动态规划模型的要素是对问题解决的抽象,其可分为:

阶段。指对问题进行解决的自然划分。例如:在最短线路问题中,每进行走一步的决策就是一个阶段。
状态。指一个阶段开始时的自然状况。例如:在最短线路问题中,每进行走一步后,对所走的点进行标注。
决策。当一个阶段的状态确定后,作出选择从而演变到下一阶段的某个状态的选择手段称为决策,在优控制问题中也称为控制。
策略。由决策组成的序列称为策略。由第k到第j阶段的策略可记作

下面以我在建模美赛中的题目实列来阐述:

背景
美国和加拿大的五大湖是世界上最大的淡水湖群。这五个湖泊和相连的水道构成了一个巨大的
流域,其中包含了这两个国家的许多大城市,气候和当地的天气条件各不相同。
湖区的水有多种用途 ( 捕鱼、娱乐、发电、饮用、航运、动物和鱼类栖息地、建筑、灌溉等 ) 。因
此,各种各样的利益相关者都对流入和流出湖泊的水的管理感兴趣。特别是,如果从湖泊排出
或蒸发的水太少,那么可能会发生洪水,沿岸的家庭和企业受到影响 ; 如果排水过多,那么大型
船只就无法通过水路运送补给,支持当地经济。主要问题是调节水位,使所有利益相关者都能
受益。
每个湖泊的水位是由进出湖泊的水量决定的。这些水位是温度、风、潮汐、降水、蒸发、测深
( 湖底形状 ) 、河流流量和径流、水库政策、季节周期和长期气候变化等复杂相互作用的结果。在
五大湖系统的水流中有两种主要的控制机制 : 苏河水闸补偿工程。玛丽 ( 三个水力发电厂,五个航
行船闸和一个在激流顶端的闸门大坝 ) 和康沃尔的摩西 - 桑德斯大坝,如附录所示。
虽然这两座控制水坝、许多渠道和运河以及流域水库可能是由人类控制的,但降雨、蒸发、侵
蚀、冰塞和其他水流现象的速率是人类无法控制的。地方政府的政策可能会产生与预期不同的
影响,流域的季节和环境变化也可能会产生不同的影响。这些变化反过来又会影响该地区的生
态系统,从而影响湖泊内外动植物的健康以及生活在水盆中的居民。尽管五大湖似乎有一个规
律的年度模式,但水位从正常水平的 2 3 英尺的变化会极大地影响一些利益相关者。
这种动态的网络流量问题是“邪恶的”——由于相互依赖、复杂的要求和固有的不确定性,解
决起来异常具有挑战性。对于湖泊的问题,我们有不断变化的动态和利益相关者的利益冲突。
有关附加信息,请参阅问题 D 附录
国际联合委员会(IJC)请求贵公司国际网络控制建模(icm)提供支持,协助管理建模直接影响
五大湖水网水位的控制机制(附录中所示的两座水坝-补偿工程和摩西-桑德斯大坝)。你的 ICM
主管已经让你的团队领导开发模型和实施模型的管理计划。你的导师指出,有几个考虑因素可
能有助于实现这一目标,首先是为五大湖建立一个网络模型,并将从苏必利尔湖到大西洋的河
流连接起来。你的导师提到的其他一些可选的考虑因素或问题是:
•考虑到各个利益相关者的愿望(每个利益相关者的成本和收益可能不同),确定五大湖区在一
年中任何时候的最佳水位。
•根据五大湖的流入和流出数据,建立算法以维持五大湖的最佳水位。
•了解您的控制算法对两个控制坝的流出的敏感性。考虑到 2017 年的数据,对于各利益相
关者来说,你的新控制方法是否会使当年的实际记录水位令人满意或更好?
•你们的算法对环境条件(例如,降水、冬季积雪、冰塞)的变化有多敏感?
•将您的广泛分析集中在影响安大略湖的利益相关者和因素上,因为最近对该湖的水位管
理有更多的关注。
在第二问中需要找到算法来维持最佳水位,这本身就是动态规划问题。

前面第一问得到了五大湖的最佳水位,第二问的核心是波动情况下,近可能地使得五大湖的最佳水位波动尽可能小。

采用之前构建的网络流模型来模拟五大湖及其连接河流的水位和流量:节点定义:将每个湖泊和与其直接相连的河流定义为网络中的一个节点。边定义:根据水流方向,定义从一个节点到另一个节点的边。

流量和水位数据准备:使用提供的平均水位和流量数据来设定节点属性和边的容量运用网络流算法来模拟水流动态,并应用目标优化方法寻找维持最佳水位的策略。不过我们只考虑河流影响因素,其它外部因素不考虑在内。

一、算法实现:

制定算法:遗传算法(GA):使用遗传算法等启发式算法求解优化问题,找到维持最优水位的控制策略。通过湖泊的流入和流出数据来维持五大湖的最佳水位。

解释:

遗传算法(Genetic Algorithm,简称GA)起源于对生物系统所进行的计算机模拟研究,是一种随机全局搜索优化方法,它模拟了自然选择和遗传中发生的复制交叉(crossover)和变异(mutation)等现象,从任一初始种群(Population)出发,通过随机选择、交叉和变异操作,产生一群更适合环境的个体,使群体进化到搜索空间中越来越好的区域,这样一代一代不断繁衍进化,最后收敛到一群最适应环境的个体(Individual),从而求得问题的优质解。

步骤如下:

在动态流模型中如果当前水位低于目标水位,减少流出量;反之增加流出量。不同的是遗传算法在本基础上加上往年同月或同季节中的河流量变化值作为参考,在该动态网络流模型中的再次进行相应的河流流量调整从而得到最后相对更加准确的结果。

采用简单遗传算法:

SGA=(C,E,P_0, M,D, H,S,T)

C 表示个体的编码方案

E 表示个体适应度评价函数

P_0 表示初始种群

M 表示种群

D表示选择算子

H表示交叉算子

S表示变异算子

T 表示遗传算法终止条件

遗传算法使用以下遗传算子:

从旧群体中以一定概率选择优良个体组成新的种群,以繁殖得到下一代个体。个体被选中的概率跟适应度值有关,个体适应度值越高,被选中的概率越大,根据该思想,建立河流流量概率相关值:

fi为本遗传值,叠加之后为累次遗传。

在此之后,再进行指数尺度变换:

得到每个湖的在不同遗传系中的适配分部数据的热力图:

再通过动态网络流模型得到湖泊之间连接的河流流量的调整值:

圣玛丽河:2178.23

圣克莱尔河:5739.34

底特律河:5991.12

尼亚加拉河:6023.77

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

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

相关文章

docker 运行异构镜像

概述 关于docker镜像在不同的cpu架构下运行报错的解决办法,作者踩坑验证,在此分享经验 某次工作遇到需要银行内部部署docker镜像,由于行内已经开始走信创的路线,使用鲲鹏系统,arm架构,记过就遇到了standa…

ComfyUI-Flowty-TripoSR

这是一个自定义节点,可让您直接从ComfyUI使用TripoSR。TripoSR 是由 Tripo AI 和 Stability AI 合作开发的最先进的开源模型,用于从单个图像快速前馈 3D 重建。(TL;DR 它从图像创建 3d 模型。这篇文章主要介绍了将TripoSR作为ComfyUI节点的配…

华容道问题求解_详细设计(四)之查找算法2_BFS

(续上篇) 利用BFS查找,会找到最短路径(没有权重的图),这个道理比较简单,这是由于寻找路径的方法都是从起点或者接近起点的位置开始的。查找过程如果画出图来,类似于一圈圈的放大&…

Leetcode每日一题】 二维前缀和 - 矩阵区域和(难度⭐⭐)(31)

1. 题目解析 题目链接:1314. 矩阵区域和 题目乍一看很晦涩难懂,又是大于等于又是k的 仔细分析,题目所说的意思就是以[i,j]为中心,求上下左右向外拓展k个单位的矩阵和,放在名为answer的矩阵中,最后返回ans…

Session登陆实践

Session登陆实践 Session登录是一种常见的Web应用程序身份验证和状态管理机制。当用户成功登录到应用程序时,服务器会为其创建一个会话(session),并在会话中存储有关用户的信息。这样,用户在与应用程序交互的整个会话…

设计模式 代理模式

代理模式主要使用了 Java 的多态,主要是接口 干活的是被代理类,代理类主要是接活, 你让我干活,好,我交给幕后的类去干,你满意就成,那怎么知道被代理类能不能干呢? 同根就成&#xff…

档案室管理人员有哪些岗位

档案室管理人员的岗位可以分为以下几类: 1. 档案文书管理岗位:负责档案文书的管理、整理、归档和借阅工作,包括档案资料的分类、编目、装订、存储等。 2. 档案数字化管理岗位:负责将纸质档案数字化,进行扫描、转换、存…

mac下终端命令提示补全

欢迎来到我的博客,代码的世界里,每一行都是一个故事 mac下终端命令提示补全 前言Zsh-autosuggestions原理解析:智能提示的工作方式1. 命令历史分析:2. 智能提示生成:3. 用户交互和选择:4. 配置和个性化&…

Linux基础IO【 详 解 】

文章目录 C语言文件IOC语言文件接口汇总默认打开的三个流 系统文件IOopenclosewriteread 文件描述符fd文件描述符的分配规则重定向重定向的本质dup2 FILEFILE当中的文件描述符FILE当中的缓冲区 理解文件系统初识inode磁盘分区与格式化介绍 软硬链接软链接硬链接软硬链接的区别 …

CorelDRAW Graphics Suite2024专业图形设计软件Windows/Mac最新25.0.0.230版

CorelDRAW Graphics Suite 2024是一款专业的图形设计软件,它集成了CorelDRAW Standard 2024和其他高级图形处理工具,为用户提供了全面的图形设计和编辑解决方案。 该软件拥有强大的矢量编辑功能,用户可以轻松创建和编辑矢量图形,…

UI 易用性测试 以及自动化实现!

GUI 是指图形用户界面,UI 是指用户界面,对于纯软件系统,这两者没有本质的区别,GUI易用性测试与 UI 易用性测试内容一致。但是如果测试的对象是一个产品,这两者则存在区别,对于产品 UI 则不仅仅包括 GUI&…

多线程-线程池原子性并发工具类

1.线程池 1.线程状态 虚拟机中线程的六种状态 新建状态(NEW) --创建线程 就绪状态(RUNNABLE) --start方法 阻塞状态(BLOCKED) --无法获得锁对象 等待状态(WAITING) …

springboot254小区团购管理

小区团购管理设计与实现 摘 要 传统办法管理信息首先需要花费的时间比较多,其次数据出错率比较高,而且对错误的数据进行更改也比较困难,最后,检索数据费事费力。因此,在计算机上安装小区团购管理软件来发挥其高效地信…

菜鸟笔记-14Python绘图颜色使用

Python中绘图主要依赖于各种库,其中matplotlib是最常用且功能强大的一个。在matplotlib中,你可以使用各种颜色来表示不同的数据点、线条或填充区域。下面我将详细介绍如何在Python中使用matplotlib来设置绘图颜色,并给出具体的例子。 14.1颜…

Spring循环依赖问题分析

对象分类:1.成品对象:实例化完成 初始化完成 2.半成品对象: 实例化完成 初始化未完成 实例化和初始化可以分开执行是解决循环依赖问题的关键 一级缓存:保存完成的bean对象 二级缓存:存储成品对象 三级缓存&#xff1a…

《北上广深杭》都有哪些最值得加入的互联网大厂

IT行业做技术很公平,没那么看重出身,只要你技术好,能力强,就能进大厂,拿高薪。IT行业算是目前为数不多的比较容易屌丝逆袭的行业之一,IT行业也从来不缺少造富神话。一起加油吧,打工人&#xff0…

Python 创建PPT

本篇为如何使用Python来创建ppt文件。 创建PPT 安装必要的库 命令如下: pip install python-pptx 安装过程: 创建ppt文件 在当前目录下创建一个test的ppt文件。其中包含两页,分别使用了不同的布局。 第一页设置了标题和内容。第二页只设…

【Linux】cpp-httplib库

目录 升级gcc版本 下载cpp-httplib的zip安装包,上传到服务器 ​编辑 简单使用 首先打开gittee,搜索cpp-httplib,选择其中一个即可 也可以点下方链接 cpp-httplib库:cpp-httplib: cpp-httplib (gitee.com) 注意:cpp-httplib在使用的时候需…

AJAX-HTTP协议

文章目录 HTTP协议请求报文响应报文接口文档 HTTP协议 规定了浏览器发送及服务器返回内容的格式 请求报文 浏览器按照HTTP协议要求的格式,发送给服务器的内容 组成部分: 1.请求行:请求方法,URL,协议 2.请求头&#…

算法的时间复杂度和空间复杂度(数据结构)

本博客讲解算法的时间复杂度和空间复杂度的来源及定义,时间复杂度的表示及练习。空间复杂度的计算会在后续博客讲解 算法的复杂度 算法在编写成可执行程序后,运行时需要耗费时间资源和空间(内存)资源 。因此衡量一个算法的好坏,一般是从时…