对2022年一月初进行的xjtu的美赛选拔赛进行一点总结(学到了一些MATLAB技巧,比赛经验),比赛时间为1月13日6点~1月17日9点,一共给出了两道题
A题:要求预测长江江豚在迁地保护下20年后的种群数量和假设没有迁地保护下江豚是否会出现功能性灭绝。
B题:研究人才流动模型,判断当前西安人才现状的健康状况,研究一个人才引进政策体系,提出建议。
A题为预测拟合类题目,B题为评价标准类题目,感觉A题更加易于建模(脚踏实地点),最后选择了A题,以下为详细题目:
点击显/隐 A题
A:长江江豚保护策略研究
江豚是目前长江里唯一的淡水哺乳动物,分布于长江中下游干流以及洞庭湖和鄱阳湖等区域,近20年来种群量快速衰减。资料显示,1991年长江江豚数量是2700多头;2006年,江豚数量已不足1800头;2011年,它们的数量可能仅为1000余头,2018年数量约为1012头。事实上,自上世纪80年代起,逐步探索了就地保护、迁地保护、人工繁育三大保护策略。其中,迁地保护,即选择一些生态环境与长江相似的水域建立迁地保护地,是当前保护长江江豚最直接、最有效的措施。至今,我国已建立5个迁地保护地,迁地群体总量超过150头。2021年9月18日,央视报道:长江江豚种群数量稳中有升。长江江豚种群数量大幅下降趋势得到遏制,但极度濒危状况仍未改变。
请解决下列问题:
1) 建立数学模型预测五个迁地保护地20年后长江江豚种群数量,通过模型说明迁地保护地150头江豚的性别比例会对江豚种群发展产生多大的影响?
2) 如不采用迁地保护策略,长江江豚会出现功能性灭绝?
3) 请根据你的分析,向有关部门提出不超过2页的保护江豚建议。
注:本次赛题为中文,提交论文必须采用英文书写,论文提交PDF版(包括:Summary sheet,Table of contents, Reference list and any Appendices),页数不超过25页。
点击显/隐 B题
B:“抢人大战”:城市人才流动模式研究
人口是一切经济社会活动的基础,人才更是第一资源。习近平总书记指出“发展是第一要务,人才是第一资源,创新是第一动力。”新时代中国大地上正在发生“人随产业走、人往高处走”的现象,其背后的深层逻辑正是人口正持续向大城市及大都市圈集聚,随着人口红利消逝、人才价值日益凸显。一个城市用于一个健康,可持续的人才流动模式意味着什么?哪些问题是重要的?如何衡量城市的人才生态建设水平?一座城市吸引人才、留住人才和培养人才当如何取长补短?哪些中国城市在人才建设方面成效卓越?这些问题成为一个城市的管理者所必须思考的问题。
中国15-64岁劳动年龄人口规模及比例分别在2011、2013年见顶,标志着过去长期支撑经济高速发展的人口红利消逝,中国亟需转向人才红利。城市对人才的吸引是一个城市健康,可持续发展的重要内生动力。当我们环顾中国,从北京到上海,从广州到深圳,我们可以看到各种各样城市吸引人才的政策。这些政策各有长处和短处,在当前新冠大流行之后,各个城市需要思考,什么样的改革,什么政策是最适合城市的人才引进的。然而,改变是困难的,任何制度的推进都需要长期执行,以便建立一个更加健康,完善和可持续的制度。
在这个问题上,你的团队将会开发一个模型用以评估西安市的人才生态健康状况,以确定一个健康和可持续的人才引进模式。考虑到,提出和分析一套城市的人才引进政策,将一个城市的人才引进从目前的状态迁移回你提出的健康和可持续的状态。
具体来说,你将被要求:
· 开发和验证一个模型或一套模型,使之能够评估西安市人才现状的健康状况;
· 为西安市的制度提出一个可实现和合理的愿景,以支持一个健康和可持续的人才引进政策体系。
· 使用您的模型来衡量当前系统的健康状况,以及为您选定的城市提出健康的、可持续的系统;
· 提出有针对性的政策和实施时间表,以支持从当前状态变化到您提议的状态;
· 使用您的模型来塑造和评估您政策的有效性;
·在考虑到改变在现实中是困难的,讨论在过渡期间和最终状态下实施你的计划对现实城市人才流动的影响。
·将您的模型应用于15个新一线城市(成都、重庆、杭州、武汉、西安、天津、苏州、南京、郑州、长沙、东莞、沈阳、青岛、合肥、佛山)中的至少5个,并分析其适用性;
注:本次赛题为中文,提交论文必须采用英文书写,论文提交PDF版(包括:Summary sheet,Table of contents, Reference list and any Appendices),页数不超过25页。
比赛日记
Day1
上午:查找论文,统计各地江豚数量(长江支流,鄱阳湖,洞庭湖,保护区如:天鹅洲),绘制江豚数量统计表,确定第一问使用 Leslie 模型,第二问使用 Logistic 模型。
下午:学习 Leslie 模型,由天鹅洲保护区从1991年到2021年的数据进行建模(其实就三个点),建模关键是对 生存率 的估计。
晚上: 调整生存率参数,完成拟合。
Day2
上午:提取昨天由 Leslie 模型拟合的数据(生育模式,年龄分布)。
下午:用2021年的预测数据在不同的性别比例下,对20年后(2041年)保护区总江豚数进行预测。
晚上:绘制不同地区江豚数量的散点图,思考如何拟合 Logistic 模型,修改论文格式。
Day3
上午:通过加入假想数据,成功使用 Auto2Fit
对数据进行 Logistic 模型拟合。
下午:利用第一题所做出的预测,完成对种群功能性灭绝进行估计,提取预测数据,撰写拟合方法。
晚上:修改论文图片格式。
Day4
上午:学习SPSS(但没用上),整理全部代码。
下午:翻译代码注释,转换格式。
晚上:整理论文格式,转化为PDF,加入公式编号,优化图片质量。
模型
Leslie 人口预测模型
变量声明
l∼xl(i,k)∼dl(i)∼sl(i)=1−dl(i)∼b(i)∼a(k)∼[i1,i2]∼vl(i,k)∼ 性别参数, l=m为男性, l=w为女性 第 k 年,年龄范围在 [i,i+1) 岁,性别为 l 的人口数量 年龄范围在 [i,i+1) 岁,性别为 l 的死亡率(死亡人数在当年总人口中的占比) 年龄范围在 [i,i+1) 岁,性别为 l 的存活率(从第 i 岁活到 i+1 岁的人在当年总人口中的占比) 生育率(每位 [i,i+1) 岁女性平均生育婴儿数) 新生儿中男婴占比 育龄区间(具有生育能力女性的年龄范围) 第 k 年,年龄范围在 [i,i+1) 岁,性别为 l 的迁移数量(迁入为正,迁出为负)
对于此题,通过查阅资料知道,江豚平均寿命为20年,雌性育龄期为 4 到 16 岁,可以假设保护区没有迁入迁出变化,从而确定以下变量
a(k)=[i1,i2]=vl(i,k)= 21 [4,16] 0
递推公式
根据上述变量含义可以给出如下的人数递推公式
⎩⎪⎪⎨⎪⎪⎧xl(1,k+1)=sl(0)a(k)i=i1∑i2b(i)xw(i,k)+vl(0,k)xl(i+1,k+1)=sl(i)xl(i,k)(l=m,w)
代入已确定的变量得
⎩⎪⎪⎨⎪⎪⎧xl(1,k+1)=21sl(0)i=i1∑i2b(i)xw(i,k)xl(i+1,k+1)=sl(i)xl(i,k)(l=m,w)
矩阵递推
为了更方便地递推,使用矩阵乘法代替求和,引入如下记号(下文中 i 岁均指:年龄在 [i,i+1) 范围内的个体)
总生育率(每位女性一生的平均剩余数):β= i=i1∑i2b(i)
生育模式( i 岁女性的生育数在育龄女性中的占比):h(i)= β(k)b(i)
人口分布向量(第 k 年人口在不同年龄段上的分布):xl(k)= [xl(1,k),xl(2,k),⋯,xl(n,k)]T
存活率矩阵(人口分布变化):
Sl=⎣⎢⎢⎢⎢⎢⎢⎡0sl(1)0⋮000sl(2)⋮0⋯⋯⋯⋱⋯000⋮sl(n−1)000⋮0⎦⎥⎥⎥⎥⎥⎥⎤
生育模式矩阵:
H=⎣⎢⎢⎢⎢⎡00⋮0⋯⋯⋱⋯00⋮0h(i1)0⋮0⋯⋯⋱⋯h(i2)0⋮000⋮0⋯⋯⋱⋯00⋮0⎦⎥⎥⎥⎥⎤
转移矩阵(可以验证,下述转移矩阵和上述的递推式等价)
⎩⎪⎪⎨⎪⎪⎧xm(k+1)=Smxm(k)+21sm(0)βHxw(k)xw(k+1)=Swxw(k)+21sm(0)βHxw(k)
观察上式发现,影响男女分布主要参数是 Sl,影响整个种群总数的参数是 β,H 和初始的雌雄分布比例。
生育率使用概率中的 Γ 分布:
y=baΓ(a)1xa−1e−x/b
利用如下公式生成(别人给的,不懂原理)
h(i)=2nΓ(n)1(i−i1+1)n−1e−(i−i1+1)/2
其中 n=2ic−i1+2,i1⩽i⩽i2,i1=4,i2=16,ic=6(ic 称为生育高峰期),生成效果如下(代码中所有年份都要减去1才是真实年份,因为matlab没有0😢)
调参拟合
经过手动调整生存率参数(只会手动调。。。),得到以下较好的拟合图形
点击显/隐代码
接下来利用1991年预测得到的2021年的年龄分布先进行单位化,在根据性别比例等比例缩放至总数为150只(因为所有保护区的总数为150只,而上述预测只是对天鹅洲一地所进行的),再使用 Leslie 模型对20年后种群总数量进行预测。
思路比较简单直接上代码:
点击显/隐代码
预测效果如下图
Logistic 拟合
这个相比上面就暴力多了,希望直接使用 Logistic 函数往目标数据上套,于是使用如下的方法:
首先 Logistic 函数就是一个微分方程的解:
dtdx=u(x−a)2−r(x−a)
解得
x=u+ert+cr+a
原方程中其实没有变量 a,但是如果没有 a (即函数下界为 0)对于近几年的拟合效果较差。
先通过绘制不同地区的离散图,选择适合的数据。
用于生成图像的代码(里面包含了实际观测的数据)。
点击显/隐代码
最后选择对 种群数量 进行 Logistic 预测,由于可用参数太少了,所以只能加入一些假想的点
然后使用Auto2Fit进行拟合(Auto2Fit软件很不好下,这里给出一个网盘下载连接 提取码:1234)
Auto2Fit 的代码很简短易懂,只需要把变量写出来,可变参数直接写在式子中,点击上面运行键即可进行拟合(拟合代码如下):
拟合图像代码:
点击显/隐代码
由于2021年前迁地保护的江豚数量在总种群数目中占比较小,可以忽略,所以上述模拟的可以认为是总江豚数目的变换,由于21年后保护区的江豚总数在总种群数目中占比逐渐增大,直接通过减法,即可预测到没有迁地保护下江豚数目的变化。
制图代码:
点击显/隐代码
至此完成了全部拟合过程,其实也没很复杂,只是第一次操作,对MATLAB函数运用不是很灵活,下面记录些常用的函数
最后要感谢队友们的共同努力😆,共同完成整篇论文(英文论文语法使用,排版和格式做的是真的好)(不然上面整的都是摆设~(>_<。)\)。