• 検索結果がありません。

Multi-branch tree を用いた予算配分法において評価者の与える評価値の揺らぎが組織全体の予算配分に与える影響に関する考察 : Pythonによる揺らぎ抽出アルゴリズムの構築とシミュレーションによる分析評価

N/A
N/A
Protected

Academic year: 2021

シェア "Multi-branch tree を用いた予算配分法において評価者の与える評価値の揺らぎが組織全体の予算配分に与える影響に関する考察 : Pythonによる揺らぎ抽出アルゴリズムの構築とシミュレーションによる分析評価"

Copied!
16
0
0

読み込み中.... (全文を見る)

全文

(1)

Multi-branch tree を用いた予算配分法において

評価者の与える評価値の揺らぎが組織全体の

予算配分に与える影響に関する考察

- Python による揺らぎ抽出アルゴリズムの構築とシミュレーションによる分析評価-

田 島 博 之 

2

Multi-branch tree ŬÀĻŐ ÛĜ.®

řľĻŔĂũĂ"Ś‹ŧ

łŀâé)Ś ÛĜ.řĽũuĦřġŋũíb

į ijį Python řŦũ‹ŧł†-ŭƔŵƓŹƍŚ¤ÞŖŶƌƐƕƘŶƑƗřŦũ.ŸĂį ijį Ɯƛ ś Ŋţ ř ĽŜĵ ÛçīŀĺŧĿŊţ­šŒŔĻũUFĵŎŚŕøŽŚcĎ¹řŎŚ ÛŬŗŚŦļ ř4ŨtŔũĿŖĻļņŖśĝùŘÏÕƂƇžŲŕĺũĶšŐĵøŽŚĂîŀøŽŚcĎ¹ŚŎŪ ŏŪřŗŚŦļř ÛŬĜ.ŋũĿŖĻļƂƇžŲřœĻŔŤŽYŃ^QŋũĶĽŜmÄœŚ Û Ĝ.ÚŀņŪřtŐũĶEěëřś¥ķŘƊƖŷűŲƂŀĺŨĵEěëśŎŚƊƖŷűŲƂŇŖř ÛŬúÔŨĵ{ùŖŘũ ÛīŬ©p Û\IřŠ-ŋũĶ Û\IŕśņŪŧŠ¢ňŪŐ EěëĿŧŚù¬ŬçFÈř£ÿʼnŔĂŋũņŖŕ)Ś ÛŬ­`ʼnŔĻũŚŕĺũĶ[1][2][3]

ņŚŦļŘŕ Multi-branch tree ŬÀĻŐ ÛĜ.®ƙwĸT-methodĹŖĻļĶƚŀŠ¢ňŪŔ Ļũ[4][5]ĶņŚ‘®śĵ ÛĜ.řũŴŸƂŬ—d<ʼnœœ9¼ÈŘ ÛĜ.Ŭa½ŋũņŖŬ CðřʼnŔĻũĶňŧřŎŪśĵěĠğŀô$ÃHŬŋũąNŬˆŐŘĻ Incentive compatibility řġŋũā“ŤňŪŔľŨYŃŚƎƓžƂŀĺũĶ T-method řľĻŔśĂîŬſƓƘƙ™ƚ¤ėŚƅƘƃƙÜƚŚě.řģhÈřĜêʼnĵƓƘƈ ƙóƚŚě.řĂcĎ¹ŬĜêŋũĶĂîřgŋũƉƒƗŽƙ¡ƚřxgŋũĂcĎ¹Ŭ œę…ʼnŔĂʼnĵņŪŧŚĂ"ŬåFňōũņŖŕĵ)Ś ÛĜ.īŬ­`ňōũņŖŀŕ ŁũĶšŐ T-method śĵĂŴŸƂŬ—d<ňōũŐţĵ ķŚĂîŀ‡tŋũcĎřcŋũ ÍcĂŬñÂqŘʼnřŰűůƀŮƗųŬňōŔĻũĶņŪśĂŰűůƂŚdňŘW•ŀĵ ÛĜ .īŚ)řŒřuĦŬĽũŖĻŒŐĵĂŚĩ#}řJĪŬžŋCð}ŬÑʼnŔĻũĶŎ ņŕvŧڊ¢ŭƔŵƓŹƍŚaÀ<řśĵ ķŚĂîŀĂř€PōŌĽũćlřcŋũ ĂŀC¦ŕĺũŖŖŤřĵŎŪŬMĚŋũ,ğ}ŬÐʼnŐĂŭƔŵƓŹƍڊ¢ŖŎژ 9}ŚŽ"È£āŀ{ùŖŘũĶ ņŚŦļŘJĪ€čĿŧĵ›ċŕśſƓƘ¤ėŚĿŧģh1ř ŚĂîŬę-ʼnĵŎŚĂ îŀĂŋŞŁcĎ¹ŬĽŐ"řcŋũĂŀĵ)Ś ÛĜ.īřĽũuĦřœĻŔĵ Monte Carlo method[6][7]ŬÀĻŐŶƌƐƕƘŶƑƗřŦŒŔ.ŸŬõļĶšŐĵ ŚĂîŀĽ

ũœŚÍcĂ"ŕĺŒŔŤĵ)řĽũuĦśſƓƘ¤ėŚêťÍcĂ"ŎŚŤŚ Řŗ¥ķŘùNŕû`ňŪũņŖŀ ³ňŪũŐţĵStepwise method[8][9]ŬÀĻŔYĝMoƏƁ ƔřŦũ£āŬõļĶ

›ċڱ۪ʼnŔśĵšŌØ2 ÖřľĻŔ*ÈŘþۄ®ŬÑŋņŖřŦŒŔ T-method Ŭ. ĿŨťŋŃàŋũͧřØ3 Öŕśĵĺũ ŚĂîŀĽũĂŰűůƂř¯ËʼnŔĵņŪŀ )Ś ÛĜ.řĽũuĦŀſƓƘ¤ėřŦŒŔŗŚŦļřW<ŋũŚĿŬåþÈř.Ÿŋũ ņŖŬCðřŋũŐţŚĂġŽŬ`ìʼnĵſƓƘ¤ėŚř^QŋũĂũĂ" şŗ Û)řZŁŘuĦŬĽũņŖŬÑʼnŐĶŎʼnŔØ4 ÖŕśĵStepwise method ŬÀĻŐY ĝMoƏƁƔŬ¤ÞʼnĵĂ¹ŚŽŖſƓƘ¤ėŚƉƒƗŽŚŽŖģhŚĭňŚġŬÑʼnŐĶ —wřĵņŪŧŚä Ŭ—áÖŚØ5 ÖřľĻŔšŖţŐĶ

(2)

3

2.T-method による Algorithm

本節ではT-method について説明する。正確な解法の定義は文献[4]の第2 節にあるが、ここでは 本論を理解するために、単純なSample を使って異なる説明を行う。 Figure1.では𝑒𝑒𝑖𝑖(𝑖𝑖 = 1,2, … ,9)が評価者を表し、𝑝𝑝𝑗𝑗(𝑗𝑗 = 1,2, … ,10)を評価対象物として表す。各評 価者は、直下にある1本のブランチに対して、そのブランチ以下に繋がる評価対象物の中から1つ を選択し、相対評価を行う。例えば、評価者𝑒𝑒1は左のブランチによって、𝑒𝑒2に従属している {𝑝𝑝1, 𝑝𝑝2, 𝑝𝑝3, 𝑝𝑝4}から1つ。さらに右のブランチからは、𝑒𝑒3に従属している{𝑝𝑝5, 𝑝𝑝6, 𝑝𝑝7, 𝑝𝑝8, 𝑝𝑝9, 𝑝𝑝10}から1 つの評価対象物を選択し、相対評価値を与える。同様に評価者𝑒𝑒2は、左のブランチから𝑒𝑒4に従属 する{𝑝𝑝1, 𝑝𝑝2}から1つ、右のブランチから𝑒𝑒5に従属する{𝑝𝑝3, 𝑝𝑝4}から1つを選択し、それぞれに相対 評価値を与える。

Figure1. Sample Tree

Figure1.に示されるツリー構造における各評価者と評価対象物の選択肢の関係を以下に示す。 𝑒𝑒1: {{𝑝𝑝1, 𝑝𝑝2, 𝑝𝑝3, 𝑝𝑝4}, {𝑝𝑝5, 𝑝𝑝6, 𝑝𝑝7, 𝑝𝑝8, 𝑝𝑝9, 𝑝𝑝10}} 𝑒𝑒2: {{𝑝𝑝1, 𝑝𝑝2}, {𝑝𝑝3, 𝑝𝑝4}} 𝑒𝑒3: {{𝑝𝑝5}, {𝑝𝑝6, 𝑝𝑝7, 𝑝𝑝8, 𝑝𝑝9, 𝑝𝑝10}} 𝑒𝑒4: {{𝑝𝑝1}, {𝑝𝑝2}} 𝑒𝑒5: {{𝑝𝑝3}, {𝑝𝑝4}} 𝑒𝑒6: {{𝑝𝑝5}} 𝑒𝑒7: {{𝑝𝑝6, 𝑝𝑝7}, {𝑝𝑝8, 𝑝𝑝9, 𝑝𝑝10}} 𝑒𝑒8: {{𝑝𝑝6}, {𝑝𝑝7}} 𝑒𝑒9: {{𝑝𝑝8}, {𝑝𝑝9}, {𝑝𝑝10}} 評価者𝑒𝑒𝑖𝑖 が評価対象物𝑝𝑝𝑗𝑗に対して与える相対評価値を𝑣𝑣(𝑖𝑖,𝑗𝑗)とする。上の選択肢から各評価者 が選択した評価対象物をTable1.に示す。

(3)

4 Table 1.Evaluation table

Table1.では評価者が選択した評価物を表している。そこで、この評価物に対する評価値𝑣𝑣(𝑖𝑖,𝑗𝑗)に 従って評価対象物𝑝𝑝𝑖𝑖(𝑖𝑖 = 1,2, … ,10)に対する、予算配分𝑊𝑊 = (𝑤𝑤1, 𝑤𝑤2, … , 𝑤𝑤10)を求める演算を行う。 初めに、𝑝𝑝𝑖𝑖(𝑖𝑖 = 1,2, … ,10)に対して T-method のルール[1]に従い、それぞれの評価者が与える相 対評価値𝑣𝑣(𝑖𝑖,𝑗𝑗)から以下のようにウェイト

𝑖𝑖(𝑖𝑖 = 1,2, … ,10)を算出する。 𝑝𝑝1: 𝑠𝑠1= 𝑣𝑣(1,1) 𝑝𝑝2: 𝑠𝑠2=𝑣𝑣(1,1)𝑣𝑣 ∙ 𝑣𝑣(4,2) (4,1) 𝑝𝑝3: 𝑠𝑠3=𝑣𝑣(1,1)𝑣𝑣 ∙ 𝑣𝑣(2,3) (2,1) 𝑝𝑝4: 𝑠𝑠4=𝑣𝑣(1,1)𝑣𝑣 ∙ 𝑣𝑣(2,3)∙ 𝑣𝑣(5,4) (2,1)∙ 𝑣𝑣(5,3) 𝑝𝑝5: 𝑠𝑠5=𝑣𝑣(1,9)𝑣𝑣 ∙ 𝑣𝑣(9,8)∙ 𝑣𝑣(7,6)∙ 𝑣𝑣(8,7)∙ 𝑣𝑣(3,5) (9,9)∙ 𝑣𝑣(7,8)∙ 𝑣𝑣(8,6)∙ 𝑣𝑣(3,7) 𝑝𝑝6: 𝑠𝑠6=𝑣𝑣(1,9)𝑣𝑣 ∙ 𝑣𝑣(9,8)∙ 𝑣𝑣(7,6) (9,9)∙ 𝑣𝑣(7,8) 𝑝𝑝7: 𝑠𝑠7=𝑣𝑣(1,9)𝑣𝑣 ∙ 𝑣𝑣(9,8)∙ 𝑣𝑣(7,6)∙ 𝑣𝑣(8,7) (9,9)∙ 𝑣𝑣(7,8)∙ 𝑣𝑣(8,6) 𝑝𝑝8: 𝑠𝑠8=𝑣𝑣(1,9)𝑣𝑣 ∙ 𝑣𝑣(9,8) (9,9) 𝑝𝑝9: 𝑠𝑠9= 𝑣𝑣(1,9) 𝑝𝑝10: 𝑠𝑠10=𝑣𝑣(1,9)𝑣𝑣∙ 𝑣𝑣(9,10) (9,9) 次にS=∑10𝑗𝑗=1𝑠𝑠𝑗𝑗による正規化を行い以下に予算配分を決定する。 𝑤𝑤𝑗𝑗 =𝑠𝑠𝑆𝑆𝑗𝑗(𝑗𝑗 = 1,2, … ,10) 本章ではT-method により、多階層からなる 9 人の評価者が相対評価を 9 回行うことで予算配分 を行う例を紹介した。次章では新たなツリー構造を設定し、T-method における1人の評価者の評価 値の揺らぎが、全体の予算配分の変化に与える影響についてシミュレーションを行う。

(4)

5 3.  ŚĂŚW;ŀ)Ś ÛĜ.řĽũuĦ ›ÖŕśT-method ŚſƓƘřľńũģhŽŖƜœŚƅƘƃŀˆœƉƒƗŽŚŽř|ŊŔĵĸ ŚĂîŀĽũÍcĂŀ)Ś ÛĜ.řŗŚÓquĦŬĽũĿĹřœĻŔåþÈř. ŸŋũĶņņŕśĵſƓƘŬ! ℎ, ! ŖöŋĶℎśſƓƘŚģhŽŕĺŨĵ!śƜœŚƅƘƃŀˆœƉƒƗ ŽŚŽŕĺũĶ.Ÿ=ß<ŚŐţř)ŔŚƅƘƃŀˆœƉƒƗŽŬGŽŖ`ţũĶT-method ŕśƓ ƘƈXŚƅƘƃřcʼnŔĂîŬĜêʼnĵƓƘƈřś ÛĜ.ŚcĎ¹ŬĜêŋũĶņŚŖŁĂ îŚçŽś! = !!!!!!!!ŕĺũĶšŐĵĂcĎ¹ŚçŽś ! = !!!!ŕĺũĶĂîŚĥF Ŭ! = !! ! = 1,2, … , ! ŖŋũĶ 3.1į ġŽŚ`ìį į řĂîŀĻŘĻĂîśĵ! ŚĂcĎ¹řcʼnŔÍcĂ"ŬĽũĶšŐĵ řĂîŀĻũUFśĵŚEĂîřgŋũĂcĎ¹ĿŧƜœŬę…ʼnFþ! ŚÍcĂ "ŬĽũĶŘľĂcĎ¹ŀøŽ^QŋũUFśĵƜÆkŚĂcĎ¹ŬĂŋũƔƘ ƔŬĽũĶ! ℎ, ! řcŋũØ!ÆËŚĂîŀØ!ÆËŚĂcĎ¹řcʼnŔĽũÍcĂ "ś¥.nġŽ! !, ! = ! ! ≤ ! ≤ ! ŬÀĻŔ!!,! ~! 1.0,10.0 Ŗ`ŋũĶŬ3Š ŖʼnŔĂîřcŋũĂ"ŬƒƗżƍřĽ ÛĜ.ŬÛ-ŋũĶŎŚwĵ ŚĂîŬ† -ʼnĂ"ŬŐřĽ+q ÛĜ.ŬÛ-ŋũĶ 0ţř)ŔŚĂî! = !! ! = 1,2, … , ! ŀƔƘƔřxĻĵŎŪŏŪ! ŚĂcĎ¹řc ʼnŔÍcĂ"ŬĽũĶšŐĵ)ŔŚÍcĂ"Ŭ! = !!,! 1 ≤ ! ≤ !, 1 ≤ ! ≤ ! ŖŋũĶ ņņŕ‹ŧłŬĽũĂîŬEģhŚÆk×ĿŧƜ ę…ŋũĶņņŕę…ʼnŐĂîŬ !! ! = 1,2, … , ! ŖŋũŖŁĵ!!Ś!!řcŋũÍcĂ"Ŭ!!,! 1 ≤ ! ≤ ! ŖöŋĶ §ř‹ŧłŬĽũõ·ŖʼnŔĵĂî!!śĵñēŀę…ʼnŐĂcĎ¹!!řcʼnŔ+qŐ ŘÍcĂ"!′!,! ŬĽũĶņŚ”ĵĂî!!ŚĽŐÍcĂ"ŚWĞŬ!ŖʼnŔ`ìŋũĶ ! = !!,! !!′!,! ! ! !!!

§řĵ!Ŭ&ř T-method ĿŧyŧŪŐ ÛĜ.Ŭ! = !!, !!, … , !! ŖŋũĶ

šŐĵĂî!!ŀ!!,! Ŀŧ!′!,! ŝŖÍcĂ"Ŭ(Ū–ĽŐņŖřŦŒŔ)ŔŚÍcĂ"Ť !Ŀŧ!′řWūũĶ!′Ŭ&ř+q ÛĜ.ŬõŒŐä Ŭ!!= !′ !, !′!, … , !′! ŖŋũĶ ņŚ”Ś ÛĜ.ŚW<ĵœšŨ!Ŀŧ!′řcŋũ‹ŧłŚWĞŬř!ŖʼnŔ`ìŋũĶ ! = !− !′ ! ! !!! 3.2 ćlĞŚ‰`į į 3Üŕ`ìʼnŐ!, !řăõMŽ!ŬůƗƁžŲŸŖʼnŔĺŐĽũĶ›Üŕś3ÜřxĻ! 3,3 ƏƁ ƔřľĻŔĵ !!, !! ! = 1,2, … ,10000 ŬÛ-ŋũŶƌƐƕƘŶƑƗŬõļĶŘľĵ›ÏÕřľń ũĵŶƌƐƕƘŶƑƗśĵPython ƙver.3.8.5ƚřxŒŔŴƘƁŮƗųŬõŒŔĻũĶEƏŷƐƘƔś› ċšfŚAppendix Ŭ?¸ňŪŐĻĶŘľĵņņŕś T-method řľńũĂîś 1 ÆkŚĂ cĎ¹Ŭę…ŋũƔƘƔŬĽũĶšŐĵ‹ŧłŬĽũĂhƙLevel1ƚĵh ƙLevel2ƚĵhƙLevel3ƚŚk×Ŀŧę-ŋũ 3 ƆŻƘƗŕõļĶ

(5)

6 Figure 2. !!, !!  ŚnP ÍġŽśĻŌŪŤp<0.01 Ś«´ŕ˜€ŕĺŨĵLevel1 ĿŧĨř 0.87ĵ0.63ĵ0.51 ŖŘũĶ Figure2.Ś Leve1 Ŀŧśĵ!ŚWĞŀĭĻşŗ!Ś"ŤĭŃŘŒŔĻũņŖŀūĿũĶŎŚ‘ŕĵ Level2 ŚģhĿŧ Level3 ŚģhřŀũřʼnŐŀŒŔĵ!ŚWĞŀV7ŋũřœŪ!ŚWĞ řĽũuĦŀ²eʼnŔĻũņŖŀĉŢAŪũĶ

Figure 3.į Box plot řŦũ!Ś.n

ňŧřĵ!řľńũ.nŚ¥ÍŬĄʼnŃĊŞũŐţř Box plot Ŭ Figure3.řöŋĶBox plot ŕś. nŚ—d"ĵØ 1 L.¶ĵ["ĵØ 3 L.¶ĵ—Z"ŬúũņŖŀ-žũĶĻŌŪŚ Box plot řľĻŔŤĮŀğŃĺũŀĵ["ŀ Level1 ŕ 0.1067ĵæĻŔ Level2 ŀ 0.0684ĵLevel3 ŀ 0.0308 ŖŘŒŔľŨĵØ 1 L.¶ŖØ 3 L.¶ŚêĿŧŤĵ‹ŧłŬĽũĂîŚģhŀ

(6)

7 ŕĺũşŗĵWĞ!ĿŧYŃŚuĦŬBń!Ś.nŀĭŃŘŒŔĻũĶ ņŚŦļřģhŀřĺũĂîŚW<Ğ!Ś"śW<Ğ!řsĻuĦŬĽĵ)Ś Û Ĝ.ŚW<ĞŬŅŔĻũņŖŀ“ŧĿřŘŒŐĶ 4. )ŚćlĞŬ—dřŋũſƓƘ¤ėډ` 3Öŕś ŚĂîŚÍcĂ"ŬW<ňōŐŖŁĵĂîŚģhŀřĺũşŗ !, ! ŚÍġśsŃŘŨĵW<Ğ!Ś"ŀV7ŋũņŖŀ.ĿŒŐĶņņŕśģhŽŬ2 ≤ ℎ ≤ 6ĵšŐƉƒ ƗŽŚŽŬ2 ≤ ! ≤ 6ŖÝOŬĢ`ʼnŐ! ℎ, ! řcʼnŔĵStepwise method ŬÀĻŔYĝMoƏƁ ƔŬ¤ÞŋũĶņŪřŦŒŔG`ňŪũƏƁƔśĵĂcĎ¹ŀ2!= 4 Ŀŧ6!= 46656 šŕ ŬcĎŖŋũņŖŀŕŁũĶ! ℎ, ! řľĻŔ—hÆkŚĂîŚÍcĂ"ŬW<ňōĵ!Ś"ŬþÛŋũĶ *ÈŘ ℎ, ! ŚâŢFūōś 25 ĖŨĺũŚŕĵ ŎŪŏŪ ! = 1,2, …, 40000 ŚŶƌƐƕƘŶƑƗŬõĻĵ40,000 MIJ25 ĖŨ=1,000,000 MŚăõŬõļĶ

ņŪŧŚ1,000,000 âŚƁƘŻŬŤŖřĵStepwise method ŬÀĻŔYĝMoƏƁƔŬ¤ÞŋũĶ ›ƏƁƔŕśℎ, !ĵ Àħŕĺũℎ ∙ !ĿŧŘũ 3 œŚN]ŬĈ“WŽŖʼnŔÀ€ʼnŐĶ šŐĵËÈWŽŬW<Ğ!ŖʼnŐĶņŚŚŤŖřĵStepwise method ŬÀĻŔYĝMoƏƁƔ Ŭ¬ţũĶþÛŚä ŬTable2.řÑŋĶEN]Ś!"śĵĻŌŪŤ 0 ŖŘŨ 3 œŚN]ŀĵĻŌŪ Ť˜9ŕĺũņŖŀÑňŪŐĶ÷¨R2 Ś"ś 0.358ĵĝÍġ R Ś"ś 0.641 ŖĭĻĘF¼ŀÐĿ ţŧŪŐĶ

Table 2ƛStepwise method řŦũYĝMoƏƁƔ

Stepwise method řŦŒŔyŧŪŐYĝMoƏƁƔŬ§rřĽũĶ

= −0.0379ℎ − 0.0286! + 0.00194ℎ ∙ ! + 0.315 ℎ, ! Ś"ŀ’ÎŕĺũŖŁĵņŚĝMorŬļņŖřŦŒŔ—hřĻũ ŚĂîŚ Ă"ƁƘŻŚ‹ŧłřcŋũ!ŚW<ĞŬ ³ŋũņŖŀCðŖŘũĶ §řĵĂcĎ¹ŚçŽŬ!ĵſƓƘŚĭňŬℎŖʼnŐŖŁĵƉƒƗŽŚŽ! = !!!ŖöōũĶņŪŬ rř(ŋũņŖŕĂcĎ¹Ś Ž!ŖĵģhŚĭňℎŬWŽŖʼnŐġŽ   !, ℎ ŖŋũĶ    !, ℎ = −0.0379ℎ − 0.0286!!!+ 0.00194ℎ ∙ !!!+ 0.315 ņŪřŦŒŔĵĂcĎ¹Ś Žŀ!Ŗ­`ʼnŔĻũŖŁĵ2 ≤ ℎ ≤ 6ŚÝOřľĻŔ   !, ℎ Ŭ —dŖŋũℎŚ"Ŭę…ŋũņŖřŦŒŔĵ—hŚĂŧł!ŀ)Ś ÛĜ.řcʼn Ŕ—ŤuĦŬ@ŠňŘĻſƓƘ¤ėŬ­`ŋũņŖŀCðŖŘũĶ

(7)

8 ıİį šŖţ į į øŽŚcĎ¹řcʼnŔ ÛŬĜ.ŋũĂŚ‘®řœĻŔśĵņŪšŕś Analytic Hierarchy ProcessƙAHPƚ[10]Ɵ[14]ŀ%Òؑ®ŖʼnŔ°ÀňŪŔŁŐĶšŐĵAHP ŕśøŽŚĂîřŦũ‘ ®ŤÏÕňŪŔĻũ[15]ĶĻŌŪŚƏƁƔřľĻŔŤĵĂîŀĂcĎ¹ŬcªĔŋũņŖŕ ĂcĎ¹řcŋũĂ"ŬÛ-ŋũņŖřŘũĶʼnĿʼnŘŀŧĵAHP řśxžĿŧĂcĎ¹ Ś V 7 ř  Ļ ª Ĕ Ă  Ŭ õ ļ M Ž ŀ Ĭ Ē È ř V 7 ʼn Ŕ ʼn š ļ Ŗ Ļ ļ J Ī ŀ ĺ Œ Ő Ķ Ŏ Ś ¶ T-method śĵĂîŬſƓƘ¤ėřĜêʼnŔEĂîŀñēřgŋũƉƒƗŽŚŽőńĂŋ ŪŜŦŃĵĂřĿĿũŴŸƂڲřZĻřď»ʼnŔĻũĶʼnĿʼnŘŀŧĵ ŚĽũÍcĂ Ś"ŀ)Ś ÛĜ.řŗŚÓqŚuĦŬĽũĿřœĻŔŚý@śňŪŔĻŘĿŒŐĶ

Ŏņŕ›ċŕśĵºñŚĂġŽŬ2 œ`ìʼnĵMonte Carlo method ŬÀĻŐŶƌƐƕƘŶƑƗ řŦũ£āŬõŒŐĶä ŖʼnŔĵĂîŚĂ"ŚW;ŀƏƁƔŚģhřĺũşŗĵ Û )řĽũW;ŀZŁĻņŖŬ“ŧĿřʼnŐĶņŪśĵT-method řľńũĂŋŞŁſƓƘ¤ė řľńũĵŎŪŏŪŚģhŕĂîŚĂ"ŀĘ/ř ÛĜ.ňŪũŖĻļņŖŕĺŨĵâéřľ ńũîŚĐŚĝňŚŽĞ<ř‚6ʼnŐŖýĽũĶ §řĵ2 ≤ ! ≤ 62 ≤ ℎ ≤ 6ŖŘũÝOřľńũ! ℎ, ! Ŀŧĵ—ģhĿŧ ŚĂîŬ †-ʼnĵŎŚ‹ŧłŬ¬ţũŶƌƐƕƘŶƑƗŬõŒŐĶņņŕyŧŪŐ1,000,000 ŚƁƘŻźžƂĿŧ Stepwise method ŬÀĻŔĝÍġŚ R "ŀ 0.641 ŖŘũYĝMoƏƁƔŬyŐĶ ņŪřŦŒŔĵ T-method ŬÀĻũĤŚ—ŧłĿŧ¿Ŋũ)Ś ÛĜ.)řĽũuĦŬŽĞ< ʼnŔ ³ŋũņŖŬCðřʼnŐĶňŧřĵMoƏƁƔŬ¤ÞŋũņŖřŦŒŔĵĂcĎ¹Ś Žŀ VZʼnŐŖŁřĵT-method ŬÀĻũĤھÈŘƉƒƗŽŽŖģhŽŬ ³CðřʼnŐĶ wśĵ›ÏÕŬSÊŖʼnŐ,ğƒÅŬíbŋũŖŖŤřĵT-method ŬŦŨ½aÈŘƏƁƔřŋ ũŐţřĵŶƌƐƕƘŶƑƗř2ÀŋũŽġŽŚę…ťĵřĘʼnŐƏƁƔřcŋũíbŀ{ ùřŘũŖíĽũĶ Č ĕ ›ċŬRÙŋũřĺŐŒŔĵ5Z_ãK_ěį iÁ:'¿řśĵŽYŃŚ˜ÉŘŇ8ýŬđ ŨšʼnŐĶņŚUŬľ!ŨʼnšʼnŔĵzŦŨČŚ€ŬöʼnšŋĶ

(8)

9

? í  »

[1] Melkers, J.; Willoughby, K. Models of Performance-Measurement Use in Local Governments: Understanding Budgeting, Communication, and Lasting Effects. Publ. Adm. Rev. 2005, 65, 180-190.

[2] Mousavi-Nasab, S.; Safari, J.; Hafezalkotob, A. Resource allocation based on overall equipment effectiveness using cooperative game. Int. J. Cybern. Syst. Manag. Sci. 2019, 49, 819-834.

[3] Nasseri, S.H.; Baghban1, A.; Mahdavi, I. A new approach for solving fuzzy multi-objective quadratic programming of water resource allocation problem. J. Ind. Eng. Manag. 2019, 6, 78-102.

[4] Oyamaguchi, N.; Tajima, H.; Okada, I. Model of Multi-branch Trees for Efficient Resource Allocation. Algorithms 2020, 13, 55.

[5] Oyamaguchi, N.; Tajima, H.; Okada, I. Tournament Method Using a Tree Structure to Resolve Budget Conicts. In Intelligent Decision Technologies 2019, Smart Innovation, Systems and Technologies, vol193; Springer, Singapore, 2020, 525-532.

[6] Cameron.B Edward P, Daniel W, Simon L, Peter I. C, Philipp R,Stephen Tavener, Diego Perez, Spyridon Samothrakis and Simon Colton A Survey of Monte Carlo Tree Search Methods IEEE TRANSACTIONS ON COMPUTATIONAL INTELLIGENCE AND AI IN GAMES, VOL. 4, NO. 1, MARCH, 2012,1-43

[7] Robert S.; Jian-Sheng W., Nonuniversal Critical Dynamics in Monte Carlo Simulation, Physical Review Letters 58(2),February 1987,86-88

[8] Bruce T. Stepwise Regression and Stepwise Discriminant Analysis Need Not Apply here: A Guidelines Editorial Educational and Psychological Measurement Volume: 55 issue: 4, 1995, 525-534

[9] Michael C.; A. Afifi, Comparison of Stopping Rules in Forward Stepwise Discriminant Analysis, Journal of the American Statistical Association, Vol. 74, No. 368. Dec., 1979, pp. 777-785.

[10] Thomas L. Saaty Decision making with the analytic hierarchy process Int. J. Services Sciences, Vol. 1, No. 1, 2008, 83-98

[11] JOSÉ A.,TERESA L. CONSISTENCY IN THE ANALYTIC HIERARCHY PROCESS:A NEW APPROACH, International Journal of Uncertainty, Fuzziness and Knowledge-Based Systems Vol. 14, No. 4, 2006, 445-459

[12] Thomas L. Saaty How to make a decision:The Analytic Hierarchy Process, European Journal of Operational Research 48, 1990, 9-26

[13] Jiří F.Aleš K. Judgment scales and consistency measure in AHP, ScienceDirect Procedia Economics and Finance 12 , 2014 , 164- 173

[14] Evangelos T.,Stuart H. M. USING THE ANALYTIC HIERARCHY PROCESS FOR DECISION MAKING IN ENGINEERING APPLICATIONS: SOME CHALLENGES,Inter’l, Journal of Industrial Engineering: Applications and Practice, Vol. 2, No. 1, 1995, 35-44 [15] María Teresa Escobar & José María Moreno-jiménez Aggregation of Individual Preference

Structures in Ahp-Group Decision Making Group Decision and Negotiation volume 16, 2007, 287-301

9 [1] Melkers, J.; Willoughby, K. Models of Performance-Measurement Use in Local Governments:

Understanding Budgeting, Communication, and Lasting Effects. Publ. Adm. Rev. 2005, 65, 180-190.

[2] Mousavi-Nasab, S.; Safari, J.; Hafezalkotob, A. Resource allocation based on overall equipment effectiveness using cooperative game. Int. J. Cybern. Syst. Manag. Sci. 2019, 49, 819-834.

[3] Nasseri, S.H.; Baghban1, A.; Mahdavi, I. A new approach for solving fuzzy multi-objective quadratic programming of water resource allocation problem. J. Ind. Eng. Manag. 2019, 6, 78-102.

[4] Oyamaguchi, N.; Tajima, H.; Okada, I. Model of Multi-branch Trees for Efficient Resource Allocation. Algorithms 2020, 13, 55.

[5] Oyamaguchi, N.; Tajima, H.; Okada, I. Tournament Method Using a Tree Structure to Resolve Budget Conicts. In Intelligent Decision Technologies 2019, Smart Innovation, Systems and Technologies, vol193; Springer, Singapore, 2020, 525-532.

[6] Cameron.B Edward P, Daniel W, Simon L, Peter I. C, Philipp R,Stephen Tavener, Diego Perez, Spyridon Samothrakis and Simon Colton A Survey of Monte Carlo Tree Search Methods IEEE TRANSACTIONS ON COMPUTATIONAL INTELLIGENCE AND AI IN GAMES, VOL. 4, NO. 1, MARCH, 2012,1-43

[7] Robert S.; Jian-Sheng W., Nonuniversal Critical Dynamics in Monte Carlo Simulation, Physical Review Letters 58(2),February 1987,86-88

[8] Bruce T. Stepwise Regression and Stepwise Discriminant Analysis Need Not Apply here: A Guidelines Editorial Educational and Psychological Measurement Volume: 55 issue: 4, 1995, 525-534

[9] Michael C.; A. Afifi, Comparison of Stopping Rules in Forward Stepwise Discriminant Analysis, Journal of the American Statistical Association, Vol. 74, No. 368. Dec., 1979, pp. 777-785.

[10] Thomas L. Saaty Decision making with the analytic hierarchy process Int. J. Services Sciences, Vol. 1, No. 1, 2008, 83-98

[11] JOSÉ A.,TERESA L. CONSISTENCY IN THE ANALYTIC HIERARCHY PROCESS:A NEW APPROACH, International Journal of Uncertainty, Fuzziness and Knowledge-Based Systems Vol. 14, No. 4, 2006, 445-459

[12] Thomas L. Saaty How to make a decision:The Analytic Hierarchy Process, European Journal of Operational Research 48, 1990, 9-26

[13] Jiří F.Aleš K. Judgment scales and consistency measure in AHP, ScienceDirect Procedia Economics and Finance 12 , 2014 , 164- 173

[14] Evangelos T.,Stuart H. M. USING THE ANALYTIC HIERARCHY PROCESS FOR DECISION MAKING IN ENGINEERING APPLICATIONS: SOME CHALLENGES,Inter’l, Journal of Industrial Engineering: Applications and Practice, Vol. 2, No. 1, 1995, 35-44 [15] María Teresa Escobar & José María Moreno-jiménez Aggregation of Individual Preference

Structures in Ahp-Group Decision Making Group Decision and Negotiation volume 16, 2007, 287-301

(9)

10

Appendix : Simulation code A using Python (

Python ver.3.8.5) import numpy as np import pandas as pd import random as r r.seed(2) import matplotlib.pyplot as plt import seaborn as sns class Global(): const = {

'level' : 3, # No. levels of a tree

'branch': 3, # No. branches in each assessor 'N' :10000, # No. trials

}

def calError(org,rev): n = float(len(org)) total = 0.

for ele1,ele2 in zip(org,rev): total += (ele2 - ele1) ** 2 tt=total**0.5 return tt def makeOnes(): branch = Global.const['branch'] tmp = [] for b in range(branch): tmp.append(r.uniform(1.,10.)) total = sum(tmp) vOne = [] for ele in tmp: vOne.append(ele/total) return vOne

(10)

11 def makeData(): level = Global.const['level'] branch = Global.const['branch'] vAll = [] for l in range(level): assessors = branch ** l vLevel = []

for assessor in range(assessors): vLevel.append(makeOnes()) vAll.append(vLevel) return(vAll) def makeRev(data,target): level = Global.const['level'] branch = Global.const['branch'] rev = []

for ele1 in data: rev2 = []

for ele2 in ele1: rev3 = []

for ele3 in ele2:

rev3.append(ele3) rev2.append(rev3) rev.append(rev2) rev[target][0] = makeOnes() alpha = calError(data[target][0],rev[target][0]) return rev,alpha def calWeight(value): level = Global.const['level'] branch = Global.const['branch'] num = branch ** level

weight = [0. for i in range(num)] for b in range(branch):

(11)

12 for l in range(1,level):

for n in range(branch ** l):

p = n * (branch ** (level - l)) q = branch ** (level - l - 1) for pos in range(1,branch):

weight[p+q*pos] = weight[p] * value[l][n][pos] / value[l][n][0] total = sum(weight)

ans = []

for ele in weight:

ans.append(ele / total) return ans ######################## if __name__ == "__main__": N = Global.const['N'] Level = Global.const['level'] Branch = Global.const['branch'] fig=plt.figure(figsize=(10,3), dpi=150) dataBP = []

for level in range(Level):

plt.subplot(1,Level,level+1) #plt.ylim(-.001,.5) #plt.xlim(-.001,1.0) X = [] Y = [] for i in range(N): orgData = makeData()

revData, alpha = makeRev(orgData,level) X.append(alpha)

Y.append(calError(calWeight(orgData),calWeight(revData))) dataBP.append(Y)

(12)

13

coef = np.corrcoef(X, Y) # Find the correlation coefficient print(coef) print("---") plt.scatter(X,Y,marker="x") plt.title('Level = ' + str(level+1),fontsize=10) plt.grid(True)

plt.savefig('Fig1.png', format='png', dpi=150) plt.show()

plt.boxplot(dataBP, labels=range(Level), whis="range") plt.savefig('Fig2a.png', format='png', dpi=150)

plt.show()

plt.violinplot(dataBP,showmeans=False,showmedians=True) plt.savefig('Fig2b.png', format='png', dpi=150)

plt.show() a=np.array(dataBP) print(a) print("---") l1=np.median(a[0]) l2=np.median(a[1]) l3=np.median(a[2]) print(l1,l2,l3) print("---") f = open('test.txt', 'w') for i in range(10000): strs=str(X[i])+'\t'+str(a[0,i])+'\t'+str(a[1,i])+'\t'+str(a[2][i])+'\n' f.writelines(strs) f.close()

(13)

14

Appendix : Simulation code B using Python (

Python ver.3.8.5) import pandas as pd import numpy as np import random as r import matplotlib.pyplot as plt r.seed(2) level_min,level_max=2,6 branch_min,branch_max=2,6 number_trials=40000 f = open('dataBP_6x6(40000(seed2)).txt', 'w') f.writelines('L_size'+'\t'+'B_size'+'\t'+'level'+'\t'+'dataBP[i]'+'\n') print('L_size','\t','B_size','\t','level')

for level_size in range(level_min,level_max+1): const = {}

const['N']=number_trials # No. trials

const['level']=level_size # No. levels of a tree for branch_size in range(branch_min,branch_max+1):

const['branch']=branch_size # No. branches in each assessor def calError(org,rev):

n = float(len(org)) total = 0.

for ele1,ele2 in zip(org,rev): total += (ele2 - ele1) ** 2 tt=(total)**0.5/n return tt def makeOnes(): branch = const['branch'] tmp = [] for b in range(branch): tmp.append(r.uniform(1.,10.)) total = sum(tmp) vOne = [] for ele in tmp:

(14)

15 vOne.append(ele/total) return vOne def makeData(): level = const['level'] branch = const['branch'] vAll = [] for l in range(level): assessors = branch ** l vLevel = []

for assessor in range(assessors): vLevel.append(makeOnes()) vAll.append(vLevel) return(vAll) def makeRev(data,target): level = const['level'] branch = const['branch'] rev = []

for ele1 in data: rev2 = []

for ele2 in ele1: rev3 = [] for ele3 in ele2:

rev3.append(ele3) rev2.append(rev3) rev.append(rev2) rev[target][0] = makeOnes() alpha = calError(data[target][0],rev[target][0]) return rev,alpha def calWeight(value): level = const['level'] branch = const['branch'] num = branch ** level

weight = [0. for i in range(num)] for b in range(branch):

(15)

16 weight[b * (branch ** (level - 1))] = value[0][0][b]

for l in range(1,level):

for n in range(branch ** l): p = n * (branch ** (level - l)) q = branch ** (level - l - 1) for pos in range(1,branch):

weight[p+q*pos] = weight[p] * value[l][n][pos] / value[l][n][0] total = sum(weight)

ans = []

for ele in weight:

ans.append(ele / total) return ans N = const['N'] Level = const['level'] Branch = const['branch'] dataBP = []

for level in range(1): X = []

Y = []

for i in range(N):

orgData = makeData()

revData, alpha = makeRev(orgData,level) X.append(alpha) Y.append(calError(calWeight(orgData),calWeight(revData))) dataBP.append(Y) for i in range(1): print(level_size,'\t',branch_size,'\t',i+1,'\n',dataBP[i],'\n') print(level_size,'\t',branch_size,'\t',i+1,'\n') for j in range(number_trials): strs=str(level_size)+'\t'+str(branch_size)+'\t'+str(i+1)+'\t'+str(dataBP[i][j])+'\n' f.writelines(strs) f.close() □

(16)

Figure 3. į Box plot řŦũ ! Ś . n
Table 2 ƛ Stepwise method ř ŦũY ĝ M o Ə Ɓ Ɣ

参照

関連したドキュメント

トリガーを 1%とする、デジタル・オプションの価格設定を算出している。具体的には、クー ポン 1.00%の固定利付債の価格 94 円 83.5 銭に合わせて、パー発行になるように、オプション

本稿で取り上げる関西社会経済研究所の自治 体評価では、 以上のような観点を踏まえて評価 を試みている。 関西社会経済研究所は、 年

項目 評価条件 最確条件 評価設定の考え方 運転員等操作時間に与える影響 評価項目パラメータに与える影響. 原子炉初期温度

検討対象は、 RCCV とする。比較する応答結果については、応力に与える影響を概略的 に評価するために適していると考えられる変位とする。

★分割によりその調査手法や評価が全体を対象とした 場合と変わることがないように調査計画を立案する必要 がある。..

具体的な取組の 状況とその効果