数学建模论文.docx

上传人:b****3 文档编号:24698248 上传时间:2023-05-31 格式:DOCX 页数:18 大小:84.03KB
下载 相关 举报
数学建模论文.docx_第1页
第1页 / 共18页
数学建模论文.docx_第2页
第2页 / 共18页
数学建模论文.docx_第3页
第3页 / 共18页
数学建模论文.docx_第4页
第4页 / 共18页
数学建模论文.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

数学建模论文.docx

《数学建模论文.docx》由会员分享,可在线阅读,更多相关《数学建模论文.docx(18页珍藏版)》请在冰豆网上搜索。

数学建模论文.docx

数学建模论文

DVD在线租赁的优化设计

摘要

本文主要研究了DVD在线租赁的优化问题。

对问题一,在假定的租期下,考虑能看到DVD的会员数量与会员总体数量的比例要求,建立了DVD的需求量应满足的不等式关系,求得满足会员观看率的DVD数量。

为保证希望看到某种DVD的会员中至少50%可以在一个月内看到该DVD,网站至少应准备DVD16250张、DVD23125张、DVD31563张、DVD4782张、DVD5391张。

如果要求保证三个月内至少95%的会员能看到想看的DVD,则应准备DVD13959张、DVD21980张、DVD3990张、DVD4495张、DVD5248张。

对问题二,给出了最大满意度的评价标准,即对DVD需求强烈的会员的需求能得到最大满足时,顾客的满意度达到最大。

因此按照会员对DVD需求的强烈程度制定了目标优先级,建立了多目标整数规划模型。

考虑到对网站来说,数据处理要求有很强的时效性,因此最好采用快速算法求解。

本文采用较为快捷的贪婪算法,通过MATLAB编程计算,得到了最优分配方案(见模型求解部分)。

对问题三,分两个阶段进行求解。

首先,采用处理问题一的思路,求出保证一个月内95%的会员得到其想看的DVD时,每种DVD的最小购买量。

然后把每种DVD的购买量作为约束条件,并按照会员对DVD需求的强烈程度制定目标优先级,建立了多目标规划整数模型,采用贪婪算法,通过MATLAB编程计算,得到了最优分配方案(见模型求解部分)。

最后,对DVD的需求预测、购买模型提出了以下改进方法和建议。

现实生活中,受欢迎的DVD的价格往往相对较高,即每种DVD的价格可能不同。

因此网站购买DVD的费用由每种DVD的购买量及其价格两方面决定。

以购买DVD的总费用最小为目标函数,建立了整数规划模型。

第二,考虑当会员对某种DVD的需求不强烈、网站满足其需求时,会员的满意度并不能有大的提高,而网站的运营成本却增加了。

因此可以认为DVD的需求量与会员的需求强烈程度有关。

尝试运用模糊数学的思想,给出需求程度的评价方法,把需求不强烈的会员的需求从总需求量中减去,在对顾客满意度影响不大的前提下,使DVD的购买数量减少,从而降低网站的运营费用。

在现实中网站要处理大量的数据,而且对数据处理速度有很高的要求,本文给出的模型和算法可以方便快捷的计算出近似的最优分配方案,满足网站的现实需求。

另外,本文的模型还可以进一步推广,用来解决图书在线租赁、网上购物等许多实际问题,具有一定的通用性。

一、问题重述

在高度发达的网络信息时代,人们的生活越来越依赖于网络。

资源共享是人们的需要,由此产生了一系列网上有偿服务。

其中音像制品的在线租赁就是一种流行的服务。

它能随时随地满足顾客的需要,使得人们不出门就能得到想要的服务,实现远程控制。

考虑如下的在线DVD租赁问题。

人们只需交纳一定的月租费成为会员,就可以得到每月最多2次的服务,每次租的DVD的数量3张。

看完后寄回就可租下一次,邮费网站提供。

会员对哪些DVD有兴趣,只要在线提交订单,网站就会通过快递的方式尽可能满足要求。

会员提交的订单包括多张DVD,这些DVD是基于其偏爱程度排序的。

网站会根据手头现有的DVD数量和会员的订单进行分发,以下问题:

1)网站正准备购买一些新的DVD,通过问卷调查1000个会员,得到了愿意观看这些DVD的人数。

此外,历史数据显示,总体上60%的会员每月租赁DVD两次,而另外的40%只租一次。

假设网站现有10万个会员,应该至少准备多少张,才能保证希望看到每类DVD的会员中至少50%在一个月内能够看到该DVD?

应该至少准备多少张才能保证在三个月内至少95%的会员能够看到该DVD呢?

2)已知网站手上100种DVD的现有张数和当前需要处理的1000位会员的在线订单,如何对这些DVD进行分配,才能使会员获得最大的满意度?

具体列出前30位会员(即C0001~C0030)分别获得哪些DVD。

3)假设每种DVD的现有数量全部为0。

如何决定每种DVD的购买量,以及如何对这些DVD进行分配,才能使一个月内95%的会员得到他想看的DVD,并且满意度最大?

4)给出DVD的需求预测、购买和分配中应有哪些重要问题值得研究?

明确提出问题,并尝试建立相应的数学模型。

二、符号说明

满足会员看到第i种DVD的概率达到题目要求时,所需的DVD的数量;

网站的注册会员总数;

愿意看第i种DVD的人数占网站总人数的百分比;

i会员的编号;

jDVD的编号;

第i个会员是否取第j张DVD,取为1,不取为0;

K会员对DVD的评价,k=1,2,…10;

网站拥有的j类DVD的数量;

题目的表二中每类DVD的数量;

第j类DVD的需求量;

第j类DVD的订购费用;

第j类DVD的单价

第i个会员对第j张DVD的偏爱程度;

第i个会员对第j张DVD的满意度;

三、问题分析与假设

1.记每月租赁DVD两次的会员为A类会员,每月租赁DVD一次的会员为B类会员。

由于会员按月缴纳会费,可以认为DVD每次的租赁时间最长为一个月。

即对于B类会员来说,在某一次租赁DVD时,其租期最长为一个月。

但对于A类会员来说,因其每月租赁两次DVD,必须要求其两次的租期的和小于或等于一个月,不妨假设对B类会员来讲,每次的租期最大为半个月。

如果DVD的租期短,则在一个月内,该DVD可以重复多次被租出,对于网站来讲,为满足会员需求所准备的DVD的量就小。

但是,会员观看DVD需要花费一定的时间,DVD邮寄需花费的时间,如果租期小,会员的满意程度就会下降。

由于网站无法确定每位会员租赁DVD的租期,不妨假定网站在最坏的前提下确定DVD的购买量。

即假设每类会员的租期为其最大租期,A类会员的租期均为15天,B类会员的租期均为30天。

2.由于要求所需DVD数量最小,所以假设每次出租时,网站将所有的DVD租出,即不会存在有DVD空闲而未被利用的情形。

3.由于1000人这一样本的数量很大,假设对1000人的调查结果对10万人也成立

4.假设会员看到某种DVD后不会再次租该种DVD。

5.认为不愿意观看DVD(i)的会员不会租看DVD(i),所以不同种类DVD的需求量可以分开来计算。

6.现实中,每种DVD的价格一般是不同的,受欢迎的DVD往往价格高。

在解决前三个问题时,假定每种DVD的价格相同。

对于每种DVD价格不同的情形,在第四问中考虑。

四、模型的建立与求解

(1)问题一的模型与求解

1.1模型建立

网站出租DVD时,不能判断会员属于A类还是B类,即A、B两类会员的地位平等。

第i类DVD应准备的张数为

,又大量历史数据显示,A类会员约占会员总的60%,B类会员约占会员总数的40%,则在一次出租时,

张DVD租给A类会员的数量是

,租给B类会员的数量为

由于B类会员的租期为半个月,其所租的DVD必须在每月中旬归还,故有

张DVD在每月中旬归还,为了增加DVD的周转次数,这些DVD应再次出租,由假设2,

张DVD必须全部租出。

又由假设4,对第i类DVD,每个会员只能看一次。

那么在一个月内,共有

个会员看过第i类DVD。

要求保证看过第i类DVD的人数占希望看到该DVD的会员总数的50%以上,即有如下的不等式成立:

1.2模型求解

分别取

;求解以上的不等式,可以很快得到每种DVD的需求量。

表1:

一个月内观看人数超过50%的所需DVD数量

DVD

DVD1

DVD2

DVD3

DVD4

DVD5

准备的张数

6250

3125

1563

782

391

1.3模型的推广

如要保证三个月内至少95%的会员能看到想看的DVD,则只需将上面的模型进行简单的推广。

三个月内,共有

个A类会员看到第i类DVD;同理,共有

个B类会员看到第i类DVD。

因此:

同理可以求出此时每种DVD的需求量

表2:

三个月内观看人数超过95%的DVD所需数量

DVD

DVD1

DVD2

DVD3

DVD4

DVD5

准备的张数

3959

1980

990

495

248

 

(2)问题二的模型与求解

2.1问题分析

原题的表中D001~D100表示有100种DVD,C001~C1000表示1000个会员,会员在线订单用数字1,2,……表示,数字越小表示对应的偏爱程度越高(以后称这些数字为乏味指数)数字0表示对应的DVD当前不在会员的在线定单中,也就是说当表中的

相交的数字为1时,表示会员

最喜欢看

通过分析,最优解只可能存在于一些较优的组合当中,可以用贪婪算法获得这些组合,贪婪算法的思想是:

每次选择当前最优的点,如不满足条件,再选次优点以此类推。

因此分配这些DVD,首先应该将DVD租给“乏味指数”最小(不包括“零”)的人,也就是表中数字为1时所对应的会员

其次依次是乏味指数为2,3,……,10的会员,只有这样才能是会员获得最大的满意度。

2.2模型的建立

s.t.

上式中k表示会员对DVD的评价,k=1,2,…10

表示第一目标优先级,

表示第二目标优先级……

表示第十目标优先级;

2.3模型求解

基于上述思想,可以设计这样的编程:

由于受到每种DVD的现有数量的限制,应当采取按列遍历搜索的顺序,从上向下,从左向右,依次搜索表中的数字1,2,3,……,10。

现以第一列为例来说明方法,从第1列的第1行开始从上向下依次寻找乏味指数为1,2,3,……,10的位置(即其对应的会员和DVD),首先开始寻找乏味指数为1的位置,每找一个1,就让一个初值为0的变量k自增一次,即k=k+1(实际意义就是把1张DVD1租给了乏味指数为1的会员),当遍历完第一列中数字为1的位置以后,如果k仍然小于DVD1的总数10,便继续对第一列中数字为2的位置进行搜索(现实意义就是当第一列中对DVD1乏味指数为1的会员都已经得到DVD1以后,便把剩下的DVD1租给第一列中对DVD1乏味指数为2的会员);这样按顺序搜索乏味指数为1,2,3,……,10的位置,直至变量k的增至10为止(表示10张DVD1此时已经被分配完),此时结束对第1列的搜索。

同理按同样的方法对第2,3,……,100列进搜索。

搜索完后,表中有些数字被搜索到了(表示该位置所对应的会员已经租到DVD了),有些则没有被搜索到(表示该位置所对应的会员没有租到DVD),为此我们建立一个与该表有相同行列的矩阵,在被搜索到的数的位置,矩阵中对应位置的元素取1,相反取0,这样便得到一个1000*100由0和1组成的矩阵,同理,取1的位置表示该位置所对应的会员已经分配到DVD了,取0则表示没有分配到.由这个矩阵就可以近似地表示分配的结果,因此称其为分配矩阵。

上述过程只能满足每列上的要求,即每种DVD的总数都大于或等于租了该DVD的会员数,并不能表示每人每次租了三张DVD,这种情况表现在所得到的矩阵每一行中的“1”的数目不一定为3,这时就需要对该矩阵进行修正.所用的方法是这样的:

1.将矩阵还原为“原先的表”,也就是将矩阵中位置上的数字1换成表中与之相对位置上的“乏味指数”,数字为0的位置上仍然是0,现在所得到表与原先表的不同之处是:

现在的表上的非零数(即乏味指数)就是原来表中相同位置上的数,但比原来的表少了一些非零数(因为真正租DVD的会员的一定要比真希望租到DVD的会员少)。

2.搜索出每一行中最小的三个数(0不能算在内,当然如果此行中非零数还不到三个,自然就不用进行这一步),再将该行中其他的“乏味指数”都取零(表示每个会员都租了自己喜欢的三个DVD,而没有租其他的DVD)得到有一张新表.

3.将新表中的非零数再一次换回数字“1”,得到新的矩阵。

再考虑非零数小于三个的行,将其补充至三个,补充的原则是:

(1)对于固定的某一行而言,搜索旧表中该行的乏味指数,找到一个比新表中该行的最大的乏味指数还大且差值最小的乏味指数,

(2)将其所对应的位置返回到新的矩阵中来,并将该位置上的0换成1。

(3)再检查该位置所对应的列上的“1”的数目是否大于该列上DVD的总数,如果大于,

(4)返回步骤

(1),找到差值次小的乏味指数,重复步骤

(2),直至条件(3)满足为止。

这样便可以得到更加完善的分配矩阵了。

基于以上的算法思想用Matlab编程可解得原表所对应的分布矩阵,由于是1000*100

的庞大矩阵,不便于输出,这里只以另一种方式例举30个会员租DVD的情况。

表3:

由分配矩阵得到会员C0001~C0030的DVD分配方案

C0001

C0002

C0003

C0004

C0005

C0006

C0007

C0008

C0009

C0010

DVD11

DVD6

DVD4

DVD18

DVD11

DVD16

DVD26

DVD31

DVD17

DVD14

DVD41

DVD44

DVD32

DVD23

DVD21

DVD53

DVD45

DVD35

DVD78

DVD41

DVD98

DVD62

DVD50

DVD41

DVD34

DVD66

DVD66

DVD71

DVD100

DVD85

C0011

C0012

C0013

C0014

C0015

C0016

C0017

C0018

C0019

C0020

DVD19

DVD7

DVD21

DVD23

DVD13

DVD10

DVD47

DVD12

DVD66

DVD18

DVD63

DVD41

DVD78

DVD43

DVD52

DVD84

DVD51

DVD60

DVD84

DVD61

DVD66

DVD98

DVD96

DVD52

DVD85

DVD97

DVD67

DVD78

DVD86

DVD89

C0021

C0022

C0023

C0024

C0025

C0026

C0027

C0028

C0029

C0030

DVD2

DVD38

DVD29

DVD37

DVD69

DVD68

DVD22

DVD8

DVD26

DVD37

DVD45

DVD55

DVD81

DVD41

DVD81

DVD83

DVD50

DVD34

DVD30

DVD70

DVD50

DVD86

DVD95

DVD76

DVD94

DVD95

DVD78

DVD82

DVD44

DVD98

(3)问题三的模型与求解

问题三要求给出每种DVD的购买量,以及对这些DVD的分配方案,使得一个月内95%的会员得他到想看的DVD,并且满意度最大。

因为使95%的会员得到其想看的DVD和使会员的满意度最大两个目标之间存在明显的先后顺序,所以考虑分两个阶段进行优化设计。

阶段一:

表示第i种DVD的购买量,采用处理问题一的思路,则得到下面的不等式:

于是,可以马上求出保证一个月内95%的会员得到其想看的DVD时,每种DVD的最小购买量。

(见表4)

表4:

一个月内观看人数超过95%所需的DVD的数量

DVD1

DVD2

DVD3

DVD4

DVD5

DVD6

DVD7

DVD8

DVD9

DVD10

50

55

52

59

47

52

52

60

56

54

DVD11

DVD12

DVD13

DVD14

DVD15

DVD16

DVD17

DVD18

DVD19

DVD20

57

58

51

61

50

56

61

55

60

69

DVD21

DVD22

DVD23

DVD24

DVD25

DVD26

DVD27

DVD28

DVD29

DVD30

58

60

65

56

53

60

52

50

58

58

DVD31

DVD32

DVD33

DVD34

DVD35

DVD36

DVD37

DVD38

DVD39

DVD40

60

52

55

49

65

58

55

56

52

52

DVD41

DVD42

DVD43

DVD44

DVD45

DVD46

DVD47

DVD48

DVD49

DVD50

71

62

56

54

63

56

56

53

55

56

DVD51

DVD52

DVD53

DVD54

DVD55

DVD56

DVD57

DVD58

DVD59

DVD60

64

55

59

55

58

59

65

46

51

62

DVD61

DVD62

DVD63

DVD64

DVD65

DVD66

DVD67

DVD68

DVD69

DVD70

56

62

63

65

59

63

54

58

63

60

DVD71

DVD72

DVD73

DVD74

DVD75

DVD76

DVD77

DVD78

DVD79

DVD80

57

63

51

49

54

52

53

59

49

59

DVD81

DVD82

DVD83

DVD84

DVD85

DVD86

DVD87

DVD88

DVD89

DVD90

59

46

43

50

54

47

57

44

56

59

DVD91

DVD92

DVD93

DVD94

DVD95

DVD96

DVD97

DVD98

DVD99

DVD100

64

56

56

54

61

47

57

60

48

52

阶段二:

把第一问的结果作为约束条件,采用处理问题二的思路。

建立多目标规划模型:

s.t.

上式中k表示会员对DVD的评价,k=1,2,…10;

表示第一目标优先级,

表示第二目标优先级……

表示第十目标优先级;

由于优化模型的规模太大,仍考虑采用问题二中给出的贪婪算法思想,用MATLAB编程求得了最优分配方案。

由于是1000*100

的庞大矩阵,不便于输出,这里只以另一种方式例举30个会员租DVD的情况。

(结果见软盘中的电子表格,例如表中C0001行和DVD1的1列的交点处数据是1,表示会员C0001租到DVD1)

表5:

会员C0001~C0030的DVD分配情况

C0001

C0002

C0003

C0004

C0005

C0006

C0007

C0008

C0009

C0010

DVD1

DVD5

DVD31

DVD23

DVD12

DVD27

DVD45

DVD17

DVD10

DVD5

DVD11

DVD62

DVD32

DVD49

DVD34

DVD61

DVD66

DVD31

DVD17

DVD14

DVD49

DVD71

DVD90

DVD68

DVD63

DVD67

DVD82

DVD35

DVD70

DVD67

C0011

C0012

C0013

C0014

C0015

C0016

C0017

C0018

C0019

C0020

DVD61

DVD5

DVD49

DVD42

DVD24

DVD10

DVD5

DVD12

DVD15

DVD18

DVD66

DVD7

DVD80

DVD46

DVD52

DVD48

DVD11

DVD17

DVD25

DVD33

DVD82

DVD98

DVD92

DVD89

DVD70

DVD76

DVD31

DVD81

DVD90

DVD40

C0021

C0022

C0023

C0024

C0025

C0026

C0027

C0028

C0029

C0030

DVD2

DVD25

DVD36

DVD24

DVD23

DVD8

DVD6

DVD46

DVD26

DVD70

DVD25

DVD81

DVD67

DVD43

DVD81

DVD83

DVD38

DVD47

DVD33

DVD84

DVD50

DVD86

DVD75

DVD72

DVD90

DVD91

DVD50

DVD57

DVD89

DVD98

(4)问题四的模型:

4.1基于DVD价格变化的模型

在市场经济中,DVD的价格与受欢迎程度有关,设一张碟的价格

就购买中的费用建立模型:

Miny=

 

假定DVD是新产品,价格随着时间的变化而变化,

=

f(

),通过Excel数据提取近似的需求量

,大大简化了模型,可以考虑采用列举法通过计算机搜索求最优解。

4.2用模糊数学思想对数据进行处理

基于大量数据的分析,我们发现许多数据对分配结果是没有影响的,因此我们考虑到用模糊处理方法对数据进行初步优化。

下面先对几个概念作解释:

1)模糊概念(模糊现象):

指没有严格的界限划分而使得很难用精确的尺度来刻划的现象,反映模糊现象的种种概念为模糊概念。

2)隶属度:

是论域

到[0,1]的一个映射,即

→[0,1],

上的模糊集,而函数

称为模糊集

的隶属函数,

称为

糊集

的隶属度。

3)模糊概念的清晰化

我们可以设定一个数

(比如0.6),当一个元素的隶属度大于这个数时,我们就可以认为该元素属于这个集合,这就是模糊概念的清晰化。

4)定义;

=1/

称为满意度

5)模型的建立

首先对表格中的数据做如下处理:

将数据为0的替换为100000。

目的是使偏爱度为0的转换成满意度也为0。

也就是对表中不为0的进行模糊处理。

;其中n=

假设隶属度

=0.4

;0.4表明将距离d=0.4

以外的数据去掉。

例如:

对DVD1进行模糊处理:

n=84,

=0.4

=0.4*21.16468/84=0.10078;

再根据满意度知应该删掉偏爱程度为9和10的数据,从而减少了计算量,降低了大距阵的运算时间。

五、模型的评价与改进

1.误差分析

1.)问题一的模型是以网站经营中遇到的最坏情形为出发点建立的。

现实中,会员的租期很可能小于最大的租期,使得DVD在一个月内周转的次数增加,必然使得DVD的购买量减小。

因此模型计算出的最小购买量应比实际值偏大。

2.)贪婪算法在求解时不能保证求得精确的最优解,但是对于现实生活和工程来说,其求解精度完全可以满足要求。

2.稳定性分析

1.)考虑对某行,会员对DVD的评价全部增加、减少一个档次或部分有数字格变为无数字格,利用给出的算法编程计算,发现最优分配方案只有部分的变动。

2.)考虑对某列,进行类似的操作可以得到相同的结论,可以认为模型具有一定稳定性。

3.模型的优缺点

1)利用贪婪算法,通过MATLAB编程计算快速求得复杂的多目标规划模型的近似最优解,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 水产渔业

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1