首页
/
行业洞察
/
正文
INDUSTRY INSIGHT · 深度
2022国赛B题纯方位无源定位:从圆形到锥形编队的建模与MATLAB实现
📅 2026/10/17 14:20:30
✍️ 爱科研究院
👁 阅读 3,247
简介本资源为2022年全国大学生数学建模竞赛本科组B题的完整论文PDF聚焦无人机纯方位无源定位问题适合备战数模竞赛的本科生及指导教师参考。论文围绕圆形与锥形编队建立被动接收信号无人机的定位模型与位置调整模型运用二维直角坐标系、余弦定理与“三圆共点”原理推导发射信号无人机数量需求并给出基于步长遍历的迭代调整方案全部求解过程使用MATLAB编程实现。压缩包内仅含1个PDF文件约2.63MB完整呈现摘要、问题重述、模型假设、符号说明及建模求解全过程结构规范便于对照学习。该论文曾获河北省一等奖目前已有8039人学习下载读者可从中获取赛题分析思路、模型构建方法、MATLAB数值计算与可视化技巧以及论文写作与排版参考适合作为数模竞赛的系统学习与实战范本。1. 从2022国赛B题看纯方位无源定位这道题到底考什么很多人第一次看到“无人机纯方位无源定位”这个题名脑子里蹦出来的第一个念头是这到底是几何题还是优化题其实这道2022年全国大学生数学建模竞赛本科组B题本质上考的是三件事——你能不能把物理场景翻译成几何关系能不能用余弦定理把角度和边长串起来能不能用MATLAB把枚举和迭代跑通。它不考高深的算法考的是“基础工具用到位”。拿分的关键在于模型建立要有清晰的坐标系和符号体系求解过程要有可复现的数值方案结果要能回到题目场景里解释。适合正在准备数学建模竞赛、想拿省奖以上、或者想搞懂无源定位基本套路的同学。这道题当年让不少人翻车的地方恰恰不是不会余弦定理而是没想清楚“定位”到底定的是哪个位置。2. 定位模型从三个方位信息反解坐标的完整链路2.1 被动接收信号无人机的实际位置怎么求题目给的条件是圆周上两架无人机和圆心一架无人机发射信号它们位置无偏差另一架无人机被动接收信号位置有偏差。你要做的是根据接收到的三个方位信息反推出这架无人机当前的实际坐标。思路很直接建立二维直角坐标系把发射信号的无人机位置固定接收信号无人机与它们之间的三个夹角已知。设接收信号无人机到三个发射源的距离分别为未知量利用余弦定理在三个三角形中列出方程。三个未知量、三个方程联立求解就能得到三条边的长度。再用一次余弦定理求出接收信号无人机相对于坐标轴的偏角坐标就出来了。这类题通常这么答先画图标清楚哪架是圆心、哪架在圆周、哪架接收信号然后把已知角和已知边标在图上接着写余弦定理的方程组最后解方程给出坐标表达式。面试官或者评阅人最想看到的是你的符号定义是否清晰、方程是否独立、解是否唯一。% 被动接收信号无人机定位模型核心代码 % alpha1, alpha2, alpha3 为接收到的三个方位角 % FY0i, FY0j 为发射信号无人机编号r 为编队半径 a1 sqrt(2*r^2 - cosd(abs(FY0i-FY0j)*40)*2*r^2); % 两发射机之间距离 syms k0 a2 a3 eq1 (k0^2 a3^2 - r^2)/(2*k0*a3) - cosd(alpha1); eq2 (k0^2 a2^2 - r^2)/(2*k0*a2) - cosd(alpha2); eq3 (a2^2 a3^2 - a1^2)/(2*a2*a3) - cosd(alpha3); [X,Y,Z] solve(eq1, eq2, eq3, k0, a2, a3); K0 double(X); % 接收机到圆心的距离 k0i acosd(1 - 2*cosd(alpha1)^2); k01 k0i - 40*abs(i-1); x real(K0*cosd(k01)); % 横坐标 y real(K0*sind(k01)); % 纵坐标这段代码的关键在于a1是两架发射信号无人机之间的弦长用余弦定理和圆周角关系算出三个方程分别对应三个三角形中的余弦定理solve解出的是符号解double转数值。参数r是编队半径题目中圆形编队取100米。注意cosd用的是角度制因为方位信息通常以度为单位给出。2.2 准确位置怎么定三圆共点的几何直觉实际位置求出来了但题目还要你确定“无人机应该到达的准确位置”。这里用到一个关键几何事实一个动点到两个定点的夹角如果是定值这个动点的轨迹是一段圆弧。当有三架位置无偏差的无人机发射信号时接收信号无人机对每两架发射机都有一个夹角对应三条圆弧三条圆弧的交点就是准确位置。这个结论的证明要用到圆周角定理的逆定理。当夹角为钝角时轨迹像一只“眼睛”当夹角为锐角时轨迹像一个“葫芦”。不管哪种形状三条轨迹必然交于一点这一点就是接收信号无人机应当到达的位置。答题时要把这个几何直觉写清楚然后落到公式上用余弦定理把三个夹角表示成已知边和未知边的函数联立求解。评阅人看重的是你有没有把“三圆共点”这个几何条件转化成代数方程。注意这里有一个容易忽略的特殊情况——当夹角是优角时余弦值不变所以模型依然成立。这个细节写进论文里是加分项。3. 额外无人机数量枚举法怎么用才不翻车3.1 为什么一架额外无人机就够了题目第二小问0号和1号已经确定发射信号问还需要额外增加几架发射信号无人机才能让其他所有接收信号无人机都能被准确定位。先想不加的情况只有0号和1号发射信号其他无人机只能接收到一个方位信息。一个方位信息对应一条轨迹轨迹上无数个点都可能无法唯一确定位置。所以不加不行。再加一架呢假设额外选一架无人机发射信号那么接收信号无人机就能收到三个方位信息来自0号、1号、额外那架。三个方位信息对应三条轨迹三条轨迹交于一点位置唯一确定。所以额外加一架就够了。这个逻辑链条要写清楚一个方位信息→一条轨迹→不唯一三个方位信息→三条轨迹→三圆共点→唯一。中间不需要复杂的推导但要把“为什么一个不够、三个刚好”说明白。3.2 枚举56种情况找最优匹配具体到“选哪一架额外发射”需要枚举。除0号和1号外还有8架无人机每架都可能作为额外发射机。对于某一架接收信号无人机遍历所有可能的额外发射机计算三个方位信息的准确值与实际接收值之间的偏差平方和取最小值对应的那架就是答案。% 枚举法确定额外发射信号无人机 min_val 1000; mini 0; for i 2:9 if i FY0k continue; % 跳过接收机自身 end m (beta1 - alpha1(i,FY0k))^2 ... (beta2 - alpha2(i,FY0k))^2 ... (beta3 - alpha3(i,FY0k))^2; if m min_val min_val m; mini i; % 记录最优额外发射机编号 end end这段代码的核心是m的计算三个方位角的偏差平方和。beta1、beta2、beta3是实际接收到的角度alpha1、alpha2、alpha3是理论计算值。遍历所有候选发射机取偏差最小的那个。参数FY0k是接收信号无人机编号循环范围2:9覆盖除0号外的所有圆周无人机。这类题在评阅时评阅人会重点看你的枚举逻辑是否完整、偏差度量是否合理、结果是否可复现。如果你只写“选2号”而不给枚举过程分数会打折扣。3.3 圆形编队位置调整步长遍历的实操细节第三小问要求给出位置调整方案。0号和1号已经在理想位置保持相对关系不变。其他无人机需要调整。调整策略设定步长0.01米向四周全方位遍历。每移动一步计算当前位置与理想位置的偏差当偏差小于0.01米时认为到达理想位置。调整方向分向北和向南两类用极坐标表示位置每次移动后更新极径和极角。% 圆形编队位置调整核心逻辑 njl 0.01; % 最小距离阈值 r 100; % 编队半径 jl 100; % 初始距离设大值 while jl njl mjl 10000; for j 0:359 % 计算当前角度下的位置偏差 % 更新极径和极角 % 记录最小偏差对应的方向 end % 按最优方向移动一步 % 更新 jl end这段代码展示的是迭代框架外层while控制是否达到精度要求内层for遍历360个方向找最优移动方向。参数njl是收敛阈值题目取0.01米r是编队半径。实际写论文时要把每次迭代的极径、极角变化写清楚让评阅人能看到收敛过程。提示调整时间不计这个假设要写进模型假设里否则迭代次数和实际飞行时间的关系会被质疑。4. 锥形编队从圆形到锥形的模型迁移4.1 锥形编队的几何特点与定位难点问题二把圆形编队换成锥形编队。锥形编队的特点是直线上相邻两架无人机间距相等相邻三架构成等边三角形。这个几何结构与圆形编队有本质区别——圆形编队中无人机均匀分布在圆周上角度关系规整锥形编队中无人机分布在多条直线上角度关系更复杂。定位难点在于锥形编队中如果只有两架无人机位置无偏差能提供的方位信息有限。需要先假设两架无人机位置无偏差比如1号和5号用它们去定位第三架比如2号再把2号加入无偏差集合用三架去定位其他。4.2 逐轮定位策略与延长线问题具体策略分轮次第一轮假设1号和5号无偏差。将1号、2号作为发射机5号接收得到一个方位信息将2号、5号作为发射机1号接收得到另一个方位信息。在三角形1-2-5中两个角已知第三个角可求2号位置确定。然后对2号进行位置调整使其到达理想位置。第二轮1号、2号、5号都无偏差。用它们去定位其他无人机。但有一个坑当某架无人机位于1号、2号、5号构成的三角形的边的延长线上时只能接收到一个方向信息无法准确定位。所以4、7、9、11、13、14号无人机在这一轮无法定位。第三轮选取2号、6号、8号作为发射信号无人机剩下未定位的无人机都不在这三架构成的三角形的延长线上全部可以定位。% 锥形编队逐轮定位逻辑 % 第一轮定位2号 % 1号、2号发射5号接收 - 角度1 % 2号、5号发射1号接收 - 角度2 % 三角形内角和 - 角度3 - 2号位置确定 % 第二轮用1、2、5定位其他 % 检查是否在延长线上 % 如果在延长线上跳过留到下一轮 % 第三轮用2、6、8定位剩余 % 所有剩余无人机均可定位这段伪代码展示的是逐轮扩展的思路。关键参数是每轮选哪三架作为发射机以及如何判断某架无人机是否在延长线上。判断方法计算该无人机与三架发射机构成的三角形的角度关系如果某个角接近0或180度说明在延长线上。4.3 锥形编队位置调整与圆形编队的差异锥形编队的位置调整与圆形编队类似也是步长遍历但调整方向不是简单的径向。锥形编队中无人机需要沿锥面调整极坐标的参考点不同。具体来说圆形编队以圆心为极点锥形编队需要以锥顶或某条基准线为参考。调整方案要写清楚每架无人机的目标位置坐标、当前坐标、偏差向量、移动步长、收敛条件。这些细节在论文中要列表给出让评阅人能复现。注意锥形编队的理想位置坐标要用表格列出不能只给公式。表格中要包含无人机编号、x坐标、y坐标单位统一为米。5. 易错点这五类失分操作每年都有人踩5.1 坐标系建错导致余弦定理用反错在哪把圆心放在非原点位置或者把圆周无人机放在非标准角度上导致余弦定理中的边长和角度对应关系混乱。为什么错余弦定理要求三角形三边和夹角严格对应坐标系一乱符号定义就容易混。很多人在论文里写“设某点坐标为(x,y)”但没说明x轴方向、原点位置后面公式全乱。怎么答对统一规定圆心为原点0号无人机在x轴正方向圆周无人机按逆时针编号相邻夹角40度。这个约定写进符号说明里后面所有公式都基于这个约定。5.2 把“实际位置”和“准确位置”搞混错在哪题目问的是建立定位模型确定实际位置但答题时把准确位置的公式套上去或者反过来。为什么错实际位置是根据接收到的方位信息反推的准确位置是根据几何关系正推的。两者的已知条件不同、求解方向不同。混在一起写评阅人看不懂你在求哪个。怎么答对分两段写。第一段已知方位信息求实际坐标用反解。第二段已知发射机位置求准确坐标用正解。两段之间用“同理”或“类似地”过渡但公式要分开列。5.3 枚举法漏情况或重复计数错在哪在确定额外发射机数量时枚举8架无人机但漏了某些组合或者把同一情况算了两次。为什么错组合问题容易漏边界。比如接收信号无人机是2号时额外发射机不能是2号本身这个约束容易忘。另外0号和1号已经确定发射枚举时要从2到9不能包含0和1。怎么答对先写清楚枚举范围除0号、1号和接收机自身外的所有圆周无人机。然后用双重循环或条件判断确保不重不漏。最后用偏差平方和的最小值作为选择依据把最小值对应的编号输出。5.4 位置调整的步长设得太大或太小错在哪步长设成1米调整精度不够设成0.0001米迭代次数爆炸。为什么错步长与收敛速度直接相关。步长太大可能在理想位置附近来回震荡步长太小计算量大且没必要。题目要求精度0.01米步长应该与精度匹配。怎么答对步长取0.01米与收敛阈值一致。每次移动后检查偏差是否小于0.01米是则停止。如果迭代次数超过预设上限比如10000次输出警告信息检查是否有死循环。5.5 锥形编队延长线问题没讨论错在哪直接说“用三架无人机定位其他所有”忽略了延长线上的无人机只能接收一个方向信息。为什么错这是锥形编队特有的几何约束。圆形编队中三架发射机不在一条直线上不会出现延长线问题锥形编队中三架发射机可能共线导致某些位置的无人机无法定位。怎么答对在第二轮定位后明确列出哪些无人机在延长线上、为什么无法定位、留到第三轮用什么组合定位。这个讨论过程本身就是得分点。6. 答题节奏从读题到交卷的实操方法拿到这道题前30分钟不要动笔算。先把题目读三遍把“圆形编队”“锥形编队”“纯方位无源定位”“位置调整”这几个关键词圈出来。然后在草稿纸上画两个图一个圆形编队示意图一个锥形编队示意图。图上标清楚哪些无人机发射信号、哪些接收信号、哪些位置无偏差、哪些有偏差。这个图后面要放进论文里所以画的时候就要规范。接下来确定符号体系。圆心记O圆周无人机按逆时针编号FY01到FY09半径记r方位角记α、β、γ。符号说明表放在论文第三部分每个符号都要有物理含义和单位。这一步花20分钟后面所有公式都靠这套符号不能乱。然后分问题逐个攻。问题一第一小问先建定位模型把实际位置和准确位置的公式分别写出来。第二小问用枚举法确定额外发射机数量把56种情况的表格附上。第三小问写位置调整方案步长、遍历方向、收敛条件都要写清楚。问题二先分析锥形编队的几何特点再写逐轮定位策略最后给位置调整方案。MATLAB代码要提前调通。附录里放四个程序定位模型、额外无人机数量确定、圆形编队调整、锥形编队调整。每个程序都要有注释说明输入参数和输出结果。代码不要贴太长核心逻辑写清楚就行重复部分用省略号。论文写作节奏摘要最后写但要写得最认真。摘要里要把三个问题的模型、方法、结果各用一句话概括。评阅人先看摘要摘要不过关正文写得再好也白搭。我那次带队伍打这个题最大的教训是第一版论文里把“实际位置”和“准确位置”的公式混在一起写评阅反馈说“逻辑不清”。后来重写把两个位置分开成两节每节开头用一句话说明“已知什么、求什么”分数才上去。从那以后我每次写建模论文都强制走一遍“已知-求-公式-结果”四步检查确保每节逻辑自洽。希望帮到你。本文还有配套的精品资源点击获取
📌 标签:
工业官网
设计趋势
AI 建站
SEO
获取完整报告 →
RELATED ARTICLES
推荐阅读
2026/10/17 14:20:30
uniapp跨端开发指南:从环境搭建到性能优化
2026/10/17 14:20:30
AI Agent工具接入为何总翻车?MCP协议实战拆解与标准化方案
2026/10/17 14:20:30
AI辅助论文写作全流程实战:选题、框架到降重的人机协作指南
2026/10/17 15:10:37
从Agent Loop到Agent Harness:智能体工程化实战指南
2026/10/17 15:10:37
CSS Grid从基础到进阶:二维网格布局核心语法与实战避坑指南
2026/10/17 15:10:37
OpenCode终端AI编程助手实操指南:从安装、模型接入到Skills配置
2026/10/17 15:10:37
用AI Coding工具构建万字世界观:奇幻设定工程化创作工作流
2026/10/17 15:10:37
C++ map深度解析:红黑树、操作陷阱与性能优化
2026/10/17 15:05:37
Java程序员转型大模型工程师:从Python基础到RAG与LoRA实战指南
2026/10/17 0:02:58
NetSpot 实战:用信道分析与频宽优化解决 Wi-Fi 卡顿
2026/10/17 0:02:58
C++ split() 字符串分割的五种实现与性能实测
2026/10/17 0:02:58
R语言坐标轴范围设置:从xlim/ylim到coord_cartesian的完整指南
2026/10/17 10:00:11
流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南
2026/10/17 10:16:23
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别
2026/10/17 10:16:02
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容
2026/10/17 10:15:50
我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频
2026/10/16 18:46:48
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证
2026/10/16 18:46:46
2026 大模型集体涨价:用 Python 做企业 Token 成本测算与选型避坑(附配置)