数学建模初等模型应用

news2025/7/18 8:28:23

一、目的

掌握初等模型的建模方法,对简单的初等模型能借助Matlab工具软件进行辅助建模、求解和检验。

二、实验内容与设计思想(设计思路、主要代码分析)

1、预测鱼的质量
(1)设计思路:使用线性回归模型预测鱼的质量,基于其身长和胸围作为输入特征。通过最小二乘法拟合模型,推导出一个线性方程,用于对未知样本的质量进行预测。
(2)代码实现数据准备:将鱼的身长、胸围和质量数据这些数据以向量的形式存储,以便后续的计算。
设计矩阵构建:构建设计矩阵,包含输入特征(身长和胸围)及一个常数项,用于线性回归分析。
N = numel(length); X = [ones(N, 1), length, girth];
这里,N表示样本数量,通过numel函数获取。X是设计矩阵,它的第一列为常数1(表示截距项),第二列为身长,第三列为胸围。这种构建方式是线性回归中常见的形式,使得模型可以通过线性组合来表示。
线性回归模型拟合:利用最小二乘法公式b = (X’ * X)(X’ * weight);进行参数估计,以得到最佳的线性回归系数。这些系数能够帮助我们构建预测模型。
模型预测:使用拟合得到的模型对新的身长和胸围数据进行质量预测。
2、录像机
(1)设计思路:
数据收集与处理:收集录像机在不同时间点的计数器读数,形成一组时间与读数的数据对。这些数据将用作分析录像带的使用情况。
插值法:由于原始数据点有限,为了获得更平滑的曲线,使用插值法(在这里使用的是样条插值’spline’),可以在给定时间点估算出相应的计数器读数。
时间计算:基于当前计数器读数计算已经用掉的时间,然后与录像带的总时间进行对比,得到剩余时间。利用插值的结果进一步估算在剩余时间内计数器的读数。
最后,通过比较剩余读数和当前读数,判断剩余时间是否足够录制一小时的节目。
(2)原始数据表示:使用两个数组t和n分别表示时间(分钟)和对应的计数器读数。
插值计算:使用linspace生成细分时间点tt,并通过spline插值方法获取对应的计数器读数nn。
绘图:使用MATLAB的绘图功能,将原始数据点和插值结果绘制在同一图形中,以便直观展示读数变化。
剩余时间计算:通过当前计数器读数计算已经用掉的时间,并求出录像带的剩余时间。
通过插值法获取在剩余时间内的读数,并与当前读数进行比较,给出是否足够录制一小时节目的结论。

三、实验使用环境(本次实验所使用的平台和相关软件)

Matlab

四、实验步骤和调试过程

1、预测鱼的质量
在这里插入图片描述

N = numel(length);:计算数据点的数量,这里为8。
X = [ones(N, 1), length, girth]:构造设计矩阵 X。在这个矩阵中,第一列全为1(用于线性回归中的截距项),第二列是鱼的身长,第三列是鱼的胸围。最终的矩阵 X 的维度为 8x3,每一行代表一个样本,每一列代表一个变量。
b = (X’ * X)(X’ * weight);:这是最小二乘法的标准计算方式。首先计算 X 的转置 X’,然后计算 X’ * X 和 X’ * weight。接着使用‘ \’ 进行矩阵左除,从而解得参数 b。b 是一个包含线性回归系数的向量,具体包括截距和斜率。
a0:截距项,即当身长和胸围为0时的预测质量。
a1:身长的回归系数,表示身长每增加一单位cm,预测质量的增加量g。
a2:胸围的回归系数,表示胸围每增加一单位cm,预测质量的增加量g。
y = a0+a1mlength+a2mgirth;根据建立的回归模型,用 mlength 和 mgirth 计算预测的质量 y。

在这里插入图片描述
更改几个身长和胸围的数据,不难看出与表格质量数据近似。

2、录像机
在这里插入图片描述

tt:使用 linspace 创建了一个从0到184分钟的等间距的1000个点的数组,方便绘图和插值。
nn:使用 interp1 进行样条插值(‘spline’),生成在 tt 这些时间点对应的计数器读数。这一步使得拟合曲线更加平滑。
plot(tt, nn, ‘r-’, ‘DisplayName’, ‘拟合曲线’):用红色线绘制拟合的插值曲线。
current_reading = 4450:假设当前计数器的读数为4450。
elapsed_time = 184 * (current_reading / 6061):计算已经用掉的时间。根据比例关系,将当前读数与最大读数6061进行比较,得出已用掉的时间。
remaining_time = 180 - elapsed_time;:计算录像带的剩余时间。
if remaining_time < 0:检查剩余时间是否小于0,如果是,输出“录像带已用完!”。
remaining_reading = interp1(t, n, elapsed_time + remaining_time, ‘linear’);:如果还有剩余时间,使用线性插值计算在已用时间加剩余时间的情况下,计数器的读数。
if (remaining_reading - current_reading) >= 1000:检查剩余的读数是否能支持录制1小时的节目(即至少增加1000的计数器读数),如果条件成立,输出“剩余时间足够录制1小时节目。否则,输出“剩余时间不足以录制1小时节目。”。
在这里插入图片描述
在这里插入图片描述

结合图像和计算结果可得出结论。

五、小结

实验中遇到的问题及解决过程:
1、在进行线性回归时,发现部分身长和胸围值超出了原数据范围,导致预测结果不合理。
解决过程:添加数据有效性检查,确保输入值在合理范围内,并使用数据过滤技术剔除异常值。
2、在选择插值方法时,初步使用线性插值,发现拟合曲线不够光滑,存在明显的跳变。
解决过程:更改为样条插值方法,得到更平滑的拟合结果。

实验体会和收获:
通过本次实验,我认识到数据预处理在分析中的重要性,尤其是格式和范围的有效性直接影响模型的预测结果。同时,实验让我深刻体会到理论知识与实际操作的结合,实际操作中遇到的各种问题促使我不断调整和完善分析方法。此外,我在问题解决过程中锻炼了逻辑思维能力,学会了如何系统地分析问题并提出解决方案。这些经验为我今后的数据分析和模型建立奠定了良好的基础。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2376023.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【MCP教程系列】SpringBoot 搭建基于 Spring AI 的 SSE 模式 MCP 服务

原文地址&#xff1a;https://developer.aliyun.com/article/1662946 在当今快速发展的AI技术背景下&#xff0c;如何高效地集成模型能力成为开发者关注的重点。本文将手把手教你如何基于 Spring AI 搭建支持 SSE&#xff08;Server-Sent Events&#xff09;模式的 MCP 服务 相…

利用散点图探索宇航员特征与太空任务之间的关系

利用散点图探索宇航员特征与太空任务之间的关系 import matplotlib.pyplot as plt import numpy as np import pandas as pdfrom flexitext import flexitext from matplotlib.patches import FancyArrowPatchplt.rcParams.update({"font.family": "Corbel&quo…

Qwen集成clickhouse实现RAG

一、RAG概要 RAG&#xff08;Retrieval-Augmented Generation&#xff0c;检索增强生成&#xff09; 是一种结合了信息检索技术与语言生成模型的人工智能技术。旨在通过检索相关文档来增强大模型的生成能力&#xff0c;从而提高预测的质量和准确性。RAG模型在生成文本或回答…

Excel分组计算求和的两种实现方案

文章目录 背景样例数据方案一、函数求和实现步骤缺点 方案二、数据透视表实现步骤优点 背景 在Excel文档中&#xff0c;经常会进行数据的求和计算&#xff0c;可使用不同的方式实现&#xff0c;记录下来&#xff0c;方便备查。 样例数据 已有商品销量信息&#xff0c;包含销…

LLM定制新路径:微调与上下文学习的博弈与融合

在当今人工智能的浪潮中&#xff0c;大型语言模型&#xff08;LLMs&#xff09;已成为推动行业进步的关键力量。无论是自然语言处理、文本生成还是多模态应用&#xff0c;LLMs都在展现着它们的强大能力。然而&#xff0c;当我们将这些强大的模型应用于特定的下游任务时&#xf…

嵌入式中深入理解C语言中的指针:类型、区别及应用

在嵌入式开发中,C语言是一种基础且极为重要的编程语言,其中指针作为一个非常强大且灵活的工具,广泛应用于内存管理、动态数据结构的实现以及函数参数的传递等方面。然而,尽管指针的使用极为常见,很多开发者在掌握其基本使用后,往往对指针的深入理解还不够。本文将深入分析…

香港维尔利健康科技集团成都区域运营中心投入使用,西南市场战略全面提速

近日&#xff0c;香港维尔利健康科技集团正式宣布&#xff0c;其位于四川成都的西南区域运营中心已全面建成并投入使用。该中心将集设备调配、技术支持、客户服务、运营管理及数字健康平台维护于一体&#xff0c;成为集团在中国内地智慧医疗战略版图中的关键枢纽&#xff0c;对…

STM32CubeMX HAL库 串口的使用

1.配置 2.开启中断后&#xff0c;生成代码 3.串口的接收 1&#xff09;.开启空闲中断接收 __HAL_UART_ENABLE_IT(huart, UART_IT_IDLE); // 关键步骤&#xff1a;启用空闲中断 2&#xff09;. 启动接收 调用 HAL_UARTEx_ReceiveToIdle_IT 启动异步接收&#xff0c;可以使用…

flutter 视频通话flutter_webrtc

flutter 比较热门的库 flutter_webrtc | Flutter package agora_rtc_engine | Flutter package 我使用的是flutter_webrtc 下面是官方推荐的demo库 GitHub - flutter-webrtc/flutter-webrtc-demo: Demo for flutter-webrtc 其中 https://demo.cloudwebrtc.com:8086/ 已经停…

Babylon.js学习之路《四、Babylon.js 中的相机(Camera)与视角控制》

文章目录 1. 引言&#xff1a;为什么相机是 3D 场景的“眼睛”&#xff1f;1.1 相机的核心作用1.2 常见相机类型概览 2. 相机基础参数解析2.1 通用属性2.2 相机坐标系 3. 详解常用相机类型3.1 自由相机&#xff08;FreeCamera&#xff09;3.2 弧形旋转相机&#xff08;ArcRotat…

【Redis实战篇】秒杀优化

1. 秒杀优化-异步秒杀思路 我们来回顾一下下单流程 当用户发起请求&#xff0c;此时会请求nginx&#xff0c;nginx会访问到tomcat&#xff0c;而tomcat中的程序&#xff0c;会进行串行操作&#xff0c;分成如下几个步骤 1、查询优惠卷 2、判断秒杀库存是否足够 3、查询订单…

Trae IDE:AI深度集成的智能开发环境

&#xff08;以高效人机协作重塑编程体验&#xff09; 概述 Trae IDE&#xff08;发音 /treɪ/&#xff09;是一款深度集成AI能力的现代化开发工具&#xff0c;结合传统IDE的完备功能与前沿AI技术&#xff0c;提供智能问答、代码自动补全、跨文件编程及AI Agent驱动的自动化开…

【大模型】AI智能体Coze 知识库从使用到实战详解

目录 一、前言 二、知识库介绍 2.1 coze 知识库功能介绍 2.2 coze 知识库应用场景 2.3 coze 知识库类型 2.4 coze 知识库权限说明 2.5 coze 知识库与记忆对比 2.6 知识库的使用流程 三、知识库创建与使用 3.1 创建知识库入口 3.2 创建文本知识库 3.2.1 上传文件 3.…

【springcloud学习(dalston.sr1)】服务消费者通过restTemplate来访问服务提供者(含源代码)(五)

该系列项目整体介绍及源代码请参照前面写的一篇文章​​​​​​【springcloud学习(dalston.sr1)】项目整体介绍&#xff08;含源代码&#xff09;&#xff08;一&#xff09; 一般情况下&#xff0c;我们远程调用服务&#xff0c;可以用restTemplate来进行http请求的访问。接…

打破边界,智评未来:AI如何重塑学科交叉融合的评价体系?

目录: 引言:当“学科孤岛”遇上“创新浪潮”透视现状:学科交叉融合的“热望”与“冰壁”他山之石:国际交叉融合模式与评价的“镜与灯”AI赋能:重构学科交叉评价的内涵、要素与方法论 4.1. 基本内涵:从“知识叠加”到“价值涌现”4.2. 评价要素:超越“单点指标”的“网络…

ULVAC C30HMVRT系列冷冻泵和超捕集器压缩机组 安装、操作、维护和故障排除说明 含电路图

ULVAC C30HMVRT系列冷冻泵和超捕集器压缩机组 安装、操作、维护和故障排除说明 含电路图

ORACLE查看归档是否打开

一、使用V$DATABASE视图 SELECT log_mode FROM v$database; 结果说明&#xff1a; ARCHIVELOG - 数据库处于归档模式 NOARCHIVELOG - 数据库处于非归档模式 二、 使用v$instance视图 SELECT archiver FROM v$instance; 结果说明&#xff1a; STARTED - 归档进程已启动(归档模…

鸿蒙5.0项目开发——鸿蒙天气项目的实现(介绍)

【高心星出品】 文章目录 项目简介&#xff1a;项目运行效果图&#xff1a;主要功能&#xff1a;使用的技能点&#xff1a;开发环境&#xff1a; 项目简介&#xff1a; 这是一个基于鸿蒙系统&#xff08;HarmonyOS&#xff09;开发的天气应用&#xff0c;采用 ArkTS 语言开发&…

3Dblox

TSMC 3Dblox Introduction 3Dblox是TSMC定义的一门语言&#xff0c;目标是将物理封装系统分解为模块化的组件&#xff0c;然后进行集成 RDL : 代表interposer的部分 Die的实例化信息 堆叠信息 连接信息 thickness&#xff1a;Die与Die连接Bump的高度 RedHawk-SC-Electrothermal…

Python+大模型 day01

Python基础 计算机系统组成 基础语法 如:student_num 4.标识符要做到见名知意,增强代码的可读性 关键字 系统或者Python定义的,有特殊功能的字符组合 在学习过程中,文件名没有遵循标识符命名规则,是为了按序号编写文件方便查找复习 但是,在开发中,所有的Python文件名称必须…