Skip to main content

A Method to Infer AHP Missing Pairwise Comparisons

Project description

pyMissingAHP

Introduction

The multi-criteria technique Analytic Hierarchy Process (AHP) needs a complete Pairwise Comparison Matrix (PCM) to generate results. With an incomplete PCM, our algorithm can infer the best (continuous or discrete) values to complete the missing data. The values can be calculated based on the minimum inconsistency (f0), target rank preservation (f1), or both (f0_f1). The target rank preservation can be total (when all criteria are ranked) or partial (when only a set of criteria are ranked). We also allow ties in ranks (criteria with the same rank). For small problems with discrete scale, we offer a brute force method that can find all available solutions.

It's worth noting that our implementation can deal with AHP and Fuzzy AHP. The Fuzzy AHP needs a fuzzy triangular scale to work, and although the user can define his scale, we have implemented a default fuzzy triangular scale that can be used in most problems:

Crisp Number Fuzzy Number
1/9 (1/9, 1/9, 1/9)
1/8 (1/9, 1/8, 1/7)
1/7 (1/8, 1/7, 1/6)
1/6 (1/7, 1/6, 1/5)
1/5 (1/6, 1/5, 1/4)
1/4 (1/5, 1/4, 1/3)
1/3 (1/4, 1/3, 1/2)
1/2 (1/3, 1/2, 1)
1 ( 1, 1, 1)
2 ( 1, 2, 3)
3 ( 2, 3, 4)
4 ( 3, 4, 5)
5 ( 4, 5, 6)
6 ( 5, 6, 7)
7 ( 6, 7, 8)
8 ( 7, 8, 9)
9 ( 9, 9, 9)

Citation

HEYMANN, M.C., PEREIRA, V. & CAIADO, R.G.G. (2023). PyMissingAHP: An Evolutionary Algorithm for Filling Missing Values in Incomplete Pairwise Comparisons Matrices with Real or Fuzzy Numbers via Mono and Multiobjective Approaches. Arabian Journal for Science and Engineering. DOI: https://doi.org/10.1007/s13369-023-08227-4

Usage

  1. Install
pip install pyMissingAHP
  1. Try it in Colab:

Single Objective AHP:

  • Example 1a - (AHP; f0; Discrete): ( Colab Demo )
  • Example 1b - (AHP; f0; Continuous): ( Colab Demo )
  • Example 1c - (AHP; f1; Discrete; Different Rank Positions): ( Colab Demo )
  • Example 1d - (AHP; f1; Continuous; Different Rank Positions): ( Colab Demo )
  • Example 1e - (AHP; f1; Discrete; Same Rank Positions): ( Colab Demo )
  • Example 1f - (AHP; f1; Continuous; Same Rank Positions): ( Colab Demo )
  • Example 1g - (AHP; f1; Discrete; Partial Rank Positions): ( Colab Demo )
  • Example 1h - (AHP; f1; Continuous; Partial Rank Positions): ( Colab Demo )
  • Example 1 - Brute Force - (AHP; Discrete): ( Colab Demo )

Single Objective Fuzzy AHP:

  • Example 2a - (Fuzzy AHP; f0; Discrete): ( Colab Demo )
  • Example 2b - (Fuzzy AHP; f1; Discrete): ( Colab Demo )
  • Example 2c - (Fuzzy AHP; f0; Discrete; Custom Fuzzy Scale): ( Colab Demo )
  • Example 2d - (Fuzzy AHP; f1; Discrete; Custom Fuzzy Scale): ( Colab Demo )
  • Example 2 - Brute Force - (Fuzzy AHP; Discrete): ( Colab Demo )

Multiobjective AHP:

Multiobjective Fuzzy AHP:

  • Example 4a - (Fuzzy AHP; f0 & f1; Discrete): ( Colab Demo )
  • Example 4b - (Fuzzy AHP; f0 & f1; Discrete; Custom Fuzzy Scale): ( Colab Demo )
  1. Others
  • pyDecision - A library for many MCDA methods
  • 3MOAHP - Inconsistency Reduction Technique for AHP and Fuzzy-AHP Methods
  • ELECTRE-Tree - Algorithm to infer the ELECTRE Tri-B method parameters
  • Ranking-Trees - Algorithm to infer the ELECTRE II, III, IV and PROMETHEE I, II, III, IV method parameters

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyMissingAHP-1.1.7.tar.gz (16.5 kB view details)

Uploaded Source

Built Distribution

pyMissingAHP-1.1.7-py3-none-any.whl (17.1 kB view details)

Uploaded Python 3

File details

Details for the file pyMissingAHP-1.1.7.tar.gz.

File metadata

  • Download URL: pyMissingAHP-1.1.7.tar.gz
  • Upload date:
  • Size: 16.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.28.1 requests-toolbelt/0.9.1 urllib3/1.25.11 tqdm/4.64.1 importlib-metadata/4.11.3 keyring/23.4.0 rfc3986/2.0.0 colorama/0.4.6 CPython/3.7.6

File hashes

Hashes for pyMissingAHP-1.1.7.tar.gz
Algorithm Hash digest
SHA256 d2eaa01ac301a9a59036e124f6e6e51029af10c297cb1729e2009d338844375f
MD5 a53441192b8bd3a1d8a03d4d6ec05180
BLAKE2b-256 b9557a0ed900347e5c3d6d45834b67f546936e7cd512a4155b6ac28e810510a1

See more details on using hashes here.

File details

Details for the file pyMissingAHP-1.1.7-py3-none-any.whl.

File metadata

  • Download URL: pyMissingAHP-1.1.7-py3-none-any.whl
  • Upload date:
  • Size: 17.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.28.1 requests-toolbelt/0.9.1 urllib3/1.25.11 tqdm/4.64.1 importlib-metadata/4.11.3 keyring/23.4.0 rfc3986/2.0.0 colorama/0.4.6 CPython/3.7.6

File hashes

Hashes for pyMissingAHP-1.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 6f073e4d333a8d44e3c96fc2fccf4878e3375fedf4b67e437b0c5371a6193e32
MD5 df80dafa4863dccf0a160e7d0e9fa33f
BLAKE2b-256 2fb56c2f44e00cbb627910ac24f878c25a9d6de38de3620ae0fff042e4e2411b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page