Input is a matrix. Output is a true or false statement (1 or 0). Return true if input is a valid Analytic Hierarchy Process evaluation matrix.
In a valid AHP matrix;
- All diagonal elements should be 1
- Lower triangular part should be element-wise reciprocals of upper triangular part
- Square matrix
For example
[ 1 2
1/2 1] - > True [1 5
2 1 ] - > False[1 5 1/5 2] - > False
Note: See test suite 19 for what is asked about rounding
Solution Stats
Problem Comments
3 Comments
Solution Comments
Show comments
Loading...
Problem Recent Solvers137
Suggested Problems
-
Remove any row in which a NaN appears
8771 Solvers
-
630 Solvers
-
Numbers with prime factors 2, 3 and 5.
682 Solvers
-
434 Solvers
-
Convert a Cell Array into an Array
2199 Solvers
More from this Author92
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
Hello, Mehmet OZC. Could you please clarify the requirement "Lower triangular part should be inverse of upper triangular part"? This seems to require that lowerTriangular{input} = inverse{ upperTriangular{input} }. However, that appears to be impossible (except for an identity matrix), as the result of taking that inverse will itself be upper triangular. http://mathworld.wolfram.com/MatrixInverse.html . —DIV
it should be an element-wise inverse operation. For example a(3,2)=1/a(2,3) . Inverse operation with scalar values not with a matrix.
You can also search for "Understanding the Analytic Hierarchy Process"
OK. I've had a quick look at https://doi.org/10.1007/978-3-319-33861-3_2 . On page 10 they clarify that elements a(x,y) and a(y,x) must be the _reciprocal_ of one another. So that's fine. But I haven't encountered a description of such a relation as "element-wise inverse" — is it an expression commonly used in that field?