• No se han encontrado resultados

Resolución de un problema de rutas de vehículos con restricciones difusas

N/A
N/A
Protected

Academic year: 2020

Share "Resolución de un problema de rutas de vehículos con restricciones difusas"

Copied!
73
0
0

Texto completo

(1)Departamento de Matemática. Título Resolución de un problema de rutas de vehículos con restricciones difusas Autor: Pedro Leonardo Rodríguez Quintana Tutores: Dra. Lucía Argüelles Cortés MSc. Gonzalo Palencia Fernández. , junio 2018.

(2) Este documento es Propiedad Patrimonial de la Universidad Central “Marta Abreu” de Las Villas, y se encuentra depositado en los fondos de la Biblioteca Universitaria “Chiqui Gómez Lubian” subordinada a la Dirección de Información Científico Técnica de la mencionada casa de altos estudios. Se autoriza su utilización bajo la licencia siguiente: Atribución- No Comercial- Compartir Igual. Para cualquier información contacte con: Dirección de Información Científico Técnica. Universidad Central “Marta Abreu” de Las Villas. Carretera a Camajuaní. Km 5½. Santa Clara. Villa Clara. Cuba. CP. 54 830 Teléfonos.: +53 01 42281503-1419.

(3) Dedico este trabajo a mi familia.

(4)

(5) AGRADECIMIENTOS. Agradezco a todo aquel que ha contribuido con mi proceso de formación académica y a los que me han enseñado a ser mejor persona.

(6)

(7) SÍNTESIS. La Optimización Difusa es una de las áreas de la Optimización que resuelve problemas con parámetros imprecisos o inciertos. El objeto de estudio de la presente investigación es un problema de rutas de vehículos que considera la capacidad de los mismos como un conjunto difuso. En la modelación matemática, planteada desde el enfoque de la teoría de grafos, se conjugan ecuaciones del modelo clásico-determinista con una ecuación que incluye un número difuso. Para resolver el problema se propone un método que combina la técnica heurística del algoritmo de los ahorros o de Clarke & Wright, con el enfoque paramétrico del criterio de Verdegay que soluciona problemas de programación lineal difusa. Tras implementarse como una función en el RStudio, se resuelve un problema real para demostrar que el método obtiene soluciones adecuadas, ante la imposibilidad de emplear las técnicas clásicas de Optimización. Palabras claves: problema de rutas de vehículos con restricciones difusas, programación lineal difusa, algoritmo de los ahorros o de Clarke & Wright.

(8)

(9) ABSTRACT. Fuzzy Optimization is a discipline of Optimization that solve problems with uncertain parameters. The goal of this paper is solving a vehicle routing problem with fuzzy constraints, particularly the capacity constraints has been represented with fuzzy number. The mathematical model was made as a network flows model that combine classic equations with fuzzy parameters. It is proposed a method based in Verdegay’s approach for solving fuzzy linear programming problems and Clarke and Wright Savings Algorithm, a classical heuristics. The proposed method is implemented as a function in RStudio software and a real problem is solved with it. The method obtained a good solution, however classic techniques cannot solve the problem. Keywords: vehicle routing problem with fuzzy constraints, fuzzy linear programming, Clarke and Wright Savings Algorithm.

(10)

(11) ÍNDICE FIGURAS. XIII. TABLAS. XV. INTRODUCCIÓN. 1. 1. Marco teórico. 9. 1.1. Nociones básicas sobre conjuntos difusos . . . . . . . . . . . . . . . . . . . . .. 9. 1.2. Ejemplos ilustrativos de la necesidad del tratamiento difuso a problemas de optimización . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 1.3. Programación lineal difusa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 1.4. El problema de las rutas de vehículos (VRP) . . . . . . . . . . . . . . . . . . . . 21 Conclusiones parciales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 2. Problema de rutas de vehículos con restricciones difusas. 27. 2.1. Modelación matemática del problema . . . . . . . . . . . . . . . . . . . . . . . 27 2.2. Metodología de cálculo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 2.3. Ejemplo de aplicación de la metodología. . . . . . . . . . . . . . . . . . . . . . 34. 2.4. Utilización de software en la solución . . . . . . . . . . . . . . . . . . . . . . . 38 Conclusiones parciales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 3. Análisis de un problema real. 41. 3.1. Modelación matemática . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 3.2. Resolución del problema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 3.3. Validación de los resultados. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45. Conclusiones parciales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47.

(12) XII. ÍNDICE. CONCLUSIONES. 49. RECOMENDACIONES. 51. REFERENCIAS. 53. ANEXOS. 54. A. Función implementada en el RStudio para aplicar el método elaborado. 55. B. Datos del problema real. 57.

(13) FIGURAS 1.1. Funciones de pertenencia de µ1 (B1 ) y µ2 (B2 ) . . . . . . . . . . . . . . . . . . . 15 1.2. Solución de un problema de rutas de vehículos con capacidad limitada . . . . . . 23 2.1. Ejemplo de subruta (flechas en azul) . . . . . . . . . . . . . . . . . . . . . . . . 30 2.2. Dos rutas antes y después de ser unidas por el algoritmo de ahorros o de Clarke & Wright . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 2.3. Solución inicial para el algoritmo de los Ahorros de Clarke & Wright . . . . . . 33.

(14)

(15) TABLAS 1.1. Ejemplo de aplicación del criterio de Verdegay . . . . . . . . . . . . . . . . . . 18 2.1. 2.2. 2.3. 2.4. 2.5. 2.6.. Ejemplo de aplicación de metodología . . . . . . Matriz de los ahorros del ejemplo . . . . . . . . Solución inicial del ejemplo . . . . . . . . . . . Solución del ejemplo tras la primera iteración . . Solución definitiva del ejemplo para el caso α = 1 Solución del ejemplo para diferentes valores de α. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. 35 36 37 37 38 38. 3.1. Solución del problema real para diferentes valores de α . . . . . . . . . . . . . . 44 3.2. Solución del problema real para diferentes valores de α mediante el software VrpCalc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 B.1. Cantidad de personas que esperan en cada parada . . . . . . . . . . . . . . . . . 57 B.2. Matriz de las distancias entre los nodos . . . . . . . . . . . . . . . . . . . . . . 58.

(16) INTRODUCCIÓN La modelación matemática de los problemas de Optimización es una tarea ardua porque, si bien es sabido que un modelo es una aproximación de la realidad, constantemente el desarrollo tecnológico e industrial exige que cada modelo se parezca más a la realidad para que su solución cumpla también con esta propiedad. Por muchas décadas los principales problemas de esta área se han representado matemáticamente por los llamados modelos clásico-deterministas, dichos modelos se caracterizan por poseer total certeza acerca de los parámetros numéricos involucrados en ellos. Pero, a decir de Arroyo et al. (2015, p. 10) «en diversas situaciones problemáticas de la vida real, estos parámetros no son conocidos con precisión, es decir, son parámetros imprecisos o inciertos. La incertidumbre puede presentarse debido a la carencia de datos fiables, errores de medida o porque representa información sobre el futuro». Y si el problema se presenta con tales imprecisiones, es lógico pensar que su solución las tenga también. Esta idea ha emergido en el mundo de la Optimización desde las últimas décadas del siglo XX y ha tenido una repercusión tal que existen numerosas áreas de la producción de bienes y servicios en las que los modelos actuales se tratan con incertidumbres, especialmente en lo que se refiere a la planificación y la toma de decisiones. Una de las áreas que trabaja con algunos de esos modelos con incertidumbres es la Optimización Difusa. Su origen Herrera & Verdegay (1997, p. 5) lo identifican con el artículo científico «Decision Making in a Fuzzy Environment», de R.E. Bellman y L. A. Zadeh. En dicho artículo se introduce brevemente la teoría de conjuntos difusos, y las nociones de restricción difusa, función objetivo difusa y decisión difusa. Estos conceptos, a pesar de ser tan elementales, marcaron pautas para el estudio de diferentes problemas reales. En Herrera & Verdegay (1997, p. 5) se hace referencia a cuatro líneas de investigación con altas posibilidades de desarrollo dentro de la Optimización Difusa debido a sus variadas y numerosas aplicaciones: la programación lineal difusa, los modelos difusos basados en problemas de optimización combinatoria, el empleo de técnicas metaheurísticas y los problemas difusos de «scheduling». La programación lineal difusa en la actualidad sigue dos vertientes fundamentales: la progra-.

(17) 2. Introducción. mación flexible y la programación posibilística. La diferencia fundamental entre ambas es que en los modelos de programación flexible, las funciones de pertenencia de los objetivos y las restricciones se basan y determinan por las preferencias subjetivas de los decisores. En contraste, la programación posibilística se basa en distribuciones de posibilidad las cuales se determinan objetivamente a partir de la información histórica. Constantemente se crean criterios de solución para problemas de un tipo o de otro, pero es la práctica quien determina el derecho de escoger cuál de todos los criterios de solución es el más idóneo a aplicar. En Lai & Hwang (1992) se recopilan variados ejemplos de aplicación de estos criterios, entre los que caben mencionar: los relacionados a los procesos de producción industrial, a problemas de transporte, e incluso al control de la contaminación atmosférica. El desarrollo de la programación lineal difusa ha conllevado a que se diseñen algoritmos que en su implementación consideren un tratamiento diferenciado a las componentes difusas del modelo matemático. No solo en la Optimización Continua se han creado modelos difusos, sino también en la Optimización Combinatoria. Particularmente se ha trabajado en problemas de asignación, modelos de localización discretos con medidas de acceso difusas, problema de «Set Covering», el problema de rutas de vehículos, etcétera. Con ello también se han incrementado la cantidad de problemas de este tipo que se resuelven con métodos metaheurísticos. En la actualidad estas técnicas se combinan con la teoría de conjuntos difusos para resolver otros problemas más complejos.. Antecedentes e importancia de la investigación Una de las actividades básicas de la gestión integral de una empresa es la planificación y la toma de decisiones que esto conlleva. En Cuba, la planificación socialista es la vía principal para la dirección de la economía, mediante la cual se garantizan los equilibrios macroeconómicos fundamentales y los objetivos y metas para el desarrollo a largo plazo. Según se plantea en los «Lineamientos de la política económica y social del partido y la revolución para el período 20162021» la planificación debe garantizar en la producción de bienes y servicios 23. Alcanzar una dinámica de crecimiento del Producto Interno Bruto (PIB) y, en consecuencia de la riqueza del país, que asegure un nivel de desarrollo sostenible, que conduzca al mejoramiento del bienestar de la población, con equidad y justicia social.. 24. Alcanzar mayores niveles de productividad y eficiencia en todos los sectores de la economía a partir de elevar el impacto de la ciencia, la tecnología y la innovación en el desarrollo.

(18) 3 económico y social, así como de la adopción de nuevos patrones de utilización de los factores productivos, modelos gerenciales y de organización de la producción. 27. Perfeccionar y fortalecer la utilización de los indicadores macroeconómicos en el Sistema de Dirección de la Economía, como elemento fundamental para la elaboración y control del plan de la economía.. Para contextualizar estos lineamientos a las políticas de transportación de las empresas socialistas, se ha de recurrir a Toth & Vigo (2002, p.1), quienes plantean que «los procesos de transporte están involucrados en cada una de las fases de producción y en los sistemas de distribución, lo cual representa una componente importante (generalmente del 10 % al 20 %) del costo final de la producción». El problema del diseño de rutas de vehículos, ya sea para transportar personas o mercancías a diferentes puntos, constituye un problema usualmente encontrado en el campo de la logística que resulta de vital interés para una planificación adecuada en la gestión de las empresas socialistas. La logística es considerada como «el conjunto de actividades que permite que los productos necesarios lleguen al lugar previsto, en la cantidad y condiciones adecuadas, y en el momento adecuado para satisfacer las demandas del mercado, al menor costo posible» (Robuste F y Anton F, 2005, citado en Brito Santana, 2013, p.13). La importancia de estudiar estos tipos de problemas desde el campo de la Optimización radica en que «el uso de procedimientos computacionales para la planificación de los procesos de distribución de mercancía producen ahorros sustanciales (generalmente del 5 % al 20 %) de los costos de transportación global» (Toth & Vigo, 2002, p.1). De los modelos más genéricos para resolver problemas del diseño de rutas de vehículos se encuentran, el problema del viajero vendedor («Traveling Salesman Problem», TSP) y el problema de rutas de vehículos («Vehicle Routing Problem»,VRP). En el caso del problema del viajero vendedor, sus orígenes se remontan a 1930 en Viena y Harvard. En la Universidad de Harvard, Merril Flood se interesó por el TSP cuando empezó a trabajar en la búsqueda de una ruta óptima para un autobús escolar. Mientras tanto, en Vienna, Karl Menger enunció lo que entonces se denominaba “El problema del mensajero”: buscar el camino más corto que uniera un conjunto de puntos cuyas distancias entre todos ellos eran conocidas. En las décadas de 1950 y 1960, el problema se hizo muy popular y comenzaron a estudiarse problemas para un mayor número de ciudades. El problema del viajero vendedor de manera general se plantea de la siguiente forma: un comerciante tiene que visitar un conjunto de clientes o ciudades, y regresar después al punto de partida. Antes de salir, deberá decidir en qué orden recorrer dichas ciudades para minimizar la.

(19) 4. Introducción. distancia total recorrida. Señalar que tiene que pasar una sola vez por cada ciudad. Más tarde, a modo de generalización de este problema surge el problema de las rutas de vehículos, también conocido por sus siglas en inglés como VRP, «Vehicle Routing Problem», el cual consiste en planificar un conjunto de rutas o recorridos para un parque dado de medios de transporte, de forma tal que cumpliéndose una serie de restricciones se pueda minimizar el costo, la distancia o el tiempo invertido en dichos recorridos. El problema fue planteado por primera vez en un artículo elaborado por Dantzig y Ramser en 1959 titulado «The Truck Dispatching Problem». En aquella ocasión la esencia del problema consistía en lo siguiente: determinar un conjunto de rutas para una flota de camiones que partían de una terminal y se dirigían a un cierto número de estaciones de servicio a despachar la gasolina suministrada por la terminal. Desde ese momento y hasta la fecha los problemas de rutas han despertado el interés de numerosos investigadores, a tal punto que sus aplicaciones abarcan una larga y variada lista de problemas específicos. Con relación a las perspectivas actuales de las investigaciones sobre VRP, Brito Santana (2013, p. 37) plantea que «se concentran en la necesidad de responder a modelos más ricos, generales y flexibles» pues queda claro que las características de los problemas de este tipo están condicionadas por los recursos, objetivos y limitaciones que se establezcan y la naturaleza de la información que los definen. Es por ello que la Optimización Difusa es una de las áreas más vinculadas a los recientes estudios de los problemas de VRP, particularmente del VRP difuso. El VRP difuso o Fuzzy VRP constituye una variante del VRP que a diferencia del modelo clásico contempla conjuntos difusos en su modelación para tratar las imprecisiones de los datos reales del problema.. Planteamiento del problema Las problemáticas observadas condujeron a plantear el siguiente problema científico: ¿Puede diseñarse un método que permita resolver problemas reales de rutas de vehículos modelados con restricciones difusas a partir de los criterios planteados por la literatura para solucionar problemas de programación lineal difusa? Por tanto, el objeto de estudio es el problema de rutas de vehículos con restricciones difusas. En particular, se estudiará su modelación matemática, métodos de solución y la implementación computacional de dichos métodos..

(20) 5. Hipótesis de investigación El problema antes expuesto condujo al planteamiento de la siguiente hipótesis de investigación: Si un problema de rutas de vehículos se modela matemáticamente con un parámetro difuso, entonces podrá diseñarse un método que permita obtener una solución apropiada para el problema.. Objetivo general El objetivo general perseguido por este trabajo es elaborar un método que permita resolver un problema particular de rutas de vehículos modelado con restricciones difusas a partir de los criterios planteados por la literatura para solucionar problemas de programación lineal difusa.. Objetivos específicos Los objetivos específicos son: 1. Construir el marco teórico de la investigación a partir del estudio de literatura especializada en los siguientes temas: conjuntos difusos, programación lineal difusa, el problema las rutas de vehículos y su variante difusa. 2. Modelar matemáticamente el problema de rutas de vehículos con restricciones difusas tratado en la presente investigación. 3. Diseñar e implementar computacionalmente un método que permita resolver el problema planteado a partir de los criterios propuestos por la literatura especializada para la solución de problemas de programación lineal difusa. 4. Analizar las ventajas y desventajas del método propuesto dándole solución a un problema real.. Tareas de investigación Para cumplir con los objetivos planteados se llevaron a cabo las siguientes tareas de investigación:.

(21) 6. Introducción 1. Estudio de bibliografía especializada en los siguientes temas: conjuntos difusos, programación lineal difusa, el problema las rutas de vehículos y su variante difusa. 2. Planteamiento de un modelo matemático apropiado para el problema de rutas de vehículos con restricciones difusas tratado en la presente investigación. 3. Diseño de un método que permita resolver el problema planteado aplicando el mismo enfoque de los criterios existentes para la solución de problemas de programación lineal difusa. 4. Implementación computacional de dicho método mediante una función programada en el lenguaje R. 5. Resolución de un problema real con el método propuesto. 6. Comparación entre el método elaborado y otras técnicas de solución del problema real.. Principales contribuciones de la investigación Entre las principales contribuciones científicas obtenidas a partir de la presente investigación se encuentran: El planteamiento de un modelo matemático para un problema de rutas de vehículos con capacidad limitada que considera la capacidad de los vehículos como conjuntos difusos. La propuesta de un método que permita darle solución al problema modelado de rutas de vehículos con restricciones difusas combinando una técnica heurística para resolver problemas clásicos de rutas de vehículos y el enfoque de uno de los criterios existentes para la solución de problemas de programación lineal difusa. La solución a un problema práctico-real a partir del método propuesto, así como la comparación con otras posibles técnicas de solución.. Métodos Para el desarrollo coherente de las tareas son utilizados distintos métodos de investigación, los cuales han sido:.

(22) 7 Métodos del nivel teórico Análisis-síntesis Al realizar la revisión bibliográfica, para extraer de ellas regularidades y tendencias vinculadas con los estudios de problemas de programación lineal difusos y los problemas de rutas de vehículos, y para la discriminación lógica y la diferenciación necesaria. Inducción-deducción Posibilitó realizar inferencias y deducciones de los principales sustentos teóricos que fundamentan la investigación, permitiendo la formulación de nuevos elementos que enriquecen la teoría sobre los problemas de rutas de vehículos difusos para conformar un grupo de tareas científicas que le dan una orientación a la investigación. Histórico-lógico Para analizar el origen y la evolución histórica de los problemas de rutas de vehículos difusos, atendiendo a los conceptos y principales aportes desde la perspectiva de un grupo representativo de estudiosos del tema. Métodos del nivel empírico Análisis documental Para la revisión bibliográfica de un grupo relevante de documentos relacionados con el tema, el cual incluye artículos científicos, tesis, datos de la práctica y sitios de Internet.. Estructura de la investigación El trabajo se estructura esencialmente en tres capítulos, conclusiones, recomendaciones, referencias bibliográficas y anexos. En el capítulo 1 se exponen los fundamentos teóricos de la investigación, en particular, los principales conceptos y resultados matemáticos vinculados con la teoría de conjuntos difusos y la programación lineal difusa. Además, en el propio capítulo se presenta un estado del arte del problema de las rutas de vehículos que incluye a su variante difusa. En el capítulo 2 se desarrolla un estudio del problema de rutas de vehículos con restricciones difusas con el que se va a trabajar. Dicho estudio incluye, además de la descripción y modelación matemática del problema, la propuesta de un método de solución elaborado por el autor, así como su implementación computacional. En el capítulo 3 se analiza la solución obtenida por el método propuesto para un problema real. Luego, se compara el método con otras técnicas de solución para validar su eficiencia..

(23)

(24) CAPÍTULO 1 Marco teórico En este capítulo se exponen los principales conceptos, teoremas y resultados asociadas a la investigación que se lleva a cabo. Se comienza con un compendio de las principales definiciones y teoremas de la teoría de conjuntos difusos, para después en los epígrafes 1.2 y 1.3 mostrar cómo se aplican dichos conceptos en la modelación y solución de problemas de programación lineal con incertidumbres en algunas de las componentes del programa. Por último, se presentará un estado del arte del problema de las rutas de vehículos para posteriormente estudiar su variante difusa, objeto de estudio de la presente investigación.. 1.1.. Nociones básicas sobre conjuntos difusos. En el presente epígrafe se expondrán las principales definiciones y teoremas asociadas a la teoría de conjuntos difusos. Definición 1. Considere X como el conjunto universo cuyos elementos genéricos serán denotados por x. Un conjunto difuso o borroso A en X es una función A : X → [0, 1]. Frecuentemente se emplea µA por la función A y se dice que el conjunto difuso A es caracterizado por su función de pertenencia µA : X → [0, 1], la cual asocia a cada x del conjunto X un número real µA (x) que pertenece al intervalo [0, 1]. El valor de µA (x)representa el grado de pertenencia de x a A. La función de pertenencia en la práctica puede ser interpretada como un nivel de posibilidad de ocurrencia de un suceso o de interés que se tenga porque ocurra tal suceso. Un subconjunto A de X, tal y como se conoce en la teoría conjuntista, puede ser visto también como un conjunto difuso en X si se considera como función de pertenencia a su función característica, o sea:.

(25) 10. Marco teórico.  0, si x ∈ /A µA (x) = 1, si x ∈ A. Para evitar confusiones cada vez que en el presente trabajo se haga alusión a un conjunto definido por la teoría conjuntista se llamará a dicho conjunto, conjunto ordinario. A veces un conjunto difuso A en X es denotado por una lista de pares ordenados (x, µA (x)). Luego, un conjunto difuso A en X puede ser representado como A = {(x, µA (x))} , donde x ∈ X y µA : X → [0, 1]. Como µA : X → [0, 1], la definición siguiente es natural en este contexto. Definición 2. Considere A un conjunto difuso en X. El soporte de A, denotado por S (A) , es el conjunto ordinario definido por S (A) = {x ∈ X : µA (x) > 0 } . Definición 3. Sea A un conjunto difuso en X. La altura h (A) de A es definida como: h (A) = sup µA (x) . x∈X. Si h(A) = 1, entonces el conjunto difuso A es llamado un conjunto difuso normal, en otro caso se denomina subnormal. Si 0 < h (A) < 1, entonces el conjunto difuso subnormal A puede ser normalizado si se redefine la función de pertenencia como µA (x) /h(A), x ∈ X. A continuación se procede a definir las operaciones básicas de conjuntos difusos, dichas operaciones son análogas a las de la teoría clásica conjuntista. Considere A y B como dos conjuntos difusos de X. Definición 4. Un conjunto difuso A es vacío si su función de pertenencia es idénticamente 0, esto es, µA (x) = 0 para todo x ∈ X. Definición 5. Un conjunto difuso A es un subconjunto de un conjunto difuso B, o A está contenido en B, si µA (x) ≤ µB (x) para todo x ∈ X. Esto es denotado como A ⊆ B. Definición 6. A = B si y solo si A ⊆ B y B ⊆ A, esto es , µA (x) = µB (x) para todo x ∈ X. Definición 7. A′ es el complemento estándar del conjunto difuso A si su función de pertenencia está definida por µA′ (x) = 1 − µA (x) para todo x ∈ X..

(26) 11. 1.1 Nociones básicas sobre conjuntos difusos. Definición 8. Si A ∪ B = C, entonces la función de pertenencia del conjunto difuso C está dada por µC (x) = máx (µA (x) , µB (x)) para todo x ∈ X. Definición 9. Si A ∩ B = D, entonces la función de pertenencia del conjunto difuso D está dada por µD (x) = mı́n (µA (x) , µB (x)) para todo x ∈ X. La siguiente definición resulta vital para comprender el llamado Teorema de Representación. Definición 10. Sea A un conjunto difuso en X y α ∈ [0, 1], se denomina α−corte del conjunto difuso A al conjunto ordinario Aα = {x ∈ X : µA (x) ≥ α}. Teorema de Representación. Sea A un conjunto difuso en X, cuya función de pertenencia es µA (x), y Aα representa los α−cortes del conjunto A, entonces se tiene que µA (x) = sup (mı́n (α, χAα (x))), para todo x ∈ X. La función χAα (x) representa la función α∈[0,1]. característica del conjunto Aα , o sea, 0, si x ∈ / Aα χAα (x) = 1, si x ∈ Aα . Otro modo de plantear la tesis de este teorema es A =. S. αAα , donde el símbolo. S. denota. α∈[0,1]. la operación de la unión entre conjuntos difusos y αAα representa el mı́n (α, χAα (x)). La demostración de este teorema se puede encontrar en (Bector & Chandra, 2005, p.25). En la práctica muchos problemas de modelación difusa, especialmente aquellos que conllevan a tomas de decisiones, no emplean cualquier tipo de conjuntos difusos. Para ello se conciben unos conjuntos difusos especiales denominados números difusos. A continuación se exponen dos definiciones muy relacionadas con este concepto: conjunto difuso convexo y conjunto difuso acotado. Definición 11. Un conjunto difuso A en Rn se denomina conjunto difuso convexo si para todo α ∈ [0, 1] se tiene que Aα es convexo. Definición 12. Un conjunto difuso A en Rn se denomina conjunto difuso acotado si para todo α ∈ [0, 1] se tiene que Aα es acotado. Con estas dos definiciones ya se tienen las condiciones requeridas para plantear la definición de número difuso. Definición 13. Sea A un conjunto difuso en R, A es denominado número difuso si cumple las siguientes condiciones: A es normal, A es convexo, la función de pertenencia µA (x) de A es continua a trozos, existe un punto x0 ∈ R tal que µA (x0 ) = 1 y el soporte de A está acotado..

(27) 12. Marco teórico. 1.2.. Ejemplos ilustrativos de la necesidad del tratamiento difuso a problemas de optimización. El propósito de este epígrafe es ilustrar la necesidad de emplear conjuntos difusos para modelar problemas de optimización. En Klir & Yuan (1995, pp. 413-414) se propone el siguiente ejemplo: Ejemplo 1. Cierta compañía produce dos artículos. Las ganancias por unidades producidas de los artículos P1 y P2 son $0,40 y $0,30 respectivamente. Cada unidad producida de artículos P1 requiere el doble de horas que una unidad de P2 . El total de horas laborales disponibles es de al menos 500 horas por día, dicha cantidad puede extenderse a 600 horas por día si se tiene en cuenta las horas del trabajo extra. El suministro de materia prima es suficiente para producir al menos 400 unidades de ambos artículos cada día, aunque es posible extender la producción a 500 unidades según experiencias anteriores. El problema consiste en qué cantidad de artículos P1 y P2 deben producirse en un día para maximizar la ganancia. Para modelar matemáticamente este problema se han de precisar primeramente las variables de decisión con las cuales se va a trabajar: x1 : cantidad de unidades producidas en un día del artículo P1 x2 : cantidad de unidades producidas en un día del artículo P2 . Un modelo clásico para este problema puede ser: Max ← 0,4x1 + 0,3x2 Sujeto a: 500 ≤ 2x1 + x2 ≤ 600 400 ≤ x1 + x2 ≤ 500 x1 , x2 ≥ 0. Esta modelación se ajusta al contexto del problema, pero falla en lo siguiente: en lo que respecta a la restricción de las horas laborales, la cual se planteó como 500 ≤ 2x1 + x2 ≤ 600, si bien se sabe con toda seguridad que se emplean 500 horas como mínimo, no se puede decir lo mismo de las 600 horas que se podrían trabajar en caso de planificarse horas extras. Ello motiva a sustituir esta restricción por 2x1 + x2 ≤ B1 , donde B1 constituye un conjunto difuso. Para definir una función de pertenencia adecuada para B1 , la cual se denotará por µ1 , se desprende de lo ya analizado, que debe cumplir las siguientes propiedades: µ1 (B1 ) = 1, si B1 ≤ 500 y µ1 (B1 ) = 0, si B1 ≥ 600. Seleccionar los valores de µ1 (B1 ) en caso de 500 < B1 < 600 varía en función del contexto particular en que se tenga esta situación y de otros factores que no se han explicitado en.

(28) 1.2 Ejemplos ilustrativos de la necesidad del tratamiento difuso a problemas de optimización 13 el problema como pudiera ser la posibilidad real de planificarse las horas extras. Como es este un ejemplo didáctico se ha decidido, incluso por los propios autores, emplear la función lineal que une los pares (500; 1) y (600; 0), lo cual conlleva a que la función µ1 (B1 ) se defina de la siguiente manera:   1, si B1 ≤ 500    600 − B1 µ1 (B1 ) = , si 500 < B1 ≤ 600 .  100   0, si B1 > 600 Esta función de pertenencia puede ser interpretada de la siguiente forma:si 2x1 + x2 ≤ 500 la restricción del conjunto de horas laborales empleadas en un día es totalmente satisfecha, por eso la función de pertenencia µ1 (500) = 1. En cambio si B1 = 600, es sabido que existen muy pocas posibilidades para que esta restricción sea satisfecha por eso su grado de pertenencia vale 0. Análogamente, el modelo clásico no representa a cabalidad la restricción asociada al suministro de materias primas. Un razonamiento similar al realizado con las restricción de las horas laborales permite sustituir la desigualdad 400 ≤ x1 + x2 ≤ 500 por x1 + x2 ≤ B2 , donde nuevamente es B2 un conjunto difuso cuya función de pertenencia viene dada por la expresión:   1, si B2 ≤ 400    500 − B2 µ2 (B2 ) = , si 400 < B2 ≤ 500 .  100   0, si B2 > 500 Por lo que se ha visto, el modelo clásico no es el más idóneo para representar matemáticamente este ejemplo. Para corregir las fallas del mismo se han empleado los conjuntos difusos ya anteriormente definidos. Ello permite formular el siguiente modelo difuso de programación lineal. Max ← 0,4x1 + 0,3x2 Sujeto a: 2x1 + x2 ≤ B1 x1 + x2 ≤ B2 x1 , x2 ≥ 0. En el ejemplo anterior se mostró cómo en un problema de programación lineal se hace necesario tratar con restricciones difusas. El próximo ejemplo, seleccionado en Cadenas & Verdegay (2004, pp.89-90), ilustra un caso en que se hace necesario emplear conjuntos difusos en la función objetivo..

(29) 14. Marco teórico Ejemplo 2. Dos productos, A y B, para la exportación deben producirse utilizando tres procesos diferentes (corte, doblado y empaquetado). La producción de una unidad del producto A (B) requiere 10 (6) minutos de tiempo de transformación en el departamento del corte, 5 (10) minutos en el departamento de doblaje, y sobre 7 (7) minutos en el departamento de empaquetado. El tiempo total disponible para cada proceso de producción es 2500 minutos para el corte, como máximo 2000 minutos para doblar (aunque se permiten violaciones hasta 2064 minutos) y alrededor de 2050 minutos para empaquetar (dependiendo de la urgencia del envío), pero este tiempo de empaquetado total nunca puede excederse de 2124 minutos. Cuando se vende al exterior, el producto A (B) tiene un beneficio alrededor de 23 euros (32 euros) por unidad, dependiendo del cambio actual. Los encargados desean maximizar el beneficio de la venta. Las variables de decisión empleadas en la modelación matemática son: x1 : cantidad de unidades vendidas del producto A x2 : cantidad de unidades vendidas del producto B. El modelo matemático adecuado para el ejemplo anterior es el siguiente: Max ← B1 x1 + B2 x2 Sujeto a: 10x1 + 6x2 ≤ 2500 5x1 + 10x2 ≤ B3 7x1 + 7x2 ≤ B4 x1 , x2 ≥ 0.. B1 , B2 , B3 y B4 constituyen conjuntos difusos. En el caso de B3 y B4 no es difícil determinar sus funciones  de pertenencia pues con un razonamiento similar al ejemplo anterior se tiene que:  1, si B3 ≤ 2000    2064 − B3 µ3 (B3 ) = , si 2000 < B3 ≤ 2064  64   0, si B3 > 2064   1, si B4 ≤ 2050    2124 − B4 y µ4 (B4 ) = , si 2050 < B4 ≤ 2124 .  74   0, si B4 > 2124 Pero en lo que respecta a B1 y B2 , quienes constituyen los coeficientes de la función objetivo del problema, solo se conoce que µ1 (B1 ) = 1 y µ2 (B2 ) = 1 si B1 ≈ 23 y B2 ≈ 32 respectivamente. Se han de conocer más detalles relacionados con las fluctuaciones de los beneficios de ambos productos para precisar las funciones de pertenencia de B1 y B2 . Cadenas & Verdegay (2004,.

(30) 15. 1.3 Programación lineal difusa. pp.89-90) consideraron para la resolución del ejemplo que las funciones de pertenencia de B1 y B2 son:     B − 22, si 22 ≤ B1 ≤ 23 B − 31, si 31 ≤ B2 ≤ 32      2  1 34 − B2 25 − B1 µ1 (B1 ) = , si 32 < B2 ≤ 34 . , si 23 < B1 ≤ 25 y µ2 (B2 ) =   2 2     0, 0, en otro caso. en otro caso. A partir de los gráficos de µ1 (B1 ) y µ2 (B2 ) representados en la figura 1.1 se puede corroborar la idea de que mientras más próximo µ1 (B1 ) y µ2 (B2 ) están de 1, B1 y B2 se aproximarán a los valores de 23 y 32 respectivamente.. Figura 1.1: Funciones de pertenencia de µ1 (B1 ) y µ2 (B2 ). 1.3.. Programación lineal difusa. En el epígrafe anterior se mostró la utilidad del empleo de conjuntos difusos, en particular de números difusos, para llevar a cabo una modelación cabal de problemas de programación lineal cuyos datos presentan ciertos niveles de incertidumbre. El propósito de este epígrafe consiste en describir algunos criterios de solución para problemas de programación lineal difusa. El modelo canónico de un problema de programación lineal clásico viene determinado por la siguiente expresión matricial:. Min (Max) ← z = CX Sujeto a: AX ≤ b X ≥0. (1.1).

(31) 16. Marco teórico donde X ∈ Mn×1 (R) , A ∈ Mm×n (R) ,C ∈ M1×n (R) , b ∈ Mm×1 (R).. Varios autores como Lai & Hwang (1992); Bector & Chandra (2005) y Ebrahimnejad & Verdegay (2016) proponen una clasificación de los problemas de programación lineal difusa o borrosa atendiendo a los componentes del modelo clásico estándar que emplean números difusos. De esta forma se tendrían cuatro tipos de problemas de programación lineal difusa: Problema de programación lineal con restricciones difusas, Problema de programación lineal con costos difusos, Problema de programación lineal con números difusos en la matriz tecnológica, Problema de programación lineal con todas las componentes del modelo difusas. En este epígrafe se abordarán los distintos criterios de solución para resolver problemas de programación lineal con restricciones difusas, pues constituyen estos los de interés para la presente investigación. Un modelo estándar para este tipo de problema se plantea de modo general de la siguiente manera:. Max ← z = CX Sujeto a: AX ≤ e b X ≥0. (1.2). Dicho modelo como se puede apreciar solo se diferencia del modelo 1.1 en que la matriz e b e e está constituida por los números difusos bi , i = 1, 2, . . . m. Cada bi , i = 1, 2, . . . m es un número difuso cuya función de pertenencia está definida por   1, si (AX)i ≤ bi    (AX)i − bi µi ((AX)i ) = 1 − , si bi < (AX)i ≤ bi + pi .  pi    0, si (AX)i > bi + pi (AX)i representa la fila i-ésima de la matriz AX. Usualmente a los pi se les denomina nivel de tolerancia de la restricción i..

(32) 17. 1.3 Programación lineal difusa. Criterio de Verdegay Verdegay (1982, citado en Brito Santana, 2013, pp.68-69) propone que la solución al problema difuso 1.2 se puede determinar resolviendo el siguiente problema paramétrico:. Max ← z = CX Sujeto a: (AX)i ≤ bi + (1 − α) pi , i = 1, 2, ..m X ≥ 0 y α ∈ [0, 1] .. (1.3). El criterio de Verdegay considera que para resolver el programa 1.2 ha de existir un valor de α tal que las restricciones del problemas sean satisfechas, ello se representa de la siguiente forma:. Max ← z = CX Sujeto a: µi ((AX)i ) ≥ α; i = 1, 2, ..m X ≥ 0 y α ∈ [0, 1] .. (1.4). Susituyendo en 1.4 la expresión de µi ((AX)i ) y apóyandose en la continuidad de las funciones de pertenencia µi se tiene que:. Max ← z = CX Sujeto a: 1 −. (AX)i − bi ≥ α; i = 1, 2, ..m pi. X ≥ 0 y α ∈ [0, 1] . Por último, despejando (AX)i en las ecuaciones 1 − problema paramétrico 1.3.. (AX)i − bi ≥ α se llega a obtener el pi. Los problemas paramétricos de Optimización se definen como aquellos problemas en los que se hace variar los datos de forma continua. Si para el valor de α = 1 se obtiene una solución óptima en el programa lineal 1.3, entonces para cualquier otro valor de α en el intervalo [0, 1] se obtendrá también una solución óptima. Esto último se justifica debido a que el valor de pi ≥ 0..

(33) 18. Marco teórico. Si se desea profundizar en tal asunto, revisar Simonnard (1972, p. 203). Ejemplo 3. Resolver el problema de programación lineal difuso planteado en el ejemplo 1 mediante el criterio de Verdegay.. Max ← z = 0,4x1 + 0,3x2 Sujeto a: 2x1 + x2 ≤ B1 x1 + x2 ≤ B2 x1 , x2 ≥ 0, donde     1, si B ≤ 500 1, si B2 ≤ 400   1     600 − B1 500 − B2 µ1 (B1 ) = , si 500 < B1 ≤ 600 y µ2 (B2 ) = , si 400 < B2 ≤ 500 .  100  100     0, 0, si B1 > 600 si B2 > 500 Transformando el problema original al problema paramétrico equivalente se tiene:. Max ← z = 0,4x1 + 0,3x2 Sujeto a: 2x1 + x2 ≤ 500 + 100 (1 − α) x1 + x2 ≤ 400 + 100 (1 − α) x1 , x2 ≥ 0, α ∈ [0, 1] . La siguiente tabla muestra algunos de los distintos valores de la solución del problema para determinados valores de α. α 1,0 0,75 0,5 0,25 0. Valor de z 130 137.5 145 152.5 160. Valor de x1 100 100 100 100 100. Valor de x2 300 325 350 375 400. Tabla 1.1: Ejemplo de aplicación del criterio de Verdegay.

(34) 19. 1.3 Programación lineal difusa. Criterio de Werners «Werners propuso que la función objetivo de la ecuación [1.2] debe ser difusa ya que las restricciones de desigualdad lo son»(Werners ,1987, citado en Lai & Hwang, 1992, p.87). Por ello en su método de solución propone primeramente hallar z0 y z1 , los cuales constituyen los valores óptimos de los programas lineales. Max ← z0 = CX Sujeto a: (AX)i ≤ bi , i = 1, 2, ..m X ≥ 0,. (1.5). y Max ← z1 = CX Sujeto a: (AX)i ≤ bi + pi , i = 1, 2, ..m X ≥ 0,. (1.6). respectivamente. Luego se define como sigue la función de pertenencia µ0 (x) del número difuso asociadaal conjunto de los posibles valores a tomar por la función objetivo   si CX > z1  1, 1 µ0 (CX) = 1 − z 1−CX0 , si z0 ≤ CX ≤ z1 . z −z    0, si CX < z0 El problema 1.2 puede ser resuelto según este criterio hallando una solución que satisfaga las restricciones difusas µi y la función objetivo difusa µ0 con un grado máximo de pertenencia, o sea:. Max ← z = α Sujeto a: µ0 (CX) ≥ α; µi ((AX)i ) ≥ α; i = 1, 2, ..m X ≥ 0 y α ∈ [0, 1] . Susituyendo en 1.7 las expresiones de µi ((AX)i ), = 1, 2, . . . m y µ0 (CX) se tiene que:. (1.7).

(35) 20. Marco teórico. Max ← z = α z1 −CX ≥ α; z1 − z0 (AX)i − bi 1− ≥ α; i = 1, 2, ..m pi. Sujeto a: 1 −. X ≥ 0 y α ∈ [0, 1] . Expresión que es equivalente a:. Max ← z = α Sujeto a: CX ≥ z1 − (1 − α) z1 − z0. . (AX)i ≤ bi + (1 − α) pi , i = 1, 2, ..m X ≥ 0 y α ∈ [0, 1] .. (1.8). Ejemplo 4. Resolver el problema de programación lineal difuso planteado en el ejemplo 1 mediante el criterio de Werners.. Max ← z = 0,4x1 + 0,3x2 Sujeto a: 2x1 + x2 ≤ B1 x1 + x2 ≤ B2 x1 , x2 ≥ 0, donde     1, si B ≤ 500 1, si B2 ≤ 400   1     600 − B1 500 − B2 µ1 (B1 ) = , si 500 < B1 ≤ 600 y µ2 (B2 ) = , si 400 < B2 ≤ 500 .   100 100     0, 0, si B1 > 600 si B2 > 500 Los valores de z0 y z1 son 130 y 160 respectivamente, que coinciden con las soluciones del Criterio de Verdegay para α = 1 y α = 0. Luego, quedaría resolver el siguiente programa lineal:.

(36) 1.4 El problema de las rutas de vehículos (VRP). 21. Max ← z = α Sujeto a: 0,4x1 + 0,3x2 ≥ 160 − 30 (1 − α) 2x1 + x2 ≤ 500 + 100 (1 − α) x1 + x2 ≤ 400 + 100 (1 − α) 0≤α ≤1 X ≥ 0. La solución óptima para el programa anterior es α = 0,5; x1 = 100 y x2 = 350. Observar que en los ejemplos 3 y 4 se ha resuelto el mismo problema mediante criterios diferentes. La diferencia fundamental entre ambos criterios radica en que Verdegay considera en su concepción difusas solo las restricciones del problema 1.2, por lo cual es la solución un conjunto difuso que se obtiene resolviendo un problema paramétrico; mientras que Werner al considerar la función objetivo como otra componente difusa del problema, se limita a obtener una única solución resolviendo programas lineales específicos relacionados con las distintas componentes del modelo. Hasta aquí se han expuesto aquellos criterios para resolver problemas de programación lineal con restricciones difusas que son de interés para la presente investigación, pero vale aclarar que en la actualidad existen otros como el criterio de Tanaka, Okuda y Asai, el cual se interesa por hallar valores óptimos para α y la función objetivo (ver Moreno (1999, pp.9-10)) y el criterio de Guu and Wu, el cual trabaja mediante dos fases y actúa como una especie de híbrido del resto de los criterios (ver Ebrahimnejad & Verdegay (2018, pp.40-43)). La determinación de cuál criterio emplear en cada caso depende en gran medida del tipo de solución que se exija, así como del contexto que origina el problema.. 1.4.. El problema de las rutas de vehículos (VRP). En este epígrafe se expondrán algunas variantes del problema de las rutas de vehículos, así como una breve descripción de los métodos de solución que se emplean para resolverlo. El problema de las rutas de vehículos, también conocido por sus siglas en inglés como VRP, «Vehicle Routing Problem», consiste en planificar un conjunto de rutas o recorridos para un parque dado de medios de transporte, de forma tal que cumpliéndose una serie de restricciones.

(37) 22. Marco teórico. se pueda minimizar el costo, la distancia o el tiempo invertido en dichos recorridos. El problema fue planteado por primera vez en un artículo elaborado por Dantzig y Ramser en 1959 titulado «The Truck Dispatching Problem». En aquella ocasión la esencia del problema consistía en lo siguiente: determinar un conjunto de rutas para una flota de camiones que partían de una terminal y se dirigían a un cierto número de estaciones de servicio a despachar la gasolina suministrada por la terminal. Desde ese momento y hasta la fecha los problemas de rutas han despertado el interés de numerosos investigadores, a tal punto que sus aplicaciones abarcan una larga y variada lista de problemas específicos. Brito Santana (2013, pp. 23-24) describe el problema general de las rutas de vehículo de la siguiente manera: El VRP es un problema que puede ser formulado matemáticamente a partir de un grafo G (V, A). El problema considera un conjunto de vértices V = {v0 , v1 , . . . , vn }, donde v0 representa el depósito o almacén, mientras que vi (i = 1, . . . , n) representa a cada uno de los n clientes o nodos a ser visitados. El conjunto de arcos está dado    por A = vi , v j : vi , v j ∈ V ; i ̸= j . Por su parte C = ci j es una matriz de distancias o costos no negativos entre cada par de vértices vi y v j incluyendo el depósito  y los clientes. Cuando ci j = c ji para cada vi, v j ∈ A el problema se dice que es simétrico y entonces es común reemplazar el conjunto A de vértices por el conjunto   E = vi , v j : vi , v j ∈ V ; i < j . El vector d representa las demandas de los clientes, donde di es la cantidad de bienes requeridos por el cliente vi . El número de vehículos viene dado por m y se asume que todos son idénticos, con una capacidad Q por vehículo. A cada vehículo i se le asignará una ruta Ri . El VRP consiste en determinar el conjunto de m rutas de vehículos que minimice el coste total, empezando y finalizando en el depósito, tal que cada vértice es visitado exactamente una vez por un vehículo [ver figura 1.2]. En el párrafo anterior se ha descrito el modelo clásico de VRP o también conocido como problema de rutas de vehículos con capacidad limitada, pero ello no quiere decir que este sea el único tipo de problema VRP . Existe un gran número de variantes; por ejemplo, en la actualidad es muy conocido el Problema de Rutas de Vehículos con Ventanas de Tiempo (Vehicle Routing Problem with Time Windows, VRPTW), el cual se diferencia del VRP clásico por «incluir ventanas de tiempo para realizar las entregas, estos son periodos durante los cuales se puede realizar la entrega a los clientes»(Brito Santana, 2013, p.26) . Otras variantes del problema VRP constituyen: VRP con flotas mixtas o heterogéneas, en el que los vehículos tienen distintas capacidades o capacidades heterogéneas; VRP con múltiples depósitos; VRP periódico, en el cual el periodo de planificación de rutas se puede extender a varios días. Una revisión de estas y otras variantes.

(38) 1.4 El problema de las rutas de vehículos (VRP). 23. Figura 1.2: Solución de un problema de rutas de vehículos con capacidad limitada de VRP se puede encontrar en Brito Santana (2013, pp.29-33) y en Toth & Vigo (2014, pp.1-33).. Métodos de solución Como mismo existen muchas variantes del problema VRP, existen también varios métodos de solución para cada tipo de problema en particular. Hasta la actualidad la mayoría de dichos métodos se dividen en algoritmos exactos y aproximados. Como los problemas VRP son problemas de tipo NP-hard, o sea, de alta dificultad computacional, los métodos exactos no son muy empleados para resolverlos, aunque pueden proporcionar soluciones óptimas siempre que se trate de un problema que no posea un gran número de nodos. Algunos de estos métodos son Branch and Bound y Branch and Cut. Estudios recientes de los métodos aproximados para la solución de problemas VRP han permitido clasificarlos en heurísticos clásicos y metaheurísticos . Y los primeros, a su vez, en heurísticos constructivos, de dos fases o de mejora. Ello se puede corroborar en Toth & Vigo (2014); Benito Quintanilla (2015) y Fernández Hernández (2016). La palabra heurística proviene del griego, heurisken, que significa hallar, descubrir, y con este sentido se puede inferir que la esencia de estos métodos consiste en diseñar estrategias «inteligentes» de búsqueda de solución al problema. Aunque la solución obtenida por estos métodos no siempre es la óptima, sí satisface en gran medida a quien desea resolver el problema, pues como ya se ha planteado una buena parte de los problemas reales de VRP, especialmente aquellos que involucran un número significativo.

(39) 24. Marco teórico. de nodos, es prácticamente imposible de resolver por los métodos exactos. Benito Quintanilla (2015) realiza una comparación de algunos de estos métodos con los exactos y llega a la conclusión de que los métodos heurísticos proporcionan soluciones buenas en tiempo de ejecución menor que los exactos. Aclarar que esta comparación se pudo realizar con una biblioteca de problemas que en su mayoría ceden a la solución mediante métodos exactos en tiempo inferior a 200 segundos. Las heurísticas clásicas se ajustan a la mayor parte de los métodos de solución del problema VRP surgidos entre los años 1960 y 1990. En el caso de los métodos heurísticos constructivos la solución se halla de forma gradual incorporando en cada iteración el elemento con mayor valor para un criterio establecido. El algoritmo de ahorros o de Clarke & Wright, el cual se describe detalladamente en el epígrafe 2.2, pertenece a esta categoría. Los métodos heurísticos en dos fases descomponen el problema en dos componentes naturales, agrupando los vértices en rutas posibles y rutas actuales con posible retroalimentación de ambos campos. Y los métodos de mejora intentan mejorar la calidad de cada solución posible intercambiando la secuencia de vértices dentro o fuera de las rutas. En las últimas décadas, las investigaciones sobre VRP han abogado por el desarrollo de algoritmos aproximados basados en metaheurísticas. En sus inicios, por la década de 1970, la esencia de dichos métodos consistía en combinar las técnicas heurísticas para agilizar la búsqueda de la solución. A decir de Brito Santana (2013, p.36) las metaheurísticas son «procedimientos genéricos que exploran el espacio de soluciones posibles de forma inteligente, es decir intentan especializar la búsqueda de buenas soluciones en zonas prometedoras del espacio de soluciones y descartar aquellas en las que es menos probable que se encuentren». Con relación a las perspectivas actuales de las investigaciones sobre VRP ,Brito Santana (2013, p. 37) plantea que: Se concentran en la necesidad de responder a modelos más ricos, generales y flexibles, la búsqueda de métodos robustos que permitan dar una respuesta eficiente y realista a problemas de mayor tamaño y, sobre todo, a la toma de decisiones en tiempo real, así como con la finalidad de obtener mejores resultados, combinar diversos métodos y técnicas, incluyendo híbridos de métodos exactos y aproximados.. VRP difuso Como se ha dicho las actuales investigaciones acerca de VRP se centran en resolver problemas cuyos modelos se ajusten mejor a la realidad, es por ello, que el VRP difuso o Fuzzy VRP constituye otra variante del VRP con necesidad de ser estudiada. La diferencia fundamental de.

(40) 1.4 El problema de las rutas de vehículos (VRP). 25. esta variante con respecto a la clásica consiste en el rango de imprecisión de los datos del problema, lo cual obliga a modelarlos como conjuntos difusos. Brito et al. (2009, p.1549) expresa que la mayoría de los trabajos relacionados con VRP difuso eligen como condiciones difusas las demandas de los nodos y los tiempos de viaje o de servicio. Brito Santana considera que el primer problema de VRP difuso en las demandas de los nodos fue tratado por Teodorovic y Kikuchi (1991, citado en Brito Santana, 2013, p. 78). En dicho problema, se considera, aparte de las demandas difusas, el tiempo de viaje y los costos de transporte entre dos nodos de la red como números difusos. La esencia de este grupo de problemas consiste en el transporte de mercancías a un cierto grupo de clientes, los que no pueden fijar con precisión sus demandas debido a que dicha cantidad no es un valor constante. Brito Santana (2013, pp. 78-79) caracteriza al problema VRP difuso en los tiempos por la dificultad que se tiene muchas veces de «precisar los tiempos en circunstancias reales donde el estado de las carreteras o la congestión del tráfico lo impide». En este caso, la mayoría de las técnicas de solución analizadas por Brito Santana (2013, p. 79) se basan en el empleo de metaheurísticas por el hecho de abundar muchas restricciones difusas. En Brito Santana (2013, pp. 78-79) y Brito et al. (2009, p. 1550) se realiza un detallado análisis, siguiendo una secuencia histórica, de los principales métodos de solución relacionados con ambos tipos de problemas difusos fundamentales. En el próximo capítulo se realiza un estudio del VRP difuso que dirige esta investigación.. Conclusiones parciales En este capítulo se han planteado los principales conceptos y antecedentes relacionados con la presente investigación, centrándose en tres núcleos temáticos fundamentales: la teoría de conjuntos difusos, la programación lineal difusa y los problemas de rutas de vehículos. En lo que respecta a la teoría de conjuntos difusos, se han enunciado la definición de tales conjuntos, las diferentes formas de representarlos, sus analogías con la teoría de conjuntos clásicos, y, por su utilidad en los problemas de programación lineal difusos, se enuncian también el Teorema de Representación y una definición de números difusos. En el epígrafe 1.2 se presentaron dos ejemplos en los que se modelan las restricciones y la función objetivo de problemas de programación lineal continuos a través de conjuntos difusos, ante la imposibilidad de emplear para ello los modelos clásico-deterministas. Luego, se presenta la clasificación de los problemas de programación lineal difusos y se ilustran dos criterios para la resolución de aquellos problemas que posean parámetros borrosos en las restricciones del.

(41) 26. Marco teórico. problema: el criterio de Verdegay y el criterio de Werners. A través de uno de los ejemplos del epígrafe 1.2, se logran distinguir las diferencias entre ambos criterios y concluir que la determinación del criterio más adecuado para resolver el problema depende en gran medida del tipo de solución que se exija y del contexto que origina el problema. En el último epígrafe del capítulo se presentó un estado del arte del problema de las rutas de vehículos, evidenciándose la inmensidad de los estudios de este problema por las amplias aplicaciones prácticas que posee. Siguiendo la evolución histórica de los estudios del VRP, se han enunciado: la formulación general del problema clásico, las variantes más conocidas del problema, los principales métodos de solución y las tendencias actuales de su desarrollo. Se ha insistido en la idea de que el desarrollo futuro de los problemas de rutas de vehículos exige de modelos y métodos de solución más flexibles y próximos a la realidad, por ello, se culmina el capítulo haciendo alusión a las investigaciones relacionadas con los problemas de rutas de vehículos difusos, objeto de estudio de la presente investigación..

(42) CAPÍTULO 2 Problema de rutas de vehículos con restricciones difusas En este capítulo se realiza un estudio pormenorizado del problema de rutas de vehículos en cuestión. Se inicia describiendo dicho problema y formulándolo matemáticamente. Luego, en el epígrafe 2.2 se describe el método de solución escogido para resolver tal problema e ilustrar su aplicación en el epígrafe 2.3 con un ejemplo. Por último, en el epígrafe 2.4 se explicará la implementación computacional del método propuesto.. 2.1.. Modelación matemática del problema. En este epígrafe se describe el tipo de problema de rutas de vehículos difuso que se trata en esta investigación para luego plantear un modelo matemático adecuado a dicho problema. El problema de las rutas de vehículos a tratar en la presente investigación consiste en planificar las rutas de ómnibus más convenientes para transportar a los trabajadores de una empresa hacia su centro de trabajo, fijándose con antelación los puntos de recogida (paradas). Se supondrán, además, las siguientes condiciones: a) a cada ómnibus de la empresa se le asocia una única ruta, b) cada parada de trabajadores es visitada una única vez por un ómnibus, y c) todas las rutas inician y finalizan en el centro de trabajo. La función objetivo se diseñará de forma tal que se obtenga una distribución de rutas que minimice la suma de las distancias recorridas por cada vehículo. Para la modelación matemática de la situación problémica descrita en el párrafo anterior se.

(43) 28. Problema de rutas de vehículos con restricciones difusas. ha de partir de un grafo dirigido y completo1 G = (V, A), cuyos vértices son x0 , x1 , . . . , xn , donde x0 representa el centro de trabajo y las x j , j = 1, 2 . . . , n ,identifican las n paradas. A cada arco  xi , x j ∈ A se le asocia un número real ci j ≥ 0, el cual representa la distancia del camino de valor mínimo de xi a x j ; mientras que a cada vértice x j está vinculado el número real d j , el cual representa la cantidad máxima de personas que deben estar esperando en la parada. El objetivo del problema consiste en determinar el conjunto de rutas que minimice la suma de los ci j en dependencia de los arcos empleados para cubrir todas las rutas. Se denomina ruta de vehículos, en términos de la teoría de grafos, a un subgrafo de G = (V, A) que constituye un circuito2 hamiltoniano3 que inicia y retorna a x0 . Se denotará por K al número de vehículos empleados para cubrir todas las rutas. Para visualizar las características de la solución del problema, se puede volver a ver la figura 1.2. La condición difusa del problema está relacionada con la capacidad de los vehículos, ya que no todos los vehículos tienen la misma capacidad. Ello resulta una novedad pues, como se apreció en el epígrafe 1.4, la literatura especializada considera difusas las demandas y los tiempos. El número difuso ũ tiene como función de pertenencia la siguiente :   1, si u ≤ umı́n    u − umı́n , si umı́n < u ≤ umáx , µ(u) = 1 − umáx − umı́n    0, si u > umáx donde umı́n y umáx son las capacidades mínimas y máximas de los ómnibus que pueden cubrir las rutas respectivamente. Observar que no se consideran los d j números difusos porque a los efectos del problema a resolver no interesa la cantidad de personas que hay realmente en la parada un día determinado, y se exige el mayor valor posible puesto que no se corre el riesgo de que una persona no pueda montarse en el ómnibus porque esté lleno. La causa por la cual se prefiere una modelación difusa de un problema de VRP con capacidad de los vehículos homogénea a un modelo clásico de un VRP con capacidad de los vehículos heterogénea, a pesar de este último ser más representativo que el anterior, radica en el alto costo computacional que poseen los segundos con respecto a los primeros. Para corroborar lo planteado el lector puede ver en las Tablas 2 y 3 (Benito Quintanilla, 2015, pp. 41-42) que los tiempos de 1 Un. grafo es completo si para todo par de vértices existe al menos un arco que los una. circuito es una secuencia de arcos (ai , a j , . . . am ) tal que la extremidad terminal de cada uno coincide con la extremidad inicial del siguiente y el vértice inicial de ai coincide con el vértice terminal de am . 3 Un circuito es hamiltoniano si pasa una y solo una vez por cada vértice del grafo, exceptuando al vértice inicial y final del circuito. 2 Un.

(44) 29. 2.1 Modelación matemática del problema. ejecución de los métodos exactos para resolver VRP con capacidad de los vehículos heterogénea son relativamente altos, cerca de los 199 segundos. Considérese las siguientes variables de decisión binarias para el problema planteado:  1 si el vehı́culo k pasa por el arco x , x  i j xikj = 0 en caso contrario  1 yi j = 0. si existe un vehı́culo que pasa por el arco xi , x j. . en caso contrario. El modelo para el problema de las rutas de vehículos con el cual se va a trabajar se formula de la siguiente manera: K. Minimizar. n. n. ∑ ∑ ∑ ci j xikj. (2.1). k=1 j=0i=0. Sujeto a: K. ∑ xikj = yi j. (2.2). k=1 n. ∑ yi j = 1, i = 1, . . . n. (2.3). j=1 n. ∑ yi j = 1,. j = 1, . . . n. (2.4). i=1. n. ∑ y0 j = K. (2.5). j=1 n. ∑ yi0 = K. (2.6). ∑ ∑ dixikj ≤ ũ para todo k = 1, 2...K. (2.7). ∑ ∑ yi j ≤ |Q| − 1 para todo subconjunto Q de {1, 2, 3...n}. (2.8). i=1 n. n. i=1 j=1. i∈Q j∈Q.

(45) 30. Problema de rutas de vehículos con restricciones difusas. yi j ∈ {0, 1} , xikj ∈ {0, 1} para todo i, j = 1, . . . n y todo k = 1, . . . K. La ecuación 2.1 representa la función objetivo, la cual como ya se explicó se plantea para minimizar las distancias recorridas en total por cada una de las rutas. Las ecuaciones de tipo 2.2 relacionan las variables involucradas en el modelo. Las ecuaciones 2.3 y 2.4 aseguran que de cada nodo o parada salga y llegue un solo ómnibus respectivamente. Las ecuaciones 2.5 y 2.6 aseguran que del centro de trabajo salgan y lleguen los K ómnibus que cubren las rutas. Las ecuaciones de tipo 2.7 garantizan que la cantidad de personas montadas en cada ómnibus no supera la capacidad de estos. Las ecuaciones de tipo 2.8 eliminan las subrutas. Una subruta es un circuito hamiltoniano que no parte del nodo x0 . En la figura 2.1 se muestra un ejemplo de subruta.. Figura 2.1: Ejemplo de subruta (flechas en azul) Vale aclarar que el modelo anterior es similar al planteado por Ahuja et al. (2014, pp. 625626). Se realiza esta aclaración porque existen variadas formas de modelar un problema de VRP de capacidad limitada y se seleccionó este porque, aparte de su sencillez, el mismo se concibe con un enfoque de redes o grafos. Para revisar otros modelos para este mismo tipo de problema se sugiere ver Benito Quintanilla (2015, pp.29-31). Tras mostrar el modelo matemático con el cual se va trabajar, a continuación se enumeran las consideraciones que se han de tener en cuenta para garantizar una solución al problema: 1. Como no está permitido ir de un punto a sí mismo, cii = +∞..

(46) 31. 2.2 Metodología de cálculo. 2. Como los valores de d j , j = 0, . . . n representan la cantidad máxima de personas que aguardan en cada nodo o parada x j , estos valores satisfacen que d j ≥ 0 y d0 = 0 puesto que ninguna persona aguarda a un vehículo en el centro de trabajo.. 3. Los valores de d j , j = 0, . . . n están acotados por la capacidad mínima de pasajeros que pueden transportar los ómnibus, o sea, d j ≤ umı́n , j = 0, . . . n y así asegurar que cada vehículo recoja todos los trabajadores que aguardan en la parada.. 4. K ≥ Kmı́n , donde Kmı́n es el número de vehículos mínimos que son necesarios para ejecutar esta tarea. Esto se exige pues el valor de K no siempre es un dato, y en ocasiones se hace necesario también minimizar el número de vehículos.. 2.2.. Metodología de cálculo. En este epígrafe se describirá el método de solución propuesto para resolver el problema descrito en el epígrafe anterior. El método de solución se basa en el algoritmo de ahorros o de Clarke & Wright y por ello se hace necesario una descripción de dicho algoritmo.. Algoritmo de Clarke & Wright El algoritmo de Clarke & Wright fue desarrollado en 1964 por las dos personas que aportaron su nombre. Es este uno de los algoritmos más populares para resolver VRP y se aplica para problemas en los que el número de vehículos no está prefijado. Se fundamenta en el siguiente  principio: si en una solución dos rutas diferentes (x0 , . . . , xi , x0 ) y x0 , . . . , x j , x0 pueden ser fu sionadas para formar una nueva ruta x0 , . . . , xi , x j , x0 como se muestra en la figura 2.2 (cambios en color azul), el ahorro en distancia obtenido por dicha unión es: ei j = ci0 + c0 j − ci j. (2.9).  porque en la nueva solución los arcos (xi , x0 ) y x0 , x j no serán utilizados y se le añadirá el  arco xi , x j ..

(47) 32. Problema de rutas de vehículos con restricciones difusas. Figura 2.2: Dos rutas antes y después de ser unidas por el algoritmo de ahorros o de Clarke & Wright El procedimiento del algoritmo anterior es el siguiente:   Paso 1 Construir la matriz E = ei j de los ahorroso de los niveles  −∞,   nombra González & Felipe (1977) según ei j = ci0 + c0 j − ci j ,    0,. de separación como los si i = j si i ̸= j y i, j ̸= 0 . si i = 0 o j = 0. Paso 2 Tomar la llamada «margarita de Fletcher» como solución inicial, o sea , la solución en la cual se diseñan n rutas que van desde el nodo x0 a cada uno de los xi , i = 1, 2, . . . , n y retornan a x0 . Ver figura 2.3. Paso 3 Si se tiene que todos los ahorros no evaluados tienen valores menores o iguales a 0 (Criterio de Terminación), se termina el algoritmo, por supuesto que inicialmente ningún  arco ha sido evaluado. En caso contrario, se selecciona el arco xi , x j de mayor ahorro que no ha sido evaluado y se sigue al paso 4. Paso 4 Si al sumar las demandas di y d j , que en nuestro caso se traduce en sumar la cantidad de personas que esperan en las paradas xi y x j respectivamente, dicha suma no excede  de la capacidad del vehículo, se selecciona el arco xi , x j como parte de la solución del problema y se elimina la posibilidad de que cualquier arco con nodo inicial xi o nodo final x j sea parte de la solución del problema. En caso de que di + d j exceda la capacidad.

(48) 33. 2.2 Metodología de cálculo.  del vehículo se elimina la posibilidad de que el arco xi , x j sea parte de la solución del problema, esto González & Felipe (1977) lo hacen asignándole a ei j el valor de −∞ . Paso 5 Volver al paso 3.. Figura 2.3: Solución inicial para el algoritmo de los Ahorros de Clarke & Wright. Método propuesto El método propuesto consiste en aplicar el principio del Criterio de Verdegay (ver epígrafe 1.3), lo cual conlleva a que el problema planteado por las ecuaciones 2.1a la 2.8, se puede transformar en el siguiente problema paramétrico: K. Minimizar. n. n. ∑ ∑ ∑ ci j xikj. (2.10). k=1 j=0i=0. Sujeto a: K. ∑ xikj = yi j. (2.11). k=1 n. ∑ yi j = 1, i = 1, . . . n. (2.12). j=1 n. ∑ yi j = 1,. i=1. j = 1, . . . n. (2.13).

Figure

Figura 1.1: Funciones de pertenencia de µ 1 (B 1 ) y µ 2 (B 2 )
Tabla 1.1: Ejemplo de aplicación del criterio de Verdegay
Figura 1.2: Solución de un problema de rutas de vehículos con capacidad limitada
Figura 2.1: Ejemplo de subruta (flechas en azul)
+7

Referencias

Documento similar