资源描述
随机数产生与模拟随机数产生与模拟16、人民应该为法律而战斗,就像为了城墙而战斗一样。赫拉克利特17、人类对于不公正的行为加以指责,并非因为他们愿意做出这种行为,而是惟恐自己会成为这种行为的牺牲者。柏拉图18、制定法律法令,就是为了不让强者做什么事都横行霸道。奥维德19、法律是社会的习惯和思想的结晶。托伍威尔逊20、人们嘴上挂着的法律,其真实含义是财富。爱献生随机数的产生与模拟随机数的产生与模拟n均匀分布随机数均匀分布随机数:该定理说明了任意分布的随机数均可由均匀分布 的随机数变换得到。常简称 的随机数为均匀分布随机数。本章目录本章目录6随机数的产生与模拟随机数的产生与模拟1 1 均匀随机数的产生均匀随机数的产生n均匀随机数的产生:均匀随机数的产生:主主要要有有线线性性同同余余法法(LCG),组组合合同同余余法,反馈位移寄存器方法等法,反馈位移寄存器方法等本章目录本章目录7n均匀随机数的产生:均匀随机数的产生:随机数的产生与模拟随机数的产生与模拟1 1 均匀随机数的产生均匀随机数的产生本章目录本章目录线性同余法(LCG)的递推公式为:8n均匀随机数的产生:均匀随机数的产生:随机数的产生与模拟随机数的产生与模拟1 1 均匀随机数的产生均匀随机数的产生本章目录本章目录当 ,上式称为混合同余发生器,当时,称为乘同余发生器,此时当模为素数时,称它为素数模乘同余发生器。9n两个常用的混合式发生器:两个常用的混合式发生器:随机数的产生与模拟随机数的产生与模拟1 1 均匀随机数的产生均匀随机数的产生本章目录本章目录10n常用的素数模乘同余发生器常用的素数模乘同余发生器:随机数的产生与模拟随机数的产生与模拟1 1 均匀随机数的产生均匀随机数的产生本章目录本章目录11n常用的素数模乘同余发生器常用的素数模乘同余发生器:随机数的产生与模拟随机数的产生与模拟1 1 均匀随机数的产生均匀随机数的产生本章目录本章目录12n反馈位移寄存器法(反馈位移寄存器法(FSRFSR):对寄存器中的二进制数码作递推运算,其中是给定的正整数,为给定的常数。取数列中连续的位构成一个位二进制整数,一直下去,一般地有令则即为FSR方法产生的均匀随机数列。随机数的产生与模拟随机数的产生与模拟1 1 均匀随机数的产生均匀随机数的产生本章目录本章目录13n组合发生器组合发生器 :先用一个随机数发生器产生的随机数列为基础,再用另一个发生器对随机数列进行重新排列得到的新数列作为实际使用的随机数。这种把多个独立的发生器以某种方式组合在一起作为实际使用的随机数,希望能够比任何一个单独的随机数发生器得到周期长、统计性质更优的随机数,即组合发生器。随机数的产生与模拟随机数的产生与模拟1 1 均匀随机数的产生均匀随机数的产生本章目录本章目录14n组合发生器组合发生器 :随机数的产生与模拟随机数的产生与模拟1 1 均匀随机数的产生均匀随机数的产生本章目录本章目录Maclaren 和 Marsaglia在1965年提出的著名的组合发生器是组合同余发生器,该算法的具体步骤如下:15n组合发生器组合发生器 :1用第一个LCG产生个随机数,一般取。这个随机数被顺序地存放在矢量中。置;2用第二个LCG产生一个随机整数,要求;3令,然后再用第一个LCG产生一个随机数,令;置;4重复23,得随机数列 ,即为组合同余发生器产生的数列。若第一个LCG的模为 ,令 ,则 为均匀随机数 随机数的产生与模拟随机数的产生与模拟1 1 均匀随机数的产生均匀随机数的产生本章目录本章目录16n由由均均匀匀分分布布随随机机数数产产生生非非均均匀匀分分布布随随机机数数的的主主要要方方法法有有:逆逆变变换换法法,合合成成法法和和筛选法。筛选法。随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 本章目录本章目录17n1 1 逆变换法逆变换法:随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 对对任任意意分分布布函函数数,要要产产生生服服从从该该分分布布的随机数,由定理知其抽样步骤为:的随机数,由定理知其抽样步骤为:(1)由)由抽取抽取;(2)计算计算本章目录本章目录18n1 1 逆变换法逆变换法:随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 本章目录本章目录n例例1 1 已已知知(柯柯西西分分布布),试给出其抽样方法。试给出其抽样方法。19n1 1 逆变换法逆变换法:随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 解解:设设,则则,因因此此其抽样步骤如下:其抽样步骤如下:(1 1)由)由抽取抽取;(2 2)计算)计算本章目录本章目录20n1 1 逆变换法逆变换法:其其SASSAS程序为(产生程序为(产生100100个服从柯西分布的随机数):个服从柯西分布的随机数):data ex1;data ex1;seed=678;seed=678;do I=1 to 100;do I=1 to 100;r=ranuni(seed);r=ranuni(seed);x=tan(3.14159*(r-0.5);x=tan(3.14159*(r-0.5);output;output;end;end;run;run;随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 本章目录本章目录21n2 2 合成法合成法 :随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 其想法是:如果X的密度难于抽样,而X关于Y的条件密度以及Y的密度函数均易于抽样,则X的随机数可如下产生:由Y的密度抽取y由条件密度抽取x则X服从本章目录本章目录22n2 2 合成法合成法 :随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 当为离散形式时,即,其中是密度函数,其抽样过程如下:1产生一个正的随机整数,使得,2产生分布为的随机数。本章目录本章目录23n2 2 合成法合成法 :随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 本章目录本章目录设时梯形分布的密度函数为,试用合成法产生其随机数。例例2 224n2 2 合成法合成法 :随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 解:首先将进行分解,即,其中其抽样框图为本章目录本章目录25n2 2 合成法合成法 :随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 产生产生令产生令输出YN本章目录本章目录26n2 2 合成法合成法 :其其SASSAS抽样程序如下(假若产生抽样程序如下(假若产生100100个随机数个随机数,):):data ex2;data ex2;seed=789;a=0.3;seed=789;a=0.3;do I=1 to 100;do I=1 to 100;r=ranuni(seed);r3=ranuni(seed);r=ranuni(seed);r3=ranuni(seed);if r1=a then do;u=ranuni(seed);x=u;end;if r1=a then do;u=ranuni(seed);x=u;end;else do;u=ranuni(seed);v=ranuni(seed);x=max(u,v);end;else do;u=ranuni(seed);v=ranuni(seed);x=max(u,v);end;output;output;end;end;run;run;随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 本章目录本章目录27n3 3 筛选抽样法筛选抽样法 :随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 假设我们要从 抽样,如果可将 表示成 ,其中 是一个密度函数且易于抽样,而 ,是常数,本章目录本章目录28n3 3 筛选抽样法筛选抽样法 :随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 X的抽样可如下进行:1由抽取,由抽取2如果,则;否则,转1则X的密度函数为本章目录本章目录29n3 3 筛选抽样法筛选抽样法 :随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 本章目录本章目录设 ,试用筛选法抽取其随机数。例330n3 3 筛选抽样法筛选抽样法 :随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 解:因为:,即:则抽样框图如下:本章目录本章目录31n3 3 筛选抽样法筛选抽样法 :随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 独立产生令NY本章目录本章目录32n3 3 筛选抽样法筛选抽样法 :其其SASSAS程序如下:程序如下:data ex3;data ex3;seed=789;seed=789;do I=1 to 100;do I=1 to 100;r1=ranuni(seed);r2=ranuni(seed);r1=ranuni(seed);r2=ranuni(seed);if r1=r2*3 then do;x=r2;output;end;if r1=r2*3 then do;x=r2;output;end;end;end;run;run;随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 本章目录本章目录33蒙蒙特特卡卡罗罗(Monte Monte CarloCarlo)方方法法(即即随随机机模模拟拟方方法法)求解实际问题的基本步骤包括:求解实际问题的基本步骤包括:1 1 建建模模:对对所所求求的的问问题题构构造造一一个个简简单单而而又又便便于于实实现现的的概概率率统统计计模模型型,使使所所求求的的解解恰恰好好是是所所建建模模型型的的参参数数或或有有关的特征量。关的特征量。2 2 改改进进模模型型:根根据据概概率率统统计计模模型型的的特特点点和和计计算算实实践践的的需需要要,尽尽量量改改进进模模型型,以以便便减减少少误误差差和和降降低低成成本本,提提高高计算效率。计算效率。3 3 模拟试验模拟试验4 4 求求解解:对对模模拟拟结结果果进进行行统统计计处处理理,给给出出所所求求问问题题的的近近似解。似解。随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 本章目录本章目录34随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 计算定积分计算定积分(1 1)随机投点法)随机投点法 赋初值:试验次数n=0,成功次数m=0;规定投点试验的总次数N;产生两个相互独立的均匀随机数 置n=n+1;判断nN是否成立,若成立转,否则停止试验,转;判断条件 是否成立,若成立置m=m+1,然后转,否则转;计算m/N,则本章目录本章目录35随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 计算定积分计算定积分(1 1)随机投点法)随机投点法本章目录本章目录36随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 计算定积分计算定积分(2)(2)平均值估计法平均值估计法 平均值估计法的计算步骤:产生0,1区间的均匀随机数 计算 令 =,则 为积分值 的近似解.本章目录本章目录37随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 计算定积分计算定积分(3)(3)重要抽重要抽样法法 重要抽样法的计算步骤为:产生均匀随机数 用直接抽样法产生 随机数,即由 计算则 计算 =,则 是 的估计量.本章目录本章目录38随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 计算定积分计算定积分(4)(4)分分层抽抽样法法 分层抽样法的计算步骤如下:本章目录本章目录39随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 (1)(1)随机投点法随机投点法 多重积分随机投点法计算步骤为:计算多重定积分计算多重定积分本章目录本章目录40随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 (1)(1)随机投点法随机投点法 计算多重定积分计算多重定积分本章目录本章目录41随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 (2)(2)平均平均值估估计法法 计算多重定积分计算多重定积分多重积分的平均值法计算步骤为本章目录本章目录42随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 (2)(2)平均平均值估估计法法 计算多重定积分计算多重定积分本章目录本章目录43随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 计算多重定积分计算多重定积分用蒙特卡罗方法计算积分值时,误差的阶数为用蒙特卡罗方法计算积分值时,误差的阶数为 ,它与多重积分的重数它与多重积分的重数k k无关,而用其他数值方法计算多重无关,而用其他数值方法计算多重积分时,其误差与重数积分时,其误差与重数k k是有关的,可见当是有关的,可见当k3k3时,使时,使用蒙特卡罗方法计算多重积分将显现出很大的优越性用蒙特卡罗方法计算多重积分将显现出很大的优越性 本章目录本章目录44应用实例应用实例随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 例4:用上述四种方法计算(1)随机投点法data E1;Do k=1 to 1000;m=0;Do h=1 to 1000;a=ranuni(32789);b=ranuni(32789);if b=(exp(a)-1)/(exp(1)-1)then m=m+1;end;I1=m/1000*(exp(1)-1)+1;output;E1=abs(I1-(exp(1)-1);end;run;proc means data=e1 Mean Var;var I1;run;本章目录本章目录45应用实例应用实例随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 例4:用上述四种方法计算(2)平均值估计法 data E2;Do k=1 to 1000;s=0;Do i=1 to 1000;x=ranuni(32789);fx=exp(x);s=s+fx;end;I2=s/1000;output;E2=abs(I2-(exp(1)-1);end;run;proc means data=e2 Mean Var;var I2;run;本章目录本章目录46应用实例应用实例随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 例4:用上述四种方法计算(3)重要抽样法 data E3;do k=1 to 1000;s=0;Do i=1 to 1000;r=ranuni(32789);x=(3*r+1)*(1/2)-1;s=s+exp(x)/(1+x);end;I3=3/(2*1000)*s;output;E3=abs(I3-(exp(1)-1);End;run;proc means data=e3 Mean Var;var I3;run;本章目录本章目录47应用实例应用实例随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 例4:用上述四种方法计算(4)分层抽样法 data E4;Do k=1 to 1000;s1=0;s2=0;Do i=1 to 400;ri=ranuni(32789);r1=0.5*ri;f1=exp(r1);s1=s1+f1;end;Do j=1 to 600;rj=ranuni(32789);r2=0.5+0.5*rj;f2=exp(r2);s2=s2+f2;end;I4=s1*(1/800)+s2*(1/1200);output;E4=abs(I4-(exp(1)-1);end;run;proc means data=e4 Mean Var;var I4;run;本章目录本章目录48应用实例应用实例随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 例4:用上述四种方法计算结果 模拟方法均值方差随机投点法(I1)1.71768340.000728670平均值估计法(I2)1.71801360.00027492重要抽样法(I3)1.71818630.000024254分层抽样法(I4)1.71812820.000062622 =e-1=1.71828,这些方法的I值与真实值很接近,而方差也都比较小,同时看出,这次模拟其方差有以下关系:Var(I4)Var(I3)Var(I2)Var(I1)。本章目录本章目录49应用实例应用实例随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 (1)随机投点法 例5:计算二重积分 Data e5;Do k=1 to 1000;m=0;h=0;Do h=1 to 1000;a1=ranuni(32789);a2=ranuni(32789);b=ranuni(32789);if b=(exp(a1+a2)-1)/(exp(2)-1)then m=m+1;end;I5=(exp(2)-1)*(m/1000)+1;output;E5=abs(I5-(exp(1)-1)*2);end;run;proc means data=e5 Mean Var;var I5;run;本章目录本章目录50应用实例应用实例随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 (2)平均值估计法 例5:计算二重积分 data E6;Do k=1 to 1000;m=0;s=0;Do h=1 to 1000;a1=ranuni(32789);a2=ranuni(32789);if 0=a1=1 and 0=a2=1 then do;fx=exp(a1)*exp(a2);s=s+fx;end;end;I6=s/1000;output;E6=abs(I6-(exp(1)-1)*2);end;run;proc means data=e6 Mean Var;var I6;run;本章目录本章目录51应用实例应用实例随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 例5:计算二重积分 模拟方法均值方差随机投点法(I5)2.94815100.0865186平均值估计法(I6)2.95222550.0015766对于多元积分也有Var(I6)Var(I5)本章目录本章目录52 随机服务系统研究的对象是服务系统,如到理发店理发,理发师与顾客构成了一个服务系统;到商店买东西,售货员与顾客就构成了一个服务系统。随机数的产生与模拟随机数的产生与模拟4 4 随机模拟方法在随机服务系统中的应用随机模拟方法在随机服务系统中的应用 本章目录本章目录53 随机服务系统一般具有三要素,顾客、排队规则和窗口 随机数的产生与模拟随机数的产生与模拟4 4 随机模拟方法在随机服务系统中的应用随机模拟方法在随机服务系统中的应用 本章目录本章目录54 1 顾客 顾客到达排队系统的过程也称为输入过程。顾客的来源和到达排队系统的情况是多种多样的。顾客来源可能是有限的,也可能是无限的。顾客到达方式可能是连续的,也可能离散;可能是一个一个的,也可能是成批的或大量的;顾客相继到达的间隔时间可以是确定型的,也可以是随机型的;顾客的到达可以相互独立,也可以是相互关联的。如果描述顾客相继到达的间隔时间分布和所含参数(如期望值、方差等)都与时间无关,则称为平稳(Stationary)输入过程,否则称之为非平稳输入过程。随机数的产生与模拟随机数的产生与模拟4 4 随机模拟方法在随机服务系统中的应用随机模拟方法在随机服务系统中的应用 本章目录本章目录552 2 排队规则排队规则 常用的规则有:损损失失制制(Lossing System):顾客到达时,若所有服务台均被占,该顾客就自动消失。如通常使用的损失制电话系统。等等待待制制(Wating System):顾客到达时,若所有服务台均被占,他们就排成队伍,等待服务。服务次序可采用以下各种规则:先到先服务先到先服务:即按到达的次序接受服务。后后到到先先服服务务:即后到的顾客、先接受服务。如在有的流水装配线上,后到的零件先装配;在通讯系统中,最后到达的信息一般最有价值。随随机机的的服服务务:当服务机构得空时,在等待顾客中、随机地选取一名进行服务,也即每一等待的顾客被选到的概率相同。优先权服务优先权服务:如医院对重患或急诊患者予以优先治疗、重要电话先接通等。多多个个服服务务台台:当顾客到达时可以按如下规则在每个服务台前排成一个队:第1,n+1,2n+1,个顾客排入第一队;第2,n+2,2n+2,个顾客排入第二队等等。或者排成一个公共的队,当一个服务台得空时,队首顾客进入服务。队队列列数数目目 排队队列有单列和多列之分。顾客排队后由于等待时间过长而中途离队,但也有不允许中途离队的情况,这种情况必须坚持到服务完为止。在多队列排队情况下,各队列之间的顾客有的可以相互转移,有的不允许转移。随机数的产生与模拟随机数的产生与模拟4 4 随机模拟方法在随机服务系统中的应用随机模拟方法在随机服务系统中的应用 本章目录本章目录563窗窗口口:服务台的个数可以是一个或几个,可以是单个服务,也可以是成批服务。随机数的产生与模拟随机数的产生与模拟4 4 随机模拟方法在随机服务系统中的应用随机模拟方法在随机服务系统中的应用 本章目录本章目录57随机数的产生与模拟随机数的产生与模拟4 4 随机模拟方法在随机服务系统中的应用随机模拟方法在随机服务系统中的应用 例6 得意系统可靠性估计。设系统由顺次连接的两个元件组成。两个元件中,任何一个元件发生故障系统就停止工作。第一个元件有两个组成部分A,B(它们并联)。第二个元件有一个部件C组成。试用Monte Carlo法求:1 估计系统工作的概率 ,已知组成部件的工作概率分别为:2 绝对误差 ,其中 为系统的可靠性。可用分析的方法获得。进行50次试验。本章目录本章目录58随机数的产生与模拟随机数的产生与模拟4 4 随机模拟方法在随机服务系统中的应用随机模拟方法在随机服务系统中的应用 解:易知 。其SAS程序如下:data ex6;seed=12345;do I=1 to 50;a=ranuni(seed);b=ranuni(seed);c=ranuni(seed);if(a0.8 or b0.85)and c4);R=ranuni(-1);P=0.2*(-log(R);T=T+p;Ss1=s1;ss2=s2;ss3=s3;If(T=ss1)and(T=ss2)and(Tss1)then do;s1=T+0.5;end;If(T=ss1)and(Tss3)then do;s3=T+0.5;end;Output;End;Run;Proc means data=ex7;Var d;Output out=result sum=dsum;Run;Proc print data=result;Run;本章目录本章目录62随机数的产生与模拟随机数的产生与模拟4 4 随机模拟方法在随机服务系统中的应用随机模拟方法在随机服务系统中的应用 此过程共进行6次模拟,可得其平均值为 =16,即在4分钟内平均服务了16个顾客。本章目录本章目录63 随机模拟方法不仅在求解确定性和随机性复杂系统的问题,它在理论研究方面也大为可有。比如有些问题从理论上已经得出了圆满的结论,但因没有经过实践验证比较,暂时没有被应用。这时若使用随机模拟方法先反复加以比较验证,再用于实践中就更可靠了。还有些问题,从理论上证明很困难,而科学家从其他方面的知识及经验,对所研究问题有某些猜想,这时随机模拟方法就是一个有效可行的方法。下面仅举例说明用随机模拟的方法在比较系统聚类方法上的应用随机数的产生与模拟随机数的产生与模拟5 5 随机模拟方法在理论研究中的应用随机模拟方法在理论研究中的应用 本章目录本章目录64例8随机数的产生与模拟随机数的产生与模拟5 5 随机模拟方法在理论研究中的应用随机模拟方法在理论研究中的应用 假设数据来自 和 的总体,用SAS来计算,比较系统聚类法的八种常用方法在分类时之间的分类效果的好坏。本章目录本章目录65例8 解:基本思想为:随机数的产生与模拟随机数的产生与模拟5 5 随机模拟方法在理论研究中的应用随机模拟方法在理论研究中的应用 本章目录本章目录66例8 解:基本思想为:随机数的产生与模拟随机数的产生与模拟5 5 随机模拟方法在理论研究中的应用随机模拟方法在理论研究中的应用 2.用八种常用的系统聚类方法对容量为2n个样品的数据进行聚类,计算各种聚类方法的错分率(即判错个数所占的比例)(j=1,2,8);本章目录本章目录67例8 解:基本思想为:随机数的产生与模拟随机数的产生与模拟5 5 随机模拟方法在理论研究中的应用随机模拟方法在理论研究中的应用 3.重复以上两步N次,得(j=1,8;i=1,N),计算平均错分率:(j=1,2,8)。本章目录本章目录68随机数的产生与模拟随机数的产生与模拟5 5 随机模拟方法在理论研究中的应用随机模拟方法在理论研究中的应用 其SAS程序为(以average为例):%macro%macro createdata(mdata=,leixing=,mv1=,mv2=,mvar1=,mvar2=,mvar3=);data&mdata;drop i u1 u2;fenlei=&leixing.;do i=1 1 to 5050;u1=rannor(0 0);u2=rannor(0 0);x1=&mv1.+sqrt(&mvar1.)*u1;x2=&mv2.+(&mvar2.*u1+sqrt(&mvar1.*&mvar3.-&mvar2.*&mvar2.)*u2)/sqrt(&mvar1.);output;end;/*产生来自两元正态总体的随机数据*/run;%mend%mend createdata;本章目录本章目录69随机数的产生与模拟随机数的产生与模拟5 5 随机模拟方法在理论研究中的应用随机模拟方法在理论研究中的应用 其SAS程序为(以average为例):%macro%macro datacluster(mdata=,method=);data&mdata.;set a b;run;proc cluster data=&mdata.method=&method.outtree=c noprint;var x1 x2;copy fenlei x1 x2;run;/*对两个来自不同两元正态总体的随机数据进行聚类*/proc tree data=c out=abc ncl=2 2 noprint;copy fenlei x1 x2;run;data result1;set abc;result=0 0;if fenlei=cluster then result=1 1;run;proc sort data=result1;by fenlei;run;proc means data=result1 noprint;var result;by fenlei;output out=result sum=errorsum;run;/*计算出错分的个数*/proc append base=r_result data=result;run;%mend%mend datacluster;本章目录本章目录70随机数的产生与模拟随机数的产生与模拟5 5 随机模拟方法在理论研究中的应用随机模拟方法在理论研究中的应用 其SAS程序为(以average为例):%macro%macro analyzeanalyze;%do i=1 1%to 5050;%createdatacreatedata(mdata=a,leixing=1 1,mv1=0 0,mv2=0 0,mvar1=1 1,mvar2=0 0,mvar3=1 1);%createdatacreatedata(mdata=b,leixing=2 2,mv1=3 3,mv2=3 3,mvar1=1 1,mvar2=0 0,mvar3=1 1);%dataclusterdatacluster(mdata=ab,method=average);%end;%mend%mend analyze;%analyzeanalyze;datadata rr;set r_result;if errorsum2525 then errorsum=5050-errorsum;errorratio=errorsum/5050;runrun;/*计算错分率*/procproc sortsort data=rr;by fenlei;runrun;procproc meansmeans data=rr noprint;output out=r mean=err_ratio;var errorratio;by fenlei;runrun;/*计算平均错分率*/procproc printprint data=r;var fenlei err_ratio;title 总错判率:;runrun;本章目录本章目录71随机数的产生与模拟随机数的产生与模拟5 5 随机模拟方法在理论研究中的应用随机模拟方法在理论研究中的应用 注意注意注意注意:在运行该SAS程序进行计算时,只需将“method=average”中的“average”用其它七种聚类方法进行替换即可得到相应聚类方法的分类结果。本章目录本章目录72八种不同聚类方法下的平均错判率,结果见下表。随机数的产生与模拟随机数的产生与模拟5 5 随机模拟方法在理论研究中的应用随机模拟方法在理论研究中的应用 聚类方法类总错判率最短距离法10.010420.0112最长距离法10.028820.0472中间距离法10.070420.0312重心法10.036020.0256类平均法10.029620.0276可变类平均法10.041220.0288Ward离差平方和法10.021220.0328最大似然估计法10.023620.0240结果表明,若数据分类比较清楚,则八种聚类方法的效果都是好的。本章目录本章目录73续例8随机数的产生与模拟随机数的产生与模拟5 5 随机模拟方法在理论研究中的应用随机模拟方法在理论研究中的应用 若假设数据来自总体和相应的计算结果如下:本章目录本章目录74随机数的产生与模拟随机数的产生与模拟5 5 随机模拟方法在理论研究中的应用随机模拟方法在理论研究中的应用 相应的计算结果如右:聚类方法类总错判率最短距离法10.010420.0112最长距离法10.231620.2788中间距离法10.210820.2520重心法10.120820.0988类平均法10.151620.1540可变类平均法10.233220.2664Ward离差平方和法10.251220.2696最大似然估计法10.235220.2028这组数据有些混杂,从以上结果来看,除了最短距离法的分类效果好外,其余七种聚类方法的分类结果都不理想,错分率在20%左右本章目录本章目录75续例8 随机数的产生与模拟随机数的产生与模拟5 5 随机模拟方法在理论研究中的应用随机模拟方法在理论研究中的应用 再假设数据来自总体和本章目录本章目录76随机数的产生与模拟随机数的产生与模拟5 5 随机模拟方法在理论研究中的应用随机模拟方法在理论研究中的应用 聚类方法类总错判率最短距离法10.035220.0068最长距离法10.240820.0000中间距离法10.266420.0004重心法10.118020.0012类平均法10.156820.0020可变类平均法10.134420.0032Ward离差平方和法10.114420.0016最大似然估计法10.160420.0044相应的计算结果如右:这组数据介于上面两组数据之间,从结果来看,八种聚类方法都对来自第一个总体的数据的判断不好,而对第二个总体的数据判断得比较好。本章目录本章目录77当然,还可进一步提出不同的刻划分类效果的统计量,再通过模拟的方法确定出哪一个统计量能更好地刻划分类效果,以后就可用此统计量作为评价标准。随机数的产生与模拟随机数的产生与模拟5 5 随机模拟方法在理论研究中的应用随机模拟方法在理论研究中的应用 本章目录本章目录返回返回7856、书不仅是生活,而且是现在、过去和未来文化生活的源泉。库法耶夫57、生命不可能有两次,但许多人连一次也不善于度过。吕凯特58、问渠哪得清如许,为有源头活水来。朱熹59、我的努力求学没有得到别的好处,只不过是愈来愈发觉自己的无知。笛卡儿60、生活的道路一旦选定,就要勇敢地走到底,决不回头。左拉
展开阅读全文