《电子技术应用》
您所在的位置:首页 > 其他 > 业界动态 > 基于GA算法的软件提供商信息化服务能力评价及优化模型

基于GA算法的软件提供商信息化服务能力评价及优化模型

2008-07-16
作者:倪 明

    摘  要: 企业在实施信息化建设时,一般需要软件提供商为其提供制造类、管理类和通讯类等各种软件系统" title="软件系统">软件系统。介绍基于从业经验、市场竞争力、信誉及产品竞争力四个方面构建模型的方法,再调研并获得江西省17家软件提供商的基础数据,运用遗传算法" title="遗传算法">遗传算法加以求解,得到更具有客观性的结果,为实施信息化建设的企业提供一个参考模型。
    关键词: 企业信息化  遗传算法  软件提供商  信息化服务能力

 

    企业信息化是一项具有长期性、艰巨性的复杂系统工程。企业实施该工程时,不是孤军作战,而是一个寻求多方合作共同建设的过程,即与各种类型合作伙伴共同推进自己的信息化建设,主要合作伙伴有软件提供商、IT设备供应商、管理咨询公司等[1]。其中,软件提供商主要提供企业信息化所需的制造类、管理类和通讯类等各种软件系统,这些软件系统都是企业信息化应用平台。对企业信息化成功与否起着关键作用。所以,企业在实施信息化建设时,能否正确地选择到提供这些软件系统的提供商,对其信息化建设显得非常重要。如果企业在实施信息化建设时,没能正确地选择软件提供商,可能会产生 “IT黑洞”,即随着信息化投入的增多,信息化产出反而下降。出现这种现象的原因之一是企业在实施信息化建设时,没能正确选择软件提供商。此时,企业选择的软件提供商不但没能给企业带来信息化效益,而且可能由于各软件系统间、软件系统与IT设备间、软件系统与企业员工间等不匹配而产生“信息孤岛”现象。对此类现象,美国Deliotle顾问公司对世界500强中64家进行了调研,结果1/4企业出现过此类现象[2]。产生这种现象的主要原因之一是,企业在信息化的诺兰模型的前三个阶段[3],因软件系统本身具有不同于硬件设备的特征,软件提供商可以隐瞒部分信息,致使企业没能正确选择软件提供商。
    对于选择软件提供商这一问题的研究,国内外文献中很少见到。而研究软件提供商提供的产品——软件系统,在近几年来的研究文献中也只出现几篇,参考文献[4]对制造系统仿真软件" title="仿真软件">仿真软件的评价,主要从软件质量、软件价格、软件提供商的服务和软件提供商的信誉四个方面进行评价。参考文献[5]主要评价CAI(Computer Aided Instruction)软件,并且从教学性、艺术性、可靠性、可使用性和开发效率五个方面进行评价。而参考文献[6]主要评价图书馆系统软件,并从软件工作可靠性、使用方便性、易于维护三个方面进行评价。
    由于企业信息化环境下的软件提供商选择与软件提供商提供的软件产品选择存在很大区别,前者不仅仅研究软件提供商提供的产品,更多地研究软件提供商本身;而后者主要研究软件提供商提供的产品。针对这种情况,本文提出软件提供商信息化服务能力评价模型,并在调研江西省17家软件公司获得的数据的基础上,再运用遗传算法GA(Genetic Algorithms)来求解该模型。
1 软件提供商信息化服务能力评价模型的构建
    企业实施信息化建设过程中,需要的软件类型主要有三类:(1)制造类软件,如CAD/CAM、NC、CIMS等。(2)管理类软件,如OA、DSS、AI、ERP等。(3)通讯类软件,如各类通讯服务程序软件和数据库管理软件。购买这些软件是企业信息化建设的一项很大投资,企业如何才能购买到适合自己的软件,找到适合自己的软件公司。部分企业可能会凭借自己的经验像采购硬件那样的定性购买方法来购置。为了减少在选择软件提供商时的非理性,建立如下的软件提供商评价指标体系进行定量选择[1],以及为了统一量纲和将难以定量化指标进行定量化,这里采用制定Likert度量表" title="量表">量表方法来进行处理,度量表结构如表1所示。软件提供商信息化服务能力的评价及处理方法如下:

                                 
    (1)厂商的技术实力与从业经验I:厂商的技术实力主要指软件提供商拥有系统分析员、系统设计员和程序员占员工总数的百分率及其知识水平和经验、开发软件所用的工具等。厂商从业经验主要指软件提供商从事软件开发的工作年限以及开发软件的种类和系列完整性、软件被用户接受并认可的程度、开发软件所使用的开发方法、开发软件的周期长短等。“厂商的技术实力与从业经验”这一指标中有定性化指标,所以需要采用度量表来定量化,这里举例说明度量表的使用方法。如该项" title="该项">该项指标中有项指标“软件被用户接受并认可的程度”,按照表1,指标具有五个标度,即对“软件被用户接受并认可的程度”综合评价有很好、较好、好、一般、较差五个等级。根据这五个标度值给参加评价的个体进行标度,如若评价是较好则标度为7,若是较差则标度为1。由此依次对各项指标进行标度,最后将该项指标中各项指标所得的标度值相加,即得到“软件被用户接受并认可的程度”值。其他定性指标按照同一方法进行处理。数学方法表示为:
   

    (2)厂商的服务能力与信誉E:厂商的服务能力主要指软件提供商在售后是否提供给用户免费或有限期限免费或少量收费的软件升级服务、软件运行出错后是否得到及时恢复、客户满意度等;厂商信誉主要指设备供应商拥有客户数量、厂商发行股票的溢价水平、厂商的管理层水平、厂商的资本实力等。这些分指标都是定性化指标,所以需要采用度量表来定量化,方法同(1)。数学方法表示为:
   

    (3)厂商产品的安全性、容错性、可维护性水平以及升级周期和厂商产品兼容性、工作平台的多样性能力F:主要指软件提供商提供的软件是否具有授权级别管理、防止非法侵占资源、出现差错能否自动恢复及恢复的程度、随用户需求的改变而主动给软件升级与维护的难易程度以及时间周期的长短等;厂商产品兼容性、工作平台的多样性能力主要指软件提供商提供的软件能否对不同版本兼容及能否在不同工作平台运行,如有的软件提供商提供的软件能够在Linux上运行,而不能够在Windows上运行。这些分指标也都是定性化指标,所以需要采用度量表来定量化,方法同(1)。数学方法表示为:
   


    (4)厂商产品的市场竞争力S:主要指软件提供商提供的软件拥有的市场份额、产品质量、软件产品的用户界面的友好性程度和产品的性价比大小等。这些分指标都是定性化指标,所以需要采用度量表来定量化,方法同(1)。数学方法表示为:
    
    为了便于运用GA方法,对上述I、E、F、S均采用归一化处理,其方法为[7]
    (1)若xi为取极大值为最佳,则用(i=1,2,…,n);
    (2)如xi为取极小值为最佳,则用,(i=1,2,…,n)。经过归一化处理后使得x′i的变化区间为[0,1],n=16,x′i∈{I,E,F,S}。
2  基于遗传算法的软件提供商信息化服务能力优化模型与算法设计
2.1 基于GA的软件提供商信息化服务能力评价优化模型

    遗传算法GA是模拟达尔文的遗传选择和自然淘汰的生物进化过程的计算模型。它最早由美国Michigan大学的Holland教授提出,起源于20世纪60年代对自然和人自适应系统的研究[8]。Bagley在其博士论文中首次提出“遗传算法”概念。其后经过Rosenberg、Cavicchio、Weinberg、Hollstien、Dejong等人[9]研究发展,到了20世纪80年代由Goldberg进行系统的归纳,形成遗传算法的基本框架[10]。近几年来,GA在函数优化、机器学习、图像识别等领域得到广泛应用。这是因为GA有以下的特点:GA不是直接作用于参变量集,而是利用参变量的某种编码;GA 不是从单个点而是从一个点的群集开始搜索;GA利用概率转移法,而非确定性规则;GA在搜索过程中,不易陷入局部最优[11]。所以,软件提供商信息化服务能力评价模型采用GA求解。
    (1)编码方式:假设有t个参加评价的软件提供商个体,则每条染色体的长度为t×4,如图1所示。染色体的长度取决于参加评价的个体数t,总群体规模为2t×4,染色体的每个位置只能为1(1表示该项指标被选中)或0(0表示该项指标没有被选中)。

                   
    (2)适应度函数的构造:采用“理想点法”构造多目标函数的适应度函数,决策者可以给出每个目标函数的乐观值(正理想点)和最不能够接受的悲观值(负理想点)。在状态空间中定义出一个正理想点(I+,E+,F,+S+)和一个负理想点(I-,E-,F-,S-),即得适应度函数:
     

式中,‖·‖表示取范数[11],h为遗传中的代数,d-为到负理想点的距离,d为到正理想点的距离。
2.2 算法设计
  (1) 复制算子:对种群个体按适应度从大到小排序,再用轮盘选择法[10],即假设每一条染色体适应度fp(p=1,…,t),群体适应度为,则将比例fp/作为第p个个体(染色体)选择复制概率。
    (2)交叉算子:一般取交叉概率为pc在0.6~1.0之间[10]。为了保证所对应基因位置不变,这里采用一致交叉算法,即染色体位串上的每一位按相同概率进行随机交叉,w∈[0,1]为均匀随机分布变量。如新个体X’1=C’11 C’12…C’1n; X’2=C’21 C’22…C’2n, 则操作如下:
     

    (3)变异算子:一般取变异概率pm为0.3左右[9]。可用以下方法:在(0,t×4)上产生随机数[r],再在(0,1)间产生随机数pr,若prr。
    (4)选择策略及终止条件:按适应度大小从杂交、变异后产生新种群和原来种群中选取15个适应度大的个体组成下一代种群。若采用相邻代间适应度差异无显著变化,一般选取小于0.01作为终止条件[11]。程序终止后,将种群中具有较优的个体作为结果输出。
    (5)模型的GA算法流程图如图2所示。

                        
3 算例
    模型初始化:参加评价的软件提供商个数为6,则染色体的长度为24,群体的规模为224,随机产生初始群体个数为15。参加评价的6个软件提供商各初始指标值经过处理后如表2所示。

                                
    本文运用Turbo C编程,得到不同遗传代数的运算结果如表3所示。由表3可知,当遗传代数为2 100和2900时,适应度的值变化分别为0.009(0.887-0.878)、0.005(0.892-0.887),远小于0.01,故运算停止。此时,输出最优组合如图3所示。
                                  

                       
    结果表明:在参加评价的6个软件提供商中,编号为2和3的软件提供商信息化服务能力综合评价为优,因为只有编号2和3的染色体位置上全部为1,表明编号2和3两软件提供商的信息化服务能力综合评价最优。 

    该模型和算法具有全局搜索能力且速度快。实施信息化建设的企业在选择软件提供商时,可以运用该定量模型进行计算,从而可以避免人的主观性推测,得到的结果具有一定的可靠性。根据得到的结果,实施信息化建设的企业可以清楚软件提供商在从业经验、市场竞争力、信誉及产品竞争力四个方面存在的问题,结合自身状况来选择合适软件提供商为其提供信息化服务。
参考文献
[1] 倪明.中小企业信息化问题研究[D].合肥:安徽农业大学出版社,2003.
[2] 孔学峰. 企业信息化过程的信息悖论[J]. 企业活力,2004,(1):50-51.
[3] 乌家培.信息与经济[M]. 北京:清华大学出版社,1993:96-185.
[4] 王永超.制造系统仿真软件的评价体系研究[J].中国机械工程,2001,12(2):1376-1380.
[5] 潘英.图书馆虚脱弱碱的评价模型[J].情报理论与实践,2000,23(1):50-52.
[6] 关尔群.CAI软件评价研究[J].辽宁师范大学学报:自然版, 2003,26(3):268-271.
[7] FOGEL D B. An introduction to stimulated evolutionary optimization[J]. IEEE Trans. On
  Neural Networks, 1994,5(1):3-12.
[8] HOLLAND J H. Adaptation in natural and artificial system[J]. Journal of the Association for Computing Machinery, 1962,(3):297-312.
[9] DEJONG K A. Analysis of the behavior of a class of genetic adaptive system [D]. Ph.D.thesis.University of Michigan. Ann Arbir, Mich, 1975:56-103.
[10] GOLDBERG D E. Genetic algorithms in search, optimization and machine learning [J]. Addison Wesley. Reading, Mass, 1989:64-98.
[11] KATHRYN A D. Genetic algorithms-a tool for OR [J]? Journal of Operation Research,1996,(4):550-560.

本站内容除特别声明的原创文章之外,转载内容只为传递更多信息,并不代表本网站赞同其观点。转载的所有的文章、图片、音/视频文件等资料的版权归版权所有权人所有。本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如涉及作品内容、版权和其它问题,请及时通过电子邮件或电话通知我们,以便迅速采取适当措施,避免给双方造成不必要的经济损失。联系电话:010-82306118;邮箱:aet@chinaaet.com。