2023年五一杯数学建模A题无人机定点投放问题求解全过程论文及程序

2023年五一杯数学建模

A题 无人机定点投放问题

原题再现:

  随着科学技术的不断发展,无人机在许多领域都有着广泛的应用。对于空中执行定点投放任务的无人机,其投放精度不仅依赖于无人机的操作技术,而且还与无人机执行任务时所处状态和环境有关,例如在接近投放点时无人机的高度、速度,无人机所处位置的风速、投放点周围地理环境等因素。在本题中仅考虑喷气式无人机,请查阅相关资料,研究以下问题:
  问题1: 假设无人机以平行于水平面的方式飞行,在空中投放物资(物资为球形,半径20cm,重量50kg)到达地面指定位置。
  (1)建立数学模型,给出无人机投放距离(投放物资时无人机与地面物资指定落地点之间的直线距离)与无人机飞行高度、飞行速度、空气阻力等之间的关系。
  (2)假设无人机的飞行高度为300m,飞行速度为300km/h,风速为5m/s,风向与水平面平行。建立数学模型,分别给出无人机飞行方向与风向相同(夹角为0度)、相反(夹角为180度)、垂直(夹角为90度)情况下无人机的投放距离。
  问题2:无人机不仅能定点投放物资,而且还可以通过安装在无人机前端的发射筒发射爆炸物疏通河道。其大致过程是:无人机首先水平飞行接近障碍物所处区域,然后俯冲找准时机发射爆炸物,发射结束后无人机随即拉升飞走。现有一处河流被冰块堆积阻断,需要用无人机发射爆炸物(爆炸物为球形,半径8cm,重量5kg)对目标进行爆破。假设无人机的初始点到目标的水平距离为10000m。受环境影响,无人机必须俯冲发射,并且发射方向与无人机的飞行方向一致。
  (1)建立数学模型,给出无人机发射距离(发射点与目标的直线距离)与无人机的飞行高度、飞行速度、俯冲角度及发射速度等因素之间的关系。
  (2)假设风速为6m/s,无人机接近目标时的飞行高度为800m、飞行速度为300km/h,爆炸物的发射速度为600km/h(相对于无人机的速度)。要求发射爆炸物时无人机与目标的距离在1000 m-3000 m之间,且无人机的高度不低于300m,请给出无人机击中目标的发射策略。
  问题3:无人机发射爆炸物命中目标的精度与无人机飞行的稳定性有很大关系。相同条件下,无人机发射爆炸物时越稳定,命中目标的精度越高。开始俯冲后,无人机操控员需要不断调整无人机的飞行姿态以修正风向、风速对无人机的影响。
  (1)在飞行速度、发射速度一定的情况下,综合考虑各种因素,建立数学模型,量化无人机飞行的稳定性,给出稳定性与命中精度之间的关系,并利用数值仿真等方法对无人机的稳定性进行分析验证。
  (2)假设风速为6m/s,无人机的飞行速度范围为300 km/h -400 km/h,爆炸物的发射速度为500km/h(相对于无人机的速度)。无人机在800m高度开始俯冲,初始俯冲角度为45°,发射爆炸物时的飞行高度不低于300m,请给出为尽量保持无人机稳定而采取的飞行姿态最优调整策略。

整体求解过程概述(摘要)

  本文研究了喷气式无人机在执行空中物资投放和爆破任务过程中的数学建模问题。我们分析了无人机投放距离与飞行高度、飞行速度、空气阻力等因素之间的关系,以及无人机发射爆炸物时飞行姿态、飞行速度、发射速度等因素对命中精度的影响。本文主要包括三个问题,分别为无人机在平行于水平面飞行时投放物资的数学模型,无人机在不同风向条件下的投放距离,以及无人机在执行爆炸物疏通河道任务时的发射策略和飞行姿态最优调整策略。
  在问题1中,我们建立了一个简化的数学模型,描述了无人机投放距离与飞行高度、飞行速度、空气阻力之间的关系。我们发现,投放物资的水平距离D可以通过飞行时间t和水平速度v计算得出,而飞行时间t可以通过竖直方向的加速度运动方程计算。我们将已知条件代入数学模型,分别计算了无人机在顺风、逆风和横风情况下的投放距离。
  在问题2中,我们考虑了无人机在执行爆破任务时的发射策略。我们建立了一个数学模型,描述了无人机发射距离与飞行高度、飞行速度、俯冲角度及发射速度等因素之间的关系。我们通过已知条件计算出了无人机在满足一定限制条件下的发射策略,包括最佳发射角度和发射速度。
  在问题3中,我们关注了无人机在发射爆炸物过程中飞行稳定性对命中精度的影响。我们建立了一个综合考虑各种因素的数学模型,量化了无人机飞行的稳定性与命中精度之间的关系,并利用数值仿真等方法对无人机的稳定性进行了分析验证。我们发现,在飞行速度、发射速度一定的情况下,通过调整无人机的飞行姿态可以显著提高命中精度。我们给出了在特定条件下为尽量保持无人机稳定而采取的飞行姿态最优调整策略。
  本文的研究成果为喷气式无人机在执行空中物资投放和爆炸物疏通河道任务时提供了一种有效的数学建模方法。通过对无人机的飞行状态和环境因素的综合分析,我们为无人机在不同任务场景下的操作策略提供了理论指导。这些成果对于提高无人机在执行各种任务时的效率和安全性具有重要意义。随着科学技术的不断发展,无人机将在更多领域发挥更大的作用。通过深入研究无人机的数学建模问题,我们可以为实际应用提供更为精确和高效的指导,推动无人机技术的进一步发展和应用。

模型假设:

  针对本文提出的问题,我们做了如下模型假设:
  1.假设空气阻力仅对水平方向运动产生影响。
  2.假设地球为平面模型,忽略重力对物体的影响。
  3.假设无人机发射爆炸物时的发射方向与无人机的飞行方向一致。
  4.假设无人机的飞行速度和爆炸物的发射速度不变。
  5.爆炸物和物资的质量分布均匀,并且没有其他外部干扰因素影响其飞行。
  6.无人机和发射筒之间的物理接触和磨损可以忽略不计。
  7.爆炸物爆炸的威力可以忽略不计,对周围环境和人员不会造成实质性的影响。

问题分析:

  问题一分析
  问题一主要关注无人机在执行空中物资投放任务时,投放距离与飞行高度、飞行速度、空气阻力等因素之间的关系。为了解决这个问题,我们需要考虑在平行于水平面飞行时,物资从无人机投放到达地面的运动轨迹。物资受到重力和空气阻力的影响,在竖直方向上会出现加速度,而在水平方向上会受到风速的影响。因此,我们需要建立一个包含这些因素的数学模型,描述物资在空中的运动过程。
  我们需要考虑物资的质量、形状和尺寸对空气阻力的影响。此外,无人机的飞行高度和速度也会影响投放距离。我们需要对这些因素进行定量分析,以便为无人机在不同风向条件下的投放任务提供指导。
  问题二分析
  问题二主要关注无人机在执行爆破任务时的发射策略,包括发射距离与飞行高度、飞行速度、俯冲角度及发射速度等因素之间的关系。为了解决这个问题,我们需要分析无人机在俯冲过程中,如何根据目标位置、飞行状态和环境条件来调整发射角度和速度,以保证爆炸物能够准确地命中目标。
  我们需要考虑无人机在俯冲过程中受到的空气阻力和重力的影响,以及发射爆炸物时受到的反作用力。此外,我们还需要分析无人机在不同飞行姿态下的动力学特性,以便为实际操作提供指导。最后,我们需要通过数值计算和仿真方法,验证我们的模型在满足一定限制条件下的可行性和有效性。
  问题三分析
  问题三主要关注无人机在执行爆破任务过程中,飞行稳定性对命中精度的影响。为了解决这个问题,我们需要建立一个综合考虑各种因素的数学模型,量化无人机飞行的稳定性与命中精度之间的关系。要考虑无人机的飞行姿态、飞行速度和发射速度等因素对飞行稳定性的影响。此外,我们还需要研究风速和风向对无人机飞行稳定性的影响,以便为实际操作提供指导。在建立数学模型时,我们可以通过引入一些度量飞行稳定性的指标,如姿态角变化速度、飞行速度波动等,来描述无人机在飞行过程中的稳定性。同时,我们还需要考虑无人机在不同飞行状态下的控制策略,如姿态调整、速度调节等,以提高命中精度。
  通过对无人机飞行稳定性和命中精度的关系进行分析,我们可以为实际应用提供有针对性的操作建议。我们还可以利用数值仿真等方法对无人机的飞行稳定性进行分析验证,以验证我们的模型和操作策略的有效性。

模型的建立与求解整体论文缩略图

在这里插入图片描述

全部论文请见下方“ 只会建模 QQ名片” 点击QQ名片即可

程序代码:

部分程序如下:

clear
clc% 遗传算法参数设置
pop_size = 100; % 种群大小
num_var = 10; % 决策变量个数
num_gen = 200; % 最大迭代次数
p_crossover = 0.8; % 交叉概率
p_mutation = 0.1; % 变异概率
ub = [500, 500, 500, 500, 500, 1000, 1000, 1000, 1000, 1000]; % 决策变量上界
lb = [0, 0, 0, 0, 0, 500, 500, 500, 500, 500]; % 决策变量下界% 目标函数
fitness_fun = @(x) -(x(6)*cos(x(7))*cos(x(8)) + x(6)*sin(x(7))*sin(x(8))*cos(x(9)) - x(5))^2 - (x(6)*sin(x(7))*cos(x(8))*cos(x(9)) - x(4))^2 - (x(6)*sin(x(8)) + x(3))^2;% 初始化种群
pop = rand(pop_size, num_var) .* (ub - lb) + lb;% 计算适应度
fitness = zeros(pop_size, 1);
for i = 1:pop_sizefitness(i) = fitness_fun(pop(i,:));
end% 迭代
for gen = 1:num_gen% 选择probs = fitness / sum(fitness);[pop_new, ~] = roulette_wheel_selection(pop, probs);% 交叉pop_new = crossover(pop_new, p_crossover);% 变异pop_new = mutation(pop_new, p_mutation, ub, lb);% 计算适应度fitness_new = zeros(pop_size, 1);for i = 1:pop_sizefitness_new(i) = fitness_fun(pop_new(i,:));end% 合并种群
clear
clc% 遗传算法参数设置
pop_size = 100; % 种群大小
num_var = 10; % 决策变量个数
num_gen = 200; % 最大迭代次数
p_crossover = 0.8; % 交叉概率
p_mutation = 0.1; % 变异概率
ub = [500, 500, 500, 500, 500, 1000, 1000, 1000, 1000, 1000]; % 决策变量上界
lb = [0, 0, 0, 0, 0, 500, 500, 500, 500, 500]; % 决策变量下界% 目标函数
fitness_fun = @(x) -(x(6)*cos(x(7))*cos(x(8)) + x(6)*sin(x(7))*sin(x(8))*cos(x(9)) - x(5))^2 - (x(6)*sin(x(7))*cos(x(8))*cos(x(9)) - x(4))^2 - (x(6)*sin(x(8)) + x(3))^2;% 初始化种群
pop = rand(pop_size, num_var) .* (ub - lb) + lb;% 计算适应度
fitness = zeros(pop_size, 1);
for i = 1:pop_sizefitness(i) = fitness_fun(pop(i,:));
end% 迭代
for gen = 1:num_gen% 选择probs = fitness / sum(fitness);[pop_new, ~] = roulette_wheel_selection(pop, probs);% 交叉pop_new = crossover(pop_new, p_crossover);% 变异pop_new = mutation(pop_new, p_mutation, ub, lb);% 计算适应度fitness_new = zeros(pop_size, 1);for i = 1:pop_sizefitness_new(i) = fitness_fun(pop_new(i,:));end% 合并种群pop_all = [pop; pop_new];fitness_all = [fitness; fitness_new];% 精英保留[~, idx] = sort(fitness_all, 'descend');pop = pop_all(idx(1:pop_size),:);fitness = fitness_all(idx(1:pop_size));% 输出结果[~, idx] = max(fitness);x_opt = pop(idx,:);fval = fitness(idx);fprintf('第%d代,最优解:', gen);disp(x_opt);fprintf('第%d代,最优目标函数值:%.4f\n', gen, -fval);
end% 选择操作
function [pop_new, idx] = roulette_wheel_selection(pop, probs)[N, ~] = size(pop);cum_probs = cumsum(probs);pop_new = zeros(N, size(pop,2));for i = 1:Nr = rand();idx = find(cum_probs > r, 1);pop_new(i,:) = pop(idx,:);end
end% 交叉
function pop_new = crossover(pop, pc)
[N, n_var] = size(pop);
pop_new = zeros(N, n_var);
for i = 1:N/2
p1 = pop(2i-1, :);
p2 = pop(2i, :);
r = rand();
if r < pc
% 单点交叉
c_point = randi([1, n_var-1]);
pop_new(2i-1, :) = [p1(1:c_point), p2(c_point+1:end)];
pop_new(2i, :) = [p2(1:c_point), p1(c_point+1:end)];
else
pop_new(2i-1, :) = p1;
pop_new(2i, :) = p2;
end
end
end% 确保个体数量为偶数
if mod(N, 2) ~= 0pop = pop(1:end-1,:);
end% 交叉
pop_new = zeros(size(pop));
for i = 1:2:Np1 = pop(i, :);p2 = pop(i+1, :);if rand() < p_crossover% 两点交叉c = randi(size(pop, 2) - 1);pop_new(i,:) = [p1(1:c), p2(c+1:end)];pop_new(i+1,:) = [p2(1:c), p1(c+1:end)];else% 不交叉pop_new(i,:) = p1;pop_new(i+1,:) = p2;end
end% 变异
function pop_new = mutation(pop, pm, lb, ub)
[N, n_var] = size(pop);
pop_new = zeros(N, n_var);
for i = 1:N
p = pop(i, :);
r = rand();
if r < pm
% 随机变异
idx = randi(n_var);
p_new = p;
p_new(idx) = lb(idx) + (ub(idx)-lb(idx)) * rand();
pop_new(i, :) = p_new;
else
pop_new(i, :) = p;
end
end
end
全部论文请见下方“ 只会建模 QQ名片” 点击QQ名片即可

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

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

相关文章

【C++】匿名对象 ① ( 匿名对象引入 | 匿名对象简介 | 匿名对象概念 | 匿名对象作用域 - 对象创建与销毁 )

文章目录 一、匿名对象引入二、匿名对象简介1、匿名对象概念2、匿名对象作用域 - 对象创建与销毁3、代码示例 - 创建并使用匿名对象 一、匿名对象引入 匿名对象引入 : 在上一篇博客 【C】拷贝构造函数调用时机 ② ( 对象值作为函数参数 | 对象值作为函数返回值 ) 中 , 讲到了 如…

Science adv | 转录因子SPIC连接胚胎干细胞中的细胞代谢与表观调控

代谢是生化反应网络的结果&#xff0c;这些反应吸收营养物质并对其进行处理&#xff0c;以满足细胞的需求&#xff0c;包括能量产生和生物合成。反应的中间体被用作各种表观基因组修饰酶的底物和辅助因子&#xff0c;因此代谢与表观遗传密切相关。代谢结合表观遗传涉及疾病&…

不安全的反序列化(phpjava)及漏洞复现

不安全的反序列化 1. 序列化与反序列化 A8:2017-不安全的反序列化 A08:2021-Software and Data Integrity Failures 为什么要序列化&#xff1f; 序列化&#xff0c;将对象的状态信息转换为可以存储或传输的形式的过程&#xff0c;这种形式大多为字节流、字符串、json 串。…

怎么在树莓派上搭建WordPress博客网站,并发布到外网可访问?

文章目录 序幕概述1. 安装 PHP2. 安装MySQL数据库3. 安装 Wordpress4. 设置您的 WordPress 数据库设置 MySQL/MariaDB创建 WordPress 数据库 5. WordPress configuration6. 将WordPress站点发布到公网安装相对URL插件修改config.php配置 7. 支持好友链接样式8. 定制主题 序幕 …

OpenCV(四十一):图像分割-分水岭法

1.分水岭方法介绍 OpenCV 提供了分水岭算法&#xff08;Watershed Algorithm&#xff09;的实现&#xff0c; 使用分水岭算法对图像进行分割&#xff0c;将图像的不同区域分割成互不干扰的区域。分水岭算法模拟了水在图像中的扩散和聚集过程&#xff0c;将标记的边界被看作是阻…

Edge官方鼠标手势

前言 日期&#xff1a;2023年8月 Edge浏览器目前已自带官方的鼠标手势功能&#xff0c;若要使用首先将浏览器更新至最新版&#xff0c;下文介绍使用方法。 官方鼠标手势 前提 更新Edge至最新版&#xff0c;并关闭其它鼠标手势扩展。 开启鼠标手势 打开Edge浏览器的设置&…

NoSQL之redis持久化(RDB、AOF)

目录 一、Redis高可用 二、Redis持久化 1、持久化的功能 2、Redis的两种持久化 三、RDB 持久化 1、触发条件 1.1 手动触发 1.2 自动触发 1.3 其它自动触发机制 2、执行流程 3、启动时加载RED文件(恢复) 四、Redis的AOF持久化 1、开启AOF 2、执行流程 2.1 命令追加…

基于Qt5的计算器设计

Qt5的信号与槽 ✨描述&#xff1a;信号槽是 Qt 框架引以为豪的机制之一。所谓信号槽&#xff0c;实际就是观察者模式(发布-订阅模式)。当某个事件发生之后&#xff0c;比如&#xff0c;按钮检测到自己被点击了一下&#xff0c;它就会发出一个信号&#xff08;signal&#xff09…

TSUMU58CDT9-1显示器芯片方案

TSUMU58CDT9-1是用于LCD显示器的整体解决方案图形处理IC&#xff0c;面板分辨率高达WUXGA。它配置了高速集成三adc /PLL、集成DVI/HDMI接收器、高质量显示处理引擎、集成微控制器和支持LVDS面板接口格式的输出显示接口。TSUMU58CDT9-1支持一个灵活的可配置数字输入接口&#xf…

【MySQL系列】MySQL数据库索引详解

目录 一、为什么要用索引&#xff1f; 二、什么是索引&#xff1f; 三、MySQL索引使用场景 四、索引的原理 五、MySQL的存储引擎 六、索引的数据结构 七、索引如何使用 八、实际使用示例 九、优缺点、使用建议和注意事项 十、为什么Mysql不选择Hash索引&#xff1f; …

电脑死机的时候,CPU到底在做什么?

电脑死机&#xff0c;应该每个接触计算机的小伙伴都经历过吧。 尤其是早些年&#xff0c;电脑配置还没现在这么高的时候&#xff0c;多开几个重量级应用程序&#xff0c;死机就能如约而至&#xff0c;就算你把键盘上的CTRLALTDELETE按烂了&#xff0c;任务管理器也出不来&…

Linux基础入门

一、操作系统安装方法 1、使用u盘安装 工具&#xff08;前提条件&#xff09;&#xff1a; <1>u盘 <2>镜像文件iso/msdn.itellyou.cn <3>把u盘做成PE&#xff1a;大白菜/老毛桃/winPE/软碟通/ultralSO 设置BIOS&#xff1a;通过u盘启动 安装系统&…

什么是云存储,从对象存储说起?

在《存储系统形态之争,从块存储到统一存储》一文中我们提到了对象存储的概念,知道目前很多企业级存储都是支持对象存储的,比如EMC、NetApp和华为等。以EMC的对象存储为例,其最早在1998年就已经具备成熟的产品了,到目前已经有二十多年的历史了。如图是关于对象存储主要产品…

《银河麒麟高级服务器操作系统V10》使用

一言而论&#xff1a;讲了麒麟服务器V10的基本使用&#xff0c;包括终端、VNC 文章目录 前言基本架构环境硬件环境软件环境 麒麟安装步骤1.在宿主机上安装好VM&#xff0c;并且激活2.使用VM创建虚拟机3.启动虚拟机 终端常用点VNC的使用麒麟上安装VNC服务器Windows上安装VNC客户…

【deepspeed】【训练】【交互】【wandb】训练过程中的wandb交互如何去除

问题&#xff1a;gpt模型训练时&#xff0c;中间有询问输入账户&#xff0c;交互式的询问影响自动执行脚本&#xff0c;询问是这样的&#xff1a; 解决办法&#xff1a; 在脚本中设置环境变量&#xff0c;关闭wandb&#xff0c;如下图&#xff1a; 其他&#xff1a; log中没有…

Mysql InnoDB引擎 的hash索引

Mysql InnoDB引擎不支持hash索引&#xff0c;但是在内存结构中有一个自适应hash索引&#xff0c;来提高查询性能 当设置hash索引时会自动转换成btree索引 查一下mysql官方文档&#xff1a;https://dev.mysql.com/doc/refman/5.7/en/create-index.html innodb_adaptive_hash_i…

第13篇:ESP32 idf wifi联网使用SNTP同步网络时间LCD ST7920液晶屏显示

第1篇:Arduino与ESP32开发板的安装方法 第2篇:ESP32 helloword第一个程序示范点亮板载LED 第3篇:vscode搭建esp32 arduino开发环境 第4篇:vscodeplatformio搭建esp32 arduino开发环境 ​​​​​​第5篇:doit_esp32_devkit_v1使用pmw呼吸灯实验 第6篇:ESP32连接无源喇叭播…

实时云渲染应用之虚拟仿真项目的四大优势

虚拟仿真在教育领域的应用越来越广&#xff0c;尤其在科研和实验教学领域&#xff0c;这主要是因为虚拟仿真具有操作简单、场景逼真、更安全、易维护的优势。比如在实验教学过程中&#xff0c;一些实验对象相对于学生来说过于宏观或微观&#xff0c;学生不易理解&#xff0c;而…

机器学习——贝叶斯(三种分布)/鸢尾花分类分界图/文本分类应用

0、前言&#xff1a; 机器学习中的贝叶斯的理论基础是数学当中的贝叶斯公式。这篇博客强调使用方法&#xff0c;至于理论未作深究。机器学习中三种类型的贝叶斯公式&#xff1a;高斯分布&#xff08;多分类&#xff09;、多项式分布&#xff08;文本分类&#xff09;、伯努利分…

【PyTorch 08】如果要手动安装对应的包

例如有时候我们要下载 PyG &#xff0c;但是需要手动下载&#xff0c;需要进行以下步骤&#xff1a; 网站链接&#xff1a;https://data.pyg.org/whl/ 首先查看当前安装好的Pytorch版本和对应的cuda版本 1. pip list&#xff1a;查看torch版本 2. torch.version.cuda&#xf…