当前位置: 首页 > news >正文

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

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

问题 1:

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

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

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

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

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

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

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

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

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

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

相关性结果如下所示 

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

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

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

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

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

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

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

问题 2:

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

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

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

问题 3:

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

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

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

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

问题 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.mrgr.cn/news/77761.html

相关文章:

  • Spring 框架七大模块(Java EE 学习笔记03)
  • mysql导入数据出错
  • React学习05 - redux
  • 基于MATLAB的相机内参标定及其原理——附实现教程
  • 【freertos】FreeRTOS时间管理
  • 数字IC后端低功耗设计实现案例分享(3个power domain,2个voltage domain)
  • IDEA算法的详细介绍及Python实现
  • 2024 APMCM亚太数学建模C题 - 宠物行业及相关产业的发展分析和策略 (python 代码+matlab代码)
  • 乐理的学习(和弦)
  • c++11的动态类型
  • 二叉树相关OJ题练习
  • 2024 APMCM亚太数学建模C题 - 宠物行业及相关产业的发展分析和策略 完整参考论文(1)
  • DrissionPage爬虫工具教程
  • Node基本使用
  • java学习记录12
  • <OS 有关> ubuntu 24 不同版本介绍 安装 Vmware tools
  • 项目实践----springboot中设计基于Redisson的分布式锁注解
  • 实用功能,觊觎(Edge)浏览器的内置截(长)图功能
  • oracle排查长时间没提交的事务造成的阻塞案例
  • Spring循环依赖如何解决的?
  • Pytorch使用手册-Datasets DataLoaders(专题三)
  • 学习日志015--python单链表
  • Mybatis,Druid,lombok
  • hhdb数据库介绍(10-1)
  • 瑞佑液晶控制芯片RA6807系列介绍 (三)软件代码详解 Part.8(实现淡入淡出效果)
  • Pytorch使用手册-快速开始(专题一)