首页 > 文库大全 > 精品范文库 > 5号文库

投资问题数学建模

投资问题数学建模



数学模型第一次讨论作业

问题:

某部门现有资金10万元,五年内有以下投资

项目供选择:

项目A:从第一年到第四年每年初投资,次年末收回本金且获利15%;

项目B:第三年初投资,第五年末收回本金且获利25%,最大投资额为4万元;

项目C:第二年初投资,第五年末收回本金且获利40%,最大投资额为3万元;

项目D:每年初投资,年末收回本金且获利6%;

问如何确定投资策略使第五年末本息总额最大?

问题分析:

用表示第i年对第j个项目的投资金额

要使第五年年末本息总额最大,应当在每年将所有可用资金都用于投资,以确保资金的充分利用,由于项目投资均发生在年初,故以下只讨论年初的投资情况:

第一年:

第二年:手上资金(即第一年年末收回资金)为,全部用来对可投资项目投资,则有=

第三年:同理,有=

第四年:=

第五年:=

第五年年末本息和为(即第五年所能收回的所有资金)

建立模型:

=

=

=

=,求解模型:

Lingo解法:

可编写lingo程序如下:

model:

max=1.06*x54+1.15*x41+1.25*x32+1.4*x23;!目标函数;

x11+x14=10;!以下约束条件表示每年资金全部用于投资;

1.06*x14=x21+x23+x24;

1.15*x11+1.06*x24=x31+x32+x34;

1.15*x21+1.06*x34=x41+x44;

1.15*x31+1.06*x44=x54;

x23<=3;!限制B,C项目的最大投资额;

x32<=4;

end

运行结果如下:

Global

optimal

solution

found.Objective

value:

14.37500

Infeasibilities:

0.000000

Total

solver

iterations:

Variable

Value

Reduced

Cost

X54

0.000000

0.000000

X41

4.500000

0.000000

X32

4.000000

0.000000

X23

3.000000

0.000000

X11

7.169811

0.000000

X14

2.830189

0.000000

X21

0.000000

0.000000

X24

0.000000

0.3036000E-01

X31

0.000000

0.000000

X34

4.245283

0.000000

X44

0.000000

0.2640000E-01

Row

Slack

or

Surplus

Dual

Price

14.37500

1.000000

0.000000

1.401850

0.000000

-1.322500

0.000000

-1.219000

0.000000

-1.150000

0.000000

-1.060000

0.000000

0.7750000E-01

0.000000

0.3100000E-01

所得最优值为14.375万元,对应的最优解为:

x11=7.169811,x14=2.830189,x23=3,x32=4,x34=4.245283,x41=4.5,其余值为0

即第一年对A项目投资7.169811万元,对D项目投资2.830189万元;第二年对C项目投资3万元;第三年对B项目投资4万元,对D项目投资4.245283万元;第四年对A项目投资4.5万元。

Lindo解法:

可编写lindo程序如下:

max

1.06x54+1.15x41+1.25x32+1.4x23

st

x11+x14=10

1.06x14-x21-x23-x24=0

1.15x11+1.06x24-x31-x32-x34=0

1.15x21+1.06x34-x41-x44=0

1.15x31+1.06x44-x54=0

x23<=3

x32<=4

输出结果如下:

LP

OPTIMUM

FOUND

AT

STEP

OBJECTIVE

FUNCTION

VALUE

1)

14.37500

VARIABLE

VALUE

REDUCED

COST

X54

0.000000

0.000000

X41

4.500000

0.000000

X32

4.000000

0.000000

X23

3.000000

0.000000

X11

7.169811

0.000000

X14

2.830189

0.000000

X21

0.000000

0.000000

X24

0.000000

0.030360

X31

0.000000

0.000000

X34

4.245283

0.000000

X44

0.000000

0.026400

ROW

SLACK

OR

SURPLUS

DUAL

PRICES

2)

0.000000

1.401850

3)

0.000000

-1.322500

4)

0.000000

-1.219000

5)

0.000000

-1.150000

6)

0.000000

-1.060000

7)

0.000000

0.077500

8)

0.000000

0.031000

NO.ITERATIONS=

所得最优值为14.375万元,对应的最优解为:

x11=7.169811,x14=2.830189,x23=3,x32=4,x34=4.245283,x41=4.5,其余值为0

即第一年对A项目投资7.169811万元,对D项目投资2.830189万元;第二年对C项目投资3万元;第三年对B项目投资4万元,对D项目投资4.245283万元;第四年对A项目投资4.5万元。

Matlab解法:

Way1可编写matlab程序如下:

f=[0

0

0

0

0

0

1.4

0

0

1.25

0

0

1.15

0

0

0

0

0

0

1.06];

Aeq=[1

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0;

0

0

0

1.06

0

0

0

0

0

0

0

0

0

0

0

0

0;

1.15

0

0

0

0

0

0

1.06

0

0

0

0

0

0

0

0

0;

0

0

0

0

1.15

0

0

0

0

0

0

1.06

0

0

0

0

0

0;

0

0

0

0

0

0

0

0

1.15

0

0

0

0

0

0

1.06

0

0

0

-1];

beq=[10;0;0;0;0];

A=[0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0;

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0];

b=[3;4];

lb=zeros(20,1);

[x,fval]=linprog(-f,A,b,Aeq,beq,lb,[])

运行结果如下:

Optimization

terminated.x

=

6.5508

0

0

3.4492

0.6561

0

3.0000

0.0000

2.0066

4.0000

0

1.5268

2.3730

0

0

0.0000

0

0

0

2.3076

fval

=

-14.3750

所得最优值为14.375万元,对应的最优解为:x11=6.5508,x14=3.4492,x21=0.6561,x23=3,x31=2.0066,x32=4,x34=1.5268,x41=2.3730,x54=2.3076,其余值为0。

Way2可编写matlab程序如下:

f=[0 0 0 0 0 0-1.4 0 0-1.25 0 0-1.15 0 0 0 0 0 0-1.06];

A=[];

b=[];

Aeq=[1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;...0 0 0 1.06-1 0-1-1 0 0 0 0 0 0 0 0 0 0 0 0;...1.15 0 0 0 0 0 0 1.06-1-1 0-1 0 0 0 0 0 0 0 0;...0 0 0 0 1.15 0 0 0 0 0 0 1.06-1 0 0-1 0 0 0 0;...0 0 0 0 0 0 0 0 1.15 0 0 0 0 0 0 1.06 0 0 0-1];

beq=[10;0;0;0;0];

lb=[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0];

ub=[inf inf inf inf inf inf 3 inf inf 4 inf inf inf inf inf inf inf inf inf inf];

[x,fval]=linprog(f,A,b,Aeq,beq,lb,ub)

运行结果如下:

Optimization terminated.x =

6.5113

0

0

3.4887

0.6980

0

3.0000

0.0000

2.0003

4.0000

0

1.4877

2.3797

0

0

0.0000

0

0

0

2.3004

fval =

-14.3750

所得最优值为14.375万元,对应的最优解为:x11=6.5113,x14=3.4887,x21=0.6980,x23=3,x31=2.0003,x32=4,x34=1.4877,x41=2.3797,x54=2.3004,其余值为0。

讨论:利用matlab,lingo及lindo程序分别求解上述模型后,发现取到相同最优值情况下,matlab的最优解不同于lingo和lindo,该问题可能存在多个最优解?

经尝试已排除变量设置数量差异,软件版本差异及计算机系统差异的原因,可能是软件求解原理或近似导致,或者该问题本身最优解不唯一。

相关内容

热门阅读

最新更新

随机推荐