这里我们着重介绍如何使用 LINGO 软件中的相关函数。
对于损失制排队模型,其模型的基本参数与等待制排队模型有些不同,我们关心如下指标。
(1)系统损失的概率
其中rho是系统到达负荷 ,s是服务台或服务员的个数。
(2)单位时间内平均进入系统的顾客数( )
(3)系统的相对通过能力( )与绝对通过能力( )
(4)系统在单位时间内占用服务台(或服务员)的均值(即 )
注意:在损失制排队系统中, ,即等待时间为0。
在上述公式,引入 是十分重要的,因为尽管顾客以平均 的速率到达服务系统,但当系统被占满后,有一部分顾客会自动离去,因此,真正进入系统的顾客输入率是 ,它小于
其参数为 。编写LINGO程序如下:
求得系统的顾客损失率为43%,即43%的电话没有接通,有57%的电话得到了服务,通话率为平均每分钟有0.195次,系统的服务效率为43%。对于一个服务台的损失制系统,系统的服务效率等于系统的顾客损失率,这一点在理论上也是正确的。
(1)电话交换台的服务分为两类,第一类内线打外线,其强度为:
第二类时外线打内线,其强度为:
因此,总强度为:
(2)这是损失制服务系统,按题目要求,系统损失率不能超过5%,即:
(3)外线是整数,在满足条件下,条数越小越好。
由上述三条,编写相应的Lingo程序如下:
求得需要15条外线。在此条件下,交换台的顾客损失率为3.65 %,有96.35%的电话得到了服务,通话率为平均每小时185.67次,交换台每条外线的服务效率为64.23%。
求解时,尽量选用简单的模型让LINGO软件求解,而上述程序是解非线性整数规划(尽管是一维的),但计算时间可能会较长,因此,我们选用下面的处理方法,分两步处理。
编写LINGO程序:
求得
第二步,注意到@pel(rho,s)是s的单调递减函数,因此,对s取整数(采用只入不舍原则)就是满足条件的最小服务台数,然后再计算出其它的参数指标。
编写LINGO程序如下:
比较上面两种方法的计算结果,其答案是相同的,但第二种方法比第一种方法在计算时间上要少许多。
该函数的返回值是当到达负荷为 load,服务系统中有 S 个服务台且允许排队时系统繁忙的概率,也就是顾客等待的概率。
该函数的返回值是当到达负荷为 load,服务系统中有 S 个服务台且不允许排队时系统损失概率,也就是顾客得不到服务离开的概率。
该函数的返回值是当到达负荷为 load,顾客数为 K,平行服务台数量为 S 时,有限源的 Poisson 服务系统等待或返修顾客数的期望值。
具体用法将在下面举例说明:
本例可看成一个 排队问题,其中
(1)修理店空闲的概率
(2)店内恰有3个顾客的概率
(3)店内至少有1顾客的概率
(4)在店内的平均顾客数
(5)每位顾客在店内的平均逗留时间
(6)等待服务的平均顾客数
(7)每位顾客平均等待服务时间
(8)顾客在店内逗留时间超过 10min 的概率
Lingo程序:
@peb(rho,s)中,第一个参数rho即为 ,第二个参数为 为服务台个数。
model:sets:
GC/1..3/:GZ!i工厂所有物资的总产量
WZ/1..10/:TJ,M !j物资体积,存储费
CC/1..5/:W !k仓库容积,
FD/1..8/:HZ !h分店
YJ1(GC,CC):B !i工厂到k仓库的运价
YJ2(CC,FD):F !k仓库到h分店的运价
CL(GC,WZ):G !i工厂j物资的产量
DJ(GC,WZ):P !i工厂j物资的订价
DGC(GC,WZ,CC):A !i工厂生产的j物资到k仓库的订货量
DCF(CC,WZ,FD):E !k仓库运输的j物资到h分店的订货量
ENDSETS
!目标函数
MIN=@sum( GC(i):@sum(wz(j):@sum( CC(k): A(i,j,k)*p(i,j))))+ ! i工厂运出货物的总价格
@sum( GC(i):@sum(wz(j):@sum( CC(k): A(i,j,k)*B(i,k))))+ !i工厂到k仓库的运价:运价1
@sum(wz(j):@sum(GC(i):@sum(CC(k):A(i,j,k)))*M(j))+ !总库存费
@sum(CC(k):@sum(fd(h):@sum(wz(j):E(k,j,h))*F(k,h)))!k仓库到h分店的运价:运价2
!产量约束
@for(CL(i,j):
@sum(DGC(i,j,k): A(i,j,k))<=G(i,j))!i仓库运出量不大于生产量 !
!k仓库的j物资运入量=运出量
@for(WZ(j):@for(CC(k):
@sum(GC(i):A(i,j,k))=@sum(FD(h):E(k,j,h))))!问题出在这里,其他的都可以运行
DATA:
GZ=15200 10500 11200
TJ=1.5 1 1.5 2 1.5 0.5 1.5 2 1 0.5
M=40 70 90 100 120 120 150 160 180 200
W=800 600 1000 700 800
B=
1000 10 14 17 13
10 8 1000 9 16
15 16 9 15 1000
F=
3 2 3 6 31 4 5
1000 3 3 1000 5 2 5 3
5 1000 2 5 1000 5 1000 4
4 1 4 4 2 1000 2 1000
2 2 5 3 5 2 52
G=
0.2 0 0.3 0.1 0.32 0.1 0 0.2 0.15 0.15
0.2 0.13 0 0.1 0 0.15 0.2 0.15 0 0.12
0 0.25 0.08 0.15 0 0.1 0.14 0 0.25 0.15
P=
100 1000 210 250 290 300 1000 430 450 500
90 180 1000 240 1000 305 380 435 1000 490
1000 170 210 245 1000 285 400 1000 450 480
enddata
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)