1、数学建模A 题 养老金计划养老金是指人们在年老失去工作能力后可以按期领取的补偿金,这里假定养老金计划从 20 岁开始至 80 岁结束,年利率为 10。参加者的责任是,未退休时(60 岁以前)每月初存入一定的金额,其中具体的存款方式为:20 岁29 岁每月存入 元,30 岁39 岁每月1X存入 元, 40 岁49 岁每月存入 元,50 岁59 岁每月存入 元。2X3 4X参加者的权利是,从退休(60 岁)开始,每月初领取退休金 ,一P直领取 20 年。试建立养老金计划的数学模型,并计算下列不同年龄的计划参加者的月退休金。1、从 20 岁开始参加养老金计划,假设 元;123420XX2、从 35
2、岁开始参加养老金计划,假设 元, 元,035元;40X3、从 48 岁开始参加养老金计划,假设 元, 元。31X420X论文题目: 养老金计划姓名 1:*(写作) 专业:数学与应用数学姓名 1:*(编程) 专业: 信息与计算科学姓名 1:*(建模) 专业: 信息与计算科学2010 年 8 月 14 日摘要:随着人口老龄化的到来,世界各国都在不断努力寻求解决老龄化社会问题的途径,已形成了各具特色的养老保险制度。但是我国养老金制度还存在层次单一,覆盖面狭窄和管理不协调的问题,因此本文就养老金计划问题进行讨论,旨在分析不同年龄阶段、投资不同金额的投保人在 60 岁后的 20 年里每月初所能领取养老金
3、 p。首先依据题设,投保人每月都按照自己所处年龄段存入相应的金额,可以将其按照月份不同分为 12 个不同的虚拟账户,并且假定将相应月份的投保金额存入相应的虚拟账户中。至每年末,各月份所对应虚拟账户的存款相同,且利息至次年对应月份才能获得。但是在 60 岁开始,且在以后的 20 年里,每月月初将会领到一定数额(P)的养老金,可认为所领取的养老金是从该月所对应的虚拟账户扣除。因此我们可以将每年中各月份的存款问题简化为只关注其中某一月份进行分析。其次,采用迭代方法建立不同情况下的四种数学模型,利用 MATLAB 编写对应模型的程序,并用二分法求解出符合问题条件下的 P 值。最终,运用所建立的数学模型
4、最终求解出 P1=10397.3511 元,P2=5264.6136 元,P3=4383.79385 元。从结果可以看出,越早参加养老金计划,在 60 岁后的 20 年里每月初也能领取相当多的养老金。关键词:养老金 月初 虚拟账户目录一、问题的提出二、问题的分析三、建模的过程1.模型的假设2.模型的建立3.模型转换为 MATLAB 程序4.求解问题5.模型分析四、模型的评价与改进一、问题的提出:养老金是指人们在年老失去工作能力后可以按期领取的补偿金,这里假定养老金计划从 20 岁开始至 80 岁结束,年利率为 10。参加者的责任是,未退休时(60 岁以前)每月初存入一定的金额,其中具体的存款方
5、式为:20 岁29岁每月存入 X1元,30 岁39 岁每月存入 X2元,40 岁49 岁每月存入 X3元,50 岁59 岁每月存入 X4元。参加者的权利是,从退休(60 岁)开始,每月初领取退休金 ,一直领取 20 年。求按不同的年龄段不同的投资额,在 60 岁P(退休后)每月月初所取的养老金 p 是否一样,并计算 P 值。二、问题的分析:由问题意可知,参加养老金计划的人在 60 岁前(为退休时)存入一定的金额,在退休后(60 岁)开始,每月初领取退休金一直领取 20 年。目的就是建立一种模型,解决计算不同年龄阶段参加者最终每月获取的退休金 p 值。三、建模过程:1.模型假设首先,假设此问题的
6、外部因素不会发生改变;其次,银行必须在投资者 80岁时,把投资者所投金额以及所有的利息全部返还给投资者;再次,参加计划的投资者在一开始投资后,到 59 岁末都必须每月按时、按额投资该月的资金,中间无间断和拖欠。2.模型建立由问题知,投保人每月都按照自己所处年龄段存入相应的金额,我们可以将其按照月份不同分为 12 个不同的虚拟账户,并且假定将相应月份的投保金额存入相应的虚拟账户中。至每年末,各月份所对应虚拟账户的存款相同,且利息至次年对应月份才能获得。因此我们可以将每年中各月份的存款问题简化为只关注其中某一月份进行分析。例:按一月份进行分析。如果在 20 岁的第一月存入 X 元的投保资金,则在第
7、二年的第一个月对应虚拟账户上的累计户额为上一年一月利息加上本金,以及本年一月所存入的养老金额 X。依次类推,在 60 岁的一月对应虚拟账户累计金额为 40 年来所有一月的本金和利息的总和。但是在 60 岁开始,且在以后的 20 年里,每月月初将会领到一定数额(P)的养老金,我们可以认为所领取的养老金是从该月所对应的虚拟账户扣除。因此对于一月而言,从 60 岁开始领取 P 金额后,所剩的资金还会在次年有 10%的利息,依次类推到第二十年时,一月的虚拟帐户将会为零,即虚拟账户中所有累计金额全部返回给投保人,此时可以得到一个一次方程,P 是未知量,所以方程的解就是 P 的值。用此方法可以计算出不同年
8、龄阶段的投资者投资不同资金时,从 60 岁开始的后二十年内每月月初所领取的养老金 P。因此针对上述问题可建立如下四个不同年龄阶段的数学模型,即(符号说明:20-80 岁之前第 n 岁,一月份办理业务之后账户所剩余额;X 1为2029 岁阶段每月存入的金额数量,X 2为 3039 岁阶段每月存入的金额数量;X3为 4049 岁阶段每月存入的金额数量;X 4为 5059 岁阶段每月存入的金额数量;p 为 60 岁开始每月领取的退休金)1从 2029 岁开始参加养老金计划的数学模型为: .79,60%10;54,;329,1014321npSxmnSnnn2. 从 3039 岁开始参加养老金计划的数
9、学模型为: .79,6010;54,;314321npSxmnnn3. 从 3039 岁开始参加养老金计划的数学模型为: .79,60%10;54,143npSxmnn4. 从 3039 岁开始参加养老金计划的数学模型为: .,;14xnn3.模型转化的 MATLAB 程序:程序分为 pension、pension_X、REM 三个函数,其中 pension 为求解时输入参数的函数,REM 为二分法求解线性方程的函数,REM 求解时调用了pension_X 函数,当 p 值满足 pension_X(p)=0 是,p 为问题所求的解。函数 pension:function x,k,y=pensi
10、on(age,twenties,thirties,forties,fifties);% age 为开始参加养老金计划的年龄;%twenties 为 20-29 岁阶段每月所需缴纳的养老金;%thirties 为 30-29 岁阶段每月所需缴纳的养老金;%forties 为 40-49 岁阶段每月所需缴纳的养老金;%fifties 为 50-59 岁阶段每月所需缴纳的养老金;%x 为退休后每月所领取的退休金,即 p 值;%k 为应用二分法求解 p 值时所迭代的次数;%y 为退休金全部领取完后,账户所剩余额。format long;global m x1 x2 x3 x4;m=age;x1=twe
11、nties;x2=thirties;x3=forties;x4=fifties;if (m=20)endfor k=1:1:100000c=(a+b)/2;yc=f(c);if yc=0a=c;ya=yc;b=c;yb=yc;elseif ya*yc0)break;endendx=(a+b)/2;y=12*feval(f,(a+b)/2);4.求解问题:从 20 岁开始参加养老金计划,X 1=X2=X3=X4=200 元;将所给参数带入函数,即x,k,y=pension(20,200,200,200,200)在命令窗口运行得到:x =1.039735106285662e+004k =29y =
12、0.02793443250266可知此人退休后没人可领取养老金 10397.35 元从 35 岁开始参加养老金计划,X 2=200,X 3=500,X 4=1000 元;x,k,y=pension(35,0,200,500,1000)在命令窗口运行得到:x =5.264613660983741e+003k =29y =0.01393053673746可知此人退休后没人可领取养老金 5264.61 元从 48 岁开始参加养老金计划,X 3=1000,X 4=2000 元;x,k,y=pension(48,0, 0,1000,2000)在命令窗口运行得到:x =4.383793860763035e
13、+003k =38y =2.563500311225653e-005可知此人退休后没人可领取养老金 4383.79 元5.模型分析此模型的建立是依据利息按照年进行计算,每月的投资金到了次年的该月才会产生利息,且养老金又是按月来领取的,所以把每一个月单独地看成一个个体,用这个个体的情况来估计总体的趋势。五、模型的评价与改进该模型的假设在理论上是成立的,具有一定的合理性。1.现实存在诸多不确定的因素,例如,政府对每月缴纳养老金的金额数量或者年龄利率有所改变时,可能会影响假设的不成立或计算结果不合理。2.在运用数学软件 MATLAB 编程时,使用了二分法求解方程的根,由于计算程序的不完善性,可能会在在计算精度上有误差,因此与真实值之间会存在一定的偏差,但是可对程序中所涉及的精度进行改进,可使误差尽量减小。3.在二分法程序的计算过程中,当 p 取某一值是,所对应的函数值(即每次办理业务之后账户所剩余额)可能为负值,由实际情况可知,函数值不应该为负值,即函数值小于 0 的函数部分不符合实际,但是在计算线性方程解时,最后所求解对应的函数值又大于 0,所以不影响求解,即此求解程序具有合理性。