Most of the matrices produce similar results with LAPACK dgeev and power
method J-implementation proposed by Mr. John Randall.
However, few of the AHP matrices have LAPACK-produced eigenvector
half-negative (e.g. _0.685 0.406 _0.414 0.310 0.331 0.043).
Could someone provide a hint what could be the logical meaning behind
this? How should one normalize such weight-lists?
Anyway, to the point.
Following example demonstrates a matrice where powermethod and LAPACK
dgeev give very different results.
Am I missing something?
Ahti.
require jpath '~addons\lapack\lapack.ijs'
require jpath '~addons\lapack\dgeev.ijs'
NB. The power method for calculating the principal eigenvector
mp=:+/ . *
normalize=:%(>./@:|)
iterate=:normalize@:mp
init=:[: ? # # 0:
power=:13 : 'y.&iterate^:_ init y.'
m2=: 6 6$1,(%6),(%5),6,(%2),(%2),6 1,(%8),5 4,(%8),5 8
1,(%7),4,(%8),(%6),(%5),7 1 6,(%4),2,(%4),(%4),(%6),1 7 2 8 8 4,(%7),1
m2
1 0.166667 0.2 6 0.5 0.5
6 1 0.125 5 4 0.125
5 8 1 0.142857 4 0.125
0.166667 0.2 7 1 6 0.25
2 0.25 0.25 0.166667 1 7
2 8 8 4 0.142857 1
]v=:{."1 (2{::dgeev_jlapack_ m2) NB. LAPACK right eigenvector
_0.675103 0.40594 _0.414364 0.309959 0.331358 0.043336
\:v NB. Order
1 4 3 5 2 0
]p=:power m2
0.362889 0.592327 0.676923 0.647377 0.601319 1
\:p NB. Order
5 2 3 4 1 0
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm