首页 > 其他分享 >【2024高教社杯国赛C题】数学建模国赛建模过程+完整代码论文全解全析

【2024高教社杯国赛C题】数学建模国赛建模过程+完整代码论文全解全析

时间:2024-09-07 13:21:04浏览次数:13  
标签:land 种植 建模 crop 2024 农作物 国赛 year data

你是否在寻找数学建模比赛的突破点?数学建模进阶思路!

作为经验丰富的数学建模团队,我们将为你带来2024国赛数学建模竞赛(C题)的全面解析。这个解决方案包不仅包括完整的代码实现,还有详尽的建模过程和解析,帮助你全面理解并掌握如何解决类似问题。

完整内容在文章末尾阅读全文获取!

C题的第一问是:

假定各种农作物未来的预期销售量、种植成本、亩产量和销售价格相对于 2023 年保持稳定,每季种植的农作物在当季销售。如果某种作物每季的总产量超过相应的预期销售量,超过部分不能正常销售。请针对以下两种情况,分别给出该乡村 2024~2030 年农作物的最优种植方案,将结果分别填入 result1_1.xlsx 和 result1_2.xlsx 中:

(1) 超过部分滞销,造成浪费; (2) 超过部分按 2023 年销售价格的 50%降价出售。 为了解决问题 1,我们需要建立一个优化模型来决定在乡村的耕地上种植哪种农作物,以最大化收益。我们将考虑两种销售情况:一是超过部分滞销,二是超过部分按50%的价格降价出售。

1. 变量定义

  • $X_{ij}$: 农作物 $i$ 在地块 $j$ 上种植的面积(亩),$i \in {1, 2, ..., n}$,$j \in {1, 2, ..., m}$。

  • $Y_i$: 农作物 $i$ 每季的预期销售量(斤)。

  • $C_i$: 农作物 $i$ 的种植成本(元/亩)。

  • $P_i$: 农作物 $i$ 的销售价格(元/斤)。

  • $A_{ij}$: 农作物 $i$ 在地块 $j$ 上的亩产量(斤/亩)。

添加图片注释,不超过 140 字(可选)

添加图片注释,不超过 140 字(可选)

代码demo

import pulp

# 示例数据(需根据实际数据替换)
crops = ['wheat', 'rice', 'vegetables', 'beans']  # 作物种类
land_types = ['dry', 'irrigated', 'terrace', 'slope']  # 地块类型
years = range(2024, 2031)
seasons = [1, 2]

# 每种作物的参数(需根据实际数据替换)
crop_data = {
    'wheat': {'cost': 100, 'yield': 1.5, 'price': 200},
    'rice': {'cost': 120, 'yield': 2.0, 'price': 180},
    'vegetables': {'cost': 80, 'yield': 2.5, 'price': 150},
    'beans': {'cost': 90, 'yield': 1.8, 'price': 160}
}

# 地块信息(需根据实际数据替换)
land_data = {
    'land1': {'type': 'dry', 'area': 10},
    'land2': {'type': 'irrigated', 'area': 15},
    # 添加更多地块
}

# 定义问题
problem = pulp.LpProblem("Crop_Planning", pulp.LpMaximize)

# 定义决策变量
x = pulp.LpVariable.dicts("crop_area", ((land, crop, year, season)
                                        for land in land_data
                                        for crop in crops
                                        for year in years
                                        for season in seasons), lowBound=0, cat='Continuous')

# 目标函数
if scenario == 1:
    # 滞销情况
    profit = pulp.lpSum((crop_data[crop]['yield'] * crop_data[crop]['price'] * x[land, crop, year, season]
                         - crop_data[crop]['cost'] * x[land, crop, year, season])
                        for land in land_data for crop in crops for year in years for season in seasons)
else:
    # 降价销售
    profit = pulp.lpSum(((crop_data[crop]['yield'] * crop_data[crop]['price'] * x[land, crop, year, season] * 0.5) 
                         - crop_data[crop]['cost'] * x[land, crop, year, season])
                        for land in land_data for crop in crops for year in years for season in seasons)

problem += profit

# 约束条件
for land in land_data:
    for year in years:
        for season in seasons:
            # 地块适用性和面积限制
            problem += pulp.lpSum(x[land, crop, year, season] for crop in crops) <= land_data[land]['area']

    # 豆类作物种植
    for year_block in range(2024, 2031, 3):
        problem += pulp.lpSum(x[land, 'beans', year, season] for year in range(year_block, year_block + 3) for season in seasons) >= 1

# 求解
problem.solve()

# 输出结果
for v in problem.variables():
    if v.varValue > 0:
        print(v.name, "=", v.varValue)

print("Total Profit = ", pulp.value(problem.objective))

问题 2是综合考虑各种农作物的预期销售量、亩产量、种植成本和销售价格的不确定性以及潜在的种植风险,给出该乡村2024~2030年农作物的最优种植方案。

问题重述:在华北山区的某乡村,有四种类型的耕地,包括平旱地、梯田、山坡地和水浇地,共计1201亩。每年只能种植一季农作物,且每种作物在同一地块(含大棚)都不能连续重茬种植。另外,每个地块(含大棚)的所有土地三年内至少种植一次豆类作物。根据农作物的生长规律,种植方案应考虑到方便耕种作业和田间管理。现有16个普通大棚和4个智慧大棚,每个大棚耕地面积为0.6亩。2023年的农作物种植和相关统计数据如附件2所示。小麦和玉米未来的预期销售量有增长的趋势,平均年增长率介于5%到10%之间,其他农作物未来每年的预期销售量相对于2023年大约有±5%的变化。农作物的亩产量往往会受气候等因素的影响,每年会有±10%的变化。因受市场条件影响,农作物的种植成本平均每年增长5%左右。粮食类作物的销售价格基本稳定;蔬菜类作物的销售价格有增长的趋势,平均每年增长5%左右。食用菌的销售价格稳中有降,大约每年可下降1%~5%,特别是羊肚菌的销售价格每年下降幅度为5%。 根据以上信息,建立数学模型,综合考虑各种农作物的预期销售量、亩产量、种植成本和销售价格的不确定性以及潜在的种植风险,给出该乡村2024~2030年农作物的最优种植方案。

添加图片注释,不超过 140 字(可选)

添加图片注释,不超过 140 字(可选)

问题3初步可视化:

更多内容具体可以看看我的主页!
和 《小天数模》 团队,同名公众号 一起拿奖!里面包含本次竞赛全部思路与分析!

包含本次比赛全部题目和单题思路与代码,代码和文章会不断更新

关注小天数模,你们的支持是我更新的动力!

标签:land,种植,建模,crop,2024,农作物,国赛,year,data
From: https://blog.csdn.net/wxhzly__030/article/details/141994525

相关文章

  • 聚焦2024数博会|与天空卫士一起探索AI与数据安全的融合应用
    中国国际大数据产业博览会(简称数博会),是全球首个以大数据为主题的博览会,自2015年创办以来,经过多年的深厚沉淀,数博会已发展成为国际知名、引领前沿趋势的专业展示合作平台。2024年8月28日至30日,第十届数博会在贵阳举办。天空卫士受邀参加“数据安全产业发展”交流活动。该活动由国家......
  • 2024.9
    9.6来到了北京大学,总之预科生活开始了!宿舍条件很差,我阳台呢?室友是zphqiuly云浅。爸妈陪我来的,帮我买了点生活用品后就走了。哎呀为啥打出上一句话有一种莫名的心悸,果然以后还是要独自面对生活吗。会赢的,一定。吃完晚饭(好吧我没吃)jt和cjz来我宿舍玩,可爱捏。然后和z......
  • Base2024
    简单记录了一部分题目(记录的基本就是看了wp的)Aura酱的礼物ssrfdata伪协议格式data://text/plain,xxx能读取出内容data://text/plain;base64,xxxxxx,xxxxxx先base64解码再读取出内容@隔断当要求url开头时,使用@来分隔file=http://[email protected]源码<?phphighlig......
  • 2024.9.6 近期练习
    P5044[IOI2018]meetings会议对于\(h_i\le20\)的数据,我们每个点维护单调栈,其代价为\(x\)的时候,取的位置是一个区间。很显然已经有一个莫队算法,支持区间加,区间查询即可。然而不优。其实单调栈与笛卡尔树是相似的,考虑建出笛卡尔树。我们假设就对\([l,r]\)dp,那么取出最......
  • 【C题已出】2024全国大学生数学建模C题完整论文+每小问解题代码+可视化结果图+最终结
                           2024国赛C题2024数学建模国赛C题word版成品论文【附带完整解题代码+可视化图表】https://www.jdmm.cc/file/2711227/一 、 摘要本文针对一个复杂的农业种植规划问题,建立了一系列优化模型并提出了相......
  • 2024.08.17京东
    1.桩子与雪村子里有一些桩子,从左到右高度依次为1,1+2,1+2+3…,每两颗桩子之间的间隔为1.现在下了一场大雪,但是不知道雪下了多厚,现在给你两个数字,这是雪后某相邻两个桩子在雪面的高度,请你通过这两个数字计算雪的厚度。简单计算intmain(intargc,char*argv[]){inta,b......
  • 2024年电气工程自动化与信息处理国际会议 2024 International Conference on Electric
    文章目录一、会议详情二、重要信息三、大会介绍四、出席嘉宾五、征稿主题六、咨询一、会议详情二、重要信息大会官网:https://ais.cn/u/vEbMBz提交检索:EICompendex、IEEEXplore、Scopus2024年09月20-22日|中国武汉三轮截稿时间:2024年9月10日三、大会介绍2024......
  • 2024年人文艺术、教育与社会发展国际学术会议(HAESD 2024) 2024 International Conferen
    文章目录一、会议详情二、重要信息三、大会介绍四、出席嘉宾五、征稿主题六、咨询一、会议详情二、重要信息大会官网:https://ais.cn/u/vEbMBz提交检索:EICompendex、IEEEXplore、Scopus大会时间:2024年9月27日-29日大会地点:中国西安三、大会介绍为迎接知识经济......
  • [2024.9.6鲜花] 去码头整点热干面
    [2024.9.6鲜花]去码头整点热干面前情提要:写了几版了,都感觉太消沉了,于是写个奇怪的(?)写在开学前的鲜花,也许什么都聊,但主要聊这一个月来的破事吧相比于这段时间来说,\(NOI\)刚结束的那段时间,也就是七月底八月初的样子,反正是我状态最好的时候,各种意义上的状态我试图找出原因,......
  • 20240906 模拟赛总结
    期望:100+70+4=174实际:100+70+4=174T1梦熊13连测的原题,刚好前几天订正过。。也就给我狗运到了,,观察性质发现,如果两个点所在直线与坐标轴的夹角越接近\(45^{\circ}\)就越优,转化为找到横坐标差的绝对值和纵坐标差的绝对值的差的最小值的两个点,可以坐标轴旋转,不过可以用更方便......