文档介绍:-
. z.
一、对《数学实践与建模》课程的讲义、授课内容、授课方式等的看法、建议:
还没开始上这门课的时候,我就经常听到数学建模这个词,谁谁谁参加数学建模比赛了之类的。当时并没有多想情况为四人追到一起。否则的话,称四人不能追到一起。
4、在追及过程中,四人可以在正方形区域内进行运动,并不是只能在正方形的边长上运动。
5、在开始运动时和追及过程中,每个人时刻朝着目标运动不受限制。
6、根据分析,可以假设连续的时间被分为多个极小且等长的时间段。又因为时间间隔极短,所以四人在时间内的运动均可视为直线运动。
六、模型的建立与求解:
本题求解的关键在于运用算法求出若干个时间后a、b、c、d四人的位置坐标,并计算相应追逐者间的距离。记经过k个时间后,a、b、c、d位置点分别为、、、。故本题转化为求、、、的坐标,以及、、、的值。下面,逐步分析四人的运动状况。
①运动开始时,a、b、c、d四人同时分别朝着各自目标沿向量、、、的方向运动。
-
. z.
②经过1个时间后,a由运动到,b由运动到,c由运动到,d由运动到。
③此时a、b、c、d都要转变方向同时分别沿向量、、、方向追及b、c、d、a。
④经过2个时间后,a、b、c、d又分别由、、、运动到、、、。
⑤此时a、b、c、d需再次调整方向同时分别沿向量、、、方向追及b、c、d、a。
⑥照此循环下去,直到*两者之间的距离足够小,即这时两个人追到一起,该程序活动终止。以上过程如图2所示。
因此,我们可以用向量递推的方法来求出、、、的坐标,即向量、、、的坐标。记a、b、c、d四者的速率分别为、、、。
=- ; =-
=- ; =-
通过对1个dt时间、2个dt时间、3个dt时间一直到k个dt时间后的分析,可以得到:
-
. z.
=- ; =-
=- ; =-
所以接下来我们可以进行MATLAB的编程。
MATLAB程序如下:
clear;clf;
A=[0,0];B=[0,1];C=[1,1];D=[1,0];
k=0;
dt=;v=1;
grid;
hold on;
a*is([0 1 0 1]);
while k<10000
k=k+1;
plot(A(1),A(2),'g.');
plot(B(1),B(2),'r.');
plot(C(1),C(2),'y.');
plo