公司的投资问题 - 数学建模 2 - 图文 下载本文

公司投资问题的数学模型

摘 要

本文要研究的是公司在未来5年内如何利用20亿投资金额来投资使得第五年年末时所得利润最大的问题。对此,我们综合利用了线性规划、灰色预测、灵敏度分析、残差检验等方法对题中所给问题逐一解决。

对于问题一:问题一是典型的线性规划问题,我们建立了在不考虑风险的情况下以第五年末最大利润为目标的单目标最优化模型。首先,每一年年初投资的金额不能大于可用投资金额,可列出第一个约束条件。其次,每一个项目在其运行期再进行投资时不能超过其投资上限,可列出第二个约束条件。第五年年末的利润即为第五年年末的本利与20亿投资金额之差,可列出目标函数。然后通过建立的最优化模型求得第五年年末的最大利润为153254.4万元。每个项目每年的投资金额见问题一求解的表二。最后对所建模型进行灵敏度分析。

对于问题二:首先,对题中表二和表三所给数据利用公式(到期利润率=到期利润/投资总金额)对数据进行处理,求出其对应的利润率(见附录二)。然后利用灰色系统理论中的GM(1,1)预测模型分别对独立投资和同时投资两种方案的到期利润率进行预测。再以负利润率的期望作为衡量风险损失率的指标,即风险损失率等于负利润率的期望,最后得到到期利润率和风险损失率的预测值(预测结果见问题二的求解)。

对于问题三:在前两问的基础上,考虑同时投资时项目间的相互影响,利用问题二中所求得的到期利润率建立以第五年年末最大利润为目标的单目标最优化模型。最后求得第五年年末的最大利润为248511.3万元。每个项目每年的投资金额见问题三求解的表二。

对于问题四:问题四考虑了投资风险,利用问题二中得到的风险损失率,在问题三的基础上,建立以总风险最小和第五年年末利润最大为目标的多目标优化模型。最后求得最大利润为267314.3万元。每个项目每年的投资金额见问题四求解的表一。

对于问题五:问题五同样考虑了投资风险,多加了向银行贷款存款这一条件,把银行存款当做投资,贷款的钱用于其它项目的投资,类比问题四,建立多目标优化模型,通过LINGO软件包求得,当风险度a为0.13时,得到最大利润为277858.3万元。每个项目每年的投资金额见问题五求解的表一。

关键词:线性规划、灵敏度分析、灰色预测、残差检验、

1.问题重述

1.1问题背景

某公司现有数额为20亿的一笔资金可作为未来5年内的投资资金,市场上有8个投资项目(如股票、债券、房地产、…)可供公司作投资选择。其中项目1、项目2每年初投资,当年年末回收本利(本金和利润);项目3、项目4每年初投资,要到第二年末才可回收本利;项目5、项目6每年初投资,要到第三年末才可回收本利;项目7只能在第二年年初投资,到第五年末回收本利;项目8只能在第三年年初投资,到第五年末回收本利。

1.2需要解决的问题

问题一:根据附录一表1实验数据确定5年内如何安排投资?使得第五年末 所得利润最大?

问题二:公司财务分析人员收集了8个项目近20年的投资额与到期利润数 据,发现:在具体对这些项目投资时,实际还会出现项目之间相互 影响等情况。8个项目独立投资的往年数据见附录一表2。同时对项 目3和项目4投资的往年数据;同时对项目5和项目6投资的往年 数据;同时对项目5、项目6和项目8投资的往年数据见附录一表3。 (注:同时投资项目是指某年年初投资时同时投资的项目)

试根据往年数据,预测今后五年各项目独立投资及项目之间相互影 响下的投资的到期利润率、风险损失率。 问题三:未来5年的投资计划中,还包含一些其他情况。对投资项目1,公 司管理层争取到一笔资金捐赠,若在项目1中投资超过20000万, 则同时可获得该笔投资金额的1%的捐赠,用于当年对各项目的投 资。项目5的投资额固定,为500万,可重复投资。各投资项目的 投资上限见附录一表4。在问题三的背景下,根据问题二预测结果, 问题四:考虑到投资越分散,总的风险越小,公司确定,当用这笔资金投资 若干种项目时,总体风险可用所投资的项目中最大的一个风险来度 量。如果考虑投资风险,问题三的投资问题又应该如何决策? 问题五:为了降低投资风险,公司可拿一部分资金存银行,为了获得更高的

收益,公司可在银行贷款进行投资,在此情况下,公司又应该如何 对5年的投资进行决策?

确定5年内如何安排20亿的投资?使得第五年末所得利润最大?

2.模型的假设

假设一:题目所给的数据是真实可靠的。

假设二:没有交易费、投资费等开支。

假设三:在投资的五年时间内市场发展基本上是稳定的。 假设四:公司的经济发展对投资无较大影响。 假设五:投资期间社会政策无较大变化。

假设六:假设每一年银行与公司只有贷款或存款中的一种业务。 假设七:贷款利率和存款利率稳定。

假设八:第五年年末,银行与公司终结存款或贷款业务。

3.符号的说明

符号 符号说明 第j年第i个项目的投资金额 问题一中第i个项目的预计到期利润率 第j年年初可用用于投资的金额 第五年年末的本利 问题一第i个项目在运行期的投资上限 问题三、四中第i个项目在运行期的投资上限 第i个项目第j年的风险损失率 第j年存入银行的金额 第j年在银行存款的金额 第j年银行存款利率 第j年贷款利率 uij ri Qj Q s(i) n(i) qij cj ej mj nj 4.问题分析

此题研究的是公司在未来五年内有八个项目可供投资的条件下如何来安排每年的投资使得第五年年末时能获取最大利益的问题。

针对问题一:要得到第五年年末的最大利润,则要建立一个以最大利润为目标的单目标最优化模型。对于约束条件的确定,首先,题目已给出每个项目每年

的投资上限,因此每个项目每年投资金额不能大于此上限。其次,由于每一年年末的本利可用于下一年投资,因此要计算出每一年年初可用于投资的金额Qi,而这一年的投资金额不能大于可用于投资的金额。对于目标函数的建立,由于第五年年末的利润即为第五年年末的本利与20亿投资金额之差,据此即可建立以第五年年末的最大利润为目标的目标函数。

针对问题二:由于实际投资中,同时投资的项目之间会有相互影响,因此要根据所给数据来预测独立投资和项目之间相互影响下同时投资的到期利润率和风险损失率。我们采用灰色系统理论中的GM(1,1)预测模型,对五年的利润率进行预测并对预测值进行检验和残差修正。再根据预测的五年内的利润率和前20年的利润率,用公式(风险损失率=利润率的期望)来预测未来五年的风险损失率。最终得到到期利润率和风险损失率的预测值。

针对问题三:在不考虑投资风险的情况下,若项目1投资超过20000万,则同时可获得该笔投资金额的1%的捐赠,用于当年对各项目的投资。项目5的投资额固定,为500万,可重复投资。在模型一的基础上,通过问题二得出的到期利润率以及问题三中所要求的条件,对目标函数和约束条件进行改造,建立模型三。

针对问题四:前三问都是不考虑投资风险,问题四是在考虑投资风险的情况下,由于投资每个项目都存在风险,因此以投资风险最大的一个风险作为总风险。利用问题二中得到的风险损失率,在问题三的基础上,建立以总风险最小和第五年年末利润最大为目标的多目标优化模型。并对模型进行简化,转化为以第五年年末最大利润率为目标的单目标优化模型。

针对问题五:问题五同样考虑了投资风险,多加了向银行贷款存款这一条件,把银行存款当做投资,贷款的钱用于其它项目的投资,类比问题四,建立多目标优化模型,然后通过LINGO软件包求最大利润。

5.数据分析

定义1 运行期指从投资开始到回收本利的这段时间。 定义2 到期利润率指到期利润与投资本金的商。 定义3 风险损失率等于到期损失率的期望。 5.1问题五中银行历年贷款利率

调 整 时 间 利率(%) 贷款时间

六个月至一年 (含一年) 调 整 时 间 利率(%) 贷款时间 六个月至一年 (含一年)

1991.04.21 1993.05.15 1993.07.11 1995.01.01 1995.07.01 1996.05.01 1996.08.23 1997.10.23 1998.03.25 1998.07.01 1998.12.07 1999.06.10 2002.02.21 2004.10.29 2006.04.28 2006.08.19 8.64 9.36 10.98 10.98 12.06 10.98 10.08 8.64 7.92 6.93 6.39 5.58 5.31 5.58 5.85 6.12 2007.03.18 2007.05.19 2007.07.21 2007.08.22 2007.09.15 2007.12.21 2008.09.16 2008.10.09 2008.10.30 2008.11.27 2008.12.23 2010.10.19 2010.12.26 2011.02.09 2011.04.06 2011.07.07 6.39 6.57 6.84 7.02 7.29 7.47 7.20 6.93 6.66 5.58 5.31 5.56 5.81 6.06 6.31 6.56

6. 问题一的解答

6.1模型一的建立 6.1.1确定目标函数

对于目标函数的建立,首先通过每一年年初可用于投资的金额来分类讨论如下表一。

表一:每年年初可用于投资的金额 (单位:万元) 每年年初可用于投资的金额 5Q1?2?10 第一年 第二年 第三年 第四年 第五年 28i1Q2?Q1??ui?14(1?ri)??ui1 i?128i2Q3?Q2??ui?36i1(1?ri)??ui?14(1?ri)??ui2 i?128i3Q4?Q3??ui?56i1(1?ri)??ui?34i2(1?ri)??ui?12(1?ri)??ui3 i?18Q5?Q4??ui?5i2(1?ri)??ui?3i3(1?ri)??ui?1i4(1?ri)??ui4 i?12第五年年末的本利为:Q6?Q5?u72(1?u7)?u83(1?r8)?第五年年末所得利润即:y?Q6?Q1

综上所述,得到问题一的目标函数为: max y?Q6?Q1 6.1.2确定约束条件

?ui?1i5ir

每个项目在运行期间进行投资时要小于其投资上限,并且每年年初的投资金额要满足小于等于每年年初可用于投资的金额,其中,各个投资项目的投资上限是在任一项目的运行期(指从投资开始到回收本利的这段时间)间公司对该项目投资金额不能超过该项目的投资上限,每年可用投资金额等于上一年可用投资金额减去上一年的总投资再加上上一年年末个项目回收的本利,因此得到问题一的约束条件如下:

?项目1、项目2每年的投资金额限制:?u?s(i) (i?1,2;j?1,2,3,4,5)?ij?项目3、项目4在两年运行期的投资金额限制:??uij?ui,j?1?s(i) (i?3,4;j?2,3,4,5)??项目5、项目6在三年运行期的投资金额限制:s.t.??uij?ui,j?1?ui,j?2?s(i) (i?5,6;j?3,4,5) ?项目7的投资金额限制:??u72?s(7)??项目8的投资金额限制:?u?s(8)?83?8???i?1?8???i?1?8s.t.???i?1

?8???i?1?8???i?1

ui1?Q1ui2?Q2ui3?Q3

ui4?Q4ui5?Q56.1.3综上所述,得到问题一的最优化模型 目标函数: max y?Q6?Q1

??Q6???Q5???Q4 其中,???Q3???Q2???Q12?Q5?u72(1?u7)?u83(1?r8)?64i2?ui?1i5ii?28i4r?Q4??Q3??Q2??Q1??ui?56(1?ri)?(1?ri)?(1?ri)??ui?34i3(1?ri)?(1?ri)?(1?ri)??ui?12(1?ri)?(1?ri)??ui?18i?1i4?ui?54i1?ui?32i2?ui?18i3?u

i3?ui?32i1?ui?18i2?ui?1i2?ui?15i1(1?ri)??ui?1i1?2?10

?项目1、项目2每年的投资金额限制:?u?s(i) (i?1,2;j?1,2,3,4,5)?ij?项目3、项目4在两年运行期的投资金额限制:??uij?ui,j?1?s(i) (i?3,4;j?2,3,4,5)??项目5、项目6在三年运行期的投资金额限制:s.t.??uij?ui,j?1?ui,j?2?s(i) (i?5,6;j?3,4,5)?项目7的投资金额限制:??u72?s(7)??项目8的投资金额限制:?u?s(8)?83

?8???i?1?8???i?1?8s.t.???i?1?8???i?1?8???i?1ui1?Q1ui2?Q2ui3?Q3

ui4?Q4ui5?Q56.2模型一的求解

根据以上建立的模型,利用LINGO软件包求得每一年每个项目的投资金额、如下表二,每年年初的投资总金额如下表三,每年年初的可用投资金额如下表四:

表二 :每年每个项目的投资金额 (单位:万元)

项目 投资金额 年份 项目一 项目二 项目三 项目四 项目五 项目六 项目七 项目八 第一年 60000 30000 40000 30000 3755.556 20000 0 0 第二年 45544.44 30000 0 0 0 0 40000 0 第三年 60000 30000 0 25254.44 26244.44 0 0 30000 第四年 60000 30000 40000 4745.556 0 0 0 0 第五年 60000 30000 0 0 0 0 0 0

表三:每年年初的投资总金额 (单位:万元)

每年每个项目的投资金额600005000040000投资金额3000020000100000第一年第二年第三年第四年第五年年数 年份 第一年 第二年 第三年 第四年 第五年 年初投资总金额 163755.556 105544.44 171498.88 17745.556 90000

表四:每年年初可用金额 (单位:万元) 年份 第一年 第二年 第三年 第四年 第五年 每年年初可用金额 200000 115544.4 171498.9 134745.6 131373.1 在第五年年末,得到的本利P为35325.44万元。得到的最大利润即为第五年年末总的本利与20亿本金之差。

项目一项目二项目三项目四项目五项目六项目七项目八

综上所述,在第五年年末得到的最大利润为153254.4万元。

6.3模型一的结果分析、验证 6.3.1灵敏度检验

对于问题一中建模的模型,影响最终利润的因素为:1.预计到期利润率、2.投资金额、3.各投资项目的投资上限。分别独立改变这三个因素的值来确定其对模型的灵敏度,从而反映各个因素对模型结果影响的显著性水平。反之,通过改变各参数的值,又可反映和检验模型一的实际合理性。

(1)预计到期利润率。问题一的目标函数是总利润最大,而当投资总金额和投资上限一定时,总利润就是与各项目的到期利润率相关。当利润率越大,获得的利润也相应越大。总而言之,在不考虑风险的情况下,到期利润与到期利润率成正比关系。 (2)投资资金。

利润随投资资金改变的变化 (单位:万元)

投资资金 165000 170000 175000 180000 185000 190000 195000 200000 205000 210000 215000 220000 225000 230000 235000

资金改变量 -35000 -30000 -25000 -20000 -15000 -10000 -5000 0 5000 10000 15000 20000 25000 30000 35000 总利润 138648.4 141721.9 144772.6 147686.7 150371.7 151439.6 152347.0 153254.4 154160.7 154700.0 154700.0 154700.0 154700.0 154700.0 154700.0 利润改变量 -14606 -11532.5 -8481.8 -5567.7 -2882.7 -1814.8 -907.4 0 906.3 1445.6 1445.6 1445.6 1445.6 1445.6 1445.6

根据以上图表分析可知,随着投资资金的增大,总利润也增大,但超过21亿后,虽然投资资金充足,但总利润保持不变,不再随投资资金的变化变化。达到一个饱和稳定状态。最大容许投资为21亿,此时可获得的最大总利润为15.47亿。在18.5亿之前,可获得的最大总利润随投资增加很快,故建议投资不低于18.5亿。

(3)各投资项目的投资上限。

利润随投资上限改变的变化 (单位:万元)

改变量 利润改变量 项目 项目一 项目二 项目三 项目四 项目五 项目六 项目七 项目八 -20000 -8554.4 -9554.4 -8554.4 -9354.4 -7558.0 -8592.5 -14554.4 -9558.0 -15000 -6054.4 -6804.4 -6054.4 -6654.4 -5665.1 -6444.4 -10554.4 -7165.1 -10000 -3554.4 -4054.4 -3554.4 -3954.4 -3772.3 -4296.3 -6554.4 -4772.3 -5000 -1754.4 -2023.8 -1685.1 -1892.5 -1879.6 -2148.1 -3093.7 -2379.6 0 5000 10000 15000 20000

0 3514.9 6445.9 0 4047.8 7647.3 0 1685.2 3370.4 5055.6 6740.8 0 1892.6 3785.2 7570.4 0 0 0 6185.2 12370.4 0 4759.3 7138.9 9518.6 1757.5 2023.9 5272.3 6071.7 1879.7 2148.2 3759.3 4296.3 7518.6 8584.9 3092.6 2379.7 5677.8 5638.9 6442.0 9277.8

根据以上图表分析可知,项目的投资上限对总利润影响力由大到小依次为:项目七、项目八、项目六、项目二、项目四、项目五、项目三、项目一。

7.问题二的解答

7.1模型二的建立

我们利用灰色系统理论中的GM(1,1)预测模型分别对独立投资和项目间相互影响下投资的到期利润率预测,再利用利润率的期望作为衡量风险损失率的指标,建立了模型二。 7.1.1确定预测模型

设时间序列X(0)={X(0)(1),X(0)(2),...,X(0)(n)}共有n个观测值。对X()做一

0k次累加生成列X(1): X(1)(k)=?i=1X0(k(=)X)1(k-(1+)X)0(k ())这样生成的数据列有较强的规律性,可对变化过程做较长时间的描述,但是本题中,如单独投资时第五、六、七、八列中存在负数,在进行累加时会出现正负抵消这种信息损失的问题,数列经过累加生成后规律性非但没得到加强,甚至被削弱。对于这种情形,我们将数列中的值都取其绝对值,然后进行预测,预测后取消绝对值时存在正负号问题,对此,我们指定定值0,并认为数列中小于0的点

为具有异常值的点,然后对异常值出现的时间进行灾变预测,根据灾变预测对所得的结果赋正负号。建立微分方程模型

dX(1)dt+aX(1)=m,记为GM(1,1)模

型,其中a称为发展灰数,m称为内生控制灰数。

T? 设a=(a,m),利用最小二乘法求解可得:

其中

?1?(0)(1)??[X(1)?X(2)] 1??2??X(0)(2)????1?(1)(1)(0)?X(3)??[X(2)?X(3)] 1??B? Yn??2? ??????????? ?????X(0)(n)??1?????[X(1)(n?1)?X(1)(n)] 1??2?

求以上解微分方程即可得预测模型为:

X(1)(k?1)?[X(0)(1)??a]e?ak??a (k?0,1,2,???,n)

根据上述方法建立利润率和风险损失率的发展预测模型。 利用题中所给数据,按照上述的步骤可得GM(1,1)模型为:

dX(1)dt+0.0049X(1)=0.1575

解上式得X(1)(k+1)=-31.9834e-0.0049k+32.1429

则可初步预测第一个投资项目的相应的利润率,如下表一。

表一:独立投资时项目一的预测利润率与观测值得比较 年份 观测值 预测值 年份 观测值 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 0.1595 0.1675 0.1516 0.1483 0.1547 0.1727 0.1304 0.2135 0.0858 0.1509 0.1595 0.1563 0.1556 0.1548 0.1540 0.1533 0.1526 0.1518 0.1511 0.1503 0.1348 0.1472 0.1843 0.1037 0.1445 0.1817 0.1470 0.1039 0.1908 0.1308

预测值 0.1496 0.1489 0.1482 0.1475 0.1467 0.1460 0.1453 0.1446 0.1439 0.1432 根据以上模型,类比独立投资时对项目1的利润率预测,对其他项目分别在独立投资方案和同时投资方案下的利润率进行预测,结果见附录二。

再利用独立投资和同时投资两种方案下得出的利润率预测值求出的利润率预测

值和风险损失率的计算公式

qij=E(rij)对风险损失率进行预测。

7.1.3综上所述,得到问题二的预测模型 X(1)(k+1)=-31.9834e-0.0049k+32.1429

风险损失率预测:qij=E(rij) 7.2模型二的求解

根据以上建立的预测模型,利用MATLAB软件包求得五年内在独立投资和同时投资两种方案下的利润率和风险损失率预测值如下表二、表三、表四、表五。

表二:各投资方案独自投资时在五年内到期利润率的预测值

年份 2006 2007 2008 2009 2010 1 2 3 4 5 6 7 8 3.4655 3.5976 3.8771 0.1425 0.2292 0.3284 0.4173 0.1418 0.2386 0.3261 0.4356 0.1411 0.2484 0.3238 0.4548 0.1405 0.2586 0.3216 0.4747 0.1398 0.2691 0.3193 0.4956 0.7697 1.3856 14.9217 0.7400 1.4321 -15.9846 0.6841 1.5297 18.3431 0.7115 -1.4801 17.1233 -3.7348 0.6577 1.5810 -19.6497 4.0250

表三:同时投资时在五年内到期利润率的预测值 年份 2006 2007 2008 2009 2010 3 0.6147 0.6329 0.6518 0.6712 0.6912 4 0.4195 0.4185 0.4174 0.4164 0.4154 5 0.9343 1.0279 1.1333 1.2488 1.3755 6 1.1058 1.1118 1.1281 1.1546 1.1913 5 1.1842 1.2317 1.2812 1.3327 1.3662 6 0.7451 0.7345 0.7243 0.7144 0.7050 8 1.2774 1.2436 1.2107 1.1786 1.1474

表四:独自投资时在五年内风险损失率的预测值

年份 2006 1 0 2 0 3 0 4 0 5 0.8643 6 0.8381 7 5.7759 8 1.3993

2007 2008 2009 2010 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.8643 0.8643 0.8643 0.8643 0.8381 0.8381 0.8381 0.8381 5.7759 5.7759 5.7759 5.7759 1.3993 1.3993 1.3993 1.3993

表五:同时投资时在五年内的风险损失率的预测值 年份 2006 2007 2008 2009 2010 3 0 0 0 0 0 4 0 0 0 0 0 5 0.8653 0.8653 0.8653 0.8653 0.8653 6 0.8451 0.8451 0.8451 0.8451 0.8451 5 0.8702 0.8702 0.8702 0.8702 0.8702 6 0.8512 0.8512 0.8512 0.8512 0.8512 8 1.4035 1.4035 1.4035 1.4035 1.4035 7.3模型二的结果分析、验证、修正、结果表示 (1)对于预测值进行检验

?()(i),并将X?()(i)累减生成X?()(i),然后计算原始序列按照预测模型计算X110X(0)?(i)与原始序列预测值X(0)0有关结(i)的绝对误差序列D()及相对误差序列F,

果见表六

表六 年份 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001

k 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 X(0)(k) X(1)(k) ?(1)(k) X?(0)(k) XD(0) F 0.1595 0.1675 0.1516 0.1483 0.1547 0.1727 0.1304 0.2135 0.0858 0.1509 0.1348 0.1472 0.1843 0.1037 0.1445 0.1817 0.1595 0.3270 0.4785 0.6268 0.7815 0.9541 1.0846 1.2981 1.3838 1.5347 1.6695 1.8167 2.0010 2.1047 2.2492 2.4309 0.1595 0.3158 0.4714 0.6262 0.7802 0.9335 1.0861 1.2379 1.3890 1.5393 1.6889 1.8378 1.9860 2.1335 2.2802 2.4262 0.1595 0.1563 0.1556 0.1548 0.1540 0.1533 0.1526 0.1518 0.1511 0.1503 0.1496 0.1489 0.1482 0.1475 0.1467 0.1460 0 0.0111 0.0040 0.0065 0.0006 0.0194 0.0221 0.0617 0.0653 0.0005 0.0149 0.0017 0.0361 0.0437 0.0022 0.0357 0 0.0665 0.0263 0.0440 0.0040 0.1122 0.1696 0.2889 0.3616 0.0036 0.1102 0.0117 0.1961 0.4219 0.0155 0.1964

2001 2003 2004 2005 16 17 18 19 0.1470 0.1039 0.1908 0.1308 2.5779 2.6818 2.8726 3.0033 2.5715 2.7162 2.8601 3.0033 0.1453 0.1446 0.1439 0.1432 0.0017 0.0407 0.0469 0.0125 0.0114 0.3921 0.2457 0.0953 结论:相对误差绝大部分都符合精度要求。

8.问题三的解答

8.1模型三的建立 8.1.1确定目标函数

问题三中,若在项目1中投资超过20000万,则同时可获得该笔投资金额的1%的捐赠,用于当年对各项目的投资。

??Qj ,当uij?20000万元时设 Pj????Qj+0.01uij ,当uij?20000万元时

对于目标函数的建立,首先通过每一年年初可用于投资的金额来分类讨论如下表一。

表一:每年年初可用于投资的金额 (单位:万元) 5每年年初可用于投资的金额 Q1?2?10 26i1第一年 第二年 第三年 第四年 第五年 Q2?P1??ui?14(1?ri)??ui1 i?127i2Q3?P2??ui?36i1(1?ri)??ui?14(1?ri)??ui2 i?126i3Q4?P3??ui?56i1(1?ri)??ui?34i2(1?ri)??ui?12(1?ri)??ui3?u83 i?14Q5?P4??ui?5i2(1?ri)??ui?3i3(1?ri)??ui?1i4(1?ri)??ui4 i?1第五年年末的本利为: 2Q6?P5?u72(1?r7)?u83(1?r8)?

46i4?ui?121i5(1?ri)

??ui?3(1?ri)??ui?5i3(1?ri)??ui5

第五年年末所得利润即:y?Q6?Q1

综上所述,得到问题一的目标函数为: max y?Q6?Q1

8.1.2确定约束条件

每个项目在运行期间进行投资时要小于其投资上限,并且每年年初的投资金额要满足小于等于每年年初可用于投资的金额,因此得到模型三的约束条件如下:

?项目1、项目2每年的投资金额限制:?u?n(i) (i?1,2;j?1,2,3,4,5)?ij?项目3、项目4在两年运行期的投资金额限制:??uij?ui,j?1?n(i) (i?3,4;j?2,3,4,5)??项目5、项目6在三年运行期的投资金额限制:s.t.??uij?ui,j?1?ui,j?2?n(i) (i?5,6;j?3,4,5) ?项目7的投资金额限制:??u72?n(7)??项目8的投资金额限制:?u?n(8)?83?8???i?1?8???i?1?8s.t.???i?1

?8???i?1?8???i?1

ui1?P1ui2?P2ui3?P3

ui4?P4ui5?P58.1.3综上所述,得到问题三的最优化模型

目标函数: max y?Q6?Q1

??Q?1??Q2?? 其中,?Q3???Q4???Q5??2?10?P1??P2??P3??P4?526i1?ui?14(1?ri)?(1?ri)?(1?ri)?(1?ri)??ui?12i?14i17i2?ui?36i1?u?ui?34i?3(1?ri)?(1?ri)?(1?ri)??ui?12i26i3

(1?ri)?(1?ri)??ui?56i1i2?ui?12i?1?ui?14i?1i3?u83?ui?5i2?ui3?ui4?ui4

?项目1、项目2每年的投资金额限制:?u?n(i) (i?1,2;j?1,2,3,4,5)?ij?项目3、项目4在两年运行期的投资金额限制:??uij?ui,j?1?n(i) (i?3,4;j?2,3,4,5)??项目5、项目6在三年运行期的投资金额限制:s.t.??uij?ui,j?1?ui,j?2?n(i) (i?5,6;j?3,4,5)?项目7的投资金额限制:??u72?n(7)??项目8的投资金额限制:?u?n(8)?83

?8???i?1?8???i?1?8s.t.???i?1?8???i?1?8???i?1

ui1?P1ui2?P2ui3?P3

ui4?P4ui5?P5

8.2模型三的求解

由以上建立的模型求得第五年年末最大利润率为248511.3万元。

每年每个项目的投资金额如下表二:

表二 :每年每个项目的投资金额 (单位:万元)

项目 投资金额 年份 项目一 项目二 项目三 项目四 项目五 项目六 项目七 项目八 第一年 60000 60000 35000 0 0 0 0 0 第二年 58486.87 60000 0 30000 0 40000 0 0

第三年 60000 60000 35000 0 30000 0 0 0 第四年 60000 60000 0 30000 0 0 0 0 第五年 60000 60000 0 0 0 0 0 0 9.问题四的解答

9.1模型四的建立 9.1.1确定目标函数

由于问题四考虑了投资风险,因此,首先建立以总风险最小和第五年年末利润最大为目标的多目标优化模型。确定的目标函数如下:

??max y?Q6?Q1 ?

minmax(w) i?1,2,???,8???i? 其中,wi如下:

??w1???w2???w?3???w4???wi??w5??????w6???w?7??w8??5??qj?15j?11ju1ju2j??q42j??q3ju3j ,u3ju4j?0???(3,4)u3j ,u3ju4j?0j?1?q3j???q4ju4j ,u3ju4j?0???(3,4)j?1?q4ju4j ,u3ju4j?0?4?q53u5j ,u53u63?02?qu?(5,6)?5j5j ,u5ju6j?0???(5,6)??q53u5j ,u53u63?0且u83?0u5j ,u5ju6j?0?j?1?q5j?(5,6,8) q?53u53 ,u53u63u83?0?q63u6j ,u53u63?02?qu?(5,6)?6j6j ,u5ju6j?0???(5,6)??q63u6j ,u53u63?0且u83?0j?1?q6ju6j ,u5ju6j?0?(5,6,8)??q63u63 ,u53u63u83?0?q72u72??q83u83 ,u53u63?0??(5,6,8)??q83u83 ,u53u63u83?0然后对模型进行简化

在实际投资中,投资者承受风险的程度不一样,若给定风险一个界限a,使最大的一个风险qijuij/Q1?a,可找到相应的投资方案。这样把多目标规划变成单目标的线性规划。

简化模型的目标函数如下:

max y?Q6?Q1

9.1.2确定约束条件

?项目1、项目2每年的投资金额限制:?u?n(i) (i?1,2;j?1,2,3,4,5)?ij?项目3、项目4在两年运行期的投资金额限制:??uij?ui,j?1?n(i) (i?3,4;j?2,3,4,5)??项目5、项目6在三年运行期的投资金额限制:s.t.??uij?ui,j?1?ui,j?2?n(i) (i?5,6;j?3,4,5) ?项目7的投资金额限制:??u72?n(7)??项目8的投资金额限制:?u?n(8)?83?8???i?1?8???i?1?8s.t.???i?1

?8???i?1?8???i?1

ui1?P1ui2?P2ui3?P3ui4?P4ui5?P5 s.t. wiQ1?a

9.1.3综上所述,得到问题四简化后的单目标最优化模型 max y?Q6?Q1

?项目1、项目2每年的投资金额限制:?u?n(i) (i?1,2;j?1,2,3,4,5)?ij?项目3、项目4在两年运行期的投资金额限制:??uij?ui,j?1?n(i) (i?3,4;j?2,3,4,5)??项目5、项目6在三年运行期的投资金额限制:s.t.??uij?ui,j?1?ui,j?2?n(i) (i?5,6;j?3,4,5) ?项目7的投资金额限制:??u72?n(7)??项目8的投资金额限制:?u?n(8)?83?8???i?1?8???i?1?8s.t.???i?1

?8???i?1?8???i?1ui1?P1ui2?P2ui3?P3ui4?P4ui5?P5 s.t. qijuijQ1?a

9.2模型四的求解

由以上模型求得第五年年末最大利润为267314.3万元。

每年每个项目的投资金额如下表一:

表一:每年每个项目的投资金额 (单位:万元)

项目 投资金额 年份 项目一 项目二 项目三 项目四 项目五

第一年 第二年 第三年 60000 60000 35000 0 23000 第四年 60000 60000 0 30000 0 第五年 60000 60000 0 0 0 60000 60000 60000 60000 35000 0 0 30000 7000 0

项目六 项目七 项目八

0 0 0 31022.55 0 0 0 0 0 0 0 0 0 0 0 9.3模型四的结果分析

由计算结果及下图可得以下结论: 1.风险大,收益也大。

2.当投资越分散时,投资者承担的风险越小,这与题意一致。即,冒险的投资者会出现集中投资的情况,保守的投资者则尽量分散投资。

3.下图曲线上的人一点都表示该风险水平的最大可能收益和该收益要求的最小风险对于不同风险的承受能力,选择该风险水平下的最优投资组合。

4.在a=0.13附近有一个转折点,在这一点左边,风险增加很少时,利润增长很快;在这一点右边,风险增加很大时,利润增长很缓慢。所以对于风险和收

益没有特殊偏好的投资者来说,应该选择曲线的拐点作为最优投资

a*=0.13,y*=267314.3

10.问题五的解答

10.1模型五的建立 10.1.1确定目标函数

对于问题五,我们建立了以第五年年末最大利润为目标的单目标最优化模型,所确定的目标函数为:

55

max y?Q6?Q1??j?1cj(1?mj)6?j??ej(1?nj)j?16?j

10.1.2确定约束条件

?项目1、项目2每年的投资金额限制:?u?n(i) (i?1,2;j?1,2,3,4,5)?ij?项目3、项目4在两年运行期的投资金额限制:??uij?ui,j?1?n(i) (i?3,4;j?2,3,4,5)??项目5、项目6在三年运行期的投资金额限制:s.t.??uij?ui,j?1?ui,j?2?n(i) (i?5,6;j?3,4,5) ?项目7的投资金额限制:??u72?n(7)??项目8的投资金额限制:?u?n(8)?83?8???i?1?8???i?1?8s.t.???i?1

?8???i?1?8???i?1

ui1?P1ui2?P2ui3?P3ui4?P4ui5?P5 s.t. qijuijQ1??cjej?0?a s.t.?

c?Q?j?j10.1.3综上所述,得到问题五的多目标最优化模型 目标函数为:

55

max y?Q6?Q1??cj?1(1?mj)j6?j??ej(1?nj)j?16?j

?项目1、项目2每年的投资金额限制:?u?n(i) (i?1,2;j?1,2,3,4,5)?ij?项目3、项目4在两年运行期的投资金额限制:??uij?ui,j?1?n(i) (i?3,4;j?2,3,4,5)??项目5、项目6在三年运行期的投资金额限制:s.t.??uij?ui,j?1?ui,j?2?n(i) (i?5,6;j?3,4,5) ?项目7的投资金额限制:??u72?n(7)??项目8的投资金额限制:?u?n(8)?83?8???i?1?8???i?1?8s.t.???i?1

?8???i?1?8???i?1

ui1?P1ui2?P2ui3?P3ui4?P4ui5?P5 s.t. qijuijQ1??cjej?0?a s.t.?

c?Q?j?j10.2模型五的求解

由查得的银行历年贷款存款年利率进行灰色预测得到今后五年的贷款存款年利率为: 第一年 第二年 0.0585 0.0475 第三年 0.0577 0.0475 第四年 0.0570 0.0325 第五年 0.0563 0.0325 贷款年利率 0.0594 存款年利率 0.0525

由以上模型求得第五年年末最大利润为277858.3万元。

每年每个项目的投资金额如下表一:

表一:每年每个项目的投资金额 (单位:万元)

项目 投资金额 年份 项目一 项目二 项目三 项目四 项目五 项目六 项目七 项目八 银行存款 银行贷款

第一年 60000 60000 35000 0 30000 0 0 0 0 0 第二年 60000 60000 0 30000 0 31022.55 第三年 60000 60000 35000 0 0 0 0 0 12397.45 第四年 60000 60000 0 30000 0 0 0 0 102526.4 第五年 60000 60000 0 0 0 0 0 0 279877.9 0 0 0 22520.55 0 0 0 11.模型的模型的评价、改进及推广

11.1模型评价

优点:(1)问题一中我们对模型进行了灵敏度分析,一方面反映各个因素 对模型结果影响的显著性水平。另一方面,通过改变各参数的值,又反映和 检验模型一的实际合理性。

(2)在求解问题的时候,把问题归结为线性规划问题,考虑因素多, 比较符合实际。对列出的表达式通过LINGO软件编程进行计算,过程严谨, 结果精确。

(3)我们采用改进的灰色预测模型,使预测结果更精确,模型的实 用性更强。

(4)模型的适应性好,能解决类似的投资最大化收益问题。 (5)在做灵敏度分析和结果分析时,我们都用MATLAB软件包画出了 分析结果,更直观地反映了分析结果。

缺点:在建模过程中,我们没有考虑市场和人为等因素的影响,对结果有一 定的影响。 11.2模型改进

(1)对于模型二,可以利用神经网络模型进行预测,可以对时间更长的进

行预测,有推广的意义。

(2)我们只对问题一进行了灵敏度分析,由于下面几问得到的也是估计值 或预测值,可以对其他几问也进行灵敏度分析。 11.3模型推广

多项目的组合投资问题在现实生活中有着广泛的应用前景。我们所建立的 模型除了应用于多项目的投资外,还可以应用于多项目的生产问题、资源的调 度问题。

12.参考文献

[1]赵静,但琦,数学建模与数学实验,北京:高等教育出版社,2008. [2]戴明强,李卫军,杨鹏,数学模型及其应用,北京:科学出版社,2007. [3]薛定宇,陈阳泉,高等应用数学问题的MATLAB求解,北京:清华大学出版 社,2008.

[4]Frank R. Giordano,Maurice D. Weir,William P. Fox,数学建模,北京:机械 工业出版社,2005.

13.附录

附录一:题中所给数据

表1. 投资项目预计到期利润率及投资上限

项目 预计到期利润率 上限(万元) 项目 1986 1987 1988 1989

1 0.1 2 0.11 3 0.25 4 0.27 5 0.45 6 0.5 7 0.8 8 0.55 60000 30000 40000 30000 30000 20000 40000 30000 1 2 126 3 4 5 6 3015 5463 4558 7392 4946 7 6977 22591 3041 5055 6442 16834 8 4993 8987 4830 9398 4501 10355 4092 -7266 表2. 各投资项目独立投资时历年的投资额及到期利润(万元) 投资额 投资额 投资额 投资额 3003 5741 4307 5755 4352 1338 910 7232 6886 5070 7929 7480 2210 1539 5044 3345 5659 6665 7513 5978 629 602 5308 6272 6333 6749 4034 836 1616 8081 到期利润 479 -7955 5586 到期利润 1211 164 到期利润 507 到期利润 787 -1158 6386 2540 1233 -3608 -6112 36832

1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 投资额 投资额 投资额 投资额 投资额 投资额 投资额 投资额 投资额 投资额 投资额 投资额 投资额 投资额 投资额 投资额 4597 5294 5148 5384 6220 365 621 935 4378 5095 5973 7294 6916 2549 1559 5130 1078 1006 9358 1955 1740 9207 2041 1548 7044 1392 1168 7488 3077 1881 7209 1138 1131 5196 1372 1221 5849 6486 7821 4449 5586 5812 6974 3393 4268 5414 5589 4116 4618 5474 6473 5073 749 7403 5033 6859 6707 5377 4237 4996 5603 5597 5231 964 868 3051 5707 4877 3844 7434 7574 5052 5460 3681 7936 3510 5870 5697 5701 3898 1089 1456 1757 -629 1558 2864 1461 7769 1175 3230 2223 8020 1527 1155 1494 4616 862 1022 2046 5395 6879 7396 5516 5623 7471 3511 4780 6255 6925 6598 3660 7741 4315 4379 7120 4486 4756 3871 5529 5807 7280 7312 6471 7760 3082 5083 787 6068 6276 6577 1318 4472 4237 6345 4783 1464 4181 5721 4222 3173 7745 7216 5501 7151 6043 7916 6131 6411 5576 6178 6095 7763 6276 6863 38552 6866 5202 70314 6830 5370 99069 6391 5135 3174 8981 4862 3661 64239 5270 6335 2733 5848 3570 14511 3044 6355 19245 5018 5960 14864 3861 4218 4210 21833 7988 5393 -11538 3029 11819 到期利润 711 到期利润 756 到期利润 846 2765 1099 22300 8319 -19618 -2697 -9028 22230 -59901 24709 到期利润 1489 593 到期利润 353 -2291 -39691 4570 到期利润 1117 911 到期利润 571 到期利润 449 -21568 5075 到期利润 1396 958 到期利润 364 到期利润 994 到期利润 638 到期利润 538 到期利润 466 10740 -27334 -4626 10770 -24878 -5786 -46712 21357 到期利润 1389 1319 2060 3227 到期利润 403

表3. 一些投资项目同时投资时历年的投资额及到期利润(万元) 项目 1986 1987 1988 投资额 到期利润 投资额 到期利润 投资额 同时投资项目3、4 同时投资项目5、6 同时投资项目5、6、8 3 4307 1026 5070 2188 6665 4 5755 2686 7929 3558 7513 5 4352 1442 7480 3009 5978 6 3015 2634 5463 2935 4558 5 4352 6678 7480 5978 6 3015 5463 4558 8 4993 4830 4501 2542 -3145 -3861 15120 13270

到期利润 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 投资额 到期利润 投资额 到期利润 投资额 到期利润 投资额 到期利润 投资额 到期利润 投资额 到期利润 投资额 到期利润 投资额 到期利润 投资额 到期利润 投资额 到期利润 投资额 到期利润 投资额 到期利润 投资额 到期利润 投资额 到期利润 投资额 到期利润 投资额 到期利润 投资额 到期利润 3272 6333 2050 5148 1513 5973 2733 4449 3005 4268 2015 5474 1782 6859 3701 5603 3581 4877 1510 5460 3996 5697 3204 5516 1454 6255 3258 4315 2661 3871 1800 6471 3047 3222 6749 2778 5384 2533 7294 3542 5586 2448 5414 2609 6473 2969 6707 2636 5597 1809 3844 1724 3681 1450 5701 2488 5623 2199 6925 2646 4379 1984 5529 2443 7760 3682 443 4034 344 6220 601 6916 10300 5812 318 5589 5168 5073 -981 5377 6695 5231 952 7434 -124 7936 7717 3898 7598 7471 7518 6598 8671 7120 2029 5807 7424 14400 7392 4473 6068 -6448 6276 9217 6577 1087 4472 -2930 6345 2413 4783 52 4181 844 4222 8984 7745 2803 7216 -4722 5501 9321 6043 -6551 6131 20300 5576 8639 4794 4034 3002 6220 6916 5812 4750 5589 3170 5073 5377 3795 5231 7434 7936 8062 3898 7471 6580 6598 7120 4379 5807 1884 -3356 7392 6068 6276 6577 4472 6345 4783 4181 4222 7745 7216 5501 6043 6131 1035 5576 4092 5270 6335 7283 5848 3570 3044 6355 5018 5960 3861 4218 4210 7988 5393 4456 3029 2154 1549 10820 -852 -4651 -1593 20610 5595 -179 14000 -235 14460 7304 19090 7065 2029 10510 -2671 6334 12970 -4299 3307 10170 6753 10050 -968 14900 -2294 2131 10060 11460 -4521 -8039 12680 5112 表4. 各投资项目的投资上限

项目 1 2 3 4 5 6 7 8 上限(万元) 60000 60000 35000 30000 30000 40000 30000 30000

附录二:问题二中前20年单独投资,各项目的利润率及各项目20年内的平均利

润率的观测值及预测值

观测值

年份 项目 1 2 0.0219 0.0238 0.1112 0.0960 0.0689 0.1219 0.1196 0.1748 0.1622 0.1810 0.1930 0.1521 0.1896 0.1855 0.2107 0.2458 0.1973 0.1812 0.1804 0.1548 3 0.3107 0.4359 0.3811 0.1320 0.5371 0.4268 0.2423 0.4581 0.3729 0.2029 0.5492 0.2333 0.2513 0.2556 0.5192 0.5164 0.2677 0.2640 0.3183 0 4 0.1581 0.1941 0.1641 0.2394 0.2041 0.2137 0.1801 0.3214 0.2391 0.1741 0.3361 0.2942 0.3317 0.3082 0.2598 0.3210 0.3412 0.3700 0.4159 0 5 -1.8279 0.6743 -0.6036 2.0032 3.5852 0.7418 1.6101 1.6473 1.3885 1.3926 1.3781 0.6990 0.7370 -0.1614 1.0399 1.2155 0.6483 0.9291 0 0 6 1.8527 -0.2120 -1.3409 0.6691 1.3710 -1.4385 0.2004 0.9475 -0.3611 0.3061 1.3683 0.7515 1.3867 1.4925 1.2999 1.3099 1.0457 1.1080 0 0 7 3.2379 2.1000 7.2863 2.6132 -3.2187 2.8636 -9.5445 5.6174 -5.7808 13.5167 -3.1578 18.4486 -4.2770 -4.8448 2.8296 -9.6076 17.5469 0 0 0 8 1.7999 1.9458 2.3006 -1.7757 -0.5118 0.4314 4.2252 4.0647 1.5013 3.0283 1.0114 2.4940 -1.1981 -1.3717 5.1860 2.6736 -2.1394 3.9019 0 0 1986 0.1595 1987 0.1675 1988 0.1516 1989 0.1483 1990 0.1547 1991 0.1727 1992 0.1304 1993 0.2135 1994 0.0858 1995 0.1509 1996 0.1348 1997 0.1472 1998 0.1843 1999 0.1037 2000 0.1445 2001 0.1817 2002 0.1470 2003 0.1039 2004 0.1908 2005 0.1308

预测值

年份 项目 1 2 3 0.3107 0.3723 4 0.1581 0.1926 5 -1.8279 1.3353 1.3000 1.2657 1.2322 1.1996 1.1679 1.1371 6 1.8527 0.3425 0.3944 0.4542 0.5231 0.6024 0.7990 7 3.2379 1.1023 1.1900 1.2847 1.3869 1.4973 1.7451 8 1.7999 1.3321 1.3564 1.3811 1.4063 1.4319 1.4580 1.4846 1986 0.1595 0.0219 1987 0.1556 0.1113 1988 0.1548 1989 0.1540 1990 0.1533 1991 0.1526 1992 0.1518 1993 0.1511 0.1159 0.1206 0.1256 0.1307 0.1361 0.1416 0.3697 0.2011 0.3671 0.2099 0.3646 0.3621 0.3595 0.3570 0.2191 0.2287 0.2388 0.2492 0.6938 1.6164

1994 0.1503 1995 0.1496 1997 0.1482 1998 0.1475 1999 0.1467 2000 0.1460 2001 0.1453 2002 0.1446 2003 0.1439 2004 0.1432 2005 0.1425 0.1474 0.3546 0.3496 0.3472 0.3448 0.3424 0.3400 0.3377 0.3353 0.3330 0.3307 0.3284 0.2602 0.2716 0.2835 0.2960 0.3090 0.3225 0.3367 0.3514 0.3669 0.3830 0.3998 0.4173 1.1070 1.0777 1.0493 1.0215 0.9945 0.9682 0.9177 0.8935 0.8699 0.8469 0.8245 0.9202 1.0597 1.2204 1.4054 1.6186 1.8640 2.4721 2.8470 3.2787 3.7759 4.3484 1.8839 2.0338 2.1957 2.3704 2.5591 2.7627 2.9826 3.2199 3.4761 3.7528 4.0514 4.3738 1.5116 1.5392 1.5672 1.5958 1.6248 1.6544 1.6846 1.7153 1.7465 1.7784 1.8108 1.8438 0.1535 0.3521 0.1663 0.1731 0.1802 0.1876 0.1952 0.2032 0.2116 0.2202 0.2292 1996 0.1489 0.1597 0.9427 2.1466 附录三:问题一程序

model:

sets:

xiangmu/1..8/:r,d,s; nian/1..5/:Q;

links(xiangmu,nian):u; endsets

data:

r=0.1,0.11,0.25,0.27,0.45,0.5,0.8,0.55;

s=60000,30000,40000,30000,30000,20000,40000,30000; enddata

Q(1)=200000;

@for(xiangmu(i):d(i)=r(i)+1);

@for(links(i,j)|i#le#2:u(i,j)<=s(i));

@for(links(i,j)|(i#eq#3#or#i#eq#4)#and#j#ge#2:u(i,j)+u(i,j-1)<=s(i));

@for(links(i,j)|(i#eq#5#or#i#eq#6)#and#j#ge#3:u(i,j)+u(i,j-1)+u(i,j-2)<=s(i));

@for(links(i,j)|(i#eq#7#and#j#eq#2)#or#(i#eq#8#and#j#eq#3):u(i,j)<=s(i));

@sum(xiangmu(i):u(i,1))<=Q(1);

Q(2)=Q(1)-@sum(xiangmu(i):u(i,1))+d(1)*u(1,1)+d(2)*u(2,1); @sum(xiangmu(i):u(i,2))<=Q(2);

Q(3)=Q(2)-@sum(xiangmu(i):u(i,2))+d(3)*u(3,1)+d(4)*u(4,1)+d(1)*u(1,2)+d(2)*u(2,2);

@sum(xiangmu(i):u(i,3))<=Q(3);

Q(4)=Q(3)-@sum(xiangmu(i):u(i,3))+d(5)*u(5,1)+d(6)*u(6,1)+d(3)*u(3,2)+d(4)*u(4,2)+d(1)*u(1,3)+d(2)*u(2,3); @sum(xiangmu(i):u(i,4))<=Q(4);

Q(5)=Q(4)-@sum(xiangmu(i):u(i,4))+d(5)*u(5,2)+d(6)*u(6,2)+d(3)*u(

3,3)+d(4)*u(4,3)+d(1)*u(1,4)+d(2)*u(2,4);

@sum(xiangmu(i):u(i,5))<=Q(5);

Q6=Q(5)-@sum(xiangmu(i):u(i,5))+d(5)*u(5,3)+d(6)*u(6,3)+d(3)*u(3,

4)+d(4)*u(4,4)+d(1)*u(1,5)+d(2)*u(2,5)+d(7)*u(7,2)+d(8)*u(8,3); max=Q6-Q(1); end

附录四:问题二程序 1.预测结果的主程序

clc,clear format long

dx=[3003 5741 4307 5755 4352 3015 6977 4993 7232 6886 5070 7929 7480 5463 3041 4830 3345 5659 6665 7513 5978 4558 5055 4501 5308 6272 6333 6749 4034 7392 6442 4092 4597 5294 5148 5384 6220 6068 6095 5270 4378 5095 5973 7294 6916 6276 7763 6335 6486 7821 4449 5586 5812 6577 6276 5848 6974 3393 4268 5414 5589 4472 6863 3570 4116 4618 5474 6473 5073 6345 6866 3044 7403 5033 6859 6707 5377 4783 5202 6355 4237 4996 5603 5597 5231 4181 6830 5018 3051 5707 4877 3844 7434 4222 5370 5960 7574 5052 5460 3681 7936 7745 6391 3861 3510 5870 5697 5701 3898 7216 5135 4218 6879 7396 5516 5623 7471 5501 3174 4210 3511 4780 6255 6925 6598 6043 4862 7988 3660 7741 4315 4379 7120 6131 3661 5393 4486 4756 3871 5529 5807 5576 1 3029 7280 7312 6471 7760 1 1 1 1 3082 5083 1 1 1 1 1 1 ];

dy=[479 126 1338 910 -7955 5586 22591 8987 1211 164 2210 1539 5044 -1158 6386 9398 507 629 2540 1233 -3608 -6112 36832 10355 787 602 836 1616 8081 4946 16834 -7266 711 365 2765 1099 22300 8319 -19618 -2697 756 621 2549 1559 5130 -9028 22230 2733 846 935 1078 1006 9358 1318 -59901 24709 1489 593 1955 1740 9207 4237 38552 14511 353 749 2041 1548 7044 -2291 -39691 4570 1117 911 1392 1168 7488 1464 70314 19245 571 964 3077 1881 7209 5721 -21568 5075 449 868 1138 1131 5196 3173 99069 14864 1396 958 1372 1221 5849 10740 -27334 -4626

364 1089 1456 1757 -629 10770 -24878 -5786 994 1558 2864 1461 7769 7151 8981 21833 638 1175 3230 2223 8020 7916 -46712 21357 538 1527 1155 1494 4616 6411 64239 -11538 466 862 1022 2046 5395 6178 0 11819 1389 1319 2060 3227 0 0 0 0

403 787 0 0 0 0 0 0 ]; lx=[4307 5755 4352 3015 4352 3015 4993 5070 7929 7480 5463 7480 5463 4830 6665 7513 5978 4558 5978 4558 4501 6333 6749 4034 7392 4034 7392 4092 5148 5384 6220 6068 6220 6068 5270 5973 7294 6916 6276 6916 6276 6335 4449 5586 5812 6577 5812 6577 5848 4268 5414 5589 4472 5589 4472 3570 5474 6473 5073 6345 5073 6345 3044 6859 6707 5377 4783 5377 4783 6355 5603 5597 5231 4181 5231 4181 5018 4877 3844 7434 4222 7434 4222 5960 5460 3681 7936 7745 7936 7745 3861 5697 5701 3898 7216 3898 7216 4218 5516 5623 7471 5501 7471 5501 4210 6255 6925 6598 6043 6598 6043 7988 4315 4379 7120 6131 7120 6131 5393 3871 5529 5807 5576 5807 5576 3029 6471 7760 1 1 1 1 1 ];

ly=[1026 2686 1442 2634 6678 2542 -3145 2188 3558 3009 2935 -3861 15120 13270 3272 3222 443 14400 4794 1884 -3356 2050 2778 344 4473 3002 1549 10820 1513 2533 601 -6448 -852 -4651 -1593 1513 2533 601 -6448 -852 -4651 -1593 3005 2448 318 1087 4750 -179 14000 2015 2609 5168 -2930 3170 -235 14460 1782 2969 -981 2413 7304 19090 7065 3701 2636 6695 52 3795 2029 10510 3581 1809 952 844 -2671 6334 12970 1510 1724 -124 8984 -4299 3307 10170 3996 1450 7717 2803 8062 6753 10050 3204 2488 7598 -4722 -968 14900 -2294 1454 2199 7518 9321 6580 2131 10060 3258 2646 8671 -6551 11460 -4521 -8039 2661 1984 2029 20300 4379 1035 4456 1800 2443 7424 8639 12680 5112 2154

3047 3682 0 0 0 0 0 ]; r1=dy./dx; r2=ly./lx;

[m1,n1]=size(r1); [m2,n2]=size(r2); pj1=sum(r1)/m1;

x5=abs(r1(1:m1-2,5)'); t=1:1:18; plot(t,x5') n=length(x5); y5=x5;

y1=cumsum(y5);

for i=2:n;

z(i)=0.5*(y1(i)+y1(i-1)); end

B=[-z(2:n)',ones(n-1,1)]; Y=y5(2:n)'; u=B\\Y

d=x5(1)-u(2)/u(1) f=-u(1)

g=u(2)/u(1)

clc,clear

format short

dx=[3003 5741 4307 5755 4352 3015 6977 4993 7232 6886 5070 7929 7480 5463 3041 4830 3345 5659 6665 7513 5978 4558 5055 4501 5308 6272 6333 6749 4034 7392 6442 4092 4597 5294 5148 5384 6220 6068 6095 5270 4378 5095 5973 7294 6916 6276 7763 6335 6486 7821 4449 5586 5812 6577 6276 5848 6974 3393 4268 5414 5589 4472 6863 3570 4116 4618 5474 6473 5073 6345 6866 3044 7403 5033 6859 6707 5377 4783 5202 6355 4237 4996 5603 5597 5231 4181 6830 5018 3051 5707 4877 3844 7434 4222 5370 5960 7574 5052 5460 3681 7936 7745 6391 3861 3510 5870 5697 5701 3898 7216 5135 4218 6879 7396 5516 5623 7471 5501 3174 4210 3511 4780 6255 6925 6598 6043 4862 7988 3660 7741 4315 4379 7120 6131 3661 5393 4486 4756 3871 5529 5807 5576 1 3029

7280 7312 6471 7760 1 1 1 1 3082 5083 1 1 1 1 1 1 ];

dy=[479 126 1338 910 -7955 5586 22591 8987 1211 164 2210 1539 5044 -1158 6386 9398 507 629 2540 1233 -3608 -6112 36832 10355 787 602 836 1616 8081 4946 16834 -7266 711 365 2765 1099 22300 8319 -19618 -2697 756 621 2549 1559 5130 -9028 22230 2733 846 935 1078 1006 9358 1318 -59901 24709 1489 593 1955 1740 9207 4237 38552 14511 353 749 2041 1548 7044 -2291 -39691 4570 1117 911 1392 1168 7488 1464 70314 19245 571 964 3077 1881 7209 5721 -21568 5075 449 868 1138 1131 5196 3173 99069 14864 1396 958 1372 1221 5849 10740 -27334 -4626 364 1089 1456 1757 -629 10770 -24878 -5786 994 1558 2864 1461 7769 7151 8981 21833 638 1175 3230 2223 8020 7916 -46712 21357 538 1527 1155 1494 4616 6411 64239 -11538 466 862 1022 2046 5395 6178 0 11819 1389 1319 2060 3227 0 0 0 0 403 787 0 0 0 0 0 0 ]; lx=[4307 5755 4352 3015 4352 3015 4993 5070 7929 7480 5463 7480 5463 4830 6665 7513 5978 4558 5978 4558 4501 6333 6749 4034 7392 4034 7392 4092 5148 5384 6220 6068 6220 6068 5270 5973 7294 6916 6276 6916 6276 6335 4449 5586 5812 6577 5812 6577 5848 4268 5414 5589 4472 5589 4472 3570 5474 6473 5073 6345 5073 6345 3044 6859 6707 5377 4783 5377 4783 6355 5603 5597 5231 4181 5231 4181 5018 4877 3844 7434 4222 7434 4222 5960 5460 3681 7936 7745 7936 7745 3861 5697 5701 3898 7216 3898 7216 4218 5516 5623 7471 5501 7471 5501 4210 6255 6925 6598 6043 6598 6043 7988 4315 4379 7120 6131 7120 6131 5393 3871 5529 5807 5576 5807 5576 3029 6471 7760 1 1 1 1 1 ]; ly=[1026 2686 1442 2634 6678 2542 -3145 2188 3558 3009 2935 -3861 15120 13270 3272 3222 443 14400 4794 1884 -3356

2050 2778 344 4473 3002 1549 10820 1513 2533 601 -6448 -852 -4651 -1593 1513 2533 601 -6448 -852 -4651 -1593 3005 2448 318 1087 4750 -179 14000 2015 2609 5168 -2930 3170 -235 14460 1782 2969 -981 2413 7304 19090 7065 3701 2636 6695 52 3795 2029 10510 3581 1809 952 844 -2671 6334 12970 1510 1724 -124 8984 -4299 3307 10170 3996 1450 7717 2803 8062 6753 10050 3204 2488 7598 -4722 -968 14900 -2294 1454 2199 7518 9321 6580 2131 10060 3258 2646 8671 -6551 11460 -4521 -8039 2661 1984 2029 20300 4379 1035 4456 1800 2443 7424 8639 12680 5112 2154 3047 3682 0 0 0 0 0 ]; r1=dy./dx; r2=ly./lx; for k=1:1:24

f1(k)=-32.237282289792020*exp(-0.004860519469771*(k+1))+32.396789449299177-(-32.237282289792020*exp(-0.004860519469771*k)+32.396789449299177);

f2(k)=2.611794761368519*exp(0.040129569586124*(k+1))-2.589847365444464-(2.611794761368519*exp(0.040129569586124*k)+-2.589847365444464);

f3(k)=-53.936192008268250*exp(-0.006975213977920*(k+1))+54.246849078154483-(-53.936192008268250*exp(-0.006975213977920*k)+54.246849078154483);

f4(k)=4.204066980527866*exp(0.042954314870331*(k+1))-4.045943609546111-(4.204066980527866*exp(0.042954314870331*k)-4.045943609546111);

f5(k)=-51.893404113545870*exp(-0.026785799016977*(k+1))+50.065508892957638-(-51.893404113545870*exp(-0.026785799016977*k)+50.065508892957638);

f6(k)=1.961280183512572*exp(0.141183808463120*(k+1))-0.108543865104612-(1.961280183512572*exp(0.141183808463120*k)-0.108543865104612);

f7(k)=12.830168222270832*exp(0.076570902398875*(k+1))-9.592243612839845-(12.830168222270832*exp(0.076570902398875*k)-9.592243612839845);

f8(k)=71.803679557896885*exp(0.018056502764685*(k+1))-70.003759670053910-(71.803679557896885*exp(0.018056502764685*k)-70.003759670053910);

f77(k)=56.664971389806134*exp(0.068812132457811*(k+1))-53.427046780375143-(56.664971389806134*exp(0.068812132457811*k)-53.427046780375143);

f66(k)=22.081601859022133*exp(0.032981823605246*(k+1))-20.228865540614173-(22.081601859022133*exp(0.032981823605246*k)-20.228865540614173);

f55(k)=-42.144267399696375*exp(-0.039288264841265*(k+1))-43.972162620284607-(-42.144267399696375*exp(-0.039288264841265*k)-43.972162620284607); end

t=1:1:24;

f=[f1' f2' f3' f4' f5' f6' f7' f8' f77' f66' f55']; ff=[[r1(1,:) r1(1,7) r1(1,6) r1(1,5)];f] rr=ff(21:25,:)

d=abs(ff(1:20,:)-[r1 r1(:,7) r1(:,6) r1(:,5)])

2.预测异常值的主程序

clc,clear

clc,clear format long

dx=[3003 5741 4307 5755 4352 3015 6977 4993 7232 6886 5070 7929 7480 5463 3041 4830 3345 5659 6665 7513 5978 4558 5055 4501 5308 6272 6333 6749 4034 7392 6442 4092 4597 5294 5148 5384 6220 6068 6095 5270 4378 5095 5973 7294 6916 6276 7763 6335 6486 7821 4449 5586 5812 6577 6276 5848 6974 3393 4268 5414 5589 4472 6863 3570 4116 4618 5474 6473 5073 6345 6866 3044 7403 5033 6859 6707 5377 4783 5202 6355 4237 4996 5603 5597 5231 4181 6830 5018 3051 5707 4877 3844 7434 4222 5370 5960 7574 5052 5460 3681 7936 7745 6391 3861 3510 5870 5697 5701 3898 7216 5135 4218 6879 7396 5516 5623 7471 5501 3174 4210

3511 4780 6255 6925 6598 6043 4862 7988 3660 7741 4315 4379 7120 6131 3661 5393 4486 4756 3871 5529 5807 5576 1 3029 7280 7312 6471 7760 1 1 1 1 3082 5083 1 1 1 1 1 1 ]; dy=[479 126 1338 910 -7955 5586 22591 8987 1211 164 2210 1539 5044 -1158 6386 9398 507 629 2540 1233 -3608 -6112 36832 10355 787 602 836 1616 8081 4946 16834 -7266 711 365 2765 1099 22300 8319 -19618 -2697 756 621 2549 1559 5130 -9028 22230 2733 846 935 1078 1006 9358 1318 -59901 24709 1489 593 1955 1740 9207 4237 38552 14511 353 749 2041 1548 7044 -2291 -39691 4570 1117 911 1392 1168 7488 1464 70314 19245 571 964 3077 1881 7209 5721 -21568 5075 449 868 1138 1131 5196 3173 99069 14864 1396 958 1372 1221 5849 10740 -27334 -4626 364 1089 1456 1757 -629 10770 -24878 -5786 994 1558 2864 1461 7769 7151 8981 21833 638 1175 3230 2223 8020 7916 -46712 21357 538 1527 1155 1494 4616 6411 64239 -11538 466 862 1022 2046 5395 6178 0 11819 1389 1319 2060 3227 0 0 0 0

403 787 0 0 0 0 0 0 ]; lx=[4307 5755 4352 3015 4352 3015 4993 5070 7929 7480 5463 7480 5463 4830 6665 7513 5978 4558 5978 4558 4501 6333 6749 4034 7392 4034 7392 4092 5148 5384 6220 6068 6220 6068 5270 5973 7294 6916 6276 6916 6276 6335 4449 5586 5812 6577 5812 6577 5848 4268 5414 5589 4472 5589 4472 3570 5474 6473 5073 6345 5073 6345 3044 6859 6707 5377 4783 5377 4783 6355 5603 5597 5231 4181 5231 4181 5018 4877 3844 7434 4222 7434 4222 5960 5460 3681 7936 7745 7936 7745 3861 5697 5701 3898 7216 3898 7216 4218 5516 5623 7471 5501 7471 5501 4210 6255 6925 6598 6043 6598 6043 7988 4315 4379 7120 6131 7120 6131 5393 3871 5529 5807 5576 5807 5576 3029 6471 7760 1 1 1 1 1 ];

ly=[1026 2686 1442 2634 6678 2542 -3145 2188 3558 3009 2935 -3861 15120 13270 3272 3222 443 14400 4794 1884 -3356 2050 2778 344 4473 3002 1549 10820 1513 2533 601 -6448 -852 -4651 -1593 1513 2533 601 -6448 -852 -4651 -1593 3005 2448 318 1087 4750 -179 14000 2015 2609 5168 -2930 3170 -235 14460 1782 2969 -981 2413 7304 19090 7065 3701 2636 6695 52 3795 2029 10510 3581 1809 952 844 -2671 6334 12970 1510 1724 -124 8984 -4299 3307 10170 3996 1450 7717 2803 8062 6753 10050 3204 2488 7598 -4722 -968 14900 -2294 1454 2199 7518 9321 6580 2131 10060 3258 2646 8671 -6551 11460 -4521 -8039 2661 1984 2029 20300 4379 1035 4456 1800 2443 7424 8639 12680 5112 2154 3047 3682 0 0 0 0 0 ]; r1=dy./dx; r2=ly./lx;

a=r1(1:18,5); t0=find(a<=0)

t1=cumsum(t0);n=length(t1);

B=[-0.5*(t1(1:end-1)+t1(2:end)),ones(n-1,1)];Y=t0(2:end); r=B\\Y

h=t0(1)-r(2)/r(1) I=-r(1)

j=r(2)/r(1)

clc,clear format long for k=1:1:12;

t5(k)=0.818181818181818*exp(1.294117647058823*(k+1))+0.181818181818182-(0.818181818181818*exp(1.294117647058823*k)+0.181818181818182);

t6(k)=5.249999999999989*exp(0.489795918367347*(k+1))-3.249999999999989-(5.249999999999989*exp(0.489795918367347*k)-3.249999999999989);

t7(k)=48.935483870967730*exp(0.148112756808409*(k+1))-43.935483870967730-(48.935483870967730*exp(0.148112756808409*k)-43.935483870967730); end t5 t6; t7;

附录五:问题三程序

model: sets:

xiangmu/1..8/:t; nian/1..5/:P,Q,n;

links(xiangmu,nian):r,d,u; endsets data:

r=0.142500000000000 0.141800000000000 0.141100000000000 0.140500000000000 0.139800000000000

0.229200000000000 0.238600000000000 0.248400000000000 0.258600000000000 0.269100000000000

0.328400000000000 0.326100000000000 0.323800000000000 0.321600000000000 0.319300000000000

0.417300000000000 0.435600000000000 0.454800000000000 0.474700000000000 0.495600000000000

0.769700000000000 0.740000000000000 0.711500000000000 0.684100000000000 0.657700000000000

1.385600000000000 1.432100000000000 -1.480100000000000 1.529700000000000 1.581000000000000

1.492170000000000 -15.984600000000000

17.123300000000000

18.343100000000000 -19.649699999999999

3.465500000000000 3.597600000000000 -3.734800000000000 3.877100000000000 4.025000000000000;

t=60000,60000,35000,30000,30000,40000,30000,30000; enddata

Q(1)=200000;

@for(links(i,j):d(i,j)=r(i,j)+1); @for(links(i,j)|i#le#2:u(i,j)<=t(i)); @for(links(i,j)|(i#eq#3 #or# (j#ge#2):u(i,j)+u(i,j-1)<=t(i)); @for(links(i,j)|(i#eq#5 @for(links(i,j)|(i#eq#7 j#eq#3):u(i,j)<=t(i));

i#eq#4) i#eq#6) #or#

(i#eq#8

#and# #and# #and#

#or#

#and#

j#eq#2)

(j#ge#3):u(i,j)+u(i,j-1)+u(i,j-2)<=t(i));

@for(nian(j):P(j)=@if(u(1,j)#ge#20000,Q(j)+u(1,j)*0.01,Q(j))); @for(nian(j):n(j)=u(5,j)/500); @for(nian(j):@gin(n(j)));

@sum(xiangmu(i):u(i,1))<=P(1);

Q(2)=P(1)-@sum(xiangmu(i):u(i,1))+d(1,1)*u(1,1)+d(2,1)*u(2,1); @sum(xiangmu(i):u(i,2))<=P(2);

Q(3)=P(2)-@sum(xiangmu(i):u(i,2))+d(1,2)*u(1,2)+d(2,2)*u(2,2)+@if(u(3,1)*u(4,1)#eq#0,d(3,1)*u(3,1)+d(4,1)*u(4,1),0.6147*u(3,1)+0.41952*u(4,1));

@sum(xiangmu(i):u(i,3))<=P(3);

Q(4)=P(3)-@sum(xiangmu(i):u(i,3))+@if(u(5,1)*u(6,1)#eq#0,d(5,1)*u(5,1)+d(6,1)*u(6,1),0.9343*u(5,1)+1.1058*u(6,1))+@if(u(4,2)*u(3,2)#eq#0,d(4,2)*u(4,2)+d(3,2)*u(3,2),0.63294*u(3,2)+0.41848*u(4,2))+d(1,3)*u(1,3)+d(2,3)*u(2,3); @sum(xiangmu(i):u(i,4))<=P(4);

Q(5)=P(4)-@sum(xiangmu(i):u(i,4))+@if(u(5,2)*u(6,2)#eq#0,d(5,2)*u(5,2)+d(6,2)*u(6,2),1.20793*u(5,2)+1.11184*u(6,2))+@if(u(4,3)*u(3,3)#eq#0,d(4,3)*u(4,3)+d(3,3)*u(3,3),0.65175*u(3,3)+0.41745*u(4,3))+d(1,4)*u(1,4)+d(2,4)*u(2,4); @sum(xiangmu(i):u(i,5))<=P(5);

Q6=P(5)-@sum(xiangmu(i):u(i,5))+@if(u(5,3)*u(6,3)*u(8,3)#gt#0,1.281122*u(5,3)+0.72426*u(6,3)+1.21066*u(8,3),0)+@if(u(5,3)*u(6,3)#e

q#0,d(5,3)*u(5,3)+d(6,3)*u(6,3)+d(8,3)*u(8,3),1.13326*u(5,3)+1.12813*u(6,3))+@if(u(3,4)*u(4,4)#eq#0,d(3,4)*u(3,4)+d(4,4)*u(4,4),0.

67116*u(3,4)+0.41642*u(4,4))+d(1,5)*u(1,5)+d(2,5)*u(2,5); max=Q6-Q(1); end

附录六:问题四程序

model:

sets:

xiangmu/1..8/:t;

nian/1..5/:P,Q,n,c,e;

links(xiangmu,nian):d,u,r; endsets data:

d=1.142500000000000 1.141800000000000 1.141100000000000 1.140500000000000 1.139800000000000

1.229200000000000 1.238600000000000 1.248400000000000

1.258600000000000 1.269100000000000

1.328400000000000 1.326100000000000 1.323800000000000 1.321600000000000 1.319300000000000

1.417300000000000 1.435600000000000 1.454800000000000 1.474700000000000 1.495600000000000

1.769700000000000 1.740000000000000 1.711500000000000 1.684100000000000 1.657700000000000

2.385600000000000 3.432100000000000 -0.480100000000000 2.529700000000000 2.581000000000000 2.492170000000000

-14.984600000000000

18.123300000000000

19.343100000000000 -18.649699999999999

4.465500000000000 4.597600000000000 -2.734800000000000 4.877100000000000 5.025000000000000;

t=60000,60000,35000,30000,30000,40000,30000,30000; c=0 0 0 0 0; e=0 0 0 0 0;

r=0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.8653 0.8653 0.8653 0.8653 0.8653 0.8381 0.8381 0.8381 0.8381 0.8381 5.7759 5.7759 5.7759 5.7759 5.7759 1.3993 1.3993 1.3993 1.3993 1.3993; enddata Q(1)=200000; b=0.13;;

f1=0.8653;f2=0.8653;f3=0.8653;f4=0.8702;f5=0.8451;f6=0.8451;f7=0.8451;f8=0.8512;f9=1.4035;

w1=@sum(nian(j):r(1,j)*u(1,j));w1/Q(1)<=b; w2=@sum(nian(j):r(2,j)*u(2,j));w2/Q(1)<=b;

w3=@sum(nian(j):@if(u(3,j)*u(4,j)#eq#0,r(3,j)*u(3,j),c(j)*u(3,j)));w3/Q(1)<=b;

w4=@sum(nian(j):@if(r(4,j)*u(3,j)#eq#0,r(4,j)*u(4,j),e(j)*u(4,j)));w4/Q(1)<=b;

w5=@if(u(5,1)*u(6,1)#eq#0,r(5,1)*u(5,1),f1*u(5,1))+@if(u(5,2)*u(6,2)#eq#0,r(5,2)*u(5,2),f2*u(5,2))+@if(u(5,3)*u(6,3)#gt#0 #and#

u(8,3)#eq#0,f3*u(5,3),0)+@if(u(5,3)*u(6,3)#eq#0,r(5,3)*u(5,3),0)+@if(u(5,3)*u(8,3)*u(6,3)#gt#0,f4*u(5,3),0);w5/Q(1)<=b;

w6=@if(u(5,1)*u(6,1)#eq#0,r(6,1)*u(6,1),f5*u(6,1))+@if(u(5,2)*u(6,2)#eq#0,r(6,2)*u(6,2),f6*u(6,2))+@if(u(5,3)*u(6,3)#gt#0 #and#

u(8,3)#eq#0,f7*u(6,3),0)+@if(u(5,3)*u(8,3)*u(6,3)#gt#0,f8*u(6,3),0)+@if(u(5,3)*u(6,3)#eq#0,r(6,3)*u(6,3),0);w6/Q(1)<=b; w7=r(7,2)*u(7,2);w7/Q(1)

w8=@if(u(5,3)*u(6,3)#eq#0,r(8,3)*u(8,3),f9*u(8,3));w8/Q(1)<=b;

@for(links(i,j)|i#le#2:u(i,j)<=t(i)); @for(links(i,j)|(i#eq#3 #or# (j#ge#2):u(i,j)+u(i,j-1)<=t(i));

@for(links(i,j)|(i#eq#5 #or#

(j#ge#3):u(i,j)+u(i,j-1)+u(i,j-2)<=t(i)); @for(links(i,j)|(i#eq#7 j#eq#3):u(i,j)<=t(i));

#and#

j#eq#2)

i#eq#4) i#eq#6) #or#

(i#eq#8

#and# #and# #and#

@for(nian(j):P(j)=@if(u(1,j)#ge#20000,Q(j)+u(1,j)*0.01,Q(j))); @for(nian(j):n(j)=u(5,j)/500); @for(nian(j):@gin(n(j)));

@sum(xiangmu(i):u(i,1))<=P(1);

Q(2)=P(1)-@sum(xiangmu(i):u(i,1))+d(1,1)*u(1,1)+d(2,1)*u(2,1); @sum(xiangmu(i):u(i,2))<=P(2);

Q(3)=P(2)-@sum(xiangmu(i):u(i,2))+d(1,2)*u(1,2)+d(2,2)*u(2,2)+@if(u(3,1)*u(4,1)#eq#0,d(3,1)*u(3,1)+d(4,1)*u(4,1),0.6147*u(3,1)+0.41952*u(4,1));

@sum(xiangmu(i):u(i,3))<=P(3);

Q(4)=P(3)-@sum(xiangmu(i):u(i,3))+@if(u(5,1)*u(6,1)#eq#0,d(5,1)*u(5,1)+d(6,1)*u(6,1),0.9343*u(5,1)+1.1058*u(6,1))+@if(u(4,2)*u(3,2)#eq#0,d(4,2)*u(4,2)+d(3,2)*u(3,2),0.63294*u(3,2)+0.41848*u(4,2))+d(1,3)*u(1,3)+d(2,3)*u(2,3); @sum(xiangmu(i):u(i,4))<=P(4);

Q(5)=P(4)-@sum(xiangmu(i):u(i,4))+@if(u(5,2)*u(6,2)#eq#0,d(5,2)*u(5,2)+d(6,2)*u(6,2),1.20793*u(5,2)+1.11184*u(6,2))+@if(u(4,3)*u(3,3)#eq#0,d(4,3)*u(4,3)+d(3,3)*u(3,3),0.65175*u(3,3)+0.41745*u(4,3))+d(1,4)*u(1,4)+d(2,4)*u(2,4); @sum(xiangmu(i):u(i,5))<=P(5);

Q6=P(5)-@sum(xiangmu(i):u(i,5))+@if(u(5,3)*u(6,3)*u(8,3)#gt#0,1.281122*u(5,3)+0.72426*u(6,3)+1.21066*u(8,3),0)+@if(u(5,3)*u(6,3)#eq#0,d(5,3)*u(5,3)+d(6,3)*u(6,3)+d(8,3)*u(8,3),0)+@if(u(5,3)*u(6,3)#gt#0#and#u(8,3)#eq#0,1.133268*u(5,3)+1.1283*u(6,3),0)+@if(u(3,4)*u(4,4)#eq#0,d(3,4)*u(3,4)+d(4,4)*u(4,4),0.67116*u(3,4)+0.41642*u(4,4))+d(1,5)*u(1,5)+d(2,5)*u(2,5); max=Q6-Q(1); End

附录七:问题五程序

model:

sets:

xiangmu/1..8/:t;

nian/1..5/:P,Q,n,c,e,a,k,v,l; links(xiangmu,nian):d,u,r; endsets data:

d=1.142500000000000 1.141800000000000 1.141100000000000 1.140500000000000 1.139800000000000

1.229200000000000 1.238600000000000 1.248400000000000 1.258600000000000 1.269100000000000

1.328400000000000 1.326100000000000 1.323800000000000 1.321600000000000 1.319300000000000

1.417300000000000 1.435600000000000 1.454800000000000 1.474700000000000 1.495600000000000

1.769700000000000 1.740000000000000 1.711500000000000 1.684100000000000 1.657700000000000

2.385600000000000 3.432100000000000 -0.480100000000000 2.529700000000000 2.581000000000000 2.492170000000000 -14.984600000000000 19.343100000000000 -18.649699999999999

18.123300000000000

4.465500000000000 4.597600000000000 -2.734800000000000 4.877100000000000 5.025000000000000;

t=60000,60000,35000,30000,30000,40000,30000,30000; c=0 0 0 0 0;

e=0 0 0 0 0;

r=0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.8653 0.8653 0.8653 0.8653 0.8653 0.8381 0.8381 0.8381 0.8381 0.8381 5.7759 5.7759 5.7759 5.7759 5.7759 1.3993 1.3993 1.3993 1.3993 1.3993; l=0.0594 0.0585 0.0577 0.0570 0.0563; k=0.0525 0.0475 0.0475 0.0325 0.0325; enddata Q(1)=200000; b=0.13;

f1=0.8653;f2=0.8653;f3=0.8653;f4=0.8702;f5=0.8451;f6=0.8451;f7=0.8451;f8=0.8512;f9=1.4035;

w1=@sum(nian(j):r(1,j)*u(1,j));w1/Q(1)<=b; w2=@sum(nian(j):r(2,j)*u(2,j));w2/Q(1)<=b;

w3=@sum(nian(j):@if(u(3,j)*u(4,j)#eq#0,r(3,j)*u(3,j),c(j)*u(3,j)));w3

/Q(1)<=b;

w4=@sum(nian(j):@if(r(4,j)*u(3,j)#eq#0,r(4,j)*u(4,j),e(j)*u(4,j)));w4/Q(1)<=b;

w5=@if(u(5,1)*u(6,1)#eq#0,r(5,1)*u(5,1),f1*u(5,1))+@if(u(5,2)*u(6,2)#eq#0,r(5,2)*u(5,2),f2*u(5,2))+@if(u(5,3)*u(6,3)#gt#0 #and#

u(8,3)#eq#0,f3*u(5,3),0)+@if(u(5,3)*u(6,3)#eq#0,r(5,3)*u(5,3),0)+@if(u(5,3)*u(8,3)*u(6,3)#gt#0,f4*u(5,3),0);w5/Q(1)<=b;

w6=@if(u(5,1)*u(6,1)#eq#0,r(6,1)*u(6,1),f5*u(6,1))+@if(u(5,2)*u(6,2)#eq#0,r(6,2)*u(6,2),f6*u(6,2))+@if(u(5,3)*u(6,3)#gt#0 #and#

u(8,3)#eq#0,f7*u(6,3),0)+@if(u(5,3)*u(8,3)*u(6,3)#gt#0,f8*u(6,3),0)+@if(u(5,3)*u(6,3)#eq#0,r(6,3)*u(6,3),0);w6/Q(1)<=b; w7=r(7,2)*u(7,2);w7/Q(1)

w8=@if(u(5,3)*u(6,3)#eq#0,r(8,3)*u(8,3),f9*u(8,3));w8/Q(1)<=b;

@for(links(i,j)|i#le#2:u(i,j)<=t(i));

@for(links(i,j)|(i#eq#3 #or# i#eq#4) i#eq#6) #or#

(i#eq#8

#and# #and# #and#

(j#ge#2):u(i,j)+u(i,j-1)<=t(i)); @for(links(i,j)|(i#eq#5 #or#

(j#ge#3):u(i,j)+u(i,j-1)+u(i,j-2)<=t(i)); @for(links(i,j)|(i#eq#7 j#eq#3):u(i,j)<=t(i));

#and#

j#eq#2)

@for(nian(j):P(j)=@if(u(1,j)#ge#20000,Q(j)+u(1,j)*0.01,Q(j))); @for(nian(j):n(j)=u(5,j)/500); @for(nian(j):@gin(n(j)));

@sum(xiangmu(i):u(i,1))<=P(1)+v(1)-a(1);

Q(2)=P(1)-@sum(xiangmu(i):u(i,1))+d(1,1)*u(1,1)+d(2,1)*u(2,1); @sum(xiangmu(i):u(i,2))<=P(2)+v(2)-a(2);

Q(3)=P(2)-@sum(xiangmu(i):u(i,2))+d(1,2)*u(1,2)+d(2,2)*u(2,2)+@if(u(3,1)*u(4,1)#eq#0,d(3,1)*u(3,1)+d(4,1)*u(4,1),0.6147*u(3,1)+0.41952*u(4,1));

@sum(xiangmu(i):u(i,3))<=P(3)+v(3)-a(3);

Q(4)=P(3)-@sum(xiangmu(i):u(i,3))+@if(u(5,1)*u(6,1)#eq#0,d(5,1)*u(5,1)+d(6,1)*u(6,1),0.9343*u(5,1)+1.1058*u(6,1))+@if(u(4,2)*u(3,2)#eq#0,d(4,2)*u(4,2)+d(3,2)*u(3,2),0.63294*u(3,2)+0.41848*u(4,2))+d(1,3)*u(1,3)+d(2,3)*u(2,3); @sum(xiangmu(i):u(i,4))<=P(4)+v(4)-a(4);

Q(5)=P(4)-@sum(xiangmu(i):u(i,4))+@if(u(5,2)*u(6,2)#eq#0,d(5,2)*u(5,2)+d(6,2)*u(6,2),1.20793*u(5,2)+1.11184*u(6,2))+@if(u(4,3)*u(3,3)#eq#0,d(4,3)*u(4,3)+d(3,3)*u(3,3),0.65175*u(3,3)+0.41745*u(4,3))+d(1,4)*u(1,4)+d(2,4)*u(2,4);

@sum(xiangmu(i):u(i,5))<=P(5)+v(5)-a(5);

Q6=P(5)-@sum(xiangmu(i):u(i,5))+@if(u(5,3)*u(6,3)*u(8,3)#gt#0,1.281122*u(5,3)+0.72426*u(6,3)+1.21066*u(8,3),0)+@if(u(5,3)*u(6,3)#eq#0,d(5,3)*u(5,3)+d(6,3)*u(6,3)+d(8,3)*u(8,3),0)+@if(u(5,3)*u(6,3)#gt#0#and#u(8,3)#eq#0,1.133268*u(5,3)+1.1283*u(6,3),0)+@if(u(3,4)*u(4,4)#eq#0,d(3,4)*u(3,4)+d(4,4)*u(4,4),0.67116*u(3,4)+0.41642*u(4,4))+d(1,5)*u(1,5)+d(2,5)*u(2,5); @for(nian(j):a(j)*v(j)=0); @for(nian(j):a(j)<=P(j));

max=Q6-Q(1)+@sum(nian(j):a(j)*(k)^(6-j))-@sum(nian(j):v(j)*(l(j))^(6-j)); end