国赛数学建模——北理工校赛1

3.31组队参赛

很早就听过数学建模这样一个量级的比赛,也一直想着参加,但是没想到他来的这么快。导员突然在群里通知国赛校级选拔的消息,让我猝不及防地惊了一下。疫情原因,过去的一整个寒假都宅在家里,却并没有干任何实质性的事情。这建模比赛……心里还真没谱。算了,冲就完事了。问了几个同学,不是没兴趣就是已经组队了。无奈之下在群里发了“一缺二求带”,竟真就有人原意要我。没什么好犹豫的,我成为了他们队伍中的一员。
所以“凡事预则立,不预则废”,没有准备,仓促上阵,连队友都是半路结识的,在这一点上我已经被别人超越了。

4.1 初定标题

原题如下

2020年北京理工大学数学建模竞赛第一轮赛题

(共两题,各参赛队任选其中之一)

A.原油含水量在线监测数学模型(李炳照老师提供)

原油含水量是石油工业中一项重要的指标,涉及到原油品质、定价以及后续加工流程等。附件1为某一油田不同油井在1个小时内产出原油含水量的抽样数据,其中id为不同的油井编号,time是时间,ele是监测数值。请根据所给定数据研究如下问题:

(1)请查找相关资料,研究油井在抽取原油时,含水量估计与监测的数学模型模型;

(2)根据本题所给定的数据,结合现有研究成果,分析附件1所给数据曲线的特征,建立含水量变化的数学模型;给出典型油井含水量的变化曲线,并对所建立的模型作出评估;

(3)根据所得到的模型,对油井含水量曲线的变化做出预测,并探讨其误差与不确定性;

(4)油田希望能实现原油含水量进行实时预警,请在上述模型的基础上设计一种方案,能够根据含水量的实时变化,提前预警含水量即将出现的异常变化。

(数据见:A题数据-原油含水量在线监测模型-原始数据0327.csv)

B.船只定位(熊春光老师提供)

假设在水平面有一固定监测点A和一艘运动中的船B,A处安装有位置检测系统,每8秒检测一次船B的位置和速度数据,一共检测了五组数据(见下表)。每组数据都有初始参数和采样数据,初始参数中的D表示AB之间的相对距离,B表示AB连线与Y轴的夹角,V表示B船的航速,C表示B运动方向与Y轴的夹角);采样数据中的X,Y表示以A为原点,B所处的位置坐标。采样数据表中,有噪声数据为检测系统取得的真实数据,存在一定偏差;无噪声数据为理想状况下的数据,即B的精确位置。请根据数据建模回答下面的问题:

(1)
根据无噪音数据,建立数学模型来描述B的运动轨迹。

(2)
根据有噪音数据,选择三种方法(比如最小二乘法、神经网络、插值算法、遗传算法、非线性回归等)建模,给出B的运动轨迹,分析模型中各个参数对运动轨迹的影响,并分析无噪音数据是否符合此处所得的结论。此外,请分析所选三种模型的计算结果与真实值之间的误差,并分析产生误差的原因。

(3)
有噪音数据带有偏差,导致算出的运动轨迹也具有一定偏差。请比较自己所用的三种数学模型的稳定性。

(4)
根据所建立的数学模型,计算第168秒时B船的方位、X和Y的坐标、运动速度,并给出三种模型输出结果所需的时间。

(5)
如果删去每组采样数据表的后半部分,请重新建模模型回答第(2)问,并预测下一时刻B的方位和运动速度。

看到这题,首先想到的是肯定选第一题,因为涉及的算法较少,而且是线性的,比较容易。但是实践起来才发现,两题难度相当。因为第一题数据量是万级的,不同的油井其曲线特征是不同的,所以分析的方法不确定性很强。因此选择了第二题。反正算法什么的是逃不掉的,干就完事了。

启发:实际问题都有其困难的点,突破它才是关键。

4.2 学习matlab

首先下载matlab(简称ml)是一个很耗费精力的事情,因为网上虽说有资源,但是下载过程中总会出现这样那样的问题,让人十分苦恼。搞了一个晚上加第二天上午,没能成功下载。为了不拖延进度,我决定放大招——淘宝!果然,三下五除二就给我搞定了,还是最新版的(中间有点小曲折,千万不要把大文件放在移动硬盘里运行,别问我怎么知道的)
拿到ml的我如获至宝,抓紧去B站找了个教程潜心学习。不得不说,比看网课有趣多了!现在已经基本了解ml的操作界面以及语言特征了,越学越觉得是个好东西。我现在需要以任务为导向,多多实践,早日把东西做出来。
再次安利小破站视频讲的真的很系统
总结:

  1. 有兴趣才有动力
  2. 对照式学习,以任务为驱动才是高效的

(to be continued…)

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
北京理工大学为了提升学生们对C语言的学习兴趣,决定举办一场C语言比赛。比赛主要是通过学生们的编程能力和创新思维来评判,旨在提高学生们对C语言的掌握程度,并培养他们的动手实践能力。 首先,比赛将分为初赛和决赛两个阶段。在初赛阶段,学生们将参与一场理论考试,测试他们对C语言基础知识的掌握程度。通过初赛选拨出的前若干名学生将进入决赛阶段。 在决赛阶段,学生们将面对编程挑战。每个参赛者将有一天的时间设计和完成一个由组委会提供的编程项目。这个项目将要求学生们综合运用C语言的各种知识,包括变量、数据类型、控制结构、函数、指针等等。参赛者需要在规定时间内提交自己的程序代码,并通过演示来展示自己的成果。 评判方面,将由一位评委团队来负责,评委们将根据参赛者们的编程技巧、代码的质量、创新思维和程序的实用性等方面进行评分。评分最高的学生将被评为比赛的冠军,并有机会获得奖金和荣誉证书。 除了比赛本身,北京理工大学还将安排相关的培训和讲座,为参赛选手提供更多的学习机会。参赛学生可以借此机会与其他对C语言感兴趣的同学们交流学习,互相促进进步。 通过这场比赛,北京理工大学希望能够激发学生们学习C语言的热情和动力,提高他们的编程能力和创新思维,为他们的未来学习和工作打下坚实的基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值