スタートページWeb教材一覧オペレーションズリサーチ

AHPの初歩


AHPのイメージ

よくある選択法での問題点

顧客が商品を購入するとき,価格,品質,体裁などいくつかの評価項目があります。このとき,価格に70%,品質に10%,体裁に20%というような重みをつけて,商品Aでは価格が3点,品質が4点,体裁が4点,商品Bでは,それぞれ5点,3点,2点というような点数をつけて,次のような表を作り,それらの総合点を計算して,総合点の最大のもの(ここでは商品B)を選択するという方法がよくとられます。

       重み   商品A  商品B  商品C  商品D
   価格  0.7   4    5    3    2
   品質  0.1   2    3    5    5
   体裁  0.2   3    2    3    4
   --------------------------
     合計     3.6   4.2   3.2   2.7

   (商品A:0.7×4+0.1×2+0.2×3=3.6 のように計算)

ここで問題が起こります。この重みや数値をどのように決定するのでしょうか?
 それよりも,「価格と品質のうち,どちらが重要か?」とか,「品質の観点では,商品Aと商品Bのどちらが優れているか?」というほうが,答えやすいですね。

一対比較法

一対比較法とは,「価格と品質」「価格と体裁」「品質と体裁」のように,2つずつについて,どちらがどの程度重要かを与えることにより,統計的な方法で重み付けを計算する方法です。

評価項目間の比較

価格,品質,体裁の重み付けについて,一対比較法を適用してみましょう。

 「価格と品質」を例にすれば,価格に比べて品質が
               品質   価格
    同程度である      1    1
    やや重要である     3    1/3
    重要である       5    1/5
    かなり重要である    7    1/7
    絶対的に重要である   9    1/9
のポイントを与えます。

ここでなぜ,1,3,5・・・とするのか,相手をなぜ逆数にするのかの疑問を持つでしょう。前者に関しては,研究により,いくつかの数列が提唱されており,これもその一つです。相手側を逆数にするのは,それによる行列に逆数対称性を持たせることが,計算も容易になり理論的にも優れていることが知られているからです。これらの理論は私たちの能力を超えていますので,ここでは「そのようなものか」としておきましょう。

例えば,
    価格と品質は,品質のほうが,重要である
    価格と体裁は,価格のほうが,かなり重要である
    品質と体裁は,体裁のほうが,やや重要である
と評価したのであれば,上の基準により,次の表ができます。

        価 格  品 質  体 裁
    価格   1    5    7
    品質  1/5   1   1/3
    体裁  1/7   3    1

この計算方法は後で説明しますが,結果として,
    価格:0.738,品質:0.092,体裁:0.170
の重み付けが得られます。

各評価項目に関する商品間比較

次に,商品選択について考えます。評価項目として価格を例にします。
 価格について,商品AとB,AとC,というように,2つずつどちらがどの程度優れているかの表を作ります。
 その結果,次の表が作成できたとします。

         商品A  商品B  商品C  商品D
    商品A   1    3   1/5   3
    商品B  1/3   1    3    5
    商品C  1/5  1/3   1   1/5
    商品D  1/3  1/5   5    1

これも,先の評価基準と同様な計算により,
    価格:商品A=0.257,商品B=0.299,商品C=0.232,商品D=0.212
となります。他の評価基準についても,同様に
    品質:商品A=0.163,商品B=0.364,商品C=0.180,商品D=0.293
    体裁:商品A=0.277,商品B=0.324,商品C=0.148,商品D=0.251
と計算できたとします。

これらは,各評価項目に関する各商品の優れた程度だといえますので,先の「得点」だと解釈することができます。それで,次の表ができます。

    評価項目 重み   商品A 商品B 商品C 商品D
     価格  0.738   0.257  0.299  0.232  0.212
     品質  0.092   0.163  0.364  0.180  0.293
     体裁  0.170   0.277  0.324  0.148  0.251
    -------------------------
     合計       0.252  0.309  0.213  0.226

AHP

上の例で,レベル1として,評価項目間,レベル2として,各項目に関して商品間の比較をしていますが,どちらも同じ論理であることに留意してください。

例えば,品質を「機能」や「大きさ」に細分化することもありますし,商品Aをデスクトップパソコン,商品Bをノートパソコンのような商品グループだとして,商品Aを銘柄に細分化することもありましょう。それらを一般化すれば,多階層における評価項目の重要度を一対比較法により求める問題になります。
 AHP(Analytic Hierachy Process:多段階意思決定法)とは,このような問題を解決するための数学的方法の一つです。

AHPの利点

上の例でもわかるように,AHPには次の特徴があります。

データの入手が容易
項目全体について重要度を数値で与えるのは困難であっても,2つの項目でどちらが重要か(優れているか,好きか)という質問には答えやすいですね(後述しますが「比較できない」というときの対処もできるのです)。それで,データを入手することが容易になります。そもそもAHPは心理学から始まったのですが,それもうなずけることです。
主観と客観の統合
比較の程度を5段階評価のような主観的な数値を用いて,客観的な統計理論により加工しています。これは,多様な評価をする人たちが集まって意思決定をするのに,みんなの意見が公平に尊重されることを意味しています。合意を得るのが容易になります。
処理方法が簡単
理論では固有値だとか固有ベクトルなど,文系の人には難解な概念がでてきますし,それを求める計算をするのは大変ですが,その部分はコンピュータに任せるとすれば(簡単なものは後述の「計算プログラム」でもできます),処理の方法は簡単です。市販のパッケージツールも多くあります。

AHPの適用分野

AHPは,心理学や官能検査などの研究から始まったのですが,数値化するのが困難な多段階での評価項目間の重要度を求める問題は多く,現在では広い分野で用いられています。ビジネスでは,上記例のような商品選択以外に,次のような適用があります。

バランス・スコアカードとの連携
経営戦略を策定するとき,「財務の視点(過去)」「顧客の視点(外部)」「内部業務プロセスの視点(内部)」「イノベーションと学習の視点(将来)」の“4つの視点”により主要な戦略を評価するバランス・スコアカードが広く活用されています。その戦略案を評価するのにAHPは役立ちます。
店舗展開
新店舗を出すのに,土地価格,立地環境(駅前,郊外など),店舗形態(独立店舗,テナントなど)が考えられます。それらを,売上高,競争性,イメージアップなどを評価基準として評価するとか,具体的な候補を比較検討するのに適用できます。
昇進・昇格人事
候補者のうち誰を部長にするかを評価するには,多様な適性項目が考えられますが,個々の候補者の適性評価を数値的に評価するのは困難です。このようなときにAHPは役立ちます。

AHPの理論

AHPの基礎となるのは一対比較法です。一対比較法は,一対の比較結果を行列の形式にして,それから重要度ベクトルを算出する手順です。
 上記例でいえば,行列

から,重要度ベクトル,
    {0.738,0.092,0.170}
を算出する手順です。

その解法には,固有値法,幾何平均法,誤差法などいろいろあります。計算手順としては幾何平均法が簡単なのですが,意味の理解や応用性では固有値法が優れていますので,ここでは固有値法を使います。

固有値,固有ベクトルの計算方法

では,そもそも固有値,固有ベクトルとは何か? 詳しいことは省略して・・・
      Av=λv (Aは正方行列,vはベクトル,λは定数)
の関係があるとき,λを固有値,vを固有ベクトルといいます。
 そして,λは行列式
     det|A-λE|=0 (Eは単位行列)の解として求められます。

次元がnのときは,n個の固有値と固有ベクトルがありますが,絶対値が最大の固有値(上の場合では5)を主固有値,そのときの固有ベクトルを主固有ベクトルといいます。

行列がn次元ですと,λを求めるのにn次元方程式を解くことになりますので,一般的には式の変形で解くのは困難になります。それで,いろいろな数値解法がありますが,ここでは「べき乗法」を,理論なしで紹介します。これにより,主固有値と主固有ベクトルが得られ,主固有ベクトルの要素合計が1になるよう調整されています。これが上記での「重要度ベクトル」になります。

初期値設定
vの初期値を適宜定める。たとえば,すべての要素を1/nとする。
固有値λの初期値をnとする。
近似値の計算
u=Avの計算をする(uはベクトル)。
λ=u/λの計算をする。
収束確認
λの変化が十分に小さくなったら打ち切り。
そうでなければ,近似値の計算を繰り返す。

ここでは一般の行列で説明しましたが,逆数対象行列は,その構造の特徴により計算が簡単で誤差が少なくなるという特徴があります。また,主固有値および主固有ベクトルの全要素が正数になることが数学的に証明されています。これが,重要度の弱いほうを強いほうの逆数にする理由でもあります。

固有ベクトルの意味

これをどのように解釈するかは,物理的な事項により異なりますが,行列Aの特徴を示すベクトルであることが理解できるでしょう。そして,主固有値は最大の伸びを示すものですから,その特徴を最も表していることになります。

「比較できない」の取扱い

一対比較でも比較できない場合があります。これはほとんど同等で差別が付けられないというのではなく,例えば,マラソンの選手とフィギュアスケートの選手を比較するように評価基準が異なる場合や,評価者が比較できる情報を持っていない場合です。

このときは(理論は省略しますが),
   比較できない要素およびその対象要素を0とする。
   その行の対角要素に1を加える。 とすればよいのです。

 例えば,価格に関する各商品のうち
    商品Aと商品Bの評価ができない(★)
    商品Cと商品Aの評価ができない(●)
の場合,すなわち下表のとき,
         商品A  商品B  商品C  商品D
    商品A   1◆   ★    ○    3
    商品B   ☆    1◇   3    5
    商品C   ●   1/3   1▲  1/5
    商品D   3   1/5   5    1

  ★について
    ★要素と☆要素を0にする。
    ★要素の行の対角要素◆に1を加える(1+1=2になる)
    ☆要素の行の対角要素◇に1を加える(1+1=2になる)
  ●について
    ●要素と○要素を0にする。
    ●要素の行の対角要素▲に1を加える(1+1=2になる)
    ○要素の行の対角要素◆に1を加える(2+1=3になる)
 その結果,次のようになります。
           商品A  商品B  商品C  商品D
    商品A               3
    商品B           3    5
    商品C      1/3      1/5
    商品D   3   1/5   5    1


計算プログラム

用語と機能限定

評価の与え方

入力を容易にするために,次の工夫をしました。

  入力値              本文での値
   5 Bのほうが「絶対的に重要」  11
   4 Bのほうが「極度にに重要」   9
   3 Bのほうが「かなり重要」    7
   2 Bのほうが「重要」       5
   1 Bのほうが「やや重要」     3
   0 AとBが「同等」        1
  -1 Aのほうが「やや重要」    1/3
      :
  -5 Bのほうが「絶対的に重要」  1/11
  空白 「比較できない」

すなわち,タテに大きな正数がある特性が重要度が高いことになります。

レベル1だけの場合

本文の例では,「価格」「品質」「体裁」の重みを計算するだけのケースです。
 レベル1の部分だけを入力します。

 本文の例では,次のように入力します。
   特性個数 
         B:特性1  B:特性2  B:特性3  B:特性4
   A:特性2    
   A:特性3        -1

 その結果は「計算」の次の行に表示されます。
   固有値=3.233 ベクトル 0.738 0.019 0.170

すなわち,「価格」「品質」「体裁」の重みがそれぞれ,0.738,0.019,0.170とすればよいことがわかります。

レベル2も行う場合

 本文の例は,次のように入力した結果です。
   特性1について
          候補1 候補2 候補3
      候補2  1
      候補3 -2   1
      候補4  1   2  -2
   特性2について
          候補1 候補2 候補3
      候補2  1
      候補3 -3   1
      候補4 -2   3  -3
   特性3について
          候補1 候補2 候補3
      候補2  1
      候補3  3  -1
      候補4 -2   4  -1

各特性について「計算」をするたびに,「レベル2の結果」の表が作成されていきます。この表の説明は不要でしょう。

入力の変更

レベル1,2ともに,入力データを変更したときは,直後の「計算」ボタンをクリックしてください。そのたびに「レベル2の結果」の表が更新されます。

     =========================

レベル1

特性個数
B:特性1・B:特性2・B:特性3・B:特性4・B:特性5
A:特性2と比較してBは
A:特性3と比較してBは
A:特性4と比較してBは
A:特性5と比較してBは
固有値=ベクトル

レベル2

候補個数
特性1についてB:候補1・B:候補2・B:候補3・B:候補4・B:候補5
A:候補2と比較してBは
A:候補3と比較してBは
A:候補4と比較してBは
A:候補5と比較してBは
固有値=ベクトル
特性2について
A:候補2と比較してBは
A:候補3と比較してBは
A:候補4と比較してBは
A:候補5と比較してBは
固有値=ベクトル
特性3について
A:候補2と比較してBは
A:候補3と比較してBは
A:候補4と比較してBは
A:候補5と比較してBは
固有値=ベクトル
特性4について
A:候補2と比較してBは
A:候補3と比較してBは
A:候補4と比較してBは
A:候補5と比較してBは
固有値=ベクトル
特性5について
A:候補2と比較してBは
A:候補3と比較してBは
A:候補4と比較してBは
A:個補5と比較してBは
固有値=ベクトル
レベル2の結果
重要度候補1候補2候補3候補4候補5
特性1
特性2
特性3
特性4
特性5
合計