一种应用于电信系统的故障排除的系统及其方法

文档序号:7590540阅读:348来源:国知局

专利名称::一种应用于电信系统的故障排除的系统及其方法
技术领域
:本发明涉及一种电信系统的操作维护系统及其方法,尤其涉及电信系统中通过现场信息进行故障排除的系统和方法。
背景技术
:在电信系统的操作维护中,一般会通过运行于通用计算机上的维护程序提供现场信息协助排除故障。然而传统的故障排除方法需要依赖于用户的经验和知识,而用户经验和知识的积累和传授都是很困难的,因而提供一个进一步的系统协助甚至取代有经验用户将是十分有益的。现有技术仅提供现场信息不提供故障排除的判断和操作,并且不进行自动学习,因此智能程度低下,维护效率低,需要大量的人工维护和故障排除操作,费时费力。
发明内容本发明的目的在于提供一种应用于电信系统的故障排除的系统及其方法,其利用通用计算机组成,建立可匹配知识库,并能在实践中自动学习经验,不断适应当前系统环境,提供越来越完善的解决方案,该系统能够很好地协助用户解决实际故障排除问题甚至可以在一定程度上取代有经验的用户。本发明的技术方案如下一种应用于电信系统的故障排除的方法,其包括以下步骤a)输入信息;b)将输入的输入信息与第一知识库进行匹配,通过预定算法得出要进行测试的项目;c)根据输入信息与测试项目匹配对对该第一知识库进行更新作用,使之能更准确地反映输入信息与测试项目间的对应关系;d)针对该测试项目形成测试结果;e)将测试结果与第二知识库进行匹配,通过预定算法得出解决方案;f)根据测试结果与解决方案匹配对第二知识库进行更新作用,使之能更准确地反映测试结果与解决方案间的对应关系。所述的方法,其中,所述第一知识库以及所述第二知识库的输入信息,测试项目,解决方案都一一对应有编码,且无重复。所述的方法,其中,所述步骤a)中的输入信息通过设置一接口接收来自于外部操作维护软件的信息。所述的方法,其中,所述步骤a)中的输入信息由用户手工修改后输入。所述的方法,其中,所述步骤d)中的测试项目通过所述操作维护软件形成测试结果。所述的方法,其中,所述步骤d)中的测试结果用户可进行修改。所述的方法,其中,所述输入信息,测试项目以及解决方案及其对应的编码可由用户定制。所述的方法,其中,所述预定算法包括以下步骤b0)设置输入信息与测试项目匹配表IDM,用于对应存储输入信息编码IICS,测试项目编码DICS,优先级IDP以及未用到次数IDNU;输入信息表IIT,用于对应存储输入信息编码IIC和输入信息II;以及测试项目表DIT,用于对应存储测试项目编码DIC和测试项目DI;b1)输入IIC0个输入信息II,参照输入信息表IIT,其中IIC0个输入信息编码IIC设为IIC[1],IIC[2]……IIC[IIC0],然后跟所述第一知识库IDM中某项进行匹配,设置匹配率M;b2)设置优先权阀值IIDPL,用测试项目数组DIArray用来存放测试项目DI,设置IICSArray数组用来存放要与所述输入信息与测试项目匹配表IDM的综合优先级匹配的列的输入信息编码IICS表项,并设置循环变量j表示匹配到的该IDM表的列数并赋初值为1,匹配率M赋初值为0;b3)所述输入信息与测试项目匹配表IDM形成IDMC0列,分别为IDM[1],……IDM[IDMC0],用IDM[j].IICS来表示第j列的输入信息编码组IICS项,而IICS项由c1个输入信息编码IIC组成,用IDM[j].IICS[k]来表示其中组成该IICS的第k项输入信息编码IIC,将IIC0个输入信息编码IIC与输入信息与测试项目匹配表IDM中的每一列IDM[j]比较,IDM[j].IICS中含有输入信息的编码IIC的个数就是匹配率M;b4)设置一函数f1(M,IDM[j].IDP,IDM[j].IDNU),根据所述匹配率M、优先级IDP、未用到次数IDNU计算一个综合优先级,如果该优先级大于所述优先权阀值IIDPL,则根据测试项目表DIT应该将该列的DICS表项所对应测试项目DI加入测试项目数组DIArray中,即将EDM[j].DICS中所含的DIC通过匹配,获得对应的测试项目存入测试项目数组DIArray,而将IDM[j].IICS存入IICSArray中,该函数f1定义为f1(M,IDM[j].IDP,IDM[j].IDNU)=M*IDM[j].IDP*(IDM[j].IDP/(IDM[j].IDP+IDM[j].IDNU));b5)设置表示允许的优先级的最大值IDPMax,并判断IDM[j].IDP是否达到了该优先权最大值IDPMax,如果没有超过这个最大值,则优先级IDM[j].IDP加1,最近未用次数IDM[j].IDNU置0;否则优先级IDM[j].IDP不变,IDM[j].IDNU置0;b6)在所述输入信息与测试项目匹配表IDM表中,每次循环最大未用次数IDM][j].IDNU加1,如果一列长期不用,即IDM[j].IDNU超过最大未用次数阀值IDNUL,则其优先级IDP下降;如果优先级IDP为0,则优先级IDP不变;如果优先级IDP下降到小于优先级最小值IDPMin,则在所述第二算法中删除该列;b7)对循环变量j增1并判断j是否大于IDMC0,从而判断是否输入信息与IDM表中所有表项都匹配过,如果是则算法结束,否则回到所述步骤b3)继续匹配IDM表中的下一个表项。所述的方法,其中,所述输入信息与测试项目匹配对对该第一知识库进行更新作用过程包括以下具体步骤首先根据测试项目数组DIArray通过测试项目表DIT进行匹配得到存放测试项目编码DIC的测试项目编码数组DICArray,设DIArray中存放测试项目DI的数目为P,则DICArray中的测试项目编码DIC也是P个;设IICSArray数组中存放输入信息编码组IICS的个数为Q;再由DICArray中的DIC每c2个拼接在一起为一个测试项目编码数组DICS,由所述测试项目编码数组DICArray拼接出测试项目编码组数组DICSArray,如果有不足的则用全0的空串补足,并将该测试项目编码组DICS存入DICSArray中,设DICSArray中有R个测试项目编码组DICS;然后联合IICSArray一起拼出IDType类型数据来存放在一输入信息与测试项目配对数组IDArray中,IDType为一结构类型数组,其成员包括输入信息编码组IICS、测试项目编码组DICS、优先级IDP、最大未用次数IDNU,如果IDArray中的IICS、DICS组合在IDM表中不存在的话,则将其存入数据库;然后删除掉IDM表中IPD小于IDPMin的列,存入IDM表。所述的方法,其中,所述输入信息与测试项目匹配对对该第一知识库进行更新作用过程还包括在所述输入信息与测试项目配对数组IDArray中随机抽取X个,然后与IDOldArray“杂交”成为新的IDType类型结构,存入知识库中,其算法的具体步骤为c1)定义IDType类型数组IDCroArray存放杂交后的数据;c2)设S1[i]为IDArray[i].IICS与IDArray[i].DICS连接起来形成的码串,而S2[i]为IDOldArray[i].IICS与IDOldArray[i].DICS连接起来形成的码串;S1[i]跟S2[i]的长度应该为L5=L2+L4;设S1[i][j]为码串S1[i]的第j位,S2[i][j]为码串S2[i]的第j位,此处L5>=j>=1,i、j为通用变量;c3)设k1=Integer(L5/3);设S3[i]为通过S1[i]和S2[i]杂交来的码串;初始化循环变量m为0;设定程序运行次数为次数变量RT;c4)S3[i]的前k1位跟S1[i]的前k1位相同,S3[i]的后k1位跟S2[i]的后k1位相同,而S3[i]的中间剩余的各位随机生成;c5)将算出来的S3[i]拆散为相应的c1个输入信息编码IIC和c2个测试项目编码DIC,如果拆散后的IIC和DIC在输入信息表IIT表和测试项目表DIT表中均有定义的话则转后续步骤c7;否则,如果m>RT,转后续步骤c8;如果m<=RT,则转后续步骤c6;c6)对循环变量m=m+1,即变量自增;然后转前述步骤c4;c7)将生成的S3[i]拆为输入信息编码组IICS与测试项目编码组DICS存入IDCroArray[i]中的对应项;IDCroArray[i].IDP=IDArray[i].IDP;IDCroArray[i].IDNU=0;如果IDCroArray[i].IICS、IDCroArray[i].DICS组合在所述输入信息与测试项目匹配表IDM表中不存在,则将IDCroArray[i]中数据存入所述输入信息与测试项目匹配表IDM表中;IDM总列数不能超过阀值IDMCL,否则取其中前IDMCL个IDP较大的数据c8)对通用变量i=i+1;如果i<=X则转前述步骤c2;否则算法结束。所述的方法,其中,所述输入信息与测试项目匹配对对该第一知识库进行更新作用过程还包括在所述输入信息与测试项目配对数组IDArray中随机抽取Y个,然后进行变异,存入知识库中,其具体步骤包括c11)设S1[i]为IDArray[i].IICS与IDArray[i].DICS连接起来形成的码串;设k2=Integer(L5/8)+1;将S1[i]中后k2个二进制码取反;c12)将新形成的S1[i]拆成相应的c1个输入信息编码IIC和c2个测试项目编码DIC,如果拆散后的IIC和DIC在IIT表和DIT表中均有定义的话则转后续步骤c13);否则转后续步骤c14);c13)将生成的S1[i]拆为输入信息编码组IICS与测试项目编码组DICS存入IDArray[i]中的对应项;如果IDArray[i].IICS、IDArray[i].DICS组合在所述输入信息与测试项目匹配表IDM表中不存在,则将IDArray[i]中数据存入IDM表中,IDM总列数不能超过阀值IDMCL,否则取其中前IDMCL个IDP较大的数据;c14)对通用变量i=i+1;如果i<=Y则转所述步骤c11);否则算法结束。一种根据权利要求1所述的应用于电信系统的故障排除的系统,其基于一通用计算机,包括一用于输入输入信号的输入接口;一用于输出解决方案的输出接口;以及一第一知识库,以及一第二知识库,用于存储输入信号与解决方案的对应数据,并由所述输入信号与所述第一知识库进行匹配获得测试项目,由该测试项目经过测试获得测试结果后与所述第二知识库进行匹配获得解决方案,将该解决方案从所述输出接口中输出。所述的系统,其中,所述系统中还设置有一监控模块,对操作维护过程进行记录和监控,并对所述第一知识库及第二知识库进行更新处理。本发明所提供的一种应用于电信系统的故障排除的系统及其方法,是在电信系统中根据现场信息进行故障排除的系统和方法,其利用通用计算机,设置可自动学习的可匹配知识库,本发明的系统和方法的好处是,用户的经验可以经由本发明系统和方法进行积累,而且通过实践的学习和纠正,本发明的系统方法所采用的知识库将越来越适应电信系统的故障解决,协助用户解决故障问题,甚至能够在一定程度上取代有经验的用户,故障解决和经验积累更具有智能化,而且使用方法简单,节约了时间和人工。图1是本发明的方法流程示意图;图2A至图2C所示的是本发明的一种应用于电信系统的故障排除的系统及其方法的第一知识库中所含有的主要表的示意图;图3是本发明的一种应用于电信系统的故障排除的系统及其方法中用来描述“根据输入信息判断测试内容”算法的流程图;图4本发明的一种应用于电信系统的故障排除的系统及其方法中,用来描述“利用输入信息与最终测试项目的匹配对更新知识库”算法的流程图;图5A至图5C是本发明的一种应用于电信系统的故障排除的系统及其方法中,“第二知识库”中所含有的主要表的示意图;图6为本发明的一种应用于电信系统的故障排除的系统及其方法的系统知识库的结构示意图。具体实施例下面结合附图将对本发明系统和方法的实施给出一个具体的解决方案,应当理解的是,下述详细描述不应理解为对本发明的专利保护范围的限制。本具体实施例可以基于申请人中兴通讯公司的ZXC10-BSS系统,而本发明的所述故障排除系统以下都简称为FOS(FaultObviateSystem)本发明所论述的系统运作原理如下1、本发明系统采集来自操作维护软件,如中兴通讯公司的ZXC10-BSS系统的告警管理模块的数据库所提供的信息作为输入信息,有经验的用户可以对输入的信息进行修改;输入信息来自于外部电信操作维护系统(OMS)中提供的输入信息模块,其中包括告警模块,但输入信息并不仅限于告警信息;2、本发明系统将上述输入的输入信息与第一知识库进行匹配,通过一预定算法得出要进行测试的项目,有经验用户也可以修改测试项目,以下步骤3跟步骤4可以并行进行;3、根据输入信息与测试项目匹配对对第一知识库进行更新作用,使之能更准确地反映输入信息与测试项目间的对应关系;4、测试项目通过操作维护软件的测试形成测试结果,有经验用户也可以修改测试结果;5、将测试结果与“第二知识库”进行匹配,通过一预定算法得出解决方案;6、在最终解决故障后会形成一个新的解决方案,这个方案可能跟系统提供的方案有一定的出入;7、根据测试结果与解决方案匹配对,这个解决方案匹配对来自于解决故障后形成的解决方案,对“第二知识库”进行更新作用,使之能更准确地反映测试结果与解决方案间的对应关系。因此,本发明的所述系统至少包括在一通用计算机上设置的FOS系统,该FOS系统包括一与外部输入信息模块、其中至少包括一告警信号模块相通讯连接的接口,内部则在至少一存储单元内设置有第一知识库以及一第二知识库,所述第一知识库中存储有输入信息与测试项目匹配对,所述第二知识库中存储有测试结果与解决方案匹配对,所述FOS系统通过依预定算法对外部输入信号在所述第一知识库中进行匹配,获得测试项目后,再用该测试项目在所述第二知识库中进行按预定算法进行匹配获得对应解决方案。本发明所述的对知识库的更新作用,其包括三个部分对于知识库中原有的匹配对的权重进行改变,一些本次使用的匹配对的权重增加,没用到的权重减少;删除知识库中权重减少到一定程度的匹配对;增加由于用户的更改而引入的新的匹配对。如图1和图6所示的,1.1部分的输入信息II(InputInformation)的采集部分,所述FOS系统需要跟操作维护软件有一个接口,这里可以简单地从操作维护软件的告警部分(例如中兴通讯公司ZXC10-BSS系统的告警管理模块)的数据库中获得告警信息,同时所述FOS系统允许有经验的用户对所采集的信息进行修改,这样可以将有经验的用户的经验引入系统,从而使系统更智能化;本发明所述方法还包括用户可以增加新的输入信息,将采集部分没有采集到的信息增加到输入信息II中。另外本发明的所述FOS允许用户定制II及其相应输入信息编码IIC(InputInformationCode),从而可以由有经验的用户对系统的输入信息II与相应的输入信息编码IIC进行修改或纠正。其中1.所述IIC编码为二进制码串,每个IIC编码其长度固定为L1;而II则是输入信息的名称,为字符串类型;2.所述外部告警部分提供的信息、用户新增的信息都不能存在重复;3.无论是告警部分提供的信息、用户新增的信息还是用户定制的信息,它们对应的编码IIC都应该在输入信息范围IS(InputinformationSpace)内,假如ISMax为IS中最大的数,ISMin为IS中最小的数,而IICi为任意一个输入信息编码IIC,则有ISMax>=IICi>=ISMin;4.用户定制的输入信息II,其对应的输入信息编码IIC不能跟所述FOS中已有的输入信息II、输入信息编码IIC重复,当然所述FOS允许用户修改其中已经有的输入信息II及输入信息编码IIC,同样修改后的结果必须保证不能跟所述FOS中已有的输入信息II、输入信息编码IIC重复;5.所述告警部分提供的信息及用户新增的信息的总和IICO(InputInformationCOunt)必须小于或等于所述FOS允许的输入信息总和的门限值IICL(InputInformationCountLimit),否则用户必须删除部分输入信息II,即直到满足IICO<=IICL如图6所示的,2.1部分指示的是一个描述“输入信息与测试项目匹配”情况的知识库,即第一知识库,在这里,本发明将描述其中的几张主要的表,如图2A~图2C所示的1.图2A所示的输入信息与测试项目匹配表IDM(InputinformationDiagnoseitemMatchingtable),它含有如下表项i.输入信息编码组IICS(InputInformationCodeS),这个表项由c1个输入信息编码IIC组成,其长度为L2,显然有L2=c1*L1。组成所述输入信息编码组IICS的c1个所述输入信息编码IIC不能重复,如果该IICS项没有足够的输入信息编码IIC,则可以用全0的二进制码串在后面填充;ii.测试项目编码DICS(DiagnoseItemCodeS)。跟IIC类似,DIC也是一个二进制码串,其长度为L3,也有一个取值范围DS(DiagnoseitemSpace),任何DIC均需在DS内。而DICS由c2个DIC组成,其长度为L4,显然有L4=c2*L3。组成DICS的c2个DIC不能重复,如果该DICS项没有足够的DIC,则可以用全0的二进制码串在后面填充;iii.优先级IDP(IDmtableitemPriority),这个值在图1的1.3中提及的算法里会用到,这个值是一个整数,并且所述FOS为其定义有两个门限IDPMin和IDPMax,任何一个IDP取值IDPi均满足IDPMax>=IDPi>=IDPMin;iv.未用到次数IDNU(IDmtableitemNotUsingtimes),这个值在图1的1.2中提及的算法里会用到,这也是一个整数,记载自从上次优先级改变以来有多少次没有使用该列来产生测试项目了;2.图2B的输入信息表IIT(InputInformationTable),这是一个输入信息II和输入信息编码IIC的对照表,它的两个表项在前面都描述过了。所述FOS为这个表定义了一个输入信息表门限IITL(InputInformationTableLimit),该表列数不能超过IITL。并且输入信息II、输入信息编码IIC不能存在重复。3.图2C的测试项目表DIT(DiagnoseItemTable),这是一个测试项目编码DIC与测试项目DI的对照表,测试项目编码DIC已经在前面描述过了,而DI则是测试项目的名称,为字符串类型。所述FOS也为该表定义了一个测试项目表门限DITL(DiagnoseItemTableLimit),该表列数不能超过DITL。所述测试项目DI、测试项目编码DIC不能存在重复。所述FOS提供接口允许有经验的用户定制测试项目DI及其对应的测试项目编码DIC,但是定制的测试项目DI和测试项目编码DIC必须满足类似图1的1.1部分对于定制输入信息II、输入信息编码IIC的要求。如图1所示,1.2部分指示的是一种根据输入信息判断测试项目的预定算法,即所述步骤2中提及的匹配算法,具体流程如图3所述输入信息的二进制串,即IIC0个输入信息II参照输入信息表,其中IIC0个输入信息编码IIC设为IIC[1],IIC[2]……IIC[IIC0],然后跟“第一知识库”中某项会有一个匹配率M,具体匹配过程是用输入信息的二进制串跟所述输入信息与测试项目匹配表IDM表中每一列的IICS表项匹配,看输入信息有多少个在构成IICS表项的IIC组合中,这个数值就是匹配率M。如图3所示的,4.1部分定义了综合IDM表项优先权阀值IIDPL(IntegratedIDmtableitemPriorityLimited),该IIDPL用来表示由图3的4.2部分的函数计算出来的综合优先级的阀值。设置字符串的测试项目数组DIArray用来存放测试项目DI,设置IICSArray数组用来存放要加入IDM表的综合优先级合适的列的IICS表项。j这个变量在这儿用来表示匹配到的IDM表的列数,从1开始因此赋初值为1,匹配率M赋初值为0。对应的,所述输入信息与测试项目匹配表IDM形成IDMC0列,分别为IDM[1],……IDM[IDMC0],用IDM[j].IICS来表示第j列的输入信息编码组IICS项,而IICS项由c1个输入信息编码IIC组成,用IDM[j].IICS[k]来表示其中组成该IICS的第k项输入信息编码IIC。将IIC0个输入信息编码IIC与输入信息与测试项目匹配表IDM中的每一列IDM[j]比较,IDM[j].IICS中含有输入信息的编码IIC的个数就是匹配率M。如图3所示的,4.2部分用到一个函数f1(M,IDM[j].IDP,IDM[j].IDNU),这个函数根据所述匹配率M、优先级IDP、未用到次数IDNU来计算一个综合优先级,如果该优先级大于阀值IIDPL,则根据测试项目表DIT应该将该列的DICS表项所对应测试项目DI加入测试项目数组DIArray中,即将EDM[j].DICS中所含的DIC通过匹配,获得对应的测试项目存入测试项目数组DIArray,而将IDM[j].IICS存入IICSArray中。函数f1在这儿定义为f1(M,IDM[j].IDP,IDM[j].IDNU)=M*IDM[j].IDP*(IDM[j].IDP/(IDM[j].IDP+IDM[j].IDNU))。如图3所示的,4.3部分用到的阀值IDPMax已有描述,表示允许的优先级的最大值,此处判断IDM[j].IDP是否达到了最大值IDPMax,如果没有超过这个最大值,则这儿优先级IDM[j].IDP加1,最近未用次数IDM[j].IDNU置0;否则优先级IDM[j].IDP不变,IDM[j].IDNU置0。如图3所示的,4.4部分表示输入信息与测试项目匹配表IDM表中,每次循环最大未用次数IDM[j].IDNU加1,如果一列长期不用,也就是IDM[j].IDNU超过阀值IDNUL,则其优先级IDP会下降;如果IDP为0,则IDP不变。如果IDP下降到小于IDPMin的时候,在下面的图4算法中将会把该列删除掉。如图3所示的,4.5部分表示判断是否输入信息与IDM表中所有表项都匹配过了,即变量j增1判断j是否大于IDMC0,如果是则都匹配过了,算法结束,否则回到4.2部分继续匹配IDM表中的下一个表项。在如图3所示的算法中止后,所述测试项目数组DIArray中存放的即是系统判断应该测试的项目。如图1的1.3部分指的是通过图3所示的匹配算法后获得的测试项目,有经验的用户此时可能会对测试项目进行修改。其实经验数据除了可以直接由用户给出外,还可以增加一个监控模块,然后由这个监控模块将用户对电信系统操作维护软件的操作行为记录下来,再由所述FOS导入。同时图1所示的1.7部分关于最终解决方案的经验数据的来源也可以是通过这样一个监控模块来获得的。如图1所示的1.4部分指的是最终测试项目,有些可能经用户修改过,作用于“第一知识库”,以便进行智能的更新匹配对,本实施例中采用遗传算法,具体流程如图4所示的首先根据测试项目数组DIArray通过测试项目表DIT进行匹配得到存放测试项目编码DIC的测试项目编码数组DICArray,设DIArray中存放测试项目DI的数目为P,则DICArray中的测试项目编码DIC也是P个;设IICSArray数组中存放输入信息编码组IICS的个数为Q;再由所述测试项目编码数组DICArray拼接出测试项目编码组数组DICSArray,这是由DICArray中的DIC每c2个拼接在一起为一个测试项目编码数组DICS,如果有不足的则用全0的空串补足,并将该测试项目编码组DICS存入DICSArray中,设DICSArray中有R个DICS;然后联合IICSArray一起拼出IDType类型数据来存放在一输入信息与测试项目配对数组IDArray中(注意此处不同于测试项目数组DIArray),IDType为一结构类型数组,其成员包括IICS、DICS、IDP、IDNU,如果IDArray中的IICS、DICS组合在IDM表中不存在的话,则将其存入数据库;然后删除掉IDM表中IPD小于IDPMin的列。最后从输入信息与测试项目匹配表IDM表中抽取X(X=f3(S))项来与IDArray中的数据进行杂交,再存入IDM表,另外从IDArray中抽取Y项进行变异,存入IDM表。如图4的5.1部分用到一个函数f2,还有两个变量CurIDPMax、CurIDPMin。这两个变量分别表示所述输入信息与测试项目匹配表IDM表中当前最大的优先级IDP以及当前最小的优先级IDP,而f2通过这两个变量来获得新的表项应该采用的优先级,这儿我们这样定义f2f2(CurIDPMax,CurIDPMin)=Integer((CurIDPMax+4*CurIDPMin)/5);其中的Integer表示取整函数。在Q、R中取最小值,设为S;将IICSArray和DICSArray中前S个依次存入IDArray,即IDArray[i].IICS=IICSArray[i];IDArray[i].DICS=DICSArray[i];IDArray[i].IDP=f2(CurIDPMax,CurIDPMin);IDArray[i].IDNU=0。如图4所示的5.2部分的作用在上面讲图3的4.4部分的时候已经讲到,是将输入信息与测试项目匹配表IDM中优先级低于阀值的列删除。如图4所示的5.3部分是将上述算法中产生的IDArray中IICS、DICS组合在IDM表中不存在的项存入IDM表中,IDM总列数不能超过阀值IDMCL(IDMCountLimit),否则取其中前IDMCL个IDP较大的数据。这儿要说明的是,如图4所示的5.4、5.5、5.6部分涉及到的“杂交”和“变异”算法不是必须的,因为在如图1所示的1.4部分和如图1所示的1.8部分所述FOS就会利用经验数据对系统的知识库进行更新了,即使没有“杂交”跟“变异”算法所述FOS也可以吸收新的知识。如图4所示的,5.4部分涉及到一个函数X=f3,由于X是用来进行杂交的数目,不能够太大,这儿这样定义f3f3(S)=Integer(S/n)+1;(n为一个正整数)在系统知识库中的所述输入信息与测试项目匹配表IDM中随机抽取X(X<S)个表项,并将这些表项存入一个IDType类型的数组IDOldArray中。如图4所示的,5.5部分涉及到“杂交”算法,在IDArray中随机抽取X个,然后与IDOldArray“杂交”成为新的IDType类型结构,存入知识库中,其算法如下1.定义IDType类型数组IDCroArray存放杂交后的数据;2.设S1[i]为IDArray[i].IICS与IDArray[i].DICS连接起来形成的码串,而S2[i]为IDOldArray[i].IICS与IDOldArray[i].DICS连接起来形成的码串;S1[i]跟S2[i]的长度应该为L5=L2+L4;设S1[i][j]为码串S1[i]的第j位,S2[i][j]为码串S2[i]的第j位(L5>=j>=1);3.设k1=Integer(L5/3);设S3[i]为通过S1[i]和S2[i]杂交来的码串;a初始化m为0;设定程序运行次数RT;4.S3[i]的前k1位跟S1[i]的前k1位相同,S3[i]的后k1位跟S2[i]的后k1位相同,而S3[i]的中间剩余的各位随机生成;5.将算出来的S3[i]拆散为相应的c1个输入信息编码IIC和c2个测试项目编码DIC,如果拆散后的IIC和DIC在输入信息表IIT表和测试项目表DIT表中均有定义的话则转后续步骤7;否则,如果m>RT,转后续步骤8,如果m<=RT,则转后续步骤6;6.对m=m+1,即变量自增;然后转前述步骤4;7.将生成的S3[i]拆为输入信息编码组IICS与测试项目编码组DICS存入IDCroArray[i]中的对应项;IDCroArray[i].IDP=IDArray[i].IDP;IDCroArray[i].IDNU=0;如果IDCroArray[i].IICS、IDCroArray[i].DICS组合在所述输入信息与测试项目匹配表IDM表中不存在,则将IDCroArray[i]中数据存入所述输入信息与测试项目匹配表IDM表中;IDM总列数不能超过阀值IDMCL,否则取其中前IDMCL个IDP较大的数据。8.对变量i=i+1;如果i<=X则转前述步骤2;否则算法结束。如图4所示的5.6部分涉及到“变异”算法以及函数Y=f4,在所述IDArray中随机抽取Y个,然后“变异”为新的IDType类型结构,存入知识库,由于Y是用来进行变异的数目,不能够太大,这儿这样定义f4f4(X)=Integer(X/2)+1;X就是上面算出的用来进行杂交的数量。这儿涉及到的变异算法如下1.设S1[i]为IDArray[i].IICS与IDArray[i].DICS连接起来形成的码串;设K2=Integer(L5/8)+1;将S1[i]中后k2个二进制码取反;2.将新形成的S1[i]拆成相应的c1个输入信息编码IIC和c2个测试项目编码DIC,如果拆散后的IIC和DIC在IIT表和DIT表中均有定义的话则转后续步骤3;否则转后续步骤4;3.将生成的S1[i]拆为输入信息编码组IICS与测试项目编码组DICS存入IDArray[i]中的对应项;如果IDArray[i].IICS、IDArray[i].DICS组合在所述输入信息与测试项目匹配表IDM表中不存在,则将IDArray[i]中数据存入IDM表中,IDM总列数不能超过阀值IDMCL,否则取其中前IDMCL个IDP较大的数据。4.对变量i=i+1;如果i<=Y则转1;否则算法结束。如图1所示的,1.5部分指的是将测试项目数组DIArray中存放的测试项目经由电信操作维护系统获得测试结果DR(DiagnoseResult)。这个过程可以由用户人工将测试项目进行测试并记录测试结果,也可以在本发明的FOS与电信操作维护系统间构造一个接口,由FOS向电信操作维护系统发布测试命令。至于测试的结果,所述FOS需要构造一个接口,从而可以从诊断测试模块以及其它观察模块,如以中兴通讯公司ZXC10-BSS系统为例,这些模块包括诊断测试模块、运行信息观察模块、基站信息观察系统、业务观察模块等存放结果的数据库中获得测试结果。同时所述FOS允许有经验的用户修改所获得的测试结果,这也包括用户增加新的电信操作维护软件的诊断部分没有给出的测试项目对应的测试结果信息。另外所述FOS允许用户定制测试结果DR及其相应的测试结果编码DRC(DiagnoseResultCode)。其中1.所述测试结果编码DRC编码为二进制码串,每个测试结果编码DRC编码其长度固定为L6。而测试结果DR,为字符串类型;2.测试部分提供的信息、用户新增的信息不能存在重复;3.无论是测试部分提供的信息、用户新增的信息还是用户定制的信息,它们对应的测试结果编码DRC都应该在测试结果范围DRS(DiagnoseResultSpace)内。假如DRSMax为测试结果范围DRS中最大的数,DRSMin为DRS中最小的数,而DRCi为任意一个DRC,则有DRSMax>=DRCi>=DRSMin;4.用户定制的测试结果DR,其对应的测试结果编码DRC不能跟所述FOS中已有的测试结果DR、测试结果编码DRC重复,当然所述FOS允许用户修改其中已经有的DR及DRC,同样修改后的结果必须保证不能跟所述FOS中已有的DR、DRC重复;5.诊断部分提供的信息及用户新增的信息的测试结果总和DRCO(DiagnoseResultCOunt)必须小于或等于FOS允许的输入信息总和的测试结果门限值DRCL(DiagonseResultCountLimit),否则用户必须删除部分测试结果DR,直到满足DRCO<=DRCL如图6所示,2.2部分指示的是一个描述“测试结果与解决方案匹配”情况的知识库,同时描述本发明所用的几张主要表的结构,如图5A~图5C所示1.图5A所示的,测试结果与解决方案匹配表DSM(DiagnoseResultSolutionMatchingtable),它含有如下表项i.测试结果编码组DRCS(DiagnoseResultCodeS),这个表项由c3个测试结果编码DRC组成,其长度为L7,显然有L7=c3*L6。组成测试结果编码组DRCS的c3个测试结果编码DRC不能重复,如果该DRCS项没有足够的DRC,则可以用全0的二进制码串在后面填充;ii.解决方案编码组SOCS(SOlutionCodeS)。跟测试结果编码DRC类似,解决方案编码SOC也是一个二进制码串,其长度为L8,也有一个取值范围SS(SolutionSpace),任何SOC均需在SS内。而SOCS由c4个SOC组成,其长度为L9,显然有L9=c4*L8。组成解决方案编码组SOCS的c4个SOC不能重复,如果该SOCS项没有足够的SOC,则可以用全0的二进制码串在后面填充;iii.优先级IDP_DSM(IDmtableitemPriority),这个值在图1注1.2中提及的算法里会用到,这个值是一个整数,并且所述FOS为其定义有两个门限IDPMin_DSM和IDPMax_DSM,任何一个IDP取值IDP_DSMi均满足IDPMax_DSM>=IDP_DSMi>=IDPMin_DSM;iv.未用到次数IDNU_DSM(IDmtableitemNotUsingtimes),也是一个整数,记载自从上次优先级改变以来有多少次没有使用该列来产生解决方案了;2.图5B的测试结果表DRT(DiagonseResultTable),这是一个测试结果DR和测试结果编码DRC的对照表,它的两个表项在前面都描述过了。所述FOS为这个表定义了一个测试结果表门限DRTL(DiagonseResultTableLimit),该表列数不能超过DRTL。并且测试结果DR、测试结果代码DRC不能存在重复。3.图5C解决方案表SOT(SOlutionTable),这是一个解决方案编码SOC与解决方案SO的对照表,SOC已经在前面描述过了,而SO则是解决方案的名称,为字符串类型。所述FOS也为该表定义了一个解决方案表门限SOTL(SolutionTableLimit),该表列数不能超过SOTL。并且解决方案SO、解决方案编码SOC不能存在重复。如图1所示的,1.6部分采取了一定的匹配算法由测试结果来获得解决方案,这里可以采用与图1的1.2部分同样的算法,具体流程可以参考图3的“根据输入信息判断测试内容”算法的流程。假设我们获得的解决方案存放于一个解决方案数组SOArray中,数组中的每一项存放一个解决方案SO。如图1所示,1.7部分用户借助本发明系统给出的解决方案来解决实际问题,系统给出的解决方案跟用户最终解决问题的实际方案可能有出入。当然实际解决方案需在解决方案的取值范围中,也就是在知识库的解决方案与编码对应表中存在该解决方案及与该解决方案对应的编码。系统应该允许用户修改解决方案以及与之对应的编码。用户修改后的解决方案SO要存在于解决方案表SOT表中,而且用户修改后的测试项目总数不能超过解决方案数组SOArray能够容纳的极限SOCL(SOarrayCountLimit)。所述FOS同时也提供接口允许用户定义新的解决方案SO及其对应解决方案编码SOC,但是它们也必须满足类似图1的1.5部分对测试结果DR、测试结果编码DRC的要求。图1的1.8部分指的是实际解决方案,即可能用户修改过的,然后作用于“测试结果与解决方案匹配”知识库,并进行更新;本发明方法中采用遗传算法,可以采用与图1的1.4部分同样的算法,具体流程可以参考图4的“利用输入信息与最终测试项目的匹配对更新知识库”算法的流程及其说明。如此,整个本发明系统的一个完整流程循环就结束了。本发明方法在作用于系统的知识库时,可以使得系统的知识库逐步更新适应实际的故障排除情形,从而最终起到协助甚而取代经验用户的作用,这就是本发明系统的“智能”之处。应当理解的是,本发明在以上具体实施例中提及的具体算法只是表明本发明可以采取的一种方法,本发明所描述的系统还可以采用其它方法来实现,而所有这些都应以后附权利要求书为准且落入本发明专利请求保护的范围内。权利要求1.一种应用于电信系统的故障排除的方法,其包括以下步骤a)输入信息;b)将输入的输入信息与第一知识库进行匹配,通过预定算法得出要进行测试的项目;c)根据输入信息与测试项目匹配对对该第一知识库进行更新作用,使之能更准确地反映输入信息与测试项目间的对应关系;d)针对该测试项目形成测试结果;e)将测试结果与第二知识库进行匹配,通过预定算法得出解决方案;f)根据测试结果与解决方案匹配对该第二知识库进行更新作用,使之能更准确地反映测试结果与解决方案间的对应关系。2.根据权利要求1所述的方法,其特征在于,所述第一知识库以及所述第二知识库的输入信息,测试项目,解决方案都一一对应有编码,且无重复。3.根据权利要求2所述的方法,其特征在于,所述步骤a)中的输入信息通过设置一接口接收来自于外部操作维护软件的信息。4.根据权利要求3所述的方法,其特征在于,所述步骤a)中的输入信息由用户手工修改后输入。5.根据权利要求4所述的方法,其特征在于,所述步骤d)中的测试项目通过所述操作维护软件形成测试结果。6.根据权利要求5所述的方法,其特征在于,所述步骤d)中的测试结果用户可进行修改。7.根据权利要求1~6任一权项所述的方法,其特征在于,所述输入信息,测试项目以及解决方案及其对应的编码可由用户定制。8.根据权利要求7所述的方法,其特征在于,所述预定算法包括以下步骤b0)设置输入信息与测试项目匹配表IDM,用于对应存储输入信息编码IICS,测试项目编码DICS,优先级IDP以及未用到次数IDNU;输入信息表IIT,用于对应存储输入信息编码IIC和输入信息II;以及测试项目表DIT,用于对应存储测试项目编码DIC和测试项目DI;b1)输入IIC0个输入信息II,参照输入信息表IIT,其中IIC0个输入信息编码IIC设为IIC[1],IIC[2]……IIC[IIC0],然后跟所述输入信息与测试项目匹配知识库IDM中某项进行匹配,设置匹配率M;b2)设置优先权阀值IIDPL,用测试项目数组DIArray用来存放测试项目DI,设置IICSArray数组用来存放要与所述输入信息与测试项目匹配表IDM的综合优先级匹配的列的输入信息编码IICS表项,并设置循环变量j表示匹配到的该IDM表的列数并赋初值为1,匹配率M赋初值为0;b3)所述输入信息与测试项目匹配表IDM形成IDMC0列,分别为IDM[1],……IDM[IDMC0],用IDM[j].IICS来表示第j列的输入信息编码组IICS项,而IICS项由c1个输入信息编码IIC组成,用IDM[j].IICS[k]来表示其中组成该IICS的第k项输入信息编码IIC,将IIC0个输入信息编码IIC与输入信息与测试项目匹配表IDM中的每一列IDM[j]比较,IDM[j].IICS中含有输入信息的编码IIC的个数就是匹配率M;b4)设置一函数f1(M,IDM[j].IDP,IDM[j].IDNU),根据所述匹配率M、优先级IDP、未用到次数IDNU计算一个综合优先级,如果该优先级大于所述优先权阀值IIDPL,则根据测试项目表DIT应该将该列的DICS表项所对应测试项目DI加入测试项目数组DIArray中,即将EDM[j].DICS中所含的DIC通过匹配,获得对应的测试项目存入测试项目数组DIArray,而将IDM[j].IICS存入IICSArray中,该函数f1定义为f1(M,IDM[j].IDP,IDM[j].IDNU)=M*IDM[j].IDP*(IDM[j].IDP/(IDM[j].IDP+IDM[j].IDNU));b5)设置表示允许的优先级的最大值IDPMax,并判断IDM[j].IDP是否达到了该优先权最大值IDPMax,如果没有超过这个最大值,则优先级IDM[j].IDP加1,最近未用次数IDM[j].IDNU置0;否则优先级IDM[j].IDP不变,IDM[j].IDNU置0;b6)在所述输入信息与测试项目匹配表IDM表中,每次循环最大未用次数IDM[j].IDNU加1,如果一列长期不用,即IDM[j].IDNU超过最大未用次数阀值IDNUL,则其优先级IDP下降;如果优先级IDP为0,则优先级IDP不变;如果优先级IDP下降到小于优先级最小值IDPMin,则在所述第二算法中删除该列;b7)对循环变量j增1并判断j是否大于IDMC0,从而判断是否输入信息与IDM表中所有表项都匹配过,如果是则算法结束,否则回到所述步骤b3)继续匹配IDM表中的下一个表项。9.根据权利要求8所述的方法,其特征在于,所述输入信息与测试项目匹配对对该第一知识库进行更新作用过程包括以下具体步骤首先根据测试项目数组DIArray通过测试项目表DIT进行匹配得到存放测试项目编码DIC的测试项目编码数组DICArray,设DIArray中存放测试项目DI的数目为P,则DICArray中的测试项目编码DIC也是P个;设IICSArray数组中存放输入信息编码组IICS的个数为Q;再由DICArray中的DIC每c2个拼接在一起为一个测试项目编码数组DICS,由所述测试项目编码数组DICArray拼接出测试项目编码组数组DICSArray,如果有不足的则用全0的空串补足,并将该测试项目编码组DICS存入DICSArray中,设DICSArray中有R个测试项目编码组DICS;然后联合IICSArray一起拼出IDType类型数据来存放在一输入信息与测试项目配对数组IDArray中,IDType为一结构类型数组,其成员包括输入信息编码组IICS、测试项目编码组DICS、优先级IDP、最大未用次数IDNU,如果IDArray中的IICS、DICS组合在IDM表中不存在的话,则将其存入数据库;然后删除掉IDM表中IPD小于IDPMin的列,存入IDM表。10.根据权利要求9所述的方法,其特征在于,所述输入信息与测试项目匹配对对该第一知识库进行更新作用过程还包括在所述输入信息与测试项目配对数组IDArray中随机抽取X个,然后与ID01dArray“杂交”成为新的IDType类型结构,存入知识库中,其算法的具体步骤为c1)定义IDType类型数组IDCroArray存放杂交后的数据;c2)设S1[i]为IDArray[i].IICS与IDArray[i].DICS连接起来形成的码串,而S2[i]为IDOldArray[i].IICS与IDOldArray[i].DICS连接起来形成的码串;S1[i]跟S2[i]的长度应该为L5=L2+L4;设S1[i][j]为码串S1[i]的第j位,S2[i][j]为码串S2[i]的第j位,此处L5>=j>=1,i、j为通用变量;c3)设k1=Integer(L5/3);设S3[i]为通过S1[i]和S2[i]杂交来的码串;初始化循环变量m为0;设定程序运行次数为次数变量RT;c4)S3[i]的前k1位跟S1[i]的前k1位相同,S3[i]的后k1位跟S2[i]的后k1位相同,而S3[i]的中间剩余的各位随机生成;c5)将算出来的S3[i]拆散为相应的c1个输入信息编码IIC和c2个测试项目编码DIC,如果拆散后的IIC和DIC在输入信息表IIT表和测试项目表DIT表中均有定义的话则转后续步骤c7;否则,如果m>RT,转后续步骤c8;如果m<=RT,则转后续步骤c6;c6)对循环变量m=m+1,即变量自增;然后转前述步骤c4;c7)将生成的S3[i]拆为输入信息编码组IICS与测试项目编码组DICS存入IDCroArray[i]中的对应项;IDCroArray[i].IDP=IDArray[i].IDP;IDCroArray[i].IDNU=0;如果IDCroArray[i].IICS、IDCroArray[i].DICS组合在所述输入信息与测试项目匹配表IDM表中不存在,则将IDCroArray[i]中数据存入所述输入信息与测试项目匹配表IDM表中;IDM总列数不能超过阀值IDMCL,否则取其中前IDMCL个IDP较大的数据c8)对通用变量i=i+1;如果i<=X则转前述步骤c2;否则算法结束。11.根据权利要求10所述的方法,其特征在于,所述输入信息与测试项目匹配对对该第一知识库进行更新作用过程还包括在所述输入信息与测试项目配对数组IDArray中随机抽取Y个,然后进行变异,存入知识库中,其具体步骤包括c11)设S1[i]为IDArray[i].IICS与IDArray[i].DICS连接起来形成的码串;设k2=Integer(L5/8)+1;将S1[i]中后k2个二进制码取反;c12)将新形成的S1[i]拆成相应的c1个输入信息编码IIC和c2个测试项目编码DIC,如果拆散后的IIC和DIC在IIT表和DIT表中均有定义的话则转后续步骤c13);否则转后续步骤c14);c13)将生成的S1[i]拆为输入信息编码组IICS与测试项目编码组DICS存入IDArray[i]中的对应项;如果IDArray[i].IICS、IDArray[i].DICS组合在所述输入信息与测试项目匹配表IDM表中不存在,则将IDArray[i]中数据存入IDM表中,IDM总列数不能超过阀值IDMCL,否则取其中前IDMCL个IDP较大的数据;c14)对通用变量i=i+1;如果i<=Y则转所述步骤c11);否则算法结束。12.一种根据权利要求1所述的应用于电信系统的故障排除的系统,其基于一通用计算机,包括一用于输入输入信号的输入接口;一用于输出解决方案的输出接口;以及一第一知识库,以及一第二知识库,用于存储告警输入信号与解决方案的对应数据,并由所述输入信号与所述第一知识库进行匹配获得测试项目,由该测试项目经过测试获得测试结果后与所述第二知识库进行匹配获得解决方案,将该解决方案从所述输出接口中输出。13.根据权利要求12所述的系统,其特征在于,所述系统中还设置有一监控模块,对操作维护过程进行记录和监控,并对所述第一知识库及第二知识库进行更新处理。全文摘要本发明的一种应用于电信系统的故障排除的系统和方法,所述方法包括以下步骤输入信息;将输入的输入信息与第一知识库进行匹配,通过预定算法得出要进行测试的项目;根据输入信息与测试项目匹配对该第一知识库进行更新作用,使之能更准确地反映输入信息与测试项目间的对应关系;针对该测试项目形成测试结果;将测试结果与第二知识库进行匹配,通过预定算法得出解决方案;根据测试结果与解决方案匹配对第二知识库进行更新作用,使之能更准确地反映测试结果与解决方案间的对应关系。本发明系统和方法可以积累用户的经验,使用方法简单,节约了时间和人工。文档编号H04L12/26GK1564531SQ20041002688公开日2005年1月12日申请日期2004年4月16日优先权日2004年4月16日发明者汪晓栋申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1