【数学建模】趣味数模问题——四人追逐问题

问题描述

如图所示,在正方形ABCD的四个顶点各有一个人。在初始时刻 t=0 时,四人同时出发,以匀速 v 沿顺时针方向朝下一个人移动。如果他们始终对准下一个人为目标行进,最终结果会如何?需要作出各自的运动轨迹。

模型分析

  • 每个人都沿着正方形的边朝着下一个人移动,直到所有人都相遇为止。
  • 运动的结果是四人的运动轨迹会逐渐收缩,最终相遇于正方形的中心。

模型建立与求解:

Matlab程序实现 : 文件中包含了一个Matlab程序 run.m 用于模拟这一过程,核心代码如下:

Matlab 复制代码
% 模拟运动
n = 240;
x = zeros(4, n);
y = zeros(4, n);
dt = 0.05; % 时间间隔
v = 10; % 速度

% 初始坐标
x(1,1) = 100; y(1,1) = 0;    % 第1个人初始坐标
x(2,1) = 0;   y(2,1) = 0;    % 第2个人初始坐标
x(3,1) = 0;   y(3,1) = 100;  % 第3个人初始坐标
x(4,1) = 100; y(4,1) = 100;  % 第4个人初始坐标

% 模拟过程
for j = 1:n-1
    for i = 1:3
        d = sqrt((x(i+1,j)-x(i,j))^2 + (y(i+1,j)-y(i,j))^2);  
        cosx = (x(i+1,j)-x(i,j))/d;  % 计算cos值
        sinx = (y(i+1,j)-y(i,j))/d;  % 计算sin值
        x(i,j+1) = x(i,j) + v*dt*cosx;  % 新x坐标
        y(i,j+1) = y(i,j) + v*dt*sinx;  % 新y坐标
    end
    d = sqrt((x(1,j)-x(4,j))^2 + (y(1,j)-y(4,j))^2);  
    cosx = (x(1,j)-x(4,j))/d;  % 计算cos值
    sinx = (y(1,j)-y(4,j))/d;  % 计算sin值
    x(4,j+1) = x(4,j) + v*dt*cosx;  % 第4点新x坐标
    y(4,j+1) = y(4,j) + v*dt*sinx;  % 第4点新y坐标
    plot(x(1,j), y(1,j), 'ro', x(2,j), y(2,j), 'bo', x(3,j), y(3,j), 'go', x(4,j), y(4,j), 'yo')  % 作图
    hold on
    pause(0.1)
end
相关推荐
统计学小王子18 小时前
数学建模国赛倒计时 2 天 ——《统计模型精讲(广义线性模型 R 语言实例 + 分析)》
开发语言·数学建模·r语言
红烧code20 小时前
统计学中的六大估计方法:从最大似然到核密度估计的本质理解
数学建模·概率论
热心网友俣先生21 小时前
2026年高教社杯数模国赛A题:五年命题规律与预测
算法·机器学习·数学建模
2601_953988071 天前
Ricon组态实时监控 - 毫秒级数据可视化
前端·物联网·数学建模·信息可视化·架构·前端框架
统计学小王子1 天前
数学建模国赛倒计时 2 天 ——《缺失值处理一(R语言)》
开发语言·数学建模·r语言
HineMusk1 天前
如何使用 Codex 为数学建模论文高效绘图:以 2023 国赛 C 题为例
数学建模·流程图·画图
乱七八糟的屋子1 天前
NLopt 超详细实战教程(C++版)算法选型|多目标优化|批量寻优|动态约束|闭环仿真控制
数学建模·非线性优化·nlopt·多目标优化·机器人算法·工业仿真·c++优化
统计学小王子1 天前
数学建模国赛倒计时 2 天 ——《异常值的处理(R语言)》
开发语言·数学建模·r语言
建模小刘2 天前
(急急急)2026数学建模国赛最后三天准备!!!!
数学建模·2026数学建模国赛
统计学小王子2 天前
数学建模国赛倒计时 3 天 ——《统计模型精讲(分位数回归R语言实现二)》
数学建模·回归·r语言