44.实现爱尔兰B公式计算并输出表格(matlab程序)

1.简述

      

1.话务量定义

话务量指在一特定时间内呼叫次数与每次呼叫平均占用时间的乘积。

话务量反映了电话负荷的大小,与呼叫强度和呼叫保持时间有关。呼叫强度是单位时间内发生的呼叫次数,呼叫保持时间也就是占用时间。
 

话务量计算方法

话务量公式为:A=C * t。

  • A是话务量,单位为erl(爱尔兰);

  • C是呼叫次数,单位是次/小时;

  • t是每次呼叫平均占用时长,单位是小时/次。

单位时间内的话务量等于使用相同时间单位的呼叫强度呼叫保持时间之乘积,其单位为爱尔兰( Erlang)。例如:呼叫强度=1800次/小时,呼叫保持时间=(1/60)小时/次,则话务量=1800次/小时 X (1/60)小时/次=30 Erl。

一般话务量又称小时呼,统计的时间范围是1个小时。由此可以看出,爱尔兰Erl是一个无量纲的量,只是为纪念爱尔兰这个人而设立的单位。

在移动电话系统中,话务量可分为流入话务量完成话务量。流入话务量取决于单位时间内发生的平均呼叫次数与每次呼叫平均占用无线波道的时间,在系统流入的话务量中,完成接续的那部分话务量称作完成话务量,未完成接续的那部分话务量称做损失话务量,损失话务量与流入话务量之比称为呼损率。(当多个信道共用时,通常总是用户数大于信道数,当多个用户同时要求服务而信道数不够的时候,只能让一部分用户先通话,另一部分用户等信道空闲的时候再通话。后一部分用户因无空闲信道而不能通话,即为呼叫失败,简称呼损)。

流入话务量=完成话务量+损失话务量;

损失话务量=流入话务量 * 呼叫损失率(呼损率)

2.爱尔兰B公式和爱尔兰C公式的计算

计算爱尔兰即时拒绝系统的时间阻塞率的爱尔兰B公式表示为

s表示系统中继线的数目,a表示到达系统的呼叫量。

44.实现爱尔兰B公式计算并输出表格(matlab程序)_第1张图片


计算爱尔兰等待制系统的呼叫等待概率的爱尔兰C公式表示为

44.实现爱尔兰B公式计算并输出表格(matlab程序)_第2张图片


给出两个公式的Matlab实现代码

爱尔兰B公式:


  1. function p=Erlang_B_Formula(s,a);

  2. sum=0;

  3. for r=0:s%用一个for循环实现求和

  4. sum=sum+a^r/factorial(r);

  5. end

  6. p=a^s/(sum*factorial(s));

爱尔兰C公式:


  1. function p=Erlang_C_Formula(s,a);

  2. sum=a^s/(factorial(s)*(1-a/s));

  3. for k=0:s-1%用for循环实现求和

  4. sum=sum+a^k/factorial(k);

  5. end

  6. p=a^s/(factorial(s)*(1-a/s)*sum);

简单方法:

爱尔兰B公式:

function p=Erlang_B_Formula_1(s,a)

p=a^s/(factorial(s)*sum(a.^[0:s]./factorial([0:s])));

爱尔兰C公式:

function p=Erlang_C_Formula_1(s,a)

p=a^s/(factorial(s)*((1-a/s)*sum(a.^[0:s-1]./factorial([0:s-1]))+a^s/factorial(s)));

另外,已知B(s,a),a或C(s,a),a,可以反推s。

(这个编辑器实在是太难用了= =,代码块竟然没有matlab版的,差评,一颗星都不给~)

2.代码

function ErlangB 
clc;
pn=[];            
s=[];
x=1:100;                                                      %横坐标范围
m=[4 5 8 10 15 20 25 30 40 50 60 75 90 100];                          %交换机出线容量
L=length(m);
for i=1:L

    for a=1:100                                                %流入话务量强度               
        for k=1:m(i)
            s=[s,a.^k/factorial(k)];
            add=sum(s);
        end
        pn0=(a.^m(i)/factorial(m(i)))./add;
        pn=[pn,pn0];               %顾客被拒绝的概率
        s=[];           
    end
       
    loglog(x,pn);                  %对数坐标
    set(gca,'XGrid','on');         %画网格线
    set(gca,'XMinorTick','off');
    set(gca,'XTick',[1 2 4 6 8 10 20 40 60 80 100]);           %x坐标轴刻度设置
    set(gca,'XMinorGrid','off');    
    set(gca,'Ylim',[0.001 1]);      %限定纵坐标的取值范围 
    set(gca,'YGrid','on');   
    set(gca,'YMinorTick','off');
    hold on
    pn=[];

end
xlabel('话务量强度α(erl)','fontsize',8);
ylabel('呼损率Pc','fontsize',8);

for j=1:3            %输入y轴坐标值
    gtext('2');
    gtext('4');
    gtext('6');
    gtext('8');
end


gtext('m=4');         %用鼠标在图形上输入注释
for i=2:L
    gtext(int2str(m(i)));
end

3.运行结果

44.实现爱尔兰B公式计算并输出表格(matlab程序)_第3张图片

44.实现爱尔兰B公式计算并输出表格(matlab程序)_第4张图片 

 

你可能感兴趣的:(matlab,算法,开发语言,数据分析,人工智能)