MATH36031 Project 2Python

Java Python MATH36031 Project 2 - deadline 22nd November 2024, time 1100hrs.

In this project, the dynamics between a fox and a rabbit will be investigated, by solving diferential equations modelling their positions at diferent times.  The initial configuration is shown in Figure 1, where the fox starts chasing the rabbit while the rabbit tries to escape from its predator and moves towards its burrow instantaneously. The fox, initially located at (300; -550), pursues the rabbit with the initial speed sf0  = 15m/s in one of the following two possible ways:

Figure 1:  Coordinates (in metres) of the fox (F), the rabbit (R) and its burrow (B) and the two corners (SW,NW) of the warehouse.

● if the rabbit is in sight, the fox’s attack path points directly towards the rabbit (the direction of the velocity vector of the fox is exact from the fox to the rabbit);

● if the view of the rabbit is blocked by the corner SW of an impenetrable warehouse (assuming that the warehouse is extended indefinitely to the east), then the fox runs directly towards this corner. If the rabbit is still not insight when the corner is reached, then the fox moves parallel to the NW-SW perimeter of the warehouse until it sees the rabbit.

The rabbit, initially located at the origin (0 , 0), runs towards its burrow at (600 , 600) in a straight line with initial speed sr0  = 11m/s.

Question 1: Constant speeds.. Assuming that both the fox and the rabbit run with constant speeds sf0  = 15m/s and sr0  =  11m/s respectively, determine whether the rabbit can be captured before it reaches its burrow.  The rabbit is considered to be captured by the fox, if the distance between them is smaller than or equal to 0 .1 meter.

Question 2: Diminishing speeds. Let us consider a more realistic scenario, when the hungry fox meets the tired rabbit.  Because neither the fox nor the rabbit are in their best conditions, their chasing/escaping speeds diminish in time, according to the amount of distance (starting from the time they find each other and start running) they have travelled so far. More precisely, their speeds at time t are given by

sf (t) = sf0e-μfdf(t),    sr (t) = sr0e-μrdr(t) ,

where sf0  = 15m/s and sr0  = 11m/s are the same initial speeds as above, μf  = 0.0002m-1 and μr  = 0.0008m-1  are the rates of the diminishing speeds, df (t) and dr (t) are the distance they have travelled up to time t(> 0).  Determine whether the rabbit can be captured before it reaches its burrow.  (You may assume that this diminishing speed starts from t = 0).

Outputs required You are required to submit a report  (maximum 8 pages including any appendices) in pdf form. via the Turnitin submission box on Blackboard.  Additionally you need to submit your m-files or mlx-files used for the MATLAB codes via the Blackboard Submission Box also on Blackboard.   As part of the required output, in your report give (i) the time T and the location of the fox when either the rabbit is captured or the rabbit escapes to the burrow; (ii) the distance travelled by the fox in time T .  Additionally provide a plot showing the paths taken by both animals.

Additional information and guidelines

1.  All coding must be done in MATLAB.

2.  Treat both the fox and the rabbit as points, without worrying about their finite sizes (as in most models).

3.  The questions can be answered with diferent approaches, but you need to use the built-in ODE solver ode45 discuss MATH36031 Project 2Python ed during the lectures.

4.  Avoid using hard-coded numbers. Any number in your code should either be given as initial condition, or be derived from these conditions.

5.  Keep to the page length not exceeding eight A4 pages, and there is no need for a title page or abstract for a relative short report like this.  Font sizes should be no smaller than 11 point, and page margins no smaller than 2cm.

6. List the complete code of the whole function at the end of each question, or in an appendix.  Make your source code more readable, by keeping the indentation and stylistic features, and can be copied from your submitted.  Your published results should be reproducable from the code attached.

7. Have a look at the generic rubric about how your report will be marked, and also the intended learning outcomes about what you are expected to achieve in the end.

8. Avoid copying (too many) sentences directly from the project description, and try to restate the problem with your own words or examples if possible.

9. You may use your report in the future as evidences of written work, so take it seriously.

10. Your target audience is a fellow student on your course: explain the questions so that the report can be understood without this project description and your approach could be implemented in another computer language like Python. The report should indicate to the reader how well you understand the problem and the approach you took. Your goal will be to communicate your solutions to another person rather than to show you’ve completed the assignment.

11. Balance the explanation of the approach and the comments in the code. Avoid under- commenting and over-commenting.

12. Aim for precision and clarity of writing.

13. Since there is no final exam, you are advised to spend at least 15 hours on each project, with additional self-study if you are less experience with computer programming. Re- member for a 10 credit module like this one, you are expect to spend 100 = 10 × 10 hours in total (including lectures, labs, self-study and coursework).

14. Please do not put any personal information on the report, only your student ID number.

15. The submission for each project will be open two weeks before the deadline.  Only your last submission will be marked, and anything submitted after the deadline will be treated late and any penalty will be applied by the Teaching and Learning O伍ce in June according to the Undergraduate Student Handbook.

16. Whilst this project can be done without the use of any artificial intelligence (AI) software tools, if you use any AI tools or software to help you with your project, you must mention this in the report.  Please study the guidelines at

https://manchester-uk.libanswers.com/teaching-and-learning/faq/264824

on how to do this correctly.

The content and accuracy of the report will be your responsibility alone, and any factually incorrect statements or mathematically incorrect content will be penalised.

17.  Your attention is also drawn to to the University’s Academic Malpractice Policy, see

https://documents.manchester.ac.uk/display.aspx?DocID=639. See also the guide- lines on the use of AI via the course on Academic Integrity at:

https://www.education.library.manchester.ac.uk/mle/academic-integrity/

18.  We are obliged to report cases of suspected academic malpractice,  and people may be subject to an additional oral assessment on the content of the report and codes submitted         

基于数据驱动的 Koopman 算子的递归神经网络模型线性化,用于纳米定位系统的预测控制研究(Matlab代码实现)内容概要:本文围绕“基于数据驱动的 Koopman 算子的递归神经网络模型线性化,用于纳米定位系统的预测控制研究”展开,提出了一种结合数据驱动方法与Koopman算子理论的递归神经网络(RNN)模型线性化方法,旨在提升纳米定位系统的预测控制精度与动态响应能力。研究通过构建数据驱动的线性化模型,克服了传统非线性系统建模复杂、计算开销大的问题,并在Matlab平台上实现了完整的算法仿真与验证,展示了该方法在高精度定位控制中的有效性与实用性。; 适合人群:具备一定自动化、控制理论或机器学习背景的科研人员与工程技术人员,尤其是从事精密定位、智能控制、非线性系统建模与预测控制相关领域的研究生与研究人员。; 使用场景及目标:①应用于纳米级精密定位系统(如原子力显微镜、半导体制造设备)中的高性能预测控制;②为复杂非线性系统的数据驱动建模与线性化提供新思路;③结合深度学习与经典控制理论,推动智能控制算法的实际落地。; 阅读建议:建议读者结合Matlab代码实现部分,深入理解Koopman算子与RNN结合的建模范式,重点关注数据预处理、模型训练与控制系统集成等关键环节,并可通过替换实际系统数据进行迁移验证,以掌握该方法的核心思想与工程应用技巧。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值