By 高焕堂

misoo.tw@gmail.com

重要参考文章

内容

  • 今日决策、未来投资与AHP评估分析
  • 决策分析范例:评估智慧城市顶层设计的<系统架构>
  • 介绍AHP层次分析法
  • AHP应用范例:评估软件开发计划

 

1、今日决策、未来投资和AHP评估分析

1.1  <今日決策>的未來性

     今日决策的未来性攸关企业或组织的未来发展。智慧城市的顶层设计团队是规划者,也是决策者。其透过架构<设计>来创造<目前(今日)决策>的未来性。对一个企业或组织而言,所谓未来性就是未来竞争主导性。所以,架构设计不仅要适应未来的变化,而且要让企业、组织、产品或系统在未来多变的需求趋势、时尚空间里取得市场的竞争话语权。顶层设计团队的职责是致力于现在决策,并让它能包容未来的变化,也就是让<目前决策>具有未来性。但值得留意的是,主要职责不是去预测未来(的标准),不是去关心<未来决策>、去预先替未来做决策。实现环境的需求是善变的、市场主导权之竞争也往往如流水般不可测;也就是因为它的未来的不可测性,所以我们需要优越的架构设计。
     规划一个智慧城市的美好未来,需要进行许许多多的现在决策。如何确保现在决策的未来性呢? 除了顶层设计团队的新视野、好眼光和洞悉力之外;还可以藉重更多专家来协助客观地评估各种设计方案或未来的投资计划。如此,让智慧城市达到高度创新、又客观可靠的美好境界。
     当我们相信目前决策会影响一个城市的未来发展轨迹时,顶层设计团队不断在寻觅多条行得通的途径,然后透过能量化的客观性分析,让各界专家们共同关注和投入,一起评选出<最具有未来性>的途径,做为一个城市的未来投资和发展蓝图。由于是一条具有未来性的途径,其意味着继续走下去,遇到阻力时,会有足够的转圜空间;持续迈向永续发展的未来。

1.2  如何评估复杂决策:采AHP方法

       顶层架构设计是要规划一个城市的未来美好情境。这种架构,通称为:未来(To-be)架构。与此相对映的是:现况(As-is)架构。顶层设计涵盖了各项未来投资,让城市从现况(As-is)逐渐成长、演进,迈向未来(To-be)的美好情境。然而,这些投资项目,现在就必须规划、设计和决策,这称为:目前(即现在)决策。因此,顶层设计的内容就涵盖了:目前决策、未来投资和To-be架构。
       那么,我们又如何选择最好的决策、评估最好的投资、实践最美好城市呢? 除了顶层设计人员的主观评估之外,我们还需要仰赖定量、定性的分析方法和工具来协助评选出最好的设计决策和投资方案。在本文里,就来介绍一项非常著名的决策分析工具:AHP层次分析法(Analytical Hierarchy Process)。例如,如何确知某个设计或投资方案(Solution)适合于该智慧城市呢? 我们就可使用AHP方法来评估这项适用性。AHP是个很有趣又很有用的东西,它提供一个有效的方法去进行复杂的决策,无论在一般生活、商业或学术研究上,都有很精采的应用。AHP是将复杂的决策情境切分为数个小部份,再将这些部分组织成为一个树状的层次结构。如下图:


图-1  AHP层次分析法的结构图

       然后,对每一个部份的相对重要性给予权数值,然后进行分析出各个部份优先权。对决策者而言,以层次结构去组织有关候选方案(Alternative)的评选条件或准则(Criteria)、权数(Weight)和分析(Analysis),非常有助于对事物的了解。 此外,AHP可协助捕捉主观和客观的评估测度,检验评估的一致性,以及团队所建议的替代方案,减少团队决策之失误、失焦等。AHP将整个问题细分为多个较不重要的评估,但还维持整体的决策。
       自从1970年代,华顿(Wharton)商学院的Thomas Saaty博士提出AHP方法以来,它已经很成功地应用于全球的千千万万企业组织的决策分析上。数十年来的实证经验显示,在商业和政府的复杂决策分析方面,AHP是非常有效的方法。目前,市面上也有许多种软件工具,让人们能运用计算机来做快速的分析运算。例如,MarketRational公司的AHP Software软件系统,其画面如下:


图-2  MarketRational公司的AHP软件画面(一)


图-3  MarketRational 公司的AHP 软件画面(二)

       AHP可让人们在面对复杂的决策时,能评选出最佳(Best)的决策,而不是找出正确(Correct)决策。除了架构设计人员自己的评估之外,还能由更多外界专家组来提供评选准则(Criteria)和权数(Weight),并利用计算机来分析。例如,针对某一个城市的顶层设计,就能广泛邀请外界更多专家来参与分析和评估;大幅提升顶层设计的质量和可靠度。AHP最常见的决策应用情境如下:

  • 从多个候选方案,评选出一个最好的。例如选择一个公交车转运站地点。
  • 从多个候选方案,评选出数个较好的。例如公交车转运站建筑设计竞赛的初赛,先评选出数个具有创意的设计构思,进入决赛。
  • 从多个候选方案,进行评比,并排列出其评比值的高低顺序。例如决赛的评分,决定出金、银和铜牌得主。如下图:


图-4  高焕堂开发的AHP手机应用软件

       这个AHP工具能分析及评选出5支最理想的手机。

  • 从多个候选方案,进行评比,并排列出其优先性(Prioritization)。例如决定投资项目的优先性,提供最佳的资金或资源分配方案。
  • 敌我优势评比。例如新产品开发,与竞争产品进行多角度分析评比。例如,AHP应用于企业的市场竞争策略分析:


图-5  IBM公司的AHP软件画面

2、 决策分析范例:评估顶层设计的<系统架构>

       在笔者的在笔者提出的 “敏捷智能城市顶层设计方法” 里,建议使用EA(Enterprise Architecture)模式来进行顶层架构设计。在近20年来,许多实务上,EA模式和AHP方法的组合应用,获得美好的效果。
       例如,著名的EA工具:英国的MoDAF框架,搭配AHP方法,成为<架构+决策>的有效投资决策模式。依据MoDAF框架,针对一套特定的<业务架构(Operational View,简称OV)>,可规画许多套的<SV(System View,简称SV)来支撑该OV。换句话说,针对一个OV,可征求许多不同的团队来设计SV;于是有了许多不同的SV候选方案。其运行流程是:
       
Step-1. 针对目标(如智慧城市)而征求多套的OV业务架构。
Step-2. 这些OV业务架构,就成为多个候选方案;依据AHP方法而评选出一项最佳的OV业务架构。
Step-2. 针对该套最佳的OV业务架构,而征求多个SV系统架构,成为多个候选方案。
Step-3. 然后,从众多SV候选方案之中,依据AHP方法而评选出一项最具优势的SV系统架构。
Step-4. 最后才根据此最佳的OV+SV架构设计方案而施工,建造出高质量的系统。

就如英国的MoDAF官方文件所写道:

「OV表达需求,SV表达如何实现该需求。于是,我们可以规划许多套不同的SV方案来实现该需求。」

如下图所示:


图-6  Trading off alternative SVs and OV(摘自MoDAF官方文件)

MoDAF的官方手册又补充说明:

「基于上图的OV和SV的结构和行为观点,能迅速判断出那些功能应由人员执行,而那些应该由系统执行,进而依据风险、成本和可靠度等准则来分析和评比,以便找出最佳方案。」

       典型的AHP分析模型是一个层次的评估准则结构,在这结构的最末层就是各项候选方案(Choice 或Trade-Off)。如下图所示:


图-7  建立出SV的评选准则的层次体系

       AHP能用来评选好的顶层架构设计。同时也能成为顶层设计里的一项评选模式,可评选最佳的中层设计,以及实践层设计。因此,AHP成为EA-Based顶层设计的一个重要工具,例如协助评选最佳的实践方案,也就是最佳的投资计划。

3、介绍AHP层次分析法

3.1  AHP应用与软件工具

       AHP是个很有趣又很有用的东西,它提供一个有效的方法去进行复杂的决策,无论在一般生活、商业或学术研究上,都有很精采的应用。例如:

  • 软件开发管理之应用:在微软的MSDN文件里,其利用AHP方法来评选3个软件开发计划,以决定那一个是最好的计划。请参阅: http://msdn.microsoft.com/msdnmag/issues/05/06/TestRun/default.aspx
  • 一般生活上之应用:例如,想找一个理想的工作,而理想的评选标准有三:钱多、事少、离家近。那么,AHP方法就派上用场了。
  • 商业上之应用:例如全球性运输公司利用AHP方法评选最佳转运港口。

       AHP方法是由Thomas L. Saaty教授所研究发展出来的,其适合多评选标准(Multi-Criteria)的复杂决策。目前市面上有许多软件工具可用,包括最著名的Expert Choice软件系统,以及免费网络上AHP软件或服务等。笔者(高焕堂)也开发了一个Android智能手机的AHP软件系统,如下图-8所示。

3.2    AHP的重要概念:以评选工作(Job)为例

       笔者(高焕堂)依循AHP的分析法则,开发一个Android移动终端上可执行的软件系统。如下图:


图-8  笔者(高焕堂)开发的移动AHP软件画面

首先,厘清AHP的四项重要概念:

  • 1) 候选方案(Choice或Alternative)

       这是业主(或用户)所想做的决策:评选出最佳方案。例如,从3个工作机会里挑选出最适合自己的。或如古代的男女结婚,采门当户对思维;常常许多媒人登门来提亲。于是,准新娘(或准新郎)及其家人,就常常面临如何评选适合对象的情境。这些被评选的对象就是<候选方案>了。

  • 2) 评选准则(Criteria)

       在古代门当户对潮流下,许多年轻人会征询父母的意见,父母常常会提出严格的择亲条件,甚至父母还会向媒人征询更具专业性的评选条件。这些评选条件就是<评选准则>了。这些评选准则是来自外界(非准新娘或新郎)的专家,更大幅提高了评选的客观性和准确性。或许在今天自由恋爱潮流下,相亲的外在客观性并不重要。然而,对于智慧城市的公共投资方案的客观评选准则,常常是非常重要的。AHP的优点之一,就是让外界专家群能以其专业来协助业主做出最佳的、最客观的决策。
       在上图-8里,可以看到业主想从多个候选工作(Job)之中挑选其一。而专家提供了3个主要评选准则:钱多、事少、离家近。然后,又细分出9个小准则;例如,将<事少>这项大准则又细分出3项小准则:不加班、应酬少、可外出。此外,还可以继续细分出更多层级的评选准则;例如,将<可外出>这项小准则又细分出2项小小准则:不须请假、不扣薪水。如下图所示:


图-9  多层次的评选准则

       因此,大家就称AHP为层次分析法。

  • 3) 权数比重(Weight)

       刚才的评选准则是由专家提供的,让专家的知识和智慧能为业主所用,达到协助业主做好决策的目标。接下来,大家(包括业主和专家)一起思考、取得共识,给与各评选准则所占的比重,又称为权数(Weight)。在实务应用上,业主对于权数的决定权,往往比专家来得大一些。以找工作为例,不同求职者(业主),基于本身既有条件,会大大影响其权数的决定。例如,比较富裕求职者,他对<钱多>这项准则的权数比重,往往会较低。

  • 4) 贡献度评估(Evaluation)

       针对一组候选方案,有了<专家智慧>的评选准则,并且考虑<业主自身条件>而得出权数比重。接下来,就在上图-9所示的多层级评选准则体系的引导之下,逐一实际考察各候选方案,客观地评估各候选方案,对该评选准则的贡献度。例如,上图-9里有个小小评选准则:不扣薪水。于是,去考察3个候选的工作机会,得到重要信息:
       Job-1:其公司规定,每次外出超过2小时就扣半天薪水。
       Job-2:其公司规定,外出不扣薪水。
       Job-3:其公司规定,每次外出超过4小时就扣一天薪水。

       于是,客观地评估出来,就<不扣薪水>准则而言,各工作机会的贡献度(评比)值为:Job-1的贡献度是:0.1;Job-2的贡献度是:0.7;Job-3的贡献度是:0.2。如下图:


图-10  贡献度评估范例(一)

       再如,上图-9里有个小小评选准则:不须请假。于是,去考察3个候选的工作机会,得到重要信息:
       Job-1:其公司规定,外出必须请假,但必须早上签到和下午签退。
       Job-2:其公司规定,外出必须请假。
       Job-3:其公司规定,外出不须请假。
       于是,客观地评估出来,就<不须请假>准则而言,各工作机会的贡献度(评比)值为:Job-1的贡献度是:0.2;Job-2的贡献度是:0.0;Job-3的贡献度是:0.8。如下图:


图-11 贡献度评估范例(二)

       从以上的说明,可知道:评选准则是由专家提供的,代表了专家的专业知识。至于权数比重,则主要是业主的衡量(或称偏好)。至于贡献度,也算是一种特殊的权数比重;但是它并不是业主的偏好值;而是客观的评估值。
       值得留意的是,上图里的范例,只含有3个候选方案(即3个Job),我们还很容易评估出来它们之间的贡献度比率是:0.20.00.8。如果有更多候选方案(可能10个以上)时,又如何得出这项贡献度比值呢? 答案是:<两两相比>;又称为<成对相比>。再下一小节里,会详细说明之。

3.3    细说AHP分析的步骤

       AHP分析包含4个步骤:

Step-1.  分解(Decomposing)

       将整个问题分解为多个小问题。例如,整个问题是:想找一个理想的工作。各项工作都有三个属性(attribute),因而将理想分为三个评选条件:「钱多、事少、离家近」。

Step-2.  加权(Weighing)

       赋予三个评选条件的权数,例如:钱多(0.643)、事少(0.283)、离家近(0.074)。其表示主观上认定「钱多」比其它两项重要。如图-12所示。从图中可看出,相对上Job-2对「离家近」的贡献度高于Job-1;但是在决策者心目中「离家近」的相对权数只有0.074而已,意味着决策者并不太在意「离家近」这项条件。


图-12  问题之分解与加权

Step-3.  评估(Evaluating)

针对Job-1
       Job-1对「钱多」的贡献度为0.2,而「钱多」对总目标(即「理想」)的贡献度为0.643,所以Job-1透过「钱多」对总目标的贡献度为:0.2 * 0.643 = 0.129。Job-1对「事少」的贡献度为0.875,而「事少」对总目标(即「理想」)的贡献度为0.283,所以Job-1透过「事少」对总目标的贡献度为:0.875 * 0.283 = 0.248。Job-1对「离家近」的贡献度为0.111,而「离家近」对总目标(即「理想」)的贡献度为0.074,所以Job-1透过「离家近」对总目标的贡献度为:0.111 * 0.074 = 0.008。于是可算出Job-1所表现的理想度为:0.129 + 0.248 + 0.008 = 0.385。

针对Job-2
       依据同样的程序,可算出Job-2的情形:

  • Job-2透过「钱多」对总目标的贡献度为:0.8 * 0.643 = 0.514。
  • Job-2透过「事少」对总目标的贡献度为:0.125 * 0.283 = 0.035。
  • Job-2透过「离家近」对总目标的贡献度为:0.889 * 0.074 = 0.066。

       于是可算出Job-2所表现的理想度为:0.514 + 0.035 + 0.066 = 0.615。

Step-4.  选择(Selecting)

       从上述Step-3分析出:

  • Job-1的理想度为0.385。
  • Job-2的理想度为0.615。

所以建议:Job-2是较好的选择。

3.4    如何加权:两两相比法

3.4.1  成对相比(又称为:两两相比)

       针对上图-11里的<不须请假>评估准则,可看出Job-1、Job-2和Job-3三者的权数比为:0.20.00.8。然而,当有更多候选方案(可能10个以上)时,并不容易得到这个权数值,此时可以两两成对相比,会比较简单。例如,下图里只有两个Job相比,每个人都很容易说出两个Job的比较值。下图的三角形偏向Job-2,从其偏移的比例推算出其权数为02: 0.8。

 

       以此类推,从下图的3个三角形的两两比较之偏移比例,可以联合推算出其权数比Wx : Wy : Wz。

      

所以,在AHP方法里,通常都输入x:y、x:z和y:z之比值,如下:

 

然后,经由下一小节(12.3.2)所将叙述的计算步骤而演算出Wx、Wy和Wz之权数值,如下:

 

       总而言之,人们经常不容易说出Wx : Wy : Wz三者之间的比値,但是比较容易说出两两相比的x:y、y:z和x:z之比値。在AHP方法里,通常使用下图里的刻度表来叙述人们心中的相对权重。

 

       例如,此刻度代表偏好程度,3:1 表示对「钱多」稍有偏好,也就是说,选择工作时,钱多一点比较重要,事少并非最主要的考虑。于是就填入表格中,如下图:

由于比値为3:1,表示钱多与事少两者相比,钱多稍为重要一些,但差距并没有很大。再如下图:

  

       此图的比値为5:1,表示对对「事少」的偏好程度是「很有偏好」。就填入表格中,如下:

再如下图:

  

此图的比値是7:1,这表示对「钱多」很有偏好。就填入表格中,如下:

       这就是两两成对相比的矩阵了。待会儿,在下一小节里,将说明如何从此矩阵而演算出Wx、Wy和Wz之权数值。

3.4.2   从「成对比值」算出「权数値」

       基于上一小节的矩阵而演算出Wx、Wy和Wz权数值的计算步骤为:

Step-1: 计算各行的总和:

Step-2: 各个值除以该行的总和:

 

Step-3: 计算各列的平均值:

      钱  多: (21/31 + 5/7 + 7/13) / 3 = 0.643
      事  少: (7/31 + 5/21 + 5/13) / 3 = 0.283
      离家近: (3/31 + 1/21 + 1/13) / 3 = 0.074 

这些平均值,通称为优先向量(Priority Vector),简称PV值:

 

Step-4: 于是计算出Level-1的权数值:

  

Step-5: 开始演算Level-2的「钱多」权数值:

  

       此图的比値为1:4,其表示Job-2对钱多的贡献「稍强」于Job-1。就填入表格中,如下:

依据刚才的Step-1 ~ Step-3,而进行演算:

1) 计算各行的总和。 2) 各个值除以该行的总和。 3)计算各列的平均值。

于是,计算出权数(即PV值)如下:

Step-6: 开始演算Level-2的「事少」权数值:

  

此图的比値为7:1,表示Job-1对事少的贡献「非常强」于Job-2。就填入表格中,如下:

依据刚才的Step-1 ~ Step-3,而进行演算:计算各行的总和,并且各个值除以该行的总和,然后计算各列的平均值。于是,计算出PV值如下:

  

Step-7: 开始演算Level-2的「离家近」权数值:

  

       此图的比値为1:8,表示Job-2对离家近的相对贡献强度是介于「非常强」与「极强」之间。就填入表格中,如下:

       依据刚才的Step-1 ~ Step-3,而进行演算:计算各行的总和,并且各个值除以该行的总和,然后计算各列的平均值。于是,计算出PV值如下:

于是计算出Level-2的权数值:


图-13  基于「成对相比」矩阵而演算出来的权数值(即PV值)

Step-8: 开始进行评估:

       Job-1对「钱多」的贡献度为0.2,而「钱多」对总目标(即「理想」)的贡献度为0.643,所以Job-1透过「钱多」对总目标的贡献度为:0.2 * 0.643 = 0.129。Job-1对「事少」的贡献度为0.875,而「事少」对总目标(即「理想」)的贡献度为0.283,所以Job-1透过「事少」对总目标的贡献度为:0.875 * 0.283 = 0.248。Job-1对「离家近」的贡献度为0.111,而「离家近」对总目标(即「理想」)的贡献度为0.074,所以Job-1透过「离家近」对总目标的贡献度为:0.111 * 0.074 = 0.008。于是可算出:Job-1所表现的理想度为:0.129 + 0.248 + 0.008 = 0.385。依据同样的程序,可算出Job-2的情形:

  • Job-2透过「钱多」对总目标的贡献度为:0.8 * 0.643 = 0.514。
  • Job-2透过「事少」对总目标的贡献度为:0.125 * 0.283 = 0.035。
  • Job-2透过「离家近」对总目标的贡献度为:0.889 * 0.074 = 0.066。

       于是可算出:Job-2所表现的理想度为:0.514 + 0.035 + 0.066 = 0.615 两者相比,Job-2是较理想的选择。

 3.4.3 「成对比值」的一致性检验

     由于「成对相比」可能会出现自我矛盾的现象而不自知,所以AHP方法也能检验出是否有矛盾的现象。例如下图里的比値,其中3:1可表示为「钱多 > 事少」。而另外5:1,可表示为「事少 > 离家近」。依循逻辑,可推理而得:「钱多 > 离家近」。再看看7:1,可表示为「钱多 > 离家近」,这与上述的推理是一致的,其意味着经过上述程序所计算出来的Wx、Wy和Wz权数値是一致的,并没有矛盾。

 

       但是有些情况是会出现不一致的矛盾现象(待会儿将举例说明之)。因之,在计算每一组权数时,也需要检验其一致性。其计算步骤如下:

Step-1: 基于上一小节的Step-3所计算的总和及PV值,就可逐步计算并检验出一致性了。例如上一小节的Step-3所计算的总和及PV值为:

Step-2:  计算最大Eigen值,其公式为:各行总和与各列PV相乘之和。于是可算出:

         λmax = (1.476 * 0.643) + (4.2 * 0.283) + (13 * 0.074) = 3.097

Step-3: 计算一致性指标(Consistency Index),简称CI,其公式为:

         CI = (λmax – n ) / (n – 1)

       其中的n值就是选择准则的个数,例如上图的n值为3。所以可算出:

         CI = (3.097 – 3) / (3-1) = 0.048

Step-4: 计算一致性比率(Consistency Ratio),简称CR,其公式为:

         CR = CI / RI

       其中的RI代表随机一致性指标(Random Consistency Index)值,如下表所示:

例如,上图的n值为3,经查表可得到CI值为0.58。所以可算出:

         CR = 0.048 / 0.58 = 0.083

Step-5: 判断一致性:如果CR值小于0.1时,表示具有相当的一致性,所以上述例子是具有一致性的。反之,如果CR值大于0.1时,表示呈现显著的不一致性。例如,将上述例子更改为:

  

     则计算出来的CR值是:2.639,远大于0.1,呈现出明显的不一致性。因为「钱多 > 事少 > 离家近」很明显与「钱多 < 离家近」是互相矛盾的。

4、 AHP应用范例:评估软件开发计划

     本应用范例摘自于:http://msdn.microsoft.com/msdnmag/issues/05/06/TestRun/default.aspx – MSDNMagazine, June 2005
     此范例,是针对3个软件开发计划,依据专家所提供的层次评选准则体系,进行有效的评比。其评选准则的层次结构,如下图所示:


图-14  AHP层次分析图

首先,使用计算机上的AHP软件,输入顶层(Level-0层)的数据表格,如下:

接下来,输入Level-1层的两个数据表格,如下:

(表格-1a)

(表格-1b)

接下来,技术输入Level-2的5个数据表格,如下:

(表格-1a)

(表格-1a、1b、1c和1d)

       经由计算机的AHP软件分析,得出下述结果:

于是,评比结果是:
         Build-A:0.531
         Build-B:0.329
         Build-C:0.140

     所以,Build-A是最佳的软件开发计划。

~ end ~