Proyecto Fin de Carrera Grado en Ingeniería de Tecnologías ...
Transcript of Proyecto Fin de Carrera Grado en Ingeniería de Tecnologías ...
Equation Chapter 1 Section 1
Proyecto Fin de Carrera
Grado en Ingeniería de Tecnologías Industriales
Estudio de Técnicas de Toma de Decisiones con
Incertidumbre. Aplicación a Sistemas Reales.
Autor: Rafael Espinosa Velasco
Tutor: Ascensión Zafra Cabeza
Dep. de Sistemas y Automáica
Escuela Técnica Superior de Ingeniería
Universidad de Sevilla
Sevilla, 2017
Índice de Tablas 2
Proyecto Fin de Carrera
Grado en Ingeniería de Tecnologías Industriales
Estudio de Técnicas de Toma de Decisiones con
Incertidumbre. Aplicación a Sistemas Reales.
Autor:
Rafael Espinosa Velasco
Tutor:
Ascensión Zafra Cabeza
Profesora Titular de la Universidad
Dep. de Ingeniería de Sistemas y Automática
Escuela Técnica Superior de Ingeniería
Universidad de Sevilla
Sevilla, 2017
Índice de Tablas 4
Proyecto Fin de Carrera: Estudio de Técnicas de Toma de Decisiones con Incertidumbre. Aplicación a
Sistemas Reales.
Autor: Rafael Espinosa Velasco
Tutor: Ascensión Zafra Cabeza
El tribunal nombrado para juzgar el Proyecto arriba indicado, compuesto por los siguientes miembros:
Presidente:
Vocales:
Secretario:
Acuerdan otorgarle la calificación de:
Sevilla, 2017
El Secretario del Tribunal
Índice de Tablas 6
A mi familia y amigos
A mis profesores
Índice de Tablas 8
Índice
Índice 9
Índice de Tablas 11
Índice de Figuras 13
1. Introducción 5 1.1. Motivación 5 1.2. Objetivos 6
2. Técnicas de decisión 9 2.1. Introduccíon al análisis multicriterio y multiobjetivo 9
2.1.1. Definición. 9 2.1.2. Clasificación. Tipos de Problemas. 9
2.2. Técnicas con Incertidumbre 11 2.2.1. Dominación Simple 11 2.2.2. Decisión de Wald 12 2.2.3. Maximax 12 2.2.4. Método de Hurwicz 13 2.2.5. Método de Savage 14 2.2.6. Laplace 14 2.2.7. Árbol de decision 15
2.3. Técnicas basadas en Riesgo 17 2.3.1. Dominación Simple 18 2.3.2. Dominación Estocástica 18 2.3.3. Teorema Del Valor Esperado 19 2.3.4. Valor en Riesgo (Value At Risk) 20
2.4. Técnicas de Decisión Multicriterio Contínuos 21 2.4.1. Introducción 21 2.4.2. Método de las ponderaciones 23 2.4.3. Método de las restricciones 24 2.4.4. Programación por Compromiso. 26 2.4.5. Programación por Metas (Goal Programming) 30 2.4.6. Método Stem 37
2.5. Técnicas de Decisión Multicriterio Discretas 40 2.5.1. Técnicas Electre 40 2.5.2. AHP (Analytic Hierarchy Process) 45 2.5.3. Técnicas Promethee 48 2.5.4. Topsis 51
3. Visual PROMETHEE-GAIA 55 4.1. Introducción al Visual Promethee-GAIA 55 4.2. Interfaz y ventana de comandos de Visual Promethee-GAIA 55 4.3. Gráficas de interés 57
4.3.1. Promethee Rankings 57
4.3.2. Promethee Network 58
Índice de Tablas 10
4.3.3. Plano GAIA 59
4.3.4. GAIA Webs 61
4.3.5. Walking Weights 61
4.3.6. Frontera Eficiente 62
4. Introducción al OpenDSS 63 4.1. Introducción 63 4.2. Instalación y configuración con Matlab 64
4.2.1. Descarga e instalación 64 4.2.2. Configuración con Matlab 64
4.3. Programación en la interfaz Del OpenDSS 65 4.3.1. Estructura OpenDSS 65 4.3.2. Cargar archivos de Excel o del OpenDSS 71
4. 4. Programación y Control desde Matlab 72 4.4. 1. Función para iniciar el OpenDSS 72 4.4.2. Comandos desde la ventana principal de Matlab 72
5.Nuestro problema. Particularización En Opendss 75 5.1. Red de Distribución 75 5.2. Características de la Red de Distribución 76
5.2.1. Características de los cables. Códigos de las líneas 76 5.2.2. Datos de las líneas (segmentos entre nodos) 77 5.2.3. Datos de los tranformadores 78 5.2.4. Datos del regulador 79 5.2.5. Cargas puntuales 79 5.2.6. Datos de los Generadores 80
5.3. Red de Distribución. Programación en OpenDSS 80
6. Modelo, Particularización en Matlab Y Análisis de los Resultados 85 6.1. Modelo y Particularización en Matlab 85
6.1.1. Control de Voltaje en Matlab 85 6.1.2. Problema de Optimización 88 6.1.3. Resultados con diferentes configuraciones 92
6.2. Decisiones con el Promethee-GAIA. Análisis de los resultados 96 6.2.1. Comparación de Alternativas en el Promethee-GAIA 96
7. Conclusiones Finales 113 7.1. Conclusiones sobre la Implantación del Método 113 7.2. Conclusiones finales sobre los resultados obtenidos 114 7.3. Mejoras para el futuro 114
Apéndice: Solver de Excel 117
Bibliografía Y Webs 125
ÍNDICE DE TABLAS
Tabla 1. Ejemplo Explicativo 1 en Incertidumbre 11
Tabla 2. Cálculo Costes Oportunidad por Savage 14
Tabla 3. Cálculo E por Laplace 15
Tabla 4. Método Savage para el Árbol de Decisión.1 16
Tabla 5. Método Savage para el Árbol de Decisión.2 16
Tabla 6. Método Savage para el Árbol de Decisión.3 17
Tabla 7. Ingresos Ejemplo de Riesgo 17
Tabla 8. Beneficios Ejemplo de Riesgo 18
Tabla 9. Matriz de Pagos. 23
Tabla 10. Cálculo Método de las Ponderaciones. 24
Tabla 11.1. Particularización Método Restricciones. 25
Tabla 11.2. Particularización1 Método Restricciones 26
Tabla 12. Cálculo de los Pesos por Compromiso 27
Tabla 13. Distancia de Manhattan 28
Tabla 14. Distancia Tchebycheff 29
Tabla 15. Criterios de Aspiración por Metas Ponderadas 30
Tabla 15. Resultados Metas Ponderadas 31
Tabla 16. Criterios de Aspiración Metas Lexicográficas 32
Tabla 17. Resultados Metas Lexicográficas 36
Tabla 18. Criterios de Aspiración Metas MinMax 37
Tabla 19. Resultados Metas MinMax 37
Tabla 20. Cálculo de los Pesos 1 Método Stem 39
Tabla 21. Iteración1 Método Stem 39
Tabla 22. Cálculo de los Pesos 2 Métodos Stem 40
Tabla 23. Iteración2 Método Stem 40
Tabla 24. Iteración3 Método Stem 40
Tabla 25. Matriz inicial ElectreI 42
Tabla 26. Índices de concordancia ElectreI 43
Tabla 27. Normalización Matriz Inicial ElectreI 43
Tabla 28. Pesos Matriz Inicial ElectreI 43
Tabla 29. Índices de Discordancia ElectreI 44
Índice de Tablas 12
Tabla 30. Matriz Conjugada Dominancia ElectreI 44
Tabla 31. Comparación Criterios 46
Tabla 32. Comparación según Duración 46
Tabla 33. Comparación según Calidad 46
Tabla 34. Comparación según Distancia 47
Tabla 35. Comparación según Precio 47
Tabla 36. Importancias por criterios 1. 47
Tabla 37. Solución Modo Distribuído 47
Tabla 38. Importancia por criterios 2. 47
Tabla 39. Solución Modo Ideal 48
Tabla 40. Pesos de ejemplo del Método PROMETHEE 50
Tabla 41. Datos de ejemplo del PROMETHEE 50
Tabla 42. Datos en Decision Lab 51
Tabla 43. Resultados Decision Lab 51
Tabla 44. Pesos Método Topsis 52
Tabla 45. Datos Topsis 52
Tabla 46. Normalización Topsis 52
Tabla 47. Normalización x pesos Topsis 52
Tabla 48. Valores ideal y nadir 52
Tabla 49. Resultados Topsis 53
Tabla 50. Características de los conductores 76
Tabla 51. Matriz de Admitancias y Fases 77
Tabla 52. Líneas entre nodos 78
Tabla 53. Datos de los transformadores 78
Tabla 54. Datos del regulador 79
Tabla 55. Cargas Puntuales 79
Tabla 56. Excel Modificaciones Individuales 93
Tabla 57. Modificaciones Individuales Normalizadas 94
Tabla 58. Modificaciones Combinadas Normalizadas 95
Tabla 59. Situación Inicial 97
Tabla 60. Alternativas Mod. Individuales 98
Tabla 61. Alternativas Pn 99
Tabla 62. Ranking Aternativas Pn 99
Tabla 63. Ranking Alternativas Cargas 100
Tabla 64. Ranking Alternativas Costes 101
Tabla 65. Ranking Mod. Indiv. 101
Tabla 66. Situación Inicial Combinadas 105
Tabla 67. Alternativas Mod. Combinadas 106
ÍNDICE DE FIGURAS
Imagen 1. Funcionamiento OpenDSS-Matlab 7
Imagen 2. Representación Hurwicz 13
Imagen 3. Esquema Árbol de Decisión 16
Imagen 4. Representación Estocástica 19
Imagen 5. Procedimiento Stem 38
Imagen 6. Dominancia de C ElectreI 45
Imagen 7. Grafo Ejemplo AHP 45
Imagen 8. Matrices de comparación 45
Imagen 9. Esquema Comparación AHP 46
Imagen 10. Tipos de Funciones o Criterios Generalizados 49
Imagen 11. Particularización Interfaz Promethee 56
Imagen 12. Resultados Obtenidos Promethee 57
Imagen 13. Promethee Rankings 57
Imagen 14. Promethee Network 58
Imagen 15. Plano GAIA 1 59
Imagen 16. Plano GAIA 2 60
Imagen 17. GAIA Webs 61
Imagen 18. Walking Weights 61
Imagen 19. Frontera Eficiente 62
Imagen 20. Esquema OpenDSS 63
Imagen 21. Interfaz OpenDSS 65
Imagen 22. Esquema IEEE13 65
Imagen 23. Estructura OpenDSS 1 67
Imagen 24. Estructura OpenDSS 2 67
Imagen 25. Representación líneas 68
Imagen 26. Estructura OpenDSS 3 68
Imagen 27. Estructura OpenDSS 4 69
Imagen 28. Estructura OpenDSS 5 69
Imagen 29. Estructura OpenDSS 6 69
Índice de Figuras 14
Imagen 30. Estructura OpenDSS Generadores 70
Imagen 31. Estructura OpenDSS Loadshape 1 70
Imagen 32. Estructura OpenDSS Loadshape 2 70
Imagen 33. Estructura OpenDSS Loadshape 3 71
Imagen 34. Estructura OpenDSS Energy Meter 71
Imagen 35. Estructura OpenDss Monitor 71
Imagen 36. Redirect 71
Imagen 37. Conexión Matlab – OpenDSS 72
Imagen 38. Inicialización en Matlab 1 72
Imagen 39. Inicialización en Matlab 2 73
Imagen 40. Programación Matlab 73
Imagen 41. 37-bus Feeder 75
Imagen 42. 37-bus Feeder modificado 76
Imágenes 43 y 44: Proceso Ajuste de Voltaje 87
Imagen 45. Promethee-GAIA Inicial 97
Imagen 46. Plano GAIA Modif. Indv. 102
Imagen 47. Frente Pareto Dem-Coste 103
Imagen 48. Igualdad de Pesos 104
Imagen 49. Mayor importancia a un criterio 104
Imagen 50. Evaluaciones Mod. Comb. 107
Imagen 51. Resultados Mod. Comb. 108
Imagen 52. Curvas de Eficiencia por pares 109
Imagen 53. Plano GAIA Comb. 110
Imagen 54. Análisis Pesos 112
5
1. INTRODUCCIÓN
1.1. Motivación
Continuamente se producen cambios en nuestra sociedad. Uno de los más llamativos que se han
producido a lo largo de la historia moderna, ha sido la evolución del transporte. Así mismo, las energías
empleadas en él también han sufrido grandes avances.
En el pasado empleábamos como medios de transporte coches de caballos (vehículos impulsados por
fuerza animal) que sólo usaban a estos animales como motor para los largos viajes, grandes ferrocarriles,
dirigibles, barcos de vapor,..., o si nos vamos más atrás en el tiempo podemos hablar de los propios
transportes impulsados por personas, como los riskshaws. La tecnología ha avanzado mucho desde que se usaron por primera vez los ferrocarriles y el medio de
transporte que más fama y que más uso se le ha dado ha sido el transporte en coche.
Los primeros automóviles que se recuerdan datan del siglo XVIII donde los automóviles eran
propulsados por vapor. No fue hasta el año 1885 cuando por primera vez se crea el automóvil de combustión
interna por gasolina. En la búsqueda del alto rendimiento, en el año 1893 se inventó el primer motor diésel y,
en el año 1936 apareció el primer coche diésel, un Mercedes 260 D.
El cambio climático, el consumo y agotamiento de las energías como el carbón y el petróleo, el coste y
aumento en el número de automóviles (sobre todo coches) y la concienciación de la sociedad y de las
empresas, provocaron que poco a poco se idearan nuevas formas y combustibles que sustituyeran a la gasolina
y el gasoil. Así, aparecieron los primeros coches movidos por energía eléctrica.
Los PEVs son coches eléctricos avanzados cuya principal característica reside en que se pueden conectar
con el sistema de distribución eléctrica en cualquier momento y en cualquier lugar. El problema reside en la
falta de predicción ante parámetros como el tiempo de carga, la batería del estado inicial, hora de inicio, … . El
gran aumento en el uso de los PEVs (sobre todo en EE.UU.) añadido a esa falta de predicción, ha provocado
una gran incertidumbre y variabilidad en las cargas de los PEVs y en las operaciones de los sistemas de
distribución.
Llaman mucho la atención este tipo de vehículos debido a su alta eficiencia energética, ya que
escasamente emiten carbono y no producen contaminación acústica. Además, el coste operacional es muy
bajo.
1. Introducción
6
6
Aquí es dónde se encuadra el proyecto que se presenta: estudio de los PEVs, metodologías para reducir
las pérdidas en la conexión a la red eléctrica y reducción de la incertidumbre que se produce. Por tanto, las
funciones objetivo propuestas harán que se reduzcan los costes operativos a la vez que se adapta a la
incertidumbre de carga de los PEVs. Los estudios se realizarán con forme al Test Cases de 37-bus IEEE
modificado (ver más adelante).
1.2. Objetivos
Los objetivos marcados, por tanto, serán los siguientes:
1. Estudiar las diferentes Técnicas de decisión con Incertidumbre.
2. Simular una red de distribución. Se tomará como ejemplo una modificación de la red propuesta en el
Test Cases de 37-bus del IEEE.
3. Controlar esa red de distribución implementándole los PEVs y otras fuentes. Además, se recogerán
los resultados oportunos para reducir costes y pérdidas de potencia que se puedan producir.
4. Controlar, con Técnicas de Toma de Decisiones con Incertidumbre, la variabilidad y la incertidumbre
descritas anteriormente reduciendo los costes operativos y las pérdidas ya mencionadas.
Para el cumplimiento de nuestros objetivos se procederá en este documento como sigue:
1. Explicación y aclaración con ejemplos, de las diferentes Técnicas en Ambiente con Incertidumbre, de
las cuáles se elegirán varias de ellas y se compararán los resultados entre las mismas, con el objetivo
de ver cuál de ellas es la más apropiada para nuestro caso.
2. Explicación y aclaración del software Visual Promethee-GAIA. Este programa será usado para la
representación de los resultados obtenidos para las diferentes técnicas. La facilidad, versatilidad,
sencillez y calidad de sus representaciones y gráficos, así como la incorporación del plano GAIA, son
los motivos del uso de este software. Además, diversas técnicas con incertidumbre se servirán de
dicho software para la resolución y obtención de resultados de las mismas.
3. Introducción del software OpenDSS. El software OpenDSS permite simular una red de distribución
eléctrica. Este documento contiene una introducción al entorno OpenDSS y su programación.
Además, se explicará cómo conectar OpenDSS con Matlab para poder trabajar desde Matlab
directamente.
En la siguiente imagen podemos ver qué información obtendremos del OpenDSS y que usará
Matlab posteriormente, como las pérdidas de potencia, la propia simulación del circuíto o los flujos de
potencia. Con Matlab calcularemos y formularemos los objetivos y las rutas de optimización. Ambos
softwares han sido conectados a través del Component Object Model interface (COM).
Imagen 1. Funcionamiento OpenDSS-Matlab
4. Programación de algunas técnicas con incertidumbre desde Matlab, para su posterior aplicación a
nuestro caso.
5. Resultados obtenidos y comparación de resultados
1. Introducción
8
8
2. TÉCNICAS DE DECISIÓN
2.1. Introduccíon al análisis multicriterio y multiobjetivo
2.1.1. Definición.
La toma de decisiones multicriterio debe ser entendida como un conjunto de conceptos,
aproximaciones, modelos y métodos para ayudar a un decisor a describir, evaluar, ordenar, rechazar
o aceptar objetos o alternativas (soluciones a un problema) en base a una evaluación (por
puntuaciones, valores, etc.) de acuerdo a varios criterios.
La evaluación multicriterio (y multiobjetivo) es un conjunto de técnicas utilizadas en la decisión
multidimensional, dentro del campo de la toma de decisiones.
Debe entenderse por criterio al conjunto de consideraciones, metas, variables o aspiraciones que son
relevantes para un cierto problema decisional. Si solo consideramos un criterio, estaremos ante un problema
unicriterio. En los casos prácticos que analizaremos tendremos más de un criterio.
2.1.2. Clasificación. Tipos de Problemas.
Una primera clasificación de los métodos que analizaremos a continuación, se basa en función de si el
conjunto de alternativas posibles (soluciones a nuestro problema) es continua o discreta:
- Estaremos ante programación o decisión multiobjetivo continua si la región factible es continua, es
decir, las variables de decisión (y por lo tanto las funciones objetivo) pueden tomar valores infinitos,
conduciendo a infinitas posibles alternativas del problema. Algunos ejemplos pueden ser los cálculos
teóricos de compuestos o la realización de inversiones.
- Hablaremos de métodos multicriterio discretos si lo posible viene definido por un conjunto discreto de
alternativas, pudiendo incluso no ser numéricas. Ejemplos de problemas de decisión discretos son
elegir el emplazamiento de una nueva incineradora de basuras, seleccionar los mejores proyectos de
inversión en una organización o el de decidir qué modelo de automóvil debe comprarse de la gama
ofrecida por el mercado. En todos los casos citados la decisión se basará en las diversas características
o atributos de las alternativas respecto a los criterios de decisión relevantes.
Dentro de los métodos de Decisión Multicriterio Discretos (DMD) analizaremos:
2. Técnicas de decisión
10
10
- Técnicas Electre
- AHP
- Promethee
En cuanto a los métodos de Decisión Multicriterio Continuos (DMC):
- Método de las ponderaciones
- Método de las restricciones
- Programación por compromiso (distancia Manhattan y Tchebycheff)
- Programación por metas (ponderadas, lexicográficas, MinMax)
- Método Stem
Una segunda clasificación de los métodos se basa en función de si conocemos con certeza lo que ocurrirá
en un futuro o no, es decir, de la certidumbre o incertidumbre de tomar una decisión sabiendo o sin saber qué
ocurrirá. Es por ello que tenemos que diferenciar entre:
- Ambiente de Certidumbre: conocemos todas las alternativas y lo que pasará al elegirlas. Es por ello
que simplemente hemos de escoger la más eficiente.
- Ambiente de Incertidumbre: donde no conocemos las probabilidades en las que se presentan las
condiciones de contorno, por lo que no sabemos a priori el beneficio que obtendremos al tomar una
decisión, o los costes que tendremos, etc.
- Ambiente de Riesgo: se caracteriza por ser un ambiente de incertidumbre, donde sabemos las
probabilidades de los estados de la naturaleza, es decir, conocemos las probabilidades de que, por
ejemplo, obtengamos unos beneficios u otros dependiendo de si el mercado crece, se estabiliza o se
contrae.
- Teoría de Juegos: serie de técnicas (incluidas dentro de incertidumbre y riesgo) donde conocemos
todo lo relativo a nosotros, pero no sabemos lo que, por ejemplo, la otra parte quiere o desea. Por
ejemplo, en la negociación de la venta de nuestro coche, sabemos por cuánto queremos venderlo y
hasta cuánto estamos dispuestos a bajar el precio; no conocemos en este caso por cuánto está
dispuesto el comprador a comprarlo ni cuál es su precio máximo.
Con respecto a esta última clasificación, los modelos que analizaremos para su posterior aplicación al
caso práctico estarán en ambientes de Incertidumbre y de Riesgo. Es por ello que veremos en apartados
posteriores técnicas concretas de resolución para ambos ambientes, tales como:
- Para Incertidumbre: Dominación Simple, Decisión de Wald, Método de Hurwicz, de Savage, Método
de Laplace y el Árbol de Decisión.
- Para Riesgo: Dominación Simple, Dominación Estocástica, Criterio del Valor Esperado, Valor en
Riesgo (VAR).
Hay que destacar que algunas de las técnicas englobadas en DMC o DMD pueden ser usadas en
ambientes de Incertidumbre o de Riesgo, que es donde nos centraremos.
2.2. Técnicas con Incertidumbre
Ejemplo Explicativo
Para una mayor comprensión de las diferentes técnicas empleadas plantearemos el siguiente ejemplo, a
resolver por cada uno de los métodos.
Una empresa de coches quiere saber qué modelo de coche ha de fabricar para los próximos años. Las
alternativas que tiene son Deportivo (D), Berlina (B), Monovolumen (M) o Todoterreno (T). Dependiendo del
interés que suscite en la sociedad el modelo que fabrique (estados de la naturaleza), tendrá más o menos
beneficios. Estos beneficios quedan recogidos en la siguiente tabla. Las unidades serán unidades monetarias
(u.m.).
Alternativas (Ai) Interés Bajo Interés Medio Interés Alto Interés Muy Alto
D 24 19 10 16
B 22 22 23 20
M 23 23 21 15
T 25 24 18 14
Tabla 1. Ejemplo Explicativo 1 en Incertidumbre
A priori, observamos que los mayores beneficios se obtendrían con el Todoterreno, pero con interés bajo
y medio por parte de la sociedad. A mayor interés los beneficios suelen ser menores, aunque esta regla no se
cumple en todos los casos.
2.2.1. Dominación Simple
Es un filtro base. Si una alternativa se ve superada (y por tanto peor) en todos los sentidos y aspectos por
otra alternativa, la descartamos.
Ejemplo
2. Técnicas de decisión
12
12
Comparamos por pares de alternativas todos los valores para los diferentes estados en la tabla anterior.
Observamos que ninguna alternativa ‘gana’ completamente en los 4 casos a otra alternativa, por lo que no
haya dominación simple.
2.2.2. Decisión de Wald
En este caso, el decisor es un decisor pesimista que elegirá aquella opción que maximice sus beneficios
pero sin tener riesgos, es decir, no se arriesga a cometer el error de garantizar unos ciertos beneficios. Es por
ello que en el instante de tiempo actual elegirá la mejor entre las peores situaciones posibles.
Ejemplo
Elegimos el mínimo por fila, y escogemos el máximo de esos mínimos.
Fila D:
Fila B:
Fila M:
Fila T: Fabricaría Berlinas.
2.2.3. Maximax
En contraposición al caso anterior, el decisor ahora es optimista, escogiendo de todas las mejores
opciones para cada alternativa la que sea mejor.
Ejemplo
Elegimos el máximo por fila, y nos quedamos con el máximo de todos ellos.
Fila D:
Fila B:
Fila M:
Fila T: max T = 25 Fabrico Todoterrenos.
2.2.4. Método de Hurwicz
Esta técnica es una combinación de las dos anteriores, es decir, es una combinación ponderada entre el decisor
pesimista y optimista. Para ello definimos un coeficiente de pesimismo que mide el grado de pesimismo que
consideremos:
Con este coeficiente, ponderamos para cada alternativa sus valores más bajo (pesimista) y más alto
(optimista). De todas las ponderaciones escogeremos la que sea mayor y por lo tanto la que en un principio
maximizaría nuestros beneficios.
Ejemplo
Podemos ver en la gráfica, donde se representan estas
rectas, la frontera donde se maximizarían los beneficios para
los diferentes valores de alfa que el decisor puede otorgar.
Así, igualando las rectas de CT y de CB podemos obtener los
valores de este coeficiente que harían seleccionar una u otras
alternativas.
Para elegimos fabricar Berlinas.
Para elegimos fabricar Todoterenos.
Imagen 2. Representación Hurwicz
2. Técnicas de decisión
14
14
2.2.5. Método de Savage
Mide los costes de oportunidad de cada alternativa en función del máximo que podría obtenerse en cada estado
de la naturaleza (en cada escenario). Definimos cada coeficiente de oportunidad como:
Estos costes de oportunidad representan lo que puedo perder ocurriendo uno de los estados de la
naturaleza, habiendo elegido una alternativa (caso de beneficios). Elegiremos por tanto la opción con la que
menos podamos perder o equivocarnos.
Ejemplo
Alternativas Bajo Medio Alto Muy Alto Max. Fila
D 1 5 13 4 13
B 3 2 0 0 3
M 2 1 2 5 5
T 0 0 5 6 6
Máx. Colum. 25 24 23 20
Tabla 2. Cálculo Costes Oportunidad por Savage
Fabricaremos por tanto Berlinas.
2.2.6. Laplace
Supone que un estado de la naturaleza no se produce con mayor probabilidad que otro:
(probabilidades nuevas para cada Ej). Con esto, elegiremos la mejor de estas medias aritméticas.
Ejemplo
Tabla 3. Cálculo E por Laplace
Elegimos fabricar Berlinas.
2.2.7. Árbol de decision
Para problemas donde existen más de una toma de decisión, se emplea para poder organizar de una
forma ordenada esas decisiones y poder elegir la que mejor nos convenga. Está formado por dos tipos de
nodos:
- Nodo decisional: momento de toma de decisión
- Nodo aleatorio: donde aparecen diferentes estados de la naturaleza
Para poder ilustrar el árbol de decisión se presenta el siguiente ejemplo donde existe más de una toma de
decisión.
Ejemplo Explicativo del Árbol de Decisión
Una empresa quiere decidir la capacidad que desea tener en su planta. Para ello tiene que decidir en t=0 si
quiere tener una capacidad ‘Grande’ o ‘Mediana’.
A los tres años de esa decisión, en los cuales la demanda ha podido ser alta o baja, tiene la posibilidad de
expandirse, contraerse o mantenerse como estuviera.
Tras esa segunda decisión y durante los próximos 4 años, la demanda puede ser de nuevo alta o baja
obteniendo unos beneficios u otros dependiendo de las decisiones tomadas con anterioridad.
Los beneficios y las posibles situaciones que se pueden dar vienen recogidas en la siguiente gráfica,
donde además se representan los 3 nodos de decisión:
E[Ai]
D 17,25
B 21,75
M 21
T 20,25
2. Técnicas de decisión
16
16
Imagen 3. Esquema Árbol de Decisión
Como podemos ver en la representación del árbol, existen 3 nodos de decisión que podemos resolver cada uno
de ellos con algunas de las técnicas de decisión en ambiente de incertidumbre vistas con anterioridad. Por
ejemplo, emplearemos el método de Savage.
Tabla 4. Método Savage para el Árbol de Decisión.1
Tabla 5. Método Savage para el Árbol de Decisión.2
Costes de oportunidad
NODO 1 Demanda Alta Demanda Baja Demanda Alta Demanda Baja Elección Savage
Contraer 15 20 20 0
No actuar 35 -10 0 30
Costes de oportunidad
NODO 2 Demanda Alta Demanda Baja Demanda Alta Demanda Baja Elección Savage
Expandir 35 10 0 25
No actuar 20 35 15 0
Tabla 6. Método Savage para el Árbol de Decisión.3
Por tanto, nuestra decisión será la de elegir la capacidad grande.
2.3. Técnicas basadas en Riesgo
Ejemplo Explicativo
Para entender mejor las técnicas que se plantean a continuación se plantea el siguiente ejemplo.
Una empresa de coches tiene la posibilidad de fabricar, para los próximos años, un modelo económico
de coche (con un coste de 2 u.m.), un modelo de lujo (con un coste de 3 u.m.) o ambos modelos (con un coste
de 6 u.m.). Decidirse por cualquiera de las 3 opciones requiere un coste fijo de 2 u.m.
Dependiendo de si el mercado se expande, hay estabilidad o si hay recesión, tendrá dicha empresa unos
ingresos u otros. Los ingresos se recogen en la siguiente tabla:
Costes Ingresos si
Expansión
Ingresos si
Estabilidad
Ingresos si
Recesión
A1: modelo económico 2 12 6 4
A2: modelo de lujo 3 15 6 0
A3: ambos modelos 6 18 12 4
Tabla 7. Ingresos Ejemplo de Riesgo
Las probabilidades de las diferentes situaciones en el mercado, así como los beneficios (ingresos menos
costes) en cada una de las situaciones posibles, se recogen en la siguiente tabla:
Costes de oportunidad
NODO 3 D. Alta
Alta
D. Alta
Baja
D. Baja
Alta
D. Baja
Baja
D.
Alta
Alta
D.
Alta
Baja
D.
Baja
Alta
D.
Baja
Baja
Elección
Savage
Grande 50 20 15 20 0 15 20 10
Mediana 20 35 35 30 30 0 0 0
2. Técnicas de decisión
18
18
Beneficios Expansión (30%) Estabilidad (50%) Recesión (20%)
A1 8 2 0
A2 10 1 -5
A3 10 4 -4
Tabla 8. Beneficios Ejemplo de Riesgo
2.3.1. Dominación Simple
Al igual que en el caso de Incertidumbre, es un filtro base. Si una alternativa se ve superada (y por tanto peor)
en todos los sentidos y aspectos por otra alternativa, la descartamos.
Ejemplo
Como podemos observar en la tabla de beneficios, en todo momento la alternativa A2 se ve superada por
la alternativa A3, es decir,
En este caso, descartamos y no volveremos a considerar la alternativa A2.
2.3.2. Dominación Estocástica
Es un criterio de dominación de probabilidades. Eliminaremos una alternativa si sus probabilidades están
todas dominadas por las probabilidades de otra alternativa. Para ello representaremos las funciones de
distribución de las alternativas.
, dominación de k sobre s.
Ejemplo
La función de distribución tiene en cuenta la acumlación de las probabilidades. Representamos cada una
de las distribuciones y vemos si una domina a la otra.
Imagen 4. Representación Estocástica
Como podemos ver en la gráfica, no existe una dominancia estocástica completa de una alternativa sobre
otra.
2.3.3. Teorema Del Valor Esperado
De igual forma que el Método de Laplace en ambiente de Incertidumbre, se calcula el valor esperado
para cada una de las alternativas (esperanza matemática). Además, podemos hallar las variaciones en cada
alternativa.
2. Técnicas de decisión
20
20
Conociendo ambos valores elegiremos la alternativa que nos convenga más según nuestro criterio.
Podemos también ver el coste o lo que pagaré como máximo por comprar información perfecta, es decir, por
saber el estado de la naturaleza que pasará con seguridad.
siendo beneficio esperado con la información perfecta, definido como
con
siendo beneficio esperado sin la información perfecta definido como
Si adquirimos la información perfecta.
Ejemplo
Observamos que la opción 3 es mejor en cuanto al valor esperado, pero tiene una varianza muy alta. En
cuanto al VIP, invertiríamos en adquirir la nformación perfecta si el coste de dicha información es menor a 0,8
u.m.
2.3.4. Valor en Riesgo (Value At Risk)
El VAR es un porcentaje que mide la máxima pérdida esperada en un intervalo de tiempo ante un nivel
de confianza dado. Visto desde otro punto de vista, será el rendimiento máximo esperado de una
alternativa/cartera para una probabilidad dada.
Así, un VAR 4 a 1 año quiere decir que el inversor tiene un 98% de probabilidades de no perder en un
año más de un 4%.
El VAR puede calcularse a través de datos históricos, técnicas Montecarlo o técnicas paramétricas. En
nuestro caso supondremos que la distribución de probabilidades de nuestras alternativas se distribuye como
una Normal. El objetivo será por tanto transformar nuestra distribución Normal en una Normal (1,0).
Ejemplo
Hay que notar que hemos considerado que los beneficios son continuos y se distribuyen como una Normal.
Tenemos por tanto los valores ya calculados del caso anterior de las esperanzas y las varianzas:
a) ¿Probabilidad de tener un beneficio mayor a 4?
Tipificando:
0,4207 (42%)
En este caso y con este criterio de querer un beneficio mayor a 4, elegiremos la alternativa 3.
b) ¿Qué beneficio mínimo se puede esperar con una probabilidad del 80%?
Para 80%, el valor de Z en tablas de la Normal es 0,85. Despejamos en este caso la X de la ecuación
anterior:
Para A1
Para A2
En este caso conseguiremos mayor beneficio con la alternativa 1 si adquirimos el criterio del mínimo
beneficio al 80% de probabilidad.
2.4. Técnicas de Decisión Multicriterio Contínuos
2.4.1. Introducción
Para llegar a entender todas las técnicas que se verán a continuación, es necesario conocer algunos
conceptos básicos.
Como sabemos, estamos ante un problema de optimización mutiobjetivo donde existen más de una
función objetivo, varias restricciones y especificaciones de variables. Además, las funciones objetivo podrán
ser de Maximizar o Minimizar. El objetivo será por tanto encontrar el valor de las variables X que me
optimicen las funciones objetivo.
2. Técnicas de decisión
22
22
Ejemplo Explicativo
El ejemplo que usaremos para las técnicas DMC (métodos de Decisión Multicriterio Continuos) es el
siguiente, donde tendremos 3 funciones obejtivo (dos a maximizar y una a minimizar) y 4 restricciones.
s.a:
**Nota: Para la resolución y cálculo de los siguientes conceptos será necesario conocer el SOLVER de Excel (mayor
detalle en el Apéndice)
2.4.1.1. Matriz de Pagos
Se optimiza cada función objetivo por separado, es decir, resolviendo el modelo solo teniendo en cuenta
una función objetivo a la vez. Con los valores obtenidos para las diferentes variables, se hallan los valores
alcanzados por las demás fuciones objetivo, teniendo la forma de la matriz de pagos siguiente:
Cada fila de la matriz representa aquella función objetivo que se ha usado (la que se ha tenido en cuenta).
De aquí obtendremos el conjunto de valores de ‘x’ para cada función. Cada celda tomará el valor
correspondiente de particularizar los valores de ‘x’ en cada una de las funciones objetivo.
Ejemplo
Usando la función SOLVER de Excel, resolvemos nuestro problema de optimzación teniendo en cuenta
solo la primera función objetivo, obteniendo para los diferentes valores de X el valor F1 = 18. Con estos
mismos valores de X sustituímos en las otras dos funciones objetivo, obteniendo F2 = 14 y F3 = -3.
Repetimos este proceso teniendo solo en cuenta ahora la segunda función objetivo y posteriormente solo la
tercera. La matriz de pagos que se obtiene es la siguiente:
Tabla 9. Matriz de Pagos.
En la tabla anterior, cada corresponde a . En cada fila se muestra qué función se ha usado para
calcular la matriz. Por ejemplo, la primera fila muestra los resultados con el conjunto de valores de ‘ ’
cuando sólo se ha usado la función objetivo de .
Por ejemplo, la primera fila quiere decir que, considerando solo maximizar la función 1, obtenemos los
valores para las tres funciones objetivo de 18, 14 y -3 respectivamente.
2.4.1.2. Punto Ideal y Punto Nadir (óptimo y peor punto)
Nos referimos como punto Ideal, a aquel punto que hace que se consiga el mejor valor para cada una de
las funciones objetivo que tengamos. El punto Nadir es justo su opuesto, es decir, es el punto que hace que
consigamos los peores resultados para nuestras funciones objetivo.
Ejemplo
Punto ideal = (18 23,78 -19,83) máximos valores para F1 y F2 y mínimo valor para F3.
Punto nadir = ( ) mínimos valores para F1 y F2 y máximo valor para F3.
2.4.2. Método de las ponderaciones
Consiste en asignar a cada función objetivo un peso diferente e ir dando valores a este cojunto de pesos
(W) hasta encontrar un valor que consideremos suficientemente óptimo. Es por tanto un proceso iterativo.
Notar que hemos de conseguir una sola función objetivo, asignando pesos positivos a las funciones de
maximizar y pesos negativos a las de minimizar.
2. Técnicas de decisión
24
24
Ejemplo
Particularizando para nuestro ejemplo, nos quedaría el siguiente modelo a resolver:
s.a:
El siguiente paso es un proceso iterativo donde vamos asignando valores a Por ejemplo,
tras ir resolviendo con el SOLVER diferentes combinaciones de w, obtenemos siempre los mismos 4 puntos:
w1 1000 500 100 350
w2 5 500 900 650
w3 5 500 100 350
fo1 18 12,7916667 12,6067708 12,5925926
fo2 14 17,375 23,7838542 22,3518519
fo3 -3 -19,8333333 -10,0885417 -13,462963
FO 18085 25000 23675 23648,1481 Tabla 10. Cálculo Método de las Ponderaciones.
Nos quedaríamos con los valores de X donde se maximiza la función objetivo, que sería para el segundo
caso.
2.4.3. Método de las restricciones
Al igual que para el cálculo de la Matriz de Pagos, este método solo considerará para optimizar una sola
función objetivo, eso si, añadiendo las restantes funciones objetivo como nuevas restricciones.
Estas nuevas restricciones serán mayor o igual ( para los casos de maximización y menor o igual
para los de mimización. El término independiente serán variables que iremos dándoles valores hasta llegar al
punto que consideremos suficientemente óptimo.
Ejemplo
Particularizamos en primer lugar teniendo en cuenta la función objetivo 1.
s.a:
Damos valores aleatorios a L2 y L3 y elegimos la opción que nos optimice F1.
Tabla 11.1. Particularización Método Restricciones.
De igual forma, realizamos este proceso para las funciones objetivo 2 y 3.
L2 14 15,0870949 16,1741898 17,2612847 18,3483796 19,4354745 20,5225694 21,6096644 22,6967593 23,7838542
L3 -3 -4,87037037 -6,74074074 -8,61111111 -10,4814815 -12,3518519 -14,2222222 -16,0925926 -17,962963 -19,8333333
FO1 18 17,1742063 16,3484126 15,522619 14,6968253 13,8710316 13,0452379 12,6222801 12,5982935 12,7916667
FO2 14 15,0870949 16,1741898 17,2612847 18,3483796 19,4354745 20,5225694 21,6096644 22,6967593 17,375
FO3 -3 -4,87037037 -6,74074074 -8,61111111 -10,4814815 -12,3518519 -14,2222222 -14,412963 -12,6833582 -19,8333333
2. Técnicas de decisión
26
26
Particularizamos para F2.
s.a:
Obteniendo
Tabla 11.2. Particularización1 Método Restricciones.
De igual forma podríamos hacer para la F3. Solo nos quedaría comparar todas las opciones que hemos
conseguido y elegir aquella que más nos interese.
Notar que este método no nos elige una opción en concreto, sino que nos ayuda a valorar cada una de las
opciones que podemos tener para escoger los diferentes valores de las variables X.
2.4.4. Programación por Compromiso.
La idea de la programación por Compromiso consiste en utilizar el punto ideal como referencia para el
decisor. Como en el punto ideal cada objetivo (función objetivo) alcanza su valor óptimo, es razonable pensar
que el decisor quiera acercarse lo máximo posible a una zona eficiente cercana a este punto ideal.
Para ayudar al decisor a elegir las diferentes alternativas que se le plantean y poder solucionar el
problema, se irá considerando en cada iteración un ranking de preferencias diferentes donde 1 será la función
objetivo más importante.
Dependiendo del número del número de funciones objetivo y del ranking asignado, calcularemos los
diferentes pesos para las funciones objetivo.
L1 12,6067708 13,2060185 13,8052662 14,4045139 15,0037616 15,6030093 16,2022569 16,8015046 17,4007523 18
L3 -3 -4,87037037 -6,74074074 -8,61111111 -10,4814815 -12,3518519 -14,2222222 -16,0925926 -17,962963 -19,8333333
FO1 12,6067708 13,2060185 13,8052662 14,4045139 15,0037616 15,1064815 14,5277778 13,9490741 13,3703704 12,7916667
FO2 23,7838542 22,6967593 21,6096644 20,1711293 17,4638121 15,875 16,25 16,625 17 17,375
FO3 -10,0885417 -9,30092593 -8,51331019 -8,61111111 -10,4814815 -12,3518519 -14,2222222 -16,0925926 -17,962963 -19,8333333
Ejemplo
Por ejemplo, con el siguiente ranking y para nuestras 3 funciones objetivo, obtendríamos los siguientes
pesos:
Tabla 12. Cálculo de los Pesos por Compromiso
El siguiente será normalizar cada uno de los objetivos considerando los puntos ideal ( ) y nadir ( . Esto
se hace para que a la hora de la resolución todos los objetivos tengan las mismas unidades y no quede la
resolución del problema ligada a este tipo de diferencias. Por ejemplo, tomaremos la siguiente normalización:
Como nuestro objetivo es reducir la distancia lo máximo posible al punto ideal, es decir, estar en un
entorno cercano a él, nos queda el problema de resolución de minimización siguiente:
Notar que este problema dependerá del parámetro p, por lo que se plantean dos métodos de resolución:
Manhattan y Tchebycheff.
2.4.4.1. Distancia Manhattan
2. Técnicas de decisión
28
28
En este caso , teniendo el siguiente modelo a resolver:
Ejemplo
s.a:
Variando la prioridad de cada una de las opciones (el ranking) obtenemos diferentes resultados. Se ha
usado el SOLVER de Excel para su resolución:
Tabla 13. Distancia de Manhattan
Nos quedaremos con aquellos valores de X donde la función objetivo ha llegado a su valor mínimo. En
este caso, la cuarta opción, considerando que pudiéramos otorgarle la importancia que quisiéramos a las
funciones objetivo y no viniese impuesta.
r1 1 1 2 3 3 2
r2 2 3 1 1 2 3
r3 3 2 3 2 1 1
FO1 18 18 12,6067708 12,6067708 12,7916667 12,7916667
FO2 14 14 23,7838542 23,7838542 17,375 17,375
FO3 -3 -3 -10,0885417 -10,0885417 -19,8333333 -19,8333333
FO 0,5 0,5 0,42981642 0,35963284 0,37930081 0,43107967
2.4.4.2. Distancia Tchebycheff
En este caso , teniendo por tanto:
Ejemplo
Particularizando para nuestro ejemplo, obtenemos los siguientes resultados:
s.a:
Tabla 14. Distancia Tchebycheff
Observamos que la menor distancia ‘d’ se produce cuando la función objetivo 2 es la más importante de
las tres funciones objetivo.
r1 1 1 2 3 3 2
r2 2 3 1 1 2 3
r3 3 2 3 2 1 1
FO1 15,84270832 15,8729129 14,7640625 13,3083247 13,2487883 14,8315504
FO2 17,91354169 15,3783524 19,8703125 20,946799 19,4742689 16,0531553
FO3 -5,835416681 -9,87474538 -7,25312502 -12,511511 -14,8901768 -13,2404289
d 0,2 0,19719976 0,2 0,14498658 0,14682643 0,19582885
2. Técnicas de decisión
30
30
2.4.5. Programación por Metas (Goal Programming)
En la realidad pueden darse problemas con información incompleta, conflicto de intereses, recursos
limitados… y por tanto el decisor no está en condiciones de maximizar ni minimizar por falta de información
y menos aún de definir una función de utilidad. El decisor intenta por tanto que una serie de objetivos se
acerquen lo máximo possible a unos valores adecuados para él.
Considerando esto, podemos establecer una relación entre nuestro objetivo (función objetivo) y el valor que
nos gustaría alcanzar (ti):
El objetivo será por tanto minimizar estas variables de exceso y falta de logro para alcanzar los valores
que deseamos. Notar que las restricciones también tendrán sus propias variables de exceso y de falta de logro.
2.4.5.1. Metas Ponderadas
La manera más intuitiva de minimizar las variables anteriores es a través de una suma ponderada de las
mismas y por tanto de las funciones objetivo, para que todas las funciones objetivo tengan las mismas
unidades.
Ejemplo
Supondremos que los valores que queremos alcanzar (criterios de aspiración) son los valores
correspondientes a la segunda fila de nuestra Matriz de Pagos.
Tabla 15. Criterios de Aspiración por Metas Ponderadas
Para ponderar las funciones objetivo (W) consideraremos que dichas ponderaciones son los propios
criterios de aspiración.
Notar que para las funciones objetivo de maximizar y las rectricciones con la forma habrá que
minimizar la variable ‘p’, tomando la variable ‘n’ correspondiente el valor de 0. Para las funciones objetivo de
minimizar y las restricciones con la forma habrá que minimizar la variable ‘n’, tomándo la variable ‘p’
correspondiente el valor de 0.
Con todo esto nos queda el siguiente modelo a resolver:
s.a:
Los resultados obtenidos tras resolver con SOLVER son los siguientes:
FO1
FO2
FO3
12,60677083
23,78385417
-9,274326202
Tabla 15. Resultados Metas Ponderadas
Nuestras variables X serán aquellas que nos hayan dado estos valores, que como podemos ver, se
asemejan bastante a nuestros criterios de aspiración considerados.
2.4.5.2. Metas Lexicográficas
A diferencia del caso anterior, ahora no minimizaremos todas las variables de exceso y de falta de logro
juntas, sino que estableciendo un ranking de prioridades en cuanto a las diferentes restricciones que tenemos,
vamos minimizando cada una de las variables por orden (según el establecido) y el valor obtenido lo añadimos
a la siguiente iteración.
2. Técnicas de decisión
32
32
Ejemplo
Supondremos como criterios de aspiración la segunda fila de nuestra Matriz de Pagos.
Tabla 16. Criterios de Aspiración Metas Lexicográficas
Consideraremos como ranking de las restricciones el propio orden de las mismas, es decir, mayor
prioridad a la primera restricción, y menor prioridad a la última restricción (que será la función objetivo 3). El
proceso iterativo es el siguiente:
s.a:
s.a:
s.a:
2. Técnicas de decisión
34
34
s.a:
s.a:
s.a:
s.a:
2. Técnicas de decisión
36
36
De la última iteración podemos sacar los resultados para los valores que hayan tomado las variables X
tras estas siete iteraciones:
FO1
FO2
FO3
12,79166667
17,375
-19,83333333 Tabla 17. Resultados Metas Lexicográficas
2.4.5.3. Metas MinMax
La programación por Metas MinMax establece un modelo de minimización de un cierto parámetro‘d’.
La ponderación de cada una de las variables de exceso y falta de logro ha de ser menor que este parámetro.
Resolviendo el modelo conseguimos que ‘d’ sea lo menor possible, haciendo además que las variables de falta
y exceso de logro sean también lo menor posibe.
Ejemplo
Al igual que en los casos anteriores consideraremos como criterio de aspiración la segunda fila de
nuestra Matriz de Pagos.
Tabla 18. Criterios de Aspiración Metas MinMax
Particularaizando nuestro modelo:
s.a:
Resolviendo con el SOLVER obtenemos los siguientes resultados:
FO1 18
FO2 14
FO3 -3
Tabla 19. Resultados Metas MinMax
2.4.6. Método Stem
El Método Stem es un método interactivo en el que el decisor colabora en la resolución del problema
continuadamente. El método finaliza cuando el decisor cree que hemos llegado a una decision suficientemente
buena. Es por ello que conviene no dar excesiva información para garantizar la convergencia y llegar a un
punto óptimo.
2. Técnicas de decisión
38
38
El proceso que seguiremos será por tanto:
Imagen 5. Procedimiento Stem
El procedimiento a seguir es el siguiente:
1. Se calculan los puntos ideal y nadir
2. Se obtiene una solución inicial en el sentido MinMax (calculando los pesos)
3. Se le enseña al decisor la solución obtenida que la compara con el punto ideal. Si considera que es
buena, acaba el método. En caso contrario, el decisor nos debe indicar qué puede empeorarse para
obtener mejores resultados en otros aspectos. Con esto, se añaden al modelo las restricciones:
4. Se vuelve a resolver el modelo, recalculando los pesos y haciendo para la opción que nos ha dicho el
decisor que puede empeorar
Ejemplo
Particularizamos para nuestro caso:
s.a:
El propio decisor otorga los valores ‘Criterio’ en cada una de las iteraciones. Calculamos a continuación
los pesos
Tabla 20. Cálculo de los Pesos 1 Método Stem
La solución encontrada tras resolver el modelo es el siguiente:
Tabla 21. Iteración1 Método Stem
El decisor compara los valores obtenidos con el punto ideal, y nos dice que estaría dispuesto a renunciar
a 3 unidades de F2 para mejorar las otras funciones.
Cálculo de Vj, Wj Suma de cuadrados Raíz cuadrada Inversa raíz |Ideal-nadir|/ I ó n Vj Wj
fo1 49 7 0,142857143 0,299623843 0,04280341 -0,15163518
fo2 200 14,14213562 0,070710678 0,411365378 0,02908792 -0,10304677
fo3 251 15,84297952 0,06311944 -5,611111111 -0,35417019 1,25468195
-0,28227886 1
Criterio decisor Valor obtenido Dispuesto a renunciar Nuevos valores a alcanzar
FO1 12,60677083 - 12,60677083
FO2 23,78385417 3 20,78385417
FO3 -10,08854167 - -10,08854167
Comparación valores de las F.O. y el criterio del decisor
2. Técnicas de decisión
40
40
A continuación hacemos que . Recalculamos los pesos y volvemos a resolver el modelo
incluyendo como nuevas restricciones que se mejoren las funciones 1 y 3.
Tabla 22. Cálculo de los Pesos 2 Métodos Stem
Tabla 23. Iteración2 Método Stem
El decisor está dispuesto a renunciar a 2 unidades de la función 1 para mejorar la función 3. De nuevo
volvemos a calcular los pesos y resolvemos el modelo añadiendo la nueva restricción para mejorar la función
3. El resultado obtenido, con el cual está conforme el decisor, es el siguiente:
Criterio decisor Valor obtenido
FO1 10,6553125 13,47743055
FO2 20,78385417 20,78385417
FO3 -15,47 -7,522569447
Comparación valores de las F.O. y el criterio del decisor
Tabla 24. Iteración3 Método Stem
2.5. Técnicas de Decisión Multicriterio Discretas
2.5.1. Técnicas Electre
La técnica ELECTRE (ELimination Et Choix Traduisant la REalité), es un método de sobreclasificación
para toma de decisions multiatributo (valores que otorga el decisor a una realidad objetiva) en ambientes de
total certidumbre.
Este método se basa en comparar cada par de alternativas respecto de los diferentes criterios y ver
cuántos criterios están a favor de que una alternativa domine a otra y cuántos criterios están en contra.
Existen diferentes variantes como:
- Problema (choice): identificar las mejores alternativas
- Problema (sorting): encuadrar las alternativas dentro de diferentes clases o categorías predefinidas
- Problema (ranking): ordenar las alternativas
Criterio decisor Valor obtenido Dispuesto a renunciar Nuevos valores a alcanzar
FO1 12,60677083 12,6553125 2 10,6553125
FO2 20,78385417 20,78385417 - 20,78385417
FO3 -10,08854167 -15,47 - -15,47
Comparación valores de las F.O. y el criterio del decisor
Introducimos la relación de superación ‘S’ que indicará si una alternativa supera a otra. Por tanto, una
alternativa será tan buena como otra si . Atendiendo a si esta relación es binaria o no, y a la clasificación
anterior, existen diversas técnicas Electre (ELECTRE I, ELECTRE II, …, ELECTRE TRI) que se han ido
desarrollando a lo largo de los años. En todos los casos, esta relación de superación ‘S’ depende de la
concordancia (para que una mayoría de criterios tiene que estar de acuerdo en esto) y la discordancia
(ninguno de los criterios que se opone lo haga con demasiada fuerza).
De todas las técnicas Electre analizaremos las técnicas Electre I (tipo choice con ‘S’ de carácter binario).
2.5.1.1. Electre I
Para cada uno de los diferentes criterios que tendrá nuestro problema, existirá un peso wl. El índice de
concordancia para cada alternativa lo definiremos como la suma de todos los pesos de los criterios en los que
, es decir, la alternativa ‘a’ supera a la ‘b’.
El índice de discordancia lo definiremos como el máximo entre los cocientes de las diferencias
máximas entre a y b (sin importar quién gana, es decir, ) multiplicado por la diferencia entre a y b cuando
b gana a a sin empates ( .
Por lo que se producirá que si ,
siendo umbrales de concordancia y discordancia. Estos umbrales los imponemos nosotros, por lo que
si son mayores, estaremos siendo más estrictos con las alternativas.
Veamos mucho más claro la aplicación de esta técnica con un ejemplo.
Ejemplo
Disponemos de 3 posibles emplazamientos de nuestra fábrica (A, B, C). La elección de dicho
emplazamiento dependerá de 5 factores que ya hemos ponderado (dando pesos) según nuestras prioridades.
Así, dependiendo del emplazamiento que elijamos tendremos unos costes y/o ingresos. Con todo esto, tenemos
la siguiente matriz de beneficios:
2. Técnicas de decisión
42
42
Tabla 25. Matriz inicial ElectreI
Para empezar nuestro problema, tendremos que definir los conjuntos de concordancia y discordancia de
cada par de alternativas.
representa que la alternativa A supera o iguala a la B en los criterios 1, 3 y 5. representa el
conjunto de discordancia donde la alternativa A es superada por la B, es este caso los criterios 2 y 5. El resto
de conjuntos se completan de manera similar.
A continuación, calculamos la matriz de índices de concordancia normalizados, como
quedando la matriz siguiente.
Tabla 26. Índices de concordancia ElectreI
Para calcular la matriz de discordancias será necesario normalizar la tabla inicial para evitar que las
unidades de cada uno de los criterios interfieran de manera considerativa en el proceso de elección. Lo
haremos de forma que:
Tabla 27. Normalización Matriz Inicial ElectreI
A continuación multiplicamos la matriz anterior por cada uno de los pesos de cada criterio.
Tabla 28. Pesos Matriz Inicial ElectreI
Ahora ya podemos calcular los índices de discordancia como:
2. Técnicas de decisión
44
44
Tabla 29. Índices de Discordancia ElectreI
Podemos establecer como criterio para los umbrales que sean la media de los valores de las matrices de
concordancia y discordancia respectivamente:
Por lo tanto, para cada par de alternativas que hemos evaluado, se producirá que habrá concordancia y
discordancia si:
Tabla 30. Matriz Conjugada Dominancia ElectreI
Según podemos ver en la matriz conjugada, C gana a A y a B y además ninguna otra alternativa le gana
a C, por lo que ésta será nuestra elección.
Imagen 6. Dominancia de C ElectreI
2.5.2. AHP (Analytic Hierarchy Process)
Las técnicas AHP se basan en la representación del problema con diferentes criterios y diferentes
alternativas mediante un grafo. En este grafo cada arco tendrá un peso que representa la importancia relativa
del hijo respecto al padre. La importancia global de cada alternativa se calculará agregando su importancia
relativa ponderada respecto a cada criterio.
Imagen 7. Grafo Ejemplo AHP
AHP propone un método para la obtención de las importancias relativas de los criterios (respecto a la
global) y de las alternativas respecto a los criterios a partir de matrices de comparación. Tenemos por ejemplo
la matriz de comparación de ‘n’ criterios respecto al Objetivo Global, o de ‘m’ alternativas respecto del criterio
‘j’:
Imagen 8. Matrices de comparación.
Así, el elemento de la fila ‘i’ columna ‘j’ mide cuánto más importante es el elemento ‘i’ repecto al
elemento ‘j’. Notar que los elementos simétricos son recíprocos (inversos).
A continuación, hemos de calcular la importancia de cada uno de los elementos ponderando los
diferentes valores de su fila. Hemos de notar que esto se debe de hacer de manera normalizada. Además todas
las matrices deben de ser consistentes, es decir:
Antes de entrar con el ejemplo, diferenciemos los dos tipos de problemas que nos podemos encontrar:
2. Técnicas de decisión
46
46
- Modo Ideal: de entre todas las alternativas hemos de decidir la mejor por comparación entre ellas.
- Modo Distribuído: la puntuación global de decisión (escala en % o % por 1) está repartida entre todas
las opciones.
Ejemplo
Tenemos que decidir entre ir a uno de estos 5 festivales de música: Wacken, Tomorroland, En Vivo,
Leyendas del Rock y Arenal Sound. Los criterios que vamos a seguir para comparar los festivales son:
duración, calidad, distancia y precio.
Imagen 9. Esquema Comparación AHP
Supondremos que todas las matrices que se exponen a continuación son consistentes. Así, a
continuación formamos la matriz de comparación de los criterios, la normalizamos y calculamos la media
aritmética para cada uno de ellos:
Tabla 31. Comparación Criterios
Creamos el resto de matrices, comparando los pares de festivales según cada uno de los criterios:
Tabla 32. Comparación según Duración
Tabla 33. Comparación según Calidad
Tabla 34. Comparación según Distancia
Tabla 35. Comparación según Precio
Los resultados de la Tabla31 (medias) nos da la importancia en % por uno de cada uno de los criterios.
Si además ordenamos y juntamos todas las medias de cada uno de los festivales, obtenemos para cada criterio
la importancia relativa de cada festival:
Tabla 36. Importancias por criterios 1.
Estamos en modo distribuído, ya que el 100% de la decisión para cada criterio (fila) está repartida entre
los diferentes festivales. Multiplicando respectivamente cada peso de cada criterio (Tabla31) por la Tabla36,
obtenemos de forma ponderada el mejor festival:
Tabla 37. Solución Modo Distribuído
Si por el contrario queremos la solución al Modo Ideal, simplemente dividimos cada elemento de la
tabla anterior (Tabla36) por el máximo de esa fila:
Tabla 38. Importancia por criterios 2.
Y de nuevo multiplicando por los pesos de los criterios, de forma ponderada:
2. Técnicas de decisión
48
48
Tabla 39. Solución Modo Ideal
Como consideración final, añadir que se puede realizar una preselección de alternativas estableciendo
ciertos niveles para cada criterio (bueno, malo, regular,…) descartando así previamente alternativas que no
superen dichos requisitos mínimos. Esto se conoce como AHP-Short.
Otra manera de facilitar la selección de alternativas es agrupando las diferentes alternativas en grupos
A-B-C (por grado de similitud), y comparar dichos grupos. Con esto logramos eliminar grupos enteros de
alternativas y descartar por tanto alternativas menos ‘fuertes’. Estamos en este caso ante los Ratings.
*Nota. Hemos calculado todos los resultados con Excel, aunque también podríamos hacer usado el
software ‘Expert Choice’.
2.5.3. Técnicas Promethee
Las técnicas PROMETHEE parten de la base de que el decisor debe establecer la importancia relativa de
cada uno de los criterios para luego definir una estructura de preferencias entre las alternativas.
Definimos criterios generalizados como funciones de preferencia que evitan la subjetividad a la hora de
delimitar los umbrales de preferencia que se quieran para cada criterio. Por tanto, para cada criterio se le asocia
una función con la que se valora la preferencia de una alternativa respecto a otra.
En función de tres parámetros (‘q’: umbral que define el área de indiferencia, ‘p’: umbral de preferencia
estricta,‘d’: parámetro que relaciona ‘q’ y ‘p’) se pueden establecer seis funciones de preferencia básicas:
Usual (Tipo I), U-shape (Tipo II), V-shape (Tipo III), Level (Tipo IV), Linear (Tipo V) y Gaussian (Tipo VI).
Imagen 10. Tipos de Funciones o Criterios Generalizados
El decisor tendrá que escoger qué tipo de las 6 funciones (o criterios generalizados) quiere, dependiendo
de los criterios y alternativas que esté comparando (se podría realizar un análisis de cada Tipo para cada
criterio). También deberá darle valor a los parámetros ‘p’ y’q’.
A modo de ejemplo:
- Un valor de ‘p=5’para el criterio Tipo I, significaría que si la diferencia entre una alternativa es un 5%
mayor a otra alternativa en ese criterio, se elegiría dicha alternativa estrictamente. En caso opuesto, la
preferencia de una respecto a otra sería lineal.
- Un valor de ‘q=3’ para el criterio Tipo II, significaría que si la diferencia entre dos alternativas en
inferior al 3% la elección entre ambas sería indiferente. En caso opuesto, la preferencia sería lineal.
Concretando, hasta ahora el decisor ha establecido las preferencias de cada uno de los criterios, tenemos
los valores para cada criterio de cada una de las alternativas y el decisor también ha decidido los criterios
generalizados a usar y los valores de los umbrales ‘p’ y ‘q’.
El siguiente paso es calcular la diferencia entre los pares de alternativas en cada uno de los criterios:
A continuación se calcula la preferencia de la alternativa ‘i’ respecto a la alternativa ’j’ para cada criterio
considerando los pesos de cada criterio (‘w’) y el valor de la función o criterio generalizado (‘ ’) , de forma
que quede normalizado:
Con el fin de posicionar cada alternativa una respecto de otra, se calculan dos puntuaciones: el flujo
2. Técnicas de decisión
50
50
positivo ( ) que cuantifica cómo la alternativa es preferida sobre el resto, y el flujo negativo )
que cuantifica cómo la alternativa es dominada por el resto.
El flujo neto será por tanto:
Con esto cabe diferenciar entre:
- PROMETHEE I, que establece una clasificación considerando los flujos positivos y negativos
(preorden parcial).
- PROMETHEE II, que establece una clasificación completa de las alternativas considerando el flujo
neto.
Ejemplo
Como resulta tedioso realizar todos los cálculos, se suele usar el software Decision Lab (PROMETHEE-
GAIA) para resolver este tipo de problemas.
Consideremos el ejemplo que ya se resolvió con AHP. Para ello retomamos los pesos ya calculados para cada
uno de los criterios de la Tabla 31:
Tabla 40. Pesos de ejemplo del Método PROMETHEE
A continuación, consideramos los siguientes valores de cada alternativa para cada criterio, suponemos
un criterio generalizado para cada uno de nuestros criterios y establecemos los umbrales.
Tabla 41. Datos de ejemplo del PROMETHEE
Introducimos los datos en el software Decision Lab.
Tabla 42. Datos en Decision Lab
A continuación, se muestra el resultado obtenido para PROMETHEE II, aunque analizando los flujos
positivo y negativo se puede establecer también una clasificación para PROMETHEE I.
Tabla 43. Resultados Decision Lab
Para PROMETHEE II, analizamos el flujo neto (phi) obteniendo como mejor opción el festival
Leyendas. Para el PROMETHEE I, si analizamos el flujo positivo (phi+), el elegido sería el Wacken y
teniendo en cuenta sólo el flujo negativo (phi-), el festival elegido es el Leyendas.
2.5.4. Topsis
Es un método basado en distancias. Partiendo de las ponderaciones obtenidas por el método AHP y
considerando para cada criterio su valor ideal y nadir, se calculan las distancias a dichos puntos para cada
alternativa.
2. Técnicas de decisión
52
52
Ejemplo
Como hemos indicado antes, recogemos los valores de la Tabla31, así como los valores de cada
alternativa para cada criterio:
Tabla 44. Pesos Método Topsis
Tabla 45. Datos Topsis
Además, recordamos que el objetivo es maximizar la duración y la calidad, y minimizar la distancia y el
precio.
A continuación normalizamos los datos que tengamos y los multiplicamos por los pesos de cada uno de
los criterios.
Tabla 46. Normalización Topsis
Tabla 47. Normalización x pesos Topsis
Con esto obtenemos los valores ideales y nadir.
Tabla 48. Valores ideal y nadir
Usando la distancia Euclídea, por ejemplo, se calculan las distancias de los valores normalizados
ponderados respecto a la solución ideal y nadir (d+, d-).
Tabla 49. Resultados Topsis
Como se observa, en la tabla anterior ya se ha calculado la proximidad a la solución ideal (R). Puede
verse que el festival elegido será En Vivo, ya que este al acercarse este valor a 1 implica más proximidad a la
solución ideal. Esta proximidad se ha calculado como:
2. Técnicas de decisión
54
54
3. VISUAL PROMETHEE-GAIA
4.1.Introducción al Visual Promethee-GAIA
Visual Promethee es un software de ayuda a la toma de decisiones multicriterio, es decir, nos puede
ayudar a tomar una decisión cuando tenemos varios criterios importantes. Además, nos ayuda a identificar la
que sería la mejor decisión, ranking de decisiones, buenos o malos criterios, visualizar la toma de decisiones,
identificar los puntos de conflicto, justificar las decisiones, etc.
Visual Promethee es, por tanto, un software que implementa los métodos de decisión multicriterio
Promethee y GAIA, además de poder representar y valorar soluciones para algunos otros.
Visual Promethee ha sido desarrollado por ‘VPSolutions’ bajo la supervisión del profesor Bertrand
Mareschal en la ‘Solvay Brussels School of Economics and Management of the Université Libre de Bruxelles’.
Es un software libre con versiones académicas, de pago, demos, etc. Se puede descargar en el siguiente
enlace:
‘visual.promethee-gaia.net’
4.2.Interfaz y ventana de comandos de Visual Promethee-GAIA
A continuación se desarrollarán y se intentarán explicar los comandos, gráficas y conceptos más
importantes del Visual Promethee-GAIA, los cuales se emplearán en sucesivos apartados para representar
gráficas. Decir, que con este software se pueden trabajar en diferentes escenarios y con otras muchas
funcionalidades que se escapan al radio de nuestro proyecto. Aun así, se puede descargar el manual del
Promethee donde queda recogido todo lo relacionado con Visual Promethee. Se puede descargar en el
siguiente enlace:
http://www.promethee-gaia.net/files/VPManual.pdf
Para explicar cómo funciona el Promethee así como las posibilidades que ofrece, utilizaremos el ejemplo
propuesto en el apartado de ‘Técnicas Promethee’, donde se explican dichas técnicas. Recordemos que este
ejemplo relata sobre la elección de uno de los cinco festivales de música propuestos: Wacken, Tomorroland,
En Vivo, Leyendas y Arenal; tiene además 4 criterios: precio, calidad, duración y distancia.
3. Visual PROMETHEE-GAIA
56
56
Si abrimos el Promethee nos saldrá la ventana que se muestra en la Imagen 12.
En esta ventana podemos diferenciar:
1. Parte superior, donde se indicarán los diferentes criterios a seguir, sus unidades y si están activos o no.
Además, podemos elegir el símbolo que representará a cada criterio en las gráficas que vayamos
obteniendo
2. Preferences. Se pondrá si los criterios son de maximizar o de minimizar, los pesos de cada uno de
ellos, el criterio generalizado elegido (ver ‘Técnicas Promethee’), la escala (absoluta, %, ...) y los
parámetros de los criterios generalizados.
3. Statistics. En esta parte no se ha de indicar nada en principio, ya que estos valores se calcularán a
partir de los datos de las alternativas en los criterios.
4. Evaluations. Se irán incluyendo las diferentes alternativas de las que disponemos, su representación
para las gráficas y los valores de cada alternativa en cada criterio.
Es muy fácil ir cambiando todos los valores, nombres y parámetros que se indican en esta tabla inicial y
adaptarlos a nuestro caso. Basta con ir ‘pinchando’ en cada recuadro e ir cambiando e introduciendo los
valores, nombres y parámetros que queramos.
En la barra de herramientas podemos añadir y quitar filas o columnas, añadir filtros, crear grupos de
criterios o alternativas, entre otros.
Para nuestro ejemplo obtenemos:
Imagen 11. Particularización Interfaz Promethee
El propio programa completa la sección ‘Statistics’ y enfatiza los máximos y los mínimos de cada
alternativa para cada uno de los criterios.
Para que la explicación del apartado siguiente sea más comprensible, recogemos la solución obtenida por
el Promethee para nuestro caso. Basta con presionar para obtener la tabla:
Imagen 12. Resultados Obtenidos Promethee
Con anterioridad ya hemos visto cómo interpretar esta imagen. Una manera más fácil y representativa de
ver la información que se obtiene es a través de las gráficas.
4.3.Gráficas de interés
Visual Promethee ofrece diferentes tipos de gráficas que son de gran interés y que se utilizarán en
apartados sucesores. Explicaremos las más importantes de ellas y a las que les daremos uso.
4.3.1. Promethee Rankings
Imagen 13. Promethee Rankings
3. Visual PROMETHEE-GAIA
58
58
La parte de la izquierda corresponde al Promethee I y la parte de la derecha corresponde al Promethee II.
Se pueden observar tres columnas: la derecha, la central y la izquierda.
La columna de la izquierda representa phi+ donde se observa que ninguna alternativa llega a los 0,5 de
dominancia sobre el resto (la dominancia de 0,5 viene representada por la línea horizontal). La columna central
representa phi-. Uniendo los valores de cada alternativa en cada una de estas columnas podemos ver, en la
parte central de esta parte izquierda, la phi global.
La columna de la derecha (y parte derecha de la imagen) corresponde a Promethee II donde sólo se
incluyen los valores globales de phi. En la parte roja de la columna los valores negativos, y en la parte verde
los valores positivos.
Estas gráficas nos recuerdan a los métodos de Dominación Simple, Estocástica y de Rankings vistos en
apartados anteriores, además de a la gráfica del método de Hurwicz.
Promethee Diamond es una manera alternativa de representar los rankings aquí mostrados.
4.3.2. Promethee Network
Imagen 14. Promethee Network
En esta gráfica se muestran claramente las preferencias de unas alternativas respecto de otras. Por
ejemplo, ante el mismo valor de phi+, es preferible Leyendas con un valor de phi- mayor a En Vivo. La
dominancia se representa con una flecha indicando quién domina a quién.
4.3.3. Plano GAIA
Es una de las representaciones más importantes de este software.
Imagen 15. Plano GAIA 1
El plano GAIA es una representación en dos dimensiones del problema. Como bien sabemos, el número
de criterios (en este caso 4) es igual al número de dimensiones de nuestro problema. GAIA utiliza por tanto el
método ‘Principal Components Analysis’ para reducir nuestras 4 dimensiones del problema a sólo 2 y al
mismo tiempo reducir los errores o pérdidas de información al realizar este proceso.
La incorporación de GAIA a Visual Promethee permite incorporar una tercera dimensión para aquellos
casos donde sea difícil pasar a 2 dimensiones, o la pérdida de información sea grande. Tenemos por tanto las
dimensiones U, V y W que podrían corresponderse con los ejes X, Y y Z.
Debido a la pérdida de información, en el menú de la derecha se marcan tres posibles opciones de
representación:
a. U-V que recoge el 93% de la información
b. U-W que recoge el 75% de la información
c. W-V que recoge el 28% de la información
Usualmente para analizar el plano se escogerá la opción que incluya más información y por tanto mayor
calidad (mostrada en la esquina inferior derecha), ya que estos valores varían en función del problema que
tengamos.
Las posiciones de cada criterio representan cuáles serían los valores óptimos para cada uno de ellos. Así
mismo, el sentido en el que se disponen, muestra cuál es la dirección de mejora de cada criterio en particular.
La posición de cada alternativa se establecerá atendiendo hacia donde crece o mejora más esa alternativa
respecto a los criterios.
3. Visual PROMETHEE-GAIA
60
60
Podemos obtener del plano GAIA la siguiente información:
- Respecto a las alternativas, podemos divisar cuáles pueden ser similares o semejantes o presentar
características similares respecto al conjunto de los criterios. En nuestro ejemplo, no hay grandes
semejanzas entre las alternativas (todas están muy separadas unas de otras), aunque parece que
Leyendas y Arenal presenta mayores similitudes.
- Respecto a los criterios, es importante ver la orientación de cada uno de ellos.
1. Sentidos opuestos indican objetivos contrapuestos. En nuestro caso será difícil encontrar una
alternativa que cumpla que mejore la calidad (maximizarla) y la distancia (minimizarla). Siempre
se produce que al mejorar la calidad se empeora la distancia.
2. Sentidos semejantes indican objetivos parecidos. En nuestro caso, observamos que el precio y la
distancia poseen características (sentidos) semejantes, por lo que será fácil encontrar alternativas
que mejoren ambos criterios. Vemos que Leyendas, Arenal y En Vivo cumplen esto.
3. El tamaño de los vectores indica la importancia que le da el decisor a las variaciones en cada uno
de los criterios. Así, se le da más importancia a las variaciones en la duración que a las de otro
criterio. Esto no quiere decir que este criterio sea más importante, sino que sus variaciones cobran
más importancia respecto a los resultados obtenidos.
- Respecto a las posiciones relativas de los criterios y de las alternativas, podemos ver en el plano qué
alternativas son mejores o peores para cada uno de los criterios. Si clicamos con el botón derecho en
el plano y seleccionamos ‘show axis’ veremos la recta que representa cada criterio.
Imagen 16. Plano GAIA 2
Vemos por la inclinación de la recta, que Wacken es el festival más caro. En Vivo es el más barato.
- Toma de Decisión. Corresponde con el punto y vector rojo que se ve en la imagen. Vemos que la
decisión se orienta más hacia las alternativas que presentan mejor distancia, ya que coinciden en el
mismo sentido. Por contra, la calidad queda en sentido opuesto lo que indica que no será uno de los
criterios realmente influyentes en la toma de decisión.
4.3.4. GAIA Webs
Imagen 17. GAIA Webs
Indica las preferencias o la importancia relativa que cada uno de los criterios tiene sobre cada una de las
alternativas en la toma de la decisión final.
4.3.5. Walking Weights
Imagen 18. Walking Weights
Este método resulta ser de mucha utilidad, ya que sin modificar ningún dato y moviendo sólo el
indicador inferior, podemos realizar un análisis de sensibilidad de cómo varía la elección dependiendo de los
valores de los criterios. La parte superior representa las soluciones del Promethee II.
3. Visual PROMETHEE-GAIA
62
62
4.3.6. Frontera Eficiente
Imagen 19. Frontera Eficiente
Representa el Frente de Pareto, es decir, la frontera eficiente. Aquellas alternativas que se encuentren en
dicha frontera, serán eficientes de escoger. Las alternativas que se encuentren fuera de dicha frontera siempre
se verán superadas en algún aspecto por otras alternativas, por lo que no son eficiente.
En nuestro caso tanto Leyendas como Arenal se encuentran en la frontera eficiente, por lo que escoger
uno de estos festivales sería buena elección. Sin embargo, Wacken y Tomorroland no se encuentran en la
frontera eficiente y serían malas opciones escogerlos como festivales a los que asistamos.
4. INTRODUCCIÓN AL OPENDSS
4.1. Introducción
OpenDSS es un software de simulación de sistemas de distribución de energía eléctrica, desarrollado
por EPRI (Electric Power Research Institute).
Es un programa de simulación en el dominio de la frecuencia con las funcionalidades propias de los
simuladores comerciales, así como nuevas herramientas que tienen en cuenta futuras necesidades relacionadas
con los esfuerzos de modernización de las redes actuales.
El programa fue originalmente pensado como una herramienta para el análisis de la interconexión de
generación distribuida, pero su continua evolución ha llevado al desarrollo de otras funcionalidades que son
perfectas, por ejemplo, para estudios de eficiencia en el suministro de energía y estudios de armónicos.
OpenDSS representa los circuitos de distribución a través de ecuaciones de admitancias nodales. Cada
elemento del sistema es representado por una matriz de admitancia nodal primitiva. Cada matriz primitiva es
adjuntada a la matriz de admitancias del sistema, por lo que el sistema de ecuaciones que representa al sistema
es solucionado con la ayuda de algoritmos de matrices dispersas.
OpenDSS está diseñado para recibir instrucciones en forma de texto. Puede accederse al programa tanto
a través de una aplicación independiente como del COM server.
La aplicación independiente cuenta con una interfaz de usuario básica, aunque completamente funcional,
que permite interactuar con el programa, mientras que el COM server permite conectar el OpenDSS con
otros programas tales como Matlab, proporcionando de esa manera una gran capacidad de análisis de la
información. El siguiente esquema muestra cómo interactúan los diferentes módulos dentro de la estructura de
OpenDSS.
Imagen 20. Esquema OpenDSS
En esta imagen podemos ver el esquema de simulación y programación del OpenDSS. Observamos
como podemos introducirle información mediante scripts, a través de la COM o programando nosotros
mismos. El software nos devolverá los resultados en scripts.
4. Introducción al OpenDSS
64
64
4.2. Instalación y configuración con Matlab
4.2.1. Descarga e instalación
OpenDSS puede descargarse en el siguiente enlace:
http://smartgrid.epri.com/SimulationTool.aspx
En dicha página seleccionaremos los archivos de instalación de 32 bits o de 64 bits. Deberemos de
descargar todos los archivos que se nos muestran:
Simplemente para la instalación hemos de ejecutar el ‘.exe’ y seguir los pasos que se nos indican.
Otra forma, es descargarse directamente el archivo de instalación del siguiente enlace:
https://sourceforge.net/projects/electricdss/files/
Los casos del IEEE (ejemplos de circuitos de distribución) se pueden descargar en:
http://ewh.ieee.org/soc/pes/dsacom/testfeeders/
4.2.2. Configuración con Matlab
Una vez instalado, y para poder controlar el OpenDSS desde Matlab, será necesario registrar el ‘.dll’
siguiente:
Para ello hay que seguir los siguientes pasos:
1. Abrir la ventana/consola de comandos de Windows (introducir en el buscador de Windows ‘cmd’ y
presionar ‘intro’).
2. Ubicarse, dentro de la ventana de comandos, en el directorio o carpeta donde se encuentre el ‘.dll’
anterior.
3. Escribir en la propia ventana de comandos: ‘Regsvr32 OpenDSSengine.dll’.
Con esto ya podemos controlar el OpenDSS desde otros paquetes de software.
4.3. Programación en la interfaz Del OpenDSS
A la interfaz del propio OpenDSS se llega utilizando el archivo‘OpenDSS.exe’, esto hará que aparezca
la interfaz de usuario del programa. A través de dicha interfaz es posible desarrollar los códigos de entrada
para controlar al OpenDSS.
Imagen 21. Interfaz OpenDSS
Directamente, donde aparece el código anterior, hemos de ir desarrollando nuestra programación. A
continuación se explican los conceptos básicos de dicha programación que hemos seguido para nuestro caso
práctico.
4.3.1. Estructura OpenDSS
Antes de empezar con la estructura de programación, veamos un ejemplo de cómo sería un circuito que
debemos de resolver. Éste corresponde al IEEE13 Test Case.
Imagen 22. Esquema IEEE13
4. Introducción al OpenDSS
66
66
Podemos diferenciar:
- Bus 650
- Diferentes nodos 645, 652, 680, ...
- Un regulador entre el nodo 632 y el bus 650 (a efectos del OpenDSS se tratará como un transformador
especial)
- Un transformador entre los nodos 633 y 634
- Un interruptor entre los nodos 671 y 692
- Diferentes líneas entre los distintos nodos
Mencionar que, aunque en el esquema no se represente, habrá un transformador con la fuente, es decir,
un transformador que ‘separe’ nuestro circuito de la red eléctrica.
Para realizar una programación ordenada y entendible se aconseja seguir la siguiente estructura de
programación:
1. Datos básicos del circuito. Introduciremos:
- el nombre del archivo ‘.dss’
- el voltaje base que nos llega a nuestro circuito desde la red eléctrica
- la relación entre las cantidades reales y las cantidades básicas (pu o per unit)
- MVAsc3, que se define como , para las 3 fases
- MVAsc1, que se define como , donde . Debe de ser
de la misma magnitud que MVAsc3. Esta notación es una forma de definir las impedancias de la
fuente. También podríamos usar directamente las corrientes de cortocircuito mediante ISC1 e
ISC3.
2. Transformador principal. Lo definiremos como:
- Nombre del transformador
- Número de fases del transformador
- Número de bobinas
- Relación entre las reactancias del devanado 1 al 2 (XHL), 2 al 3 (XLT) o 1 al 3 (XHT)
- A continuación se definen las características de cada devanado (wdg = 1 si es el devanado 1),
introduciendo en qué nodo o bus está conectado cada uno (bus =), su configuración de conexión
(estrella o triángulo) mediante ‘conn’, kV, kVA y el porcentaje de la resistencia del devanado en
base a los kVA del devanado (%r)
3. Otros transformadores del circuito. Se definen exactamente igual que el transformador principal. La
única diferencia radica en la conexión de cada devanado a cada bus o nodo, lo que hará localizar cada
transformador en una zona del circuito diferente.
Se muestra a continuación un primer ejemplo de las 3 primeras partes recomendadas en la programación.
Imagen 23. Estructura OpenDSS 1
4. Tipos de líneas que nos encontraremos en el circuito. Esto dependerá del tipo de conductor que puede
haber entre nodos o buses y sus características, como sus propias impedancias entre otros.
- Nombre de la línea, número de fases y frecuencia
- Matriz r, que corresponde a la matriz de resistencias (por fases) del conductor.
- Matriz x, que corresponde a la matriz de reactancias (por fases) del conductor. Tanto la matriz de
reactancias como la de resistencias estarán en ohmios/unidad longitud
- Matriz c, matriz de capacitancia (capacidad para almacenar carga y energía potencial eléctrica) en
nanofaradios/unidad longitud
Como la notación y la visualización de dichas matrices pueden ser no fácil, veamos cómo serían en un
ejemplo directamente.
Imagen 24. Estructura OpenDSS 2
Podemos observar en la imagen anterior, como cada fila correspondiente a cada matriz está compuesta por
6 números. Estos seis números corresponden al triángulo superior derecho de la matriz. Cabe destacar que
estas matrices son simétricas.
Cada una de las filas queda separada en la programación por ‘ | ‘ (símbolo que hace columnas nuevas o
hace que pase a la columna siguiente). Así, podemos ver que el elemento rmatrix(2,1)=0.02992424 que será el
mismo que el rmatrix(1,2).
Podemos apreciar que cada fila y columna representan las diferentes fases del conductor, por lo que un
elemento (1,2) indicará que se encuentra entre las fases 1 y 2. Es por ello que la matriz es simétrica.
Estas matrices suelen ser dato de los conductores o se pueden calcular a través de las fórmulas y
procedimientos descritos en el manual de OpenDSS. A nosotros, en apartados sucesores, se nos darán como
dato.
Podemos introducir aquí ‘Normamps’ o ‘Emergamp’ que nos indicarían las corrientes máxima y de
emergencia de cada tipo de línea.
4. Introducción al OpenDSS
68
68
5. Líneas existentes en el circuito. Éstas corresponden con la unión de los nodos, como muestra la
imagen.
Imagen 25. Representación líneas
- Nombre de la línea
- Número de fases
- Buses entre la que se encuentra (Bus1= Bus2=). Además debemos de indicar el tipo de conexión
con cada una de las fases. Por defecto y con una conexión estándar, será ‘1.2.3’.
- Código de línea, es decir, el tipo de línea al que corresponde. El tipo de línea debe corresponder
con algunas de las clases de líneas definidas en el apartado anterior
- Longitud
Para mayor claridad mostramos a continuación un ejemplo.
Imagen 26. Estructura OpenDSS 3
6. Regulador. Este control se usa para emular una herramienta reguladora del voltaje o control LTC
(Load Tap Changing Control). Para que se comprenda y ya que no es objeto de este proyecto entrar en
detalle en este sentido, se podría decir que controla y ajusta el arrollamiento de los devanados del
transformador, por lo que ajusta y controla el voltaje del devanado secundario. Por ello, para definirlo
en el OpenDSS debemos:
- Definir un transformador como ya hemos visto anteriormente
- Definimos el nombre del regulador, a qué transformador va dirigido, y las siguientes
características:
a. Devanados: indica el número de devanados que controla el regulador. Por defecto 1 o 2
b. Vreg: ajustes del voltaje del regulador para los devanados que se controlarán. Por defecto 120
V
c. Band: ancho de banda para el bus controlado. Por defecto 3 V
d. Ptratio: relación de la PT que convierte la tensión del bobinado controlada, al regulador del
voltaje. Por defecto 60 V
e. Ctprim: relación, en amperios, del bobinado primero para la conversión en la línea. Por
defecto el amperaje en el secundario es de 0,2 amperios
f. R y X: ajustes para compensar el cambio de voltaje en la línea
Todas estas variables se darán como dato.
En el ejemplo que se muestra a continuación, vemos que se definen dos reguladores, esto es porque no se actúa
sobre todas las fases de la línea.
Imagen 27. Estructura OpenDSS 4
7. Cargas puntuales en los diferentes nodos. Se definirán como:
- Nombre de la carga
- Bus o nodo donde se encuentre
- Fases donde se encuentre la carga
- Configuración de la carga
- Modelo de la carga. Es una variable que define cómo variará la carga en función del voltaje.
Valdrá 1 si la potencia activa (P) y la reactiva (Q) son constantes; 2 si la impedancia (Z) es
constante; 3 si P es constante y Q cuadrática; 4 si P y Q son exponenciales con la forma
; 5 si la corriente es constante, etc.
- kV, kVAR y kW
Se muestra a continuación un ejemplo donde se definen algunas cargas puntuales:
Imagen 28. Estructura OpenDSS 5
8. Finalmente introducimos el voltaje base que tomará el programa y le indicamos los resultados que
queremos obtener. Algunos de estos comandos para mostrar voltajes pueden ser:
Imagen 29. Estructura OpenDSS 6
4. Introducción al OpenDSS
70
70
OpenDSS muestra una gran versatilidad y existen muchos otros comandos y funcionalidades que
pueden ser de utilidad. Aquí hemos mostrado aquellos básicos que hacen que una microgrid pueda ser
simulada. De esta forma, y ya de manera más avanzada, explicaremos a continuación otros comandos que nos
serán de utilidad.
9. Definición de Generadores, para simular aerogeneradores, placas solares o cualquier elemento que
aporte potencia al circuíto. La estructura de su escritura es muy parecida a la de las cargas,
estableciendo el nombre, el bus, la fase, la configuración, kV, kW o kVAR. Las dos principales
diferencias serían el modelo del generador (1 si inyecta kW=cte, 2 con admitancia=cte, 3 con kW y
kV =c cte, etc) y el tipo de generador ‘duty’.
Imagen 30. Estructura OpenDSS Generadores
Para asignar el tipo de generador ‘duty’ debemos de hacer uso de lo que se conoce como ‘Loadshape’ o
forma que tienen las cargas o las propias de los generadores.
10. Loadshape. Es la forma que tienen las cargas. Así, y para entenderlo mejor, es posible que una carga
esté activa y ‘funcione’ al 30% al comienzo del día y con forme éste avance obtenga su máximo valor
a las 17:00 horas para luego al final volver a su ‘rendimiento’ original. No sólo es posible realizar esto
a nivel diario, si no también a nivel mensual o anual. Para formalizar esto, basta con definir un vector
como se muestra en el ejemplo, donde se incluyen 24 datos, uno para cada hora del día, por ejemplo.
Imagen 31. Estructura OpenDSS Loadshape 1
Para que esto quede patente en las cargas, es necesario escribir al final de cada línea de cada cargar lo
correspondiente a cómo son mediante ‘Yearly= nombre_loadshape_año’ o
‘Daily=nombre_loadshape_día’.
Imagen 32. Estructura OpenDSS Loadshape 2
De la misma manera que para las cargas, también se puede definir para los generadores, como ya
hemos comentado. La manera más fácil de hacerlo es importando los valores de un fichero Excel
‘.csv’. Esto ocurre ya que si un año tiene 365 días, serían mínimo 8760 valores para cada hora del año.
Las cargas son valores constantes a priori, y los generadores aportarán kW o kV de manera variable,
por eso, para las cargas, basta con programarlas sólo para un intervalo que se irá repitiendo.
Imagen 33. Estructura OpenDSS Loadshape 3
11. Medidores de Energía, para controlar y poder ver de forma acumulada, los parámetros que nos
interesen en determinadas zonas de nuestra red. Este tipo de medidores tienen gran complejidad a la
hora de establecer las zonas de medida y puntos de partida. Para no extendernos mucho, simplemente
explicaremos su estructura de programación.
Imagen 34. Estructura OpenDSS Energy Meter
12. Monitores, que representarán cómo evolucionan los parámetros que queramos de los distintos
elementos en función del tiempo. Debemos de elegir el modo del monitor, es decir, 1 para que nos
muestre el voltaje y la intensidad o 2 para la potencia, por ejemplo.
Imagen 35. Estructura OpenDss Monitor
4.3.2. Cargar archivos de Excel o del OpenDSS
Es posible que el propio programa cargue archivos de otros programas. Así, si tenemos un ‘.dss’
guardado aparte de nuestra ventana principal del OpenDSS podemos hacer que se cargue y utilice la
información de ese otro fichero ‘´dss’. Esto se hace a través del comando:
o
Suele ser habitual que la programación de los tipos de líneas del circuito se haga en un fichero aparte y
se importe. Esto se hace para evitar que el código se haga muy engorros con las matrices de resistencias,
reactancias y capacitancias.
Imagen 36. Redirect
4. Introducción al OpenDSS
72
72
También suele ser habitual cargar datos de matrices, de voltajes de las líneas o las coordenadas de los
nodos del circuito para poder representarlo, desde Excel. Para que sirva de ejemplo, con el comando
‘BusCoords nombre.csv’ podemos cargar o importar las coordenadas de los nodos. Todas estas funciones
están disponibles en el manual.
4. 4. Programación y Control desde Matlab
4.4. 1. Función para iniciar el OpenDSS
Para empezar a trabajar desde Matlab es necesario definir una función que active el ‘.dll’ que
registramos anteriormente. Además, Matlab interactúa con el OpenDSS a través del ActiveX (ya integrado)
por lo que será necesario activar todo esto.
Imagen 37. Conexión Matlab – OpenDSS
Esta función será ‘DSSStartup.m’
Imagen 38. Inicialización en Matlab 1
4.4.2. Comandos desde la ventana principal de Matlab
Con esta función ya podremos empezar a controlar desde Matlab el OpenDSS. Previamente hay que
llamar a esta función en nuestra ventana de comandos principal de Matlab, compilar nuestro fichero ‘.dss’,
activar el circuito y resolverlo. Estos comandos deberían de incluirse siempre en nuestra ventana de Matlab
antes de empezar:
Imagen 39. Inicialización en Matlab 2
A partir de aquí, podemos pedirle a Matlab que nos devuelva los voltajes en las líneas, que nos
represente el circuito, que nos de las pérdidas que se produzcan en los elementos,.... A través de Matlab
podemos acceder a todas las capacidades de OpenDSS y producir las mismas salidas que al utilizar la
aplicación independiente, también cuenta con comandos especiales que transfieren la información
directamente al workspace de Matlab. Algunos comandos pueden ser:
- DSSCircuit.AllBusVmagPU
- DSSCircuit.AllElementLosses
- DSSCircuit.ActiveElement.Powers
- DSSCircuit.ActiveElement.Yprim
- DSSCircuit.ActiveElement.seqCurrents
- DSSCircuit.AllNodeDistancesByPhase(1)
- DSSCircuit.AllBusNames
- DSS.TextCommand=’Set normvminpu=1.05’
- DSS.TextCommand=’plot profile phases=all’
- DSS.TextCommand=’Show Voltages LN’
Cabe mencionar la importancia del comando DSS.TextCommand= ‘redirect nombre.dss’. A través de
este comando podemos cargar todos los archivos al OpenDSS desde Matlab sin tener que programar nada en
el OpenDSS. Es decir, podemos trabajar desde cero con el Matlab.
Imagen 40. Programación Matlab
4. Introducción al OpenDSS
74
74
5.NUESTRO PROBLEMA. PARTICULARIZACIÓN
EN OPENDSS
5.1. Red de Distribución
La red de distribución que utilizaremos para simular será la correspondiente al Test CaseIEEE 37-bus
Feeder.
Imagen 41. 37-bus Feeder
Podemos diferenciar:
- Un regulador entre el bus 799 y el nodo 701
- Un total de 37 nodos
- Un transformador entre los nodos 709 y 775
Sin embargo, como ya se ha descrito con anterioridad, se utilizará una modificación de esta red de
5.Nuestro problema. Particularización En Opendss
76
76
distribución. La principal diferencia es la incorporación de diferentes agentes a esta red, tales como una batería
(o grupo electrógeno), una pila (tomaremos como generador de combustible), un generador solar, un
generador eólico y un PEV. Los nodos donde colocaremos estos agentes serán los nodos 701, 720, 730, 722 y
737 respectivamente.
Imagen 42. 37-bus Feeder modificado
5.2. Características de la Red de Distribución
Nuestra red de distribución tendrá las siguientes caracterísiticas, correspondientes a los transformadores,
regulador, nodos y cargas.
5.2.1. Características de los cables. Códigos de las líneas
Para los diferentes códigos de líneas, se presentan sus fases y las características de cada conductor.
Tabla 50. Características de los conductores
Además disponemos de las matrices de admitancias y de la fase de las impedancias para cada
configuración.
Tabla 51. Matriz de Admitancias y Fases
5.2.2. Datos de las líneas (segmentos entre nodos)
Cada uno de los segmentos o líneas que unen cada par de nodos, tienen una longitud y una configuración
de líneas (anteriores) diferentes.
5.Nuestro problema. Particularización En Opendss
78
78
Tabla 52. Líneas entre nodos
5.2.3. Datos de los tranformadores
Tenemos el transformador de la red y el que se encuentra entre los nodos 709 y 775. Se especifican los
kVA, kV, %r y XHL para cada uno de ellos.
Tabla 53. Datos de los transformadores
5.2.4. Datos del regulador
Las características del regulador serán las siguientes.
Tabla 54. Datos del regulador
5.2.5. Cargas puntuales
Para las cargas iniciales que tendremos en cada nodo, disponemos del modelo de la carga y los kW y
kVAr para cada fase.
Tabla 55. Cargas Puntuales
5.Nuestro problema. Particularización En Opendss
80
80
5.2.6. Datos de los Generadores
Los datos de los generadores y del PEV son los siguientes:
- PEV: corriente constante (sólo consume). Trabaja a 15 kW/h cada 100 km.
- Grupo Electrógeno tipo Genrador Inverter Insonorizado Ayerde AY-1200 KT 1’2 kVA 1 kW.
- Aerogenerador tipo Planta de Sotavento 2300 kW 243,68 kVAR.
- Pilas de combustible tipo Fujian Yanam Power Group 8 kW 1000 kVA.
- Placas solares (100) 150 kW pf=0,8.
Todas las medidas están por horas.
5.3. Red de Distribución. Programación en OpenDSS
Siguiendo la estructura recomendada y explicada en apartados anteriores y teniendo en cuenta la
programación de los generadores, loadshape y demás, empezamos con la definición del propio archivo.
Clear
new object=circuit.ieee37
~ basekv=230 pu=1.00 MVAsc3=200000 MVAsc1=210000
A continuación, definimos los ‘loadshapes’.
!LOADSHAPE: hay 8760h en un año, loadshape day son 24h al día
!New loadshape.day 24 1.0
!~ mult=(.3 .3 .3 .35 .36 .39 .41 .48 .52 .59 .62 .94 .87 .91 .95 .95 1.0 .98 .94
.92 .61 .60 .51 .44)
New loadshape.year 24 1.0
~ mult=(.3 .3 .3 .35 .36 .39 .41 .48 .52 .59 .62 .94 .87 .91 .95 .95 1.0 .98 .94
.92 .61 .60 .51 .44)
New loadshape.wind Npts=8760 Interval=1.0
~ Csvfile=shape_aero.csv Action= normalize
New loadshape.solar Npts=8760 Interval=1.0
~ Csvfile=shape_solar.csv Action= normalize
New loadshape.grupo Npts=8760 Interval=1.0
~ Csvfile=shape_grupo.csv Action= normalize
New loadshape.pilas Npts=8760 Interval=1.0
~ Csvfile=shape_pilas.csv Action= normalize
El siguiente paso será definir el tranformador que está entre los nodos 709 y 775.
! SUBESTACIÓN-TRANSFORMADOR
New Transformer.SubXF Phases=3 Windings=2 Xhl=8
~ wdg=1 bus=sourcebus conn=Delta kv=230 kva=2500 %r=1
~ wdg=2 bus=799r conn=Delta kv=4.8 kva=2500 %r=1
! CARGA DEL TRANSFORMADOR
New Transformer.XFM1 Phases=3 Windings=2 Xhl=1.81
~ wdg=1 bus=709 conn=Delta kv=4.80 kva=500 %r=0.045
~ wdg=2 bus=775 conn=Delta kv=0.48 kva=500 %r=0.045
En nuestro archivo principal llamamos e importamos la información de los códigos de las diferentes
líneas. Si no queremos importar estos datos, podemos escribir directamente en nuestro documento de
programación pirncipal las características de las matrices de los códigos de línea.
! IMPORTAR LOS CÓDIGOS DE LAS LÍNEAS Y LAS MATRICES
Redirect IEEELineCodes.dss
Estos datos del archivo importado son los siguientes.
New linecode.721 nphases=3 BaseFreq=60
!!!~ rmatrix = (0.0554906 | 0.0127467 0.0501597 | 0.00640446 0.0127467 0.0554906 )
!!!~ xmatrix = (0.0372331 | -0.00704588 0.0358645 | -0.00796424 -0.00704588
0.0372331 )
!!!~ cmatrix = (124.851 | 0 124.851 | 0 0 124.851 )
~ rmatrix = [0.055416667 | 0.012746212 0.050113636 | 0.006382576 0.012746212
0.055416667]
~ xmatrix = [0.037367424 | -0.006969697 0.035984848 | -0.007897727 -0.006969697
0.037367424]
~ cmatrix = [80.27484728 | 0 80.27484728 | 0 0 80.27484728]
New linecode.722 nphases=3 BaseFreq=60
!!!~ rmatrix = (0.0902251 | 0.0309584 0.0851482 | 0.0234946 0.0309584 0.0902251 )
!!!~ xmatrix = (0.055991 | -0.00646552 0.0504025 | -0.0117669 -0.00646552 0.055991 )
!!!~ cmatrix = (93.4896 | 0 93.4896 | 0 0 93.4896 )
~ rmatrix = [0.089981061 | 0.030852273 0.085 | 0.023371212 0.030852273
0.089981061]
~ xmatrix = [0.056306818 | -0.006174242 0.050719697 | -0.011496212 -0.006174242
0.056306818]
~ cmatrix = [64.2184109 | 0 64.2184109 | 0 0 64.2184109]
New linecode.723 nphases=3 BaseFreq=60
!!!~ rmatrix = (0.247572 | 0.0947678 0.249104 | 0.0893782 0.0947678 0.247572 )
!!!~ xmatrix = (0.126339 | 0.0390337 0.118816 | 0.0279344 0.0390337 0.126339 )
!!!~ cmatrix = (58.108 | 0 58.108 | 0 0 58.108 )
~ rmatrix = [0.245 | 0.092253788 0.246628788 | 0.086837121 0.092253788 0.245]
~ xmatrix = [0.127140152 | 0.039981061 0.119810606 | 0.028806818 0.039981061
0.127140152]
~ cmatrix = [37.5977112 | 0 37.5977112 | 0 0 37.5977112]
New linecode.724 nphases=3 BaseFreq=60
!!!~ rmatrix = (0.399883 | 0.101765 0.402011 | 0.0965199 0.101765 0.399883 )
!!!~ xmatrix = (0.146325 | 0.0510963 0.139305 | 0.0395402 0.0510963 0.146325 )
!!!~ cmatrix = (46.9685 | 0 46.9685 | 0 0 46.9685 )
~ rmatrix = [0.396818182 | 0.098560606 0.399015152 | 0.093295455 0.098560606
0.396818182]
~ xmatrix = [0.146931818 | 0.051856061 0.140113636 | 0.040208333 0.051856061
0.146931818]
~ cmatrix = [30.26701029 | 0 30.26701029 | 0 0 30.26701029]
5.Nuestro problema. Particularización En Opendss
82
82
Volviendo a nuestro archivo principal, definimos a continuación cada uno de los segmentos que unen dos
nodos. Debemos de dejar constancia para cada segmento, los nodos entre los que se encuentra, el código de
línea y su longitud.
! LÍNEAS
New Line.L1 Phases=3 Bus1=701.1.2.3 Bus2=702.1.2.3 LineCode=722 Length=0.96
New Line.L2 Phases=3 Bus1=702.1.2.3 Bus2=705.1.2.3 LineCode=724 Length=0.4
New Line.L3 Phases=3 Bus1=702.1.2.3 Bus2=713.1.2.3 LineCode=723 Length=0.36
New Line.L4 Phases=3 Bus1=702.1.2.3 Bus2=703.1.2.3 LineCode=722 Length=1.32
New Line.L5 Phases=3 Bus1=703.1.2.3 Bus2=727.1.2.3 LineCode=724 Length=0.24
New Line.L6 Phases=3 Bus1=703.1.2.3 Bus2=730.1.2.3 LineCode=723 Length=0.6
New Line.L7 Phases=3 Bus1=704.1.2.3 Bus2=714.1.2.3 LineCode=724 Length=0.08
New Line.L8 Phases=3 Bus1=704.1.2.3 Bus2=720.1.2.3 LineCode=723 Length=0.8
New Line.L9 Phases=3 Bus1=705.1.2.3 Bus2=742.1.2.3 LineCode=724 Length=0.32
New Line.L10 Phases=3 Bus1=705.1.2.3 Bus2=712.1.2.3 LineCode=724 Length=0.24
New Line.L11 Phases=3 Bus1=706.1.2.3 Bus2=725.1.2.3 LineCode=724 Length=0.28
New Line.L12 Phases=3 Bus1=707.1.2.3 Bus2=724.1.2.3 LineCode=724 Length=0.76
New Line.L13 Phases=3 Bus1=707.1.2.3 Bus2=722.1.2.3 LineCode=724 Length=0.12
New Line.L14 Phases=3 Bus1=708.1.2.3 Bus2=733.1.2.3 LineCode=723 Length=0.32
New Line.L15 Phases=3 Bus1=708.1.2.3 Bus2=732.1.2.3 LineCode=724 Length=0.32
New Line.L16 Phases=3 Bus1=709.1.2.3 Bus2=731.1.2.3 LineCode=723 Length=0.6
New Line.L17 Phases=3 Bus1=709.1.2.3 Bus2=708.1.2.3 LineCode=723 Length=0.32
New Line.L18 Phases=3 Bus1=710.1.2.3 Bus2=735.1.2.3 LineCode=724 Length=0.2
New Line.L19 Phases=3 Bus1=710.1.2.3 Bus2=736.1.2.3 LineCode=724 Length=1.28
New Line.L20 Phases=3 Bus1=711.1.2.3 Bus2=741.1.2.3 LineCode=723 Length=0.4
New Line.L21 Phases=3 Bus1=711.1.2.3 Bus2=740.1.2.3 LineCode=724 Length=0.2
New Line.L22 Phases=3 Bus1=713.1.2.3 Bus2=704.1.2.3 LineCode=723 Length=0.52
New Line.L23 Phases=3 Bus1=714.1.2.3 Bus2=718.1.2.3 LineCode=724 Length=0.52
New Line.L24 Phases=3 Bus1=720.1.2.3 Bus2=707.1.2.3 LineCode=724 Length=0.92
New Line.L25 Phases=3 Bus1=720.1.2.3 Bus2=706.1.2.3 LineCode=723 Length=0.6
New Line.L26 Phases=3 Bus1=727.1.2.3 Bus2=744.1.2.3 LineCode=723 Length=0.28
New Line.L27 Phases=3 Bus1=730.1.2.3 Bus2=709.1.2.3 LineCode=723 Length=0.2
New Line.L28 Phases=3 Bus1=733.1.2.3 Bus2=734.1.2.3 LineCode=723 Length=0.56
New Line.L29 Phases=3 Bus1=734.1.2.3 Bus2=737.1.2.3 LineCode=723 Length=0.64
New Line.L30 Phases=3 Bus1=734.1.2.3 Bus2=710.1.2.3 LineCode=724 Length=0.52
New Line.L31 Phases=3 Bus1=737.1.2.3 Bus2=738.1.2.3 LineCode=723 Length=0.4
New Line.L32 Phases=3 Bus1=738.1.2.3 Bus2=711.1.2.3 LineCode=723 Length=0.4
New Line.L33 Phases=3 Bus1=744.1.2.3 Bus2=728.1.2.3 LineCode=724 Length=0.2
New Line.L34 Phases=3 Bus1=744.1.2.3 Bus2=729.1.2.3 LineCode=724 Length=0.28
New Line.L35 Phases=3 Bus1=799r.1.2.3 Bus2=701.1.2.3 LineCode=721 Length=1.85
Las características del regulador se especifican de la siguiente forma.
! REGULADOR - Delta ABIERTO CON C ADELANTADO, A RETRASADO BASE DE AJUSTE LDC 1.5 +
j3
new transformer.reg1a phases=1 windings=2 buses=(799.1.2 799r.1.2) conns='delta
delta' kvs="4.8 4.8" kvas="2000 2000" XHL=1
new regcontrol.creg1a transformer=reg1a winding=2 vreg=122 band=2 ptratio=40
ctprim=350 R=-0.201 X=3.348
new transformer.reg1c like=reg1a buses=(799.3.2 799r.3.2)
new regcontrol.creg1c like=creg1a transformer=reg1c R=2.799 X=1.848
Las cargas puntuales iniciales serán:
! CARGAS PUNTUALES
New Load.S701a Bus1=701.1.2 Phases=1 Conn=Delta Model=1 kV= 4.800 kW= 140.0 kVAR= 70.0 Yearly=year Vminpu=0.75
New Load.S701b Bus1=701.2.3 Phases=1 Conn=Delta Model=1 kV= 4.800 kW= 140.0 kVAR= 70.0 Yearly=year Vminpu=0.75
New Load.S701c Bus1=701.3.1 Phases=1 Conn=Delta Model=1 kV= 4.800 kW= 350.0 kVAR= 175.0 Yearly=year Vminpu=0.75
New Load.S712c Bus1=712.3.1 Phases=1 Conn=Delta Model=1 kV= 4.800 kW= 85.0 kVAR= 40.0 Yearly=year Vminpu=0.75
New Load.S713c Bus1=713.3.1 Phases=1 Conn=Delta Model=1 kV= 4.800 kW= 85.0 kVAR= 40.0 Yearly=year Vminpu=0.75
New Load.S714a Bus1=714.1.2 Phases=1 Conn=Delta Model=4 kV= 4.800 kW= 17.0 kVAR= 8.0 Yearly=year Vminpu=0.75
New Load.S714b Bus1=714.2.3 Phases=1 Conn=Delta Model=4 kV= 4.800 kW= 21.0 kVAR= 10.0 Yearly=year Vminpu=0.75
New Load.S718a Bus1=718.1.2 Phases=1 Conn=Delta Model=2 kV= 4.800 kW= 85.0 kVAR= 40.0 Yearly=year Vminpu=0.75
New Load.S720c Bus1=720.3.1 Phases=1 Conn=Delta Model=1 kV= 4.800 kW= 85.0 kVAR= 40.0 Yearly=year Vminpu=0.75
New Load.S722b Bus1=722.2.3 Phases=1 Conn=Delta Model=4 kV= 4.800 kW= 140.0 kVAR= 70.0 Yearly=year Vminpu=0.75
New Load.S722c Bus1=722.3.1 Phases=1 Conn=Delta Model=4 kV= 4.800 kW= 21.0 kVAR= 10.0 Yearly=year Vminpu=0.75
New Load.S724b Bus1=724.2.3 Phases=1 Conn=Delta Model=2 kV= 4.800 kW= 42.0 kVAR= 21.0 Yearly=year Vminpu=0.75
New Load.S725b Bus1=725.2.3 Phases=1 Conn=Delta Model=1 kV= 4.800 kW= 42.0 kVAR= 21.0 Yearly=year Vminpu=0.75
New Load.S727c Bus1=727.3.1 Phases=1 Conn=Delta Model=1 kV= 4.800 kW= 42.0 kVAR= 21.0 Yearly=year Vminpu=0.75
New Load.S728 Bus1=728 Phases=3 Conn=Delta Model=1 kV= 4.800 kW= 126.0 kVAR= 63.0 Yearly=year Vminpu=0.75
New Load.S729a Bus1=729.1.2 Phases=1 Conn=Delta Model=4 kV= 4.800 kW= 42.0 kVAR= 21.0 Yearly=year Vminpu=0.75
New Load.S730c Bus1=730.3.1 Phases=1 Conn=Delta Model=2 kV= 4.800 kW= 85.0 kVAR= 40.0 Yearly=year Vminpu=0.75
New Load.S731b Bus1=731.2.3 Phases=1 Conn=Delta Model=2 kV= 4.800 kW= 85.0 kVAR= 40.0 Yearly=year Vminpu=0.75
New Load.S732c Bus1=732.3.1 Phases=1 Conn=Delta Model=1 kV= 4.800 kW= 42.0 kVAR= 21.0 Yearly=year Vminpu=0.75
New Load.S733a Bus1=733.1.2 Phases=1 Conn=Delta Model=4 kV= 4.800 kW= 85.0 kVAR= 40.0 Yearly=year Vminpu=0.75
New Load.S734c Bus1=734.3.1 Phases=1 Conn=Delta Model=1 kV= 4.800 kW= 42.0 kVAR= 21.0 Yearly=year Vminpu=0.75
New Load.S735c Bus1=735.3.1 Phases=1 Conn=Delta Model=1 kV= 4.800 kW= 85.0 kVAR= 40.0 Yearly=year Vminpu=0.75
New Load.S736b Bus1=736.2.3 Phases=1 Conn=Delta Model=2 kV= 4.800 kW= 42.0 kVAR= 21.0 Yearly=year Vminpu=0.75
New Load.S737a Bus1=737.1.2 Phases=1 Conn=Delta Model=4 kV= 4.800 kW= 140.0 kVAR= 70.0 Yearly=year Vminpu=0.75
New Load.S738a Bus1=738.1.2 Phases=1 Conn=Delta Model=1 kV= 4.800 kW= 126.0 kVAR= 62.0 Yearly=year Vminpu=0.75
New Load.S740c Bus1=740.3.1 Phases=1 Conn=Delta Model=1 kV= 4.800 kW= 85.0 kVAR= 40.0 Yearly=year Vminpu=0.75
New Load.S741c Bus1=741.3.1 Phases=1 Conn=Delta Model=4 kV= 4.800 kW= 42.0 kVAR= 21.0 Yearly=year Vminpu=0.75
New Load.S742a Bus1=742.1.2 Phases=1 Conn=Delta Model=2 kV= 4.800 kW= 8.0 kVAR= 4.0 Yearly=year Vminpu=0.75
New Load.S742b Bus1=742.2.3 Phases=1 Conn=Delta Model=2 kV= 4.800 kW= 85.0 kVAR= 40.0 Yearly=year Vminpu=0.75
New Load.S744a Bus1=744.1.2 Phases=1 Conn=Delta Model=1 kV= 4.800 kW= 42.0 kVAR= 21.0 Yearly=year Vminpu=0.75
Los generadores, monitores y medidosre de energía será lo siguiente que debamos de escribir en nuestro
programa.
! GENERADORES
New Generator.DG1 Bus1=701 Phases=3 Conn=Delta Model=1 kV= 4.800 kW=1
kVAR=0.663 duty=grupo
New Generator.DG2 Bus1=720.3.1 Phases=1 Conn=Delta Model=1 kV= 4.800 kW=8
kVAR=1000.0 duty=pilas
New Generator.DG3b Bus1=722.2.3 Phases=1 Conn=Delta Model=1 kV= 4.800 kW=2300.0
kVAR=243.68 duty=wind
New Generator.DG3c Bus1=722.2.3 Phases=1 Conn=Delta Model=1 kV= 4.800 kW=2300.0
kVAR=243.68 duty=wind
New Generator.DG4 Bus1=730.3.1 Phases=1 Conn=Delta Model=1 kV= 4.800 kW=150 pf=0.8
duty=solar
! MEDIDORES ENERGÍA
New EnergyMeter.EM737 Element=Line.L31 1 Action=Save
New EnergyMeter.EM727 Element=Line.L26 1 Action=Save
New EnergyMeter.EM730 Element=Line.L27 1 Action=Save
New EnergyMeter.EM704 Element=Line.L7 1 Action=Save
! MONITORES
New monitor.M737 element=Load.S737a 1 mode=0 Action=save
New monitor.M730 element=Generator.DG4 1 mode=1 Action=save
New monitor.M720 element=Generator.DG2 1 mode=1 Action=save
Importamos las coordenadas de nuestra Red de Distribución e incluímos algunos comandos para obtener los
resultados y representaciones que queremos.
Set VoltageBases = "230,4.8,0.48"
CalcVoltageBases
BusCoords IEEE37_BusXY.csv
! solve mode=direct
set controlmode=TIME
set maxiterations=1000
Set mode=yearly number=8760 hour=0 sec=0
solve
! plot circuit power Max=1000 dots=y labels=n subs=y C1=BLUE
! plot loadshape object=grupo
! plot monitor object=M737
5.Nuestro problema. Particularización En Opendss
84
84
! show voltages LL Nodes
! show currents residual=y elements
! show powers ! kva elements
! show taps
6. MODELO, PARTICULARIZACIÓN EN
MATLAB Y ANÁLISIS DE LOS RESULTADOS
6.1. Modelo y Particularización en Matlab
6.1.1. Control de Voltaje en Matlab
En primer lugar, realizaremos un control de intervalo de voltaje para las diferentes fases de nuestra red.
Esto es, modificando los parámetros del propio OpenDSS, intentar que el voltaje de los diferentes nodos de
nuestra red queden entre un intervalo máximo y mínimo de voltaje fijado que queramos.
Teniendo en cuenta lo que ya hemos explicado que debemos de hacer antes de iniciar una simulación en
Matlab, la función que recoge este control de voltaje es la siguiente:
[DSSStartOK, DSSObj, DSSText] = DSSStartup;
% Realizar un bucle para establecer el Vmin. Ninguna carga estará por % debajo
if DSSStartOK
DSSCircuit=DSSObj.ActiveCircuit; DSSSolution=DSSCircuit.Solution;
DSSText.command='Compile (E:\Rafa\Documentos\TFG\OpenDSS\Nuestro
Problema\ieee37_prueba1_sin_daily.dss)';
% Hacemos que todas las cargas estén a un tanto por ciento determinado LoadMult = 0.9; Vmin = 1.0;
while Vmin > 0.85
DSSSolution.LoadMult = LoadMult; DSSSolution.Solve;
VA= DSSCircuit.AllNodeVmagPUByPhase(1); DistA=DSSCircuit.AllNodeDistancesByPhase(1); VB= DSSCircuit.AllNodeVmagPUByPhase(2); DistB=DSSCircuit.AllNodeDistancesByPhase(2); VC= DSSCircuit.AllNodeVmagPUByPhase(3); DistC=DSSCircuit.AllNodeDistancesByPhase(3);
6. Modelo, Particularización en Matlab Y Análisis de los Resultados
86
86
Vmin = min (VA);
if Vmin > min(VB), Vmin = min (VB); end
if Vmin > min(VC), Vmin = min (VC); end
maxX=max(DistA)+0.1; if max(DistB) > maxX, maxX=max(DistB)+0.1; end
if max(DistC) > maxX, maxX=max(distC)+0.1; end
figure
plot(DistA, VA, 'k*'); hold on; plot(DistB, VB, 'b+'); hold on; plot(DistC, VC, 'gd'); hold on;
plot([0, maxX], [0.85, 0.85], 'r'); plot([0, maxX], [1.05, 1.05], 'r');
legend('Phase A', 'Phase B', 'Phase C'); title ('Voltage Profile'); ylabel('Volts (pu)'); xlabel('distance From the EnergyMeter'); grid on;
ylim([0.8 1.1]) xlim([0 maxX])
hold off;
% Salimos del bucle disp (Vmin); LoadMult = LoadMult + 0.15; end
else a = 'DSS no ha podido iniciarse'; disp(a) end
Como podemos ver, nuestro programa va recogiendo el voltaje de todos nuestros nodos con la función
‘DSSCircuit.AllNodeVmagPUByPhase’.
A continuación hayamos cuál es el mínimo de todos ellos y comprobamos que se cumpla la condición
de voltaje mínimo. Así mismo, aumentamos el tanto por ciento al que están nuestras cargas para una posible
repetición del bucle, mediante ‘LoadMult’.
Al ejecutar dicha función, nos muestra cómo se van desplazando los diferentes voltajes hasta conseguir
nuestro objetivo. Podemos ver a a continuación algunas ventanas que nos muestran dicho proceso.
Imágenes 43 y 44: Proceso Ajuste de Voltaje
El propio Matalab nos va mostrando el proceso de reducción de voltaje paso a paso del bucle. Se han
mostrados las imágenes 1 (inicial), 5 y 11 (final) del proceso. Vemos cómo el voltaje por fase en los diferentes
nodos ha ido disminuyendo hasta que uno de ellos ha sobrepasado el límite de 0,85 pu.
Cabe destacar, que este voltaje está representado para cada nodo según la distancia a los diferentes
medidores de energía que hemos establecido. Así, los nodos más alejados (aquellos que no tienen algún
medidor de energía cerca) son los que aparecen más a la derecha.
De la misma manera, podríamos crear otra función para realizar un control de pérdidas estableciendo
unas pérdidas de potencia máximas que podemos tolerar. Aún así, y como nuesttro objetivo es optimizar la
relación entre coste, pérdidas y energía demandada, este tipo de procedimientos se nos queda ‘corto’, ya que
no podemos establecer una relación clara entre nuestros parámetros al ser un proceso que sería individualizado
6. Modelo, Particularización en Matlab Y Análisis de los Resultados
88
88
para cada uno. Del mismo modo, sería imposible realizar este proceso para el coste.
6.1.2. Problema de Optimización
6.1.2.1. Modelo
El objetivo principal de nuestro problema será el de satisfacer la demanda de energía de nuestra red y de
los PEVs (mediante el empleo de los diferentes generadores ya implementados en OpenDSS), reducir los
costes de operación y reducir en todo lo posible las pérdidas que se puedan producir en la red.
Esto queda reflejado en la siguiente función objetivo:
Notamos que todos los sumatorios están realizados en un intervalo de . Esto corresponde a
un intervalo de 24 horas, es decir, un día. Además, en el segundo término en el segundo sumatorio ,
corresponde a cada una de los 4 generadores que tenemos.
Siendo: la satisfacción de la demanda de nuestra red.
con:
Siendo: los costes de operación.
con:
Siendo:
con:
Notar que es lo mismo, excepto que en el primer término evaluamos la potencia total
generada por los 4 generadores, y en el segundo término evaluamos individualmente lo producido por cada
uno para evaluar su coste.
6.1.2.2. Valores de las variables: Cómo obtener los valores.
Los diferentes pesos de nuestra función objetivo los podremos asignar a nuestro gusto. Por ejemplo, y en
principio, asignaremos:
Tanto lo obtendremos del propio OpenDSS. Las pérdidas las
obtendremos también directamente desde el OpenDSS. Podemos ver todo lo relativo a esto, escribiendo el
siguiente código en Matlab:
DSSText.command='show generators'; DSSText.command='show meters'; DSSText.command='show losses';
Aquí nos aparecerán tanto lo que consumen las líneas, las cargas, lo que generan los generadores y las
pérdidas totales de potencia del circuíto.
Del Medidor de Energía nos interesará, sobre todo, el apartado 29 (potencia generada). Aunque
podemos ver otros que podría resultar de gran ayuda como son el 5 (potencia total requerida por la red y las
cargas en todo el período de tiempo), el 7 (máxima potencia necesaria por instante de tiempo, en nuestro caso,
6. Modelo, Particularización en Matlab Y Análisis de los Resultados
90
90
máxima potencia en una hora determinada del día), 13 (pérdidas totales), 21 (máximas pérdidas, en nuestro
caso, máximo de pérdidas en una hora determinada) o el 23 y 24 (pérdidas en el transformador y las líneas).
No hemos de confundirnos con el registro 1 o 3, que sólo medirán la potencia que pasa por la localización del
medidor de energía, y no la de toda la zona del medidor, que en nuestro caso en toda la red.
El coste de producir cada KW para cada uno de los generadores los supondremos como se describe a
continuación. Los datos son procedentes de la web de IRENA (Agencia Internacional de Energías
Renovables).
Para las energías solares y eólicas, el rango de coste está entre el 0.05 y 0.08 €/KW.Para los
combustibles fósiles y otras energías entre el 0.045 y 0.14 €/KW. Inicialmente suppndremos:
- C1 = 0.045 €/KW producido para el grupo.
- C2 =0.05 €/KW producido para las pilas.
- C3 = 0.05 €/KW producido para la eólica.
- C4 = 0.08 €/KW producido para la solar.
Sólo nos quedaría calcular cual es la potencia generada por cada generador y hallarle consecuentemente
el coste de producir dicha energía. Para ello tendremos en cuenta el riesgo de producir determinada potencia o
no, es decir, no será lo mismo producir, para la energía solar por ejemplo, un día soleado que un día nublado.
Esto lo evaluaremos, como hemos dicho, mediante el riesgo, a través de:
Ya hemos mencionado con anterioridad la potencia nominal de cada uno de los generadores, pero la
potencia que nos suministrará y que tendremos en cuenta dependiendo del riesgo, será:
la potencia nominal de cada generador
Con esto, tendremos en cuenta las siguientes cosideraciones:
- Grupo electrógeno: no consideraremos condiciones externas aleatorias relevantes que nos puedan
hacer que el rendimiento del grupo sea menor, no tendremos riesgo, por lo que:
- Pilas de combustible: no consideraremos condiciones externas aleatorias relevantes que nos
puedan hacer que el rendimiento de las pilas sea menor, no tendremos riesgo, por lo que:
- Energía eólica: considerando las condiciones que puede haber en Sevilla (por ejemplo),
estableceremos una probabilidad de riesgo del 95% de perder 50 kW cuando haya condiciones
desfavorables.
- Energía solar: considerando las condiciones que puede haber en Sevilla (por ejemplo),
estableceremos una probabilidad de riesgo del 90% de perder 80 kW cuando haya condiciones
desfavorables.
He aquí donde tenemos que ir tomando nuestra decisión para saber cuánto debemos y queremos
producir en cada uno de los generadores dependiendo del riesgo que tengamos, de la demanda de energía en
cada instante de tiempo y de las consecuencias que tendría.
Resumiendo, cada generador tiene una potencia nominal determinada y establecida. La potencia por
hora que nos suministra el generador la podemos variar dependiendo de las condiciones que se den en nuestra
red, para no excedernos y derrochar energía y por consecuencia pérdidas económicas.
El objetivo de considerar riesgo será, por tanto, el de establecer un margen de error y de actuación para
evitar que ante cambios externos podamos no cumplir con las expectativas económicas y energéticas deseadas.
Para cada iteración realizada, es decir, para cada día (24 horas) las condiciones cambiarán, por lo que el
riesgo también irá cambiando cada 24 horas.
6. Modelo, Particularización en Matlab Y Análisis de los Resultados
92
92
6.1.3. Resultados con diferentes configuraciones
Hemos de ir calculando los términos de nuestra función objetivo con diferentes configuraciones de
nuestra red. Para ello, iremos variando:
- Los costes de producir cada unidad de potencia.
- El valor de las cargas de nuestra red (PEVs) dependiendo del instante de tiempo en el que
estemos y por tanto de lo que consuman nuestros PEVs en ese instante de tiempo (no tendremos
el mismo consumo en un día soleado en el que haya mayor cantidad de usuarios usando los PEVs,
que en un día nublado, por ejemplo).
- La potencia que, dependiendo de las condiciones y el riesgo, nos suministran nuestros
generadores.
Posteriormente, con el Promethee-GAIA variaremos los pesos asignados a cada parte de nuestra función
objetivo.
Con los comandos apropiados que ya hemos indicando del Matlab, y modificando algunos datos del
OpenDSS iremos obteniendo todas las alternativas.
Todos los resultados obtenidos quedan recogidos y ordenados en los siguientes Excel (se incluyen una
pequeña parte de todas las alternativas realizadas), donde aparecen todas las modificaciones y variaciones que
se han ido realizando. Apuntar que los costes están en €/kW, las cargas en tanto por ciento de su necesidad de
potencia y las potencias nominales en KW/h. Además, apuntar también, que el propio OpenDss lo tendremos
configurado para que haga los cálculos que necesitamos evaluados en 24h, es decir, los resultados que iremos
obteniendo están ya calculados para el total de 24h.
Para la obtención de estos resultados, hemos de tener en cuenta también la variabilidad asignada en el
OpenDSS con los Loadshapes.
Recordando la función objetivo anterior:
En los Excel podremos diferenciar las siguientes columnas:
- Columnas 1 - 4: Corresponde a los costes de cada generador.
- Columna 5: , que representan el tanto por ciento sobre su valor inicial al que las cargas
están funcionando.
- Columnas 6 – 9: 4. Corresponde a las potencias nominales de cada generador.
- Columna 10: .
- Columna 11: como E(t)
- Columna 12:
- Columna 13:
- Columna 14:
- Columna 15: como los cambios realizados en cada iteración sobre la situación inicial
de partida.
Tabla 56. Excel Modificaciones Individuales
Para concretar, y a modo de ejemplo, para una subida del 10% en las potencias nominales (110% Pn)
mantenemos constantes los costes y cargas y calculamos los valores de los tres términos de la función objetivo.
De igual forma procedemos para variaciones en las cargas y costes.
Algunas consideraciones y curiosidades:
- En estas simulaciones se han ido primero adaptando las potencias que nos dan los generadores
para que se satisfaga la demanda de potencia inicial ajustándose a esta demanda. Posteriormente,
se han ido realizando los cambios adecuados para mantener que se cumple esto.
- Si sobrase potencia generada, se podría vender a la red principal de energía. Si faltase potencia
para cumplir la demanda, la red principal de energía nos la suministra. Estos costes y beneficios
no se han tenido en cuenta, pero hemos de tener presente lo que conllevaría cada una de estas
situaciones.
- Se podría haber creado un bucle ‘for’ dentro del Matlab para recoger los resultados obtenidos por
las variaciones de las cargas. La manera de hacerlo sería como se hizo en el apartado 6.1, pero eso
sí, se necesitaría un objetivo para que el bucle parase, algo que en este caso no queremos, ya que
buscamos comparar los resultados. Aun así, la manera de hacelo sería la siguiente:
DSSText.command='Set Loadmult=1.0'; for i=1:24; DSSText.command = 'set loadmult= 1.0(mult(i))'; DSSSolution.Solve; DSSText.Command = 'Show Losses';
6. Modelo, Particularización en Matlab Y Análisis de los Resultados
94
94
DSSText.Command = 'Show Voltage'; DSSText.Command ='Plot Monitor Object=OutputVoltage channels=[1 3 5]
base=[2400 2400 2400]'; DSSText.Command ='Plot loadshape object=daily'; vi(i) = DSSText.Result; disp(['File saved to: ' vi(i)]) end
- Todos los resultados que se han visto en los Excel deben de ser normalizados, para evitar que la
gran diferencia del orden de unidades de las diferentes medidas influyan y varíen los resultados a
la hora de utilizar el Promethee-GAIA. La fórmula de normalización será la usada ya con
anterioridad.
Así, a partir de aquí se mostrarán sólo las alternativas y resultados normalizados. Para la tabla
anterior (Tabla 56) quedaría como sigue:
Tabla 57. Modificaciones Individuales Normalizadas
La Tabla 58 muestra los resultados o alternativas de combinar y variar tanto los costes, pérdidas y
demandas conjuntamente.
Tabla 58. Modificaciones Combinadas Normalizadas
- Para obtener las alternativas y las diferentes situaciones que se presentan, hemos ido modificando
los costes en el propio Excel, el tanto por ciento de las cargas a través del comando ya
mencionado de Matlab y los valores de las potencias nominales en el OpenDss.
Como ya se ha mencionado, ya hemos obtenido las 3 partes necesarias de la función objetivo. Sólo
queda meter todas las alternativas recogidas (mirar Excel adjunto) en el Promethee-GAIA y obtener las
conclusiones.
6. Modelo, Particularización en Matlab Y Análisis de los Resultados
96
96
6.2. Decisiones con el Promethee-GAIA. Análisis de los resultados
6.2.1. Comparación de Alternativas en el Promethee-GAIA
Una vez recogidos los resultados con las diferentes configuraciones, hemos de comparar todas las
alternativas con el software Visual Promethee-GAIA que ya explicamos en el apartado 3.
Hemos obtado finalmente por esta técnica de incertidumbre ya que con el uso de este software (gratuito)
nos facilita mucho la toma de decisiones. Además, es la técnica idónea para comparar todas nuestras
alternativas de manera fácil y rápida, podemos incluir los pesos y obtener gráficas a nuestro antojo. Con la
gran cantidad de alternativas (casi 50) será la mejor opción.
Hasta ahora, hemos obtenido todos los posibles casos que se nos pueden presentar, es decir, diferentes
alternativas o situaciones, reflejadas en los Excel, que representan situaciones tales como el aumento en la
demanda de energía (cargas) o disminución de la misma, variaciones en el precio de producción de la energía
(en kW/h) y variaciones en cuanto a lo que nuestros generadores han de producir.
Nuestro objetivo final será decidir la producción generada por los generadores. Para ello hemos de
analizar y comparar todas las posibles situaciones para ver, ante cada una de ellas, cual ha de ser nuestra
decisión, si aumentar, disminuir o mantener la producción y rendimiento de los generadores.
Disponemos de todos los valores necesarios y datos del modelo de optimización que deben de ser
introducidos en el apartado de ‘Evaluaciones’ en el software.
Para configurar el resto del Visual Promethe-GAIA, establecemos las unidades de los criterios de
evaluación en el software (€ para los costes y kW para las pérdidas y la producción de energía) e incluímos
que sean de ‘Minimizar’.
Como ya explicamos en el apartado 3, el método Promethee usa diferentes funciones para resolver los
problemas. En nuestro caso, y para mayor sensillez, establecemos los parámetros por defecto de la función
‘Usual’ y asignamos una escala absoluta. Todo esto lo haremos inicialmente y como se muestra en la siguiente
imagen:
Imagen 45. Promethee-GAIA Inicial
6.2.2. Comparativa con Modificaciones Individuales
Para seguir un orden en la comparación de alternativas, primero iremos viendo por grupos qué situación
es la mejor, es decir, comenzaremos por las alternativas con modificaciones individuales. Recordemos que las
modificaciones individuales son aquellas en las que se variaban sólo una de nuestras variables, ya sea costes,
cargas o potencias. Notar que disponemos de 22 alternativas diferentes, esto es, que necesitaremos 22
evaluaciones en el Promethee-GAIA.
Todas las alternativas quedan recogidas y ordenadas en el Excel, donde se observa el nombre de cada
una de ellas y los cambios o alteraciones que se han hecho respecto a la situación inicial o básica.
Tabla 59. Situación Inicial
Esta situación inicial muestra:
6. Modelo, Particularización en Matlab Y Análisis de los Resultados
98
98
- Los costes de producir cada kW/h para generador establecidos en
para el grupo, las pilas el aerogenerador y la placa solar respectivamente.
- La demanda está al 100%, es decir, se mantiene el consumo de los PEVs como se ha programado
inicialmente.
- Se observa la potencia nominal de cada generador en 1, 8 2300 y 150 para el grupo, las pilas, el
aerogenerador y la placa solar respectivamente.
- La demanda de energía inicial, en el periodo de 24h, será de 48317 kW y nosotros producimos
con los generadores 45265 kW.
- Como ya hemos normalizado, en base a 1, para la satisfacción de la demanda tenemos un
resultado de 0.0597, 0.2095 para el coste de producción y 0.212 para las pérdidas.
Respecto a esta situación modificaremos potencias nominales, cargas y costes por separado. Se recojen a
continuación un extracto de estas modificaciones.
Tabla 60. Alternativas Mod. Individuales
Se observa, por ejemplo, la alternativa A3 donde se ha incrementado un 5% el valor de las potencias
nominales de los generadores. Otro ejemplo sería la reducción en cuanto a demanda de energía se refiere, para
la alternativa A9 en un 10%.
Notar que para cada alternativa tenemos en el Excel adjunto, ya calculados los valeres de satisfacción de
la demanda, costes y pérdidas de nuestra función objetivo.
Así, con los datos ya calculados y recojidos en el Excel lo que vale cada término de esta función, sólo nos
quedaría introducir dichos datos en el Visual Promethee-GAIA.
A modo de ejemplo, se muestra a continuación cómo sería esta introducción de datos en nuestro software
para las siete primeras alternativas, correspondientes a las modificaciones sólo en las potencias nominales.
Tabla 61. Alternativas Pn
Tabla 62. Ranking Alternativas Pn
En la Tabla 62 se muestran los resultados obtenidos con la comparación de las siete alternativas.
Observamos cómo:
- Ante la situación inicial, sería mejor si los generadores trabajasen al 90% o al 105% de su
capacidad. Esto corresponde a las alternativas A5 y A3 (opciones más arriba en el flujo de phi).
Esta diferencia se debe principalmente a la satisfacción de la demanda. Para A3, con los
generadores al 105% la generación de energía se ajusta al máximo a la demanda de energía. En
contraposición, con la A5 el coste de producción de energía y las pérdidas son las mínimas, pero
no se satisface la demanda de energía.
- No se satisface completamente la demanda de energía con la alternativa A5 (aparece en rojo y con
un valor muy elevado este valor en la Tabla 61), por lo que cogeríamos de la red, la restante
potencia necesaria. Con la alternativa A3, se ajusta perfectamente la demanda generada a la
demandada, aunque conlleve mayor coste y pérdidas de potencia que la alternativa 5.
IMPORTANTE. Al no tener en cuenta los costes que nos supondría coger de la red parte de la potencia
neesaria, caemos en el riesgo de que esta situación ocurra en más ocasiones. Es por ello, y tras observar los
datos, que estableceremos en el Decision Lab que la satisfacción de la demanda se cumpla adecuadamente,
penalizando aquellas alternativas donde no se satisfaga.
6. Modelo, Particularización en Matlab Y Análisis de los Resultados
100
100
Decisión con modificaciones en las potencias nominales: si queremos un mayor ajuste a la demanda de
energía, aumentamos la potencia de los generadores al 105%. Si por el contrario damos más peso al coste y
pérdidas de potencia, podemos reducir la producción de energía en un 10%.
A continuación, comparamos las alternativas tanto para las modificaciones de las cargas, como para las
modificaciones de los costes. Como mantenemos constantes las potencias nominales, podemos darle una
segunda interpretación a la obtención de los resultados siguientes.
Tabla 63. Ranking Alternativas Cargas
Al comparar diversas situaciones donde sólo se modifican las cargas, vemos que:
- La situación ideal sería aquella donde las cargas estén al 95%, situación que corresponde a la
alternativa A8. La elección de esta alternativa se debe a que la energía se aprovecha al máximo
máximo (demanda-generación), ya que esta situación implica igualdad de costes para todas las
alternativas y casi igualdad de pérdidas de potencia.
- Una segunda interpretación sería la de darle a las cargas el 95% de la energía que demandan. Si
suponemos que la relación de generación de energía y demanda es proporcional, una reducción de
un 5% en la ‘entrega’ de energía a las cargas sería equivalente a afirmar que, si las cargas
estuvieran al 100%, la producción en los generadores sería del 95%. Es decir, podríamos
comparar las dos situaciones:
entrega de energía 95% -> generadores 100% ≡ entrega energía 100% -> generadores 95%
- Bajo ningún concepto, y atendiendo a las alternativas 14 y 13, se debería de suministrar más
energía a las cargas que la que necesitan.
Decisión con modificaciones en las cargas: lo adecuado sería que las cargas estuvieran al 95% o suministrar a
las cargas su energía completa con una reducción en las potencias nominales de los generadores en un 5%
(estableceríamos los generadores al 95% de su potencia).
Tabla 64. Ranking Alternativas Costes
Ante la igualdad en los términos de satisfacción de la demanda y de pérdidas:
- La mejor opción ante una subida de precios será la de producir más en los combustibles fósiles y
el grupo, como era de esperar. Esto es debido a que al no modificarse la potencia que nos
suministran, las energías que produzcan muchos menos kW nos reportarán menos costes de
producción.
- En esta comparación no es posible decir qué tanto por ciento hemos de reducir o aumentar dichas
energías.
Decisión con modificaciones en los costes: aumentar la producción de energía en el grupo y las pilas.
Para finalizar este apartado, compararemos las 4 situaciones mejores que el Decision Lab nos ha
facilitado, es decir, las alternativas 3, 5, 8 y 19, correspondientes a:
- A3: manteniendo constantes cargas y costes, aumentamos las potencias nominales un 5%
- A5: manteniendo constantes cargas y costes, reducimos las potencias nominales un 10%
- A8: manteniendo constantes costes y potencias nominales, reducimos las cargas un 5%
- A19: manteniendo constantes cargas y potencias nominales, aumentamos el coste del grupo en un
20%
Los resultados tras comparar las cuatro situaciones son los siguientes:
Tabla 65. Ranking Mod. Indiv.
Si tenemos en cuenta la clasificación del PROMETHEE II (mirando el flujo neto de phi):
6. Modelo, Particularización en Matlab Y Análisis de los Resultados
102
102
- Si sólo se produjesen cambios en una de las tres direcciones o criterios que hemos establecido, la
mejor opción sería mantener los costes y las potencias nominales iniciales, intentando reducir las
cargas en un 5% (A8, cargas al 95%), es decir, que el consumo por parte de los consumidores sea
menor o suministrar menos potencia a las cargas. Esto ajustaría al máximo la diferencia entre
demanda y generación de potencia.
- Como era de esperar, no debe de aumentar el coste de los generadores si nos siguen
suministrando la misma potencia. Es algo lógico, ya que crecerían las pérdidas sin obtener
potencia a cambio.
- Comparando estas alternativas nos damos cuenta que las alternativas A3 y A5 (potencias
nominales al 105% y 90%) quedan ‘desempatadas’, es decir, al comparar simplemente las
alternativas con modificaciones individuales, era indiferente (o igual de bueno) elegir entre la A3
y la A5. Sin embargo ahora, nos damos cuenta que será mejor reducir las potencias nominales en
un 10% (A5) para obtener mayor beneficio y menores pérdidas dejando insatisfecha la demanda.
A continuación compararemos las 4 alternativas en el plano GAIA.
Imagen 46. Plano GAIA Modif. Indv.
Se puede deducir que:
- La A8 es la alternativa más cercana a la dirección global de mejora.
- La alternativa A19 está justo en la dirección contraria a esta dirección global de mejora. Es por
esto que bajo ningún concepto podemos permitir que se produzca esta situación.
- Si queremos mejorar en satisfacción de la demanda, debemos de aumentar la generacón de
energía. Esto podemos observarlo en el plano, al observar que A3 está en el mismo cuadrante que
la demanda de potencia.
- Si queremos mejorar en pérdidas, debemos reducir la producción de energía en un 10%
Sería interesante ver, no sólo poder comparar situaciones con valores fijos, si no con rangos de valores.
Para esto tenemos la curva de eficiencia o Frente de Pareto, donde observamos por donde nos podemos mover
eficientemente al aumentar o disminuir el coste o la satisfacción de la demanda.
Imagen 47. Frente Pareto Dem-Coste
Podemos ver como:
- La A19 no se encuentra en la frontera eficiente, por lo que nunca va a ser eficiente que se aumente
el coste de producir la energía sin obtener potencia generada a cambio.
- La A3 (aumento de Pn en un 5%) se encuentra en la parte inferior de la frontera eficiente, lo que
significa que será la mejor opción si queremos obtener el mejor resultado en satisfacción de la
demanda. Esto nos reportaría mayor coste o pérdidas económicas.
- Justo lo contrario ocurre con la A5, si queremos mejorar en coste (y empeorar en satisfacción de
la demanda) elegiremos reducir la producción de energía en un 10%.
- La alternativa A8 (95% cargas o 95% en los generadores) se encuentra en la dirección de mejora
de ambos criterios. Ambos criterios no mejorarían tan rápidamente como si elegimos la A3 o la
A5, pero no empeorarían y ambos mejorarían.
Decisión ante modificaciones individuales: lo ideal será que las cargas se encuentren al 95% o, suponiendo la
proporcionalidad explicada en puntos anteriores, reducir la potencia generada en un 5%. Si queremos dar más
peso a la satisfacción de la demanda, debemos de aumentar la producción en un 5%. Si queremos reducir
costes y pérdidas debemos de reducir la producción en un 10%.
6. Modelo, Particularización en Matlab Y Análisis de los Resultados
104
104
Otra comparativa interesante, sería ver cómo varía la solución que debemos afrontar si se modificasen
los pesos. La gráfica a usar para esto es la llamada Walkings Weights en el software Visual Promethee-GAIA.
En las siguientes gráficas veremos representadas las phi del método PROMETHEE II de las cuatro
mejores alternativas con modificaciones individuales. Justo debajo observaremos los pesos que tienen cada
uno de los tres criterios en el momento de la comparación.
Todos los resultados hasta ahora obtenidos han sido recogidos con un valor en los pesos del 40%, 40% y
20% para la satisfacción de la demanda, coste de producción y pérdidas de potencia respectivamente. Ahora
los variaremos realizando un análisis de sensibilidad.
Así, en las siguientes gráficas veremos qué alternativa es la mejor ante igualdad de pesos en los criterios,
mayor peso para la satisfacción de la demanda y mayor peso para el coste.
Imagen 48. Igualdad de Pesos
Imagen 49. Mayor importancia a un criterio
Podemos notar que:
- Si tuviéramos igualdad en los pesos de los criterios, tanto la alternativa A8 y A5 serían buenas
opciones. Esto quiere decir que debemos de reducir la producción de los generadores en un 5% o
en un 10%, atendiendo a lo que vayamos necesitando. Ocurre debido a que la satisfacción de la
demanda no tiene un papel tan importante, por lo que no satisfacerla no será un problema.
- Como ya hemos comentado con anterioridad en varias ocasiones, vemos como si la mayor
importancia está en la reducción de costes o de pérdidas, la elección más acertada es la A5
(reducir la potencia de los generadores en un 10%).
- Si el mayor peso cae en la satisfacción de la demanda, ajustaremos la generación de energía al
95% (A8).
- Como ya hemos mencionado con anterioridad, la alternativa A19 no debería de ser contemplada.
Vemos como en las cuatro gráficas del análisis de sensibilidad, tiene valores negaivos para el
flujo neto phi (siempre se enceuntra por debajo de la línea del cero).
- En cuanto a la alternativa A3, vemos que es la peor opción (es la más negativa) si el mayor peso
recae en las pérdidas de potencia o en el coste. Aumentar la producción de energía siempre
emporará estos criterios.
6.2.3. Comparativa con Modificaciones Combinadas
Todas las decisiones tomadas en el apartado anterior nos permiten ver qué es lo que podríamos hacer si
sólo se nos presentasen cambios en una dirección, es decir, si sólo aumentamos la producción de energía, si
aumentasen los costes o si se modificasen las cargas (la demanda). Además, nos permiten comprobar qué es
mejor, si reducir la potencia de los generadores o someterlos a esfuerzo, dependiendo del criterio que
queramos satisfacer (tenga mayor peso).
Este escenario es poco probable, ya que normalmente se suelen producir cambios en los tres sentidos,
por lo que el estudio de cambios en varios criterios parece la mejor forma de comparar los resultados. Además,
para el caso anterior hemos ido comparando las alternativas por bloques, es decir, primero modificaciones de
Pn, luego de las cargas y finalmente los costes, para ver y observar cómo se comporta nuestro problema como
ya hemos mencionado.
A continuación, se presentan las alternativas para las modificaciones combinadas, realizadas para la
situación inicial o básica. Esta situación inicial es la misma que en el apartado anterior.
Tabla 66. Situación Inicial Combinadas
6. Modelo, Particularización en Matlab Y Análisis de los Resultados
106
106
Esta situación inicial muestra:
- Los costes de producir cada kW/h para generador establecidos en
para el grupo, las pilas el aerogenerador y la placa solar respectivamente.
- La demanda está al 100%, es decir, se mantiene el consumo de los PEVs como se ha programado
inicialmente.
- Se observa la potencia nominal de cada generador en 1, 8 2300 y 150 para el grupo, las pilas, el
aerogenerador y la placa solar respectivamente.
- La demanda de energía inicial, en el periodo de 24h, será de 48317 kW y nosotros producimos
con los generadores 45265 kW.
- Como ya hemos normalizado, en base a 1, para la satisfacción de la demanda tenemos un
resultado de 0.0421, 0.2174 para el coste de producción y 0.209 para las pérdidas.
Respecto a esta situación modificaremos potencias nominales, cargas y costes conjuntamente. Se recojen
a continuación un extracto de estas modificaciones.
Tabla 67. Alternativas Mod. Combinadas
Se observa, por ejemplo, la alternativa A3 donde se ha incrementado la demanda en un 10% y se ha
reducido la producción de energía en un 10%. Otro ejemplo de situación que se ha simulado sería la situación
A18 donde si aumenta la demanda de energía en un 10%, aumentaremos también la producción de energía en
un 10%. Aquí los costes se han visto reducimos en un 10%.
Notar que para cada alternativa, tenemos en el Excel adjunto ya calculados los valeres de satisfacción de
la demanda, costes y pérdidas de nuestra función objetivo.
Así, con los datos ya calculados y recojidos en el Excel lo que vale cada término de esta función, sólo nos
quedaría introducir dichos datos en el Visual Promethee-GAIA.
Introducimos todos los posibles escenarios en nuestro software Visual Promethee-GAIA.
Imagen 50. Evaluaciones Mod. Comb.
Comentando un poco la introducción de los datos, podemos ver como:
- En cuanto a satisfacción de la demanda, deberíamos de aumentar la potencia al 105% de nuestros
generadores. Esta situación sería idónea si los costes de producción de potencia se ven reducidos
en un 5% y se mantienen constantes las cargas. Pertenece a la alternativa A10.
En ningún caso, si se produjese un aumento de las cargas, como ocurre en A3, A14 y A19, se
debería de bajar la potencia generada por nuestras fuentes. En estos tres escenarios, se han visto
aumentadas las cargas en un 10% y la potencia generada se ha visto reducida en un 10%.
- En cuanto a costes, y como era de esperar, las alternativas A19 y A21 se han visto favorecidas, ya
que se reducen tanto la potencia generada por los generadores como los costes de producir dicha
potencia en un 10%. El resto de alternativas no reducen tanto los costes como en estos dos casos.
De igual forma, y de manera inversa, ambos criterios se ven aumentados en A15 y 17.
- En cuanto a pérdidas, se producirán menos donde las cargas y las potencias de los generadores
sean menores. Es por ello que los escenarios A16 y A21 destacan. Justo al contrario ocurre con
A15 y A18.
6. Modelo, Particularización en Matlab Y Análisis de los Resultados
108
108
Estos datos son los recogidos a simple vista antes de aplicar el método de resolución Promethee.
Algunos de estos datos eran de esperar. Al resolver nuestro problema obtenemos los resultados siguientes de
los escenarios:
Imagen 51. Resultados Mod. Comb.
Podemos sacar algunas conclusiones genéricas de estos resultados:
- La situación más favorable que se nos puede presentar es reducir las potencias de nuestros
generadores si hemos presenciado que satisfacemos correctamente la demanda y se han producido
una reducción de costes (A21). Incluso podemos afirmar que, con estos pesos, el coste nos sería
indiferente, ya que obtendríamos un resultado parecido (A16) si incluso aumentase el coste un
10%.
- Si se produjese una reducción de costes, podríamos aumentar la potencia generada en un 5%
(A10) para obtener un buen resultado. Si esto no es posible por algún motivo, nos podríamos
permitir satisfacer un aumento en la demanda (cargas) de un 5% (A6). Empeoraríamos en
satisfacción de la demanda, pero reduciríamos costes.
- Hay una gran cantidad de alternativas o situaciones que son inicialmente peores a la inicial. Es el
caso de todas aquellas que se encuentran por debajo de la A1. Muchas de ellas (A5, A17, A20) se
producen cuando se decide aumentar la producción de energía significativamente si se reducen las
cargas, algo que claramente no deberemos de hacer.
- Como curiosidad, A4 se asemeja bastante a A1, es decir, si se reducen las cargas ligeramente y se
aumenta la generación de energía de manera proporcional, estaríamos en una situación
estrictamente igual que la inicial. Esto podría establecerse como un rango donde al movernos en
él, no se alterasen los objetivos de nuestra función.
Comparemos a continuación la curva de Eficiencia para cada par de criterios.
Imagen 52. Curvas de Eficiencia por pares
6. Modelo, Particularización en Matlab Y Análisis de los Resultados
110
110
- La situación ideal sería A21 (reducción de las cargas, costes y generación en un 10%), que
además vemos como se encuentra en la curva eficiente de las tres gráficas. Esta es la situación
trivial del problema al tener una función de minimizar.
- Las alternativas A10 (105% Pn 95% costes) y A19 (90% costes 110% cargas 90% Pn) se
encuentran en la optimalidad de dos de las gráficas.
- El resto de las situaciones posibles prácticamente no tienen puntos eficientes.
- Cabe destacar la alternativa A16 (110% costes 90% cargas 90% Pn), que a pesar de sólo estar
presente en la curva Coste-Losses, sí que se encuentra muy cerca de las curvas eficientes de las
otras gráficas, y es por lo que se encuentra en una posición elevada en el ranking del
PROMETHEE II (phi elevada).
A continuación, compararemos todas las alternativas en el plano GAIA.
Imagen 53. Plano GAIA Comb.
Al igual que en el caso anterior, observamos las direcciones de mejora de cada criterio y de la
combinación de los tres (mejora global), correspondientes a las direcciones dorada (coste) morada (pérdidas)
verde (satisfacción de la demanda) y roja (mejora global). Cabe destacar en el plano:
- Alternativas como las A20, A5 o A15 se encuentran en sentido opuesto a la óptima, mientras que
la A21, A12 o A16 están en dirección y sentido hacia la mejor situación. Podemos deducir de esto
que aumentar la producción de energía generada no es viable si la demanda cae. Además, si se
ven aumentados los costes de producción, lo ideal sería reducir la producción de energía.
- Otras como la A8 (105% costes 95% cargas) se encuentran opuestas al coste, pero muy
favorables a la satisfacción de la demanda. De igual forma ocurre para la A6 (105% cargas 95%
costes) en relación al coste-demanda.
Con la gran cantidad de variaciones y situaciones diversas que se pueden dar, es difícil afirmar con
seguridad la decisión que debemos de tomar frente a la producción de energía en nuestros generadores.
Para tomar dicha decisión hemos de pensar cuál va a ser nuestra prioridad, si satisfacer la demanda,
reducir costes o reducir pérdidas. La decisión adecuada requiere de un estudio minucioso de cada una de las
situaciones que se pueden plantear por lo que es complicado, comparando todas las diferentes y diversas
situaciones, decir cómo debemos de actuar.
Es por esto, que el análisis de sensibilidad con los pesos tiene una gran importancia. Al igual que en
apartado anterior usaremos la gráfica Walking Weights del Visual Promethee-GAIA para esto.
En las siguientes gráficas se recoge dicho análisis de sensibilidad.
En la parte superior de cada una de ellas vemos las diferentes alternativas ordenadas según la
clasificación de su flujo neto phi que ya hemos obtenido en la imagen 51. De izquierda a deracha se
representan las alternativas A21, A16, A10, […], A5 y A17 con sus respectivos valores para el método
PROMETHEE II (phi).
En la parte inferior de cada una de las gráficas vemos los pesos asignados a cada criterio. De esta forma,
realizaremos un análisis de sensibilidad cuando tiene mayor peso las pérdidas, el coste y la demanda de
potencia.
6. Modelo, Particularización en Matlab Y Análisis de los Resultados
112
112
Imagen 53. Análisis Pesos
Observamos que:
- En todos los casos, seguirían siendo las mismas situaciones ya analizadas, las más eficientes para
nosotros.
- Hemos de obviar la alternativa trivial A21.
- Obviando las 3 primeras y las 3 columnas, sí que las alternativas variarían al asignar unos pesos u
otros a los diferentes criterios. Es por ello que para esos casos sería conveniente realizar un
estudio más minucioso.
7. CONCLUSIONES FINALES
7.1. Conclusiones sobre la Implantación del Método
- La utilización del método de Promethee ha permitido optimizar tanto la potencia nominal de los
generadores como los costes que repercutirán y el índice de las cargas.
- La selección de OpenDSS como herramienta de simulación presenta ventajas evidentes, ya que ha
permitido por un lado llevar a cabo estudios con carga constante (tipo snapshot), y por otro,
estudios que tienen en cuenta cargas que varían con el tiempo (diarias), lo que proporciona un
valor agregado al contemplar condiciones más reales para el sistema. Además, los modelos de los
elementos de red utilizados por OpenDSS permiten analizar sistemas complejos con
características reales.
- El método ha sido utilizado únicamente para la optimización de varios generadores en una
microgrid, sin embargo, éste puede ser expandido fácilmente y utilizado en redes mucho más
complejas; para ello es necesario que la definición del sistema y la asignación de los buses en
OpenDSS sean hechas de forma ordenada y separadas por zonas, según las configuraciones de la
red y según se ha explicado.
- El método puede ser utilizado para optimizar tanto voltaje, intensidades, potencias reactivas, etc.,
ya que generar los parámetros aleatorios de potencia voltaje e intensidad (entre otros) para más de
un generador e incluirlo en el sistema para su simulación no representa mayor reto, de la misma
manera para OpenDSS la inclusión de más generadores no presenta un aumento de carga
computacional representativo.
- Los tiempos de simulación totales no dependen del número de generadores a analizar sino del
número de casos de prueba simulados, por lo que tampoco implica (relativamente) un aumento en
los tiempos de trabajo.
- El mayor reto se presenta al momento de definir algoritmos que permitan optimizar un sistema
que depende de más de dos variables aleatorias, en nuestro caso hemos ido modificando con el
riesgo, las potencias de los generadores.
7. Conclusiones Finales
114
114
- El proceso de Ajuste de Voltaje es muy útil para establecer unos límites dentro del parámetro que
queramos. Dicho proceso se puede implementar para kW, intensidad o cualquier variable.
7.2. Conclusiones finales sobre los resultados obtenidos
- La optimización en la elección de la potencia de los generadores ha permitido comprobar que será
mejor la decisión tomada cuanto más se ajusta a la carga o demanda que tengamos. El coste de
producir dicha energía se ve en un segundo plano si se trata de situaciones que se encuentran
alrededor de la situación inicial. Igualmente ocurre si se trata de un coste de producción reducido.
- Las curvas generadas para las modificaciones individuales y modificaciones combinadas
muestran algunas similitudes. Por ejemplo, muestran como las soluciones más eficientes se van a
encontrar en el Frente de Pareto y serán soluciones que ajusten la satisfacción de la demanda todo
lo posible. Las pérdidas de potencia también se ven bastantes reducidas en ambas modificaciones.
- Para el sistema bajo estudio la condición de no flujo inverso probó ser altamente restrictiva, esto
quiere decir que el flujo de energía en nuestra red sólo tendría una dirección. Dicha restricción no
fue tomada en cuenta durante el desarrollo del resto de estudio, ya que dicha limitación en los
valores de potencia no permitía determinar los valores óptimos de potencia.
- Los resultados obtenidos al utilizar 50 situaciones de prueba muestran que dicho número ofrece
una excelente exactitud y permite alcanzar resultados válidos.
7.3. Mejoras para el futuro
- Se podría incluir el método usado para una microgrid mucho más compleja. Como se ha
mencionado el único requisito pasa por hacer las cosas ordenadamente y seguir los pasos
explicados con el OpenDss. Por esto, podríamos añadir más generadores, más cargas o incluso
implementar bancos de condensadores.
- A través de la metodología usada en Matlab, podríamos ver cuál es la posición adecuada para
cada generador. En nuestro caso ya nos venía fijada la posición de cada uno, sin embargo,
podríamos alterarlas perfectamente para optimizar más aún la potencia que se genera.
- Dentro de nuestra propia función objetivo, podríamos evaluar la inclusión de contabilizar un
término más de costes o beneficios, que fueran representativos de lo que nos suministra la red o
de lo que le suministramos.
- En nuestro caso, hemos usado el método Promethee para resolver el problema. Sin embargo, la
utilización de las técnicas Electre sería también una buena opción. La dificultad radicaría en
implementar dichas técnicas en Matlab o buscar un software que permita de manera fácil la
inclusión de los datos. La comparación ente varias de estas técnicas nos permitirán obtener un
resultado mucho más fiable.
- El Software de Decision Lab Promethee-GAIA incluye el poder usar Promethee V y VI.
- Profundización en el Proceso de Ajuste de Voltaje.
7. Conclusiones Finales
116
116
APÉNDICE: SOLVER DE EXCEL
1. Introducción
El Solver de Excel es una herramienta, que incluye el propio Excel, usada para resolver problemas de
optimización. Este Solver no es tan potente como otros que puede haber en el mercado, pero nos ha sido de
mucha utilidad para resolver los problemas y ejemplos que se han planteado en este documento.
Esta herramienta permite, normalmente, resolver problemas DMC lineales. Aun así, aplicando diversas
técnicas y métodos de programación lineal y dual (en los que no entraremos en este apéndice) o configurando
las propias características del Solver, podríamos usarlo para resolver problemas DMD o incluso problemas en
las que las variables tomen valores binarios, enteros, etc.
Notar, que este Solver resuelve los problemas de optimización sin aplicar ninguna técnica de resolución
en concreto. Con esto, podríamos resolver el caso práctico que se ha planteado aquí usando este Solver,
simplemente resolviendo el problema de optimización, pero no aplicaríamos el método de resolución
Promethee.
El Solver de Excel permite incluir tantas funciones objetivo, variables y restricciones como se deseen.
Previamente se ha de preparar la hoja de Excel para que el Solver pueda funcionar y resolver el
problema que se le plantee. Es por ello, que en este apéndice se explicará cómo preparar la hoja de Excel para
resolver un problema de optimización.
En primer lugar, se explicará cómo preparar la hoja de Excel con un ejemplo de los ya explicados en el
apartado 2 de este documento. En concreto, se utilizará el modelo de optimización de las técnicas DMC, del
punto 2. En segundo lugar, se resolverá el problema planteado para obtener los resultados.
Apéndice: Solver de Excel
118
118
2. Preparación de la hoja Excel
2.1. Modelo
Recordemos, en primer lugar, cuál es el modelo que usaremos. Para ello, planteamos el problema de
optimización recogido en el apartado 2.
El ejemplo que usaremos, por tanto, es el siguiente, donde tendremos 3 funciones objetivo (dos a
maximizar y una a minimizar) y 4 restricciones.
s.a:
Nuestro objetivo será encontrar los valores de las variables para maximizar f1 y f2 y minimizar f3,
teniendo en cuenta las restricciones que se plantean, y que todas las variables han de ser mayores que cero.
2.2. Localización en la hoja Excel
a. Variables
Disponemos de seis variables . Estas variables han de recogerse en el Excel, en una
tabla de la siguiente forma:
Notar que, la casilla de la derecha de cada variable queda vacía. Aquí se verán recogidos los valores
finales del conjunto .
b. Restricciones
Tenemos en total cuatro restricciones que hemos de cumplir. Son las siguientes:
Los coeficientes de estas restricciones, así como el valor de las mismas y su signo de mayor, menor o
igual, han de ser recogidos de la siguiente forma:
La columna vacía irá recogiendo el valor de sustituir los valores de las variables en las restricciones, para
así obtener el valor de las restricciones. Para ello usaremos el comando =MMULT de Excel, que multiplica
una columna por una fila dígito a dígito, es decir, el primer valor de la columna por el primero de la fila, el
segundo por el segundo, etc.
Con el =MMULT, multiplicaremos las variables por cada restricción (cada fila) para saber cuánto vale
dicha restricción. En este punto, no tenemos ningún valor para las variables (se obtendrán al final de la
resolución), por lo que una vez en cada celda hagamos el =MMULT nos aparecerá que no hay valor alguno.
Apéndice: Solver de Excel
120
120
c. Funciones Objetivo
En nuestro problema tenemos 3 funciones objetivo. Son las siguientes:
Dichas funciones tienen que plantearse en una tabla como la siguiente, donde aparecen los coeficientes
de las funciones descritas. Cada columna corresponde a una variable y la columna final, al igual que antes,
recogerá el valor de la función objetivo al sustituir los valores de las variables, por lo que volveremos a usar el
comando =MMULT. De igual forma que antes, no tenemos ahora mismo valores de las variables, por lo que
esta última columna aparecerá vacía.
d. Pesos
Si el problema lo requiere, podemos incluir pesos para cada función objetivo. Tendremos, por tanto:
e. Objetivo y visión global
Por último, hemos de colocar en la hoja de Excel el objetivo final del problema, que es optimizar los
valores de las funciones multiplicado por cada uno de sus pesos. Para ello, podemos incluir una tabla de la
siguiente manera:
En esta tabla, vemos a la izquierda de cada función objetivo el valor que va a obtener. Este valor será la
multiplicación del valor de la función objetivo (=MMULT del punto ‘c’) multiplicado por el peso de la
función.
Finalmente obtendremos, a la izquierda de FO, la suma de los tres valores anteriores. Este valor será el
valor a maximizar global. Para maximizar este valor, el Solver intentará que las funciones de maximizar
intenten obtener lo máximo posible y las de minimizar lo menos posible, con lo que se consigue el objetivo de
cada función objetivo.
Veamos como quedaría una visión global de la hoja del Excel con todas las tablas descritas.
Ya tenemos el Excel preparado para usar el Solver.
3. Herramienta Solver
3.1. Habilitar el Solver
El Excel no tiene habilitado el complement Solver por defecto. Para habilitarlo hemos de seguir los
siguientes pasos:
1. Hacemos clic en la pestaña Archivo, elejimos Opciones y después hacemos clic en la categoría
Complementos.
2. En el cuadro Administrar, damos clic en Complementos de Excel y después en Ir. Aparecerá el cuadro
de diálogo Complementos.
3. En el cuadro Complementos disponibles, activamos la casilla de complemento Solver y, a
continuación, clicamos en Aceptar.
El botón para iniciar el Solver aparecerá en la pestaña Datos del Excel.
Apéndice: Solver de Excel
122
122
3.2. Características
Al abrir el Solver nos encontramos la siguiente ventana:
1. Parte Azul. Hemos de indicar qué celda es nuestro objetivo. Como ya hemos mencionado, nuestro
objetivo será maximizar la celda de la suma de las tres funciones objetivo.
2. Parte verde. Ponemos las columnas vacías que dejamos en nuestras variables. Serán los valores que el
Solver iterativamente vaya modificando para cumplir los objetivos.
3. Parte roja. Recogeremos el valor que van obteniendo las restricciones. Como han de cumplir las
restricciones hemos de indicar los valores límite de cada función. Podremos agregar, eliminar o editar
las restricciones.
4. Parte morada. El Solver incluye otras muchas características que pueden ser empleadas en la
resolución de los problemas de optimización. Para explicar todas ellas, es necesario estudiar y conocer
todos los métodos y formas de resolver un problema de optimización. Por esto, dejaremos las
características por defecto.
Sólo nos quedaría darle a Resolver.
4. Resultados
Tras resolver el problema, esto es lo que obtenemos.
a. Variables. En el punto óptimo del problema, las variables toman el valor que se muestra en la imagen.
b. Restricciones. Observamos cómo las restricciones toman exactamente sus valores límite (con el
=MMULT ya explicado). Esto lo vemos al comprobar que lo que valen las restricciones em el punto
óptimo coincide con el término independiente o límite de cada una de ellas.
c. Funciones objetivo. Con el =MMULT de las funciones objetivo, se consiguen los valores que se ven
en la imagen.
d. Objetivo final. Al sumar el valor de cada función multiplicado por su peso, conseguimos el valor a
maximizar.
Apéndice: Solver de Excel
124
124
Para finalizar, notar que todas las funciones han alcanzado su valor óptimo, teniendo en cuenta el resto de
funciones. Si queremos conseguir el valor óptimo para cada una función objetivo independiente, podríamos
resolver con el Solver, función a función. Con esto, obtendríamos la ya explicada matriz de Pagos.
BIBLIOGRAFÍA Y WEBS
[1] H.L. Willis, Analytical Methods and Rules of Thumb for Modeling DG-Distribution
Interaction. IEEE PES Summer Meeting, 3: 1643-1644, 2000.
[2] K. Nara, Y. Hayashi, K. Ikeda, and T. Ashizawa, Application of Tabu Search to Optimal
Placement of Distributed Generators. IEEE PES Winter Meeting, 2: 918-923, 2001.
[3] T. Ackerman, G. Anderson, and L. S¨oder, Distributed Generation: A Definition. Electric
Power Systems Research, Elsevier, 2001.
[4] W. Rosehart and E. Nowicki, Optimal Placement of Distributed Generation. Proceedings
of 14th Power Systems Computation Conference, June 14-28, Sevilla, pp. 1-5, 2002.
[5] B.M. Buchholz and C. Boese, The Impact of Dispersed Power Generation in Distribution
Systems. CIGRE/IEEE International Symposium, pp. 198-203, 2003.
[6] L.T. Borges and D.M. F˜alcao, Impact of Distributed Generation Allocation and Sizing on
Reliability, Losses and Voltage Profile. IEEE Power Tech Conference Proceedings, June
23-26, Bologna, 2: 5, 2003.
[7] Y.G. Hegazi, M.M.A. Salama, and A.Y. Chikhani, Adequacy Assesment of Distributed
Generation Systems Using Monte Carlo Simulation. IEEE Trans. on Power Systems, vol. 18,
no. 1, pp. 48-52, February 2003.
[8] P. Chiradeja and R. Ramakumar, An Approach to Quantify the Technical Benefits of
Distributed Generation. IEEE Trans. on Energy Conversion, vol. 19, no. 4, pp. 764-773, 2004.
[9] C. Wang and M.H. Nehrir, Analytical Approaches for Optimal Placement of Distributed
Generation Sources in Power Systems. IEEE Trans. on Power Systems, vol. 19, no. 4, pp.
2068-2076, November 2004.
[10] N. Mithulananthan, T. Oo, and L. Van Phu, Distributed Generator Placement in Power
Distribution System Using Genetic Algorithm to Reduce Losses. TIJSAT, 9: 55-62, 2004.
[11] T.A. Short, Electric Power Distribution Handbook. CRC Press, 2004.
[12]http://www.imf-formacion.com/blog/energias-renovables/noticias/los-costes-de-las-energias-
renovables/ IRENA
[13] https://sourceforge.net/p/electricdss/discussion/861976/thread/f1dc9eec/
[14] http://smartgrid.epri.com/doc/OpenDSS%20Level%201%20Training.pdf
Bibliografía Y Webs
126
126