猎狗追兔子问题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1. 有一只猎狗在B点位置发现了一只兔子在正东北方距离它200米的地
方O处,此时兔子开始以8米/秒的速度向正西北方距离为120米的洞口A全
速跑去,假设猎狗在追赶兔子的时候始终朝着兔子的方向全速奔跑,用计
算机仿真法等多种方法完成下面的实验:
(1) 问猎狗能追上兔子的最小速度是多少?
(2) 在猎狗能追上兔子的情况下,猎狗跑过的路程是多少?
(3) 画出猎狗追赶兔子奔跑的曲线图。
(4) 假设在追赶过程中,当猎狗与兔子之间的距离为30米时,兔子由于
害怕, 奔跑的速度每秒减半,而猎狗却由于兴奋奔跑的速度每秒增
加0.1倍,在这种情况下,再按前面的(1)—(3)完成实验任务。
涉及Matlab 的知识:
If-and 循环,while-and 循环,绘图。
数学建模与求解的方法:
1.兔子的起始位置是O (0,0),狗的初始位置是B (-1002,-1002)。 兔子沿OA 直线跑动,OA 的方程是y=-x ,兔子的速度是8米每秒,所以任意时刻t,兔子的位置是)~,~(k k y x =(-42,42),狗以匀速追赶兔子,速度大小不变,方向时刻指向兔子。
设任意时刻t ,狗的位置是),(k k y x ,兔子的位置是)~,~(k k y x ,则有题意可知:cos α=)2)24(2)2424∧-+∧----y x x
,sin α=)2)24(2)2424∧-+∧---y x y ,设狗的速度大小为
v ,在t+dt 时,兔子的位置变为(-24(t+dt ), 24*(t+dt)),狗的位置的横坐标x ′=x+v*cos α*dt,纵坐标y ′=y+v*sin α*dt. 狗和兔子之间的距离211211)~()~
(++++-+-=k k k k k y y x x d ,,当k d =0时,狗追到兔子,但如果在k d =0之前,兔子到达A 点,即兔子跑进了洞穴,
则狗追不到兔子,兔子跑进洞穴所需时间为t=120/8=15秒,所以狗以最小速度追赶兔子时,在洞口初,恰好追到兔子。在运算时,可以任意给狗一速度v,在此速度下,狗能否在洞口处恰好追到兔子,如果在到达洞口之前就追到了,则取比v 小的一速度,在进行运算。如兔子进入洞穴时仍未追上,则在取一比v 大的速度进行运算,直到取到一速度使狗在洞口处追到了兔子。
2.当狗与兔子的距离大于30时,运算过程与1相同,当距离小于30时,兔子的速度每秒减半,而狗的速度每秒增加0.1倍,取间隔
dt,当二者距离小于30时,兔子的速度为v=8/(2^dt),狗的速度v=v*1.1^dt,由此可以写出任意时刻t,兔子和狗的位置坐标。其他过程与1相同。
三.程序设计
根据以上,编写程序如下:
四.问题求解结果与结论
米时,才开始变速,所以两图的差别不十分明显。
在Matlab运行后,得结果,狗的最小速度为v=17.081,跑过的路程为s=256.1548;当狗和兔子的速度发生变化时,狗的最小速度v=15.5872,跑过路程s=253.2291.
五.实验总结与体会
实验过程比较繁琐,一开始并没有找到适合的运行程序方法,经过仔细的分析探讨研究,类比缉私艇追击走私船的三种解决方法,逐渐摸索出一套较为可行的方案。通过亲身体验,体会到了数学实验在解决现实问题时的方便快捷,精确无误。