2024年MathorCup妈妈杯数学建模思路D题思路解析+参考成品

1 赛题思路

(赛题出来以后第一时间在群内分享,点击下方群名片即可加群)

2 比赛日期和时间
报名截止时间:2024年4月11日(周四)12:00

比赛开始时间:2024年4月12日(周五)8:00

比赛结束时间:2024年4月16日(周二)9:00

3 组织机构
主办单位:中国优选法统筹法与经济数学研究会

中国优选法统筹法与经济数学研究会是在中国科学技术协会直接领导下的学术性社会团体,是国家一级学会。学会由华罗庚教授于1981年发起成立,至今成立了评价方法与应用、项目管理、计算机模拟、统筹、管理决策与信息系统、工业工程、高等教育管理、数学教育、经济数学与管理数学、应急管理、灰色系统研究,复杂系统研究等十余个专业分会。竞赛是由中国优选法统筹法与经济数学研究会主办,MathorCup高校数学建模挑战赛组委会具体负责竞赛的组织。

4 建模常见问题类型


趁现在赛题还没更新,给大家汇总一下建模经常使用到的数学模型,题目八九不离十基本属于一下四种问题

4.1 分类问题

神经网络分类:

BP 神经网络是一种神经网络学习算法。其由输入层、中间层、输出层组成的阶层型神经网络,中间层可扩展为多层。RBF(径向基)神经网络:径向基函数(RBF-Radial Basis Function)神经网络是具有单隐层的三层前馈网络。它模拟了人脑中局部调整、相互覆盖接收域的神经网络结构。感知器神经网络:是一个具有单层计算神经元的神经网络,网络的传递函数是线性阈值单元。主要用来模拟人脑的感知特征。线性神经网络:是比较简单的一种神经网络,由一个或者多个线性神经元构成。采用线性函数作为传递函数,所以输出可以是任意值。自组织神经网络:自组织神经网络包括自组织竞争网络、自组织特征映射网络、学习向量量化等网络结构形式。K近邻算法: K最近邻分类算法,是一个理论上比较成熟的方法,也是最简单的机器学习算法之一。

import numpy as np

# 定义神经网络类
class NeuralNetwork:
    def __init__(self):
        # 随机初始化权重
        np.random.seed(1)
        self.weights = 2 * np.random.random((3, 1)) - 1

    # Sigmoid激活函数
    def sigmoid(self, x):
        return 1 / (1 + np.exp(-x))

    # Sigmoid的导数
    def sigmoid_derivative(self, x):
        return x * (1 - x)

    # 训练神经网络
    def train(self, inputs, outputs, iterations):
        for iteration in range(iterations):
            # 正向传播
            output = self.predict(inputs)

            # 计算误差
            error = outputs - output

            # 反向传播
            adjustment = np.dot(inputs.T, error * self.sigmoid_derivative(output))

            # 更新权重
            self.weights += adjustment

    # 预测
    def predict(self, inputs):
        return self.sigmoid(np.dot(inputs, self.weights))

# 训练数据集
training_inputs = np.array([[0, 0, 1],
                            [1, 1, 1],
                            [1, 0, 1],
                            [0, 1, 1]])

training_outputs = np.array([[0, 1, 1, 0]]).T

# 初始化神经网络
neural_network = NeuralNetwork()

print("随机初始化的权重:")
print(neural_network.weights)

# 训练神经网络
neural_network.train(training_inputs, training_outputs, 10000)

print("训练后的权重:")
print(neural_network.weights)

# 测试新数据
print("新数据预测结果:")
print(neural_network.predict(np.array([1, 0, 0])))

4.2 优化问题

研究线性约束条件下线性目标函数的极值问题的数学理论和方法。英文缩写LP。它是运筹学的一个重要分支,广泛应用于军事作战、经济分析、经营管理和工程技术等方面。建模方法:列出约束条件及目标函数;画出约束条件所表示的可行域;在可行域内求目标函数的最优解及最优值。

非线性规划:

非线性规划是具有非线性约束条件或目标函数的数学规划,是运筹学的一个重要分支。非线性规划研究一个 n元实函数在一组等式或不等式的约束条件下的极值问题,且 目标函数和约束条件至少有一个是未知量的非线性函数。目标函数和约束条件都是 线性函数的情形则属于线性规划。

整数规划:

规划中的变量(全部或部分)限制为整数,称为整数规划。若在线性模型中,变量限制为整数,则称为整数线性规划。目前所流行的求解整数规划的方法往往只适用于整数线性规划。一类要求问题的解中的全部或一部分变量为整数的数学规划。从约束条件的构成又可细分为线性,二次和非线性的整数规划。

from pulp import *

# 创建整数规划问题
prob = LpProblem("Integer_Problem", LpMaximize)

# 定义决策变量
x1 = LpVariable("x1", lowBound=0, cat='Integer')
x2 = LpVariable("x2", lowBound=0, cat='Integer')

# 定义目标函数
prob += 3*x1 + 2*x2, "Objective_Function"

# 添加约束条件
prob += 2*x1 + x2 <= 10
prob += x1 + 3*x2 <= 12

# 解决问题
prob.solve()

# 输出结果
print("Status:", LpStatus[prob.status])
print("Optimal values:")
for v in prob.variables():
    print(v.name, "=", v.varValue)
print("Optimal value of the objective function:", value(prob.objective))

4.3 预测问题

灰色预测

灰色预测是就灰色系统所做的预测。是一种对含有不确定因素的系统进行预测的方法。灰色预测通过鉴别系统因素之间发展趋势的相异程度,即进行关联分析,并对原始数据进行生成处理来寻找系统变动的规律,生成有较强规律性的数据序列,然后建立相应的微分方程模型,从而预测事物未来发展趋势的状况。其用等时距观测到的反映预测对象特征的一系列数量值构造灰色预测模型,预测未来某一时刻的特征量,或达到某一特征量的时间。

import numpy as np

# 灰色预测模型
def grey_prediction(data):
    n = len(data)
    
    # 累加生成序列
    accumulation = np.cumsum(data)
    
    # 计算累加生成序列的一次紧邻均值生成序列
    avg_accumulation = 0.5 * (accumulation[:-1] + accumulation[1:])
    
    # 建立累加生成序列的一次紧邻均值生成序列与原始数据的关系
    x0 = data[0]
    B = np.vstack((-avg_accumulation, np.ones(n-1))).T
    Yn = data[1:]
    
    # 求解参数
    a, u = np.dot(np.linalg.inv(np.dot(B.T, B)), np.dot(B.T, Yn))
    
    # 模型检验
    Pn = (x0 - u/a) * np.exp(-a * np.arange(1, n + 1)) + u/a
    
    # 预测
    predict = np.hstack((x0, np.diff(Pn).cumsum()))
    
    return predict

# 示例数据
data = np.array([120, 130, 125, 135, 140, 145])

# 灰色预测
prediction = grey_prediction(data)

# 输出预测结果
print("原始数据:", data)
print("灰色预测结果:", prediction)

4.4 评价问题

主成分分析法(降维)

是一种统计方法。通过正交变换将一组可能存在相关性的变量转换为一组线性不相关的变量,转换后的这组变量叫主成分。在用统计分析方法研究多变量的课题时,变量个数太多就会增加课题的复杂性。人们自然希望变量个数较少而得到的信息较多。在很多情形,变量之间是有一定的相关关系的,当两个变量之间有一定相关关系时,可以解释为这两个变量反映此课题的信息有一定的重叠。主成分分析是对于原先提出的所有变量,将重复的变量(关系紧密的变量)删去多余,建立尽可能少的新变量,使得这些新变量是两两不相关的,而且这些新变量在反映课题的信息方面尽可能保持原有的信息。设法将原来变量重新组合成一组新的互相无关的几个综合变量,同时根据实际需要从中可以取出几个较少的综合变量尽可能多地反映原来变量的信息的统计方法叫做主成分分析或称主分量分析,也是数学上用来降维的一种方法。

import numpy as np
from sklearn.decomposition import PCA

# 示例数据
data = np.array([[1, 2, 3],
                 [4, 5, 6],
                 [7, 8, 9],
                 [10, 11, 12]])

# 创建 PCA 模型,指定主成分数量
pca = PCA(n_components=2)

# 拟合数据并进行主成分分析
pca.fit(data)

# 转换数据到主成分空间
transformed_data = pca.transform(data)

# 主成分
components = pca.components_

# 方差解释比
explained_variance_ratio = pca.explained_variance_ratio_

# 输出结果
print("原始数据:")
print(data)
print("\n主成分:")
print(components)
print("\n转换后的数据:")
print(transformed_data)
print("\n方差解释比:")
print(explained_variance_ratio)

5 建模资料 

六、获取方式

思路及参考成品将在下方名片群文件中更新。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

oracle hang分析使用

oracle hang分析测试 使用hang分析大部分原因在于产生锁资源的争用 1-2:只有hanganalyze输出&#xff0c;不dump任何进程 3&#xff1a;Level2Dump出在IN_HANG状态的进程 4&#xff1a;Level3Dump出在等待链里面的blockers(状态为LLEAF/LEAF_NW/IGN_DMP&#xff09; 5&…

软件设计师29--并发控制

软件设计师29--并发控制 考点1&#xff1a;事务的特性例题&#xff1a; 考点2&#xff1a;并发问题并发产生的问题丢失更新不可重复读问题读“脏”数据 考点3&#xff1a;封锁协议例题&#xff1a; 考点1&#xff1a;事务的特性 原子性&#xff08;Atomicity&#xff09;&…

好文阅读-数据库-CREATE TABLE AS

添加链接描述 收获如下&#xff1a; 1 DROP DELETE TRUNCATE对比 2 CREATE TABLE AS 这种方式创建表不会复制表的索引&#xff0c;主键&#xff0c;外键约束&#xff0c;包括自增ID。因此应该使用 CREATE TABLE LIKE。 3 数据的处理可以通过建立临时表的方式&#xff0c;之后还…

【实战解析】YOLOv9全流程训练至优化终极指南

【实战解析】YOLOv9全流程训练至优化终极指南 0.引言1.环境准备2.数据预处理&#xff08;1&#xff09;数据准备&#xff08;2&#xff09;按比例划分数据集&#xff08;3&#xff09;xml转txt脚本&#xff08;4&#xff09;配置文件 3.模型训练&#xff08;1&#xff09;单GPU…

超越基准 | 基于每个高斯变形的3D高斯溅射方法及其高效训练策略

作者&#xff1a;小柠檬 | 来源&#xff1a;3DCV 在公众号「3DCV」后台&#xff0c;回复「原论文」可获取论文pdf 添加微信&#xff1a;dddvision&#xff0c;备注&#xff1a;3D高斯&#xff0c;拉你入群。文末附行业细分群 详细内容请关注3DCV 3D视觉精品课程&#xff1a;…

ctfshow web入门 命令执行 web53--web77

web53 日常查看文件 怎么回事不让我看十八 弄了半天发现并不是很对劲&#xff0c;原来我发现他会先回显我输入的命令再进行命令的回显 ?cnl${IFS}flag.php||web54 绕过了很多东西 基本上没有什么命令可以用了但是 grep和?通配符还可以用 ?cgrep${IFS}ctfshow${IFS}???…

JavaCollection集合--单列集合——JavaCollections类

目录 集合--->容器 代码 运行 Java集合API 单列集合 Collectio接口 List接口实现类 ArrayList 数组实现 概念 代码 运行 代码 ArrayList方法 代码 运行 LinkedList 链表实现 概念 代码 运行 Vector 数组实现 概念 代码 运行 List接口集合…

知识推理技术解析与实战

目录 一、引言二、知识推理基础知识表示方法本体论语义网络图形数据库 推理机制概述演绎推理归纳推理类比推理 实践代码示例 三、知识推理的核心技术自动推理系统规则引擎推理算法 知识图谱的运用构建知识图谱知识推理与查询 推理算法深度分析转导推理逻辑推理概率推理 实践代码…

java智慧校园系统源码+SaaS智慧学校系统源码+PC端

java智慧校园系统源码SaaS智慧学校系统源码PC端 有演示&#xff0c;可正常上线运营可授权PC端&#xff0c;SaaS服务模式开发环境&#xff1a;Javaspringbootvueelement-uimysql开发语言&#xff1a;JavaspringbootVUE 小程序 全套源码 建设一个一流的智慧校园&#xff0c;使先进…

MuJoCo 入门教程(五)Python 绑定

系列文章目录 前言 本笔记本提供了使用本地 Python 绑定的 MuJoCo 物理入门教程。 版权声明 DeepMind Technologies Limited 2022 年版权所有。 根据 Apache License 2.0 版&#xff08;以下简称 "许可协议"&#xff09;授权&#xff1b;除非遵守许可协议&am…

操作系统1

概念 操作系统 组织和管理计算机系统中的软件和硬件&#xff0c;组织计算机系统工作流程、控制程序执行&#xff0c;提供给用户工作环境和友好的接口。 3个作用&#xff1a; 管理计算机中运行的程序和分配各种软硬件资源为用户提供友善的人机洁界面为应用程序的开发和运行提供…

二维相位解包理论算法和软件【全文翻译- 噪声滤波(3.53.6)】

3.5 噪音过滤 在本节中,我们将简要讨论相位数据的滤波问题。除了提高信噪比之外,噪声滤波还有助于减少残差的数量,从而大大简化相位解包过程。不过,我们必须注意到一个重要的问题。正如我们在第 1 章中指出的,相位本身并不是信号。它只是信号的一种属性。因此,应该过滤的…

ACM ICPS独立出版 | 第三届智能无人系统与人工智能国际会议(SIUSAI 2024)

会议简介 Brief Introduction 2024年第三届智能无人系统与人工智能国际会议(SIUSAI 2024) 会议时间&#xff1a;2024年5月17日-19日 召开地点&#xff1a;中国青岛 大会官网&#xff1a;www.siusai.org 2024年第三届智能无人系统与人工智能国际会议(SIUSAI 2024)由青岛大学主办…

基于java JSP 实现的固定资产管理系统

开发语言&#xff1a;Java 框架&#xff1a;ssm 技术&#xff1a;JSP JDK版本&#xff1a;JDK1.8 服务器&#xff1a;tomcat7 数据库&#xff1a;mysql 5.7 数据库工具&#xff1a;Navicat11 开发软件&#xff1a;eclipse/myeclipse/idea 系统展示 前台首页功能模块 固…

UV胶水能够粘接聚苯乙烯PS吗?

UV胶水能够粘接聚苯乙烯PS吗&#xff1f; 聚苯乙烯&#xff08;Polystyrene&#xff0c;简称PS&#xff09;是一种常见的合成聚合物&#xff0c;属于热塑性塑料。它是由苯乙烯单体聚合而成的&#xff0c;具有轻质、透明或半透明、电绝缘性好等特点。常见: 包装材料白色泡沫塑料…

[ESP32] 用RMT模块做红外遥控发射

本文采用ESP32内部只带的RMT模块作为发送红外遥控的发射器。 红外协议来自 美的R05D功能说明书&#xff1a; https://wenku.baidu.com/view/c46594141ed9ad51f01df2c3.html 通常编码格式为: L,A,A’,B,B’,C,C’, S, L,A,A’,B,B’,C,C’ T第一帧和第二帧相同采用MSB在先&…

武汉星起航深入分析市场动态,赢得跨境市场的高度认可

随着全球跨境电商的蓬勃发展&#xff0c;武汉星起航以其独到的市场洞察和深度合作模式在行业中崭露头角。公司凭借对市场趋势、消费者需求和竞争格局的敏锐洞察而声名鹊起&#xff0c;不仅成功跟随市场脉搏&#xff0c;更在竞争激烈的跨境电商领域中脱颖而出。 武汉星起航在制…

摄像头校准漫反射板提高识别物体

摄像头校准漫反射板是一种用于摄像头校准的重要工具。在摄像头成像过程中&#xff0c;由于各种因素的影响&#xff0c;如光线、角度、镜头畸变等&#xff0c;会导致摄像头成像出现偏差。为了消除这些偏差&#xff0c;提高摄像头的成像质量&#xff0c;需要使用摄像头校准漫反射…

短剧App开发:打造沉浸式观剧体验,引领短剧新风尚

在移动互联网时代&#xff0c;短视频、短剧等短内容形式正以其独特的魅力迅速崛起。为了满足广大用户对短剧内容的需求&#xff0c;我们致力于开发一款全新的短剧App&#xff0c;为用户带来沉浸式的观剧体验&#xff0c;引领短剧新风尚。 短剧App的开发&#xff0c;旨在为用户…

在python读取相邻两行的数据进行运算

​在数据处理和分析的过程中&#xff0c;我们经常需要从关系型数据库中提取数据。Python作为一种强大的编程语言&#xff0c;提供了多种库和工具来与SQL数据库进行交互。当我们需要获取SQL表中筛选后的行数时&#xff0c;可以使用Python结合SQL查询来实现。本文将详细介绍如何使…