|
2005 年全国大学生数学建模国家二等奖获奖论文
/ \4 n$ P! e0 e/ |, E3 b% i1
* L: l+ W f5 _. P- e3 kDVD 在线租赁的研究
2 |8 Y2 s/ X2 j" Y6 Q8 ~4 \尹作龙,姚明,金伟1 M& _) R% `# M, Y5 b( k0 p" J& H
指导教师 汪晓银
& w8 b* P5 C" k* w& ?! g. H- Z[摘要]:2 x- S" c2 \3 i5 S& |* k
随着信息时代的到来,网络成为人们生活中越来越不可或缺的元素之一。许多网站( D+ C. ^7 X/ H z' D
利用其强大的资源和知名度,面向其会员群提供日益专业化和便捷化的服务。例如,音
- x3 L2 U4 X, w0 L像制品的在线租赁就是一种可行的服务。本文主要讨论了在线DVD 租赁的问题,对网站
* G; P- Z0 o& P7 r5 a如何购买DVD,如何分配DVD 进行了一些研究。对于问题一,我们首先把会员根据每月% x/ v5 a, X3 M% s/ r( v- \6 \
租赁次数分成A、B 两类,并对两类会员归还日期作了合理的假设,根据求出DVD 归还" }, I7 T3 u, U- s) R
的期望值。最后求得会员归还一张DVD 的时间期望为12 天。然后用DVD 的周转次数来8 H: Z( r5 j% e3 H
计算网站对某种DVD 的购买量,最后根据问题的要求,求得每种DVD 至少准备的张数如6 I* Z4 M m8 y7 z* {" X9 V$ H
下。
- d8 Z) Z Y7 M' p8 X" dDVD 名称DVD1 DVD2 DVD3 DVD4 DVD5
- U6 e" H% m) N1 n# ^6 y一个月内至少 50%3 A* D- t& r; f4 O
看到的最少张数
( K. ]" f/ C% H) y$ b0 j4000 2000 1000 500 200
+ A7 e* D( |& a5 e+ E, E三个月内至少 95%! ?( J" b2 n+ c3 D4 M {3 {/ f
看到的最少张数
) J6 q9 N! A/ q6 p0 c+ D2534 1267 634 317 127# U5 d7 t, L* J4 V2 a8 ^
问题二,我们首先对满意度进行了定义,并作出相应的假设。根据假设建立0—1
2 c. g: M/ y0 X- V! S8 r- y规划模型,用LINGO 软件编程求得各种DVD 的分配方案。我们根据实际情况修改了偏, z6 \# r0 Y, p2 r5 z
爱程度,再次用LINGO 编程求解,得出第二中分配方案。第一种分配方案的总偏爱度
) X+ I# O* c6 P- j3 XU 为7924,有30 张DVD 分配给了没有预订这些DVD 的会员;第二种分配方案的总偏
- J- _. z6 r" W爱度U 为8191,有8 张DVD 分配给了没有预订这些DVD 的会员。虽然第一种分配方
}& p) D5 u2 \" {5 R案的总偏爱度优于第二种,但是经证明无论怎么分配,至少有8 张DVD 会分配给没有
( F1 E0 j, r; J* E) a预定这些DVD 的会员,因此我们选择第二种分配方案。
$ _: Z/ B0 }' g% [6 @# ~问题三,根据满意度最大,我们建立了一个规划模型,由于模型难以用计算机求解,& K( z9 w# Z& Y0 D* D) Y
我们改用计算机仿真来模拟现实购DVD 方案,模拟生成的购买的总DVD 数为3086。
0 [. j& q5 s! Y$ [) `) [问题四,在DVD 的需求预测、购买和分配中重要问题的研究中,首先研究了DVD
1 I& N6 N& V! ?" y6 M的需求预测,并建立了灰色GM(1,1)模型,灰色GM(1,1)模型能够克服相关数+ J) o$ G7 {+ f# u
据不足的缺陷和避免人为因素的影响。这表明基于灰色理论的预测方法,适合于对DVD
6 C {( ] Y6 ?8 b0 N) D在线租赁业务趋势进行预测。该方法是切实可行并有效的,并对DVD 在线租赁业务发展
' ?) J" a5 _4 Y# \) q' Y# l; _规划有重要参考价值。然后从网站的赢利角度出发,建立了一个以赢利函数为目标的线* ~3 L! g6 z2 X: n( ? T7 K) N1 [ y/ ^
性规划模型,此模型在租赁方面有着较高的参考价值。1 J4 i* ]4 s$ s/ c' d# U
最后我们对我们所建立的模型及求解方案进行评价,推广。我们考虑到对于更大规: c2 h" \2 H; X
模问题,现有模型的求解就会困难。因此我们想了模型的另外一个算法:贪心算法。贪
, h) _ Y$ p9 o% P' v1 }心算法速度快,但得到的解难以达到最优。: @' v! {4 f" H; w0 [
[关键词]:DVD 在线租赁 0—1 规划概率模型 计算机仿真 灰色 GM(1,1)模型
3 H! I6 ^3 g' t: Z2005 年全国大学生数学建模国家二等奖获奖论文; @- E9 ^: L8 x. g
2 Q, q* I6 n7 K6 m* x
一、问题的重述
- D( m; k, h g( K4 h2 w考虑如下的在线 DVD 租赁问题。顾客缴纳一定数量的月费成为会员,订购DVD
( ]4 x$ G8 ?: v( I9 u* O( q租赁服务。会员对哪些DVD 有兴趣,只要在线提交订单,网站就会通过快递的方式尽
/ I& q+ ^& ~' m- S! v* A0 K可能满足要求。会员提交的订单包括多张DVD,这些DVD 是基于其偏爱程度排序的。
# c$ D8 o9 @$ ^% D. S网站会根据手头现有的DVD 数量和会员的订单进行分发。每个会员每个月租赁次数不
8 r- [# s9 T' T0 N% b6 [得超过2 次,每次获得3 张DVD。会员看完3 张DVD 之后,只需要将DVD 放进网站
- L' |! q/ e- l. I$ j2 Q9 _提供的信封里寄回(邮费由网站承担),就可以继续下次租赁。请考虑以下问题:/ |1 s! d. P! H, _& Q
(1)网站正准备购买一些新的DVD,通过问卷调查1000 个会员,得到了愿意观* G; n( V* S1 B" G, `5 V9 e5 ~
看这些DVD 的人数。此外,历史数据显示,60%的会员每月租赁DVD 两次,而另外的: L, C3 r a/ p/ I6 W2 g9 q$ X) P: O
40%只租一次。假设网站现有10 万个会员,对表1 中的每种DVD 来说,应该至少准备$ e" Z+ l6 M9 U" m& X, l
多少张,才能保证希望看到该DVD 的会员中至少50%在一个月内能够看到该DVD?如; E$ R1 V- P( g) C) b( |# H
果要求保证在三个月内至少95%的会员能够看到该DVD 呢?
; V# \ h! a5 w(2)表2 中列出了网站手上100 种DVD 的现有张数和当前需要处理的1000 位会
' D6 D- T- h+ W( M$ g员的在线订单,如何对这些DVD 进行分配,才能使会员获得最大的满意度?请具体列9 s \6 V( j. P( ]) f6 z* r0 Q- a
出前30 位会员(即C0001~C0030)分别获得哪些DVD。' x2 h; u0 W- ]+ C) w! i' E
(3)考虑表2,并假设表2 中DVD 的现有数量全部为0。如果你是网站经营管理
q0 [7 J& o+ T0 [& F人员,你如何决定每种DVD 的购买量,以及如何对这些DVD 进行分配,才能使一个
+ s6 _! R' O$ c- W月内95%的会员得到他想看的DVD,并且满意度最大?- c9 y. ]; ]' j+ t
(4)如果你是网站经营管理人员,你觉得在DVD 的需求预测、购买和分配中还有 q, m+ [6 X$ n) d
哪些重要问题值得研究?请明确提出你的问题,并尝试建立相应的数学模型。! W/ _4 h9 M% m% d! l
二、问题的假设6 b- C" ~% ?; h t% r
1、假设所有的DVD 都不能拷贝, H/ r) y8 s( f' Q: |/ _
2、假设调查资料具有一定代表性
9 r3 B% A& Q9 f3 i7 @3、假设所有会员自觉遵守会员规定1 B! D: k$ V4 ]; o B
4、假设在租赁和归还过程中DVD 的遗失或损坏忽略不计
0 V4 `+ [# ~. F0 b5 F8 ?( L! y5、假设DVD 的种类与购DVD 费用无关7 _. Y$ b& m' q9 h5 i
三、符号的说明
6 ^/ g; {7 d0 ^5 Y' T符号 符号说明, K+ v' Z9 E q" A; v; W' T$ x- o
V 该网站拥有的总会员数8 @( h- H) d; C( k* r$ V2 d5 c6 Z
Dij 第 i 个会员在线定单中第j 种DVD 的需求情况
3 y% P u& S$ jDLij 第 i 个会员对第j 种DVD 的偏爱程度- F1 V4 Z x( w. k2 a
yi 第 i 张DVD 的现有量
6 M3 C* I( }# y( N( G/ L# n1 L& uMi 愿意观看第 i 种DVD 的总人数& b& l- |% I# Q8 U& X/ j
Pi 愿意观看第i 种DVD 的人数占总人数的百分比
+ ^" C! R7 O" h8 }- x2005 年全国大学生数学建模国家二等奖获奖论文
3 n# N% y K k/ p; X36 l- _) e" U) U
R 为满足会员要求的百分比数
, I" v+ `0 J) I( V, e6 cU 会员获得 DVD 后所得到的总偏爱度,其值越小满意度越高
! ~% x# }/ l9 c1 j8 @# X5 q# T$ T" [四、问题的分析及模型的建立及求解
) V% }2 k' o- d9 R4.1 问题的背景资料3 F# C0 P! i' |$ f4 C0 @- L8 ~
Netflix 目前是美国最大的DVD 出租网站,现在公司预计可在2006 年达到500 万订
% z$ F3 X7 Y+ Q6 j) K1 g户。这家网站的经营方法是,顾客在成为网站的固定会员后,可在网站上选取自己喜欢
- z; L/ Q; f/ e8 H* Z$ X4 @" G. ~的DVD 影片,该公司现有DVD 种类有5 万多种,包括一些最新面世的大片,由这家
0 R/ R9 l5 P1 @4 Z4 X7 \8 c+ |网站快速寄送到顾客的登记地址,每次最多3 张。顾客可以无限期地借用这些影片,但
9 s- }3 x( @' |' N只有在寄回这些影片后才能借用新影片。顾客只需每月缴纳19.95 美元的会员费,而1 |, ^0 H7 C# j
邮寄费用全部由网站支付。对顾客而言,坐在电脑前拖动几下鼠标就可得到中意的影片,
' t7 x' g% n. D- x3 p既省时又省力。: T& h9 P( n8 a" P: N
据统计,超过60%的美国家庭至少拥有一台DVD 影DVD 机。去年,美国人在家5 d4 @, W* @ d2 ?" G
看DVD 的时间平均为78 小时,比2000 年上升了53%。DVD 的销量和出租量则上升& Z7 ^1 u t. I
了676.5%[5]。0 X! i2 r" K0 |0 g$ I% s/ E O
4.2 问题一的求解% O# N' u$ I1 @0 I6 h
4.2.1 问题一模型的建立与求解
/ }. s( F/ m/ L0 @5 Z7 h对问题一的分析,我们根据实际情况作了一些积极的假设,并简化了模型。从网站* _4 j% I$ @* u; Q: q
经营者的角度出发,出于对自身赢利的考虑,希望DVD 的周转越快越好。那么我们就) ^6 E$ t2 J( W5 l
从DVD 的周转情况来考虑对DVD 数的需求量。8 N# k6 U0 U: b& O9 \0 {
由题目我们把所有会员分成 A、B 两类:如表1
7 r% Y+ Z. t5 m表 16 }* d4 V d0 A% z9 _% O/ y
类型 每月租赁 DVD 次数所占会员总数的百分比 会员人数
7 ^4 J: }: z+ A; l0 }( p' B: GA 类两次 60% 60000" c! u2 q( ?/ h% ]% J
B 类一次 40% 40000$ @7 n1 J; h# q y, I* R6 M d! x% }0 x
考虑到 DVD 的周转,我们对两类会员作以下假设:! p, O! v, D( B- N. z6 J8 |' x: U5 h
A 类会员归还一张DVD 的时间X1 范围为3—15 天;
% _4 ~) ]# @ [# TB 类会员归还一张DVD 的时间X2 范围为3—30 天;
# I: u$ P# U( @* }; X根据现实情况,我们假设X1, X2 都服从等概率分布,则:) P* j: t5 A6 Y6 N3 I4 S
9
" N l/ k" o% C2
, L! X8 w. J3 _3 T8 b' s15 3
+ D; C. v; r: U" U8 C/ _- W& r1 =
% _& k& p' K6 I! g' z# V% t2 m5 W+4 U/ v$ z( g8 b+ I% I
EX = 16.5
3 V/ J: F2 m& m26 j& q* S& U& D. y
30 39 H4 {0 f0 h' I
2 =$ C* Y& m3 T; A
+) k4 g3 ^/ }2 {2 A9 [
EX =6 h& a3 I7 P2 {: J- R
则会员归还一张 DVD 的时间期望为:μ=0.6×EX1+0.4×EX2=12 天。这就是说每张# U$ i' X1 W* `4 D+ d
DVD 在会员手中保存的时间大约在12 天, w" r7 x/ l: I3 |! f
那么:
8 E n3 T1 z$ s7 j/ o* t在一个月内 DVD 的周转次数为:N=30÷12=2.5;" S/ {3 G7 B$ B; o
在三个月内 DVD 的周转次数为:N=90÷12=7.5。(设30 天为一个月)
$ n* ~9 Z& s$ @$ {; a' [0 _% A根据题目中调查 1000 人愿意观看各种DVD 的人数,我们得到会员愿意观看各种
3 @8 D* x# {2 R8 BDVD 的经验概率分布统计结果如下(见表2):
( ?2 d. r" z3 r8 e3 U# Q H6 y# G3 \4 }9 O表 2
) h6 V( G- I a3 p$ z3 C2005 年全国大学生数学建模国家二等奖获奖论文 Z2 w4 s9 _0 @# l5 a/ f
4
" v& @+ I8 l# r: ^! iDVD 名称DVD1 DVD2 DVD3 DVD4 DVD5
9 m5 L/ M+ u! u, ] r; X! ~' K经验概率 Pi 20% 10% 5% 2.5% 1%4 I1 E; l0 l- ^
R 为满足会员要求的百分比:一个月为50%;三个月为95%。
' ~0 w: n6 x' `# x7 P因此愿意观看第 i 种DVD 的人数Mi 为:Mi=V×Pi×R=100000×Pi×R (V 为总会
5 f3 t- m3 {9 |0 _$ k( U员数)。
B" m( J% N3 I" z7 }6 K4 }; w那么所需要 DVD 的最小数量为:S=M÷N。(向上取整)
: [% D) I! S, p2 a: a) _我们得到 S 的函数表达式:S=V×Pi×R÷N ;
; h2 E$ J: c% z+ o4 w( ?求解得到每种 DVD 的准备张数(见表3):
' t. q3 X* e. f) u5 X3 G/ M表 3
0 l# q6 M) ` b4 D0 J' X" D" i UDVD 名称DVD1 DVD2 DVD3 DVD4 DVD5
p" h+ p5 ^3 O3 |! J4 G一个月内至少 50%# D; F# T b2 R' h3 r: ]
看到的最少张数
7 ~6 c# O3 j, l/ a, X! U8 X4000 2000 1000 500 200
# M: y5 H2 _# ?! `三个月内至少 95%0 P9 A% O4 m. L. \7 D; M" X! [
看到的最少张数2534 1267 634 317 127' v$ E) V: Z6 c# e, s G
作为一个租赁网站的经营者,总是希望赢利更多,就要提高周转次数,减少周转天$ Q# r7 y: l9 L5 L$ q
数,这样他的先期投入也将减少。就可以考虑尽可能缩短租借的天数,来增加网站的赢
- n/ C7 @! X+ Z& W+ R+ y t5 G利和减少先期投入。若我们将归还时间定为3-9 天,则期望为6。一个月的DVD1 所需
# C; G1 w+ S) |' S8 r! p( K1 S最少张数为2000 张(小于4000 张)。
3 E3 C- \6 U. w% _3 y* ~4.3 问题二模型的建立与求解+ t- K0 w+ q# T# I9 m; N
4.3.1 问题二的分析3 Z( p: z' B. C
顾客满意度可以简要地定义为:顾客接受产品和服务的实际感受与其期望值比较的
) [7 {* \; V; w6 T8 a% K( X程度。首先对满意度进行了如下假设:在会员的在线订单Dij 中,数字越小表示会员的
8 O, I2 E/ F- N0 C% J0 p' a偏爱程度越高,如果会员得到他偏爱程度越高的DVD,则会员的满意度越大。假设会, k4 J- g s# `+ i* [8 J! m
员对DVD 的偏爱度为:
4 o3 Z( S( Z2 d/ {6 A! ]: ^$ s" }ïî
9 P ]- |( G$ `" u8 l1 v! w$ C/ G5 V% k+ fïí ì6 X/ N% m) w+ O2 ^( m0 E/ T
¹7 Z! h. U" n5 d$ X7 L* ~$ u) j
=8 G+ S; F( C$ y1 ^7 j
=
1 @1 v* h" C+ F" k) ]' B, 0
0 i: X. @6 _. x$ c11, 0
3 b+ ?* H/ u* |! Cij ij
! x5 O, ]2 t" z. ]; }2 |, [. }ij
6 ~7 K4 b: v. G2 {0 P& D5 Sij D D
5 Y- `. i% {/ h) \: [D
- D* }4 P4 l# ADL
: R, x" h* M8 x0 }5 z% U该问题的目的就是分配当前的订单,使得这些顾客的满意度最大,可以用0-1 规划
* g5 U6 ?! z* I4 k1 ^2 `) z/ M3 q模型来求解,定义0-1 变量Cij(i=1⋯1000,j=1⋯100), Cij 为1 时表示第i 个顾客租到了5 C0 U; f* p9 j K/ c4 Q# M0 U
第j 种DVD,其值为0 时表示没有租到相应的DVD。
7 y# [1 h" y% h! y; n% C4.3.2 问题二模型的建立
9 M& l' v* A3 h( l3 m会员租赁 DVD 满意度的目标函数为: åå
7 S5 ^ f x. T" Q" L/ q= =3 X# w% U3 A; b- [, D5 C8 g
´. J; [$ V# v1 h9 D+ t
1000 E% t8 w$ G$ K" Y) L
1
3 l. B3 s( q$ k4 J100
. e) c3 t0 J, {6 `6 _- @1
7 o0 m* u0 J. _+ q0 M7 C$ i$ Y& Ymin' X) S# n- v) \5 ~2 a$ e0 |) r
i j
3 [' e' b7 m! ^; W0 E9 h: X6 O1 Dij ij DL C
1 d! ^! |& {4 U# c0- 1 规划模型的约束条件为:* t( n3 ~! V+ T7 ?6 B3 \
1、每个顾客一次能并且只能租到3 张DVD;5 S* u7 O# Q% l# w/ K5 \
2、租赁给会员的每种DVD 总张数不能超过现有DVD 数量。
3 ]6 t1 B" U1 [; A' |- n由上述分析得到如下的 0-1 规划模型:
+ _0 o, O4 Y1 b6 l" ]+ {$ L: s2005 年全国大学生数学建模国家二等奖获奖论文' y0 |% i. l& u
5# {+ [0 \! F5 p& g; ~: _( y1 {
ï ï ï ï4 n3 q @+ ^) z d# I% _
î- D6 t Z& @" {) Z0 u6 t
ï ï ï ï! D2 L4 ^: y, g8 { Z* i
í
+ d* E6 @4 Q1 ^: \2 L( e9 `ì4 I. r' Y% U" k5 J
= =' A3 q- P" e# D6 @( b
£
+ y% ~. E. @: T& P$ A=
4 c; O9 l- f0 r" D=) c" c; x2 V& i( n9 f, U
´
D$ c$ h8 s `7 k0 N9 g7 @7 ]! Aå% I; [ R" Y3 l7 F. P8 t
å
! F$ f! J8 Y' [åå
: _- \1 k9 s8 g- T" ]. `* ^' S7 a=
1 V/ ]& X, \. |. @=4 U; W5 f$ u& s E9 Z L2 _4 g4 C, D Z
= =
7 U( P% a( \! V! l( 1 1000, 1 100)
1 ?7 b# R, v1 X4 n, ]4 m3
2 n7 I' ]0 [; R5 G- N: k0,1
8 \6 P0 O7 H% W; H2 m6 E. .
. T* C. j4 j. m/ V; @4 |3 X$ j/ T1 kmin
) V' O% j& S9 |1000
% I+ D o, q) R# C9 @1
K, t2 A* w5 @# c* H% Y! h% X100- S0 Z' D3 ?. k# A, H
1
" W' E! P" R! g1000
5 V/ j& O8 x; S7 Z1 O0 E! Y! |5 H9 X6 ]5 a
100, |+ Y; X5 X" \# t8 x( e
1
3 l L/ C% _) Q: t0 t7 I9 ai L j L# ]7 d; A: W, F/ c1 u
C y8 _/ m- T i. |, e
C; P1 z* f& O. e( _
C
- _+ ~. x$ Z) A% rs t2 P. q0 V$ ~1 e9 o1 P
DL C/ m: d* G9 U- G1 P# A1 i
i, U7 b( [" p* G' |: V0 A3 B1 Y
ij j
; l) {7 M1 m2 C A9 `- L7 Cj
0 F/ h% t" W9 m* }9 ^, k% d; ]! O. Tij+ R( o* Z4 T2 J v8 `( Z
ij ?' S: r6 I% M" ], n3 `
i j! k& j* @8 E z, r- ` F- f9 h
ij ij
! k7 @, o( |- S4 ~! y+ x y4.3.3 问题二的求解: I V5 G0 a5 ^; ]/ M3 F
对于上述的模型,在用LINGO 编程求解(具体程序请见附件),得到分配方案为9 @! J+ H3 z& x8 j% w! y
Ci,j 求得总偏爱度为åå+ o0 W, `/ k+ j& Y9 u5 ~5 @
= = ]* A9 W7 z! l! J
= ´
# {* R7 T7 f8 q* H1000
4 @* K. |9 Z" ]# O/ b' n1
) G( v( _: E. ]# c3 b100- C/ S% r# j+ s) u9 j1 L$ w& l
i j 18 Z) ?0 m& ]) J: T2 N
ij ij U D C 为7924。由Ci,j得到分配了30 张DVD给没有要求
8 ]% j6 T9 }+ ~- }预订这些DVD 的会员。前30 个会员租到DVD 的情况如下表4:
; v% ?# `, p# B# r! j表 4
2 Z k, ?8 c/ u# x: V8 b会员号 C0001 C0002 C0003 C0004 C0005 C0006 C0007 C0008 C0009 C0010& |- N- K K0 l, {- i' L; }0 f
1 8(1) 6(1) 32(4) 7(1) 11(3) 19(1) 26(3) 31(4) 53(1) 41(6)# @. y# g0 w3 h
2 41(7) 44(2) 50(2) 18(2) 66(1) 53(2) 66(6) 35(5) 78(3) 55(2)
$ n/ a; j7 h9 a" ^/ ^0 l分配
' K+ {) a1 a1 y) T3 q LDVD 的
8 ^5 O% a, R: V& Q7 G: T种类号3 98(3) 62(4) 80(1) 41(3) 68(2) 66(4) 81(1) 71(1) 100(2) 85(3)8 c+ H, G8 b6 @3 K9 k+ E2 ~
会员号 C0011 C0012 C0013 C0014 C0015 C0016 C0017 C0018 C0019 C0020
" |' e' N4 l d3 W4 j1 59(1) 2(2) 21(3) 23(2) 13(1) 10(4) 47(2) 41(1) 66(4) 45(1)
. P( X4 T, x" V0 B+ K2 63(2) 31(1) 78(2) 52(1) 52(4) 84(1) 51(3) 60(2) 84(1) 61(3)
2 D5 ?5 I1 Y$ Q+ e2 L4 Y分配, G( ] R; g" W; v7 y
DVD 的% F' w( [2 ` `) b4 \' u" e4 N4 \1 g
种类号3 66(4) 41(7) 96(1) 89(6) 85(3) 97(2) 67(1) 78(3) 86(2) 89(2)
* F, s5 G: a. J会员号 C0021 C0022 C0023 C0024 C0025 C0026 C0027 C0028 C0029 C0030
8 H) Q# ~7 u3 P- k# m4 j1 45(2) 38(3) 29(2) 37(4) 9(1) 22(1) 50(4) 8(1) 26(4) 37(2)6 d0 s3 a0 j2 Z7 u
2 50(5) 55(2) 81(3) 41(2) 69(2) 68(2) 58(1) 34(2) 30(2) 62(1)2 l* @ F* e, Q: z, U: ?
分配9 G# ^0 l( I+ C& ~! w) x; X! a
DVD 的
, a, ] d4 G' g& c) X种类号3 53(1) 57(1) 95(1) 76(1) 94(3) 95(3) 78(7) 82(3) 55(1) 98(5)" S: [6 f* ~( q2 T7 l2 y
注:括号内的值为会员对该DVD 喜好程度。
" L) e; Z! X# I5 x为使会员得到自己没有预定的 DVD 总数最少,可以将DLij 中为11 的数增大变为 i; y8 s, A, U* p
1000,即将此偏爱程度降低,再如上求解得到一种新的分配方案Ci,j,求得总偏爱度U5 a9 C$ }$ P' C: b r5 D, H$ `
为8191(>7924),但是经分析,只分配了8 张DVD 给没有要求预订这些DVD 的会员。
; S* \7 X7 l6 { e6 C# A3 ~事实上这里的8 张DVD 已经最小,具体原因是,现有DVD 总数为3007 张,每个人得
" _5 y* ^! p; e! C, F到3 张DVD,1000 个人就得到3000 张DVD,则还有7 张未出租。根据所给的数据,, S5 e$ P6 ~4 n( n# o F7 q
第37 种DVD 现有106 张,只有91 个会员愿意租此DVD,即第37 张DVD 按照会员的& P. l( P' s, \
需求无论怎么发放,也会有106-91=15 张剩余,而总共应该只有7 张DVD 未出租,这
( Z2 I5 _' h9 H3 x. H样就无法满足所有的会员租到自己想看的DVD,而且一定至少有15-7=8 张DVD 发给* {+ x6 W# ] d- x0 X. ~7 {: E
了没有订这8 张DVD 的会员。
! G2 R3 m }+ s, H' `" \比较上面两种分配方案,我们选择第二种分配方案。第二种方案下,前30 会员的
7 l( ^- v8 E Z租赁情况是只有第25 个会员的第3 张DVD 与第一种分配方案不同,其值为81(4)
# ~* s. Q: ], t4 I4.4 问题三模型的建立与求解! L$ f! y5 x" a" c1 n
0,1 变量9 H, ^, H* V Y4 `6 T; F
每位会员租 3 张DVD
& q% I& B' o3 s0 W$ H) J1 X# |: I& _DVD 现有数量的限制
9 g; B) y7 F: V2 m5 \0 j2 U z2005 年全国大学生数学建模国家二等奖获奖论文
& k, Z0 I: t+ u- O1 R e6
% w- | @6 w1 @; l. }4.4.1 问题三的分析及模型的建立, B4 M% ?6 D! [8 R$ K2 S2 r; U
分析该问题的目标是保证一个月内 95%的会员得到他想看的DVD 的情况下,使得
, d" n+ X1 m" u5 H会员的满意程度达到最大。
' U& x4 \8 D+ H4 p假设分配给第 i 个会员3 张DVD,且这3 张DVD 都属于该会员预定的DVD 那么* a% t7 P5 E+ i& H4 r3 K4 J
记pi 为 1,否则记pi 为 0。! v0 C" d$ O9 w; d9 f: d
ú úû2 b, t* M5 E5 v8 _% r# u& o, x- }
ù( Y8 R/ {, X/ l+ N1 D
ê êë }8 E j% {7 Y! S/ p5 h/ T
é
+ j, L3 V) w2 j$ U; B÷ ÷ø" @6 x" V8 A @; }( B! q9 M' S
ö
& X, Y& q7 _; w' K0 h8 t' [ç çè
% ^( G& W7 R/ j- Mæ
7 t8 a8 v. m' t" | J+ `= å
' H1 m7 Q/ ?7 r5 z( m=
& Q$ ?. S0 J3 v- \* t) E K. y3, b0 k5 S* k2 O3 V" Q
100$ S/ m5 V9 N- [
j 1
f: Q q Z7 ~% S Ti ij p C (注: []为向下取整)) R! {0 p( h* e0 X( A
要使一个月内 95%的会员看到他预订的DVD,则得到0.95 1000# b' \5 `/ }% [* \5 d6 T- [
1000
; ?* G" A- p& y2 U4 t% E) g& }$ \0 x* l19 z' w6 O2 t9 _
´ = å
5 Y; T. r7 Y" a: S) M= i
. g+ `) n g& f! I& ?pi
& i& J. _2 s- S2 A; p+ ]0 `根据问题二以及这里分可以建立以下模型:
5 V! ^1 a1 r: O/ L& uï ï ï ï ï ï
. b1 M4 y- s; a/ |+ Y3 `î* S' D5 f# o1 |( z1 O; w6 W3 H
ïï ï ï ï ï
/ ~ d7 o# `& H6 Tí9 p$ l# R& }2 M3 D$ S" m
ì
# Y0 l, I: ~" x- `' X= =5 c2 i/ A! ?, `7 S, _
=
! ^) ^: |2 n. S6 v) t% ^: q! Iú úû
2 S& p# q5 M" C3 f+ f. bù$ q: H, i" m) q v' w- P' X
ê êë
, C& J4 n! h. k1 Z' C7 jé
( F- W& ]! H* a1 r$ H: I p÷ ÷
3 d! k7 \+ \; H6 Qø5 Y+ b+ ~7 @" h
ö) h, I0 \5 C9 {) Q' C) f) H, [/ f
ç ç; u3 V1 t0 f8 t
è, l8 m; Y, {5 G1 g \4 N( f9 a( S
æ4 B" C- R3 b& }. B! Y* N( d
£. g/ l( ]& C q; a
=
8 S7 I7 ~8 P4 k: z0 x=3 ~, p2 P0 }9 H4 H8 y8 c& ]$ z. k
´, a2 s# F$ V+ v3 l% w8 D: T
å å
% L* H! x a% tå
) e' b; \- l2 s' O9 x& ?å
9 g5 Q- n# Y5 J9 b0 E: T6 ]7 y! påå% M( r2 p9 ~/ p2 c; F
= =2 J$ }2 S5 [5 c) e# U( B! i
=: n q1 F1 O; t# v/ z( c
=1 f4 A; Z6 m+ |: U' N R
= =
5 \' E7 H6 B: ^9 V+ d' v3 T( 1 1000 , 1 100 ). e k8 x5 W4 k$ ?9 e
3 0.95 *1000
1 S! K, H6 i- c( D' N3 S39 L3 u# z2 e9 d. Q% E+ O
0,1# ^* p$ ^& _1 Z2 h! K
.' d) t( g' J+ c/ x7 o1 ^4 E
min0 X9 T/ H) T6 E8 d+ p1 P6 J
1000& ^% b" c" S4 j* |9 T
1
) m+ i1 v% r3 `# o) y+ b0 ~1008 o* R6 ~# h7 }5 O/ X
1+ T4 b0 q, e( ^, r- p+ j
10000 o' F0 h6 E; K: I8 A" e7 q: A
1
/ t7 h g1 O, v" U; }1 L100. g M4 k) N$ ^; c" W3 I
1/ e6 @) } S* O) f- z
1000$ e9 ]5 M( }* T( s8 s+ G3 r
1
9 b; p: X6 ? W4 F$ M' `8 K D$ A! H100- U9 y3 E$ m5 Y/ b
11 t3 Z4 b1 W! U! {7 u% X7 r
i L j L. e8 D8 F7 F* n5 o# k
C4 U5 O- p3 s4 L8 \# y1 J
C y1 u+ h2 F Q! N k$ l9 G/ y
C" J- ~# o% e4 R3 _( E) ?% a
C
; z, l% O0 r2 X3 I/ T3 Ps t8 ]2 H3 u$ Q- Y9 |
D C
1 `% ^3 l2 ^* r/ t- Ci j" m h, L r$ w2 s; j6 H
ij
4 |1 W o' |$ \- i3 Y6 \1 ui( _& h \9 e" z7 }9 F
ij j
$ O1 b& E: k" w/ G0 k7 B- X& u- xj
& b: ]1 ]2 A6 t% V8 w1 g$ Aij
' v2 R8 L5 Y* V% m) _7 D; Yij& s2 O- `! j; H
i j( W+ ^* d( U& H
ij ij9 o% @/ f3 P7 P6 m
4.4.2 问题三的求解! q) w8 I; q# O% p& {4 y8 p
上述模型难以用计算机实现,这里我们用计算机仿真来解决该问题。仿真前先进行- t+ t3 p) I. I6 e
如下假设:
: d+ r, ]; T4 w# h" P& `! r7 xa,假设40%的会员一个月只租DVD 一次, 60%的会员一个月租DVD 两次,会员+ F W4 v3 b; f9 P! G2 j
还DVD 天数在3~30 天内并服从等概率分布。
% j$ z) x9 a9 i8 v5 K/ ^* A+ ~b,假设每位顾客都有95%的概率租到自己想看的DVD,若一位顾客按偏爱度订n
) \9 `, U3 g# {- N6 Q$ ?8 L(n<10)种自己想看的DVD,设该顾客租到偏爱度为k(k<n)的DVD 的概率为 h, n* [- X% f& B1 F
å=4 t$ B+ b0 k# y5 A8 \. L$ |
-5 J) B. F" z* r
-
6 N, z3 f) i. J. G" o5 g1 e! R; [ r, x" r=
& C1 |5 ?- y% m5 {2 _0 n+ s6 i: Y- An
6 E( `* V6 ?2 O# Pi i
3 b7 J% g4 N8 [: B M/ Gk
# X8 Q6 {# L0 u/ Mp k
2 l9 v- D/ C& _; k1 11/ S4 U# @/ Y0 q' l
11
b( F$ Y& d; c/ w1 g- v1 r( ) ,
6 P* k7 p( O6 U" f0 P4 d+ Bc,假设已经租到DVD 的会员只有归还DVD 后才能再租,
( Y# l: V6 Z8 t0 N在此假设基础上进行模拟一个月内 DVD 的供求,得到这一个月中每种DVD 的需
/ b: C9 P3 e- C3 ~* y求的最大量。仿真流程图见图1,程序见附录。, N6 W& H2 m; {5 A8 g& }
用 MATLAB编程[1] [2],经过多次模拟,得到每种DVD 的购买总量在3085 左右,$ O# v4 F$ b' n) Y# A! J
其中一次结果得到各种DVD 购买量依次为(见表5):
8 H) C) f" _. @( Y1 Z; s表 5
4 Z4 u. |" ~; J0 t4 |4 u4 \1 `D001—D010 28 33 29 26 24 30 31 35 28 27! p* j, e& e) |- t9 P
D011—D020 25 24 35 39 23 34 37 29 27 356 L5 e. D. v, x
D021—D030 33 31 42 28 32 32 27 23 35 35) Y2 H7 D: O! y' R2 e6 v0 `
D031—D040 35 29 22 28 38 32 30 33 30 29
( @/ @- M# g: S$ u9 f3 a0,1 变量
) J$ w" i* t6 o2 q5 _每位会员租 3 张DVD6 {4 H0 H7 {1 |! v; G1 x" j2 v
DVD 数量的限制5 q' K/ |& G( \+ M
2005 年全国大学生数学建模国家二等奖获奖论文
$ N" b+ m( H, |$ F6 t( u70 a6 U, K" \+ ~0 J! u
D041—D050 34 39 23 25 38 32 35 35 27 30; m$ H2 b+ }/ Y% f# m, t* F
D051—D060 31 31 38 21 30 32 35 31 36 38" t ]4 P9 l: ^, Y+ i
D061—D070 25 33 23 33 34 43 34 40 42 361 Q6 m) y9 q) Z: k
D071—D080 35 36 30 30 33 29 21 31 23 33# w: T5 {0 n# G6 |1 l
D081—D090 34 20 21 26 33 20 31 20 38 32
* u" {' }0 D( L/ p6 H$ ID091—D100 43 25 30 31 29 26 29 30 26 34$ i6 ?! q* _; ]6 j9 Y
总和 30861 W( d9 m0 l @
Y
2 S) ?" k K- \2 m: D0 e3 l3 EN! Q+ n, v$ [0 T: S t
Y
) }% y$ o2 |8 ~4 L. m- f9 a' @( U! IN
4 j; C2 o* \+ L* S+ DN
, \0 c6 F7 N0 H+ H( R" Y$ pY
: y( ]8 p7 s; Q7 z: h( C. OY
4 k2 q; q! u6 Q2 m- UY; y }( b; s5 p+ c2 _5 _* b0 |
i<30?
* m6 G; M# q0 V Z% Fi=i+1 第i 天/ O6 D/ w- ~1 a0 z: M+ S
j=j+1,) u2 b. Z4 ^" t" p; t/ \
第 j 个会员: A, ^5 P% h G7 F4 O* R
j<n?3 G( H% l! I) M4 }0 j y/ \1 L
会 员 j 是否还
& ^2 ~3 D! B1 R5 C/ R6 y0 y: }9 b租到DVDd1,d2,d3,
; t: {' C4 k% j' b, OD(d1,d2,d3)减1( H7 \7 F/ D' H. ?6 q
计算 30 天中Di( a5 Q: [- r C# T# E1 }: Y- V
的减少最大1 k8 D2 q' m9 C: y8 `" S1 n# S
结束# V' s% v0 C3 T* T' a- b. x- s, b
N0 u; k9 m8 y+ x
将 1000 个人分类i=0,
; B1 |# X: K: _& W" mD(1..100)=1000,+ i0 H6 ?; F! B# _, c! h7 j
j=0,n=1000; ~- \+ t6 H( Y4 _# r
还回 DVDd1,d2,d3,$ o$ I7 [8 A9 E* B( N' T* Y
D(d1,d2,d3)加1
2 }, V- c: B- m5 t1 B+ f) p+ ?4 E会 员 j 是否租
2 o* z w. L% u. H: Y( I2005 年全国大学生数学建模国家二等奖获奖论文
; d% R, N9 n- w: y5 e8
+ k( Q) G) Q: F N* s( l图 1$ V6 D) G. ^3 N' d$ Y
4.5 问题四的分析% C1 N0 K) P9 \" h
我们分析了 DVD 租赁的实际情况,发现以下问题:- t" E$ d* C) ^' M5 V, a; q9 Q% x/ u
4.5.1 已知连续前N 个月的DVD 需求情况,如何预测出第N+1 个月的DVD 需求# c u0 @# M! {: i0 h! i! \3 A
情况?9 y9 k. Q+ T/ r$ F
假设前 5 个月的DVD 总数的需求情况为x1,x2,x3,x4,x5
$ F; {: @) y6 a3 J& n( C对与上述问题,我们建立灰色GM(1,1)模型求解[3]。" w* l w8 N$ p3 r: t+ H( @1 g* K
以第一个月为起始点,即在该点t=1,于是有原始数据序列:5 h: N2 R) I/ C |3 z: w8 y
X(0)={ X(0)(t) t=1,2, ⋯5}
- ?# a# H) ^/ P0 q& v={ X(0)(1), X(0)(2), ⋯ X(0)(5)}& m" Z: M7 N, T0 c+ I
={x1,x2,x3,x4,x5}* ^1 Z0 Q/ A: H {% f
首先按 GM(1,1)建模方法,对已知原始数据序列X(0)进行一阶累加生成5 w% {' O& n% X u
(即1—AG0):
" L, x8 e' V, X3 o7 J/ oå=
+ Q" R0 V1 ?5 b' F8 @# n=* S4 r! Q$ e: \# I2 D v/ k
t8 v# y" c) L& M. y
m- K; l# r5 ]7 x: j0 a% M0 C# i
X t X m
! | h6 S( c2 q1
+ v6 M4 N, N- W" q(1) ( ) (0 ) ( )
/ L( ^) B/ A% d8 v$ S ^1 n。得到生成数列X(1),如下:
" w9 _" X) h2 }* e$ m, kX(0) ={ X(1)(t) t=1,2, ⋯5}7 X2 Y8 ?' t2 V2 F% q
={ X(1)(1), X(1)(2), ⋯ X(0)(5)}
% ] e% r3 L S8 q" B={ x1, x1+ x2,x1+ x2+ x3,x1+ x2+ x3+ x4,x1+ x2+ x3+ x4+x5}
4 B2 Z1 l" J/ H构造数据矩阵 B 及数据向量YN
& D/ ]* @; A- G9 o! uú ú ú ú ú8 i# [) S0 ~1 `$ s+ L- I, G3 r2 f
û4 H2 E0 [$ r& m! `7 M, a- Y* l
ù5 s6 F$ P, P! V; s: X: q& p8 k
ê ê ê ê ê
: A2 N1 C1 V% {- {& T9 o& ]* `ë) m! {8 n9 e( l5 x4 c
é
" l. r4 Z; Y$ |4 i- - +
4 M' M' z% ^8 y( h2 G- +: w, p! S( y" z; p' m4 |; [
- +
' V) Y5 \+ d h) j s8 k% b=' A+ _5 X# b/ e/ Y. i" ^6 {8 d
1/ 2( ( 1) ( )) 13 g, \, w2 q3 }' w; G) P
1/ 2( (2) (3)) 1: V, X) z; D! S/ X% D/ Y+ {! _
1/ 2( (1) (2)) 1
& C2 A4 a4 E; F9 e% z9 v/ |(1) (1); W0 g* I6 G$ }3 q9 F0 j) Q) n
(1) (1)
; Q7 X; L+ C; ^1 Y0 u# K& {(1) (1)
& ~: j. G: M t$ K8 G: \$ T2 sX n X n
8 ^$ q- ^8 h8 d9 ?! l- j3 I+ p% HX X
. Y& Z ]5 S5 y6 `, X. \X X
$ Q$ v; Y9 a& \0 t% ~B4 ?* S: j6 m [8 E$ N
M M
# A; @2 Z3 Z" u& @4 u5 @! x. nYN=[ X(0)(2), X(0)(3), ⋯ X(0)( n)]T" L6 m; i! q4 l
求模型参数a :* Y3 y$ e+ x. l- Z) b/ {# j+ E
N ^* Y6 `- Z! N: \! g
a) = (a,b)T = (BT B) -1BTY2 M) b, c3 X5 z7 O. z9 u6 ]
建立模型:根据参数a 建立模型。模型的时间响应方程为:5 v i0 M7 L+ U( y7 d3 @) w
a
e+ Y! T5 v5 S1 N, gb: r J; q! F* B% ]/ X+ _9 X/ i
e
4 B3 V3 ?# M5 c' xa
" f3 _2 R* `) T8 b# l8 gb6 x2 y2 Y: b' m! y/ c6 s' Z
X (1) (t +1) = (X (0) (1) - ) -at + )
1 L8 h6 G$ o9 \$ J7 l模型的改进:
* m3 M3 n( m+ \8 }3 `' n为了提高模型精度,又对参数进行估计,以进一步改进模型。将以上时间响应方程. v) R2 s4 r! ]5 C
写成:0 B& d- Y! a" h$ ^8 i* }+ L% L
X (1) (t +1) = Ae at + B9 Z. j: P+ x* D2 c1 k9 Y
根据第一次估计的a 值及原始1—AGO 数列X(0)( k)对A 和B 进行估计。构造数据; g9 u, A8 O/ o! U
矩阵G 及数据向量X(1):$ _' }6 X/ ]! r# Z
2005 年全国大学生数学建模国家二等奖获奖论文/ o* i3 Z9 g# }& D, X8 J
97 ^1 G0 i y' ^ t0 `! E
ú ú ú ú ú* ]6 [! D4 Q& A- _
û0 _3 ?* E- g7 a, A2 `8 f0 ?! m
ù
8 c7 T" ]; h2 l& [; ?ê ê ê ê ê) T9 [* F5 r) W2 O* ~
ë
# y4 ]/ }, ?- f+ [ Wé
* c. d' I" E0 m8 q0 t5 O$ ~=
: H3 y; \% A9 S6 N7 g* E- -
7 _. E- N6 W1 m) ]) n-3 z: a2 k. s# H1 I
1
+ e$ w* f$ J& R& b' e1- n2 N' }+ Y- U9 O, g1 E4 I0 F
1
4 v/ k5 Y2 g% x) M# f: d( 1)9 G- ^9 r. ?9 `1 \1 q: _0 U
0) a' I+ \' l7 O b9 `0 G
e n: W' e6 E1 q. c% n0 Z
e) U( _, J X- @ \+ j1 ]
e; i) T" N2 ]# Z5 H% |5 M3 V
G% M0 L8 p S/ r3 H
a
" H3 M1 b( G1 G: J; oa0 o' D" l% H8 i4 `' H$ k! x
M M+ \6 K) ~& I7 [. S, K& n9 ^" t
Y(1)=[ X(1)(1), X(1)(2), ⋯ X(1)( n)]T% D2 B9 ]& ?7 @: U
求出参数 A 和B
1 S3 @6 c0 Y# V9 n! { X(G G) 1G X (1)) `: [& ~6 D0 X7 a! s% |3 y' W
B
# _# j! T7 a. I) C: m vA = T - T ÷ ÷
# t I4 Z* e# ?' |ø
& C; p1 U) e- y2 j7 z- ~ö- j! k. X% E: ~5 E8 j
ç çè
- q8 v. D6 N1 cæ; J2 Y7 ?& ~9 M5 ^" j
求出时间相应方程: X (1) (t +1) = Ae at + B
& F' U# v, p/ j+ j则需求总量的预测模型为: X (0) (t 1) X (1) (t 1) X (1) (t) ) ) ) + = + -3 D) m: Q8 i8 T! a& B# H% I' l
4.5.2 网站月盈利与网站DVD 购买,会员会费的关系4 d% Y# j" G: Z. Z: f
网站盈利与网站会员数、会费、会员的满意度和DVD 总量存在一定联系,如何购3 q$ n3 @/ R; j. j' p
买DVD,如何确定会费使得网站盈利最大
% Y: o# Y0 h" K3 [# z假设网站会员人数 W 与网站会费e,会员对网站的满意程度m 有关,设:
/ ^! K0 D6 A) G0 nW = f (e,m);( c( T% t3 Y4 \' V' q& B
假设会员对网站的满意程度 m 与网站拥有DVD 总数量s,网站拥有DVD 种数n' v: _% y% D0 L3 |$ O
有关,设:
$ U' n5 P9 Z6 _4 ]m = g(s, n)
7 C) N7 q. }) K( X4 o假设拥有第 i 种DVD 的数量为ai,第i 中DVD 购买价格为bi
, I6 [, N6 {( p+ `9 k; E) I假设网站的每月的盈利 F 只于购买DVD 的费用与会员的会费有关
+ {! ^: B" Q# r+ i, \根据以上假设建立如下规划模型:* H/ G% z- P2 s# C0 q+ y
ï ï ï
$ w2 q9 F4 ?2 j& x2 _& N+ Rî
3 }) f% f8 N9 z1 @6 W8 ^ï ï ï
* Y# W; |8 I5 ]/ Qí
@' j- }0 Z% i2 vì
3 ?9 L/ `' Q5 x/ c=/ Z) d2 R+ w u9 l3 Z: a
=
. J* L2 L) h `2 e6 c' G=
" D( J$ u" ], [1 ?& m= ´ - ´' _2 C* |: t- A- _3 x
å& n4 f m7 u5 q+ M
å$ u2 r9 G) l" @; K4 i5 A
=
* f- g2 l( b( @ z0 B7 h$ F! D+ `/ I=8 t+ F4 d* G4 q- F9 s' F
n8 x) Y% u4 [* g0 U* ~
i9 ~( o5 g: T/ u( m: [, m" R
i s. C+ Z- k% X1 S2 Q
n
! i+ Q4 K0 {0 i6 }+ ?i
( M3 L% J1 G* k8 C2 T! C; Yi i' s. m4 y9 m3 R) @3 r5 g" D
s a
# X9 M7 r4 \1 y- M9 Tm g s n
: p, ?) o* k+ M9 |: ~3 cW f e m' N+ Y/ j+ H+ C3 F1 b$ f
s t4 _! X* {8 P" N. O
F W e a b1 l% s- B( n! T: i% X3 u; p
14 {7 C7 a5 L' a
1
, {0 N) k# X' k7 z8 A/ V/ H( , )
/ H. ?4 z+ w0 w! g% N1 p( , )
2 z2 M* e: H4 @4 C9 V- B$ Q. .( v/ W0 D! G/ {4 l
max
) o2 d) N6 k* x六、模型的评价及推广* z+ q8 C) j; D/ i w U
在问题一中,我们的根据实际的情况,突破传统以会员为参考切题巧妙地转为以经
1 E3 F( D& T2 ?' ?营者的身份用周转情况来考虑问题本身,使解题思路突现,运算简单,而且模型非常明
( H, X( w% F9 E7 T' C7 H了,十分容易理解。问题二中,我们证明了在题设条件下每位会员不可能都租到自己想看# L5 d: @# S0 W% R- c
的3 张DVD,至少有8 张DVD 租给了不愿意租到该DVD 的会员,同时用 0-1 规划模
. s; U' f/ V# \" @% d6 r. L! ^型求得了在只有有8 张DVD 租给了不愿意租到该DVD 的会员情况下最优的分配方案。. v2 F$ i; b; p! f7 d6 Z* M
2005 年全国大学生数学建模国家二等奖获奖论文
0 W- h* d; A3 g! w; P109 b& w0 O s" v( M$ @* z
此模型中有10 万个0-1 变量,规模已经相当大,但是运算只有20 多秒,在10 万个变
- \+ w% v5 Z8 ]# ^4 ]% R6 b6 Z1 C量以内规模的问题都可以求解。对于更大规模问题,模型的求解就会困难。因此我们想( J: G( ?& Q# c t7 x7 e9 |
了另外的一个算法:贪心算法[4]。贪心算法是在让计算机按照当前的要求逐一进行分配。, n G: c$ s8 y f" ]
在满足一定约束条件下,每次搜索偏爱度最小,然后按此进行分配的原则,得出较优解。
' p, x4 E/ P( x f( K$ a对于问题三,我们建立了一个规划模型,满足题目要求并且容易理解,但模型求解较为8 I! \* {* s! n+ C1 z, x& `
困难,然后用计算机仿真的方法模拟一个月内会员租DVD情况,得到网站应该购买DVD" `; }6 w( ^' C& V2 M
的数量。次方法比较贴近现实,但是每次模拟的结果都会有一定的差别,而且所得到的# ?4 @* J' J6 p6 L
结果难以求得最优解。# `4 Q6 d4 I: j* ^' `
本文建立的模型,不仅能够解决本文的问题。在超市物品的需求预测,货物的购买5 g7 k; i, ?$ Q+ Z" M2 C) ?
和各个连锁网点的货物分配,都能运用本文的模型进行解决,本文的模型,能很好符合$ T2 _* z/ f2 M) f
实际情况,但在精确性上还有待改进。
( ^# W- _; r5 {7 U* z+ |( ?[参考文献]:
/ p- z1 s# c+ O* u0 j% t[1] 张平 等,MATLAB 基础与应用,北京:北京航空航天大学出版社,2001 年
. E/ h2 ?9 L, s K[2] 苏金明,张莲花等,MATLAB 工具箱应用,北京:电子工业出版社,2004 年
' E, @6 }+ l3 {9 }8 J[3] 蔡家明,灰色系统模型在汽车市场需求预测中的应用,上海工程技术大学学报,
6 Z2 D; M. W8 |+ U第17卷第1期:72至74页,2003年3月
; v' x# X/ D$ P+ R3 e[4] 余祥宣,崔国华等,计算机算法基础,湖北:华中科技大学出版社,2004年
& a6 E8 L q( _0 p8 v& C[5] http://www.netflix.com,2005 年9 月17 日2 E5 d: M, _+ o6 i2 x
[附录]:
* l5 K% {1 I5 U- U+ u. d* W1、问题二程序:
: b* x3 H6 [, c( j- S# z运行软件:Lingo 8.0
$ D" f% @' L# g0 K$ p# d运行环境:windows2000; T' k1 L) H+ S5 {3 u2 |
运行时间:24 秒8 B' B! t( M$ M+ p! C1 w l2 y
model:7 a( d7 }7 k+ {; E2 L& s6 C% |1 d+ N
sets:
3 E7 o0 _( i3 G$ ?. N0 Fcd/1..100/:dvd;( Q3 {$ t; c$ R& P, z
ren/1..1000/:people;" }* R# m* y- S, b+ \4 @- h
link(ren,cd):c,b;
; G1 N, Z" I/ z3 A1 y# q9 uendsets# p3 R2 r: X7 v' i0 g
[email=min=@sum(link:c*b]min=@sum(link:c*b[/email]);+ X/ ^0 i a+ b/ C7 C
!dvd总数的约束;" ^# S4 Z C0 E2 @: Q3 _: G; B' p
@for(cd(J)sum(ren(I):b(I,J))<dvd(J));
8 i$ p) E) Z8 ? Z" x) D' W!需求约束;
+ p6 L- {3 W* @. S3 Z@for(ren(I)sum(cd(J):b(I,J))=3);
1 a% M2 i5 G: ? b0 v F@for(linkbin(b));
# `( p3 H+ d5 b( l' t% ?: fdata:3 f6 h( m. `7 a+ y. E: o1 K
c= ;!输入偏爱度;4 b) h+ C. ^& e; ~& q' ?+ V. j
dvd= ;!输入现有的每张DVD张数;
$ i) N# M- S8 G; a& r b- Xenddate
. e8 l7 i5 ?5 r- \0 uend9 A. h7 q" f/ R, G- v3 \
2005 年全国大学生数学建模国家二等奖获奖论文
6 w2 v( S, R- G6 H% B/ C11/ l8 {) C+ Q7 l$ O' R
运行软件:Matlab 6.5
4 E7 D0 M5 D: P# ~2 O运行环境:windows20006 Z2 |9 M2 c% R% P
ding=[ ];%输入订单表
) [4 A1 h5 p- Mb=[ ];%输入由lingo 解得的最优解! m1 M8 } E; t# M
k=1;
& `$ e p- x: L# Hfor i=1:1000% x 为分配DVD 方案表
7 y l1 y. X8 p5 ~9 sfor j=1:100
/ C, e- K! l9 g/ Wxx(i,j)=b(k);
2 `1 [2 A: A% L. G" u4 Zk=k+1;
$ ~$ v! H0 U( _9 t( [" wend
6 F+ j1 m* R8 U, B8 fend6 o) O$ M( g" B+ |
for i=1:1000 %满意度
% J- d. h9 R' E3 `for j=1:100
% }/ ]- f% E1 {* l) G B- Wif ding(i,j)>0 %ding 表示订单表+ u/ Z5 e, I9 ]3 ^
man(i,j)=11-ding(i,j);4 Q" @! P3 e' Z- w9 }9 }
end
. Z# T3 f$ m$ M* W. j5 F, d) P' [- mend
2 ~- E* s9 z. O) E8 C$ b+ ?; T' ~7 ?end# \+ P; Q6 s6 C+ K; O
tt=xx.*man;' N) J5 H4 ~2 b! W0 }! k% x0 J e& s
ts1=sum(tt() %ts1 满意度的最大值" ~3 F7 t; J9 N7 l' F+ L9 j
tt=xx.*ding;4 i/ J/ d+ l) {+ v
tt2=sum(tt() %tt2 订数字和最小# M0 r; K* z" e
for i=1:1000; G9 W4 i* m! q6 z6 D& V' q
k=1;& e) `* d6 I7 j/ @7 q; |/ H/ Y
for j=1:100% t4 K, t: v1 |- g- N
if xx(i,j)==1
3 z7 T+ I3 y/ C! ed(i,k)=j;%d 表示发放表% y* F6 E7 v6 O1 G, \* v
k=k+1;
# p7 `/ |) b. Send. @0 P+ Q( M; D5 X+ C: W
end
* {3 t! p& r/ ~2 ^& Jend9 v: J2 D% y5 ?
for i=1:1000
" `2 k6 }8 _% p4 S5 J6 J+ Wfor j=1:3# u0 F T0 t: A# D$ P. m
ddd(i,j)=ding(i,d(i,j));%ddd 与发放表对应的订单数字) O2 R( h: p1 s
end" Y& F& E! M& `) c
end. h: X9 e4 T8 k) R
k=0;%租给了会员不愿意租到碟的个数
5 ~/ @" u2 H5 tfor i=1:10006 ^$ @& e8 y/ P
for j=1:100
, l# s# b( M8 h2 m3 p6 oif (xx(i,j)==1&ding(i,j)==0)1 Y5 g! P. s* m
k=k+1;; z$ \( ~' j. L& v$ ~6 z( c1 Q
2005 年全国大学生数学建模国家二等奖获奖论文3 v& O0 j$ b- Y( G5 { }
12
! J4 q% _' T6 E' Lend
% Q- ~/ a- _5 b- f2 lend
' \) [1 |" K1 E2 z. F0 d3 e4 kend
5 S9 `% ^. r$ {/ w8 G; Yk5 \9 S" ~7 Y8 N+ A: Q) I
2、问题三程序+ U, A! c3 k5 ^
运行软件:Matlab 6.5) S3 R+ b0 A- O: r4 _, K
运行环境:windows2000
, d9 |3 i9 G6 H" m z! F- pc0=[ ]; %输入在线订单表" Q! k' p2 o. b9 X
n=1000;c1=zeros(n,7); %%记录j 号会员的信息,c1(j,1)-c1(j,3)表示会员借的三张碟的号码,% I/ @5 l7 M+ |% w& u, q& F
olddvd=ones(1,100)*n; %c1(j,4)表示借的时间,c1(j,5) 表示还的时间 c1(j,6) 表示会员的类别,3 s. A3 C" q. ^
c1(j,7)表示借次数
0 u! i k+ S4 L9 s0 zc1(:,6)=unidrnd(10,1000,1) ; % 人数分类 60%会员只能租二次 40%会员只能租一次小于 6 为第一类
( {& e7 }$ O. @0 Z4 y4 w! ?' }人
, P: k! N8 m& s/ |a=10;b=20;
0 v0 }+ D( {9 h. b' C: i$ byt=olddvd;
5 M' f/ q, v) E! l; [* xfor(i=1:30)%对每一天的情况进行模拟
% @1 B) V5 w! D- H" Pfor(j=1:n)) ?5 G5 N( c+ Q4 ?3 K6 A! l3 w6 Q
if(c1(j,4)&c1(j,5)==i)%还碟9 s E* e* u: e2 ?% A
if(c1(j,1))olddvd(c1(j,1))=olddvd(c1(j,1))+1;end e& w1 o. o) B0 K5 K& ]4 W6 k
if(c1(j,2))olddvd(c1(j,2))=olddvd(c1(j,2))+1;end: |/ @9 U$ q8 f+ G1 @
if(c1(j,3))olddvd(c1(j,3))=olddvd(c1(j,3))+1;end9 e2 ]% q7 y% H+ l: k; O. f8 e% l
c1(j,4)=0;
0 ~' `; O# s5 C$ l6 kend
$ P' d, _6 {7 F+ D* O y3 J+ cif(c1(j,4))continue;end %以下可以租
- C% z9 Q+ S0 G) F/ x5 Jif(c1(j,6)<=6&c1(j,7)>=2)continue;end % 60%的会员租了两次不能再阻 x. X& U* c# ^: l
if(c1(j,6)>6&c1(j,7)>=1)continue;end % 40%的会员租了一次不再租
9 U3 f" i, E t: W0 @0 Mif(unidrnd(100)>95) continue;end %保证0.95 的概率能选到
+ e+ N$ E) z$ D d; d [! ^* ?c2=c0(j,;%以下开始租
% t2 ^% H+ N, b( Tts=0;( F) ]/ Z9 M& B9 D. M
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
. i1 e8 U, T; F0 B) ]生成三个随机数) K9 O' r# y' t! V1 \) c
ct=0;8 i0 R# w; R/ ]$ a; [
for s=1:100
+ S, K. J9 N" E V+ ^. Y6 Vif(c2(s)) ct=ct+1;ts(ct)=c2(s);end
6 o1 X# _. X. r2 {: S. oend
' e6 m4 u4 y, } f- X( i: ktt=length(ts);" U% i+ l a# O5 R K# u, e
%tt=max(c2); %第m 行的人预选个数
! e2 W. F6 }0 G% X8 k2005 年全国大学生数学建模国家二等奖获奖论文
" k9 J. t9 g, \% N13* M% U- k9 l8 ?1 c9 ~( i
%ts=1:tt;3 _ G9 S! a- {8 O
ts=11-ts;
( P- x: D8 z- _ E" |/ h%生成三个不同的随机数,按照概率
& e6 \$ {" ? [; X0 p0 Qtm=sum(ts(1:tt));* d- @0 D4 A4 W4 g% F( _
t1=unidrnd(tm);%生成第一个随机数) q+ T/ d2 Q1 j' }
t0=0; ss=1;/ J/ z% N$ C% Y
while t0<t1
; m4 x; Y0 `, G" k9 Nt0=t0+ts(ss);
4 R# R N, D/ Q q0 [ss=ss+1;8 h4 [ E: P4 P/ a5 X
end
, [' j9 l* h5 n4 p# y9 Bss=ss-1;6 Z% C' f" l9 F
sj(1)=ts(ss);5 z Z6 z7 A- r$ B4 S
%生成第二个随机数) A; P# f/ K q$ G; V2 a6 H; x
for r=ss+1:tt%删除
3 w% D- N1 X, N) g1 gts(r-1)=ts(r);
0 R c5 y* H ?4 F6 }' lend
6 v, r. v. Q' B2 d* Ltt=tt-1;5 P7 \2 h5 T0 w$ y. t$ w" d! _1 `
tm=sum(ts(1:tt));
- S7 D D' {6 _0 F" lt1=unidrnd(tm);
3 J, A* w8 g, ~+ L8 T3 w# Wt0=0; ss=1;
* t4 G. t% l0 `% P+ D, y$ `while t0<t18 Y! M" t1 K3 i5 O$ T
t0=t0+ts(ss);* g+ V8 D( R- P- u: j0 A
ss=ss+1;, t( S0 p' H- l! z. s( Y
end2 s% B% D' {# K# S
ss=ss-1;
7 ~! L1 o4 l0 O( v5 J0 z/ G* T" I% G9 Hsj(2)=ts(ss);
" C0 e/ y7 S6 I3 v) N/ W" b2 pfor r=ss+1:tt%删除3 M6 D6 h# n3 f0 Q/ [. A3 a% p
ts(r-1)=ts(r);+ @4 |8 Y$ C0 k- f2 }$ S/ A
end
2 d# e- o6 ^+ z# f# Ptt=tt-1;2 J5 U3 z' e0 l
tm=sum(ts(1:tt));
. g$ U/ d1 F5 L7 @# T& ht1=unidrnd(tm);%生成第二个随机数2 n# t' X8 p. [6 D+ p
t0=0; ss=1;
. d2 p+ g; c6 R' y! ywhile t0<t1
9 O2 Y) H( Q* C7 Y/ i" K9 Kt0=t0+ts(ss);8 J- `2 P, i; ]4 B: @/ R/ ]4 v2 B
ss=ss+1;7 _) Q' Y+ B/ e/ b
end/ c7 O' k0 u/ {% D, }
ss=ss-1;
9 x; x7 X( {3 l `( p: X* [sj(3)=ts(ss);
4 e- y7 c) y ^8 b%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2 |' d2 m, k% w$ g2 qfor s=1:3, A' c4 @) m* {$ I) K8 m4 U8 N
j1(s)=find(c2==11-sj(s));8 `6 _4 v8 s4 D, V) S
c1(j,s)=j1(s);
5 k6 }& i; m9 P3 r0 I2005 年全国大学生数学建模国家二等奖获奖论文# g' U7 X% @: N9 |( E
14' ]$ B7 Y9 `7 Q1 G
olddvd(c1(j,s))=olddvd(c1(j,s))-1; a4 z( W. B% w% o+ V
c0(j,j1(s))=0;0 m X# G% m* w* z/ r( p
end
^+ B& W* c; E7 o4 x7 G9 [c1(j,4)=i;2 R( O) n' ?0 {0 p
c1(j,5)=i+round(unifrnd(a,b));% H6 Z6 r! v* q* i i6 V
c1(j,7)=c1(j,7)+1;# E8 E8 T* e, \9 v3 m& f
end4 Z" w& u7 V. G1 E) e
mindvd(i,:)=olddvd;7 M: T! p. i4 C1 v
end
4 [: o' y- o3 H: [- u8 D, e6 d3 zmindvd1=1000-min(mindvd);
7 ], D3 C& o! d$ Wsum(mindvd1) |
|