【数学建模】【2024年】【第40届】【MCM/ICM】【B题 搜寻潜水器】【解题思路】

一、题目

(一)赛题原文

2024 MCM Problem A: Resource Availability and Sex Ratios
在这里插入图片描述
Maritime Cruises Mini-Submarines (MCMS), a company based in Greece, builds submersibles capable of carrying humans to the deepest parts of the ocean. A submersible is moved to the location and deployed untethered from a host ship. MCMS now wishes to use their submersible to take tourists on adventures exploring the bottom of the Ionian Sea for sunken shipwrecks. Before they can do this, however, they need to win approval from regulators by developing safety procedures in case of a loss of communication to the host ship and possible mechanical defects including a loss of propulsion of the submersible. In particular, they would like you to develop a model to predict the location of the submersible over time. Unlike in a typical search and rescue on land or on the surface of a sea, the defective submersible could potentially find itself positioned on the sea floor or at some point of neutral buoyancy underwater. Its position could further be affected by currents, differing densities in the sea, and/or the geography of the sea floor. Your tasks are to:

• Locate - Develop a model(s) that predicts the location of the submersible over time. o What are the uncertainties associated with these predictions? o What information can the submersible periodically send to the host ship to decrease these uncertainties prior to an incident? What kinds of equipment would the submersible need to do so?

• Prepare - What, if any, additional search equipment would you recommend the company carry on the host ship to deploy if necessary? You may consider different types of equipment but must also consider costs associated with availability, maintenance, readiness, and usage of this equipment. What additional equipment might a rescue vessel need to bring in to assist if necessary? • Search - Develop a model that will use information from your location model(s) to recommend initial points of deployment and search patterns for the equipment so as to minimize the time to location of a lost submersible. Determine the probability of finding the submersible as a function of time and accumulated search results.

• Extrapolate - How might your model be expanded to account for other tourist destinations such as the Caribbean Sea? How will your model change to account for multiple submersibles moving in the same general vicinity?

(二)赛题翻译

问题B 搜寻潜水器

希腊的一家公司 Maritime Cruises Mini-Submarines(MCMS)制造的潜水器能够载人到海洋的最深处。潜水器被移动到指定地点,并在不与主船相连的情况下部署。MCMS 现在希望利用他们的潜水器带领游客在爱奥尼亚海海底探险,寻找沉船残骸。不过,在此之前,他们需要制定安全程序,获得监管机构的批准,以防与主船失去联系和可能出现的机械故障,包括潜水器失去推进力。

特别是,他们希望你们开发一个模型,以预测潜水器在一段时间内的位置。与在陆地或海面上的典型搜救不同,有缺陷的潜水器有可能被放置在海底或水下中性浮力点。它的位置还可能受到海流、海中不同密度,和/或 海底地理环境的影响。

你们的任务是

定位 - 建立一个(多个)模型,预测潜水器在一段时间内的位置。这些预测的不确定性有多大?潜水器可定期向主船发送哪些信息,以在事故发生前减少这些不确定性?为此,潜水器需要哪些设备?
准备 - 如果有的话,您建议公司在主机船上携带哪些额外的搜索设备,以便在必要时部署?您可以考虑不同类型的设备,但也必须考虑与这些设备的可用性、维护、准备和使用相关的成本。如果有必要,救援船只可能需要携带哪些额外设备提供协助?
搜索 - 建立一个模型,利用定位模型中的信息来建议设备的初始部署点和搜索模式,从而最大限度地缩短找到失联潜水器的时间。根据时间和累积搜索结果,确定找到潜水器的概率。
推断 - 如何将你的模型扩展到其他旅游目的地,如加勒比海?如果多个潜水器在同一附近移动,你的模型将如何改变?

二、赛题分析

这个数学建模赛题涉及希腊公司 Maritime Cruises Mini-Submarines (MCMS) 的迷你潜水艇在探索爱奥尼亚海底沉船时的安全性建模。需要建立一个预测潜水艇位置随时间变化的模型,考虑到海底地形、水流、密度等因素。需要分析预测中存在的不确定性,并探讨潜水艇在通信中断情况下如何减少不确定性的方法,以及所需的设备。需要提出额外的搜索设备建议,包括设备类型、成本以及如何准备和使用。需要开发一个根据位置模型推荐搜索设备部署和搜索模式的模型,以最小化寻找丢失潜水艇所需的时间,并确定随时间和累积搜索结果变化的潜水艇发现概率。
对于第一个问题 ,我们需要建立一个包含水流、密度、地形等影响因素的潜水艇位置预测模型,可能需要使用数值模拟算法和流体动力学模型来模拟海洋环境。不确定性通常来自于海洋环境的变化和模型的精度。潜水艇可以定期向主机船发送信息,如水深、温度、压力等,以减少预测不确定性,所需设备可能包括传感器和通信设备。
对于第二个问题 ,我们需要考虑额外搜索设备的成本、可用性和维护成本。建议可以包括潜水员、声纳设备、无人机等。救援船可能需要携带救援设备如潜水员、潜水艇、救生艇等。
对于第三个问题 ,我们可以结合位置模型和搜索设备性能,建立一个最优搜索路径的模型,可能需要使用优化算法如遗传算法或模拟退火算法。概率模型可以用来估计随时间变化的潜水艇发现概率。
对于第四个问题 ,我们可以调整模型以适应其他目的地如加勒比海,并考虑多个潜水艇同时活动时的影响。可能需要增加模型复杂度以考虑多潜水艇的交互作用和资源竞争。

三、解题思路

(一)整体思路

为了预测失联潜艇位置及应对潜在机械故障,首先,通过运用长短时记忆网络(LSTM)结合海洋动力学数据进行位置预测,考虑海流速度、水温和水深等因素。为了应对不确定性,我们引入蒙特卡罗方法,多次模拟考虑不同海洋动力学因素,从而估计位置预测的不确定性。信息传递方面,子母船与潜艇建立定期通信,潜艇携带水下通信设备,每隔一定时间发送当前位置、机械状态等信息。

在搜索任务中,我们采用目标规划模型进行选择,考虑设备的可用性、成本和效果。我们建议携带声纳进行水下地形扫描、水下摄像头进行可视检查以及机器人潜水器用于细致搜索。救援船方面,应装备多波束声纳提高搜索效率,并携带水下机器人进行深度水域搜索和潜艇定位。

在搜索模型方面,我们使用概率图模型结合位置模型输出、搜索设备效果和时间因素,确定最佳初始搜索点和搜索模式。通过利用马尔科夫决策过程(MDP)建模,我们能够估计找到潜艇的概率随时间和累积搜索结果的变化。

考虑到未来可能的扩展,我们强调在不同海域的适应性。对于其他旅游目的地,我们建议重新训练位置预测模型,调整参数以适应新的地理特征和动力学差异。在多潜艇情况下,引入多智能体强化学习模型,以有效协调多潜艇位置交互,避免冲突并提高整体搜索效率。以上方法将为潜艇搜索和救援任务提供科学可行、高效可靠的解决方案。

第一问:预测潜水艇的位置

  1. 选择适当的模型:使用深度学习中的长短时记忆网络(LSTM)或者循环神经网络(RNN),这两种模型适合处理序列数据,对于海洋动力学数据的时序性具有较好的表达能力。
  2. 数据预处理:收集大量的海洋动力学数据,包括海流速度、水温、水深等。进行数据清洗,填充缺失值,去除异常数据,确保输入数据的质量。
  3. 特征工程:为模型提供更有意义的输入特征。可以考虑加入海洋地形数据、海底地形数据等信息,以提高位置预测的准确性。
  4. 模型训练:将数据集分为训练集和测试集,用训练集对LSTM模型进行训练。模型需要学习海洋动力学数据与实际位置之间的复杂关系。训练过程中可以使用适当的优化算法,如Adam优化器,并监控模型在测试集上的性能。
  5. 模型评估与调优:使用测试集评估模型的性能,关注位置预测的准确性和不确定性估计。根据评估结果,进行模型的调优,可能需要调整模型的结构、学习率等超参数。
  6. 不确定性估计:引入蒙特卡罗方法,通过对输入数据的不同采样来生成多个可能的位置预测,从而估计位置预测的不确定性。这有助于在实际应用中提供更可靠的位置信息。
  7. 通信设备:设计潜艇与子母船之间的通信协议,确保潜艇能够周期性地向子母船发送位置、状态等信息。潜艇需要携带水下通信设备,以确保可靠的信息传递。
  8. 实时性考虑:考虑模型输出的实时性,选择合适的时间间隔进行位置预测。根据实际需求,可能需要在模型中引入时间衰减的权重,更强调近期的数据。

该问题主要是为了预测潜水艇的位置,首先需要明确相关的依靠数据,对于其采用LSTM模型,根据收集到的相关数据预测向后步长的相关数据考虑输入的现实性进行调整,同时引入不确定性分析,再在预测数据的基础上利用动力学模型分析潜水艇位置。

第二问:增加搜索设备决策

  1. 目标明确:定义明确的搜寻和救援目标,例如最小化搜寻时间、最大化潜艇找到的概率、最小化整体成本。目标的明确定义为后续建模提供了清晰的方向。
  2. 决策变量定义:定义决策变量,如搜索设备的数量和类型、搜索路径的选择、资源的分配比例等。这些变量将成为模型中需要优化的要素。
  3. 约束条件建模:建立与任务相关的约束条件,例如设备的可用性、维护时间、船只的航行速度限制等。这确保模型的解是现实可行的。
  4. 目标函数定义:设计目标函数,将任务目标转化为数学表达式。例如,可以将目标函数定义为最小化搜索时间、最大化找到潜艇的概率,或者在成本有限的情况下最大化效能。
  5. 模型求解:选择合适的数学规划方法,例如线性规划、整数规划、混合整数规划等,以求解目标规划模型。这通常涉及使用专业的数学规划软件。
  6. 灵活性与实时性:在模型中考虑灵活性,允许在实时情况下进行调整。这可以通过引入动态约束、实时数据输入以及模型的重新求解来实现。
  7. 模型验证和调优:验证模型的可行性和有效性,使用历史数据或模拟情景进行测试。根据模型的输出进行调优,可能需要调整权重、约束条件或决策变量的范围。
  8. 结果解释与应用:解释模型的结果,明确得出的最优决策方案。这可能包括搜索设备的最佳配置、路径的选择和资源的分配。确保结果能够被实际应用于搜寻和救援任务的决策制定。

为了确定设备的可参与性,通过建立目标规划模型,限定规划的约束,确定规划的目标进行分析,在收集相关的数据后将其化作量化指标进行分析。

第三问:搜索模型

  1. 概率图模型选择:选择适当的概率图模型,例如贝叶斯网络或马尔科夫网络,以综合考虑位置预测模型输出、搜索设备效果和时间因素。
  2. 模型输入与输出定义:定义模型的输入变量,包括位置预测模型的输出、搜索设备效果的评估以及时间信息。定义模型的输出变量,通常为搜索起始点和路径。
  3. 概率图连接:建立概率图,将不同变量之间的依赖关系表示出来。确保模型能够捕捉到位置预测、搜索设备效果和时间的相互影响。
  4. 时间与搜索效果建模:在模型中引入时间因素,以考虑搜索随时间的演变。建立模型以估计不同时间点潜艇位置的概率,以及随时间推移搜索设备效果的变化。
  5. 初始搜索点和路径规划:利用模型输出,确定初始搜索点和搜索路径。考虑位置概率、设备效果和实时时间信息,以确定最有可能的搜寻区域。
  6. 搜索效果更新:基于实际搜索过程中获得的数据,及时更新模型中的搜索设备效果参数。这有助于提高模型的准确性和实用性。
  7. 搜寻概率建模:建立搜寻概率模型,考虑不同搜索区域和路径的搜寻效果,以及与时间相关的变化。这有助于优化搜寻过程,提高搜寻效率。
  8. 实时决策支持:利用实时数据输入模型,为实际搜寻行动提供实时的决策支持。模型输出可以指导搜寻队伍在不断变化的环境中作出最优决策。
  9. 累积搜寻效果与时间关系:模型应能够估计随着时间的推移,搜寻效果的累积变化。这有助于预测搜寻任务完成的可能时间,并调整搜寻策略。
  10. 模型验证与调优:利用历史数据或模拟情景进行模型验证,确保模型在实际应用中的有效性。根据验证结果进行模型调优,优化参数以适应不同环境和任务需求。

此处可以采用多种算法:

  1. 路径规划算法:Dijkstra算法:用于计算最短路径,可应用于确定搜寻路径的起始点。A*算法:结合了Dijkstra算法和启发式搜索,适用于带有启发信息的路径规划。
  2. 贝叶斯网络和概率图模型:贝叶斯网络:用于建模不同变量之间的依赖关系,能够综合考虑不同因素,如位置预测、设备效果和时间。马尔科夫决策过程(MDP):用于建模决策过程,考虑到在不同时间点的最佳决策。
  3. 遗传算法:通过模拟生物进化的过程,可用于优化搜索路径、设备配置和资源分配,尤其在搜索空间较大的情况下有优势。
  4. 深度强化学习:深度Q网络(DQN):在动作空间较大的情况下,可用于学习最佳搜索策略。深度强化学习模型:可以通过模拟搜索和救援任务,学习最优策略,尤其在复杂动态环境中具备灵活性。
  5. 遗传算法和粒子群算法:遗传算法:用于搜索问题的全局优化,可优化搜索路径。粒子群算法:通过模拟粒子在搜索空间中的移动,可用于设备配置和资源分配的优化。
  6. 蒙特卡罗方法:蒙特卡罗树搜索(MCTS):用于在不确定环境中做出决策,适用于模拟搜索任务。

第四问:扩展模型

  1. 数据收集与处理:收集目标地区的海洋动力学数据,包括海流速度、水温、水深等信息。与之前的模型相似,对数据进行清洗、填充缺失值,确保数据质量。
  2. 位置预测模型调整:根据新的海洋动力学数据调整或重新训练位置预测模型。可能需要对模型的结构和参数进行调整,以适应目标地区的不同地理和海洋条件。
  3. 概率图模型的重新构建:考虑目标地区的地理特征,重新构建概率图模型,以综合考虑新位置预测模型输出、搜索设备效果和时间。可能需要调整模型的连接结构和权重。
  4. 设备配置的优化:使用算法(如遗传算法或深度强化学习)优化设备配置,考虑目标地区的特殊要求和条件。新的地理特征和水域条件可能需要不同类型或数量的搜索设备。
  5. 搜索模型的验证:利用目标地区的历史数据或模拟情景对搜索模型进行验证。确保模型在新的环境下能够有效地工作,通过与实际搜索行动的结果进行比较。
  6. 多潜艇协同模型:如果目标地区涉及多个潜艇,考虑引入多智能体协同模型。这可以涉及潜艇之间的位置交互、任务分配和资源共享,以优化整体搜索效率。
  7. 扩展至多个目的地:如果要扩展模型以适应多个目的地,考虑构建一个通用模型,能够根据目的地的不同条件和数据集进行自适应。这可能需要一种元模型或多任务学习的方法。
  8. 考虑文化、法规等因素:考虑到不同目的地的文化和法规差异,适应模型以考虑这些因素对搜索和救援任务的影响。可能需要对通信、行动计划等方面进行调整。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

CVE-2012-1823 漏洞复现

CVE-2012-1823 PHP SAPI 与运行模式 首先,介绍一下PHP的运行模式。 下载PHP源码,可以看到其中有个目录叫sapi。sapi在PHP中的作用,类似于一个消息的“传递者”,比如在《Fastcgi协议分析 && PHP-FPM未授权访问漏洞 &…

在Ubuntu22.04上部署ComfyUI

ComfyUI 是 一个基于节点流程的 Stable Diffusion 操作界面,可以通过流程,实现了更加精准的工作流定制和完善的可复现性。每一个模块都有特定的的功能,我们可以通过调整模块连接达到不同的出图效果,特点如下: 1.对显存…

【深蓝学院】移动机器人运动规划--第4章 动力学约束下的运动规划--笔记

0. Outline 1. Introduction 什么是kinodynamic? 运动学(Kinematics)和动力学(Dynamics)都是力学的分支,涉及物体的运动,但它们研究的焦点不同。 运动学专注于描述物体的运动,而…

第67讲自定义icon实现

element-plus内置有一些常用的icon供我们使用&#xff0c;但是我们假如需要用自己的icon时候&#xff0c;我们可以搞一个icon自定义组件&#xff1b; 先把icons文件放到src下&#xff1b; 再新建一个SvgIcon组件&#xff1b; index.vue <template><svg class"…

Qt中程序发布及常见问题

1、引言 当我们写好一个程序时通常需要发布给用户使用&#xff0c;那么在Qt中程序又是如何实现发布的呢&#xff0c;这里我就来浅谈一下qt中如何发布程序&#xff0c;以及发布程序时的常见问题。 2、发布过程 2.1、切换为release模式 当我们写qt程序时默认是debug模式&#x…

部分意图分类【LLM+RAG】

在生成人工智能领域工作最有价值的事情之一就是发现新兴技术如何融入新的解决方案。 举个例子&#xff1a;在为北美顶级金融服务公司之一设计对话式人工智能助手时&#xff0c;WillowTree 的数据和人工智能研究团队 (DART) 发现&#xff0c;将意图分类与大型语言模型 (LLM) 结合…

学生宿舍管理系统设计与实现(源码+数据库+文档)

学生宿舍管理小程序目录 目录 基于微信小程序的学生宿舍管理系统设计与实现 一、前言 二、系统功能设计 三、系统实现 1、管理员模块的实现 &#xff08;1&#xff09;学生信息管理 &#xff08;2&#xff09;公告信息管理 &#xff08;3&#xff09;宿舍信息管理 &am…

LeetCode---383周赛

题目列表 3028. 边界上的蚂蚁 3029. 将单词恢复初始状态所需的最短时间 I 3030. 找出网格的区域平均强度 3031. 将单词恢复初始状态所需的最短时间 II 一、边界上的蚂蚁 这题没什么好说的&#xff0c;模拟就行&#xff0c;本质就是看前缀和有几个为0。 代码如下 class S…

springBoot,springSecurity返回乱码

框架&#xff1a;SpringBoot3 问题&#xff1a;响应内容乱码 问题代码&#xff1a; // 成功登录响应的内容Overridepublic void onAuthenticationSuccess(HttpServletRequest request, HttpServletResponse response, Authentication authentication…

MongoDB从入门到实战之.NET Core使用MongoDB开发ToDoList系统(1)-后端项目框架搭建

前言&#xff1a; 前面的四个章节我们主要讲解了MongoDB的相关基础知识&#xff0c;接下来我们就开始进入使用.NET7操作MongoDB开发一个ToDoList系统实战教程。本章节主要介绍的是如何快熟搭建一个简单明了的后端项目框架。 MongoDB从入门到实战的相关教程 MongoDB从入门到实战…

【从Python基础到深度学习】1. Python PyCharm安装及激活

前言&#xff1a; 为了帮助大家快速入门机器学习-深度学习&#xff0c;从今天起我将用100天的时间将大学本科期间的所学所想分享给大家&#xff0c;和大家共同进步。【从Python基础到深度学习】系列博客中我将从python基础开始通过知识和代码实践结合的方式进行知识的分享和记…

JVM 性能调优 - 常用的垃圾回收器(6)

垃圾收集器 在 JVM(Java虚拟机)中,垃圾收集器(Garbage Collector)是负责自动管理内存的组件。它的主要任务是在程序运行过程中,自动回收不再使用的对象所占用的内存空间,以便为新的对象提供足够的内存。 JVM中的垃圾收集器使用不同的算法和策略来实现垃圾收集过程,以…

ChatGpt报错:Your authentication token is no longer valid解决办法

今天打开ChatGpt突然提示Oops&#xff01;,Your authentication token is no longer valid.&#xff0c;之前还好好的&#xff0c;环境也没变啊&#xff0c;结果弄了好久终于解决&#xff0c;于是记录一下解决过程&#xff0c;顺便总结一下关于OpenAI各种报错的解决办法。 完整…

[C#]winform制作圆形进度条好用的圆环圆形进度条控件和使用方法

【创建圆形进度条流程】 在C# WinForms应用程序中创建一个圆形进度条&#xff08;通常用作仪表盘的显示&#xff09;可以通过多种方式实现。下面是一个简单的例子&#xff0c;演示如何使用System.Drawing命名空间中的图形绘制功能来绘制一个基本的圆形进度条。 首先&#xff0…

hook函数——useRef

useRef useRef 是一个 React Hook&#xff0c;它能帮助引用一个不需要渲染的值。也就是说useRef可以存储一个值&#xff0c;但是不被组件渲染&#xff0c;仅仅只是引用&#xff0c;主要包括两个方面&#xff0c;例如使用ref引用一个值&#xff0c;使用ref引用一个dom节点&…

C++ 贪心 区间问题 区间分组

给定 N 个闭区间 [ai,bi] &#xff0c;请你将这些区间分成若干组&#xff0c;使得每组内部的区间两两之间&#xff08;包括端点&#xff09;没有交集&#xff0c;并使得组数尽可能小。 输出最小组数。 输入格式 第一行包含整数 N &#xff0c;表示区间数。 接下来 N 行&…

第70讲axios后端请求工具类封装

axios工具类封装&#xff1a; // 引入axios import axios from axios;// 创建axios实例 const httpService axios.create({// url前缀-http:xxx.xxx// baseURL: process.env.BASE_API, // 需自定义baseURL:http://localhost:80/,// 请求超时时间timeout: 3000 // 需自定义 })…

gem5学习(19):gem5内存系统——The gem5 Memory System

目录 一、Model Hierarchy 二、CPU 三、Data Cache Object 四、Tags & Data Block 五、MSHR and Write Buffer Queues 六、Memory Access Ordering 七、Coherent Bus Object 八、Simple Memory Object 九、Message Flow 1、Memory Access Ordering&#xff08;re…

C++模版(初阶)

&#x1f308;函数复用的两种不恰当方式 ☀️1.函数重载 以Swap函数为例&#xff0c;有多少种参数类型组合&#xff0c;就要重载多少个函数&#xff1a; void Swap(int& left, int& right) {int temp left;left right;right temp; } void Swap(double& left,…

ChatGPT高效提问—prompt常见用法(续篇十一)

ChatGPT高效提问—prompt常见用法(续篇十一) 1.1 增加角色 ​ 在prompt里可以适当增加角色,来满足一些特殊场景的需求。先来看一个不带角色的简单示例。 输入prompt: ​ ChatGPT输出: ​ 如上所示,问题比较难,ChatGPT的答案也确实晦涩难懂。试想一下,如果将这个解释将…