ahp.harker {ahpsurvey}R Documentation

Replace inconsistent pairwise comparisons


Based on the matrix derived from ahp.error, replaces the top n number of inconsistent pairwise comparisons with a value calculated by from the method in Harker (1987). While there are strong arguments against replacing inconsistent values without the decision-maker's consent for the sake of satisfying the consistency ratio criterion of consistency ratio < 0.1 (see Saaty and Tran (2007)), it is often not possible for enumerators to ask respondents to change their answers based on consistency, whereas truncating inconsistent decisions may make the dataset unrepresentative of the population. Researchers should think carefully and explain fully the methods used to process AHP data, and whenever possible, use a lower number of iterations.


  round = FALSE,
  limit = FALSE,
  iterations = 1,
  stopcr = 0,
  printiter = TRUE



A list of pairwise comparison matrices of each decision maker generated by ahp.mat.


A list of attributes in the correct order


Rounds the imputation values of the matrix to the nearest integer if TRUE. Defaults to FALSE.


If set to TRUE, if the imputation value is larger than 9 or smaller than 1/9, the value is converted to 9 and 1/9 respectively. Defaults to FALSE.


The number of comparisons with the highest inconsistency to be changed. For example, if iterations = 3, ahp.harker changes the first, second, and third most inconsistent pairwise comparisons using that method. Defaults to 1.


The stopping Consistency Ratio, which was calculated by ahp.cr. Complements iter by giving iterations a criteria to stop when a matrix is sufficiently consistent. The function will continue looping and replacing more elements of the pairwise comparison matrices until the consistency ratio of the new matrix is lower than stopcr, or the maximum number of iterations is reached, and will stop and move onto the next individual. When stopcr is set, the number of replaced elements will differ among each decision-maker. Defaults to 0 (i.e. the loop will not be stopped unless iterations is reached)


Whether the number of iterations taken for each pairwise matrix is reported or not. If printiter = TRUE, it prints out the final number of iterations that each individual decision-maker took to reach a value lower than stopcr. Generally it is not needed if stopcr is not specified. When stopcr is specified, this is a good way of identifying how many pairwise comparisons are actually replaced by the algorithm for each decision maker. Defaults to TRUE.


A list of matrices with values replaced with consistent values.


Frankie Cho


Harker P (1987). “Incomplete pairwise comparisons in the analytic hierarchy process.” Mathematical Modelling, 9(11), 837 - 848. ISSN 0270-0255, http://www.sciencedirect.com/science/article/pii/0270025587905033.

Saaty TL, Tran LT (2007). “On the invalidity of fuzzifying numerical judgments in the Analytic Hierarchy Process.” Mathematical and Computer Modelling, 46(7), 962 - 975. ISSN 0895-7177, Decision Making with the Analytic Hierarchy Process and the Analytic Network Process, http://www.sciencedirect.com/science/article/pii/S0895717707000787.

See Also

ahp.error ahp.cr


atts <- c('cult', 'fam', 'house', 'jobs', 'trans')


cityahp <- ahp.mat(city200, atts, negconvert = TRUE)
ahp.harker(cityahp, atts)

[Package ahpsurvey version 0.4.1 Index]