Proceso de Analisis de Jerarquias
Enviado por Claure7410 • 27 de Febrero de 2019 • Informe • 847 Palabras (4 Páginas) • 95 Visitas
UNIVERSIDAD CATOLICA BOLIVIANA
UNIDAD ACADEMICA REGIONAL COCHABAMBA
Departamento de Ciencias Exactas e Ingeniería
Carrera de Ingeniería Industrial
[pic 1]
Elaboración de un código en Matlab para Proceso de Jerarquía Analítica (AHP)
Leonardo Fanor Claure García
Marco Antonio Cueto Daza
Cochabamba – Bolivia
Junio Del 2018
Proceso de jerarquía analítica.
El AHP esta diseñado para resolver problemas complejos de decisión de multicriterios. Este AHP requiere que el usuario que tomara las decisiones provea juicios acerca de la importancia relativa de cada criterio para luego especificar una preferencia para cada alternativa de decisión usando cada criterio. La salida del AHP es una clasificación ordenada por prioridades de las alternativas de decisión, basada en las preferencias globales expresadas por el usuario que tomara las decisiones.
El código realizado en Matlab es específicamente para un solo criterio de acuerdo al pedido por el docente encargado de la materia de Investigación Operativa II.
A continuación, se mostrará el código completo con las respectivas explicaciones de las funciones que realiza cada parte del código.
function ingmat
clear;
clc;
%Generación de la matriz con m filas y n columnas para posteriormente ingresar valores de la llamada “Matriz de comparación de pares”, Los valores se ingresan por filas es decir de izquierda a derecha hasta llenar la fila y pasar a la fila siguiente.
%Tomar en cuenta que esta matriz debe ser llenada con ayuda de la escala de comparación.
fprintf ('Ingrese una matriz A \n\n')
m=input('Ingrese el numero de filas de la matriz \n');
n=input('Ingrese el numero de columnas de la matriz \n');
for i=1:m
for j=1:n
disp(['Introduzca el elemento con coordenadas (',num2str(i),',',num2str(j),')'])
A(i,j)=input(' ');
end
end
disp('La matriz A es:')
%Generación de la matriz normalizada; esta parte de código primero realiza la suma entre columnas para luego dividir el valor de la suma de cada columna, con cada valor de cada columna y poder generar la matriz normalizada.
Sumac=0
for j=1:m
for i=1:n
Sumac=Sumac+A(i,j);
end
total(1,j)=Sumac
Sumac=0
end
for i=1:m
for j=1:n
Anorm(i,j)=A(i,j)/total(1,j);
end
end
Prio=0
%Generación del vector de prioridad del criterio, esta parte del código nos saca el promedio de cada fila para poder generar el vector de prioridad.
for i=1:m
for j=1:n
Prio=Prio+Anorm(i,j);
end
priotot(i,1)=Prio/n
Prio=0
end
%En este punto del código, nos mostrara el vector de prioridad.
...