2024 APMCM亚太数学建模C题 - 宠物行业及相关产业的发展分析和策略(详细解题思路)

在当下, 日益发展的时代,宠物的数量应该均为稳步上升,在美国出现了下降的趋势, 中国 2019-2020 年也下降,这部分变化可能与疫情相关。需要对该部分进行必要的解释说明。

问题 1:

基于附件 1 中的数据及您的团队收集的额外数据,请分析过去五年中国宠物行业按宠物类型的发展情况。并分析中国宠物行业发展的影响因素,从而建立一个合适的数学模型,预测未来三年中国宠物行业的发展。

对于问题一,一共三个问题 分析发展情况+分析影响因素+预测未来发展

分析发展情况; 使用图表(例如折线图、柱状图)对不同类型宠物(猫、狗等)的市 场增长趋势进行可视化。进行必要的文字描述,进行描述性分析即可。

例如,通过饼图或柱状图比较不同宠物类型在总市场中的占比 ;使用折线图展示不同类 型宠物数量及市场规模的变化趋势。

分析影响因素;影响中国宠物行业发展的因素可能有多个,涵盖经济、社会、文化等 多方面。首先对收集到的指标进行分类,按类别进行分析。使用皮尔逊相关系数或 Spearman 相关系数,分析各个潜在因素与宠物数量、宠物市场规模之间的相关性,从中筛选出重要的影响因素。对于部分类别含有较多的指标,可以使用数据降维的方式进行降维处理。

62c266b4102b4ea5851355172278d02d.jpeg

 宠物行业核心指标:涵盖直接描述宠物市场的指标,包括宠物类型、宠物数量、市场规 模、宠物食品、兽医服务等核心业务数据。

国际贸易相关指标:主要涉及各个国家的商品出口、进口以及商业服务进出口的数据, 反映了宠物食品出口及进口等方面的国际贸易情况。

人口与社会因素:包括人口的基本统计信息、人口结构以及年轻群体的就业情况等,能 够帮助分析宠物市场的潜在驱动因素。

经济发展与收入不平等指标:包括经济发展水平(如人均GDP)、居民消费能力,以及 衡量收入差距的基尼系数,能反映消费者的购买能力和市场潜力。

生产与消费相关指标:例如食品生产指数,可以用来评估食品生产能力对宠物食品市场 供应的影响。

相关性结果如下所示 

d5c9e5dc19fb4c6aadc2a0f95ce34f4d.pngc0c0bf17cced46269f69a93590776dea.png

预测未来发展;对于建立一个预测未来三年中国宠物行业发展的数学模型,我们需要 选择适合的模型来捕捉时间趋势及相关性。由于只有五年数据,本题目并不推荐使用机器学 习相关的方法。主要推荐使用时间序列预测、灰色模型预测、多元回归预测。下述模型会再 后续更新的论文中进行编程实现

 时间序列模型(ARIMA、SARIMA)适用情况:如果过去的数据表现出显著的时间趋势和 季节性特征。

步骤 1 使用差分方法来处理非平稳性,确保时间序列平稳。 步骤 2 使用 ACF 和 PACF 图确定合适的模型阶数(p, d, q)。 步骤 3 通过 AIC 、BIC 选择最优模型,进行拟合和预测。

多元回归模型:预测宠物市场规模并考虑多种影响因素(如经济、社会、人口等)。建 立以宠物市场规模或宠物数量为因变量的回归模型,将之前选出的特征作为自变量,分析它 们对宠物市场的影响。

灰色预测模型:单指标预测模型,适合于小样本短期预测,1982 年邓聚龙老师提出的 一种模型。

模型选择注记:第一种、第三种都是单指标预测,无法考虑其他指标的影响。第二种可 以加入其他指标的影响,但是精度不会太高。可以进行模型结合 

我们这里以灰色模型为例进行展示说明

3cbf048a4be74489abe6f474e22d412d.pngb1b3c013b6854c62820b9d6d390d46fa.png

问题 2:

近年来,欧洲国家和美国等海外宠物行业也在迅速发展。请基于附件 2 的数据及您的团队收集的额外数据,分析全球宠物行业按宠物类型的发展情况。并建立 一个合适的数学模型,预测未来三年全球对宠物食品的需求。

问题二可以看作为问题一模型的普适性研究,首先根据收集的数据析全球宠物行业按宠 物类型的发展情况。方法与问题一相同,利用可视化结果进行必要的描述性分析即可。

预测未来三年全球对宠物食品的需求,依旧可以沿用问题一的时间序列预测、灰色模型 预测、多元回归预测。可以交叉使用,例如问题一使用时间序列预测,问题二使用预测预测,其本质不变。

问题 3:

基于附件 3 中的中国宠物食品生产和出口数据,分析中国宠物食品行业的 发展情况,并预测未来三年中国宠物食品的生产和出口(不考虑经济政策的变化),结 合全球宠物食品市场的需求趋势以及中国的发展情况进行分析。

对于问题三,题目并没有要求结合自己收集的数据。对于这一题干,可以直接默认不使 用自行收集的;也可以使用自行收集的数据,针对方法不同的队伍可以有不同的理解。如果 不使用收集的数据,则对于该问题大概率只能使用单指标预测模型。对于分析中国宠物食品 行业的发展情况可以计算各年度生产量和出口量的增长率(年化增长率)以衡量行业的增速。 根据收集到的全球市场需求数据,分析宠物食品在全球不同区域的增长趋势,例如欧洲、美 国等主要市场的宠物食品需求量。

使用收集的数据,则需要从中国的发展情况出发,筛选出能够体现中国的发展情况的 指标 GPD 等指标,对各指标构建回归模型进行求解。

这里我们先以简单的预测模型 指数平滑为例进行展示说明

c7c22dfde62a4b3590d20fc76992bb50.pngc0e55723656345329a344afedf95d0ce.png

问题 4:

中国的宠物食品行业不可避免地会受到欧洲国家和美国新出台的外部经  济政策(如关税政策)的影响。为了定量分析这种影响,请建立一个合适的数学模型, 并将附件中的数据、您收集的额外数据以及上述问题中的计算结果纳入考虑。基于您的  计算结果,请为中国宠物食品行业的可持续发展制定可行的策略。

对于该问题,我们可以分为描述性分析、量化政策影响、建立情景分析模型。

·  描述性分析:了解中国宠物食品出口历史数据与政策变化的影响。

·  量化政策影响:通过数学模型(如多元回归、计量经济学模型等)来定量化政策影 响。

·  建立情景分析模型:设计不同政策情景(如关税上调、关税下调、不变)并分析它 们的影响。

为了定量分析经济政策(如关税变化)对中国宠物食品行业的影响,合适的模型包括 量经济学模型情景分析模型

多元线性回归是一个简单但非常有效的方式来量化政策因素(如关税)对宠物食品出口的影 响。

.    因变量:宠物食品出口量(亿美元)。

.    自变量

关税率(如对美国和欧洲出口的关税变化)。

宠物食品市场规模(预测结果)。

外部因素(如食品生产指数、人均 GDP 、消费支出等)。

全球需求(全球宠物食品需求量的预测)。

代码参考:

% 数据准备
clc;
clear;
close all;% 原始数据 (年份和猫狗数量)
years = 2019:2023;
data_cats = [4412, 4862, 5806, 6536, 6980];
data_dogs = [5503, 5222, 5429, 5119, 5175];% 对猫和狗的数量进行灰色预测
% 1. 对猫数量进行 GM(1,1)灰色预测
pred_cats = GM11(data_cats, 3); % 预测未来 3 年的数据% 2. 对狗数量进行 GM(1,1)灰色预测
pred_dogs = GM11(data_dogs, 3); % 预测未来 3 年的数据% 可视化原始数据与预测结果
future_years = 2024:2026;
all_years = [years, future_years];figure;% 猫的数据可视化
subplot(2,1,1);
plot(years, data_cats, 'o-b ', 'LineWidth ', 1.5);
hold on;
plot(all_years, pred_cats, '-r ', 'LineWidth ', 1.5);
title('猫数量的灰色预测'); x label('年份 ');
y label('数量 (万) '); grid on;
legend('实际数据 ', '预测数据 ', 'Location ', 'NorthWest ');% 狗的数据可视化
subplot(2,1,2);
plot(years, data_dogs, 'o-g ', 'LineWidth ', 1.5);
hold on;
plot(all_years, pred_dogs, '-r ', 'LineWidth ', 1.5);title('狗数量的灰色预测'); x label('年份 ');
y label('数量 (万) '); grid on;
legend('实际数据 ', '预测数据 ', 'Location ', 'NorthWest ');% 关键步骤结果的可视化
fprintf('关键过程结果:\n ');
fprintf('猫的预测数据:%s\n ', mat2str(pred_cats)); fprintf('狗的预测数据:%s\n ', mat2str(pred_dogs));% GM(1,1) 灰色预测函数定义
function [prediction] = GM11(data, predict_years)
% 计算累计生成序列
n = length(data);
x1 = cumsum(data);
% 构造数据矩阵 B 和向量 Y
B = [-0.5 * (x1(1:end-1) + x1(2:end)) ', ones(n-1, 1)];
Y = data(2:end) ';
% 求解参数向量 a 和 b
U = (B ' * B) \ (B ' * Y);
a = U(1);
b = U(2);
% 构造灰色预测模型的方程
x1_hat = zeros(1, n + predict_years);
x1_hat(1) = data(1);
for k = 2:n + predict_years
x1_hat(k) = (data(1) - b / a) * exp(-a * (k - 1)) + b / a;
end
% 还原预测值
prediction = [data(1), diff(x1_hat)];
prediction = prediction(1:n + predict_years);
end# 数据准备
import numpy as np
import matplotlib.pyplot as plt# 原始数据 (年份和猫狗数量)
years = np.array ([2019, 2020, 2021, 2022, 2023])
data_cats = np.array ([4412, 4862, 5806, 6536, 6980])data_dogs = np.array ([5503, 5222, 5429, 5119, 5175])plt.rcParams['font.sans-serif'] = ['SimHei']  # 使用 SimHei 字体 plt.rcParams['axes.unicode_minus'] = False  # 正确显示负号
# GM(1,1) 灰色预测函数定义
def GM11(data, predict_years):
# 计算累计生成序列 n = len(data)
x1 = np.cumsum(data)# 构造数据矩阵 B 和向量 Y
B = np.vstack((-0.5 * (x1[:-1] + x1[1:]), np.ones(n - 1))).T Y = data[1:]# 求解参数向量 a 和b
U = np.linalg.inv(B.T @ B) @ B.T @ Y a, b = U# 构造灰色预测模型的方程
x1_hat = np.zeros(n + predict_years) x1_hat[0] = data[0]
for k in range(1, n + predict_years):
x1_hat[k] = (data[0] - b / a) * np.exp (-a * k) + b / a# 还原预测值
prediction = np.diff(x1_hat, prep end=data[0]) return prediction[:n + predict_years]# 对猫和狗的数量进行灰色预测
# 1. 对猫数量进行 GM(1,1)灰色预测
pred_cats = GM11(data_cats, 3)  # 预测未来 3 年的数据# 2. 对狗数量进行 GM(1,1)灰色预测
pred_dogs = GM11(data_dogs, 3)  # 预测未来 3 年的数据# 可视化原始数据与预测结果
future_years = np.array ([2024, 2025, 2026])
all_years = np.concatenate((years, future_years)) plt.figure(fig size=(10, 8))
# 猫的数据可视化plt.subplot(2, 1, 1)
plt.plot(years, data_cats, 'o-b', linewidth=1.5, label='实际数据')
plt.plot(all_years, pred_cats, '-r', linewidth=1.5, label='预测数据')
plt.title('猫数量的灰色预测') plt.xlabel('年份')
plt.ylabel('数量 (万)') plt.grid(True)
plt.legend(loc='upper left')# 狗的数据可视化
plt.subplot(2, 1, 2)
plt.plot(years, data_dogs, 'o-g', linewidth=1.5, label='实际数据')
plt.plot(all_years, pred_dogs, '-r', linewidth=1.5, label='预测数据')
plt.title('狗数量的灰色预测') plt.xlabel('年份')
plt.ylabel('数量 (万)') plt.grid(True)
plt.legend(loc='upper left')plt.tight_layout() plt.show()# 关键步骤结果的可视化  print('关键过程结果:')
print(f'猫的预测数据: {pred_cats}') print(f'狗的预测数据: {pred_dogs}')

 

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Git简单介绍

一、 Git介绍与安装 1.1 Git简介 Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。 1.2集中式(SVN) VS 分布式(git) 集中式版本控制系统,版本库是集中存放在中央服务器的,工作时要先从中央…

CSS之3D转换

三维坐标系 三维坐标系其实就是指立体空间,立体空间是由3个轴共同组成的。 x轴:水平向右注意:x右边是正值,左边是负值 y轴:垂直向下注意:y下面是正值,上面是负值 z轴:垂直屏幕注意:往外面是正值,往里面是负值 3D移动 translat…

kafka生产者和消费者命令的使用

kafka-console-producer.sh 生产数据 # 发送信息 指定topic即可 kafka-console-producer.sh \ --bootstrap-server bigdata01:9092 \ --topic topicA # 主题# 进程 29124 ConsoleProducer kafka-console-consumer.sh 消费数据 # 消费数据 kafka-console-consumer.sh \ --boo…

基于Springboot的心灵治愈交流平台系统的设计与实现

基于Springboot的心灵治愈交流平台系统 介绍 基于Springboot的心灵治愈交流平台系统,后端框架使用Springboot和mybatis,前端框架使用Vuehrml,数据库使用mysql,使用B/S架构实现前台用户系统和后台管理员系统,和不同级别…

【人工智能】Python常用库-Scikit-learn常用方法教程

Scikit-learn 是一个功能强大的机器学习库,支持数据预处理、分类、回归、聚类、降维等功能,广泛用于模型开发与评估。以下是 Scikit-learn 的常用方法及详细说明。 1. 安装与导入 安装 Scikit-learn: pip install scikit-learn导入基本模块…

Tcon技术和Tconless技术介绍

文章目录 TCON技术(传统时序控制器)定义:主要功能:优点:缺点: TCONless技术(无独立时序控制器)定义:工作原理:优点:缺点: TCON与TCONl…

计算机基础(下)

内存管理 内存管理主要做了什么? 操作系统的内存管理非常重要,主要负责下面这些事情: 内存的分配与回收:对进程所需的内存进行分配和释放,malloc 函数:申请内存,free 函数:释放内存…

【青牛科技】TS223 单触摸键检测IC

概 述 : TS223是 触 摸 键 检 测 IC, 提 供 1个 触 摸 键 。 触 摸 检 测 IC是 为 了用 可 变 面 积 的 键 取 代 传 统 的 按 钮 键 而 设 计 的 。低 功 耗 和 宽 工 作 电压是 触 摸 键 的 DC和 AC特 点 。TS223采 用 SSOP16、 SOT23-6的 封 装 形 式…

CUDA补充笔记

文章目录 一、不同核函数前缀二、指定kernel要执行的线程数量三、线程需要两个内置坐标变量来唯一标识线程四、不是blocksize越大越好,上限一般是1024个blocksize 一、不同核函数前缀 二、指定kernel要执行的线程数量 总共需要线程数是: 1 * N N个线程…

“华为杯”研究生数学建模比赛历年赛题汇总(2004-2024)

文章目录 赛题链接历年赛题2004年赛题2005年赛题2006年赛题2007年赛题2008年赛题2009年赛题2010年赛题2011年赛题2012年赛题2013年赛题2014年赛题2015年赛题2016年赛题2017年赛题2018年赛题2019年赛题2020年赛题2020年赛题2021年赛题2022年赛题2023年赛题2024年赛题 赛题链接 部…

Python学习指南 + 谷歌浏览器如何安装插件

找往期文章包括但不限于本期文章中不懂的知识点: 个人主页:我要学编程(ಥ_ಥ)-CSDN博客 所属专栏: Python 目录 前言 Python 官方文档的使用 谷歌浏览器中如何安装插件 前言 在学习Python时,我们可能会出现这样的困惑&#x…

java写一个石头剪刀布小游戏

石头剪刀布是一款经典的手势游戏,通常由两人参与,玩法简单且充满趣味。玩家通过出示手势代表“石头”、“剪刀”或“布”,并根据规则比较手势决定胜负。它广泛用于休闲娱乐、决策或解压活动。 一、功能简介 用户与计算机对战。 用户输入选择:石头、剪刀或布。 计算机随机生…

docker如何安装redis

第一步 如果未指定redis,则安装的是最新版的 docker pull redis 创建一个目录 mkdir /usr/local/docker/redis 然后直接可以下载redis,这是方式确实不怎么好,应该找在官网上找对应的redis配置文件 wget http://download.redis.io/redis-stab…

【作业九】RNN-SRN-Seq2Seq

点击查看作业内容 目录 1 实现SRN (1)使用numpy实现 (2)在(1)的基础上,增加激活函数tanh (3)使用nn.RNNCell实现 (4)使用nn.RNN实现 2 使用R…

利用Docker容器技术部署发布web应用程序

Docker是什么? docker 是一个开源的应用容器引擎,可以帮助开发者打包应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何…

【AI学习】Mamba学习(十八):S6的硬件感知设计

上一篇Mamba的文章提到,S6 models这个名称的由来是:S4 models with a selection mechanism and computed with a scan。 所以,S6模型首先是选择机制:先前模型的一个关键限制对选择性复制和归纳等重要合成任务不够适用&#xff0c…

Bug Fix 20241122:缺少lib文件错误

今天有朋友提醒才突然发现 gitee 上传的代码存在两个很严重,同时也很低级的错误。 因为gitee的默认设置不允许二进制文件的提交, 所以PH47框架下的库文件(各逻辑层的库文件),以及Stm32Cube驱动的库文件都没上传到Gi…

实现Excel文件和其他文件导出为压缩包,并导入

导出 后端&#xff1a; PostMapping("/exportExcelData")public void exportExcelData(HttpServletRequest request, HttpServletResponse response, RequestBody ResData resData) throws IOException {List<Long> menuIds resData.getMenuIds();List<Co…

4.4 JMeter 请求参数类型详解

欢迎大家订阅【软件测试】 专栏&#xff0c;开启你的软件测试学习之旅&#xff01; 文章目录 前言1 参数&#xff08;键值对形式&#xff09;2 消息体数据&#xff08;JSON/XML 格式&#xff09;3 文件上传 前言 在使用 JMeter 进行接口测试时&#xff0c;常见的请求参数类型主…

【山大909算法题】2014-T1

文章目录 1.原题2.算法思想3.关键代码4.完整代码5.运行结果 1.原题 为带表头的单链表类Chain编写一个成员函数Reverse&#xff0c;该函数对链表进行逆序操作&#xff08;将链表中的结点按与原序相反的顺序连接&#xff09;&#xff0c;要求逆序操作就地进行&#xff0c;不分配…