For the distance
calculations of the Technique for Order of Preference by Similarity to Ideal
Solution (TOPSIS) algorithm to be valid, all objectives must be
normalized to be in the same range of values. The final weight
factors are applied to each
objective value when making distance calculations and then
comparing alternatives.
TOPSIS does the following to calculate the overall score for each data point:
- The thresholds for each parameter are evaluated. If the priority of a parameter is MH (must have) but its value falls outside the thresholds, the data point is given a score of 0.0, regardless of the objective values.
- Results Analytics calculates the raw object value for each parameter with an objective, using the "higher" = "better" formulation:
- If the objective is to minimize a parameter,
- If the objective is to maximize a parameter,
- If the objective is a target value of a parameter,
- The scaled parameter objective values are calculated by scaling the raw objective values to be between 1 and 100.
- The normalized objective value is calculated from normalizing each objective value with the square root of the sum of the squares for that column:
- The normalized and weighted objective value is calculated by applying the final weight factor to each normalized objective:
- For each objective parameter (column in the data table), min and max normalized and
weighted objective values are determined; these values form the
Positive Ideal Point (maximum objective values), and the Negative
Ideal Point (minimum objective values).
- For each objective value (calculated in Step 5), the single axis
distances from the Positive and Negative Ideal Points are
calculated, and then squared:
- For each data point (row in the data table), the Euclidian distances from the
Positive and Negative Ideal Points are calculated as the square
root of the sums and :
- The TOPSIS raw score for each data point is calculated as:
- Results Analytics calculates the overall score by scaling the TOPSIS raw scores to fall between 1 and 100. The overall score of each data point also becomes the score of the
top level (root) parameter group.
- For each parameter group other than the top level parameter group, Results Analytics calculates the score from the sum of scores of all sub-groups and
parameters. Results Analytics does not scale the group scores; it calculates the score from the sum of
all the child scores.