gluc / ahp

Analytical Hierarchy Process (AHP) with R
97 stars 41 forks source link

Add Ideal Mode AHP Option #12

Open mestinso opened 7 years ago

mestinso commented 7 years ago

Currently, the distributive mode AHP is used for priority calculations. I would suggest adding the ideal mode AHP as an additional option. It's a strong alternative approach that has many worthwhile advantages, such as preventing rank reversal. This way, the user had the option of allowing/preventing rank reversal as desired.

gluc commented 7 years ago

Very open for pull requests!

mestinso commented 7 years ago

I wouldn't mind implementing this one, but I am unsure where in the code this change would be exactly. I can make the calculations by hand. For example, if this is the result from the standard distributive mode: image Then the only thing that would change in ideal mode is the final suitable leader result: (48.1, 38.5, 13.5) --> (48.3, 36.2, 15.5).

I would note that this is a potentially awkward scenario since the column sums no longer equal the value in the suitable leader row, but I don't have a suggested solution for that at this time

mestinso commented 7 years ago

Ok, I did a little brainstorming on how I think things should look. Here is my proposal: My thinking is there is another setting would be added called "AHP Mode" with two settings: "Distributive" and "Ideal". Then the "Variable" setting should be revised. Instead of "Variable", I would call it "Priority Display" with "Global" and "Local" as the options. Global is basically the same as your "Total Contribution" option and local is nearly like your "Priority" option. In total there would be 4 main display options: Distributive-Global, Distributive-Local, Ideal-Global, Ideal-Local. Then the analysis and results would look like the following for the suitable leader example:

image

Unsure of where the "Normalized priorities" for the ideal mode should be placed. Arguably, the non-normalized priorities are more fundamental for ideal mode, so I would prioritize the placement of the non-normalized priorities if anything.

Thoughts?

gluc commented 7 years ago

Sorry for the slow response, I'm currently on vacation. Regarding the options, that's certainly fine. Not so sure about where to put the Normalized. I can see the following options: a.) put them in parenthesis after each value, e.g. for Dick: 76.9% (48.3%) b.) add an additional row, e.g. "Choose the Most Suitable Leader (normalized)" c.) add an additional mode, namely "Distributive", "Ideal", "Ideal-Normalized"

Maybe you'll find even another option. I have no strong preferences, I tend to form preferences by using actual examples, so I trust you on this. Thx!

sbmack commented 5 years ago

Currently, the distributive mode AHP is used for priority calculations. I would suggest adding the ideal mode AHP as an additional option. It's a strong alternative approach that has many worthwhile advantages, such as preventing rank reversal. This way, the user had the option of allowing/preventing rank reversal as desired.

Has this been implemented? The original AHP (distributive mode) that permits rank reversal is flawed in 98% of the applications in which it is used. Even if rank is not actually reversed, similarities among alternatives will improperly skew their relative attractiveness using the distributive pairwise calculations.