数学建模竞赛论文模板
-
关于
2011
东北大学软件学院第四届“科技节
”之数学建
模竞赛题目的通知
发布者:
陈晨
2011-12-08 09:29
注意:请先阅读
< br>“
2011
东北大学科技节数学建模竞赛论文格式规范和
规则
”
2011
东北大学
“
< br>科技节
”
数学建模竞赛题目
A
货币基金操作
下表为
2
011-12-02
由中国银行发布的世界主要外汇牌价。
打印
某货币
基金管理人的工作是,每天将现有的美元、英镑、马克、日元四种货币按当天的汇率进行
兑换,使在满足需要的条件下,按美元计算的价值最高。现有货币和当天需求如下:
0
/
14
建立你的数学模型说明:
问该天基金管理人当天应如何操作。
如果不
限定持有的货币种类,以目前中国主权基金的规模量为限如何操作能获得最大效益。
B
预测司机是否闯红灯
有报道
称最近科研人员研发了一种预测司机是否闯红灯的算法,该算法通过分析车辆的数个参
数
的算法,包括车辆的减速,车辆离交通信号灯的距离以及何时红灯亮起等,并且研究人员能够在短
时间内获得某辆车的
3D
运动,利用这些数据可以判断
哪些车辆是由可能违反交通规则的人驾驶的,
而哪些车辆是由遵纪守法的人驾驶的。
p>
建立你的数学模型,预测司机是否闯红灯,并说明算法的实用性和可操作性。
1
/
14
所做题
目编号(
A
、
B
中选一)
:
___A__
参赛队员:
序号
1
2
3
姓名
陶蔚
杨得天
彭莹
班级
软信
1001
软信
1001
自动化
1103
学号
2
/
14
货币基金操作
一摘要
本题的货币基金操作问题可以
理解为如何在货币之间兑换取得最大效益。
根
据题目提供的外汇
牌价表,
计算出货币之间的兑入、
兑出汇率。
< br>对问题分析之后,
问题一采用线性规划求解最小化问题,首先建立目标函数
Minz(x)
,在
matlab
里用
linprog
函数求解得到符合条件的解。
按照解的情况,
在实际操作中对资金
作
如下分配:
资金分配表
美元
英镑
马克
日元
美元
英镑
马克
6.0000
0.0000
0.0000
1.8708
1.0000
0.9583
0.0000
0.0000
7.0416
0.1292
0.0000
0.0001
p>
可以实现获得最大效益,
资金总量为
20.
2118*10^8,
也就是说这些解是有效的。
对于问题二,
经过高度抽象化后,
建立了一个数学模型,
同样采用线性规划求解
最小化的方法,但是由于涉及到的数据很多,用
matlab
编程比较复杂,相比之
下,用
lingo
较为简单,得到了满足约束条件的解后,按照解的情况,对资
金进
行如下操作:
用
1.355669*10^8
兑换欧元;
用
0.1293339*10^8
兑换日元;
p>
用
3757.776*10^8
兑换瑞典克朗
;
用
4.739247*10^8
兑换英镑;
用
0.0000000*10^8
兑换其他国家货币;
p>
根据实际情况分析,这些解存在着缺陷,货币基金管理者用
99.6%
以上的中国
主权基金兑换瑞典克朗
,
这就要考虑到瑞典克朗的规模量,
其他货币的需求量等
问题,
所以这些解不符合实际。
发现在实际中
无法操作,
因此这些解只对该模型
有效。
关键词:货币兑换
线性规划
解
有效
0
/
14
二问题重述
< br>问题一,
作为一个货币基金管理者,
兑换货币前首先得清
楚各种货币之间兑
入,
兑出的汇率为多少,
这可以通过题目给出的外汇牌价表算出。
然后做出合理
的假
设,
用自己手中已有的货币去兑换。
但是必须满足市场需求,<
/p>
所以要考虑用
多少美元分别兑换成多少英镑,马克,日元;用多少
英镑换成多少美元,马克,
日元;用多少马克换成多少美元,英镑,日元,然后按美元计
算这些兑换完后资
金总量。这样,可以通过建立一个数学模型来解决这问题,采用
linprog
函数进
行线性规划求解最小化
问题,用
matlab
得到函数的解,再根据实际情况,考虑<
/p>
这些解是否符合实际,若符合,说明操作可行,若不符合,说明建模不成功。
问题二,
如果现在所掌握的资金相当于中国主权基
金的规模量,
根据网上资
料显示近年中国主权基金量约为
3770
亿美元,不限定所持有的货币种类,那么
假设统一用美元代替,
用美元兑换其他各国的货币,
这样问
题二就简化为同问题
一类似的问题,同样建立数学模型来求解。但是考虑到
matlab
编程的复杂性,
所以采用
lingo
,得出解后,对这些解的情况进行分析,分析是否符合实际情况。
三符号约定
x1,x2,x3,x4
:用美元分别兑换成美元,英镑,马克,日元的金额数(
p>
*10^8
)
;
x5,x6,x7,x8
:用英镑分别兑换成美元,英镑,马克
,日元的金额数(
*10^8
)
;
p>
x5,x6,x7,x8
:用马克分别兑
换成美元,英镑,马克,日元的金额数(
*10^8
)
;
y1,y2,y3
:分别表示英镑,马克,日元按美元计算的价值。
表—
4
中,
c1
,
c2
,
c3
……
p>
c17
:各国货币按美元计算的汇率。
<
/p>
表—
5
中,
p1
,
p2
,
p3
……
p17
:美元对其他国家的汇率。
表—
6
中,
m1, m2 , m3
……
m17<
/p>
:用中国主权基金兑换其他国家的金额数。
M
:中国主权基金的总价值
四问题分析
问题一:
问题一只需考虑美元,英镑
,欧元,日元四种货币之间的汇率关系,首先计
算出四种货币之间的汇率,
以美元对日元为例:
美元
/
日元
=(
现汇美元买价
/
现汇
日元卖价
)/(
现汇美
元卖价
/
现汇日元买价
)
,
其中美元对日元的汇率
=
现汇美元买
价
/
现汇日元卖价,
日元对美元的汇率
=
现汇美元卖价
/
现汇日元买价。
(参考资料
《国际金融》
(
高职高专规划教材
)
)
。因此做出这四种货币之间的汇率关系表如
附录:表—
1
。
如果货币基金管理者将资金进行如下分配(如表—
2
)
:
用美元分别兑换成
x1
美元,
x2
英镑,<
/p>
x3
马克,
x4
日元;
用英镑分别兑换成
x5
美元,
x6
英镑,
x
7
马克,
x8
日元;
< br>
0
/
14
用马克分别兑换成
x9
美元,
x10
英镑,
x11
马克,
x12
日元;
y1,
y2,y3
:
分别表示英镑,
马克,<
/p>
日元按美元计算的价值。
根据表可以算出:
y1=(1.560897+
(
1
/0.633))/2
y2=(1.3395+(1/0.7376))/2
y3=(0.01278+(1/77.3193))/2
按美元计算兑换后的总价值,建立目标函数
< br>Minz(x)=-(x1+x2*0.6330*y1+x3*0.73764*y2+x4*77.3 1927*y3+x5*1.560897+x6
*y1+x7*1.15601*y2
+x8*121.172087*y3+x9*1.339487+x10*0.85132*y1+x11*y
2+
x12*103.98407*y3)
然后用
matlab
求解。
问题二
问题二需要对表中列出的所有
货币进行操作,首先用
excel
软件统计出货币之间
的汇率关系(如表—
3
)
,假设中国主权基金的总价值为
M
(
*10^8
)
,将资金做
出如下分配:
卢
布
泰
国
铢
欧
元
日
元
瑞
p>
典
克
朗
美
元
新
p>
西
兰
元
澳
门
元
p>
加
拿
大
元
丹
麦
克
朗
瑞
士
< br>法
郎
英
镑
菲
p>
律
宾
比
索
澳
大
利
亚
元
挪
< br>威
克
朗
新
加
坡
元
港
币
m1
m2
m3
m4
m5
m6
m7
m8
m9
m
m
m
m
m
m
m
m
10
11
12
13
14
15
16
17
i
p>
17
i
1
M=
m
i
,
然后根据各国汇率关系表
< br>(附录:
表—
3
)
,
制出按美元计算价值的汇率表
(附
录:表—
4
)和美元对其他各国货币的汇率表(附录:
表—
5
)
,根据以上数据和
未知元建立模型,要想获得最大效益,建立目标函数:
< br>MaxZ
(
x
)
=
m
i
*
pi
*
c
i
i
1
i
17
因为
该函数涉及到的数据较多,所以只用
lingo
运行程序。
p>
五模型假设
问题一
1
忽略外汇牌价表数据随时间变化。
2
计算汇率关系以外汇牌价表中数据为准。
1
/
14
3
计算汇率关系时不考虑现钞买入价及现钞卖出价。
问题二
1
不限定中国主权基金的货币种类,
假设持有的基金都为美元,<
/p>
要兑换的货
币种类只考虑外汇牌价表中已经出现的币种。
2
根据网上的资料,中国主权基金的规模量
为
3770
亿美元,假设该信息可
靠。
六模型建立与求解
问题一
设目标函数为按美元价值计算的相反数,于是问题变为求:
<
/p>
Minz(x)=-(x1+x2*0.6330*y1+x3*0.73764*y2+
x4*77.31927*y3+x5*1.56089
7+x6*y1+x7*1.1
5601*y2+x8*121.172087*y3+x9*1.339487+x10*0.85132*y
1+x11
*y2+x12*103.98407*y3)
。<
/p>
约束条件为:
x1+x2+x3+x4=8
x5+x6+x7+x8=1
x9+x10+x11+x12=8
x1+1.5609*x5+1.3395*x9>=6
0.6330*x2+x6+0.8513*x10>=3
0.7376*x3+1.156*x7+x11>=1
将方程写成矩阵形式:
c=-[1,
0.6330*y1,0.73764*y2,77.31927*y3,1.560897,y1,1.156
01*y2,121
.172087*y3,1.339487,0.85132*y1
,y2,103.98407*y3];
Aeq=[1,1,1,1,0,0,0,0
,0,0,0,0;0,0,0,0,1,1,1,1,0,0,0,0;0,0,0,0,0,0,
0,0,1,1,1,1];
beq=[8;1;8;];
A=[
-1,0,0,0,-1.560897,0,0,0,-1.339487,0,0,0
0,-0.6330,0,0,0,-1,0,0,0,-0.851316865,0,0
0,0,-0.737643,0,0,0,-1.15601,0,0,0,-1,0
0,0,0,-77.319274,0,0,0,-121.172087,0
,0,0,-103.9841];
b=[-6,-3,-1,-10];
模型求解:
在
matlab
里的程序如下:
y1=(1.5608971845+(1/0.63301234125))/2;
y2=(1.3394870991+(1/0.73764302724))/2;
y3=(0.+(1/77.319273808))/22;
c=-[1,0.6330*y1,0.73764*y2,77.31927*y3,1.560897,y
1,1.15601*y2,121
.172087*y3,1.339487,0.8
5132*y1,y2,103.98407*y3];
Aeq=[1,1,1,1,
0,0,0,0,0,0,0,0;0,0,0,0,1,1,1,1,0,0,0,0;0,0,0,0,0,
0,
0,0,1,1,1,1];
beq=[8;1;8;];
A=[
-1,0,0,0,-1.560897,0,0,0,-1.339487,0,0,0
2
/
14